vidply 1.0.27 → 1.0.28

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (52) hide show
  1. package/dist/dev/vidply.TranscriptManager-QSF2PWUN.js +1744 -0
  2. package/dist/dev/vidply.TranscriptManager-QSF2PWUN.js.map +7 -0
  3. package/dist/dev/vidply.TranscriptManager-UTJBQC5B.js +1744 -0
  4. package/dist/dev/vidply.TranscriptManager-UTJBQC5B.js.map +7 -0
  5. package/dist/dev/vidply.chunk-5663PYKK.js +1631 -0
  6. package/dist/dev/vidply.chunk-5663PYKK.js.map +7 -0
  7. package/dist/dev/vidply.chunk-SRM7VNHG.js +1638 -0
  8. package/dist/dev/vidply.chunk-SRM7VNHG.js.map +7 -0
  9. package/dist/dev/vidply.de-RXAJM5QE.js +181 -0
  10. package/dist/dev/vidply.de-RXAJM5QE.js.map +7 -0
  11. package/dist/dev/vidply.de-SNL6AJ4D.js +188 -0
  12. package/dist/dev/vidply.de-SNL6AJ4D.js.map +7 -0
  13. package/dist/dev/vidply.es-2QCQKZ4U.js +188 -0
  14. package/dist/dev/vidply.es-2QCQKZ4U.js.map +7 -0
  15. package/dist/dev/vidply.es-SADVLJTQ.js +181 -0
  16. package/dist/dev/vidply.es-SADVLJTQ.js.map +7 -0
  17. package/dist/dev/vidply.esm.js +9 -9
  18. package/dist/dev/vidply.esm.js.map +2 -2
  19. package/dist/dev/vidply.fr-FJAZRL4L.js +188 -0
  20. package/dist/dev/vidply.fr-FJAZRL4L.js.map +7 -0
  21. package/dist/dev/vidply.fr-V3VAYBBT.js +181 -0
  22. package/dist/dev/vidply.fr-V3VAYBBT.js.map +7 -0
  23. package/dist/dev/vidply.ja-2XQOW53T.js +188 -0
  24. package/dist/dev/vidply.ja-2XQOW53T.js.map +7 -0
  25. package/dist/dev/vidply.ja-KL2TLZGJ.js +181 -0
  26. package/dist/dev/vidply.ja-KL2TLZGJ.js.map +7 -0
  27. package/dist/legacy/vidply.js +53 -13
  28. package/dist/legacy/vidply.js.map +2 -2
  29. package/dist/legacy/vidply.min.js +1 -1
  30. package/dist/legacy/vidply.min.meta.json +15 -15
  31. package/dist/prod/vidply.TranscriptManager-DZ2WZU3K.min.js +6 -0
  32. package/dist/prod/vidply.TranscriptManager-E5QHGFIR.min.js +6 -0
  33. package/dist/prod/vidply.chunk-5DWTMWEO.min.js +6 -0
  34. package/dist/prod/vidply.chunk-IBNYTGGM.min.js +6 -0
  35. package/dist/prod/vidply.de-FR3XX54P.min.js +6 -0
  36. package/dist/prod/vidply.de-HGJBCLLE.min.js +6 -0
  37. package/dist/prod/vidply.es-3IJCQLJ7.min.js +6 -0
  38. package/dist/prod/vidply.es-CZEBXCZN.min.js +6 -0
  39. package/dist/prod/vidply.esm.min.js +4 -4
  40. package/dist/prod/vidply.fr-HFOL7MWA.min.js +6 -0
  41. package/dist/prod/vidply.fr-NC4VEAPH.min.js +6 -0
  42. package/dist/prod/vidply.ja-4ZC6ZQLV.min.js +6 -0
  43. package/dist/prod/vidply.ja-QTVU5C25.min.js +6 -0
  44. package/dist/vidply.esm.min.meta.json +34 -34
  45. package/package.json +1 -1
  46. package/src/controls/TranscriptManager.js +1 -1
  47. package/src/features/PlaylistManager.js +12 -12
  48. package/src/i18n/languages/de.js +9 -1
  49. package/src/i18n/languages/en.js +9 -1
  50. package/src/i18n/languages/es.js +9 -1
  51. package/src/i18n/languages/fr.js +9 -1
  52. package/src/i18n/languages/ja.js +9 -1
