@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
|
@@ -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
|
|
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
|
|
19
|
-
outline: "border bg-background shadow-2xs hover:bg-accent hover:text-accent-foreground dark:
|
|
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
|
|
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,14 +56,14 @@ function Button({
|
|
|
56
56
|
}, undefined, false, undefined, this);
|
|
57
57
|
}
|
|
58
58
|
// ui/calendar.tsx
|
|
59
|
-
import
|
|
59
|
+
import { cn as cn2 } from "@contractspec/lib.ui-kit-core/utils";
|
|
60
60
|
import {
|
|
61
61
|
ChevronDownIcon,
|
|
62
62
|
ChevronLeftIcon,
|
|
63
63
|
ChevronRightIcon
|
|
64
64
|
} from "lucide-react";
|
|
65
|
+
import * as React from "react";
|
|
65
66
|
import { DayPicker, getDefaultClassNames } from "react-day-picker";
|
|
66
|
-
import { cn as cn2 } from "@contractspec/lib.ui-kit-core/utils";
|
|
67
67
|
import { jsxDEV as jsxDEV2 } from "react/jsx-dev-runtime";
|
|
68
68
|
"use client";
|
|
69
69
|
function Calendar({
|
|
@@ -79,7 +79,7 @@ function Calendar({
|
|
|
79
79
|
const defaultClassNames = getDefaultClassNames();
|
|
80
80
|
return /* @__PURE__ */ jsxDEV2(DayPicker, {
|
|
81
81
|
showOutsideDays,
|
|
82
|
-
className: cn2("group/calendar bg-background
|
|
82
|
+
className: cn2("group/calendar bg-background in-data-[slot=card-content]:bg-transparent in-data-[slot=popover-content]:bg-transparent p-3 [--cell-size:--spacing(8)]", String.raw`rtl:**:[.rdp-button\_next>svg]:rotate-180`, String.raw`rtl:**:[.rdp-button\_previous>svg]:rotate-180`, className),
|
|
83
83
|
captionLayout,
|
|
84
84
|
formatters: {
|
|
85
85
|
formatMonthDropdown: (date) => date.toLocaleString("default", { month: "short" }),
|
|
@@ -90,24 +90,24 @@ function Calendar({
|
|
|
90
90
|
months: cn2("relative flex flex-col gap-4 md:flex-row", defaultClassNames.months),
|
|
91
91
|
month: cn2("flex w-full flex-col gap-4", defaultClassNames.month),
|
|
92
92
|
nav: cn2("absolute inset-x-0 top-0 flex w-full items-center justify-between gap-1", defaultClassNames.nav),
|
|
93
|
-
button_previous: cn2(buttonVariants({ variant: buttonVariant }), "size-(--cell-size) p-0
|
|
94
|
-
button_next: cn2(buttonVariants({ variant: buttonVariant }), "size-(--cell-size) p-0
|
|
93
|
+
button_previous: cn2(buttonVariants({ variant: buttonVariant }), "size-(--cell-size) select-none p-0 aria-disabled:opacity-50", defaultClassNames.button_previous),
|
|
94
|
+
button_next: cn2(buttonVariants({ variant: buttonVariant }), "size-(--cell-size) select-none p-0 aria-disabled:opacity-50", defaultClassNames.button_next),
|
|
95
95
|
month_caption: cn2("flex h-(--cell-size) w-full items-center justify-center px-(--cell-size)", defaultClassNames.month_caption),
|
|
96
|
-
dropdowns: cn2("flex h-(--cell-size) w-full items-center justify-center gap-1.5 text-sm
|
|
97
|
-
dropdown_root: cn2("has-focus:border-ring has-focus:ring-
|
|
98
|
-
dropdown: cn2("
|
|
99
|
-
caption_label: cn2("font-medium
|
|
96
|
+
dropdowns: cn2("flex h-(--cell-size) w-full items-center justify-center gap-1.5 font-medium text-sm", defaultClassNames.dropdowns),
|
|
97
|
+
dropdown_root: cn2("relative rounded-md border border-input shadow-2xs has-focus:border-ring has-focus:ring-[3px] has-focus:ring-ring/50", defaultClassNames.dropdown_root),
|
|
98
|
+
dropdown: cn2("absolute inset-0 bg-popover opacity-0", defaultClassNames.dropdown),
|
|
99
|
+
caption_label: cn2("select-none font-medium", captionLayout === "label" ? "text-sm" : "flex h-8 items-center gap-1 rounded-md pr-1 pl-2 text-sm [&>svg]:size-3.5 [&>svg]:text-muted-foreground", defaultClassNames.caption_label),
|
|
100
100
|
table: "w-full border-collapse",
|
|
101
101
|
weekdays: cn2("flex", defaultClassNames.weekdays),
|
|
102
|
-
weekday: cn2("
|
|
102
|
+
weekday: cn2("flex-1 select-none rounded-md font-normal text-[0.8rem] text-muted-foreground", defaultClassNames.weekday),
|
|
103
103
|
week: cn2("mt-2 flex w-full", defaultClassNames.week),
|
|
104
104
|
week_number_header: cn2("w-(--cell-size) select-none", defaultClassNames.week_number_header),
|
|
105
|
-
week_number: cn2("
|
|
106
|
-
day: cn2("group/day relative aspect-square h-full w-full p-0 text-center
|
|
107
|
-
range_start: cn2("
|
|
105
|
+
week_number: cn2("select-none text-[0.8rem] text-muted-foreground", defaultClassNames.week_number),
|
|
106
|
+
day: cn2("group/day relative aspect-square h-full w-full select-none p-0 text-center [&:first-child[data-selected=true]_button]:rounded-l-md [&:last-child[data-selected=true]_button]:rounded-r-md", defaultClassNames.day),
|
|
107
|
+
range_start: cn2("rounded-l-md bg-accent", defaultClassNames.range_start),
|
|
108
108
|
range_middle: cn2("rounded-none", defaultClassNames.range_middle),
|
|
109
|
-
range_end: cn2("
|
|
110
|
-
today: cn2("bg-accent text-accent-foreground
|
|
109
|
+
range_end: cn2("rounded-r-md bg-accent", defaultClassNames.range_end),
|
|
110
|
+
today: cn2("rounded-md bg-accent text-accent-foreground data-[selected=true]:rounded-none", defaultClassNames.today),
|
|
111
111
|
outside: cn2("text-muted-foreground aria-selected:text-muted-foreground", defaultClassNames.outside),
|
|
112
112
|
disabled: cn2("text-muted-foreground opacity-50", defaultClassNames.disabled),
|
|
113
113
|
hidden: cn2("invisible", defaultClassNames.hidden),
|
|
@@ -176,13 +176,13 @@ function CalendarDayButton({
|
|
|
176
176
|
"data-range-start": modifiers.range_start,
|
|
177
177
|
"data-range-end": modifiers.range_end,
|
|
178
178
|
"data-range-middle": modifiers.range_middle,
|
|
179
|
-
className: cn2("data-[range-end=true]:
|
|
179
|
+
className: cn2("flex aspect-square size-auto w-full min-w-(--cell-size) flex-col gap-1 font-normal leading-none data-[range-end=true]:rounded-md data-[range-middle=true]:rounded-none data-[range-start=true]:rounded-md data-[range-end=true]:rounded-r-md data-[range-start=true]:rounded-l-md data-[range-end=true]:bg-primary data-[range-middle=true]:bg-accent data-[range-start=true]:bg-primary data-[selected-single=true]:bg-primary data-[range-end=true]:text-primary-foreground data-[range-middle=true]:text-accent-foreground data-[range-start=true]:text-primary-foreground data-[selected-single=true]:text-primary-foreground group-data-[focused=true]/day:relative group-data-[focused=true]/day:z-10 group-data-[focused=true]/day:border-ring group-data-[focused=true]/day:ring-[3px] group-data-[focused=true]/day:ring-ring/50 dark:hover:text-accent-foreground [&>span]:text-xs [&>span]:opacity-70", defaultClassNames.day, className),
|
|
180
180
|
...props
|
|
181
181
|
}, undefined, false, undefined, this);
|
|
182
182
|
}
|
|
183
183
|
// ui/popover.tsx
|
|
184
|
-
import * as PopoverPrimitive from "@radix-ui/react-popover";
|
|
185
184
|
import { cn as cn3 } from "@contractspec/lib.ui-kit-core/utils";
|
|
185
|
+
import * as PopoverPrimitive from "@radix-ui/react-popover";
|
|
186
186
|
import { jsxDEV as jsxDEV3 } from "react/jsx-dev-runtime";
|
|
187
187
|
"use client";
|
|
188
188
|
function Popover({
|
|
@@ -212,7 +212,7 @@ function PopoverContent({
|
|
|
212
212
|
"data-slot": "popover-content",
|
|
213
213
|
align,
|
|
214
214
|
sideOffset,
|
|
215
|
-
className: cn3("
|
|
215
|
+
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 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),
|
|
216
216
|
...props
|
|
217
217
|
}, undefined, false, undefined, this)
|
|
218
218
|
}, undefined, false, undefined, this);
|
|
@@ -226,8 +226,8 @@ function PopoverAnchor({
|
|
|
226
226
|
}, undefined, false, undefined, this);
|
|
227
227
|
}
|
|
228
228
|
// ui/date-range-picker.tsx
|
|
229
|
-
import * as React2 from "react";
|
|
230
229
|
import { cn as cn4 } from "@contractspec/lib.ui-kit-core/utils";
|
|
230
|
+
import * as React2 from "react";
|
|
231
231
|
import { jsxDEV as jsxDEV4 } from "react/jsx-dev-runtime";
|
|
232
232
|
"use client";
|
|
233
233
|
function DateRangePicker({
|
|
@@ -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
|
|
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
|
|
19
|
-
outline: "border bg-background shadow-2xs hover:bg-accent hover:text-accent-foreground dark:
|
|
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
|
|
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
|
}
|
|
@@ -62,19 +62,19 @@ function Input({ className, type, ...props }) {
|
|
|
62
62
|
return /* @__PURE__ */ jsxDEV2("input", {
|
|
63
63
|
type,
|
|
64
64
|
"data-slot": "input",
|
|
65
|
-
className: cn2("
|
|
65
|
+
className: cn2("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),
|
|
66
66
|
...props
|
|
67
67
|
}, undefined, false, undefined, this);
|
|
68
68
|
}
|
|
69
69
|
// ui/calendar.tsx
|
|
70
|
-
import
|
|
70
|
+
import { cn as cn3 } from "@contractspec/lib.ui-kit-core/utils";
|
|
71
71
|
import {
|
|
72
72
|
ChevronDownIcon,
|
|
73
73
|
ChevronLeftIcon,
|
|
74
74
|
ChevronRightIcon
|
|
75
75
|
} from "lucide-react";
|
|
76
|
+
import * as React from "react";
|
|
76
77
|
import { DayPicker, getDefaultClassNames } from "react-day-picker";
|
|
77
|
-
import { cn as cn3 } from "@contractspec/lib.ui-kit-core/utils";
|
|
78
78
|
import { jsxDEV as jsxDEV3 } from "react/jsx-dev-runtime";
|
|
79
79
|
"use client";
|
|
80
80
|
function Calendar({
|
|
@@ -90,7 +90,7 @@ function Calendar({
|
|
|
90
90
|
const defaultClassNames = getDefaultClassNames();
|
|
91
91
|
return /* @__PURE__ */ jsxDEV3(DayPicker, {
|
|
92
92
|
showOutsideDays,
|
|
93
|
-
className: cn3("group/calendar bg-background
|
|
93
|
+
className: cn3("group/calendar bg-background in-data-[slot=card-content]:bg-transparent in-data-[slot=popover-content]:bg-transparent p-3 [--cell-size:--spacing(8)]", String.raw`rtl:**:[.rdp-button\_next>svg]:rotate-180`, String.raw`rtl:**:[.rdp-button\_previous>svg]:rotate-180`, className),
|
|
94
94
|
captionLayout,
|
|
95
95
|
formatters: {
|
|
96
96
|
formatMonthDropdown: (date) => date.toLocaleString("default", { month: "short" }),
|
|
@@ -101,24 +101,24 @@ function Calendar({
|
|
|
101
101
|
months: cn3("relative flex flex-col gap-4 md:flex-row", defaultClassNames.months),
|
|
102
102
|
month: cn3("flex w-full flex-col gap-4", defaultClassNames.month),
|
|
103
103
|
nav: cn3("absolute inset-x-0 top-0 flex w-full items-center justify-between gap-1", defaultClassNames.nav),
|
|
104
|
-
button_previous: cn3(buttonVariants({ variant: buttonVariant }), "size-(--cell-size) p-0
|
|
105
|
-
button_next: cn3(buttonVariants({ variant: buttonVariant }), "size-(--cell-size) p-0
|
|
104
|
+
button_previous: cn3(buttonVariants({ variant: buttonVariant }), "size-(--cell-size) select-none p-0 aria-disabled:opacity-50", defaultClassNames.button_previous),
|
|
105
|
+
button_next: cn3(buttonVariants({ variant: buttonVariant }), "size-(--cell-size) select-none p-0 aria-disabled:opacity-50", defaultClassNames.button_next),
|
|
106
106
|
month_caption: cn3("flex h-(--cell-size) w-full items-center justify-center px-(--cell-size)", defaultClassNames.month_caption),
|
|
107
|
-
dropdowns: cn3("flex h-(--cell-size) w-full items-center justify-center gap-1.5 text-sm
|
|
108
|
-
dropdown_root: cn3("has-focus:border-ring has-focus:ring-
|
|
109
|
-
dropdown: cn3("
|
|
110
|
-
caption_label: cn3("font-medium
|
|
107
|
+
dropdowns: cn3("flex h-(--cell-size) w-full items-center justify-center gap-1.5 font-medium text-sm", defaultClassNames.dropdowns),
|
|
108
|
+
dropdown_root: cn3("relative rounded-md border border-input shadow-2xs has-focus:border-ring has-focus:ring-[3px] has-focus:ring-ring/50", defaultClassNames.dropdown_root),
|
|
109
|
+
dropdown: cn3("absolute inset-0 bg-popover opacity-0", defaultClassNames.dropdown),
|
|
110
|
+
caption_label: cn3("select-none font-medium", captionLayout === "label" ? "text-sm" : "flex h-8 items-center gap-1 rounded-md pr-1 pl-2 text-sm [&>svg]:size-3.5 [&>svg]:text-muted-foreground", defaultClassNames.caption_label),
|
|
111
111
|
table: "w-full border-collapse",
|
|
112
112
|
weekdays: cn3("flex", defaultClassNames.weekdays),
|
|
113
|
-
weekday: cn3("
|
|
113
|
+
weekday: cn3("flex-1 select-none rounded-md font-normal text-[0.8rem] text-muted-foreground", defaultClassNames.weekday),
|
|
114
114
|
week: cn3("mt-2 flex w-full", defaultClassNames.week),
|
|
115
115
|
week_number_header: cn3("w-(--cell-size) select-none", defaultClassNames.week_number_header),
|
|
116
|
-
week_number: cn3("
|
|
117
|
-
day: cn3("group/day relative aspect-square h-full w-full p-0 text-center
|
|
118
|
-
range_start: cn3("
|
|
116
|
+
week_number: cn3("select-none text-[0.8rem] text-muted-foreground", defaultClassNames.week_number),
|
|
117
|
+
day: cn3("group/day relative aspect-square h-full w-full select-none p-0 text-center [&:first-child[data-selected=true]_button]:rounded-l-md [&:last-child[data-selected=true]_button]:rounded-r-md", defaultClassNames.day),
|
|
118
|
+
range_start: cn3("rounded-l-md bg-accent", defaultClassNames.range_start),
|
|
119
119
|
range_middle: cn3("rounded-none", defaultClassNames.range_middle),
|
|
120
|
-
range_end: cn3("
|
|
121
|
-
today: cn3("bg-accent text-accent-foreground
|
|
120
|
+
range_end: cn3("rounded-r-md bg-accent", defaultClassNames.range_end),
|
|
121
|
+
today: cn3("rounded-md bg-accent text-accent-foreground data-[selected=true]:rounded-none", defaultClassNames.today),
|
|
122
122
|
outside: cn3("text-muted-foreground aria-selected:text-muted-foreground", defaultClassNames.outside),
|
|
123
123
|
disabled: cn3("text-muted-foreground opacity-50", defaultClassNames.disabled),
|
|
124
124
|
hidden: cn3("invisible", defaultClassNames.hidden),
|
|
@@ -187,13 +187,13 @@ function CalendarDayButton({
|
|
|
187
187
|
"data-range-start": modifiers.range_start,
|
|
188
188
|
"data-range-end": modifiers.range_end,
|
|
189
189
|
"data-range-middle": modifiers.range_middle,
|
|
190
|
-
className: cn3("data-[range-end=true]:
|
|
190
|
+
className: cn3("flex aspect-square size-auto w-full min-w-(--cell-size) flex-col gap-1 font-normal leading-none data-[range-end=true]:rounded-md data-[range-middle=true]:rounded-none data-[range-start=true]:rounded-md data-[range-end=true]:rounded-r-md data-[range-start=true]:rounded-l-md data-[range-end=true]:bg-primary data-[range-middle=true]:bg-accent data-[range-start=true]:bg-primary data-[selected-single=true]:bg-primary data-[range-end=true]:text-primary-foreground data-[range-middle=true]:text-accent-foreground data-[range-start=true]:text-primary-foreground data-[selected-single=true]:text-primary-foreground group-data-[focused=true]/day:relative group-data-[focused=true]/day:z-10 group-data-[focused=true]/day:border-ring group-data-[focused=true]/day:ring-[3px] group-data-[focused=true]/day:ring-ring/50 dark:hover:text-accent-foreground [&>span]:text-xs [&>span]:opacity-70", defaultClassNames.day, className),
|
|
191
191
|
...props
|
|
192
192
|
}, undefined, false, undefined, this);
|
|
193
193
|
}
|
|
194
194
|
// ui/popover.tsx
|
|
195
|
-
import * as PopoverPrimitive from "@radix-ui/react-popover";
|
|
196
195
|
import { cn as cn4 } from "@contractspec/lib.ui-kit-core/utils";
|
|
196
|
+
import * as PopoverPrimitive from "@radix-ui/react-popover";
|
|
197
197
|
import { jsxDEV as jsxDEV4 } from "react/jsx-dev-runtime";
|
|
198
198
|
"use client";
|
|
199
199
|
function Popover({
|
|
@@ -223,7 +223,7 @@ function PopoverContent({
|
|
|
223
223
|
"data-slot": "popover-content",
|
|
224
224
|
align,
|
|
225
225
|
sideOffset,
|
|
226
|
-
className: cn4("
|
|
226
|
+
className: cn4("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),
|
|
227
227
|
...props
|
|
228
228
|
}, undefined, false, undefined, this)
|
|
229
229
|
}, undefined, false, undefined, this);
|
|
@@ -237,9 +237,9 @@ function PopoverAnchor({
|
|
|
237
237
|
}, undefined, false, undefined, this);
|
|
238
238
|
}
|
|
239
239
|
// ui/date-picker.tsx
|
|
240
|
-
import * as React2 from "react";
|
|
241
|
-
import { CalendarIcon } from "lucide-react";
|
|
242
240
|
import { cn as cn5 } from "@contractspec/lib.ui-kit-core/utils";
|
|
241
|
+
import { CalendarIcon } from "lucide-react";
|
|
242
|
+
import * as React2 from "react";
|
|
243
243
|
import { jsxDEV as jsxDEV5 } from "react/jsx-dev-runtime";
|
|
244
244
|
"use client";
|
|
245
245
|
function DatePicker({
|
|
@@ -352,8 +352,8 @@ function DatePicker({
|
|
|
352
352
|
}
|
|
353
353
|
|
|
354
354
|
// ui/time-picker.tsx
|
|
355
|
-
import * as React3 from "react";
|
|
356
355
|
import { cn as cn6 } from "@contractspec/lib.ui-kit-core/utils";
|
|
356
|
+
import * as React3 from "react";
|
|
357
357
|
import { jsxDEV as jsxDEV6 } from "react/jsx-dev-runtime";
|
|
358
358
|
"use client";
|
|
359
359
|
function formatTime(d, is24Hour) {
|
|
@@ -412,7 +412,7 @@ function TimePicker({
|
|
|
412
412
|
max: is24Hour ? 23 : 12,
|
|
413
413
|
value: hours,
|
|
414
414
|
onChange: (e) => setHours(e.target.value),
|
|
415
|
-
className: "
|
|
415
|
+
className: "w-16 rounded-md border border-input bg-background px-2 py-1 text-center"
|
|
416
416
|
}, undefined, false, undefined, this),
|
|
417
417
|
/* @__PURE__ */ jsxDEV6("span", {
|
|
418
418
|
children: ":"
|
|
@@ -423,7 +423,7 @@ function TimePicker({
|
|
|
423
423
|
max: 59,
|
|
424
424
|
value: minutes,
|
|
425
425
|
onChange: (e) => setMinutes(e.target.value),
|
|
426
|
-
className: "
|
|
426
|
+
className: "w-16 rounded-md border border-input bg-background px-2 py-1 text-center"
|
|
427
427
|
}, undefined, false, undefined, this),
|
|
428
428
|
/* @__PURE__ */ jsxDEV6(Button, {
|
|
429
429
|
type: "button",
|
|
@@ -7,9 +7,9 @@ var __require = /* @__PURE__ */ ((x) => typeof require !== "undefined" ? require
|
|
|
7
7
|
});
|
|
8
8
|
|
|
9
9
|
// ui/dialog.tsx
|
|
10
|
+
import { cn } from "@contractspec/lib.ui-kit-core/utils";
|
|
10
11
|
import * as DialogPrimitive from "@radix-ui/react-dialog";
|
|
11
12
|
import { XIcon } 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 Dialog({
|
|
@@ -50,7 +50,7 @@ function DialogOverlay({
|
|
|
50
50
|
}) {
|
|
51
51
|
return /* @__PURE__ */ jsxDEV(DialogPrimitive.Overlay, {
|
|
52
52
|
"data-slot": "dialog-overlay",
|
|
53
|
-
className: cn("data-[state=
|
|
53
|
+
className: cn("data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 fixed inset-0 z-50 bg-black/50 data-[state=closed]:animate-out data-[state=open]:animate-in", className),
|
|
54
54
|
...props
|
|
55
55
|
}, undefined, false, undefined, this);
|
|
56
56
|
}
|
|
@@ -66,13 +66,13 @@ function DialogContent({
|
|
|
66
66
|
/* @__PURE__ */ jsxDEV(DialogOverlay, {}, undefined, false, undefined, this),
|
|
67
67
|
/* @__PURE__ */ jsxDEV(DialogPrimitive.Content, {
|
|
68
68
|
"data-slot": "dialog-content",
|
|
69
|
-
className: cn("
|
|
69
|
+
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 fixed top-[50%] left-[50%] z-50 grid w-full max-w-[calc(100%-2rem)] translate-x-[-50%] translate-y-[-50%] gap-4 rounded-lg border bg-background p-6 shadow-lg duration-200 data-[state=closed]:animate-out data-[state=open]:animate-in sm:max-w-lg", className),
|
|
70
70
|
...props,
|
|
71
71
|
children: [
|
|
72
72
|
children,
|
|
73
73
|
showCloseButton && /* @__PURE__ */ jsxDEV(DialogPrimitive.Close, {
|
|
74
74
|
"data-slot": "dialog-close",
|
|
75
|
-
className: "
|
|
75
|
+
className: "absolute top-4 right-4 rounded-xs opacity-70 ring-offset-background transition-opacity hover:opacity-100 focus:outline-hidden focus:ring-2 focus:ring-ring focus:ring-offset-2 disabled:pointer-events-none data-[state=open]:bg-accent data-[state=open]:text-muted-foreground [&_svg:not([class*='size-'])]:size-4 [&_svg]:pointer-events-none [&_svg]:shrink-0",
|
|
76
76
|
children: [
|
|
77
77
|
/* @__PURE__ */ jsxDEV(XIcon, {}, undefined, false, undefined, this),
|
|
78
78
|
/* @__PURE__ */ jsxDEV("span", {
|
|
@@ -112,7 +112,7 @@ function DialogTitle({
|
|
|
112
112
|
}) {
|
|
113
113
|
return /* @__PURE__ */ jsxDEV(DialogPrimitive.Title, {
|
|
114
114
|
"data-slot": "dialog-title",
|
|
115
|
-
className: cn("text-lg leading-none
|
|
115
|
+
className: cn("font-semibold text-lg leading-none", className),
|
|
116
116
|
...props
|
|
117
117
|
}, undefined, false, undefined, this);
|
|
118
118
|
}
|
|
@@ -7,8 +7,8 @@ var __require = /* @__PURE__ */ ((x) => typeof require !== "undefined" ? require
|
|
|
7
7
|
});
|
|
8
8
|
|
|
9
9
|
// ui/drawer.tsx
|
|
10
|
-
import { Drawer as DrawerPrimitive } from "vaul";
|
|
11
10
|
import { cn } from "@contractspec/lib.ui-kit-core/utils";
|
|
11
|
+
import { Drawer as DrawerPrimitive } from "vaul";
|
|
12
12
|
import { jsxDEV } from "react/jsx-dev-runtime";
|
|
13
13
|
"use client";
|
|
14
14
|
function Drawer({
|
|
@@ -49,7 +49,7 @@ function DrawerOverlay({
|
|
|
49
49
|
}) {
|
|
50
50
|
return /* @__PURE__ */ jsxDEV(DrawerPrimitive.Overlay, {
|
|
51
51
|
"data-slot": "drawer-overlay",
|
|
52
|
-
className: cn("data-[state=
|
|
52
|
+
className: cn("data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 fixed inset-0 z-50 bg-black/50 data-[state=closed]:animate-out data-[state=open]:animate-in", className),
|
|
53
53
|
...props
|
|
54
54
|
}, undefined, false, undefined, this);
|
|
55
55
|
}
|
|
@@ -64,11 +64,11 @@ function DrawerContent({
|
|
|
64
64
|
/* @__PURE__ */ jsxDEV(DrawerOverlay, {}, undefined, false, undefined, this),
|
|
65
65
|
/* @__PURE__ */ jsxDEV(DrawerPrimitive.Content, {
|
|
66
66
|
"data-slot": "drawer-content",
|
|
67
|
-
className: cn("group/drawer-content
|
|
67
|
+
className: cn("group/drawer-content fixed z-50 flex h-auto flex-col bg-background", "data-[vaul-drawer-direction=top]:inset-x-0 data-[vaul-drawer-direction=top]:top-0 data-[vaul-drawer-direction=top]:mb-24 data-[vaul-drawer-direction=top]:max-h-[80vh] data-[vaul-drawer-direction=top]:rounded-b-lg data-[vaul-drawer-direction=top]:border-b", "data-[vaul-drawer-direction=bottom]:inset-x-0 data-[vaul-drawer-direction=bottom]:bottom-0 data-[vaul-drawer-direction=bottom]:mt-24 data-[vaul-drawer-direction=bottom]:max-h-[80vh] data-[vaul-drawer-direction=bottom]:rounded-t-lg data-[vaul-drawer-direction=bottom]:border-t", "data-[vaul-drawer-direction=right]:inset-y-0 data-[vaul-drawer-direction=right]:right-0 data-[vaul-drawer-direction=right]:w-3/4 data-[vaul-drawer-direction=right]:border-l sm:data-[vaul-drawer-direction=right]:max-w-sm", "data-[vaul-drawer-direction=left]:inset-y-0 data-[vaul-drawer-direction=left]:left-0 data-[vaul-drawer-direction=left]:w-3/4 data-[vaul-drawer-direction=left]:border-r sm:data-[vaul-drawer-direction=left]:max-w-sm", className),
|
|
68
68
|
...props,
|
|
69
69
|
children: [
|
|
70
70
|
/* @__PURE__ */ jsxDEV("div", {
|
|
71
|
-
className: "
|
|
71
|
+
className: "mx-auto mt-4 hidden h-2 w-[100px] shrink-0 rounded-full bg-muted group-data-[vaul-drawer-direction=bottom]/drawer-content:block"
|
|
72
72
|
}, undefined, false, undefined, this),
|
|
73
73
|
children
|
|
74
74
|
]
|
|
@@ -102,7 +102,7 @@ function DrawerTitle({
|
|
|
102
102
|
}) {
|
|
103
103
|
return /* @__PURE__ */ jsxDEV(DrawerPrimitive.Title, {
|
|
104
104
|
"data-slot": "drawer-title",
|
|
105
|
-
className: cn("text-foreground
|
|
105
|
+
className: cn("font-semibold text-foreground", className),
|
|
106
106
|
...props
|
|
107
107
|
}, undefined, false, undefined, this);
|
|
108
108
|
}
|
|
@@ -7,9 +7,9 @@ var __require = /* @__PURE__ */ ((x) => typeof require !== "undefined" ? require
|
|
|
7
7
|
});
|
|
8
8
|
|
|
9
9
|
// ui/dropdown-menu.tsx
|
|
10
|
+
import { cn } from "@contractspec/lib.ui-kit-core/utils";
|
|
10
11
|
import * as DropdownMenuPrimitive from "@radix-ui/react-dropdown-menu";
|
|
11
12
|
import { CheckIcon, ChevronRightIcon, 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 DropdownMenu({
|
|
@@ -45,7 +45,7 @@ function DropdownMenuContent({
|
|
|
45
45
|
children: /* @__PURE__ */ jsxDEV(DropdownMenuPrimitive.Content, {
|
|
46
46
|
"data-slot": "dropdown-menu-content",
|
|
47
47
|
sideOffset,
|
|
48
|
-
className: cn("
|
|
48
|
+
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 max-h-(--radix-dropdown-menu-content-available-height) min-w-32 origin-(--radix-dropdown-menu-content-transform-origin) overflow-y-auto overflow-x-hidden rounded-md border bg-popover p-1 text-popover-foreground shadow-md data-[state=closed]:animate-out data-[state=open]:animate-in", className),
|
|
49
49
|
...props
|
|
50
50
|
}, undefined, false, undefined, this)
|
|
51
51
|
}, undefined, false, undefined, this);
|
|
@@ -68,7 +68,7 @@ function DropdownMenuItem({
|
|
|
68
68
|
"data-slot": "dropdown-menu-item",
|
|
69
69
|
"data-inset": inset,
|
|
70
70
|
"data-variant": variant,
|
|
71
|
-
className: cn("
|
|
71
|
+
className: cn("relative flex cursor-default select-none items-center gap-2 rounded-xs px-2 py-1.5 text-sm outline-hidden focus:bg-accent focus:text-accent-foreground data-disabled:pointer-events-none data-inset:pl-8 data-[variant=destructive]:text-destructive data-disabled:opacity-50 data-[variant=destructive]:focus:bg-destructive/10 data-[variant=destructive]:focus:text-destructive dark:data-[variant=destructive]:focus:bg-destructive/20 [&_svg:not([class*='size-'])]:size-4 [&_svg:not([class*='text-'])]:text-muted-foreground [&_svg]:pointer-events-none [&_svg]:shrink-0 data-[variant=destructive]:*:[svg]:text-destructive!", className),
|
|
72
72
|
...props
|
|
73
73
|
}, undefined, false, undefined, this);
|
|
74
74
|
}
|
|
@@ -80,7 +80,7 @@ function DropdownMenuCheckboxItem({
|
|
|
80
80
|
}) {
|
|
81
81
|
return /* @__PURE__ */ jsxDEV(DropdownMenuPrimitive.CheckboxItem, {
|
|
82
82
|
"data-slot": "dropdown-menu-checkbox-item",
|
|
83
|
-
className: cn("
|
|
83
|
+
className: cn("relative flex cursor-default select-none items-center gap-2 rounded-xs py-1.5 pr-2 pl-8 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]:pointer-events-none [&_svg]:shrink-0", className),
|
|
84
84
|
checked,
|
|
85
85
|
...props,
|
|
86
86
|
children: [
|
|
@@ -111,7 +111,7 @@ function DropdownMenuRadioItem({
|
|
|
111
111
|
}) {
|
|
112
112
|
return /* @__PURE__ */ jsxDEV(DropdownMenuPrimitive.RadioItem, {
|
|
113
113
|
"data-slot": "dropdown-menu-radio-item",
|
|
114
|
-
className: cn("
|
|
114
|
+
className: cn("relative flex cursor-default select-none items-center gap-2 rounded-xs py-1.5 pr-2 pl-8 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]:pointer-events-none [&_svg]:shrink-0", className),
|
|
115
115
|
...props,
|
|
116
116
|
children: [
|
|
117
117
|
/* @__PURE__ */ jsxDEV("span", {
|
|
@@ -134,7 +134,7 @@ function DropdownMenuLabel({
|
|
|
134
134
|
return /* @__PURE__ */ jsxDEV(DropdownMenuPrimitive.Label, {
|
|
135
135
|
"data-slot": "dropdown-menu-label",
|
|
136
136
|
"data-inset": inset,
|
|
137
|
-
className: cn("px-2 py-1.5 text-sm
|
|
137
|
+
className: cn("px-2 py-1.5 font-medium text-sm data-inset:pl-8", className),
|
|
138
138
|
...props
|
|
139
139
|
}, undefined, false, undefined, this);
|
|
140
140
|
}
|
|
@@ -144,7 +144,7 @@ function DropdownMenuSeparator({
|
|
|
144
144
|
}) {
|
|
145
145
|
return /* @__PURE__ */ jsxDEV(DropdownMenuPrimitive.Separator, {
|
|
146
146
|
"data-slot": "dropdown-menu-separator",
|
|
147
|
-
className: cn("
|
|
147
|
+
className: cn("-mx-1 my-1 h-px bg-border", className),
|
|
148
148
|
...props
|
|
149
149
|
}, undefined, false, undefined, this);
|
|
150
150
|
}
|
|
@@ -154,7 +154,7 @@ function DropdownMenuShortcut({
|
|
|
154
154
|
}) {
|
|
155
155
|
return /* @__PURE__ */ jsxDEV("span", {
|
|
156
156
|
"data-slot": "dropdown-menu-shortcut",
|
|
157
|
-
className: cn("text-muted-foreground
|
|
157
|
+
className: cn("ml-auto text-muted-foreground text-xs tracking-widest", className),
|
|
158
158
|
...props
|
|
159
159
|
}, undefined, false, undefined, this);
|
|
160
160
|
}
|
|
@@ -175,7 +175,7 @@ function DropdownMenuSubTrigger({
|
|
|
175
175
|
return /* @__PURE__ */ jsxDEV(DropdownMenuPrimitive.SubTrigger, {
|
|
176
176
|
"data-slot": "dropdown-menu-sub-trigger",
|
|
177
177
|
"data-inset": inset,
|
|
178
|
-
className: cn("
|
|
178
|
+
className: cn("flex cursor-default select-none items-center rounded-xs px-2 py-1.5 text-sm outline-hidden focus:bg-accent focus:text-accent-foreground data-[state=open]:bg-accent data-inset:pl-8 data-[state=open]:text-accent-foreground", className),
|
|
179
179
|
...props,
|
|
180
180
|
children: [
|
|
181
181
|
children,
|
|
@@ -191,7 +191,7 @@ function DropdownMenuSubContent({
|
|
|
191
191
|
}) {
|
|
192
192
|
return /* @__PURE__ */ jsxDEV(DropdownMenuPrimitive.SubContent, {
|
|
193
193
|
"data-slot": "dropdown-menu-sub-content",
|
|
194
|
-
className: cn("
|
|
194
|
+
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 min-w-32 origin-(--radix-dropdown-menu-content-transform-origin) overflow-hidden rounded-md border bg-popover p-1 text-popover-foreground shadow-lg data-[state=closed]:animate-out data-[state=open]:animate-in", className),
|
|
195
195
|
...props
|
|
196
196
|
}, undefined, false, undefined, this);
|
|
197
197
|
}
|
|
@@ -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/empty-state.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 containerVariants = cva2("items-center text-center", {
|
|
178
178
|
variants: {
|
|
@@ -198,9 +198,9 @@ function EmptyState({
|
|
|
198
198
|
className: cn2(containerVariants({ density }), className),
|
|
199
199
|
children: [
|
|
200
200
|
icon ? /* @__PURE__ */ jsxDEV2("div", {
|
|
201
|
-
className: "
|
|
201
|
+
className: "flex h-12 w-12 items-center justify-center rounded-full bg-muted",
|
|
202
202
|
children: /* @__PURE__ */ jsxDEV2("div", {
|
|
203
|
-
className: "
|
|
203
|
+
className: "flex items-center justify-center text-muted-foreground",
|
|
204
204
|
children: icon
|
|
205
205
|
}, undefined, false, undefined, this)
|
|
206
206
|
}, undefined, false, undefined, this) : null,
|
|
@@ -211,7 +211,7 @@ function EmptyState({
|
|
|
211
211
|
children: title
|
|
212
212
|
}, undefined, false, undefined, this),
|
|
213
213
|
description ? /* @__PURE__ */ jsxDEV2("p", {
|
|
214
|
-
className: "text-muted-foreground
|
|
214
|
+
className: "text-base text-muted-foreground",
|
|
215
215
|
children: description
|
|
216
216
|
}, undefined, false, undefined, this) : null
|
|
217
217
|
]
|
package/dist/browser/ui/empty.js
CHANGED
|
@@ -7,13 +7,13 @@ var __require = /* @__PURE__ */ ((x) => typeof require !== "undefined" ? require
|
|
|
7
7
|
});
|
|
8
8
|
|
|
9
9
|
// ui/empty.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
|
function Empty({ className, ...props }) {
|
|
14
14
|
return /* @__PURE__ */ jsxDEV("div", {
|
|
15
15
|
"data-slot": "empty",
|
|
16
|
-
className: cn("flex min-w-0 flex-1 flex-col items-center justify-center gap-6 rounded-lg border-dashed p-6 text-center
|
|
16
|
+
className: cn("flex min-w-0 flex-1 flex-col items-center justify-center gap-6 text-balance rounded-lg border-dashed p-6 text-center md:p-12", className),
|
|
17
17
|
...props
|
|
18
18
|
}, undefined, false, undefined, this);
|
|
19
19
|
}
|
|
@@ -27,11 +27,11 @@ function EmptyHeader({
|
|
|
27
27
|
...props
|
|
28
28
|
}, undefined, false, undefined, this);
|
|
29
29
|
}
|
|
30
|
-
var emptyMediaVariants = cva("flex shrink-0 items-center justify-center
|
|
30
|
+
var emptyMediaVariants = cva("mb-2 flex shrink-0 items-center justify-center [&_svg]:pointer-events-none [&_svg]:shrink-0", {
|
|
31
31
|
variants: {
|
|
32
32
|
variant: {
|
|
33
33
|
default: "bg-transparent",
|
|
34
|
-
icon: "
|
|
34
|
+
icon: "flex size-10 shrink-0 items-center justify-center rounded-lg bg-muted text-foreground [&_svg:not([class*='size-'])]:size-6"
|
|
35
35
|
}
|
|
36
36
|
},
|
|
37
37
|
defaultVariants: {
|
|
@@ -56,7 +56,7 @@ function EmptyTitle({
|
|
|
56
56
|
}) {
|
|
57
57
|
return /* @__PURE__ */ jsxDEV("div", {
|
|
58
58
|
"data-slot": "empty-title",
|
|
59
|
-
className: cn("text-lg
|
|
59
|
+
className: cn("font-medium text-lg tracking-tight", className),
|
|
60
60
|
...props
|
|
61
61
|
}, undefined, false, undefined, this);
|
|
62
62
|
}
|
|
@@ -66,7 +66,7 @@ function EmptyDescription({
|
|
|
66
66
|
}) {
|
|
67
67
|
return /* @__PURE__ */ jsxDEV("p", {
|
|
68
68
|
"data-slot": "empty-description",
|
|
69
|
-
className: cn("text-muted-foreground [&>a:hover]:text-primary
|
|
69
|
+
className: cn("text-muted-foreground text-sm/relaxed [&>a:hover]:text-primary [&>a]:underline [&>a]:underline-offset-4", className),
|
|
70
70
|
...props
|
|
71
71
|
}, undefined, false, undefined, this);
|
|
72
72
|
}
|
|
@@ -76,7 +76,7 @@ function EmptyContent({
|
|
|
76
76
|
}) {
|
|
77
77
|
return /* @__PURE__ */ jsxDEV("div", {
|
|
78
78
|
"data-slot": "empty-content",
|
|
79
|
-
className: cn("flex w-full
|
|
79
|
+
className: cn("flex w-full min-w-0 max-w-sm flex-col items-center gap-4 text-balance text-sm", className),
|
|
80
80
|
...props
|
|
81
81
|
}, undefined, false, undefined, this);
|
|
82
82
|
}
|