@lssm/lib.design-system 0.0.0-canary-20251217062139 → 0.0.0-canary-20251217060834

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/dist/_virtual/rolldown_runtime.js +12 -1
  2. package/dist/components/agent/AgentMonitor.js +3 -3
  3. package/dist/components/agent/ApprovalQueue.d.ts +2 -2
  4. package/dist/components/agent/ApprovalQueue.js +5 -4
  5. package/dist/components/atoms/ActionButtons.d.ts +3 -3
  6. package/dist/components/atoms/ActionButtons.js +3 -3
  7. package/dist/components/atoms/Button.d.ts +6 -6
  8. package/dist/components/atoms/Button.js +2 -2
  9. package/dist/components/atoms/ButtonLink.js +2 -2
  10. package/dist/components/atoms/Cta.d.ts +7 -7
  11. package/dist/components/atoms/Cta.js +2 -2
  12. package/dist/components/atoms/DataChips.d.ts +2 -2
  13. package/dist/components/atoms/DataChips.js +1 -1
  14. package/dist/components/atoms/EmptyState.d.ts +2 -2
  15. package/dist/components/atoms/EmptyState.js +1 -1
  16. package/dist/components/atoms/ErrorState.d.ts +6 -6
  17. package/dist/components/atoms/ErrorState.js +1 -1
  18. package/dist/components/atoms/Input.d.ts +2 -2
  19. package/dist/components/atoms/Input.js +1 -1
  20. package/dist/components/atoms/Link.web.d.ts +3 -3
  21. package/dist/components/atoms/Link.web.js +6 -4
  22. package/dist/components/atoms/LoaderCircular.d.ts +3 -3
  23. package/dist/components/atoms/LoaderCircular.js +2 -2
  24. package/dist/components/atoms/NavBrand.d.ts +3 -3
  25. package/dist/components/atoms/NavBrand.js +1 -1
  26. package/dist/components/atoms/Stepper.d.ts +2 -2
  27. package/dist/components/atoms/Stepper.js +1 -1
  28. package/dist/components/atoms/Textarea.d.ts +2 -2
  29. package/dist/components/atoms/Textarea.js +4 -4
  30. package/dist/components/data-view/DataViewDetail.d.ts +5 -5
  31. package/dist/components/data-view/DataViewList.d.ts +5 -5
  32. package/dist/components/data-view/DataViewRenderer.d.ts +5 -5
  33. package/dist/components/data-view/DataViewRenderer.js +3 -3
  34. package/dist/components/data-view/DataViewTable.d.ts +6 -6
  35. package/dist/components/forms/ActionForm.d.ts +3 -3
  36. package/dist/components/forms/ActionForm.js +1 -1
  37. package/dist/components/forms/FormCardLayout.d.ts +5 -5
  38. package/dist/components/forms/FormCardLayout.js +2 -2
  39. package/dist/components/forms/FormDialog.d.ts +5 -5
  40. package/dist/components/forms/FormDialog.js +1 -1
  41. package/dist/components/forms/FormLayout.d.ts +4 -4
  42. package/dist/components/forms/FormLayout.js +1 -1
  43. package/dist/components/forms/FormOneByOneLayout.d.ts +6 -6
  44. package/dist/components/forms/FormOneByOneLayout.js +4 -4
  45. package/dist/components/forms/FormStepsLayout.d.ts +4 -4
  46. package/dist/components/forms/FormStepsLayout.js +5 -5
  47. package/dist/components/forms/ZodForm.d.ts +6 -6
  48. package/dist/components/forms/ZodForm.js +1 -1
  49. package/dist/components/legal/atoms/DefinitionList.d.ts +3 -3
  50. package/dist/components/legal/atoms/DefinitionList.js +1 -1
  51. package/dist/components/legal/atoms/KeyValueList.d.ts +3 -3
  52. package/dist/components/legal/atoms/KeyValueList.js +1 -1
  53. package/dist/components/legal/atoms/LegalCallout.d.ts +2 -2
  54. package/dist/components/legal/atoms/LegalCallout.js +1 -1
  55. package/dist/components/legal/atoms/LegalHeading.d.ts +2 -2
  56. package/dist/components/legal/atoms/LegalHeading.js +1 -1
  57. package/dist/components/legal/atoms/LegalList.d.ts +2 -2
  58. package/dist/components/legal/atoms/LegalList.js +1 -1
  59. package/dist/components/legal/atoms/LegalSection.d.ts +2 -2
  60. package/dist/components/legal/atoms/LegalSection.js +1 -1
  61. package/dist/components/legal/atoms/LegalText.d.ts +2 -2
  62. package/dist/components/legal/atoms/LegalText.js +1 -1
  63. package/dist/components/legal/molecules/Consent.d.ts +5 -5
  64. package/dist/components/legal/molecules/Consent.js +2 -2
  65. package/dist/components/legal/molecules/ContactFields.js +1 -1
  66. package/dist/components/legal/molecules/LegalMeta.js +1 -1
  67. package/dist/components/legal/molecules/LegalTOC.d.ts +3 -3
  68. package/dist/components/legal/molecules/LegalTOC.js +1 -1
  69. package/dist/components/legal/organisms/ContactForm.d.ts +2 -2
  70. package/dist/components/legal/organisms/ContactForm.js +3 -3
  71. package/dist/components/legal/organisms/GDPRDataRequest.d.ts +3 -3
  72. package/dist/components/legal/organisms/GDPRDataRequest.js +2 -2
  73. package/dist/components/legal/organisms/GDPRRights.d.ts +3 -3
  74. package/dist/components/legal/organisms/LegalPageLayout.d.ts +3 -3
  75. package/dist/components/legal/organisms/LegalPageLayout.js +1 -1
  76. package/dist/components/legal/templates/ContactTemplate.d.ts +4 -4
  77. package/dist/components/legal/templates/ContactTemplate.js +3 -3
  78. package/dist/components/legal/templates/CookiesTemplate.d.ts +7 -7
  79. package/dist/components/legal/templates/PrivacyTemplate.d.ts +7 -7
  80. package/dist/components/legal/templates/SalesTermsTemplate.d.ts +5 -5
  81. package/dist/components/legal/templates/TermsTemplate.d.ts +5 -5
  82. package/dist/components/marketing/MarketingCard.d.ts +4 -4
  83. package/dist/components/marketing/MarketingCard.js +3 -3
  84. package/dist/components/marketing/MarketingCardsSection.d.ts +2 -2
  85. package/dist/components/marketing/MarketingCardsSection.js +1 -1
  86. package/dist/components/marketing/MarketingComparisonSection.d.ts +5 -5
  87. package/dist/components/marketing/MarketingComparisonSection.js +3 -3
  88. package/dist/components/marketing/MarketingIconCard.d.ts +5 -5
  89. package/dist/components/marketing/MarketingIconCard.js +3 -4
  90. package/dist/components/marketing/MarketingSection.d.ts +5 -5
  91. package/dist/components/marketing/MarketingSection.js +3 -3
  92. package/dist/components/marketing/MarketingStepCard.d.ts +3 -3
  93. package/dist/components/marketing/MarketingStepCard.js +3 -4
  94. package/dist/components/molecules/AiLinkButton.js +5 -5
  95. package/dist/components/molecules/Breadcrumbs.d.ts +4 -4
  96. package/dist/components/molecules/Breadcrumbs.js +3 -3
  97. package/dist/components/molecules/CommandPalette.js +4 -4
  98. package/dist/components/molecules/CommandSearchTrigger.d.ts +4 -4
  99. package/dist/components/molecules/CommandSearchTrigger.js +5 -5
  100. package/dist/components/molecules/EntityCard.d.ts +9 -9
  101. package/dist/components/molecules/EntityCard.js +2 -2
  102. package/dist/components/molecules/FiltersToolbar.d.ts +4 -4
  103. package/dist/components/molecules/FiltersToolbar.js +6 -6
  104. package/dist/components/molecules/HoverPreview.d.ts +3 -3
  105. package/dist/components/molecules/HoverPreview.js +2 -4
  106. package/dist/components/molecules/LangSwitch.d.ts +2 -2
  107. package/dist/components/molecules/LangSwitchDropdown.js +4 -4
  108. package/dist/components/molecules/LoaderBlock.d.ts +3 -3
  109. package/dist/components/molecules/LoaderBlock.js +1 -1
  110. package/dist/components/molecules/MobileNavMenu.js +1 -1
  111. package/dist/components/molecules/NavItemCard.js +1 -1
  112. package/dist/components/molecules/NavMain.js +4 -4
  113. package/dist/components/molecules/NavUser.js +2 -2
  114. package/dist/components/molecules/OverviewCard.d.ts +2 -2
  115. package/dist/components/molecules/OverviewCard.js +5 -3
  116. package/dist/components/molecules/SkeletonBlock/index.web.d.ts +2 -2
  117. package/dist/components/molecules/SkeletonBlock/index.web.js +2 -2
  118. package/dist/components/molecules/SkeletonCircle/index.web.js +1 -1
  119. package/dist/components/molecules/SkeletonList/index.web.d.ts +2 -2
  120. package/dist/components/molecules/SkeletonList/index.web.js +1 -1
  121. package/dist/components/molecules/StatCard.d.ts +8 -8
  122. package/dist/components/molecules/StatCard.js +2 -2
  123. package/dist/components/molecules/StatusChip.d.ts +5 -5
  124. package/dist/components/molecules/StatusChip.js +1 -1
  125. package/dist/components/molecules/hover-previews/Doc.d.ts +6 -6
  126. package/dist/components/molecules/hover-previews/Media.d.ts +5 -5
  127. package/dist/components/molecules/hover-previews/Simple.d.ts +7 -7
  128. package/dist/components/molecules/hover-previews/Stats.d.ts +6 -6
  129. package/dist/components/molecules/hover-previews/User.d.ts +7 -7
  130. package/dist/components/organisms/AcademyLayout.d.ts +7 -7
  131. package/dist/components/organisms/AcademyLayout.js +4 -4
  132. package/dist/components/organisms/AppHeader.d.ts +3 -3
  133. package/dist/components/organisms/AppHeader.js +2 -2
  134. package/dist/components/organisms/AppLayout.d.ts +6 -6
  135. package/dist/components/organisms/AppLayout.js +5 -5
  136. package/dist/components/organisms/AppSidebar.d.ts +3 -3
  137. package/dist/components/organisms/AppSidebar.js +2 -2
  138. package/dist/components/organisms/EmptyDataList.js +1 -1
  139. package/dist/components/organisms/EmptyDataList.types.d.ts +8 -8
  140. package/dist/components/organisms/EmptySearchResult.d.ts +5 -5
  141. package/dist/components/organisms/EmptySearchResult.js +3 -3
  142. package/dist/components/organisms/FAQSection.d.ts +6 -6
  143. package/dist/components/organisms/FAQSection.js +4 -4
  144. package/dist/components/organisms/FeatureCarousel.d.ts +4 -4
  145. package/dist/components/organisms/FeatureCarousel.js +2 -2
  146. package/dist/components/organisms/FeaturesSection.d.ts +4 -4
  147. package/dist/components/organisms/FeaturesSection.js +1 -1
  148. package/dist/components/organisms/Footer.d.ts +5 -5
  149. package/dist/components/organisms/Footer.js +2 -2
  150. package/dist/components/organisms/Header.d.ts +5 -5
  151. package/dist/components/organisms/Header.js +4 -4
  152. package/dist/components/organisms/HeroResponsive.d.ts +2 -2
  153. package/dist/components/organisms/HeroSection.d.ts +3 -3
  154. package/dist/components/organisms/HeroSection.js +1 -1
  155. package/dist/components/organisms/ListCardPage.d.ts +4 -4
  156. package/dist/components/organisms/ListCardPage.js +2 -2
  157. package/dist/components/organisms/ListGridPage.d.ts +4 -4
  158. package/dist/components/organisms/ListGridPage.js +1 -1
  159. package/dist/components/organisms/ListPageResponsive.js +1 -1
  160. package/dist/components/organisms/ListTablePage.d.ts +6 -6
  161. package/dist/components/organisms/ListTablePage.js +2 -2
  162. package/dist/components/organisms/MarketingHeader.d.ts +4 -4
  163. package/dist/components/organisms/MarketingHeader.js +9 -9
  164. package/dist/components/organisms/MarketingHeaderDesktop.js +3 -3
  165. package/dist/components/organisms/MarketingHeaderMobile.js +6 -6
  166. package/dist/components/organisms/MarketingLayout.d.ts +4 -4
  167. package/dist/components/organisms/MarketingLayout.js +2 -2
  168. package/dist/components/organisms/PageHeaderResponsive.js +1 -1
  169. package/dist/components/organisms/PricingCarousel.js +2 -2
  170. package/dist/components/organisms/PricingSection.d.ts +3 -3
  171. package/dist/components/organisms/PricingSection.js +1 -1
  172. package/dist/components/organisms/TestimonialCarousel.d.ts +5 -5
  173. package/dist/components/organisms/TestimonialCarousel.js +2 -2
  174. package/dist/components/templates/lists/ListPageTemplate/index.web.js +5 -5
  175. package/dist/components/templates/lists/ListPageTemplate/types.d.ts +7 -7
  176. package/dist/hooks/useListUrlState.js +7 -7
  177. package/dist/index.js +1 -2
  178. package/dist/platform/useColorScheme.js +3 -3
  179. package/dist/platform/useReducedMotion.js +3 -3
  180. package/dist/platform/useResponsive.js +4 -4
  181. package/dist/renderers/form-contract.d.ts +1 -1
  182. package/dist/renderers/form-contract.js +13 -13
  183. package/dist/types/navigation.d.ts +10 -10
  184. package/package.json +7 -7
  185. package/dist/contracts/dist/client/react/drivers/shadcn.js +0 -7
  186. package/dist/contracts/dist/client/react/form-render.js +0 -261
  187. package/dist/contracts/dist/forms.js +0 -78
  188. package/dist/ui-kit-web/dist/ui/accordion.js +0 -48
  189. package/dist/ui-kit-web/dist/ui/atoms/FilterSelect/FilterSelect.js +0 -52
  190. package/dist/ui-kit-web/dist/ui/atoms/Pagination/Pagination.js +0 -156
  191. package/dist/ui-kit-web/dist/ui/atoms/SearchInput/SearchInput.js +0 -49
  192. package/dist/ui-kit-web/dist/ui/avatar.js +0 -32
  193. package/dist/ui-kit-web/dist/ui/badge.js +0 -27
  194. package/dist/ui-kit-web/dist/ui/breadcrumb.js +0 -59
  195. package/dist/ui-kit-web/dist/ui/button.js +0 -55
  196. package/dist/ui-kit-web/dist/ui/card.js +0 -44
  197. package/dist/ui-kit-web/dist/ui/carousel.js +0 -135
  198. package/dist/ui-kit-web/dist/ui/checkbox.js +0 -25
  199. package/dist/ui-kit-web/dist/ui/collapsible.js +0 -27
  200. package/dist/ui-kit-web/dist/ui/command.js +0 -90
  201. package/dist/ui-kit-web/dist/ui/dialog.js +0 -84
  202. package/dist/ui-kit-web/dist/ui/dropdown-menu.js +0 -57
  203. package/dist/ui-kit-web/dist/ui/empty-state.js +0 -43
  204. package/dist/ui-kit-web/dist/ui/empty.js +0 -62
  205. package/dist/ui-kit-web/dist/ui/field.js +0 -78
  206. package/dist/ui-kit-web/dist/ui/form.js +0 -16
  207. package/dist/ui-kit-web/dist/ui/hover-card.js +0 -40
  208. package/dist/ui-kit-web/dist/ui/input.js +0 -17
  209. package/dist/ui-kit-web/dist/ui/label.js +0 -19
  210. package/dist/ui-kit-web/dist/ui/marketing/Hero.js +0 -52
  211. package/dist/ui-kit-web/dist/ui/marketing/PricingTable.js +0 -59
  212. package/dist/ui-kit-web/dist/ui/molecules/SearchAndFilter/SearchAndFilter.js +0 -102
  213. package/dist/ui-kit-web/dist/ui/molecules/SkeletonList.js +0 -14
  214. package/dist/ui-kit-web/dist/ui/navigation-menu.js +0 -75
  215. package/dist/ui-kit-web/dist/ui/organisms/ListPage/ListPage.js +0 -197
  216. package/dist/ui-kit-web/dist/ui/page-header.js +0 -40
  217. package/dist/ui-kit-web/dist/ui/pagination.js +0 -65
  218. package/dist/ui-kit-web/dist/ui/radio-group.js +0 -32
  219. package/dist/ui-kit-web/dist/ui/select.js +0 -86
  220. package/dist/ui-kit-web/dist/ui/separator.js +0 -21
  221. package/dist/ui-kit-web/dist/ui/sheet.js +0 -80
  222. package/dist/ui-kit-web/dist/ui/sidebar.js +0 -281
  223. package/dist/ui-kit-web/dist/ui/skeleton.js +0 -14
  224. package/dist/ui-kit-web/dist/ui/stack.js +0 -158
  225. package/dist/ui-kit-web/dist/ui/stepper.js +0 -37
  226. package/dist/ui-kit-web/dist/ui/switch.js +0 -24
  227. package/dist/ui-kit-web/dist/ui/table.js +0 -57
  228. package/dist/ui-kit-web/dist/ui/text.js +0 -16
  229. package/dist/ui-kit-web/dist/ui/textarea.js +0 -16
  230. package/dist/ui-kit-web/dist/ui/tooltip.js +0 -40
  231. package/dist/ui-kit-web/dist/ui/typography.js +0 -23
  232. package/dist/ui-kit-web/dist/ui/use-mobile.js +0 -20
  233. package/dist/ui-kit-web/dist/ui/utils.js +0 -10
  234. package/dist/ui-kit-web/dist/ui-kit-core/dist/utils.js +0 -13
