@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
@@ -1,18 +1,15 @@
1
- import * as React$1 from 'react';
2
- import * as class_variance_authority_types from 'class-variance-authority/types';
3
- import { useRender } from '@base-ui/react/use-render';
4
- import { VariantProps } from 'class-variance-authority';
5
- import { Separator } from './separator.js';
6
- import { ComponentSize } from './size-context.js';
7
- import '@base-ui/react/separator';
8
-
1
+ import { t as ComponentSize } from "./size-context-D4mYvcg8.js";
2
+ import { Separator } from "./separator.js";
3
+ import { useRender } from "@base-ui/react/use-render";
4
+ import { VariantProps } from "class-variance-authority";
5
+ //#region src/button-group.d.ts
9
6
  declare const buttonGroupVariants: (props?: ({
10
- orientation?: "horizontal" | "vertical" | null | undefined;
11
- } & class_variance_authority_types.ClassProp) | undefined) => string;
7
+ orientation?: "horizontal" | "vertical" | null | undefined;
8
+ } & import("class-variance-authority/types").ClassProp) | undefined) => string;
12
9
  declare function ButtonGroup({ className, orientation, ...props }: React.ComponentProps<"div"> & VariantProps<typeof buttonGroupVariants> & {
13
- size?: ComponentSize;
14
- }): React$1.JSX.Element;
15
- declare function ButtonGroupText({ className, render, ...props }: useRender.ComponentProps<"div">): React$1.ReactElement<unknown, string | React$1.JSXElementConstructor<any>>;
16
- declare function ButtonGroupSeparator({ className, orientation, ...props }: React.ComponentProps<typeof Separator>): React$1.JSX.Element;
17
-
18
- export { ButtonGroup, ButtonGroupSeparator, ButtonGroupText, buttonGroupVariants };
10
+ size?: ComponentSize;
11
+ }): import("react").JSX.Element;
12
+ declare function ButtonGroupText({ className, render, ...props }: useRender.ComponentProps<"div">): import("react").ReactElement<unknown, string | import("react").JSXElementConstructor<any>>;
13
+ declare function ButtonGroupSeparator({ className, orientation, ...props }: React.ComponentProps<typeof Separator>): import("react").JSX.Element;
14
+ //#endregion
15
+ export { ButtonGroup, ButtonGroupSeparator, ButtonGroupText, buttonGroupVariants };
@@ -1,170 +1,45 @@
1
- // src/components/ui/button-group.tsx
1
+ import { t as cn } from "./cn-BI_4DMBf.js";
2
+ import { SizeProvider, useComponentSize } from "./size-context.js";
3
+ import { Separator } from "./separator.js";
4
+ import { jsx } from "react/jsx-runtime";
2
5
  import { mergeProps } from "@base-ui/react/merge-props";
3
6
  import { useRender } from "@base-ui/react/use-render";
4
7
  import { cva } from "class-variance-authority";
