From 6a905bf517a459d4d082012c791e45e790b9b718 Mon Sep 17 00:00:00 2001 From: Jorrin Date: Sun, 31 Mar 2024 20:20:10 +0200 Subject: [PATCH 1/8] Also route hls audio tracks through extension --- src/backend/extension/messaging.ts | 1 + src/components/player/display/base.ts | 15 +++++++++++++++ 2 files changed, 16 insertions(+) diff --git a/src/backend/extension/messaging.ts b/src/backend/extension/messaging.ts index c280f9bd..bf0e3253 100644 --- a/src/backend/extension/messaging.ts +++ b/src/backend/extension/messaging.ts @@ -9,6 +9,7 @@ import { ExtensionMakeRequestResponse } from "@/backend/extension/plasmo"; export const RULE_IDS = { PREPARE_STREAM: 1, SET_DOMAINS_HLS: 2, + SET_DOMAINS_HLS_AUDIO: 3, }; // for some reason, about 500 ms is needed after diff --git a/src/components/player/display/base.ts b/src/components/player/display/base.ts index 8e155f69..8322b82b 100644 --- a/src/components/player/display/base.ts +++ b/src/components/player/display/base.ts @@ -191,6 +191,21 @@ export function makeVideoElementDisplayInterface(): DisplayInterface { }, }); }); + hls.on(Hls.Events.AUDIO_TRACK_LOADED, async (_, data) => { + const chunkUrlsDomains = data.details.fragments.map( + (v) => new URL(v.url).hostname, + ); + const chunkUrls = [...new Set(chunkUrlsDomains)]; + + await setDomainRule({ + ruleId: RULE_IDS.SET_DOMAINS_HLS_AUDIO, + targetDomains: chunkUrls, + requestHeaders: { + ...src.preferredHeaders, + ...src.headers, + }, + }); + }); } }); hls.on(Hls.Events.LEVEL_SWITCHED, () => { From 0ae96309c7bbbd7f1f77357beb43c91f22b0d646 Mon Sep 17 00:00:00 2001 From: Alex Date: Sat, 30 Mar 2024 00:46:32 +0000 Subject: [PATCH 2/8] Translated using Weblate (Russian) Currently translated at 100.0% (336 of 336 strings) Translation: movie-web/website Translate-URL: https://weblate.476328473.xyz/projects/movie-web/website/ru/ Author: Alex --- src/assets/locales/ru.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/assets/locales/ru.json b/src/assets/locales/ru.json index fddc32ca..d80dc553 100644 --- a/src/assets/locales/ru.json +++ b/src/assets/locales/ru.json @@ -322,7 +322,7 @@ "unknownOption": "Неизвестный" }, "subtitles": { - "customChoice": "Перетащите или загрузите файл", + "customChoice": "Перетащите файл или нажмите для загрузки", "customizeLabel": "Настроить", "dropSubtitleFile": "Перетащите файл субтитров", "offChoice": "Выключить", From 35c6d252686ddd5559c964f28a81c1588203b102 Mon Sep 17 00:00:00 2001 From: Dave Date: Sat, 30 Mar 2024 07:59:55 +0000 Subject: [PATCH 3/8] Translated using Weblate (Indonesian) Currently translated at 76.1% (256 of 336 strings) Translation: movie-web/website Translate-URL: https://weblate.476328473.xyz/projects/movie-web/website/id/ Author: Dave --- src/assets/locales/id.json | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/src/assets/locales/id.json b/src/assets/locales/id.json index 977f1107..8dc72922 100644 --- a/src/assets/locales/id.json +++ b/src/assets/locales/id.json @@ -57,6 +57,7 @@ }, "host": "Anda ingin terhubung ke <0>{{hostname}} - mohon konfirmasi anda mempercayai server ini sebelum anda membuat akun", "no": "Kembali", + "noHostTitle": "Server belum dikonfigurasi!", "title": "Apakah anda mempercayai server ini?", "yes": "Saya percaya" }, @@ -181,7 +182,13 @@ }, "extension": { "back": "Kembali", - "explainerIos": "Sayangnya, ekstensi browser tidak didukung di iOS, Tekan Kembali untuk memilih opsi lain." + "explainerIos": "Sayangnya, ekstensi browser tidak didukung di iOS, Tekan Kembali untuk memilih opsi lain.", + "notDetectingAction": "Muat ulang halaman", + "status": { + "disallowed": "Ekstensi tidak diaktifkan untuk halaman ini", + "disallowedAction": "Aktifkan ekstensi", + "outdated": "Versi ekstensi terlalu tua" + } } }, "overlays": { From f20fe984d3feff35b42b266aca61de4aa818b919 Mon Sep 17 00:00:00 2001 From: Dave Date: Sat, 30 Mar 2024 08:00:58 +0000 Subject: [PATCH 4/8] Translated using Weblate (Indonesian) Currently translated at 77.6% (261 of 336 strings) Translation: movie-web/website Translate-URL: https://weblate.476328473.xyz/projects/movie-web/website/id/ Author: Dave --- src/assets/locales/id.json | 21 ++++++++++++++++++++- 1 file changed, 20 insertions(+), 1 deletion(-) diff --git a/src/assets/locales/id.json b/src/assets/locales/id.json index 8dc72922..724ca2eb 100644 --- a/src/assets/locales/id.json +++ b/src/assets/locales/id.json @@ -187,7 +187,26 @@ "status": { "disallowed": "Ekstensi tidak diaktifkan untuk halaman ini", "disallowedAction": "Aktifkan ekstensi", - "outdated": "Versi ekstensi terlalu tua" + "outdated": "Versi ekstensi terlalu tua", + "success": "Ekstensi bekerja sesuai harapan!" + }, + "submit": "Lanjutkan", + "title": "Mari mulai dengan ekstensi" + }, + "proxy": { + "back": "Kembali", + "input": { + "errorInvalidUrl": "URL tidak valid", + "placeholder": "https://" + }, + "link": "Belajar cara membuat proxy", + "title": "Mari buat proxy baru" + }, + "start": { + "options": { + "extension": { + "action": "Instal ekstensi" + } } } }, From 232fb7e8955d215a87935f5fe96158b3ea4e8f75 Mon Sep 17 00:00:00 2001 From: Thais Palmer Date: Sat, 30 Mar 2024 16:20:27 +0000 Subject: [PATCH 5/8] Translated using Weblate (Portuguese (Brazil)) Currently translated at 100.0% (336 of 336 strings) Translation: movie-web/website Translate-URL: https://weblate.476328473.xyz/projects/movie-web/website/pt_BR/ Author: Thais Palmer --- src/assets/locales/pt-BR.json | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) diff --git a/src/assets/locales/pt-BR.json b/src/assets/locales/pt-BR.json index 147aabd0..eea7d5d2 100644 --- a/src/assets/locales/pt-BR.json +++ b/src/assets/locales/pt-BR.json @@ -155,7 +155,8 @@ "types": { "movie": "Filme", "show": "Série" - } + }, + "unreleased": "Não lançado" }, "navigation": { "banner": { @@ -381,6 +382,13 @@ "title": "Falha ao reproduzir o vídeo!" }, "scraping": { + "extensionFailure": { + "badge": "Extensão desativada", + "enableExtension": "Ativar extensão", + "homeButton": "Ir para o início", + "text": "Você instalou a extensão movie-web. Para começar a usá-la, você precisa ativar a extensão neste site.", + "title": "Por favor, ative a extensão" + }, "items": { "failure": "Ocorreu um erro", "notFound": "Não tem o vídeo", From caf5faeb49f2a916c47783259d97151de1610b08 Mon Sep 17 00:00:00 2001 From: Dave Date: Sun, 31 Mar 2024 06:28:12 +0000 Subject: [PATCH 6/8] Translated using Weblate (Indonesian) Currently translated at 83.3% (280 of 336 strings) Translation: movie-web/website Translate-URL: https://weblate.476328473.xyz/projects/movie-web/website/id/ Author: Dave --- src/assets/locales/id.json | 115 +++++++++++++++++++++++-------------- 1 file changed, 72 insertions(+), 43 deletions(-) diff --git a/src/assets/locales/id.json b/src/assets/locales/id.json index 724ca2eb..1de99a31 100644 --- a/src/assets/locales/id.json +++ b/src/assets/locales/id.json @@ -4,7 +4,7 @@ "faqTitle": "Pertanyaan umum", "q1": { "body": "movie-web tidak menyimpan berkas media apapun. Ketika anda mengklik sesuatu untuk ditonton, aplikasi akan mencari berkas media di internet (saat media dimuat dan pada tab 'sumber media' anda dapat melihat sumber mana yang digunakan). movie-web tidak pernah mengunggah media apapun, semua media didapat melalui mekanisme pencarian di internet.", - "title": "Dari mana konten media di sini berasal?" + "title": "Dari mana konten berasal?" }, "q2": { "body": "Kami tidak menerima permintaan penambahan serial televisi atau film, movie-web tidak mengelola konten apapun. Semua konten ditonton melalui sumber-sumber dari internet.", @@ -26,24 +26,24 @@ "deviceNamePlaceholder": "Perangkat personal", "generate": { "description": "Kombinasi kata ini berfungsi sebagai nama pengguna sekaligus kata sandi anda. Pastikan untuk menyimpannya dengan aman karena anda memerlukannya untuk masuk ke akun anda", - "next": "Saya sudah menyimpan kombinasi kata di atas", + "next": "Saya sudah menyimpan kombinasi kata", "passphraseFrameLabel": "Kombinasi kata", - "title": "Kombinasi kata anda" + "title": "Kombinasi kata Anda" }, "hasAccount": "Sudah memiliki akun? <0>Masuk disini.", "login": { - "description": "Mohon masukkan kombinasi kata anda untuk masuk ke akun anda", + "description": "Mohon masukkan kombinasi kata anda untuk masuk ke akun Anda", "deviceLengthError": "Mohon masukkan nama perangkat", "passphraseLabel": "12 kombinasi kata unik", "passphrasePlaceholder": "Kombinasi kata", "submit": "Masuk", - "title": "Masuk ke akun anda", - "validationError": "Kombinasi kata unik salah" + "title": "Masuk ke akun Anda", + "validationError": "Kombinasi kata salah atau tidak lengkap" }, "register": { "information": { - "color1": "Gradasi warna profil pertama", - "color2": "Gradasi warna profil kedua", + "color1": "Warna profil pertama", + "color2": "Warna profil kedua", "header": "Masukkan nama perangkat anda lalu pilih warna latar belakang dan ikon pengguna yang ingin anda gunakan", "icon": "Ikon pengguna", "next": "Berikutnya", @@ -52,30 +52,31 @@ }, "trust": { "failed": { - "text": "Apakah anda mengkonfigurasi server dengan benar?", + "text": "Apakah Anda mengkonfigurasi server dengan benar?", "title": "Gagal terhubung dengan server" }, - "host": "Anda ingin terhubung ke <0>{{hostname}} - mohon konfirmasi anda mempercayai server ini sebelum anda membuat akun", + "host": "Anda ingin terhubung ke <0>{{hostname}} - mohon konfirmasi Anda mempercayai server ini sebelum Anda membuat akun", "no": "Kembali", + "noHost": "Server belum dikonfigurasi, maka dari itu Anda tidak dapat membuat akun", "noHostTitle": "Server belum dikonfigurasi!", - "title": "Apakah anda mempercayai server ini?", - "yes": "Saya percaya" + "title": "Apakah Anda mempercayai server ini?", + "yes": "Saya percaya server ini" }, "verify": { - "description": "Mohon masukkan kombinasi kata pribadi anda sebelumnya untuk mengonfirmasi bahwa anda telah menyimpannya untuk melanjutkan proses pembuatan akun", + "description": "Mohon masukkan kombinasi kata pribadi Anda sebelumnya untuk mengonfirmasi bahwa Anda telah menyimpannya untuk melanjutkan proses pembuatan akun", "invalidData": "Data tidak valid", "noMatch": "Kombinasi kata tidak cocok", - "passphraseLabel": "12 kombinasi kata pribadi anda", + "passphraseLabel": "12 kombinasi kata Anda", "recaptchaFailed": "Validasi reCaptcha gagal", "register": "Buat akun", - "title": "Konfirmasi kombinasi kata pribadi anda" + "title": "Konfirmasi kombinasi kata Anda" } }, "errors": { "badge": "Terjadi masalah", - "details": "Detail eror", + "details": "Rincian kesalahan", "reloadPage": "Muat ulang halaman", - "showError": "Lihat detail eror", + "showError": "Lihat rincian kesalahan", "title": "Kami mengalami galat!" }, "footer": { @@ -88,7 +89,7 @@ "dmca": "DMCA", "github": "GitHub" }, - "tagline": "Tonton serial televisi dan film favorit anda dengan aplikasi streaming open source ini." + "tagline": "Tonton serial televisi dan film favorit anda dengan aplikasi streaming sumber terbuka ini." }, "global": { "name": "movie-web", @@ -110,7 +111,7 @@ "sectionTitle": "Lanjut menonton" }, "mediaList": { - "stopEditing": "Berhenti mengubah" + "stopEditing": "Berhenti menyunting" }, "search": { "allResults": "Hanya itu yang kami punya!", @@ -132,19 +133,19 @@ "day": { "default": "Apa yang ingin anda tonton sore ini?", "extra": [ - "Lagi pengen nonton genre Adventure? Jurassic Park mungkin cocok buat anda." + "Merasa suka bertualang? Jurassic Park mungkin pilihan cocok untuk Anda." ] }, "morning": { - "default": "Apa yang ingin anda tonton pagi ini?", + "default": "Apa yang ingin Anda tonton pagi ini?", "extra": [ - "Kayaknya film Before Sunrise bagus deh" + "Saya dengar film Before Sunrise bagus" ] }, "night": { - "default": "Apa yang ingin anda tonton malam ini?", + "default": "Apa yang ingin Anda tonton malam ini?", "extra": [ - "Capek? Katanya The Exocist rekomended." + "Capek? Saya dengar The Exocist bagus." ] } } @@ -154,11 +155,12 @@ "types": { "movie": "Film", "show": "Serial TV" - } + }, + "unreleased": "Belum dirilis" }, "navigation": { "banner": { - "offline": "Periksa koneksi internet anda" + "offline": "Periksa koneksi internet Anda" }, "menu": { "about": "Tentang kami", @@ -172,40 +174,65 @@ "notFound": { "badge": "Tidak ditemukan", "goHome": "Kembali", - "message": "Kami sudah mencari dimana-mana: di bawah tempat sampah, di lemari, di belakang server proxy, tapi tetap gagal menemukan halaman yang anda cari.", + "message": "Kami sudah mencari dimana-mana: di bawah tempat sampah, di lemari, di belakang server proxy, tetapi tidak dapat menemukan halaman yang Anda cari.", "title": "Gagal menemukan halaman" }, "onboarding": { "defaultConfirm": { "cancel": "Batal", - "title": "Apa kamu yakin?" + "confirm": "Gunakan pengaturan bawaan", + "description": "Pengaturan bawaan tidak memiliki streaming terbaik dan bisa menjadi sangat lambat.", + "title": "Apa Anda yakin?" }, "extension": { "back": "Kembali", + "explainer": "Menggunakan ekstensi browser, Anda dapat mendapatkan streaming terbaik yang kami tawarkan. Dengan instalasi sederhana.", "explainerIos": "Sayangnya, ekstensi browser tidak didukung di iOS, Tekan Kembali untuk memilih opsi lain.", + "extensionHelp": "Jika Anda telah menginstal ekstensi tetapi tidak terdeteksi, buka ekstensi melalui menu ekstensi browser Anda dan ikuti instruksi di layar.", + "linkChrome": "Instal ekstensi Chrome", + "linkFirefox": "Instal ekstensi Firefox", + "notDetecting": "Terinstal di Chrome tetapi situs tidak mendeteksinya? Coba muat ulang halaman!", "notDetectingAction": "Muat ulang halaman", "status": { "disallowed": "Ekstensi tidak diaktifkan untuk halaman ini", "disallowedAction": "Aktifkan ekstensi", + "failed": "Gagal meminta status", + "loading": "Menunggu Anda menginstal ekstensi", "outdated": "Versi ekstensi terlalu tua", - "success": "Ekstensi bekerja sesuai harapan!" + "success": "Ekstensi berkerja sesuai harapan!" }, "submit": "Lanjutkan", "title": "Mari mulai dengan ekstensi" }, "proxy": { "back": "Kembali", + "explainer": "Menggunakan metode proxy, Anda dapat mendapatkan streaming berkualitas baik dengan membuat layanan proxy mandiri.", "input": { + "errorConnection": "Tidak dapat terhubung ke proxy", "errorInvalidUrl": "URL tidak valid", + "errorNotProxy": "Mengharapkan proxy tapi menerima situs", + "label": "URL proxy", "placeholder": "https://" }, "link": "Belajar cara membuat proxy", "title": "Mari buat proxy baru" }, "start": { + "explainer": "Untuk mendapatkan streaming terbaik, Anda perlu memilih metode streaming yang Anda ingin gunakan.", "options": { + "default": { + "text": "Saya tidak menginginkan streaming kualitas baik, <0 /> <1>gunakan pengaturan bawaan" + }, "extension": { - "action": "Instal ekstensi" + "action": "Instal ekstensi", + "description": "Instal ekstensi browser dan dapatkan akses ke sumber terbaik.", + "quality": "Kualitas terbaik", + "title": "Ekstensi browser" + }, + "proxy": { + "action": "Atur proxy", + "description": "Atur proxy dalam hanya 5 menit dan dapatkan akses ke sumber terbaik.", + "quality": "Kualitas baik" } } } @@ -223,12 +250,13 @@ }, "menus": { "downloads": { + "copyHlsPlaylist": "Salin tautan daftar putar HLS", "disclaimer": "Tautan unduhan diambil langsung dari penyedia pihak ketiga. Aplikasi ini tidak memiliki kendali bagaimana unduhan disediakan.", - "downloadSubtitle": "Unduh subtitle", + "downloadSubtitle": "Unduh subtitle saat ini", "downloadVideo": "Unduh media", - "hlsDisclaimer": "Tautan unduhan diambil langsung dari penyedia pihak ketiga. Aplikasi ini tidak memiliki kendali bagaimana unduhan disediakan. Harap diperhatikan, anda akan mengunduh HLS playlist, media ini hanya ditunjukan bagi pengguna tingkat lanjut.", + "hlsDisclaimer": "Unduhan didapatkan langsung dari penyedia. movie-web tidak memiliki kendali bagaimana unduan disediakan.