@@ -1,78 +0,0 @@
1
- //#region ../contracts/dist/forms.js
2
- function n(e, t) {
3
- if (!t) return;
4
- let n$1 = t.replace(/\[(\d+)\]/g, `.$1`).split(`.`).filter(Boolean), r$1 = e;
5
- for (let e$1 of n$1) {
6
- if (r$1 == null) return;
7
- r$1 = r$1[e$1];
8
- }
9
- return r$1;
10
- }
11
- function r(e, t) {
12
- if (!t) return !0;
13
- if (t.not) return !r(e, t.not);
14
- if (t.all && t.all.length) return t.all.every((t$1) => r(e, t$1));
15
- if (t.any && t.any.length) return t.any.some((t$1) => r(e, t$1));
16
- if (t.when) {
17
- let { path: r$1, op: i$1 = `truthy`, value: a } = t.when, o = n(e, r$1);
18
- switch (i$1) {
19
- case `equals`: return o === a;
20
- case `notEquals`: return o !== a;
21
- case `in`: return Array.isArray(a) && a.includes(o);
22
- case `notIn`: return Array.isArray(a) && !a.includes(o);
23
- case `gt`: return Number(o) > Number(a);
24
- case `gte`: return Number(o) >= Number(a);
25
- case `lt`: return Number(o) < Number(a);
26
- case `lte`: return Number(o) <= Number(a);
27
- case `empty`: return o == null || (Array.isArray(o) ? o.length === 0 : String(o).length === 0);
28
- case `lengthGt`: return (Array.isArray(o) || typeof o == `string`) && o.length > Number(a ?? 0);
29
- case `lengthGte`: return (Array.isArray(o) || typeof o == `string`) && o.length >= Number(a ?? 0);
30
- case `lengthLt`: return (Array.isArray(o) || typeof o == `string`) && o.length < Number(a ?? 0);
31
- case `lengthLte`: return (Array.isArray(o) || typeof o == `string`) && o.length <= Number(a ?? 0);
32
- case `truthy`:
33
- default: return !!o;
34
- }
35
- }
36
- return !0;
37
- }
38
- function i(e, t) {
39
- return e.model.getZod().superRefine((i$1, a) => {
40
- let o = (e$1, t$1) => {
41
- let s = e$1.name ? t$1 ? `${t$1}.${e$1.name}` : e$1.name : t$1 ?? ``;
42
- if (e$1.requiredWhen && r(i$1, e$1.requiredWhen)) {
43
- let e$2 = n(i$1, s);
44
- (e$2 == null || typeof e$2 == `string` && e$2.trim().length === 0 || Array.isArray(e$2) && e$2.length === 0) && a.addIssue({
45
- code: `custom`,
46
- path: s.split(`.`),
47
- message: `required`
48
- });
49
- }
50
- if (e$1.kind === `array`) {
51
- let t$2 = n(i$1, s);
52
- e$1.min != null && Array.isArray(t$2) && t$2.length < e$1.min && a.addIssue({
53
- code: `custom`,
54
- path: s.split(`.`),
55
- message: `min:${e$1.min}`
56
- }), e$1.max != null && Array.isArray(t$2) && t$2.length > e$1.max && a.addIssue({
57
- code: `custom`,
58
- path: s.split(`.`),
59
- message: `max:${e$1.max}`
60
- }), o(e$1.of, s);
61
- } else if (e$1.kind === `group`) for (let t$2 of e$1.fields) o(t$2, s);
62
- };
63
- for (let t$1 of e.fields) o(t$1);
64
- if (e.constraints && t) for (let n$1 of e.constraints) {
65
- let e$1 = t[n$1.key];
66
- if (!e$1) continue;
67
- let r$1 = e$1(i$1, n$1.paths, n$1.args);
68
- r$1.ok || a.addIssue({
69
- code: `custom`,
70
- path: (r$1.path ?? n$1.paths[0] ?? ``).split(`.`).filter(Boolean),
71
- message: r$1.message ?? n$1.messageI18n
72
- });
73
- }
74
- });
75
- }
76
-
77
- //#endregion
78
- export { i, r };
@@ -1,48 +0,0 @@
1
- 'use client';
2
-
3
- import { cn, init_utils } from "../ui-kit-core/dist/utils.js";
4
- import "react";
5
- import { jsx, jsxs } from "react/jsx-runtime";
6
- import { ChevronDownIcon } from "lucide-react";
7
- import * as AccordionPrimitive from "@radix-ui/react-accordion";
8
-
9
- //#region ../ui-kit-web/dist/ui/accordion.js
10
- init_utils();
11
- function Accordion({ ...props }) {
12
- return /* @__PURE__ */ jsx(AccordionPrimitive.Root, {
13
- "data-slot": "accordion",
14
- ...props
15
- });
16
- }
17
- function AccordionItem({ className, ...props }) {
18
- return /* @__PURE__ */ jsx(AccordionPrimitive.Item, {
19
- "data-slot": "accordion-item",
20
- className: cn("border-b last:border-b-0", className),
21
- ...props
22
- });
23
- }
24
- function AccordionTrigger({ className, children, ...props }) {
25
- return /* @__PURE__ */ jsx(AccordionPrimitive.Header, {
26
- className: "flex",
27
- children: /* @__PURE__ */ jsxs(AccordionPrimitive.Trigger, {
28
- "data-slot": "accordion-trigger",
29
- className: cn("focus-visible:border-ring focus-visible:ring-ring/50 flex flex-1 items-start justify-between gap-4 rounded-md py-4 text-left text-sm font-medium outline-hidden transition-all hover:underline focus-visible:ring-[3px] disabled:pointer-events-none disabled:opacity-50 [&[data-state=open]>svg]:rotate-180", className),
30
- ...props,
31
- children: [children, /* @__PURE__ */ jsx(ChevronDownIcon, { className: "text-muted-foreground pointer-events-none size-4 shrink-0 translate-y-0.5 transition-transform duration-200" })]
32
- })
33
- });
34
- }
35
- function AccordionContent({ className, children, ...props }) {
36
- return /* @__PURE__ */ jsx(AccordionPrimitive.Content, {
37
- "data-slot": "accordion-content",
38
- className: "data-[state=closed]:animate-accordion-up data-[state=open]:animate-accordion-down overflow-hidden text-sm",
39
- ...props,
40
- children: /* @__PURE__ */ jsx("div", {
41
- className: cn("pt-0 pb-4", className),
42
- children
43
- })
44
- });
45
- }
46
-
47
- //#endregion
48
- export { Accordion, AccordionContent, AccordionItem, AccordionTrigger };
@@ -1,52 +0,0 @@
1
- import { Label } from "../../label.js";
2
- import { Select, SelectContent, SelectItem, SelectTrigger, SelectValue } from "../../select.js";
3
- import React from "react";
4
- import { jsx, jsxs } from "react/jsx-runtime";
5
-
6
- //#region ../ui-kit-web/dist/ui/atoms/FilterSelect/FilterSelect.js
7
- const FilterSelect = ({ value, options, onChange, placeholder = "Sélectionner...", label, disabled = false, className = "", showCounts = false }) => {
8
- return /* @__PURE__ */ jsxs("div", {
9
- className: `space-y-2 ${className}`,
10
- children: [label && /* @__PURE__ */ jsx(Label, {
11
- className: "text-foreground text-base font-medium",
12
- children: label
13
- }), /* @__PURE__ */ jsxs(Select, {
14
- value,
15
- onValueChange: onChange,
16
- disabled,
17
- children: [/* @__PURE__ */ jsx(SelectTrigger, {
18
- className: "w-full",
19
- children: /* @__PURE__ */ jsx(SelectValue, { placeholder })
20
- }), /* @__PURE__ */ jsxs(SelectContent, {
21
- className: "bg-background",
22
- children: [/* @__PURE__ */ jsxs(SelectItem, {
23
- value: "all",
24
- children: ["Tous", showCounts && /* @__PURE__ */ jsxs("span", {
25
- className: "text-muted-foreground ml-2 text-sm",
26
- children: [
27
- "(",
28
- options.reduce((sum, option) => sum + (option.count || 0), 0),
29
- ")"
30
- ]
31
- })]
32
- }), options.map((option) => /* @__PURE__ */ jsx(SelectItem, {
33
- value: option.value,
34
- children: /* @__PURE__ */ jsxs("div", {
35
- className: "flex w-full items-center justify-between",
36
- children: [/* @__PURE__ */ jsx("span", { children: option.label }), showCounts && option.count !== void 0 && /* @__PURE__ */ jsxs("span", {
37
- className: "text-muted-foreground ml-2 text-sm",
38
- children: [
39
- "(",
40
- option.count,
41
- ")"
42
- ]
43
- })]
44
- })
45
- }, option.value))]
46
- })]
47
- })]
48
- });
49
- };
50
-
51
- //#endregion
52
- export { FilterSelect };
@@ -1,156 +0,0 @@
1
- import { Button } from "../../button.js";
2
- import { Select, SelectContent, SelectItem, SelectTrigger, SelectValue } from "../../select.js";
3
- import React from "react";
4
- import { jsx, jsxs } from "react/jsx-runtime";
5
- import { ChevronLeft, ChevronRight, ChevronsLeft, ChevronsRight } from "lucide-react";
6
-
7
- //#region ../ui-kit-web/dist/ui/atoms/Pagination/Pagination.js
8
- const Pagination = ({ currentPage, totalPages, totalItems, itemsPerPage, onPageChange, onItemsPerPageChange, disabled = false, className = "", showItemsPerPage = true, itemsPerPageOptions = [
9
- 10,
10
- 25,
11
- 50,
12
- 100
13
- ] }) => {
14
- const startItem = (currentPage - 1) * itemsPerPage + 1;
15
- const endItem = Math.min(currentPage * itemsPerPage, totalItems);
16
- const canGoPrevious = currentPage > 1 && !disabled;
17
- const canGoNext = currentPage < totalPages && !disabled;
18
- const getVisiblePageNumbers = () => {
19
- if (totalPages <= 7) return Array.from({ length: totalPages }, (_, i) => i + 1);
20
- if (currentPage <= 3) return [
21
- 1,
22
- 2,
23
- 3,
24
- 4,
25
- 5,
26
- -1,
27
- totalPages
28
- ];
29
- if (currentPage >= totalPages - 2) return [
30
- 1,
31
- -1,
32
- totalPages - 4,
33
- totalPages - 3,
34
- totalPages - 2,
35
- totalPages - 1,
36
- totalPages
37
- ];
38
- return [
39
- 1,
40
- -1,
41
- currentPage - 1,
42
- currentPage,
43
- currentPage + 1,
44
- -1,
45
- totalPages
46
- ];
47
- };
48
- if (totalPages === 0) return null;
49
- return /* @__PURE__ */ jsxs("div", {
50
- className: `flex flex-col items-center justify-between gap-4 sm:flex-row ${className}`,
51
- children: [
52
- /* @__PURE__ */ jsxs("div", {
53
- className: "text-muted-foreground order-2 text-base sm:order-1",
54
- children: [
55
- "Affichage de ",
56
- startItem,
57
- " à ",
58
- endItem,
59
- " sur ",
60
- totalItems,
61
- " résultats"
62
- ]
63
- }),
64
- /* @__PURE__ */ jsxs("div", {
65
- className: "order-1 flex items-center gap-2 sm:order-2",
66
- children: [
67
- /* @__PURE__ */ jsxs(Button, {
68
- variant: "outline",
69
- size: "sm",
70
- onClick: () => onPageChange(1),
71
- disabled: !canGoPrevious,
72
- className: "hidden h-8 w-8 p-0 sm:flex",
73
- children: [/* @__PURE__ */ jsx(ChevronsLeft, { className: "h-4 w-4" }), /* @__PURE__ */ jsx("span", {
74
- className: "sr-only",
75
- children: "Première page"
76
- })]
77
- }),
78
- /* @__PURE__ */ jsxs(Button, {
79
- variant: "outline",
80
- size: "sm",
81
- onClick: () => onPageChange(currentPage - 1),
82
- disabled: !canGoPrevious,
83
- className: "h-8 w-8 p-0",
84
- children: [/* @__PURE__ */ jsx(ChevronLeft, { className: "h-4 w-4" }), /* @__PURE__ */ jsx("span", {
85
- className: "sr-only",
86
- children: "Page précédente"
87
- })]
88
- }),
89
- /* @__PURE__ */ jsx("div", {
90
- className: "flex items-center gap-1",
91
- children: getVisiblePageNumbers().map((page, index) => {
92
- if (page === -1) return /* @__PURE__ */ jsx("span", {
93
- className: "text-muted-foreground px-2 py-1",
94
- children: "..."
95
- }, `ellipsis-${index}`);
96
- return /* @__PURE__ */ jsx(Button, {
97
- variant: page === currentPage ? "default" : "outline",
98
- size: "sm",
99
- onClick: () => onPageChange(page),
100
- disabled,
101
- className: "h-8 min-w-8 px-2",
102
- children: page
103
- }, page);
104
- })
105
- }),
106
- /* @__PURE__ */ jsxs(Button, {
107
- variant: "outline",
108
- size: "sm",
109
- onClick: () => onPageChange(currentPage + 1),
110
- disabled: !canGoNext,
111
- className: "h-8 w-8 p-0",
112
- children: [/* @__PURE__ */ jsx(ChevronRight, { className: "h-4 w-4" }), /* @__PURE__ */ jsx("span", {
113
- className: "sr-only",
114
- children: "Page suivante"
115
- })]
116
- }),
117
- /* @__PURE__ */ jsxs(Button, {
118
- variant: "outline",
119
- size: "sm",
120
- onClick: () => onPageChange(totalPages),
121
- disabled: !canGoNext,
122
- className: "hidden h-8 w-8 p-0 sm:flex",
123
- children: [/* @__PURE__ */ jsx(ChevronsRight, { className: "h-4 w-4" }), /* @__PURE__ */ jsx("span", {
124
- className: "sr-only",
125
- children: "Dernière page"
126
- })]
127
- })
128
- ]
129
- }),
130
- showItemsPerPage && onItemsPerPageChange && /* @__PURE__ */ jsxs("div", {
131
- className: "order-3 flex items-center gap-2 text-base",
132
- children: [/* @__PURE__ */ jsx("span", {
133
- className: "text-muted-foreground",
134
- children: "Afficher:"
135
- }), /* @__PURE__ */ jsxs(Select, {
136
- value: itemsPerPage.toString(),
137
- onValueChange: (value) => onItemsPerPageChange(parseInt(value)),
138
- disabled,
139
- children: [/* @__PURE__ */ jsx(SelectTrigger, {
140
- className: "h-8 w-16",
141
- children: /* @__PURE__ */ jsx(SelectValue, {})
142
- }), /* @__PURE__ */ jsx(SelectContent, {
143
- className: "bg-background",
144
- children: itemsPerPageOptions.map((option) => /* @__PURE__ */ jsx(SelectItem, {
145
- value: option.toString(),
146
- children: option
147
- }, option))
148
- })]
149
- })]
150
- })
151
- ]
152
- });
153
- };
154
-
155
- //#endregion
156
- export { Pagination };
@@ -1,49 +0,0 @@
1
- import { Button } from "../../button.js";
2
- import { Input } from "../../input.js";
3
- import React from "react";
4
- import { jsx, jsxs } from "react/jsx-runtime";
5
- import { Search, X } from "lucide-react";
6
-
7
- //#region ../ui-kit-web/dist/ui/atoms/SearchInput/SearchInput.js
8
- const SearchInput = ({ value, onChange, placeholder = "Rechercher...", onClear, disabled = false, className = "", autoFocus = false }) => {
9
- const handleClear = () => {
10
- onChange("");
11
- onClear?.();
12
- };
13
- return /* @__PURE__ */ jsxs("div", {
14
- className: `relative w-full ${className}`,
15
- children: [
16
- /* @__PURE__ */ jsx("div", {
17
- className: "pointer-events-none absolute inset-y-0 left-0 flex items-center pl-3",
18
- children: /* @__PURE__ */ jsx(Search, { className: "text-muted-foreground h-4 w-4" })
19
- }),
20
- /* @__PURE__ */ jsx(Input, {
21
- type: "text",
22
- value,
23
- onChange: (e) => onChange(e.target.value),
24
- placeholder,
25
- disabled,
26
- autoFocus,
27
- className: "pr-10 pl-10"
28
- }),
29
- value && /* @__PURE__ */ jsx("div", {
30
- className: "absolute inset-y-0 right-0 flex items-center pr-3",
31
- children: /* @__PURE__ */ jsxs(Button, {
32
- type: "button",
33
- variant: "ghost",
34
- size: "sm",
35
- onClick: handleClear,
36
- disabled,
37
- className: "h-6 w-6 p-0 hover:bg-transparent",
38
- children: [/* @__PURE__ */ jsx(X, { className: "text-muted-foreground hover:text-foreground h-4 w-4" }), /* @__PURE__ */ jsx("span", {
39
- className: "sr-only",
40
- children: "Effacer la recherche"
41
- })]
42
- })
43
- })
44
- ]
45
- });
46
- };
47
-
48
- //#endregion
49
- export { SearchInput };
@@ -1,32 +0,0 @@
1
- 'use client';
2
-
3
- import { cn } from "./utils.js";
4
- import "react";
5
- import { jsx } from "react/jsx-runtime";
6
- import * as AvatarPrimitive from "@radix-ui/react-avatar";
7
-
8
- //#region ../ui-kit-web/dist/ui/avatar.js
9
- function Avatar({ className, ...props }) {
10
- return /* @__PURE__ */ jsx(AvatarPrimitive.Root, {
11
- "data-slot": "avatar",
12
- className: cn("relative flex size-8 shrink-0 overflow-hidden rounded-full", className),
13
- ...props
14
- });
15
- }
16
- function AvatarImage({ className, ...props }) {
17
- return /* @__PURE__ */ jsx(AvatarPrimitive.Image, {
18
- "data-slot": "avatar-image",
19
- className: cn("aspect-square size-full", className),
20
- ...props
21
- });
22
- }
23
- function AvatarFallback({ className, ...props }) {
24
- return /* @__PURE__ */ jsx(AvatarPrimitive.Fallback, {
25
- "data-slot": "avatar-fallback",
26
- className: cn("bg-muted flex size-full items-center justify-center rounded-full", className),
27
- ...props
28
- });
29
- }
30
-
31
- //#endregion
32
- export { Avatar, AvatarFallback, AvatarImage };
@@ -1,27 +0,0 @@
1
- import { cn, init_utils } from "../ui-kit-core/dist/utils.js";
2
- import "react";
3
- import { jsx } from "react/jsx-runtime";
4
- import { cva } from "class-variance-authority";
5
- import { Slot } from "@radix-ui/react-slot";
6
-
7
- //#region ../ui-kit-web/dist/ui/badge.js
8
- init_utils();
9
- const badgeVariants = cva("inline-flex items-center justify-center rounded-md border px-2 py-0.5 text-xs font-medium w-fit whitespace-nowrap shrink-0 [&>svg]:size-3 gap-1 [&>svg]:pointer-events-none 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 transition-[color,box-shadow] overflow-hidden", {
10
- variants: { variant: {
11
- default: "border-transparent bg-primary text-primary-foreground [a&]:hover:bg-primary/90",
12
- secondary: "border-transparent bg-secondary text-secondary-foreground [a&]:hover:bg-secondary/90",
13
- destructive: "border-transparent bg-destructive text-white [a&]:hover:bg-destructive/90 focus-visible:ring-destructive/20 dark:focus-visible:ring-destructive/40 dark:bg-destructive/60",
14
- outline: "text-foreground [a&]:hover:bg-accent [a&]:hover:text-accent-foreground"
15
- } },
16
- defaultVariants: { variant: "default" }
17
- });
18
- function Badge({ className, variant, asChild = false, ...props }) {
19
- return /* @__PURE__ */ jsx(asChild ? Slot : "span", {
20
- "data-slot": "badge",
21
- className: cn(badgeVariants({ variant }), className),
22
- ...props
23
- });
24
- }
25
-
26
- //#endregion
27
- export { Badge };
@@ -1,59 +0,0 @@
1
- import { cn, init_utils } from "../ui-kit-core/dist/utils.js";
2
- import "react";
3
- import { jsx, jsxs } from "react/jsx-runtime";
4
- import { Slot } from "@radix-ui/react-slot";
5
- import { ChevronRight, MoreHorizontal } from "lucide-react";
6
-
7
- //#region ../ui-kit-web/dist/ui/breadcrumb.js
8
- init_utils();
9
- function Breadcrumb({ ...props }) {
10
- return /* @__PURE__ */ jsx("nav", {
11
- "aria-label": "breadcrumb",
12
- "data-slot": "breadcrumb",
13
- ...props
14
- });
15
- }
16
- function BreadcrumbList({ className, ...props }) {
17
- return /* @__PURE__ */ jsx("ol", {
18
- "data-slot": "breadcrumb-list",
19
- className: cn("text-muted-foreground flex flex-wrap items-center gap-1.5 text-sm break-words sm:gap-2.5", className),
20
- ...props
21
- });
22
- }
23
- function BreadcrumbItem({ className, ...props }) {
24
- return /* @__PURE__ */ jsx("li", {
25
- "data-slot": "breadcrumb-item",
26
- className: cn("inline-flex items-center gap-1.5", className),
27
- ...props
28
- });
29
- }
30
- function BreadcrumbLink({ asChild, className, ...props }) {
31
- return /* @__PURE__ */ jsx(asChild ? Slot : "a", {
32
- "data-slot": "breadcrumb-link",
33
- className: cn("hover:text-foreground transition-colors", className),
34
- ...props
35
- });
36
- }
37
- function BreadcrumbPage({ className, ...props }) {
38
- return /* @__PURE__ */ jsx("span", {
39
- "data-slot": "breadcrumb-page",
40
- role: "link",
41
- "aria-disabled": "true",
42
- "aria-current": "page",
43
- className: cn("text-foreground font-normal", className),
44
- ...props
45
- });
46
- }
47
- function BreadcrumbSeparator({ children, className, ...props }) {
48
- return /* @__PURE__ */ jsx("li", {
49
- "data-slot": "breadcrumb-separator",
50
- role: "presentation",
51
- "aria-hidden": "true",
52
- className: cn("[&>svg]:size-3.5", className),
53
- ...props,
54
- children: children ?? /* @__PURE__ */ jsx(ChevronRight, {})
55
- });
56
- }
57
-
58
- //#endregion
59
- export { Breadcrumb, BreadcrumbItem, BreadcrumbLink, BreadcrumbList, BreadcrumbPage, BreadcrumbSeparator };
@@ -1,55 +0,0 @@
1
- import { cn, init_utils } from "../ui-kit-core/dist/utils.js";
2
- import * as React$1 from "react";
3
- import { jsx } from "react/jsx-runtime";
4
- import { cva } from "class-variance-authority";
5
- import { Slot } from "@radix-ui/react-slot";
6
-
7
- //#region ../ui-kit-web/dist/ui/button.js
8
- init_utils();
9
- const 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", {
10
- variants: {
11
- variant: {
12
- default: "bg-primary text-primary-foreground hover:bg-primary/90",
13
- destructive: "bg-destructive text-white hover:bg-destructive/90 focus-visible:ring-destructive/20 dark:focus-visible:ring-destructive/40 dark:bg-destructive/60",
14
- 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",
15
- secondary: "bg-secondary text-secondary-foreground hover:bg-secondary/80",
16
- ghost: "hover:bg-accent hover:text-accent-foreground dark:hover:bg-accent/50",
17
- link: "text-primary underline-offset-4 hover:underline"
18
- },
19
- size: {
20
- default: "h-9 px-4 py-2 has-[>svg]:px-3",
21
- sm: "h-8 rounded-md gap-1.5 px-3 has-[>svg]:px-2.5",
22
- lg: "h-10 rounded-md px-6 has-[>svg]:px-4",
23
- icon: "size-9"
24
- }
25
- },
26
- defaultVariants: {
27
- variant: "default",
28
- size: "default"
29
- }
30
- });
31
- const Button = React$1.forwardRef(({ className, variant, size, asChild = false, ...props }, ref) => {
32
- if (asChild) return /* @__PURE__ */ jsx(Slot, {
33
- "data-slot": "button",
34
- className: cn(buttonVariants({
35
- variant,
36
- size,
37
- className
38
- })),
39
- ...props
40
- });
41
- return /* @__PURE__ */ jsx("button", {
42
- ref,
43
- "data-slot": "button",
44
- className: cn(buttonVariants({
45
- variant,
46
- size,
47
- className
48
- })),
49
- ...props
50
- });
51
- });
52
- Button.displayName = "Button";
53
-
54
- //#endregion
55
- export { Button, buttonVariants };
@@ -1,44 +0,0 @@
1
- import { cn, init_utils } from "../ui-kit-core/dist/utils.js";
2
- import "react";
3
- import { jsx } from "react/jsx-runtime";
4
-
5
- //#region ../ui-kit-web/dist/ui/card.js
6
- init_utils();
7
- function Card({ className, ...props }) {
8
- return /* @__PURE__ */ jsx("div", {
9
- "data-slot": "card",
10
- className: cn("bg-card text-card-foreground flex flex-col gap-6 rounded-xl border py-6 shadow-2xs", className),
11
- ...props
12
- });
13
- }
14
- function CardHeader({ className, ...props }) {
15
- return /* @__PURE__ */ jsx("div", {
16
- "data-slot": "card-header",
17
- className: cn("@container/card-header grid auto-rows-min grid-rows-[auto_auto] items-start gap-1.5 px-6 has-data-[slot=card-action]:grid-cols-[1fr_auto] [.border-b]:pb-6", className),
18
- ...props
19
- });
20
- }
21
- function CardTitle({ className, ...props }) {
22
- return /* @__PURE__ */ jsx("div", {
23
- "data-slot": "card-title",
24
- className: cn("leading-none font-semibold", className),
25
- ...props
26
- });
27
- }
28
- function CardDescription({ className, ...props }) {
29
- return /* @__PURE__ */ jsx("div", {
30
- "data-slot": "card-description",
31
- className: cn("text-muted-foreground text-sm", className),
32
- ...props
33
- });
34
- }
35
- function CardContent({ className, ...props }) {
36
- return /* @__PURE__ */ jsx("div", {
37
- "data-slot": "card-content",
38
- className: cn("px-6", className),
39
- ...props
40
- });
41
- }
42
-
43
- //#endregion
44
- export { Card, CardContent, CardDescription, CardHeader, CardTitle };