@videojs/html 10.0.0-alpha.9 → 10.0.0-beta.10
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +2 -2
- package/cdn/audio-minimal.dev.d.ts +1 -0
- package/cdn/audio-minimal.dev.js +112 -0
- package/cdn/audio-minimal.dev.js.map +1 -0
- package/cdn/audio-minimal.js +2 -0
- package/cdn/audio-minimal.js.map +1 -0
- package/cdn/audio.dev.d.ts +1 -0
- package/cdn/audio.dev.js +103 -0
- package/cdn/audio.dev.js.map +1 -0
- package/cdn/audio.js +2 -0
- package/cdn/audio.js.map +1 -0
- package/cdn/background.dev.d.ts +1 -0
- package/cdn/background.dev.js +159 -0
- package/cdn/background.dev.js.map +1 -0
- package/cdn/background.js +2 -0
- package/cdn/background.js.map +1 -0
- package/cdn/context-C_e06fGU.js +13 -0
- package/cdn/context-C_e06fGU.js.map +1 -0
- package/cdn/context-DTY0nOpS.js +98 -0
- package/cdn/context-DTY0nOpS.js.map +1 -0
- package/cdn/create-player-BTIU8EwT.js +7 -0
- package/cdn/create-player-BTIU8EwT.js.map +1 -0
- package/cdn/create-player-Cwxvswyv.js +3218 -0
- package/cdn/create-player-Cwxvswyv.js.map +1 -0
- package/cdn/default-GgKND7a8.js +2 -0
- package/cdn/default-GgKND7a8.js.map +1 -0
- package/cdn/default-cLso8BHO.js +28 -0
- package/cdn/default-cLso8BHO.js.map +1 -0
- package/cdn/listen-BXAYCbZA.js +9 -0
- package/cdn/listen-BXAYCbZA.js.map +1 -0
- package/cdn/listen-DX5vU4s4.js +2 -0
- package/cdn/listen-DX5vU4s4.js.map +1 -0
- package/cdn/media/dash-video.dev.d.ts +1 -0
- package/cdn/media/dash-video.dev.js +39165 -0
- package/cdn/media/dash-video.dev.js.map +1 -0
- package/cdn/media/dash-video.js +21 -0
- package/cdn/media/dash-video.js.map +1 -0
- package/cdn/media/hls-video.dev.d.ts +1 -0
- package/cdn/media/hls-video.dev.js +28357 -0
- package/cdn/media/hls-video.dev.js.map +1 -0
- package/cdn/media/hls-video.js +41 -0
- package/cdn/media/hls-video.js.map +1 -0
- package/cdn/media/simple-hls-video.dev.d.ts +1 -0
- package/cdn/media/simple-hls-video.dev.js +3465 -0
- package/cdn/media/simple-hls-video.dev.js.map +1 -0
- package/cdn/media/simple-hls-video.js +2 -0
- package/cdn/media/simple-hls-video.js.map +1 -0
- package/cdn/media-attach-mixin-ChyNp2eK.js +44 -0
- package/cdn/media-attach-mixin-ChyNp2eK.js.map +1 -0
- package/cdn/media-attach-mixin-tFNcHnvo.js +2 -0
- package/cdn/media-attach-mixin-tFNcHnvo.js.map +1 -0
- package/cdn/minimal-BJfleQcQ.js +2 -0
- package/cdn/minimal-BJfleQcQ.js.map +1 -0
- package/cdn/minimal-DBMdC_0I.js +28 -0
- package/cdn/minimal-DBMdC_0I.js.map +1 -0
- package/cdn/player-BHhLXO-R.js +2 -0
- package/cdn/player-BHhLXO-R.js.map +1 -0
- package/cdn/player-DEfj0RU6.js +15 -0
- package/cdn/player-DEfj0RU6.js.map +1 -0
- package/cdn/poster-Dd0F1rRd.js +195 -0
- package/cdn/poster-Dd0F1rRd.js.map +1 -0
- package/cdn/poster-DwQ3RAch.js +2 -0
- package/cdn/poster-DwQ3RAch.js.map +1 -0
- package/cdn/predicate-BG-dj_kF.js +26 -0
- package/cdn/predicate-BG-dj_kF.js.map +1 -0
- package/cdn/predicate-Y9jDHLpX.js +2 -0
- package/cdn/predicate-Y9jDHLpX.js.map +1 -0
- package/cdn/proxy-2oO2ph3m.js +47 -0
- package/cdn/proxy-2oO2ph3m.js.map +1 -0
- package/cdn/proxy-6KS6wy69.js +2 -0
- package/cdn/proxy-6KS6wy69.js.map +1 -0
- package/cdn/proxy-XzDf9gyk.js +66 -0
- package/cdn/proxy-XzDf9gyk.js.map +1 -0
- package/cdn/proxy-dR7IDk37.js +349 -0
- package/cdn/proxy-dR7IDk37.js.map +1 -0
- package/cdn/safe-define-B8lHgj_K.js +9 -0
- package/cdn/safe-define-B8lHgj_K.js.map +1 -0
- package/cdn/safe-define-GrHW3P9e.js +2 -0
- package/cdn/safe-define-GrHW3P9e.js.map +1 -0
- package/cdn/video-minimal.dev.d.ts +1 -0
- package/cdn/video-minimal.dev.js +155 -0
- package/cdn/video-minimal.dev.js.map +1 -0
- package/cdn/video-minimal.js +2 -0
- package/cdn/video-minimal.js.map +1 -0
- package/cdn/video.dev.d.ts +1 -0
- package/cdn/video.dev.js +170 -0
- package/cdn/video.dev.js.map +1 -0
- package/cdn/video.js +2 -0
- package/cdn/video.js.map +1 -0
- package/cdn/volume-slider-DgJ0rAfC.js +2459 -0
- package/cdn/volume-slider-DgJ0rAfC.js.map +1 -0
- package/cdn/volume-slider-Pd0AMTCH.js +8 -0
- package/cdn/volume-slider-Pd0AMTCH.js.map +1 -0
- package/dist/default/_virtual/inline-css_src/define/audio/minimal-skin.js +6 -0
- package/dist/default/_virtual/inline-css_src/define/audio/minimal-skin.js.map +1 -0
- package/dist/default/_virtual/inline-css_src/define/audio/skin.js +6 -0
- package/dist/default/_virtual/inline-css_src/define/audio/skin.js.map +1 -0
- package/dist/default/_virtual/inline-css_src/define/background/skin.js +6 -0
- package/dist/default/_virtual/inline-css_src/define/background/skin.js.map +1 -0
- package/dist/default/_virtual/inline-css_src/define/base.js +6 -0
- package/dist/default/_virtual/inline-css_src/define/base.js.map +1 -0
- package/dist/default/_virtual/inline-css_src/define/shared.js +6 -0
- package/dist/default/_virtual/inline-css_src/define/shared.js.map +1 -0
- package/dist/default/_virtual/inline-css_src/define/video/minimal-skin.js +6 -0
- package/dist/default/_virtual/inline-css_src/define/video/minimal-skin.js.map +1 -0
- package/dist/default/_virtual/inline-css_src/define/video/skin.js +6 -0
- package/dist/default/_virtual/inline-css_src/define/video/skin.js.map +1 -0
- package/dist/default/define/audio/minimal-skin.css +710 -5
- package/dist/default/define/audio/minimal-skin.js +20 -9
- package/dist/default/define/audio/minimal-skin.js.map +1 -1
- package/dist/default/define/audio/minimal-skin.tailwind.js +44 -0
- package/dist/default/define/audio/minimal-skin.tailwind.js.map +1 -0
- package/dist/default/define/audio/skin.css +736 -6
- package/dist/default/define/audio/skin.js +20 -9
- package/dist/default/define/audio/skin.js.map +1 -1
- package/dist/default/define/audio/skin.tailwind.js +42 -0
- package/dist/default/define/audio/skin.tailwind.js.map +1 -0
- package/dist/default/define/background/skin.css +1 -1
- package/dist/default/define/background/skin.js +11 -5
- package/dist/default/define/background/skin.js.map +1 -1
- package/dist/default/define/base.css +23 -0
- package/dist/default/define/media/dash-video.js +14 -0
- package/dist/default/define/media/dash-video.js.map +1 -0
- package/dist/default/define/media/simple-hls-video.js +13 -0
- package/dist/default/define/media/simple-hls-video.js.map +1 -0
- package/dist/default/define/shared.css +13 -0
- package/dist/default/define/skin-mixin.js +36 -19
- package/dist/default/define/skin-mixin.js.map +1 -1
- package/dist/default/define/video/minimal-skin.css +701 -397
- package/dist/default/define/video/minimal-skin.js +9 -98
- package/dist/default/define/video/minimal-skin.js.map +1 -1
- package/dist/default/define/video/minimal-skin.tailwind.js +17 -99
- package/dist/default/define/video/minimal-skin.tailwind.js.map +1 -1
- package/dist/default/define/video/skin.css +744 -427
- package/dist/default/define/video/skin.js +10 -92
- package/dist/default/define/video/skin.js.map +1 -1
- package/dist/default/define/video/skin.tailwind.js +15 -92
- package/dist/default/define/video/skin.tailwind.js.map +1 -1
- package/dist/default/icons/dist/render/default/index.js +14 -13
- package/dist/default/icons/dist/render/default/index.js.map +1 -1
- package/dist/default/icons/dist/render/minimal/index.js +14 -13
- package/dist/default/icons/dist/render/minimal/index.js.map +1 -1
- package/dist/default/index.js +3 -2
- package/dist/default/media/background-video/index.js +6 -19
- package/dist/default/media/background-video/index.js.map +1 -1
- package/dist/default/media/container-element.js +5 -2
- package/dist/default/media/container-element.js.map +1 -1
- package/dist/default/media/dash-video/index.js +26 -0
- package/dist/default/media/dash-video/index.js.map +1 -0
- package/dist/default/media/hls-video/index.js +2 -1
- package/dist/default/media/hls-video/index.js.map +1 -1
- package/dist/default/media/simple-hls-video/index.js +23 -0
- package/dist/default/media/simple-hls-video/index.js.map +1 -0
- package/dist/default/player/context.js +6 -2
- package/dist/default/player/context.js.map +1 -1
- package/dist/default/player/create-player.js +11 -3
- package/dist/default/player/create-player.js.map +1 -1
- package/dist/default/presets/audio.js +3 -1
- package/dist/default/skins/dist/default/default/tailwind/audio.tailwind.js +42 -0
- package/dist/default/skins/dist/default/default/tailwind/audio.tailwind.js.map +1 -0
- package/dist/default/skins/dist/default/default/tailwind/components/buffering.js +9 -0
- package/dist/default/skins/dist/default/default/tailwind/components/buffering.js.map +1 -0
- package/dist/default/skins/dist/default/default/tailwind/components/button.js +13 -0
- package/dist/default/skins/dist/default/default/tailwind/components/button.js.map +1 -0
- package/dist/default/skins/dist/default/default/tailwind/components/controls.js +8 -0
- package/dist/default/skins/dist/default/default/tailwind/components/controls.js.map +1 -0
- package/dist/default/skins/dist/default/default/tailwind/components/error.js +15 -0
- package/dist/default/skins/dist/default/default/tailwind/components/error.js.map +1 -0
- package/dist/default/skins/dist/default/default/tailwind/components/icon.js +10 -0
- package/dist/default/skins/dist/default/default/tailwind/components/icon.js.map +1 -0
- package/dist/default/skins/dist/default/default/tailwind/components/overlay.js +8 -0
- package/dist/default/skins/dist/default/default/tailwind/components/overlay.js.map +1 -0
- package/dist/default/skins/dist/default/default/tailwind/components/playback-rate.js +6 -0
- package/dist/default/skins/dist/default/default/tailwind/components/playback-rate.js.map +1 -0
- package/dist/default/skins/dist/default/default/tailwind/components/popup.js +13 -0
- package/dist/default/skins/dist/default/default/tailwind/components/popup.js.map +1 -0
- package/dist/default/skins/dist/default/default/tailwind/components/poster.js +16 -0
- package/dist/default/skins/dist/default/default/tailwind/components/poster.js.map +1 -0
- package/dist/default/skins/dist/default/default/tailwind/components/preview.js +13 -0
- package/dist/default/skins/dist/default/default/tailwind/components/preview.js.map +1 -0
- package/dist/default/skins/dist/default/default/tailwind/components/root.js +8 -0
- package/dist/default/skins/dist/default/default/tailwind/components/root.js.map +1 -0
- package/dist/default/skins/dist/default/default/tailwind/components/seek.js +11 -0
- package/dist/default/skins/dist/default/default/tailwind/components/seek.js.map +1 -0
- package/dist/default/skins/dist/default/default/tailwind/components/slider.js +21 -0
- package/dist/default/skins/dist/default/default/tailwind/components/slider.js.map +1 -0
- package/dist/default/skins/dist/default/default/tailwind/components/surface.js +8 -0
- package/dist/default/skins/dist/default/default/tailwind/components/surface.js.map +1 -0
- package/dist/default/skins/dist/default/default/tailwind/components/time.js +10 -0
- package/dist/default/skins/dist/default/default/tailwind/components/time.js.map +1 -0
- package/dist/default/skins/dist/default/default/tailwind/video.tailwind.js +66 -0
- package/dist/default/skins/dist/default/default/tailwind/video.tailwind.js.map +1 -0
- package/dist/default/skins/dist/default/minimal/tailwind/audio.tailwind.js +31 -0
- package/dist/default/skins/dist/default/minimal/tailwind/audio.tailwind.js.map +1 -0
- package/dist/default/skins/dist/default/minimal/tailwind/components/buffering.js +6 -0
- package/dist/default/skins/dist/default/minimal/tailwind/components/buffering.js.map +1 -0
- package/dist/default/skins/dist/default/minimal/tailwind/components/button-group.js +8 -0
- package/dist/default/skins/dist/default/minimal/tailwind/components/button-group.js.map +1 -0
- package/dist/default/skins/dist/default/minimal/tailwind/components/button.js +13 -0
- package/dist/default/skins/dist/default/minimal/tailwind/components/button.js.map +1 -0
- package/dist/default/skins/dist/default/minimal/tailwind/components/controls.js +8 -0
- package/dist/default/skins/dist/default/minimal/tailwind/components/controls.js.map +1 -0
- package/dist/default/skins/dist/default/minimal/tailwind/components/error.js +15 -0
- package/dist/default/skins/dist/default/minimal/tailwind/components/error.js.map +1 -0
- package/dist/default/skins/dist/default/minimal/tailwind/components/icon.js +10 -0
- package/dist/default/skins/dist/default/minimal/tailwind/components/icon.js.map +1 -0
- package/dist/default/skins/dist/default/minimal/tailwind/components/overlay.js +8 -0
- package/dist/default/skins/dist/default/minimal/tailwind/components/overlay.js.map +1 -0
- package/dist/default/skins/dist/default/minimal/tailwind/components/playback-rate.js +6 -0
- package/dist/default/skins/dist/default/minimal/tailwind/components/playback-rate.js.map +1 -0
- package/dist/default/skins/dist/default/minimal/tailwind/components/popup.js +13 -0
- package/dist/default/skins/dist/default/minimal/tailwind/components/popup.js.map +1 -0
- package/dist/default/skins/dist/default/minimal/tailwind/components/poster.js +16 -0
- package/dist/default/skins/dist/default/minimal/tailwind/components/poster.js.map +1 -0
- package/dist/default/skins/dist/default/minimal/tailwind/components/preview.js +14 -0
- package/dist/default/skins/dist/default/minimal/tailwind/components/preview.js.map +1 -0
- package/dist/default/skins/dist/default/minimal/tailwind/components/root.js +8 -0
- package/dist/default/skins/dist/default/minimal/tailwind/components/root.js.map +1 -0
- package/dist/default/skins/dist/default/minimal/tailwind/components/seek.js +11 -0
- package/dist/default/skins/dist/default/minimal/tailwind/components/seek.js.map +1 -0
- package/dist/default/skins/dist/default/minimal/tailwind/components/slider.js +20 -0
- package/dist/default/skins/dist/default/minimal/tailwind/components/slider.js.map +1 -0
- package/dist/default/skins/dist/default/minimal/tailwind/components/time.js +14 -0
- package/dist/default/skins/dist/default/minimal/tailwind/components/time.js.map +1 -0
- package/dist/default/skins/dist/default/minimal/tailwind/video.tailwind.js +61 -0
- package/dist/default/skins/dist/default/minimal/tailwind/video.tailwind.js.map +1 -0
- package/dist/default/skins/dist/default/shared/tailwind/icon-state.js +34 -0
- package/dist/default/skins/dist/default/shared/tailwind/icon-state.js.map +1 -0
- package/dist/default/skins/dist/default/shared/tailwind/tooltip-state.js +28 -0
- package/dist/default/skins/dist/default/shared/tailwind/tooltip-state.js.map +1 -0
- package/dist/default/store/container-mixin.js +16 -46
- package/dist/default/store/container-mixin.js.map +1 -1
- package/dist/default/store/media-attach-mixin.js +45 -0
- package/dist/default/store/media-attach-mixin.js.map +1 -0
- package/dist/default/store/provider-mixin.js +99 -9
- package/dist/default/store/provider-mixin.js.map +1 -1
- package/dist/default/ui/popover/popover-element.js +57 -4
- package/dist/default/ui/popover/popover-element.js.map +1 -1
- package/dist/default/ui/slider/slider-element.js +3 -3
- package/dist/default/ui/slider/slider-element.js.map +1 -1
- package/dist/default/ui/time-slider/time-slider-element.js +4 -4
- package/dist/default/ui/time-slider/time-slider-element.js.map +1 -1
- package/dist/default/ui/tooltip/tooltip-element.js +56 -4
- package/dist/default/ui/tooltip/tooltip-element.js.map +1 -1
- package/dist/default/ui/tooltip/tooltip-group-element.js +4 -1
- package/dist/default/ui/tooltip/tooltip-group-element.js.map +1 -1
- package/dist/default/ui/volume-slider/volume-slider-element.js +6 -6
- package/dist/default/ui/volume-slider/volume-slider-element.js.map +1 -1
- package/dist/dev/_virtual/inline-css_src/define/audio/minimal-skin.js +6 -0
- package/dist/dev/_virtual/inline-css_src/define/audio/minimal-skin.js.map +1 -0
- package/dist/dev/_virtual/inline-css_src/define/audio/skin.js +6 -0
- package/dist/dev/_virtual/inline-css_src/define/audio/skin.js.map +1 -0
- package/dist/dev/_virtual/inline-css_src/define/background/skin.js +6 -0
- package/dist/dev/_virtual/inline-css_src/define/background/skin.js.map +1 -0
- package/dist/dev/_virtual/inline-css_src/define/base.js +6 -0
- package/dist/dev/_virtual/inline-css_src/define/base.js.map +1 -0
- package/dist/dev/_virtual/inline-css_src/define/shared.js +6 -0
- package/dist/dev/_virtual/inline-css_src/define/shared.js.map +1 -0
- package/dist/dev/_virtual/inline-css_src/define/video/minimal-skin.js +6 -0
- package/dist/dev/_virtual/inline-css_src/define/video/minimal-skin.js.map +1 -0
- package/dist/dev/_virtual/inline-css_src/define/video/skin.js +6 -0
- package/dist/dev/_virtual/inline-css_src/define/video/skin.js.map +1 -0
- package/dist/dev/define/audio/minimal-skin.css +710 -5
- package/dist/dev/define/audio/minimal-skin.d.ts +6 -2
- package/dist/dev/define/audio/minimal-skin.d.ts.map +1 -1
- package/dist/dev/define/audio/minimal-skin.js +102 -9
- package/dist/dev/define/audio/minimal-skin.js.map +1 -1
- package/dist/dev/define/audio/minimal-skin.tailwind.d.ts +20 -0
- package/dist/dev/define/audio/minimal-skin.tailwind.d.ts.map +1 -0
- package/dist/dev/define/audio/minimal-skin.tailwind.js +128 -0
- package/dist/dev/define/audio/minimal-skin.tailwind.js.map +1 -0
- package/dist/dev/define/audio/player.d.ts +0 -1
- package/dist/dev/define/audio/player.d.ts.map +1 -1
- package/dist/dev/define/audio/skin.css +736 -6
- package/dist/dev/define/audio/skin.d.ts +6 -2
- package/dist/dev/define/audio/skin.d.ts.map +1 -1
- package/dist/dev/define/audio/skin.js +93 -9
- package/dist/dev/define/audio/skin.js.map +1 -1
- package/dist/dev/define/audio/skin.tailwind.d.ts +20 -0
- package/dist/dev/define/audio/skin.tailwind.d.ts.map +1 -0
- package/dist/dev/define/audio/skin.tailwind.js +117 -0
- package/dist/dev/define/audio/skin.tailwind.js.map +1 -0
- package/dist/dev/define/background/player.d.ts +0 -1
- package/dist/dev/define/background/player.d.ts.map +1 -1
- package/dist/dev/define/background/skin.css +1 -1
- package/dist/dev/define/background/skin.d.ts.map +1 -1
- package/dist/dev/define/background/skin.js +13 -1
- package/dist/dev/define/background/skin.js.map +1 -1
- package/dist/dev/define/base.css +23 -0
- package/dist/dev/define/media/dash-video.d.ts +14 -0
- package/dist/dev/define/media/dash-video.d.ts.map +1 -0
- package/dist/dev/define/media/dash-video.js +14 -0
- package/dist/dev/define/media/dash-video.js.map +1 -0
- package/dist/dev/define/media/simple-hls-video.d.ts +14 -0
- package/dist/dev/define/media/simple-hls-video.d.ts.map +1 -0
- package/dist/dev/define/media/simple-hls-video.js +13 -0
- package/dist/dev/define/media/simple-hls-video.js.map +1 -0
- package/dist/dev/define/shared.css +13 -0
- package/dist/dev/define/skin-mixin.d.ts +12 -4
- package/dist/dev/define/skin-mixin.d.ts.map +1 -1
- package/dist/dev/define/skin-mixin.js +36 -19
- package/dist/dev/define/skin-mixin.js.map +1 -1
- package/dist/dev/define/video/minimal-skin.css +701 -397
- package/dist/dev/define/video/minimal-skin.d.ts +5 -14
- package/dist/dev/define/video/minimal-skin.d.ts.map +1 -1
- package/dist/dev/define/video/minimal-skin.js +119 -83
- package/dist/dev/define/video/minimal-skin.js.map +1 -1
- package/dist/dev/define/video/minimal-skin.tailwind.d.ts +4 -14
- package/dist/dev/define/video/minimal-skin.tailwind.d.ts.map +1 -1
- package/dist/dev/define/video/minimal-skin.tailwind.js +136 -83
- package/dist/dev/define/video/minimal-skin.tailwind.js.map +1 -1
- package/dist/dev/define/video/player.d.ts +0 -1
- package/dist/dev/define/video/player.d.ts.map +1 -1
- package/dist/dev/define/video/skin.css +744 -427
- package/dist/dev/define/video/skin.d.ts +5 -14
- package/dist/dev/define/video/skin.d.ts.map +1 -1
- package/dist/dev/define/video/skin.js +115 -79
- package/dist/dev/define/video/skin.js.map +1 -1
- package/dist/dev/define/video/skin.tailwind.d.ts +4 -14
- package/dist/dev/define/video/skin.tailwind.d.ts.map +1 -1
- package/dist/dev/define/video/skin.tailwind.js +125 -76
- package/dist/dev/define/video/skin.tailwind.js.map +1 -1
- package/dist/dev/icons/dist/render/default/index.js +14 -13
- package/dist/dev/icons/dist/render/default/index.js.map +1 -1
- package/dist/dev/icons/dist/render/minimal/index.js +14 -13
- package/dist/dev/icons/dist/render/minimal/index.js.map +1 -1
- package/dist/dev/index.d.ts +6 -5
- package/dist/dev/index.js +3 -2
- package/dist/dev/media/background-video/index.d.ts +8 -1
- package/dist/dev/media/background-video/index.d.ts.map +1 -1
- package/dist/dev/media/background-video/index.js +5 -1
- package/dist/dev/media/background-video/index.js.map +1 -1
- package/dist/dev/media/container-element.d.ts +0 -1
- package/dist/dev/media/container-element.d.ts.map +1 -1
- package/dist/dev/media/container-element.js +5 -2
- package/dist/dev/media/container-element.js.map +1 -1
- package/dist/dev/media/dash-video/index.d.ts +13 -0
- package/dist/dev/media/dash-video/index.d.ts.map +1 -0
- package/dist/dev/media/dash-video/index.js +26 -0
- package/dist/dev/media/dash-video/index.js.map +1 -0
- package/dist/dev/media/hls-video/index.d.ts +2 -1
- package/dist/dev/media/hls-video/index.d.ts.map +1 -1
- package/dist/dev/media/hls-video/index.js +2 -1
- package/dist/dev/media/hls-video/index.js.map +1 -1
- package/dist/dev/media/simple-hls-video/index.d.ts +12 -0
- package/dist/dev/media/simple-hls-video/index.d.ts.map +1 -0
- package/dist/dev/media/simple-hls-video/index.js +23 -0
- package/dist/dev/media/simple-hls-video/index.js.map +1 -0
- package/dist/dev/player/context.d.ts +16 -2
- package/dist/dev/player/context.d.ts.map +1 -1
- package/dist/dev/player/context.js +6 -2
- package/dist/dev/player/context.js.map +1 -1
- package/dist/dev/player/create-player.d.ts +2 -2
- package/dist/dev/player/create-player.js +11 -3
- package/dist/dev/player/create-player.js.map +1 -1
- package/dist/dev/presets/audio.d.ts +3 -1
- package/dist/dev/presets/audio.js +3 -1
- package/dist/dev/skins/dist/default/default/tailwind/audio.tailwind.js +42 -0
- package/dist/dev/skins/dist/default/default/tailwind/audio.tailwind.js.map +1 -0
- package/dist/dev/skins/dist/default/default/tailwind/components/buffering.js +9 -0
- package/dist/dev/skins/dist/default/default/tailwind/components/buffering.js.map +1 -0
- package/dist/dev/skins/dist/default/default/tailwind/components/button.js +13 -0
- package/dist/dev/skins/dist/default/default/tailwind/components/button.js.map +1 -0
- package/dist/dev/skins/dist/default/default/tailwind/components/controls.js +8 -0
- package/dist/dev/skins/dist/default/default/tailwind/components/controls.js.map +1 -0
- package/dist/dev/skins/dist/default/default/tailwind/components/error.js +15 -0
- package/dist/dev/skins/dist/default/default/tailwind/components/error.js.map +1 -0
- package/dist/dev/skins/dist/default/default/tailwind/components/icon.js +10 -0
- package/dist/dev/skins/dist/default/default/tailwind/components/icon.js.map +1 -0
- package/dist/dev/skins/dist/default/default/tailwind/components/overlay.js +8 -0
- package/dist/dev/skins/dist/default/default/tailwind/components/overlay.js.map +1 -0
- package/dist/dev/skins/dist/default/default/tailwind/components/playback-rate.js +6 -0
- package/dist/dev/skins/dist/default/default/tailwind/components/playback-rate.js.map +1 -0
- package/dist/dev/skins/dist/default/default/tailwind/components/popup.js +13 -0
- package/dist/dev/skins/dist/default/default/tailwind/components/popup.js.map +1 -0
- package/dist/dev/skins/dist/default/default/tailwind/components/poster.js +16 -0
- package/dist/dev/skins/dist/default/default/tailwind/components/poster.js.map +1 -0
- package/dist/dev/skins/dist/default/default/tailwind/components/preview.js +13 -0
- package/dist/dev/skins/dist/default/default/tailwind/components/preview.js.map +1 -0
- package/dist/dev/skins/dist/default/default/tailwind/components/root.js +8 -0
- package/dist/dev/skins/dist/default/default/tailwind/components/root.js.map +1 -0
- package/dist/dev/skins/dist/default/default/tailwind/components/seek.js +11 -0
- package/dist/dev/skins/dist/default/default/tailwind/components/seek.js.map +1 -0
- package/dist/dev/skins/dist/default/default/tailwind/components/slider.js +21 -0
- package/dist/dev/skins/dist/default/default/tailwind/components/slider.js.map +1 -0
- package/dist/dev/skins/dist/default/default/tailwind/components/surface.js +8 -0
- package/dist/dev/skins/dist/default/default/tailwind/components/surface.js.map +1 -0
- package/dist/dev/skins/dist/default/default/tailwind/components/time.js +10 -0
- package/dist/dev/skins/dist/default/default/tailwind/components/time.js.map +1 -0
- package/dist/dev/skins/dist/default/default/tailwind/video.tailwind.js +66 -0
- package/dist/dev/skins/dist/default/default/tailwind/video.tailwind.js.map +1 -0
- package/dist/dev/skins/dist/default/minimal/tailwind/audio.tailwind.js +31 -0
- package/dist/dev/skins/dist/default/minimal/tailwind/audio.tailwind.js.map +1 -0
- package/dist/dev/skins/dist/default/minimal/tailwind/components/buffering.js +6 -0
- package/dist/dev/skins/dist/default/minimal/tailwind/components/buffering.js.map +1 -0
- package/dist/dev/skins/dist/default/minimal/tailwind/components/button-group.js +8 -0
- package/dist/dev/skins/dist/default/minimal/tailwind/components/button-group.js.map +1 -0
- package/dist/dev/skins/dist/default/minimal/tailwind/components/button.js +13 -0
- package/dist/dev/skins/dist/default/minimal/tailwind/components/button.js.map +1 -0
- package/dist/dev/skins/dist/default/minimal/tailwind/components/controls.js +8 -0
- package/dist/dev/skins/dist/default/minimal/tailwind/components/controls.js.map +1 -0
- package/dist/dev/skins/dist/default/minimal/tailwind/components/error.js +15 -0
- package/dist/dev/skins/dist/default/minimal/tailwind/components/error.js.map +1 -0
- package/dist/dev/skins/dist/default/minimal/tailwind/components/icon.js +10 -0
- package/dist/dev/skins/dist/default/minimal/tailwind/components/icon.js.map +1 -0
- package/dist/dev/skins/dist/default/minimal/tailwind/components/overlay.js +8 -0
- package/dist/dev/skins/dist/default/minimal/tailwind/components/overlay.js.map +1 -0
- package/dist/dev/skins/dist/default/minimal/tailwind/components/playback-rate.js +6 -0
- package/dist/dev/skins/dist/default/minimal/tailwind/components/playback-rate.js.map +1 -0
- package/dist/dev/skins/dist/default/minimal/tailwind/components/popup.js +13 -0
- package/dist/dev/skins/dist/default/minimal/tailwind/components/popup.js.map +1 -0
- package/dist/dev/skins/dist/default/minimal/tailwind/components/poster.js +16 -0
- package/dist/dev/skins/dist/default/minimal/tailwind/components/poster.js.map +1 -0
- package/dist/dev/skins/dist/default/minimal/tailwind/components/preview.js +14 -0
- package/dist/dev/skins/dist/default/minimal/tailwind/components/preview.js.map +1 -0
- package/dist/dev/skins/dist/default/minimal/tailwind/components/root.js +8 -0
- package/dist/dev/skins/dist/default/minimal/tailwind/components/root.js.map +1 -0
- package/dist/dev/skins/dist/default/minimal/tailwind/components/seek.js +11 -0
- package/dist/dev/skins/dist/default/minimal/tailwind/components/seek.js.map +1 -0
- package/dist/dev/skins/dist/default/minimal/tailwind/components/slider.js +20 -0
- package/dist/dev/skins/dist/default/minimal/tailwind/components/slider.js.map +1 -0
- package/dist/dev/skins/dist/default/minimal/tailwind/components/time.js +14 -0
- package/dist/dev/skins/dist/default/minimal/tailwind/components/time.js.map +1 -0
- package/dist/dev/skins/dist/default/minimal/tailwind/video.tailwind.js +61 -0
- package/dist/dev/skins/dist/default/minimal/tailwind/video.tailwind.js.map +1 -0
- package/dist/dev/skins/dist/default/shared/tailwind/icon-state.js +34 -0
- package/dist/dev/skins/dist/default/shared/tailwind/icon-state.js.map +1 -0
- package/dist/dev/skins/dist/default/shared/tailwind/tooltip-state.js +28 -0
- package/dist/dev/skins/dist/default/shared/tailwind/tooltip-state.js.map +1 -0
- package/dist/dev/store/container-mixin.d.ts +10 -5
- package/dist/dev/store/container-mixin.d.ts.map +1 -1
- package/dist/dev/store/container-mixin.js +16 -46
- package/dist/dev/store/container-mixin.js.map +1 -1
- package/dist/dev/store/media-attach-mixin.d.ts +19 -0
- package/dist/dev/store/media-attach-mixin.d.ts.map +1 -0
- package/dist/dev/store/media-attach-mixin.js +45 -0
- package/dist/dev/store/media-attach-mixin.js.map +1 -0
- package/dist/dev/store/provider-mixin.d.ts +19 -6
- package/dist/dev/store/provider-mixin.d.ts.map +1 -1
- package/dist/dev/store/provider-mixin.js +99 -9
- package/dist/dev/store/provider-mixin.js.map +1 -1
- package/dist/dev/ui/popover/popover-element.d.ts.map +1 -1
- package/dist/dev/ui/popover/popover-element.js +57 -4
- package/dist/dev/ui/popover/popover-element.js.map +1 -1
- package/dist/dev/ui/slider/slider-element.d.ts.map +1 -1
- package/dist/dev/ui/slider/slider-element.js +3 -3
- package/dist/dev/ui/slider/slider-element.js.map +1 -1
- package/dist/dev/ui/time-slider/time-slider-element.d.ts.map +1 -1
- package/dist/dev/ui/time-slider/time-slider-element.js +4 -4
- package/dist/dev/ui/time-slider/time-slider-element.js.map +1 -1
- package/dist/dev/ui/tooltip/tooltip-element.d.ts.map +1 -1
- package/dist/dev/ui/tooltip/tooltip-element.js +56 -4
- package/dist/dev/ui/tooltip/tooltip-element.js.map +1 -1
- package/dist/dev/ui/tooltip/tooltip-group-element.js +4 -1
- package/dist/dev/ui/tooltip/tooltip-group-element.js.map +1 -1
- package/dist/dev/ui/volume-slider/volume-slider-element.d.ts.map +1 -1
- package/dist/dev/ui/volume-slider/volume-slider-element.js +6 -6
- package/dist/dev/ui/volume-slider/volume-slider-element.js.map +1 -1
- package/package.json +24 -10
- package/dist/default/skins/dist/default/video/default.tailwind.js +0 -90
- package/dist/default/skins/dist/default/video/default.tailwind.js.map +0 -1
- package/dist/default/skins/dist/default/video/minimal.tailwind.js +0 -86
- package/dist/default/skins/dist/default/video/minimal.tailwind.js.map +0 -1
- package/dist/dev/skins/dist/default/video/default.tailwind.js +0 -90
- package/dist/dev/skins/dist/default/video/default.tailwind.js.map +0 -1
- package/dist/dev/skins/dist/default/video/minimal.tailwind.js +0 -86
- package/dist/dev/skins/dist/default/video/minimal.tailwind.js.map +0 -1
package/cdn/audio.js
ADDED
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
import{o as e}from"./create-player-BTIU8EwT.js";import{g as t,h as n}from"./volume-slider-Pd0AMTCH.js";import"./safe-define-GrHW3P9e.js";import{t as r}from"./default-GgKND7a8.js";import"./player-BHhLXO-R.js";var i=`.media-default-skin *,.media-default-skin :before,.media-default-skin :after{box-sizing:border-box}.media-default-skin img,.media-default-skin video,.media-default-skin svg{max-width:100%;display:block}.media-default-skin button{font:inherit}@media (prefers-reduced-motion:no-preference){.media-default-skin{interpolate-size:allow-keywords}}.media-default-skin{isolation:isolate;border-radius:var(--media-border-radius,2rem);letter-spacing:normal;-webkit-font-smoothing:auto;-moz-osx-font-smoothing:auto;width:100%;height:100%;font-family:Inter Variable,Inter,ui-sans-serif,system-ui,sans-serif;font-size:.8125rem;line-height:1.5;display:block;position:relative;container:media-root/inline-size}.media-default-skin .media-surface{background-color:var(--media-surface-background-color);backdrop-filter:var(--media-surface-backdrop-filter);box-shadow:0 0 0 1px var(--media-surface-outer-border-color), 0 1px 3px 0 var(--media-surface-shadow-color), 0 1px 2px -1px var(--media-surface-shadow-color);&:after{content:"";z-index:10;border-radius:inherit;box-shadow:inset 0 0 0 1px var(--media-surface-inner-border-color);pointer-events:none;position:absolute;inset:0}@media (prefers-reduced-transparency:reduce){background-color:oklch(from var(--media-surface-background-color) l c h / .7)}@media (prefers-contrast:more){background-color:oklch(from var(--media-surface-background-color) l c h / .9)}}.media-default-skin .media-buffering-indicator{color:oklch(100% 0 0);pointer-events:none;justify-content:center;align-items:center;display:none;position:absolute;inset:0;&[data-visible]{display:flex}& .media-surface{border-radius:100%;padding:.25rem}}.media-default-skin .media-error{outline:none}.media-default-skin .media-error__title{font-weight:600;line-height:1.25}.media-default-skin .media-error__description{opacity:.7;overflow-wrap:anywhere}.media-default-skin .media-error__actions{gap:.5rem;display:flex;&>*{flex:1}}.media-default-skin .media-error[data-open]~.media-controls *{visibility:hidden}.media-default-skin .media-controls{--media-controls-current-shadow-color:oklch(from currentColor 0 0 0 / clamp(0, calc((l - .5) * .5), .15));--media-controls-current-shadow-color-subtle:oklch(from var(--media-controls-current-shadow-color) l c h / calc(alpha * .4));text-shadow:0 1px 0 var(--media-controls-current-shadow-color);border-radius:3.40282e38px;align-items:center;gap:.075rem;padding:.175rem;display:flex;container:media-controls/inline-size;@container media-root (width>40rem){gap:.125rem;padding:.25rem}}.media-default-skin .media-time{flex:1;align-items:center;gap:.75rem;padding-inline:.5rem;display:flex;container:media-time/inline-size;& .media-time__value:first-child{display:none;@container media-time (width>18rem){display:block}}}.media-default-skin .media-time__value{font-variant-numeric:tabular-nums}.media-default-skin .media-button{outline-offset:-2px;cursor:pointer;user-select:none;text-align:center;touch-action:manipulation;border:none;border-radius:3.40282e38px;outline:2px solid #0000;flex-shrink:0;justify-content:center;align-items:center;padding:.5rem 1rem;transition-property:background-color,outline-offset,scale;transition-duration:.15s;transition-timing-function:ease-out;display:flex;&:focus-visible{outline-offset:2px;outline-color:currentColor}&:active{scale:.98}&[disabled]{opacity:.5;filter:grayscale();cursor:not-allowed}&[data-availability=unavailable]{display:none}}.media-default-skin .media-button--primary{color:oklch(0% 0 0);text-shadow:none;background:oklch(100% 0 0);font-weight:500}.media-default-skin .media-button--subtle{color:inherit;text-shadow:inherit;background:0 0;&:hover,&:focus-visible,&[aria-expanded=true]{background-color:oklch(from currentColor l c h / .1);text-decoration:none}}.media-default-skin .media-button--icon{aspect-ratio:1;width:2.125rem;padding:0;display:grid;&:active{scale:.9}& .media-icon{filter:drop-shadow(0 1px 0 var(--media-controls-current-shadow-color,oklch(0% 0 0/.25)))}}.media-default-skin .media-button--seek{& .media-icon__label{font-variant-numeric:tabular-nums;font-size:10px;font-weight:480;position:absolute;bottom:-3px;right:-1px}&:has(.media-icon--flipped) .media-icon__label{right:unset;left:-1px}@container media-controls (width<28rem){display:none}}.media-default-skin .media-button--playback-rate{padding:0;&:after{content:attr(data-rate) "×";font-variant-numeric:tabular-nums;width:4ch}}.media-default-skin .media-icon__container{position:relative}.media-default-skin .media-icon{transition-behavior:allow-discrete;flex-shrink:0;grid-area:1/1;width:18px;height:18px;transition-property:display,opacity;transition-duration:.15s;transition-timing-function:ease-out;display:block}.media-default-skin .media-icon--flipped{scale:-1 1}.media-default-skin .media-slider{cursor:pointer;border-radius:3.40282e38px;outline:none;flex:1;justify-content:center;align-items:center;display:flex;position:relative;&[data-orientation=horizontal]{width:100%;min-width:5rem;height:1.25rem}&[data-orientation=vertical]{width:1.25rem;height:5rem}}.media-default-skin .media-slider__track{isolation:isolate;border-radius:inherit;user-select:none;position:relative;overflow:hidden;&[data-orientation=horizontal]{width:100%;height:.25rem}&[data-orientation=vertical]{width:.25rem;height:100%}}.media-default-skin .media-slider__thumb{z-index:10;width:.625rem;height:.625rem;box-shadow:0 0 0 1px var(--media-controls-current-shadow-color-subtle,oklch(0% 0 0/.1)), 0 1px 3px 0 oklch(0% 0 0/.15), 0 1px 2px -1px oklch(0% 0 0/.15);opacity:0;user-select:none;outline-offset:-4px;background-color:currentColor;border-radius:3.40282e38px;outline:4px solid #0000;transition-property:opacity,height,width,outline-offset;transition-duration:.15s;transition-timing-function:ease-out;position:absolute;translate:-50% -50%;&[data-orientation=horizontal]{top:50%;left:var(--media-slider-fill)}&[data-orientation=vertical]{left:50%;top:calc(100% - var(--media-slider-fill))}&:hover,&:focus{outline-color:oklch(from currentColor l c h / .25);outline-offset:0}&:after{content:"";border-radius:inherit;transition-property:opacity,scale;transition-duration:.15s;transition-timing-function:ease-out;position:absolute;inset:-4px;box-shadow:0 0 0 2px oklch(100% 0 0)}&:not(:focus-visible):after{opacity:0;scale:.5}}.media-default-skin .media-slider:active .media-slider__thumb,.media-default-skin .media-slider__thumb--persistent{width:.75rem;height:.75rem}.media-default-skin .media-slider:hover .media-slider__thumb,.media-default-skin .media-slider__thumb:focus-visible,.media-default-skin .media-slider__thumb--persistent{opacity:1}.media-default-skin .media-slider__buffer,.media-default-skin .media-slider__fill{border-radius:inherit;pointer-events:none;position:absolute}.media-default-skin .media-slider__buffer[data-orientation=horizontal],.media-default-skin .media-slider__fill[data-orientation=horizontal]{inset-block:0;left:0}.media-default-skin .media-slider__buffer[data-orientation=vertical],.media-default-skin .media-slider__fill[data-orientation=vertical]{inset-inline:0;bottom:0}.media-default-skin .media-slider__buffer{background-color:oklch(from currentColor l c h / .2);transition-duration:.25s;transition-timing-function:ease-out;&[data-orientation=horizontal]{width:var(--media-slider-buffer);transition-property:width}&[data-orientation=vertical]{height:var(--media-slider-buffer);transition-property:height}}.media-default-skin .media-slider__fill{background-color:currentColor;&[data-orientation=horizontal]{width:var(--media-slider-fill)}&[data-orientation=vertical]{height:var(--media-slider-fill)}}.media-default-skin .media-popover,.media-default-skin .media-tooltip{color:inherit;transition-property:scale,opacity,filter;transition-duration:var(--media-popup-transition-duration);transition-timing-function:var(--media-popup-transition-timing-function);border:0;margin:0;overflow:visible;&[data-starting-style],&[data-ending-style]{opacity:0;filter:blur(8px);scale:.5}&[data-instant]{transition-duration:0s}&[data-side=top]{transform-origin:bottom}&[data-side=bottom]{transform-origin:top}&[data-side=left]{transform-origin:100%}&[data-side=right]{transform-origin:0}&:before{content:"";pointer-events:inherit;position:absolute}&[data-side=top]:before,&[data-side=bottom]:before{width:100%;inset-inline:0}&[data-side=top]:before{top:100%}&[data-side=bottom]:before{bottom:100%}&[data-side=left]:before,&[data-side=right]:before{height:100%;inset-block:0}&[data-side=left]:before{left:100%}&[data-side=right]:before{right:100%}}.media-default-skin .media-popover{--media-popover-side-offset:.5rem;&[data-side=top]:before,&[data-side=bottom]:before{height:var(--media-popover-side-offset)}&[data-side=left]:before,&[data-side=right]:before{width:var(--media-popover-side-offset)}}.media-default-skin .media-popover--volume{border-radius:3.40282e38px;padding:.625rem .25rem;&:has(media-volume-slider[data-availability=unsupported]){display:none}}.media-default-skin .media-tooltip{white-space:nowrap;--media-tooltip-side-offset:.75rem;border-radius:3.40282e38px;padding:.25rem .625rem;font-size:.75rem;&[data-side=top]:before,&[data-side=bottom]:before{height:var(--media-tooltip-side-offset)}&[data-side=left]:before,&[data-side=right]:before{width:var(--media-tooltip-side-offset)}}.media-button--play .media-icon--restart,.media-button--play .media-icon--play,.media-button--play .media-icon--pause,.media-button--mute .media-icon--volume-off,.media-button--mute .media-icon--volume-low,.media-button--mute .media-icon--volume-high{opacity:0;display:none}.media-button--play[data-ended] .media-icon--restart,.media-button--play:not([data-ended])[data-paused] .media-icon--play,.media-button--play:not([data-paused]):not([data-ended]) .media-icon--pause,.media-button--mute[data-muted] .media-icon--volume-off,.media-button--mute:not([data-muted])[data-volume-level=low] .media-icon--volume-low,.media-button--mute:not([data-muted]):not([data-volume-level=low]) .media-icon--volume-high{opacity:1;display:block}.media-tooltip-label{display:none}.media-button--play[data-ended]+.media-tooltip .media-tooltip-label--replay,.media-button--play:not([data-ended])[data-paused]+.media-tooltip .media-tooltip-label--play,.media-button--play:not([data-paused]):not([data-ended])+.media-tooltip .media-tooltip-label--pause{display:block}.media-default-skin--audio{--media-border-color:oklch(0% 0 0/.1);--media-surface-background-color:oklch(100% 0 0/.5);--media-surface-inner-border-color:oklch(100% 0 0/.1);--media-surface-outer-border-color:oklch(0% 0 0/.05);--media-surface-shadow-color:oklch(0% 0 0/.15);--media-surface-backdrop-filter:blur(16px) saturate(1.5);--media-text-color:var(--media-color-primary,oklch(0% 0 0));--media-error-dialog-transition-duration:.25s;--media-error-dialog-transition-delay:.1s;--media-popup-transition-duration:.1s;--media-popup-transition-timing-function:ease-out;@media (prefers-reduced-motion:reduce){--media-error-dialog-transition-duration:50ms;--media-error-dialog-transition-delay:0s;--media-popup-transition-duration:0s}@media (prefers-color-scheme:dark){--media-border-color:oklch(100% 0 0/.1);--media-surface-background-color:oklch(0% 0 0/.4);--media-text-color:var(--media-color-primary,oklch(100% 0 0))}}.media-default-skin--audio .media-error__dialog{z-index:20;transition-property:opacity,filter;transition-duration:var(--media-error-dialog-transition-duration);transition-delay:var(--media-error-dialog-transition-delay);background-color:var(--media-surface-background-color);backdrop-filter:var(--media-surface-backdrop-filter);color:var(--media-text-color);border-radius:3.40282e38px;align-items:center;gap:.75rem;padding-inline:1.25rem .125rem;transition-timing-function:ease-out;display:flex;position:absolute;inset:0}.media-default-skin .media-error[data-starting-style] .media-error__dialog,.media-default-skin .media-error[data-ending-style] .media-error__dialog{opacity:0;filter:blur(4px)}.media-default-skin .media-error[data-ending-style] .media-error__dialog{transition-delay:0s}.media-default-skin--audio .media-error__content{flex:1;align-items:center;gap:.5rem;display:flex}.media-default-skin--audio .media-controls{color:var(--media-text-color)}.media-default-skin--audio .media-slider__track{background-color:oklch(0% 0 0/.1);@media (prefers-color-scheme:dark){background-color:oklch(100% 0 0/.2);box-shadow:0 0 0 1px oklch(0% 0 0/.05)}}`;function a(){return`<media-container class="media-default-skin media-default-skin--audio"><slot name="media"></slot><slot></slot><div class="media-surface media-controls"><media-tooltip-group><media-play-button commandfor="play-tooltip" class="media-button media-button--subtle media-button--icon media-button--play"> ${r(`restart`,{class:`media-icon media-icon--restart`})} ${r(`play`,{class:`media-icon media-icon--play`})} ${r(`pause`,{class:`media-icon media-icon--pause`})} </media-play-button><media-tooltip id="play-tooltip" side="top" class="media-surface media-tooltip"><span class="media-tooltip-label media-tooltip-label--replay">Replay</span><span class="media-tooltip-label media-tooltip-label--play">Play</span><span class="media-tooltip-label media-tooltip-label--pause">Pause</span></media-tooltip><media-seek-button commandfor="seek-backward-tooltip" seconds="-10" class="media-button media-button--subtle media-button--icon media-button--seek"> <span class="media-icon__container"> ${r(`seek`,{class:`media-icon media-icon--seek media-icon--flipped`})} <span class="media-icon__label">10</span></span></media-seek-button><media-tooltip id="seek-backward-tooltip" side="top" class="media-surface media-tooltip"> Seek backward 10 seconds </media-tooltip><media-seek-button commandfor="seek-forward-tooltip" seconds="10" class="media-button media-button--subtle media-button--icon media-button--seek"> <span class="media-icon__container"> ${r(`seek`,{class:`media-icon media-icon--seek`})} <span class="media-icon__label">10</span></span></media-seek-button><media-tooltip id="seek-forward-tooltip" side="top" class="media-surface media-tooltip"> Seek forward 10 seconds </media-tooltip><media-time-group class="media-time"><media-time type="current" class="media-time__value"></media-time><media-time-slider class="media-slider"><media-slider-track class="media-slider__track"><media-slider-fill class="media-slider__fill"></media-slider-fill><media-slider-buffer class="media-slider__buffer"></media-slider-buffer></media-slider-track><media-slider-thumb class="media-slider__thumb"></media-slider-thumb></media-time-slider><media-time type="duration" class="media-time__value"></media-time></media-time-group><media-playback-rate-button commandfor="playback-rate-tooltip" class="media-button media-button--subtle media-button--icon media-button--playback-rate"></media-playback-rate-button><media-tooltip id="playback-rate-tooltip" side="top" class="media-surface media-tooltip"> Toggle playback rate </media-tooltip><media-mute-button commandfor="audio-volume-popover" class="media-button media-button--subtle media-button--icon media-button--mute"> ${r(`volume-off`,{class:`media-icon media-icon--volume-off`})} ${r(`volume-low`,{class:`media-icon media-icon--volume-low`})} ${r(`volume-high`,{class:`media-icon media-icon--volume-high`})} </media-mute-button><media-popover id="audio-volume-popover" open-on-hover delay="200" close-delay="100" side="top" class="media-surface media-popover media-popover--volume"><media-volume-slider class="media-slider" orientation="vertical" thumb-alignment="edge"><media-slider-track class="media-slider__track"><media-slider-fill class="media-slider__fill"></media-slider-fill></media-slider-track><media-slider-thumb class="media-slider__thumb media-slider__thumb--persistent"></media-slider-thumb></media-volume-slider></media-popover></media-tooltip-group></div></media-container>`}var o=class extends n(e){static{this.tagName=`audio-skin`}static{this.styles=t(i)}static{this.getTemplateHTML=a}};customElements.define(o.tagName,o);
|
|
2
|
+
//# sourceMappingURL=audio.js.map
|
package/cdn/audio.js.map
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"audio.js","names":[],"sources":["../inline-css:src/define/audio/skin.js","../src/define/audio/skin.ts"],"sourcesContent":["export default \".media-default-skin *,.media-default-skin :before,.media-default-skin :after{box-sizing:border-box}.media-default-skin img,.media-default-skin video,.media-default-skin svg{max-width:100%;display:block}.media-default-skin button{font:inherit}@media (prefers-reduced-motion:no-preference){.media-default-skin{interpolate-size:allow-keywords}}.media-default-skin{isolation:isolate;border-radius:var(--media-border-radius,2rem);letter-spacing:normal;-webkit-font-smoothing:auto;-moz-osx-font-smoothing:auto;width:100%;height:100%;font-family:Inter Variable,Inter,ui-sans-serif,system-ui,sans-serif;font-size:.8125rem;line-height:1.5;display:block;position:relative;container:media-root/inline-size}.media-default-skin .media-surface{background-color:var(--media-surface-background-color);backdrop-filter:var(--media-surface-backdrop-filter);box-shadow:0 0 0 1px var(--media-surface-outer-border-color), 0 1px 3px 0 var(--media-surface-shadow-color), 0 1px 2px -1px var(--media-surface-shadow-color);&:after{content:\\\"\\\";z-index:10;border-radius:inherit;box-shadow:inset 0 0 0 1px var(--media-surface-inner-border-color);pointer-events:none;position:absolute;inset:0}@media (prefers-reduced-transparency:reduce){background-color:oklch(from var(--media-surface-background-color) l c h / .7)}@media (prefers-contrast:more){background-color:oklch(from var(--media-surface-background-color) l c h / .9)}}.media-default-skin .media-buffering-indicator{color:oklch(100% 0 0);pointer-events:none;justify-content:center;align-items:center;display:none;position:absolute;inset:0;&[data-visible]{display:flex}& .media-surface{border-radius:100%;padding:.25rem}}.media-default-skin .media-error{outline:none}.media-default-skin .media-error__title{font-weight:600;line-height:1.25}.media-default-skin .media-error__description{opacity:.7;overflow-wrap:anywhere}.media-default-skin .media-error__actions{gap:.5rem;display:flex;&>*{flex:1}}.media-default-skin .media-error[data-open]~.media-controls *{visibility:hidden}.media-default-skin .media-controls{--media-controls-current-shadow-color:oklch(from currentColor 0 0 0 / clamp(0, calc((l - .5) * .5), .15));--media-controls-current-shadow-color-subtle:oklch(from var(--media-controls-current-shadow-color) l c h / calc(alpha * .4));text-shadow:0 1px 0 var(--media-controls-current-shadow-color);border-radius:3.40282e38px;align-items:center;gap:.075rem;padding:.175rem;display:flex;container:media-controls/inline-size;@container media-root (width>40rem){gap:.125rem;padding:.25rem}}.media-default-skin .media-time{flex:1;align-items:center;gap:.75rem;padding-inline:.5rem;display:flex;container:media-time/inline-size;& .media-time__value:first-child{display:none;@container media-time (width>18rem){display:block}}}.media-default-skin .media-time__value{font-variant-numeric:tabular-nums}.media-default-skin .media-button{outline-offset:-2px;cursor:pointer;user-select:none;text-align:center;touch-action:manipulation;border:none;border-radius:3.40282e38px;outline:2px solid #0000;flex-shrink:0;justify-content:center;align-items:center;padding:.5rem 1rem;transition-property:background-color,outline-offset,scale;transition-duration:.15s;transition-timing-function:ease-out;display:flex;&:focus-visible{outline-offset:2px;outline-color:currentColor}&:active{scale:.98}&[disabled]{opacity:.5;filter:grayscale();cursor:not-allowed}&[data-availability=unavailable]{display:none}}.media-default-skin .media-button--primary{color:oklch(0% 0 0);text-shadow:none;background:oklch(100% 0 0);font-weight:500}.media-default-skin .media-button--subtle{color:inherit;text-shadow:inherit;background:0 0;&:hover,&:focus-visible,&[aria-expanded=true]{background-color:oklch(from currentColor l c h / .1);text-decoration:none}}.media-default-skin .media-button--icon{aspect-ratio:1;width:2.125rem;padding:0;display:grid;&:active{scale:.9}& .media-icon{filter:drop-shadow(0 1px 0 var(--media-controls-current-shadow-color,oklch(0% 0 0/.25)))}}.media-default-skin .media-button--seek{& .media-icon__label{font-variant-numeric:tabular-nums;font-size:10px;font-weight:480;position:absolute;bottom:-3px;right:-1px}&:has(.media-icon--flipped) .media-icon__label{right:unset;left:-1px}@container media-controls (width<28rem){display:none}}.media-default-skin .media-button--playback-rate{padding:0;&:after{content:attr(data-rate) \\\"×\\\";font-variant-numeric:tabular-nums;width:4ch}}.media-default-skin .media-icon__container{position:relative}.media-default-skin .media-icon{transition-behavior:allow-discrete;flex-shrink:0;grid-area:1/1;width:18px;height:18px;transition-property:display,opacity;transition-duration:.15s;transition-timing-function:ease-out;display:block}.media-default-skin .media-icon--flipped{scale:-1 1}.media-default-skin .media-slider{cursor:pointer;border-radius:3.40282e38px;outline:none;flex:1;justify-content:center;align-items:center;display:flex;position:relative;&[data-orientation=horizontal]{width:100%;min-width:5rem;height:1.25rem}&[data-orientation=vertical]{width:1.25rem;height:5rem}}.media-default-skin .media-slider__track{isolation:isolate;border-radius:inherit;user-select:none;position:relative;overflow:hidden;&[data-orientation=horizontal]{width:100%;height:.25rem}&[data-orientation=vertical]{width:.25rem;height:100%}}.media-default-skin .media-slider__thumb{z-index:10;width:.625rem;height:.625rem;box-shadow:0 0 0 1px var(--media-controls-current-shadow-color-subtle,oklch(0% 0 0/.1)), 0 1px 3px 0 oklch(0% 0 0/.15), 0 1px 2px -1px oklch(0% 0 0/.15);opacity:0;user-select:none;outline-offset:-4px;background-color:currentColor;border-radius:3.40282e38px;outline:4px solid #0000;transition-property:opacity,height,width,outline-offset;transition-duration:.15s;transition-timing-function:ease-out;position:absolute;translate:-50% -50%;&[data-orientation=horizontal]{top:50%;left:var(--media-slider-fill)}&[data-orientation=vertical]{left:50%;top:calc(100% - var(--media-slider-fill))}&:hover,&:focus{outline-color:oklch(from currentColor l c h / .25);outline-offset:0}&:after{content:\\\"\\\";border-radius:inherit;transition-property:opacity,scale;transition-duration:.15s;transition-timing-function:ease-out;position:absolute;inset:-4px;box-shadow:0 0 0 2px oklch(100% 0 0)}&:not(:focus-visible):after{opacity:0;scale:.5}}.media-default-skin .media-slider:active .media-slider__thumb,.media-default-skin .media-slider__thumb--persistent{width:.75rem;height:.75rem}.media-default-skin .media-slider:hover .media-slider__thumb,.media-default-skin .media-slider__thumb:focus-visible,.media-default-skin .media-slider__thumb--persistent{opacity:1}.media-default-skin .media-slider__buffer,.media-default-skin .media-slider__fill{border-radius:inherit;pointer-events:none;position:absolute}.media-default-skin .media-slider__buffer[data-orientation=horizontal],.media-default-skin .media-slider__fill[data-orientation=horizontal]{inset-block:0;left:0}.media-default-skin .media-slider__buffer[data-orientation=vertical],.media-default-skin .media-slider__fill[data-orientation=vertical]{inset-inline:0;bottom:0}.media-default-skin .media-slider__buffer{background-color:oklch(from currentColor l c h / .2);transition-duration:.25s;transition-timing-function:ease-out;&[data-orientation=horizontal]{width:var(--media-slider-buffer);transition-property:width}&[data-orientation=vertical]{height:var(--media-slider-buffer);transition-property:height}}.media-default-skin .media-slider__fill{background-color:currentColor;&[data-orientation=horizontal]{width:var(--media-slider-fill)}&[data-orientation=vertical]{height:var(--media-slider-fill)}}.media-default-skin .media-popover,.media-default-skin .media-tooltip{color:inherit;transition-property:scale,opacity,filter;transition-duration:var(--media-popup-transition-duration);transition-timing-function:var(--media-popup-transition-timing-function);border:0;margin:0;overflow:visible;&[data-starting-style],&[data-ending-style]{opacity:0;filter:blur(8px);scale:.5}&[data-instant]{transition-duration:0s}&[data-side=top]{transform-origin:bottom}&[data-side=bottom]{transform-origin:top}&[data-side=left]{transform-origin:100%}&[data-side=right]{transform-origin:0}&:before{content:\\\"\\\";pointer-events:inherit;position:absolute}&[data-side=top]:before,&[data-side=bottom]:before{width:100%;inset-inline:0}&[data-side=top]:before{top:100%}&[data-side=bottom]:before{bottom:100%}&[data-side=left]:before,&[data-side=right]:before{height:100%;inset-block:0}&[data-side=left]:before{left:100%}&[data-side=right]:before{right:100%}}.media-default-skin .media-popover{--media-popover-side-offset:.5rem;&[data-side=top]:before,&[data-side=bottom]:before{height:var(--media-popover-side-offset)}&[data-side=left]:before,&[data-side=right]:before{width:var(--media-popover-side-offset)}}.media-default-skin .media-popover--volume{border-radius:3.40282e38px;padding:.625rem .25rem;&:has(media-volume-slider[data-availability=unsupported]){display:none}}.media-default-skin .media-tooltip{white-space:nowrap;--media-tooltip-side-offset:.75rem;border-radius:3.40282e38px;padding:.25rem .625rem;font-size:.75rem;&[data-side=top]:before,&[data-side=bottom]:before{height:var(--media-tooltip-side-offset)}&[data-side=left]:before,&[data-side=right]:before{width:var(--media-tooltip-side-offset)}}.media-button--play .media-icon--restart,.media-button--play .media-icon--play,.media-button--play .media-icon--pause,.media-button--mute .media-icon--volume-off,.media-button--mute .media-icon--volume-low,.media-button--mute .media-icon--volume-high{opacity:0;display:none}.media-button--play[data-ended] .media-icon--restart,.media-button--play:not([data-ended])[data-paused] .media-icon--play,.media-button--play:not([data-paused]):not([data-ended]) .media-icon--pause,.media-button--mute[data-muted] .media-icon--volume-off,.media-button--mute:not([data-muted])[data-volume-level=low] .media-icon--volume-low,.media-button--mute:not([data-muted]):not([data-volume-level=low]) .media-icon--volume-high{opacity:1;display:block}.media-tooltip-label{display:none}.media-button--play[data-ended]+.media-tooltip .media-tooltip-label--replay,.media-button--play:not([data-ended])[data-paused]+.media-tooltip .media-tooltip-label--play,.media-button--play:not([data-paused]):not([data-ended])+.media-tooltip .media-tooltip-label--pause{display:block}.media-default-skin--audio{--media-border-color:oklch(0% 0 0/.1);--media-surface-background-color:oklch(100% 0 0/.5);--media-surface-inner-border-color:oklch(100% 0 0/.1);--media-surface-outer-border-color:oklch(0% 0 0/.05);--media-surface-shadow-color:oklch(0% 0 0/.15);--media-surface-backdrop-filter:blur(16px) saturate(1.5);--media-text-color:var(--media-color-primary,oklch(0% 0 0));--media-error-dialog-transition-duration:.25s;--media-error-dialog-transition-delay:.1s;--media-popup-transition-duration:.1s;--media-popup-transition-timing-function:ease-out;@media (prefers-reduced-motion:reduce){--media-error-dialog-transition-duration:50ms;--media-error-dialog-transition-delay:0s;--media-popup-transition-duration:0s}@media (prefers-color-scheme:dark){--media-border-color:oklch(100% 0 0/.1);--media-surface-background-color:oklch(0% 0 0/.4);--media-text-color:var(--media-color-primary,oklch(100% 0 0))}}.media-default-skin--audio .media-error__dialog{z-index:20;transition-property:opacity,filter;transition-duration:var(--media-error-dialog-transition-duration);transition-delay:var(--media-error-dialog-transition-delay);background-color:var(--media-surface-background-color);backdrop-filter:var(--media-surface-backdrop-filter);color:var(--media-text-color);border-radius:3.40282e38px;align-items:center;gap:.75rem;padding-inline:1.25rem .125rem;transition-timing-function:ease-out;display:flex;position:absolute;inset:0}.media-default-skin .media-error[data-starting-style] .media-error__dialog,.media-default-skin .media-error[data-ending-style] .media-error__dialog{opacity:0;filter:blur(4px)}.media-default-skin .media-error[data-ending-style] .media-error__dialog{transition-delay:0s}.media-default-skin--audio .media-error__content{flex:1;align-items:center;gap:.5rem;display:flex}.media-default-skin--audio .media-controls{color:var(--media-text-color)}.media-default-skin--audio .media-slider__track{background-color:oklch(0% 0 0/.1);@media (prefers-color-scheme:dark){background-color:oklch(100% 0 0/.2);box-shadow:0 0 0 1px oklch(0% 0 0/.05)}}\";","import { ReactiveElement } from '@videojs/element';\nimport { renderIcon } from '@videojs/icons/render';\nimport { createStyles, SkinMixin } from '../skin-mixin';\nimport styles from './skin.css?inline';\n\n// Side-effect imports: register all custom elements used in the template.\nimport '../media/container';\nimport '../ui/mute-button';\nimport '../ui/play-button';\nimport '../ui/playback-rate-button';\nimport '../ui/popover';\nimport '../ui/seek-button';\nimport '../ui/time';\nimport '../ui/time-slider';\nimport '../ui/tooltip';\nimport '../ui/tooltip-group';\nimport '../ui/volume-slider';\n\nconst SEEK_TIME = 10;\n\nfunction getTemplateHTML() {\n return /*html*/ `\n <media-container class=\"media-default-skin media-default-skin--audio\">\n <!-- @deprecated slot=\"media\" is no longer required, use the default slot instead -->\n <slot name=\"media\"></slot>\n <slot></slot>\n\n <div class=\"media-surface media-controls\">\n <media-tooltip-group>\n <media-play-button commandfor=\"play-tooltip\" class=\"media-button media-button--subtle media-button--icon media-button--play\">\n ${renderIcon('restart', { class: 'media-icon media-icon--restart' })}\n ${renderIcon('play', { class: 'media-icon media-icon--play' })}\n ${renderIcon('pause', { class: 'media-icon media-icon--pause' })}\n </media-play-button>\n <media-tooltip id=\"play-tooltip\" side=\"top\" class=\"media-surface media-tooltip\">\n <span class=\"media-tooltip-label media-tooltip-label--replay\">Replay</span>\n <span class=\"media-tooltip-label media-tooltip-label--play\">Play</span>\n <span class=\"media-tooltip-label media-tooltip-label--pause\">Pause</span>\n </media-tooltip>\n\n <media-seek-button commandfor=\"seek-backward-tooltip\" seconds=\"${-SEEK_TIME}\" class=\"media-button media-button--subtle media-button--icon media-button--seek\">\n <span class=\"media-icon__container\">\n ${renderIcon('seek', { class: 'media-icon media-icon--seek media-icon--flipped' })}\n <span class=\"media-icon__label\">${SEEK_TIME}</span>\n </span>\n </media-seek-button>\n <media-tooltip id=\"seek-backward-tooltip\" side=\"top\" class=\"media-surface media-tooltip\">\n Seek backward ${SEEK_TIME} seconds\n </media-tooltip>\n\n <media-seek-button commandfor=\"seek-forward-tooltip\" seconds=\"${SEEK_TIME}\" class=\"media-button media-button--subtle media-button--icon media-button--seek\">\n <span class=\"media-icon__container\">\n ${renderIcon('seek', { class: 'media-icon media-icon--seek' })}\n <span class=\"media-icon__label\">${SEEK_TIME}</span>\n </span>\n </media-seek-button>\n <media-tooltip id=\"seek-forward-tooltip\" side=\"top\" class=\"media-surface media-tooltip\">\n Seek forward ${SEEK_TIME} seconds\n </media-tooltip>\n\n <media-time-group class=\"media-time\">\n <media-time type=\"current\" class=\"media-time__value\"></media-time>\n <media-time-slider class=\"media-slider\">\n <media-slider-track class=\"media-slider__track\">\n <media-slider-fill class=\"media-slider__fill\"></media-slider-fill>\n <media-slider-buffer class=\"media-slider__buffer\"></media-slider-buffer>\n </media-slider-track>\n <media-slider-thumb class=\"media-slider__thumb\"></media-slider-thumb>\n </media-time-slider>\n <media-time type=\"duration\" class=\"media-time__value\"></media-time>\n </media-time-group>\n\n <media-playback-rate-button commandfor=\"playback-rate-tooltip\" class=\"media-button media-button--subtle media-button--icon media-button--playback-rate\"></media-playback-rate-button>\n <media-tooltip id=\"playback-rate-tooltip\" side=\"top\" class=\"media-surface media-tooltip\">\n Toggle playback rate\n </media-tooltip>\n\n <media-mute-button commandfor=\"audio-volume-popover\" class=\"media-button media-button--subtle media-button--icon media-button--mute\">\n ${renderIcon('volume-off', { class: 'media-icon media-icon--volume-off' })}\n ${renderIcon('volume-low', { class: 'media-icon media-icon--volume-low' })}\n ${renderIcon('volume-high', { class: 'media-icon media-icon--volume-high' })}\n </media-mute-button>\n\n <media-popover id=\"audio-volume-popover\" open-on-hover delay=\"200\" close-delay=\"100\" side=\"top\" class=\"media-surface media-popover media-popover--volume\">\n <media-volume-slider class=\"media-slider\" orientation=\"vertical\" thumb-alignment=\"edge\">\n <media-slider-track class=\"media-slider__track\">\n <media-slider-fill class=\"media-slider__fill\"></media-slider-fill>\n </media-slider-track>\n <media-slider-thumb class=\"media-slider__thumb media-slider__thumb--persistent\"></media-slider-thumb>\n </media-volume-slider>\n </media-popover>\n </media-tooltip-group>\n </div>\n </media-container>\n `;\n}\n\nexport class AudioSkinElement extends SkinMixin(ReactiveElement) {\n static readonly tagName = 'audio-skin';\n static styles = createStyles(styles);\n static getTemplateHTML = getTemplateHTML;\n}\n\ncustomElements.define(AudioSkinElement.tagName, AudioSkinElement);\n\ndeclare global {\n interface HTMLElementTagNameMap {\n [AudioSkinElement.tagName]: AudioSkinElement;\n }\n}\n"],"mappings":"gNAAA,IAAA,EAAe,0mYCoBf,SAAS,GAAkB,CACzB,MAAgB,6SAAA,EAAA,UAAA,CAAA,MAAA,iCAAA,CAAA,CAAA,GAAA,EAAA,OAAA,CAAA,MAAA,8BAAA,CAAA,CAAA,GAAA,EAAA,QAAA,CAAA,MAAA,+BAAA,CAAA,CAAA,4gBAAA,EAAA,OAAA,CAAA,MAAA,kDAAA,CAAA,CAAA,kYAAA,EAAA,OAAA,CAAA,MAAA,8BAAA,CAAA,CAAA,+oCAAA,EAAA,aAAA,CAAA,MAAA,oCAAA,CAAA,CAAA,GAAA,EAAA,aAAA,CAAA,MAAA,oCAAA,CAAA,CAAA,GAAA,EAAA,cAAA,CAAA,MAAA,qCAAA,CAAA,CAAA,ykBAGlB,IAAY,EAAZ,cAA+B,EAAA,EAAA,AAAA,qBACb,iEAEM,IAGxB,eAAc,OAAA,EAAwB,QAAQ,EAAiB"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -0,0 +1,159 @@
|
|
|
1
|
+
import { R as backgroundFeatures, a as MediaElement, i as MediaContainerElement, o as ReactiveElement, t as createPlayer } from "./create-player-Cwxvswyv.js";
|
|
2
|
+
import { t as safeDefine } from "./safe-define-B8lHgj_K.js";
|
|
3
|
+
import { t as MediaAttachMixin } from "./media-attach-mixin-ChyNp2eK.js";
|
|
4
|
+
|
|
5
|
+
//#region ../utils/dist/dom/attributes.js
|
|
6
|
+
function namedNodeMapToObject(namedNodeMap) {
|
|
7
|
+
const obj = {};
|
|
8
|
+
for (const attr of namedNodeMap) obj[attr.name] = attr.value;
|
|
9
|
+
return obj;
|
|
10
|
+
}
|
|
11
|
+
|
|
12
|
+
//#endregion
|
|
13
|
+
//#region src/define/background/player.ts
|
|
14
|
+
const { ProviderMixin } = createPlayer({ features: backgroundFeatures });
|
|
15
|
+
var BackgroundVideoPlayerElement = class extends ProviderMixin(MediaElement) {
|
|
16
|
+
static {
|
|
17
|
+
this.tagName = "background-video-player";
|
|
18
|
+
}
|
|
19
|
+
};
|
|
20
|
+
safeDefine(BackgroundVideoPlayerElement);
|
|
21
|
+
safeDefine(MediaContainerElement);
|
|
22
|
+
|
|
23
|
+
//#endregion
|
|
24
|
+
//#region inline-css:src/define/background/skin.js
|
|
25
|
+
var skin_default = "background-video-player {\n display: contents;\n}\n\nbackground-video-skin {\n display: block;\n position: relative;\n width: 100%;\n height: 100%;\n --media-object-fit: cover;\n object-fit: var(--media-object-fit);\n}\n\nbackground-video-skin > background-video {\n position: absolute;\n inset: 0;\n width: 100%;\n height: 100%;\n object-fit: inherit;\n}\n\nbackground-video-skin > img,\nbackground-video-skin > picture {\n width: 100%;\n height: 100%;\n object-fit: inherit;\n}\n";
|
|
26
|
+
|
|
27
|
+
//#endregion
|
|
28
|
+
//#region src/define/background/skin.ts
|
|
29
|
+
const STYLES_ID = "__media-background-styles";
|
|
30
|
+
function ensureBackgroundStyles() {
|
|
31
|
+
if (document.getElementById(STYLES_ID)) return;
|
|
32
|
+
const style = document.createElement("style");
|
|
33
|
+
style.id = STYLES_ID;
|
|
34
|
+
style.textContent = skin_default;
|
|
35
|
+
document.head.appendChild(style);
|
|
36
|
+
}
|
|
37
|
+
function getTemplateHTML$1(_attrs) {
|
|
38
|
+
return `
|
|
39
|
+
<media-container>
|
|
40
|
+
<!-- @deprecated slot="media" is no longer required, use the default slot instead -->
|
|
41
|
+
<slot name="media"></slot>
|
|
42
|
+
<slot></slot>
|
|
43
|
+
</media-container>
|
|
44
|
+
`;
|
|
45
|
+
}
|
|
46
|
+
var BackgroundVideoSkinElement = class extends ReactiveElement {
|
|
47
|
+
static {
|
|
48
|
+
this.tagName = "background-video-skin";
|
|
49
|
+
}
|
|
50
|
+
static {
|
|
51
|
+
this.shadowRootOptions = { mode: "open" };
|
|
52
|
+
}
|
|
53
|
+
static {
|
|
54
|
+
this.getTemplateHTML = getTemplateHTML$1;
|
|
55
|
+
}
|
|
56
|
+
constructor() {
|
|
57
|
+
super();
|
|
58
|
+
ensureBackgroundStyles();
|
|
59
|
+
if (!this.shadowRoot) {
|
|
60
|
+
this.attachShadow(this.constructor.shadowRootOptions);
|
|
61
|
+
this.shadowRoot.innerHTML = getTemplateHTML$1(namedNodeMapToObject(this.attributes));
|
|
62
|
+
}
|
|
63
|
+
}
|
|
64
|
+
};
|
|
65
|
+
safeDefine(BackgroundVideoSkinElement);
|
|
66
|
+
|
|
67
|
+
//#endregion
|
|
68
|
+
//#region src/media/background-video/index.ts
|
|
69
|
+
function getTemplateHTML(attrs) {
|
|
70
|
+
return `
|
|
71
|
+
<style>
|
|
72
|
+
:host {
|
|
73
|
+
position: relative;
|
|
74
|
+
}
|
|
75
|
+
|
|
76
|
+
video {
|
|
77
|
+
position: absolute;
|
|
78
|
+
inset: 0;
|
|
79
|
+
width: 100%;
|
|
80
|
+
height: 100%;
|
|
81
|
+
object-fit: var(--media-object-fit, inherit);
|
|
82
|
+
object-position: var(--media-object-position, 50% 50%);
|
|
83
|
+
}
|
|
84
|
+
</style>
|
|
85
|
+
<slot></slot>
|
|
86
|
+
<video ${serializeAttributes(attrs)}></video>
|
|
87
|
+
`;
|
|
88
|
+
}
|
|
89
|
+
var BackgroundVideo = class extends MediaAttachMixin(HTMLElement) {
|
|
90
|
+
static {
|
|
91
|
+
this.shadowRootOptions = { mode: "open" };
|
|
92
|
+
}
|
|
93
|
+
static {
|
|
94
|
+
this.getTemplateHTML = getTemplateHTML;
|
|
95
|
+
}
|
|
96
|
+
static get observedAttributes() {
|
|
97
|
+
return ["src"];
|
|
98
|
+
}
|
|
99
|
+
constructor() {
|
|
100
|
+
super();
|
|
101
|
+
if (!this.shadowRoot) {
|
|
102
|
+
this.attachShadow(this.constructor.shadowRootOptions);
|
|
103
|
+
const attrs = {
|
|
104
|
+
...namedNodeMapToObject(this.attributes),
|
|
105
|
+
...!this.hasAttribute("nomuted") && { muted: "" },
|
|
106
|
+
...!this.hasAttribute("noloop") && { loop: "" },
|
|
107
|
+
...!this.hasAttribute("noautoplay") && { autoplay: "" },
|
|
108
|
+
playsinline: "",
|
|
109
|
+
disableremoteplayback: "",
|
|
110
|
+
disablepictureinpicture: ""
|
|
111
|
+
};
|
|
112
|
+
this.shadowRoot.innerHTML = getTemplateHTML(attrs);
|
|
113
|
+
}
|
|
114
|
+
this.target.muted = !this.hasAttribute("nomuted");
|
|
115
|
+
}
|
|
116
|
+
getMediaTarget() {
|
|
117
|
+
return this.target;
|
|
118
|
+
}
|
|
119
|
+
attributeChangedCallback(attrName, oldValue, newValue) {
|
|
120
|
+
if (attrName === "src" && oldValue !== newValue) this.target.src = newValue ?? "";
|
|
121
|
+
}
|
|
122
|
+
get target() {
|
|
123
|
+
return this.querySelector(":scope > [slot=media]") ?? this.querySelector("video") ?? this.shadowRoot?.querySelector("video") ?? null;
|
|
124
|
+
}
|
|
125
|
+
};
|
|
126
|
+
const VideoAttributes = [
|
|
127
|
+
"autoplay",
|
|
128
|
+
"controls",
|
|
129
|
+
"controlslist",
|
|
130
|
+
"crossorigin",
|
|
131
|
+
"disablepictureinpicture",
|
|
132
|
+
"disableremoteplayback",
|
|
133
|
+
"loop",
|
|
134
|
+
"muted",
|
|
135
|
+
"playsinline",
|
|
136
|
+
"preload"
|
|
137
|
+
];
|
|
138
|
+
function serializeAttributes(attrs) {
|
|
139
|
+
let html = "";
|
|
140
|
+
for (const key in attrs) {
|
|
141
|
+
if (!VideoAttributes.includes(key)) continue;
|
|
142
|
+
const value = attrs[key];
|
|
143
|
+
if (value === "") html += ` ${key}`;
|
|
144
|
+
else html += ` ${key}="${value}"`;
|
|
145
|
+
}
|
|
146
|
+
return html;
|
|
147
|
+
}
|
|
148
|
+
|
|
149
|
+
//#endregion
|
|
150
|
+
//#region src/define/media/background-video.ts
|
|
151
|
+
var BackgroundVideoElement = class extends BackgroundVideo {
|
|
152
|
+
static {
|
|
153
|
+
this.tagName = "background-video";
|
|
154
|
+
}
|
|
155
|
+
};
|
|
156
|
+
safeDefine(BackgroundVideoElement);
|
|
157
|
+
|
|
158
|
+
//#endregion
|
|
159
|
+
//# sourceMappingURL=background.dev.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"background.dev.js","names":["styles","getTemplateHTML"],"sources":["../../utils/dist/dom/attributes.js","../src/define/background/player.ts","../inline-css:src/define/background/skin.js","../src/define/background/skin.ts","../src/media/background-video/index.ts","../src/define/media/background-video.ts"],"sourcesContent":["//#region src/dom/attributes.ts\nfunction namedNodeMapToObject(namedNodeMap) {\n\tconst obj = {};\n\tfor (const attr of namedNodeMap) obj[attr.name] = attr.value;\n\treturn obj;\n}\n\n//#endregion\nexport { namedNodeMapToObject };\n//# sourceMappingURL=attributes.js.map","import { backgroundFeatures } 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: backgroundFeatures,\n});\n\nexport class BackgroundVideoPlayerElement extends ProviderMixin(MediaElement) {\n static readonly tagName = 'background-video-player';\n}\n\n// Provider must be defined before consumer for context handshake during upgrade.\nsafeDefine(BackgroundVideoPlayerElement);\nsafeDefine(MediaContainerElement);\n\ndeclare global {\n interface HTMLElementTagNameMap {\n [BackgroundVideoPlayerElement.tagName]: BackgroundVideoPlayerElement;\n }\n}\n","export default \"background-video-player {\\n display: contents;\\n}\\n\\nbackground-video-skin {\\n display: block;\\n position: relative;\\n width: 100%;\\n height: 100%;\\n --media-object-fit: cover;\\n object-fit: var(--media-object-fit);\\n}\\n\\nbackground-video-skin > background-video {\\n position: absolute;\\n inset: 0;\\n width: 100%;\\n height: 100%;\\n object-fit: inherit;\\n}\\n\\nbackground-video-skin > img,\\nbackground-video-skin > picture {\\n width: 100%;\\n height: 100%;\\n object-fit: inherit;\\n}\\n\";","import { ReactiveElement } from '@videojs/element';\nimport { namedNodeMapToObject } from '@videojs/utils/dom';\nimport { safeDefine } from '../safe-define';\nimport styles from './skin.css?inline';\n\nconst STYLES_ID = '__media-background-styles';\n\nfunction ensureBackgroundStyles(): void {\n if (document.getElementById(STYLES_ID)) return;\n const style = document.createElement('style');\n style.id = STYLES_ID;\n style.textContent = styles;\n document.head.appendChild(style);\n}\n\nfunction getTemplateHTML(_attrs: Record<string, string>) {\n return /*html*/ `\n <media-container>\n <!-- @deprecated slot=\"media\" is no longer required, use the default slot instead -->\n <slot name=\"media\"></slot>\n <slot></slot>\n </media-container>\n `;\n}\n\nexport class BackgroundVideoSkinElement extends ReactiveElement {\n static readonly tagName = 'background-video-skin';\n static shadowRootOptions = { mode: 'open' as ShadowRootMode };\n static getTemplateHTML = getTemplateHTML;\n\n constructor() {\n super();\n\n ensureBackgroundStyles();\n\n if (!this.shadowRoot) {\n this.attachShadow((this.constructor as typeof BackgroundVideoSkinElement).shadowRootOptions);\n this.shadowRoot!.innerHTML = getTemplateHTML(namedNodeMapToObject(this.attributes));\n }\n }\n}\n\nsafeDefine(BackgroundVideoSkinElement);\n\ndeclare global {\n interface HTMLElementTagNameMap {\n [BackgroundVideoSkinElement.tagName]: BackgroundVideoSkinElement;\n }\n}\n","import type { Media } from '@videojs/core/dom';\nimport { namedNodeMapToObject } from '@videojs/utils/dom';\nimport { MediaAttachMixin } from '../../store/media-attach-mixin';\n\nfunction getTemplateHTML(attrs: Record<string, string>) {\n return /*html*/ `\n <style>\n :host {\n position: relative;\n }\n\n video {\n position: absolute;\n inset: 0;\n width: 100%;\n height: 100%;\n object-fit: var(--media-object-fit, inherit);\n object-position: var(--media-object-position, 50% 50%);\n }\n </style>\n <slot></slot>\n <video ${serializeAttributes(attrs)}></video>\n `;\n}\n\n// Don't extend CustomMediaMixin to save some bytes, background videos don't need the full Media API.\nexport class BackgroundVideo extends MediaAttachMixin(HTMLElement) {\n static shadowRootOptions = { mode: 'open' as ShadowRootMode };\n static getTemplateHTML = getTemplateHTML;\n static get observedAttributes() {\n return ['src'];\n }\n\n constructor() {\n super();\n\n if (!this.shadowRoot) {\n this.attachShadow((this.constructor as typeof BackgroundVideo).shadowRootOptions);\n\n const attrs = {\n ...namedNodeMapToObject(this.attributes),\n ...(!this.hasAttribute('nomuted') && { muted: '' }),\n ...(!this.hasAttribute('noloop') && { loop: '' }),\n ...(!this.hasAttribute('noautoplay') && { autoplay: '' }),\n playsinline: '',\n disableremoteplayback: '',\n disablepictureinpicture: '',\n };\n\n this.shadowRoot!.innerHTML = getTemplateHTML(attrs);\n }\n\n // Neither Chrome or Firefox support setting the muted attribute\n // after using document.createElement.\n // Get around this by setting the muted property manually.\n this.target!.muted = !this.hasAttribute('nomuted');\n }\n\n // Register the inner <video> (not `this`) with the provider.\n getMediaTarget(): Media | null {\n return this.target;\n }\n\n attributeChangedCallback(attrName: string, oldValue: string | null, newValue: string | null): void {\n if (attrName === 'src' && oldValue !== newValue) {\n this.target!.src = newValue ?? '';\n }\n }\n\n get target(): HTMLVideoElement | null {\n return (\n this.querySelector(':scope > [slot=media]') ??\n this.querySelector('video') ??\n this.shadowRoot?.querySelector('video') ??\n null\n );\n }\n}\n\nconst VideoAttributes = [\n 'autoplay',\n 'controls',\n 'controlslist',\n 'crossorigin',\n 'disablepictureinpicture',\n 'disableremoteplayback',\n 'loop',\n 'muted',\n 'playsinline',\n 'preload',\n] as const;\n\nfunction serializeAttributes(attrs: Record<string, string>): string {\n let html = '';\n for (const key in attrs) {\n // Skip forwarding non native video attributes.\n if (!VideoAttributes.includes(key as any)) continue;\n\n const value = attrs[key];\n if (value === '') html += ` ${key}`;\n else html += ` ${key}=\"${value}\"`;\n }\n return html;\n}\n","import { BackgroundVideo } from '../../media/background-video';\nimport { safeDefine } from '../safe-define';\n\nexport class BackgroundVideoElement extends BackgroundVideo {\n static readonly tagName = 'background-video';\n}\n\nsafeDefine(BackgroundVideoElement);\n\ndeclare global {\n interface HTMLElementTagNameMap {\n [BackgroundVideoElement.tagName]: BackgroundVideoElement;\n }\n}\n"],"mappings":";;;;;AACA,SAAS,qBAAqB,cAAc;CAC3C,MAAM,MAAM,EAAE;AACd,MAAK,MAAM,QAAQ,aAAc,KAAI,KAAK,QAAQ,KAAK;AACvD,QAAO;;;;;ACER,MAAM,EAAE,kBAAkB,aAAa,EACrC,UAAU,oBACX,CAAC;AAEF,IAAa,+BAAb,cAAkD,cAAc,aAAa,CAAC;;iBAClD;;;AAI5B,WAAW,6BAA6B;AACxC,WAAW,sBAAsB;;;;AChBjC,mBAAe;;;;ACKf,MAAM,YAAY;AAElB,SAAS,yBAA+B;AACtC,KAAI,SAAS,eAAe,UAAU,CAAE;CACxC,MAAM,QAAQ,SAAS,cAAc,QAAQ;AAC7C,OAAM,KAAK;AACX,OAAM,cAAcA;AACpB,UAAS,KAAK,YAAY,MAAM;;AAGlC,SAASC,kBAAgB,QAAgC;AACvD,QAAgB;;;;;;;;AASlB,IAAa,6BAAb,cAAgD,gBAAgB;;iBACpC;;;2BACC,EAAE,MAAM,QAA0B;;;yBACpCA;;CAEzB,cAAc;AACZ,SAAO;AAEP,0BAAwB;AAExB,MAAI,CAAC,KAAK,YAAY;AACpB,QAAK,aAAc,KAAK,YAAkD,kBAAkB;AAC5F,QAAK,WAAY,YAAYA,kBAAgB,qBAAqB,KAAK,WAAW,CAAC;;;;AAKzF,WAAW,2BAA2B;;;;ACtCtC,SAAS,gBAAgB,OAA+B;AACtD,QAAgB;;;;;;;;;;;;;;;;aAgBL,oBAAoB,MAAM,CAAC;;;AAKxC,IAAa,kBAAb,cAAqC,iBAAiB,YAAY,CAAC;;2BACtC,EAAE,MAAM,QAA0B;;;yBACpC;;CACzB,WAAW,qBAAqB;AAC9B,SAAO,CAAC,MAAM;;CAGhB,cAAc;AACZ,SAAO;AAEP,MAAI,CAAC,KAAK,YAAY;AACpB,QAAK,aAAc,KAAK,YAAuC,kBAAkB;GAEjF,MAAM,QAAQ;IACZ,GAAG,qBAAqB,KAAK,WAAW;IACxC,GAAI,CAAC,KAAK,aAAa,UAAU,IAAI,EAAE,OAAO,IAAI;IAClD,GAAI,CAAC,KAAK,aAAa,SAAS,IAAI,EAAE,MAAM,IAAI;IAChD,GAAI,CAAC,KAAK,aAAa,aAAa,IAAI,EAAE,UAAU,IAAI;IACxD,aAAa;IACb,uBAAuB;IACvB,yBAAyB;IAC1B;AAED,QAAK,WAAY,YAAY,gBAAgB,MAAM;;AAMrD,OAAK,OAAQ,QAAQ,CAAC,KAAK,aAAa,UAAU;;CAIpD,iBAA+B;AAC7B,SAAO,KAAK;;CAGd,yBAAyB,UAAkB,UAAyB,UAA+B;AACjG,MAAI,aAAa,SAAS,aAAa,SACrC,MAAK,OAAQ,MAAM,YAAY;;CAInC,IAAI,SAAkC;AACpC,SACE,KAAK,cAAc,wBAAwB,IAC3C,KAAK,cAAc,QAAQ,IAC3B,KAAK,YAAY,cAAc,QAAQ,IACvC;;;AAKN,MAAM,kBAAkB;CACtB;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACD;AAED,SAAS,oBAAoB,OAAuC;CAClE,IAAI,OAAO;AACX,MAAK,MAAM,OAAO,OAAO;AAEvB,MAAI,CAAC,gBAAgB,SAAS,IAAW,CAAE;EAE3C,MAAM,QAAQ,MAAM;AACpB,MAAI,UAAU,GAAI,SAAQ,IAAI;MACzB,SAAQ,IAAI,IAAI,IAAI,MAAM;;AAEjC,QAAO;;;;;ACnGT,IAAa,yBAAb,cAA4C,gBAAgB;;iBAChC;;;AAG5B,WAAW,uBAAuB"}
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
import{L as e,a as t,i as n,o as r,t as i}from"./create-player-BTIU8EwT.js";import{t as a}from"./safe-define-GrHW3P9e.js";import{t as o}from"./media-attach-mixin-tFNcHnvo.js";function s(e){let t={};for(let n of e)t[n.name]=n.value;return t}const{ProviderMixin:c}=i({features:e});a(class extends c(t){static{this.tagName=`background-video-player`}}),a(n);var l=`background-video-player{display:contents}background-video-skin{--media-object-fit:cover;object-fit:var(--media-object-fit);width:100%;height:100%;display:block;position:relative}background-video-skin>background-video{object-fit:inherit;width:100%;height:100%;position:absolute;inset:0}background-video-skin>img,background-video-skin>picture{object-fit:inherit;width:100%;height:100%}`;const u=`__media-background-styles`;function d(){if(document.getElementById(u))return;let e=document.createElement(`style`);e.id=u,e.textContent=l,document.head.appendChild(e)}function f(e){return`<media-container><slot name="media"></slot><slot></slot></media-container>`}a(class extends r{static{this.tagName=`background-video-skin`}static{this.shadowRootOptions={mode:`open`}}static{this.getTemplateHTML=f}constructor(){super(),d(),this.shadowRoot||(this.attachShadow(this.constructor.shadowRootOptions),this.shadowRoot.innerHTML=f(s(this.attributes)))}});function p(e){return`<style> :host { position: relative; } video { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: var(--media-object-fit, inherit); object-position: var(--media-object-position, 50% 50%); } </style><slot></slot><video ${g(e)}></video>`}var m=class extends o(HTMLElement){static{this.shadowRootOptions={mode:`open`}}static{this.getTemplateHTML=p}static get observedAttributes(){return[`src`]}constructor(){if(super(),!this.shadowRoot){this.attachShadow(this.constructor.shadowRootOptions);let e={...s(this.attributes),...!this.hasAttribute(`nomuted`)&&{muted:``},...!this.hasAttribute(`noloop`)&&{loop:``},...!this.hasAttribute(`noautoplay`)&&{autoplay:``},playsinline:``,disableremoteplayback:``,disablepictureinpicture:``};this.shadowRoot.innerHTML=p(e)}this.target.muted=!this.hasAttribute(`nomuted`)}getMediaTarget(){return this.target}attributeChangedCallback(e,t,n){e===`src`&&t!==n&&(this.target.src=n??``)}get target(){return this.querySelector(`:scope > [slot=media]`)??this.querySelector(`video`)??this.shadowRoot?.querySelector(`video`)??null}};const h=[`autoplay`,`controls`,`controlslist`,`crossorigin`,`disablepictureinpicture`,`disableremoteplayback`,`loop`,`muted`,`playsinline`,`preload`];function g(e){let t=``;for(let n in e){if(!h.includes(n))continue;let r=e[n];r===``?t+=` ${n}`:t+=` ${n}="${r}"`}return t}a(class extends m{static{this.tagName=`background-video`}});
|
|
2
|
+
//# sourceMappingURL=background.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"background.js","names":[],"sources":["../../utils/dist/dom/attributes.js","../src/define/background/player.ts","../inline-css:src/define/background/skin.js","../src/define/background/skin.ts","../src/media/background-video/index.ts","../src/define/media/background-video.ts"],"sourcesContent":["//#region src/dom/attributes.ts\nfunction namedNodeMapToObject(namedNodeMap) {\n\tconst obj = {};\n\tfor (const attr of namedNodeMap) obj[attr.name] = attr.value;\n\treturn obj;\n}\n\n//#endregion\nexport { namedNodeMapToObject };\n//# sourceMappingURL=attributes.js.map","import { backgroundFeatures } 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: backgroundFeatures,\n});\n\nexport class BackgroundVideoPlayerElement extends ProviderMixin(MediaElement) {\n static readonly tagName = 'background-video-player';\n}\n\n// Provider must be defined before consumer for context handshake during upgrade.\nsafeDefine(BackgroundVideoPlayerElement);\nsafeDefine(MediaContainerElement);\n\ndeclare global {\n interface HTMLElementTagNameMap {\n [BackgroundVideoPlayerElement.tagName]: BackgroundVideoPlayerElement;\n }\n}\n","export default \"background-video-player{display:contents}background-video-skin{--media-object-fit:cover;object-fit:var(--media-object-fit);width:100%;height:100%;display:block;position:relative}background-video-skin>background-video{object-fit:inherit;width:100%;height:100%;position:absolute;inset:0}background-video-skin>img,background-video-skin>picture{object-fit:inherit;width:100%;height:100%}\";","import { ReactiveElement } from '@videojs/element';\nimport { namedNodeMapToObject } from '@videojs/utils/dom';\nimport { safeDefine } from '../safe-define';\nimport styles from './skin.css?inline';\n\nconst STYLES_ID = '__media-background-styles';\n\nfunction ensureBackgroundStyles(): void {\n if (document.getElementById(STYLES_ID)) return;\n const style = document.createElement('style');\n style.id = STYLES_ID;\n style.textContent = styles;\n document.head.appendChild(style);\n}\n\nfunction getTemplateHTML(_attrs: Record<string, string>) {\n return /*html*/ `\n <media-container>\n <!-- @deprecated slot=\"media\" is no longer required, use the default slot instead -->\n <slot name=\"media\"></slot>\n <slot></slot>\n </media-container>\n `;\n}\n\nexport class BackgroundVideoSkinElement extends ReactiveElement {\n static readonly tagName = 'background-video-skin';\n static shadowRootOptions = { mode: 'open' as ShadowRootMode };\n static getTemplateHTML = getTemplateHTML;\n\n constructor() {\n super();\n\n ensureBackgroundStyles();\n\n if (!this.shadowRoot) {\n this.attachShadow((this.constructor as typeof BackgroundVideoSkinElement).shadowRootOptions);\n this.shadowRoot!.innerHTML = getTemplateHTML(namedNodeMapToObject(this.attributes));\n }\n }\n}\n\nsafeDefine(BackgroundVideoSkinElement);\n\ndeclare global {\n interface HTMLElementTagNameMap {\n [BackgroundVideoSkinElement.tagName]: BackgroundVideoSkinElement;\n }\n}\n","import type { Media } from '@videojs/core/dom';\nimport { namedNodeMapToObject } from '@videojs/utils/dom';\nimport { MediaAttachMixin } from '../../store/media-attach-mixin';\n\nfunction getTemplateHTML(attrs: Record<string, string>) {\n return /*html*/ `\n <style>\n :host {\n position: relative;\n }\n\n video {\n position: absolute;\n inset: 0;\n width: 100%;\n height: 100%;\n object-fit: var(--media-object-fit, inherit);\n object-position: var(--media-object-position, 50% 50%);\n }\n </style>\n <slot></slot>\n <video ${serializeAttributes(attrs)}></video>\n `;\n}\n\n// Don't extend CustomMediaMixin to save some bytes, background videos don't need the full Media API.\nexport class BackgroundVideo extends MediaAttachMixin(HTMLElement) {\n static shadowRootOptions = { mode: 'open' as ShadowRootMode };\n static getTemplateHTML = getTemplateHTML;\n static get observedAttributes() {\n return ['src'];\n }\n\n constructor() {\n super();\n\n if (!this.shadowRoot) {\n this.attachShadow((this.constructor as typeof BackgroundVideo).shadowRootOptions);\n\n const attrs = {\n ...namedNodeMapToObject(this.attributes),\n ...(!this.hasAttribute('nomuted') && { muted: '' }),\n ...(!this.hasAttribute('noloop') && { loop: '' }),\n ...(!this.hasAttribute('noautoplay') && { autoplay: '' }),\n playsinline: '',\n disableremoteplayback: '',\n disablepictureinpicture: '',\n };\n\n this.shadowRoot!.innerHTML = getTemplateHTML(attrs);\n }\n\n // Neither Chrome or Firefox support setting the muted attribute\n // after using document.createElement.\n // Get around this by setting the muted property manually.\n this.target!.muted = !this.hasAttribute('nomuted');\n }\n\n // Register the inner <video> (not `this`) with the provider.\n getMediaTarget(): Media | null {\n return this.target;\n }\n\n attributeChangedCallback(attrName: string, oldValue: string | null, newValue: string | null): void {\n if (attrName === 'src' && oldValue !== newValue) {\n this.target!.src = newValue ?? '';\n }\n }\n\n get target(): HTMLVideoElement | null {\n return (\n this.querySelector(':scope > [slot=media]') ??\n this.querySelector('video') ??\n this.shadowRoot?.querySelector('video') ??\n null\n );\n }\n}\n\nconst VideoAttributes = [\n 'autoplay',\n 'controls',\n 'controlslist',\n 'crossorigin',\n 'disablepictureinpicture',\n 'disableremoteplayback',\n 'loop',\n 'muted',\n 'playsinline',\n 'preload',\n] as const;\n\nfunction serializeAttributes(attrs: Record<string, string>): string {\n let html = '';\n for (const key in attrs) {\n // Skip forwarding non native video attributes.\n if (!VideoAttributes.includes(key as any)) continue;\n\n const value = attrs[key];\n if (value === '') html += ` ${key}`;\n else html += ` ${key}=\"${value}\"`;\n }\n return html;\n}\n","import { BackgroundVideo } from '../../media/background-video';\nimport { safeDefine } from '../safe-define';\n\nexport class BackgroundVideoElement extends BackgroundVideo {\n static readonly tagName = 'background-video';\n}\n\nsafeDefine(BackgroundVideoElement);\n\ndeclare global {\n interface HTMLElementTagNameMap {\n [BackgroundVideoElement.tagName]: BackgroundVideoElement;\n }\n}\n"],"mappings":"+KACA,SAAS,EAAqB,EAAc,CAC3C,IAAM,EAAM,EAAE,CACd,IAAK,IAAM,KAAQ,EAAc,EAAI,EAAK,MAAQ,EAAK,MACvD,OAAO,ECER,KAAM,CAAE,iBAAkB,EAAa,CACrC,SAAU,EACX,CAAC,CAOF,EALA,cAAkD,EAAc,EAAa,AAAC,qBAClD,4BAIY,CACxC,EAAW,EAAsB,CChBjC,IAAA,EAAe,kYCKf,MAAM,EAAY,4BAElB,SAAS,GAA+B,CACtC,GAAI,SAAS,eAAe,EAAU,CAAE,OACxC,IAAM,EAAQ,SAAS,cAAc,QAAQ,CAC7C,EAAM,GAAK,EACX,EAAM,YAAc,EACpB,SAAS,KAAK,YAAY,EAAM,CAGlC,SAAS,EAAgB,EAAgC,CACvD,MAAgB,6EAoBlB,EAjBA,cAA+B,CAAA,qBACb,sDACG,CAAA,KAAA,OAAA,6BAClB,gBAGH,OAAO,CAEL,GAA0B,mBAG1B,KAAA,aAAc,KAAA,YAAA,kBAAA,CACZ,KAAO,WAAA,UAAA,EAAA,EAAA,KAAA,WAAA,CAAA,IAKmB,CChC9B,SAAS,EAAgB,EAA+B,CACtD,MAAgB,8OAAA,EAAA,EAAA,CAAA,WAIlB,IAAM,EAAN,cAAM,EAAA,YAAA,AAAA,yEAEM,EACV,WAAM,oBAAkB,CACtB,MAAI,CAAA,MAAQ,CAGd,aAAa,CAGX,GAFA,OAAI,CAEF,CAAA,KAAK,WAAA,CACN,KAAM,aAAK,KAAA,YAAA,kBAAA,CAEb,IAAA,EAAA,CACH,GAAA,EAAA,KAAA,WAAA,8CAEQ,GAAC,CAAA,KAAO,aAAA,SAAwB,EAAC,CAAK,KAAM,GAAC,CAC9C,GAAK,CAAC,KAAA,aAAgB,aAAQ,EAAA,CAAA,SAAiB,GAAA,CAC9C,YAAC,GACD,sBAAmB,GACnB,wBAAyB,GAC7B,gFAYF,gBAA8B,CAC5B,OAAO,KAAE,OAGX,yBAAM,EAA2B,EAAA,EAAA,CAC5B,IAAA,OAAA,IAAA,IAAA,KAAA,OAAA,IAAA,GAAA,IAKL,IAAI,QAAkC,CACpC,OACE,KAAK,cAAc,wBAAmB,EACxC,KAAK,cAAgB,QAAM,EAC7B,KAAA,YAAA,cAAA,QAAA,EAAA,gBAOA,WACA,WACA,eACA,cACA,kDAEA,OACA,QACA,cACA,UACD,CAED,SAAK,EAAA,EAAA,CACH,IAAA,EAAA,GACF,IAAA,IAAA,KAAA,EAAA,CAEA,GAAM,CAAA,EAAkB,SAAA,EAAA,CAAA,SAErB,IAAA,EAAS,EAAA,GACT,IAAa,GAAA,GAAA,IAAA,IACb,GAAY,IAAA,EAAA,IAAA,EAAA,GAEb,OAAC,EC9EH,EAJA,cAA4C,CAAgB,qBAChC,qBAGM"}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @license
|
|
3
|
+
* Copyright 2021 Google LLC
|
|
4
|
+
* SPDX-License-Identifier: BSD-3-Clause
|
|
5
|
+
*/
|
|
6
|
+
var e=class extends Event{constructor(e,t,n,r){super(`context-request`,{bubbles:!0,composed:!0}),this.context=e,this.contextTarget=t,this.callback=n,this.subscribe=r??!1}};
|
|
7
|
+
/**
|
|
8
|
+
* @license
|
|
9
|
+
* Copyright 2021 Google LLC
|
|
10
|
+
* SPDX-License-Identifier: BSD-3-Clause
|
|
11
|
+
*/
|
|
12
|
+
function t(e){return e}const n=t(Symbol.for(`@videojs/player`)),r=t(Symbol.for(`@videojs/media`)),i=t(Symbol.for(`@videojs/container`));export{e as a,t as i,r as n,n as r,i as t};
|
|
13
|
+
//# sourceMappingURL=context-C_e06fGU.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"context-C_e06fGU.js","names":["createContext"],"sources":["../../../node_modules/.pnpm/@lit+context@1.1.6/node_modules/@lit/context/lib/context-request-event.js","../../../node_modules/.pnpm/@lit+context@1.1.6/node_modules/@lit/context/lib/create-context.js","../src/player/context.ts"],"sourcesContent":["/**\n * @license\n * Copyright 2021 Google LLC\n * SPDX-License-Identifier: BSD-3-Clause\n */\nclass s extends Event{constructor(s,t,e,o){super(\"context-request\",{bubbles:!0,composed:!0}),this.context=s,this.contextTarget=t,this.callback=e,this.subscribe=o??!1}}export{s as ContextRequestEvent};\n//# sourceMappingURL=context-request-event.js.map\n","/**\n * @license\n * Copyright 2021 Google LLC\n * SPDX-License-Identifier: BSD-3-Clause\n */\nfunction n(n){return n}export{n as createContext};\n//# sourceMappingURL=create-context.js.map\n","import type { AnyPlayerStore, Media, MediaContainer, PlayerStore } from '@videojs/core/dom';\nimport { type Context, createContext } from '@videojs/element/context';\n\n// ----------------------------------------\n// Player Context\n// ----------------------------------------\n\nexport const PLAYER_CONTEXT_KEY = Symbol.for('@videojs/player');\n\nexport type PlayerContextValue<Store extends PlayerStore = AnyPlayerStore> = Store;\n\nexport type PlayerContext<Store extends PlayerStore = AnyPlayerStore> = Context<\n typeof PLAYER_CONTEXT_KEY,\n PlayerContextValue<Store>\n>;\n\n/**\n * The default player context instance for consuming the player store in controllers.\n *\n * @public\n */\nexport const playerContext = createContext<PlayerContextValue, typeof PLAYER_CONTEXT_KEY>(PLAYER_CONTEXT_KEY);\n\n// ----------------------------------------\n// Media Context\n// ----------------------------------------\n\nexport const MEDIA_CONTEXT_KEY = Symbol.for('@videojs/media');\n\nexport interface MediaContextValue {\n media: Media | null;\n setMedia: (media: Media | null) => void;\n}\n\nexport type MediaContext = Context<typeof MEDIA_CONTEXT_KEY, MediaContextValue>;\n\nexport const mediaContext = createContext<MediaContextValue, typeof MEDIA_CONTEXT_KEY>(MEDIA_CONTEXT_KEY);\n\n// ----------------------------------------\n// Container Context\n// ----------------------------------------\n\nexport const CONTAINER_CONTEXT_KEY = Symbol.for('@videojs/container');\n\nexport interface ContainerContextValue {\n container: MediaContainer | null;\n setContainer: (container: MediaContainer | null) => void;\n}\n\nexport type ContainerContext = Context<typeof CONTAINER_CONTEXT_KEY, ContainerContextValue>;\n\nexport const containerContext = createContext<ContainerContextValue, typeof CONTAINER_CONTEXT_KEY>(\n CONTAINER_CONTEXT_KEY\n);\n"],"x_google_ignoreList":[0,1],"mappings":";;;;;AAKA,IAAM,EAAN,cAAgB,KAAK,CAAC,YAAY,EAAE,EAAE,EAAE,EAAE,CAAC,MAAM,kBAAkB,CAAC,QAAQ,CAAC,EAAE,SAAS,CAAC,EAAE,CAAC,CAAC,KAAK,QAAQ,EAAE,KAAK,cAAc,EAAE,KAAK,SAAS,EAAE,KAAK,UAAU,GAAG,CAAC;;;;;;ACApK,SAAS,EAAE,EAAE,CAAC,OAAO,ECgBrB,MAAa,EAAgBA,EAdK,OAAO,IAAI,kBAAkB,CAc8C,CAehG,EAAeA,EATK,OAAO,IAAI,iBAAiB,CAS4C,CAe5F,EAAmBA,EATK,OAAO,IAAI,qBAAqB,CAWpE"}
|
|
@@ -0,0 +1,98 @@
|
|
|
1
|
+
//#region ../../node_modules/.pnpm/@lit+context@1.1.6/node_modules/@lit/context/development/lib/context-request-event.js
|
|
2
|
+
/**
|
|
3
|
+
* @license
|
|
4
|
+
* Copyright 2021 Google LLC
|
|
5
|
+
* SPDX-License-Identifier: BSD-3-Clause
|
|
6
|
+
*/
|
|
7
|
+
/**
|
|
8
|
+
* An event fired by a context requester to signal it desires a specified context with the given key.
|
|
9
|
+
*
|
|
10
|
+
* A provider should inspect the `context` property of the event to determine if it has a value that can
|
|
11
|
+
* satisfy the request, calling the `callback` with the requested value if so.
|
|
12
|
+
*
|
|
13
|
+
* If the requested context event contains a truthy `subscribe` value, then a provider can call the callback
|
|
14
|
+
* multiple times if the value is changed, if this is the case the provider should pass an `unsubscribe`
|
|
15
|
+
* method to the callback which consumers can invoke to indicate they no longer wish to receive these updates.
|
|
16
|
+
*
|
|
17
|
+
* If no `subscribe` value is present in the event, then the provider can assume that this is a 'one time'
|
|
18
|
+
* request for the context and can therefore not track the consumer.
|
|
19
|
+
*/
|
|
20
|
+
var ContextRequestEvent = class extends Event {
|
|
21
|
+
/**
|
|
22
|
+
*
|
|
23
|
+
* @param context the context key to request
|
|
24
|
+
* @param contextTarget the original context target of the requester
|
|
25
|
+
* @param callback the callback that should be invoked when the context with the specified key is available
|
|
26
|
+
* @param subscribe when, true indicates we want to subscribe to future updates
|
|
27
|
+
*/
|
|
28
|
+
constructor(context, contextTarget, callback, subscribe) {
|
|
29
|
+
super("context-request", {
|
|
30
|
+
bubbles: true,
|
|
31
|
+
composed: true
|
|
32
|
+
});
|
|
33
|
+
this.context = context;
|
|
34
|
+
this.contextTarget = contextTarget;
|
|
35
|
+
this.callback = callback;
|
|
36
|
+
this.subscribe = subscribe ?? false;
|
|
37
|
+
}
|
|
38
|
+
};
|
|
39
|
+
|
|
40
|
+
//#endregion
|
|
41
|
+
//#region ../../node_modules/.pnpm/@lit+context@1.1.6/node_modules/@lit/context/development/lib/create-context.js
|
|
42
|
+
/**
|
|
43
|
+
* @license
|
|
44
|
+
* Copyright 2021 Google LLC
|
|
45
|
+
* SPDX-License-Identifier: BSD-3-Clause
|
|
46
|
+
*/
|
|
47
|
+
/**
|
|
48
|
+
* Creates a typed Context.
|
|
49
|
+
*
|
|
50
|
+
* Contexts are compared with strict equality.
|
|
51
|
+
*
|
|
52
|
+
* If you want two separate `createContext()` calls to referer to the same
|
|
53
|
+
* context, then use a key that will by equal under strict equality like a
|
|
54
|
+
* string for `Symbol.for()`:
|
|
55
|
+
*
|
|
56
|
+
* ```ts
|
|
57
|
+
* // true
|
|
58
|
+
* createContext('my-context') === createContext('my-context')
|
|
59
|
+
* // true
|
|
60
|
+
* createContext(Symbol.for('my-context')) === createContext(Symbol.for('my-context'))
|
|
61
|
+
* ```
|
|
62
|
+
*
|
|
63
|
+
* If you want a context to be unique so that it's guaranteed to not collide
|
|
64
|
+
* with other contexts, use a key that's unique under strict equality, like
|
|
65
|
+
* a `Symbol()` or object.:
|
|
66
|
+
*
|
|
67
|
+
* ```
|
|
68
|
+
* // false
|
|
69
|
+
* createContext({}) === createContext({})
|
|
70
|
+
* // false
|
|
71
|
+
* createContext(Symbol('my-context')) === createContext(Symbol('my-context'))
|
|
72
|
+
* ```
|
|
73
|
+
*
|
|
74
|
+
* @param key a context key value
|
|
75
|
+
* @template ValueType the type of value that can be provided by this context.
|
|
76
|
+
* @returns the context key value cast to `Context<K, ValueType>`
|
|
77
|
+
*/
|
|
78
|
+
function createContext(key) {
|
|
79
|
+
return key;
|
|
80
|
+
}
|
|
81
|
+
|
|
82
|
+
//#endregion
|
|
83
|
+
//#region src/player/context.ts
|
|
84
|
+
const PLAYER_CONTEXT_KEY = Symbol.for("@videojs/player");
|
|
85
|
+
/**
|
|
86
|
+
* The default player context instance for consuming the player store in controllers.
|
|
87
|
+
*
|
|
88
|
+
* @public
|
|
89
|
+
*/
|
|
90
|
+
const playerContext = createContext(PLAYER_CONTEXT_KEY);
|
|
91
|
+
const MEDIA_CONTEXT_KEY = Symbol.for("@videojs/media");
|
|
92
|
+
const mediaContext = createContext(MEDIA_CONTEXT_KEY);
|
|
93
|
+
const CONTAINER_CONTEXT_KEY = Symbol.for("@videojs/container");
|
|
94
|
+
const containerContext = createContext(CONTAINER_CONTEXT_KEY);
|
|
95
|
+
|
|
96
|
+
//#endregion
|
|
97
|
+
export { ContextRequestEvent as a, createContext as i, mediaContext as n, playerContext as r, containerContext as t };
|
|
98
|
+
//# sourceMappingURL=context-DTY0nOpS.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"context-DTY0nOpS.js","names":[],"sources":["../../../node_modules/.pnpm/@lit+context@1.1.6/node_modules/@lit/context/development/lib/context-request-event.js","../../../node_modules/.pnpm/@lit+context@1.1.6/node_modules/@lit/context/development/lib/create-context.js","../src/player/context.ts"],"sourcesContent":["/**\n * @license\n * Copyright 2021 Google LLC\n * SPDX-License-Identifier: BSD-3-Clause\n */\n/**\n * An event fired by a context requester to signal it desires a specified context with the given key.\n *\n * A provider should inspect the `context` property of the event to determine if it has a value that can\n * satisfy the request, calling the `callback` with the requested value if so.\n *\n * If the requested context event contains a truthy `subscribe` value, then a provider can call the callback\n * multiple times if the value is changed, if this is the case the provider should pass an `unsubscribe`\n * method to the callback which consumers can invoke to indicate they no longer wish to receive these updates.\n *\n * If no `subscribe` value is present in the event, then the provider can assume that this is a 'one time'\n * request for the context and can therefore not track the consumer.\n */\nexport class ContextRequestEvent extends Event {\n /**\n *\n * @param context the context key to request\n * @param contextTarget the original context target of the requester\n * @param callback the callback that should be invoked when the context with the specified key is available\n * @param subscribe when, true indicates we want to subscribe to future updates\n */\n constructor(context, contextTarget, callback, subscribe) {\n super('context-request', { bubbles: true, composed: true });\n this.context = context;\n this.contextTarget = contextTarget;\n this.callback = callback;\n this.subscribe = subscribe ?? false;\n }\n}\n//# sourceMappingURL=context-request-event.js.map","/**\n * @license\n * Copyright 2021 Google LLC\n * SPDX-License-Identifier: BSD-3-Clause\n */\n/**\n * Creates a typed Context.\n *\n * Contexts are compared with strict equality.\n *\n * If you want two separate `createContext()` calls to referer to the same\n * context, then use a key that will by equal under strict equality like a\n * string for `Symbol.for()`:\n *\n * ```ts\n * // true\n * createContext('my-context') === createContext('my-context')\n * // true\n * createContext(Symbol.for('my-context')) === createContext(Symbol.for('my-context'))\n * ```\n *\n * If you want a context to be unique so that it's guaranteed to not collide\n * with other contexts, use a key that's unique under strict equality, like\n * a `Symbol()` or object.:\n *\n * ```\n * // false\n * createContext({}) === createContext({})\n * // false\n * createContext(Symbol('my-context')) === createContext(Symbol('my-context'))\n * ```\n *\n * @param key a context key value\n * @template ValueType the type of value that can be provided by this context.\n * @returns the context key value cast to `Context<K, ValueType>`\n */\nexport function createContext(key) {\n return key;\n}\n//# sourceMappingURL=create-context.js.map","import type { AnyPlayerStore, Media, MediaContainer, PlayerStore } from '@videojs/core/dom';\nimport { type Context, createContext } from '@videojs/element/context';\n\n// ----------------------------------------\n// Player Context\n// ----------------------------------------\n\nexport const PLAYER_CONTEXT_KEY = Symbol.for('@videojs/player');\n\nexport type PlayerContextValue<Store extends PlayerStore = AnyPlayerStore> = Store;\n\nexport type PlayerContext<Store extends PlayerStore = AnyPlayerStore> = Context<\n typeof PLAYER_CONTEXT_KEY,\n PlayerContextValue<Store>\n>;\n\n/**\n * The default player context instance for consuming the player store in controllers.\n *\n * @public\n */\nexport const playerContext = createContext<PlayerContextValue, typeof PLAYER_CONTEXT_KEY>(PLAYER_CONTEXT_KEY);\n\n// ----------------------------------------\n// Media Context\n// ----------------------------------------\n\nexport const MEDIA_CONTEXT_KEY = Symbol.for('@videojs/media');\n\nexport interface MediaContextValue {\n media: Media | null;\n setMedia: (media: Media | null) => void;\n}\n\nexport type MediaContext = Context<typeof MEDIA_CONTEXT_KEY, MediaContextValue>;\n\nexport const mediaContext = createContext<MediaContextValue, typeof MEDIA_CONTEXT_KEY>(MEDIA_CONTEXT_KEY);\n\n// ----------------------------------------\n// Container Context\n// ----------------------------------------\n\nexport const CONTAINER_CONTEXT_KEY = Symbol.for('@videojs/container');\n\nexport interface ContainerContextValue {\n container: MediaContainer | null;\n setContainer: (container: MediaContainer | null) => void;\n}\n\nexport type ContainerContext = Context<typeof CONTAINER_CONTEXT_KEY, ContainerContextValue>;\n\nexport const containerContext = createContext<ContainerContextValue, typeof CONTAINER_CONTEXT_KEY>(\n CONTAINER_CONTEXT_KEY\n);\n"],"x_google_ignoreList":[0,1],"mappings":";;;;;;;;;;;;;;;;;;;AAkBA,IAAa,sBAAb,cAAyC,MAAM;;;;;;;;CAQ3C,YAAY,SAAS,eAAe,UAAU,WAAW;AACrD,QAAM,mBAAmB;GAAE,SAAS;GAAM,UAAU;GAAM,CAAC;AAC3D,OAAK,UAAU;AACf,OAAK,gBAAgB;AACrB,OAAK,WAAW;AAChB,OAAK,YAAY,aAAa;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;ACKtC,SAAgB,cAAc,KAAK;AAC/B,QAAO;;;;;AC9BX,MAAa,qBAAqB,OAAO,IAAI,kBAAkB;;;;;;AAc/D,MAAa,gBAAgB,cAA6D,mBAAmB;AAM7G,MAAa,oBAAoB,OAAO,IAAI,iBAAiB;AAS7D,MAAa,eAAe,cAA2D,kBAAkB;AAMzG,MAAa,wBAAwB,OAAO,IAAI,qBAAqB;AASrE,MAAa,mBAAmB,cAC9B,sBACD"}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import{a as e,o as t,r as n,t as r}from"./predicate-Y9jDHLpX.js";import{t as i}from"./listen-DX5vU4s4.js";import{a,n as o,r as s,t as c}from"./context-C_e06fGU.js";var l=class{#e=new AbortController;#t=new Map;get base(){return this.#e.signal}clear(){for(let e of this.#t.values())e.abort();this.#t.clear()}reset(){this.clear(),this.#e.abort(),this.#e=new AbortController}supersede(e){this.#t.get(e)?.abort();let t=new AbortController;return this.#t.set(e,t),AbortSignal.any([this.#e.signal,t.signal])}};function u(...e){return{state:t=>{let n=e.map(e=>e.state(t));return Object.assign({},...n)},attach:t=>{for(let n of e)try{n.attach?.(t)}catch(e){t.reportError(e)}}}}var d=class extends Error{code;cause;constructor(e,t){super(t?.message??e),this.name=`StoreError`,this.code=e,this.cause=t?.cause}};function f(){throw new d(`NO_TARGET`)}function p(){throw new d(`DESTROYED`)}function m(e,t){let n={};for(let r of t)n[r]=e[r];return n}const h={target:f,signals:new l,set:f};function g(e){let t=e.state(h),n=Object.keys(t),r=n[0];return r?Object.assign(e=>{if(r in e)return m(e,n)},{displayName:e.name}):Object.assign(()=>void 0,{displayName:e.name})}const _=Object.prototype.hasOwnProperty;function v(e,t){if(Object.is(e,t))return!0;if(typeof e!=`object`||!e||typeof t!=`object`||!t)return!1;let n=Object.keys(e),r=Object.keys(t);if(n.length!==r.length)return!1;for(let r of n)if(!_.call(t,r)||!Object.is(e[r],t[r]))return!1;return!0}function y(){return e=>e}function b(...e){}function x(e,t){let n=null,r,i=(...i)=>{r=i,n===null&&(n=setTimeout(()=>{n=null,e(...r)},t))};return i.cancel=()=>{n!==null&&(clearTimeout(n),n=null)},i}let S=!1;function ee(){S||(S=!0,queueMicrotask(te))}const C=new Set;function te(){S=!1;for(let e of C)e.flush();C.clear()}const ne=Object.prototype.hasOwnProperty;var re=class{#e;#t=new Set;#n=!1;constructor(e){this.#e=Object.freeze({...e})}get current(){return this.#e}patch(e){let t={...this.#e},n=!1;for(let r in e){if(!ne.call(e,r))continue;let i=e[r];Object.is(this.#e[r],i)||(t[r]=i,n=!0)}n&&(this.#e=Object.freeze(t),this.#r())}subscribe(e,t){let n=t?.signal;if(n?.aborted)return b;if(this.#t.add(e),!n)return()=>this.#t.delete(e);let r=()=>this.#t.delete(e);return n.addEventListener(`abort`,r,{once:!0}),()=>{n.removeEventListener(`abort`,r),this.#t.delete(e)}}flush(){if(this.#n){this.#n=!1;for(let e of this.#t)e()}}#r(){this.#n=!0,C.add(this),ee()}};function w(e){return new re(e)}const T=Symbol(`@videojs/store`);function ie(){return(e,t={})=>{let r=null,i=!1,a=new AbortController,o=new l,s;function c(){i&&p(),r||f()}let u=e.state({target:()=>(c(),r),signals:o,set:e=>s.patch(e)});s=w(u);let d={[T]:!0,get $state(){return s},get target(){return r},get destroyed(){return i},get state(){return s.current},attach:m,destroy:g,subscribe:_};for(let e of Object.keys(u))Object.defineProperty(d,e,{get:()=>s.current[e],enumerable:!0});try{t.onSetup?.({store:d,signal:a.signal})}catch(e){v(e)}return d;function m(n){i&&p(),o.reset(),r=n;let a={target:n,signal:o.base,get:()=>s.current,set:e=>s.patch(e),reportError:v,store:{get state(){return s.current},subscribe:_}};try{e.attach?.(a)}catch(e){v(e)}try{t.onAttach?.({store:d,target:n,signal:o.base})}catch(e){v(e)}return h}function h(){n(r)||(o.reset(),r=null,s.patch(u))}function g(){i||(i=!0,h(),a.abort())}function _(e,t){return s.subscribe(e,t)}function v(e){t.onError?t.onError({store:d,error:e}):console.error(`[vjs-store]`,e)}}}function ae(t){return e(t)&&T in t}const E=y();function D(e,t,n){return new Promise((r,i)=>{let a=()=>{i(n?.signal?.reason??`Aborted`)};if(n?.signal?.aborted){a();return}n?.signal?.addEventListener(`abort`,a,{once:!0}),e.addEventListener(t,e=>{n?.signal?.removeEventListener(`abort`,a),r(e)},{...n,once:!0})})}function O(){return typeof CSS<`u`&&CSS.supports(`anchor-name: --a`)}function k(e){try{e?.showPopover?.()}catch{}}function A(e){try{e?.hidePopover?.()}catch{}}function oe(e){return e.replace(/[A-Z]/g,e=>`-${e.toLowerCase()}`)}function se(e,t){for(let[n,r]of Object.entries(t))if(typeof r==`string`){let t=n.startsWith(`--`)?n:oe(n);e.style.setProperty(t,r)}}function ce(e,t){let n=t.trim();if(!n)return 0;let r=Number.parseFloat(n);if(Number.isNaN(r))return 0;if(/^-?\d*\.?\d+$/.test(n)||n.endsWith(`px`))return r;let i=e.ownerDocument,a=i?.documentElement;if(n.endsWith(`rem`))return r*(a&&Number.parseFloat(getComputedStyle(a).fontSize)||16);if(n.endsWith(`em`))return r*(e instanceof HTMLElement&&Number.parseFloat(getComputedStyle(e).fontSize)||16);if(!i)return r;let o=i.createElement(`div`);o.style.position=`absolute`,o.style.visibility=`hidden`,o.style.pointerEvents=`none`,o.style.inlineSize=n,o.style.blockSize=`0`,o.style.padding=`0`,o.style.border=`0`,o.style.inset=`0`;let s=i.body??i.documentElement;if(!s)return r;s.appendChild(o);let c=o.getBoundingClientRect().width;return o.remove(),Number.isFinite(c)?c:r}function le(e,t){for(let n of e.querySelectorAll?.(`track`)??[])if(n.track===t)return n;return null}function ue(e,t){return e?.textTracks?Array.from(e.textTracks).filter(t).sort(de):[]}function de(e,t){return e.kind>=t.kind?1:-1}function fe(e){let t=[];for(let n=0;n<e.length;n++)t.push([e.start(n),e.end(n)]);return t}const j=E({name:`buffer`,state:()=>({buffered:[],seekable:[]}),attach({target:e,signal:t,set:n}){let{media:r}=e,a=()=>n({buffered:fe(r.buffered),seekable:fe(r.seekable)});a(),i(r,`progress`,a,{signal:t}),i(r,`emptied`,a,{signal:t})}}),M=E({name:`controls`,state:()=>({userActive:!0,controlsVisible:!0}),attach({target:e,signal:t,get:r,set:a}){let{media:o,container:s}=e;if(n(s))return;function c(e){return e||o.paused}let l;function u(){clearTimeout(l),l=void 0}function d(){u(),l=setTimeout(p,2e3)}function f(){r().userActive||a({userActive:!0,controlsVisible:!0}),d()}function p(){u(),a({userActive:!1,controlsVisible:c(!1)})}let m=0;function h(){m=Date.now()}function g(e){if(e.pointerType===`touch`&&Date.now()-m<250){let t=[o,s].includes(e.target);r().controlsVisible&&t?p():f()}else f()}function _(){let{userActive:e}=r();a({controlsVisible:c(e)}),!o.paused&&e&&d()}i(s,`pointermove`,f,{signal:t}),i(s,`pointerdown`,h,{signal:t}),i(s,`pointerup`,g,{signal:t}),i(s,`keyup`,f,{signal:t}),i(s,`focusin`,f,{signal:t}),i(s,`mouseleave`,p,{signal:t}),i(o,`play`,_,{signal:t}),i(o,`pause`,_,{signal:t}),i(o,`ended`,_,{signal:t}),t.addEventListener(`abort`,u,{once:!0}),d()}}),N=E({name:`error`,state:({set:e})=>({error:null,dismissError(){e({error:null})}}),attach({target:e,signal:t,set:n}){let{media:r}=e;i(r,`error`,()=>n({error:r.error}),{signal:t}),i(r,`emptied`,()=>n({error:null}),{signal:t})}});function pe(){let e=document;return e.fullscreenEnabled||e.webkitFullscreenEnabled?!0:r(document.createElement(`video`).webkitEnterFullscreen)}function me(){let e=document;return e.fullscreenElement??e.webkitFullscreenElement??null}function P(e,t){let n=t;if(n.webkitDisplayingFullscreen&&n.webkitPresentationMode===`fullscreen`)return!0;let r=e??t;if(me()===r)return!0;try{return r.matches(`:fullscreen`)}catch{return!1}}async function he(e,t){let n=document,i=t;if(e&&(n.fullscreenEnabled||n.webkitFullscreenEnabled)){let t=e;if(r(t.requestFullscreen))return t.requestFullscreen();if(r(t.webkitRequestFullscreen))return t.webkitRequestFullscreen()}if(r(i.webkitEnterFullscreen)){i.webkitEnterFullscreen();return}if(r(t.requestFullscreen))return t.requestFullscreen();throw new DOMException(`Fullscreen not supported`,`NotSupportedError`)}async function F(e){let t=document;if(e){let t=e;if(r(t.webkitExitFullscreen)&&t.webkitDisplayingFullscreen){t.webkitExitFullscreen();return}}if(r(t.exitFullscreen))return t.exitFullscreen();if(r(t.webkitExitFullscreen))return t.webkitExitFullscreen()}function I(e){let t=e.target;return t instanceof HTMLMediaElement?t:e}function ge(){if(document.pictureInPictureEnabled){let e=/.*Version\/.*Safari\/.*/.test(navigator.userAgent),t=typeof matchMedia==`function`&&matchMedia(`(display-mode: standalone)`).matches;return!e||!t}return r(document.createElement(`video`).webkitSetPresentationMode)}function L(e){let t=I(e);return document.pictureInPictureElement===t?!0:t.webkitPresentationMode===`picture-in-picture`}async function _e(e){let t=I(e);if(r(t.webkitSetPresentationMode)){t.webkitSetPresentationMode(`picture-in-picture`);return}if(r(t.requestPictureInPicture)){await t.requestPictureInPicture();return}throw new DOMException(`Picture-in-Picture not supported`,`NotSupportedError`)}async function ve(e){if(e){let t=I(e);if(r(t.webkitSetPresentationMode)&&t.webkitPresentationMode===`picture-in-picture`){t.webkitSetPresentationMode(`inline`);return}}if(r(document.exitPictureInPicture))return document.exitPictureInPicture()}const ye=E({name:`fullscreen`,state:({target:e})=>({fullscreen:!1,fullscreenAvailability:`unavailable`,async requestFullscreen(){let{media:t,container:n}=e();return L(t)&&await ve(t),he(n,t)},async exitFullscreen(){let{media:t}=e();return F(t)}}),attach({target:e,signal:t,set:n}){let{media:r,container:a}=e;n({fullscreenAvailability:pe()?`available`:`unsupported`});let o=()=>n({fullscreen:P(a,r)});o(),i(document,`fullscreenchange`,o,{signal:t}),i(document,`webkitfullscreenchange`,o,{signal:t}),`webkitPresentationMode`in r&&i(r,`webkitpresentationmodechanged`,o,{signal:t})}}),be=E({name:`pip`,state:({target:e})=>({pip:!1,pipAvailability:`unavailable`,async requestPictureInPicture(){let{media:t,container:n}=e();return P(n,t)&&await F(),_e(t)},async exitPictureInPicture(){let{media:t}=e();return ve(t)}}),attach({target:e,signal:t,set:n}){let{media:r}=e;n({pipAvailability:ge()?`available`:`unsupported`});let a=()=>n({pip:L(r)});a(),i(r,`enterpictureinpicture`,a,{signal:t}),i(r,`leavepictureinpicture`,a,{signal:t}),`webkitPresentationMode`in r&&i(r,`webkitpresentationmodechanged`,a,{signal:t})}}),R=E({name:`playback`,state:({target:e})=>({paused:!0,ended:!1,started:!1,waiting:!1,play(){return e().media.play()},pause(){e().media.pause()}}),attach({target:e,signal:t,set:n}){let{media:r}=e,a=()=>n({paused:r.paused,ended:r.ended,started:!r.paused||r.currentTime>0,waiting:r.readyState<HTMLMediaElement.HAVE_FUTURE_DATA&&!r.paused});a(),i(r,`emptied`,a,{signal:t}),i(r,`play`,a,{signal:t}),i(r,`pause`,a,{signal:t}),i(r,`ended`,a,{signal:t}),i(r,`playing`,a,{signal:t}),i(r,`waiting`,a,{signal:t}),i(r,`seeked`,a,{signal:t})}}),xe=[1,1.2,1.5,1.7,2],z=E({name:`playbackRate`,state:({target:e})=>({playbackRates:xe,playbackRate:1,setPlaybackRate(t){e().media.playbackRate=t}}),attach({target:e,signal:t,set:n}){let{media:r}=e,a=()=>n({playbackRate:r.playbackRate});a(),i(r,`ratechange`,a,{signal:t})}}),B=E({name:`source`,state:({target:e,signals:t})=>({source:null,canPlay:!1,loadSource(n){t.clear();let{media:r}=e();return r.src=n,r.load(),n}}),attach({target:e,signal:t,set:n}){let{media:r}=e,a=()=>n({source:r.currentSrc||r.src||null,canPlay:r.readyState>=HTMLMediaElement.HAVE_ENOUGH_DATA});a(),i(r,`canplay`,a,{signal:t}),i(r,`canplaythrough`,a,{signal:t}),i(r,`loadstart`,a,{signal:t}),i(r,`emptied`,a,{signal:t})}}),V=E({name:`textTrack`,state:({target:e})=>({chaptersCues:[],thumbnailCues:[],thumbnailTrackSrc:null,textTrackList:[],subtitlesShowing:!1,toggleSubtitles(t){let n=ue(e().media,e=>e.kind===`subtitles`||e.kind===`captions`);if(!n.length)return!1;let r=n.some(e=>e.mode===`showing`),i=t??!r;for(let e of n)e.mode=i?`showing`:`disabled`;return i}}),attach({target:e,signal:t,set:n}){let{media:r}=e,a=null;function o(){a?.abort(),a=new AbortController;let e=null,t=null,s=[],c=!1;for(let n=0;n<r.textTracks.length;n++){let i=r.textTracks[n];!e&&i.kind===`chapters`&&(e=i),!t&&i.kind===`metadata`&&i.label===`thumbnails`&&(t=i),s.push({kind:i.kind,label:i.label,language:i.language,mode:i.mode}),(i.kind===`captions`||i.kind===`subtitles`)&&i.mode===`showing`&&(c=!0)}let l=e?.cues?Array.from(e.cues):[],u=t?.cues?Array.from(t.cues):[],d=null;t&&(d=le(r,t)?.src??null);for(let e of r.querySelectorAll?.(`track`)??[])e.track?.cues?.length||i(e,`load`,o,{signal:a.signal});n({chaptersCues:l,thumbnailCues:u,thumbnailTrackSrc:d,textTrackList:s,subtitlesShowing:c})}o(),i(r.textTracks,`addtrack`,o,{signal:t}),i(r.textTracks,`removetrack`,o,{signal:t}),i(r.textTracks,`change`,o,{signal:t}),i(r,`loadstart`,o,{signal:t}),t.addEventListener(`abort`,()=>a?.abort(),{once:!0})}});function Se(e){return e.readyState>=HTMLMediaElement.HAVE_METADATA}const Ce={seek:Symbol.for(`@videojs/seek`)},H=E({name:`time`,state:({target:e,signals:t,set:n})=>({currentTime:0,duration:0,seeking:!1,async seek(r){let{media:i}=e(),a=t.supersede(Ce.seek);if(!Se(i)&&!await D(i,`loadedmetadata`,{signal:a}).catch(()=>!1))return i.currentTime;let o=Math.max(0,Math.min(r,i.duration||1/0));return n({currentTime:o,seeking:!0}),i.currentTime=o,await D(i,`seeked`,{signal:a}).catch(b),i.currentTime}}),attach({target:e,signal:t,set:n}){let{media:r}=e,a=()=>n({currentTime:r.currentTime,duration:Number.isFinite(r.duration)?r.duration:0,seeking:r.seeking});a(),i(r,`timeupdate`,a,{signal:t}),i(r,`durationchange`,a,{signal:t}),i(r,`seeking`,a,{signal:t}),i(r,`seeked`,a,{signal:t}),i(r,`loadedmetadata`,a,{signal:t}),i(r,`emptied`,a,{signal:t})}}),U=E({name:`volume`,state:({target:e})=>({volume:1,muted:!1,volumeAvailability:`unavailable`,setVolume(t){let{media:n}=e(),r=Math.max(0,Math.min(1,t));return r>0&&n.muted&&(n.muted=!1),n.volume=r,n.volume},toggleMuted(){let{media:t}=e();return t.muted||t.volume===0?(t.muted=!1,t.volume===0&&(t.volume=.25)):t.muted=!0,t.muted}}),attach({target:e,signal:t,set:n}){let{media:r}=e;n({volumeAvailability:we()});let a=()=>n({volume:r.volume,muted:r.muted});a(),i(r,`volumechange`,a,{signal:t})}});function we(){let e=document.createElement(`video`);try{return e.volume=.5,e.volume===.5?`available`:`unsupported`}catch{return`unsupported`}}const Te=[R,z,U,H,B,j,ye,be,M,V,N],Ee=[R,z,U,H,B,j,N],De=[],Oe=g(j),ke=g(M);g(N);const Ae=g(ye),je=g(be),Me=g(R),Ne=g(z);g(B);const Pe=g(V),Fe=g(H),Ie=g(U);function Le(e){let{transition:t}=e,n=t.state,r=new AbortController,a=null;function o(){if(r.signal.aborted)return null;let{active:e,status:i}=n.current;return e&&i!==`ending`?null:(i===`ending`&&t.cancel(),t.open())}function s(e){let{active:i,status:a}=n.current;return r.signal.aborted||!i||a===`ending`?null:t.close(e)}function c(){if(l(),typeof document>`u`)return;a=new AbortController;let{signal:t}=a;i(document,`keydown`,u,{signal:t}),e.onDocumentActive?.(t)}function l(){a?.abort(),a=null}function u(t){t.key===`Escape`&&n.current.active&&(e.closeOnEscape?.()??!0)&&e.onEscapeDismiss(t)}let d=n.subscribe(()=>{n.current.active?c():l()});r.signal.addEventListener(`abort`,()=>{d(),t.destroy(),l()});function f(){r.signal.aborted||r.abort()}return{input:n,open:o,close:s,signal:r.signal,destroy:f}}function Re(e){let{onActivate:t,isDisabled:n}=e;return{role:`button`,tabIndex:0,onClick(e){if(n()){e.preventDefault();return}t()},onPointerDown(e){n()&&e.preventDefault()},onMouseDown(e){n()&&e.preventDefault()},onKeyDown(e){if(e.target===e.currentTarget){if(n()){e.key!==`Tab`&&e.preventDefault();return}e.key===`Enter`?(e.preventDefault(),t()):e.key===` `&&e.preventDefault()}},onKeyUp(e){e.target===e.currentTarget&&(n()||e.key===` `&&t())}}}function W(e){let{onOpenChange:t,closeOnOutsideClick:n}=e,r=null,a=null,o=null,s=new Set,c=Le({transition:e.transition,closeOnEscape:e.closeOnEscape,onEscapeDismiss(e){e.preventDefault(),h(`escape`,e)},onDocumentActive(e){i(document,`pointerdown`,v,{capture:!0,signal:e})}}),l=c.input;function u(){o!==null&&(clearTimeout(o),o=null)}function d(){return globalThis.matchMedia?.(`(hover: hover)`)?.matches??!1}function f(){return d()?globalThis.matchMedia?.(`(pointer: fine)`)?.matches??!1:!1}function p(){return e.openOnHover?.()?d():!0}function m(n,r){let i=c.open();i&&(t(!0,r?{reason:n,event:r}:{reason:n}),i.then(()=>{c.signal.aborted||!l.current.active||e.onOpenChangeComplete?.(!0)}))}function h(n,r){let i=c.close(a);i&&(t(!1,r?{reason:n,event:r}:{reason:n}),i.then(()=>{c.signal.aborted||(A(a),e.onOpenChangeComplete?.(!1))}))}function g(e=`click`){m(e)}function _(e=`click`){h(e)}function v(e){if(!n()||!l.current.active)return;let t=e.composedPath();r&&t.includes(r)||a&&t.includes(a)||h(`outside-click`,e)}c.signal.addEventListener(`abort`,()=>{u(),s.clear(),r=null,a=null});let y={onClick(e){p()&&(l.current.active&&l.current.status!==`ending`?h(`click`,e):m(`click`,e))},onPointerEnter(t){if(!e.openOnHover?.()||!d()||(u(),l.current.active))return;let n=e.delay?.()??300;o=setTimeout(()=>m(`hover`),n)},onPointerLeave(t){if(!e.openOnHover?.()||!d()||(u(),!l.current.active))return;let n=e.closeDelay?.()??0;o=setTimeout(()=>h(`hover`),n)},onFocusIn(t){if(e.openOnHover?.()){if(!f())return;m(`focus`)}},onFocusOut(t){let n=t.relatedTarget;n&&(r?.contains(n)||a?.contains(n))||e.openOnHover?.()&&h(`blur`)}},b={onPointerEnter(t){e.openOnHover?.()&&u()},onPointerLeave(t){if(!e.openOnHover?.()||s.size>0||(u(),!l.current.active))return;let n=e.closeDelay?.()??0;o=setTimeout(()=>h(`hover`),n)},onGotPointerCapture(e){s.add(e.pointerId)},onLostPointerCapture(e){s.delete(e.pointerId)},onFocusOut(e){let t=e.relatedTarget;t&&(r?.contains(t)||a?.contains(t))||h(`blur`)}};function x(e){r=e}function S(e){!e&&a&&l.current.active&&A(a),a=e,e&&l.current.active&&k(e)}return{input:l,triggerProps:y,popupProps:b,get triggerElement(){return r},setTriggerElement:x,setPopupElement:S,open:g,close:_,destroy:c.destroy}}const G={sideOffset:`--media-popover-side-offset`,alignOffset:`--media-popover-align-offset`,anchorWidth:`--media-popover-anchor-width`,anchorHeight:`--media-popover-anchor-height`,availableWidth:`--media-popover-available-width`,availableHeight:`--media-popover-available-height`},ze={top:`bottom`,bottom:`top`,left:`right`,right:`left`};function Be(e,t,n,r,i,a,o=G){return O()?He(e,t,o):n&&r?{...We(n,r,t,a??{sideOffset:0,alignOffset:0}),...i?Ue(n,i,t.side,o):{},position:`fixed`,inset:`auto`,margin:`0`}:{}}function Ve(e){return O()?{anchorName:`--${e}`}:{}}function He(e,t,n=G){let r=`var(${n.sideOffset}, 0px)`,i=`var(${n.alignOffset}, 0px)`,{side:a,align:o}=t,s={positionAnchor:`--${e}`,position:`fixed`,inset:`auto`,margin:`0`,justifySelf:`normal`,alignSelf:`normal`,marginInlineStart:`0`,marginBlockStart:`0`},c=ze[a];return a===`top`||a===`bottom`?(s[c]=`calc(anchor(${a}) + ${r})`,o===`start`?s.left=`calc(anchor(left) + ${i})`:o===`end`?s.right=`calc(anchor(right) + ${i})`:(s.justifySelf=`anchor-center`,s.marginInlineStart=i)):(s[c]=`calc(anchor(${a}) + ${r})`,o===`start`?s.top=`calc(anchor(top) + ${i})`:o===`end`?s.bottom=`calc(anchor(bottom) + ${i})`:(s.alignSelf=`anchor-center`,s.marginBlockStart=i)),s}function Ue(e,t,n,r=G){let i={};return i[r.anchorWidth]=`${e.width}px`,i[r.anchorHeight]=`${e.height}px`,n===`top`||n===`bottom`?(i[r.availableHeight]=n===`top`?`${e.top-t.top}px`:`${t.bottom-e.bottom}px`,i[r.availableWidth]=`${t.width}px`):(i[r.availableWidth]=n===`left`?`${e.left-t.left}px`:`${t.right-e.right}px`,i[r.availableHeight]=`${t.height}px`),i}function We(e,t,n,r={sideOffset:0,alignOffset:0}){let{side:i,align:a}=n,{sideOffset:o,alignOffset:s}=r,c=0,l=0;return i===`top`?c=e.top-t.height-o:i===`bottom`?c=e.bottom+o:l=i===`left`?e.left-t.width-o:e.right+o,i===`top`||i===`bottom`?l=a===`start`?e.left+s:a===`end`?e.right-t.width+s:e.left+(e.width-t.width)/2+s:c=a===`start`?e.top+s:a===`end`?e.bottom-t.height+s:e.top+(e.height-t.height)/2+s,{top:`${c}px`,left:`${l}px`}}function Ge(e,t=G){let n=getComputedStyle(e);return{sideOffset:ce(e,n.getPropertyValue(t.sideOffset)),alignOffset:ce(e,n.getPropertyValue(t.alignOffset))}}function Ke(e){let t=e.getBoundingClientRect(),n=e.offsetWidth||t.width,r=e.offsetHeight||t.height,i={...t,width:n,height:r,right:t.left+n,bottom:t.top+r};return{...i,toJSON:()=>i}}function K(e,t,n){return Math.max(t,Math.min(n,e))}function q(e,t,n){let r=Math.round((e-n)/t)*t+n,i=`${t}`.indexOf(`.`);return i===-1?r:Number(r.toFixed(`${t}`.length-i-1))}function J(e,t,n,r){let i;return i=n===`vertical`?1-(e.clientY-t.top)/t.height:r?(t.right-e.clientX)/t.width:(e.clientX-t.left)/t.width,Number.isFinite(i)?K(i*100,0,100):0}function qe(e){let t=w({pointerPercent:0,dragPercent:0,dragging:!1,pointing:!1,focused:!1}),r=new AbortController,i=e.commitThrottle??0,a=!1,o=0,s=!1,c=null,l=null,u=i>0?x(t=>e.onValueCommit?.(t),i):null;function d(){if(n(l))return;let t=l;l=null;try{e.getElement().releasePointerCapture(t)}catch{}}function f(){a?(a=!1,t.patch({dragging:!1,pointing:!1}),e.onDragEnd?.()):t.patch({pointing:!1}),p()}function p(){u?.cancel(),l=null,c=null}let m={onPointerDown(n){if(e.isDisabled())return;n.preventDefault();let r=e.getElement();c=r.getBoundingClientRect(),s=e.isRTL(),o=0,d(),l=n.pointerId,r.setPointerCapture(n.pointerId);let i=J(n,c,e.getOrientation(),s);t.patch({pointing:!0,pointerPercent:i,dragPercent:i}),e.onValueChange?.(i),e.getThumbElement?.()?.focus({preventScroll:!0,focusVisible:!1})},onPointerMove(r){if(e.isDisabled())return;if(!n(l)){if(r.pointerType!==`touch`&&r.buttons===0){f();return}o++;let n=J(r,c,e.getOrientation(),s);!a&&o>=2?(a=!0,t.patch({dragging:!0,dragPercent:n,pointerPercent:n}),e.onDragStart?.(),e.onValueChange?.(n),u?.(n)):a?(t.patch({dragPercent:n,pointerPercent:n}),e.onValueChange?.(n),u?.(n)):t.patch({pointerPercent:n});return}let i=J(r,e.getElement().getBoundingClientRect(),e.getOrientation(),e.isRTL());t.patch({pointing:!0,pointerPercent:i})},onPointerUp(t){if(n(l))return;let r=J(t,c,e.getOrientation(),s);u?.cancel(),e.onValueCommit?.(r)},onPointerLeave(){n(l)&&t.patch({pointing:!1})},onLostPointerCapture(){f()}},h={onKeyDown(n){if(e.isDisabled()){n.key!==`Tab`&&n.preventDefault();return}let r=e.getStepPercent(),i=e.getLargeStepPercent(),a=q(e.getPercent(),r,0),o=e.isRTL()?-1:1,s=n.shiftKey?i:r,c=null;switch(n.key){case`ArrowRight`:c=a+s*o;break;case`ArrowLeft`:c=a-s*o;break;case`ArrowUp`:c=a+s;break;case`ArrowDown`:c=a-s;break;case`PageUp`:c=a+i;break;case`PageDown`:c=a-i;break;case`Home`:c=0;break;case`End`:c=100;break;default:!n.metaKey&&!n.ctrlKey&&!n.altKey&&n.key>=`0`&&n.key<=`9`&&(c=Number(n.key)*10);break}c!==null&&(n.preventDefault(),c=K(c,0,100),t.patch({pointerPercent:c,dragPercent:c}),e.onValueChange?.(c),e.onValueCommit?.(c))},onFocus(){t.patch({focused:!0})},onBlur(){t.patch({focused:!1})}};function g(t){if(!e.adjustPercent||t.thumbAlignment!==`edge`)return t;let n=e.getElement(),r=e.getThumbElement?.();if(!r)return t;let i=t.orientation===`horizontal`,a=i?r.offsetWidth:r.offsetHeight,o=i?n.offsetWidth:n.offsetHeight;return{...t,fillPercent:e.adjustPercent(t.fillPercent,a,o),pointerPercent:e.adjustPercent(t.pointerPercent,a,o)}}let _=null;return e.onResize&&(_=new ResizeObserver(()=>e.onResize()),_.observe(e.getElement())),{input:t,rootProps:m,rootStyle:{touchAction:`none`,userSelect:`none`},thumbProps:h,adjustForAlignment:g,destroy(){r.signal.aborted||(r.abort(),_?.disconnect(),d(),p())}}}const Y={fill:`--media-slider-fill`,pointer:`--media-slider-pointer`,buffer:`--media-slider-buffer`};function Je(e){return{[Y.fill]:`${e.fillPercent.toFixed(3)}%`,[Y.pointer]:`${e.pointerPercent.toFixed(3)}%`}}function Ye(e){return{...Je(e),[Y.buffer]:`${e.bufferPercent.toFixed(3)}%`}}function Xe(e,t){let n=e/2;return{position:`absolute`,left:t===`visible`?`calc(var(${Y.pointer}) - ${n}px)`:`min(max(0px, calc(var(${Y.pointer}) - ${n}px)), calc(100% - ${e}px))`,width:`max-content`,pointerEvents:`none`}}var Ze=class{findActiveThumbnail(e,t){if(e.length===0)return;let n=0,r=e.length-1,i;for(;n<=r;){let a=n+r>>>1,o=e[a];t>=o.startTime?(i=o,n=a+1):r=a-1}return i}parseConstraints(e){let t=parseFloat(e.minWidth),n=parseFloat(e.maxWidth),r=parseFloat(e.minHeight),i=parseFloat(e.maxHeight);return{minWidth:Number.isFinite(t)?t:0,maxWidth:Number.isFinite(n)?n:1/0,minHeight:Number.isFinite(r)?r:0,maxHeight:Number.isFinite(i)?i:1/0}}calculateScale(e,t,n){let{minWidth:r,maxWidth:i,minHeight:a,maxHeight:o}=n,s=Math.min(i/e,o/t),c=Math.max(r/e,a/t);return Number.isFinite(s)&&s<1?s:Number.isFinite(c)&&c>1?c:1}resize(e,t,n,r){let i=e.width??t,a=e.height??n;if(!i||!a)return;let o=this.calculateScale(i,a,r),s=e.coords?.x??0,c=e.coords?.y??0,l=o===1?0:1;return{scale:o,containerWidth:Math.max(0,Math.floor(i*o)-l*2),containerHeight:Math.max(0,Math.floor(a*o)-l*2),imageWidth:Math.ceil(t*o),imageHeight:Math.ceil(n*o),offsetX:Math.ceil(s*o)+l,offsetY:Math.ceil(c*o)+l}}getState(e,t,n){return{loading:e,error:t,hidden:!e&&!n}}getAttrs(e){return{role:`img`,"aria-hidden":`true`}}};function Qe(e){let{getContainer:t,getImg:n,onStateChange:r}=e,a=new Ze,o=new AbortController,s=o.signal,c=!1,l=!1,u=0,d=0,f=``,p=!1,m=null;function h(){let e=n();e&&(u=e.naturalWidth,d=e.naturalHeight),c=!1,l=!1,r()}function g(){c=!1,l=!0,r()}function _(e){i(e,`load`,h,{signal:s}),i(e,`error`,g,{signal:s})}function v(){if(!p){let e=n();e&&(_(e),p=!0)}if(!m){let e=t();e&&(m=new ResizeObserver(r),m.observe(e))}}function y(e){v();let t=e??``;t!==f&&(f=t,t?(c=!0,l=!1):(c=!1,l=!1,u=0,d=0))}function b(){v();let e=n();e?.complete&&f&&(e.naturalWidth>0?(u=e.naturalWidth,d=e.naturalHeight,c=!1,l=!1):(c=!1,l=!0),r())}function x(){o.abort(),m?.disconnect(),m=null}return{get loading(){return c},get error(){return l},get naturalWidth(){return u},get naturalHeight(){return d},readConstraints(){let e=t();return e?a.parseConstraints(getComputedStyle(e)):{minWidth:0,maxWidth:1/0,minHeight:0,maxHeight:1/0}},updateSrc:y,connect:b,destroy:x}}const $e={hover:`hover`,focus:`focus`,escape:`escape`,blur:`blur`};function et(e){let t={transition:e.transition,onOpenChange(t,n){let r=$e[n.reason];if(!r)return;let i=e.group?.();t?i?.notifyOpen():i?.notifyClose();let a=n.event?{reason:r,event:n.event}:{reason:r};e.onOpenChange(t,a)},closeOnEscape:()=>!0,closeOnOutsideClick:()=>!1,openOnHover:()=>!0,delay:()=>{let t=e.group?.();return t?.shouldSkipDelay()?0:e.delay?.()??t?.delay??600},closeDelay:()=>{let t=e.group?.();return e.closeDelay?.()??t?.closeDelay??0}};e.onOpenChangeComplete&&(t.onOpenChangeComplete=e.onOpenChangeComplete);let n=W(t),r=!1,{onClick:i,...a}=n.triggerProps,o={...a,onPointerDown(){r=!0},onPointerEnter(t){e.disabled?.()||t.pointerType!==`touch`&&a.onPointerEnter(t)},onFocusIn(t){if(!e.disabled?.()){if(r){r=!1;return}a.onFocusIn(t)}}},s={...n.popupProps,onPointerEnter(t){e.disableHoverablePopup?.()||n.popupProps.onPointerEnter(t)}};return{...n,triggerProps:o,popupProps:s,get triggerElement(){return n.triggerElement},open:()=>n.open(`hover`),close:()=>n.close(`hover`)}}function tt(){let e=w({active:!1,status:`idle`}),t=!1,n=0,r=0;function i(){return cancelAnimationFrame(n),cancelAnimationFrame(r),n=0,r=0,e.patch({active:!0,status:`starting`}),new Promise(i=>{n=requestAnimationFrame(()=>{n=0,r=requestAnimationFrame(()=>{if(r=0,t||!e.current.active)return i();e.patch({status:`idle`}),i()})})})}function a(i){return cancelAnimationFrame(n),cancelAnimationFrame(r),n=0,r=0,e.patch({status:`ending`}),new Promise(a=>{n=requestAnimationFrame(()=>{n=0,r=requestAnimationFrame(()=>{if(r=0,t)return a();nt(i).finally(()=>{if(t||e.current.status!==`ending`)return a();e.patch({active:!1,status:`idle`}),a()})})})})}function o(){cancelAnimationFrame(n),cancelAnimationFrame(r),n=0,r=0,e.current.status!==`idle`&&e.patch({status:`idle`})}return{state:e,open:i,close:a,cancel:o,destroy(){t||(t=!0,o())}}}function nt(e){if(!e)return Promise.resolve();let t=e.getAnimations?.()??[];return t.length===0?Promise.resolve():Promise.all(t.map(e=>e.finished)).then(b,b)}function rt(e,n,a){let o=a?.signal;for(let[a,s]of Object.entries(n))r(s)&&a.startsWith(`on`)?i(e,a.slice(2).toLowerCase(),s,o?{signal:o}:void 0):t(s)||s===!1?e.removeAttribute(a):s===!0?e.setAttribute(a,``):e.setAttribute(a,String(s))}function it(e,t,n){for(let r in t){if(n&&!(r in n))continue;let i=n?.[r]??at(r),a=t[r];a===!0?e.setAttribute(i,``):a?e.setAttribute(i,String(a)):e.removeAttribute(i)}}function at(e){return`data-${e.toLowerCase()}`}
|
|
2
|
+
/**
|
|
3
|
+
* @license
|
|
4
|
+
* Copyright 2021 Google LLC
|
|
5
|
+
* SPDX-License-Identifier: BSD-3-Clause
|
|
6
|
+
*/var X=class{constructor(e,t,n,r){if(this.subscribe=!1,this.provided=!1,this.value=void 0,this.t=(e,t)=>{this.unsubscribe&&(this.unsubscribe!==t&&(this.provided=!1,this.unsubscribe()),this.subscribe||this.unsubscribe()),this.value=e,this.host.requestUpdate(),this.provided&&!this.subscribe||(this.provided=!0,this.callback&&this.callback(e,t)),this.unsubscribe=t},this.host=e,t.context!==void 0){let e=t;this.context=e.context,this.callback=e.callback,this.subscribe=e.subscribe??!1}else this.context=t,this.callback=n,this.subscribe=r??!1;this.host.addController(this)}hostConnected(){this.dispatchRequest()}hostDisconnected(){this.unsubscribe&&=(this.unsubscribe(),void 0)}dispatchRequest(){this.host.dispatchEvent(new a(this.context,this.host,this.t,this.subscribe))}},ot=class{get value(){return this.o}set value(e){this.setValue(e)}setValue(e,t=!1){let n=t||!Object.is(e,this.o);this.o=e,n&&this.updateObservers()}constructor(e){this.subscriptions=new Map,this.updateObservers=()=>{for(let[e,{disposer:t}]of this.subscriptions)e(this.o,t)},e!==void 0&&(this.value=e)}addCallback(e,t,n){if(!n)return void e(this.value);this.subscriptions.has(e)||this.subscriptions.set(e,{disposer:()=>{this.subscriptions.delete(e)},consumerHost:t});let{disposer:r}=this.subscriptions.get(e);e(this.value,r)}clearCallbacks(){this.subscriptions.clear()}},st=class extends Event{constructor(e,t){super(`context-provider`,{bubbles:!0,composed:!0}),this.context=e,this.contextTarget=t}},Z=class extends ot{constructor(e,t,n){super(t.context===void 0?n:t.initialValue),this.onContextRequest=e=>{if(e.context!==this.context)return;let t=e.contextTarget??e.composedPath()[0];t!==this.host&&(e.stopPropagation(),this.addCallback(e.callback,t,e.subscribe))},this.onProviderRequest=e=>{if(e.context!==this.context||(e.contextTarget??e.composedPath()[0])===this.host)return;let t=new Set;for(let[e,{consumerHost:n}]of this.subscriptions)t.has(e)||(t.add(e),n.dispatchEvent(new a(this.context,n,e,!0)));e.stopPropagation()},this.host=e,t.context===void 0?this.context=t:this.context=t.context,this.attachListeners(),this.host.addController?.(this)}attachListeners(){this.host.addEventListener(`context-request`,this.onContextRequest),this.host.addEventListener(`context-provider`,this.onProviderRequest)}hostConnected(){this.host.dispatchEvent(new st(this.context,this.host))}};function ct(e){return t=>{class n extends t{#e=null;#t=null;constructor(...t){super(...t),new X(this,{context:e.playerContext,callback:e=>{this.#e=e??null},subscribe:!0}),new X(this,{context:e.containerContext,callback:e=>{this.#t=e?.setContainer??null,this.isConnected&&this.#t?.(this)},subscribe:!0})}get store(){return this.#e}connectedCallback(){super.connectedCallback(),this.#t?.(this)}disconnectedCallback(){super.disconnectedCallback(),this.#t?.(null)}}return n}}function lt(e){class t extends e{#e=!1;#t=new Set;get destroyed(){return this.#e}destroy(){this.#e||(this.#e=!0,this.destroyCallback())}destroyCallback(){for(let e of this.#t)e.hostDestroyed?.()}addController(e){super.addController(e),this.#t.add(e)}removeController(e){super.removeController(e),this.#t.delete(e)}connectedCallback(){this.#e||super.connectedCallback()}disconnectedCallback(){super.disconnectedCallback(),!this.#e&&!this.hasAttribute(`keep-alive`)&&requestAnimationFrame(()=>{requestAnimationFrame(()=>{this.isConnected||this.destroy()})})}performUpdate(){this.#e||super.performUpdate()}}return t}const ut=new WeakMap,dt=new Map;var ft=class extends HTMLElement{static{this.properties={}}static get observedAttributes(){return[...Q(this).attrToProp.keys()]}#e=new Set;#t=new Map;#n;#r;constructor(){super(),this.isUpdatePending=!1,this.hasUpdated=!1,this.#r=new Promise(e=>this.enableUpdating=e);let{props:e}=Q(this.constructor);for(let t of e.keys())Object.hasOwn(this,t)&&((this.#n??=new Map).set(t,this[t]),delete this[t]);this.requestUpdate()}enableUpdating(e){}addController(e){this.#e.add(e),this.isConnected&&e.hostConnected?.()}removeController(e){this.#e.delete(e)}connectedCallback(){this.enableUpdating(!0);for(let e of this.#e)e.hostConnected?.()}disconnectedCallback(){for(let e of this.#e)e.hostDisconnected?.()}attributeChangedCallback(e,t,n){if(t===n)return;let{props:r,attrToProp:i}=Q(this.constructor),a=i.get(e);if(!a)return;let o=r.get(a);if(!o)return;let s=n;o.type===Boolean?s=n!==null:o.type===Number&&(s=n===null?null:Number(n)),this[a]=s}requestUpdate(e,t){e!==void 0&&this.#t.set(e,t),!this.isUpdatePending&&(this.#r=this.#i())}async#i(){this.isUpdatePending=!0;try{await this.#r}catch(e){Promise.reject(e)}let e=this.scheduleUpdate();return e!=null&&await e,!this.isUpdatePending}scheduleUpdate(){this.performUpdate()}performUpdate(){if(!this.isUpdatePending)return;if(!this.hasUpdated&&this.#n){for(let[e,t]of this.#n)this[e]=t;this.#n=void 0}let e=this.#t;this.willUpdate(e);for(let e of this.#e)e.hostUpdate?.();this.update(e),this.#t=new Map,this.isUpdatePending=!1;for(let e of this.#e)e.hostUpdated?.();this.hasUpdated||(this.hasUpdated=!0,this.firstUpdated(e)),this.updated(e)}willUpdate(e){}update(e){}firstUpdated(e){}updated(e){}get updateComplete(){return this.#r}};function Q(e){let t=ut.get(e);if(t)return t;let n=new Map,r=new Map;for(let[t,i]of Object.entries(e.properties))if(n.set(t,i),r.set(i.attribute??t,t),!Object.getOwnPropertyDescriptor(e.prototype,t)?.get){let n=dt.get(t);n||(n=Symbol(t),dt.set(t,n)),Object.defineProperty(e.prototype,t,{get(){return this[n]},set(e){let r=this[n];this[n]=e,Object.is(r,e)||this.requestUpdate(t,r)},configurable:!0,enumerable:!0})}let i={props:n,attrToProp:r};return ut.set(e,i),i}var $=class extends lt(ft){};const pt=ct({playerContext:s,containerContext:c});var mt=class extends pt($){static{this.tagName=`media-container`}};function ht(e){return t=>{class r extends t{#e=e.factory();#t=null;#n=null;#r=null;#i=!1;#a=e=>{this.#n!==e&&(this.#n=e,this.#c.setValue({media:e,setMedia:this.#a}),this.#u())};#o=e=>{this.#r!==e&&(this.#r=e,this.#l.setValue({container:e,setContainer:this.#o}),this.#u())};#s=new Z(this,{context:e.playerContext,initialValue:this.store});#c=new Z(this,{context:e.mediaContext,initialValue:{media:this.#n,setMedia:this.#a}});#l=new Z(this,{context:e.containerContext,initialValue:{container:this.#r,setContainer:this.#o}});get store(){return n(this.#e)&&(this.#e=e.factory()),this.#e}connectedCallback(){super.connectedCallback(),this.#s.setValue(this.store),this.#c.setValue({media:this.#n,setMedia:this.#a}),this.#l.setValue({container:this.#r,setContainer:this.#o}),this.#u(),this.#f()}disconnectedCallback(){super.disconnectedCallback(),this.#d()}destroyCallback(){this.#d(),this.#e?.destroy(),this.#e=null,super.destroyCallback()}#u(){let e=this.#e;if(!e)return;if(!this.#n){this.#d();return}let t={media:this.#n,container:this.#r},n=e.target?.media!==t.media,r=e.target?.container!==t.container;(n||r)&&(this.#d(),this.#t=e.attach(t))}#d(){this.#t?.(),this.#t=null}#f(){this.#n||this.#i||(this.#i=!0,queueMicrotask(()=>{if(this.#i=!1,this.#n)return;let e=this.querySelector(`video, audio`);e&&this.#a(e)}))}}return r}}var gt=class{#e;#t;#n;#r;#i=b;constructor(e,t,n){this.#e=e,this.#n=t,this.#t=n,e.addController(this)}get value(){return this.#t?(this.#r??=this.#t(this.#n.current),this.#r):this.#n.current}track(e){this.#n=e,this.#a()}hostConnected(){this.#a()}hostDisconnected(){this.#i(),this.#i=b,this.#r=void 0}#a(){if(this.#i(),!this.#t){this.#i=this.#n.subscribe(()=>this.#e.requestUpdate());return}let e=this.#t;this.#r=e(this.#n.current),this.#i=this.#n.subscribe(()=>{let t=e(this.#n.current);v(this.#r,t)||(this.#r=t,this.#e.requestUpdate())})}},_t=class{#e;#t;#n;constructor(e,t,n){this.#e=n??b,ae(t)?(this.#n=t,this.#t=null):(this.#n=null,this.#t=new X(e,{context:t,callback:e=>this.#e(e),subscribe:!1})),e.addController(this)}get value(){return this.#t?this.#t.value??null:this.#n}hostConnected(){this.#n&&this.#e(this.#n)}},vt=class{#e;#t;#n;#r=null;constructor(e,t,n){this.#e=e,this.#t=n,this.#n=new _t(e,t,e=>this.#i(e)),e.addController(this)}get value(){let e=this.#n.value;if(n(e))throw Error(`Store not available`);return t(this.#t)?e:this.#r.value}hostConnected(){}#i(e){t(this.#t)||(this.#r?this.#r.track(e.$state):this.#r=new gt(this.#e,e.$state,this.#t))}},yt=class{#e;#t;#n;#r=null;constructor(e,t,n){this.#e=e,this.#t=n,this.#n=new X(e,{context:t,callback:e=>this.#i(e),subscribe:!0}),e.addController(this)}get value(){let e=this.#n.value;if(e)return this.#t?this.#r?.value:e}get displayName(){return this.#t?.displayName}hostConnected(){let e=this.#n.value;e&&this.#i(e)}hostDisconnected(){this.#r=null}#i(e){!this.#r&&this.#t&&(this.#r=new vt(this.#e,e,this.#t))}};function bt(e){let t=u(...e.features);function n(){return ie()(t)}return{context:s,create:n,PlayerController:yt,ProviderMixin:ht({playerContext:s,mediaContext:o,containerContext:c,factory:n}),ContainerMixin:ct({playerContext:s,containerContext:c})}}export{je as A,A as B,Ke as C,Oe as D,Re as E,Ie as F,O as H,Ee as I,De as L,Ne as M,Pe as N,ke as O,Fe as P,Te as R,Be as S,W as T,w as U,k as V,Ye as _,$ as a,q as b,X as c,tt as d,et as f,Xe as g,Je as h,mt as i,Me as j,Ae as k,it as l,Ze as m,yt as n,ft as o,Qe as p,gt as r,Z as s,bt as t,rt as u,qe as v,Ge as w,Ve as x,K as y,se as z};
|
|
7
|
+
//# sourceMappingURL=create-player-BTIU8EwT.js.map
|