@giddaa-housing/ui 0.1.0 → 1.1.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 (315) hide show
  1. package/README.md +18 -6
  2. package/css/base.css +37 -0
  3. package/css/components.css +135 -0
  4. package/css/generated/shared.css +1 -0
  5. package/css/giddaa.css +402 -0
  6. package/css/preset.css +77 -0
  7. package/css/styles.css +2 -0
  8. package/css/theme.css +255 -0
  9. package/dist/accordion.d.ts +9 -10
  10. package/dist/accordion.js +41 -117
  11. package/dist/activity-timeline.d.ts +29 -0
  12. package/dist/activity-timeline.js +97 -0
  13. package/dist/alert.d.ts +8 -9
  14. package/dist/alert.js +53 -141
  15. package/dist/auth-layout.d.ts +23 -0
  16. package/dist/auth-layout.js +153 -0
  17. package/dist/avatar.d.ts +6 -6
  18. package/dist/avatar.js +40 -142
  19. package/dist/badge.d.ts +12 -13
  20. package/dist/badge.js +66 -114
  21. package/dist/bar-chart.d.ts +136 -114
  22. package/dist/bar-chart.js +244 -297
  23. package/dist/breadcrumb.d.ts +5 -5
  24. package/dist/breadcrumb.js +56 -148
  25. package/dist/bullet-chart.d.ts +33 -33
  26. package/dist/bullet-chart.js +123 -183
  27. package/dist/button-BZIeyUw6.d.ts +17 -0
  28. package/dist/button-group.d.ts +13 -16
  29. package/dist/button-group.js +38 -163
  30. package/dist/button.d.ts +2 -19
  31. package/dist/button.js +90 -142
  32. package/dist/calendar.d.ts +6 -6
  33. package/dist/calendar.js +134 -288
  34. package/dist/card.d.ts +14 -16
  35. package/dist/card.js +58 -174
  36. package/dist/carousel.d.ts +34 -35
  37. package/dist/carousel.js +319 -378
  38. package/dist/chart.d.ts +58 -59
  39. package/dist/chart.js +350 -466
  40. package/dist/checkbox.d.ts +10 -12
  41. package/dist/checkbox.js +84 -84
  42. package/dist/cn-BI_4DMBf.js +23 -0
  43. package/dist/collapsible.d.ts +7 -8
  44. package/dist/collapsible.js +23 -77
  45. package/dist/combobox.d.ts +10 -10
  46. package/dist/combobox.js +220 -696
  47. package/dist/cta.d.ts +64 -0
  48. package/dist/cta.js +192 -0
  49. package/dist/currency-selector.d.ts +41 -0
  50. package/dist/currency-selector.js +114 -0
  51. package/dist/data-table.d.ts +164 -0
  52. package/dist/data-table.js +673 -0
  53. package/dist/date-picker.d.ts +27 -20
  54. package/dist/date-picker.js +122 -520
  55. package/dist/details-card.d.ts +19 -0
  56. package/dist/details-card.js +118 -0
  57. package/dist/dialog.d.ts +13 -14
  58. package/dist/dialog.js +117 -320
  59. package/dist/dropdown-menu.d.ts +14 -14
  60. package/dist/dropdown-menu.js +170 -365
  61. package/dist/dropzone.d.ts +55 -55
  62. package/dist/dropzone.js +328 -467
  63. package/dist/editorial-card.d.ts +27 -0
  64. package/dist/editorial-card.js +144 -0
  65. package/dist/empty-state.d.ts +8 -9
  66. package/dist/empty-state.js +48 -135
  67. package/dist/field.d.ts +23 -25
  68. package/dist/field.js +111 -327
  69. package/dist/filter.d.ts +118 -0
  70. package/dist/filter.js +775 -0
  71. package/dist/footer.d.ts +40 -0
  72. package/dist/footer.js +227 -0
  73. package/dist/funnel-chart.d.ts +38 -41
  74. package/dist/funnel-chart.js +168 -563
  75. package/dist/gallery-indicator.d.ts +17 -0
  76. package/dist/gallery-indicator.js +75 -0
  77. package/dist/heatmap-chart.d.ts +95 -0
  78. package/dist/heatmap-chart.js +197 -0
  79. package/dist/infotip.d.ts +10 -0
  80. package/dist/infotip.js +40 -0
  81. package/dist/input-CfoEJ8A6.d.ts +12 -0
  82. package/dist/input-group.d.ts +16 -19
  83. package/dist/input-group.js +92 -372
  84. package/dist/input-size-context-C-SFx9sx.d.ts +10 -0
  85. package/dist/input-size-context.d.ts +2 -11
  86. package/dist/input-size-context.js +14 -20
  87. package/dist/input.d.ts +2 -13
  88. package/dist/input.js +23 -79
  89. package/dist/item.d.ts +7 -8
  90. package/dist/item.js +22 -89
  91. package/dist/kpi-card.d.ts +18 -20
  92. package/dist/kpi-card.js +84 -232
  93. package/dist/label.d.ts +6 -6
  94. package/dist/label.js +39 -66
  95. package/dist/line-chart.d.ts +88 -89
  96. package/dist/line-chart.js +143 -262
  97. package/dist/logo.d.ts +4 -4
  98. package/dist/logo.js +87 -141
  99. package/dist/map-indicator.d.ts +13 -0
  100. package/dist/map-indicator.js +83 -0
  101. package/dist/match.d.ts +15 -0
  102. package/dist/match.js +68 -0
  103. package/dist/media-gallery-hero.d.ts +58 -0
  104. package/dist/media-gallery-hero.js +201 -0
  105. package/dist/media-player.d.ts +60 -0
  106. package/dist/media-player.js +919 -0
  107. package/dist/multi-step-form.d.ts +56 -0
  108. package/dist/multi-step-form.js +342 -0
  109. package/dist/number-input.d.ts +34 -34
  110. package/dist/number-input.js +62 -413
  111. package/dist/page-header.d.ts +10 -11
  112. package/dist/page-header.js +34 -107
  113. package/dist/pagination.d.ts +17 -20
  114. package/dist/pagination.js +132 -341
  115. package/dist/password-input.d.ts +5 -12
  116. package/dist/password-input.js +32 -354
  117. package/dist/phone-input.d.ts +19 -19
  118. package/dist/phone-input.js +232 -561
  119. package/dist/photo-gallery.d.ts +20 -20
  120. package/dist/photo-gallery.js +314 -746
  121. package/dist/picker-lzgmsNfG.js +32 -0
  122. package/dist/pie-chart.d.ts +60 -60
  123. package/dist/pie-chart.js +141 -184
  124. package/dist/popover.d.ts +9 -9
  125. package/dist/popover.js +60 -156
  126. package/dist/price-tag.d.ts +34 -0
  127. package/dist/price-tag.js +118 -0
  128. package/dist/progress.d.ts +18 -16
  129. package/dist/progress.js +156 -300
  130. package/dist/property-listing-card.d.ts +29 -0
  131. package/dist/property-listing-card.js +117 -0
  132. package/dist/radar-chart.d.ts +108 -0
  133. package/dist/radar-chart.js +172 -0
  134. package/dist/radio-group.d.ts +11 -13
  135. package/dist/radio-group.js +47 -96
  136. package/dist/review-block.d.ts +18 -0
  137. package/dist/review-block.js +154 -0
  138. package/dist/rich-text-editor.d.ts +30 -14
  139. package/dist/rich-text-editor.js +594 -979
  140. package/dist/scatter-chart.d.ts +140 -0
  141. package/dist/scatter-chart.js +248 -0
  142. package/dist/search-input.d.ts +8 -15
  143. package/dist/search-input.js +58 -408
  144. package/dist/select.d.ts +8 -8
  145. package/dist/select.js +131 -291
  146. package/dist/separator.d.ts +8 -9
  147. package/dist/separator.js +31 -70
  148. package/dist/sheet.d.ts +11 -11
  149. package/dist/sheet.js +84 -262
  150. package/dist/sidebar.d.ts +32 -37
  151. package/dist/sidebar.js +380 -1055
  152. package/dist/size-context-D4mYvcg8.d.ts +10 -0
  153. package/dist/size-context.d.ts +2 -11
  154. package/dist/size-context.js +14 -18
  155. package/dist/skeleton.d.ts +4 -5
  156. package/dist/skeleton.js +9 -45
  157. package/dist/slider.d.ts +27 -0
  158. package/dist/slider.js +81 -0
  159. package/dist/sparkline.d.ts +43 -46
  160. package/dist/sparkline.js +223 -561
  161. package/dist/stepper.d.ts +23 -24
  162. package/dist/stepper.js +149 -276
  163. package/dist/styles.css +9995 -2
  164. package/dist/switch.d.ts +10 -12
  165. package/dist/switch.js +49 -106
  166. package/dist/table-card.d.ts +35 -0
  167. package/dist/table-card.js +125 -0
  168. package/dist/table.d.ts +18 -14
  169. package/dist/table.js +114 -182
  170. package/dist/tabs.d.ts +23 -15
  171. package/dist/tabs.js +62 -149
  172. package/dist/tag.d.ts +22 -23
  173. package/dist/tag.js +104 -156
  174. package/dist/testimonial-block.d.ts +33 -0
  175. package/dist/testimonial-block.js +208 -0
  176. package/dist/textarea-IS_D8pXf.d.ts +11 -0
  177. package/dist/textarea.d.ts +2 -12
  178. package/dist/textarea.js +20 -74
  179. package/dist/time-picker.d.ts +11 -11
  180. package/dist/time-picker.js +247 -464
  181. package/dist/toast.d.ts +16 -18
  182. package/dist/toast.js +154 -310
  183. package/dist/tooltip.d.ts +9 -10
  184. package/dist/tooltip.js +33 -91
  185. package/dist/tree-map.d.ts +54 -57
  186. package/dist/tree-map.js +231 -646
  187. package/dist/use-uncontrolled-CLfM1XbB.js +21 -0
  188. package/dist/waterfall-chart.d.ts +126 -0
  189. package/dist/waterfall-chart.js +480 -0
  190. package/package.json +123 -34
  191. package/dist/accordion.js.map +0 -1
  192. package/dist/alert.js.map +0 -1
  193. package/dist/avatar.js.map +0 -1
  194. package/dist/badge.js.map +0 -1
  195. package/dist/bar-chart.js.map +0 -1
  196. package/dist/base.css +0 -32
  197. package/dist/breadcrumb.js.map +0 -1
  198. package/dist/bullet-chart.js.map +0 -1
  199. package/dist/button-group.js.map +0 -1
  200. package/dist/button.js.map +0 -1
  201. package/dist/calendar.js.map +0 -1
  202. package/dist/card.js.map +0 -1
  203. package/dist/carousel.js.map +0 -1
  204. package/dist/chart.js.map +0 -1
  205. package/dist/checkbox.js.map +0 -1
  206. package/dist/collapsible.js.map +0 -1
  207. package/dist/combobox.js.map +0 -1
  208. package/dist/date-picker.js.map +0 -1
  209. package/dist/dialog.js.map +0 -1
  210. package/dist/dropdown-menu.js.map +0 -1
  211. package/dist/dropzone.js.map +0 -1
  212. package/dist/empty-state.js.map +0 -1
  213. package/dist/field.js.map +0 -1
  214. package/dist/files/red-hat-display-latin-300-italic.woff +0 -0
  215. package/dist/files/red-hat-display-latin-300-italic.woff2 +0 -0
  216. package/dist/files/red-hat-display-latin-300-normal.woff +0 -0
  217. package/dist/files/red-hat-display-latin-300-normal.woff2 +0 -0
  218. package/dist/files/red-hat-display-latin-400-italic.woff +0 -0
  219. package/dist/files/red-hat-display-latin-400-italic.woff2 +0 -0
  220. package/dist/files/red-hat-display-latin-400-normal.woff +0 -0
  221. package/dist/files/red-hat-display-latin-400-normal.woff2 +0 -0
  222. package/dist/files/red-hat-display-latin-500-italic.woff +0 -0
  223. package/dist/files/red-hat-display-latin-500-italic.woff2 +0 -0
  224. package/dist/files/red-hat-display-latin-500-normal.woff +0 -0
  225. package/dist/files/red-hat-display-latin-500-normal.woff2 +0 -0
  226. package/dist/files/red-hat-display-latin-600-italic.woff +0 -0
  227. package/dist/files/red-hat-display-latin-600-italic.woff2 +0 -0
  228. package/dist/files/red-hat-display-latin-600-normal.woff +0 -0
  229. package/dist/files/red-hat-display-latin-600-normal.woff2 +0 -0
  230. package/dist/files/red-hat-display-latin-700-italic.woff +0 -0
  231. package/dist/files/red-hat-display-latin-700-italic.woff2 +0 -0
  232. package/dist/files/red-hat-display-latin-700-normal.woff +0 -0
  233. package/dist/files/red-hat-display-latin-700-normal.woff2 +0 -0
  234. package/dist/files/red-hat-display-latin-800-italic.woff +0 -0
  235. package/dist/files/red-hat-display-latin-800-italic.woff2 +0 -0
  236. package/dist/files/red-hat-display-latin-800-normal.woff +0 -0
  237. package/dist/files/red-hat-display-latin-800-normal.woff2 +0 -0
  238. package/dist/files/red-hat-display-latin-900-italic.woff +0 -0
  239. package/dist/files/red-hat-display-latin-900-italic.woff2 +0 -0
  240. package/dist/files/red-hat-display-latin-900-normal.woff +0 -0
  241. package/dist/files/red-hat-display-latin-900-normal.woff2 +0 -0
  242. package/dist/files/red-hat-display-latin-ext-300-italic.woff +0 -0
  243. package/dist/files/red-hat-display-latin-ext-300-italic.woff2 +0 -0
  244. package/dist/files/red-hat-display-latin-ext-300-normal.woff +0 -0
  245. package/dist/files/red-hat-display-latin-ext-300-normal.woff2 +0 -0
  246. package/dist/files/red-hat-display-latin-ext-400-italic.woff +0 -0
  247. package/dist/files/red-hat-display-latin-ext-400-italic.woff2 +0 -0
  248. package/dist/files/red-hat-display-latin-ext-400-normal.woff +0 -0
  249. package/dist/files/red-hat-display-latin-ext-400-normal.woff2 +0 -0
  250. package/dist/files/red-hat-display-latin-ext-500-italic.woff +0 -0
  251. package/dist/files/red-hat-display-latin-ext-500-italic.woff2 +0 -0
  252. package/dist/files/red-hat-display-latin-ext-500-normal.woff +0 -0
  253. package/dist/files/red-hat-display-latin-ext-500-normal.woff2 +0 -0
  254. package/dist/files/red-hat-display-latin-ext-600-italic.woff +0 -0
  255. package/dist/files/red-hat-display-latin-ext-600-italic.woff2 +0 -0
  256. package/dist/files/red-hat-display-latin-ext-600-normal.woff +0 -0
  257. package/dist/files/red-hat-display-latin-ext-600-normal.woff2 +0 -0
  258. package/dist/files/red-hat-display-latin-ext-700-italic.woff +0 -0
  259. package/dist/files/red-hat-display-latin-ext-700-italic.woff2 +0 -0
  260. package/dist/files/red-hat-display-latin-ext-700-normal.woff +0 -0
  261. package/dist/files/red-hat-display-latin-ext-700-normal.woff2 +0 -0
  262. package/dist/files/red-hat-display-latin-ext-800-italic.woff +0 -0
  263. package/dist/files/red-hat-display-latin-ext-800-italic.woff2 +0 -0
  264. package/dist/files/red-hat-display-latin-ext-800-normal.woff +0 -0
  265. package/dist/files/red-hat-display-latin-ext-800-normal.woff2 +0 -0
  266. package/dist/files/red-hat-display-latin-ext-900-italic.woff +0 -0
  267. package/dist/files/red-hat-display-latin-ext-900-italic.woff2 +0 -0
  268. package/dist/files/red-hat-display-latin-ext-900-normal.woff +0 -0
  269. package/dist/files/red-hat-display-latin-ext-900-normal.woff2 +0 -0
  270. package/dist/funnel-chart.js.map +0 -1
  271. package/dist/index.d.ts +0 -87
  272. package/dist/index.js +0 -10448
  273. package/dist/index.js.map +0 -1
  274. package/dist/input-group.js.map +0 -1
  275. package/dist/input-size-context.js.map +0 -1
  276. package/dist/input.js.map +0 -1
  277. package/dist/item.js.map +0 -1
  278. package/dist/kpi-card.js.map +0 -1
  279. package/dist/label.js.map +0 -1
  280. package/dist/line-chart.js.map +0 -1
  281. package/dist/logo.js.map +0 -1
  282. package/dist/number-input.js.map +0 -1
  283. package/dist/page-header.js.map +0 -1
  284. package/dist/pagination.js.map +0 -1
  285. package/dist/password-input.js.map +0 -1
  286. package/dist/phone-input.js.map +0 -1
  287. package/dist/photo-gallery.js.map +0 -1
  288. package/dist/pie-chart.js.map +0 -1
  289. package/dist/popover.js.map +0 -1
  290. package/dist/progress.js.map +0 -1
  291. package/dist/radio-group.js.map +0 -1
  292. package/dist/red-hat-display.css +0 -2
  293. package/dist/rich-text-editor.js.map +0 -1
  294. package/dist/search-input.js.map +0 -1
  295. package/dist/select.js.map +0 -1
  296. package/dist/separator.js.map +0 -1
  297. package/dist/sheet.js.map +0 -1
  298. package/dist/sidebar.js.map +0 -1
  299. package/dist/size-context.js.map +0 -1
  300. package/dist/skeleton.js.map +0 -1
  301. package/dist/sparkline.js.map +0 -1
  302. package/dist/stepper.js.map +0 -1
  303. package/dist/switch.js.map +0 -1
  304. package/dist/tab-list.d.ts +0 -38
  305. package/dist/tab-list.js +0 -394
  306. package/dist/tab-list.js.map +0 -1
  307. package/dist/table.js.map +0 -1
  308. package/dist/tabs.js.map +0 -1
  309. package/dist/tag.js.map +0 -1
  310. package/dist/textarea.js.map +0 -1
  311. package/dist/theme/giddaa.css +0 -2
  312. package/dist/time-picker.js.map +0 -1
  313. package/dist/toast.js.map +0 -1
  314. package/dist/tooltip.js.map +0 -1
  315. package/dist/tree-map.js.map +0 -1
