@videojs/html 10.0.0-beta.27 → 10.0.0-beta.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.
- package/cdn/audio-headless.dev.js +1 -1
- package/cdn/audio-headless.js +1 -1
- package/cdn/audio-minimal-ui.dev.js +1 -1
- package/cdn/audio-minimal-ui.js +1 -1
- package/cdn/audio-minimal.dev.js +4 -4
- package/cdn/audio-minimal.dev.js.map +1 -1
- package/cdn/audio-minimal.js +1 -1
- package/cdn/audio-minimal.js.map +1 -1
- package/cdn/audio-ui.dev.js +1 -1
- package/cdn/audio-ui.js +1 -1
- package/cdn/audio.dev.js +4 -4
- package/cdn/audio.dev.js.map +1 -1
- package/cdn/audio.js +1 -1
- package/cdn/audio.js.map +1 -1
- package/cdn/background-video-WKumpp49.js +59 -0
- package/cdn/background-video-WKumpp49.js.map +1 -0
- package/cdn/background-video-YHY_3-lX.js +2 -0
- package/cdn/background-video-YHY_3-lX.js.map +1 -0
- package/cdn/background.dev.js +3 -56
- package/cdn/background.dev.js.map +1 -1
- package/cdn/background.js +1 -1
- package/cdn/background.js.map +1 -1
- package/cdn/bn-CcLIScl6.js +108 -0
- package/cdn/bn-CcLIScl6.js.map +1 -0
- package/cdn/bn-KcCmQhYd.js +2 -0
- package/cdn/bn-KcCmQhYd.js.map +1 -0
- package/cdn/compounds-BEO1d3ZM.js +8 -0
- package/cdn/compounds-BEO1d3ZM.js.map +1 -0
- package/cdn/{compounds-CCvdpvge.js → compounds-nk9RJtBK.js} +8 -15
- package/cdn/compounds-nk9RJtBK.js.map +1 -0
- package/cdn/container-element-Dd0ZCdhK.js +14 -0
- package/cdn/container-element-Dd0ZCdhK.js.map +1 -0
- package/cdn/container-element-HHK_KZOE.js +376 -0
- package/cdn/container-element-HHK_KZOE.js.map +1 -0
- package/cdn/{create-player-BHFyOnWi.js → create-player-DK9WOywd.js} +19 -379
- package/cdn/create-player-DK9WOywd.js.map +1 -0
- package/cdn/create-player-hSdQMP5p.js +2 -0
- package/cdn/create-player-hSdQMP5p.js.map +1 -0
- package/cdn/embed-params-D2e8u0d4.js +2 -0
- package/cdn/embed-params-D2e8u0d4.js.map +1 -0
- package/cdn/embed-params-W6T88S8x.js +39 -0
- package/cdn/embed-params-W6T88S8x.js.map +1 -0
- package/cdn/{gesture-element-CG-Sx_5t.js → gesture-element-6Ld1YwIL.js} +3 -3
- package/cdn/{gesture-element-CG-Sx_5t.js.map → gesture-element-6Ld1YwIL.js.map} +1 -1
- package/cdn/gesture-element-BC48ucj9.js +2 -0
- package/cdn/{gesture-element-BNfMI8eh.js.map → gesture-element-BC48ucj9.js.map} +1 -1
- package/cdn/{hls-js-g1zdcyvE.js → hls-js-BEuVm0u9.js} +3 -2
- package/cdn/{hls-js-g1zdcyvE.js.map → hls-js-BEuVm0u9.js.map} +1 -1
- package/cdn/hls-js-C4P_b2tT.js +2 -0
- package/cdn/{hls-js-6lW7L4th.js.map → hls-js-C4P_b2tT.js.map} +1 -1
- package/cdn/hls-js-CATW7NBm.js +2 -0
- package/cdn/{hls-js-DCQzjzB5.js.map → hls-js-CATW7NBm.js.map} +1 -1
- package/cdn/{hls-js-Cwj8UBx9.js → hls-js-WCNy9MVh.js} +3 -2
- package/cdn/{hls-js-Cwj8UBx9.js.map → hls-js-WCNy9MVh.js.map} +1 -1
- package/cdn/i18n-CE4KxKuj.js +2 -0
- package/cdn/i18n-CE4KxKuj.js.map +1 -0
- package/cdn/{i18n-Mtlmj1AA.js → i18n-Ch4t6EjV.js} +2 -2
- package/cdn/{i18n-Mtlmj1AA.js.map → i18n-Ch4t6EjV.js.map} +1 -1
- package/cdn/i18n-Dc7WM2xd.js +2 -0
- package/cdn/{i18n-DfKGl5Rh.js.map → i18n-Dc7WM2xd.js.map} +1 -1
- package/cdn/i18n-DyF_NfCk.js +157 -0
- package/cdn/i18n-DyF_NfCk.js.map +1 -0
- package/cdn/i18n.dev.js +3 -152
- package/cdn/i18n.dev.js.map +1 -1
- package/cdn/i18n.js +1 -1
- package/cdn/i18n.js.map +1 -1
- package/cdn/{live-button-element-B_y-ZJBy.js → live-button-element-Bae44kBN.js} +5 -4
- package/cdn/live-button-element-Bae44kBN.js.map +1 -0
- package/cdn/live-button-element-DaHgnYdw.js +2 -0
- package/cdn/{live-button-element-CWfkQUoy.js.map → live-button-element-DaHgnYdw.js.map} +1 -1
- package/cdn/live-video-minimal.dev.js +8 -8
- package/cdn/live-video-minimal.dev.js.map +1 -1
- package/cdn/live-video-minimal.js +1 -1
- package/cdn/live-video-minimal.js.map +1 -1
- package/cdn/live-video.dev.js +9 -9
- package/cdn/live-video.dev.js.map +1 -1
- package/cdn/live-video.js +1 -1
- package/cdn/live-video.js.map +1 -1
- package/cdn/locales/bn.dev.js +1 -1
- package/cdn/locales/bn.js +1 -1
- package/cdn/media/background-video.dev.d.ts +1 -0
- package/cdn/media/background-video.dev.js +3 -0
- package/cdn/media/background-video.js +1 -0
- package/cdn/media/cloudflare-video.dev.d.ts +1 -0
- package/cdn/media/cloudflare-video.dev.js +668 -0
- package/cdn/media/cloudflare-video.dev.js.map +1 -0
- package/cdn/media/cloudflare-video.js +2 -0
- package/cdn/media/cloudflare-video.js.map +1 -0
- package/cdn/media/container.dev.d.ts +1 -0
- package/cdn/media/container.dev.js +8 -0
- package/cdn/media/container.dev.js.map +1 -0
- package/cdn/media/container.js +2 -0
- package/cdn/media/container.js.map +1 -0
- package/cdn/media/dash-video.dev.js +2 -1
- package/cdn/media/dash-video.js +2 -2
- package/cdn/media/dash-video.js.map +1 -1
- package/cdn/media/google-cast.dev.js +2 -31
- package/cdn/media/google-cast.dev.js.map +1 -1
- package/cdn/media/google-cast.js +3 -3
- package/cdn/media/google-cast.js.map +1 -1
- package/cdn/media/hls-audio.dev.js +1 -0
- package/cdn/media/hls-audio.js +1 -1
- package/cdn/media/hls-audio.js.map +1 -1
- package/cdn/media/hls-background-video.dev.js +2 -1
- package/cdn/media/hls-background-video.js +1 -1
- package/cdn/media/hls-background-video.js.map +1 -1
- package/cdn/media/hls-video.dev.js +2 -1
- package/cdn/media/hls-video.js +1 -1
- package/cdn/media/hls-video.js.map +1 -1
- package/cdn/media/hlsjs-video.dev.js +2 -1
- package/cdn/media/hlsjs-video.js +1 -1
- package/cdn/media/hlsjs-video.js.map +1 -1
- package/cdn/media/mux-audio/hls-js.dev.js +3 -1
- package/cdn/media/mux-audio/hls-js.js +1 -1
- package/cdn/media/mux-audio/spf.dev.js +1 -0
- package/cdn/media/mux-audio/spf.js +1 -1
- package/cdn/media/mux-audio/spf.js.map +1 -1
- package/cdn/media/mux-audio.dev.js +3 -1
- package/cdn/media/mux-audio.js +1 -1
- package/cdn/media/mux-background-video.dev.js +2 -1
- package/cdn/media/mux-background-video.js +1 -1
- package/cdn/media/mux-background-video.js.map +1 -1
- package/cdn/media/mux-data.dev.js +2 -1
- package/cdn/media/mux-data.dev.js.map +1 -1
- package/cdn/media/mux-data.js +2 -2
- package/cdn/media/mux-data.js.map +1 -1
- package/cdn/media/mux-video/hls-js.dev.js +3 -1
- package/cdn/media/mux-video/hls-js.js +1 -1
- package/cdn/media/mux-video/spf.dev.js +2 -1
- package/cdn/media/mux-video/spf.js +1 -1
- package/cdn/media/mux-video/spf.js.map +1 -1
- package/cdn/media/mux-video.dev.js +3 -1
- package/cdn/media/mux-video.js +1 -1
- package/cdn/media/native-hls-video.dev.js +1 -0
- package/cdn/media/native-hls-video.js +1 -1
- package/cdn/media/native-hls-video.js.map +1 -1
- package/cdn/media/spotify-audio.dev.d.ts +1 -0
- package/cdn/media/spotify-audio.dev.js +605 -0
- package/cdn/media/spotify-audio.dev.js.map +1 -0
- package/cdn/media/spotify-audio.js +2 -0
- package/cdn/media/spotify-audio.js.map +1 -0
- package/cdn/media/tiktok-video.dev.d.ts +1 -0
- package/cdn/media/tiktok-video.dev.js +636 -0
- package/cdn/media/tiktok-video.dev.js.map +1 -0
- package/cdn/media/tiktok-video.js +2 -0
- package/cdn/media/tiktok-video.js.map +1 -0
- package/cdn/media/twitch-video.dev.d.ts +1 -0
- package/cdn/media/twitch-video.dev.js +627 -0
- package/cdn/media/twitch-video.dev.js.map +1 -0
- package/cdn/media/twitch-video.js +2 -0
- package/cdn/media/twitch-video.js.map +1 -0
- package/cdn/media/vimeo-video.dev.d.ts +1 -0
- package/cdn/media/vimeo-video.dev.js +2989 -0
- package/cdn/media/vimeo-video.dev.js.map +1 -0
- package/cdn/media/vimeo-video.js +16 -0
- package/cdn/media/vimeo-video.js.map +1 -0
- package/cdn/media/youtube-video.dev.d.ts +1 -0
- package/cdn/media/youtube-video.dev.js +713 -0
- package/cdn/media/youtube-video.dev.js.map +1 -0
- package/cdn/media/youtube-video.js +2 -0
- package/cdn/media/youtube-video.js.map +1 -0
- package/cdn/{media-Cp3acYc8.js → media-BavrGKqa.js} +274 -5
- package/cdn/media-BavrGKqa.js.map +1 -0
- package/cdn/media-Bmablv4g.js +2 -0
- package/cdn/media-Bmablv4g.js.map +1 -0
- package/cdn/{media-B_gQXwri.js → media-COIe3uI5.js} +12 -3
- package/cdn/media-COIe3uI5.js.map +1 -0
- package/cdn/{media-CbWsJJhU.js → media-CPVSKLdk.js} +2 -2
- package/cdn/{media-CbWsJJhU.js.map → media-CPVSKLdk.js.map} +1 -1
- package/cdn/media-CanBm0Jh.js +41 -0
- package/cdn/media-CanBm0Jh.js.map +1 -0
- package/cdn/{media-Dq4zmIJa2.js → media-Dq4zmIJa.js} +1 -1
- package/cdn/media-Dq4zmIJa.js.map +1 -0
- package/cdn/{media-DRo3n8tM.js → media-oa3nyL2o.js} +3 -3
- package/cdn/{media-DRo3n8tM.js.map → media-oa3nyL2o.js.map} +1 -1
- package/cdn/media-played-ranges-CM2zeOGr.js +2 -0
- package/cdn/media-played-ranges-CM2zeOGr.js.map +1 -0
- package/cdn/media-played-ranges-Yd9acuMt.js +156 -0
- package/cdn/media-played-ranges-Yd9acuMt.js.map +1 -0
- package/cdn/{media-suYcjCG22.js → media-suYcjCG2.js} +1 -1
- package/cdn/media-suYcjCG2.js.map +1 -0
- package/cdn/minimal-ui-8iRZf_72.js +2 -0
- package/cdn/{minimal-ui-AFk6Ut5f.js.map → minimal-ui-8iRZf_72.js.map} +1 -1
- package/cdn/{minimal-ui--JsmpU2q.js → minimal-ui-BpHxIo4z.js} +5 -5
- package/cdn/{minimal-ui--JsmpU2q.js.map → minimal-ui-BpHxIo4z.js.map} +1 -1
- package/cdn/{minimal-ui-Bxcpf5Mb.js → minimal-ui-CRKvUmB8.js} +9 -9
- package/cdn/{minimal-ui-Bxcpf5Mb.js.map → minimal-ui-CRKvUmB8.js.map} +1 -1
- package/cdn/minimal-ui-Et2Wcn7r.js +2 -0
- package/cdn/{minimal-ui-BVKu9LWj.js.map → minimal-ui-Et2Wcn7r.js.map} +1 -1
- package/cdn/mixin-BqN0V06a.js +2 -0
- package/cdn/{mixin-DiB7dIef.js.map → mixin-BqN0V06a.js.map} +1 -1
- package/cdn/{mixin-CkNZwQXF.js → mixin-C193v40v.js} +67 -67
- package/cdn/mixin-C193v40v.js.map +1 -0
- package/cdn/noop-BxkeRIz9.js +6 -0
- package/cdn/noop-BxkeRIz9.js.map +1 -0
- package/cdn/noop-Ch0IHcOP.js +2 -0
- package/cdn/noop-Ch0IHcOP.js.map +1 -0
- package/cdn/{player-D4fdOLLk.js → player-B2oraRyD.js} +3 -2
- package/cdn/{player-D4fdOLLk.js.map → player-B2oraRyD.js.map} +1 -1
- package/cdn/player-BRQLp5bX.js +2 -0
- package/cdn/{player-srq1RGTj.js.map → player-BRQLp5bX.js.map} +1 -1
- package/cdn/player-BloX4l6F.js +2 -0
- package/cdn/{player-iIewo8Y9.js.map → player-BloX4l6F.js.map} +1 -1
- package/cdn/{player-B0qnepD5.js → player-CKTAtwit.js} +3 -2
- package/cdn/{player-B0qnepD5.js.map → player-CKTAtwit.js.map} +1 -1
- package/cdn/{player-C4ix6TQq.js → player-DM9rUXg-.js} +3 -2
- package/cdn/{player-C4ix6TQq.js.map → player-DM9rUXg-.js.map} +1 -1
- package/cdn/player-rCFqzWrA.js +2 -0
- package/cdn/{player-B0ccW5-n.js.map → player-rCFqzWrA.js.map} +1 -1
- package/cdn/{poster-element-BP1Ypgbf.js → poster-element-BGr1VQJB.js} +16 -4
- package/cdn/poster-element-BGr1VQJB.js.map +1 -0
- package/cdn/poster-element-DBmgOyep.js +2 -0
- package/cdn/poster-element-DBmgOyep.js.map +1 -0
- package/cdn/script-D3ZkiqwO.js +2 -0
- package/cdn/script-D3ZkiqwO.js.map +1 -0
- package/cdn/script-erPJaaTz.js +33 -0
- package/cdn/script-erPJaaTz.js.map +1 -0
- package/cdn/seek-button-element-FlgBVoGM.js +2 -0
- package/cdn/seek-button-element-FlgBVoGM.js.map +1 -0
- package/cdn/{seek-button-element-TErrbilI.js → seek-button-element-XMTLIxZj.js} +6 -5
- package/cdn/seek-button-element-XMTLIxZj.js.map +1 -0
- package/cdn/{skin-element-wPSb4AAs.js → skin-element-DL-Kqa5f.js} +2 -2
- package/cdn/{skin-element-wPSb4AAs.js.map → skin-element-DL-Kqa5f.js.map} +1 -1
- package/cdn/{skin-element-1_MG2zgS.js → skin-element-DNytI-uu.js} +2 -2
- package/cdn/{skin-element-1_MG2zgS.js.map → skin-element-DNytI-uu.js.map} +1 -1
- package/cdn/{text-element-DTB9_2HX.js → text-element-D88ArbZz.js} +3 -3
- package/cdn/{text-element-DTB9_2HX.js.map → text-element-D88ArbZz.js.map} +1 -1
- package/cdn/text-element-DeWBNKXb.js +2 -0
- package/cdn/{text-element-Bsyglab8.js.map → text-element-DeWBNKXb.js.map} +1 -1
- package/cdn/{time-slider-chapters-element-DPgaLdBt.js → time-slider-chapters-element-DJ0abZXI.js} +5 -4
- package/cdn/time-slider-chapters-element-DJ0abZXI.js.map +1 -0
- package/cdn/time-slider-chapters-element-DW8YyJn8.js +2 -0
- package/cdn/{time-slider-chapters-element-MdlcovBu.js.map → time-slider-chapters-element-DW8YyJn8.js.map} +1 -1
- package/cdn/{translate-text-DP0CzUCC.js → translate-text-BWvoW5-r.js} +2 -7
- package/cdn/translate-text-BWvoW5-r.js.map +1 -0
- package/cdn/translate-text-TzSgu_oe.js +2 -0
- package/cdn/translate-text-TzSgu_oe.js.map +1 -0
- package/cdn/{ui-D0AokGxw.js → ui-BU3_2gDQ.js} +8 -8
- package/cdn/{ui-D0AokGxw.js.map → ui-BU3_2gDQ.js.map} +1 -1
- package/cdn/{ui-p36Szn71.js → ui-BsaWWE4y.js} +10 -10
- package/cdn/{ui-p36Szn71.js.map → ui-BsaWWE4y.js.map} +1 -1
- package/cdn/ui-C0isALTQ.js +2 -0
- package/cdn/{ui-CecDxhTX.js.map → ui-C0isALTQ.js.map} +1 -1
- package/cdn/ui-DVpkE1MN.js +2 -0
- package/cdn/{ui-ChWM6Xz2.js.map → ui-DVpkE1MN.js.map} +1 -1
- package/cdn/video-headless.dev.js +1 -1
- package/cdn/video-headless.js +1 -1
- package/cdn/video-minimal-ui.dev.js +1 -1
- package/cdn/video-minimal-ui.js +1 -1
- package/cdn/video-minimal.dev.js +4 -4
- package/cdn/video-minimal.dev.js.map +1 -1
- package/cdn/video-minimal.js +1 -1
- package/cdn/video-minimal.js.map +1 -1
- package/cdn/video-ui.dev.js +1 -1
- package/cdn/video-ui.js +1 -1
- package/cdn/video.dev.js +5 -5
- package/cdn/video.dev.js.map +1 -1
- package/cdn/video.js +1 -1
- package/cdn/video.js.map +1 -1
- package/dist/default/_virtual/inline-css_src/define/audio/minimal-skin.js +1 -1
- package/dist/default/_virtual/inline-css_src/define/audio/minimal-skin.js.map +1 -1
- package/dist/default/_virtual/inline-css_src/define/audio/skin.js +1 -1
- package/dist/default/_virtual/inline-css_src/define/audio/skin.js.map +1 -1
- package/dist/default/_virtual/inline-css_src/define/live-audio/minimal-skin.js +1 -1
- package/dist/default/_virtual/inline-css_src/define/live-audio/minimal-skin.js.map +1 -1
- package/dist/default/_virtual/inline-css_src/define/live-audio/skin.js +1 -1
- package/dist/default/_virtual/inline-css_src/define/live-audio/skin.js.map +1 -1
- package/dist/default/_virtual/inline-css_src/define/live-video/minimal-skin.js +1 -1
- package/dist/default/_virtual/inline-css_src/define/live-video/minimal-skin.js.map +1 -1
- package/dist/default/_virtual/inline-css_src/define/live-video/skin.js +1 -1
- package/dist/default/_virtual/inline-css_src/define/live-video/skin.js.map +1 -1
- package/dist/default/_virtual/inline-css_src/define/video/minimal-skin.js +1 -1
- package/dist/default/_virtual/inline-css_src/define/video/minimal-skin.js.map +1 -1
- package/dist/default/_virtual/inline-css_src/define/video/skin.js +1 -1
- package/dist/default/_virtual/inline-css_src/define/video/skin.js.map +1 -1
- package/dist/default/define/audio/minimal-skin.css +16 -19
- package/dist/default/define/audio/skin.css +27 -30
- package/dist/default/define/live-audio/minimal-skin.css +16 -19
- package/dist/default/define/live-audio/skin.css +27 -30
- package/dist/default/define/live-video/minimal-skin.css +20 -19
- package/dist/default/define/live-video/skin.css +31 -30
- package/dist/default/define/video/minimal-skin.css +20 -19
- package/dist/default/define/video/skin.css +31 -30
- package/dist/default/media/tiktok-video/media.js +3 -2
- package/dist/default/media/tiktok-video/media.js.map +1 -1
- package/dist/default/skins/dist/default/default/tailwind/components/slider.js +6 -6
- package/dist/default/skins/dist/default/default/tailwind/components/slider.js.map +1 -1
- package/dist/default/skins/dist/default/default/tailwind/video.tailwind.js +1 -1
- package/dist/default/skins/dist/default/default/tailwind/video.tailwind.js.map +1 -1
- package/dist/default/skins/dist/default/minimal/tailwind/components/slider.js +4 -4
- package/dist/default/skins/dist/default/minimal/tailwind/components/slider.js.map +1 -1
- package/dist/default/skins/dist/default/minimal/tailwind/video.tailwind.js +1 -1
- package/dist/default/skins/dist/default/minimal/tailwind/video.tailwind.js.map +1 -1
- package/dist/default/ui/playback-rate-button/playback-rate-button-element.js +1 -2
- package/dist/default/ui/playback-rate-button/playback-rate-button-element.js.map +1 -1
- package/dist/dev/_virtual/inline-css_src/define/audio/minimal-skin.js +1 -1
- package/dist/dev/_virtual/inline-css_src/define/audio/minimal-skin.js.map +1 -1
- package/dist/dev/_virtual/inline-css_src/define/audio/skin.js +1 -1
- package/dist/dev/_virtual/inline-css_src/define/audio/skin.js.map +1 -1
- package/dist/dev/_virtual/inline-css_src/define/live-audio/minimal-skin.js +1 -1
- package/dist/dev/_virtual/inline-css_src/define/live-audio/minimal-skin.js.map +1 -1
- package/dist/dev/_virtual/inline-css_src/define/live-audio/skin.js +1 -1
- package/dist/dev/_virtual/inline-css_src/define/live-audio/skin.js.map +1 -1
- package/dist/dev/_virtual/inline-css_src/define/live-video/minimal-skin.js +1 -1
- package/dist/dev/_virtual/inline-css_src/define/live-video/minimal-skin.js.map +1 -1
- package/dist/dev/_virtual/inline-css_src/define/live-video/skin.js +1 -1
- package/dist/dev/_virtual/inline-css_src/define/live-video/skin.js.map +1 -1
- package/dist/dev/_virtual/inline-css_src/define/video/minimal-skin.js +1 -1
- package/dist/dev/_virtual/inline-css_src/define/video/minimal-skin.js.map +1 -1
- package/dist/dev/_virtual/inline-css_src/define/video/skin.js +1 -1
- package/dist/dev/_virtual/inline-css_src/define/video/skin.js.map +1 -1
- package/dist/dev/define/audio/minimal-skin.css +16 -19
- package/dist/dev/define/audio/skin.css +27 -30
- package/dist/dev/define/live-audio/minimal-skin.css +16 -19
- package/dist/dev/define/live-audio/skin.css +27 -30
- package/dist/dev/define/live-video/minimal-skin.css +20 -19
- package/dist/dev/define/live-video/skin.css +31 -30
- package/dist/dev/define/video/minimal-skin.css +20 -19
- package/dist/dev/define/video/skin.css +31 -30
- package/dist/dev/media/tiktok-video/media.d.ts.map +1 -1
- package/dist/dev/media/tiktok-video/media.js +10 -7
- package/dist/dev/media/tiktok-video/media.js.map +1 -1
- package/dist/dev/packages/skins/dist/default/default/tailwind/components/slider.js +6 -6
- package/dist/dev/packages/skins/dist/default/default/tailwind/components/slider.js.map +1 -1
- package/dist/dev/packages/skins/dist/default/default/tailwind/video.tailwind.js +1 -1
- package/dist/dev/packages/skins/dist/default/default/tailwind/video.tailwind.js.map +1 -1
- package/dist/dev/packages/skins/dist/default/minimal/tailwind/components/slider.js +4 -4
- package/dist/dev/packages/skins/dist/default/minimal/tailwind/components/slider.js.map +1 -1
- package/dist/dev/packages/skins/dist/default/minimal/tailwind/video.tailwind.js +1 -1
- package/dist/dev/packages/skins/dist/default/minimal/tailwind/video.tailwind.js.map +1 -1
- package/dist/dev/ui/playback-rate-button/playback-rate-button-element.d.ts.map +1 -1
- package/dist/dev/ui/playback-rate-button/playback-rate-button-element.js +1 -2
- package/dist/dev/ui/playback-rate-button/playback-rate-button-element.js.map +1 -1
- package/docs/README.md +1 -1
- package/docs/concepts/features.md +2 -2
- package/docs/concepts/media-sources.md +79 -1
- package/docs/concepts/skins.md +31 -30
- package/docs/how-to/build-your-own-component.md +1 -1
- package/docs/how-to/customize-skins.md +94 -98
- package/docs/how-to/migrate-from-media-chrome.md +359 -0
- package/docs/how-to/migrate-from-mux-player.md +535 -0
- package/docs/how-to/migrate-from-plyr.md +394 -0
- package/docs/how-to/migrate-from-video-js-8.md +594 -0
- package/docs/llms.txt +9 -0
- package/docs/reference/feature-volume.md +3 -1
- package/docs/reference/mute-button.md +34 -0
- package/docs/reference/volume-slider.md +1 -1
- package/package.json +10 -9
- package/cdn/bn-DdelKD_n.js +0 -108
- package/cdn/bn-DdelKD_n.js.map +0 -1
- package/cdn/bn-YS8ruMcO.js +0 -2
- package/cdn/bn-YS8ruMcO.js.map +0 -1
- package/cdn/compounds-CCvdpvge.js.map +0 -1
- package/cdn/compounds-CJ6SbYAh.js +0 -8
- package/cdn/compounds-CJ6SbYAh.js.map +0 -1
- package/cdn/create-player-BHFyOnWi.js.map +0 -1
- package/cdn/create-player-CbpxjDaZ.js +0 -14
- package/cdn/create-player-CbpxjDaZ.js.map +0 -1
- package/cdn/gesture-element-BNfMI8eh.js +0 -2
- package/cdn/hls-js-6lW7L4th.js +0 -2
- package/cdn/hls-js-DCQzjzB5.js +0 -2
- package/cdn/i18n-DfKGl5Rh.js +0 -2
- package/cdn/live-button-element-B_y-ZJBy.js.map +0 -1
- package/cdn/live-button-element-CWfkQUoy.js +0 -2
- package/cdn/media-5ODYtX1-.js +0 -2
- package/cdn/media-5ODYtX1-.js.map +0 -1
- package/cdn/media-B_gQXwri.js.map +0 -1
- package/cdn/media-CPWNSZFX.js +0 -41
- package/cdn/media-CPWNSZFX.js.map +0 -1
- package/cdn/media-Cp3acYc8.js.map +0 -1
- package/cdn/media-Dq4zmIJa2.js.map +0 -1
- package/cdn/media-suYcjCG22.js.map +0 -1
- package/cdn/minimal-ui-AFk6Ut5f.js +0 -2
- package/cdn/minimal-ui-BVKu9LWj.js +0 -2
- package/cdn/mixin-CkNZwQXF.js.map +0 -1
- package/cdn/mixin-DiB7dIef.js +0 -2
- package/cdn/player-B0ccW5-n.js +0 -2
- package/cdn/player-iIewo8Y9.js +0 -2
- package/cdn/player-srq1RGTj.js +0 -2
- package/cdn/poster-element-BP1Ypgbf.js.map +0 -1
- package/cdn/poster-element-S-rr412t.js +0 -2
- package/cdn/poster-element-S-rr412t.js.map +0 -1
- package/cdn/seek-button-element-DxLmm58Y.js +0 -2
- package/cdn/seek-button-element-DxLmm58Y.js.map +0 -1
- package/cdn/seek-button-element-TErrbilI.js.map +0 -1
- package/cdn/text-element-Bsyglab8.js +0 -2
- package/cdn/time-slider-chapters-element-DPgaLdBt.js.map +0 -1
- package/cdn/time-slider-chapters-element-MdlcovBu.js +0 -2
- package/cdn/translate-text-BPMWpzFm.js +0 -2
- package/cdn/translate-text-BPMWpzFm.js.map +0 -1
- package/cdn/translate-text-DP0CzUCC.js.map +0 -1
- package/cdn/ui-CecDxhTX.js +0 -2
- package/cdn/ui-ChWM6Xz2.js +0 -2
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"poster-element-S-rr412t.js","names":["prefix","startText","stopText","prefix","#props","stopText","startText","#media","resolveText","prefix","#props","#media","resolveText","getCaptionTrackCount","#props","#media","resolveText","#props","#media","resolveText","#props","exitText","enterText","#media","resolveText","#props","#media","resolveText","#media","#defaultCommandfor","#syncCommandFor","#mediaState","#core","#i18n","#options","#i18n"],"sources":["../../core/dist/default/i18n/text/airplay.js","../../core/dist/default/i18n/text/cast.js","../../core/dist/default/core/ui/airplay-button/airplay-button-core.js","../../core/dist/default/core/ui/airplay-button/airplay-button-data-attrs.js","../../core/dist/default/i18n/text/captions.js","../../core/dist/default/core/ui/captions-button/captions-button-core.js","../../core/dist/default/core/ui/captions-button/captions-button-data-attrs.js","../../core/dist/default/core/ui/captions-radio-group/captions-radio-group-core.js","../../core/dist/default/core/ui/captions-radio-group/captions-radio-group-data-attrs.js","../../core/dist/default/core/ui/cast-button/cast-button-core.js","../../core/dist/default/core/ui/cast-button/cast-button-data-attrs.js","../../core/dist/default/core/ui/fullscreen-button/fullscreen-button-core.js","../../core/dist/default/core/ui/fullscreen-button/fullscreen-button-data-attrs.js","../../core/dist/default/i18n/text/pip.js","../../core/dist/default/core/ui/pip-button/pip-button-core.js","../../core/dist/default/core/ui/pip-button/pip-button-data-attrs.js","../../core/dist/default/core/ui/poster/poster-core.js","../../core/dist/default/core/ui/poster/poster-data-attrs.js","../src/ui/airplay-button/airplay-button-element.ts","../src/ui/captions-button/captions-button-element.ts","../src/ui/captions-radio-group/captions-radio-group-element.ts","../src/ui/cast-button/cast-button-element.ts","../src/ui/fullscreen-button/fullscreen-button-element.ts","../src/ui/pip-button/pip-button-element.ts","../src/ui/media-ui-element.ts","../src/ui/poster/poster-element.ts"],"sourcesContent":["//#region src/core/i18n/text/airplay.ts\nconst prefix = \"airplay.\";\nconst startText = {\n\tkey: `${prefix}start`,\n\ttext: \"Start AirPlay\"\n};\nconst stopText = {\n\tkey: `${prefix}stop`,\n\ttext: \"Stop AirPlay\"\n};\n//#endregion\nexport { startText, stopText };\n\n//# sourceMappingURL=airplay.js.map","//#region src/core/i18n/text/cast.ts\nconst prefix = \"cast.\";\nconst startText = {\n\tkey: `${prefix}start`,\n\ttext: \"Start casting\"\n};\nconst stopText = {\n\tkey: `${prefix}stop`,\n\ttext: \"Stop casting\"\n};\nconst connectingText = {\n\tkey: `${prefix}connecting`,\n\ttext: \"Connecting\"\n};\n//#endregion\nexport { connectingText, startText, stopText };\n\n//# sourceMappingURL=cast.js.map","import { resolveText } from \"../../i18n/resolve-text.js\";\nimport { startText, stopText } from \"../../../i18n/text/airplay.js\";\nimport { connectingText } from \"../../../i18n/text/cast.js\";\nimport { resolveLabel } from \"../utils/resolve-label.js\";\nimport { createState } from \"@videojs/store\";\nimport { supportsWebKitAirPlay } from \"@videojs/utils/dom\";\nimport { defaults } from \"@videojs/utils/object\";\n//#region src/core/ui/airplay-button/airplay-button-core.ts\nvar AirPlayButtonCore = class AirPlayButtonCore {\n\tstatic defaultProps = {\n\t\tlabel: \"\",\n\t\tdisabled: false\n\t};\n\tstate = createState({\n\t\tstate: \"disconnected\",\n\t\tavailability: \"unsupported\",\n\t\tdisabled: true,\n\t\thidden: true,\n\t\tlabel: \"\"\n\t});\n\t#props = { ...AirPlayButtonCore.defaultProps };\n\t#media = null;\n\tconstructor(props) {\n\t\tif (props) this.setProps(props);\n\t}\n\tsetProps(props) {\n\t\tthis.#props = defaults(props, AirPlayButtonCore.defaultProps);\n\t}\n\tgetLabel(state) {\n\t\tconst label = resolveLabel(this.#props.label, state);\n\t\tif (label) return label;\n\t\tif (state.state === \"connected\") return stopText;\n\t\tif (state.state === \"connecting\") return connectingText;\n\t\treturn startText;\n\t}\n\tgetAttrs(state) {\n\t\treturn {\n\t\t\t\"aria-label\": this.getLabel(state),\n\t\t\t\"aria-disabled\": state.disabled ? \"true\" : void 0,\n\t\t\thidden: state.hidden ? \"\" : void 0\n\t\t};\n\t}\n\tsetMedia(media) {\n\t\tthis.#media = media;\n\t}\n\tgetState() {\n\t\tconst media = this.#media;\n\t\tconst availability = supportsWebKitAirPlay() ? media.remotePlaybackAvailability : \"unsupported\";\n\t\tthis.state.patch({\n\t\t\tstate: media.remotePlaybackState,\n\t\t\tavailability,\n\t\t\tdisabled: this.#props.disabled || availability !== \"available\",\n\t\t\thidden: availability !== \"available\"\n\t\t});\n\t\tthis.state.patch({ label: resolveText(this.getLabel(this.state.current)) });\n\t\treturn this.state.current;\n\t}\n\tasync toggle(media) {\n\t\tthis.setMedia(media);\n\t\tif (this.getState().disabled) return;\n\t\ttry {\n\t\t\tawait media.toggleRemotePlayback();\n\t\t} catch {}\n\t}\n};\n//#endregion\nexport { AirPlayButtonCore };\n\n//# sourceMappingURL=airplay-button-core.js.map","//#region src/core/ui/airplay-button/airplay-button-data-attrs.ts\nconst AirPlayButtonDataAttrs = {\n\t/**\n\t* Current AirPlay connection state.\n\t*\n\t* @see https://developer.mozilla.org/en-US/docs/Web/API/RemotePlayback/state\n\t*/\n\tstate: \"data-airplay-state\",\n\t/**\n\t* Whether AirPlay is available on the active platform and media.\n\t*\n\t* @see https://developer.mozilla.org/en-US/docs/Web/API/RemotePlayback\n\t*/\n\tavailability: \"data-availability\",\n\t/** Present when the button is non-interactive (mirrors `aria-disabled`). */\n\tdisabled: \"data-disabled\",\n\t/** Present when the button is hidden because AirPlay is unavailable. */\n\thidden: \"data-hidden\"\n};\n//#endregion\nexport { AirPlayButtonDataAttrs };\n\n//# sourceMappingURL=airplay-button-data-attrs.js.map","//#region src/core/i18n/text/captions.ts\nconst prefix = \"captions.\";\nconst enableText = {\n\tkey: `${prefix}enable`,\n\ttext: \"Enable captions\"\n};\nconst disableText = {\n\tkey: `${prefix}disable`,\n\ttext: \"Disable captions\"\n};\n//#endregion\nexport { disableText, enableText };\n\n//# sourceMappingURL=captions.js.map","import { resolveText } from \"../../i18n/resolve-text.js\";\nimport { resolveLabel } from \"../utils/resolve-label.js\";\nimport { disableText, enableText } from \"../../../i18n/text/captions.js\";\nimport { createState } from \"@videojs/store\";\nimport { isCaptionOrSubtitleTrack } from \"@videojs/utils/dom\";\nimport { defaults } from \"@videojs/utils/object\";\n//#region src/core/ui/captions-button/captions-button-core.ts\nvar CaptionsButtonCore = class CaptionsButtonCore {\n\tstatic defaultProps = {\n\t\tlabel: \"\",\n\t\tdisabled: false,\n\t\tmenuTrigger: false\n\t};\n\tstate = createState({\n\t\tsubtitlesShowing: false,\n\t\tavailability: \"unavailable\",\n\t\tdisabled: true,\n\t\thidden: true,\n\t\tlabel: \"\"\n\t});\n\t#props = { ...CaptionsButtonCore.defaultProps };\n\t#media = null;\n\tconstructor(props) {\n\t\tif (props) this.setProps(props);\n\t}\n\tsetProps(props) {\n\t\tthis.#props = defaults(props, CaptionsButtonCore.defaultProps);\n\t}\n\tgetLabel(state) {\n\t\tconst label = resolveLabel(this.#props.label, state);\n\t\tif (label) return label;\n\t\treturn state.subtitlesShowing ? disableText : enableText;\n\t}\n\tgetAttrs(state) {\n\t\treturn {\n\t\t\t\"aria-label\": this.getLabel(state),\n\t\t\t\"aria-disabled\": state.disabled ? \"true\" : void 0,\n\t\t\thidden: state.hidden ? \"\" : void 0\n\t\t};\n\t}\n\tsetMedia(media) {\n\t\tthis.#media = media;\n\t}\n\tgetState() {\n\t\tconst media = this.#media;\n\t\tconst availability = media.textTrackList.some(isCaptionOrSubtitleTrack) ? \"available\" : \"unavailable\";\n\t\tthis.state.patch({\n\t\t\tsubtitlesShowing: media.subtitlesShowing,\n\t\t\tavailability,\n\t\t\tdisabled: this.#props.disabled || availability !== \"available\",\n\t\t\thidden: availability === \"unavailable\"\n\t\t});\n\t\tthis.state.patch({ label: resolveText(this.getLabel(this.state.current)) });\n\t\treturn this.state.current;\n\t}\n\ttoggle(media) {\n\t\tthis.setMedia(media);\n\t\tif (this.getState().disabled) return;\n\t\tif (this.#props.menuTrigger && getCaptionTrackCount(media) > 1) return;\n\t\tmedia.toggleSubtitles();\n\t}\n};\nfunction getCaptionTrackCount(media) {\n\treturn media.textTrackList.filter(isCaptionOrSubtitleTrack).length;\n}\n//#endregion\nexport { CaptionsButtonCore };\n\n//# sourceMappingURL=captions-button-core.js.map","//#region src/core/ui/captions-button/captions-button-data-attrs.ts\nconst CaptionsButtonDataAttrs = {\n\t/** Present when captions are enabled. */\n\tsubtitlesShowing: \"data-active\",\n\t/** Indicates captions availability (`available` or `unavailable`). */\n\tavailability: \"data-availability\",\n\t/** Present when the button is non-interactive (mirrors `aria-disabled`). */\n\tdisabled: \"data-disabled\",\n\t/** Present when the button is hidden because no caption tracks are present. */\n\thidden: \"data-hidden\"\n};\n//#endregion\nexport { CaptionsButtonDataAttrs };\n\n//# sourceMappingURL=captions-button-data-attrs.js.map","import { resolveText } from \"../../i18n/resolve-text.js\";\nimport { resolveLabel } from \"../utils/resolve-label.js\";\nimport { captionsText, offText, subtitlesText } from \"../../../i18n/text/menu.js\";\nimport { createState } from \"@videojs/store\";\nimport { isCaptionOrSubtitleTrack } from \"@videojs/utils/dom\";\nimport { defaults } from \"@videojs/utils/object\";\n//#region src/core/ui/captions-radio-group/captions-radio-group-core.ts\nconst CAPTIONS_OFF_VALUE = \"off\";\nfunction formatTrackLabel(track) {\n\tif (track.label) return track.label;\n\tif (track.language) return track.language;\n\treturn track.kind === \"captions\" ? captionsText : subtitlesText;\n}\nfunction sortCaptionTracks(a, b) {\n\treturn a.kind > b.kind ? 1 : a.kind < b.kind ? -1 : 0;\n}\nfunction getCaptionTracks(textTrackList) {\n\treturn textTrackList.filter(isCaptionOrSubtitleTrack).sort(sortCaptionTracks);\n}\nvar CaptionsRadioGroupCore = class CaptionsRadioGroupCore {\n\tstatic defaultProps = {\n\t\tlabel: \"\",\n\t\tformatTrack: formatTrackLabel,\n\t\tdisabled: false\n\t};\n\tstate = createState({\n\t\toptions: [{\n\t\t\tvalue: \"off\",\n\t\t\tlabel: offText,\n\t\t\tdisabled: false\n\t\t}],\n\t\tvalue: \"off\",\n\t\tsubtitlesShowing: false,\n\t\tdisabled: true,\n\t\thidden: true,\n\t\tavailability: \"unavailable\",\n\t\tlabel: \"\"\n\t});\n\t#props = { ...CaptionsRadioGroupCore.defaultProps };\n\t#media = null;\n\tconstructor(props) {\n\t\tif (props) this.setProps(props);\n\t}\n\tsetProps(props) {\n\t\tthis.#props = defaults(props, CaptionsRadioGroupCore.defaultProps);\n\t}\n\tgetLabel(state) {\n\t\tconst label = resolveLabel(this.#props.label, state);\n\t\tif (label) return label;\n\t\treturn captionsText;\n\t}\n\tgetTrackLabel(track) {\n\t\treturn this.#props.formatTrack(track);\n\t}\n\tgetAttrs(state) {\n\t\treturn {\n\t\t\t\"aria-label\": this.getLabel(state),\n\t\t\t\"aria-disabled\": state.disabled ? \"true\" : void 0,\n\t\t\thidden: state.hidden ? \"\" : void 0\n\t\t};\n\t}\n\tsetMedia(media) {\n\t\tthis.#media = media;\n\t}\n\tgetState() {\n\t\tconst media = this.#media;\n\t\tconst captionTracks = getCaptionTracks(media.textTrackList);\n\t\tconst showingIndex = captionTracks.findIndex((track) => track.mode === \"showing\");\n\t\tconst options = [{\n\t\t\tvalue: \"off\",\n\t\t\tlabel: offText,\n\t\t\tdisabled: false\n\t\t}, ...captionTracks.map((track, index) => ({\n\t\t\tvalue: track.id || String(index),\n\t\t\tlabel: this.getTrackLabel(track),\n\t\t\tdisabled: false\n\t\t}))];\n\t\tconst availability = captionTracks.length > 0 ? \"available\" : \"unavailable\";\n\t\tthis.state.patch({\n\t\t\toptions,\n\t\t\tvalue: showingIndex === -1 ? \"off\" : captionTracks[showingIndex].id || String(showingIndex),\n\t\t\tsubtitlesShowing: media.subtitlesShowing,\n\t\t\tdisabled: this.#props.disabled || captionTracks.length === 0,\n\t\t\thidden: availability === \"unavailable\",\n\t\t\tavailability\n\t\t});\n\t\tthis.state.patch({ label: resolveText(this.getLabel(this.state.current)) });\n\t\treturn this.state.current;\n\t}\n\tselect(media, value) {\n\t\tif (this.#props.disabled) return;\n\t\tconst captionTracks = getCaptionTracks(media.textTrackList);\n\t\tif (!captionTracks.length) return;\n\t\tif (value === \"off\") {\n\t\t\tmedia.selectSubtitlesTrack(\"off\");\n\t\t\treturn;\n\t\t}\n\t\tif (!captionTracks.some((track, index) => (track.id || String(index)) === value)) return;\n\t\tmedia.selectSubtitlesTrack(value);\n\t}\n\tselectValue(media, value) {\n\t\tthis.select(media, value);\n\t}\n};\n//#endregion\nexport { CAPTIONS_OFF_VALUE, CaptionsRadioGroupCore };\n\n//# sourceMappingURL=captions-radio-group-core.js.map","//#region src/core/ui/captions-radio-group/captions-radio-group-data-attrs.ts\nconst CaptionsRadioGroupDataAttrs = {\n\t/** Present when captions are enabled. */\n\tsubtitlesShowing: \"data-active\",\n\t/** Present when track selection is disabled. */\n\tdisabled: \"data-disabled\",\n\t/** Present when track selection is unavailable. */\n\thidden: \"data-hidden\",\n\t/** Indicates captions availability (`available` or `unavailable`). */\n\tavailability: \"data-availability\"\n};\n//#endregion\nexport { CaptionsRadioGroupDataAttrs };\n\n//# sourceMappingURL=captions-radio-group-data-attrs.js.map","import { resolveText } from \"../../i18n/resolve-text.js\";\nimport { connectingText, startText, stopText } from \"../../../i18n/text/cast.js\";\nimport { resolveLabel } from \"../utils/resolve-label.js\";\nimport { createState } from \"@videojs/store\";\nimport { defaults } from \"@videojs/utils/object\";\n//#region src/core/ui/cast-button/cast-button-core.ts\nvar CastButtonCore = class CastButtonCore {\n\tstatic defaultProps = {\n\t\tlabel: \"\",\n\t\tdisabled: false\n\t};\n\tstate = createState({\n\t\tconnection: \"disconnected\",\n\t\tavailability: \"unsupported\",\n\t\tdisabled: true,\n\t\thidden: true,\n\t\tlabel: \"\"\n\t});\n\t#props = { ...CastButtonCore.defaultProps };\n\t#media = null;\n\tconstructor(props) {\n\t\tif (props) this.setProps(props);\n\t}\n\tsetProps(props) {\n\t\tthis.#props = defaults(props, CastButtonCore.defaultProps);\n\t}\n\tgetLabel(state) {\n\t\tconst label = resolveLabel(this.#props.label, state);\n\t\tif (label) return label;\n\t\tif (state.connection === \"connected\") return stopText;\n\t\tif (state.connection === \"connecting\") return connectingText;\n\t\treturn startText;\n\t}\n\tgetAttrs(state) {\n\t\treturn {\n\t\t\t\"aria-label\": this.getLabel(state),\n\t\t\t\"aria-disabled\": state.disabled ? \"true\" : void 0,\n\t\t\thidden: state.hidden ? \"\" : void 0\n\t\t};\n\t}\n\tsetMedia(media) {\n\t\tthis.#media = media;\n\t}\n\tgetState() {\n\t\tconst media = this.#media;\n\t\tconst availability = !!globalThis.chrome ? media.remotePlaybackAvailability : \"unsupported\";\n\t\tthis.state.patch({\n\t\t\tconnection: media.remotePlaybackState,\n\t\t\tavailability,\n\t\t\tdisabled: this.#props.disabled || availability !== \"available\",\n\t\t\thidden: availability === \"unsupported\"\n\t\t});\n\t\tthis.state.patch({ label: resolveText(this.getLabel(this.state.current)) });\n\t\treturn this.state.current;\n\t}\n\tasync toggle(media) {\n\t\tthis.setMedia(media);\n\t\tif (this.getState().disabled) return;\n\t\treturn media.toggleRemotePlayback();\n\t}\n};\n//#endregion\nexport { CastButtonCore };\n\n//# sourceMappingURL=cast-button-core.js.map","//#region src/core/ui/cast-button/cast-button-data-attrs.ts\nconst CastButtonDataAttrs = {\n\t/**\n\t* Current remote playback connection state.\n\t*\n\t* @see https://developer.mozilla.org/en-US/docs/Web/API/RemotePlayback/state\n\t*/\n\tconnection: \"data-cast-state\",\n\t/**\n\t* Whether remote playback can be requested on this platform.\n\t*\n\t* @see https://developer.mozilla.org/en-US/docs/Web/API/RemotePlayback\n\t*/\n\tavailability: \"data-availability\",\n\t/** Present when the button is non-interactive (mirrors `aria-disabled`). */\n\tdisabled: \"data-disabled\",\n\t/** Present when the button is hidden because the feature is unsupported. */\n\thidden: \"data-hidden\"\n};\n//#endregion\nexport { CastButtonDataAttrs };\n\n//# sourceMappingURL=cast-button-data-attrs.js.map","import { resolveText } from \"../../i18n/resolve-text.js\";\nimport { resolveLabel } from \"../utils/resolve-label.js\";\nimport { enterText, exitText } from \"../../../i18n/text/fullscreen.js\";\nimport { createState } from \"@videojs/store\";\nimport { defaults } from \"@videojs/utils/object\";\n//#region src/core/ui/fullscreen-button/fullscreen-button-core.ts\nvar FullscreenButtonCore = class FullscreenButtonCore {\n\tstatic defaultProps = {\n\t\tlabel: \"\",\n\t\tdisabled: false\n\t};\n\tstate = createState({\n\t\tfullscreen: false,\n\t\tavailability: \"unavailable\",\n\t\tdisabled: true,\n\t\thidden: true,\n\t\tlabel: \"\"\n\t});\n\t#props = { ...FullscreenButtonCore.defaultProps };\n\t#media = null;\n\tconstructor(props) {\n\t\tif (props) this.setProps(props);\n\t}\n\tsetProps(props) {\n\t\tthis.#props = defaults(props, FullscreenButtonCore.defaultProps);\n\t}\n\tgetLabel(state) {\n\t\tconst label = resolveLabel(this.#props.label, state);\n\t\tif (label) return label;\n\t\treturn state.fullscreen ? exitText : enterText;\n\t}\n\tgetAttrs(state) {\n\t\treturn {\n\t\t\t\"aria-label\": this.getLabel(state),\n\t\t\t\"aria-disabled\": state.disabled ? \"true\" : void 0,\n\t\t\thidden: state.hidden ? \"\" : void 0\n\t\t};\n\t}\n\tsetMedia(media) {\n\t\tthis.#media = media;\n\t}\n\tgetState() {\n\t\tconst media = this.#media;\n\t\tconst availability = media.fullscreenAvailability;\n\t\tthis.state.patch({\n\t\t\tfullscreen: media.fullscreen,\n\t\t\tavailability,\n\t\t\tdisabled: this.#props.disabled || availability !== \"available\",\n\t\t\thidden: availability !== \"available\"\n\t\t});\n\t\tthis.state.patch({ label: resolveText(this.getLabel(this.state.current)) });\n\t\treturn this.state.current;\n\t}\n\tasync toggle(media) {\n\t\tthis.setMedia(media);\n\t\tif (this.getState().disabled) return;\n\t\treturn media.fullscreen ? media.exitFullscreen() : media.requestFullscreen();\n\t}\n};\n//#endregion\nexport { FullscreenButtonCore };\n\n//# sourceMappingURL=fullscreen-button-core.js.map","//#region src/core/ui/fullscreen-button/fullscreen-button-data-attrs.ts\nconst FullscreenButtonDataAttrs = {\n\t/** Present when fullscreen mode is active. */\n\tfullscreen: \"data-fullscreen\",\n\t/** Indicates fullscreen availability (`available`, `unavailable`, `unsupported`). */\n\tavailability: \"data-availability\",\n\t/** Present when the button is non-interactive (mirrors `aria-disabled`). */\n\tdisabled: \"data-disabled\",\n\t/** Present when the button is hidden because fullscreen is not available. */\n\thidden: \"data-hidden\"\n};\n//#endregion\nexport { FullscreenButtonDataAttrs };\n\n//# sourceMappingURL=fullscreen-button-data-attrs.js.map","//#region src/core/i18n/text/pip.ts\nconst prefix = \"pip.\";\nconst enterText = {\n\tkey: `${prefix}enter`,\n\ttext: \"Enter picture-in-picture\"\n};\nconst exitText = {\n\tkey: `${prefix}exit`,\n\ttext: \"Exit picture-in-picture\"\n};\n//#endregion\nexport { enterText, exitText };\n\n//# sourceMappingURL=pip.js.map","import { resolveText } from \"../../i18n/resolve-text.js\";\nimport { resolveLabel } from \"../utils/resolve-label.js\";\nimport { enterText, exitText } from \"../../../i18n/text/pip.js\";\nimport { createState } from \"@videojs/store\";\nimport { defaults } from \"@videojs/utils/object\";\n//#region src/core/ui/pip-button/pip-button-core.ts\nvar PiPButtonCore = class PiPButtonCore {\n\tstatic defaultProps = {\n\t\tlabel: \"\",\n\t\tdisabled: false\n\t};\n\tstate = createState({\n\t\tpip: false,\n\t\tavailability: \"unavailable\",\n\t\tdisabled: true,\n\t\thidden: true,\n\t\tlabel: \"\"\n\t});\n\t#props = { ...PiPButtonCore.defaultProps };\n\t#media = null;\n\tconstructor(props) {\n\t\tif (props) this.setProps(props);\n\t}\n\tsetProps(props) {\n\t\tthis.#props = defaults(props, PiPButtonCore.defaultProps);\n\t}\n\tgetLabel(state) {\n\t\tconst label = resolveLabel(this.#props.label, state);\n\t\tif (label) return label;\n\t\treturn state.pip ? exitText : enterText;\n\t}\n\tgetAttrs(state) {\n\t\treturn {\n\t\t\t\"aria-label\": this.getLabel(state),\n\t\t\t\"aria-disabled\": state.disabled ? \"true\" : void 0,\n\t\t\thidden: state.hidden ? \"\" : void 0\n\t\t};\n\t}\n\tsetMedia(media) {\n\t\tthis.#media = media;\n\t}\n\tgetState() {\n\t\tconst media = this.#media;\n\t\tconst availability = media.pipAvailability;\n\t\tthis.state.patch({\n\t\t\tpip: media.pip,\n\t\t\tavailability,\n\t\t\tdisabled: this.#props.disabled || availability !== \"available\",\n\t\t\thidden: availability !== \"available\"\n\t\t});\n\t\tthis.state.patch({ label: resolveText(this.getLabel(this.state.current)) });\n\t\treturn this.state.current;\n\t}\n\tasync toggle(media) {\n\t\tthis.setMedia(media);\n\t\tif (this.getState().disabled) return;\n\t\treturn media.pip ? media.exitPictureInPicture() : media.requestPictureInPicture();\n\t}\n};\n//#endregion\nexport { PiPButtonCore };\n\n//# sourceMappingURL=pip-button-core.js.map","//#region src/core/ui/pip-button/pip-button-data-attrs.ts\nconst PiPButtonDataAttrs = {\n\t/** Present when picture-in-picture mode is active. */\n\tpip: \"data-pip\",\n\t/** Indicates picture-in-picture availability (`available`, `unavailable`, `unsupported`). */\n\tavailability: \"data-availability\",\n\t/** Present when the button is non-interactive (mirrors `aria-disabled`). */\n\tdisabled: \"data-disabled\",\n\t/** Present when the button is hidden because picture-in-picture is not available. */\n\thidden: \"data-hidden\"\n};\n//#endregion\nexport { PiPButtonDataAttrs };\n\n//# sourceMappingURL=pip-button-data-attrs.js.map","//#region src/core/ui/poster/poster-core.ts\nvar PosterCore = class {\n\t#media = null;\n\tsetMedia(media) {\n\t\tthis.#media = media;\n\t}\n\tgetState() {\n\t\treturn { visible: !this.#media.started };\n\t}\n};\n//#endregion\nexport { PosterCore };\n\n//# sourceMappingURL=poster-core.js.map","//#region src/core/ui/poster/poster-data-attrs.ts\nconst PosterDataAttrs = { visible: \"data-visible\" };\n//#endregion\nexport { PosterDataAttrs };\n\n//# sourceMappingURL=poster-data-attrs.js.map","import { AirPlayButtonCore, AirPlayButtonDataAttrs } from '@videojs/core';\nimport { selectRemotePlayback } from '@videojs/core/dom';\nimport type { MediaRemotePlaybackState } from '@videojs/media';\n\nimport { playerContext } from '../../player/context';\nimport { PlayerController } from '../../player/player-controller';\nimport { MediaButtonElement } from '../media-button-element';\n\nexport class AirPlayButtonElement extends MediaButtonElement<AirPlayButtonCore> {\n static readonly tagName = 'media-airplay-button';\n\n protected readonly core = new AirPlayButtonCore();\n protected readonly stateAttrMap = AirPlayButtonDataAttrs;\n protected readonly mediaState = new PlayerController(this, playerContext, selectRemotePlayback);\n\n protected activate(state: MediaRemotePlaybackState): void {\n this.core.toggle(state);\n }\n}\n","import { CaptionsButtonCore, CaptionsButtonDataAttrs } from '@videojs/core';\nimport { applyElementProps, selectTextTrack, type UIEvent } from '@videojs/core/dom';\nimport type { PropertyDeclarationMap, PropertyValues } from '@videojs/element';\nimport type { MediaTextTrackState } from '@videojs/media';\nimport { isCaptionOrSubtitleTrack } from '@videojs/utils/dom';\n\nimport { playerContext } from '../../player/context';\nimport { PlayerController } from '../../player/player-controller';\nimport { toggleCommandTarget } from '../command-for';\nimport { MediaButtonElement } from '../media-button-element';\n\nfunction getCaptionTrackCount(state: MediaTextTrackState): number {\n return state.textTrackList.filter(isCaptionOrSubtitleTrack).length;\n}\n\nexport class CaptionsButtonElement extends MediaButtonElement<CaptionsButtonCore> {\n static readonly tagName = 'media-captions-button';\n\n static override properties = {\n label: { type: String },\n disabled: { type: Boolean },\n commandfor: { type: String },\n menuFor: { type: String, attribute: 'menu-for' },\n } satisfies PropertyDeclarationMap<'label' | 'disabled' | 'commandfor' | 'menuFor'>;\n\n commandfor: string | undefined = undefined;\n menuFor: string | undefined = undefined;\n #defaultCommandfor: string | undefined = undefined;\n\n protected readonly core = new CaptionsButtonCore();\n protected readonly stateAttrMap = CaptionsButtonDataAttrs;\n protected readonly mediaState = new PlayerController(this, playerContext, selectTextTrack);\n protected override readonly hotkeyAction = 'toggleSubtitles';\n\n override connectedCallback(): void {\n super.connectedCallback();\n if (this.commandfor && this.commandfor !== this.menuFor) {\n this.#defaultCommandfor = this.commandfor;\n }\n }\n\n protected activate(state: MediaTextTrackState, event?: UIEvent): void {\n if (this.menuFor && getCaptionTrackCount(state) > 1) {\n if (event instanceof KeyboardEvent) {\n toggleCommandTarget(this, this.menuFor);\n }\n return;\n }\n\n this.core.toggle(state);\n }\n\n protected override getIsButtonDisabled(): boolean {\n const media = this.mediaState.value;\n if (super.getIsButtonDisabled()) return true;\n if (media && getCaptionTrackCount(media) === 0) return true;\n return false;\n }\n\n protected override willUpdate(changed: PropertyValues): void {\n super.willUpdate(changed);\n\n if (changed.has('commandfor') && this.commandfor !== this.menuFor) {\n this.#defaultCommandfor = this.commandfor;\n }\n\n if (changed.has('commandfor') || changed.has('menuFor')) {\n this.#syncCommandFor();\n }\n }\n\n protected override update(changed: PropertyValues): void {\n super.update(changed);\n\n const media = this.mediaState.value;\n if (!media) return;\n\n this.#syncCommandFor(media);\n\n if (this.menuFor && getCaptionTrackCount(media) > 1) {\n applyElementProps(this, {\n 'aria-disabled': this.getIsButtonDisabled() ? 'true' : undefined,\n });\n }\n }\n\n #syncCommandFor(media?: MediaTextTrackState): void {\n const state = media ?? this.mediaState.value;\n const target = state && this.menuFor && getCaptionTrackCount(state) > 1 ? this.menuFor : this.#defaultCommandfor;\n\n if (target) {\n this.setAttribute('commandfor', target);\n } else {\n this.removeAttribute('commandfor');\n }\n }\n}\n\nexport namespace CaptionsButtonElement {\n export type State = CaptionsButtonCore.State;\n}\n","import { CaptionsRadioGroupCore, CaptionsRadioGroupDataAttrs, type CaptionsRadioGroupOption } from '@videojs/core';\nimport { applyStateDataAttrs, logMissingFeature, selectTextTrack } from '@videojs/core/dom';\nimport { type Text, translateText } from '@videojs/core/i18n';\nimport type { PropertyDeclarationMap, PropertyValues } from '@videojs/element';\nimport { i18nContext } from '../../i18n/context';\nimport { I18nController } from '../../i18n/controller';\nimport { playerContext } from '../../player/context';\nimport { PlayerController } from '../../player/player-controller';\nimport { MenuRadioGroupElement } from '../menu/menu-radio-group-element';\nimport { RadioOptionsController } from '../radio-options/radio-options-controller';\n\nexport class CaptionsRadioGroupElement extends MenuRadioGroupElement {\n static override readonly tagName = 'media-captions-radio-group';\n\n static override properties = {\n ...MenuRadioGroupElement.properties,\n disabled: { type: Boolean },\n label: { type: String },\n } satisfies PropertyDeclarationMap<'value' | 'label' | 'disabled'>;\n\n disabled = false;\n label: Text | string = '';\n formatTrack = CaptionsRadioGroupCore.defaultProps.formatTrack;\n\n readonly #core = new CaptionsRadioGroupCore();\n readonly #i18n = new I18nController(this, i18nContext);\n readonly #mediaState = new PlayerController(this, playerContext, selectTextTrack);\n readonly #options = new RadioOptionsController<CaptionsRadioGroupOption>(this, {\n setItemAttributes: (item, option) => item.setAttribute('data-track', option.value),\n onValueChange: (value) => {\n const media = this.#mediaState.value;\n if (media) this.#core.selectValue(media, value);\n },\n });\n\n override connectedCallback(): void {\n super.connectedCallback();\n if (this.destroyed) return;\n\n if (__DEV__ && !this.#mediaState.value && this.#mediaState.displayName) {\n logMissingFeature(this.localName, this.#mediaState.displayName);\n }\n }\n\n protected override update(changed: PropertyValues): void {\n const media = this.#mediaState.value;\n let state: CaptionsRadioGroupCore.State | null = null;\n\n if (media) {\n this.#core.setProps({ formatTrack: this.formatTrack, disabled: this.disabled, label: this.label });\n this.#core.setMedia(media);\n state = this.#core.getState();\n\n this.applyDefaultAriaLabel(translateText(this.#core.getLabel(state), this.#i18n.value));\n this.#options.sync(state, this.#i18n.value, this.#i18n.locale);\n this.publishMenuMetadata(state.disabled, state.availability);\n }\n\n super.update(changed);\n\n if (state) applyStateDataAttrs(this, state, CaptionsRadioGroupDataAttrs);\n }\n}\n\nexport namespace CaptionsRadioGroupElement {\n export type State = CaptionsRadioGroupCore.State;\n}\n","import { CastButtonCore, CastButtonDataAttrs } from '@videojs/core';\nimport { selectRemotePlayback } from '@videojs/core/dom';\nimport type { MediaRemotePlaybackState } from '@videojs/media';\n\nimport { playerContext } from '../../player/context';\nimport { PlayerController } from '../../player/player-controller';\nimport { MediaButtonElement } from '../media-button-element';\n\nexport class CastButtonElement extends MediaButtonElement<CastButtonCore> {\n static readonly tagName = 'media-cast-button';\n\n protected readonly core = new CastButtonCore();\n protected readonly stateAttrMap = CastButtonDataAttrs;\n protected readonly mediaState = new PlayerController(this, playerContext, selectRemotePlayback);\n\n protected activate(state: MediaRemotePlaybackState): Promise<void> {\n return this.core.toggle(state);\n }\n}\n","import { FullscreenButtonCore, FullscreenButtonDataAttrs } from '@videojs/core';\nimport { selectFullscreen } from '@videojs/core/dom';\nimport type { MediaFullscreenState } from '@videojs/media';\n\nimport { playerContext } from '../../player/context';\nimport { PlayerController } from '../../player/player-controller';\nimport { MediaButtonElement } from '../media-button-element';\n\nexport class FullscreenButtonElement extends MediaButtonElement<FullscreenButtonCore> {\n static readonly tagName = 'media-fullscreen-button';\n\n protected readonly core = new FullscreenButtonCore();\n protected readonly stateAttrMap = FullscreenButtonDataAttrs;\n protected readonly mediaState = new PlayerController(this, playerContext, selectFullscreen);\n protected override readonly hotkeyAction = 'toggleFullscreen';\n\n protected activate(state: MediaFullscreenState): Promise<void> {\n return this.core.toggle(state);\n }\n}\n","import { PiPButtonCore, PiPButtonDataAttrs } from '@videojs/core';\nimport { selectPiP } from '@videojs/core/dom';\nimport type { MediaPictureInPictureState } from '@videojs/media';\n\nimport { playerContext } from '../../player/context';\nimport { PlayerController } from '../../player/player-controller';\nimport { MediaButtonElement } from '../media-button-element';\n\nexport class PiPButtonElement extends MediaButtonElement<PiPButtonCore> {\n static readonly tagName = 'media-pip-button';\n\n protected readonly core = new PiPButtonCore();\n protected readonly stateAttrMap = PiPButtonDataAttrs;\n protected readonly mediaState = new PlayerController(this, playerContext, selectPiP);\n protected override readonly hotkeyAction = 'togglePictureInPicture';\n\n protected activate(state: MediaPictureInPictureState): Promise<void> {\n return this.core.toggle(state);\n }\n}\n","import type { InferComponentState, InferMediaState, MediaUIComponent, StateAttrMap } from '@videojs/core';\nimport { applyElementProps, applyStateDataAttrs, logMissingFeature } from '@videojs/core/dom';\nimport { isText, translateText } from '@videojs/core/i18n';\nimport type { PropertyValues } from '@videojs/element';\nimport { isFunction } from '@videojs/utils/predicate';\n\nimport { i18nContext } from '../i18n/context';\nimport { I18nController } from '../i18n/controller';\nimport type { PlayerController } from '../player/player-controller';\nimport { MediaElement } from './media-element';\n\n/** Abstract base for HTML custom elements that display media state with data attributes. */\nexport abstract class MediaUIElement<Core extends MediaUIComponent> extends MediaElement {\n readonly #i18n = new I18nController(this, i18nContext);\n\n protected abstract readonly core: Core;\n protected abstract readonly stateAttrMap: StateAttrMap<InferComponentState<Core>>;\n protected abstract readonly mediaState: PlayerController<any, InferMediaState<Core> | undefined>;\n\n override connectedCallback(): void {\n super.connectedCallback();\n\n if (__DEV__ && !this.mediaState.value && this.mediaState.displayName) {\n logMissingFeature(this.localName, this.mediaState.displayName);\n }\n }\n\n protected override update(changed: PropertyValues): void {\n super.update(changed);\n\n const media = this.mediaState.value;\n\n if (!media) return;\n\n this.core.setMedia(media);\n const state = this.core.getState();\n if (isFunction(this.core.getAttrs)) {\n const attrs = this.core.getAttrs(state) as Record<string, unknown>;\n if (isText(attrs['aria-label'])) {\n attrs['aria-label'] = translateText(attrs['aria-label'], this.#i18n.value);\n }\n applyElementProps(this, attrs);\n }\n applyStateDataAttrs(this, state, this.stateAttrMap);\n }\n}\n","import { PosterCore, PosterDataAttrs } from '@videojs/core';\nimport { selectPlayback } from '@videojs/core/dom';\n\nimport { playerContext } from '../../player/context';\nimport { PlayerController } from '../../player/player-controller';\nimport { MediaUIElement } from '../media-ui-element';\n\nexport class PosterElement extends MediaUIElement<PosterCore> {\n static readonly tagName = 'media-poster';\n\n static get observedAttributes(): string[] {\n // biome-ignore lint/complexity/noThisInStatic: intentional use of super\n return [...super.observedAttributes, 'placeholdersrc'];\n }\n\n protected readonly core = new PosterCore();\n protected readonly stateAttrMap = PosterDataAttrs;\n protected readonly mediaState = new PlayerController(this, playerContext, selectPlayback);\n\n override attributeChangedCallback(attr: string, oldValue: string | null, newValue: string | null): void {\n super.attributeChangedCallback(attr, oldValue, newValue);\n\n if (attr === 'placeholdersrc') {\n if (newValue) {\n this.style.setProperty('--media-poster-placeholder', `url(${newValue})`);\n } else {\n this.style.removeProperty('--media-poster-placeholder');\n }\n }\n }\n}\n"],"mappings":"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"}
|
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
import{u as e}from"./predicate-LbFu-fPH.js";import{B as t,C as n,I as r,K as i,T as a,_ as o,b as s,h as c,rt as l,v as u,w as d,y as f}from"./compounds-CJ6SbYAh.js";import{H as p,P as m,j as h,n as g}from"./create-player-CbpxjDaZ.js";import{r as _}from"./translate-text-BPMWpzFm.js";import{r as v}from"./context-C2rsoDxk.js";import{translateText as y}from"./i18n.js";var b=class e{static defaultProps={label:``,disabled:!1,menuTrigger:!1};state=h({rate:1,label:``});#e={...e.defaultProps};#t=null;constructor(e){e&&this.setProps(e)}setProps(t){this.#e=l(t,e.defaultProps)}getLabel(e){let t=n(this.#e.label,e);return t===void 0?s:t}getLabelParams(e){if(n(this.#e.label,e)===void 0)return{rate:e.rate}}getAttrs(e){return{"aria-label":this.getLabel(e),"aria-disabled":this.#e.disabled?`true`:void 0}}setMedia(e){this.#t=e}getState(){let e=this.#t;return this.state.patch({rate:e.playbackRate}),this.state.patch({label:_(this.getLabel(this.state.current))}),this.state.current}cycle(e){if(this.#e.disabled||this.#e.menuTrigger)return;let{playbackRates:t,playbackRate:n}=e;if(t.length===0)return;let r=t.indexOf(n),i=r===-1?t.find(e=>e>n)??t[0]:t[(r+1)%t.length];e.setPlaybackRate(i)}};const x={rate:`data-rate`};function S(e){return`${e}×`}var C=class t{static defaultProps={label:``,formatRate:S,disabled:!1};state=h({rate:1,value:`1`,options:[],disabled:!0,hidden:!0,availability:`unavailable`,label:``});#e={...t.defaultProps};#t=null;constructor(e){e&&this.setProps(e)}setProps(e){this.#e=l(e,t.defaultProps)}getLabel(e){let t=n(this.#e.label,e);return t===void 0?i:t}getLabelParams(e){}getRateLabel(e){return this.#e.formatRate(e)}getRateValue(e){return String(e)}getAttrs(e){return{"aria-label":this.getLabel(e),"aria-disabled":e.disabled?`true`:void 0,hidden:e.hidden?``:void 0}}setMedia(e){this.#t=e}getState(){let e=this.#t,t=e.playbackRates.length>0?`available`:`unavailable`;return this.state.patch({rate:e.playbackRate,value:this.getRateValue(e.playbackRate),options:e.playbackRates.map(e=>({rate:e,value:this.getRateValue(e),label:this.getRateLabel(e),disabled:!1})),disabled:this.#e.disabled||e.playbackRates.length===0,hidden:t===`unavailable`,availability:t}),this.state.patch({label:_(this.getLabel(this.state.current))}),this.state.current}select(e,t){this.#e.disabled||e.playbackRates.includes(t)&&e.setPlaybackRate(t)}selectValue(t,n){let r=t.playbackRates.find(e=>this.getRateValue(e)===n);e(r)||this.select(t,r)}};const w={rate:`data-rate`,disabled:`data-disabled`,hidden:`data-hidden`,availability:`data-availability`},T=`seek.`,E={key:`${T}forward`,text:`Seek forward {seconds} seconds`},D={key:`${T}backward`,text:`Seek backward {seconds} seconds`};var O=class e{static defaultProps={seconds:30,label:``,disabled:!1};state=h({seeking:!1,direction:`forward`,label:``});#e={...e.defaultProps};#t=null;constructor(e){e&&this.setProps(e)}setProps(t){this.#e=l(t,e.defaultProps)}getLabel(e){let t=n(this.#e.label,e);return t===void 0?e.direction===`backward`?D:E:t}getLabelParams(e){if(n(this.#e.label,e)===void 0)return{seconds:Math.abs(this.#e.seconds)}}getAttrs(e){return{"aria-label":this.getLabel(e),"aria-disabled":this.#e.disabled?`true`:void 0}}setMedia(e){this.#t=e}getState(){let e=this.#t,t=this.#e.seconds<0?`backward`:`forward`;return this.state.patch({seeking:e.seeking,direction:t}),this.state.patch({label:_(this.getLabel(this.state.current))}),this.state.current}async seek(e){this.#e.disabled||await e.seek(e.currentTime+this.#e.seconds)}};const k={seeking:`data-seeking`,direction:`data-direction`};var A=class extends f{constructor(...e){super(...e),this.commandfor=void 0,this.core=new b,this.stateAttrMap=x,this.mediaState=new g(this,v,r),this.hotkeyAction=`speedUp`}static{this.tagName=`media-playback-rate-button`}static{this.properties={label:{type:String},disabled:{type:Boolean},commandfor:{type:String}}}activate(e,t){if(this.commandfor){t instanceof KeyboardEvent&&c(this,this.commandfor);return}this.core.cycle(e)}getIsButtonDisabled(){let e=this.mediaState.value;return!!(super.getIsButtonDisabled()||this.commandfor&&e&&e.playbackRates.length===0)}willUpdate(e){super.willUpdate(e),e.has(`commandfor`)&&(this.commandfor?this.setAttribute(`commandfor`,this.commandfor):this.removeAttribute(`commandfor`))}update(e){super.update(e),!(!this.mediaState.value||!this.commandfor)&&a(this,{"aria-disabled":this.getIsButtonDisabled()?`true`:void 0})}},j=class extends u{constructor(...e){super(...e),this.disabled=!1,this.formatRate=C.defaultProps.formatRate,this.#e=new C,this.#t=new m(this,p),this.#n=new g(this,v,r),this.#r=new o(this,{setItemAttributes:(e,t)=>e.setAttribute(`data-rate`,t.value),onValueChange:e=>{let t=this.#n.value;t&&this.#e.selectValue(t,e)}})}static{this.tagName=`media-playback-rate-radio-group`}static{this.properties={...u.properties,disabled:{type:Boolean}}}#e;#t;#n;#r;connectedCallback(){super.connectedCallback(),this.destroyed}update(e){let t=this.#n.value,n=null;t&&(this.#e.setProps({formatRate:this.formatRate,disabled:this.disabled}),this.#e.setMedia(t),n=this.#e.getState(),this.applyDefaultAriaLabel(y(this.#e.getLabel(n),this.#t.value,this.#e.getLabelParams(n))),this.#r.sync(n,this.#t.value,this.#t.locale),this.publishMenuMetadata(n.disabled,n.availability)),super.update(e),n&&d(this,n,w)}},M=class extends f{constructor(...e){super(...e),this.seconds=O.defaultProps.seconds,this.core=new O,this.stateAttrMap=k,this.mediaState=new g(this,v,t),this.hotkeyAction=`seekStep`}static{this.tagName=`media-seek-button`}static{this.properties={...f.properties,seconds:{type:Number}}}get hotkeyValue(){return this.seconds}activate(e){this.core.seek(e)}};export{j as n,A as r,M as t};
|
|
2
|
-
//# sourceMappingURL=seek-button-element-DxLmm58Y.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"seek-button-element-DxLmm58Y.js","names":["#props","#media","resolveText","#props","#media","resolveText","#props","#media","resolveText","#mediaState","#core","#i18n","#options"],"sources":["../../core/dist/default/core/ui/playback-rate-button/playback-rate-button-core.js","../../core/dist/default/core/ui/playback-rate-button/playback-rate-button-data-attrs.js","../../core/dist/default/core/ui/playback-rate-radio-group/playback-rate-radio-group-core.js","../../core/dist/default/core/ui/playback-rate-radio-group/playback-rate-radio-group-data-attrs.js","../../core/dist/default/i18n/text/seek.js","../../core/dist/default/core/ui/seek-button/seek-button-core.js","../../core/dist/default/core/ui/seek-button/seek-button-data-attrs.js","../src/ui/playback-rate-button/playback-rate-button-element.ts","../src/ui/playback-rate-radio-group/playback-rate-radio-group-element.ts","../src/ui/seek-button/seek-button-element.ts"],"sourcesContent":["import { resolveText } from \"../../i18n/resolve-text.js\";\nimport { resolveLabel } from \"../utils/resolve-label.js\";\nimport { rateText } from \"../../../i18n/text/playback.js\";\nimport { createState } from \"@videojs/store\";\nimport { defaults } from \"@videojs/utils/object\";\n//#region src/core/ui/playback-rate-button/playback-rate-button-core.ts\nvar PlaybackRateButtonCore = class PlaybackRateButtonCore {\n\tstatic defaultProps = {\n\t\tlabel: \"\",\n\t\tdisabled: false,\n\t\tmenuTrigger: false\n\t};\n\tstate = createState({\n\t\trate: 1,\n\t\tlabel: \"\"\n\t});\n\t#props = { ...PlaybackRateButtonCore.defaultProps };\n\t#media = null;\n\tconstructor(props) {\n\t\tif (props) this.setProps(props);\n\t}\n\tsetProps(props) {\n\t\tthis.#props = defaults(props, PlaybackRateButtonCore.defaultProps);\n\t}\n\tgetLabel(state) {\n\t\tconst custom = resolveLabel(this.#props.label, state);\n\t\tif (custom !== void 0) return custom;\n\t\treturn rateText;\n\t}\n\tgetLabelParams(state) {\n\t\tif (resolveLabel(this.#props.label, state) !== void 0) return void 0;\n\t\treturn { rate: state.rate };\n\t}\n\tgetAttrs(state) {\n\t\treturn {\n\t\t\t\"aria-label\": this.getLabel(state),\n\t\t\t\"aria-disabled\": this.#props.disabled ? \"true\" : void 0\n\t\t};\n\t}\n\tsetMedia(media) {\n\t\tthis.#media = media;\n\t}\n\tgetState() {\n\t\tconst media = this.#media;\n\t\tthis.state.patch({ rate: media.playbackRate });\n\t\tthis.state.patch({ label: resolveText(this.getLabel(this.state.current)) });\n\t\treturn this.state.current;\n\t}\n\tcycle(media) {\n\t\tif (this.#props.disabled) return;\n\t\tif (this.#props.menuTrigger) return;\n\t\tconst { playbackRates, playbackRate } = media;\n\t\tif (playbackRates.length === 0) return;\n\t\tconst idx = playbackRates.indexOf(playbackRate);\n\t\tconst next = idx === -1 ? playbackRates.find((r) => r > playbackRate) ?? playbackRates[0] : playbackRates[(idx + 1) % playbackRates.length];\n\t\tmedia.setPlaybackRate(next);\n\t}\n};\n//#endregion\nexport { PlaybackRateButtonCore };\n\n//# sourceMappingURL=playback-rate-button-core.js.map","//#region src/core/ui/playback-rate-button/playback-rate-button-data-attrs.ts\nconst PlaybackRateButtonDataAttrs = { \n/** Current playback rate. */\nrate: \"data-rate\" };\n//#endregion\nexport { PlaybackRateButtonDataAttrs };\n\n//# sourceMappingURL=playback-rate-button-data-attrs.js.map","import { resolveText } from \"../../i18n/resolve-text.js\";\nimport { resolveLabel } from \"../utils/resolve-label.js\";\nimport { playbackRateText } from \"../../../i18n/text/menu.js\";\nimport { createState } from \"@videojs/store\";\nimport { defaults } from \"@videojs/utils/object\";\nimport { isUndefined } from \"@videojs/utils/predicate\";\n//#region src/core/ui/playback-rate-radio-group/playback-rate-radio-group-core.ts\nfunction formatPlaybackRate(rate) {\n\treturn `${rate}×`;\n}\nvar PlaybackRateRadioGroupCore = class PlaybackRateRadioGroupCore {\n\tstatic defaultProps = {\n\t\tlabel: \"\",\n\t\tformatRate: formatPlaybackRate,\n\t\tdisabled: false\n\t};\n\tstate = createState({\n\t\trate: 1,\n\t\tvalue: \"1\",\n\t\toptions: [],\n\t\tdisabled: true,\n\t\thidden: true,\n\t\tavailability: \"unavailable\",\n\t\tlabel: \"\"\n\t});\n\t#props = { ...PlaybackRateRadioGroupCore.defaultProps };\n\t#media = null;\n\tconstructor(props) {\n\t\tif (props) this.setProps(props);\n\t}\n\tsetProps(props) {\n\t\tthis.#props = defaults(props, PlaybackRateRadioGroupCore.defaultProps);\n\t}\n\tgetLabel(state) {\n\t\tconst custom = resolveLabel(this.#props.label, state);\n\t\tif (custom !== void 0) return custom;\n\t\treturn playbackRateText;\n\t}\n\tgetLabelParams(_state) {}\n\tgetRateLabel(rate) {\n\t\treturn this.#props.formatRate(rate);\n\t}\n\tgetRateValue(rate) {\n\t\treturn String(rate);\n\t}\n\tgetAttrs(state) {\n\t\treturn {\n\t\t\t\"aria-label\": this.getLabel(state),\n\t\t\t\"aria-disabled\": state.disabled ? \"true\" : void 0,\n\t\t\thidden: state.hidden ? \"\" : void 0\n\t\t};\n\t}\n\tsetMedia(media) {\n\t\tthis.#media = media;\n\t}\n\tgetState() {\n\t\tconst media = this.#media;\n\t\tconst availability = media.playbackRates.length > 0 ? \"available\" : \"unavailable\";\n\t\tthis.state.patch({\n\t\t\trate: media.playbackRate,\n\t\t\tvalue: this.getRateValue(media.playbackRate),\n\t\t\toptions: media.playbackRates.map((rate) => ({\n\t\t\t\trate,\n\t\t\t\tvalue: this.getRateValue(rate),\n\t\t\t\tlabel: this.getRateLabel(rate),\n\t\t\t\tdisabled: false\n\t\t\t})),\n\t\t\tdisabled: this.#props.disabled || media.playbackRates.length === 0,\n\t\t\thidden: availability === \"unavailable\",\n\t\t\tavailability\n\t\t});\n\t\tthis.state.patch({ label: resolveText(this.getLabel(this.state.current)) });\n\t\treturn this.state.current;\n\t}\n\tselect(media, rate) {\n\t\tif (this.#props.disabled) return;\n\t\tif (!media.playbackRates.includes(rate)) return;\n\t\tmedia.setPlaybackRate(rate);\n\t}\n\tselectValue(media, value) {\n\t\tconst rate = media.playbackRates.find((candidate) => this.getRateValue(candidate) === value);\n\t\tif (isUndefined(rate)) return;\n\t\tthis.select(media, rate);\n\t}\n};\n//#endregion\nexport { PlaybackRateRadioGroupCore };\n\n//# sourceMappingURL=playback-rate-radio-group-core.js.map","//#region src/core/ui/playback-rate-radio-group/playback-rate-radio-group-data-attrs.ts\nconst PlaybackRateRadioGroupDataAttrs = {\n\t/** Current playback rate. */\n\trate: \"data-rate\",\n\t/** Present when playback rate selection is disabled. */\n\tdisabled: \"data-disabled\",\n\t/** Present when playback rate selection is unavailable. */\n\thidden: \"data-hidden\",\n\t/** Indicates playback rate availability (`available` or `unavailable`). */\n\tavailability: \"data-availability\"\n};\n//#endregion\nexport { PlaybackRateRadioGroupDataAttrs };\n\n//# sourceMappingURL=playback-rate-radio-group-data-attrs.js.map","//#region src/core/i18n/text/seek.ts\nconst prefix = \"seek.\";\nconst forwardText = {\n\tkey: `${prefix}forward`,\n\ttext: \"Seek forward {seconds} seconds\"\n};\nconst backwardText = {\n\tkey: `${prefix}backward`,\n\ttext: \"Seek backward {seconds} seconds\"\n};\n//#endregion\nexport { backwardText, forwardText };\n\n//# sourceMappingURL=seek.js.map","import { resolveText } from \"../../i18n/resolve-text.js\";\nimport { resolveLabel } from \"../utils/resolve-label.js\";\nimport { backwardText, forwardText } from \"../../../i18n/text/seek.js\";\nimport { createState } from \"@videojs/store\";\nimport { defaults } from \"@videojs/utils/object\";\n//#region src/core/ui/seek-button/seek-button-core.ts\nvar SeekButtonCore = class SeekButtonCore {\n\tstatic defaultProps = {\n\t\tseconds: 30,\n\t\tlabel: \"\",\n\t\tdisabled: false\n\t};\n\tstate = createState({\n\t\tseeking: false,\n\t\tdirection: \"forward\",\n\t\tlabel: \"\"\n\t});\n\t#props = { ...SeekButtonCore.defaultProps };\n\t#media = null;\n\tconstructor(props) {\n\t\tif (props) this.setProps(props);\n\t}\n\tsetProps(props) {\n\t\tthis.#props = defaults(props, SeekButtonCore.defaultProps);\n\t}\n\tgetLabel(state) {\n\t\tconst custom = resolveLabel(this.#props.label, state);\n\t\tif (custom !== void 0) return custom;\n\t\treturn state.direction === \"backward\" ? backwardText : forwardText;\n\t}\n\tgetLabelParams(state) {\n\t\tif (resolveLabel(this.#props.label, state) !== void 0) return void 0;\n\t\treturn { seconds: Math.abs(this.#props.seconds) };\n\t}\n\tgetAttrs(state) {\n\t\treturn {\n\t\t\t\"aria-label\": this.getLabel(state),\n\t\t\t\"aria-disabled\": this.#props.disabled ? \"true\" : void 0\n\t\t};\n\t}\n\tsetMedia(media) {\n\t\tthis.#media = media;\n\t}\n\tgetState() {\n\t\tconst media = this.#media;\n\t\tconst direction = this.#props.seconds < 0 ? \"backward\" : \"forward\";\n\t\tthis.state.patch({\n\t\t\tseeking: media.seeking,\n\t\t\tdirection\n\t\t});\n\t\tthis.state.patch({ label: resolveText(this.getLabel(this.state.current)) });\n\t\treturn this.state.current;\n\t}\n\tasync seek(media) {\n\t\tif (this.#props.disabled) return;\n\t\tawait media.seek(media.currentTime + this.#props.seconds);\n\t}\n};\n//#endregion\nexport { SeekButtonCore };\n\n//# sourceMappingURL=seek-button-core.js.map","//#region src/core/ui/seek-button/seek-button-data-attrs.ts\nconst SeekButtonDataAttrs = {\n\t/** Present when a seek is in progress. */\n\tseeking: \"data-seeking\",\n\t/** Indicates the seek direction: `\"forward\"` or `\"backward\"`. */\n\tdirection: \"data-direction\"\n};\n//#endregion\nexport { SeekButtonDataAttrs };\n\n//# sourceMappingURL=seek-button-data-attrs.js.map","import { PlaybackRateButtonCore, PlaybackRateButtonDataAttrs } from '@videojs/core';\nimport { applyElementProps, selectPlaybackRate, type UIEvent } from '@videojs/core/dom';\nimport type { PropertyDeclarationMap, PropertyValues } from '@videojs/element';\nimport type { MediaPlaybackRateState } from '@videojs/media';\n\nimport { playerContext } from '../../player/context';\nimport { PlayerController } from '../../player/player-controller';\nimport { toggleCommandTarget } from '../command-for';\nimport { MediaButtonElement } from '../media-button-element';\n\nexport class PlaybackRateButtonElement extends MediaButtonElement<PlaybackRateButtonCore> {\n static readonly tagName = 'media-playback-rate-button';\n\n static override properties = {\n label: { type: String },\n disabled: { type: Boolean },\n commandfor: { type: String },\n } satisfies PropertyDeclarationMap<'label' | 'disabled' | 'commandfor'>;\n\n commandfor: string | undefined = undefined;\n\n protected readonly core = new PlaybackRateButtonCore();\n protected readonly stateAttrMap = PlaybackRateButtonDataAttrs;\n protected readonly mediaState = new PlayerController(this, playerContext, selectPlaybackRate);\n protected override readonly hotkeyAction = 'speedUp';\n\n protected activate(state: MediaPlaybackRateState, event?: UIEvent): void {\n if (this.commandfor) {\n if (event instanceof KeyboardEvent) {\n toggleCommandTarget(this, this.commandfor);\n }\n return;\n }\n this.core.cycle(state);\n }\n\n protected override getIsButtonDisabled(): boolean {\n const media = this.mediaState.value;\n if (super.getIsButtonDisabled()) return true;\n if (this.commandfor && media && media.playbackRates.length === 0) return true;\n return false;\n }\n\n protected override willUpdate(changed: PropertyValues): void {\n super.willUpdate(changed);\n\n if (changed.has('commandfor')) {\n if (this.commandfor) {\n this.setAttribute('commandfor', this.commandfor);\n } else {\n this.removeAttribute('commandfor');\n }\n }\n }\n\n protected override update(changed: PropertyValues): void {\n super.update(changed);\n\n const media = this.mediaState.value;\n if (!media || !this.commandfor) return;\n\n applyElementProps(this, {\n 'aria-disabled': this.getIsButtonDisabled() ? 'true' : undefined,\n });\n }\n}\n\nexport namespace PlaybackRateButtonElement {\n export type State = PlaybackRateButtonCore.State;\n}\n","import {\n PlaybackRateRadioGroupCore,\n PlaybackRateRadioGroupDataAttrs,\n type PlaybackRateRadioGroupOption,\n} from '@videojs/core';\nimport { applyStateDataAttrs, logMissingFeature, selectPlaybackRate } from '@videojs/core/dom';\nimport { translateText } from '@videojs/core/i18n';\nimport type { PropertyDeclarationMap, PropertyValues } from '@videojs/element';\n\nimport { i18nContext } from '../../i18n/context';\nimport { I18nController } from '../../i18n/controller';\nimport { playerContext } from '../../player/context';\nimport { PlayerController } from '../../player/player-controller';\nimport { MenuRadioGroupElement } from '../menu/menu-radio-group-element';\nimport { RadioOptionsController } from '../radio-options/radio-options-controller';\n\nexport class PlaybackRateRadioGroupElement extends MenuRadioGroupElement {\n static override readonly tagName = 'media-playback-rate-radio-group';\n\n static override properties = {\n ...MenuRadioGroupElement.properties,\n disabled: { type: Boolean },\n } satisfies PropertyDeclarationMap<'value' | 'disabled'>;\n\n disabled = false;\n formatRate = PlaybackRateRadioGroupCore.defaultProps.formatRate;\n\n readonly #core = new PlaybackRateRadioGroupCore();\n readonly #i18n = new I18nController(this, i18nContext);\n readonly #mediaState = new PlayerController(this, playerContext, selectPlaybackRate);\n readonly #options = new RadioOptionsController<PlaybackRateRadioGroupOption>(this, {\n setItemAttributes: (item, option) => item.setAttribute('data-rate', option.value),\n onValueChange: (value) => {\n const media = this.#mediaState.value;\n if (media) this.#core.selectValue(media, value);\n },\n });\n\n override connectedCallback(): void {\n super.connectedCallback();\n if (this.destroyed) return;\n\n if (__DEV__ && !this.#mediaState.value && this.#mediaState.displayName) {\n logMissingFeature(this.localName, this.#mediaState.displayName);\n }\n }\n\n protected override update(changed: PropertyValues): void {\n const media = this.#mediaState.value;\n let state: PlaybackRateRadioGroupCore.State | null = null;\n\n if (media) {\n this.#core.setProps({ formatRate: this.formatRate, disabled: this.disabled });\n this.#core.setMedia(media);\n state = this.#core.getState();\n\n this.applyDefaultAriaLabel(\n translateText(this.#core.getLabel(state), this.#i18n.value, this.#core.getLabelParams(state))\n );\n this.#options.sync(state, this.#i18n.value, this.#i18n.locale);\n this.publishMenuMetadata(state.disabled, state.availability);\n }\n\n super.update(changed);\n\n if (state) applyStateDataAttrs(this, state, PlaybackRateRadioGroupDataAttrs);\n }\n}\n\nexport namespace PlaybackRateRadioGroupElement {\n export type State = PlaybackRateRadioGroupCore.State;\n}\n","import { SeekButtonCore, SeekButtonDataAttrs } from '@videojs/core';\nimport { selectTime } from '@videojs/core/dom';\nimport type { PropertyDeclarationMap } from '@videojs/element';\nimport type { MediaTimeState } from '@videojs/media';\n\nimport { playerContext } from '../../player/context';\nimport { PlayerController } from '../../player/player-controller';\nimport { MediaButtonElement } from '../media-button-element';\n\nexport class SeekButtonElement extends MediaButtonElement<SeekButtonCore> {\n static readonly tagName = 'media-seek-button';\n\n static override properties: PropertyDeclarationMap = {\n ...MediaButtonElement.properties,\n seconds: { type: Number },\n };\n\n seconds = SeekButtonCore.defaultProps.seconds;\n\n protected readonly core = new SeekButtonCore();\n protected readonly stateAttrMap = SeekButtonDataAttrs;\n protected readonly mediaState = new PlayerController(this, playerContext, selectTime);\n protected override readonly hotkeyAction = 'seekStep';\n\n protected override get hotkeyValue(): number | undefined {\n return this.seconds;\n }\n\n protected activate(state: MediaTimeState): void {\n this.core.seek(state);\n }\n}\n"],"mappings":"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"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"seek-button-element-TErrbilI.js","names":["#props","#media","resolveText","#props","#media","resolveText","#props","#media","resolveText","#mediaState","#core","#i18n","#options"],"sources":["../../core/dist/dev/core/ui/playback-rate-button/playback-rate-button-core.js","../../core/dist/dev/core/ui/playback-rate-button/playback-rate-button-data-attrs.js","../../core/dist/dev/core/ui/playback-rate-radio-group/playback-rate-radio-group-core.js","../../core/dist/dev/core/ui/playback-rate-radio-group/playback-rate-radio-group-data-attrs.js","../../core/dist/dev/i18n/text/seek.js","../../core/dist/dev/core/ui/seek-button/seek-button-core.js","../../core/dist/dev/core/ui/seek-button/seek-button-data-attrs.js","../src/ui/playback-rate-button/playback-rate-button-element.ts","../src/ui/playback-rate-radio-group/playback-rate-radio-group-element.ts","../src/ui/seek-button/seek-button-element.ts"],"sourcesContent":["import { resolveText } from \"../../i18n/resolve-text.js\";\nimport { resolveLabel } from \"../utils/resolve-label.js\";\nimport { rateText } from \"../../../i18n/text/playback.js\";\nimport { createState } from \"@videojs/store\";\nimport { defaults } from \"@videojs/utils/object\";\n//#region src/core/ui/playback-rate-button/playback-rate-button-core.ts\nvar PlaybackRateButtonCore = class PlaybackRateButtonCore {\n\tstatic defaultProps = {\n\t\tlabel: \"\",\n\t\tdisabled: false,\n\t\tmenuTrigger: false\n\t};\n\tstate = createState({\n\t\trate: 1,\n\t\tlabel: \"\"\n\t});\n\t#props = { ...PlaybackRateButtonCore.defaultProps };\n\t#media = null;\n\tconstructor(props) {\n\t\tif (props) this.setProps(props);\n\t}\n\tsetProps(props) {\n\t\tthis.#props = defaults(props, PlaybackRateButtonCore.defaultProps);\n\t}\n\tgetLabel(state) {\n\t\tconst custom = resolveLabel(this.#props.label, state);\n\t\tif (custom !== void 0) return custom;\n\t\treturn rateText;\n\t}\n\tgetLabelParams(state) {\n\t\tif (resolveLabel(this.#props.label, state) !== void 0) return void 0;\n\t\treturn { rate: state.rate };\n\t}\n\tgetAttrs(state) {\n\t\treturn {\n\t\t\t\"aria-label\": this.getLabel(state),\n\t\t\t\"aria-disabled\": this.#props.disabled ? \"true\" : void 0\n\t\t};\n\t}\n\tsetMedia(media) {\n\t\tthis.#media = media;\n\t}\n\tgetState() {\n\t\tconst media = this.#media;\n\t\tthis.state.patch({ rate: media.playbackRate });\n\t\tthis.state.patch({ label: resolveText(this.getLabel(this.state.current)) });\n\t\treturn this.state.current;\n\t}\n\tcycle(media) {\n\t\tif (this.#props.disabled) return;\n\t\tif (this.#props.menuTrigger) return;\n\t\tconst { playbackRates, playbackRate } = media;\n\t\tif (playbackRates.length === 0) return;\n\t\tconst idx = playbackRates.indexOf(playbackRate);\n\t\tconst next = idx === -1 ? playbackRates.find((r) => r > playbackRate) ?? playbackRates[0] : playbackRates[(idx + 1) % playbackRates.length];\n\t\tmedia.setPlaybackRate(next);\n\t}\n};\n//#endregion\nexport { PlaybackRateButtonCore };\n\n//# sourceMappingURL=playback-rate-button-core.js.map","//#region src/core/ui/playback-rate-button/playback-rate-button-data-attrs.ts\nconst PlaybackRateButtonDataAttrs = { \n/** Current playback rate. */\nrate: \"data-rate\" };\n//#endregion\nexport { PlaybackRateButtonDataAttrs };\n\n//# sourceMappingURL=playback-rate-button-data-attrs.js.map","import { resolveText } from \"../../i18n/resolve-text.js\";\nimport { resolveLabel } from \"../utils/resolve-label.js\";\nimport { playbackRateText } from \"../../../i18n/text/menu.js\";\nimport { createState } from \"@videojs/store\";\nimport { defaults } from \"@videojs/utils/object\";\nimport { isUndefined } from \"@videojs/utils/predicate\";\n//#region src/core/ui/playback-rate-radio-group/playback-rate-radio-group-core.ts\nfunction formatPlaybackRate(rate) {\n\treturn `${rate}×`;\n}\nvar PlaybackRateRadioGroupCore = class PlaybackRateRadioGroupCore {\n\tstatic defaultProps = {\n\t\tlabel: \"\",\n\t\tformatRate: formatPlaybackRate,\n\t\tdisabled: false\n\t};\n\tstate = createState({\n\t\trate: 1,\n\t\tvalue: \"1\",\n\t\toptions: [],\n\t\tdisabled: true,\n\t\thidden: true,\n\t\tavailability: \"unavailable\",\n\t\tlabel: \"\"\n\t});\n\t#props = { ...PlaybackRateRadioGroupCore.defaultProps };\n\t#media = null;\n\tconstructor(props) {\n\t\tif (props) this.setProps(props);\n\t}\n\tsetProps(props) {\n\t\tthis.#props = defaults(props, PlaybackRateRadioGroupCore.defaultProps);\n\t}\n\tgetLabel(state) {\n\t\tconst custom = resolveLabel(this.#props.label, state);\n\t\tif (custom !== void 0) return custom;\n\t\treturn playbackRateText;\n\t}\n\tgetLabelParams(_state) {}\n\tgetRateLabel(rate) {\n\t\treturn this.#props.formatRate(rate);\n\t}\n\tgetRateValue(rate) {\n\t\treturn String(rate);\n\t}\n\tgetAttrs(state) {\n\t\treturn {\n\t\t\t\"aria-label\": this.getLabel(state),\n\t\t\t\"aria-disabled\": state.disabled ? \"true\" : void 0,\n\t\t\thidden: state.hidden ? \"\" : void 0\n\t\t};\n\t}\n\tsetMedia(media) {\n\t\tthis.#media = media;\n\t}\n\tgetState() {\n\t\tconst media = this.#media;\n\t\tconst availability = media.playbackRates.length > 0 ? \"available\" : \"unavailable\";\n\t\tthis.state.patch({\n\t\t\trate: media.playbackRate,\n\t\t\tvalue: this.getRateValue(media.playbackRate),\n\t\t\toptions: media.playbackRates.map((rate) => ({\n\t\t\t\trate,\n\t\t\t\tvalue: this.getRateValue(rate),\n\t\t\t\tlabel: this.getRateLabel(rate),\n\t\t\t\tdisabled: false\n\t\t\t})),\n\t\t\tdisabled: this.#props.disabled || media.playbackRates.length === 0,\n\t\t\thidden: availability === \"unavailable\",\n\t\t\tavailability\n\t\t});\n\t\tthis.state.patch({ label: resolveText(this.getLabel(this.state.current)) });\n\t\treturn this.state.current;\n\t}\n\tselect(media, rate) {\n\t\tif (this.#props.disabled) return;\n\t\tif (!media.playbackRates.includes(rate)) return;\n\t\tmedia.setPlaybackRate(rate);\n\t}\n\tselectValue(media, value) {\n\t\tconst rate = media.playbackRates.find((candidate) => this.getRateValue(candidate) === value);\n\t\tif (isUndefined(rate)) return;\n\t\tthis.select(media, rate);\n\t}\n};\n//#endregion\nexport { PlaybackRateRadioGroupCore };\n\n//# sourceMappingURL=playback-rate-radio-group-core.js.map","//#region src/core/ui/playback-rate-radio-group/playback-rate-radio-group-data-attrs.ts\nconst PlaybackRateRadioGroupDataAttrs = {\n\t/** Current playback rate. */\n\trate: \"data-rate\",\n\t/** Present when playback rate selection is disabled. */\n\tdisabled: \"data-disabled\",\n\t/** Present when playback rate selection is unavailable. */\n\thidden: \"data-hidden\",\n\t/** Indicates playback rate availability (`available` or `unavailable`). */\n\tavailability: \"data-availability\"\n};\n//#endregion\nexport { PlaybackRateRadioGroupDataAttrs };\n\n//# sourceMappingURL=playback-rate-radio-group-data-attrs.js.map","//#region src/core/i18n/text/seek.ts\nconst prefix = \"seek.\";\nconst forwardText = {\n\tkey: `${prefix}forward`,\n\ttext: \"Seek forward {seconds} seconds\"\n};\nconst backwardText = {\n\tkey: `${prefix}backward`,\n\ttext: \"Seek backward {seconds} seconds\"\n};\n//#endregion\nexport { backwardText, forwardText };\n\n//# sourceMappingURL=seek.js.map","import { resolveText } from \"../../i18n/resolve-text.js\";\nimport { resolveLabel } from \"../utils/resolve-label.js\";\nimport { backwardText, forwardText } from \"../../../i18n/text/seek.js\";\nimport { createState } from \"@videojs/store\";\nimport { defaults } from \"@videojs/utils/object\";\n//#region src/core/ui/seek-button/seek-button-core.ts\nvar SeekButtonCore = class SeekButtonCore {\n\tstatic defaultProps = {\n\t\tseconds: 30,\n\t\tlabel: \"\",\n\t\tdisabled: false\n\t};\n\tstate = createState({\n\t\tseeking: false,\n\t\tdirection: \"forward\",\n\t\tlabel: \"\"\n\t});\n\t#props = { ...SeekButtonCore.defaultProps };\n\t#media = null;\n\tconstructor(props) {\n\t\tif (props) this.setProps(props);\n\t}\n\tsetProps(props) {\n\t\tthis.#props = defaults(props, SeekButtonCore.defaultProps);\n\t}\n\tgetLabel(state) {\n\t\tconst custom = resolveLabel(this.#props.label, state);\n\t\tif (custom !== void 0) return custom;\n\t\treturn state.direction === \"backward\" ? backwardText : forwardText;\n\t}\n\tgetLabelParams(state) {\n\t\tif (resolveLabel(this.#props.label, state) !== void 0) return void 0;\n\t\treturn { seconds: Math.abs(this.#props.seconds) };\n\t}\n\tgetAttrs(state) {\n\t\treturn {\n\t\t\t\"aria-label\": this.getLabel(state),\n\t\t\t\"aria-disabled\": this.#props.disabled ? \"true\" : void 0\n\t\t};\n\t}\n\tsetMedia(media) {\n\t\tthis.#media = media;\n\t}\n\tgetState() {\n\t\tconst media = this.#media;\n\t\tconst direction = this.#props.seconds < 0 ? \"backward\" : \"forward\";\n\t\tthis.state.patch({\n\t\t\tseeking: media.seeking,\n\t\t\tdirection\n\t\t});\n\t\tthis.state.patch({ label: resolveText(this.getLabel(this.state.current)) });\n\t\treturn this.state.current;\n\t}\n\tasync seek(media) {\n\t\tif (this.#props.disabled) return;\n\t\tawait media.seek(media.currentTime + this.#props.seconds);\n\t}\n};\n//#endregion\nexport { SeekButtonCore };\n\n//# sourceMappingURL=seek-button-core.js.map","//#region src/core/ui/seek-button/seek-button-data-attrs.ts\nconst SeekButtonDataAttrs = {\n\t/** Present when a seek is in progress. */\n\tseeking: \"data-seeking\",\n\t/** Indicates the seek direction: `\"forward\"` or `\"backward\"`. */\n\tdirection: \"data-direction\"\n};\n//#endregion\nexport { SeekButtonDataAttrs };\n\n//# sourceMappingURL=seek-button-data-attrs.js.map","import { PlaybackRateButtonCore, PlaybackRateButtonDataAttrs } from '@videojs/core';\nimport { applyElementProps, selectPlaybackRate, type UIEvent } from '@videojs/core/dom';\nimport type { PropertyDeclarationMap, PropertyValues } from '@videojs/element';\nimport type { MediaPlaybackRateState } from '@videojs/media';\n\nimport { playerContext } from '../../player/context';\nimport { PlayerController } from '../../player/player-controller';\nimport { toggleCommandTarget } from '../command-for';\nimport { MediaButtonElement } from '../media-button-element';\n\nexport class PlaybackRateButtonElement extends MediaButtonElement<PlaybackRateButtonCore> {\n static readonly tagName = 'media-playback-rate-button';\n\n static override properties = {\n label: { type: String },\n disabled: { type: Boolean },\n commandfor: { type: String },\n } satisfies PropertyDeclarationMap<'label' | 'disabled' | 'commandfor'>;\n\n commandfor: string | undefined = undefined;\n\n protected readonly core = new PlaybackRateButtonCore();\n protected readonly stateAttrMap = PlaybackRateButtonDataAttrs;\n protected readonly mediaState = new PlayerController(this, playerContext, selectPlaybackRate);\n protected override readonly hotkeyAction = 'speedUp';\n\n protected activate(state: MediaPlaybackRateState, event?: UIEvent): void {\n if (this.commandfor) {\n if (event instanceof KeyboardEvent) {\n toggleCommandTarget(this, this.commandfor);\n }\n return;\n }\n this.core.cycle(state);\n }\n\n protected override getIsButtonDisabled(): boolean {\n const media = this.mediaState.value;\n if (super.getIsButtonDisabled()) return true;\n if (this.commandfor && media && media.playbackRates.length === 0) return true;\n return false;\n }\n\n protected override willUpdate(changed: PropertyValues): void {\n super.willUpdate(changed);\n\n if (changed.has('commandfor')) {\n if (this.commandfor) {\n this.setAttribute('commandfor', this.commandfor);\n } else {\n this.removeAttribute('commandfor');\n }\n }\n }\n\n protected override update(changed: PropertyValues): void {\n super.update(changed);\n\n const media = this.mediaState.value;\n if (!media || !this.commandfor) return;\n\n applyElementProps(this, {\n 'aria-disabled': this.getIsButtonDisabled() ? 'true' : undefined,\n });\n }\n}\n\nexport namespace PlaybackRateButtonElement {\n export type State = PlaybackRateButtonCore.State;\n}\n","import {\n PlaybackRateRadioGroupCore,\n PlaybackRateRadioGroupDataAttrs,\n type PlaybackRateRadioGroupOption,\n} from '@videojs/core';\nimport { applyStateDataAttrs, logMissingFeature, selectPlaybackRate } from '@videojs/core/dom';\nimport { translateText } from '@videojs/core/i18n';\nimport type { PropertyDeclarationMap, PropertyValues } from '@videojs/element';\n\nimport { i18nContext } from '../../i18n/context';\nimport { I18nController } from '../../i18n/controller';\nimport { playerContext } from '../../player/context';\nimport { PlayerController } from '../../player/player-controller';\nimport { MenuRadioGroupElement } from '../menu/menu-radio-group-element';\nimport { RadioOptionsController } from '../radio-options/radio-options-controller';\n\nexport class PlaybackRateRadioGroupElement extends MenuRadioGroupElement {\n static override readonly tagName = 'media-playback-rate-radio-group';\n\n static override properties = {\n ...MenuRadioGroupElement.properties,\n disabled: { type: Boolean },\n } satisfies PropertyDeclarationMap<'value' | 'disabled'>;\n\n disabled = false;\n formatRate = PlaybackRateRadioGroupCore.defaultProps.formatRate;\n\n readonly #core = new PlaybackRateRadioGroupCore();\n readonly #i18n = new I18nController(this, i18nContext);\n readonly #mediaState = new PlayerController(this, playerContext, selectPlaybackRate);\n readonly #options = new RadioOptionsController<PlaybackRateRadioGroupOption>(this, {\n setItemAttributes: (item, option) => item.setAttribute('data-rate', option.value),\n onValueChange: (value) => {\n const media = this.#mediaState.value;\n if (media) this.#core.selectValue(media, value);\n },\n });\n\n override connectedCallback(): void {\n super.connectedCallback();\n if (this.destroyed) return;\n\n if (__DEV__ && !this.#mediaState.value && this.#mediaState.displayName) {\n logMissingFeature(this.localName, this.#mediaState.displayName);\n }\n }\n\n protected override update(changed: PropertyValues): void {\n const media = this.#mediaState.value;\n let state: PlaybackRateRadioGroupCore.State | null = null;\n\n if (media) {\n this.#core.setProps({ formatRate: this.formatRate, disabled: this.disabled });\n this.#core.setMedia(media);\n state = this.#core.getState();\n\n this.applyDefaultAriaLabel(\n translateText(this.#core.getLabel(state), this.#i18n.value, this.#core.getLabelParams(state))\n );\n this.#options.sync(state, this.#i18n.value, this.#i18n.locale);\n this.publishMenuMetadata(state.disabled, state.availability);\n }\n\n super.update(changed);\n\n if (state) applyStateDataAttrs(this, state, PlaybackRateRadioGroupDataAttrs);\n }\n}\n\nexport namespace PlaybackRateRadioGroupElement {\n export type State = PlaybackRateRadioGroupCore.State;\n}\n","import { SeekButtonCore, SeekButtonDataAttrs } from '@videojs/core';\nimport { selectTime } from '@videojs/core/dom';\nimport type { PropertyDeclarationMap } from '@videojs/element';\nimport type { MediaTimeState } from '@videojs/media';\n\nimport { playerContext } from '../../player/context';\nimport { PlayerController } from '../../player/player-controller';\nimport { MediaButtonElement } from '../media-button-element';\n\nexport class SeekButtonElement extends MediaButtonElement<SeekButtonCore> {\n static readonly tagName = 'media-seek-button';\n\n static override properties: PropertyDeclarationMap = {\n ...MediaButtonElement.properties,\n seconds: { type: Number },\n };\n\n seconds = SeekButtonCore.defaultProps.seconds;\n\n protected readonly core = new SeekButtonCore();\n protected readonly stateAttrMap = SeekButtonDataAttrs;\n protected readonly mediaState = new PlayerController(this, playerContext, selectTime);\n protected override readonly hotkeyAction = 'seekStep';\n\n protected override get hotkeyValue(): number | undefined {\n return this.seconds;\n }\n\n protected activate(state: MediaTimeState): void {\n this.core.seek(state);\n }\n}\n"],"mappings":"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"}
|
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
import{u as e}from"./predicate-LbFu-fPH.js";import{nt as t}from"./compounds-CJ6SbYAh.js";import{F as n,H as r,P as i,U as a}from"./create-player-CbpxjDaZ.js";import{r as o}from"./media-element-Cp5PrNre.js";import{DEFAULT_LOCALE as s,createTranslator as c,findLocaleKeys as l,getBrowserTranslations as u,getI18nTranslations as d,loadLocale as f,onI18nRegistryChange as p,registerI18n as m,shouldAttemptBrowserTranslation as h,translateText as g}from"./i18n.js";function _(t,n,r=`en`){return!e(t)&&t.trim()!==``?t:!e(n)&&n.trim()!==``?n:r}function v(e){let t=e.getAttribute(`lang`)?.trim();if(t)return t;if(`lang`in e&&typeof e.lang==`string`){let t=e.lang.trim();if(t)return t}}function y(e){return t(e,v)}async function b(e,t,n){let r=n(e),i=await Promise.all(r.map(e=>t(e))),a=[],o={};for(let e=0;e<r.length;e++){let t=i[e];t&&Object.keys(t).length>0&&a.push(r[e])}for(let e=r.length-1;e>=0;e--){let t=i[e];t&&Object.assign(o,t)}return{merged:o,loadedTags:a}}function x(t){if(!(e(t)||t.trim()===``))return t.trim()}const S=new Set;let C,w=!1;const T=()=>{w=!1;for(let e of S)e()},E=()=>{w||(w=!0,queueMicrotask(T))};function D(){C||typeof document>`u`||(C=new MutationObserver(E),C.observe(document.documentElement,{subtree:!0,attributes:!0,attributeFilter:[`lang`],childList:!0}))}function O(){S.size||!C||(C.disconnect(),C=void 0,w=!1)}function k(e){return typeof document>`u`?()=>{}:(S.add(e),D(),()=>{S.delete(e),O()})}function A(e,t){return _(e,t)}function j(e){return A(x(e.lang),x(y(e.parentElement??(typeof document<`u`?document.documentElement:null))))}function M({context:e,loader:t=f}){return r=>{class i extends r{constructor(...t){super(...t),this.lang=``,this.#e=new a(this,{context:e,initialValue:{translator:n(),locale:s}}),this.#r=0,this.#i={},this.#a=0,this.#c={translator:n(),locale:s},this.#u=-1}static{this.properties={...r.properties,lang:{type:String,reflect:!0}}}#e;#t;#n;#r;#i;#a;#o;#s;#c;#l;#u;#d;get i18nValue(){return this.#c}connectedCallback(){super.connectedCallback(),this.#t=p(()=>{this.#r+=1,this.requestUpdate()}),this.#n=k(()=>this.requestUpdate()),this.#f(),this.#m(),this.requestUpdate()}disconnectedCallback(){super.disconnectedCallback(),this.#t?.(),this.#t=void 0,this.#n?.(),this.#n=void 0,this.#a+=1,this.#i={},this.#o=void 0,this.#s=void 0}willUpdate(e){super.willUpdate(e);let t=j(this);if(this.#o!==t){let e=this.#o!==void 0;this.#o=t;let n=!e&&this.#s!==void 0&&t!==this.#s;(e||n)&&this.#f()}this.#m()}#f(){let e=j(this);this.#s=e,this.#a+=1;let n=this.#a;this.#i={},(async()=>{let{merged:r,loadedTags:i}=await b(e,t,l);if(n===this.#a){if(h(e,i,r)){let t=await u(e);if(n!==this.#a)return;Object.keys(t).length&&m(e,t)}n===this.#a&&(this.#i=r,this.requestUpdate())}})()}#p(){return j(this)}#m(){let e=this.#p();if(this.#l===e&&this.#u===this.#r&&this.#d===this.#i)return;let t=c({...d(e),...this.#i},e);this.#c={translator:t,locale:e},this.#l=e,this.#u=this.#r,this.#d=this.#i,this.#e.setValue(this.#c)}}return i}}const N=M({context:r});var P=class extends N(o){static{this.tagName=`media-i18n`}};function F({context:e}){return t=>{class n extends t{constructor(...t){super(...t),this.#e=new i(this,e),this.token=``}static{this.properties={token:{type:String}}}#e;#t;connectedCallback(){this.#t??=this.textContent?.trim()??``,super.connectedCallback()}updated(e){if(super.updated(e),!this.#t){this.textContent=``;return}let t=this.token?{key:this.token,text:this.#t}:this.#t;this.textContent=typeof t==`string`?t:g(t,this.#e.value)}}return n}}const I=F({context:r});var L=class extends I(o){static{this.tagName=`media-text`}};export{P as n,L as t};
|
|
2
|
-
//# sourceMappingURL=text-element-Bsyglab8.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"time-slider-chapters-element-DPgaLdBt.js","names":["#props","#media","resolveText","#props","#media","resolveText","#result","#cues","#min","#max","#mediaState","#core","#i18n","#options","#setContent","#mediaState","#core","#i18n","#options","#core","#slider","#textTrack","#time","#segments","#core","#slider","#textTrack","#buffer","#time","#rendered","#getTemplateRoot","#setStyle","#templateChecked","#templateRoot"],"sources":["../../utils/dist/array/find-range-at.js","../../core/dist/dev/core/ui/audio-track-radio-group/audio-track-radio-group-core.js","../../core/dist/dev/core/ui/audio-track-radio-group/audio-track-radio-group-data-attrs.js","../../core/dist/dev/core/ui/quality-radio-group/quality-radio-group-core.js","../../core/dist/dev/core/ui/quality-radio-group/quality-radio-group-data-attrs.js","../../core/dist/dev/core/ui/slider/slider-segments-core.js","../../core/dist/dev/core/ui/time-slider/time-slider-chapters/core.js","../../core/dist/dev/core/ui/time-slider/time-slider-chapters/css-vars.js","../../core/dist/dev/core/ui/time-slider/time-slider-chapters/data-attrs.js","../src/ui/audio-track-radio-group/audio-track-radio-group-element.ts","../src/ui/quality-radio-group/quality-radio-group-element.ts","../src/ui/time-slider/time-slider-chapters/time-slider-chapter-title-element.ts","../src/ui/time-slider/time-slider-chapters/time-slider-chapters-element.ts"],"sourcesContent":["import { findLastIndexAtOrBefore } from \"./find-last-at-or-before.js\";\n//#region src/array/find-range-at.ts\n/** Finds the ordered range containing the target value. */\nfunction findRangeAt(ranges, value, getStart, getEnd) {\n\tconst index = findLastIndexAtOrBefore(ranges, value, getStart);\n\tif (index < 0) return void 0;\n\tconst range = ranges[index];\n\tconst end = getEnd(range);\n\tconst last = index === ranges.length - 1;\n\treturn value < end || last && value === end ? range : void 0;\n}\n//#endregion\nexport { findRangeAt };\n\n//# sourceMappingURL=find-range-at.js.map","import { resolveText } from \"../../i18n/resolve-text.js\";\nimport { resolveLabel } from \"../utils/resolve-label.js\";\nimport { audioText } from \"../../../i18n/text/menu.js\";\nimport { createState } from \"@videojs/store\";\nimport { defaults } from \"@videojs/utils/object\";\n//#region src/core/ui/audio-track-radio-group/audio-track-radio-group-core.ts\nfunction formatTrackLabel(track) {\n\tif (track.label) return track.label;\n\tif (track.language) return track.language;\n\tif (track.kind) return track.kind;\n\treturn audioText;\n}\nfunction getTrackValue(track, index) {\n\treturn track.id || String(index);\n}\nvar AudioTrackRadioGroupCore = class AudioTrackRadioGroupCore {\n\tstatic defaultProps = {\n\t\tlabel: \"\",\n\t\tformatTrack: formatTrackLabel,\n\t\tdisabled: false\n\t};\n\tstate = createState({\n\t\toptions: [],\n\t\tvalue: \"\",\n\t\tdisabled: true,\n\t\thidden: true,\n\t\tavailability: \"unavailable\",\n\t\tlabel: \"\"\n\t});\n\t#props = { ...AudioTrackRadioGroupCore.defaultProps };\n\t#media = null;\n\tconstructor(props) {\n\t\tif (props) this.setProps(props);\n\t}\n\tsetProps(props) {\n\t\tthis.#props = defaults(props, AudioTrackRadioGroupCore.defaultProps);\n\t}\n\tgetLabel(state) {\n\t\tconst label = resolveLabel(this.#props.label, state);\n\t\tif (label) return label;\n\t\treturn audioText;\n\t}\n\tgetTrackLabel(track) {\n\t\treturn this.#props.formatTrack(track);\n\t}\n\tgetAttrs(state) {\n\t\treturn {\n\t\t\t\"aria-label\": this.getLabel(state),\n\t\t\t\"aria-disabled\": state.disabled ? \"true\" : void 0,\n\t\t\thidden: state.hidden ? \"\" : void 0\n\t\t};\n\t}\n\tsetMedia(media) {\n\t\tthis.#media = media;\n\t}\n\tgetState() {\n\t\tconst media = this.#media;\n\t\tconst enabledIndex = media.audioTrackList.findIndex((track) => track.enabled);\n\t\tconst options = media.audioTrackList.map((track, index) => ({\n\t\t\tvalue: getTrackValue(track, index),\n\t\t\tlabel: this.getTrackLabel(track),\n\t\t\tdisabled: false\n\t\t}));\n\t\tconst availability = options.length > 1 ? \"available\" : \"unavailable\";\n\t\tthis.state.patch({\n\t\t\toptions,\n\t\t\tvalue: enabledIndex === -1 ? \"\" : getTrackValue(media.audioTrackList[enabledIndex], enabledIndex),\n\t\t\tdisabled: this.#props.disabled || availability === \"unavailable\",\n\t\t\thidden: availability === \"unavailable\",\n\t\t\tavailability\n\t\t});\n\t\tthis.state.patch({ label: resolveText(this.getLabel(this.state.current)) });\n\t\treturn this.state.current;\n\t}\n\tselect(media, value) {\n\t\tif (this.#props.disabled) return;\n\t\tif (!media.audioTrackList.some((track, index) => getTrackValue(track, index) === value)) return;\n\t\tmedia.selectAudioTrack(value);\n\t}\n\tselectValue(media, value) {\n\t\tthis.select(media, value);\n\t}\n};\n//#endregion\nexport { AudioTrackRadioGroupCore };\n\n//# sourceMappingURL=audio-track-radio-group-core.js.map","//#region src/core/ui/audio-track-radio-group/audio-track-radio-group-data-attrs.ts\nconst AudioTrackRadioGroupDataAttrs = {\n\t/** Current audio track value. */\n\tvalue: \"data-audio-track\",\n\t/** Present when audio track selection is disabled. */\n\tdisabled: \"data-disabled\",\n\t/** Present when audio track selection is unavailable. */\n\thidden: \"data-hidden\",\n\t/** Indicates audio track availability (`available` or `unavailable`). */\n\tavailability: \"data-availability\"\n};\n//#endregion\nexport { AudioTrackRadioGroupDataAttrs };\n\n//# sourceMappingURL=audio-track-radio-group-data-attrs.js.map","import { resolveText } from \"../../i18n/resolve-text.js\";\nimport { resolveLabel } from \"../utils/resolve-label.js\";\nimport { autoText, autoWithLabelText, qualityText } from \"../../../i18n/text/menu.js\";\nimport { createState } from \"@videojs/store\";\nimport { defaults } from \"@videojs/utils/object\";\n//#region src/core/ui/quality-radio-group/quality-radio-group-core.ts\nconst QUALITY_AUTO_VALUE = \"auto\";\nconst STANDARD_RENDITION_SIZES = [\n\t4320,\n\t2160,\n\t1440,\n\t1080,\n\t720,\n\t480,\n\t360,\n\t240\n];\nfunction formatBitrate(bitrate) {\n\treturn bitrate >= 1e6 ? `${Math.round(bitrate / 1e5) / 10} Mbps` : `${Math.round(bitrate / 1e3)} kbps`;\n}\nfunction getWidescreenSize(width) {\n\tconst size = Math.round(width * 9 / 16);\n\treturn STANDARD_RENDITION_SIZES.includes(size) ? size : void 0;\n}\nfunction getRenditionSize(rendition) {\n\tconst { width, height } = rendition;\n\tif (width && height) {\n\t\tif (width > height && width * 9 > height * 16) return getWidescreenSize(width) ?? height;\n\t\treturn Math.min(width, height);\n\t}\n\tif (height) return height;\n\tif (width) return getWidescreenSize(width) ?? width;\n}\nfunction hasSameSize(rendition, renditions) {\n\tconst size = getRenditionSize(rendition);\n\treturn Boolean(size && renditions.some((other) => other !== rendition && getRenditionSize(other) === size));\n}\nfunction formatRenditionLabel(rendition) {\n\tconst size = getRenditionSize(rendition);\n\tif (size) return `${size}p`;\n\tif (rendition.bitrate) return formatBitrate(rendition.bitrate);\n\treturn qualityText;\n}\nfunction formatRenditionBadge(rendition, renditions = []) {\n\tif (!getRenditionSize(rendition) || !rendition.bitrate || !hasSameSize(rendition, renditions)) return void 0;\n\treturn formatBitrate(rendition.bitrate);\n}\nfunction formatRenditionTier(rendition) {\n\tconst size = getRenditionSize(rendition);\n\tif (!size) return void 0;\n\tif (size >= 4320) return \"8K\";\n\tif (size >= 2160) return \"4K\";\n\tif (size >= 1080) return \"HD\";\n}\nfunction getRenditionValue(rendition, index) {\n\treturn rendition.id || String(index);\n}\nfunction isSameRendition(a, b) {\n\tif (a.id !== void 0 || b.id !== void 0) return a.id === b.id;\n\treturn a.width === b.width && a.height === b.height && a.bitrate === b.bitrate && a.frameRate === b.frameRate && a.codec === b.codec;\n}\nvar QualityRadioGroupCore = class QualityRadioGroupCore {\n\tstatic defaultProps = {\n\t\tlabel: \"\",\n\t\tformatRendition: formatRenditionLabel,\n\t\tdisabled: false\n\t};\n\tstate = createState({\n\t\toptions: [{\n\t\t\tvalue: QUALITY_AUTO_VALUE,\n\t\t\tlabel: autoText,\n\t\t\tdisabled: false\n\t\t}],\n\t\tvalue: QUALITY_AUTO_VALUE,\n\t\tdisabled: true,\n\t\thidden: true,\n\t\tavailability: \"unavailable\",\n\t\tlabel: \"\"\n\t});\n\t#props = { ...QualityRadioGroupCore.defaultProps };\n\t#media = null;\n\tconstructor(props) {\n\t\tif (props) this.setProps(props);\n\t}\n\tsetProps(props) {\n\t\tthis.#props = defaults(props, QualityRadioGroupCore.defaultProps);\n\t}\n\tgetLabel(state) {\n\t\tconst label = resolveLabel(this.#props.label, state);\n\t\tif (label) return label;\n\t\treturn qualityText;\n\t}\n\tgetRenditionLabel(rendition) {\n\t\tif (this.#props.formatRendition !== QualityRadioGroupCore.defaultProps.formatRendition) return this.#props.formatRendition(rendition);\n\t\treturn formatRenditionLabel(rendition);\n\t}\n\tgetRenditionBadge(rendition, renditions = []) {\n\t\tif (this.#props.formatRendition !== QualityRadioGroupCore.defaultProps.formatRendition) return void 0;\n\t\treturn formatRenditionBadge(rendition, renditions);\n\t}\n\tgetRenditionTier(rendition) {\n\t\tif (this.#props.formatRendition !== QualityRadioGroupCore.defaultProps.formatRendition) return void 0;\n\t\treturn formatRenditionTier(rendition);\n\t}\n\tgetRenditionValue(rendition, index) {\n\t\treturn getRenditionValue(rendition, index);\n\t}\n\tgetAttrs(state) {\n\t\treturn {\n\t\t\t\"aria-label\": this.getLabel(state),\n\t\t\t\"aria-disabled\": state.disabled ? \"true\" : void 0,\n\t\t\thidden: state.hidden ? \"\" : void 0\n\t\t};\n\t}\n\tsetMedia(media) {\n\t\tthis.#media = media;\n\t}\n\tgetState() {\n\t\tconst media = this.#media;\n\t\tconst selectedIndex = media.videoRenditionList.findIndex((rendition) => rendition.selected);\n\t\tconst availability = media.videoRenditionList.length > 1 ? \"available\" : \"unavailable\";\n\t\tconst toOption = (rendition, index) => {\n\t\t\tconst tier = this.getRenditionTier(rendition);\n\t\t\tconst badge = this.getRenditionBadge(rendition, media.videoRenditionList);\n\t\t\treturn {\n\t\t\t\tvalue: this.getRenditionValue(rendition, index),\n\t\t\t\tlabel: this.getRenditionLabel(rendition),\n\t\t\t\tdisabled: false,\n\t\t\t\t...tier && { tier },\n\t\t\t\t...badge && { badge }\n\t\t\t};\n\t\t};\n\t\tconst activeIndex = media.activeVideoRendition === null ? -1 : media.videoRenditionList.findIndex((rendition) => isSameRendition(rendition, media.activeVideoRendition));\n\t\tconst active = media.activeVideoRendition && activeIndex !== -1 ? toOption(media.activeVideoRendition, activeIndex) : void 0;\n\t\tconst autoOption = {\n\t\t\tvalue: QUALITY_AUTO_VALUE,\n\t\t\tlabel: selectedIndex === -1 && active ? autoWithLabelText : autoText,\n\t\t\tdisabled: false,\n\t\t\t...selectedIndex === -1 && active && { labelParams: { label: resolveText(active.label) } }\n\t\t};\n\t\tthis.state.patch({\n\t\t\toptions: [autoOption, ...media.videoRenditionList.map(toOption)],\n\t\t\tvalue: selectedIndex === -1 ? QUALITY_AUTO_VALUE : this.getRenditionValue(media.videoRenditionList[selectedIndex], selectedIndex),\n\t\t\tdisabled: this.#props.disabled || availability === \"unavailable\",\n\t\t\thidden: availability === \"unavailable\",\n\t\t\tavailability\n\t\t});\n\t\tthis.state.patch({ label: resolveText(this.getLabel(this.state.current)) });\n\t\treturn this.state.current;\n\t}\n\tselect(media, value) {\n\t\tif (this.#props.disabled) return;\n\t\tif (value === \"auto\") {\n\t\t\tmedia.selectVideoRendition(value);\n\t\t\treturn;\n\t\t}\n\t\tif (!media.videoRenditionList.some((rendition, index) => this.getRenditionValue(rendition, index) === value)) return;\n\t\tmedia.selectVideoRendition(value);\n\t}\n\tselectValue(media, value) {\n\t\tthis.select(media, value);\n\t}\n};\n//#endregion\nexport { QUALITY_AUTO_VALUE, QualityRadioGroupCore };\n\n//# sourceMappingURL=quality-radio-group-core.js.map","//#region src/core/ui/quality-radio-group/quality-radio-group-data-attrs.ts\nconst QualityRadioGroupDataAttrs = {\n\t/** Current quality value. */\n\tvalue: \"data-quality\",\n\t/** Present when quality selection is disabled. */\n\tdisabled: \"data-disabled\",\n\t/** Present when quality selection is unavailable. */\n\thidden: \"data-hidden\",\n\t/** Indicates quality availability (`available` or `unavailable`). */\n\tavailability: \"data-availability\"\n};\n//#endregion\nexport { QualityRadioGroupDataAttrs };\n\n//# sourceMappingURL=quality-radio-group-data-attrs.js.map","import { toPercent } from \"@videojs/utils/number\";\n//#region src/core/ui/slider/slider-segments-core.ts\n/** Localizes ordered numeric ranges into slider geometry and interaction state. */\nvar SliderSegmentsCore = class {\n\tgetGeometry(input) {\n\t\tconst { ranges, min, max, orientation } = input;\n\t\tconst domain = max - min;\n\t\tif (!Number.isFinite(domain) || domain <= 0) return [];\n\t\tconst valid = ranges.filter((segment) => {\n\t\t\tconst size = (segment.end - segment.start) / domain;\n\t\t\tconst offset = (segment.start - min) / domain;\n\t\t\treturn Number.isFinite(size) && Number.isFinite(offset) && size > 0;\n\t\t});\n\t\treturn valid.map((segment, index) => {\n\t\t\tconst offset = (segment.start - min) / domain;\n\t\t\tconst size = (segment.end - segment.start) / domain;\n\t\t\tconst segmentSize = `${size * 100}%`;\n\t\t\treturn {\n\t\t\t\t...segment,\n\t\t\t\tindex,\n\t\t\t\tlast: index === valid.length - 1,\n\t\t\t\torientation,\n\t\t\t\twidth: orientation === \"horizontal\" ? segmentSize : void 0,\n\t\t\t\theight: orientation === \"vertical\" ? segmentSize : void 0,\n\t\t\t\tstartPercent: `${offset * 100}%`,\n\t\t\t\tendPercent: `${(offset + size) * 100}%`\n\t\t\t};\n\t\t});\n\t}\n\tgetState(segment, slider, pointerValue) {\n\t\tconst { last, ...geometry } = segment;\n\t\tconst contains = (value) => value >= segment.start && (value < segment.end || last && value === segment.end);\n\t\tconst active = contains(slider.value);\n\t\tconst pointing = slider.pointing && contains(pointerValue);\n\t\tconst dragging = slider.dragging && contains(pointerValue);\n\t\tconst focused = slider.interactive && !slider.pointing && !slider.dragging;\n\t\treturn {\n\t\t\t...geometry,\n\t\t\tfillPercent: toPercent(slider.value, segment.start, segment.end),\n\t\t\tactive,\n\t\t\tpointing,\n\t\t\tdragging,\n\t\t\thighlighted: segment.highlight !== false && pointing,\n\t\t\tinteractive: pointing || dragging || focused && active\n\t\t};\n\t}\n};\n//#endregion\nexport { SliderSegmentsCore };\n\n//# sourceMappingURL=slider-segments-core.js.map","import { toPercent } from \"@videojs/utils/number\";\nimport { findRangeAt } from \"@videojs/utils/array\";\n//#region src/core/ui/time-slider/time-slider-chapters/core.ts\nconst cueKeys = /* @__PURE__ */ new WeakMap();\nlet cueKey = 0;\nfunction getCueKey(cue) {\n\tlet key = cueKeys.get(cue);\n\tif (!key) {\n\t\tconst id = cue.id;\n\t\tkey = `cue-${typeof id === \"string\" && id ? `${id}-` : \"\"}${cueKey++}`;\n\t\tcueKeys.set(cue, key);\n\t}\n\treturn key;\n}\n/** Produces an ordered, non-overlapping, contiguous partition of the slider domain. */\nfunction normalizeChapterCues(cues, min, max) {\n\tif (!Number.isFinite(min) || !Number.isFinite(max) || max <= min) return [];\n\tconst sorted = cues.map((cue, index) => ({\n\t\tcue,\n\t\tindex,\n\t\tkey: getCueKey(cue)\n\t})).filter(({ cue }) => Number.isFinite(cue.startTime) && Number.isFinite(cue.endTime)).sort((a, b) => a.cue.startTime - b.cue.startTime || a.index - b.index);\n\tconst chapters = [];\n\tlet end = min;\n\tlet previousKey = \"start\";\n\tfor (const { cue, key } of sorted) {\n\t\tconst start = Math.max(min, cue.startTime);\n\t\tconst cueEnd = Math.min(max, cue.endTime);\n\t\tif (cueEnd <= start) continue;\n\t\tif (start > end) chapters.push({\n\t\t\tkey: `gap-${previousKey}-${key}`,\n\t\t\tstart: end,\n\t\t\tend: start,\n\t\t\tcue: null\n\t\t});\n\t\tconst segmentStart = Math.max(start, end);\n\t\tif (cueEnd <= segmentStart) continue;\n\t\tchapters.push({\n\t\t\tkey,\n\t\t\tstart: segmentStart,\n\t\t\tend: cueEnd,\n\t\t\tcue\n\t\t});\n\t\tend = cueEnd;\n\t\tpreviousKey = key;\n\t}\n\tif (chapters.length === 0) return [{\n\t\tkey: \"gap-start-end\",\n\t\tstart: min,\n\t\tend: max,\n\t\tcue: null\n\t}];\n\tif (end < max) chapters.push({\n\t\tkey: `gap-${previousKey}-end`,\n\t\tstart: end,\n\t\tend: max,\n\t\tcue: null\n\t});\n\treturn chapters;\n}\n/** Prepares chapter ranges and state for platform renderers. */\nvar TimeSliderChaptersCore = class {\n\t#cues = null;\n\t#min = 0;\n\t#max = 0;\n\t#result = null;\n\tgetRanges(cues, min, max) {\n\t\tif (this.#result && (this.#cues === cues || this.#cues?.length === 0 && cues.length === 0) && this.#min === min && this.#max === max) return this.#result;\n\t\tconst hasRange = max > min;\n\t\tconst rangeMax = hasRange ? max : min + 1;\n\t\tconst chapters = normalizeChapterCues(hasRange ? cues : [], min, rangeMax);\n\t\tconst ranges = chapters.map(({ key, start, end, cue }) => ({\n\t\t\tkey,\n\t\t\tstart,\n\t\t\tend,\n\t\t\thighlight: cue !== null\n\t\t}));\n\t\tthis.#cues = cues;\n\t\tthis.#min = min;\n\t\tthis.#max = max;\n\t\tthis.#result = {\n\t\t\tchapters,\n\t\t\tranges,\n\t\t\tmax: rangeMax\n\t\t};\n\t\treturn this.#result;\n\t}\n\tfindChapter(chapters, value) {\n\t\treturn findRangeAt(chapters, value, (chapter) => chapter.start, (chapter) => chapter.end);\n\t}\n\tgetState(segment, chapters, bufferedEnd) {\n\t\treturn {\n\t\t\t...segment,\n\t\t\tcue: chapters[segment.index]?.cue ?? null,\n\t\t\tbufferPercent: toPercent(bufferedEnd, segment.start, segment.end)\n\t\t};\n\t}\n};\n//#endregion\nexport { TimeSliderChaptersCore, normalizeChapterCues };\n\n//# sourceMappingURL=core.js.map","//#region src/core/ui/time-slider/time-slider-chapters/css-vars.ts\n/** CSS geometry and progress local to each chapter. */\nconst TimeSliderChapterCSSVars = {\n\tstart: \"--media-slider-chapter-start\",\n\tend: \"--media-slider-chapter-end\",\n\twidth: \"--media-slider-chapter-width\",\n\tfill: \"--media-slider-chapter-fill\",\n\tbuffer: \"--media-slider-chapter-buffer\"\n};\n//#endregion\nexport { TimeSliderChapterCSSVars };\n\n//# sourceMappingURL=css-vars.js.map","//#region src/core/ui/time-slider/time-slider-chapters/data-attrs.ts\nconst TimeSliderChapterDataAttrs = {\n\t/** Present when playback is within the chapter. */\n\tactive: \"data-active\",\n\t/** Present when pointer interaction highlights the chapter. */\n\thighlighted: \"data-highlighted\"\n};\n//#endregion\nexport { TimeSliderChapterDataAttrs };\n\n//# sourceMappingURL=data-attrs.js.map","import {\n AudioTrackRadioGroupCore,\n AudioTrackRadioGroupDataAttrs,\n type AudioTrackRadioGroupOption,\n} from '@videojs/core';\nimport { applyStateDataAttrs, logMissingFeature, selectAudioTrack } from '@videojs/core/dom';\nimport { type Text, translateText } from '@videojs/core/i18n';\nimport type { PropertyDeclarationMap, PropertyValues } from '@videojs/element';\nimport { i18nContext } from '../../i18n/context';\nimport { I18nController } from '../../i18n/controller';\nimport { playerContext } from '../../player/context';\nimport { PlayerController } from '../../player/player-controller';\nimport { MenuRadioGroupElement } from '../menu/menu-radio-group-element';\nimport { RadioOptionsController } from '../radio-options/radio-options-controller';\n\nexport class AudioTrackRadioGroupElement extends MenuRadioGroupElement {\n static override readonly tagName = 'media-audio-track-radio-group';\n\n static override properties = {\n ...MenuRadioGroupElement.properties,\n disabled: { type: Boolean },\n label: { type: String },\n } satisfies PropertyDeclarationMap<'value' | 'label' | 'disabled'>;\n\n disabled = false;\n label: Text | string = '';\n formatTrack = AudioTrackRadioGroupCore.defaultProps.formatTrack;\n\n readonly #core = new AudioTrackRadioGroupCore();\n readonly #i18n = new I18nController(this, i18nContext);\n readonly #mediaState = new PlayerController(this, playerContext, selectAudioTrack);\n readonly #options = new RadioOptionsController<AudioTrackRadioGroupOption>(this, {\n setItemAttributes: (item, option) => item.setAttribute('data-track', option.value),\n onValueChange: (value) => {\n const media = this.#mediaState.value;\n if (media) this.#core.selectValue(media, value);\n },\n });\n\n override connectedCallback(): void {\n super.connectedCallback();\n if (this.destroyed) return;\n\n if (__DEV__ && !this.#mediaState.value && this.#mediaState.displayName) {\n logMissingFeature(this.localName, this.#mediaState.displayName);\n }\n }\n\n protected override update(changed: PropertyValues): void {\n const media = this.#mediaState.value;\n let state: AudioTrackRadioGroupCore.State | null = null;\n\n if (media) {\n this.#core.setProps({ formatTrack: this.formatTrack, disabled: this.disabled, label: this.label });\n this.#core.setMedia(media);\n state = this.#core.getState();\n\n this.applyDefaultAriaLabel(translateText(this.#core.getLabel(state), this.#i18n.value));\n this.#options.sync(state, this.#i18n.value, this.#i18n.locale);\n this.publishMenuMetadata(state.disabled, state.availability);\n }\n\n super.update(changed);\n\n if (state) applyStateDataAttrs(this, state, AudioTrackRadioGroupDataAttrs);\n }\n}\n\nexport namespace AudioTrackRadioGroupElement {\n export type State = AudioTrackRadioGroupCore.State;\n}\n","import { QualityRadioGroupCore, QualityRadioGroupDataAttrs, type QualityRadioGroupOption } from '@videojs/core';\nimport { applyStateDataAttrs, logMissingFeature, selectQuality } from '@videojs/core/dom';\nimport { type Text, translateText } from '@videojs/core/i18n';\nimport type { PropertyDeclarationMap, PropertyValues } from '@videojs/element';\nimport { i18nContext } from '../../i18n/context';\nimport { I18nController } from '../../i18n/controller';\nimport { playerContext } from '../../player/context';\nimport { PlayerController } from '../../player/player-controller';\nimport { MenuRadioGroupElement } from '../menu/menu-radio-group-element';\nimport type { MenuRadioItemElement } from '../menu/menu-radio-item-element';\nimport { RadioOptionsController } from '../radio-options/radio-options-controller';\n\nexport class QualityRadioGroupElement extends MenuRadioGroupElement {\n static override readonly tagName = 'media-quality-radio-group';\n\n static override properties = {\n ...MenuRadioGroupElement.properties,\n disabled: { type: Boolean },\n label: { type: String },\n } satisfies PropertyDeclarationMap<'value' | 'label' | 'disabled'>;\n\n disabled = false;\n label: Text | string = '';\n formatRendition = QualityRadioGroupCore.defaultProps.formatRendition;\n\n readonly #core = new QualityRadioGroupCore();\n readonly #i18n = new I18nController(this, i18nContext);\n readonly #mediaState = new PlayerController(this, playerContext, selectQuality);\n readonly #options = new RadioOptionsController<QualityRadioGroupOption>(this, {\n renderItem: (item, label, option) => this.#setContent(item, label, option.tier, option.badge),\n setItemAttributes: (item, option) => item.setAttribute('data-rendition', option.value),\n getOptionCacheKey: (option) => `${option.tier ?? ''}:${option.badge ?? ''}`,\n onValueChange: (value) => {\n const media = this.#mediaState.value;\n if (media) this.#core.selectValue(media, value);\n },\n });\n\n override connectedCallback(): void {\n super.connectedCallback();\n if (this.destroyed) return;\n\n if (__DEV__ && !this.#mediaState.value && this.#mediaState.displayName) {\n logMissingFeature(this.localName, this.#mediaState.displayName);\n }\n }\n\n protected override update(changed: PropertyValues): void {\n const media = this.#mediaState.value;\n let state: QualityRadioGroupCore.State | null = null;\n\n if (media) {\n this.#core.setProps({ formatRendition: this.formatRendition, disabled: this.disabled, label: this.label });\n this.#core.setMedia(media);\n state = this.#core.getState();\n\n this.applyDefaultAriaLabel(translateText(this.#core.getLabel(state), this.#i18n.value));\n this.#options.sync(state, this.#i18n.value, this.#i18n.locale);\n this.publishMenuMetadata(state.disabled, state.availability);\n }\n\n super.update(changed);\n\n if (state) applyStateDataAttrs(this, state, QualityRadioGroupDataAttrs);\n }\n\n #setContent(item: MenuRadioItemElement, label: string, tier: string | undefined, badge: string | undefined): void {\n const labelPart = item.querySelector<HTMLElement>('[data-part~=\"label\"]');\n const tierPart = item.querySelector<HTMLElement>('[data-part~=\"tier\"]');\n const badgePart = item.querySelector<HTMLElement>('[data-part~=\"badge\"]');\n\n if (labelPart) {\n labelPart.textContent = label;\n }\n\n if (tierPart) {\n tierPart.textContent = tier ?? '';\n tierPart.hidden = !tier;\n }\n\n if (badgePart) {\n badgePart.textContent = badge ?? '';\n badgePart.hidden = !badge;\n }\n\n if (!labelPart && !tierPart && !badgePart) {\n item.textContent = [label, tier, badge].filter(Boolean).join(' ');\n }\n }\n}\n\nexport namespace QualityRadioGroupElement {\n export type State = QualityRadioGroupCore.State;\n}\n","import { TimeSliderChaptersCore } from '@videojs/core';\nimport { selectTextTrack, selectTime } from '@videojs/core/dom';\nimport type { PropertyValues } from '@videojs/element';\nimport { ContextConsumer } from '@videojs/element/context';\n\nimport { playerContext } from '../../../player/context';\nimport { PlayerController } from '../../../player/player-controller';\nimport { MediaElement } from '../../media-element';\nimport { sliderContext } from '../../slider/context';\n\n/** Displays the chapter title at the current pointer or keyboard position. */\nexport class TimeSliderChapterTitleElement extends MediaElement {\n static readonly tagName = 'media-time-slider-chapter-title';\n\n readonly #core = new TimeSliderChaptersCore();\n readonly #slider = new ContextConsumer(this, { context: sliderContext, subscribe: true });\n readonly #textTrack = new PlayerController(this, playerContext, selectTextTrack);\n readonly #time = new PlayerController(this, playerContext, selectTime);\n\n protected override update(_changed: PropertyValues): void {\n super.update(_changed);\n\n const slider = this.#slider.value;\n if (!slider) return;\n const duration = this.#time.value?.duration ?? 0;\n const { chapters } = this.#core.getRanges(this.#textTrack.value?.chaptersCues ?? [], 0, duration);\n const keyboard = slider.state.interactive && !slider.state.pointing && !slider.state.dragging;\n const value = slider.state.pointing || slider.state.dragging ? slider.pointerValue : slider.state.value;\n const chapter = this.#core.findChapter(chapters, value);\n\n this.textContent = chapter?.cue?.text ?? '';\n if (keyboard) {\n this.removeAttribute('aria-hidden');\n this.setAttribute('aria-live', 'polite');\n } else {\n this.setAttribute('aria-hidden', 'true');\n this.removeAttribute('aria-live');\n }\n }\n}\n","import {\n SliderSegmentsCore,\n TimeSliderChapterCSSVars,\n TimeSliderChapterDataAttrs,\n TimeSliderChaptersCore,\n} from '@videojs/core';\nimport { applyStateDataAttrs, selectBuffer, selectTextTrack, selectTime } from '@videojs/core/dom';\nimport type { PropertyValues } from '@videojs/element';\nimport { ContextConsumer } from '@videojs/element/context';\nimport { cloneTemplateRoot, getTemplateElement, getTemplateRoot } from '@videojs/utils/dom';\n\nimport { playerContext } from '../../../player/context';\nimport { PlayerController } from '../../../player/player-controller';\nimport { MediaElement } from '../../media-element';\nimport { sliderContext } from '../../slider/context';\n\n/**\n * Clones a light-DOM template once per normalized chapter range.\n *\n * The required template must contain exactly one HTML root element. When no chapter cues are available, the template\n * is cloned once for a full-duration range.\n */\nexport class TimeSliderChaptersElement extends MediaElement {\n static readonly tagName = 'media-time-slider-chapters';\n\n readonly #segments = new SliderSegmentsCore();\n readonly #core = new TimeSliderChaptersCore();\n readonly #slider = new ContextConsumer(this, { context: sliderContext, subscribe: true });\n readonly #textTrack = new PlayerController(this, playerContext, selectTextTrack);\n readonly #buffer = new PlayerController(this, playerContext, selectBuffer);\n readonly #time = new PlayerController(this, playerContext, selectTime);\n readonly #rendered = new Map<string, HTMLElement>();\n #templateRoot: HTMLElement | null = null;\n #templateChecked = false;\n\n override connectedCallback(): void {\n super.connectedCallback();\n this.setAttribute('aria-hidden', 'true');\n }\n\n protected override update(_changed: PropertyValues): void {\n super.update(_changed);\n\n const slider = this.#slider.value;\n const duration = this.#time.value?.duration ?? 0;\n const templateRoot = this.#getTemplateRoot();\n if (!slider) return;\n\n applyStateDataAttrs(this, slider.state, slider.stateAttrMap);\n if (!templateRoot) return;\n\n const { chapters, ranges, max } = this.#core.getRanges(this.#textTrack.value?.chaptersCues ?? [], 0, duration);\n\n const geometry = this.#segments.getGeometry({\n ranges,\n min: 0,\n max,\n orientation: slider.state.orientation,\n });\n const buffered = this.#buffer.value?.buffered ?? [];\n const bufferedEnd = buffered.length ? buffered[buffered.length - 1]![1] : 0;\n const next = new Map<string, HTMLElement>();\n\n for (const segment of geometry) {\n const state = this.#core.getState(\n this.#segments.getState(segment, slider.state, slider.pointerValue),\n chapters,\n bufferedEnd\n );\n let root = this.#rendered.get(state.key);\n\n if (!root) root = cloneTemplateRoot(templateRoot, this.ownerDocument);\n\n this.#setStyle(root, 'pointer-events', state.cue ? undefined : 'none');\n this.#setStyle(root, TimeSliderChapterCSSVars.start, state.startPercent);\n this.#setStyle(root, TimeSliderChapterCSSVars.end, state.endPercent);\n this.#setStyle(root, TimeSliderChapterCSSVars.width, state.width ?? state.height);\n this.#setStyle(root, TimeSliderChapterCSSVars.fill, `${state.fillPercent}%`);\n this.#setStyle(root, TimeSliderChapterCSSVars.buffer, `${state.bufferPercent}%`);\n applyStateDataAttrs(root, slider.state, slider.stateAttrMap);\n applyStateDataAttrs(root, state, TimeSliderChapterDataAttrs);\n\n next.set(state.key, root);\n }\n\n for (const [key, root] of this.#rendered) {\n if (!next.has(key)) root.remove();\n }\n\n let before: ChildNode | null = null;\n for (const root of [...next.values()].reverse()) {\n if (root.parentNode !== this || root.nextSibling !== before) this.insertBefore(root, before);\n before = root;\n }\n\n this.#rendered.clear();\n for (const [key, rendered] of next) this.#rendered.set(key, rendered);\n }\n\n #getTemplateRoot(): HTMLElement | null {\n if (this.#templateChecked) return this.#templateRoot;\n\n const template = getTemplateElement(this);\n if (!template) {\n for (const node of [...this.childNodes]) node.remove();\n return null;\n }\n\n this.#templateChecked = true;\n const root = getTemplateRoot(template);\n for (const node of [...this.childNodes]) {\n if (node !== template) node.remove();\n }\n if (root?.namespaceURI !== 'http://www.w3.org/1999/xhtml') {\n if (__DEV__) {\n console.warn(`[${this.localName}] template must contain exactly one HTML root element.`);\n }\n return null;\n }\n\n this.#templateRoot = root as HTMLElement;\n return this.#templateRoot;\n }\n\n #setStyle(element: HTMLElement, name: string, value: string | undefined): void {\n if (value === undefined) element.style.removeProperty(name);\n else element.style.setProperty(name, value);\n }\n}\n"],"mappings":"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"}
|
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
import{$ as e,A as t,B as n,C as r,D as i,E as a,H as o,L as s,U as c,V as l,Z as u,_ as d,et as f,j as p,q as m,rt as h,u as g,v as _,w as v,z as y}from"./compounds-CJ6SbYAh.js";import{H as b,P as x,j as S,n as C}from"./create-player-CbpxjDaZ.js";import{r as w}from"./translate-text-BPMWpzFm.js";import{n as T,t as E}from"./media-element-Cp5PrNre.js";import{r as D}from"./context-C2rsoDxk.js";import{translateText as O}from"./i18n.js";function k(e,t,n,r){let i=a(e,t,n);if(i<0)return;let o=e[i],s=r(o),c=i===e.length-1;return t<s||c&&t===s?o:void 0}function A(e){return e.label?e.label:e.language?e.language:e.kind?e.kind:l}function j(e,t){return e.id||String(t)}var M=class e{static defaultProps={label:``,formatTrack:A,disabled:!1};state=S({options:[],value:``,disabled:!0,hidden:!0,availability:`unavailable`,label:``});#e={...e.defaultProps};#t=null;constructor(e){e&&this.setProps(e)}setProps(t){this.#e=h(t,e.defaultProps)}getLabel(e){return r(this.#e.label,e)||l}getTrackLabel(e){return this.#e.formatTrack(e)}getAttrs(e){return{"aria-label":this.getLabel(e),"aria-disabled":e.disabled?`true`:void 0,hidden:e.hidden?``:void 0}}setMedia(e){this.#t=e}getState(){let e=this.#t,t=e.audioTrackList.findIndex(e=>e.enabled),n=e.audioTrackList.map((e,t)=>({value:j(e,t),label:this.getTrackLabel(e),disabled:!1})),r=n.length>1?`available`:`unavailable`;return this.state.patch({options:n,value:t===-1?``:j(e.audioTrackList[t],t),disabled:this.#e.disabled||r===`unavailable`,hidden:r===`unavailable`,availability:r}),this.state.patch({label:w(this.getLabel(this.state.current))}),this.state.current}select(e,t){this.#e.disabled||e.audioTrackList.some((e,n)=>j(e,n)===t)&&e.selectAudioTrack(t)}selectValue(e,t){this.select(e,t)}};const N={value:`data-audio-track`,disabled:`data-disabled`,hidden:`data-hidden`,availability:`data-availability`},P=`auto`,F=[4320,2160,1440,1080,720,480,360,240];function I(e){return e>=1e6?`${Math.round(e/1e5)/10} Mbps`:`${Math.round(e/1e3)} kbps`}function L(e){let t=Math.round(e*9/16);return F.includes(t)?t:void 0}function R(e){let{width:t,height:n}=e;if(t&&n)return t>n&&t*9>n*16?L(t)??n:Math.min(t,n);if(n)return n;if(t)return L(t)??t}function z(e,t){let n=R(e);return!!(n&&t.some(t=>t!==e&&R(t)===n))}function B(e){let t=R(e);return t?`${t}p`:e.bitrate?I(e.bitrate):m}function V(e,t=[]){if(!(!R(e)||!e.bitrate||!z(e,t)))return I(e.bitrate)}function H(e){let t=R(e);if(t){if(t>=4320)return`8K`;if(t>=2160)return`4K`;if(t>=1080)return`HD`}}function U(e,t){return e.id||String(t)}function W(e,t){return e.id!==void 0||t.id!==void 0?e.id===t.id:e.width===t.width&&e.height===t.height&&e.bitrate===t.bitrate&&e.frameRate===t.frameRate&&e.codec===t.codec}var G=class e{static defaultProps={label:``,formatRendition:B,disabled:!1};state=S({options:[{value:P,label:o,disabled:!1}],value:P,disabled:!0,hidden:!0,availability:`unavailable`,label:``});#e={...e.defaultProps};#t=null;constructor(e){e&&this.setProps(e)}setProps(t){this.#e=h(t,e.defaultProps)}getLabel(e){return r(this.#e.label,e)||m}getRenditionLabel(t){return this.#e.formatRendition===e.defaultProps.formatRendition?B(t):this.#e.formatRendition(t)}getRenditionBadge(t,n=[]){if(this.#e.formatRendition===e.defaultProps.formatRendition)return V(t,n)}getRenditionTier(t){if(this.#e.formatRendition===e.defaultProps.formatRendition)return H(t)}getRenditionValue(e,t){return U(e,t)}getAttrs(e){return{"aria-label":this.getLabel(e),"aria-disabled":e.disabled?`true`:void 0,hidden:e.hidden?``:void 0}}setMedia(e){this.#t=e}getState(){let e=this.#t,t=e.videoRenditionList.findIndex(e=>e.selected),n=e.videoRenditionList.length>1?`available`:`unavailable`,r=(t,n)=>{let r=this.getRenditionTier(t),i=this.getRenditionBadge(t,e.videoRenditionList);return{value:this.getRenditionValue(t,n),label:this.getRenditionLabel(t),disabled:!1,...r&&{tier:r},...i&&{badge:i}}},i=e.activeVideoRendition===null?-1:e.videoRenditionList.findIndex(t=>W(t,e.activeVideoRendition)),a=e.activeVideoRendition&&i!==-1?r(e.activeVideoRendition,i):void 0,s={value:P,label:t===-1&&a?c:o,disabled:!1,...t===-1&&a&&{labelParams:{label:w(a.label)}}};return this.state.patch({options:[s,...e.videoRenditionList.map(r)],value:t===-1?P:this.getRenditionValue(e.videoRenditionList[t],t),disabled:this.#e.disabled||n===`unavailable`,hidden:n===`unavailable`,availability:n}),this.state.patch({label:w(this.getLabel(this.state.current))}),this.state.current}select(e,t){if(!this.#e.disabled){if(t===`auto`){e.selectVideoRendition(t);return}e.videoRenditionList.some((e,n)=>this.getRenditionValue(e,n)===t)&&e.selectVideoRendition(t)}}selectValue(e,t){this.select(e,t)}};const K={value:`data-quality`,disabled:`data-disabled`,hidden:`data-hidden`,availability:`data-availability`};var q=class{getGeometry(e){let{ranges:t,min:n,max:r,orientation:i}=e,a=r-n;if(!Number.isFinite(a)||a<=0)return[];let o=t.filter(e=>{let t=(e.end-e.start)/a,r=(e.start-n)/a;return Number.isFinite(t)&&Number.isFinite(r)&&t>0});return o.map((e,t)=>{let r=(e.start-n)/a,s=(e.end-e.start)/a,c=`${s*100}%`;return{...e,index:t,last:t===o.length-1,orientation:i,width:i===`horizontal`?c:void 0,height:i===`vertical`?c:void 0,startPercent:`${r*100}%`,endPercent:`${(r+s)*100}%`}})}getState(e,t,n){let{last:r,...a}=e,o=t=>t>=e.start&&(t<e.end||r&&t===e.end),s=o(t.value),c=t.pointing&&o(n),l=t.dragging&&o(n),u=t.interactive&&!t.pointing&&!t.dragging;return{...a,fillPercent:i(t.value,e.start,e.end),active:s,pointing:c,dragging:l,highlighted:e.highlight!==!1&&c,interactive:c||l||u&&s}}};const J=new WeakMap;let Y=0;function X(e){let t=J.get(e);if(!t){let n=e.id;t=`cue-${typeof n==`string`&&n?`${n}-`:``}${Y++}`,J.set(e,t)}return t}function Z(e,t,n){if(!Number.isFinite(t)||!Number.isFinite(n)||n<=t)return[];let r=e.map((e,t)=>({cue:e,index:t,key:X(e)})).filter(({cue:e})=>Number.isFinite(e.startTime)&&Number.isFinite(e.endTime)).sort((e,t)=>e.cue.startTime-t.cue.startTime||e.index-t.index),i=[],a=t,o=`start`;for(let{cue:e,key:s}of r){let r=Math.max(t,e.startTime),c=Math.min(n,e.endTime);if(c<=r)continue;r>a&&i.push({key:`gap-${o}-${s}`,start:a,end:r,cue:null});let l=Math.max(r,a);c<=l||(i.push({key:s,start:l,end:c,cue:e}),a=c,o=s)}return i.length===0?[{key:`gap-start-end`,start:t,end:n,cue:null}]:(a<n&&i.push({key:`gap-${o}-end`,start:a,end:n,cue:null}),i)}var Q=class{#e=null;#t=0;#n=0;#r=null;getRanges(e,t,n){if(this.#r&&(this.#e===e||this.#e?.length===0&&e.length===0)&&this.#t===t&&this.#n===n)return this.#r;let r=n>t,i=r?n:t+1,a=Z(r?e:[],t,i),o=a.map(({key:e,start:t,end:n,cue:r})=>({key:e,start:t,end:n,highlight:r!==null}));return this.#e=e,this.#t=t,this.#n=n,this.#r={chapters:a,ranges:o,max:i},this.#r}findChapter(e,t){return k(e,t,e=>e.start,e=>e.end)}getState(e,t,n){return{...e,cue:t[e.index]?.cue??null,bufferPercent:i(n,e.start,e.end)}}};const $={start:`--media-slider-chapter-start`,end:`--media-slider-chapter-end`,width:`--media-slider-chapter-width`,fill:`--media-slider-chapter-fill`,buffer:`--media-slider-chapter-buffer`},ee={active:`data-active`,highlighted:`data-highlighted`};var te=class extends _{constructor(...e){super(...e),this.disabled=!1,this.label=``,this.formatTrack=M.defaultProps.formatTrack,this.#e=new M,this.#t=new x(this,b),this.#n=new C(this,D,t),this.#r=new d(this,{setItemAttributes:(e,t)=>e.setAttribute(`data-track`,t.value),onValueChange:e=>{let t=this.#n.value;t&&this.#e.selectValue(t,e)}})}static{this.tagName=`media-audio-track-radio-group`}static{this.properties={..._.properties,disabled:{type:Boolean},label:{type:String}}}#e;#t;#n;#r;connectedCallback(){super.connectedCallback(),this.destroyed}update(e){let t=this.#n.value,n=null;t&&(this.#e.setProps({formatTrack:this.formatTrack,disabled:this.disabled,label:this.label}),this.#e.setMedia(t),n=this.#e.getState(),this.applyDefaultAriaLabel(O(this.#e.getLabel(n),this.#t.value)),this.#r.sync(n,this.#t.value,this.#t.locale),this.publishMenuMetadata(n.disabled,n.availability)),super.update(e),n&&v(this,n,N)}},ne=class extends _{constructor(...e){super(...e),this.disabled=!1,this.label=``,this.formatRendition=G.defaultProps.formatRendition,this.#e=new G,this.#t=new x(this,b),this.#n=new C(this,D,s),this.#r=new d(this,{renderItem:(e,t,n)=>this.#i(e,t,n.tier,n.badge),setItemAttributes:(e,t)=>e.setAttribute(`data-rendition`,t.value),getOptionCacheKey:e=>`${e.tier??``}:${e.badge??``}`,onValueChange:e=>{let t=this.#n.value;t&&this.#e.selectValue(t,e)}})}static{this.tagName=`media-quality-radio-group`}static{this.properties={..._.properties,disabled:{type:Boolean},label:{type:String}}}#e;#t;#n;#r;connectedCallback(){super.connectedCallback(),this.destroyed}update(e){let t=this.#n.value,n=null;t&&(this.#e.setProps({formatRendition:this.formatRendition,disabled:this.disabled,label:this.label}),this.#e.setMedia(t),n=this.#e.getState(),this.applyDefaultAriaLabel(O(this.#e.getLabel(n),this.#t.value)),this.#r.sync(n,this.#t.value,this.#t.locale),this.publishMenuMetadata(n.disabled,n.availability)),super.update(e),n&&v(this,n,K)}#i(e,t,n,r){let i=e.querySelector(`[data-part~="label"]`),a=e.querySelector(`[data-part~="tier"]`),o=e.querySelector(`[data-part~="badge"]`);i&&(i.textContent=t),a&&(a.textContent=n??``,a.hidden=!n),o&&(o.textContent=r??``,o.hidden=!r),!i&&!a&&!o&&(e.textContent=[t,n,r].filter(Boolean).join(` `))}},re=class extends E{static{this.tagName=`media-time-slider-chapter-title`}#e=new Q;#t=new T(this,{context:g,subscribe:!0});#n=new C(this,D,y);#r=new C(this,D,n);update(e){super.update(e);let t=this.#t.value;if(!t)return;let n=this.#r.value?.duration??0,{chapters:r}=this.#e.getRanges(this.#n.value?.chaptersCues??[],0,n),i=t.state.interactive&&!t.state.pointing&&!t.state.dragging,a=t.state.pointing||t.state.dragging?t.pointerValue:t.state.value,o=this.#e.findChapter(r,a);this.textContent=o?.cue?.text??``,i?(this.removeAttribute(`aria-hidden`),this.setAttribute(`aria-live`,`polite`)):(this.setAttribute(`aria-hidden`,`true`),this.removeAttribute(`aria-live`))}},ie=class extends E{static{this.tagName=`media-time-slider-chapters`}#e=new q;#t=new Q;#n=new T(this,{context:g,subscribe:!0});#r=new C(this,D,y);#i=new C(this,D,p);#a=new C(this,D,n);#o=new Map;#s=null;#c=!1;connectedCallback(){super.connectedCallback(),this.setAttribute(`aria-hidden`,`true`)}update(e){super.update(e);let t=this.#n.value,n=this.#a.value?.duration??0,r=this.#l();if(!t||(v(this,t.state,t.stateAttrMap),!r))return;let{chapters:i,ranges:a,max:o}=this.#t.getRanges(this.#r.value?.chaptersCues??[],0,n),s=this.#e.getGeometry({ranges:a,min:0,max:o,orientation:t.state.orientation}),c=this.#i.value?.buffered??[],l=c.length?c[c.length-1][1]:0,d=new Map;for(let e of s){let n=this.#t.getState(this.#e.getState(e,t.state,t.pointerValue),i,l),a=this.#o.get(n.key);a||=u(r,this.ownerDocument),this.#u(a,`pointer-events`,n.cue?void 0:`none`),this.#u(a,$.start,n.startPercent),this.#u(a,$.end,n.endPercent),this.#u(a,$.width,n.width??n.height),this.#u(a,$.fill,`${n.fillPercent}%`),this.#u(a,$.buffer,`${n.bufferPercent}%`),v(a,t.state,t.stateAttrMap),v(a,n,ee),d.set(n.key,a)}for(let[e,t]of this.#o)d.has(e)||t.remove();let f=null;for(let e of[...d.values()].reverse())(e.parentNode!==this||e.nextSibling!==f)&&this.insertBefore(e,f),f=e;this.#o.clear();for(let[e,t]of d)this.#o.set(e,t)}#l(){if(this.#c)return this.#s;let t=e(this);if(!t){for(let e of[...this.childNodes])e.remove();return null}this.#c=!0;let n=f(t);for(let e of[...this.childNodes])e!==t&&e.remove();return n?.namespaceURI===`http://www.w3.org/1999/xhtml`?(this.#s=n,this.#s):null}#u(e,t,n){n===void 0?e.style.removeProperty(t):e.style.setProperty(t,n)}};export{te as i,re as n,ne as r,ie as t};
|
|
2
|
-
//# sourceMappingURL=time-slider-chapters-element-MdlcovBu.js.map
|
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
const e=`en`;function t(e){return typeof e==`string`?e:e.text}const n=/\{([^{}]+)\}/g;function r(e,t){return t?e.replace(n,(e,n)=>Object.hasOwn(t,n)?String(t[n]):e):e}function i(e,n,i){return typeof e==`string`?e:typeof n==`function`?n(e,i):r(t(e),n??i)}export{e as i,r as n,t as r,i as t};
|
|
2
|
-
//# sourceMappingURL=translate-text-BPMWpzFm.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"translate-text-BPMWpzFm.js","names":[],"sources":["../../utils/dist/i18n.js","../../core/dist/default/core/i18n/resolve-text.js","../../core/dist/default/core/i18n/utils/interpolate.js","../../core/dist/default/core/i18n/translate-text.js"],"sourcesContent":["//#region src/i18n/index.ts\n/** Default locale used when no player or ambient locale is available. */\nconst DEFAULT_LOCALE = \"en\";\n//#endregion\nexport { DEFAULT_LOCALE };\n\n//# sourceMappingURL=i18n.js.map","//#region src/core/i18n/resolve-text.ts\nfunction resolveText(text) {\n\treturn typeof text === \"string\" ? text : text.text;\n}\n//#endregion\nexport { resolveText };\n\n//# sourceMappingURL=resolve-text.js.map","//#region src/core/i18n/utils/interpolate.ts\nconst PLACEHOLDER = /\\{([^{}]+)\\}/g;\nfunction interpolate(template, params) {\n\tif (!params) return template;\n\treturn template.replace(PLACEHOLDER, (match, name) => {\n\t\treturn Object.hasOwn(params, name) ? String(params[name]) : match;\n\t});\n}\n//#endregion\nexport { interpolate };\n\n//# sourceMappingURL=interpolate.js.map","import { interpolate } from \"./utils/interpolate.js\";\nimport { resolveText } from \"./resolve-text.js\";\n//#region src/core/i18n/translate-text.ts\nfunction translateText(text, translatorOrParams, params) {\n\tif (typeof text === \"string\") return text;\n\tif (typeof translatorOrParams === \"function\") return translatorOrParams(text, params);\n\treturn interpolate(resolveText(text), translatorOrParams ?? params);\n}\n//#endregion\nexport { translateText };\n\n//# sourceMappingURL=translate-text.js.map"],"mappings":"AAEA,MAAM,EAAiB,KCDvB,SAAS,EAAY,EAAM,CAC1B,OAAO,OAAO,GAAS,SAAW,EAAO,EAAK,IAC/C,CCFA,MAAM,EAAc,gBACpB,SAAS,EAAY,EAAU,EAAQ,CAEtC,OADK,EACE,EAAS,QAAQ,GAAc,EAAO,IACrC,OAAO,OAAO,EAAQ,CAAI,EAAI,OAAO,EAAO,EAAK,EAAI,CAC5D,EAHmB,CAIrB,CCJA,SAAS,EAAc,EAAM,EAAoB,EAAQ,CAGxD,OAFI,OAAO,GAAS,SAAiB,EACjC,OAAO,GAAuB,WAAmB,EAAmB,EAAM,CAAM,EAC7E,EAAY,EAAY,CAAI,EAAG,GAAsB,CAAM,CACnE"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"translate-text-DP0CzUCC.js","names":[],"sources":["../../utils/dist/i18n.js","../../core/dist/dev/core/i18n/resolve-text.js","../../core/dist/dev/core/i18n/utils/interpolate.js","../../core/dist/dev/core/i18n/translate-text.js"],"sourcesContent":["//#region src/i18n/index.ts\n/** Default locale used when no player or ambient locale is available. */\nconst DEFAULT_LOCALE = \"en\";\n//#endregion\nexport { DEFAULT_LOCALE };\n\n//# sourceMappingURL=i18n.js.map","//#region src/core/i18n/resolve-text.ts\nfunction resolveText(text) {\n\treturn typeof text === \"string\" ? text : text.text;\n}\n//#endregion\nexport { resolveText };\n\n//# sourceMappingURL=resolve-text.js.map","//#region src/core/i18n/utils/interpolate.ts\nconst PLACEHOLDER = /\\{([^{}]+)\\}/g;\nfunction interpolate(template, params) {\n\tif (!params) return template;\n\treturn template.replace(PLACEHOLDER, (match, name) => {\n\t\treturn Object.hasOwn(params, name) ? String(params[name]) : match;\n\t});\n}\n//#endregion\nexport { interpolate };\n\n//# sourceMappingURL=interpolate.js.map","import { interpolate } from \"./utils/interpolate.js\";\nimport { resolveText } from \"./resolve-text.js\";\n//#region src/core/i18n/translate-text.ts\nfunction translateText(text, translatorOrParams, params) {\n\tif (typeof text === \"string\") return text;\n\tif (typeof translatorOrParams === \"function\") return translatorOrParams(text, params);\n\treturn interpolate(resolveText(text), translatorOrParams ?? params);\n}\n//#endregion\nexport { translateText };\n\n//# sourceMappingURL=translate-text.js.map"],"mappings":";;AAEA,MAAM,iBAAiB;;;;ACDvB,SAAS,YAAY,MAAM;CAC1B,OAAO,OAAO,SAAS,WAAW,OAAO,KAAK;AAC/C;;;;ACFA,MAAM,cAAc;AACpB,SAAS,YAAY,UAAU,QAAQ;CACtC,IAAI,CAAC,QAAQ,OAAO;CACpB,OAAO,SAAS,QAAQ,cAAc,OAAO,SAAS;EACrD,OAAO,OAAO,OAAO,QAAQ,IAAI,IAAI,OAAO,OAAO,KAAK,IAAI;CAC7D,CAAC;AACF;;;;ACJA,SAAS,cAAc,MAAM,oBAAoB,QAAQ;CACxD,IAAI,OAAO,SAAS,UAAU,OAAO;CACrC,IAAI,OAAO,uBAAuB,YAAY,OAAO,mBAAmB,MAAM,MAAM;CACpF,OAAO,YAAY,YAAY,IAAI,GAAG,sBAAsB,MAAM;AACnE"}
|
package/cdn/ui-CecDxhTX.js
DELETED
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
import{a as e,c as t,d as n,f as r,g as i,i as a,m as o,n as s,o as c,p as l,r as u,t as d}from"./compounds-CJ6SbYAh.js";import{i as f}from"./create-player-CbpxjDaZ.js";import{i as p}from"./context-C2rsoDxk.js";import{n as m,t as h}from"./text-element-Bsyglab8.js";import{t as g}from"./gesture-element-BNfMI8eh.js";import{i as _,n as v,r as y,t as b}from"./time-slider-chapters-element-MdlcovBu.js";import{a as x,i as S,n as C,o as w,r as T,s as E,t as D}from"./poster-element-S-rr412t.js";import{t as O}from"./live-button-element-CWfkQUoy.js";import{n as k,r as A,t as j}from"./seek-button-element-DxLmm58Y.js";import{t as M}from"./player-B0ccW5-n.js";p(M),p(f),p(m),d(),s(),u(),e(),p(b),p(v),c(),a(),t(),p(E),p(_),p(i),p(w),p(S),p(T),p(g),p(o),p(O),p(l),p(C),p(r),p(A),p(k),p(x),p(n),p(D),p(y),p(j),p(h);
|
|
2
|
-
//# sourceMappingURL=ui-CecDxhTX.js.map
|
package/cdn/ui-ChWM6Xz2.js
DELETED
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
import{a as e,c as t,d as n,f as r,g as i,i as a,m as o,n as s,o as c,p as l}from"./compounds-CJ6SbYAh.js";import{i as u}from"./create-player-CbpxjDaZ.js";import{i as d}from"./context-C2rsoDxk.js";import{n as f,t as p}from"./text-element-Bsyglab8.js";import{t as m}from"./gesture-element-BNfMI8eh.js";import{t as h}from"./live-button-element-CWfkQUoy.js";import{n as g,r as _,t as v}from"./seek-button-element-DxLmm58Y.js";import{t as y}from"./player-iIewo8Y9.js";d(y),d(u),d(f),s(),e(),c(),a(),t(),d(m),d(o),d(i),d(h),d(l),d(r),d(_),d(g),d(n),d(v),d(p);
|
|
2
|
-
//# sourceMappingURL=ui-ChWM6Xz2.js.map
|