Harap diperhatikan bahwa Anda mengunduh daftar putar HLS, ini tidak direkomendasikan untuk diunduh jika Anda tidak terbiasa dengan format streaming tingkat lanjutCoba sumber berbeda untuk format berbeda.", "onAndroid": { - "1": "Untuk mengunduh di Android, klik tombol unduh, lalu di halaman baru klik dan tahan pada video, lalu pilih save.", + "1": "Untuk mengunduh di Android, klik tombol unduh, lalu di halaman baru klik dan tahan pada video, lalu pilih simpan.", "shortTitle": "Unduh / Android", "title": "Unduh di Android" }, @@ -246,11 +274,12 @@ }, "episodes": { "button": "Episode", - "emptyState": "Tidak ada episode di season ini, check lagi nanti!", + "emptyState": "Tidak ada episode di season ini, periksa kembali nanti!", "episodeBadge": "E{{episode}}", - "loadingError": "Eror memuat season", + "loadingError": "Gagal memuat season", "loadingList": "Memuat...", - "loadingTitle": "Memuat..." + "loadingTitle": "Memuat...", + "unairedEpisodes": "Satu atau lebih episode dalam season ini telah dinonaktifkan karena mereka belum ditayangkan." }, "playback": { "speedLabel": "Kecepatan pemutar", @@ -258,13 +287,13 @@ }, "quality": { "automaticLabel": "Otomatis", - "hint": "Anda dapat mencoba <0>mengganti sumber media untuk mendapatkan opsi kualitas yang berbeda.", - "iosNoQuality": "Karena keterbatasan dari Apple, opsi kualitas pada sumber ini tidak tersedia untuk iOS. Anda dapat mencoba <0>mengganti sumber media untuk mendapatkan opsi kualitas yang berbeda.", + "hint": "Anda dapat mencoba <0>mengganti sumber untuk mendapatkan opsi kualitas yang berbeda.", + "iosNoQuality": "Karena keterbatasan dari Apple, opsi kualitas pada sumber ini tidak tersedia untuk iOS. Anda dapat mencoba <0>mengganti sumber untuk mendapatkan opsi kualitas yang berbeda.", "title": "Kualitas" }, "settings": { "downloadItem": "Unduh", - "enableSubtitles": "Hidupkan subtitle", + "enableSubtitles": "Aktifkan subtitle", "experienceSection": "Pengaturan tambahan", "playbackItem": "Pengaturan pemutar", "qualityItem": "Kualitas", @@ -274,22 +303,22 @@ }, "sources": { "failed": { - "text": "Terjadi galat saat mencoba mencari media, mohon pilih sumber yang lain.", + "text": "Terjadi galat saat mencoba mencari media, mohon pilih sumber lain.", "title": "Gagal memuat data" }, "noEmbeds": { - "text": "Kami tidak dapat menemukan tautan, mohon pilih sumber yang lain.", + "text": "Kami tidak dapat menemukan tautan, mohon pilih sumber lain.", "title": "Tautan tidak ditemukan" }, "noStream": { - "text": "Sumber ini tidak memiliki media untuk film atau seri yang anda cari.", + "text": "Sumber ini tidak memiliki media untuk film atau seri yang Anda cari.", "title": "Tidak ada media" }, "title": "Sumber", "unknownOption": "Tidak diketahui" }, "subtitles": { - "customChoice": "Pilih subtitle dari file", + "customChoice": "Jatuhkan atau unggah berkas", "customizeLabel": "Sesuaikan", "offChoice": "Matikan", "settings": { From 5355791486c06286d0f8d4e2150d59b5950e4264 Mon Sep 17 00:00:00 2001 From: Mehdi Date: Sun, 31 Mar 2024 10:24:32 +0000 Subject: [PATCH 7/8] Translated using Weblate (Persian) Currently translated at 100.0% (336 of 336 strings) Translation: movie-web/website Translate-URL: https://weblate.476328473.xyz/projects/movie-web/website/fa/ Author: Mehdi --- src/assets/locales/fa.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/assets/locales/fa.json b/src/assets/locales/fa.json index 99d7aaa4..01c46a84 100644 --- a/src/assets/locales/fa.json +++ b/src/assets/locales/fa.json @@ -386,7 +386,7 @@ "badge": "اکستنشن غیر فعال شد", "enableExtension": "اکستنشن را فعال کنید", "homeButton": "خانه", - "text": "شما اکستنشن مووی-وب را نصب کردید. برای شروع استفاده از ان، شما نیاز به فعال کردن آن دارید", + "text": "شما اکستنشن مووی-وب را نصب کردید. برای شروع استفاده از ان، نیاز به فعال کردن آن دارید", "title": "لطفا اکستنشن را فعال کنید" }, "items": { From 05a714d50fed695a81ce1437f0c4ce4a628b5a36 Mon Sep 17 00:00:00 2001 From: Jorrin Date: Sun, 31 Mar 2024 21:00:42 +0200 Subject: [PATCH 8/8] bump versions --- package.json | 4 +-- pnpm-lock.yaml | 75 +++++++++++++++++++++++++++++--------------------- 2 files changed, 45 insertions(+), 34 deletions(-) diff --git a/package.json b/package.json index 5a1d5ca4..945ef93a 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "movie-web", - "version": "4.6.3", + "version": "4.6.4", "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.5", + "@movie-web/providers": "^2.2.6", "@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 11d4f458..a762277b 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.5 - version: 2.2.5 + specifier: ^2.2.6 + version: 2.2.6 '@noble/hashes': specifier: ^1.3.3 version: 1.3.3 @@ -1942,20 +1942,19 @@ packages: engines: {node: '>= 14'} dev: false - /@movie-web/providers@2.2.5: - resolution: {integrity: sha512-/mBtU79uf2pfPwgkqKjoyuHGdDgHjKyGGVtd7xd0EQ5ds6ox5y2bSp4XtQRjZ7rZgyAh0aYFElAsY8SC+Nkz5g==} + /@movie-web/providers@2.2.6: + resolution: {integrity: sha512-wBsg4oa1HoPal498oGfBr9pJbFO7bPr73WXGfbTdhuFfCTYxF0mK91DORr4CfxMxmNp19Bnt6FR6ss7mzsVGlA==} + requiresBuild: true dependencies: cheerio: 1.0.0-rc.12 cookie: 0.6.0 crypto-js: 4.2.0 form-data: 4.0.0 - iso-639-1: 3.1.0 + iso-639-1: 3.1.2 nanoid: 3.3.7 - node-fetch: 2.7.0 + node-fetch: 3.3.2 set-cookie-parser: 2.6.0 unpacker: 1.0.1 - transitivePeerDependencies: - - encoding dev: false /@noble/hashes@1.3.3: @@ -3246,6 +3245,11 @@ packages: resolution: {integrity: sha512-sdQSFB7+llfUcQHUQO3+B8ERRj0Oa4w9POWMI/puGtuf7gFywGmkaLCElnudfTiKZV+NvHqL0ifzdrI8Ro7ESA==} dev: true + /data-uri-to-buffer@4.0.1: + resolution: {integrity: sha512-0R9ikRb668HB7QDxT1vkpuUBtqc53YyAwMwGeUFKRojY/NWKvdZ+9UYtRfGmhqNbRkTSVpMbmyhXipFFv2cb/A==} + engines: {node: '>= 12'} + dev: false + /data-urls@5.0.0: resolution: {integrity: sha512-ZYP5VBHshaDAiVZxjbRVcFJpc+4xGgT0bK3vzy1HLN8jTO975HEbuYzZJcHoQEY5K1a0z8YayJkyVETa08eNTg==} engines: {node: '>=18'} @@ -4028,6 +4032,14 @@ packages: reusify: 1.0.4 dev: true + /fetch-blob@3.2.0: + resolution: {integrity: sha512-7yAQpD2UMJzLi1Dqv7qFYnPbaPx7ZfFK6PiIxQ4PfkGPyNyl2Ugx+a/umUonmKqjhM4DnfbMvdX6otXq83soQQ==} + engines: {node: ^12.20 || >= 14.13} + dependencies: + node-domexception: 1.0.0 + web-streams-polyfill: 3.3.3 + dev: false + /file-entry-cache@6.0.1: resolution: {integrity: sha512-7Gps/XWymbLk2QLYK4NzpMOrYjMhdIxXuIvy2QBsLE6ljuodKvdkWs/cpyJJ3CVIVpH0Oi1Hvg1ovbMzLdFBBg==} engines: {node: ^10.12.0 || >=12.0.0} @@ -4114,6 +4126,13 @@ packages: combined-stream: 1.0.8 mime-types: 2.1.35 + /formdata-polyfill@4.0.10: + resolution: {integrity: sha512-buewHzMvYL29jdeQTVILecSaZKnt/RJWjoZCF5OW60Z67/GmSLBkOFM7qh1PI3zFNtJbaZL5eQu1vLfazOwj4g==} + engines: {node: '>=12.20.0'} + dependencies: + fetch-blob: 3.2.0 + dev: false + /fraction.js@4.3.7: resolution: {integrity: sha512-ZsDfxO51wGAXREY55a7la9LScWpwv9RxIrYABrlvOFBlH/ShPnrtsXeuUIfXKKOVicNxQ+o8JTbJvjS4M89yew==} dev: true @@ -4766,8 +4785,8 @@ packages: resolution: {integrity: sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw==} dev: true - /iso-639-1@3.1.0: - resolution: {integrity: sha512-rWcHp9dcNbxa5C8jA/cxFlWNFNwy5Vup0KcFvgA8sPQs9ZeJHj/Eq0Y8Yz2eL8XlWYpxw4iwh9FfTeVxyqdRMw==} + /iso-639-1@3.1.2: + resolution: {integrity: sha512-Le7BRl3Jt9URvaiEHJCDEdvPZCfhiQoXnFgLAWNRhzFMwRFdWO7/5tLRQbiPzE394I9xd7KdRCM7S6qdOhwG5A==} engines: {node: '>=6.0'} dev: false @@ -5234,20 +5253,22 @@ packages: resolution: {integrity: sha512-Yd3UES5mWCSqR+qNT93S3UoYUkqAZ9lLg8a7g9rimsWmYGK8cVToA4/sF3RrshdyV3sAGMXVUmpMYOw+dLpOuw==} dev: true + /node-domexception@1.0.0: + resolution: {integrity: sha512-/jKZoMpw0F8GRwl4/eLROPA3cfcXtLApP0QzLmUT/HuPCZWyB7IY9ZrMeKw2O/nFIqPQB3PVM9aYm0F312AXDQ==} + engines: {node: '>=10.5.0'} + dev: false + /node-fetch-native@1.4.0: resolution: {integrity: sha512-F5kfEj95kX8tkDhUCYdV8dg3/8Olx/94zB8+ZNthFs6Bz31UpUi8Xh40TN3thLwXgrwXry1pEg9lJ++tLWTcqA==} dev: false - /node-fetch@2.7.0: - resolution: {integrity: sha512-c4FRfUm/dbcWZ7U+1Wq0AwCyFL+3nt2bEw05wfxSz+DWpWsitgmSgYmy2dQdWyKC1694ELPqMs/YzUSNozLt8A==} - engines: {node: 4.x || >=6.0.0} - peerDependencies: - encoding: ^0.1.0 - peerDependenciesMeta: - encoding: - optional: true + /node-fetch@3.3.2: + resolution: {integrity: sha512-dRB78srN/l6gqWulah9SrxeYnxeddIG30+GOqK/9OlLVyLg3HPnr6SqOWTWOXKRwC2eGYCkZ59NNuSgvSrpgOA==} + engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0} dependencies: - whatwg-url: 5.0.0 + data-uri-to-buffer: 4.0.1 + fetch-blob: 3.2.0 + formdata-polyfill: 4.0.10 dev: false /node-forge@1.3.1: @@ -6647,10 +6668,6 @@ packages: url-parse: 1.5.10 dev: true - /tr46@0.0.3: - resolution: {integrity: sha512-N3WMsuqV66lT30CrXNbEjx4GEwlow3v6rr4mCcv6prnfwhS01rkgyFdjPNBYd9br7LpXV1+Emh01fHnq2Gdgrw==} - dev: false - /tr46@1.0.1: resolution: {integrity: sha512-dTpowEjclQ7Kgx5SdBkqRzVhERQXov8/l9Ft9dVM9fmg0W0KQSVaXX9T4i6twCPNtYiZM53lpSSUAwJbFPOHxA==} dependencies: @@ -7166,8 +7183,9 @@ packages: xml-name-validator: 5.0.0 dev: true - /webidl-conversions@3.0.1: - resolution: {integrity: sha512-2JAn3z8AR6rjK8Sm8orRC0h/bcl/DqL7tRPdGZ4I1CjdF+EaMLmYxBHyXuKL849eucPFhvBoxMsflfOb8kxaeQ==} + /web-streams-polyfill@3.3.3: + resolution: {integrity: sha512-d2JWLCivmZYTSIoge9MsgFCZrt571BikcWGYkjC1khllbTeDlGqZ2D8vD8E/lJa8WGWbb7Plm8/XJYV7IJHZZw==} + engines: {node: '>= 8'} dev: false /webidl-conversions@4.0.2: @@ -7208,13 +7226,6 @@ packages: webidl-conversions: 7.0.0 dev: true - /whatwg-url@5.0.0: - resolution: {integrity: sha512-saE57nupxk6v3HY35+jzBwYa0rKSy0XR8JSxZPwgLr7ys0IBzhGviA1/TUGJLmSVqs8pb9AnvICXEuOHLprYTw==} - dependencies: - tr46: 0.0.3 - webidl-conversions: 3.0.1 - dev: false - /whatwg-url@7.1.0: resolution: {integrity: sha512-WUu7Rg1DroM7oQvGWfOiAK21n74Gg+T4elXEQYkOhtyLeWiJFoOGLXPKI/9gzIie9CtwVLm8wtw6YJdKyxSjeg==} dependencies: