ixia-ui-react 1.7.0 → 2.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +24 -1
- package/dist/accordion/index.d.ts +41 -0
- package/dist/accordion/index.js +142 -0
- package/dist/accordion/index.js.map +1 -0
- package/dist/alert/index.d.ts +22 -0
- package/dist/alert/index.js +1 -0
- package/dist/alert-Dcu9R8CY.js +73 -0
- package/dist/alert-Dcu9R8CY.js.map +1 -0
- package/dist/alert-dialog/index.d.ts +39 -0
- package/dist/alert-dialog/index.js +134 -0
- package/dist/alert-dialog/index.js.map +1 -0
- package/dist/autocomplete/index.d.ts +2 -0
- package/dist/autocomplete/index.js +1 -0
- package/dist/autocomplete-BfpWVO1l.js +169 -0
- package/dist/autocomplete-BfpWVO1l.js.map +1 -0
- package/dist/avatar/index.d.ts +2 -0
- package/dist/avatar/index.js +1 -0
- package/dist/avatar-Bp4gZh21.js +93 -0
- package/dist/avatar-Bp4gZh21.js.map +1 -0
- package/dist/badge/index.d.ts +2 -0
- package/dist/badge/index.js +1 -0
- package/dist/badge-Cl-9WTW-.js +160 -0
- package/dist/badge-Cl-9WTW-.js.map +1 -0
- package/dist/bento-box/index.d.ts +30 -0
- package/dist/bento-box/index.js +103 -0
- package/dist/bento-box/index.js.map +1 -0
- package/dist/breadcrumb/index.d.ts +18 -0
- package/dist/breadcrumb/index.js +58 -0
- package/dist/breadcrumb/index.js.map +1 -0
- package/dist/button/index.d.ts +3 -0
- package/dist/button/index.js +1 -0
- package/dist/button-BpUC-R1J.js +307 -0
- package/dist/button-BpUC-R1J.js.map +1 -0
- package/dist/button-group/index.d.ts +2 -0
- package/dist/button-group/index.js +1 -0
- package/dist/button-group-7azbqlcO.js +269 -0
- package/dist/button-group-7azbqlcO.js.map +1 -0
- package/dist/button.types-BFKrBCGd.d.ts +10 -0
- package/dist/calendar/index.d.ts +63 -0
- package/dist/calendar/index.js +292 -0
- package/dist/calendar/index.js.map +1 -0
- package/dist/chart/index.d.ts +87 -0
- package/dist/chart/index.js +262 -0
- package/dist/chart/index.js.map +1 -0
- package/dist/checkbox/index.d.ts +2 -0
- package/dist/checkbox/index.js +1 -0
- package/dist/checkbox-BuUZ1Lly.js +54 -0
- package/dist/checkbox-BuUZ1Lly.js.map +1 -0
- package/dist/checkbox-group/index.d.ts +6 -0
- package/dist/checkbox-group/index.js +17 -0
- package/dist/checkbox-group/index.js.map +1 -0
- package/dist/cn-BDi0DfT5.js +29 -0
- package/dist/cn-BDi0DfT5.js.map +1 -0
- package/dist/code-block/index.d.ts +50 -0
- package/dist/code-block/index.js +208 -0
- package/dist/code-block/index.js.map +1 -0
- package/dist/collapsible/index.d.ts +2 -0
- package/dist/collapsible/index.js +1 -0
- package/dist/collapsible-BVqrh0Q0.js +44 -0
- package/dist/collapsible-BVqrh0Q0.js.map +1 -0
- package/dist/color-channel-slider/index.d.ts +2 -0
- package/dist/color-channel-slider/index.js +1 -0
- package/dist/color-channel-slider-h8mUPJ35.js +70 -0
- package/dist/color-channel-slider-h8mUPJ35.js.map +1 -0
- package/dist/color-picker/index.d.ts +137 -0
- package/dist/color-picker/index.js +621 -0
- package/dist/color-picker/index.js.map +1 -0
- package/dist/combobox/index.d.ts +64 -0
- package/dist/combobox/index.js +289 -0
- package/dist/combobox/index.js.map +1 -0
- package/dist/context-menu/index.d.ts +49 -0
- package/dist/context-menu/index.js +166 -0
- package/dist/context-menu/index.js.map +1 -0
- package/dist/dialog/index.d.ts +36 -0
- package/dist/dialog/index.js +119 -0
- package/dist/dialog/index.js.map +1 -0
- package/dist/drawer/index.d.ts +31 -0
- package/dist/drawer/index.js +95 -0
- package/dist/drawer/index.js.map +1 -0
- package/dist/dropzone/index.d.ts +70 -0
- package/dist/dropzone/index.js +479 -0
- package/dist/dropzone/index.js.map +1 -0
- package/dist/field/index.d.ts +2 -0
- package/dist/field/index.js +1 -0
- package/dist/field-DTL7eA5y.js +254 -0
- package/dist/field-DTL7eA5y.js.map +1 -0
- package/dist/form/index.d.ts +220 -0
- package/dist/form/index.js +3 -0
- package/dist/form-BxMg796f.js +192 -0
- package/dist/form-BxMg796f.js.map +1 -0
- package/dist/has-single-element-child-DLGI0Dh2.js +12 -0
- package/dist/has-single-element-child-DLGI0Dh2.js.map +1 -0
- package/dist/hooks/index.d.ts +26 -0
- package/dist/hooks/index.js +1 -0
- package/dist/hooks-DUm-q_ig.js +68 -0
- package/dist/hooks-DUm-q_ig.js.map +1 -0
- package/dist/icon/index.d.ts +2 -0
- package/dist/icon/index.js +1 -0
- package/dist/icon-D3JWfCa2.js +85 -0
- package/dist/icon-D3JWfCa2.js.map +1 -0
- package/dist/icon-container/index.d.ts +10 -0
- package/dist/icon-container/index.js +64 -0
- package/dist/icon-container/index.js.map +1 -0
- package/dist/index-0ZQzIKoE.d.ts +11 -0
- package/dist/index-B3MK1QYh.d.ts +11 -0
- package/dist/index-BJVMIPq4.d.ts +54 -0
- package/dist/index-BsV-u_jc.d.ts +4 -0
- package/dist/index-BygR7cUT.d.ts +22 -0
- package/dist/index-BzTOLSgZ.d.ts +9 -0
- package/dist/index-C15xiG9O.d.ts +14 -0
- package/dist/index-C2zco6-C.d.ts +15 -0
- package/dist/index-CIDOd4Z8.d.ts +56 -0
- package/dist/index-CQti9gFb.d.ts +49 -0
- package/dist/index-CiE-Rqit.d.ts +70 -0
- package/dist/index-D1kkOg9k.d.ts +14 -0
- package/dist/index-DLfdAked.d.ts +34 -0
- package/dist/index-DMaW_XF1.d.ts +24 -0
- package/dist/index-Db_QGr6S.d.ts +5 -0
- package/dist/index-DdFxZ3Xr.d.ts +22 -0
- package/dist/index-DfNHJF0t.d.ts +33 -0
- package/dist/index-DyQYoAUf.d.ts +29 -0
- package/dist/index-N2CBSUDu.d.ts +14 -0
- package/dist/index-PuhTRMce.d.ts +11 -0
- package/dist/index-Wb_tILYa.d.ts +24 -0
- package/dist/index-bVyqfhJS.d.ts +4 -0
- package/dist/index-x4f8gnaI.d.ts +15 -0
- package/dist/input/index.d.ts +3 -0
- package/dist/input/index.js +1 -0
- package/dist/input-Laj6dwtK.js +179 -0
- package/dist/input-Laj6dwtK.js.map +1 -0
- package/dist/input-group/index.d.ts +2 -0
- package/dist/input-group/index.js +1 -0
- package/dist/input-group-CgdazGrY.js +111 -0
- package/dist/input-group-CgdazGrY.js.map +1 -0
- package/dist/input-otp/index.d.ts +13 -0
- package/dist/input-otp/index.js +44 -0
- package/dist/input-otp/index.js.map +1 -0
- package/dist/input.types-816rEVWU.d.ts +20 -0
- package/dist/input.types-D0gyoaQv.js +48 -0
- package/dist/input.types-D0gyoaQv.js.map +1 -0
- package/dist/kbd/index.d.ts +9 -0
- package/dist/kbd/index.js +25 -0
- package/dist/kbd/index.js.map +1 -0
- package/dist/label/index.d.ts +8 -0
- package/dist/label/index.js +1 -0
- package/dist/label-BgpayDvN.js +27 -0
- package/dist/label-BgpayDvN.js.map +1 -0
- package/dist/layer-tree/index.d.ts +728 -0
- package/dist/layer-tree/index.js +685 -0
- package/dist/layer-tree/index.js.map +1 -0
- package/dist/map/google/index.d.ts +143 -0
- package/dist/map/google/index.js +445 -0
- package/dist/map/google/index.js.map +1 -0
- package/dist/map/index.d.ts +94 -0
- package/dist/map/index.js +208 -0
- package/dist/map/index.js.map +1 -0
- package/dist/map.context-Dw1D7E8m.js +11 -0
- package/dist/map.context-Dw1D7E8m.js.map +1 -0
- package/dist/menu/index.d.ts +2 -0
- package/dist/menu/index.js +1 -0
- package/dist/menu-sf13cnGp.js +173 -0
- package/dist/menu-sf13cnGp.js.map +1 -0
- package/dist/menu-tone-DWBEHoX2.js +22 -0
- package/dist/menu-tone-DWBEHoX2.js.map +1 -0
- package/dist/meter/index.d.ts +2 -0
- package/dist/meter/index.js +1 -0
- package/dist/meter-HD5taq57.js +116 -0
- package/dist/meter-HD5taq57.js.map +1 -0
- package/dist/nav-bar/index.d.ts +25 -0
- package/dist/nav-bar/index.js +133 -0
- package/dist/nav-bar/index.js.map +1 -0
- package/dist/navigation-menu/index.d.ts +43 -0
- package/dist/navigation-menu/index.js +176 -0
- package/dist/navigation-menu/index.js.map +1 -0
- package/dist/number-field/index.d.ts +14 -0
- package/dist/number-field/index.js +116 -0
- package/dist/number-field/index.js.map +1 -0
- package/dist/popover/index.d.ts +2 -0
- package/dist/popover/index.js +1 -0
- package/dist/popover-B1s4xXrX.js +114 -0
- package/dist/popover-B1s4xXrX.js.map +1 -0
- package/dist/preview-card/index.d.ts +13 -0
- package/dist/preview-card/index.js +35 -0
- package/dist/preview-card/index.js.map +1 -0
- package/dist/profile/index.d.ts +21 -0
- package/dist/profile/index.js +52 -0
- package/dist/profile/index.js.map +1 -0
- package/dist/progress/index.d.ts +23 -0
- package/dist/progress/index.js +97 -0
- package/dist/progress/index.js.map +1 -0
- package/dist/radar-ping/index.d.ts +11 -0
- package/dist/radar-ping/index.js +49 -0
- package/dist/radar-ping/index.js.map +1 -0
- package/dist/radio-group/index.d.ts +2 -0
- package/dist/radio-group/index.js +1 -0
- package/dist/radio-group-Dj43u35Z.js +47 -0
- package/dist/radio-group-Dj43u35Z.js.map +1 -0
- package/dist/resizeable/index.d.ts +11 -0
- package/dist/resizeable/index.js +31 -0
- package/dist/resizeable/index.js.map +1 -0
- package/dist/scroll-area/index.d.ts +11 -0
- package/dist/scroll-area/index.js +51 -0
- package/dist/scroll-area/index.js.map +1 -0
- package/dist/select/index.d.ts +2 -0
- package/dist/select/index.js +1 -0
- package/dist/select-DncJXYim.js +159 -0
- package/dist/select-DncJXYim.js.map +1 -0
- package/dist/separator/index.d.ts +2 -0
- package/dist/separator/index.js +1 -0
- package/dist/separator-DgIQp1cB.js +97 -0
- package/dist/separator-DgIQp1cB.js.map +1 -0
- package/dist/sidebar/index.d.ts +80 -0
- package/dist/sidebar/index.js +334 -0
- package/dist/sidebar/index.js.map +1 -0
- package/dist/site-header/index.d.ts +22 -0
- package/dist/site-header/index.js +55 -0
- package/dist/site-header/index.js.map +1 -0
- package/dist/skeleton/index.d.ts +4 -0
- package/dist/skeleton/index.js +1 -0
- package/dist/skeleton-DSG3FWby.js +13 -0
- package/dist/skeleton-DSG3FWby.js.map +1 -0
- package/dist/slider/index.d.ts +2 -0
- package/dist/slider/index.js +1 -0
- package/dist/slider-D_XlV4OW.js +114 -0
- package/dist/slider-D_XlV4OW.js.map +1 -0
- package/dist/slider-group/index.d.ts +46 -0
- package/dist/slider-group/index.js +198 -0
- package/dist/slider-group/index.js.map +1 -0
- package/dist/styles.css +6 -17
- package/dist/switch/index.d.ts +2 -0
- package/dist/switch/index.js +1 -0
- package/dist/switch-DXHixGHe.js +23 -0
- package/dist/switch-DXHixGHe.js.map +1 -0
- package/dist/table/index.d.ts +920 -0
- package/dist/table/index.js +1544 -0
- package/dist/table/index.js.map +1 -0
- package/dist/tabs/index.d.ts +2 -0
- package/dist/tabs/index.js +1 -0
- package/dist/tabs-DTC7coap.js +270 -0
- package/dist/tabs-DTC7coap.js.map +1 -0
- package/dist/text-area/index.d.ts +2 -0
- package/dist/text-area/index.js +1 -0
- package/dist/text-area-H6HjKnv_.js +50 -0
- package/dist/text-area-H6HjKnv_.js.map +1 -0
- package/dist/themes/hogarth.css +0 -4
- package/dist/themes/mabel.css +0 -4
- package/dist/themes/maculata.css +0 -4
- package/dist/themes/monadelpha.css +0 -4
- package/dist/themes/venus.css +0 -4
- package/dist/themes/viridiflora.css +0 -4
- package/dist/toast/index.d.ts +65 -0
- package/dist/toast/index.js +216 -0
- package/dist/toast/index.js.map +1 -0
- package/dist/toggle/index.d.ts +2 -0
- package/dist/toggle/index.js +1 -0
- package/dist/toggle-ZT9thVmz.js +73 -0
- package/dist/toggle-ZT9thVmz.js.map +1 -0
- package/dist/toggle-group/index.d.ts +10 -0
- package/dist/toggle-group/index.js +63 -0
- package/dist/toggle-group/index.js.map +1 -0
- package/dist/toggle-group-context-CBNZEf1I.js +6 -0
- package/dist/toggle-group-context-CBNZEf1I.js.map +1 -0
- package/dist/tooltip/index.d.ts +18 -0
- package/dist/tooltip/index.js +1 -0
- package/dist/tooltip-B6z3tDbW.js +41 -0
- package/dist/tooltip-B6z3tDbW.js.map +1 -0
- package/dist/trim-text-children-CQRFg2fL.js +33 -0
- package/dist/trim-text-children-CQRFg2fL.js.map +1 -0
- package/dist/utils/index.d.ts +4 -0
- package/dist/utils/index.js +3 -0
- package/dist/utils-BI2x7nW5.js +5 -0
- package/dist/utils-BI2x7nW5.js.map +1 -0
- package/package.json +100 -31
- package/dist/index.d.ts +0 -7993
- package/dist/index.js +0 -17219
- package/dist/index.js.map +0 -1
|
@@ -0,0 +1,269 @@
|
|
|
1
|
+
import { t as cn } from "./cn-BDi0DfT5.js";
|
|
2
|
+
import { cva } from "class-variance-authority";
|
|
3
|
+
import { jsx } from "react/jsx-runtime";
|
|
4
|
+
// src/components/button-group/button-group.types.ts
|
|
5
|
+
const buttonGroupVariants = cva("inline-flex cursor-pointer items-center justify-center overflow-hidden rounded-full whitespace-nowrap transition-all select-none *:rounded-none *:bg-transparent disabled:pointer-events-none disabled:opacity-50 [&>button]:text-inherit", {
|
|
6
|
+
compoundVariants: [
|
|
7
|
+
{
|
|
8
|
+
className: "bg-brand-default text-brand-on-default [&>button:hover]:bg-brand-muted",
|
|
9
|
+
tone: "brand",
|
|
10
|
+
variant: "fill"
|
|
11
|
+
},
|
|
12
|
+
{
|
|
13
|
+
className: "bg-accent-default text-accent-on-default [&>button:hover]:bg-accent-muted",
|
|
14
|
+
tone: "accent",
|
|
15
|
+
variant: "fill"
|
|
16
|
+
},
|
|
17
|
+
{
|
|
18
|
+
className: "bg-neutral-default text-neutral-on-default [&>button:hover]:bg-neutral-muted",
|
|
19
|
+
tone: "neutral",
|
|
20
|
+
variant: "fill"
|
|
21
|
+
},
|
|
22
|
+
{
|
|
23
|
+
className: "bg-error-default text-error-on-default [&>button:hover]:bg-error-muted",
|
|
24
|
+
tone: "error",
|
|
25
|
+
variant: "fill"
|
|
26
|
+
},
|
|
27
|
+
{
|
|
28
|
+
className: "bg-info-default text-info-on-default [&>button:hover]:bg-info-muted",
|
|
29
|
+
tone: "info",
|
|
30
|
+
variant: "fill"
|
|
31
|
+
},
|
|
32
|
+
{
|
|
33
|
+
className: "bg-success-default text-success-on-default [&>button:hover]:bg-success-muted",
|
|
34
|
+
tone: "success",
|
|
35
|
+
variant: "fill"
|
|
36
|
+
},
|
|
37
|
+
{
|
|
38
|
+
className: "bg-warning-default text-warning-on-default [&>button:hover]:bg-warning-muted",
|
|
39
|
+
tone: "warning",
|
|
40
|
+
variant: "fill"
|
|
41
|
+
},
|
|
42
|
+
{
|
|
43
|
+
className: "bg-brand-container text-brand-on-container [&>button:hover]:bg-brand-container-high",
|
|
44
|
+
tone: "brand",
|
|
45
|
+
variant: "secondary"
|
|
46
|
+
},
|
|
47
|
+
{
|
|
48
|
+
className: "bg-accent-container text-accent-on-container [&>button:hover]:bg-accent-container-high",
|
|
49
|
+
tone: "accent",
|
|
50
|
+
variant: "secondary"
|
|
51
|
+
},
|
|
52
|
+
{
|
|
53
|
+
className: "bg-neutral-container text-neutral-on-container [&>button:hover]:bg-neutral-container-high",
|
|
54
|
+
tone: "neutral",
|
|
55
|
+
variant: "secondary"
|
|
56
|
+
},
|
|
57
|
+
{
|
|
58
|
+
className: "bg-error-container text-error-on-container [&>button:hover]:bg-error-container-high",
|
|
59
|
+
tone: "error",
|
|
60
|
+
variant: "secondary"
|
|
61
|
+
},
|
|
62
|
+
{
|
|
63
|
+
className: "bg-info-container text-info-on-container [&>button:hover]:bg-info-container-high",
|
|
64
|
+
tone: "info",
|
|
65
|
+
variant: "secondary"
|
|
66
|
+
},
|
|
67
|
+
{
|
|
68
|
+
className: "bg-success-container text-success-on-container [&>button:hover]:bg-success-container-high",
|
|
69
|
+
tone: "success",
|
|
70
|
+
variant: "secondary"
|
|
71
|
+
},
|
|
72
|
+
{
|
|
73
|
+
className: "bg-warning-container text-warning-on-container [&>button:hover]:bg-warning-container-high",
|
|
74
|
+
tone: "warning",
|
|
75
|
+
variant: "secondary"
|
|
76
|
+
},
|
|
77
|
+
{
|
|
78
|
+
className: "border-brand-border text-brand-default [&>button:hover]:bg-brand-container [&>button:hover]:text-brand-on-container",
|
|
79
|
+
tone: "brand",
|
|
80
|
+
variant: "outline"
|
|
81
|
+
},
|
|
82
|
+
{
|
|
83
|
+
className: "border-accent-border text-accent-default [&>button:hover]:bg-accent-container [&>button:hover]:text-accent-on-container",
|
|
84
|
+
tone: "accent",
|
|
85
|
+
variant: "outline"
|
|
86
|
+
},
|
|
87
|
+
{
|
|
88
|
+
className: "border-neutral-border text-neutral-default [&>button:hover]:bg-neutral-container [&>button:hover]:text-neutral-on-container",
|
|
89
|
+
tone: "neutral",
|
|
90
|
+
variant: "outline"
|
|
91
|
+
},
|
|
92
|
+
{
|
|
93
|
+
className: "border-error-border text-error-default [&>button:hover]:bg-error-container [&>button:hover]:text-error-on-container",
|
|
94
|
+
tone: "error",
|
|
95
|
+
variant: "outline"
|
|
96
|
+
},
|
|
97
|
+
{
|
|
98
|
+
className: "border-info-border text-info-default [&>button:hover]:bg-info-container [&>button:hover]:text-info-on-container",
|
|
99
|
+
tone: "info",
|
|
100
|
+
variant: "outline"
|
|
101
|
+
},
|
|
102
|
+
{
|
|
103
|
+
className: "border-success-border text-success-default [&>button:hover]:bg-success-container [&>button:hover]:text-success-on-container",
|
|
104
|
+
tone: "success",
|
|
105
|
+
variant: "outline"
|
|
106
|
+
},
|
|
107
|
+
{
|
|
108
|
+
className: "border-warning-border text-warning-default [&>button:hover]:bg-warning-container [&>button:hover]:text-warning-on-container",
|
|
109
|
+
tone: "warning",
|
|
110
|
+
variant: "outline"
|
|
111
|
+
},
|
|
112
|
+
{
|
|
113
|
+
className: "text-brand-default [&>button:hover]:bg-brand-container [&>button:hover]:text-brand-on-container",
|
|
114
|
+
tone: "brand",
|
|
115
|
+
variant: "ghost"
|
|
116
|
+
},
|
|
117
|
+
{
|
|
118
|
+
className: "text-accent-default [&>button:hover]:bg-accent-container [&>button:hover]:text-accent-on-container",
|
|
119
|
+
tone: "accent",
|
|
120
|
+
variant: "ghost"
|
|
121
|
+
},
|
|
122
|
+
{
|
|
123
|
+
className: "text-neutral-default [&>button:hover]:bg-neutral-container [&>button:hover]:text-neutral-on-container",
|
|
124
|
+
tone: "neutral",
|
|
125
|
+
variant: "ghost"
|
|
126
|
+
},
|
|
127
|
+
{
|
|
128
|
+
className: "text-error-default [&>button:hover]:bg-error-container [&>button:hover]:text-error-on-container",
|
|
129
|
+
tone: "error",
|
|
130
|
+
variant: "ghost"
|
|
131
|
+
},
|
|
132
|
+
{
|
|
133
|
+
className: "text-info-default [&>button:hover]:bg-info-container [&>button:hover]:text-info-on-container",
|
|
134
|
+
tone: "info",
|
|
135
|
+
variant: "ghost"
|
|
136
|
+
},
|
|
137
|
+
{
|
|
138
|
+
className: "text-success-default [&>button:hover]:bg-success-container [&>button:hover]:text-success-on-container",
|
|
139
|
+
tone: "success",
|
|
140
|
+
variant: "ghost"
|
|
141
|
+
},
|
|
142
|
+
{
|
|
143
|
+
className: "text-warning-default [&>button:hover]:bg-warning-container [&>button:hover]:text-warning-on-container",
|
|
144
|
+
tone: "warning",
|
|
145
|
+
variant: "ghost"
|
|
146
|
+
},
|
|
147
|
+
{
|
|
148
|
+
className: "border-brand-border bg-brand-container text-brand-on-container [&>button:hover]:bg-brand-container-high",
|
|
149
|
+
tone: "brand",
|
|
150
|
+
variant: "soft"
|
|
151
|
+
},
|
|
152
|
+
{
|
|
153
|
+
className: "border-accent-border bg-accent-container text-accent-on-container [&>button:hover]:bg-accent-container-high",
|
|
154
|
+
tone: "accent",
|
|
155
|
+
variant: "soft"
|
|
156
|
+
},
|
|
157
|
+
{
|
|
158
|
+
className: "border-neutral-border bg-neutral-container text-neutral-on-container [&>button:hover]:bg-neutral-container-high",
|
|
159
|
+
tone: "neutral",
|
|
160
|
+
variant: "soft"
|
|
161
|
+
},
|
|
162
|
+
{
|
|
163
|
+
className: "border-error-border bg-error-container text-error-on-container [&>button:hover]:bg-error-container-high",
|
|
164
|
+
tone: "error",
|
|
165
|
+
variant: "soft"
|
|
166
|
+
},
|
|
167
|
+
{
|
|
168
|
+
className: "border-info-border bg-info-container text-info-on-container [&>button:hover]:bg-info-container-high",
|
|
169
|
+
tone: "info",
|
|
170
|
+
variant: "soft"
|
|
171
|
+
},
|
|
172
|
+
{
|
|
173
|
+
className: "border-success-border bg-success-container text-success-on-container [&>button:hover]:bg-success-container-high",
|
|
174
|
+
tone: "success",
|
|
175
|
+
variant: "soft"
|
|
176
|
+
},
|
|
177
|
+
{
|
|
178
|
+
className: "border-warning-border bg-warning-container text-warning-on-container [&>button:hover]:bg-warning-container-high",
|
|
179
|
+
tone: "warning",
|
|
180
|
+
variant: "soft"
|
|
181
|
+
},
|
|
182
|
+
{
|
|
183
|
+
className: "bg-brand-container text-brand-on-container [&>button]:not-active:hover:bg-brand-container-high [&>button]:active:bg-brand-container",
|
|
184
|
+
tone: "brand",
|
|
185
|
+
variant: "elevated"
|
|
186
|
+
},
|
|
187
|
+
{
|
|
188
|
+
className: "bg-accent-container text-accent-on-container [&>button]:not-active:hover:bg-accent-container-high [&>button]:active:bg-accent-container",
|
|
189
|
+
tone: "accent",
|
|
190
|
+
variant: "elevated"
|
|
191
|
+
},
|
|
192
|
+
{
|
|
193
|
+
className: "bg-surface-2 text-on-surface [&>button]:not-active:hover:bg-surface-3 [&>button]:not-active:hover:text-neutral-on-container [&>button]:active:bg-surface",
|
|
194
|
+
tone: "neutral",
|
|
195
|
+
variant: "elevated"
|
|
196
|
+
},
|
|
197
|
+
{
|
|
198
|
+
className: "bg-error-container text-error-on-container [&>button]:not-active:hover:bg-error-container-high [&>button]:active:bg-error-container",
|
|
199
|
+
tone: "error",
|
|
200
|
+
variant: "elevated"
|
|
201
|
+
},
|
|
202
|
+
{
|
|
203
|
+
className: "bg-info-container text-info-on-container [&>button]:not-active:hover:bg-info-container-high [&>button]:active:bg-info-container",
|
|
204
|
+
tone: "info",
|
|
205
|
+
variant: "elevated"
|
|
206
|
+
},
|
|
207
|
+
{
|
|
208
|
+
className: "bg-success-container text-success-on-container [&>button]:not-active:hover:bg-success-container-high [&>button]:active:bg-success-container",
|
|
209
|
+
tone: "success",
|
|
210
|
+
variant: "elevated"
|
|
211
|
+
},
|
|
212
|
+
{
|
|
213
|
+
className: "bg-warning-container text-warning-on-container [&>button]:not-active:hover:bg-warning-container-high [&>button]:active:bg-warning-container",
|
|
214
|
+
tone: "warning",
|
|
215
|
+
variant: "elevated"
|
|
216
|
+
}
|
|
217
|
+
],
|
|
218
|
+
defaultVariants: {
|
|
219
|
+
orientation: "horizontal",
|
|
220
|
+
size: "medium",
|
|
221
|
+
tone: "brand",
|
|
222
|
+
variant: "fill"
|
|
223
|
+
},
|
|
224
|
+
variants: {
|
|
225
|
+
orientation: {
|
|
226
|
+
horizontal: "[&>*+*]:relative [&>*+*]:before:absolute [&>*+*]:before:top-1/2 [&>*+*]:before:left-0 [&>*+*]:before:h-1/2 [&>*+*]:before:w-px [&>*+*]:before:-translate-y-1/2 [&>*+*]:before:content-[\"\"]",
|
|
227
|
+
vertical: "flex-col [&>*+*]:relative [&>*+*]:before:absolute [&>*+*]:before:top-0 [&>*+*]:before:left-1/2 [&>*+*]:before:h-px [&>*+*]:before:w-1/2 [&>*+*]:before:-translate-x-1/2 [&>*+*]:before:content-[\"\"]"
|
|
228
|
+
},
|
|
229
|
+
size: {
|
|
230
|
+
extraSmall: "*:font-body *:text-xs *:leading-none *:font-medium [&>button]:h-md [&>button]:min-w-0 [&>button]:gap-3xs [&>button]:px-2xs [&>button>svg]:size-xs [&>button[data-icon-only]:has(>svg:only-child)]:size-md [&>button[data-icon-only]:has(>svg:only-child)]:p-0",
|
|
231
|
+
large: "*:font-body *:text-lg *:leading-none *:font-medium [&>button]:h-2xl [&>button]:min-w-2xl [&>button]:gap-xs [&>button]:px-md [&>button>svg]:size-lg [&>button[data-icon-only]:has(>svg:only-child)]:size-2xl [&>button[data-icon-only]:has(>svg:only-child)]:p-0",
|
|
232
|
+
medium: "*:font-body *:text-base *:leading-none *:font-medium [&>button]:h-xl [&>button]:min-w-xl [&>button]:gap-2xs [&>button]:px-sm [&>button>svg]:size-md [&>button[data-icon-only]:has(>svg:only-child)]:size-xl [&>button[data-icon-only]:has(>svg:only-child)]:p-0",
|
|
233
|
+
small: "*:font-body *:text-sm *:leading-none *:font-medium [&>button]:h-lg [&>button]:min-w-lg [&>button]:gap-3xs [&>button]:px-xs [&>button>svg]:size-sm [&>button[data-icon-only]:has(>svg:only-child)]:size-lg [&>button[data-icon-only]:has(>svg:only-child)]:p-0"
|
|
234
|
+
},
|
|
235
|
+
tone: {
|
|
236
|
+
accent: "[&>*+*]:before:bg-accent-border",
|
|
237
|
+
brand: "[&>*+*]:before:bg-brand-border",
|
|
238
|
+
error: "[&>*+*]:before:bg-error-border",
|
|
239
|
+
info: "[&>*+*]:before:bg-info-border",
|
|
240
|
+
neutral: "[&>*+*]:before:bg-neutral-border",
|
|
241
|
+
success: "[&>*+*]:before:bg-success-border",
|
|
242
|
+
warning: ""
|
|
243
|
+
},
|
|
244
|
+
variant: {
|
|
245
|
+
elevated: "shadow-xs *:active:scale-100!",
|
|
246
|
+
fill: "",
|
|
247
|
+
ghost: "",
|
|
248
|
+
outline: "border",
|
|
249
|
+
secondary: "",
|
|
250
|
+
soft: "border"
|
|
251
|
+
}
|
|
252
|
+
}
|
|
253
|
+
});
|
|
254
|
+
// src/components/button-group/button-group.tsx
|
|
255
|
+
function ButtonGroup({ size, variant, tone, orientation, className, ref, ...props }) {
|
|
256
|
+
return /* @__PURE__ */ jsx("div", {
|
|
257
|
+
className: cn(buttonGroupVariants({
|
|
258
|
+
orientation,
|
|
259
|
+
size,
|
|
260
|
+
tone,
|
|
261
|
+
variant
|
|
262
|
+
}), className),
|
|
263
|
+
ref,
|
|
264
|
+
...props
|
|
265
|
+
});
|
|
266
|
+
}
|
|
267
|
+
export { ButtonGroup as t };
|
|
268
|
+
|
|
269
|
+
//# sourceMappingURL=button-group-7azbqlcO.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"button-group-7azbqlcO.js","names":[],"sources":["../src/components/button-group/button-group.types.ts","../src/components/button-group/button-group.tsx"],"sourcesContent":["import { cva } from 'class-variance-authority'\nimport type { VariantProps } from 'class-variance-authority'\n\nexport const buttonGroupVariants = cva(\n 'inline-flex cursor-pointer items-center justify-center overflow-hidden rounded-full whitespace-nowrap transition-all select-none *:rounded-none *:bg-transparent disabled:pointer-events-none disabled:opacity-50 [&>button]:text-inherit',\n {\n compoundVariants: [\n {\n className: 'bg-brand-default text-brand-on-default [&>button:hover]:bg-brand-muted',\n tone: 'brand',\n variant: 'fill',\n },\n {\n className: 'bg-accent-default text-accent-on-default [&>button:hover]:bg-accent-muted',\n tone: 'accent',\n variant: 'fill',\n },\n {\n className: 'bg-neutral-default text-neutral-on-default [&>button:hover]:bg-neutral-muted',\n tone: 'neutral',\n variant: 'fill',\n },\n {\n className: 'bg-error-default text-error-on-default [&>button:hover]:bg-error-muted',\n tone: 'error',\n variant: 'fill',\n },\n {\n className: 'bg-info-default text-info-on-default [&>button:hover]:bg-info-muted',\n tone: 'info',\n variant: 'fill',\n },\n {\n className: 'bg-success-default text-success-on-default [&>button:hover]:bg-success-muted',\n tone: 'success',\n variant: 'fill',\n },\n {\n className: 'bg-warning-default text-warning-on-default [&>button:hover]:bg-warning-muted',\n tone: 'warning',\n variant: 'fill',\n },\n {\n className:\n 'bg-brand-container text-brand-on-container [&>button:hover]:bg-brand-container-high',\n tone: 'brand',\n variant: 'secondary',\n },\n {\n className:\n 'bg-accent-container text-accent-on-container [&>button:hover]:bg-accent-container-high',\n tone: 'accent',\n variant: 'secondary',\n },\n {\n className:\n 'bg-neutral-container text-neutral-on-container [&>button:hover]:bg-neutral-container-high',\n tone: 'neutral',\n variant: 'secondary',\n },\n {\n className:\n 'bg-error-container text-error-on-container [&>button:hover]:bg-error-container-high',\n tone: 'error',\n variant: 'secondary',\n },\n {\n className:\n 'bg-info-container text-info-on-container [&>button:hover]:bg-info-container-high',\n tone: 'info',\n variant: 'secondary',\n },\n {\n className:\n 'bg-success-container text-success-on-container [&>button:hover]:bg-success-container-high',\n tone: 'success',\n variant: 'secondary',\n },\n {\n className:\n 'bg-warning-container text-warning-on-container [&>button:hover]:bg-warning-container-high',\n tone: 'warning',\n variant: 'secondary',\n },\n {\n className:\n 'border-brand-border text-brand-default [&>button:hover]:bg-brand-container [&>button:hover]:text-brand-on-container',\n tone: 'brand',\n variant: 'outline',\n },\n {\n className:\n 'border-accent-border text-accent-default [&>button:hover]:bg-accent-container [&>button:hover]:text-accent-on-container',\n tone: 'accent',\n variant: 'outline',\n },\n {\n className:\n 'border-neutral-border text-neutral-default [&>button:hover]:bg-neutral-container [&>button:hover]:text-neutral-on-container',\n tone: 'neutral',\n variant: 'outline',\n },\n {\n className:\n 'border-error-border text-error-default [&>button:hover]:bg-error-container [&>button:hover]:text-error-on-container',\n tone: 'error',\n variant: 'outline',\n },\n {\n className:\n 'border-info-border text-info-default [&>button:hover]:bg-info-container [&>button:hover]:text-info-on-container',\n tone: 'info',\n variant: 'outline',\n },\n {\n className:\n 'border-success-border text-success-default [&>button:hover]:bg-success-container [&>button:hover]:text-success-on-container',\n tone: 'success',\n variant: 'outline',\n },\n {\n className:\n 'border-warning-border text-warning-default [&>button:hover]:bg-warning-container [&>button:hover]:text-warning-on-container',\n tone: 'warning',\n variant: 'outline',\n },\n {\n className:\n 'text-brand-default [&>button:hover]:bg-brand-container [&>button:hover]:text-brand-on-container',\n tone: 'brand',\n variant: 'ghost',\n },\n {\n className:\n 'text-accent-default [&>button:hover]:bg-accent-container [&>button:hover]:text-accent-on-container',\n tone: 'accent',\n variant: 'ghost',\n },\n {\n className:\n 'text-neutral-default [&>button:hover]:bg-neutral-container [&>button:hover]:text-neutral-on-container',\n tone: 'neutral',\n variant: 'ghost',\n },\n {\n className:\n 'text-error-default [&>button:hover]:bg-error-container [&>button:hover]:text-error-on-container',\n tone: 'error',\n variant: 'ghost',\n },\n {\n className:\n 'text-info-default [&>button:hover]:bg-info-container [&>button:hover]:text-info-on-container',\n tone: 'info',\n variant: 'ghost',\n },\n {\n className:\n 'text-success-default [&>button:hover]:bg-success-container [&>button:hover]:text-success-on-container',\n tone: 'success',\n variant: 'ghost',\n },\n {\n className:\n 'text-warning-default [&>button:hover]:bg-warning-container [&>button:hover]:text-warning-on-container',\n tone: 'warning',\n variant: 'ghost',\n },\n {\n className:\n 'border-brand-border bg-brand-container text-brand-on-container [&>button:hover]:bg-brand-container-high',\n tone: 'brand',\n variant: 'soft',\n },\n {\n className:\n 'border-accent-border bg-accent-container text-accent-on-container [&>button:hover]:bg-accent-container-high',\n tone: 'accent',\n variant: 'soft',\n },\n {\n className:\n 'border-neutral-border bg-neutral-container text-neutral-on-container [&>button:hover]:bg-neutral-container-high',\n tone: 'neutral',\n variant: 'soft',\n },\n {\n className:\n 'border-error-border bg-error-container text-error-on-container [&>button:hover]:bg-error-container-high',\n tone: 'error',\n variant: 'soft',\n },\n {\n className:\n 'border-info-border bg-info-container text-info-on-container [&>button:hover]:bg-info-container-high',\n tone: 'info',\n variant: 'soft',\n },\n {\n className:\n 'border-success-border bg-success-container text-success-on-container [&>button:hover]:bg-success-container-high',\n tone: 'success',\n variant: 'soft',\n },\n {\n className:\n 'border-warning-border bg-warning-container text-warning-on-container [&>button:hover]:bg-warning-container-high',\n tone: 'warning',\n variant: 'soft',\n },\n {\n className:\n 'bg-brand-container text-brand-on-container [&>button]:not-active:hover:bg-brand-container-high [&>button]:active:bg-brand-container',\n tone: 'brand',\n variant: 'elevated',\n },\n {\n className:\n 'bg-accent-container text-accent-on-container [&>button]:not-active:hover:bg-accent-container-high [&>button]:active:bg-accent-container',\n tone: 'accent',\n variant: 'elevated',\n },\n {\n className:\n 'bg-surface-2 text-on-surface [&>button]:not-active:hover:bg-surface-3 [&>button]:not-active:hover:text-neutral-on-container [&>button]:active:bg-surface',\n tone: 'neutral',\n variant: 'elevated',\n },\n {\n className:\n 'bg-error-container text-error-on-container [&>button]:not-active:hover:bg-error-container-high [&>button]:active:bg-error-container',\n tone: 'error',\n variant: 'elevated',\n },\n {\n className:\n 'bg-info-container text-info-on-container [&>button]:not-active:hover:bg-info-container-high [&>button]:active:bg-info-container',\n tone: 'info',\n variant: 'elevated',\n },\n {\n className:\n 'bg-success-container text-success-on-container [&>button]:not-active:hover:bg-success-container-high [&>button]:active:bg-success-container',\n tone: 'success',\n variant: 'elevated',\n },\n {\n className:\n 'bg-warning-container text-warning-on-container [&>button]:not-active:hover:bg-warning-container-high [&>button]:active:bg-warning-container',\n tone: 'warning',\n variant: 'elevated',\n },\n ],\n defaultVariants: {\n orientation: 'horizontal',\n size: 'medium',\n tone: 'brand',\n variant: 'fill',\n },\n variants: {\n orientation: {\n horizontal:\n '[&>*+*]:relative [&>*+*]:before:absolute [&>*+*]:before:top-1/2 [&>*+*]:before:left-0 [&>*+*]:before:h-1/2 [&>*+*]:before:w-px [&>*+*]:before:-translate-y-1/2 [&>*+*]:before:content-[\"\"]',\n vertical:\n 'flex-col [&>*+*]:relative [&>*+*]:before:absolute [&>*+*]:before:top-0 [&>*+*]:before:left-1/2 [&>*+*]:before:h-px [&>*+*]:before:w-1/2 [&>*+*]:before:-translate-x-1/2 [&>*+*]:before:content-[\"\"]',\n },\n size: {\n extraSmall:\n '*:font-body *:text-xs *:leading-none *:font-medium [&>button]:h-md [&>button]:min-w-0 [&>button]:gap-3xs [&>button]:px-2xs [&>button>svg]:size-xs [&>button[data-icon-only]:has(>svg:only-child)]:size-md [&>button[data-icon-only]:has(>svg:only-child)]:p-0',\n large:\n '*:font-body *:text-lg *:leading-none *:font-medium [&>button]:h-2xl [&>button]:min-w-2xl [&>button]:gap-xs [&>button]:px-md [&>button>svg]:size-lg [&>button[data-icon-only]:has(>svg:only-child)]:size-2xl [&>button[data-icon-only]:has(>svg:only-child)]:p-0',\n medium:\n '*:font-body *:text-base *:leading-none *:font-medium [&>button]:h-xl [&>button]:min-w-xl [&>button]:gap-2xs [&>button]:px-sm [&>button>svg]:size-md [&>button[data-icon-only]:has(>svg:only-child)]:size-xl [&>button[data-icon-only]:has(>svg:only-child)]:p-0',\n small:\n '*:font-body *:text-sm *:leading-none *:font-medium [&>button]:h-lg [&>button]:min-w-lg [&>button]:gap-3xs [&>button]:px-xs [&>button>svg]:size-sm [&>button[data-icon-only]:has(>svg:only-child)]:size-lg [&>button[data-icon-only]:has(>svg:only-child)]:p-0',\n },\n tone: {\n accent: '[&>*+*]:before:bg-accent-border',\n brand: '[&>*+*]:before:bg-brand-border',\n error: '[&>*+*]:before:bg-error-border',\n info: '[&>*+*]:before:bg-info-border',\n neutral: '[&>*+*]:before:bg-neutral-border',\n success: '[&>*+*]:before:bg-success-border',\n warning: '',\n },\n variant: {\n elevated: 'shadow-xs *:active:scale-100!',\n fill: '',\n ghost: '',\n outline: 'border',\n secondary: '',\n soft: 'border',\n },\n },\n },\n)\n\nexport type ButtonGroupProps = React.ComponentProps<'div'> &\n VariantProps<typeof buttonGroupVariants>\n","import { cn } from '@/utils/cn'\n\nimport { buttonGroupVariants } from './button-group.types'\nimport type { ButtonGroupProps } from './button-group.types'\n\nexport function ButtonGroup({\n size,\n variant,\n tone,\n orientation,\n className,\n ref,\n ...props\n}: ButtonGroupProps) {\n return (\n <div\n className={cn(buttonGroupVariants({ orientation, size, tone, variant }), className)}\n ref={ref}\n {...props}\n />\n )\n}\n"],"mappings":";;;;AAGA,MAAa,sBAAsB,IACjC,6OACA;CACE,kBAAkB;EAChB;GACE,WAAW;GACX,MAAM;GACN,SAAS;EACX;EACA;GACE,WAAW;GACX,MAAM;GACN,SAAS;EACX;EACA;GACE,WAAW;GACX,MAAM;GACN,SAAS;EACX;EACA;GACE,WAAW;GACX,MAAM;GACN,SAAS;EACX;EACA;GACE,WAAW;GACX,MAAM;GACN,SAAS;EACX;EACA;GACE,WAAW;GACX,MAAM;GACN,SAAS;EACX;EACA;GACE,WAAW;GACX,MAAM;GACN,SAAS;EACX;EACA;GACE,WACE;GACF,MAAM;GACN,SAAS;EACX;EACA;GACE,WACE;GACF,MAAM;GACN,SAAS;EACX;EACA;GACE,WACE;GACF,MAAM;GACN,SAAS;EACX;EACA;GACE,WACE;GACF,MAAM;GACN,SAAS;EACX;EACA;GACE,WACE;GACF,MAAM;GACN,SAAS;EACX;EACA;GACE,WACE;GACF,MAAM;GACN,SAAS;EACX;EACA;GACE,WACE;GACF,MAAM;GACN,SAAS;EACX;EACA;GACE,WACE;GACF,MAAM;GACN,SAAS;EACX;EACA;GACE,WACE;GACF,MAAM;GACN,SAAS;EACX;EACA;GACE,WACE;GACF,MAAM;GACN,SAAS;EACX;EACA;GACE,WACE;GACF,MAAM;GACN,SAAS;EACX;EACA;GACE,WACE;GACF,MAAM;GACN,SAAS;EACX;EACA;GACE,WACE;GACF,MAAM;GACN,SAAS;EACX;EACA;GACE,WACE;GACF,MAAM;GACN,SAAS;EACX;EACA;GACE,WACE;GACF,MAAM;GACN,SAAS;EACX;EACA;GACE,WACE;GACF,MAAM;GACN,SAAS;EACX;EACA;GACE,WACE;GACF,MAAM;GACN,SAAS;EACX;EACA;GACE,WACE;GACF,MAAM;GACN,SAAS;EACX;EACA;GACE,WACE;GACF,MAAM;GACN,SAAS;EACX;EACA;GACE,WACE;GACF,MAAM;GACN,SAAS;EACX;EACA;GACE,WACE;GACF,MAAM;GACN,SAAS;EACX;EACA;GACE,WACE;GACF,MAAM;GACN,SAAS;EACX;EACA;GACE,WACE;GACF,MAAM;GACN,SAAS;EACX;EACA;GACE,WACE;GACF,MAAM;GACN,SAAS;EACX;EACA;GACE,WACE;GACF,MAAM;GACN,SAAS;EACX;EACA;GACE,WACE;GACF,MAAM;GACN,SAAS;EACX;EACA;GACE,WACE;GACF,MAAM;GACN,SAAS;EACX;EACA;GACE,WACE;GACF,MAAM;GACN,SAAS;EACX;EACA;GACE,WACE;GACF,MAAM;GACN,SAAS;EACX;EACA;GACE,WACE;GACF,MAAM;GACN,SAAS;EACX;EACA;GACE,WACE;GACF,MAAM;GACN,SAAS;EACX;EACA;GACE,WACE;GACF,MAAM;GACN,SAAS;EACX;EACA;GACE,WACE;GACF,MAAM;GACN,SAAS;EACX;EACA;GACE,WACE;GACF,MAAM;GACN,SAAS;EACX;EACA;GACE,WACE;GACF,MAAM;GACN,SAAS;EACX;CACF;CACA,iBAAiB;EACf,aAAa;EACb,MAAM;EACN,MAAM;EACN,SAAS;CACX;CACA,UAAU;EACR,aAAa;GACX,YACE;GACF,UACE;EACJ;EACA,MAAM;GACJ,YACE;GACF,OACE;GACF,QACE;GACF,OACE;EACJ;EACA,MAAM;GACJ,QAAQ;GACR,OAAO;GACP,OAAO;GACP,MAAM;GACN,SAAS;GACT,SAAS;GACT,SAAS;EACX;EACA,SAAS;GACP,UAAU;GACV,MAAM;GACN,OAAO;GACP,SAAS;GACT,WAAW;GACX,MAAM;EACR;CACF;AACF,CACF;;AClSA,SAAgB,YAAY,EAC1B,MACA,SACA,MACA,aACA,WACA,KACA,GAAG,SACgB;CACnB,OACE,oBAAC,OAAD;EACE,WAAW,GAAG,oBAAoB;GAAE;GAAa;GAAM;GAAM;EAAQ,CAAC,GAAG,SAAS;EAC7E;EACL,GAAI;CACL,CAAA;AAEL"}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import { VariantProps } from "class-variance-authority";
|
|
2
|
+
import { Button } from "@base-ui/react";
|
|
3
|
+
declare const buttonVariants: (props?: ({
|
|
4
|
+
size?: "extraSmall" | "large" | "medium" | "small" | null | undefined;
|
|
5
|
+
tone?: "accent" | "brand" | "error" | "info" | "neutral" | "success" | "warning" | null | undefined;
|
|
6
|
+
variant?: "elevated" | "fill" | "ghost" | "link" | "outline" | "secondary" | "soft" | null | undefined;
|
|
7
|
+
} & import("class-variance-authority/types").ClassProp) | undefined) => string;
|
|
8
|
+
type ButtonProps = React.ComponentProps<typeof Button> & VariantProps<typeof buttonVariants>;
|
|
9
|
+
export { ButtonProps as t };
|
|
10
|
+
//# sourceMappingURL=button.types-BFKrBCGd.d.ts.map
|
|
@@ -0,0 +1,63 @@
|
|
|
1
|
+
import { VariantProps } from "class-variance-authority";
|
|
2
|
+
import React from "react";
|
|
3
|
+
import "@daypicker/react/style.css";
|
|
4
|
+
import { DateRange, DayButton, Mode, PropsBase } from "@daypicker/react";
|
|
5
|
+
declare const calendarPanelVariants: (props?: ({
|
|
6
|
+
variant?: "elevated" | "ghost" | "outline" | null | undefined;
|
|
7
|
+
} & import("class-variance-authority/types").ClassProp) | undefined) => string;
|
|
8
|
+
type CalendarSelected = Date | Date[] | DateRange;
|
|
9
|
+
interface CalendarState {
|
|
10
|
+
selectedDates: CalendarSelected | undefined;
|
|
11
|
+
}
|
|
12
|
+
interface CalendarAction {
|
|
13
|
+
type: 'SET_SELECTED_DATES';
|
|
14
|
+
payload: CalendarSelected | undefined;
|
|
15
|
+
}
|
|
16
|
+
type CalendarProps = React.ComponentProps<'div'> & {
|
|
17
|
+
defaultState?: CalendarState;
|
|
18
|
+
};
|
|
19
|
+
interface CalendarContextValue {
|
|
20
|
+
state: CalendarState;
|
|
21
|
+
dispatch: React.Dispatch<CalendarAction>;
|
|
22
|
+
}
|
|
23
|
+
type CalendarPickerProps = PropsBase & {
|
|
24
|
+
selected?: CalendarSelected;
|
|
25
|
+
onSelect?: (date: CalendarSelected | undefined) => void;
|
|
26
|
+
mode?: Mode;
|
|
27
|
+
};
|
|
28
|
+
type CalendarPanelProps = React.ComponentProps<'div'> & VariantProps<typeof calendarPanelVariants>;
|
|
29
|
+
type CalendarHeaderProps = React.ComponentProps<'div'>;
|
|
30
|
+
type CalendarSummaryProps = React.ComponentProps<'div'>;
|
|
31
|
+
type CalendarFooterProps = React.ComponentProps<'div'>;
|
|
32
|
+
type CalendarComponents = NonNullable<PropsBase['components']>;
|
|
33
|
+
type CalendarChevronProps = React.ComponentProps<NonNullable<CalendarComponents['Chevron']>>;
|
|
34
|
+
type CalendarNextMonthButtonProps = React.ComponentProps<NonNullable<CalendarComponents['NextMonthButton']>>;
|
|
35
|
+
type CalendarPreviousMonthButtonProps = React.ComponentProps<NonNullable<CalendarComponents['PreviousMonthButton']>>;
|
|
36
|
+
type CalendarDropdownProps = React.ComponentProps<NonNullable<CalendarComponents['Dropdown']>> & {
|
|
37
|
+
children?: React.ReactNode;
|
|
38
|
+
};
|
|
39
|
+
type CalendarDayButtonProps = React.ComponentProps<typeof DayButton>;
|
|
40
|
+
declare function Calendar$1({ defaultState, children }: CalendarProps): React.JSX.Element;
|
|
41
|
+
export declare function CalendarDayButton({ className, modifiers, ...props }: CalendarDayButtonProps): import("react").JSX.Element;
|
|
42
|
+
export declare function CalendarDropdown({ children, className, disabled, value, options, onChange, 'aria-label': ariaLabel }: CalendarDropdownProps): import("react").JSX.Element;
|
|
43
|
+
export declare function CalendarFooter({ className, children, ref, ...props }: CalendarFooterProps): import("react").JSX.Element;
|
|
44
|
+
export declare function CalendarHeader({ className, children, ref, ...props }: CalendarHeaderProps): import("react").JSX.Element;
|
|
45
|
+
export declare function CalendarNextMonthButton({ className, children, ...props }: CalendarNextMonthButtonProps): import("react").JSX.Element;
|
|
46
|
+
export declare function CalendarPanel({ variant, className, children, ref, ...props }: CalendarPanelProps): import("react").JSX.Element;
|
|
47
|
+
export declare function CalendarPicker({ className, components, mode, selected, onSelect, ...props }: CalendarPickerProps): import("react").JSX.Element;
|
|
48
|
+
export declare function CalendarPreviousMonthButton({ className, children, ...props }: CalendarPreviousMonthButtonProps): import("react").JSX.Element;
|
|
49
|
+
export declare function CalendarSummary({ className, children, ref, ...props }: CalendarSummaryProps): import("react").JSX.Element;
|
|
50
|
+
export declare function CalendarChevron({ orientation }: CalendarChevronProps): import("react").JSX.Element;
|
|
51
|
+
declare const Calendar: typeof Calendar$1 & {
|
|
52
|
+
DayButton: typeof CalendarDayButton;
|
|
53
|
+
Dropdown: typeof CalendarDropdown;
|
|
54
|
+
Footer: typeof CalendarFooter;
|
|
55
|
+
Header: typeof CalendarHeader;
|
|
56
|
+
NextMonthButton: typeof CalendarNextMonthButton;
|
|
57
|
+
Panel: typeof CalendarPanel;
|
|
58
|
+
Picker: typeof CalendarPicker;
|
|
59
|
+
PreviousMonthButton: typeof CalendarPreviousMonthButton;
|
|
60
|
+
Summary: typeof CalendarSummary;
|
|
61
|
+
};
|
|
62
|
+
export { Calendar, type CalendarAction, type CalendarChevronProps, type CalendarComponents, type CalendarContextValue, type CalendarDayButtonProps, type CalendarDropdownProps, type CalendarFooterProps, type CalendarHeaderProps, type CalendarNextMonthButtonProps, type CalendarPanelProps, type CalendarPickerProps, type CalendarPreviousMonthButtonProps, type CalendarProps, type CalendarSummaryProps };
|
|
63
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1,292 @@
|
|
|
1
|
+
import { t as cn } from "../cn-BDi0DfT5.js";
|
|
2
|
+
import { t as formatDate } from "../utils-BI2x7nW5.js";
|
|
3
|
+
import { n as Icon } from "../icon-D3JWfCa2.js";
|
|
4
|
+
import { n as buttonVariants, t as Button } from "../button-BpUC-R1J.js";
|
|
5
|
+
import { a as SelectPopup, c as SelectIcon, i as SelectTitle, n as SelectValue, o as SelectList, r as SelectTrigger, s as SelectItem, t as Select } from "../select-DncJXYim.js";
|
|
6
|
+
import { cva } from "class-variance-authority";
|
|
7
|
+
import { jsx, jsxs } from "react/jsx-runtime";
|
|
8
|
+
import React, { useState } from "react";
|
|
9
|
+
import "@daypicker/react/style.css";
|
|
10
|
+
import { DayButton, DayPicker, getDefaultClassNames, isDateRange, labelDayButton } from "@daypicker/react";
|
|
11
|
+
// src/components/calendar/calendar.reducer.ts
|
|
12
|
+
const calendarReducer = (state, action) => {
|
|
13
|
+
switch (action.type) {
|
|
14
|
+
case "SET_SELECTED_DATES": return {
|
|
15
|
+
...state,
|
|
16
|
+
selectedDates: action.payload
|
|
17
|
+
};
|
|
18
|
+
default: return state;
|
|
19
|
+
}
|
|
20
|
+
};
|
|
21
|
+
// src/components/calendar/calendar.tsx
|
|
22
|
+
const CalendarContext = React.createContext(void 0);
|
|
23
|
+
const useCalendar = () => {
|
|
24
|
+
const context = React.useContext(CalendarContext);
|
|
25
|
+
if (!context) throw new Error("useCalendar must be used within a Calendar");
|
|
26
|
+
return context;
|
|
27
|
+
};
|
|
28
|
+
function Calendar$1({ defaultState, children }) {
|
|
29
|
+
const [state, dispatch] = React.useReducer(calendarReducer, defaultState ?? { selectedDates: void 0 });
|
|
30
|
+
return /* @__PURE__ */ jsx(CalendarContext.Provider, {
|
|
31
|
+
value: {
|
|
32
|
+
dispatch,
|
|
33
|
+
state
|
|
34
|
+
},
|
|
35
|
+
children
|
|
36
|
+
});
|
|
37
|
+
}
|
|
38
|
+
// src/components/calendar/calendar-day-button.tsx
|
|
39
|
+
function CalendarDayButton({ className, modifiers, ...props }) {
|
|
40
|
+
return /* @__PURE__ */ jsx(DayButton, {
|
|
41
|
+
...props,
|
|
42
|
+
modifiers,
|
|
43
|
+
className: cn(buttonVariants({
|
|
44
|
+
size: "medium",
|
|
45
|
+
tone: "neutral",
|
|
46
|
+
variant: "ghost"
|
|
47
|
+
}), "text-inherit hover:bg-brand-container hover:text-brand-on-container", modifiers.selected && "hover:bg-brand-default hover:text-brand-on-default", className)
|
|
48
|
+
});
|
|
49
|
+
}
|
|
50
|
+
// src/components/calendar/calendar-dropdown.tsx
|
|
51
|
+
function createSelectTarget(value) {
|
|
52
|
+
const element = document.createElement("select"), option = Object.assign(document.createElement("option"), { value });
|
|
53
|
+
element.append(option);
|
|
54
|
+
element.value = value;
|
|
55
|
+
return element;
|
|
56
|
+
}
|
|
57
|
+
function CalendarDropdown({ children, className, disabled, value, options, onChange, "aria-label": ariaLabel }) {
|
|
58
|
+
const handleValueChange = (newValue) => {
|
|
59
|
+
if (onChange) {
|
|
60
|
+
const element = createSelectTarget(newValue ?? "");
|
|
61
|
+
onChange({
|
|
62
|
+
bubbles: false,
|
|
63
|
+
cancelable: false,
|
|
64
|
+
currentTarget: element,
|
|
65
|
+
defaultPrevented: false,
|
|
66
|
+
eventPhase: Event.NONE,
|
|
67
|
+
isDefaultPrevented: () => false,
|
|
68
|
+
isPropagationStopped: () => false,
|
|
69
|
+
isTrusted: false,
|
|
70
|
+
nativeEvent: new Event("change"),
|
|
71
|
+
persist: () => void 0,
|
|
72
|
+
preventDefault: () => void 0,
|
|
73
|
+
stopPropagation: () => void 0,
|
|
74
|
+
target: element,
|
|
75
|
+
timeStamp: performance.now(),
|
|
76
|
+
type: "change"
|
|
77
|
+
});
|
|
78
|
+
}
|
|
79
|
+
};
|
|
80
|
+
return /* @__PURE__ */ jsxs(Select, {
|
|
81
|
+
disabled,
|
|
82
|
+
value: value?.toString(),
|
|
83
|
+
onValueChange: handleValueChange,
|
|
84
|
+
children: [/* @__PURE__ */ jsxs(SelectTrigger, {
|
|
85
|
+
variant: "ghost",
|
|
86
|
+
"aria-label": ariaLabel,
|
|
87
|
+
className: cn("", className),
|
|
88
|
+
children: [/* @__PURE__ */ jsx(SelectValue, { children: options?.find((option) => option.value === value)?.label }), children ?? /* @__PURE__ */ jsx(SelectIcon, { children: /* @__PURE__ */ jsx(Icon, { name: "chevronsUpDown" }) })]
|
|
89
|
+
}), /* @__PURE__ */ jsx(SelectPopup, { children: /* @__PURE__ */ jsx(SelectList, { children: options?.map((option) => /* @__PURE__ */ jsx(SelectItem, {
|
|
90
|
+
value: option.value.toString(),
|
|
91
|
+
disabled: option.disabled,
|
|
92
|
+
children: /* @__PURE__ */ jsx(SelectTitle, { children: option.label })
|
|
93
|
+
}, option.value)) }) })]
|
|
94
|
+
});
|
|
95
|
+
}
|
|
96
|
+
// src/components/calendar/calendar-footer.tsx
|
|
97
|
+
function CalendarFooter({ className, children, ref, ...props }) {
|
|
98
|
+
return /* @__PURE__ */ jsx("div", {
|
|
99
|
+
"data-slot": "calendar-footer",
|
|
100
|
+
className: cn("mt-xs flex flex-col gap-3xs border-t border-border pt-xs", className),
|
|
101
|
+
ref,
|
|
102
|
+
...props,
|
|
103
|
+
children
|
|
104
|
+
});
|
|
105
|
+
}
|
|
106
|
+
// src/components/calendar/calendar-header.tsx
|
|
107
|
+
function CalendarHeader({ className, children, ref, ...props }) {
|
|
108
|
+
return /* @__PURE__ */ jsx("div", {
|
|
109
|
+
className: cn("", className),
|
|
110
|
+
ref,
|
|
111
|
+
...props,
|
|
112
|
+
children
|
|
113
|
+
});
|
|
114
|
+
}
|
|
115
|
+
// src/components/calendar/calendar-next-month-button.tsx
|
|
116
|
+
function CalendarNextMonthButton({ className, children, ...props }) {
|
|
117
|
+
return /* @__PURE__ */ jsx(Button, {
|
|
118
|
+
variant: "ghost",
|
|
119
|
+
tone: "neutral",
|
|
120
|
+
size: "small",
|
|
121
|
+
className: cn("", className),
|
|
122
|
+
...props,
|
|
123
|
+
children: children ?? /* @__PURE__ */ jsx(Icon, { name: "chevronRight" })
|
|
124
|
+
});
|
|
125
|
+
}
|
|
126
|
+
// src/components/calendar/calendar.types.ts
|
|
127
|
+
const calendarPanelVariants = cva("w-fit", {
|
|
128
|
+
compoundVariants: [{
|
|
129
|
+
className: "rounded-2xl p-sm",
|
|
130
|
+
variant: ["elevated", "outline"]
|
|
131
|
+
}],
|
|
132
|
+
defaultVariants: { variant: "elevated" },
|
|
133
|
+
variants: { variant: {
|
|
134
|
+
elevated: "bg-surface shadow-2xs",
|
|
135
|
+
ghost: "bg-transparent",
|
|
136
|
+
outline: "border border-border"
|
|
137
|
+
} }
|
|
138
|
+
});
|
|
139
|
+
// src/components/calendar/calendar-panel.tsx
|
|
140
|
+
function CalendarPanel({ variant, className, children, ref, ...props }) {
|
|
141
|
+
return /* @__PURE__ */ jsx("div", {
|
|
142
|
+
className: cn(calendarPanelVariants({ variant }), className),
|
|
143
|
+
ref,
|
|
144
|
+
...props,
|
|
145
|
+
children
|
|
146
|
+
});
|
|
147
|
+
}
|
|
148
|
+
// src/components/calendar/calendar-chevron.tsx
|
|
149
|
+
const chevronIcons = {
|
|
150
|
+
down: "chevronDown",
|
|
151
|
+
left: "chevronLeft",
|
|
152
|
+
right: "chevronRight",
|
|
153
|
+
up: "chevronUp"
|
|
154
|
+
};
|
|
155
|
+
function CalendarChevron({ orientation = "left" }) {
|
|
156
|
+
return /* @__PURE__ */ jsx(Icon, { name: chevronIcons[orientation] });
|
|
157
|
+
}
|
|
158
|
+
// src/components/calendar/calendar-previous-month-button.tsx
|
|
159
|
+
function CalendarPreviousMonthButton({ className, children, ...props }) {
|
|
160
|
+
return /* @__PURE__ */ jsx(Button, {
|
|
161
|
+
...props,
|
|
162
|
+
variant: "ghost",
|
|
163
|
+
tone: "neutral",
|
|
164
|
+
size: "small",
|
|
165
|
+
className: cn("", className),
|
|
166
|
+
children: children ?? /* @__PURE__ */ jsx(Icon, { name: "chevronLeft" })
|
|
167
|
+
});
|
|
168
|
+
}
|
|
169
|
+
// src/components/calendar/calendar-picker.tsx
|
|
170
|
+
function getMultipleSelected(selectedDates) {
|
|
171
|
+
if (Array.isArray(selectedDates)) return selectedDates;
|
|
172
|
+
}
|
|
173
|
+
function getRangeSelected(selectedDates) {
|
|
174
|
+
if (isDateRange(selectedDates)) return selectedDates;
|
|
175
|
+
}
|
|
176
|
+
function getSingleSelected(selectedDates) {
|
|
177
|
+
if (selectedDates instanceof Date) return selectedDates;
|
|
178
|
+
}
|
|
179
|
+
function labelDayButtonWithVisibleText(...args) {
|
|
180
|
+
const [date, modifiers, options, dateLib] = args;
|
|
181
|
+
return `${dateLib?.format(date, "d") ?? String(date.getDate())}, ${labelDayButton(date, modifiers, options, dateLib)}`;
|
|
182
|
+
}
|
|
183
|
+
const defaultClassNames = getDefaultClassNames();
|
|
184
|
+
const defaultComponents = {
|
|
185
|
+
Chevron: CalendarChevron,
|
|
186
|
+
DayButton: CalendarDayButton,
|
|
187
|
+
Dropdown: CalendarDropdown,
|
|
188
|
+
NextMonthButton: CalendarNextMonthButton,
|
|
189
|
+
PreviousMonthButton: CalendarPreviousMonthButton
|
|
190
|
+
};
|
|
191
|
+
const calendarClassNames = {
|
|
192
|
+
caption_label: "style-text-strong-0",
|
|
193
|
+
day: cn("size-xl! rounded-full style-text-default-0 transition-colors hover:bg-brand-container hover:text-brand-on-container data-selected:text-brand-on-default data-selected:hover:bg-brand-default", defaultClassNames.day),
|
|
194
|
+
day_button: cn("size-xl! rounded-full", defaultClassNames.day_button),
|
|
195
|
+
disabled: cn("pointer-events-none text-on-surface", defaultClassNames.disabled),
|
|
196
|
+
month_caption: "flex items-center justify-center h-lg",
|
|
197
|
+
month_grid: cn("mt-xs border-separate! border-spacing-3xs", defaultClassNames.month_grid),
|
|
198
|
+
nav: cn("h-lg! w-full justify-between!", defaultClassNames.nav),
|
|
199
|
+
outside: cn("border-none text-on-surface-muted", defaultClassNames.outside),
|
|
200
|
+
range_end: cn("rounded-l-none bg-brand-default text-brand-on-default"),
|
|
201
|
+
range_middle: cn("rounded-none! border-y border-brand-border bg-brand-container! text-brand-on-container! transition-none"),
|
|
202
|
+
range_start: cn("rounded-r-none bg-brand-default text-brand-on-default", "[&.rounded-l-none]:rounded-xl"),
|
|
203
|
+
selected: cn("bg-brand-default text-brand-on-default"),
|
|
204
|
+
today: cn("text-brand-default! data-selected:text-brand-on-default!", defaultClassNames.today),
|
|
205
|
+
week: cn("", defaultClassNames.week),
|
|
206
|
+
weekdays: cn("style-text-default-0 text-on-surface-muted", defaultClassNames.weekdays)
|
|
207
|
+
};
|
|
208
|
+
function CalendarPicker({ className, components, mode = "single", selected, onSelect, ...props }) {
|
|
209
|
+
const { state, dispatch } = useCalendar(), selectedValue = selected ?? state.selectedDates, handleSelect = (next) => {
|
|
210
|
+
dispatch({
|
|
211
|
+
payload: next,
|
|
212
|
+
type: "SET_SELECTED_DATES"
|
|
213
|
+
});
|
|
214
|
+
onSelect?.(next);
|
|
215
|
+
}, baseProps = {
|
|
216
|
+
className,
|
|
217
|
+
classNames: calendarClassNames,
|
|
218
|
+
components: {
|
|
219
|
+
...defaultComponents,
|
|
220
|
+
...components
|
|
221
|
+
},
|
|
222
|
+
labels: { labelDayButton: labelDayButtonWithVisibleText },
|
|
223
|
+
...props
|
|
224
|
+
};
|
|
225
|
+
switch (mode) {
|
|
226
|
+
case "multiple": return /* @__PURE__ */ jsx(DayPicker, {
|
|
227
|
+
...baseProps,
|
|
228
|
+
mode: "multiple",
|
|
229
|
+
selected: getMultipleSelected(selectedValue),
|
|
230
|
+
onSelect: handleSelect
|
|
231
|
+
});
|
|
232
|
+
case "range": return /* @__PURE__ */ jsx(DayPicker, {
|
|
233
|
+
...baseProps,
|
|
234
|
+
mode: "range",
|
|
235
|
+
selected: getRangeSelected(selectedValue),
|
|
236
|
+
onSelect: handleSelect
|
|
237
|
+
});
|
|
238
|
+
default: return /* @__PURE__ */ jsx(DayPicker, {
|
|
239
|
+
...baseProps,
|
|
240
|
+
mode: "single",
|
|
241
|
+
selected: getSingleSelected(selectedValue),
|
|
242
|
+
onSelect: handleSelect
|
|
243
|
+
});
|
|
244
|
+
}
|
|
245
|
+
}
|
|
246
|
+
// src/components/calendar/calendar-summary.tsx
|
|
247
|
+
const dateFormatOptions = {
|
|
248
|
+
day: "numeric",
|
|
249
|
+
month: "long",
|
|
250
|
+
year: "numeric"
|
|
251
|
+
};
|
|
252
|
+
const formatCalendarDate = (date) => formatDate(date, "en-US", dateFormatOptions);
|
|
253
|
+
function CalendarSummary({ className, children, ref, ...props }) {
|
|
254
|
+
const { state } = useCalendar(), [today, setToday] = useState(() => /* @__PURE__ */ new Date());
|
|
255
|
+
let formattedDate = void 0;
|
|
256
|
+
if (state.selectedDates instanceof Date) formattedDate = formatCalendarDate(state.selectedDates);
|
|
257
|
+
if (isDateRange(state.selectedDates)) {
|
|
258
|
+
const { from: startDate, to: endDate } = state.selectedDates;
|
|
259
|
+
if (startDate && endDate) formattedDate = `${formatCalendarDate(startDate)} - ${formatCalendarDate(endDate)}`;
|
|
260
|
+
}
|
|
261
|
+
return /* @__PURE__ */ jsxs("div", {
|
|
262
|
+
className: cn("flex flex-col", className),
|
|
263
|
+
ref,
|
|
264
|
+
...props,
|
|
265
|
+
children: [
|
|
266
|
+
/* @__PURE__ */ jsx("span", {
|
|
267
|
+
className: "style-text-strong-1",
|
|
268
|
+
children: formatCalendarDate(today)
|
|
269
|
+
}),
|
|
270
|
+
/* @__PURE__ */ jsx("span", {
|
|
271
|
+
className: "style-text-strong-0",
|
|
272
|
+
children: formattedDate
|
|
273
|
+
}),
|
|
274
|
+
children
|
|
275
|
+
]
|
|
276
|
+
});
|
|
277
|
+
}
|
|
278
|
+
// src/components/calendar/index.ts
|
|
279
|
+
const Calendar = Object.assign(Calendar$1, {
|
|
280
|
+
DayButton: CalendarDayButton,
|
|
281
|
+
Dropdown: CalendarDropdown,
|
|
282
|
+
Footer: CalendarFooter,
|
|
283
|
+
Header: CalendarHeader,
|
|
284
|
+
NextMonthButton: CalendarNextMonthButton,
|
|
285
|
+
Panel: CalendarPanel,
|
|
286
|
+
Picker: CalendarPicker,
|
|
287
|
+
PreviousMonthButton: CalendarPreviousMonthButton,
|
|
288
|
+
Summary: CalendarSummary
|
|
289
|
+
});
|
|
290
|
+
export { Calendar, CalendarChevron, CalendarDayButton, CalendarDropdown, CalendarFooter, CalendarHeader, CalendarNextMonthButton, CalendarPanel, CalendarPicker, CalendarPreviousMonthButton, CalendarSummary };
|
|
291
|
+
|
|
292
|
+
//# sourceMappingURL=index.js.map
|