@videojs/react 10.0.0-beta.26 → 10.0.0-beta.28
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/default/__generated__/skins/default-video/styles/base.css +25 -0
- package/dist/default/__generated__/skins/default-video/styles/buttons.css +152 -0
- package/dist/default/__generated__/skins/default-video/styles/container.css +45 -0
- package/dist/default/__generated__/skins/default-video/styles/controls.css +45 -0
- package/dist/default/__generated__/skins/default-video/styles/overlays.css +11 -0
- package/dist/default/__generated__/skins/default-video/styles/popups.css +45 -0
- package/dist/default/__generated__/skins/default-video/styles/poster.css +47 -0
- package/dist/default/__generated__/skins/default-video/styles/sliders.css +112 -0
- package/dist/default/__generated__/skins/default-video/styles/styles.css +514 -0
- package/dist/default/__generated__/skins/default-video/styles/theme.css +22 -0
- package/dist/default/i18n/context.js +3 -4
- package/dist/default/i18n/context.js.map +1 -1
- package/dist/default/i18n/create-i18n.js +0 -1
- package/dist/default/i18n/create-i18n.js.map +1 -1
- package/dist/default/i18n/locales/id/register.js +8 -0
- package/dist/default/i18n/locales/id/register.js.map +1 -0
- package/dist/default/i18n/locales/id.js +2 -0
- package/dist/default/i18n/locales/lt/register.js +8 -0
- package/dist/default/i18n/locales/lt/register.js.map +1 -0
- package/dist/default/i18n/locales/lt.js +2 -0
- package/dist/default/icons/dist/react/default/airplay-enter.js.map +1 -1
- package/dist/default/icons/dist/react/default/airplay-exit.js +1 -2
- package/dist/default/icons/dist/react/default/airplay-exit.js.map +1 -1
- package/dist/default/icons/dist/react/default/captions-off.js.map +1 -1
- package/dist/default/icons/dist/react/default/captions-on.js.map +1 -1
- package/dist/default/icons/dist/react/default/cast-enter.js +2 -45
- package/dist/default/icons/dist/react/default/cast-enter.js.map +1 -1
- package/dist/default/icons/dist/react/default/cast-exit.js +4 -61
- package/dist/default/icons/dist/react/default/cast-exit.js.map +1 -1
- package/dist/default/icons/dist/react/default/check.js.map +1 -1
- package/dist/default/icons/dist/react/default/chevron.js.map +1 -1
- package/dist/default/icons/dist/react/default/fullscreen-enter.js.map +1 -1
- package/dist/default/icons/dist/react/default/fullscreen-exit.js.map +1 -1
- package/dist/default/icons/dist/react/default/gear.js.map +1 -1
- package/dist/default/icons/dist/react/default/pause.js.map +1 -1
- package/dist/default/icons/dist/react/default/pip-enter.js.map +1 -1
- package/dist/default/icons/dist/react/default/pip-exit.js.map +1 -1
- package/dist/default/icons/dist/react/default/play.js.map +1 -1
- package/dist/default/icons/dist/react/default/quality.js +1 -1
- package/dist/default/icons/dist/react/default/quality.js.map +1 -1
- package/dist/default/icons/dist/react/default/restart.js.map +1 -1
- package/dist/default/icons/dist/react/default/seek.js.map +1 -1
- package/dist/default/icons/dist/react/default/speech.js.map +1 -1
- package/dist/default/icons/dist/react/default/speed.js.map +1 -1
- package/dist/default/icons/dist/react/default/spinner.js +1 -1
- package/dist/default/icons/dist/react/default/spinner.js.map +1 -1
- package/dist/default/icons/dist/react/default/switches.js.map +1 -1
- package/dist/default/icons/dist/react/default/volume-high.js.map +1 -1
- package/dist/default/icons/dist/react/default/volume-low.js.map +1 -1
- package/dist/default/icons/dist/react/default/volume-off.js.map +1 -1
- package/dist/default/icons/dist/react/minimal/airplay-enter.js.map +1 -1
- package/dist/default/icons/dist/react/minimal/airplay-exit.js +1 -2
- package/dist/default/icons/dist/react/minimal/airplay-exit.js.map +1 -1
- package/dist/default/icons/dist/react/minimal/captions-off.js.map +1 -1
- package/dist/default/icons/dist/react/minimal/captions-on.js.map +1 -1
- package/dist/default/icons/dist/react/minimal/cast-enter.js +2 -45
- package/dist/default/icons/dist/react/minimal/cast-enter.js.map +1 -1
- package/dist/default/icons/dist/react/minimal/cast-exit.js +4 -61
- package/dist/default/icons/dist/react/minimal/cast-exit.js.map +1 -1
- package/dist/default/icons/dist/react/minimal/check.js.map +1 -1
- package/dist/default/icons/dist/react/minimal/chevron.js.map +1 -1
- package/dist/default/icons/dist/react/minimal/fullscreen-enter.js.map +1 -1
- package/dist/default/icons/dist/react/minimal/fullscreen-exit.js.map +1 -1
- package/dist/default/icons/dist/react/minimal/gear.js.map +1 -1
- package/dist/default/icons/dist/react/minimal/pause.js.map +1 -1
- package/dist/default/icons/dist/react/minimal/pip-enter.js.map +1 -1
- package/dist/default/icons/dist/react/minimal/pip-exit.js.map +1 -1
- package/dist/default/icons/dist/react/minimal/play.js.map +1 -1
- package/dist/default/icons/dist/react/minimal/quality.js +1 -1
- package/dist/default/icons/dist/react/minimal/quality.js.map +1 -1
- package/dist/default/icons/dist/react/minimal/restart.js.map +1 -1
- package/dist/default/icons/dist/react/minimal/seek.js.map +1 -1
- package/dist/default/icons/dist/react/minimal/speech.js +7 -40
- package/dist/default/icons/dist/react/minimal/speech.js.map +1 -1
- package/dist/default/icons/dist/react/minimal/speed.js.map +1 -1
- package/dist/default/icons/dist/react/minimal/spinner.js +1 -1
- package/dist/default/icons/dist/react/minimal/spinner.js.map +1 -1
- package/dist/default/icons/dist/react/minimal/switches.js.map +1 -1
- package/dist/default/icons/dist/react/minimal/volume-high.js.map +1 -1
- package/dist/default/icons/dist/react/minimal/volume-low.js.map +1 -1
- package/dist/default/icons/dist/react/minimal/volume-off.js.map +1 -1
- package/dist/default/index.js +7 -3
- package/dist/default/media/audio.js +0 -1
- package/dist/default/media/audio.js.map +1 -1
- package/dist/default/media/cloudflare-video/index.js +2 -0
- package/dist/default/media/cloudflare-video/media.js +38 -0
- package/dist/default/media/cloudflare-video/media.js.map +1 -0
- package/dist/default/media/google-cast/google-cast.js +3 -3
- package/dist/default/media/google-cast/google-cast.js.map +1 -1
- package/dist/default/media/hls-audio/index.js +2 -0
- package/dist/default/media/hls-audio/media.js +21 -0
- package/dist/default/media/hls-audio/media.js.map +1 -0
- package/dist/default/media/hls-background-video/index.js +2 -0
- package/dist/default/media/hls-background-video/media.js +45 -0
- package/dist/default/media/hls-background-video/media.js.map +1 -0
- package/dist/default/media/hls-video/index.js +2 -0
- package/dist/{dev/media/simple-hls-video → default/media/hls-video}/media.js +6 -7
- package/dist/default/media/hls-video/media.js.map +1 -0
- package/dist/default/media/mux-audio/{media.js → hls-js.js} +2 -2
- package/dist/default/media/mux-audio/hls-js.js.map +1 -0
- package/dist/default/media/mux-audio/index.js +1 -1
- package/dist/default/media/mux-audio/spf.js +26 -0
- package/dist/default/media/mux-audio/spf.js.map +1 -0
- package/dist/default/media/mux-background-video/index.js +2 -0
- package/dist/default/media/mux-data/mux-data.js +7 -3
- package/dist/default/media/mux-data/mux-data.js.map +1 -1
- package/dist/default/media/mux-video/hls-js.js +27 -0
- package/dist/default/media/mux-video/hls-js.js.map +1 -0
- package/dist/default/media/mux-video/index.js +1 -1
- package/dist/default/media/mux-video/spf.js +27 -0
- package/dist/default/media/mux-video/spf.js.map +1 -0
- package/dist/default/media/mux-video/storyboard.js +43 -0
- package/dist/default/media/mux-video/storyboard.js.map +1 -0
- package/dist/default/media/spotify-audio/index.js +2 -0
- package/dist/default/media/spotify-audio/media.js +40 -0
- package/dist/default/media/spotify-audio/media.js.map +1 -0
- package/dist/default/media/tiktok-video/index.js +2 -0
- package/dist/default/media/tiktok-video/media.js +38 -0
- package/dist/default/media/tiktok-video/media.js.map +1 -0
- package/dist/default/media/twitch-video/index.js +2 -0
- package/dist/default/media/twitch-video/media.js +38 -0
- package/dist/default/media/twitch-video/media.js.map +1 -0
- package/dist/default/media/video.js +0 -1
- package/dist/default/media/video.js.map +1 -1
- package/dist/default/media/vimeo-video/media.js +4 -4
- package/dist/default/media/vimeo-video/media.js.map +1 -1
- package/dist/default/media/youtube-video/index.js +2 -0
- package/dist/default/media/youtube-video/media.js +37 -0
- package/dist/default/media/youtube-video/media.js.map +1 -0
- package/dist/default/player/container.js +8 -4
- package/dist/default/player/container.js.map +1 -1
- package/dist/default/player/context.js +6 -11
- package/dist/default/player/context.js.map +1 -1
- package/dist/default/player/create-player.js +44 -14
- package/dist/default/player/create-player.js.map +1 -1
- package/dist/default/player/popup-group-context.js +17 -0
- package/dist/default/player/popup-group-context.js.map +1 -0
- package/dist/default/presets/audio/index.js +8 -1
- package/dist/default/presets/audio/index.js.map +1 -0
- package/dist/default/presets/audio/minimal-skin.css +423 -295
- package/dist/default/presets/audio/minimal-skin.js +13 -19
- package/dist/default/presets/audio/minimal-skin.js.map +1 -1
- package/dist/default/presets/audio/minimal-skin.tailwind.js +82 -20
- package/dist/default/presets/audio/minimal-skin.tailwind.js.map +1 -1
- package/dist/default/presets/audio/player.js +13 -0
- package/dist/default/presets/audio/player.js.map +1 -0
- package/dist/default/presets/audio/skin.css +459 -345
- package/dist/default/presets/audio/skin.js +14 -19
- package/dist/default/presets/audio/skin.js.map +1 -1
- package/dist/default/presets/audio/skin.tailwind.js +15 -19
- package/dist/default/presets/audio/skin.tailwind.js.map +1 -1
- package/dist/default/presets/background/index.js +8 -1
- package/dist/default/presets/background/index.js.map +1 -0
- package/dist/default/presets/background/player.js +13 -0
- package/dist/default/presets/background/player.js.map +1 -0
- package/dist/default/presets/background/skin.css +3 -3
- package/dist/default/presets/background/skin.js +1 -0
- package/dist/default/presets/background/skin.js.map +1 -1
- package/dist/default/presets/live-audio/index.js +8 -1
- package/dist/default/presets/live-audio/index.js.map +1 -0
- package/dist/default/presets/live-audio/minimal-skin.css +423 -295
- package/dist/default/presets/live-audio/minimal-skin.js +3 -2
- package/dist/default/presets/live-audio/minimal-skin.js.map +1 -1
- package/dist/default/presets/live-audio/minimal-skin.tailwind.js +5 -4
- package/dist/default/presets/live-audio/minimal-skin.tailwind.js.map +1 -1
- package/dist/default/presets/live-audio/player.js +13 -0
- package/dist/default/presets/live-audio/player.js.map +1 -0
- package/dist/default/presets/live-audio/skin.css +459 -345
- package/dist/default/presets/live-audio/skin.js +3 -2
- package/dist/default/presets/live-audio/skin.js.map +1 -1
- package/dist/default/presets/live-audio/skin.tailwind.js +5 -4
- package/dist/default/presets/live-audio/skin.tailwind.js.map +1 -1
- package/dist/default/presets/live-video/index.js +8 -1
- package/dist/default/presets/live-video/index.js.map +1 -0
- package/dist/default/presets/live-video/minimal-skin.css +656 -588
- package/dist/default/presets/live-video/minimal-skin.js +13 -12
- package/dist/default/presets/live-video/minimal-skin.js.map +1 -1
- package/dist/default/presets/live-video/minimal-skin.tailwind.js +28 -26
- package/dist/default/presets/live-video/minimal-skin.tailwind.js.map +1 -1
- package/dist/default/presets/live-video/player.js +13 -0
- package/dist/default/presets/live-video/player.js.map +1 -0
- package/dist/default/presets/live-video/skin.css +661 -622
- package/dist/default/presets/live-video/skin.js +12 -11
- package/dist/default/presets/live-video/skin.js.map +1 -1
- package/dist/default/presets/live-video/skin.tailwind.js +25 -112
- package/dist/default/presets/live-video/skin.tailwind.js.map +1 -1
- package/dist/default/presets/video/index.js +8 -1
- package/dist/default/presets/video/index.js.map +1 -0
- package/dist/default/presets/video/minimal-skin.css +656 -588
- package/dist/default/presets/video/minimal-skin.js +213 -211
- package/dist/default/presets/video/minimal-skin.js.map +1 -1
- package/dist/default/presets/video/minimal-skin.tailwind.js +227 -233
- package/dist/default/presets/video/minimal-skin.tailwind.js.map +1 -1
- package/dist/default/presets/video/player.js +13 -0
- package/dist/default/presets/video/player.js.map +1 -0
- package/dist/default/presets/video/skin.css +661 -622
- package/dist/default/presets/video/skin.js +213 -207
- package/dist/default/presets/video/skin.js.map +1 -1
- package/dist/default/presets/video/skin.tailwind.js +225 -227
- package/dist/default/presets/video/skin.tailwind.js.map +1 -1
- package/dist/default/skins/dist/default/default/tailwind/audio.tailwind.js +6 -6
- package/dist/default/skins/dist/default/default/tailwind/audio.tailwind.js.map +1 -1
- package/dist/default/skins/dist/default/default/tailwind/components/buffering.js +1 -1
- package/dist/default/skins/dist/default/default/tailwind/components/buffering.js.map +1 -1
- package/dist/default/skins/dist/default/default/tailwind/components/button.js +4 -4
- package/dist/default/skins/dist/default/default/tailwind/components/button.js.map +1 -1
- package/dist/default/skins/dist/default/default/tailwind/components/container.js +8 -0
- package/dist/default/skins/dist/default/default/tailwind/components/container.js.map +1 -0
- package/dist/default/skins/dist/default/default/tailwind/components/controls.js +1 -1
- package/dist/default/skins/dist/default/default/tailwind/components/controls.js.map +1 -1
- package/dist/default/skins/dist/default/default/tailwind/components/error.js +1 -1
- package/dist/default/skins/dist/default/default/tailwind/components/error.js.map +1 -1
- package/dist/default/skins/dist/default/default/tailwind/components/icon.js +1 -1
- package/dist/default/skins/dist/default/default/tailwind/components/icon.js.map +1 -1
- package/dist/default/skins/dist/default/default/tailwind/components/input-indicator-overlay.js +7 -0
- package/dist/default/skins/dist/default/default/tailwind/components/input-indicator-overlay.js.map +1 -0
- package/dist/default/skins/dist/default/default/tailwind/components/input-indicator.js +9 -0
- package/dist/default/skins/dist/default/default/tailwind/components/input-indicator.js.map +1 -0
- package/dist/default/skins/dist/default/default/tailwind/components/menu.js +8 -12
- package/dist/default/skins/dist/default/default/tailwind/components/menu.js.map +1 -1
- package/dist/default/skins/dist/default/default/tailwind/components/overlay.js +1 -1
- package/dist/default/skins/dist/default/default/tailwind/components/overlay.js.map +1 -1
- package/dist/default/skins/dist/default/default/tailwind/components/popup.js +1 -1
- package/dist/default/skins/dist/default/default/tailwind/components/popup.js.map +1 -1
- package/dist/default/skins/dist/default/default/tailwind/components/poster.js +1 -1
- package/dist/default/skins/dist/default/default/tailwind/components/poster.js.map +1 -1
- package/dist/default/skins/dist/default/default/tailwind/components/seek-indicator.js +12 -0
- package/dist/default/skins/dist/default/default/tailwind/components/seek-indicator.js.map +1 -0
- package/dist/default/skins/dist/default/default/tailwind/components/slider.js +17 -9
- package/dist/default/skins/dist/default/default/tailwind/components/slider.js.map +1 -1
- package/dist/default/skins/dist/default/default/tailwind/components/status-indicator.js +29 -0
- package/dist/default/skins/dist/default/default/tailwind/components/status-indicator.js.map +1 -0
- package/dist/default/skins/dist/default/default/tailwind/components/surface.js +1 -1
- package/dist/default/skins/dist/default/default/tailwind/components/surface.js.map +1 -1
- package/dist/default/skins/dist/default/default/tailwind/components/thumbnail.js +3 -4
- package/dist/default/skins/dist/default/default/tailwind/components/thumbnail.js.map +1 -1
- package/dist/default/skins/dist/default/default/tailwind/components/time.js +2 -2
- package/dist/default/skins/dist/default/default/tailwind/components/time.js.map +1 -1
- package/dist/default/skins/dist/default/default/tailwind/components/volume-indicator.js +18 -0
- package/dist/default/skins/dist/default/default/tailwind/components/volume-indicator.js.map +1 -0
- package/dist/default/skins/dist/default/default/tailwind/video.tailwind.js +22 -19
- package/dist/default/skins/dist/default/default/tailwind/video.tailwind.js.map +1 -1
- package/dist/default/skins/dist/default/minimal/tailwind/audio.tailwind.js +6 -6
- package/dist/default/skins/dist/default/minimal/tailwind/audio.tailwind.js.map +1 -1
- package/dist/default/skins/dist/default/minimal/tailwind/components/buffering.js +1 -1
- package/dist/default/skins/dist/default/minimal/tailwind/components/buffering.js.map +1 -1
- package/dist/default/skins/dist/default/minimal/tailwind/components/button.js +4 -4
- package/dist/default/skins/dist/default/minimal/tailwind/components/button.js.map +1 -1
- package/dist/default/skins/dist/default/minimal/tailwind/components/container.js +8 -0
- package/dist/default/skins/dist/default/minimal/tailwind/components/container.js.map +1 -0
- package/dist/default/skins/dist/default/minimal/tailwind/components/controls.js +1 -1
- package/dist/default/skins/dist/default/minimal/tailwind/components/controls.js.map +1 -1
- package/dist/default/skins/dist/default/minimal/tailwind/components/error.js +1 -1
- package/dist/default/skins/dist/default/minimal/tailwind/components/error.js.map +1 -1
- package/dist/default/skins/dist/default/minimal/tailwind/components/icon.js +1 -1
- package/dist/default/skins/dist/default/minimal/tailwind/components/icon.js.map +1 -1
- package/dist/default/skins/dist/default/minimal/tailwind/components/input-indicator-overlay.js +7 -0
- package/dist/default/skins/dist/default/minimal/tailwind/components/input-indicator-overlay.js.map +1 -0
- package/dist/default/skins/dist/default/minimal/tailwind/components/input-indicator.js +10 -0
- package/dist/default/skins/dist/default/minimal/tailwind/components/input-indicator.js.map +1 -0
- package/dist/default/skins/dist/default/minimal/tailwind/components/menu.js +9 -13
- package/dist/default/skins/dist/default/minimal/tailwind/components/menu.js.map +1 -1
- package/dist/default/skins/dist/default/minimal/tailwind/components/overlay.js +1 -1
- package/dist/default/skins/dist/default/minimal/tailwind/components/overlay.js.map +1 -1
- package/dist/default/skins/dist/default/minimal/tailwind/components/popup.js +2 -2
- package/dist/default/skins/dist/default/minimal/tailwind/components/popup.js.map +1 -1
- package/dist/default/skins/dist/default/minimal/tailwind/components/poster.js +1 -1
- package/dist/default/skins/dist/default/minimal/tailwind/components/poster.js.map +1 -1
- package/dist/default/skins/dist/default/minimal/tailwind/components/seek-indicator.js +12 -0
- package/dist/default/skins/dist/default/minimal/tailwind/components/seek-indicator.js.map +1 -0
- package/dist/default/skins/dist/default/minimal/tailwind/components/slider.js +17 -9
- package/dist/default/skins/dist/default/minimal/tailwind/components/slider.js.map +1 -1
- package/dist/default/skins/dist/default/minimal/tailwind/components/status-indicator.js +29 -0
- package/dist/default/skins/dist/default/minimal/tailwind/components/status-indicator.js.map +1 -0
- package/dist/default/skins/dist/default/minimal/tailwind/components/thumbnail.js +3 -5
- package/dist/default/skins/dist/default/minimal/tailwind/components/thumbnail.js.map +1 -1
- package/dist/default/skins/dist/default/minimal/tailwind/components/time.js +2 -2
- package/dist/default/skins/dist/default/minimal/tailwind/components/time.js.map +1 -1
- package/dist/default/skins/dist/default/minimal/tailwind/components/volume-indicator.js +19 -0
- package/dist/default/skins/dist/default/minimal/tailwind/components/volume-indicator.js.map +1 -0
- package/dist/default/skins/dist/default/minimal/tailwind/video.tailwind.js +14 -15
- package/dist/default/skins/dist/default/minimal/tailwind/video.tailwind.js.map +1 -1
- package/dist/default/skins/dist/default/shared/tailwind/icon-state.js +22 -20
- package/dist/default/skins/dist/default/shared/tailwind/icon-state.js.map +1 -1
- package/dist/default/ui/airplay-button/airplay-button.js +0 -1
- package/dist/default/ui/airplay-button/airplay-button.js.map +1 -1
- package/dist/default/ui/alert-dialog/alert-dialog-close.js +0 -1
- package/dist/default/ui/alert-dialog/alert-dialog-close.js.map +1 -1
- package/dist/default/ui/alert-dialog/alert-dialog-description.js +0 -1
- package/dist/default/ui/alert-dialog/alert-dialog-description.js.map +1 -1
- package/dist/default/ui/alert-dialog/alert-dialog-popup.js +0 -1
- package/dist/default/ui/alert-dialog/alert-dialog-popup.js.map +1 -1
- package/dist/default/ui/alert-dialog/alert-dialog-root.js +0 -1
- package/dist/default/ui/alert-dialog/alert-dialog-root.js.map +1 -1
- package/dist/default/ui/alert-dialog/alert-dialog-title.js +0 -1
- package/dist/default/ui/alert-dialog/alert-dialog-title.js.map +1 -1
- package/dist/default/ui/alert-dialog/context.js +0 -1
- package/dist/default/ui/alert-dialog/context.js.map +1 -1
- package/dist/default/ui/audio-track/use-audio-track-options.js +8 -24
- package/dist/default/ui/audio-track/use-audio-track-options.js.map +1 -1
- package/dist/default/ui/audio-track-radio-group/audio-track-radio-group.js +64 -0
- package/dist/default/ui/audio-track-radio-group/audio-track-radio-group.js.map +1 -0
- package/dist/default/ui/audio-track-radio-group/index.js +2 -0
- package/dist/default/ui/buffering-indicator/buffering-indicator.js +0 -1
- package/dist/default/ui/buffering-indicator/buffering-indicator.js.map +1 -1
- package/dist/default/ui/captions-button/captions-button.js +0 -1
- package/dist/default/ui/captions-button/captions-button.js.map +1 -1
- package/dist/default/ui/captions-radio-group/captions-radio-group.js +64 -0
- package/dist/default/ui/captions-radio-group/captions-radio-group.js.map +1 -0
- package/dist/default/ui/captions-radio-group/index.js +2 -1
- package/dist/default/ui/captions-radio-group/use-captions-options.js +12 -30
- package/dist/default/ui/captions-radio-group/use-captions-options.js.map +1 -1
- package/dist/default/ui/cast-button/cast-button.js +0 -1
- package/dist/default/ui/cast-button/cast-button.js.map +1 -1
- package/dist/default/ui/controls/context.js +0 -1
- package/dist/default/ui/controls/context.js.map +1 -1
- package/dist/default/ui/controls/controls-group.js +0 -1
- package/dist/default/ui/controls/controls-group.js.map +1 -1
- package/dist/default/ui/controls/controls-root.js +0 -1
- package/dist/default/ui/controls/controls-root.js.map +1 -1
- package/dist/default/ui/create-context-part.js +0 -1
- package/dist/default/ui/create-context-part.js.map +1 -1
- package/dist/default/ui/create-media-button.js +0 -1
- package/dist/default/ui/create-media-button.js.map +1 -1
- package/dist/default/ui/error-dialog/context.js +0 -1
- package/dist/default/ui/error-dialog/context.js.map +1 -1
- package/dist/default/ui/error-dialog/error-dialog-close.js +0 -1
- package/dist/default/ui/error-dialog/error-dialog-close.js.map +1 -1
- package/dist/default/ui/error-dialog/error-dialog-description.js +0 -1
- package/dist/default/ui/error-dialog/error-dialog-description.js.map +1 -1
- package/dist/default/ui/error-dialog/error-dialog-root.js +0 -1
- package/dist/default/ui/error-dialog/error-dialog-root.js.map +1 -1
- package/dist/default/ui/error-dialog/error-dialog-title.js +0 -1
- package/dist/default/ui/error-dialog/error-dialog-title.js.map +1 -1
- package/dist/default/ui/fullscreen-button/fullscreen-button.js +0 -1
- package/dist/default/ui/fullscreen-button/fullscreen-button.js.map +1 -1
- package/dist/default/ui/gesture/gesture.js +0 -1
- package/dist/default/ui/gesture/gesture.js.map +1 -1
- package/dist/default/ui/gesture/use-doubletap-gesture.js +0 -1
- package/dist/default/ui/gesture/use-doubletap-gesture.js.map +1 -1
- package/dist/default/ui/gesture/use-tap-gesture.js +0 -1
- package/dist/default/ui/gesture/use-tap-gesture.js.map +1 -1
- package/dist/default/ui/hooks/create-radio-options-hook.js +42 -0
- package/dist/default/ui/hooks/create-radio-options-hook.js.map +1 -0
- package/dist/default/ui/hooks/use-button.js +0 -1
- package/dist/default/ui/hooks/use-button.js.map +1 -1
- package/dist/default/ui/hooks/use-positioned-state.js +0 -1
- package/dist/default/ui/hooks/use-positioned-state.js.map +1 -1
- package/dist/default/ui/hooks/use-slider.js +49 -14
- package/dist/default/ui/hooks/use-slider.js.map +1 -1
- package/dist/default/ui/hotkey/hotkey.js +0 -1
- package/dist/default/ui/hotkey/hotkey.js.map +1 -1
- package/dist/default/ui/hotkey/use-hotkey-shortcut.js +0 -1
- package/dist/default/ui/hotkey/use-hotkey-shortcut.js.map +1 -1
- package/dist/default/ui/hotkey/use-hotkey.js +0 -1
- package/dist/default/ui/hotkey/use-hotkey.js.map +1 -1
- package/dist/{dev/ui/input-indicators → default/ui/input-indicator}/use-indicator-visibility.js +1 -2
- package/dist/default/ui/input-indicator/use-indicator-visibility.js.map +1 -0
- package/dist/{dev/ui/input-indicators → default/ui/input-indicator}/use-input-action-subscription.js +1 -2
- package/dist/default/ui/input-indicator/use-input-action-subscription.js.map +1 -0
- package/dist/default/ui/{input-indicators → input-indicator}/use-input-indicator-root.js +1 -2
- package/dist/default/ui/input-indicator/use-input-indicator-root.js.map +1 -0
- package/dist/{dev/ui/input-indicators → default/ui/input-indicator}/use-rendered-indicator-state.js +1 -2
- package/dist/default/ui/input-indicator/use-rendered-indicator-state.js.map +1 -0
- package/dist/default/ui/live-button/live-button.js +0 -1
- package/dist/default/ui/live-button/live-button.js.map +1 -1
- package/dist/default/ui/menu/context.js +1 -12
- package/dist/default/ui/menu/context.js.map +1 -1
- package/dist/default/ui/menu/index.parts.js +3 -9
- package/dist/default/ui/menu/index.parts.js.map +1 -1
- package/dist/default/ui/menu/menu-checkbox-item.js +4 -2
- package/dist/default/ui/menu/menu-checkbox-item.js.map +1 -1
- package/dist/default/ui/menu/menu-content.js +78 -237
- package/dist/default/ui/menu/menu-content.js.map +1 -1
- package/dist/default/ui/menu/menu-group-label.js +0 -1
- package/dist/default/ui/menu/menu-group-label.js.map +1 -1
- package/dist/default/ui/menu/menu-group.js +0 -1
- package/dist/default/ui/menu/menu-group.js.map +1 -1
- package/dist/default/ui/menu/menu-item-indicator.js +0 -1
- package/dist/default/ui/menu/menu-item-indicator.js.map +1 -1
- package/dist/default/ui/menu/menu-item.js +11 -19
- package/dist/default/ui/menu/menu-item.js.map +1 -1
- package/dist/default/ui/menu/menu-keyboard.js +31 -0
- package/dist/default/ui/menu/menu-keyboard.js.map +1 -0
- package/dist/default/ui/menu/menu-radio-group.js +0 -1
- package/dist/default/ui/menu/menu-radio-group.js.map +1 -1
- package/dist/default/ui/menu/menu-radio-item.js +8 -7
- package/dist/default/ui/menu/menu-radio-item.js.map +1 -1
- package/dist/default/ui/menu/menu-root.js +46 -62
- package/dist/default/ui/menu/menu-root.js.map +1 -1
- package/dist/default/ui/menu/menu-separator.js +0 -1
- package/dist/default/ui/menu/menu-separator.js.map +1 -1
- package/dist/default/ui/menu/menu-trigger.js +75 -98
- package/dist/default/ui/menu/menu-trigger.js.map +1 -1
- package/dist/default/ui/menu/use-menu-group.js +0 -1
- package/dist/default/ui/menu/use-menu-group.js.map +1 -1
- package/dist/default/ui/mute-button/mute-button.js +2 -2
- package/dist/default/ui/mute-button/mute-button.js.map +1 -1
- package/dist/default/ui/pip-button/pip-button.js +0 -1
- package/dist/default/ui/pip-button/pip-button.js.map +1 -1
- package/dist/default/ui/play-button/play-button.js +0 -1
- package/dist/default/ui/play-button/play-button.js.map +1 -1
- package/dist/default/ui/playback-rate/use-playback-rate-options.js +14 -23
- package/dist/default/ui/playback-rate/use-playback-rate-options.js.map +1 -1
- package/dist/default/ui/playback-rate-button/playback-rate-button.js +0 -1
- package/dist/default/ui/playback-rate-button/playback-rate-button.js.map +1 -1
- package/dist/default/ui/playback-rate-radio-group/index.js +2 -0
- package/dist/default/ui/playback-rate-radio-group/playback-rate-radio-group.js +64 -0
- package/dist/default/ui/playback-rate-radio-group/playback-rate-radio-group.js.map +1 -0
- package/dist/default/ui/popover/context.js +0 -1
- package/dist/default/ui/popover/context.js.map +1 -1
- package/dist/default/ui/popover/popover-arrow.js +0 -1
- package/dist/default/ui/popover/popover-arrow.js.map +1 -1
- package/dist/default/ui/popover/popover-popup.js +10 -81
- package/dist/default/ui/popover/popover-popup.js.map +1 -1
- package/dist/default/ui/popover/popover-root.js +2 -2
- package/dist/default/ui/popover/popover-root.js.map +1 -1
- package/dist/default/ui/popover/popover-trigger.js +4 -6
- package/dist/default/ui/popover/popover-trigger.js.map +1 -1
- package/dist/default/ui/popover/use-popup-position.js +33 -0
- package/dist/default/ui/popover/use-popup-position.js.map +1 -0
- package/dist/default/ui/poster/poster.js +8 -5
- package/dist/default/ui/poster/poster.js.map +1 -1
- package/dist/default/ui/quality/use-quality-options.js +9 -31
- package/dist/default/ui/quality/use-quality-options.js.map +1 -1
- package/dist/default/ui/quality-radio-group/index.js +2 -0
- package/dist/default/ui/quality-radio-group/quality-radio-group.js +65 -0
- package/dist/default/ui/quality-radio-group/quality-radio-group.js.map +1 -0
- package/dist/default/ui/seek-button/seek-button.js +0 -1
- package/dist/default/ui/seek-button/seek-button.js.map +1 -1
- package/dist/default/ui/seek-indicator/context.js +0 -1
- package/dist/default/ui/seek-indicator/context.js.map +1 -1
- package/dist/default/ui/seek-indicator/seek-indicator-root.js +1 -2
- package/dist/default/ui/seek-indicator/seek-indicator-root.js.map +1 -1
- package/dist/default/ui/seek-indicator/seek-indicator-value.js +0 -1
- package/dist/default/ui/seek-indicator/seek-indicator-value.js.map +1 -1
- package/dist/default/ui/slider/context.js +7 -3
- package/dist/default/ui/slider/context.js.map +1 -1
- package/dist/default/ui/slider/slider-buffer.js +0 -1
- package/dist/default/ui/slider/slider-buffer.js.map +1 -1
- package/dist/default/ui/slider/slider-fill.js +0 -1
- package/dist/default/ui/slider/slider-fill.js.map +1 -1
- package/dist/default/ui/slider/slider-preview.js +2 -4
- package/dist/default/ui/slider/slider-preview.js.map +1 -1
- package/dist/default/ui/slider/slider-root.js +3 -2
- package/dist/default/ui/slider/slider-root.js.map +1 -1
- package/dist/default/ui/slider/slider-thumb.js +0 -1
- package/dist/default/ui/slider/slider-thumb.js.map +1 -1
- package/dist/default/ui/slider/slider-thumbnail.js +2 -3
- package/dist/default/ui/slider/slider-thumbnail.js.map +1 -1
- package/dist/default/ui/slider/slider-track.js +0 -1
- package/dist/default/ui/slider/slider-track.js.map +1 -1
- package/dist/default/ui/slider/slider-value.js +3 -3
- package/dist/default/ui/slider/slider-value.js.map +1 -1
- package/dist/default/ui/status-announcer/status-announcer.js +7 -5
- package/dist/default/ui/status-announcer/status-announcer.js.map +1 -1
- package/dist/default/ui/status-indicator/context.js +0 -1
- package/dist/default/ui/status-indicator/context.js.map +1 -1
- package/dist/default/ui/status-indicator/status-indicator-root.js +2 -3
- package/dist/default/ui/status-indicator/status-indicator-root.js.map +1 -1
- package/dist/default/ui/status-indicator/status-indicator-value.js +0 -1
- package/dist/default/ui/status-indicator/status-indicator-value.js.map +1 -1
- package/dist/default/ui/thumbnail/thumbnail.js +0 -1
- package/dist/default/ui/thumbnail/thumbnail.js.map +1 -1
- package/dist/default/ui/time/time-group.js +0 -1
- package/dist/default/ui/time/time-group.js.map +1 -1
- package/dist/default/ui/time/time-separator.js +0 -1
- package/dist/default/ui/time/time-separator.js.map +1 -1
- package/dist/default/ui/time/time-value.js +13 -6
- package/dist/default/ui/time/time-value.js.map +1 -1
- package/dist/default/ui/time-slider/index.parts.js +5 -1
- package/dist/default/ui/time-slider/index.parts.js.map +1 -1
- package/dist/default/ui/time-slider/time-slider-chapters/slider-segments.js +60 -0
- package/dist/default/ui/time-slider/time-slider-chapters/slider-segments.js.map +1 -0
- package/dist/default/ui/time-slider/time-slider-chapters/time-slider-chapter-title.js +45 -0
- package/dist/default/ui/time-slider/time-slider-chapters/time-slider-chapter-title.js.map +1 -0
- package/dist/default/ui/time-slider/time-slider-chapters/time-slider-chapters.js +51 -0
- package/dist/default/ui/time-slider/time-slider-chapters/time-slider-chapters.js.map +1 -0
- package/dist/default/ui/time-slider/time-slider-root.js +6 -5
- package/dist/default/ui/time-slider/time-slider-root.js.map +1 -1
- package/dist/default/ui/tooltip/context.js +0 -1
- package/dist/default/ui/tooltip/context.js.map +1 -1
- package/dist/default/ui/tooltip/group-context.js +0 -1
- package/dist/default/ui/tooltip/group-context.js.map +1 -1
- package/dist/default/ui/tooltip/tooltip-arrow.js +0 -1
- package/dist/default/ui/tooltip/tooltip-arrow.js.map +1 -1
- package/dist/default/ui/tooltip/tooltip-label.js +0 -1
- package/dist/default/ui/tooltip/tooltip-label.js.map +1 -1
- package/dist/default/ui/tooltip/tooltip-popup.js +13 -83
- package/dist/default/ui/tooltip/tooltip-popup.js.map +1 -1
- package/dist/default/ui/tooltip/tooltip-provider.js +0 -1
- package/dist/default/ui/tooltip/tooltip-provider.js.map +1 -1
- package/dist/default/ui/tooltip/tooltip-root.js +5 -2
- package/dist/default/ui/tooltip/tooltip-root.js.map +1 -1
- package/dist/default/ui/tooltip/tooltip-shortcut.js +0 -1
- package/dist/default/ui/tooltip/tooltip-shortcut.js.map +1 -1
- package/dist/default/ui/tooltip/tooltip-trigger.js +2 -5
- package/dist/default/ui/tooltip/tooltip-trigger.js.map +1 -1
- package/dist/default/ui/volume-indicator/context.js +0 -1
- package/dist/default/ui/volume-indicator/context.js.map +1 -1
- package/dist/default/ui/volume-indicator/volume-indicator-fill.js +0 -1
- package/dist/default/ui/volume-indicator/volume-indicator-fill.js.map +1 -1
- package/dist/default/ui/volume-indicator/volume-indicator-root.js +1 -2
- package/dist/default/ui/volume-indicator/volume-indicator-root.js.map +1 -1
- package/dist/default/ui/volume-indicator/volume-indicator-value.js +0 -1
- package/dist/default/ui/volume-indicator/volume-indicator-value.js.map +1 -1
- package/dist/default/ui/volume-slider/volume-slider-root.js +10 -5
- package/dist/default/ui/volume-slider/volume-slider-root.js.map +1 -1
- package/dist/default/utils/merge-props.js +0 -1
- package/dist/default/utils/merge-props.js.map +1 -1
- package/dist/default/utils/use-attach-iframe.js +0 -1
- package/dist/default/utils/use-attach-iframe.js.map +1 -1
- package/dist/default/utils/use-attach-media.js +0 -1
- package/dist/default/utils/use-attach-media.js.map +1 -1
- package/dist/default/utils/use-composed-refs.js +0 -1
- package/dist/default/utils/use-composed-refs.js.map +1 -1
- package/dist/default/utils/use-destroy.js +0 -1
- package/dist/default/utils/use-destroy.js.map +1 -1
- package/dist/default/utils/use-force-render.js +0 -1
- package/dist/default/utils/use-force-render.js.map +1 -1
- package/dist/default/utils/use-latest-ref.js +0 -1
- package/dist/default/utils/use-latest-ref.js.map +1 -1
- package/dist/default/utils/use-media-component.js +0 -1
- package/dist/default/utils/use-media-component.js.map +1 -1
- package/dist/default/utils/use-media-instance.js +0 -1
- package/dist/default/utils/use-media-instance.js.map +1 -1
- package/dist/default/utils/use-render.js +0 -1
- package/dist/default/utils/use-render.js.map +1 -1
- package/dist/default/utils/use-safe-id.js +0 -1
- package/dist/default/utils/use-safe-id.js.map +1 -1
- package/dist/dev/__generated__/skins/default-video/styles/base.css +25 -0
- package/dist/dev/__generated__/skins/default-video/styles/buttons.css +152 -0
- package/dist/dev/__generated__/skins/default-video/styles/container.css +45 -0
- package/dist/dev/__generated__/skins/default-video/styles/controls.css +45 -0
- package/dist/dev/__generated__/skins/default-video/styles/overlays.css +11 -0
- package/dist/dev/__generated__/skins/default-video/styles/popups.css +45 -0
- package/dist/dev/__generated__/skins/default-video/styles/poster.css +47 -0
- package/dist/dev/__generated__/skins/default-video/styles/sliders.css +112 -0
- package/dist/dev/__generated__/skins/default-video/styles/styles.css +514 -0
- package/dist/dev/__generated__/skins/default-video/styles/theme.css +22 -0
- package/dist/dev/_virtual/_rolldown/runtime.js +15 -1
- package/dist/dev/i18n/context.d.ts.map +1 -1
- package/dist/dev/i18n/context.js +3 -4
- package/dist/dev/i18n/context.js.map +1 -1
- package/dist/dev/i18n/create-i18n.d.ts.map +1 -1
- package/dist/dev/i18n/create-i18n.js +0 -1
- package/dist/dev/i18n/create-i18n.js.map +1 -1
- package/dist/dev/i18n/locales/id/register.d.ts +1 -0
- package/dist/dev/i18n/locales/id/register.js +8 -0
- package/dist/dev/i18n/locales/id/register.js.map +1 -0
- package/dist/dev/i18n/locales/id.d.ts +2 -0
- package/dist/dev/i18n/locales/id.js +2 -0
- package/dist/dev/i18n/locales/lt/register.d.ts +1 -0
- package/dist/dev/i18n/locales/lt/register.js +8 -0
- package/dist/dev/i18n/locales/lt/register.js.map +1 -0
- package/dist/dev/i18n/locales/lt.d.ts +2 -0
- package/dist/dev/i18n/locales/lt.js +2 -0
- package/dist/dev/icons/dist/react/default/airplay-enter.js.map +1 -1
- package/dist/dev/icons/dist/react/default/airplay-exit.js +1 -2
- package/dist/dev/icons/dist/react/default/airplay-exit.js.map +1 -1
- package/dist/dev/icons/dist/react/default/captions-off.js.map +1 -1
- package/dist/dev/icons/dist/react/default/captions-on.js.map +1 -1
- package/dist/dev/icons/dist/react/default/cast-enter.js +2 -45
- package/dist/dev/icons/dist/react/default/cast-enter.js.map +1 -1
- package/dist/dev/icons/dist/react/default/cast-exit.js +4 -61
- package/dist/dev/icons/dist/react/default/cast-exit.js.map +1 -1
- package/dist/dev/icons/dist/react/default/check.js.map +1 -1
- package/dist/dev/icons/dist/react/default/chevron.js.map +1 -1
- package/dist/dev/icons/dist/react/default/fullscreen-enter.js.map +1 -1
- package/dist/dev/icons/dist/react/default/fullscreen-exit.js.map +1 -1
- package/dist/dev/icons/dist/react/default/gear.js.map +1 -1
- package/dist/dev/icons/dist/react/default/pause.js.map +1 -1
- package/dist/dev/icons/dist/react/default/pip-enter.js.map +1 -1
- package/dist/dev/icons/dist/react/default/pip-exit.js.map +1 -1
- package/dist/dev/icons/dist/react/default/play.js.map +1 -1
- package/dist/dev/icons/dist/react/default/quality.js +1 -1
- package/dist/dev/icons/dist/react/default/quality.js.map +1 -1
- package/dist/dev/icons/dist/react/default/restart.js.map +1 -1
- package/dist/dev/icons/dist/react/default/seek.js.map +1 -1
- package/dist/dev/icons/dist/react/default/speech.js.map +1 -1
- package/dist/dev/icons/dist/react/default/speed.js.map +1 -1
- package/dist/dev/icons/dist/react/default/spinner.js +1 -1
- package/dist/dev/icons/dist/react/default/spinner.js.map +1 -1
- package/dist/dev/icons/dist/react/default/switches.js.map +1 -1
- package/dist/dev/icons/dist/react/default/volume-high.js.map +1 -1
- package/dist/dev/icons/dist/react/default/volume-low.js.map +1 -1
- package/dist/dev/icons/dist/react/default/volume-off.js.map +1 -1
- package/dist/dev/icons/dist/react/minimal/airplay-enter.js.map +1 -1
- package/dist/dev/icons/dist/react/minimal/airplay-exit.js +1 -2
- package/dist/dev/icons/dist/react/minimal/airplay-exit.js.map +1 -1
- package/dist/dev/icons/dist/react/minimal/captions-off.js.map +1 -1
- package/dist/dev/icons/dist/react/minimal/captions-on.js.map +1 -1
- package/dist/dev/icons/dist/react/minimal/cast-enter.js +2 -45
- package/dist/dev/icons/dist/react/minimal/cast-enter.js.map +1 -1
- package/dist/dev/icons/dist/react/minimal/cast-exit.js +4 -61
- package/dist/dev/icons/dist/react/minimal/cast-exit.js.map +1 -1
- package/dist/dev/icons/dist/react/minimal/check.js.map +1 -1
- package/dist/dev/icons/dist/react/minimal/chevron.js.map +1 -1
- package/dist/dev/icons/dist/react/minimal/fullscreen-enter.js.map +1 -1
- package/dist/dev/icons/dist/react/minimal/fullscreen-exit.js.map +1 -1
- package/dist/dev/icons/dist/react/minimal/gear.js.map +1 -1
- package/dist/dev/icons/dist/react/minimal/pause.js.map +1 -1
- package/dist/dev/icons/dist/react/minimal/pip-enter.js.map +1 -1
- package/dist/dev/icons/dist/react/minimal/pip-exit.js.map +1 -1
- package/dist/dev/icons/dist/react/minimal/play.js.map +1 -1
- package/dist/dev/icons/dist/react/minimal/quality.js +1 -1
- package/dist/dev/icons/dist/react/minimal/quality.js.map +1 -1
- package/dist/dev/icons/dist/react/minimal/restart.js.map +1 -1
- package/dist/dev/icons/dist/react/minimal/seek.js.map +1 -1
- package/dist/dev/icons/dist/react/minimal/speech.js +7 -40
- package/dist/dev/icons/dist/react/minimal/speech.js.map +1 -1
- package/dist/dev/icons/dist/react/minimal/speed.js.map +1 -1
- package/dist/dev/icons/dist/react/minimal/spinner.js +1 -1
- package/dist/dev/icons/dist/react/minimal/spinner.js.map +1 -1
- package/dist/dev/icons/dist/react/minimal/switches.js.map +1 -1
- package/dist/dev/icons/dist/react/minimal/volume-high.js.map +1 -1
- package/dist/dev/icons/dist/react/minimal/volume-low.js.map +1 -1
- package/dist/dev/icons/dist/react/minimal/volume-off.js.map +1 -1
- package/dist/dev/index.d.ts +18 -2
- package/dist/dev/index.d.ts.map +1 -0
- package/dist/dev/index.js +7 -3
- package/dist/dev/media/audio.d.ts.map +1 -1
- package/dist/dev/media/audio.js +0 -1
- package/dist/dev/media/audio.js.map +1 -1
- package/dist/dev/media/cloudflare-video/index.d.ts +2 -0
- package/dist/dev/media/cloudflare-video/index.js +2 -0
- package/dist/dev/media/cloudflare-video/media.d.ts +13 -0
- package/dist/dev/media/cloudflare-video/media.d.ts.map +1 -0
- package/dist/dev/media/cloudflare-video/media.js +38 -0
- package/dist/dev/media/cloudflare-video/media.js.map +1 -0
- package/dist/dev/media/google-cast/google-cast.d.ts +3 -3
- package/dist/dev/media/google-cast/google-cast.js +3 -3
- package/dist/dev/media/google-cast/google-cast.js.map +1 -1
- package/dist/dev/media/hls-audio/index.d.ts +2 -0
- package/dist/dev/media/hls-audio/index.js +2 -0
- package/dist/dev/media/hls-audio/media.d.ts +13 -0
- package/dist/dev/media/hls-audio/media.d.ts.map +1 -0
- package/dist/dev/media/hls-audio/media.js +21 -0
- package/dist/dev/media/hls-audio/media.js.map +1 -0
- package/dist/dev/media/hls-background-video/index.d.ts +2 -0
- package/dist/dev/media/hls-background-video/index.js +2 -0
- package/dist/dev/media/hls-background-video/media.d.ts +28 -0
- package/dist/dev/media/hls-background-video/media.d.ts.map +1 -0
- package/dist/dev/media/hls-background-video/media.js +45 -0
- package/dist/dev/media/hls-background-video/media.js.map +1 -0
- package/dist/dev/media/hls-video/index.d.ts +2 -0
- package/dist/dev/media/hls-video/index.js +2 -0
- package/dist/dev/media/hls-video/media.d.ts +13 -0
- package/dist/dev/media/hls-video/media.d.ts.map +1 -0
- package/dist/{default/media/simple-hls-video → dev/media/hls-video}/media.js +6 -7
- package/dist/dev/media/hls-video/media.js.map +1 -0
- package/dist/dev/media/mux-audio/{media.d.ts → hls-js.d.ts} +3 -3
- package/dist/dev/media/mux-audio/hls-js.d.ts.map +1 -0
- package/dist/dev/media/mux-audio/{media.js → hls-js.js} +2 -2
- package/dist/dev/media/mux-audio/hls-js.js.map +1 -0
- package/dist/dev/media/mux-audio/index.d.ts +1 -1
- package/dist/dev/media/mux-audio/index.js +1 -1
- package/dist/dev/media/mux-audio/spf.d.ts +14 -0
- package/dist/dev/media/mux-audio/spf.d.ts.map +1 -0
- package/dist/dev/media/mux-audio/spf.js +26 -0
- package/dist/dev/media/mux-audio/spf.js.map +1 -0
- package/dist/dev/media/mux-background-video/index.d.ts +3 -0
- package/dist/dev/media/mux-background-video/index.js +2 -0
- package/dist/dev/media/mux-data/mux-data.d.ts +7 -3
- package/dist/dev/media/mux-data/mux-data.d.ts.map +1 -1
- package/dist/dev/media/mux-data/mux-data.js +7 -3
- package/dist/dev/media/mux-data/mux-data.js.map +1 -1
- package/dist/dev/media/mux-video/{media.d.ts → hls-js.d.ts} +3 -3
- package/dist/dev/media/mux-video/hls-js.d.ts.map +1 -0
- package/dist/dev/media/mux-video/hls-js.js +27 -0
- package/dist/dev/media/mux-video/hls-js.js.map +1 -0
- package/dist/dev/media/mux-video/index.d.ts +1 -1
- package/dist/dev/media/mux-video/index.js +1 -1
- package/dist/dev/media/mux-video/spf.d.ts +14 -0
- package/dist/dev/media/mux-video/spf.d.ts.map +1 -0
- package/dist/dev/media/mux-video/spf.js +27 -0
- package/dist/dev/media/mux-video/spf.js.map +1 -0
- package/dist/dev/media/mux-video/storyboard.js +43 -0
- package/dist/dev/media/mux-video/storyboard.js.map +1 -0
- package/dist/dev/media/spotify-audio/index.d.ts +2 -0
- package/dist/dev/media/spotify-audio/index.js +2 -0
- package/dist/dev/media/spotify-audio/media.d.ts +13 -0
- package/dist/dev/media/spotify-audio/media.d.ts.map +1 -0
- package/dist/dev/media/spotify-audio/media.js +40 -0
- package/dist/dev/media/spotify-audio/media.js.map +1 -0
- package/dist/dev/media/tiktok-video/index.d.ts +2 -0
- package/dist/dev/media/tiktok-video/index.js +2 -0
- package/dist/dev/media/tiktok-video/media.d.ts +13 -0
- package/dist/dev/media/tiktok-video/media.d.ts.map +1 -0
- package/dist/dev/media/tiktok-video/media.js +38 -0
- package/dist/dev/media/tiktok-video/media.js.map +1 -0
- package/dist/dev/media/twitch-video/index.d.ts +2 -0
- package/dist/dev/media/twitch-video/index.js +2 -0
- package/dist/dev/media/twitch-video/media.d.ts +13 -0
- package/dist/dev/media/twitch-video/media.d.ts.map +1 -0
- package/dist/dev/media/twitch-video/media.js +38 -0
- package/dist/dev/media/twitch-video/media.js.map +1 -0
- package/dist/dev/media/video.d.ts.map +1 -1
- package/dist/dev/media/video.js +0 -1
- package/dist/dev/media/video.js.map +1 -1
- package/dist/dev/media/vimeo-video/media.d.ts.map +1 -1
- package/dist/dev/media/vimeo-video/media.js +4 -4
- package/dist/dev/media/vimeo-video/media.js.map +1 -1
- package/dist/dev/media/youtube-video/index.d.ts +2 -0
- package/dist/dev/media/youtube-video/index.js +2 -0
- package/dist/dev/media/youtube-video/media.d.ts +13 -0
- package/dist/dev/media/youtube-video/media.d.ts.map +1 -0
- package/dist/dev/media/youtube-video/media.js +37 -0
- package/dist/dev/media/youtube-video/media.js.map +1 -0
- package/dist/dev/player/container.d.ts.map +1 -1
- package/dist/dev/player/container.js +8 -4
- package/dist/dev/player/container.js.map +1 -1
- package/dist/dev/player/context.d.ts +7 -8
- package/dist/dev/player/context.d.ts.map +1 -1
- package/dist/dev/player/context.js +6 -11
- package/dist/dev/player/context.js.map +1 -1
- package/dist/dev/player/create-player.d.ts +6 -8
- package/dist/dev/player/create-player.d.ts.map +1 -1
- package/dist/dev/player/create-player.js +45 -15
- package/dist/dev/player/create-player.js.map +1 -1
- package/dist/dev/player/popup-group-context.js +17 -0
- package/dist/dev/player/popup-group-context.js.map +1 -0
- package/dist/dev/presets/audio/index.d.ts +2 -1
- package/dist/dev/presets/audio/index.js +8 -1
- package/dist/dev/presets/audio/index.js.map +1 -0
- package/dist/dev/presets/audio/minimal-skin.css +423 -295
- package/dist/dev/presets/audio/minimal-skin.d.ts.map +1 -1
- package/dist/dev/presets/audio/minimal-skin.js +13 -19
- package/dist/dev/presets/audio/minimal-skin.js.map +1 -1
- package/dist/dev/presets/audio/minimal-skin.tailwind.d.ts.map +1 -1
- package/dist/dev/presets/audio/minimal-skin.tailwind.js +82 -20
- package/dist/dev/presets/audio/minimal-skin.tailwind.js.map +1 -1
- package/dist/dev/presets/audio/player.d.ts +13 -0
- package/dist/dev/presets/audio/player.d.ts.map +1 -0
- package/dist/dev/presets/audio/player.js +13 -0
- package/dist/dev/presets/audio/player.js.map +1 -0
- package/dist/dev/presets/audio/skin.css +459 -345
- package/dist/dev/presets/audio/skin.d.ts.map +1 -1
- package/dist/dev/presets/audio/skin.js +14 -19
- package/dist/dev/presets/audio/skin.js.map +1 -1
- package/dist/dev/presets/audio/skin.tailwind.d.ts.map +1 -1
- package/dist/dev/presets/audio/skin.tailwind.js +15 -19
- package/dist/dev/presets/audio/skin.tailwind.js.map +1 -1
- package/dist/dev/presets/background/index.d.ts +2 -1
- package/dist/dev/presets/background/index.js +8 -1
- package/dist/dev/presets/background/index.js.map +1 -0
- package/dist/dev/presets/background/player.d.ts +10 -0
- package/dist/dev/presets/background/player.d.ts.map +1 -0
- package/dist/dev/presets/background/player.js +13 -0
- package/dist/dev/presets/background/player.js.map +1 -0
- package/dist/dev/presets/background/skin.css +3 -3
- package/dist/dev/presets/background/skin.d.ts.map +1 -1
- package/dist/dev/presets/background/skin.js +1 -0
- package/dist/dev/presets/background/skin.js.map +1 -1
- package/dist/dev/presets/live-audio/index.d.ts +2 -1
- package/dist/dev/presets/live-audio/index.js +8 -1
- package/dist/dev/presets/live-audio/index.js.map +1 -0
- package/dist/dev/presets/live-audio/minimal-skin.css +423 -295
- package/dist/dev/presets/live-audio/minimal-skin.d.ts.map +1 -1
- package/dist/dev/presets/live-audio/minimal-skin.js +3 -2
- package/dist/dev/presets/live-audio/minimal-skin.js.map +1 -1
- package/dist/dev/presets/live-audio/minimal-skin.tailwind.d.ts.map +1 -1
- package/dist/dev/presets/live-audio/minimal-skin.tailwind.js +5 -4
- package/dist/dev/presets/live-audio/minimal-skin.tailwind.js.map +1 -1
- package/dist/dev/presets/live-audio/player.d.ts +13 -0
- package/dist/dev/presets/live-audio/player.d.ts.map +1 -0
- package/dist/dev/presets/live-audio/player.js +13 -0
- package/dist/dev/presets/live-audio/player.js.map +1 -0
- package/dist/dev/presets/live-audio/skin.css +459 -345
- package/dist/dev/presets/live-audio/skin.d.ts.map +1 -1
- package/dist/dev/presets/live-audio/skin.js +3 -2
- package/dist/dev/presets/live-audio/skin.js.map +1 -1
- package/dist/dev/presets/live-audio/skin.tailwind.d.ts.map +1 -1
- package/dist/dev/presets/live-audio/skin.tailwind.js +5 -4
- package/dist/dev/presets/live-audio/skin.tailwind.js.map +1 -1
- package/dist/dev/presets/live-video/index.d.ts +2 -1
- package/dist/dev/presets/live-video/index.js +8 -1
- package/dist/dev/presets/live-video/index.js.map +1 -0
- package/dist/dev/presets/live-video/minimal-skin.css +656 -588
- package/dist/dev/presets/live-video/minimal-skin.d.ts.map +1 -1
- package/dist/dev/presets/live-video/minimal-skin.js +13 -12
- package/dist/dev/presets/live-video/minimal-skin.js.map +1 -1
- package/dist/dev/presets/live-video/minimal-skin.tailwind.d.ts.map +1 -1
- package/dist/dev/presets/live-video/minimal-skin.tailwind.js +28 -26
- package/dist/dev/presets/live-video/minimal-skin.tailwind.js.map +1 -1
- package/dist/dev/presets/live-video/player.d.ts +13 -0
- package/dist/dev/presets/live-video/player.d.ts.map +1 -0
- package/dist/dev/presets/live-video/player.js +13 -0
- package/dist/dev/presets/live-video/player.js.map +1 -0
- package/dist/dev/presets/live-video/skin.css +661 -622
- package/dist/dev/presets/live-video/skin.d.ts.map +1 -1
- package/dist/dev/presets/live-video/skin.js +12 -11
- package/dist/dev/presets/live-video/skin.js.map +1 -1
- package/dist/dev/presets/live-video/skin.tailwind.d.ts.map +1 -1
- package/dist/dev/presets/live-video/skin.tailwind.js +25 -112
- package/dist/dev/presets/live-video/skin.tailwind.js.map +1 -1
- package/dist/dev/presets/video/index.d.ts +2 -1
- package/dist/dev/presets/video/index.js +8 -1
- package/dist/dev/presets/video/index.js.map +1 -0
- package/dist/dev/presets/video/minimal-skin.css +656 -588
- package/dist/dev/presets/video/minimal-skin.d.ts.map +1 -1
- package/dist/dev/presets/video/minimal-skin.js +213 -211
- package/dist/dev/presets/video/minimal-skin.js.map +1 -1
- package/dist/dev/presets/video/minimal-skin.tailwind.d.ts.map +1 -1
- package/dist/dev/presets/video/minimal-skin.tailwind.js +227 -233
- package/dist/dev/presets/video/minimal-skin.tailwind.js.map +1 -1
- package/dist/dev/presets/video/player.d.ts +13 -0
- package/dist/dev/presets/video/player.d.ts.map +1 -0
- package/dist/dev/presets/video/player.js +13 -0
- package/dist/dev/presets/video/player.js.map +1 -0
- package/dist/dev/presets/video/skin.css +661 -622
- package/dist/dev/presets/video/skin.d.ts.map +1 -1
- package/dist/dev/presets/video/skin.js +213 -207
- package/dist/dev/presets/video/skin.js.map +1 -1
- package/dist/dev/presets/video/skin.tailwind.d.ts.map +1 -1
- package/dist/dev/presets/video/skin.tailwind.js +225 -227
- package/dist/dev/presets/video/skin.tailwind.js.map +1 -1
- package/dist/dev/skins/dist/default/default/tailwind/audio.tailwind.js +6 -6
- package/dist/dev/skins/dist/default/default/tailwind/audio.tailwind.js.map +1 -1
- package/dist/dev/skins/dist/default/default/tailwind/components/buffering.js +1 -1
- package/dist/dev/skins/dist/default/default/tailwind/components/buffering.js.map +1 -1
- package/dist/dev/skins/dist/default/default/tailwind/components/button.js +4 -4
- package/dist/dev/skins/dist/default/default/tailwind/components/button.js.map +1 -1
- package/dist/dev/skins/dist/default/default/tailwind/components/container.js +8 -0
- package/dist/dev/skins/dist/default/default/tailwind/components/container.js.map +1 -0
- package/dist/dev/skins/dist/default/default/tailwind/components/controls.js +1 -1
- package/dist/dev/skins/dist/default/default/tailwind/components/controls.js.map +1 -1
- package/dist/dev/skins/dist/default/default/tailwind/components/error.js +1 -1
- package/dist/dev/skins/dist/default/default/tailwind/components/error.js.map +1 -1
- package/dist/dev/skins/dist/default/default/tailwind/components/icon.js +1 -1
- package/dist/dev/skins/dist/default/default/tailwind/components/icon.js.map +1 -1
- package/dist/dev/skins/dist/default/default/tailwind/components/input-indicator-overlay.js +7 -0
- package/dist/dev/skins/dist/default/default/tailwind/components/input-indicator-overlay.js.map +1 -0
- package/dist/dev/skins/dist/default/default/tailwind/components/input-indicator.js +9 -0
- package/dist/dev/skins/dist/default/default/tailwind/components/input-indicator.js.map +1 -0
- package/dist/dev/skins/dist/default/default/tailwind/components/menu.js +8 -12
- package/dist/dev/skins/dist/default/default/tailwind/components/menu.js.map +1 -1
- package/dist/dev/skins/dist/default/default/tailwind/components/overlay.js +1 -1
- package/dist/dev/skins/dist/default/default/tailwind/components/overlay.js.map +1 -1
- package/dist/dev/skins/dist/default/default/tailwind/components/popup.js +1 -1
- package/dist/dev/skins/dist/default/default/tailwind/components/popup.js.map +1 -1
- package/dist/dev/skins/dist/default/default/tailwind/components/poster.js +1 -1
- package/dist/dev/skins/dist/default/default/tailwind/components/poster.js.map +1 -1
- package/dist/dev/skins/dist/default/default/tailwind/components/seek-indicator.js +12 -0
- package/dist/dev/skins/dist/default/default/tailwind/components/seek-indicator.js.map +1 -0
- package/dist/dev/skins/dist/default/default/tailwind/components/slider.js +17 -9
- package/dist/dev/skins/dist/default/default/tailwind/components/slider.js.map +1 -1
- package/dist/dev/skins/dist/default/default/tailwind/components/status-indicator.js +29 -0
- package/dist/dev/skins/dist/default/default/tailwind/components/status-indicator.js.map +1 -0
- package/dist/dev/skins/dist/default/default/tailwind/components/surface.js +1 -1
- package/dist/dev/skins/dist/default/default/tailwind/components/surface.js.map +1 -1
- package/dist/dev/skins/dist/default/default/tailwind/components/thumbnail.js +3 -4
- package/dist/dev/skins/dist/default/default/tailwind/components/thumbnail.js.map +1 -1
- package/dist/dev/skins/dist/default/default/tailwind/components/time.js +2 -2
- package/dist/dev/skins/dist/default/default/tailwind/components/time.js.map +1 -1
- package/dist/dev/skins/dist/default/default/tailwind/components/volume-indicator.js +18 -0
- package/dist/dev/skins/dist/default/default/tailwind/components/volume-indicator.js.map +1 -0
- package/dist/dev/skins/dist/default/default/tailwind/video.tailwind.js +22 -19
- package/dist/dev/skins/dist/default/default/tailwind/video.tailwind.js.map +1 -1
- package/dist/dev/skins/dist/default/minimal/tailwind/audio.tailwind.js +6 -6
- package/dist/dev/skins/dist/default/minimal/tailwind/audio.tailwind.js.map +1 -1
- package/dist/dev/skins/dist/default/minimal/tailwind/components/buffering.js +1 -1
- package/dist/dev/skins/dist/default/minimal/tailwind/components/buffering.js.map +1 -1
- package/dist/dev/skins/dist/default/minimal/tailwind/components/button.js +4 -4
- package/dist/dev/skins/dist/default/minimal/tailwind/components/button.js.map +1 -1
- package/dist/dev/skins/dist/default/minimal/tailwind/components/container.js +8 -0
- package/dist/dev/skins/dist/default/minimal/tailwind/components/container.js.map +1 -0
- package/dist/dev/skins/dist/default/minimal/tailwind/components/controls.js +1 -1
- package/dist/dev/skins/dist/default/minimal/tailwind/components/controls.js.map +1 -1
- package/dist/dev/skins/dist/default/minimal/tailwind/components/error.js +1 -1
- package/dist/dev/skins/dist/default/minimal/tailwind/components/error.js.map +1 -1
- package/dist/dev/skins/dist/default/minimal/tailwind/components/icon.js +1 -1
- package/dist/dev/skins/dist/default/minimal/tailwind/components/icon.js.map +1 -1
- package/dist/dev/skins/dist/default/minimal/tailwind/components/input-indicator-overlay.js +7 -0
- package/dist/dev/skins/dist/default/minimal/tailwind/components/input-indicator-overlay.js.map +1 -0
- package/dist/dev/skins/dist/default/minimal/tailwind/components/input-indicator.js +10 -0
- package/dist/dev/skins/dist/default/minimal/tailwind/components/input-indicator.js.map +1 -0
- package/dist/dev/skins/dist/default/minimal/tailwind/components/menu.js +9 -13
- package/dist/dev/skins/dist/default/minimal/tailwind/components/menu.js.map +1 -1
- package/dist/dev/skins/dist/default/minimal/tailwind/components/overlay.js +1 -1
- package/dist/dev/skins/dist/default/minimal/tailwind/components/overlay.js.map +1 -1
- package/dist/dev/skins/dist/default/minimal/tailwind/components/popup.js +2 -2
- package/dist/dev/skins/dist/default/minimal/tailwind/components/popup.js.map +1 -1
- package/dist/dev/skins/dist/default/minimal/tailwind/components/poster.js +1 -1
- package/dist/dev/skins/dist/default/minimal/tailwind/components/poster.js.map +1 -1
- package/dist/dev/skins/dist/default/minimal/tailwind/components/seek-indicator.js +12 -0
- package/dist/dev/skins/dist/default/minimal/tailwind/components/seek-indicator.js.map +1 -0
- package/dist/dev/skins/dist/default/minimal/tailwind/components/slider.js +17 -9
- package/dist/dev/skins/dist/default/minimal/tailwind/components/slider.js.map +1 -1
- package/dist/dev/skins/dist/default/minimal/tailwind/components/status-indicator.js +29 -0
- package/dist/dev/skins/dist/default/minimal/tailwind/components/status-indicator.js.map +1 -0
- package/dist/dev/skins/dist/default/minimal/tailwind/components/thumbnail.js +3 -5
- package/dist/dev/skins/dist/default/minimal/tailwind/components/thumbnail.js.map +1 -1
- package/dist/dev/skins/dist/default/minimal/tailwind/components/time.js +2 -2
- package/dist/dev/skins/dist/default/minimal/tailwind/components/time.js.map +1 -1
- package/dist/dev/skins/dist/default/minimal/tailwind/components/volume-indicator.js +19 -0
- package/dist/dev/skins/dist/default/minimal/tailwind/components/volume-indicator.js.map +1 -0
- package/dist/dev/skins/dist/default/minimal/tailwind/video.tailwind.js +14 -15
- package/dist/dev/skins/dist/default/minimal/tailwind/video.tailwind.js.map +1 -1
- package/dist/dev/skins/dist/default/shared/tailwind/icon-state.js +22 -20
- package/dist/dev/skins/dist/default/shared/tailwind/icon-state.js.map +1 -1
- package/dist/dev/ui/airplay-button/airplay-button.d.ts.map +1 -1
- package/dist/dev/ui/airplay-button/airplay-button.js +0 -1
- package/dist/dev/ui/airplay-button/airplay-button.js.map +1 -1
- package/dist/dev/ui/alert-dialog/alert-dialog-close.d.ts.map +1 -1
- package/dist/dev/ui/alert-dialog/alert-dialog-close.js +0 -1
- package/dist/dev/ui/alert-dialog/alert-dialog-close.js.map +1 -1
- package/dist/dev/ui/alert-dialog/alert-dialog-description.d.ts.map +1 -1
- package/dist/dev/ui/alert-dialog/alert-dialog-description.js +0 -1
- package/dist/dev/ui/alert-dialog/alert-dialog-description.js.map +1 -1
- package/dist/dev/ui/alert-dialog/alert-dialog-popup.d.ts.map +1 -1
- package/dist/dev/ui/alert-dialog/alert-dialog-popup.js +0 -1
- package/dist/dev/ui/alert-dialog/alert-dialog-popup.js.map +1 -1
- package/dist/dev/ui/alert-dialog/alert-dialog-root.d.ts.map +1 -1
- package/dist/dev/ui/alert-dialog/alert-dialog-root.js +0 -1
- package/dist/dev/ui/alert-dialog/alert-dialog-root.js.map +1 -1
- package/dist/dev/ui/alert-dialog/alert-dialog-title.d.ts.map +1 -1
- package/dist/dev/ui/alert-dialog/alert-dialog-title.js +0 -1
- package/dist/dev/ui/alert-dialog/alert-dialog-title.js.map +1 -1
- package/dist/dev/ui/alert-dialog/context.d.ts.map +1 -1
- package/dist/dev/ui/alert-dialog/context.js +0 -1
- package/dist/dev/ui/alert-dialog/context.js.map +1 -1
- package/dist/dev/ui/audio-track/use-audio-track-options.d.ts +6 -6
- package/dist/dev/ui/audio-track/use-audio-track-options.d.ts.map +1 -1
- package/dist/dev/ui/audio-track/use-audio-track-options.js +9 -28
- package/dist/dev/ui/audio-track/use-audio-track-options.js.map +1 -1
- package/dist/dev/ui/audio-track-radio-group/audio-track-radio-group.d.ts +43 -0
- package/dist/dev/ui/audio-track-radio-group/audio-track-radio-group.d.ts.map +1 -0
- package/dist/dev/ui/audio-track-radio-group/audio-track-radio-group.js +64 -0
- package/dist/dev/ui/audio-track-radio-group/audio-track-radio-group.js.map +1 -0
- package/dist/dev/ui/audio-track-radio-group/index.d.ts +2 -0
- package/dist/dev/ui/audio-track-radio-group/index.js +2 -0
- package/dist/dev/ui/buffering-indicator/buffering-indicator.d.ts.map +1 -1
- package/dist/dev/ui/buffering-indicator/buffering-indicator.js +0 -1
- package/dist/dev/ui/buffering-indicator/buffering-indicator.js.map +1 -1
- package/dist/dev/ui/captions-button/captions-button.d.ts.map +1 -1
- package/dist/dev/ui/captions-button/captions-button.js +0 -1
- package/dist/dev/ui/captions-button/captions-button.js.map +1 -1
- package/dist/dev/ui/captions-radio-group/captions-radio-group.d.ts +43 -0
- package/dist/dev/ui/captions-radio-group/captions-radio-group.d.ts.map +1 -0
- package/dist/dev/ui/captions-radio-group/captions-radio-group.js +64 -0
- package/dist/dev/ui/captions-radio-group/captions-radio-group.js.map +1 -0
- package/dist/dev/ui/captions-radio-group/index.d.ts +2 -1
- package/dist/dev/ui/captions-radio-group/index.js +2 -1
- package/dist/dev/ui/captions-radio-group/use-captions-options.d.ts +6 -6
- package/dist/dev/ui/captions-radio-group/use-captions-options.d.ts.map +1 -1
- package/dist/dev/ui/captions-radio-group/use-captions-options.js +13 -34
- package/dist/dev/ui/captions-radio-group/use-captions-options.js.map +1 -1
- package/dist/dev/ui/cast-button/cast-button.d.ts.map +1 -1
- package/dist/dev/ui/cast-button/cast-button.js +0 -1
- package/dist/dev/ui/cast-button/cast-button.js.map +1 -1
- package/dist/dev/ui/controls/context.js +0 -1
- package/dist/dev/ui/controls/context.js.map +1 -1
- package/dist/dev/ui/controls/controls-group.d.ts.map +1 -1
- package/dist/dev/ui/controls/controls-group.js +0 -1
- package/dist/dev/ui/controls/controls-group.js.map +1 -1
- package/dist/dev/ui/controls/controls-root.d.ts.map +1 -1
- package/dist/dev/ui/controls/controls-root.js +0 -1
- package/dist/dev/ui/controls/controls-root.js.map +1 -1
- package/dist/dev/ui/create-context-part.js +0 -1
- package/dist/dev/ui/create-context-part.js.map +1 -1
- package/dist/dev/ui/create-media-button.js +0 -1
- package/dist/dev/ui/create-media-button.js.map +1 -1
- package/dist/dev/ui/error-dialog/context.d.ts.map +1 -1
- package/dist/dev/ui/error-dialog/context.js +0 -1
- package/dist/dev/ui/error-dialog/context.js.map +1 -1
- package/dist/dev/ui/error-dialog/error-dialog-close.d.ts.map +1 -1
- package/dist/dev/ui/error-dialog/error-dialog-close.js +0 -1
- package/dist/dev/ui/error-dialog/error-dialog-close.js.map +1 -1
- package/dist/dev/ui/error-dialog/error-dialog-description.d.ts.map +1 -1
- package/dist/dev/ui/error-dialog/error-dialog-description.js +0 -1
- package/dist/dev/ui/error-dialog/error-dialog-description.js.map +1 -1
- package/dist/dev/ui/error-dialog/error-dialog-root.d.ts.map +1 -1
- package/dist/dev/ui/error-dialog/error-dialog-root.js +0 -1
- package/dist/dev/ui/error-dialog/error-dialog-root.js.map +1 -1
- package/dist/dev/ui/error-dialog/error-dialog-title.d.ts.map +1 -1
- package/dist/dev/ui/error-dialog/error-dialog-title.js +0 -1
- package/dist/dev/ui/error-dialog/error-dialog-title.js.map +1 -1
- package/dist/dev/ui/fullscreen-button/fullscreen-button.d.ts.map +1 -1
- package/dist/dev/ui/fullscreen-button/fullscreen-button.js +0 -1
- package/dist/dev/ui/fullscreen-button/fullscreen-button.js.map +1 -1
- package/dist/dev/ui/gesture/gesture.d.ts.map +1 -1
- package/dist/dev/ui/gesture/gesture.js +0 -1
- package/dist/dev/ui/gesture/gesture.js.map +1 -1
- package/dist/dev/ui/gesture/use-doubletap-gesture.d.ts.map +1 -1
- package/dist/dev/ui/gesture/use-doubletap-gesture.js +0 -1
- package/dist/dev/ui/gesture/use-doubletap-gesture.js.map +1 -1
- package/dist/dev/ui/gesture/use-tap-gesture.d.ts.map +1 -1
- package/dist/dev/ui/gesture/use-tap-gesture.js +0 -1
- package/dist/dev/ui/gesture/use-tap-gesture.js.map +1 -1
- package/dist/dev/ui/hooks/create-radio-options-hook.d.ts +11 -0
- package/dist/dev/ui/hooks/create-radio-options-hook.d.ts.map +1 -0
- package/dist/dev/ui/hooks/create-radio-options-hook.js +45 -0
- package/dist/dev/ui/hooks/create-radio-options-hook.js.map +1 -0
- package/dist/dev/ui/hooks/use-button.d.ts.map +1 -1
- package/dist/dev/ui/hooks/use-button.js +0 -1
- package/dist/dev/ui/hooks/use-button.js.map +1 -1
- package/dist/dev/ui/hooks/use-positioned-state.js +0 -1
- package/dist/dev/ui/hooks/use-positioned-state.js.map +1 -1
- package/dist/dev/ui/hooks/use-slider.d.ts +2 -1
- package/dist/dev/ui/hooks/use-slider.d.ts.map +1 -1
- package/dist/dev/ui/hooks/use-slider.js +49 -14
- package/dist/dev/ui/hooks/use-slider.js.map +1 -1
- package/dist/dev/ui/hotkey/hotkey.d.ts.map +1 -1
- package/dist/dev/ui/hotkey/hotkey.js +0 -1
- package/dist/dev/ui/hotkey/hotkey.js.map +1 -1
- package/dist/dev/ui/hotkey/use-hotkey-shortcut.d.ts.map +1 -1
- package/dist/dev/ui/hotkey/use-hotkey-shortcut.js +0 -1
- package/dist/dev/ui/hotkey/use-hotkey-shortcut.js.map +1 -1
- package/dist/dev/ui/hotkey/use-hotkey.d.ts.map +1 -1
- package/dist/dev/ui/hotkey/use-hotkey.js +0 -1
- package/dist/dev/ui/hotkey/use-hotkey.js.map +1 -1
- package/dist/{default/ui/input-indicators → dev/ui/input-indicator}/use-indicator-visibility.js +1 -2
- package/dist/dev/ui/input-indicator/use-indicator-visibility.js.map +1 -0
- package/dist/{default/ui/input-indicators → dev/ui/input-indicator}/use-input-action-subscription.js +1 -2
- package/dist/dev/ui/input-indicator/use-input-action-subscription.js.map +1 -0
- package/dist/dev/ui/{input-indicators → input-indicator}/use-input-indicator-root.js +1 -2
- package/dist/dev/ui/input-indicator/use-input-indicator-root.js.map +1 -0
- package/dist/{default/ui/input-indicators → dev/ui/input-indicator}/use-rendered-indicator-state.js +1 -2
- package/dist/dev/ui/input-indicator/use-rendered-indicator-state.js.map +1 -0
- package/dist/dev/ui/live-button/live-button.d.ts.map +1 -1
- package/dist/dev/ui/live-button/live-button.js +0 -1
- package/dist/dev/ui/live-button/live-button.js.map +1 -1
- package/dist/dev/ui/menu/context.d.ts +1 -10
- package/dist/dev/ui/menu/context.d.ts.map +1 -1
- package/dist/dev/ui/menu/context.js +1 -12
- package/dist/dev/ui/menu/context.js.map +1 -1
- package/dist/dev/ui/menu/index.parts.d.ts +3 -6
- package/dist/dev/ui/menu/index.parts.js +3 -9
- package/dist/dev/ui/menu/index.parts.js.map +1 -1
- package/dist/dev/ui/menu/menu-checkbox-item.d.ts.map +1 -1
- package/dist/dev/ui/menu/menu-checkbox-item.js +4 -2
- package/dist/dev/ui/menu/menu-checkbox-item.js.map +1 -1
- package/dist/dev/ui/menu/menu-content.d.ts.map +1 -1
- package/dist/dev/ui/menu/menu-content.js +78 -237
- package/dist/dev/ui/menu/menu-content.js.map +1 -1
- package/dist/dev/ui/menu/menu-group-label.d.ts.map +1 -1
- package/dist/dev/ui/menu/menu-group-label.js +0 -1
- package/dist/dev/ui/menu/menu-group-label.js.map +1 -1
- package/dist/dev/ui/menu/menu-group.d.ts.map +1 -1
- package/dist/dev/ui/menu/menu-group.js +0 -1
- package/dist/dev/ui/menu/menu-group.js.map +1 -1
- package/dist/dev/ui/menu/menu-item-indicator.d.ts.map +1 -1
- package/dist/dev/ui/menu/menu-item-indicator.js +0 -1
- package/dist/dev/ui/menu/menu-item-indicator.js.map +1 -1
- package/dist/dev/ui/menu/menu-item.d.ts +0 -3
- package/dist/dev/ui/menu/menu-item.d.ts.map +1 -1
- package/dist/dev/ui/menu/menu-item.js +11 -19
- package/dist/dev/ui/menu/menu-item.js.map +1 -1
- package/dist/dev/ui/menu/menu-keyboard.js +31 -0
- package/dist/dev/ui/menu/menu-keyboard.js.map +1 -0
- package/dist/dev/ui/menu/menu-radio-group.d.ts.map +1 -1
- package/dist/dev/ui/menu/menu-radio-group.js +0 -1
- package/dist/dev/ui/menu/menu-radio-group.js.map +1 -1
- package/dist/dev/ui/menu/menu-radio-item.d.ts.map +1 -1
- package/dist/dev/ui/menu/menu-radio-item.js +8 -7
- package/dist/dev/ui/menu/menu-radio-item.js.map +1 -1
- package/dist/dev/ui/menu/menu-root.d.ts.map +1 -1
- package/dist/dev/ui/menu/menu-root.js +46 -62
- package/dist/dev/ui/menu/menu-root.js.map +1 -1
- package/dist/dev/ui/menu/menu-separator.d.ts.map +1 -1
- package/dist/dev/ui/menu/menu-separator.js +0 -1
- package/dist/dev/ui/menu/menu-separator.js.map +1 -1
- package/dist/dev/ui/menu/menu-trigger.d.ts +5 -5
- package/dist/dev/ui/menu/menu-trigger.d.ts.map +1 -1
- package/dist/dev/ui/menu/menu-trigger.js +75 -98
- package/dist/dev/ui/menu/menu-trigger.js.map +1 -1
- package/dist/dev/ui/menu/use-menu-group.js +0 -1
- package/dist/dev/ui/menu/use-menu-group.js.map +1 -1
- package/dist/dev/ui/mute-button/mute-button.d.ts.map +1 -1
- package/dist/dev/ui/mute-button/mute-button.js +2 -2
- package/dist/dev/ui/mute-button/mute-button.js.map +1 -1
- package/dist/dev/ui/pip-button/pip-button.d.ts.map +1 -1
- package/dist/dev/ui/pip-button/pip-button.js +0 -1
- package/dist/dev/ui/pip-button/pip-button.js.map +1 -1
- package/dist/dev/ui/play-button/play-button.d.ts.map +1 -1
- package/dist/dev/ui/play-button/play-button.js +0 -1
- package/dist/dev/ui/play-button/play-button.js.map +1 -1
- package/dist/dev/ui/playback-rate/use-playback-rate-options.d.ts +6 -7
- package/dist/dev/ui/playback-rate/use-playback-rate-options.d.ts.map +1 -1
- package/dist/dev/ui/playback-rate/use-playback-rate-options.js +15 -27
- package/dist/dev/ui/playback-rate/use-playback-rate-options.js.map +1 -1
- package/dist/dev/ui/playback-rate-button/playback-rate-button.d.ts.map +1 -1
- package/dist/dev/ui/playback-rate-button/playback-rate-button.js +0 -1
- package/dist/dev/ui/playback-rate-button/playback-rate-button.js.map +1 -1
- package/dist/dev/ui/playback-rate-radio-group/index.d.ts +2 -0
- package/dist/dev/ui/playback-rate-radio-group/index.js +2 -0
- package/dist/dev/ui/playback-rate-radio-group/playback-rate-radio-group.d.ts +43 -0
- package/dist/dev/ui/playback-rate-radio-group/playback-rate-radio-group.d.ts.map +1 -0
- package/dist/dev/ui/playback-rate-radio-group/playback-rate-radio-group.js +64 -0
- package/dist/dev/ui/playback-rate-radio-group/playback-rate-radio-group.js.map +1 -0
- package/dist/dev/ui/popover/context.d.ts.map +1 -1
- package/dist/dev/ui/popover/context.js +0 -1
- package/dist/dev/ui/popover/context.js.map +1 -1
- package/dist/dev/ui/popover/popover-arrow.d.ts.map +1 -1
- package/dist/dev/ui/popover/popover-arrow.js +0 -1
- package/dist/dev/ui/popover/popover-arrow.js.map +1 -1
- package/dist/dev/ui/popover/popover-popup.d.ts.map +1 -1
- package/dist/dev/ui/popover/popover-popup.js +10 -81
- package/dist/dev/ui/popover/popover-popup.js.map +1 -1
- package/dist/dev/ui/popover/popover-root.d.ts.map +1 -1
- package/dist/dev/ui/popover/popover-root.js +2 -2
- package/dist/dev/ui/popover/popover-root.js.map +1 -1
- package/dist/dev/ui/popover/popover-trigger.d.ts.map +1 -1
- package/dist/dev/ui/popover/popover-trigger.js +4 -6
- package/dist/dev/ui/popover/popover-trigger.js.map +1 -1
- package/dist/dev/ui/popover/use-popup-position.js +33 -0
- package/dist/dev/ui/popover/use-popup-position.js.map +1 -0
- package/dist/dev/ui/poster/poster.d.ts.map +1 -1
- package/dist/dev/ui/poster/poster.js +8 -5
- package/dist/dev/ui/poster/poster.js.map +1 -1
- package/dist/dev/ui/quality/use-quality-options.d.ts +6 -8
- package/dist/dev/ui/quality/use-quality-options.d.ts.map +1 -1
- package/dist/dev/ui/quality/use-quality-options.js +10 -35
- package/dist/dev/ui/quality/use-quality-options.js.map +1 -1
- package/dist/dev/ui/quality-radio-group/index.d.ts +2 -0
- package/dist/dev/ui/quality-radio-group/index.js +2 -0
- package/dist/dev/ui/quality-radio-group/quality-radio-group.d.ts +44 -0
- package/dist/dev/ui/quality-radio-group/quality-radio-group.d.ts.map +1 -0
- package/dist/dev/ui/quality-radio-group/quality-radio-group.js +65 -0
- package/dist/dev/ui/quality-radio-group/quality-radio-group.js.map +1 -0
- package/dist/dev/ui/seek-button/seek-button.d.ts.map +1 -1
- package/dist/dev/ui/seek-button/seek-button.js +0 -1
- package/dist/dev/ui/seek-button/seek-button.js.map +1 -1
- package/dist/dev/ui/seek-indicator/context.js +0 -1
- package/dist/dev/ui/seek-indicator/context.js.map +1 -1
- package/dist/dev/ui/seek-indicator/seek-indicator-root.d.ts.map +1 -1
- package/dist/dev/ui/seek-indicator/seek-indicator-root.js +1 -2
- package/dist/dev/ui/seek-indicator/seek-indicator-root.js.map +1 -1
- package/dist/dev/ui/seek-indicator/seek-indicator-value.d.ts.map +1 -1
- package/dist/dev/ui/seek-indicator/seek-indicator-value.js +0 -1
- package/dist/dev/ui/seek-indicator/seek-indicator-value.js.map +1 -1
- package/dist/dev/ui/slider/context.js +7 -3
- package/dist/dev/ui/slider/context.js.map +1 -1
- package/dist/dev/ui/slider/slider-buffer.d.ts.map +1 -1
- package/dist/dev/ui/slider/slider-buffer.js +0 -1
- package/dist/dev/ui/slider/slider-buffer.js.map +1 -1
- package/dist/dev/ui/slider/slider-fill.d.ts.map +1 -1
- package/dist/dev/ui/slider/slider-fill.js +0 -1
- package/dist/dev/ui/slider/slider-fill.js.map +1 -1
- package/dist/dev/ui/slider/slider-preview.d.ts.map +1 -1
- package/dist/dev/ui/slider/slider-preview.js +2 -4
- package/dist/dev/ui/slider/slider-preview.js.map +1 -1
- package/dist/dev/ui/slider/slider-root.d.ts.map +1 -1
- package/dist/dev/ui/slider/slider-root.js +3 -2
- package/dist/dev/ui/slider/slider-root.js.map +1 -1
- package/dist/dev/ui/slider/slider-thumb.d.ts.map +1 -1
- package/dist/dev/ui/slider/slider-thumb.js +0 -1
- package/dist/dev/ui/slider/slider-thumb.js.map +1 -1
- package/dist/dev/ui/slider/slider-thumbnail.d.ts.map +1 -1
- package/dist/dev/ui/slider/slider-thumbnail.js +2 -3
- package/dist/dev/ui/slider/slider-thumbnail.js.map +1 -1
- package/dist/dev/ui/slider/slider-track.d.ts.map +1 -1
- package/dist/dev/ui/slider/slider-track.js +0 -1
- package/dist/dev/ui/slider/slider-track.js.map +1 -1
- package/dist/dev/ui/slider/slider-value.d.ts.map +1 -1
- package/dist/dev/ui/slider/slider-value.js +3 -3
- package/dist/dev/ui/slider/slider-value.js.map +1 -1
- package/dist/dev/ui/status-announcer/status-announcer.d.ts.map +1 -1
- package/dist/dev/ui/status-announcer/status-announcer.js +7 -5
- package/dist/dev/ui/status-announcer/status-announcer.js.map +1 -1
- package/dist/dev/ui/status-indicator/context.js +0 -1
- package/dist/dev/ui/status-indicator/context.js.map +1 -1
- package/dist/dev/ui/status-indicator/status-indicator-root.d.ts.map +1 -1
- package/dist/dev/ui/status-indicator/status-indicator-root.js +2 -3
- package/dist/dev/ui/status-indicator/status-indicator-root.js.map +1 -1
- package/dist/dev/ui/status-indicator/status-indicator-value.d.ts.map +1 -1
- package/dist/dev/ui/status-indicator/status-indicator-value.js +0 -1
- package/dist/dev/ui/status-indicator/status-indicator-value.js.map +1 -1
- package/dist/dev/ui/thumbnail/thumbnail.d.ts.map +1 -1
- package/dist/dev/ui/thumbnail/thumbnail.js +0 -1
- package/dist/dev/ui/thumbnail/thumbnail.js.map +1 -1
- package/dist/dev/ui/time/time-group.d.ts.map +1 -1
- package/dist/dev/ui/time/time-group.js +0 -1
- package/dist/dev/ui/time/time-group.js.map +1 -1
- package/dist/dev/ui/time/time-separator.d.ts.map +1 -1
- package/dist/dev/ui/time/time-separator.js +0 -1
- package/dist/dev/ui/time/time-separator.js.map +1 -1
- package/dist/dev/ui/time/time-value.d.ts.map +1 -1
- package/dist/dev/ui/time/time-value.js +13 -6
- package/dist/dev/ui/time/time-value.js.map +1 -1
- package/dist/dev/ui/time-slider/index.parts.d.ts +4 -2
- package/dist/dev/ui/time-slider/index.parts.js +5 -1
- package/dist/dev/ui/time-slider/index.parts.js.map +1 -1
- package/dist/dev/ui/time-slider/time-slider-chapters/slider-segments.js +60 -0
- package/dist/dev/ui/time-slider/time-slider-chapters/slider-segments.js.map +1 -0
- package/dist/dev/ui/time-slider/time-slider-chapters/time-slider-chapter-title.d.ts +19 -0
- package/dist/dev/ui/time-slider/time-slider-chapters/time-slider-chapter-title.d.ts.map +1 -0
- package/dist/dev/ui/time-slider/time-slider-chapters/time-slider-chapter-title.js +45 -0
- package/dist/dev/ui/time-slider/time-slider-chapters/time-slider-chapter-title.js.map +1 -0
- package/dist/dev/ui/time-slider/time-slider-chapters/time-slider-chapters.d.ts +22 -0
- package/dist/dev/ui/time-slider/time-slider-chapters/time-slider-chapters.d.ts.map +1 -0
- package/dist/dev/ui/time-slider/time-slider-chapters/time-slider-chapters.js +51 -0
- package/dist/dev/ui/time-slider/time-slider-chapters/time-slider-chapters.js.map +1 -0
- package/dist/dev/ui/time-slider/time-slider-root.d.ts.map +1 -1
- package/dist/dev/ui/time-slider/time-slider-root.js +6 -5
- package/dist/dev/ui/time-slider/time-slider-root.js.map +1 -1
- package/dist/dev/ui/tooltip/context.d.ts.map +1 -1
- package/dist/dev/ui/tooltip/context.js +0 -1
- package/dist/dev/ui/tooltip/context.js.map +1 -1
- package/dist/dev/ui/tooltip/group-context.js +0 -1
- package/dist/dev/ui/tooltip/group-context.js.map +1 -1
- package/dist/dev/ui/tooltip/tooltip-arrow.d.ts.map +1 -1
- package/dist/dev/ui/tooltip/tooltip-arrow.js +0 -1
- package/dist/dev/ui/tooltip/tooltip-arrow.js.map +1 -1
- package/dist/dev/ui/tooltip/tooltip-label.d.ts.map +1 -1
- package/dist/dev/ui/tooltip/tooltip-label.js +0 -1
- package/dist/dev/ui/tooltip/tooltip-label.js.map +1 -1
- package/dist/dev/ui/tooltip/tooltip-popup.d.ts.map +1 -1
- package/dist/dev/ui/tooltip/tooltip-popup.js +13 -83
- package/dist/dev/ui/tooltip/tooltip-popup.js.map +1 -1
- package/dist/dev/ui/tooltip/tooltip-provider.d.ts.map +1 -1
- package/dist/dev/ui/tooltip/tooltip-provider.js +0 -1
- package/dist/dev/ui/tooltip/tooltip-provider.js.map +1 -1
- package/dist/dev/ui/tooltip/tooltip-root.d.ts.map +1 -1
- package/dist/dev/ui/tooltip/tooltip-root.js +5 -2
- package/dist/dev/ui/tooltip/tooltip-root.js.map +1 -1
- package/dist/dev/ui/tooltip/tooltip-shortcut.d.ts.map +1 -1
- package/dist/dev/ui/tooltip/tooltip-shortcut.js +0 -1
- package/dist/dev/ui/tooltip/tooltip-shortcut.js.map +1 -1
- package/dist/dev/ui/tooltip/tooltip-trigger.d.ts.map +1 -1
- package/dist/dev/ui/tooltip/tooltip-trigger.js +2 -5
- package/dist/dev/ui/tooltip/tooltip-trigger.js.map +1 -1
- package/dist/dev/ui/volume-indicator/context.js +0 -1
- package/dist/dev/ui/volume-indicator/context.js.map +1 -1
- package/dist/dev/ui/volume-indicator/volume-indicator-fill.d.ts.map +1 -1
- package/dist/dev/ui/volume-indicator/volume-indicator-fill.js +0 -1
- package/dist/dev/ui/volume-indicator/volume-indicator-fill.js.map +1 -1
- package/dist/dev/ui/volume-indicator/volume-indicator-root.d.ts.map +1 -1
- package/dist/dev/ui/volume-indicator/volume-indicator-root.js +1 -2
- package/dist/dev/ui/volume-indicator/volume-indicator-root.js.map +1 -1
- package/dist/dev/ui/volume-indicator/volume-indicator-value.d.ts.map +1 -1
- package/dist/dev/ui/volume-indicator/volume-indicator-value.js +0 -1
- package/dist/dev/ui/volume-indicator/volume-indicator-value.js.map +1 -1
- package/dist/dev/ui/volume-slider/volume-slider-root.d.ts.map +1 -1
- package/dist/dev/ui/volume-slider/volume-slider-root.js +10 -5
- package/dist/dev/ui/volume-slider/volume-slider-root.js.map +1 -1
- package/dist/dev/utils/merge-props.d.ts.map +1 -1
- package/dist/dev/utils/merge-props.js +0 -1
- package/dist/dev/utils/merge-props.js.map +1 -1
- package/dist/dev/utils/use-attach-iframe.js +0 -1
- package/dist/dev/utils/use-attach-iframe.js.map +1 -1
- package/dist/dev/utils/use-attach-media.d.ts.map +1 -1
- package/dist/dev/utils/use-attach-media.js +0 -1
- package/dist/dev/utils/use-attach-media.js.map +1 -1
- package/dist/dev/utils/use-composed-refs.d.ts.map +1 -1
- package/dist/dev/utils/use-composed-refs.js +0 -1
- package/dist/dev/utils/use-composed-refs.js.map +1 -1
- package/dist/dev/utils/use-destroy.d.ts.map +1 -1
- package/dist/dev/utils/use-destroy.js +0 -1
- package/dist/dev/utils/use-destroy.js.map +1 -1
- package/dist/dev/utils/use-force-render.js +0 -1
- package/dist/dev/utils/use-force-render.js.map +1 -1
- package/dist/dev/utils/use-latest-ref.d.ts.map +1 -1
- package/dist/dev/utils/use-latest-ref.js +0 -1
- package/dist/dev/utils/use-latest-ref.js.map +1 -1
- package/dist/dev/utils/use-media-component.d.ts.map +1 -1
- package/dist/dev/utils/use-media-component.js +0 -1
- package/dist/dev/utils/use-media-component.js.map +1 -1
- package/dist/dev/utils/use-media-instance.d.ts.map +1 -1
- package/dist/dev/utils/use-media-instance.js +0 -1
- package/dist/dev/utils/use-media-instance.js.map +1 -1
- package/dist/dev/utils/use-render.d.ts.map +1 -1
- package/dist/dev/utils/use-render.js +0 -1
- package/dist/dev/utils/use-render.js.map +1 -1
- package/dist/dev/utils/use-safe-id.js +0 -1
- package/dist/dev/utils/use-safe-id.js.map +1 -1
- package/docs/README.md +1 -1
- package/docs/concepts/cast.md +6 -6
- package/docs/concepts/features.md +11 -8
- package/docs/concepts/i18n.md +16 -26
- package/docs/concepts/media-sources.md +461 -0
- package/docs/concepts/mux-data.md +9 -7
- package/docs/concepts/overview.md +15 -18
- package/docs/concepts/presets.md +18 -19
- package/docs/concepts/skins.md +868 -862
- package/docs/concepts/ui-components.md +3 -3
- package/docs/concepts/why-videojs.md +4 -4
- package/docs/how-to/build-your-own-component.md +8 -6
- package/docs/how-to/customize-skins.md +2679 -2369
- package/docs/how-to/i18n-override-translations.md +3 -3
- package/docs/how-to/i18n-register-locale.md +3 -3
- package/docs/how-to/i18n-ssr.md +3 -3
- package/docs/how-to/i18n-switch-locale.md +3 -3
- package/docs/how-to/installation.md +3 -8
- package/docs/how-to/migrate-from-media-chrome.md +412 -0
- package/docs/how-to/migrate-from-mux-player.md +551 -0
- package/docs/how-to/migrate-from-plyr.md +385 -0
- package/docs/how-to/migrate-from-video-js-8.md +594 -0
- package/docs/llms.txt +51 -39
- package/docs/reference/airplay-button.md +6 -6
- package/docs/reference/audio-track-radio-group.md +198 -29
- package/docs/reference/buffering-indicator.md +6 -6
- package/docs/reference/captions-button.md +6 -6
- package/docs/reference/captions-radio-group.md +206 -29
- package/docs/reference/cast-button.md +6 -6
- package/docs/reference/controls.md +6 -6
- package/docs/reference/create-player.md +22 -31
- package/docs/reference/create-translator.md +1 -1
- package/docs/reference/dash-video.md +14 -0
- package/docs/reference/feature-controls.md +13 -1
- package/docs/reference/feature-fullscreen.md +1 -1
- package/docs/reference/feature-orientation-lock.md +2 -2
- package/docs/reference/feature-text-tracks.md +3 -1
- package/docs/reference/feature-volume.md +14 -2
- package/docs/reference/fullscreen-button.md +6 -6
- package/docs/reference/get-i18n-translations.md +1 -1
- package/docs/reference/has-registered-locale.md +1 -1
- package/docs/reference/{simple-hls-audio-only.md → hls-audio.md} +5 -5
- package/docs/reference/{simple-hls-video.md → hls-video.md} +4 -4
- package/docs/reference/hlsjs-video.md +17 -9
- package/docs/reference/menu.md +65 -157
- package/docs/reference/mute-button.md +94 -18
- package/docs/reference/mux-audio.md +1 -107
- package/docs/reference/mux-video.md +1 -107
- package/docs/reference/native-hls-video.md +24 -0
- package/docs/reference/pip-button.md +6 -6
- package/docs/reference/play-button.md +6 -6
- package/docs/reference/playback-rate-button.md +6 -6
- package/docs/reference/playback-rate-radio-group.md +200 -29
- package/docs/reference/player-container.md +25 -25
- package/docs/reference/player-provider.md +24 -24
- package/docs/reference/popover.md +6 -6
- package/docs/reference/poster.md +6 -6
- package/docs/reference/quality-radio-group.md +200 -31
- package/docs/reference/register-i18n.md +1 -1
- package/docs/reference/seek-button.md +6 -6
- package/docs/reference/slider.md +1 -1
- package/docs/reference/thumbnail.md +7 -7
- package/docs/reference/time-slider.md +251 -7
- package/docs/reference/time.md +78 -34
- package/docs/reference/translation-phrases.md +27 -3
- package/docs/reference/use-container-attach.md +5 -5
- package/docs/reference/use-locale.md +1 -1
- package/docs/reference/use-media-attach.md +2 -2
- package/docs/reference/use-media.md +16 -10
- package/docs/reference/use-player-context.md +2 -7
- package/docs/reference/use-player.md +25 -19
- package/docs/reference/use-store.md +15 -15
- package/docs/reference/volume-slider.md +13 -11
- package/package.json +28 -8
- package/dist/default/media/mux-audio/media.js.map +0 -1
- package/dist/default/media/mux-video/media.js +0 -56
- package/dist/default/media/mux-video/media.js.map +0 -1
- package/dist/default/media/simple-hls-audio-only/index.js +0 -2
- package/dist/default/media/simple-hls-audio-only/media.js +0 -22
- package/dist/default/media/simple-hls-audio-only/media.js.map +0 -1
- package/dist/default/media/simple-hls-video/index.js +0 -2
- package/dist/default/media/simple-hls-video/media.js.map +0 -1
- package/dist/default/skins/dist/default/default/tailwind/components/input-feedback.js +0 -40
- package/dist/default/skins/dist/default/default/tailwind/components/input-feedback.js.map +0 -1
- package/dist/default/skins/dist/default/default/tailwind/components/root.js +0 -8
- package/dist/default/skins/dist/default/default/tailwind/components/root.js.map +0 -1
- package/dist/default/skins/dist/default/minimal/tailwind/components/input-feedback.js +0 -41
- package/dist/default/skins/dist/default/minimal/tailwind/components/input-feedback.js.map +0 -1
- package/dist/default/skins/dist/default/minimal/tailwind/components/root.js +0 -8
- package/dist/default/skins/dist/default/minimal/tailwind/components/root.js.map +0 -1
- package/dist/default/tailwind.css +0 -42
- package/dist/default/ui/input-indicators/use-indicator-visibility.js.map +0 -1
- package/dist/default/ui/input-indicators/use-input-action-subscription.js.map +0 -1
- package/dist/default/ui/input-indicators/use-input-indicator-root.js.map +0 -1
- package/dist/default/ui/input-indicators/use-rendered-indicator-state.js.map +0 -1
- package/dist/default/ui/menu/menu-back.js +0 -34
- package/dist/default/ui/menu/menu-back.js.map +0 -1
- package/dist/default/ui/menu/menu-item-setting-provider.js +0 -77
- package/dist/default/ui/menu/menu-item-setting-provider.js.map +0 -1
- package/dist/default/ui/menu/menu-item-value.js +0 -28
- package/dist/default/ui/menu/menu-item-value.js.map +0 -1
- package/dist/default/ui/menu/menu-view.js +0 -23
- package/dist/default/ui/menu/menu-view.js.map +0 -1
- package/dist/dev/media/mux-audio/media.d.ts.map +0 -1
- package/dist/dev/media/mux-audio/media.js.map +0 -1
- package/dist/dev/media/mux-video/media.d.ts.map +0 -1
- package/dist/dev/media/mux-video/media.js +0 -56
- package/dist/dev/media/mux-video/media.js.map +0 -1
- package/dist/dev/media/simple-hls-audio-only/index.d.ts +0 -2
- package/dist/dev/media/simple-hls-audio-only/index.js +0 -2
- package/dist/dev/media/simple-hls-audio-only/media.d.ts +0 -13
- package/dist/dev/media/simple-hls-audio-only/media.d.ts.map +0 -1
- package/dist/dev/media/simple-hls-audio-only/media.js +0 -22
- package/dist/dev/media/simple-hls-audio-only/media.js.map +0 -1
- package/dist/dev/media/simple-hls-video/index.d.ts +0 -2
- package/dist/dev/media/simple-hls-video/index.js +0 -2
- package/dist/dev/media/simple-hls-video/media.d.ts +0 -13
- package/dist/dev/media/simple-hls-video/media.d.ts.map +0 -1
- package/dist/dev/media/simple-hls-video/media.js.map +0 -1
- package/dist/dev/skins/dist/default/default/tailwind/components/input-feedback.js +0 -40
- package/dist/dev/skins/dist/default/default/tailwind/components/input-feedback.js.map +0 -1
- package/dist/dev/skins/dist/default/default/tailwind/components/root.js +0 -8
- package/dist/dev/skins/dist/default/default/tailwind/components/root.js.map +0 -1
- package/dist/dev/skins/dist/default/minimal/tailwind/components/input-feedback.js +0 -41
- package/dist/dev/skins/dist/default/minimal/tailwind/components/input-feedback.js.map +0 -1
- package/dist/dev/skins/dist/default/minimal/tailwind/components/root.js +0 -8
- package/dist/dev/skins/dist/default/minimal/tailwind/components/root.js.map +0 -1
- package/dist/dev/tailwind.css +0 -42
- package/dist/dev/ui/input-indicators/use-indicator-visibility.js.map +0 -1
- package/dist/dev/ui/input-indicators/use-input-action-subscription.js.map +0 -1
- package/dist/dev/ui/input-indicators/use-input-indicator-root.js.map +0 -1
- package/dist/dev/ui/input-indicators/use-rendered-indicator-state.js.map +0 -1
- package/dist/dev/ui/menu/menu-back.d.ts +0 -17
- package/dist/dev/ui/menu/menu-back.d.ts.map +0 -1
- package/dist/dev/ui/menu/menu-back.js +0 -34
- package/dist/dev/ui/menu/menu-back.js.map +0 -1
- package/dist/dev/ui/menu/menu-item-setting-provider.js +0 -77
- package/dist/dev/ui/menu/menu-item-setting-provider.js.map +0 -1
- package/dist/dev/ui/menu/menu-item-type.d.ts +0 -5
- package/dist/dev/ui/menu/menu-item-type.d.ts.map +0 -1
- package/dist/dev/ui/menu/menu-item-value.d.ts +0 -12
- package/dist/dev/ui/menu/menu-item-value.d.ts.map +0 -1
- package/dist/dev/ui/menu/menu-item-value.js +0 -28
- package/dist/dev/ui/menu/menu-item-value.js.map +0 -1
- package/dist/dev/ui/menu/menu-view.d.ts +0 -13
- package/dist/dev/ui/menu/menu-view.d.ts.map +0 -1
- package/dist/dev/ui/menu/menu-view.js +0 -23
- package/dist/dev/ui/menu/menu-view.js.map +0 -1
|
@@ -0,0 +1,38 @@
|
|
|
1
|
+
"use client";
|
|
2
|
+
import { useComposedRefs } from "../../utils/use-composed-refs.js";
|
|
3
|
+
import { useMediaInstance } from "../../utils/use-media-instance.js";
|
|
4
|
+
import { useAttachIframe } from "../../utils/use-attach-iframe.js";
|
|
5
|
+
import { useSyncProps } from "../../utils/use-sync-props.js";
|
|
6
|
+
import { forwardRef, useState } from "react";
|
|
7
|
+
import { jsx } from "react/jsx-runtime";
|
|
8
|
+
import { CloudflareMedia, buildCloudflareIframeSrc, cloudflareMediaDefaultProps } from "@videojs/media/dom/cloudflare";
|
|
9
|
+
//#region src/media/cloudflare-video/media.tsx
|
|
10
|
+
const CloudflareVideo = forwardRef(function CloudflareVideo({ children, ...rawProps }, ref) {
|
|
11
|
+
const media = useMediaInstance(CloudflareMedia);
|
|
12
|
+
const props = { ...rawProps };
|
|
13
|
+
const composedRef = useComposedRefs(useAttachIframe(media), ref);
|
|
14
|
+
const [initialSrc] = useState(() => buildCloudflareIframeSrc(props.src || props.source?.src || "", {
|
|
15
|
+
...cloudflareMediaDefaultProps,
|
|
16
|
+
...props,
|
|
17
|
+
defaultMuted: !!(props.defaultMuted || props.muted)
|
|
18
|
+
}));
|
|
19
|
+
const iframeProps = useSyncProps(media, props, cloudflareMediaDefaultProps);
|
|
20
|
+
return /* @__PURE__ */ jsx("iframe", {
|
|
21
|
+
title: "Cloudflare Stream video player",
|
|
22
|
+
src: initialSrc || void 0,
|
|
23
|
+
"data-cross-origin-frame": true,
|
|
24
|
+
allow: "accelerometer; fullscreen; autoplay; encrypted-media; gyroscope; picture-in-picture",
|
|
25
|
+
allowFullScreen: true,
|
|
26
|
+
frameBorder: 0,
|
|
27
|
+
width: "100%",
|
|
28
|
+
height: "100%",
|
|
29
|
+
referrerPolicy: props.source?.engine?.cloudflare?.referrerPolicy,
|
|
30
|
+
...iframeProps,
|
|
31
|
+
ref: composedRef,
|
|
32
|
+
children
|
|
33
|
+
});
|
|
34
|
+
});
|
|
35
|
+
//#endregion
|
|
36
|
+
export { CloudflareVideo };
|
|
37
|
+
|
|
38
|
+
//# sourceMappingURL=media.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"media.js","names":[],"sources":["../../../../src/media/cloudflare-video/media.tsx"],"sourcesContent":["'use client';\n\nimport type { CloudflareMediaProps } from '@videojs/media/dom/cloudflare';\nimport { buildCloudflareIframeSrc, CloudflareMedia, cloudflareMediaDefaultProps } from '@videojs/media/dom/cloudflare';\nimport type { ReactNode } from 'react';\nimport { forwardRef, useState } from 'react';\nimport { useAttachIframe } from '../../utils/use-attach-iframe';\nimport { useComposedRefs } from '../../utils/use-composed-refs';\nimport { useMediaInstance } from '../../utils/use-media-instance';\nimport { useSyncProps } from '../../utils/use-sync-props';\n\nexport interface CloudflareVideoProps extends Partial<CloudflareMediaProps> {\n children?: ReactNode;\n}\n\nexport const CloudflareVideo = forwardRef<HTMLIFrameElement, CloudflareVideoProps>(function CloudflareVideo(\n { children, ...rawProps },\n ref\n) {\n const media = useMediaInstance(CloudflareMedia);\n const props: Partial<CloudflareMediaProps> & Record<string, unknown> = { ...rawProps };\n const attachRef = useAttachIframe(media);\n const composedRef = useComposedRefs(attachRef, ref);\n const [initialSrc] = useState(() =>\n // `source.src` is the only other way to name a video, so honor it when `src` is absent.\n buildCloudflareIframeSrc(props.src || props.source?.src || '', {\n ...cloudflareMediaDefaultProps,\n ...props,\n // The embed reads mute once, out of the URL it is rendered with, and either\n // prop says to start muted. Leaving `muted` out of the URL would leave a\n // muted autoplay blocked by the browser, since the embed comes up audible.\n defaultMuted: !!(props.defaultMuted || props.muted),\n })\n );\n const iframeProps = useSyncProps<CloudflareMediaProps, Record<string, unknown>>(\n media,\n props,\n cloudflareMediaDefaultProps\n );\n\n return (\n <iframe\n title=\"Cloudflare Stream video player\"\n // Empty means there is no embed to point at yet; React warns about `src=\"\"`,\n // and the media builds the URL itself once a source resolves.\n src={initialSrc || undefined}\n data-cross-origin-frame\n allow=\"accelerometer; fullscreen; autoplay; encrypted-media; gyroscope; picture-in-picture\"\n allowFullScreen\n frameBorder={0}\n width=\"100%\"\n height=\"100%\"\n referrerPolicy={props.source?.engine?.cloudflare?.referrerPolicy}\n {...iframeProps}\n ref={composedRef}\n >\n {children}\n </iframe>\n );\n});\n\nexport namespace CloudflareVideo {\n export type Props = CloudflareVideoProps;\n}\n"],"mappings":";;;;;;;;;AAeA,MAAa,kBAAkB,WAAoD,SAAS,gBAC1F,EAAE,UAAU,GAAG,YACf,KACA;CACA,MAAM,QAAQ,iBAAiB,eAAe;CAC9C,MAAM,QAAiE,EAAE,GAAG,SAAS;CAErF,MAAM,cAAc,gBADF,gBAAgB,KACU,GAAG,GAAG;CAClD,MAAM,CAAC,cAAc,eAEnB,yBAAyB,MAAM,OAAO,MAAM,QAAQ,OAAO,IAAI;EAC7D,GAAG;EACH,GAAG;EAIH,cAAc,CAAC,EAAE,MAAM,gBAAgB,MAAM;CAC/C,CAAC,CACH;CACA,MAAM,cAAc,aAClB,OACA,OACA,2BACF;CAEA,OACE,oBAAC,UAAD;EACE,OAAM;EAGN,KAAK,cAAc,KAAA;EACnB,2BAAA;EACA,OAAM;EACN,iBAAA;EACA,aAAa;EACb,OAAM;EACN,QAAO;EACP,gBAAgB,MAAM,QAAQ,QAAQ,YAAY;EAClD,GAAI;EACJ,KAAK;EAEJ;CACK,CAAA;AAEZ,CAAC"}
|
|
@@ -6,16 +6,16 @@ import { GoogleCast, googleCastDefaultProps } from "@videojs/media/dom/google-ca
|
|
|
6
6
|
/**
|
|
7
7
|
* Adds Google Cast support to the surrounding player's media.
|
|
8
8
|
*
|
|
9
|
-
* Renders nothing — place it inside the
|
|
9
|
+
* Renders nothing — place it inside the Player as a sibling of the
|
|
10
10
|
* media component (e.g. `<HlsJsVideo />`) and it registers a `GoogleCast`
|
|
11
11
|
* media component with the active media.
|
|
12
12
|
*
|
|
13
13
|
* @example
|
|
14
14
|
* ```tsx
|
|
15
|
-
* <Player
|
|
15
|
+
* <Player>
|
|
16
16
|
* <HlsJsVideo src="https://example.com/stream.m3u8" />
|
|
17
17
|
* <GoogleCast receiver="YOUR_APP_ID" />
|
|
18
|
-
* </Player
|
|
18
|
+
* </Player>
|
|
19
19
|
* ```
|
|
20
20
|
*/
|
|
21
21
|
function GoogleCast$1(props) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"google-cast.js","names":["GoogleCast","GoogleCastComponent"],"sources":["../../../../src/media/google-cast/google-cast.tsx"],"sourcesContent":["'use client';\n\nimport type { GoogleCastProps as GoogleCastComponentProps } from '@videojs/media/dom/google-cast';\nimport { GoogleCast as GoogleCastComponent, googleCastDefaultProps } from '@videojs/media/dom/google-cast';\nimport type { ReactNode } from 'react';\n\nimport { useMediaComponent } from '../../utils/use-media-component';\nimport { useSyncProps } from '../../utils/use-sync-props';\n\nexport type GoogleCastProps = Partial<GoogleCastComponentProps>;\n\n/**\n * Adds Google Cast support to the surrounding player's media.\n *\n * Renders nothing — place it inside the
|
|
1
|
+
{"version":3,"file":"google-cast.js","names":["GoogleCast","GoogleCastComponent"],"sources":["../../../../src/media/google-cast/google-cast.tsx"],"sourcesContent":["'use client';\n\nimport type { GoogleCastProps as GoogleCastComponentProps } from '@videojs/media/dom/google-cast';\nimport { GoogleCast as GoogleCastComponent, googleCastDefaultProps } from '@videojs/media/dom/google-cast';\nimport type { ReactNode } from 'react';\n\nimport { useMediaComponent } from '../../utils/use-media-component';\nimport { useSyncProps } from '../../utils/use-sync-props';\n\nexport type GoogleCastProps = Partial<GoogleCastComponentProps>;\n\n/**\n * Adds Google Cast support to the surrounding player's media.\n *\n * Renders nothing — place it inside the Player as a sibling of the\n * media component (e.g. `<HlsJsVideo />`) and it registers a `GoogleCast`\n * media component with the active media.\n *\n * @example\n * ```tsx\n * <Player>\n * <HlsJsVideo src=\"https://example.com/stream.m3u8\" />\n * <GoogleCast receiver=\"YOUR_APP_ID\" />\n * </Player>\n * ```\n */\nexport function GoogleCast(props: GoogleCastProps): ReactNode {\n const component = useMediaComponent(GoogleCastComponent);\n\n useSyncProps(component, props, googleCastDefaultProps);\n\n return null;\n}\n\nexport namespace GoogleCast {\n export type Props = GoogleCastProps;\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;;AA0BA,SAAgBA,aAAW,OAAmC;CAG5D,aAFkB,kBAAkBC,UAEf,GAAG,OAAO,sBAAsB;CAErD,OAAO;AACT"}
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
"use client";
|
|
2
|
+
import { useComposedRefs } from "../../utils/use-composed-refs.js";
|
|
3
|
+
import { useAttachMedia } from "../../utils/use-attach-media.js";
|
|
4
|
+
import { useMediaInstance } from "../../utils/use-media-instance.js";
|
|
5
|
+
import { useSyncProps } from "../../utils/use-sync-props.js";
|
|
6
|
+
import { forwardRef } from "react";
|
|
7
|
+
import { jsx } from "react/jsx-runtime";
|
|
8
|
+
import { HlsAudioMedia, hlsAudioMediaDefaultProps } from "@videojs/spf/hls-audio";
|
|
9
|
+
//#region src/media/hls-audio/media.tsx
|
|
10
|
+
const HlsAudio = forwardRef(function HlsAudio({ children, ...props }, ref) {
|
|
11
|
+
const media = useMediaInstance(HlsAudioMedia);
|
|
12
|
+
return /* @__PURE__ */ jsx("audio", {
|
|
13
|
+
ref: useComposedRefs(useAttachMedia(media), ref),
|
|
14
|
+
...useSyncProps(media, props, hlsAudioMediaDefaultProps),
|
|
15
|
+
children
|
|
16
|
+
});
|
|
17
|
+
});
|
|
18
|
+
//#endregion
|
|
19
|
+
export { HlsAudio };
|
|
20
|
+
|
|
21
|
+
//# sourceMappingURL=media.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"media.js","names":[],"sources":["../../../../src/media/hls-audio/media.tsx"],"sourcesContent":["'use client';\n\nimport type { HlsAudioMediaProps } from '@videojs/spf/hls-audio';\nimport { HlsAudioMedia, hlsAudioMediaDefaultProps } from '@videojs/spf/hls-audio';\nimport type { AudioHTMLAttributes, ReactNode } from 'react';\nimport { forwardRef } from 'react';\nimport { useAttachMedia } from '../../utils/use-attach-media';\nimport { useComposedRefs } from '../../utils/use-composed-refs';\nimport { useMediaInstance } from '../../utils/use-media-instance';\nimport { useSyncProps } from '../../utils/use-sync-props';\n\nexport interface HlsAudioProps\n extends Omit<AudioHTMLAttributes<HTMLAudioElement>, keyof HlsAudioMediaProps>,\n Partial<HlsAudioMediaProps> {\n children?: ReactNode;\n}\n\nexport const HlsAudio = forwardRef<HTMLAudioElement, HlsAudioProps>(function HlsAudio({ children, ...props }, ref) {\n const media = useMediaInstance(HlsAudioMedia);\n const attachRef = useAttachMedia(media);\n const composedRef = useComposedRefs(attachRef, ref);\n const htmlProps = useSyncProps(media, props, hlsAudioMediaDefaultProps);\n\n return (\n <audio ref={composedRef} {...htmlProps}>\n {children}\n </audio>\n );\n});\n\nexport namespace HlsAudio {\n export type Props = HlsAudioProps;\n}\n"],"mappings":";;;;;;;;;AAiBA,MAAa,WAAW,WAA4C,SAAS,SAAS,EAAE,UAAU,GAAG,SAAS,KAAK;CACjH,MAAM,QAAQ,iBAAiB,aAAa;CAK5C,OACE,oBAAC,SAAD;EAAO,KAJW,gBADF,eAAe,KACW,GAAG,GAIvB;EAAG,GAHT,aAAa,OAAO,OAAO,yBAGN;EAClC;CACI,CAAA;AAEX,CAAC"}
|
|
@@ -0,0 +1,45 @@
|
|
|
1
|
+
"use client";
|
|
2
|
+
import { useComposedRefs } from "../../utils/use-composed-refs.js";
|
|
3
|
+
import { useAttachMedia } from "../../utils/use-attach-media.js";
|
|
4
|
+
import { useMediaInstance } from "../../utils/use-media-instance.js";
|
|
5
|
+
import { useSyncProps } from "../../utils/use-sync-props.js";
|
|
6
|
+
import { forwardRef } from "react";
|
|
7
|
+
import { jsx } from "react/jsx-runtime";
|
|
8
|
+
import { HlsBackgroundVideoMedia, hlsBackgroundVideoMediaDefaultProps } from "@videojs/spf/hls-background-video";
|
|
9
|
+
//#region src/media/hls-background-video/media.tsx
|
|
10
|
+
/**
|
|
11
|
+
* A muted, looping, chrome-less video over the SPF background-video engine — the
|
|
12
|
+
* React counterpart to `<hls-background-video>`, and the replacement for the
|
|
13
|
+
* standalone `mux-background-video` package's component.
|
|
14
|
+
*
|
|
15
|
+
* `src` is an HLS URL and the whole surface. Capping which rendition is fetched
|
|
16
|
+
* is a param on that URL (`?max_resolution=720p` on a Mux stream, for one) rather
|
|
17
|
+
* than a prop, which keeps the renditions it excludes out of the manifest instead
|
|
18
|
+
* of merely unpicked.
|
|
19
|
+
*
|
|
20
|
+
* There is no structured Mux `source`: playback-ID identity, poster, and
|
|
21
|
+
* storyboard belong to `MuxVideo`, since none of them mean anything without
|
|
22
|
+
* controls to hang them on.
|
|
23
|
+
*
|
|
24
|
+
* `MuxBackgroundVideo` is this same component under the name the package it
|
|
25
|
+
* replaces used — an alias, not a variant.
|
|
26
|
+
*/
|
|
27
|
+
const HlsBackgroundVideo = forwardRef(function HlsBackgroundVideo({ children, ...props }, ref) {
|
|
28
|
+
const media = useMediaInstance(HlsBackgroundVideoMedia);
|
|
29
|
+
const composedRef = useComposedRefs(useAttachMedia(media), ref);
|
|
30
|
+
return /* @__PURE__ */ jsx("video", {
|
|
31
|
+
...useSyncProps(media, props, hlsBackgroundVideoMediaDefaultProps),
|
|
32
|
+
ref: composedRef,
|
|
33
|
+
muted: true,
|
|
34
|
+
autoPlay: true,
|
|
35
|
+
loop: true,
|
|
36
|
+
playsInline: true,
|
|
37
|
+
disableRemotePlayback: true,
|
|
38
|
+
disablePictureInPicture: true,
|
|
39
|
+
children
|
|
40
|
+
});
|
|
41
|
+
});
|
|
42
|
+
//#endregion
|
|
43
|
+
export { HlsBackgroundVideo };
|
|
44
|
+
|
|
45
|
+
//# sourceMappingURL=media.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"media.js","names":[],"sources":["../../../../src/media/hls-background-video/media.tsx"],"sourcesContent":["'use client';\n\nimport {\n HlsBackgroundVideoMedia,\n type HlsBackgroundVideoMediaProps,\n hlsBackgroundVideoMediaDefaultProps,\n} from '@videojs/spf/hls-background-video';\nimport type { VideoHTMLAttributes } from 'react';\nimport { forwardRef } from 'react';\nimport { useAttachMedia } from '../../utils/use-attach-media';\nimport { useComposedRefs } from '../../utils/use-composed-refs';\nimport { useMediaInstance } from '../../utils/use-media-instance';\nimport { useSyncProps } from '../../utils/use-sync-props';\n\n// `src` is the only prop the Media owns, taken from the adapter rather than\n// restated here so the two can't disagree about what the surface is.\nexport interface HlsBackgroundVideoProps\n extends Omit<VideoHTMLAttributes<HTMLVideoElement>, keyof HlsBackgroundVideoMediaProps>,\n Partial<HlsBackgroundVideoMediaProps> {}\n\n/**\n * A muted, looping, chrome-less video over the SPF background-video engine — the\n * React counterpart to `<hls-background-video>`, and the replacement for the\n * standalone `mux-background-video` package's component.\n *\n * `src` is an HLS URL and the whole surface. Capping which rendition is fetched\n * is a param on that URL (`?max_resolution=720p` on a Mux stream, for one) rather\n * than a prop, which keeps the renditions it excludes out of the manifest instead\n * of merely unpicked.\n *\n * There is no structured Mux `source`: playback-ID identity, poster, and\n * storyboard belong to `MuxVideo`, since none of them mean anything without\n * controls to hang them on.\n *\n * `MuxBackgroundVideo` is this same component under the name the package it\n * replaces used — an alias, not a variant.\n */\nexport const HlsBackgroundVideo = forwardRef<HTMLVideoElement, HlsBackgroundVideoProps>(function HlsBackgroundVideo(\n { children, ...props },\n ref\n) {\n const media = useMediaInstance(HlsBackgroundVideoMedia);\n const attachRef = useAttachMedia(media);\n const composedRef = useComposedRefs(attachRef, ref);\n const htmlProps = useSyncProps(media, props, hlsBackgroundVideoMediaDefaultProps);\n\n return (\n // The same set `<hls-background-video>` forces onto its inner video, so the\n // two platforms present the same surface: silent looping playback with no\n // affordance a UA could hang chrome on — AirPlay, Cast, and picture-in-picture\n // all being things a background video has nowhere to put.\n //\n // Applied after the spread rather than before it, unlike the generic\n // `BackgroundVideo`: they're what the component is for, and attaching the\n // Media re-applies its own anyway, so honoring `muted={false}` would only\n // look like it worked.\n <video\n {...htmlProps}\n ref={composedRef}\n muted\n autoPlay\n loop\n playsInline\n disableRemotePlayback\n disablePictureInPicture\n >\n {children}\n </video>\n );\n});\n\nexport namespace HlsBackgroundVideo {\n export type Props = HlsBackgroundVideoProps;\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;AAqCA,MAAa,qBAAqB,WAAsD,SAAS,mBAC/F,EAAE,UAAU,GAAG,SACf,KACA;CACA,MAAM,QAAQ,iBAAiB,uBAAuB;CAEtD,MAAM,cAAc,gBADF,eAAe,KACW,GAAG,GAAG;CAGlD,OAUE,oBAAC,SAAD;EACE,GAbc,aAAa,OAAO,OAAO,mCAa7B;EACZ,KAAK;EACL,OAAA;EACA,UAAA;EACA,MAAA;EACA,aAAA;EACA,uBAAA;EACA,yBAAA;EAEC;CACI,CAAA;AAEX,CAAC"}
|
|
@@ -5,18 +5,17 @@ import { useMediaInstance } from "../../utils/use-media-instance.js";
|
|
|
5
5
|
import { useSyncProps } from "../../utils/use-sync-props.js";
|
|
6
6
|
import { forwardRef } from "react";
|
|
7
7
|
import { jsx } from "react/jsx-runtime";
|
|
8
|
-
import {
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
const
|
|
12
|
-
const media = useMediaInstance(SimpleHlsMedia);
|
|
8
|
+
import { HlsVideoMedia, hlsVideoMediaDefaultProps } from "@videojs/spf/hls-video";
|
|
9
|
+
//#region src/media/hls-video/media.tsx
|
|
10
|
+
const HlsVideo = forwardRef(function HlsVideo({ children, ...props }, ref) {
|
|
11
|
+
const media = useMediaInstance(HlsVideoMedia);
|
|
13
12
|
return /* @__PURE__ */ jsx("video", {
|
|
14
13
|
ref: useComposedRefs(useAttachMedia(media), ref),
|
|
15
|
-
...useSyncProps(media, props,
|
|
14
|
+
...useSyncProps(media, props, hlsVideoMediaDefaultProps),
|
|
16
15
|
children
|
|
17
16
|
});
|
|
18
17
|
});
|
|
19
18
|
//#endregion
|
|
20
|
-
export {
|
|
19
|
+
export { HlsVideo };
|
|
21
20
|
|
|
22
21
|
//# sourceMappingURL=media.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"media.js","names":[],"sources":["../../../../src/media/hls-video/media.tsx"],"sourcesContent":["'use client';\n\nimport type { HlsVideoMediaProps } from '@videojs/spf/hls-video';\nimport { HlsVideoMedia, hlsVideoMediaDefaultProps } from '@videojs/spf/hls-video';\nimport type { ReactNode, VideoHTMLAttributes } from 'react';\nimport { forwardRef } from 'react';\nimport { useAttachMedia } from '../../utils/use-attach-media';\nimport { useComposedRefs } from '../../utils/use-composed-refs';\nimport { useMediaInstance } from '../../utils/use-media-instance';\nimport { useSyncProps } from '../../utils/use-sync-props';\n\nexport interface HlsVideoProps\n extends Omit<VideoHTMLAttributes<HTMLVideoElement>, keyof HlsVideoMediaProps>,\n Partial<HlsVideoMediaProps> {\n children?: ReactNode;\n}\n\nexport const HlsVideo = forwardRef<HTMLVideoElement, HlsVideoProps>(function HlsVideo({ children, ...props }, ref) {\n const media = useMediaInstance(HlsVideoMedia);\n const attachRef = useAttachMedia(media);\n const composedRef = useComposedRefs(attachRef, ref);\n const htmlProps = useSyncProps(media, props, hlsVideoMediaDefaultProps);\n\n return (\n <video ref={composedRef} {...htmlProps}>\n {children}\n </video>\n );\n});\n\nexport namespace HlsVideo {\n export type Props = HlsVideoProps;\n}\n"],"mappings":";;;;;;;;;AAiBA,MAAa,WAAW,WAA4C,SAAS,SAAS,EAAE,UAAU,GAAG,SAAS,KAAK;CACjH,MAAM,QAAQ,iBAAiB,aAAa;CAK5C,OACE,oBAAC,SAAD;EAAO,KAJW,gBADF,eAAe,KACW,GAAG,GAIvB;EAAG,GAHT,aAAa,OAAO,OAAO,yBAGN;EAClC;CACI,CAAA;AAEX,CAAC"}
|
|
@@ -7,7 +7,7 @@ import { forwardRef } from "react";
|
|
|
7
7
|
import { jsx } from "react/jsx-runtime";
|
|
8
8
|
import { hlsMediaDefaultProps } from "@videojs/media/dom/hls-js";
|
|
9
9
|
import { MuxMedia, muxMediaDefaultProps } from "@videojs/media/dom/mux";
|
|
10
|
-
//#region src/media/mux-audio/
|
|
10
|
+
//#region src/media/mux-audio/hls-js.tsx
|
|
11
11
|
const muxAudioDefaultProps = {
|
|
12
12
|
...hlsMediaDefaultProps,
|
|
13
13
|
...muxMediaDefaultProps
|
|
@@ -23,4 +23,4 @@ const MuxAudio = forwardRef(function MuxAudio({ children, ...props }, ref) {
|
|
|
23
23
|
//#endregion
|
|
24
24
|
export { MuxAudio };
|
|
25
25
|
|
|
26
|
-
//# sourceMappingURL=
|
|
26
|
+
//# sourceMappingURL=hls-js.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"hls-js.js","names":[],"sources":["../../../../src/media/mux-audio/hls-js.tsx"],"sourcesContent":["'use client';\n\nimport type { HlsMediaProps } from '@videojs/media/dom/hls-js';\nimport { hlsMediaDefaultProps } from '@videojs/media/dom/hls-js';\nimport type { MuxMediaProps } from '@videojs/media/dom/mux';\nimport { MuxMedia, muxMediaDefaultProps } from '@videojs/media/dom/mux';\nimport type { AudioHTMLAttributes, ReactNode } from 'react';\nimport { forwardRef } from 'react';\nimport { useAttachMedia } from '../../utils/use-attach-media';\nimport { useComposedRefs } from '../../utils/use-composed-refs';\nimport { useMediaInstance } from '../../utils/use-media-instance';\nimport { useSyncProps } from '../../utils/use-sync-props';\n\n// `source` comes from `MuxMediaProps` only: `MuxSource` extends `HlsSource` with\n// Mux identity fields, so the narrower type has to win.\nexport interface MuxAudioProps\n extends Omit<AudioHTMLAttributes<HTMLAudioElement>, keyof HlsMediaProps | keyof MuxMediaProps>,\n Partial<Omit<HlsMediaProps, 'source'>>,\n Partial<MuxMediaProps> {\n children?: ReactNode;\n}\n\nconst muxAudioDefaultProps: Omit<HlsMediaProps, 'source'> & MuxMediaProps = {\n ...hlsMediaDefaultProps,\n ...muxMediaDefaultProps,\n};\n\nexport const MuxAudio = forwardRef<HTMLAudioElement, MuxAudioProps>(function MuxAudio({ children, ...props }, ref) {\n const media = useMediaInstance(MuxMedia);\n const attachRef = useAttachMedia(media);\n const composedRef = useComposedRefs(attachRef, ref);\n const htmlProps = useSyncProps(media, props, muxAudioDefaultProps);\n\n return (\n <audio ref={composedRef} {...htmlProps}>\n {children}\n </audio>\n );\n});\n\nexport namespace MuxAudio {\n export type Props = MuxAudioProps;\n}\n"],"mappings":";;;;;;;;;;AAsBA,MAAM,uBAAsE;CAC1E,GAAG;CACH,GAAG;AACL;AAEA,MAAa,WAAW,WAA4C,SAAS,SAAS,EAAE,UAAU,GAAG,SAAS,KAAK;CACjH,MAAM,QAAQ,iBAAiB,QAAQ;CAKvC,OACE,oBAAC,SAAD;EAAO,KAJW,gBADF,eAAe,KACW,GAAG,GAIvB;EAAG,GAHT,aAAa,OAAO,OAAO,oBAGN;EAClC;CACI,CAAA;AAEX,CAAC"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import { MuxAudio } from "./
|
|
1
|
+
import { MuxAudio } from "./hls-js.js";
|
|
2
2
|
export { MuxAudio };
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
"use client";
|
|
2
|
+
import { useComposedRefs } from "../../utils/use-composed-refs.js";
|
|
3
|
+
import { useAttachMedia } from "../../utils/use-attach-media.js";
|
|
4
|
+
import { useMediaInstance } from "../../utils/use-media-instance.js";
|
|
5
|
+
import { useSyncProps } from "../../utils/use-sync-props.js";
|
|
6
|
+
import { forwardRef } from "react";
|
|
7
|
+
import { jsx } from "react/jsx-runtime";
|
|
8
|
+
import { hlsAudioMediaDefaultProps } from "@videojs/spf/hls-audio";
|
|
9
|
+
import { MuxAudioMedia, muxMediaDefaultProps } from "@videojs/spf/mux-audio";
|
|
10
|
+
//#region src/media/mux-audio/spf.tsx
|
|
11
|
+
const muxAudioDefaultProps = {
|
|
12
|
+
...hlsAudioMediaDefaultProps,
|
|
13
|
+
...muxMediaDefaultProps
|
|
14
|
+
};
|
|
15
|
+
const MuxAudio = forwardRef(function MuxAudio({ children, ...props }, ref) {
|
|
16
|
+
const media = useMediaInstance(MuxAudioMedia);
|
|
17
|
+
return /* @__PURE__ */ jsx("audio", {
|
|
18
|
+
ref: useComposedRefs(useAttachMedia(media), ref),
|
|
19
|
+
...useSyncProps(media, props, muxAudioDefaultProps),
|
|
20
|
+
children
|
|
21
|
+
});
|
|
22
|
+
});
|
|
23
|
+
//#endregion
|
|
24
|
+
export { MuxAudio };
|
|
25
|
+
|
|
26
|
+
//# sourceMappingURL=spf.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"spf.js","names":[],"sources":["../../../../src/media/mux-audio/spf.tsx"],"sourcesContent":["'use client';\n\nimport type { HlsAudioMediaProps } from '@videojs/spf/hls-audio';\nimport { hlsAudioMediaDefaultProps } from '@videojs/spf/hls-audio';\nimport type { MuxMediaProps } from '@videojs/spf/mux-audio';\nimport { MuxAudioMedia, muxMediaDefaultProps } from '@videojs/spf/mux-audio';\nimport type { AudioHTMLAttributes, ReactNode } from 'react';\nimport { forwardRef } from 'react';\nimport { useAttachMedia } from '../../utils/use-attach-media';\nimport { useComposedRefs } from '../../utils/use-composed-refs';\nimport { useMediaInstance } from '../../utils/use-media-instance';\nimport { useSyncProps } from '../../utils/use-sync-props';\n\n// `src` and `source` come from `MuxMediaProps`: the Mux Media owns both, and its\n// `source` is the structured Mux one rather than the generic engine's.\nexport interface MuxAudioProps\n extends Omit<AudioHTMLAttributes<HTMLAudioElement>, keyof HlsAudioMediaProps | keyof MuxMediaProps>,\n Partial<Omit<HlsAudioMediaProps, 'src'>>,\n Partial<MuxMediaProps> {\n children?: ReactNode;\n}\n\nconst muxAudioDefaultProps: Omit<HlsAudioMediaProps, 'src'> & MuxMediaProps = {\n ...hlsAudioMediaDefaultProps,\n ...muxMediaDefaultProps,\n};\n\nexport const MuxAudio = forwardRef<HTMLAudioElement, MuxAudioProps>(function MuxAudio({ children, ...props }, ref) {\n const media = useMediaInstance(MuxAudioMedia);\n const attachRef = useAttachMedia(media);\n const composedRef = useComposedRefs(attachRef, ref);\n const htmlProps = useSyncProps(media, props, muxAudioDefaultProps);\n\n return (\n <audio ref={composedRef} {...htmlProps}>\n {children}\n </audio>\n );\n});\n\nexport namespace MuxAudio {\n export type Props = MuxAudioProps;\n}\n"],"mappings":";;;;;;;;;;AAsBA,MAAM,uBAAwE;CAC5E,GAAG;CACH,GAAG;AACL;AAEA,MAAa,WAAW,WAA4C,SAAS,SAAS,EAAE,UAAU,GAAG,SAAS,KAAK;CACjH,MAAM,QAAQ,iBAAiB,aAAa;CAK5C,OACE,oBAAC,SAAD;EAAO,KAJW,gBADF,eAAe,KACW,GAAG,GAIvB;EAAG,GAHT,aAAa,OAAO,OAAO,oBAGN;EAClC;CACI,CAAA;AAEX,CAAC"}
|
|
@@ -7,7 +7,7 @@ import { MuxData, muxDataDefaultProps } from "@videojs/media/dom/mux";
|
|
|
7
7
|
* Adds [Mux Data](https://www.mux.com/data) monitoring to the surrounding
|
|
8
8
|
* player's media.
|
|
9
9
|
*
|
|
10
|
-
* Renders nothing — place it inside the
|
|
10
|
+
* Renders nothing — place it inside the Player as a sibling of the
|
|
11
11
|
* media component (e.g. `<MuxVideo />`) and it registers a `MuxData` media
|
|
12
12
|
* component with the active media.
|
|
13
13
|
*
|
|
@@ -15,12 +15,16 @@ import { MuxData, muxDataDefaultProps } from "@videojs/media/dom/mux";
|
|
|
15
15
|
* as its `video_id`, which Mux attributes to the owning environment. Set
|
|
16
16
|
* `envKey` to monitor sources Mux doesn't host.
|
|
17
17
|
*
|
|
18
|
+
* Any media component works. When the media plays through an hls.js or dash.js
|
|
19
|
+
* engine, that engine is handed to the Mux Data SDK so the view also carries
|
|
20
|
+
* stream-level detail such as rendition switches and request timing.
|
|
21
|
+
*
|
|
18
22
|
* @example
|
|
19
23
|
* ```tsx
|
|
20
|
-
* <Player
|
|
24
|
+
* <Player>
|
|
21
25
|
* <MuxVideo source={{ playbackId: 'abc123' }} />
|
|
22
26
|
* <MuxData playerSoftwareName="mux-video" />
|
|
23
|
-
* </Player
|
|
27
|
+
* </Player>
|
|
24
28
|
* ```
|
|
25
29
|
*/
|
|
26
30
|
function MuxData$1(props) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"mux-data.js","names":["MuxData","MuxDataComponent"],"sources":["../../../../src/media/mux-data/mux-data.tsx"],"sourcesContent":["'use client';\n\nimport type { MuxDataProps as MuxDataComponentProps } from '@videojs/media/dom/mux';\nimport { MuxData as MuxDataComponent, muxDataDefaultProps } from '@videojs/media/dom/mux';\nimport type { ReactNode } from 'react';\n\nimport { useMediaComponent } from '../../utils/use-media-component';\nimport { useSyncProps } from '../../utils/use-sync-props';\n\nexport type MuxDataProps = Partial<MuxDataComponentProps>;\n\n/**\n * Adds [Mux Data](https://www.mux.com/data) monitoring to the surrounding\n * player's media.\n *\n * Renders nothing — place it inside the
|
|
1
|
+
{"version":3,"file":"mux-data.js","names":["MuxData","MuxDataComponent"],"sources":["../../../../src/media/mux-data/mux-data.tsx"],"sourcesContent":["'use client';\n\nimport type { MuxDataProps as MuxDataComponentProps } from '@videojs/media/dom/mux';\nimport { MuxData as MuxDataComponent, muxDataDefaultProps } from '@videojs/media/dom/mux';\nimport type { ReactNode } from 'react';\n\nimport { useMediaComponent } from '../../utils/use-media-component';\nimport { useSyncProps } from '../../utils/use-sync-props';\n\nexport type MuxDataProps = Partial<MuxDataComponentProps>;\n\n/**\n * Adds [Mux Data](https://www.mux.com/data) monitoring to the surrounding\n * player's media.\n *\n * Renders nothing — place it inside the Player as a sibling of the\n * media component (e.g. `<MuxVideo />`) and it registers a `MuxData` media\n * component with the active media.\n *\n * Mux-hosted playback needs no `envKey`: the view reports the Mux playback ID\n * as its `video_id`, which Mux attributes to the owning environment. Set\n * `envKey` to monitor sources Mux doesn't host.\n *\n * Any media component works. When the media plays through an hls.js or dash.js\n * engine, that engine is handed to the Mux Data SDK so the view also carries\n * stream-level detail such as rendition switches and request timing.\n *\n * @example\n * ```tsx\n * <Player>\n * <MuxVideo source={{ playbackId: 'abc123' }} />\n * <MuxData playerSoftwareName=\"mux-video\" />\n * </Player>\n * ```\n */\nexport function MuxData(props: MuxDataProps): ReactNode {\n const component = useMediaComponent(MuxDataComponent);\n const { MuxDataSdk, ...rest } = props;\n\n // `useSyncProps` treats an `undefined` prop as \"reset to the default\", but\n // `MuxDataSdk={undefined}` is how consumers disable monitoring. Sync it here\n // instead: passing the prop wins even when its value is `undefined`, and only\n // omitting it falls back to the default SDK.\n const sdk = 'MuxDataSdk' in props ? MuxDataSdk : muxDataDefaultProps.MuxDataSdk;\n if (component.MuxDataSdk !== sdk) component.MuxDataSdk = sdk;\n\n useSyncProps(component, rest, muxDataDefaultProps);\n\n return null;\n}\n\nexport namespace MuxData {\n export type Props = MuxDataProps;\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAmCA,SAAgBA,UAAQ,OAAgC;CACtD,MAAM,YAAY,kBAAkBC,OAAgB;CACpD,MAAM,EAAE,YAAY,GAAG,SAAS;CAMhC,MAAM,MAAM,gBAAgB,QAAQ,aAAa,oBAAoB;CACrE,IAAI,UAAU,eAAe,KAAK,UAAU,aAAa;CAEzD,aAAa,WAAW,MAAM,mBAAmB;CAEjD,OAAO;AACT"}
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
"use client";
|
|
2
|
+
import { useComposedRefs } from "../../utils/use-composed-refs.js";
|
|
3
|
+
import { useAttachMedia } from "../../utils/use-attach-media.js";
|
|
4
|
+
import { useMediaInstance } from "../../utils/use-media-instance.js";
|
|
5
|
+
import { useSyncProps } from "../../utils/use-sync-props.js";
|
|
6
|
+
import { MuxStoryboard } from "./storyboard.js";
|
|
7
|
+
import { forwardRef } from "react";
|
|
8
|
+
import { jsx, jsxs } from "react/jsx-runtime";
|
|
9
|
+
import { hlsMediaDefaultProps } from "@videojs/media/dom/hls-js";
|
|
10
|
+
import { MuxMedia, muxMediaDefaultProps } from "@videojs/media/dom/mux";
|
|
11
|
+
//#region src/media/mux-video/hls-js.tsx
|
|
12
|
+
const muxVideoDefaultProps = {
|
|
13
|
+
...hlsMediaDefaultProps,
|
|
14
|
+
...muxMediaDefaultProps
|
|
15
|
+
};
|
|
16
|
+
const MuxVideo = forwardRef(function MuxVideo({ children, ...props }, ref) {
|
|
17
|
+
const media = useMediaInstance(MuxMedia);
|
|
18
|
+
return /* @__PURE__ */ jsxs("video", {
|
|
19
|
+
ref: useComposedRefs(useAttachMedia(media), ref),
|
|
20
|
+
...useSyncProps(media, props, muxVideoDefaultProps),
|
|
21
|
+
children: [/* @__PURE__ */ jsx(MuxStoryboard, { media }), children]
|
|
22
|
+
});
|
|
23
|
+
});
|
|
24
|
+
//#endregion
|
|
25
|
+
export { MuxVideo };
|
|
26
|
+
|
|
27
|
+
//# sourceMappingURL=hls-js.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"hls-js.js","names":[],"sources":["../../../../src/media/mux-video/hls-js.tsx"],"sourcesContent":["'use client';\n\nimport type { HlsMediaProps } from '@videojs/media/dom/hls-js';\nimport { hlsMediaDefaultProps } from '@videojs/media/dom/hls-js';\nimport type { MuxMediaProps } from '@videojs/media/dom/mux';\nimport { MuxMedia, muxMediaDefaultProps } from '@videojs/media/dom/mux';\nimport type { ReactNode, VideoHTMLAttributes } from 'react';\nimport { forwardRef } from 'react';\nimport { useAttachMedia } from '../../utils/use-attach-media';\nimport { useComposedRefs } from '../../utils/use-composed-refs';\nimport { useMediaInstance } from '../../utils/use-media-instance';\nimport { useSyncProps } from '../../utils/use-sync-props';\nimport { MuxStoryboard } from './storyboard';\n\n// `source` comes from `MuxMediaProps` only: `MuxSource` extends `HlsSource` with\n// Mux identity fields, so the narrower type has to win.\nexport interface MuxVideoProps\n extends Omit<VideoHTMLAttributes<HTMLVideoElement>, keyof HlsMediaProps | keyof MuxMediaProps>,\n Partial<Omit<HlsMediaProps, 'source'>>,\n Partial<MuxMediaProps> {\n children?: ReactNode;\n}\n\nconst muxVideoDefaultProps: Omit<HlsMediaProps, 'source'> & MuxMediaProps = {\n ...hlsMediaDefaultProps,\n ...muxMediaDefaultProps,\n};\n\nexport const MuxVideo = forwardRef<HTMLVideoElement, MuxVideoProps>(function MuxVideo({ children, ...props }, ref) {\n const media = useMediaInstance(MuxMedia);\n const attachRef = useAttachMedia(media);\n const composedRef = useComposedRefs(attachRef, ref);\n const htmlProps = useSyncProps(media, props, muxVideoDefaultProps);\n\n return (\n <video ref={composedRef} {...htmlProps}>\n <MuxStoryboard media={media} />\n {children}\n </video>\n );\n});\n\nexport namespace MuxVideo {\n export type Props = MuxVideoProps;\n}\n"],"mappings":";;;;;;;;;;;AAuBA,MAAM,uBAAsE;CAC1E,GAAG;CACH,GAAG;AACL;AAEA,MAAa,WAAW,WAA4C,SAAS,SAAS,EAAE,UAAU,GAAG,SAAS,KAAK;CACjH,MAAM,QAAQ,iBAAiB,QAAQ;CAKvC,OACE,qBAAC,SAAD;EAAO,KAJW,gBADF,eAAe,KACW,GAAG,GAIvB;EAAG,GAHT,aAAa,OAAO,OAAO,oBAGN;EAArC,UAAA,CACE,oBAAC,eAAD,EAAsB,MAAQ,CAAA,GAC7B,QACI;;AAEX,CAAC"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import { MuxVideo } from "./
|
|
1
|
+
import { MuxVideo } from "./hls-js.js";
|
|
2
2
|
export { MuxVideo };
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
"use client";
|
|
2
|
+
import { useComposedRefs } from "../../utils/use-composed-refs.js";
|
|
3
|
+
import { useAttachMedia } from "../../utils/use-attach-media.js";
|
|
4
|
+
import { useMediaInstance } from "../../utils/use-media-instance.js";
|
|
5
|
+
import { useSyncProps } from "../../utils/use-sync-props.js";
|
|
6
|
+
import { MuxStoryboard } from "./storyboard.js";
|
|
7
|
+
import { forwardRef } from "react";
|
|
8
|
+
import { jsx, jsxs } from "react/jsx-runtime";
|
|
9
|
+
import { hlsVideoMediaDefaultProps } from "@videojs/spf/hls-video";
|
|
10
|
+
import { MuxVideoMedia, muxMediaDefaultProps } from "@videojs/spf/mux-video";
|
|
11
|
+
//#region src/media/mux-video/spf.tsx
|
|
12
|
+
const muxVideoDefaultProps = {
|
|
13
|
+
...hlsVideoMediaDefaultProps,
|
|
14
|
+
...muxMediaDefaultProps
|
|
15
|
+
};
|
|
16
|
+
const MuxVideo = forwardRef(function MuxVideo({ children, ...props }, ref) {
|
|
17
|
+
const media = useMediaInstance(MuxVideoMedia);
|
|
18
|
+
return /* @__PURE__ */ jsxs("video", {
|
|
19
|
+
ref: useComposedRefs(useAttachMedia(media), ref),
|
|
20
|
+
...useSyncProps(media, props, muxVideoDefaultProps),
|
|
21
|
+
children: [/* @__PURE__ */ jsx(MuxStoryboard, { media }), children]
|
|
22
|
+
});
|
|
23
|
+
});
|
|
24
|
+
//#endregion
|
|
25
|
+
export { MuxVideo };
|
|
26
|
+
|
|
27
|
+
//# sourceMappingURL=spf.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"spf.js","names":[],"sources":["../../../../src/media/mux-video/spf.tsx"],"sourcesContent":["'use client';\n\nimport type { HlsVideoMediaProps } from '@videojs/spf/hls-video';\nimport { hlsVideoMediaDefaultProps } from '@videojs/spf/hls-video';\nimport type { MuxMediaProps } from '@videojs/spf/mux-video';\nimport { MuxVideoMedia, muxMediaDefaultProps } from '@videojs/spf/mux-video';\nimport type { ReactNode, VideoHTMLAttributes } from 'react';\nimport { forwardRef } from 'react';\nimport { useAttachMedia } from '../../utils/use-attach-media';\nimport { useComposedRefs } from '../../utils/use-composed-refs';\nimport { useMediaInstance } from '../../utils/use-media-instance';\nimport { useSyncProps } from '../../utils/use-sync-props';\nimport { MuxStoryboard } from './storyboard';\n\n// `src` and `source` come from `MuxMediaProps`: the Mux Media owns both, and its\n// `source` is the structured Mux one rather than the generic engine's.\nexport interface MuxVideoProps\n extends Omit<VideoHTMLAttributes<HTMLVideoElement>, keyof HlsVideoMediaProps | keyof MuxMediaProps>,\n Partial<Omit<HlsVideoMediaProps, 'src'>>,\n Partial<MuxMediaProps> {\n children?: ReactNode;\n}\n\nconst muxVideoDefaultProps: Omit<HlsVideoMediaProps, 'src'> & MuxMediaProps = {\n ...hlsVideoMediaDefaultProps,\n ...muxMediaDefaultProps,\n};\n\nexport const MuxVideo = forwardRef<HTMLVideoElement, MuxVideoProps>(function MuxVideo({ children, ...props }, ref) {\n const media = useMediaInstance(MuxVideoMedia);\n const attachRef = useAttachMedia(media);\n const composedRef = useComposedRefs(attachRef, ref);\n const htmlProps = useSyncProps(media, props, muxVideoDefaultProps);\n\n return (\n <video ref={composedRef} {...htmlProps}>\n <MuxStoryboard media={media} />\n {children}\n </video>\n );\n});\n\nexport namespace MuxVideo {\n export type Props = MuxVideoProps;\n}\n"],"mappings":";;;;;;;;;;;AAuBA,MAAM,uBAAwE;CAC5E,GAAG;CACH,GAAG;AACL;AAEA,MAAa,WAAW,WAA4C,SAAS,SAAS,EAAE,UAAU,GAAG,SAAS,KAAK;CACjH,MAAM,QAAQ,iBAAiB,aAAa;CAK5C,OACE,qBAAC,SAAD;EAAO,KAJW,gBADF,eAAe,KACW,GAAG,GAIvB;EAAG,GAHT,aAAa,OAAO,OAAO,oBAGN;EAArC,UAAA,CACE,oBAAC,eAAD,EAAsB,MAAQ,CAAA,GAC7B,QACI;;AAEX,CAAC"}
|
|
@@ -0,0 +1,43 @@
|
|
|
1
|
+
"use client";
|
|
2
|
+
import { MediaStreamTypes } from "@videojs/media";
|
|
3
|
+
import { useCallback, useSyncExternalStore } from "react";
|
|
4
|
+
import { jsx } from "react/jsx-runtime";
|
|
5
|
+
//#region src/media/mux-video/storyboard.tsx
|
|
6
|
+
/**
|
|
7
|
+
* Renders the storyboard track in its own component so media changes don't
|
|
8
|
+
* re-render the whole media component.
|
|
9
|
+
*/
|
|
10
|
+
function MuxStoryboard({ media }) {
|
|
11
|
+
const subscribe = useCallback((onChange) => {
|
|
12
|
+
let cancelled = false;
|
|
13
|
+
let scheduled = false;
|
|
14
|
+
const notify = () => {
|
|
15
|
+
if (scheduled) return;
|
|
16
|
+
scheduled = true;
|
|
17
|
+
queueMicrotask(() => {
|
|
18
|
+
scheduled = false;
|
|
19
|
+
if (!cancelled) onChange();
|
|
20
|
+
});
|
|
21
|
+
};
|
|
22
|
+
media.addEventListener("streamtypechange", notify);
|
|
23
|
+
media.addEventListener("sourcechange", notify);
|
|
24
|
+
return () => {
|
|
25
|
+
cancelled = true;
|
|
26
|
+
media.removeEventListener("streamtypechange", notify);
|
|
27
|
+
media.removeEventListener("sourcechange", notify);
|
|
28
|
+
};
|
|
29
|
+
}, [media]);
|
|
30
|
+
const getSnapshot = () => media.streamType === MediaStreamTypes.LIVE ? "" : media.contentData.storyboard ?? "";
|
|
31
|
+
const src = useSyncExternalStore(subscribe, getSnapshot, getSnapshot);
|
|
32
|
+
if (!src) return null;
|
|
33
|
+
return /* @__PURE__ */ jsx("track", {
|
|
34
|
+
kind: "metadata",
|
|
35
|
+
label: "thumbnails",
|
|
36
|
+
src,
|
|
37
|
+
default: true
|
|
38
|
+
});
|
|
39
|
+
}
|
|
40
|
+
//#endregion
|
|
41
|
+
export { MuxStoryboard };
|
|
42
|
+
|
|
43
|
+
//# sourceMappingURL=storyboard.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"storyboard.js","names":[],"sources":["../../../../src/media/mux-video/storyboard.tsx"],"sourcesContent":["'use client';\n\nimport { type MediaStreamType, MediaStreamTypes } from '@videojs/media';\nimport type { MuxContentData } from '@videojs/media/dom/mux/source';\nimport { useCallback, useSyncExternalStore } from 'react';\n\n/**\n * What the storyboard track needs from whichever Mux Media renders it.\n *\n * Structural on purpose: the hls.js-backed `MuxMedia` and the SPF-backed one\n * satisfy it identically, so this component carries no engine.\n */\nexport interface MuxStoryboardMedia {\n readonly streamType: MediaStreamType | undefined;\n readonly contentData: MuxContentData;\n addEventListener(type: string, listener: () => void): void;\n removeEventListener(type: string, listener: () => void): void;\n}\n\n/**\n * Renders the storyboard track in its own component so media changes don't\n * re-render the whole media component.\n */\nexport function MuxStoryboard({ media }: { media: MuxStoryboardMedia }) {\n const subscribe = useCallback(\n (onChange: () => void) => {\n // `useSyncProps` writes `src` / `source` during render and those setters\n // dispatch `sourcechange` synchronously. Defer (and coalesce) notifications\n // so we never schedule an update while another component is rendering.\n let cancelled = false;\n let scheduled = false;\n const notify = () => {\n if (scheduled) return;\n scheduled = true;\n queueMicrotask(() => {\n scheduled = false;\n if (!cancelled) onChange();\n });\n };\n media.addEventListener('streamtypechange', notify);\n media.addEventListener('sourcechange', notify);\n return () => {\n cancelled = true;\n media.removeEventListener('streamtypechange', notify);\n media.removeEventListener('sourcechange', notify);\n };\n },\n [media]\n );\n\n // The stream type is detected at runtime and live streams have no storyboard.\n // The '' fallback keeps the snapshot a string rather than sometimes undefined.\n const getSnapshot = () => (media.streamType === MediaStreamTypes.LIVE ? '' : (media.contentData.storyboard ?? ''));\n const src = useSyncExternalStore(subscribe, getSnapshot, getSnapshot);\n\n if (!src) return null;\n return <track kind=\"metadata\" label=\"thumbnails\" src={src} default />;\n}\n"],"mappings":";;;;;;;;;AAuBA,SAAgB,cAAc,EAAE,SAAwC;CACtE,MAAM,YAAY,aACf,aAAyB;EAIxB,IAAI,YAAY;EAChB,IAAI,YAAY;EAChB,MAAM,eAAe;GACnB,IAAI,WAAW;GACf,YAAY;GACZ,qBAAqB;IACnB,YAAY;IACZ,IAAI,CAAC,WAAW,SAAS;GAC3B,CAAC;EACH;EACA,MAAM,iBAAiB,oBAAoB,MAAM;EACjD,MAAM,iBAAiB,gBAAgB,MAAM;EAC7C,aAAa;GACX,YAAY;GACZ,MAAM,oBAAoB,oBAAoB,MAAM;GACpD,MAAM,oBAAoB,gBAAgB,MAAM;EAClD;CACF,GACA,CAAC,KAAK,CACR;CAIA,MAAM,oBAAqB,MAAM,eAAe,iBAAiB,OAAO,KAAM,MAAM,YAAY,cAAc;CAC9G,MAAM,MAAM,qBAAqB,WAAW,aAAa,WAAW;CAEpE,IAAI,CAAC,KAAK,OAAO;CACjB,OAAO,oBAAC,SAAD;EAAO,MAAK;EAAW,OAAM;EAAkB;EAAK,SAAA;CAAS,CAAA;AACtE"}
|
|
@@ -0,0 +1,40 @@
|
|
|
1
|
+
"use client";
|
|
2
|
+
import { useComposedRefs } from "../../utils/use-composed-refs.js";
|
|
3
|
+
import { useMediaInstance } from "../../utils/use-media-instance.js";
|
|
4
|
+
import { useAttachIframe } from "../../utils/use-attach-iframe.js";
|
|
5
|
+
import { useSyncProps } from "../../utils/use-sync-props.js";
|
|
6
|
+
import { forwardRef, useState } from "react";
|
|
7
|
+
import { jsx } from "react/jsx-runtime";
|
|
8
|
+
import { SpotifyMedia, buildSpotifyIframeSrc, spotifyMediaDefaultProps } from "@videojs/media/dom/spotify";
|
|
9
|
+
//#region src/media/spotify-audio/media.tsx
|
|
10
|
+
const SpotifyAudio = forwardRef(function SpotifyAudio({ children, ...rawProps }, ref) {
|
|
11
|
+
const media = useMediaInstance(SpotifyMedia);
|
|
12
|
+
const props = { ...rawProps };
|
|
13
|
+
const composedRef = useComposedRefs(useAttachIframe(media), ref);
|
|
14
|
+
const [initialSrc] = useState(() => buildSpotifyIframeSrc(props.src || props.source?.src || "", {
|
|
15
|
+
...spotifyMediaDefaultProps,
|
|
16
|
+
...props
|
|
17
|
+
}));
|
|
18
|
+
const { style, ...iframeProps } = useSyncProps(media, props, spotifyMediaDefaultProps);
|
|
19
|
+
return /* @__PURE__ */ jsx("iframe", {
|
|
20
|
+
title: "Spotify audio player",
|
|
21
|
+
src: initialSrc || void 0,
|
|
22
|
+
"data-cross-origin-frame": true,
|
|
23
|
+
allow: "autoplay; clipboard-write; encrypted-media; fullscreen; picture-in-picture",
|
|
24
|
+
frameBorder: 0,
|
|
25
|
+
width: "100%",
|
|
26
|
+
height: "100%",
|
|
27
|
+
referrerPolicy: props.source?.engine?.spotify?.referrerPolicy,
|
|
28
|
+
...iframeProps,
|
|
29
|
+
style: props.controls ? style : {
|
|
30
|
+
...style,
|
|
31
|
+
display: "none"
|
|
32
|
+
},
|
|
33
|
+
ref: composedRef,
|
|
34
|
+
children
|
|
35
|
+
});
|
|
36
|
+
});
|
|
37
|
+
//#endregion
|
|
38
|
+
export { SpotifyAudio };
|
|
39
|
+
|
|
40
|
+
//# sourceMappingURL=media.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"media.js","names":[],"sources":["../../../../src/media/spotify-audio/media.tsx"],"sourcesContent":["'use client';\n\nimport type { SpotifyMediaProps } from '@videojs/media/dom/spotify';\nimport { buildSpotifyIframeSrc, SpotifyMedia, spotifyMediaDefaultProps } from '@videojs/media/dom/spotify';\nimport type { CSSProperties, ReactNode } from 'react';\nimport { forwardRef, useState } from 'react';\nimport { useAttachIframe } from '../../utils/use-attach-iframe';\nimport { useComposedRefs } from '../../utils/use-composed-refs';\nimport { useMediaInstance } from '../../utils/use-media-instance';\nimport { useSyncProps } from '../../utils/use-sync-props';\n\nexport interface SpotifyAudioProps extends Partial<SpotifyMediaProps> {\n children?: ReactNode;\n}\n\nexport const SpotifyAudio = forwardRef<HTMLIFrameElement, SpotifyAudioProps>(function SpotifyAudio(\n { children, ...rawProps },\n ref\n) {\n const media = useMediaInstance(SpotifyMedia);\n const props: Partial<SpotifyMediaProps> & Record<string, unknown> = { ...rawProps };\n const attachRef = useAttachIframe(media);\n const composedRef = useComposedRefs(attachRef, ref);\n const [initialSrc] = useState(() =>\n // `source.src` is the only other way to name an entity, so honor it when `src` is absent.\n buildSpotifyIframeSrc(props.src || props.source?.src || '', { ...spotifyMediaDefaultProps, ...props })\n );\n const { style, ...iframeProps } = useSyncProps<SpotifyMediaProps, Record<string, unknown>>(\n media,\n props,\n spotifyMediaDefaultProps\n ) as Record<string, unknown> & { style?: CSSProperties };\n\n return (\n <iframe\n title=\"Spotify audio player\"\n // Empty means there is no embed to point at yet; React warns about `src=\"\"`,\n // and the media builds the URL itself once a source resolves.\n src={initialSrc || undefined}\n data-cross-origin-frame\n allow=\"autoplay; clipboard-write; encrypted-media; fullscreen; picture-in-picture\"\n frameBorder={0}\n width=\"100%\"\n height=\"100%\"\n referrerPolicy={props.source?.engine?.spotify?.referrerPolicy}\n {...iframeProps}\n // Without Spotify's own chrome the embed is a transport and nothing else:\n // its player UI would otherwise show through whatever skin is drawn over it.\n // Inline so a `className` cannot put it back on screen, merged so a\n // consumer's own styles survive. A hidden iframe still loads and plays.\n style={props.controls ? style : { ...style, display: 'none' }}\n ref={composedRef}\n >\n {children}\n </iframe>\n );\n});\n\nexport namespace SpotifyAudio {\n export type Props = SpotifyAudioProps;\n}\n"],"mappings":";;;;;;;;;AAeA,MAAa,eAAe,WAAiD,SAAS,aACpF,EAAE,UAAU,GAAG,YACf,KACA;CACA,MAAM,QAAQ,iBAAiB,YAAY;CAC3C,MAAM,QAA8D,EAAE,GAAG,SAAS;CAElF,MAAM,cAAc,gBADF,gBAAgB,KACU,GAAG,GAAG;CAClD,MAAM,CAAC,cAAc,eAEnB,sBAAsB,MAAM,OAAO,MAAM,QAAQ,OAAO,IAAI;EAAE,GAAG;EAA0B,GAAG;CAAM,CAAC,CACvG;CACA,MAAM,EAAE,OAAO,GAAG,gBAAgB,aAChC,OACA,OACA,wBACF;CAEA,OACE,oBAAC,UAAD;EACE,OAAM;EAGN,KAAK,cAAc,KAAA;EACnB,2BAAA;EACA,OAAM;EACN,aAAa;EACb,OAAM;EACN,QAAO;EACP,gBAAgB,MAAM,QAAQ,QAAQ,SAAS;EAC/C,GAAI;EAKJ,OAAO,MAAM,WAAW,QAAQ;GAAE,GAAG;GAAO,SAAS;EAAO;EAC5D,KAAK;EAEJ;CACK,CAAA;AAEZ,CAAC"}
|
|
@@ -0,0 +1,38 @@
|
|
|
1
|
+
"use client";
|
|
2
|
+
import { useComposedRefs } from "../../utils/use-composed-refs.js";
|
|
3
|
+
import { useMediaInstance } from "../../utils/use-media-instance.js";
|
|
4
|
+
import { useAttachIframe } from "../../utils/use-attach-iframe.js";
|
|
5
|
+
import { useSyncProps } from "../../utils/use-sync-props.js";
|
|
6
|
+
import { forwardRef, useState } from "react";
|
|
7
|
+
import { jsx } from "react/jsx-runtime";
|
|
8
|
+
import { TikTokMedia, buildTikTokIframeSrc, tiktokMediaDefaultProps } from "@videojs/media/dom/tiktok";
|
|
9
|
+
//#region src/media/tiktok-video/media.tsx
|
|
10
|
+
const TikTokVideo = forwardRef(function TikTokVideo({ children, ...rawProps }, ref) {
|
|
11
|
+
const media = useMediaInstance(TikTokMedia);
|
|
12
|
+
const props = { ...rawProps };
|
|
13
|
+
const composedRef = useComposedRefs(useAttachIframe(media), ref);
|
|
14
|
+
const [initialSrc] = useState(() => buildTikTokIframeSrc(props.src || props.source?.src || "", {
|
|
15
|
+
...tiktokMediaDefaultProps,
|
|
16
|
+
...props,
|
|
17
|
+
defaultMuted: !!(props.defaultMuted || props.muted)
|
|
18
|
+
}));
|
|
19
|
+
const iframeProps = useSyncProps(media, props, tiktokMediaDefaultProps);
|
|
20
|
+
return /* @__PURE__ */ jsx("iframe", {
|
|
21
|
+
title: "TikTok video player",
|
|
22
|
+
src: initialSrc || void 0,
|
|
23
|
+
"data-cross-origin-frame": true,
|
|
24
|
+
allow: "accelerometer; fullscreen; autoplay; encrypted-media; gyroscope; picture-in-picture",
|
|
25
|
+
allowFullScreen: true,
|
|
26
|
+
frameBorder: 0,
|
|
27
|
+
width: "100%",
|
|
28
|
+
height: "100%",
|
|
29
|
+
referrerPolicy: props.source?.engine?.tiktok?.referrerPolicy,
|
|
30
|
+
...iframeProps,
|
|
31
|
+
ref: composedRef,
|
|
32
|
+
children
|
|
33
|
+
});
|
|
34
|
+
});
|
|
35
|
+
//#endregion
|
|
36
|
+
export { TikTokVideo };
|
|
37
|
+
|
|
38
|
+
//# sourceMappingURL=media.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"media.js","names":[],"sources":["../../../../src/media/tiktok-video/media.tsx"],"sourcesContent":["'use client';\n\nimport type { TikTokMediaProps } from '@videojs/media/dom/tiktok';\nimport { buildTikTokIframeSrc, TikTokMedia, tiktokMediaDefaultProps } from '@videojs/media/dom/tiktok';\nimport type { ReactNode } from 'react';\nimport { forwardRef, useState } from 'react';\nimport { useAttachIframe } from '../../utils/use-attach-iframe';\nimport { useComposedRefs } from '../../utils/use-composed-refs';\nimport { useMediaInstance } from '../../utils/use-media-instance';\nimport { useSyncProps } from '../../utils/use-sync-props';\n\nexport interface TikTokVideoProps extends Partial<TikTokMediaProps> {\n children?: ReactNode;\n}\n\nexport const TikTokVideo = forwardRef<HTMLIFrameElement, TikTokVideoProps>(function TikTokVideo(\n { children, ...rawProps },\n ref\n) {\n const media = useMediaInstance(TikTokMedia);\n const props: Partial<TikTokMediaProps> & Record<string, unknown> = { ...rawProps };\n const attachRef = useAttachIframe(media);\n const composedRef = useComposedRefs(attachRef, ref);\n const [initialSrc] = useState(() =>\n // `source.src` is the only other way to name a video, so honor it when `src` is absent.\n buildTikTokIframeSrc(props.src || props.source?.src || '', {\n ...tiktokMediaDefaultProps,\n ...props,\n // The frame reads mute once, out of the URL it is rendered with, and either\n // prop says to start muted. Rendering it any other way than the media\n // builds it would have the media rebuild the frame on mount.\n defaultMuted: !!(props.defaultMuted || props.muted),\n })\n );\n const iframeProps = useSyncProps<TikTokMediaProps, Record<string, unknown>>(media, props, tiktokMediaDefaultProps);\n\n return (\n <iframe\n title=\"TikTok video player\"\n // Empty means there is no embed to point at yet; React warns about `src=\"\"`,\n // and the media builds the URL itself once a source resolves.\n src={initialSrc || undefined}\n data-cross-origin-frame\n allow=\"accelerometer; fullscreen; autoplay; encrypted-media; gyroscope; picture-in-picture\"\n allowFullScreen\n frameBorder={0}\n width=\"100%\"\n height=\"100%\"\n referrerPolicy={props.source?.engine?.tiktok?.referrerPolicy}\n {...iframeProps}\n ref={composedRef}\n >\n {children}\n </iframe>\n );\n});\n\nexport namespace TikTokVideo {\n export type Props = TikTokVideoProps;\n}\n"],"mappings":";;;;;;;;;AAeA,MAAa,cAAc,WAAgD,SAAS,YAClF,EAAE,UAAU,GAAG,YACf,KACA;CACA,MAAM,QAAQ,iBAAiB,WAAW;CAC1C,MAAM,QAA6D,EAAE,GAAG,SAAS;CAEjF,MAAM,cAAc,gBADF,gBAAgB,KACU,GAAG,GAAG;CAClD,MAAM,CAAC,cAAc,eAEnB,qBAAqB,MAAM,OAAO,MAAM,QAAQ,OAAO,IAAI;EACzD,GAAG;EACH,GAAG;EAIH,cAAc,CAAC,EAAE,MAAM,gBAAgB,MAAM;CAC/C,CAAC,CACH;CACA,MAAM,cAAc,aAAwD,OAAO,OAAO,uBAAuB;CAEjH,OACE,oBAAC,UAAD;EACE,OAAM;EAGN,KAAK,cAAc,KAAA;EACnB,2BAAA;EACA,OAAM;EACN,iBAAA;EACA,aAAa;EACb,OAAM;EACN,QAAO;EACP,gBAAgB,MAAM,QAAQ,QAAQ,QAAQ;EAC9C,GAAI;EACJ,KAAK;EAEJ;CACK,CAAA;AAEZ,CAAC"}
|
|
@@ -0,0 +1,38 @@
|
|
|
1
|
+
"use client";
|
|
2
|
+
import { useComposedRefs } from "../../utils/use-composed-refs.js";
|
|
3
|
+
import { useMediaInstance } from "../../utils/use-media-instance.js";
|
|
4
|
+
import { useAttachIframe } from "../../utils/use-attach-iframe.js";
|
|
5
|
+
import { useSyncProps } from "../../utils/use-sync-props.js";
|
|
6
|
+
import { forwardRef, useState } from "react";
|
|
7
|
+
import { jsx } from "react/jsx-runtime";
|
|
8
|
+
import { TwitchMedia, buildTwitchIframeSrc, twitchMediaDefaultProps } from "@videojs/media/dom/twitch";
|
|
9
|
+
//#region src/media/twitch-video/media.tsx
|
|
10
|
+
const TwitchVideo = forwardRef(function TwitchVideo({ children, ...rawProps }, ref) {
|
|
11
|
+
const media = useMediaInstance(TwitchMedia);
|
|
12
|
+
const props = { ...rawProps };
|
|
13
|
+
const composedRef = useComposedRefs(useAttachIframe(media), ref);
|
|
14
|
+
const [initialSrc] = useState(() => globalThis.location ? buildTwitchIframeSrc(props.src || props.source?.src || "", {
|
|
15
|
+
...twitchMediaDefaultProps,
|
|
16
|
+
...props
|
|
17
|
+
}) : "");
|
|
18
|
+
const iframeProps = useSyncProps(media, props, twitchMediaDefaultProps);
|
|
19
|
+
return /* @__PURE__ */ jsx("iframe", {
|
|
20
|
+
title: "Twitch video player",
|
|
21
|
+
src: initialSrc || void 0,
|
|
22
|
+
"data-cross-origin-frame": true,
|
|
23
|
+
allow: "accelerometer; fullscreen; autoplay; encrypted-media; picture-in-picture;",
|
|
24
|
+
sandbox: "allow-modals allow-scripts allow-same-origin allow-popups allow-popups-to-escape-sandbox",
|
|
25
|
+
scrolling: "no",
|
|
26
|
+
frameBorder: 0,
|
|
27
|
+
width: "100%",
|
|
28
|
+
height: "100%",
|
|
29
|
+
referrerPolicy: props.source?.engine?.twitch?.referrerPolicy,
|
|
30
|
+
...iframeProps,
|
|
31
|
+
ref: composedRef,
|
|
32
|
+
children
|
|
33
|
+
});
|
|
34
|
+
});
|
|
35
|
+
//#endregion
|
|
36
|
+
export { TwitchVideo };
|
|
37
|
+
|
|
38
|
+
//# sourceMappingURL=media.js.map
|