@@ -0,0 +1,6 @@
1
+ /*!
2
+ * Universal, Accessible Video Player
3
+ * (c) 2025 Matthias Peltzer
4
+ * Released under GPL-2.0-or-later License
5
+ */
6
+ var e={player:{label:"Lecteur vidéo",play:"Lecture",pause:"Pause",stop:"Arrêt",restart:"Redémarrer du début",rewind:"Reculer",forward:"Avancer",rewindSeconds:"Reculer de {seconds} secondes",forwardSeconds:"Avancer de {seconds} secondes",previous:"Piste précédente",next:"Piste suivante",playlist:"Basculer la liste de lecture",volume:"Volume",mute:"Muet",unmute:"Activer le son",fullscreen:"Plein écran",exitFullscreen:"Quitter le plein écran",captions:"Sous-titres",chapters:"Chapitres",quality:"Qualité",captionStyling:"Style des sous-titres",transcript:"Activer/désactiver la transcription",audioDescription:"Audiodescription",signLanguage:"Vidéo en langue des signes",settings:"Paramètres",speed:"Vitesse de lecture",pip:"Image dans l'image",currentTime:"Temps actuel",duration:"Durée",progress:"Progression",seekForward:"Avancer de {seconds} secondes",seekBackward:"Reculer de {seconds} secondes",volumeUp:"Augmenter le volume",volumeDown:"Diminuer le volume",loading:"Chargement...",loadingChapters:"Chargement des chapitres...",error:"Erreur de chargement",buffering:"Mise en mémoire tampon...",signLanguageVideo:"Vidéo en Langue des Signes",closeSignLanguage:"Fermer la vidéo en langue des signes",signLanguageSettings:"Paramètres de la langue des signes",noChapters:"Aucun chapitre disponible",noCaptions:"Aucun sous-titre disponible",auto:"Automatique",autoQuality:"Automatique (sélection de qualité non disponible)",noQuality:"Sélection de qualité non disponible",signLanguageDragResize:"Vidéo en Langue des Signes - Appuyez sur D pour déplacer avec le clavier, R pour redimensionner",signLanguageDragActive:"Vidéo en Langue des Signes - Mode glissement actif. Utilisez les touches fléchées pour déplacer, Échap pour quitter.",signLanguageResizeActive:"Vidéo en Langue des Signes - Mode redimensionnement actif. Utilisez les touches fléchées gauche/droite pour redimensionner, Échap pour quitter.",enableSignDragMode:"Activer le mode glissement. Raccourci : touche D",disableSignDragMode:"Désactiver le mode glissement. Raccourci : touche D",enableSignDragModeAria:"Activer le mode glissement clavier avec les touches fléchées. Raccourci : touche D",disableSignDragModeAria:"Désactiver le mode glissement clavier avec les touches fléchées. Raccourci : touche D",enableSignResizeMode:"Activer le mode redimensionnement. Raccourci : touche R",disableSignResizeMode:"Désactiver le mode redimensionnement. Raccourci : touche R",enableSignResizeModeAria:"Activer le mode redimensionnement clavier avec les touches fléchées. Raccourci : touche R",disableSignResizeModeAria:"Désactiver le mode redimensionnement clavier avec les touches fléchées. Raccourci : touche R",resizeHandle:"Redimensionner coin {direction}",moreOptions:"Plus d'options",noMoreOptions:"Aucune option supplémentaire disponible"},captions:{off:"Désactivé",select:"Sélectionner les sous-titres",fontSize:"Taille de police",fontFamily:"Police",color:"Couleur du texte",backgroundColor:"Couleur de fond",opacity:"Opacité"},fontSizes:{small:"Petit",normal:"Normal",large:"Grand",xlarge:"Très grand"},fontFamilies:{sansSerif:"Sans-serif",serif:"Serif",monospace:"Monospace"},styleLabels:{textColor:"Couleur du texte",background:"Arrière-plan",font:"Police",fontSize:"Taille de police",opacity:"Opacité"},audioDescription:{enable:"Activer l'audiodescription",disable:"Désactiver l'audiodescription"},signLanguage:{show:"Afficher la vidéo en langue des signes",hide:"Masquer la vidéo en langue des signes"},transcript:{title:"Transcription",close:"Fermer la transcription",loading:"Chargement de la transcription...",noTranscript:"Aucune transcription disponible pour cette vidéo.",settings:"Paramètres de transcription. Appuyez sur Entrée pour ouvrir le menu ou D pour activer le mode glissement",keyboardDragMode:"Basculer le mode glissement avec les touches fléchées. Raccourci: touche D",keyboardDragActive:"⌨️ Mode Glissement Clavier Actif (Touches fléchées pour déplacer, Maj+Fléchées pour grands pas, D ou Échap pour quitter)",dragResizePrompt:"Appuyez sur D pour déplacer ou R pour redimensionner. Home réinitialise la position, Échap ferme.",dragModeEnabled:"Mode glissement clavier activé. Utilisez les flèches pour déplacer, Maj+Flèches pour de grands pas. Appuyez sur D ou Échap pour quitter.",dragModeDisabled:"Mode glissement clavier désactivé.",enableDragMode:"Activer le mode glissement. Raccourci : touche D",disableDragMode:"Désactiver le mode glissement. Raccourci : touche D",enableDragModeAria:"Activer le mode glissement clavier avec les touches fléchées. Raccourci : touche D",disableDragModeAria:"Désactiver le mode glissement clavier avec les touches fléchées. Raccourci : touche D",resizeWindow:"Redimensionner la fenêtre",disableResizeWindow:"Désactiver le mode de redimensionnement",enableResizeMode:"Activer le mode redimensionnement. Raccourci : touche R",disableResizeMode:"Désactiver le mode redimensionnement. Raccourci : touche R",enableResizeModeAria:"Activer le mode redimensionnement clavier avec les touches fléchées. Raccourci : touche R",disableResizeModeAria:"Désactiver le mode redimensionnement clavier avec les touches fléchées. Raccourci : touche R",resizeModeHint:"Poignées activées. Faites glisser les bords ou les coins pour ajuster. Appuyez sur Échap ou R pour quitter.",resizeModeEnabled:"Mode redimensionnement activé. Faites glisser les bords ou coins. Appuyez sur Échap ou R pour quitter.",resizeModeDisabled:"Mode redimensionnement désactivé.",positionReset:"Position de la transcription réinitialisée.",styleTranscript:"Ouvrir les paramètres de style de transcription",closeMenu:"Fermer le menu",styleTitle:"Style de Transcription",autoscroll:"Défilement automatique",settingsMenu:"Paramètres de dialogue de transcription",showTimestamps:"Afficher les horodatages",hideTimestamps:"Masquer les horodatages",showTimestampsAria:"Afficher les horodatages dans la transcription",hideTimestampsAria:"Masquer les horodatages dans la transcription"},settings:{title:"Paramètres",quality:"Qualité",speed:"Vitesse",captions:"Sous-titres",language:"Langue",reset:"Réinitialiser",close:"Fermer"},speeds:{normal:"Normal"},time:{display:"Affichage du temps",durationPrefix:"Durée : ",of:"sur",hour:"{count} heure",hours:"{count} heures",minute:"{count} minute",minutes:"{count} minutes",second:"{count} seconde",seconds:"{count} secondes"},playlist:{title:"Liste de lecture",trackOf:"Piste {current} sur {total}",nowPlaying:"Lecture en cours : Piste {current} sur {total}. {title}{artist}",by:" par ",untitled:"Sans titre",trackUntitled:"Piste {number}",currentlyPlaying:"En cours de lecture",notPlaying:"Non en lecture",pressEnterPlay:"Appuyez sur Entrée pour lire",pressEnterRestart:"Appuyez sur Entrée pour recommencer",keyboardInstructions:"Navigation de la liste de lecture : Utilisez les touches fléchées haut et bas pour naviguer entre les pistes. Appuyez sur Page précédente ou Page suivante pour sauter 5 pistes. Appuyez sur Début pour aller à la première piste, Fin pour la dernière piste. Appuyez sur Entrée ou Espace pour lire la piste sélectionnée."}};export{e as fr};
@@ -0,0 +1,6 @@
1
+ /*!
2
+ * Universal, Accessible Video Player
3
+ * (c) 2025 Matthias Peltzer
4
+ * Released under GPL-2.0-or-later License
5
+ */
6
+ var e={player:{label:"Lecteur vidéo",play:"Lecture",pause:"Pause",stop:"Arrêt",restart:"Redémarrer du début",rewind:"Reculer",forward:"Avancer",rewindSeconds:"Reculer de {seconds} secondes",forwardSeconds:"Avancer de {seconds} secondes",previous:"Piste précédente",next:"Piste suivante",playlist:"Basculer la liste de lecture",volume:"Volume",mute:"Muet",unmute:"Activer le son",fullscreen:"Plein écran",exitFullscreen:"Quitter le plein écran",captions:"Sous-titres",chapters:"Chapitres",quality:"Qualité",captionStyling:"Style des sous-titres",transcript:"Activer/désactiver la transcription",audioDescription:"Audiodescription",signLanguage:"Vidéo en langue des signes",settings:"Paramètres",speed:"Vitesse de lecture",pip:"Image dans l'image",currentTime:"Temps actuel",duration:"Durée",progress:"Progression",seekForward:"Avancer de {seconds} secondes",seekBackward:"Reculer de {seconds} secondes",volumeUp:"Augmenter le volume",volumeDown:"Diminuer le volume",loading:"Chargement...",loadingChapters:"Chargement des chapitres...",error:"Erreur de chargement",buffering:"Mise en mémoire tampon...",signLanguageVideo:"Vidéo en Langue des Signes",closeSignLanguage:"Fermer la vidéo en langue des signes",signLanguageSettings:"Paramètres de la langue des signes",noChapters:"Aucun chapitre disponible",noCaptions:"Aucun sous-titre disponible",auto:"Automatique",autoQuality:"Automatique (sélection de qualité non disponible)",noQuality:"Sélection de qualité non disponible",signLanguageDragResize:"Vidéo en Langue des Signes - Appuyez sur D pour déplacer avec le clavier, R pour redimensionner",signLanguageDragActive:"Vidéo en Langue des Signes - Mode glissement actif. Utilisez les touches fléchées pour déplacer, Échap pour quitter.",signLanguageResizeActive:"Vidéo en Langue des Signes - Mode redimensionnement actif. Utilisez les touches fléchées gauche/droite pour redimensionner, Échap pour quitter.",enableSignDragMode:"Activer le mode glissement. Raccourci : touche D",disableSignDragMode:"Désactiver le mode glissement. Raccourci : touche D",enableSignDragModeAria:"Activer le mode glissement clavier avec les touches fléchées. Raccourci : touche D",disableSignDragModeAria:"Désactiver le mode glissement clavier avec les touches fléchées. Raccourci : touche D",enableSignResizeMode:"Activer le mode redimensionnement. Raccourci : touche R",disableSignResizeMode:"Désactiver le mode redimensionnement. Raccourci : touche R",enableSignResizeModeAria:"Activer le mode redimensionnement clavier avec les touches fléchées. Raccourci : touche R",disableSignResizeModeAria:"Désactiver le mode redimensionnement clavier avec les touches fléchées. Raccourci : touche R",resizeHandle:"Redimensionner coin {direction}",moreOptions:"Plus d'options",noMoreOptions:"Aucune option supplémentaire disponible"},captions:{off:"Désactivé",select:"Sélectionner les sous-titres",fontSize:"Taille de police",fontFamily:"Police",color:"Couleur du texte",backgroundColor:"Couleur de fond",opacity:"Opacité"},fontSizes:{small:"Petit",normal:"Normal",large:"Grand",xlarge:"Très grand"},fontFamilies:{sansSerif:"Sans-serif",serif:"Serif",monospace:"Monospace"},styleLabels:{textColor:"Couleur du texte",background:"Arrière-plan",font:"Police",fontSize:"Taille de police",opacity:"Opacité"},audioDescription:{enable:"Activer l'audiodescription",disable:"Désactiver l'audiodescription"},signLanguage:{show:"Afficher la vidéo en langue des signes",hide:"Masquer la vidéo en langue des signes"},transcript:{title:"Transcription",ariaLabel:"Transcription vidéo",close:"Fermer la transcription",loading:"Chargement de la transcription...",noTranscript:"Aucune transcription disponible pour cette vidéo.",settings:"Paramètres de transcription. Appuyez sur Entrée pour ouvrir le menu ou D pour activer le mode glissement",keyboardDragMode:"Basculer le mode glissement avec les touches fléchées. Raccourci: touche D",keyboardDragActive:"⌨️ Mode Glissement Clavier Actif (Touches fléchées pour déplacer, Maj+Fléchées pour grands pas, D ou Échap pour quitter)",dragResizePrompt:"Appuyez sur D pour déplacer ou R pour redimensionner. Home réinitialise la position, Échap ferme.",dragModeEnabled:"Mode glissement clavier activé. Utilisez les flèches pour déplacer, Maj+Flèches pour de grands pas. Appuyez sur D ou Échap pour quitter.",dragModeDisabled:"Mode glissement clavier désactivé.",enableDragMode:"Activer le mode glissement. Raccourci : touche D",disableDragMode:"Désactiver le mode glissement. Raccourci : touche D",enableDragModeAria:"Activer le mode glissement clavier avec les touches fléchées. Raccourci : touche D",disableDragModeAria:"Désactiver le mode glissement clavier avec les touches fléchées. Raccourci : touche D",resizeWindow:"Redimensionner la fenêtre",disableResizeWindow:"Désactiver le mode de redimensionnement",enableResizeMode:"Activer le mode redimensionnement. Raccourci : touche R",disableResizeMode:"Désactiver le mode redimensionnement. Raccourci : touche R",enableResizeModeAria:"Activer le mode redimensionnement clavier avec les touches fléchées. Raccourci : touche R",disableResizeModeAria:"Désactiver le mode redimensionnement clavier avec les touches fléchées. Raccourci : touche R",resizeModeHint:"Poignées activées. Faites glisser les bords ou les coins pour ajuster. Appuyez sur Échap ou R pour quitter.",resizeModeEnabled:"Mode redimensionnement activé. Faites glisser les bords ou coins. Appuyez sur Échap ou R pour quitter.",resizeModeDisabled:"Mode redimensionnement désactivé.",positionReset:"Position de la transcription réinitialisée.",styleTranscript:"Ouvrir les paramètres de style de transcription",closeMenu:"Fermer le menu",styleTitle:"Style de Transcription",autoscroll:"Défilement automatique",settingsMenu:"Paramètres de dialogue de transcription",showTimestamps:"Afficher les horodatages",hideTimestamps:"Masquer les horodatages",showTimestampsAria:"Afficher les horodatages dans la transcription",hideTimestampsAria:"Masquer les horodatages dans la transcription"},settings:{title:"Paramètres",quality:"Qualité",speed:"Vitesse",captions:"Sous-titres",language:"Langue",reset:"Réinitialiser",close:"Fermer"},speeds:{normal:"Normal"},time:{display:"Affichage du temps",durationPrefix:"Durée : ",of:"sur",hour:"{count} heure",hours:"{count} heures",minute:"{count} minute",minutes:"{count} minutes",second:"{count} seconde",seconds:"{count} secondes"},playlist:{title:"Liste de lecture",trackOf:"Piste {current} sur {total}",nowPlaying:"Lecture en cours : Piste {current} sur {total}. {title}{artist}",by:" par ",untitled:"Sans titre",trackUntitled:"Piste {number}",currentlyPlaying:"En cours de lecture",notPlaying:"Non en lecture",pressEnterPlay:"Appuyez sur Entrée pour lire",pressEnterRestart:"Appuyez sur Entrée pour recommencer",keyboardInstructions:"Navigation de la liste de lecture : Utilisez les touches fléchées haut et bas pour naviguer entre les pistes. Appuyez sur Page précédente ou Page suivante pour sauter 5 pistes. Appuyez sur Début pour aller à la première piste, Fin pour la dernière piste. Appuyez sur Entrée ou Espace pour lire la piste sélectionnée.",endOfPlaylist:"Fin de la liste de lecture. {current} sur {total}.",beginningOfPlaylist:"Début de la liste de lecture. 1 sur {total}.",jumpedToLastTrack:"Sauté à la dernière piste. {current} sur {total}.",jumpedToFirstTrack:"Sauté à la première piste. 1 sur {total}.",firstTrack:"Première piste. 1 sur {total}.",lastTrack:"Dernière piste. {current} sur {total}."}};export{e as fr};
@@ -0,0 +1,6 @@
1
+ /*!
2
+ * Universal, Accessible Video Player
3
+ * (c) 2025 Matthias Peltzer
4
+ * Released under GPL-2.0-or-later License
5
+ */
6
+ var e={player:{label:"ビデオプレーヤー",play:"再生",pause:"一時停止",stop:"停止",restart:"最初から再生",rewind:"巻き戻し",forward:"早送り",rewindSeconds:"{seconds}秒戻す",forwardSeconds:"{seconds}秒進める",previous:"前のトラック",next:"次のトラック",playlist:"プレイリストの切り替え",volume:"音量",mute:"ミュート",unmute:"ミュート解除",fullscreen:"全画面表示",exitFullscreen:"全画面表示を終了",captions:"字幕",chapters:"チャプター",quality:"画質",captionStyling:"字幕スタイル",transcript:"文字起こし切り替え",audioDescription:"音声解説",signLanguage:"手話動画",settings:"設定",speed:"再生速度",pip:"ピクチャーインピクチャー",currentTime:"現在の時間",duration:"再生時間",progress:"進行状況",seekForward:"{seconds}秒進める",seekBackward:"{seconds}秒戻す",volumeUp:"音量を上げる",volumeDown:"音量を下げる",loading:"読み込み中...",loadingChapters:"チャプター読み込み中...",error:"読み込みエラー",buffering:"バッファリング中...",signLanguageVideo:"手話動画",closeSignLanguage:"手話動画を閉じる",signLanguageSettings:"手話設定",noChapters:"チャプターがありません",noCaptions:"字幕がありません",auto:"自動",autoQuality:"自動(画質選択不可)",noQuality:"画質選択不可",signLanguageDragResize:"手話動画 - キーボードでドラッグするにはDキーを、サイズ変更するにはRキーを押してください",signLanguageDragActive:"手話動画 - ドラッグモードが有効です。矢印キーで移動、Escapeで終了します。",signLanguageResizeActive:"手話動画 - サイズ変更モードが有効です。左右の矢印キーでサイズ変更、Escapeで終了します。",enableSignDragMode:"ドラッグモードを有効にする。ショートカット:Dキー",disableSignDragMode:"ドラッグモードを無効にする。ショートカット:Dキー",enableSignDragModeAria:"矢印キーでキーボードドラッグモードを有効にする。ショートカット:Dキー",disableSignDragModeAria:"矢印キーでキーボードドラッグモードを無効にする。ショートカット:Dキー",enableSignResizeMode:"サイズ変更モードを有効にする。ショートカット:Rキー",disableSignResizeMode:"サイズ変更モードを無効にする。ショートカット:Rキー",enableSignResizeModeAria:"矢印キーでキーボードサイズ変更モードを有効にする。ショートカット:Rキー",disableSignResizeModeAria:"矢印キーでキーボードサイズ変更モードを無効にする。ショートカット:Rキー",resizeHandle:"{direction}コーナーのサイズ変更",moreOptions:"その他のオプション",noMoreOptions:"追加のオプションはありません"},captions:{off:"オフ",select:"字幕を選択",fontSize:"フォントサイズ",fontFamily:"フォント",color:"テキストの色",backgroundColor:"背景色",opacity:"不透明度"},fontSizes:{small:"小",normal:"標準",large:"大",xlarge:"特大"},fontFamilies:{sansSerif:"サンセリフ",serif:"セリフ",monospace:"等幅"},styleLabels:{textColor:"テキストの色",background:"背景",font:"フォント",fontSize:"フォントサイズ",opacity:"不透明度"},audioDescription:{enable:"音声解説を有効にする",disable:"音声解説を無効にする"},signLanguage:{show:"手話動画を表示",hide:"手話動画を非表示"},transcript:{title:"文字起こし",ariaLabel:"ビデオ文字起こし",close:"文字起こしを閉じる",loading:"文字起こしを読み込み中...",noTranscript:"このビデオの文字起こしはありません。",settings:"文字起こし設定。Enterキーでメニューを開く、またはDキーでドラッグモードを有効にする",keyboardDragMode:"矢印キーでキーボードドラッグモードを切り替え。ショートカット:Dキー",keyboardDragActive:"⌨️ キーボードドラッグモード有効(矢印キーで移動、Shift+矢印キーで大きく移動、DまたはESCで終了)",dragResizePrompt:"Dキーで移動、Rキーでサイズ変更。Homeで位置をリセット、Escで閉じます。",dragModeEnabled:"キーボードドラッグモードを有効にしました。矢印キーで移動、Shift+矢印キーで大きく移動できます。終了するには D または Esc を押します。",dragModeDisabled:"キーボードドラッグモードを無効にしました。",enableDragMode:"ドラッグモードを有効にする。ショートカット:Dキー",disableDragMode:"ドラッグモードを無効にする。ショートカット:Dキー",enableDragModeAria:"矢印キーでキーボードドラッグモードを有効にする。ショートカット:Dキー",disableDragModeAria:"矢印キーでキーボードドラッグモードを無効にする。ショートカット:Dキー",resizeWindow:"ウィンドウのサイズ変更",disableResizeWindow:"サイズ変更モードを無効にする",enableResizeMode:"サイズ変更モードを有効にする。ショートカット:Rキー",disableResizeMode:"サイズ変更モードを無効にする。ショートカット:Rキー",enableResizeModeAria:"矢印キーでキーボードサイズ変更モードを有効にする。ショートカット:Rキー",disableResizeModeAria:"矢印キーでキーボードサイズ変更モードを無効にする。ショートカット:Rキー",resizeModeHint:"リサイズハンドルが有効になりました。辺や角をドラッグして調整します。Esc または R で終了します。",resizeModeEnabled:"サイズ変更モードを有効にしました。辺や角をドラッグして調整します。Esc または R で終了します。",resizeModeDisabled:"サイズ変更モードを無効にしました。",positionReset:"文字起こしの位置をリセットしました。",styleTranscript:"文字起こしスタイル設定を開く",closeMenu:"メニューを閉じる",styleTitle:"文字起こしスタイル",autoscroll:"自動スクロール",settingsMenu:"文字起こしダイアログ設定",showTimestamps:"タイムスタンプを表示",hideTimestamps:"タイムスタンプを非表示",showTimestampsAria:"文字起こしにタイムスタンプを表示",hideTimestampsAria:"文字起こしのタイムスタンプを非表示"},settings:{title:"設定",quality:"画質",speed:"速度",captions:"字幕",language:"言語",reset:"リセット",close:"閉じる"},speeds:{normal:"通常"},time:{display:"時間表示",durationPrefix:"再生時間: ",of:"/",hour:"{count}時間",hours:"{count}時間",minute:"{count}分",minutes:"{count}分",second:"{count}秒",seconds:"{count}秒"},playlist:{title:"プレイリスト",trackOf:"トラック {current}/{total}",nowPlaying:"再生中: トラック {current}/{total}. {title}{artist}",by:" - ",untitled:"タイトルなし",trackUntitled:"トラック {number}",currentlyPlaying:"再生中",notPlaying:"停止中",pressEnterPlay:"Enterキーで再生",pressEnterRestart:"Enterキーで最初から再生",keyboardInstructions:"プレイリストナビゲーション:上下の矢印キーでトラック間を移動します。Page UpまたはPage Downで5トラックをスキップします。Homeで最初のトラックへ、Endで最後のトラックへ移動します。EnterまたはSpaceで選択したトラックを再生します。",endOfPlaylist:"プレイリストの終わりです。{current}/{total}。",beginningOfPlaylist:"プレイリストの始めです。1/{total}。",jumpedToLastTrack:"最後のトラックにジャンプしました。{current}/{total}。",jumpedToFirstTrack:"最初のトラックにジャンプしました。1/{total}。",firstTrack:"最初のトラックです。1/{total}。",lastTrack:"最後のトラックです。{current}/{total}。"}};export{e as ja};
@@ -0,0 +1,6 @@
1
+ /*!
2
+ * Universal, Accessible Video Player
3
+ * (c) 2025 Matthias Peltzer
4
+ * Released under GPL-2.0-or-later License
5
+ */
6
+ var e={player:{label:"ビデオプレーヤー",play:"再生",pause:"一時停止",stop:"停止",restart:"最初から再生",rewind:"巻き戻し",forward:"早送り",rewindSeconds:"{seconds}秒戻す",forwardSeconds:"{seconds}秒進める",previous:"前のトラック",next:"次のトラック",playlist:"プレイリストの切り替え",volume:"音量",mute:"ミュート",unmute:"ミュート解除",fullscreen:"全画面表示",exitFullscreen:"全画面表示を終了",captions:"字幕",chapters:"チャプター",quality:"画質",captionStyling:"字幕スタイル",transcript:"文字起こし切り替え",audioDescription:"音声解説",signLanguage:"手話動画",settings:"設定",speed:"再生速度",pip:"ピクチャーインピクチャー",currentTime:"現在の時間",duration:"再生時間",progress:"進行状況",seekForward:"{seconds}秒進める",seekBackward:"{seconds}秒戻す",volumeUp:"音量を上げる",volumeDown:"音量を下げる",loading:"読み込み中...",loadingChapters:"チャプター読み込み中...",error:"読み込みエラー",buffering:"バッファリング中...",signLanguageVideo:"手話動画",closeSignLanguage:"手話動画を閉じる",signLanguageSettings:"手話設定",noChapters:"チャプターがありません",noCaptions:"字幕がありません",auto:"自動",autoQuality:"自動(画質選択不可)",noQuality:"画質選択不可",signLanguageDragResize:"手話動画 - キーボードでドラッグするにはDキーを、サイズ変更するにはRキーを押してください",signLanguageDragActive:"手話動画 - ドラッグモードが有効です。矢印キーで移動、Escapeで終了します。",signLanguageResizeActive:"手話動画 - サイズ変更モードが有効です。左右の矢印キーでサイズ変更、Escapeで終了します。",enableSignDragMode:"ドラッグモードを有効にする。ショートカット:Dキー",disableSignDragMode:"ドラッグモードを無効にする。ショートカット:Dキー",enableSignDragModeAria:"矢印キーでキーボードドラッグモードを有効にする。ショートカット:Dキー",disableSignDragModeAria:"矢印キーでキーボードドラッグモードを無効にする。ショートカット:Dキー",enableSignResizeMode:"サイズ変更モードを有効にする。ショートカット:Rキー",disableSignResizeMode:"サイズ変更モードを無効にする。ショートカット:Rキー",enableSignResizeModeAria:"矢印キーでキーボードサイズ変更モードを有効にする。ショートカット:Rキー",disableSignResizeModeAria:"矢印キーでキーボードサイズ変更モードを無効にする。ショートカット:Rキー",resizeHandle:"{direction}コーナーのサイズ変更",moreOptions:"その他のオプション",noMoreOptions:"追加のオプションはありません"},captions:{off:"オフ",select:"字幕を選択",fontSize:"フォントサイズ",fontFamily:"フォント",color:"テキストの色",backgroundColor:"背景色",opacity:"不透明度"},fontSizes:{small:"小",normal:"標準",large:"大",xlarge:"特大"},fontFamilies:{sansSerif:"サンセリフ",serif:"セリフ",monospace:"等幅"},styleLabels:{textColor:"テキストの色",background:"背景",font:"フォント",fontSize:"フォントサイズ",opacity:"不透明度"},audioDescription:{enable:"音声解説を有効にする",disable:"音声解説を無効にする"},signLanguage:{show:"手話動画を表示",hide:"手話動画を非表示"},transcript:{title:"文字起こし",close:"文字起こしを閉じる",loading:"文字起こしを読み込み中...",noTranscript:"このビデオの文字起こしはありません。",settings:"文字起こし設定。Enterキーでメニューを開く、またはDキーでドラッグモードを有効にする",keyboardDragMode:"矢印キーでキーボードドラッグモードを切り替え。ショートカット:Dキー",keyboardDragActive:"⌨️ キーボードドラッグモード有効(矢印キーで移動、Shift+矢印キーで大きく移動、DまたはESCで終了)",dragResizePrompt:"Dキーで移動、Rキーでサイズ変更。Homeで位置をリセット、Escで閉じます。",dragModeEnabled:"キーボードドラッグモードを有効にしました。矢印キーで移動、Shift+矢印キーで大きく移動できます。終了するには D または Esc を押します。",dragModeDisabled:"キーボードドラッグモードを無効にしました。",enableDragMode:"ドラッグモードを有効にする。ショートカット:Dキー",disableDragMode:"ドラッグモードを無効にする。ショートカット:Dキー",enableDragModeAria:"矢印キーでキーボードドラッグモードを有効にする。ショートカット:Dキー",disableDragModeAria:"矢印キーでキーボードドラッグモードを無効にする。ショートカット:Dキー",resizeWindow:"ウィンドウのサイズ変更",disableResizeWindow:"サイズ変更モードを無効にする",enableResizeMode:"サイズ変更モードを有効にする。ショートカット:Rキー",disableResizeMode:"サイズ変更モードを無効にする。ショートカット:Rキー",enableResizeModeAria:"矢印キーでキーボードサイズ変更モードを有効にする。ショートカット:Rキー",disableResizeModeAria:"矢印キーでキーボードサイズ変更モードを無効にする。ショートカット:Rキー",resizeModeHint:"リサイズハンドルが有効になりました。辺や角をドラッグして調整します。Esc または R で終了します。",resizeModeEnabled:"サイズ変更モードを有効にしました。辺や角をドラッグして調整します。Esc または R で終了します。",resizeModeDisabled:"サイズ変更モードを無効にしました。",positionReset:"文字起こしの位置をリセットしました。",styleTranscript:"文字起こしスタイル設定を開く",closeMenu:"メニューを閉じる",styleTitle:"文字起こしスタイル",autoscroll:"自動スクロール",settingsMenu:"文字起こしダイアログ設定",showTimestamps:"タイムスタンプを表示",hideTimestamps:"タイムスタンプを非表示",showTimestampsAria:"文字起こしにタイムスタンプを表示",hideTimestampsAria:"文字起こしのタイムスタンプを非表示"},settings:{title:"設定",quality:"画質",speed:"速度",captions:"字幕",language:"言語",reset:"リセット",close:"閉じる"},speeds:{normal:"通常"},time:{display:"時間表示",durationPrefix:"再生時間: ",of:"/",hour:"{count}時間",hours:"{count}時間",minute:"{count}分",minutes:"{count}分",second:"{count}秒",seconds:"{count}秒"},playlist:{title:"プレイリスト",trackOf:"トラック {current}/{total}",nowPlaying:"再生中: トラック {current}/{total}. {title}{artist}",by:" - ",untitled:"タイトルなし",trackUntitled:"トラック {number}",currentlyPlaying:"再生中",notPlaying:"停止中",pressEnterPlay:"Enterキーで再生",pressEnterRestart:"Enterキーで最初から再生",keyboardInstructions:"プレイリストナビゲーション:上下の矢印キーでトラック間を移動します。Page UpまたはPage Downで5トラックをスキップします。Homeで最初のトラックへ、Endで最後のトラックへ移動します。EnterまたはSpaceで選択したトラックを再生します。"}};export{e as ja};
@@ -11,27 +11,27 @@
11
11
  "format": "esm"
