@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.
- package/README.md +33 -88
- package/dist/browser/ui/accordion.js +4 -4
- package/dist/browser/ui/alert-dialog.js +9 -9
- package/dist/browser/ui/alert.js +4 -4
- package/dist/browser/ui/atoms/FilterSelect/FilterSelect.js +51 -51
- package/dist/browser/ui/atoms/FilterSelect/index.js +51 -51
- package/dist/browser/ui/atoms/LoadingSpinner/LoadingSpinner.js +1 -1
- package/dist/browser/ui/atoms/Pagination/Pagination.js +13 -13
- package/dist/browser/ui/atoms/Pagination/index.js +13 -13
- package/dist/browser/ui/atoms/SearchInput/SearchInput.js +8 -8
- package/dist/browser/ui/atoms/SearchInput/index.js +8 -8
- package/dist/browser/ui/avatar.js +1 -1
- package/dist/browser/ui/badge.js +3 -3
- package/dist/browser/ui/breadcrumb.js +4 -4
- package/dist/browser/ui/button.js +5 -5
- package/dist/browser/ui/calendar.js +21 -21
- package/dist/browser/ui/card.js +2 -2
- package/dist/browser/ui/carousel.js +6 -6
- package/dist/browser/ui/checkbox.js +2 -2
- package/dist/browser/ui/command.js +14 -14
- package/dist/browser/ui/confirm-dialog.js +9 -9
- package/dist/browser/ui/context-menu.js +10 -10
- package/dist/browser/ui/cta.js +5 -5
- package/dist/browser/ui/data-table.js +1009 -0
- package/dist/browser/ui/data-table.parts.js +467 -0
- package/dist/browser/ui/date-picker.js +26 -26
- package/dist/browser/ui/date-range-picker.js +24 -24
- package/dist/browser/ui/datetime-picker.js +29 -29
- package/dist/browser/ui/dialog.js +5 -5
- package/dist/browser/ui/drawer.js +5 -5
- package/dist/browser/ui/dropdown-menu.js +10 -10
- package/dist/browser/ui/empty-state.js +5 -5
- package/dist/browser/ui/empty.js +7 -7
- package/dist/browser/ui/field.js +12 -12
- package/dist/browser/ui/form.js +4 -4
- package/dist/browser/ui/hover-card.js +2 -2
- package/dist/browser/ui/input-group.js +16 -16
- package/dist/browser/ui/input-otp.js +4 -4
- package/dist/browser/ui/input.js +1 -1
- package/dist/browser/ui/label.js +2 -2
- package/dist/browser/ui/loading-button.js +8 -8
- package/dist/browser/ui/marketing/FeatureGrid.js +3 -3
- package/dist/browser/ui/marketing/Hero.js +7 -7
- package/dist/browser/ui/marketing/PricingTable.js +10 -10
- package/dist/browser/ui/menubar.js +12 -12
- package/dist/browser/ui/molecules/Autocomplete/index.js +26 -26
- package/dist/browser/ui/molecules/SearchAndFilter/SearchAndFilter.js +62 -62
- package/dist/browser/ui/molecules/SearchAndFilter/index.js +62 -62
- package/dist/browser/ui/molecules/SkeletonList.js +1 -1
- package/dist/browser/ui/nav-layout.js +22 -22
- package/dist/browser/ui/navigation-menu.js +7 -7
- package/dist/browser/ui/organisms/ErrorBoundary/ErrorBoundary.js +11 -11
- package/dist/browser/ui/organisms/ListPage/ListPage.js +84 -84
- package/dist/browser/ui/page-header.js +4 -4
- package/dist/browser/ui/pagination.js +6 -6
- package/dist/browser/ui/popover.js +2 -2
- package/dist/browser/ui/progress.js +3 -3
- package/dist/browser/ui/radio-group.js +3 -3
- package/dist/browser/ui/resizable.js +3 -3
- package/dist/browser/ui/scroll-area.js +4 -4
- package/dist/browser/ui/section.js +1 -1
- package/dist/browser/ui/select.js +6 -6
- package/dist/browser/ui/separator.js +2 -2
- package/dist/browser/ui/sheet.js +5 -5
- package/dist/browser/ui/sidebar.js +64 -64
- package/dist/browser/ui/skeleton.js +1 -1
- package/dist/browser/ui/slider.js +6 -6
- package/dist/browser/ui/stack.js +1 -1
- package/dist/browser/ui/stat-card-group.js +5 -5
- package/dist/browser/ui/stepper.js +2 -2
- package/dist/browser/ui/switch.js +3 -3
- package/dist/browser/ui/table.js +5 -5
- package/dist/browser/ui/tabs.js +3 -3
- package/dist/browser/ui/text.js +2 -2
- package/dist/browser/ui/textarea.js +1 -1
- package/dist/browser/ui/time-picker.js +10 -10
- package/dist/browser/ui/toast.js +5 -5
- package/dist/browser/ui/toaster.js +5 -5
- package/dist/browser/ui/toggle-group.js +7 -7
- package/dist/browser/ui/toggle.js +5 -5
- package/dist/browser/ui/tooltip.js +3 -3
- package/dist/browser/ui/typography.js +14 -14
- package/dist/browser/ui/usecases/UseCaseCard.js +8 -8
- package/dist/browser/ui/usecases/UserStoryCard.js +3 -3
- package/dist/browser/ui/visualization/Visualization.js +447 -0
- package/dist/browser/ui/visualization/Visualization.support.js +128 -0
- package/dist/browser/ui/visualization/index.js +10 -0
- package/dist/ui/accordion.d.ts +2 -2
- package/dist/ui/accordion.js +4 -4
- package/dist/ui/alert-dialog.d.ts +2 -2
- package/dist/ui/alert-dialog.js +9 -9
- package/dist/ui/alert.d.ts +2 -2
- package/dist/ui/alert.js +4 -4
- package/dist/ui/atoms/FilterSelect/FilterSelect.js +51 -51
- package/dist/ui/atoms/FilterSelect/index.d.ts +1 -1
- package/dist/ui/atoms/FilterSelect/index.js +51 -51
- package/dist/ui/atoms/LoadingSpinner/LoadingSpinner.js +1 -1
- package/dist/ui/atoms/LoadingSpinner/index.d.ts +1 -1
- package/dist/ui/atoms/Pagination/Pagination.js +13 -13
- package/dist/ui/atoms/Pagination/index.js +13 -13
- package/dist/ui/atoms/SearchInput/SearchInput.js +8 -8
- package/dist/ui/atoms/SearchInput/index.js +8 -8
- package/dist/ui/avatar.d.ts +2 -2
- package/dist/ui/avatar.js +1 -1
- package/dist/ui/badge.d.ts +1 -1
- package/dist/ui/badge.js +3 -3
- package/dist/ui/breadcrumb.d.ts +1 -1
- package/dist/ui/breadcrumb.js +4 -4
- package/dist/ui/button.d.ts +1 -1
- package/dist/ui/button.js +5 -5
- package/dist/ui/calendar.js +21 -21
- package/dist/ui/card.d.ts +1 -1
- package/dist/ui/card.js +2 -2
- package/dist/ui/carousel.d.ts +2 -2
- package/dist/ui/carousel.js +6 -6
- package/dist/ui/checkbox.d.ts +1 -1
- package/dist/ui/checkbox.js +2 -2
- package/dist/ui/collapsible.d.ts +1 -1
- package/dist/ui/command.d.ts +2 -2
- package/dist/ui/command.js +14 -14
- package/dist/ui/confirm-dialog.js +9 -9
- package/dist/ui/context-menu.d.ts +2 -2
- package/dist/ui/context-menu.js +10 -10
- package/dist/ui/cta.js +5 -5
- package/dist/ui/data-table.d.ts +12 -0
- package/dist/ui/data-table.js +1004 -0
- package/dist/ui/data-table.parts.d.ts +14 -0
- package/dist/ui/data-table.parts.js +462 -0
- package/dist/ui/date-picker.js +26 -26
- package/dist/ui/date-range-picker.js +24 -24
- package/dist/ui/datetime-picker.js +29 -29
- package/dist/ui/dialog.d.ts +1 -1
- package/dist/ui/dialog.js +5 -5
- package/dist/ui/drawer.d.ts +1 -1
- package/dist/ui/drawer.js +5 -5
- package/dist/ui/dropdown-menu.d.ts +2 -2
- package/dist/ui/dropdown-menu.js +10 -10
- package/dist/ui/empty-state.d.ts +1 -1
- package/dist/ui/empty-state.js +5 -5
- package/dist/ui/empty.d.ts +2 -2
- package/dist/ui/empty.js +7 -7
- package/dist/ui/field.d.ts +2 -2
- package/dist/ui/field.js +12 -12
- package/dist/ui/form.d.ts +3 -3
- package/dist/ui/form.js +4 -4
- package/dist/ui/hover-card.d.ts +2 -2
- package/dist/ui/hover-card.js +2 -2
- package/dist/ui/input-group.d.ts +2 -2
- package/dist/ui/input-group.js +16 -16
- package/dist/ui/input-otp.d.ts +2 -2
- package/dist/ui/input-otp.js +4 -4
- package/dist/ui/input.js +1 -1
- package/dist/ui/label.d.ts +1 -1
- package/dist/ui/label.js +2 -2
- package/dist/ui/loading-button.js +8 -8
- package/dist/ui/map/index.d.ts +1 -1
- package/dist/ui/marketing/FeatureGrid.js +3 -3
- package/dist/ui/marketing/Hero.js +7 -7
- package/dist/ui/marketing/PricingTable.js +10 -10
- package/dist/ui/marketing/index.d.ts +1 -1
- package/dist/ui/menubar.d.ts +2 -2
- package/dist/ui/menubar.js +12 -12
- package/dist/ui/molecules/Autocomplete/index.js +26 -26
- package/dist/ui/molecules/SearchAndFilter/SearchAndFilter.js +62 -62
- package/dist/ui/molecules/SearchAndFilter/index.js +62 -62
- package/dist/ui/molecules/SkeletonList.js +1 -1
- package/dist/ui/nav-layout.d.ts +1 -1
- package/dist/ui/nav-layout.js +22 -22
- package/dist/ui/navigation-menu.d.ts +2 -2
- package/dist/ui/navigation-menu.js +7 -7
- package/dist/ui/organisms/ErrorBoundary/ErrorBoundary.js +11 -11
- package/dist/ui/organisms/ErrorBoundary/index.d.ts +1 -1
- package/dist/ui/organisms/ListPage/ListPage.js +84 -84
- package/dist/ui/organisms/ListPage/index.d.ts +1 -1
- package/dist/ui/organisms/ListPage/types.d.ts +1 -1
- package/dist/ui/page-header.d.ts +1 -1
- package/dist/ui/page-header.js +4 -4
- package/dist/ui/pagination.js +6 -6
- package/dist/ui/popover.d.ts +2 -2
- package/dist/ui/popover.js +2 -2
- package/dist/ui/progress.d.ts +1 -1
- package/dist/ui/progress.js +3 -3
- package/dist/ui/radio-group.d.ts +1 -1
- package/dist/ui/radio-group.js +3 -3
- package/dist/ui/resizable.d.ts +2 -2
- package/dist/ui/resizable.js +3 -3
- package/dist/ui/scroll-area.d.ts +1 -1
- package/dist/ui/scroll-area.js +4 -4
- package/dist/ui/section.d.ts +1 -1
- package/dist/ui/section.js +1 -1
- package/dist/ui/select.d.ts +1 -1
- package/dist/ui/select.js +6 -6
- package/dist/ui/separator.d.ts +1 -1
- package/dist/ui/separator.js +2 -2
- package/dist/ui/sheet.d.ts +2 -2
- package/dist/ui/sheet.js +5 -5
- package/dist/ui/sidebar.d.ts +1 -1
- package/dist/ui/sidebar.js +64 -64
- package/dist/ui/skeleton.js +1 -1
- package/dist/ui/slider.d.ts +1 -1
- package/dist/ui/slider.js +6 -6
- package/dist/ui/stack.d.ts +4 -4
- package/dist/ui/stack.js +1 -1
- package/dist/ui/stat-card-group.js +5 -5
- package/dist/ui/stepper.js +2 -2
- package/dist/ui/switch.d.ts +1 -1
- package/dist/ui/switch.js +3 -3
- package/dist/ui/table.d.ts +1 -1
- package/dist/ui/table.js +5 -5
- package/dist/ui/tabs.d.ts +2 -2
- package/dist/ui/tabs.js +3 -3
- package/dist/ui/text.js +2 -2
- package/dist/ui/textarea.js +1 -1
- package/dist/ui/time-picker.js +10 -10
- package/dist/ui/toast.d.ts +2 -2
- package/dist/ui/toast.js +5 -5
- package/dist/ui/toaster.js +5 -5
- package/dist/ui/toggle-group.d.ts +1 -1
- package/dist/ui/toggle-group.js +7 -7
- package/dist/ui/toggle.d.ts +1 -1
- package/dist/ui/toggle.js +5 -5
- package/dist/ui/tooltip.d.ts +2 -2
- package/dist/ui/tooltip.js +3 -3
- package/dist/ui/typography.js +14 -14
- package/dist/ui/use-toast.d.ts +1 -1
- package/dist/ui/usecases/UseCaseCard.js +8 -8
- package/dist/ui/usecases/UserStoryCard.js +3 -3
- package/dist/ui/visualization/Visualization.d.ts +9 -0
- package/dist/ui/visualization/Visualization.js +442 -0
- package/dist/ui/visualization/Visualization.support.d.ts +15 -0
- package/dist/ui/visualization/Visualization.support.js +123 -0
- package/dist/ui/visualization/index.d.ts +1 -0
- package/dist/ui/visualization/index.js +5 -0
- package/package.json +75 -12
|
@@ -2,23 +2,23 @@
|
|
|
2
2
|
var __require = import.meta.require;
|
|
3
3
|
|
|
4
4
|
// ui/button.tsx
|
|
5
|
+
import { cn } from "@contractspec/lib.ui-kit-core/utils";
|
|
5
6
|
import { Slot } from "@radix-ui/react-slot";
|
|
6
7
|
import { cva } from "class-variance-authority";
|
|
7
|
-
import { cn } from "@contractspec/lib.ui-kit-core/utils";
|
|
8
8
|
import { jsxDEV } from "react/jsx-dev-runtime";
|
|
9
|
-
var buttonVariants = cva("inline-flex items-center justify-center gap-2 whitespace-nowrap rounded-md text-sm
|
|
9
|
+
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", {
|
|
10
10
|
variants: {
|
|
11
11
|
variant: {
|
|
12
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
|
|
14
|
-
outline: "border bg-background shadow-2xs hover:bg-accent hover:text-accent-foreground dark:
|
|
13
|
+
destructive: "bg-destructive text-white hover:bg-destructive/90 focus-visible:ring-destructive/20 dark:bg-destructive/60 dark:focus-visible:ring-destructive/40",
|
|
14
|
+
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",
|
|
15
15
|
secondary: "bg-secondary text-secondary-foreground hover:bg-secondary/80",
|
|
16
16
|
ghost: "hover:bg-accent hover:text-accent-foreground dark:hover:bg-accent/50",
|
|
17
17
|
link: "text-primary underline-offset-4 hover:underline"
|
|
18
18
|
},
|
|
19
19
|
size: {
|
|
20
20
|
default: "h-9 px-4 py-2 has-[>svg]:px-3",
|
|
21
|
-
sm: "h-8
|
|
21
|
+
sm: "h-8 gap-1.5 rounded-md px-3 has-[>svg]:px-2.5",
|
|
22
22
|
lg: "h-10 rounded-md px-6 has-[>svg]:px-4",
|
|
23
23
|
icon: "size-9"
|
|
24
24
|
}
|
|
@@ -50,16 +50,31 @@ function Button({
|
|
|
50
50
|
...props
|
|
51
51
|
}, undefined, false, undefined, this);
|
|
52
52
|
}
|
|
53
|
+
// ui/label.tsx
|
|
54
|
+
import { cn as cn2 } from "@contractspec/lib.ui-kit-core/utils";
|
|
55
|
+
import * as LabelPrimitive from "@radix-ui/react-label";
|
|
56
|
+
import { jsxDEV as jsxDEV2 } from "react/jsx-dev-runtime";
|
|
57
|
+
"use client";
|
|
58
|
+
function Label({
|
|
59
|
+
className,
|
|
60
|
+
...props
|
|
61
|
+
}) {
|
|
62
|
+
return /* @__PURE__ */ jsxDEV2(LabelPrimitive.Root, {
|
|
63
|
+
"data-slot": "label",
|
|
64
|
+
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),
|
|
65
|
+
...props
|
|
66
|
+
}, undefined, false, undefined, this);
|
|
67
|
+
}
|
|
53
68
|
// ui/select.tsx
|
|
69
|
+
import { cn as cn3 } from "@contractspec/lib.ui-kit-core/utils";
|
|
54
70
|
import * as SelectPrimitive from "@radix-ui/react-select";
|
|
55
71
|
import { CheckIcon, ChevronDownIcon, ChevronUpIcon } from "lucide-react";
|
|
56
|
-
import {
|
|
57
|
-
import { jsxDEV as jsxDEV2 } from "react/jsx-dev-runtime";
|
|
72
|
+
import { jsxDEV as jsxDEV3 } from "react/jsx-dev-runtime";
|
|
58
73
|
"use client";
|
|
59
74
|
function Select({
|
|
60
75
|
...props
|
|
61
76
|
}) {
|
|
62
|
-
return /* @__PURE__ */
|
|
77
|
+
return /* @__PURE__ */ jsxDEV3(SelectPrimitive.Root, {
|
|
63
78
|
"data-slot": "select",
|
|
64
79
|
...props
|
|
65
80
|
}, undefined, false, undefined, this);
|
|
@@ -67,7 +82,7 @@ function Select({
|
|
|
67
82
|
function SelectGroup({
|
|
68
83
|
...props
|
|
69
84
|
}) {
|
|
70
|
-
return /* @__PURE__ */
|
|
85
|
+
return /* @__PURE__ */ jsxDEV3(SelectPrimitive.Group, {
|
|
71
86
|
"data-slot": "select-group",
|
|
72
87
|
...props
|
|
73
88
|
}, undefined, false, undefined, this);
|
|
@@ -75,7 +90,7 @@ function SelectGroup({
|
|
|
75
90
|
function SelectValue({
|
|
76
91
|
...props
|
|
77
92
|
}) {
|
|
78
|
-
return /* @__PURE__ */
|
|
93
|
+
return /* @__PURE__ */ jsxDEV3(SelectPrimitive.Value, {
|
|
79
94
|
"data-slot": "select-value",
|
|
80
95
|
...props
|
|
81
96
|
}, undefined, false, undefined, this);
|
|
@@ -86,16 +101,16 @@ function SelectTrigger({
|
|
|
86
101
|
children,
|
|
87
102
|
...props
|
|
88
103
|
}) {
|
|
89
|
-
return /* @__PURE__ */
|
|
104
|
+
return /* @__PURE__ */ jsxDEV3(SelectPrimitive.Trigger, {
|
|
90
105
|
"data-slot": "select-trigger",
|
|
91
106
|
"data-size": size,
|
|
92
|
-
className:
|
|
107
|
+
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),
|
|
93
108
|
...props,
|
|
94
109
|
children: [
|
|
95
110
|
children,
|
|
96
|
-
/* @__PURE__ */
|
|
111
|
+
/* @__PURE__ */ jsxDEV3(SelectPrimitive.Icon, {
|
|
97
112
|
asChild: true,
|
|
98
|
-
children: /* @__PURE__ */
|
|
113
|
+
children: /* @__PURE__ */ jsxDEV3(ChevronDownIcon, {
|
|
99
114
|
className: "size-4 opacity-50"
|
|
100
115
|
}, undefined, false, undefined, this)
|
|
101
116
|
}, undefined, false, undefined, this)
|
|
@@ -108,19 +123,19 @@ function SelectContent({
|
|
|
108
123
|
position = "popper",
|
|
109
124
|
...props
|
|
110
125
|
}) {
|
|
111
|
-
return /* @__PURE__ */
|
|
112
|
-
children: /* @__PURE__ */
|
|
126
|
+
return /* @__PURE__ */ jsxDEV3(SelectPrimitive.Portal, {
|
|
127
|
+
children: /* @__PURE__ */ jsxDEV3(SelectPrimitive.Content, {
|
|
113
128
|
"data-slot": "select-content",
|
|
114
|
-
className:
|
|
129
|
+
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),
|
|
115
130
|
position,
|
|
116
131
|
...props,
|
|
117
132
|
children: [
|
|
118
|
-
/* @__PURE__ */
|
|
119
|
-
/* @__PURE__ */
|
|
120
|
-
className:
|
|
133
|
+
/* @__PURE__ */ jsxDEV3(SelectScrollUpButton, {}, undefined, false, undefined, this),
|
|
134
|
+
/* @__PURE__ */ jsxDEV3(SelectPrimitive.Viewport, {
|
|
135
|
+
className: cn3("p-1", position === "popper" && "h-(--radix-select-trigger-height) w-full min-w-(--radix-select-trigger-width) scroll-my-1"),
|
|
121
136
|
children
|
|
122
137
|
}, undefined, false, undefined, this),
|
|
123
|
-
/* @__PURE__ */
|
|
138
|
+
/* @__PURE__ */ jsxDEV3(SelectScrollDownButton, {}, undefined, false, undefined, this)
|
|
124
139
|
]
|
|
125
140
|
}, undefined, true, undefined, this)
|
|
126
141
|
}, undefined, false, undefined, this);
|
|
@@ -129,9 +144,9 @@ function SelectLabel({
|
|
|
129
144
|
className,
|
|
130
145
|
...props
|
|
131
146
|
}) {
|
|
132
|
-
return /* @__PURE__ */
|
|
147
|
+
return /* @__PURE__ */ jsxDEV3(SelectPrimitive.Label, {
|
|
133
148
|
"data-slot": "select-label",
|
|
134
|
-
className:
|
|
149
|
+
className: cn3("px-2 py-1.5 text-muted-foreground text-xs", className),
|
|
135
150
|
...props
|
|
136
151
|
}, undefined, false, undefined, this);
|
|
137
152
|
}
|
|
@@ -140,20 +155,20 @@ function SelectItem({
|
|
|
140
155
|
children,
|
|
141
156
|
...props
|
|
142
157
|
}) {
|
|
143
|
-
return /* @__PURE__ */
|
|
158
|
+
return /* @__PURE__ */ jsxDEV3(SelectPrimitive.Item, {
|
|
144
159
|
"data-slot": "select-item",
|
|
145
|
-
className:
|
|
160
|
+
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),
|
|
146
161
|
...props,
|
|
147
162
|
children: [
|
|
148
|
-
/* @__PURE__ */
|
|
163
|
+
/* @__PURE__ */ jsxDEV3("span", {
|
|
149
164
|
className: "absolute right-2 flex size-3.5 items-center justify-center",
|
|
150
|
-
children: /* @__PURE__ */
|
|
151
|
-
children: /* @__PURE__ */
|
|
165
|
+
children: /* @__PURE__ */ jsxDEV3(SelectPrimitive.ItemIndicator, {
|
|
166
|
+
children: /* @__PURE__ */ jsxDEV3(CheckIcon, {
|
|
152
167
|
className: "size-4"
|
|
153
168
|
}, undefined, false, undefined, this)
|
|
154
169
|
}, undefined, false, undefined, this)
|
|
155
170
|
}, undefined, false, undefined, this),
|
|
156
|
-
/* @__PURE__ */
|
|
171
|
+
/* @__PURE__ */ jsxDEV3(SelectPrimitive.ItemText, {
|
|
157
172
|
children
|
|
158
173
|
}, undefined, false, undefined, this)
|
|
159
174
|
]
|
|
@@ -163,9 +178,9 @@ function SelectSeparator({
|
|
|
163
178
|
className,
|
|
164
179
|
...props
|
|
165
180
|
}) {
|
|
166
|
-
return /* @__PURE__ */
|
|
181
|
+
return /* @__PURE__ */ jsxDEV3(SelectPrimitive.Separator, {
|
|
167
182
|
"data-slot": "select-separator",
|
|
168
|
-
className:
|
|
183
|
+
className: cn3("pointer-events-none -mx-1 my-1 h-px bg-border", className),
|
|
169
184
|
...props
|
|
170
185
|
}, undefined, false, undefined, this);
|
|
171
186
|
}
|
|
@@ -173,11 +188,11 @@ function SelectScrollUpButton({
|
|
|
173
188
|
className,
|
|
174
189
|
...props
|
|
175
190
|
}) {
|
|
176
|
-
return /* @__PURE__ */
|
|
191
|
+
return /* @__PURE__ */ jsxDEV3(SelectPrimitive.ScrollUpButton, {
|
|
177
192
|
"data-slot": "select-scroll-up-button",
|
|
178
|
-
className:
|
|
193
|
+
className: cn3("flex cursor-default items-center justify-center py-1", className),
|
|
179
194
|
...props,
|
|
180
|
-
children: /* @__PURE__ */
|
|
195
|
+
children: /* @__PURE__ */ jsxDEV3(ChevronUpIcon, {
|
|
181
196
|
className: "size-4"
|
|
182
197
|
}, undefined, false, undefined, this)
|
|
183
198
|
}, undefined, false, undefined, this);
|
|
@@ -186,30 +201,15 @@ function SelectScrollDownButton({
|
|
|
186
201
|
className,
|
|
187
202
|
...props
|
|
188
203
|
}) {
|
|
189
|
-
return /* @__PURE__ */
|
|
204
|
+
return /* @__PURE__ */ jsxDEV3(SelectPrimitive.ScrollDownButton, {
|
|
190
205
|
"data-slot": "select-scroll-down-button",
|
|
191
|
-
className:
|
|
206
|
+
className: cn3("flex cursor-default items-center justify-center py-1", className),
|
|
192
207
|
...props,
|
|
193
|
-
children: /* @__PURE__ */
|
|
208
|
+
children: /* @__PURE__ */ jsxDEV3(ChevronDownIcon, {
|
|
194
209
|
className: "size-4"
|
|
195
210
|
}, undefined, false, undefined, this)
|
|
196
211
|
}, undefined, false, undefined, this);
|
|
197
212
|
}
|
|
198
|
-
// ui/label.tsx
|
|
199
|
-
import * as LabelPrimitive from "@radix-ui/react-label";
|
|
200
|
-
import { cn as cn3 } from "@contractspec/lib.ui-kit-core/utils";
|
|
201
|
-
import { jsxDEV as jsxDEV3 } from "react/jsx-dev-runtime";
|
|
202
|
-
"use client";
|
|
203
|
-
function Label2({
|
|
204
|
-
className,
|
|
205
|
-
...props
|
|
206
|
-
}) {
|
|
207
|
-
return /* @__PURE__ */ jsxDEV3(LabelPrimitive.Root, {
|
|
208
|
-
"data-slot": "label",
|
|
209
|
-
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),
|
|
210
|
-
...props
|
|
211
|
-
}, undefined, false, undefined, this);
|
|
212
|
-
}
|
|
213
213
|
// ui/atoms/FilterSelect/FilterSelect.tsx
|
|
214
214
|
import { jsxDEV as jsxDEV4 } from "react/jsx-dev-runtime";
|
|
215
215
|
var FilterSelect = ({
|
|
@@ -225,8 +225,8 @@ var FilterSelect = ({
|
|
|
225
225
|
return /* @__PURE__ */ jsxDEV4("div", {
|
|
226
226
|
className: `space-y-2 ${className}`,
|
|
227
227
|
children: [
|
|
228
|
-
label && /* @__PURE__ */ jsxDEV4(
|
|
229
|
-
className: "
|
|
228
|
+
label && /* @__PURE__ */ jsxDEV4(Label, {
|
|
229
|
+
className: "font-medium text-base text-foreground",
|
|
230
230
|
children: label
|
|
231
231
|
}, undefined, false, undefined, this),
|
|
232
232
|
/* @__PURE__ */ jsxDEV4(Select, {
|
|
@@ -248,7 +248,7 @@ var FilterSelect = ({
|
|
|
248
248
|
children: [
|
|
249
249
|
"Tous",
|
|
250
250
|
showCounts && /* @__PURE__ */ jsxDEV4("span", {
|
|
251
|
-
className: "text-muted-foreground
|
|
251
|
+
className: "ml-2 text-muted-foreground text-sm",
|
|
252
252
|
children: [
|
|
253
253
|
"(",
|
|
254
254
|
options.reduce((sum, option) => sum + (option.count || 0), 0),
|
|
@@ -266,7 +266,7 @@ var FilterSelect = ({
|
|
|
266
266
|
children: option.label
|
|
267
267
|
}, undefined, false, undefined, this),
|
|
268
268
|
showCounts && option.count !== undefined && /* @__PURE__ */ jsxDEV4("span", {
|
|
269
|
-
className: "text-muted-foreground
|
|
269
|
+
className: "ml-2 text-muted-foreground text-sm",
|
|
270
270
|
children: [
|
|
271
271
|
"(",
|
|
272
272
|
option.count,
|
|
@@ -290,7 +290,7 @@ function Input({ className, type, ...props }) {
|
|
|
290
290
|
return /* @__PURE__ */ jsxDEV5("input", {
|
|
291
291
|
type,
|
|
292
292
|
"data-slot": "input",
|
|
293
|
-
className: cn4("
|
|
293
|
+
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),
|
|
294
294
|
...props
|
|
295
295
|
}, undefined, false, undefined, this);
|
|
296
296
|
}
|
|
@@ -316,7 +316,7 @@ var SearchInput = ({
|
|
|
316
316
|
/* @__PURE__ */ jsxDEV6("div", {
|
|
317
317
|
className: "pointer-events-none absolute inset-y-0 left-0 flex items-center pl-3",
|
|
318
318
|
children: /* @__PURE__ */ jsxDEV6(Search, {
|
|
319
|
-
className: "
|
|
319
|
+
className: "h-4 w-4 text-muted-foreground"
|
|
320
320
|
}, undefined, false, undefined, this)
|
|
321
321
|
}, undefined, false, undefined, this),
|
|
322
322
|
/* @__PURE__ */ jsxDEV6(Input, {
|
|
@@ -339,7 +339,7 @@ var SearchInput = ({
|
|
|
339
339
|
className: "h-6 w-6 p-0 hover:bg-transparent",
|
|
340
340
|
children: [
|
|
341
341
|
/* @__PURE__ */ jsxDEV6(X, {
|
|
342
|
-
className: "text-muted-foreground hover:text-foreground
|
|
342
|
+
className: "h-4 w-4 text-muted-foreground hover:text-foreground"
|
|
343
343
|
}, undefined, false, undefined, this),
|
|
344
344
|
/* @__PURE__ */ jsxDEV6("span", {
|
|
345
345
|
className: "sr-only",
|
|
@@ -380,8 +380,8 @@ function CollapsibleContent2({
|
|
|
380
380
|
}, undefined, false, undefined, this);
|
|
381
381
|
}
|
|
382
382
|
// ui/molecules/SearchAndFilter/SearchAndFilter.tsx
|
|
383
|
-
import { useState } from "react";
|
|
384
383
|
import { ChevronDown, ChevronUp, Filter } from "lucide-react";
|
|
384
|
+
import { useState } from "react";
|
|
385
385
|
import { jsxDEV as jsxDEV8 } from "react/jsx-dev-runtime";
|
|
386
386
|
var SearchAndFilter = ({
|
|
387
387
|
searchValue,
|
|
@@ -444,7 +444,7 @@ var SearchAndFilter = ({
|
|
|
444
444
|
}, undefined, false, undefined, this),
|
|
445
445
|
"Filtres",
|
|
446
446
|
activeFiltersCount > 0 && /* @__PURE__ */ jsxDEV8("span", {
|
|
447
|
-
className: "
|
|
447
|
+
className: "ml-2 flex h-5 w-5 items-center justify-center rounded-full bg-primary text-primary-foreground text-sm",
|
|
448
448
|
children: activeFiltersCount
|
|
449
449
|
}, undefined, false, undefined, this),
|
|
450
450
|
isCollapsed ? /* @__PURE__ */ jsxDEV8(ChevronDown, {
|
|
@@ -471,7 +471,7 @@ var SearchAndFilter = ({
|
|
|
471
471
|
className: "flex flex-wrap items-center gap-2",
|
|
472
472
|
children: [
|
|
473
473
|
/* @__PURE__ */ jsxDEV8("span", {
|
|
474
|
-
className: "text-muted-foreground
|
|
474
|
+
className: "text-base text-muted-foreground",
|
|
475
475
|
children: "Filtres actifs:"
|
|
476
476
|
}, undefined, false, undefined, this),
|
|
477
477
|
filters.filter((f) => f.value).map((filter) => {
|
|
@@ -2,23 +2,23 @@
|
|
|
2
2
|
var __require = import.meta.require;
|
|
3
3
|
|
|
4
4
|
// ui/button.tsx
|
|
5
|
+
import { cn } from "@contractspec/lib.ui-kit-core/utils";
|
|
5
6
|
import { Slot } from "@radix-ui/react-slot";
|
|
6
7
|
import { cva } from "class-variance-authority";
|
|
7
|
-
import { cn } from "@contractspec/lib.ui-kit-core/utils";
|
|
8
8
|
import { jsxDEV } from "react/jsx-dev-runtime";
|
|
9
|
-
var buttonVariants = cva("inline-flex items-center justify-center gap-2 whitespace-nowrap rounded-md text-sm
|
|
9
|
+
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", {
|
|
10
10
|
variants: {
|
|
11
11
|
variant: {
|
|
12
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
|
|
14
|
-
outline: "border bg-background shadow-2xs hover:bg-accent hover:text-accent-foreground dark:
|
|
13
|
+
destructive: "bg-destructive text-white hover:bg-destructive/90 focus-visible:ring-destructive/20 dark:bg-destructive/60 dark:focus-visible:ring-destructive/40",
|
|
14
|
+
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",
|
|
15
15
|
secondary: "bg-secondary text-secondary-foreground hover:bg-secondary/80",
|
|
16
16
|
ghost: "hover:bg-accent hover:text-accent-foreground dark:hover:bg-accent/50",
|
|
17
17
|
link: "text-primary underline-offset-4 hover:underline"
|
|
18
18
|
},
|
|
19
19
|
size: {
|
|
20
20
|
default: "h-9 px-4 py-2 has-[>svg]:px-3",
|
|
21
|
-
sm: "h-8
|
|
21
|
+
sm: "h-8 gap-1.5 rounded-md px-3 has-[>svg]:px-2.5",
|
|
22
22
|
lg: "h-10 rounded-md px-6 has-[>svg]:px-4",
|
|
23
23
|
icon: "size-9"
|
|
24
24
|
}
|
|
@@ -50,16 +50,31 @@ function Button({
|
|
|
50
50
|
...props
|
|
51
51
|
}, undefined, false, undefined, this);
|
|
52
52
|
}
|
|
53
|
+
// ui/label.tsx
|
|
54
|
+
import { cn as cn2 } from "@contractspec/lib.ui-kit-core/utils";
|
|
55
|
+
import * as LabelPrimitive from "@radix-ui/react-label";
|
|
56
|
+
import { jsxDEV as jsxDEV2 } from "react/jsx-dev-runtime";
|
|
57
|
+
"use client";
|
|
58
|
+
function Label({
|
|
59
|
+
className,
|
|
60
|
+
...props
|
|
61
|
+
}) {
|
|
62
|
+
return /* @__PURE__ */ jsxDEV2(LabelPrimitive.Root, {
|
|
63
|
+
"data-slot": "label",
|
|
64
|
+
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),
|
|
65
|
+
...props
|
|
66
|
+
}, undefined, false, undefined, this);
|
|
67
|
+
}
|
|
53
68
|
// ui/select.tsx
|
|
69
|
+
import { cn as cn3 } from "@contractspec/lib.ui-kit-core/utils";
|
|
54
70
|
import * as SelectPrimitive from "@radix-ui/react-select";
|
|
55
71
|
import { CheckIcon, ChevronDownIcon, ChevronUpIcon } from "lucide-react";
|
|
56
|
-
import {
|
|
57
|
-
import { jsxDEV as jsxDEV2 } from "react/jsx-dev-runtime";
|
|
72
|
+
import { jsxDEV as jsxDEV3 } from "react/jsx-dev-runtime";
|
|
58
73
|
"use client";
|
|
59
74
|
function Select({
|
|
60
75
|
...props
|
|
61
76
|
}) {
|
|
62
|
-
return /* @__PURE__ */
|
|
77
|
+
return /* @__PURE__ */ jsxDEV3(SelectPrimitive.Root, {
|
|
63
78
|
"data-slot": "select",
|
|
64
79
|
...props
|
|
65
80
|
}, undefined, false, undefined, this);
|
|
@@ -67,7 +82,7 @@ function Select({
|
|
|
67
82
|
function SelectGroup({
|
|
68
83
|
...props
|
|
69
84
|
}) {
|
|
70
|
-
return /* @__PURE__ */
|
|
85
|
+
return /* @__PURE__ */ jsxDEV3(SelectPrimitive.Group, {
|
|
71
86
|
"data-slot": "select-group",
|
|
72
87
|
...props
|
|
73
88
|
}, undefined, false, undefined, this);
|
|
@@ -75,7 +90,7 @@ function SelectGroup({
|
|
|
75
90
|
function SelectValue({
|
|
76
91
|
...props
|
|
77
92
|
}) {
|
|
78
|
-
return /* @__PURE__ */
|
|
93
|
+
return /* @__PURE__ */ jsxDEV3(SelectPrimitive.Value, {
|
|
79
94
|
"data-slot": "select-value",
|
|
80
95
|
...props
|
|
81
96
|
}, undefined, false, undefined, this);
|
|
@@ -86,16 +101,16 @@ function SelectTrigger({
|
|
|
86
101
|
children,
|
|
87
102
|
...props
|
|
88
103
|
}) {
|
|
89
|
-
return /* @__PURE__ */
|
|
104
|
+
return /* @__PURE__ */ jsxDEV3(SelectPrimitive.Trigger, {
|
|
90
105
|
"data-slot": "select-trigger",
|
|
91
106
|
"data-size": size,
|
|
92
|
-
className:
|
|
107
|
+
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),
|
|
93
108
|
...props,
|
|
94
109
|
children: [
|
|
95
110
|
children,
|
|
96
|
-
/* @__PURE__ */
|
|
111
|
+
/* @__PURE__ */ jsxDEV3(SelectPrimitive.Icon, {
|
|
97
112
|
asChild: true,
|
|
98
|
-
children: /* @__PURE__ */
|
|
113
|
+
children: /* @__PURE__ */ jsxDEV3(ChevronDownIcon, {
|
|
99
114
|
className: "size-4 opacity-50"
|
|
100
115
|
}, undefined, false, undefined, this)
|
|
101
116
|
}, undefined, false, undefined, this)
|
|
@@ -108,19 +123,19 @@ function SelectContent({
|
|
|
108
123
|
position = "popper",
|
|
109
124
|
...props
|
|
110
125
|
}) {
|
|
111
|
-
return /* @__PURE__ */
|
|
112
|
-
children: /* @__PURE__ */
|
|
126
|
+
return /* @__PURE__ */ jsxDEV3(SelectPrimitive.Portal, {
|
|
127
|
+
children: /* @__PURE__ */ jsxDEV3(SelectPrimitive.Content, {
|
|
113
128
|
"data-slot": "select-content",
|
|
114
|
-
className:
|
|
129
|
+
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),
|
|
115
130
|
position,
|
|
116
131
|
...props,
|
|
117
132
|
children: [
|
|
118
|
-
/* @__PURE__ */
|
|
119
|
-
/* @__PURE__ */
|
|
120
|
-
className:
|
|
133
|
+
/* @__PURE__ */ jsxDEV3(SelectScrollUpButton, {}, undefined, false, undefined, this),
|
|
134
|
+
/* @__PURE__ */ jsxDEV3(SelectPrimitive.Viewport, {
|
|
135
|
+
className: cn3("p-1", position === "popper" && "h-(--radix-select-trigger-height) w-full min-w-(--radix-select-trigger-width) scroll-my-1"),
|
|
121
136
|
children
|
|
122
137
|
}, undefined, false, undefined, this),
|
|
123
|
-
/* @__PURE__ */
|
|
138
|
+
/* @__PURE__ */ jsxDEV3(SelectScrollDownButton, {}, undefined, false, undefined, this)
|
|
124
139
|
]
|
|
125
140
|
}, undefined, true, undefined, this)
|
|
126
141
|
}, undefined, false, undefined, this);
|
|
@@ -129,9 +144,9 @@ function SelectLabel({
|
|
|
129
144
|
className,
|
|
130
145
|
...props
|
|
131
146
|
}) {
|
|
132
|
-
return /* @__PURE__ */
|
|
147
|
+
return /* @__PURE__ */ jsxDEV3(SelectPrimitive.Label, {
|
|
133
148
|
"data-slot": "select-label",
|
|
134
|
-
className:
|
|
149
|
+
className: cn3("px-2 py-1.5 text-muted-foreground text-xs", className),
|
|
135
150
|
...props
|
|
136
151
|
}, undefined, false, undefined, this);
|
|
137
152
|
}
|
|
@@ -140,20 +155,20 @@ function SelectItem({
|
|
|
140
155
|
children,
|
|
141
156
|
...props
|
|
142
157
|
}) {
|
|
143
|
-
return /* @__PURE__ */
|
|
158
|
+
return /* @__PURE__ */ jsxDEV3(SelectPrimitive.Item, {
|
|
144
159
|
"data-slot": "select-item",
|
|
145
|
-
className:
|
|
160
|
+
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),
|
|
146
161
|
...props,
|
|
147
162
|
children: [
|
|
148
|
-
/* @__PURE__ */
|
|
163
|
+
/* @__PURE__ */ jsxDEV3("span", {
|
|
149
164
|
className: "absolute right-2 flex size-3.5 items-center justify-center",
|
|
150
|
-
children: /* @__PURE__ */
|
|
151
|
-
children: /* @__PURE__ */
|
|
165
|
+
children: /* @__PURE__ */ jsxDEV3(SelectPrimitive.ItemIndicator, {
|
|
166
|
+
children: /* @__PURE__ */ jsxDEV3(CheckIcon, {
|
|
152
167
|
className: "size-4"
|
|
153
168
|
}, undefined, false, undefined, this)
|
|
154
169
|
}, undefined, false, undefined, this)
|
|
155
170
|
}, undefined, false, undefined, this),
|
|
156
|
-
/* @__PURE__ */
|
|
171
|
+
/* @__PURE__ */ jsxDEV3(SelectPrimitive.ItemText, {
|
|
157
172
|
children
|
|
158
173
|
}, undefined, false, undefined, this)
|
|
159
174
|
]
|
|
@@ -163,9 +178,9 @@ function SelectSeparator({
|
|
|
163
178
|
className,
|
|
164
179
|
...props
|
|
165
180
|
}) {
|
|
166
|
-
return /* @__PURE__ */
|
|
181
|
+
return /* @__PURE__ */ jsxDEV3(SelectPrimitive.Separator, {
|
|
167
182
|
"data-slot": "select-separator",
|
|
168
|
-
className:
|
|
183
|
+
className: cn3("pointer-events-none -mx-1 my-1 h-px bg-border", className),
|
|
169
184
|
...props
|
|
170
185
|
}, undefined, false, undefined, this);
|
|
171
186
|
}
|
|
@@ -173,11 +188,11 @@ function SelectScrollUpButton({
|
|
|
173
188
|
className,
|
|
174
189
|
...props
|
|
175
190
|
}) {
|
|
176
|
-
return /* @__PURE__ */
|
|
191
|
+
return /* @__PURE__ */ jsxDEV3(SelectPrimitive.ScrollUpButton, {
|
|
177
192
|
"data-slot": "select-scroll-up-button",
|
|
178
|
-
className:
|
|
193
|
+
className: cn3("flex cursor-default items-center justify-center py-1", className),
|
|
179
194
|
...props,
|
|
180
|
-
children: /* @__PURE__ */
|
|
195
|
+
children: /* @__PURE__ */ jsxDEV3(ChevronUpIcon, {
|
|
181
196
|
className: "size-4"
|
|
182
197
|
}, undefined, false, undefined, this)
|
|
183
198
|
}, undefined, false, undefined, this);
|
|
@@ -186,30 +201,15 @@ function SelectScrollDownButton({
|
|
|
186
201
|
className,
|
|
187
202
|
...props
|
|
188
203
|
}) {
|
|
189
|
-
return /* @__PURE__ */
|
|
204
|
+
return /* @__PURE__ */ jsxDEV3(SelectPrimitive.ScrollDownButton, {
|
|
190
205
|
"data-slot": "select-scroll-down-button",
|
|
191
|
-
className:
|
|
206
|
+
className: cn3("flex cursor-default items-center justify-center py-1", className),
|
|
192
207
|
...props,
|
|
193
|
-
children: /* @__PURE__ */
|
|
208
|
+
children: /* @__PURE__ */ jsxDEV3(ChevronDownIcon, {
|
|
194
209
|
className: "size-4"
|
|
195
210
|
}, undefined, false, undefined, this)
|
|
196
211
|
}, undefined, false, undefined, this);
|
|
197
212
|
}
|
|
198
|
-
// ui/label.tsx
|
|
199
|
-
import * as LabelPrimitive from "@radix-ui/react-label";
|
|
200
|
-
import { cn as cn3 } from "@contractspec/lib.ui-kit-core/utils";
|
|
201
|
-
import { jsxDEV as jsxDEV3 } from "react/jsx-dev-runtime";
|
|
202
|
-
"use client";
|
|
203
|
-
function Label2({
|
|
204
|
-
className,
|
|
205
|
-
...props
|
|
206
|
-
}) {
|
|
207
|
-
return /* @__PURE__ */ jsxDEV3(LabelPrimitive.Root, {
|
|
208
|
-
"data-slot": "label",
|
|
209
|
-
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),
|
|
210
|
-
...props
|
|
211
|
-
}, undefined, false, undefined, this);
|
|
212
|
-
}
|
|
213
213
|
// ui/atoms/FilterSelect/FilterSelect.tsx
|
|
214
214
|
import { jsxDEV as jsxDEV4 } from "react/jsx-dev-runtime";
|
|
215
215
|
var FilterSelect = ({
|
|
@@ -225,8 +225,8 @@ var FilterSelect = ({
|
|
|
225
225
|
return /* @__PURE__ */ jsxDEV4("div", {
|
|
226
226
|
className: `space-y-2 ${className}`,
|
|
227
227
|
children: [
|
|
228
|
-
label && /* @__PURE__ */ jsxDEV4(
|
|
229
|
-
className: "
|
|
228
|
+
label && /* @__PURE__ */ jsxDEV4(Label, {
|
|
229
|
+
className: "font-medium text-base text-foreground",
|
|
230
230
|
children: label
|
|
231
231
|
}, undefined, false, undefined, this),
|
|
232
232
|
/* @__PURE__ */ jsxDEV4(Select, {
|
|
@@ -248,7 +248,7 @@ var FilterSelect = ({
|
|
|
248
248
|
children: [
|
|
249
249
|
"Tous",
|
|
250
250
|
showCounts && /* @__PURE__ */ jsxDEV4("span", {
|
|
251
|
-
className: "text-muted-foreground
|
|
251
|
+
className: "ml-2 text-muted-foreground text-sm",
|
|
252
252
|
children: [
|
|
253
253
|
"(",
|
|
254
254
|
options.reduce((sum, option) => sum + (option.count || 0), 0),
|
|
@@ -266,7 +266,7 @@ var FilterSelect = ({
|
|
|
266
266
|
children: option.label
|
|
267
267
|
}, undefined, false, undefined, this),
|
|
268
268
|
showCounts && option.count !== undefined && /* @__PURE__ */ jsxDEV4("span", {
|
|
269
|
-
className: "text-muted-foreground
|
|
269
|
+
className: "ml-2 text-muted-foreground text-sm",
|
|
270
270
|
children: [
|
|
271
271
|
"(",
|
|
272
272
|
option.count,
|
|
@@ -290,7 +290,7 @@ function Input({ className, type, ...props }) {
|
|
|
290
290
|
return /* @__PURE__ */ jsxDEV5("input", {
|
|
291
291
|
type,
|
|
292
292
|
"data-slot": "input",
|
|
293
|
-
className: cn4("
|
|
293
|
+
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),
|
|
294
294
|
...props
|
|
295
295
|
}, undefined, false, undefined, this);
|
|
296
296
|
}
|
|
@@ -316,7 +316,7 @@ var SearchInput = ({
|
|
|
316
316
|
/* @__PURE__ */ jsxDEV6("div", {
|
|
317
317
|
className: "pointer-events-none absolute inset-y-0 left-0 flex items-center pl-3",
|
|
318
318
|
children: /* @__PURE__ */ jsxDEV6(Search, {
|
|
319
|
-
className: "
|
|
319
|
+
className: "h-4 w-4 text-muted-foreground"
|
|
320
320
|
}, undefined, false, undefined, this)
|
|
321
321
|
}, undefined, false, undefined, this),
|
|
322
322
|
/* @__PURE__ */ jsxDEV6(Input, {
|
|
@@ -339,7 +339,7 @@ var SearchInput = ({
|
|
|
339
339
|
className: "h-6 w-6 p-0 hover:bg-transparent",
|
|
340
340
|
children: [
|
|
341
341
|
/* @__PURE__ */ jsxDEV6(X, {
|
|
342
|
-
className: "text-muted-foreground hover:text-foreground
|
|
342
|
+
className: "h-4 w-4 text-muted-foreground hover:text-foreground"
|
|
343
343
|
}, undefined, false, undefined, this),
|
|
344
344
|
/* @__PURE__ */ jsxDEV6("span", {
|
|
345
345
|
className: "sr-only",
|
|
@@ -380,8 +380,8 @@ function CollapsibleContent2({
|
|
|
380
380
|
}, undefined, false, undefined, this);
|
|
381
381
|
}
|
|
382
382
|
// ui/molecules/SearchAndFilter/SearchAndFilter.tsx
|
|
383
|
-
import { useState } from "react";
|
|
384
383
|
import { ChevronDown, ChevronUp, Filter } from "lucide-react";
|
|
384
|
+
import { useState } from "react";
|
|
385
385
|
import { jsxDEV as jsxDEV8 } from "react/jsx-dev-runtime";
|
|
386
386
|
var SearchAndFilter = ({
|
|
387
387
|
searchValue,
|
|
@@ -444,7 +444,7 @@ var SearchAndFilter = ({
|
|
|
444
444
|
}, undefined, false, undefined, this),
|
|
445
445
|
"Filtres",
|
|
446
446
|
activeFiltersCount > 0 && /* @__PURE__ */ jsxDEV8("span", {
|
|
447
|
-
className: "
|
|
447
|
+
className: "ml-2 flex h-5 w-5 items-center justify-center rounded-full bg-primary text-primary-foreground text-sm",
|
|
448
448
|
children: activeFiltersCount
|
|
449
449
|
}, undefined, false, undefined, this),
|
|
450
450
|
isCollapsed ? /* @__PURE__ */ jsxDEV8(ChevronDown, {
|
|
@@ -471,7 +471,7 @@ var SearchAndFilter = ({
|
|
|
471
471
|
className: "flex flex-wrap items-center gap-2",
|
|
472
472
|
children: [
|
|
473
473
|
/* @__PURE__ */ jsxDEV8("span", {
|
|
474
|
-
className: "text-muted-foreground
|
|
474
|
+
className: "text-base text-muted-foreground",
|
|
475
475
|
children: "Filtres actifs:"
|
|
476
476
|
}, undefined, false, undefined, this),
|
|
477
477
|
filters.filter((f) => f.value).map((filter) => {
|
|
@@ -16,7 +16,7 @@ function Skeleton({
|
|
|
16
16
|
}) {
|
|
17
17
|
return /* @__PURE__ */ jsxDEV("div", {
|
|
18
18
|
"data-slot": "skeleton",
|
|
19
|
-
className: cn("
|
|
19
|
+
className: cn("animate-pulse rounded-md bg-accent", className),
|
|
20
20
|
...props
|
|
21
21
|
}, undefined, false, undefined, this);
|
|
22
22
|
}
|