diff --git a/package.json b/package.json index 178a0055..d70f0143 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "movie-web", - "version": "4.6.5", + "version": "4.6.6", "private": true, "homepage": "https://github.com/movie-web/movie-web", "scripts": { @@ -29,7 +29,7 @@ "@formkit/auto-animate": "^0.8.1", "@headlessui/react": "^1.7.17", "@ladjs/country-language": "^1.0.3", - "@movie-web/providers": "^2.2.7", + "@movie-web/providers": "^2.2.9", "@noble/hashes": "^1.3.3", "@plasmohq/messaging": "^0.6.1", "@react-spring/web": "^9.7.3", diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 21f909f3..e3e47434 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -22,8 +22,8 @@ dependencies: specifier: ^1.0.3 version: 1.0.3 '@movie-web/providers': - specifier: ^2.2.7 - version: 2.2.7 + specifier: ^2.2.9 + version: 2.2.9 '@noble/hashes': specifier: ^1.3.3 version: 1.3.3 @@ -1942,8 +1942,8 @@ packages: engines: {node: '>= 14'} dev: false - /@movie-web/providers@2.2.7: - resolution: {integrity: sha512-XwU1IkXrF7e99JtC5Tna00/yuRECqEyBo8bhTtVE6ZFLYj3YQXVm2sdHjcyerjbyAsXvKGeikWEkrvHofTUjDA==} + /@movie-web/providers@2.2.9: + resolution: {integrity: sha512-NHsyplM9Oe4DK3lIkNaEk0CqoQ6IqlaWXeDh01jj+DH4I4EJjSD4ow7OTeAC+BLz3Gwj6fh/vaE2WBGevPTDkQ==} requiresBuild: true dependencies: cheerio: 1.0.0-rc.12 diff --git a/src/assets/locales/de.json b/src/assets/locales/de.json index 210b5970..a7e52e54 100644 --- a/src/assets/locales/de.json +++ b/src/assets/locales/de.json @@ -155,7 +155,8 @@ "types": { "movie": "Film", "show": "Serie" - } + }, + "unreleased": "Unveröffentlicht" }, "navigation": { "banner": { diff --git a/src/assets/locales/fa.json b/src/assets/locales/fa.json index 01c46a84..50e9b2d6 100644 --- a/src/assets/locales/fa.json +++ b/src/assets/locales/fa.json @@ -467,7 +467,7 @@ }, "register": { "cta": "شروع کنید", - "text": "پیشرفت تماشای خود را بین دستگاه‌ها به اشتراک بگذارید و آنها را با یکدیگر همگام سازی کنید.", + "text": "جریان تماشای خود را بین دستگاه‌ها به اشتراک بگذارید و آنها را با یکدیگر همگام سازی کنید.", "title": "همگام سازی" }, "title": "حساب کاربری" @@ -487,7 +487,7 @@ "server": { "description": "اگر میخواید به یک بک-اند سفارشی برای ذخیره داده متصل شوید، با فعال و ارائه استفاده این لینک ادامه دهید. <0>دستورالعمل ها.", "label": "سرور سفارشی", - "urlLabel": "لینک سرور سفارشی" + "urlLabel": "لینک سرور کاستوم" }, "setup": { "doSetup": "راه اندازی کنید", diff --git a/src/assets/locales/hi.json b/src/assets/locales/hi.json index eab0a337..1b5c4a2d 100644 --- a/src/assets/locales/hi.json +++ b/src/assets/locales/hi.json @@ -155,7 +155,8 @@ "types": { "movie": "मूवी", "show": "शृंखला" - } + }, + "unreleased": "रिलीज़ नहीं हुवा" }, "navigation": { "banner": { @@ -172,7 +173,7 @@ }, "notFound": { "badge": "नहीं मिला", - "goHome": "घर वापिस जा रहा हूँ", + "goHome": "घर वापिस जाइये", "message": "हमने हर जगह देखा: डिब्बे के नीचे, कोठरी में, प्रॉक्सी के पीछे लेकिन अंततः वह पेज नहीं मिला जिसे आप ढूंढ रहे थे।", "title": "वह पृष्ठ नहीं मिल सका" }, @@ -294,6 +295,7 @@ "title": "गुणवत्ता" }, "settings": { + "audioItem": "ऑडियो", "downloadItem": "डाउनलोड", "enableSubtitles": "उपशीर्षक सक्षम करें", "experienceSection": "देखने का अनुभव", @@ -320,8 +322,9 @@ "unknownOption": "अज्ञात" }, "subtitles": { - "customChoice": "फ़ाइल से उपशीर्षक चुनें", + "customChoice": "फ़ाइल ड्रॉप या अपलोड करें", "customizeLabel": "अनुकूलित करें", + "dropSubtitleFile": "उपशीर्षक फ़ाइल यहां छोड़ें", "offChoice": "बंद", "settings": { "backlink": "कस्टम उपशीर्षक", @@ -379,6 +382,13 @@ "title": "वीडियो चलाने में विफल!" }, "scraping": { + "extensionFailure": { + "badge": "एक्सटेंशन बन्द हें", + "enableExtension": "एक्सटेंशन सक्षम करें", + "homeButton": "घर जाओ", + "text": "आपने मूवी-वेब एक्सटेंशन इंस्टॉल कर लिया है. इसका उपयोग शुरू करने के लिए, आपको इस साइट के लिए एक्सटेंशन सक्षम करना होगा।", + "title": "कृपया एक्सटेंशनको सक्षम करें" + }, "items": { "failure": "त्रुटि हुई", "notFound": "वीडियो नहीं है", @@ -536,6 +546,7 @@ } }, "subtitles": { + "backgroundBlurLabel": "पृष्ठभूमि धुंधला", "backgroundLabel": "पृष्ठभूमि अस्पष्टता", "colorLabel": "रंग", "previewQuote": "मुझे डरना नहीं चाहिए. डर मन हत्यारा है।", diff --git a/src/assets/locales/ko.json b/src/assets/locales/ko.json index 16d7fb9a..1f7c8015 100644 --- a/src/assets/locales/ko.json +++ b/src/assets/locales/ko.json @@ -122,7 +122,7 @@ "default": "무엇을 보고 싶으신가요?", "extra": [ "무엇을 탐험하고 싶으신가요?", - null, + "관심 목록에 무엇이 있나요?", "당신이 가장 좋아하는 영화는?", "당신이 가장 좋아하는 시리즈는?" ] @@ -536,6 +536,7 @@ } }, "subtitles": { + "backgroundBlurLabel": "배경 흐림", "backgroundLabel": "배경 투명도", "colorLabel": "색상", "previewQuote": "두려워해서는 안 됩니다. 두려움은 마음을 죽이는 존재입니다.", diff --git a/src/assets/locales/ne.json b/src/assets/locales/ne.json index 9250fbc9..519af811 100644 --- a/src/assets/locales/ne.json +++ b/src/assets/locales/ne.json @@ -155,7 +155,8 @@ "types": { "movie": "चलचित्र", "show": "कार्यक्रम" - } + }, + "unreleased": "रिलीज नभएको" }, "navigation": { "banner": { @@ -294,6 +295,7 @@ "title": "क्वालिटी" }, "settings": { + "audioItem": "आवाज", "downloadItem": "डाउनलोड", "enableSubtitles": "उपशीर्षकहरू सक्षम गर्नुहोस्", "experienceSection": "हेर्ने अनुभव", @@ -320,8 +322,9 @@ "unknownOption": "अज्ञात" }, "subtitles": { - "customChoice": "फाइलबाट उपशीर्षक चयन गर्नुहोस्", + "customChoice": "ड्रप वा फाइल अपलोड गर्नुहोस्", "customizeLabel": "अनुकूलन गर्नुहोस्", + "dropSubtitleFile": "सबटाइटल फाइल यहाँ छोड्नुहोस्", "offChoice": "बन्द", "settings": { "backlink": "अनुकूलन उपशीर्षकहरू", @@ -379,6 +382,13 @@ "title": "भिडियो प्ले गर्न असफल भयो!" }, "scraping": { + "extensionFailure": { + "badge": "एक्स्टेन्सन बन्द छ", + "enableExtension": "एक्स्टेन्सन सक्षम गर्नुहोस्", + "homeButton": "होम् जाउँ", + "text": "तपाईंले चलचित्र-वेब एक्स्टेन्सन स्थापना गर्नुभएको छ। यसलाई प्रयोग गर्न सुरु गर्न, तपाईंले यो साइटको लागिएक्स्टेन्सन सक्षम गर्न आवश्यक छ।", + "title": "कृपया एक्स्टेन्सन सक्षम गर्नुहोस्" + }, "items": { "failure": "त्रुटि भयो", "notFound": "भिडियो छैन", @@ -536,6 +546,7 @@ } }, "subtitles": { + "backgroundBlurLabel": "पृष्ठभूमि धमिलो", "backgroundLabel": "पृष्ठभूमि अस्पष्टता", "colorLabel": "रङ", "previewQuote": "म डराउनु हुँदैन। डर दिमागको हत्यारा हो।", diff --git a/src/assets/locales/nl.json b/src/assets/locales/nl.json index 6f58ffc6..8260f0d1 100644 --- a/src/assets/locales/nl.json +++ b/src/assets/locales/nl.json @@ -155,7 +155,8 @@ "types": { "movie": "Film", "show": "Serie" - } + }, + "unreleased": "Niet uitgebracht" }, "navigation": { "banner": { diff --git a/src/assets/locales/sl.json b/src/assets/locales/sl.json index 958b2ba7..09dd8dcb 100644 --- a/src/assets/locales/sl.json +++ b/src/assets/locales/sl.json @@ -155,7 +155,8 @@ "types": { "movie": "Film", "show": "Serija" - } + }, + "unreleased": "Neizdano" }, "navigation": { "banner": { @@ -294,6 +295,7 @@ "title": "Kvaliteta" }, "settings": { + "audioItem": "Zvok", "downloadItem": "Prenesi", "enableSubtitles": "Vklopi podnapise", "experienceSection": "Izkušnje ogleda", @@ -320,8 +322,9 @@ "unknownOption": "Neznano" }, "subtitles": { - "customChoice": "Izberi podnapise iz datoteke", + "customChoice": "Povleci in naloži datoteko", "customizeLabel": "Prilagodi", + "dropSubtitleFile": "Povleci datoteko s podnapisi tukaj", "offChoice": "Off", "settings": { "backlink": "Podnapisi po meri", @@ -379,6 +382,13 @@ "title": "Ni uspelo predvajati videoposnetka!" }, "scraping": { + "extensionFailure": { + "badge": "Razširitev brskalnika je onemogočena", + "enableExtension": "Vklopi razširitev brskalnika", + "homeButton": "Pojdi domov", + "text": "Namestili ste razširitev movie-web. Če jo želite začeti uporabljati, morate razširitev omogočiti za to spletno mesto.", + "title": "Prosim vklopite razširitev brskalnika" + }, "items": { "failure": "Zgodila se je napaka", "notFound": "Nima videoposnetka", diff --git a/src/assets/locales/zh-Hant.json b/src/assets/locales/zh-Hant.json index 3680258f..ce4e410a 100644 --- a/src/assets/locales/zh-Hant.json +++ b/src/assets/locales/zh-Hant.json @@ -155,7 +155,8 @@ "types": { "movie": "電影", "show": "節目" - } + }, + "unreleased": "尚未上映" }, "navigation": { "banner": { @@ -294,6 +295,7 @@ "title": "品質" }, "settings": { + "audioItem": "音頻", "downloadItem": "下載", "enableSubtitles": "啟用字幕", "experienceSection": "觀看體驗", @@ -320,8 +322,9 @@ "unknownOption": "未知" }, "subtitles": { - "customChoice": "從檔案中選擇字幕", + "customChoice": "把字幕檔案拖入或上傳", "customizeLabel": "自訂", + "dropSubtitleFile": "將字幕檔案拖曳到這裡", "offChoice": "關閉", "settings": { "backlink": "自訂字幕", @@ -379,6 +382,13 @@ "title": "無法播放視頻!" }, "scraping": { + "extensionFailure": { + "badge": "擴充功能已被禁用", + "enableExtension": "啟用擴充功能", + "homeButton": "回到首頁", + "text": "您已安裝該擴充功能, 你要啟用擴充程式去用它。", + "title": "請啟用擴充功能" + }, "items": { "failure": "發生錯誤", "notFound": "沒有視頻", diff --git a/src/assets/locales/zh.json b/src/assets/locales/zh.json index d7b66e1a..fafe4590 100644 --- a/src/assets/locales/zh.json +++ b/src/assets/locales/zh.json @@ -155,7 +155,8 @@ "types": { "movie": "电影", "show": "电视节目" - } + }, + "unreleased": "未发布" }, "navigation": { "banner": { @@ -294,6 +295,7 @@ "title": "质量" }, "settings": { + "audioItem": "音频", "downloadItem": "下载", "enableSubtitles": "启用字幕", "experienceSection": "观看体验", @@ -320,8 +322,9 @@ "unknownOption": "未知" }, "subtitles": { - "customChoice": "从文件选取字幕", + "customChoice": "拖入或上传文件", "customizeLabel": "自定义", + "dropSubtitleFile": "将字幕拖入这里", "offChoice": "关闭", "settings": { "backlink": "自定义字幕", @@ -379,6 +382,13 @@ "title": "视频播放失败!" }, "scraping": { + "extensionFailure": { + "badge": "扩展程序已禁用", + "enableExtension": "启用扩展程序", + "homeButton": "返回首页", + "text": "您已经安装 movie-web 扩展程序。要开始使用,您需要为此站点启用扩展。", + "title": "请启用扩展程序" + }, "items": { "failure": "发生了错误", "notFound": "没有视频", diff --git a/src/components/player/display/base.ts b/src/components/player/display/base.ts index 8322b82b..b1eb616f 100644 --- a/src/components/player/display/base.ts +++ b/src/components/player/display/base.ts @@ -83,7 +83,8 @@ export function makeVideoElementDisplayInterface(): DisplayInterface { function reportAudioTracks() { if (!hls) return; - const currentTrack = hls.audioTracks[hls.audioTrack]; + const currentTrack = hls.audioTracks?.[hls.audioTrack ?? 0]; + if (!currentTrack) return; emit("changedaudiotrack", { id: currentTrack.id.toString(), label: currentTrack.name, @@ -129,6 +130,7 @@ export function makeVideoElementDisplayInterface(): DisplayInterface { } function setupSource(vid: HTMLVideoElement, src: LoadableSource) { + hls = null; if (src.type === "hls") { if (canPlayHlsNatively(vid)) { vid.src = processCdnLink(src.url);