@contractspec/lib.ui-kit-web 3.7.5 → 3.8.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 (234) hide show
  1. package/README.md +33 -88
  2. package/dist/browser/ui/accordion.js +4 -4
  3. package/dist/browser/ui/alert-dialog.js +9 -9
  4. package/dist/browser/ui/alert.js +4 -4
  5. package/dist/browser/ui/atoms/FilterSelect/FilterSelect.js +51 -51
  6. package/dist/browser/ui/atoms/FilterSelect/index.js +51 -51
  7. package/dist/browser/ui/atoms/LoadingSpinner/LoadingSpinner.js +1 -1
  8. package/dist/browser/ui/atoms/Pagination/Pagination.js +13 -13
  9. package/dist/browser/ui/atoms/Pagination/index.js +13 -13
  10. package/dist/browser/ui/atoms/SearchInput/SearchInput.js +8 -8
  11. package/dist/browser/ui/atoms/SearchInput/index.js +8 -8
  12. package/dist/browser/ui/avatar.js +1 -1
  13. package/dist/browser/ui/badge.js +3 -3
  14. package/dist/browser/ui/breadcrumb.js +4 -4
  15. package/dist/browser/ui/button.js +5 -5
  16. package/dist/browser/ui/calendar.js +21 -21
  17. package/dist/browser/ui/card.js +2 -2
  18. package/dist/browser/ui/carousel.js +6 -6
  19. package/dist/browser/ui/checkbox.js +2 -2
  20. package/dist/browser/ui/command.js +14 -14
  21. package/dist/browser/ui/confirm-dialog.js +9 -9
  22. package/dist/browser/ui/context-menu.js +10 -10
  23. package/dist/browser/ui/cta.js +5 -5
  24. package/dist/browser/ui/data-table.js +1005 -0
  25. package/dist/browser/ui/data-table.parts.js +463 -0
  26. package/dist/browser/ui/date-picker.js +26 -26
  27. package/dist/browser/ui/date-range-picker.js +24 -24
  28. package/dist/browser/ui/datetime-picker.js +29 -29
  29. package/dist/browser/ui/dialog.js +5 -5
  30. package/dist/browser/ui/drawer.js +5 -5
  31. package/dist/browser/ui/dropdown-menu.js +10 -10
  32. package/dist/browser/ui/empty-state.js +5 -5
  33. package/dist/browser/ui/empty.js +7 -7
  34. package/dist/browser/ui/field.js +12 -12
  35. package/dist/browser/ui/form.js +4 -4
  36. package/dist/browser/ui/hover-card.js +2 -2
  37. package/dist/browser/ui/input-group.js +16 -16
  38. package/dist/browser/ui/input-otp.js +4 -4
  39. package/dist/browser/ui/input.js +1 -1
  40. package/dist/browser/ui/label.js +2 -2
  41. package/dist/browser/ui/loading-button.js +8 -8
  42. package/dist/browser/ui/marketing/FeatureGrid.js +3 -3
  43. package/dist/browser/ui/marketing/Hero.js +7 -7
  44. package/dist/browser/ui/marketing/PricingTable.js +10 -10
  45. package/dist/browser/ui/menubar.js +12 -12
  46. package/dist/browser/ui/molecules/Autocomplete/index.js +26 -26
  47. package/dist/browser/ui/molecules/SearchAndFilter/SearchAndFilter.js +62 -62
  48. package/dist/browser/ui/molecules/SearchAndFilter/index.js +62 -62
  49. package/dist/browser/ui/molecules/SkeletonList.js +1 -1
  50. package/dist/browser/ui/nav-layout.js +22 -22
  51. package/dist/browser/ui/navigation-menu.js +7 -7
  52. package/dist/browser/ui/organisms/ErrorBoundary/ErrorBoundary.js +11 -11
  53. package/dist/browser/ui/organisms/ListPage/ListPage.js +84 -84
  54. package/dist/browser/ui/page-header.js +4 -4
  55. package/dist/browser/ui/pagination.js +6 -6
  56. package/dist/browser/ui/popover.js +2 -2
  57. package/dist/browser/ui/progress.js +3 -3
  58. package/dist/browser/ui/radio-group.js +3 -3
  59. package/dist/browser/ui/resizable.js +3 -3
  60. package/dist/browser/ui/scroll-area.js +4 -4
  61. package/dist/browser/ui/section.js +1 -1
  62. package/dist/browser/ui/select.js +6 -6
  63. package/dist/browser/ui/separator.js +2 -2
  64. package/dist/browser/ui/sheet.js +5 -5
  65. package/dist/browser/ui/sidebar.js +64 -64
  66. package/dist/browser/ui/skeleton.js +1 -1
  67. package/dist/browser/ui/slider.js +6 -6
  68. package/dist/browser/ui/stack.js +1 -1
  69. package/dist/browser/ui/stat-card-group.js +5 -5
  70. package/dist/browser/ui/stepper.js +2 -2
  71. package/dist/browser/ui/switch.js +3 -3
  72. package/dist/browser/ui/table.js +5 -5
  73. package/dist/browser/ui/tabs.js +3 -3
  74. package/dist/browser/ui/text.js +2 -2
  75. package/dist/browser/ui/textarea.js +1 -1
  76. package/dist/browser/ui/time-picker.js +10 -10
  77. package/dist/browser/ui/toast.js +5 -5
  78. package/dist/browser/ui/toaster.js +5 -5
  79. package/dist/browser/ui/toggle-group.js +7 -7
  80. package/dist/browser/ui/toggle.js +5 -5
  81. package/dist/browser/ui/tooltip.js +3 -3
  82. package/dist/browser/ui/typography.js +14 -14
  83. package/dist/browser/ui/usecases/UseCaseCard.js +8 -8
  84. package/dist/browser/ui/usecases/UserStoryCard.js +3 -3
  85. package/dist/browser/ui/visualization/Visualization.js +439 -0
  86. package/dist/browser/ui/visualization/Visualization.support.js +128 -0
  87. package/dist/browser/ui/visualization/index.js +10 -0
  88. package/dist/ui/accordion.d.ts +2 -2
  89. package/dist/ui/accordion.js +4 -4
  90. package/dist/ui/alert-dialog.d.ts +2 -2
  91. package/dist/ui/alert-dialog.js +9 -9
  92. package/dist/ui/alert.d.ts +2 -2
  93. package/dist/ui/alert.js +4 -4
  94. package/dist/ui/atoms/FilterSelect/FilterSelect.js +51 -51
  95. package/dist/ui/atoms/FilterSelect/index.d.ts +1 -1
  96. package/dist/ui/atoms/FilterSelect/index.js +51 -51
  97. package/dist/ui/atoms/LoadingSpinner/LoadingSpinner.js +1 -1
  98. package/dist/ui/atoms/LoadingSpinner/index.d.ts +1 -1
  99. package/dist/ui/atoms/Pagination/Pagination.js +13 -13
  100. package/dist/ui/atoms/Pagination/index.js +13 -13
  101. package/dist/ui/atoms/SearchInput/SearchInput.js +8 -8
  102. package/dist/ui/atoms/SearchInput/index.js +8 -8
  103. package/dist/ui/avatar.d.ts +2 -2
  104. package/dist/ui/avatar.js +1 -1
  105. package/dist/ui/badge.d.ts +1 -1
  106. package/dist/ui/badge.js +3 -3
  107. package/dist/ui/breadcrumb.d.ts +1 -1
  108. package/dist/ui/breadcrumb.js +4 -4
  109. package/dist/ui/button.d.ts +1 -1
  110. package/dist/ui/button.js +5 -5
  111. package/dist/ui/calendar.js +21 -21
  112. package/dist/ui/card.d.ts +1 -1
  113. package/dist/ui/card.js +2 -2
  114. package/dist/ui/carousel.d.ts +2 -2
  115. package/dist/ui/carousel.js +6 -6
  116. package/dist/ui/checkbox.d.ts +1 -1
  117. package/dist/ui/checkbox.js +2 -2
  118. package/dist/ui/collapsible.d.ts +1 -1
  119. package/dist/ui/command.d.ts +2 -2
  120. package/dist/ui/command.js +14 -14
  121. package/dist/ui/confirm-dialog.js +9 -9
  122. package/dist/ui/context-menu.d.ts +2 -2
  123. package/dist/ui/context-menu.js +10 -10
  124. package/dist/ui/cta.js +5 -5
  125. package/dist/ui/data-table.d.ts +12 -0
  126. package/dist/ui/data-table.js +1000 -0
  127. package/dist/ui/data-table.parts.d.ts +14 -0
  128. package/dist/ui/data-table.parts.js +458 -0
  129. package/dist/ui/date-picker.js +26 -26
  130. package/dist/ui/date-range-picker.js +24 -24
  131. package/dist/ui/datetime-picker.js +29 -29
  132. package/dist/ui/dialog.d.ts +1 -1
  133. package/dist/ui/dialog.js +5 -5
  134. package/dist/ui/drawer.d.ts +1 -1
  135. package/dist/ui/drawer.js +5 -5
  136. package/dist/ui/dropdown-menu.d.ts +2 -2
  137. package/dist/ui/dropdown-menu.js +10 -10
  138. package/dist/ui/empty-state.d.ts +1 -1
  139. package/dist/ui/empty-state.js +5 -5
  140. package/dist/ui/empty.d.ts +2 -2
  141. package/dist/ui/empty.js +7 -7
  142. package/dist/ui/field.d.ts +2 -2
  143. package/dist/ui/field.js +12 -12
  144. package/dist/ui/form.d.ts +3 -3
  145. package/dist/ui/form.js +4 -4
  146. package/dist/ui/hover-card.d.ts +2 -2
  147. package/dist/ui/hover-card.js +2 -2
  148. package/dist/ui/input-group.d.ts +2 -2
  149. package/dist/ui/input-group.js +16 -16
  150. package/dist/ui/input-otp.d.ts +2 -2
  151. package/dist/ui/input-otp.js +4 -4
  152. package/dist/ui/input.js +1 -1
  153. package/dist/ui/label.d.ts +1 -1
  154. package/dist/ui/label.js +2 -2
  155. package/dist/ui/loading-button.js +8 -8
  156. package/dist/ui/map/index.d.ts +1 -1
  157. package/dist/ui/marketing/FeatureGrid.js +3 -3
  158. package/dist/ui/marketing/Hero.js +7 -7
  159. package/dist/ui/marketing/PricingTable.js +10 -10
  160. package/dist/ui/marketing/index.d.ts +1 -1
  161. package/dist/ui/menubar.d.ts +2 -2
  162. package/dist/ui/menubar.js +12 -12
  163. package/dist/ui/molecules/Autocomplete/index.js +26 -26
  164. package/dist/ui/molecules/SearchAndFilter/SearchAndFilter.js +62 -62
  165. package/dist/ui/molecules/SearchAndFilter/index.js +62 -62
  166. package/dist/ui/molecules/SkeletonList.js +1 -1
  167. package/dist/ui/nav-layout.d.ts +1 -1
  168. package/dist/ui/nav-layout.js +22 -22
  169. package/dist/ui/navigation-menu.d.ts +2 -2
  170. package/dist/ui/navigation-menu.js +7 -7
  171. package/dist/ui/organisms/ErrorBoundary/ErrorBoundary.js +11 -11
  172. package/dist/ui/organisms/ErrorBoundary/index.d.ts +1 -1
  173. package/dist/ui/organisms/ListPage/ListPage.js +84 -84
  174. package/dist/ui/organisms/ListPage/index.d.ts +1 -1
  175. package/dist/ui/organisms/ListPage/types.d.ts +1 -1
  176. package/dist/ui/page-header.d.ts +1 -1
  177. package/dist/ui/page-header.js +4 -4
  178. package/dist/ui/pagination.js +6 -6
  179. package/dist/ui/popover.d.ts +2 -2
  180. package/dist/ui/popover.js +2 -2
  181. package/dist/ui/progress.d.ts +1 -1
  182. package/dist/ui/progress.js +3 -3
  183. package/dist/ui/radio-group.d.ts +1 -1
  184. package/dist/ui/radio-group.js +3 -3
  185. package/dist/ui/resizable.d.ts +2 -2
  186. package/dist/ui/resizable.js +3 -3
  187. package/dist/ui/scroll-area.d.ts +1 -1
  188. package/dist/ui/scroll-area.js +4 -4
  189. package/dist/ui/section.d.ts +1 -1
  190. package/dist/ui/section.js +1 -1
  191. package/dist/ui/select.d.ts +1 -1
  192. package/dist/ui/select.js +6 -6
  193. package/dist/ui/separator.d.ts +1 -1
  194. package/dist/ui/separator.js +2 -2
  195. package/dist/ui/sheet.d.ts +2 -2
  196. package/dist/ui/sheet.js +5 -5
  197. package/dist/ui/sidebar.d.ts +1 -1
  198. package/dist/ui/sidebar.js +64 -64
  199. package/dist/ui/skeleton.js +1 -1
  200. package/dist/ui/slider.d.ts +1 -1
  201. package/dist/ui/slider.js +6 -6
  202. package/dist/ui/stack.d.ts +4 -4
  203. package/dist/ui/stack.js +1 -1
  204. package/dist/ui/stat-card-group.js +5 -5
  205. package/dist/ui/stepper.js +2 -2
  206. package/dist/ui/switch.d.ts +1 -1
  207. package/dist/ui/switch.js +3 -3
  208. package/dist/ui/table.d.ts +1 -1
  209. package/dist/ui/table.js +5 -5
  210. package/dist/ui/tabs.d.ts +2 -2
  211. package/dist/ui/tabs.js +3 -3
  212. package/dist/ui/text.js +2 -2
  213. package/dist/ui/textarea.js +1 -1
  214. package/dist/ui/time-picker.js +10 -10
  215. package/dist/ui/toast.d.ts +2 -2
  216. package/dist/ui/toast.js +5 -5
  217. package/dist/ui/toaster.js +5 -5
  218. package/dist/ui/toggle-group.d.ts +1 -1
  219. package/dist/ui/toggle-group.js +7 -7
  220. package/dist/ui/toggle.d.ts +1 -1
  221. package/dist/ui/toggle.js +5 -5
  222. package/dist/ui/tooltip.d.ts +2 -2
  223. package/dist/ui/tooltip.js +3 -3
  224. package/dist/ui/typography.js +14 -14
  225. package/dist/ui/use-toast.d.ts +1 -1
  226. package/dist/ui/usecases/UseCaseCard.js +8 -8
  227. package/dist/ui/usecases/UserStoryCard.js +3 -3
  228. package/dist/ui/visualization/Visualization.d.ts +9 -0
  229. package/dist/ui/visualization/Visualization.js +434 -0
  230. package/dist/ui/visualization/Visualization.support.d.ts +15 -0
  231. package/dist/ui/visualization/Visualization.support.js +123 -0
  232. package/dist/ui/visualization/index.d.ts +1 -0
  233. package/dist/ui/visualization/index.js +5 -0
  234. package/package.json +75 -12
