@kuzenbo/core 0.0.4 → 0.0.5
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/avatar-CXhwmJgG.js +65 -0
- package/dist/avatar-CXhwmJgG.js.map +1 -0
- package/dist/{avatar-image-Ce26D2fb.d.ts → avatar-DpiupAAM.d.ts} +35 -2
- package/dist/avatar-DpiupAAM.d.ts.map +1 -0
- package/dist/badge-BKRm6jL7.js +58 -0
- package/dist/badge-BKRm6jL7.js.map +1 -0
- package/dist/button-nAbTNrxA.d.ts +78 -0
- package/dist/button-nAbTNrxA.d.ts.map +1 -0
- package/dist/{dialog-trigger-BUF3elAP.js → dialog-CD5lfQA9.js} +33 -10
- package/dist/dialog-CD5lfQA9.js.map +1 -0
- package/dist/{dialog-viewport-Ce1huyAI.d.ts → dialog-DEkdr-9K.d.ts} +64 -2
- package/dist/dialog-DEkdr-9K.d.ts.map +1 -0
- package/dist/{dropdown-menu-trigger-COnFGfDa.js → dropdown-menu-BJi-V71O.js} +137 -101
- package/dist/dropdown-menu-BJi-V71O.js.map +1 -0
- package/dist/{dropdown-menu-trigger-BpgtLUvf.d.ts → dropdown-menu-Bpj576m0.d.ts} +259 -123
- package/dist/dropdown-menu-Bpj576m0.d.ts.map +1 -0
- package/dist/input-Ex9ZRqbo.js +38 -0
- package/dist/input-Ex9ZRqbo.js.map +1 -0
- package/dist/input-WWoBCgxe.d.ts +46 -0
- package/dist/input-WWoBCgxe.d.ts.map +1 -0
- package/dist/{input-group-textarea-B-rP98r5.js → input-group-CjcHP0L4.js} +50 -31
- package/dist/input-group-CjcHP0L4.js.map +1 -0
- package/dist/provider.js +2 -2
- package/dist/scroll-bar-C4qEUKlT.js.map +1 -1
- package/dist/separator-C8Qw2ADs.d.ts +13 -0
- package/dist/separator-C8Qw2ADs.d.ts.map +1 -0
- package/dist/{sheet-trigger-D7neoTF5.js → sheet-imSHXfFH.js} +29 -10
- package/dist/sheet-imSHXfFH.js.map +1 -0
- package/dist/{size-context-BjRwqlSg.js → size-context-CvLl3pMC.js} +3 -3
- package/dist/size-context-CvLl3pMC.js.map +1 -0
- package/dist/size-context-DXfCAlWF.d.ts.map +1 -1
- package/dist/size-provider-18EvJgDT.js.map +1 -1
- package/dist/size-provider-Bd2C6gKd.d.ts.map +1 -1
- package/dist/size-system-BTsMqZRQ.js +99 -0
- package/dist/size-system-BTsMqZRQ.js.map +1 -0
- package/dist/size-system-wzOLSuax.d.ts.map +1 -1
- package/dist/size.js +2 -2
- package/dist/{slider-root-presentation-ChJHPMIV.js → slider-root-presentation-B6OO_iCT.js} +19 -19
- package/dist/slider-root-presentation-B6OO_iCT.js.map +1 -0
- package/dist/{slider-value-Db8SCu0c.d.ts → slider-style-tokens-CZezJilZ.d.ts} +55 -55
- package/dist/slider-style-tokens-CZezJilZ.d.ts.map +1 -0
- package/dist/textarea-C8dsnn8D.d.ts +37 -0
- package/dist/textarea-C8dsnn8D.d.ts.map +1 -0
- package/dist/textarea-CkiM1N_I.js +39 -0
- package/dist/textarea-CkiM1N_I.js.map +1 -0
- package/dist/toggle-CxkIncmZ.d.ts +53 -0
- package/dist/toggle-CxkIncmZ.d.ts.map +1 -0
- package/dist/{tooltip-trigger-qXw-_nbh.js → tooltip-D0BEpCQx.js} +38 -13
- package/dist/tooltip-D0BEpCQx.js.map +1 -0
- package/dist/{tooltip-viewport-csA6luqI.d.ts → tooltip-DbJxt69l.d.ts} +61 -13
- package/dist/tooltip-DbJxt69l.d.ts.map +1 -0
- package/dist/ui/accordion.d.ts +4 -4
- package/dist/ui/accordion.d.ts.map +1 -1
- package/dist/ui/accordion.js +53 -52
- package/dist/ui/accordion.js.map +1 -1
- package/dist/ui/affix.d.ts +3 -2
- package/dist/ui/affix.d.ts.map +1 -1
- package/dist/ui/affix.js +8 -7
- package/dist/ui/affix.js.map +1 -1
- package/dist/ui/alert-dialog.d.ts +3 -1
- package/dist/ui/alert-dialog.d.ts.map +1 -1
- package/dist/ui/alert-dialog.js +10 -9
- package/dist/ui/alert-dialog.js.map +1 -1
- package/dist/ui/alert.d.ts +32 -32
- package/dist/ui/alert.d.ts.map +1 -1
- package/dist/ui/alert.js +86 -86
- package/dist/ui/alert.js.map +1 -1
- package/dist/ui/announcement.d.ts.map +1 -1
- package/dist/ui/announcement.js +5 -3
- package/dist/ui/announcement.js.map +1 -1
- package/dist/ui/aspect-ratio.d.ts.map +1 -1
- package/dist/ui/aspect-ratio.js.map +1 -1
- package/dist/ui/autocomplete.d.ts +74 -74
- package/dist/ui/autocomplete.d.ts.map +1 -1
- package/dist/ui/autocomplete.js +55 -53
- package/dist/ui/autocomplete.js.map +1 -1
- package/dist/ui/avatar.d.ts +2 -39
- package/dist/ui/avatar.js +2 -24
- package/dist/ui/badge.d.ts +28 -28
- package/dist/ui/badge.d.ts.map +1 -1
- package/dist/ui/badge.js +2 -54
- package/dist/ui/breadcrumb.d.ts +64 -64
- package/dist/ui/breadcrumb.d.ts.map +1 -1
- package/dist/ui/breadcrumb.js +47 -45
- package/dist/ui/breadcrumb.js.map +1 -1
- package/dist/ui/button-group.d.ts +34 -34
- package/dist/ui/button-group.d.ts.map +1 -1
- package/dist/ui/button-group.js +29 -28
- package/dist/ui/button-group.js.map +1 -1
- package/dist/ui/button.d.ts +2 -78
- package/dist/ui/button.js +42 -42
- package/dist/ui/button.js.map +1 -1
- package/dist/ui/card.d.ts.map +1 -1
- package/dist/ui/card.js +6 -6
- package/dist/ui/card.js.map +1 -1
- package/dist/ui/carousel.d.ts +1 -1
- package/dist/ui/carousel.d.ts.map +1 -1
- package/dist/ui/carousel.js +36 -17
- package/dist/ui/carousel.js.map +1 -1
- package/dist/ui/checkbox-group.d.ts.map +1 -1
- package/dist/ui/checkbox-group.js.map +1 -1
- package/dist/ui/checkbox.d.ts +20 -20
- package/dist/ui/checkbox.js +13 -13
- package/dist/ui/checkbox.js.map +1 -1
- package/dist/ui/code.d.ts.map +1 -1
- package/dist/ui/code.js +5 -5
- package/dist/ui/code.js.map +1 -1
- package/dist/ui/collapsible.js +1 -1
- package/dist/ui/collapsible.js.map +1 -1
- package/dist/ui/combobox.d.ts +107 -107
- package/dist/ui/combobox.d.ts.map +1 -1
- package/dist/ui/combobox.js +88 -87
- package/dist/ui/combobox.js.map +1 -1
- package/dist/ui/command.d.ts +57 -58
- package/dist/ui/command.d.ts.map +1 -1
- package/dist/ui/command.js +54 -64
- package/dist/ui/command.js.map +1 -1
- package/dist/ui/container.d.ts.map +1 -1
- package/dist/ui/container.js.map +1 -1
- package/dist/ui/context-menu.d.ts +132 -132
- package/dist/ui/context-menu.d.ts.map +1 -1
- package/dist/ui/context-menu.js +100 -98
- package/dist/ui/context-menu.js.map +1 -1
- package/dist/ui/copy-button.d.ts +1 -3
- package/dist/ui/copy-button.d.ts.map +1 -1
- package/dist/ui/copy-button.js +12 -13
- package/dist/ui/copy-button.js.map +1 -1
- package/dist/ui/dialog.d.ts +2 -66
- package/dist/ui/dialog.js +2 -24
- package/dist/ui/drawer.d.ts +91 -91
- package/dist/ui/drawer.d.ts.map +1 -1
- package/dist/ui/drawer.js +68 -66
- package/dist/ui/drawer.js.map +1 -1
- package/dist/ui/dropdown-menu.d.ts +3 -144
- package/dist/ui/dropdown-menu.js +2 -39
- package/dist/ui/dropzone.d.ts +55 -55
- package/dist/ui/dropzone.d.ts.map +1 -1
- package/dist/ui/dropzone.js +77 -72
- package/dist/ui/dropzone.js.map +1 -1
- package/dist/ui/emoji-picker.d.ts +79 -79
- package/dist/ui/emoji-picker.d.ts.map +1 -1
- package/dist/ui/emoji-picker.js +92 -87
- package/dist/ui/emoji-picker.js.map +1 -1
- package/dist/ui/empty.d.ts +61 -59
- package/dist/ui/empty.d.ts.map +1 -1
- package/dist/ui/empty.js +47 -44
- package/dist/ui/empty.js.map +1 -1
- package/dist/ui/field.d.ts +11 -11
- package/dist/ui/field.d.ts.map +1 -1
- package/dist/ui/field.js +9 -7
- package/dist/ui/field.js.map +1 -1
- package/dist/ui/fieldset.d.ts.map +1 -1
- package/dist/ui/fieldset.js.map +1 -1
- package/dist/ui/form.d.ts +8 -8
- package/dist/ui/form.d.ts.map +1 -1
- package/dist/ui/form.js.map +1 -1
- package/dist/ui/input-group.d.ts +35 -35
- package/dist/ui/input-group.d.ts.map +1 -1
- package/dist/ui/input-group.js +2 -28
- package/dist/ui/input-otp.d.ts +36 -36
- package/dist/ui/input-otp.d.ts.map +1 -1
- package/dist/ui/input-otp.js +29 -28
- package/dist/ui/input-otp.js.map +1 -1
- package/dist/ui/input.d.ts +2 -46
- package/dist/ui/input.js +2 -34
- package/dist/ui/item.d.ts +20 -20
- package/dist/ui/item.d.ts.map +1 -1
- package/dist/ui/item.js +22 -22
- package/dist/ui/item.js.map +1 -1
- package/dist/ui/kbd.d.ts.map +1 -1
- package/dist/ui/kbd.js +8 -8
- package/dist/ui/kbd.js.map +1 -1
- package/dist/ui/label.d.ts.map +1 -1
- package/dist/ui/label.js.map +1 -1
- package/dist/ui/marquee.d.ts.map +1 -1
- package/dist/ui/marquee.js +1 -1
- package/dist/ui/marquee.js.map +1 -1
- package/dist/ui/menubar.d.ts +133 -134
- package/dist/ui/menubar.d.ts.map +1 -1
- package/dist/ui/menubar.js +82 -81
- package/dist/ui/menubar.js.map +1 -1
- package/dist/ui/meter.d.ts.map +1 -1
- package/dist/ui/meter.js.map +1 -1
- package/dist/ui/navigation-list.d.ts +226 -226
- package/dist/ui/navigation-list.d.ts.map +1 -1
- package/dist/ui/navigation-list.js +240 -235
- package/dist/ui/navigation-list.js.map +1 -1
- package/dist/ui/navigation-menu.d.ts +82 -82
- package/dist/ui/navigation-menu.d.ts.map +1 -1
- package/dist/ui/navigation-menu.js +70 -67
- package/dist/ui/navigation-menu.js.map +1 -1
- package/dist/ui/number-field.d.ts +34 -34
- package/dist/ui/number-field.d.ts.map +1 -1
- package/dist/ui/number-field.js +24 -23
- package/dist/ui/number-field.js.map +1 -1
- package/dist/ui/pagination.d.ts +42 -42
- package/dist/ui/pagination.d.ts.map +1 -1
- package/dist/ui/pagination.js +43 -41
- package/dist/ui/pagination.js.map +1 -1
- package/dist/ui/pill.d.ts +2 -3
- package/dist/ui/pill.d.ts.map +1 -1
- package/dist/ui/pill.js +34 -23
- package/dist/ui/pill.js.map +1 -1
- package/dist/ui/popover.d.ts +13 -11
- package/dist/ui/popover.d.ts.map +1 -1
- package/dist/ui/popover.js +17 -14
- package/dist/ui/popover.js.map +1 -1
- package/dist/ui/portal.d.ts.map +1 -1
- package/dist/ui/portal.js +52 -11
- package/dist/ui/portal.js.map +1 -1
- package/dist/ui/preview-card.js +5 -5
- package/dist/ui/preview-card.js.map +1 -1
- package/dist/ui/progress.js.map +1 -1
- package/dist/ui/qr-code.d.ts.map +1 -1
- package/dist/ui/qr-code.js +7 -7
- package/dist/ui/qr-code.js.map +1 -1
- package/dist/ui/radio-group.d.ts +22 -22
- package/dist/ui/radio-group.js +15 -15
- package/dist/ui/radio-group.js.map +1 -1
- package/dist/ui/range-slider.d.ts +1 -1
- package/dist/ui/range-slider.d.ts.map +1 -1
- package/dist/ui/range-slider.js +4 -7
- package/dist/ui/range-slider.js.map +1 -1
- package/dist/ui/rating.d.ts +35 -35
- package/dist/ui/rating.d.ts.map +1 -1
- package/dist/ui/rating.js +55 -46
- package/dist/ui/rating.js.map +1 -1
- package/dist/ui/resizable.d.ts.map +1 -1
- package/dist/ui/resizable.js +2 -2
- package/dist/ui/resizable.js.map +1 -1
- package/dist/ui/scroll-area.js.map +1 -1
- package/dist/ui/select.d.ts +87 -87
- package/dist/ui/select.d.ts.map +1 -1
- package/dist/ui/select.js +85 -84
- package/dist/ui/select.js.map +1 -1
- package/dist/ui/separator.d.ts +2 -13
- package/dist/ui/separator.js.map +1 -1
- package/dist/ui/sheet.d.ts.map +1 -1
- package/dist/ui/sheet.js +2 -24
- package/dist/ui/sidebar.d.ts +73 -74
- package/dist/ui/sidebar.d.ts.map +1 -1
- package/dist/ui/sidebar.js +85 -84
- package/dist/ui/sidebar.js.map +1 -1
- package/dist/ui/skeleton.d.ts.map +1 -1
- package/dist/ui/skeleton.js +1 -1
- package/dist/ui/skeleton.js.map +1 -1
- package/dist/ui/slider.d.ts +1 -1
- package/dist/ui/slider.d.ts.map +1 -1
- package/dist/ui/slider.js +3 -1
- package/dist/ui/slider.js.map +1 -1
- package/dist/ui/spacer.d.ts.map +1 -1
- package/dist/ui/spacer.js +2 -2
- package/dist/ui/spacer.js.map +1 -1
- package/dist/ui/spinner.d.ts.map +1 -1
- package/dist/ui/spinner.js +2 -2
- package/dist/ui/spinner.js.map +1 -1
- package/dist/ui/switch.d.ts +11 -11
- package/dist/ui/switch.js +7 -7
- package/dist/ui/switch.js.map +1 -1
- package/dist/ui/table.d.ts +60 -60
- package/dist/ui/table.d.ts.map +1 -1
- package/dist/ui/table.js +52 -46
- package/dist/ui/table.js.map +1 -1
- package/dist/ui/tabs.d.ts +25 -25
- package/dist/ui/tabs.d.ts.map +1 -1
- package/dist/ui/tabs.js +75 -68
- package/dist/ui/tabs.js.map +1 -1
- package/dist/ui/textarea.d.ts +2 -37
- package/dist/ui/textarea.js +2 -35
- package/dist/ui/theme-icon.d.ts +30 -30
- package/dist/ui/theme-icon.d.ts.map +1 -1
- package/dist/ui/theme-icon.js +22 -22
- package/dist/ui/theme-icon.js.map +1 -1
- package/dist/ui/timeline.d.ts +6 -6
- package/dist/ui/timeline.d.ts.map +1 -1
- package/dist/ui/timeline.js +163 -163
- package/dist/ui/timeline.js.map +1 -1
- package/dist/ui/toggle-group.d.ts +32 -32
- package/dist/ui/toggle-group.d.ts.map +1 -1
- package/dist/ui/toggle-group.js +22 -16
- package/dist/ui/toggle-group.js.map +1 -1
- package/dist/ui/toggle.d.ts +2 -53
- package/dist/ui/toggle.js +15 -15
- package/dist/ui/toggle.js.map +1 -1
- package/dist/ui/toolbar.d.ts +54 -54
- package/dist/ui/toolbar.d.ts.map +1 -1
- package/dist/ui/toolbar.js +43 -40
- package/dist/ui/toolbar.js.map +1 -1
- package/dist/ui/tooltip.d.ts +2 -54
- package/dist/ui/tooltip.js +2 -28
- package/dist/ui/typography.d.ts +50 -36
- package/dist/ui/typography.d.ts.map +1 -1
- package/dist/ui/typography.js +28 -17
- package/dist/ui/typography.js.map +1 -1
- package/package.json +15 -15
- package/dist/avatar-image-BQ_NEKH4.js +0 -47
- package/dist/avatar-image-BQ_NEKH4.js.map +0 -1
- package/dist/avatar-image-Ce26D2fb.d.ts.map +0 -1
- package/dist/dialog-trigger-BUF3elAP.js.map +0 -1
- package/dist/dialog-viewport-Ce1huyAI.d.ts.map +0 -1
- package/dist/dropdown-menu-trigger-BpgtLUvf.d.ts.map +0 -1
- package/dist/dropdown-menu-trigger-COnFGfDa.js.map +0 -1
- package/dist/input-group-textarea-B-rP98r5.js.map +0 -1
- package/dist/sheet-trigger-D7neoTF5.js.map +0 -1
- package/dist/size-context-BjRwqlSg.js.map +0 -1
- package/dist/size-system-DTXmtQXw.js +0 -47
- package/dist/size-system-DTXmtQXw.js.map +0 -1
- package/dist/slider-root-presentation-ChJHPMIV.js.map +0 -1
- package/dist/slider-value-Db8SCu0c.d.ts.map +0 -1
- package/dist/tooltip-trigger-qXw-_nbh.js.map +0 -1
- package/dist/tooltip-viewport-csA6luqI.d.ts.map +0 -1
- package/dist/ui/avatar.d.ts.map +0 -1
- package/dist/ui/avatar.js.map +0 -1
- package/dist/ui/badge.js.map +0 -1
- package/dist/ui/button.d.ts.map +0 -1
- package/dist/ui/dialog.d.ts.map +0 -1
- package/dist/ui/dialog.js.map +0 -1
- package/dist/ui/dropdown-menu.d.ts.map +0 -1
- package/dist/ui/dropdown-menu.js.map +0 -1
- package/dist/ui/input-group.js.map +0 -1
- package/dist/ui/input.d.ts.map +0 -1
- package/dist/ui/input.js.map +0 -1
- package/dist/ui/separator.d.ts.map +0 -1
- package/dist/ui/sheet.js.map +0 -1
- package/dist/ui/textarea.d.ts.map +0 -1
- package/dist/ui/textarea.js.map +0 -1
- package/dist/ui/toggle.d.ts.map +0 -1
- package/dist/ui/tooltip.d.ts.map +0 -1
- package/dist/ui/tooltip.js.map +0 -1
- package/dist/use-badge-default-props-8d9wPL0k.js +0 -8
- package/dist/use-badge-default-props-8d9wPL0k.js.map +0 -1
- package/dist/use-input-default-props-B6VgKXGM.js +0 -8
- package/dist/use-input-default-props-B6VgKXGM.js.map +0 -1
- package/dist/use-textarea-default-props-7MlOxkDO.js +0 -8
- package/dist/use-textarea-default-props-7MlOxkDO.js.map +0 -1
|
@@ -0,0 +1,99 @@
|
|
|
1
|
+
import { tv } from "tailwind-variants";
|
|
2
|
+
|
|
3
|
+
//#region src/ui/shared/size/size-system.ts
|
|
4
|
+
const UI_SIZE_ORDER = [
|
|
5
|
+
"xs",
|
|
6
|
+
"sm",
|
|
7
|
+
"md",
|
|
8
|
+
"lg",
|
|
9
|
+
"xl"
|
|
10
|
+
];
|
|
11
|
+
const fieldHeightVariants = tv({
|
|
12
|
+
defaultVariants: { size: "md" },
|
|
13
|
+
variants: { size: {
|
|
14
|
+
lg: "h-10",
|
|
15
|
+
md: "h-9",
|
|
16
|
+
sm: "h-8",
|
|
17
|
+
xl: "h-11",
|
|
18
|
+
xs: "h-6"
|
|
19
|
+
} }
|
|
20
|
+
});
|
|
21
|
+
const rowHeightVariants = tv({
|
|
22
|
+
defaultVariants: { size: "md" },
|
|
23
|
+
variants: { size: {
|
|
24
|
+
lg: "h-9",
|
|
25
|
+
md: "h-8",
|
|
26
|
+
sm: "h-7",
|
|
27
|
+
xl: "h-10",
|
|
28
|
+
xs: "h-6"
|
|
29
|
+
} }
|
|
30
|
+
});
|
|
31
|
+
const compactVisualVariants = tv({
|
|
32
|
+
defaultVariants: { size: "md" },
|
|
33
|
+
variants: { size: {
|
|
34
|
+
lg: "size-[18px]",
|
|
35
|
+
md: "size-4",
|
|
36
|
+
sm: "size-3.5",
|
|
37
|
+
xl: "size-5",
|
|
38
|
+
xs: "size-3"
|
|
39
|
+
} }
|
|
40
|
+
});
|
|
41
|
+
const surfaceSpacingVariants = tv({
|
|
42
|
+
defaultVariants: { size: "md" },
|
|
43
|
+
variants: { size: {
|
|
44
|
+
lg: "gap-3.5 p-5",
|
|
45
|
+
md: "gap-3 p-4",
|
|
46
|
+
sm: "gap-2 p-3",
|
|
47
|
+
xl: "gap-4 p-6",
|
|
48
|
+
xs: "gap-1.5 p-2"
|
|
49
|
+
} }
|
|
50
|
+
});
|
|
51
|
+
const fieldTextVariants = tv({
|
|
52
|
+
defaultVariants: { size: "md" },
|
|
53
|
+
variants: { size: {
|
|
54
|
+
lg: "text-sm",
|
|
55
|
+
md: "text-sm",
|
|
56
|
+
sm: "text-sm",
|
|
57
|
+
xl: "text-base",
|
|
58
|
+
xs: "text-xs"
|
|
59
|
+
} }
|
|
60
|
+
});
|
|
61
|
+
const rowTextVariants = tv({
|
|
62
|
+
defaultVariants: { size: "md" },
|
|
63
|
+
variants: { size: {
|
|
64
|
+
lg: "text-sm",
|
|
65
|
+
md: "text-sm",
|
|
66
|
+
sm: "text-xs",
|
|
67
|
+
xl: "text-base",
|
|
68
|
+
xs: "text-xs"
|
|
69
|
+
} }
|
|
70
|
+
});
|
|
71
|
+
const defaultIconVariants = tv({
|
|
72
|
+
defaultVariants: { size: "md" },
|
|
73
|
+
variants: { size: {
|
|
74
|
+
lg: "size-4",
|
|
75
|
+
md: "size-4",
|
|
76
|
+
sm: "size-3.5",
|
|
77
|
+
xl: "size-5",
|
|
78
|
+
xs: "size-3"
|
|
79
|
+
} }
|
|
80
|
+
});
|
|
81
|
+
const defaultNestedIconVariants = tv({
|
|
82
|
+
defaultVariants: { size: "md" },
|
|
83
|
+
variants: { size: {
|
|
84
|
+
lg: "[&_svg:not([class*='size-'])]:size-4",
|
|
85
|
+
md: "[&_svg:not([class*='size-'])]:size-4",
|
|
86
|
+
sm: "[&_svg:not([class*='size-'])]:size-3.5",
|
|
87
|
+
xl: "[&_svg:not([class*='size-'])]:size-5",
|
|
88
|
+
xs: "[&_svg:not([class*='size-'])]:size-3"
|
|
89
|
+
} }
|
|
90
|
+
});
|
|
91
|
+
const resolveFieldHeightClassBySize = (size) => fieldHeightVariants({ size });
|
|
92
|
+
const resolveCompactVisualClassBySize = (size) => compactVisualVariants({ size });
|
|
93
|
+
const resolveFieldTextClassBySize = (size) => fieldTextVariants({ size });
|
|
94
|
+
const resolveDefaultIconClassBySize = (size) => defaultIconVariants({ size });
|
|
95
|
+
const resolveDefaultNestedIconClassBySize = (size) => defaultNestedIconVariants({ size });
|
|
96
|
+
|
|
97
|
+
//#endregion
|
|
98
|
+
export { resolveFieldHeightClassBySize as a, resolveDefaultNestedIconClassBySize as i, resolveCompactVisualClassBySize as n, resolveFieldTextClassBySize as o, resolveDefaultIconClassBySize as r, UI_SIZE_ORDER as t };
|
|
99
|
+
//# sourceMappingURL=size-system-BTsMqZRQ.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"size-system-BTsMqZRQ.js","names":[],"sources":["../src/ui/shared/size/size-system.ts"],"sourcesContent":["import { tv } from \"tailwind-variants\";\n\nexport type UISize = \"xs\" | \"sm\" | \"md\" | \"lg\" | \"xl\";\n\nexport const UI_SIZE_ORDER: readonly UISize[] = [\"xs\", \"sm\", \"md\", \"lg\", \"xl\"];\n\nconst fieldHeightVariants = tv({\n defaultVariants: {\n size: \"md\",\n },\n variants: {\n size: {\n lg: \"h-10\",\n md: \"h-9\",\n sm: \"h-8\",\n xl: \"h-11\",\n xs: \"h-6\",\n },\n },\n});\n\nconst rowHeightVariants = tv({\n defaultVariants: {\n size: \"md\",\n },\n variants: {\n size: {\n lg: \"h-9\",\n md: \"h-8\",\n sm: \"h-7\",\n xl: \"h-10\",\n xs: \"h-6\",\n },\n },\n});\n\nconst compactVisualVariants = tv({\n defaultVariants: {\n size: \"md\",\n },\n variants: {\n size: {\n lg: \"size-[18px]\",\n md: \"size-4\",\n sm: \"size-3.5\",\n xl: \"size-5\",\n xs: \"size-3\",\n },\n },\n});\n\nexport const COMPACT_TARGET_SIZE_BY_SIZE: Record<UISize, number> = {\n lg: 36,\n md: 32,\n sm: 28,\n xl: 40,\n xs: 24,\n};\n\nconst surfaceSpacingVariants = tv({\n defaultVariants: {\n size: \"md\",\n },\n variants: {\n size: {\n lg: \"gap-3.5 p-5\",\n md: \"gap-3 p-4\",\n sm: \"gap-2 p-3\",\n xl: \"gap-4 p-6\",\n xs: \"gap-1.5 p-2\",\n },\n },\n});\n\nconst fieldTextVariants = tv({\n defaultVariants: {\n size: \"md\",\n },\n variants: {\n size: {\n lg: \"text-sm\",\n md: \"text-sm\",\n sm: \"text-sm\",\n xl: \"text-base\",\n xs: \"text-xs\",\n },\n },\n});\n\nconst rowTextVariants = tv({\n defaultVariants: {\n size: \"md\",\n },\n variants: {\n size: {\n lg: \"text-sm\",\n md: \"text-sm\",\n sm: \"text-xs\",\n xl: \"text-base\",\n xs: \"text-xs\",\n },\n },\n});\n\nconst defaultIconVariants = tv({\n defaultVariants: {\n size: \"md\",\n },\n variants: {\n size: {\n lg: \"size-4\",\n md: \"size-4\",\n sm: \"size-3.5\",\n xl: \"size-5\",\n xs: \"size-3\",\n },\n },\n});\n\nconst defaultNestedIconVariants = tv({\n defaultVariants: {\n size: \"md\",\n },\n variants: {\n size: {\n lg: \"[&_svg:not([class*='size-'])]:size-4\",\n md: \"[&_svg:not([class*='size-'])]:size-4\",\n sm: \"[&_svg:not([class*='size-'])]:size-3.5\",\n xl: \"[&_svg:not([class*='size-'])]:size-5\",\n xs: \"[&_svg:not([class*='size-'])]:size-3\",\n },\n },\n});\n\nexport const resolveFieldHeightClassBySize = (size: UISize): string =>\n fieldHeightVariants({ size });\n\nexport const resolveRowHeightClassBySize = (size: UISize): string =>\n rowHeightVariants({ size });\n\nexport const resolveCompactVisualClassBySize = (size: UISize): string =>\n compactVisualVariants({ size });\n\nexport const resolveSurfaceSpacingClassBySize = (size: UISize): string =>\n surfaceSpacingVariants({ size });\n\nexport const resolveFieldTextClassBySize = (size: UISize): string =>\n fieldTextVariants({ size });\n\nexport const resolveRowTextClassBySize = (size: UISize): string =>\n rowTextVariants({ size });\n\nexport const resolveDefaultIconClassBySize = (size: UISize): string =>\n defaultIconVariants({ size });\n\nexport const resolveDefaultNestedIconClassBySize = (size: UISize): string =>\n defaultNestedIconVariants({ size });\n"],"mappings":";;;AAIA,MAAa,gBAAmC;CAAC;CAAM;CAAM;CAAM;CAAM;CAAK;AAE9E,MAAM,sBAAsB,GAAG;CAC7B,iBAAiB,EACf,MAAM,MACP;CACD,UAAU,EACR,MAAM;EACJ,IAAI;EACJ,IAAI;EACJ,IAAI;EACJ,IAAI;EACJ,IAAI;EACL,EACF;CACF,CAAC;AAEF,MAAM,oBAAoB,GAAG;CAC3B,iBAAiB,EACf,MAAM,MACP;CACD,UAAU,EACR,MAAM;EACJ,IAAI;EACJ,IAAI;EACJ,IAAI;EACJ,IAAI;EACJ,IAAI;EACL,EACF;CACF,CAAC;AAEF,MAAM,wBAAwB,GAAG;CAC/B,iBAAiB,EACf,MAAM,MACP;CACD,UAAU,EACR,MAAM;EACJ,IAAI;EACJ,IAAI;EACJ,IAAI;EACJ,IAAI;EACJ,IAAI;EACL,EACF;CACF,CAAC;AAUF,MAAM,yBAAyB,GAAG;CAChC,iBAAiB,EACf,MAAM,MACP;CACD,UAAU,EACR,MAAM;EACJ,IAAI;EACJ,IAAI;EACJ,IAAI;EACJ,IAAI;EACJ,IAAI;EACL,EACF;CACF,CAAC;AAEF,MAAM,oBAAoB,GAAG;CAC3B,iBAAiB,EACf,MAAM,MACP;CACD,UAAU,EACR,MAAM;EACJ,IAAI;EACJ,IAAI;EACJ,IAAI;EACJ,IAAI;EACJ,IAAI;EACL,EACF;CACF,CAAC;AAEF,MAAM,kBAAkB,GAAG;CACzB,iBAAiB,EACf,MAAM,MACP;CACD,UAAU,EACR,MAAM;EACJ,IAAI;EACJ,IAAI;EACJ,IAAI;EACJ,IAAI;EACJ,IAAI;EACL,EACF;CACF,CAAC;AAEF,MAAM,sBAAsB,GAAG;CAC7B,iBAAiB,EACf,MAAM,MACP;CACD,UAAU,EACR,MAAM;EACJ,IAAI;EACJ,IAAI;EACJ,IAAI;EACJ,IAAI;EACJ,IAAI;EACL,EACF;CACF,CAAC;AAEF,MAAM,4BAA4B,GAAG;CACnC,iBAAiB,EACf,MAAM,MACP;CACD,UAAU,EACR,MAAM;EACJ,IAAI;EACJ,IAAI;EACJ,IAAI;EACJ,IAAI;EACJ,IAAI;EACL,EACF;CACF,CAAC;AAEF,MAAa,iCAAiC,SAC5C,oBAAoB,EAAE,MAAM,CAAC;AAK/B,MAAa,mCAAmC,SAC9C,sBAAsB,EAAE,MAAM,CAAC;AAKjC,MAAa,+BAA+B,SAC1C,kBAAkB,EAAE,MAAM,CAAC;AAK7B,MAAa,iCAAiC,SAC5C,oBAAoB,EAAE,MAAM,CAAC;AAE/B,MAAa,uCAAuC,SAClD,0BAA0B,EAAE,MAAM,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"size-system-wzOLSuax.d.ts","names":[],"sources":["../src/ui/shared/size/size-system.ts"],"mappings":";
|
|
1
|
+
{"version":3,"file":"size-system-wzOLSuax.d.ts","names":[],"sources":["../src/ui/shared/size/size-system.ts"],"mappings":";KAEY,MAAA;AAAA,cAEC,aAAA,WAAwB,MAAA"}
|
package/dist/size.js
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
"use client";
|
|
2
2
|
|
|
3
3
|
import { a as useComponentSize, c as useKuzenboContext, d as useOptionalKuzenboContext, f as DEFAULT_UI_SIZE, i as useComponentDefaultProps, l as useKuzenboEnv, n as KuzenboProvider, o as useGlobalUISize, p as resolveSize, r as filterUndefinedProps, s as useKuzenboComponentDefaults, t as KUZENBO_PROVIDER_MISSING_ERROR, u as useKuzenboReducedMotion } from "./size-provider-18EvJgDT.js";
|
|
4
|
-
import { t as createSizeContext } from "./size-context-
|
|
5
|
-
import {
|
|
4
|
+
import { t as createSizeContext } from "./size-context-CvLl3pMC.js";
|
|
5
|
+
import { t as UI_SIZE_ORDER } from "./size-system-BTsMqZRQ.js";
|
|
6
6
|
|
|
7
7
|
export { DEFAULT_UI_SIZE, KUZENBO_PROVIDER_MISSING_ERROR, KuzenboProvider, UI_SIZE_ORDER, createSizeContext, filterUndefinedProps, resolveSize, useComponentDefaultProps, useComponentSize, useGlobalUISize, useKuzenboComponentDefaults, useKuzenboContext, useKuzenboEnv, useKuzenboReducedMotion, useOptionalKuzenboContext };
|
|
@@ -92,7 +92,7 @@ const SliderMark = ({ disabled, filled, label, orientation = "horizontal", posit
|
|
|
92
92
|
const isHorizontal = orientation === "horizontal";
|
|
93
93
|
const wrapperStyle = isHorizontal ? { insetInlineStart: `${position}%` } : { bottom: `${position}%` };
|
|
94
94
|
return /* @__PURE__ */ jsxs("div", {
|
|
95
|
-
className: cn("pointer-events-none absolute
|
|
95
|
+
className: cn("z-elevated pointer-events-none absolute", isHorizontal ? "top-1/2 -translate-x-1/2 -translate-y-1/2" : "left-1/2 -translate-x-1/2 translate-y-1/2"),
|
|
96
96
|
"data-filled": filled ? "true" : "false",
|
|
97
97
|
"data-slot": "slider-mark",
|
|
98
98
|
style: wrapperStyle,
|
|
@@ -101,7 +101,7 @@ const SliderMark = ({ disabled, filled, label, orientation = "horizontal", posit
|
|
|
101
101
|
className: cn("block h-[var(--slider-mark-size,0.5rem)] w-[var(--slider-mark-size,0.5rem)] rounded-full border transition-[border-color,background-color] duration-150 ease-out group-data-[dragging]/slider:duration-0 motion-reduce:transition-none", filled ? "border-[var(--slider-color,var(--color-primary))] bg-[var(--slider-color,var(--color-primary))]" : "border-border bg-background", disabled && "border-muted bg-muted"),
|
|
102
102
|
"data-slot": "slider-mark-dot"
|
|
103
103
|
}), label ? /* @__PURE__ */ jsx("span", {
|
|
104
|
-
className: cn("pointer-events-none absolute
|
|
104
|
+
className: cn("text-muted-foreground pointer-events-none absolute text-xs whitespace-nowrap", isHorizontal ? "top-[calc(var(--slider-mark-size,0.5rem)+0.5rem)] left-1/2 -translate-x-1/2" : "top-1/2 left-[calc(var(--slider-mark-size,0.5rem)+0.5rem)] -translate-y-1/2"),
|
|
105
105
|
"data-slot": "slider-mark-label",
|
|
106
106
|
children: label
|
|
107
107
|
}) : null]
|
|
@@ -139,7 +139,7 @@ const SliderMarks = ({ disabled, inverted, marks, max, min, orientation = "horiz
|
|
|
139
139
|
//#endregion
|
|
140
140
|
//#region src/ui/slider/primitives/slider-thumb.tsx
|
|
141
141
|
const SliderThumb = ({ className, ...props }) => /* @__PURE__ */ jsx(Slider.Thumb, {
|
|
142
|
-
className: mergeBaseUIClassName("group/thumb relative block h-[var(--slider-thumb-size,1.25rem)] w-[var(--slider-thumb-size,1.25rem)] shrink-0 cursor-
|
|
142
|
+
className: mergeBaseUIClassName("group/thumb relative block h-[var(--slider-thumb-size,1.25rem)] w-[var(--slider-thumb-size,1.25rem)] shrink-0 cursor-clickable rounded-[var(--slider-radius,var(--radius-sm))] border border-border bg-background shadow-sm ring-ring/50 select-none hover:ring-[3px] has-[:focus-visible]:ring-[3px] has-[:focus-visible]:ring-ring/50 focus-visible:ring-[3px] focus-visible:outline-hidden active:ring-[3px] disabled:pointer-events-none disabled:opacity-50 group-data-[invalid]/slider:border-danger group-data-[invalid]/slider:ring-danger/20 dark:group-data-[invalid]/slider:ring-danger/40 transition-[color,box-shadow,border-color,background-color] duration-150 ease-out group-data-[dragging]/slider:duration-0 motion-reduce:transition-none", className),
|
|
143
143
|
...props,
|
|
144
144
|
"data-slot": "slider-thumb"
|
|
145
145
|
});
|
|
@@ -163,7 +163,7 @@ const SliderThumbLabel = ({ className, label, labelAlwaysOn, orientation = "hori
|
|
|
163
163
|
return /* @__PURE__ */ jsx("span", {
|
|
164
164
|
...props,
|
|
165
165
|
"aria-hidden": "true",
|
|
166
|
-
className: cn("pointer-events-none absolute
|
|
166
|
+
className: cn("z-floating bg-foreground text-background pointer-events-none absolute rounded-sm px-1.5 py-0.5 text-xs whitespace-nowrap shadow-sm transition-opacity group-data-[dragging]/slider:duration-0 motion-reduce:transition-none", orientation === "horizontal" ? "-top-[var(--slider-thumb-label-offset,2rem)] left-1/2 -translate-x-1/2" : "top-1/2 left-[var(--slider-thumb-label-offset-vertical,2rem)] -translate-y-1/2", labelAlwaysOn ? "opacity-100" : "opacity-0 group-has-[:focus]/thumb:opacity-100 group-data-[dragging]/slider:opacity-100", showLabelOnHover ? "group-hover/slider:opacity-100" : void 0, className),
|
|
167
167
|
"data-slot": "slider-thumb-label",
|
|
168
168
|
style: {
|
|
169
169
|
...style,
|
|
@@ -228,33 +228,33 @@ const sliderStyleTokens = {
|
|
|
228
228
|
trackSize: "--slider-track-size"
|
|
229
229
|
};
|
|
230
230
|
const sliderSemanticSizes = {
|
|
231
|
-
|
|
232
|
-
thumbSize: "
|
|
233
|
-
trackSize: "0.
|
|
234
|
-
},
|
|
235
|
-
sm: {
|
|
236
|
-
thumbSize: "1rem",
|
|
237
|
-
trackSize: "0.375rem"
|
|
231
|
+
lg: {
|
|
232
|
+
thumbSize: "1.5rem",
|
|
233
|
+
trackSize: "0.625rem"
|
|
238
234
|
},
|
|
239
235
|
md: {
|
|
240
236
|
thumbSize: "1.25rem",
|
|
241
237
|
trackSize: "0.5rem"
|
|
242
238
|
},
|
|
243
|
-
|
|
244
|
-
thumbSize: "
|
|
245
|
-
trackSize: "0.
|
|
239
|
+
sm: {
|
|
240
|
+
thumbSize: "1rem",
|
|
241
|
+
trackSize: "0.375rem"
|
|
246
242
|
},
|
|
247
243
|
xl: {
|
|
248
244
|
thumbSize: "1.75rem",
|
|
249
245
|
trackSize: "0.75rem"
|
|
246
|
+
},
|
|
247
|
+
xs: {
|
|
248
|
+
thumbSize: "0.875rem",
|
|
249
|
+
trackSize: "0.25rem"
|
|
250
250
|
}
|
|
251
251
|
};
|
|
252
252
|
const sliderSemanticRadii = {
|
|
253
|
-
xs: "calc(var(--radius-sm) - 2px)",
|
|
254
|
-
sm: "var(--radius-sm)",
|
|
255
|
-
md: "var(--radius-md)",
|
|
256
253
|
lg: "var(--radius-lg)",
|
|
257
|
-
|
|
254
|
+
md: "var(--radius-md)",
|
|
255
|
+
sm: "var(--radius-sm)",
|
|
256
|
+
xl: "var(--radius-xl)",
|
|
257
|
+
xs: "calc(var(--radius-sm) - 2px)"
|
|
258
258
|
};
|
|
259
259
|
const semanticSliderColorNames = new Set([
|
|
260
260
|
"background",
|
|
@@ -333,4 +333,4 @@ const mergeSliderRootStyle = (styleTokens, style) => {
|
|
|
333
333
|
|
|
334
334
|
//#endregion
|
|
335
335
|
export { getNextMarkValue as _, SliderValue as a, isKeyboardLikeReason as b, SliderThumb as c, SliderIndicator as d, SliderControl as f, getNearestMarkValue as g, getLastMarkValue as h, resolveSliderBounds as i, SliderMarks as l, getFirstMarkValue as m, resolveSliderRootClassName as n, SliderTrack as o, clampNumber as p, resolveSliderLabel as r, SliderThumbLabel as s, mergeSliderRootStyle as t, SliderMark as u, getPreviousMarkValue as v, toFloatingValue as x, getSortedSelectableMarks as y };
|
|
336
|
-
//# sourceMappingURL=slider-root-presentation-
|
|
336
|
+
//# sourceMappingURL=slider-root-presentation-B6OO_iCT.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"slider-root-presentation-B6OO_iCT.js","names":["SliderPrimitive","SliderPrimitive","SliderPrimitive","SliderPrimitive","SliderPrimitive"],"sources":["../src/ui/slider/math/slider-math-utils.ts","../src/ui/slider/primitives/slider-control.tsx","../src/ui/slider/primitives/slider-indicator.tsx","../src/ui/slider/primitives/slider-mark.tsx","../src/ui/slider/primitives/slider-marks.tsx","../src/ui/slider/primitives/slider-thumb.tsx","../src/ui/slider/shared/slider-transition.ts","../src/ui/slider/primitives/slider-thumb-label.tsx","../src/ui/slider/primitives/slider-track.tsx","../src/ui/slider/primitives/slider-value.tsx","../src/ui/slider/shared/slider-bounds.ts","../src/ui/slider/shared/slider-label.ts","../src/ui/slider/shared/slider-style-tokens.ts","../src/ui/slider/shared/slider-root-presentation.ts"],"sourcesContent":["import type { SliderMark } from \"../shared/slider-types\";\n\nconst EPSILON = 1e-9;\n\nexport const clampNumber = (value: number, min: number, max: number) =>\n Math.min(Math.max(value, min), max);\n\nexport const getPrecisionFromStep = (step: number) => {\n if (!Number.isFinite(step) || step <= 0) {\n return 0;\n }\n\n const [, decimals] = step.toString().split(\".\");\n return decimals?.length ?? 0;\n};\n\nexport const toFloatingValue = (value: number, precision: number) =>\n Number.parseFloat(value.toFixed(precision));\n\nexport const getPositionPercent = (value: number, min: number, max: number) => {\n if (min === max) {\n return 0;\n }\n\n const percent = ((value - min) / (max - min)) * 100;\n return clampNumber(percent, 0, 100);\n};\n\nexport const getSortedSelectableMarks = (\n marks: readonly SliderMark[] | undefined,\n min: number,\n max: number\n) => {\n if (!marks?.length) {\n return [] as number[];\n }\n\n const uniqueMarks = new Set<number>();\n for (const mark of marks) {\n if (!Number.isFinite(mark.value)) {\n continue;\n }\n\n if (mark.value < min || mark.value > max) {\n continue;\n }\n\n uniqueMarks.add(mark.value);\n }\n\n const sortedMarks = [...uniqueMarks];\n sortedMarks.sort((a, b) => a - b);\n return sortedMarks;\n};\n\nexport const getNearestMarkValue = (\n value: number,\n marks: readonly number[]\n) => {\n if (!marks.length) {\n return value;\n }\n\n let nearest = marks[0] ?? value;\n let nearestDistance = Math.abs(value - nearest);\n\n for (const mark of marks) {\n const distance = Math.abs(value - mark);\n if (distance + EPSILON < nearestDistance) {\n nearest = mark;\n nearestDistance = distance;\n }\n }\n\n return nearest;\n};\n\nexport const getNextMarkValue = (current: number, marks: readonly number[]) => {\n for (const mark of marks) {\n if (mark > current + EPSILON) {\n return mark;\n }\n }\n\n return current;\n};\n\nexport const getPreviousMarkValue = (\n current: number,\n marks: readonly number[]\n) => {\n for (let index = marks.length - 1; index >= 0; index -= 1) {\n const mark = marks[index];\n if (mark !== undefined && mark < current - EPSILON) {\n return mark;\n }\n }\n\n return current;\n};\n\nexport const getFirstMarkValue = (marks: readonly number[], fallback: number) =>\n marks[0] ?? fallback;\n\nexport const getLastMarkValue = (marks: readonly number[], fallback: number) =>\n marks.at(-1) ?? fallback;\n\nexport const isMarkFilled = ({\n inverted = false,\n mark,\n values,\n}: {\n inverted?: boolean;\n mark: number;\n values: readonly number[];\n}) => {\n if (!values.length) {\n return false;\n }\n\n if (values.length === 1) {\n const [singleValue] = values;\n if (singleValue === undefined) {\n return false;\n }\n\n return inverted ? mark >= singleValue : mark <= singleValue;\n }\n\n const sortedValues = [...values];\n sortedValues.sort((a, b) => a - b);\n const [from = 0, to = 0] = sortedValues;\n\n if (inverted) {\n return mark <= from || mark >= to;\n }\n\n return mark >= from && mark <= to;\n};\n\nexport const isKeyboardLikeReason = (reason: string | null | undefined) =>\n reason === \"input-change\" || reason === \"keyboard\";\n","\"use client\";\n\nimport { Slider as SliderPrimitive } from \"@base-ui/react/slider\";\n\nimport { mergeBaseUIClassName } from \"../../../utils/merge-base-ui-class-name\";\n\nexport type SliderControlProps = SliderPrimitive.Control.Props;\n\nconst SliderControl = ({ className, ...props }: SliderControlProps) => (\n <SliderPrimitive.Control\n className={mergeBaseUIClassName<SliderPrimitive.Root.State>(\n \"group/control relative flex w-full touch-none items-center select-none data-disabled:opacity-50 data-[orientation=vertical]:h-full data-[orientation=vertical]:w-auto data-[orientation=vertical]:min-h-40 data-[orientation=vertical]:flex-col\",\n className\n )}\n data-slot=\"slider-control\"\n {...props}\n />\n);\n\nexport { SliderControl };\n","\"use client\";\n\nimport { Slider as SliderPrimitive } from \"@base-ui/react/slider\";\n\nimport { mergeBaseUIClassName } from \"../../../utils/merge-base-ui-class-name\";\n\nexport type SliderIndicatorProps = SliderPrimitive.Indicator.Props;\n\nconst SliderIndicator = ({ className, ...props }: SliderIndicatorProps) => (\n <SliderPrimitive.Indicator\n className={mergeBaseUIClassName<SliderPrimitive.Root.State>(\n \"rounded-[var(--slider-radius,var(--radius-sm))] bg-[var(--slider-color,var(--color-primary))] select-none group-data-[invalid]/slider:bg-danger data-[orientation=horizontal]:h-full data-[orientation=vertical]:w-full transition-[background-color,inset-inline-start,inset-inline-end,inset-block-start,inset-block-end,width,height] duration-150 ease-out group-data-[dragging]/slider:duration-0 motion-reduce:transition-none\",\n className\n )}\n {...props}\n data-slot=\"slider-range\"\n />\n);\n\nexport { SliderIndicator };\n","\"use client\";\n\nimport type { CSSProperties, ReactNode } from \"react\";\nimport { cn } from \"tailwind-variants\";\n\nexport interface SliderMarkProps {\n disabled?: boolean;\n filled?: boolean;\n label?: ReactNode;\n orientation?: \"horizontal\" | \"vertical\";\n position: number;\n}\n\nconst SliderMark = ({\n disabled,\n filled,\n label,\n orientation = \"horizontal\",\n position,\n}: SliderMarkProps) => {\n const isHorizontal = orientation === \"horizontal\";\n\n const wrapperStyle = isHorizontal\n ? ({ insetInlineStart: `${position}%` } satisfies CSSProperties)\n : ({ bottom: `${position}%` } satisfies CSSProperties);\n\n return (\n <div\n className={cn(\n \"z-elevated pointer-events-none absolute\",\n isHorizontal\n ? \"top-1/2 -translate-x-1/2 -translate-y-1/2\"\n : \"left-1/2 -translate-x-1/2 translate-y-1/2\"\n )}\n data-filled={filled ? \"true\" : \"false\"}\n data-slot=\"slider-mark\"\n style={wrapperStyle}\n >\n <span\n aria-hidden=\"true\"\n className={cn(\n \"block h-[var(--slider-mark-size,0.5rem)] w-[var(--slider-mark-size,0.5rem)] rounded-full border transition-[border-color,background-color] duration-150 ease-out group-data-[dragging]/slider:duration-0 motion-reduce:transition-none\",\n filled\n ? \"border-[var(--slider-color,var(--color-primary))] bg-[var(--slider-color,var(--color-primary))]\"\n : \"border-border bg-background\",\n disabled && \"border-muted bg-muted\"\n )}\n data-slot=\"slider-mark-dot\"\n />\n {label ? (\n <span\n className={cn(\n \"text-muted-foreground pointer-events-none absolute text-xs whitespace-nowrap\",\n isHorizontal\n ? \"top-[calc(var(--slider-mark-size,0.5rem)+0.5rem)] left-1/2 -translate-x-1/2\"\n : \"top-1/2 left-[calc(var(--slider-mark-size,0.5rem)+0.5rem)] -translate-y-1/2\"\n )}\n data-slot=\"slider-mark-label\"\n >\n {label}\n </span>\n ) : null}\n </div>\n );\n};\n\nexport { SliderMark };\n","\"use client\";\n\nimport { useMemo } from \"react\";\n\nimport { getPositionPercent, isMarkFilled } from \"../math/slider-math-utils\";\nimport type { SliderMark as SliderMarkType } from \"../shared/slider-types\";\nimport { SliderMark } from \"./slider-mark\";\n\nexport interface SliderMarksProps {\n disabled?: boolean;\n inverted?: boolean;\n marks?: readonly SliderMarkType[];\n max: number;\n min: number;\n orientation?: \"horizontal\" | \"vertical\";\n values: readonly number[];\n}\n\nconst SliderMarks = ({\n disabled,\n inverted,\n marks,\n max,\n min,\n orientation = \"horizontal\",\n values,\n}: SliderMarksProps) => {\n const normalizedMarks = useMemo(() => {\n if (!marks?.length) {\n return [];\n }\n\n return marks\n .filter((mark) => Number.isFinite(mark.value))\n .map((mark) => ({\n ...mark,\n position: getPositionPercent(mark.value, min, max),\n }));\n }, [marks, max, min]);\n\n if (!normalizedMarks.length) {\n return null;\n }\n\n return (\n <>\n {normalizedMarks.map((mark) => (\n <SliderMark\n disabled={disabled}\n filled={isMarkFilled({\n inverted,\n mark: mark.value,\n values,\n })}\n key={`${mark.value}-${String(mark.label)}`}\n label={mark.label}\n orientation={orientation}\n position={mark.position}\n />\n ))}\n </>\n );\n};\n\nexport { SliderMarks };\n","\"use client\";\n\nimport { Slider as SliderPrimitive } from \"@base-ui/react/slider\";\n\nimport { mergeBaseUIClassName } from \"../../../utils/merge-base-ui-class-name\";\n\nexport type SliderThumbProps = SliderPrimitive.Thumb.Props;\n\nconst SliderThumb = ({ className, ...props }: SliderThumbProps) => (\n <SliderPrimitive.Thumb\n className={mergeBaseUIClassName<SliderPrimitive.Thumb.State>(\n \"group/thumb relative block h-[var(--slider-thumb-size,1.25rem)] w-[var(--slider-thumb-size,1.25rem)] shrink-0 cursor-clickable rounded-[var(--slider-radius,var(--radius-sm))] border border-border bg-background shadow-sm ring-ring/50 select-none hover:ring-[3px] has-[:focus-visible]:ring-[3px] has-[:focus-visible]:ring-ring/50 focus-visible:ring-[3px] focus-visible:outline-hidden active:ring-[3px] disabled:pointer-events-none disabled:opacity-50 group-data-[invalid]/slider:border-danger group-data-[invalid]/slider:ring-danger/20 dark:group-data-[invalid]/slider:ring-danger/40 transition-[color,box-shadow,border-color,background-color] duration-150 ease-out group-data-[dragging]/slider:duration-0 motion-reduce:transition-none\",\n className\n )}\n {...props}\n data-slot=\"slider-thumb\"\n />\n);\n\nexport { SliderThumb };\n","export interface SliderLabelTransitionProps {\n delay?: number;\n duration?: number;\n timingFunction?: string;\n}\n\nexport const defaultSliderLabelTransitionProps = {\n delay: 0,\n duration: 0,\n timingFunction: \"linear\",\n} as const satisfies Required<SliderLabelTransitionProps>;\n","\"use client\";\n\nimport type { ComponentPropsWithoutRef, ReactNode } from \"react\";\nimport { cn } from \"tailwind-variants\";\n\nimport { defaultSliderLabelTransitionProps } from \"../shared/slider-transition\";\nimport type { SliderLabelTransitionProps } from \"../shared/slider-transition\";\n\nexport interface SliderThumbLabelProps extends Omit<\n ComponentPropsWithoutRef<\"span\">,\n \"children\"\n> {\n label: ReactNode;\n labelAlwaysOn?: boolean;\n orientation?: \"horizontal\" | \"vertical\";\n showLabelOnHover?: boolean;\n transitionProps?: SliderLabelTransitionProps;\n}\n\nconst toMilliseconds = (value: number) => `${value}ms`;\n\nconst SliderThumbLabel = ({\n className,\n label,\n labelAlwaysOn,\n orientation = \"horizontal\",\n showLabelOnHover,\n style,\n transitionProps,\n ...props\n}: SliderThumbLabelProps) => {\n if (label === null || label === undefined) {\n return null;\n }\n\n const transitionDelay =\n transitionProps?.delay ?? defaultSliderLabelTransitionProps.delay;\n const transitionDuration =\n transitionProps?.duration ?? defaultSliderLabelTransitionProps.duration;\n const transitionTimingFunction =\n transitionProps?.timingFunction ??\n defaultSliderLabelTransitionProps.timingFunction;\n\n return (\n <span\n {...props}\n aria-hidden=\"true\"\n className={cn(\n \"z-floating bg-foreground text-background pointer-events-none absolute rounded-sm px-1.5 py-0.5 text-xs whitespace-nowrap shadow-sm transition-opacity group-data-[dragging]/slider:duration-0 motion-reduce:transition-none\",\n orientation === \"horizontal\"\n ? \"-top-[var(--slider-thumb-label-offset,2rem)] left-1/2 -translate-x-1/2\"\n : \"top-1/2 left-[var(--slider-thumb-label-offset-vertical,2rem)] -translate-y-1/2\",\n labelAlwaysOn\n ? \"opacity-100\"\n : \"opacity-0 group-has-[:focus]/thumb:opacity-100 group-data-[dragging]/slider:opacity-100\",\n showLabelOnHover ? \"group-hover/slider:opacity-100\" : undefined,\n className\n )}\n data-slot=\"slider-thumb-label\"\n style={{\n ...style,\n transitionDelay: toMilliseconds(transitionDelay),\n transitionDuration: toMilliseconds(transitionDuration),\n transitionTimingFunction,\n }}\n >\n {label}\n </span>\n );\n};\n\nexport { SliderThumbLabel };\n","\"use client\";\n\nimport { Slider as SliderPrimitive } from \"@base-ui/react/slider\";\n\nimport { mergeBaseUIClassName } from \"../../../utils/merge-base-ui-class-name\";\n\nexport type SliderTrackProps = SliderPrimitive.Track.Props;\n\nconst SliderTrack = ({ className, ...props }: SliderTrackProps) => (\n <SliderPrimitive.Track\n className={mergeBaseUIClassName<SliderPrimitive.Root.State>(\n \"relative overflow-visible rounded-[var(--slider-radius,var(--radius-sm))] bg-[var(--slider-track-color,var(--color-muted))] select-none group-data-[invalid]/slider:bg-danger/15 data-[orientation=horizontal]:h-[var(--slider-size,var(--slider-track-size,0.5rem))] data-[orientation=horizontal]:w-full data-[orientation=vertical]:h-full data-[orientation=vertical]:w-[var(--slider-size,var(--slider-track-size,0.5rem))] transition-[background-color] duration-150 ease-out group-data-[dragging]/slider:duration-0 motion-reduce:transition-none\",\n className\n )}\n {...props}\n data-slot=\"slider-track\"\n />\n);\n\nexport { SliderTrack };\n","\"use client\";\n\nimport { Slider as SliderPrimitive } from \"@base-ui/react/slider\";\n\nimport { mergeBaseUIClassName } from \"../../../utils/merge-base-ui-class-name\";\n\nexport type SliderValueProps = SliderPrimitive.Value.Props;\n\nconst SliderValue = ({ className, ...props }: SliderValueProps) => (\n <SliderPrimitive.Value\n className={mergeBaseUIClassName<SliderPrimitive.Root.State>(\n undefined,\n className\n )}\n data-slot=\"slider-value\"\n {...props}\n />\n);\n\nexport { SliderValue };\n","import { getPrecisionFromStep } from \"../math/slider-math-utils\";\n\ninterface ResolveSliderBoundsOptions {\n domain?: [number, number];\n max: number;\n min: number;\n precision?: number;\n step: number;\n}\n\ninterface ResolvedSliderBounds {\n domainMax: number;\n domainMin: number;\n max: number;\n min: number;\n precision: number;\n}\n\nexport const resolveSliderBounds = ({\n domain,\n max,\n min,\n precision,\n step,\n}: ResolveSliderBoundsOptions): ResolvedSliderBounds => {\n const normalizedMin = Math.min(min, max);\n const normalizedMax = Math.max(min, max);\n\n const domainMin = Math.min(\n domain?.[0] ?? normalizedMin,\n domain?.[1] ?? normalizedMax\n );\n const domainMax = Math.max(\n domain?.[0] ?? normalizedMin,\n domain?.[1] ?? normalizedMax\n );\n\n return {\n domainMax,\n domainMin,\n max: normalizedMax,\n min: normalizedMin,\n precision: precision ?? getPrecisionFromStep(step),\n };\n};\n","import type { SliderLabel } from \"./slider-types\";\n\nexport const resolveSliderLabel = (\n label: SliderLabel | undefined,\n value: number\n) => {\n if (typeof label === \"function\") {\n return label(value);\n }\n\n return label;\n};\n","import type { CSSProperties } from \"react\";\n\nconst PIXEL_UNIT = \"px\";\n\nexport const sliderStyleTokens = {\n color: \"--slider-color\",\n markSize: \"--slider-mark-size\",\n radius: \"--slider-radius\",\n size: \"--slider-size\",\n thumbLabelOffset: \"--slider-thumb-label-offset\",\n thumbLabelOffsetVertical: \"--slider-thumb-label-offset-vertical\",\n thumbSize: \"--slider-thumb-size\",\n trackColor: \"--slider-track-color\",\n trackSize: \"--slider-track-size\",\n} as const;\n\nconst sliderSemanticSizes = {\n lg: { thumbSize: \"1.5rem\", trackSize: \"0.625rem\" },\n md: { thumbSize: \"1.25rem\", trackSize: \"0.5rem\" },\n sm: { thumbSize: \"1rem\", trackSize: \"0.375rem\" },\n xl: { thumbSize: \"1.75rem\", trackSize: \"0.75rem\" },\n xs: { thumbSize: \"0.875rem\", trackSize: \"0.25rem\" },\n} as const;\n\nconst sliderSemanticRadii = {\n lg: \"var(--radius-lg)\",\n md: \"var(--radius-md)\",\n sm: \"var(--radius-sm)\",\n xl: \"var(--radius-xl)\",\n xs: \"calc(var(--radius-sm) - 2px)\",\n} as const;\n\nconst semanticSliderColorNames = new Set([\n \"background\",\n \"border\",\n \"danger\",\n \"foreground\",\n \"info\",\n \"muted\",\n \"primary\",\n \"secondary\",\n \"success\",\n \"warning\",\n]);\n\nexport type SliderSemanticSize = keyof typeof sliderSemanticSizes;\nexport type SliderSemanticRadius = keyof typeof sliderSemanticRadii;\nexport type SliderStyleTokenLength = number | string | undefined;\nexport type SliderSize = SliderSemanticSize | number | string;\nexport type SliderRadius = SliderSemanticRadius | number | string;\n\nexport interface SliderRootStyleTokenOptions {\n color?: string;\n markSize?: SliderStyleTokenLength;\n radius?: SliderRadius | undefined;\n size?: SliderSize | undefined;\n thumbLabelOffset?: SliderStyleTokenLength;\n thumbLabelOffsetVertical?: SliderStyleTokenLength;\n thumbSize?: SliderSize | undefined;\n trackSize?: SliderSize | undefined;\n}\n\nconst isSemanticSliderSize = (value: unknown): value is SliderSemanticSize =>\n typeof value === \"string\" && value in sliderSemanticSizes;\n\nconst isSemanticSliderRadius = (\n value: unknown\n): value is SliderSemanticRadius =>\n typeof value === \"string\" && value in sliderSemanticRadii;\n\nconst toSliderStyleTokenValue = (value: SliderStyleTokenLength) => {\n if (value === undefined) {\n return;\n }\n\n return typeof value === \"number\" ? `${value}${PIXEL_UNIT}` : value;\n};\n\nconst resolveSliderColorValue = (color: string | undefined) => {\n if (color === undefined) {\n return \"var(--color-primary)\";\n }\n\n return semanticSliderColorNames.has(color) ? `var(--color-${color})` : color;\n};\n\nconst resolveSliderRadiusValue = (value: SliderRadius | undefined) => {\n if (value === undefined) {\n return \"var(--radius-sm)\";\n }\n\n if (isSemanticSliderRadius(value)) {\n return sliderSemanticRadii[value];\n }\n\n return toSliderStyleTokenValue(value);\n};\n\nconst resolveSliderTrackSizeValue = (\n value: SliderSize | undefined,\n fallbackValue: SliderSize | undefined\n) => {\n if (value !== undefined) {\n return isSemanticSliderSize(value)\n ? sliderSemanticSizes[value].trackSize\n : toSliderStyleTokenValue(value);\n }\n\n if (fallbackValue !== undefined) {\n return isSemanticSliderSize(fallbackValue)\n ? sliderSemanticSizes[fallbackValue].trackSize\n : toSliderStyleTokenValue(fallbackValue);\n }\n\n return sliderSemanticSizes.md.trackSize;\n};\n\nconst resolveSliderThumbSizeValue = (\n value: SliderSize | undefined,\n fallbackValue: SliderSize | undefined\n) => {\n if (value !== undefined) {\n return isSemanticSliderSize(value)\n ? sliderSemanticSizes[value].thumbSize\n : toSliderStyleTokenValue(value);\n }\n\n if (fallbackValue !== undefined) {\n return isSemanticSliderSize(fallbackValue)\n ? sliderSemanticSizes[fallbackValue].thumbSize\n : toSliderStyleTokenValue(fallbackValue);\n }\n\n return sliderSemanticSizes.md.thumbSize;\n};\n\nexport const resolveSliderRootStyleTokens = ({\n color,\n markSize,\n radius,\n size,\n thumbLabelOffset,\n thumbLabelOffsetVertical,\n thumbSize,\n trackSize,\n}: SliderRootStyleTokenOptions): CSSProperties => {\n const markSizeValue = toSliderStyleTokenValue(markSize);\n const thumbLabelOffsetValue = toSliderStyleTokenValue(thumbLabelOffset);\n const thumbLabelOffsetVerticalValue = toSliderStyleTokenValue(\n thumbLabelOffsetVertical\n );\n const trackSizeValue = resolveSliderTrackSizeValue(trackSize, size);\n const thumbSizeValue = resolveSliderThumbSizeValue(thumbSize, size);\n\n return {\n [sliderStyleTokens.color]: resolveSliderColorValue(color),\n [sliderStyleTokens.radius]: resolveSliderRadiusValue(radius),\n [sliderStyleTokens.size]: trackSizeValue,\n [sliderStyleTokens.thumbSize]: thumbSizeValue,\n [sliderStyleTokens.trackColor]: \"var(--color-muted)\",\n [sliderStyleTokens.trackSize]: trackSizeValue,\n ...(markSizeValue === undefined\n ? {}\n : { [sliderStyleTokens.markSize]: markSizeValue }),\n ...(thumbLabelOffsetValue === undefined\n ? {}\n : { [sliderStyleTokens.thumbLabelOffset]: thumbLabelOffsetValue }),\n ...(thumbLabelOffsetVerticalValue === undefined\n ? {}\n : {\n [sliderStyleTokens.thumbLabelOffsetVertical]:\n thumbLabelOffsetVerticalValue,\n }),\n } as CSSProperties;\n};\n","import type { Slider as SliderPrimitive } from \"@base-ui/react/slider\";\nimport type { CSSProperties } from \"react\";\n\nimport { mergeBaseUIClassName } from \"../../../utils/merge-base-ui-class-name\";\nimport type { BaseUIClassName } from \"../../../utils/merge-base-ui-class-name\";\nimport type { SliderRootStyleTokenOptions } from \"./slider-style-tokens\";\nimport { resolveSliderRootStyleTokens } from \"./slider-style-tokens\";\n\nexport const resolveSliderRootClassName = (\n className: BaseUIClassName<SliderPrimitive.Root.State>,\n inverted: boolean\n) =>\n mergeBaseUIClassName<SliderPrimitive.Root.State>(\n \"group/slider data-[orientation=horizontal]:w-full data-[orientation=horizontal]:px-[calc(var(--slider-thumb-size,1.25rem)/2)] data-[orientation=vertical]:h-full data-[orientation=vertical]:py-[calc(var(--slider-thumb-size,1.25rem)/2)]\",\n typeof className === \"function\"\n ? (state) =>\n [\n inverted\n ? \"[&_[data-slot=slider-track]]:bg-[var(--slider-color,var(--color-primary))] [&_[data-slot=slider-range]]:bg-[var(--slider-track-color,var(--color-muted))]\"\n : undefined,\n className(state),\n ]\n .filter(Boolean)\n .join(\" \")\n : [\n inverted\n ? \"[&_[data-slot=slider-track]]:bg-[var(--slider-color,var(--color-primary))] [&_[data-slot=slider-range]]:bg-[var(--slider-track-color,var(--color-muted))]\"\n : undefined,\n className,\n ]\n .filter(Boolean)\n .join(\" \")\n );\n\ntype SliderRootStyle<TValue extends number | number[]> =\n SliderPrimitive.Root.Props<TValue>[\"style\"];\n\nexport const mergeSliderRootStyle = <TValue extends number | number[]>(\n styleTokens: SliderRootStyleTokenOptions,\n style: SliderRootStyle<TValue>\n): SliderRootStyle<TValue> => {\n const baseStyle = resolveSliderRootStyleTokens(styleTokens);\n\n if (typeof style === \"function\") {\n return (state) => {\n const resolvedStyle = style(state);\n return baseStyle ? { ...baseStyle, ...resolvedStyle } : resolvedStyle;\n };\n }\n\n if (!baseStyle) {\n return style;\n }\n\n return { ...baseStyle, ...(style as CSSProperties | undefined) };\n};\n"],"mappings":"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"}
|
|
@@ -1,57 +1,7 @@
|
|
|
1
|
-
import { ComponentPropsWithoutRef, ReactNode } from "react";
|
|
1
|
+
import { CSSProperties, ComponentPropsWithoutRef, ReactNode } from "react";
|
|
2
2
|
import * as react_jsx_runtime0 from "react/jsx-runtime";
|
|
3
3
|
import { Slider } from "@base-ui/react/slider";
|
|
4
4
|
|
|
5
|
-
//#region src/ui/slider/shared/slider-style-tokens.d.ts
|
|
6
|
-
declare const sliderSemanticSizes: {
|
|
7
|
-
readonly xs: {
|
|
8
|
-
readonly thumbSize: "0.875rem";
|
|
9
|
-
readonly trackSize: "0.25rem";
|
|
10
|
-
};
|
|
11
|
-
readonly sm: {
|
|
12
|
-
readonly thumbSize: "1rem";
|
|
13
|
-
readonly trackSize: "0.375rem";
|
|
14
|
-
};
|
|
15
|
-
readonly md: {
|
|
16
|
-
readonly thumbSize: "1.25rem";
|
|
17
|
-
readonly trackSize: "0.5rem";
|
|
18
|
-
};
|
|
19
|
-
readonly lg: {
|
|
20
|
-
readonly thumbSize: "1.5rem";
|
|
21
|
-
readonly trackSize: "0.625rem";
|
|
22
|
-
};
|
|
23
|
-
readonly xl: {
|
|
24
|
-
readonly thumbSize: "1.75rem";
|
|
25
|
-
readonly trackSize: "0.75rem";
|
|
26
|
-
};
|
|
27
|
-
};
|
|
28
|
-
declare const sliderSemanticRadii: {
|
|
29
|
-
readonly xs: "calc(var(--radius-sm) - 2px)";
|
|
30
|
-
readonly sm: "var(--radius-sm)";
|
|
31
|
-
readonly md: "var(--radius-md)";
|
|
32
|
-
readonly lg: "var(--radius-lg)";
|
|
33
|
-
readonly xl: "var(--radius-xl)";
|
|
34
|
-
};
|
|
35
|
-
type SliderSemanticSize = keyof typeof sliderSemanticSizes;
|
|
36
|
-
type SliderSemanticRadius = keyof typeof sliderSemanticRadii;
|
|
37
|
-
type SliderSize = SliderSemanticSize | number | string;
|
|
38
|
-
type SliderRadius = SliderSemanticRadius | number | string;
|
|
39
|
-
//#endregion
|
|
40
|
-
//#region src/ui/slider/shared/slider-transition.d.ts
|
|
41
|
-
interface SliderLabelTransitionProps {
|
|
42
|
-
delay?: number;
|
|
43
|
-
duration?: number;
|
|
44
|
-
timingFunction?: string;
|
|
45
|
-
}
|
|
46
|
-
//#endregion
|
|
47
|
-
//#region src/ui/slider/shared/slider-types.d.ts
|
|
48
|
-
type SliderValue$1 = number;
|
|
49
|
-
interface SliderMark$1 {
|
|
50
|
-
label?: ReactNode;
|
|
51
|
-
value: number;
|
|
52
|
-
}
|
|
53
|
-
type SliderLabel = ((value: number) => ReactNode) | ReactNode | null;
|
|
54
|
-
//#endregion
|
|
55
5
|
//#region src/ui/slider/primitives/slider-control.d.ts
|
|
56
6
|
type SliderControlProps = Slider.Control.Props;
|
|
57
7
|
declare const SliderControl: ({
|
|
@@ -74,7 +24,7 @@ interface SliderMarkProps {
|
|
|
74
24
|
orientation?: "horizontal" | "vertical";
|
|
75
25
|
position: number;
|
|
76
26
|
}
|
|
77
|
-
declare const SliderMark: ({
|
|
27
|
+
declare const SliderMark$1: ({
|
|
78
28
|
disabled,
|
|
79
29
|
filled,
|
|
80
30
|
label,
|
|
@@ -82,11 +32,19 @@ declare const SliderMark: ({
|
|
|
82
32
|
position
|
|
83
33
|
}: SliderMarkProps) => react_jsx_runtime0.JSX.Element;
|
|
84
34
|
//#endregion
|
|
35
|
+
//#region src/ui/slider/shared/slider-types.d.ts
|
|
36
|
+
type SliderValue$1 = number;
|
|
37
|
+
interface SliderMark {
|
|
38
|
+
label?: ReactNode;
|
|
39
|
+
value: number;
|
|
40
|
+
}
|
|
41
|
+
type SliderLabel = ((value: number) => ReactNode) | ReactNode | null;
|
|
42
|
+
//#endregion
|
|
85
43
|
//#region src/ui/slider/primitives/slider-marks.d.ts
|
|
86
44
|
interface SliderMarksProps {
|
|
87
45
|
disabled?: boolean;
|
|
88
46
|
inverted?: boolean;
|
|
89
|
-
marks?: readonly SliderMark
|
|
47
|
+
marks?: readonly SliderMark[];
|
|
90
48
|
max: number;
|
|
91
49
|
min: number;
|
|
92
50
|
orientation?: "horizontal" | "vertical";
|
|
@@ -109,6 +67,13 @@ declare const SliderThumb: ({
|
|
|
109
67
|
...props
|
|
110
68
|
}: SliderThumbProps) => react_jsx_runtime0.JSX.Element;
|
|
111
69
|
//#endregion
|
|
70
|
+
//#region src/ui/slider/shared/slider-transition.d.ts
|
|
71
|
+
interface SliderLabelTransitionProps {
|
|
72
|
+
delay?: number;
|
|
73
|
+
duration?: number;
|
|
74
|
+
timingFunction?: string;
|
|
75
|
+
}
|
|
76
|
+
//#endregion
|
|
112
77
|
//#region src/ui/slider/primitives/slider-thumb-label.d.ts
|
|
113
78
|
interface SliderThumbLabelProps extends Omit<ComponentPropsWithoutRef<"span">, "children"> {
|
|
114
79
|
label: ReactNode;
|
|
@@ -142,5 +107,40 @@ declare const SliderValue: ({
|
|
|
142
107
|
...props
|
|
143
108
|
}: SliderValueProps) => react_jsx_runtime0.JSX.Element;
|
|
144
109
|
//#endregion
|
|
145
|
-
|
|
146
|
-
|
|
110
|
+
//#region src/ui/slider/shared/slider-style-tokens.d.ts
|
|
111
|
+
declare const sliderSemanticSizes: {
|
|
112
|
+
readonly lg: {
|
|
113
|
+
readonly thumbSize: "1.5rem";
|
|
114
|
+
readonly trackSize: "0.625rem";
|
|
115
|
+
};
|
|
116
|
+
readonly md: {
|
|
117
|
+
readonly thumbSize: "1.25rem";
|
|
118
|
+
readonly trackSize: "0.5rem";
|
|
119
|
+
};
|
|
120
|
+
readonly sm: {
|
|
121
|
+
readonly thumbSize: "1rem";
|
|
122
|
+
readonly trackSize: "0.375rem";
|
|
123
|
+
};
|
|
124
|
+
readonly xl: {
|
|
125
|
+
readonly thumbSize: "1.75rem";
|
|
126
|
+
readonly trackSize: "0.75rem";
|
|
127
|
+
};
|
|
128
|
+
readonly xs: {
|
|
129
|
+
readonly thumbSize: "0.875rem";
|
|
130
|
+
readonly trackSize: "0.25rem";
|
|
131
|
+
};
|
|
132
|
+
};
|
|
133
|
+
declare const sliderSemanticRadii: {
|
|
134
|
+
readonly lg: "var(--radius-lg)";
|
|
135
|
+
readonly md: "var(--radius-md)";
|
|
136
|
+
readonly sm: "var(--radius-sm)";
|
|
137
|
+
readonly xl: "var(--radius-xl)";
|
|
138
|
+
readonly xs: "calc(var(--radius-sm) - 2px)";
|
|
139
|
+
};
|
|
140
|
+
type SliderSemanticSize = keyof typeof sliderSemanticSizes;
|
|
141
|
+
type SliderSemanticRadius = keyof typeof sliderSemanticRadii;
|
|
142
|
+
type SliderSize = SliderSemanticSize | number | string;
|
|
143
|
+
type SliderRadius = SliderSemanticRadius | number | string;
|
|
144
|
+
//#endregion
|
|
145
|
+
export { SliderControl as C, SliderIndicatorProps as S, SliderMark as _, SliderValue as a, SliderMarkProps as b, SliderTrackProps as c, SliderLabelTransitionProps as d, SliderThumb as f, SliderLabel as g, SliderMarksProps as h, SliderSize as i, SliderThumbLabel as l, SliderMarks as m, SliderSemanticRadius as n, SliderValueProps as o, SliderThumbProps as p, SliderSemanticSize as r, SliderTrack as s, SliderRadius as t, SliderThumbLabelProps as u, SliderValue$1 as v, SliderControlProps as w, SliderIndicator as x, SliderMark$1 as y };
|
|
146
|
+
//# sourceMappingURL=slider-style-tokens-CZezJilZ.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"slider-style-tokens-CZezJilZ.d.ts","names":[],"sources":["../src/ui/slider/primitives/slider-control.tsx","../src/ui/slider/primitives/slider-indicator.tsx","../src/ui/slider/primitives/slider-mark.tsx","../src/ui/slider/shared/slider-types.ts","../src/ui/slider/primitives/slider-marks.tsx","../src/ui/slider/primitives/slider-thumb.tsx","../src/ui/slider/shared/slider-transition.ts","../src/ui/slider/primitives/slider-thumb-label.tsx","../src/ui/slider/primitives/slider-track.tsx","../src/ui/slider/primitives/slider-value.tsx","../src/ui/slider/shared/slider-style-tokens.ts"],"mappings":";;;;;KAMY,kBAAA,GAAqB,MAAA,CAAgB,OAAA,CAAQ,KAAA;AAAA,cAEnD,aAAA;EAAiB,SAAA;EAAA,GAAA;AAAA,GAAyB,kBAAA,KAAkB,kBAAA,CAAA,GAAA,CAAA,OAAA;;;KCFtD,oBAAA,GAAuB,MAAA,CAAgB,SAAA,CAAU,KAAA;AAAA,cAEvD,eAAA;EAAmB,SAAA;EAAA,GAAA;AAAA,GAAyB,oBAAA,KAAoB,kBAAA,CAAA,GAAA,CAAA,OAAA;;;UCHrD,eAAA;EACf,QAAA;EACA,MAAA;EACA,KAAA,GAAQ,SAAA;EACR,WAAA;EACA,QAAA;AAAA;AAAA,cAGI,YAAA;EAAc,QAAA;EAAA,MAAA;EAAA,KAAA;EAAA,WAAA;EAAA;AAAA,GAMjB,eAAA,KAAe,kBAAA,CAAA,GAAA,CAAA,OAAA;;;KCjBN,aAAA;AAAA,UAEK,UAAA;EACf,KAAA,GAAQ,SAAA;EACR,KAAA;AAAA;AAAA,KAGU,WAAA,KAAgB,KAAA,aAAkB,SAAA,IAAa,SAAA;;;UCD1C,gBAAA;EACf,QAAA;EACA,QAAA;EACA,KAAA,YAAiB,UAAA;EACjB,GAAA;EACA,GAAA;EACA,WAAA;EACA,MAAA;AAAA;AAAA,cAGI,WAAA;EAAe,QAAA;EAAA,QAAA;EAAA,KAAA;EAAA,GAAA;EAAA,GAAA;EAAA,WAAA;EAAA;AAAA,GAQlB,gBAAA,KAAgB,kBAAA,CAAA,GAAA,CAAA,OAAA;;;KCpBP,gBAAA,GAAmB,MAAA,CAAgB,KAAA,CAAM,KAAA;AAAA,cAE/C,WAAA;EAAe,SAAA;EAAA,GAAA;AAAA,GAAyB,gBAAA,KAAgB,kBAAA,CAAA,GAAA,CAAA,OAAA;;;UCR7C,0BAAA;EACf,KAAA;EACA,QAAA;EACA,cAAA;AAAA;;;UCKe,qBAAA,SAA8B,IAAA,CAC7C,wBAAA;EAGA,KAAA,EAAO,SAAA;EACP,aAAA;EACA,WAAA;EACA,gBAAA;EACA,eAAA,GAAkB,0BAAA;AAAA;AAAA,cAKd,gBAAA;EAAoB,SAAA;EAAA,KAAA;EAAA,aAAA;EAAA,WAAA;EAAA,gBAAA;EAAA,KAAA;EAAA,eAAA;EAAA,GAAA;AAAA,GASvB,qBAAA,KAAqB,kBAAA,CAAA,GAAA,CAAA,OAAA;;;KCxBZ,gBAAA,GAAmB,MAAA,CAAgB,KAAA,CAAM,KAAA;AAAA,cAE/C,WAAA;EAAe,SAAA;EAAA,GAAA;AAAA,GAAyB,gBAAA,KAAgB,kBAAA,CAAA,GAAA,CAAA,OAAA;;;KCFlD,gBAAA,GAAmB,MAAA,CAAgB,KAAA,CAAM,KAAA;AAAA,cAE/C,WAAA;EAAe,SAAA;EAAA,GAAA;AAAA,GAAyB,gBAAA,KAAgB,kBAAA,CAAA,GAAA,CAAA,OAAA;;;cCQxD,mBAAA;EAAA;;;;;;;;;;;;;;;;;;;;;cAQA,mBAAA;EAAA;;;;;;KAqBM,kBAAA,gBAAkC,mBAAA;AAAA,KAClC,oBAAA,gBAAoC,mBAAA;AAAA,KAEpC,UAAA,GAAa,kBAAA;AAAA,KACb,YAAA,GAAe,oBAAA"}
|
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
import { ComponentProps } from "react";
|
|
2
|
+
import * as react_jsx_runtime0 from "react/jsx-runtime";
|
|
3
|
+
import * as tailwind_variants0 from "tailwind-variants";
|
|
4
|
+
import { VariantProps } from "tailwind-variants";
|
|
5
|
+
import TextareaAutosize from "react-textarea-autosize";
|
|
6
|
+
|
|
7
|
+
//#region src/ui/textarea/textarea.d.ts
|
|
8
|
+
declare const textareaVariants: tailwind_variants0.TVReturnType<{
|
|
9
|
+
size: {
|
|
10
|
+
lg: string;
|
|
11
|
+
md: string;
|
|
12
|
+
sm: string;
|
|
13
|
+
xl: string;
|
|
14
|
+
xs: string;
|
|
15
|
+
};
|
|
16
|
+
}, undefined, "border-input placeholder:text-muted-foreground focus-visible:border-ring focus-visible:ring-ring/50 disabled:bg-input/50 aria-invalid:border-danger aria-invalid:ring-danger/20 dark:bg-input/30 dark:disabled:bg-input/80 dark:aria-invalid:border-danger/50 dark:aria-invalid:ring-danger/40 flex field-sizing-content w-full border bg-transparent shadow-xs transition-colors outline-none focus-visible:ring-[3px] disabled:cursor-not-allowed disabled:opacity-50 aria-invalid:ring-[3px]", {
|
|
17
|
+
size: {
|
|
18
|
+
lg: string;
|
|
19
|
+
md: string;
|
|
20
|
+
sm: string;
|
|
21
|
+
xl: string;
|
|
22
|
+
xs: string;
|
|
23
|
+
};
|
|
24
|
+
}, undefined, tailwind_variants0.TVReturnType<{
|
|
25
|
+
size: {
|
|
26
|
+
lg: string;
|
|
27
|
+
md: string;
|
|
28
|
+
sm: string;
|
|
29
|
+
xl: string;
|
|
30
|
+
xs: string;
|
|
31
|
+
};
|
|
32
|
+
}, undefined, "border-input placeholder:text-muted-foreground focus-visible:border-ring focus-visible:ring-ring/50 disabled:bg-input/50 aria-invalid:border-danger aria-invalid:ring-danger/20 dark:bg-input/30 dark:disabled:bg-input/80 dark:aria-invalid:border-danger/50 dark:aria-invalid:ring-danger/40 flex field-sizing-content w-full border bg-transparent shadow-xs transition-colors outline-none focus-visible:ring-[3px] disabled:cursor-not-allowed disabled:opacity-50 aria-invalid:ring-[3px]", unknown, unknown, undefined>>;
|
|
33
|
+
type TextareaProps = ComponentProps<typeof TextareaAutosize> & VariantProps<typeof textareaVariants>;
|
|
34
|
+
declare const Textarea: (incomingProps: TextareaProps) => react_jsx_runtime0.JSX.Element;
|
|
35
|
+
//#endregion
|
|
36
|
+
export { TextareaProps as n, Textarea as t };
|
|
37
|
+
//# sourceMappingURL=textarea-C8dsnn8D.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"textarea-C8dsnn8D.d.ts","names":[],"sources":["../src/ui/textarea/textarea.tsx"],"mappings":";;;;;;;cAUM,gBAAA,EAcJ,kBAAA,CAdoB,YAAA;;;;;;;;;;;;;;;;cAcpB,kBAAA,CAAA,YAAA;;;;;;;;;KAEU,aAAA,GAAgB,cAAA,QAAsB,gBAAA,IAChD,YAAA,QAAoB,gBAAA;AAAA,cAEhB,QAAA,GAAY,aAAA,EAAe,aAAA,KAAa,kBAAA,CAAA,GAAA,CAAA,OAAA"}
|
|
@@ -0,0 +1,39 @@
|
|
|
1
|
+
import { a as useComponentSize, i as useComponentDefaultProps } from "./size-provider-18EvJgDT.js";
|
|
2
|
+
import { jsx } from "react/jsx-runtime";
|
|
3
|
+
import { tv } from "tailwind-variants";
|
|
4
|
+
import TextareaAutosize from "react-textarea-autosize";
|
|
5
|
+
|
|
6
|
+
//#region src/ui/textarea/use-textarea-default-props.ts
|
|
7
|
+
const useTextareaDefaultProps = (incomingProps) => useComponentDefaultProps("Textarea", {}, incomingProps);
|
|
8
|
+
|
|
9
|
+
//#endregion
|
|
10
|
+
//#region src/ui/textarea/textarea.tsx
|
|
11
|
+
const textareaVariants = tv({
|
|
12
|
+
base: "border-input placeholder:text-muted-foreground focus-visible:border-ring focus-visible:ring-ring/50 disabled:bg-input/50 aria-invalid:border-danger aria-invalid:ring-danger/20 dark:bg-input/30 dark:disabled:bg-input/80 dark:aria-invalid:border-danger/50 dark:aria-invalid:ring-danger/40 flex field-sizing-content w-full border bg-transparent shadow-xs transition-colors outline-none focus-visible:ring-[3px] disabled:cursor-not-allowed disabled:opacity-50 aria-invalid:ring-[3px]",
|
|
13
|
+
defaultVariants: { size: "md" },
|
|
14
|
+
variants: { size: {
|
|
15
|
+
lg: "min-h-18 rounded-md px-3 py-2.5 text-base md:text-sm",
|
|
16
|
+
md: "min-h-16 rounded-md px-2.5 py-2 text-base md:text-sm",
|
|
17
|
+
sm: "min-h-14 rounded-[min(var(--radius-md),10px)] px-2.5 py-1.5 text-sm",
|
|
18
|
+
xl: "min-h-20 rounded-md px-4 py-2.5 text-base",
|
|
19
|
+
xs: "min-h-12 rounded-[min(var(--radius-md),8px)] px-2 py-1 text-xs"
|
|
20
|
+
} }
|
|
21
|
+
});
|
|
22
|
+
const Textarea = (incomingProps) => {
|
|
23
|
+
const { className, rows = 3, size: providedSize, ...props } = useTextareaDefaultProps(incomingProps);
|
|
24
|
+
const size = useComponentSize(providedSize);
|
|
25
|
+
return /* @__PURE__ */ jsx(TextareaAutosize, {
|
|
26
|
+
className: textareaVariants({
|
|
27
|
+
className,
|
|
28
|
+
size
|
|
29
|
+
}),
|
|
30
|
+
"data-size": size,
|
|
31
|
+
"data-slot": "textarea",
|
|
32
|
+
minRows: rows,
|
|
33
|
+
...props
|
|
34
|
+
});
|
|
35
|
+
};
|
|
36
|
+
|
|
37
|
+
//#endregion
|
|
38
|
+
export { Textarea as t };
|
|
39
|
+
//# sourceMappingURL=textarea-CkiM1N_I.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"textarea-CkiM1N_I.js","names":[],"sources":["../src/ui/textarea/use-textarea-default-props.ts","../src/ui/textarea/textarea.tsx"],"sourcesContent":["import { useComponentDefaultProps } from \"../shared/size/size-provider\";\nimport type { TextareaProps } from \"./textarea\";\n\nexport const useTextareaDefaultProps = (\n incomingProps: TextareaProps\n): TextareaProps =>\n useComponentDefaultProps<TextareaProps>(\"Textarea\", {}, incomingProps);\n","\"use client\";\n\nimport type { ComponentProps } from \"react\";\nimport TextareaAutosize from \"react-textarea-autosize\";\nimport { tv } from \"tailwind-variants\";\nimport type { VariantProps } from \"tailwind-variants\";\n\nimport { useComponentSize } from \"../shared/size/size-provider\";\nimport { useTextareaDefaultProps } from \"./use-textarea-default-props\";\n\nconst textareaVariants = tv({\n base: \"border-input placeholder:text-muted-foreground focus-visible:border-ring focus-visible:ring-ring/50 disabled:bg-input/50 aria-invalid:border-danger aria-invalid:ring-danger/20 dark:bg-input/30 dark:disabled:bg-input/80 dark:aria-invalid:border-danger/50 dark:aria-invalid:ring-danger/40 flex field-sizing-content w-full border bg-transparent shadow-xs transition-colors outline-none focus-visible:ring-[3px] disabled:cursor-not-allowed disabled:opacity-50 aria-invalid:ring-[3px]\",\n defaultVariants: {\n size: \"md\",\n },\n variants: {\n size: {\n lg: \"min-h-18 rounded-md px-3 py-2.5 text-base md:text-sm\",\n md: \"min-h-16 rounded-md px-2.5 py-2 text-base md:text-sm\",\n sm: \"min-h-14 rounded-[min(var(--radius-md),10px)] px-2.5 py-1.5 text-sm\",\n xl: \"min-h-20 rounded-md px-4 py-2.5 text-base\",\n xs: \"min-h-12 rounded-[min(var(--radius-md),8px)] px-2 py-1 text-xs\",\n },\n },\n});\n\nexport type TextareaProps = ComponentProps<typeof TextareaAutosize> &\n VariantProps<typeof textareaVariants>;\n\nconst Textarea = (incomingProps: TextareaProps) => {\n const {\n className,\n rows = 3,\n size: providedSize,\n ...props\n } = useTextareaDefaultProps(incomingProps);\n const size = useComponentSize(providedSize);\n\n return (\n <TextareaAutosize\n className={textareaVariants({\n className,\n size,\n })}\n data-size={size}\n data-slot=\"textarea\"\n minRows={rows}\n {...props}\n />\n );\n};\n\nexport { Textarea };\n"],"mappings":";;;;;;AAGA,MAAa,2BACX,kBAEA,yBAAwC,YAAY,EAAE,EAAE,cAAc;;;;ACIxE,MAAM,mBAAmB,GAAG;CAC1B,MAAM;CACN,iBAAiB,EACf,MAAM,MACP;CACD,UAAU,EACR,MAAM;EACJ,IAAI;EACJ,IAAI;EACJ,IAAI;EACJ,IAAI;EACJ,IAAI;EACL,EACF;CACF,CAAC;AAKF,MAAM,YAAY,kBAAiC;CACjD,MAAM,EACJ,WACA,OAAO,GACP,MAAM,cACN,GAAG,UACD,wBAAwB,cAAc;CAC1C,MAAM,OAAO,iBAAiB,aAAa;AAE3C,QACE,oBAAC,kBAAD;EACE,WAAW,iBAAiB;GAC1B;GACA;GACD,CAAC;EACF,aAAW;EACX,aAAU;EACV,SAAS;EACT,GAAI;EACJ"}
|
|
@@ -0,0 +1,53 @@
|
|
|
1
|
+
import * as react_jsx_runtime0 from "react/jsx-runtime";
|
|
2
|
+
import * as tailwind_variants0 from "tailwind-variants";
|
|
3
|
+
import { VariantProps } from "tailwind-variants";
|
|
4
|
+
import { Toggle } from "@base-ui/react/toggle";
|
|
5
|
+
|
|
6
|
+
//#region src/ui/toggle/toggle.d.ts
|
|
7
|
+
declare const toggleVariants: tailwind_variants0.TVReturnType<{
|
|
8
|
+
size: {
|
|
9
|
+
lg: string;
|
|
10
|
+
md: string;
|
|
11
|
+
sm: string;
|
|
12
|
+
xl: string;
|
|
13
|
+
xs: string;
|
|
14
|
+
};
|
|
15
|
+
variant: {
|
|
16
|
+
default: string;
|
|
17
|
+
outline: string;
|
|
18
|
+
};
|
|
19
|
+
}, undefined, "group/toggle cursor-clickable hover:bg-muted hover:text-foreground focus-visible:border-ring focus-visible:ring-ring/50 aria-invalid:border-danger aria-invalid:ring-danger/20 aria-pressed:bg-muted data-pressed:bg-muted dark:aria-invalid:ring-danger/40 inline-flex items-center justify-center gap-1 rounded-md text-sm font-medium whitespace-nowrap transition-all outline-none focus-visible:ring-[3px] disabled:pointer-events-none disabled:opacity-50 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4", {
|
|
20
|
+
size: {
|
|
21
|
+
lg: string;
|
|
22
|
+
md: string;
|
|
23
|
+
sm: string;
|
|
24
|
+
xl: string;
|
|
25
|
+
xs: string;
|
|
26
|
+
};
|
|
27
|
+
variant: {
|
|
28
|
+
default: string;
|
|
29
|
+
outline: string;
|
|
30
|
+
};
|
|
31
|
+
}, undefined, tailwind_variants0.TVReturnType<{
|
|
32
|
+
size: {
|
|
33
|
+
lg: string;
|
|
34
|
+
md: string;
|
|
35
|
+
sm: string;
|
|
36
|
+
xl: string;
|
|
37
|
+
xs: string;
|
|
38
|
+
};
|
|
39
|
+
variant: {
|
|
40
|
+
default: string;
|
|
41
|
+
outline: string;
|
|
42
|
+
};
|
|
43
|
+
}, undefined, "group/toggle cursor-clickable hover:bg-muted hover:text-foreground focus-visible:border-ring focus-visible:ring-ring/50 aria-invalid:border-danger aria-invalid:ring-danger/20 aria-pressed:bg-muted data-pressed:bg-muted dark:aria-invalid:ring-danger/40 inline-flex items-center justify-center gap-1 rounded-md text-sm font-medium whitespace-nowrap transition-all outline-none focus-visible:ring-[3px] disabled:pointer-events-none disabled:opacity-50 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4", unknown, unknown, undefined>>;
|
|
44
|
+
type ToggleProps = Toggle.Props & VariantProps<typeof toggleVariants>;
|
|
45
|
+
declare const Toggle$1: ({
|
|
46
|
+
className,
|
|
47
|
+
variant,
|
|
48
|
+
size: providedSize,
|
|
49
|
+
...props
|
|
50
|
+
}: ToggleProps) => react_jsx_runtime0.JSX.Element;
|
|
51
|
+
//#endregion
|
|
52
|
+
export { ToggleProps as n, toggleVariants as r, Toggle$1 as t };
|
|
53
|
+
//# sourceMappingURL=toggle-CxkIncmZ.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"toggle-CxkIncmZ.d.ts","names":[],"sources":["../src/ui/toggle/toggle.tsx"],"mappings":";;;;;;cASM,cAAA,EAmBJ,kBAAA,CAnBkB,YAAA;;;;;;;;;;;;;;;;;;;;;;;;cAmBlB,kBAAA,CAAA,YAAA;;;;;;;;;;;;;KAEU,WAAA,GAAc,MAAA,CAAgB,KAAA,GACxC,YAAA,QAAoB,cAAA;AAAA,cAEhB,QAAA;EAAU,SAAA;EAAA,OAAA;EAAA,IAAA,EAAA,YAAA;EAAA,GAAA;AAAA,GAKb,WAAA,KAAW,kBAAA,CAAA,GAAA,CAAA,OAAA"}
|