@videojs/html 10.0.0-rc.3 → 10.0.0-rc.5
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/dist/default/define/audio/compat-skin.css +1923 -0
- package/dist/default/define/audio/compat-skin.js +6 -0
- package/dist/default/define/audio/compat-skin2.js +4 -0
- package/dist/default/define/audio/neutral-skin.css +1855 -0
- package/dist/default/define/audio/neutral-skin.js +6 -0
- package/dist/default/define/audio/neutral-skin2.js +4 -0
- package/dist/default/define/audio/{minimal-ui.js → neutral-ui.js} +1 -1
- package/dist/default/define/audio/skin.css +1220 -1411
- package/dist/default/define/audio/skin2.js +1 -1
- package/dist/default/define/background/skin.css +8 -19
- package/dist/default/define/global.css +5 -21
- package/dist/default/define/live-audio/compat-skin.css +1708 -0
- package/dist/default/define/live-audio/compat-skin.js +6 -0
- package/dist/default/define/live-audio/compat-skin2.js +4 -0
- package/dist/default/define/live-audio/neutral-skin.css +1270 -0
- package/dist/default/define/live-audio/neutral-skin.js +6 -0
- package/dist/default/define/live-audio/neutral-skin2.js +4 -0
- package/dist/default/define/live-audio/{minimal-ui.js → neutral-ui.js} +1 -1
- package/dist/default/define/live-audio/skin.css +849 -959
- package/dist/default/define/live-audio/skin2.js +1 -1
- package/dist/default/define/live-video/compat-skin.css +2251 -0
- package/dist/default/define/live-video/compat-skin.js +6 -0
- package/dist/default/define/live-video/compat-skin2.js +4 -0
- package/dist/default/define/live-video/neutral-skin.css +2101 -0
- package/dist/default/define/live-video/neutral-skin.js +6 -0
- package/dist/default/define/live-video/neutral-skin2.js +4 -0
- package/dist/default/define/live-video/{minimal-ui.js → neutral-ui.js} +1 -1
- package/dist/default/define/live-video/skin.css +1565 -1784
- package/dist/default/define/live-video/skin2.js +1 -1
- package/dist/default/define/media/dash-video.js +5 -1
- package/dist/default/define/media/shaka-video.js +1 -0
- package/dist/default/define/shadow.css +2 -12
- package/dist/default/define/video/compat-skin.css +2529 -0
- package/dist/default/define/video/compat-skin.js +6 -0
- package/dist/default/define/video/compat-skin2.js +4 -0
- package/dist/default/define/video/neutral-skin.css +2849 -0
- package/dist/default/define/video/neutral-skin.js +6 -0
- package/dist/default/define/video/neutral-skin2.js +4 -0
- package/dist/default/define/video/{minimal-ui.js → neutral-ui.js} +1 -1
- package/dist/default/define/video/skin.css +2046 -2454
- package/dist/default/define/video/skin2.js +1 -1
- package/dist/default/extensions/google-cast/extension.js +18 -17
- package/dist/default/extensions/mux-data/extension.js +24 -24
- package/dist/default/extensions/player-extension-element.js +49 -0
- package/dist/default/i18n/index.js +2 -2
- package/dist/default/i18n/locale.js +10 -2
- package/dist/default/i18n/provider-element.js +1 -0
- package/dist/default/i18n/provider-mixin.js +11 -9
- package/dist/default/i18n/render-text.js +5 -1
- package/dist/default/i18n/text/airplay.js +1 -0
- package/dist/default/i18n/text/buttons.js +1 -0
- package/dist/default/i18n/text/captions.js +1 -0
- package/dist/default/i18n/text/cast.js +1 -0
- package/dist/default/i18n/text/common.js +1 -0
- package/dist/default/i18n/text/container.js +1 -0
- package/dist/default/i18n/text/errors.js +1 -0
- package/dist/default/i18n/text/fullscreen.js +1 -0
- package/dist/default/i18n/text/live.js +1 -0
- package/dist/default/i18n/text/menu.js +1 -0
- package/dist/default/i18n/text/pip.js +1 -0
- package/dist/default/i18n/text/playback.js +1 -0
- package/dist/default/i18n/text/seek.js +1 -0
- package/dist/default/i18n/text/slider.js +1 -0
- package/dist/default/i18n/text/status.js +1 -0
- package/dist/default/i18n/text/time.js +1 -0
- package/dist/default/i18n/text/volume.js +1 -0
- package/dist/default/icons/compat/index.js +26 -0
- package/dist/default/icons/dist/element/compat/icons.js +30 -0
- package/dist/default/icons/dist/element/{minimal → compat}/index.js +2 -2
- package/dist/default/icons/dist/element/index.js +2 -1
- package/dist/default/icons/dist/element/{minimal → neutral}/icons.js +1 -1
- package/dist/default/icons/dist/element/neutral/index.js +8 -0
- package/dist/default/icons/dist/html/compat/airplay-enter.js +4 -0
- package/dist/default/icons/dist/html/compat/airplay-exit.js +4 -0
- package/dist/default/icons/dist/html/compat/captions-off.js +4 -0
- package/dist/default/icons/dist/html/compat/captions-on.js +4 -0
- package/dist/default/icons/dist/html/compat/cast-enter.js +4 -0
- package/dist/default/icons/dist/html/compat/cast-exit.js +4 -0
- package/dist/default/icons/dist/html/compat/check.js +4 -0
- package/dist/default/icons/dist/html/compat/chevron.js +4 -0
- package/dist/default/icons/dist/html/compat/fullscreen-enter.js +4 -0
- package/dist/default/icons/dist/html/compat/fullscreen-exit.js +4 -0
- package/dist/default/icons/dist/html/compat/gear.js +4 -0
- package/dist/default/icons/dist/html/compat/pause.js +4 -0
- package/dist/default/icons/dist/html/compat/pip-enter.js +4 -0
- package/dist/default/icons/dist/html/compat/pip-exit.js +4 -0
- package/dist/default/icons/dist/html/compat/play.js +4 -0
- package/dist/default/icons/dist/html/compat/quality.js +4 -0
- package/dist/default/icons/dist/html/compat/restart.js +4 -0
- package/dist/default/icons/dist/html/compat/seek.js +4 -0
- package/dist/default/icons/dist/html/compat/speech.js +4 -0
- package/dist/default/icons/dist/html/compat/speed.js +4 -0
- package/dist/default/icons/dist/html/{minimal → compat}/spinner.js +1 -1
- package/dist/default/icons/dist/html/compat/switches.js +4 -0
- package/dist/default/icons/dist/html/compat/volume-high.js +4 -0
- package/dist/default/icons/dist/html/compat/volume-low.js +4 -0
- package/dist/default/icons/dist/html/compat/volume-off.js +4 -0
- package/dist/default/icons/dist/html/{minimal → neutral}/airplay-enter.js +1 -1
- package/dist/default/icons/dist/html/{minimal → neutral}/airplay-exit.js +1 -1
- package/dist/default/icons/dist/html/{minimal → neutral}/captions-off.js +1 -1
- package/dist/default/icons/dist/html/{minimal → neutral}/captions-on.js +1 -1
- package/dist/default/icons/dist/html/{minimal → neutral}/cast-enter.js +1 -1
- package/dist/default/icons/dist/html/{minimal → neutral}/cast-exit.js +1 -1
- package/dist/default/icons/dist/html/{minimal → neutral}/check.js +1 -1
- package/dist/default/icons/dist/html/{minimal → neutral}/chevron.js +1 -1
- package/dist/default/icons/dist/html/{minimal → neutral}/fullscreen-enter.js +1 -1
- package/dist/default/icons/dist/html/{minimal → neutral}/fullscreen-exit.js +1 -1
- package/dist/default/icons/dist/html/{minimal → neutral}/gear.js +1 -1
- package/dist/default/icons/dist/html/{minimal → neutral}/pause.js +1 -1
- package/dist/default/icons/dist/html/{minimal → neutral}/pip-enter.js +1 -1
- package/dist/default/icons/dist/html/{minimal → neutral}/pip-exit.js +1 -1
- package/dist/default/icons/dist/html/{minimal → neutral}/play.js +1 -1
- package/dist/default/icons/dist/html/{minimal → neutral}/quality.js +1 -1
- package/dist/default/icons/dist/html/{minimal → neutral}/restart.js +1 -1
- package/dist/default/icons/dist/html/{minimal → neutral}/seek.js +1 -1
- package/dist/default/icons/dist/html/{minimal → neutral}/speech.js +1 -1
- package/dist/default/icons/dist/html/{minimal → neutral}/speed.js +1 -1
- package/dist/default/icons/dist/html/neutral/spinner.js +4 -0
- package/dist/default/icons/dist/html/{minimal → neutral}/switches.js +1 -1
- package/dist/default/icons/dist/html/{minimal → neutral}/volume-high.js +1 -1
- package/dist/default/icons/dist/html/{minimal → neutral}/volume-low.js +1 -1
- package/dist/default/icons/dist/html/{minimal → neutral}/volume-off.js +1 -1
- package/dist/default/icons/element/compat/index.js +1 -0
- package/dist/default/icons/element/neutral/index.js +1 -0
- package/dist/default/icons/neutral/index.js +26 -0
- package/dist/default/index.js +4 -3
- package/dist/default/internal/skins/compat-audio/register.js +70 -0
- package/dist/default/internal/skins/compat-audio/skin.css +1891 -0
- package/dist/default/internal/skins/compat-audio/template.js +215 -0
- package/dist/default/internal/skins/compat-live-audio/register.js +50 -0
- package/dist/default/internal/skins/compat-live-audio/skin.css +1676 -0
- package/dist/default/internal/skins/compat-live-audio/template.js +112 -0
- package/dist/default/internal/skins/compat-live-video/register.js +86 -0
- package/dist/default/internal/skins/compat-live-video/skin.css +2219 -0
- package/dist/default/internal/skins/compat-live-video/template.js +237 -0
- package/dist/default/internal/skins/compat-video/register.js +115 -0
- package/dist/default/internal/skins/compat-video/skin.css +2497 -0
- package/dist/default/internal/skins/compat-video/template.js +457 -0
- package/dist/default/internal/skins/default-audio/register.js +8 -8
- package/dist/default/internal/skins/default-audio/skin.css +1213 -1365
- package/dist/default/internal/skins/default-live-audio/register.js +4 -4
- package/dist/default/internal/skins/default-live-audio/skin.css +842 -913
- package/dist/default/internal/skins/default-live-video/register.js +8 -8
- package/dist/default/internal/skins/default-live-video/skin.css +1548 -1728
- package/dist/default/internal/skins/default-video/register.js +13 -13
- package/dist/default/internal/skins/default-video/skin.css +2034 -2403
- package/dist/default/internal/skins/{minimal-audio → neutral-audio}/register.js +20 -20
- package/dist/default/internal/skins/neutral-audio/skin.css +1823 -0
- package/dist/default/internal/skins/{minimal-audio → neutral-audio}/template.js +24 -24
- package/dist/default/internal/skins/{minimal-live-audio → neutral-live-audio}/register.js +13 -13
- package/dist/default/internal/skins/neutral-live-audio/skin.css +1238 -0
- package/dist/default/internal/skins/{minimal-live-audio → neutral-live-audio}/template.js +14 -14
- package/dist/default/internal/skins/{minimal-live-video → neutral-live-video}/register.js +28 -28
- package/dist/default/internal/skins/neutral-live-video/skin.css +2069 -0
- package/dist/default/internal/skins/{minimal-live-video → neutral-live-video}/template.js +47 -47
- package/dist/default/internal/skins/{minimal-video → neutral-video}/register.js +40 -40
- package/dist/default/internal/skins/neutral-video/skin.css +2817 -0
- package/dist/default/internal/skins/{minimal-video → neutral-video}/template.js +75 -75
- package/dist/default/player/context.js +9 -1
- package/dist/default/player/create-player.js +2 -1
- package/dist/default/player/element.js +47 -10
- package/dist/default/presets/audio/compat-skin.js +19 -0
- package/dist/default/presets/audio/index.js +3 -2
- package/dist/default/presets/audio/neutral-skin.js +19 -0
- package/dist/default/presets/live-audio/compat-skin.js +19 -0
- package/dist/default/presets/live-audio/index.js +3 -2
- package/dist/default/presets/live-audio/neutral-skin.js +19 -0
- package/dist/default/presets/live-video/compat-skin.js +19 -0
- package/dist/default/presets/live-video/index.js +3 -2
- package/dist/default/presets/live-video/neutral-skin.js +19 -0
- package/dist/default/presets/video/compat-skin.js +19 -0
- package/dist/default/presets/video/index.js +3 -2
- package/dist/default/presets/video/neutral-skin.js +19 -0
- package/dist/default/store/media-attach-mixin.js +2 -0
- package/dist/default/ui/airplay-button/element.js +1 -1
- package/dist/default/ui/buffering-indicator/element.js +4 -0
- package/dist/default/ui/dialog/context.js +1 -0
- package/dist/default/ui/dialog/element.js +4 -2
- package/dist/default/ui/media-button-element.js +7 -6
- package/dist/default/ui/media-ui-element.js +6 -1
- package/dist/default/ui/menu/context.js +2 -0
- package/dist/default/ui/play-button/element.js +1 -1
- package/dist/default/ui/playback-rate-button/element.js +4 -2
- package/dist/default/ui/popover/element.js +4 -2
- package/dist/default/ui/radio-group/context.js +1 -0
- package/dist/default/ui/seek-indicator/element.js +7 -1
- package/dist/default/ui/slider/context.js +1 -0
- package/dist/default/ui/status-indicator/element.js +14 -1
- package/dist/default/ui/text/element.js +1 -0
- package/dist/default/ui/thumbnail/element.js +3 -2
- package/dist/default/ui/tooltip/context.js +1 -0
- package/dist/default/ui/tooltip/element.js +4 -2
- package/dist/default/ui/volume-popover/element.js +1 -1
- package/dist/default/ui/volume-slider/element.js +1 -1
- package/dist/default/version.js +27 -0
- package/dist/dev/define/audio/compat-skin.css +1923 -0
- package/dist/dev/define/audio/compat-skin.d.ts +1 -0
- package/dist/dev/define/audio/compat-skin.js +8 -0
- package/dist/dev/define/audio/compat-skin.js.map +1 -0
- package/dist/dev/define/audio/compat-skin2.js +6 -0
- package/dist/dev/define/audio/compat-skin2.js.map +1 -0
- package/dist/dev/define/audio/neutral-skin.css +1855 -0
- package/dist/dev/define/audio/neutral-skin.d.ts +1 -0
- package/dist/dev/define/audio/neutral-skin.js +8 -0
- package/dist/dev/define/audio/neutral-skin.js.map +1 -0
- package/dist/dev/define/audio/neutral-skin2.js +6 -0
- package/dist/dev/define/audio/neutral-skin2.js.map +1 -0
- package/dist/dev/define/audio/{minimal-ui.js → neutral-ui.js} +2 -2
- package/dist/dev/define/audio/{minimal-ui.js.map → neutral-ui.js.map} +1 -1
- package/dist/dev/define/audio/skin.css +1220 -1411
- package/dist/dev/define/audio/skin2.js +1 -1
- package/dist/dev/define/audio/skin2.js.map +1 -1
- package/dist/dev/define/background/skin.css +8 -19
- package/dist/dev/define/global.css +5 -21
- package/dist/dev/define/live-audio/compat-skin.css +1708 -0
- package/dist/dev/define/live-audio/compat-skin.d.ts +1 -0
- package/dist/dev/define/live-audio/compat-skin.js +8 -0
- package/dist/dev/define/live-audio/compat-skin.js.map +1 -0
- package/dist/dev/define/live-audio/compat-skin2.js +6 -0
- package/dist/dev/define/live-audio/compat-skin2.js.map +1 -0
- package/dist/dev/define/live-audio/neutral-skin.css +1270 -0
- package/dist/dev/define/live-audio/neutral-skin.d.ts +1 -0
- package/dist/dev/define/live-audio/neutral-skin.js +8 -0
- package/dist/dev/define/live-audio/neutral-skin.js.map +1 -0
- package/dist/dev/define/live-audio/neutral-skin2.js +6 -0
- package/dist/dev/define/live-audio/neutral-skin2.js.map +1 -0
- package/dist/dev/define/live-audio/{minimal-ui.js → neutral-ui.js} +2 -2
- package/dist/dev/define/live-audio/{minimal-ui.js.map → neutral-ui.js.map} +1 -1
- package/dist/dev/define/live-audio/skin.css +849 -959
- package/dist/dev/define/live-audio/skin2.js +1 -1
- package/dist/dev/define/live-audio/skin2.js.map +1 -1
- package/dist/dev/define/live-video/compat-skin.css +2251 -0
- package/dist/dev/define/live-video/compat-skin.d.ts +1 -0
- package/dist/dev/define/live-video/compat-skin.js +8 -0
- package/dist/dev/define/live-video/compat-skin.js.map +1 -0
- package/dist/dev/define/live-video/compat-skin2.js +6 -0
- package/dist/dev/define/live-video/compat-skin2.js.map +1 -0
- package/dist/dev/define/live-video/neutral-skin.css +2101 -0
- package/dist/dev/define/live-video/neutral-skin.d.ts +1 -0
- package/dist/dev/define/live-video/neutral-skin.js +8 -0
- package/dist/dev/define/live-video/neutral-skin.js.map +1 -0
- package/dist/dev/define/live-video/neutral-skin2.js +6 -0
- package/dist/dev/define/live-video/neutral-skin2.js.map +1 -0
- package/dist/dev/define/live-video/{minimal-ui.js → neutral-ui.js} +2 -2
- package/dist/dev/define/live-video/{minimal-ui.js.map → neutral-ui.js.map} +1 -1
- package/dist/dev/define/live-video/skin.css +1565 -1784
- package/dist/dev/define/live-video/skin2.js +1 -1
- package/dist/dev/define/live-video/skin2.js.map +1 -1
- package/dist/dev/define/media/background-video.d.ts +1 -2
- package/dist/dev/define/media/cloudflare-video.d.ts +3 -2
- package/dist/dev/define/media/cloudflare-video.js.map +1 -1
- package/dist/dev/define/media/dash-video.d.ts +8 -3
- package/dist/dev/define/media/dash-video.js +5 -1
- package/dist/dev/define/media/dash-video.js.map +1 -1
- package/dist/dev/define/media/hls-audio.d.ts +1 -2
- package/dist/dev/define/media/hls-background-video.d.ts +1 -2
- package/dist/dev/define/media/hls-video.d.ts +1 -2
- package/dist/dev/define/media/hlsjs-video.d.ts +3 -2
- package/dist/dev/define/media/hlsjs-video.js.map +1 -1
- package/dist/dev/define/media/mux-audio/hls-js.d.ts +3 -2
- package/dist/dev/define/media/mux-audio/hls-js.js.map +1 -1
- package/dist/dev/define/media/mux-audio/index.d.ts +2 -2
- package/dist/dev/define/media/mux-audio/spf.d.ts +3 -2
- package/dist/dev/define/media/mux-audio/spf.js.map +1 -1
- package/dist/dev/define/media/mux-background-video.d.ts +1 -2
- package/dist/dev/define/media/mux-video/hls-js.d.ts +3 -2
- package/dist/dev/define/media/mux-video/hls-js.js.map +1 -1
- package/dist/dev/define/media/mux-video/index.d.ts +2 -2
- package/dist/dev/define/media/mux-video/spf.d.ts +3 -2
- package/dist/dev/define/media/mux-video/spf.js.map +1 -1
- package/dist/dev/define/media/native-hls-video.d.ts +3 -2
- package/dist/dev/define/media/native-hls-video.js.map +1 -1
- package/dist/dev/define/media/shaka-video.d.ts +4 -2
- package/dist/dev/define/media/shaka-video.js +1 -0
- package/dist/dev/define/media/shaka-video.js.map +1 -1
- package/dist/dev/define/media/spotify-audio.d.ts +3 -2
- package/dist/dev/define/media/spotify-audio.js.map +1 -1
- package/dist/dev/define/media/tiktok-video.d.ts +3 -2
- package/dist/dev/define/media/tiktok-video.js.map +1 -1
- package/dist/dev/define/media/twitch-video.d.ts +3 -2
- package/dist/dev/define/media/twitch-video.js.map +1 -1
- package/dist/dev/define/media/vimeo-video.d.ts +3 -2
- package/dist/dev/define/media/vimeo-video.js.map +1 -1
- package/dist/dev/define/media/wistia-video.d.ts +3 -2
- package/dist/dev/define/media/wistia-video.js.map +1 -1
- package/dist/dev/define/media/youtube-video.d.ts +3 -2
- package/dist/dev/define/media/youtube-video.js.map +1 -1
- package/dist/dev/define/shadow.css +2 -12
- package/dist/dev/define/ui/menu-radio-group.d.ts +1 -0
- package/dist/dev/define/ui/menu.d.ts +1 -0
- package/dist/dev/define/ui/popover.d.ts +1 -0
- package/dist/dev/define/video/compat-skin.css +2529 -0
- package/dist/dev/define/video/compat-skin.d.ts +1 -0
- package/dist/dev/define/video/compat-skin.js +8 -0
- package/dist/dev/define/video/compat-skin.js.map +1 -0
- package/dist/dev/define/video/compat-skin2.js +6 -0
- package/dist/dev/define/video/compat-skin2.js.map +1 -0
- package/dist/dev/define/video/neutral-skin.css +2849 -0
- package/dist/dev/define/video/neutral-skin.d.ts +1 -0
- package/dist/dev/define/video/neutral-skin.js +8 -0
- package/dist/dev/define/video/neutral-skin.js.map +1 -0
- package/dist/dev/define/video/neutral-skin2.js +6 -0
- package/dist/dev/define/video/neutral-skin2.js.map +1 -0
- package/dist/dev/define/video/{minimal-ui.js → neutral-ui.js} +2 -2
- package/dist/dev/define/video/{minimal-ui.js.map → neutral-ui.js.map} +1 -1
- package/dist/dev/define/video/skin.css +2046 -2454
- package/dist/dev/define/video/skin2.js +1 -1
- package/dist/dev/define/video/skin2.js.map +1 -1
- package/dist/dev/extensions/google-cast/extension.d.ts +8 -7
- package/dist/dev/extensions/google-cast/extension.js +18 -17
- package/dist/dev/extensions/google-cast/extension.js.map +1 -1
- package/dist/dev/extensions/mux-data/extension.d.ts +6 -6
- package/dist/dev/extensions/mux-data/extension.js +24 -24
- package/dist/dev/extensions/mux-data/extension.js.map +1 -1
- package/dist/dev/extensions/player-extension-element.d.ts +30 -0
- package/dist/dev/extensions/player-extension-element.js +51 -0
- package/dist/dev/extensions/player-extension-element.js.map +1 -0
- package/dist/dev/i18n/context.d.ts +4 -5
- package/dist/dev/i18n/controller.d.ts +3 -4
- package/dist/dev/i18n/controller.js.map +1 -1
- package/dist/dev/i18n/create-i18n.d.ts +3 -4
- package/dist/dev/i18n/index.d.ts +2 -2
- package/dist/dev/i18n/index.js +2 -2
- package/dist/dev/i18n/locale.d.ts +12 -5
- package/dist/dev/i18n/locale.js +10 -2
- package/dist/dev/i18n/locale.js.map +1 -1
- package/dist/dev/i18n/provider-element.d.ts +4 -3
- package/dist/dev/i18n/provider-element.js +1 -0
- package/dist/dev/i18n/provider-element.js.map +1 -1
- package/dist/dev/i18n/provider-mixin.d.ts +1 -2
- package/dist/dev/i18n/provider-mixin.js +11 -9
- package/dist/dev/i18n/provider-mixin.js.map +1 -1
- package/dist/dev/i18n/render-text.d.ts +6 -3
- package/dist/dev/i18n/render-text.js +5 -1
- package/dist/dev/i18n/render-text.js.map +1 -1
- package/dist/dev/i18n/text/airplay.d.ts +1 -0
- package/dist/dev/i18n/text/airplay.js +1 -0
- package/dist/dev/i18n/text/buttons.d.ts +1 -0
- package/dist/dev/i18n/text/buttons.js +1 -0
- package/dist/dev/i18n/text/captions.d.ts +1 -0
- package/dist/dev/i18n/text/captions.js +1 -0
- package/dist/dev/i18n/text/cast.d.ts +1 -0
- package/dist/dev/i18n/text/cast.js +1 -0
- package/dist/dev/i18n/text/common.d.ts +1 -0
- package/dist/dev/i18n/text/common.js +1 -0
- package/dist/dev/i18n/text/container.d.ts +1 -0
- package/dist/dev/i18n/text/container.js +1 -0
- package/dist/dev/i18n/text/errors.d.ts +1 -0
- package/dist/dev/i18n/text/errors.js +1 -0
- package/dist/dev/i18n/text/fullscreen.d.ts +1 -0
- package/dist/dev/i18n/text/fullscreen.js +1 -0
- package/dist/dev/i18n/text/live.d.ts +1 -0
- package/dist/dev/i18n/text/live.js +1 -0
- package/dist/dev/i18n/text/menu.d.ts +1 -0
- package/dist/dev/i18n/text/menu.js +1 -0
- package/dist/dev/i18n/text/pip.d.ts +1 -0
- package/dist/dev/i18n/text/pip.js +1 -0
- package/dist/dev/i18n/text/playback.d.ts +1 -0
- package/dist/dev/i18n/text/playback.js +1 -0
- package/dist/dev/i18n/text/seek.d.ts +1 -0
- package/dist/dev/i18n/text/seek.js +1 -0
- package/dist/dev/i18n/text/slider.d.ts +1 -0
- package/dist/dev/i18n/text/slider.js +1 -0
- package/dist/dev/i18n/text/status.d.ts +1 -0
- package/dist/dev/i18n/text/status.js +1 -0
- package/dist/dev/i18n/text/time.d.ts +1 -0
- package/dist/dev/i18n/text/time.js +1 -0
- package/dist/dev/i18n/text/volume.d.ts +1 -0
- package/dist/dev/i18n/text/volume.js +1 -0
- package/dist/dev/i18n/text-mixin.d.ts +1 -2
- package/dist/dev/i18n/text-mixin.js.map +1 -1
- package/dist/dev/i18n/types.d.ts +2 -3
- package/dist/dev/icons/{minimal → compat}/index.d.ts +1 -1
- package/dist/dev/icons/compat/index.js +26 -0
- package/dist/dev/icons/dist/element/base.d.ts +1 -2
- package/dist/dev/icons/dist/element/base.js.map +1 -1
- package/dist/dev/icons/dist/element/compat/icons.js +32 -0
- package/dist/dev/icons/dist/element/compat/icons.js.map +1 -0
- package/dist/dev/icons/dist/element/{minimal → compat}/index.js +2 -2
- package/dist/dev/icons/dist/element/compat/index.js.map +1 -0
- package/dist/dev/icons/dist/element/index.js +2 -1
- package/dist/dev/icons/dist/element/index.js.map +1 -1
- package/dist/dev/icons/dist/element/{minimal → neutral}/icons.js +1 -1
- package/dist/dev/icons/dist/element/{minimal → neutral}/icons.js.map +1 -1
- package/dist/dev/icons/dist/element/neutral/index.d.ts +1 -0
- package/dist/dev/icons/dist/element/neutral/index.js +10 -0
- package/dist/dev/icons/dist/element/{minimal → neutral}/index.js.map +1 -1
- package/dist/dev/icons/dist/html/compat/airplay-enter.js +6 -0
- package/dist/dev/icons/dist/html/compat/airplay-enter.js.map +1 -0
- package/dist/dev/icons/dist/html/compat/airplay-exit.js +6 -0
- package/dist/dev/icons/dist/html/compat/airplay-exit.js.map +1 -0
- package/dist/dev/icons/dist/html/compat/captions-off.js +6 -0
- package/dist/dev/icons/dist/html/compat/captions-off.js.map +1 -0
- package/dist/dev/icons/dist/html/compat/captions-on.js +6 -0
- package/dist/dev/icons/dist/html/compat/captions-on.js.map +1 -0
- package/dist/dev/icons/dist/html/compat/cast-enter.js +6 -0
- package/dist/dev/icons/dist/html/compat/cast-enter.js.map +1 -0
- package/dist/dev/icons/dist/html/compat/cast-exit.js +6 -0
- package/dist/dev/icons/dist/html/compat/cast-exit.js.map +1 -0
- package/dist/dev/icons/dist/html/compat/check.js +6 -0
- package/dist/dev/icons/dist/html/compat/check.js.map +1 -0
- package/dist/dev/icons/dist/html/compat/chevron.js +6 -0
- package/dist/dev/icons/dist/html/compat/chevron.js.map +1 -0
- package/dist/dev/icons/dist/html/compat/fullscreen-enter.js +6 -0
- package/dist/dev/icons/dist/html/compat/fullscreen-enter.js.map +1 -0
- package/dist/dev/icons/dist/html/compat/fullscreen-exit.js +6 -0
- package/dist/dev/icons/dist/html/compat/fullscreen-exit.js.map +1 -0
- package/dist/dev/icons/dist/html/compat/gear.js +6 -0
- package/dist/dev/icons/dist/html/compat/gear.js.map +1 -0
- package/dist/dev/icons/dist/html/compat/index.d.ts +28 -0
- package/dist/dev/icons/dist/html/compat/pause.js +6 -0
- package/dist/dev/icons/dist/html/compat/pause.js.map +1 -0
- package/dist/dev/icons/dist/html/compat/pip-enter.js +6 -0
- package/dist/dev/icons/dist/html/compat/pip-enter.js.map +1 -0
- package/dist/dev/icons/dist/html/compat/pip-exit.js +6 -0
- package/dist/dev/icons/dist/html/compat/pip-exit.js.map +1 -0
- package/dist/dev/icons/dist/html/compat/play.js +6 -0
- package/dist/dev/icons/dist/html/compat/play.js.map +1 -0
- package/dist/dev/icons/dist/html/compat/quality.js +6 -0
- package/dist/dev/icons/dist/html/compat/quality.js.map +1 -0
- package/dist/dev/icons/dist/html/compat/restart.js +6 -0
- package/dist/dev/icons/dist/html/compat/restart.js.map +1 -0
- package/dist/dev/icons/dist/html/compat/seek.js +6 -0
- package/dist/dev/icons/dist/html/compat/seek.js.map +1 -0
- package/dist/dev/icons/dist/html/compat/speech.js +6 -0
- package/dist/dev/icons/dist/html/compat/speech.js.map +1 -0
- package/dist/dev/icons/dist/html/compat/speed.js +6 -0
- package/dist/dev/icons/dist/html/compat/speed.js.map +1 -0
- package/dist/dev/icons/dist/html/{minimal → compat}/spinner.js +1 -1
- package/dist/dev/icons/dist/html/compat/spinner.js.map +1 -0
- package/dist/dev/icons/dist/html/compat/switches.js +6 -0
- package/dist/dev/icons/dist/html/compat/switches.js.map +1 -0
- package/dist/dev/icons/dist/html/compat/volume-high.js +6 -0
- package/dist/dev/icons/dist/html/compat/volume-high.js.map +1 -0
- package/dist/dev/icons/dist/html/compat/volume-low.js +6 -0
- package/dist/dev/icons/dist/html/compat/volume-low.js.map +1 -0
- package/dist/dev/icons/dist/html/compat/volume-off.js +6 -0
- package/dist/dev/icons/dist/html/compat/volume-off.js.map +1 -0
- package/dist/dev/icons/dist/html/default/index.d.ts +25 -26
- package/dist/dev/icons/dist/html/{minimal → neutral}/airplay-enter.js +1 -1
- package/dist/dev/icons/dist/html/{minimal → neutral}/airplay-enter.js.map +1 -1
- package/dist/dev/icons/dist/html/{minimal → neutral}/airplay-exit.js +1 -1
- package/dist/dev/icons/dist/html/{minimal → neutral}/airplay-exit.js.map +1 -1
- package/dist/dev/icons/dist/html/{minimal → neutral}/captions-off.js +1 -1
- package/dist/dev/icons/dist/html/{minimal → neutral}/captions-off.js.map +1 -1
- package/dist/dev/icons/dist/html/{minimal → neutral}/captions-on.js +1 -1
- package/dist/dev/icons/dist/html/{minimal → neutral}/captions-on.js.map +1 -1
- package/dist/dev/icons/dist/html/{minimal → neutral}/cast-enter.js +1 -1
- package/dist/dev/icons/dist/html/{minimal → neutral}/cast-enter.js.map +1 -1
- package/dist/dev/icons/dist/html/{minimal → neutral}/cast-exit.js +1 -1
- package/dist/dev/icons/dist/html/{minimal → neutral}/cast-exit.js.map +1 -1
- package/dist/dev/icons/dist/html/{minimal → neutral}/check.js +1 -1
- package/dist/dev/icons/dist/html/{minimal → neutral}/check.js.map +1 -1
- package/dist/dev/icons/dist/html/{minimal → neutral}/chevron.js +1 -1
- package/dist/dev/icons/dist/html/{minimal → neutral}/chevron.js.map +1 -1
- package/dist/dev/icons/dist/html/{minimal → neutral}/fullscreen-enter.js +1 -1
- package/dist/dev/icons/dist/html/{minimal → neutral}/fullscreen-enter.js.map +1 -1
- package/dist/dev/icons/dist/html/{minimal → neutral}/fullscreen-exit.js +1 -1
- package/dist/dev/icons/dist/html/{minimal → neutral}/fullscreen-exit.js.map +1 -1
- package/dist/dev/icons/dist/html/{minimal → neutral}/gear.js +1 -1
- package/dist/dev/icons/dist/html/{minimal → neutral}/gear.js.map +1 -1
- package/dist/dev/icons/dist/html/neutral/index.d.ts +28 -0
- package/dist/dev/icons/dist/html/{minimal → neutral}/pause.js +1 -1
- package/dist/dev/icons/dist/html/{minimal → neutral}/pause.js.map +1 -1
- package/dist/dev/icons/dist/html/{minimal → neutral}/pip-enter.js +1 -1
- package/dist/dev/icons/dist/html/{minimal → neutral}/pip-enter.js.map +1 -1
- package/dist/dev/icons/dist/html/{minimal → neutral}/pip-exit.js +1 -1
- package/dist/dev/icons/dist/html/{minimal → neutral}/pip-exit.js.map +1 -1
- package/dist/dev/icons/dist/html/{minimal → neutral}/play.js +1 -1
- package/dist/dev/icons/dist/html/{minimal → neutral}/play.js.map +1 -1
- package/dist/dev/icons/dist/html/{minimal → neutral}/quality.js +1 -1
- package/dist/dev/icons/dist/html/{minimal → neutral}/quality.js.map +1 -1
- package/dist/dev/icons/dist/html/{minimal → neutral}/restart.js +1 -1
- package/dist/dev/icons/dist/html/{minimal → neutral}/restart.js.map +1 -1
- package/dist/dev/icons/dist/html/{minimal → neutral}/seek.js +1 -1
- package/dist/dev/icons/dist/html/{minimal → neutral}/seek.js.map +1 -1
- package/dist/dev/icons/dist/html/{minimal → neutral}/speech.js +1 -1
- package/dist/dev/icons/dist/html/{minimal → neutral}/speech.js.map +1 -1
- package/dist/dev/icons/dist/html/{minimal → neutral}/speed.js +1 -1
- package/dist/dev/icons/dist/html/{minimal → neutral}/speed.js.map +1 -1
- package/dist/dev/icons/dist/html/neutral/spinner.js +6 -0
- package/dist/dev/icons/dist/html/{minimal → neutral}/spinner.js.map +1 -1
- package/dist/dev/icons/dist/html/{minimal → neutral}/switches.js +1 -1
- package/dist/dev/icons/dist/html/{minimal → neutral}/switches.js.map +1 -1
- package/dist/dev/icons/dist/html/{minimal → neutral}/volume-high.js +1 -1
- package/dist/dev/icons/dist/html/{minimal → neutral}/volume-high.js.map +1 -1
- package/dist/dev/icons/dist/html/{minimal → neutral}/volume-low.js +1 -1
- package/dist/dev/icons/dist/html/{minimal → neutral}/volume-low.js.map +1 -1
- package/dist/dev/icons/dist/html/{minimal → neutral}/volume-off.js +1 -1
- package/dist/dev/icons/dist/html/{minimal → neutral}/volume-off.js.map +1 -1
- package/dist/dev/icons/element/compat/index.d.ts +1 -0
- package/dist/dev/icons/element/compat/index.js +1 -0
- package/dist/dev/icons/element/neutral/index.d.ts +1 -0
- package/dist/dev/icons/element/neutral/index.js +1 -0
- package/dist/dev/icons/element/register/index.d.ts +1 -2
- package/dist/dev/icons/neutral/index.d.ts +2 -0
- package/dist/dev/icons/neutral/index.js +26 -0
- package/dist/dev/index.d.ts +12 -7
- package/dist/dev/index.js +4 -3
- package/dist/dev/internal/skins/compat-audio/register.d.ts +43 -0
- package/dist/dev/internal/skins/compat-audio/register.js +72 -0
- package/dist/dev/internal/skins/compat-audio/register.js.map +1 -0
- package/dist/dev/internal/skins/compat-audio/skin.css +1891 -0
- package/dist/dev/internal/skins/compat-audio/template.js +217 -0
- package/dist/dev/internal/skins/compat-audio/template.js.map +1 -0
- package/dist/dev/internal/skins/compat-live-audio/register.d.ts +27 -0
- package/dist/dev/internal/skins/compat-live-audio/register.js +52 -0
- package/dist/dev/internal/skins/compat-live-audio/register.js.map +1 -0
- package/dist/dev/internal/skins/compat-live-audio/skin.css +1676 -0
- package/dist/dev/internal/skins/compat-live-audio/template.js +114 -0
- package/dist/dev/internal/skins/compat-live-audio/template.js.map +1 -0
- package/dist/dev/internal/skins/compat-live-video/register.d.ts +45 -0
- package/dist/dev/internal/skins/compat-live-video/register.js +88 -0
- package/dist/dev/internal/skins/compat-live-video/register.js.map +1 -0
- package/dist/dev/internal/skins/compat-live-video/skin.css +2219 -0
- package/dist/dev/internal/skins/compat-live-video/template.js +239 -0
- package/dist/dev/internal/skins/compat-live-video/template.js.map +1 -0
- package/dist/dev/internal/skins/compat-video/register.d.ts +62 -0
- package/dist/dev/internal/skins/compat-video/register.js +117 -0
- package/dist/dev/internal/skins/compat-video/register.js.map +1 -0
- package/dist/dev/internal/skins/compat-video/skin.css +2497 -0
- package/dist/dev/internal/skins/compat-video/template.js +459 -0
- package/dist/dev/internal/skins/compat-video/template.js.map +1 -0
- package/dist/dev/internal/skins/default-audio/register.d.ts +12 -12
- package/dist/dev/internal/skins/default-audio/register.js +8 -8
- package/dist/dev/internal/skins/default-audio/skin.css +1213 -1365
- package/dist/dev/internal/skins/default-live-audio/register.d.ts +4 -4
- package/dist/dev/internal/skins/default-live-audio/register.js +4 -4
- package/dist/dev/internal/skins/default-live-audio/skin.css +842 -913
- package/dist/dev/internal/skins/default-live-video/register.d.ts +10 -10
- package/dist/dev/internal/skins/default-live-video/register.js +8 -8
- package/dist/dev/internal/skins/default-live-video/skin.css +1548 -1728
- package/dist/dev/internal/skins/default-video/register.d.ts +18 -18
- package/dist/dev/internal/skins/default-video/register.js +13 -13
- package/dist/dev/internal/skins/default-video/skin.css +2034 -2403
- package/dist/dev/internal/skins/{minimal-audio → neutral-audio}/register.d.ts +14 -14
- package/dist/dev/internal/skins/{minimal-audio → neutral-audio}/register.js +20 -20
- package/dist/dev/internal/skins/{minimal-audio → neutral-audio}/register.js.map +1 -1
- package/dist/dev/internal/skins/neutral-audio/skin.css +1823 -0
- package/dist/dev/internal/skins/{minimal-audio → neutral-audio}/template.js +24 -24
- package/dist/dev/internal/skins/{minimal-audio → neutral-audio}/template.js.map +1 -1
- package/dist/dev/internal/skins/{minimal-live-audio → neutral-live-audio}/register.d.ts +4 -4
- package/dist/dev/internal/skins/{minimal-live-audio → neutral-live-audio}/register.js +13 -13
- package/dist/dev/internal/skins/{minimal-live-audio → neutral-live-audio}/register.js.map +1 -1
- package/dist/dev/internal/skins/neutral-live-audio/skin.css +1238 -0
- package/dist/dev/internal/skins/{minimal-live-audio → neutral-live-audio}/template.js +14 -14
- package/dist/dev/internal/skins/{minimal-live-audio → neutral-live-audio}/template.js.map +1 -1
- package/dist/dev/internal/skins/{minimal-live-video → neutral-live-video}/register.d.ts +10 -10
- package/dist/dev/internal/skins/{minimal-live-video → neutral-live-video}/register.js +28 -28
- package/dist/dev/internal/skins/{minimal-live-video → neutral-live-video}/register.js.map +1 -1
- package/dist/dev/internal/skins/neutral-live-video/skin.css +2069 -0
- package/dist/dev/internal/skins/{minimal-live-video → neutral-live-video}/template.js +47 -47
- package/dist/dev/internal/skins/{minimal-live-video → neutral-live-video}/template.js.map +1 -1
- package/dist/dev/internal/skins/{minimal-video → neutral-video}/register.d.ts +20 -20
- package/dist/dev/internal/skins/{minimal-video → neutral-video}/register.js +40 -40
- package/dist/dev/internal/skins/{minimal-video → neutral-video}/register.js.map +1 -1
- package/dist/dev/internal/skins/neutral-video/skin.css +2817 -0
- package/dist/dev/internal/skins/{minimal-video → neutral-video}/template.js +75 -75
- package/dist/dev/internal/skins/{minimal-video → neutral-video}/template.js.map +1 -1
- package/dist/dev/media/background-video/adapter.d.ts +1 -2
- package/dist/dev/media/background-video/template.d.ts +1 -2
- package/dist/dev/media/cloudflare-video/adapter.d.ts +3 -15
- package/dist/dev/media/dash-video/adapter.d.ts +3 -15
- package/dist/dev/media/hls-audio/adapter.d.ts +3 -15
- package/dist/dev/media/hls-background-video/adapter.d.ts +8 -5
- package/dist/dev/media/hls-background-video/adapter.js.map +1 -1
- package/dist/dev/media/hls-video/adapter.d.ts +3 -15
- package/dist/dev/media/hlsjs-video/adapter.d.ts +3 -15
- package/dist/dev/media/mux-audio/hls-js.d.ts +3 -15
- package/dist/dev/media/mux-audio/mixin.js.map +1 -1
- package/dist/dev/media/mux-audio/spf.d.ts +3 -15
- package/dist/dev/media/mux-video/hls-js.d.ts +3 -15
- package/dist/dev/media/mux-video/mixin.js.map +1 -1
- package/dist/dev/media/mux-video/spf.d.ts +3 -15
- package/dist/dev/media/native-hls-video/adapter.d.ts +3 -15
- package/dist/dev/media/shaka-video/adapter.d.ts +3 -15
- package/dist/dev/media/spotify-audio/adapter.d.ts +3 -15
- package/dist/dev/media/tiktok-video/adapter.d.ts +3 -15
- package/dist/dev/media/twitch-video/adapter.d.ts +3 -15
- package/dist/dev/media/vimeo-video/adapter.d.ts +3 -15
- package/dist/dev/media/wistia-video/adapter.d.ts +1 -2
- package/dist/dev/media/youtube-video/adapter.d.ts +3 -15
- package/dist/dev/player/context.d.ts +34 -15
- package/dist/dev/player/context.js +9 -1
- package/dist/dev/player/context.js.map +1 -1
- package/dist/dev/player/controller.d.ts +3 -4
- package/dist/dev/player/controller.js.map +1 -1
- package/dist/dev/player/create-player.d.ts +5 -6
- package/dist/dev/player/create-player.js +2 -1
- package/dist/dev/player/create-player.js.map +1 -1
- package/dist/dev/player/element.js +47 -10
- package/dist/dev/player/element.js.map +1 -1
- package/dist/dev/presets/audio/compat-skin.d.ts +15 -0
- package/dist/dev/presets/audio/compat-skin.js +21 -0
- package/dist/dev/presets/audio/compat-skin.js.map +1 -0
- package/dist/dev/presets/audio/index.d.ts +3 -2
- package/dist/dev/presets/audio/index.js +3 -2
- package/dist/dev/presets/audio/neutral-skin.d.ts +15 -0
- package/dist/dev/presets/audio/neutral-skin.js +21 -0
- package/dist/dev/presets/audio/neutral-skin.js.map +1 -0
- package/dist/dev/presets/audio/player.d.ts +2 -3
- package/dist/dev/presets/audio/skin.d.ts +2 -3
- package/dist/dev/presets/audio/skin.js.map +1 -1
- package/dist/dev/presets/background/player.d.ts +2 -3
- package/dist/dev/presets/background/skin.d.ts +1 -2
- package/dist/dev/presets/live-audio/compat-skin.d.ts +15 -0
- package/dist/dev/presets/live-audio/compat-skin.js +21 -0
- package/dist/dev/presets/live-audio/compat-skin.js.map +1 -0
- package/dist/dev/presets/live-audio/index.d.ts +3 -2
- package/dist/dev/presets/live-audio/index.js +3 -2
- package/dist/dev/presets/live-audio/neutral-skin.d.ts +15 -0
- package/dist/dev/presets/live-audio/neutral-skin.js +21 -0
- package/dist/dev/presets/live-audio/neutral-skin.js.map +1 -0
- package/dist/dev/presets/live-audio/player.d.ts +2 -3
- package/dist/dev/presets/live-audio/skin.d.ts +2 -3
- package/dist/dev/presets/live-audio/skin.js.map +1 -1
- package/dist/dev/presets/live-video/compat-skin.d.ts +15 -0
- package/dist/dev/presets/live-video/compat-skin.js +21 -0
- package/dist/dev/presets/live-video/compat-skin.js.map +1 -0
- package/dist/dev/presets/live-video/index.d.ts +3 -2
- package/dist/dev/presets/live-video/index.js +3 -2
- package/dist/dev/presets/live-video/neutral-skin.d.ts +15 -0
- package/dist/dev/presets/live-video/neutral-skin.js +21 -0
- package/dist/dev/presets/live-video/neutral-skin.js.map +1 -0
- package/dist/dev/presets/live-video/player.d.ts +2 -3
- package/dist/dev/presets/live-video/skin.d.ts +2 -3
- package/dist/dev/presets/live-video/skin.js.map +1 -1
- package/dist/dev/presets/skin.d.ts +1 -2
- package/dist/dev/presets/video/compat-skin.d.ts +15 -0
- package/dist/dev/presets/video/compat-skin.js +21 -0
- package/dist/dev/presets/video/compat-skin.js.map +1 -0
- package/dist/dev/presets/video/index.d.ts +3 -2
- package/dist/dev/presets/video/index.js +3 -2
- package/dist/dev/presets/video/neutral-skin.d.ts +15 -0
- package/dist/dev/presets/video/neutral-skin.js +21 -0
- package/dist/dev/presets/video/neutral-skin.js.map +1 -0
- package/dist/dev/presets/video/player.d.ts +2 -3
- package/dist/dev/presets/video/skin.d.ts +2 -3
- package/dist/dev/presets/video/skin.js.map +1 -1
- package/dist/dev/store/media-attach-mixin.d.ts +6 -4
- package/dist/dev/store/media-attach-mixin.js +2 -0
- package/dist/dev/store/media-attach-mixin.js.map +1 -1
- package/dist/dev/store/types.d.ts +2 -4
- package/dist/dev/ui/airplay-button/element.d.ts +4 -5
- package/dist/dev/ui/airplay-button/element.js +1 -1
- package/dist/dev/ui/airplay-button/element.js.map +1 -1
- package/dist/dev/ui/alert-dialog/element.d.ts +1 -2
- package/dist/dev/ui/audio-track-radio-group/element.d.ts +4 -5
- package/dist/dev/ui/audio-track-radio-group/element.js.map +1 -1
- package/dist/dev/ui/buffering-indicator/element.d.ts +2 -2
- package/dist/dev/ui/buffering-indicator/element.js +4 -0
- package/dist/dev/ui/buffering-indicator/element.js.map +1 -1
- package/dist/dev/ui/captions-button/element.d.ts +7 -10
- package/dist/dev/ui/captions-button/element.js.map +1 -1
- package/dist/dev/ui/captions-radio-group/element.d.ts +4 -5
- package/dist/dev/ui/captions-radio-group/element.js.map +1 -1
- package/dist/dev/ui/cast-button/element.d.ts +3 -4
- package/dist/dev/ui/cast-button/element.js.map +1 -1
- package/dist/dev/ui/container/element.d.ts +1 -2
- package/dist/dev/ui/container/element.js.map +1 -1
- package/dist/dev/ui/context-part-element.d.ts +2 -3
- package/dist/dev/ui/context-part-element.js.map +1 -1
- package/dist/dev/ui/controls/backdrop.d.ts +1 -2
- package/dist/dev/ui/controls/content.d.ts +1 -2
- package/dist/dev/ui/controls/context.d.ts +1 -2
- package/dist/dev/ui/controls/element.d.ts +1 -2
- package/dist/dev/ui/controls/element.js.map +1 -1
- package/dist/dev/ui/controls/group.d.ts +1 -2
- package/dist/dev/ui/dialog/backdrop.d.ts +1 -2
- package/dist/dev/ui/dialog/close.d.ts +1 -2
- package/dist/dev/ui/dialog/close.js.map +1 -1
- package/dist/dev/ui/dialog/context.d.ts +4 -3
- package/dist/dev/ui/dialog/context.js +1 -0
- package/dist/dev/ui/dialog/context.js.map +1 -1
- package/dist/dev/ui/dialog/description.d.ts +1 -2
- package/dist/dev/ui/dialog/element.d.ts +5 -4
- package/dist/dev/ui/dialog/element.js +4 -2
- package/dist/dev/ui/dialog/element.js.map +1 -1
- package/dist/dev/ui/dialog/popup.d.ts +1 -2
- package/dist/dev/ui/dialog/popup.js.map +1 -1
- package/dist/dev/ui/dialog/title.d.ts +1 -2
- package/dist/dev/ui/error-dialog/element.d.ts +1 -2
- package/dist/dev/ui/error-dialog/element.js.map +1 -1
- package/dist/dev/ui/fullscreen-button/element.d.ts +3 -5
- package/dist/dev/ui/fullscreen-button/element.js.map +1 -1
- package/dist/dev/ui/gesture/element.d.ts +1 -2
- package/dist/dev/ui/gesture/element.js.map +1 -1
- package/dist/dev/ui/hotkey/aria-key-shortcuts-controller.d.ts +2 -3
- package/dist/dev/ui/hotkey/aria-key-shortcuts-controller.js.map +1 -1
- package/dist/dev/ui/hotkey/element.d.ts +1 -2
- package/dist/dev/ui/hotkey/element.js.map +1 -1
- package/dist/dev/ui/input-indicator/element.d.ts +5 -4
- package/dist/dev/ui/input-indicator/element.js.map +1 -1
- package/dist/dev/ui/input-indicator/live-indicator.d.ts +2 -3
- package/dist/dev/ui/input-indicator/live-indicator.js.map +1 -1
- package/dist/dev/ui/live-button/element.d.ts +4 -4
- package/dist/dev/ui/live-button/element.js.map +1 -1
- package/dist/dev/ui/media-button-element.d.ts +17 -8
- package/dist/dev/ui/media-button-element.js +7 -6
- package/dist/dev/ui/media-button-element.js.map +1 -1
- package/dist/dev/ui/media-ui-element.d.ts +15 -7
- package/dist/dev/ui/media-ui-element.js +6 -1
- package/dist/dev/ui/media-ui-element.js.map +1 -1
- package/dist/dev/ui/menu/checkbox-item.d.ts +1 -2
- package/dist/dev/ui/menu/checkbox-item.js.map +1 -1
- package/dist/dev/ui/menu/content.d.ts +1 -2
- package/dist/dev/ui/menu/content.js.map +1 -1
- package/dist/dev/ui/menu/context.d.ts +9 -5
- package/dist/dev/ui/menu/context.js +2 -0
- package/dist/dev/ui/menu/context.js.map +1 -1
- package/dist/dev/ui/menu/element.d.ts +1 -2
- package/dist/dev/ui/menu/element.js.map +1 -1
- package/dist/dev/ui/menu/group-controller.js.map +1 -1
- package/dist/dev/ui/menu/group-label.d.ts +1 -2
- package/dist/dev/ui/menu/group-label.js.map +1 -1
- package/dist/dev/ui/menu/group.d.ts +1 -2
- package/dist/dev/ui/menu/group.js.map +1 -1
- package/dist/dev/ui/menu/item-indicator.d.ts +1 -2
- package/dist/dev/ui/menu/item.d.ts +1 -2
- package/dist/dev/ui/menu/item.js.map +1 -1
- package/dist/dev/ui/menu/radio-group.d.ts +1 -2
- package/dist/dev/ui/menu/radio-group.js.map +1 -1
- package/dist/dev/ui/menu/radio-item.d.ts +1 -2
- package/dist/dev/ui/menu/radio-item.js.map +1 -1
- package/dist/dev/ui/menu/separator.d.ts +1 -2
- package/dist/dev/ui/mute-button/element.d.ts +3 -4
- package/dist/dev/ui/mute-button/element.js.map +1 -1
- package/dist/dev/ui/pip-button/element.d.ts +4 -6
- package/dist/dev/ui/pip-button/element.js.map +1 -1
- package/dist/dev/ui/play-button/element.d.ts +3 -5
- package/dist/dev/ui/play-button/element.js +1 -1
- package/dist/dev/ui/play-button/element.js.map +1 -1
- package/dist/dev/ui/playback-rate-button/element.d.ts +4 -5
- package/dist/dev/ui/playback-rate-button/element.js +4 -2
- package/dist/dev/ui/playback-rate-button/element.js.map +1 -1
- package/dist/dev/ui/playback-rate-radio-group/element.d.ts +4 -5
- package/dist/dev/ui/playback-rate-radio-group/element.js.map +1 -1
- package/dist/dev/ui/popover/element.d.ts +1 -2
- package/dist/dev/ui/popover/element.js +4 -2
- package/dist/dev/ui/popover/element.js.map +1 -1
- package/dist/dev/ui/position-controller.js.map +1 -1
- package/dist/dev/ui/poster/element.d.ts +1 -2
- package/dist/dev/ui/poster/element.js.map +1 -1
- package/dist/dev/ui/quality-radio-group/element.d.ts +4 -5
- package/dist/dev/ui/quality-radio-group/element.js.map +1 -1
- package/dist/dev/ui/radio-group/context.d.ts +4 -3
- package/dist/dev/ui/radio-group/context.js +1 -0
- package/dist/dev/ui/radio-group/context.js.map +1 -1
- package/dist/dev/ui/radio-group/element.d.ts +1 -2
- package/dist/dev/ui/radio-group/element.js.map +1 -1
- package/dist/dev/ui/radio-options/controller.js.map +1 -1
- package/dist/dev/ui/seek-button/element.d.ts +2 -3
- package/dist/dev/ui/seek-button/element.js.map +1 -1
- package/dist/dev/ui/seek-indicator/element.d.ts +3 -4
- package/dist/dev/ui/seek-indicator/element.js +7 -1
- package/dist/dev/ui/seek-indicator/element.js.map +1 -1
- package/dist/dev/ui/seek-indicator/value.d.ts +1 -2
- package/dist/dev/ui/slider/buffer.d.ts +1 -2
- package/dist/dev/ui/slider/context.d.ts +4 -3
- package/dist/dev/ui/slider/context.js +1 -0
- package/dist/dev/ui/slider/context.js.map +1 -1
- package/dist/dev/ui/slider/element.d.ts +1 -2
- package/dist/dev/ui/slider/element.js.map +1 -1
- package/dist/dev/ui/slider/events.d.ts +4 -3
- package/dist/dev/ui/slider/fill.d.ts +1 -2
- package/dist/dev/ui/slider/preview.d.ts +1 -2
- package/dist/dev/ui/slider/preview.js.map +1 -1
- package/dist/dev/ui/slider/thumb.d.ts +1 -2
- package/dist/dev/ui/slider/thumb.js.map +1 -1
- package/dist/dev/ui/slider/thumbnail.d.ts +1 -2
- package/dist/dev/ui/slider/thumbnail.js.map +1 -1
- package/dist/dev/ui/slider/track.d.ts +1 -2
- package/dist/dev/ui/slider/value.d.ts +1 -2
- package/dist/dev/ui/slider/value.js.map +1 -1
- package/dist/dev/ui/status-announcer/element.d.ts +1 -2
- package/dist/dev/ui/status-announcer/element.js.map +1 -1
- package/dist/dev/ui/status-indicator/element.d.ts +9 -4
- package/dist/dev/ui/status-indicator/element.js +14 -1
- package/dist/dev/ui/status-indicator/element.js.map +1 -1
- package/dist/dev/ui/status-indicator/value.d.ts +1 -2
- package/dist/dev/ui/text/element.d.ts +4 -3
- package/dist/dev/ui/text/element.js +1 -0
- package/dist/dev/ui/text/element.js.map +1 -1
- package/dist/dev/ui/thumbnail/element.d.ts +5 -6
- package/dist/dev/ui/thumbnail/element.js +3 -2
- package/dist/dev/ui/thumbnail/element.js.map +1 -1
- package/dist/dev/ui/time/element.d.ts +1 -2
- package/dist/dev/ui/time/element.js.map +1 -1
- package/dist/dev/ui/time/group.d.ts +1 -2
- package/dist/dev/ui/time/separator.d.ts +1 -2
- package/dist/dev/ui/time-slider/chapter-title.d.ts +1 -2
- package/dist/dev/ui/time-slider/chapter-title.js.map +1 -1
- package/dist/dev/ui/time-slider/chapters.d.ts +1 -2
- package/dist/dev/ui/time-slider/chapters.js.map +1 -1
- package/dist/dev/ui/time-slider/element.d.ts +1 -2
- package/dist/dev/ui/time-slider/element.js.map +1 -1
- package/dist/dev/ui/title/element.d.ts +1 -2
- package/dist/dev/ui/title/element.js.map +1 -1
- package/dist/dev/ui/tooltip/context.d.ts +2 -2
- package/dist/dev/ui/tooltip/context.js +1 -0
- package/dist/dev/ui/tooltip/context.js.map +1 -1
- package/dist/dev/ui/tooltip/element.d.ts +1 -2
- package/dist/dev/ui/tooltip/element.js +4 -2
- package/dist/dev/ui/tooltip/element.js.map +1 -1
- package/dist/dev/ui/tooltip/group.d.ts +1 -2
- package/dist/dev/ui/tooltip/group.js.map +1 -1
- package/dist/dev/ui/tooltip/label.d.ts +1 -2
- package/dist/dev/ui/tooltip/label.js.map +1 -1
- package/dist/dev/ui/tooltip/shortcut.d.ts +1 -2
- package/dist/dev/ui/ui-element.d.ts +3 -3
- package/dist/dev/ui/ui-element.js.map +1 -1
- package/dist/dev/ui/volume-indicator/element.d.ts +3 -4
- package/dist/dev/ui/volume-indicator/element.js.map +1 -1
- package/dist/dev/ui/volume-indicator/fill.d.ts +1 -2
- package/dist/dev/ui/volume-indicator/value.d.ts +1 -2
- package/dist/dev/ui/volume-popover/element.d.ts +1 -2
- package/dist/dev/ui/volume-popover/element.js +1 -1
- package/dist/dev/ui/volume-popover/element.js.map +1 -1
- package/dist/dev/ui/volume-slider/element.d.ts +1 -2
- package/dist/dev/ui/volume-slider/element.js +1 -1
- package/dist/dev/ui/volume-slider/element.js.map +1 -1
- package/dist/dev/version.d.ts +21 -0
- package/dist/dev/version.js +29 -0
- package/dist/dev/version.js.map +1 -0
- package/docs/README.md +1 -1
- package/docs/guides/autoplay.md +10 -21
- package/docs/guides/background-video.md +74 -7
- package/docs/guides/browser-support.md +48 -36
- package/docs/guides/build-with-ai.md +1 -1
- package/docs/guides/build-your-own-component.md +5 -5
- package/docs/guides/captions.md +46 -6
- package/docs/guides/casting.md +24 -8
- package/docs/guides/cdn.md +11 -10
- package/docs/guides/content-security-policy.md +29 -5
- package/docs/guides/controls.md +25 -10
- package/docs/guides/customize-skins.md +2 -2
- package/docs/guides/features.md +3 -1
- package/docs/guides/fullscreen.md +35 -8
- package/docs/guides/installation-cdn.md +7 -7
- package/docs/guides/installation-shadcn.md +5 -5
- package/docs/guides/installation-svelte.md +6 -6
- package/docs/guides/installation-vue.md +6 -6
- package/docs/guides/installation.md +7 -7
- package/docs/guides/internationalization.md +37 -28
- package/docs/guides/keyboard-shortcuts.md +27 -15
- package/docs/guides/live-streams.md +51 -13
- package/docs/guides/llms.txt +6 -5
- package/docs/guides/media-sources.md +13 -6
- package/docs/guides/migrate-from-media-chrome.md +182 -51
- package/docs/guides/migrate-from-mux-player.md +191 -116
- package/docs/guides/migrate-from-plyr.md +171 -81
- package/docs/guides/migrate-from-video-js-8.md +256 -191
- package/docs/guides/migrate-from-vidstack.md +865 -0
- package/docs/guides/mux-data.md +23 -9
- package/docs/guides/picture-in-picture.md +22 -16
- package/docs/guides/playback-errors.md +10 -7
- package/docs/guides/poster.md +32 -11
- package/docs/guides/presets.md +15 -5
- package/docs/guides/quality.md +44 -5
- package/docs/guides/self-hosting.md +5 -5
- package/docs/guides/skins.md +6 -4
- package/docs/guides/thumbnails.md +24 -14
- package/docs/guides/ui-components.md +1 -1
- package/docs/guides/user-preferences.md +38 -15
- package/docs/guides/v10-roadmap.md +1 -1
- package/docs/llms.txt +45 -11
- package/docs/reference/api/create-i18n.md +3 -3
- package/docs/reference/api/create-translator.md +1 -1
- package/docs/reference/api/feature-audio-track.md +1 -1
- package/docs/reference/api/feature-controls.md +2 -2
- package/docs/reference/api/feature-fullscreen.md +1 -2
- package/docs/reference/api/feature-pip.md +3 -4
- package/docs/reference/api/feature-playback.md +2 -3
- package/docs/reference/api/feature-quality.md +2 -2
- package/docs/reference/api/feature-remote-playback.md +1 -1
- package/docs/reference/api/feature-source.md +2 -8
- package/docs/reference/api/feature-text-tracks.md +6 -8
- package/docs/reference/api/feature-volume.md +1 -1
- package/docs/reference/api/find-locale-keys.md +32 -0
- package/docs/reference/api/get-locale-key.md +32 -0
- package/docs/reference/api/html-create-player.md +24 -26
- package/docs/reference/api/i18n-controller.md +1 -1
- package/docs/reference/api/is-text.md +33 -0
- package/docs/reference/api/llms.txt +23 -2
- package/docs/reference/api/load-locale.md +36 -0
- package/docs/reference/api/media-capabilities.md +255 -0
- package/docs/reference/api/player-controller.md +39 -20
- package/docs/reference/api/player-store.md +112 -0
- package/docs/reference/api/preset-audio.md +116 -0
- package/docs/reference/api/preset-background.md +103 -0
- package/docs/reference/api/preset-live-audio.md +119 -0
- package/docs/reference/api/preset-live-video.md +124 -0
- package/docs/reference/api/preset-video.md +123 -0
- package/docs/reference/api/register-i18n.md +13 -0
- package/docs/reference/api/resolve-adapter-type.md +98 -0
- package/docs/reference/api/resolve-mime-type.md +48 -0
- package/docs/reference/api/resolve-translation.md +36 -0
- package/docs/reference/api/translate-text.md +56 -0
- package/docs/reference/api/translation-phrases.md +13 -0
- package/docs/reference/api/ui-element.md +296 -0
- package/docs/reference/components/audio-compat-skin.md +33 -0
- package/docs/reference/components/{audio-minimal-skin.md → audio-neutral-skin.md} +7 -7
- package/docs/reference/components/audio-skin.md +3 -3
- package/docs/reference/components/background-video-skin.md +1 -1
- package/docs/reference/components/background-video.md +1 -1
- package/docs/reference/components/captions-button.md +1 -1
- package/docs/reference/components/captions-radio-group.md +1 -1
- package/docs/reference/components/cloudflare-video.md +1 -1
- package/docs/reference/components/controls.md +2 -2
- package/docs/reference/components/dash-video.md +1 -1
- package/docs/reference/components/fullscreen-button.md +1 -1
- package/docs/reference/components/google-cast.md +4 -4
- package/docs/reference/components/hls-audio.md +1 -1
- package/docs/reference/components/hls-background-video.md +1 -1
- package/docs/reference/components/hls-video.md +1 -1
- package/docs/reference/components/hlsjs-video.md +2 -2
- package/docs/reference/components/icons.md +130 -0
- package/docs/reference/components/live-audio-compat-skin.md +35 -0
- package/docs/reference/components/{live-audio-minimal-skin.md → live-audio-neutral-skin.md} +7 -7
- package/docs/reference/components/live-audio-skin.md +3 -3
- package/docs/reference/components/live-video-compat-skin.md +41 -0
- package/docs/reference/components/{live-video-minimal-skin.md → live-video-neutral-skin.md} +7 -7
- package/docs/reference/components/live-video-skin.md +3 -3
- package/docs/reference/components/llms.txt +16 -6
- package/docs/reference/components/menu.md +7 -2
- package/docs/reference/components/mux-audio.md +2 -2
- package/docs/reference/components/mux-background-video.md +1 -1
- package/docs/reference/components/mux-data.md +4 -4
- package/docs/reference/components/mux-video.md +4 -4
- package/docs/reference/components/native-hls-video.md +1 -1
- package/docs/reference/components/pip-button.md +2 -2
- package/docs/reference/components/player.md +26 -2
- package/docs/reference/components/popover.md +6 -8
- package/docs/reference/components/shaka-video.md +1 -1
- package/docs/reference/components/spotify-audio.md +1 -1
- package/docs/reference/components/status-indicator.md +27 -4
- package/docs/reference/components/thumbnail.md +1 -1
- package/docs/reference/components/tiktok-video.md +1 -1
- package/docs/reference/components/twitch-video.md +1 -1
- package/docs/reference/components/video-compat-skin.md +45 -0
- package/docs/reference/components/{video-minimal-skin.md → video-neutral-skin.md} +7 -7
- package/docs/reference/components/video-skin.md +3 -3
- package/docs/reference/components/vimeo-video.md +1 -1
- package/docs/reference/components/wistia-video.md +1 -1
- package/docs/reference/components/youtube-video.md +1 -1
- package/package.json +54 -42
- package/dist/default/define/audio/minimal-skin.css +0 -2048
- package/dist/default/define/audio/minimal-skin.js +0 -6
- package/dist/default/define/audio/minimal-skin2.js +0 -4
- package/dist/default/define/live-audio/minimal-skin.css +0 -1378
- package/dist/default/define/live-audio/minimal-skin.js +0 -6
- package/dist/default/define/live-audio/minimal-skin2.js +0 -4
- package/dist/default/define/live-video/minimal-skin.css +0 -2311
- package/dist/default/define/live-video/minimal-skin.js +0 -6
- package/dist/default/define/live-video/minimal-skin2.js +0 -4
- package/dist/default/define/video/minimal-skin.css +0 -3232
- package/dist/default/define/video/minimal-skin.js +0 -6
- package/dist/default/define/video/minimal-skin2.js +0 -4
- package/dist/default/extensions/media-extension-element.js +0 -54
- package/dist/default/icons/element/minimal/index.js +0 -1
- package/dist/default/icons/minimal/index.js +0 -26
- package/dist/default/internal/skins/minimal-audio/skin.css +0 -1977
- package/dist/default/internal/skins/minimal-live-audio/skin.css +0 -1307
- package/dist/default/internal/skins/minimal-live-video/skin.css +0 -2240
- package/dist/default/internal/skins/minimal-video/skin.css +0 -3161
- package/dist/default/presets/audio/minimal-skin.js +0 -19
- package/dist/default/presets/live-audio/minimal-skin.js +0 -19
- package/dist/default/presets/live-video/minimal-skin.js +0 -19
- package/dist/default/presets/video/minimal-skin.js +0 -19
- package/dist/dev/define/audio/minimal-skin.css +0 -2048
- package/dist/dev/define/audio/minimal-skin.d.ts +0 -1
- package/dist/dev/define/audio/minimal-skin.js +0 -8
- package/dist/dev/define/audio/minimal-skin.js.map +0 -1
- package/dist/dev/define/audio/minimal-skin2.js +0 -6
- package/dist/dev/define/audio/minimal-skin2.js.map +0 -1
- package/dist/dev/define/live-audio/minimal-skin.css +0 -1378
- package/dist/dev/define/live-audio/minimal-skin.d.ts +0 -1
- package/dist/dev/define/live-audio/minimal-skin.js +0 -8
- package/dist/dev/define/live-audio/minimal-skin.js.map +0 -1
- package/dist/dev/define/live-audio/minimal-skin2.js +0 -6
- package/dist/dev/define/live-audio/minimal-skin2.js.map +0 -1
- package/dist/dev/define/live-video/minimal-skin.css +0 -2311
- package/dist/dev/define/live-video/minimal-skin.d.ts +0 -1
- package/dist/dev/define/live-video/minimal-skin.js +0 -8
- package/dist/dev/define/live-video/minimal-skin.js.map +0 -1
- package/dist/dev/define/live-video/minimal-skin2.js +0 -6
- package/dist/dev/define/live-video/minimal-skin2.js.map +0 -1
- package/dist/dev/define/video/minimal-skin.css +0 -3232
- package/dist/dev/define/video/minimal-skin.d.ts +0 -1
- package/dist/dev/define/video/minimal-skin.js +0 -8
- package/dist/dev/define/video/minimal-skin.js.map +0 -1
- package/dist/dev/define/video/minimal-skin2.js +0 -6
- package/dist/dev/define/video/minimal-skin2.js.map +0 -1
- package/dist/dev/extensions/media-extension-element.d.ts +0 -29
- package/dist/dev/extensions/media-extension-element.js +0 -56
- package/dist/dev/extensions/media-extension-element.js.map +0 -1
- package/dist/dev/icons/dist/html/minimal/index.d.ts +0 -29
- package/dist/dev/icons/element/minimal/index.d.ts +0 -1
- package/dist/dev/icons/element/minimal/index.js +0 -1
- package/dist/dev/icons/minimal/index.js +0 -26
- package/dist/dev/internal/skins/minimal-audio/skin.css +0 -1977
- package/dist/dev/internal/skins/minimal-live-audio/skin.css +0 -1307
- package/dist/dev/internal/skins/minimal-live-video/skin.css +0 -2240
- package/dist/dev/internal/skins/minimal-video/skin.css +0 -3161
- package/dist/dev/presets/audio/minimal-skin.d.ts +0 -16
- package/dist/dev/presets/audio/minimal-skin.js +0 -21
- package/dist/dev/presets/audio/minimal-skin.js.map +0 -1
- package/dist/dev/presets/live-audio/minimal-skin.d.ts +0 -16
- package/dist/dev/presets/live-audio/minimal-skin.js +0 -21
- package/dist/dev/presets/live-audio/minimal-skin.js.map +0 -1
- package/dist/dev/presets/live-video/minimal-skin.d.ts +0 -16
- package/dist/dev/presets/live-video/minimal-skin.js +0 -21
- package/dist/dev/presets/live-video/minimal-skin.js.map +0 -1
- package/dist/dev/presets/video/minimal-skin.d.ts +0 -16
- package/dist/dev/presets/video/minimal-skin.js +0 -21
- package/dist/dev/presets/video/minimal-skin.js.map +0 -1
- /package/dist/dev/define/audio/{minimal-ui.d.ts → neutral-ui.d.ts} +0 -0
- /package/dist/dev/define/live-audio/{minimal-ui.d.ts → neutral-ui.d.ts} +0 -0
- /package/dist/dev/define/live-video/{minimal-ui.d.ts → neutral-ui.d.ts} +0 -0
- /package/dist/dev/define/video/{minimal-ui.d.ts → neutral-ui.d.ts} +0 -0
- /package/dist/dev/icons/dist/element/{minimal → compat}/index.d.ts +0 -0
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"controller.js","names":[
|
|
1
|
+
{"version":3,"file":"controller.js","names":[],"sources":["../../../src/player/controller.ts"],"sourcesContent":["import type { PlayerStore } from '@videojs/core/dom';\nimport type { ReactiveController, ReactiveControllerHost } from '@videojs/element';\nimport { ContextConsumer } from '@videojs/element/context';\nimport type { InferStoreState, Selector } from '@videojs/store';\nimport { StoreController } from '@videojs/store/html';\n\nimport type { PlayerContext } from './context';\n\nexport type PlayerControllerHost = ReactiveControllerHost & HTMLElement;\n\n/**\n * Reactive controller for accessing player store state.\n *\n * Without selector: Returns the store, does NOT subscribe to changes. With selector: Returns selected state, subscribes\n * with shallowEqual comparison.\n *\n * @example\n * ```ts\n * // Store access (no subscription)\n * class Controls extends UIElement {\n * #player = new PlayerController(this, playerContext);\n *\n * handleClick() {\n * this.#player.value.setVolume(0.5);\n * }\n * }\n *\n * // Selector-based subscription\n * class PlayButton extends UIElement {\n * #playback = new PlayerController(this, playerContext, selectPlayback);\n * }\n * ```;\n */\nexport class PlayerController<Store extends PlayerStore, Result = Store> implements ReactiveController {\n readonly #host: PlayerControllerHost;\n readonly #selector: Selector<InferStoreState<Store>, Result> | undefined;\n\n #consumer: ContextConsumer<PlayerContext<Store>, PlayerControllerHost>;\n #store: StoreController<Store, Result> | null = null;\n\n /**\n * @param host - The host element that owns this controller.\n * @param context - Player context to resolve the store from.\n * @label Without Selector\n */\n constructor(host: PlayerControllerHost, context: PlayerContext<Store>);\n /**\n * @param host - The host element that owns this controller.\n * @param context - Player context to resolve the store from.\n * @param selector - Derives a value from the player store state.\n * @label With Selector\n */\n constructor(\n host: PlayerControllerHost,\n context: PlayerContext<Store>,\n selector: Selector<InferStoreState<Store>, Result>\n );\n constructor(\n host: PlayerControllerHost,\n context: PlayerContext<Store>,\n selector?: Selector<InferStoreState<Store>, Result>\n ) {\n this.#host = host;\n this.#selector = selector;\n\n this.#consumer = new ContextConsumer(host, {\n context,\n callback: (ctx) => this.#connect(ctx),\n subscribe: true,\n });\n\n host.addController(this);\n }\n\n get value(): Result | undefined {\n const store = this.#consumer.value;\n if (!store) return undefined;\n\n // Without selector: return store directly\n if (!this.#selector) return store as unknown as Result;\n\n // With selector: use StoreController\n return this.#store?.value;\n }\n\n get displayName(): string | undefined {\n return this.#selector?.displayName;\n }\n\n hostConnected(): void {\n const store = this.#consumer.value;\n\n if (store) this.#connect(store);\n }\n\n hostDisconnected(): void {\n this.#store = null;\n }\n\n #connect(store: Store): void {\n if (!this.#store && this.#selector) {\n this.#store = new StoreController(this.#host, store, this.#selector);\n }\n }\n}\n\nexport function createPlayerController<Store extends PlayerStore>(\n context: PlayerContext<Store>\n): PlayerController.ConfiguredConstructor<Store> {\n class ConfiguredPlayerController<Result = Store> extends PlayerController<Store, Result> {\n constructor(host: PlayerControllerHost, selector?: Selector<InferStoreState<Store>, Result>) {\n if (selector) {\n super(host, context, selector);\n } else {\n super(host, context);\n }\n }\n }\n\n return ConfiguredPlayerController;\n}\n\nexport namespace PlayerController {\n export type Host = PlayerControllerHost;\n\n export type Constructor<Store extends PlayerStore = PlayerStore, Result = Store> = typeof PlayerController<\n Store,\n Result\n >;\n\n export interface ConfiguredConstructor<Store extends PlayerStore> {\n new (host: PlayerControllerHost): PlayerController<Store>;\n new <Result>(\n host: PlayerControllerHost,\n selector: Selector<InferStoreState<Store>, Result>\n ): PlayerController<Store, Result>;\n }\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;AAiCA,IAAa,mBAAb,MAAuG;CACrG;CACA;CAEA;CACA,SAAgD;CAmBhD,YACE,MACA,SACA,UACA;EACA,KAAK,QAAQ;EACb,KAAK,YAAY;EAEjB,KAAK,YAAY,IAAI,gBAAgB,MAAM;GACzC;GACA,WAAW,QAAQ,KAAK,SAAS,GAAG;GACpC,WAAW;EACb,CAAC;EAED,KAAK,cAAc,IAAI;CACzB;CAEA,IAAI,QAA4B;EAC9B,MAAM,QAAQ,KAAK,UAAU;EAC7B,IAAI,CAAC,OAAO,OAAO,KAAA;EAGnB,IAAI,CAAC,KAAK,WAAW,OAAO;EAG5B,OAAO,KAAK,QAAQ;CACtB;CAEA,IAAI,cAAkC;EACpC,OAAO,KAAK,WAAW;CACzB;CAEA,gBAAsB;EACpB,MAAM,QAAQ,KAAK,UAAU;EAE7B,IAAI,OAAO,KAAK,SAAS,KAAK;CAChC;CAEA,mBAAyB;EACvB,KAAK,SAAS;CAChB;CAEA,SAAS,OAAoB;EAC3B,IAAI,CAAC,KAAK,UAAU,KAAK,WACvB,KAAK,SAAS,IAAI,gBAAgB,KAAK,OAAO,OAAO,KAAK,SAAS;CAEvE;AACF;AAEA,SAAgB,uBACd,SAC+C;CAC/C,MAAM,mCAAmD,iBAAgC;EACvF,YAAY,MAA4B,UAAqD;GAC3F,IAAI,UACF,MAAM,MAAM,SAAS,QAAQ;QAE7B,MAAM,MAAM,OAAO;EAEvB;CACF;CAEA,OAAO;AACT"}
|
|
@@ -3,10 +3,10 @@ import { PlayerElementConstructor } from "../store/types.js";
|
|
|
3
3
|
import { PlayerController } from "./controller.js";
|
|
4
4
|
import { AnyPlayerFeature, AudioFeatures, AudioPlayerStore, PlayerStore, VideoFeatures, VideoPlayerStore } from "@videojs/core/dom";
|
|
5
5
|
//#region src/player/create-player.d.ts
|
|
6
|
-
interface CreatePlayerConfig<Features extends AnyPlayerFeature[]> {
|
|
6
|
+
export interface CreatePlayerConfig<Features extends AnyPlayerFeature[]> {
|
|
7
7
|
features: Features;
|
|
8
8
|
}
|
|
9
|
-
interface CreatePlayerResult<Store extends PlayerStore> {
|
|
9
|
+
export interface CreatePlayerResult<Store extends PlayerStore> {
|
|
10
10
|
/** Configured player element class that owns the store and attachment lifecycle. */
|
|
11
11
|
PlayerElement: PlayerElementConstructor<Store>;
|
|
12
12
|
/** Player controller bound to this player's context. */
|
|
@@ -37,21 +37,20 @@ interface CreatePlayerResult<Store extends PlayerStore> {
|
|
|
37
37
|
* @param config - Player configuration with features.
|
|
38
38
|
* @label Video
|
|
39
39
|
*/
|
|
40
|
-
declare function createPlayer(config: CreatePlayerConfig<VideoFeatures>): CreatePlayerResult<VideoPlayerStore>;
|
|
40
|
+
export declare function createPlayer(config: CreatePlayerConfig<VideoFeatures>): CreatePlayerResult<VideoPlayerStore>;
|
|
41
41
|
/**
|
|
42
42
|
* Creates a typed HTML audio player class and bound controller.
|
|
43
43
|
*
|
|
44
44
|
* @param config - Player configuration with features.
|
|
45
45
|
* @label Audio
|
|
46
46
|
*/
|
|
47
|
-
declare function createPlayer(config: CreatePlayerConfig<AudioFeatures>): CreatePlayerResult<AudioPlayerStore>;
|
|
47
|
+
export declare function createPlayer(config: CreatePlayerConfig<AudioFeatures>): CreatePlayerResult<AudioPlayerStore>;
|
|
48
48
|
/**
|
|
49
49
|
* Creates a typed HTML player class with custom features.
|
|
50
50
|
*
|
|
51
51
|
* @param config - Player configuration with features.
|
|
52
52
|
* @label Generic
|
|
53
53
|
*/
|
|
54
|
-
declare function createPlayer<const Features extends AnyPlayerFeature[]>(config: CreatePlayerConfig<Features>): CreatePlayerResult<PlayerStore<Features>>;
|
|
54
|
+
export declare function createPlayer<const Features extends AnyPlayerFeature[]>(config: CreatePlayerConfig<Features>): CreatePlayerResult<PlayerStore<Features>>;
|
|
55
55
|
//#endregion
|
|
56
|
-
export { CreatePlayerConfig, CreatePlayerResult, createPlayer };
|
|
57
56
|
//# sourceMappingURL=create-player.d.ts.map
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { containerContext, mediaContext, playerContext } from "./context.js";
|
|
1
|
+
import { containerContext, extensionContext, mediaContext, playerContext } from "./context.js";
|
|
2
2
|
import { createPlayerController } from "./controller.js";
|
|
3
3
|
import { createPlayerElement } from "./element.js";
|
|
4
4
|
import { combinePlayerFeatureConfigs } from "@videojs/core/dom";
|
|
@@ -12,6 +12,7 @@ function createPlayer(config) {
|
|
|
12
12
|
playerContext,
|
|
13
13
|
mediaContext,
|
|
14
14
|
containerContext,
|
|
15
|
+
extensionContext,
|
|
15
16
|
factory: () => createStore()(slice),
|
|
16
17
|
config: featureConfig
|
|
17
18
|
}),
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"create-player.js","names":[],"sources":["../../../src/player/create-player.ts"],"sourcesContent":["import {\n type AnyPlayerFeature,\n type AudioFeatures,\n type AudioPlayerStore,\n combinePlayerFeatureConfigs,\n type PlayerStore,\n type PlayerTarget,\n type VideoFeatures,\n type VideoPlayerStore,\n} from '@videojs/core/dom';\nimport { combine, createStore } from '@videojs/store';\n\nimport type { PlayerElementConstructor } from '../store/types';\nimport { containerContext, mediaContext, type PlayerContext, playerContext } from './context';\nimport { createPlayerController, type PlayerController } from './controller';\nimport { createPlayerElement } from './element';\n\nexport interface CreatePlayerConfig<Features extends AnyPlayerFeature[]> {\n features: Features;\n}\n\nexport interface CreatePlayerResult<Store extends PlayerStore> {\n /** Configured player element class that owns the store and attachment lifecycle. */\n PlayerElement: PlayerElementConstructor<Store>;\n\n /** Player controller bound to this player's context. */\n PlayerController: PlayerController.ConfiguredConstructor<Store>;\n\n /** Context that carries the player store to descendant elements. */\n playerContext: PlayerContext<Store>;\n}\n\n/**\n * Creates a typed HTML player class and bound controller.\n *\n * @example\n * ```ts\n * import { createPlayer, UIElement, selectPlayback } from '@videojs/html';\n * import { videoFeatures } from '@videojs/html/video';\n *\n * const { PlayerElement: VideoPlayerElement, PlayerController } = createPlayer({\n * features: videoFeatures,\n * });\n *\n * customElements.define('video-player', VideoPlayerElement);\n *\n * // Control element with selector\n * class PlayButton extends UIElement {\n * #playback = new PlayerController(this, selectPlayback);\n * }\n * ```;\n *\n * @param config - Player configuration with features.\n * @label Video\n */\nexport function createPlayer(config: CreatePlayerConfig<VideoFeatures>): CreatePlayerResult<VideoPlayerStore>;\n\n/**\n * Creates a typed HTML audio player class and bound controller.\n *\n * @param config - Player configuration with features.\n * @label Audio\n */\nexport function createPlayer(config: CreatePlayerConfig<AudioFeatures>): CreatePlayerResult<AudioPlayerStore>;\n\n/**\n * Creates a typed HTML player class with custom features.\n *\n * @param config - Player configuration with features.\n * @label Generic\n */\nexport function createPlayer<const Features extends AnyPlayerFeature[]>(\n config: CreatePlayerConfig<Features>\n): CreatePlayerResult<PlayerStore<Features>>;\n\nexport function createPlayer(config: CreatePlayerConfig<AnyPlayerFeature[]>): CreatePlayerResult<PlayerStore> {\n const slice = combine(...config.features);\n const featureConfig = combinePlayerFeatureConfigs(config.features);\n\n const ConfiguredPlayerElement = createPlayerElement<PlayerStore>({\n playerContext,\n mediaContext,\n containerContext,\n factory: () => createStore<PlayerTarget>()(slice),\n config: featureConfig,\n });\n\n return {\n PlayerElement: ConfiguredPlayerElement,\n PlayerController: createPlayerController(playerContext),\n playerContext,\n };\n}\n"],"mappings":";;;;;;AA2EA,SAAgB,aAAa,QAAiF;CAC5G,MAAM,QAAQ,QAAQ,GAAG,OAAO,QAAQ;CACxC,MAAM,gBAAgB,4BAA4B,OAAO,QAAQ;
|
|
1
|
+
{"version":3,"file":"create-player.js","names":[],"sources":["../../../src/player/create-player.ts"],"sourcesContent":["import {\n type AnyPlayerFeature,\n type AudioFeatures,\n type AudioPlayerStore,\n combinePlayerFeatureConfigs,\n type PlayerStore,\n type PlayerTarget,\n type VideoFeatures,\n type VideoPlayerStore,\n} from '@videojs/core/dom';\nimport { combine, createStore } from '@videojs/store';\n\nimport type { PlayerElementConstructor } from '../store/types';\nimport { containerContext, extensionContext, mediaContext, type PlayerContext, playerContext } from './context';\nimport { createPlayerController, type PlayerController } from './controller';\nimport { createPlayerElement } from './element';\n\nexport interface CreatePlayerConfig<Features extends AnyPlayerFeature[]> {\n features: Features;\n}\n\nexport interface CreatePlayerResult<Store extends PlayerStore> {\n /** Configured player element class that owns the store and attachment lifecycle. */\n PlayerElement: PlayerElementConstructor<Store>;\n\n /** Player controller bound to this player's context. */\n PlayerController: PlayerController.ConfiguredConstructor<Store>;\n\n /** Context that carries the player store to descendant elements. */\n playerContext: PlayerContext<Store>;\n}\n\n/**\n * Creates a typed HTML player class and bound controller.\n *\n * @example\n * ```ts\n * import { createPlayer, UIElement, selectPlayback } from '@videojs/html';\n * import { videoFeatures } from '@videojs/html/video';\n *\n * const { PlayerElement: VideoPlayerElement, PlayerController } = createPlayer({\n * features: videoFeatures,\n * });\n *\n * customElements.define('video-player', VideoPlayerElement);\n *\n * // Control element with selector\n * class PlayButton extends UIElement {\n * #playback = new PlayerController(this, selectPlayback);\n * }\n * ```;\n *\n * @param config - Player configuration with features.\n * @label Video\n */\nexport function createPlayer(config: CreatePlayerConfig<VideoFeatures>): CreatePlayerResult<VideoPlayerStore>;\n\n/**\n * Creates a typed HTML audio player class and bound controller.\n *\n * @param config - Player configuration with features.\n * @label Audio\n */\nexport function createPlayer(config: CreatePlayerConfig<AudioFeatures>): CreatePlayerResult<AudioPlayerStore>;\n\n/**\n * Creates a typed HTML player class with custom features.\n *\n * @param config - Player configuration with features.\n * @label Generic\n */\nexport function createPlayer<const Features extends AnyPlayerFeature[]>(\n config: CreatePlayerConfig<Features>\n): CreatePlayerResult<PlayerStore<Features>>;\n\nexport function createPlayer(config: CreatePlayerConfig<AnyPlayerFeature[]>): CreatePlayerResult<PlayerStore> {\n const slice = combine(...config.features);\n const featureConfig = combinePlayerFeatureConfigs(config.features);\n\n const ConfiguredPlayerElement = createPlayerElement<PlayerStore>({\n playerContext,\n mediaContext,\n containerContext,\n extensionContext,\n factory: () => createStore<PlayerTarget>()(slice),\n config: featureConfig,\n });\n\n return {\n PlayerElement: ConfiguredPlayerElement,\n PlayerController: createPlayerController(playerContext),\n playerContext,\n };\n}\n"],"mappings":";;;;;;AA2EA,SAAgB,aAAa,QAAiF;CAC5G,MAAM,QAAQ,QAAQ,GAAG,OAAO,QAAQ;CACxC,MAAM,gBAAgB,4BAA4B,OAAO,QAAQ;CAWjE,OAAO;EACL,eAV8B,oBAAiC;GAC/D;GACA;GACA;GACA;GACA,eAAe,YAA0B,CAAC,CAAC,KAAK;GAChD,QAAQ;EACV,CAGuC;EACrC,kBAAkB,uBAAuB,aAAa;EACtD;CACF;AACF"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { UIElement } from "../ui/ui-element.js";
|
|
2
|
-
import { setPlayerConfigValue } from "@videojs/core/dom";
|
|
3
|
-
import { ContextProvider } from "@videojs/element/context";
|
|
2
|
+
import { PlayerExtensionCoordinator, setPlayerConfigValue } from "@videojs/core/dom";
|
|
3
|
+
import { ContextProvider, ContextRoot } from "@videojs/element/context";
|
|
4
4
|
import { camelCase, kebabCase } from "@videojs/utils/string";
|
|
5
5
|
import { isNull } from "@videojs/utils/predicate";
|
|
6
6
|
//#region src/player/element.ts
|
|
@@ -29,15 +29,19 @@ function createPlayerElement(options) {
|
|
|
29
29
|
};
|
|
30
30
|
}
|
|
31
31
|
#store = options.factory();
|
|
32
|
+
#contextRoot = new ContextRoot();
|
|
32
33
|
#configuredStore = null;
|
|
33
34
|
#detach = null;
|
|
34
35
|
#connected = false;
|
|
35
36
|
#media = null;
|
|
36
37
|
#nativeMedia = null;
|
|
37
38
|
#container = null;
|
|
39
|
+
#attached = null;
|
|
38
40
|
#mediaRegistrations = [];
|
|
39
41
|
#containerRegistrations = [];
|
|
40
42
|
#observer = new MutationObserver(() => this.#syncNativeMedia());
|
|
43
|
+
#extensions = new PlayerExtensionCoordinator(() => this.#syncExtensions());
|
|
44
|
+
#registerExtension = (extension) => this.#extensions.register(extension);
|
|
41
45
|
#registerMedia = (media) => {
|
|
42
46
|
const registration = { value: media };
|
|
43
47
|
this.#mediaRegistrations.push(registration);
|
|
@@ -79,12 +83,20 @@ function createPlayerElement(options) {
|
|
|
79
83
|
registerContainer: this.#registerContainer
|
|
80
84
|
}
|
|
81
85
|
});
|
|
86
|
+
constructor() {
|
|
87
|
+
super();
|
|
88
|
+
new ContextProvider(this, {
|
|
89
|
+
context: options.extensionContext,
|
|
90
|
+
initialValue: { registerExtension: this.#registerExtension }
|
|
91
|
+
});
|
|
92
|
+
}
|
|
82
93
|
get store() {
|
|
83
94
|
if (isNull(this.#store)) this.#store = options.factory();
|
|
84
95
|
return this.#store;
|
|
85
96
|
}
|
|
86
97
|
connectedCallback() {
|
|
87
98
|
this.#connected = true;
|
|
99
|
+
this.#contextRoot.attach(this);
|
|
88
100
|
super.connectedCallback();
|
|
89
101
|
this.#syncInitialConfig();
|
|
90
102
|
this.#playerProvider.setValue(this.store);
|
|
@@ -101,13 +113,16 @@ function createPlayerElement(options) {
|
|
|
101
113
|
}
|
|
102
114
|
disconnectedCallback() {
|
|
103
115
|
this.#connected = false;
|
|
116
|
+
this.#contextRoot.detach(this);
|
|
104
117
|
this.#observer.disconnect();
|
|
105
118
|
this.#detachStore();
|
|
106
119
|
super.disconnectedCallback();
|
|
107
120
|
}
|
|
108
121
|
destroyCallback() {
|
|
122
|
+
this.#contextRoot.detach(this);
|
|
109
123
|
this.#observer.disconnect();
|
|
110
124
|
this.#detachStore();
|
|
125
|
+
this.#extensions.destroy();
|
|
111
126
|
this.#store?.destroy();
|
|
112
127
|
this.#store = null;
|
|
113
128
|
super.destroyCallback();
|
|
@@ -153,8 +168,7 @@ function createPlayerElement(options) {
|
|
|
153
168
|
});
|
|
154
169
|
}
|
|
155
170
|
#tryAttach() {
|
|
156
|
-
|
|
157
|
-
if (!this.#connected || !store) return;
|
|
171
|
+
if (!this.#connected || !this.#store) return;
|
|
158
172
|
if (!this.#media) {
|
|
159
173
|
this.#detachStore();
|
|
160
174
|
return;
|
|
@@ -163,16 +177,39 @@ function createPlayerElement(options) {
|
|
|
163
177
|
media: this.#media,
|
|
164
178
|
container: this.#container
|
|
165
179
|
};
|
|
166
|
-
const hasMediaChanged =
|
|
167
|
-
const hasContainerChanged =
|
|
168
|
-
if (hasMediaChanged || hasContainerChanged)
|
|
169
|
-
|
|
170
|
-
|
|
171
|
-
|
|
180
|
+
const hasMediaChanged = this.#attached?.media !== target.media;
|
|
181
|
+
const hasContainerChanged = this.#attached?.container !== target.container;
|
|
182
|
+
if (hasMediaChanged || hasContainerChanged) this.#attach(target);
|
|
183
|
+
}
|
|
184
|
+
/**
|
|
185
|
+
* Extensions attach before the store so their overrides are in place when features first read the media; the store
|
|
186
|
+
* then sees the media through the extensions' facade. Extensions follow the media only, so a container change
|
|
187
|
+
* re-attaches the store but leaves them attached.
|
|
188
|
+
*/
|
|
189
|
+
#attach(target) {
|
|
190
|
+
const store = this.#store;
|
|
191
|
+
if (!store) return;
|
|
192
|
+
this.#detach?.();
|
|
193
|
+
this.#attached = target;
|
|
194
|
+
this.#extensions.attach(target);
|
|
195
|
+
this.#detach = store.attach({
|
|
196
|
+
media: this.#extensions.getStoreMedia(target.media),
|
|
197
|
+
container: target.container
|
|
198
|
+
});
|
|
199
|
+
}
|
|
200
|
+
/**
|
|
201
|
+
* An extension that overrides media members was added or removed. Features hold members read at attach time (such
|
|
202
|
+
* as `remote`), so the store re-attaches to the same target to pick up what the extensions now own. Observers such
|
|
203
|
+
* as analytics never get here. Extensions themselves stay attached.
|
|
204
|
+
*/
|
|
205
|
+
#syncExtensions() {
|
|
206
|
+
if (this.#attached) this.#attach(this.#attached);
|
|
172
207
|
}
|
|
173
208
|
#detachStore() {
|
|
174
209
|
this.#detach?.();
|
|
175
210
|
this.#detach = null;
|
|
211
|
+
this.#extensions.detach();
|
|
212
|
+
this.#attached = null;
|
|
176
213
|
}
|
|
177
214
|
#syncInitialConfig() {
|
|
178
215
|
const store = this.store;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"element.js","names":["#syncNativeMedia","#mediaRegistrations","#syncMedia","#containerRegistrations","#syncContainer","#media","#registerMedia","#container","#registerContainer","#store","#connected","#syncInitialConfig","#playerProvider","#publishMedia","#publishContainer","#observer","#tryAttach","#detachStore","#nativeMedia","#mediaProvider","#containerProvider","#detach","#configuredStore"],"sources":["../../../src/player/element.ts"],"sourcesContent":["import {\n type MediaContainer,\n type PlayerFeatureConfig,\n type PlayerStore,\n type PlayerTarget,\n setPlayerConfigValue,\n} from '@videojs/core/dom';\nimport type { PropertyDeclarationMap, PropertyValues } from '@videojs/element';\nimport { ContextProvider } from '@videojs/element/context';\nimport type { Media } from '@videojs/media/dom';\nimport { isNull } from '@videojs/utils/predicate';\nimport { camelCase, kebabCase } from '@videojs/utils/string';\n\nimport type { PlayerElementConstructor } from '../store/types';\nimport { UIElement } from '../ui/ui-element';\nimport type { ContainerContext, MediaContext, PlayerContext } from './context';\n\nexport interface CreatePlayerElementOptions<Store extends PlayerStore> {\n playerContext: PlayerContext<Store>;\n mediaContext: MediaContext;\n containerContext: ContainerContext;\n factory: () => Store;\n config: PlayerFeatureConfig;\n}\n\ninterface Registration<Value> {\n value: Value;\n}\n\ninterface ConfigInput {\n property: string;\n attribute: string;\n entry: PlayerFeatureConfig[string];\n}\n\nfunction resolveInputs(config: PlayerFeatureConfig): ConfigInput[] {\n return Object.entries(config).map(([key, entry]) => {\n const declared = entry.html?.attribute;\n const attribute = declared ?? kebabCase(key);\n\n if (__DEV__ && declared && declared !== kebabCase(declared)) {\n console.warn(`[vjs-html] config html.attribute \"${declared}\" is not kebab-case and will never match`);\n }\n\n return { property: camelCase(attribute), attribute, entry };\n });\n}\n\n/** Creates a configured player element class that owns the store and attach lifecycle. */\nexport function createPlayerElement<Store extends PlayerStore>(\n options: CreatePlayerElementOptions<Store>\n): PlayerElementConstructor<Store>;\nexport function createPlayerElement<Store extends PlayerStore>(\n options: CreatePlayerElementOptions<Store>\n): typeof UIElement {\n const inputs = resolveInputs(options.config);\n\n class ConfiguredPlayerElement extends UIElement {\n static properties = {\n ...UIElement.properties,\n ...Object.fromEntries(inputs.map(({ property, attribute }) => [property, { type: String, attribute }])),\n } satisfies PropertyDeclarationMap;\n\n #store: Store | null = options.factory();\n #configuredStore: Store | null = null;\n #detach: (() => void) | null = null;\n #connected = false;\n #media: Media | null = null;\n #nativeMedia: HTMLMediaElement | null = null;\n #container: MediaContainer | null = null;\n #mediaRegistrations: Registration<Media>[] = [];\n #containerRegistrations: Registration<MediaContainer>[] = [];\n #observer = new MutationObserver(() => this.#syncNativeMedia());\n\n #registerMedia = (media: Media): (() => void) => {\n const registration = { value: media };\n\n this.#mediaRegistrations.push(registration);\n this.#syncMedia();\n\n return () => {\n const index = this.#mediaRegistrations.indexOf(registration);\n if (index < 0) return;\n\n this.#mediaRegistrations.splice(index, 1);\n this.#syncNativeMedia();\n this.#syncMedia();\n };\n };\n\n #registerContainer = (container: MediaContainer): (() => void) => {\n const registration = { value: container };\n\n this.#containerRegistrations.push(registration);\n this.#syncContainer();\n\n return () => {\n const index = this.#containerRegistrations.indexOf(registration);\n if (index < 0) return;\n\n this.#containerRegistrations.splice(index, 1);\n this.#syncContainer();\n };\n };\n\n #playerProvider = new ContextProvider(this, {\n context: options.playerContext,\n initialValue: this.store,\n });\n\n #mediaProvider = new ContextProvider(this, {\n context: options.mediaContext,\n initialValue: { media: this.#media, registerMedia: this.#registerMedia },\n });\n\n #containerProvider = new ContextProvider(this, {\n context: options.containerContext,\n initialValue: {\n container: this.#container,\n registerContainer: this.#registerContainer,\n },\n });\n\n get store(): Store {\n if (isNull(this.#store)) {\n this.#store = options.factory();\n }\n\n return this.#store;\n }\n\n override connectedCallback(): void {\n this.#connected = true;\n super.connectedCallback();\n this.#syncInitialConfig();\n this.#playerProvider.setValue(this.store);\n this.#publishMedia();\n this.#publishContainer();\n this.#observer.observe(this, { childList: true, subtree: true });\n queueMicrotask(() => {\n if (this.#connected) this.#syncNativeMedia();\n });\n this.#tryAttach();\n }\n\n override disconnectedCallback(): void {\n this.#connected = false;\n this.#observer.disconnect();\n this.#detachStore();\n super.disconnectedCallback();\n }\n\n override destroyCallback(): void {\n this.#observer.disconnect();\n this.#detachStore();\n this.#store?.destroy();\n this.#store = null;\n super.destroyCallback();\n }\n\n protected override willUpdate(changed: PropertyValues): void {\n super.willUpdate(changed);\n\n for (const { property, entry } of inputs) {\n if (!changed.has(property)) continue;\n\n // SAFETY: `resolveInputs` derives properties installed by this class's static property map.\n const configProperty = property as keyof this;\n\n setPlayerConfigValue(this.store, entry, this[configProperty]);\n }\n }\n\n #syncMedia(): void {\n const registered = this.#mediaRegistrations.at(-1)?.value ?? null;\n const media = registered ?? this.#nativeMedia;\n if (this.#media === media) return;\n\n this.#media = media;\n this.#publishMedia();\n this.#tryAttach();\n }\n\n #syncContainer(): void {\n const container = this.#containerRegistrations.at(-1)?.value ?? null;\n if (this.#container === container) return;\n\n this.#container = container;\n this.#publishContainer();\n this.#tryAttach();\n }\n\n #syncNativeMedia(): void {\n const media = this.querySelector<HTMLMediaElement>('video, audio');\n if (this.#nativeMedia === media) return;\n\n this.#nativeMedia = media;\n this.#syncMedia();\n }\n\n #publishMedia(): void {\n this.#mediaProvider.setValue({ media: this.#media, registerMedia: this.#registerMedia });\n }\n\n #publishContainer(): void {\n this.#containerProvider.setValue({\n container: this.#container,\n registerContainer: this.#registerContainer,\n });\n }\n\n #tryAttach(): void {\n const store = this.#store;\n if (!this.#connected || !store) return;\n\n if (!this.#media) {\n this.#detachStore();\n return;\n }\n\n const target: PlayerTarget = {\n media: this.#media,\n container: this.#container,\n };\n\n const hasMediaChanged = store.target?.media !== target.media;\n const hasContainerChanged = store.target?.container !== target.container;\n\n if (hasMediaChanged || hasContainerChanged) {\n this.#detachStore();\n this.#detach = store.attach(target);\n }\n }\n\n #detachStore(): void {\n this.#detach?.();\n this.#detach = null;\n }\n\n #syncInitialConfig(): void {\n const store = this.store;\n if (this.#configuredStore === store) return;\n\n for (const { property, entry } of inputs) {\n // SAFETY: `resolveInputs` derives properties installed by this class's static property map.\n const configProperty = property as keyof this;\n\n setPlayerConfigValue(store, entry, this[configProperty]);\n }\n\n this.#configuredStore = store;\n }\n }\n\n return ConfiguredPlayerElement;\n}\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"element.js","names":[],"sources":["../../../src/player/element.ts"],"sourcesContent":["import {\n type MediaContainer,\n type PlayerExtension,\n PlayerExtensionCoordinator,\n type PlayerFeatureConfig,\n type PlayerStore,\n type PlayerTarget,\n setPlayerConfigValue,\n} from '@videojs/core/dom';\nimport type { PropertyDeclarationMap, PropertyValues } from '@videojs/element';\nimport { ContextProvider, ContextRoot } from '@videojs/element/context';\nimport type { Media } from '@videojs/media/dom';\nimport { isNull } from '@videojs/utils/predicate';\nimport { camelCase, kebabCase } from '@videojs/utils/string';\n\nimport type { PlayerElementConstructor } from '../store/types';\nimport { UIElement } from '../ui/ui-element';\nimport type { ContainerContext, ExtensionContext, MediaContext, PlayerContext } from './context';\n\nexport interface CreatePlayerElementOptions<Store extends PlayerStore> {\n playerContext: PlayerContext<Store>;\n mediaContext: MediaContext;\n containerContext: ContainerContext;\n extensionContext: ExtensionContext;\n factory: () => Store;\n config: PlayerFeatureConfig;\n}\n\ninterface Registration<Value> {\n value: Value;\n}\n\ninterface ConfigInput {\n property: string;\n attribute: string;\n entry: PlayerFeatureConfig[string];\n}\n\nfunction resolveInputs(config: PlayerFeatureConfig): ConfigInput[] {\n return Object.entries(config).map(([key, entry]) => {\n const declared = entry.html?.attribute;\n const attribute = declared ?? kebabCase(key);\n\n if (__DEV__ && declared && declared !== kebabCase(declared)) {\n console.warn(`[vjs-html] config html.attribute \"${declared}\" is not kebab-case and will never match`);\n }\n\n return { property: camelCase(attribute), attribute, entry };\n });\n}\n\n/** Creates a configured player element class that owns the store and attach lifecycle. */\nexport function createPlayerElement<Store extends PlayerStore>(\n options: CreatePlayerElementOptions<Store>\n): PlayerElementConstructor<Store>;\nexport function createPlayerElement<Store extends PlayerStore>(\n options: CreatePlayerElementOptions<Store>\n): typeof UIElement {\n const inputs = resolveInputs(options.config);\n\n class ConfiguredPlayerElement extends UIElement {\n static properties = {\n ...UIElement.properties,\n ...Object.fromEntries(inputs.map(({ property, attribute }) => [property, { type: String, attribute }])),\n } satisfies PropertyDeclarationMap;\n\n #store: Store | null = options.factory();\n readonly #contextRoot = new ContextRoot();\n #configuredStore: Store | null = null;\n #detach: (() => void) | null = null;\n #connected = false;\n #media: Media | null = null;\n #nativeMedia: HTMLMediaElement | null = null;\n #container: MediaContainer | null = null;\n // The raw target the store is attached to; `store.target.media` may be the extensions' facade over it.\n #attached: PlayerTarget | null = null;\n #mediaRegistrations: Registration<Media>[] = [];\n #containerRegistrations: Registration<MediaContainer>[] = [];\n #observer = new MutationObserver(() => this.#syncNativeMedia());\n #extensions = new PlayerExtensionCoordinator(() => this.#syncExtensions());\n\n #registerExtension = (extension: PlayerExtension): (() => void) => this.#extensions.register(extension);\n\n #registerMedia = (media: Media): (() => void) => {\n const registration = { value: media };\n\n this.#mediaRegistrations.push(registration);\n this.#syncMedia();\n\n return () => {\n const index = this.#mediaRegistrations.indexOf(registration);\n if (index < 0) return;\n\n this.#mediaRegistrations.splice(index, 1);\n this.#syncNativeMedia();\n this.#syncMedia();\n };\n };\n\n #registerContainer = (container: MediaContainer): (() => void) => {\n const registration = { value: container };\n\n this.#containerRegistrations.push(registration);\n this.#syncContainer();\n\n return () => {\n const index = this.#containerRegistrations.indexOf(registration);\n if (index < 0) return;\n\n this.#containerRegistrations.splice(index, 1);\n this.#syncContainer();\n };\n };\n\n #playerProvider = new ContextProvider(this, {\n context: options.playerContext,\n initialValue: this.store,\n });\n\n #mediaProvider = new ContextProvider(this, {\n context: options.mediaContext,\n initialValue: { media: this.#media, registerMedia: this.#registerMedia },\n });\n\n #containerProvider = new ContextProvider(this, {\n context: options.containerContext,\n initialValue: {\n container: this.#container,\n registerContainer: this.#registerContainer,\n },\n });\n\n constructor() {\n super();\n // Registers itself as a controller on this element; the value never changes, so nothing reads it back.\n new ContextProvider(this, {\n context: options.extensionContext,\n initialValue: { registerExtension: this.#registerExtension },\n });\n }\n\n get store(): Store {\n if (isNull(this.#store)) {\n this.#store = options.factory();\n }\n\n return this.#store;\n }\n\n override connectedCallback(): void {\n this.#connected = true;\n // Retry part subscriptions when their parent is registered later.\n this.#contextRoot.attach(this);\n super.connectedCallback();\n this.#syncInitialConfig();\n this.#playerProvider.setValue(this.store);\n this.#publishMedia();\n this.#publishContainer();\n this.#observer.observe(this, { childList: true, subtree: true });\n queueMicrotask(() => {\n if (this.#connected) this.#syncNativeMedia();\n });\n this.#tryAttach();\n }\n\n override disconnectedCallback(): void {\n this.#connected = false;\n this.#contextRoot.detach(this);\n this.#observer.disconnect();\n this.#detachStore();\n super.disconnectedCallback();\n }\n\n override destroyCallback(): void {\n this.#contextRoot.detach(this);\n this.#observer.disconnect();\n this.#detachStore();\n this.#extensions.destroy();\n this.#store?.destroy();\n this.#store = null;\n super.destroyCallback();\n }\n\n protected override willUpdate(changed: PropertyValues): void {\n super.willUpdate(changed);\n\n for (const { property, entry } of inputs) {\n if (!changed.has(property)) continue;\n\n // SAFETY: `resolveInputs` derives properties installed by this class's static property map.\n const configProperty = property as keyof this;\n\n setPlayerConfigValue(this.store, entry, this[configProperty]);\n }\n }\n\n #syncMedia(): void {\n const registered = this.#mediaRegistrations.at(-1)?.value ?? null;\n const media = registered ?? this.#nativeMedia;\n if (this.#media === media) return;\n\n this.#media = media;\n this.#publishMedia();\n this.#tryAttach();\n }\n\n #syncContainer(): void {\n const container = this.#containerRegistrations.at(-1)?.value ?? null;\n if (this.#container === container) return;\n\n this.#container = container;\n this.#publishContainer();\n this.#tryAttach();\n }\n\n #syncNativeMedia(): void {\n const media = this.querySelector<HTMLMediaElement>('video, audio');\n if (this.#nativeMedia === media) return;\n\n this.#nativeMedia = media;\n this.#syncMedia();\n }\n\n #publishMedia(): void {\n this.#mediaProvider.setValue({ media: this.#media, registerMedia: this.#registerMedia });\n }\n\n #publishContainer(): void {\n this.#containerProvider.setValue({\n container: this.#container,\n registerContainer: this.#registerContainer,\n });\n }\n\n #tryAttach(): void {\n if (!this.#connected || !this.#store) return;\n\n if (!this.#media) {\n this.#detachStore();\n return;\n }\n\n const target: PlayerTarget = {\n media: this.#media,\n container: this.#container,\n };\n\n const hasMediaChanged = this.#attached?.media !== target.media;\n const hasContainerChanged = this.#attached?.container !== target.container;\n\n if (hasMediaChanged || hasContainerChanged) this.#attach(target);\n }\n\n /**\n * Extensions attach before the store so their overrides are in place when features first read the media; the store\n * then sees the media through the extensions' facade. Extensions follow the media only, so a container change\n * re-attaches the store but leaves them attached.\n */\n #attach(target: PlayerTarget): void {\n const store = this.#store;\n if (!store) return;\n\n this.#detach?.();\n this.#attached = target;\n this.#extensions.attach(target);\n this.#detach = store.attach({ media: this.#extensions.getStoreMedia(target.media), container: target.container });\n }\n\n /**\n * An extension that overrides media members was added or removed. Features hold members read at attach time (such\n * as `remote`), so the store re-attaches to the same target to pick up what the extensions now own. Observers such\n * as analytics never get here. Extensions themselves stay attached.\n */\n #syncExtensions(): void {\n if (this.#attached) this.#attach(this.#attached);\n }\n\n #detachStore(): void {\n this.#detach?.();\n this.#detach = null;\n this.#extensions.detach();\n this.#attached = null;\n }\n\n #syncInitialConfig(): void {\n const store = this.store;\n if (this.#configuredStore === store) return;\n\n for (const { property, entry } of inputs) {\n // SAFETY: `resolveInputs` derives properties installed by this class's static property map.\n const configProperty = property as keyof this;\n\n setPlayerConfigValue(store, entry, this[configProperty]);\n }\n\n this.#configuredStore = store;\n }\n }\n\n return ConfiguredPlayerElement;\n}\n"],"mappings":"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"}
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
import { SkinElement } from "../skin.js";
|
|
2
|
+
//#region src/presets/audio/compat-skin.d.ts
|
|
3
|
+
/** Packaged compat audio UI registered as `<audio-compat-skin>`. */
|
|
4
|
+
export declare class CompatAudioSkinElement extends SkinElement {
|
|
5
|
+
static readonly tagName = "audio-compat-skin";
|
|
6
|
+
static styles: import("@videojs/utils/dom").ShadowStyle;
|
|
7
|
+
static template: HTMLTemplateElement | null;
|
|
8
|
+
}
|
|
9
|
+
declare global {
|
|
10
|
+
interface HTMLElementTagNameMap {
|
|
11
|
+
[CompatAudioSkinElement.tagName]: CompatAudioSkinElement;
|
|
12
|
+
}
|
|
13
|
+
}
|
|
14
|
+
//#endregion
|
|
15
|
+
//# sourceMappingURL=compat-skin.d.ts.map
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
import { SkinElement } from "../skin.js";
|
|
2
|
+
import { template } from "../../internal/skins/compat-audio/template.js";
|
|
3
|
+
import compat_skin_default from "../../define/audio/compat-skin2.js";
|
|
4
|
+
import { createShadowStyle } from "@videojs/utils/dom";
|
|
5
|
+
//#region src/presets/audio/compat-skin.ts
|
|
6
|
+
/** Packaged compat audio UI registered as `<audio-compat-skin>`. */
|
|
7
|
+
var CompatAudioSkinElement = class extends SkinElement {
|
|
8
|
+
static {
|
|
9
|
+
this.tagName = "audio-compat-skin";
|
|
10
|
+
}
|
|
11
|
+
static {
|
|
12
|
+
this.styles = createShadowStyle(compat_skin_default);
|
|
13
|
+
}
|
|
14
|
+
static {
|
|
15
|
+
this.template = template;
|
|
16
|
+
}
|
|
17
|
+
};
|
|
18
|
+
//#endregion
|
|
19
|
+
export { CompatAudioSkinElement };
|
|
20
|
+
|
|
21
|
+
//# sourceMappingURL=compat-skin.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"compat-skin.js","names":["styles"],"sources":["../../../../src/presets/audio/compat-skin.ts"],"sourcesContent":["import { createShadowStyle } from '@videojs/utils/dom';\n\nimport { template } from '../../internal/skins/compat-audio/template';\nimport { SkinElement } from '../skin';\n\nimport styles from '../../define/audio/compat-skin.css?inline';\n\n/** Packaged compat audio UI registered as `<audio-compat-skin>`. */\nexport class CompatAudioSkinElement extends SkinElement {\n static readonly tagName = 'audio-compat-skin';\n static styles = createShadowStyle(styles);\n static template = template;\n}\n\ndeclare global {\n interface HTMLElementTagNameMap {\n [CompatAudioSkinElement.tagName]: CompatAudioSkinElement;\n }\n}\n"],"mappings":";;;;;;AAQA,IAAa,yBAAb,cAA4C,YAAY;;EAC5B,KAAA,UAAA;;;EACV,KAAA,SAAA,kBAAkBA,mBAAM;;;EACtB,KAAA,WAAA;;AACpB"}
|
|
@@ -1,5 +1,6 @@
|
|
|
1
|
+
import { CompatAudioSkinElement } from "./compat-skin.js";
|
|
1
2
|
import { AudioPlayerElement, PlayerController } from "./player.js";
|
|
2
3
|
import { AudioSkinElement } from "./skin.js";
|
|
3
|
-
import {
|
|
4
|
+
import { NeutralAudioSkinElement } from "./neutral-skin.js";
|
|
4
5
|
import { audioFeatures } from "@videojs/core/dom";
|
|
5
|
-
export { AudioPlayerElement, AudioSkinElement,
|
|
6
|
+
export { AudioPlayerElement, AudioSkinElement, CompatAudioSkinElement, NeutralAudioSkinElement, PlayerController, audioFeatures };
|
|
@@ -1,5 +1,6 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { CompatAudioSkinElement } from "./compat-skin.js";
|
|
2
|
+
import { NeutralAudioSkinElement } from "./neutral-skin.js";
|
|
2
3
|
import { AudioPlayerElement, PlayerController } from "./player.js";
|
|
3
4
|
import { AudioSkinElement } from "./skin.js";
|
|
4
5
|
import { audioFeatures } from "@videojs/core/dom";
|
|
5
|
-
export { AudioPlayerElement, AudioSkinElement,
|
|
6
|
+
export { AudioPlayerElement, AudioSkinElement, CompatAudioSkinElement, NeutralAudioSkinElement, PlayerController, audioFeatures };
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
import { SkinElement } from "../skin.js";
|
|
2
|
+
//#region src/presets/audio/neutral-skin.d.ts
|
|
3
|
+
/** Packaged Neutral audio UI registered as `<audio-neutral-skin>`. */
|
|
4
|
+
export declare class NeutralAudioSkinElement extends SkinElement {
|
|
5
|
+
static readonly tagName = "audio-neutral-skin";
|
|
6
|
+
static styles: CSSStyleSheet | string;
|
|
7
|
+
static template: HTMLTemplateElement | null;
|
|
8
|
+
}
|
|
9
|
+
declare global {
|
|
10
|
+
interface HTMLElementTagNameMap {
|
|
11
|
+
[NeutralAudioSkinElement.tagName]: NeutralAudioSkinElement;
|
|
12
|
+
}
|
|
13
|
+
}
|
|
14
|
+
//#endregion
|
|
15
|
+
//# sourceMappingURL=neutral-skin.d.ts.map
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
import { SkinElement } from "../skin.js";
|
|
2
|
+
import { template } from "../../internal/skins/neutral-audio/template.js";
|
|
3
|
+
import neutral_skin_default from "../../define/audio/neutral-skin2.js";
|
|
4
|
+
import { createShadowStyle } from "@videojs/utils/dom";
|
|
5
|
+
//#region src/presets/audio/neutral-skin.ts
|
|
6
|
+
/** Packaged Neutral audio UI registered as `<audio-neutral-skin>`. */
|
|
7
|
+
var NeutralAudioSkinElement = class extends SkinElement {
|
|
8
|
+
static {
|
|
9
|
+
this.tagName = "audio-neutral-skin";
|
|
10
|
+
}
|
|
11
|
+
static {
|
|
12
|
+
this.styles = createShadowStyle(neutral_skin_default);
|
|
13
|
+
}
|
|
14
|
+
static {
|
|
15
|
+
this.template = template;
|
|
16
|
+
}
|
|
17
|
+
};
|
|
18
|
+
//#endregion
|
|
19
|
+
export { NeutralAudioSkinElement };
|
|
20
|
+
|
|
21
|
+
//# sourceMappingURL=neutral-skin.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"neutral-skin.js","names":["styles"],"sources":["../../../../src/presets/audio/neutral-skin.ts"],"sourcesContent":["import { createShadowStyle } from '@videojs/utils/dom';\n\nimport { template } from '../../internal/skins/neutral-audio/template';\nimport { SkinElement } from '../skin';\n\nimport styles from '../../define/audio/neutral-skin.css?inline';\n\n/** Packaged Neutral audio UI registered as `<audio-neutral-skin>`. */\nexport class NeutralAudioSkinElement extends SkinElement {\n static readonly tagName = 'audio-neutral-skin';\n static styles: CSSStyleSheet | string = createShadowStyle(styles);\n static template = template;\n}\n\ndeclare global {\n interface HTMLElementTagNameMap {\n [NeutralAudioSkinElement.tagName]: NeutralAudioSkinElement;\n }\n}\n"],"mappings":";;;;;;AAQA,IAAa,0BAAb,cAA6C,YAAY;;EAC7B,KAAA,UAAA;;;EACc,KAAA,SAAA,kBAAkBA,oBAAM;;;EAC9C,KAAA,WAAA;;AACpB"}
|
|
@@ -4,8 +4,8 @@ import { index_d_exports } from "../../index.js";
|
|
|
4
4
|
//#region src/presets/audio/player.d.ts
|
|
5
5
|
declare const PlayerElement: PlayerElementConstructor<index_d_exports.AudioPlayerStore>;
|
|
6
6
|
/** Player controller bound to the standard audio player store. */
|
|
7
|
-
declare const PlayerController: PlayerController$1.ConfiguredConstructor<index_d_exports.AudioPlayerStore>;
|
|
8
|
-
declare class AudioPlayerElement extends PlayerElement {
|
|
7
|
+
export declare const PlayerController: PlayerController$1.ConfiguredConstructor<index_d_exports.AudioPlayerStore>;
|
|
8
|
+
export declare class AudioPlayerElement extends PlayerElement {
|
|
9
9
|
static readonly tagName = "audio-player";
|
|
10
10
|
}
|
|
11
11
|
declare global {
|
|
@@ -14,5 +14,4 @@ declare global {
|
|
|
14
14
|
}
|
|
15
15
|
}
|
|
16
16
|
//#endregion
|
|
17
|
-
export { AudioPlayerElement, PlayerController };
|
|
18
17
|
//# sourceMappingURL=player.d.ts.map
|
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
import { SkinElement } from "../skin.js";
|
|
2
2
|
//#region src/presets/audio/skin.d.ts
|
|
3
3
|
/** Packaged default audio UI registered as `<audio-skin>`. */
|
|
4
|
-
declare class AudioSkinElement extends SkinElement {
|
|
4
|
+
export declare class AudioSkinElement extends SkinElement {
|
|
5
5
|
static readonly tagName = "audio-skin";
|
|
6
|
-
static styles:
|
|
6
|
+
static styles: CSSStyleSheet | string;
|
|
7
7
|
static template: HTMLTemplateElement | null;
|
|
8
8
|
}
|
|
9
9
|
declare global {
|
|
@@ -12,5 +12,4 @@ declare global {
|
|
|
12
12
|
}
|
|
13
13
|
}
|
|
14
14
|
//#endregion
|
|
15
|
-
export { AudioSkinElement };
|
|
16
15
|
//# sourceMappingURL=skin.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"skin.js","names":["styles"],"sources":["../../../../src/presets/audio/skin.ts"],"sourcesContent":["import { createShadowStyle } from '@videojs/utils/dom';\n\nimport { template } from '../../internal/skins/default-audio/template';\nimport { SkinElement } from '../skin';\n\nimport styles from '../../define/audio/skin.css?inline';\n\n/** Packaged default audio UI registered as `<audio-skin>`. */\nexport class AudioSkinElement extends SkinElement {\n static readonly tagName = 'audio-skin';\n static styles = createShadowStyle(styles);\n static template = template;\n}\n\ndeclare global {\n interface HTMLElementTagNameMap {\n [AudioSkinElement.tagName]: AudioSkinElement;\n }\n}\n"],"mappings":";;;;;;AAQA,IAAa,mBAAb,cAAsC,YAAY;;EACtB,KAAA,UAAA;;;
|
|
1
|
+
{"version":3,"file":"skin.js","names":["styles"],"sources":["../../../../src/presets/audio/skin.ts"],"sourcesContent":["import { createShadowStyle } from '@videojs/utils/dom';\n\nimport { template } from '../../internal/skins/default-audio/template';\nimport { SkinElement } from '../skin';\n\nimport styles from '../../define/audio/skin.css?inline';\n\n/** Packaged default audio UI registered as `<audio-skin>`. */\nexport class AudioSkinElement extends SkinElement {\n static readonly tagName = 'audio-skin';\n static styles: CSSStyleSheet | string = createShadowStyle(styles);\n static template = template;\n}\n\ndeclare global {\n interface HTMLElementTagNameMap {\n [AudioSkinElement.tagName]: AudioSkinElement;\n }\n}\n"],"mappings":";;;;;;AAQA,IAAa,mBAAb,cAAsC,YAAY;;EACtB,KAAA,UAAA;;;EACc,KAAA,SAAA,kBAAkBA,YAAM;;;EAC9C,KAAA,WAAA;;AACpB"}
|
|
@@ -4,8 +4,8 @@ import { index_d_exports } from "../../index.js";
|
|
|
4
4
|
//#region src/presets/background/player.d.ts
|
|
5
5
|
declare const PlayerElement: PlayerElementConstructor<index_d_exports.PlayerStore<[]>>;
|
|
6
6
|
/** Player controller bound to the background video player store. */
|
|
7
|
-
declare const PlayerController: PlayerController$1.ConfiguredConstructor<index_d_exports.PlayerStore<[]>>;
|
|
8
|
-
declare class BackgroundVideoPlayerElement extends PlayerElement {
|
|
7
|
+
export declare const PlayerController: PlayerController$1.ConfiguredConstructor<index_d_exports.PlayerStore<[]>>;
|
|
8
|
+
export declare class BackgroundVideoPlayerElement extends PlayerElement {
|
|
9
9
|
static readonly tagName = "background-video-player";
|
|
10
10
|
}
|
|
11
11
|
declare global {
|
|
@@ -14,5 +14,4 @@ declare global {
|
|
|
14
14
|
}
|
|
15
15
|
}
|
|
16
16
|
//#endregion
|
|
17
|
-
export { BackgroundVideoPlayerElement, PlayerController };
|
|
18
17
|
//# sourceMappingURL=player.d.ts.map
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { ReactiveElement } from "@videojs/element";
|
|
2
2
|
//#region src/presets/background/skin.d.ts
|
|
3
3
|
declare function getTemplateHTML(): string;
|
|
4
|
-
declare class BackgroundVideoSkinElement extends ReactiveElement {
|
|
4
|
+
export declare class BackgroundVideoSkinElement extends ReactiveElement {
|
|
5
5
|
static readonly tagName = "background-video-skin";
|
|
6
6
|
static shadowRootOptions: ShadowRootInit;
|
|
7
7
|
static getTemplateHTML: typeof getTemplateHTML;
|
|
@@ -13,5 +13,4 @@ declare global {
|
|
|
13
13
|
}
|
|
14
14
|
}
|
|
15
15
|
//#endregion
|
|
16
|
-
export { BackgroundVideoSkinElement };
|
|
17
16
|
//# sourceMappingURL=skin.d.ts.map
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
import { SkinElement } from "../skin.js";
|
|
2
|
+
//#region src/presets/live-audio/compat-skin.d.ts
|
|
3
|
+
/** Packaged compat live-audio UI registered as `<live-audio-compat-skin>`. */
|
|
4
|
+
export declare class CompatLiveAudioSkinElement extends SkinElement {
|
|
5
|
+
static readonly tagName = "live-audio-compat-skin";
|
|
6
|
+
static styles: import("@videojs/utils/dom").ShadowStyle;
|
|
7
|
+
static template: HTMLTemplateElement | null;
|
|
8
|
+
}
|
|
9
|
+
declare global {
|
|
10
|
+
interface HTMLElementTagNameMap {
|
|
11
|
+
[CompatLiveAudioSkinElement.tagName]: CompatLiveAudioSkinElement;
|
|
12
|
+
}
|
|
13
|
+
}
|
|
14
|
+
//#endregion
|
|
15
|
+
//# sourceMappingURL=compat-skin.d.ts.map
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
import { SkinElement } from "../skin.js";
|
|
2
|
+
import { template } from "../../internal/skins/compat-live-audio/template.js";
|
|
3
|
+
import compat_skin_default from "../../define/live-audio/compat-skin2.js";
|
|
4
|
+
import { createShadowStyle } from "@videojs/utils/dom";
|
|
5
|
+
//#region src/presets/live-audio/compat-skin.ts
|
|
6
|
+
/** Packaged compat live-audio UI registered as `<live-audio-compat-skin>`. */
|
|
7
|
+
var CompatLiveAudioSkinElement = class extends SkinElement {
|
|
8
|
+
static {
|
|
9
|
+
this.tagName = "live-audio-compat-skin";
|
|
10
|
+
}
|
|
11
|
+
static {
|
|
12
|
+
this.styles = createShadowStyle(compat_skin_default);
|
|
13
|
+
}
|
|
14
|
+
static {
|
|
15
|
+
this.template = template;
|
|
16
|
+
}
|
|
17
|
+
};
|
|
18
|
+
//#endregion
|
|
19
|
+
export { CompatLiveAudioSkinElement };
|
|
20
|
+
|
|
21
|
+
//# sourceMappingURL=compat-skin.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"compat-skin.js","names":["styles"],"sources":["../../../../src/presets/live-audio/compat-skin.ts"],"sourcesContent":["import { createShadowStyle } from '@videojs/utils/dom';\n\nimport { template } from '../../internal/skins/compat-live-audio/template';\nimport { SkinElement } from '../skin';\n\nimport styles from '../../define/live-audio/compat-skin.css?inline';\n\n/** Packaged compat live-audio UI registered as `<live-audio-compat-skin>`. */\nexport class CompatLiveAudioSkinElement extends SkinElement {\n static readonly tagName = 'live-audio-compat-skin';\n static styles = createShadowStyle(styles);\n static template = template;\n}\n\ndeclare global {\n interface HTMLElementTagNameMap {\n [CompatLiveAudioSkinElement.tagName]: CompatLiveAudioSkinElement;\n }\n}\n"],"mappings":";;;;;;AAQA,IAAa,6BAAb,cAAgD,YAAY;;EAChC,KAAA,UAAA;;;EACV,KAAA,SAAA,kBAAkBA,mBAAM;;;EACtB,KAAA,WAAA;;AACpB"}
|
|
@@ -1,5 +1,6 @@
|
|
|
1
|
+
import { CompatLiveAudioSkinElement } from "./compat-skin.js";
|
|
1
2
|
import { LiveAudioPlayerElement, PlayerController } from "./player.js";
|
|
2
3
|
import { LiveAudioSkinElement } from "./skin.js";
|
|
3
|
-
import {
|
|
4
|
+
import { NeutralLiveAudioSkinElement } from "./neutral-skin.js";
|
|
4
5
|
import { liveAudioFeatures } from "@videojs/core/dom";
|
|
5
|
-
export { LiveAudioPlayerElement, LiveAudioSkinElement,
|
|
6
|
+
export { CompatLiveAudioSkinElement, LiveAudioPlayerElement, LiveAudioSkinElement, NeutralLiveAudioSkinElement, PlayerController, liveAudioFeatures };
|
|
@@ -1,5 +1,6 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { CompatLiveAudioSkinElement } from "./compat-skin.js";
|
|
2
|
+
import { NeutralLiveAudioSkinElement } from "./neutral-skin.js";
|
|
2
3
|
import { LiveAudioPlayerElement, PlayerController } from "./player.js";
|
|
3
4
|
import { LiveAudioSkinElement } from "./skin.js";
|
|
4
5
|
import { liveAudioFeatures } from "@videojs/core/dom";
|
|
5
|
-
export { LiveAudioPlayerElement, LiveAudioSkinElement,
|
|
6
|
+
export { CompatLiveAudioSkinElement, LiveAudioPlayerElement, LiveAudioSkinElement, NeutralLiveAudioSkinElement, PlayerController, liveAudioFeatures };
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
import { SkinElement } from "../skin.js";
|
|
2
|
+
//#region src/presets/live-audio/neutral-skin.d.ts
|
|
3
|
+
/** Packaged Neutral live-audio UI registered as `<live-audio-neutral-skin>`. */
|
|
4
|
+
export declare class NeutralLiveAudioSkinElement extends SkinElement {
|
|
5
|
+
static readonly tagName = "live-audio-neutral-skin";
|
|
6
|
+
static styles: CSSStyleSheet | string;
|
|
7
|
+
static template: HTMLTemplateElement | null;
|
|
8
|
+
}
|
|
9
|
+
declare global {
|
|
10
|
+
interface HTMLElementTagNameMap {
|
|
11
|
+
[NeutralLiveAudioSkinElement.tagName]: NeutralLiveAudioSkinElement;
|
|
12
|
+
}
|
|
13
|
+
}
|
|
14
|
+
//#endregion
|
|
15
|
+
//# sourceMappingURL=neutral-skin.d.ts.map
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
import { SkinElement } from "../skin.js";
|
|
2
|
+
import { template } from "../../internal/skins/neutral-live-audio/template.js";
|
|
3
|
+
import neutral_skin_default from "../../define/live-audio/neutral-skin2.js";
|
|
4
|
+
import { createShadowStyle } from "@videojs/utils/dom";
|
|
5
|
+
//#region src/presets/live-audio/neutral-skin.ts
|
|
6
|
+
/** Packaged Neutral live-audio UI registered as `<live-audio-neutral-skin>`. */
|
|
7
|
+
var NeutralLiveAudioSkinElement = class extends SkinElement {
|
|
8
|
+
static {
|
|
9
|
+
this.tagName = "live-audio-neutral-skin";
|
|
10
|
+
}
|
|
11
|
+
static {
|
|
12
|
+
this.styles = createShadowStyle(neutral_skin_default);
|
|
13
|
+
}
|
|
14
|
+
static {
|
|
15
|
+
this.template = template;
|
|
16
|
+
}
|
|
17
|
+
};
|
|
18
|
+
//#endregion
|
|
19
|
+
export { NeutralLiveAudioSkinElement };
|
|
20
|
+
|
|
21
|
+
//# sourceMappingURL=neutral-skin.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"neutral-skin.js","names":["styles"],"sources":["../../../../src/presets/live-audio/neutral-skin.ts"],"sourcesContent":["import { createShadowStyle } from '@videojs/utils/dom';\n\nimport { template } from '../../internal/skins/neutral-live-audio/template';\nimport { SkinElement } from '../skin';\n\nimport styles from '../../define/live-audio/neutral-skin.css?inline';\n\n/** Packaged Neutral live-audio UI registered as `<live-audio-neutral-skin>`. */\nexport class NeutralLiveAudioSkinElement extends SkinElement {\n static readonly tagName = 'live-audio-neutral-skin';\n static styles: CSSStyleSheet | string = createShadowStyle(styles);\n static template = template;\n}\n\ndeclare global {\n interface HTMLElementTagNameMap {\n [NeutralLiveAudioSkinElement.tagName]: NeutralLiveAudioSkinElement;\n }\n}\n"],"mappings":";;;;;;AAQA,IAAa,8BAAb,cAAiD,YAAY;;EACjC,KAAA,UAAA;;;EACc,KAAA,SAAA,kBAAkBA,oBAAM;;;EAC9C,KAAA,WAAA;;AACpB"}
|
|
@@ -4,8 +4,8 @@ import { index_d_exports } from "../../index.js";
|
|
|
4
4
|
//#region src/presets/live-audio/player.d.ts
|
|
5
5
|
declare const PlayerElement: PlayerElementConstructor<index_d_exports.PlayerStore<index_d_exports.LiveAudioFeatures>>;
|
|
6
6
|
/** Player controller bound to the live audio player store. */
|
|
7
|
-
declare const PlayerController: PlayerController$1.ConfiguredConstructor<index_d_exports.PlayerStore<index_d_exports.LiveAudioFeatures>>;
|
|
8
|
-
declare class LiveAudioPlayerElement extends PlayerElement {
|
|
7
|
+
export declare const PlayerController: PlayerController$1.ConfiguredConstructor<index_d_exports.PlayerStore<index_d_exports.LiveAudioFeatures>>;
|
|
8
|
+
export declare class LiveAudioPlayerElement extends PlayerElement {
|
|
9
9
|
static readonly tagName = "live-audio-player";
|
|
10
10
|
}
|
|
11
11
|
declare global {
|
|
@@ -14,5 +14,4 @@ declare global {
|
|
|
14
14
|
}
|
|
15
15
|
}
|
|
16
16
|
//#endregion
|
|
17
|
-
export { LiveAudioPlayerElement, PlayerController };
|
|
18
17
|
//# sourceMappingURL=player.d.ts.map
|
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
import { SkinElement } from "../skin.js";
|
|
2
2
|
//#region src/presets/live-audio/skin.d.ts
|
|
3
3
|
/** Packaged default live-audio UI registered as `<live-audio-skin>`. */
|
|
4
|
-
declare class LiveAudioSkinElement extends SkinElement {
|
|
4
|
+
export declare class LiveAudioSkinElement extends SkinElement {
|
|
5
5
|
static readonly tagName = "live-audio-skin";
|
|
6
|
-
static styles:
|
|
6
|
+
static styles: CSSStyleSheet | string;
|
|
7
7
|
static template: HTMLTemplateElement | null;
|
|
8
8
|
}
|
|
9
9
|
declare global {
|
|
@@ -12,5 +12,4 @@ declare global {
|
|
|
12
12
|
}
|
|
13
13
|
}
|
|
14
14
|
//#endregion
|
|
15
|
-
export { LiveAudioSkinElement };
|
|
16
15
|
//# sourceMappingURL=skin.d.ts.map
|