ixia-ui-react 1.8.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.
Files changed (270) hide show
  1. package/README.md +24 -1
  2. package/dist/accordion/index.d.ts +41 -0
  3. package/dist/accordion/index.js +142 -0
  4. package/dist/accordion/index.js.map +1 -0
  5. package/dist/alert/index.d.ts +22 -0
  6. package/dist/alert/index.js +1 -0
  7. package/dist/alert-Dcu9R8CY.js +73 -0
  8. package/dist/alert-Dcu9R8CY.js.map +1 -0
  9. package/dist/alert-dialog/index.d.ts +39 -0
  10. package/dist/alert-dialog/index.js +134 -0
  11. package/dist/alert-dialog/index.js.map +1 -0
  12. package/dist/autocomplete/index.d.ts +2 -0
  13. package/dist/autocomplete/index.js +1 -0
  14. package/dist/autocomplete-BfpWVO1l.js +169 -0
  15. package/dist/autocomplete-BfpWVO1l.js.map +1 -0
  16. package/dist/avatar/index.d.ts +2 -0
  17. package/dist/avatar/index.js +1 -0
  18. package/dist/avatar-Bp4gZh21.js +93 -0
  19. package/dist/avatar-Bp4gZh21.js.map +1 -0
  20. package/dist/badge/index.d.ts +2 -0
  21. package/dist/badge/index.js +1 -0
  22. package/dist/badge-Cl-9WTW-.js +160 -0
  23. package/dist/badge-Cl-9WTW-.js.map +1 -0
  24. package/dist/bento-box/index.d.ts +30 -0
  25. package/dist/bento-box/index.js +103 -0
  26. package/dist/bento-box/index.js.map +1 -0
  27. package/dist/breadcrumb/index.d.ts +18 -0
  28. package/dist/breadcrumb/index.js +58 -0
  29. package/dist/breadcrumb/index.js.map +1 -0
  30. package/dist/button/index.d.ts +3 -0
  31. package/dist/button/index.js +1 -0
  32. package/dist/button-BpUC-R1J.js +307 -0
  33. package/dist/button-BpUC-R1J.js.map +1 -0
  34. package/dist/button-group/index.d.ts +2 -0
  35. package/dist/button-group/index.js +1 -0
  36. package/dist/button-group-7azbqlcO.js +269 -0
  37. package/dist/button-group-7azbqlcO.js.map +1 -0
  38. package/dist/button.types-BFKrBCGd.d.ts +10 -0
  39. package/dist/calendar/index.d.ts +63 -0
  40. package/dist/calendar/index.js +292 -0
  41. package/dist/calendar/index.js.map +1 -0
  42. package/dist/chart/index.d.ts +87 -0
  43. package/dist/chart/index.js +262 -0
  44. package/dist/chart/index.js.map +1 -0
  45. package/dist/checkbox/index.d.ts +2 -0
  46. package/dist/checkbox/index.js +1 -0
  47. package/dist/checkbox-BuUZ1Lly.js +54 -0
  48. package/dist/checkbox-BuUZ1Lly.js.map +1 -0
  49. package/dist/checkbox-group/index.d.ts +6 -0
  50. package/dist/checkbox-group/index.js +17 -0
  51. package/dist/checkbox-group/index.js.map +1 -0
  52. package/dist/cn-BDi0DfT5.js +29 -0
  53. package/dist/cn-BDi0DfT5.js.map +1 -0
  54. package/dist/code-block/index.d.ts +50 -0
  55. package/dist/code-block/index.js +208 -0
  56. package/dist/code-block/index.js.map +1 -0
  57. package/dist/collapsible/index.d.ts +2 -0
  58. package/dist/collapsible/index.js +1 -0
  59. package/dist/collapsible-BVqrh0Q0.js +44 -0
  60. package/dist/collapsible-BVqrh0Q0.js.map +1 -0
  61. package/dist/color-channel-slider/index.d.ts +2 -0
  62. package/dist/color-channel-slider/index.js +1 -0
  63. package/dist/color-channel-slider-h8mUPJ35.js +70 -0
  64. package/dist/color-channel-slider-h8mUPJ35.js.map +1 -0
  65. package/dist/color-picker/index.d.ts +137 -0
  66. package/dist/color-picker/index.js +621 -0
  67. package/dist/color-picker/index.js.map +1 -0
  68. package/dist/combobox/index.d.ts +64 -0
  69. package/dist/combobox/index.js +289 -0
  70. package/dist/combobox/index.js.map +1 -0
  71. package/dist/context-menu/index.d.ts +49 -0
  72. package/dist/context-menu/index.js +166 -0
  73. package/dist/context-menu/index.js.map +1 -0
  74. package/dist/dialog/index.d.ts +36 -0
  75. package/dist/dialog/index.js +119 -0
  76. package/dist/dialog/index.js.map +1 -0
  77. package/dist/drawer/index.d.ts +31 -0
  78. package/dist/drawer/index.js +95 -0
  79. package/dist/drawer/index.js.map +1 -0
  80. package/dist/dropzone/index.d.ts +70 -0
  81. package/dist/dropzone/index.js +479 -0
  82. package/dist/dropzone/index.js.map +1 -0
  83. package/dist/field/index.d.ts +2 -0
  84. package/dist/field/index.js +1 -0
  85. package/dist/field-DTL7eA5y.js +254 -0
  86. package/dist/field-DTL7eA5y.js.map +1 -0
  87. package/dist/form/index.d.ts +220 -0
  88. package/dist/form/index.js +3 -0
  89. package/dist/form-BxMg796f.js +192 -0
  90. package/dist/form-BxMg796f.js.map +1 -0
  91. package/dist/has-single-element-child-DLGI0Dh2.js +12 -0
  92. package/dist/has-single-element-child-DLGI0Dh2.js.map +1 -0
  93. package/dist/hooks/index.d.ts +26 -0
  94. package/dist/hooks/index.js +1 -0
  95. package/dist/hooks-DUm-q_ig.js +68 -0
  96. package/dist/hooks-DUm-q_ig.js.map +1 -0
  97. package/dist/icon/index.d.ts +2 -0
  98. package/dist/icon/index.js +1 -0
  99. package/dist/icon-D3JWfCa2.js +85 -0
  100. package/dist/icon-D3JWfCa2.js.map +1 -0
  101. package/dist/icon-container/index.d.ts +10 -0
  102. package/dist/icon-container/index.js +64 -0
  103. package/dist/icon-container/index.js.map +1 -0
  104. package/dist/index-0ZQzIKoE.d.ts +11 -0
  105. package/dist/index-B3MK1QYh.d.ts +11 -0
  106. package/dist/index-BJVMIPq4.d.ts +54 -0
  107. package/dist/index-BsV-u_jc.d.ts +4 -0
  108. package/dist/index-BygR7cUT.d.ts +22 -0
  109. package/dist/index-BzTOLSgZ.d.ts +9 -0
  110. package/dist/index-C15xiG9O.d.ts +14 -0
  111. package/dist/index-C2zco6-C.d.ts +15 -0
  112. package/dist/index-CIDOd4Z8.d.ts +56 -0
  113. package/dist/index-CQti9gFb.d.ts +49 -0
  114. package/dist/index-CiE-Rqit.d.ts +70 -0
  115. package/dist/index-D1kkOg9k.d.ts +14 -0
  116. package/dist/index-DLfdAked.d.ts +34 -0
  117. package/dist/index-DMaW_XF1.d.ts +24 -0
  118. package/dist/index-Db_QGr6S.d.ts +5 -0
  119. package/dist/index-DdFxZ3Xr.d.ts +22 -0
  120. package/dist/index-DfNHJF0t.d.ts +33 -0
  121. package/dist/index-DyQYoAUf.d.ts +29 -0
  122. package/dist/index-N2CBSUDu.d.ts +14 -0
  123. package/dist/index-PuhTRMce.d.ts +11 -0
  124. package/dist/index-Wb_tILYa.d.ts +24 -0
  125. package/dist/index-bVyqfhJS.d.ts +4 -0
  126. package/dist/index-x4f8gnaI.d.ts +15 -0
  127. package/dist/input/index.d.ts +3 -0
  128. package/dist/input/index.js +1 -0
  129. package/dist/input-Laj6dwtK.js +179 -0
  130. package/dist/input-Laj6dwtK.js.map +1 -0
  131. package/dist/input-group/index.d.ts +2 -0
  132. package/dist/input-group/index.js +1 -0
  133. package/dist/input-group-CgdazGrY.js +111 -0
  134. package/dist/input-group-CgdazGrY.js.map +1 -0
  135. package/dist/input-otp/index.d.ts +13 -0
  136. package/dist/input-otp/index.js +44 -0
  137. package/dist/input-otp/index.js.map +1 -0
  138. package/dist/input.types-816rEVWU.d.ts +20 -0
  139. package/dist/input.types-D0gyoaQv.js +48 -0
  140. package/dist/input.types-D0gyoaQv.js.map +1 -0
  141. package/dist/kbd/index.d.ts +9 -0
  142. package/dist/kbd/index.js +25 -0
  143. package/dist/kbd/index.js.map +1 -0
  144. package/dist/label/index.d.ts +8 -0
  145. package/dist/label/index.js +1 -0
  146. package/dist/label-BgpayDvN.js +27 -0
  147. package/dist/label-BgpayDvN.js.map +1 -0
  148. package/dist/layer-tree/index.d.ts +728 -0
  149. package/dist/layer-tree/index.js +685 -0
  150. package/dist/layer-tree/index.js.map +1 -0
  151. package/dist/map/google/index.d.ts +143 -0
  152. package/dist/map/google/index.js +445 -0
  153. package/dist/map/google/index.js.map +1 -0
  154. package/dist/map/index.d.ts +94 -0
  155. package/dist/map/index.js +208 -0
  156. package/dist/map/index.js.map +1 -0
  157. package/dist/map.context-Dw1D7E8m.js +11 -0
  158. package/dist/map.context-Dw1D7E8m.js.map +1 -0
  159. package/dist/menu/index.d.ts +2 -0
  160. package/dist/menu/index.js +1 -0
  161. package/dist/menu-sf13cnGp.js +173 -0
  162. package/dist/menu-sf13cnGp.js.map +1 -0
  163. package/dist/menu-tone-DWBEHoX2.js +22 -0
  164. package/dist/menu-tone-DWBEHoX2.js.map +1 -0
  165. package/dist/meter/index.d.ts +2 -0
  166. package/dist/meter/index.js +1 -0
  167. package/dist/meter-HD5taq57.js +116 -0
  168. package/dist/meter-HD5taq57.js.map +1 -0
  169. package/dist/nav-bar/index.d.ts +25 -0
  170. package/dist/nav-bar/index.js +133 -0
  171. package/dist/nav-bar/index.js.map +1 -0
  172. package/dist/navigation-menu/index.d.ts +43 -0
  173. package/dist/navigation-menu/index.js +176 -0
  174. package/dist/navigation-menu/index.js.map +1 -0
  175. package/dist/number-field/index.d.ts +14 -0
  176. package/dist/number-field/index.js +116 -0
  177. package/dist/number-field/index.js.map +1 -0
  178. package/dist/popover/index.d.ts +2 -0
  179. package/dist/popover/index.js +1 -0
  180. package/dist/popover-B1s4xXrX.js +114 -0
  181. package/dist/popover-B1s4xXrX.js.map +1 -0
  182. package/dist/preview-card/index.d.ts +13 -0
  183. package/dist/preview-card/index.js +35 -0
  184. package/dist/preview-card/index.js.map +1 -0
  185. package/dist/profile/index.d.ts +21 -0
  186. package/dist/profile/index.js +52 -0
  187. package/dist/profile/index.js.map +1 -0
  188. package/dist/progress/index.d.ts +23 -0
  189. package/dist/progress/index.js +97 -0
  190. package/dist/progress/index.js.map +1 -0
  191. package/dist/radar-ping/index.d.ts +11 -0
  192. package/dist/radar-ping/index.js +49 -0
  193. package/dist/radar-ping/index.js.map +1 -0
  194. package/dist/radio-group/index.d.ts +2 -0
  195. package/dist/radio-group/index.js +1 -0
  196. package/dist/radio-group-Dj43u35Z.js +47 -0
  197. package/dist/radio-group-Dj43u35Z.js.map +1 -0
  198. package/dist/resizeable/index.d.ts +11 -0
  199. package/dist/resizeable/index.js +31 -0
  200. package/dist/resizeable/index.js.map +1 -0
  201. package/dist/scroll-area/index.d.ts +11 -0
  202. package/dist/scroll-area/index.js +51 -0
  203. package/dist/scroll-area/index.js.map +1 -0
  204. package/dist/select/index.d.ts +2 -0
  205. package/dist/select/index.js +1 -0
  206. package/dist/select-DncJXYim.js +159 -0
  207. package/dist/select-DncJXYim.js.map +1 -0
  208. package/dist/separator/index.d.ts +2 -0
  209. package/dist/separator/index.js +1 -0
  210. package/dist/separator-DgIQp1cB.js +97 -0
  211. package/dist/separator-DgIQp1cB.js.map +1 -0
  212. package/dist/sidebar/index.d.ts +80 -0
  213. package/dist/sidebar/index.js +334 -0
  214. package/dist/sidebar/index.js.map +1 -0
  215. package/dist/site-header/index.d.ts +22 -0
  216. package/dist/site-header/index.js +55 -0
  217. package/dist/site-header/index.js.map +1 -0
  218. package/dist/skeleton/index.d.ts +4 -0
  219. package/dist/skeleton/index.js +1 -0
  220. package/dist/skeleton-DSG3FWby.js +13 -0
  221. package/dist/skeleton-DSG3FWby.js.map +1 -0
  222. package/dist/slider/index.d.ts +2 -0
  223. package/dist/slider/index.js +1 -0
  224. package/dist/slider-D_XlV4OW.js +114 -0
  225. package/dist/slider-D_XlV4OW.js.map +1 -0
  226. package/dist/slider-group/index.d.ts +46 -0
  227. package/dist/slider-group/index.js +198 -0
  228. package/dist/slider-group/index.js.map +1 -0
  229. package/dist/styles.css +4 -1
  230. package/dist/switch/index.d.ts +2 -0
  231. package/dist/switch/index.js +1 -0
  232. package/dist/switch-DXHixGHe.js +23 -0
  233. package/dist/switch-DXHixGHe.js.map +1 -0
  234. package/dist/table/index.d.ts +920 -0
  235. package/dist/table/index.js +1544 -0
  236. package/dist/table/index.js.map +1 -0
  237. package/dist/tabs/index.d.ts +2 -0
  238. package/dist/tabs/index.js +1 -0
  239. package/dist/tabs-DTC7coap.js +270 -0
  240. package/dist/tabs-DTC7coap.js.map +1 -0
  241. package/dist/text-area/index.d.ts +2 -0
  242. package/dist/text-area/index.js +1 -0
  243. package/dist/text-area-H6HjKnv_.js +50 -0
  244. package/dist/text-area-H6HjKnv_.js.map +1 -0
  245. package/dist/toast/index.d.ts +65 -0
  246. package/dist/toast/index.js +216 -0
  247. package/dist/toast/index.js.map +1 -0
  248. package/dist/toggle/index.d.ts +2 -0
  249. package/dist/toggle/index.js +1 -0
  250. package/dist/toggle-ZT9thVmz.js +73 -0
  251. package/dist/toggle-ZT9thVmz.js.map +1 -0
  252. package/dist/toggle-group/index.d.ts +10 -0
  253. package/dist/toggle-group/index.js +63 -0
  254. package/dist/toggle-group/index.js.map +1 -0
  255. package/dist/toggle-group-context-CBNZEf1I.js +6 -0
  256. package/dist/toggle-group-context-CBNZEf1I.js.map +1 -0
  257. package/dist/tooltip/index.d.ts +18 -0
  258. package/dist/tooltip/index.js +1 -0
  259. package/dist/tooltip-B6z3tDbW.js +41 -0
  260. package/dist/tooltip-B6z3tDbW.js.map +1 -0
  261. package/dist/trim-text-children-CQRFg2fL.js +33 -0
  262. package/dist/trim-text-children-CQRFg2fL.js.map +1 -0
  263. package/dist/utils/index.d.ts +4 -0
  264. package/dist/utils/index.js +3 -0
  265. package/dist/utils-BI2x7nW5.js +5 -0
  266. package/dist/utils-BI2x7nW5.js.map +1 -0
  267. package/package.json +100 -31
  268. package/dist/index.d.ts +0 -8000
  269. package/dist/index.js +0 -17274
  270. 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