@videojs/react 10.0.0-beta.28 → 10.0.0-beta.29
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/default/__generated__/skins/default-video/styles/buttons.css +132 -18
- package/dist/default/__generated__/skins/default-video/styles/captions.css +22 -0
- package/dist/default/__generated__/skins/default-video/styles/container.css +121 -8
- package/dist/default/__generated__/skins/default-video/styles/controls.css +436 -21
- package/dist/default/__generated__/skins/default-video/styles/dialog.css +169 -0
- package/dist/default/__generated__/skins/default-video/styles/indicator.css +459 -0
- package/dist/default/__generated__/skins/default-video/styles/menus.css +254 -0
- package/dist/default/__generated__/skins/default-video/styles/overlays.css +26 -2
- package/dist/default/__generated__/skins/default-video/styles/popups.css +338 -12
- package/dist/default/__generated__/skins/default-video/styles/poster.css +4 -4
- package/dist/default/__generated__/skins/default-video/styles/sliders.css +355 -31
- package/dist/default/__generated__/skins/default-video/styles/styles.css +2455 -216
- package/dist/default/__generated__/skins/default-video/styles/theme.css +4 -19
- package/dist/default/__generated__/skins/default-video/styles/video.css +29 -0
- package/dist/default/__generated__/skins/minimal-video/styles/base.css +25 -0
- package/dist/default/__generated__/skins/minimal-video/styles/buttons.css +266 -0
- package/dist/default/__generated__/skins/minimal-video/styles/captions.css +22 -0
- package/dist/default/__generated__/skins/minimal-video/styles/container.css +158 -0
- package/dist/default/__generated__/skins/minimal-video/styles/controls.css +182 -0
- package/dist/default/__generated__/skins/minimal-video/styles/dialog.css +77 -0
- package/dist/default/__generated__/skins/minimal-video/styles/indicator.css +322 -0
- package/dist/default/__generated__/skins/minimal-video/styles/menus.css +254 -0
- package/dist/default/__generated__/skins/minimal-video/styles/overlays.css +35 -0
- package/dist/default/__generated__/skins/minimal-video/styles/popups.css +371 -0
- package/dist/default/__generated__/skins/minimal-video/styles/poster.css +47 -0
- package/dist/default/__generated__/skins/minimal-video/styles/sliders.css +436 -0
- package/dist/default/__generated__/skins/minimal-video/styles/styles.css +2246 -0
- package/dist/default/__generated__/skins/minimal-video/styles/theme.css +7 -0
- package/dist/default/__generated__/skins/minimal-video/styles/video.css +29 -0
- package/dist/default/i18n/index.js +2 -1
- package/dist/default/i18n/text.js +20 -0
- package/dist/default/i18n/text.js.map +1 -0
- package/dist/default/icons/dist/react/default/airplay-exit.js +3 -3
- package/dist/default/icons/dist/react/default/airplay-exit.js.map +1 -1
- package/dist/default/icons/dist/react/minimal/airplay-exit.js +3 -3
- package/dist/default/icons/dist/react/minimal/airplay-exit.js.map +1 -1
- package/dist/default/index.js +2 -1
- package/dist/default/media/hls-background-video/media.js +18 -3
- package/dist/default/media/hls-background-video/media.js.map +1 -1
- package/dist/default/presets/audio/minimal-skin.css +103 -101
- package/dist/default/presets/audio/minimal-skin.js +1 -1
- package/dist/default/presets/audio/minimal-skin.tailwind.js +1 -1
- package/dist/default/presets/audio/skin.css +68 -69
- package/dist/default/presets/audio/skin.js +1 -1
- package/dist/default/presets/audio/skin.tailwind.js +1 -1
- package/dist/default/presets/live-audio/minimal-skin.css +103 -101
- package/dist/default/presets/live-audio/skin.css +68 -69
- package/dist/default/presets/live-video/minimal-skin.css +140 -120
- package/dist/default/presets/live-video/minimal-skin.js +3 -8
- package/dist/default/presets/live-video/minimal-skin.js.map +1 -1
- package/dist/default/presets/live-video/minimal-skin.tailwind.js +5 -8
- package/dist/default/presets/live-video/minimal-skin.tailwind.js.map +1 -1
- package/dist/default/presets/live-video/skin.css +89 -76
- package/dist/default/presets/live-video/skin.js +3 -8
- package/dist/default/presets/live-video/skin.js.map +1 -1
- package/dist/default/presets/live-video/skin.tailwind.js +7 -10
- package/dist/default/presets/live-video/skin.tailwind.js.map +1 -1
- package/dist/default/presets/video/minimal-skin.css +140 -120
- package/dist/default/presets/video/minimal-skin.js +3 -8
- package/dist/default/presets/video/minimal-skin.js.map +1 -1
- package/dist/default/presets/video/minimal-skin.tailwind.js +5 -8
- package/dist/default/presets/video/minimal-skin.tailwind.js.map +1 -1
- package/dist/default/presets/video/skin.css +89 -76
- package/dist/default/presets/video/skin.js +3 -8
- package/dist/default/presets/video/skin.js.map +1 -1
- package/dist/default/presets/video/skin.tailwind.js +6 -9
- package/dist/default/presets/video/skin.tailwind.js.map +1 -1
- package/dist/default/skins/dist/default/default/tailwind/components/button.js +3 -1
- package/dist/default/skins/dist/default/default/tailwind/components/button.js.map +1 -1
- package/dist/default/skins/dist/default/default/tailwind/components/poster.js +8 -1
- package/dist/default/skins/dist/default/default/tailwind/components/poster.js.map +1 -1
- package/dist/default/skins/dist/default/default/tailwind/components/slider.js +10 -10
- package/dist/default/skins/dist/default/default/tailwind/components/slider.js.map +1 -1
- package/dist/default/skins/dist/default/default/tailwind/components/thumbnail.js +1 -1
- package/dist/default/skins/dist/default/default/tailwind/components/thumbnail.js.map +1 -1
- package/dist/default/skins/dist/default/default/tailwind/video.tailwind.js +2 -2
- package/dist/default/skins/dist/default/default/tailwind/video.tailwind.js.map +1 -1
- package/dist/default/skins/dist/default/minimal/tailwind/components/poster.js +8 -1
- package/dist/default/skins/dist/default/minimal/tailwind/components/poster.js.map +1 -1
- package/dist/default/skins/dist/default/minimal/tailwind/components/slider.js +13 -12
- package/dist/default/skins/dist/default/minimal/tailwind/components/slider.js.map +1 -1
- package/dist/default/skins/dist/default/minimal/tailwind/components/thumbnail.js +1 -1
- package/dist/default/skins/dist/default/minimal/tailwind/components/thumbnail.js.map +1 -1
- package/dist/default/skins/dist/default/minimal/tailwind/video.tailwind.js +6 -5
- package/dist/default/skins/dist/default/minimal/tailwind/video.tailwind.js.map +1 -1
- package/dist/default/skins/dist/default/shared/tailwind/icon-state.js +4 -4
- package/dist/default/skins/dist/default/shared/tailwind/icon-state.js.map +1 -1
- package/dist/default/ui/gesture/gesture.js.map +1 -1
- package/dist/default/ui/gesture/use-doubletap-gesture.js.map +1 -1
- package/dist/default/ui/gesture/use-tap-gesture.js.map +1 -1
- package/dist/default/ui/hotkey/hotkey.js.map +1 -1
- package/dist/default/ui/menu/context.js +6 -1
- package/dist/default/ui/menu/context.js.map +1 -1
- package/dist/default/ui/menu/menu-item-indicator.js +3 -2
- package/dist/default/ui/menu/menu-item-indicator.js.map +1 -1
- package/dist/default/ui/menu/menu-radio-item.js +19 -15
- package/dist/default/ui/menu/menu-radio-item.js.map +1 -1
- package/dist/default/ui/menu/menu-root.js +5 -6
- package/dist/default/ui/menu/menu-root.js.map +1 -1
- package/dist/default/ui/poster/poster.js +64 -17
- package/dist/default/ui/poster/poster.js.map +1 -1
- package/dist/default/ui/slider/slider-preview.js.map +1 -1
- package/dist/default/utils/use-render.js +2 -8
- package/dist/default/utils/use-render.js.map +1 -1
- package/dist/dev/__generated__/skins/default-video/styles/buttons.css +132 -18
- package/dist/dev/__generated__/skins/default-video/styles/captions.css +22 -0
- package/dist/dev/__generated__/skins/default-video/styles/container.css +121 -8
- package/dist/dev/__generated__/skins/default-video/styles/controls.css +436 -21
- package/dist/dev/__generated__/skins/default-video/styles/dialog.css +169 -0
- package/dist/dev/__generated__/skins/default-video/styles/indicator.css +459 -0
- package/dist/dev/__generated__/skins/default-video/styles/menus.css +254 -0
- package/dist/dev/__generated__/skins/default-video/styles/overlays.css +26 -2
- package/dist/dev/__generated__/skins/default-video/styles/popups.css +338 -12
- package/dist/dev/__generated__/skins/default-video/styles/poster.css +4 -4
- package/dist/dev/__generated__/skins/default-video/styles/sliders.css +355 -31
- package/dist/dev/__generated__/skins/default-video/styles/styles.css +2455 -216
- package/dist/dev/__generated__/skins/default-video/styles/theme.css +4 -19
- package/dist/dev/__generated__/skins/default-video/styles/video.css +29 -0
- package/dist/dev/__generated__/skins/minimal-video/styles/base.css +25 -0
- package/dist/dev/__generated__/skins/minimal-video/styles/buttons.css +266 -0
- package/dist/dev/__generated__/skins/minimal-video/styles/captions.css +22 -0
- package/dist/dev/__generated__/skins/minimal-video/styles/container.css +158 -0
- package/dist/dev/__generated__/skins/minimal-video/styles/controls.css +182 -0
- package/dist/dev/__generated__/skins/minimal-video/styles/dialog.css +77 -0
- package/dist/dev/__generated__/skins/minimal-video/styles/indicator.css +322 -0
- package/dist/dev/__generated__/skins/minimal-video/styles/menus.css +254 -0
- package/dist/dev/__generated__/skins/minimal-video/styles/overlays.css +35 -0
- package/dist/dev/__generated__/skins/minimal-video/styles/popups.css +371 -0
- package/dist/dev/__generated__/skins/minimal-video/styles/poster.css +47 -0
- package/dist/dev/__generated__/skins/minimal-video/styles/sliders.css +436 -0
- package/dist/dev/__generated__/skins/minimal-video/styles/styles.css +2246 -0
- package/dist/dev/__generated__/skins/minimal-video/styles/theme.css +7 -0
- package/dist/dev/__generated__/skins/minimal-video/styles/video.css +29 -0
- package/dist/dev/i18n/index.d.ts +2 -1
- package/dist/dev/i18n/index.js +2 -1
- package/dist/dev/i18n/text.d.ts +11 -0
- package/dist/dev/i18n/text.d.ts.map +1 -0
- package/dist/dev/i18n/text.js +20 -0
- package/dist/dev/i18n/text.js.map +1 -0
- package/dist/dev/icons/dist/react/default/airplay-exit.js +3 -3
- package/dist/dev/icons/dist/react/default/airplay-exit.js.map +1 -1
- package/dist/dev/icons/dist/react/minimal/airplay-exit.js +3 -3
- package/dist/dev/icons/dist/react/minimal/airplay-exit.js.map +1 -1
- package/dist/dev/icons/index.d.ts +6 -1
- package/dist/dev/icons/index.d.ts.map +1 -0
- package/dist/dev/icons/minimal/index.d.ts +6 -1
- package/dist/dev/icons/minimal/index.d.ts.map +1 -0
- package/dist/dev/index.d.ts +3 -2
- package/dist/dev/index.js +2 -1
- package/dist/dev/media/hls-background-video/media.d.ts +8 -0
- package/dist/dev/media/hls-background-video/media.d.ts.map +1 -1
- package/dist/dev/media/hls-background-video/media.js +18 -3
- package/dist/dev/media/hls-background-video/media.js.map +1 -1
- package/dist/dev/presets/audio/minimal-skin.css +103 -101
- package/dist/dev/presets/audio/minimal-skin.js +1 -1
- package/dist/dev/presets/audio/minimal-skin.tailwind.js +1 -1
- package/dist/dev/presets/audio/player.d.ts +2 -2
- package/dist/dev/presets/audio/skin.css +68 -69
- package/dist/dev/presets/audio/skin.js +1 -1
- package/dist/dev/presets/audio/skin.tailwind.js +1 -1
- package/dist/dev/presets/live-audio/minimal-skin.css +103 -101
- package/dist/dev/presets/live-audio/player.d.ts +2 -2
- package/dist/dev/presets/live-audio/skin.css +68 -69
- package/dist/dev/presets/live-video/minimal-skin.css +140 -120
- package/dist/dev/presets/live-video/minimal-skin.d.ts.map +1 -1
- package/dist/dev/presets/live-video/minimal-skin.js +3 -8
- package/dist/dev/presets/live-video/minimal-skin.js.map +1 -1
- package/dist/dev/presets/live-video/minimal-skin.tailwind.d.ts.map +1 -1
- package/dist/dev/presets/live-video/minimal-skin.tailwind.js +5 -8
- package/dist/dev/presets/live-video/minimal-skin.tailwind.js.map +1 -1
- package/dist/dev/presets/live-video/player.d.ts +2 -2
- package/dist/dev/presets/live-video/skin.css +89 -76
- package/dist/dev/presets/live-video/skin.d.ts.map +1 -1
- package/dist/dev/presets/live-video/skin.js +3 -8
- package/dist/dev/presets/live-video/skin.js.map +1 -1
- package/dist/dev/presets/live-video/skin.tailwind.d.ts.map +1 -1
- package/dist/dev/presets/live-video/skin.tailwind.js +7 -10
- package/dist/dev/presets/live-video/skin.tailwind.js.map +1 -1
- package/dist/dev/presets/types.d.ts +15 -2
- package/dist/dev/presets/types.d.ts.map +1 -1
- package/dist/dev/presets/video/minimal-skin.css +140 -120
- package/dist/dev/presets/video/minimal-skin.d.ts.map +1 -1
- package/dist/dev/presets/video/minimal-skin.js +3 -8
- package/dist/dev/presets/video/minimal-skin.js.map +1 -1
- package/dist/dev/presets/video/minimal-skin.tailwind.d.ts.map +1 -1
- package/dist/dev/presets/video/minimal-skin.tailwind.js +5 -8
- package/dist/dev/presets/video/minimal-skin.tailwind.js.map +1 -1
- package/dist/dev/presets/video/player.d.ts +2 -2
- package/dist/dev/presets/video/skin.css +89 -76
- package/dist/dev/presets/video/skin.d.ts.map +1 -1
- package/dist/dev/presets/video/skin.js +3 -8
- package/dist/dev/presets/video/skin.js.map +1 -1
- package/dist/dev/presets/video/skin.tailwind.d.ts.map +1 -1
- package/dist/dev/presets/video/skin.tailwind.js +6 -9
- package/dist/dev/presets/video/skin.tailwind.js.map +1 -1
- package/dist/dev/skins/dist/default/default/tailwind/components/button.js +3 -1
- package/dist/dev/skins/dist/default/default/tailwind/components/button.js.map +1 -1
- package/dist/dev/skins/dist/default/default/tailwind/components/poster.js +8 -1
- package/dist/dev/skins/dist/default/default/tailwind/components/poster.js.map +1 -1
- package/dist/dev/skins/dist/default/default/tailwind/components/slider.js +10 -10
- package/dist/dev/skins/dist/default/default/tailwind/components/slider.js.map +1 -1
- package/dist/dev/skins/dist/default/default/tailwind/components/thumbnail.js +1 -1
- package/dist/dev/skins/dist/default/default/tailwind/components/thumbnail.js.map +1 -1
- package/dist/dev/skins/dist/default/default/tailwind/video.tailwind.js +2 -2
- package/dist/dev/skins/dist/default/default/tailwind/video.tailwind.js.map +1 -1
- package/dist/dev/skins/dist/default/minimal/tailwind/components/poster.js +8 -1
- package/dist/dev/skins/dist/default/minimal/tailwind/components/poster.js.map +1 -1
- package/dist/dev/skins/dist/default/minimal/tailwind/components/slider.js +13 -12
- package/dist/dev/skins/dist/default/minimal/tailwind/components/slider.js.map +1 -1
- package/dist/dev/skins/dist/default/minimal/tailwind/components/thumbnail.js +1 -1
- package/dist/dev/skins/dist/default/minimal/tailwind/components/thumbnail.js.map +1 -1
- package/dist/dev/skins/dist/default/minimal/tailwind/video.tailwind.js +6 -5
- package/dist/dev/skins/dist/default/minimal/tailwind/video.tailwind.js.map +1 -1
- package/dist/dev/skins/dist/default/shared/tailwind/icon-state.js +4 -4
- package/dist/dev/skins/dist/default/shared/tailwind/icon-state.js.map +1 -1
- package/dist/dev/ui/gesture/gesture.d.ts +6 -13
- package/dist/dev/ui/gesture/gesture.d.ts.map +1 -1
- package/dist/dev/ui/gesture/gesture.js.map +1 -1
- package/dist/dev/ui/gesture/use-doubletap-gesture.d.ts +2 -5
- package/dist/dev/ui/gesture/use-doubletap-gesture.d.ts.map +1 -1
- package/dist/dev/ui/gesture/use-doubletap-gesture.js.map +1 -1
- package/dist/dev/ui/gesture/use-tap-gesture.d.ts +2 -5
- package/dist/dev/ui/gesture/use-tap-gesture.d.ts.map +1 -1
- package/dist/dev/ui/gesture/use-tap-gesture.js.map +1 -1
- package/dist/dev/ui/hotkey/hotkey.d.ts +6 -12
- package/dist/dev/ui/hotkey/hotkey.d.ts.map +1 -1
- package/dist/dev/ui/hotkey/hotkey.js.map +1 -1
- package/dist/dev/ui/menu/context.js +6 -1
- package/dist/dev/ui/menu/context.js.map +1 -1
- package/dist/dev/ui/menu/menu-item-indicator.d.ts.map +1 -1
- package/dist/dev/ui/menu/menu-item-indicator.js +3 -2
- package/dist/dev/ui/menu/menu-item-indicator.js.map +1 -1
- package/dist/dev/ui/menu/menu-radio-item.d.ts.map +1 -1
- package/dist/dev/ui/menu/menu-radio-item.js +19 -15
- package/dist/dev/ui/menu/menu-radio-item.js.map +1 -1
- package/dist/dev/ui/menu/menu-root.js +5 -6
- package/dist/dev/ui/menu/menu-root.js.map +1 -1
- package/dist/dev/ui/poster/poster.d.ts +15 -4
- package/dist/dev/ui/poster/poster.d.ts.map +1 -1
- package/dist/dev/ui/poster/poster.js +64 -17
- package/dist/dev/ui/poster/poster.js.map +1 -1
- package/dist/dev/ui/slider/slider-preview.d.ts +5 -9
- package/dist/dev/ui/slider/slider-preview.d.ts.map +1 -1
- package/dist/dev/ui/slider/slider-preview.js.map +1 -1
- package/dist/dev/utils/use-render.d.ts.map +1 -1
- package/dist/dev/utils/use-render.js +2 -8
- package/dist/dev/utils/use-render.js.map +1 -1
- package/docs/README.md +1 -1
- package/docs/concepts/skins.md +97 -96
- package/docs/how-to/customize-skins.md +421 -411
- package/docs/reference/create-player.md +2 -2
- package/docs/reference/menu.md +6 -18
- package/docs/reference/popover.md +6 -6
- package/docs/reference/poster.md +187 -13
- package/docs/reference/slider.md +1 -1
- package/docs/reference/time-slider.md +1 -1
- package/docs/reference/tooltip.md +10 -10
- package/docs/reference/volume-slider.md +1 -1
- package/package.json +13 -8
|
@@ -1,25 +1,26 @@
|
|
|
1
1
|
import { cn } from "@videojs/utils/style";
|
|
2
2
|
//#region ../skins/dist/default/minimal/tailwind/components/slider.js
|
|
3
|
-
const previewContent = cn("absolute [left:var(--preview-left,var(--media-slider-pointer))] max-w-(--max-
|
|
3
|
+
const previewContent = cn("absolute [left:var(--preview-left,var(--media-slider-pointer))] max-w-(--max-size)", "-translate-x-1/2 translate-y-2 scale-80 opacity-0 blur-lg origin-bottom", "transition-[filter,opacity,scale] duration-150 ease-out", "group-data-pointing/slider:scale-100 group-data-pointing/slider:opacity-100", "group-data-pointing/slider:blur-none", "group-has-focus-visible/slider:scale-100 group-has-focus-visible/slider:opacity-100", "group-has-focus-visible/slider:blur-none");
|
|
4
4
|
const slider = {
|
|
5
|
-
root: cn("group/slider relative flex flex-1 items-center justify-center rounded-(--track-border-radius) outline-none cursor-pointer", "[--track-border-radius:calc(
|
|
6
|
-
track: cn("relative isolate overflow-hidden bg-current/20 rounded-(--track-border-radius) select-none", "data-[orientation=horizontal]:w-full data-[orientation=horizontal]:h-
|
|
5
|
+
root: cn("group/slider relative flex flex-1 items-center justify-center rounded-(--track-border-radius) outline-none cursor-pointer", "[--track-border-radius:99px]", "[--chapter-gap:calc(var(--spacing)*1)] [--chapter-inset-start:calc(var(--chapter-gap)/2)] [--chapter-inset-end:calc(var(--chapter-gap)/2)]", "data-[orientation=horizontal]:min-w-20 data-[orientation=horizontal]:w-(--slider-width,100%) data-[orientation=horizontal]:h-(--slider-height,--spacing(8))", "data-[orientation=vertical]:w-(--slider-width,--spacing(8)) data-[orientation=vertical]:h-(--slider-height,--spacing(20))"),
|
|
6
|
+
track: cn("relative isolate overflow-hidden bg-current/20 rounded-(--track-border-radius) select-none", "data-[orientation=horizontal]:w-full data-[orientation=horizontal]:h-1", "data-[orientation=vertical]:w-1 data-[orientation=vertical]:h-full"),
|
|
7
7
|
chapters: cn("relative flex flex-1 items-center min-w-0 min-h-0 size-full rounded-[inherit]"),
|
|
8
8
|
chapter: {
|
|
9
|
-
base: cn("group/chapter absolute inset-0 flex items-center justify-center min-w-0 min-h-0", "
|
|
10
|
-
track: cn("relative isolate overflow-hidden bg-current/20 rounded-(--track-border-radius) select-none", "motion-safe:transition-[height,width] motion-safe:duration-200 motion-safe:ease-out", "data-[orientation=horizontal]:w-full data-[orientation=horizontal]:h-
|
|
9
|
+
base: cn("group/chapter absolute inset-0 flex items-center justify-center min-w-0 min-h-0", "first:[--chapter-inset-start:0px] last:[--chapter-inset-end:0px]", "data-[orientation=horizontal]:[clip-path:inset(0_calc(100%-var(--media-slider-chapter-end))_0_var(--media-slider-chapter-start))]", "data-[orientation=vertical]:[clip-path:inset(calc(100%-var(--media-slider-chapter-end))_0_var(--media-slider-chapter-start)_0)]"),
|
|
10
|
+
track: cn("relative isolate overflow-hidden bg-current/20 rounded-(--track-border-radius) select-none", "motion-safe:transition-[height,width] motion-safe:duration-200 motion-safe:ease-out", "data-[orientation=horizontal]:w-full data-[orientation=horizontal]:h-1", "group-data-highlighted/chapter:data-[orientation=horizontal]:h-1.75", "data-[orientation=horizontal]:[clip-path:inset(0_calc(100%-var(--media-slider-chapter-end)+var(--chapter-inset-end))_0_calc(var(--media-slider-chapter-start)+var(--chapter-inset-start))_round_var(--track-border-radius))]", "data-[orientation=vertical]:w-1 data-[orientation=vertical]:h-full", "group-data-highlighted/chapter:data-[orientation=vertical]:w-1.75", "data-[orientation=vertical]:[clip-path:inset(calc(100%-var(--media-slider-chapter-end)+var(--chapter-inset-end))_0_calc(var(--media-slider-chapter-start)+var(--chapter-inset-start))_0_round_var(--track-border-radius))]")
|
|
11
11
|
},
|
|
12
12
|
fill: {
|
|
13
|
-
base: cn("absolute rounded-[inherit] pointer-events-none", "motion-safe:duration-200 motion-safe:ease-
|
|
14
|
-
fill: cn("bg-(--accent-color)", "data-[orientation=horizontal]:inset-y-0 data-[orientation=horizontal]:left-0 data-[orientation=horizontal]:w-full", "data-[orientation=horizontal]:
|
|
15
|
-
buffer: cn("bg-current/20
|
|
13
|
+
base: cn("absolute rounded-[inherit] pointer-events-none", "motion-safe:transition-[clip-path] motion-safe:duration-200 motion-safe:ease-out", "data-dragging:duration-0 data-seeking:duration-0"),
|
|
14
|
+
fill: cn("bg-(--accent-color)", "data-[orientation=horizontal]:inset-y-0 data-[orientation=horizontal]:left-0 data-[orientation=horizontal]:w-full", "data-[orientation=horizontal]:[clip-path:inset(0_calc(100%-var(--media-slider-fill))_0_0_round_var(--track-border-radius))]", "group-data-dragging/slider:data-[orientation=horizontal]:[clip-path:inset(0_calc(100%-var(--media-slider-pointer))_0_0_round_var(--track-border-radius))]", "data-[orientation=vertical]:inset-x-0 data-[orientation=vertical]:bottom-0 data-[orientation=vertical]:h-full", "data-[orientation=vertical]:[clip-path:inset(calc(100%-var(--media-slider-fill))_0_0_0_round_var(--track-border-radius))]", "group-data-dragging/slider:data-[orientation=vertical]:[clip-path:inset(calc(100%-var(--media-slider-pointer))_0_0_0_round_var(--track-border-radius))]"),
|
|
15
|
+
buffer: cn("bg-current/20", "data-[orientation=horizontal]:inset-y-0 data-[orientation=horizontal]:left-0 data-[orientation=horizontal]:w-full", "data-[orientation=horizontal]:[clip-path:inset(0_calc(100%-var(--media-slider-buffer))_0_0_round_var(--track-border-radius))]", "data-[orientation=vertical]:inset-x-0 data-[orientation=vertical]:bottom-0 data-[orientation=vertical]:h-full", "data-[orientation=vertical]:[clip-path:inset(calc(100%-var(--media-slider-buffer))_0_0_0_round_var(--track-border-radius))]")
|
|
16
16
|
},
|
|
17
17
|
thumb: {
|
|
18
|
-
base: cn("z-10 absolute size-3 -translate-x-1/2 -translate-y-1/2", "bg-current rounded-full", "shadow-[0_0_0_1px_var(--shadow-current-color,oklch(0_0_0/0.15)),0_1px_3px_0_oklch(0_0_0/0.15),0_1px_2px_-1px_oklch(0_0_0/0.15)]", "transition-
|
|
19
|
-
|
|
18
|
+
base: cn("z-10 absolute size-3 -translate-x-1/2 -translate-y-1/2", "bg-current rounded-full", "opacity-0 scale-70 origin-center", "shadow-[0_0_0_1px_var(--shadow-current-color,oklch(0_0_0/0.15)),0_1px_3px_0_oklch(0_0_0/0.15),0_1px_2px_-1px_oklch(0_0_0/0.15)]", "transition-none motion-safe:transition-[opacity,height,width,outline-offset,left,top,scale] duration-150 ease-out select-none", "data-dragging:duration-0 data-seeking:duration-0", "group-active/slider:size-3.5", "outline-2 outline-transparent -outline-offset-2", "focus-visible:outline-(--focus-ring-color) focus-visible:outline-offset-2", "focus-visible:opacity-100 focus-visible:scale-100", "data-[orientation=horizontal]:top-1/2 data-[orientation=horizontal]:left-(--media-slider-fill,0)", "group-data-dragging/slider:data-[orientation=horizontal]:left-(--media-slider-pointer)", "data-[orientation=vertical]:left-1/2 data-[orientation=vertical]:top-[calc(100%-var(--media-slider-fill,0))]", "group-data-dragging/slider:data-[orientation=vertical]:top-[calc(100%-var(--media-slider-pointer))]"),
|
|
19
|
+
persistent: "opacity-100 scale-100",
|
|
20
|
+
interactive: cn("pointer-fine:group-hover/slider:opacity-100 pointer-fine:group-hover/slider:scale-100")
|
|
20
21
|
},
|
|
21
|
-
preview: cn("[--max-
|
|
22
|
-
thumbnail: cn(previewContent, "[--thumbnail-max-width:var(--max-
|
|
22
|
+
preview: cn("[--max-size-factor:28]", "[--max-size:min(calc(var(--spacing)*var(--max-size-factor)),100cqi)]", "@lg/media-root:[--max-size-factor:36] @2xl/media-root:[--max-size-factor:48]", "min-w-full h-1", "before:absolute before:z-1 before:bg-current/35 before:pointer-events-none", "before:-translate-1/2 before:opacity-0 before:scale-50", "before:transition-[opacity,scale] before:duration-200 before:ease-out", "data-pointing:not-data-dragging:before:opacity-100 data-pointing:not-data-dragging:before:scale-100", "data-[orientation=horizontal]:before:top-1/2 data-[orientation=horizontal]:before:left-(--media-slider-pointer)", "data-[orientation=horizontal]:before:w-px data-[orientation=horizontal]:before:h-5", "data-[orientation=vertical]:before:top-[calc(100%-var(--media-slider-pointer))] data-[orientation=vertical]:before:left-1/2", "data-[orientation=vertical]:before:w-5 data-[orientation=vertical]:before:h-px"),
|
|
23
|
+
thumbnail: cn(previewContent, "[--thumbnail-max-width:var(--max-size)] [--thumbnail-max-height:var(--max-size)]", "[bottom:calc(100%+--spacing(11))]"),
|
|
23
24
|
value: cn(previewContent, "[bottom:calc(100%+--spacing(5))] flex flex-row-reverse justify-center gap-2 px-3 tabular-nums", "text-shadow-2xs text-shadow-(color:--shadow-current-color)"),
|
|
24
25
|
chapterTitle: "min-w-0 overflow-hidden text-ellipsis whitespace-nowrap empty:hidden"
|
|
25
26
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"slider.js","names":[],"sources":["../../../../../../../../../skins/dist/default/minimal/tailwind/components/slider.js"],"sourcesContent":["import { cn } from \"@videojs/utils/style\";\n//#region src/minimal/tailwind/components/slider.ts\nconst previewContent = cn(\"absolute [left:var(--preview-left,var(--media-slider-pointer))] max-w-(--max-
|
|
1
|
+
{"version":3,"file":"slider.js","names":[],"sources":["../../../../../../../../../skins/dist/default/minimal/tailwind/components/slider.js"],"sourcesContent":["import { cn } from \"@videojs/utils/style\";\n//#region src/minimal/tailwind/components/slider.ts\nconst previewContent = cn(\"absolute [left:var(--preview-left,var(--media-slider-pointer))] max-w-(--max-size)\", \"-translate-x-1/2 translate-y-2 scale-80 opacity-0 blur-lg origin-bottom\", \"transition-[filter,opacity,scale] duration-150 ease-out\", \"group-data-pointing/slider:scale-100 group-data-pointing/slider:opacity-100\", \"group-data-pointing/slider:blur-none\", \"group-has-focus-visible/slider:scale-100 group-has-focus-visible/slider:opacity-100\", \"group-has-focus-visible/slider:blur-none\");\nconst slider = {\n\troot: cn(\"group/slider relative flex flex-1 items-center justify-center rounded-(--track-border-radius) outline-none cursor-pointer\", \"[--track-border-radius:99px]\", \"[--chapter-gap:calc(var(--spacing)*1)] [--chapter-inset-start:calc(var(--chapter-gap)/2)] [--chapter-inset-end:calc(var(--chapter-gap)/2)]\", \"data-[orientation=horizontal]:min-w-20 data-[orientation=horizontal]:w-(--slider-width,100%) data-[orientation=horizontal]:h-(--slider-height,--spacing(8))\", \"data-[orientation=vertical]:w-(--slider-width,--spacing(8)) data-[orientation=vertical]:h-(--slider-height,--spacing(20))\"),\n\ttrack: cn(\"relative isolate overflow-hidden bg-current/20 rounded-(--track-border-radius) select-none\", \"data-[orientation=horizontal]:w-full data-[orientation=horizontal]:h-1\", \"data-[orientation=vertical]:w-1 data-[orientation=vertical]:h-full\"),\n\tchapters: cn(\"relative flex flex-1 items-center min-w-0 min-h-0 size-full rounded-[inherit]\"),\n\tchapter: {\n\t\tbase: cn(\"group/chapter absolute inset-0 flex items-center justify-center min-w-0 min-h-0\", \"first:[--chapter-inset-start:0px] last:[--chapter-inset-end:0px]\", \"data-[orientation=horizontal]:[clip-path:inset(0_calc(100%-var(--media-slider-chapter-end))_0_var(--media-slider-chapter-start))]\", \"data-[orientation=vertical]:[clip-path:inset(calc(100%-var(--media-slider-chapter-end))_0_var(--media-slider-chapter-start)_0)]\"),\n\t\ttrack: cn(\"relative isolate overflow-hidden bg-current/20 rounded-(--track-border-radius) select-none\", \"motion-safe:transition-[height,width] motion-safe:duration-200 motion-safe:ease-out\", \"data-[orientation=horizontal]:w-full data-[orientation=horizontal]:h-1\", \"group-data-highlighted/chapter:data-[orientation=horizontal]:h-1.75\", \"data-[orientation=horizontal]:[clip-path:inset(0_calc(100%-var(--media-slider-chapter-end)+var(--chapter-inset-end))_0_calc(var(--media-slider-chapter-start)+var(--chapter-inset-start))_round_var(--track-border-radius))]\", \"data-[orientation=vertical]:w-1 data-[orientation=vertical]:h-full\", \"group-data-highlighted/chapter:data-[orientation=vertical]:w-1.75\", \"data-[orientation=vertical]:[clip-path:inset(calc(100%-var(--media-slider-chapter-end)+var(--chapter-inset-end))_0_calc(var(--media-slider-chapter-start)+var(--chapter-inset-start))_0_round_var(--track-border-radius))]\")\n\t},\n\tfill: {\n\t\tbase: cn(\"absolute rounded-[inherit] pointer-events-none\", \"motion-safe:transition-[clip-path] motion-safe:duration-200 motion-safe:ease-out\", \"data-dragging:duration-0 data-seeking:duration-0\"),\n\t\tfill: cn(\"bg-(--accent-color)\", \"data-[orientation=horizontal]:inset-y-0 data-[orientation=horizontal]:left-0 data-[orientation=horizontal]:w-full\", \"data-[orientation=horizontal]:[clip-path:inset(0_calc(100%-var(--media-slider-fill))_0_0_round_var(--track-border-radius))]\", \"group-data-dragging/slider:data-[orientation=horizontal]:[clip-path:inset(0_calc(100%-var(--media-slider-pointer))_0_0_round_var(--track-border-radius))]\", \"data-[orientation=vertical]:inset-x-0 data-[orientation=vertical]:bottom-0 data-[orientation=vertical]:h-full\", \"data-[orientation=vertical]:[clip-path:inset(calc(100%-var(--media-slider-fill))_0_0_0_round_var(--track-border-radius))]\", \"group-data-dragging/slider:data-[orientation=vertical]:[clip-path:inset(calc(100%-var(--media-slider-pointer))_0_0_0_round_var(--track-border-radius))]\"),\n\t\tbuffer: cn(\"bg-current/20\", \"data-[orientation=horizontal]:inset-y-0 data-[orientation=horizontal]:left-0 data-[orientation=horizontal]:w-full\", \"data-[orientation=horizontal]:[clip-path:inset(0_calc(100%-var(--media-slider-buffer))_0_0_round_var(--track-border-radius))]\", \"data-[orientation=vertical]:inset-x-0 data-[orientation=vertical]:bottom-0 data-[orientation=vertical]:h-full\", \"data-[orientation=vertical]:[clip-path:inset(calc(100%-var(--media-slider-buffer))_0_0_0_round_var(--track-border-radius))]\")\n\t},\n\tthumb: {\n\t\tbase: cn(\"z-10 absolute size-3 -translate-x-1/2 -translate-y-1/2\", \"bg-current rounded-full\", \"opacity-0 scale-70 origin-center\", \"shadow-[0_0_0_1px_var(--shadow-current-color,oklch(0_0_0/0.15)),0_1px_3px_0_oklch(0_0_0/0.15),0_1px_2px_-1px_oklch(0_0_0/0.15)]\", \"transition-none motion-safe:transition-[opacity,height,width,outline-offset,left,top,scale] duration-150 ease-out select-none\", \"data-dragging:duration-0 data-seeking:duration-0\", \"group-active/slider:size-3.5\", \"outline-2 outline-transparent -outline-offset-2\", \"focus-visible:outline-(--focus-ring-color) focus-visible:outline-offset-2\", \"focus-visible:opacity-100 focus-visible:scale-100\", \"data-[orientation=horizontal]:top-1/2 data-[orientation=horizontal]:left-(--media-slider-fill,0)\", \"group-data-dragging/slider:data-[orientation=horizontal]:left-(--media-slider-pointer)\", \"data-[orientation=vertical]:left-1/2 data-[orientation=vertical]:top-[calc(100%-var(--media-slider-fill,0))]\", \"group-data-dragging/slider:data-[orientation=vertical]:top-[calc(100%-var(--media-slider-pointer))]\"),\n\t\tpersistent: \"opacity-100 scale-100\",\n\t\tinteractive: cn(\"pointer-fine:group-hover/slider:opacity-100 pointer-fine:group-hover/slider:scale-100\")\n\t},\n\tpreview: cn(\"[--max-size-factor:28]\", \"[--max-size:min(calc(var(--spacing)*var(--max-size-factor)),100cqi)]\", \"@lg/media-root:[--max-size-factor:36] @2xl/media-root:[--max-size-factor:48]\", \"min-w-full h-1\", \"before:absolute before:z-1 before:bg-current/35 before:pointer-events-none\", \"before:-translate-1/2 before:opacity-0 before:scale-50\", \"before:transition-[opacity,scale] before:duration-200 before:ease-out\", \"data-pointing:not-data-dragging:before:opacity-100 data-pointing:not-data-dragging:before:scale-100\", \"data-[orientation=horizontal]:before:top-1/2 data-[orientation=horizontal]:before:left-(--media-slider-pointer)\", \"data-[orientation=horizontal]:before:w-px data-[orientation=horizontal]:before:h-5\", \"data-[orientation=vertical]:before:top-[calc(100%-var(--media-slider-pointer))] data-[orientation=vertical]:before:left-1/2\", \"data-[orientation=vertical]:before:w-5 data-[orientation=vertical]:before:h-px\"),\n\tthumbnail: cn(previewContent, \"[--thumbnail-max-width:var(--max-size)] [--thumbnail-max-height:var(--max-size)]\", \"[bottom:calc(100%+--spacing(11))]\"),\n\tvalue: cn(previewContent, \"[bottom:calc(100%+--spacing(5))] flex flex-row-reverse justify-center gap-2 px-3 tabular-nums\", \"text-shadow-2xs text-shadow-(color:--shadow-current-color)\"),\n\tchapterTitle: \"min-w-0 overflow-hidden text-ellipsis whitespace-nowrap empty:hidden\"\n};\n//#endregion\nexport { slider };\n\n//# sourceMappingURL=slider.js.map"],"mappings":";;AAEA,MAAM,iBAAiB,GAAG,sFAAsF,2EAA2E,2DAA2D,+EAA+E,wCAAwC,uFAAuF,0CAA0C;AAC9e,MAAM,SAAS;CACd,MAAM,GAAG,6HAA6H,gCAAgC,8IAA8I,+JAA+J,2HAA2H;CAC9kB,OAAO,GAAG,8FAA8F,0EAA0E,oEAAoE;CACtP,UAAU,GAAG,+EAA+E;CAC5F,SAAS;EACR,MAAM,GAAG,mFAAmF,oEAAoE,qIAAqI,iIAAiI;EACta,OAAO,GAAG,8FAA8F,uFAAuF,0EAA0E,uEAAuE,gOAAgO,sEAAsE,qEAAqE,4NAA4N;CACx5B;CACA,MAAM;EACL,MAAM,GAAG,kDAAkD,oFAAoF,kDAAkD;EACjM,MAAM,GAAG,uBAAuB,qHAAqH,+HAA+H,6JAA6J,iHAAiH,6HAA6H,yJAAyJ;EACxzB,QAAQ,GAAG,iBAAiB,qHAAqH,iIAAiI,iHAAiH,6HAA6H;CACjgB;CACA,OAAO;EACN,MAAM,GAAG,0DAA0D,2BAA2B,oCAAoC,mIAAmI,iIAAiI,oDAAoD,gCAAgC,mDAAmD,6EAA6E,qDAAqD,oGAAoG,0FAA0F,gHAAgH,qGAAqG;EACliC,YAAY;EACZ,aAAa,GAAG,uFAAuF;CACxG;CACA,SAAS,GAAG,0BAA0B,wEAAwE,gFAAgF,kBAAkB,8EAA8E,0DAA0D,yEAAyE,uGAAuG,mHAAmH,sFAAsF,+HAA+H,gFAAgF;CACh6B,WAAW,GAAG,gBAAgB,oFAAoF,mCAAmC;CACrJ,OAAO,GAAG,gBAAgB,iGAAiG,4DAA4D;CACvL,cAAc;AACf"}
|
|
@@ -2,7 +2,7 @@ import { cn } from "@videojs/utils/style";
|
|
|
2
2
|
//#region ../skins/dist/default/minimal/tailwind/components/thumbnail.js
|
|
3
3
|
const thumbnail = {
|
|
4
4
|
root: cn("group/thumbnail pointer-events-none bg-black/90 rounded-[--spacing(2)]", "after:absolute after:inset-0 after:rounded-[inherit]", "after:ring-1 after:ring-black/5 after:shadow-sm after:shadow-black/20", "has-data-loading:w-(--thumbnail-max-width) has-data-loading:max-w-full", "has-data-loading:aspect-video has-data-loading:overflow-hidden"),
|
|
5
|
-
image: cn("relative block max-w-(--thumbnail-max-width) max-h-(--max-height) overflow-clip rounded-[inherit]", "transition-opacity duration-150 ease-out data-loading:opacity-0"),
|
|
5
|
+
image: cn("relative block max-w-(--thumbnail-max-width) max-h-(--thumbnail-max-height) overflow-clip rounded-[inherit]", "transition-opacity duration-150 ease-out data-loading:opacity-0"),
|
|
6
6
|
spinner: cn("absolute top-1/2 left-1/2 -translate-x-1/2 -translate-y-1/2 opacity-0", "transition-opacity duration-150 ease-out", "group-not-has-[[role=img][data-loading]]/thumbnail:[--media-spinner-animation:none] motion-reduce:[--media-spinner-animation:none] group-has-[[role=img][data-loading]]/thumbnail:opacity-100")
|
|
7
7
|
};
|
|
8
8
|
//#endregion
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"thumbnail.js","names":[],"sources":["../../../../../../../../../skins/dist/default/minimal/tailwind/components/thumbnail.js"],"sourcesContent":["import { cn } from \"@videojs/utils/style\";\n//#region src/minimal/tailwind/components/thumbnail.ts\nconst thumbnail = {\n\troot: cn(\"group/thumbnail pointer-events-none bg-black/90 rounded-[--spacing(2)]\", \"after:absolute after:inset-0 after:rounded-[inherit]\", \"after:ring-1 after:ring-black/5 after:shadow-sm after:shadow-black/20\", \"has-data-loading:w-(--thumbnail-max-width) has-data-loading:max-w-full\", \"has-data-loading:aspect-video has-data-loading:overflow-hidden\"),\n\timage: cn(\"relative block max-w-(--thumbnail-max-width) max-h-(--max-height) overflow-clip rounded-[inherit]\", \"transition-opacity duration-150 ease-out data-loading:opacity-0\"),\n\tspinner: cn(\"absolute top-1/2 left-1/2 -translate-x-1/2 -translate-y-1/2 opacity-0\", \"transition-opacity duration-150 ease-out\", \"group-not-has-[[role=img][data-loading]]/thumbnail:[--media-spinner-animation:none] motion-reduce:[--media-spinner-animation:none] group-has-[[role=img][data-loading]]/thumbnail:opacity-100\")\n};\n//#endregion\nexport { thumbnail };\n\n//# sourceMappingURL=thumbnail.js.map"],"mappings":";;AAEA,MAAM,YAAY;CACjB,MAAM,GAAG,0EAA0E,wDAAwD,yEAAyE,0EAA0E,gEAAgE;CAC9V,OAAO,GAAG,
|
|
1
|
+
{"version":3,"file":"thumbnail.js","names":[],"sources":["../../../../../../../../../skins/dist/default/minimal/tailwind/components/thumbnail.js"],"sourcesContent":["import { cn } from \"@videojs/utils/style\";\n//#region src/minimal/tailwind/components/thumbnail.ts\nconst thumbnail = {\n\troot: cn(\"group/thumbnail pointer-events-none bg-black/90 rounded-[--spacing(2)]\", \"after:absolute after:inset-0 after:rounded-[inherit]\", \"after:ring-1 after:ring-black/5 after:shadow-sm after:shadow-black/20\", \"has-data-loading:w-(--thumbnail-max-width) has-data-loading:max-w-full\", \"has-data-loading:aspect-video has-data-loading:overflow-hidden\"),\n\timage: cn(\"relative block max-w-(--thumbnail-max-width) max-h-(--thumbnail-max-height) overflow-clip rounded-[inherit]\", \"transition-opacity duration-150 ease-out data-loading:opacity-0\"),\n\tspinner: cn(\"absolute top-1/2 left-1/2 -translate-x-1/2 -translate-y-1/2 opacity-0\", \"transition-opacity duration-150 ease-out\", \"group-not-has-[[role=img][data-loading]]/thumbnail:[--media-spinner-animation:none] motion-reduce:[--media-spinner-animation:none] group-has-[[role=img][data-loading]]/thumbnail:opacity-100\")\n};\n//#endregion\nexport { thumbnail };\n\n//# sourceMappingURL=thumbnail.js.map"],"mappings":";;AAEA,MAAM,YAAY;CACjB,MAAM,GAAG,0EAA0E,wDAAwD,yEAAyE,0EAA0E,gEAAgE;CAC9V,OAAO,GAAG,+GAA+G,iEAAiE;CAC1L,SAAS,GAAG,yEAAyE,4CAA4C,+LAA+L;AACjU"}
|
|
@@ -47,13 +47,14 @@ const container = (isShadowDOM) => cn(container$1, "group/skin", "bg-black overf
|
|
|
47
47
|
"[&:fullscreen_video]:object-contain": !isShadowDOM,
|
|
48
48
|
"[&:fullscreen_::slotted(video)]:object-contain": isShadowDOM
|
|
49
49
|
});
|
|
50
|
-
const controls = cn(controls$1, "absolute bottom-1 inset-x-1", "[--base-side-offset:5] [--base-boundary-offset:1]", "gap-x-2 flex-wrap rounded-[--spacing(3)] group/controls", "text-white z-20", "peer-data-open/error:hidden", "ease-(--controls-transition-timing-function)", "duration-[calc(var(--controls-transition-duration)/2)]", "not-data-visible:duration-(--controls-transition-duration)", "pointer-fine:will-change-[translate,filter,opacity]", "pointer-fine:transition-[translate,filter,opacity]", "pointer-coarse:will-change-[translate,opacity]", "pointer-coarse:transition-[translate,opacity]", "not-data-visible:opacity-0 not-data-visible:pointer-events-none", "motion-safe:not-data-visible:translate-y-full", "pointer-fine:motion-safe:not-data-visible:blur-sm", "@2xl/media-root:flex-nowrap @2xl/media-root:[--controls-padding:2] @2xl/media-root:[--base-side-offset:2]");
|
|
50
|
+
const controls = cn(controls$1, "absolute bottom-1 inset-x-1", "[--base-side-offset:5] [--base-boundary-offset:1]", "[--volume-mask:linear-gradient(to_right,transparent_10%,black_25%,black_100%)]", "gap-x-2 flex-wrap rounded-[--spacing(3)] group/controls", "text-white z-20", "peer-data-open/error:hidden", "ease-(--controls-transition-timing-function)", "duration-[calc(var(--controls-transition-duration)/2)]", "not-data-visible:duration-(--controls-transition-duration)", "pointer-fine:will-change-[translate,filter,opacity]", "pointer-fine:transition-[translate,filter,opacity]", "pointer-coarse:will-change-[translate,opacity]", "pointer-coarse:transition-[translate,opacity]", "not-data-visible:opacity-0 not-data-visible:pointer-events-none", "motion-safe:not-data-visible:translate-y-full", "pointer-fine:motion-safe:not-data-visible:blur-sm", "@2xl/media-root:flex-nowrap @2xl/media-root:[--controls-padding:2] @2xl/media-root:[--base-side-offset:2]");
|
|
51
|
+
const volumeMaskTarget = cn("[mask-image:var(--volume-mask-image,none)]", "[mask-repeat:no-repeat]", "[mask-position:var(--volume-mask-position,100%_0)]", "[mask-size:var(--volume-mask-size,200%_100%)]", "[transition:mask-position_50ms_ease-out]");
|
|
51
52
|
const buttonGroupStart = cn(buttonGroup, "flex-1 @2xl/media-root:flex-none");
|
|
52
|
-
const buttonGroupEnd = cn(buttonGroup, "flex-1 justify-end @2xl/media-root:flex-none");
|
|
53
|
+
const buttonGroupEnd = cn(buttonGroup, volumeMaskTarget, "flex-1 justify-end @2xl/media-root:flex-none", "group-has-[[data-volume-level][aria-expanded=true]]/controls:@max-2xl/media-root:[--volume-mask-image:var(--volume-mask)]", "group-has-[[data-volume-level][aria-expanded=true]]/controls:@max-2xl/media-root:[--volume-mask-position:0_0]", "group-has-[[data-volume-level][aria-expanded=true]]/controls:@max-2xl/media-root:[--volume-mask-size:400%_100%]");
|
|
53
54
|
const spacer = "grow";
|
|
54
55
|
const time = {
|
|
55
56
|
...time$1,
|
|
56
|
-
controls: cn(time$1.controls, "[--slider-height:--spacing(5)] grow-0 shrink-0 basis-full order-[-1] px-1.5", "@2xl/media-root:[--slider-height:--spacing(8)] @2xl/media-root:grow @2xl/media-root:shrink @2xl/media-root:basis-0 @2xl/media-root:order-[unset]", "
|
|
57
|
+
controls: cn(time$1.controls, volumeMaskTarget, "[--slider-height:--spacing(5)] grow-0 shrink-0 basis-full order-[-1] px-1.5", "@2xl/media-root:[--slider-height:--spacing(8)] @2xl/media-root:grow @2xl/media-root:shrink @2xl/media-root:basis-0 @2xl/media-root:order-[unset]", "group-has-[[data-volume-level][aria-expanded=true]]/controls:@2xl/media-root:[--volume-mask-image:var(--volume-mask)]", "group-has-[[data-volume-level][aria-expanded=true]]/controls:@2xl/media-root:[--volume-mask-position:0_0]")
|
|
57
58
|
};
|
|
58
59
|
const error = {
|
|
59
60
|
...error$1,
|
|
@@ -66,11 +67,11 @@ const thumbnail = thumbnail$1;
|
|
|
66
67
|
const slider = {
|
|
67
68
|
...slider$1,
|
|
68
69
|
track: cn(slider$1.track, "ring-1 ring-black/5"),
|
|
69
|
-
preview: cn(slider$1.preview, "[--preview-end-inset:calc(100cqi-100%)]", "[--preview-left:clamp(calc(var(--max-
|
|
70
|
+
preview: cn(slider$1.preview, "[--preview-end-inset:calc(100cqi-100%)]", "[--preview-left:clamp(calc(var(--max-size)/2),var(--media-slider-pointer),calc(100%-var(--max-size)/2+var(--preview-end-inset)))]", "@2xl/media-root:[--preview-left:var(--media-slider-pointer)]")
|
|
70
71
|
};
|
|
71
72
|
const popup = {
|
|
72
73
|
...popup$1,
|
|
73
|
-
volume: cn(popup$1.popover, "p-0 bg-transparent")
|
|
74
|
+
volume: cn(popup$1.popover, "p-0 bg-transparent", "@max-2xl/media-root:[--media-popover-side-offset:--spacing(3)]")
|
|
74
75
|
};
|
|
75
76
|
const menu = {
|
|
76
77
|
...menu$1,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"video.tailwind.js","names":[],"sources":["../../../../../../../../skins/dist/default/minimal/tailwind/video.tailwind.js"],"sourcesContent":["import { container as container$1 } from \"./components/container.js\";\nimport { controls as controls$1 } from \"./components/controls.js\";\nimport { error as error$1 } from \"./components/error.js\";\nimport { popup as popup$1 } from \"./components/popup.js\";\nimport { slider as slider$1 } from \"./components/slider.js\";\nimport { iconState } from \"../../shared/tailwind/icon-state.js\";\nimport { badge } from \"./components/badge.js\";\nimport { bufferingIndicator } from \"./components/buffering.js\";\nimport { button } from \"./components/button.js\";\nimport { buttonGroup } from \"./components/button-group.js\";\nimport { icon, iconContainer, iconFlipped, iconHidden } from \"./components/icon.js\";\nimport { menu as menu$1 } from \"./components/menu.js\";\nimport { playbackRate } from \"./components/playback-rate.js\";\nimport { seek } from \"./components/seek.js\";\nimport { time as time$1 } from \"./components/time.js\";\nimport { thumbnail as thumbnail$1 } from \"./components/thumbnail.js\";\nimport { inputIndicatorOverlay } from \"./components/input-indicator-overlay.js\";\nimport { overlay } from \"./components/overlay.js\";\nimport { poster } from \"./components/poster.js\";\nimport { seekIndicator } from \"./components/seek-indicator.js\";\nimport { statusIndicator } from \"./components/status-indicator.js\";\nimport { volumeIndicator } from \"./components/volume-indicator.js\";\nimport { cn } from \"@videojs/utils/style\";\n//#region src/minimal/tailwind/video.tailwind.ts\nconst container = (isShadowDOM) => cn(container$1, \"group/skin\", \"bg-black overflow-clip\", \"after:absolute after:pointer-events-none after:rounded-[inherit] after:z-10\", \"[&:fullscreen]:after:hidden\", \"after:inset-0 after:ring-1 after:ring-inset after:ring-(color:--border-color)\", {\n\t\"[&_::slotted(video)]:block [&_::slotted(video)]:w-full [&_::slotted(video)]:h-full [&_::slotted(video)]:rounded-(--container-border-radius) [&_::slotted(video)]:[object-fit:var(--media-object-fit,cover)] [&_::slotted(video)]:[object-position:var(--media-object-position,center)]\": isShadowDOM,\n\t\"[&_video]:block [&_video]:w-full [&_video]:h-full [&_video]:rounded-[inherit] [&_video]:[object-fit:var(--media-object-fit,contain)] [&_video]:[object-position:var(--media-object-position,center)]\": !isShadowDOM\n}, \"[--default-accent-color:oklch(1_0_0)]\", \"[--border-color:light-dark(oklch(0_0_0/0.15),oklch(1_0_0/0.15))]\", \"[--focus-ring-color:light-dark(oklch(0_0_0),oklch(1_0_0))]\", \"**:[--focus-ring-color:oklch(1_0_0)]\", \"[--container-border-radius:var(--media-border-radius,0.75rem)]\", \"[--media-video-border-radius:var(--container-border-radius)]\", \"[--controls-background-color:transparent]\", \"[--controls-transition-duration:100ms]\", \"[--controls-transition-timing-function:ease-out]\", \"[--error-dialog-transition-duration:150ms]\", \"[--error-dialog-transition-delay:100ms]\", \"[--error-dialog-transition-timing-function:ease-out]\", \"[--popup-transition-duration:100ms]\", \"[--popup-transition-timing-function:ease-out]\", \"[--popover-backdrop-filter:blur(16px)_saturate(1.5)]\", \"[--popover-background-color:oklch(0_0_0/0.5)]\", \"[--popover-border-color:oklch(1_0_0/0.1)]\", \"[--tooltip-backdrop-filter:var(--popover-backdrop-filter)]\", \"[--tooltip-background-color:var(--popover-background-color)]\", \"[--tooltip-border-color:var(--popover-border-color)]\", \"[--tooltip-text-color:currentColor]\", \"min-[1280px]:[&:fullscreen]:[--scale:1.25]\", \"min-[1536px]:[&:fullscreen]:[--scale:1.5]\", \"min-[1920px]:[&:fullscreen]:[--scale:1.75]\", \"motion-reduce:[--error-dialog-transition-duration:50ms]\", \"motion-reduce:[--error-dialog-transition-delay:0ms]\", \"motion-reduce:[--popup-transition-duration:0ms]\", \"[@media(prefers-reduced-transparency:reduce)]:[--controls-background-color:oklch(0_0_0)]\", \"contrast-more:[--controls-background-color:oklch(0_0_0)]\", \"[@media(prefers-reduced-transparency:reduce)]:[--tooltip-background-color:oklch(0_0_0)]\", \"contrast-more:[--tooltip-background-color:oklch(0_0_0)]\", \"pointer-fine:has-[[data-controls]:not([data-visible])]:[--controls-transition-duration:300ms]\", \"pointer-coarse:has-[[data-controls]:not([data-visible])]:[--controls-transition-duration:150ms]\", \"motion-reduce:has-[[data-controls]:not([data-visible])]:[--controls-transition-duration:50ms]\", \"[--media-caption-track-y:--spacing(-2)]\", \"[--media-caption-track-delay:25ms]\", \"[--media-caption-track-duration:var(--controls-transition-duration)]\", \"has-[[data-controls][data-visible]]:[--media-caption-track-y:--spacing(-18)]\", \"@2xl/media-root:has-[[data-controls][data-visible]]:*:[--media-caption-track-y:--spacing(-12)]\", !isShadowDOM ? [\n\t\"[&_video::-webkit-media-text-track-container]:transition-[translate]\",\n\t\"[&_video::-webkit-media-text-track-container]:duration-(--media-caption-track-duration)\",\n\t\"[&_video::-webkit-media-text-track-container]:ease-out\",\n\t\"[&_video::-webkit-media-text-track-container]:delay-(--media-caption-track-delay)\",\n\t\"[&_video::-webkit-media-text-track-container]:translate-y-(--media-caption-track-y)\",\n\t\"[&_video::-webkit-media-text-track-container]:scale-98\",\n\t\"[&_video::-webkit-media-text-track-container]:z-1\",\n\t\"[&_video::-webkit-media-text-track-container]:font-[inherit]\"\n] : [], !isShadowDOM ? [\n\t\"before:absolute before:inset-0 before:pointer-events-none\",\n\t\"before:[background-image:var(--media-poster-placeholder,none)]\",\n\t\"before:bg-no-repeat\",\n\t\"before:[background-position:var(--media-object-position,center)]\",\n\t\"before:[background-size:var(--media-object-fit,contain)]\",\n\t\"before:opacity-0 before:[filter:blur(var(--media-poster-placeholder-blur,20px))]\",\n\t\"before:transition-opacity before:duration-250\",\n\t\"has-[img[data-visible]:not([data-loaded])]:before:opacity-100\"\n] : [], \"[&:fullscreen]:[--container-border-radius:0]\", {\n\t\"[&:fullscreen_video]:object-contain\": !isShadowDOM,\n\t\"[&:fullscreen_::slotted(video)]:object-contain\": isShadowDOM\n});\nconst controls = cn(controls$1, \"absolute bottom-1 inset-x-1\", \"[--base-side-offset:5] [--base-boundary-offset:1]\", \"gap-x-2 flex-wrap rounded-[--spacing(3)] group/controls\", \"text-white z-20\", \"peer-data-open/error:hidden\", \"ease-(--controls-transition-timing-function)\", \"duration-[calc(var(--controls-transition-duration)/2)]\", \"not-data-visible:duration-(--controls-transition-duration)\", \"pointer-fine:will-change-[translate,filter,opacity]\", \"pointer-fine:transition-[translate,filter,opacity]\", \"pointer-coarse:will-change-[translate,opacity]\", \"pointer-coarse:transition-[translate,opacity]\", \"not-data-visible:opacity-0 not-data-visible:pointer-events-none\", \"motion-safe:not-data-visible:translate-y-full\", \"pointer-fine:motion-safe:not-data-visible:blur-sm\", \"@2xl/media-root:flex-nowrap @2xl/media-root:[--controls-padding:2] @2xl/media-root:[--base-side-offset:2]\");\nconst buttonGroupStart = cn(buttonGroup, \"flex-1 @2xl/media-root:flex-none\");\nconst buttonGroupEnd = cn(buttonGroup, \"flex-1 justify-end @2xl/media-root:flex-none\");\nconst spacer = \"grow\";\nconst time = {\n\t...time$1,\n\tcontrols: cn(time$1.controls, \"[--slider-height:--spacing(5)] grow-0 shrink-0 basis-full order-[-1] px-1.5\", \"@2xl/media-root:[--slider-height:--spacing(8)] @2xl/media-root:grow @2xl/media-root:shrink @2xl/media-root:basis-0 @2xl/media-root:order-[unset]\", \"@2xl/media-root:[mask-position:100%_0] @2xl/media-root:[mask-size:200%_100%]\", \"@2xl/media-root:[transition:mask-position_50ms_ease-out]\", \"group-has-[[data-volume-level][aria-expanded=true]]/controls:@2xl/media-root:[mask-image:linear-gradient(to_right,transparent_10%,black_25%,black_100%)]\", \"group-has-[[data-volume-level][aria-expanded=true]]/controls:@2xl/media-root:[mask-position:0_0]\")\n};\nconst error = {\n\t...error$1,\n\troot: cn(error$1.root, \"pointer-events-none outline-none\"),\n\tdialog: cn(error$1.dialog, \"pointer-events-auto w-full max-w-64 p-4 rounded-none\"),\n\tcontent: cn(error$1.content, \"p-0 py-1.5\"),\n\ttitle: \"text-(length:--font-size-medium)\"\n};\nconst thumbnail = thumbnail$1;\nconst slider = {\n\t...slider$1,\n\ttrack: cn(slider$1.track, \"ring-1 ring-black/5\"),\n\tpreview: cn(slider$1.preview, \"[--preview-end-inset:calc(100cqi-100%)]\", \"[--preview-left:clamp(calc(var(--max-width)/2),var(--media-slider-pointer),calc(100%-var(--max-width)/2+var(--preview-end-inset)))]\", \"@2xl/media-root:[--preview-left:var(--media-slider-pointer)]\")\n};\nconst popup = {\n\t...popup$1,\n\tvolume: cn(popup$1.popover, \"p-0 bg-transparent\")\n};\nconst menu = {\n\t...menu$1,\n\troot: menu$1.root,\n\tsettings: menu$1.settings\n};\n//#endregion\nexport { badge, bufferingIndicator, button, buttonGroup, buttonGroupEnd, buttonGroupStart, container, controls, error, icon, iconContainer, iconFlipped, iconHidden, iconState, inputIndicatorOverlay, menu, overlay, playbackRate, popup, poster, seek, seekIndicator, slider, spacer, statusIndicator, thumbnail, time, volumeIndicator };\n\n//# sourceMappingURL=video.tailwind.js.map"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;AAwBA,MAAM,aAAa,gBAAgB,GAAG,aAAa,cAAc,0BAA0B,+EAA+E,+BAA+B,iFAAiF;CACzR,0RAA0R;CAC1R,wMAAwM,CAAC;AAC1M,GAAG,yCAAyC,oEAAoE,8DAA8D,wCAAwC,kEAAkE,gEAAgE,6CAA6C,0CAA0C,oDAAoD,8CAA8C,2CAA2C,wDAAwD,uCAAuC,iDAAiD,wDAAwD,iDAAiD,6CAA6C,8DAA8D,gEAAgE,wDAAwD,uCAAuC,8CAA8C,6CAA6C,8CAA8C,2DAA2D,uDAAuD,mDAAmD,4FAA4F,4DAA4D,2FAA2F,2DAA2D,iGAAiG,mGAAmG,iGAAiG,2CAA2C,sCAAsC,wEAAwE,gFAAgF,kGAAkG,CAAC,cAAc;CACzxE;CACA;CACA;CACA;CACA;CACA;CACA;CACA;AACD,IAAI,CAAC,GAAG,CAAC,cAAc;CACtB;CACA;CACA;CACA;CACA;CACA;CACA;CACA;AACD,IAAI,CAAC,GAAG,gDAAgD;CACvD,uCAAuC,CAAC;CACxC,kDAAkD;AACnD,CAAC;AACD,MAAM,WAAW,GAAG,YAAY,+BAA+B,qDAAqD,2DAA2D,mBAAmB,+BAA+B,gDAAgD,0DAA0D,8DAA8D,uDAAuD,sDAAsD,kDAAkD,iDAAiD,mEAAmE,iDAAiD,qDAAqD,2GAA2G;AAC72B,MAAM,mBAAmB,GAAG,aAAa,kCAAkC;AAC3E,MAAM,iBAAiB,GAAG,aAAa,8CAA8C;AACrF,MAAM,SAAS;AACf,MAAM,OAAO;CACZ,GAAG;CACH,UAAU,GAAG,OAAO,UAAU,+EAA+E,oJAAoJ,gFAAgF,4DAA4D,4JAA4J,kGAAkG;AAC5oB;AACA,MAAM,QAAQ;CACb,GAAG;CACH,MAAM,GAAG,QAAQ,MAAM,kCAAkC;CACzD,QAAQ,GAAG,QAAQ,QAAQ,sDAAsD;CACjF,SAAS,GAAG,QAAQ,SAAS,YAAY;CACzC,OAAO;AACR;AACA,MAAM,YAAY;AAClB,MAAM,SAAS;CACd,GAAG;CACH,OAAO,GAAG,SAAS,OAAO,qBAAqB;CAC/C,SAAS,GAAG,SAAS,SAAS,2CAA2C,uIAAuI,8DAA8D;AAC/Q;AACA,MAAM,QAAQ;CACb,GAAG;CACH,QAAQ,GAAG,QAAQ,SAAS,oBAAoB;AACjD;AACA,MAAM,OAAO;CACZ,GAAG;CACH,MAAM,OAAO;CACb,UAAU,OAAO;AAClB"}
|
|
1
|
+
{"version":3,"file":"video.tailwind.js","names":[],"sources":["../../../../../../../../skins/dist/default/minimal/tailwind/video.tailwind.js"],"sourcesContent":["import { container as container$1 } from \"./components/container.js\";\nimport { controls as controls$1 } from \"./components/controls.js\";\nimport { error as error$1 } from \"./components/error.js\";\nimport { popup as popup$1 } from \"./components/popup.js\";\nimport { slider as slider$1 } from \"./components/slider.js\";\nimport { iconState } from \"../../shared/tailwind/icon-state.js\";\nimport { badge } from \"./components/badge.js\";\nimport { bufferingIndicator } from \"./components/buffering.js\";\nimport { button } from \"./components/button.js\";\nimport { buttonGroup } from \"./components/button-group.js\";\nimport { icon, iconContainer, iconFlipped, iconHidden } from \"./components/icon.js\";\nimport { menu as menu$1 } from \"./components/menu.js\";\nimport { playbackRate } from \"./components/playback-rate.js\";\nimport { seek } from \"./components/seek.js\";\nimport { time as time$1 } from \"./components/time.js\";\nimport { thumbnail as thumbnail$1 } from \"./components/thumbnail.js\";\nimport { inputIndicatorOverlay } from \"./components/input-indicator-overlay.js\";\nimport { overlay } from \"./components/overlay.js\";\nimport { poster } from \"./components/poster.js\";\nimport { seekIndicator } from \"./components/seek-indicator.js\";\nimport { statusIndicator } from \"./components/status-indicator.js\";\nimport { volumeIndicator } from \"./components/volume-indicator.js\";\nimport { cn } from \"@videojs/utils/style\";\n//#region src/minimal/tailwind/video.tailwind.ts\nconst container = (isShadowDOM) => cn(container$1, \"group/skin\", \"bg-black overflow-clip\", \"after:absolute after:pointer-events-none after:rounded-[inherit] after:z-10\", \"[&:fullscreen]:after:hidden\", \"after:inset-0 after:ring-1 after:ring-inset after:ring-(color:--border-color)\", {\n\t\"[&_::slotted(video)]:block [&_::slotted(video)]:w-full [&_::slotted(video)]:h-full [&_::slotted(video)]:rounded-(--container-border-radius) [&_::slotted(video)]:[object-fit:var(--media-object-fit,cover)] [&_::slotted(video)]:[object-position:var(--media-object-position,center)]\": isShadowDOM,\n\t\"[&_video]:block [&_video]:w-full [&_video]:h-full [&_video]:rounded-[inherit] [&_video]:[object-fit:var(--media-object-fit,contain)] [&_video]:[object-position:var(--media-object-position,center)]\": !isShadowDOM\n}, \"[--default-accent-color:oklch(1_0_0)]\", \"[--border-color:light-dark(oklch(0_0_0/0.15),oklch(1_0_0/0.15))]\", \"[--focus-ring-color:light-dark(oklch(0_0_0),oklch(1_0_0))]\", \"**:[--focus-ring-color:oklch(1_0_0)]\", \"[--container-border-radius:var(--media-border-radius,0.75rem)]\", \"[--media-video-border-radius:var(--container-border-radius)]\", \"[--controls-background-color:transparent]\", \"[--controls-transition-duration:100ms]\", \"[--controls-transition-timing-function:ease-out]\", \"[--error-dialog-transition-duration:150ms]\", \"[--error-dialog-transition-delay:100ms]\", \"[--error-dialog-transition-timing-function:ease-out]\", \"[--popup-transition-duration:100ms]\", \"[--popup-transition-timing-function:ease-out]\", \"[--popover-backdrop-filter:blur(16px)_saturate(1.5)]\", \"[--popover-background-color:oklch(0_0_0/0.5)]\", \"[--popover-border-color:oklch(1_0_0/0.1)]\", \"[--tooltip-backdrop-filter:var(--popover-backdrop-filter)]\", \"[--tooltip-background-color:var(--popover-background-color)]\", \"[--tooltip-border-color:var(--popover-border-color)]\", \"[--tooltip-text-color:currentColor]\", \"min-[1280px]:[&:fullscreen]:[--scale:1.25]\", \"min-[1536px]:[&:fullscreen]:[--scale:1.5]\", \"min-[1920px]:[&:fullscreen]:[--scale:1.75]\", \"motion-reduce:[--error-dialog-transition-duration:50ms]\", \"motion-reduce:[--error-dialog-transition-delay:0ms]\", \"motion-reduce:[--popup-transition-duration:0ms]\", \"[@media(prefers-reduced-transparency:reduce)]:[--controls-background-color:oklch(0_0_0)]\", \"contrast-more:[--controls-background-color:oklch(0_0_0)]\", \"[@media(prefers-reduced-transparency:reduce)]:[--tooltip-background-color:oklch(0_0_0)]\", \"contrast-more:[--tooltip-background-color:oklch(0_0_0)]\", \"pointer-fine:has-[[data-controls]:not([data-visible])]:[--controls-transition-duration:300ms]\", \"pointer-coarse:has-[[data-controls]:not([data-visible])]:[--controls-transition-duration:150ms]\", \"motion-reduce:has-[[data-controls]:not([data-visible])]:[--controls-transition-duration:50ms]\", \"[--media-caption-track-y:--spacing(-2)]\", \"[--media-caption-track-delay:25ms]\", \"[--media-caption-track-duration:var(--controls-transition-duration)]\", \"has-[[data-controls][data-visible]]:[--media-caption-track-y:--spacing(-18)]\", \"@2xl/media-root:has-[[data-controls][data-visible]]:*:[--media-caption-track-y:--spacing(-12)]\", !isShadowDOM ? [\n\t\"[&_video::-webkit-media-text-track-container]:transition-[translate]\",\n\t\"[&_video::-webkit-media-text-track-container]:duration-(--media-caption-track-duration)\",\n\t\"[&_video::-webkit-media-text-track-container]:ease-out\",\n\t\"[&_video::-webkit-media-text-track-container]:delay-(--media-caption-track-delay)\",\n\t\"[&_video::-webkit-media-text-track-container]:translate-y-(--media-caption-track-y)\",\n\t\"[&_video::-webkit-media-text-track-container]:scale-98\",\n\t\"[&_video::-webkit-media-text-track-container]:z-1\",\n\t\"[&_video::-webkit-media-text-track-container]:font-[inherit]\"\n] : [], !isShadowDOM ? [\n\t\"before:absolute before:inset-0 before:pointer-events-none\",\n\t\"before:[background-image:var(--media-poster-placeholder,none)]\",\n\t\"before:bg-no-repeat\",\n\t\"before:[background-position:var(--media-object-position,center)]\",\n\t\"before:[background-size:var(--media-object-fit,contain)]\",\n\t\"before:opacity-0 before:[filter:blur(var(--media-poster-placeholder-blur,20px))]\",\n\t\"before:transition-opacity before:duration-250\",\n\t\"has-[img[data-visible]:not([data-loaded])]:before:opacity-100\"\n] : [], \"[&:fullscreen]:[--container-border-radius:0]\", {\n\t\"[&:fullscreen_video]:object-contain\": !isShadowDOM,\n\t\"[&:fullscreen_::slotted(video)]:object-contain\": isShadowDOM\n});\nconst controls = cn(controls$1, \"absolute bottom-1 inset-x-1\", \"[--base-side-offset:5] [--base-boundary-offset:1]\", \"[--volume-mask:linear-gradient(to_right,transparent_10%,black_25%,black_100%)]\", \"gap-x-2 flex-wrap rounded-[--spacing(3)] group/controls\", \"text-white z-20\", \"peer-data-open/error:hidden\", \"ease-(--controls-transition-timing-function)\", \"duration-[calc(var(--controls-transition-duration)/2)]\", \"not-data-visible:duration-(--controls-transition-duration)\", \"pointer-fine:will-change-[translate,filter,opacity]\", \"pointer-fine:transition-[translate,filter,opacity]\", \"pointer-coarse:will-change-[translate,opacity]\", \"pointer-coarse:transition-[translate,opacity]\", \"not-data-visible:opacity-0 not-data-visible:pointer-events-none\", \"motion-safe:not-data-visible:translate-y-full\", \"pointer-fine:motion-safe:not-data-visible:blur-sm\", \"@2xl/media-root:flex-nowrap @2xl/media-root:[--controls-padding:2] @2xl/media-root:[--base-side-offset:2]\");\nconst volumeMaskTarget = cn(\"[mask-image:var(--volume-mask-image,none)]\", \"[mask-repeat:no-repeat]\", \"[mask-position:var(--volume-mask-position,100%_0)]\", \"[mask-size:var(--volume-mask-size,200%_100%)]\", \"[transition:mask-position_50ms_ease-out]\");\nconst buttonGroupStart = cn(buttonGroup, \"flex-1 @2xl/media-root:flex-none\");\nconst buttonGroupEnd = cn(buttonGroup, volumeMaskTarget, \"flex-1 justify-end @2xl/media-root:flex-none\", \"group-has-[[data-volume-level][aria-expanded=true]]/controls:@max-2xl/media-root:[--volume-mask-image:var(--volume-mask)]\", \"group-has-[[data-volume-level][aria-expanded=true]]/controls:@max-2xl/media-root:[--volume-mask-position:0_0]\", \"group-has-[[data-volume-level][aria-expanded=true]]/controls:@max-2xl/media-root:[--volume-mask-size:400%_100%]\");\nconst spacer = \"grow\";\nconst time = {\n\t...time$1,\n\tcontrols: cn(time$1.controls, volumeMaskTarget, \"[--slider-height:--spacing(5)] grow-0 shrink-0 basis-full order-[-1] px-1.5\", \"@2xl/media-root:[--slider-height:--spacing(8)] @2xl/media-root:grow @2xl/media-root:shrink @2xl/media-root:basis-0 @2xl/media-root:order-[unset]\", \"group-has-[[data-volume-level][aria-expanded=true]]/controls:@2xl/media-root:[--volume-mask-image:var(--volume-mask)]\", \"group-has-[[data-volume-level][aria-expanded=true]]/controls:@2xl/media-root:[--volume-mask-position:0_0]\")\n};\nconst error = {\n\t...error$1,\n\troot: cn(error$1.root, \"pointer-events-none outline-none\"),\n\tdialog: cn(error$1.dialog, \"pointer-events-auto w-full max-w-64 p-4 rounded-none\"),\n\tcontent: cn(error$1.content, \"p-0 py-1.5\"),\n\ttitle: \"text-(length:--font-size-medium)\"\n};\nconst thumbnail = thumbnail$1;\nconst slider = {\n\t...slider$1,\n\ttrack: cn(slider$1.track, \"ring-1 ring-black/5\"),\n\tpreview: cn(slider$1.preview, \"[--preview-end-inset:calc(100cqi-100%)]\", \"[--preview-left:clamp(calc(var(--max-size)/2),var(--media-slider-pointer),calc(100%-var(--max-size)/2+var(--preview-end-inset)))]\", \"@2xl/media-root:[--preview-left:var(--media-slider-pointer)]\")\n};\nconst popup = {\n\t...popup$1,\n\tvolume: cn(popup$1.popover, \"p-0 bg-transparent\", \"@max-2xl/media-root:[--media-popover-side-offset:--spacing(3)]\")\n};\nconst menu = {\n\t...menu$1,\n\troot: menu$1.root,\n\tsettings: menu$1.settings\n};\n//#endregion\nexport { badge, bufferingIndicator, button, buttonGroup, buttonGroupEnd, buttonGroupStart, container, controls, error, icon, iconContainer, iconFlipped, iconHidden, iconState, inputIndicatorOverlay, menu, overlay, playbackRate, popup, poster, seek, seekIndicator, slider, spacer, statusIndicator, thumbnail, time, volumeIndicator };\n\n//# sourceMappingURL=video.tailwind.js.map"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;AAwBA,MAAM,aAAa,gBAAgB,GAAG,aAAa,cAAc,0BAA0B,+EAA+E,+BAA+B,iFAAiF;CACzR,0RAA0R;CAC1R,wMAAwM,CAAC;AAC1M,GAAG,yCAAyC,oEAAoE,8DAA8D,wCAAwC,kEAAkE,gEAAgE,6CAA6C,0CAA0C,oDAAoD,8CAA8C,2CAA2C,wDAAwD,uCAAuC,iDAAiD,wDAAwD,iDAAiD,6CAA6C,8DAA8D,gEAAgE,wDAAwD,uCAAuC,8CAA8C,6CAA6C,8CAA8C,2DAA2D,uDAAuD,mDAAmD,4FAA4F,4DAA4D,2FAA2F,2DAA2D,iGAAiG,mGAAmG,iGAAiG,2CAA2C,sCAAsC,wEAAwE,gFAAgF,kGAAkG,CAAC,cAAc;CACzxE;CACA;CACA;CACA;CACA;CACA;CACA;CACA;AACD,IAAI,CAAC,GAAG,CAAC,cAAc;CACtB;CACA;CACA;CACA;CACA;CACA;CACA;CACA;AACD,IAAI,CAAC,GAAG,gDAAgD;CACvD,uCAAuC,CAAC;CACxC,kDAAkD;AACnD,CAAC;AACD,MAAM,WAAW,GAAG,YAAY,+BAA+B,qDAAqD,kFAAkF,2DAA2D,mBAAmB,+BAA+B,gDAAgD,0DAA0D,8DAA8D,uDAAuD,sDAAsD,kDAAkD,iDAAiD,mEAAmE,iDAAiD,qDAAqD,2GAA2G;AAC/7B,MAAM,mBAAmB,GAAG,8CAA8C,2BAA2B,sDAAsD,iDAAiD,0CAA0C;AACtP,MAAM,mBAAmB,GAAG,aAAa,kCAAkC;AAC3E,MAAM,iBAAiB,GAAG,aAAa,kBAAkB,gDAAgD,6HAA6H,iHAAiH,iHAAiH;AACxc,MAAM,SAAS;AACf,MAAM,OAAO;CACZ,GAAG;CACH,UAAU,GAAG,OAAO,UAAU,kBAAkB,+EAA+E,oJAAoJ,yHAAyH,2GAA2G;AACxf;AACA,MAAM,QAAQ;CACb,GAAG;CACH,MAAM,GAAG,QAAQ,MAAM,kCAAkC;CACzD,QAAQ,GAAG,QAAQ,QAAQ,sDAAsD;CACjF,SAAS,GAAG,QAAQ,SAAS,YAAY;CACzC,OAAO;AACR;AACA,MAAM,YAAY;AAClB,MAAM,SAAS;CACd,GAAG;CACH,OAAO,GAAG,SAAS,OAAO,qBAAqB;CAC/C,SAAS,GAAG,SAAS,SAAS,2CAA2C,qIAAqI,8DAA8D;AAC7Q;AACA,MAAM,QAAQ;CACb,GAAG;CACH,QAAQ,GAAG,QAAQ,SAAS,sBAAsB,gEAAgE;AACnH;AACA,MAAM,OAAO;CACZ,GAAG;CACH,MAAM,OAAO;CACb,UAAU,OAAO;AAClB"}
|
|
@@ -41,10 +41,10 @@ const iconState = {
|
|
|
41
41
|
airplay: {
|
|
42
42
|
button: [
|
|
43
43
|
"group",
|
|
44
|
-
"not-data-[airplay-state=connected]:[--media-icon
|
|
45
|
-
"not-data-[airplay-state=connected]:[--media-icon
|
|
46
|
-
"motion-reduce:[--media-icon
|
|
47
|
-
"motion-reduce:[--media-icon
|
|
44
|
+
"not-data-[airplay-state=connected]:[--media-icon-airplay-fill-animation:none]",
|
|
45
|
+
"not-data-[airplay-state=connected]:[--media-icon-airplay-triangle-animation:none]",
|
|
46
|
+
"motion-reduce:[--media-icon-airplay-fill-animation:none]",
|
|
47
|
+
"motion-reduce:[--media-icon-airplay-triangle-animation:none]"
|
|
48
48
|
].join(" "),
|
|
49
49
|
enter: "opacity-0 group-not-data-[airplay-state=connected]:opacity-100 group-not-data-[airplay-state=connected]:scale-100",
|
|
50
50
|
exit: "opacity-0 group-data-[airplay-state=connected]:opacity-100 group-data-[airplay-state=connected]:scale-100"
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"icon-state.js","names":[],"sources":["../../../../../../../../skins/dist/default/shared/tailwind/icon-state.js"],"sourcesContent":["//#region src/shared/tailwind/icon-state.ts\nconst iconState = {\n\tplay: {\n\t\tbutton: \"group\",\n\t\trestart: \"opacity-0 scale-0 group-data-ended:opacity-100 group-data-ended:scale-100\",\n\t\tplay: [\n\t\t\t\"opacity-0 scale-0\",\n\t\t\t\"group-not-data-ended:group-data-paused:opacity-100\",\n\t\t\t\"group-not-data-ended:group-data-paused:scale-100\",\n\t\t\t\"group-not-data-ended:group-not-data-started:opacity-100\",\n\t\t\t\"group-not-data-ended:group-not-data-started:scale-100\"\n\t\t].join(\" \"),\n\t\tpause: \"opacity-0 scale-0 group-data-started:group-not-data-paused:group-not-data-ended:opacity-100 group-data-started:group-not-data-paused:group-not-data-ended:scale-100\"\n\t},\n\tmute: {\n\t\tbutton: \"group\",\n\t\tvolumeOff: \"opacity-0 group-data-muted:opacity-100 group-data-muted:scale-100\",\n\t\tvolumeLow: \"opacity-0 group-not-data-muted:group-data-[volume-level=low]:opacity-100 group-not-data-muted:group-data-[volume-level=low]:scale-100\",\n\t\tvolumeHigh: \"opacity-0 group-not-data-muted:group-not-data-[volume-level=low]:opacity-100 group-not-data-muted:group-not-data-[volume-level=low]:scale-100\"\n\t},\n\tfullscreen: {\n\t\tbutton: \"group\",\n\t\tenter: \"opacity-0 group-not-data-fullscreen:opacity-100 group-not-data-fullscreen:scale-100\",\n\t\texit: \"opacity-0 group-data-fullscreen:opacity-100 group-data-fullscreen:scale-100\"\n\t},\n\tcaptions: {\n\t\tbutton: \"group\",\n\t\toff: \"opacity-0 group-not-data-active:opacity-100 group-not-data-active:scale-100\",\n\t\ton: \"opacity-0 group-data-active:opacity-100 group-data-active:scale-100\"\n\t},\n\tpip: {\n\t\tbutton: \"group\",\n\t\toff: \"opacity-0 group-not-data-pip:opacity-100 group-not-data-pip:scale-100\",\n\t\ton: \"opacity-0 group-data-pip:opacity-100 group-data-pip:scale-100\"\n\t},\n\tcast: {\n\t\tbutton: \"group\",\n\t\tenter: \"opacity-0 group-not-data-[cast-state=connected]:opacity-100 group-not-data-[cast-state=connected]:scale-100\",\n\t\texit: \"opacity-0 group-data-[cast-state=connected]:opacity-100 group-data-[cast-state=connected]:scale-100\"\n\t},\n\tairplay: {\n\t\tbutton: [\n\t\t\t\"group\",\n\t\t\t\"not-data-[airplay-state=connected]:[--media-icon
|
|
1
|
+
{"version":3,"file":"icon-state.js","names":[],"sources":["../../../../../../../../skins/dist/default/shared/tailwind/icon-state.js"],"sourcesContent":["//#region src/shared/tailwind/icon-state.ts\nconst iconState = {\n\tplay: {\n\t\tbutton: \"group\",\n\t\trestart: \"opacity-0 scale-0 group-data-ended:opacity-100 group-data-ended:scale-100\",\n\t\tplay: [\n\t\t\t\"opacity-0 scale-0\",\n\t\t\t\"group-not-data-ended:group-data-paused:opacity-100\",\n\t\t\t\"group-not-data-ended:group-data-paused:scale-100\",\n\t\t\t\"group-not-data-ended:group-not-data-started:opacity-100\",\n\t\t\t\"group-not-data-ended:group-not-data-started:scale-100\"\n\t\t].join(\" \"),\n\t\tpause: \"opacity-0 scale-0 group-data-started:group-not-data-paused:group-not-data-ended:opacity-100 group-data-started:group-not-data-paused:group-not-data-ended:scale-100\"\n\t},\n\tmute: {\n\t\tbutton: \"group\",\n\t\tvolumeOff: \"opacity-0 group-data-muted:opacity-100 group-data-muted:scale-100\",\n\t\tvolumeLow: \"opacity-0 group-not-data-muted:group-data-[volume-level=low]:opacity-100 group-not-data-muted:group-data-[volume-level=low]:scale-100\",\n\t\tvolumeHigh: \"opacity-0 group-not-data-muted:group-not-data-[volume-level=low]:opacity-100 group-not-data-muted:group-not-data-[volume-level=low]:scale-100\"\n\t},\n\tfullscreen: {\n\t\tbutton: \"group\",\n\t\tenter: \"opacity-0 group-not-data-fullscreen:opacity-100 group-not-data-fullscreen:scale-100\",\n\t\texit: \"opacity-0 group-data-fullscreen:opacity-100 group-data-fullscreen:scale-100\"\n\t},\n\tcaptions: {\n\t\tbutton: \"group\",\n\t\toff: \"opacity-0 group-not-data-active:opacity-100 group-not-data-active:scale-100\",\n\t\ton: \"opacity-0 group-data-active:opacity-100 group-data-active:scale-100\"\n\t},\n\tpip: {\n\t\tbutton: \"group\",\n\t\toff: \"opacity-0 group-not-data-pip:opacity-100 group-not-data-pip:scale-100\",\n\t\ton: \"opacity-0 group-data-pip:opacity-100 group-data-pip:scale-100\"\n\t},\n\tcast: {\n\t\tbutton: \"group\",\n\t\tenter: \"opacity-0 group-not-data-[cast-state=connected]:opacity-100 group-not-data-[cast-state=connected]:scale-100\",\n\t\texit: \"opacity-0 group-data-[cast-state=connected]:opacity-100 group-data-[cast-state=connected]:scale-100\"\n\t},\n\tairplay: {\n\t\tbutton: [\n\t\t\t\"group\",\n\t\t\t\"not-data-[airplay-state=connected]:[--media-icon-airplay-fill-animation:none]\",\n\t\t\t\"not-data-[airplay-state=connected]:[--media-icon-airplay-triangle-animation:none]\",\n\t\t\t\"motion-reduce:[--media-icon-airplay-fill-animation:none]\",\n\t\t\t\"motion-reduce:[--media-icon-airplay-triangle-animation:none]\"\n\t\t].join(\" \"),\n\t\tenter: \"opacity-0 group-not-data-[airplay-state=connected]:opacity-100 group-not-data-[airplay-state=connected]:scale-100\",\n\t\texit: \"opacity-0 group-data-[airplay-state=connected]:opacity-100 group-data-[airplay-state=connected]:scale-100\"\n\t}\n};\n//#endregion\nexport { iconState };\n\n//# sourceMappingURL=icon-state.js.map"],"mappings":";AACA,MAAM,YAAY;CACjB,MAAM;EACL,QAAQ;EACR,SAAS;EACT,MAAM;GACL;GACA;GACA;GACA;GACA;EACD,CAAC,CAAC,KAAK,GAAG;EACV,OAAO;CACR;CACA,MAAM;EACL,QAAQ;EACR,WAAW;EACX,WAAW;EACX,YAAY;CACb;CACA,YAAY;EACX,QAAQ;EACR,OAAO;EACP,MAAM;CACP;CACA,UAAU;EACT,QAAQ;EACR,KAAK;EACL,IAAI;CACL;CACA,KAAK;EACJ,QAAQ;EACR,KAAK;EACL,IAAI;CACL;CACA,MAAM;EACL,QAAQ;EACR,OAAO;EACP,MAAM;CACP;CACA,SAAS;EACR,QAAQ;GACP;GACA;GACA;GACA;GACA;EACD,CAAC,CAAC,KAAK,GAAG;EACV,OAAO;EACP,MAAM;CACP;AACD"}
|
|
@@ -1,22 +1,15 @@
|
|
|
1
|
-
import { GestureActionName, GesturePointerType, GestureRegion } from "@videojs/core/dom";
|
|
2
1
|
import { ReactNode } from "react";
|
|
2
|
+
import { GestureProps } from "@videojs/core";
|
|
3
3
|
//#region src/ui/gesture/gesture.d.ts
|
|
4
|
-
interface GestureProps {
|
|
5
|
-
|
|
6
|
-
action: GestureActionName | (string & {});
|
|
7
|
-
value?: number;
|
|
8
|
-
pointer?: GesturePointerType;
|
|
9
|
-
region?: GestureRegion;
|
|
10
|
-
disabled?: boolean;
|
|
11
|
-
}
|
|
12
|
-
declare function Gesture({ type, action, value, pointer, region, disabled }: GestureProps): ReactNode;
|
|
4
|
+
interface GestureProps$1 extends GestureProps {}
|
|
5
|
+
declare function Gesture({ type, action, value, pointer, region, disabled }: GestureProps$1): ReactNode;
|
|
13
6
|
declare namespace Gesture {
|
|
14
|
-
type Props = GestureProps;
|
|
7
|
+
type Props = GestureProps$1;
|
|
15
8
|
}
|
|
16
9
|
/** @deprecated Use `GestureProps` instead. */
|
|
17
|
-
type MediaGestureProps = GestureProps;
|
|
10
|
+
type MediaGestureProps = GestureProps$1;
|
|
18
11
|
/** @deprecated Use `Gesture` instead. */
|
|
19
12
|
declare const MediaGesture: typeof Gesture;
|
|
20
13
|
//#endregion
|
|
21
|
-
export { Gesture, GestureProps, MediaGesture, MediaGestureProps };
|
|
14
|
+
export { Gesture, GestureProps$1 as GestureProps, MediaGesture, MediaGestureProps };
|
|
22
15
|
//# sourceMappingURL=gesture.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"gesture.d.ts","names":[],"sources":["../../../../src/ui/gesture/gesture.tsx"],"mappings":";;;
|
|
1
|
+
{"version":3,"file":"gesture.d.ts","names":[],"sources":["../../../../src/ui/gesture/gesture.tsx"],"mappings":";;;UAQiB,uBAAqB;iBAEtB,UAAU,MAAM,QAAQ,OAAO,SAAS,QAAQ,YAAY,iBAAe;kBA0B1E;OACH,QAAQ;;;KAIV,oBAAoB;;cAGnB,qBAAY"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"gesture.js","names":[],"sources":["../../../../src/ui/gesture/gesture.tsx"],"sourcesContent":["import type { AnyPlayerStore } from '@videojs/core/dom';\nimport {
|
|
1
|
+
{"version":3,"file":"gesture.js","names":[],"sources":["../../../../src/ui/gesture/gesture.tsx"],"sourcesContent":["import type { GestureProps as CoreGestureProps } from '@videojs/core';\nimport type { AnyPlayerStore } from '@videojs/core/dom';\nimport { createDoubleTapGesture, createTapGesture, resolveGestureAction } from '@videojs/core/dom';\nimport type { ReactNode } from 'react';\nimport { useEffect } from 'react';\n\nimport { useContainer, usePlayer } from '../../player/context';\n\nexport interface GestureProps extends CoreGestureProps {}\n\nexport function Gesture({ type, action, value, pointer, region, disabled }: GestureProps): ReactNode {\n const store = usePlayer() as AnyPlayerStore;\n const container = useContainer();\n\n useEffect(() => {\n if (!container || !type || !action || disabled) return;\n\n const resolver = resolveGestureAction(action);\n if (!resolver) return;\n\n const onActivate = (event: PointerEvent) => {\n resolver({ store, value, event });\n };\n\n const options = { pointer, region, action, value };\n\n if (type === 'doubletap') {\n return createDoubleTapGesture(container, onActivate, options);\n }\n\n return createTapGesture(container, onActivate, options);\n }, [container, store, type, action, value, pointer, region, disabled]);\n\n return null;\n}\n\nexport namespace Gesture {\n export type Props = GestureProps;\n}\n\n/** @deprecated Use `GestureProps` instead. */\nexport type MediaGestureProps = GestureProps;\n\n/** @deprecated Use `Gesture` instead. */\nexport const MediaGesture = Gesture;\n"],"mappings":";;;;AAUA,SAAgB,QAAQ,EAAE,MAAM,QAAQ,OAAO,SAAS,QAAQ,YAAqC;CACnG,MAAM,QAAQ,UAAU;CACxB,MAAM,YAAY,aAAa;CAE/B,gBAAgB;EACd,IAAI,CAAC,aAAa,CAAC,QAAQ,CAAC,UAAU,UAAU;EAEhD,MAAM,WAAW,qBAAqB,MAAM;EAC5C,IAAI,CAAC,UAAU;EAEf,MAAM,cAAc,UAAwB;GAC1C,SAAS;IAAE;IAAO;IAAO;GAAM,CAAC;EAClC;EAEA,MAAM,UAAU;GAAE;GAAS;GAAQ;GAAQ;EAAM;EAEjD,IAAI,SAAS,aACX,OAAO,uBAAuB,WAAW,YAAY,OAAO;EAG9D,OAAO,iBAAiB,WAAW,YAAY,OAAO;CACxD,GAAG;EAAC;EAAW;EAAO;EAAM;EAAQ;EAAO;EAAS;EAAQ;CAAQ,CAAC;CAErE,OAAO;AACT;;AAUA,MAAa,eAAe"}
|
|
@@ -1,10 +1,7 @@
|
|
|
1
|
-
import { GesturePointerType, GestureRegion } from "@videojs/core/dom";
|
|
2
1
|
import { RefObject } from "react";
|
|
2
|
+
import { GestureProps } from "@videojs/core";
|
|
3
3
|
//#region src/ui/gesture/use-doubletap-gesture.d.ts
|
|
4
|
-
interface UseDoubleTapGestureOptions {
|
|
5
|
-
pointer?: GesturePointerType;
|
|
6
|
-
region?: GestureRegion;
|
|
7
|
-
disabled?: boolean;
|
|
4
|
+
interface UseDoubleTapGestureOptions extends Pick<GestureProps, 'pointer' | 'region' | 'disabled'> {
|
|
8
5
|
target?: RefObject<HTMLElement | null>;
|
|
9
6
|
}
|
|
10
7
|
declare function useDoubleTapGesture(onActivate: (event: PointerEvent) => void, options?: UseDoubleTapGestureOptions): void;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"use-doubletap-gesture.d.ts","names":[],"sources":["../../../../src/ui/gesture/use-doubletap-gesture.ts"],"mappings":";;;
|
|
1
|
+
{"version":3,"file":"use-doubletap-gesture.d.ts","names":[],"sources":["../../../../src/ui/gesture/use-doubletap-gesture.ts"],"mappings":";;;UAQiB,mCAAmC,KAAK;EACvD,SAAS,UAAU;;iBAGL,oBACd,aAAa,OAAO,uBACpB,UAAU"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"use-doubletap-gesture.js","names":[],"sources":["../../../../src/ui/gesture/use-doubletap-gesture.ts"],"sourcesContent":["import {
|
|
1
|
+
{"version":3,"file":"use-doubletap-gesture.js","names":[],"sources":["../../../../src/ui/gesture/use-doubletap-gesture.ts"],"sourcesContent":["import type { GestureProps } from '@videojs/core';\nimport { createDoubleTapGesture } from '@videojs/core/dom';\nimport type { RefObject } from 'react';\nimport { useEffect } from 'react';\n\nimport { useContainer } from '../../player/context';\nimport { useLatestRef } from '../../utils/use-latest-ref';\n\nexport interface UseDoubleTapGestureOptions extends Pick<GestureProps, 'pointer' | 'region' | 'disabled'> {\n target?: RefObject<HTMLElement | null>;\n}\n\nexport function useDoubleTapGesture(\n onActivate: (event: PointerEvent) => void,\n options?: UseDoubleTapGestureOptions\n): void {\n const { pointer, region, disabled = false, target } = options ?? {};\n const contextContainer = useContainer();\n const container = target?.current ?? contextContainer;\n const onActivateRef = useLatestRef(onActivate);\n\n useEffect(() => {\n if (!container || disabled) return;\n\n return createDoubleTapGesture(container, (event) => onActivateRef.current(event), { pointer, region });\n }, [container, disabled, pointer, region]);\n}\n"],"mappings":";;;;;AAYA,SAAgB,oBACd,YACA,SACM;CACN,MAAM,EAAE,SAAS,QAAQ,WAAW,OAAO,WAAW,WAAW,CAAC;CAClE,MAAM,mBAAmB,aAAa;CACtC,MAAM,YAAY,QAAQ,WAAW;CACrC,MAAM,gBAAgB,aAAa,UAAU;CAE7C,gBAAgB;EACd,IAAI,CAAC,aAAa,UAAU;EAE5B,OAAO,uBAAuB,YAAY,UAAU,cAAc,QAAQ,KAAK,GAAG;GAAE;GAAS;EAAO,CAAC;CACvG,GAAG;EAAC;EAAW;EAAU;EAAS;CAAM,CAAC;AAC3C"}
|
|
@@ -1,10 +1,7 @@
|
|
|
1
|
-
import { GesturePointerType, GestureRegion } from "@videojs/core/dom";
|
|
2
1
|
import { RefObject } from "react";
|
|
2
|
+
import { GestureProps } from "@videojs/core";
|
|
3
3
|
//#region src/ui/gesture/use-tap-gesture.d.ts
|
|
4
|
-
interface UseTapGestureOptions {
|
|
5
|
-
pointer?: GesturePointerType;
|
|
6
|
-
region?: GestureRegion;
|
|
7
|
-
disabled?: boolean;
|
|
4
|
+
interface UseTapGestureOptions extends Pick<GestureProps, 'pointer' | 'region' | 'disabled'> {
|
|
8
5
|
target?: RefObject<HTMLElement | null>;
|
|
9
6
|
}
|
|
10
7
|
declare function useTapGesture(onActivate: (event: PointerEvent) => void, options?: UseTapGestureOptions): void;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"use-tap-gesture.d.ts","names":[],"sources":["../../../../src/ui/gesture/use-tap-gesture.ts"],"mappings":";;;
|
|
1
|
+
{"version":3,"file":"use-tap-gesture.d.ts","names":[],"sources":["../../../../src/ui/gesture/use-tap-gesture.ts"],"mappings":";;;UAQiB,6BAA6B,KAAK;EACjD,SAAS,UAAU;;iBAGL,cAAc,aAAa,OAAO,uBAAuB,UAAU"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"use-tap-gesture.js","names":[],"sources":["../../../../src/ui/gesture/use-tap-gesture.ts"],"sourcesContent":["import {
|
|
1
|
+
{"version":3,"file":"use-tap-gesture.js","names":[],"sources":["../../../../src/ui/gesture/use-tap-gesture.ts"],"sourcesContent":["import type { GestureProps } from '@videojs/core';\nimport { createTapGesture } from '@videojs/core/dom';\nimport type { RefObject } from 'react';\nimport { useEffect } from 'react';\n\nimport { useContainer } from '../../player/context';\nimport { useLatestRef } from '../../utils/use-latest-ref';\n\nexport interface UseTapGestureOptions extends Pick<GestureProps, 'pointer' | 'region' | 'disabled'> {\n target?: RefObject<HTMLElement | null>;\n}\n\nexport function useTapGesture(onActivate: (event: PointerEvent) => void, options?: UseTapGestureOptions): void {\n const { pointer, region, disabled = false, target } = options ?? {};\n const contextContainer = useContainer();\n const container = target?.current ?? contextContainer;\n const onActivateRef = useLatestRef(onActivate);\n\n useEffect(() => {\n if (!container || disabled) return;\n\n return createTapGesture(container, (event) => onActivateRef.current(event), { pointer, region });\n }, [container, disabled, pointer, region]);\n}\n"],"mappings":";;;;;AAYA,SAAgB,cAAc,YAA2C,SAAsC;CAC7G,MAAM,EAAE,SAAS,QAAQ,WAAW,OAAO,WAAW,WAAW,CAAC;CAClE,MAAM,mBAAmB,aAAa;CACtC,MAAM,YAAY,QAAQ,WAAW;CACrC,MAAM,gBAAgB,aAAa,UAAU;CAE7C,gBAAgB;EACd,IAAI,CAAC,aAAa,UAAU;EAE5B,OAAO,iBAAiB,YAAY,UAAU,cAAc,QAAQ,KAAK,GAAG;GAAE;GAAS;EAAO,CAAC;CACjG,GAAG;EAAC;EAAW;EAAU;EAAS;CAAM,CAAC;AAC3C"}
|
|
@@ -1,21 +1,15 @@
|
|
|
1
|
-
import { HotkeyActionName } from "@videojs/core/dom";
|
|
2
1
|
import { ReactNode } from "react";
|
|
2
|
+
import { HotkeyProps } from "@videojs/core";
|
|
3
3
|
//#region src/ui/hotkey/hotkey.d.ts
|
|
4
|
-
interface HotkeyProps {
|
|
5
|
-
|
|
6
|
-
action: HotkeyActionName | (string & {});
|
|
7
|
-
value?: number;
|
|
8
|
-
disabled?: boolean;
|
|
9
|
-
target?: 'player' | 'document';
|
|
10
|
-
}
|
|
11
|
-
declare function Hotkey({ keys, action, value, disabled, target }: HotkeyProps): ReactNode;
|
|
4
|
+
interface HotkeyProps$1 extends HotkeyProps {}
|
|
5
|
+
declare function Hotkey({ keys, action, value, disabled, target }: HotkeyProps$1): ReactNode;
|
|
12
6
|
declare namespace Hotkey {
|
|
13
|
-
type Props = HotkeyProps;
|
|
7
|
+
type Props = HotkeyProps$1;
|
|
14
8
|
}
|
|
15
9
|
/** @deprecated Use `HotkeyProps` instead. */
|
|
16
|
-
type MediaHotkeyProps = HotkeyProps;
|
|
10
|
+
type MediaHotkeyProps = HotkeyProps$1;
|
|
17
11
|
/** @deprecated Use `Hotkey` instead. */
|
|
18
12
|
declare const MediaHotkey: typeof Hotkey;
|
|
19
13
|
//#endregion
|
|
20
|
-
export { Hotkey, HotkeyProps, MediaHotkey, MediaHotkeyProps };
|
|
14
|
+
export { Hotkey, HotkeyProps$1 as HotkeyProps, MediaHotkey, MediaHotkeyProps };
|
|
21
15
|
//# sourceMappingURL=hotkey.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"hotkey.d.ts","names":[],"sources":["../../../../src/ui/hotkey/hotkey.tsx"],"mappings":";;;
|
|
1
|
+
{"version":3,"file":"hotkey.d.ts","names":[],"sources":["../../../../src/ui/hotkey/hotkey.tsx"],"mappings":";;;UAQiB,sBAAoB;iBAErB,SAAS,MAAM,QAAQ,OAAO,UAAU,UAAU,gBAAc;kBA0B/D;OACH,QAAQ;;;KAIV,mBAAmB;;cAGlB,oBAAW"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"hotkey.js","names":[],"sources":["../../../../src/ui/hotkey/hotkey.tsx"],"sourcesContent":["import type { AnyPlayerStore } from '@videojs/core/dom';\nimport { createHotkey,
|
|
1
|
+
{"version":3,"file":"hotkey.js","names":[],"sources":["../../../../src/ui/hotkey/hotkey.tsx"],"sourcesContent":["import type { HotkeyProps as CoreHotkeyProps } from '@videojs/core';\nimport type { AnyPlayerStore } from '@videojs/core/dom';\nimport { createHotkey, isHotkeyToggleAction, resolveHotkeyAction } from '@videojs/core/dom';\nimport type { ReactNode } from 'react';\nimport { useEffect } from 'react';\n\nimport { useContainer, usePlayer } from '../../player/context';\n\nexport interface HotkeyProps extends CoreHotkeyProps {}\n\nexport function Hotkey({ keys, action, value, disabled, target }: HotkeyProps): ReactNode {\n const store = usePlayer() as AnyPlayerStore;\n const container = useContainer();\n\n useEffect(() => {\n if (!container || !keys || !action || disabled) return;\n\n const resolver = resolveHotkeyAction(action);\n if (!resolver) return;\n\n return createHotkey(container, {\n keys,\n action,\n value,\n target,\n disabled,\n repeatable: !isHotkeyToggleAction(action),\n onActivate: (_event, key) => {\n resolver({ store, key, value });\n },\n });\n }, [container, store, keys, action, value, disabled, target]);\n\n return null;\n}\n\nexport namespace Hotkey {\n export type Props = HotkeyProps;\n}\n\n/** @deprecated Use `HotkeyProps` instead. */\nexport type MediaHotkeyProps = HotkeyProps;\n\n/** @deprecated Use `Hotkey` instead. */\nexport const MediaHotkey = Hotkey;\n"],"mappings":";;;;AAUA,SAAgB,OAAO,EAAE,MAAM,QAAQ,OAAO,UAAU,UAAkC;CACxF,MAAM,QAAQ,UAAU;CACxB,MAAM,YAAY,aAAa;CAE/B,gBAAgB;EACd,IAAI,CAAC,aAAa,CAAC,QAAQ,CAAC,UAAU,UAAU;EAEhD,MAAM,WAAW,oBAAoB,MAAM;EAC3C,IAAI,CAAC,UAAU;EAEf,OAAO,aAAa,WAAW;GAC7B;GACA;GACA;GACA;GACA;GACA,YAAY,CAAC,qBAAqB,MAAM;GACxC,aAAa,QAAQ,QAAQ;IAC3B,SAAS;KAAE;KAAO;KAAK;IAAM,CAAC;GAChC;EACF,CAAC;CACH,GAAG;EAAC;EAAW;EAAO;EAAM;EAAQ;EAAO;EAAU;CAAM,CAAC;CAE5D,OAAO;AACT;;AAUA,MAAa,cAAc"}
|
|
@@ -22,12 +22,17 @@ function useMenuRadioGroupContext() {
|
|
|
22
22
|
if (!ctx) throw new Error("Menu.RadioItem must be used within a Menu.RadioGroup");
|
|
23
23
|
return ctx;
|
|
24
24
|
}
|
|
25
|
+
const MenuRadioItemContext = createContext(false);
|
|
26
|
+
const MenuRadioItemContextProvider = MenuRadioItemContext.Provider;
|
|
27
|
+
function useOptionalMenuRadioItemContext() {
|
|
28
|
+
return useContext(MenuRadioItemContext);
|
|
29
|
+
}
|
|
25
30
|
const MenuTriggerChildContext = createContext(false);
|
|
26
31
|
const MenuTriggerChildContextProvider = MenuTriggerChildContext.Provider;
|
|
27
32
|
function useOptionalMenuTriggerChildContext() {
|
|
28
33
|
return useContext(MenuTriggerChildContext);
|
|
29
34
|
}
|
|
30
35
|
//#endregion
|
|
31
|
-
export { MenuContextProvider, MenuGroupContextProvider, MenuRadioGroupContextProvider, MenuTriggerChildContextProvider, useMenuContext, useMenuGroupContext, useMenuRadioGroupContext, useOptionalMenuContext, useOptionalMenuTriggerChildContext };
|
|
36
|
+
export { MenuContextProvider, MenuGroupContextProvider, MenuRadioGroupContextProvider, MenuRadioItemContextProvider, MenuTriggerChildContextProvider, useMenuContext, useMenuGroupContext, useMenuRadioGroupContext, useOptionalMenuContext, useOptionalMenuRadioItemContext, useOptionalMenuTriggerChildContext };
|
|
32
37
|
|
|
33
38
|
//# sourceMappingURL=context.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"context.js","names":[],"sources":["../../../../src/ui/menu/context.tsx"],"sourcesContent":["import type { MenuCore, MenuState, StateAttrMap } from '@videojs/core';\nimport type { MediaContainer, MenuApi, PositioningBoundary } from '@videojs/core/dom';\nimport { createContext, useContext } from 'react';\n\nexport interface MenuContextValue {\n core: MenuCore;\n menu: MenuApi;\n parent: MenuContextValue | null;\n state: MenuState;\n preferredSide: MenuState['side'];\n setPositionedSide: (side: MenuState['side']) => void;\n stateAttrMap: StateAttrMap<MenuState>;\n contentId: string;\n anchorName: string;\n boundary: PositioningBoundary;\n container: MediaContainer | null;\n}\n\nconst MenuContext = createContext<MenuContextValue | null>(null);\n\nexport const MenuContextProvider = MenuContext.Provider;\n\nexport function useMenuContext(): MenuContextValue {\n const ctx = useContext(MenuContext);\n if (!ctx) throw new Error('Menu compound components must be used within a Menu.Root');\n return ctx;\n}\n\nexport function useOptionalMenuContext(): MenuContextValue | null {\n return useContext(MenuContext);\n}\n\n// ---------------------------------------------------------------------------\n// Group context — shared by group-like parts and MenuGroupLabel\n// ---------------------------------------------------------------------------\n\nexport interface MenuGroupContextValue {\n registerLabel: (id: string) => () => void;\n}\n\nconst MenuGroupContext = createContext<MenuGroupContextValue | null>(null);\n\nexport const MenuGroupContextProvider = MenuGroupContext.Provider;\n\nexport function useMenuGroupContext(): MenuGroupContextValue | null {\n return useContext(MenuGroupContext);\n}\n\n// ---------------------------------------------------------------------------\n// Radio group context — shared between MenuRadioGroup and MenuRadioItem\n// ---------------------------------------------------------------------------\n\nexport interface MenuRadioGroupContextValue {\n value: string;\n onValueChange: (value: string) => void;\n}\n\nconst MenuRadioGroupContext = createContext<MenuRadioGroupContextValue | null>(null);\n\nexport const MenuRadioGroupContextProvider = MenuRadioGroupContext.Provider;\n\nexport function useMenuRadioGroupContext(): MenuRadioGroupContextValue {\n const ctx = useContext(MenuRadioGroupContext);\n if (!ctx) throw new Error('Menu.RadioItem must be used within a Menu.RadioGroup');\n return ctx;\n}\n\n// ---------------------------------------------------------------------------\n// Root trigger render context — provided by Menu.Trigger for render children.\n// ---------------------------------------------------------------------------\n\nconst MenuTriggerChildContext = createContext(false);\n\nexport const MenuTriggerChildContextProvider = MenuTriggerChildContext.Provider;\n\nexport function useOptionalMenuTriggerChildContext(): boolean {\n return useContext(MenuTriggerChildContext);\n}\n"],"mappings":";;AAkBA,MAAM,cAAc,cAAuC,IAAI;AAE/D,MAAa,sBAAsB,YAAY;AAE/C,SAAgB,iBAAmC;CACjD,MAAM,MAAM,WAAW,WAAW;CAClC,IAAI,CAAC,KAAK,MAAM,IAAI,MAAM,0DAA0D;CACpF,OAAO;AACT;AAEA,SAAgB,yBAAkD;CAChE,OAAO,WAAW,WAAW;AAC/B;AAUA,MAAM,mBAAmB,cAA4C,IAAI;AAEzE,MAAa,2BAA2B,iBAAiB;AAEzD,SAAgB,sBAAoD;CAClE,OAAO,WAAW,gBAAgB;AACpC;AAWA,MAAM,wBAAwB,cAAiD,IAAI;AAEnF,MAAa,gCAAgC,sBAAsB;AAEnE,SAAgB,2BAAuD;CACrE,MAAM,MAAM,WAAW,qBAAqB;CAC5C,IAAI,CAAC,KAAK,MAAM,IAAI,MAAM,sDAAsD;CAChF,OAAO;AACT;AAMA,MAAM,0BAA0B,cAAc,KAAK;AAEnD,MAAa,kCAAkC,wBAAwB;AAEvE,SAAgB,qCAA8C;CAC5D,OAAO,WAAW,uBAAuB;AAC3C"}
|
|
1
|
+
{"version":3,"file":"context.js","names":[],"sources":["../../../../src/ui/menu/context.tsx"],"sourcesContent":["import type { MenuCore, MenuState, StateAttrMap } from '@videojs/core';\nimport type { MediaContainer, MenuApi, PositioningBoundary } from '@videojs/core/dom';\nimport { createContext, useContext } from 'react';\n\nexport interface MenuContextValue {\n core: MenuCore;\n menu: MenuApi;\n parent: MenuContextValue | null;\n state: MenuState;\n preferredSide: MenuState['side'];\n setPositionedSide: (side: MenuState['side']) => void;\n stateAttrMap: StateAttrMap<MenuState>;\n contentId: string;\n anchorName: string;\n boundary: PositioningBoundary;\n container: MediaContainer | null;\n}\n\nconst MenuContext = createContext<MenuContextValue | null>(null);\n\nexport const MenuContextProvider = MenuContext.Provider;\n\nexport function useMenuContext(): MenuContextValue {\n const ctx = useContext(MenuContext);\n if (!ctx) throw new Error('Menu compound components must be used within a Menu.Root');\n return ctx;\n}\n\nexport function useOptionalMenuContext(): MenuContextValue | null {\n return useContext(MenuContext);\n}\n\n// ---------------------------------------------------------------------------\n// Group context — shared by group-like parts and MenuGroupLabel\n// ---------------------------------------------------------------------------\n\nexport interface MenuGroupContextValue {\n registerLabel: (id: string) => () => void;\n}\n\nconst MenuGroupContext = createContext<MenuGroupContextValue | null>(null);\n\nexport const MenuGroupContextProvider = MenuGroupContext.Provider;\n\nexport function useMenuGroupContext(): MenuGroupContextValue | null {\n return useContext(MenuGroupContext);\n}\n\n// ---------------------------------------------------------------------------\n// Radio group context — shared between MenuRadioGroup and MenuRadioItem\n// ---------------------------------------------------------------------------\n\nexport interface MenuRadioGroupContextValue {\n value: string;\n onValueChange: (value: string) => void;\n}\n\nconst MenuRadioGroupContext = createContext<MenuRadioGroupContextValue | null>(null);\n\nexport const MenuRadioGroupContextProvider = MenuRadioGroupContext.Provider;\n\nexport function useMenuRadioGroupContext(): MenuRadioGroupContextValue {\n const ctx = useContext(MenuRadioGroupContext);\n if (!ctx) throw new Error('Menu.RadioItem must be used within a Menu.RadioGroup');\n return ctx;\n}\n\nconst MenuRadioItemContext = createContext(false);\n\nexport const MenuRadioItemContextProvider = MenuRadioItemContext.Provider;\n\nexport function useOptionalMenuRadioItemContext(): boolean {\n return useContext(MenuRadioItemContext);\n}\n\n// ---------------------------------------------------------------------------\n// Root trigger render context — provided by Menu.Trigger for render children.\n// ---------------------------------------------------------------------------\n\nconst MenuTriggerChildContext = createContext(false);\n\nexport const MenuTriggerChildContextProvider = MenuTriggerChildContext.Provider;\n\nexport function useOptionalMenuTriggerChildContext(): boolean {\n return useContext(MenuTriggerChildContext);\n}\n"],"mappings":";;AAkBA,MAAM,cAAc,cAAuC,IAAI;AAE/D,MAAa,sBAAsB,YAAY;AAE/C,SAAgB,iBAAmC;CACjD,MAAM,MAAM,WAAW,WAAW;CAClC,IAAI,CAAC,KAAK,MAAM,IAAI,MAAM,0DAA0D;CACpF,OAAO;AACT;AAEA,SAAgB,yBAAkD;CAChE,OAAO,WAAW,WAAW;AAC/B;AAUA,MAAM,mBAAmB,cAA4C,IAAI;AAEzE,MAAa,2BAA2B,iBAAiB;AAEzD,SAAgB,sBAAoD;CAClE,OAAO,WAAW,gBAAgB;AACpC;AAWA,MAAM,wBAAwB,cAAiD,IAAI;AAEnF,MAAa,gCAAgC,sBAAsB;AAEnE,SAAgB,2BAAuD;CACrE,MAAM,MAAM,WAAW,qBAAqB;CAC5C,IAAI,CAAC,KAAK,MAAM,IAAI,MAAM,sDAAsD;CAChF,OAAO;AACT;AAEA,MAAM,uBAAuB,cAAc,KAAK;AAEhD,MAAa,+BAA+B,qBAAqB;AAEjE,SAAgB,kCAA2C;CACzD,OAAO,WAAW,oBAAoB;AACxC;AAMA,MAAM,0BAA0B,cAAc,KAAK;AAEnD,MAAa,kCAAkC,wBAAwB;AAEvE,SAAgB,qCAA8C;CAC5D,OAAO,WAAW,uBAAuB;AAC3C"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"menu-item-indicator.d.ts","names":[],"sources":["../../../../src/ui/menu/menu-item-indicator.tsx"],"mappings":";;;UAOiB,+BAA+B,yBAAyB;;EAEvE;;EAEA;;;cAIW,mCAAiB,0BAAA,KAAA,iDAAA,cAAA;
|
|
1
|
+
{"version":3,"file":"menu-item-indicator.d.ts","names":[],"sources":["../../../../src/ui/menu/menu-item-indicator.tsx"],"mappings":";;;UAOiB,+BAA+B,yBAAyB;;EAEvE;;EAEA;;;cAIW,mCAAiB,0BAAA,KAAA,iDAAA,cAAA;kBAqBb;OACH,QAAQ;OACR,QAAQ"}
|
|
@@ -1,11 +1,12 @@
|
|
|
1
1
|
import { renderElement } from "../../utils/use-render.js";
|
|
2
|
-
import { useMenuContext } from "./context.js";
|
|
2
|
+
import { useMenuContext, useOptionalMenuRadioItemContext } from "./context.js";
|
|
3
3
|
import { forwardRef } from "react";
|
|
4
4
|
//#region src/ui/menu/menu-item-indicator.tsx
|
|
5
5
|
/** Visual indicator for a checked state. Only renders when `checked` is `true` (or `forceMount` is set). */
|
|
6
6
|
const MenuItemIndicator = forwardRef(function MenuItemIndicator({ render, className, style, checked, forceMount = false, ...elementProps }, forwardedRef) {
|
|
7
7
|
const { state } = useMenuContext();
|
|
8
|
-
|
|
8
|
+
const itemChecked = useOptionalMenuRadioItemContext();
|
|
9
|
+
if (!(checked ?? itemChecked) && !forceMount) return null;
|
|
9
10
|
return renderElement("span", {
|
|
10
11
|
render,
|
|
11
12
|
className,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"menu-item-indicator.js","names":[],"sources":["../../../../src/ui/menu/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 } 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\n if (!
|
|
1
|
+
{"version":3,"file":"menu-item-indicator.js","names":[],"sources":["../../../../src/ui/menu/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\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;CAGpD,IAAI,EAFoB,WAAW,gBAEX,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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"menu-radio-item.d.ts","names":[],"sources":["../../../../src/ui/menu/menu-radio-item.tsx"],"mappings":";;;UAQiB,2BAA2B,wBAAwB;;EAElE;;EAEA;;;cAIW,+BAAa,0BAAA,KAAA,6CAAA,cAAA;
|
|
1
|
+
{"version":3,"file":"menu-radio-item.d.ts","names":[],"sources":["../../../../src/ui/menu/menu-radio-item.tsx"],"mappings":";;;UAQiB,2BAA2B,wBAAwB;;EAElE;;EAEA;;;cAIW,+BAAa,0BAAA,KAAA,6CAAA,cAAA;kBAwDT;OACH,QAAQ;OACR,QAAQ"}
|
|
@@ -1,7 +1,8 @@
|
|
|
1
1
|
import { renderElement } from "../../utils/use-render.js";
|
|
2
|
-
import { useMenuContext, useMenuRadioGroupContext } from "./context.js";
|
|
2
|
+
import { MenuRadioItemContextProvider, useMenuContext, useMenuRadioGroupContext } from "./context.js";
|
|
3
3
|
import { completeMenuItemSelection } from "@videojs/core/dom";
|
|
4
4
|
import { forwardRef, useCallback, useEffect, useRef } from "react";
|
|
5
|
+
import { jsx } from "react/jsx-runtime";
|
|
5
6
|
//#region src/ui/menu/menu-radio-item.tsx
|
|
6
7
|
/** A radio-style menu item. Renders a `<div>` with `role="menuitemradio"`. */
|
|
7
8
|
const MenuRadioItem = forwardRef(function MenuRadioItem({ render, className, style, value, disabled, onClick, ...elementProps }, forwardedRef) {
|
|
@@ -35,20 +36,23 @@ const MenuRadioItem = forwardRef(function MenuRadioItem({ render, className, sty
|
|
|
35
36
|
pointer: true
|
|
36
37
|
});
|
|
37
38
|
}, [menu, disabled]);
|
|
38
|
-
return
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
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
|
+
})
|
|
52
56
|
});
|
|
53
57
|
});
|
|
54
58
|
//#endregion
|