Compare commits

...

2 Commits

Author SHA1 Message Date
039d2d1551 chore: Update translations 2023-12-23 19:47:35 +00:00
e21d8d3ae4
feat: add recording to manual editor 2023-12-23 19:45:33 +00:00
25 changed files with 159 additions and 76 deletions

View File

@ -43,7 +43,7 @@ export default function LiveVideoPlayer({
useEffect(() => { useEffect(() => {
if (streamCached && video.current) { if (streamCached && video.current) {
if (Hls.isSupported()) { if (Hls.isSupported() && streamCached.endsWith(".m3u8")) {
try { try {
const hls = new Hls({ const hls = new Hls({
enableWorker: true, enableWorker: true,

View File

@ -52,6 +52,7 @@ export function StreamEditor({ ev, onFinish, options }: StreamEditorProps) {
const [summary, setSummary] = useState(""); const [summary, setSummary] = useState("");
const [image, setImage] = useState(""); const [image, setImage] = useState("");
const [stream, setStream] = useState(""); const [stream, setStream] = useState("");
const [recording, setRecording] = useState("");
const [status, setStatus] = useState(""); const [status, setStatus] = useState("");
const [start, setStart] = useState<string>(); const [start, setStart] = useState<string>();
const [tags, setTags] = useState<string[]>([]); const [tags, setTags] = useState<string[]>([]);
@ -62,12 +63,14 @@ export function StreamEditor({ ev, onFinish, options }: StreamEditorProps) {
const { formatMessage } = useIntl(); const { formatMessage } = useIntl();
useEffect(() => { useEffect(() => {
const { title, summary, image, stream, status, starts, tags, contentWarning, goal } = extractStreamInfo(ev); const { title, summary, image, stream, status, starts, tags, contentWarning, goal, recording } =
extractStreamInfo(ev);
setTitle(title ?? ""); setTitle(title ?? "");
setSummary(summary ?? ""); setSummary(summary ?? "");
setImage(image ?? ""); setImage(image ?? "");
setStream(stream ?? ""); setStream(stream ?? "");
setStatus(status ?? StreamState.Live); setStatus(status ?? StreamState.Live);
setRecording(recording ?? "");
setStart(starts); setStart(starts);
setTags(tags ?? []); setTags(tags ?? []);
setContentWarning(contentWarning !== undefined); setContentWarning(contentWarning !== undefined);
@ -104,11 +107,16 @@ export function StreamEditor({ ev, onFinish, options }: StreamEditorProps) {
.tag(["title", title]) .tag(["title", title])
.tag(["summary", summary]) .tag(["summary", summary])
.tag(["image", image]) .tag(["image", image])
.tag(["streaming", stream])
.tag(["status", status]) .tag(["status", status])
.tag(["starts", starts]); .tag(["starts", starts]);
if (status === StreamState.Live) {
eb.tag(["streaming", stream]);
}
if (status === StreamState.Ended) { if (status === StreamState.Ended) {
eb.tag(["ends", ends]); eb.tag(["ends", ends]);
if (recording) {
eb.tag(["recording", recording]);
}
} }
for (const tx of tags) { for (const tx of tags) {
eb.tag(["t", tx.trim()]); eb.tag(["t", tx.trim()]);
@ -218,6 +226,16 @@ export function StreamEditor({ ev, onFinish, options }: StreamEditorProps) {
</div> </div>
</div> </div>
)} )}
{status === StreamState.Ended && (
<div>
<p>
<FormattedMessage defaultMessage="Recording URL" id="Y0DXJb" />
</p>
<div className="paper">
<input type="text" value={recording} onChange={e => setRecording(e.target.value)} />
</div>
</div>
)}
</> </>
)} )}
{(options?.canSetTags ?? true) && ( {(options?.canSetTags ?? true) && (

View File

@ -311,6 +311,9 @@
"XgWvGA": { "XgWvGA": {
"defaultMessage": "Reactions" "defaultMessage": "Reactions"
}, },
"Y0DXJb": {
"defaultMessage": "Recording URL"
},
"YPh5Nq": { "YPh5Nq": {
"defaultMessage": "@ {rate}", "defaultMessage": "@ {rate}",
"description": "Showing zap amount in USD @ rate" "description": "Showing zap amount in USD @ rate"

View File

@ -311,6 +311,9 @@
"XgWvGA": { "XgWvGA": {
"defaultMessage": "Reactions" "defaultMessage": "Reactions"
}, },
"Y0DXJb": {
"defaultMessage": "Recording URL"
},
"YPh5Nq": { "YPh5Nq": {
"defaultMessage": "@ {rate}", "defaultMessage": "@ {rate}",
"description": "Showing zap amount in USD @ rate" "description": "Showing zap amount in USD @ rate"

View File

@ -311,6 +311,9 @@
"XgWvGA": { "XgWvGA": {
"defaultMessage": "Реакции" "defaultMessage": "Реакции"
}, },
"Y0DXJb": {
"defaultMessage": "Recording URL"
},
"YPh5Nq": { "YPh5Nq": {
"defaultMessage": "@ {курс}", "defaultMessage": "@ {курс}",
"description": "Showing zap amount in USD @ rate" "description": "Showing zap amount in USD @ rate"

View File

@ -311,6 +311,9 @@
"XgWvGA": { "XgWvGA": {
"defaultMessage": "Reactions" "defaultMessage": "Reactions"
}, },
"Y0DXJb": {
"defaultMessage": "Recording URL"
},
"YPh5Nq": { "YPh5Nq": {
"defaultMessage": "@ {rate}", "defaultMessage": "@ {rate}",
"description": "Showing zap amount in USD @ rate" "description": "Showing zap amount in USD @ rate"

View File

@ -311,6 +311,9 @@
"XgWvGA": { "XgWvGA": {
"defaultMessage": "Reaktioner" "defaultMessage": "Reaktioner"
}, },
"Y0DXJb": {
"defaultMessage": "Recording URL"
},
"YPh5Nq": { "YPh5Nq": {
"defaultMessage": "@ {rate}", "defaultMessage": "@ {rate}",
"description": "Showing zap amount in USD @ rate" "description": "Showing zap amount in USD @ rate"

View File

@ -311,6 +311,9 @@
"XgWvGA": { "XgWvGA": {
"defaultMessage": "Reaktionen" "defaultMessage": "Reaktionen"
}, },
"Y0DXJb": {
"defaultMessage": "Recording URL"
},
"YPh5Nq": { "YPh5Nq": {
"defaultMessage": "@ {rate}", "defaultMessage": "@ {rate}",
"description": "Showing zap amount in USD @ rate" "description": "Showing zap amount in USD @ rate"
@ -319,7 +322,7 @@
"defaultMessage": "{n}p" "defaultMessage": "{n}p"
}, },
"YwzT/0": { "YwzT/0": {
"defaultMessage": "Clip title" "defaultMessage": "Clip-Titel"
}, },
"Z8ZOEY": { "Z8ZOEY": {
"defaultMessage": "Diese Methode ist unsicher. Wir empfehlen die Verwendung von {nostrlink}" "defaultMessage": "Diese Methode ist unsicher. Wir empfehlen die Verwendung von {nostrlink}"

View File

@ -103,6 +103,7 @@
"W9355R": "Unmute", "W9355R": "Unmute",
"X2PZ7D": "Create Goal", "X2PZ7D": "Create Goal",
"XgWvGA": "Reactions", "XgWvGA": "Reactions",
"Y0DXJb": "Recording URL",
"YPh5Nq": "@ {rate}", "YPh5Nq": "@ {rate}",
"YagVIe": "{n}p", "YagVIe": "{n}p",
"YwzT/0": "Clip title", "YwzT/0": "Clip title",

View File

@ -311,6 +311,9 @@
"XgWvGA": { "XgWvGA": {
"defaultMessage": "Reacciones" "defaultMessage": "Reacciones"
}, },
"Y0DXJb": {
"defaultMessage": "Recording URL"
},
"YPh5Nq": { "YPh5Nq": {
"defaultMessage": "@ {rate}", "defaultMessage": "@ {rate}",
"description": "Showing zap amount in USD @ rate" "description": "Showing zap amount in USD @ rate"

View File

@ -311,6 +311,9 @@
"XgWvGA": { "XgWvGA": {
"defaultMessage": "واکنش ها" "defaultMessage": "واکنش ها"
}, },
"Y0DXJb": {
"defaultMessage": "Recording URL"
},
"YPh5Nq": { "YPh5Nq": {
"defaultMessage": "@ {rate}", "defaultMessage": "@ {rate}",
"description": "Showing zap amount in USD @ rate" "description": "Showing zap amount in USD @ rate"

View File

@ -297,7 +297,7 @@
"defaultMessage": "Piilota" "defaultMessage": "Piilota"
}, },
"Vn2WiP": { "Vn2WiP": {
"defaultMessage": "Get Stream Key" "defaultMessage": "Hae lähetysavain"
}, },
"W7DNWx": { "W7DNWx": {
"defaultMessage": "Lähetyksen edelleenlähetys" "defaultMessage": "Lähetyksen edelleenlähetys"
@ -311,6 +311,9 @@
"XgWvGA": { "XgWvGA": {
"defaultMessage": "Reaktiot" "defaultMessage": "Reaktiot"
}, },
"Y0DXJb": {
"defaultMessage": "Recording URL"
},
"YPh5Nq": { "YPh5Nq": {
"defaultMessage": "@ {rate}", "defaultMessage": "@ {rate}",
"description": "Showing zap amount in USD @ rate" "description": "Showing zap amount in USD @ rate"
@ -319,7 +322,7 @@
"defaultMessage": "{n}p" "defaultMessage": "{n}p"
}, },
"YwzT/0": { "YwzT/0": {
"defaultMessage": "Clip title" "defaultMessage": "Leikkeen nimi"
}, },
"Z8ZOEY": { "Z8ZOEY": {
"defaultMessage": "Tämä menetelmä ei ole turvallinen. Suosittelemme käyttämään {nostrlink}" "defaultMessage": "Tämä menetelmä ei ole turvallinen. Suosittelemme käyttämään {nostrlink}"
@ -403,7 +406,7 @@
"defaultMessage": "Rynnäköidään {name}" "defaultMessage": "Rynnäköidään {name}"
}, },
"jJLRgo": { "jJLRgo": {
"defaultMessage": "Publish Clip" "defaultMessage": "Julkaise leike"
}, },
"jctiUc": { "jctiUc": {
"defaultMessage": "Eniten Katsojia" "defaultMessage": "Eniten Katsojia"

View File

@ -311,6 +311,9 @@
"XgWvGA": { "XgWvGA": {
"defaultMessage": "Réactions" "defaultMessage": "Réactions"
}, },
"Y0DXJb": {
"defaultMessage": "Recording URL"
},
"YPh5Nq": { "YPh5Nq": {
"defaultMessage": "@ {rate}", "defaultMessage": "@ {rate}",
"description": "Showing zap amount in USD @ rate" "description": "Showing zap amount in USD @ rate"

View File

@ -311,6 +311,9 @@
"XgWvGA": { "XgWvGA": {
"defaultMessage": "Reakciók" "defaultMessage": "Reakciók"
}, },
"Y0DXJb": {
"defaultMessage": "Recording URL"
},
"YPh5Nq": { "YPh5Nq": {
"defaultMessage": "@ {rate}", "defaultMessage": "@ {rate}",
"description": "Showing zap amount in USD @ rate" "description": "Showing zap amount in USD @ rate"

View File

@ -311,6 +311,9 @@
"XgWvGA": { "XgWvGA": {
"defaultMessage": "Reazioni" "defaultMessage": "Reazioni"
}, },
"Y0DXJb": {
"defaultMessage": "Recording URL"
},
"YPh5Nq": { "YPh5Nq": {
"defaultMessage": "@ {rate}", "defaultMessage": "@ {rate}",
"description": "Showing zap amount in USD @ rate" "description": "Showing zap amount in USD @ rate"

View File

@ -311,6 +311,9 @@
"XgWvGA": { "XgWvGA": {
"defaultMessage": "反応" "defaultMessage": "反応"
}, },
"Y0DXJb": {
"defaultMessage": "Recording URL"
},
"YPh5Nq": { "YPh5Nq": {
"defaultMessage": "{rate}", "defaultMessage": "{rate}",
"description": "Showing zap amount in USD @ rate" "description": "Showing zap amount in USD @ rate"

View File

@ -311,6 +311,9 @@
"XgWvGA": { "XgWvGA": {
"defaultMessage": "Reacties" "defaultMessage": "Reacties"
}, },
"Y0DXJb": {
"defaultMessage": "Recording URL"
},
"YPh5Nq": { "YPh5Nq": {
"defaultMessage": "@ {rate}", "defaultMessage": "@ {rate}",
"description": "Showing zap amount in USD @ rate" "description": "Showing zap amount in USD @ rate"

View File

@ -311,6 +311,9 @@
"XgWvGA": { "XgWvGA": {
"defaultMessage": "Reações" "defaultMessage": "Reações"
}, },
"Y0DXJb": {
"defaultMessage": "Recording URL"
},
"YPh5Nq": { "YPh5Nq": {
"defaultMessage": "@ {rate}", "defaultMessage": "@ {rate}",
"description": "Showing zap amount in USD @ rate" "description": "Showing zap amount in USD @ rate"

View File

@ -311,6 +311,9 @@
"XgWvGA": { "XgWvGA": {
"defaultMessage": "Отклики" "defaultMessage": "Отклики"
}, },
"Y0DXJb": {
"defaultMessage": "Recording URL"
},
"YPh5Nq": { "YPh5Nq": {
"defaultMessage": "@ {rate}", "defaultMessage": "@ {rate}",
"description": "Showing zap amount in USD @ rate" "description": "Showing zap amount in USD @ rate"

View File

@ -311,6 +311,9 @@
"XgWvGA": { "XgWvGA": {
"defaultMessage": "Reaktioner" "defaultMessage": "Reaktioner"
}, },
"Y0DXJb": {
"defaultMessage": "Recording URL"
},
"YPh5Nq": { "YPh5Nq": {
"defaultMessage": "@ {rate}", "defaultMessage": "@ {rate}",
"description": "Showing zap amount in USD @ rate" "description": "Showing zap amount in USD @ rate"

View File

@ -311,6 +311,9 @@
"XgWvGA": { "XgWvGA": {
"defaultMessage": "Reactions" "defaultMessage": "Reactions"
}, },
"Y0DXJb": {
"defaultMessage": "Recording URL"
},
"YPh5Nq": { "YPh5Nq": {
"defaultMessage": "@ {rate}", "defaultMessage": "@ {rate}",
"description": "Showing zap amount in USD @ rate" "description": "Showing zap amount in USD @ rate"

View File

@ -3,10 +3,10 @@
"defaultMessage": "ภาพ" "defaultMessage": "ภาพ"
}, },
"+AcVD+": { "+AcVD+": {
"defaultMessage": "No emails, just awesomeness!" "defaultMessage": "Email ไม่ต้อง ใช้แค่ความเท่"
}, },
"+sdKx8": { "+sdKx8": {
"defaultMessage": "Live now" "defaultMessage": "ถ่ายทอดสดตอนนี้"
}, },
"+vVZ/G": { "+vVZ/G": {
"defaultMessage": "เชื่อมต่อ" "defaultMessage": "เชื่อมต่อ"
@ -15,7 +15,7 @@
"defaultMessage": "จำนวน" "defaultMessage": "จำนวน"
}, },
"/EvlqN": { "/EvlqN": {
"defaultMessage": "nostr signer extension" "defaultMessage": "Nostr Extension"
}, },
"/GCoTA": { "/GCoTA": {
"defaultMessage": "ล้าง" "defaultMessage": "ล้าง"
@ -27,25 +27,25 @@
"defaultMessage": "เป้าหมาย Zaps" "defaultMessage": "เป้าหมาย Zaps"
}, },
"0VV/sK": { "0VV/sK": {
"defaultMessage": "Goal" "defaultMessage": "เป้าหมาย"
}, },
"0hNxBy": { "0hNxBy": {
"defaultMessage": "Starts" "defaultMessage": "เริ่ม"
}, },
"1EYCdR": { "1EYCdR": {
"defaultMessage": "แท็ก" "defaultMessage": "แท็ก"
}, },
"1q4BO/": { "1q4BO/": {
"defaultMessage": "Not a valid URL" "defaultMessage": "URL ไม่ถูกต้อง"
}, },
"1qsXCO": { "1qsXCO": {
"defaultMessage": "eg. name@wallet.com" "defaultMessage": "เช่น name@wallet.com"
}, },
"2/2yg+": { "2/2yg+": {
"defaultMessage": "เพิ่ม" "defaultMessage": "เพิ่ม"
}, },
"37mth/": { "37mth/": {
"defaultMessage": "Viewers" "defaultMessage": "ผู้ชม"
}, },
"3HwrQo": { "3HwrQo": {
"defaultMessage": "Zaps!" "defaultMessage": "Zaps!"
@ -54,7 +54,7 @@
"defaultMessage": "ผู้ชม {n}" "defaultMessage": "ผู้ชม {n}"
}, },
"3df560": { "3df560": {
"defaultMessage": "Login with private key" "defaultMessage": "เข้าสู่ระบบด้วย nsec"
}, },
"47FYwb": { "47FYwb": {
"defaultMessage": "ยกเลิก" "defaultMessage": "ยกเลิก"
@ -311,6 +311,9 @@
"XgWvGA": { "XgWvGA": {
"defaultMessage": "Reactions" "defaultMessage": "Reactions"
}, },
"Y0DXJb": {
"defaultMessage": "Recording URL"
},
"YPh5Nq": { "YPh5Nq": {
"defaultMessage": "@ {rate}", "defaultMessage": "@ {rate}",
"description": "Showing zap amount in USD @ rate" "description": "Showing zap amount in USD @ rate"

View File

@ -3,7 +3,7 @@
"defaultMessage": "图像" "defaultMessage": "图像"
}, },
"+AcVD+": { "+AcVD+": {
"defaultMessage": "没有电子邮件,只是最棒" "defaultMessage": "没有电子邮件,只有精彩"
}, },
"+sdKx8": { "+sdKx8": {
"defaultMessage": "现在直播" "defaultMessage": "现在直播"
@ -60,7 +60,7 @@
"defaultMessage": "取消" "defaultMessage": "取消"
}, },
"4iBdw1": { "4iBdw1": {
"defaultMessage": "" "defaultMessage": "袭"
}, },
"4l69eO": { "4l69eO": {
"defaultMessage": "嗯,看起来你的闪电地址不对" "defaultMessage": "嗯,看起来你的闪电地址不对"
@ -72,7 +72,7 @@
"defaultMessage": "分辨率" "defaultMessage": "分辨率"
}, },
"50+/JW": { "50+/JW": {
"defaultMessage": "需要流密钥" "defaultMessage": "需要直播流密钥"
}, },
"5JcXdV": { "5JcXdV": {
"defaultMessage": "创建帐户" "defaultMessage": "创建帐户"
@ -84,7 +84,7 @@
"defaultMessage": "服务器 URL" "defaultMessage": "服务器 URL"
}, },
"5tM0VD": { "5tM0VD": {
"defaultMessage": "流水启动" "defaultMessage": "直播已开始"
}, },
"69hmpj": { "69hmpj": {
"defaultMessage": "来自 {name}的突袭" "defaultMessage": "来自 {name}的突袭"
@ -96,7 +96,7 @@
"defaultMessage": "文字转语音的最小金额" "defaultMessage": "文字转语音的最小金额"
}, },
"7+bCC1": { "7+bCC1": {
"defaultMessage": "数据流 URL 必须以 rtmp:// 开头" "defaultMessage": "直播流 URL 必须以 rtmp:// 开头"
}, },
"79lLl+": { "79lLl+": {
"defaultMessage": "音乐" "defaultMessage": "音乐"
@ -135,7 +135,7 @@
"defaultMessage": "登出" "defaultMessage": "登出"
}, },
"CsCUYo": { "CsCUYo": {
"defaultMessage": "{n} 卫星" "defaultMessage": "{n} "
}, },
"D3idYv": { "D3idYv": {
"defaultMessage": "设置" "defaultMessage": "设置"
@ -150,7 +150,7 @@
"defaultMessage": "无法创建流 URL" "defaultMessage": "无法创建流 URL"
}, },
"ESyhzp": { "ESyhzp": {
"defaultMessage": "你为{name}的留言" "defaultMessage": "給 {name} 的留言"
}, },
"FjDlus": { "FjDlus": {
"defaultMessage": "你始终可以用自己的地址替换它。" "defaultMessage": "你始终可以用自己的地址替换它。"
@ -195,7 +195,7 @@
"defaultMessage": "或" "defaultMessage": "或"
}, },
"J/+m9y": { "J/+m9y": {
"defaultMessage": "视频流时长 {duration} 分钟" "defaultMessage": "直播时长 {duration} 分钟"
}, },
"JEsxDw": { "JEsxDw": {
"defaultMessage": "正在上传..." "defaultMessage": "正在上传..."
@ -252,7 +252,7 @@
"defaultMessage": "直播流链接" "defaultMessage": "直播流链接"
}, },
"QWlMq9": { "QWlMq9": {
"defaultMessage": "流体键" "defaultMessage": "直播流密钥"
}, },
"QceMQZ": { "QceMQZ": {
"defaultMessage": "目标:{amount}" "defaultMessage": "目标:{amount}"
@ -291,16 +291,16 @@
"defaultMessage": "添加卡片" "defaultMessage": "添加卡片"
}, },
"UfSot5": { "UfSot5": {
"defaultMessage": "过去的直播" "defaultMessage": "过去的直播"
}, },
"VA/Z1S": { "VA/Z1S": {
"defaultMessage": "隐藏" "defaultMessage": "隐藏"
}, },
"Vn2WiP": { "Vn2WiP": {
"defaultMessage": "Get Stream Key" "defaultMessage": "获取直播流密钥"
}, },
"W7DNWx": { "W7DNWx": {
"defaultMessage": "数据流转发" "defaultMessage": "直播流转发"
}, },
"W9355R": { "W9355R": {
"defaultMessage": "解除静音" "defaultMessage": "解除静音"
@ -311,6 +311,9 @@
"XgWvGA": { "XgWvGA": {
"defaultMessage": "反应" "defaultMessage": "反应"
}, },
"Y0DXJb": {
"defaultMessage": "Recording URL"
},
"YPh5Nq": { "YPh5Nq": {
"defaultMessage": "@ {rate}", "defaultMessage": "@ {rate}",
"description": "Showing zap amount in USD @ rate" "description": "Showing zap amount in USD @ rate"
@ -319,7 +322,7 @@
"defaultMessage": "{n}p" "defaultMessage": "{n}p"
}, },
"YwzT/0": { "YwzT/0": {
"defaultMessage": "Clip title" "defaultMessage": "剪辑标题"
}, },
"Z8ZOEY": { "Z8ZOEY": {
"defaultMessage": "这个方式不安全。我们建议使用{nostrlink}" "defaultMessage": "这个方式不安全。我们建议使用{nostrlink}"
@ -337,7 +340,7 @@
"defaultMessage": "突袭" "defaultMessage": "突袭"
}, },
"bfvyfs": { "bfvyfs": {
"defaultMessage": "安诺" "defaultMessage": "匿名"
}, },
"cPIKU2": { "cPIKU2": {
"defaultMessage": "已关注" "defaultMessage": "已关注"
@ -361,7 +364,7 @@
"defaultMessage": "Nostr 扩展" "defaultMessage": "Nostr 扩展"
}, },
"f6biFA": { "f6biFA": {
"defaultMessage": "哦,我们还为你提供了{n}聪的免费直播!💜" "defaultMessage": "哦,我们还为你提供了 {n} 聪的免费直播!💜"
}, },
"fBI91o": { "fBI91o": {
"defaultMessage": "打闪" "defaultMessage": "打闪"
@ -403,7 +406,7 @@
"defaultMessage": "突袭 {name}" "defaultMessage": "突袭 {name}"
}, },
"jJLRgo": { "jJLRgo": {
"defaultMessage": "Publish Clip" "defaultMessage": "剪辑片段"
}, },
"jctiUc": { "jctiUc": {
"defaultMessage": "最高收视率" "defaultMessage": "最高收视率"
@ -412,7 +415,7 @@
"defaultMessage": "小工具" "defaultMessage": "小工具"
}, },
"jkAQj5": { "jkAQj5": {
"defaultMessage": "流水结束" "defaultMessage": "直播已结束"
}, },
"jr4+vD": { "jr4+vD": {
"defaultMessage": "Markdown" "defaultMessage": "Markdown"
@ -433,7 +436,7 @@
"defaultMessage": "端点" "defaultMessage": "端点"
}, },
"miQKuZ": { "miQKuZ": {
"defaultMessage": "流水时间" "defaultMessage": "直播时间"
}, },
"mnJYBQ": { "mnJYBQ": {
"defaultMessage": "语音" "defaultMessage": "语音"
@ -460,7 +463,7 @@
"defaultMessage": "直播流类型应该是 HLS" "defaultMessage": "直播流类型应该是 HLS"
}, },
"q+zTWM": { "q+zTWM": {
"defaultMessage": "<s>{person}</s> <s>{amount}</s> sats" "defaultMessage": "<s>{person}</s> 打闪了 <s>{amount}</s> 聪"
}, },
"r2Jjms": { "r2Jjms": {
"defaultMessage": "登录" "defaultMessage": "登录"
@ -505,7 +508,7 @@
"defaultMessage": "创建帐户" "defaultMessage": "创建帐户"
}, },
"uYw2LD": { "uYw2LD": {
"defaultMessage": "直播" "defaultMessage": "直播"
}, },
"vrTOHJ": { "vrTOHJ": {
"defaultMessage": "{amount} 聪" "defaultMessage": "{amount} 聪"
@ -523,7 +526,7 @@
"defaultMessage": "选择语音..." "defaultMessage": "选择语音..."
}, },
"wOy57k": { "wOy57k": {
"defaultMessage": "添加直播目标" "defaultMessage": "添加直播目标"
}, },
"wzWWzV": { "wzWWzV": {
"defaultMessage": "最高打闪用户" "defaultMessage": "最高打闪用户"

View File

@ -6,7 +6,7 @@
"defaultMessage": "沒有電子郵件,只有最棒!" "defaultMessage": "沒有電子郵件,只有最棒!"
}, },
"+sdKx8": { "+sdKx8": {
"defaultMessage": "Live now" "defaultMessage": "直播中"
}, },
"+vVZ/G": { "+vVZ/G": {
"defaultMessage": "連接" "defaultMessage": "連接"
@ -30,13 +30,13 @@
"defaultMessage": "目標" "defaultMessage": "目標"
}, },
"0hNxBy": { "0hNxBy": {
"defaultMessage": "Starts" "defaultMessage": "開始"
}, },
"1EYCdR": { "1EYCdR": {
"defaultMessage": "標籤" "defaultMessage": "標籤"
}, },
"1q4BO/": { "1q4BO/": {
"defaultMessage": "Not a valid URL" "defaultMessage": "URL 無效"
}, },
"1qsXCO": { "1qsXCO": {
"defaultMessage": "例如 name@wallet.com" "defaultMessage": "例如 name@wallet.com"
@ -45,7 +45,7 @@
"defaultMessage": "添加" "defaultMessage": "添加"
}, },
"37mth/": { "37mth/": {
"defaultMessage": "Viewers" "defaultMessage": "觀眾"
}, },
"3HwrQo": { "3HwrQo": {
"defaultMessage": "打閃!" "defaultMessage": "打閃!"
@ -72,7 +72,7 @@
"defaultMessage": "解析度" "defaultMessage": "解析度"
}, },
"50+/JW": { "50+/JW": {
"defaultMessage": "Stream Key is required" "defaultMessage": "需要直播流密鑰"
}, },
"5JcXdV": { "5JcXdV": {
"defaultMessage": "創建帳戶" "defaultMessage": "創建帳戶"
@ -84,7 +84,7 @@
"defaultMessage": "伺服器 URL" "defaultMessage": "伺服器 URL"
}, },
"5tM0VD": { "5tM0VD": {
"defaultMessage": "Stream Started" "defaultMessage": "直播已開始"
}, },
"69hmpj": { "69hmpj": {
"defaultMessage": "Raid from {name}" "defaultMessage": "Raid from {name}"
@ -96,13 +96,13 @@
"defaultMessage": "文字轉語音的最低金額" "defaultMessage": "文字轉語音的最低金額"
}, },
"7+bCC1": { "7+bCC1": {
"defaultMessage": "Stream url must start with rtmp://" "defaultMessage": "直播流 URL 必須以 rtmp:// 開頭"
}, },
"79lLl+": { "79lLl+": {
"defaultMessage": "Music" "defaultMessage": "音樂"
}, },
"7UOvbT": { "7UOvbT": {
"defaultMessage": "Offline" "defaultMessage": "離線"
}, },
"8YT6ja": { "8YT6ja": {
"defaultMessage": "輸入要轉為語音的文本" "defaultMessage": "輸入要轉為語音的文本"
@ -123,7 +123,7 @@
"defaultMessage": "登錄" "defaultMessage": "登錄"
}, },
"BD0vyn": { "BD0vyn": {
"defaultMessage": "{name} created a clip" "defaultMessage": "{name} 創建了一個剪輯"
}, },
"BGxpTN": { "BGxpTN": {
"defaultMessage": "直播流聊天室" "defaultMessage": "直播流聊天室"
@ -135,7 +135,7 @@
"defaultMessage": "登出" "defaultMessage": "登出"
}, },
"CsCUYo": { "CsCUYo": {
"defaultMessage": "{n} sats" "defaultMessage": "{n} "
}, },
"D3idYv": { "D3idYv": {
"defaultMessage": "設置" "defaultMessage": "設置"
@ -147,10 +147,10 @@
"defaultMessage": "在線" "defaultMessage": "在線"
}, },
"E9APoR": { "E9APoR": {
"defaultMessage": "Could not create stream URL" "defaultMessage": "無法創建直播流 URL"
}, },
"ESyhzp": { "ESyhzp": {
"defaultMessage": "你為{name}的留言" "defaultMessage": "給 {name} 的留言"
}, },
"FjDlus": { "FjDlus": {
"defaultMessage": "你始終可以用你自己的地址替換它。" "defaultMessage": "你始終可以用你自己的地址替換它。"
@ -162,7 +162,7 @@
"defaultMessage": "移除" "defaultMessage": "移除"
}, },
"GGaJMU": { "GGaJMU": {
"defaultMessage": "Top Chatters" "defaultMessage": "最高聊天"
}, },
"Gmiwnd": { "Gmiwnd": {
"defaultMessage": "Refresh the page to use the latest version" "defaultMessage": "Refresh the page to use the latest version"
@ -171,7 +171,7 @@
"defaultMessage": "封面圖片" "defaultMessage": "封面圖片"
}, },
"Gvxoji": { "Gvxoji": {
"defaultMessage": "Name is required" "defaultMessage": "名稱必填"
}, },
"H/bNs9": { "H/bNs9": {
"defaultMessage": "請將它安全保存!如果你丟失了此密鑰,你將無法再次訪問你的帳戶。對,很嚴肅!" "defaultMessage": "請將它安全保存!如果你丟失了此密鑰,你將無法再次訪問你的帳戶。對,很嚴肅!"
@ -195,7 +195,7 @@
"defaultMessage": "或" "defaultMessage": "或"
}, },
"J/+m9y": { "J/+m9y": {
"defaultMessage": "Stream Duration {duration} mins" "defaultMessage": "直播時長 {duration} 分鐘"
}, },
"JEsxDw": { "JEsxDw": {
"defaultMessage": "正在上傳..." "defaultMessage": "正在上傳..."
@ -237,10 +237,10 @@
"defaultMessage": "我們已經為你設置了一個閃電錢包,因此你立即可以開始收取觀眾的付款!" "defaultMessage": "我們已經為你設置了一個閃電錢包,因此你立即可以開始收取觀眾的付款!"
}, },
"PA0ej4": { "PA0ej4": {
"defaultMessage": "Create Clip" "defaultMessage": "創建剪輯"
}, },
"Pe0ogR": { "Pe0ogR": {
"defaultMessage": "Theme" "defaultMessage": "主題"
}, },
"Q3au2v": { "Q3au2v": {
"defaultMessage": "大約{estimate}" "defaultMessage": "大約{estimate}"
@ -252,7 +252,7 @@
"defaultMessage": "直播流 URL" "defaultMessage": "直播流 URL"
}, },
"QWlMq9": { "QWlMq9": {
"defaultMessage": "Stream key" "defaultMessage": "直播流密鑰"
}, },
"QceMQZ": { "QceMQZ": {
"defaultMessage": "目標:{amount}" "defaultMessage": "目標:{amount}"
@ -261,7 +261,7 @@
"defaultMessage": "{amount}來自{name}" "defaultMessage": "{amount}來自{name}"
}, },
"RJ2VxG": { "RJ2VxG": {
"defaultMessage": "A new version has been detected" "defaultMessage": "檢測到了新版本"
}, },
"RJOmzk": { "RJOmzk": {
"defaultMessage": "我已閱讀並同意{provider}的{terms}。" "defaultMessage": "我已閱讀並同意{provider}的{terms}。"
@ -276,7 +276,7 @@
"defaultMessage": "概要" "defaultMessage": "概要"
}, },
"RtYNX5": { "RtYNX5": {
"defaultMessage": "Chat Users" "defaultMessage": "聊天用戶"
}, },
"TP/cMX": { "TP/cMX": {
"defaultMessage": "已結束" "defaultMessage": "已結束"
@ -291,16 +291,16 @@
"defaultMessage": "新增卡片" "defaultMessage": "新增卡片"
}, },
"UfSot5": { "UfSot5": {
"defaultMessage": "過去的直播" "defaultMessage": "過去的直播"
}, },
"VA/Z1S": { "VA/Z1S": {
"defaultMessage": "隱藏" "defaultMessage": "隱藏"
}, },
"Vn2WiP": { "Vn2WiP": {
"defaultMessage": "Get Stream Key" "defaultMessage": "獲取直播流密鑰"
}, },
"W7DNWx": { "W7DNWx": {
"defaultMessage": "Stream Forwarding" "defaultMessage": "直播流轉發"
}, },
"W9355R": { "W9355R": {
"defaultMessage": "解除静音" "defaultMessage": "解除静音"
@ -309,7 +309,10 @@
"defaultMessage": "創建目標" "defaultMessage": "創建目標"
}, },
"XgWvGA": { "XgWvGA": {
"defaultMessage": "Reactions" "defaultMessage": "回應"
},
"Y0DXJb": {
"defaultMessage": "Recording URL"
}, },
"YPh5Nq": { "YPh5Nq": {
"defaultMessage": "@ {rate}", "defaultMessage": "@ {rate}",
@ -319,7 +322,7 @@
"defaultMessage": "{n}p" "defaultMessage": "{n}p"
}, },
"YwzT/0": { "YwzT/0": {
"defaultMessage": "Clip title" "defaultMessage": "剪輯標題"
}, },
"Z8ZOEY": { "Z8ZOEY": {
"defaultMessage": "這個方式不安全。我們建議使用{nostrlink}" "defaultMessage": "這個方式不安全。我們建議使用{nostrlink}"
@ -337,7 +340,7 @@
"defaultMessage": "Raid!" "defaultMessage": "Raid!"
}, },
"bfvyfs": { "bfvyfs": {
"defaultMessage": "Anon" "defaultMessage": "匿名"
}, },
"cPIKU2": { "cPIKU2": {
"defaultMessage": "已關注" "defaultMessage": "已關注"
@ -352,7 +355,7 @@
"defaultMessage": "測試語音" "defaultMessage": "測試語音"
}, },
"dOQCL8": { "dOQCL8": {
"defaultMessage": "Display name" "defaultMessage": "顯示名稱"
}, },
"dVD/AR": { "dVD/AR": {
"defaultMessage": "最高打閃用戶" "defaultMessage": "最高打閃用戶"
@ -373,13 +376,13 @@
"defaultMessage": "使用私鑰登錄(不安全)" "defaultMessage": "使用私鑰登錄(不安全)"
}, },
"gzsn7k": { "gzsn7k": {
"defaultMessage": "{n} messages" "defaultMessage": "{n} 條消息"
}, },
"hGQqkW": { "hGQqkW": {
"defaultMessage": "時間表" "defaultMessage": "時間表"
}, },
"hMzcSq": { "hMzcSq": {
"defaultMessage": "Messages" "defaultMessage": "消息"
}, },
"heyxZL": { "heyxZL": {
"defaultMessage": "開啟文字轉語音" "defaultMessage": "開啟文字轉語音"
@ -388,7 +391,7 @@
"defaultMessage": "聊天小部件" "defaultMessage": "聊天小部件"
}, },
"hzSNj4": { "hzSNj4": {
"defaultMessage": "Dashboard" "defaultMessage": "儀表板"
}, },
"ieGrWo": { "ieGrWo": {
"defaultMessage": "關注" "defaultMessage": "關注"
@ -403,16 +406,16 @@
"defaultMessage": "Raiding {name}" "defaultMessage": "Raiding {name}"
}, },
"jJLRgo": { "jJLRgo": {
"defaultMessage": "Publish Clip" "defaultMessage": "發布剪輯"
}, },
"jctiUc": { "jctiUc": {
"defaultMessage": "Highest Viewers" "defaultMessage": "最高觀眾"
}, },
"jgOqxt": { "jgOqxt": {
"defaultMessage": "Widgets" "defaultMessage": "小工具"
}, },
"jkAQj5": { "jkAQj5": {
"defaultMessage": "Stream Ended" "defaultMessage": "直播已結束"
}, },
"jr4+vD": { "jr4+vD": {
"defaultMessage": "Markdown" "defaultMessage": "Markdown"
@ -433,7 +436,7 @@
"defaultMessage": "端點" "defaultMessage": "端點"
}, },
"miQKuZ": { "miQKuZ": {
"defaultMessage": "Stream Time" "defaultMessage": "直播時間"
}, },
"mnJYBQ": { "mnJYBQ": {
"defaultMessage": "語音" "defaultMessage": "語音"
@ -451,7 +454,7 @@
"defaultMessage": "新增卡片" "defaultMessage": "新增卡片"
}, },
"o8pHw3": { "o8pHw3": {
"defaultMessage": "AUTO" "defaultMessage": "自動"
}, },
"oHPB8Q": { "oHPB8Q": {
"defaultMessage": "打閃{name}" "defaultMessage": "打閃{name}"
@ -460,13 +463,13 @@
"defaultMessage": "直播流類型應該是 HLS" "defaultMessage": "直播流類型應該是 HLS"
}, },
"q+zTWM": { "q+zTWM": {
"defaultMessage": "<s>{person}</s> zapped <s>{amount}</s> sats" "defaultMessage": "<s>{person}</s> 打閃了 <s>{amount}</s> 聰"
}, },
"r2Jjms": { "r2Jjms": {
"defaultMessage": "登錄" "defaultMessage": "登錄"
}, },
"rELDbB": { "rELDbB": {
"defaultMessage": "Refresh" "defaultMessage": "刷新"
}, },
"rWBFZA": { "rWBFZA": {
"defaultMessage": "前方有色情內容!" "defaultMessage": "前方有色情內容!"

View File

@ -30,6 +30,7 @@ export default defineConfig({
], ],
build: { build: {
outDir: "build", outDir: "build",
sourcemap: true,
}, },
clearScreen: false, clearScreen: false,
resolve: { resolve: {