@videojs/react 10.0.0-rc.1 → 10.0.0-rc.2
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/index.js +31 -31
- package/dist/default/internal/skins/default-audio/components/buttons/mute-button.js +1 -1
- package/dist/default/internal/skins/default-audio/components/buttons/play-button.js +1 -1
- package/dist/default/internal/skins/default-audio/components/buttons/seek-button.js +1 -1
- package/dist/default/internal/skins/default-audio/components/controls/volume-popover.js +3 -3
- package/dist/default/internal/skins/default-audio/components/feedback/buffering-indicator.js +1 -1
- package/dist/default/internal/skins/default-audio/components/menus/radio-item.js +2 -2
- package/dist/default/internal/skins/default-audio/components/menus/radio-item.js.map +1 -1
- package/dist/default/internal/skins/default-audio/controls.js +5 -5
- package/dist/default/internal/skins/default-audio/skins/shared/audio/settings-menu.js +5 -5
- package/dist/default/internal/skins/default-live-audio/components/buttons/mute-button.js +1 -1
- package/dist/default/internal/skins/default-live-audio/components/buttons/play-button.js +1 -1
- package/dist/default/internal/skins/default-live-audio/components/controls/volume-popover.js +3 -3
- package/dist/default/internal/skins/default-live-audio/components/feedback/buffering-indicator.js +1 -1
- package/dist/default/internal/skins/default-live-audio/controls.js +4 -4
- package/dist/default/internal/skins/default-live-video/components/buttons/airplay-button.js +1 -1
- package/dist/default/internal/skins/default-live-video/components/buttons/captions-button.js +1 -1
- package/dist/default/internal/skins/default-live-video/components/buttons/cast-button.js +1 -1
- package/dist/default/internal/skins/default-live-video/components/buttons/fullscreen-button.js +1 -1
- package/dist/default/internal/skins/default-live-video/components/buttons/mute-button.js +1 -1
- package/dist/default/internal/skins/default-live-video/components/buttons/pip-button.js +1 -1
- package/dist/default/internal/skins/default-live-video/components/buttons/play-button.js +1 -1
- package/dist/default/internal/skins/default-live-video/components/controls/volume-popover.js +3 -3
- package/dist/default/internal/skins/default-live-video/components/feedback/buffering-indicator.js +1 -1
- package/dist/default/internal/skins/default-live-video/components/feedback/status-indicator.js +2 -2
- package/dist/default/internal/skins/default-live-video/components/feedback/volume-indicator.js +3 -3
- package/dist/default/internal/skins/default-live-video/components/menus/captions-menu.js +5 -5
- package/dist/default/internal/skins/default-live-video/components/menus/radio-item.js +2 -2
- package/dist/default/internal/skins/default-live-video/components/menus/radio-item.js.map +1 -1
- package/dist/default/internal/skins/default-live-video/controls.js +5 -5
- package/dist/default/internal/skins/default-live-video/skin.js +1 -1
- package/dist/default/internal/skins/default-live-video/skin.js.map +1 -1
- package/dist/default/internal/skins/default-video/components/buttons/airplay-button.js +1 -1
- package/dist/default/internal/skins/default-video/components/buttons/captions-button.js +1 -1
- package/dist/default/internal/skins/default-video/components/buttons/cast-button.js +1 -1
- package/dist/default/internal/skins/default-video/components/buttons/fullscreen-button.js +1 -1
- package/dist/default/internal/skins/default-video/components/buttons/mute-button.js +1 -1
- package/dist/default/internal/skins/default-video/components/buttons/pip-button.js +1 -1
- package/dist/default/internal/skins/default-video/components/buttons/play-button.js +1 -1
- package/dist/default/internal/skins/default-video/components/controls/volume-popover.js +3 -3
- package/dist/default/internal/skins/default-video/components/feedback/buffering-indicator.js +1 -1
- package/dist/default/internal/skins/default-video/components/feedback/seek-indicator.js +2 -2
- package/dist/default/internal/skins/default-video/components/feedback/status-indicator.js +2 -2
- package/dist/default/internal/skins/default-video/components/feedback/volume-indicator.js +3 -3
- package/dist/default/internal/skins/default-video/components/menus/audio-track-menu.js +6 -6
- package/dist/default/internal/skins/default-video/components/menus/captions-submenu.js +6 -6
- package/dist/default/internal/skins/default-video/components/menus/playback-rate-submenu.js +6 -6
- package/dist/default/internal/skins/default-video/components/menus/quality-menu.js +6 -6
- package/dist/default/internal/skins/default-video/components/menus/radio-item.js +2 -2
- package/dist/default/internal/skins/default-video/components/menus/radio-item.js.map +1 -1
- package/dist/default/internal/skins/default-video/components/menus/settings-menu.js +4 -4
- package/dist/default/internal/skins/default-video/components/menus/settings-menu.js.map +1 -1
- package/dist/default/internal/skins/default-video/components/sliders/time-slider.js +13 -12
- package/dist/default/internal/skins/default-video/components/sliders/time-slider.js.map +1 -1
- package/dist/default/internal/skins/default-video/controls.js +6 -6
- package/dist/default/internal/skins/default-video/skin.js +1 -1
- package/dist/default/internal/skins/default-video/skin.js.map +1 -1
- package/dist/default/internal/skins/minimal-audio/components/buttons/mute-button.js +1 -1
- package/dist/default/internal/skins/minimal-audio/components/buttons/play-button.js +1 -1
- package/dist/default/internal/skins/minimal-audio/components/buttons/seek-button.js +1 -1
- package/dist/default/internal/skins/minimal-audio/components/controls/volume-popover.js +3 -3
- package/dist/default/internal/skins/minimal-audio/components/feedback/buffering-indicator.js +1 -1
- package/dist/default/internal/skins/minimal-audio/components/menus/radio-item.js +2 -2
- package/dist/default/internal/skins/minimal-audio/components/menus/radio-item.js.map +1 -1
- package/dist/default/internal/skins/minimal-audio/controls.js +7 -7
- package/dist/default/internal/skins/minimal-audio/skins/shared/audio/settings-menu.js +5 -5
- package/dist/default/internal/skins/minimal-live-audio/components/buttons/mute-button.js +1 -1
- package/dist/default/internal/skins/minimal-live-audio/components/buttons/play-button.js +1 -1
- package/dist/default/internal/skins/minimal-live-audio/components/controls/volume-popover.js +3 -3
- package/dist/default/internal/skins/minimal-live-audio/components/feedback/buffering-indicator.js +1 -1
- package/dist/default/internal/skins/minimal-live-audio/controls.js +4 -4
- package/dist/default/internal/skins/minimal-live-video/components/buttons/airplay-button.js +1 -1
- package/dist/default/internal/skins/minimal-live-video/components/buttons/captions-button.js +1 -1
- package/dist/default/internal/skins/minimal-live-video/components/buttons/cast-button.js +1 -1
- package/dist/default/internal/skins/minimal-live-video/components/buttons/fullscreen-button.js +1 -1
- package/dist/default/internal/skins/minimal-live-video/components/buttons/mute-button.js +1 -1
- package/dist/default/internal/skins/minimal-live-video/components/buttons/pip-button.js +1 -1
- package/dist/default/internal/skins/minimal-live-video/components/buttons/play-button.js +1 -1
- package/dist/default/internal/skins/minimal-live-video/components/controls/volume-popover.js +3 -3
- package/dist/default/internal/skins/minimal-live-video/components/feedback/buffering-indicator.js +1 -1
- package/dist/default/internal/skins/minimal-live-video/components/feedback/status-indicator.js +2 -2
- package/dist/default/internal/skins/minimal-live-video/components/feedback/volume-indicator.js +3 -3
- package/dist/default/internal/skins/minimal-live-video/components/menus/captions-menu.js +5 -5
- package/dist/default/internal/skins/minimal-live-video/components/menus/radio-item.js +2 -2
- package/dist/default/internal/skins/minimal-live-video/components/menus/radio-item.js.map +1 -1
- package/dist/default/internal/skins/minimal-live-video/controls.js +5 -5
- package/dist/default/internal/skins/minimal-live-video/skin.js +1 -1
- package/dist/default/internal/skins/minimal-live-video/skin.js.map +1 -1
- package/dist/default/internal/skins/minimal-video/components/buttons/airplay-button.js +1 -1
- package/dist/default/internal/skins/minimal-video/components/buttons/captions-button.js +1 -1
- package/dist/default/internal/skins/minimal-video/components/buttons/cast-button.js +1 -1
- package/dist/default/internal/skins/minimal-video/components/buttons/fullscreen-button.js +1 -1
- package/dist/default/internal/skins/minimal-video/components/buttons/mute-button.js +1 -1
- package/dist/default/internal/skins/minimal-video/components/buttons/pip-button.js +1 -1
- package/dist/default/internal/skins/minimal-video/components/buttons/play-button.js +1 -1
- package/dist/default/internal/skins/minimal-video/components/controls/volume-popover.js +3 -3
- package/dist/default/internal/skins/minimal-video/components/feedback/buffering-indicator.js +1 -1
- package/dist/default/internal/skins/minimal-video/components/feedback/seek-indicator.js +2 -2
- package/dist/default/internal/skins/minimal-video/components/feedback/status-indicator.js +2 -2
- package/dist/default/internal/skins/minimal-video/components/feedback/volume-indicator.js +3 -3
- package/dist/default/internal/skins/minimal-video/components/menus/audio-track-menu.js +6 -6
- package/dist/default/internal/skins/minimal-video/components/menus/captions-submenu.js +6 -6
- package/dist/default/internal/skins/minimal-video/components/menus/playback-rate-submenu.js +6 -6
- package/dist/default/internal/skins/minimal-video/components/menus/quality-menu.js +6 -6
- package/dist/default/internal/skins/minimal-video/components/menus/radio-item.js +2 -2
- package/dist/default/internal/skins/minimal-video/components/menus/radio-item.js.map +1 -1
- package/dist/default/internal/skins/minimal-video/components/menus/settings-menu.js +4 -4
- package/dist/default/internal/skins/minimal-video/components/menus/settings-menu.js.map +1 -1
- package/dist/default/internal/skins/minimal-video/components/sliders/time-slider.js +13 -12
- package/dist/default/internal/skins/minimal-video/components/sliders/time-slider.js.map +1 -1
- package/dist/default/internal/skins/minimal-video/controls.js +9 -9
- package/dist/default/internal/skins/minimal-video/controls.js.map +1 -1
- package/dist/default/internal/skins/minimal-video/skin.js +1 -1
- package/dist/default/internal/skins/minimal-video/skin.js.map +1 -1
- package/dist/default/internal/skins/shared/components/buttons/button-tooltip.js +5 -5
- package/dist/default/internal/skins/shared/components/buttons/button-tooltip.js.map +1 -1
- package/dist/default/internal/skins/shared/components/buttons/live-button.js +1 -1
- package/dist/default/internal/skins/shared/components/buttons/playback-rate-button.js +1 -1
- package/dist/default/internal/skins/shared/components/feedback/error-dialog.js +6 -6
- package/dist/default/internal/skins/shared/components/feedback/status-announcer.js +1 -1
- package/dist/default/internal/skins/shared/components/layout/container.js.map +1 -1
- package/dist/default/internal/skins/shared/components/layout/poster.js +10 -7
- package/dist/default/internal/skins/shared/components/layout/poster.js.map +1 -1
- package/dist/default/internal/skins/shared/components/sliders/volume-slider.js +4 -4
- package/dist/default/internal/skins/shared/skins/shared/audio/error-dialog.js +6 -6
- package/dist/default/internal/skins/shared/skins/shared/audio/time-slider.js +7 -7
- package/dist/default/internal/skins/shared/skins/shared/live-playback-hotkeys.js +1 -1
- package/dist/default/internal/skins/shared/skins/shared/live-video/gestures.js +1 -1
- package/dist/default/internal/skins/shared/skins/shared/live-video/hotkeys.js +1 -1
- package/dist/default/internal/skins/shared/skins/shared/playback-hotkeys.js +1 -1
- package/dist/default/internal/skins/shared/skins/shared/video/gestures.js +1 -1
- package/dist/default/internal/skins/shared/skins/shared/video/hotkeys.js +1 -1
- package/dist/default/presets/audio/minimal-skin.css +73 -1
- package/dist/default/presets/audio/skin.css +88 -5
- package/dist/default/presets/live-audio/minimal-skin.css +35 -1
- package/dist/default/presets/live-audio/skin.css +43 -4
- package/dist/default/presets/live-video/minimal-skin.css +69 -6
- package/dist/default/presets/live-video/skin.css +72 -10
- package/dist/default/presets/video/minimal-skin.css +184 -15
- package/dist/default/presets/video/skin.css +202 -25
- package/dist/default/ui/airplay-button/component.js +17 -0
- package/dist/default/ui/airplay-button/component.js.map +1 -0
- package/dist/default/ui/airplay-button/index.js +1 -1
- package/dist/default/ui/alert-dialog/index.parts.js +6 -6
- package/dist/default/ui/alert-dialog/index.parts.js.map +1 -1
- package/dist/default/ui/alert-dialog/root.js +25 -0
- package/dist/default/ui/alert-dialog/root.js.map +1 -0
- package/dist/default/ui/audio-track-radio-group/component.js +97 -0
- package/dist/default/ui/audio-track-radio-group/component.js.map +1 -0
- package/dist/default/ui/audio-track-radio-group/index.js +1 -1
- package/dist/default/ui/audio-track-radio-group/index.parts.js +1 -1
- package/dist/default/ui/audio-track-radio-group/index.parts.js.map +1 -1
- package/dist/default/ui/buffering-indicator/component.js +49 -0
- package/dist/default/ui/buffering-indicator/component.js.map +1 -0
- package/dist/default/ui/buffering-indicator/index.js +1 -1
- package/dist/default/ui/captions-button/component.js +18 -0
- package/dist/default/ui/captions-button/component.js.map +1 -0
- package/dist/default/ui/captions-button/index.js +1 -1
- package/dist/default/ui/captions-radio-group/component.js +97 -0
- package/dist/default/ui/captions-radio-group/component.js.map +1 -0
- package/dist/default/ui/captions-radio-group/index.js +1 -1
- package/dist/default/ui/captions-radio-group/index.parts.js +1 -1
- package/dist/default/ui/captions-radio-group/index.parts.js.map +1 -1
- package/dist/default/ui/cast-button/component.js +17 -0
- package/dist/default/ui/cast-button/component.js.map +1 -0
- package/dist/default/ui/cast-button/index.js +1 -1
- package/dist/default/ui/controls/backdrop.js +28 -0
- package/dist/default/ui/controls/backdrop.js.map +1 -0
- package/dist/default/ui/controls/content.js +27 -0
- package/dist/default/ui/controls/content.js.map +1 -0
- package/dist/default/ui/controls/group.js +27 -0
- package/dist/default/ui/controls/group.js.map +1 -0
- package/dist/default/ui/controls/index.parts.js +4 -4
- package/dist/default/ui/controls/index.parts.js.map +1 -1
- package/dist/default/ui/controls/root.js +27 -0
- package/dist/default/ui/controls/root.js.map +1 -0
- package/dist/default/ui/dialog/backdrop.js +26 -0
- package/dist/default/ui/dialog/backdrop.js.map +1 -0
- package/dist/default/ui/dialog/close.js +29 -0
- package/dist/default/ui/dialog/close.js.map +1 -0
- package/dist/default/ui/dialog/description.js +14 -0
- package/dist/default/ui/dialog/description.js.map +1 -0
- package/dist/default/ui/dialog/index.parts.js +7 -7
- package/dist/default/ui/dialog/index.parts.js.map +1 -1
- package/dist/default/ui/dialog/popup.js +28 -0
- package/dist/default/ui/dialog/popup.js.map +1 -0
- package/dist/default/ui/dialog/root.js +23 -0
- package/dist/default/ui/dialog/root.js.map +1 -0
- package/dist/default/ui/dialog/title.js +14 -0
- package/dist/default/ui/dialog/title.js.map +1 -0
- package/dist/default/ui/dialog/trigger.js +30 -0
- package/dist/default/ui/dialog/trigger.js.map +1 -0
- package/dist/default/ui/error-dialog/close.js +36 -0
- package/dist/default/ui/error-dialog/close.js.map +1 -0
- package/dist/default/ui/error-dialog/description.js +33 -0
- package/dist/default/ui/error-dialog/description.js.map +1 -0
- package/dist/default/ui/error-dialog/index.parts.js +6 -6
- package/dist/default/ui/error-dialog/index.parts.js.map +1 -1
- package/dist/default/ui/error-dialog/root.js +43 -0
- package/dist/default/ui/error-dialog/root.js.map +1 -0
- package/dist/default/ui/error-dialog/title.js +30 -0
- package/dist/default/ui/error-dialog/title.js.map +1 -0
- package/dist/default/ui/fullscreen-button/component.js +19 -0
- package/dist/default/ui/fullscreen-button/component.js.map +1 -0
- package/dist/default/ui/fullscreen-button/index.js +1 -1
- package/dist/default/ui/gesture/component.js +45 -0
- package/dist/default/ui/gesture/component.js.map +1 -0
- package/dist/default/ui/gesture/index.js +1 -1
- package/dist/default/ui/hooks/use-slider.js +2 -0
- package/dist/default/ui/hooks/use-slider.js.map +1 -1
- package/dist/default/ui/hotkey/component.js +43 -0
- package/dist/default/ui/hotkey/component.js.map +1 -0
- package/dist/default/ui/hotkey/index.js +1 -1
- package/dist/default/ui/live-button/component.js +89 -0
- package/dist/default/ui/live-button/component.js.map +1 -0
- package/dist/default/ui/live-button/index.js +1 -1
- package/dist/default/ui/menu/checkbox-item.js +51 -0
- package/dist/default/ui/menu/checkbox-item.js.map +1 -0
- package/dist/default/ui/menu/content.js +95 -0
- package/dist/default/ui/menu/content.js.map +1 -0
- package/dist/default/ui/menu/group-label.js +28 -0
- package/dist/default/ui/menu/group-label.js.map +1 -0
- package/dist/default/ui/menu/group.js +23 -0
- package/dist/default/ui/menu/group.js.map +1 -0
- package/dist/default/ui/menu/index.parts.js +12 -12
- package/dist/default/ui/menu/index.parts.js.map +1 -1
- package/dist/default/ui/menu/item-indicator.js +23 -0
- package/dist/default/ui/menu/item-indicator.js.map +1 -0
- package/dist/default/ui/menu/item.js +68 -0
- package/dist/default/ui/menu/item.js.map +1 -0
- package/dist/default/ui/menu/keyboard.js +31 -0
- package/dist/default/ui/menu/keyboard.js.map +1 -0
- package/dist/default/ui/menu/popup.js +74 -0
- package/dist/default/ui/menu/popup.js.map +1 -0
- package/dist/default/ui/menu/radio-group.js +29 -0
- package/dist/default/ui/menu/radio-group.js.map +1 -0
- package/dist/default/ui/menu/radio-item.js +61 -0
- package/dist/default/ui/menu/radio-item.js.map +1 -0
- package/dist/default/ui/menu/root.js +164 -0
- package/dist/default/ui/menu/root.js.map +1 -0
- package/dist/default/ui/menu/separator.js +21 -0
- package/dist/default/ui/menu/separator.js.map +1 -0
- package/dist/default/ui/menu/trigger.js +166 -0
- package/dist/default/ui/menu/trigger.js.map +1 -0
- package/dist/default/ui/mute-button/component.js +18 -0
- package/dist/default/ui/mute-button/component.js.map +1 -0
- package/dist/default/ui/mute-button/index.js +1 -1
- package/dist/default/ui/pip-button/component.js +18 -0
- package/dist/default/ui/pip-button/component.js.map +1 -0
- package/dist/default/ui/pip-button/index.js +1 -1
- package/dist/default/ui/play-button/component.js +32 -0
- package/dist/default/ui/play-button/component.js.map +1 -0
- package/dist/default/ui/play-button/index.js +1 -1
- package/dist/default/ui/playback-rate-button/component.js +32 -0
- package/dist/default/ui/playback-rate-button/component.js.map +1 -0
- package/dist/default/ui/playback-rate-button/index.js +1 -1
- package/dist/default/ui/playback-rate-radio-group/component.js +97 -0
- package/dist/default/ui/playback-rate-radio-group/component.js.map +1 -0
- package/dist/default/ui/playback-rate-radio-group/index.js +1 -1
- package/dist/default/ui/playback-rate-radio-group/index.parts.js +1 -1
- package/dist/default/ui/playback-rate-radio-group/index.parts.js.map +1 -1
- package/dist/default/ui/popover/arrow.js +14 -0
- package/dist/default/ui/popover/arrow.js.map +1 -0
- package/dist/default/ui/popover/index.parts.js +4 -4
- package/dist/default/ui/popover/index.parts.js.map +1 -1
- package/dist/default/ui/popover/popup.js +59 -0
- package/dist/default/ui/popover/popup.js.map +1 -0
- package/dist/default/ui/popover/root.js +87 -0
- package/dist/default/ui/popover/root.js.map +1 -0
- package/dist/default/ui/popover/trigger.js +38 -0
- package/dist/default/ui/popover/trigger.js.map +1 -0
- package/dist/default/ui/poster/context.js +20 -0
- package/dist/default/ui/poster/context.js.map +1 -0
- package/dist/default/ui/poster/image.js +92 -0
- package/dist/default/ui/poster/image.js.map +1 -0
- package/dist/default/ui/poster/index.js +2 -2
- package/dist/default/ui/poster/index.parts.js +12 -0
- package/dist/default/ui/poster/index.parts.js.map +1 -0
- package/dist/default/ui/poster/root.js +48 -0
- package/dist/default/ui/poster/root.js.map +1 -0
- package/dist/default/ui/quality-radio-group/component.js +97 -0
- package/dist/default/ui/quality-radio-group/component.js.map +1 -0
- package/dist/default/ui/quality-radio-group/index.js +1 -1
- package/dist/default/ui/quality-radio-group/index.parts.js +1 -1
- package/dist/default/ui/quality-radio-group/index.parts.js.map +1 -1
- package/dist/default/ui/seek-button/component.js +34 -0
- package/dist/default/ui/seek-button/component.js.map +1 -0
- package/dist/default/ui/seek-button/index.js +1 -1
- package/dist/default/ui/seek-indicator/index.parts.js +2 -2
- package/dist/default/ui/seek-indicator/index.parts.js.map +1 -1
- package/dist/default/ui/seek-indicator/root.js +29 -0
- package/dist/default/ui/seek-indicator/root.js.map +1 -0
- package/dist/default/ui/seek-indicator/value.js +22 -0
- package/dist/default/ui/seek-indicator/value.js.map +1 -0
- package/dist/default/ui/slider/buffer.js +13 -0
- package/dist/default/ui/slider/buffer.js.map +1 -0
- package/dist/default/ui/slider/fill.js +13 -0
- package/dist/default/ui/slider/fill.js.map +1 -0
- package/dist/default/ui/slider/index.parts.js +10 -10
- package/dist/default/ui/slider/index.parts.js.map +1 -1
- package/dist/default/ui/slider/preview.js +36 -0
- package/dist/default/ui/slider/preview.js.map +1 -0
- package/dist/default/ui/slider/root.js +82 -0
- package/dist/default/ui/slider/root.js.map +1 -0
- package/dist/default/ui/slider/thumb.js +29 -0
- package/dist/default/ui/slider/thumb.js.map +1 -0
- package/dist/default/ui/slider/thumbnail/index.parts.js +12 -0
- package/dist/default/ui/slider/thumbnail/index.parts.js.map +1 -0
- package/dist/default/ui/slider/thumbnail/root.js +23 -0
- package/dist/default/ui/slider/thumbnail/root.js.map +1 -0
- package/dist/default/ui/slider/track.js +13 -0
- package/dist/default/ui/slider/track.js.map +1 -0
- package/dist/default/ui/slider/value.js +30 -0
- package/dist/default/ui/slider/value.js.map +1 -0
- package/dist/default/ui/status-announcer/component.js +47 -0
- package/dist/default/ui/status-announcer/component.js.map +1 -0
- package/dist/default/ui/status-announcer/index.js +1 -1
- package/dist/default/ui/status-indicator/index.parts.js +2 -2
- package/dist/default/ui/status-indicator/index.parts.js.map +1 -1
- package/dist/default/ui/status-indicator/root.js +35 -0
- package/dist/default/ui/status-indicator/root.js.map +1 -0
- package/dist/default/ui/status-indicator/value.js +22 -0
- package/dist/default/ui/status-indicator/value.js.map +1 -0
- package/dist/default/ui/thumbnail/context.js +19 -0
- package/dist/default/ui/thumbnail/context.js.map +1 -0
- package/dist/default/ui/thumbnail/image.js +43 -0
- package/dist/default/ui/thumbnail/image.js.map +1 -0
- package/dist/default/ui/thumbnail/index.js +2 -2
- package/dist/default/ui/thumbnail/index.parts.js +12 -0
- package/dist/default/ui/thumbnail/index.parts.js.map +1 -0
- package/dist/default/ui/thumbnail/root.js +93 -0
- package/dist/default/ui/thumbnail/root.js.map +1 -0
- package/dist/default/ui/time/group.js +31 -0
- package/dist/default/ui/time/group.js.map +1 -0
- package/dist/default/ui/time/index.parts.js +3 -3
- package/dist/default/ui/time/index.parts.js.map +1 -1
- package/dist/default/ui/time/separator.js +31 -0
- package/dist/default/ui/time/separator.js.map +1 -0
- package/dist/default/ui/time/value.js +100 -0
- package/dist/default/ui/time/value.js.map +1 -0
- package/dist/default/ui/time-slider/chapter-title.js +45 -0
- package/dist/default/ui/time-slider/chapter-title.js.map +1 -0
- package/dist/default/ui/time-slider/chapters.js +51 -0
- package/dist/default/ui/time-slider/chapters.js.map +1 -0
- package/dist/default/ui/time-slider/index.parts.js +9 -9
- package/dist/default/ui/time-slider/index.parts.js.map +1 -1
- package/dist/default/ui/time-slider/root.js +126 -0
- package/dist/default/ui/time-slider/root.js.map +1 -0
- package/dist/default/ui/time-slider/segments.js +60 -0
- package/dist/default/ui/time-slider/segments.js.map +1 -0
- package/dist/default/ui/title/component.js +43 -0
- package/dist/default/ui/title/component.js.map +1 -0
- package/dist/default/ui/title/index.js +1 -1
- package/dist/default/ui/tooltip/arrow.js +14 -0
- package/dist/default/ui/tooltip/arrow.js.map +1 -0
- package/dist/default/ui/tooltip/index.parts.js +7 -7
- package/dist/default/ui/tooltip/index.parts.js.map +1 -1
- package/dist/default/ui/tooltip/label.js +23 -0
- package/dist/default/ui/tooltip/label.js.map +1 -0
- package/dist/default/ui/tooltip/popup.js +66 -0
- package/dist/default/ui/tooltip/popup.js.map +1 -0
- package/dist/default/ui/tooltip/provider.js +25 -0
- package/dist/default/ui/tooltip/provider.js.map +1 -0
- package/dist/default/ui/tooltip/root.js +94 -0
- package/dist/default/ui/tooltip/root.js.map +1 -0
- package/dist/default/ui/tooltip/shortcut.js +24 -0
- package/dist/default/ui/tooltip/shortcut.js.map +1 -0
- package/dist/default/ui/tooltip/trigger.js +34 -0
- package/dist/default/ui/tooltip/trigger.js.map +1 -0
- package/dist/default/ui/volume-indicator/fill.js +36 -0
- package/dist/default/ui/volume-indicator/fill.js.map +1 -0
- package/dist/default/ui/volume-indicator/index.parts.js +3 -3
- package/dist/default/ui/volume-indicator/index.parts.js.map +1 -1
- package/dist/default/ui/volume-indicator/root.js +34 -0
- package/dist/default/ui/volume-indicator/root.js.map +1 -0
- package/dist/default/ui/volume-indicator/value.js +22 -0
- package/dist/default/ui/volume-indicator/value.js.map +1 -0
- package/dist/default/ui/volume-popover/index.parts.js +3 -3
- package/dist/default/ui/volume-popover/index.parts.js.map +1 -1
- package/dist/default/ui/volume-popover/popup.js +21 -0
- package/dist/default/ui/volume-popover/popup.js.map +1 -0
- package/dist/default/ui/volume-popover/root.js +47 -0
- package/dist/default/ui/volume-popover/root.js.map +1 -0
- package/dist/default/ui/volume-popover/trigger.js +32 -0
- package/dist/default/ui/volume-popover/trigger.js.map +1 -0
- package/dist/default/ui/volume-slider/index.parts.js +6 -6
- package/dist/default/ui/volume-slider/index.parts.js.map +1 -1
- package/dist/default/ui/volume-slider/root.js +122 -0
- package/dist/default/ui/volume-slider/root.js.map +1 -0
- package/dist/dev/index.d.ts +57 -51
- package/dist/dev/index.js +31 -31
- package/dist/dev/internal/skins/default-audio/components/buttons/mute-button.js +1 -1
- package/dist/dev/internal/skins/default-audio/components/buttons/play-button.js +1 -1
- package/dist/dev/internal/skins/default-audio/components/buttons/seek-button.js +1 -1
- package/dist/dev/internal/skins/default-audio/components/controls/volume-popover.js +3 -3
- package/dist/dev/internal/skins/default-audio/components/feedback/buffering-indicator.js +1 -1
- package/dist/dev/internal/skins/default-audio/components/menus/radio-item.js +2 -2
- package/dist/dev/internal/skins/default-audio/components/menus/radio-item.js.map +1 -1
- package/dist/dev/internal/skins/default-audio/controls.js +5 -5
- package/dist/dev/internal/skins/default-audio/skins/shared/audio/settings-menu.js +5 -5
- package/dist/dev/internal/skins/default-live-audio/components/buttons/mute-button.js +1 -1
- package/dist/dev/internal/skins/default-live-audio/components/buttons/play-button.js +1 -1
- package/dist/dev/internal/skins/default-live-audio/components/controls/volume-popover.js +3 -3
- package/dist/dev/internal/skins/default-live-audio/components/feedback/buffering-indicator.js +1 -1
- package/dist/dev/internal/skins/default-live-audio/controls.js +4 -4
- package/dist/dev/internal/skins/default-live-video/components/buttons/airplay-button.js +1 -1
- package/dist/dev/internal/skins/default-live-video/components/buttons/captions-button.js +1 -1
- package/dist/dev/internal/skins/default-live-video/components/buttons/cast-button.js +1 -1
- package/dist/dev/internal/skins/default-live-video/components/buttons/fullscreen-button.js +1 -1
- package/dist/dev/internal/skins/default-live-video/components/buttons/mute-button.js +1 -1
- package/dist/dev/internal/skins/default-live-video/components/buttons/pip-button.js +1 -1
- package/dist/dev/internal/skins/default-live-video/components/buttons/play-button.js +1 -1
- package/dist/dev/internal/skins/default-live-video/components/controls/volume-popover.js +3 -3
- package/dist/dev/internal/skins/default-live-video/components/feedback/buffering-indicator.js +1 -1
- package/dist/dev/internal/skins/default-live-video/components/feedback/status-indicator.js +2 -2
- package/dist/dev/internal/skins/default-live-video/components/feedback/volume-indicator.js +3 -3
- package/dist/dev/internal/skins/default-live-video/components/menus/captions-menu.js +5 -5
- package/dist/dev/internal/skins/default-live-video/components/menus/radio-item.js +2 -2
- package/dist/dev/internal/skins/default-live-video/components/menus/radio-item.js.map +1 -1
- package/dist/dev/internal/skins/default-live-video/controls.js +5 -5
- package/dist/dev/internal/skins/default-live-video/skin.js +1 -1
- package/dist/dev/internal/skins/default-live-video/skin.js.map +1 -1
- package/dist/dev/internal/skins/default-video/components/buttons/airplay-button.js +1 -1
- package/dist/dev/internal/skins/default-video/components/buttons/captions-button.js +1 -1
- package/dist/dev/internal/skins/default-video/components/buttons/cast-button.js +1 -1
- package/dist/dev/internal/skins/default-video/components/buttons/fullscreen-button.js +1 -1
- package/dist/dev/internal/skins/default-video/components/buttons/mute-button.js +1 -1
- package/dist/dev/internal/skins/default-video/components/buttons/pip-button.js +1 -1
- package/dist/dev/internal/skins/default-video/components/buttons/play-button.js +1 -1
- package/dist/dev/internal/skins/default-video/components/controls/volume-popover.js +3 -3
- package/dist/dev/internal/skins/default-video/components/feedback/buffering-indicator.js +1 -1
- package/dist/dev/internal/skins/default-video/components/feedback/seek-indicator.js +2 -2
- package/dist/dev/internal/skins/default-video/components/feedback/status-indicator.js +2 -2
- package/dist/dev/internal/skins/default-video/components/feedback/volume-indicator.js +3 -3
- package/dist/dev/internal/skins/default-video/components/menus/audio-track-menu.js +6 -6
- package/dist/dev/internal/skins/default-video/components/menus/captions-submenu.js +6 -6
- package/dist/dev/internal/skins/default-video/components/menus/playback-rate-submenu.js +6 -6
- package/dist/dev/internal/skins/default-video/components/menus/quality-menu.js +6 -6
- package/dist/dev/internal/skins/default-video/components/menus/radio-item.js +2 -2
- package/dist/dev/internal/skins/default-video/components/menus/radio-item.js.map +1 -1
- package/dist/dev/internal/skins/default-video/components/menus/settings-menu.js +4 -4
- package/dist/dev/internal/skins/default-video/components/menus/settings-menu.js.map +1 -1
- package/dist/dev/internal/skins/default-video/components/sliders/time-slider.js +13 -12
- package/dist/dev/internal/skins/default-video/components/sliders/time-slider.js.map +1 -1
- package/dist/dev/internal/skins/default-video/controls.js +6 -6
- package/dist/dev/internal/skins/default-video/skin.js +1 -1
- package/dist/dev/internal/skins/default-video/skin.js.map +1 -1
- package/dist/dev/internal/skins/minimal-audio/components/buttons/mute-button.js +1 -1
- package/dist/dev/internal/skins/minimal-audio/components/buttons/play-button.js +1 -1
- package/dist/dev/internal/skins/minimal-audio/components/buttons/seek-button.js +1 -1
- package/dist/dev/internal/skins/minimal-audio/components/controls/volume-popover.js +3 -3
- package/dist/dev/internal/skins/minimal-audio/components/feedback/buffering-indicator.js +1 -1
- package/dist/dev/internal/skins/minimal-audio/components/menus/radio-item.js +2 -2
- package/dist/dev/internal/skins/minimal-audio/components/menus/radio-item.js.map +1 -1
- package/dist/dev/internal/skins/minimal-audio/controls.js +7 -7
- package/dist/dev/internal/skins/minimal-audio/skins/shared/audio/settings-menu.js +5 -5
- package/dist/dev/internal/skins/minimal-live-audio/components/buttons/mute-button.js +1 -1
- package/dist/dev/internal/skins/minimal-live-audio/components/buttons/play-button.js +1 -1
- package/dist/dev/internal/skins/minimal-live-audio/components/controls/volume-popover.js +3 -3
- package/dist/dev/internal/skins/minimal-live-audio/components/feedback/buffering-indicator.js +1 -1
- package/dist/dev/internal/skins/minimal-live-audio/controls.js +4 -4
- package/dist/dev/internal/skins/minimal-live-video/components/buttons/airplay-button.js +1 -1
- package/dist/dev/internal/skins/minimal-live-video/components/buttons/captions-button.js +1 -1
- package/dist/dev/internal/skins/minimal-live-video/components/buttons/cast-button.js +1 -1
- package/dist/dev/internal/skins/minimal-live-video/components/buttons/fullscreen-button.js +1 -1
- package/dist/dev/internal/skins/minimal-live-video/components/buttons/mute-button.js +1 -1
- package/dist/dev/internal/skins/minimal-live-video/components/buttons/pip-button.js +1 -1
- package/dist/dev/internal/skins/minimal-live-video/components/buttons/play-button.js +1 -1
- package/dist/dev/internal/skins/minimal-live-video/components/controls/volume-popover.js +3 -3
- package/dist/dev/internal/skins/minimal-live-video/components/feedback/buffering-indicator.js +1 -1
- package/dist/dev/internal/skins/minimal-live-video/components/feedback/status-indicator.js +2 -2
- package/dist/dev/internal/skins/minimal-live-video/components/feedback/volume-indicator.js +3 -3
- package/dist/dev/internal/skins/minimal-live-video/components/menus/captions-menu.js +5 -5
- package/dist/dev/internal/skins/minimal-live-video/components/menus/radio-item.js +2 -2
- package/dist/dev/internal/skins/minimal-live-video/components/menus/radio-item.js.map +1 -1
- package/dist/dev/internal/skins/minimal-live-video/controls.js +5 -5
- package/dist/dev/internal/skins/minimal-live-video/skin.js +1 -1
- package/dist/dev/internal/skins/minimal-live-video/skin.js.map +1 -1
- package/dist/dev/internal/skins/minimal-video/components/buttons/airplay-button.js +1 -1
- package/dist/dev/internal/skins/minimal-video/components/buttons/captions-button.js +1 -1
- package/dist/dev/internal/skins/minimal-video/components/buttons/cast-button.js +1 -1
- package/dist/dev/internal/skins/minimal-video/components/buttons/fullscreen-button.js +1 -1
- package/dist/dev/internal/skins/minimal-video/components/buttons/mute-button.js +1 -1
- package/dist/dev/internal/skins/minimal-video/components/buttons/pip-button.js +1 -1
- package/dist/dev/internal/skins/minimal-video/components/buttons/play-button.js +1 -1
- package/dist/dev/internal/skins/minimal-video/components/controls/volume-popover.js +3 -3
- package/dist/dev/internal/skins/minimal-video/components/feedback/buffering-indicator.js +1 -1
- package/dist/dev/internal/skins/minimal-video/components/feedback/seek-indicator.js +2 -2
- package/dist/dev/internal/skins/minimal-video/components/feedback/status-indicator.js +2 -2
- package/dist/dev/internal/skins/minimal-video/components/feedback/volume-indicator.js +3 -3
- package/dist/dev/internal/skins/minimal-video/components/menus/audio-track-menu.js +6 -6
- package/dist/dev/internal/skins/minimal-video/components/menus/captions-submenu.js +6 -6
- package/dist/dev/internal/skins/minimal-video/components/menus/playback-rate-submenu.js +6 -6
- package/dist/dev/internal/skins/minimal-video/components/menus/quality-menu.js +6 -6
- package/dist/dev/internal/skins/minimal-video/components/menus/radio-item.js +2 -2
- package/dist/dev/internal/skins/minimal-video/components/menus/radio-item.js.map +1 -1
- package/dist/dev/internal/skins/minimal-video/components/menus/settings-menu.js +4 -4
- package/dist/dev/internal/skins/minimal-video/components/menus/settings-menu.js.map +1 -1
- package/dist/dev/internal/skins/minimal-video/components/sliders/time-slider.js +13 -12
- package/dist/dev/internal/skins/minimal-video/components/sliders/time-slider.js.map +1 -1
- package/dist/dev/internal/skins/minimal-video/controls.js +9 -9
- package/dist/dev/internal/skins/minimal-video/controls.js.map +1 -1
- package/dist/dev/internal/skins/minimal-video/skin.js +1 -1
- package/dist/dev/internal/skins/minimal-video/skin.js.map +1 -1
- package/dist/dev/internal/skins/shared/components/buttons/button-tooltip.js +5 -5
- package/dist/dev/internal/skins/shared/components/buttons/button-tooltip.js.map +1 -1
- package/dist/dev/internal/skins/shared/components/buttons/live-button.js +1 -1
- package/dist/dev/internal/skins/shared/components/buttons/playback-rate-button.js +1 -1
- package/dist/dev/internal/skins/shared/components/feedback/error-dialog.js +6 -6
- package/dist/dev/internal/skins/shared/components/feedback/status-announcer.js +1 -1
- package/dist/dev/internal/skins/shared/components/layout/container.js.map +1 -1
- package/dist/dev/internal/skins/shared/components/layout/poster.js +10 -7
- package/dist/dev/internal/skins/shared/components/layout/poster.js.map +1 -1
- package/dist/dev/internal/skins/shared/components/sliders/volume-slider.js +4 -4
- package/dist/dev/internal/skins/shared/skins/shared/audio/error-dialog.js +6 -6
- package/dist/dev/internal/skins/shared/skins/shared/audio/time-slider.js +7 -7
- package/dist/dev/internal/skins/shared/skins/shared/live-playback-hotkeys.js +1 -1
- package/dist/dev/internal/skins/shared/skins/shared/live-video/gestures.js +1 -1
- package/dist/dev/internal/skins/shared/skins/shared/live-video/hotkeys.js +1 -1
- package/dist/dev/internal/skins/shared/skins/shared/playback-hotkeys.js +1 -1
- package/dist/dev/internal/skins/shared/skins/shared/video/gestures.js +1 -1
- package/dist/dev/internal/skins/shared/skins/shared/video/hotkeys.js +1 -1
- package/dist/dev/presets/audio/minimal-skin.css +73 -1
- package/dist/dev/presets/audio/skin.css +88 -5
- package/dist/dev/presets/live-audio/minimal-skin.css +35 -1
- package/dist/dev/presets/live-audio/skin.css +43 -4
- package/dist/dev/presets/live-video/minimal-skin.css +69 -6
- package/dist/dev/presets/live-video/skin.css +72 -10
- package/dist/dev/presets/types.d.ts +2 -2
- package/dist/dev/presets/types.d.ts.map +1 -1
- package/dist/dev/presets/video/minimal-skin.css +184 -15
- package/dist/dev/presets/video/skin.css +202 -25
- package/dist/dev/ui/airplay-button/component.d.ts +13 -0
- package/dist/dev/ui/airplay-button/component.d.ts.map +1 -0
- package/dist/dev/ui/airplay-button/component.js +17 -0
- package/dist/dev/ui/airplay-button/component.js.map +1 -0
- package/dist/dev/ui/airplay-button/index.d.ts +1 -1
- package/dist/dev/ui/airplay-button/index.js +1 -1
- package/dist/dev/ui/alert-dialog/index.parts.d.ts +6 -6
- package/dist/dev/ui/alert-dialog/index.parts.js +6 -6
- package/dist/dev/ui/alert-dialog/index.parts.js.map +1 -1
- package/dist/dev/ui/alert-dialog/root.d.ts +18 -0
- package/dist/dev/ui/alert-dialog/root.d.ts.map +1 -0
- package/dist/dev/ui/alert-dialog/root.js +25 -0
- package/dist/dev/ui/alert-dialog/root.js.map +1 -0
- package/dist/dev/ui/audio-track-radio-group/component.d.ts +48 -0
- package/dist/dev/ui/audio-track-radio-group/component.d.ts.map +1 -0
- package/dist/dev/ui/audio-track-radio-group/component.js +97 -0
- package/dist/dev/ui/audio-track-radio-group/component.js.map +1 -0
- package/dist/dev/ui/audio-track-radio-group/index.d.ts +1 -1
- package/dist/dev/ui/audio-track-radio-group/index.js +1 -1
- package/dist/dev/ui/audio-track-radio-group/index.parts.d.ts +1 -1
- package/dist/dev/ui/audio-track-radio-group/index.parts.js +1 -1
- package/dist/dev/ui/audio-track-radio-group/index.parts.js.map +1 -1
- package/dist/dev/ui/buffering-indicator/component.d.ts +30 -0
- package/dist/dev/ui/buffering-indicator/component.d.ts.map +1 -0
- package/dist/dev/ui/buffering-indicator/component.js +52 -0
- package/dist/dev/ui/buffering-indicator/component.js.map +1 -0
- package/dist/dev/ui/buffering-indicator/index.d.ts +1 -1
- package/dist/dev/ui/buffering-indicator/index.js +1 -1
- package/dist/dev/ui/captions-button/component.d.ts +13 -0
- package/dist/dev/ui/captions-button/component.d.ts.map +1 -0
- package/dist/dev/ui/captions-button/component.js +18 -0
- package/dist/dev/ui/captions-button/component.js.map +1 -0
- package/dist/dev/ui/captions-button/index.d.ts +1 -1
- package/dist/dev/ui/captions-button/index.js +1 -1
- package/dist/dev/ui/captions-radio-group/component.d.ts +47 -0
- package/dist/dev/ui/captions-radio-group/component.d.ts.map +1 -0
- package/dist/dev/ui/captions-radio-group/component.js +97 -0
- package/dist/dev/ui/captions-radio-group/component.js.map +1 -0
- package/dist/dev/ui/captions-radio-group/index.d.ts +1 -1
- package/dist/dev/ui/captions-radio-group/index.js +1 -1
- package/dist/dev/ui/captions-radio-group/index.parts.d.ts +1 -1
- package/dist/dev/ui/captions-radio-group/index.parts.js +1 -1
- package/dist/dev/ui/captions-radio-group/index.parts.js.map +1 -1
- package/dist/dev/ui/cast-button/component.d.ts +13 -0
- package/dist/dev/ui/cast-button/component.d.ts.map +1 -0
- package/dist/dev/ui/cast-button/component.js +17 -0
- package/dist/dev/ui/cast-button/component.js.map +1 -0
- package/dist/dev/ui/cast-button/index.d.ts +1 -1
- package/dist/dev/ui/cast-button/index.js +1 -1
- package/dist/dev/ui/controls/backdrop.d.ts +16 -0
- package/dist/dev/ui/controls/backdrop.d.ts.map +1 -0
- package/dist/dev/ui/controls/backdrop.js +28 -0
- package/dist/dev/ui/controls/backdrop.js.map +1 -0
- package/dist/dev/ui/controls/content.d.ts +16 -0
- package/dist/dev/ui/controls/content.d.ts.map +1 -0
- package/dist/dev/ui/controls/content.js +27 -0
- package/dist/dev/ui/controls/content.js.map +1 -0
- package/dist/dev/ui/controls/group.d.ts +15 -0
- package/dist/dev/ui/controls/group.d.ts.map +1 -0
- package/dist/dev/ui/controls/group.js +27 -0
- package/dist/dev/ui/controls/group.js.map +1 -0
- package/dist/dev/ui/controls/index.parts.d.ts +4 -4
- package/dist/dev/ui/controls/index.parts.js +4 -4
- package/dist/dev/ui/controls/index.parts.js.map +1 -1
- package/dist/dev/ui/controls/root.d.ts +15 -0
- package/dist/dev/ui/controls/root.d.ts.map +1 -0
- package/dist/dev/ui/controls/root.js +30 -0
- package/dist/dev/ui/controls/root.js.map +1 -0
- package/dist/dev/ui/dialog/backdrop.d.ts +13 -0
- package/dist/dev/ui/dialog/backdrop.d.ts.map +1 -0
- package/dist/dev/ui/dialog/backdrop.js +26 -0
- package/dist/dev/ui/dialog/backdrop.js.map +1 -0
- package/dist/dev/ui/dialog/close.d.ts +13 -0
- package/dist/dev/ui/dialog/close.d.ts.map +1 -0
- package/dist/dev/ui/dialog/close.js +29 -0
- package/dist/dev/ui/dialog/close.js.map +1 -0
- package/dist/dev/ui/dialog/description.d.ts +13 -0
- package/dist/dev/ui/dialog/description.d.ts.map +1 -0
- package/dist/dev/ui/dialog/description.js +14 -0
- package/dist/dev/ui/dialog/description.js.map +1 -0
- package/dist/dev/ui/dialog/index.parts.d.ts +7 -7
- package/dist/dev/ui/dialog/index.parts.js +7 -7
- package/dist/dev/ui/dialog/index.parts.js.map +1 -1
- package/dist/dev/ui/dialog/popup.d.ts +13 -0
- package/dist/dev/ui/dialog/popup.d.ts.map +1 -0
- package/dist/dev/ui/dialog/popup.js +28 -0
- package/dist/dev/ui/dialog/popup.js.map +1 -0
- package/dist/dev/ui/dialog/root.d.ts +18 -0
- package/dist/dev/ui/dialog/root.d.ts.map +1 -0
- package/dist/dev/ui/dialog/root.js +23 -0
- package/dist/dev/ui/dialog/root.js.map +1 -0
- package/dist/dev/ui/dialog/title.d.ts +13 -0
- package/dist/dev/ui/dialog/title.d.ts.map +1 -0
- package/dist/dev/ui/dialog/title.js +14 -0
- package/dist/dev/ui/dialog/title.js.map +1 -0
- package/dist/dev/ui/dialog/trigger.d.ts +13 -0
- package/dist/dev/ui/dialog/trigger.d.ts.map +1 -0
- package/dist/dev/ui/dialog/trigger.js +30 -0
- package/dist/dev/ui/dialog/trigger.js.map +1 -0
- package/dist/dev/ui/error-dialog/close.d.ts +13 -0
- package/dist/dev/ui/error-dialog/close.d.ts.map +1 -0
- package/dist/dev/ui/error-dialog/close.js +36 -0
- package/dist/dev/ui/error-dialog/close.js.map +1 -0
- package/dist/dev/ui/error-dialog/description.d.ts +13 -0
- package/dist/dev/ui/error-dialog/description.d.ts.map +1 -0
- package/dist/dev/ui/error-dialog/description.js +33 -0
- package/dist/dev/ui/error-dialog/description.js.map +1 -0
- package/dist/dev/ui/error-dialog/index.parts.d.ts +6 -6
- package/dist/dev/ui/error-dialog/index.parts.js +6 -6
- package/dist/dev/ui/error-dialog/index.parts.js.map +1 -1
- package/dist/dev/ui/error-dialog/root.d.ts +13 -0
- package/dist/dev/ui/error-dialog/root.d.ts.map +1 -0
- package/dist/dev/ui/error-dialog/root.js +43 -0
- package/dist/dev/ui/error-dialog/root.js.map +1 -0
- package/dist/dev/ui/error-dialog/title.d.ts +13 -0
- package/dist/dev/ui/error-dialog/title.d.ts.map +1 -0
- package/dist/dev/ui/error-dialog/title.js +30 -0
- package/dist/dev/ui/error-dialog/title.js.map +1 -0
- package/dist/dev/ui/fullscreen-button/component.d.ts +13 -0
- package/dist/dev/ui/fullscreen-button/component.d.ts.map +1 -0
- package/dist/dev/ui/fullscreen-button/component.js +19 -0
- package/dist/dev/ui/fullscreen-button/component.js.map +1 -0
- package/dist/dev/ui/fullscreen-button/index.d.ts +1 -1
- package/dist/dev/ui/fullscreen-button/index.js +1 -1
- package/dist/dev/ui/gesture/component.d.ts +15 -0
- package/dist/dev/ui/gesture/component.d.ts.map +1 -0
- package/dist/dev/ui/gesture/component.js +45 -0
- package/dist/dev/ui/gesture/component.js.map +1 -0
- package/dist/dev/ui/gesture/index.d.ts +1 -1
- package/dist/dev/ui/gesture/index.js +1 -1
- package/dist/dev/ui/hooks/use-slider.d.ts.map +1 -1
- package/dist/dev/ui/hooks/use-slider.js +2 -0
- package/dist/dev/ui/hooks/use-slider.js.map +1 -1
- package/dist/dev/ui/hotkey/component.d.ts +15 -0
- package/dist/dev/ui/hotkey/component.d.ts.map +1 -0
- package/dist/dev/ui/hotkey/component.js +43 -0
- package/dist/dev/ui/hotkey/component.js.map +1 -0
- package/dist/dev/ui/hotkey/index.d.ts +1 -1
- package/dist/dev/ui/hotkey/index.js +1 -1
- package/dist/dev/ui/live-button/component.d.ts +28 -0
- package/dist/dev/ui/live-button/component.d.ts.map +1 -0
- package/dist/dev/ui/live-button/component.js +92 -0
- package/dist/dev/ui/live-button/component.js.map +1 -0
- package/dist/dev/ui/live-button/index.d.ts +1 -1
- package/dist/dev/ui/live-button/index.js +1 -1
- package/dist/dev/ui/menu/checkbox-item.d.ts +20 -0
- package/dist/dev/ui/menu/checkbox-item.d.ts.map +1 -0
- package/dist/dev/ui/menu/checkbox-item.js +51 -0
- package/dist/dev/ui/menu/checkbox-item.js.map +1 -0
- package/dist/dev/ui/menu/content.d.ts +13 -0
- package/dist/dev/ui/menu/content.d.ts.map +1 -0
- package/dist/dev/ui/menu/content.js +95 -0
- package/dist/dev/ui/menu/content.js.map +1 -0
- package/dist/dev/ui/menu/group-label.d.ts +13 -0
- package/dist/dev/ui/menu/group-label.d.ts.map +1 -0
- package/dist/dev/ui/menu/group-label.js +28 -0
- package/dist/dev/ui/menu/group-label.js.map +1 -0
- package/dist/dev/ui/menu/group.d.ts +13 -0
- package/dist/dev/ui/menu/group.d.ts.map +1 -0
- package/dist/dev/ui/menu/group.js +23 -0
- package/dist/dev/ui/menu/group.js.map +1 -0
- package/dist/dev/ui/menu/index.parts.d.ts +12 -12
- package/dist/dev/ui/menu/index.parts.js +12 -12
- package/dist/dev/ui/menu/index.parts.js.map +1 -1
- package/dist/dev/ui/menu/item-indicator.d.ts +18 -0
- package/dist/dev/ui/menu/item-indicator.d.ts.map +1 -0
- package/dist/dev/ui/menu/item-indicator.js +23 -0
- package/dist/dev/ui/menu/item-indicator.js.map +1 -0
- package/dist/dev/ui/menu/item.d.ts +18 -0
- package/dist/dev/ui/menu/item.d.ts.map +1 -0
- package/dist/dev/ui/menu/item.js +68 -0
- package/dist/dev/ui/menu/item.js.map +1 -0
- package/dist/dev/ui/menu/keyboard.js +31 -0
- package/dist/dev/ui/menu/keyboard.js.map +1 -0
- package/dist/dev/ui/menu/popup.d.ts +16 -0
- package/dist/dev/ui/menu/popup.d.ts.map +1 -0
- package/dist/dev/ui/menu/popup.js +75 -0
- package/dist/dev/ui/menu/popup.js.map +1 -0
- package/dist/dev/ui/menu/radio-group.d.ts +18 -0
- package/dist/dev/ui/menu/radio-group.d.ts.map +1 -0
- package/dist/dev/ui/menu/radio-group.js +29 -0
- package/dist/dev/ui/menu/radio-group.js.map +1 -0
- package/dist/dev/ui/menu/radio-item.d.ts +18 -0
- package/dist/dev/ui/menu/radio-item.d.ts.map +1 -0
- package/dist/dev/ui/menu/radio-item.js +61 -0
- package/dist/dev/ui/menu/radio-item.js.map +1 -0
- package/dist/dev/ui/menu/root.d.ts +20 -0
- package/dist/dev/ui/menu/root.d.ts.map +1 -0
- package/dist/dev/ui/menu/root.js +164 -0
- package/dist/dev/ui/menu/root.js.map +1 -0
- package/dist/dev/ui/menu/separator.d.ts +13 -0
- package/dist/dev/ui/menu/separator.d.ts.map +1 -0
- package/dist/dev/ui/menu/separator.js +21 -0
- package/dist/dev/ui/menu/separator.js.map +1 -0
- package/dist/dev/ui/menu/trigger.d.ts +22 -0
- package/dist/dev/ui/menu/trigger.d.ts.map +1 -0
- package/dist/dev/ui/menu/trigger.js +166 -0
- package/dist/dev/ui/menu/trigger.js.map +1 -0
- package/dist/dev/ui/mute-button/component.d.ts +13 -0
- package/dist/dev/ui/mute-button/component.d.ts.map +1 -0
- package/dist/dev/ui/mute-button/component.js +18 -0
- package/dist/dev/ui/mute-button/component.js.map +1 -0
- package/dist/dev/ui/mute-button/index.d.ts +1 -1
- package/dist/dev/ui/mute-button/index.js +1 -1
- package/dist/dev/ui/pip-button/component.d.ts +13 -0
- package/dist/dev/ui/pip-button/component.d.ts.map +1 -0
- package/dist/dev/ui/pip-button/component.js +18 -0
- package/dist/dev/ui/pip-button/component.js.map +1 -0
- package/dist/dev/ui/pip-button/index.d.ts +1 -1
- package/dist/dev/ui/pip-button/index.js +1 -1
- package/dist/dev/ui/play-button/component.d.ts +28 -0
- package/dist/dev/ui/play-button/component.d.ts.map +1 -0
- package/dist/dev/ui/play-button/component.js +32 -0
- package/dist/dev/ui/play-button/component.js.map +1 -0
- package/dist/dev/ui/play-button/index.d.ts +1 -1
- package/dist/dev/ui/play-button/index.js +1 -1
- package/dist/dev/ui/playback-rate-button/component.d.ts +28 -0
- package/dist/dev/ui/playback-rate-button/component.d.ts.map +1 -0
- package/dist/dev/ui/playback-rate-button/component.js +32 -0
- package/dist/dev/ui/playback-rate-button/component.js.map +1 -0
- package/dist/dev/ui/playback-rate-button/index.d.ts +1 -1
- package/dist/dev/ui/playback-rate-button/index.js +1 -1
- package/dist/dev/ui/playback-rate-radio-group/component.d.ts +48 -0
- package/dist/dev/ui/playback-rate-radio-group/component.d.ts.map +1 -0
- package/dist/dev/ui/playback-rate-radio-group/component.js +97 -0
- package/dist/dev/ui/playback-rate-radio-group/component.js.map +1 -0
- package/dist/dev/ui/playback-rate-radio-group/index.d.ts +1 -1
- package/dist/dev/ui/playback-rate-radio-group/index.js +1 -1
- package/dist/dev/ui/playback-rate-radio-group/index.parts.d.ts +1 -1
- package/dist/dev/ui/playback-rate-radio-group/index.parts.js +1 -1
- package/dist/dev/ui/playback-rate-radio-group/index.parts.js.map +1 -1
- package/dist/dev/ui/popover/arrow.d.ts +13 -0
- package/dist/dev/ui/popover/arrow.d.ts.map +1 -0
- package/dist/dev/ui/popover/arrow.js +14 -0
- package/dist/dev/ui/popover/arrow.js.map +1 -0
- package/dist/dev/ui/popover/index.parts.d.ts +4 -4
- package/dist/dev/ui/popover/index.parts.js +4 -4
- package/dist/dev/ui/popover/index.parts.js.map +1 -1
- package/dist/dev/ui/popover/popup.d.ts +16 -0
- package/dist/dev/ui/popover/popup.d.ts.map +1 -0
- package/dist/dev/ui/popover/popup.js +59 -0
- package/dist/dev/ui/popover/popup.js.map +1 -0
- package/dist/dev/ui/popover/root.d.ts +20 -0
- package/dist/dev/ui/popover/root.d.ts.map +1 -0
- package/dist/dev/ui/popover/root.js +87 -0
- package/dist/dev/ui/popover/root.js.map +1 -0
- package/dist/dev/ui/popover/trigger.d.ts +13 -0
- package/dist/dev/ui/popover/trigger.d.ts.map +1 -0
- package/dist/dev/ui/popover/trigger.js +38 -0
- package/dist/dev/ui/popover/trigger.js.map +1 -0
- package/dist/dev/ui/poster/context.js +20 -0
- package/dist/dev/ui/poster/context.js.map +1 -0
- package/dist/dev/ui/poster/image.d.ts +17 -0
- package/dist/dev/ui/poster/image.d.ts.map +1 -0
- package/dist/dev/ui/poster/image.js +92 -0
- package/dist/dev/ui/poster/image.js.map +1 -0
- package/dist/dev/ui/poster/index.d.ts +2 -2
- package/dist/dev/ui/poster/index.js +2 -2
- package/dist/dev/ui/poster/index.parts.d.ts +8 -0
- package/dist/dev/ui/poster/index.parts.d.ts.map +1 -0
- package/dist/dev/ui/poster/index.parts.js +12 -0
- package/dist/dev/ui/poster/index.parts.js.map +1 -0
- package/dist/dev/ui/poster/root.d.ts +18 -0
- package/dist/dev/ui/poster/root.d.ts.map +1 -0
- package/dist/dev/ui/poster/root.js +51 -0
- package/dist/dev/ui/poster/root.js.map +1 -0
- package/dist/dev/ui/quality-radio-group/component.d.ts +48 -0
- package/dist/dev/ui/quality-radio-group/component.d.ts.map +1 -0
- package/dist/dev/ui/quality-radio-group/component.js +97 -0
- package/dist/dev/ui/quality-radio-group/component.js.map +1 -0
- package/dist/dev/ui/quality-radio-group/index.d.ts +1 -1
- package/dist/dev/ui/quality-radio-group/index.js +1 -1
- package/dist/dev/ui/quality-radio-group/index.parts.d.ts +1 -1
- package/dist/dev/ui/quality-radio-group/index.parts.js +1 -1
- package/dist/dev/ui/quality-radio-group/index.parts.js.map +1 -1
- package/dist/dev/ui/seek-button/component.d.ts +29 -0
- package/dist/dev/ui/seek-button/component.d.ts.map +1 -0
- package/dist/dev/ui/seek-button/component.js +34 -0
- package/dist/dev/ui/seek-button/component.js.map +1 -0
- package/dist/dev/ui/seek-button/index.d.ts +1 -1
- package/dist/dev/ui/seek-button/index.js +1 -1
- package/dist/dev/ui/seek-indicator/index.parts.d.ts +2 -2
- package/dist/dev/ui/seek-indicator/index.parts.js +2 -2
- package/dist/dev/ui/seek-indicator/index.parts.js.map +1 -1
- package/dist/dev/ui/seek-indicator/root.d.ts +12 -0
- package/dist/dev/ui/seek-indicator/root.d.ts.map +1 -0
- package/dist/dev/ui/seek-indicator/root.js +29 -0
- package/dist/dev/ui/seek-indicator/root.js.map +1 -0
- package/dist/dev/ui/seek-indicator/value.d.ts +11 -0
- package/dist/dev/ui/seek-indicator/value.d.ts.map +1 -0
- package/dist/dev/ui/seek-indicator/value.js +22 -0
- package/dist/dev/ui/seek-indicator/value.js.map +1 -0
- package/dist/dev/ui/slider/buffer.d.ts +12 -0
- package/dist/dev/ui/slider/buffer.d.ts.map +1 -0
- package/dist/dev/ui/slider/buffer.js +13 -0
- package/dist/dev/ui/slider/buffer.js.map +1 -0
- package/dist/dev/ui/slider/fill.d.ts +12 -0
- package/dist/dev/ui/slider/fill.d.ts.map +1 -0
- package/dist/dev/ui/slider/fill.js +13 -0
- package/dist/dev/ui/slider/fill.js.map +1 -0
- package/dist/dev/ui/slider/index.parts.d.ts +10 -10
- package/dist/dev/ui/slider/index.parts.js +10 -10
- package/dist/dev/ui/slider/index.parts.js.map +1 -1
- package/dist/dev/ui/slider/preview.d.ts +12 -0
- package/dist/dev/ui/slider/preview.d.ts.map +1 -0
- package/dist/dev/ui/slider/preview.js +36 -0
- package/dist/dev/ui/slider/preview.js.map +1 -0
- package/dist/dev/ui/slider/root.d.ts +17 -0
- package/dist/dev/ui/slider/root.d.ts.map +1 -0
- package/dist/dev/ui/slider/root.js +82 -0
- package/dist/dev/ui/slider/root.js.map +1 -0
- package/dist/dev/ui/slider/thumb.d.ts +12 -0
- package/dist/dev/ui/slider/thumb.d.ts.map +1 -0
- package/dist/dev/ui/slider/thumb.js +29 -0
- package/dist/dev/ui/slider/thumb.js.map +1 -0
- package/dist/dev/ui/slider/thumbnail/index.parts.d.ts +8 -0
- package/dist/dev/ui/slider/thumbnail/index.parts.d.ts.map +1 -0
- package/dist/dev/ui/slider/thumbnail/index.parts.js +12 -0
- package/dist/dev/ui/slider/thumbnail/index.parts.js.map +1 -0
- package/dist/dev/ui/slider/thumbnail/root.d.ts +18 -0
- package/dist/dev/ui/slider/thumbnail/root.d.ts.map +1 -0
- package/dist/dev/ui/slider/thumbnail/root.js +23 -0
- package/dist/dev/ui/slider/thumbnail/root.js.map +1 -0
- package/dist/dev/ui/slider/track.d.ts +12 -0
- package/dist/dev/ui/slider/track.d.ts.map +1 -0
- package/dist/dev/ui/slider/track.js +13 -0
- package/dist/dev/ui/slider/track.js.map +1 -0
- package/dist/dev/ui/slider/value.d.ts +17 -0
- package/dist/dev/ui/slider/value.d.ts.map +1 -0
- package/dist/dev/ui/slider/value.js +30 -0
- package/dist/dev/ui/slider/value.js.map +1 -0
- package/dist/dev/ui/status-announcer/component.d.ts +12 -0
- package/dist/dev/ui/status-announcer/component.d.ts.map +1 -0
- package/dist/dev/ui/status-announcer/component.js +47 -0
- package/dist/dev/ui/status-announcer/component.js.map +1 -0
- package/dist/dev/ui/status-announcer/index.d.ts +1 -1
- package/dist/dev/ui/status-announcer/index.js +1 -1
- package/dist/dev/ui/status-indicator/index.parts.d.ts +2 -2
- package/dist/dev/ui/status-indicator/index.parts.js +2 -2
- package/dist/dev/ui/status-indicator/index.parts.js.map +1 -1
- package/dist/dev/ui/status-indicator/root.d.ts +12 -0
- package/dist/dev/ui/status-indicator/root.d.ts.map +1 -0
- package/dist/dev/ui/status-indicator/root.js +35 -0
- package/dist/dev/ui/status-indicator/root.js.map +1 -0
- package/dist/dev/ui/status-indicator/value.d.ts +11 -0
- package/dist/dev/ui/status-indicator/value.d.ts.map +1 -0
- package/dist/dev/ui/status-indicator/value.js +22 -0
- package/dist/dev/ui/status-indicator/value.js.map +1 -0
- package/dist/dev/ui/thumbnail/context.js +19 -0
- package/dist/dev/ui/thumbnail/context.js.map +1 -0
- package/dist/dev/ui/thumbnail/image.d.ts +24 -0
- package/dist/dev/ui/thumbnail/image.d.ts.map +1 -0
- package/dist/dev/ui/thumbnail/image.js +43 -0
- package/dist/dev/ui/thumbnail/image.js.map +1 -0
- package/dist/dev/ui/thumbnail/index.d.ts +2 -2
- package/dist/dev/ui/thumbnail/index.js +2 -2
- package/dist/dev/ui/thumbnail/index.parts.d.ts +8 -0
- package/dist/dev/ui/thumbnail/index.parts.d.ts.map +1 -0
- package/dist/dev/ui/thumbnail/index.parts.js +12 -0
- package/dist/dev/ui/thumbnail/index.parts.js.map +1 -0
- package/dist/dev/ui/thumbnail/root.d.ts +18 -0
- package/dist/dev/ui/thumbnail/root.d.ts.map +1 -0
- package/dist/dev/ui/thumbnail/root.js +93 -0
- package/dist/dev/ui/thumbnail/root.js.map +1 -0
- package/dist/dev/ui/time/group.d.ts +27 -0
- package/dist/dev/ui/time/group.d.ts.map +1 -0
- package/dist/dev/ui/time/group.js +31 -0
- package/dist/dev/ui/time/group.js.map +1 -0
- package/dist/dev/ui/time/index.parts.d.ts +3 -3
- package/dist/dev/ui/time/index.parts.js +3 -3
- package/dist/dev/ui/time/index.parts.js.map +1 -1
- package/dist/dev/ui/time/separator.d.ts +24 -0
- package/dist/dev/ui/time/separator.d.ts.map +1 -0
- package/dist/dev/ui/time/separator.js +31 -0
- package/dist/dev/ui/time/separator.js.map +1 -0
- package/dist/dev/ui/time/value.d.ts +22 -0
- package/dist/dev/ui/time/value.d.ts.map +1 -0
- package/dist/dev/ui/time/value.js +103 -0
- package/dist/dev/ui/time/value.js.map +1 -0
- package/dist/dev/ui/time-slider/chapter-title.d.ts +19 -0
- package/dist/dev/ui/time-slider/chapter-title.d.ts.map +1 -0
- package/dist/dev/ui/time-slider/chapter-title.js +45 -0
- package/dist/dev/ui/time-slider/chapter-title.js.map +1 -0
- package/dist/dev/ui/time-slider/chapters.d.ts +22 -0
- package/dist/dev/ui/time-slider/chapters.d.ts.map +1 -0
- package/dist/dev/ui/time-slider/chapters.js +51 -0
- package/dist/dev/ui/time-slider/chapters.js.map +1 -0
- package/dist/dev/ui/time-slider/index.parts.d.ts +9 -9
- package/dist/dev/ui/time-slider/index.parts.js +9 -9
- package/dist/dev/ui/time-slider/index.parts.js.map +1 -1
- package/dist/dev/ui/time-slider/root.d.ts +15 -0
- package/dist/dev/ui/time-slider/root.d.ts.map +1 -0
- package/dist/dev/ui/time-slider/root.js +129 -0
- package/dist/dev/ui/time-slider/root.js.map +1 -0
- package/dist/dev/ui/time-slider/segments.js +60 -0
- package/dist/dev/ui/time-slider/segments.js.map +1 -0
- package/dist/dev/ui/title/component.d.ts +26 -0
- package/dist/dev/ui/title/component.d.ts.map +1 -0
- package/dist/dev/ui/title/component.js +46 -0
- package/dist/dev/ui/title/component.js.map +1 -0
- package/dist/dev/ui/title/index.d.ts +1 -1
- package/dist/dev/ui/title/index.js +1 -1
- package/dist/dev/ui/tooltip/arrow.d.ts +13 -0
- package/dist/dev/ui/tooltip/arrow.d.ts.map +1 -0
- package/dist/dev/ui/tooltip/arrow.js +14 -0
- package/dist/dev/ui/tooltip/arrow.js.map +1 -0
- package/dist/dev/ui/tooltip/index.parts.d.ts +7 -7
- package/dist/dev/ui/tooltip/index.parts.js +7 -7
- package/dist/dev/ui/tooltip/index.parts.js.map +1 -1
- package/dist/dev/ui/tooltip/label.d.ts +13 -0
- package/dist/dev/ui/tooltip/label.d.ts.map +1 -0
- package/dist/dev/ui/tooltip/label.js +23 -0
- package/dist/dev/ui/tooltip/label.js.map +1 -0
- package/dist/dev/ui/tooltip/popup.d.ts +16 -0
- package/dist/dev/ui/tooltip/popup.d.ts.map +1 -0
- package/dist/dev/ui/tooltip/popup.js +66 -0
- package/dist/dev/ui/tooltip/popup.js.map +1 -0
- package/dist/dev/ui/tooltip/provider.d.ts +13 -0
- package/dist/dev/ui/tooltip/provider.d.ts.map +1 -0
- package/dist/dev/ui/tooltip/provider.js +25 -0
- package/dist/dev/ui/tooltip/provider.js.map +1 -0
- package/dist/dev/ui/tooltip/root.d.ts +20 -0
- package/dist/dev/ui/tooltip/root.d.ts.map +1 -0
- package/dist/dev/ui/tooltip/root.js +94 -0
- package/dist/dev/ui/tooltip/root.js.map +1 -0
- package/dist/dev/ui/tooltip/shortcut.d.ts +13 -0
- package/dist/dev/ui/tooltip/shortcut.d.ts.map +1 -0
- package/dist/dev/ui/tooltip/shortcut.js +24 -0
- package/dist/dev/ui/tooltip/shortcut.js.map +1 -0
- package/dist/dev/ui/tooltip/trigger.d.ts +13 -0
- package/dist/dev/ui/tooltip/trigger.d.ts.map +1 -0
- package/dist/dev/ui/tooltip/trigger.js +34 -0
- package/dist/dev/ui/tooltip/trigger.js.map +1 -0
- package/dist/dev/ui/volume-indicator/fill.d.ts +11 -0
- package/dist/dev/ui/volume-indicator/fill.d.ts.map +1 -0
- package/dist/dev/ui/volume-indicator/fill.js +36 -0
- package/dist/dev/ui/volume-indicator/fill.js.map +1 -0
- package/dist/dev/ui/volume-indicator/index.parts.d.ts +3 -3
- package/dist/dev/ui/volume-indicator/index.parts.js +3 -3
- package/dist/dev/ui/volume-indicator/index.parts.js.map +1 -1
- package/dist/dev/ui/volume-indicator/root.d.ts +12 -0
- package/dist/dev/ui/volume-indicator/root.d.ts.map +1 -0
- package/dist/dev/ui/volume-indicator/root.js +34 -0
- package/dist/dev/ui/volume-indicator/root.js.map +1 -0
- package/dist/dev/ui/volume-indicator/value.d.ts +11 -0
- package/dist/dev/ui/volume-indicator/value.d.ts.map +1 -0
- package/dist/dev/ui/volume-indicator/value.js +22 -0
- package/dist/dev/ui/volume-indicator/value.js.map +1 -0
- package/dist/dev/ui/volume-popover/index.parts.d.ts +3 -3
- package/dist/dev/ui/volume-popover/index.parts.js +3 -3
- package/dist/dev/ui/volume-popover/index.parts.js.map +1 -1
- package/dist/dev/ui/volume-popover/popup.d.ts +11 -0
- package/dist/dev/ui/volume-popover/popup.d.ts.map +1 -0
- package/dist/dev/ui/volume-popover/popup.js +21 -0
- package/dist/dev/ui/volume-popover/popup.js.map +1 -0
- package/dist/dev/ui/volume-popover/root.d.ts +14 -0
- package/dist/dev/ui/volume-popover/root.d.ts.map +1 -0
- package/dist/dev/ui/volume-popover/root.js +47 -0
- package/dist/dev/ui/volume-popover/root.js.map +1 -0
- package/dist/dev/ui/volume-popover/trigger.d.ts +11 -0
- package/dist/dev/ui/volume-popover/trigger.d.ts.map +1 -0
- package/dist/dev/ui/volume-popover/trigger.js +32 -0
- package/dist/dev/ui/volume-popover/trigger.js.map +1 -0
- package/dist/dev/ui/volume-slider/index.parts.d.ts +6 -6
- package/dist/dev/ui/volume-slider/index.parts.js +6 -6
- package/dist/dev/ui/volume-slider/index.parts.js.map +1 -1
- package/dist/dev/ui/volume-slider/root.d.ts +15 -0
- package/dist/dev/ui/volume-slider/root.d.ts.map +1 -0
- package/dist/dev/ui/volume-slider/root.js +125 -0
- package/dist/dev/ui/volume-slider/root.js.map +1 -0
- package/docs/README.md +1 -1
- package/docs/how-to/add-a-poster-and-loading-placeholder.md +16 -14
- package/docs/how-to/add-quality-selector.md +37 -24
- package/docs/how-to/migrate-from-media-chrome.md +7 -5
- package/docs/how-to/migrate-from-mux-player.md +1 -1
- package/docs/how-to/migrate-from-plyr.md +2 -2
- package/docs/how-to/migrate-from-video-js-8.md +2 -2
- package/docs/how-to/play-live-streams.md +1 -1
- package/docs/how-to/show-and-hide-controls.md +9 -1
- package/docs/how-to/show-timeline-thumbnail-previews.md +11 -2
- package/docs/reference/audio-track-radio-group.md +284 -30
- package/docs/reference/captions-radio-group.md +293 -31
- package/docs/reference/controls.md +10 -0
- package/docs/reference/error-dialog.md +5 -1
- package/docs/reference/live-button.md +30 -3
- package/docs/reference/menu.md +19 -1
- package/docs/reference/playback-rate-radio-group.md +289 -31
- package/docs/reference/poster.md +106 -29
- package/docs/reference/quality-radio-group.md +289 -35
- package/docs/reference/slider.md +140 -53
- package/docs/reference/thumbnail.md +156 -50
- package/docs/reference/time.md +75 -0
- package/docs/reference/use-attach-media.md +1 -1
- package/docs/reference/use-media-extension.md +1 -1
- package/package.json +39 -39
- package/dist/default/ui/airplay-button/airplay-button.js +0 -17
- package/dist/default/ui/airplay-button/airplay-button.js.map +0 -1
- package/dist/default/ui/alert-dialog/alert-dialog-root.js +0 -25
- package/dist/default/ui/alert-dialog/alert-dialog-root.js.map +0 -1
- package/dist/default/ui/audio-track-radio-group/audio-track-radio-group.js +0 -97
- package/dist/default/ui/audio-track-radio-group/audio-track-radio-group.js.map +0 -1
- package/dist/default/ui/buffering-indicator/buffering-indicator.js +0 -49
- package/dist/default/ui/buffering-indicator/buffering-indicator.js.map +0 -1
- package/dist/default/ui/captions-button/captions-button.js +0 -18
- package/dist/default/ui/captions-button/captions-button.js.map +0 -1
- package/dist/default/ui/captions-radio-group/captions-radio-group.js +0 -97
- package/dist/default/ui/captions-radio-group/captions-radio-group.js.map +0 -1
- package/dist/default/ui/cast-button/cast-button.js +0 -17
- package/dist/default/ui/cast-button/cast-button.js.map +0 -1
- package/dist/default/ui/controls/controls-backdrop.js +0 -28
- package/dist/default/ui/controls/controls-backdrop.js.map +0 -1
- package/dist/default/ui/controls/controls-content.js +0 -27
- package/dist/default/ui/controls/controls-content.js.map +0 -1
- package/dist/default/ui/controls/controls-group.js +0 -27
- package/dist/default/ui/controls/controls-group.js.map +0 -1
- package/dist/default/ui/controls/controls-root.js +0 -27
- package/dist/default/ui/controls/controls-root.js.map +0 -1
- package/dist/default/ui/dialog/dialog-backdrop.js +0 -26
- package/dist/default/ui/dialog/dialog-backdrop.js.map +0 -1
- package/dist/default/ui/dialog/dialog-close.js +0 -29
- package/dist/default/ui/dialog/dialog-close.js.map +0 -1
- package/dist/default/ui/dialog/dialog-description.js +0 -14
- package/dist/default/ui/dialog/dialog-description.js.map +0 -1
- package/dist/default/ui/dialog/dialog-popup.js +0 -28
- package/dist/default/ui/dialog/dialog-popup.js.map +0 -1
- package/dist/default/ui/dialog/dialog-root.js +0 -23
- package/dist/default/ui/dialog/dialog-root.js.map +0 -1
- package/dist/default/ui/dialog/dialog-title.js +0 -14
- package/dist/default/ui/dialog/dialog-title.js.map +0 -1
- package/dist/default/ui/dialog/dialog-trigger.js +0 -30
- package/dist/default/ui/dialog/dialog-trigger.js.map +0 -1
- package/dist/default/ui/error-dialog/error-dialog-close.js +0 -36
- package/dist/default/ui/error-dialog/error-dialog-close.js.map +0 -1
- package/dist/default/ui/error-dialog/error-dialog-description.js +0 -33
- package/dist/default/ui/error-dialog/error-dialog-description.js.map +0 -1
- package/dist/default/ui/error-dialog/error-dialog-root.js +0 -43
- package/dist/default/ui/error-dialog/error-dialog-root.js.map +0 -1
- package/dist/default/ui/error-dialog/error-dialog-title.js +0 -30
- package/dist/default/ui/error-dialog/error-dialog-title.js.map +0 -1
- package/dist/default/ui/fullscreen-button/fullscreen-button.js +0 -19
- package/dist/default/ui/fullscreen-button/fullscreen-button.js.map +0 -1
- package/dist/default/ui/gesture/gesture.js +0 -45
- package/dist/default/ui/gesture/gesture.js.map +0 -1
- package/dist/default/ui/hotkey/hotkey.js +0 -43
- package/dist/default/ui/hotkey/hotkey.js.map +0 -1
- package/dist/default/ui/live-button/live-button.js +0 -89
- package/dist/default/ui/live-button/live-button.js.map +0 -1
- package/dist/default/ui/menu/menu-checkbox-item.js +0 -51
- package/dist/default/ui/menu/menu-checkbox-item.js.map +0 -1
- package/dist/default/ui/menu/menu-content.js +0 -95
- package/dist/default/ui/menu/menu-content.js.map +0 -1
- package/dist/default/ui/menu/menu-group-label.js +0 -28
- package/dist/default/ui/menu/menu-group-label.js.map +0 -1
- package/dist/default/ui/menu/menu-group.js +0 -23
- package/dist/default/ui/menu/menu-group.js.map +0 -1
- package/dist/default/ui/menu/menu-item-indicator.js +0 -23
- package/dist/default/ui/menu/menu-item-indicator.js.map +0 -1
- package/dist/default/ui/menu/menu-item.js +0 -68
- package/dist/default/ui/menu/menu-item.js.map +0 -1
- package/dist/default/ui/menu/menu-keyboard.js +0 -31
- package/dist/default/ui/menu/menu-keyboard.js.map +0 -1
- package/dist/default/ui/menu/menu-popup.js +0 -74
- package/dist/default/ui/menu/menu-popup.js.map +0 -1
- package/dist/default/ui/menu/menu-radio-group.js +0 -29
- package/dist/default/ui/menu/menu-radio-group.js.map +0 -1
- package/dist/default/ui/menu/menu-radio-item.js +0 -61
- package/dist/default/ui/menu/menu-radio-item.js.map +0 -1
- package/dist/default/ui/menu/menu-root.js +0 -164
- package/dist/default/ui/menu/menu-root.js.map +0 -1
- package/dist/default/ui/menu/menu-separator.js +0 -21
- package/dist/default/ui/menu/menu-separator.js.map +0 -1
- package/dist/default/ui/menu/menu-trigger.js +0 -166
- package/dist/default/ui/menu/menu-trigger.js.map +0 -1
- package/dist/default/ui/mute-button/mute-button.js +0 -18
- package/dist/default/ui/mute-button/mute-button.js.map +0 -1
- package/dist/default/ui/pip-button/pip-button.js +0 -18
- package/dist/default/ui/pip-button/pip-button.js.map +0 -1
- package/dist/default/ui/play-button/play-button.js +0 -32
- package/dist/default/ui/play-button/play-button.js.map +0 -1
- package/dist/default/ui/playback-rate-button/playback-rate-button.js +0 -32
- package/dist/default/ui/playback-rate-button/playback-rate-button.js.map +0 -1
- package/dist/default/ui/playback-rate-radio-group/playback-rate-radio-group.js +0 -97
- package/dist/default/ui/playback-rate-radio-group/playback-rate-radio-group.js.map +0 -1
- package/dist/default/ui/popover/popover-arrow.js +0 -14
- package/dist/default/ui/popover/popover-arrow.js.map +0 -1
- package/dist/default/ui/popover/popover-popup.js +0 -59
- package/dist/default/ui/popover/popover-popup.js.map +0 -1
- package/dist/default/ui/popover/popover-root.js +0 -87
- package/dist/default/ui/popover/popover-root.js.map +0 -1
- package/dist/default/ui/popover/popover-trigger.js +0 -38
- package/dist/default/ui/popover/popover-trigger.js.map +0 -1
- package/dist/default/ui/poster/poster.js +0 -104
- package/dist/default/ui/poster/poster.js.map +0 -1
- package/dist/default/ui/quality-radio-group/quality-radio-group.js +0 -97
- package/dist/default/ui/quality-radio-group/quality-radio-group.js.map +0 -1
- package/dist/default/ui/seek-button/seek-button.js +0 -34
- package/dist/default/ui/seek-button/seek-button.js.map +0 -1
- package/dist/default/ui/seek-indicator/seek-indicator-root.js +0 -29
- package/dist/default/ui/seek-indicator/seek-indicator-root.js.map +0 -1
- package/dist/default/ui/seek-indicator/seek-indicator-value.js +0 -22
- package/dist/default/ui/seek-indicator/seek-indicator-value.js.map +0 -1
- package/dist/default/ui/slider/slider-buffer.js +0 -13
- package/dist/default/ui/slider/slider-buffer.js.map +0 -1
- package/dist/default/ui/slider/slider-fill.js +0 -13
- package/dist/default/ui/slider/slider-fill.js.map +0 -1
- package/dist/default/ui/slider/slider-preview.js +0 -36
- package/dist/default/ui/slider/slider-preview.js.map +0 -1
- package/dist/default/ui/slider/slider-root.js +0 -82
- package/dist/default/ui/slider/slider-root.js.map +0 -1
- package/dist/default/ui/slider/slider-thumb.js +0 -29
- package/dist/default/ui/slider/slider-thumb.js.map +0 -1
- package/dist/default/ui/slider/slider-thumbnail.js +0 -17
- package/dist/default/ui/slider/slider-thumbnail.js.map +0 -1
- package/dist/default/ui/slider/slider-track.js +0 -13
- package/dist/default/ui/slider/slider-track.js.map +0 -1
- package/dist/default/ui/slider/slider-value.js +0 -30
- package/dist/default/ui/slider/slider-value.js.map +0 -1
- package/dist/default/ui/status-announcer/status-announcer.js +0 -47
- package/dist/default/ui/status-announcer/status-announcer.js.map +0 -1
- package/dist/default/ui/status-indicator/status-indicator-root.js +0 -35
- package/dist/default/ui/status-indicator/status-indicator-root.js.map +0 -1
- package/dist/default/ui/status-indicator/status-indicator-value.js +0 -22
- package/dist/default/ui/status-indicator/status-indicator-value.js.map +0 -1
- package/dist/default/ui/thumbnail/thumbnail.js +0 -97
- package/dist/default/ui/thumbnail/thumbnail.js.map +0 -1
- package/dist/default/ui/time/time-group.js +0 -31
- package/dist/default/ui/time/time-group.js.map +0 -1
- package/dist/default/ui/time/time-separator.js +0 -31
- package/dist/default/ui/time/time-separator.js.map +0 -1
- package/dist/default/ui/time/time-value.js +0 -96
- package/dist/default/ui/time/time-value.js.map +0 -1
- package/dist/default/ui/time-slider/time-slider-chapters/slider-segments.js +0 -60
- package/dist/default/ui/time-slider/time-slider-chapters/slider-segments.js.map +0 -1
- package/dist/default/ui/time-slider/time-slider-chapters/time-slider-chapter-title.js +0 -45
- package/dist/default/ui/time-slider/time-slider-chapters/time-slider-chapter-title.js.map +0 -1
- package/dist/default/ui/time-slider/time-slider-chapters/time-slider-chapters.js +0 -51
- package/dist/default/ui/time-slider/time-slider-chapters/time-slider-chapters.js.map +0 -1
- package/dist/default/ui/time-slider/time-slider-root.js +0 -123
- package/dist/default/ui/time-slider/time-slider-root.js.map +0 -1
- package/dist/default/ui/title/title.js +0 -43
- package/dist/default/ui/title/title.js.map +0 -1
- package/dist/default/ui/tooltip/tooltip-arrow.js +0 -14
- package/dist/default/ui/tooltip/tooltip-arrow.js.map +0 -1
- package/dist/default/ui/tooltip/tooltip-label.js +0 -23
- package/dist/default/ui/tooltip/tooltip-label.js.map +0 -1
- package/dist/default/ui/tooltip/tooltip-popup.js +0 -66
- package/dist/default/ui/tooltip/tooltip-popup.js.map +0 -1
- package/dist/default/ui/tooltip/tooltip-provider.js +0 -25
- package/dist/default/ui/tooltip/tooltip-provider.js.map +0 -1
- package/dist/default/ui/tooltip/tooltip-root.js +0 -94
- package/dist/default/ui/tooltip/tooltip-root.js.map +0 -1
- package/dist/default/ui/tooltip/tooltip-shortcut.js +0 -24
- package/dist/default/ui/tooltip/tooltip-shortcut.js.map +0 -1
- package/dist/default/ui/tooltip/tooltip-trigger.js +0 -34
- package/dist/default/ui/tooltip/tooltip-trigger.js.map +0 -1
- package/dist/default/ui/volume-indicator/volume-indicator-fill.js +0 -36
- package/dist/default/ui/volume-indicator/volume-indicator-fill.js.map +0 -1
- package/dist/default/ui/volume-indicator/volume-indicator-root.js +0 -34
- package/dist/default/ui/volume-indicator/volume-indicator-root.js.map +0 -1
- package/dist/default/ui/volume-indicator/volume-indicator-value.js +0 -22
- package/dist/default/ui/volume-indicator/volume-indicator-value.js.map +0 -1
- package/dist/default/ui/volume-popover/volume-popover-popup.js +0 -21
- package/dist/default/ui/volume-popover/volume-popover-popup.js.map +0 -1
- package/dist/default/ui/volume-popover/volume-popover-root.js +0 -47
- package/dist/default/ui/volume-popover/volume-popover-root.js.map +0 -1
- package/dist/default/ui/volume-popover/volume-popover-trigger.js +0 -32
- package/dist/default/ui/volume-popover/volume-popover-trigger.js.map +0 -1
- package/dist/default/ui/volume-slider/volume-slider-root.js +0 -122
- package/dist/default/ui/volume-slider/volume-slider-root.js.map +0 -1
- package/dist/dev/ui/airplay-button/airplay-button.d.ts +0 -13
- package/dist/dev/ui/airplay-button/airplay-button.d.ts.map +0 -1
- package/dist/dev/ui/airplay-button/airplay-button.js +0 -17
- package/dist/dev/ui/airplay-button/airplay-button.js.map +0 -1
- package/dist/dev/ui/alert-dialog/alert-dialog-root.d.ts +0 -18
- package/dist/dev/ui/alert-dialog/alert-dialog-root.d.ts.map +0 -1
- package/dist/dev/ui/alert-dialog/alert-dialog-root.js +0 -25
- package/dist/dev/ui/alert-dialog/alert-dialog-root.js.map +0 -1
- package/dist/dev/ui/audio-track-radio-group/audio-track-radio-group.d.ts +0 -48
- package/dist/dev/ui/audio-track-radio-group/audio-track-radio-group.d.ts.map +0 -1
- package/dist/dev/ui/audio-track-radio-group/audio-track-radio-group.js +0 -97
- package/dist/dev/ui/audio-track-radio-group/audio-track-radio-group.js.map +0 -1
- package/dist/dev/ui/buffering-indicator/buffering-indicator.d.ts +0 -30
- package/dist/dev/ui/buffering-indicator/buffering-indicator.d.ts.map +0 -1
- package/dist/dev/ui/buffering-indicator/buffering-indicator.js +0 -52
- package/dist/dev/ui/buffering-indicator/buffering-indicator.js.map +0 -1
- package/dist/dev/ui/captions-button/captions-button.d.ts +0 -13
- package/dist/dev/ui/captions-button/captions-button.d.ts.map +0 -1
- package/dist/dev/ui/captions-button/captions-button.js +0 -18
- package/dist/dev/ui/captions-button/captions-button.js.map +0 -1
- package/dist/dev/ui/captions-radio-group/captions-radio-group.d.ts +0 -47
- package/dist/dev/ui/captions-radio-group/captions-radio-group.d.ts.map +0 -1
- package/dist/dev/ui/captions-radio-group/captions-radio-group.js +0 -97
- package/dist/dev/ui/captions-radio-group/captions-radio-group.js.map +0 -1
- package/dist/dev/ui/cast-button/cast-button.d.ts +0 -13
- package/dist/dev/ui/cast-button/cast-button.d.ts.map +0 -1
- package/dist/dev/ui/cast-button/cast-button.js +0 -17
- package/dist/dev/ui/cast-button/cast-button.js.map +0 -1
- package/dist/dev/ui/controls/controls-backdrop.d.ts +0 -16
- package/dist/dev/ui/controls/controls-backdrop.d.ts.map +0 -1
- package/dist/dev/ui/controls/controls-backdrop.js +0 -28
- package/dist/dev/ui/controls/controls-backdrop.js.map +0 -1
- package/dist/dev/ui/controls/controls-content.d.ts +0 -16
- package/dist/dev/ui/controls/controls-content.d.ts.map +0 -1
- package/dist/dev/ui/controls/controls-content.js +0 -27
- package/dist/dev/ui/controls/controls-content.js.map +0 -1
- package/dist/dev/ui/controls/controls-group.d.ts +0 -15
- package/dist/dev/ui/controls/controls-group.d.ts.map +0 -1
- package/dist/dev/ui/controls/controls-group.js +0 -27
- package/dist/dev/ui/controls/controls-group.js.map +0 -1
- package/dist/dev/ui/controls/controls-root.d.ts +0 -15
- package/dist/dev/ui/controls/controls-root.d.ts.map +0 -1
- package/dist/dev/ui/controls/controls-root.js +0 -30
- package/dist/dev/ui/controls/controls-root.js.map +0 -1
- package/dist/dev/ui/dialog/dialog-backdrop.d.ts +0 -13
- package/dist/dev/ui/dialog/dialog-backdrop.d.ts.map +0 -1
- package/dist/dev/ui/dialog/dialog-backdrop.js +0 -26
- package/dist/dev/ui/dialog/dialog-backdrop.js.map +0 -1
- package/dist/dev/ui/dialog/dialog-close.d.ts +0 -13
- package/dist/dev/ui/dialog/dialog-close.d.ts.map +0 -1
- package/dist/dev/ui/dialog/dialog-close.js +0 -29
- package/dist/dev/ui/dialog/dialog-close.js.map +0 -1
- package/dist/dev/ui/dialog/dialog-description.d.ts +0 -13
- package/dist/dev/ui/dialog/dialog-description.d.ts.map +0 -1
- package/dist/dev/ui/dialog/dialog-description.js +0 -14
- package/dist/dev/ui/dialog/dialog-description.js.map +0 -1
- package/dist/dev/ui/dialog/dialog-popup.d.ts +0 -13
- package/dist/dev/ui/dialog/dialog-popup.d.ts.map +0 -1
- package/dist/dev/ui/dialog/dialog-popup.js +0 -28
- package/dist/dev/ui/dialog/dialog-popup.js.map +0 -1
- package/dist/dev/ui/dialog/dialog-root.d.ts +0 -18
- package/dist/dev/ui/dialog/dialog-root.d.ts.map +0 -1
- package/dist/dev/ui/dialog/dialog-root.js +0 -23
- package/dist/dev/ui/dialog/dialog-root.js.map +0 -1
- package/dist/dev/ui/dialog/dialog-title.d.ts +0 -13
- package/dist/dev/ui/dialog/dialog-title.d.ts.map +0 -1
- package/dist/dev/ui/dialog/dialog-title.js +0 -14
- package/dist/dev/ui/dialog/dialog-title.js.map +0 -1
- package/dist/dev/ui/dialog/dialog-trigger.d.ts +0 -13
- package/dist/dev/ui/dialog/dialog-trigger.d.ts.map +0 -1
- package/dist/dev/ui/dialog/dialog-trigger.js +0 -30
- package/dist/dev/ui/dialog/dialog-trigger.js.map +0 -1
- package/dist/dev/ui/error-dialog/error-dialog-close.d.ts +0 -13
- package/dist/dev/ui/error-dialog/error-dialog-close.d.ts.map +0 -1
- package/dist/dev/ui/error-dialog/error-dialog-close.js +0 -36
- package/dist/dev/ui/error-dialog/error-dialog-close.js.map +0 -1
- package/dist/dev/ui/error-dialog/error-dialog-description.d.ts +0 -13
- package/dist/dev/ui/error-dialog/error-dialog-description.d.ts.map +0 -1
- package/dist/dev/ui/error-dialog/error-dialog-description.js +0 -33
- package/dist/dev/ui/error-dialog/error-dialog-description.js.map +0 -1
- package/dist/dev/ui/error-dialog/error-dialog-root.d.ts +0 -13
- package/dist/dev/ui/error-dialog/error-dialog-root.d.ts.map +0 -1
- package/dist/dev/ui/error-dialog/error-dialog-root.js +0 -43
- package/dist/dev/ui/error-dialog/error-dialog-root.js.map +0 -1
- package/dist/dev/ui/error-dialog/error-dialog-title.d.ts +0 -13
- package/dist/dev/ui/error-dialog/error-dialog-title.d.ts.map +0 -1
- package/dist/dev/ui/error-dialog/error-dialog-title.js +0 -30
- package/dist/dev/ui/error-dialog/error-dialog-title.js.map +0 -1
- package/dist/dev/ui/fullscreen-button/fullscreen-button.d.ts +0 -13
- package/dist/dev/ui/fullscreen-button/fullscreen-button.d.ts.map +0 -1
- package/dist/dev/ui/fullscreen-button/fullscreen-button.js +0 -19
- package/dist/dev/ui/fullscreen-button/fullscreen-button.js.map +0 -1
- package/dist/dev/ui/gesture/gesture.d.ts +0 -15
- package/dist/dev/ui/gesture/gesture.d.ts.map +0 -1
- package/dist/dev/ui/gesture/gesture.js +0 -45
- package/dist/dev/ui/gesture/gesture.js.map +0 -1
- package/dist/dev/ui/hotkey/hotkey.d.ts +0 -15
- package/dist/dev/ui/hotkey/hotkey.d.ts.map +0 -1
- package/dist/dev/ui/hotkey/hotkey.js +0 -43
- package/dist/dev/ui/hotkey/hotkey.js.map +0 -1
- package/dist/dev/ui/live-button/live-button.d.ts +0 -28
- package/dist/dev/ui/live-button/live-button.d.ts.map +0 -1
- package/dist/dev/ui/live-button/live-button.js +0 -92
- package/dist/dev/ui/live-button/live-button.js.map +0 -1
- package/dist/dev/ui/menu/menu-checkbox-item.d.ts +0 -20
- package/dist/dev/ui/menu/menu-checkbox-item.d.ts.map +0 -1
- package/dist/dev/ui/menu/menu-checkbox-item.js +0 -51
- package/dist/dev/ui/menu/menu-checkbox-item.js.map +0 -1
- package/dist/dev/ui/menu/menu-content.d.ts +0 -13
- package/dist/dev/ui/menu/menu-content.d.ts.map +0 -1
- package/dist/dev/ui/menu/menu-content.js +0 -95
- package/dist/dev/ui/menu/menu-content.js.map +0 -1
- package/dist/dev/ui/menu/menu-group-label.d.ts +0 -13
- package/dist/dev/ui/menu/menu-group-label.d.ts.map +0 -1
- package/dist/dev/ui/menu/menu-group-label.js +0 -28
- package/dist/dev/ui/menu/menu-group-label.js.map +0 -1
- package/dist/dev/ui/menu/menu-group.d.ts +0 -13
- package/dist/dev/ui/menu/menu-group.d.ts.map +0 -1
- package/dist/dev/ui/menu/menu-group.js +0 -23
- package/dist/dev/ui/menu/menu-group.js.map +0 -1
- package/dist/dev/ui/menu/menu-item-indicator.d.ts +0 -18
- package/dist/dev/ui/menu/menu-item-indicator.d.ts.map +0 -1
- package/dist/dev/ui/menu/menu-item-indicator.js +0 -23
- package/dist/dev/ui/menu/menu-item-indicator.js.map +0 -1
- package/dist/dev/ui/menu/menu-item.d.ts +0 -18
- package/dist/dev/ui/menu/menu-item.d.ts.map +0 -1
- package/dist/dev/ui/menu/menu-item.js +0 -68
- package/dist/dev/ui/menu/menu-item.js.map +0 -1
- package/dist/dev/ui/menu/menu-keyboard.js +0 -31
- package/dist/dev/ui/menu/menu-keyboard.js.map +0 -1
- package/dist/dev/ui/menu/menu-popup.d.ts +0 -16
- package/dist/dev/ui/menu/menu-popup.d.ts.map +0 -1
- package/dist/dev/ui/menu/menu-popup.js +0 -75
- package/dist/dev/ui/menu/menu-popup.js.map +0 -1
- package/dist/dev/ui/menu/menu-radio-group.d.ts +0 -18
- package/dist/dev/ui/menu/menu-radio-group.d.ts.map +0 -1
- package/dist/dev/ui/menu/menu-radio-group.js +0 -29
- package/dist/dev/ui/menu/menu-radio-group.js.map +0 -1
- package/dist/dev/ui/menu/menu-radio-item.d.ts +0 -18
- package/dist/dev/ui/menu/menu-radio-item.d.ts.map +0 -1
- package/dist/dev/ui/menu/menu-radio-item.js +0 -61
- package/dist/dev/ui/menu/menu-radio-item.js.map +0 -1
- package/dist/dev/ui/menu/menu-root.d.ts +0 -20
- package/dist/dev/ui/menu/menu-root.d.ts.map +0 -1
- package/dist/dev/ui/menu/menu-root.js +0 -164
- package/dist/dev/ui/menu/menu-root.js.map +0 -1
- package/dist/dev/ui/menu/menu-separator.d.ts +0 -13
- package/dist/dev/ui/menu/menu-separator.d.ts.map +0 -1
- package/dist/dev/ui/menu/menu-separator.js +0 -21
- package/dist/dev/ui/menu/menu-separator.js.map +0 -1
- package/dist/dev/ui/menu/menu-trigger.d.ts +0 -22
- package/dist/dev/ui/menu/menu-trigger.d.ts.map +0 -1
- package/dist/dev/ui/menu/menu-trigger.js +0 -166
- package/dist/dev/ui/menu/menu-trigger.js.map +0 -1
- package/dist/dev/ui/mute-button/mute-button.d.ts +0 -13
- package/dist/dev/ui/mute-button/mute-button.d.ts.map +0 -1
- package/dist/dev/ui/mute-button/mute-button.js +0 -18
- package/dist/dev/ui/mute-button/mute-button.js.map +0 -1
- package/dist/dev/ui/pip-button/pip-button.d.ts +0 -13
- package/dist/dev/ui/pip-button/pip-button.d.ts.map +0 -1
- package/dist/dev/ui/pip-button/pip-button.js +0 -18
- package/dist/dev/ui/pip-button/pip-button.js.map +0 -1
- package/dist/dev/ui/play-button/play-button.d.ts +0 -28
- package/dist/dev/ui/play-button/play-button.d.ts.map +0 -1
- package/dist/dev/ui/play-button/play-button.js +0 -32
- package/dist/dev/ui/play-button/play-button.js.map +0 -1
- package/dist/dev/ui/playback-rate-button/playback-rate-button.d.ts +0 -28
- package/dist/dev/ui/playback-rate-button/playback-rate-button.d.ts.map +0 -1
- package/dist/dev/ui/playback-rate-button/playback-rate-button.js +0 -32
- package/dist/dev/ui/playback-rate-button/playback-rate-button.js.map +0 -1
- package/dist/dev/ui/playback-rate-radio-group/playback-rate-radio-group.d.ts +0 -48
- package/dist/dev/ui/playback-rate-radio-group/playback-rate-radio-group.d.ts.map +0 -1
- package/dist/dev/ui/playback-rate-radio-group/playback-rate-radio-group.js +0 -97
- package/dist/dev/ui/playback-rate-radio-group/playback-rate-radio-group.js.map +0 -1
- package/dist/dev/ui/popover/popover-arrow.d.ts +0 -13
- package/dist/dev/ui/popover/popover-arrow.d.ts.map +0 -1
- package/dist/dev/ui/popover/popover-arrow.js +0 -14
- package/dist/dev/ui/popover/popover-arrow.js.map +0 -1
- package/dist/dev/ui/popover/popover-popup.d.ts +0 -16
- package/dist/dev/ui/popover/popover-popup.d.ts.map +0 -1
- package/dist/dev/ui/popover/popover-popup.js +0 -59
- package/dist/dev/ui/popover/popover-popup.js.map +0 -1
- package/dist/dev/ui/popover/popover-root.d.ts +0 -20
- package/dist/dev/ui/popover/popover-root.d.ts.map +0 -1
- package/dist/dev/ui/popover/popover-root.js +0 -87
- package/dist/dev/ui/popover/popover-root.js.map +0 -1
- package/dist/dev/ui/popover/popover-trigger.d.ts +0 -13
- package/dist/dev/ui/popover/popover-trigger.d.ts.map +0 -1
- package/dist/dev/ui/popover/popover-trigger.js +0 -38
- package/dist/dev/ui/popover/popover-trigger.js.map +0 -1
- package/dist/dev/ui/poster/poster.d.ts +0 -35
- package/dist/dev/ui/poster/poster.d.ts.map +0 -1
- package/dist/dev/ui/poster/poster.js +0 -107
- package/dist/dev/ui/poster/poster.js.map +0 -1
- package/dist/dev/ui/quality-radio-group/quality-radio-group.d.ts +0 -48
- package/dist/dev/ui/quality-radio-group/quality-radio-group.d.ts.map +0 -1
- package/dist/dev/ui/quality-radio-group/quality-radio-group.js +0 -97
- package/dist/dev/ui/quality-radio-group/quality-radio-group.js.map +0 -1
- package/dist/dev/ui/seek-button/seek-button.d.ts +0 -29
- package/dist/dev/ui/seek-button/seek-button.d.ts.map +0 -1
- package/dist/dev/ui/seek-button/seek-button.js +0 -34
- package/dist/dev/ui/seek-button/seek-button.js.map +0 -1
- package/dist/dev/ui/seek-indicator/seek-indicator-root.d.ts +0 -12
- package/dist/dev/ui/seek-indicator/seek-indicator-root.d.ts.map +0 -1
- package/dist/dev/ui/seek-indicator/seek-indicator-root.js +0 -29
- package/dist/dev/ui/seek-indicator/seek-indicator-root.js.map +0 -1
- package/dist/dev/ui/seek-indicator/seek-indicator-value.d.ts +0 -11
- package/dist/dev/ui/seek-indicator/seek-indicator-value.d.ts.map +0 -1
- package/dist/dev/ui/seek-indicator/seek-indicator-value.js +0 -22
- package/dist/dev/ui/seek-indicator/seek-indicator-value.js.map +0 -1
- package/dist/dev/ui/slider/slider-buffer.d.ts +0 -12
- package/dist/dev/ui/slider/slider-buffer.d.ts.map +0 -1
- package/dist/dev/ui/slider/slider-buffer.js +0 -13
- package/dist/dev/ui/slider/slider-buffer.js.map +0 -1
- package/dist/dev/ui/slider/slider-fill.d.ts +0 -12
- package/dist/dev/ui/slider/slider-fill.d.ts.map +0 -1
- package/dist/dev/ui/slider/slider-fill.js +0 -13
- package/dist/dev/ui/slider/slider-fill.js.map +0 -1
- package/dist/dev/ui/slider/slider-preview.d.ts +0 -12
- package/dist/dev/ui/slider/slider-preview.d.ts.map +0 -1
- package/dist/dev/ui/slider/slider-preview.js +0 -36
- package/dist/dev/ui/slider/slider-preview.js.map +0 -1
- package/dist/dev/ui/slider/slider-root.d.ts +0 -17
- package/dist/dev/ui/slider/slider-root.d.ts.map +0 -1
- package/dist/dev/ui/slider/slider-root.js +0 -82
- package/dist/dev/ui/slider/slider-root.js.map +0 -1
- package/dist/dev/ui/slider/slider-thumb.d.ts +0 -12
- package/dist/dev/ui/slider/slider-thumb.d.ts.map +0 -1
- package/dist/dev/ui/slider/slider-thumb.js +0 -29
- package/dist/dev/ui/slider/slider-thumb.js.map +0 -1
- package/dist/dev/ui/slider/slider-thumbnail.d.ts +0 -12
- package/dist/dev/ui/slider/slider-thumbnail.d.ts.map +0 -1
- package/dist/dev/ui/slider/slider-thumbnail.js +0 -17
- package/dist/dev/ui/slider/slider-thumbnail.js.map +0 -1
- package/dist/dev/ui/slider/slider-track.d.ts +0 -12
- package/dist/dev/ui/slider/slider-track.d.ts.map +0 -1
- package/dist/dev/ui/slider/slider-track.js +0 -13
- package/dist/dev/ui/slider/slider-track.js.map +0 -1
- package/dist/dev/ui/slider/slider-value.d.ts +0 -17
- package/dist/dev/ui/slider/slider-value.d.ts.map +0 -1
- package/dist/dev/ui/slider/slider-value.js +0 -30
- package/dist/dev/ui/slider/slider-value.js.map +0 -1
- package/dist/dev/ui/status-announcer/status-announcer.d.ts +0 -12
- package/dist/dev/ui/status-announcer/status-announcer.d.ts.map +0 -1
- package/dist/dev/ui/status-announcer/status-announcer.js +0 -47
- package/dist/dev/ui/status-announcer/status-announcer.js.map +0 -1
- package/dist/dev/ui/status-indicator/status-indicator-root.d.ts +0 -12
- package/dist/dev/ui/status-indicator/status-indicator-root.d.ts.map +0 -1
- package/dist/dev/ui/status-indicator/status-indicator-root.js +0 -35
- package/dist/dev/ui/status-indicator/status-indicator-root.js.map +0 -1
- package/dist/dev/ui/status-indicator/status-indicator-value.d.ts +0 -11
- package/dist/dev/ui/status-indicator/status-indicator-value.d.ts.map +0 -1
- package/dist/dev/ui/status-indicator/status-indicator-value.js +0 -22
- package/dist/dev/ui/status-indicator/status-indicator-value.js.map +0 -1
- package/dist/dev/ui/thumbnail/thumbnail.d.ts +0 -15
- package/dist/dev/ui/thumbnail/thumbnail.d.ts.map +0 -1
- package/dist/dev/ui/thumbnail/thumbnail.js +0 -97
- package/dist/dev/ui/thumbnail/thumbnail.js.map +0 -1
- package/dist/dev/ui/time/time-group.d.ts +0 -27
- package/dist/dev/ui/time/time-group.d.ts.map +0 -1
- package/dist/dev/ui/time/time-group.js +0 -31
- package/dist/dev/ui/time/time-group.js.map +0 -1
- package/dist/dev/ui/time/time-separator.d.ts +0 -24
- package/dist/dev/ui/time/time-separator.d.ts.map +0 -1
- package/dist/dev/ui/time/time-separator.js +0 -31
- package/dist/dev/ui/time/time-separator.js.map +0 -1
- package/dist/dev/ui/time/time-value.d.ts +0 -22
- package/dist/dev/ui/time/time-value.d.ts.map +0 -1
- package/dist/dev/ui/time/time-value.js +0 -99
- package/dist/dev/ui/time/time-value.js.map +0 -1
- package/dist/dev/ui/time-slider/time-slider-chapters/slider-segments.js +0 -60
- package/dist/dev/ui/time-slider/time-slider-chapters/slider-segments.js.map +0 -1
- package/dist/dev/ui/time-slider/time-slider-chapters/time-slider-chapter-title.d.ts +0 -19
- package/dist/dev/ui/time-slider/time-slider-chapters/time-slider-chapter-title.d.ts.map +0 -1
- package/dist/dev/ui/time-slider/time-slider-chapters/time-slider-chapter-title.js +0 -45
- package/dist/dev/ui/time-slider/time-slider-chapters/time-slider-chapter-title.js.map +0 -1
- package/dist/dev/ui/time-slider/time-slider-chapters/time-slider-chapters.d.ts +0 -22
- package/dist/dev/ui/time-slider/time-slider-chapters/time-slider-chapters.d.ts.map +0 -1
- package/dist/dev/ui/time-slider/time-slider-chapters/time-slider-chapters.js +0 -51
- package/dist/dev/ui/time-slider/time-slider-chapters/time-slider-chapters.js.map +0 -1
- package/dist/dev/ui/time-slider/time-slider-root.d.ts +0 -15
- package/dist/dev/ui/time-slider/time-slider-root.d.ts.map +0 -1
- package/dist/dev/ui/time-slider/time-slider-root.js +0 -126
- package/dist/dev/ui/time-slider/time-slider-root.js.map +0 -1
- package/dist/dev/ui/title/title.d.ts +0 -26
- package/dist/dev/ui/title/title.d.ts.map +0 -1
- package/dist/dev/ui/title/title.js +0 -46
- package/dist/dev/ui/title/title.js.map +0 -1
- package/dist/dev/ui/tooltip/tooltip-arrow.d.ts +0 -13
- package/dist/dev/ui/tooltip/tooltip-arrow.d.ts.map +0 -1
- package/dist/dev/ui/tooltip/tooltip-arrow.js +0 -14
- package/dist/dev/ui/tooltip/tooltip-arrow.js.map +0 -1
- package/dist/dev/ui/tooltip/tooltip-label.d.ts +0 -13
- package/dist/dev/ui/tooltip/tooltip-label.d.ts.map +0 -1
- package/dist/dev/ui/tooltip/tooltip-label.js +0 -23
- package/dist/dev/ui/tooltip/tooltip-label.js.map +0 -1
- package/dist/dev/ui/tooltip/tooltip-popup.d.ts +0 -16
- package/dist/dev/ui/tooltip/tooltip-popup.d.ts.map +0 -1
- package/dist/dev/ui/tooltip/tooltip-popup.js +0 -66
- package/dist/dev/ui/tooltip/tooltip-popup.js.map +0 -1
- package/dist/dev/ui/tooltip/tooltip-provider.d.ts +0 -13
- package/dist/dev/ui/tooltip/tooltip-provider.d.ts.map +0 -1
- package/dist/dev/ui/tooltip/tooltip-provider.js +0 -25
- package/dist/dev/ui/tooltip/tooltip-provider.js.map +0 -1
- package/dist/dev/ui/tooltip/tooltip-root.d.ts +0 -20
- package/dist/dev/ui/tooltip/tooltip-root.d.ts.map +0 -1
- package/dist/dev/ui/tooltip/tooltip-root.js +0 -94
- package/dist/dev/ui/tooltip/tooltip-root.js.map +0 -1
- package/dist/dev/ui/tooltip/tooltip-shortcut.d.ts +0 -13
- package/dist/dev/ui/tooltip/tooltip-shortcut.d.ts.map +0 -1
- package/dist/dev/ui/tooltip/tooltip-shortcut.js +0 -24
- package/dist/dev/ui/tooltip/tooltip-shortcut.js.map +0 -1
- package/dist/dev/ui/tooltip/tooltip-trigger.d.ts +0 -13
- package/dist/dev/ui/tooltip/tooltip-trigger.d.ts.map +0 -1
- package/dist/dev/ui/tooltip/tooltip-trigger.js +0 -34
- package/dist/dev/ui/tooltip/tooltip-trigger.js.map +0 -1
- package/dist/dev/ui/volume-indicator/volume-indicator-fill.d.ts +0 -11
- package/dist/dev/ui/volume-indicator/volume-indicator-fill.d.ts.map +0 -1
- package/dist/dev/ui/volume-indicator/volume-indicator-fill.js +0 -36
- package/dist/dev/ui/volume-indicator/volume-indicator-fill.js.map +0 -1
- package/dist/dev/ui/volume-indicator/volume-indicator-root.d.ts +0 -12
- package/dist/dev/ui/volume-indicator/volume-indicator-root.d.ts.map +0 -1
- package/dist/dev/ui/volume-indicator/volume-indicator-root.js +0 -34
- package/dist/dev/ui/volume-indicator/volume-indicator-root.js.map +0 -1
- package/dist/dev/ui/volume-indicator/volume-indicator-value.d.ts +0 -11
- package/dist/dev/ui/volume-indicator/volume-indicator-value.d.ts.map +0 -1
- package/dist/dev/ui/volume-indicator/volume-indicator-value.js +0 -22
- package/dist/dev/ui/volume-indicator/volume-indicator-value.js.map +0 -1
- package/dist/dev/ui/volume-popover/volume-popover-popup.d.ts +0 -11
- package/dist/dev/ui/volume-popover/volume-popover-popup.d.ts.map +0 -1
- package/dist/dev/ui/volume-popover/volume-popover-popup.js +0 -21
- package/dist/dev/ui/volume-popover/volume-popover-popup.js.map +0 -1
- package/dist/dev/ui/volume-popover/volume-popover-root.d.ts +0 -14
- package/dist/dev/ui/volume-popover/volume-popover-root.d.ts.map +0 -1
- package/dist/dev/ui/volume-popover/volume-popover-root.js +0 -47
- package/dist/dev/ui/volume-popover/volume-popover-root.js.map +0 -1
- package/dist/dev/ui/volume-popover/volume-popover-trigger.d.ts +0 -11
- package/dist/dev/ui/volume-popover/volume-popover-trigger.d.ts.map +0 -1
- package/dist/dev/ui/volume-popover/volume-popover-trigger.js +0 -32
- package/dist/dev/ui/volume-popover/volume-popover-trigger.js.map +0 -1
- package/dist/dev/ui/volume-slider/volume-slider-root.d.ts +0 -15
- package/dist/dev/ui/volume-slider/volume-slider-root.d.ts.map +0 -1
- package/dist/dev/ui/volume-slider/volume-slider-root.js +0 -125
- package/dist/dev/ui/volume-slider/volume-slider-root.js.map +0 -1
|
@@ -0,0 +1,95 @@
|
|
|
1
|
+
import { useComposedRefs } from "../../utils/use-composed-refs.js";
|
|
2
|
+
import { renderElement } from "../../utils/use-render.js";
|
|
3
|
+
import { useMenuContext, useMenuPopupContext } from "./context.js";
|
|
4
|
+
import { callKeyDownHandler, preventMenuKeyDefault } from "./keyboard.js";
|
|
5
|
+
import { MenuContentDataAttrs } from "@videojs/core";
|
|
6
|
+
import { isMenuNavigationKey } from "@videojs/core/dom";
|
|
7
|
+
import { forwardRef, useCallback, useLayoutEffect, useRef } from "react";
|
|
8
|
+
import { createPortal } from "react-dom";
|
|
9
|
+
//#region src/ui/menu/content.tsx
|
|
10
|
+
/** Accessible item and focus scope for exactly one root or nested menu page. */
|
|
11
|
+
const MenuContent = forwardRef(function MenuContent({ render, className, style, onKeyDown, onBlur, ...elementProps }, forwardedRef) {
|
|
12
|
+
const { core, menu, parent, state, contentId } = useMenuContext();
|
|
13
|
+
const { popup, element: popupElement } = useMenuPopupContext();
|
|
14
|
+
const isSubmenu = parent !== null;
|
|
15
|
+
const isActive = isSubmenu && state.open;
|
|
16
|
+
const wasActiveRef = useRef(false);
|
|
17
|
+
const cleanupRegistrationRef = useRef(null);
|
|
18
|
+
useLayoutEffect(() => {
|
|
19
|
+
if (!isSubmenu) return void 0;
|
|
20
|
+
const wasActive = wasActiveRef.current;
|
|
21
|
+
wasActiveRef.current = isActive;
|
|
22
|
+
if (isActive && !wasActive) {
|
|
23
|
+
const frame = requestAnimationFrame(() => menu.highlightFirstItem({ preventScroll: true }));
|
|
24
|
+
return () => cancelAnimationFrame(frame);
|
|
25
|
+
}
|
|
26
|
+
}, [
|
|
27
|
+
isActive,
|
|
28
|
+
isSubmenu,
|
|
29
|
+
menu
|
|
30
|
+
]);
|
|
31
|
+
const setContentElement = useCallback((element) => {
|
|
32
|
+
cleanupRegistrationRef.current?.();
|
|
33
|
+
cleanupRegistrationRef.current = null;
|
|
34
|
+
if (!element) {
|
|
35
|
+
if (isSubmenu) menu.setPopupElement(null);
|
|
36
|
+
return;
|
|
37
|
+
}
|
|
38
|
+
if (isSubmenu) menu.setPopupElement(element);
|
|
39
|
+
cleanupRegistrationRef.current = popup.registerContent({
|
|
40
|
+
menu,
|
|
41
|
+
parent: parent?.menu ?? null,
|
|
42
|
+
element
|
|
43
|
+
});
|
|
44
|
+
}, [
|
|
45
|
+
isSubmenu,
|
|
46
|
+
menu,
|
|
47
|
+
parent?.menu,
|
|
48
|
+
popup
|
|
49
|
+
]);
|
|
50
|
+
const composedRef = useComposedRefs(forwardedRef, setContentElement);
|
|
51
|
+
const handleKeyDown = useCallback((event) => {
|
|
52
|
+
const defaultPreventedByUser = callKeyDownHandler(onKeyDown, event);
|
|
53
|
+
const isNavigationKey = isMenuNavigationKey(event);
|
|
54
|
+
menu.contentProps.onKeyDown(event);
|
|
55
|
+
if (isSubmenu && (event.key === "ArrowLeft" || event.key === "Escape") && !defaultPreventedByUser) {
|
|
56
|
+
event.preventDefault();
|
|
57
|
+
menu.close("escape");
|
|
58
|
+
}
|
|
59
|
+
if (event.key !== "Escape" && isNavigationKey) event.stopPropagation();
|
|
60
|
+
}, [
|
|
61
|
+
isSubmenu,
|
|
62
|
+
menu,
|
|
63
|
+
onKeyDown
|
|
64
|
+
]);
|
|
65
|
+
if (isSubmenu && !isActive && state.status !== "ending") return null;
|
|
66
|
+
const contentNode = renderElement("div", {
|
|
67
|
+
render,
|
|
68
|
+
className,
|
|
69
|
+
style
|
|
70
|
+
}, {
|
|
71
|
+
state,
|
|
72
|
+
stateAttrMap: MenuContentDataAttrs,
|
|
73
|
+
ref: composedRef,
|
|
74
|
+
props: [
|
|
75
|
+
{
|
|
76
|
+
id: contentId,
|
|
77
|
+
...core.getContentAttrs()
|
|
78
|
+
},
|
|
79
|
+
{
|
|
80
|
+
onKeyDownCapture: preventMenuKeyDefault,
|
|
81
|
+
onKeyDown: handleKeyDown,
|
|
82
|
+
onBlur: (event) => {
|
|
83
|
+
onBlur?.(event);
|
|
84
|
+
if (isSubmenu) menu.contentProps.onFocusOut(event);
|
|
85
|
+
}
|
|
86
|
+
},
|
|
87
|
+
elementProps
|
|
88
|
+
]
|
|
89
|
+
});
|
|
90
|
+
return isSubmenu && popupElement ? createPortal(contentNode, popupElement) : contentNode;
|
|
91
|
+
});
|
|
92
|
+
//#endregion
|
|
93
|
+
export { MenuContent };
|
|
94
|
+
|
|
95
|
+
//# sourceMappingURL=content.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"content.js","names":[],"sources":["../../../../src/ui/menu/content.tsx"],"sourcesContent":["import { MenuContentDataAttrs, type MenuState } from '@videojs/core';\nimport { isMenuNavigationKey } from '@videojs/core/dom';\nimport { forwardRef, useCallback, useLayoutEffect, useRef } from 'react';\nimport { createPortal } from 'react-dom';\n\nimport type { UIComponentProps } from '../../utils/types';\nimport { useComposedRefs } from '../../utils/use-composed-refs';\nimport { renderElement } from '../../utils/use-render';\nimport { useMenuContext, useMenuPopupContext } from './context';\nimport { callKeyDownHandler, preventMenuKeyDefault } from './keyboard';\n\nexport interface MenuContentProps extends UIComponentProps<'div', MenuState> {}\n\n/** Accessible item and focus scope for exactly one root or nested menu page. */\nexport const MenuContent = forwardRef<HTMLDivElement, MenuContentProps>(function MenuContent(\n { render, className, style, onKeyDown, onBlur, ...elementProps },\n forwardedRef\n) {\n const { core, menu, parent, state, contentId } = useMenuContext();\n const { popup, element: popupElement } = useMenuPopupContext();\n const isSubmenu = parent !== null;\n const isActive = isSubmenu && state.open;\n const wasActiveRef = useRef(false);\n const cleanupRegistrationRef = useRef<(() => void) | null>(null);\n\n useLayoutEffect(() => {\n if (!isSubmenu) return undefined;\n\n const wasActive = wasActiveRef.current;\n\n wasActiveRef.current = isActive;\n\n if (isActive && !wasActive) {\n const frame = requestAnimationFrame(() => menu.highlightFirstItem({ preventScroll: true }));\n\n return () => cancelAnimationFrame(frame);\n }\n\n return undefined;\n }, [isActive, isSubmenu, menu]);\n\n const setContentElement = useCallback(\n (element: HTMLDivElement | null) => {\n cleanupRegistrationRef.current?.();\n cleanupRegistrationRef.current = null;\n\n if (!element) {\n if (isSubmenu) menu.setPopupElement(null);\n\n return;\n }\n\n if (isSubmenu) menu.setPopupElement(element);\n\n cleanupRegistrationRef.current = popup.registerContent({\n menu,\n parent: parent?.menu ?? null,\n element,\n });\n },\n [isSubmenu, menu, parent?.menu, popup]\n );\n const composedRef = useComposedRefs(forwardedRef, setContentElement);\n\n const handleKeyDown = useCallback(\n (event: React.KeyboardEvent<HTMLDivElement>) => {\n const defaultPreventedByUser = callKeyDownHandler(\n onKeyDown as React.KeyboardEventHandler<HTMLDivElement> | undefined,\n event\n );\n const isNavigationKey = isMenuNavigationKey(event);\n\n menu.contentProps.onKeyDown(event);\n\n if (isSubmenu && (event.key === 'ArrowLeft' || event.key === 'Escape') && !defaultPreventedByUser) {\n event.preventDefault();\n menu.close('escape');\n }\n\n if (event.key !== 'Escape' && isNavigationKey) event.stopPropagation();\n },\n [isSubmenu, menu, onKeyDown]\n );\n\n const inactive = isSubmenu && !isActive && state.status !== 'ending';\n if (inactive) return null;\n\n const contentNode = renderElement(\n 'div',\n { render, className, style },\n {\n state,\n stateAttrMap: MenuContentDataAttrs,\n ref: composedRef,\n props: [\n { id: contentId, ...core.getContentAttrs() },\n {\n onKeyDownCapture: preventMenuKeyDefault,\n onKeyDown: handleKeyDown,\n onBlur: (event: React.FocusEvent<HTMLDivElement>) => {\n onBlur?.(event);\n\n if (isSubmenu) menu.contentProps.onFocusOut(event);\n },\n },\n elementProps,\n ],\n }\n );\n\n return isSubmenu && popupElement ? createPortal(contentNode, popupElement) : contentNode;\n});\n\nexport namespace MenuContent {\n export type Props = MenuContentProps;\n export type State = MenuState;\n}\n"],"mappings":";;;;;;;;;;AAcA,MAAa,cAAc,WAA6C,SAAS,YAC/E,EAAE,QAAQ,WAAW,OAAO,WAAW,QAAQ,GAAG,gBAClD,cACA;CACA,MAAM,EAAE,MAAM,MAAM,QAAQ,OAAO,cAAc,eAAe;CAChE,MAAM,EAAE,OAAO,SAAS,iBAAiB,oBAAoB;CAC7D,MAAM,YAAY,WAAW;CAC7B,MAAM,WAAW,aAAa,MAAM;CACpC,MAAM,eAAe,OAAO,KAAK;CACjC,MAAM,yBAAyB,OAA4B,IAAI;CAE/D,sBAAsB;EACpB,IAAI,CAAC,WAAW,OAAO,KAAA;EAEvB,MAAM,YAAY,aAAa;EAE/B,aAAa,UAAU;EAEvB,IAAI,YAAY,CAAC,WAAW;GAC1B,MAAM,QAAQ,4BAA4B,KAAK,mBAAmB,EAAE,eAAe,KAAK,CAAC,CAAC;GAE1F,aAAa,qBAAqB,KAAK;EACzC;CAGF,GAAG;EAAC;EAAU;EAAW;CAAI,CAAC;CAE9B,MAAM,oBAAoB,aACvB,YAAmC;EAClC,uBAAuB,UAAU;EACjC,uBAAuB,UAAU;EAEjC,IAAI,CAAC,SAAS;GACZ,IAAI,WAAW,KAAK,gBAAgB,IAAI;GAExC;EACF;EAEA,IAAI,WAAW,KAAK,gBAAgB,OAAO;EAE3C,uBAAuB,UAAU,MAAM,gBAAgB;GACrD;GACA,QAAQ,QAAQ,QAAQ;GACxB;EACF,CAAC;CACH,GACA;EAAC;EAAW;EAAM,QAAQ;EAAM;CAAK,CACvC;CACA,MAAM,cAAc,gBAAgB,cAAc,iBAAiB;CAEnE,MAAM,gBAAgB,aACnB,UAA+C;EAC9C,MAAM,yBAAyB,mBAC7B,WACA,KACF;EACA,MAAM,kBAAkB,oBAAoB,KAAK;EAEjD,KAAK,aAAa,UAAU,KAAK;EAEjC,IAAI,cAAc,MAAM,QAAQ,eAAe,MAAM,QAAQ,aAAa,CAAC,wBAAwB;GACjG,MAAM,eAAe;GACrB,KAAK,MAAM,QAAQ;EACrB;EAEA,IAAI,MAAM,QAAQ,YAAY,iBAAiB,MAAM,gBAAgB;CACvE,GACA;EAAC;EAAW;EAAM;CAAS,CAC7B;CAGA,IADiB,aAAa,CAAC,YAAY,MAAM,WAAW,UAC9C,OAAO;CAErB,MAAM,cAAc,cAClB,OACA;EAAE;EAAQ;EAAW;CAAM,GAC3B;EACE;EACA,cAAc;EACd,KAAK;EACL,OAAO;GACL;IAAE,IAAI;IAAW,GAAG,KAAK,gBAAgB;GAAE;GAC3C;IACE,kBAAkB;IAClB,WAAW;IACX,SAAS,UAA4C;KACnD,SAAS,KAAK;KAEd,IAAI,WAAW,KAAK,aAAa,WAAW,KAAK;IACnD;GACF;GACA;EACF;CACF,CACF;CAEA,OAAO,aAAa,eAAe,aAAa,aAAa,YAAY,IAAI;AAC/E,CAAC"}
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
import { renderElement } from "../../utils/use-render.js";
|
|
2
|
+
import { useMenuContext, useMenuGroupContext } from "./context.js";
|
|
3
|
+
import { useSafeId } from "../../utils/use-safe-id.js";
|
|
4
|
+
import { forwardRef, useLayoutEffect } from "react";
|
|
5
|
+
//#region src/ui/menu/group-label.tsx
|
|
6
|
+
/** Non-interactive label for a group of items. Renders a `<div>`. */
|
|
7
|
+
const MenuGroupLabel = forwardRef(function MenuGroupLabel({ render, className, style, id: idProp, ...elementProps }, forwardedRef) {
|
|
8
|
+
const { state } = useMenuContext();
|
|
9
|
+
const group = useMenuGroupContext();
|
|
10
|
+
const generatedId = useSafeId("menu-group-label");
|
|
11
|
+
const id = idProp ?? generatedId;
|
|
12
|
+
useLayoutEffect(() => {
|
|
13
|
+
return group?.registerLabel(id);
|
|
14
|
+
}, [group, id]);
|
|
15
|
+
return renderElement("div", {
|
|
16
|
+
render,
|
|
17
|
+
className,
|
|
18
|
+
style
|
|
19
|
+
}, {
|
|
20
|
+
state,
|
|
21
|
+
ref: [forwardedRef],
|
|
22
|
+
props: [{ id }, elementProps]
|
|
23
|
+
});
|
|
24
|
+
});
|
|
25
|
+
//#endregion
|
|
26
|
+
export { MenuGroupLabel };
|
|
27
|
+
|
|
28
|
+
//# sourceMappingURL=group-label.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"group-label.js","names":[],"sources":["../../../../src/ui/menu/group-label.tsx"],"sourcesContent":["import type { MenuState } from '@videojs/core';\nimport { forwardRef, useLayoutEffect } from 'react';\n\nimport type { UIComponentProps } from '../../utils/types';\nimport { renderElement } from '../../utils/use-render';\nimport { useSafeId } from '../../utils/use-safe-id';\nimport { useMenuContext, useMenuGroupContext } from './context';\n\nexport interface MenuGroupLabelProps extends UIComponentProps<'div', MenuState> {}\n\n/** Non-interactive label for a group of items. Renders a `<div>`. */\nexport const MenuGroupLabel = forwardRef<HTMLDivElement, MenuGroupLabelProps>(function MenuGroupLabel(\n { render, className, style, id: idProp, ...elementProps },\n forwardedRef\n) {\n const { state } = useMenuContext();\n const group = useMenuGroupContext();\n const generatedId = useSafeId('menu-group-label');\n const id = idProp ?? generatedId;\n\n useLayoutEffect(() => {\n return group?.registerLabel(id);\n }, [group, id]);\n\n return renderElement(\n 'div',\n { render, className, style },\n {\n state,\n ref: [forwardedRef],\n props: [{ id }, elementProps],\n }\n );\n});\n\nexport namespace MenuGroupLabel {\n export type Props = MenuGroupLabelProps;\n export type State = MenuState;\n}\n"],"mappings":";;;;;;AAWA,MAAa,iBAAiB,WAAgD,SAAS,eACrF,EAAE,QAAQ,WAAW,OAAO,IAAI,QAAQ,GAAG,gBAC3C,cACA;CACA,MAAM,EAAE,UAAU,eAAe;CACjC,MAAM,QAAQ,oBAAoB;CAClC,MAAM,cAAc,UAAU,kBAAkB;CAChD,MAAM,KAAK,UAAU;CAErB,sBAAsB;EACpB,OAAO,OAAO,cAAc,EAAE;CAChC,GAAG,CAAC,OAAO,EAAE,CAAC;CAEd,OAAO,cACL,OACA;EAAE;EAAQ;EAAW;CAAM,GAC3B;EACE;EACA,KAAK,CAAC,YAAY;EAClB,OAAO,CAAC,EAAE,GAAG,GAAG,YAAY;CAC9B,CACF;AACF,CAAC"}
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
import { renderElement } from "../../utils/use-render.js";
|
|
2
|
+
import { useMenuContext } from "./context.js";
|
|
3
|
+
import { MenuGroupProvider, getMenuGroupProps } from "./use-menu-group.js";
|
|
4
|
+
import { forwardRef } from "react";
|
|
5
|
+
import { jsx } from "react/jsx-runtime";
|
|
6
|
+
//#region src/ui/menu/group.tsx
|
|
7
|
+
/** Groups related menu items. Renders a `<div>` with `role="group"`. */
|
|
8
|
+
const MenuGroup = forwardRef(function MenuGroup({ render, className, style, ...elementProps }, forwardedRef) {
|
|
9
|
+
const { state } = useMenuContext();
|
|
10
|
+
return /* @__PURE__ */ jsx(MenuGroupProvider, { children: (labelId) => renderElement("div", {
|
|
11
|
+
render,
|
|
12
|
+
className,
|
|
13
|
+
style
|
|
14
|
+
}, {
|
|
15
|
+
state,
|
|
16
|
+
ref: [forwardedRef],
|
|
17
|
+
props: [getMenuGroupProps(labelId, elementProps), elementProps]
|
|
18
|
+
}) });
|
|
19
|
+
});
|
|
20
|
+
//#endregion
|
|
21
|
+
export { MenuGroup };
|
|
22
|
+
|
|
23
|
+
//# sourceMappingURL=group.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"group.js","names":[],"sources":["../../../../src/ui/menu/group.tsx"],"sourcesContent":["import type { MenuState } from '@videojs/core';\nimport { forwardRef } from 'react';\n\nimport type { UIComponentProps } from '../../utils/types';\nimport { renderElement } from '../../utils/use-render';\nimport { useMenuContext } from './context';\nimport { getMenuGroupProps, MenuGroupProvider } from './use-menu-group';\n\nexport interface MenuGroupProps extends UIComponentProps<'div', MenuState> {}\n\n/** Groups related menu items. Renders a `<div>` with `role=\"group\"`. */\nexport const MenuGroup = forwardRef<HTMLDivElement, MenuGroupProps>(function MenuGroup(\n { render, className, style, ...elementProps },\n forwardedRef\n) {\n const { state } = useMenuContext();\n\n return (\n <MenuGroupProvider>\n {(labelId) =>\n renderElement(\n 'div',\n { render, className, style },\n {\n state,\n ref: [forwardedRef],\n props: [getMenuGroupProps(labelId, elementProps), elementProps],\n }\n )\n }\n </MenuGroupProvider>\n );\n});\n\nexport namespace MenuGroup {\n export type Props = MenuGroupProps;\n export type State = MenuState;\n}\n"],"mappings":";;;;;;;AAWA,MAAa,YAAY,WAA2C,SAAS,UAC3E,EAAE,QAAQ,WAAW,OAAO,GAAG,gBAC/B,cACA;CACA,MAAM,EAAE,UAAU,eAAe;CAEjC,OACE,oBAAC,mBAAD,EAAA,WACI,YACA,cACE,OACA;EAAE;EAAQ;EAAW;CAAM,GAC3B;EACE;EACA,KAAK,CAAC,YAAY;EAClB,OAAO,CAAC,kBAAkB,SAAS,YAAY,GAAG,YAAY;CAChE,CACF,EAEe,CAAA;AAEvB,CAAC"}
|
|
@@ -1,16 +1,16 @@
|
|
|
1
1
|
import { __exportAll } from "../../_virtual/_rolldown/runtime.js";
|
|
2
|
-
import { MenuRadioGroup } from "./
|
|
3
|
-
import { MenuCheckboxItem } from "./
|
|
4
|
-
import { MenuContent } from "./
|
|
5
|
-
import { MenuGroup } from "./
|
|
6
|
-
import { MenuGroupLabel } from "./
|
|
7
|
-
import { MenuItem } from "./
|
|
8
|
-
import { MenuItemIndicator } from "./
|
|
9
|
-
import { MenuPopup } from "./
|
|
10
|
-
import { MenuRadioItem } from "./
|
|
11
|
-
import { MenuRoot } from "./
|
|
12
|
-
import { MenuSeparator } from "./
|
|
13
|
-
import { MenuTrigger } from "./
|
|
2
|
+
import { MenuRadioGroup } from "./radio-group.js";
|
|
3
|
+
import { MenuCheckboxItem } from "./checkbox-item.js";
|
|
4
|
+
import { MenuContent } from "./content.js";
|
|
5
|
+
import { MenuGroup } from "./group.js";
|
|
6
|
+
import { MenuGroupLabel } from "./group-label.js";
|
|
7
|
+
import { MenuItem } from "./item.js";
|
|
8
|
+
import { MenuItemIndicator } from "./item-indicator.js";
|
|
9
|
+
import { MenuPopup } from "./popup.js";
|
|
10
|
+
import { MenuRadioItem } from "./radio-item.js";
|
|
11
|
+
import { MenuRoot } from "./root.js";
|
|
12
|
+
import { MenuSeparator } from "./separator.js";
|
|
13
|
+
import { MenuTrigger } from "./trigger.js";
|
|
14
14
|
//#region src/ui/menu/index.parts.ts
|
|
15
15
|
var index_parts_exports = /* @__PURE__ */ __exportAll({
|
|
16
16
|
CheckboxItem: () => MenuCheckboxItem,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.parts.js","names":[],"sources":["../../../../src/ui/menu/index.parts.ts"],"sourcesContent":["export {
|
|
1
|
+
{"version":3,"file":"index.parts.js","names":[],"sources":["../../../../src/ui/menu/index.parts.ts"],"sourcesContent":["export { MenuCheckboxItem as CheckboxItem, type MenuCheckboxItemProps as CheckboxItemProps } from './checkbox-item';\nexport { MenuContent as Content, type MenuContentProps as ContentProps } from './content';\nexport { MenuGroup as Group, type MenuGroupProps as GroupProps } from './group';\nexport { MenuGroupLabel as GroupLabel, type MenuGroupLabelProps as GroupLabelProps } from './group-label';\nexport { MenuItem as Item, type MenuItemProps as ItemProps } from './item';\nexport {\n MenuItemIndicator as ItemIndicator,\n type MenuItemIndicatorProps as ItemIndicatorProps,\n} from './item-indicator';\nexport { MenuPopup as Popup, type MenuPopupProps as PopupProps } from './popup';\nexport { MenuRadioGroup as RadioGroup, type MenuRadioGroupProps as RadioGroupProps } from './radio-group';\nexport { MenuRadioItem as RadioItem, type MenuRadioItemProps as RadioItemProps } from './radio-item';\nexport { MenuRoot as Root, type MenuRootProps as RootProps } from './root';\nexport { MenuSeparator as Separator, type MenuSeparatorProps as SeparatorProps } from './separator';\nexport { MenuTrigger as Trigger, type MenuTriggerProps as TriggerProps } from './trigger';\n"],"mappings":""}
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
import { renderElement } from "../../utils/use-render.js";
|
|
2
|
+
import { useMenuContext, useOptionalMenuRadioItemContext } from "./context.js";
|
|
3
|
+
import { forwardRef } from "react";
|
|
4
|
+
//#region src/ui/menu/item-indicator.tsx
|
|
5
|
+
/** Visual indicator for a checked state. Only renders when `checked` is `true` (or `forceMount` is set). */
|
|
6
|
+
const MenuItemIndicator = forwardRef(function MenuItemIndicator({ render, className, style, checked, forceMount = false, ...elementProps }, forwardedRef) {
|
|
7
|
+
const { state } = useMenuContext();
|
|
8
|
+
const itemChecked = useOptionalMenuRadioItemContext();
|
|
9
|
+
if (!(checked ?? itemChecked) && !forceMount) return null;
|
|
10
|
+
return renderElement("span", {
|
|
11
|
+
render,
|
|
12
|
+
className,
|
|
13
|
+
style
|
|
14
|
+
}, {
|
|
15
|
+
state,
|
|
16
|
+
ref: [forwardedRef],
|
|
17
|
+
props: [{ "aria-hidden": true }, elementProps]
|
|
18
|
+
});
|
|
19
|
+
});
|
|
20
|
+
//#endregion
|
|
21
|
+
export { MenuItemIndicator };
|
|
22
|
+
|
|
23
|
+
//# sourceMappingURL=item-indicator.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"item-indicator.js","names":[],"sources":["../../../../src/ui/menu/item-indicator.tsx"],"sourcesContent":["import type { MenuState } from '@videojs/core';\nimport { forwardRef } from 'react';\n\nimport type { UIComponentProps } from '../../utils/types';\nimport { renderElement } from '../../utils/use-render';\nimport { useMenuContext, useOptionalMenuRadioItemContext } from './context';\n\nexport interface MenuItemIndicatorProps extends UIComponentProps<'span', MenuState> {\n /** Whether the indicator is currently shown. Typically bound to the parent item's checked state. */\n checked?: boolean;\n /** When `true`, renders even when unchecked (useful for animating out). Defaults to `false`. */\n forceMount?: boolean;\n}\n\n/** Visual indicator for a checked state. Only renders when `checked` is `true` (or `forceMount` is set). */\nexport const MenuItemIndicator = forwardRef<HTMLSpanElement, MenuItemIndicatorProps>(function MenuItemIndicator(\n { render, className, style, checked, forceMount = false, ...elementProps },\n forwardedRef\n) {\n const { state } = useMenuContext();\n const itemChecked = useOptionalMenuRadioItemContext();\n const resolvedChecked = checked ?? itemChecked;\n if (!resolvedChecked && !forceMount) return null;\n\n return renderElement(\n 'span',\n { render, className, style },\n {\n state,\n ref: [forwardedRef],\n props: [{ 'aria-hidden': true }, elementProps],\n }\n );\n});\n\nexport namespace MenuItemIndicator {\n export type Props = MenuItemIndicatorProps;\n export type State = MenuState;\n}\n"],"mappings":";;;;;AAeA,MAAa,oBAAoB,WAAoD,SAAS,kBAC5F,EAAE,QAAQ,WAAW,OAAO,SAAS,aAAa,OAAO,GAAG,gBAC5D,cACA;CACA,MAAM,EAAE,UAAU,eAAe;CACjC,MAAM,cAAc,gCAAgC;CAEpD,IAAI,EADoB,WAAW,gBACX,CAAC,YAAY,OAAO;CAE5C,OAAO,cACL,QACA;EAAE;EAAQ;EAAW;CAAM,GAC3B;EACE;EACA,KAAK,CAAC,YAAY;EAClB,OAAO,CAAC,EAAE,eAAe,KAAK,GAAG,YAAY;CAC/C,CACF;AACF,CAAC"}
|
|
@@ -0,0 +1,68 @@
|
|
|
1
|
+
import { renderElement } from "../../utils/use-render.js";
|
|
2
|
+
import { useMenuContext } from "./context.js";
|
|
3
|
+
import { completeMenuItemSelection } from "@videojs/core/dom";
|
|
4
|
+
import { forwardRef, useCallback, useEffect, useRef } from "react";
|
|
5
|
+
import { jsx } from "react/jsx-runtime";
|
|
6
|
+
//#region src/ui/menu/item.tsx
|
|
7
|
+
/** A single action in the menu. Renders a `<div>` with `role="menuitem"`. */
|
|
8
|
+
const MenuItem = forwardRef(function MenuItem({ render, className, style, onSelect, disabled, onClick, ...elementProps }, forwardedRef) {
|
|
9
|
+
const { menu, state } = useMenuContext();
|
|
10
|
+
const elementRef = useRef(null);
|
|
11
|
+
useEffect(() => {
|
|
12
|
+
const element = elementRef.current;
|
|
13
|
+
if (!element) return;
|
|
14
|
+
return menu.registerItem(element);
|
|
15
|
+
}, [menu]);
|
|
16
|
+
const handleClick = useCallback((event) => {
|
|
17
|
+
if (disabled) return;
|
|
18
|
+
onClick?.(event);
|
|
19
|
+
if (event.defaultPrevented) return;
|
|
20
|
+
onSelect?.();
|
|
21
|
+
completeMenuItemSelection(menu);
|
|
22
|
+
}, [
|
|
23
|
+
disabled,
|
|
24
|
+
onClick,
|
|
25
|
+
onSelect,
|
|
26
|
+
menu
|
|
27
|
+
]);
|
|
28
|
+
const handlePointerEnter = useCallback(() => {
|
|
29
|
+
const element = elementRef.current;
|
|
30
|
+
if (!element || disabled) return;
|
|
31
|
+
menu.highlight(element, {
|
|
32
|
+
focus: false,
|
|
33
|
+
pointer: true
|
|
34
|
+
});
|
|
35
|
+
}, [menu, disabled]);
|
|
36
|
+
return /* @__PURE__ */ jsx(MenuItemContent, {
|
|
37
|
+
disabled,
|
|
38
|
+
elementProps,
|
|
39
|
+
onClick: handleClick,
|
|
40
|
+
onPointerEnter: handlePointerEnter,
|
|
41
|
+
render,
|
|
42
|
+
className,
|
|
43
|
+
style,
|
|
44
|
+
state,
|
|
45
|
+
forwardedRef,
|
|
46
|
+
elementRef
|
|
47
|
+
});
|
|
48
|
+
});
|
|
49
|
+
function MenuItemContent({ disabled, elementProps, onClick, onPointerEnter, render, className, style, state, forwardedRef, elementRef }) {
|
|
50
|
+
return renderElement("div", {
|
|
51
|
+
render,
|
|
52
|
+
className,
|
|
53
|
+
style
|
|
54
|
+
}, {
|
|
55
|
+
state,
|
|
56
|
+
ref: [forwardedRef, elementRef],
|
|
57
|
+
props: [{
|
|
58
|
+
role: "menuitem",
|
|
59
|
+
"aria-disabled": disabled ? true : void 0,
|
|
60
|
+
onClick,
|
|
61
|
+
onPointerEnter
|
|
62
|
+
}, elementProps]
|
|
63
|
+
});
|
|
64
|
+
}
|
|
65
|
+
//#endregion
|
|
66
|
+
export { MenuItem };
|
|
67
|
+
|
|
68
|
+
//# sourceMappingURL=item.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"item.js","names":[],"sources":["../../../../src/ui/menu/item.tsx"],"sourcesContent":["import type { MenuState } from '@videojs/core';\nimport { completeMenuItemSelection } from '@videojs/core/dom';\nimport { forwardRef, useCallback, useEffect, useRef } from 'react';\n\nimport type { UIComponentProps } from '../../utils/types';\nimport { renderElement } from '../../utils/use-render';\nimport { useMenuContext } from './context';\n\nexport interface MenuItemProps extends UIComponentProps<'div', MenuState> {\n /** Called when the item is selected. */\n onSelect?: () => void;\n /** Whether the item is disabled. */\n disabled?: boolean;\n}\n\n/** A single action in the menu. Renders a `<div>` with `role=\"menuitem\"`. */\nexport const MenuItem = forwardRef<HTMLDivElement, MenuItemProps>(function MenuItem(\n { render, className, style, onSelect, disabled, onClick, ...elementProps },\n forwardedRef\n) {\n const { menu, state } = useMenuContext();\n const elementRef = useRef<HTMLDivElement>(null);\n\n useEffect(() => {\n const element = elementRef.current;\n if (!element) return;\n\n return menu.registerItem(element);\n }, [menu]);\n\n const handleClick = useCallback(\n (event: React.MouseEvent<HTMLDivElement>) => {\n if (disabled) return;\n\n onClick?.(event);\n\n if (event.defaultPrevented) return;\n\n onSelect?.();\n completeMenuItemSelection(menu);\n },\n [disabled, onClick, onSelect, menu]\n );\n\n const handlePointerEnter = useCallback(() => {\n const element = elementRef.current;\n if (!element || disabled) return;\n\n menu.highlight(element, { focus: false, pointer: true });\n }, [menu, disabled]);\n\n return (\n <MenuItemContent\n disabled={disabled}\n elementProps={elementProps}\n onClick={handleClick}\n onPointerEnter={handlePointerEnter}\n render={render}\n className={className}\n style={style}\n state={state}\n forwardedRef={forwardedRef}\n elementRef={elementRef}\n />\n );\n});\n\ninterface MenuItemContentProps {\n disabled: boolean | undefined;\n elementProps: Record<string, unknown>;\n onClick: (event: React.MouseEvent<HTMLDivElement>) => void;\n onPointerEnter: () => void;\n render: MenuItemProps['render'];\n className: MenuItemProps['className'];\n style: MenuItemProps['style'];\n state: MenuState;\n forwardedRef: React.ForwardedRef<HTMLDivElement>;\n elementRef: React.RefObject<HTMLDivElement | null>;\n}\n\nfunction MenuItemContent({\n disabled,\n elementProps,\n onClick,\n onPointerEnter,\n render,\n className,\n style,\n state,\n forwardedRef,\n elementRef,\n}: MenuItemContentProps) {\n return renderElement(\n 'div',\n { render, className, style },\n {\n state,\n ref: [forwardedRef, elementRef],\n props: [\n {\n role: 'menuitem' as const,\n 'aria-disabled': disabled ? true : undefined,\n onClick,\n onPointerEnter,\n },\n elementProps,\n ],\n }\n );\n}\n\nexport namespace MenuItem {\n export type Props = MenuItemProps;\n export type State = MenuState;\n}\n"],"mappings":";;;;;;;AAgBA,MAAa,WAAW,WAA0C,SAAS,SACzE,EAAE,QAAQ,WAAW,OAAO,UAAU,UAAU,SAAS,GAAG,gBAC5D,cACA;CACA,MAAM,EAAE,MAAM,UAAU,eAAe;CACvC,MAAM,aAAa,OAAuB,IAAI;CAE9C,gBAAgB;EACd,MAAM,UAAU,WAAW;EAC3B,IAAI,CAAC,SAAS;EAEd,OAAO,KAAK,aAAa,OAAO;CAClC,GAAG,CAAC,IAAI,CAAC;CAET,MAAM,cAAc,aACjB,UAA4C;EAC3C,IAAI,UAAU;EAEd,UAAU,KAAK;EAEf,IAAI,MAAM,kBAAkB;EAE5B,WAAW;EACX,0BAA0B,IAAI;CAChC,GACA;EAAC;EAAU;EAAS;EAAU;CAAI,CACpC;CAEA,MAAM,qBAAqB,kBAAkB;EAC3C,MAAM,UAAU,WAAW;EAC3B,IAAI,CAAC,WAAW,UAAU;EAE1B,KAAK,UAAU,SAAS;GAAE,OAAO;GAAO,SAAS;EAAK,CAAC;CACzD,GAAG,CAAC,MAAM,QAAQ,CAAC;CAEnB,OACE,oBAAC,iBAAD;EACY;EACI;EACd,SAAS;EACT,gBAAgB;EACR;EACG;EACJ;EACA;EACO;EACF;CACb,CAAA;AAEL,CAAC;AAeD,SAAS,gBAAgB,EACvB,UACA,cACA,SACA,gBACA,QACA,WACA,OACA,OACA,cACA,cACuB;CACvB,OAAO,cACL,OACA;EAAE;EAAQ;EAAW;CAAM,GAC3B;EACE;EACA,KAAK,CAAC,cAAc,UAAU;EAC9B,OAAO,CACL;GACE,MAAM;GACN,iBAAiB,WAAW,OAAO,KAAA;GACnC;GACA;EACF,GACA,YACF;CACF,CACF;AACF"}
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
import { isMenuNavigationKey } from "@videojs/core/dom";
|
|
2
|
+
//#region src/ui/menu/keyboard.ts
|
|
3
|
+
const preventedEvents = /* @__PURE__ */ new WeakSet();
|
|
4
|
+
const canceledEvents = /* @__PURE__ */ new WeakSet();
|
|
5
|
+
function preventMenuKeyDefault(event) {
|
|
6
|
+
if (event.key !== "Escape" && isMenuNavigationKey(event) && !event.defaultPrevented) {
|
|
7
|
+
event.preventDefault();
|
|
8
|
+
preventedEvents.add(event.nativeEvent);
|
|
9
|
+
}
|
|
10
|
+
}
|
|
11
|
+
function callKeyDownHandler(handler, event) {
|
|
12
|
+
const defaultPreventedBeforeHandler = event.defaultPrevented && (!preventedEvents.has(event.nativeEvent) || canceledEvents.has(event.nativeEvent));
|
|
13
|
+
if (!handler) return defaultPreventedBeforeHandler;
|
|
14
|
+
let defaultPreventedByHandler = false;
|
|
15
|
+
const preventDefault = event.preventDefault;
|
|
16
|
+
event.preventDefault = () => {
|
|
17
|
+
defaultPreventedByHandler = true;
|
|
18
|
+
preventDefault.call(event);
|
|
19
|
+
};
|
|
20
|
+
try {
|
|
21
|
+
handler(event);
|
|
22
|
+
} finally {
|
|
23
|
+
event.preventDefault = preventDefault;
|
|
24
|
+
}
|
|
25
|
+
if (defaultPreventedByHandler) canceledEvents.add(event.nativeEvent);
|
|
26
|
+
return defaultPreventedBeforeHandler || defaultPreventedByHandler;
|
|
27
|
+
}
|
|
28
|
+
//#endregion
|
|
29
|
+
export { callKeyDownHandler, preventMenuKeyDefault };
|
|
30
|
+
|
|
31
|
+
//# sourceMappingURL=keyboard.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"keyboard.js","names":[],"sources":["../../../../src/ui/menu/keyboard.ts"],"sourcesContent":["import { isMenuNavigationKey } from '@videojs/core/dom';\n\nconst preventedEvents = new WeakSet<Event>();\nconst canceledEvents = new WeakSet<Event>();\n\n// Menu keys are prevented during capture before native player hotkeys run.\n// Track that internal prevention so bubble handlers can still honor a consumer\n// that calls preventDefault() to opt out of the built-in menu behavior.\nexport function preventMenuKeyDefault(event: React.KeyboardEvent<HTMLElement>): void {\n if (event.key !== 'Escape' && isMenuNavigationKey(event) && !event.defaultPrevented) {\n event.preventDefault();\n preventedEvents.add(event.nativeEvent);\n }\n}\n\nexport function callKeyDownHandler<T extends HTMLElement>(\n handler: React.KeyboardEventHandler<T> | undefined,\n event: React.KeyboardEvent<T>\n): boolean {\n const defaultPreventedBeforeHandler =\n event.defaultPrevented && (!preventedEvents.has(event.nativeEvent) || canceledEvents.has(event.nativeEvent));\n\n if (!handler) return defaultPreventedBeforeHandler;\n\n let defaultPreventedByHandler = false;\n const preventDefault = event.preventDefault;\n\n event.preventDefault = () => {\n defaultPreventedByHandler = true;\n preventDefault.call(event);\n };\n\n try {\n handler(event);\n } finally {\n event.preventDefault = preventDefault;\n }\n\n if (defaultPreventedByHandler) canceledEvents.add(event.nativeEvent);\n\n return defaultPreventedBeforeHandler || defaultPreventedByHandler;\n}\n"],"mappings":";;AAEA,MAAM,kCAAkB,IAAI,QAAe;AAC3C,MAAM,iCAAiB,IAAI,QAAe;AAK1C,SAAgB,sBAAsB,OAA+C;CACnF,IAAI,MAAM,QAAQ,YAAY,oBAAoB,KAAK,KAAK,CAAC,MAAM,kBAAkB;EACnF,MAAM,eAAe;EACrB,gBAAgB,IAAI,MAAM,WAAW;CACvC;AACF;AAEA,SAAgB,mBACd,SACA,OACS;CACT,MAAM,gCACJ,MAAM,qBAAqB,CAAC,gBAAgB,IAAI,MAAM,WAAW,KAAK,eAAe,IAAI,MAAM,WAAW;CAE5G,IAAI,CAAC,SAAS,OAAO;CAErB,IAAI,4BAA4B;CAChC,MAAM,iBAAiB,MAAM;CAE7B,MAAM,uBAAuB;EAC3B,4BAA4B;EAC5B,eAAe,KAAK,KAAK;CAC3B;CAEA,IAAI;EACF,QAAQ,KAAK;CACf,UAAU;EACR,MAAM,iBAAiB;CACzB;CAEA,IAAI,2BAA2B,eAAe,IAAI,MAAM,WAAW;CAEnE,OAAO,iCAAiC;AAC1C"}
|
|
@@ -0,0 +1,74 @@
|
|
|
1
|
+
import { useComposedRefs } from "../../utils/use-composed-refs.js";
|
|
2
|
+
import { useDestroy } from "../../utils/use-destroy.js";
|
|
3
|
+
import { renderElement } from "../../utils/use-render.js";
|
|
4
|
+
import { MenuPopupContextProvider, useMenuContext } from "./context.js";
|
|
5
|
+
import { usePopupPosition } from "../popover/use-popup-position.js";
|
|
6
|
+
import { MenuPopupDataAttrs } from "@videojs/core";
|
|
7
|
+
import { MenuPositioningCSSVars, createMenuPopup, getRootPositionOptions } from "@videojs/core/dom";
|
|
8
|
+
import { forwardRef, useCallback, useMemo, useRef, useState } from "react";
|
|
9
|
+
import { jsx } from "react/jsx-runtime";
|
|
10
|
+
//#region src/ui/menu/popup.tsx
|
|
11
|
+
/** Positioned menu surface that contains one or more sibling Content pages. */
|
|
12
|
+
const MenuPopup = forwardRef(function MenuPopup({ render, className, style, onBlur, keepMounted = false, ...elementProps }, forwardedRef) {
|
|
13
|
+
const { core, menu, parent, state, preferredSide, setPositionedSide, anchorName, boundary, container } = useMenuContext();
|
|
14
|
+
const [popup] = useState(createMenuPopup);
|
|
15
|
+
const [popupElement, setPopupElement] = useState(null);
|
|
16
|
+
const internalRef = useRef(null);
|
|
17
|
+
const setInternalElement = useCallback((element) => {
|
|
18
|
+
menu.setPopupElement(element);
|
|
19
|
+
popup.setElement(element);
|
|
20
|
+
setPopupElement(element);
|
|
21
|
+
}, [menu, popup]);
|
|
22
|
+
const composedRef = useComposedRefs(forwardedRef, internalRef, setInternalElement);
|
|
23
|
+
const positionOptions = useMemo(() => getRootPositionOptions(preferredSide, state.align), [preferredSide, state.align]);
|
|
24
|
+
const positioningStyle = usePopupPosition({
|
|
25
|
+
open: state.open,
|
|
26
|
+
anchorName,
|
|
27
|
+
position: positionOptions,
|
|
28
|
+
triggerSource: menu,
|
|
29
|
+
popupRef: internalRef,
|
|
30
|
+
boundary,
|
|
31
|
+
container,
|
|
32
|
+
cssVars: MenuPositioningCSSVars,
|
|
33
|
+
trackResize: false,
|
|
34
|
+
onSideChange: setPositionedSide
|
|
35
|
+
});
|
|
36
|
+
useDestroy(popup);
|
|
37
|
+
const inactive = !state.open && state.status !== "ending";
|
|
38
|
+
if (inactive && !keepMounted) return null;
|
|
39
|
+
const popupNode = renderElement("div", {
|
|
40
|
+
render,
|
|
41
|
+
className,
|
|
42
|
+
style
|
|
43
|
+
}, {
|
|
44
|
+
state,
|
|
45
|
+
stateAttrMap: MenuPopupDataAttrs,
|
|
46
|
+
ref: composedRef,
|
|
47
|
+
props: [
|
|
48
|
+
{
|
|
49
|
+
style: positioningStyle,
|
|
50
|
+
...core.getPopupAttrs()
|
|
51
|
+
},
|
|
52
|
+
{ onBlur: (event) => {
|
|
53
|
+
onBlur?.(event);
|
|
54
|
+
menu.contentProps.onFocusOut(event);
|
|
55
|
+
} },
|
|
56
|
+
elementProps,
|
|
57
|
+
{
|
|
58
|
+
hidden: inactive,
|
|
59
|
+
inert: inactive || void 0
|
|
60
|
+
}
|
|
61
|
+
]
|
|
62
|
+
});
|
|
63
|
+
return /* @__PURE__ */ jsx(MenuPopupContextProvider, {
|
|
64
|
+
value: {
|
|
65
|
+
popup,
|
|
66
|
+
element: popupElement
|
|
67
|
+
},
|
|
68
|
+
children: popupNode
|
|
69
|
+
});
|
|
70
|
+
});
|
|
71
|
+
//#endregion
|
|
72
|
+
export { MenuPopup };
|
|
73
|
+
|
|
74
|
+
//# sourceMappingURL=popup.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"popup.js","names":[],"sources":["../../../../src/ui/menu/popup.tsx"],"sourcesContent":["import { MenuPopupDataAttrs, type MenuState } from '@videojs/core';\nimport { createMenuPopup, getRootPositionOptions, MenuPositioningCSSVars } from '@videojs/core/dom';\nimport { forwardRef, useCallback, useMemo, useRef, useState } from 'react';\n\nimport type { UIComponentProps } from '../../utils/types';\nimport { useComposedRefs } from '../../utils/use-composed-refs';\nimport { useDestroy } from '../../utils/use-destroy';\nimport { renderElement } from '../../utils/use-render';\nimport { usePopupPosition } from '../popover/use-popup-position';\nimport { MenuPopupContextProvider, useMenuContext } from './context';\n\nexport interface MenuPopupProps extends UIComponentProps<'div', MenuState> {\n /** Keep the popup mounted, hidden, and inert while closed. */\n keepMounted?: boolean;\n}\n\n/** Positioned menu surface that contains one or more sibling Content pages. */\nexport const MenuPopup = forwardRef<HTMLDivElement, MenuPopupProps>(function MenuPopup(\n { render, className, style, onBlur, keepMounted = false, ...elementProps },\n forwardedRef\n) {\n const { core, menu, parent, state, preferredSide, setPositionedSide, anchorName, boundary, container } =\n useMenuContext();\n if (__DEV__ && parent) throw new Error('Menu.Popup must be a direct child of a root Menu.Root');\n\n const [popup] = useState(createMenuPopup);\n const [popupElement, setPopupElement] = useState<HTMLElement | null>(null);\n const internalRef = useRef<HTMLDivElement>(null);\n const setInternalElement = useCallback(\n (element: HTMLDivElement | null) => {\n menu.setPopupElement(element);\n popup.setElement(element);\n setPopupElement(element);\n },\n [menu, popup]\n );\n const composedRef = useComposedRefs(forwardedRef, internalRef, setInternalElement);\n const positionOptions = useMemo(\n () => getRootPositionOptions(preferredSide, state.align),\n [preferredSide, state.align]\n );\n const positioningStyle = usePopupPosition({\n open: state.open,\n anchorName,\n position: positionOptions,\n triggerSource: menu,\n popupRef: internalRef,\n boundary,\n container,\n cssVars: MenuPositioningCSSVars,\n trackResize: false,\n onSideChange: setPositionedSide,\n });\n\n useDestroy(popup);\n\n const inactive = !state.open && state.status !== 'ending';\n if (inactive && !keepMounted) return null;\n\n const popupNode = renderElement(\n 'div',\n { render, className, style },\n {\n state,\n stateAttrMap: MenuPopupDataAttrs,\n ref: composedRef,\n props: [\n { style: positioningStyle, ...core.getPopupAttrs() },\n {\n onBlur: (event: React.FocusEvent<HTMLDivElement>) => {\n onBlur?.(event);\n menu.contentProps.onFocusOut(event);\n },\n },\n elementProps,\n { hidden: inactive, inert: inactive || undefined },\n ],\n }\n );\n\n return <MenuPopupContextProvider value={{ popup, element: popupElement }}>{popupNode}</MenuPopupContextProvider>;\n});\n\nexport namespace MenuPopup {\n export type Props = MenuPopupProps;\n export type State = MenuState;\n}\n"],"mappings":";;;;;;;;;;;AAiBA,MAAa,YAAY,WAA2C,SAAS,UAC3E,EAAE,QAAQ,WAAW,OAAO,QAAQ,cAAc,OAAO,GAAG,gBAC5D,cACA;CACA,MAAM,EAAE,MAAM,MAAM,QAAQ,OAAO,eAAe,mBAAmB,YAAY,UAAU,cACzF,eAAe;CAGjB,MAAM,CAAC,SAAS,SAAS,eAAe;CACxC,MAAM,CAAC,cAAc,mBAAmB,SAA6B,IAAI;CACzE,MAAM,cAAc,OAAuB,IAAI;CAC/C,MAAM,qBAAqB,aACxB,YAAmC;EAClC,KAAK,gBAAgB,OAAO;EAC5B,MAAM,WAAW,OAAO;EACxB,gBAAgB,OAAO;CACzB,GACA,CAAC,MAAM,KAAK,CACd;CACA,MAAM,cAAc,gBAAgB,cAAc,aAAa,kBAAkB;CACjF,MAAM,kBAAkB,cAChB,uBAAuB,eAAe,MAAM,KAAK,GACvD,CAAC,eAAe,MAAM,KAAK,CAC7B;CACA,MAAM,mBAAmB,iBAAiB;EACxC,MAAM,MAAM;EACZ;EACA,UAAU;EACV,eAAe;EACf,UAAU;EACV;EACA;EACA,SAAS;EACT,aAAa;EACb,cAAc;CAChB,CAAC;CAED,WAAW,KAAK;CAEhB,MAAM,WAAW,CAAC,MAAM,QAAQ,MAAM,WAAW;CACjD,IAAI,YAAY,CAAC,aAAa,OAAO;CAErC,MAAM,YAAY,cAChB,OACA;EAAE;EAAQ;EAAW;CAAM,GAC3B;EACE;EACA,cAAc;EACd,KAAK;EACL,OAAO;GACL;IAAE,OAAO;IAAkB,GAAG,KAAK,cAAc;GAAE;GACnD,EACE,SAAS,UAA4C;IACnD,SAAS,KAAK;IACd,KAAK,aAAa,WAAW,KAAK;GACpC,EACF;GACA;GACA;IAAE,QAAQ;IAAU,OAAO,YAAY,KAAA;GAAU;EACnD;CACF,CACF;CAEA,OAAO,oBAAC,0BAAD;EAA0B,OAAO;GAAE;GAAO,SAAS;EAAa;EAAI,UAAA;CAAoC,CAAA;AACjH,CAAC"}
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
import { renderElement } from "../../utils/use-render.js";
|
|
2
|
+
import { MenuRadioGroupContextProvider, useMenuContext } from "./context.js";
|
|
3
|
+
import { MenuGroupProvider, getMenuGroupProps } from "./use-menu-group.js";
|
|
4
|
+
import { forwardRef } from "react";
|
|
5
|
+
import { jsx } from "react/jsx-runtime";
|
|
6
|
+
//#region src/ui/menu/radio-group.tsx
|
|
7
|
+
/** A group of mutually exclusive radio items. Renders a `<div>` with `role="group"`. */
|
|
8
|
+
const MenuRadioGroup = forwardRef(function MenuRadioGroup({ render, className, style, value, onValueChange, ...elementProps }, forwardedRef) {
|
|
9
|
+
const { state } = useMenuContext();
|
|
10
|
+
return /* @__PURE__ */ jsx(MenuGroupProvider, { children: (labelId) => /* @__PURE__ */ jsx(MenuRadioGroupContextProvider, {
|
|
11
|
+
value: {
|
|
12
|
+
value,
|
|
13
|
+
onValueChange
|
|
14
|
+
},
|
|
15
|
+
children: renderElement("div", {
|
|
16
|
+
render,
|
|
17
|
+
className,
|
|
18
|
+
style
|
|
19
|
+
}, {
|
|
20
|
+
state,
|
|
21
|
+
ref: [forwardedRef],
|
|
22
|
+
props: [getMenuGroupProps(labelId, elementProps), elementProps]
|
|
23
|
+
})
|
|
24
|
+
}) });
|
|
25
|
+
});
|
|
26
|
+
//#endregion
|
|
27
|
+
export { MenuRadioGroup };
|
|
28
|
+
|
|
29
|
+
//# sourceMappingURL=radio-group.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"radio-group.js","names":[],"sources":["../../../../src/ui/menu/radio-group.tsx"],"sourcesContent":["import type { MenuState } from '@videojs/core';\nimport { forwardRef } from 'react';\n\nimport type { UIComponentProps } from '../../utils/types';\nimport { renderElement } from '../../utils/use-render';\nimport { MenuRadioGroupContextProvider, useMenuContext } from './context';\nimport { getMenuGroupProps, MenuGroupProvider } from './use-menu-group';\n\nexport interface MenuRadioGroupProps extends UIComponentProps<'div', MenuState> {\n /** The currently selected value. */\n value: string;\n /** Called when the user selects a radio item. */\n onValueChange: (value: string) => void;\n}\n\n/** A group of mutually exclusive radio items. Renders a `<div>` with `role=\"group\"`. */\nexport const MenuRadioGroup = forwardRef<HTMLDivElement, MenuRadioGroupProps>(function MenuRadioGroup(\n { render, className, style, value, onValueChange, ...elementProps },\n forwardedRef\n) {\n const { state } = useMenuContext();\n\n return (\n <MenuGroupProvider>\n {(labelId) => (\n <MenuRadioGroupContextProvider value={{ value, onValueChange }}>\n {renderElement(\n 'div',\n { render, className, style },\n {\n state,\n ref: [forwardedRef],\n props: [getMenuGroupProps(labelId, elementProps), elementProps],\n }\n )}\n </MenuRadioGroupContextProvider>\n )}\n </MenuGroupProvider>\n );\n});\n\nexport namespace MenuRadioGroup {\n export type Props = MenuRadioGroupProps;\n export type State = MenuState;\n}\n"],"mappings":";;;;;;;AAgBA,MAAa,iBAAiB,WAAgD,SAAS,eACrF,EAAE,QAAQ,WAAW,OAAO,OAAO,eAAe,GAAG,gBACrD,cACA;CACA,MAAM,EAAE,UAAU,eAAe;CAEjC,OACE,oBAAC,mBAAD,EAAA,WACI,YACA,oBAAC,+BAAD;EAA+B,OAAO;GAAE;GAAO;EAAc;EAC1D,UAAA,cACC,OACA;GAAE;GAAQ;GAAW;EAAM,GAC3B;GACE;GACA,KAAK,CAAC,YAAY;GAClB,OAAO,CAAC,kBAAkB,SAAS,YAAY,GAAG,YAAY;EAChE,CACF;CAC6B,CAAA,EAEhB,CAAA;AAEvB,CAAC"}
|
|
@@ -0,0 +1,61 @@
|
|
|
1
|
+
import { renderElement } from "../../utils/use-render.js";
|
|
2
|
+
import { MenuRadioItemContextProvider, useMenuContext, useMenuRadioGroupContext } from "./context.js";
|
|
3
|
+
import { completeMenuItemSelection } from "@videojs/core/dom";
|
|
4
|
+
import { forwardRef, useCallback, useEffect, useRef } from "react";
|
|
5
|
+
import { jsx } from "react/jsx-runtime";
|
|
6
|
+
//#region src/ui/menu/radio-item.tsx
|
|
7
|
+
/** A radio-style menu item. Renders a `<div>` with `role="menuitemradio"`. */
|
|
8
|
+
const MenuRadioItem = forwardRef(function MenuRadioItem({ render, className, style, value, disabled, onClick, ...elementProps }, forwardedRef) {
|
|
9
|
+
const { menu, state } = useMenuContext();
|
|
10
|
+
const { value: groupValue, onValueChange } = useMenuRadioGroupContext();
|
|
11
|
+
const elementRef = useRef(null);
|
|
12
|
+
const checked = groupValue === value;
|
|
13
|
+
useEffect(() => {
|
|
14
|
+
const element = elementRef.current;
|
|
15
|
+
if (!element) return;
|
|
16
|
+
return menu.registerItem(element);
|
|
17
|
+
}, [menu]);
|
|
18
|
+
const handleClick = useCallback((event) => {
|
|
19
|
+
if (disabled) return;
|
|
20
|
+
onClick?.(event);
|
|
21
|
+
if (event.defaultPrevented) return;
|
|
22
|
+
onValueChange(value);
|
|
23
|
+
completeMenuItemSelection(menu);
|
|
24
|
+
}, [
|
|
25
|
+
disabled,
|
|
26
|
+
onClick,
|
|
27
|
+
onValueChange,
|
|
28
|
+
value,
|
|
29
|
+
menu
|
|
30
|
+
]);
|
|
31
|
+
const handlePointerEnter = useCallback(() => {
|
|
32
|
+
const element = elementRef.current;
|
|
33
|
+
if (!element || disabled) return;
|
|
34
|
+
menu.highlight(element, {
|
|
35
|
+
focus: false,
|
|
36
|
+
pointer: true
|
|
37
|
+
});
|
|
38
|
+
}, [menu, disabled]);
|
|
39
|
+
return /* @__PURE__ */ jsx(MenuRadioItemContextProvider, {
|
|
40
|
+
value: checked,
|
|
41
|
+
children: renderElement("div", {
|
|
42
|
+
render,
|
|
43
|
+
className,
|
|
44
|
+
style
|
|
45
|
+
}, {
|
|
46
|
+
state,
|
|
47
|
+
ref: [forwardedRef, elementRef],
|
|
48
|
+
props: [{
|
|
49
|
+
role: "menuitemradio",
|
|
50
|
+
"aria-checked": checked,
|
|
51
|
+
"aria-disabled": disabled ? true : void 0,
|
|
52
|
+
onClick: handleClick,
|
|
53
|
+
onPointerEnter: handlePointerEnter
|
|
54
|
+
}, elementProps]
|
|
55
|
+
})
|
|
56
|
+
});
|
|
57
|
+
});
|
|
58
|
+
//#endregion
|
|
59
|
+
export { MenuRadioItem };
|
|
60
|
+
|
|
61
|
+
//# sourceMappingURL=radio-item.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"radio-item.js","names":[],"sources":["../../../../src/ui/menu/radio-item.tsx"],"sourcesContent":["import type { MenuState } from '@videojs/core';\nimport { completeMenuItemSelection } from '@videojs/core/dom';\nimport { forwardRef, useCallback, useEffect, useRef } from 'react';\n\nimport type { UIComponentProps } from '../../utils/types';\nimport { renderElement } from '../../utils/use-render';\nimport { MenuRadioItemContextProvider, useMenuContext, useMenuRadioGroupContext } from './context';\n\nexport interface MenuRadioItemProps extends UIComponentProps<'div', MenuState> {\n /** The value this item represents. */\n value: string;\n /** Whether the item is disabled. */\n disabled?: boolean;\n}\n\n/** A radio-style menu item. Renders a `<div>` with `role=\"menuitemradio\"`. */\nexport const MenuRadioItem = forwardRef<HTMLDivElement, MenuRadioItemProps>(function MenuRadioItem(\n { render, className, style, value, disabled, onClick, ...elementProps },\n forwardedRef\n) {\n const { menu, state } = useMenuContext();\n const { value: groupValue, onValueChange } = useMenuRadioGroupContext();\n const elementRef = useRef<HTMLDivElement>(null);\n const checked = groupValue === value;\n\n useEffect(() => {\n const element = elementRef.current;\n if (!element) return;\n\n return menu.registerItem(element);\n }, [menu]);\n\n const handleClick = useCallback(\n (event: React.MouseEvent<HTMLDivElement>) => {\n if (disabled) return;\n\n onClick?.(event);\n\n if (event.defaultPrevented) return;\n\n onValueChange(value);\n completeMenuItemSelection(menu);\n },\n [disabled, onClick, onValueChange, value, menu]\n );\n\n const handlePointerEnter = useCallback(() => {\n const element = elementRef.current;\n if (!element || disabled) return;\n\n menu.highlight(element, { focus: false, pointer: true });\n }, [menu, disabled]);\n\n return (\n <MenuRadioItemContextProvider value={checked}>\n {renderElement(\n 'div',\n { render, className, style },\n {\n state,\n ref: [forwardedRef, elementRef],\n props: [\n {\n role: 'menuitemradio' as const,\n 'aria-checked': checked,\n 'aria-disabled': disabled ? true : undefined,\n onClick: handleClick,\n onPointerEnter: handlePointerEnter,\n },\n elementProps,\n ],\n }\n )}\n </MenuRadioItemContextProvider>\n );\n});\n\nexport namespace MenuRadioItem {\n export type Props = MenuRadioItemProps;\n export type State = MenuState;\n}\n"],"mappings":";;;;;;;AAgBA,MAAa,gBAAgB,WAA+C,SAAS,cACnF,EAAE,QAAQ,WAAW,OAAO,OAAO,UAAU,SAAS,GAAG,gBACzD,cACA;CACA,MAAM,EAAE,MAAM,UAAU,eAAe;CACvC,MAAM,EAAE,OAAO,YAAY,kBAAkB,yBAAyB;CACtE,MAAM,aAAa,OAAuB,IAAI;CAC9C,MAAM,UAAU,eAAe;CAE/B,gBAAgB;EACd,MAAM,UAAU,WAAW;EAC3B,IAAI,CAAC,SAAS;EAEd,OAAO,KAAK,aAAa,OAAO;CAClC,GAAG,CAAC,IAAI,CAAC;CAET,MAAM,cAAc,aACjB,UAA4C;EAC3C,IAAI,UAAU;EAEd,UAAU,KAAK;EAEf,IAAI,MAAM,kBAAkB;EAE5B,cAAc,KAAK;EACnB,0BAA0B,IAAI;CAChC,GACA;EAAC;EAAU;EAAS;EAAe;EAAO;CAAI,CAChD;CAEA,MAAM,qBAAqB,kBAAkB;EAC3C,MAAM,UAAU,WAAW;EAC3B,IAAI,CAAC,WAAW,UAAU;EAE1B,KAAK,UAAU,SAAS;GAAE,OAAO;GAAO,SAAS;EAAK,CAAC;CACzD,GAAG,CAAC,MAAM,QAAQ,CAAC;CAEnB,OACE,oBAAC,8BAAD;EAA8B,OAAO;EAClC,UAAA,cACC,OACA;GAAE;GAAQ;GAAW;EAAM,GAC3B;GACE;GACA,KAAK,CAAC,cAAc,UAAU;GAC9B,OAAO,CACL;IACE,MAAM;IACN,gBAAgB;IAChB,iBAAiB,WAAW,OAAO,KAAA;IACnC,SAAS;IACT,gBAAgB;GAClB,GACA,YACF;EACF,CACF;CAC4B,CAAA;AAElC,CAAC"}
|