12
12
  },
13
13
  "src/i18n/languages/en.js": {
14
- "bytes": 6736,
14
+ "bytes": 7390,
15
15
  "imports": [],
16
16
  "format": "esm"
17
17
  },
18
18
  "src/i18n/languages/de.js": {
19
- "bytes": 8264,
19
+ "bytes": 9108,
20
20
  "imports": [],
21
21
  "format": "esm"
22
22
  },
23
23
  "src/i18n/languages/es.js": {
24
- "bytes": 7812,
24
+ "bytes": 8594,
25
25
  "imports": [],
26
26
  "format": "esm"
27
27
  },
28
28
  "src/i18n/languages/fr.js": {
29
- "bytes": 8025,
29
+ "bytes": 8836,
30
30
  "imports": [],
31
31
  "format": "esm"
32
32
  },
33
33
  "src/i18n/languages/ja.js": {
34
- "bytes": 8422,
34
+ "bytes": 9301,
35
35
  "imports": [],
36
36
  "format": "esm"
37
37
  },
@@ -223,7 +223,7 @@
223
223
  "format": "esm"
224
224
  },
225
225
  "src/controls/TranscriptManager.js": {
226
- "bytes": 80185,
226
+ "bytes": 80197,
227
227
  "imports": [
228
228
  {
229
229
  "path": "src/utils/DOMUtils.js",
@@ -396,7 +396,7 @@
396
396
  "format": "esm"
397
397
  },
398
398
  "src/features/PlaylistManager.js": {
399
- "bytes": 48513,
399
+ "bytes": 48411,
400
400
  "imports": [
401
401
  {
402
402
  "path": "src/utils/DOMUtils.js",
@@ -491,11 +491,11 @@
491
491
  "kind": "import-statement"
492
492
  },
493
493
  {
494
- "path": "dist/prod/vidply.chunk-MBUR3U5L.min.js",
494
+ "path": "dist/prod/vidply.chunk-5DWTMWEO.min.js",
495
495
  "kind": "import-statement"
496
496
  },
497
497
  {
498
- "path": "dist/prod/vidply.TranscriptManager-UZ6DUFB6.min.js",
498
+ "path": "dist/prod/vidply.TranscriptManager-DZ2WZU3K.min.js",
499
499
  "kind": "dynamic-import"
500
500
  },
501
501
  {
@@ -541,15 +541,15 @@
541
541
  "bytesInOutput": 78433
542
542
  },
543
543
  "src/features/PlaylistManager.js": {
544
- "bytesInOutput": 21453
544
+ "bytesInOutput": 21344
545
545
  },
546
546
  "src/index.js": {
547
547
  "bytesInOutput": 1869
548
548
  }
549
549
  },
550
- "bytes": 170918
550
+ "bytes": 170809
551
551
  },
552
- "dist/prod/vidply.de-SWFW4HYT.min.js": {
552
+ "dist/prod/vidply.de-FR3XX54P.min.js": {
553
553
  "imports": [],
554
554
  "exports": [
555
555
  "de"
@@ -557,12 +557,12 @@
557
557
  "entryPoint": "src/i18n/languages/de.js",
558
558
  "inputs": {
559
559
  "src/i18n/languages/de.js": {
560
- "bytesInOutput": 6470
560
+ "bytesInOutput": 7226
561
561
  }
562
562
  },
563
- "bytes": 6605
563
+ "bytes": 7361
564
564
  },
565
- "dist/prod/vidply.es-7BJ2DJAY.min.js": {
565
+ "dist/prod/vidply.es-3IJCQLJ7.min.js": {
566
566
  "imports": [],
567
567
  "exports": [
568
568
  "es"
@@ -570,12 +570,12 @@
570
570
  "entryPoint": "src/i18n/languages/es.js",
571
571
  "inputs": {
572
572
  "src/i18n/languages/es.js": {
573
- "bytesInOutput": 6637
573
+ "bytesInOutput": 7363
574
574
  }
575
575
  },
576
- "bytes": 6772
576
+ "bytes": 7498
577
577
  },
578
- "dist/prod/vidply.fr-DPVR5DFY.min.js": {
578
+ "dist/prod/vidply.fr-NC4VEAPH.min.js": {
579
579
  "imports": [],
580
580
  "exports": [
581
581
  "fr"
@@ -583,12 +583,12 @@
583
583
  "entryPoint": "src/i18n/languages/fr.js",
584
584
  "inputs": {
585
585
  "src/i18n/languages/fr.js": {
586
- "bytesInOutput": 6847
586
+ "bytesInOutput": 7602
587
587
  }
588
588
  },
589
- "bytes": 6982
589
+ "bytes": 7737
590
590
  },
591
- "dist/prod/vidply.ja-PEBVWKVH.min.js": {
591
+ "dist/prod/vidply.ja-4ZC6ZQLV.min.js": {
592
592
  "imports": [],
593
593
  "exports": [
594
594
  "ja"
@@ -596,10 +596,10 @@
596
596
  "entryPoint": "src/i18n/languages/ja.js",
597
597
  "inputs": {
598
598
  "src/i18n/languages/ja.js": {
599
- "bytesInOutput": 7246
599
+ "bytesInOutput": 8069
600
600
  }
601
601
  },
602
- "bytes": 7381
602
+ "bytes": 8204
603
603
  },
604
604
  "dist/prod/vidply.HTML5Renderer-MY7XDV7R.min.js": {
605
605
  "imports": [
@@ -627,10 +627,10 @@
627
627
  },
628
628
  "bytes": 4973
629
629
  },
630
- "dist/prod/vidply.TranscriptManager-UZ6DUFB6.min.js": {
630
+ "dist/prod/vidply.TranscriptManager-DZ2WZU3K.min.js": {
631
631
  "imports": [
632
632
  {
633
- "path": "dist/prod/vidply.chunk-MBUR3U5L.min.js",
633
+ "path": "dist/prod/vidply.chunk-5DWTMWEO.min.js",
634
634
  "kind": "import-statement"
635
635
  }
636
636
  ],
@@ -640,27 +640,27 @@
640
640
  "entryPoint": "src/controls/TranscriptManager.js",
641
641
  "inputs": {
642
642
  "src/controls/TranscriptManager.js": {
643
- "bytesInOutput": 42852
643
+ "bytesInOutput": 42861
644
644
  }
645
645
  },
646
- "bytes": 43123
646
+ "bytes": 43132
647
647
  },
648
- "dist/prod/vidply.chunk-MBUR3U5L.min.js": {
648
+ "dist/prod/vidply.chunk-5DWTMWEO.min.js": {
649
649
  "imports": [
650
650
  {
651
- "path": "dist/prod/vidply.de-SWFW4HYT.min.js",
651
+ "path": "dist/prod/vidply.de-FR3XX54P.min.js",
652
652
  "kind": "dynamic-import"
653
653
  },
654
654
  {
655
- "path": "dist/prod/vidply.es-7BJ2DJAY.min.js",
655
+ "path": "dist/prod/vidply.es-3IJCQLJ7.min.js",
656
656
  "kind": "dynamic-import"
657
657
  },
658
658
  {
659
- "path": "dist/prod/vidply.fr-DPVR5DFY.min.js",
659
+ "path": "dist/prod/vidply.fr-NC4VEAPH.min.js",
660
660
  "kind": "dynamic-import"
661
661
  },
662
662
  {
663
- "path": "dist/prod/vidply.ja-PEBVWKVH.min.js",
663
+ "path": "dist/prod/vidply.ja-4ZC6ZQLV.min.js",
664
664
  "kind": "dynamic-import"
665
665
  }
666
666
  ],
@@ -685,7 +685,7 @@
685
685
  "bytesInOutput": 2244
686
686
  },
687
687
  "src/i18n/languages/en.js": {
688
- "bytesInOutput": 5561
688
+ "bytesInOutput": 6159
689
689
  },
690
690
  "src/i18n/translations.js": {
691
691
  "bytesInOutput": 340
@@ -715,7 +715,7 @@
715
715
  "bytesInOutput": 776
716
716
  }
717
717
  },
718
- "bytes": 39549
718
+ "bytes": 40147
719
719
  },
720
720
  "dist/prod/vidply.YouTubeRenderer-MFC2GMAC.min.js": {
721
721
  "imports": [],
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "vidply",
3
- "version": "1.0.27",
3
+ "version": "1.0.28",
4
4
  "description": "Universal, accessible video & audio player with ES6 modules",
5
5
  "type": "module",
6
6
  "main": "dist/prod/vidply.esm.min.js",
@@ -214,7 +214,7 @@ export class TranscriptManager {
214
214
  className: `${this.player.options.classPrefix}-transcript-window`,
215
215
  attributes: {
216
216
  'role': 'dialog',
217
- 'aria-label': 'Video Transcript',
217
+ 'aria-label': i18n.t('transcript.ariaLabel'),
218
218
  'tabindex': '-1'
219
219
  }
220
220
  });
@@ -969,7 +969,7 @@ export class PlaylistManager {
969
969
  id: `${this.uniqueId}-keyboard-instructions`
970
970
  }
971
971
  });
972
- instructions.textContent = 'Playlist navigation: Use Up and Down arrow keys to move between tracks. Press Page Up or Page Down to skip 5 tracks. Press Home to go to first track, End to go to last track. Press Enter or Space to play the selected track.';
972
+ instructions.textContent = i18n.t('playlist.keyboardInstructions');
973
973
  this.playlistPanel.appendChild(instructions);
974
974
 
975
975
  // Create list (proper ul element)
@@ -1180,10 +1180,10 @@ export class PlaylistManager {
1180
1180
  newIndex = index + 1;
1181
1181
  } else {
1182
1182
  // At the end, announce boundary
1183
- announcement = `End of playlist. ${buttons.length} of ${buttons.length}.`;
1183
+ announcement = i18n.t('playlist.endOfPlaylist', { current: buttons.length, total: buttons.length });
1184
1184
  }
1185
1185
  break;
1186
-
1186
+
1187
1187
  case 'ArrowUp':
1188
1188
  e.preventDefault();
1189
1189
  e.stopPropagation();
@@ -1192,47 +1192,47 @@ export class PlaylistManager {
1192
1192
  newIndex = index - 1;
1193
1193
  } else {
1194
1194
  // At the beginning, announce boundary
1195
- announcement = 'Beginning of playlist. 1 of ' + buttons.length + '.';
1195
+ announcement = i18n.t('playlist.beginningOfPlaylist', { total: buttons.length });
1196
1196
  }
1197
1197
  break;
1198
-
1198
+
1199
1199
  case 'PageDown':
1200
1200
  e.preventDefault();
1201
1201
  e.stopPropagation();
1202
1202
  // Move 5 items down (or to end)
1203
1203
  newIndex = Math.min(index + 5, buttons.length - 1);
1204
1204
  if (newIndex === buttons.length - 1 && index !== newIndex) {
1205
- announcement = `Jumped to last track. ${newIndex + 1} of ${buttons.length}.`;
1205
+ announcement = i18n.t('playlist.jumpedToLastTrack', { current: newIndex + 1, total: buttons.length });
1206
1206
  }
1207
1207
  break;
1208
-
1208
+
1209
1209
  case 'PageUp':
1210
1210
  e.preventDefault();
1211
1211
  e.stopPropagation();
1212
1212
  // Move 5 items up (or to beginning)
1213
1213
  newIndex = Math.max(index - 5, 0);
1214
1214
  if (newIndex === 0 && index !== newIndex) {
1215
- announcement = `Jumped to first track. 1 of ${buttons.length}.`;
1215
+ announcement = i18n.t('playlist.jumpedToFirstTrack', { total: buttons.length });
1216
1216
  }
1217
1217
  break;
1218
-
1218
+
1219
1219
  case 'Home':
1220
1220
  e.preventDefault();
1221
1221
  e.stopPropagation();
1222
1222
  // Move to first item
1223
1223
  newIndex = 0;
1224
1224
  if (index !== 0) {
1225
- announcement = `First track. 1 of ${buttons.length}.`;
1225
+ announcement = i18n.t('playlist.firstTrack', { total: buttons.length });
1226
1226
  }
1227
1227
  break;
1228
-
1228
+
1229
1229
  case 'End':
1230
1230
  e.preventDefault();
1231
1231
  e.stopPropagation();
1232
1232
  // Move to last item
1233
1233
  newIndex = buttons.length - 1;
1234
1234
  if (index !== buttons.length - 1) {
1235
- announcement = `Last track. ${buttons.length} of ${buttons.length}.`;
1235
+ announcement = i18n.t('playlist.lastTrack', { current: buttons.length, total: buttons.length });
1236
1236
  }
1237
1237
  break;
1238
1238
  }
@@ -102,6 +102,7 @@ export const de = {
102
102
  },
103
103
  transcript: {
104
104
  title: 'Transkript',
105
+ ariaLabel: 'Video-Transkript',
105
106
  close: 'Transkript schließen',
106
107
  loading: 'Transkript wird geladen...',
107
108
  noTranscript: 'Kein Transkript für dieses Video verfügbar.',
@@ -168,7 +169,14 @@ export const de = {
168
169
  currentlyPlaying: 'Wird gerade abgespielt',
169
170
  notPlaying: 'Nicht aktiv',
170
171
  pressEnterPlay: 'Eingabetaste zum Abspielen',
171
- pressEnterRestart: 'Eingabetaste zum Neustart'
172
+ pressEnterRestart: 'Eingabetaste zum Neustart',
173
+ keyboardInstructions: 'Wiedergabelisten-Navigation: Verwenden Sie die Pfeiltasten nach oben und unten, um zwischen Titeln zu wechseln. Drücken Sie Bild auf oder Bild ab, um 5 Titel zu überspringen. Drücken Sie Pos1, um zum ersten Titel zu springen, Ende für den letzten Titel. Drücken Sie die Eingabetaste oder Leertaste, um den ausgewählten Titel abzuspielen.',
174
+ endOfPlaylist: 'Ende der Wiedergabeliste. {current} von {total}.',
175
+ beginningOfPlaylist: 'Anfang der Wiedergabeliste. 1 von {total}.',
176
+ jumpedToLastTrack: 'Zum letzten Titel gesprungen. {current} von {total}.',
177
+ jumpedToFirstTrack: 'Zum ersten Titel gesprungen. 1 von {total}.',
178
+ firstTrack: 'Erster Titel. 1 von {total}.',
179
+ lastTrack: 'Letzter Titel. {current} von {total}.'
172
180
  }
173
181
  };
174
182
 
@@ -102,6 +102,7 @@ export const en = {
102
102
  },
103
103
  transcript: {
104
104
  title: 'Transcript',
105
+ ariaLabel: 'Video Transcript',
105
106
  close: 'Close transcript',
106
107
  loading: 'Loading transcript...',
107
108
  noTranscript: 'No transcript available for this video.',
@@ -168,7 +169,14 @@ export const en = {
168
169
  currentlyPlaying: 'Currently playing',
169
170
  notPlaying: 'Not playing',
170
171
  pressEnterPlay: 'Press Enter to play',
171
- pressEnterRestart: 'Press Enter to restart'
172
+ pressEnterRestart: 'Press Enter to restart',
173
+ keyboardInstructions: 'Playlist navigation: Use Up and Down arrow keys to move between tracks. Press Page Up or Page Down to skip 5 tracks. Press Home to go to first track, End to go to last track. Press Enter or Space to play the selected track.',
174
+ endOfPlaylist: 'End of playlist. {current} of {total}.',
175
+ beginningOfPlaylist: 'Beginning of playlist. 1 of {total}.',
176
+ jumpedToLastTrack: 'Jumped to last track. {current} of {total}.',
177
+ jumpedToFirstTrack: 'Jumped to first track. 1 of {total}.',
178
+ firstTrack: 'First track. 1 of {total}.',
179
+ lastTrack: 'Last track. {current} of {total}.'
172
180
  }
173
181
  };
174
182
 
@@ -102,6 +102,7 @@ export const es = {
102
102
  },
103
103
  transcript: {
104
104
  title: 'Transcripción',
105
+ ariaLabel: 'Transcripción de video',
105
106
  close: 'Cerrar transcripción',
106
107
  loading: 'Cargando transcripción...',
107
108
  noTranscript: 'No hay transcripción disponible para este video.',
@@ -168,7 +169,14 @@ export const es = {
168
169
  currentlyPlaying: 'Reproduciendo actualmente',
169
170
  notPlaying: 'Sin reproducir',
170
171
  pressEnterPlay: 'Pulsa Enter para reproducir',
171
- pressEnterRestart: 'Pulsa Enter para reiniciar'
172
+ pressEnterRestart: 'Pulsa Enter para reiniciar',
173
+ keyboardInstructions: 'Navegación de lista de reproducción: Use las teclas de flecha arriba y abajo para moverse entre pistas. Pulse Retroceder página o Avanzar página para saltar 5 pistas. Pulse Inicio para ir a la primera pista, Fin para la última pista. Pulse Intro o Espacio para reproducir la pista seleccionada.',
174
+ endOfPlaylist: 'Fin de la lista de reproducción. {current} de {total}.',
175
+ beginningOfPlaylist: 'Inicio de la lista de reproducción. 1 de {total}.',
176
+ jumpedToLastTrack: 'Saltó a la última pista. {current} de {total}.',
177
+ jumpedToFirstTrack: 'Saltó a la primera pista. 1 de {total}.',
178
+ firstTrack: 'Primera pista. 1 de {total}.',
179
+ lastTrack: 'Última pista. {current} de {total}.'
172
180
  }
173
181
  };
174
182
 
@@ -102,6 +102,7 @@ export const fr = {
102
102
  },
103
103
  transcript: {
104
104
  title: 'Transcription',
105
+ ariaLabel: 'Transcription vidéo',
105
106
  close: 'Fermer la transcription',
106
107
  loading: 'Chargement de la transcription...',
107
108
  noTranscript: 'Aucune transcription disponible pour cette vidéo.',
@@ -168,7 +169,14 @@ export const fr = {
168
169
  currentlyPlaying: 'En cours de lecture',
169
170
  notPlaying: 'Non en lecture',
170
171
  pressEnterPlay: 'Appuyez sur Entrée pour lire',
171
- pressEnterRestart: 'Appuyez sur Entrée pour recommencer'
172
+ pressEnterRestart: 'Appuyez sur Entrée pour recommencer',
173
+ keyboardInstructions: 'Navigation de la liste de lecture : Utilisez les touches fléchées haut et bas pour naviguer entre les pistes. Appuyez sur Page précédente ou Page suivante pour sauter 5 pistes. Appuyez sur Début pour aller à la première piste, Fin pour la dernière piste. Appuyez sur Entrée ou Espace pour lire la piste sélectionnée.',
174
+ endOfPlaylist: 'Fin de la liste de lecture. {current} sur {total}.',
175
+ beginningOfPlaylist: 'Début de la liste de lecture. 1 sur {total}.',
176
+ jumpedToLastTrack: 'Sauté à la dernière piste. {current} sur {total}.',
177
+ jumpedToFirstTrack: 'Sauté à la première piste. 1 sur {total}.',
178
+ firstTrack: 'Première piste. 1 sur {total}.',
179
+ lastTrack: 'Dernière piste. {current} sur {total}.'
172
180
  }
173
181
  };
174
182
 
@@ -102,6 +102,7 @@ export const ja = {
102
102
  },
103
103
  transcript: {
104
104
  title: '文字起こし',
105
+ ariaLabel: 'ビデオ文字起こし',
105
106
  close: '文字起こしを閉じる',
106
107
  loading: '文字起こしを読み込み中...',
107
108
  noTranscript: 'このビデオの文字起こしはありません。',
@@ -168,7 +169,14 @@ export const ja = {
168
169
  currentlyPlaying: '再生中',
169
170
  notPlaying: '停止中',
170
171
  pressEnterPlay: 'Enterキーで再生',
171
- pressEnterRestart: 'Enterキーで最初から再生'
172
+ pressEnterRestart: 'Enterキーで最初から再生',
173
+ keyboardInstructions: 'プレイリストナビゲーション:上下の矢印キーでトラック間を移動します。Page UpまたはPage Downで5トラックをスキップします。Homeで最初のトラックへ、Endで最後のトラックへ移動します。EnterまたはSpaceで選択したトラックを再生します。',
174
+ endOfPlaylist: 'プレイリストの終わりです。{current}/{total}。',
175
+ beginningOfPlaylist: 'プレイリストの始めです。1/{total}。',
176
+ jumpedToLastTrack: '最後のトラックにジャンプしました。{current}/{total}。',
177
+ jumpedToFirstTrack: '最初のトラックにジャンプしました。1/{total}。',
178
+ firstTrack: '最初のトラックです。1/{total}。',
179
+ lastTrack: '最後のトラックです。{current}/{total}。'
172
180
  }
173
181
  };
174
182