@contractspec/lib.ui-kit-web 3.7.6 → 3.9.2

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 +1009 -0
  25. package/dist/browser/ui/data-table.parts.js +467 -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 +447 -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 +1004 -0
  127. package/dist/ui/data-table.parts.d.ts +14 -0
  128. package/dist/ui/data-table.parts.js +462 -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 +442 -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
@@ -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
  }
@@ -55,16 +55,31 @@ function Button({
55
55
  ...props
56
56
  }, undefined, false, undefined, this);
57
57
  }
58
+ // ui/label.tsx
59
+ import { cn as cn2 } from "@contractspec/lib.ui-kit-core/utils";
60
+ import * as LabelPrimitive from "@radix-ui/react-label";
61
+ import { jsxDEV as jsxDEV2 } from "react/jsx-dev-runtime";
62
+ "use client";
63
+ function Label({
64
+ className,
65
+ ...props
66
+ }) {
67
+ return /* @__PURE__ */ jsxDEV2(LabelPrimitive.Root, {
68
+ "data-slot": "label",
69
+ className: cn2("flex select-none items-center gap-2 font-medium text-sm leading-none peer-disabled:cursor-not-allowed peer-disabled:opacity-50 group-data-[disabled=true]:pointer-events-none group-data-[disabled=true]:opacity-50", className),
70
+ ...props
71
+ }, undefined, false, undefined, this);
72
+ }
58
73
  // ui/select.tsx
74
+ import { cn as cn3 } from "@contractspec/lib.ui-kit-core/utils";
59
75
  import * as SelectPrimitive from "@radix-ui/react-select";
60
76
  import { CheckIcon, ChevronDownIcon, ChevronUpIcon } from "lucide-react";
61
- import { cn as cn2 } from "@contractspec/lib.ui-kit-core/utils";
62
- import { jsxDEV as jsxDEV2 } from "react/jsx-dev-runtime";
77
+ import { jsxDEV as jsxDEV3 } from "react/jsx-dev-runtime";
63
78
  "use client";