@@ -12,7 +12,7 @@ import { jsxDEV } from "react/jsx-dev-runtime";
12
12
  function Card({ className, ...props }) {
13
13
  return /* @__PURE__ */ jsxDEV("div", {
14
14
  "data-slot": "card",
15
- className: cn("bg-card text-card-foreground flex flex-col gap-6 rounded-xl border py-6 shadow-2xs", className),
15
+ className: cn("flex flex-col gap-6 rounded-xl border bg-card py-6 text-card-foreground shadow-2xs", className),
16
16
  ...props
17
17
  }, undefined, false, undefined, this);
18
18
  }
@@ -32,7 +32,7 @@ function CardTitle({
32
32
  }) {
33
33
  return /* @__PURE__ */ jsxDEV("div", {
34
34
  "data-slot": "card-title",
35
- className: cn("leading-none font-semibold", className),
35
+ className: cn("font-semibold leading-none", className),
36
36
  ...props
37
37
  }, undefined, false, undefined, this);
38
38
  }
@@ -77,8 +77,8 @@ function CardFooter({
77
77
  }, undefined, false, undefined, this);
78
78
  }
79
79
  // ui/stack.tsx
80
- import { cva } from "class-variance-authority";
81
80
  import { cn as cn2 } from "@contractspec/lib.ui-kit-core/utils";
