@videojs/html 10.0.0-rc.2 → 10.0.0-rc.4
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 +12 -2
- package/dist/default/define/audio/minimal-skin.css +663 -414
- package/dist/default/define/audio/minimal-skin.js +0 -2
- package/dist/default/define/audio/minimal-skin2.js +1 -3
- package/dist/default/define/audio/minimal-ui.js +0 -2
- package/dist/default/define/audio/player.js +0 -2
- package/dist/default/define/audio/skin.css +409 -205
- package/dist/default/define/audio/skin.js +0 -2
- package/dist/default/define/audio/skin2.js +1 -3
- package/dist/default/define/audio/ui.js +0 -2
- package/dist/default/define/background/player.js +0 -2
- package/dist/default/define/background/skin.js +0 -2
- package/dist/default/define/background/skin2.js +1 -3
- package/dist/default/define/extensions/google-cast.js +0 -2
- package/dist/default/define/extensions/mux-data.js +0 -2
- package/dist/default/define/global.css +13 -0
- package/dist/default/define/global.js +1 -3
- package/dist/default/define/i18n.js +0 -2
- package/dist/default/define/live-audio/minimal-skin.css +458 -368
- package/dist/default/define/live-audio/minimal-skin.js +0 -2
- package/dist/default/define/live-audio/minimal-skin2.js +1 -3
- package/dist/default/define/live-audio/minimal-ui.js +0 -2
- package/dist/default/define/live-audio/player.js +0 -2
- package/dist/default/define/live-audio/skin.css +221 -159
- package/dist/default/define/live-audio/skin.js +0 -2
- package/dist/default/define/live-audio/skin2.js +1 -3
- package/dist/default/define/live-audio/ui.js +0 -2
- package/dist/default/define/live-video/minimal-skin.css +1002 -863
- package/dist/default/define/live-video/minimal-skin.js +0 -2
- package/dist/default/define/live-video/minimal-skin2.js +1 -3
- package/dist/default/define/live-video/minimal-ui.js +0 -2
- package/dist/default/define/live-video/player.js +0 -2
- package/dist/default/define/live-video/skin.css +804 -687
- package/dist/default/define/live-video/skin.js +0 -2
- package/dist/default/define/live-video/skin2.js +1 -3
- package/dist/default/define/live-video/ui.js +0 -2
- package/dist/default/define/media/background-video.js +0 -2
- package/dist/default/define/media/cloudflare-video.js +0 -2
- package/dist/default/define/media/dash-video.js +0 -2
- package/dist/default/define/media/hls-audio.js +0 -2
- package/dist/default/define/media/hls-background-video.js +0 -2
- package/dist/default/define/media/hls-video.js +0 -2
- package/dist/default/define/media/hlsjs-video.js +0 -2
- package/dist/default/define/media/mux-audio/hls-js.js +0 -2
- package/dist/default/define/media/mux-audio/spf.js +0 -2
- package/dist/default/define/media/mux-background-video.js +0 -2
- package/dist/default/define/media/mux-video/hls-js.js +0 -2
- package/dist/default/define/media/mux-video/spf.js +0 -2
- package/dist/default/define/media/native-hls-video.js +0 -2
- package/dist/default/define/media/shaka-video.js +0 -2
- package/dist/default/define/media/spotify-audio.js +0 -2
- package/dist/default/define/media/tiktok-video.js +0 -2
- package/dist/default/define/media/twitch-video.js +0 -2
- package/dist/default/define/media/vimeo-video.js +0 -2
- package/dist/default/define/media/wistia-video.js +0 -2
- package/dist/default/define/media/youtube-video.js +0 -2
- package/dist/default/define/shadow.css +22 -0
- package/dist/default/define/shadow.js +4 -0
- package/dist/default/define/ui/airplay-button.js +0 -2
- package/dist/default/define/ui/alert-dialog.js +0 -2
- package/dist/default/define/ui/audio-track-radio-group.js +0 -2
- package/dist/default/define/ui/buffering-indicator.js +0 -2
- package/dist/default/define/ui/captions-button.js +0 -2
- package/dist/default/define/ui/captions-radio-group.js +0 -2
- package/dist/default/define/ui/cast-button.js +0 -2
- package/dist/default/define/ui/container.js +0 -2
- package/dist/default/define/ui/controls-backdrop.js +0 -2
- package/dist/default/define/ui/controls-content.js +0 -2
- package/dist/default/define/ui/controls-group.js +0 -2
- package/dist/default/define/ui/controls.js +0 -2
- package/dist/default/define/ui/dialog-backdrop.js +0 -2
- package/dist/default/define/ui/dialog-close.js +0 -2
- package/dist/default/define/ui/dialog-description.js +0 -2
- package/dist/default/define/ui/dialog-popup.js +0 -2
- package/dist/default/define/ui/dialog-title.js +0 -2
- package/dist/default/define/ui/dialog.js +0 -2
- package/dist/default/define/ui/error-dialog.js +0 -2
- package/dist/default/define/ui/fullscreen-button.js +0 -2
- package/dist/default/define/ui/gesture.js +0 -2
- package/dist/default/define/ui/hotkey.js +0 -2
- package/dist/default/define/ui/live-button.js +0 -2
- package/dist/default/define/ui/menu-checkbox-item.js +0 -2
- package/dist/default/define/ui/menu-content.js +0 -2
- package/dist/default/define/ui/menu-group-label.js +0 -2
- package/dist/default/define/ui/menu-group.js +0 -2
- package/dist/default/define/ui/menu-item-indicator.js +0 -2
- package/dist/default/define/ui/menu-item.js +0 -2
- package/dist/default/define/ui/menu-radio-group.js +0 -2
- package/dist/default/define/ui/menu-radio-item.js +0 -2
- package/dist/default/define/ui/menu-separator.js +0 -2
- package/dist/default/define/ui/menu.js +0 -2
- package/dist/default/define/ui/mute-button.js +0 -2
- package/dist/default/define/ui/pip-button.js +0 -2
- package/dist/default/define/ui/play-button.js +0 -2
- package/dist/default/define/ui/playback-rate-button.js +0 -2
- package/dist/default/define/ui/playback-rate-radio-group.js +0 -2
- package/dist/default/define/ui/popover.js +0 -2
- package/dist/default/define/ui/poster.js +0 -2
- package/dist/default/define/ui/quality-radio-group.js +0 -2
- package/dist/default/define/ui/seek-button.js +0 -2
- package/dist/default/define/ui/seek-indicator-value.js +0 -2
- package/dist/default/define/ui/seek-indicator.js +0 -2
- package/dist/default/define/ui/slider-buffer.js +0 -2
- package/dist/default/define/ui/slider-fill.js +0 -2
- package/dist/default/define/ui/slider-preview.js +0 -2
- package/dist/default/define/ui/slider-thumb.js +0 -2
- package/dist/default/define/ui/slider-thumbnail.js +0 -2
- package/dist/default/define/ui/slider-track.js +0 -2
- package/dist/default/define/ui/slider-value.js +0 -2
- package/dist/default/define/ui/slider.js +0 -2
- package/dist/default/define/ui/status-announcer.js +0 -2
- package/dist/default/define/ui/status-indicator-value.js +0 -2
- package/dist/default/define/ui/status-indicator.js +0 -2
- package/dist/default/define/ui/thumbnail.js +0 -2
- package/dist/default/define/ui/time-group.js +0 -2
- package/dist/default/define/ui/time-separator.js +0 -2
- package/dist/default/define/ui/time-slider-chapter-title.js +0 -2
- package/dist/default/define/ui/time-slider-chapters.js +0 -2
- package/dist/default/define/ui/time-slider.js +0 -2
- package/dist/default/define/ui/time.js +0 -2
- package/dist/default/define/ui/title.js +0 -2
- package/dist/default/define/ui/tooltip-group.js +0 -2
- package/dist/default/define/ui/tooltip-label.js +0 -2
- package/dist/default/define/ui/tooltip-shortcut.js +0 -2
- package/dist/default/define/ui/tooltip.js +0 -2
- package/dist/default/define/ui/volume-indicator-fill.js +0 -2
- package/dist/default/define/ui/volume-indicator-value.js +0 -2
- package/dist/default/define/ui/volume-indicator.js +0 -2
- package/dist/default/define/ui/volume-popover.js +0 -2
- package/dist/default/define/ui/volume-slider.js +0 -2
- package/dist/default/define/video/minimal-skin.css +764 -647
- package/dist/default/define/video/minimal-skin.js +0 -2
- package/dist/default/define/video/minimal-skin2.js +1 -3
- package/dist/default/define/video/minimal-ui.js +0 -2
- package/dist/default/define/video/player.js +0 -2
- package/dist/default/define/video/skin.css +528 -441
- package/dist/default/define/video/skin.js +0 -2
- package/dist/default/define/video/skin2.js +1 -3
- package/dist/default/define/video/ui.js +0 -2
- package/dist/default/extensions/google-cast/extension.js +0 -2
- package/dist/default/extensions/media-extension-element.js +0 -2
- package/dist/default/extensions/mux-data/extension.js +0 -2
- package/dist/default/i18n/cache-key.js +0 -2
- package/dist/default/i18n/context.js +0 -2
- package/dist/default/i18n/controller.js +0 -2
- package/dist/default/i18n/create-i18n.js +0 -2
- package/dist/default/i18n/index.js +2 -2
- package/dist/default/i18n/locale.js +0 -2
- package/dist/default/i18n/locales/all/register.js +0 -2
- package/dist/default/i18n/locales/ar/register.js +0 -2
- package/dist/default/i18n/locales/az/register.js +0 -2
- package/dist/default/i18n/locales/bg/register.js +0 -2
- package/dist/default/i18n/locales/bn/register.js +0 -2
- package/dist/default/i18n/locales/bs/register.js +0 -2
- package/dist/default/i18n/locales/ca/register.js +0 -2
- package/dist/default/i18n/locales/cs/register.js +0 -2
- package/dist/default/i18n/locales/cy/register.js +0 -2
- package/dist/default/i18n/locales/da/register.js +0 -2
- package/dist/default/i18n/locales/de/register.js +0 -2
- package/dist/default/i18n/locales/el/register.js +0 -2
- package/dist/default/i18n/locales/en/register.js +0 -2
- package/dist/default/i18n/locales/es/register.js +0 -2
- package/dist/default/i18n/locales/et/register.js +0 -2
- package/dist/default/i18n/locales/eu/register.js +0 -2
- package/dist/default/i18n/locales/fa/register.js +0 -2
- package/dist/default/i18n/locales/fi/register.js +0 -2
- package/dist/default/i18n/locales/fr/register.js +0 -2
- package/dist/default/i18n/locales/gd/register.js +0 -2
- package/dist/default/i18n/locales/gl/register.js +0 -2
- package/dist/default/i18n/locales/he/register.js +0 -2
- package/dist/default/i18n/locales/hi/register.js +0 -2
- package/dist/default/i18n/locales/hr/register.js +0 -2
- package/dist/default/i18n/locales/hu/register.js +0 -2
- package/dist/default/i18n/locales/id/register.js +0 -2
- package/dist/default/i18n/locales/it/register.js +0 -2
- package/dist/default/i18n/locales/ja/register.js +0 -2
- package/dist/default/i18n/locales/ko/register.js +0 -2
- package/dist/default/i18n/locales/lt/register.js +0 -2
- package/dist/default/i18n/locales/lv/register.js +0 -2
- package/dist/default/i18n/locales/mr/register.js +0 -2
- package/dist/default/i18n/locales/nb/register.js +0 -2
- package/dist/default/i18n/locales/ne/register.js +0 -2
- package/dist/default/i18n/locales/nl/register.js +0 -2
- package/dist/default/i18n/locales/nn/register.js +0 -2
- package/dist/default/i18n/locales/oc/register.js +0 -2
- package/dist/default/i18n/locales/pl/register.js +0 -2
- package/dist/default/i18n/locales/pt/register.js +0 -2
- package/dist/default/i18n/locales/pt-BR/register.js +0 -2
- package/dist/default/i18n/locales/pt-PT/register.js +0 -2
- package/dist/default/i18n/locales/ro/register.js +0 -2
- package/dist/default/i18n/locales/ru/register.js +0 -2
- package/dist/default/i18n/locales/sk/register.js +0 -2
- package/dist/default/i18n/locales/sl/register.js +0 -2
- package/dist/default/i18n/locales/sr/register.js +0 -2
- package/dist/default/i18n/locales/sv/register.js +0 -2
- package/dist/default/i18n/locales/te/register.js +0 -2
- package/dist/default/i18n/locales/th/register.js +0 -2
- package/dist/default/i18n/locales/tr/register.js +0 -2
- package/dist/default/i18n/locales/uk/register.js +0 -2
- package/dist/default/i18n/locales/vi/register.js +0 -2
- package/dist/default/i18n/locales/zh/register.js +0 -2
- package/dist/default/i18n/locales/zh-CN/register.js +0 -2
- package/dist/default/i18n/locales/zh-TW/register.js +0 -2
- package/dist/default/i18n/provider-element.js +0 -2
- package/dist/default/i18n/provider-mixin.js +0 -2
- package/dist/default/i18n/render-text.js +0 -2
- package/dist/default/i18n/text-mixin.js +0 -2
- package/dist/default/icons/dist/element/base.js +0 -2
- package/dist/default/icons/dist/element/default/icons.js +0 -2
- package/dist/default/icons/dist/element/default/index.js +0 -2
- package/dist/default/icons/dist/element/index.js +0 -2
- package/dist/default/icons/dist/element/minimal/icons.js +0 -2
- package/dist/default/icons/dist/element/minimal/index.js +0 -2
- package/dist/default/icons/dist/html/default/airplay-enter.js +0 -2
- package/dist/default/icons/dist/html/default/airplay-exit.js +0 -2
- package/dist/default/icons/dist/html/default/captions-off.js +0 -2
- package/dist/default/icons/dist/html/default/captions-on.js +0 -2
- package/dist/default/icons/dist/html/default/cast-enter.js +0 -2
- package/dist/default/icons/dist/html/default/cast-exit.js +0 -2
- package/dist/default/icons/dist/html/default/check.js +0 -2
- package/dist/default/icons/dist/html/default/chevron.js +0 -2
- package/dist/default/icons/dist/html/default/fullscreen-enter.js +0 -2
- package/dist/default/icons/dist/html/default/fullscreen-exit.js +0 -2
- package/dist/default/icons/dist/html/default/gear.js +0 -2
- package/dist/default/icons/dist/html/default/pause.js +0 -2
- package/dist/default/icons/dist/html/default/pip-enter.js +0 -2
- package/dist/default/icons/dist/html/default/pip-exit.js +0 -2
- package/dist/default/icons/dist/html/default/play.js +0 -2
- package/dist/default/icons/dist/html/default/quality.js +0 -2
- package/dist/default/icons/dist/html/default/restart.js +0 -2
- package/dist/default/icons/dist/html/default/seek.js +0 -2
- package/dist/default/icons/dist/html/default/speech.js +0 -2
- package/dist/default/icons/dist/html/default/speed.js +0 -2
- package/dist/default/icons/dist/html/default/spinner.js +0 -2
- package/dist/default/icons/dist/html/default/switches.js +0 -2
- package/dist/default/icons/dist/html/default/volume-high.js +0 -2
- package/dist/default/icons/dist/html/default/volume-low.js +0 -2
- package/dist/default/icons/dist/html/default/volume-off.js +0 -2
- package/dist/default/icons/dist/html/minimal/airplay-enter.js +0 -2
- package/dist/default/icons/dist/html/minimal/airplay-exit.js +0 -2
- package/dist/default/icons/dist/html/minimal/captions-off.js +0 -2
- package/dist/default/icons/dist/html/minimal/captions-on.js +0 -2
- package/dist/default/icons/dist/html/minimal/cast-enter.js +0 -2
- package/dist/default/icons/dist/html/minimal/cast-exit.js +0 -2
- package/dist/default/icons/dist/html/minimal/check.js +0 -2
- package/dist/default/icons/dist/html/minimal/chevron.js +0 -2
- package/dist/default/icons/dist/html/minimal/fullscreen-enter.js +0 -2
- package/dist/default/icons/dist/html/minimal/fullscreen-exit.js +0 -2
- package/dist/default/icons/dist/html/minimal/gear.js +0 -2
- package/dist/default/icons/dist/html/minimal/pause.js +0 -2
- package/dist/default/icons/dist/html/minimal/pip-enter.js +0 -2
- package/dist/default/icons/dist/html/minimal/pip-exit.js +0 -2
- package/dist/default/icons/dist/html/minimal/play.js +0 -2
- package/dist/default/icons/dist/html/minimal/quality.js +0 -2
- package/dist/default/icons/dist/html/minimal/restart.js +0 -2
- package/dist/default/icons/dist/html/minimal/seek.js +0 -2
- package/dist/default/icons/dist/html/minimal/speech.js +0 -2
- package/dist/default/icons/dist/html/minimal/speed.js +0 -2
- package/dist/default/icons/dist/html/minimal/spinner.js +0 -2
- package/dist/default/icons/dist/html/minimal/switches.js +0 -2
- package/dist/default/icons/dist/html/minimal/volume-high.js +0 -2
- package/dist/default/icons/dist/html/minimal/volume-low.js +0 -2
- package/dist/default/icons/dist/html/minimal/volume-off.js +0 -2
- package/dist/default/icons/element/register/index.js +0 -2
- package/dist/default/index.js +2 -2
- package/dist/default/internal/skins/default-audio/register.js +0 -2
- package/dist/default/internal/skins/default-audio/skin.css +387 -191
- package/dist/default/internal/skins/default-audio/template.js +12 -14
- package/dist/default/internal/skins/default-live-audio/register.js +0 -2
- package/dist/default/internal/skins/default-live-audio/skin.css +199 -145
- package/dist/default/internal/skins/default-live-audio/template.js +5 -7
- package/dist/default/internal/skins/default-live-video/register.js +1 -2
- package/dist/default/internal/skins/default-live-video/skin.css +713 -604
- package/dist/default/internal/skins/default-live-video/template.js +18 -19
- package/dist/default/internal/skins/default-video/register.js +1 -2
- package/dist/default/internal/skins/default-video/skin.css +506 -427
- package/dist/default/internal/skins/default-video/template.js +33 -33
- package/dist/default/internal/skins/minimal-audio/register.js +0 -2
- package/dist/default/internal/skins/minimal-audio/skin.css +641 -400
- package/dist/default/internal/skins/minimal-audio/template.js +12 -14
- package/dist/default/internal/skins/minimal-live-audio/register.js +0 -2
- package/dist/default/internal/skins/minimal-live-audio/skin.css +436 -354
- package/dist/default/internal/skins/minimal-live-audio/template.js +5 -7
- package/dist/default/internal/skins/minimal-live-video/register.js +1 -2
- package/dist/default/internal/skins/minimal-live-video/skin.css +916 -785
- package/dist/default/internal/skins/minimal-live-video/template.js +18 -19
- package/dist/default/internal/skins/minimal-video/register.js +1 -2
- package/dist/default/internal/skins/minimal-video/skin.css +742 -633
- package/dist/default/internal/skins/minimal-video/template.js +33 -33
- package/dist/default/internal/skins/properties.css +11 -0
- package/dist/default/media/background-video/adapter.js +0 -2
- package/dist/default/media/background-video/template.js +0 -2
- package/dist/default/media/cloudflare-video/adapter.js +0 -2
- package/dist/default/media/dash-video/adapter.js +0 -2
- package/dist/default/media/hls-audio/adapter.js +0 -2
- package/dist/default/media/hls-background-video/adapter.js +0 -2
- package/dist/default/media/hls-video/adapter.js +0 -2
- package/dist/default/media/hlsjs-video/adapter.js +0 -2
- package/dist/default/media/mux-audio/hls-js.js +0 -2
- package/dist/default/media/mux-audio/mixin.js +0 -2
- package/dist/default/media/mux-audio/spf.js +0 -2
- package/dist/default/media/mux-video/hls-js.js +0 -2
- package/dist/default/media/mux-video/mixin.js +0 -2
- package/dist/default/media/mux-video/spf.js +0 -2
- package/dist/default/media/native-hls-video/adapter.js +0 -2
- package/dist/default/media/shaka-video/adapter.js +0 -2
- package/dist/default/media/spotify-audio/adapter.js +0 -2
- package/dist/default/media/tiktok-video/adapter.js +0 -2
- package/dist/default/media/twitch-video/adapter.js +0 -2
- package/dist/default/media/vimeo-video/adapter.js +0 -2
- package/dist/default/media/wistia-video/adapter.js +0 -2
- package/dist/default/media/youtube-video/adapter.js +0 -2
- package/dist/default/player/context.js +0 -2
- package/dist/default/player/controller.js +0 -2
- package/dist/default/player/create-player.js +0 -2
- package/dist/default/player/element.js +0 -2
- package/dist/default/player/popup-group-context.js +0 -2
- package/dist/default/presets/audio/minimal-skin.js +0 -2
- package/dist/default/presets/audio/player.js +0 -2
- package/dist/default/presets/audio/skin.js +0 -2
- package/dist/default/presets/background/player.js +0 -2
- package/dist/default/presets/background/skin.js +2 -2
- package/dist/default/presets/live-audio/minimal-skin.js +0 -2
- package/dist/default/presets/live-audio/player.js +0 -2
- package/dist/default/presets/live-audio/skin.js +0 -2
- package/dist/default/presets/live-video/minimal-skin.js +0 -2
- package/dist/default/presets/live-video/player.js +0 -2
- package/dist/default/presets/live-video/skin.js +0 -2
- package/dist/default/presets/skin.js +14 -5
- package/dist/default/presets/video/minimal-skin.js +0 -2
- package/dist/default/presets/video/player.js +0 -2
- package/dist/default/presets/video/skin.js +0 -2
- package/dist/default/registration/safe-define.js +0 -2
- package/dist/default/registration/ui-compounds.js +0 -2
- package/dist/default/store/media-attach-mixin.js +0 -2
- package/dist/default/ui/airplay-button/element.js +0 -2
- package/dist/default/ui/alert-dialog/element.js +0 -2
- package/dist/default/ui/audio-track-radio-group/element.js +5 -2
- package/dist/default/ui/buffering-indicator/element.js +0 -2
- package/dist/default/ui/captions-button/element.js +0 -2
- package/dist/default/ui/captions-radio-group/element.js +5 -2
- package/dist/default/ui/cast-button/element.js +0 -2
- package/dist/default/ui/command-for.js +0 -2
- package/dist/default/ui/container/element.js +0 -2
- package/dist/default/ui/context-part-element.js +0 -2
- package/dist/default/ui/controls/backdrop.js +0 -2
- package/dist/default/ui/controls/content.js +0 -2
- package/dist/default/ui/controls/context.js +0 -2
- package/dist/default/ui/controls/element.js +4 -2
- package/dist/default/ui/controls/group.js +0 -2
- package/dist/default/ui/dialog/backdrop.js +0 -2
- package/dist/default/ui/dialog/close.js +1 -2
- package/dist/default/ui/dialog/context.js +0 -2
- package/dist/default/ui/dialog/description.js +4 -2
- package/dist/default/ui/dialog/element.js +0 -2
- package/dist/default/ui/dialog/popup.js +0 -2
- package/dist/default/ui/dialog/title.js +1 -2
- package/dist/default/ui/error-dialog/element.js +0 -2
- package/dist/default/ui/fullscreen-button/element.js +0 -2
- package/dist/default/ui/gesture/element.js +0 -2
- package/dist/default/ui/hotkey/aria-key-shortcuts-controller.js +0 -2
- package/dist/default/ui/hotkey/element.js +0 -2
- package/dist/default/ui/input-indicator/element.js +0 -2
- package/dist/default/ui/input-indicator/live-indicator.js +0 -2
- package/dist/default/ui/live-button/element.js +0 -2
- package/dist/default/ui/media-button-element.js +0 -2
- package/dist/default/ui/media-ui-element.js +0 -2
- package/dist/default/ui/menu/checkbox-item.js +6 -3
- package/dist/default/ui/menu/content.js +1 -3
- package/dist/default/ui/menu/context.js +0 -2
- package/dist/default/ui/menu/element.js +0 -2
- package/dist/default/ui/menu/group-controller.js +0 -2
- package/dist/default/ui/menu/group-label.js +1 -2
- package/dist/default/ui/menu/group.js +4 -2
- package/dist/default/ui/menu/item-indicator.js +4 -2
- package/dist/default/ui/menu/item.js +4 -2
- package/dist/default/ui/menu/radio-group.js +1 -2
- package/dist/default/ui/menu/radio-item.js +4 -2
- package/dist/default/ui/menu/separator.js +1 -2
- package/dist/default/ui/mute-button/element.js +0 -2
- package/dist/default/ui/pip-button/element.js +0 -2
- package/dist/default/ui/play-button/element.js +0 -2
- package/dist/default/ui/playback-rate-button/element.js +0 -2
- package/dist/default/ui/playback-rate-radio-group/element.js +5 -2
- package/dist/default/ui/popover/element.js +0 -2
- package/dist/default/ui/position-controller.js +0 -2
- package/dist/default/ui/poster/element.js +0 -2
- package/dist/default/ui/quality-radio-group/element.js +6 -2
- package/dist/default/ui/radio-group/context.js +0 -2
- package/dist/default/ui/radio-group/element.js +0 -2
- package/dist/default/ui/radio-options/controller.js +0 -2
- package/dist/default/ui/seek-button/element.js +0 -2
- package/dist/default/ui/seek-indicator/element.js +0 -2
- package/dist/default/ui/seek-indicator/value.js +0 -2
- package/dist/default/ui/slider/buffer.js +0 -2
- package/dist/default/ui/slider/context.js +0 -2
- package/dist/default/ui/slider/element.js +0 -2
- package/dist/default/ui/slider/fill.js +0 -2
- package/dist/default/ui/slider/preview.js +0 -2
- package/dist/default/ui/slider/thumb.js +0 -2
- package/dist/default/ui/slider/thumbnail.js +4 -2
- package/dist/default/ui/slider/track.js +0 -2
- package/dist/default/ui/slider/value.js +1 -2
- package/dist/default/ui/status-announcer/element.js +0 -2
- package/dist/default/ui/status-indicator/element.js +0 -2
- package/dist/default/ui/status-indicator/value.js +0 -2
- package/dist/default/ui/text/element.js +0 -2
- package/dist/default/ui/thumbnail/element.js +28 -8
- package/dist/default/ui/time/element.js +0 -2
- package/dist/default/ui/time/group.js +1 -2
- package/dist/default/ui/time/separator.js +0 -2
- package/dist/default/ui/time-slider/chapter-title.js +0 -2
- package/dist/default/ui/time-slider/chapters.js +0 -2
- package/dist/default/ui/time-slider/element.js +5 -4
- package/dist/default/ui/title/element.js +5 -9
- package/dist/default/ui/tooltip/context.js +0 -2
- package/dist/default/ui/tooltip/element.js +0 -2
- package/dist/default/ui/tooltip/group.js +0 -2
- package/dist/default/ui/tooltip/label.js +0 -2
- package/dist/default/ui/tooltip/shortcut.js +0 -2
- package/dist/default/ui/ui-element.js +0 -2
- package/dist/default/ui/volume-indicator/element.js +0 -2
- package/dist/default/ui/volume-indicator/fill.js +0 -2
- package/dist/default/ui/volume-indicator/value.js +0 -2
- package/dist/default/ui/volume-popover/element.js +0 -2
- package/dist/default/ui/volume-slider/element.js +0 -2
- package/dist/dev/define/audio/minimal-skin.css +663 -414
- package/dist/dev/define/audio/minimal-skin2.js +1 -1
- package/dist/dev/define/audio/minimal-skin2.js.map +1 -1
- package/dist/dev/define/audio/skin.css +409 -205
- package/dist/dev/define/audio/skin2.js +1 -1
- package/dist/dev/define/audio/skin2.js.map +1 -1
- package/dist/dev/define/global.css +13 -0
- package/dist/dev/define/global.js +1 -1
- package/dist/dev/define/global.js.map +1 -1
- package/dist/dev/define/live-audio/minimal-skin.css +458 -368
- package/dist/dev/define/live-audio/minimal-skin2.js +1 -1
- package/dist/dev/define/live-audio/minimal-skin2.js.map +1 -1
- package/dist/dev/define/live-audio/skin.css +221 -159
- 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/minimal-skin.css +1002 -863
- package/dist/dev/define/live-video/minimal-skin2.js +1 -1
- package/dist/dev/define/live-video/minimal-skin2.js.map +1 -1
- package/dist/dev/define/live-video/skin.css +804 -687
- 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/shadow.css +22 -0
- package/dist/dev/define/shadow.js +6 -0
- package/dist/dev/define/shadow.js.map +1 -0
- package/dist/dev/define/video/minimal-skin.css +764 -647
- package/dist/dev/define/video/minimal-skin2.js +1 -1
- package/dist/dev/define/video/minimal-skin2.js.map +1 -1
- package/dist/dev/define/video/skin.css +528 -441
- package/dist/dev/define/video/skin2.js +1 -1
- package/dist/dev/define/video/skin2.js.map +1 -1
- package/dist/dev/i18n/index.d.ts +2 -2
- package/dist/dev/i18n/index.js +2 -2
- package/dist/dev/index.d.ts +3 -3
- package/dist/dev/index.js +2 -2
- package/dist/dev/internal/skins/default-audio/skin.css +387 -191
- package/dist/dev/internal/skins/default-audio/template.js +12 -12
- package/dist/dev/internal/skins/default-audio/template.js.map +1 -1
- package/dist/dev/internal/skins/default-live-audio/skin.css +199 -145
- package/dist/dev/internal/skins/default-live-audio/template.js +5 -5
- package/dist/dev/internal/skins/default-live-audio/template.js.map +1 -1
- package/dist/dev/internal/skins/default-live-video/register.d.ts +1 -0
- package/dist/dev/internal/skins/default-live-video/register.js +1 -0
- package/dist/dev/internal/skins/default-live-video/register.js.map +1 -1
- package/dist/dev/internal/skins/default-live-video/skin.css +713 -604
- package/dist/dev/internal/skins/default-live-video/template.js +18 -17
- package/dist/dev/internal/skins/default-live-video/template.js.map +1 -1
- package/dist/dev/internal/skins/default-video/register.d.ts +1 -0
- package/dist/dev/internal/skins/default-video/register.js +1 -0
- package/dist/dev/internal/skins/default-video/register.js.map +1 -1
- package/dist/dev/internal/skins/default-video/skin.css +506 -427
- package/dist/dev/internal/skins/default-video/template.js +33 -31
- package/dist/dev/internal/skins/default-video/template.js.map +1 -1
- package/dist/dev/internal/skins/minimal-audio/skin.css +641 -400
- package/dist/dev/internal/skins/minimal-audio/template.js +12 -12
- package/dist/dev/internal/skins/minimal-audio/template.js.map +1 -1
- package/dist/dev/internal/skins/minimal-live-audio/skin.css +436 -354
- package/dist/dev/internal/skins/minimal-live-audio/template.js +5 -5
- package/dist/dev/internal/skins/minimal-live-audio/template.js.map +1 -1
- package/dist/dev/internal/skins/minimal-live-video/register.d.ts +1 -0
- package/dist/dev/internal/skins/minimal-live-video/register.js +1 -0
- package/dist/dev/internal/skins/minimal-live-video/register.js.map +1 -1
- package/dist/dev/internal/skins/minimal-live-video/skin.css +916 -785
- package/dist/dev/internal/skins/minimal-live-video/template.js +18 -17
- package/dist/dev/internal/skins/minimal-live-video/template.js.map +1 -1
- package/dist/dev/internal/skins/minimal-video/register.d.ts +1 -0
- package/dist/dev/internal/skins/minimal-video/register.js +1 -0
- package/dist/dev/internal/skins/minimal-video/register.js.map +1 -1
- package/dist/dev/internal/skins/minimal-video/skin.css +742 -633
- package/dist/dev/internal/skins/minimal-video/template.js +33 -31
- package/dist/dev/internal/skins/minimal-video/template.js.map +1 -1
- package/dist/dev/internal/skins/properties.css +11 -0
- package/dist/dev/player/context.d.ts +1 -0
- package/dist/dev/player/context.js.map +1 -1
- package/dist/dev/presets/background/skin.js +2 -0
- package/dist/dev/presets/background/skin.js.map +1 -1
- package/dist/dev/presets/skin.js +14 -3
- package/dist/dev/presets/skin.js.map +1 -1
- package/dist/dev/ui/audio-track-radio-group/element.d.ts +5 -0
- package/dist/dev/ui/audio-track-radio-group/element.js +5 -0
- package/dist/dev/ui/audio-track-radio-group/element.js.map +1 -1
- package/dist/dev/ui/captions-radio-group/element.d.ts +5 -0
- package/dist/dev/ui/captions-radio-group/element.js +5 -0
- package/dist/dev/ui/captions-radio-group/element.js.map +1 -1
- package/dist/dev/ui/controls/element.d.ts +4 -0
- package/dist/dev/ui/controls/element.js +4 -0
- package/dist/dev/ui/controls/element.js.map +1 -1
- package/dist/dev/ui/dialog/close.d.ts +1 -0
- package/dist/dev/ui/dialog/close.js +1 -0
- package/dist/dev/ui/dialog/close.js.map +1 -1
- package/dist/dev/ui/dialog/description.d.ts +4 -0
- package/dist/dev/ui/dialog/description.js +4 -0
- package/dist/dev/ui/dialog/description.js.map +1 -1
- package/dist/dev/ui/dialog/title.d.ts +1 -0
- package/dist/dev/ui/dialog/title.js +1 -0
- package/dist/dev/ui/dialog/title.js.map +1 -1
- package/dist/dev/ui/menu/checkbox-item.d.ts +6 -1
- package/dist/dev/ui/menu/checkbox-item.js +6 -1
- package/dist/dev/ui/menu/checkbox-item.js.map +1 -1
- package/dist/dev/ui/menu/content.js +1 -1
- package/dist/dev/ui/menu/content.js.map +1 -1
- package/dist/dev/ui/menu/group-label.d.ts +1 -0
- package/dist/dev/ui/menu/group-label.js +1 -0
- package/dist/dev/ui/menu/group-label.js.map +1 -1
- package/dist/dev/ui/menu/group.d.ts +4 -0
- package/dist/dev/ui/menu/group.js +4 -0
- package/dist/dev/ui/menu/group.js.map +1 -1
- package/dist/dev/ui/menu/item-indicator.d.ts +4 -0
- package/dist/dev/ui/menu/item-indicator.js +4 -0
- package/dist/dev/ui/menu/item-indicator.js.map +1 -1
- package/dist/dev/ui/menu/item.d.ts +4 -0
- package/dist/dev/ui/menu/item.js +4 -0
- package/dist/dev/ui/menu/item.js.map +1 -1
- package/dist/dev/ui/menu/radio-group.d.ts +1 -0
- package/dist/dev/ui/menu/radio-group.js +1 -0
- package/dist/dev/ui/menu/radio-group.js.map +1 -1
- package/dist/dev/ui/menu/radio-item.d.ts +4 -0
- package/dist/dev/ui/menu/radio-item.js +4 -0
- package/dist/dev/ui/menu/radio-item.js.map +1 -1
- package/dist/dev/ui/menu/separator.d.ts +1 -0
- package/dist/dev/ui/menu/separator.js +1 -0
- package/dist/dev/ui/menu/separator.js.map +1 -1
- package/dist/dev/ui/playback-rate-radio-group/element.d.ts +5 -0
- package/dist/dev/ui/playback-rate-radio-group/element.js +5 -0
- package/dist/dev/ui/playback-rate-radio-group/element.js.map +1 -1
- package/dist/dev/ui/quality-radio-group/element.d.ts +6 -0
- package/dist/dev/ui/quality-radio-group/element.js +6 -0
- package/dist/dev/ui/quality-radio-group/element.js.map +1 -1
- package/dist/dev/ui/slider/thumbnail.d.ts +4 -0
- package/dist/dev/ui/slider/thumbnail.js +4 -0
- package/dist/dev/ui/slider/thumbnail.js.map +1 -1
- package/dist/dev/ui/slider/value.d.ts +1 -0
- package/dist/dev/ui/slider/value.js +1 -0
- package/dist/dev/ui/slider/value.js.map +1 -1
- package/dist/dev/ui/thumbnail/element.d.ts +3 -1
- package/dist/dev/ui/thumbnail/element.js +28 -6
- package/dist/dev/ui/thumbnail/element.js.map +1 -1
- package/dist/dev/ui/time/group.d.ts +1 -0
- package/dist/dev/ui/time/group.js +1 -0
- package/dist/dev/ui/time/group.js.map +1 -1
- package/dist/dev/ui/time-slider/element.js +5 -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 +5 -7
- package/dist/dev/ui/title/element.js.map +1 -1
- package/docs/README.md +1 -1
- package/docs/guides/accessibility.md +93 -0
- package/docs/{concepts/overview.md → guides/architecture.md} +20 -21
- package/docs/{how-to → guides}/autoplay.md +42 -47
- package/docs/{how-to/add-a-background-video.md → guides/background-video.md} +36 -51
- package/docs/guides/browser-support.md +145 -0
- package/docs/guides/build-with-ai.md +167 -0
- package/docs/guides/build-your-own-component.md +245 -0
- package/docs/{concepts → guides}/bundlers.md +13 -5
- package/docs/guides/captions.md +140 -0
- package/docs/{how-to/cast-to-airplay-and-chromecast.md → guides/casting.md} +40 -39
- package/docs/guides/cdn.md +102 -0
- package/docs/guides/content-security-policy.md +37 -0
- package/docs/{how-to/show-and-hide-controls.md → guides/controls.md} +38 -37
- package/docs/guides/customize-skins.md +141 -0
- package/docs/{concepts → guides}/features.md +22 -46
- package/docs/guides/fullscreen.md +145 -0
- package/docs/guides/installation-cdn.md +164 -0
- package/docs/guides/installation-shadcn.md +305 -0
- package/docs/guides/installation-svelte.md +198 -0
- package/docs/guides/installation-vue.md +229 -0
- package/docs/guides/installation.md +186 -0
- package/docs/{how-to/internationalize-the-player.md → guides/internationalization.md} +84 -103
- package/docs/guides/keyboard-shortcuts.md +98 -0
- package/docs/guides/live-streams.md +110 -0
- package/docs/guides/llms.txt +79 -0
- package/docs/{concepts → guides}/media-sources.md +66 -260
- package/docs/{how-to → guides}/migrate-from-media-chrome.md +79 -249
- package/docs/{how-to → guides}/migrate-from-mux-player.md +146 -321
- package/docs/guides/migrate-from-plyr.md +296 -0
- package/docs/guides/migrate-from-video-js-8.md +467 -0
- package/docs/{concepts → guides}/mux-data.md +26 -27
- package/docs/{how-to/use-picture-in-picture.md → guides/picture-in-picture.md} +31 -33
- package/docs/guides/playback-errors.md +129 -0
- package/docs/{how-to/add-a-poster-and-loading-placeholder.md → guides/poster.md} +24 -34
- package/docs/{concepts → guides}/presets.md +17 -131
- package/docs/{how-to/add-quality-selector.md → guides/quality.md} +41 -41
- package/docs/{how-to/self-host-the-player.md → guides/self-hosting.md} +31 -41
- package/docs/guides/skins.md +68 -0
- package/docs/{how-to/use-videojs-with-svelte.md → guides/svelte.md} +15 -18
- package/docs/guides/thumbnails.md +183 -0
- package/docs/{concepts → guides}/typescript.md +10 -3
- package/docs/{concepts → guides}/ui-components.md +8 -14
- package/docs/{how-to/remember-user-preferences.md → guides/user-preferences.md} +25 -28
- package/docs/guides/v10-roadmap.md +92 -0
- package/docs/{how-to/use-videojs-with-vue.md → guides/vue.md} +19 -22
- package/docs/{concepts → guides}/why-videojs.md +36 -17
- package/docs/llms.txt +253 -181
- package/docs/reference/api/aria-key-shortcuts-controller.md +50 -0
- package/docs/reference/{create-i18n.md → api/create-i18n.md} +13 -52
- package/docs/reference/{create-selector.md → api/create-selector.md} +11 -33
- package/docs/reference/api/create-translator.md +36 -0
- package/docs/reference/api/error-codes.md +25 -0
- package/docs/reference/{feature-audio-track.md → api/feature-audio-track.md} +10 -36
- package/docs/reference/{feature-buffer.md → api/feature-buffer.md} +8 -31
- package/docs/reference/{feature-controls.md → api/feature-controls.md} +12 -58
- package/docs/reference/{feature-error.md → api/feature-error.md} +10 -36
- package/docs/reference/{feature-fullscreen.md → api/feature-fullscreen.md} +14 -69
- package/docs/reference/{feature-live.md → api/feature-live.md} +15 -42
- package/docs/reference/{feature-metadata.md → api/feature-metadata.md} +20 -80
- package/docs/reference/{feature-orientation-lock.md → api/feature-orientation-lock.md} +16 -64
- package/docs/reference/{feature-pip.md → api/feature-pip.md} +13 -66
- package/docs/reference/{feature-playback-rate.md → api/feature-playback-rate.md} +11 -46
- package/docs/reference/{feature-playback.md → api/feature-playback.md} +15 -86
- package/docs/reference/{feature-quality.md → api/feature-quality.md} +11 -46
- package/docs/reference/{feature-remote-playback.md → api/feature-remote-playback.md} +12 -47
- package/docs/reference/{feature-source.md → api/feature-source.md} +11 -46
- package/docs/reference/{feature-stream-type.md → api/feature-stream-type.md} +7 -23
- package/docs/reference/api/feature-text-tracks.md +54 -0
- package/docs/reference/{feature-time.md → api/feature-time.md} +12 -56
- package/docs/reference/{feature-volume.md → api/feature-volume.md} +14 -76
- package/docs/reference/{get-i18n-translations.md → api/get-i18n-translations.md} +11 -41
- package/docs/reference/{has-registered-locale.md → api/has-registered-locale.md} +7 -29
- package/docs/reference/{html-create-player.md → api/html-create-player.md} +45 -203
- package/docs/reference/{i-18-n-controller.md → api/i18n-controller.md} +12 -62
- package/docs/reference/api/llms.txt +74 -0
- package/docs/reference/{media-i18n.md → api/media-i18n.md} +8 -16
- package/docs/reference/{media-text.md → api/media-text.md} +3 -7
- package/docs/reference/{on-i18n-registry-change.md → api/on-i18n-registry-change.md} +9 -37
- package/docs/reference/{player-controller.md → api/player-controller.md} +36 -142
- package/docs/reference/{register-i18n.md → api/register-i18n.md} +9 -42
- package/docs/reference/api/snapshot-controller.md +95 -0
- package/docs/reference/api/store-controller.md +85 -0
- package/docs/reference/{subscription-controller.md → api/subscription-controller.md} +12 -70
- package/docs/reference/api/translation-phrases.md +107 -0
- package/docs/reference/api/vjs8-legacy-component.md +21 -0
- package/docs/reference/api/vjs8-legacy-get-player.md +21 -0
- package/docs/reference/api/vjs8-legacy-init.md +21 -0
- package/docs/reference/api/vjs8-legacy-options.md +21 -0
- package/docs/reference/api/vjs8-legacy-plugin.md +21 -0
- package/docs/reference/{airplay-button.md → components/airplay-button.md} +41 -194
- package/docs/reference/{alert-dialog.md → components/alert-dialog.md} +91 -280
- package/docs/reference/components/audio-minimal-skin.md +39 -0
- package/docs/reference/components/audio-skin.md +39 -0
- package/docs/reference/{audio-track-radio-group.md → components/audio-track-radio-group.md} +47 -219
- package/docs/reference/{audio.md → components/audio.md} +16 -17
- package/docs/reference/components/background-video-skin.md +37 -0
- package/docs/reference/{background-video.md → components/background-video.md} +25 -53
- package/docs/reference/{buffering-indicator.md → components/buffering-indicator.md} +21 -65
- package/docs/reference/{captions-button.md → components/captions-button.md} +35 -171
- package/docs/reference/{captions-radio-group.md → components/captions-radio-group.md} +48 -227
- package/docs/reference/{cast-button.md → components/cast-button.md} +39 -179
- package/docs/reference/components/cloudflare-video.md +157 -0
- package/docs/reference/{controls.md → components/controls.md} +52 -171
- package/docs/reference/components/dash-video.md +111 -0
- package/docs/reference/{dialog.md → components/dialog.md} +101 -314
- package/docs/reference/{error-dialog.md → components/error-dialog.md} +66 -162
- package/docs/reference/{fullscreen-button.md → components/fullscreen-button.md} +35 -153
- package/docs/reference/{gesture.md → components/gesture.md} +28 -130
- package/docs/reference/components/google-cast.md +47 -0
- package/docs/reference/components/hls-audio.md +87 -0
- package/docs/reference/components/hls-background-video.md +51 -0
- package/docs/reference/components/hls-video.md +110 -0
- package/docs/reference/components/hlsjs-video.md +126 -0
- package/docs/reference/{hotkey.md → components/hotkey.md} +28 -115
- package/docs/reference/{live-audio-minimal-skin.md → components/live-audio-minimal-skin.md} +12 -16
- package/docs/reference/{live-audio-skin.md → components/live-audio-skin.md} +12 -16
- package/docs/reference/{live-button.md → components/live-button.md} +36 -156
- package/docs/reference/components/live-video-minimal-skin.md +47 -0
- package/docs/reference/components/live-video-skin.md +47 -0
- package/docs/reference/components/llms.txt +122 -0
- package/docs/reference/{menu.md → components/menu.md} +123 -541
- package/docs/reference/{mute-button.md → components/mute-button.md} +50 -200
- package/docs/reference/components/mux-audio.md +127 -0
- package/docs/reference/{mux-background-video.md → components/mux-background-video.md} +9 -15
- package/docs/reference/components/mux-data.md +51 -0
- package/docs/reference/components/mux-video.md +220 -0
- package/docs/reference/components/native-hls-video.md +128 -0
- package/docs/reference/{pip-button.md → components/pip-button.md} +35 -153
- package/docs/reference/{play-button.md → components/play-button.md} +30 -134
- package/docs/reference/{playback-rate-button.md → components/playback-rate-button.md} +25 -105
- package/docs/reference/{playback-rate-radio-group.md → components/playback-rate-radio-group.md} +47 -223
- package/docs/reference/{player-container.md → components/player-container.md} +16 -27
- package/docs/reference/{player.md → components/player.md} +14 -24
- package/docs/reference/components/popover.md +193 -0
- package/docs/reference/{poster.md → components/poster.md} +42 -162
- package/docs/reference/{quality-radio-group.md → components/quality-radio-group.md} +47 -219
- package/docs/reference/{seek-button.md → components/seek-button.md} +26 -127
- package/docs/reference/{seek-indicator.md → components/seek-indicator.md} +55 -233
- package/docs/reference/components/shaka-video.md +161 -0
- package/docs/reference/components/slider.md +414 -0
- package/docs/reference/components/spotify-audio.md +144 -0
- package/docs/reference/{status-announcer.md → components/status-announcer.md} +37 -122
- package/docs/reference/{status-indicator.md → components/status-indicator.md} +57 -278
- package/docs/reference/components/thumbnail.md +321 -0
- package/docs/reference/components/tiktok-video.md +165 -0
- package/docs/reference/{time-slider.md → components/time-slider.md} +136 -595
- package/docs/reference/{time.md → components/time.md} +96 -286
- package/docs/reference/{title.md → components/title.md} +31 -70
- package/docs/reference/components/tooltip.md +274 -0
- package/docs/reference/components/twitch-video.md +161 -0
- package/docs/reference/components/video-minimal-skin.md +51 -0
- package/docs/reference/components/video-skin.md +51 -0
- package/docs/reference/{video.md → components/video.md} +14 -17
- package/docs/reference/components/vimeo-video.md +173 -0
- package/docs/reference/{volume-indicator.md → components/volume-indicator.md} +78 -291
- package/docs/reference/components/volume-popover.md +232 -0
- package/docs/reference/components/volume-slider.md +331 -0
- package/docs/reference/{wistia-video.md → components/wistia-video.md} +22 -30
- package/docs/reference/components/youtube-video.md +163 -0
- package/package.json +39 -38
- package/dist/default/define/audio/minimal-skin.js.map +0 -1
- package/dist/default/define/audio/minimal-skin2.js.map +0 -1
- package/dist/default/define/audio/minimal-ui.js.map +0 -1
- package/dist/default/define/audio/player.js.map +0 -1
- package/dist/default/define/audio/skin.js.map +0 -1
- package/dist/default/define/audio/skin2.js.map +0 -1
- package/dist/default/define/audio/ui.js.map +0 -1
- package/dist/default/define/background/player.js.map +0 -1
- package/dist/default/define/background/skin.js.map +0 -1
- package/dist/default/define/background/skin2.js.map +0 -1
- package/dist/default/define/extensions/google-cast.js.map +0 -1
- package/dist/default/define/extensions/mux-data.js.map +0 -1
- package/dist/default/define/global.js.map +0 -1
- package/dist/default/define/i18n.js.map +0 -1
- package/dist/default/define/live-audio/minimal-skin.js.map +0 -1
- package/dist/default/define/live-audio/minimal-skin2.js.map +0 -1
- package/dist/default/define/live-audio/minimal-ui.js.map +0 -1
- package/dist/default/define/live-audio/player.js.map +0 -1
- package/dist/default/define/live-audio/skin.js.map +0 -1
- package/dist/default/define/live-audio/skin2.js.map +0 -1
- package/dist/default/define/live-audio/ui.js.map +0 -1
- package/dist/default/define/live-video/minimal-skin.js.map +0 -1
- package/dist/default/define/live-video/minimal-skin2.js.map +0 -1
- package/dist/default/define/live-video/minimal-ui.js.map +0 -1
- package/dist/default/define/live-video/player.js.map +0 -1
- package/dist/default/define/live-video/skin.js.map +0 -1
- package/dist/default/define/live-video/skin2.js.map +0 -1
- package/dist/default/define/live-video/ui.js.map +0 -1
- package/dist/default/define/media/background-video.js.map +0 -1
- package/dist/default/define/media/cloudflare-video.js.map +0 -1
- package/dist/default/define/media/dash-video.js.map +0 -1
- package/dist/default/define/media/hls-audio.js.map +0 -1
- package/dist/default/define/media/hls-background-video.js.map +0 -1
- package/dist/default/define/media/hls-video.js.map +0 -1
- package/dist/default/define/media/hlsjs-video.js.map +0 -1
- package/dist/default/define/media/mux-audio/hls-js.js.map +0 -1
- package/dist/default/define/media/mux-audio/spf.js.map +0 -1
- package/dist/default/define/media/mux-background-video.js.map +0 -1
- package/dist/default/define/media/mux-video/hls-js.js.map +0 -1
- package/dist/default/define/media/mux-video/spf.js.map +0 -1
- package/dist/default/define/media/native-hls-video.js.map +0 -1
- package/dist/default/define/media/shaka-video.js.map +0 -1
- package/dist/default/define/media/spotify-audio.js.map +0 -1
- package/dist/default/define/media/tiktok-video.js.map +0 -1
- package/dist/default/define/media/twitch-video.js.map +0 -1
- package/dist/default/define/media/vimeo-video.js.map +0 -1
- package/dist/default/define/media/wistia-video.js.map +0 -1
- package/dist/default/define/media/youtube-video.js.map +0 -1
- package/dist/default/define/shared.css +0 -27
- package/dist/default/define/shared.js +0 -6
- package/dist/default/define/shared.js.map +0 -1
- package/dist/default/define/ui/airplay-button.js.map +0 -1
- package/dist/default/define/ui/alert-dialog.js.map +0 -1
- package/dist/default/define/ui/audio-track-radio-group.js.map +0 -1
- package/dist/default/define/ui/buffering-indicator.js.map +0 -1
- package/dist/default/define/ui/captions-button.js.map +0 -1
- package/dist/default/define/ui/captions-radio-group.js.map +0 -1
- package/dist/default/define/ui/cast-button.js.map +0 -1
- package/dist/default/define/ui/container.js.map +0 -1
- package/dist/default/define/ui/controls-backdrop.js.map +0 -1
- package/dist/default/define/ui/controls-content.js.map +0 -1
- package/dist/default/define/ui/controls-group.js.map +0 -1
- package/dist/default/define/ui/controls.js.map +0 -1
- package/dist/default/define/ui/dialog-backdrop.js.map +0 -1
- package/dist/default/define/ui/dialog-close.js.map +0 -1
- package/dist/default/define/ui/dialog-description.js.map +0 -1
- package/dist/default/define/ui/dialog-popup.js.map +0 -1
- package/dist/default/define/ui/dialog-title.js.map +0 -1
- package/dist/default/define/ui/dialog.js.map +0 -1
- package/dist/default/define/ui/error-dialog.js.map +0 -1
- package/dist/default/define/ui/fullscreen-button.js.map +0 -1
- package/dist/default/define/ui/gesture.js.map +0 -1
- package/dist/default/define/ui/hotkey.js.map +0 -1
- package/dist/default/define/ui/live-button.js.map +0 -1
- package/dist/default/define/ui/menu-checkbox-item.js.map +0 -1
- package/dist/default/define/ui/menu-content.js.map +0 -1
- package/dist/default/define/ui/menu-group-label.js.map +0 -1
- package/dist/default/define/ui/menu-group.js.map +0 -1
- package/dist/default/define/ui/menu-item-indicator.js.map +0 -1
- package/dist/default/define/ui/menu-item.js.map +0 -1
- package/dist/default/define/ui/menu-radio-group.js.map +0 -1
- package/dist/default/define/ui/menu-radio-item.js.map +0 -1
- package/dist/default/define/ui/menu-separator.js.map +0 -1
- package/dist/default/define/ui/menu.js.map +0 -1
- package/dist/default/define/ui/mute-button.js.map +0 -1
- package/dist/default/define/ui/pip-button.js.map +0 -1
- package/dist/default/define/ui/play-button.js.map +0 -1
- package/dist/default/define/ui/playback-rate-button.js.map +0 -1
- package/dist/default/define/ui/playback-rate-radio-group.js.map +0 -1
- package/dist/default/define/ui/popover.js.map +0 -1
- package/dist/default/define/ui/poster.js.map +0 -1
- package/dist/default/define/ui/quality-radio-group.js.map +0 -1
- package/dist/default/define/ui/seek-button.js.map +0 -1
- package/dist/default/define/ui/seek-indicator-value.js.map +0 -1
- package/dist/default/define/ui/seek-indicator.js.map +0 -1
- package/dist/default/define/ui/slider-buffer.js.map +0 -1
- package/dist/default/define/ui/slider-fill.js.map +0 -1
- package/dist/default/define/ui/slider-preview.js.map +0 -1
- package/dist/default/define/ui/slider-thumb.js.map +0 -1
- package/dist/default/define/ui/slider-thumbnail.js.map +0 -1
- package/dist/default/define/ui/slider-track.js.map +0 -1
- package/dist/default/define/ui/slider-value.js.map +0 -1
- package/dist/default/define/ui/slider.js.map +0 -1
- package/dist/default/define/ui/status-announcer.js.map +0 -1
- package/dist/default/define/ui/status-indicator-value.js.map +0 -1
- package/dist/default/define/ui/status-indicator.js.map +0 -1
- package/dist/default/define/ui/thumbnail.js.map +0 -1
- package/dist/default/define/ui/time-group.js.map +0 -1
- package/dist/default/define/ui/time-separator.js.map +0 -1
- package/dist/default/define/ui/time-slider-chapter-title.js.map +0 -1
- package/dist/default/define/ui/time-slider-chapters.js.map +0 -1
- package/dist/default/define/ui/time-slider.js.map +0 -1
- package/dist/default/define/ui/time.js.map +0 -1
- package/dist/default/define/ui/title.js.map +0 -1
- package/dist/default/define/ui/tooltip-group.js.map +0 -1
- package/dist/default/define/ui/tooltip-label.js.map +0 -1
- package/dist/default/define/ui/tooltip-shortcut.js.map +0 -1
- package/dist/default/define/ui/tooltip.js.map +0 -1
- package/dist/default/define/ui/volume-indicator-fill.js.map +0 -1
- package/dist/default/define/ui/volume-indicator-value.js.map +0 -1
- package/dist/default/define/ui/volume-indicator.js.map +0 -1
- package/dist/default/define/ui/volume-popover.js.map +0 -1
- package/dist/default/define/ui/volume-slider.js.map +0 -1
- package/dist/default/define/video/minimal-skin.js.map +0 -1
- package/dist/default/define/video/minimal-skin2.js.map +0 -1
- package/dist/default/define/video/minimal-ui.js.map +0 -1
- package/dist/default/define/video/player.js.map +0 -1
- package/dist/default/define/video/skin.js.map +0 -1
- package/dist/default/define/video/skin2.js.map +0 -1
- package/dist/default/define/video/ui.js.map +0 -1
- package/dist/default/extensions/google-cast/extension.js.map +0 -1
- package/dist/default/extensions/media-extension-element.js.map +0 -1
- package/dist/default/extensions/mux-data/extension.js.map +0 -1
- package/dist/default/i18n/cache-key.js.map +0 -1
- package/dist/default/i18n/context.js.map +0 -1
- package/dist/default/i18n/controller.js.map +0 -1
- package/dist/default/i18n/create-i18n.js.map +0 -1
- package/dist/default/i18n/locale.js.map +0 -1
- package/dist/default/i18n/locales/all/register.js.map +0 -1
- package/dist/default/i18n/locales/ar/register.js.map +0 -1
- package/dist/default/i18n/locales/az/register.js.map +0 -1
- package/dist/default/i18n/locales/bg/register.js.map +0 -1
- package/dist/default/i18n/locales/bn/register.js.map +0 -1
- package/dist/default/i18n/locales/bs/register.js.map +0 -1
- package/dist/default/i18n/locales/ca/register.js.map +0 -1
- package/dist/default/i18n/locales/cs/register.js.map +0 -1
- package/dist/default/i18n/locales/cy/register.js.map +0 -1
- package/dist/default/i18n/locales/da/register.js.map +0 -1
- package/dist/default/i18n/locales/de/register.js.map +0 -1
- package/dist/default/i18n/locales/el/register.js.map +0 -1
- package/dist/default/i18n/locales/en/register.js.map +0 -1
- package/dist/default/i18n/locales/es/register.js.map +0 -1
- package/dist/default/i18n/locales/et/register.js.map +0 -1
- package/dist/default/i18n/locales/eu/register.js.map +0 -1
- package/dist/default/i18n/locales/fa/register.js.map +0 -1
- package/dist/default/i18n/locales/fi/register.js.map +0 -1
- package/dist/default/i18n/locales/fr/register.js.map +0 -1
- package/dist/default/i18n/locales/gd/register.js.map +0 -1
- package/dist/default/i18n/locales/gl/register.js.map +0 -1
- package/dist/default/i18n/locales/he/register.js.map +0 -1
- package/dist/default/i18n/locales/hi/register.js.map +0 -1
- package/dist/default/i18n/locales/hr/register.js.map +0 -1
- package/dist/default/i18n/locales/hu/register.js.map +0 -1
- package/dist/default/i18n/locales/id/register.js.map +0 -1
- package/dist/default/i18n/locales/it/register.js.map +0 -1
- package/dist/default/i18n/locales/ja/register.js.map +0 -1
- package/dist/default/i18n/locales/ko/register.js.map +0 -1
- package/dist/default/i18n/locales/lt/register.js.map +0 -1
- package/dist/default/i18n/locales/lv/register.js.map +0 -1
- package/dist/default/i18n/locales/mr/register.js.map +0 -1
- package/dist/default/i18n/locales/nb/register.js.map +0 -1
- package/dist/default/i18n/locales/ne/register.js.map +0 -1
- package/dist/default/i18n/locales/nl/register.js.map +0 -1
- package/dist/default/i18n/locales/nn/register.js.map +0 -1
- package/dist/default/i18n/locales/oc/register.js.map +0 -1
- package/dist/default/i18n/locales/pl/register.js.map +0 -1
- package/dist/default/i18n/locales/pt/register.js.map +0 -1
- package/dist/default/i18n/locales/pt-BR/register.js.map +0 -1
- package/dist/default/i18n/locales/pt-PT/register.js.map +0 -1
- package/dist/default/i18n/locales/ro/register.js.map +0 -1
- package/dist/default/i18n/locales/ru/register.js.map +0 -1
- package/dist/default/i18n/locales/sk/register.js.map +0 -1
- package/dist/default/i18n/locales/sl/register.js.map +0 -1
- package/dist/default/i18n/locales/sr/register.js.map +0 -1
- package/dist/default/i18n/locales/sv/register.js.map +0 -1
- package/dist/default/i18n/locales/te/register.js.map +0 -1
- package/dist/default/i18n/locales/th/register.js.map +0 -1
- package/dist/default/i18n/locales/tr/register.js.map +0 -1
- package/dist/default/i18n/locales/uk/register.js.map +0 -1
- package/dist/default/i18n/locales/vi/register.js.map +0 -1
- package/dist/default/i18n/locales/zh/register.js.map +0 -1
- package/dist/default/i18n/locales/zh-CN/register.js.map +0 -1
- package/dist/default/i18n/locales/zh-TW/register.js.map +0 -1
- package/dist/default/i18n/provider-element.js.map +0 -1
- package/dist/default/i18n/provider-mixin.js.map +0 -1
- package/dist/default/i18n/render-text.js.map +0 -1
- package/dist/default/i18n/text-mixin.js.map +0 -1
- package/dist/default/icons/dist/element/base.js.map +0 -1
- package/dist/default/icons/dist/element/default/icons.js.map +0 -1
- package/dist/default/icons/dist/element/default/index.js.map +0 -1
- package/dist/default/icons/dist/element/index.js.map +0 -1
- package/dist/default/icons/dist/element/minimal/icons.js.map +0 -1
- package/dist/default/icons/dist/element/minimal/index.js.map +0 -1
- package/dist/default/icons/dist/html/default/airplay-enter.js.map +0 -1
- package/dist/default/icons/dist/html/default/airplay-exit.js.map +0 -1
- package/dist/default/icons/dist/html/default/captions-off.js.map +0 -1
- package/dist/default/icons/dist/html/default/captions-on.js.map +0 -1
- package/dist/default/icons/dist/html/default/cast-enter.js.map +0 -1
- package/dist/default/icons/dist/html/default/cast-exit.js.map +0 -1
- package/dist/default/icons/dist/html/default/check.js.map +0 -1
- package/dist/default/icons/dist/html/default/chevron.js.map +0 -1
- package/dist/default/icons/dist/html/default/fullscreen-enter.js.map +0 -1
- package/dist/default/icons/dist/html/default/fullscreen-exit.js.map +0 -1
- package/dist/default/icons/dist/html/default/gear.js.map +0 -1
- package/dist/default/icons/dist/html/default/pause.js.map +0 -1
- package/dist/default/icons/dist/html/default/pip-enter.js.map +0 -1
- package/dist/default/icons/dist/html/default/pip-exit.js.map +0 -1
- package/dist/default/icons/dist/html/default/play.js.map +0 -1
- package/dist/default/icons/dist/html/default/quality.js.map +0 -1
- package/dist/default/icons/dist/html/default/restart.js.map +0 -1
- package/dist/default/icons/dist/html/default/seek.js.map +0 -1
- package/dist/default/icons/dist/html/default/speech.js.map +0 -1
- package/dist/default/icons/dist/html/default/speed.js.map +0 -1
- package/dist/default/icons/dist/html/default/spinner.js.map +0 -1
- package/dist/default/icons/dist/html/default/switches.js.map +0 -1
- package/dist/default/icons/dist/html/default/volume-high.js.map +0 -1
- package/dist/default/icons/dist/html/default/volume-low.js.map +0 -1
- package/dist/default/icons/dist/html/default/volume-off.js.map +0 -1
- package/dist/default/icons/dist/html/minimal/airplay-enter.js.map +0 -1
- package/dist/default/icons/dist/html/minimal/airplay-exit.js.map +0 -1
- package/dist/default/icons/dist/html/minimal/captions-off.js.map +0 -1
- package/dist/default/icons/dist/html/minimal/captions-on.js.map +0 -1
- package/dist/default/icons/dist/html/minimal/cast-enter.js.map +0 -1
- package/dist/default/icons/dist/html/minimal/cast-exit.js.map +0 -1
- package/dist/default/icons/dist/html/minimal/check.js.map +0 -1
- package/dist/default/icons/dist/html/minimal/chevron.js.map +0 -1
- package/dist/default/icons/dist/html/minimal/fullscreen-enter.js.map +0 -1
- package/dist/default/icons/dist/html/minimal/fullscreen-exit.js.map +0 -1
- package/dist/default/icons/dist/html/minimal/gear.js.map +0 -1
- package/dist/default/icons/dist/html/minimal/pause.js.map +0 -1
- package/dist/default/icons/dist/html/minimal/pip-enter.js.map +0 -1
- package/dist/default/icons/dist/html/minimal/pip-exit.js.map +0 -1
- package/dist/default/icons/dist/html/minimal/play.js.map +0 -1
- package/dist/default/icons/dist/html/minimal/quality.js.map +0 -1
- package/dist/default/icons/dist/html/minimal/restart.js.map +0 -1
- package/dist/default/icons/dist/html/minimal/seek.js.map +0 -1
- package/dist/default/icons/dist/html/minimal/speech.js.map +0 -1
- package/dist/default/icons/dist/html/minimal/speed.js.map +0 -1
- package/dist/default/icons/dist/html/minimal/spinner.js.map +0 -1
- package/dist/default/icons/dist/html/minimal/switches.js.map +0 -1
- package/dist/default/icons/dist/html/minimal/volume-high.js.map +0 -1
- package/dist/default/icons/dist/html/minimal/volume-low.js.map +0 -1
- package/dist/default/icons/dist/html/minimal/volume-off.js.map +0 -1
- package/dist/default/icons/element/register/index.js.map +0 -1
- package/dist/default/internal/skins/default-audio/register.js.map +0 -1
- package/dist/default/internal/skins/default-audio/template.js.map +0 -1
- package/dist/default/internal/skins/default-live-audio/register.js.map +0 -1
- package/dist/default/internal/skins/default-live-audio/template.js.map +0 -1
- package/dist/default/internal/skins/default-live-video/register.js.map +0 -1
- package/dist/default/internal/skins/default-live-video/template.js.map +0 -1
- package/dist/default/internal/skins/default-video/register.js.map +0 -1
- package/dist/default/internal/skins/default-video/template.js.map +0 -1
- package/dist/default/internal/skins/minimal-audio/register.js.map +0 -1
- package/dist/default/internal/skins/minimal-audio/template.js.map +0 -1
- package/dist/default/internal/skins/minimal-live-audio/register.js.map +0 -1
- package/dist/default/internal/skins/minimal-live-audio/template.js.map +0 -1
- package/dist/default/internal/skins/minimal-live-video/register.js.map +0 -1
- package/dist/default/internal/skins/minimal-live-video/template.js.map +0 -1
- package/dist/default/internal/skins/minimal-video/register.js.map +0 -1
- package/dist/default/internal/skins/minimal-video/template.js.map +0 -1
- package/dist/default/media/background-video/adapter.js.map +0 -1
- package/dist/default/media/background-video/template.js.map +0 -1
- package/dist/default/media/cloudflare-video/adapter.js.map +0 -1
- package/dist/default/media/dash-video/adapter.js.map +0 -1
- package/dist/default/media/hls-audio/adapter.js.map +0 -1
- package/dist/default/media/hls-background-video/adapter.js.map +0 -1
- package/dist/default/media/hls-video/adapter.js.map +0 -1
- package/dist/default/media/hlsjs-video/adapter.js.map +0 -1
- package/dist/default/media/mux-audio/hls-js.js.map +0 -1
- package/dist/default/media/mux-audio/mixin.js.map +0 -1
- package/dist/default/media/mux-audio/spf.js.map +0 -1
- package/dist/default/media/mux-video/hls-js.js.map +0 -1
- package/dist/default/media/mux-video/mixin.js.map +0 -1
- package/dist/default/media/mux-video/spf.js.map +0 -1
- package/dist/default/media/native-hls-video/adapter.js.map +0 -1
- package/dist/default/media/shaka-video/adapter.js.map +0 -1
- package/dist/default/media/spotify-audio/adapter.js.map +0 -1
- package/dist/default/media/tiktok-video/adapter.js.map +0 -1
- package/dist/default/media/twitch-video/adapter.js.map +0 -1
- package/dist/default/media/vimeo-video/adapter.js.map +0 -1
- package/dist/default/media/wistia-video/adapter.js.map +0 -1
- package/dist/default/media/youtube-video/adapter.js.map +0 -1
- package/dist/default/player/context.js.map +0 -1
- package/dist/default/player/controller.js.map +0 -1
- package/dist/default/player/create-player.js.map +0 -1
- package/dist/default/player/element.js.map +0 -1
- package/dist/default/player/popup-group-context.js.map +0 -1
- package/dist/default/presets/audio/minimal-skin.js.map +0 -1
- package/dist/default/presets/audio/player.js.map +0 -1
- package/dist/default/presets/audio/skin.js.map +0 -1
- package/dist/default/presets/background/player.js.map +0 -1
- package/dist/default/presets/background/skin.js.map +0 -1
- package/dist/default/presets/live-audio/minimal-skin.js.map +0 -1
- package/dist/default/presets/live-audio/player.js.map +0 -1
- package/dist/default/presets/live-audio/skin.js.map +0 -1
- package/dist/default/presets/live-video/minimal-skin.js.map +0 -1
- package/dist/default/presets/live-video/player.js.map +0 -1
- package/dist/default/presets/live-video/skin.js.map +0 -1
- package/dist/default/presets/skin.js.map +0 -1
- package/dist/default/presets/video/minimal-skin.js.map +0 -1
- package/dist/default/presets/video/player.js.map +0 -1
- package/dist/default/presets/video/skin.js.map +0 -1
- package/dist/default/registration/safe-define.js.map +0 -1
- package/dist/default/registration/ui-compounds.js.map +0 -1
- package/dist/default/store/media-attach-mixin.js.map +0 -1
- package/dist/default/ui/airplay-button/element.js.map +0 -1
- package/dist/default/ui/alert-dialog/element.js.map +0 -1
- package/dist/default/ui/audio-track-radio-group/element.js.map +0 -1
- package/dist/default/ui/buffering-indicator/element.js.map +0 -1
- package/dist/default/ui/captions-button/element.js.map +0 -1
- package/dist/default/ui/captions-radio-group/element.js.map +0 -1
- package/dist/default/ui/cast-button/element.js.map +0 -1
- package/dist/default/ui/command-for.js.map +0 -1
- package/dist/default/ui/container/element.js.map +0 -1
- package/dist/default/ui/context-part-element.js.map +0 -1
- package/dist/default/ui/controls/backdrop.js.map +0 -1
- package/dist/default/ui/controls/content.js.map +0 -1
- package/dist/default/ui/controls/context.js.map +0 -1
- package/dist/default/ui/controls/element.js.map +0 -1
- package/dist/default/ui/controls/group.js.map +0 -1
- package/dist/default/ui/dialog/backdrop.js.map +0 -1
- package/dist/default/ui/dialog/close.js.map +0 -1
- package/dist/default/ui/dialog/context.js.map +0 -1
- package/dist/default/ui/dialog/description.js.map +0 -1
- package/dist/default/ui/dialog/element.js.map +0 -1
- package/dist/default/ui/dialog/popup.js.map +0 -1
- package/dist/default/ui/dialog/title.js.map +0 -1
- package/dist/default/ui/error-dialog/element.js.map +0 -1
- package/dist/default/ui/fullscreen-button/element.js.map +0 -1
- package/dist/default/ui/gesture/element.js.map +0 -1
- package/dist/default/ui/hotkey/aria-key-shortcuts-controller.js.map +0 -1
- package/dist/default/ui/hotkey/element.js.map +0 -1
- package/dist/default/ui/input-indicator/element.js.map +0 -1
- package/dist/default/ui/input-indicator/live-indicator.js.map +0 -1
- package/dist/default/ui/live-button/element.js.map +0 -1
- package/dist/default/ui/media-button-element.js.map +0 -1
- package/dist/default/ui/media-ui-element.js.map +0 -1
- package/dist/default/ui/menu/checkbox-item.js.map +0 -1
- package/dist/default/ui/menu/content.js.map +0 -1
- package/dist/default/ui/menu/context.js.map +0 -1
- package/dist/default/ui/menu/element.js.map +0 -1
- package/dist/default/ui/menu/group-controller.js.map +0 -1
- package/dist/default/ui/menu/group-label.js.map +0 -1
- package/dist/default/ui/menu/group.js.map +0 -1
- package/dist/default/ui/menu/item-indicator.js.map +0 -1
- package/dist/default/ui/menu/item.js.map +0 -1
- package/dist/default/ui/menu/radio-group.js.map +0 -1
- package/dist/default/ui/menu/radio-item.js.map +0 -1
- package/dist/default/ui/menu/separator.js.map +0 -1
- package/dist/default/ui/mute-button/element.js.map +0 -1
- package/dist/default/ui/pip-button/element.js.map +0 -1
- package/dist/default/ui/play-button/element.js.map +0 -1
- package/dist/default/ui/playback-rate-button/element.js.map +0 -1
- package/dist/default/ui/playback-rate-radio-group/element.js.map +0 -1
- package/dist/default/ui/popover/element.js.map +0 -1
- package/dist/default/ui/position-controller.js.map +0 -1
- package/dist/default/ui/poster/element.js.map +0 -1
- package/dist/default/ui/quality-radio-group/element.js.map +0 -1
- package/dist/default/ui/radio-group/context.js.map +0 -1
- package/dist/default/ui/radio-group/element.js.map +0 -1
- package/dist/default/ui/radio-options/controller.js.map +0 -1
- package/dist/default/ui/seek-button/element.js.map +0 -1
- package/dist/default/ui/seek-indicator/element.js.map +0 -1
- package/dist/default/ui/seek-indicator/value.js.map +0 -1
- package/dist/default/ui/slider/buffer.js.map +0 -1
- package/dist/default/ui/slider/context.js.map +0 -1
- package/dist/default/ui/slider/element.js.map +0 -1
- package/dist/default/ui/slider/fill.js.map +0 -1
- package/dist/default/ui/slider/preview.js.map +0 -1
- package/dist/default/ui/slider/thumb.js.map +0 -1
- package/dist/default/ui/slider/thumbnail.js.map +0 -1
- package/dist/default/ui/slider/track.js.map +0 -1
- package/dist/default/ui/slider/value.js.map +0 -1
- package/dist/default/ui/status-announcer/element.js.map +0 -1
- package/dist/default/ui/status-indicator/element.js.map +0 -1
- package/dist/default/ui/status-indicator/value.js.map +0 -1
- package/dist/default/ui/text/element.js.map +0 -1
- package/dist/default/ui/thumbnail/element.js.map +0 -1
- package/dist/default/ui/time/element.js.map +0 -1
- package/dist/default/ui/time/group.js.map +0 -1
- package/dist/default/ui/time/separator.js.map +0 -1
- package/dist/default/ui/time-slider/chapter-title.js.map +0 -1
- package/dist/default/ui/time-slider/chapters.js.map +0 -1
- package/dist/default/ui/time-slider/element.js.map +0 -1
- package/dist/default/ui/title/element.js.map +0 -1
- package/dist/default/ui/tooltip/context.js.map +0 -1
- package/dist/default/ui/tooltip/element.js.map +0 -1
- package/dist/default/ui/tooltip/group.js.map +0 -1
- package/dist/default/ui/tooltip/label.js.map +0 -1
- package/dist/default/ui/tooltip/shortcut.js.map +0 -1
- package/dist/default/ui/ui-element.js.map +0 -1
- package/dist/default/ui/volume-indicator/element.js.map +0 -1
- package/dist/default/ui/volume-indicator/fill.js.map +0 -1
- package/dist/default/ui/volume-indicator/value.js.map +0 -1
- package/dist/default/ui/volume-popover/element.js.map +0 -1
- package/dist/default/ui/volume-slider/element.js.map +0 -1
- package/dist/dev/define/extensions/google-cast.d.ts.map +0 -1
- package/dist/dev/define/extensions/mux-data.d.ts.map +0 -1
- package/dist/dev/define/i18n.d.ts.map +0 -1
- package/dist/dev/define/media/background-video.d.ts.map +0 -1
- package/dist/dev/define/media/cloudflare-video.d.ts.map +0 -1
- package/dist/dev/define/media/dash-video.d.ts.map +0 -1
- package/dist/dev/define/media/hls-audio.d.ts.map +0 -1
- package/dist/dev/define/media/hls-background-video.d.ts.map +0 -1
- package/dist/dev/define/media/hls-video.d.ts.map +0 -1
- package/dist/dev/define/media/hlsjs-video.d.ts.map +0 -1
- package/dist/dev/define/media/mux-audio/hls-js.d.ts.map +0 -1
- package/dist/dev/define/media/mux-audio/spf.d.ts.map +0 -1
- package/dist/dev/define/media/mux-background-video.d.ts.map +0 -1
- package/dist/dev/define/media/mux-video/hls-js.d.ts.map +0 -1
- package/dist/dev/define/media/mux-video/spf.d.ts.map +0 -1
- package/dist/dev/define/media/native-hls-video.d.ts.map +0 -1
- package/dist/dev/define/media/shaka-video.d.ts.map +0 -1
- package/dist/dev/define/media/spotify-audio.d.ts.map +0 -1
- package/dist/dev/define/media/tiktok-video.d.ts.map +0 -1
- package/dist/dev/define/media/twitch-video.d.ts.map +0 -1
- package/dist/dev/define/media/vimeo-video.d.ts.map +0 -1
- package/dist/dev/define/media/wistia-video.d.ts.map +0 -1
- package/dist/dev/define/media/youtube-video.d.ts.map +0 -1
- package/dist/dev/define/shared.css +0 -27
- package/dist/dev/define/shared.js +0 -6
- package/dist/dev/define/shared.js.map +0 -1
- package/dist/dev/define/ui/airplay-button.d.ts.map +0 -1
- package/dist/dev/define/ui/alert-dialog.d.ts.map +0 -1
- package/dist/dev/define/ui/audio-track-radio-group.d.ts.map +0 -1
- package/dist/dev/define/ui/buffering-indicator.d.ts.map +0 -1
- package/dist/dev/define/ui/captions-button.d.ts.map +0 -1
- package/dist/dev/define/ui/captions-radio-group.d.ts.map +0 -1
- package/dist/dev/define/ui/cast-button.d.ts.map +0 -1
- package/dist/dev/define/ui/container.d.ts.map +0 -1
- package/dist/dev/define/ui/controls-backdrop.d.ts.map +0 -1
- package/dist/dev/define/ui/controls-content.d.ts.map +0 -1
- package/dist/dev/define/ui/controls-group.d.ts.map +0 -1
- package/dist/dev/define/ui/controls.d.ts.map +0 -1
- package/dist/dev/define/ui/dialog-backdrop.d.ts.map +0 -1
- package/dist/dev/define/ui/dialog-close.d.ts.map +0 -1
- package/dist/dev/define/ui/dialog-description.d.ts.map +0 -1
- package/dist/dev/define/ui/dialog-popup.d.ts.map +0 -1
- package/dist/dev/define/ui/dialog-title.d.ts.map +0 -1
- package/dist/dev/define/ui/dialog.d.ts.map +0 -1
- package/dist/dev/define/ui/error-dialog.d.ts.map +0 -1
- package/dist/dev/define/ui/fullscreen-button.d.ts.map +0 -1
- package/dist/dev/define/ui/gesture.d.ts.map +0 -1
- package/dist/dev/define/ui/hotkey.d.ts.map +0 -1
- package/dist/dev/define/ui/live-button.d.ts.map +0 -1
- package/dist/dev/define/ui/menu-checkbox-item.d.ts.map +0 -1
- package/dist/dev/define/ui/menu-content.d.ts.map +0 -1
- package/dist/dev/define/ui/menu-group-label.d.ts.map +0 -1
- package/dist/dev/define/ui/menu-group.d.ts.map +0 -1
- package/dist/dev/define/ui/menu-item-indicator.d.ts.map +0 -1
- package/dist/dev/define/ui/menu-item.d.ts.map +0 -1
- package/dist/dev/define/ui/menu-radio-group.d.ts.map +0 -1
- package/dist/dev/define/ui/menu-radio-item.d.ts.map +0 -1
- package/dist/dev/define/ui/menu-separator.d.ts.map +0 -1
- package/dist/dev/define/ui/menu.d.ts.map +0 -1
- package/dist/dev/define/ui/mute-button.d.ts.map +0 -1
- package/dist/dev/define/ui/pip-button.d.ts.map +0 -1
- package/dist/dev/define/ui/play-button.d.ts.map +0 -1
- package/dist/dev/define/ui/playback-rate-button.d.ts.map +0 -1
- package/dist/dev/define/ui/playback-rate-radio-group.d.ts.map +0 -1
- package/dist/dev/define/ui/popover.d.ts.map +0 -1
- package/dist/dev/define/ui/poster.d.ts.map +0 -1
- package/dist/dev/define/ui/quality-radio-group.d.ts.map +0 -1
- package/dist/dev/define/ui/seek-button.d.ts.map +0 -1
- package/dist/dev/define/ui/seek-indicator-value.d.ts.map +0 -1
- package/dist/dev/define/ui/seek-indicator.d.ts.map +0 -1
- package/dist/dev/define/ui/slider-buffer.d.ts.map +0 -1
- package/dist/dev/define/ui/slider-fill.d.ts.map +0 -1
- package/dist/dev/define/ui/slider-preview.d.ts.map +0 -1
- package/dist/dev/define/ui/slider-thumb.d.ts.map +0 -1
- package/dist/dev/define/ui/slider-thumbnail.d.ts.map +0 -1
- package/dist/dev/define/ui/slider-track.d.ts.map +0 -1
- package/dist/dev/define/ui/slider-value.d.ts.map +0 -1
- package/dist/dev/define/ui/slider.d.ts.map +0 -1
- package/dist/dev/define/ui/status-announcer.d.ts.map +0 -1
- package/dist/dev/define/ui/status-indicator-value.d.ts.map +0 -1
- package/dist/dev/define/ui/status-indicator.d.ts.map +0 -1
- package/dist/dev/define/ui/thumbnail.d.ts.map +0 -1
- package/dist/dev/define/ui/time-group.d.ts.map +0 -1
- package/dist/dev/define/ui/time-separator.d.ts.map +0 -1
- package/dist/dev/define/ui/time-slider-chapter-title.d.ts.map +0 -1
- package/dist/dev/define/ui/time-slider-chapters.d.ts.map +0 -1
- package/dist/dev/define/ui/time-slider.d.ts.map +0 -1
- package/dist/dev/define/ui/time.d.ts.map +0 -1
- package/dist/dev/define/ui/title.d.ts.map +0 -1
- package/dist/dev/define/ui/tooltip-group.d.ts.map +0 -1
- package/dist/dev/define/ui/tooltip-label.d.ts.map +0 -1
- package/dist/dev/define/ui/tooltip-shortcut.d.ts.map +0 -1
- package/dist/dev/define/ui/tooltip.d.ts.map +0 -1
- package/dist/dev/define/ui/volume-indicator-fill.d.ts.map +0 -1
- package/dist/dev/define/ui/volume-indicator-value.d.ts.map +0 -1
- package/dist/dev/define/ui/volume-indicator.d.ts.map +0 -1
- package/dist/dev/define/ui/volume-popover.d.ts.map +0 -1
- package/dist/dev/define/ui/volume-slider.d.ts.map +0 -1
- package/dist/dev/extensions/google-cast/extension.d.ts.map +0 -1
- package/dist/dev/extensions/media-extension-element.d.ts.map +0 -1
- package/dist/dev/extensions/mux-data/extension.d.ts.map +0 -1
- package/dist/dev/i18n/context.d.ts.map +0 -1
- package/dist/dev/i18n/controller.d.ts.map +0 -1
- package/dist/dev/i18n/create-i18n.d.ts.map +0 -1
- package/dist/dev/i18n/locale.d.ts.map +0 -1
- package/dist/dev/i18n/provider-element.d.ts.map +0 -1
- package/dist/dev/i18n/provider-mixin.d.ts.map +0 -1
- package/dist/dev/i18n/render-text.d.ts.map +0 -1
- package/dist/dev/i18n/text-mixin.d.ts.map +0 -1
- package/dist/dev/i18n/types.d.ts.map +0 -1
- package/dist/dev/icons/dist/element/base.d.ts.map +0 -1
- package/dist/dev/icons/dist/html/default/index.d.ts.map +0 -1
- package/dist/dev/icons/dist/html/minimal/index.d.ts.map +0 -1
- package/dist/dev/icons/element/register/index.d.ts.map +0 -1
- package/dist/dev/index.d.ts.map +0 -1
- package/dist/dev/media/background-video/adapter.d.ts.map +0 -1
- package/dist/dev/media/background-video/template.d.ts.map +0 -1
- package/dist/dev/media/cloudflare-video/adapter.d.ts.map +0 -1
- package/dist/dev/media/dash-video/adapter.d.ts.map +0 -1
- package/dist/dev/media/hls-audio/adapter.d.ts.map +0 -1
- package/dist/dev/media/hls-background-video/adapter.d.ts.map +0 -1
- package/dist/dev/media/hls-video/adapter.d.ts.map +0 -1
- package/dist/dev/media/hlsjs-video/adapter.d.ts.map +0 -1
- package/dist/dev/media/mux-audio/hls-js.d.ts.map +0 -1
- package/dist/dev/media/mux-audio/spf.d.ts.map +0 -1
- package/dist/dev/media/mux-video/hls-js.d.ts.map +0 -1
- package/dist/dev/media/mux-video/spf.d.ts.map +0 -1
- package/dist/dev/media/native-hls-video/adapter.d.ts.map +0 -1
- package/dist/dev/media/shaka-video/adapter.d.ts.map +0 -1
- package/dist/dev/media/spotify-audio/adapter.d.ts.map +0 -1
- package/dist/dev/media/tiktok-video/adapter.d.ts.map +0 -1
- package/dist/dev/media/twitch-video/adapter.d.ts.map +0 -1
- package/dist/dev/media/vimeo-video/adapter.d.ts.map +0 -1
- package/dist/dev/media/wistia-video/adapter.d.ts.map +0 -1
- package/dist/dev/media/youtube-video/adapter.d.ts.map +0 -1
- package/dist/dev/player/context.d.ts.map +0 -1
- package/dist/dev/player/controller.d.ts.map +0 -1
- package/dist/dev/player/create-player.d.ts.map +0 -1
- package/dist/dev/presets/audio/minimal-skin.d.ts.map +0 -1
- package/dist/dev/presets/audio/player.d.ts.map +0 -1
- package/dist/dev/presets/audio/skin.d.ts.map +0 -1
- package/dist/dev/presets/background/player.d.ts.map +0 -1
- package/dist/dev/presets/background/skin.d.ts.map +0 -1
- package/dist/dev/presets/live-audio/minimal-skin.d.ts.map +0 -1
- package/dist/dev/presets/live-audio/player.d.ts.map +0 -1
- package/dist/dev/presets/live-audio/skin.d.ts.map +0 -1
- package/dist/dev/presets/live-video/minimal-skin.d.ts.map +0 -1
- package/dist/dev/presets/live-video/player.d.ts.map +0 -1
- package/dist/dev/presets/live-video/skin.d.ts.map +0 -1
- package/dist/dev/presets/skin.d.ts.map +0 -1
- package/dist/dev/presets/video/minimal-skin.d.ts.map +0 -1
- package/dist/dev/presets/video/player.d.ts.map +0 -1
- package/dist/dev/presets/video/skin.d.ts.map +0 -1
- package/dist/dev/store/media-attach-mixin.d.ts.map +0 -1
- package/dist/dev/store/types.d.ts.map +0 -1
- package/dist/dev/ui/airplay-button/element.d.ts.map +0 -1
- package/dist/dev/ui/alert-dialog/element.d.ts.map +0 -1
- package/dist/dev/ui/audio-track-radio-group/element.d.ts.map +0 -1
- package/dist/dev/ui/buffering-indicator/element.d.ts.map +0 -1
- package/dist/dev/ui/captions-button/element.d.ts.map +0 -1
- package/dist/dev/ui/captions-radio-group/element.d.ts.map +0 -1
- package/dist/dev/ui/cast-button/element.d.ts.map +0 -1
- package/dist/dev/ui/container/element.d.ts.map +0 -1
- package/dist/dev/ui/context-part-element.d.ts.map +0 -1
- package/dist/dev/ui/controls/backdrop.d.ts.map +0 -1
- package/dist/dev/ui/controls/content.d.ts.map +0 -1
- package/dist/dev/ui/controls/context.d.ts.map +0 -1
- package/dist/dev/ui/controls/element.d.ts.map +0 -1
- package/dist/dev/ui/controls/group.d.ts.map +0 -1
- package/dist/dev/ui/dialog/backdrop.d.ts.map +0 -1
- package/dist/dev/ui/dialog/close.d.ts.map +0 -1
- package/dist/dev/ui/dialog/context.d.ts.map +0 -1
- package/dist/dev/ui/dialog/description.d.ts.map +0 -1
- package/dist/dev/ui/dialog/element.d.ts.map +0 -1
- package/dist/dev/ui/dialog/popup.d.ts.map +0 -1
- package/dist/dev/ui/dialog/title.d.ts.map +0 -1
- package/dist/dev/ui/error-dialog/element.d.ts.map +0 -1
- package/dist/dev/ui/fullscreen-button/element.d.ts.map +0 -1
- package/dist/dev/ui/gesture/element.d.ts.map +0 -1
- package/dist/dev/ui/hotkey/aria-key-shortcuts-controller.d.ts.map +0 -1
- package/dist/dev/ui/hotkey/element.d.ts.map +0 -1
- package/dist/dev/ui/input-indicator/element.d.ts.map +0 -1
- package/dist/dev/ui/input-indicator/live-indicator.d.ts.map +0 -1
- package/dist/dev/ui/live-button/element.d.ts.map +0 -1
- package/dist/dev/ui/media-button-element.d.ts.map +0 -1
- package/dist/dev/ui/media-ui-element.d.ts.map +0 -1
- package/dist/dev/ui/menu/checkbox-item.d.ts.map +0 -1
- package/dist/dev/ui/menu/content.d.ts.map +0 -1
- package/dist/dev/ui/menu/context.d.ts.map +0 -1
- package/dist/dev/ui/menu/element.d.ts.map +0 -1
- package/dist/dev/ui/menu/group-label.d.ts.map +0 -1
- package/dist/dev/ui/menu/group.d.ts.map +0 -1
- package/dist/dev/ui/menu/item-indicator.d.ts.map +0 -1
- package/dist/dev/ui/menu/item.d.ts.map +0 -1
- package/dist/dev/ui/menu/radio-group.d.ts.map +0 -1
- package/dist/dev/ui/menu/radio-item.d.ts.map +0 -1
- package/dist/dev/ui/menu/separator.d.ts.map +0 -1
- package/dist/dev/ui/mute-button/element.d.ts.map +0 -1
- package/dist/dev/ui/pip-button/element.d.ts.map +0 -1
- package/dist/dev/ui/play-button/element.d.ts.map +0 -1
- package/dist/dev/ui/playback-rate-button/element.d.ts.map +0 -1
- package/dist/dev/ui/playback-rate-radio-group/element.d.ts.map +0 -1
- package/dist/dev/ui/popover/element.d.ts.map +0 -1
- package/dist/dev/ui/poster/element.d.ts.map +0 -1
- package/dist/dev/ui/quality-radio-group/element.d.ts.map +0 -1
- package/dist/dev/ui/radio-group/context.d.ts.map +0 -1
- package/dist/dev/ui/radio-group/element.d.ts.map +0 -1
- package/dist/dev/ui/seek-button/element.d.ts.map +0 -1
- package/dist/dev/ui/seek-indicator/element.d.ts.map +0 -1
- package/dist/dev/ui/seek-indicator/value.d.ts.map +0 -1
- package/dist/dev/ui/slider/buffer.d.ts.map +0 -1
- package/dist/dev/ui/slider/context.d.ts.map +0 -1
- package/dist/dev/ui/slider/element.d.ts.map +0 -1
- package/dist/dev/ui/slider/events.d.ts.map +0 -1
- package/dist/dev/ui/slider/fill.d.ts.map +0 -1
- package/dist/dev/ui/slider/preview.d.ts.map +0 -1
- package/dist/dev/ui/slider/thumb.d.ts.map +0 -1
- package/dist/dev/ui/slider/thumbnail.d.ts.map +0 -1
- package/dist/dev/ui/slider/track.d.ts.map +0 -1
- package/dist/dev/ui/slider/value.d.ts.map +0 -1
- package/dist/dev/ui/status-announcer/element.d.ts.map +0 -1
- package/dist/dev/ui/status-indicator/element.d.ts.map +0 -1
- package/dist/dev/ui/status-indicator/value.d.ts.map +0 -1
- package/dist/dev/ui/text/element.d.ts.map +0 -1
- package/dist/dev/ui/thumbnail/element.d.ts.map +0 -1
- package/dist/dev/ui/time/element.d.ts.map +0 -1
- package/dist/dev/ui/time/group.d.ts.map +0 -1
- package/dist/dev/ui/time/separator.d.ts.map +0 -1
- package/dist/dev/ui/time-slider/chapter-title.d.ts.map +0 -1
- package/dist/dev/ui/time-slider/chapters.d.ts.map +0 -1
- package/dist/dev/ui/time-slider/element.d.ts.map +0 -1
- package/dist/dev/ui/title/element.d.ts.map +0 -1
- package/dist/dev/ui/tooltip/context.d.ts.map +0 -1
- package/dist/dev/ui/tooltip/element.d.ts.map +0 -1
- package/dist/dev/ui/tooltip/group.d.ts.map +0 -1
- package/dist/dev/ui/tooltip/label.d.ts.map +0 -1
- package/dist/dev/ui/tooltip/shortcut.d.ts.map +0 -1
- package/dist/dev/ui/ui-element.d.ts.map +0 -1
- package/dist/dev/ui/volume-indicator/element.d.ts.map +0 -1
- package/dist/dev/ui/volume-indicator/fill.d.ts.map +0 -1
- package/dist/dev/ui/volume-indicator/value.d.ts.map +0 -1
- package/dist/dev/ui/volume-popover/element.d.ts.map +0 -1
- package/dist/dev/ui/volume-slider/element.d.ts.map +0 -1
- package/docs/concepts/accessibility.md +0 -68
- package/docs/concepts/browser-support.md +0 -45
- package/docs/concepts/cdn.md +0 -119
- package/docs/concepts/custom-element-lifecycle.md +0 -115
- package/docs/concepts/security.md +0 -32
- package/docs/concepts/skins.md +0 -188
- package/docs/concepts/v10-roadmap.md +0 -75
- package/docs/how-to/add-keyboard-shortcuts-and-gestures.md +0 -98
- package/docs/how-to/build-with-ai.md +0 -39
- package/docs/how-to/build-your-own-component.md +0 -350
- package/docs/how-to/customize-skins.md +0 -358
- package/docs/how-to/go-fullscreen-and-lock-orientation.md +0 -147
- package/docs/how-to/handle-playback-errors.md +0 -88
- package/docs/how-to/installation.md +0 -165
- package/docs/how-to/migrate-from-plyr.md +0 -406
- package/docs/how-to/migrate-from-video-js-8.md +0 -626
- package/docs/how-to/play-live-streams.md +0 -116
- package/docs/how-to/show-captions-and-subtitles.md +0 -140
- package/docs/how-to/show-timeline-thumbnail-previews.md +0 -164
- package/docs/reference/aria-key-shortcuts-controller.md +0 -117
- package/docs/reference/audio-minimal-skin.md +0 -43
- package/docs/reference/audio-skin.md +0 -43
- package/docs/reference/background-video-skin.md +0 -39
- package/docs/reference/cloudflare-video.md +0 -513
- package/docs/reference/create-translator.md +0 -81
- package/docs/reference/dash-video.md +0 -363
- package/docs/reference/feature-text-tracks.md +0 -134
- package/docs/reference/google-cast.md +0 -83
- package/docs/reference/hls-audio.md +0 -212
- package/docs/reference/hls-background-video.md +0 -100
- package/docs/reference/hls-video.md +0 -339
- package/docs/reference/hlsjs-video.md +0 -1047
- package/docs/reference/html-i-18-n-context.md +0 -55
- package/docs/reference/live-video-minimal-skin.md +0 -51
- package/docs/reference/live-video-skin.md +0 -51
- package/docs/reference/media-attach-mixin.md +0 -101
- package/docs/reference/mux-audio.md +0 -951
- package/docs/reference/mux-data.md +0 -107
- package/docs/reference/mux-video.md +0 -1152
- package/docs/reference/native-hls-video.md +0 -375
- package/docs/reference/player-context.md +0 -60
- package/docs/reference/popover.md +0 -505
- package/docs/reference/shaka-video.md +0 -642
- package/docs/reference/slider.md +0 -859
- package/docs/reference/snapshot-controller.md +0 -244
- package/docs/reference/spotify-audio.md +0 -424
- package/docs/reference/store-controller.md +0 -208
- package/docs/reference/thumbnail.md +0 -386
- package/docs/reference/tiktok-video.md +0 -534
- package/docs/reference/tooltip.md +0 -631
- package/docs/reference/translation-phrases.md +0 -453
- package/docs/reference/twitch-video.md +0 -477
- package/docs/reference/video-minimal-skin.md +0 -49
- package/docs/reference/video-skin.md +0 -49
- package/docs/reference/vimeo-video.md +0 -1056
- package/docs/reference/volume-popover.md +0 -527
- package/docs/reference/volume-slider.md +0 -759
- package/docs/reference/youtube-video.md +0 -603
|
@@ -0,0 +1,167 @@
|
|
|
1
|
+
# Build with AI
|
|
2
|
+
|
|
3
|
+
Install the Video.js skill and give AI coding agents version-matched docs for building and migrating players
|
|
4
|
+
|
|
5
|
+
The [Video.js skill](https://github.com/videojs/skills) gives coding agents the context they need to build, customize, debug, and migrate Video.js players. It teaches the agent how Video.js 10 is composed, then points it to documentation that matches the version installed in your project.
|
|
6
|
+
|
|
7
|
+
## AI Quickstart
|
|
8
|
+
|
|
9
|
+
Paste this prompt into your coding agent:
|
|
10
|
+
|
|
11
|
+
```
|
|
12
|
+
Install the Video.js skill: run `npx @videojs/cli agents skills` and follow the steps for the agent you are running in. If you can't run commands, follow the install instructions at https://github.com/videojs/skills instead. Then use the Video.js skill when you work on video or audio in this project. When installation details are needed, run `npx @videojs/cli agents init --framework html` to print the version-matched choices and instructions without changing files.
|
|
13
|
+
```
|
|
14
|
+
|
|
15
|
+
## Video.js Skill
|
|
16
|
+
|
|
17
|
+
The skill contains guidance and Markdown references. It does not install Video.js, run background services, or connect to an account.
|
|
18
|
+
|
|
19
|
+
### Install the skill
|
|
20
|
+
|
|
21
|
+
Follow the steps for your coding agent. To print the same steps in a terminal, run:
|
|
22
|
+
|
|
23
|
+
**Terminal**
|
|
24
|
+
|
|
25
|
+
```sh
|
|
26
|
+
npx @videojs/cli agents skills
|
|
27
|
+
```
|
|
28
|
+
|
|
29
|
+
Add `--agent claude-code,cursor` to print only those agents. `--scope project` or `--scope local` changes the Claude Code installation scope from its `user` default, and `--global` adds `-g` to the `skills` installer command. Like `agents init`, the command only prints instructions.
|
|
30
|
+
|
|
31
|
+
#### Codex
|
|
32
|
+
|
|
33
|
+
Add the Video.js plugin marketplace, then install the plugin:
|
|
34
|
+
|
|
35
|
+
**Terminal**
|
|
36
|
+
|
|
37
|
+
```sh
|
|
38
|
+
codex plugin marketplace add videojs/skills
|
|
39
|
+
codex plugin add videojs@videojs
|
|
40
|
+
```
|
|
41
|
+
|
|
42
|
+
Start a new Codex session after installation.
|
|
43
|
+
|
|
44
|
+
#### Claude Code
|
|
45
|
+
|
|
46
|
+
Add the Video.js plugin marketplace, then install the plugin:
|
|
47
|
+
|
|
48
|
+
**Terminal**
|
|
49
|
+
|
|
50
|
+
```sh
|
|
51
|
+
claude plugin marketplace add videojs/skills
|
|
52
|
+
claude plugin install videojs@videojs
|
|
53
|
+
```
|
|
54
|
+
|
|
55
|
+
Start a new Claude Code session, or run `/reload-plugins` in the current session.
|
|
56
|
+
|
|
57
|
+
You can invoke the skill directly with `/videojs:videojs`.
|
|
58
|
+
|
|
59
|
+
#### VS Code
|
|
60
|
+
|
|
61
|
+
Enable `chat.plugins.enabled`, run **Chat: Install Plugin From Source** from the Command Palette, and enter:
|
|
62
|
+
|
|
63
|
+
```text
|
|
64
|
+
https://github.com/videojs/skills
|
|
65
|
+
```
|
|
66
|
+
|
|
67
|
+
Start a new VS Code session after installation, or reload the window.
|
|
68
|
+
|
|
69
|
+
#### Cursor
|
|
70
|
+
|
|
71
|
+
Open **Customize**, select **Plugins**, choose **From GitHub Repository**, and enter:
|
|
72
|
+
|
|
73
|
+
```text
|
|
74
|
+
https://github.com/videojs/skills
|
|
75
|
+
```
|
|
76
|
+
|
|
77
|
+
Start a new Cursor session after installation, or reload the window.
|
|
78
|
+
|
|
79
|
+
#### Other coding agents
|
|
80
|
+
|
|
81
|
+
Use the open `skills` installer and select your agent when prompted:
|
|
82
|
+
|
|
83
|
+
**Terminal**
|
|
84
|
+
|
|
85
|
+
```sh
|
|
86
|
+
npx skills add https://github.com/videojs/skills
|
|
87
|
+
```
|
|
88
|
+
|
|
89
|
+
Start a new session in your coding agent after installation.
|
|
90
|
+
|
|
91
|
+
Project-local installation is the default. Add `-g` if you want the skill available in every project.
|
|
92
|
+
|
|
93
|
+
To skip the prompts, name the agent and confirm up front, for example `npx skills add https://github.com/videojs/skills --agent <agent> --yes`.
|
|
94
|
+
|
|
95
|
+
### Use the skill
|
|
96
|
+
|
|
97
|
+
Ask for the player you want to build or the problem you want to solve. For example:
|
|
98
|
+
|
|
99
|
+
> Add an HLS player with captions and a quality menu to the product page using Video.js.
|
|
100
|
+
|
|
101
|
+
> Play this Mux playback ID in our Next.js app with Video.js, with Mux Data turned on.
|
|
102
|
+
|
|
103
|
+
> Migrate this Video.js 8 embed to Video.js 10 in React.
|
|
104
|
+
|
|
105
|
+
The skill checks your framework and installation method before choosing player, skin, and media code. It also checks imports and playback setup against current documentation before handing the work back.
|
|
106
|
+
|
|
107
|
+
### How skills find docs
|
|
108
|
+
|
|
109
|
+
The skill uses documentation in this order:
|
|
110
|
+
|
|
111
|
+
1. **Version-matched installation instructions.** `npx @videojs/cli agents init` lists valid choices for every framework. Adding flags prints one complete installation plan. When the project already has a different `@videojs/react` or `@videojs/html` version, the plan names the pinned command for that release. The command only returns instructions; it does not prompt, install packages, or write files.
|
|
112
|
+
2. **Installed package docs.** `node_modules/@videojs/react/docs/llms.txt` and `node_modules/@videojs/html/docs/llms.txt` index the docs shipped with each package version. These files work offline and match the code in your project.
|
|
113
|
+
3. **Live docs.** If commands cannot run, the skill reads the relevant [React](https://videojs.org/docs/framework/react/llms.txt) or [HTML](../llms.txt) documentation index, then follows it to the matching installation guide.
|
|
114
|
+
4. **Installed types.** If the docs are unavailable, the skill checks package exports and TypeScript declarations instead of guessing version-specific APIs.
|
|
115
|
+
|
|
116
|
+
This order matters because most model training data describes Video.js 8. Video.js 10 has a different component model, package structure, and installation flow.
|
|
117
|
+
|
|
118
|
+
The old `npx @videojs/cli docs` workflow was removed. `@videojs/cli` now contains only `agents init` and `agents skills`, in a single file with no dependencies, so running it does not download the player packages.
|
|
119
|
+
|
|
120
|
+
### Troubleshoot
|
|
121
|
+
|
|
122
|
+
If your agent does not use the skill, start a new session or reload plugins, then ask it to use the Video.js skill explicitly. If it writes `videojs()`, `data-setup`, `registerPlugin`, or other Video.js 8 APIs, ask it to read the installed `llms.txt` before changing code.
|
|
123
|
+
|
|
124
|
+
Report problems with the skill in the [videojs/skills repository](https://github.com/videojs/skills/issues). Report package and documentation problems in [videojs/v10](https://github.com/videojs/v10/issues).
|
|
125
|
+
|
|
126
|
+
## Use the docs
|
|
127
|
+
|
|
128
|
+
You can still provide documentation directly when a tool cannot install skills.
|
|
129
|
+
|
|
130
|
+
### Copy one page
|
|
131
|
+
|
|
132
|
+
Each docs page has a **Copy page** menu. Copy the Markdown, open the `.md` version, or send the page to ChatGPT or Claude.
|
|
133
|
+
|
|
134
|
+
### Open a Markdown URL
|
|
135
|
+
|
|
136
|
+
Add `.md` to any docs URL. For this page, use:
|
|
137
|
+
|
|
138
|
+
```text
|
|
139
|
+
https://videojs.org/docs/framework/html/guides/build-with-ai.md
|
|
140
|
+
```
|
|
141
|
+
|
|
142
|
+
Each docs page also advertises its Markdown URL as an alternate format so compatible tools can discover it.
|
|
143
|
+
|
|
144
|
+
### Request Markdown
|
|
145
|
+
|
|
146
|
+
Request the normal docs URL with an `Accept: text/markdown` header:
|
|
147
|
+
|
|
148
|
+
**Terminal**
|
|
149
|
+
|
|
150
|
+
```sh
|
|
151
|
+
curl -H "Accept: text/markdown" \
|
|
152
|
+
https://videojs.org/docs/framework/html/guides/build-with-ai
|
|
153
|
+
```
|
|
154
|
+
|
|
155
|
+
### Start from llms.txt
|
|
156
|
+
|
|
157
|
+
[`videojs.org/docs/framework/html/llms.txt`](../llms.txt) lists every HTML guide and reference page with a short description. Give the index to your tool, then load only the pages the task needs.
|
|
158
|
+
|
|
159
|
+
The `llms-full.txt` files contain the complete documentation corpus. Use them only when your tool requires one file because they are larger than most useful task contexts.
|
|
160
|
+
|
|
161
|
+
## Related pages
|
|
162
|
+
|
|
163
|
+
### Guides
|
|
164
|
+
|
|
165
|
+
- [Installation](./installation.md): Install Video.js packages and build an accessible, customizable video player with composable controls
|
|
166
|
+
- [Architecture](./architecture.md): How Video.js players are structured — state, UI, media, and extensions
|
|
167
|
+
- [Build your own UI component](./build-your-own-component.md): Create custom player controls that read state, dispatch actions, and stay accessible.
|
|
@@ -0,0 +1,245 @@
|
|
|
1
|
+
# Build your own UI component
|
|
2
|
+
|
|
3
|
+
Create custom player controls that read state, dispatch actions, and stay accessible.
|
|
4
|
+
|
|
5
|
+
Custom components subscribe to player state and dispatch actions, like built-in controls.
|
|
6
|
+
|
|
7
|
+
## You might not need a custom component
|
|
8
|
+
|
|
9
|
+
Before building from scratch, check if an existing approach covers your use case:
|
|
10
|
+
|
|
11
|
+
- **Restyle a control**: use CSS custom properties and data attributes. See [UI components](./ui-components.md).
|
|
12
|
+
- **Rearrange or remove controls**: add the skin source to your project, then modify it. See [Customize skins](./customize-skins.md#style-skin-source).
|
|
13
|
+
|
|
14
|
+
Build a custom component when you need new behavior, a new state display, or integration with an external system.
|
|
15
|
+
|
|
16
|
+
## Place your component in the player
|
|
17
|
+
|
|
18
|
+
Your element needs to be inside [`<video-player>`](../reference/components/player.md) to access state. Place it inside [`<media-container>`](../reference/components/player-container.md) if it should also participate in fullscreen and respond to user activity. `<video-skin>` slots its children into `<media-container>`, so a child of the skin works:
|
|
19
|
+
|
|
20
|
+
```html
|
|
21
|
+
<video-player>
|
|
22
|
+
<video-skin>
|
|
23
|
+
<video slot="media" src="video.mp4"></video>
|
|
24
|
+
<skip-intro-button>Skip intro</skip-intro-button>
|
|
25
|
+
</video-skin>
|
|
26
|
+
</video-player>
|
|
27
|
+
```
|
|
28
|
+
|
|
29
|
+
Extend `UIElement` from `@videojs/html` so `PlayerController` can schedule DOM updates when state changes:
|
|
30
|
+
|
|
31
|
+
```ts
|
|
32
|
+
import { UIElement, PlayerController, playerContext, selectTime, type PropertyValues } from '@videojs/html';
|
|
33
|
+
|
|
34
|
+
class SkipIntroButtonElement extends UIElement {
|
|
35
|
+
#player = new PlayerController(this, playerContext, selectTime);
|
|
36
|
+
|
|
37
|
+
update(changed: PropertyValues) {
|
|
38
|
+
super.update(changed);
|
|
39
|
+
const time = this.#player.value;
|
|
40
|
+
}
|
|
41
|
+
}
|
|
42
|
+
```
|
|
43
|
+
|
|
44
|
+
If your element starts listeners, observers, or other work, stop it in `disconnectedCallback()` and call the superclass lifecycle methods so inherited cleanup runs too. The browser can connect and disconnect the same element many times.
|
|
45
|
+
|
|
46
|
+
## Full example
|
|
47
|
+
|
|
48
|
+
A “skip intro” button that appears during the first 30 seconds of playback and seeks past the intro when clicked.
|
|
49
|
+
|
|
50
|
+
**skip-intro-button.ts**
|
|
51
|
+
|
|
52
|
+
```ts
|
|
53
|
+
import {
|
|
54
|
+
UIElement,
|
|
55
|
+
PlayerController,
|
|
56
|
+
playerContext,
|
|
57
|
+
selectTime,
|
|
58
|
+
selectPlayback,
|
|
59
|
+
type PropertyValues,
|
|
60
|
+
} from '@videojs/html';
|
|
61
|
+
|
|
62
|
+
class SkipIntroButtonElement extends UIElement {
|
|
63
|
+
#time = new PlayerController(this, playerContext, selectTime);
|
|
64
|
+
#playback = new PlayerController(this, playerContext, selectPlayback);
|
|
65
|
+
#disconnect: AbortController | null = null;
|
|
66
|
+
|
|
67
|
+
connectedCallback() {
|
|
68
|
+
super.connectedCallback();
|
|
69
|
+
this.#disconnect?.abort();
|
|
70
|
+
this.#disconnect = new AbortController();
|
|
71
|
+
const { signal } = this.#disconnect;
|
|
72
|
+
|
|
73
|
+
this.setAttribute('role', 'button');
|
|
74
|
+
this.setAttribute('aria-label', 'Skip intro');
|
|
75
|
+
this.setAttribute('tabindex', '0');
|
|
76
|
+
this.addEventListener('click', this.#handleActivate, { signal });
|
|
77
|
+
this.addEventListener('keydown', this.#handleKeydown, { signal });
|
|
78
|
+
this.addEventListener('keyup', this.#handleKeyup, { signal });
|
|
79
|
+
}
|
|
80
|
+
|
|
81
|
+
disconnectedCallback() {
|
|
82
|
+
super.disconnectedCallback();
|
|
83
|
+
// Removes all listeners registered with this signal
|
|
84
|
+
this.#disconnect?.abort();
|
|
85
|
+
this.#disconnect = null;
|
|
86
|
+
}
|
|
87
|
+
|
|
88
|
+
update(changed: PropertyValues) {
|
|
89
|
+
super.update(changed);
|
|
90
|
+
const time = this.#time.value;
|
|
91
|
+
const playback = this.#playback.value;
|
|
92
|
+
|
|
93
|
+
// Features are configured per-player, so a feature may not be available
|
|
94
|
+
if (!time || !playback) return;
|
|
95
|
+
|
|
96
|
+
const visible = time.currentTime < 30 && !playback.paused;
|
|
97
|
+
this.toggleAttribute('data-visible', visible);
|
|
98
|
+
this.setAttribute('tabindex', visible ? '0' : '-1');
|
|
99
|
+
}
|
|
100
|
+
|
|
101
|
+
#handleActivate = () => {
|
|
102
|
+
this.#time.value?.seek(30);
|
|
103
|
+
};
|
|
104
|
+
|
|
105
|
+
#handleKeydown = (event: KeyboardEvent) => {
|
|
106
|
+
if (event.key === 'Enter') {
|
|
107
|
+
event.preventDefault();
|
|
108
|
+
this.#handleActivate();
|
|
109
|
+
} else if (event.key === ' ') {
|
|
110
|
+
// Prevent Space from scrolling the page
|
|
111
|
+
event.preventDefault();
|
|
112
|
+
}
|
|
113
|
+
};
|
|
114
|
+
|
|
115
|
+
// ARIA button pattern: Space activates on keyup, not keydown
|
|
116
|
+
#handleKeyup = (event: KeyboardEvent) => {
|
|
117
|
+
if (event.key === ' ') {
|
|
118
|
+
this.#handleActivate();
|
|
119
|
+
}
|
|
120
|
+
};
|
|
121
|
+
}
|
|
122
|
+
|
|
123
|
+
customElements.define('skip-intro-button', SkipIntroButtonElement);
|
|
124
|
+
```
|
|
125
|
+
|
|
126
|
+
**skip-intro-button.css**
|
|
127
|
+
|
|
128
|
+
```css
|
|
129
|
+
skip-intro-button {
|
|
130
|
+
position: absolute;
|
|
131
|
+
bottom: 5rem;
|
|
132
|
+
right: 1rem;
|
|
133
|
+
opacity: 0;
|
|
134
|
+
pointer-events: none;
|
|
135
|
+
transition: opacity 200ms;
|
|
136
|
+
}
|
|
137
|
+
|
|
138
|
+
skip-intro-button[data-visible] {
|
|
139
|
+
opacity: 1;
|
|
140
|
+
pointer-events: auto;
|
|
141
|
+
}
|
|
142
|
+
```
|
|
143
|
+
|
|
144
|
+
Your element needs to be inside [`<video-player>`](../reference/components/player.md) to access state. Place it inside [`<media-container>`](../reference/components/player-container.md) if it should also participate in fullscreen and respond to user activity. `<video-skin>` slots its children into `<media-container>`, so a child of the skin works:
|
|
145
|
+
|
|
146
|
+
```html
|
|
147
|
+
<video-player>
|
|
148
|
+
<video-skin>
|
|
149
|
+
<video src="video.mp4"></video>
|
|
150
|
+
<skip-intro-button>Skip intro</skip-intro-button>
|
|
151
|
+
</video-skin>
|
|
152
|
+
</video-player>
|
|
153
|
+
<script type="module">
|
|
154
|
+
import '@videojs/html/video/skin';
|
|
155
|
+
import './skip-intro-button.js';
|
|
156
|
+
</script>
|
|
157
|
+
```
|
|
158
|
+
|
|
159
|
+
## How it works
|
|
160
|
+
|
|
161
|
+
Custom components read player state and dispatch actions through [features](./features.md). Each feature exposes a set. Here are some features you might reach for first:
|
|
162
|
+
|
|
163
|
+
| State | Actions | Feature |
|
|
164
|
+
| --- | --- | --- |
|
|
165
|
+
| `paused`, `ended` | `play()`, `pause()` | [Playback](../reference/api/feature-playback.md) |
|
|
166
|
+
| `currentTime`, `duration` | `seek()` | [Time](../reference/api/feature-time.md) |
|
|
167
|
+
| `volume`, `muted` | `setVolume()`, `toggleMuted()` | [Volume](../reference/api/feature-volume.md) |
|
|
168
|
+
| `fullscreen` | `requestFullscreen()`, `exitFullscreen()` | [Fullscreen](../reference/api/feature-fullscreen.md) |
|
|
169
|
+
|
|
170
|
+
The API reference lists every feature with the state and actions it adds.
|
|
171
|
+
|
|
172
|
+
Extend `UIElement` from `@videojs/html` so [`PlayerController`](../reference/api/player-controller.md) can schedule DOM updates when state changes, and access state and actions with a feature selector:
|
|
173
|
+
|
|
174
|
+
```ts
|
|
175
|
+
import { PlayerController, playerContext, selectPlayback } from '@videojs/html';
|
|
176
|
+
|
|
177
|
+
// Subscribe to a feature — triggers update() when its state changes
|
|
178
|
+
#playback = new PlayerController(this, playerContext, selectPlayback);
|
|
179
|
+
|
|
180
|
+
// In update():
|
|
181
|
+
const playback = this.#playback.value;
|
|
182
|
+
if (playback?.paused) {
|
|
183
|
+
playback.play();
|
|
184
|
+
}
|
|
185
|
+
```
|
|
186
|
+
|
|
187
|
+
Each selector returns both state and actions for that feature. Use separate controllers when you need multiple features (the [full example](#full-example) demonstrates this).
|
|
188
|
+
|
|
189
|
+
Without a selector, `PlayerController` returns the full store without subscribing to changes. Create the controller with the typed context that [`createPlayer`](../reference/api/html-create-player.md) returns — the shared `playerContext` types the store’s members as `unknown` — and guard the value, which stays `undefined` until a player provides the store:
|
|
190
|
+
|
|
191
|
+
```ts
|
|
192
|
+
import { createPlayer, PlayerController } from '@videojs/html';
|
|
193
|
+
import { videoFeatures } from '@videojs/html/video';
|
|
194
|
+
|
|
195
|
+
const { context } = createPlayer({ features: videoFeatures });
|
|
196
|
+
|
|
197
|
+
#store = new PlayerController(this, context);
|
|
198
|
+
|
|
199
|
+
// Call any action
|
|
200
|
+
this.#store.value?.play();
|
|
201
|
+
this.#store.value?.setVolume(0.5);
|
|
202
|
+
```
|
|
203
|
+
|
|
204
|
+
Custom controls also need real button semantics — the examples above set the accessible name, keyboard focus, and (because a custom element is not a native `<button>`) the ARIA button pattern by hand.
|
|
205
|
+
|
|
206
|
+
- [Learn more about accessibility in video players](./accessibility.md)
|
|
207
|
+
|
|
208
|
+
## Availability and constraints
|
|
209
|
+
|
|
210
|
+
- Features are configured per player, so a feature your component asks for may not be present. Selectors return `undefined` for a missing feature; guard the value before using it, as the example does.
|
|
211
|
+
- Volume, fullscreen, picture-in-picture, and remote playback also expose an `*Availability` property (`'available'`, `'unavailable'`, or `'unsupported'`) for hiding controls the platform does not support. See [Features](./features.md) for details.
|
|
212
|
+
|
|
213
|
+
## Common variations
|
|
214
|
+
|
|
215
|
+
Before building from scratch, check if an existing approach covers your use case. Build a custom component when you need new behavior, a new state display, or integration with an external system.
|
|
216
|
+
|
|
217
|
+
### Restyle a control
|
|
218
|
+
|
|
219
|
+
Use CSS custom properties and data attributes. See [UI components](./ui-components.md).
|
|
220
|
+
|
|
221
|
+
### Rearrange or remove controls
|
|
222
|
+
|
|
223
|
+
Add the skin source to your project and modify it. See [Customize skins](./customize-skins.md#style-skin-source).
|
|
224
|
+
|
|
225
|
+
## Troubleshooting
|
|
226
|
+
|
|
227
|
+
### State and actions are typed as `unknown`
|
|
228
|
+
|
|
229
|
+
You’re using the shared `playerContext`, which doesn’t know which features your player has. Use the typed `context` returned by `createPlayer`.
|
|
230
|
+
|
|
231
|
+
### The component renders but never updates
|
|
232
|
+
|
|
233
|
+
The element sits outside `<video-player>`, or the class doesn’t extend `UIElement`, so `PlayerController` has nothing to schedule updates on.
|
|
234
|
+
|
|
235
|
+
## Related pages
|
|
236
|
+
|
|
237
|
+
### API
|
|
238
|
+
|
|
239
|
+
- [PlayerController](../reference/api/player-controller.md): Reactive controller for accessing player store state in HTML custom elements
|
|
240
|
+
- [createPlayer](../reference/api/html-create-player.md): Factory function that creates a typed player element and controller for HTML custom elements
|
|
241
|
+
- [media-container](../reference/components/player-container.md): The player's visual and interaction surface for layout, fullscreen, focus, and user activity.
|
|
242
|
+
|
|
243
|
+
### Guides
|
|
244
|
+
|
|
245
|
+
- [Customize skins](./customize-skins.md): Style a packaged Video.js skin or add its source to change controls, layout, styles, and interactions
|
|
@@ -6,13 +6,13 @@ Before the browser runs your application, a bundler such as Vite combines its im
|
|
|
6
6
|
|
|
7
7
|
## Package exports
|
|
8
8
|
|
|
9
|
-
Each Video.js package has an `exports` field in its `package.json`. This field lists the import paths that applications and libraries can use, such as `@videojs/html/video/player` and `@videojs/
|
|
9
|
+
Each Video.js package has an `exports` field in its `package.json`. This field lists the import paths that applications and libraries can use, such as `@videojs/html/video/player` and `@videojs/html/video/skin`.
|
|
10
10
|
|
|
11
11
|
If an older bundler reports that one of these paths is missing or not exported, upgrade the bundler before adding an alias that bypasses the package’s public API.
|
|
12
12
|
|
|
13
13
|
## Vite compatibility
|
|
14
14
|
|
|
15
|
-
Use
|
|
15
|
+
Use Vite 4.1 or later; Video.js has been tested through Vite 8. Earlier versions can’t resolve exported stylesheets such as `@videojs/html/video/skin.css`.
|
|
16
16
|
|
|
17
17
|
Packaged HTML skins import their own styles, so an HTML application using `@videojs/html/video/skin` doesn’t need to import `skin.css` separately. The CSS limitation matters only when your application imports that stylesheet directly.
|
|
18
18
|
|
|
@@ -26,9 +26,9 @@ Rollup’s array form matches only the exact package name, so `external: ['@vide
|
|
|
26
26
|
|
|
27
27
|
Match the package name and everything below it instead:
|
|
28
28
|
|
|
29
|
-
rollup.config.js
|
|
29
|
+
**rollup.config.js**
|
|
30
30
|
|
|
31
|
-
```
|
|
31
|
+
```js
|
|
32
32
|
const videojsPeers = ['@videojs/html'];
|
|
33
33
|
|
|
34
34
|
export default {
|
|
@@ -40,4 +40,12 @@ export default {
|
|
|
40
40
|
};
|
|
41
41
|
```
|
|
42
42
|
|
|
43
|
-
Add every `@videojs/*` package your library imports directly to `videojsPeers` and list it in `peerDependencies`.
|
|
43
|
+
Add every `@videojs/*` package your library imports directly to `videojsPeers` and list it in `peerDependencies`.
|
|
44
|
+
|
|
45
|
+
## Related pages
|
|
46
|
+
|
|
47
|
+
### Guides
|
|
48
|
+
|
|
49
|
+
- [Installation](./installation.md): Install Video.js packages and build an accessible, customizable video player with composable controls
|
|
50
|
+
- [TypeScript](./typescript.md): TypeScript version and module resolution requirements for Video.js packages
|
|
51
|
+
- [Self-host the player](./self-hosting.md): Serve the Video.js HTML player from your own origin for offline, air-gapped, or restricted-network deployments
|
|
@@ -0,0 +1,140 @@
|
|
|
1
|
+
# Show captions and subtitles
|
|
2
|
+
|
|
3
|
+
Show captions and subtitles, and let users turn them on and pick a language.
|
|
4
|
+
|
|
5
|
+
> **Note**
|
|
6
|
+
>
|
|
7
|
+
> Using a pre-built [skin](./skins.md)? It already includes the controls shown here. You may still need the media or player setup in this guide. The component examples are for building your own player UI from individual [components](./ui-components.md).
|
|
8
|
+
|
|
9
|
+
## Recommended approach
|
|
10
|
+
|
|
11
|
+
Add WebVTT tracks as `<track>` children of the media element, and give users a [`<media-captions-button>`](../reference/components/captions-button.md) to toggle them.
|
|
12
|
+
|
|
13
|
+
**index.html**
|
|
14
|
+
|
|
15
|
+
```html
|
|
16
|
+
<video-player class="video-player">
|
|
17
|
+
<media-container>
|
|
18
|
+
<video src="https://stream.mux.com/BV3YZtogl89mg9VcNBhhnHm02Y34zI1nlMuMQfAbl3dM/highest.mp4" autoplay muted playsinline loop>
|
|
19
|
+
<track kind="captions" src="/docs/demos/text-tracks/captions.vtt" srclang="en" label="English" default />
|
|
20
|
+
</video>
|
|
21
|
+
<media-captions-button class="media-captions-button">
|
|
22
|
+
<span class="active">Captions Off</span>
|
|
23
|
+
<span class="inactive">Captions On</span>
|
|
24
|
+
</media-captions-button>
|
|
25
|
+
</media-container>
|
|
26
|
+
</video-player>
|
|
27
|
+
```
|
|
28
|
+
|
|
29
|
+
**index.css**
|
|
30
|
+
|
|
31
|
+
```css
|
|
32
|
+
.video-player {
|
|
33
|
+
position: relative;
|
|
34
|
+
}
|
|
35
|
+
|
|
36
|
+
.video-player video {
|
|
37
|
+
width: 100%;
|
|
38
|
+
aspect-ratio: 16 / 9;
|
|
39
|
+
}
|
|
40
|
+
|
|
41
|
+
.media-captions-button {
|
|
42
|
+
position: absolute;
|
|
43
|
+
bottom: 10px;
|
|
44
|
+
left: 10px;
|
|
45
|
+
padding-block: 8px;
|
|
46
|
+
padding-inline: 20px;
|
|
47
|
+
color: black;
|
|
48
|
+
cursor: pointer;
|
|
49
|
+
background: rgba(255, 255, 255, 0.7);
|
|
50
|
+
border: 1px solid rgba(255, 255, 255, 0.3);
|
|
51
|
+
border-radius: 9999px;
|
|
52
|
+
backdrop-filter: blur(10px);
|
|
53
|
+
}
|
|
54
|
+
|
|
55
|
+
.media-captions-button .active {
|
|
56
|
+
display: none;
|
|
57
|
+
}
|
|
58
|
+
.media-captions-button .inactive {
|
|
59
|
+
display: none;
|
|
60
|
+
}
|
|
61
|
+
.media-captions-button[data-active] .active {
|
|
62
|
+
display: inline;
|
|
63
|
+
}
|
|
64
|
+
.media-captions-button:not([data-active]) .inactive {
|
|
65
|
+
display: inline;
|
|
66
|
+
}
|
|
67
|
+
```
|
|
68
|
+
|
|
69
|
+
**index.ts**
|
|
70
|
+
|
|
71
|
+
```ts
|
|
72
|
+
import '@videojs/html/video/player';
|
|
73
|
+
import '@videojs/html/ui/container';
|
|
74
|
+
import '@videojs/html/ui/captions-button';
|
|
75
|
+
```
|
|
76
|
+
|
|
77
|
+
## How it works
|
|
78
|
+
|
|
79
|
+
The [text track feature](../reference/api/feature-text-tracks.md) mirrors the media element’s `textTracks` into player state:
|
|
80
|
+
|
|
81
|
+
- `textTrackList` holds every track with its `id`, `kind`, `label`, `language`, and `mode`.
|
|
82
|
+
- `subtitlesShowing` is `true` when any caption or subtitle track is showing.
|
|
83
|
+
- `toggleSubtitles(forceShow?)` shows or hides all caption and subtitle tracks.
|
|
84
|
+
- `selectSubtitlesTrack(id)` shows one track and disables the rest; pass `'off'` to disable all.
|
|
85
|
+
|
|
86
|
+
Tracks don’t have to come from `<track>` elements: tracks that streaming media exposes (for example in-manifest HLS captions) appear in `textTrackList` the same way.
|
|
87
|
+
|
|
88
|
+
The browser renders the cues. Style them with the `::cue` pseudo-element.
|
|
89
|
+
|
|
90
|
+
## Availability and constraints
|
|
91
|
+
|
|
92
|
+
- Captions availability is `'unavailable'` until the media has at least one caption or subtitle track; caption controls render nothing in that case.
|
|
93
|
+
- Cues load asynchronously. A track appears in `textTrackList` before its cues are parsed, so cue-driven UI fills in when the track finishes loading.
|
|
94
|
+
- Cross-origin track files require CORS: serve the VTT with CORS headers and set `crossorigin` on the media element.
|
|
95
|
+
- Track selection UIs identify tracks by `label` and `language`; give every track both.
|
|
96
|
+
- `default` on a `<track>` makes the browser show it initially.
|
|
97
|
+
|
|
98
|
+
## Common variations
|
|
99
|
+
|
|
100
|
+
### Language selection menu
|
|
101
|
+
|
|
102
|
+
For multiple languages, render a menu instead of a toggle.
|
|
103
|
+
|
|
104
|
+
Use [`<media-captions-radio-group>`](../reference/components/captions-radio-group.md) inside a menu or popover for explicit track selection.
|
|
105
|
+
|
|
106
|
+
## Troubleshooting
|
|
107
|
+
|
|
108
|
+
### Captions don’t appear
|
|
109
|
+
|
|
110
|
+
Confirm that:
|
|
111
|
+
|
|
112
|
+
- The track `kind` is `captions` or `subtitles`.
|
|
113
|
+
- The VTT file loads (check the network panel for the track request).
|
|
114
|
+
- The track is enabled: `default` on the track element, a `<media-captions-button>` toggle, or `toggleSubtitles(true)`.
|
|
115
|
+
|
|
116
|
+
### Captions work locally but not in production
|
|
117
|
+
|
|
118
|
+
The track file is served from another origin without CORS headers. Serve it with `Access-Control-Allow-Origin` and set `crossorigin` on the media element.
|
|
119
|
+
|
|
120
|
+
### The selection menu is empty
|
|
121
|
+
|
|
122
|
+
The media has no caption or subtitle tracks, so captions availability is `'unavailable'`. For streaming sources, confirm the manifest actually declares text tracks.
|
|
123
|
+
|
|
124
|
+
## Related pages
|
|
125
|
+
|
|
126
|
+
### Components
|
|
127
|
+
|
|
128
|
+
- [media-captions-button](../reference/components/captions-button.md): Accessible captions toggle button with availability detection and state reflection
|
|
129
|
+
- [media-captions-radio-group](../reference/components/captions-radio-group.md): A menu radio group for selecting caption and subtitle tracks
|
|
130
|
+
- [media-menu](../reference/components/menu.md): A composable menu component for settings, option selection, and actions
|
|
131
|
+
|
|
132
|
+
### API
|
|
133
|
+
|
|
134
|
+
- [Text tracks](../reference/api/feature-text-tracks.md): Subtitles, captions, and chapter track state for the player store
|
|
135
|
+
|
|
136
|
+
### Guides
|
|
137
|
+
|
|
138
|
+
- [Show timeline thumbnail previews](./thumbnails.md): Preview frames along the timeline while the user scrubs, powered by a storyboard track.
|
|
139
|
+
- [Media sources](./media-sources.md): Set what a media element plays and how its engine plays it with the structured source property
|
|
140
|
+
- [Accessibility](./accessibility.md): How Video.js approaches accessibility, and what you should consider if you're deeply customizing your player
|