@videojs/react 10.0.0-beta.23 → 10.0.0-beta.24
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +6 -0
- package/dist/default/icons/dist/react/default/captions-off.js +1 -0
- package/dist/default/icons/dist/react/default/captions-off.js.map +1 -1
- package/dist/default/icons/dist/react/default/captions-on.js +3 -5
- package/dist/default/icons/dist/react/default/captions-on.js.map +1 -1
- package/dist/default/icons/dist/react/default/cast-enter.js +38 -11
- package/dist/default/icons/dist/react/default/cast-enter.js.map +1 -1
- package/dist/default/icons/dist/react/default/cast-exit.js +55 -14
- package/dist/default/icons/dist/react/default/cast-exit.js.map +1 -1
- package/dist/default/icons/dist/react/default/check.js +22 -0
- package/dist/default/icons/dist/react/default/check.js.map +1 -0
- package/dist/default/icons/dist/react/default/chevron.js +21 -0
- package/dist/default/icons/dist/react/default/chevron.js.map +1 -0
- package/dist/default/icons/dist/react/default/fullscreen-enter.js +3 -5
- package/dist/default/icons/dist/react/default/fullscreen-enter.js.map +1 -1
- package/dist/default/icons/dist/react/default/fullscreen-exit.js +3 -5
- package/dist/default/icons/dist/react/default/fullscreen-exit.js.map +1 -1
- package/dist/default/icons/dist/react/default/pause.js +2 -3
- package/dist/default/icons/dist/react/default/pause.js.map +1 -1
- package/dist/default/icons/dist/react/default/pip-enter.js +4 -10
- package/dist/default/icons/dist/react/default/pip-enter.js.map +1 -1
- package/dist/default/icons/dist/react/default/pip-exit.js +4 -10
- package/dist/default/icons/dist/react/default/pip-exit.js.map +1 -1
- package/dist/default/icons/dist/react/default/play.js +3 -5
- package/dist/default/icons/dist/react/default/play.js.map +1 -1
- package/dist/default/icons/dist/react/default/restart.js +3 -8
- package/dist/default/icons/dist/react/default/restart.js.map +1 -1
- package/dist/default/icons/dist/react/default/seek.js +3 -5
- package/dist/default/icons/dist/react/default/seek.js.map +1 -1
- package/dist/default/icons/dist/react/default/spinner.js +38 -117
- package/dist/default/icons/dist/react/default/spinner.js.map +1 -1
- package/dist/default/icons/dist/react/default/volume-high.js +3 -8
- package/dist/default/icons/dist/react/default/volume-high.js.map +1 -1
- package/dist/default/icons/dist/react/default/volume-low.js +3 -5
- package/dist/default/icons/dist/react/default/volume-low.js.map +1 -1
- package/dist/default/icons/dist/react/default/volume-off.js +3 -5
- package/dist/default/icons/dist/react/default/volume-off.js.map +1 -1
- package/dist/default/icons/dist/react/minimal/captions-off.js +1 -0
- package/dist/default/icons/dist/react/minimal/captions-off.js.map +1 -1
- package/dist/default/icons/dist/react/minimal/captions-on.js +3 -5
- package/dist/default/icons/dist/react/minimal/captions-on.js.map +1 -1
- package/dist/default/icons/dist/react/minimal/cast-enter.js +38 -7
- package/dist/default/icons/dist/react/minimal/cast-enter.js.map +1 -1
- package/dist/default/icons/dist/react/minimal/cast-exit.js +56 -11
- package/dist/default/icons/dist/react/minimal/cast-exit.js.map +1 -1
- package/dist/default/icons/dist/react/minimal/check.js +22 -0
- package/dist/default/icons/dist/react/minimal/check.js.map +1 -0
- package/dist/default/icons/dist/react/minimal/chevron.js +21 -0
- package/dist/default/icons/dist/react/minimal/chevron.js.map +1 -0
- package/dist/default/icons/dist/react/minimal/fullscreen-enter.js +5 -13
- package/dist/default/icons/dist/react/minimal/fullscreen-enter.js.map +1 -1
- package/dist/default/icons/dist/react/minimal/fullscreen-exit.js +5 -13
- package/dist/default/icons/dist/react/minimal/fullscreen-exit.js.map +1 -1
- package/dist/default/icons/dist/react/minimal/pause.js +2 -3
- package/dist/default/icons/dist/react/minimal/pause.js.map +1 -1
- package/dist/default/icons/dist/react/minimal/pip-enter.js +5 -14
- package/dist/default/icons/dist/react/minimal/pip-enter.js.map +1 -1
- package/dist/default/icons/dist/react/minimal/pip-exit.js +5 -14
- package/dist/default/icons/dist/react/minimal/pip-exit.js.map +1 -1
- package/dist/default/icons/dist/react/minimal/play.js +3 -5
- package/dist/default/icons/dist/react/minimal/play.js.map +1 -1
- package/dist/default/icons/dist/react/minimal/restart.js +3 -8
- package/dist/default/icons/dist/react/minimal/restart.js.map +1 -1
- package/dist/default/icons/dist/react/minimal/seek.js +3 -5
- package/dist/default/icons/dist/react/minimal/seek.js.map +1 -1
- package/dist/default/icons/dist/react/minimal/spinner.js +38 -117
- package/dist/default/icons/dist/react/minimal/spinner.js.map +1 -1
- package/dist/default/icons/dist/react/minimal/volume-high.js +3 -8
- package/dist/default/icons/dist/react/minimal/volume-high.js.map +1 -1
- package/dist/default/icons/dist/react/minimal/volume-low.js +3 -5
- package/dist/default/icons/dist/react/minimal/volume-low.js.map +1 -1
- package/dist/default/icons/dist/react/minimal/volume-off.js +3 -5
- package/dist/default/icons/dist/react/minimal/volume-off.js.map +1 -1
- package/dist/default/icons/index.js +19 -0
- package/dist/default/icons/minimal/index.js +19 -0
- package/dist/default/index.js +17 -8
- package/dist/default/media/simple-hls-video/index.js +2 -2
- package/dist/default/media/simple-hls-video/index.js.map +1 -1
- package/dist/default/player/context.js +9 -1
- package/dist/default/player/context.js.map +1 -1
- package/dist/default/player/create-player.js +4 -1
- package/dist/default/player/create-player.js.map +1 -1
- package/dist/default/presets/audio/minimal-skin.css +209 -99
- package/dist/default/presets/audio/minimal-skin.js +107 -7
- package/dist/default/presets/audio/minimal-skin.js.map +1 -1
- package/dist/default/presets/audio/minimal-skin.tailwind.js +41 -7
- package/dist/default/presets/audio/minimal-skin.tailwind.js.map +1 -1
- package/dist/default/presets/audio/skin.css +235 -99
- package/dist/default/presets/audio/skin.js +42 -7
- package/dist/default/presets/audio/skin.js.map +1 -1
- package/dist/default/presets/audio/skin.tailwind.js +115 -14
- package/dist/default/presets/audio/skin.tailwind.js.map +1 -1
- package/dist/default/presets/live-audio/minimal-skin.css +209 -99
- package/dist/default/presets/live-audio/minimal-skin.js +32 -4
- package/dist/default/presets/live-audio/minimal-skin.js.map +1 -1
- package/dist/default/presets/live-audio/minimal-skin.tailwind.js +32 -4
- package/dist/default/presets/live-audio/minimal-skin.tailwind.js.map +1 -1
- package/dist/default/presets/live-audio/skin.css +235 -99
- package/dist/default/presets/live-audio/skin.js +9 -4
- package/dist/default/presets/live-audio/skin.js.map +1 -1
- package/dist/default/presets/live-audio/skin.tailwind.js +37 -9
- package/dist/default/presets/live-audio/skin.tailwind.js.map +1 -1
- package/dist/default/presets/live-video/minimal-skin.css +553 -138
- package/dist/default/presets/live-video/minimal-skin.js +112 -4
- package/dist/default/presets/live-video/minimal-skin.js.map +1 -1
- package/dist/default/presets/live-video/minimal-skin.tailwind.js +114 -4
- package/dist/default/presets/live-video/minimal-skin.tailwind.js.map +1 -1
- package/dist/default/presets/live-video/skin.css +563 -136
- package/dist/default/presets/live-video/skin.js +55 -3
- package/dist/default/presets/live-video/skin.js.map +1 -1
- package/dist/default/presets/live-video/skin.tailwind.js +201 -8
- package/dist/default/presets/live-video/skin.tailwind.js.map +1 -1
- package/dist/default/presets/video/minimal-skin.css +553 -138
- package/dist/default/presets/video/minimal-skin.js +205 -23
- package/dist/default/presets/video/minimal-skin.js.map +1 -1
- package/dist/default/presets/video/minimal-skin.tailwind.js +209 -24
- package/dist/default/presets/video/minimal-skin.tailwind.js.map +1 -1
- package/dist/default/presets/video/skin.css +563 -136
- package/dist/default/presets/video/skin.js +100 -28
- package/dist/default/presets/video/skin.js.map +1 -1
- package/dist/default/presets/video/skin.tailwind.js +208 -29
- package/dist/default/presets/video/skin.tailwind.js.map +1 -1
- package/dist/default/skins/dist/default/default/tailwind/audio.tailwind.js +3 -2
- 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 +3 -2
- package/dist/default/skins/dist/default/default/tailwind/components/button.js.map +1 -1
- 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/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-feedback.js +40 -0
- package/dist/default/skins/dist/default/default/tailwind/components/input-feedback.js.map +1 -0
- package/dist/default/skins/dist/default/default/tailwind/components/menu.js +12 -0
- package/dist/default/skins/dist/default/default/tailwind/components/menu.js.map +1 -0
- package/dist/default/skins/dist/default/default/tailwind/components/playback-rate.js +1 -1
- package/dist/default/skins/dist/default/default/tailwind/components/playback-rate.js.map +1 -1
- package/dist/default/skins/dist/default/default/tailwind/components/preview.js +1 -1
- package/dist/default/skins/dist/default/default/tailwind/components/preview.js.map +1 -1
- package/dist/default/skins/dist/default/default/tailwind/components/reset.js +7 -0
- package/dist/default/skins/dist/default/default/tailwind/components/reset.js.map +1 -0
- package/dist/default/skins/dist/default/default/tailwind/components/root.js +2 -1
- package/dist/default/skins/dist/default/default/tailwind/components/root.js.map +1 -1
- package/dist/default/skins/dist/default/default/tailwind/components/slider.js +1 -1
- package/dist/default/skins/dist/default/default/tailwind/components/slider.js.map +1 -1
- package/dist/default/skins/dist/default/default/tailwind/video.tailwind.js +13 -4
- 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 +5 -3
- 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 +3 -2
- package/dist/default/skins/dist/default/minimal/tailwind/components/button.js.map +1 -1
- 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/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-feedback.js +41 -0
- package/dist/default/skins/dist/default/minimal/tailwind/components/input-feedback.js.map +1 -0
- package/dist/default/skins/dist/default/minimal/tailwind/components/menu.js +12 -0
- package/dist/default/skins/dist/default/minimal/tailwind/components/menu.js.map +1 -0
- package/dist/default/skins/dist/default/minimal/tailwind/components/playback-rate.js +6 -0
- package/dist/default/skins/dist/default/minimal/tailwind/components/playback-rate.js.map +1 -0
- package/dist/default/skins/dist/default/minimal/tailwind/components/preview.js +1 -1
- package/dist/default/skins/dist/default/minimal/tailwind/components/preview.js.map +1 -1
- package/dist/default/skins/dist/default/minimal/tailwind/components/reset.js +7 -0
- package/dist/default/skins/dist/default/minimal/tailwind/components/reset.js.map +1 -0
- package/dist/default/skins/dist/default/minimal/tailwind/components/root.js +2 -1
- package/dist/default/skins/dist/default/minimal/tailwind/components/root.js.map +1 -1
- package/dist/default/skins/dist/default/minimal/tailwind/components/slider.js +1 -1
- package/dist/default/skins/dist/default/minimal/tailwind/components/slider.js.map +1 -1
- package/dist/default/skins/dist/default/minimal/tailwind/video.tailwind.js +7 -4
- package/dist/default/skins/dist/default/minimal/tailwind/video.tailwind.js.map +1 -1
- package/dist/default/tailwind.css +66 -0
- package/dist/default/ui/controls/context.js +4 -1
- package/dist/default/ui/controls/context.js.map +1 -1
- package/dist/default/ui/gesture/gesture.js +2 -1
- package/dist/default/ui/gesture/gesture.js.map +1 -1
- package/dist/default/ui/gesture/index.js +2 -0
- package/dist/default/ui/hotkey/hotkey.js +1 -0
- package/dist/default/ui/hotkey/hotkey.js.map +1 -1
- package/dist/default/ui/hotkey/index.js +2 -0
- package/dist/default/ui/input-indicators/use-indicator-visibility.js +25 -0
- package/dist/default/ui/input-indicators/use-indicator-visibility.js.map +1 -0
- package/dist/default/ui/input-indicators/use-input-action-subscription.js +22 -0
- package/dist/default/ui/input-indicators/use-input-action-subscription.js.map +1 -0
- package/dist/default/ui/input-indicators/use-input-indicator-root.js +21 -0
- package/dist/default/ui/input-indicators/use-input-indicator-root.js.map +1 -0
- package/dist/default/ui/input-indicators/use-rendered-indicator-state.js +40 -0
- package/dist/default/ui/input-indicators/use-rendered-indicator-state.js.map +1 -0
- package/dist/default/ui/live-button/index.js +2 -0
- package/dist/default/ui/live-button/live-button.js +89 -0
- package/dist/default/ui/live-button/live-button.js.map +1 -0
- package/dist/default/ui/menu/context.js +29 -0
- package/dist/default/ui/menu/context.js.map +1 -0
- package/dist/default/ui/menu/index.js +3 -0
- package/dist/default/ui/menu/index.parts.js +34 -0
- package/dist/default/ui/menu/index.parts.js.map +1 -0
- package/dist/default/ui/menu/menu-back.js +31 -0
- package/dist/default/ui/menu/menu-back.js.map +1 -0
- package/dist/default/ui/menu/menu-checkbox-item.js +50 -0
- package/dist/default/ui/menu/menu-checkbox-item.js.map +1 -0
- package/dist/default/ui/menu/menu-content.js +284 -0
- package/dist/default/ui/menu/menu-content.js.map +1 -0
- package/dist/default/ui/menu/menu-group.js +26 -0
- package/dist/default/ui/menu/menu-group.js.map +1 -0
- package/dist/default/ui/menu/menu-item-indicator.js +24 -0
- package/dist/default/ui/menu/menu-item-indicator.js.map +1 -0
- package/dist/default/ui/menu/menu-item.js +53 -0
- package/dist/default/ui/menu/menu-item.js.map +1 -0
- package/dist/default/ui/menu/menu-label.js +23 -0
- package/dist/default/ui/menu/menu-label.js.map +1 -0
- package/dist/default/ui/menu/menu-radio-group.js +33 -0
- package/dist/default/ui/menu/menu-radio-group.js.map +1 -0
- package/dist/default/ui/menu/menu-radio-item.js +57 -0
- package/dist/default/ui/menu/menu-radio-item.js.map +1 -0
- package/dist/default/ui/menu/menu-root.js +136 -0
- package/dist/default/ui/menu/menu-root.js.map +1 -0
- package/dist/default/ui/menu/menu-separator.js +23 -0
- package/dist/default/ui/menu/menu-separator.js.map +1 -0
- package/dist/default/ui/menu/menu-trigger.js +124 -0
- package/dist/default/ui/menu/menu-trigger.js.map +1 -0
- package/dist/default/ui/menu/menu-view.js +23 -0
- package/dist/default/ui/menu/menu-view.js.map +1 -0
- package/dist/default/ui/playback-rate-menu/context.js +20 -0
- package/dist/default/ui/playback-rate-menu/context.js.map +1 -0
- package/dist/default/ui/playback-rate-menu/index.js +3 -0
- package/dist/default/ui/playback-rate-menu/index.parts.js +17 -0
- package/dist/default/ui/playback-rate-menu/index.parts.js.map +1 -0
- package/dist/default/ui/playback-rate-menu/playback-rate-menu-content.js +28 -0
- package/dist/default/ui/playback-rate-menu/playback-rate-menu-content.js.map +1 -0
- package/dist/default/ui/playback-rate-menu/playback-rate-menu-root.js +36 -0
- package/dist/default/ui/playback-rate-menu/playback-rate-menu-root.js.map +1 -0
- package/dist/default/ui/playback-rate-menu/playback-rate-menu-trigger.js +51 -0
- package/dist/default/ui/playback-rate-menu/playback-rate-menu-trigger.js.map +1 -0
- package/dist/default/ui/playback-rate-menu/use-playback-rate-menu.js +27 -0
- package/dist/default/ui/playback-rate-menu/use-playback-rate-menu.js.map +1 -0
- package/dist/default/ui/popover/context.js.map +1 -1
- package/dist/default/ui/popover/popover-popup.js +20 -7
- package/dist/default/ui/popover/popover-popup.js.map +1 -1
- package/dist/default/ui/popover/popover-root.js +20 -5
- package/dist/default/ui/popover/popover-root.js.map +1 -1
- package/dist/default/ui/seek-indicator/context.js +20 -0
- package/dist/default/ui/seek-indicator/context.js.map +1 -0
- package/dist/default/ui/seek-indicator/index.js +2 -0
- package/dist/default/ui/seek-indicator/index.parts.js +12 -0
- package/dist/default/ui/seek-indicator/index.parts.js.map +1 -0
- package/dist/default/ui/seek-indicator/seek-indicator-root.js +30 -0
- package/dist/default/ui/seek-indicator/seek-indicator-root.js.map +1 -0
- package/dist/default/ui/seek-indicator/seek-indicator-value.js +23 -0
- package/dist/default/ui/seek-indicator/seek-indicator-value.js.map +1 -0
- package/dist/default/ui/slider/context.js.map +1 -1
- package/dist/default/ui/status-announcer/index.js +2 -0
- package/dist/default/ui/status-announcer/status-announcer.js +36 -0
- package/dist/default/ui/status-announcer/status-announcer.js.map +1 -0
- package/dist/default/ui/status-indicator/context.js +20 -0
- package/dist/default/ui/status-indicator/context.js.map +1 -0
- package/dist/default/ui/status-indicator/index.js +2 -0
- package/dist/default/ui/status-indicator/index.parts.js +12 -0
- package/dist/default/ui/status-indicator/index.parts.js.map +1 -0
- package/dist/default/ui/status-indicator/status-indicator-root.js +34 -0
- package/dist/default/ui/status-indicator/status-indicator-root.js.map +1 -0
- package/dist/default/ui/status-indicator/status-indicator-value.js +23 -0
- package/dist/default/ui/status-indicator/status-indicator-value.js.map +1 -0
- package/dist/default/ui/tooltip/context.js.map +1 -1
- package/dist/default/ui/tooltip/tooltip-popup.js +20 -7
- package/dist/default/ui/tooltip/tooltip-popup.js.map +1 -1
- package/dist/default/ui/tooltip/tooltip-root.js +16 -4
- package/dist/default/ui/tooltip/tooltip-root.js.map +1 -1
- package/dist/default/ui/volume-indicator/context.js +20 -0
- package/dist/default/ui/volume-indicator/context.js.map +1 -0
- package/dist/default/ui/volume-indicator/index.js +2 -0
- package/dist/default/ui/volume-indicator/index.parts.js +14 -0
- package/dist/default/ui/volume-indicator/index.parts.js.map +1 -0
- package/dist/default/ui/volume-indicator/volume-indicator-fill.js +36 -0
- package/dist/default/ui/volume-indicator/volume-indicator-fill.js.map +1 -0
- package/dist/default/ui/volume-indicator/volume-indicator-root.js +30 -0
- package/dist/default/ui/volume-indicator/volume-indicator-root.js.map +1 -0
- package/dist/default/ui/volume-indicator/volume-indicator-value.js +23 -0
- package/dist/default/ui/volume-indicator/volume-indicator-value.js.map +1 -0
- package/dist/default/utils/use-render.js.map +1 -1
- package/dist/dev/icons/dist/react/default/captions-off.js +1 -0
- package/dist/dev/icons/dist/react/default/captions-off.js.map +1 -1
- package/dist/dev/icons/dist/react/default/captions-on.js +3 -5
- package/dist/dev/icons/dist/react/default/captions-on.js.map +1 -1
- package/dist/dev/icons/dist/react/default/cast-enter.js +38 -11
- package/dist/dev/icons/dist/react/default/cast-enter.js.map +1 -1
- package/dist/dev/icons/dist/react/default/cast-exit.js +55 -14
- package/dist/dev/icons/dist/react/default/cast-exit.js.map +1 -1
- package/dist/dev/icons/dist/react/default/check.js +22 -0
- package/dist/dev/icons/dist/react/default/check.js.map +1 -0
- package/dist/dev/icons/dist/react/default/chevron.js +21 -0
- package/dist/dev/icons/dist/react/default/chevron.js.map +1 -0
- package/dist/dev/icons/dist/react/default/fullscreen-enter.js +3 -5
- package/dist/dev/icons/dist/react/default/fullscreen-enter.js.map +1 -1
- package/dist/dev/icons/dist/react/default/fullscreen-exit.js +3 -5
- package/dist/dev/icons/dist/react/default/fullscreen-exit.js.map +1 -1
- package/dist/dev/icons/dist/react/default/index.d.ts +23 -0
- package/dist/dev/icons/dist/react/default/index.d.ts.map +1 -0
- package/dist/dev/icons/dist/react/default/pause.js +2 -3
- package/dist/dev/icons/dist/react/default/pause.js.map +1 -1
- package/dist/dev/icons/dist/react/default/pip-enter.js +4 -10
- package/dist/dev/icons/dist/react/default/pip-enter.js.map +1 -1
- package/dist/dev/icons/dist/react/default/pip-exit.js +4 -10
- package/dist/dev/icons/dist/react/default/pip-exit.js.map +1 -1
- package/dist/dev/icons/dist/react/default/play.js +3 -5
- package/dist/dev/icons/dist/react/default/play.js.map +1 -1
- package/dist/dev/icons/dist/react/default/restart.js +3 -8
- package/dist/dev/icons/dist/react/default/restart.js.map +1 -1
- package/dist/dev/icons/dist/react/default/seek.js +3 -5
- package/dist/dev/icons/dist/react/default/seek.js.map +1 -1
- package/dist/dev/icons/dist/react/default/spinner.js +38 -117
- package/dist/dev/icons/dist/react/default/spinner.js.map +1 -1
- package/dist/dev/icons/dist/react/default/volume-high.js +3 -8
- package/dist/dev/icons/dist/react/default/volume-high.js.map +1 -1
- package/dist/dev/icons/dist/react/default/volume-low.js +3 -5
- package/dist/dev/icons/dist/react/default/volume-low.js.map +1 -1
- package/dist/dev/icons/dist/react/default/volume-off.js +3 -5
- package/dist/dev/icons/dist/react/default/volume-off.js.map +1 -1
- package/dist/dev/icons/dist/react/minimal/captions-off.js +1 -0
- package/dist/dev/icons/dist/react/minimal/captions-off.js.map +1 -1
- package/dist/dev/icons/dist/react/minimal/captions-on.js +3 -5
- package/dist/dev/icons/dist/react/minimal/captions-on.js.map +1 -1
- package/dist/dev/icons/dist/react/minimal/cast-enter.js +38 -7
- package/dist/dev/icons/dist/react/minimal/cast-enter.js.map +1 -1
- package/dist/dev/icons/dist/react/minimal/cast-exit.js +56 -11
- package/dist/dev/icons/dist/react/minimal/cast-exit.js.map +1 -1
- package/dist/dev/icons/dist/react/minimal/check.js +22 -0
- package/dist/dev/icons/dist/react/minimal/check.js.map +1 -0
- package/dist/dev/icons/dist/react/minimal/chevron.js +21 -0
- package/dist/dev/icons/dist/react/minimal/chevron.js.map +1 -0
- package/dist/dev/icons/dist/react/minimal/fullscreen-enter.js +5 -13
- package/dist/dev/icons/dist/react/minimal/fullscreen-enter.js.map +1 -1
- package/dist/dev/icons/dist/react/minimal/fullscreen-exit.js +5 -13
- package/dist/dev/icons/dist/react/minimal/fullscreen-exit.js.map +1 -1
- package/dist/dev/icons/dist/react/minimal/index.d.ts +23 -0
- package/dist/dev/icons/dist/react/minimal/index.d.ts.map +1 -0
- package/dist/dev/icons/dist/react/minimal/pause.js +2 -3
- package/dist/dev/icons/dist/react/minimal/pause.js.map +1 -1
- package/dist/dev/icons/dist/react/minimal/pip-enter.js +5 -14
- package/dist/dev/icons/dist/react/minimal/pip-enter.js.map +1 -1
- package/dist/dev/icons/dist/react/minimal/pip-exit.js +5 -14
- package/dist/dev/icons/dist/react/minimal/pip-exit.js.map +1 -1
- package/dist/dev/icons/dist/react/minimal/play.js +3 -5
- package/dist/dev/icons/dist/react/minimal/play.js.map +1 -1
- package/dist/dev/icons/dist/react/minimal/restart.js +3 -8
- package/dist/dev/icons/dist/react/minimal/restart.js.map +1 -1
- package/dist/dev/icons/dist/react/minimal/seek.js +3 -5
- package/dist/dev/icons/dist/react/minimal/seek.js.map +1 -1
- package/dist/dev/icons/dist/react/minimal/spinner.js +38 -117
- package/dist/dev/icons/dist/react/minimal/spinner.js.map +1 -1
- package/dist/dev/icons/dist/react/minimal/volume-high.js +3 -8
- package/dist/dev/icons/dist/react/minimal/volume-high.js.map +1 -1
- package/dist/dev/icons/dist/react/minimal/volume-low.js +3 -5
- package/dist/dev/icons/dist/react/minimal/volume-low.js.map +1 -1
- package/dist/dev/icons/dist/react/minimal/volume-off.js +3 -5
- package/dist/dev/icons/dist/react/minimal/volume-off.js.map +1 -1
- package/dist/dev/icons/index.d.ts +2 -0
- package/dist/dev/icons/index.js +19 -0
- package/dist/dev/icons/minimal/index.d.ts +2 -0
- package/dist/dev/icons/minimal/index.js +19 -0
- package/dist/dev/index.d.ts +25 -8
- package/dist/dev/index.js +17 -8
- package/dist/dev/media/simple-hls-video/index.d.ts +2 -2
- package/dist/dev/media/simple-hls-video/index.d.ts.map +1 -1
- package/dist/dev/media/simple-hls-video/index.js +2 -2
- package/dist/dev/media/simple-hls-video/index.js.map +1 -1
- package/dist/dev/player/context.d.ts +5 -2
- package/dist/dev/player/context.d.ts.map +1 -1
- package/dist/dev/player/context.js +9 -1
- package/dist/dev/player/context.js.map +1 -1
- package/dist/dev/player/create-player.d.ts.map +1 -1
- package/dist/dev/player/create-player.js +4 -1
- package/dist/dev/player/create-player.js.map +1 -1
- package/dist/dev/presets/audio/minimal-skin.css +209 -99
- package/dist/dev/presets/audio/minimal-skin.d.ts.map +1 -1
- package/dist/dev/presets/audio/minimal-skin.js +107 -7
- 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 +41 -7
- package/dist/dev/presets/audio/minimal-skin.tailwind.js.map +1 -1
- package/dist/dev/presets/audio/skin.css +235 -99
- package/dist/dev/presets/audio/skin.d.ts.map +1 -1
- package/dist/dev/presets/audio/skin.js +42 -7
- 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 +115 -14
- package/dist/dev/presets/audio/skin.tailwind.js.map +1 -1
- package/dist/dev/presets/live-audio/minimal-skin.css +209 -99
- package/dist/dev/presets/live-audio/minimal-skin.d.ts.map +1 -1
- package/dist/dev/presets/live-audio/minimal-skin.js +32 -4
- 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 +32 -4
- package/dist/dev/presets/live-audio/minimal-skin.tailwind.js.map +1 -1
- package/dist/dev/presets/live-audio/skin.css +235 -99
- package/dist/dev/presets/live-audio/skin.d.ts.map +1 -1
- package/dist/dev/presets/live-audio/skin.js +9 -4
- 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 +37 -9
- package/dist/dev/presets/live-audio/skin.tailwind.js.map +1 -1
- package/dist/dev/presets/live-video/minimal-skin.css +553 -138
- package/dist/dev/presets/live-video/minimal-skin.d.ts.map +1 -1
- package/dist/dev/presets/live-video/minimal-skin.js +112 -4
- 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 +114 -4
- package/dist/dev/presets/live-video/minimal-skin.tailwind.js.map +1 -1
- package/dist/dev/presets/live-video/skin.css +563 -136
- package/dist/dev/presets/live-video/skin.d.ts.map +1 -1
- package/dist/dev/presets/live-video/skin.js +55 -3
- 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 +201 -8
- package/dist/dev/presets/live-video/skin.tailwind.js.map +1 -1
- package/dist/dev/presets/video/minimal-skin.css +553 -138
- package/dist/dev/presets/video/minimal-skin.d.ts.map +1 -1
- package/dist/dev/presets/video/minimal-skin.js +205 -23
- 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 +209 -24
- package/dist/dev/presets/video/minimal-skin.tailwind.js.map +1 -1
- package/dist/dev/presets/video/skin.css +563 -136
- package/dist/dev/presets/video/skin.d.ts.map +1 -1
- package/dist/dev/presets/video/skin.js +100 -28
- 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 +208 -29
- package/dist/dev/presets/video/skin.tailwind.js.map +1 -1
- package/dist/dev/skins/dist/default/default/tailwind/audio.tailwind.js +3 -2
- 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 +3 -2
- package/dist/dev/skins/dist/default/default/tailwind/components/button.js.map +1 -1
- 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/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-feedback.js +40 -0
- package/dist/dev/skins/dist/default/default/tailwind/components/input-feedback.js.map +1 -0
- package/dist/dev/skins/dist/default/default/tailwind/components/menu.js +12 -0
- package/dist/dev/skins/dist/default/default/tailwind/components/menu.js.map +1 -0
- package/dist/dev/skins/dist/default/default/tailwind/components/playback-rate.js +1 -1
- package/dist/dev/skins/dist/default/default/tailwind/components/playback-rate.js.map +1 -1
- package/dist/dev/skins/dist/default/default/tailwind/components/preview.js +1 -1
- package/dist/dev/skins/dist/default/default/tailwind/components/preview.js.map +1 -1
- package/dist/dev/skins/dist/default/default/tailwind/components/reset.js +7 -0
- package/dist/dev/skins/dist/default/default/tailwind/components/reset.js.map +1 -0
- package/dist/dev/skins/dist/default/default/tailwind/components/root.js +2 -1
- package/dist/dev/skins/dist/default/default/tailwind/components/root.js.map +1 -1
- package/dist/dev/skins/dist/default/default/tailwind/components/slider.js +1 -1
- package/dist/dev/skins/dist/default/default/tailwind/components/slider.js.map +1 -1
- package/dist/dev/skins/dist/default/default/tailwind/video.tailwind.js +13 -4
- 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 +5 -3
- 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 +3 -2
- package/dist/dev/skins/dist/default/minimal/tailwind/components/button.js.map +1 -1
- 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/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-feedback.js +41 -0
- package/dist/dev/skins/dist/default/minimal/tailwind/components/input-feedback.js.map +1 -0
- package/dist/dev/skins/dist/default/minimal/tailwind/components/menu.js +12 -0
- package/dist/dev/skins/dist/default/minimal/tailwind/components/menu.js.map +1 -0
- package/dist/dev/skins/dist/default/minimal/tailwind/components/playback-rate.js +6 -0
- package/dist/dev/skins/dist/default/minimal/tailwind/components/playback-rate.js.map +1 -0
- package/dist/dev/skins/dist/default/minimal/tailwind/components/preview.js +1 -1
- package/dist/dev/skins/dist/default/minimal/tailwind/components/preview.js.map +1 -1
- package/dist/dev/skins/dist/default/minimal/tailwind/components/reset.js +7 -0
- package/dist/dev/skins/dist/default/minimal/tailwind/components/reset.js.map +1 -0
- package/dist/dev/skins/dist/default/minimal/tailwind/components/root.js +2 -1
- package/dist/dev/skins/dist/default/minimal/tailwind/components/root.js.map +1 -1
- package/dist/dev/skins/dist/default/minimal/tailwind/components/slider.js +1 -1
- package/dist/dev/skins/dist/default/minimal/tailwind/components/slider.js.map +1 -1
- package/dist/dev/skins/dist/default/minimal/tailwind/video.tailwind.js +7 -4
- package/dist/dev/skins/dist/default/minimal/tailwind/video.tailwind.js.map +1 -1
- package/dist/dev/tailwind.css +66 -0
- package/dist/dev/ui/controls/context.js +4 -1
- package/dist/dev/ui/controls/context.js.map +1 -1
- package/dist/dev/ui/gesture/gesture.js +2 -1
- package/dist/dev/ui/gesture/gesture.js.map +1 -1
- package/dist/dev/ui/gesture/index.d.ts +2 -0
- package/dist/dev/ui/gesture/index.js +2 -0
- package/dist/dev/ui/hotkey/hotkey.d.ts.map +1 -1
- package/dist/dev/ui/hotkey/hotkey.js +1 -0
- package/dist/dev/ui/hotkey/hotkey.js.map +1 -1
- package/dist/dev/ui/hotkey/index.d.ts +2 -0
- package/dist/dev/ui/hotkey/index.js +2 -0
- package/dist/dev/ui/input-indicators/use-indicator-visibility.js +25 -0
- package/dist/dev/ui/input-indicators/use-indicator-visibility.js.map +1 -0
- package/dist/dev/ui/input-indicators/use-input-action-subscription.js +22 -0
- package/dist/dev/ui/input-indicators/use-input-action-subscription.js.map +1 -0
- package/dist/dev/ui/input-indicators/use-input-indicator-root.js +21 -0
- package/dist/dev/ui/input-indicators/use-input-indicator-root.js.map +1 -0
- package/dist/dev/ui/input-indicators/use-rendered-indicator-state.js +40 -0
- package/dist/dev/ui/input-indicators/use-rendered-indicator-state.js.map +1 -0
- package/dist/dev/ui/live-button/index.d.ts +2 -0
- package/dist/dev/ui/live-button/index.js +2 -0
- package/dist/dev/ui/live-button/live-button.d.ts +34 -0
- package/dist/dev/ui/live-button/live-button.d.ts.map +1 -0
- package/dist/dev/ui/live-button/live-button.js +92 -0
- package/dist/dev/ui/live-button/live-button.js.map +1 -0
- package/dist/dev/ui/menu/context.d.ts +29 -0
- package/dist/dev/ui/menu/context.d.ts.map +1 -0
- package/dist/dev/ui/menu/context.js +29 -0
- package/dist/dev/ui/menu/context.js.map +1 -0
- package/dist/dev/ui/menu/index.d.ts +3 -0
- package/dist/dev/ui/menu/index.js +3 -0
- package/dist/dev/ui/menu/index.parts.d.ts +21 -0
- package/dist/dev/ui/menu/index.parts.d.ts.map +1 -0
- package/dist/dev/ui/menu/index.parts.js +34 -0
- package/dist/dev/ui/menu/index.parts.js.map +1 -0
- package/dist/dev/ui/menu/menu-back.d.ts +18 -0
- package/dist/dev/ui/menu/menu-back.d.ts.map +1 -0
- package/dist/dev/ui/menu/menu-back.js +31 -0
- package/dist/dev/ui/menu/menu-back.js.map +1 -0
- package/dist/dev/ui/menu/menu-checkbox-item.d.ts +22 -0
- package/dist/dev/ui/menu/menu-checkbox-item.d.ts.map +1 -0
- package/dist/dev/ui/menu/menu-checkbox-item.js +50 -0
- package/dist/dev/ui/menu/menu-checkbox-item.js.map +1 -0
- package/dist/dev/ui/menu/menu-content.d.ts +15 -0
- package/dist/dev/ui/menu/menu-content.d.ts.map +1 -0
- package/dist/dev/ui/menu/menu-content.js +284 -0
- package/dist/dev/ui/menu/menu-content.js.map +1 -0
- package/dist/dev/ui/menu/menu-group.d.ts +18 -0
- package/dist/dev/ui/menu/menu-group.d.ts.map +1 -0
- package/dist/dev/ui/menu/menu-group.js +26 -0
- package/dist/dev/ui/menu/menu-group.js.map +1 -0
- package/dist/dev/ui/menu/menu-item-indicator.d.ts +20 -0
- package/dist/dev/ui/menu/menu-item-indicator.d.ts.map +1 -0
- package/dist/dev/ui/menu/menu-item-indicator.js +24 -0
- package/dist/dev/ui/menu/menu-item-indicator.js.map +1 -0
- package/dist/dev/ui/menu/menu-item.d.ts +20 -0
- package/dist/dev/ui/menu/menu-item.d.ts.map +1 -0
- package/dist/dev/ui/menu/menu-item.js +53 -0
- package/dist/dev/ui/menu/menu-item.js.map +1 -0
- package/dist/dev/ui/menu/menu-label.d.ts +15 -0
- package/dist/dev/ui/menu/menu-label.d.ts.map +1 -0
- package/dist/dev/ui/menu/menu-label.js +23 -0
- package/dist/dev/ui/menu/menu-label.js.map +1 -0
- package/dist/dev/ui/menu/menu-radio-group.d.ts +22 -0
- package/dist/dev/ui/menu/menu-radio-group.d.ts.map +1 -0
- package/dist/dev/ui/menu/menu-radio-group.js +33 -0
- package/dist/dev/ui/menu/menu-radio-group.js.map +1 -0
- package/dist/dev/ui/menu/menu-radio-item.d.ts +20 -0
- package/dist/dev/ui/menu/menu-radio-item.d.ts.map +1 -0
- package/dist/dev/ui/menu/menu-radio-item.js +57 -0
- package/dist/dev/ui/menu/menu-radio-item.js.map +1 -0
- package/dist/dev/ui/menu/menu-root.d.ts +29 -0
- package/dist/dev/ui/menu/menu-root.d.ts.map +1 -0
- package/dist/dev/ui/menu/menu-root.js +136 -0
- package/dist/dev/ui/menu/menu-root.js.map +1 -0
- package/dist/dev/ui/menu/menu-separator.d.ts +15 -0
- package/dist/dev/ui/menu/menu-separator.d.ts.map +1 -0
- package/dist/dev/ui/menu/menu-separator.js +23 -0
- package/dist/dev/ui/menu/menu-separator.js.map +1 -0
- package/dist/dev/ui/menu/menu-trigger.d.ts +22 -0
- package/dist/dev/ui/menu/menu-trigger.d.ts.map +1 -0
- package/dist/dev/ui/menu/menu-trigger.js +124 -0
- package/dist/dev/ui/menu/menu-trigger.js.map +1 -0
- package/dist/dev/ui/menu/menu-view.d.ts +15 -0
- package/dist/dev/ui/menu/menu-view.d.ts.map +1 -0
- package/dist/dev/ui/menu/menu-view.js +23 -0
- package/dist/dev/ui/menu/menu-view.js.map +1 -0
- package/dist/dev/ui/playback-rate-menu/context.js +20 -0
- package/dist/dev/ui/playback-rate-menu/context.js.map +1 -0
- package/dist/dev/ui/playback-rate-menu/index.d.ts +3 -0
- package/dist/dev/ui/playback-rate-menu/index.js +3 -0
- package/dist/dev/ui/playback-rate-menu/index.parts.d.ts +12 -0
- package/dist/dev/ui/playback-rate-menu/index.parts.d.ts.map +1 -0
- package/dist/dev/ui/playback-rate-menu/index.parts.js +17 -0
- package/dist/dev/ui/playback-rate-menu/index.parts.js.map +1 -0
- package/dist/dev/ui/playback-rate-menu/playback-rate-menu-content.d.ts +14 -0
- package/dist/dev/ui/playback-rate-menu/playback-rate-menu-content.d.ts.map +1 -0
- package/dist/dev/ui/playback-rate-menu/playback-rate-menu-content.js +28 -0
- package/dist/dev/ui/playback-rate-menu/playback-rate-menu-content.js.map +1 -0
- package/dist/dev/ui/playback-rate-menu/playback-rate-menu-root.d.ts +23 -0
- package/dist/dev/ui/playback-rate-menu/playback-rate-menu-root.d.ts.map +1 -0
- package/dist/dev/ui/playback-rate-menu/playback-rate-menu-root.js +39 -0
- package/dist/dev/ui/playback-rate-menu/playback-rate-menu-root.js.map +1 -0
- package/dist/dev/ui/playback-rate-menu/playback-rate-menu-trigger.d.ts +14 -0
- package/dist/dev/ui/playback-rate-menu/playback-rate-menu-trigger.d.ts.map +1 -0
- package/dist/dev/ui/playback-rate-menu/playback-rate-menu-trigger.js +51 -0
- package/dist/dev/ui/playback-rate-menu/playback-rate-menu-trigger.js.map +1 -0
- package/dist/dev/ui/playback-rate-menu/use-playback-rate-menu.d.ts +26 -0
- package/dist/dev/ui/playback-rate-menu/use-playback-rate-menu.d.ts.map +1 -0
- package/dist/dev/ui/playback-rate-menu/use-playback-rate-menu.js +27 -0
- package/dist/dev/ui/playback-rate-menu/use-playback-rate-menu.js.map +1 -0
- package/dist/dev/ui/popover/context.d.ts +3 -1
- package/dist/dev/ui/popover/context.d.ts.map +1 -1
- package/dist/dev/ui/popover/context.js.map +1 -1
- package/dist/dev/ui/popover/popover-popup.d.ts.map +1 -1
- package/dist/dev/ui/popover/popover-popup.js +20 -7
- package/dist/dev/ui/popover/popover-popup.js.map +1 -1
- package/dist/dev/ui/popover/popover-root.d.ts +4 -1
- package/dist/dev/ui/popover/popover-root.d.ts.map +1 -1
- package/dist/dev/ui/popover/popover-root.js +20 -5
- package/dist/dev/ui/popover/popover-root.js.map +1 -1
- package/dist/dev/ui/seek-indicator/context.js +20 -0
- package/dist/dev/ui/seek-indicator/context.js.map +1 -0
- package/dist/dev/ui/seek-indicator/index.d.ts +2 -0
- package/dist/dev/ui/seek-indicator/index.js +2 -0
- package/dist/dev/ui/seek-indicator/index.parts.d.ts +10 -0
- package/dist/dev/ui/seek-indicator/index.parts.d.ts.map +1 -0
- package/dist/dev/ui/seek-indicator/index.parts.js +12 -0
- package/dist/dev/ui/seek-indicator/index.parts.js.map +1 -0
- package/dist/dev/ui/seek-indicator/seek-indicator-root.d.ts +14 -0
- package/dist/dev/ui/seek-indicator/seek-indicator-root.d.ts.map +1 -0
- package/dist/dev/ui/seek-indicator/seek-indicator-root.js +30 -0
- package/dist/dev/ui/seek-indicator/seek-indicator-root.js.map +1 -0
- package/dist/dev/ui/seek-indicator/seek-indicator-value.d.ts +13 -0
- package/dist/dev/ui/seek-indicator/seek-indicator-value.d.ts.map +1 -0
- package/dist/dev/ui/seek-indicator/seek-indicator-value.js +23 -0
- package/dist/dev/ui/seek-indicator/seek-indicator-value.js.map +1 -0
- package/dist/dev/ui/slider/context.js.map +1 -1
- package/dist/dev/ui/status-announcer/index.d.ts +2 -0
- package/dist/dev/ui/status-announcer/index.js +2 -0
- package/dist/dev/ui/status-announcer/status-announcer.d.ts +14 -0
- package/dist/dev/ui/status-announcer/status-announcer.d.ts.map +1 -0
- package/dist/dev/ui/status-announcer/status-announcer.js +36 -0
- package/dist/dev/ui/status-announcer/status-announcer.js.map +1 -0
- package/dist/dev/ui/status-indicator/context.js +20 -0
- package/dist/dev/ui/status-indicator/context.js.map +1 -0
- package/dist/dev/ui/status-indicator/index.d.ts +2 -0
- package/dist/dev/ui/status-indicator/index.js +2 -0
- package/dist/dev/ui/status-indicator/index.parts.d.ts +10 -0
- package/dist/dev/ui/status-indicator/index.parts.d.ts.map +1 -0
- package/dist/dev/ui/status-indicator/index.parts.js +12 -0
- package/dist/dev/ui/status-indicator/index.parts.js.map +1 -0
- package/dist/dev/ui/status-indicator/status-indicator-root.d.ts +14 -0
- package/dist/dev/ui/status-indicator/status-indicator-root.d.ts.map +1 -0
- package/dist/dev/ui/status-indicator/status-indicator-root.js +34 -0
- package/dist/dev/ui/status-indicator/status-indicator-root.js.map +1 -0
- package/dist/dev/ui/status-indicator/status-indicator-value.d.ts +13 -0
- package/dist/dev/ui/status-indicator/status-indicator-value.d.ts.map +1 -0
- package/dist/dev/ui/status-indicator/status-indicator-value.js +23 -0
- package/dist/dev/ui/status-indicator/status-indicator-value.js.map +1 -0
- package/dist/dev/ui/tooltip/context.d.ts +3 -1
- package/dist/dev/ui/tooltip/context.d.ts.map +1 -1
- package/dist/dev/ui/tooltip/context.js.map +1 -1
- package/dist/dev/ui/tooltip/tooltip-popup.d.ts.map +1 -1
- package/dist/dev/ui/tooltip/tooltip-popup.js +20 -7
- package/dist/dev/ui/tooltip/tooltip-popup.js.map +1 -1
- package/dist/dev/ui/tooltip/tooltip-root.d.ts +4 -1
- package/dist/dev/ui/tooltip/tooltip-root.d.ts.map +1 -1
- package/dist/dev/ui/tooltip/tooltip-root.js +16 -4
- package/dist/dev/ui/tooltip/tooltip-root.js.map +1 -1
- package/dist/dev/ui/volume-indicator/context.js +20 -0
- package/dist/dev/ui/volume-indicator/context.js.map +1 -0
- package/dist/dev/ui/volume-indicator/index.d.ts +2 -0
- package/dist/dev/ui/volume-indicator/index.js +2 -0
- package/dist/dev/ui/volume-indicator/index.parts.d.ts +11 -0
- package/dist/dev/ui/volume-indicator/index.parts.d.ts.map +1 -0
- package/dist/dev/ui/volume-indicator/index.parts.js +14 -0
- package/dist/dev/ui/volume-indicator/index.parts.js.map +1 -0
- package/dist/dev/ui/volume-indicator/volume-indicator-fill.d.ts +13 -0
- package/dist/dev/ui/volume-indicator/volume-indicator-fill.d.ts.map +1 -0
- package/dist/dev/ui/volume-indicator/volume-indicator-fill.js +36 -0
- package/dist/dev/ui/volume-indicator/volume-indicator-fill.js.map +1 -0
- package/dist/dev/ui/volume-indicator/volume-indicator-root.d.ts +14 -0
- package/dist/dev/ui/volume-indicator/volume-indicator-root.d.ts.map +1 -0
- package/dist/dev/ui/volume-indicator/volume-indicator-root.js +30 -0
- package/dist/dev/ui/volume-indicator/volume-indicator-root.js.map +1 -0
- package/dist/dev/ui/volume-indicator/volume-indicator-value.d.ts +13 -0
- package/dist/dev/ui/volume-indicator/volume-indicator-value.d.ts.map +1 -0
- package/dist/dev/ui/volume-indicator/volume-indicator-value.js +23 -0
- package/dist/dev/ui/volume-indicator/volume-indicator-value.js.map +1 -0
- package/dist/dev/utils/use-render.js.map +1 -1
- package/docs/README.md +7 -0
- package/docs/concepts/accessibility.md +60 -0
- package/docs/concepts/browser-support.md +37 -0
- package/docs/concepts/features.md +131 -0
- package/docs/concepts/overview.md +119 -0
- package/docs/concepts/presets.md +204 -0
- package/docs/concepts/skins.md +2094 -0
- package/docs/concepts/ui-components.md +83 -0
- package/docs/concepts/v10-roadmap.md +75 -0
- package/docs/concepts/why-videojs.md +113 -0
- package/docs/how-to/build-with-ai.md +39 -0
- package/docs/how-to/build-your-own-component.md +142 -0
- package/docs/how-to/customize-skins.md +5990 -0
- package/docs/how-to/installation.md +170 -0
- package/docs/llms.txt +91 -0
- package/docs/reference/buffering-indicator.md +152 -0
- package/docs/reference/captions-button.md +200 -0
- package/docs/reference/controls.md +238 -0
- package/docs/reference/create-player.md +261 -0
- package/docs/reference/create-selector.md +59 -0
- package/docs/reference/feature-buffer.md +54 -0
- package/docs/reference/feature-controls.md +74 -0
- package/docs/reference/feature-error.md +65 -0
- package/docs/reference/feature-fullscreen.md +94 -0
- package/docs/reference/feature-live.md +62 -0
- package/docs/reference/feature-pip.md +94 -0
- package/docs/reference/feature-playback-rate.md +70 -0
- package/docs/reference/feature-playback.md +109 -0
- package/docs/reference/feature-remote-playback.md +74 -0
- package/docs/reference/feature-source.md +70 -0
- package/docs/reference/feature-stream-type.md +46 -0
- package/docs/reference/feature-text-tracks.md +104 -0
- package/docs/reference/feature-time.md +84 -0
- package/docs/reference/feature-volume.md +99 -0
- package/docs/reference/fullscreen-button.md +212 -0
- package/docs/reference/mute-button.md +276 -0
- package/docs/reference/pip-button.md +212 -0
- package/docs/reference/play-button.md +224 -0
- package/docs/reference/playback-rate-button.md +169 -0
- package/docs/reference/player-container.md +103 -0
- package/docs/reference/player-provider.md +102 -0
- package/docs/reference/popover.md +527 -0
- package/docs/reference/poster.md +137 -0
- package/docs/reference/render-element.md +196 -0
- package/docs/reference/seek-button.md +213 -0
- package/docs/reference/slider.md +826 -0
- package/docs/reference/thumbnail.md +322 -0
- package/docs/reference/time-slider.md +741 -0
- package/docs/reference/time.md +495 -0
- package/docs/reference/tooltip.md +631 -0
- package/docs/reference/use-button.md +124 -0
- package/docs/reference/use-container-attach.md +42 -0
- package/docs/reference/use-media-attach.md +46 -0
- package/docs/reference/use-media.md +11 -0
- package/docs/reference/use-player-context.md +93 -0
- package/docs/reference/use-player.md +226 -0
- package/docs/reference/use-selector.md +132 -0
- package/docs/reference/use-snapshot.md +127 -0
- package/docs/reference/use-store.md +257 -0
- package/docs/reference/volume-slider.md +716 -0
- package/package.json +23 -10
|
@@ -0,0 +1,170 @@
|
|
|
1
|
+
# Installation
|
|
2
|
+
|
|
3
|
+
Install Video.js and build your first player with streaming support and accessible controls
|
|
4
|
+
|
|
5
|
+
Beta Software
|
|
6
|
+
|
|
7
|
+
Video.js v10 is currently in *beta* . The API may evolve with [feedback🙏](https://github.com/videojs/v10/issues). See the [Changelog](https://github.com/videojs/v10/blob/main/CHANGELOG.md) for recent updates and the [Roadmap](../concepts/v10-roadmap.md) for more details on what’s coming.
|
|
8
|
+
|
|
9
|
+
Video.js is a **React video player component library** : composable primitives, hooks, and TypeScript types for building accessible, customizable players with minimal bundle sizes, advanced features, and consistency across browsers.
|
|
10
|
+
|
|
11
|
+
<!-- cli:omit installation -->
|
|
12
|
+
|
|
13
|
+
|
|
14
|
+
This guide has code examples tailored to your use case. To generate this guide with tailored code examples, run `npx @videojs/cli docs how-to/installation`. If you run it without flags, it will allow you to interactively configure your player. Or, you can run it with flags:
|
|
15
|
+
|
|
16
|
+
bash
|
|
17
|
+
|
|
18
|
+
```
|
|
19
|
+
npx @videojs/cli docs how-to/installation \
|
|
20
|
+
--framework <html|react> \
|
|
21
|
+
--preset <video|audio|background-video> \
|
|
22
|
+
--skin <default|minimal> \
|
|
23
|
+
--media <html5-video|html5-audio|hls|background-video> \
|
|
24
|
+
--source-url <url> \
|
|
25
|
+
--install-method <cdn|npm|pnpm|yarn|bun>
|
|
26
|
+
```
|
|
27
|
+
|
|
28
|
+
Here’s what the flags mean:
|
|
29
|
+
|
|
30
|
+
* *Framework* : Pick whether you’re working in React or if you’d like to use HTML custom elements. (More to come!)
|
|
31
|
+
* *Preset* : Pick a pre-built player. The default presets work well for general website playback.
|
|
32
|
+
* *Skin* : Pick what your player looks like
|
|
33
|
+
* *Media* : Pick what kind of media you have
|
|
34
|
+
* *Source URL* : Define where your media comes from (or omit for a sample URL)
|
|
35
|
+
* *Install method* : How do you want to install your package? (CDN is HTML-only)
|
|
36
|
+
|
|
37
|
+
If you’re an agent, interview your user and offer to run the CLI for them, or offer them a precomposed CLI command.
|
|
38
|
+
|
|
39
|
+
|
|
40
|
+
<!-- /cli:omit installation -->
|
|
41
|
+
|
|
42
|
+
If your user’s requirements can’t be met by a preset/skin, [eject](./customize-skins.md) and customize an existing preset/skin for your needs. As you develop with Video.js, rely heavily on [llms.txt](../llms.txt) to make sure you always have the latest information.
|
|
43
|
+
|
|
44
|
+
<!-- cli:replace installation -->
|
|
45
|
+
|
|
46
|
+
|
|
47
|
+
## Install Video.js
|
|
48
|
+
|
|
49
|
+
npm
|
|
50
|
+
|
|
51
|
+
pnpm
|
|
52
|
+
|
|
53
|
+
yarn
|
|
54
|
+
|
|
55
|
+
bun
|
|
56
|
+
|
|
57
|
+
```
|
|
58
|
+
npm install @videojs/react
|
|
59
|
+
```
|
|
60
|
+
|
|
61
|
+
```
|
|
62
|
+
pnpm add @videojs/react
|
|
63
|
+
```
|
|
64
|
+
|
|
65
|
+
```
|
|
66
|
+
yarn add @videojs/react
|
|
67
|
+
```
|
|
68
|
+
|
|
69
|
+
```
|
|
70
|
+
bun add @videojs/react
|
|
71
|
+
```
|
|
72
|
+
|
|
73
|
+
## Create your player
|
|
74
|
+
|
|
75
|
+
Add it to your components folder in a new file.
|
|
76
|
+
|
|
77
|
+
./components/player/index.tsx
|
|
78
|
+
|
|
79
|
+
```
|
|
80
|
+
'use client';
|
|
81
|
+
|
|
82
|
+
import '@videojs/react/video/skin.css';
|
|
83
|
+
import { createPlayer, videoFeatures } from '@videojs/react';
|
|
84
|
+
import { VideoSkin, Video } from '@videojs/react/video';
|
|
85
|
+
|
|
86
|
+
const Player = createPlayer({ features: videoFeatures });
|
|
87
|
+
|
|
88
|
+
interface MyPlayerProps {
|
|
89
|
+
src: string;
|
|
90
|
+
}
|
|
91
|
+
|
|
92
|
+
export const MyPlayer = ({ src }: MyPlayerProps) => {
|
|
93
|
+
return (
|
|
94
|
+
<Player.Provider>
|
|
95
|
+
<VideoSkin>
|
|
96
|
+
<Video src={src} playsInline />
|
|
97
|
+
</VideoSkin>
|
|
98
|
+
</Player.Provider>
|
|
99
|
+
);
|
|
100
|
+
};
|
|
101
|
+
```
|
|
102
|
+
|
|
103
|
+
## Use your player
|
|
104
|
+
|
|
105
|
+
./app/page.tsx
|
|
106
|
+
|
|
107
|
+
```
|
|
108
|
+
import { MyPlayer } from '../components/player';
|
|
109
|
+
|
|
110
|
+
export const HomePage = () => {
|
|
111
|
+
return (
|
|
112
|
+
<div>
|
|
113
|
+
<h1>Welcome to My App</h1>
|
|
114
|
+
<MyPlayer src="https://stream.mux.com/BV3YZtogl89mg9VcNBhhnHm02Y34zI1nlMuMQfAbl3dM/highest.mp4" />
|
|
115
|
+
</div>
|
|
116
|
+
);
|
|
117
|
+
};
|
|
118
|
+
```
|
|
119
|
+
|
|
120
|
+
|
|
121
|
+
|
|
122
|
+
|
|
123
|
+
|
|
124
|
+
|
|
125
|
+
|
|
126
|
+
|
|
127
|
+
<!-- /cli:replace installation -->
|
|
128
|
+
|
|
129
|
+
## CSP
|
|
130
|
+
|
|
131
|
+
If your application uses a Content Security Policy, you may need to allow additional sources for player features to work correctly.
|
|
132
|
+
|
|
133
|
+
### Common requirements
|
|
134
|
+
|
|
135
|
+
* `media-src` must allow your media URLs.
|
|
136
|
+
* `img-src` must allow any poster or thumbnail image URLs.
|
|
137
|
+
* `connect-src` must allow HLS manifests, playlists, captions, and segment requests when using HLS playback.
|
|
138
|
+
* `media-src blob:` is required when using the HLS player variants, which use MSE-backed playback.
|
|
139
|
+
* `worker-src blob:` is required when using the `hls.js` player variants.
|
|
140
|
+
* `style-src 'unsafe-inline'` is currently required for some player UI and HTML player styling behavior.
|
|
141
|
+
|
|
142
|
+
### Example
|
|
143
|
+
|
|
144
|
+
http
|
|
145
|
+
|
|
146
|
+
```
|
|
147
|
+
Content-Security-Policy:
|
|
148
|
+
script-src 'self';
|
|
149
|
+
style-src 'self' 'unsafe-inline';
|
|
150
|
+
img-src 'self' https: data: blob:;
|
|
151
|
+
media-src 'self' https: blob:;
|
|
152
|
+
connect-src 'self' https:;
|
|
153
|
+
worker-src 'self' blob:;
|
|
154
|
+
```
|
|
155
|
+
|
|
156
|
+
## See also
|
|
157
|
+
|
|
158
|
+
[
|
|
159
|
+
|
|
160
|
+
Skins
|
|
161
|
+
|
|
162
|
+
Some skins expose CSS custom properties
|
|
163
|
+
|
|
164
|
+
](../concepts/skins.md)
|
|
165
|
+
|
|
166
|
+
* * *
|
|
167
|
+
|
|
168
|
+
That’s it! You now have a fully functional Video.js player. Go forth and play.
|
|
169
|
+
|
|
170
|
+
Something not quite right? You can [submit an issue](https://github.com/videojs/v10/issues) and ask for help, or explore [other support options](/html5-video-support).
|
package/docs/llms.txt
ADDED
|
@@ -0,0 +1,91 @@
|
|
|
1
|
+
# Video.js v10 — React Documentation
|
|
2
|
+
|
|
3
|
+
## Getting started
|
|
4
|
+
|
|
5
|
+
Installation, project setup, and introductory guides.
|
|
6
|
+
|
|
7
|
+
- [Installation](./how-to/installation.md): Install Video.js and build your first player with streaming support and accessible controls
|
|
8
|
+
- [Why Video.js?](./concepts/why-videojs.md): The open-source video player for React and HTML. Lightweight, accessible components built for performance and streaming.
|
|
9
|
+
- [Overview](./concepts/overview.md): How Video.js players are structured — state, UI, and media
|
|
10
|
+
- [Build with AI](./how-to/build-with-ai.md): How to give AI tools the context they need to build Video.js players alongside you
|
|
11
|
+
- [v10 Roadmap](./concepts/v10-roadmap.md): Timeline and milestones for Video.js v10 rebuild and the future of v8
|
|
12
|
+
- [Browser Support](./concepts/browser-support.md): Which browsers Video.js 10 supports and how it handles newer platform features
|
|
13
|
+
|
|
14
|
+
## Concepts
|
|
15
|
+
|
|
16
|
+
Understanding-oriented pages that explain how and why things work. Read these to build a mental model of the library.
|
|
17
|
+
|
|
18
|
+
- [Features](./concepts/features.md): The state and actions each feature adds to the player
|
|
19
|
+
- [Skins](./concepts/skins.md): Packaged player designs that include both UI components and their styles.
|
|
20
|
+
- [Presets](./concepts/presets.md): Pre-packaged player configurations that bundle state management, skins, and media elements for specific use cases.
|
|
21
|
+
- [UI components](./concepts/ui-components.md): How Video.js UI components work — one element per component, data attributes for state, and compound composition.
|
|
22
|
+
- [Accessibility](./concepts/accessibility.md): How Video.js approaches accessibility, and what you should consider if you're deeply customizing your player
|
|
23
|
+
|
|
24
|
+
## How to
|
|
25
|
+
|
|
26
|
+
Task-oriented guides with step-by-step instructions to achieve a specific outcome by applying one or more concepts. Each guide may assume you already understand the relevant concepts.
|
|
27
|
+
|
|
28
|
+
- [Customize skins](./how-to/customize-skins.md): Learn how to customize Video.js v10 skins by copying and modifying them
|
|
29
|
+
- [Build your own UI component](./how-to/build-your-own-component.md): Create custom player controls that read state, dispatch actions, and stay accessible.
|
|
30
|
+
|
|
31
|
+
## Components
|
|
32
|
+
|
|
33
|
+
API Reference for UI components for building media player interfaces.
|
|
34
|
+
|
|
35
|
+
- [Player.Provider](./reference/player-provider.md): The state boundary — creates a store and broadcasts it to all descendants.
|
|
36
|
+
- [Player.Container](./reference/player-container.md): The player's interaction surface — handles layout, fullscreen, media attachment, and user activity detection.
|
|
37
|
+
- [BufferingIndicator](./reference/buffering-indicator.md): Loading indicator that displays when the video player is buffering or waiting for data
|
|
38
|
+
- [CaptionsButton](./reference/captions-button.md): Accessible captions toggle button with availability detection and state reflection
|
|
39
|
+
- [Controls](./reference/controls.md): Container component for composing and auto-hiding video player controls on user interaction
|
|
40
|
+
- [FullscreenButton](./reference/fullscreen-button.md): Accessible fullscreen toggle button with keyboard support and state reflection
|
|
41
|
+
- [MuteButton](./reference/mute-button.md): Accessible mute/unmute button with keyboard support and volume state reflection
|
|
42
|
+
- [PiPButton](./reference/pip-button.md): Accessible picture-in-picture toggle button with keyboard support and state reflection
|
|
43
|
+
- [PlayButton](./reference/play-button.md): Accessible play/pause button with keyboard support and customizable rendering
|
|
44
|
+
- [PlaybackRateButton](./reference/playback-rate-button.md): A button that cycles through playback speed rates
|
|
45
|
+
- [Popover](./reference/popover.md): A popover component for displaying contextual content anchored to a trigger
|
|
46
|
+
- [Poster](./reference/poster.md): Poster image component that displays a thumbnail until video playback starts
|
|
47
|
+
- [SeekButton](./reference/seek-button.md): Accessible seek button for skipping forward or backward by a configurable number of seconds
|
|
48
|
+
- [Slider](./reference/slider.md): A composable slider component with track, fill, thumb, preview, and value parts
|
|
49
|
+
- [Thumbnail](./reference/thumbnail.md): Time-based thumbnail preview component for timeline scrubbing and hover previews
|
|
50
|
+
- [Time](./reference/time.md): Time display components for showing current time, duration, and remaining time in a video player
|
|
51
|
+
- [TimeSlider](./reference/time-slider.md): A slider component for seeking through media playback time
|
|
52
|
+
- [Tooltip](./reference/tooltip.md): A tooltip component for displaying contextual labels on hover and focus
|
|
53
|
+
- [VolumeSlider](./reference/volume-slider.md): A slider component for controlling media playback volume
|
|
54
|
+
|
|
55
|
+
## Hooks & Utilities
|
|
56
|
+
|
|
57
|
+
API Reference for React hooks and utilities for player integration.
|
|
58
|
+
|
|
59
|
+
- [createPlayer](./reference/create-player.md): Factory function that creates a player instance with typed store, Provider component, Container, and hooks
|
|
60
|
+
- [Player.usePlayer](./reference/use-player.md): Hook to access the player store from within a Player.Provider
|
|
61
|
+
- [Player.useMedia](./reference/use-media.md): Hook to access the underlying media element from within a Player.Provider
|
|
62
|
+
- [useStore](./reference/use-store.md): Hook to access store state and actions with optional selector-based subscriptions
|
|
63
|
+
### Advanced
|
|
64
|
+
|
|
65
|
+
- [renderElement](./reference/render-element.md): Utility for rendering UI component elements with state-driven props and render prop support
|
|
66
|
+
- [useButton](./reference/use-button.md): Hook for creating accessible button components with keyboard and pointer interaction
|
|
67
|
+
- [useContainerAttach](./reference/use-container-attach.md): Hook to register a custom container element with the player context
|
|
68
|
+
- [useMediaAttach](./reference/use-media-attach.md): Hook to register a custom media element with the player context
|
|
69
|
+
- [usePlayerContext](./reference/use-player-context.md): Hook to access the full player context including store, media element, and media setter
|
|
70
|
+
- [useSelector](./reference/use-selector.md): Low-level hook for subscribing to derived state with customizable equality checks
|
|
71
|
+
- [useSnapshot](./reference/use-snapshot.md): Hook to subscribe to a State container's current value
|
|
72
|
+
|
|
73
|
+
## Features
|
|
74
|
+
|
|
75
|
+
API reference for feature modules that provide player capabilities and state.
|
|
76
|
+
|
|
77
|
+
- [createSelector](./reference/create-selector.md): Create a type-safe selector for a store slice's state
|
|
78
|
+
- [Buffer](./reference/feature-buffer.md): Buffered and seekable time range state for the player store
|
|
79
|
+
- [Controls](./reference/feature-controls.md): User activity and controls visibility state for the player store
|
|
80
|
+
- [Error](./reference/feature-error.md): Media error state and actions for the player store
|
|
81
|
+
- [Fullscreen](./reference/feature-fullscreen.md): Fullscreen state and actions for the player store
|
|
82
|
+
- [Live](./reference/feature-live.md): Live edge state for the player store
|
|
83
|
+
- [Picture-in-picture](./reference/feature-pip.md): Picture-in-picture state and actions for the player store
|
|
84
|
+
- [Playback](./reference/feature-playback.md): Play/pause state and actions for the player store
|
|
85
|
+
- [Playback rate](./reference/feature-playback-rate.md): Playback speed state and actions for the player store
|
|
86
|
+
- [Remote Playback](./reference/feature-remote-playback.md): Remote playback state and actions for the player store
|
|
87
|
+
- [Source](./reference/feature-source.md): Media source state and actions for the player store
|
|
88
|
+
- [Stream type](./reference/feature-stream-type.md): Stream delivery type (live / on-demand) state for the player store
|
|
89
|
+
- [Text tracks](./reference/feature-text-tracks.md): Subtitles, captions, and chapter track state for the player store
|
|
90
|
+
- [Time](./reference/feature-time.md): Playback position and duration state for the player store
|
|
91
|
+
- [Volume](./reference/feature-volume.md): Volume level and mute state for the player store
|
|
@@ -0,0 +1,152 @@
|
|
|
1
|
+
# BufferingIndicator
|
|
2
|
+
|
|
3
|
+
Loading indicator that displays when the video player is buffering or waiting for data
|
|
4
|
+
|
|
5
|
+
## Anatomy
|
|
6
|
+
|
|
7
|
+
tsx
|
|
8
|
+
|
|
9
|
+
```
|
|
10
|
+
<BufferingIndicator />
|
|
11
|
+
```
|
|
12
|
+
|
|
13
|
+
## Behavior
|
|
14
|
+
|
|
15
|
+
Shows a loading indicator when the media is waiting to buffer and not paused, but only after a configurable `delay` (default 500ms). This delay prevents the indicator from flickering during brief stalls. The indicator hides immediately when buffering ends.
|
|
16
|
+
|
|
17
|
+
## Styling
|
|
18
|
+
|
|
19
|
+
Hide and show the indicator based on the `data-visible` attribute.
|
|
20
|
+
|
|
21
|
+
## Examples
|
|
22
|
+
|
|
23
|
+
### Basic Usage
|
|
24
|
+
|
|
25
|
+
App.tsx
|
|
26
|
+
|
|
27
|
+
App.css
|
|
28
|
+
|
|
29
|
+
```
|
|
30
|
+
import { BufferingIndicator, createPlayer } from '@videojs/react';
|
|
31
|
+
import { Video, videoFeatures } from '@videojs/react/video';
|
|
32
|
+
|
|
33
|
+
const Player = createPlayer({ features: videoFeatures });
|
|
34
|
+
|
|
35
|
+
export default function BasicUsage() {
|
|
36
|
+
return (
|
|
37
|
+
<Player.Provider>
|
|
38
|
+
<Player.Container className="media-container">
|
|
39
|
+
<Video
|
|
40
|
+
src="https://stream.mux.com/BV3YZtogl89mg9VcNBhhnHm02Y34zI1nlMuMQfAbl3dM/highest.mp4"
|
|
41
|
+
autoPlay
|
|
42
|
+
muted
|
|
43
|
+
playsInline
|
|
44
|
+
loop
|
|
45
|
+
/>
|
|
46
|
+
<BufferingIndicator
|
|
47
|
+
className="media-buffering-indicator"
|
|
48
|
+
render={(props, state) => <div {...props}>{state.visible && <div className="spinner" />}</div>}
|
|
49
|
+
/>
|
|
50
|
+
</Player.Container>
|
|
51
|
+
</Player.Provider>
|
|
52
|
+
);
|
|
53
|
+
}
|
|
54
|
+
```
|
|
55
|
+
```
|
|
56
|
+
.media-container {
|
|
57
|
+
position: relative;
|
|
58
|
+
display: flex;
|
|
59
|
+
width: 100%;
|
|
60
|
+
height: 100%;
|
|
61
|
+
}
|
|
62
|
+
|
|
63
|
+
.media-buffering-indicator {
|
|
64
|
+
position: absolute;
|
|
65
|
+
inset: 0;
|
|
66
|
+
z-index: 30;
|
|
67
|
+
display: flex;
|
|
68
|
+
align-items: center;
|
|
69
|
+
justify-content: center;
|
|
70
|
+
pointer-events: none;
|
|
71
|
+
}
|
|
72
|
+
|
|
73
|
+
.spinner {
|
|
74
|
+
display: none;
|
|
75
|
+
width: 48px;
|
|
76
|
+
height: 48px;
|
|
77
|
+
border: 4px solid rgba(255, 255, 255, 0.3);
|
|
78
|
+
border-top-color: white;
|
|
79
|
+
border-radius: 50%;
|
|
80
|
+
animation: buffering-spin 0.8s linear infinite;
|
|
81
|
+
}
|
|
82
|
+
|
|
83
|
+
.media-buffering-indicator[data-visible] .spinner {
|
|
84
|
+
display: block;
|
|
85
|
+
}
|
|
86
|
+
|
|
87
|
+
@keyframes buffering-spin {
|
|
88
|
+
to {
|
|
89
|
+
transform: rotate(360deg);
|
|
90
|
+
}
|
|
91
|
+
}
|
|
92
|
+
```
|
|
93
|
+
|
|
94
|
+
## API Reference
|
|
95
|
+
|
|
96
|
+
### Props
|
|
97
|
+
|
|
98
|
+
Prop
|
|
99
|
+
|
|
100
|
+
Type
|
|
101
|
+
|
|
102
|
+
Default
|
|
103
|
+
|
|
104
|
+
Details
|
|
105
|
+
|
|
106
|
+
`delay`
|
|
107
|
+
|
|
108
|
+
`number`
|
|
109
|
+
|
|
110
|
+
`500`
|
|
111
|
+
|
|
112
|
+
▸
|
|
113
|
+
|
|
114
|
+
Description
|
|
115
|
+
|
|
116
|
+
Delay in milliseconds before the indicator becomes visible.
|
|
117
|
+
|
|
118
|
+
### State
|
|
119
|
+
|
|
120
|
+
State is accessible via the `render`, `className`, and `style` props.
|
|
121
|
+
|
|
122
|
+
Property
|
|
123
|
+
|
|
124
|
+
Type
|
|
125
|
+
|
|
126
|
+
Details
|
|
127
|
+
|
|
128
|
+
`visible`
|
|
129
|
+
|
|
130
|
+
`boolean`
|
|
131
|
+
|
|
132
|
+
▸
|
|
133
|
+
|
|
134
|
+
Description
|
|
135
|
+
|
|
136
|
+
Whether the indicator should be visible. True after the delay elapses while media is waiting and not paused.
|
|
137
|
+
|
|
138
|
+
### Data attributes
|
|
139
|
+
|
|
140
|
+
Attribute
|
|
141
|
+
|
|
142
|
+
Type
|
|
143
|
+
|
|
144
|
+
Details
|
|
145
|
+
|
|
146
|
+
`data-visible`
|
|
147
|
+
|
|
148
|
+
▸
|
|
149
|
+
|
|
150
|
+
Description
|
|
151
|
+
|
|
152
|
+
Present when the buffering indicator is visible (after delay).
|
|
@@ -0,0 +1,200 @@
|
|
|
1
|
+
# CaptionsButton
|
|
2
|
+
|
|
3
|
+
Accessible captions toggle button with availability detection and state reflection
|
|
4
|
+
|
|
5
|
+
## Anatomy
|
|
6
|
+
|
|
7
|
+
tsx
|
|
8
|
+
|
|
9
|
+
```
|
|
10
|
+
<CaptionsButton />
|
|
11
|
+
```
|
|
12
|
+
|
|
13
|
+
## Behavior
|
|
14
|
+
|
|
15
|
+
Toggles captions and subtitles on and off. The button checks the media’s text track list for tracks with `kind="captions"` or `kind="subtitles"` and reflects availability via `data-availability`.
|
|
16
|
+
|
|
17
|
+
When no caption or subtitle tracks are present, `data-availability="unavailable"` is set. Use this to hide the button when there are no tracks to toggle.
|
|
18
|
+
|
|
19
|
+
## Styling
|
|
20
|
+
|
|
21
|
+
Style the button based on active state:
|
|
22
|
+
|
|
23
|
+
css
|
|
24
|
+
|
|
25
|
+
```
|
|
26
|
+
media-captions-button[data-active] .icon-on { display: inline; }
|
|
27
|
+
media-captions-button:not([data-active]) .icon-off { display: inline; }
|
|
28
|
+
```
|
|
29
|
+
|
|
30
|
+
Hide when no caption tracks are available:
|
|
31
|
+
|
|
32
|
+
css
|
|
33
|
+
|
|
34
|
+
```
|
|
35
|
+
media-captions-button[data-availability="unavailable"] {
|
|
36
|
+
display: none;
|
|
37
|
+
}
|
|
38
|
+
```
|
|
39
|
+
|
|
40
|
+
## Accessibility
|
|
41
|
+
|
|
42
|
+
Renders a `<button>` with an automatic `aria-label`: “Disable captions” when active, “Enable captions” when inactive. Override with the `label` prop. Keyboard activation: Enter / Space.
|
|
43
|
+
|
|
44
|
+
## Examples
|
|
45
|
+
|
|
46
|
+
### Basic Usage
|
|
47
|
+
|
|
48
|
+
Captions On
|
|
49
|
+
|
|
50
|
+
App.tsx
|
|
51
|
+
|
|
52
|
+
App.css
|
|
53
|
+
|
|
54
|
+
```
|
|
55
|
+
import { CaptionsButton, createPlayer } from '@videojs/react';
|
|
56
|
+
import { Video, videoFeatures } from '@videojs/react/video';
|
|
57
|
+
|
|
58
|
+
const Player = createPlayer({ features: videoFeatures });
|
|
59
|
+
|
|
60
|
+
export default function BasicUsage() {
|
|
61
|
+
return (
|
|
62
|
+
<Player.Provider>
|
|
63
|
+
<Player.Container className="media-container">
|
|
64
|
+
<Video
|
|
65
|
+
src="https://stream.mux.com/BV3YZtogl89mg9VcNBhhnHm02Y34zI1nlMuMQfAbl3dM/highest.mp4"
|
|
66
|
+
autoPlay
|
|
67
|
+
muted
|
|
68
|
+
playsInline
|
|
69
|
+
loop
|
|
70
|
+
>
|
|
71
|
+
<track kind="captions" src="/docs/demos/captions-button/captions.vtt" srcLang="en" label="English" />
|
|
72
|
+
</Video>
|
|
73
|
+
<CaptionsButton
|
|
74
|
+
className="media-captions-button"
|
|
75
|
+
render={(props, state) => (
|
|
76
|
+
<button {...props}>{state.subtitlesShowing ? 'Captions Off' : 'Captions On'}</button>
|
|
77
|
+
)}
|
|
78
|
+
/>
|
|
79
|
+
</Player.Container>
|
|
80
|
+
</Player.Provider>
|
|
81
|
+
);
|
|
82
|
+
}
|
|
83
|
+
```
|
|
84
|
+
```
|
|
85
|
+
.media-container {
|
|
86
|
+
position: relative;
|
|
87
|
+
}
|
|
88
|
+
|
|
89
|
+
.media-container video {
|
|
90
|
+
width: 100%;
|
|
91
|
+
}
|
|
92
|
+
|
|
93
|
+
.media-captions-button {
|
|
94
|
+
position: absolute;
|
|
95
|
+
bottom: 10px;
|
|
96
|
+
left: 10px;
|
|
97
|
+
padding-block: 8px;
|
|
98
|
+
padding-inline: 20px;
|
|
99
|
+
color: black;
|
|
100
|
+
cursor: pointer;
|
|
101
|
+
background: rgba(255, 255, 255, 0.7);
|
|
102
|
+
border: 1px solid rgba(255, 255, 255, 0.3);
|
|
103
|
+
border-radius: 9999px;
|
|
104
|
+
backdrop-filter: blur(10px);
|
|
105
|
+
}
|
|
106
|
+
```
|
|
107
|
+
|
|
108
|
+
## API Reference
|
|
109
|
+
|
|
110
|
+
### Props
|
|
111
|
+
|
|
112
|
+
Prop
|
|
113
|
+
|
|
114
|
+
Type
|
|
115
|
+
|
|
116
|
+
Default
|
|
117
|
+
|
|
118
|
+
Details
|
|
119
|
+
|
|
120
|
+
`disabled`
|
|
121
|
+
|
|
122
|
+
`boolean`
|
|
123
|
+
|
|
124
|
+
`false`
|
|
125
|
+
|
|
126
|
+
▸
|
|
127
|
+
|
|
128
|
+
Description
|
|
129
|
+
|
|
130
|
+
Whether the button is disabled.
|
|
131
|
+
|
|
132
|
+
`label`
|
|
133
|
+
|
|
134
|
+
`string | function`
|
|
135
|
+
|
|
136
|
+
`''`
|
|
137
|
+
|
|
138
|
+
▸
|
|
139
|
+
|
|
140
|
+
Description
|
|
141
|
+
|
|
142
|
+
Custom label for the button.
|
|
143
|
+
|
|
144
|
+
Type
|
|
145
|
+
|
|
146
|
+
`string | ((state: CaptionsButtonState) => string)`
|
|
147
|
+
|
|
148
|
+
### State
|
|
149
|
+
|
|
150
|
+
State is accessible via the `render`, `className`, and `style` props.
|
|
151
|
+
|
|
152
|
+
Property
|
|
153
|
+
|
|
154
|
+
Type
|
|
155
|
+
|
|
156
|
+
Details
|
|
157
|
+
|
|
158
|
+
`availability`
|
|
159
|
+
|
|
160
|
+
`'available' | 'unavailable'`
|
|
161
|
+
|
|
162
|
+
`subtitlesShowing`
|
|
163
|
+
|
|
164
|
+
`boolean`
|
|
165
|
+
|
|
166
|
+
▸
|
|
167
|
+
|
|
168
|
+
Description
|
|
169
|
+
|
|
170
|
+
Whether captions/subtitles are currently enabled.
|
|
171
|
+
|
|
172
|
+
`label`
|
|
173
|
+
|
|
174
|
+
`string`
|
|
175
|
+
|
|
176
|
+
### Data attributes
|
|
177
|
+
|
|
178
|
+
Attribute
|
|
179
|
+
|
|
180
|
+
Type
|
|
181
|
+
|
|
182
|
+
Details
|
|
183
|
+
|
|
184
|
+
`data-active`
|
|
185
|
+
|
|
186
|
+
▸
|
|
187
|
+
|
|
188
|
+
Description
|
|
189
|
+
|
|
190
|
+
Present when captions are enabled.
|
|
191
|
+
|
|
192
|
+
`data-availability`
|
|
193
|
+
|
|
194
|
+
`'available' | 'unavailable'`
|
|
195
|
+
|
|
196
|
+
▸
|
|
197
|
+
|
|
198
|
+
Description
|
|
199
|
+
|
|
200
|
+
Indicates captions availability (`available` or `unavailable`).
|