64
79
  function Select({
65
80
  ...props
66
81
  }) {
67
- return /* @__PURE__ */ jsxDEV2(SelectPrimitive.Root, {
82
+ return /* @__PURE__ */ jsxDEV3(SelectPrimitive.Root, {
68
83
  "data-slot": "select",
69
84
  ...props
70
85
  }, undefined, false, undefined, this);
@@ -72,7 +87,7 @@ function Select({
72
87
  function SelectGroup({
73
88
  ...props
74
89
  }) {
75
- return /* @__PURE__ */ jsxDEV2(SelectPrimitive.Group, {
90
+ return /* @__PURE__ */ jsxDEV3(SelectPrimitive.Group, {
76
91
  "data-slot": "select-group",
77
92
  ...props
78
93
  }, undefined, false, undefined, this);
@@ -80,7 +95,7 @@ function SelectGroup({
80
95
  function SelectValue({
81
96
  ...props
82
97
  }) {
83
- return /* @__PURE__ */ jsxDEV2(SelectPrimitive.Value, {
98
+ return /* @__PURE__ */ jsxDEV3(SelectPrimitive.Value, {
84
99
  "data-slot": "select-value",
85
100
  ...props
86
101
  }, undefined, false, undefined, this);
@@ -91,16 +106,16 @@ function SelectTrigger({
91
106
  children,
92
107
  ...props
93
108
  }) {
94
- return /* @__PURE__ */ jsxDEV2(SelectPrimitive.Trigger, {
109
+ return /* @__PURE__ */ jsxDEV3(SelectPrimitive.Trigger, {
95
110
  "data-slot": "select-trigger",
96
111
  "data-size": size,
97
- className: cn2("aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 aria-invalid:border-destructive border-input focus-visible:border-ring focus-visible:ring-ring/50 data-placeholder:text-muted-foreground dark:bg-input/30 dark:hover:bg-input/50 [&_svg:not([class*='text-'])]:text-muted-foreground flex w-fit items-center justify-between gap-2 rounded-md border bg-transparent px-3 py-2 text-sm whitespace-nowrap shadow-2xs outline-hidden transition-[color,box-shadow] focus-visible:ring-[3px] disabled:cursor-not-allowed disabled:opacity-50 data-[size=default]:h-9 data-[size=sm]:h-8 *:data-[slot=select-value]:line-clamp-1 *:data-[slot=select-value]:flex *:data-[slot=select-value]:items-center *:data-[slot=select-value]:gap-2 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4", className),
112
+ className: cn3("flex w-fit items-center justify-between gap-2 whitespace-nowrap rounded-md border border-input bg-transparent px-3 py-2 text-sm shadow-2xs outline-hidden transition-[color,box-shadow] 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 data-[size=default]:h-9 data-[size=sm]:h-8 data-placeholder:text-muted-foreground *:data-[slot=select-value]:line-clamp-1 *:data-[slot=select-value]:flex *:data-[slot=select-value]:items-center *:data-[slot=select-value]:gap-2 dark:bg-input/30 dark:aria-invalid:ring-destructive/40 dark:hover:bg-input/50 [&_svg:not([class*='size-'])]:size-4 [&_svg:not([class*='text-'])]:text-muted-foreground [&_svg]:pointer-events-none [&_svg]:shrink-0", className),
98
113
  ...props,
99
114
  children: [
100
115
  children,
101
- /* @__PURE__ */ jsxDEV2(SelectPrimitive.Icon, {
116
+ /* @__PURE__ */ jsxDEV3(SelectPrimitive.Icon, {
102
117
  asChild: true,
103
- children: /* @__PURE__ */ jsxDEV2(ChevronDownIcon, {
118
+ children: /* @__PURE__ */ jsxDEV3(ChevronDownIcon, {
104
119
  className: "size-4 opacity-50"
105
120
  }, undefined, false, undefined, this)
106
121
  }, undefined, false, undefined, this)
@@ -113,19 +128,19 @@ function SelectContent({
113
128
  position = "popper",
114
129
  ...props
115
130
  }) {
116
- return /* @__PURE__ */ jsxDEV2(SelectPrimitive.Portal, {
117
- children: /* @__PURE__ */ jsxDEV2(SelectPrimitive.Content, {
131
+ return /* @__PURE__ */ jsxDEV3(SelectPrimitive.Portal, {
132
+ children: /* @__PURE__ */ jsxDEV3(SelectPrimitive.Content, {
118
133
  "data-slot": "select-content",
119
- 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 relative z-50 max-h-(--radix-select-content-available-height) min-w-32 origin-(--radix-select-content-transform-origin) overflow-x-hidden overflow-y-auto rounded-md border shadow-md", position === "popper" && "data-[side=bottom]:translate-y-1 data-[side=left]:-translate-x-1 data-[side=right]:translate-x-1 data-[side=top]:-translate-y-1", className),
134
+ className: cn3("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 relative z-50 max-h-(--radix-select-content-available-height) min-w-32 origin-(--radix-select-content-transform-origin) overflow-y-auto overflow-x-hidden rounded-md border bg-popover text-popover-foreground shadow-md data-[state=closed]:animate-out data-[state=open]:animate-in", position === "popper" && "data-[side=left]:-translate-x-1 data-[side=right]:translate-x-1 data-[side=bottom]:translate-y-1 data-[side=top]:-translate-y-1", className),
120
135
  position,
121
136
  ...props,
122
137
  children: [
123
- /* @__PURE__ */ jsxDEV2(SelectScrollUpButton, {}, undefined, false, undefined, this),
124
- /* @__PURE__ */ jsxDEV2(SelectPrimitive.Viewport, {
125
- className: cn2("p-1", position === "popper" && "h-(--radix-select-trigger-height) w-full min-w-(--radix-select-trigger-width) scroll-my-1"),
138
+ /* @__PURE__ */ jsxDEV3(SelectScrollUpButton, {}, undefined, false, undefined, this),
139
+ /* @__PURE__ */ jsxDEV3(SelectPrimitive.Viewport, {
140
+ className: cn3("p-1", position === "popper" && "h-(--radix-select-trigger-height) w-full min-w-(--radix-select-trigger-width) scroll-my-1"),
126
141
  children
127
142
  }, undefined, false, undefined, this),
128
- /* @__PURE__ */ jsxDEV2(SelectScrollDownButton, {}, undefined, false, undefined, this)
143
+ /* @__PURE__ */ jsxDEV3(SelectScrollDownButton, {}, undefined, false, undefined, this)
129
144
  ]
130
145
  }, undefined, true, undefined, this)
131
146
  }, undefined, false, undefined, this);
@@ -134,9 +149,9 @@ function SelectLabel({
134
149
  className,
135
150
  ...props
136
151
  }) {
137
- return /* @__PURE__ */ jsxDEV2(SelectPrimitive.Label, {
152
+ return /* @__PURE__ */ jsxDEV3(SelectPrimitive.Label, {
138
153
  "data-slot": "select-label",
139
- className: cn2("text-muted-foreground px-2 py-1.5 text-xs", className),
154
+ className: cn3("px-2 py-1.5 text-muted-foreground text-xs", className),
140
155
  ...props
141
156
  }, undefined, false, undefined, this);
142
157
  }
@@ -145,20 +160,20 @@ function SelectItem({
145
160
  children,
146
161
  ...props
147
162
  }) {
148
- return /* @__PURE__ */ jsxDEV2(SelectPrimitive.Item, {
163
+ return /* @__PURE__ */ jsxDEV3(SelectPrimitive.Item, {
149
164
  "data-slot": "select-item",
150
- className: cn2("focus:bg-accent focus:text-accent-foreground [&_svg:not([class*='text-'])]:text-muted-foreground relative flex w-full cursor-default items-center gap-2 rounded-xs py-1.5 pr-8 pl-2 text-sm outline-hidden select-none data-disabled:pointer-events-none data-disabled:opacity-50 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4 *:[span]:last:flex *:[span]:last:items-center *:[span]:last:gap-2", className),
165
+ className: cn3("relative flex w-full cursor-default select-none items-center gap-2 rounded-xs py-1.5 pr-8 pl-2 text-sm outline-hidden focus:bg-accent focus:text-accent-foreground data-disabled:pointer-events-none data-disabled:opacity-50 [&_svg:not([class*='size-'])]:size-4 [&_svg:not([class*='text-'])]:text-muted-foreground [&_svg]:pointer-events-none [&_svg]:shrink-0 *:[span]:last:flex *:[span]:last:items-center *:[span]:last:gap-2", className),
151
166
  ...props,
152
167
  children: [
153
- /* @__PURE__ */ jsxDEV2("span", {
168
+ /* @__PURE__ */ jsxDEV3("span", {
154
169
  className: "absolute right-2 flex size-3.5 items-center justify-center",
155
- children: /* @__PURE__ */ jsxDEV2(SelectPrimitive.ItemIndicator, {
156
- children: /* @__PURE__ */ jsxDEV2(CheckIcon, {
170
+ children: /* @__PURE__ */ jsxDEV3(SelectPrimitive.ItemIndicator, {
171
+ children: /* @__PURE__ */ jsxDEV3(CheckIcon, {
157
172
  className: "size-4"
158
173
  }, undefined, false, undefined, this)
159
174
  }, undefined, false, undefined, this)
160
175
  }, undefined, false, undefined, this),
161
- /* @__PURE__ */ jsxDEV2(SelectPrimitive.ItemText, {
176
+ /* @__PURE__ */ jsxDEV3(SelectPrimitive.ItemText, {
162
177
  children
163
178
  }, undefined, false, undefined, this)
164
179
  ]
@@ -168,9 +183,9 @@ function SelectSeparator({
168
183
  className,
169
184
  ...props
170
185
  }) {
171
- return /* @__PURE__ */ jsxDEV2(SelectPrimitive.Separator, {
186
+ return /* @__PURE__ */ jsxDEV3(SelectPrimitive.Separator, {
172
187
  "data-slot": "select-separator",
173
- className: cn2("bg-border pointer-events-none -mx-1 my-1 h-px", className),
188
+ className: cn3("pointer-events-none -mx-1 my-1 h-px bg-border", className),
174
189
  ...props
175
190
  }, undefined, false, undefined, this);
176
191
  }
@@ -178,11 +193,11 @@ function SelectScrollUpButton({
178
193
  className,
179
194
  ...props
180
195
  }) {
181
- return /* @__PURE__ */ jsxDEV2(SelectPrimitive.ScrollUpButton, {
196
+ return /* @__PURE__ */ jsxDEV3(SelectPrimitive.ScrollUpButton, {
182
197
  "data-slot": "select-scroll-up-button",
183
- className: cn2("flex cursor-default items-center justify-center py-1", className),
198
+ className: cn3("flex cursor-default items-center justify-center py-1", className),
184
199
  ...props,
185
- children: /* @__PURE__ */ jsxDEV2(ChevronUpIcon, {
200
+ children: /* @__PURE__ */ jsxDEV3(ChevronUpIcon, {
186
201
  className: "size-4"
187
202
  }, undefined, false, undefined, this)
188
203
  }, undefined, false, undefined, this);
@@ -191,30 +206,15 @@ function SelectScrollDownButton({
191
206
  className,
192
207
  ...props
193
208
  }) {
194
- return /* @__PURE__ */ jsxDEV2(SelectPrimitive.ScrollDownButton, {
209
+ return /* @__PURE__ */ jsxDEV3(SelectPrimitive.ScrollDownButton, {
195
210
  "data-slot": "select-scroll-down-button",
196
- className: cn2("flex cursor-default items-center justify-center py-1", className),
211
+ className: cn3("flex cursor-default items-center justify-center py-1", className),
197
212
  ...props,
198
- children: /* @__PURE__ */ jsxDEV2(ChevronDownIcon, {
213
+ children: /* @__PURE__ */ jsxDEV3(ChevronDownIcon, {
199
214
  className: "size-4"
200
215
  }, undefined, false, undefined, this)
201
216
  }, undefined, false, undefined, this);
202
217
  }
203
- // ui/label.tsx
204
- import * as LabelPrimitive from "@radix-ui/react-label";
205
- import { cn as cn3 } from "@contractspec/lib.ui-kit-core/utils";
206
- import { jsxDEV as jsxDEV3 } from "react/jsx-dev-runtime";
207
- "use client";
208
- function Label2({
209
- className,
210
- ...props
211
- }) {
212
- return /* @__PURE__ */ jsxDEV3(LabelPrimitive.Root, {
213
- "data-slot": "label",
214
- className: cn3("flex items-center gap-2 text-sm leading-none font-medium select-none group-data-[disabled=true]:pointer-events-none group-data-[disabled=true]:opacity-50 peer-disabled:cursor-not-allowed peer-disabled:opacity-50", className),
215
- ...props
216
- }, undefined, false, undefined, this);
217
- }
218
218
  // ui/atoms/FilterSelect/FilterSelect.tsx
219
219
  import { jsxDEV as jsxDEV4 } from "react/jsx-dev-runtime";
220
220
  var FilterSelect = ({
@@ -230,8 +230,8 @@ var FilterSelect = ({
230
230
  return /* @__PURE__ */ jsxDEV4("div", {
231
231
  className: `space-y-2 ${className}`,
232
232
  children: [
233
- label && /* @__PURE__ */ jsxDEV4(Label2, {
234
- className: "text-foreground text-base font-medium",
233
+ label && /* @__PURE__ */ jsxDEV4(Label, {
234
+ className: "font-medium text-base text-foreground",
235
235
  children: label
236
236
  }, undefined, false, undefined, this),
237
237
  /* @__PURE__ */ jsxDEV4(Select, {
@@ -253,7 +253,7 @@ var FilterSelect = ({
253
253
  children: [
254
254
  "Tous",
255
255
  showCounts && /* @__PURE__ */ jsxDEV4("span", {
256
- className: "text-muted-foreground ml-2 text-sm",
256
+ className: "ml-2 text-muted-foreground text-sm",
257
257
  children: [
258
258
  "(",
259
259
  options.reduce((sum, option) => sum + (option.count || 0), 0),
@@ -271,7 +271,7 @@ var FilterSelect = ({
271
271
  children: option.label
272
272
  }, undefined, false, undefined, this),
273
273
  showCounts && option.count !== undefined && /* @__PURE__ */ jsxDEV4("span", {
274
- className: "text-muted-foreground ml-2 text-sm",
274
+ className: "ml-2 text-muted-foreground text-sm",
275
275
  children: [
276
276
  "(",
277
277
  option.count,
@@ -346,7 +346,7 @@ var Pagination = ({
346
346
  className: `flex flex-col items-center justify-between gap-4 sm:flex-row ${className}`,
347
347
  children: [
348
348
  /* @__PURE__ */ jsxDEV5("div", {
349
- className: "text-muted-foreground order-2 text-base sm:order-1",
349
+ className: "order-2 text-base text-muted-foreground sm:order-1",
350
350
  children: [
351
351
  "Affichage de ",
352
352
  startItem,
@@ -397,7 +397,7 @@ var Pagination = ({
397
397
  children: getVisiblePageNumbers().map((page, index) => {
398
398
  if (page === -1) {
399
399
  return /* @__PURE__ */ jsxDEV5("span", {
400
- className: "text-muted-foreground px-2 py-1",
400
+ className: "px-2 py-1 text-muted-foreground",
401
401
  children: "..."
402
402
  }, `ellipsis-${index}`, false, undefined, this);
403
403
  }
@@ -482,7 +482,7 @@ function Input({ className, type, ...props }) {
482
482
  return /* @__PURE__ */ jsxDEV6("input", {
483
483
  type,
484
484
  "data-slot": "input",
485
- className: cn4("file:text-foreground placeholder:text-muted-foreground selection:bg-primary selection:text-primary-foreground dark:bg-input/30 border-input h-9 w-full min-w-0 rounded-md border bg-transparent px-3 py-1 text-base shadow-xs transition-[color,box-shadow] outline-none file:inline-flex file:h-7 file:border-0 file:bg-transparent file:text-sm file:font-medium disabled:pointer-events-none disabled:cursor-not-allowed disabled:opacity-50 md:text-sm", "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", className),
485
+ className: cn4("h-9 w-full min-w-0 rounded-md border border-input bg-transparent px-3 py-1 text-base shadow-xs outline-none transition-[color,box-shadow] selection:bg-primary selection:text-primary-foreground file:inline-flex file:h-7 file:border-0 file:bg-transparent file:font-medium file:text-foreground file:text-sm placeholder:text-muted-foreground disabled:pointer-events-none disabled:cursor-not-allowed disabled:opacity-50 md:text-sm dark:bg-input/30", "focus-visible:border-ring focus-visible:ring-[3px] focus-visible:ring-ring/50", "aria-invalid:border-destructive aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40", className),
486
486
  ...props
487
487
  }, undefined, false, undefined, this);
488
488
  }
@@ -508,7 +508,7 @@ var SearchInput = ({
508
508
  /* @__PURE__ */ jsxDEV7("div", {
509
509
  className: "pointer-events-none absolute inset-y-0 left-0 flex items-center pl-3",
510
510
  children: /* @__PURE__ */ jsxDEV7(Search, {
511
- className: "text-muted-foreground h-4 w-4"
511
+ className: "h-4 w-4 text-muted-foreground"
512
512
  }, undefined, false, undefined, this)
513
513
  }, undefined, false, undefined, this),
514
514
  /* @__PURE__ */ jsxDEV7(Input, {
@@ -531,7 +531,7 @@ var SearchInput = ({
531
531
  className: "h-6 w-6 p-0 hover:bg-transparent",
532
532
  children: [
533
533
  /* @__PURE__ */ jsxDEV7(X, {
534
- className: "text-muted-foreground hover:text-foreground h-4 w-4"
534
+ className: "h-4 w-4 text-muted-foreground hover:text-foreground"
535
535
  }, undefined, false, undefined, this),
536
536
  /* @__PURE__ */ jsxDEV7("span", {
537
537
  className: "sr-only",
@@ -549,7 +549,7 @@ import { jsxDEV as jsxDEV8 } from "react/jsx-dev-runtime";
549
549
  function Card({ className, ...props }) {
550
550
  return /* @__PURE__ */ jsxDEV8("div", {
551
551
  "data-slot": "card",
552
- className: cn5("bg-card text-card-foreground flex flex-col gap-6 rounded-xl border py-6 shadow-2xs", className),
552
+ className: cn5("flex flex-col gap-6 rounded-xl border bg-card py-6 text-card-foreground shadow-2xs", className),
553
553
  ...props
554
554
  }, undefined, false, undefined, this);
555
555
  }
@@ -569,7 +569,7 @@ function CardTitle({
569
569
  }) {
570
570
  return /* @__PURE__ */ jsxDEV8("div", {
571
571
  "data-slot": "card-title",
572
- className: cn5("leading-none font-semibold", className),
572
+ className: cn5("font-semibold leading-none", className),
573
573
  ...props
574
574
  }, undefined, false, undefined, this);
575
575
  }
@@ -642,8 +642,8 @@ function CollapsibleContent2({
642
642
  }, undefined, false, undefined, this);
643
643
  }
644
644
  // ui/stack.tsx
645
- import { cva as cva2 } from "class-variance-authority";
646
645
  import { cn as cn6 } from "@contractspec/lib.ui-kit-core/utils";
646
+ import { cva as cva2 } from "class-variance-authority";
647
647
  import { jsxDEV as jsxDEV10 } from "react/jsx-dev-runtime";
648
648
  var vStackVariants = cva2("flex flex-col", {
649
649
  variants: {
@@ -806,8 +806,8 @@ function Box({
806
806
  }, undefined, false, undefined, this);
807
807
  }
808
808
  // ui/separator.tsx
809
- import * as SeparatorPrimitive from "@radix-ui/react-separator";
810
809
  import { cn as cn7 } from "@contractspec/lib.ui-kit-core/utils";
810
+ import * as SeparatorPrimitive from "@radix-ui/react-separator";
811
811
  import { jsxDEV as jsxDEV11 } from "react/jsx-dev-runtime";
812
812
  "use client";
813
813
  function Separator2({
@@ -820,13 +820,13 @@ function Separator2({
820
820
  "data-slot": "separator",
821
821
  decorative,
822
822
  orientation,
823
- className: cn7("bg-border shrink-0 data-[orientation=horizontal]:h-px data-[orientation=horizontal]:w-full data-[orientation=vertical]:h-full data-[orientation=vertical]:w-px", className),
823
+ className: cn7("shrink-0 bg-border data-[orientation=horizontal]:h-px data-[orientation=vertical]:h-full data-[orientation=horizontal]:w-full data-[orientation=vertical]:w-px", className),
824
824
  ...props
825
825
  }, undefined, false, undefined, this);
826
826
  }
827
827
  // ui/molecules/SearchAndFilter/SearchAndFilter.tsx
828
- import { useState } from "react";
829
828
  import { ChevronDown, ChevronUp, Filter } from "lucide-react";
829
+ import { useState } from "react";
830
830
  import { jsxDEV as jsxDEV12 } from "react/jsx-dev-runtime";
831
831
  var SearchAndFilter = ({
832
832
  searchValue,
@@ -889,7 +889,7 @@ var SearchAndFilter = ({
889
889
  }, undefined, false, undefined, this),
890
890
  "Filtres",
891
891
  activeFiltersCount > 0 && /* @__PURE__ */ jsxDEV12("span", {
892
- className: "bg-primary text-primary-foreground ml-2 flex h-5 w-5 items-center justify-center rounded-full text-sm",
892
+ className: "ml-2 flex h-5 w-5 items-center justify-center rounded-full bg-primary text-primary-foreground text-sm",
893
893
  children: activeFiltersCount
894
894
  }, undefined, false, undefined, this),
895
895
  isCollapsed ? /* @__PURE__ */ jsxDEV12(ChevronDown, {
@@ -916,7 +916,7 @@ var SearchAndFilter = ({
916
916
  className: "flex flex-wrap items-center gap-2",
917
917
  children: [
918
918
  /* @__PURE__ */ jsxDEV12("span", {
919
- className: "text-muted-foreground text-base",
919
+ className: "text-base text-muted-foreground",
920
920
  children: "Filtres actifs:"
921
921
  }, undefined, false, undefined, this),
922
922
  filters.filter((f) => f.value).map((filter) => {
@@ -944,8 +944,8 @@ var SearchAndFilter = ({
944
944
  }, undefined, true, undefined, this);
945
945
  };
946
946
  // ui/organisms/ListPage/ListPage.tsx
947
- import Link from "next/link";
948
947
  import { AlertTriangle, Loader2, Plus, RefreshCcw } from "lucide-react";
948
+ import Link from "next/link";
949
949
  import { jsxDEV as jsxDEV13, Fragment } from "react/jsx-dev-runtime";
950
950
  function ListPage({
951
951
  title,
@@ -987,11 +987,11 @@ function ListPage({
987
987
  className: "gap-1",
988
988
  children: [
989
989
  /* @__PURE__ */ jsxDEV13("h1", {
990
- className: "text-2xl font-bold md:text-3xl",
990
+ className: "font-bold text-2xl md:text-3xl",
991
991
  children: title
992
992
  }, undefined, false, undefined, this),
993
993
  description && /* @__PURE__ */ jsxDEV13("p", {
994
- className: "text-muted-foreground text-base",
994
+ className: "text-base text-muted-foreground",
995
995
  children: description
996
996
  }, undefined, false, undefined, this)
997
997
  ]
@@ -1003,7 +1003,7 @@ function ListPage({
1003
1003
  className: "flex items-center gap-4 p-6",
1004
1004
  children: [
1005
1005
  /* @__PURE__ */ jsxDEV13(Loader2, {
1006
- className: "text-primary h-8 w-8 animate-spin"
1006
+ className: "h-8 w-8 animate-spin text-primary"
1007
1007
  }, undefined, false, undefined, this),
1008
1008
  /* @__PURE__ */ jsxDEV13("div", {
1009
1009
  children: [
@@ -1012,7 +1012,7 @@ function ListPage({
1012
1012
  children: "Chargement..."
1013
1013
  }, undefined, false, undefined, this),
1014
1014
  /* @__PURE__ */ jsxDEV13("p", {
1015
- className: "text-muted-foreground text-base",
1015
+ className: "text-base text-muted-foreground",
1016
1016
  children: "Récupération des données en cours"
1017
1017
  }, undefined, false, undefined, this)
1018
1018
  ]
@@ -1032,11 +1032,11 @@ function ListPage({
1032
1032
  className: "gap-1",
1033
1033
  children: [
1034
1034
  /* @__PURE__ */ jsxDEV13("h1", {
1035
- className: "text-2xl font-bold md:text-3xl",
1035
+ className: "font-bold text-2xl md:text-3xl",
1036
1036
  children: title
1037
1037
  }, undefined, false, undefined, this),
1038
1038
  description && /* @__PURE__ */ jsxDEV13("p", {
1039
- className: "text-muted-foreground text-base",
1039
+ className: "text-base text-muted-foreground",
1040
1040
  children: description
1041
1041
  }, undefined, false, undefined, this)
1042
1042
  ]
@@ -1048,7 +1048,7 @@ function ListPage({
1048
1048
  className: "flex flex-col items-center gap-4 p-6 text-center",
1049
1049
  children: [
1050
1050
  /* @__PURE__ */ jsxDEV13(AlertTriangle, {
1051
- className: "text-destructive h-12 w-12"
1051
+ className: "h-12 w-12 text-destructive"
1052
1052
  }, undefined, false, undefined, this),
1053
1053
  /* @__PURE__ */ jsxDEV13("div", {
1054
1054
  children: [
@@ -1057,7 +1057,7 @@ function ListPage({
1057
1057
  children: "Erreur de chargement"
1058
1058
  }, undefined, false, undefined, this),
1059
1059
  /* @__PURE__ */ jsxDEV13("p", {
1060
- className: "text-muted-foreground text-base",
1060
+ className: "text-base text-muted-foreground",
1061
1061
  children: error.message || "Une erreur est survenue"
1062
1062
  }, undefined, false, undefined, this)
1063
1063
  ]
@@ -1100,11 +1100,11 @@ function ListPage({
1100
1100
  className: "gap-1",
1101
1101
  children: [
1102
1102
  /* @__PURE__ */ jsxDEV13("h1", {
1103
- className: "text-2xl font-bold md:text-3xl",
1103
+ className: "font-bold text-2xl md:text-3xl",
1104
1104
  children: title
1105
1105
  }, undefined, false, undefined, this),
1106
1106
  description && /* @__PURE__ */ jsxDEV13("p", {
1107
- className: "text-muted-foreground text-base",
1107
+ className: "text-base text-muted-foreground",
1108
1108
  children: description
1109
1109
  }, undefined, false, undefined, this)
1110
1110
  ]
@@ -1114,7 +1114,7 @@ function ListPage({
1114
1114
  children: [
1115
1115
  toolbar,
1116
1116
  (isLoading || isFetching) && /* @__PURE__ */ jsxDEV13("div", {
1117
- className: "text-muted-foreground flex items-center gap-2 text-base",
1117
+ className: "flex items-center gap-2 text-base text-muted-foreground",
1118
1118
  children: [
1119
1119
  /* @__PURE__ */ jsxDEV13(Loader2, {
1120
1120
  className: "h-4 w-4 animate-spin"
@@ -1198,9 +1198,9 @@ function ListPage({
1198
1198
  className: "flex flex-col items-center gap-4 p-8 text-center",
1199
1199
  children: [
1200
1200
  /* @__PURE__ */ jsxDEV13("div", {
1201
- className: "bg-muted flex h-12 w-12 items-center justify-center rounded-full",
1201
+ className: "flex h-12 w-12 items-center justify-center rounded-full bg-muted",
1202
1202
  children: /* @__PURE__ */ jsxDEV13("div", {
1203
- className: "bg-muted-foreground/20 h-6 w-6 rounded-full"
1203
+ className: "h-6 w-6 rounded-full bg-muted-foreground/20"
1204
1204
  }, undefined, false, undefined, this)
1205
1205
  }, undefined, false, undefined, this),
1206
1206
  /* @__PURE__ */ jsxDEV13("div", {
@@ -1210,7 +1210,7 @@ function ListPage({
1210
1210
  children: "Aucun élément trouvé"
1211
1211
  }, undefined, false, undefined, this),
1212
1212
  /* @__PURE__ */ jsxDEV13("p", {
1213
- className: "text-muted-foreground text-base",
1213
+ className: "text-base text-muted-foreground",
1214
1214
  children: searchQuery || Object.values(filterValues).some((v) => v) ? "Essayez de modifier vos critères de recherche" : "Commencez par créer votre premier élément"
1215
1215
  }, undefined, false, undefined, this)
1216
1216
  ]
@@ -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/page-header.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 headerVariants = cva2("", {
178
178
  variants: {
@@ -205,11 +205,11 @@ function PageHeader({
205
205
  className: "gap-1",
206
206
  children: [
207
207
  /* @__PURE__ */ jsxDEV2("h1", {
208
- className: "text-2xl font-semibold md:text-3xl",
208
+ className: "font-semibold text-2xl md:text-3xl",
209
209
  children: title
210
210
  }, undefined, false, undefined, this),
211
211
  subtitle ? /* @__PURE__ */ jsxDEV2("p", {
212
- className: "text-muted-foreground text-base",
212
+ className: "text-base text-muted-foreground",
213
213
  children: subtitle
214
214
  }, undefined, false, undefined, this) : null
215
215
  ]
@@ -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/pagination.tsx
59
- import { ChevronLeft, ChevronRight, MoreHorizontal } from "lucide-react";
60
59
  import { cn as cn2 } from "@contractspec/lib.ui-kit-core/utils";
60
+ import { ChevronLeft, ChevronRight, MoreHorizontal } from "lucide-react";
61
61
  import { jsxDEV as jsxDEV2 } from "react/jsx-dev-runtime";
62
62
  function Pagination({
63
63
  className,
@@ -7,8 +7,8 @@ var __require = /* @__PURE__ */ ((x) => typeof require !== "undefined" ? require
7
7
  });
8
8
 
9
9
  // ui/popover.tsx
10
- import * as PopoverPrimitive from "@radix-ui/react-popover";
11
10
  import { cn } from "@contractspec/lib.ui-kit-core/utils";
11
+ import * as PopoverPrimitive from "@radix-ui/react-popover";
12
12
  import { jsxDEV } from "react/jsx-dev-runtime";
13
13
  "use client";
14
14
  function Popover({
@@ -38,7 +38,7 @@ function PopoverContent({
38
38
  "data-slot": "popover-content",
39
39
  align,
40
40
  sideOffset,
41
- className: cn("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),
41
+ className: cn("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),
42
42
  ...props
43
43
  }, undefined, false, undefined, this)
44
44
  }, undefined, false, undefined, this);
@@ -7,8 +7,8 @@ var __require = /* @__PURE__ */ ((x) => typeof require !== "undefined" ? require
7
7
  });
8
8
 
9
9
  // ui/progress.tsx
10
- import * as ProgressPrimitive from "@radix-ui/react-progress";
11
10
  import { cn } from "@contractspec/lib.ui-kit-core/utils";
11
+ import * as ProgressPrimitive from "@radix-ui/react-progress";
12
12
  import { jsxDEV } from "react/jsx-dev-runtime";
13
13
  "use client";
14
14
  function Progress({
@@ -18,11 +18,11 @@ function Progress({
18
18
  }) {
19
19
  return /* @__PURE__ */ jsxDEV(ProgressPrimitive.Root, {
20
20
  "data-slot": "progress",
21
- className: cn("bg-primary/20 relative h-2 w-full overflow-hidden rounded-full", className),
21
+ className: cn("relative h-2 w-full overflow-hidden rounded-full bg-primary/20", className),
22
22
  ...props,
23
23
  children: /* @__PURE__ */ jsxDEV(ProgressPrimitive.Indicator, {
24
24
  "data-slot": "progress-indicator",
25
- className: "bg-primary h-full w-full flex-1 transition-all",
25
+ className: "h-full w-full flex-1 bg-primary transition-all",
26
26
  style: { transform: `translateX(-${100 - (value || 0)}%)` }
27
27
  }, undefined, false, undefined, this)
28
28
  }, undefined, false, undefined, this);
@@ -7,9 +7,9 @@ var __require = /* @__PURE__ */ ((x) => typeof require !== "undefined" ? require
7
7
  });
8
8
 
9
9
  // ui/radio-group.tsx
10
+ import { cn } from "@contractspec/lib.ui-kit-core/utils";
10
11
  import * as RadioGroupPrimitive from "@radix-ui/react-radio-group";
11
12
  import { CircleIcon } from "lucide-react";
12
- import { cn } from "@contractspec/lib.ui-kit-core/utils";
13
13
  import { jsxDEV } from "react/jsx-dev-runtime";
14
14
  "use client";
15
15
  function RadioGroup({
@@ -28,13 +28,13 @@ function RadioGroupItem({
28
28
  }) {
29
29
  return /* @__PURE__ */ jsxDEV(RadioGroupPrimitive.Item, {
30
30
  "data-slot": "radio-group-item",
31
- className: cn("aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 aria-invalid:border-destructive border-input text-primary focus-visible:border-ring focus-visible:ring-ring/50 dark:bg-input/30 aspect-square size-4 shrink-0 rounded-full border shadow-2xs outline-hidden transition-[color,box-shadow] focus-visible:ring-[3px] disabled:cursor-not-allowed disabled:opacity-50", className),
31
+ className: cn("aspect-square size-4 shrink-0 rounded-full border border-input text-primary shadow-2xs outline-hidden transition-[color,box-shadow] 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 dark:bg-input/30 dark:aria-invalid:ring-destructive/40", className),
32
32
  ...props,
33
33
  children: /* @__PURE__ */ jsxDEV(RadioGroupPrimitive.Indicator, {
34
34
  "data-slot": "radio-group-indicator",
35
35
  className: "relative flex items-center justify-center",
36
36
  children: /* @__PURE__ */ jsxDEV(CircleIcon, {
37
- className: "fill-primary absolute top-1/2 left-1/2 size-2 -translate-x-1/2 -translate-y-1/2"
37
+ className: "absolute top-1/2 left-1/2 size-2 -translate-x-1/2 -translate-y-1/2 fill-primary"
38
38
  }, undefined, false, undefined, this)
39
39
  }, undefined, false, undefined, this)
40
40
  }, undefined, false, undefined, this);