@videojs/html 10.0.0-beta.22 → 10.0.0-beta.24
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/README.md +6 -0
- package/cdn/{abort-C9UiBdVU.js → abort-0nUH9HXc.js} +1 -1
- package/cdn/{abort-C9UiBdVU.js.map → abort-0nUH9HXc.js.map} +1 -1
- package/cdn/{abort-DsTff8mS.js → abort-DQxwCs92.js} +1 -1
- package/cdn/{abort-DsTff8mS.js.map → abort-DQxwCs92.js.map} +1 -1
- package/cdn/audio-minimal-ui.dev.js +2 -4
- package/cdn/audio-minimal-ui.js +1 -1
- package/cdn/audio-minimal.dev.js +22 -20
- 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 +2 -4
- package/cdn/audio-ui.js +1 -1
- package/cdn/audio.dev.js +22 -19
- package/cdn/audio.dev.js.map +1 -1
- package/cdn/audio.js +1 -1
- package/cdn/audio.js.map +1 -1
- package/cdn/background.dev.js +4 -4
- package/cdn/background.dev.js.map +1 -1
- package/cdn/background.js +1 -1
- package/cdn/background.js.map +1 -1
- package/cdn/base-CaXY3kMA.js +66 -0
- package/cdn/base-CaXY3kMA.js.map +1 -0
- package/cdn/base-JIGv_MlJ.js +2 -0
- package/cdn/base-JIGv_MlJ.js.map +1 -0
- package/cdn/compounds-CJ9NGNJr.js +8 -0
- package/cdn/compounds-CJ9NGNJr.js.map +1 -0
- package/cdn/{compounds-DD3MYkSc.js → compounds-DxdDY3jr.js} +2872 -537
- package/cdn/compounds-DxdDY3jr.js.map +1 -0
- package/cdn/create-player-B2W5yr5I.js +7 -0
- package/cdn/create-player-B2W5yr5I.js.map +1 -0
- package/cdn/{create-player-BKLw7l1a.js → create-player-_WED6HtK.js} +288 -183
- package/cdn/create-player-_WED6HtK.js.map +1 -0
- package/cdn/default-BtA2xVd7.js +33 -0
- package/cdn/default-BtA2xVd7.js.map +1 -0
- package/cdn/default-Ci15Ic2n.js +2 -0
- package/cdn/default-Ci15Ic2n.js.map +1 -0
- package/cdn/default-Ciudg7Lh.js +32 -0
- package/cdn/default-Ciudg7Lh.js.map +1 -0
- package/cdn/default-CmbctS5n.js +2 -0
- package/cdn/default-CmbctS5n.js.map +1 -0
- package/cdn/hls-CoCXCB8b.js +41 -0
- package/cdn/hls-CoCXCB8b.js.map +1 -0
- package/cdn/{hls-CcSAx_3I.js → hls-DjqAxSvY.js} +236 -21
- package/cdn/hls-DjqAxSvY.js.map +1 -0
- package/cdn/{hotkey-element-BONs_FyJ.js → hotkey-element-89VAnCrc.js} +47 -52
- package/cdn/hotkey-element-89VAnCrc.js.map +1 -0
- package/cdn/hotkey-element-CmUxzW-C.js +2 -0
- package/cdn/hotkey-element-CmUxzW-C.js.map +1 -0
- package/cdn/live-button-element-BMneBAzX.js +208 -0
- package/cdn/live-button-element-BMneBAzX.js.map +1 -0
- package/cdn/live-button-element-CPEl1qK3.js +2 -0
- package/cdn/live-button-element-CPEl1qK3.js.map +1 -0
- package/cdn/live-video-minimal.dev.d.ts +1 -0
- package/cdn/live-video-minimal.dev.js +193 -0
- package/cdn/live-video-minimal.dev.js.map +1 -0
- package/cdn/live-video-minimal.js +2 -0
- package/cdn/live-video-minimal.js.map +1 -0
- package/cdn/live-video.dev.d.ts +1 -0
- package/cdn/live-video.dev.js +194 -0
- package/cdn/live-video.dev.js.map +1 -0
- package/cdn/live-video.js +2 -0
- package/cdn/live-video.js.map +1 -0
- package/cdn/media/dash-video.dev.js +8 -7
- package/cdn/media/dash-video.dev.js.map +1 -1
- package/cdn/media/dash-video.js +6 -6
- package/cdn/media/dash-video.js.map +1 -1
- package/cdn/media/hls-video.dev.js +4 -4
- package/cdn/media/hls-video.js +1 -1
- package/cdn/media/hls-video.js.map +1 -1
- package/cdn/media/mux-audio.dev.js +8 -6
- package/cdn/media/mux-audio.dev.js.map +1 -1
- package/cdn/media/mux-audio.js +1 -1
- package/cdn/media/mux-audio.js.map +1 -1
- package/cdn/media/mux-video.dev.js +8 -6
- package/cdn/media/mux-video.dev.js.map +1 -1
- package/cdn/media/mux-video.js +1 -1
- package/cdn/media/mux-video.js.map +1 -1
- package/cdn/media/native-hls-video.dev.js +4 -4
- package/cdn/media/native-hls-video.js +1 -1
- package/cdn/media/native-hls-video.js.map +1 -1
- package/cdn/media/simple-hls-video.dev.js +3604 -2632
- package/cdn/media/simple-hls-video.dev.js.map +1 -1
- package/cdn/media/simple-hls-video.js +7 -7
- package/cdn/media/simple-hls-video.js.map +1 -1
- package/cdn/media-attach-mixin-0gzahJxP.js +2 -0
- package/cdn/{media-attach-mixin-C2wz0Qbd.js.map → media-attach-mixin-0gzahJxP.js.map} +1 -1
- package/cdn/{media-attach-mixin-CYoNe7Sh.js → media-attach-mixin-C1KQy-y8.js} +2 -2
- package/cdn/{media-attach-mixin-CYoNe7Sh.js.map → media-attach-mixin-C1KQy-y8.js.map} +1 -1
- package/cdn/minimal-BGKTRgLy.js +2 -0
- package/cdn/minimal-BGKTRgLy.js.map +1 -0
- package/cdn/minimal-BY8ZmNCh.js +33 -0
- package/cdn/minimal-BY8ZmNCh.js.map +1 -0
- package/cdn/minimal-D-o7FGL2.js +2 -0
- package/cdn/minimal-D-o7FGL2.js.map +1 -0
- package/cdn/minimal-b3s_qClU.js +32 -0
- package/cdn/minimal-b3s_qClU.js.map +1 -0
- package/cdn/minimal-ui-B0PWg1gR.js +2 -0
- package/cdn/minimal-ui-B0PWg1gR.js.map +1 -0
- package/cdn/minimal-ui-B6AtFmJO.js +2 -0
- package/cdn/minimal-ui-B6AtFmJO.js.map +1 -0
- package/cdn/minimal-ui-BjQUqQ_m.js +26 -0
- package/cdn/minimal-ui-BjQUqQ_m.js.map +1 -0
- package/cdn/minimal-ui-C2NRTvWx.js +38 -0
- package/cdn/minimal-ui-C2NRTvWx.js.map +1 -0
- package/cdn/{mux-BgWl50KW.js → mux-CJn4lTbv.js} +10 -10
- package/cdn/mux-CJn4lTbv.js.map +1 -0
- package/cdn/{mux-BhHIeG3e.js → mux-wKbnuUQu.js} +55 -20
- package/cdn/mux-wKbnuUQu.js.map +1 -0
- package/cdn/native-hls-1-isweaY.js +2 -0
- package/cdn/native-hls-1-isweaY.js.map +1 -0
- package/cdn/native-hls-D4f2-E9D.js +371 -0
- package/cdn/native-hls-D4f2-E9D.js.map +1 -0
- package/cdn/playback-rate-button-element-Ck7CCs0t.js +2 -0
- package/cdn/playback-rate-button-element-Ck7CCs0t.js.map +1 -0
- package/cdn/playback-rate-button-element-DN78puhg.js +79 -0
- package/cdn/playback-rate-button-element-DN78puhg.js.map +1 -0
- package/cdn/player-9_6BPhTP.js +16 -0
- package/cdn/player-9_6BPhTP.js.map +1 -0
- package/cdn/player-C6DIXZpP.js +16 -0
- package/cdn/player-C6DIXZpP.js.map +1 -0
- package/cdn/{player-BVGWmIbQ.js → player-ClV0UtoS.js} +3 -3
- package/cdn/{player-BVGWmIbQ.js.map → player-ClV0UtoS.js.map} +1 -1
- package/cdn/player-D7lHFQo6.js +2 -0
- package/cdn/player-D7lHFQo6.js.map +1 -0
- package/cdn/player-DzqwkiTI.js +2 -0
- package/cdn/{player-ChdQN3H5.js.map → player-DzqwkiTI.js.map} +1 -1
- package/cdn/player-_4EjFnET.js +2 -0
- package/cdn/player-_4EjFnET.js.map +1 -0
- package/cdn/poster-element-DmfmTRCV.js +2 -0
- package/cdn/poster-element-DmfmTRCV.js.map +1 -0
- package/cdn/{player-DX5Ka0vt.js → poster-element-IdY3MYJj.js} +18 -25
- package/cdn/poster-element-IdY3MYJj.js.map +1 -0
- package/cdn/{context-0rI_P6jf.js → predicate-Dqd8wbW6.js} +26 -2
- package/cdn/predicate-Dqd8wbW6.js.map +1 -0
- package/cdn/{context-CEFisYD0.js → predicate-Dxl3IuYh.js} +2 -2
- package/cdn/predicate-Dxl3IuYh.js.map +1 -0
- package/cdn/seek-button-element-BkC8xrVR.js +394 -0
- package/cdn/seek-button-element-BkC8xrVR.js.map +1 -0
- package/cdn/seek-button-element-C0uAXebE.js +2 -0
- package/cdn/seek-button-element-C0uAXebE.js.map +1 -0
- package/cdn/{shallow-equal-xh6Wj-hj.js → shallow-equal-D-fthE54.js} +1 -1
- package/cdn/{shallow-equal-xh6Wj-hj.js.map → shallow-equal-D-fthE54.js.map} +1 -1
- package/cdn/{shallow-equal-Daj3-_LC.js → shallow-equal-DSpD9PMp.js} +1 -1
- package/cdn/{shallow-equal-Daj3-_LC.js.map → shallow-equal-DSpD9PMp.js.map} +1 -1
- package/cdn/skin-element-D0TDGWJH.js +2 -0
- package/cdn/skin-element-D0TDGWJH.js.map +1 -0
- package/cdn/skin-element-mgqcAutZ.js +55 -0
- package/cdn/skin-element-mgqcAutZ.js.map +1 -0
- package/cdn/types-B_4Es-UH.js +20 -0
- package/cdn/types-B_4Es-UH.js.map +1 -0
- package/cdn/types-DRezN4yy.js +2 -0
- package/cdn/types-DRezN4yy.js.map +1 -0
- package/cdn/ui-BH0azXYN.js +2 -0
- package/cdn/ui-BH0azXYN.js.map +1 -0
- package/cdn/ui-B_E6hb1k.js +33 -0
- package/cdn/ui-B_E6hb1k.js.map +1 -0
- package/cdn/ui-ByhUcpaY.js +2 -0
- package/cdn/ui-ByhUcpaY.js.map +1 -0
- package/cdn/ui-DG0AlJbU.js +42 -0
- package/cdn/ui-DG0AlJbU.js.map +1 -0
- package/cdn/{video-host-BtD61mpF.js → video-host-BU9t26fe.js} +29 -16
- package/cdn/{video-host-BtD61mpF.js.map → video-host-BU9t26fe.js.map} +1 -1
- package/cdn/{video-host-LeB1FKfO.js → video-host-CvYvXa8l.js} +10 -10
- package/cdn/{video-host-LeB1FKfO.js.map → video-host-CvYvXa8l.js.map} +1 -1
- package/cdn/video-minimal-ui.dev.js +2 -4
- package/cdn/video-minimal-ui.js +1 -1
- package/cdn/video-minimal.dev.js +83 -20
- 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 +2 -4
- package/cdn/video-ui.js +1 -1
- package/cdn/video.dev.js +56 -17
- 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/background/skin.js +1 -1
- package/dist/default/_virtual/inline-css_src/define/background/skin.js.map +1 -1
- package/dist/default/_virtual/inline-css_src/define/global.js +6 -0
- package/dist/default/_virtual/inline-css_src/define/global.js.map +1 -0
- package/dist/default/_virtual/inline-css_src/define/live-audio/minimal-skin.js +6 -0
- package/dist/default/_virtual/inline-css_src/define/live-audio/minimal-skin.js.map +1 -0
- package/dist/default/_virtual/inline-css_src/define/live-audio/skin.js +6 -0
- package/dist/default/_virtual/inline-css_src/define/live-audio/skin.js.map +1 -0
- package/dist/default/_virtual/inline-css_src/define/live-video/minimal-skin.js +6 -0
- package/dist/default/_virtual/inline-css_src/define/live-video/minimal-skin.js.map +1 -0
- package/dist/default/_virtual/inline-css_src/define/live-video/skin.js +6 -0
- package/dist/default/_virtual/inline-css_src/define/live-video/skin.js.map +1 -0
- 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 +227 -108
- package/dist/default/define/audio/minimal-skin.js +1 -1
- package/dist/default/define/audio/minimal-skin.js.map +1 -1
- package/dist/default/define/audio/minimal-skin.tailwind.js +3 -2
- package/dist/default/define/audio/minimal-skin.tailwind.js.map +1 -1
- package/dist/default/define/audio/minimal-ui.js +8 -3
- package/dist/default/define/audio/minimal-ui.js.map +1 -1
- package/dist/default/define/audio/skin.css +253 -108
- package/dist/default/define/audio/skin.js +1 -1
- package/dist/default/define/audio/skin.js.map +1 -1
- package/dist/default/define/audio/skin.tailwind.js +2 -1
- package/dist/default/define/audio/skin.tailwind.js.map +1 -1
- package/dist/default/define/audio/ui.js +10 -1
- package/dist/default/define/audio/ui.js.map +1 -1
- package/dist/default/define/background/skin.css +4 -2
- package/dist/default/define/background/skin.js +1 -1
- package/dist/{dev/define/base.css → default/define/global.css} +12 -8
- package/dist/default/define/live-audio/minimal-skin.css +897 -0
- package/dist/default/define/live-audio/minimal-skin.js +26 -0
- package/dist/default/define/live-audio/minimal-skin.js.map +1 -0
- package/dist/default/define/live-audio/minimal-skin.tailwind.js +29 -0
- package/dist/default/define/live-audio/minimal-skin.tailwind.js.map +1 -0
- package/dist/default/define/live-audio/minimal-ui.js +26 -0
- package/dist/default/define/live-audio/minimal-ui.js.map +1 -0
- package/dist/default/define/live-audio/player.js +18 -0
- package/dist/default/define/live-audio/player.js.map +1 -0
- package/dist/default/define/live-audio/skin.css +939 -0
- package/dist/default/define/live-audio/skin.js +26 -0
- package/dist/default/define/live-audio/skin.js.map +1 -0
- package/dist/default/define/live-audio/skin.tailwind.js +28 -0
- package/dist/default/define/live-audio/skin.tailwind.js.map +1 -0
- package/dist/default/define/live-audio/ui.js +30 -0
- package/dist/default/define/live-audio/ui.js.map +1 -0
- package/dist/default/define/live-video/minimal-skin.css +1593 -0
- package/dist/default/define/live-video/minimal-skin.js +26 -0
- package/dist/default/define/live-video/minimal-skin.js.map +1 -0
- package/dist/default/define/live-video/minimal-skin.tailwind.js +31 -0
- package/dist/default/define/live-video/minimal-skin.tailwind.js.map +1 -0
- package/dist/default/define/live-video/minimal-ui.js +44 -0
- package/dist/default/define/live-video/minimal-ui.js.map +1 -0
- package/dist/default/define/live-video/player.js +18 -0
- package/dist/default/define/live-video/player.js.map +1 -0
- package/dist/default/define/live-video/skin.css +1595 -0
- package/dist/default/define/live-video/skin.js +26 -0
- package/dist/default/define/live-video/skin.js.map +1 -0
- package/dist/default/define/live-video/skin.tailwind.js +29 -0
- package/dist/default/define/live-video/skin.tailwind.js.map +1 -0
- package/dist/default/define/live-video/ui.js +44 -0
- package/dist/default/define/live-video/ui.js.map +1 -0
- package/dist/default/define/shared.css +4 -0
- package/dist/default/define/skin-element.js +3 -3
- package/dist/default/define/skin-element.js.map +1 -1
- package/dist/default/define/tailwind.css +66 -0
- package/dist/default/define/ui/compounds.js +43 -1
- package/dist/default/define/ui/compounds.js.map +1 -1
- package/dist/default/define/ui/menu.js +6 -0
- package/dist/default/define/ui/menu.js.map +1 -0
- package/dist/default/define/ui/playback-rate-menu.js +13 -0
- package/dist/default/define/ui/playback-rate-menu.js.map +1 -0
- package/dist/default/define/ui/seek-indicator-value.js +7 -0
- package/dist/default/define/ui/seek-indicator-value.js.map +1 -0
- package/dist/default/define/ui/seek-indicator.js +9 -0
- package/dist/default/define/ui/seek-indicator.js.map +1 -0
- package/dist/default/define/ui/status-announcer.js +7 -0
- package/dist/default/define/ui/status-announcer.js.map +1 -0
- package/dist/default/define/ui/status-indicator-value.js +7 -0
- package/dist/default/define/ui/status-indicator-value.js.map +1 -0
- package/dist/default/define/ui/status-indicator.js +9 -0
- package/dist/default/define/ui/status-indicator.js.map +1 -0
- package/dist/default/define/ui/volume-indicator-fill.js +7 -0
- package/dist/default/define/ui/volume-indicator-fill.js.map +1 -0
- package/dist/default/define/ui/volume-indicator-value.js +7 -0
- package/dist/default/define/ui/volume-indicator-value.js.map +1 -0
- package/dist/default/define/ui/volume-indicator.js +11 -0
- package/dist/default/define/ui/volume-indicator.js.map +1 -0
- package/dist/default/define/video/minimal-skin.css +571 -147
- package/dist/default/define/video/minimal-skin.js +1 -1
- package/dist/default/define/video/minimal-skin.js.map +1 -1
- package/dist/default/define/video/minimal-skin.tailwind.js +4 -2
- package/dist/default/define/video/minimal-skin.tailwind.js.map +1 -1
- package/dist/default/define/video/minimal-ui.js +13 -3
- package/dist/default/define/video/minimal-ui.js.map +1 -1
- package/dist/default/define/video/skin.css +581 -145
- package/dist/default/define/video/skin.js +1 -1
- package/dist/default/define/video/skin.js.map +1 -1
- package/dist/default/define/video/skin.tailwind.js +3 -2
- package/dist/default/define/video/skin.tailwind.js.map +1 -1
- package/dist/default/define/video/ui.js +11 -1
- package/dist/default/define/video/ui.js.map +1 -1
- package/dist/default/icons/default/index.js +19 -0
- package/dist/default/icons/dist/element/base.js +66 -0
- package/dist/default/icons/dist/element/base.js.map +1 -0
- package/dist/default/icons/dist/element/default/icons.js +25 -0
- package/dist/default/icons/dist/element/default/icons.js.map +1 -0
- package/dist/default/icons/dist/element/default/index.js +10 -0
- package/dist/default/icons/dist/element/default/index.js.map +1 -0
- package/dist/default/icons/dist/element/index.js +11 -0
- package/dist/default/icons/dist/element/index.js.map +1 -0
- package/dist/default/icons/dist/element/minimal/icons.js +25 -0
- package/dist/default/icons/dist/element/minimal/icons.js.map +1 -0
- package/dist/default/icons/dist/element/minimal/index.js +10 -0
- package/dist/default/icons/dist/element/minimal/index.js.map +1 -0
- package/dist/default/icons/dist/html/default/captions-off.js +6 -0
- package/dist/default/icons/dist/html/default/captions-off.js.map +1 -0
- package/dist/default/icons/dist/html/default/captions-on.js +6 -0
- package/dist/default/icons/dist/html/default/captions-on.js.map +1 -0
- package/dist/default/icons/dist/html/default/cast-enter.js +6 -0
- package/dist/default/icons/dist/html/default/cast-enter.js.map +1 -0
- package/dist/default/icons/dist/html/default/cast-exit.js +6 -0
- package/dist/default/icons/dist/html/default/cast-exit.js.map +1 -0
- package/dist/default/icons/dist/html/default/check.js +6 -0
- package/dist/default/icons/dist/html/default/check.js.map +1 -0
- package/dist/default/icons/dist/html/default/chevron.js +6 -0
- package/dist/default/icons/dist/html/default/chevron.js.map +1 -0
- package/dist/default/icons/dist/html/default/fullscreen-enter.js +6 -0
- package/dist/default/icons/dist/html/default/fullscreen-enter.js.map +1 -0
- package/dist/default/icons/dist/html/default/fullscreen-exit.js +6 -0
- package/dist/default/icons/dist/html/default/fullscreen-exit.js.map +1 -0
- package/dist/default/icons/dist/html/default/pause.js +6 -0
- package/dist/default/icons/dist/html/default/pause.js.map +1 -0
- package/dist/default/icons/dist/html/default/pip-enter.js +6 -0
- package/dist/default/icons/dist/html/default/pip-enter.js.map +1 -0
- package/dist/default/icons/dist/html/default/pip-exit.js +6 -0
- package/dist/default/icons/dist/html/default/pip-exit.js.map +1 -0
- package/dist/default/icons/dist/html/default/play.js +6 -0
- package/dist/default/icons/dist/html/default/play.js.map +1 -0
- package/dist/default/icons/dist/html/default/restart.js +6 -0
- package/dist/default/icons/dist/html/default/restart.js.map +1 -0
- package/dist/default/icons/dist/html/default/seek.js +6 -0
- package/dist/default/icons/dist/html/default/seek.js.map +1 -0
- package/dist/default/icons/dist/html/default/spinner.js +6 -0
- package/dist/default/icons/dist/html/default/spinner.js.map +1 -0
- package/dist/default/icons/dist/html/default/volume-high.js +6 -0
- package/dist/default/icons/dist/html/default/volume-high.js.map +1 -0
- package/dist/default/icons/dist/html/default/volume-low.js +6 -0
- package/dist/default/icons/dist/html/default/volume-low.js.map +1 -0
- package/dist/default/icons/dist/html/default/volume-off.js +6 -0
- package/dist/default/icons/dist/html/default/volume-off.js.map +1 -0
- package/dist/default/icons/dist/html/minimal/captions-off.js +6 -0
- package/dist/default/icons/dist/html/minimal/captions-off.js.map +1 -0
- package/dist/default/icons/dist/html/minimal/captions-on.js +6 -0
- package/dist/default/icons/dist/html/minimal/captions-on.js.map +1 -0
- package/dist/default/icons/dist/html/minimal/cast-enter.js +6 -0
- package/dist/default/icons/dist/html/minimal/cast-enter.js.map +1 -0
- package/dist/default/icons/dist/html/minimal/cast-exit.js +6 -0
- package/dist/default/icons/dist/html/minimal/cast-exit.js.map +1 -0
- package/dist/default/icons/dist/html/minimal/check.js +6 -0
- package/dist/default/icons/dist/html/minimal/check.js.map +1 -0
- package/dist/default/icons/dist/html/minimal/chevron.js +6 -0
- package/dist/default/icons/dist/html/minimal/chevron.js.map +1 -0
- package/dist/default/icons/dist/html/minimal/fullscreen-enter.js +6 -0
- package/dist/default/icons/dist/html/minimal/fullscreen-enter.js.map +1 -0
- package/dist/default/icons/dist/html/minimal/fullscreen-exit.js +6 -0
- package/dist/default/icons/dist/html/minimal/fullscreen-exit.js.map +1 -0
- package/dist/default/icons/dist/html/minimal/pause.js +6 -0
- package/dist/default/icons/dist/html/minimal/pause.js.map +1 -0
- package/dist/default/icons/dist/html/minimal/pip-enter.js +6 -0
- package/dist/default/icons/dist/html/minimal/pip-enter.js.map +1 -0
- package/dist/default/icons/dist/html/minimal/pip-exit.js +6 -0
- package/dist/default/icons/dist/html/minimal/pip-exit.js.map +1 -0
- package/dist/default/icons/dist/html/minimal/play.js +6 -0
- package/dist/default/icons/dist/html/minimal/play.js.map +1 -0
- package/dist/default/icons/dist/html/minimal/restart.js +6 -0
- package/dist/default/icons/dist/html/minimal/restart.js.map +1 -0
- package/dist/default/icons/dist/html/minimal/seek.js +6 -0
- package/dist/default/icons/dist/html/minimal/seek.js.map +1 -0
- package/dist/default/icons/dist/html/minimal/spinner.js +6 -0
- package/dist/default/icons/dist/html/minimal/spinner.js.map +1 -0
- package/dist/default/icons/dist/html/minimal/volume-high.js +6 -0
- package/dist/default/icons/dist/html/minimal/volume-high.js.map +1 -0
- package/dist/default/icons/dist/html/minimal/volume-low.js +6 -0
- package/dist/default/icons/dist/html/minimal/volume-low.js.map +1 -0
- package/dist/default/icons/dist/html/minimal/volume-off.js +6 -0
- package/dist/default/icons/dist/html/minimal/volume-off.js.map +1 -0
- package/dist/default/icons/dist/render/default/index.js +17 -15
- package/dist/default/icons/dist/render/default/index.js.map +1 -1
- package/dist/default/icons/dist/render/minimal/index.js +17 -15
- package/dist/default/icons/dist/render/minimal/index.js.map +1 -1
- package/dist/default/icons/element/default/index.js +1 -0
- package/dist/default/icons/element/index.js +1 -0
- package/dist/default/icons/element/minimal/index.js +1 -0
- package/dist/default/icons/index.js +19 -0
- package/dist/default/icons/minimal/index.js +19 -0
- package/dist/default/index.js +26 -1
- package/dist/default/media/mux-audio/index.js +4 -1
- package/dist/default/media/mux-audio/index.js.map +1 -1
- package/dist/default/media/mux-video/index.js +4 -1
- package/dist/default/media/mux-video/index.js.map +1 -1
- package/dist/default/player/context.js.map +1 -1
- package/dist/default/presets/live-audio.js +7 -0
- package/dist/default/presets/live-video.js +7 -0
- package/dist/default/skins/dist/default/default/tailwind/audio.tailwind.js +3 -2
- package/dist/default/skins/dist/default/default/tailwind/audio.tailwind.js.map +1 -1
- package/dist/default/skins/dist/default/default/tailwind/components/buffering.js +1 -1
- package/dist/default/skins/dist/default/default/tailwind/components/buffering.js.map +1 -1
- package/dist/default/skins/dist/default/default/tailwind/components/button.js +3 -2
- package/dist/default/skins/dist/default/default/tailwind/components/button.js.map +1 -1
- package/dist/default/skins/dist/default/default/tailwind/components/controls.js +1 -1
- package/dist/default/skins/dist/default/default/tailwind/components/controls.js.map +1 -1
- package/dist/default/skins/dist/default/default/tailwind/components/icon.js +1 -1
- package/dist/default/skins/dist/default/default/tailwind/components/icon.js.map +1 -1
- package/dist/default/skins/dist/default/default/tailwind/components/input-feedback.js +40 -0
- package/dist/default/skins/dist/default/default/tailwind/components/input-feedback.js.map +1 -0
- package/dist/default/skins/dist/default/default/tailwind/components/menu.js +12 -0
- package/dist/default/skins/dist/default/default/tailwind/components/menu.js.map +1 -0
- package/dist/default/skins/dist/default/default/tailwind/components/playback-rate.js +1 -1
- package/dist/default/skins/dist/default/default/tailwind/components/playback-rate.js.map +1 -1
- package/dist/default/skins/dist/default/default/tailwind/components/preview.js +1 -1
- package/dist/default/skins/dist/default/default/tailwind/components/preview.js.map +1 -1
- package/dist/default/skins/dist/default/default/tailwind/components/reset.js +7 -0
- package/dist/default/skins/dist/default/default/tailwind/components/reset.js.map +1 -0
- package/dist/default/skins/dist/default/default/tailwind/components/root.js +2 -1
- package/dist/default/skins/dist/default/default/tailwind/components/root.js.map +1 -1
- package/dist/default/skins/dist/default/default/tailwind/components/slider.js +1 -1
- 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 +13 -4
- package/dist/default/skins/dist/default/default/tailwind/video.tailwind.js.map +1 -1
- package/dist/default/skins/dist/default/minimal/tailwind/audio.tailwind.js +4 -2
- package/dist/default/skins/dist/default/minimal/tailwind/audio.tailwind.js.map +1 -1
- package/dist/default/skins/dist/default/minimal/tailwind/components/buffering.js +1 -1
- package/dist/default/skins/dist/default/minimal/tailwind/components/buffering.js.map +1 -1
- package/dist/default/skins/dist/default/minimal/tailwind/components/button.js +3 -2
- package/dist/default/skins/dist/default/minimal/tailwind/components/button.js.map +1 -1
- package/dist/default/skins/dist/default/minimal/tailwind/components/controls.js +1 -1
- package/dist/default/skins/dist/default/minimal/tailwind/components/controls.js.map +1 -1
- package/dist/default/skins/dist/default/minimal/tailwind/components/icon.js +1 -1
- package/dist/default/skins/dist/default/minimal/tailwind/components/icon.js.map +1 -1
- package/dist/default/skins/dist/default/minimal/tailwind/components/input-feedback.js +41 -0
- package/dist/default/skins/dist/default/minimal/tailwind/components/input-feedback.js.map +1 -0
- package/dist/default/skins/dist/default/minimal/tailwind/components/menu.js +12 -0
- package/dist/default/skins/dist/default/minimal/tailwind/components/menu.js.map +1 -0
- package/dist/default/skins/dist/default/minimal/tailwind/components/playback-rate.js +1 -1
- package/dist/default/skins/dist/default/minimal/tailwind/components/playback-rate.js.map +1 -1
- package/dist/default/skins/dist/default/minimal/tailwind/components/preview.js +1 -1
- package/dist/default/skins/dist/default/minimal/tailwind/components/preview.js.map +1 -1
- package/dist/default/skins/dist/default/minimal/tailwind/components/reset.js +7 -0
- package/dist/default/skins/dist/default/minimal/tailwind/components/reset.js.map +1 -0
- package/dist/default/skins/dist/default/minimal/tailwind/components/root.js +2 -1
- package/dist/default/skins/dist/default/minimal/tailwind/components/root.js.map +1 -1
- package/dist/default/skins/dist/default/minimal/tailwind/components/slider.js +1 -1
- 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 +6 -4
- package/dist/default/skins/dist/default/minimal/tailwind/video.tailwind.js.map +1 -1
- package/dist/default/store/provider-mixin.js +8 -3
- package/dist/default/store/provider-mixin.js.map +1 -1
- package/dist/default/ui/alert-dialog/alert-dialog-close-element.js +7 -5
- package/dist/default/ui/alert-dialog/alert-dialog-close-element.js.map +1 -1
- package/dist/default/ui/alert-dialog/alert-dialog-element.js +12 -6
- package/dist/default/ui/alert-dialog/alert-dialog-element.js.map +1 -1
- package/dist/default/ui/buffering-indicator/buffering-indicator-element.js +6 -3
- package/dist/default/ui/buffering-indicator/buffering-indicator-element.js.map +1 -1
- package/dist/default/ui/cast-button/cast-button-element.js +2 -2
- package/dist/default/ui/cast-button/cast-button-element.js.map +1 -1
- package/dist/default/ui/controls/controls-element.js +13 -1
- package/dist/default/ui/controls/controls-element.js.map +1 -1
- package/dist/default/ui/error-dialog/error-dialog-element.js +4 -1
- package/dist/default/ui/error-dialog/error-dialog-element.js.map +1 -1
- package/dist/default/ui/gesture/gesture-element.js +12 -8
- package/dist/default/ui/gesture/gesture-element.js.map +1 -1
- package/dist/default/ui/hotkey/hotkey-element.js +11 -7
- package/dist/default/ui/hotkey/hotkey-element.js.map +1 -1
- package/dist/default/ui/input-indicators/input-indicator-element.js +110 -0
- package/dist/default/ui/input-indicators/input-indicator-element.js.map +1 -0
- package/dist/default/ui/input-indicators/live-indicator.js +32 -0
- package/dist/default/ui/input-indicators/live-indicator.js.map +1 -0
- package/dist/default/ui/live-button/live-button-element.js +97 -0
- package/dist/default/ui/live-button/live-button-element.js.map +1 -0
- package/dist/default/ui/media-button-element.js +4 -2
- package/dist/default/ui/media-button-element.js.map +1 -1
- package/dist/default/ui/menu/context.js +10 -0
- package/dist/default/ui/menu/context.js.map +1 -0
- package/dist/default/ui/menu/menu-back-element.js +57 -0
- package/dist/default/ui/menu/menu-back-element.js.map +1 -0
- package/dist/default/ui/menu/menu-checkbox-item-element.js +78 -0
- package/dist/default/ui/menu/menu-checkbox-item-element.js.map +1 -0
- package/dist/default/ui/menu/menu-element.js +285 -0
- package/dist/default/ui/menu/menu-element.js.map +1 -0
- package/dist/default/ui/menu/menu-group-element.js +35 -0
- package/dist/default/ui/menu/menu-group-element.js.map +1 -0
- package/dist/default/ui/menu/menu-item-element.js +96 -0
- package/dist/default/ui/menu/menu-item-element.js.map +1 -0
- package/dist/default/ui/menu/menu-item-indicator-element.js +34 -0
- package/dist/default/ui/menu/menu-item-indicator-element.js.map +1 -0
- package/dist/default/ui/menu/menu-label-element.js +20 -0
- package/dist/default/ui/menu/menu-label-element.js.map +1 -0
- package/dist/default/ui/menu/menu-radio-group-element.js +51 -0
- package/dist/default/ui/menu/menu-radio-group-element.js.map +1 -0
- package/dist/default/ui/menu/menu-radio-item-element.js +84 -0
- package/dist/default/ui/menu/menu-radio-item-element.js.map +1 -0
- package/dist/default/ui/menu/menu-separator-element.js +24 -0
- package/dist/default/ui/menu/menu-separator-element.js.map +1 -0
- package/dist/default/ui/menu/menu-view-element.js +16 -0
- package/dist/default/ui/menu/menu-view-element.js.map +1 -0
- package/dist/default/ui/playback-rate-menu/playback-rate-menu-element.js +47 -0
- package/dist/default/ui/playback-rate-menu/playback-rate-menu-element.js.map +1 -0
- package/dist/default/ui/playback-rate-menu/playback-rate-menu-trigger-element.js +85 -0
- package/dist/default/ui/playback-rate-menu/playback-rate-menu-trigger-element.js.map +1 -0
- package/dist/default/ui/playback-rate-menu/playback-rate-options-element.js +113 -0
- package/dist/default/ui/playback-rate-menu/playback-rate-options-element.js.map +1 -0
- package/dist/default/ui/popover/popover-element.js +44 -16
- package/dist/default/ui/popover/popover-element.js.map +1 -1
- package/dist/default/ui/position-controller.js +11 -6
- package/dist/default/ui/position-controller.js.map +1 -1
- package/dist/default/ui/seek-indicator/seek-indicator-element.js +44 -0
- package/dist/default/ui/seek-indicator/seek-indicator-element.js.map +1 -0
- package/dist/default/ui/seek-indicator/seek-indicator-value-element.js +11 -0
- package/dist/default/ui/seek-indicator/seek-indicator-value-element.js.map +1 -0
- package/dist/default/ui/slider/slider-element.js +8 -4
- package/dist/default/ui/slider/slider-element.js.map +1 -1
- package/dist/default/ui/slider/slider-preview-element.js +9 -6
- package/dist/default/ui/slider/slider-preview-element.js.map +1 -1
- package/dist/default/ui/slider/slider-value-element.js +5 -4
- package/dist/default/ui/slider/slider-value-element.js.map +1 -1
- package/dist/default/ui/status-announcer/status-announcer-element.js +70 -0
- package/dist/default/ui/status-announcer/status-announcer-element.js.map +1 -0
- package/dist/default/ui/status-indicator/status-indicator-element.js +53 -0
- package/dist/default/ui/status-indicator/status-indicator-element.js.map +1 -0
- package/dist/default/ui/status-indicator/status-indicator-value-element.js +11 -0
- package/dist/default/ui/status-indicator/status-indicator-value-element.js.map +1 -0
- package/dist/default/ui/thumbnail/thumbnail-element.js +10 -5
- package/dist/default/ui/thumbnail/thumbnail-element.js.map +1 -1
- package/dist/default/ui/time/time-element.js +8 -4
- package/dist/default/ui/time/time-element.js.map +1 -1
- package/dist/default/ui/time-slider/time-slider-element.js +12 -6
- package/dist/default/ui/time-slider/time-slider-element.js.map +1 -1
- package/dist/default/ui/tooltip/tooltip-element.js +43 -16
- package/dist/default/ui/tooltip/tooltip-element.js.map +1 -1
- package/dist/default/ui/tooltip/tooltip-group-element.js +7 -5
- package/dist/default/ui/tooltip/tooltip-group-element.js.map +1 -1
- package/dist/default/ui/volume-indicator/volume-indicator-element.js +46 -0
- package/dist/default/ui/volume-indicator/volume-indicator-element.js.map +1 -0
- package/dist/default/ui/volume-indicator/volume-indicator-fill-element.js +11 -0
- package/dist/default/ui/volume-indicator/volume-indicator-fill-element.js.map +1 -0
- package/dist/default/ui/volume-indicator/volume-indicator-value-element.js +11 -0
- package/dist/default/ui/volume-indicator/volume-indicator-value-element.js.map +1 -0
- package/dist/default/ui/volume-slider/volume-slider-element.js +10 -5
- package/dist/default/ui/volume-slider/volume-slider-element.js.map +1 -1
- package/dist/dev/_virtual/_rolldown/runtime.js +27 -0
- 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/background/skin.js +1 -1
- package/dist/dev/_virtual/inline-css_src/define/background/skin.js.map +1 -1
- package/dist/dev/_virtual/inline-css_src/define/global.js +6 -0
- package/dist/dev/_virtual/inline-css_src/define/global.js.map +1 -0
- package/dist/dev/_virtual/inline-css_src/define/live-audio/minimal-skin.js +6 -0
- package/dist/dev/_virtual/inline-css_src/define/live-audio/minimal-skin.js.map +1 -0
- package/dist/dev/_virtual/inline-css_src/define/live-audio/skin.js +6 -0
- package/dist/dev/_virtual/inline-css_src/define/live-audio/skin.js.map +1 -0
- package/dist/dev/_virtual/inline-css_src/define/live-video/minimal-skin.js +6 -0
- package/dist/dev/_virtual/inline-css_src/define/live-video/minimal-skin.js.map +1 -0
- package/dist/dev/_virtual/inline-css_src/define/live-video/skin.js +6 -0
- package/dist/dev/_virtual/inline-css_src/define/live-video/skin.js.map +1 -0
- package/dist/dev/_virtual/inline-css_src/define/shared.js +1 -1
- package/dist/dev/_virtual/inline-css_src/define/shared.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 +227 -108
- package/dist/dev/define/audio/minimal-skin.d.ts +2 -2
- package/dist/dev/define/audio/minimal-skin.d.ts.map +1 -1
- package/dist/dev/define/audio/minimal-skin.js +18 -14
- package/dist/dev/define/audio/minimal-skin.js.map +1 -1
- package/dist/dev/define/audio/minimal-skin.tailwind.d.ts.map +1 -1
- package/dist/dev/define/audio/minimal-skin.tailwind.js +29 -23
- package/dist/dev/define/audio/minimal-skin.tailwind.js.map +1 -1
- package/dist/dev/define/audio/minimal-ui.js +8 -3
- package/dist/dev/define/audio/minimal-ui.js.map +1 -1
- package/dist/dev/define/audio/player.d.ts +2 -2
- package/dist/dev/define/audio/skin.css +253 -108
- package/dist/dev/define/audio/skin.d.ts +2 -2
- package/dist/dev/define/audio/skin.d.ts.map +1 -1
- package/dist/dev/define/audio/skin.js +18 -13
- package/dist/dev/define/audio/skin.js.map +1 -1
- package/dist/dev/define/audio/skin.tailwind.d.ts.map +1 -1
- package/dist/dev/define/audio/skin.tailwind.js +27 -21
- package/dist/dev/define/audio/skin.tailwind.js.map +1 -1
- package/dist/dev/define/audio/ui.js +10 -1
- package/dist/dev/define/audio/ui.js.map +1 -1
- package/dist/dev/define/background/player.d.ts +2 -2
- package/dist/dev/define/background/skin.css +4 -2
- package/dist/dev/define/background/skin.d.ts.map +1 -1
- package/dist/dev/define/background/skin.js +1 -1
- package/dist/{default/define/base.css → dev/define/global.css} +12 -8
- package/dist/dev/define/live-audio/minimal-skin.css +897 -0
- package/dist/dev/define/live-audio/minimal-skin.d.ts +17 -0
- package/dist/dev/define/live-audio/minimal-skin.d.ts.map +1 -0
- package/dist/dev/define/live-audio/minimal-skin.js +78 -0
- package/dist/dev/define/live-audio/minimal-skin.js.map +1 -0
- package/dist/dev/define/live-audio/minimal-skin.tailwind.d.ts +14 -0
- package/dist/dev/define/live-audio/minimal-skin.tailwind.d.ts.map +1 -0
- package/dist/dev/define/live-audio/minimal-skin.tailwind.js +81 -0
- package/dist/dev/define/live-audio/minimal-skin.tailwind.js.map +1 -0
- package/dist/dev/define/live-audio/minimal-ui.d.ts +1 -0
- package/dist/dev/define/live-audio/minimal-ui.js +26 -0
- package/dist/dev/define/live-audio/minimal-ui.js.map +1 -0
- package/dist/dev/define/live-audio/player.d.ts +17 -0
- package/dist/dev/define/live-audio/player.d.ts.map +1 -0
- package/dist/dev/define/live-audio/player.js +18 -0
- package/dist/dev/define/live-audio/player.js.map +1 -0
- package/dist/dev/define/live-audio/skin.css +939 -0
- package/dist/dev/define/live-audio/skin.d.ts +17 -0
- package/dist/dev/define/live-audio/skin.d.ts.map +1 -0
- package/dist/dev/define/live-audio/skin.js +85 -0
- package/dist/dev/define/live-audio/skin.js.map +1 -0
- package/dist/dev/define/live-audio/skin.tailwind.d.ts +14 -0
- package/dist/dev/define/live-audio/skin.tailwind.d.ts.map +1 -0
- package/dist/dev/define/live-audio/skin.tailwind.js +80 -0
- package/dist/dev/define/live-audio/skin.tailwind.js.map +1 -0
- package/dist/dev/define/live-audio/ui.d.ts +1 -0
- package/dist/dev/define/live-audio/ui.js +30 -0
- package/dist/dev/define/live-audio/ui.js.map +1 -0
- package/dist/dev/define/live-video/minimal-skin.css +1593 -0
- package/dist/dev/define/live-video/minimal-skin.d.ts +17 -0
- package/dist/dev/define/live-video/minimal-skin.d.ts.map +1 -0
- package/dist/dev/define/live-video/minimal-skin.js +160 -0
- package/dist/dev/define/live-video/minimal-skin.js.map +1 -0
- package/dist/dev/define/live-video/minimal-skin.tailwind.d.ts +14 -0
- package/dist/dev/define/live-video/minimal-skin.tailwind.d.ts.map +1 -0
- package/dist/dev/define/live-video/minimal-skin.tailwind.js +161 -0
- package/dist/dev/define/live-video/minimal-skin.tailwind.js.map +1 -0
- package/dist/dev/define/live-video/minimal-ui.d.ts +1 -0
- package/dist/dev/define/live-video/minimal-ui.js +44 -0
- package/dist/dev/define/live-video/minimal-ui.js.map +1 -0
- package/dist/dev/define/live-video/player.d.ts +17 -0
- package/dist/dev/define/live-video/player.d.ts.map +1 -0
- package/dist/dev/define/live-video/player.js +18 -0
- package/dist/dev/define/live-video/player.js.map +1 -0
- package/dist/dev/define/live-video/skin.css +1595 -0
- package/dist/dev/define/live-video/skin.d.ts +17 -0
- package/dist/dev/define/live-video/skin.d.ts.map +1 -0
- package/dist/dev/define/live-video/skin.js +161 -0
- package/dist/dev/define/live-video/skin.js.map +1 -0
- package/dist/dev/define/live-video/skin.tailwind.d.ts +14 -0
- package/dist/dev/define/live-video/skin.tailwind.d.ts.map +1 -0
- package/dist/dev/define/live-video/skin.tailwind.js +160 -0
- package/dist/dev/define/live-video/skin.tailwind.js.map +1 -0
- package/dist/dev/define/live-video/ui.d.ts +1 -0
- package/dist/dev/define/live-video/ui.js +44 -0
- package/dist/dev/define/live-video/ui.js.map +1 -0
- package/dist/dev/define/shared.css +4 -0
- package/dist/dev/define/skin-element.d.ts +1 -1
- package/dist/dev/define/skin-element.d.ts.map +1 -1
- package/dist/dev/define/skin-element.js +3 -3
- package/dist/dev/define/skin-element.js.map +1 -1
- package/dist/dev/define/tailwind.css +66 -0
- package/dist/dev/define/ui/compounds.d.ts +3 -1
- package/dist/dev/define/ui/compounds.d.ts.map +1 -1
- package/dist/dev/define/ui/compounds.js +43 -1
- package/dist/dev/define/ui/compounds.js.map +1 -1
- package/dist/dev/define/ui/menu.d.ts +25 -0
- package/dist/dev/define/ui/menu.d.ts.map +1 -0
- package/dist/dev/define/ui/menu.js +6 -0
- package/dist/dev/define/ui/menu.js.map +1 -0
- package/dist/dev/define/ui/playback-rate-menu.d.ts +13 -0
- package/dist/dev/define/ui/playback-rate-menu.d.ts.map +1 -0
- package/dist/dev/define/ui/playback-rate-menu.js +13 -0
- package/dist/dev/define/ui/playback-rate-menu.js.map +1 -0
- package/dist/dev/define/ui/seek-indicator-value.d.ts +9 -0
- package/dist/dev/define/ui/seek-indicator-value.d.ts.map +1 -0
- package/dist/dev/define/ui/seek-indicator-value.js +7 -0
- package/dist/dev/define/ui/seek-indicator-value.js.map +1 -0
- package/dist/dev/define/ui/seek-indicator.d.ts +11 -0
- package/dist/dev/define/ui/seek-indicator.d.ts.map +1 -0
- package/dist/dev/define/ui/seek-indicator.js +9 -0
- package/dist/dev/define/ui/seek-indicator.js.map +1 -0
- package/dist/dev/define/ui/status-announcer.d.ts +9 -0
- package/dist/dev/define/ui/status-announcer.d.ts.map +1 -0
- package/dist/dev/define/ui/status-announcer.js +7 -0
- package/dist/dev/define/ui/status-announcer.js.map +1 -0
- package/dist/dev/define/ui/status-indicator-value.d.ts +9 -0
- package/dist/dev/define/ui/status-indicator-value.d.ts.map +1 -0
- package/dist/dev/define/ui/status-indicator-value.js +7 -0
- package/dist/dev/define/ui/status-indicator-value.js.map +1 -0
- package/dist/dev/define/ui/status-indicator.d.ts +11 -0
- package/dist/dev/define/ui/status-indicator.d.ts.map +1 -0
- package/dist/dev/define/ui/status-indicator.js +9 -0
- package/dist/dev/define/ui/status-indicator.js.map +1 -0
- package/dist/dev/define/ui/volume-indicator-fill.d.ts +9 -0
- package/dist/dev/define/ui/volume-indicator-fill.d.ts.map +1 -0
- package/dist/dev/define/ui/volume-indicator-fill.js +7 -0
- package/dist/dev/define/ui/volume-indicator-fill.js.map +1 -0
- package/dist/dev/define/ui/volume-indicator-value.d.ts +9 -0
- package/dist/dev/define/ui/volume-indicator-value.d.ts.map +1 -0
- package/dist/dev/define/ui/volume-indicator-value.js +7 -0
- package/dist/dev/define/ui/volume-indicator-value.js.map +1 -0
- package/dist/dev/define/ui/volume-indicator.d.ts +13 -0
- package/dist/dev/define/ui/volume-indicator.d.ts.map +1 -0
- package/dist/dev/define/ui/volume-indicator.js +11 -0
- package/dist/dev/define/ui/volume-indicator.js.map +1 -0
- package/dist/dev/define/video/minimal-skin.css +571 -147
- package/dist/dev/define/video/minimal-skin.d.ts +2 -2
- package/dist/dev/define/video/minimal-skin.d.ts.map +1 -1
- package/dist/dev/define/video/minimal-skin.js +79 -14
- package/dist/dev/define/video/minimal-skin.js.map +1 -1
- package/dist/dev/define/video/minimal-skin.tailwind.d.ts.map +1 -1
- package/dist/dev/define/video/minimal-skin.tailwind.js +93 -21
- package/dist/dev/define/video/minimal-skin.tailwind.js.map +1 -1
- package/dist/dev/define/video/minimal-ui.js +13 -3
- package/dist/dev/define/video/minimal-ui.js.map +1 -1
- package/dist/dev/define/video/player.d.ts +2 -2
- package/dist/dev/define/video/skin.css +581 -145
- package/dist/dev/define/video/skin.d.ts +2 -2
- package/dist/dev/define/video/skin.d.ts.map +1 -1
- package/dist/dev/define/video/skin.js +52 -11
- package/dist/dev/define/video/skin.js.map +1 -1
- package/dist/dev/define/video/skin.tailwind.d.ts.map +1 -1
- package/dist/dev/define/video/skin.tailwind.js +89 -19
- package/dist/dev/define/video/skin.tailwind.js.map +1 -1
- package/dist/dev/define/video/ui.js +11 -1
- package/dist/dev/define/video/ui.js.map +1 -1
- package/dist/dev/icons/default/index.d.ts +2 -0
- package/dist/dev/icons/default/index.js +19 -0
- package/dist/dev/icons/element/default/index.d.ts +1 -0
- package/dist/dev/icons/element/default/index.js +1 -0
- package/dist/dev/icons/element/index.d.ts +1 -0
- package/dist/dev/icons/element/index.js +1 -0
- package/dist/dev/icons/element/minimal/index.d.ts +1 -0
- package/dist/dev/icons/element/minimal/index.js +1 -0
- package/dist/dev/icons/index.d.ts +2 -0
- package/dist/dev/icons/index.js +19 -0
- package/dist/dev/icons/minimal/index.d.ts +2 -0
- package/dist/dev/icons/minimal/index.js +19 -0
- package/dist/dev/index.d.ts +36 -3
- package/dist/dev/index.d.ts.map +1 -0
- package/dist/dev/index.js +26 -1
- package/dist/dev/media/background-video/index.d.ts.map +1 -1
- package/dist/dev/media/container-element.d.ts +2 -2
- package/dist/dev/media/dash-video/index.d.ts +2 -2
- package/dist/dev/media/hls-video/index.d.ts +2 -2
- package/dist/dev/media/mux-audio/index.d.ts +2 -2
- package/dist/dev/media/mux-audio/index.js +4 -1
- package/dist/dev/media/mux-audio/index.js.map +1 -1
- package/dist/dev/media/mux-video/index.d.ts +2 -2
- package/dist/dev/media/mux-video/index.js +4 -1
- package/dist/dev/media/mux-video/index.js.map +1 -1
- package/dist/dev/media/native-hls-video/index.d.ts +2 -2
- package/dist/dev/media/simple-hls-video/index.d.ts +2 -2
- package/dist/dev/node_modules/.pnpm/@lit_context@1.1.6/node_modules/@lit/context/development/index.d.ts +2 -0
- package/dist/dev/node_modules/.pnpm/@lit_context@1.1.6/node_modules/@lit/context/development/lib/context-request-event.d.ts +61 -0
- package/dist/dev/node_modules/.pnpm/@lit_context@1.1.6/node_modules/@lit/context/development/lib/context-request-event.d.ts.map +1 -0
- package/dist/dev/node_modules/.pnpm/@lit_context@1.1.6/node_modules/@lit/context/development/lib/controllers/context-consumer.d.ts +1 -0
- package/dist/dev/node_modules/.pnpm/@lit_context@1.1.6/node_modules/@lit/context/development/lib/controllers/context-provider.d.ts +22 -0
- package/dist/dev/node_modules/.pnpm/@lit_context@1.1.6/node_modules/@lit/context/development/lib/controllers/context-provider.d.ts.map +1 -0
- package/dist/dev/node_modules/.pnpm/@lit_context@1.1.6/node_modules/@lit/context/development/lib/create-context.d.ts +19 -0
- package/dist/dev/node_modules/.pnpm/@lit_context@1.1.6/node_modules/@lit/context/development/lib/create-context.d.ts.map +1 -0
- package/dist/dev/node_modules/.pnpm/@lit_context@1.1.6/node_modules/@lit/context/development/lib/decorators/consume.d.ts +1 -0
- package/dist/dev/node_modules/.pnpm/@lit_context@1.1.6/node_modules/@lit/context/development/lib/decorators/provide.d.ts +1 -0
- package/dist/dev/node_modules/.pnpm/@lit_context@1.1.6/node_modules/@lit/context/development/lib/value-notifier.d.ts +1 -0
- package/dist/dev/node_modules/.pnpm/@lit_reactive-element@2.1.2/node_modules/@lit/reactive-element/development/reactive-element.d.ts +116 -0
- package/dist/dev/node_modules/.pnpm/@lit_reactive-element@2.1.2/node_modules/@lit/reactive-element/development/reactive-element.d.ts.map +1 -0
- package/dist/dev/packages/icons/dist/element/base.js +66 -0
- package/dist/dev/packages/icons/dist/element/base.js.map +1 -0
- package/dist/dev/packages/icons/dist/element/default/icons.js +25 -0
- package/dist/dev/packages/icons/dist/element/default/icons.js.map +1 -0
- package/dist/dev/packages/icons/dist/element/default/index.d.ts +1 -0
- package/dist/dev/packages/icons/dist/element/default/index.js +10 -0
- package/dist/dev/packages/icons/dist/element/default/index.js.map +1 -0
- package/dist/dev/packages/icons/dist/element/index.d.ts +1 -0
- package/dist/dev/packages/icons/dist/element/index.js +11 -0
- package/dist/dev/packages/icons/dist/element/index.js.map +1 -0
- package/dist/dev/packages/icons/dist/element/minimal/icons.js +25 -0
- package/dist/dev/packages/icons/dist/element/minimal/icons.js.map +1 -0
- package/dist/dev/packages/icons/dist/element/minimal/index.d.ts +1 -0
- package/dist/dev/packages/icons/dist/element/minimal/index.js +10 -0
- package/dist/dev/packages/icons/dist/element/minimal/index.js.map +1 -0
- package/dist/dev/packages/icons/dist/html/default/captions-off.js +6 -0
- package/dist/dev/packages/icons/dist/html/default/captions-off.js.map +1 -0
- package/dist/dev/packages/icons/dist/html/default/captions-on.js +6 -0
- package/dist/dev/packages/icons/dist/html/default/captions-on.js.map +1 -0
- package/dist/dev/packages/icons/dist/html/default/cast-enter.js +6 -0
- package/dist/dev/packages/icons/dist/html/default/cast-enter.js.map +1 -0
- package/dist/dev/packages/icons/dist/html/default/cast-exit.js +6 -0
- package/dist/dev/packages/icons/dist/html/default/cast-exit.js.map +1 -0
- package/dist/dev/packages/icons/dist/html/default/check.js +6 -0
- package/dist/dev/packages/icons/dist/html/default/check.js.map +1 -0
- package/dist/dev/packages/icons/dist/html/default/chevron.js +6 -0
- package/dist/dev/packages/icons/dist/html/default/chevron.js.map +1 -0
- package/dist/dev/packages/icons/dist/html/default/fullscreen-enter.js +6 -0
- package/dist/dev/packages/icons/dist/html/default/fullscreen-enter.js.map +1 -0
- package/dist/dev/packages/icons/dist/html/default/fullscreen-exit.js +6 -0
- package/dist/dev/packages/icons/dist/html/default/fullscreen-exit.js.map +1 -0
- package/dist/dev/packages/icons/dist/html/default/index.d.ts +23 -0
- package/dist/dev/packages/icons/dist/html/default/index.d.ts.map +1 -0
- package/dist/dev/packages/icons/dist/html/default/pause.js +6 -0
- package/dist/dev/packages/icons/dist/html/default/pause.js.map +1 -0
- package/dist/dev/packages/icons/dist/html/default/pip-enter.js +6 -0
- package/dist/dev/packages/icons/dist/html/default/pip-enter.js.map +1 -0
- package/dist/dev/packages/icons/dist/html/default/pip-exit.js +6 -0
- package/dist/dev/packages/icons/dist/html/default/pip-exit.js.map +1 -0
- package/dist/dev/packages/icons/dist/html/default/play.js +6 -0
- package/dist/dev/packages/icons/dist/html/default/play.js.map +1 -0
- package/dist/dev/packages/icons/dist/html/default/restart.js +6 -0
- package/dist/dev/packages/icons/dist/html/default/restart.js.map +1 -0
- package/dist/dev/packages/icons/dist/html/default/seek.js +6 -0
- package/dist/dev/packages/icons/dist/html/default/seek.js.map +1 -0
- package/dist/dev/packages/icons/dist/html/default/spinner.js +6 -0
- package/dist/dev/packages/icons/dist/html/default/spinner.js.map +1 -0
- package/dist/dev/packages/icons/dist/html/default/volume-high.js +6 -0
- package/dist/dev/packages/icons/dist/html/default/volume-high.js.map +1 -0
- package/dist/dev/packages/icons/dist/html/default/volume-low.js +6 -0
- package/dist/dev/packages/icons/dist/html/default/volume-low.js.map +1 -0
- package/dist/dev/packages/icons/dist/html/default/volume-off.js +6 -0
- package/dist/dev/packages/icons/dist/html/default/volume-off.js.map +1 -0
- package/dist/dev/packages/icons/dist/html/minimal/captions-off.js +6 -0
- package/dist/dev/packages/icons/dist/html/minimal/captions-off.js.map +1 -0
- package/dist/dev/packages/icons/dist/html/minimal/captions-on.js +6 -0
- package/dist/dev/packages/icons/dist/html/minimal/captions-on.js.map +1 -0
- package/dist/dev/packages/icons/dist/html/minimal/cast-enter.js +6 -0
- package/dist/dev/packages/icons/dist/html/minimal/cast-enter.js.map +1 -0
- package/dist/dev/packages/icons/dist/html/minimal/cast-exit.js +6 -0
- package/dist/dev/packages/icons/dist/html/minimal/cast-exit.js.map +1 -0
- package/dist/dev/packages/icons/dist/html/minimal/check.js +6 -0
- package/dist/dev/packages/icons/dist/html/minimal/check.js.map +1 -0
- package/dist/dev/packages/icons/dist/html/minimal/chevron.js +6 -0
- package/dist/dev/packages/icons/dist/html/minimal/chevron.js.map +1 -0
- package/dist/dev/packages/icons/dist/html/minimal/fullscreen-enter.js +6 -0
- package/dist/dev/packages/icons/dist/html/minimal/fullscreen-enter.js.map +1 -0
- package/dist/dev/packages/icons/dist/html/minimal/fullscreen-exit.js +6 -0
- package/dist/dev/packages/icons/dist/html/minimal/fullscreen-exit.js.map +1 -0
- package/dist/dev/packages/icons/dist/html/minimal/index.d.ts +23 -0
- package/dist/dev/packages/icons/dist/html/minimal/index.d.ts.map +1 -0
- package/dist/dev/packages/icons/dist/html/minimal/pause.js +6 -0
- package/dist/dev/packages/icons/dist/html/minimal/pause.js.map +1 -0
- package/dist/dev/packages/icons/dist/html/minimal/pip-enter.js +6 -0
- package/dist/dev/packages/icons/dist/html/minimal/pip-enter.js.map +1 -0
- package/dist/dev/packages/icons/dist/html/minimal/pip-exit.js +6 -0
- package/dist/dev/packages/icons/dist/html/minimal/pip-exit.js.map +1 -0
- package/dist/dev/packages/icons/dist/html/minimal/play.js +6 -0
- package/dist/dev/packages/icons/dist/html/minimal/play.js.map +1 -0
- package/dist/dev/packages/icons/dist/html/minimal/restart.js +6 -0
- package/dist/dev/packages/icons/dist/html/minimal/restart.js.map +1 -0
- package/dist/dev/packages/icons/dist/html/minimal/seek.js +6 -0
- package/dist/dev/packages/icons/dist/html/minimal/seek.js.map +1 -0
- package/dist/dev/packages/icons/dist/html/minimal/spinner.js +6 -0
- package/dist/dev/packages/icons/dist/html/minimal/spinner.js.map +1 -0
- package/dist/dev/packages/icons/dist/html/minimal/volume-high.js +6 -0
- package/dist/dev/packages/icons/dist/html/minimal/volume-high.js.map +1 -0
- package/dist/dev/packages/icons/dist/html/minimal/volume-low.js +6 -0
- package/dist/dev/packages/icons/dist/html/minimal/volume-low.js.map +1 -0
- package/dist/dev/packages/icons/dist/html/minimal/volume-off.js +6 -0
- package/dist/dev/packages/icons/dist/html/minimal/volume-off.js.map +1 -0
- package/dist/dev/packages/icons/dist/render/default/index.js +32 -0
- package/dist/dev/packages/icons/dist/render/default/index.js.map +1 -0
- package/dist/dev/packages/icons/dist/render/minimal/index.js +32 -0
- package/dist/dev/packages/icons/dist/render/minimal/index.js.map +1 -0
- package/dist/dev/{skins → packages/skins}/dist/default/default/tailwind/audio.tailwind.js +3 -2
- package/dist/dev/packages/skins/dist/default/default/tailwind/audio.tailwind.js.map +1 -0
- package/dist/dev/{skins → packages/skins}/dist/default/default/tailwind/components/buffering.js +1 -1
- package/dist/dev/packages/skins/dist/default/default/tailwind/components/buffering.js.map +1 -0
- package/dist/dev/packages/skins/dist/default/default/tailwind/components/button-group.js.map +1 -0
- package/dist/dev/packages/skins/dist/default/default/tailwind/components/button.js +13 -0
- package/dist/dev/packages/skins/dist/default/default/tailwind/components/button.js.map +1 -0
- package/dist/dev/packages/skins/dist/default/default/tailwind/components/controls.js +7 -0
- package/dist/dev/packages/skins/dist/default/default/tailwind/components/controls.js.map +1 -0
- package/dist/dev/packages/skins/dist/default/default/tailwind/components/error.js.map +1 -0
- package/dist/dev/packages/skins/dist/default/default/tailwind/components/icon.js +9 -0
- package/dist/dev/packages/skins/dist/default/default/tailwind/components/icon.js.map +1 -0
- package/dist/dev/packages/skins/dist/default/default/tailwind/components/input-feedback.js +40 -0
- package/dist/dev/packages/skins/dist/default/default/tailwind/components/input-feedback.js.map +1 -0
- package/dist/dev/packages/skins/dist/default/default/tailwind/components/menu.js +12 -0
- package/dist/dev/packages/skins/dist/default/default/tailwind/components/menu.js.map +1 -0
- package/dist/dev/packages/skins/dist/default/default/tailwind/components/overlay.js.map +1 -0
- package/dist/dev/packages/skins/dist/default/default/tailwind/components/playback-rate.js +6 -0
- package/dist/dev/packages/skins/dist/default/default/tailwind/components/playback-rate.js.map +1 -0
- package/dist/dev/packages/skins/dist/default/default/tailwind/components/popup.js.map +1 -0
- package/dist/dev/packages/skins/dist/default/default/tailwind/components/poster.js.map +1 -0
- package/dist/dev/{skins → packages/skins}/dist/default/default/tailwind/components/preview.js +1 -1
- package/dist/dev/packages/skins/dist/default/default/tailwind/components/preview.js.map +1 -0
- package/dist/dev/packages/skins/dist/default/default/tailwind/components/reset.js +7 -0
- package/dist/dev/packages/skins/dist/default/default/tailwind/components/reset.js.map +1 -0
- package/dist/dev/packages/skins/dist/default/default/tailwind/components/root.js +8 -0
- package/dist/dev/packages/skins/dist/default/default/tailwind/components/root.js.map +1 -0
- package/dist/dev/packages/skins/dist/default/default/tailwind/components/seek.js.map +1 -0
- package/dist/dev/{skins → packages/skins}/dist/default/default/tailwind/components/slider.js +1 -1
- package/dist/dev/packages/skins/dist/default/default/tailwind/components/slider.js.map +1 -0
- package/dist/dev/packages/skins/dist/default/default/tailwind/components/surface.js.map +1 -0
- package/dist/dev/packages/skins/dist/default/default/tailwind/components/time.js.map +1 -0
- package/dist/dev/{skins → packages/skins}/dist/default/default/tailwind/video.tailwind.js +13 -4
- package/dist/dev/packages/skins/dist/default/default/tailwind/video.tailwind.js.map +1 -0
- package/dist/dev/{skins → packages/skins}/dist/default/minimal/tailwind/audio.tailwind.js +4 -2
- package/dist/dev/packages/skins/dist/default/minimal/tailwind/audio.tailwind.js.map +1 -0
- package/dist/dev/{skins → packages/skins}/dist/default/minimal/tailwind/components/buffering.js +1 -1
- package/dist/dev/packages/skins/dist/default/minimal/tailwind/components/buffering.js.map +1 -0
- package/dist/dev/packages/skins/dist/default/minimal/tailwind/components/button-group.js.map +1 -0
- package/dist/dev/packages/skins/dist/default/minimal/tailwind/components/button.js +13 -0
- package/dist/dev/packages/skins/dist/default/minimal/tailwind/components/button.js.map +1 -0
- package/dist/dev/packages/skins/dist/default/minimal/tailwind/components/controls.js +7 -0
- package/dist/dev/packages/skins/dist/default/minimal/tailwind/components/controls.js.map +1 -0
- package/dist/dev/packages/skins/dist/default/minimal/tailwind/components/error.js.map +1 -0
- package/dist/dev/packages/skins/dist/default/minimal/tailwind/components/icon.js +9 -0
- package/dist/dev/packages/skins/dist/default/minimal/tailwind/components/icon.js.map +1 -0
- package/dist/dev/packages/skins/dist/default/minimal/tailwind/components/input-feedback.js +41 -0
- package/dist/dev/packages/skins/dist/default/minimal/tailwind/components/input-feedback.js.map +1 -0
- package/dist/dev/packages/skins/dist/default/minimal/tailwind/components/menu.js +12 -0
- package/dist/dev/packages/skins/dist/default/minimal/tailwind/components/menu.js.map +1 -0
- package/dist/dev/packages/skins/dist/default/minimal/tailwind/components/overlay.js.map +1 -0
- package/dist/dev/packages/skins/dist/default/minimal/tailwind/components/playback-rate.js +6 -0
- package/dist/dev/packages/skins/dist/default/minimal/tailwind/components/playback-rate.js.map +1 -0
- package/dist/dev/packages/skins/dist/default/minimal/tailwind/components/popup.js.map +1 -0
- package/dist/dev/packages/skins/dist/default/minimal/tailwind/components/poster.js.map +1 -0
- package/dist/dev/{skins → packages/skins}/dist/default/minimal/tailwind/components/preview.js +1 -1
- package/dist/dev/packages/skins/dist/default/minimal/tailwind/components/preview.js.map +1 -0
- package/dist/dev/packages/skins/dist/default/minimal/tailwind/components/reset.js +7 -0
- package/dist/dev/packages/skins/dist/default/minimal/tailwind/components/reset.js.map +1 -0
- package/dist/dev/packages/skins/dist/default/minimal/tailwind/components/root.js +8 -0
- package/dist/dev/packages/skins/dist/default/minimal/tailwind/components/root.js.map +1 -0
- package/dist/dev/packages/skins/dist/default/minimal/tailwind/components/seek.js.map +1 -0
- package/dist/dev/{skins → packages/skins}/dist/default/minimal/tailwind/components/slider.js +1 -1
- package/dist/dev/packages/skins/dist/default/minimal/tailwind/components/slider.js.map +1 -0
- package/dist/dev/packages/skins/dist/default/minimal/tailwind/components/time.js.map +1 -0
- package/dist/dev/{skins → packages/skins}/dist/default/minimal/tailwind/video.tailwind.js +6 -4
- package/dist/dev/packages/skins/dist/default/minimal/tailwind/video.tailwind.js.map +1 -0
- package/dist/dev/packages/skins/dist/default/shared/tailwind/icon-state.js.map +1 -0
- package/dist/dev/player/context.d.ts +3 -2
- package/dist/dev/player/context.d.ts.map +1 -1
- package/dist/dev/player/context.js.map +1 -1
- package/dist/dev/player/player-controller.d.ts +1 -1
- package/dist/dev/player/player-controller.d.ts.map +1 -1
- package/dist/dev/presets/live-audio.d.ts +7 -0
- package/dist/dev/presets/live-audio.js +7 -0
- package/dist/dev/presets/live-video.d.ts +7 -0
- package/dist/dev/presets/live-video.js +7 -0
- package/dist/dev/store/container-mixin.d.ts +1 -1
- package/dist/dev/store/provider-mixin.d.ts +1 -1
- package/dist/dev/store/provider-mixin.d.ts.map +1 -1
- package/dist/dev/store/provider-mixin.js +8 -3
- package/dist/dev/store/provider-mixin.js.map +1 -1
- package/dist/dev/ui/alert-dialog/alert-dialog-close-element.d.ts.map +1 -1
- package/dist/dev/ui/alert-dialog/alert-dialog-close-element.js +7 -5
- package/dist/dev/ui/alert-dialog/alert-dialog-close-element.js.map +1 -1
- package/dist/dev/ui/alert-dialog/alert-dialog-description-element.d.ts +2 -2
- package/dist/dev/ui/alert-dialog/alert-dialog-element.d.ts.map +1 -1
- package/dist/dev/ui/alert-dialog/alert-dialog-element.js +12 -6
- package/dist/dev/ui/alert-dialog/alert-dialog-element.js.map +1 -1
- package/dist/dev/ui/alert-dialog/alert-dialog-title-element.d.ts +2 -2
- package/dist/dev/ui/buffering-indicator/buffering-indicator-element.d.ts.map +1 -1
- package/dist/dev/ui/buffering-indicator/buffering-indicator-element.js +6 -3
- package/dist/dev/ui/buffering-indicator/buffering-indicator-element.js.map +1 -1
- package/dist/dev/ui/captions-button/captions-button-element.d.ts +4 -4
- package/dist/dev/ui/captions-button/captions-button-element.d.ts.map +1 -1
- package/dist/dev/ui/cast-button/cast-button-element.d.ts +6 -6
- package/dist/dev/ui/cast-button/cast-button-element.d.ts.map +1 -1
- package/dist/dev/ui/cast-button/cast-button-element.js +2 -2
- package/dist/dev/ui/cast-button/cast-button-element.js.map +1 -1
- package/dist/dev/ui/controls/controls-element.d.ts.map +1 -1
- package/dist/dev/ui/controls/controls-element.js +13 -1
- package/dist/dev/ui/controls/controls-element.js.map +1 -1
- package/dist/dev/ui/error-dialog/error-dialog-element.d.ts.map +1 -1
- package/dist/dev/ui/error-dialog/error-dialog-element.js +4 -1
- package/dist/dev/ui/error-dialog/error-dialog-element.js.map +1 -1
- package/dist/dev/ui/fullscreen-button/fullscreen-button-element.d.ts +4 -4
- package/dist/dev/ui/fullscreen-button/fullscreen-button-element.d.ts.map +1 -1
- package/dist/dev/ui/gesture/gesture-element.js +12 -8
- package/dist/dev/ui/gesture/gesture-element.js.map +1 -1
- package/dist/dev/ui/hotkey/aria-key-shortcuts-controller.d.ts.map +1 -1
- package/dist/dev/ui/hotkey/hotkey-element.js +11 -7
- package/dist/dev/ui/hotkey/hotkey-element.js.map +1 -1
- package/dist/dev/ui/input-indicators/input-indicator-element.d.ts +37 -0
- package/dist/dev/ui/input-indicators/input-indicator-element.d.ts.map +1 -0
- package/dist/dev/ui/input-indicators/input-indicator-element.js +110 -0
- package/dist/dev/ui/input-indicators/input-indicator-element.js.map +1 -0
- package/dist/dev/ui/input-indicators/live-indicator.d.ts +18 -0
- package/dist/dev/ui/input-indicators/live-indicator.d.ts.map +1 -0
- package/dist/dev/ui/input-indicators/live-indicator.js +32 -0
- package/dist/dev/ui/input-indicators/live-indicator.js.map +1 -0
- package/dist/dev/ui/live-button/live-button-element.d.ts +38 -0
- package/dist/dev/ui/live-button/live-button-element.d.ts.map +1 -0
- package/dist/dev/ui/live-button/live-button-element.js +98 -0
- package/dist/dev/ui/live-button/live-button-element.js.map +1 -0
- package/dist/dev/ui/media-button-element.d.ts +1 -1
- package/dist/dev/ui/media-button-element.js +4 -2
- package/dist/dev/ui/media-button-element.js.map +1 -1
- package/dist/dev/ui/media-element.d.ts +2 -2
- package/dist/dev/ui/menu/context.d.ts +25 -0
- package/dist/dev/ui/menu/context.d.ts.map +1 -0
- package/dist/dev/ui/menu/context.js +10 -0
- package/dist/dev/ui/menu/context.js.map +1 -0
- package/dist/dev/ui/menu/menu-back-element.d.ts +20 -0
- package/dist/dev/ui/menu/menu-back-element.d.ts.map +1 -0
- package/dist/dev/ui/menu/menu-back-element.js +57 -0
- package/dist/dev/ui/menu/menu-back-element.js.map +1 -0
- package/dist/dev/ui/menu/menu-checkbox-item-element.d.ts +24 -0
- package/dist/dev/ui/menu/menu-checkbox-item-element.d.ts.map +1 -0
- package/dist/dev/ui/menu/menu-checkbox-item-element.js +78 -0
- package/dist/dev/ui/menu/menu-checkbox-item-element.js.map +1 -0
- package/dist/dev/ui/menu/menu-element.d.ts +52 -0
- package/dist/dev/ui/menu/menu-element.d.ts.map +1 -0
- package/dist/dev/ui/menu/menu-element.js +285 -0
- package/dist/dev/ui/menu/menu-element.js.map +1 -0
- package/dist/dev/ui/menu/menu-group-element.d.ts +18 -0
- package/dist/dev/ui/menu/menu-group-element.d.ts.map +1 -0
- package/dist/dev/ui/menu/menu-group-element.js +35 -0
- package/dist/dev/ui/menu/menu-group-element.js.map +1 -0
- package/dist/dev/ui/menu/menu-item-element.d.ts +25 -0
- package/dist/dev/ui/menu/menu-item-element.d.ts.map +1 -0
- package/dist/dev/ui/menu/menu-item-element.js +96 -0
- package/dist/dev/ui/menu/menu-item-element.js.map +1 -0
- package/dist/dev/ui/menu/menu-item-indicator-element.d.ts +22 -0
- package/dist/dev/ui/menu/menu-item-indicator-element.d.ts.map +1 -0
- package/dist/dev/ui/menu/menu-item-indicator-element.js +34 -0
- package/dist/dev/ui/menu/menu-item-indicator-element.js.map +1 -0
- package/dist/dev/ui/menu/menu-label-element.d.ts +15 -0
- package/dist/dev/ui/menu/menu-label-element.d.ts.map +1 -0
- package/dist/dev/ui/menu/menu-label-element.js +20 -0
- package/dist/dev/ui/menu/menu-label-element.js.map +1 -0
- package/dist/dev/ui/menu/menu-radio-group-element.d.ts +22 -0
- package/dist/dev/ui/menu/menu-radio-group-element.d.ts.map +1 -0
- package/dist/dev/ui/menu/menu-radio-group-element.js +51 -0
- package/dist/dev/ui/menu/menu-radio-group-element.js.map +1 -0
- package/dist/dev/ui/menu/menu-radio-item-element.d.ts +24 -0
- package/dist/dev/ui/menu/menu-radio-item-element.d.ts.map +1 -0
- package/dist/dev/ui/menu/menu-radio-item-element.js +84 -0
- package/dist/dev/ui/menu/menu-radio-item-element.js.map +1 -0
- package/dist/dev/ui/menu/menu-separator-element.d.ts +12 -0
- package/dist/dev/ui/menu/menu-separator-element.d.ts.map +1 -0
- package/dist/dev/ui/menu/menu-separator-element.js +24 -0
- package/dist/dev/ui/menu/menu-separator-element.js.map +1 -0
- package/dist/dev/ui/menu/menu-view-element.d.ts +11 -0
- package/dist/dev/ui/menu/menu-view-element.d.ts.map +1 -0
- package/dist/dev/ui/menu/menu-view-element.js +16 -0
- package/dist/dev/ui/menu/menu-view-element.js.map +1 -0
- package/dist/dev/ui/mute-button/mute-button-element.d.ts +4 -4
- package/dist/dev/ui/mute-button/mute-button-element.d.ts.map +1 -1
- package/dist/dev/ui/pip-button/pip-button-element.d.ts +4 -4
- package/dist/dev/ui/pip-button/pip-button-element.d.ts.map +1 -1
- package/dist/dev/ui/play-button/play-button-element.d.ts +5 -5
- package/dist/dev/ui/play-button/play-button-element.d.ts.map +1 -1
- package/dist/dev/ui/playback-rate-button/playback-rate-button-element.d.ts +3 -3
- package/dist/dev/ui/playback-rate-button/playback-rate-button-element.d.ts.map +1 -1
- package/dist/dev/ui/playback-rate-menu/playback-rate-menu-element.d.ts +53 -0
- package/dist/dev/ui/playback-rate-menu/playback-rate-menu-element.d.ts.map +1 -0
- package/dist/dev/ui/playback-rate-menu/playback-rate-menu-element.js +48 -0
- package/dist/dev/ui/playback-rate-menu/playback-rate-menu-element.js.map +1 -0
- package/dist/dev/ui/playback-rate-menu/playback-rate-menu-trigger-element.d.ts +35 -0
- package/dist/dev/ui/playback-rate-menu/playback-rate-menu-trigger-element.d.ts.map +1 -0
- package/dist/dev/ui/playback-rate-menu/playback-rate-menu-trigger-element.js +86 -0
- package/dist/dev/ui/playback-rate-menu/playback-rate-menu-trigger-element.js.map +1 -0
- package/dist/dev/ui/playback-rate-menu/playback-rate-options-element.d.ts +31 -0
- package/dist/dev/ui/playback-rate-menu/playback-rate-options-element.d.ts.map +1 -0
- package/dist/dev/ui/playback-rate-menu/playback-rate-options-element.js +114 -0
- package/dist/dev/ui/playback-rate-menu/playback-rate-options-element.js.map +1 -0
- package/dist/dev/ui/popover/popover-element.d.ts +9 -3
- package/dist/dev/ui/popover/popover-element.d.ts.map +1 -1
- package/dist/dev/ui/popover/popover-element.js +44 -16
- package/dist/dev/ui/popover/popover-element.js.map +1 -1
- package/dist/dev/ui/position-controller.js +11 -6
- package/dist/dev/ui/position-controller.js.map +1 -1
- package/dist/dev/ui/poster/poster-element.d.ts +4 -4
- package/dist/dev/ui/poster/poster-element.d.ts.map +1 -1
- package/dist/dev/ui/seek-button/seek-button-element.d.ts +4 -4
- package/dist/dev/ui/seek-button/seek-button-element.d.ts.map +1 -1
- package/dist/dev/ui/seek-indicator/seek-indicator-element.d.ts +25 -0
- package/dist/dev/ui/seek-indicator/seek-indicator-element.d.ts.map +1 -0
- package/dist/dev/ui/seek-indicator/seek-indicator-element.js +44 -0
- package/dist/dev/ui/seek-indicator/seek-indicator-element.js.map +1 -0
- package/dist/dev/ui/seek-indicator/seek-indicator-value-element.d.ts +9 -0
- package/dist/dev/ui/seek-indicator/seek-indicator-value-element.d.ts.map +1 -0
- package/dist/dev/ui/seek-indicator/seek-indicator-value-element.js +11 -0
- package/dist/dev/ui/seek-indicator/seek-indicator-value-element.js.map +1 -0
- package/dist/dev/ui/slider/slider-element.d.ts +2 -2
- package/dist/dev/ui/slider/slider-element.d.ts.map +1 -1
- package/dist/dev/ui/slider/slider-element.js +8 -4
- package/dist/dev/ui/slider/slider-element.js.map +1 -1
- package/dist/dev/ui/slider/slider-preview-element.d.ts.map +1 -1
- package/dist/dev/ui/slider/slider-preview-element.js +9 -6
- package/dist/dev/ui/slider/slider-preview-element.js.map +1 -1
- package/dist/dev/ui/slider/slider-value-element.d.ts.map +1 -1
- package/dist/dev/ui/slider/slider-value-element.js +5 -4
- package/dist/dev/ui/slider/slider-value-element.js.map +1 -1
- package/dist/dev/ui/status-announcer/status-announcer-element.d.ts +23 -0
- package/dist/dev/ui/status-announcer/status-announcer-element.d.ts.map +1 -0
- package/dist/dev/ui/status-announcer/status-announcer-element.js +70 -0
- package/dist/dev/ui/status-announcer/status-announcer-element.js.map +1 -0
- package/dist/dev/ui/status-indicator/status-indicator-element.d.ts +29 -0
- package/dist/dev/ui/status-indicator/status-indicator-element.d.ts.map +1 -0
- package/dist/dev/ui/status-indicator/status-indicator-element.js +53 -0
- package/dist/dev/ui/status-indicator/status-indicator-element.js.map +1 -0
- package/dist/dev/ui/status-indicator/status-indicator-value-element.d.ts +9 -0
- package/dist/dev/ui/status-indicator/status-indicator-value-element.d.ts.map +1 -0
- package/dist/dev/ui/status-indicator/status-indicator-value-element.js +11 -0
- package/dist/dev/ui/status-indicator/status-indicator-value-element.js.map +1 -0
- package/dist/dev/ui/thumbnail/thumbnail-element.d.ts.map +1 -1
- package/dist/dev/ui/thumbnail/thumbnail-element.js +10 -5
- package/dist/dev/ui/thumbnail/thumbnail-element.js.map +1 -1
- package/dist/dev/ui/time/time-element.d.ts +2 -2
- package/dist/dev/ui/time/time-element.d.ts.map +1 -1
- package/dist/dev/ui/time/time-element.js +8 -4
- package/dist/dev/ui/time/time-element.js.map +1 -1
- package/dist/dev/ui/time-slider/time-slider-element.d.ts +2 -2
- package/dist/dev/ui/time-slider/time-slider-element.d.ts.map +1 -1
- package/dist/dev/ui/time-slider/time-slider-element.js +12 -6
- package/dist/dev/ui/time-slider/time-slider-element.js.map +1 -1
- package/dist/dev/ui/tooltip/tooltip-element.d.ts +9 -3
- package/dist/dev/ui/tooltip/tooltip-element.d.ts.map +1 -1
- package/dist/dev/ui/tooltip/tooltip-element.js +43 -16
- package/dist/dev/ui/tooltip/tooltip-element.js.map +1 -1
- package/dist/dev/ui/tooltip/tooltip-group-element.d.ts.map +1 -1
- package/dist/dev/ui/tooltip/tooltip-group-element.js +7 -5
- package/dist/dev/ui/tooltip/tooltip-group-element.js.map +1 -1
- package/dist/dev/ui/volume-indicator/volume-indicator-element.d.ts +25 -0
- package/dist/dev/ui/volume-indicator/volume-indicator-element.d.ts.map +1 -0
- package/dist/dev/ui/volume-indicator/volume-indicator-element.js +46 -0
- package/dist/dev/ui/volume-indicator/volume-indicator-element.js.map +1 -0
- package/dist/dev/ui/volume-indicator/volume-indicator-fill-element.d.ts +9 -0
- package/dist/dev/ui/volume-indicator/volume-indicator-fill-element.d.ts.map +1 -0
- package/dist/dev/ui/volume-indicator/volume-indicator-fill-element.js +11 -0
- package/dist/dev/ui/volume-indicator/volume-indicator-fill-element.js.map +1 -0
- package/dist/dev/ui/volume-indicator/volume-indicator-value-element.d.ts +9 -0
- package/dist/dev/ui/volume-indicator/volume-indicator-value-element.d.ts.map +1 -0
- package/dist/dev/ui/volume-indicator/volume-indicator-value-element.js +11 -0
- package/dist/dev/ui/volume-indicator/volume-indicator-value-element.js.map +1 -0
- package/dist/dev/ui/volume-slider/volume-slider-element.d.ts +2 -2
- package/dist/dev/ui/volume-slider/volume-slider-element.d.ts.map +1 -1
- package/dist/dev/ui/volume-slider/volume-slider-element.js +10 -5
- package/dist/dev/ui/volume-slider/volume-slider-element.js.map +1 -1
- package/docs/README.md +7 -0
- package/docs/concepts/accessibility.md +60 -0
- package/docs/concepts/browser-support.md +37 -0
- package/docs/concepts/features.md +129 -0
- package/docs/concepts/overview.md +118 -0
- package/docs/concepts/presets.md +207 -0
- package/docs/concepts/skins.md +2006 -0
- package/docs/concepts/ui-components.md +59 -0
- package/docs/concepts/v10-roadmap.md +75 -0
- package/docs/concepts/why-videojs.md +113 -0
- package/docs/how-to/build-with-ai.md +39 -0
- package/docs/how-to/build-your-own-component.md +217 -0
- package/docs/how-to/customize-skins.md +5711 -0
- package/docs/how-to/installation.md +172 -0
- package/docs/llms.txt +88 -0
- package/docs/reference/buffering-indicator.md +152 -0
- package/docs/reference/captions-button.md +216 -0
- package/docs/reference/container-mixin.md +69 -0
- package/docs/reference/controls.md +248 -0
- package/docs/reference/create-selector.md +59 -0
- package/docs/reference/feature-buffer.md +52 -0
- package/docs/reference/feature-controls.md +70 -0
- package/docs/reference/feature-error.md +60 -0
- package/docs/reference/feature-fullscreen.md +90 -0
- package/docs/reference/feature-live.md +60 -0
- package/docs/reference/feature-pip.md +90 -0
- package/docs/reference/feature-playback-rate.md +70 -0
- package/docs/reference/feature-playback.md +110 -0
- package/docs/reference/feature-remote-playback.md +70 -0
- package/docs/reference/feature-source.md +70 -0
- package/docs/reference/feature-stream-type.md +46 -0
- package/docs/reference/feature-text-tracks.md +100 -0
- package/docs/reference/feature-time.md +80 -0
- package/docs/reference/feature-volume.md +90 -0
- package/docs/reference/fullscreen-button.md +229 -0
- package/docs/reference/html-create-player.md +449 -0
- package/docs/reference/media-attach-mixin.md +83 -0
- package/docs/reference/mute-button.md +301 -0
- package/docs/reference/pip-button.md +229 -0
- package/docs/reference/play-button.md +251 -0
- package/docs/reference/playback-rate-button.md +170 -0
- package/docs/reference/player-container.md +126 -0
- package/docs/reference/player-context.md +50 -0
- package/docs/reference/player-controller.md +276 -0
- package/docs/reference/player-provider.md +114 -0
- package/docs/reference/popover.md +460 -0
- package/docs/reference/poster.md +158 -0
- package/docs/reference/provider-mixin.md +71 -0
- package/docs/reference/seek-button.md +223 -0
- package/docs/reference/slider.md +862 -0
- package/docs/reference/snapshot-controller.md +208 -0
- package/docs/reference/store-controller.md +180 -0
- package/docs/reference/thumbnail.md +364 -0
- package/docs/reference/time-slider.md +794 -0
- package/docs/reference/time.md +488 -0
- package/docs/reference/tooltip.md +547 -0
- package/docs/reference/volume-slider.md +783 -0
- package/package.json +46 -12
- package/cdn/compounds-CCgS3IGo.js +0 -8
- package/cdn/compounds-CCgS3IGo.js.map +0 -1
- package/cdn/compounds-DD3MYkSc.js.map +0 -1
- package/cdn/context-0rI_P6jf.js.map +0 -1
- package/cdn/context-CEFisYD0.js.map +0 -1
- package/cdn/create-player-B-PGzhq2.js +0 -7
- package/cdn/create-player-B-PGzhq2.js.map +0 -1
- package/cdn/create-player-BKLw7l1a.js.map +0 -1
- package/cdn/default-Djy9PEXm.js +0 -2
- package/cdn/default-Djy9PEXm.js.map +0 -1
- package/cdn/default-YzaLyoYg.js +0 -30
- package/cdn/default-YzaLyoYg.js.map +0 -1
- package/cdn/hls-CcSAx_3I.js.map +0 -1
- package/cdn/hls-Dl2v35sW.js +0 -41
- package/cdn/hls-Dl2v35sW.js.map +0 -1
- package/cdn/hotkey-element-BONs_FyJ.js.map +0 -1
- package/cdn/hotkey-element-DWWkfH3A.js +0 -2
- package/cdn/hotkey-element-DWWkfH3A.js.map +0 -1
- package/cdn/media-attach-mixin-C2wz0Qbd.js +0 -2
- package/cdn/minimal-AX_y2YBU.js +0 -30
- package/cdn/minimal-AX_y2YBU.js.map +0 -1
- package/cdn/minimal-Bc74CFqg.js +0 -2
- package/cdn/minimal-Bc74CFqg.js.map +0 -1
- package/cdn/minimal-ui-CE1sVxKB.js +0 -22
- package/cdn/minimal-ui-CE1sVxKB.js.map +0 -1
- package/cdn/minimal-ui-hC8-_9_F.js +0 -2
- package/cdn/minimal-ui-hC8-_9_F.js.map +0 -1
- package/cdn/minimal-ui-lnw8AjaS.js +0 -2
- package/cdn/minimal-ui-lnw8AjaS.js.map +0 -1
- package/cdn/minimal-ui-yKur3jyD.js +0 -29
- package/cdn/minimal-ui-yKur3jyD.js.map +0 -1
- package/cdn/mux-BgWl50KW.js.map +0 -1
- package/cdn/mux-BhHIeG3e.js.map +0 -1
- package/cdn/native-hls-lhip4tV9.js +0 -123
- package/cdn/native-hls-lhip4tV9.js.map +0 -1
- package/cdn/native-hls-odPBXxK7.js +0 -2
- package/cdn/native-hls-odPBXxK7.js.map +0 -1
- package/cdn/player-B7jISTmQ.js +0 -2
- package/cdn/player-B7jISTmQ.js.map +0 -1
- package/cdn/player-ChdQN3H5.js +0 -2
- package/cdn/player-DX5Ka0vt.js.map +0 -1
- package/cdn/skin-element-D3iVinGP.js +0 -55
- package/cdn/skin-element-D3iVinGP.js.map +0 -1
- package/cdn/skin-element-DM82PPxz.js +0 -2
- package/cdn/skin-element-DM82PPxz.js.map +0 -1
- package/cdn/ui-BGvi0TNr.js +0 -2
- package/cdn/ui-BGvi0TNr.js.map +0 -1
- package/cdn/ui-BN57BxYZ.js +0 -2
- package/cdn/ui-BN57BxYZ.js.map +0 -1
- package/cdn/ui-CKR6dVbQ.js +0 -25
- package/cdn/ui-CKR6dVbQ.js.map +0 -1
- package/cdn/ui-CZ4yl3t3.js +0 -32
- package/cdn/ui-CZ4yl3t3.js.map +0 -1
- package/dist/default/_virtual/inline-css_src/define/base.js +0 -6
- package/dist/default/_virtual/inline-css_src/define/base.js.map +0 -1
- package/dist/dev/_virtual/inline-css_src/define/base.js +0 -6
- package/dist/dev/_virtual/inline-css_src/define/base.js.map +0 -1
- package/dist/dev/icons/dist/render/default/index.js +0 -30
- package/dist/dev/icons/dist/render/default/index.js.map +0 -1
- package/dist/dev/icons/dist/render/minimal/index.js +0 -30
- package/dist/dev/icons/dist/render/minimal/index.js.map +0 -1
- package/dist/dev/skins/dist/default/default/tailwind/audio.tailwind.js.map +0 -1
- package/dist/dev/skins/dist/default/default/tailwind/components/buffering.js.map +0 -1
- package/dist/dev/skins/dist/default/default/tailwind/components/button-group.js.map +0 -1
- package/dist/dev/skins/dist/default/default/tailwind/components/button.js +0 -12
- package/dist/dev/skins/dist/default/default/tailwind/components/button.js.map +0 -1
- package/dist/dev/skins/dist/default/default/tailwind/components/controls.js +0 -7
- package/dist/dev/skins/dist/default/default/tailwind/components/controls.js.map +0 -1
- package/dist/dev/skins/dist/default/default/tailwind/components/error.js.map +0 -1
- package/dist/dev/skins/dist/default/default/tailwind/components/icon.js +0 -9
- package/dist/dev/skins/dist/default/default/tailwind/components/icon.js.map +0 -1
- package/dist/dev/skins/dist/default/default/tailwind/components/overlay.js.map +0 -1
- package/dist/dev/skins/dist/default/default/tailwind/components/playback-rate.js +0 -6
- package/dist/dev/skins/dist/default/default/tailwind/components/playback-rate.js.map +0 -1
- package/dist/dev/skins/dist/default/default/tailwind/components/popup.js.map +0 -1
- package/dist/dev/skins/dist/default/default/tailwind/components/poster.js.map +0 -1
- package/dist/dev/skins/dist/default/default/tailwind/components/preview.js.map +0 -1
- package/dist/dev/skins/dist/default/default/tailwind/components/root.js +0 -7
- package/dist/dev/skins/dist/default/default/tailwind/components/root.js.map +0 -1
- package/dist/dev/skins/dist/default/default/tailwind/components/seek.js.map +0 -1
- package/dist/dev/skins/dist/default/default/tailwind/components/slider.js.map +0 -1
- package/dist/dev/skins/dist/default/default/tailwind/components/surface.js.map +0 -1
- package/dist/dev/skins/dist/default/default/tailwind/components/time.js.map +0 -1
- package/dist/dev/skins/dist/default/default/tailwind/video.tailwind.js.map +0 -1
- package/dist/dev/skins/dist/default/minimal/tailwind/audio.tailwind.js.map +0 -1
- package/dist/dev/skins/dist/default/minimal/tailwind/components/buffering.js.map +0 -1
- package/dist/dev/skins/dist/default/minimal/tailwind/components/button-group.js.map +0 -1
- package/dist/dev/skins/dist/default/minimal/tailwind/components/button.js +0 -12
- package/dist/dev/skins/dist/default/minimal/tailwind/components/button.js.map +0 -1
- package/dist/dev/skins/dist/default/minimal/tailwind/components/controls.js +0 -7
- package/dist/dev/skins/dist/default/minimal/tailwind/components/controls.js.map +0 -1
- package/dist/dev/skins/dist/default/minimal/tailwind/components/error.js.map +0 -1
- package/dist/dev/skins/dist/default/minimal/tailwind/components/icon.js +0 -9
- package/dist/dev/skins/dist/default/minimal/tailwind/components/icon.js.map +0 -1
- package/dist/dev/skins/dist/default/minimal/tailwind/components/overlay.js.map +0 -1
- package/dist/dev/skins/dist/default/minimal/tailwind/components/playback-rate.js +0 -6
- package/dist/dev/skins/dist/default/minimal/tailwind/components/playback-rate.js.map +0 -1
- package/dist/dev/skins/dist/default/minimal/tailwind/components/popup.js.map +0 -1
- package/dist/dev/skins/dist/default/minimal/tailwind/components/poster.js.map +0 -1
- package/dist/dev/skins/dist/default/minimal/tailwind/components/preview.js.map +0 -1
- package/dist/dev/skins/dist/default/minimal/tailwind/components/root.js +0 -7
- package/dist/dev/skins/dist/default/minimal/tailwind/components/root.js.map +0 -1
- package/dist/dev/skins/dist/default/minimal/tailwind/components/seek.js.map +0 -1
- package/dist/dev/skins/dist/default/minimal/tailwind/components/slider.js.map +0 -1
- package/dist/dev/skins/dist/default/minimal/tailwind/components/time.js.map +0 -1
- package/dist/dev/skins/dist/default/minimal/tailwind/video.tailwind.js.map +0 -1
- package/dist/dev/skins/dist/default/shared/tailwind/icon-state.js.map +0 -1
- /package/dist/dev/{skins → packages/skins}/dist/default/default/tailwind/components/button-group.js +0 -0
- /package/dist/dev/{skins → packages/skins}/dist/default/default/tailwind/components/error.js +0 -0
- /package/dist/dev/{skins → packages/skins}/dist/default/default/tailwind/components/overlay.js +0 -0
- /package/dist/dev/{skins → packages/skins}/dist/default/default/tailwind/components/popup.js +0 -0
- /package/dist/dev/{skins → packages/skins}/dist/default/default/tailwind/components/poster.js +0 -0
- /package/dist/dev/{skins → packages/skins}/dist/default/default/tailwind/components/seek.js +0 -0
- /package/dist/dev/{skins → packages/skins}/dist/default/default/tailwind/components/surface.js +0 -0
- /package/dist/dev/{skins → packages/skins}/dist/default/default/tailwind/components/time.js +0 -0
- /package/dist/dev/{skins → packages/skins}/dist/default/minimal/tailwind/components/button-group.js +0 -0
- /package/dist/dev/{skins → packages/skins}/dist/default/minimal/tailwind/components/error.js +0 -0
- /package/dist/dev/{skins → packages/skins}/dist/default/minimal/tailwind/components/overlay.js +0 -0
- /package/dist/dev/{skins → packages/skins}/dist/default/minimal/tailwind/components/popup.js +0 -0
- /package/dist/dev/{skins → packages/skins}/dist/default/minimal/tailwind/components/poster.js +0 -0
- /package/dist/dev/{skins → packages/skins}/dist/default/minimal/tailwind/components/seek.js +0 -0
- /package/dist/dev/{skins → packages/skins}/dist/default/minimal/tailwind/components/time.js +0 -0
- /package/dist/dev/{skins → packages/skins}/dist/default/shared/tailwind/icon-state.js +0 -0
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
import{t as e}from"./types-DRezN4yy.js";import{t}from"./video-host-CvYvXa8l.js";var n=class e extends Error{static MEDIA_ERR_ABORTED=1;static MEDIA_ERR_NETWORK=2;static MEDIA_ERR_DECODE=3;static MEDIA_ERR_SRC_NOT_SUPPORTED=4;static MEDIA_ERR_ENCRYPTED=5;static MEDIA_ERR_CUSTOM=100;static defaultMessages={1:`You aborted the media playback`,2:`A network error caused the media download to fail.`,3:`A media error caused playback to be aborted. The media could be corrupt or your browser does not support this format.`,4:`An unsupported error occurred. The server or network failed, or your browser does not support this format.`,5:`The media is encrypted and there are no keys to decrypt it.`};name;code;context;fatal;data;constructor(t,n=e.MEDIA_ERR_CUSTOM,r,i){super(t),this.name=`MediaError`,this.code=n,this.context=i,this.fatal=r??(n>=e.MEDIA_ERR_NETWORK&&n<=e.MEDIA_ERR_ENCRYPTED),this.message||=e.defaultMessages[this.code]??``}};function r(e){class t extends e{#e=null;#t=null;get error(){return this.#t}attach(e){super.attach?.(e),this.#r(e)}detach(){this.#n(),super.detach?.()}destroy(){this.#n(),super.destroy?.()}#n(){this.#e?.abort(),this.#e=null,this.#t=null}#r(e){this.#n(),this.#e=new AbortController;let t=this.#e.signal;e.addEventListener(`error`,t=>{t.stopImmediatePropagation();let r=e.error;if(!r)return;let i=new n(r.message,r.code,!0);this.#t=i,this.dispatchEvent(new ErrorEvent(`error`,{error:i,message:i.message}))},{signal:t,capture:!0}),e.addEventListener(`emptied`,()=>{this.#t=null},{signal:t})}}return t}function i(e){return e.toLowerCase().includes(`.m3u8`)}function a(e){return e.includes(`#EXT-X-STREAM-INF`)}function o(e,t){let n=e.split(/\r?\n/),r=n.findIndex(e=>e.startsWith(`#EXT-X-STREAM-INF`));if(r===-1)return null;let i=n.slice(r+1).map(e=>e.trim()).find(e=>e&&!e.startsWith(`#`));if(!i)return null;try{return new URL(i,t).toString()}catch{return null}}function s(e){let t=e.split(/\r?\n/),n,r=!1,i,a;for(let e of t){let t=e.trim();if(t.startsWith(`#EXT-X-PLAYLIST-TYPE:`))n=t.slice(21).trim().toUpperCase();else if(t===`#EXT-X-ENDLIST`)r=!0;else if(t.startsWith(`#EXT-X-TARGETDURATION:`)){let e=Number(t.slice(22));Number.isFinite(e)&&(i=e)}else if(t.startsWith(`#EXT-X-PART-INF`)){let e=/PART-TARGET\s*=\s*([0-9.]+)/i.exec(t);if(e){let t=Number(e[1]);Number.isFinite(t)&&(a=t)}}}return n===`VOD`||r?{targetLiveWindow:NaN,liveEdgeStartOffset:void 0}:{targetLiveWindow:n===`EVENT`?1/0:0,liveEdgeStartOffset:a===void 0?i===void 0?void 0:i*3:a*2}}async function c(e,t){let n=await fetch(e,t);if(!n.ok)throw Error(`Failed to fetch playlist (${n.status}): ${e}`);return{text:await n.text(),url:n.url||e}}async function l(e,t){let n=t?{signal:t}:{},{text:r,url:i}=await c(e,n);if(!a(r))return s(r);let l=o(r,i);if(!l)throw Error(`No media playlist URL found in multivariant playlist`);return s((await c(l,n)).text)}function u(e){class t extends e{#e=NaN;#t;#n=null;#r=``;get targetLiveWindow(){return this.#e}get liveEdgeStart(){if(this.#t===void 0)return NaN;let e=this.target;if(!e)return NaN;let{seekable:t,buffered:n}=e,r=t.length?t:n;return r.length?r.end(r.length-1)-this.#t:NaN}attach(e){super.attach?.(e),this.#a(e)}detach(){this.#i(),super.detach?.()}destroy(){this.#i(),super.destroy?.()}#i(){this.#n?.abort(),this.#n=null,this.#r=``,this.#t=void 0,this.#s(NaN)}#a(e){this.#i(),this.#n=new AbortController;let{signal:t}=this.#n;e.addEventListener(`loadstart`,()=>this.#o(e),{signal:t}),e.addEventListener(`emptied`,()=>{this.#r=``,this.#t=void 0,this.#s(NaN)},{signal:t}),(e.currentSrc||e.src)&&this.#o(e)}async#o(e){let t=e.currentSrc||e.src;if(!t||!i(t)||t===this.#r)return;this.#r=t,this.#t=void 0,this.#s(NaN);let n=this.#n?.signal;try{let r=await l(t,n);if(n?.aborted||(e.currentSrc||e.src)!==t)return;this.#t=r.liveEdgeStartOffset,this.#s(r.targetLiveWindow)}catch{}}#s(e){Object.is(this.#e,e)||(this.#e=e,this.dispatchEvent(new Event(`targetlivewindowchange`)))}}return t}function d(t){class n extends t{#e=e.UNKNOWN;#t=!1;#n=null;get streamType(){return this.#e}set streamType(t){if(t===e.UNKNOWN){this.#t=!1,this.#o(this.#a());return}this.#t=!0,this.#s(t)}attach(e){super.attach?.(e),this.#i(e)}detach(){this.#r(),this.#o(e.UNKNOWN),super.detach?.()}destroy(){this.#r(),super.destroy?.()}#r(){this.#n?.abort(),this.#n=null}#i(t){this.#r(),this.#n=new AbortController;let{signal:n}=this.#n,r=()=>this.#o(this.#a(t));t.addEventListener(`durationchange`,r,{signal:n}),t.addEventListener(`loadedmetadata`,r,{signal:n}),t.addEventListener(`emptied`,()=>this.#o(e.UNKNOWN),{signal:n}),r()}#a(t=this.target){if(!t)return e.UNKNOWN;let{duration:n}=t;return n===1/0?e.LIVE:Number.isFinite(n)&&n>0?e.ON_DEMAND:e.UNKNOWN}#o(e){this.#t||this.#s(e)}#s(e){this.#e!==e&&(this.#e=e,this.dispatchEvent(new Event(`streamtypechange`)))}}return n}const f={src:``,preload:`metadata`,streamType:e.UNKNOWN};var p=class extends t{#e=f.src;#t=f.preload;get engine(){return null}get src(){return this.#e}set src(e){this.#e=e,this.target&&(this.target.src=e)}get preload(){return this.#t}set preload(e){this.#t=e,this.target&&(this.target.preload=e)}attach(e){super.attach(e),this.preload!==e.preload&&(e.preload=this.preload),this.src&&(e.src=this.src)}detach(){super.detach()}destroy(){this.detach()}},m=class extends u(d(r(p))){};export{n,m as t};
|
|
2
|
+
//# sourceMappingURL=native-hls-1-isweaY.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"native-hls-1-isweaY.js","names":["#error","#init","#destroy","#disconnect","#targetLiveWindow","#liveEdgeStartOffset","#init","#destroy","#disconnect","#currentSrc","#setTargetLiveWindow","#refresh","#streamType","#isUserStreamType","#setDetected","#detect","#update","#init","#destroy","#disconnect","#src","#preload"],"sources":["../../core/dist/default/core/media/media-error.js","../../core/dist/default/dom/media/native-hls/errors.js","../../core/dist/default/dom/media/native-hls/m3u8-utils.js","../../core/dist/default/dom/media/native-hls/live.js","../../core/dist/default/dom/media/native-hls/stream-type.js","../../core/dist/default/dom/media/native-hls/index.js"],"sourcesContent":["//#region src/core/media/media-error.ts\nvar MediaError = class MediaError extends Error {\n\tstatic MEDIA_ERR_ABORTED = 1;\n\tstatic MEDIA_ERR_NETWORK = 2;\n\tstatic MEDIA_ERR_DECODE = 3;\n\tstatic MEDIA_ERR_SRC_NOT_SUPPORTED = 4;\n\tstatic MEDIA_ERR_ENCRYPTED = 5;\n\tstatic MEDIA_ERR_CUSTOM = 100;\n\tstatic defaultMessages = {\n\t\t1: \"You aborted the media playback\",\n\t\t2: \"A network error caused the media download to fail.\",\n\t\t3: \"A media error caused playback to be aborted. The media could be corrupt or your browser does not support this format.\",\n\t\t4: \"An unsupported error occurred. The server or network failed, or your browser does not support this format.\",\n\t\t5: \"The media is encrypted and there are no keys to decrypt it.\"\n\t};\n\tname;\n\tcode;\n\tcontext;\n\tfatal;\n\tdata;\n\tconstructor(message, code = MediaError.MEDIA_ERR_CUSTOM, fatal, context) {\n\t\tsuper(message);\n\t\tthis.name = \"MediaError\";\n\t\tthis.code = code;\n\t\tthis.context = context;\n\t\tthis.fatal = fatal ?? (code >= MediaError.MEDIA_ERR_NETWORK && code <= MediaError.MEDIA_ERR_ENCRYPTED);\n\t\tif (!this.message) this.message = MediaError.defaultMessages[this.code] ?? \"\";\n\t}\n};\n//#endregion\nexport { MediaError };\n\n//# sourceMappingURL=media-error.js.map","import { MediaError } from \"../../../core/media/media-error.js\";\n//#region src/dom/media/native-hls/errors.ts\nfunction NativeHlsMediaErrorsMixin(BaseClass) {\n\tclass NativeHlsMediaErrors extends BaseClass {\n\t\t#disconnect = null;\n\t\t#error = null;\n\t\tget error() {\n\t\t\treturn this.#error;\n\t\t}\n\t\tattach(target) {\n\t\t\tsuper.attach?.(target);\n\t\t\tthis.#init(target);\n\t\t}\n\t\tdetach() {\n\t\t\tthis.#destroy();\n\t\t\tsuper.detach?.();\n\t\t}\n\t\tdestroy() {\n\t\t\tthis.#destroy();\n\t\t\tsuper.destroy?.();\n\t\t}\n\t\t#destroy() {\n\t\t\tthis.#disconnect?.abort();\n\t\t\tthis.#disconnect = null;\n\t\t\tthis.#error = null;\n\t\t}\n\t\t#init(target) {\n\t\t\tthis.#destroy();\n\t\t\tthis.#disconnect = new AbortController();\n\t\t\tconst signal = this.#disconnect.signal;\n\t\t\ttarget.addEventListener(\"error\", (event) => {\n\t\t\t\tevent.stopImmediatePropagation();\n\t\t\t\tconst native = target.error;\n\t\t\t\tif (!native) return;\n\t\t\t\tconst error = new MediaError(native.message, native.code, true);\n\t\t\t\tthis.#error = error;\n\t\t\t\tthis.dispatchEvent(new ErrorEvent(\"error\", {\n\t\t\t\t\terror,\n\t\t\t\t\tmessage: error.message\n\t\t\t\t}));\n\t\t\t}, {\n\t\t\t\tsignal,\n\t\t\t\tcapture: true\n\t\t\t});\n\t\t\ttarget.addEventListener(\"emptied\", () => {\n\t\t\t\tthis.#error = null;\n\t\t\t}, { signal });\n\t\t}\n\t}\n\treturn NativeHlsMediaErrors;\n}\n//#endregion\nexport { NativeHlsMediaErrorsMixin };\n\n//# sourceMappingURL=errors.js.map","//#region src/dom/media/native-hls/m3u8-utils.ts\n/**\n* Returns `true` when `src` looks like an HLS playlist URL. Permissive: a\n* path or query string containing `.m3u8` is enough.\n*/\nfunction looksLikeM3u8(src) {\n\treturn src.toLowerCase().includes(\".m3u8\");\n}\n/**\n* Returns `true` when the playlist text is a multivariant (master) playlist.\n*\n* The presence of `#EXT-X-STREAM-INF` is conclusive — media playlists only\n* contain `#EXTINF` segment tags.\n*/\nfunction isMultivariantPlaylist(playlist) {\n\treturn playlist.includes(\"#EXT-X-STREAM-INF\");\n}\n/**\n* Resolves the first media playlist URL referenced by a multivariant\n* playlist, relative to `baseUrl`. Returns `null` when none is found or the\n* URL cannot be parsed.\n*/\nfunction resolveFirstMediaPlaylistUrl(multivariant, baseUrl) {\n\tconst lines = multivariant.split(/\\r?\\n/);\n\tconst start = lines.findIndex((l) => l.startsWith(\"#EXT-X-STREAM-INF\"));\n\tif (start === -1) return null;\n\tconst uri = lines.slice(start + 1).map((l) => l.trim()).find((l) => l && !l.startsWith(\"#\"));\n\tif (!uri) return null;\n\ttry {\n\t\treturn new URL(uri, baseUrl).toString();\n\t} catch {\n\t\treturn null;\n\t}\n}\n/**\n* Parses the subset of media-playlist tags needed to derive live edge state:\n* `#EXT-X-PLAYLIST-TYPE`, `#EXT-X-ENDLIST`, `#EXT-X-TARGETDURATION`,\n* `#EXT-X-PART-INF`.\n*\n* See spec:\n* - VOD or `#EXT-X-ENDLIST` present → on-demand, `targetLiveWindow = NaN`.\n* - `EVENT` playlist → DVR, `targetLiveWindow = Infinity`.\n* - Otherwise → standard live sliding window, `targetLiveWindow = 0`.\n*\n* The edge offset is `PART-TARGET * 2` for low-latency live and\n* `TARGETDURATION * 3` otherwise.\n*/\nfunction parseStreamInfo(playlist) {\n\tconst lines = playlist.split(/\\r?\\n/);\n\tlet playlistType;\n\tlet hasEndList = false;\n\tlet targetDuration;\n\tlet partTarget;\n\tfor (const raw of lines) {\n\t\tconst line = raw.trim();\n\t\tif (line.startsWith(\"#EXT-X-PLAYLIST-TYPE:\")) playlistType = line.slice(21).trim().toUpperCase();\n\t\telse if (line === \"#EXT-X-ENDLIST\") hasEndList = true;\n\t\telse if (line.startsWith(\"#EXT-X-TARGETDURATION:\")) {\n\t\t\tconst value = Number(line.slice(22));\n\t\t\tif (Number.isFinite(value)) targetDuration = value;\n\t\t} else if (line.startsWith(\"#EXT-X-PART-INF\")) {\n\t\t\tconst match = /PART-TARGET\\s*=\\s*([0-9.]+)/i.exec(line);\n\t\t\tif (match) {\n\t\t\t\tconst value = Number(match[1]);\n\t\t\t\tif (Number.isFinite(value)) partTarget = value;\n\t\t\t}\n\t\t}\n\t}\n\tif (playlistType === \"VOD\" || hasEndList) return {\n\t\ttargetLiveWindow: NaN,\n\t\tliveEdgeStartOffset: void 0\n\t};\n\treturn {\n\t\ttargetLiveWindow: playlistType === \"EVENT\" ? Number.POSITIVE_INFINITY : 0,\n\t\tliveEdgeStartOffset: partTarget !== void 0 ? partTarget * 2 : targetDuration !== void 0 ? targetDuration * 3 : void 0\n\t};\n}\nasync function fetchPlaylist(url, init) {\n\tconst response = await fetch(url, init);\n\tif (!response.ok) throw new Error(`Failed to fetch playlist (${response.status}): ${url}`);\n\treturn {\n\t\ttext: await response.text(),\n\t\turl: response.url || url\n\t};\n}\n/**\n* Fetches the HLS playlist at `src`, following the first variant if it's a\n* multivariant playlist, and parses it into a {@link StreamInfo}.\n*\n* @throws when the fetch fails or no media playlist URL can be resolved.\n*/\nasync function getStreamInfoFromSrc(src, signal) {\n\tconst init = signal ? { signal } : {};\n\tconst { text, url } = await fetchPlaylist(src, init);\n\tif (!isMultivariantPlaylist(text)) return parseStreamInfo(text);\n\tconst mediaUrl = resolveFirstMediaPlaylistUrl(text, url);\n\tif (!mediaUrl) throw new Error(\"No media playlist URL found in multivariant playlist\");\n\treturn parseStreamInfo((await fetchPlaylist(mediaUrl, init)).text);\n}\n//#endregion\nexport { getStreamInfoFromSrc, looksLikeM3u8 };\n\n//# sourceMappingURL=m3u8-utils.js.map","import { getStreamInfoFromSrc, looksLikeM3u8 } from \"./m3u8-utils.js\";\n//#region src/dom/media/native-hls/live.ts\nfunction NativeHlsMediaLiveMixin(BaseClass) {\n\tclass NativeHlsMediaLive extends BaseClass {\n\t\t#targetLiveWindow = NaN;\n\t\t#liveEdgeStartOffset;\n\t\t#disconnect = null;\n\t\t#currentSrc = \"\";\n\t\tget targetLiveWindow() {\n\t\t\treturn this.#targetLiveWindow;\n\t\t}\n\t\tget liveEdgeStart() {\n\t\t\tif (this.#liveEdgeStartOffset === void 0) return NaN;\n\t\t\tconst target = this.target;\n\t\t\tif (!target) return NaN;\n\t\t\tconst { seekable, buffered } = target;\n\t\t\tconst ranges = seekable.length ? seekable : buffered;\n\t\t\tif (!ranges.length) return NaN;\n\t\t\treturn ranges.end(ranges.length - 1) - this.#liveEdgeStartOffset;\n\t\t}\n\t\tattach(target) {\n\t\t\tsuper.attach?.(target);\n\t\t\tthis.#init(target);\n\t\t}\n\t\tdetach() {\n\t\t\tthis.#destroy();\n\t\t\tsuper.detach?.();\n\t\t}\n\t\tdestroy() {\n\t\t\tthis.#destroy();\n\t\t\tsuper.destroy?.();\n\t\t}\n\t\t#destroy() {\n\t\t\tthis.#disconnect?.abort();\n\t\t\tthis.#disconnect = null;\n\t\t\tthis.#currentSrc = \"\";\n\t\t\tthis.#liveEdgeStartOffset = void 0;\n\t\t\tthis.#setTargetLiveWindow(NaN);\n\t\t}\n\t\t#init(target) {\n\t\t\tthis.#destroy();\n\t\t\tthis.#disconnect = new AbortController();\n\t\t\tconst { signal } = this.#disconnect;\n\t\t\ttarget.addEventListener(\"loadstart\", () => this.#refresh(target), { signal });\n\t\t\ttarget.addEventListener(\"emptied\", () => {\n\t\t\t\tthis.#currentSrc = \"\";\n\t\t\t\tthis.#liveEdgeStartOffset = void 0;\n\t\t\t\tthis.#setTargetLiveWindow(NaN);\n\t\t\t}, { signal });\n\t\t\tif (target.currentSrc || target.src) this.#refresh(target);\n\t\t}\n\t\tasync #refresh(target) {\n\t\t\tconst src = target.currentSrc || target.src;\n\t\t\tif (!src || !looksLikeM3u8(src) || src === this.#currentSrc) return;\n\t\t\tthis.#currentSrc = src;\n\t\t\tthis.#liveEdgeStartOffset = void 0;\n\t\t\tthis.#setTargetLiveWindow(NaN);\n\t\t\tconst signal = this.#disconnect?.signal;\n\t\t\ttry {\n\t\t\t\tconst info = await getStreamInfoFromSrc(src, signal);\n\t\t\t\tif (signal?.aborted) return;\n\t\t\t\tif ((target.currentSrc || target.src) !== src) return;\n\t\t\t\tthis.#liveEdgeStartOffset = info.liveEdgeStartOffset;\n\t\t\t\tthis.#setTargetLiveWindow(info.targetLiveWindow);\n\t\t\t} catch {}\n\t\t}\n\t\t#setTargetLiveWindow(value) {\n\t\t\tif (Object.is(this.#targetLiveWindow, value)) return;\n\t\t\tthis.#targetLiveWindow = value;\n\t\t\tthis.dispatchEvent(new Event(\"targetlivewindowchange\"));\n\t\t}\n\t}\n\treturn NativeHlsMediaLive;\n}\n//#endregion\nexport { NativeHlsMediaLiveMixin };\n\n//# sourceMappingURL=live.js.map","import { MediaStreamTypes } from \"../../../core/media/types.js\";\n//#region src/dom/media/native-hls/stream-type.ts\nfunction NativeHlsMediaStreamTypeMixin(BaseClass) {\n\tclass NativeHlsMediaStreamType extends BaseClass {\n\t\t#streamType = MediaStreamTypes.UNKNOWN;\n\t\t#isUserStreamType = false;\n\t\t#disconnect = null;\n\t\tget streamType() {\n\t\t\treturn this.#streamType;\n\t\t}\n\t\tset streamType(value) {\n\t\t\tif (value === MediaStreamTypes.UNKNOWN) {\n\t\t\t\tthis.#isUserStreamType = false;\n\t\t\t\tthis.#setDetected(this.#detect());\n\t\t\t\treturn;\n\t\t\t}\n\t\t\tthis.#isUserStreamType = true;\n\t\t\tthis.#update(value);\n\t\t}\n\t\tattach(target) {\n\t\t\tsuper.attach?.(target);\n\t\t\tthis.#init(target);\n\t\t}\n\t\tdetach() {\n\t\t\tthis.#destroy();\n\t\t\tthis.#setDetected(MediaStreamTypes.UNKNOWN);\n\t\t\tsuper.detach?.();\n\t\t}\n\t\tdestroy() {\n\t\t\tthis.#destroy();\n\t\t\tsuper.destroy?.();\n\t\t}\n\t\t#destroy() {\n\t\t\tthis.#disconnect?.abort();\n\t\t\tthis.#disconnect = null;\n\t\t}\n\t\t#init(target) {\n\t\t\tthis.#destroy();\n\t\t\tthis.#disconnect = new AbortController();\n\t\t\tconst { signal } = this.#disconnect;\n\t\t\tconst detect = () => this.#setDetected(this.#detect(target));\n\t\t\ttarget.addEventListener(\"durationchange\", detect, { signal });\n\t\t\ttarget.addEventListener(\"loadedmetadata\", detect, { signal });\n\t\t\ttarget.addEventListener(\"emptied\", () => this.#setDetected(MediaStreamTypes.UNKNOWN), { signal });\n\t\t\tdetect();\n\t\t}\n\t\t#detect(target = this.target) {\n\t\t\tif (!target) return MediaStreamTypes.UNKNOWN;\n\t\t\tconst { duration } = target;\n\t\t\tif (duration === Infinity) return MediaStreamTypes.LIVE;\n\t\t\tif (Number.isFinite(duration) && duration > 0) return MediaStreamTypes.ON_DEMAND;\n\t\t\treturn MediaStreamTypes.UNKNOWN;\n\t\t}\n\t\t#setDetected(value) {\n\t\t\tif (this.#isUserStreamType) return;\n\t\t\tthis.#update(value);\n\t\t}\n\t\t#update(value) {\n\t\t\tif (this.#streamType === value) return;\n\t\t\tthis.#streamType = value;\n\t\t\tthis.dispatchEvent(new Event(\"streamtypechange\"));\n\t\t}\n\t}\n\treturn NativeHlsMediaStreamType;\n}\n//#endregion\nexport { NativeHlsMediaStreamTypeMixin };\n\n//# sourceMappingURL=stream-type.js.map","import { MediaStreamTypes } from \"../../../core/media/types.js\";\nimport { HTMLVideoElementHost } from \"../video-host.js\";\nimport { NativeHlsMediaErrorsMixin } from \"./errors.js\";\nimport { NativeHlsMediaLiveMixin } from \"./live.js\";\nimport { NativeHlsMediaStreamTypeMixin } from \"./stream-type.js\";\n//#region src/dom/media/native-hls/index.ts\nconst StreamTypes = MediaStreamTypes;\nconst nativeHlsMediaDefaultProps = {\n\tsrc: \"\",\n\tpreload: \"metadata\",\n\tstreamType: MediaStreamTypes.UNKNOWN\n};\nvar NativeHlsMediaBase = class extends HTMLVideoElementHost {\n\t#src = nativeHlsMediaDefaultProps.src;\n\t#preload = nativeHlsMediaDefaultProps.preload;\n\tget engine() {\n\t\treturn null;\n\t}\n\tget src() {\n\t\treturn this.#src;\n\t}\n\tset src(src) {\n\t\tthis.#src = src;\n\t\tif (this.target) this.target.src = src;\n\t}\n\tget preload() {\n\t\treturn this.#preload;\n\t}\n\tset preload(value) {\n\t\tthis.#preload = value;\n\t\tif (this.target) this.target.preload = value;\n\t}\n\tattach(target) {\n\t\tsuper.attach(target);\n\t\tif (this.preload !== target.preload) target.preload = this.preload;\n\t\tif (this.src) target.src = this.src;\n\t}\n\tdetach() {\n\t\tsuper.detach();\n\t}\n\tdestroy() {\n\t\tthis.detach();\n\t}\n};\nvar NativeHlsMedia = class extends NativeHlsMediaLiveMixin(NativeHlsMediaStreamTypeMixin(NativeHlsMediaErrorsMixin(NativeHlsMediaBase))) {};\n//#endregion\nexport { NativeHlsMedia, StreamTypes, nativeHlsMediaDefaultProps };\n\n//# sourceMappingURL=index.js.map"],"mappings":"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"}
|
|
@@ -0,0 +1,371 @@
|
|
|
1
|
+
import { t as MediaStreamTypes } from "./types-B_4Es-UH.js";
|
|
2
|
+
import { t as HTMLVideoElementHost } from "./video-host-BU9t26fe.js";
|
|
3
|
+
|
|
4
|
+
//#region ../core/dist/dev/core/media/media-error.js
|
|
5
|
+
var MediaError = class MediaError extends Error {
|
|
6
|
+
static MEDIA_ERR_ABORTED = 1;
|
|
7
|
+
static MEDIA_ERR_NETWORK = 2;
|
|
8
|
+
static MEDIA_ERR_DECODE = 3;
|
|
9
|
+
static MEDIA_ERR_SRC_NOT_SUPPORTED = 4;
|
|
10
|
+
static MEDIA_ERR_ENCRYPTED = 5;
|
|
11
|
+
static MEDIA_ERR_CUSTOM = 100;
|
|
12
|
+
static defaultMessages = {
|
|
13
|
+
1: "You aborted the media playback",
|
|
14
|
+
2: "A network error caused the media download to fail.",
|
|
15
|
+
3: "A media error caused playback to be aborted. The media could be corrupt or your browser does not support this format.",
|
|
16
|
+
4: "An unsupported error occurred. The server or network failed, or your browser does not support this format.",
|
|
17
|
+
5: "The media is encrypted and there are no keys to decrypt it."
|
|
18
|
+
};
|
|
19
|
+
name;
|
|
20
|
+
code;
|
|
21
|
+
context;
|
|
22
|
+
fatal;
|
|
23
|
+
data;
|
|
24
|
+
constructor(message, code = MediaError.MEDIA_ERR_CUSTOM, fatal, context) {
|
|
25
|
+
super(message);
|
|
26
|
+
this.name = "MediaError";
|
|
27
|
+
this.code = code;
|
|
28
|
+
this.context = context;
|
|
29
|
+
this.fatal = fatal ?? (code >= MediaError.MEDIA_ERR_NETWORK && code <= MediaError.MEDIA_ERR_ENCRYPTED);
|
|
30
|
+
if (!this.message) this.message = MediaError.defaultMessages[this.code] ?? "";
|
|
31
|
+
}
|
|
32
|
+
};
|
|
33
|
+
|
|
34
|
+
//#endregion
|
|
35
|
+
//#region ../core/dist/dev/dom/media/native-hls/errors.js
|
|
36
|
+
function NativeHlsMediaErrorsMixin(BaseClass) {
|
|
37
|
+
class NativeHlsMediaErrors extends BaseClass {
|
|
38
|
+
#disconnect = null;
|
|
39
|
+
#error = null;
|
|
40
|
+
get error() {
|
|
41
|
+
return this.#error;
|
|
42
|
+
}
|
|
43
|
+
attach(target) {
|
|
44
|
+
super.attach?.(target);
|
|
45
|
+
this.#init(target);
|
|
46
|
+
}
|
|
47
|
+
detach() {
|
|
48
|
+
this.#destroy();
|
|
49
|
+
super.detach?.();
|
|
50
|
+
}
|
|
51
|
+
destroy() {
|
|
52
|
+
this.#destroy();
|
|
53
|
+
super.destroy?.();
|
|
54
|
+
}
|
|
55
|
+
#destroy() {
|
|
56
|
+
this.#disconnect?.abort();
|
|
57
|
+
this.#disconnect = null;
|
|
58
|
+
this.#error = null;
|
|
59
|
+
}
|
|
60
|
+
#init(target) {
|
|
61
|
+
this.#destroy();
|
|
62
|
+
this.#disconnect = new AbortController();
|
|
63
|
+
const signal = this.#disconnect.signal;
|
|
64
|
+
target.addEventListener("error", (event) => {
|
|
65
|
+
event.stopImmediatePropagation();
|
|
66
|
+
const native = target.error;
|
|
67
|
+
if (!native) return;
|
|
68
|
+
const error = new MediaError(native.message, native.code, true);
|
|
69
|
+
this.#error = error;
|
|
70
|
+
this.dispatchEvent(new ErrorEvent("error", {
|
|
71
|
+
error,
|
|
72
|
+
message: error.message
|
|
73
|
+
}));
|
|
74
|
+
}, {
|
|
75
|
+
signal,
|
|
76
|
+
capture: true
|
|
77
|
+
});
|
|
78
|
+
target.addEventListener("emptied", () => {
|
|
79
|
+
this.#error = null;
|
|
80
|
+
}, { signal });
|
|
81
|
+
}
|
|
82
|
+
}
|
|
83
|
+
return NativeHlsMediaErrors;
|
|
84
|
+
}
|
|
85
|
+
|
|
86
|
+
//#endregion
|
|
87
|
+
//#region ../core/dist/dev/dom/media/native-hls/m3u8-utils.js
|
|
88
|
+
/**
|
|
89
|
+
* Returns `true` when `src` looks like an HLS playlist URL. Permissive: a
|
|
90
|
+
* path or query string containing `.m3u8` is enough.
|
|
91
|
+
*/
|
|
92
|
+
function looksLikeM3u8(src) {
|
|
93
|
+
return src.toLowerCase().includes(".m3u8");
|
|
94
|
+
}
|
|
95
|
+
/**
|
|
96
|
+
* Returns `true` when the playlist text is a multivariant (master) playlist.
|
|
97
|
+
*
|
|
98
|
+
* The presence of `#EXT-X-STREAM-INF` is conclusive — media playlists only
|
|
99
|
+
* contain `#EXTINF` segment tags.
|
|
100
|
+
*/
|
|
101
|
+
function isMultivariantPlaylist(playlist) {
|
|
102
|
+
return playlist.includes("#EXT-X-STREAM-INF");
|
|
103
|
+
}
|
|
104
|
+
/**
|
|
105
|
+
* Resolves the first media playlist URL referenced by a multivariant
|
|
106
|
+
* playlist, relative to `baseUrl`. Returns `null` when none is found or the
|
|
107
|
+
* URL cannot be parsed.
|
|
108
|
+
*/
|
|
109
|
+
function resolveFirstMediaPlaylistUrl(multivariant, baseUrl) {
|
|
110
|
+
const lines = multivariant.split(/\r?\n/);
|
|
111
|
+
const start = lines.findIndex((l) => l.startsWith("#EXT-X-STREAM-INF"));
|
|
112
|
+
if (start === -1) return null;
|
|
113
|
+
const uri = lines.slice(start + 1).map((l) => l.trim()).find((l) => l && !l.startsWith("#"));
|
|
114
|
+
if (!uri) return null;
|
|
115
|
+
try {
|
|
116
|
+
return new URL(uri, baseUrl).toString();
|
|
117
|
+
} catch {
|
|
118
|
+
return null;
|
|
119
|
+
}
|
|
120
|
+
}
|
|
121
|
+
/**
|
|
122
|
+
* Parses the subset of media-playlist tags needed to derive live edge state:
|
|
123
|
+
* `#EXT-X-PLAYLIST-TYPE`, `#EXT-X-ENDLIST`, `#EXT-X-TARGETDURATION`,
|
|
124
|
+
* `#EXT-X-PART-INF`.
|
|
125
|
+
*
|
|
126
|
+
* See spec:
|
|
127
|
+
* - VOD or `#EXT-X-ENDLIST` present → on-demand, `targetLiveWindow = NaN`.
|
|
128
|
+
* - `EVENT` playlist → DVR, `targetLiveWindow = Infinity`.
|
|
129
|
+
* - Otherwise → standard live sliding window, `targetLiveWindow = 0`.
|
|
130
|
+
*
|
|
131
|
+
* The edge offset is `PART-TARGET * 2` for low-latency live and
|
|
132
|
+
* `TARGETDURATION * 3` otherwise.
|
|
133
|
+
*/
|
|
134
|
+
function parseStreamInfo(playlist) {
|
|
135
|
+
const lines = playlist.split(/\r?\n/);
|
|
136
|
+
let playlistType;
|
|
137
|
+
let hasEndList = false;
|
|
138
|
+
let targetDuration;
|
|
139
|
+
let partTarget;
|
|
140
|
+
for (const raw of lines) {
|
|
141
|
+
const line = raw.trim();
|
|
142
|
+
if (line.startsWith("#EXT-X-PLAYLIST-TYPE:")) playlistType = line.slice(21).trim().toUpperCase();
|
|
143
|
+
else if (line === "#EXT-X-ENDLIST") hasEndList = true;
|
|
144
|
+
else if (line.startsWith("#EXT-X-TARGETDURATION:")) {
|
|
145
|
+
const value = Number(line.slice(22));
|
|
146
|
+
if (Number.isFinite(value)) targetDuration = value;
|
|
147
|
+
} else if (line.startsWith("#EXT-X-PART-INF")) {
|
|
148
|
+
const match = /PART-TARGET\s*=\s*([0-9.]+)/i.exec(line);
|
|
149
|
+
if (match) {
|
|
150
|
+
const value = Number(match[1]);
|
|
151
|
+
if (Number.isFinite(value)) partTarget = value;
|
|
152
|
+
}
|
|
153
|
+
}
|
|
154
|
+
}
|
|
155
|
+
if (playlistType === "VOD" || hasEndList) return {
|
|
156
|
+
targetLiveWindow: NaN,
|
|
157
|
+
liveEdgeStartOffset: void 0
|
|
158
|
+
};
|
|
159
|
+
return {
|
|
160
|
+
targetLiveWindow: playlistType === "EVENT" ? Number.POSITIVE_INFINITY : 0,
|
|
161
|
+
liveEdgeStartOffset: partTarget !== void 0 ? partTarget * 2 : targetDuration !== void 0 ? targetDuration * 3 : void 0
|
|
162
|
+
};
|
|
163
|
+
}
|
|
164
|
+
async function fetchPlaylist(url, init) {
|
|
165
|
+
const response = await fetch(url, init);
|
|
166
|
+
if (!response.ok) throw new Error(`Failed to fetch playlist (${response.status}): ${url}`);
|
|
167
|
+
return {
|
|
168
|
+
text: await response.text(),
|
|
169
|
+
url: response.url || url
|
|
170
|
+
};
|
|
171
|
+
}
|
|
172
|
+
/**
|
|
173
|
+
* Fetches the HLS playlist at `src`, following the first variant if it's a
|
|
174
|
+
* multivariant playlist, and parses it into a {@link StreamInfo}.
|
|
175
|
+
*
|
|
176
|
+
* @throws when the fetch fails or no media playlist URL can be resolved.
|
|
177
|
+
*/
|
|
178
|
+
async function getStreamInfoFromSrc(src, signal) {
|
|
179
|
+
const init = signal ? { signal } : {};
|
|
180
|
+
const { text, url } = await fetchPlaylist(src, init);
|
|
181
|
+
if (!isMultivariantPlaylist(text)) return parseStreamInfo(text);
|
|
182
|
+
const mediaUrl = resolveFirstMediaPlaylistUrl(text, url);
|
|
183
|
+
if (!mediaUrl) throw new Error("No media playlist URL found in multivariant playlist");
|
|
184
|
+
return parseStreamInfo((await fetchPlaylist(mediaUrl, init)).text);
|
|
185
|
+
}
|
|
186
|
+
|
|
187
|
+
//#endregion
|
|
188
|
+
//#region ../core/dist/dev/dom/media/native-hls/live.js
|
|
189
|
+
function NativeHlsMediaLiveMixin(BaseClass) {
|
|
190
|
+
class NativeHlsMediaLive extends BaseClass {
|
|
191
|
+
#targetLiveWindow = NaN;
|
|
192
|
+
#liveEdgeStartOffset;
|
|
193
|
+
#disconnect = null;
|
|
194
|
+
#currentSrc = "";
|
|
195
|
+
get targetLiveWindow() {
|
|
196
|
+
return this.#targetLiveWindow;
|
|
197
|
+
}
|
|
198
|
+
get liveEdgeStart() {
|
|
199
|
+
if (this.#liveEdgeStartOffset === void 0) return NaN;
|
|
200
|
+
const target = this.target;
|
|
201
|
+
if (!target) return NaN;
|
|
202
|
+
const { seekable, buffered } = target;
|
|
203
|
+
const ranges = seekable.length ? seekable : buffered;
|
|
204
|
+
if (!ranges.length) return NaN;
|
|
205
|
+
return ranges.end(ranges.length - 1) - this.#liveEdgeStartOffset;
|
|
206
|
+
}
|
|
207
|
+
attach(target) {
|
|
208
|
+
super.attach?.(target);
|
|
209
|
+
this.#init(target);
|
|
210
|
+
}
|
|
211
|
+
detach() {
|
|
212
|
+
this.#destroy();
|
|
213
|
+
super.detach?.();
|
|
214
|
+
}
|
|
215
|
+
destroy() {
|
|
216
|
+
this.#destroy();
|
|
217
|
+
super.destroy?.();
|
|
218
|
+
}
|
|
219
|
+
#destroy() {
|
|
220
|
+
this.#disconnect?.abort();
|
|
221
|
+
this.#disconnect = null;
|
|
222
|
+
this.#currentSrc = "";
|
|
223
|
+
this.#liveEdgeStartOffset = void 0;
|
|
224
|
+
this.#setTargetLiveWindow(NaN);
|
|
225
|
+
}
|
|
226
|
+
#init(target) {
|
|
227
|
+
this.#destroy();
|
|
228
|
+
this.#disconnect = new AbortController();
|
|
229
|
+
const { signal } = this.#disconnect;
|
|
230
|
+
target.addEventListener("loadstart", () => this.#refresh(target), { signal });
|
|
231
|
+
target.addEventListener("emptied", () => {
|
|
232
|
+
this.#currentSrc = "";
|
|
233
|
+
this.#liveEdgeStartOffset = void 0;
|
|
234
|
+
this.#setTargetLiveWindow(NaN);
|
|
235
|
+
}, { signal });
|
|
236
|
+
if (target.currentSrc || target.src) this.#refresh(target);
|
|
237
|
+
}
|
|
238
|
+
async #refresh(target) {
|
|
239
|
+
const src = target.currentSrc || target.src;
|
|
240
|
+
if (!src || !looksLikeM3u8(src) || src === this.#currentSrc) return;
|
|
241
|
+
this.#currentSrc = src;
|
|
242
|
+
this.#liveEdgeStartOffset = void 0;
|
|
243
|
+
this.#setTargetLiveWindow(NaN);
|
|
244
|
+
const signal = this.#disconnect?.signal;
|
|
245
|
+
try {
|
|
246
|
+
const info = await getStreamInfoFromSrc(src, signal);
|
|
247
|
+
if (signal?.aborted) return;
|
|
248
|
+
if ((target.currentSrc || target.src) !== src) return;
|
|
249
|
+
this.#liveEdgeStartOffset = info.liveEdgeStartOffset;
|
|
250
|
+
this.#setTargetLiveWindow(info.targetLiveWindow);
|
|
251
|
+
} catch {}
|
|
252
|
+
}
|
|
253
|
+
#setTargetLiveWindow(value) {
|
|
254
|
+
if (Object.is(this.#targetLiveWindow, value)) return;
|
|
255
|
+
this.#targetLiveWindow = value;
|
|
256
|
+
this.dispatchEvent(new Event("targetlivewindowchange"));
|
|
257
|
+
}
|
|
258
|
+
}
|
|
259
|
+
return NativeHlsMediaLive;
|
|
260
|
+
}
|
|
261
|
+
|
|
262
|
+
//#endregion
|
|
263
|
+
//#region ../core/dist/dev/dom/media/native-hls/stream-type.js
|
|
264
|
+
function NativeHlsMediaStreamTypeMixin(BaseClass) {
|
|
265
|
+
class NativeHlsMediaStreamType extends BaseClass {
|
|
266
|
+
#streamType = MediaStreamTypes.UNKNOWN;
|
|
267
|
+
#isUserStreamType = false;
|
|
268
|
+
#disconnect = null;
|
|
269
|
+
get streamType() {
|
|
270
|
+
return this.#streamType;
|
|
271
|
+
}
|
|
272
|
+
set streamType(value) {
|
|
273
|
+
if (value === MediaStreamTypes.UNKNOWN) {
|
|
274
|
+
this.#isUserStreamType = false;
|
|
275
|
+
this.#setDetected(this.#detect());
|
|
276
|
+
return;
|
|
277
|
+
}
|
|
278
|
+
this.#isUserStreamType = true;
|
|
279
|
+
this.#update(value);
|
|
280
|
+
}
|
|
281
|
+
attach(target) {
|
|
282
|
+
super.attach?.(target);
|
|
283
|
+
this.#init(target);
|
|
284
|
+
}
|
|
285
|
+
detach() {
|
|
286
|
+
this.#destroy();
|
|
287
|
+
this.#setDetected(MediaStreamTypes.UNKNOWN);
|
|
288
|
+
super.detach?.();
|
|
289
|
+
}
|
|
290
|
+
destroy() {
|
|
291
|
+
this.#destroy();
|
|
292
|
+
super.destroy?.();
|
|
293
|
+
}
|
|
294
|
+
#destroy() {
|
|
295
|
+
this.#disconnect?.abort();
|
|
296
|
+
this.#disconnect = null;
|
|
297
|
+
}
|
|
298
|
+
#init(target) {
|
|
299
|
+
this.#destroy();
|
|
300
|
+
this.#disconnect = new AbortController();
|
|
301
|
+
const { signal } = this.#disconnect;
|
|
302
|
+
const detect = () => this.#setDetected(this.#detect(target));
|
|
303
|
+
target.addEventListener("durationchange", detect, { signal });
|
|
304
|
+
target.addEventListener("loadedmetadata", detect, { signal });
|
|
305
|
+
target.addEventListener("emptied", () => this.#setDetected(MediaStreamTypes.UNKNOWN), { signal });
|
|
306
|
+
detect();
|
|
307
|
+
}
|
|
308
|
+
#detect(target = this.target) {
|
|
309
|
+
if (!target) return MediaStreamTypes.UNKNOWN;
|
|
310
|
+
const { duration } = target;
|
|
311
|
+
if (duration === Infinity) return MediaStreamTypes.LIVE;
|
|
312
|
+
if (Number.isFinite(duration) && duration > 0) return MediaStreamTypes.ON_DEMAND;
|
|
313
|
+
return MediaStreamTypes.UNKNOWN;
|
|
314
|
+
}
|
|
315
|
+
#setDetected(value) {
|
|
316
|
+
if (this.#isUserStreamType) return;
|
|
317
|
+
this.#update(value);
|
|
318
|
+
}
|
|
319
|
+
#update(value) {
|
|
320
|
+
if (this.#streamType === value) return;
|
|
321
|
+
this.#streamType = value;
|
|
322
|
+
this.dispatchEvent(new Event("streamtypechange"));
|
|
323
|
+
}
|
|
324
|
+
}
|
|
325
|
+
return NativeHlsMediaStreamType;
|
|
326
|
+
}
|
|
327
|
+
|
|
328
|
+
//#endregion
|
|
329
|
+
//#region ../core/dist/dev/dom/media/native-hls/index.js
|
|
330
|
+
const nativeHlsMediaDefaultProps = {
|
|
331
|
+
src: "",
|
|
332
|
+
preload: "metadata",
|
|
333
|
+
streamType: MediaStreamTypes.UNKNOWN
|
|
334
|
+
};
|
|
335
|
+
var NativeHlsMediaBase = class extends HTMLVideoElementHost {
|
|
336
|
+
#src = nativeHlsMediaDefaultProps.src;
|
|
337
|
+
#preload = nativeHlsMediaDefaultProps.preload;
|
|
338
|
+
get engine() {
|
|
339
|
+
return null;
|
|
340
|
+
}
|
|
341
|
+
get src() {
|
|
342
|
+
return this.#src;
|
|
343
|
+
}
|
|
344
|
+
set src(src) {
|
|
345
|
+
this.#src = src;
|
|
346
|
+
if (this.target) this.target.src = src;
|
|
347
|
+
}
|
|
348
|
+
get preload() {
|
|
349
|
+
return this.#preload;
|
|
350
|
+
}
|
|
351
|
+
set preload(value) {
|
|
352
|
+
this.#preload = value;
|
|
353
|
+
if (this.target) this.target.preload = value;
|
|
354
|
+
}
|
|
355
|
+
attach(target) {
|
|
356
|
+
super.attach(target);
|
|
357
|
+
if (this.preload !== target.preload) target.preload = this.preload;
|
|
358
|
+
if (this.src) target.src = this.src;
|
|
359
|
+
}
|
|
360
|
+
detach() {
|
|
361
|
+
super.detach();
|
|
362
|
+
}
|
|
363
|
+
destroy() {
|
|
364
|
+
this.detach();
|
|
365
|
+
}
|
|
366
|
+
};
|
|
367
|
+
var NativeHlsMedia = class extends NativeHlsMediaLiveMixin(NativeHlsMediaStreamTypeMixin(NativeHlsMediaErrorsMixin(NativeHlsMediaBase))) {};
|
|
368
|
+
|
|
369
|
+
//#endregion
|
|
370
|
+
export { MediaError as n, NativeHlsMedia as t };
|
|
371
|
+
//# sourceMappingURL=native-hls-D4f2-E9D.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"native-hls-D4f2-E9D.js","names":["#error","#init","#destroy","#disconnect","#targetLiveWindow","#liveEdgeStartOffset","#init","#destroy","#disconnect","#currentSrc","#setTargetLiveWindow","#refresh","#streamType","#isUserStreamType","#setDetected","#detect","#update","#init","#destroy","#disconnect","#src","#preload"],"sources":["../../core/dist/dev/core/media/media-error.js","../../core/dist/dev/dom/media/native-hls/errors.js","../../core/dist/dev/dom/media/native-hls/m3u8-utils.js","../../core/dist/dev/dom/media/native-hls/live.js","../../core/dist/dev/dom/media/native-hls/stream-type.js","../../core/dist/dev/dom/media/native-hls/index.js"],"sourcesContent":["//#region src/core/media/media-error.ts\nvar MediaError = class MediaError extends Error {\n\tstatic MEDIA_ERR_ABORTED = 1;\n\tstatic MEDIA_ERR_NETWORK = 2;\n\tstatic MEDIA_ERR_DECODE = 3;\n\tstatic MEDIA_ERR_SRC_NOT_SUPPORTED = 4;\n\tstatic MEDIA_ERR_ENCRYPTED = 5;\n\tstatic MEDIA_ERR_CUSTOM = 100;\n\tstatic defaultMessages = {\n\t\t1: \"You aborted the media playback\",\n\t\t2: \"A network error caused the media download to fail.\",\n\t\t3: \"A media error caused playback to be aborted. The media could be corrupt or your browser does not support this format.\",\n\t\t4: \"An unsupported error occurred. The server or network failed, or your browser does not support this format.\",\n\t\t5: \"The media is encrypted and there are no keys to decrypt it.\"\n\t};\n\tname;\n\tcode;\n\tcontext;\n\tfatal;\n\tdata;\n\tconstructor(message, code = MediaError.MEDIA_ERR_CUSTOM, fatal, context) {\n\t\tsuper(message);\n\t\tthis.name = \"MediaError\";\n\t\tthis.code = code;\n\t\tthis.context = context;\n\t\tthis.fatal = fatal ?? (code >= MediaError.MEDIA_ERR_NETWORK && code <= MediaError.MEDIA_ERR_ENCRYPTED);\n\t\tif (!this.message) this.message = MediaError.defaultMessages[this.code] ?? \"\";\n\t}\n};\n//#endregion\nexport { MediaError };\n\n//# sourceMappingURL=media-error.js.map","import { MediaError } from \"../../../core/media/media-error.js\";\n//#region src/dom/media/native-hls/errors.ts\nfunction NativeHlsMediaErrorsMixin(BaseClass) {\n\tclass NativeHlsMediaErrors extends BaseClass {\n\t\t#disconnect = null;\n\t\t#error = null;\n\t\tget error() {\n\t\t\treturn this.#error;\n\t\t}\n\t\tattach(target) {\n\t\t\tsuper.attach?.(target);\n\t\t\tthis.#init(target);\n\t\t}\n\t\tdetach() {\n\t\t\tthis.#destroy();\n\t\t\tsuper.detach?.();\n\t\t}\n\t\tdestroy() {\n\t\t\tthis.#destroy();\n\t\t\tsuper.destroy?.();\n\t\t}\n\t\t#destroy() {\n\t\t\tthis.#disconnect?.abort();\n\t\t\tthis.#disconnect = null;\n\t\t\tthis.#error = null;\n\t\t}\n\t\t#init(target) {\n\t\t\tthis.#destroy();\n\t\t\tthis.#disconnect = new AbortController();\n\t\t\tconst signal = this.#disconnect.signal;\n\t\t\ttarget.addEventListener(\"error\", (event) => {\n\t\t\t\tevent.stopImmediatePropagation();\n\t\t\t\tconst native = target.error;\n\t\t\t\tif (!native) return;\n\t\t\t\tconst error = new MediaError(native.message, native.code, true);\n\t\t\t\tthis.#error = error;\n\t\t\t\tthis.dispatchEvent(new ErrorEvent(\"error\", {\n\t\t\t\t\terror,\n\t\t\t\t\tmessage: error.message\n\t\t\t\t}));\n\t\t\t}, {\n\t\t\t\tsignal,\n\t\t\t\tcapture: true\n\t\t\t});\n\t\t\ttarget.addEventListener(\"emptied\", () => {\n\t\t\t\tthis.#error = null;\n\t\t\t}, { signal });\n\t\t}\n\t}\n\treturn NativeHlsMediaErrors;\n}\n//#endregion\nexport { NativeHlsMediaErrorsMixin };\n\n//# sourceMappingURL=errors.js.map","//#region src/dom/media/native-hls/m3u8-utils.ts\n/**\n* Returns `true` when `src` looks like an HLS playlist URL. Permissive: a\n* path or query string containing `.m3u8` is enough.\n*/\nfunction looksLikeM3u8(src) {\n\treturn src.toLowerCase().includes(\".m3u8\");\n}\n/**\n* Returns `true` when the playlist text is a multivariant (master) playlist.\n*\n* The presence of `#EXT-X-STREAM-INF` is conclusive — media playlists only\n* contain `#EXTINF` segment tags.\n*/\nfunction isMultivariantPlaylist(playlist) {\n\treturn playlist.includes(\"#EXT-X-STREAM-INF\");\n}\n/**\n* Resolves the first media playlist URL referenced by a multivariant\n* playlist, relative to `baseUrl`. Returns `null` when none is found or the\n* URL cannot be parsed.\n*/\nfunction resolveFirstMediaPlaylistUrl(multivariant, baseUrl) {\n\tconst lines = multivariant.split(/\\r?\\n/);\n\tconst start = lines.findIndex((l) => l.startsWith(\"#EXT-X-STREAM-INF\"));\n\tif (start === -1) return null;\n\tconst uri = lines.slice(start + 1).map((l) => l.trim()).find((l) => l && !l.startsWith(\"#\"));\n\tif (!uri) return null;\n\ttry {\n\t\treturn new URL(uri, baseUrl).toString();\n\t} catch {\n\t\treturn null;\n\t}\n}\n/**\n* Parses the subset of media-playlist tags needed to derive live edge state:\n* `#EXT-X-PLAYLIST-TYPE`, `#EXT-X-ENDLIST`, `#EXT-X-TARGETDURATION`,\n* `#EXT-X-PART-INF`.\n*\n* See spec:\n* - VOD or `#EXT-X-ENDLIST` present → on-demand, `targetLiveWindow = NaN`.\n* - `EVENT` playlist → DVR, `targetLiveWindow = Infinity`.\n* - Otherwise → standard live sliding window, `targetLiveWindow = 0`.\n*\n* The edge offset is `PART-TARGET * 2` for low-latency live and\n* `TARGETDURATION * 3` otherwise.\n*/\nfunction parseStreamInfo(playlist) {\n\tconst lines = playlist.split(/\\r?\\n/);\n\tlet playlistType;\n\tlet hasEndList = false;\n\tlet targetDuration;\n\tlet partTarget;\n\tfor (const raw of lines) {\n\t\tconst line = raw.trim();\n\t\tif (line.startsWith(\"#EXT-X-PLAYLIST-TYPE:\")) playlistType = line.slice(21).trim().toUpperCase();\n\t\telse if (line === \"#EXT-X-ENDLIST\") hasEndList = true;\n\t\telse if (line.startsWith(\"#EXT-X-TARGETDURATION:\")) {\n\t\t\tconst value = Number(line.slice(22));\n\t\t\tif (Number.isFinite(value)) targetDuration = value;\n\t\t} else if (line.startsWith(\"#EXT-X-PART-INF\")) {\n\t\t\tconst match = /PART-TARGET\\s*=\\s*([0-9.]+)/i.exec(line);\n\t\t\tif (match) {\n\t\t\t\tconst value = Number(match[1]);\n\t\t\t\tif (Number.isFinite(value)) partTarget = value;\n\t\t\t}\n\t\t}\n\t}\n\tif (playlistType === \"VOD\" || hasEndList) return {\n\t\ttargetLiveWindow: NaN,\n\t\tliveEdgeStartOffset: void 0\n\t};\n\treturn {\n\t\ttargetLiveWindow: playlistType === \"EVENT\" ? Number.POSITIVE_INFINITY : 0,\n\t\tliveEdgeStartOffset: partTarget !== void 0 ? partTarget * 2 : targetDuration !== void 0 ? targetDuration * 3 : void 0\n\t};\n}\nasync function fetchPlaylist(url, init) {\n\tconst response = await fetch(url, init);\n\tif (!response.ok) throw new Error(`Failed to fetch playlist (${response.status}): ${url}`);\n\treturn {\n\t\ttext: await response.text(),\n\t\turl: response.url || url\n\t};\n}\n/**\n* Fetches the HLS playlist at `src`, following the first variant if it's a\n* multivariant playlist, and parses it into a {@link StreamInfo}.\n*\n* @throws when the fetch fails or no media playlist URL can be resolved.\n*/\nasync function getStreamInfoFromSrc(src, signal) {\n\tconst init = signal ? { signal } : {};\n\tconst { text, url } = await fetchPlaylist(src, init);\n\tif (!isMultivariantPlaylist(text)) return parseStreamInfo(text);\n\tconst mediaUrl = resolveFirstMediaPlaylistUrl(text, url);\n\tif (!mediaUrl) throw new Error(\"No media playlist URL found in multivariant playlist\");\n\treturn parseStreamInfo((await fetchPlaylist(mediaUrl, init)).text);\n}\n//#endregion\nexport { getStreamInfoFromSrc, looksLikeM3u8 };\n\n//# sourceMappingURL=m3u8-utils.js.map","import { getStreamInfoFromSrc, looksLikeM3u8 } from \"./m3u8-utils.js\";\n//#region src/dom/media/native-hls/live.ts\nfunction NativeHlsMediaLiveMixin(BaseClass) {\n\tclass NativeHlsMediaLive extends BaseClass {\n\t\t#targetLiveWindow = NaN;\n\t\t#liveEdgeStartOffset;\n\t\t#disconnect = null;\n\t\t#currentSrc = \"\";\n\t\tget targetLiveWindow() {\n\t\t\treturn this.#targetLiveWindow;\n\t\t}\n\t\tget liveEdgeStart() {\n\t\t\tif (this.#liveEdgeStartOffset === void 0) return NaN;\n\t\t\tconst target = this.target;\n\t\t\tif (!target) return NaN;\n\t\t\tconst { seekable, buffered } = target;\n\t\t\tconst ranges = seekable.length ? seekable : buffered;\n\t\t\tif (!ranges.length) return NaN;\n\t\t\treturn ranges.end(ranges.length - 1) - this.#liveEdgeStartOffset;\n\t\t}\n\t\tattach(target) {\n\t\t\tsuper.attach?.(target);\n\t\t\tthis.#init(target);\n\t\t}\n\t\tdetach() {\n\t\t\tthis.#destroy();\n\t\t\tsuper.detach?.();\n\t\t}\n\t\tdestroy() {\n\t\t\tthis.#destroy();\n\t\t\tsuper.destroy?.();\n\t\t}\n\t\t#destroy() {\n\t\t\tthis.#disconnect?.abort();\n\t\t\tthis.#disconnect = null;\n\t\t\tthis.#currentSrc = \"\";\n\t\t\tthis.#liveEdgeStartOffset = void 0;\n\t\t\tthis.#setTargetLiveWindow(NaN);\n\t\t}\n\t\t#init(target) {\n\t\t\tthis.#destroy();\n\t\t\tthis.#disconnect = new AbortController();\n\t\t\tconst { signal } = this.#disconnect;\n\t\t\ttarget.addEventListener(\"loadstart\", () => this.#refresh(target), { signal });\n\t\t\ttarget.addEventListener(\"emptied\", () => {\n\t\t\t\tthis.#currentSrc = \"\";\n\t\t\t\tthis.#liveEdgeStartOffset = void 0;\n\t\t\t\tthis.#setTargetLiveWindow(NaN);\n\t\t\t}, { signal });\n\t\t\tif (target.currentSrc || target.src) this.#refresh(target);\n\t\t}\n\t\tasync #refresh(target) {\n\t\t\tconst src = target.currentSrc || target.src;\n\t\t\tif (!src || !looksLikeM3u8(src) || src === this.#currentSrc) return;\n\t\t\tthis.#currentSrc = src;\n\t\t\tthis.#liveEdgeStartOffset = void 0;\n\t\t\tthis.#setTargetLiveWindow(NaN);\n\t\t\tconst signal = this.#disconnect?.signal;\n\t\t\ttry {\n\t\t\t\tconst info = await getStreamInfoFromSrc(src, signal);\n\t\t\t\tif (signal?.aborted) return;\n\t\t\t\tif ((target.currentSrc || target.src) !== src) return;\n\t\t\t\tthis.#liveEdgeStartOffset = info.liveEdgeStartOffset;\n\t\t\t\tthis.#setTargetLiveWindow(info.targetLiveWindow);\n\t\t\t} catch {}\n\t\t}\n\t\t#setTargetLiveWindow(value) {\n\t\t\tif (Object.is(this.#targetLiveWindow, value)) return;\n\t\t\tthis.#targetLiveWindow = value;\n\t\t\tthis.dispatchEvent(new Event(\"targetlivewindowchange\"));\n\t\t}\n\t}\n\treturn NativeHlsMediaLive;\n}\n//#endregion\nexport { NativeHlsMediaLiveMixin };\n\n//# sourceMappingURL=live.js.map","import { MediaStreamTypes } from \"../../../core/media/types.js\";\n//#region src/dom/media/native-hls/stream-type.ts\nfunction NativeHlsMediaStreamTypeMixin(BaseClass) {\n\tclass NativeHlsMediaStreamType extends BaseClass {\n\t\t#streamType = MediaStreamTypes.UNKNOWN;\n\t\t#isUserStreamType = false;\n\t\t#disconnect = null;\n\t\tget streamType() {\n\t\t\treturn this.#streamType;\n\t\t}\n\t\tset streamType(value) {\n\t\t\tif (value === MediaStreamTypes.UNKNOWN) {\n\t\t\t\tthis.#isUserStreamType = false;\n\t\t\t\tthis.#setDetected(this.#detect());\n\t\t\t\treturn;\n\t\t\t}\n\t\t\tthis.#isUserStreamType = true;\n\t\t\tthis.#update(value);\n\t\t}\n\t\tattach(target) {\n\t\t\tsuper.attach?.(target);\n\t\t\tthis.#init(target);\n\t\t}\n\t\tdetach() {\n\t\t\tthis.#destroy();\n\t\t\tthis.#setDetected(MediaStreamTypes.UNKNOWN);\n\t\t\tsuper.detach?.();\n\t\t}\n\t\tdestroy() {\n\t\t\tthis.#destroy();\n\t\t\tsuper.destroy?.();\n\t\t}\n\t\t#destroy() {\n\t\t\tthis.#disconnect?.abort();\n\t\t\tthis.#disconnect = null;\n\t\t}\n\t\t#init(target) {\n\t\t\tthis.#destroy();\n\t\t\tthis.#disconnect = new AbortController();\n\t\t\tconst { signal } = this.#disconnect;\n\t\t\tconst detect = () => this.#setDetected(this.#detect(target));\n\t\t\ttarget.addEventListener(\"durationchange\", detect, { signal });\n\t\t\ttarget.addEventListener(\"loadedmetadata\", detect, { signal });\n\t\t\ttarget.addEventListener(\"emptied\", () => this.#setDetected(MediaStreamTypes.UNKNOWN), { signal });\n\t\t\tdetect();\n\t\t}\n\t\t#detect(target = this.target) {\n\t\t\tif (!target) return MediaStreamTypes.UNKNOWN;\n\t\t\tconst { duration } = target;\n\t\t\tif (duration === Infinity) return MediaStreamTypes.LIVE;\n\t\t\tif (Number.isFinite(duration) && duration > 0) return MediaStreamTypes.ON_DEMAND;\n\t\t\treturn MediaStreamTypes.UNKNOWN;\n\t\t}\n\t\t#setDetected(value) {\n\t\t\tif (this.#isUserStreamType) return;\n\t\t\tthis.#update(value);\n\t\t}\n\t\t#update(value) {\n\t\t\tif (this.#streamType === value) return;\n\t\t\tthis.#streamType = value;\n\t\t\tthis.dispatchEvent(new Event(\"streamtypechange\"));\n\t\t}\n\t}\n\treturn NativeHlsMediaStreamType;\n}\n//#endregion\nexport { NativeHlsMediaStreamTypeMixin };\n\n//# sourceMappingURL=stream-type.js.map","import { MediaStreamTypes } from \"../../../core/media/types.js\";\nimport { HTMLVideoElementHost } from \"../video-host.js\";\nimport { NativeHlsMediaErrorsMixin } from \"./errors.js\";\nimport { NativeHlsMediaLiveMixin } from \"./live.js\";\nimport { NativeHlsMediaStreamTypeMixin } from \"./stream-type.js\";\n//#region src/dom/media/native-hls/index.ts\nconst StreamTypes = MediaStreamTypes;\nconst nativeHlsMediaDefaultProps = {\n\tsrc: \"\",\n\tpreload: \"metadata\",\n\tstreamType: MediaStreamTypes.UNKNOWN\n};\nvar NativeHlsMediaBase = class extends HTMLVideoElementHost {\n\t#src = nativeHlsMediaDefaultProps.src;\n\t#preload = nativeHlsMediaDefaultProps.preload;\n\tget engine() {\n\t\treturn null;\n\t}\n\tget src() {\n\t\treturn this.#src;\n\t}\n\tset src(src) {\n\t\tthis.#src = src;\n\t\tif (this.target) this.target.src = src;\n\t}\n\tget preload() {\n\t\treturn this.#preload;\n\t}\n\tset preload(value) {\n\t\tthis.#preload = value;\n\t\tif (this.target) this.target.preload = value;\n\t}\n\tattach(target) {\n\t\tsuper.attach(target);\n\t\tif (this.preload !== target.preload) target.preload = this.preload;\n\t\tif (this.src) target.src = this.src;\n\t}\n\tdetach() {\n\t\tsuper.detach();\n\t}\n\tdestroy() {\n\t\tthis.detach();\n\t}\n};\nvar NativeHlsMedia = class extends NativeHlsMediaLiveMixin(NativeHlsMediaStreamTypeMixin(NativeHlsMediaErrorsMixin(NativeHlsMediaBase))) {};\n//#endregion\nexport { NativeHlsMedia, StreamTypes, nativeHlsMediaDefaultProps };\n\n//# sourceMappingURL=index.js.map"],"mappings":"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"}
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
import{D as e,M as t,_ as n}from"./compounds-CJ9NGNJr.js";import{E as r,n as i}from"./create-player-B2W5yr5I.js";import{l as a,t as o}from"./predicate-Dxl3IuYh.js";var s=class e{static defaultProps={label:``,disabled:!1};state=r({rate:1,label:``});#e={...e.defaultProps};#t=null;constructor(e){e&&this.setProps(e)}setProps(n){this.#e=t(n,e.defaultProps)}getLabel(e){let{label:t}=this.#e;if(o(t)){let n=t(e);if(n)return n}else if(t)return t;return`Playback 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)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 c={rate:`data-rate`};var l=class extends n{constructor(...t){super(...t),this.core=new s,this.stateAttrMap=c,this.mediaState=new i(this,a,e)}static{this.tagName=`media-playback-rate-button`}activate(e){this.core.cycle(e)}};export{l as t};
|
|
2
|
+
//# sourceMappingURL=playback-rate-button-element-Ck7CCs0t.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"playback-rate-button-element-Ck7CCs0t.js","names":["#props","#media"],"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","../src/ui/playback-rate-button/playback-rate-button-element.ts"],"sourcesContent":["import { createState } from \"@videojs/store\";\nimport { defaults } from \"@videojs/utils/object\";\nimport { isFunction } from \"@videojs/utils/predicate\";\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};\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 { label } = this.#props;\n\t\tif (isFunction(label)) {\n\t\t\tconst customLabel = label(state);\n\t\t\tif (customLabel) return customLabel;\n\t\t} else if (label) return label;\n\t\treturn `Playback 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: 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\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 = { rate: \"data-rate\" };\n//#endregion\nexport { PlaybackRateButtonDataAttrs };\n\n//# sourceMappingURL=playback-rate-button-data-attrs.js.map","import { type MediaPlaybackRateState, PlaybackRateButtonCore, PlaybackRateButtonDataAttrs } from '@videojs/core';\nimport { selectPlaybackRate } from '@videojs/core/dom';\n\nimport { playerContext } from '../../player/context';\nimport { PlayerController } from '../../player/player-controller';\nimport { MediaButtonElement } from '../media-button-element';\n\nexport class PlaybackRateButtonElement extends MediaButtonElement<PlaybackRateButtonCore> {\n static readonly tagName = 'media-playback-rate-button';\n\n protected readonly core = new PlaybackRateButtonCore();\n protected readonly stateAttrMap = PlaybackRateButtonDataAttrs;\n protected readonly mediaState = new PlayerController(this, playerContext, selectPlaybackRate);\n\n protected activate(state: MediaPlaybackRateState): void {\n this.core.cycle(state);\n }\n}\n"],"mappings":"oKAIA,IAAI,EAAyB,MAAM,CAAuB,CACzD,OAAO,aAAe,CACrB,MAAO,GACP,SAAU,GACV,CACD,MAAQ,EAAY,CACnB,KAAM,EACN,MAAO,GACP,CAAC,CACF,GAAS,CAAE,GAAG,EAAuB,aAAc,CACnD,GAAS,KACT,YAAY,EAAO,CACd,GAAO,KAAK,SAAS,EAAM,CAEhC,SAAS,EAAO,CACf,MAAA,EAAc,EAAS,EAAO,EAAuB,aAAa,CAEnE,SAAS,EAAO,CACf,GAAM,CAAE,SAAU,MAAA,EAClB,GAAI,EAAW,EAAM,CAAE,CACtB,IAAM,EAAc,EAAM,EAAM,CAChC,GAAI,EAAa,OAAO,UACd,EAAO,OAAO,EACzB,MAAO,iBAAiB,EAAM,OAE/B,SAAS,EAAO,CACf,MAAO,CACN,aAAc,KAAK,SAAS,EAAM,CAClC,gBAAiB,MAAA,EAAY,SAAW,OAAS,IAAK,GACtD,CAEF,SAAS,EAAO,CACf,MAAA,EAAc,EAEf,UAAW,CACV,IAAM,EAAQ,MAAA,EAGd,OAFA,KAAK,MAAM,MAAM,CAAE,KAAM,EAAM,aAAc,CAAC,CAC9C,KAAK,MAAM,MAAM,CAAE,MAAO,KAAK,SAAS,KAAK,MAAM,QAAQ,CAAE,CAAC,CACvD,KAAK,MAAM,QAEnB,MAAM,EAAO,CACZ,GAAI,MAAA,EAAY,SAAU,OAC1B,GAAM,CAAE,gBAAe,gBAAiB,EACxC,GAAI,EAAc,SAAW,EAAG,OAChC,IAAM,EAAM,EAAc,QAAQ,EAAa,CACzC,EAAO,IAAQ,GAAK,EAAc,KAAM,GAAM,EAAI,EAAa,EAAI,EAAc,GAAK,GAAe,EAAM,GAAK,EAAc,QACpI,EAAM,gBAAgB,EAAK,GCjD7B,MAAM,EAA8B,CAAE,KAAM,YAAa,CCMzD,IAAa,EAAb,cAA+C,CAA2C,yCAG9D,IAAI,oBACI,kBACF,IAAI,EAAiB,KAAM,EAAe,EAAmB,qBAJnE,6BAM1B,SAAmB,EAAqC,CACtD,KAAK,KAAK,MAAM,EAAM"}
|
|
@@ -0,0 +1,79 @@
|
|
|
1
|
+
import { N as defaults, O as selectPlaybackRate, _ as MediaButtonElement } from "./compounds-DxdDY3jr.js";
|
|
2
|
+
import { E as createState, n as PlayerController } from "./create-player-_WED6HtK.js";
|
|
3
|
+
import { l as playerContext, t as isFunction } from "./predicate-Dqd8wbW6.js";
|
|
4
|
+
|
|
5
|
+
//#region ../core/dist/dev/core/ui/playback-rate-button/playback-rate-button-core.js
|
|
6
|
+
var PlaybackRateButtonCore = class PlaybackRateButtonCore {
|
|
7
|
+
static defaultProps = {
|
|
8
|
+
label: "",
|
|
9
|
+
disabled: false
|
|
10
|
+
};
|
|
11
|
+
state = createState({
|
|
12
|
+
rate: 1,
|
|
13
|
+
label: ""
|
|
14
|
+
});
|
|
15
|
+
#props = { ...PlaybackRateButtonCore.defaultProps };
|
|
16
|
+
#media = null;
|
|
17
|
+
constructor(props) {
|
|
18
|
+
if (props) this.setProps(props);
|
|
19
|
+
}
|
|
20
|
+
setProps(props) {
|
|
21
|
+
this.#props = defaults(props, PlaybackRateButtonCore.defaultProps);
|
|
22
|
+
}
|
|
23
|
+
getLabel(state) {
|
|
24
|
+
const { label } = this.#props;
|
|
25
|
+
if (isFunction(label)) {
|
|
26
|
+
const customLabel = label(state);
|
|
27
|
+
if (customLabel) return customLabel;
|
|
28
|
+
} else if (label) return label;
|
|
29
|
+
return `Playback rate ${state.rate}`;
|
|
30
|
+
}
|
|
31
|
+
getAttrs(state) {
|
|
32
|
+
return {
|
|
33
|
+
"aria-label": this.getLabel(state),
|
|
34
|
+
"aria-disabled": this.#props.disabled ? "true" : void 0
|
|
35
|
+
};
|
|
36
|
+
}
|
|
37
|
+
setMedia(media) {
|
|
38
|
+
this.#media = media;
|
|
39
|
+
}
|
|
40
|
+
getState() {
|
|
41
|
+
const media = this.#media;
|
|
42
|
+
this.state.patch({ rate: media.playbackRate });
|
|
43
|
+
this.state.patch({ label: this.getLabel(this.state.current) });
|
|
44
|
+
return this.state.current;
|
|
45
|
+
}
|
|
46
|
+
cycle(media) {
|
|
47
|
+
if (this.#props.disabled) return;
|
|
48
|
+
const { playbackRates, playbackRate } = media;
|
|
49
|
+
if (playbackRates.length === 0) return;
|
|
50
|
+
const idx = playbackRates.indexOf(playbackRate);
|
|
51
|
+
const next = idx === -1 ? playbackRates.find((r) => r > playbackRate) ?? playbackRates[0] : playbackRates[(idx + 1) % playbackRates.length];
|
|
52
|
+
media.setPlaybackRate(next);
|
|
53
|
+
}
|
|
54
|
+
};
|
|
55
|
+
|
|
56
|
+
//#endregion
|
|
57
|
+
//#region ../core/dist/dev/core/ui/playback-rate-button/playback-rate-button-data-attrs.js
|
|
58
|
+
const PlaybackRateButtonDataAttrs = { rate: "data-rate" };
|
|
59
|
+
|
|
60
|
+
//#endregion
|
|
61
|
+
//#region src/ui/playback-rate-button/playback-rate-button-element.ts
|
|
62
|
+
var PlaybackRateButtonElement = class extends MediaButtonElement {
|
|
63
|
+
constructor(..._args) {
|
|
64
|
+
super(..._args);
|
|
65
|
+
this.core = new PlaybackRateButtonCore();
|
|
66
|
+
this.stateAttrMap = PlaybackRateButtonDataAttrs;
|
|
67
|
+
this.mediaState = new PlayerController(this, playerContext, selectPlaybackRate);
|
|
68
|
+
}
|
|
69
|
+
static {
|
|
70
|
+
this.tagName = "media-playback-rate-button";
|
|
71
|
+
}
|
|
72
|
+
activate(state) {
|
|
73
|
+
this.core.cycle(state);
|
|
74
|
+
}
|
|
75
|
+
};
|
|
76
|
+
|
|
77
|
+
//#endregion
|
|
78
|
+
export { PlaybackRateButtonElement as t };
|
|
79
|
+
//# sourceMappingURL=playback-rate-button-element-DN78puhg.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"playback-rate-button-element-DN78puhg.js","names":["#props","#media"],"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","../src/ui/playback-rate-button/playback-rate-button-element.ts"],"sourcesContent":["import { createState } from \"@videojs/store\";\nimport { defaults } from \"@videojs/utils/object\";\nimport { isFunction } from \"@videojs/utils/predicate\";\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};\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 { label } = this.#props;\n\t\tif (isFunction(label)) {\n\t\t\tconst customLabel = label(state);\n\t\t\tif (customLabel) return customLabel;\n\t\t} else if (label) return label;\n\t\treturn `Playback 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: 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\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 = { rate: \"data-rate\" };\n//#endregion\nexport { PlaybackRateButtonDataAttrs };\n\n//# sourceMappingURL=playback-rate-button-data-attrs.js.map","import { type MediaPlaybackRateState, PlaybackRateButtonCore, PlaybackRateButtonDataAttrs } from '@videojs/core';\nimport { selectPlaybackRate } from '@videojs/core/dom';\n\nimport { playerContext } from '../../player/context';\nimport { PlayerController } from '../../player/player-controller';\nimport { MediaButtonElement } from '../media-button-element';\n\nexport class PlaybackRateButtonElement extends MediaButtonElement<PlaybackRateButtonCore> {\n static readonly tagName = 'media-playback-rate-button';\n\n protected readonly core = new PlaybackRateButtonCore();\n protected readonly stateAttrMap = PlaybackRateButtonDataAttrs;\n protected readonly mediaState = new PlayerController(this, playerContext, selectPlaybackRate);\n\n protected activate(state: MediaPlaybackRateState): void {\n this.core.cycle(state);\n }\n}\n"],"mappings":";;;;;AAIA,IAAI,yBAAyB,MAAM,uBAAuB;CACzD,OAAO,eAAe;EACrB,OAAO;EACP,UAAU;EACV;CACD,QAAQ,YAAY;EACnB,MAAM;EACN,OAAO;EACP,CAAC;CACF,SAAS,EAAE,GAAG,uBAAuB,cAAc;CACnD,SAAS;CACT,YAAY,OAAO;AAClB,MAAI,MAAO,MAAK,SAAS,MAAM;;CAEhC,SAAS,OAAO;AACf,QAAKA,QAAS,SAAS,OAAO,uBAAuB,aAAa;;CAEnE,SAAS,OAAO;EACf,MAAM,EAAE,UAAU,MAAKA;AACvB,MAAI,WAAW,MAAM,EAAE;GACtB,MAAM,cAAc,MAAM,MAAM;AAChC,OAAI,YAAa,QAAO;aACd,MAAO,QAAO;AACzB,SAAO,iBAAiB,MAAM;;CAE/B,SAAS,OAAO;AACf,SAAO;GACN,cAAc,KAAK,SAAS,MAAM;GAClC,iBAAiB,MAAKA,MAAO,WAAW,SAAS,KAAK;GACtD;;CAEF,SAAS,OAAO;AACf,QAAKC,QAAS;;CAEf,WAAW;EACV,MAAM,QAAQ,MAAKA;AACnB,OAAK,MAAM,MAAM,EAAE,MAAM,MAAM,cAAc,CAAC;AAC9C,OAAK,MAAM,MAAM,EAAE,OAAO,KAAK,SAAS,KAAK,MAAM,QAAQ,EAAE,CAAC;AAC9D,SAAO,KAAK,MAAM;;CAEnB,MAAM,OAAO;AACZ,MAAI,MAAKD,MAAO,SAAU;EAC1B,MAAM,EAAE,eAAe,iBAAiB;AACxC,MAAI,cAAc,WAAW,EAAG;EAChC,MAAM,MAAM,cAAc,QAAQ,aAAa;EAC/C,MAAM,OAAO,QAAQ,KAAK,cAAc,MAAM,MAAM,IAAI,aAAa,IAAI,cAAc,KAAK,eAAe,MAAM,KAAK,cAAc;AACpI,QAAM,gBAAgB,KAAK;;;;;;ACjD7B,MAAM,8BAA8B,EAAE,MAAM,aAAa;;;;ACMzD,IAAa,4BAAb,cAA+C,mBAA2C;;;cAG9D,IAAI,wBAAwB;sBACpB;oBACF,IAAI,iBAAiB,MAAM,eAAe,mBAAmB;;;iBAJnE;;CAM1B,AAAU,SAAS,OAAqC;AACtD,OAAK,KAAK,MAAM,MAAM"}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
import { A as MediaContainerElement, j as MediaElement, s as videoFeatures, t as createPlayer } from "./create-player-_WED6HtK.js";
|
|
2
|
+
import { f as safeDefine } from "./predicate-Dqd8wbW6.js";
|
|
3
|
+
|
|
4
|
+
//#region src/define/video/player.ts
|
|
5
|
+
const { ProviderMixin } = createPlayer({ features: videoFeatures });
|
|
6
|
+
var VideoPlayerElement = class extends ProviderMixin(MediaElement) {
|
|
7
|
+
static {
|
|
8
|
+
this.tagName = "video-player";
|
|
9
|
+
}
|
|
10
|
+
};
|
|
11
|
+
safeDefine(VideoPlayerElement);
|
|
12
|
+
safeDefine(MediaContainerElement);
|
|
13
|
+
|
|
14
|
+
//#endregion
|
|
15
|
+
export { VideoPlayerElement as t };
|
|
16
|
+
//# sourceMappingURL=player-9_6BPhTP.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"player-9_6BPhTP.js","names":[],"sources":["../src/define/video/player.ts"],"sourcesContent":["import { videoFeatures } from '@videojs/core/dom';\nimport { MediaContainerElement } from '../../media/container-element';\nimport { createPlayer } from '../../player/create-player';\nimport { MediaElement } from '../../ui/media-element';\nimport { safeDefine } from '../safe-define';\n\nconst { ProviderMixin } = createPlayer({\n features: videoFeatures,\n});\n\nexport class VideoPlayerElement extends ProviderMixin(MediaElement) {\n static readonly tagName = 'video-player';\n}\n\n// Provider must be defined before consumer for context handshake during upgrade.\nsafeDefine(VideoPlayerElement);\nsafeDefine(MediaContainerElement);\n\ndeclare global {\n interface HTMLElementTagNameMap {\n [VideoPlayerElement.tagName]: VideoPlayerElement;\n }\n}\n"],"mappings":";;;;AAMA,MAAM,EAAE,kBAAkB,aAAa,EACrC,UAAU,eACX,CAAC;AAEF,IAAa,qBAAb,cAAwC,cAAc,aAAa,CAAC;;iBACxC;;;AAI5B,WAAW,mBAAmB;AAC9B,WAAW,sBAAsB"}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
import { A as MediaContainerElement, j as MediaElement, o as liveVideoFeatures, t as createPlayer } from "./create-player-_WED6HtK.js";
|
|
2
|
+
import { f as safeDefine } from "./predicate-Dqd8wbW6.js";
|
|
3
|
+
|
|
4
|
+
//#region src/define/live-video/player.ts
|
|
5
|
+
const { ProviderMixin } = createPlayer({ features: liveVideoFeatures });
|
|
6
|
+
var LiveVideoPlayerElement = class extends ProviderMixin(MediaElement) {
|
|
7
|
+
static {
|
|
8
|
+
this.tagName = "live-video-player";
|
|
9
|
+
}
|
|
10
|
+
};
|
|
11
|
+
safeDefine(LiveVideoPlayerElement);
|
|
12
|
+
safeDefine(MediaContainerElement);
|
|
13
|
+
|
|
14
|
+
//#endregion
|
|
15
|
+
export { LiveVideoPlayerElement as t };
|
|
16
|
+
//# sourceMappingURL=player-C6DIXZpP.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"player-C6DIXZpP.js","names":[],"sources":["../src/define/live-video/player.ts"],"sourcesContent":["import { liveVideoFeatures } from '@videojs/core/dom';\nimport { MediaContainerElement } from '../../media/container-element';\nimport { createPlayer } from '../../player/create-player';\nimport { MediaElement } from '../../ui/media-element';\nimport { safeDefine } from '../safe-define';\n\nconst { ProviderMixin } = createPlayer({\n features: liveVideoFeatures,\n});\n\nexport class LiveVideoPlayerElement extends ProviderMixin(MediaElement) {\n static readonly tagName = 'live-video-player';\n}\n\n// Provider must be defined before consumer for context handshake during upgrade.\nsafeDefine(LiveVideoPlayerElement);\nsafeDefine(MediaContainerElement);\n\ndeclare global {\n interface HTMLElementTagNameMap {\n [LiveVideoPlayerElement.tagName]: LiveVideoPlayerElement;\n }\n}\n"],"mappings":";;;;AAMA,MAAM,EAAE,kBAAkB,aAAa,EACrC,UAAU,mBACX,CAAC;AAEF,IAAa,yBAAb,cAA4C,cAAc,aAAa,CAAC;;iBAC5C;;;AAI5B,WAAW,uBAAuB;AAClC,WAAW,sBAAsB"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import {
|
|
1
|
+
import { A as MediaContainerElement, i as audioFeatures, j as MediaElement, t as createPlayer } from "./create-player-_WED6HtK.js";
|
|
2
|
+
import { f as safeDefine } from "./predicate-Dqd8wbW6.js";
|
|
3
3
|
|
|
4
4
|
//#region src/define/audio/player.ts
|
|
5
5
|
const { ProviderMixin } = createPlayer({ features: audioFeatures });
|
|
@@ -13,4 +13,4 @@ safeDefine(MediaContainerElement);
|
|
|
13
13
|
|
|
14
14
|
//#endregion
|
|
15
15
|
export { AudioPlayerElement as t };
|
|
16
|
-
//# sourceMappingURL=player-
|
|
16
|
+
//# sourceMappingURL=player-ClV0UtoS.js.map
|