5
-
6
- // src/lib/cn.ts
7
- import { clsx } from "clsx";
8
- import { extendTailwindMerge } from "tailwind-merge";
9
- var twMerge = extendTailwindMerge({
10
- extend: {
11
- classGroups: {
12
- "font-size": [
13
- {
14
- text: [
15
- "gdt-display",
16
- "gdt-h1",
17
- "gdt-h2",
18
- "gdt-h3",
19
- "gdt-h4",
20
- "gdt-h5",
21
- "gdt-xl",
22
- "gdt-lg",
23
- "gdt-md",
24
- "gdt-sm",
25
- "gdt-xs",
26
- "gdt-subtext",
27
- "gdt-capitalized"
28
- ]
29
- }
30
- ]
31
- }
32
- }
8
+ //#region src/button-group.tsx
9
+ const buttonGroupVariants = cva("flex w-fit items-stretch *:focus-visible:relative *:focus-visible:z-10 has-[>[data-slot=button-group]]:gap-2 has-[select[aria-hidden=true]:last-child]:[&>[data-slot=select-trigger]:last-of-type]:rounded-r-lg [&>[data-slot=select-trigger]:not([class*='w-'])]:w-fit [&>input]:flex-1", {
10
+ variants: { orientation: {
11
+ horizontal: "*:data-slot:rounded-r-none [&>[data-slot]:not(:has(~[data-slot]))]:rounded-r-full! [&>[data-slot]~[data-slot]]:rounded-l-none [&>[data-slot]~[data-slot]]:border-l-0",
12
+ vertical: "flex-col *:data-slot:rounded-b-none [&>[data-slot]:not(:has(~[data-slot]))]:rounded-b-full! [&>[data-slot]~[data-slot]]:rounded-t-none [&>[data-slot]~[data-slot]]:border-t-0"
13
+ } },
14
+ defaultVariants: { orientation: "horizontal" }
33
15
  });
34
- function cn(...inputs) {
35
- return twMerge(clsx(inputs));
36
- }
37
-
38
- // src/components/ui/separator.tsx
39
- import { Separator as SeparatorPrimitive } from "@base-ui/react/separator";
40
- import { jsx } from "react/jsx-runtime";
41
- function Separator({
42
- className,
43
- orientation = "horizontal",
44
- dashed = false,
45
- shade = "feint",
46
- thickness = "default",
47
- ...props
48
- }) {
49
- return /* @__PURE__ */ jsx(
50
- SeparatorPrimitive,
51
- {
52
- "data-slot": "separator",
53
- orientation,
54
- className: cn(
55
- "shrink-0 data-horizontal:h-0 data-horizontal:w-full data-vertical:w-0 data-vertical:self-stretch",
56
- // style
57
- dashed ? "border-dashed" : "border-solid",
58
- // shade
59
- shade === "feint" && "border-line-subtle",
60
- shade === "deep" && "border-line",
61
- // thickness
62
- thickness === "hairline" && "data-horizontal:border-t-[0.5px] data-vertical:border-l-[0.5px]",
63
- thickness === "default" && "data-horizontal:border-t data-vertical:border-l",
64
- thickness === "thick" && "data-horizontal:border-t-2 data-vertical:border-l-2",
65
- thickness === "extra-thick" && "data-horizontal:border-t-[3px] data-vertical:border-l-[3px]",
66
- className
67
- ),
68
- ...props
69
- }
70
- );
71
- }
72
-
73
- // src/components/ui/size-context.tsx
74
- import { createContext, useContext } from "react";
75
- import { Fragment, jsx as jsx2 } from "react/jsx-runtime";
76
- var SizeContext = createContext(void 0);
77
- function SizeProvider({
78
- children,
79
- size
80
- }) {
81
- if (!size) {
82
- return /* @__PURE__ */ jsx2(Fragment, { children });
83
- }
84
- return /* @__PURE__ */ jsx2(SizeContext.Provider, { value: size, children });
85
- }
86
- function useComponentSize(size, fallback = "md") {
87
- const inheritedSize = useContext(SizeContext);
88
- return size ?? inheritedSize ?? fallback;
89
- }
90
-
91
- // src/components/ui/button-group.tsx
92
- import { jsx as jsx3 } from "react/jsx-runtime";
93
- var buttonGroupVariants = cva(
94
- "flex w-fit items-stretch *:focus-visible:relative *:focus-visible:z-10 has-[>[data-slot=button-group]]:gap-2 has-[select[aria-hidden=true]:last-child]:[&>[data-slot=select-trigger]:last-of-type]:rounded-r-lg [&>[data-slot=select-trigger]:not([class*='w-'])]:w-fit [&>input]:flex-1",
95
- {
96
- variants: {
97
- orientation: {
98
- horizontal: "*:data-slot:rounded-r-none [&>[data-slot]:not(:has(~[data-slot]))]:rounded-r-full! [&>[data-slot]~[data-slot]]:rounded-l-none [&>[data-slot]~[data-slot]]:border-l-0",
99
- vertical: "flex-col *:data-slot:rounded-b-none [&>[data-slot]:not(:has(~[data-slot]))]:rounded-b-full! [&>[data-slot]~[data-slot]]:rounded-t-none [&>[data-slot]~[data-slot]]:border-t-0"
100
- }
101
- },
102
- defaultVariants: {
103
- orientation: "horizontal"
104
- }
105
- }
106
- );
107
- function ButtonGroup({
108
- className,
109
- orientation,
110
- ...props
111
- }) {
112
- const size = useComponentSize();
113
- return /* @__PURE__ */ jsx3(SizeProvider, { size, children: /* @__PURE__ */ jsx3(
114
- "div",
115
- {
116
- role: "group",
117
- "data-slot": "button-group",
118
- "data-orientation": orientation,
119
- className: cn(buttonGroupVariants({ orientation }), className),
120
- ...props
121
- }
122
- ) });
16
+ function ButtonGroup({ className, orientation, ...props }) {
17
+ return /* @__PURE__ */ jsx(SizeProvider, {
18
+ size: useComponentSize(),
19
+ children: /* @__PURE__ */ jsx("div", {
20
+ role: "group",
21
+ "data-slot": "button-group",
22
+ "data-orientation": orientation,
23
+ className: cn(buttonGroupVariants({ orientation }), className),
24
+ ...props
25
+ })
26
+ });
123
27
  }
124
- function ButtonGroupText({
125
- className,
126
- render,
127
- ...props
128
- }) {
129
- return useRender({
130
- defaultTagName: "div",
131
- props: mergeProps(
132
- {
133
- className: cn(
134
- "flex items-center gap-2 rounded-lg border bg-muted px-2.5 text-sm font-medium [&_svg]:pointer-events-none [&_svg:not([class*='size-'])]:size-4",
135
- className
136
- )
137
- },
138
- props
139
- ),
140
- render,
141
- state: {
142
- slot: "button-group-text"
143
- }
144
- });
28
+ function ButtonGroupText({ className, render, ...props }) {
29
+ return useRender({
30
+ defaultTagName: "div",
31
+ props: mergeProps({ className: cn("flex items-center gap-2 rounded-lg border bg-muted px-2.5 text-sm font-medium [&_svg]:pointer-events-none [&_svg:not([class*='size-'])]:size-4", className) }, props),
32
+ render,
33
+ state: { slot: "button-group-text" }
34
+ });
145
35
  }
146
- function ButtonGroupSeparator({
147
- className,
148
- orientation = "vertical",
149
- ...props
150
- }) {
151
- return /* @__PURE__ */ jsx3(
152
- Separator,
153
- {
154
- "data-slot": "button-group-separator",
155
- orientation,
156
- className: cn(
157
- "relative self-stretch bg-input data-horizontal:mx-px data-horizontal:w-auto data-vertical:my-px data-vertical:h-auto",
158
- className
159
- ),
160
- ...props
161
- }
162
- );
36
+ function ButtonGroupSeparator({ className, orientation = "vertical", ...props }) {
37
+ return /* @__PURE__ */ jsx(Separator, {
38
+ "data-slot": "button-group-separator",
39
+ orientation,
40
+ className: cn("relative self-stretch bg-input data-horizontal:mx-px data-horizontal:w-auto data-vertical:my-px data-vertical:h-auto", className),
41
+ ...props
42
+ });
163
43
  }
164
- export {
165
- ButtonGroup,
166
- ButtonGroupSeparator,
167
- ButtonGroupText,
168
- buttonGroupVariants
169
- };
170
- //# sourceMappingURL=button-group.js.map
44
+ //#endregion
45
+ export { ButtonGroup, ButtonGroupSeparator, ButtonGroupText, buttonGroupVariants };
package/dist/button.d.ts CHANGED
@@ -1,19 +1,2 @@
1
- import * as class_variance_authority_types from 'class-variance-authority/types';
2
- import { Button as Button$1 } from '@base-ui/react/button';
3
- import { VariantProps } from 'class-variance-authority';
4
- import * as React from 'react';
5
-
6
- declare const buttonVariants: (props?: ({
7
- variant?: "ghost" | "danger" | "secondary" | "primary" | "primary-outline" | "secondary-outline" | "tertiary" | "tertiary-outline" | "glass-overlay" | "link-brand" | "link-neutral" | null | undefined;
8
- size?: "sm" | "md" | "lg" | "icon" | "xl" | "icon-xs" | "icon-sm" | "icon-lg" | "icon-xl" | null | undefined;
9
- } & class_variance_authority_types.ClassProp) | undefined) => string;
10
- declare function Button({ className, variant, size, isLoading, children, disabled, ...props }: Button$1.Props & VariantProps<typeof buttonVariants> & {
11
- isLoading?: boolean;
12
- }): React.JSX.Element;
13
- type ButtonLinkProps = Omit<React.ComponentProps<"a">, "href"> & VariantProps<typeof buttonVariants> & {
14
- disabled?: boolean;
15
- href: string;
16
- };
17
- declare function ButtonLink({ className, href, variant, size, disabled, onClick, ...props }: ButtonLinkProps): React.JSX.Element;
18
-
19
- export { Button, ButtonLink, buttonVariants };
1
+ import { n as ButtonLink, r as buttonVariants, t as Button } from "./button-BZIeyUw6.js";
2
+ export { Button, ButtonLink, buttonVariants };
package/dist/button.js CHANGED
@@ -1,146 +1,94 @@
1
- // src/components/ui/button.tsx
2
- import { Button as ButtonPrimitive } from "@base-ui/react/button";
3
- import { cva } from "class-variance-authority";
1
+ import { t as cn } from "./cn-BI_4DMBf.js";
2
+ import { useComponentSize } from "./size-context.js";
4
3
  import { Loader } from "lucide-react";
5
-
6
- // src/lib/cn.ts
7
- import { clsx } from "clsx";
8
- import { extendTailwindMerge } from "tailwind-merge";
9
- var twMerge = extendTailwindMerge({
10
- extend: {
11
- classGroups: {
12
- "font-size": [
13
- {
14
- text: [
15
- "gdt-display",
16
- "gdt-h1",
17
- "gdt-h2",
18
- "gdt-h3",
19
- "gdt-h4",
20
- "gdt-h5",
21
- "gdt-xl",
22
- "gdt-lg",
23
- "gdt-md",
24
- "gdt-sm",
25
- "gdt-xs",
26
- "gdt-subtext",
27
- "gdt-capitalized"
28
- ]
29
- }
30
- ]
31
- }
32
- }
4
+ import { jsx, jsxs } from "react/jsx-runtime";
5
+ import { mergeProps } from "@base-ui/react/merge-props";
6
+ import { useRender } from "@base-ui/react/use-render";
7
+ import { cva } from "class-variance-authority";
8
+ import { Button as Button$1 } from "@base-ui/react/button";
9
+ //#region src/button.tsx
10
+ const buttonVariants = cva("group/button inline-flex shrink-0 items-center justify-center rounded-full bg-clip-padding whitespace-nowrap font-bold transition-[background-color,color,border-color,box-shadow,transform] outline-none select-none focus-visible:border-line-focus focus-visible:shadow-[0px_0px_0px_2px_var(--color-line-focus)] active:not-aria-[haspopup]:translate-y-px disabled:pointer-events-none disabled:opacity-50 aria-disabled:pointer-events-none aria-disabled:opacity-50 aria-invalid:border-line-danger aria-invalid:ring-3 aria-invalid:ring-destructive/20 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4", {
11
+ variants: {
12
+ variant: {
13
+ primary: "bg-action-primary text-fg-on-brand hover:bg-action-primary-hover active:bg-action-primary-pressed",
14
+ "primary-outline": "border-2 border-action-primary bg-transparent text-fg-brand hover:bg-surface-brand-subtle active:bg-surface-brand-subtle data-focused:bg-surface-brand-subtle data-pressed:bg-surface-brand-subtle",
15
+ secondary: "bg-surface-brand-subtle text-fg-brand hover:bg-action-primary-hover hover:text-fg-on-brand active:bg-action-primary-pressed active:text-fg-on-brand data-focused:bg-action-primary-hover data-pressed:bg-action-primary-pressed data-focused:text-fg-on-brand data-pressed:text-fg-on-brand",
16
+ "secondary-outline": "border-2 border-action-secondary bg-transparent text-fg-brand hover:bg-surface-brand-subtle active:bg-surface-brand-subtle data-focused:bg-surface-brand-subtle data-pressed:bg-surface-brand-subtle",
17
+ tertiary: "bg-action-tertiary text-fg-primary hover:bg-action-tertiary-hover active:bg-action-tertiary-pressed data-focused:bg-action-tertiary-hover data-pressed:bg-action-tertiary-pressed",
18
+ "tertiary-outline": "border border-line-strong bg-transparent text-fg-primary hover:bg-surface active:bg-surface-raised data-focused:bg-surface data-pressed:bg-surface-raised",
19
+ ghost: "bg-transparent text-fg-primary hover:bg-surface active:bg-surface-raised data-focused:bg-surface data-pressed:bg-surface-raised",
20
+ danger: "bg-action-danger text-fg-on-brand hover:bg-action-danger-hover active:bg-action-danger-pressed data-focused:bg-action-danger-hover data-pressed:bg-action-danger-pressed",
21
+ whatsapp: "bg-whatsapp-button text-black [&_svg]:text-white hover:brightness-95 active:brightness-90 data-focused:brightness-95 data-pressed:brightness-90",
22
+ "glass-overlay": "bg-surface-glass-overlay-button text-fg-on-brand shadow-2 backdrop-blur-sm hover:scale-105 active:scale-95",
23
+ "link-brand": "border-transparent bg-transparent px-0 text-fg-brand hover:underline active:underline active:opacity-70",
24
+ "link-neutral": "border-transparent bg-transparent px-0 text-fg-secondary hover:underline active:underline active:opacity-70"
25
+ },
26
+ size: {
27
+ sm: "h-8 min-w-8 gap-2 px-3.5 text-gdt-xs [&_svg:not([class*='size-'])]:size-4",
28
+ md: "h-10 min-w-10 gap-2 px-4.5 text-gdt-sm [&_svg:not([class*='size-'])]:size-4.5",
29
+ lg: "h-12 min-w-12 gap-2.5 px-5.5 text-gdt-md [&_svg:not([class*='size-'])]:size-6",
30
+ xl: "h-14 min-w-14 gap-3 px-6.5 text-gdt-lg [&_svg:not([class*='size-'])]:size-6",
31
+ icon: "size-10",
32
+ "icon-xs": "size-6 text-gdt-xs [&_svg:not([class*='size-'])]:size-3",
33
+ "icon-sm": "size-8 text-gdt-sm [&_svg:not([class*='size-'])]:size-3.5",
34
+ "icon-lg": "size-12.5 text-gdt-md [&_svg:not([class*='size-'])]:size-4.5",
35
+ "icon-xl": "size-14 text-gdt-lg [&_svg:not([class*='size-'])]:size-5"
36
+ }
37
+ },
38
+ defaultVariants: {
39
+ variant: "primary",
40
+ size: "md"
41
+ }
33
42
  });
34
- function cn(...inputs) {
35
- return twMerge(clsx(inputs));
36
- }
37
-
38
- // src/components/ui/size-context.tsx
39
- import { createContext, useContext } from "react";
40
- import { Fragment, jsx } from "react/jsx-runtime";
41
- var SizeContext = createContext(void 0);
42
- function useComponentSize(size, fallback = "md") {
43
- const inheritedSize = useContext(SizeContext);
44
- return size ?? inheritedSize ?? fallback;
45
- }
46
-
47
- // src/components/ui/button.tsx
48
- import { jsx as jsx2, jsxs } from "react/jsx-runtime";
49
- var buttonVariants = cva(
50
- "group/button inline-flex shrink-0 items-center justify-center rounded-full bg-clip-padding whitespace-nowrap font-bold transition-[background-color,color,border-color,box-shadow,transform] outline-none select-none focus-visible:border-line-focus focus-visible:shadow-[0px_0px_0px_2px_var(--color-line-focus)] active:not-aria-[haspopup]:translate-y-px disabled:pointer-events-none disabled:opacity-50 aria-disabled:pointer-events-none aria-disabled:opacity-50 aria-invalid:border-line-danger aria-invalid:ring-3 aria-invalid:ring-destructive/20 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4",
51
- {
52
- variants: {
53
- variant: {
54
- primary: "bg-action-primary text-fg-on-brand hover:bg-action-primary-hover active:bg-action-primary-pressed",
55
- "primary-outline": "border-2 border-action-primary bg-transparent text-fg-brand hover:bg-surface-brand-subtle active:bg-surface-brand-subtle data-focused:bg-surface-brand-subtle data-pressed:bg-surface-brand-subtle",
56
- secondary: "bg-surface-brand-subtle text-fg-brand hover:bg-action-primary-hover hover:text-fg-on-brand active:bg-action-primary-pressed active:text-fg-on-brand data-focused:bg-action-primary-hover data-pressed:bg-action-primary-pressed data-focused:text-fg-on-brand data-pressed:text-fg-on-brand",
57
- "secondary-outline": "border-2 border-action-secondary bg-transparent text-fg-brand hover:bg-surface-brand-subtle active:bg-surface-brand-subtle data-focused:bg-surface-brand-subtle data-pressed:bg-surface-brand-subtle",
58
- tertiary: "bg-action-tertiary text-fg-primary hover:bg-action-tertiary-hover active:bg-action-tertiary-pressed data-focused:bg-action-tertiary-hover data-pressed:bg-action-tertiary-pressed",
59
- "tertiary-outline": "border border-line-strong bg-transparent text-fg-primary hover:bg-surface active:bg-surface-raised data-focused:bg-surface data-pressed:bg-surface-raised",
60
- ghost: "bg-transparent text-fg-primary hover:bg-surface active:bg-surface-raised data-focused:bg-surface data-pressed:bg-surface-raised",
61
- danger: "bg-action-danger text-fg-on-brand hover:bg-action-danger-hover active:bg-action-danger-pressed data-focused:bg-action-danger-hover data-pressed:bg-action-danger-pressed",
62
- "glass-overlay": "bg-surface-glass-overlay-button text-fg-on-brand",
63
- "link-brand": "border-transparent bg-transparent px-0 text-fg-brand hover:underline active:underline active:opacity-70",
64
- "link-neutral": "border-transparent bg-transparent px-0 text-fg-secondary hover:underline active:underline active:opacity-70"
65
- },
66
- size: {
67
- sm: "h-8 gap-2 px-3.5 text-gdt-xs has-data-[icon=inline-end]:pr-3 has-data-[icon=inline-start]:pl-3 [&_svg:not([class*='size-'])]:size-3.5",
68
- md: "h-10 gap-2 px-4.5 text-gdt-sm has-data-[icon=inline-end]:pr-4 has-data-[icon=inline-start]:pl-4",
69
- lg: "h-12.5 gap-2.5 px-5.5 text-gdt-md has-data-[icon=inline-end]:pr-5 has-data-[icon=inline-start]:pl-5 [&_svg:not([class*='size-'])]:size-4.5",
70
- xl: "h-14 gap-3 px-6.5 text-gdt-lg has-data-[icon=inline-end]:pr-6 has-data-[icon=inline-start]:pl-6 [&_svg:not([class*='size-'])]:size-5",
71
- icon: "size-10",
72
- "icon-xs": "size-6 text-gdt-xs [&_svg:not([class*='size-'])]:size-3",
73
- "icon-sm": "size-8 text-gdt-sm [&_svg:not([class*='size-'])]:size-3.5",
74
- "icon-lg": "size-12.5 text-gdt-md [&_svg:not([class*='size-'])]:size-4.5",
75
- "icon-xl": "size-14 text-gdt-lg [&_svg:not([class*='size-'])]:size-5"
76
- }
77
- },
78
- defaultVariants: {
79
- variant: "primary",
80
- size: "md"
81
- }
82
- }
83
- );
84
- function Button({
85
- className,
86
- variant = "primary",
87
- size,
88
- isLoading = false,
89
- children,
90
- disabled = false,
91
- ...props
92
- }) {
93
- const inheritedSize = useComponentSize();
94
- const resolvedSize = size ?? inheritedSize;
95
- const _disabled = disabled || isLoading;
96
- return /* @__PURE__ */ jsxs(
97
- ButtonPrimitive,
98
- {
99
- "data-slot": "button",
100
- className: cn(buttonVariants({ variant, size: resolvedSize, className })),
101
- disabled: _disabled,
102
- ...props,
103
- children: [
104
- isLoading && /* @__PURE__ */ jsx2(Loader, { className: "size-4 animate-spin" }),
105
- " ",
106
- children
107
- ]
108
- }
109
- );
43
+ function Button({ className, variant = "primary", size, isLoading = false, children, disabled = false, ...props }) {
44
+ const inheritedSize = useComponentSize();
45
+ const resolvedSize = size ?? inheritedSize;
46
+ const _disabled = disabled || isLoading;
47
+ return /* @__PURE__ */ jsxs(Button$1, {
48
+ "data-slot": "button",
49
+ className: cn(buttonVariants({
50
+ variant,
51
+ size: resolvedSize,
52
+ className
53
+ })),
54
+ disabled: _disabled,
55
+ ...props,
56
+ children: [
57
+ isLoading && /* @__PURE__ */ jsx(Loader, { className: "size-4 animate-spin" }),
58
+ " ",
59
+ children
60
+ ]
61
+ });
110
62
  }
111
- function ButtonLink({
112
- className,
113
- href,
114
- variant = "primary",
115
- size,
116
- disabled = false,
117
- onClick,
118
- ...props
119
- }) {
120
- const inheritedSize = useComponentSize();
121
- const resolvedSize = size ?? inheritedSize;
122
- return /* @__PURE__ */ jsx2(
123
- "a",
124
- {
125
- "data-slot": "button-link",
126
- href,
127
- "aria-disabled": disabled,
128
- tabIndex: disabled ? -1 : props.tabIndex,
129
- className: cn(buttonVariants({ variant, size: resolvedSize, className })),
130
- onClick: (event) => {
131
- if (disabled) {
132
- event.preventDefault();
133
- return;
134
- }
135
- onClick?.(event);
136
- },
137
- ...props
138
- }
139
- );
63
+ function ButtonLink({ className, render, variant = "primary", size, disabled = false, onClick, children, ...props }) {
64
+ const inheritedSize = useComponentSize();
65
+ return useRender({
66
+ defaultTagName: "a",
67
+ props: mergeProps({
68
+ className: cn(buttonVariants({
69
+ variant,
70
+ size: size ?? inheritedSize,
71
+ className
72
+ })),
73
+ children
74
+ }, {
75
+ ...props,
76
+ "aria-disabled": disabled,
77
+ tabIndex: disabled ? -1 : props.tabIndex,
78
+ onClick: (event) => {
79
+ if (disabled) {
80
+ event.preventDefault();
81
+ return;
82
+ }
83
+ onClick?.(event);
84
+ }
85
+ }),
86
+ render,
87
+ state: {
88
+ slot: "button-link",
89
+ disabled
90
+ }
91
+ });
140
92
  }
141
- export {
142
- Button,
143
- ButtonLink,
144
- buttonVariants
145
- };
146
- //# sourceMappingURL=button.js.map
93
+ //#endregion
94
+ export { Button, ButtonLink, buttonVariants };
@@ -1,9 +1,9 @@
1
- import * as React from 'react';
2
- import { DayPicker, DayButton, Locale } from 'react-day-picker';
3
-
1
+ import * as React from "react";
2
+ import { DayButton, DayPicker, Locale } from "react-day-picker";
3
+ //#region src/calendar.d.ts
4
4
  declare function Calendar({ className, classNames, showOutsideDays, weekStartsOn, locale, formatters, components, ...props }: React.ComponentProps<typeof DayPicker>): React.JSX.Element;
5
5
  declare function CalendarDayButton({ className, day, modifiers, locale, ...props }: React.ComponentProps<typeof DayButton> & {
6
- locale?: Partial<Locale>;
6
+ locale?: Partial<Locale>;
7
7
  }): React.JSX.Element;
8
-
9
- export { Calendar, CalendarDayButton };
8
+ //#endregion
9
+ export { Calendar, CalendarDayButton };