@videojs/html 10.0.0-rc.4 → 10.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +0 -2
- 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-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 +5 -9
- package/docs/guides/installation-shadcn.md +4 -8
- package/docs/guides/installation-svelte.md +5 -9
- package/docs/guides/installation-vue.md +5 -9
- package/docs/guides/installation.md +5 -9
- 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 +7 -6
- package/docs/guides/media-sources.md +8 -5
- 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 +255 -190
- 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 +19 -54
- package/docs/llms.txt +46 -12
- 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} +6 -6
- package/docs/reference/components/audio-skin.md +2 -2
- 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} +6 -6
- package/docs/reference/components/live-audio-skin.md +2 -2
- 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} +6 -6
- package/docs/reference/components/live-video-skin.md +2 -2
- 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} +6 -6
- package/docs/reference/components/video-skin.md +2 -2
- 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,16 +1,63 @@
|
|
|
1
1
|
# Migrate from Media Chrome
|
|
2
2
|
|
|
3
|
-
|
|
3
|
+
Move a Media Chrome player to Video.js v10, mapping its controller, controls, styles, and imperative calls
|
|
4
4
|
|
|
5
|
-
|
|
5
|
+
Replace Media Chrome’s controller with a Video.js player and container, then migrate your controls. The libraries share `media-*` tag names, but their attributes, child markup, icons, and styles differ.
|
|
6
6
|
|
|
7
7
|
> **Note**
|
|
8
8
|
>
|
|
9
|
-
>
|
|
9
|
+
> This guide is for apps that build their own player from Media Chrome elements. If you use Mux Player, follow [Migrate from Mux Player](./migrate-from-mux-player.md) instead.
|
|
10
|
+
|
|
11
|
+
## AI Quickstart
|
|
12
|
+
|
|
13
|
+
Paste this prompt into your coding agent:
|
|
14
|
+
|
|
15
|
+
```
|
|
16
|
+
Migrate this project's Media Chrome player to Video.js v10 for HTML. Use @videojs/html or its CDN bundles for a page without a build step.
|
|
17
|
+
|
|
18
|
+
Run `npx @videojs/cli agents skills` to get the Video.js skill installation instructions. Follow the printed steps for your agent. If they require a session reload, reload the session and continue with this prompt. If you can't run commands, use the installation instructions at https://github.com/videojs/skills. Use the skill throughout this migration.
|
|
19
|
+
|
|
20
|
+
Read the migration guide at https://videojs.org/docs/framework/html/guides/migrate-from-media-chrome, including its Known gaps section. Inspect the existing player and list its media URLs, source formats, tracks, options, custom controls, event handlers, and integrations. Compare that list with the known gaps and report unsupported requirements before changing code. Keep the existing media URLs and required behavior throughout the migration.
|
|
21
|
+
|
|
22
|
+
For installation guidance, read https://videojs.org/docs/framework/html/llms.txt and follow its link to the installation guide. Keep using that online index for a CDN installation.
|
|
23
|
+
|
|
24
|
+
From the application root, run `npx @videojs/cli agents init` without flags to list installation options and their accepted values.
|
|
25
|
+
|
|
26
|
+
Choose values for these options:
|
|
27
|
+
- --media and --source-url: the existing content and playback requirements.
|
|
28
|
+
- --method: the installation method.
|
|
29
|
+
- --preset, --skin, and --extensions: the player UI and integrations.
|
|
30
|
+
|
|
31
|
+
Add those options to `npx @videojs/cli agents init --framework html --project existing` and run the command to print the installation plan. Follow any version-mismatch notice. Both CLI commands print instructions without changing project files. Use the printed plan to install Video.js and configure the player.
|
|
32
|
+
|
|
33
|
+
After installing a package, switch to node_modules/@videojs/html/docs/llms.txt for documentation matching its version.
|
|
34
|
+
|
|
35
|
+
Implement the migration. Then verify playback, captions, controls, and any analytics integration on every browser the project supports.
|
|
36
|
+
```
|
|
10
37
|
|
|
11
38
|
## Before you begin
|
|
12
39
|
|
|
13
|
-
|
|
40
|
+
Check [Known gaps](#known-gaps) for controller options and preferences your app relies on. List your media sources, custom controls, event handlers, and theme rules.
|
|
41
|
+
|
|
42
|
+
Install Video.js and choose a [preset](./presets.md) (see [Installation](./installation.md)). If the preset’s ready-made skin has the controls you need, start with it. To keep a custom control bar, build it from the individual Video.js UI components instead.
|
|
43
|
+
|
|
44
|
+
Before loading Video.js HTML, remove every Media Chrome import and CDN script from the page, including any that another component loads. Then reload the page. Both libraries register custom elements with names such as `media-play-button`. A document can hold only one definition per name, and Video.js keeps any definition that already exists. If you need both libraries during migration, load them in separate documents, such as an iframe.
|
|
45
|
+
|
|
46
|
+
For a page without a bundler, load the CDN video preset. It registers the player, the UI elements and icons used in the controller example below, and the `<media-i18n>` element:
|
|
47
|
+
|
|
48
|
+
```html
|
|
49
|
+
<script type="module" src="https://cdn.jsdelivr.net/npm/@videojs/cdn@10.0.0/video.js"></script>
|
|
50
|
+
```
|
|
51
|
+
|
|
52
|
+
Some elements in the mapping table below need separate bundles. If you use any of these elements, also load its bundle:
|
|
53
|
+
|
|
54
|
+
- `media-seek-button`: `https://cdn.jsdelivr.net/npm/@videojs/cdn@10.0.0/ui/seek-button.js`
|
|
55
|
+
- `media-playback-rate-button`: `https://cdn.jsdelivr.net/npm/@videojs/cdn@10.0.0/ui/playback-rate-button.js`
|
|
56
|
+
- `media-thumbnail`: `https://cdn.jsdelivr.net/npm/@videojs/cdn@10.0.0/ui/thumbnail.js`
|
|
57
|
+
|
|
58
|
+
Load each with `<script type="module" src="…"></script>`. See [CDN](./cdn.md) for individual component bundles.
|
|
59
|
+
|
|
60
|
+
For a bundler installation:
|
|
14
61
|
|
|
15
62
|
```bash
|
|
16
63
|
npm install @videojs/html
|
|
@@ -18,18 +65,22 @@ npm install @videojs/html
|
|
|
18
65
|
|
|
19
66
|
## Map the controller
|
|
20
67
|
|
|
21
|
-
|
|
68
|
+
The examples use the same MP4 source before and after migration. For HLS, DASH, or an embed, keep your existing source and choose its [media component](./media-sources.md).
|
|
69
|
+
|
|
70
|
+
Media Chrome wraps a slotted `<video slot="media">` in a single `<media-controller>`. Video.js splits that into two elements. The player owns state and renders no UI. The `<media-container>` holds the media and controls. Put the media directly inside the container.
|
|
22
71
|
|
|
23
72
|
```html
|
|
24
73
|
<!-- Media Chrome -->
|
|
25
74
|
<media-controller>
|
|
26
|
-
<video slot="media" src="video.
|
|
75
|
+
<video slot="media" src="video.mp4"></video>
|
|
27
76
|
<media-control-bar>
|
|
28
77
|
<media-play-button></media-play-button>
|
|
29
78
|
</media-control-bar>
|
|
30
79
|
</media-controller>
|
|
31
80
|
```
|
|
32
81
|
|
|
82
|
+
Use the HTML and CSS tabs for both installation methods. With a bundler, also add the JavaScript imports. With the CDN video preset, skip those imports because the preset already registers these elements.
|
|
83
|
+
|
|
33
84
|
**JavaScript**
|
|
34
85
|
|
|
35
86
|
```js
|
|
@@ -46,13 +97,13 @@ import '@videojs/html/icons/element';
|
|
|
46
97
|
```html
|
|
47
98
|
<!-- Video.js -->
|
|
48
99
|
<video-player>
|
|
49
|
-
<media-container>
|
|
50
|
-
<video src="video.mp4"></video>
|
|
100
|
+
<media-container class="app-player-container">
|
|
101
|
+
<video class="app-player-media" src="video.mp4" playsinline></video>
|
|
51
102
|
<media-controls>
|
|
52
|
-
<media-controls-content>
|
|
103
|
+
<media-controls-content class="app-player-controls">
|
|
53
104
|
<media-play-button class="player-play-button">
|
|
54
|
-
<media-icon class="player-play-icon" name="play"></media-icon>
|
|
55
|
-
<media-icon class="player-pause-icon" name="pause"></media-icon>
|
|
105
|
+
<media-icon class="player-play-icon" name="play" aria-hidden="true"></media-icon>
|
|
106
|
+
<media-icon class="player-pause-icon" name="pause" aria-hidden="true"></media-icon>
|
|
56
107
|
</media-play-button>
|
|
57
108
|
</media-controls-content>
|
|
58
109
|
</media-controls>
|
|
@@ -63,7 +114,55 @@ import '@videojs/html/icons/element';
|
|
|
63
114
|
**CSS**
|
|
64
115
|
|
|
65
116
|
```css
|
|
66
|
-
.player-
|
|
117
|
+
.app-player-container {
|
|
118
|
+
position: relative;
|
|
119
|
+
display: block;
|
|
120
|
+
width: 100%;
|
|
121
|
+
aspect-ratio: 16 / 9;
|
|
122
|
+
}
|
|
123
|
+
|
|
124
|
+
.app-player-media {
|
|
125
|
+
display: block;
|
|
126
|
+
width: 100%;
|
|
127
|
+
height: 100%;
|
|
128
|
+
object-fit: contain;
|
|
129
|
+
}
|
|
130
|
+
|
|
131
|
+
.app-player-controls {
|
|
132
|
+
position: absolute;
|
|
133
|
+
inset-inline: 0;
|
|
134
|
+
bottom: 0;
|
|
135
|
+
display: flex;
|
|
136
|
+
padding: 0.75rem;
|
|
137
|
+
background: rgb(0 0 0 / 70%);
|
|
138
|
+
}
|
|
139
|
+
|
|
140
|
+
.app-player-controls:not([data-visible]) {
|
|
141
|
+
visibility: hidden;
|
|
142
|
+
pointer-events: none;
|
|
143
|
+
}
|
|
144
|
+
|
|
145
|
+
.player-play-button {
|
|
146
|
+
padding: 0.5rem;
|
|
147
|
+
color: white;
|
|
148
|
+
cursor: pointer;
|
|
149
|
+
background: #222;
|
|
150
|
+
border: 1px solid white;
|
|
151
|
+
border-radius: 0.25rem;
|
|
152
|
+
}
|
|
153
|
+
|
|
154
|
+
.player-play-button:focus-visible {
|
|
155
|
+
outline: 2px solid white;
|
|
156
|
+
outline-offset: 2px;
|
|
157
|
+
}
|
|
158
|
+
|
|
159
|
+
.player-play-button media-icon {
|
|
160
|
+
display: inline-flex;
|
|
161
|
+
width: 1.5rem;
|
|
162
|
+
height: 1.5rem;
|
|
163
|
+
}
|
|
164
|
+
|
|
165
|
+
.player-play-button .player-pause-icon {
|
|
67
166
|
display: none;
|
|
68
167
|
}
|
|
69
168
|
|
|
@@ -78,25 +177,25 @@ import '@videojs/html/icons/element';
|
|
|
78
177
|
|
|
79
178
|
## Map controller attributes
|
|
80
179
|
|
|
81
|
-
Media Chrome configures behavior through `<media-controller>` attributes. Video.js v10 has no single controller element, so these
|
|
180
|
+
Media Chrome configures behavior through `<media-controller>` attributes. Video.js v10 has no single controller element, so these settings move to three places:
|
|
82
181
|
|
|
83
|
-
- **Player features** — playback behavior that comes from the player’s feature set. A preset
|
|
182
|
+
- **Player features** — playback behavior that comes from the player’s feature set. A preset includes a fixed feature set. With `createPlayer`, you choose the feature set.
|
|
84
183
|
- **`<media-container>` and `<media-controls>`** — layout, focus, and autohide.
|
|
85
|
-
- **Dedicated elements** — `<media-hotkey>`, `<media-gesture>`, and
|
|
184
|
+
- **Dedicated elements** — `<media-hotkey>`, `<media-gesture>`, and similar elements, declared in markup.
|
|
86
185
|
|
|
87
186
|
| Media Chrome attribute | Video.js v10 | How |
|
|
88
187
|
| --- | --- | --- |
|
|
89
188
|
| `audio` | the audio preset | Choose an audio player and audio skin rather than toggling at runtime. |
|
|
90
|
-
| `autohide` | `media-controls` (built in) | Controls
|
|
189
|
+
| `autohide` | `media-controls` (built in) | Controls hide after inactivity by default. For `autohide="-1"`, set `visibility="always"` on `media-controls`. The delay is not configurable yet; see [Known gaps](#known-gaps). |
|
|
91
190
|
| `fullscreenelement` | `media-container` | Fullscreen targets the container element. |
|
|
92
|
-
| `gesturesdisabled` | `media-gesture
|
|
93
|
-
| `nohotkeys` | `media-hotkey
|
|
191
|
+
| `gesturesdisabled` | `disabled` on each `media-gesture`, or omit it | Media Chrome disables all gestures at once. In Video.js, set `disabled` on each `media-gesture` or omit it. |
|
|
192
|
+
| `nohotkeys` | `disabled` on each `media-hotkey`, or omit it | Media Chrome disables all hotkeys at once. In Video.js, set `disabled` on each `media-hotkey` or omit it. |
|
|
94
193
|
| `hotkeys="noarrowleft …"` | individual `media-hotkey` | Each shortcut is its own element, so remove the ones you don’t want. |
|
|
95
194
|
| `keyboardforwardseekoffset`, `keyboardbackwardseekoffset` | `value` on `media-hotkey` | Set the signed seek amount per element. |
|
|
96
|
-
| `defaultsubtitles` | `<track default>` for authored tracks | Add `default` to an authored captions or subtitles track.
|
|
97
|
-
| `defaultstreamtype` | `streamType` feature | Partial
|
|
195
|
+
| `defaultsubtitles` | `<track default>` for authored tracks | Add `default` to an authored captions or subtitles track. For tracks supplied by a provider or manifest, Video.js has no player-level setting that picks the default. |
|
|
196
|
+
| `defaultstreamtype` | `streamType` feature | Partial support. Video.js reads the stream type from the media. You cannot set a default stream type for use before the media loads. |
|
|
98
197
|
| `liveedgeoffset`, `seektoliveoffset` | live media engine | Live-edge behavior lives in the playback engine, not a UI attribute. |
|
|
99
|
-
| `lang` | i18n
|
|
198
|
+
| `lang` | `<media-i18n>` | Wrap the player in `<media-i18n lang="…">`. CDN presets register it; with a bundler, import `@videojs/html/i18n`. See [Internationalize the player](./internationalization.md). |
|
|
100
199
|
|
|
101
200
|
### Hotkeys
|
|
102
201
|
|
|
@@ -109,11 +208,13 @@ Media Chrome toggles keyboard shortcuts with `nohotkeys` and `hotkeys`. Video.js
|
|
|
109
208
|
<media-hotkey keys="ArrowLeft" action="seekStep" value="-5"></media-hotkey>
|
|
110
209
|
```
|
|
111
210
|
|
|
211
|
+
In a custom layout, put these elements inside the player’s `<media-container>`. With installed skin source, edit its existing hotkey declarations.
|
|
212
|
+
|
|
112
213
|
To drop a shortcut, remove its element or add `disabled`. There’s no global “all hotkeys off” switch; omit the elements you don’t need.
|
|
113
214
|
|
|
114
215
|
### Gestures
|
|
115
216
|
|
|
116
|
-
|
|
217
|
+
Declare each tap or double-tap behavior with a `<media-gesture>` element. For example, declare a tap that toggles playback, or a double-tap that seeks or enters fullscreen:
|
|
117
218
|
|
|
118
219
|
```html
|
|
119
220
|
<media-gesture type="tap" action="togglePaused" pointer="mouse" region="center"></media-gesture>
|
|
@@ -121,11 +222,13 @@ To drop a shortcut, remove its element or add `disabled`. There’s no global
|
|
|
121
222
|
<media-gesture type="doubletap" action="seekStep" value="10" region="right"></media-gesture>
|
|
122
223
|
```
|
|
123
224
|
|
|
225
|
+
In a custom layout, put these elements inside the player’s `<media-container>`. With installed skin source, edit its existing gesture declarations. A packaged skin already declares its own gestures, so do not add duplicates.
|
|
226
|
+
|
|
124
227
|
Remove an element or set `disabled` to turn a gesture off.
|
|
125
228
|
|
|
126
229
|
## Map the elements
|
|
127
230
|
|
|
128
|
-
Most names match.
|
|
231
|
+
Most names match. Start with these name changes:
|
|
129
232
|
|
|
130
233
|
| Media Chrome | Video.js v10 | Note |
|
|
131
234
|
| --- | --- | --- |
|
|
@@ -133,7 +236,7 @@ Most names match. These are the renames that bite:
|
|
|
133
236
|
| `media-control-bar` | `media-controls`, `media-controls-group` | grouping |
|
|
134
237
|
| `media-time-range` | `media-time-slider` | “range” becomes “slider” |
|
|
135
238
|
| `media-volume-range` | `media-volume-slider` | “range” becomes “slider” |
|
|
136
|
-
| `media-time-display`, `media-duration-display` | `media-time` | one element
|
|
239
|
+
| `media-time-display`, `media-duration-display` | `media-time` | one element; set its `type` attribute to choose the value |
|
|
137
240
|
| `media-loading-indicator` | `media-buffering-indicator` | rename |
|
|
138
241
|
| `media-poster-image` | `media-poster` | rename, and the image source moves — see below |
|
|
139
242
|
| `media-seek-backward-button`, `media-seek-forward-button` | `media-seek-button` | one element, direction via signed `seconds` |
|
|
@@ -150,9 +253,9 @@ Unchanged names: `media-play-button`, `media-mute-button`, `media-fullscreen-but
|
|
|
150
253
|
|
|
151
254
|
Video.js sliders use `media-slider-track`, `media-slider-fill`, and `media-slider-thumb`. See [`media-time-slider`](../reference/components/time-slider.md) and [`media-volume-slider`](../reference/components/volume-slider.md) for copy-paste markup and CSS.
|
|
152
255
|
|
|
153
|
-
Media Chrome’s named icon slots do not carry over. Remove attributes such as `slot="play"` and put the icon directly inside the Video.js button.
|
|
256
|
+
Media Chrome’s named icon slots do not carry over. Remove attributes such as `slot="play"` and put the icon directly inside the Video.js button. With a bundler, import `@videojs/html/icons/element` to use `<media-icon>`; the CDN video preset already registers it. See the example in [Map the controller](#map-the-controller). Set `family="neutral"` or `family="compat"` to use the Neutral or Compat skin’s icon designs. You can also use your own text or SVG.
|
|
154
257
|
|
|
155
|
-
`media-poster`
|
|
258
|
+
`media-poster` also works differently. Where `media-poster-image` took its own `src`, `media-poster` wraps the image you bring:
|
|
156
259
|
|
|
157
260
|
```html
|
|
158
261
|
<media-poster>
|
|
@@ -162,7 +265,7 @@ Media Chrome’s named icon slots do not carry over. Remove attributes such as `
|
|
|
162
265
|
|
|
163
266
|
## Rewrite your styles
|
|
164
267
|
|
|
165
|
-
Media Chrome reflects state
|
|
268
|
+
Media Chrome reflects state in attributes such as `mediapaused`. Video.js uses `data-*` attributes such as `data-paused`.
|
|
166
269
|
|
|
167
270
|
```css
|
|
168
271
|
/* Media Chrome */
|
|
@@ -174,26 +277,34 @@ media-play-button[mediapaused] .play-icon { display: inline; }
|
|
|
174
277
|
media-play-button[data-paused] .play-icon { display: inline; }
|
|
175
278
|
```
|
|
176
279
|
|
|
177
|
-
|
|
280
|
+
Values that change continuously, such as slider position, use CSS custom properties: sliders expose `--media-slider-fill` and `--media-slider-pointer`.
|
|
178
281
|
|
|
179
282
|
### Map theme variables by meaning
|
|
180
283
|
|
|
181
|
-
Media Chrome and Video.js both use names beginning with `--media-`, but
|
|
284
|
+
Media Chrome and Video.js both use names beginning with `--media-`, but the shared prefix does not make their variables compatible. Keep a variable only when its documented meaning matches.
|
|
182
285
|
|
|
183
286
|
| Media Chrome theme variable | Packaged Video.js skin | Migration |
|
|
184
287
|
| --- | --- | --- |
|
|
185
288
|
| `--media-accent-color` or `--media-range-bar-color` | `--media-accent-color` | Closest match for slider fills and accented controls. |
|
|
186
|
-
| `--media-primary-color` | no direct equivalent | Often colors every control icon in Media Chrome; Video.js’s accent variable
|
|
187
|
-
| `--media-secondary-color` | no direct equivalent | Add the skin source and
|
|
289
|
+
| `--media-primary-color` | no direct equivalent | Often colors every control icon in Media Chrome; Video.js’s accent variable colors fewer parts of the skin. |
|
|
290
|
+
| `--media-secondary-color` | no direct equivalent | Add the skin source and write CSS for this color. |
|
|
188
291
|
| `--media-control-background` | no direct equivalent | Add the skin source and author the CSS. |
|
|
189
292
|
| `--media-control-hover-background` | no direct equivalent | Add the skin source and author the CSS. |
|
|
190
293
|
| `--media-range-track-height` | no direct equivalent | Add the skin source and author the slider CSS. |
|
|
191
294
|
|
|
192
|
-
The packaged Video.js skins expose
|
|
295
|
+
The packaged Video.js skins expose eight custom properties:
|
|
296
|
+
|
|
297
|
+
- Colors: `--media-accent-color`, `--media-accent-text-color`, and `--media-border-color`.
|
|
298
|
+
- Corners: `--media-border-radius`.
|
|
299
|
+
- Interface font: `--media-font-family`.
|
|
300
|
+
- Media and poster fit and position: `--media-object-fit` and `--media-object-position`.
|
|
301
|
+
- Control sizing: `--media-scale-unit`.
|
|
302
|
+
|
|
303
|
+
See [Customize skins](./customize-skins.md#style-a-packaged-skin) for their meanings and defaults. Do not assume another Media Chrome variable will work because its name starts with `--media-`.
|
|
193
304
|
|
|
194
305
|
## Themes become skins
|
|
195
306
|
|
|
196
|
-
Media Chrome’s `<template>`-based themes (`media-theme`) become Video.js [skins](./skins.md) and [presets](./presets.md). Start from a preset, then [add its skin source to your project](./customize-skins.md#style-skin-source)
|
|
307
|
+
Media Chrome’s `<template>`-based themes (`media-theme`) become Video.js [skins](./skins.md) and [presets](./presets.md). Start from a preset, then [add its skin source to your project](./customize-skins.md#style-skin-source).
|
|
197
308
|
|
|
198
309
|
Ready-made HTML skins keep their controls inside Shadow DOM. Code outside the skin sees a click as coming from the skin, not the button inside it. Some control events also stay inside the skin. Do not use an outside listener to identify which built-in button was clicked.
|
|
199
310
|
|
|
@@ -203,61 +314,81 @@ Keep the skin when its CSS variables and content slots cover your changes. Build
|
|
|
203
314
|
|
|
204
315
|
## Control the player imperatively
|
|
205
316
|
|
|
206
|
-
|
|
317
|
+
Use [store actions](../reference/api/player-store.md) such as `play`, `pause`, `seek`, `setVolume`, `requestFullscreen`, and `exitFullscreen` to control playback and UI state.
|
|
207
318
|
|
|
208
|
-
|
|
319
|
+
Call actions on the player element’s store only after `player.store.target` is set, which means the media has attached. Fullscreen requests must run from a user interaction:
|
|
209
320
|
|
|
210
|
-
```
|
|
211
|
-
|
|
212
|
-
|
|
213
|
-
|
|
321
|
+
```html
|
|
322
|
+
<button id="toggle-fullscreen" type="button">Toggle fullscreen</button>
|
|
323
|
+
|
|
324
|
+
<script type="module">
|
|
325
|
+
await customElements.whenDefined('video-player');
|
|
326
|
+
const player = document.querySelector('video-player');
|
|
327
|
+
|
|
328
|
+
document.querySelector('#toggle-fullscreen').addEventListener('click', () => {
|
|
329
|
+
if (!player.store.target) return;
|
|
330
|
+
|
|
331
|
+
if (player.store.isFullscreen) {
|
|
332
|
+
player.store.exitFullscreen();
|
|
333
|
+
} else {
|
|
334
|
+
player.store.requestFullscreen();
|
|
335
|
+
}
|
|
336
|
+
});
|
|
337
|
+
</script>
|
|
214
338
|
```
|
|
215
339
|
|
|
216
|
-
|
|
340
|
+
Keep native media calls such as `video.play()` and assignments such as `video.currentTime = 30`. Video.js updates player state from media events. Set `src` on the media component to change content, and replace the component when the source needs a different playback engine.
|
|
217
341
|
|
|
218
342
|
## Known gaps
|
|
219
343
|
|
|
220
344
|
These Media Chrome features have no direct equivalent yet. Several can be approximated; see [Workarounds](#workarounds).
|
|
221
345
|
|
|
222
|
-
- No configurable `autohide` delay and no `autohideovercontrols` ([#1728](https://github.com/videojs/v10/issues/1728)).
|
|
346
|
+
- No configurable `autohide` delay and no `autohideovercontrols` ([#1728](https://github.com/videojs/v10/issues/1728)). To disable autohide (`autohide="-1"`), set `visibility="always"` on the controls component; see [Workarounds](#workarounds).
|
|
223
347
|
- No `defaultduration` placeholder before the media loads ([#1729](https://github.com/videojs/v10/issues/1729))
|
|
224
348
|
- Volume and muted preferences are not persisted across sessions, so Media Chrome’s `novolumepref` and `nomutedpref` opt-outs have nothing to opt out of ([#944](https://github.com/videojs/v10/issues/944)). Video.js can choose an initial subtitle track from the locale, but it does not yet remember the viewer’s later language choice ([#1786](https://github.com/videojs/v10/issues/1786)).
|
|
225
349
|
- No `breakpoints` or container-breakpoint attributes; use CSS container queries instead
|
|
226
350
|
- No `seektoliveoffset` or `noautoseektolive` controls, and live-edge offset and tolerance aren’t configurable ([#1730](https://github.com/videojs/v10/issues/1730))
|
|
227
|
-
- Chapters render and each time-slider segment reflects `data-active`, but there’s no player-level active chapter value, `chapterchange` event, or menu
|
|
351
|
+
- Chapters render and each time-slider segment reflects `data-active`, but there’s no player-level active chapter value, `chapterchange` event, or menu for jumping between chapters ([#1873](https://github.com/videojs/v10/issues/1873))
|
|
228
352
|
- Cue points are not supported ([#1442](https://github.com/videojs/v10/issues/1442))
|
|
229
353
|
|
|
230
|
-
Chapters
|
|
354
|
+
Chapters still work. Add a `<track kind="chapters">` with the `default` attribute. The packaged skins then split the time slider into chapter segments and show the chapter title on hover, via `media-time-slider-chapters` and `media-time-slider-chapter-title`.
|
|
231
355
|
|
|
232
356
|
## Workarounds
|
|
233
357
|
|
|
234
358
|
### Disable autohide (`autohide="-1"`)
|
|
235
359
|
|
|
236
|
-
Set `visibility="always"` on `media-controls`
|
|
360
|
+
Set `visibility="always"` on `media-controls` to keep the controls visible regardless of activity. Packaged skins do not expose this attribute. To keep a packaged skin’s look, [add its source to your project](./customize-skins.md#style-skin-source) and set `visibility="always"` on its controls element.
|
|
237
361
|
|
|
238
362
|
### Breakpoints
|
|
239
363
|
|
|
240
|
-
|
|
364
|
+
For custom UI, add a class to your container and another to the controls you want to change. Define and query your own CSS container:
|
|
241
365
|
|
|
242
366
|
```css
|
|
243
|
-
|
|
244
|
-
|
|
367
|
+
.app-player-container {
|
|
368
|
+
container-type: inline-size;
|
|
369
|
+
container-name: app-player;
|
|
370
|
+
}
|
|
371
|
+
|
|
372
|
+
@container app-player (width > 40rem) {
|
|
373
|
+
.app-player-controls { /* your wide layout */ }
|
|
245
374
|
}
|
|
246
375
|
```
|
|
247
376
|
|
|
377
|
+
Packaged HTML skin controls are inside Shadow DOM; external selectors cannot reach them. React skin selectors are private. To change a packaged skin’s responsive layout, [add its source to your project](./customize-skins.md#style-skin-source) and edit the container queries in its local styles.
|
|
378
|
+
|
|
248
379
|
### Default duration
|
|
249
380
|
|
|
250
|
-
There
|
|
381
|
+
There is no player input for a duration placeholder. Set `preload="metadata"` to request the duration before playback. The duration is available only after the network request and engine loading finish. If you defer loading, render a static placeholder in your own UI.
|
|
251
382
|
|
|
252
383
|
### Preference persistence
|
|
253
384
|
|
|
254
|
-
Media Chrome remembers volume, muted state, and language across sessions. Video.js
|
|
385
|
+
Media Chrome remembers volume, muted state, and language across sessions. Video.js does not persist these preferences. Follow [Remember user preferences](./user-preferences.md) to restore and save them in your app.
|
|
255
386
|
|
|
256
|
-
|
|
387
|
+
Actions throw before the media attaches. Wait until `store.target` is set, restore the saved values, and then start saving changes. For captions or quality, also wait for the relevant track or rendition list before restoring a selection.
|
|
257
388
|
|
|
258
389
|
### Live edge offsets
|
|
259
390
|
|
|
260
|
-
`seektoliveoffset` and `noautoseektolive` are governed by the playback engine rather than the UI layer, so there’s no attribute to tune them today.
|
|
391
|
+
`seektoliveoffset` and `noautoseektolive` are governed by the playback engine rather than the UI layer, so there’s no attribute to tune them today. As a workaround, build a custom live control that reads player state through `selectLive` and `selectTime`.
|
|
261
392
|
|
|
262
393
|
## See also
|
|
263
394
|
|