package/dist/select.js CHANGED
@@ -1,305 +1,145 @@
1
- // src/components/ui/select.tsx
2
- import { Select as SelectPrimitive } from "@base-ui/react/select";
3
- import { cva } from "class-variance-authority";
1
+ "use client";
2
+ import { t as cn } from "./cn-BI_4DMBf.js";
3
+ import { SizeProvider, useComponentSize } from "./size-context.js";
4
4
  import { CheckIcon, ChevronDownIcon, ChevronUpIcon } from "lucide-react";
5
+ import { jsx, jsxs } from "react/jsx-runtime";
6
+ import { cva } from "class-variance-authority";
5
7
  import * as React from "react";
6
-
7
- // src/lib/cn.ts
8
- import { clsx } from "clsx";
9
- import { extendTailwindMerge } from "tailwind-merge";
10
- var twMerge = extendTailwindMerge({
11
- extend: {
12
- classGroups: {
13
- "font-size": [
14
- {
15
- text: [
16
- "gdt-display",
17
- "gdt-h1",
18
- "gdt-h2",
19
- "gdt-h3",
20
- "gdt-h4",
21
- "gdt-h5",
22
- "gdt-xl",
23
- "gdt-lg",
24
- "gdt-md",
25
- "gdt-sm",
26
- "gdt-xs",
27
- "gdt-subtext",
28
- "gdt-capitalized"
29
- ]
30
- }
31
- ]
32
- }
33
- }
34
- });
35
- function cn(...inputs) {
36
- return twMerge(clsx(inputs));
37
- }
38
-
39
- // src/components/ui/size-context.tsx
40
- import { createContext, useContext } from "react";
41
- import { Fragment, jsx } from "react/jsx-runtime";
42
- var SizeContext = createContext(void 0);
43
- function SizeProvider({
44
- children,
45
- size
46
- }) {
47
- if (!size) {
48
- return /* @__PURE__ */ jsx(Fragment, { children });
49
- }
50
- return /* @__PURE__ */ jsx(SizeContext.Provider, { value: size, children });
51
- }
52
- function useComponentSize(size, fallback = "md") {
53
- const inheritedSize = useContext(SizeContext);
54
- return size ?? inheritedSize ?? fallback;
8
+ import { Select as Select$1 } from "@base-ui/react/select";
9
+ //#region src/select.tsx
10
+ const SelectSelectionContext = React.createContext({ multiple: false });
11
+ function Select({ multiple, children, size, ...props }) {
12
+ return /* @__PURE__ */ jsx(SizeProvider, {
13
+ size,
14
+ children: /* @__PURE__ */ jsx(SelectSelectionContext.Provider, {
15
+ value: { multiple: multiple === true },
16
+ children: /* @__PURE__ */ jsx(Select$1.Root, {
17
+ multiple,
18
+ ...props,
19
+ children
20
+ })
21
+ })
22
+ });
55
23
  }
56
-
57
- // src/components/ui/select.tsx
58
- import { jsx as jsx2, jsxs } from "react/jsx-runtime";
59
- var SelectSelectionContext = React.createContext({ multiple: false });
60
- function Select({
61
- multiple,
62
- children,
63
- size,
64
- ...props
65
- }) {
66
- return /* @__PURE__ */ jsx2(SizeProvider, { size, children: /* @__PURE__ */ jsx2(SelectSelectionContext.Provider, { value: { multiple: multiple === true }, children: /* @__PURE__ */ jsx2(SelectPrimitive.Root, { multiple, ...props, children }) }) });
67
- }
68
- var selectTriggerVariants = cva(
69
- "group/select-trigger flex w-fit min-w-0 items-center justify-between rounded-full border border-line bg-canvas text-left font-normal whitespace-nowrap text-fg-primary shadow-none outline-none transition-[background-color,border-color,border-radius,box-shadow,color] select-none hover:border-line-strong focus-visible:border-line-focus focus-visible:inset-ring-1 focus-visible:inset-ring-line-focus data-focused:border-line-focus data-focused:inset-ring-1 data-focused:inset-ring-line-focus data-popup-open:rounded-2xl data-popup-open:border-line-focus data-popup-open:inset-ring-1 data-popup-open:inset-ring-line-focus disabled:pointer-events-none disabled:cursor-not-allowed disabled:border-line-subtle disabled:bg-surface disabled:text-fg-caption-placeholder data-disabled:pointer-events-none data-disabled:cursor-not-allowed data-disabled:border-line-subtle data-disabled:bg-surface data-disabled:text-fg-caption-placeholder data-placeholder:text-fg-caption-placeholder aria-invalid:border-line-danger aria-invalid:text-fg-danger aria-invalid:shadow-none data-[invalid=true]:border-line-danger data-[invalid=true]:text-fg-danger *:data-[slot=select-value]:line-clamp-1 *:data-[slot=select-value]:flex *:data-[slot=select-value]:min-w-0 *:data-[slot=select-value]:items-center *:data-[slot=select-value]:gap-2 [&_svg]:pointer-events-none [&_svg]:shrink-0",
70
- {
71
- variants: {
72
- size: {
73
- sm: "h-8 gap-2 px-3 text-gdt-xs [&_svg:not([class*='size-'])]:size-3.5",
74
- md: "h-10 gap-2 px-3.5 text-gdt-sm [&_svg:not([class*='size-'])]:size-4",
75
- lg: "h-12 gap-2.5 px-4 pr-5 text-gdt-md [&_svg:not([class*='size-'])]:size-4.5"
76
- }
77
- },
78
- defaultVariants: {
79
- size: "md"
80
- }
81
- }
82
- );
83
- var selectContentVariants = cva(
84
- "relative isolate z-50 max-h-(--available-height) w-(--anchor-width) min-w-36 origin-(--transform-origin) overflow-x-hidden overflow-y-auto border border-line-subtle bg-canvas text-fg-primary shadow-(--elevation-e1-shadow) duration-100 data-[align-trigger=true]:animate-none data-[side=bottom]:slide-in-from-top-2 data-[side=inline-end]:slide-in-from-left-2 data-[side=inline-start]:slide-in-from-right-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2 data-open:animate-in data-open:fade-in-0 data-open:zoom-in-95 data-closed:animate-out data-closed:fade-out-0 data-closed:zoom-out-95",
85
- {
86
- variants: {
87
- size: {
88
- sm: "rounded-lg p-1",
89
- md: "rounded-xl p-1.5",
90
- lg: "rounded-[18px] p-2"
91
- }
92
- },
93
- defaultVariants: {
94
- size: "md"
95
- }
96
- }
97
- );
98
- var selectItemVariants = cva(
99
- "group/select-item relative flex w-full cursor-pointer items-center font-normal text-fg-primary outline-none select-none data-highlighted:bg-surface data-disabled:pointer-events-none data-disabled:text-fg-caption-placeholder [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4 *:[span]:last:flex *:[span]:last:items-center *:[span]:last:gap-2",
100
- {
101
- variants: {
102
- size: {
103
- sm: "gap-1.5 rounded-md px-3 py-1.5 text-gdt-xs",
104
- md: "gap-2 rounded-md px-4 py-2 text-gdt-sm",
105
- lg: "gap-2.5 rounded-md px-4 py-2.5 text-gdt-md"
106
- }
107
- },
108
- defaultVariants: {
109
- size: "md"
110
- }
111
- }
112
- );
24
+ const selectTriggerVariants = cva("group/select-trigger flex w-fit min-w-0 items-center justify-between rounded-full border border-line bg-canvas text-left font-normal whitespace-nowrap text-fg-primary shadow-none outline-none transition-[background-color,border-color,border-radius,box-shadow,color] select-none hover:border-line-strong focus-visible:border-line-focus focus-visible:inset-ring-1 focus-visible:inset-ring-line-focus data-focused:border-line-focus data-focused:inset-ring-1 data-focused:inset-ring-line-focus data-popup-open:rounded-2xl data-popup-open:border-line-focus data-popup-open:inset-ring-1 data-popup-open:inset-ring-line-focus disabled:pointer-events-none disabled:cursor-not-allowed disabled:border-line-subtle disabled:bg-surface disabled:text-fg-caption-placeholder data-disabled:pointer-events-none data-disabled:cursor-not-allowed data-disabled:border-line-subtle data-disabled:bg-surface data-disabled:text-fg-caption-placeholder data-placeholder:text-fg-caption-placeholder aria-invalid:border-line-danger aria-invalid:text-fg-danger aria-invalid:shadow-none data-[invalid=true]:border-line-danger data-[invalid=true]:text-fg-danger *:data-[slot=select-value]:line-clamp-1 *:data-[slot=select-value]:flex *:data-[slot=select-value]:min-w-0 *:data-[slot=select-value]:items-center *:data-[slot=select-value]:gap-2 [&_svg]:pointer-events-none [&_svg]:shrink-0", {
25
+ variants: { size: {
26
+ sm: "h-8 gap-2 px-3 text-gdt-xs [&_svg:not([class*='size-'])]:size-3.5",
27
+ md: "h-10 gap-2 px-3.5 text-gdt-sm [&_svg:not([class*='size-'])]:size-4",
28
+ lg: "h-12 gap-2.5 px-4 pr-5 text-gdt-md [&_svg:not([class*='size-'])]:size-4.5"
29
+ } },
30
+ defaultVariants: { size: "md" }
31
+ });
32
+ const selectContentVariants = cva("relative isolate z-50 max-h-(--available-height) w-(--anchor-width) min-w-36 origin-(--transform-origin) overflow-x-hidden overflow-y-auto border border-line-subtle bg-canvas text-fg-primary shadow-(--elevation-e1-shadow) duration-100 data-[align-trigger=true]:animate-none data-[side=bottom]:slide-in-from-top-2 data-[side=inline-end]:slide-in-from-left-2 data-[side=inline-start]:slide-in-from-right-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2 data-open:animate-in data-open:fade-in-0 data-open:zoom-in-95 data-closed:animate-out data-closed:fade-out-0 data-closed:zoom-out-95", {
33
+ variants: { size: {
34
+ sm: "rounded-lg p-1",
35
+ md: "rounded-xl p-1.5",
36
+ lg: "rounded-[18px] p-2"
37
+ } },
38
+ defaultVariants: { size: "md" }
39
+ });
40
+ const selectItemVariants = cva("group/select-item relative flex w-full cursor-pointer items-center font-normal text-fg-primary outline-none select-none data-highlighted:bg-surface data-disabled:pointer-events-none data-disabled:text-fg-caption-placeholder [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4 *:[span]:last:flex *:[span]:last:items-center *:[span]:last:gap-2", {
41
+ variants: { size: {
42
+ sm: "gap-1.5 rounded-md px-3 py-1.5 text-gdt-xs",
43
+ md: "gap-2 rounded-md px-4 py-2 text-gdt-sm",
44
+ lg: "gap-2.5 rounded-md px-4 py-2.5 text-gdt-md"
45
+ } },
46
+ defaultVariants: { size: "md" }
47
+ });
113
48
  function SelectGroup({ className, ...props }) {
114
- return /* @__PURE__ */ jsx2(
115
- SelectPrimitive.Group,
116
- {
117
- "data-slot": "select-group",
118
- className: cn("scroll-my-1 space-y-0.5", className),
119
- ...props
120
- }
121
- );
49
+ return /* @__PURE__ */ jsx(Select$1.Group, {
50
+ "data-slot": "select-group",
51
+ className: cn("scroll-my-1 space-y-0.5", className),
52
+ ...props
53
+ });
122
54
  }
123
55
  function SelectValue({ className, ...props }) {
124
- return /* @__PURE__ */ jsx2(
125
- SelectPrimitive.Value,
126
- {
127
- "data-slot": "select-value",
128
- className: cn("flex min-w-0 flex-1 text-left", className),
129
- ...props
130
- }
131
- );
56
+ return /* @__PURE__ */ jsx(Select$1.Value, {
57
+ "data-slot": "select-value",
58
+ className: cn("flex min-w-0 flex-1 text-left", className),
59
+ ...props
60
+ });
132
61
  }
133
- function SelectTrigger({
134
- className,
135
- children,
136
- unstyled,
137
- ...props
138
- }) {
139
- const resolvedSize = useComponentSize();
140
- return /* @__PURE__ */ jsxs(
141
- SelectPrimitive.Trigger,
142
- {
143
- "data-slot": "select-trigger",
144
- "data-size": resolvedSize,
145
- className: cn(
146
- !unstyled && selectTriggerVariants({ size: resolvedSize }),
147
- className
148
- ),
149
- ...props,
150
- children: [
151
- children,
152
- /* @__PURE__ */ jsx2(
153
- SelectPrimitive.Icon,
154
- {
155
- render: /* @__PURE__ */ jsx2(ChevronDownIcon, { className: "text-line-strong transition-transform group-data-disabled/select-trigger:text-fg-caption-placeholder data-popup-open:rotate-180" })
156
- }
157
- )
158
- ]
159
- }
160
- );
62
+ function SelectTrigger({ className, children, unstyled, ...props }) {
63
+ const resolvedSize = useComponentSize();
64
+ return /* @__PURE__ */ jsxs(Select$1.Trigger, {
65
+ "data-slot": "select-trigger",
66
+ "data-size": resolvedSize,
67
+ className: cn(!unstyled && selectTriggerVariants({ size: resolvedSize }), className),
68
+ ...props,
69
+ children: [children, /* @__PURE__ */ jsx(Select$1.Icon, { render: /* @__PURE__ */ jsx(ChevronDownIcon, { className: "text-line-strong transition-transform group-data-disabled/select-trigger:text-fg-caption-placeholder data-popup-open:rotate-180" }) })]
70
+ });
161
71
  }
162
- function SelectContent({
163
- className,
164
- children,
165
- side = "bottom",
166
- sideOffset = 8,
167
- align = "center",
168
- alignOffset = 0,
169
- alignItemWithTrigger = false,
170
- ...props
171
- }) {
172
- const resolvedSize = useComponentSize();
173
- return /* @__PURE__ */ jsx2(SelectPrimitive.Portal, { children: /* @__PURE__ */ jsx2(
174
- SelectPrimitive.Positioner,
175
- {
176
- side,
177
- sideOffset,
178
- align,
179
- alignOffset,
180
- alignItemWithTrigger,
181
- className: "isolate z-50",
182
- children: /* @__PURE__ */ jsxs(
183
- SelectPrimitive.Popup,
184
- {
185
- "data-slot": "select-content",
186
- "data-align-trigger": alignItemWithTrigger,
187
- className: cn(
188
- selectContentVariants({ size: resolvedSize }),
189
- className
190
- ),
191
- ...props,
192
- children: [
193
- /* @__PURE__ */ jsx2(SelectScrollUpButton, {}),
194
- /* @__PURE__ */ jsx2(SelectPrimitive.List, { className: "space-y-0.5", children }),
195
- /* @__PURE__ */ jsx2(SelectScrollDownButton, {})
196
- ]
197
- }
198
- )
199
- }
200
- ) });
72
+ function SelectContent({ className, children, side = "bottom", sideOffset = 8, align = "center", alignOffset = 0, alignItemWithTrigger = false, ...props }) {
73
+ const resolvedSize = useComponentSize();
74
+ return /* @__PURE__ */ jsx(Select$1.Portal, { children: /* @__PURE__ */ jsx(Select$1.Positioner, {
75
+ side,
76
+ sideOffset,
77
+ align,
78
+ alignOffset,
79
+ alignItemWithTrigger,
80
+ className: "isolate z-50",
81
+ children: /* @__PURE__ */ jsxs(Select$1.Popup, {
82
+ "data-slot": "select-content",
83
+ "data-align-trigger": alignItemWithTrigger,
84
+ className: cn(selectContentVariants({ size: resolvedSize }), className),
85
+ ...props,
86
+ children: [
87
+ /* @__PURE__ */ jsx(SelectScrollUpButton, {}),
88
+ /* @__PURE__ */ jsx(Select$1.List, {
89
+ className: "space-y-0.5",
90
+ children
91
+ }),
92
+ /* @__PURE__ */ jsx(SelectScrollDownButton, {})
93
+ ]
94
+ })
95
+ }) });
201
96
  }
202
- function SelectLabel({
203
- className,
204
- ...props
205
- }) {
206
- return /* @__PURE__ */ jsx2(
207
- SelectPrimitive.GroupLabel,
208
- {
209
- "data-slot": "select-label",
210
- className: cn("px-3 py-1 text-gdt-xs text-fg-secondary", className),
211
- ...props
212
- }
213
- );
97
+ function SelectLabel({ className, ...props }) {
98
+ return /* @__PURE__ */ jsx(Select$1.GroupLabel, {
99
+ "data-slot": "select-label",
100
+ className: cn("px-3 py-1 text-gdt-xs text-fg-secondary", className),
101
+ ...props
102
+ });
214
103
  }
215
- function SelectItem({
216
- className,
217
- children,
218
- ...props
219
- }) {
220
- const { multiple } = React.useContext(SelectSelectionContext);
221
- const resolvedSize = useComponentSize();
222
- return /* @__PURE__ */ jsxs(
223
- SelectPrimitive.Item,
224
- {
225
- "data-slot": "select-item",
226
- className: cn(
227
- selectItemVariants({ size: resolvedSize }),
228
- !multiple && "data-selected:bg-surface-brand-subtle data-selected:font-medium data-selected:text-fg-brand",
229
- className
230
- ),
231
- ...props,
232
- children: [
233
- multiple ? /* @__PURE__ */ jsx2(
234
- SelectPrimitive.ItemIndicator,
235
- {
236
- keepMounted: true,
237
- className: "flex size-5 shrink-0 items-center justify-center rounded-sm border border-line bg-canvas text-transparent transition-[background-color,border-color,color] group-data-selected/select-item:border-action-primary group-data-selected/select-item:bg-action-primary group-data-selected/select-item:text-fg-on-brand group-data-disabled/select-item:border-line-subtle group-data-disabled/select-item:bg-surface group-data-disabled/select-item:text-fg-caption-placeholder [&>svg]:size-3",
238
- children: /* @__PURE__ */ jsx2(CheckIcon, {})
239
- }
240
- ) : null,
241
- /* @__PURE__ */ jsx2(SelectPrimitive.ItemText, { className: "flex min-w-0 flex-1 shrink-0 gap-2 whitespace-nowrap", children })
242
- ]
243
- }
244
- );
104
+ function SelectItem({ className, children, ...props }) {
105
+ const { multiple } = React.useContext(SelectSelectionContext);
106
+ const resolvedSize = useComponentSize();
107
+ return /* @__PURE__ */ jsxs(Select$1.Item, {
108
+ "data-slot": "select-item",
109
+ className: cn(selectItemVariants({ size: resolvedSize }), !multiple && "data-selected:bg-surface-brand-subtle data-selected:font-medium data-selected:text-fg-brand", className),
110
+ ...props,
111
+ children: [multiple ? /* @__PURE__ */ jsx(Select$1.ItemIndicator, {
112
+ keepMounted: true,
113
+ className: "flex size-5 shrink-0 items-center justify-center rounded-sm border border-line bg-canvas text-transparent transition-[background-color,border-color,color] group-data-selected/select-item:border-action-primary group-data-selected/select-item:bg-action-primary group-data-selected/select-item:text-fg-on-brand group-data-disabled/select-item:border-line-subtle group-data-disabled/select-item:bg-surface group-data-disabled/select-item:text-fg-caption-placeholder [&>svg]:size-3",
114
+ children: /* @__PURE__ */ jsx(CheckIcon, {})
115
+ }) : null, /* @__PURE__ */ jsx(Select$1.ItemText, {
116
+ className: "flex min-w-0 flex-1 shrink-0 gap-2 whitespace-nowrap",
117
+ children
118
+ })]
119
+ });
245
120
  }
246
- function SelectSeparator({
247
- className,
248
- ...props
249
- }) {
250
- return /* @__PURE__ */ jsx2(
251
- SelectPrimitive.Separator,
252
- {
253
- "data-slot": "select-separator",
254
- className: cn("pointer-events-none my-1 h-px bg-line-subtle", className),
255
- ...props
256
- }
257
- );
121
+ function SelectSeparator({ className, ...props }) {
122
+ return /* @__PURE__ */ jsx(Select$1.Separator, {
123
+ "data-slot": "select-separator",
124
+ className: cn("pointer-events-none my-1 h-px bg-line-subtle", className),
125
+ ...props
126
+ });
258
127
  }
259
- function SelectScrollUpButton({
260
- className,
261
- ...props
262
- }) {
263
- return /* @__PURE__ */ jsx2(
264
- SelectPrimitive.ScrollUpArrow,
265
- {
266
- "data-slot": "select-scroll-up-button",
267
- className: cn(
268
- "sticky top-0 z-10 flex h-7 w-full cursor-default items-center justify-center bg-canvas text-fg-secondary [&_svg:not([class*='size-'])]:size-4",
269
- className
270
- ),
271
- ...props,
272
- children: /* @__PURE__ */ jsx2(ChevronUpIcon, {})
273
- }
274
- );
128
+ function SelectScrollUpButton({ className, ...props }) {
129
+ return /* @__PURE__ */ jsx(Select$1.ScrollUpArrow, {
130
+ "data-slot": "select-scroll-up-button",
131
+ className: cn("sticky top-0 z-10 flex h-7 w-full cursor-default items-center justify-center bg-canvas text-fg-secondary [&_svg:not([class*='size-'])]:size-4", className),
132
+ ...props,
133
+ children: /* @__PURE__ */ jsx(ChevronUpIcon, {})
134
+ });
275
135
  }
276
- function SelectScrollDownButton({
277
- className,
278
- ...props
279
- }) {
280
- return /* @__PURE__ */ jsx2(
281
- SelectPrimitive.ScrollDownArrow,
282
- {
283
- "data-slot": "select-scroll-down-button",
284
- className: cn(
285
- "sticky bottom-0 z-10 flex h-7 w-full cursor-default items-center justify-center bg-canvas text-fg-secondary [&_svg:not([class*='size-'])]:size-4",
286
- className
287
- ),
288
- ...props,
289
- children: /* @__PURE__ */ jsx2(ChevronDownIcon, {})
290
- }
291
- );
136
+ function SelectScrollDownButton({ className, ...props }) {
137
+ return /* @__PURE__ */ jsx(Select$1.ScrollDownArrow, {
138
+ "data-slot": "select-scroll-down-button",
139
+ className: cn("sticky bottom-0 z-10 flex h-7 w-full cursor-default items-center justify-center bg-canvas text-fg-secondary [&_svg:not([class*='size-'])]:size-4", className),
140
+ ...props,
141
+ children: /* @__PURE__ */ jsx(ChevronDownIcon, {})
142
+ });
292
143
  }
293
- export {
294
- Select,
295
- SelectContent,
296
- SelectGroup,
297
- SelectItem,
298
- SelectLabel,
299
- SelectScrollDownButton,
300
- SelectScrollUpButton,
301
- SelectSeparator,
302
- SelectTrigger,
303
- SelectValue
304
- };
305
- //# sourceMappingURL=select.js.map
144
+ //#endregion
145
+ export { Select, SelectContent, SelectGroup, SelectItem, SelectLabel, SelectScrollDownButton, SelectScrollUpButton, SelectSeparator, SelectTrigger, SelectValue };
@@ -1,10 +1,9 @@
1
- import * as React from 'react';
2
- import { Separator as Separator$1 } from '@base-ui/react/separator';
3
-
1
+ import { Separator as Separator$1 } from "@base-ui/react/separator";
2
+ //#region src/separator.d.ts
4
3
  declare function Separator({ className, orientation, dashed, shade, thickness, ...props }: Separator$1.Props & {
5
- dashed?: boolean;
6
- shade?: "feint" | "deep";
7
- thickness?: "hairline" | "default" | "thick" | "extra-thick";
8
- }): React.JSX.Element;
9
-
10
- export { Separator };
4
+ dashed?: boolean;
5
+ shade?: "feint" | "deep";
6
+ thickness?: "hairline" | "default" | "thick" | "extra-thick";
7
+ }): import("react").JSX.Element;
8
+ //#endregion
9
+ export { Separator };
package/dist/separator.js CHANGED
@@ -1,72 +1,33 @@
1
- // src/components/ui/separator.tsx
2
- import { Separator as SeparatorPrimitive } from "@base-ui/react/separator";
3
-
4
- // src/lib/cn.ts
5
- import { clsx } from "clsx";
6
- import { extendTailwindMerge } from "tailwind-merge";
7
- var twMerge = extendTailwindMerge({
8
- extend: {
9
- classGroups: {
10
- "font-size": [
11
- {
12
- text: [
13
- "gdt-display",
14
- "gdt-h1",
15
- "gdt-h2",
16
- "gdt-h3",
17
- "gdt-h4",
18
- "gdt-h5",
19
- "gdt-xl",
20
- "gdt-lg",
21
- "gdt-md",
22
- "gdt-sm",
23
- "gdt-xs",
24
- "gdt-subtext",
25
- "gdt-capitalized"
26
- ]
27
- }
28
- ]
29
- }
30
- }
31
- });
32
- function cn(...inputs) {
33
- return twMerge(clsx(inputs));
34
- }
35
-
36
- // src/components/ui/separator.tsx
1
+ "use client";
2
+ import { t as cn } from "./cn-BI_4DMBf.js";
37
3
  import { jsx } from "react/jsx-runtime";
38
- function Separator({
39
- className,
40
- orientation = "horizontal",
41
- dashed = false,
42
- shade = "feint",
43
- thickness = "default",
44
- ...props
45
- }) {
46
- return /* @__PURE__ */ jsx(
47
- SeparatorPrimitive,
48
- {
49
- "data-slot": "separator",
50
- orientation,
51
- className: cn(
52
- "shrink-0 data-horizontal:h-0 data-horizontal:w-full data-vertical:w-0 data-vertical:self-stretch",
53
- // style
54
- dashed ? "border-dashed" : "border-solid",
55
- // shade
56
- shade === "feint" && "border-line-subtle",
57
- shade === "deep" && "border-line",
58
- // thickness
59
- thickness === "hairline" && "data-horizontal:border-t-[0.5px] data-vertical:border-l-[0.5px]",
60
- thickness === "default" && "data-horizontal:border-t data-vertical:border-l",
61
- thickness === "thick" && "data-horizontal:border-t-2 data-vertical:border-l-2",
62
- thickness === "extra-thick" && "data-horizontal:border-t-[3px] data-vertical:border-l-[3px]",
63
- className
64
- ),
65
- ...props
66
- }
67
- );
4
+ import { Separator as Separator$1 } from "@base-ui/react/separator";
5
+ //#region src/separator.tsx
6
+ function Separator({ className, orientation = "horizontal", dashed = false, shade = "feint", thickness = "default", ...props }) {
7
+ return /* @__PURE__ */ jsx(Separator$1, {
8
+ "data-slot": "separator",
9
+ orientation,
10
+ className: cn("shrink-0", dashed ? [
11
+ "border-dashed",
12
+ "data-[orientation=horizontal]:h-0 data-[orientation=horizontal]:w-full",
13
+ "data-[orientation=vertical]:w-0 data-[orientation=vertical]:self-stretch",
14
+ shade === "feint" && "border-line-subtle",
15
+ shade === "deep" && "border-line",
16
+ thickness === "hairline" && "data-[orientation=horizontal]:border-t-[0.5px] data-[orientation=vertical]:border-l-[0.5px]",
17
+ thickness === "default" && "data-[orientation=horizontal]:border-t data-[orientation=vertical]:border-l",
18
+ thickness === "thick" && "data-[orientation=horizontal]:border-t-2 data-[orientation=vertical]:border-l-2",
19
+ thickness === "extra-thick" && "data-[orientation=horizontal]:border-t-[3px] data-[orientation=vertical]:border-l-[3px]"
20
+ ] : [
21
+ "data-[orientation=horizontal]:w-full data-[orientation=vertical]:self-stretch",
22
+ shade === "feint" && "bg-line-subtle",
23
+ shade === "deep" && "bg-line",
24
+ thickness === "hairline" && "data-[orientation=horizontal]:h-[0.5px] data-[orientation=vertical]:w-[0.5px]",
25
+ thickness === "default" && "data-[orientation=horizontal]:h-px data-[orientation=vertical]:w-px",
26
+ thickness === "thick" && "data-[orientation=horizontal]:h-0.5 data-[orientation=vertical]:w-0.5",
27
+ thickness === "extra-thick" && "data-[orientation=horizontal]:h-1.5 data-[orientation=vertical]:w-1.5"
28
+ ], className),
29
+ ...props
30
+ });
68
31
  }
69
- export {
70
- Separator
71
- };
72
- //# sourceMappingURL=separator.js.map
32
+ //#endregion
33
+ export { Separator };
package/dist/sheet.d.ts CHANGED
@@ -1,24 +1,24 @@
1
- import { Dialog } from '@base-ui/react/dialog';
2
- import * as React from 'react';
3
-
1
+ import * as React from "react";
2
+ import { Dialog } from "@base-ui/react/dialog";
3
+ //#region src/sheet.d.ts
4
4
  type SheetSide = "top" | "right" | "bottom" | "left";
5
5
  declare function Sheet({ ...props }: Dialog.Root.Props): React.JSX.Element;
6
6
  declare function SheetTrigger({ ...props }: Dialog.Trigger.Props): React.JSX.Element;
7
7
  declare function SheetClose({ ...props }: Dialog.Close.Props): React.JSX.Element;
8
8
  type SheetContentProps = Dialog.Popup.Props & {
9
- side?: SheetSide;
10
- showCloseButton?: boolean;
9
+ side?: SheetSide;
10
+ showCloseButton?: boolean;
11
11
  } & ({
12
- side: "top" | "bottom";
13
- size?: "fullscreen";
12
+ side: "top" | "bottom";
13
+ size?: "fullscreen";
14
14
  } | {
15
- side?: "left" | "right";
16
- size?: "sm" | "md" | "lg";
15
+ side?: "left" | "right";
16
+ size?: "sm" | "md" | "lg";
17
17
  });
18
18
  declare function SheetContent({ className, children, side, size, showCloseButton, ...props }: SheetContentProps): React.JSX.Element;
19
19
  declare function SheetHeader({ className, ...props }: React.ComponentProps<"div">): React.JSX.Element;
20
20
  declare function SheetFooter({ className, ...props }: React.ComponentProps<"div">): React.JSX.Element;
21
21
  declare function SheetTitle({ className, ...props }: Dialog.Title.Props): React.JSX.Element;
22
22
  declare function SheetDescription({ className, ...props }: Dialog.Description.Props): React.JSX.Element;
23
-
24
- export { Sheet, SheetClose, SheetContent, SheetDescription, SheetFooter, SheetHeader, SheetTitle, SheetTrigger };
23
+ //#endregion
24
+ export { Sheet, SheetClose, SheetContent, SheetDescription, SheetFooter, SheetHeader, SheetTitle, SheetTrigger };