@videojs/html 10.0.0-beta.21 → 10.0.0-beta.23
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/cdn/{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 +1 -4
- package/cdn/audio-minimal-ui.js +1 -1
- package/cdn/audio-minimal.dev.js +5 -7
- package/cdn/audio-minimal.dev.js.map +1 -1
- package/cdn/audio-minimal.js +1 -1
- package/cdn/audio-minimal.js.map +1 -1
- package/cdn/audio-ui.dev.js +1 -4
- package/cdn/audio-ui.js +1 -1
- package/cdn/audio.dev.js +5 -7
- 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 +3 -3
- package/cdn/background.js +1 -1
- package/cdn/background.js.map +1 -1
- package/cdn/{compounds-CM_NP-ej.js → compounds-BHHGcL_P.js} +148 -63
- package/cdn/compounds-BHHGcL_P.js.map +1 -0
- package/cdn/compounds-DJyzXLOB.js +8 -0
- package/cdn/compounds-DJyzXLOB.js.map +1 -0
- package/cdn/{create-player-Bi6WUwDZ.js → create-player-B-gVAMdr.js} +183 -94
- package/cdn/create-player-B-gVAMdr.js.map +1 -0
- package/cdn/create-player-C5ui1T2i.js +7 -0
- package/cdn/create-player-C5ui1T2i.js.map +1 -0
- package/cdn/default-Djy9PEXm.js +2 -0
- package/cdn/default-Djy9PEXm.js.map +1 -0
- package/cdn/{default-XHZAb7gP.js → default-YzaLyoYg.js} +3 -1
- package/cdn/default-YzaLyoYg.js.map +1 -0
- package/cdn/hls-DEP0AzDp.js +41 -0
- package/cdn/hls-DEP0AzDp.js.map +1 -0
- package/cdn/{hls-BotloEPN.js → hls-DR-Xxpxv.js} +163 -23
- package/cdn/hls-DR-Xxpxv.js.map +1 -0
- package/cdn/hotkey-element-BvI78DTc.js +2 -0
- package/cdn/{hotkey-element-DRGCbVj9.js.map → hotkey-element-BvI78DTc.js.map} +1 -1
- package/cdn/{hotkey-element-317kwVH5.js → hotkey-element-oEdY8YLl.js} +24 -18
- package/cdn/{hotkey-element-317kwVH5.js.map → hotkey-element-oEdY8YLl.js.map} +1 -1
- package/cdn/live-video-minimal.dev.d.ts +1 -0
- package/cdn/live-video-minimal.dev.js +115 -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 +130 -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 +11 -5
- package/cdn/media/simple-hls-video.dev.js.map +1 -1
- package/cdn/media/simple-hls-video.js +6 -6
- package/cdn/media/simple-hls-video.js.map +1 -1
- package/cdn/media-attach-mixin-DuquRhAk.js +2 -0
- package/cdn/{media-attach-mixin-C2wz0Qbd.js.map → media-attach-mixin-DuquRhAk.js.map} +1 -1
- package/cdn/{media-attach-mixin-CYoNe7Sh.js → media-attach-mixin-pV8deGiO.js} +2 -2
- package/cdn/{media-attach-mixin-CYoNe7Sh.js.map → media-attach-mixin-pV8deGiO.js.map} +1 -1
- package/cdn/{minimal-BnDnlwbj.js → minimal-CciG7Fsu.js} +3 -1
- package/cdn/minimal-CciG7Fsu.js.map +1 -0
- package/cdn/minimal-DSLrhnDm.js +2 -0
- package/cdn/minimal-DSLrhnDm.js.map +1 -0
- package/cdn/{minimal-ui-cy2oEbFm.js → minimal-ui-Bx-_SggT.js} +6 -5
- package/cdn/minimal-ui-Bx-_SggT.js.map +1 -0
- package/cdn/minimal-ui-CFO4ssL8.js +2 -0
- package/cdn/{minimal-ui-CroDYUGf.js.map → minimal-ui-CFO4ssL8.js.map} +1 -1
- package/cdn/minimal-ui-D6Pvbx1R.js +2 -0
- package/cdn/minimal-ui-D6Pvbx1R.js.map +1 -0
- package/cdn/{minimal-ui-DhxN21v5.js → minimal-ui-Dl-8ZL53.js} +5 -5
- package/cdn/{minimal-ui-DhxN21v5.js.map → minimal-ui-Dl-8ZL53.js.map} +1 -1
- package/cdn/{mux-B5K6kOzg.js → mux-D5M5HL6A.js} +753 -7
- package/cdn/mux-D5M5HL6A.js.map +1 -0
- package/cdn/mux-DH3Kxyot.js +27 -0
- package/cdn/mux-DH3Kxyot.js.map +1 -0
- package/cdn/native-hls-DN_aWn2z.js +2 -0
- package/cdn/native-hls-DN_aWn2z.js.map +1 -0
- package/cdn/native-hls-ak4v9DN6.js +371 -0
- package/cdn/native-hls-ak4v9DN6.js.map +1 -0
- package/cdn/player-BKKCelEs.js +2 -0
- package/cdn/player-BKKCelEs.js.map +1 -0
- package/cdn/{player-CatrGW7l.js → player-C_6YjMl7.js} +93 -8
- package/cdn/player-C_6YjMl7.js.map +1 -0
- package/cdn/player-CtegNw3g.js +2 -0
- package/cdn/{player-BK35-ndY.js.map → player-CtegNw3g.js.map} +1 -1
- package/cdn/{player-xstFHOgW.js → player-D468sScc.js} +3 -3
- package/cdn/{player-xstFHOgW.js.map → player-D468sScc.js.map} +1 -1
- package/cdn/{context-0rI_P6jf.js → predicate-BOcV_HDG.js} +23 -2
- package/cdn/predicate-BOcV_HDG.js.map +1 -0
- package/cdn/{context-CEFisYD0.js → predicate-Cad5WV4q.js} +2 -2
- package/cdn/predicate-Cad5WV4q.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-CDUkmCtS.js → skin-element-BcbrkgGs.js} +2 -2
- package/cdn/{skin-element-CDUkmCtS.js.map → skin-element-BcbrkgGs.js.map} +1 -1
- package/cdn/{skin-element-BGP23sop.js → skin-element-DesLkJKs.js} +2 -2
- package/cdn/{skin-element-BGP23sop.js.map → skin-element-DesLkJKs.js.map} +1 -1
- 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-Em9rF9Ah.js → ui-CzxKbsyb.js} +7 -6
- package/cdn/ui-CzxKbsyb.js.map +1 -0
- package/cdn/ui-D6DV-Emw.js +2 -0
- package/cdn/{ui-QHwo6iyo.js.map → ui-D6DV-Emw.js.map} +1 -1
- package/cdn/ui-Dw-n2AMs.js +2 -0
- package/cdn/ui-Dw-n2AMs.js.map +1 -0
- package/cdn/{ui-AFHQtrqa.js → ui-S_eLj4ur.js} +6 -6
- package/cdn/{ui-AFHQtrqa.js.map → ui-S_eLj4ur.js.map} +1 -1
- package/cdn/{video-host-ycP7ckxU.js → video-host-BR_2vUZH.js} +82 -39
- package/cdn/video-host-BR_2vUZH.js.map +1 -0
- package/cdn/video-host-Bkh2OyyP.js +47 -0
- package/cdn/video-host-Bkh2OyyP.js.map +1 -0
- package/cdn/video-minimal-ui.dev.js +1 -4
- package/cdn/video-minimal-ui.js +1 -1
- package/cdn/video-minimal.dev.js +11 -7
- package/cdn/video-minimal.dev.js.map +1 -1
- package/cdn/video-minimal.js +1 -1
- package/cdn/video-minimal.js.map +1 -1
- package/cdn/video-ui.dev.js +1 -4
- package/cdn/video-ui.js +1 -1
- package/cdn/video.dev.js +11 -7
- package/cdn/video.dev.js.map +1 -1
- package/cdn/video.js +1 -1
- package/cdn/video.js.map +1 -1
- package/dist/default/_virtual/inline-css_src/define/audio/minimal-skin.js +1 -1
- package/dist/default/_virtual/inline-css_src/define/audio/minimal-skin.js.map +1 -1
- package/dist/default/_virtual/inline-css_src/define/audio/skin.js +1 -1
- package/dist/default/_virtual/inline-css_src/define/audio/skin.js.map +1 -1
- package/dist/default/_virtual/inline-css_src/define/live-audio/minimal-skin.js +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 +2 -1
- package/dist/default/define/audio/skin.css +2 -1
- package/dist/default/define/background/skin.js +1 -1
- package/dist/default/define/live-audio/minimal-skin.css +779 -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/skin.css +795 -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-video/minimal-skin.css +1170 -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 +30 -0
- package/dist/default/define/live-video/minimal-skin.tailwind.js.map +1 -0
- package/dist/default/define/live-video/skin.css +1160 -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/skin-element.js +1 -1
- package/dist/default/define/ui/cast-button.js +7 -0
- package/dist/default/define/ui/cast-button.js.map +1 -0
- package/dist/default/define/video/minimal-skin.css +8 -1
- 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 +1 -1
- package/dist/default/define/video/minimal-skin.tailwind.js.map +1 -1
- package/dist/default/define/video/minimal-ui.js +2 -0
- package/dist/default/define/video/minimal-ui.js.map +1 -1
- package/dist/default/define/video/skin.css +8 -1
- 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 +1 -1
- package/dist/default/define/video/skin.tailwind.js.map +1 -1
- package/dist/default/define/video/ui.js +2 -0
- package/dist/default/define/video/ui.js.map +1 -1
- package/dist/default/icons/dist/render/default/index.js +2 -0
- package/dist/default/icons/dist/render/default/index.js.map +1 -1
- package/dist/default/icons/dist/render/minimal/index.js +2 -0
- package/dist/default/icons/dist/render/minimal/index.js.map +1 -1
- package/dist/default/index.js +3 -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/presets/live-audio.js +6 -0
- package/dist/default/presets/live-video.js +6 -0
- package/dist/default/skins/dist/default/default/tailwind/components/button.js +1 -1
- package/dist/default/skins/dist/default/default/tailwind/components/button.js.map +1 -1
- package/dist/default/skins/dist/default/minimal/tailwind/components/button.js +1 -1
- package/dist/default/skins/dist/default/minimal/tailwind/components/button.js.map +1 -1
- package/dist/default/skins/dist/default/shared/tailwind/icon-state.js +5 -0
- package/dist/default/skins/dist/default/shared/tailwind/icon-state.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 +24 -0
- package/dist/default/ui/cast-button/cast-button-element.js.map +1 -0
- 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 +10 -7
- package/dist/default/ui/gesture/gesture-element.js.map +1 -1
- package/dist/default/ui/hotkey/hotkey-element.js +10 -7
- package/dist/default/ui/hotkey/hotkey-element.js.map +1 -1
- 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/popover/popover-element.js +14 -7
- package/dist/default/ui/popover/popover-element.js.map +1 -1
- 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/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 +16 -8
- 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-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/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/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 +2 -1
- 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/player.d.ts +2 -2
- package/dist/dev/define/audio/skin.css +2 -1
- 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/background/player.d.ts +2 -2
- package/dist/dev/define/background/skin.d.ts.map +1 -1
- package/dist/dev/define/background/skin.js +1 -1
- package/dist/dev/define/live-audio/minimal-skin.css +779 -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 +76 -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 +79 -0
- package/dist/dev/define/live-audio/minimal-skin.tailwind.js.map +1 -0
- package/dist/dev/define/live-audio/skin.css +795 -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 +83 -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 +78 -0
- package/dist/dev/define/live-audio/skin.tailwind.js.map +1 -0
- package/dist/dev/define/live-video/minimal-skin.css +1170 -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 +112 -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 +110 -0
- package/dist/dev/define/live-video/minimal-skin.tailwind.js.map +1 -0
- package/dist/dev/define/live-video/skin.css +1160 -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 +127 -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 +111 -0
- package/dist/dev/define/live-video/skin.tailwind.js.map +1 -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 +1 -1
- package/dist/dev/define/ui/cast-button.d.ts +9 -0
- package/dist/dev/define/ui/cast-button.d.ts.map +1 -0
- package/dist/dev/define/ui/cast-button.js +7 -0
- package/dist/dev/define/ui/cast-button.js.map +1 -0
- package/dist/dev/define/video/minimal-skin.css +8 -1
- 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 +6 -0
- 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 +5 -0
- package/dist/dev/define/video/minimal-skin.tailwind.js.map +1 -1
- package/dist/dev/define/video/minimal-ui.js +2 -0
- 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 +8 -1
- 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 +6 -0
- 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 +5 -0
- package/dist/dev/define/video/skin.tailwind.js.map +1 -1
- package/dist/dev/define/video/ui.js +2 -0
- package/dist/dev/define/video/ui.js.map +1 -1
- package/dist/dev/icons/dist/render/default/index.js +2 -0
- package/dist/dev/icons/dist/render/default/index.js.map +1 -1
- package/dist/dev/icons/dist/render/minimal/index.js +2 -0
- package/dist/dev/icons/dist/render/minimal/index.js.map +1 -1
- package/dist/dev/index.d.ts +13 -3
- package/dist/dev/index.d.ts.map +1 -0
- package/dist/dev/index.js +3 -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/player/context.d.ts +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 +6 -0
- package/dist/dev/presets/live-audio.js +6 -0
- package/dist/dev/presets/live-video.d.ts +6 -0
- package/dist/dev/presets/live-video.js +6 -0
- package/dist/dev/skins/dist/default/default/tailwind/components/button.js +1 -1
- package/dist/dev/skins/dist/default/default/tailwind/components/button.js.map +1 -1
- package/dist/dev/skins/dist/default/minimal/tailwind/components/button.js +1 -1
- package/dist/dev/skins/dist/default/minimal/tailwind/components/button.js.map +1 -1
- package/dist/dev/skins/dist/default/shared/tailwind/icon-state.js +5 -0
- package/dist/dev/skins/dist/default/shared/tailwind/icon-state.js.map +1 -1
- package/dist/dev/store/container-mixin.d.ts +1 -1
- package/dist/dev/store/provider-mixin.d.ts +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 +19 -0
- package/dist/dev/ui/cast-button/cast-button-element.d.ts.map +1 -0
- package/dist/dev/ui/cast-button/cast-button-element.js +24 -0
- package/dist/dev/ui/cast-button/cast-button-element.js.map +1 -0
- 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 +10 -7
- 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 +10 -7
- package/dist/dev/ui/hotkey/hotkey-element.js.map +1 -1
- 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/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/popover/popover-element.d.ts +3 -3
- package/dist/dev/ui/popover/popover-element.d.ts.map +1 -1
- package/dist/dev/ui/popover/popover-element.js +14 -7
- package/dist/dev/ui/popover/popover-element.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/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/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 +3 -3
- package/dist/dev/ui/tooltip/tooltip-element.d.ts.map +1 -1
- package/dist/dev/ui/tooltip/tooltip-element.js +16 -8
- 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-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/package.json +31 -10
- package/cdn/compounds-CM_NP-ej.js.map +0 -1
- package/cdn/compounds-Vvz-YfXP.js +0 -8
- package/cdn/compounds-Vvz-YfXP.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-Bi6WUwDZ.js.map +0 -1
- package/cdn/create-player-CKuX8YI5.js +0 -7
- package/cdn/create-player-CKuX8YI5.js.map +0 -1
- package/cdn/default-C8KsZ0zK.js +0 -2
- package/cdn/default-C8KsZ0zK.js.map +0 -1
- package/cdn/default-XHZAb7gP.js.map +0 -1
- package/cdn/hls-BotloEPN.js.map +0 -1
- package/cdn/hls-CBpGTZXU.js +0 -41
- package/cdn/hls-CBpGTZXU.js.map +0 -1
- package/cdn/hotkey-element-DRGCbVj9.js +0 -2
- package/cdn/media-attach-mixin-C2wz0Qbd.js +0 -2
- package/cdn/minimal-BnDnlwbj.js.map +0 -1
- package/cdn/minimal-CqBxBoLe.js +0 -2
- package/cdn/minimal-CqBxBoLe.js.map +0 -1
- package/cdn/minimal-ui-C_G24FML.js +0 -2
- package/cdn/minimal-ui-C_G24FML.js.map +0 -1
- package/cdn/minimal-ui-CroDYUGf.js +0 -2
- package/cdn/minimal-ui-cy2oEbFm.js.map +0 -1
- package/cdn/mux-B5K6kOzg.js.map +0 -1
- package/cdn/mux-DJhfbcCw.js +0 -25
- package/cdn/mux-DJhfbcCw.js.map +0 -1
- package/cdn/native-hls-CU2F7L5C.js +0 -123
- package/cdn/native-hls-CU2F7L5C.js.map +0 -1
- package/cdn/native-hls-DKcYYWRt.js +0 -2
- package/cdn/native-hls-DKcYYWRt.js.map +0 -1
- package/cdn/player-BK35-ndY.js +0 -2
- package/cdn/player-C7ajkBi4.js +0 -2
- package/cdn/player-C7ajkBi4.js.map +0 -1
- package/cdn/player-CatrGW7l.js.map +0 -1
- package/cdn/ui-B7vt9mp-.js +0 -2
- package/cdn/ui-B7vt9mp-.js.map +0 -1
- package/cdn/ui-Em9rF9Ah.js.map +0 -1
- package/cdn/ui-QHwo6iyo.js +0 -2
- package/cdn/video-host-CPRJVRi3.js +0 -47
- package/cdn/video-host-CPRJVRi3.js.map +0 -1
- package/cdn/video-host-ycP7ckxU.js.map +0 -1
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
import{t as e}from"./video-host-CPRJVRi3.js";var t=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 n(e){class n 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 n=this.#e.signal;e.addEventListener(`error`,n=>{n.stopImmediatePropagation();let r=e.error;if(!r)return;let i=new t(r.message,r.code,!0);this.#t=i,this.dispatchEvent(new ErrorEvent(`error`,{error:i,message:i.message}))},{signal:n,capture:!0}),e.addEventListener(`emptied`,()=>{this.#t=null},{signal:n})}}return n}var r=class extends e{#e=``;#t=`metadata`;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()}},i=class extends n(r){};export{t as n,i as t};
|
|
2
|
-
//# sourceMappingURL=native-hls-DKcYYWRt.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"native-hls-DKcYYWRt.js","names":["#error","#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/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","import { HTMLVideoElementHost } from \"../video-host.js\";\nimport { NativeHlsMediaErrorsMixin } from \"./errors.js\";\n//#region src/dom/media/native-hls/index.ts\nvar NativeHlsMediaBase = class extends HTMLVideoElementHost {\n\t#src = \"\";\n\t#preload = \"metadata\";\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 NativeHlsMediaErrorsMixin(NativeHlsMediaBase) {};\n//#endregion\nexport { NativeHlsMedia };\n\n//# sourceMappingURL=index.js.map"],"mappings":"6CACA,IAAI,EAAa,MAAM,UAAmB,KAAM,CAC/C,OAAO,kBAAoB,EAC3B,OAAO,kBAAoB,EAC3B,OAAO,iBAAmB,EAC1B,OAAO,4BAA8B,EACrC,OAAO,oBAAsB,EAC7B,OAAO,iBAAmB,IAC1B,OAAO,gBAAkB,CACxB,EAAG,iCACH,EAAG,qDACH,EAAG,wHACH,EAAG,6GACH,EAAG,8DACH,CACD,KACA,KACA,QACA,MACA,KACA,YAAY,EAAS,EAAO,EAAW,iBAAkB,EAAO,EAAS,CACxE,MAAM,EAAQ,CACd,KAAK,KAAO,aACZ,KAAK,KAAO,EACZ,KAAK,QAAU,EACf,KAAK,MAAQ,IAAU,GAAQ,EAAW,mBAAqB,GAAQ,EAAW,qBAClF,AAAmB,KAAK,UAAU,EAAW,gBAAgB,KAAK,OAAS,KCxB7E,SAAS,EAA0B,EAAW,CAC7C,MAAM,UAA6B,CAAU,CAC5C,GAAc,KACd,GAAS,KACT,IAAI,OAAQ,CACX,OAAO,MAAA,EAER,OAAO,EAAQ,CACd,MAAM,SAAS,EAAO,CACtB,MAAA,EAAW,EAAO,CAEnB,QAAS,CACR,MAAA,GAAe,CACf,MAAM,UAAU,CAEjB,SAAU,CACT,MAAA,GAAe,CACf,MAAM,WAAW,CAElB,IAAW,CACV,MAAA,GAAkB,OAAO,CACzB,MAAA,EAAmB,KACnB,MAAA,EAAc,KAEf,GAAM,EAAQ,CACb,MAAA,GAAe,CACf,MAAA,EAAmB,IAAI,gBACvB,IAAM,EAAS,MAAA,EAAiB,OAChC,EAAO,iBAAiB,QAAU,GAAU,CAC3C,EAAM,0BAA0B,CAChC,IAAM,EAAS,EAAO,MACtB,GAAI,CAAC,EAAQ,OACb,IAAM,EAAQ,IAAI,EAAW,EAAO,QAAS,EAAO,KAAM,GAAK,CAC/D,MAAA,EAAc,EACd,KAAK,cAAc,IAAI,WAAW,QAAS,CAC1C,QACA,QAAS,EAAM,QACf,CAAC,CAAC,EACD,CACF,SACA,QAAS,GACT,CAAC,CACF,EAAO,iBAAiB,cAAiB,CACxC,MAAA,EAAc,MACZ,CAAE,SAAQ,CAAC,EAGhB,OAAO,EC9CR,IAAI,EAAqB,cAAc,CAAqB,CAC3D,GAAO,GACP,GAAW,WACX,IAAI,QAAS,CACZ,OAAO,KAER,IAAI,KAAM,CACT,OAAO,MAAA,EAER,IAAI,IAAI,EAAK,CACZ,MAAA,EAAY,EACR,KAAK,SAAQ,KAAK,OAAO,IAAM,GAEpC,IAAI,SAAU,CACb,OAAO,MAAA,EAER,IAAI,QAAQ,EAAO,CAClB,MAAA,EAAgB,EACZ,KAAK,SAAQ,KAAK,OAAO,QAAU,GAExC,OAAO,EAAQ,CACd,MAAM,OAAO,EAAO,CAChB,KAAK,UAAY,EAAO,UAAS,EAAO,QAAU,KAAK,SACvD,KAAK,MAAK,EAAO,IAAM,KAAK,KAEjC,QAAS,CACR,MAAM,QAAQ,CAEf,SAAU,CACT,KAAK,QAAQ,GAGX,EAAiB,cAAc,EAA0B,EAAmB,AAAC"}
|
package/cdn/player-BK35-ndY.js
DELETED
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
import{D as e,O as t,i as n,t as r}from"./create-player-CKuX8YI5.js";import{o as i}from"./context-CEFisYD0.js";const{ProviderMixin:a}=r({features:n});var o=class extends a(t){static{this.tagName=`audio-player`}};i(o),i(e);export{o as t};
|
|
2
|
-
//# sourceMappingURL=player-BK35-ndY.js.map
|
package/cdn/player-C7ajkBi4.js
DELETED
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
import{C as e,_ as t,b as n,g as r,m as i,p as a,v as o}from"./compounds-Vvz-YfXP.js";import{C as s,D as c,O as l,n as u,o as d,t as f,y as p}from"./create-player-CKuX8YI5.js";import{o as m,r as h}from"./context-CEFisYD0.js";var g=class t{static defaultProps={delay:500};state=p({visible:!1});#e={...t.defaultProps};#t=null;setProps(n){this.#e=e(n,t.defaultProps)}destroy(){this.#n()}update(e){let t=e.waiting&&!e.paused;t&&!this.state.current.visible&&!this.#t?this.#t=setTimeout(()=>{this.#t=null,this.state.patch({visible:!0})},this.#e.delay):t||(this.#n(),this.state.patch({visible:!1}))}#n(){this.#t!==null&&(clearTimeout(this.#t),this.#t=null)}};const _={visible:`data-visible`};var v=class t{static defaultProps={label:``,disabled:!1};state=p({subtitlesShowing:!1,availability:`unavailable`,label:``});#e={...t.defaultProps};#t=null;constructor(e){e&&this.setProps(e)}setProps(n){this.#e=e(n,t.defaultProps)}getLabel(e){let{label:t}=this.#e;if(s(t)){let n=t(e);if(n)return n}else if(t)return t;return e.subtitlesShowing?`Disable captions`:`Enable captions`}getAttrs(e){return{"aria-label":this.getLabel(e),"aria-disabled":this.#e.disabled?`true`:void 0}}setMedia(e){this.#t=e}getState(){let e=this.#t,t=e.textTrackList.some(e=>e.kind===`captions`||e.kind===`subtitles`)?`available`:`unavailable`;return this.state.patch({subtitlesShowing:e.subtitlesShowing,availability:t}),this.state.patch({label:this.getLabel(this.state.current)}),this.state.current}toggle(e){this.#e.disabled||e.toggleSubtitles()}};const y={subtitlesShowing:`data-active`,availability:`data-availability`};var b=class t{static defaultProps={label:``,disabled:!1};state=p({fullscreen:!1,availability:`available`,label:``});#e={...t.defaultProps};#t=null;constructor(e){e&&this.setProps(e)}setProps(n){this.#e=e(n,t.defaultProps)}getLabel(e){let{label:t}=this.#e;if(s(t)){let n=t(e);if(n)return n}else if(t)return t;return e.fullscreen?`Exit fullscreen`:`Enter fullscreen`}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({fullscreen:e.fullscreen,availability:e.fullscreenAvailability}),this.state.patch({label:this.getLabel(this.state.current)}),this.state.current}async toggle(e){if(!this.#e.disabled&&e.fullscreenAvailability===`available`)try{e.fullscreen?await e.exitFullscreen():await e.requestFullscreen()}catch{}}};const x={fullscreen:`data-fullscreen`,availability:`data-availability`};var S=class t{static defaultProps={label:``,disabled:!1};state=p({pip:!1,availability:`available`,label:``});#e={...t.defaultProps};#t=null;constructor(e){e&&this.setProps(e)}setProps(n){this.#e=e(n,t.defaultProps)}getLabel(e){let{label:t}=this.#e;if(s(t)){let n=t(e);if(n)return n}else if(t)return t;return e.pip?`Exit picture-in-picture`:`Enter picture-in-picture`}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({pip:e.pip,availability:e.pipAvailability}),this.state.patch({label:this.getLabel(this.state.current)}),this.state.current}async toggle(e){if(!this.#e.disabled&&e.pipAvailability===`available`)try{e.pip?await e.exitPictureInPicture():await e.requestPictureInPicture()}catch{}}};const C={pip:`data-pip`,availability:`data-availability`};var w=class{#e=null;setMedia(e){this.#e=e}getState(){return{visible:!this.#e.started}}};const T={visible:`data-visible`};var E=class extends l{constructor(...e){super(...e),this.delay=g.defaultProps.delay}static{this.tagName=`media-buffering-indicator`}static{this.properties={delay:{type:Number}}}#e=new g;#t=new u(this,h,o);#n=null;connectedCallback(){super.connectedCallback(),!this.destroyed&&(this.#n=new AbortController,this.#e.state.subscribe(()=>this.requestUpdate(),{signal:this.#n.signal}))}disconnectedCallback(){super.disconnectedCallback(),this.#n?.abort(),this.#n=null}willUpdate(e){super.willUpdate(e),this.#e.setProps(this)}update(e){super.update(e);let t=this.#t.value;t&&(this.#e.update(t),i(this,this.#e.state.current,_))}},D=class extends a{constructor(...e){super(...e),this.core=new v,this.stateAttrMap=y,this.mediaState=new u(this,h,n),this.hotkeyAction=`toggleSubtitles`}static{this.tagName=`media-captions-button`}activate(e){this.core.toggle(e)}},O=class extends a{constructor(...e){super(...e),this.core=new b,this.stateAttrMap=x,this.mediaState=new u(this,h,r),this.hotkeyAction=`toggleFullscreen`}static{this.tagName=`media-fullscreen-button`}activate(e){this.core.toggle(e)}},k=class extends a{constructor(...e){super(...e),this.core=new S,this.stateAttrMap=C,this.mediaState=new u(this,h,t),this.hotkeyAction=`togglePictureInPicture`}static{this.tagName=`media-pip-button`}activate(e){this.core.toggle(e)}},A=class extends l{connectedCallback(){super.connectedCallback()}update(e){super.update(e);let t=this.mediaState.value;if(!t)return;this.core.setMedia(t);let n=this.core.getState();i(this,n,this.stateAttrMap)}},j=class extends A{constructor(...e){super(...e),this.core=new w,this.stateAttrMap=T,this.mediaState=new u(this,h,o)}static{this.tagName=`media-poster`}};const{ProviderMixin:M}=f({features:d});var N=class extends M(l){static{this.tagName=`video-player`}};m(N),m(c);export{D as a,O as i,j as n,E as o,k as r,N as t};
|
|
2
|
-
//# sourceMappingURL=player-C7ajkBi4.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"player-C7ajkBi4.js","names":["#props","#clearTimer","#timer","#props","#media","#props","#media","#props","#media","#media","#core","#state","#disconnect"],"sources":["../../core/dist/default/core/ui/buffering-indicator/buffering-indicator-core.js","../../core/dist/default/core/ui/buffering-indicator/buffering-indicator-data-attrs.js","../../core/dist/default/core/ui/captions-button/captions-button-core.js","../../core/dist/default/core/ui/captions-button/captions-button-data-attrs.js","../../core/dist/default/core/ui/fullscreen-button/fullscreen-button-core.js","../../core/dist/default/core/ui/fullscreen-button/fullscreen-button-data-attrs.js","../../core/dist/default/core/ui/pip-button/pip-button-core.js","../../core/dist/default/core/ui/pip-button/pip-button-data-attrs.js","../../core/dist/default/core/ui/poster/poster-core.js","../../core/dist/default/core/ui/poster/poster-data-attrs.js","../src/ui/buffering-indicator/buffering-indicator-element.ts","../src/ui/captions-button/captions-button-element.ts","../src/ui/fullscreen-button/fullscreen-button-element.ts","../src/ui/pip-button/pip-button-element.ts","../src/ui/media-ui-element.ts","../src/ui/poster/poster-element.ts","../src/define/video/player.ts"],"sourcesContent":["import { createState } from \"@videojs/store\";\nimport { defaults } from \"@videojs/utils/object\";\n//#region src/core/ui/buffering-indicator/buffering-indicator-core.ts\nvar BufferingIndicatorCore = class BufferingIndicatorCore {\n\tstatic defaultProps = { delay: 500 };\n\tstate = createState({ visible: false });\n\t#props = { ...BufferingIndicatorCore.defaultProps };\n\t#timer = null;\n\tsetProps(props) {\n\t\tthis.#props = defaults(props, BufferingIndicatorCore.defaultProps);\n\t}\n\tdestroy() {\n\t\tthis.#clearTimer();\n\t}\n\tupdate(media) {\n\t\tconst buffering = media.waiting && !media.paused;\n\t\tif (buffering && !this.state.current.visible && !this.#timer) this.#timer = setTimeout(() => {\n\t\t\tthis.#timer = null;\n\t\t\tthis.state.patch({ visible: true });\n\t\t}, this.#props.delay);\n\t\telse if (!buffering) {\n\t\t\tthis.#clearTimer();\n\t\t\tthis.state.patch({ visible: false });\n\t\t}\n\t}\n\t#clearTimer() {\n\t\tif (this.#timer !== null) {\n\t\t\tclearTimeout(this.#timer);\n\t\t\tthis.#timer = null;\n\t\t}\n\t}\n};\n//#endregion\nexport { BufferingIndicatorCore };\n\n//# sourceMappingURL=buffering-indicator-core.js.map","//#region src/core/ui/buffering-indicator/buffering-indicator-data-attrs.ts\nconst BufferingIndicatorDataAttrs = { visible: \"data-visible\" };\n//#endregion\nexport { BufferingIndicatorDataAttrs };\n\n//# sourceMappingURL=buffering-indicator-data-attrs.js.map","import { createState } from \"@videojs/store\";\nimport { defaults } from \"@videojs/utils/object\";\nimport { isFunction } from \"@videojs/utils/predicate\";\n//#region src/core/ui/captions-button/captions-button-core.ts\nvar CaptionsButtonCore = class CaptionsButtonCore {\n\tstatic defaultProps = {\n\t\tlabel: \"\",\n\t\tdisabled: false\n\t};\n\tstate = createState({\n\t\tsubtitlesShowing: false,\n\t\tavailability: \"unavailable\",\n\t\tlabel: \"\"\n\t});\n\t#props = { ...CaptionsButtonCore.defaultProps };\n\t#media = null;\n\tconstructor(props) {\n\t\tif (props) this.setProps(props);\n\t}\n\tsetProps(props) {\n\t\tthis.#props = defaults(props, CaptionsButtonCore.defaultProps);\n\t}\n\tgetLabel(state) {\n\t\tconst { label } = 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 state.subtitlesShowing ? \"Disable captions\" : \"Enable captions\";\n\t}\n\tgetAttrs(state) {\n\t\treturn {\n\t\t\t\"aria-label\": this.getLabel(state),\n\t\t\t\"aria-disabled\": this.#props.disabled ? \"true\" : void 0\n\t\t};\n\t}\n\tsetMedia(media) {\n\t\tthis.#media = media;\n\t}\n\tgetState() {\n\t\tconst media = this.#media;\n\t\tconst availability = media.textTrackList.some((t) => t.kind === \"captions\" || t.kind === \"subtitles\") ? \"available\" : \"unavailable\";\n\t\tthis.state.patch({\n\t\t\tsubtitlesShowing: media.subtitlesShowing,\n\t\t\tavailability\n\t\t});\n\t\tthis.state.patch({ label: this.getLabel(this.state.current) });\n\t\treturn this.state.current;\n\t}\n\ttoggle(media) {\n\t\tif (this.#props.disabled) return;\n\t\tmedia.toggleSubtitles();\n\t}\n};\n//#endregion\nexport { CaptionsButtonCore };\n\n//# sourceMappingURL=captions-button-core.js.map","//#region src/core/ui/captions-button/captions-button-data-attrs.ts\nconst CaptionsButtonDataAttrs = {\n\tsubtitlesShowing: \"data-active\",\n\tavailability: \"data-availability\"\n};\n//#endregion\nexport { CaptionsButtonDataAttrs };\n\n//# sourceMappingURL=captions-button-data-attrs.js.map","import { createState } from \"@videojs/store\";\nimport { defaults } from \"@videojs/utils/object\";\nimport { isFunction } from \"@videojs/utils/predicate\";\n//#region src/core/ui/fullscreen-button/fullscreen-button-core.ts\nvar FullscreenButtonCore = class FullscreenButtonCore {\n\tstatic defaultProps = {\n\t\tlabel: \"\",\n\t\tdisabled: false\n\t};\n\tstate = createState({\n\t\tfullscreen: false,\n\t\tavailability: \"available\",\n\t\tlabel: \"\"\n\t});\n\t#props = { ...FullscreenButtonCore.defaultProps };\n\t#media = null;\n\tconstructor(props) {\n\t\tif (props) this.setProps(props);\n\t}\n\tsetProps(props) {\n\t\tthis.#props = defaults(props, FullscreenButtonCore.defaultProps);\n\t}\n\tgetLabel(state) {\n\t\tconst { label } = 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 state.fullscreen ? \"Exit fullscreen\" : \"Enter fullscreen\";\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({\n\t\t\tfullscreen: media.fullscreen,\n\t\t\tavailability: media.fullscreenAvailability\n\t\t});\n\t\tthis.state.patch({ label: this.getLabel(this.state.current) });\n\t\treturn this.state.current;\n\t}\n\tasync toggle(media) {\n\t\tif (this.#props.disabled) return;\n\t\tif (media.fullscreenAvailability !== \"available\") return;\n\t\ttry {\n\t\t\tif (media.fullscreen) await media.exitFullscreen();\n\t\t\telse await media.requestFullscreen();\n\t\t} catch {}\n\t}\n};\n//#endregion\nexport { FullscreenButtonCore };\n\n//# sourceMappingURL=fullscreen-button-core.js.map","//#region src/core/ui/fullscreen-button/fullscreen-button-data-attrs.ts\nconst FullscreenButtonDataAttrs = {\n\tfullscreen: \"data-fullscreen\",\n\tavailability: \"data-availability\"\n};\n//#endregion\nexport { FullscreenButtonDataAttrs };\n\n//# sourceMappingURL=fullscreen-button-data-attrs.js.map","import { createState } from \"@videojs/store\";\nimport { defaults } from \"@videojs/utils/object\";\nimport { isFunction } from \"@videojs/utils/predicate\";\n//#region src/core/ui/pip-button/pip-button-core.ts\nvar PiPButtonCore = class PiPButtonCore {\n\tstatic defaultProps = {\n\t\tlabel: \"\",\n\t\tdisabled: false\n\t};\n\tstate = createState({\n\t\tpip: false,\n\t\tavailability: \"available\",\n\t\tlabel: \"\"\n\t});\n\t#props = { ...PiPButtonCore.defaultProps };\n\t#media = null;\n\tconstructor(props) {\n\t\tif (props) this.setProps(props);\n\t}\n\tsetProps(props) {\n\t\tthis.#props = defaults(props, PiPButtonCore.defaultProps);\n\t}\n\tgetLabel(state) {\n\t\tconst { label } = 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 state.pip ? \"Exit picture-in-picture\" : \"Enter picture-in-picture\";\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({\n\t\t\tpip: media.pip,\n\t\t\tavailability: media.pipAvailability\n\t\t});\n\t\tthis.state.patch({ label: this.getLabel(this.state.current) });\n\t\treturn this.state.current;\n\t}\n\tasync toggle(media) {\n\t\tif (this.#props.disabled) return;\n\t\tif (media.pipAvailability !== \"available\") return;\n\t\ttry {\n\t\t\tif (media.pip) await media.exitPictureInPicture();\n\t\t\telse await media.requestPictureInPicture();\n\t\t} catch {}\n\t}\n};\n//#endregion\nexport { PiPButtonCore };\n\n//# sourceMappingURL=pip-button-core.js.map","//#region src/core/ui/pip-button/pip-button-data-attrs.ts\nconst PiPButtonDataAttrs = {\n\tpip: \"data-pip\",\n\tavailability: \"data-availability\"\n};\n//#endregion\nexport { PiPButtonDataAttrs };\n\n//# sourceMappingURL=pip-button-data-attrs.js.map","//#region src/core/ui/poster/poster-core.ts\nvar PosterCore = class {\n\t#media = null;\n\tsetMedia(media) {\n\t\tthis.#media = media;\n\t}\n\tgetState() {\n\t\treturn { visible: !this.#media.started };\n\t}\n};\n//#endregion\nexport { PosterCore };\n\n//# sourceMappingURL=poster-core.js.map","//#region src/core/ui/poster/poster-data-attrs.ts\nconst PosterDataAttrs = { visible: \"data-visible\" };\n//#endregion\nexport { PosterDataAttrs };\n\n//# sourceMappingURL=poster-data-attrs.js.map","import { BufferingIndicatorCore, BufferingIndicatorDataAttrs } from '@videojs/core';\nimport { applyStateDataAttrs, logMissingFeature, selectPlayback } from '@videojs/core/dom';\nimport type { PropertyDeclarationMap, PropertyValues } from '@videojs/element';\n\nimport { playerContext } from '../../player/context';\nimport { PlayerController } from '../../player/player-controller';\nimport { MediaElement } from '../media-element';\n\nexport class BufferingIndicatorElement extends MediaElement {\n static readonly tagName = 'media-buffering-indicator';\n\n static override properties = {\n delay: { type: Number },\n } satisfies PropertyDeclarationMap<keyof BufferingIndicatorCore.Props>;\n\n delay = BufferingIndicatorCore.defaultProps.delay;\n\n readonly #core = new BufferingIndicatorCore();\n readonly #state = new PlayerController(this, playerContext, selectPlayback);\n\n #disconnect: AbortController | null = null;\n\n override connectedCallback(): void {\n super.connectedCallback();\n if (this.destroyed) return;\n\n this.#disconnect = new AbortController();\n\n this.#core.state.subscribe(() => this.requestUpdate(), {\n signal: this.#disconnect.signal,\n });\n\n if (__DEV__ && !this.#state.value) {\n logMissingFeature(this.localName, this.#state.displayName!);\n }\n }\n\n override disconnectedCallback(): void {\n super.disconnectedCallback();\n this.#disconnect?.abort();\n this.#disconnect = null;\n }\n\n protected override willUpdate(changed: PropertyValues): void {\n super.willUpdate(changed);\n this.#core.setProps(this);\n }\n\n protected override update(changed: PropertyValues): void {\n super.update(changed);\n\n const media = this.#state.value;\n\n if (!media) return;\n\n this.#core.update(media);\n applyStateDataAttrs(this, this.#core.state.current, BufferingIndicatorDataAttrs);\n }\n}\n","import { CaptionsButtonCore, CaptionsButtonDataAttrs, type MediaTextTrackState } from '@videojs/core';\nimport { selectTextTrack } 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 CaptionsButtonElement extends MediaButtonElement<CaptionsButtonCore> {\n static readonly tagName = 'media-captions-button';\n\n protected readonly core = new CaptionsButtonCore();\n protected readonly stateAttrMap = CaptionsButtonDataAttrs;\n protected readonly mediaState = new PlayerController(this, playerContext, selectTextTrack);\n protected override readonly hotkeyAction = 'toggleSubtitles';\n\n protected activate(state: MediaTextTrackState): void {\n this.core.toggle(state);\n }\n}\n","import { FullscreenButtonCore, FullscreenButtonDataAttrs, type MediaFullscreenState } from '@videojs/core';\nimport { selectFullscreen } 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 FullscreenButtonElement extends MediaButtonElement<FullscreenButtonCore> {\n static readonly tagName = 'media-fullscreen-button';\n\n protected readonly core = new FullscreenButtonCore();\n protected readonly stateAttrMap = FullscreenButtonDataAttrs;\n protected readonly mediaState = new PlayerController(this, playerContext, selectFullscreen);\n protected override readonly hotkeyAction = 'toggleFullscreen';\n\n protected activate(state: MediaFullscreenState): void {\n this.core.toggle(state);\n }\n}\n","import { type MediaPictureInPictureState, PiPButtonCore, PiPButtonDataAttrs } from '@videojs/core';\nimport { selectPiP } 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 PiPButtonElement extends MediaButtonElement<PiPButtonCore> {\n static readonly tagName = 'media-pip-button';\n\n protected readonly core = new PiPButtonCore();\n protected readonly stateAttrMap = PiPButtonDataAttrs;\n protected readonly mediaState = new PlayerController(this, playerContext, selectPiP);\n protected override readonly hotkeyAction = 'togglePictureInPicture';\n\n protected activate(state: MediaPictureInPictureState): void {\n this.core.toggle(state);\n }\n}\n","import type { InferComponentState, InferMediaState, MediaUIComponent, StateAttrMap } from '@videojs/core';\nimport { applyStateDataAttrs, logMissingFeature } from '@videojs/core/dom';\nimport type { PropertyValues } from '@videojs/element';\n\nimport type { PlayerController } from '../player/player-controller';\nimport { MediaElement } from './media-element';\n\n/** Abstract base for HTML custom elements that display media state with data attributes. */\nexport abstract class MediaUIElement<Core extends MediaUIComponent> extends MediaElement {\n protected abstract readonly core: Core;\n protected abstract readonly stateAttrMap: StateAttrMap<InferComponentState<Core>>;\n protected abstract readonly mediaState: PlayerController<any, InferMediaState<Core> | undefined>;\n\n override connectedCallback(): void {\n super.connectedCallback();\n\n if (__DEV__ && !this.mediaState.value && this.mediaState.displayName) {\n logMissingFeature(this.localName, this.mediaState.displayName);\n }\n }\n\n protected override update(changed: PropertyValues): void {\n super.update(changed);\n\n const media = this.mediaState.value;\n\n if (!media) return;\n\n this.core.setMedia(media);\n const state = this.core.getState();\n applyStateDataAttrs(this, state, this.stateAttrMap);\n }\n}\n","import { PosterCore, PosterDataAttrs } from '@videojs/core';\nimport { selectPlayback } from '@videojs/core/dom';\n\nimport { playerContext } from '../../player/context';\nimport { PlayerController } from '../../player/player-controller';\nimport { MediaUIElement } from '../media-ui-element';\n\nexport class PosterElement extends MediaUIElement<PosterCore> {\n static readonly tagName = 'media-poster';\n\n protected readonly core = new PosterCore();\n protected readonly stateAttrMap = PosterDataAttrs;\n protected readonly mediaState = new PlayerController(this, playerContext, selectPlayback);\n}\n","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":"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"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"player-CatrGW7l.js","names":["#props","#clearTimer","#timer","#props","#media","#props","#media","#props","#media","#media","#core","#state","#disconnect"],"sources":["../../core/dist/dev/core/ui/buffering-indicator/buffering-indicator-core.js","../../core/dist/dev/core/ui/buffering-indicator/buffering-indicator-data-attrs.js","../../core/dist/dev/core/ui/captions-button/captions-button-core.js","../../core/dist/dev/core/ui/captions-button/captions-button-data-attrs.js","../../core/dist/dev/core/ui/fullscreen-button/fullscreen-button-core.js","../../core/dist/dev/core/ui/fullscreen-button/fullscreen-button-data-attrs.js","../../core/dist/dev/core/ui/pip-button/pip-button-core.js","../../core/dist/dev/core/ui/pip-button/pip-button-data-attrs.js","../../core/dist/dev/core/ui/poster/poster-core.js","../../core/dist/dev/core/ui/poster/poster-data-attrs.js","../src/ui/buffering-indicator/buffering-indicator-element.ts","../src/ui/captions-button/captions-button-element.ts","../src/ui/fullscreen-button/fullscreen-button-element.ts","../src/ui/pip-button/pip-button-element.ts","../src/ui/media-ui-element.ts","../src/ui/poster/poster-element.ts","../src/define/video/player.ts"],"sourcesContent":["import { createState } from \"@videojs/store\";\nimport { defaults } from \"@videojs/utils/object\";\n//#region src/core/ui/buffering-indicator/buffering-indicator-core.ts\nvar BufferingIndicatorCore = class BufferingIndicatorCore {\n\tstatic defaultProps = { delay: 500 };\n\tstate = createState({ visible: false });\n\t#props = { ...BufferingIndicatorCore.defaultProps };\n\t#timer = null;\n\tsetProps(props) {\n\t\tthis.#props = defaults(props, BufferingIndicatorCore.defaultProps);\n\t}\n\tdestroy() {\n\t\tthis.#clearTimer();\n\t}\n\tupdate(media) {\n\t\tconst buffering = media.waiting && !media.paused;\n\t\tif (buffering && !this.state.current.visible && !this.#timer) this.#timer = setTimeout(() => {\n\t\t\tthis.#timer = null;\n\t\t\tthis.state.patch({ visible: true });\n\t\t}, this.#props.delay);\n\t\telse if (!buffering) {\n\t\t\tthis.#clearTimer();\n\t\t\tthis.state.patch({ visible: false });\n\t\t}\n\t}\n\t#clearTimer() {\n\t\tif (this.#timer !== null) {\n\t\t\tclearTimeout(this.#timer);\n\t\t\tthis.#timer = null;\n\t\t}\n\t}\n};\n//#endregion\nexport { BufferingIndicatorCore };\n\n//# sourceMappingURL=buffering-indicator-core.js.map","//#region src/core/ui/buffering-indicator/buffering-indicator-data-attrs.ts\nconst BufferingIndicatorDataAttrs = { visible: \"data-visible\" };\n//#endregion\nexport { BufferingIndicatorDataAttrs };\n\n//# sourceMappingURL=buffering-indicator-data-attrs.js.map","import { createState } from \"@videojs/store\";\nimport { defaults } from \"@videojs/utils/object\";\nimport { isFunction } from \"@videojs/utils/predicate\";\n//#region src/core/ui/captions-button/captions-button-core.ts\nvar CaptionsButtonCore = class CaptionsButtonCore {\n\tstatic defaultProps = {\n\t\tlabel: \"\",\n\t\tdisabled: false\n\t};\n\tstate = createState({\n\t\tsubtitlesShowing: false,\n\t\tavailability: \"unavailable\",\n\t\tlabel: \"\"\n\t});\n\t#props = { ...CaptionsButtonCore.defaultProps };\n\t#media = null;\n\tconstructor(props) {\n\t\tif (props) this.setProps(props);\n\t}\n\tsetProps(props) {\n\t\tthis.#props = defaults(props, CaptionsButtonCore.defaultProps);\n\t}\n\tgetLabel(state) {\n\t\tconst { label } = 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 state.subtitlesShowing ? \"Disable captions\" : \"Enable captions\";\n\t}\n\tgetAttrs(state) {\n\t\treturn {\n\t\t\t\"aria-label\": this.getLabel(state),\n\t\t\t\"aria-disabled\": this.#props.disabled ? \"true\" : void 0\n\t\t};\n\t}\n\tsetMedia(media) {\n\t\tthis.#media = media;\n\t}\n\tgetState() {\n\t\tconst media = this.#media;\n\t\tconst availability = media.textTrackList.some((t) => t.kind === \"captions\" || t.kind === \"subtitles\") ? \"available\" : \"unavailable\";\n\t\tthis.state.patch({\n\t\t\tsubtitlesShowing: media.subtitlesShowing,\n\t\t\tavailability\n\t\t});\n\t\tthis.state.patch({ label: this.getLabel(this.state.current) });\n\t\treturn this.state.current;\n\t}\n\ttoggle(media) {\n\t\tif (this.#props.disabled) return;\n\t\tmedia.toggleSubtitles();\n\t}\n};\n//#endregion\nexport { CaptionsButtonCore };\n\n//# sourceMappingURL=captions-button-core.js.map","//#region src/core/ui/captions-button/captions-button-data-attrs.ts\nconst CaptionsButtonDataAttrs = {\n\tsubtitlesShowing: \"data-active\",\n\tavailability: \"data-availability\"\n};\n//#endregion\nexport { CaptionsButtonDataAttrs };\n\n//# sourceMappingURL=captions-button-data-attrs.js.map","import { createState } from \"@videojs/store\";\nimport { defaults } from \"@videojs/utils/object\";\nimport { isFunction } from \"@videojs/utils/predicate\";\n//#region src/core/ui/fullscreen-button/fullscreen-button-core.ts\nvar FullscreenButtonCore = class FullscreenButtonCore {\n\tstatic defaultProps = {\n\t\tlabel: \"\",\n\t\tdisabled: false\n\t};\n\tstate = createState({\n\t\tfullscreen: false,\n\t\tavailability: \"available\",\n\t\tlabel: \"\"\n\t});\n\t#props = { ...FullscreenButtonCore.defaultProps };\n\t#media = null;\n\tconstructor(props) {\n\t\tif (props) this.setProps(props);\n\t}\n\tsetProps(props) {\n\t\tthis.#props = defaults(props, FullscreenButtonCore.defaultProps);\n\t}\n\tgetLabel(state) {\n\t\tconst { label } = 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 state.fullscreen ? \"Exit fullscreen\" : \"Enter fullscreen\";\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({\n\t\t\tfullscreen: media.fullscreen,\n\t\t\tavailability: media.fullscreenAvailability\n\t\t});\n\t\tthis.state.patch({ label: this.getLabel(this.state.current) });\n\t\treturn this.state.current;\n\t}\n\tasync toggle(media) {\n\t\tif (this.#props.disabled) return;\n\t\tif (media.fullscreenAvailability !== \"available\") return;\n\t\ttry {\n\t\t\tif (media.fullscreen) await media.exitFullscreen();\n\t\t\telse await media.requestFullscreen();\n\t\t} catch {}\n\t}\n};\n//#endregion\nexport { FullscreenButtonCore };\n\n//# sourceMappingURL=fullscreen-button-core.js.map","//#region src/core/ui/fullscreen-button/fullscreen-button-data-attrs.ts\nconst FullscreenButtonDataAttrs = {\n\tfullscreen: \"data-fullscreen\",\n\tavailability: \"data-availability\"\n};\n//#endregion\nexport { FullscreenButtonDataAttrs };\n\n//# sourceMappingURL=fullscreen-button-data-attrs.js.map","import { createState } from \"@videojs/store\";\nimport { defaults } from \"@videojs/utils/object\";\nimport { isFunction } from \"@videojs/utils/predicate\";\n//#region src/core/ui/pip-button/pip-button-core.ts\nvar PiPButtonCore = class PiPButtonCore {\n\tstatic defaultProps = {\n\t\tlabel: \"\",\n\t\tdisabled: false\n\t};\n\tstate = createState({\n\t\tpip: false,\n\t\tavailability: \"available\",\n\t\tlabel: \"\"\n\t});\n\t#props = { ...PiPButtonCore.defaultProps };\n\t#media = null;\n\tconstructor(props) {\n\t\tif (props) this.setProps(props);\n\t}\n\tsetProps(props) {\n\t\tthis.#props = defaults(props, PiPButtonCore.defaultProps);\n\t}\n\tgetLabel(state) {\n\t\tconst { label } = 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 state.pip ? \"Exit picture-in-picture\" : \"Enter picture-in-picture\";\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({\n\t\t\tpip: media.pip,\n\t\t\tavailability: media.pipAvailability\n\t\t});\n\t\tthis.state.patch({ label: this.getLabel(this.state.current) });\n\t\treturn this.state.current;\n\t}\n\tasync toggle(media) {\n\t\tif (this.#props.disabled) return;\n\t\tif (media.pipAvailability !== \"available\") return;\n\t\ttry {\n\t\t\tif (media.pip) await media.exitPictureInPicture();\n\t\t\telse await media.requestPictureInPicture();\n\t\t} catch {}\n\t}\n};\n//#endregion\nexport { PiPButtonCore };\n\n//# sourceMappingURL=pip-button-core.js.map","//#region src/core/ui/pip-button/pip-button-data-attrs.ts\nconst PiPButtonDataAttrs = {\n\tpip: \"data-pip\",\n\tavailability: \"data-availability\"\n};\n//#endregion\nexport { PiPButtonDataAttrs };\n\n//# sourceMappingURL=pip-button-data-attrs.js.map","//#region src/core/ui/poster/poster-core.ts\nvar PosterCore = class {\n\t#media = null;\n\tsetMedia(media) {\n\t\tthis.#media = media;\n\t}\n\tgetState() {\n\t\treturn { visible: !this.#media.started };\n\t}\n};\n//#endregion\nexport { PosterCore };\n\n//# sourceMappingURL=poster-core.js.map","//#region src/core/ui/poster/poster-data-attrs.ts\nconst PosterDataAttrs = { visible: \"data-visible\" };\n//#endregion\nexport { PosterDataAttrs };\n\n//# sourceMappingURL=poster-data-attrs.js.map","import { BufferingIndicatorCore, BufferingIndicatorDataAttrs } from '@videojs/core';\nimport { applyStateDataAttrs, logMissingFeature, selectPlayback } from '@videojs/core/dom';\nimport type { PropertyDeclarationMap, PropertyValues } from '@videojs/element';\n\nimport { playerContext } from '../../player/context';\nimport { PlayerController } from '../../player/player-controller';\nimport { MediaElement } from '../media-element';\n\nexport class BufferingIndicatorElement extends MediaElement {\n static readonly tagName = 'media-buffering-indicator';\n\n static override properties = {\n delay: { type: Number },\n } satisfies PropertyDeclarationMap<keyof BufferingIndicatorCore.Props>;\n\n delay = BufferingIndicatorCore.defaultProps.delay;\n\n readonly #core = new BufferingIndicatorCore();\n readonly #state = new PlayerController(this, playerContext, selectPlayback);\n\n #disconnect: AbortController | null = null;\n\n override connectedCallback(): void {\n super.connectedCallback();\n if (this.destroyed) return;\n\n this.#disconnect = new AbortController();\n\n this.#core.state.subscribe(() => this.requestUpdate(), {\n signal: this.#disconnect.signal,\n });\n\n if (__DEV__ && !this.#state.value) {\n logMissingFeature(this.localName, this.#state.displayName!);\n }\n }\n\n override disconnectedCallback(): void {\n super.disconnectedCallback();\n this.#disconnect?.abort();\n this.#disconnect = null;\n }\n\n protected override willUpdate(changed: PropertyValues): void {\n super.willUpdate(changed);\n this.#core.setProps(this);\n }\n\n protected override update(changed: PropertyValues): void {\n super.update(changed);\n\n const media = this.#state.value;\n\n if (!media) return;\n\n this.#core.update(media);\n applyStateDataAttrs(this, this.#core.state.current, BufferingIndicatorDataAttrs);\n }\n}\n","import { CaptionsButtonCore, CaptionsButtonDataAttrs, type MediaTextTrackState } from '@videojs/core';\nimport { selectTextTrack } 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 CaptionsButtonElement extends MediaButtonElement<CaptionsButtonCore> {\n static readonly tagName = 'media-captions-button';\n\n protected readonly core = new CaptionsButtonCore();\n protected readonly stateAttrMap = CaptionsButtonDataAttrs;\n protected readonly mediaState = new PlayerController(this, playerContext, selectTextTrack);\n protected override readonly hotkeyAction = 'toggleSubtitles';\n\n protected activate(state: MediaTextTrackState): void {\n this.core.toggle(state);\n }\n}\n","import { FullscreenButtonCore, FullscreenButtonDataAttrs, type MediaFullscreenState } from '@videojs/core';\nimport { selectFullscreen } 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 FullscreenButtonElement extends MediaButtonElement<FullscreenButtonCore> {\n static readonly tagName = 'media-fullscreen-button';\n\n protected readonly core = new FullscreenButtonCore();\n protected readonly stateAttrMap = FullscreenButtonDataAttrs;\n protected readonly mediaState = new PlayerController(this, playerContext, selectFullscreen);\n protected override readonly hotkeyAction = 'toggleFullscreen';\n\n protected activate(state: MediaFullscreenState): void {\n this.core.toggle(state);\n }\n}\n","import { type MediaPictureInPictureState, PiPButtonCore, PiPButtonDataAttrs } from '@videojs/core';\nimport { selectPiP } 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 PiPButtonElement extends MediaButtonElement<PiPButtonCore> {\n static readonly tagName = 'media-pip-button';\n\n protected readonly core = new PiPButtonCore();\n protected readonly stateAttrMap = PiPButtonDataAttrs;\n protected readonly mediaState = new PlayerController(this, playerContext, selectPiP);\n protected override readonly hotkeyAction = 'togglePictureInPicture';\n\n protected activate(state: MediaPictureInPictureState): void {\n this.core.toggle(state);\n }\n}\n","import type { InferComponentState, InferMediaState, MediaUIComponent, StateAttrMap } from '@videojs/core';\nimport { applyStateDataAttrs, logMissingFeature } from '@videojs/core/dom';\nimport type { PropertyValues } from '@videojs/element';\n\nimport type { PlayerController } from '../player/player-controller';\nimport { MediaElement } from './media-element';\n\n/** Abstract base for HTML custom elements that display media state with data attributes. */\nexport abstract class MediaUIElement<Core extends MediaUIComponent> extends MediaElement {\n protected abstract readonly core: Core;\n protected abstract readonly stateAttrMap: StateAttrMap<InferComponentState<Core>>;\n protected abstract readonly mediaState: PlayerController<any, InferMediaState<Core> | undefined>;\n\n override connectedCallback(): void {\n super.connectedCallback();\n\n if (__DEV__ && !this.mediaState.value && this.mediaState.displayName) {\n logMissingFeature(this.localName, this.mediaState.displayName);\n }\n }\n\n protected override update(changed: PropertyValues): void {\n super.update(changed);\n\n const media = this.mediaState.value;\n\n if (!media) return;\n\n this.core.setMedia(media);\n const state = this.core.getState();\n applyStateDataAttrs(this, state, this.stateAttrMap);\n }\n}\n","import { PosterCore, PosterDataAttrs } from '@videojs/core';\nimport { selectPlayback } from '@videojs/core/dom';\n\nimport { playerContext } from '../../player/context';\nimport { PlayerController } from '../../player/player-controller';\nimport { MediaUIElement } from '../media-ui-element';\n\nexport class PosterElement extends MediaUIElement<PosterCore> {\n static readonly tagName = 'media-poster';\n\n protected readonly core = new PosterCore();\n protected readonly stateAttrMap = PosterDataAttrs;\n protected readonly mediaState = new PlayerController(this, playerContext, selectPlayback);\n}\n","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":"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"}
|
package/cdn/ui-B7vt9mp-.js
DELETED
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
import{a as e,c as t,d as n,f as r,i,l as a,n as o,o as s,r as c,s as l,t as u,u as d}from"./compounds-Vvz-YfXP.js";import{D as f}from"./create-player-CKuX8YI5.js";import{o as p}from"./context-CEFisYD0.js";import{a as m,i as h,n as g,o as _,r as v,t as y}from"./player-C7ajkBi4.js";import{n as b,t as x}from"./hotkey-element-DRGCbVj9.js";p(y),p(f),u(),o(),i(),e(),c(),p(_),p(m),p(h),p(b),p(x),p(r),p(v),p(n),p(d),p(a),p(g),p(t),p(l),p(s);
|
|
2
|
-
//# sourceMappingURL=ui-B7vt9mp-.js.map
|
package/cdn/ui-B7vt9mp-.js.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"ui-B7vt9mp-.js","names":[],"sources":["../src/define/video/ui.ts"],"sourcesContent":["// Registers the video player, container, and all video UI custom elements\n// without creating a skin element. Use this entry when building an ejected\n// (light DOM) player layout.\nimport { MediaContainerElement } from '../../media/container-element';\nimport { BufferingIndicatorElement } from '../../ui/buffering-indicator/buffering-indicator-element';\nimport { CaptionsButtonElement } from '../../ui/captions-button/captions-button-element';\nimport { FullscreenButtonElement } from '../../ui/fullscreen-button/fullscreen-button-element';\nimport { GestureElement } from '../../ui/gesture/gesture-element';\nimport { HotkeyElement } from '../../ui/hotkey/hotkey-element';\nimport { MuteButtonElement } from '../../ui/mute-button/mute-button-element';\nimport { PiPButtonElement } from '../../ui/pip-button/pip-button-element';\nimport { PlayButtonElement } from '../../ui/play-button/play-button-element';\nimport { PlaybackRateButtonElement } from '../../ui/playback-rate-button/playback-rate-button-element';\nimport { PopoverElement } from '../../ui/popover/popover-element';\nimport { PosterElement } from '../../ui/poster/poster-element';\nimport { SeekButtonElement } from '../../ui/seek-button/seek-button-element';\nimport { TooltipElement } from '../../ui/tooltip/tooltip-element';\nimport { TooltipGroupElement } from '../../ui/tooltip/tooltip-group-element';\nimport { safeDefine } from '../safe-define';\nimport { defineControls, defineErrorDialog, defineTime, defineTimeSlider, defineVolumeSlider } from '../ui/compounds';\n\n// Value import — player.ts body runs before this module's body.\nimport { VideoPlayerElement } from './player';\n\n// ── Registration (providers / parents first) ────────────────────────────\n\nsafeDefine(VideoPlayerElement);\nsafeDefine(MediaContainerElement);\n\n// Compound groups.\ndefineControls();\ndefineErrorDialog();\ndefineTimeSlider();\ndefineVolumeSlider();\ndefineTime();\n\n// Standalone elements.\nsafeDefine(BufferingIndicatorElement);\nsafeDefine(CaptionsButtonElement);\nsafeDefine(FullscreenButtonElement);\nsafeDefine(GestureElement);\nsafeDefine(HotkeyElement);\nsafeDefine(MuteButtonElement);\nsafeDefine(PiPButtonElement);\nsafeDefine(PlayButtonElement);\nsafeDefine(PlaybackRateButtonElement);\nsafeDefine(PopoverElement);\nsafeDefine(PosterElement);\nsafeDefine(SeekButtonElement);\nsafeDefine(TooltipElement);\nsafeDefine(TooltipGroupElement);\n"],"mappings":"kVA0BA,EAAW,EAAmB,CAC9B,EAAW,EAAsB,CAGjC,GAAgB,CAChB,GAAmB,CACnB,GAAkB,CAClB,GAAoB,CACpB,GAAY,CAGZ,EAAW,EAA0B,CACrC,EAAW,EAAsB,CACjC,EAAW,EAAwB,CACnC,EAAW,EAAe,CAC1B,EAAW,EAAc,CACzB,EAAW,EAAkB,CAC7B,EAAW,EAAiB,CAC5B,EAAW,EAAkB,CAC7B,EAAW,EAA0B,CACrC,EAAW,EAAe,CAC1B,EAAW,EAAc,CACzB,EAAW,EAAkB,CAC7B,EAAW,EAAe,CAC1B,EAAW,EAAoB"}
|
package/cdn/ui-Em9rF9Ah.js.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"ui-Em9rF9Ah.js","names":[],"sources":["../src/define/video/ui.ts"],"sourcesContent":["// Registers the video player, container, and all video UI custom elements\n// without creating a skin element. Use this entry when building an ejected\n// (light DOM) player layout.\nimport { MediaContainerElement } from '../../media/container-element';\nimport { BufferingIndicatorElement } from '../../ui/buffering-indicator/buffering-indicator-element';\nimport { CaptionsButtonElement } from '../../ui/captions-button/captions-button-element';\nimport { FullscreenButtonElement } from '../../ui/fullscreen-button/fullscreen-button-element';\nimport { GestureElement } from '../../ui/gesture/gesture-element';\nimport { HotkeyElement } from '../../ui/hotkey/hotkey-element';\nimport { MuteButtonElement } from '../../ui/mute-button/mute-button-element';\nimport { PiPButtonElement } from '../../ui/pip-button/pip-button-element';\nimport { PlayButtonElement } from '../../ui/play-button/play-button-element';\nimport { PlaybackRateButtonElement } from '../../ui/playback-rate-button/playback-rate-button-element';\nimport { PopoverElement } from '../../ui/popover/popover-element';\nimport { PosterElement } from '../../ui/poster/poster-element';\nimport { SeekButtonElement } from '../../ui/seek-button/seek-button-element';\nimport { TooltipElement } from '../../ui/tooltip/tooltip-element';\nimport { TooltipGroupElement } from '../../ui/tooltip/tooltip-group-element';\nimport { safeDefine } from '../safe-define';\nimport { defineControls, defineErrorDialog, defineTime, defineTimeSlider, defineVolumeSlider } from '../ui/compounds';\n\n// Value import — player.ts body runs before this module's body.\nimport { VideoPlayerElement } from './player';\n\n// ── Registration (providers / parents first) ────────────────────────────\n\nsafeDefine(VideoPlayerElement);\nsafeDefine(MediaContainerElement);\n\n// Compound groups.\ndefineControls();\ndefineErrorDialog();\ndefineTimeSlider();\ndefineVolumeSlider();\ndefineTime();\n\n// Standalone elements.\nsafeDefine(BufferingIndicatorElement);\nsafeDefine(CaptionsButtonElement);\nsafeDefine(FullscreenButtonElement);\nsafeDefine(GestureElement);\nsafeDefine(HotkeyElement);\nsafeDefine(MuteButtonElement);\nsafeDefine(PiPButtonElement);\nsafeDefine(PlayButtonElement);\nsafeDefine(PlaybackRateButtonElement);\nsafeDefine(PopoverElement);\nsafeDefine(PosterElement);\nsafeDefine(SeekButtonElement);\nsafeDefine(TooltipElement);\nsafeDefine(TooltipGroupElement);\n"],"mappings":";;;;;;;AA0BA,WAAW,mBAAmB;AAC9B,WAAW,sBAAsB;AAGjC,gBAAgB;AAChB,mBAAmB;AACnB,kBAAkB;AAClB,oBAAoB;AACpB,YAAY;AAGZ,WAAW,0BAA0B;AACrC,WAAW,sBAAsB;AACjC,WAAW,wBAAwB;AACnC,WAAW,eAAe;AAC1B,WAAW,cAAc;AACzB,WAAW,kBAAkB;AAC7B,WAAW,iBAAiB;AAC5B,WAAW,kBAAkB;AAC7B,WAAW,0BAA0B;AACrC,WAAW,eAAe;AAC1B,WAAW,cAAc;AACzB,WAAW,kBAAkB;AAC7B,WAAW,eAAe;AAC1B,WAAW,oBAAoB"}
|
package/cdn/ui-QHwo6iyo.js
DELETED
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
import{a as e,c as t,d as n,f as r,i,l as a,n as o,o as s,r as c,s as l,u}from"./compounds-Vvz-YfXP.js";import{D as d}from"./create-player-CKuX8YI5.js";import{o as f}from"./context-CEFisYD0.js";import{n as p,t as m}from"./hotkey-element-DRGCbVj9.js";import{t as h}from"./player-BK35-ndY.js";f(h),f(d),o(),i(),e(),c(),f(p),f(m),f(r),f(n),f(u),f(a),f(t),f(l),f(s);
|
|
2
|
-
//# sourceMappingURL=ui-QHwo6iyo.js.map
|
|
@@ -1,47 +0,0 @@
|
|
|
1
|
-
import{n as e,r as t}from"./media-attach-mixin-C2wz0Qbd.js";import{n,t as r}from"./pick-CERGq1No.js";function i(e,t){let n={};for(let r in e)t.includes(r)||(n[r]=e[r]);return n}const a={borderRadius:`--media-video-border-radius`,objectFit:`--media-object-fit`,objectPosition:`--media-object-position`,captionTrackDuration:`--media-caption-track-duration`,captionTrackDelay:`--media-caption-track-delay`,captionTrackY:`--media-caption-track-y`};function o(e){return`
|
|
2
|
-
<style>
|
|
3
|
-
:host {
|
|
4
|
-
display: contents;
|
|
5
|
-
}
|
|
6
|
-
|
|
7
|
-
video {
|
|
8
|
-
display: block;
|
|
9
|
-
width: 100%;
|
|
10
|
-
height: 100%;
|
|
11
|
-
border-radius: var(${a.borderRadius});
|
|
12
|
-
object-fit: var(${a.objectFit}, contain);
|
|
13
|
-
object-position: var(${a.objectPosition}, center);
|
|
14
|
-
}
|
|
15
|
-
|
|
16
|
-
video::-webkit-media-text-track-container {
|
|
17
|
-
transition: translate var(${a.captionTrackDuration}, 0) ease-out;
|
|
18
|
-
transition-delay: var(${a.captionTrackDelay}, 0);
|
|
19
|
-
translate: 0 var(${a.captionTrackY}, 0);
|
|
20
|
-
scale: 0.98;
|
|
21
|
-
z-index: 1;
|
|
22
|
-
font-family: inherit;
|
|
23
|
-
}
|
|
24
|
-
</style>
|
|
25
|
-
<slot name="media">
|
|
26
|
-
<video${t(e)}></video>
|
|
27
|
-
</slot>
|
|
28
|
-
<slot></slot>
|
|
29
|
-
`}function s(e){return n=>`
|
|
30
|
-
<style>
|
|
31
|
-
:host {
|
|
32
|
-
display: inline-flex;
|
|
33
|
-
line-height: 0;
|
|
34
|
-
flex-direction: column;
|
|
35
|
-
justify-content: end;
|
|
36
|
-
}
|
|
37
|
-
|
|
38
|
-
${e} {
|
|
39
|
-
width: 100%;
|
|
40
|
-
}
|
|
41
|
-
</style>
|
|
42
|
-
<slot name="media">
|
|
43
|
-
<${e}${t(n)}></${e}>
|
|
44
|
-
</slot>
|
|
45
|
-
<slot></slot>
|
|
46
|
-
`}const c=[`attach`,`detach`,`destroy`];function l(t,a){let l=new Map,d=!1;class f extends (globalThis.HTMLElement??class{}){static getTemplateHTML=t.endsWith(`video`)?o:s(t);static shadowRootOptions={mode:`open`};static properties={autoPictureInPicture:{type:Boolean},autoplay:{type:Boolean},controls:{type:Boolean},controlsList:{type:String},crossOrigin:{type:String},defaultMuted:{type:Boolean,attribute:`muted`},disablePictureInPicture:{type:Boolean},disableRemotePlayback:{type:Boolean},loading:{type:String},loop:{type:Boolean},playsInline:{type:Boolean},poster:{type:String},preload:{type:String},src:{type:String}};static get observedAttributes(){return f.#define(this),[...u(this.properties)]}static#define(e){if(d)return;d=!0;for(let t=a.prototype;t&&t!==Object.prototype;t=Object.getPrototypeOf(t))for(let r of Object.getOwnPropertyNames(t)){if(r in f.prototype||c.includes(r))continue;let i=Object.getOwnPropertyDescriptor(t,r);if(!i)continue;let a={enumerable:!0,configurable:!0};if(typeof i.value==`function`)a.value=function(...e){return this.#mediaHost[r](...e)};else if(i.get&&(a.get=function(){return this.#mediaHost[r]},i.set)){let t=n(r);e.observedAttributes.includes(t)?(l.set(t,r),a.set=function(e){e===!0||e===!1||e==null?this.toggleAttribute(t,!!e):this.setAttribute(t,String(e))}):a.set=function(e){this.#mediaHost[r]=e}}Object.defineProperty(f.prototype,r,a)}let t=e.properties;for(let[e,{type:n,attribute:r}]of Object.entries(t)){if(e in f.prototype)continue;let t=r??e.toLowerCase();Object.defineProperty(f.prototype,e,{get:function(){return n===Boolean?this.hasAttribute(t):this.getAttribute(t)},set:function(e){n===Boolean?this.toggleAttribute(t,!!e):this.setAttribute(t,e)},enumerable:!0,configurable:!0})}}#mediaHost;#bridgedEventTypes=new Set;#childMap=new Map;#childObserver;constructor(){if(super(),!this.shadowRoot){let n=this.constructor;this.attachShadow(n.shadowRootOptions);let a=u(n.properties),o=[...l.keys()],s=i(r(e(this.attributes),a),o);t&&!s.part&&(s.part=t),this.shadowRoot.innerHTML=n.getTemplateHTML(s)}this.#mediaHost=new a,this.#attachToTarget(),this.#childObserver=new MutationObserver(this.#syncMediaChildAttribute.bind(this)),this.shadowRoot.addEventListener(`slotchange`,()=>{this.#attachToTarget(),this.#syncMediaChildren()}),this.#syncMediaChildren()}#attachToTarget(){let e=this.target;e!==this.#mediaHost.target&&(this.#mediaHost.target&&this.#mediaHost.detach(),this.#mediaHost.attach(e))}get target(){return this.querySelector(`:scope > [slot=media]`)??this.querySelector(t)??this.shadowRoot?.querySelector(t)??null}disconnectedCallback(){this.hasAttribute(`keep-alive`)||this.#mediaHost.destroy()}addEventListener(e,t,n){super.addEventListener(e,t,n),this.#bridgedEventTypes.has(e)||(this.#bridgedEventTypes.add(e),this.#mediaHost.addEventListener(e,this.#bridgeEvent))}removeEventListener(e,t,n){super.removeEventListener(e,t,n)}#bridgeEvent=e=>{e.composed||this.dispatchEvent(new e.constructor(e.type,e))};attributeChangedCallback(e,t,n){let r=l.get(e);if(r){if(t!==n){let e=typeof this.#mediaHost[r];this.#mediaHost[r]=e===`boolean`?n!==null:e===`number`?Number(n):n??``}return}!f.observedAttributes.includes(e)&&this.constructor.observedAttributes.includes(e)||(n===null?this.target?.removeAttribute(e):this.target?.getAttribute(e)!==n&&this.target?.setAttribute(e,n))}#syncMediaChildren(){let e=this.shadowRoot?.querySelector(`slot:not([name])`),t=new Set(e?.assignedElements({flatten:!0}).filter(e=>e.localName===`track`||e.localName===`source`));for(let[e,n]of this.#childMap)t.has(e)||(n.remove(),this.#childMap.delete(e));for(let e of t){let t=this.#childMap.get(e);t||(t=e.cloneNode(),this.#childMap.set(e,t),this.#childObserver?.observe(e,{attributes:!0})),this.target?.append(t),this.#enableDefaultTrack(t)}}#syncMediaChildAttribute(e){for(let t of e)if(t.type===`attributes`){let{target:e,attributeName:n}=t,r=this.#childMap.get(e);r&&n&&(r.setAttribute(n,e.getAttribute(n)??``),this.#enableDefaultTrack(r))}}#enableDefaultTrack(e){e&&e.localName===`track`&&e.default&&(e.kind===`chapters`||e.kind===`metadata`)&&e.track.mode===`disabled`&&(e.track.mode=`hidden`)}}return f}function u(e){return Object.keys(e).map(t=>e[t]?.attribute??t.toLowerCase())}const d=Object.freeze({length:0,start(){return 0},end(){return 0}});var f=class extends EventTarget{#e=null;#t=new Set;get target(){return this.#e}get paused(){return this.target?.paused??!0}get ended(){return this.target?.ended??!1}play(){return this.target?.play()??Promise.reject()}pause(){this.target?.pause()}get currentTime(){return this.target?.currentTime??0}set currentTime(e){this.target&&(this.target.currentTime=e)}get duration(){return this.target?.duration??NaN}get seeking(){return this.target?.seeking??!1}get src(){return this.target?.src??``}set src(e){this.target&&(this.target.src=e)}get currentSrc(){return this.target?.currentSrc??``}get readyState(){return this.target?.readyState??0}load(){this.target?.load()}get volume(){return this.target?.volume??1}set volume(e){this.target&&(this.target.volume=e)}get muted(){return this.target?.muted??!1}set muted(e){this.target&&(this.target.muted=e)}get playbackRate(){return this.target?.playbackRate??1}set playbackRate(e){this.target&&(this.target.playbackRate=e)}get buffered(){return this.target?.buffered??d}get seekable(){return this.target?.seekable??d}get error(){return this.target?.error??null}get textTracks(){return this.target?.textTracks??[]}attach(e){if(!(!e||this.#e===e)){this.#e=e;for(let t of this.#t)e.addEventListener(t,this.#n)}}detach(){if(this.#e){for(let e of this.#t)this.#e.removeEventListener(e,this.#n);this.#e=null}}querySelectorAll(e){return this.target?.querySelectorAll(e)??[]}addEventListener(e,t,n){this.#t.has(e)||(this.#t.add(e),this.target?.addEventListener(e,this.#n)),super.addEventListener(e,t,n)}removeEventListener(e,t,n){super.removeEventListener(e,t,n)}#n=e=>{this.dispatchEvent(new e.constructor(e.type,e))}},p=class extends f{requestPictureInPicture(){return this.target?.requestPictureInPicture()??Promise.reject()}requestFullscreen(){return this.target?.requestFullscreen()??Promise.reject()}webkitEnterFullscreen(){return this.target?.webkitEnterFullscreen?.()}webkitExitFullscreen(){return this.target?.webkitExitFullscreen?.()}webkitSetPresentationMode(e){return this.target?.webkitSetPresentationMode?.(e)}get webkitDisplayingFullscreen(){return this.target?.webkitDisplayingFullscreen??!1}get webkitPresentationMode(){return this.target?.webkitPresentationMode??`inline`}};export{l as n,p as t};
|
|
47
|
-
//# sourceMappingURL=video-host-CPRJVRi3.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"video-host-CPRJVRi3.js","names":["#define","#mediaHost","#attachToTarget","#childObserver","#syncMediaChildAttribute","#syncMediaChildren","#bridgedEventTypes","#bridgeEvent","#childMap","#enableDefaultTrack","#target","#types","#forwardEvent"],"sources":["../../utils/dist/object/omit.js","../../core/dist/default/dom/media/custom-media-element/index.js","../../core/dist/default/dom/media/media-host.js","../../core/dist/default/dom/media/video-host.js"],"sourcesContent":["//#region src/object/omit.ts\n/**\n* Creates a new object without the specified keys.\n*\n* @example\n* const obj = { a: 1, b: 2, c: 3 };\n* omit(obj, ['b']); // { a: 1, c: 3 }\n*/\nfunction omit(obj, keys) {\n\tconst result = {};\n\tfor (const key in obj) if (!keys.includes(key)) result[key] = obj[key];\n\treturn result;\n}\n//#endregion\nexport { omit };\n\n//# sourceMappingURL=omit.js.map","import { omit, pick } from \"@videojs/utils/object\";\nimport { namedNodeMapToObject, serializeAttributes } from \"@videojs/utils/dom\";\nimport { kebabCase } from \"@videojs/utils/string\";\n//#region src/dom/media/custom-media-element/index.ts\n/** CSS custom property names for video elements. */\nconst VideoCSSVars = {\n\tborderRadius: \"--media-video-border-radius\",\n\tobjectFit: \"--media-object-fit\",\n\tobjectPosition: \"--media-object-position\",\n\tcaptionTrackDuration: \"--media-caption-track-duration\",\n\tcaptionTrackDelay: \"--media-caption-track-delay\",\n\tcaptionTrackY: \"--media-caption-track-y\"\n};\n/** CSS custom property names for audio elements. */\nconst AudioCSSVars = {};\n/** Helper function to generate the HTML template for video elements. */\nfunction getVideoTemplateHTML(attrs) {\n\treturn `\n <style>\n :host {\n display: contents;\n }\n\n video {\n display: block;\n width: 100%;\n height: 100%;\n border-radius: var(${VideoCSSVars.borderRadius});\n object-fit: var(${VideoCSSVars.objectFit}, contain);\n object-position: var(${VideoCSSVars.objectPosition}, center);\n }\n\n video::-webkit-media-text-track-container {\n transition: translate var(${VideoCSSVars.captionTrackDuration}, 0) ease-out;\n transition-delay: var(${VideoCSSVars.captionTrackDelay}, 0);\n translate: 0 var(${VideoCSSVars.captionTrackY}, 0);\n scale: 0.98;\n z-index: 1;\n font-family: inherit;\n }\n </style>\n <slot name=\"media\">\n <video${serializeAttributes(attrs)}></video>\n </slot>\n <slot></slot>\n `;\n}\n/** Helper function to generate the HTML template for other elements. */\nfunction getCommonTemplateHTML(tag) {\n\treturn (attrs) => {\n\t\treturn `\n <style>\n :host {\n display: inline-flex;\n line-height: 0;\n flex-direction: column;\n justify-content: end;\n }\n\n ${tag} {\n width: 100%;\n }\n </style>\n <slot name=\"media\">\n <${tag}${serializeAttributes(attrs)}></${tag}>\n </slot>\n <slot></slot>\n `;\n\t};\n}\nconst excludedProperties = [\n\t\"attach\",\n\t\"detach\",\n\t\"destroy\"\n];\nfunction CustomMediaElement(tag, MediaHost) {\n\tconst mediaHostAttrToProp = /* @__PURE__ */ new Map();\n\tlet isDefined = false;\n\tclass CustomMedia extends (globalThis.HTMLElement ?? class {}) {\n\t\tstatic getTemplateHTML = tag.endsWith(\"video\") ? getVideoTemplateHTML : getCommonTemplateHTML(tag);\n\t\tstatic shadowRootOptions = { mode: \"open\" };\n\t\tstatic properties = {\n\t\t\tautoPictureInPicture: { type: Boolean },\n\t\t\tautoplay: { type: Boolean },\n\t\t\tcontrols: { type: Boolean },\n\t\t\tcontrolsList: { type: String },\n\t\t\tcrossOrigin: { type: String },\n\t\t\tdefaultMuted: {\n\t\t\t\ttype: Boolean,\n\t\t\t\tattribute: \"muted\"\n\t\t\t},\n\t\t\tdisablePictureInPicture: { type: Boolean },\n\t\t\tdisableRemotePlayback: { type: Boolean },\n\t\t\tloading: { type: String },\n\t\t\tloop: { type: Boolean },\n\t\t\tplaysInline: { type: Boolean },\n\t\t\tposter: { type: String },\n\t\t\tpreload: { type: String },\n\t\t\tsrc: { type: String }\n\t\t};\n\t\tstatic get observedAttributes() {\n\t\t\tCustomMedia.#define(this);\n\t\t\treturn [...getAttrsFromProps(this.properties)];\n\t\t}\n\t\tstatic #define(ctor) {\n\t\t\tif (isDefined) return;\n\t\t\tisDefined = true;\n\t\t\tfor (let proto = MediaHost.prototype; proto && proto !== Object.prototype; proto = Object.getPrototypeOf(proto)) for (const prop of Object.getOwnPropertyNames(proto)) {\n\t\t\t\tif (prop in CustomMedia.prototype || excludedProperties.includes(prop)) continue;\n\t\t\t\tconst descriptor = Object.getOwnPropertyDescriptor(proto, prop);\n\t\t\t\tif (!descriptor) continue;\n\t\t\t\tconst config = {\n\t\t\t\t\tenumerable: true,\n\t\t\t\t\tconfigurable: true\n\t\t\t\t};\n\t\t\t\tif (typeof descriptor.value === \"function\") config.value = function(...args) {\n\t\t\t\t\treturn this.#mediaHost[prop](...args);\n\t\t\t\t};\n\t\t\t\telse if (descriptor.get) {\n\t\t\t\t\tconfig.get = function() {\n\t\t\t\t\t\treturn this.#mediaHost[prop];\n\t\t\t\t\t};\n\t\t\t\t\tif (descriptor.set) {\n\t\t\t\t\t\tconst attr = kebabCase(prop);\n\t\t\t\t\t\tif (ctor.observedAttributes.includes(attr)) {\n\t\t\t\t\t\t\tmediaHostAttrToProp.set(attr, prop);\n\t\t\t\t\t\t\tconfig.set = function(val) {\n\t\t\t\t\t\t\t\tif (val === true || val === false || val == null) this.toggleAttribute(attr, Boolean(val));\n\t\t\t\t\t\t\t\telse this.setAttribute(attr, String(val));\n\t\t\t\t\t\t\t};\n\t\t\t\t\t\t} else config.set = function(val) {\n\t\t\t\t\t\t\tthis.#mediaHost[prop] = val;\n\t\t\t\t\t\t};\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t\tObject.defineProperty(CustomMedia.prototype, prop, config);\n\t\t\t}\n\t\t\tconst properties = ctor.properties;\n\t\t\tfor (const [prop, { type, attribute }] of Object.entries(properties)) {\n\t\t\t\tif (prop in CustomMedia.prototype) continue;\n\t\t\t\tconst attr = attribute ?? prop.toLowerCase();\n\t\t\t\tObject.defineProperty(CustomMedia.prototype, prop, {\n\t\t\t\t\tget: function() {\n\t\t\t\t\t\treturn type === Boolean ? this.hasAttribute(attr) : this.getAttribute(attr);\n\t\t\t\t\t},\n\t\t\t\t\tset: function(val) {\n\t\t\t\t\t\tif (type === Boolean) this.toggleAttribute(attr, Boolean(val));\n\t\t\t\t\t\telse this.setAttribute(attr, val);\n\t\t\t\t\t},\n\t\t\t\t\tenumerable: true,\n\t\t\t\t\tconfigurable: true\n\t\t\t\t});\n\t\t\t}\n\t\t}\n\t\t#mediaHost;\n\t\t#bridgedEventTypes = /* @__PURE__ */ new Set();\n\t\t#childMap = /* @__PURE__ */ new Map();\n\t\t#childObserver;\n\t\tconstructor() {\n\t\t\tsuper();\n\t\t\tif (!this.shadowRoot) {\n\t\t\t\tconst ctor = this.constructor;\n\t\t\t\tthis.attachShadow(ctor.shadowRootOptions);\n\t\t\t\tconst allowedKeys = getAttrsFromProps(ctor.properties);\n\t\t\t\tconst disallowedKeys = [...mediaHostAttrToProp.keys()];\n\t\t\t\tconst attrs = omit(pick(namedNodeMapToObject(this.attributes), allowedKeys), disallowedKeys);\n\t\t\t\tif (tag && !attrs.part) attrs.part = tag;\n\t\t\t\tthis.shadowRoot.innerHTML = ctor.getTemplateHTML(attrs);\n\t\t\t}\n\t\t\tthis.#mediaHost = new MediaHost();\n\t\t\tthis.#attachToTarget();\n\t\t\tthis.#childObserver = new MutationObserver(this.#syncMediaChildAttribute.bind(this));\n\t\t\tthis.shadowRoot.addEventListener(\"slotchange\", () => {\n\t\t\t\tthis.#attachToTarget();\n\t\t\t\tthis.#syncMediaChildren();\n\t\t\t});\n\t\t\tthis.#syncMediaChildren();\n\t\t}\n\t\t#attachToTarget() {\n\t\t\tconst target = this.target;\n\t\t\tif (target === this.#mediaHost.target) return;\n\t\t\tif (this.#mediaHost.target) this.#mediaHost.detach();\n\t\t\tthis.#mediaHost.attach(target);\n\t\t}\n\t\tget target() {\n\t\t\treturn this.querySelector(\":scope > [slot=media]\") ?? this.querySelector(tag) ?? this.shadowRoot?.querySelector(tag) ?? null;\n\t\t}\n\t\tdisconnectedCallback() {\n\t\t\tif (!this.hasAttribute(\"keep-alive\")) this.#mediaHost.destroy();\n\t\t}\n\t\taddEventListener(type, listener, options) {\n\t\t\tsuper.addEventListener(type, listener, options);\n\t\t\tif (!this.#bridgedEventTypes.has(type)) {\n\t\t\t\tthis.#bridgedEventTypes.add(type);\n\t\t\t\tthis.#mediaHost.addEventListener(type, this.#bridgeEvent);\n\t\t\t}\n\t\t}\n\t\tremoveEventListener(type, listener, options) {\n\t\t\tsuper.removeEventListener(type, listener, options);\n\t\t}\n\t\t#bridgeEvent = (event) => {\n\t\t\tif (!event.composed) this.dispatchEvent(new event.constructor(event.type, event));\n\t\t};\n\t\tattributeChangedCallback(attrName, oldValue, newValue) {\n\t\t\tconst prop = mediaHostAttrToProp.get(attrName);\n\t\t\tif (prop) {\n\t\t\t\tif (oldValue !== newValue) {\n\t\t\t\t\tconst valueType = typeof this.#mediaHost[prop];\n\t\t\t\t\tthis.#mediaHost[prop] = valueType === \"boolean\" ? newValue !== null : valueType === \"number\" ? Number(newValue) : newValue ?? \"\";\n\t\t\t\t}\n\t\t\t\treturn;\n\t\t\t}\n\t\t\tif (!CustomMedia.observedAttributes.includes(attrName) && this.constructor.observedAttributes.includes(attrName)) return;\n\t\t\tif (newValue === null) this.target?.removeAttribute(attrName);\n\t\t\telse if (this.target?.getAttribute(attrName) !== newValue) this.target?.setAttribute(attrName, newValue);\n\t\t}\n\t\t#syncMediaChildren() {\n\t\t\tconst defaultSlot = this.shadowRoot?.querySelector(\"slot:not([name])\");\n\t\t\tconst mediaChildren = new Set(defaultSlot?.assignedElements({ flatten: true }).filter((el) => el.localName === \"track\" || el.localName === \"source\"));\n\t\t\tfor (const [el, clone] of this.#childMap) if (!mediaChildren.has(el)) {\n\t\t\t\tclone.remove();\n\t\t\t\tthis.#childMap.delete(el);\n\t\t\t}\n\t\t\tfor (const el of mediaChildren) {\n\t\t\t\tlet clone = this.#childMap.get(el);\n\t\t\t\tif (!clone) {\n\t\t\t\t\tclone = el.cloneNode();\n\t\t\t\t\tthis.#childMap.set(el, clone);\n\t\t\t\t\tthis.#childObserver?.observe(el, { attributes: true });\n\t\t\t\t}\n\t\t\t\tthis.target?.append(clone);\n\t\t\t\tthis.#enableDefaultTrack(clone);\n\t\t\t}\n\t\t}\n\t\t#syncMediaChildAttribute(mutations) {\n\t\t\tfor (const mutation of mutations) if (mutation.type === \"attributes\") {\n\t\t\t\tconst { target, attributeName } = mutation;\n\t\t\t\tconst clone = this.#childMap.get(target);\n\t\t\t\tif (clone && attributeName) {\n\t\t\t\t\tclone.setAttribute(attributeName, target.getAttribute(attributeName) ?? \"\");\n\t\t\t\t\tthis.#enableDefaultTrack(clone);\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t\t#enableDefaultTrack(trackEl) {\n\t\t\tif (trackEl && trackEl.localName === \"track\" && trackEl.default && (trackEl.kind === \"chapters\" || trackEl.kind === \"metadata\") && trackEl.track.mode === \"disabled\") trackEl.track.mode = \"hidden\";\n\t\t}\n\t}\n\treturn CustomMedia;\n}\nfunction getAttrsFromProps(props) {\n\treturn Object.keys(props).map((prop) => props[prop]?.attribute ?? prop.toLowerCase());\n}\n//#endregion\nexport { AudioCSSVars, CustomMediaElement, VideoCSSVars };\n\n//# sourceMappingURL=index.js.map","//#region src/dom/media/media-host.ts\nconst EMPTY_TIME_RANGES = Object.freeze({\n\tlength: 0,\n\tstart() {\n\t\treturn 0;\n\t},\n\tend() {\n\t\treturn 0;\n\t}\n});\nvar HTMLMediaElementHost = class extends EventTarget {\n\t#target = null;\n\t#types = /* @__PURE__ */ new Set();\n\tget target() {\n\t\treturn this.#target;\n\t}\n\tget paused() {\n\t\treturn this.target?.paused ?? true;\n\t}\n\tget ended() {\n\t\treturn this.target?.ended ?? false;\n\t}\n\tplay() {\n\t\treturn this.target?.play() ?? Promise.reject();\n\t}\n\tpause() {\n\t\tthis.target?.pause();\n\t}\n\tget currentTime() {\n\t\treturn this.target?.currentTime ?? 0;\n\t}\n\tset currentTime(value) {\n\t\tif (this.target) this.target.currentTime = value;\n\t}\n\tget duration() {\n\t\treturn this.target?.duration ?? NaN;\n\t}\n\tget seeking() {\n\t\treturn this.target?.seeking ?? false;\n\t}\n\tget src() {\n\t\treturn this.target?.src ?? \"\";\n\t}\n\tset src(value) {\n\t\tif (this.target) this.target.src = value;\n\t}\n\tget currentSrc() {\n\t\treturn this.target?.currentSrc ?? \"\";\n\t}\n\tget readyState() {\n\t\treturn this.target?.readyState ?? 0;\n\t}\n\tload() {\n\t\tthis.target?.load();\n\t}\n\tget volume() {\n\t\treturn this.target?.volume ?? 1;\n\t}\n\tset volume(value) {\n\t\tif (this.target) this.target.volume = value;\n\t}\n\tget muted() {\n\t\treturn this.target?.muted ?? false;\n\t}\n\tset muted(value) {\n\t\tif (this.target) this.target.muted = value;\n\t}\n\tget playbackRate() {\n\t\treturn this.target?.playbackRate ?? 1;\n\t}\n\tset playbackRate(value) {\n\t\tif (this.target) this.target.playbackRate = value;\n\t}\n\tget buffered() {\n\t\treturn this.target?.buffered ?? EMPTY_TIME_RANGES;\n\t}\n\tget seekable() {\n\t\treturn this.target?.seekable ?? EMPTY_TIME_RANGES;\n\t}\n\tget error() {\n\t\treturn this.target?.error ?? null;\n\t}\n\tget textTracks() {\n\t\treturn this.target?.textTracks ?? [];\n\t}\n\tattach(target) {\n\t\tif (!target || this.#target === target) return;\n\t\tthis.#target = target;\n\t\tfor (const type of this.#types) target.addEventListener(type, this.#forwardEvent);\n\t}\n\tdetach() {\n\t\tif (!this.#target) return;\n\t\tfor (const type of this.#types) this.#target.removeEventListener(type, this.#forwardEvent);\n\t\tthis.#target = null;\n\t}\n\tquerySelectorAll(selectors) {\n\t\treturn this.target?.querySelectorAll(selectors) ?? [];\n\t}\n\taddEventListener(type, listener, options) {\n\t\tif (!this.#types.has(type)) {\n\t\t\tthis.#types.add(type);\n\t\t\tthis.target?.addEventListener(type, this.#forwardEvent);\n\t\t}\n\t\tsuper.addEventListener(type, listener, options);\n\t}\n\tremoveEventListener(type, listener, options) {\n\t\tsuper.removeEventListener(type, listener, options);\n\t}\n\t#forwardEvent = (event) => {\n\t\tthis.dispatchEvent(new event.constructor(event.type, event));\n\t};\n};\n//#endregion\nexport { HTMLMediaElementHost };\n\n//# sourceMappingURL=media-host.js.map","import { HTMLMediaElementHost } from \"./media-host.js\";\n//#region src/dom/media/video-host.ts\nvar HTMLVideoElementHost = class extends HTMLMediaElementHost {\n\trequestPictureInPicture() {\n\t\treturn this.target?.requestPictureInPicture() ?? Promise.reject();\n\t}\n\trequestFullscreen() {\n\t\treturn this.target?.requestFullscreen() ?? Promise.reject();\n\t}\n\twebkitEnterFullscreen() {\n\t\treturn this.target?.webkitEnterFullscreen?.();\n\t}\n\twebkitExitFullscreen() {\n\t\treturn this.target?.webkitExitFullscreen?.();\n\t}\n\twebkitSetPresentationMode(mode) {\n\t\treturn this.target?.webkitSetPresentationMode?.(mode);\n\t}\n\tget webkitDisplayingFullscreen() {\n\t\treturn this.target?.webkitDisplayingFullscreen ?? false;\n\t}\n\tget webkitPresentationMode() {\n\t\treturn this.target?.webkitPresentationMode ?? \"inline\";\n\t}\n};\n//#endregion\nexport { HTMLVideoElementHost };\n\n//# sourceMappingURL=video-host.js.map"],"mappings":"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"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"video-host-ycP7ckxU.js","names":["#define","#mediaHost","#attachToTarget","#childObserver","#syncMediaChildAttribute","#syncMediaChildren","#bridgedEventTypes","#bridgeEvent","#childMap","#enableDefaultTrack","#target","#types","#forwardEvent"],"sources":["../../utils/dist/object/omit.js","../../core/dist/dev/dom/media/custom-media-element/index.js","../../core/dist/dev/dom/media/media-host.js","../../core/dist/dev/dom/media/video-host.js"],"sourcesContent":["//#region src/object/omit.ts\n/**\n* Creates a new object without the specified keys.\n*\n* @example\n* const obj = { a: 1, b: 2, c: 3 };\n* omit(obj, ['b']); // { a: 1, c: 3 }\n*/\nfunction omit(obj, keys) {\n\tconst result = {};\n\tfor (const key in obj) if (!keys.includes(key)) result[key] = obj[key];\n\treturn result;\n}\n//#endregion\nexport { omit };\n\n//# sourceMappingURL=omit.js.map","import { omit, pick } from \"@videojs/utils/object\";\nimport { namedNodeMapToObject, serializeAttributes } from \"@videojs/utils/dom\";\nimport { kebabCase } from \"@videojs/utils/string\";\n//#region src/dom/media/custom-media-element/index.ts\n/** CSS custom property names for video elements. */\nconst VideoCSSVars = {\n\tborderRadius: \"--media-video-border-radius\",\n\tobjectFit: \"--media-object-fit\",\n\tobjectPosition: \"--media-object-position\",\n\tcaptionTrackDuration: \"--media-caption-track-duration\",\n\tcaptionTrackDelay: \"--media-caption-track-delay\",\n\tcaptionTrackY: \"--media-caption-track-y\"\n};\n/** CSS custom property names for audio elements. */\nconst AudioCSSVars = {};\n/** Helper function to generate the HTML template for video elements. */\nfunction getVideoTemplateHTML(attrs) {\n\treturn `\n <style>\n :host {\n display: contents;\n }\n\n video {\n display: block;\n width: 100%;\n height: 100%;\n border-radius: var(${VideoCSSVars.borderRadius});\n object-fit: var(${VideoCSSVars.objectFit}, contain);\n object-position: var(${VideoCSSVars.objectPosition}, center);\n }\n\n video::-webkit-media-text-track-container {\n transition: translate var(${VideoCSSVars.captionTrackDuration}, 0) ease-out;\n transition-delay: var(${VideoCSSVars.captionTrackDelay}, 0);\n translate: 0 var(${VideoCSSVars.captionTrackY}, 0);\n scale: 0.98;\n z-index: 1;\n font-family: inherit;\n }\n </style>\n <slot name=\"media\">\n <video${serializeAttributes(attrs)}></video>\n </slot>\n <slot></slot>\n `;\n}\n/** Helper function to generate the HTML template for other elements. */\nfunction getCommonTemplateHTML(tag) {\n\treturn (attrs) => {\n\t\treturn `\n <style>\n :host {\n display: inline-flex;\n line-height: 0;\n flex-direction: column;\n justify-content: end;\n }\n\n ${tag} {\n width: 100%;\n }\n </style>\n <slot name=\"media\">\n <${tag}${serializeAttributes(attrs)}></${tag}>\n </slot>\n <slot></slot>\n `;\n\t};\n}\nconst excludedProperties = [\n\t\"attach\",\n\t\"detach\",\n\t\"destroy\"\n];\nfunction CustomMediaElement(tag, MediaHost) {\n\tconst mediaHostAttrToProp = /* @__PURE__ */ new Map();\n\tlet isDefined = false;\n\tclass CustomMedia extends (globalThis.HTMLElement ?? class {}) {\n\t\tstatic getTemplateHTML = tag.endsWith(\"video\") ? getVideoTemplateHTML : getCommonTemplateHTML(tag);\n\t\tstatic shadowRootOptions = { mode: \"open\" };\n\t\tstatic properties = {\n\t\t\tautoPictureInPicture: { type: Boolean },\n\t\t\tautoplay: { type: Boolean },\n\t\t\tcontrols: { type: Boolean },\n\t\t\tcontrolsList: { type: String },\n\t\t\tcrossOrigin: { type: String },\n\t\t\tdefaultMuted: {\n\t\t\t\ttype: Boolean,\n\t\t\t\tattribute: \"muted\"\n\t\t\t},\n\t\t\tdisablePictureInPicture: { type: Boolean },\n\t\t\tdisableRemotePlayback: { type: Boolean },\n\t\t\tloading: { type: String },\n\t\t\tloop: { type: Boolean },\n\t\t\tplaysInline: { type: Boolean },\n\t\t\tposter: { type: String },\n\t\t\tpreload: { type: String },\n\t\t\tsrc: { type: String }\n\t\t};\n\t\tstatic get observedAttributes() {\n\t\t\tCustomMedia.#define(this);\n\t\t\treturn [...getAttrsFromProps(this.properties)];\n\t\t}\n\t\tstatic #define(ctor) {\n\t\t\tif (isDefined) return;\n\t\t\tisDefined = true;\n\t\t\tfor (let proto = MediaHost.prototype; proto && proto !== Object.prototype; proto = Object.getPrototypeOf(proto)) for (const prop of Object.getOwnPropertyNames(proto)) {\n\t\t\t\tif (prop in CustomMedia.prototype || excludedProperties.includes(prop)) continue;\n\t\t\t\tconst descriptor = Object.getOwnPropertyDescriptor(proto, prop);\n\t\t\t\tif (!descriptor) continue;\n\t\t\t\tconst config = {\n\t\t\t\t\tenumerable: true,\n\t\t\t\t\tconfigurable: true\n\t\t\t\t};\n\t\t\t\tif (typeof descriptor.value === \"function\") config.value = function(...args) {\n\t\t\t\t\treturn this.#mediaHost[prop](...args);\n\t\t\t\t};\n\t\t\t\telse if (descriptor.get) {\n\t\t\t\t\tconfig.get = function() {\n\t\t\t\t\t\treturn this.#mediaHost[prop];\n\t\t\t\t\t};\n\t\t\t\t\tif (descriptor.set) {\n\t\t\t\t\t\tconst attr = kebabCase(prop);\n\t\t\t\t\t\tif (ctor.observedAttributes.includes(attr)) {\n\t\t\t\t\t\t\tmediaHostAttrToProp.set(attr, prop);\n\t\t\t\t\t\t\tconfig.set = function(val) {\n\t\t\t\t\t\t\t\tif (val === true || val === false || val == null) this.toggleAttribute(attr, Boolean(val));\n\t\t\t\t\t\t\t\telse this.setAttribute(attr, String(val));\n\t\t\t\t\t\t\t};\n\t\t\t\t\t\t} else config.set = function(val) {\n\t\t\t\t\t\t\tthis.#mediaHost[prop] = val;\n\t\t\t\t\t\t};\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t\tObject.defineProperty(CustomMedia.prototype, prop, config);\n\t\t\t}\n\t\t\tconst properties = ctor.properties;\n\t\t\tfor (const [prop, { type, attribute }] of Object.entries(properties)) {\n\t\t\t\tif (prop in CustomMedia.prototype) continue;\n\t\t\t\tconst attr = attribute ?? prop.toLowerCase();\n\t\t\t\tObject.defineProperty(CustomMedia.prototype, prop, {\n\t\t\t\t\tget: function() {\n\t\t\t\t\t\treturn type === Boolean ? this.hasAttribute(attr) : this.getAttribute(attr);\n\t\t\t\t\t},\n\t\t\t\t\tset: function(val) {\n\t\t\t\t\t\tif (type === Boolean) this.toggleAttribute(attr, Boolean(val));\n\t\t\t\t\t\telse this.setAttribute(attr, val);\n\t\t\t\t\t},\n\t\t\t\t\tenumerable: true,\n\t\t\t\t\tconfigurable: true\n\t\t\t\t});\n\t\t\t}\n\t\t}\n\t\t#mediaHost;\n\t\t#bridgedEventTypes = /* @__PURE__ */ new Set();\n\t\t#childMap = /* @__PURE__ */ new Map();\n\t\t#childObserver;\n\t\tconstructor() {\n\t\t\tsuper();\n\t\t\tif (!this.shadowRoot) {\n\t\t\t\tconst ctor = this.constructor;\n\t\t\t\tthis.attachShadow(ctor.shadowRootOptions);\n\t\t\t\tconst allowedKeys = getAttrsFromProps(ctor.properties);\n\t\t\t\tconst disallowedKeys = [...mediaHostAttrToProp.keys()];\n\t\t\t\tconst attrs = omit(pick(namedNodeMapToObject(this.attributes), allowedKeys), disallowedKeys);\n\t\t\t\tif (tag && !attrs.part) attrs.part = tag;\n\t\t\t\tthis.shadowRoot.innerHTML = ctor.getTemplateHTML(attrs);\n\t\t\t}\n\t\t\tthis.#mediaHost = new MediaHost();\n\t\t\tthis.#attachToTarget();\n\t\t\tthis.#childObserver = new MutationObserver(this.#syncMediaChildAttribute.bind(this));\n\t\t\tthis.shadowRoot.addEventListener(\"slotchange\", () => {\n\t\t\t\tthis.#attachToTarget();\n\t\t\t\tthis.#syncMediaChildren();\n\t\t\t});\n\t\t\tthis.#syncMediaChildren();\n\t\t}\n\t\t#attachToTarget() {\n\t\t\tconst target = this.target;\n\t\t\tif (target === this.#mediaHost.target) return;\n\t\t\tif (this.#mediaHost.target) this.#mediaHost.detach();\n\t\t\tthis.#mediaHost.attach(target);\n\t\t}\n\t\tget target() {\n\t\t\treturn this.querySelector(\":scope > [slot=media]\") ?? this.querySelector(tag) ?? this.shadowRoot?.querySelector(tag) ?? null;\n\t\t}\n\t\tdisconnectedCallback() {\n\t\t\tif (!this.hasAttribute(\"keep-alive\")) this.#mediaHost.destroy();\n\t\t}\n\t\taddEventListener(type, listener, options) {\n\t\t\tsuper.addEventListener(type, listener, options);\n\t\t\tif (!this.#bridgedEventTypes.has(type)) {\n\t\t\t\tthis.#bridgedEventTypes.add(type);\n\t\t\t\tthis.#mediaHost.addEventListener(type, this.#bridgeEvent);\n\t\t\t}\n\t\t}\n\t\tremoveEventListener(type, listener, options) {\n\t\t\tsuper.removeEventListener(type, listener, options);\n\t\t}\n\t\t#bridgeEvent = (event) => {\n\t\t\tif (!event.composed) this.dispatchEvent(new event.constructor(event.type, event));\n\t\t};\n\t\tattributeChangedCallback(attrName, oldValue, newValue) {\n\t\t\tconst prop = mediaHostAttrToProp.get(attrName);\n\t\t\tif (prop) {\n\t\t\t\tif (oldValue !== newValue) {\n\t\t\t\t\tconst valueType = typeof this.#mediaHost[prop];\n\t\t\t\t\tthis.#mediaHost[prop] = valueType === \"boolean\" ? newValue !== null : valueType === \"number\" ? Number(newValue) : newValue ?? \"\";\n\t\t\t\t}\n\t\t\t\treturn;\n\t\t\t}\n\t\t\tif (!CustomMedia.observedAttributes.includes(attrName) && this.constructor.observedAttributes.includes(attrName)) return;\n\t\t\tif (newValue === null) this.target?.removeAttribute(attrName);\n\t\t\telse if (this.target?.getAttribute(attrName) !== newValue) this.target?.setAttribute(attrName, newValue);\n\t\t}\n\t\t#syncMediaChildren() {\n\t\t\tconst defaultSlot = this.shadowRoot?.querySelector(\"slot:not([name])\");\n\t\t\tconst mediaChildren = new Set(defaultSlot?.assignedElements({ flatten: true }).filter((el) => el.localName === \"track\" || el.localName === \"source\"));\n\t\t\tfor (const [el, clone] of this.#childMap) if (!mediaChildren.has(el)) {\n\t\t\t\tclone.remove();\n\t\t\t\tthis.#childMap.delete(el);\n\t\t\t}\n\t\t\tfor (const el of mediaChildren) {\n\t\t\t\tlet clone = this.#childMap.get(el);\n\t\t\t\tif (!clone) {\n\t\t\t\t\tclone = el.cloneNode();\n\t\t\t\t\tthis.#childMap.set(el, clone);\n\t\t\t\t\tthis.#childObserver?.observe(el, { attributes: true });\n\t\t\t\t}\n\t\t\t\tthis.target?.append(clone);\n\t\t\t\tthis.#enableDefaultTrack(clone);\n\t\t\t}\n\t\t}\n\t\t#syncMediaChildAttribute(mutations) {\n\t\t\tfor (const mutation of mutations) if (mutation.type === \"attributes\") {\n\t\t\t\tconst { target, attributeName } = mutation;\n\t\t\t\tconst clone = this.#childMap.get(target);\n\t\t\t\tif (clone && attributeName) {\n\t\t\t\t\tclone.setAttribute(attributeName, target.getAttribute(attributeName) ?? \"\");\n\t\t\t\t\tthis.#enableDefaultTrack(clone);\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t\t#enableDefaultTrack(trackEl) {\n\t\t\tif (trackEl && trackEl.localName === \"track\" && trackEl.default && (trackEl.kind === \"chapters\" || trackEl.kind === \"metadata\") && trackEl.track.mode === \"disabled\") trackEl.track.mode = \"hidden\";\n\t\t}\n\t}\n\treturn CustomMedia;\n}\nfunction getAttrsFromProps(props) {\n\treturn Object.keys(props).map((prop) => props[prop]?.attribute ?? prop.toLowerCase());\n}\n//#endregion\nexport { AudioCSSVars, CustomMediaElement, VideoCSSVars };\n\n//# sourceMappingURL=index.js.map","//#region src/dom/media/media-host.ts\nconst EMPTY_TIME_RANGES = Object.freeze({\n\tlength: 0,\n\tstart() {\n\t\treturn 0;\n\t},\n\tend() {\n\t\treturn 0;\n\t}\n});\nvar HTMLMediaElementHost = class extends EventTarget {\n\t#target = null;\n\t#types = /* @__PURE__ */ new Set();\n\tget target() {\n\t\treturn this.#target;\n\t}\n\tget paused() {\n\t\treturn this.target?.paused ?? true;\n\t}\n\tget ended() {\n\t\treturn this.target?.ended ?? false;\n\t}\n\tplay() {\n\t\treturn this.target?.play() ?? Promise.reject();\n\t}\n\tpause() {\n\t\tthis.target?.pause();\n\t}\n\tget currentTime() {\n\t\treturn this.target?.currentTime ?? 0;\n\t}\n\tset currentTime(value) {\n\t\tif (this.target) this.target.currentTime = value;\n\t}\n\tget duration() {\n\t\treturn this.target?.duration ?? NaN;\n\t}\n\tget seeking() {\n\t\treturn this.target?.seeking ?? false;\n\t}\n\tget src() {\n\t\treturn this.target?.src ?? \"\";\n\t}\n\tset src(value) {\n\t\tif (this.target) this.target.src = value;\n\t}\n\tget currentSrc() {\n\t\treturn this.target?.currentSrc ?? \"\";\n\t}\n\tget readyState() {\n\t\treturn this.target?.readyState ?? 0;\n\t}\n\tload() {\n\t\tthis.target?.load();\n\t}\n\tget volume() {\n\t\treturn this.target?.volume ?? 1;\n\t}\n\tset volume(value) {\n\t\tif (this.target) this.target.volume = value;\n\t}\n\tget muted() {\n\t\treturn this.target?.muted ?? false;\n\t}\n\tset muted(value) {\n\t\tif (this.target) this.target.muted = value;\n\t}\n\tget playbackRate() {\n\t\treturn this.target?.playbackRate ?? 1;\n\t}\n\tset playbackRate(value) {\n\t\tif (this.target) this.target.playbackRate = value;\n\t}\n\tget buffered() {\n\t\treturn this.target?.buffered ?? EMPTY_TIME_RANGES;\n\t}\n\tget seekable() {\n\t\treturn this.target?.seekable ?? EMPTY_TIME_RANGES;\n\t}\n\tget error() {\n\t\treturn this.target?.error ?? null;\n\t}\n\tget textTracks() {\n\t\treturn this.target?.textTracks ?? [];\n\t}\n\tattach(target) {\n\t\tif (!target || this.#target === target) return;\n\t\tthis.#target = target;\n\t\tfor (const type of this.#types) target.addEventListener(type, this.#forwardEvent);\n\t}\n\tdetach() {\n\t\tif (!this.#target) return;\n\t\tfor (const type of this.#types) this.#target.removeEventListener(type, this.#forwardEvent);\n\t\tthis.#target = null;\n\t}\n\tquerySelectorAll(selectors) {\n\t\treturn this.target?.querySelectorAll(selectors) ?? [];\n\t}\n\taddEventListener(type, listener, options) {\n\t\tif (!this.#types.has(type)) {\n\t\t\tthis.#types.add(type);\n\t\t\tthis.target?.addEventListener(type, this.#forwardEvent);\n\t\t}\n\t\tsuper.addEventListener(type, listener, options);\n\t}\n\tremoveEventListener(type, listener, options) {\n\t\tsuper.removeEventListener(type, listener, options);\n\t}\n\t#forwardEvent = (event) => {\n\t\tthis.dispatchEvent(new event.constructor(event.type, event));\n\t};\n};\n//#endregion\nexport { HTMLMediaElementHost };\n\n//# sourceMappingURL=media-host.js.map","import { HTMLMediaElementHost } from \"./media-host.js\";\n//#region src/dom/media/video-host.ts\nvar HTMLVideoElementHost = class extends HTMLMediaElementHost {\n\trequestPictureInPicture() {\n\t\treturn this.target?.requestPictureInPicture() ?? Promise.reject();\n\t}\n\trequestFullscreen() {\n\t\treturn this.target?.requestFullscreen() ?? Promise.reject();\n\t}\n\twebkitEnterFullscreen() {\n\t\treturn this.target?.webkitEnterFullscreen?.();\n\t}\n\twebkitExitFullscreen() {\n\t\treturn this.target?.webkitExitFullscreen?.();\n\t}\n\twebkitSetPresentationMode(mode) {\n\t\treturn this.target?.webkitSetPresentationMode?.(mode);\n\t}\n\tget webkitDisplayingFullscreen() {\n\t\treturn this.target?.webkitDisplayingFullscreen ?? false;\n\t}\n\tget webkitPresentationMode() {\n\t\treturn this.target?.webkitPresentationMode ?? \"inline\";\n\t}\n};\n//#endregion\nexport { HTMLVideoElementHost };\n\n//# sourceMappingURL=video-host.js.map"],"mappings":"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"}
|