81
+ import { cva } from "class-variance-authority";
82
82
  import { jsxDEV as jsxDEV2 } from "react/jsx-dev-runtime";
83
83
  var vStackVariants = cva("flex flex-col", {
84
84
  variants: {
@@ -258,7 +258,7 @@ function StatCardGroup({
258
258
  className
259
259
  }) {
260
260
  return /* @__PURE__ */ jsxDEV3(HStack, {
261
- className: className + " w-full flex-wrap gap-3",
261
+ className: className + "w-full flex-wrap gap-3",
262
262
  children: items.map((it, idx) => /* @__PURE__ */ jsxDEV3(Card, {
263
263
  className: "border-none shadow-2xs",
264
264
  children: /* @__PURE__ */ jsxDEV3(CardContent, {
@@ -271,7 +271,7 @@ function StatCardGroup({
271
271
  children: it.label
272
272
  }, undefined, false, undefined, this),
273
273
  /* @__PURE__ */ jsxDEV3("div", {
274
- className: "text-xl font-semibold",
274
+ className: "font-semibold text-xl",
275
275
  children: it.value
276
276
  }, undefined, false, undefined, this)
277
277
  ]
@@ -7,8 +7,8 @@ var __require = /* @__PURE__ */ ((x) => typeof require !== "undefined" ? require
7
7
  });
8
8
 
9
9
  // ui/stack.tsx
10
- import { cva } from "class-variance-authority";
11
10
  import { cn } from "@contractspec/lib.ui-kit-core/utils";
11
+ import { cva } from "class-variance-authority";
12
12
  import { jsxDEV } from "react/jsx-dev-runtime";
13
13
  var vStackVariants = cva("flex flex-col", {
14
14
  variants: {
@@ -171,8 +171,8 @@ function Box({
171
171
  }, undefined, false, undefined, this);
172
172
  }
173
173
  // ui/stepper.tsx
174
- import { cva as cva2 } from "class-variance-authority";
175
174
  import { cn as cn2 } from "@contractspec/lib.ui-kit-core/utils";
175
+ import { cva as cva2 } from "class-variance-authority";
176
176
  import { jsxDEV as jsxDEV2 } from "react/jsx-dev-runtime";
177
177
  var dotVariants = cva2("h-2 w-2 rounded-full", {
178
178
  variants: {
@@ -7,8 +7,8 @@ var __require = /* @__PURE__ */ ((x) => typeof require !== "undefined" ? require
7
7
  });
8
8
 
9
9
  // ui/switch.tsx
10
- import * as SwitchPrimitive from "@radix-ui/react-switch";
11
10
  import { cn } from "@contractspec/lib.ui-kit-core/utils";
11
+ import * as SwitchPrimitive from "@radix-ui/react-switch";
12
12
  import { jsxDEV } from "react/jsx-dev-runtime";
13
13
  "use client";
14
14
  function Switch({
@@ -18,11 +18,11 @@ function Switch({
18
18
  }) {
19
19
  return /* @__PURE__ */ jsxDEV(SwitchPrimitive.Root, {
20
20
  "data-slot": "switch",
21
- className: cn("peer focus-visible:border-ring focus-visible:ring-ring/50 data-[state=checked]:bg-primary data-[state=unchecked]:bg-input dark:data-[state=unchecked]:bg-input/80 inline-flex h-[1.15rem] w-8 shrink-0 items-center rounded-full border border-transparent shadow-2xs outline-hidden transition-all focus-visible:ring-[3px] disabled:cursor-not-allowed disabled:opacity-50", className),
21
+ className: cn("peer inline-flex h-[1.15rem] w-8 shrink-0 items-center rounded-full border border-transparent shadow-2xs outline-hidden transition-all focus-visible:border-ring focus-visible:ring-[3px] focus-visible:ring-ring/50 disabled:cursor-not-allowed disabled:opacity-50 data-[state=checked]:bg-primary data-[state=unchecked]:bg-input dark:data-[state=unchecked]:bg-input/80", className),
22
22
  ...props,
23
23
  children: /* @__PURE__ */ jsxDEV(SwitchPrimitive.Thumb, {
24
24
  "data-slot": "switch-thumb",
25
- className: cn("bg-background dark:data-[state=checked]:bg-primary-foreground dark:data-[state=unchecked]:bg-foreground pointer-events-none block size-4 rounded-full ring-0 transition-transform data-[state=checked]:translate-x-[calc(100%-2px)] data-[state=unchecked]:translate-x-0", thumbClassName)
25
+ className: cn("pointer-events-none block size-4 rounded-full bg-background ring-0 transition-transform data-[state=checked]:translate-x-[calc(100%-2px)] data-[state=unchecked]:translate-x-0 dark:data-[state=checked]:bg-primary-foreground dark:data-[state=unchecked]:bg-foreground", thumbClassName)
26
26
  }, undefined, false, undefined, this)
27
27
  }, undefined, false, undefined, this);
28
28
  }
@@ -50,7 +50,7 @@ function TableFooter({
50
50
  }) {
51
51
  return /* @__PURE__ */ jsxDEV("tfoot", {
52
52
  "data-slot": "table-footer",
53
- className: cn("bg-muted/50 border-t font-medium [&>tr]:last:border-b-0", className),
53
+ className: cn("border-t bg-muted/50 font-medium [&>tr]:last:border-b-0", className),
54
54
  ...props
55
55
  }, undefined, false, undefined, this);
56
56
  }
@@ -60,7 +60,7 @@ function TableRow({
60
60
  }) {
61
61
  return /* @__PURE__ */ jsxDEV("tr", {
62
62
  "data-slot": "table-row",
63
- className: cn("hover:bg-muted/50 data-[state=selected]:bg-muted border-b transition-colors", className),
63
+ className: cn("border-b transition-colors hover:bg-muted/50 data-[state=selected]:bg-muted", className),
64
64
  ...props
65
65
  }, undefined, false, undefined, this);
66
66
  }
@@ -70,7 +70,7 @@ function TableHead({
70
70
  }) {
71
71
  return /* @__PURE__ */ jsxDEV("th", {
72
72
  "data-slot": "table-head",
73
- className: cn("text-foreground h-10 px-2 text-left align-middle font-medium whitespace-nowrap [&:has([role=checkbox])]:pr-0 [&>[role=checkbox]]:translate-y-[2px]", className),
73
+ className: cn("h-10 whitespace-nowrap px-2 text-left align-middle font-medium text-foreground [&:has([role=checkbox])]:pr-0 [&>[role=checkbox]]:translate-y-[2px]", className),
74
74
  ...props
75
75
  }, undefined, false, undefined, this);
76
76
  }
@@ -80,7 +80,7 @@ function TableCell({
80
80
  }) {
81
81
  return /* @__PURE__ */ jsxDEV("td", {
82
82
  "data-slot": "table-cell",
83
- className: cn("p-2 align-middle whitespace-nowrap [&:has([role=checkbox])]:pr-0 [&>[role=checkbox]]:translate-y-[2px]", className),
83
+ className: cn("whitespace-nowrap p-2 align-middle [&:has([role=checkbox])]:pr-0 [&>[role=checkbox]]:translate-y-[2px]", className),
84
84
  ...props
85
85
  }, undefined, false, undefined, this);
86
86
  }
@@ -90,7 +90,7 @@ function TableCaption({
90
90
  }) {
91
91
  return /* @__PURE__ */ jsxDEV("caption", {
92
92
  "data-slot": "table-caption",
93
- className: cn("text-muted-foreground mt-4 text-sm", className),
93
+ className: cn("mt-4 text-muted-foreground text-sm", className),
94
94
  ...props
95
95
  }, undefined, false, undefined, this);
96
96
  }
@@ -7,8 +7,8 @@ var __require = /* @__PURE__ */ ((x) => typeof require !== "undefined" ? require
7
7
  });
8
8
 
9
9
  // ui/tabs.tsx
10
- import * as TabsPrimitive from "@radix-ui/react-tabs";
11
10
  import { cn } from "@contractspec/lib.ui-kit-core/utils";
11
+ import * as TabsPrimitive from "@radix-ui/react-tabs";
12
12
  import { jsxDEV } from "react/jsx-dev-runtime";
13
13
  "use client";
14
14
  function Tabs({
@@ -27,7 +27,7 @@ function TabsList({
27
27
  }) {
28
28
  return /* @__PURE__ */ jsxDEV(TabsPrimitive.List, {
29
29
  "data-slot": "tabs-list",
30
- className: cn("bg-muted text-muted-foreground inline-flex h-9 w-fit items-center justify-center rounded-lg p-[3px]", className),
30
+ className: cn("inline-flex h-9 w-fit items-center justify-center rounded-lg bg-muted p-[3px] text-muted-foreground", className),
31
31
  ...props
32
32
  }, undefined, false, undefined, this);
33
33
  }
@@ -37,7 +37,7 @@ function TabsTrigger({
37
37
  }) {
38
38
  return /* @__PURE__ */ jsxDEV(TabsPrimitive.Trigger, {
39
39
  "data-slot": "tabs-trigger",
40
- className: cn("text-foreground focus-visible:border-ring focus-visible:outline-ring focus-visible:ring-ring/50 data-[state=active]:bg-background dark:text-muted-foreground dark:data-[state=active]:border-input dark:data-[state=active]:bg-input/30 dark:data-[state=active]:text-foreground inline-flex h-[calc(100%-1px)] flex-1 items-center justify-center gap-1.5 rounded-md border border-transparent px-2 py-1 text-sm font-medium whitespace-nowrap transition-[color,box-shadow] focus-visible:ring-[3px] focus-visible:outline-1 disabled:pointer-events-none disabled:opacity-50 data-[state=active]:shadow-2xs [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4", className),
40
+ className: cn("inline-flex h-[calc(100%-1px)] flex-1 items-center justify-center gap-1.5 whitespace-nowrap rounded-md border border-transparent px-2 py-1 font-medium text-foreground text-sm transition-[color,box-shadow] focus-visible:border-ring focus-visible:outline-1 focus-visible:outline-ring focus-visible:ring-[3px] focus-visible:ring-ring/50 disabled:pointer-events-none disabled:opacity-50 data-[state=active]:bg-background data-[state=active]:shadow-2xs dark:text-muted-foreground dark:data-[state=active]:border-input dark:data-[state=active]:bg-input/30 dark:data-[state=active]:text-foreground [&_svg:not([class*='size-'])]:size-4 [&_svg]:pointer-events-none [&_svg]:shrink-0", className),
41
41
  ...props
42
42
  }, undefined, false, undefined, this);
43
43
  }
@@ -7,13 +7,13 @@ var __require = /* @__PURE__ */ ((x) => typeof require !== "undefined" ? require
7
7
  });
8
8
 
9
9
  // ui/text.tsx
10
- import { Slot } from "@radix-ui/react-slot";
11
10
  import { cn } from "@contractspec/lib.ui-kit-core/utils";
11
+ import { Slot } from "@radix-ui/react-slot";
12
12
  import { jsxDEV } from "react/jsx-dev-runtime";
13
13
  function Text({ className, asChild = false, ...props }) {
14
14
  const Component = asChild ? Slot : "p";
15
15
  return /* @__PURE__ */ jsxDEV(Component, {
16
- className: cn("text-foreground web:select-text text-base", className),
16
+ className: cn("web:select-text text-base text-foreground", className),
17
17
  ...props
18
18
  }, undefined, false, undefined, this);
19
19
  }
@@ -12,7 +12,7 @@ import { jsxDEV } from "react/jsx-dev-runtime";
12
12
  function Textarea({ className, ...props }) {
13
13
  return /* @__PURE__ */ jsxDEV("textarea", {
14
14
  "data-slot": "textarea",
15
- className: cn("aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 aria-invalid:border-destructive border-input placeholder:text-muted-foreground focus-visible:border-ring focus-visible:ring-ring/50 dark:bg-input/30 flex field-sizing-content min-h-16 w-full rounded-md border bg-transparent px-3 py-2 text-base shadow-2xs outline-hidden transition-[color,box-shadow] focus-visible:ring-[3px] disabled:cursor-not-allowed disabled:opacity-50 md:text-sm", className),
15
+ className: cn("field-sizing-content flex min-h-16 w-full rounded-md border border-input bg-transparent px-3 py-2 text-base shadow-2xs outline-hidden transition-[color,box-shadow] placeholder:text-muted-foreground focus-visible:border-ring focus-visible:ring-[3px] focus-visible:ring-ring/50 disabled:cursor-not-allowed disabled:opacity-50 aria-invalid:border-destructive aria-invalid:ring-destructive/20 md:text-sm dark:bg-input/30 dark:aria-invalid:ring-destructive/40", className),
16
16
  ...props
17
17
  }, undefined, false, undefined, this);
18
18
  }
@@ -7,23 +7,23 @@ var __require = /* @__PURE__ */ ((x) => typeof require !== "undefined" ? require
7
7
  });
8
8
 
9
9
  // ui/button.tsx
10
+ import { cn } from "@contractspec/lib.ui-kit-core/utils";
10
11
  import { Slot } from "@radix-ui/react-slot";
11
12
  import { cva } from "class-variance-authority";
12
- import { cn } from "@contractspec/lib.ui-kit-core/utils";
13
13
  import { jsxDEV } from "react/jsx-dev-runtime";
14
- var buttonVariants = cva("inline-flex items-center justify-center gap-2 whitespace-nowrap rounded-md text-sm font-medium transition-all disabled:pointer-events-none disabled:opacity-50 [&_svg]:pointer-events-none [&_svg:not([class*='size-'])]:size-4 shrink-0 [&_svg]:shrink-0 outline-hidden focus-visible:border-ring focus-visible:ring-ring/50 focus-visible:ring-[3px] aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 aria-invalid:border-destructive", {
14
+ var buttonVariants = cva("inline-flex shrink-0 items-center justify-center gap-2 whitespace-nowrap rounded-md font-medium text-sm outline-hidden transition-all focus-visible:border-ring focus-visible:ring-[3px] focus-visible:ring-ring/50 disabled:pointer-events-none disabled:opacity-50 aria-invalid:border-destructive aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 [&_svg:not([class*='size-'])]:size-4 [&_svg]:pointer-events-none [&_svg]:shrink-0", {
15
15
  variants: {
16
16
  variant: {
17
17
  default: "bg-primary text-primary-foreground hover:bg-primary/90",
18
- destructive: "bg-destructive text-white hover:bg-destructive/90 focus-visible:ring-destructive/20 dark:focus-visible:ring-destructive/40 dark:bg-destructive/60",
19
- outline: "border bg-background shadow-2xs hover:bg-accent hover:text-accent-foreground dark:bg-input/30 dark:border-input dark:hover:bg-input/50",
18
+ destructive: "bg-destructive text-white hover:bg-destructive/90 focus-visible:ring-destructive/20 dark:bg-destructive/60 dark:focus-visible:ring-destructive/40",
19
+ outline: "border bg-background shadow-2xs hover:bg-accent hover:text-accent-foreground dark:border-input dark:bg-input/30 dark:hover:bg-input/50",
20
20
  secondary: "bg-secondary text-secondary-foreground hover:bg-secondary/80",
21
21
  ghost: "hover:bg-accent hover:text-accent-foreground dark:hover:bg-accent/50",
22
22
  link: "text-primary underline-offset-4 hover:underline"
23
23
  },
24
24
  size: {
25
25
  default: "h-9 px-4 py-2 has-[>svg]:px-3",
26
- sm: "h-8 rounded-md gap-1.5 px-3 has-[>svg]:px-2.5",
26
+ sm: "h-8 gap-1.5 rounded-md px-3 has-[>svg]:px-2.5",
27
27
  lg: "h-10 rounded-md px-6 has-[>svg]:px-4",
28
28
  icon: "size-9"
29
29
  }
@@ -56,8 +56,8 @@ function Button({
56
56
  }, undefined, false, undefined, this);
57
57
  }
58
58
  // ui/popover.tsx
59
- import * as PopoverPrimitive from "@radix-ui/react-popover";
60
59
  import { cn as cn2 } from "@contractspec/lib.ui-kit-core/utils";
60
+ import * as PopoverPrimitive from "@radix-ui/react-popover";
61
61
  import { jsxDEV as jsxDEV2 } from "react/jsx-dev-runtime";
62
62
  "use client";
63
63
  function Popover({
@@ -87,7 +87,7 @@ function PopoverContent({
87
87
  "data-slot": "popover-content",
88
88
  align,
89
89
  sideOffset,
90
- className: cn2("bg-popover text-popover-foreground data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 data-[side=bottom]:slide-in-from-top-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 z-50 w-72 origin-(--radix-popover-content-transform-origin) rounded-md border p-4 shadow-md outline-hidden", className),
90
+ className: cn2("data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 data-[side=bottom]:slide-in-from-top-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 z-50 w-72 origin-(--radix-popover-content-transform-origin) rounded-md border bg-popover p-4 text-popover-foreground shadow-md outline-hidden data-[state=closed]:animate-out data-[state=open]:animate-in", className),
91
91
  ...props
92
92
  }, undefined, false, undefined, this)
93
93
  }, undefined, false, undefined, this);
@@ -101,8 +101,8 @@ function PopoverAnchor({
101
101
  }, undefined, false, undefined, this);
102
102
  }
103
103
  // ui/time-picker.tsx
104
- import * as React from "react";
105
104
  import { cn as cn3 } from "@contractspec/lib.ui-kit-core/utils";
105
+ import * as React from "react";
106
106
  import { jsxDEV as jsxDEV3 } from "react/jsx-dev-runtime";
107
107
  "use client";
108
108
  function formatTime(d, is24Hour) {
@@ -161,7 +161,7 @@ function TimePicker({
161
161
  max: is24Hour ? 23 : 12,
162
162
  value: hours,
163
163
  onChange: (e) => setHours(e.target.value),
164
- className: "border-input bg-background w-16 rounded-md border px-2 py-1 text-center"
164
+ className: "w-16 rounded-md border border-input bg-background px-2 py-1 text-center"
165
165
  }, undefined, false, undefined, this),
166
166
  /* @__PURE__ */ jsxDEV3("span", {
167
167
  children: ":"
@@ -172,7 +172,7 @@ function TimePicker({
172
172
  max: 59,
173
173
  value: minutes,
174
174
  onChange: (e) => setMinutes(e.target.value),
175
- className: "border-input bg-background w-16 rounded-md border px-2 py-1 text-center"
175
+ className: "w-16 rounded-md border border-input bg-background px-2 py-1 text-center"
176
176
  }, undefined, false, undefined, this),
177
177
  /* @__PURE__ */ jsxDEV3(Button, {
178
178
  type: "button",
@@ -7,10 +7,10 @@ var __require = /* @__PURE__ */ ((x) => typeof require !== "undefined" ? require
7
7
  });
8
8
 
9
9
  // ui/toast.tsx
10
+ import { cn } from "@contractspec/lib.ui-kit-core/utils";
10
11
  import * as ToastPrimitives from "@radix-ui/react-toast";
11
12
  import { cva } from "class-variance-authority";
12
13
  import { X } from "lucide-react";
13
- import { cn } from "@contractspec/lib.ui-kit-core/utils";
14
14
  import { jsxDEV } from "react/jsx-dev-runtime";
15
15
  "use client";
16
16
  var ToastProvider = ToastPrimitives.Provider;
@@ -25,7 +25,7 @@ function ToastViewport({
25
25
  ...props
26
26
  }, undefined, false, undefined, this);
27
27
  }
28
- var toastVariants = cva("group pointer-events-auto relative flex w-full items-center justify-between space-x-4 overflow-hidden rounded-md border p-6 pr-8 shadow-lg transition-all data-[swipe=cancel]:translate-x-0 data-[swipe=end]:translate-x-(--radix-toast-swipe-end-x) data-[swipe=move]:translate-x-(--radix-toast-swipe-move-x) data-[swipe=move]:transition-none data-[state=open]:animate-in data-[state=closed]:animate-out data-[swipe=end]:animate-out data-[state=closed]:fade-out-80 data-[state=closed]:slide-out-to-right-full data-[state=open]:slide-in-from-top-full sm:data-[state=open]:slide-in-from-bottom-full", {
28
+ var toastVariants = cva("group data-[state=closed]:fade-out-80 data-[state=closed]:slide-out-to-right-full data-[state=open]:slide-in-from-top-full sm:data-[state=open]:slide-in-from-bottom-full pointer-events-auto relative flex w-full items-center justify-between space-x-4 overflow-hidden rounded-md border p-6 pr-8 shadow-lg transition-all data-[swipe=cancel]:translate-x-0 data-[swipe=end]:translate-x-(--radix-toast-swipe-end-x) data-[swipe=move]:translate-x-(--radix-toast-swipe-move-x) data-[state=closed]:animate-out data-[state=open]:animate-in data-[swipe=end]:animate-out data-[swipe=move]:transition-none", {
29
29
  variants: {
30
30
  variant: {
31
31
  default: "border bg-background text-foreground",
@@ -55,7 +55,7 @@ function ToastAction({
55
55
  }) {
56
56
  return /* @__PURE__ */ jsxDEV(ToastPrimitives.Action, {
57
57
  ref,
58
- className: cn("ring-offset-background hover:bg-secondary focus:ring-ring group-[.destructive]:border-muted/40 group-[.destructive]:hover:border-destructive/30 group-[.destructive]:hover:bg-destructive group-[.destructive]:hover:text-destructive-foreground group-[.destructive]:focus:ring-destructive inline-flex h-8 shrink-0 items-center justify-center rounded-md border bg-transparent px-3 text-base font-medium transition-colors focus:ring-2 focus:ring-offset-2 focus:outline-hidden disabled:pointer-events-none disabled:opacity-50", className),
58
+ className: cn("inline-flex h-8 shrink-0 items-center justify-center rounded-md border bg-transparent px-3 font-medium text-base ring-offset-background transition-colors hover:bg-secondary focus:outline-hidden focus:ring-2 focus:ring-ring focus:ring-offset-2 disabled:pointer-events-none disabled:opacity-50 group-[.destructive]:border-muted/40 group-[.destructive]:focus:ring-destructive group-[.destructive]:hover:border-destructive/30 group-[.destructive]:hover:bg-destructive group-[.destructive]:hover:text-destructive-foreground", className),
59
59
  ...props
60
60
  }, undefined, false, undefined, this);
61
61
  }
@@ -66,7 +66,7 @@ function ToastClose({
66
66
  }) {
67
67
  return /* @__PURE__ */ jsxDEV(ToastPrimitives.Close, {
68
68
  ref,
69
- className: cn("text-foreground/50 hover:text-foreground absolute top-2 right-2 rounded-md p-1 opacity-0 transition-opacity group-hover:opacity-100 group-[.destructive]:text-red-300 group-[.destructive]:hover:text-red-50 focus:opacity-100 focus:ring-2 focus:outline-hidden group-[.destructive]:focus:ring-red-400 group-[.destructive]:focus:ring-offset-red-600", className),
69
+ className: cn("absolute top-2 right-2 rounded-md p-1 text-foreground/50 opacity-0 transition-opacity hover:text-foreground focus:opacity-100 focus:outline-hidden focus:ring-2 group-hover:opacity-100 group-[.destructive]:text-red-300 group-[.destructive]:focus:ring-red-400 group-[.destructive]:focus:ring-offset-red-600 group-[.destructive]:hover:text-red-50", className),
70
70
  "toast-close": "",
71
71
  ...props,
72
72
  children: /* @__PURE__ */ jsxDEV(X, {
@@ -81,7 +81,7 @@ function ToastTitle({
81
81
  }) {
82
82
  return /* @__PURE__ */ jsxDEV(ToastPrimitives.Title, {
83
83
  ref,
84
- className: cn("text-base font-semibold", className),
84
+ className: cn("font-semibold text-base", className),
85
85
  ...props
86
86
  }, undefined, false, undefined, this);
87
87
  }
@@ -7,10 +7,10 @@ var __require = /* @__PURE__ */ ((x) => typeof require !== "undefined" ? require
7
7
  });
8
8
 
9
9
  // ui/toast.tsx
10
+ import { cn } from "@contractspec/lib.ui-kit-core/utils";
10
11
  import * as ToastPrimitives from "@radix-ui/react-toast";
11
12
  import { cva } from "class-variance-authority";
12
13
  import { X } from "lucide-react";
13
- import { cn } from "@contractspec/lib.ui-kit-core/utils";
14
14
  import { jsxDEV } from "react/jsx-dev-runtime";
15
15
  "use client";
16
16
  var ToastProvider = ToastPrimitives.Provider;
@@ -25,7 +25,7 @@ function ToastViewport({
25
25
  ...props
26
26
  }, undefined, false, undefined, this);
27
27
  }
28
- var toastVariants = cva("group pointer-events-auto relative flex w-full items-center justify-between space-x-4 overflow-hidden rounded-md border p-6 pr-8 shadow-lg transition-all data-[swipe=cancel]:translate-x-0 data-[swipe=end]:translate-x-(--radix-toast-swipe-end-x) data-[swipe=move]:translate-x-(--radix-toast-swipe-move-x) data-[swipe=move]:transition-none data-[state=open]:animate-in data-[state=closed]:animate-out data-[swipe=end]:animate-out data-[state=closed]:fade-out-80 data-[state=closed]:slide-out-to-right-full data-[state=open]:slide-in-from-top-full sm:data-[state=open]:slide-in-from-bottom-full", {
28
+ var toastVariants = cva("group data-[state=closed]:fade-out-80 data-[state=closed]:slide-out-to-right-full data-[state=open]:slide-in-from-top-full sm:data-[state=open]:slide-in-from-bottom-full pointer-events-auto relative flex w-full items-center justify-between space-x-4 overflow-hidden rounded-md border p-6 pr-8 shadow-lg transition-all data-[swipe=cancel]:translate-x-0 data-[swipe=end]:translate-x-(--radix-toast-swipe-end-x) data-[swipe=move]:translate-x-(--radix-toast-swipe-move-x) data-[state=closed]:animate-out data-[state=open]:animate-in data-[swipe=end]:animate-out data-[swipe=move]:transition-none", {
29
29
  variants: {
30
30
  variant: {
31
31
  default: "border bg-background text-foreground",
@@ -55,7 +55,7 @@ function ToastAction({
55
55
  }) {
56
56
  return /* @__PURE__ */ jsxDEV(ToastPrimitives.Action, {
57
57
  ref,
58
- className: cn("ring-offset-background hover:bg-secondary focus:ring-ring group-[.destructive]:border-muted/40 group-[.destructive]:hover:border-destructive/30 group-[.destructive]:hover:bg-destructive group-[.destructive]:hover:text-destructive-foreground group-[.destructive]:focus:ring-destructive inline-flex h-8 shrink-0 items-center justify-center rounded-md border bg-transparent px-3 text-base font-medium transition-colors focus:ring-2 focus:ring-offset-2 focus:outline-hidden disabled:pointer-events-none disabled:opacity-50", className),
58
+ className: cn("inline-flex h-8 shrink-0 items-center justify-center rounded-md border bg-transparent px-3 font-medium text-base ring-offset-background transition-colors hover:bg-secondary focus:outline-hidden focus:ring-2 focus:ring-ring focus:ring-offset-2 disabled:pointer-events-none disabled:opacity-50 group-[.destructive]:border-muted/40 group-[.destructive]:focus:ring-destructive group-[.destructive]:hover:border-destructive/30 group-[.destructive]:hover:bg-destructive group-[.destructive]:hover:text-destructive-foreground", className),
59
59
  ...props
60
60
  }, undefined, false, undefined, this);
61
61
  }
@@ -66,7 +66,7 @@ function ToastClose({
66
66
  }) {
67
67
  return /* @__PURE__ */ jsxDEV(ToastPrimitives.Close, {
68
68
  ref,
69
- className: cn("text-foreground/50 hover:text-foreground absolute top-2 right-2 rounded-md p-1 opacity-0 transition-opacity group-hover:opacity-100 group-[.destructive]:text-red-300 group-[.destructive]:hover:text-red-50 focus:opacity-100 focus:ring-2 focus:outline-hidden group-[.destructive]:focus:ring-red-400 group-[.destructive]:focus:ring-offset-red-600", className),
69
+ className: cn("absolute top-2 right-2 rounded-md p-1 text-foreground/50 opacity-0 transition-opacity hover:text-foreground focus:opacity-100 focus:outline-hidden focus:ring-2 group-hover:opacity-100 group-[.destructive]:text-red-300 group-[.destructive]:focus:ring-red-400 group-[.destructive]:focus:ring-offset-red-600 group-[.destructive]:hover:text-red-50", className),
70
70
  "toast-close": "",
71
71
  ...props,
72
72
  children: /* @__PURE__ */ jsxDEV(X, {
@@ -81,7 +81,7 @@ function ToastTitle({
81
81
  }) {
82
82
  return /* @__PURE__ */ jsxDEV(ToastPrimitives.Title, {
83
83
  ref,
84
- className: cn("text-base font-semibold", className),
84
+ className: cn("font-semibold text-base", className),
85
85
  ...props
86
86
  }, undefined, false, undefined, this);
87
87
  }
@@ -7,21 +7,21 @@ var __require = /* @__PURE__ */ ((x) => typeof require !== "undefined" ? require
7
7
  });
8
8
 
9
9
  // ui/toggle.tsx
10
+ import { cn } from "@contractspec/lib.ui-kit-core/utils";
10
11
  import * as TogglePrimitive from "@radix-ui/react-toggle";
11
12
  import { cva } from "class-variance-authority";
12
- import { cn } from "@contractspec/lib.ui-kit-core/utils";
13
13
  import { jsxDEV } from "react/jsx-dev-runtime";
14
14
  "use client";
15
- var toggleVariants = cva("inline-flex items-center justify-center gap-2 rounded-md text-sm font-medium hover:bg-muted hover:text-muted-foreground disabled:pointer-events-none disabled:opacity-50 data-[state=on]:bg-accent data-[state=on]:text-accent-foreground [&_svg]:pointer-events-none [&_svg:not([class*='size-'])]:size-4 [&_svg]:shrink-0 focus-visible:border-ring focus-visible:ring-ring/50 focus-visible:ring-[3px] outline-hidden transition-[color,box-shadow] aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 aria-invalid:border-destructive whitespace-nowrap", {
15
+ var toggleVariants = cva("inline-flex items-center justify-center gap-2 whitespace-nowrap rounded-md font-medium text-sm outline-hidden transition-[color,box-shadow] hover:bg-muted hover:text-muted-foreground focus-visible:border-ring focus-visible:ring-[3px] focus-visible:ring-ring/50 disabled:pointer-events-none disabled:opacity-50 aria-invalid:border-destructive aria-invalid:ring-destructive/20 data-[state=on]:bg-accent data-[state=on]:text-accent-foreground dark:aria-invalid:ring-destructive/40 [&_svg:not([class*='size-'])]:size-4 [&_svg]:pointer-events-none [&_svg]:shrink-0", {
16
16
  variants: {
17
17
  variant: {
18
18
  default: "bg-transparent",
19
19
  outline: "border border-input bg-transparent shadow-2xs hover:bg-accent hover:text-accent-foreground"
20
20
  },
21
21
  size: {
22
- default: "h-9 px-2 min-w-9",
23
- sm: "h-8 px-1.5 min-w-8",
24
- lg: "h-10 px-2.5 min-w-10"
22
+ default: "h-9 min-w-9 px-2",
23
+ sm: "h-8 min-w-8 px-1.5",
24
+ lg: "h-10 min-w-10 px-2.5"
25
25
  }
26
26
  },
27
27
  defaultVariants: {
@@ -42,9 +42,9 @@ function Toggle({
42
42
  }, undefined, false, undefined, this);
43
43
  }
44
44
  // ui/toggle-group.tsx
45
- import * as React from "react";
46
- import * as ToggleGroupPrimitive from "@radix-ui/react-toggle-group";
47
45
  import { cn as cn2 } from "@contractspec/lib.ui-kit-core/utils";
46
+ import * as ToggleGroupPrimitive from "@radix-ui/react-toggle-group";
47
+ import * as React from "react";
48
48
  import { jsxDEV as jsxDEV2 } from "react/jsx-dev-runtime";
49
49
  "use client";
50
50
  var ToggleGroupContext = React.createContext({
@@ -7,21 +7,21 @@ var __require = /* @__PURE__ */ ((x) => typeof require !== "undefined" ? require
7
7
  });
8
8
 
9
9
  // ui/toggle.tsx
10
+ import { cn } from "@contractspec/lib.ui-kit-core/utils";
10
11
  import * as TogglePrimitive from "@radix-ui/react-toggle";
11
12
  import { cva } from "class-variance-authority";
12
- import { cn } from "@contractspec/lib.ui-kit-core/utils";
13
13
  import { jsxDEV } from "react/jsx-dev-runtime";
14
14
  "use client";
15
- var toggleVariants = cva("inline-flex items-center justify-center gap-2 rounded-md text-sm font-medium hover:bg-muted hover:text-muted-foreground disabled:pointer-events-none disabled:opacity-50 data-[state=on]:bg-accent data-[state=on]:text-accent-foreground [&_svg]:pointer-events-none [&_svg:not([class*='size-'])]:size-4 [&_svg]:shrink-0 focus-visible:border-ring focus-visible:ring-ring/50 focus-visible:ring-[3px] outline-hidden transition-[color,box-shadow] aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 aria-invalid:border-destructive whitespace-nowrap", {
15
+ var toggleVariants = cva("inline-flex items-center justify-center gap-2 whitespace-nowrap rounded-md font-medium text-sm outline-hidden transition-[color,box-shadow] hover:bg-muted hover:text-muted-foreground focus-visible:border-ring focus-visible:ring-[3px] focus-visible:ring-ring/50 disabled:pointer-events-none disabled:opacity-50 aria-invalid:border-destructive aria-invalid:ring-destructive/20 data-[state=on]:bg-accent data-[state=on]:text-accent-foreground dark:aria-invalid:ring-destructive/40 [&_svg:not([class*='size-'])]:size-4 [&_svg]:pointer-events-none [&_svg]:shrink-0", {
16
16
  variants: {
17
17
  variant: {
18
18
  default: "bg-transparent",
19
19
  outline: "border border-input bg-transparent shadow-2xs hover:bg-accent hover:text-accent-foreground"
20
20
  },
21
21
  size: {
22
- default: "h-9 px-2 min-w-9",
23
- sm: "h-8 px-1.5 min-w-8",
24
- lg: "h-10 px-2.5 min-w-10"
22
+ default: "h-9 min-w-9 px-2",
23
+ sm: "h-8 min-w-8 px-1.5",
24
+ lg: "h-10 min-w-10 px-2.5"
25
25
  }
26
26
  },
27
27
  defaultVariants: {
@@ -7,8 +7,8 @@ var __require = /* @__PURE__ */ ((x) => typeof require !== "undefined" ? require
7
7
  });
8
8
 
9
9
  // ui/tooltip.tsx
10
- import * as TooltipPrimitive from "@radix-ui/react-tooltip";
11
10
  import { cn } from "@contractspec/lib.ui-kit-core/utils";
11
+ import * as TooltipPrimitive from "@radix-ui/react-tooltip";
12
12
  import { jsxDEV } from "react/jsx-dev-runtime";
13
13
  "use client";
14
14
  function TooltipProvider({
@@ -49,12 +49,12 @@ function TooltipContent({
49
49
  children: /* @__PURE__ */ jsxDEV(TooltipPrimitive.Content, {
50
50
  "data-slot": "tooltip-content",
51
51
  sideOffset,
52
- className: cn("bg-foreground text-background animate-in fade-in-0 zoom-in-95 data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=closed]:zoom-out-95 data-[side=bottom]:slide-in-from-top-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 z-50 w-fit origin-(--radix-tooltip-content-transform-origin) rounded-md px-3 py-1.5 text-xs text-balance", className),
52
+ className: cn("fade-in-0 zoom-in-95 data-[state=closed]:fade-out-0 data-[state=closed]:zoom-out-95 data-[side=bottom]:slide-in-from-top-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 z-50 w-fit origin-(--radix-tooltip-content-transform-origin) animate-in text-balance rounded-md bg-foreground px-3 py-1.5 text-background text-xs data-[state=closed]:animate-out", className),
53
53
  ...props,
54
54
  children: [
55
55
  children,
56
56
  /* @__PURE__ */ jsxDEV(TooltipPrimitive.Arrow, {
57
- className: "bg-foreground fill-foreground z-50 size-2.5 translate-y-[calc(-50%-2px)] rotate-45 rounded-[2px]"
57
+ className: "z-50 size-2.5 translate-y-[calc(-50%-2px)] rotate-45 rounded-[2px] bg-foreground fill-foreground"
58
58
  }, undefined, false, undefined, this)
59
59
  ]
60
60
  }, undefined, true, undefined, this)
@@ -7,26 +7,26 @@ var __require = /* @__PURE__ */ ((x) => typeof require !== "undefined" ? require
7
7
  });
8
8
 
9
9
  // ui/text.tsx
10
- import { Slot } from "@radix-ui/react-slot";
11
10
  import { cn } from "@contractspec/lib.ui-kit-core/utils";
11
+ import { Slot } from "@radix-ui/react-slot";
12
12
  import { jsxDEV } from "react/jsx-dev-runtime";
13
13
  function Text({ className, asChild = false, ...props }) {
14
14
  const Component = asChild ? Slot : "p";
15
15
  return /* @__PURE__ */ jsxDEV(Component, {
16
- className: cn("text-foreground web:select-text text-base", className),
16
+ className: cn("web:select-text text-base text-foreground", className),
17
17
  ...props
18
18
  }, undefined, false, undefined, this);
19
19
  }
20
20
  // ui/typography.tsx
21
- import { Slot as Slot2 } from "@radix-ui/react-slot";
22
21
  import { cn as cn2 } from "@contractspec/lib.ui-kit-core/utils";
22
+ import { Slot as Slot2 } from "@radix-ui/react-slot";
23
23
  import { jsxDEV as jsxDEV2 } from "react/jsx-dev-runtime";
24
24
  function H1({ className, asChild = false, ...props }) {
25
25
  const Component = asChild ? Slot2 : "h1";
26
26
  return /* @__PURE__ */ jsxDEV2(Component, {
27
27
  role: "heading",
28
28
  "aria-level": 1,
29
- className: cn2("text-foreground web:select-text web:scroll-m-20 text-4xl font-extrabold tracking-tight lg:text-5xl", className),
29
+ className: cn2("web:select-text web:scroll-m-20 font-extrabold text-4xl text-foreground tracking-tight lg:text-5xl", className),
30
30
  ...props
31
31
  }, undefined, false, undefined, this);
32
32
  }
@@ -35,7 +35,7 @@ function H2({ className, asChild = false, ...props }) {
35
35
  return /* @__PURE__ */ jsxDEV2(Component, {
36
36
  role: "heading",
37
37
  "aria-level": 2,
38
- className: cn2("border-border text-foreground web:select-text web:scroll-m-20 border-b pb-2 text-3xl font-semibold tracking-tight first:mt-0", className),
38
+ className: cn2("web:select-text web:scroll-m-20 border-border border-b pb-2 font-semibold text-3xl text-foreground tracking-tight first:mt-0", className),
39
39
  ...props
40
40
  }, undefined, false, undefined, this);
41
41
  }
@@ -44,7 +44,7 @@ function H3({ className, asChild = false, ...props }) {
44
44
  return /* @__PURE__ */ jsxDEV2(Component, {
45
45
  role: "heading",
46
46
  "aria-level": 3,
47
- className: cn2("text-foreground web:select-text web:scroll-m-20 text-2xl font-semibold tracking-tight", className),
47
+ className: cn2("web:select-text web:scroll-m-20 font-semibold text-2xl text-foreground tracking-tight", className),
48
48
  ...props
49
49
  }, undefined, false, undefined, this);
50
50
  }
@@ -53,14 +53,14 @@ function H4({ className, asChild = false, ...props }) {
53
53
  return /* @__PURE__ */ jsxDEV2(Component, {
54
54
  role: "heading",
55
55
  "aria-level": 4,
56
- className: cn2("text-foreground web:select-text web:scroll-m-20 text-xl font-semibold tracking-tight", className),
56
+ className: cn2("web:select-text web:scroll-m-20 font-semibold text-foreground text-xl tracking-tight", className),
57
57
  ...props
58
58
  }, undefined, false, undefined, this);
59
59
  }
60
60
  function P({ className, asChild = false, ...props }) {
61
61
  const Component = asChild ? Slot2 : Text;
62
62
  return /* @__PURE__ */ jsxDEV2(Component, {
63
- className: cn2("text-foreground web:select-text text-base", className),
63
+ className: cn2("web:select-text text-base text-foreground", className),
64
64
  ...props
65
65
  }, undefined, false, undefined, this);
66
66
  }
@@ -68,7 +68,7 @@ function BlockQuote({ className, asChild = false, ...props }) {
68
68
  const Component = asChild ? Slot2 : Text;
69
69
  return /* @__PURE__ */ jsxDEV2(Component, {
70
70
  role: "blockquote",
71
- className: cn2("native:mt-4 native:pl-3 border-border text-foreground web:select-text mt-6 border-l-2 pl-6 text-base italic", className),
71
+ className: cn2("mt-6 native:mt-4 web:select-text border-border border-l-2 native:pl-3 pl-6 text-base text-foreground italic", className),
72
72
  ...props
73
73
  }, undefined, false, undefined, this);
74
74
  }
@@ -76,35 +76,35 @@ function Code({ className, asChild = false, ...props }) {
76
76
  const Component = asChild ? Slot2 : Text;
77
77
  return /* @__PURE__ */ jsxDEV2(Component, {
78
78
  role: "code",
79
- className: cn2("bg-muted text-foreground web:select-text relative rounded-md px-[0.3rem] py-[0.2rem] text-sm font-semibold", className),
79
+ className: cn2("relative web:select-text rounded-md bg-muted px-[0.3rem] py-[0.2rem] font-semibold text-foreground text-sm", className),
80
80
  ...props
81
81
  }, undefined, false, undefined, this);
82
82
  }
83
83
  function Lead({ className, asChild = false, ...props }) {
84
84
  const Component = asChild ? Slot2 : Text;
85
85
  return /* @__PURE__ */ jsxDEV2(Component, {
86
- className: cn2("text-muted-foreground web:select-text text-xl", className),
86
+ className: cn2("web:select-text text-muted-foreground text-xl", className),
87
87
  ...props
88
88
  }, undefined, false, undefined, this);
89
89
  }
90
90
  function Large({ className, asChild = false, ...props }) {
91
91
  const Component = asChild ? Slot2 : Text;
92
92
  return /* @__PURE__ */ jsxDEV2(Component, {
93
- className: cn2("text-foreground web:select-text text-xl font-semibold", className),
93
+ className: cn2("web:select-text font-semibold text-foreground text-xl", className),
94
94
  ...props
95
95
  }, undefined, false, undefined, this);
96
96
  }
97
97
  function Small({ className, asChild = false, ...props }) {
98
98
  const Component = asChild ? Slot2 : Text;
99
99
  return /* @__PURE__ */ jsxDEV2(Component, {
100
- className: cn2("text-foreground web:select-text text-sm leading-none font-medium", className),
100
+ className: cn2("web:select-text font-medium text-foreground text-sm leading-none", className),
101
101
  ...props
102
102
  }, undefined, false, undefined, this);
103
103
  }
104
104
  function Muted({ className, asChild = false, ...props }) {
105
105
  const Component = asChild ? Slot2 : Text;
106
106
  return /* @__PURE__ */ jsxDEV2(Component, {
107
- className: cn2("text-muted-foreground web:select-text text-sm", className),
107
+ className: cn2("web:select-text text-muted-foreground text-sm", className),
108
108
  ...props
109
109
  }, undefined, false, undefined, this);
110
110
  }