@prototyperco/ui 0.5.0-alpha.0 → 0.5.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/components/accordion.cjs +154 -0
- package/dist/components/accordion.cjs.map +1 -0
- package/dist/components/accordion.d.cts +14 -0
- package/dist/components/accordion.d.ts +14 -0
- package/dist/components/accordion.js +127 -0
- package/dist/components/accordion.js.map +1 -0
- package/dist/components/alert-dialog.cjs +324 -0
- package/dist/components/alert-dialog.cjs.map +1 -0
- package/dist/components/alert-dialog.d.cts +30 -0
- package/dist/components/alert-dialog.d.ts +30 -0
- package/dist/components/alert-dialog.js +289 -0
- package/dist/components/alert-dialog.js.map +1 -0
- package/dist/components/alert.cjs +105 -0
- package/dist/components/alert.cjs.map +1 -0
- package/dist/components/alert.d.cts +17 -0
- package/dist/components/alert.d.ts +17 -0
- package/dist/components/alert.js +78 -0
- package/dist/components/alert.js.map +1 -0
- package/dist/components/autocomplete.cjs +512 -0
- package/dist/components/autocomplete.cjs.map +1 -0
- package/dist/components/autocomplete.d.cts +31 -0
- package/dist/components/autocomplete.d.ts +31 -0
- package/dist/components/autocomplete.js +472 -0
- package/dist/components/autocomplete.js.map +1 -0
- package/dist/components/avatar.cjs +144 -0
- package/dist/components/avatar.cjs.map +1 -0
- package/dist/components/avatar.d.cts +18 -0
- package/dist/components/avatar.d.ts +18 -0
- package/dist/components/avatar.js +115 -0
- package/dist/components/avatar.js.map +1 -0
- package/dist/components/badge.cjs +81 -0
- package/dist/components/badge.cjs.map +1 -0
- package/dist/components/badge.d.cts +13 -0
- package/dist/components/badge.d.ts +13 -0
- package/dist/components/badge.js +56 -0
- package/dist/components/badge.js.map +1 -0
- package/dist/components/breadcrumb.cjs +142 -0
- package/dist/components/breadcrumb.cjs.map +1 -0
- package/dist/components/breadcrumb.d.cts +20 -0
- package/dist/components/breadcrumb.d.ts +20 -0
- package/dist/components/breadcrumb.js +112 -0
- package/dist/components/breadcrumb.js.map +1 -0
- package/dist/components/button.cjs +145 -0
- package/dist/components/button.cjs.map +1 -0
- package/dist/components/button.d.cts +16 -0
- package/dist/components/button.d.ts +16 -0
- package/dist/components/button.js +120 -0
- package/dist/components/button.js.map +1 -0
- package/dist/components/card.cjs +141 -0
- package/dist/components/card.cjs.map +1 -0
- package/dist/components/card.d.cts +23 -0
- package/dist/components/card.d.ts +23 -0
- package/dist/components/card.js +111 -0
- package/dist/components/card.js.map +1 -0
- package/dist/components/checkbox-group.cjs +56 -0
- package/dist/components/checkbox-group.cjs.map +1 -0
- package/dist/components/checkbox-group.d.cts +8 -0
- package/dist/components/checkbox-group.d.ts +8 -0
- package/dist/components/checkbox-group.js +32 -0
- package/dist/components/checkbox-group.js.map +1 -0
- package/dist/components/checkbox.cjs +152 -0
- package/dist/components/checkbox.cjs.map +1 -0
- package/dist/components/checkbox.d.cts +12 -0
- package/dist/components/checkbox.d.ts +12 -0
- package/dist/components/checkbox.js +126 -0
- package/dist/components/checkbox.js.map +1 -0
- package/dist/components/collapsible.cjs +89 -0
- package/dist/components/collapsible.cjs.map +1 -0
- package/dist/components/collapsible.d.cts +12 -0
- package/dist/components/collapsible.d.ts +12 -0
- package/dist/components/collapsible.js +63 -0
- package/dist/components/collapsible.js.map +1 -0
- package/dist/components/color-picker.cjs +983 -0
- package/dist/components/color-picker.cjs.map +1 -0
- package/dist/components/color-picker.d.cts +41 -0
- package/dist/components/color-picker.d.ts +41 -0
- package/dist/components/color-picker.js +939 -0
- package/dist/components/color-picker.js.map +1 -0
- package/dist/components/columns.cjs +163 -0
- package/dist/components/columns.cjs.map +1 -0
- package/dist/components/columns.d.cts +16 -0
- package/dist/components/columns.d.ts +16 -0
- package/dist/components/columns.js +136 -0
- package/dist/components/columns.js.map +1 -0
- package/dist/components/combobox.cjs +633 -0
- package/dist/components/combobox.cjs.map +1 -0
- package/dist/components/combobox.d.cts +40 -0
- package/dist/components/combobox.d.ts +40 -0
- package/dist/components/combobox.js +576 -0
- package/dist/components/combobox.js.map +1 -0
- package/dist/components/command-palette.cjs +370 -0
- package/dist/components/command-palette.cjs.map +1 -0
- package/dist/components/command-palette.d.cts +42 -0
- package/dist/components/command-palette.d.ts +42 -0
- package/dist/components/command-palette.js +329 -0
- package/dist/components/command-palette.js.map +1 -0
- package/dist/components/container.cjs +80 -0
- package/dist/components/container.cjs.map +1 -0
- package/dist/components/container.d.cts +27 -0
- package/dist/components/container.d.ts +27 -0
- package/dist/components/container.js +54 -0
- package/dist/components/container.js.map +1 -0
- package/dist/components/context-menu.cjs +309 -0
- package/dist/components/context-menu.cjs.map +1 -0
- package/dist/components/context-menu.d.cts +37 -0
- package/dist/components/context-menu.d.ts +37 -0
- package/dist/components/context-menu.js +271 -0
- package/dist/components/context-menu.js.map +1 -0
- package/dist/components/dialog.cjs +319 -0
- package/dist/components/dialog.cjs.map +1 -0
- package/dist/components/dialog.d.cts +32 -0
- package/dist/components/dialog.d.ts +32 -0
- package/dist/components/dialog.js +285 -0
- package/dist/components/dialog.js.map +1 -0
- package/dist/components/drawer.cjs +185 -0
- package/dist/components/drawer.cjs.map +1 -0
- package/dist/components/drawer.d.cts +32 -0
- package/dist/components/drawer.d.ts +32 -0
- package/dist/components/drawer.js +151 -0
- package/dist/components/drawer.js.map +1 -0
- package/dist/components/field.cjs +334 -0
- package/dist/components/field.cjs.map +1 -0
- package/dist/components/field.d.cts +39 -0
- package/dist/components/field.d.ts +39 -0
- package/dist/components/field.js +299 -0
- package/dist/components/field.js.map +1 -0
- package/dist/components/fieldset.cjs +75 -0
- package/dist/components/fieldset.cjs.map +1 -0
- package/dist/components/fieldset.d.cts +12 -0
- package/dist/components/fieldset.d.ts +12 -0
- package/dist/components/fieldset.js +50 -0
- package/dist/components/fieldset.js.map +1 -0
- package/dist/components/form.cjs +52 -0
- package/dist/components/form.cjs.map +1 -0
- package/dist/components/form.d.cts +8 -0
- package/dist/components/form.d.ts +8 -0
- package/dist/components/form.js +28 -0
- package/dist/components/form.js.map +1 -0
- package/dist/components/input-group.cjs +338 -0
- package/dist/components/input-group.cjs.map +1 -0
- package/dist/components/input-group.d.cts +27 -0
- package/dist/components/input-group.d.ts +27 -0
- package/dist/components/input-group.js +307 -0
- package/dist/components/input-group.js.map +1 -0
- package/dist/components/input.cjs +63 -0
- package/dist/components/input.cjs.map +1 -0
- package/dist/components/input.d.cts +8 -0
- package/dist/components/input.d.ts +8 -0
- package/dist/components/input.js +39 -0
- package/dist/components/input.js.map +1 -0
- package/dist/components/label.cjs +54 -0
- package/dist/components/label.cjs.map +1 -0
- package/dist/components/label.d.cts +8 -0
- package/dist/components/label.d.ts +8 -0
- package/dist/components/label.js +28 -0
- package/dist/components/label.js.map +1 -0
- package/dist/components/menu.cjs +305 -0
- package/dist/components/menu.cjs.map +1 -0
- package/dist/components/menu.d.cts +37 -0
- package/dist/components/menu.d.ts +37 -0
- package/dist/components/menu.js +267 -0
- package/dist/components/menu.js.map +1 -0
- package/dist/components/menubar.cjs +503 -0
- package/dist/components/menubar.cjs.map +1 -0
- package/dist/components/menubar.d.cts +37 -0
- package/dist/components/menubar.d.ts +37 -0
- package/dist/components/menubar.js +464 -0
- package/dist/components/menubar.js.map +1 -0
- package/dist/components/meter.cjs +152 -0
- package/dist/components/meter.cjs.map +1 -0
- package/dist/components/meter.d.cts +23 -0
- package/dist/components/meter.d.ts +23 -0
- package/dist/components/meter.js +122 -0
- package/dist/components/meter.js.map +1 -0
- package/dist/components/navigation-menu.cjs +315 -0
- package/dist/components/navigation-menu.cjs.map +1 -0
- package/dist/components/navigation-menu.d.cts +22 -0
- package/dist/components/navigation-menu.d.ts +22 -0
- package/dist/components/navigation-menu.js +283 -0
- package/dist/components/navigation-menu.js.map +1 -0
- package/dist/components/number-field.cjs +217 -0
- package/dist/components/number-field.cjs.map +1 -0
- package/dist/components/number-field.d.cts +23 -0
- package/dist/components/number-field.d.ts +23 -0
- package/dist/components/number-field.js +185 -0
- package/dist/components/number-field.js.map +1 -0
- package/dist/components/popover.cjs +125 -0
- package/dist/components/popover.cjs.map +1 -0
- package/dist/components/popover.d.cts +16 -0
- package/dist/components/popover.d.ts +16 -0
- package/dist/components/popover.js +96 -0
- package/dist/components/popover.js.map +1 -0
- package/dist/components/preview-card.cjs +86 -0
- package/dist/components/preview-card.cjs.map +1 -0
- package/dist/components/preview-card.d.cts +12 -0
- package/dist/components/preview-card.d.ts +12 -0
- package/dist/components/preview-card.js +60 -0
- package/dist/components/preview-card.js.map +1 -0
- package/dist/components/progress.cjs +167 -0
- package/dist/components/progress.cjs.map +1 -0
- package/dist/components/progress.d.cts +23 -0
- package/dist/components/progress.d.ts +23 -0
- package/dist/components/progress.js +137 -0
- package/dist/components/progress.js.map +1 -0
- package/dist/components/radio-group.cjs +98 -0
- package/dist/components/radio-group.cjs.map +1 -0
- package/dist/components/radio-group.d.cts +11 -0
- package/dist/components/radio-group.d.ts +11 -0
- package/dist/components/radio-group.js +73 -0
- package/dist/components/radio-group.js.map +1 -0
- package/dist/components/resizable-panel.cjs +91 -0
- package/dist/components/resizable-panel.cjs.map +1 -0
- package/dist/components/resizable-panel.d.cts +14 -0
- package/dist/components/resizable-panel.d.ts +14 -0
- package/dist/components/resizable-panel.js +69 -0
- package/dist/components/resizable-panel.js.map +1 -0
- package/dist/components/row.cjs +94 -0
- package/dist/components/row.cjs.map +1 -0
- package/dist/components/row.d.cts +27 -0
- package/dist/components/row.d.ts +27 -0
- package/dist/components/row.js +68 -0
- package/dist/components/row.js.map +1 -0
- package/dist/components/scroll-area.cjs +96 -0
- package/dist/components/scroll-area.cjs.map +1 -0
- package/dist/components/scroll-area.d.cts +10 -0
- package/dist/components/scroll-area.d.ts +10 -0
- package/dist/components/scroll-area.js +71 -0
- package/dist/components/scroll-area.js.map +1 -0
- package/dist/components/section.cjs +104 -0
- package/dist/components/section.cjs.map +1 -0
- package/dist/components/section.d.cts +26 -0
- package/dist/components/section.d.ts +26 -0
- package/dist/components/section.js +79 -0
- package/dist/components/section.js.map +1 -0
- package/dist/components/segmented-control.cjs +117 -0
- package/dist/components/segmented-control.cjs.map +1 -0
- package/dist/components/segmented-control.d.cts +16 -0
- package/dist/components/segmented-control.d.ts +16 -0
- package/dist/components/segmented-control.js +91 -0
- package/dist/components/segmented-control.js.map +1 -0
- package/dist/components/select.cjs +273 -0
- package/dist/components/select.cjs.map +1 -0
- package/dist/components/select.d.cts +26 -0
- package/dist/components/select.d.ts +26 -0
- package/dist/components/select.js +239 -0
- package/dist/components/select.js.map +1 -0
- package/dist/components/separator.cjs +60 -0
- package/dist/components/separator.cjs.map +1 -0
- package/dist/components/separator.d.cts +8 -0
- package/dist/components/separator.d.ts +8 -0
- package/dist/components/separator.js +36 -0
- package/dist/components/separator.js.map +1 -0
- package/dist/components/skeleton.cjs +54 -0
- package/dist/components/skeleton.cjs.map +1 -0
- package/dist/components/skeleton.d.cts +8 -0
- package/dist/components/skeleton.d.ts +8 -0
- package/dist/components/skeleton.js +28 -0
- package/dist/components/skeleton.js.map +1 -0
- package/dist/components/slider.cjs +221 -0
- package/dist/components/slider.cjs.map +1 -0
- package/dist/components/slider.d.cts +16 -0
- package/dist/components/slider.d.ts +16 -0
- package/dist/components/slider.js +182 -0
- package/dist/components/slider.js.map +1 -0
- package/dist/components/spinner.cjs +97 -0
- package/dist/components/spinner.cjs.map +1 -0
- package/dist/components/spinner.d.cts +13 -0
- package/dist/components/spinner.d.ts +13 -0
- package/dist/components/spinner.js +72 -0
- package/dist/components/spinner.js.map +1 -0
- package/dist/components/switch.cjs +177 -0
- package/dist/components/switch.cjs.map +1 -0
- package/dist/components/switch.d.cts +22 -0
- package/dist/components/switch.d.ts +22 -0
- package/dist/components/switch.js +139 -0
- package/dist/components/switch.js.map +1 -0
- package/dist/components/tabs.cjs +123 -0
- package/dist/components/tabs.cjs.map +1 -0
- package/dist/components/tabs.d.cts +19 -0
- package/dist/components/tabs.d.ts +19 -0
- package/dist/components/tabs.js +95 -0
- package/dist/components/tabs.js.map +1 -0
- package/dist/components/text-field.cjs +290 -0
- package/dist/components/text-field.cjs.map +1 -0
- package/dist/components/text-field.d.cts +27 -0
- package/dist/components/text-field.d.ts +27 -0
- package/dist/components/text-field.js +262 -0
- package/dist/components/text-field.js.map +1 -0
- package/dist/components/textarea.cjs +60 -0
- package/dist/components/textarea.cjs.map +1 -0
- package/dist/components/textarea.d.cts +8 -0
- package/dist/components/textarea.d.ts +8 -0
- package/dist/components/textarea.js +34 -0
- package/dist/components/textarea.js.map +1 -0
- package/dist/components/toast.cjs +167 -0
- package/dist/components/toast.cjs.map +1 -0
- package/dist/components/toast.d.cts +28 -0
- package/dist/components/toast.d.ts +28 -0
- package/dist/components/toast.js +147 -0
- package/dist/components/toast.js.map +1 -0
- package/dist/components/toggle-group.cjs +171 -0
- package/dist/components/toggle-group.cjs.map +1 -0
- package/dist/components/toggle-group.d.cts +18 -0
- package/dist/components/toggle-group.d.ts +18 -0
- package/dist/components/toggle-group.js +136 -0
- package/dist/components/toggle-group.js.map +1 -0
- package/dist/components/toggle.cjs +92 -0
- package/dist/components/toggle.cjs.map +1 -0
- package/dist/components/toggle.d.cts +14 -0
- package/dist/components/toggle.d.ts +14 -0
- package/dist/components/toggle.js +67 -0
- package/dist/components/toggle.js.map +1 -0
- package/dist/components/toolbar.cjs +160 -0
- package/dist/components/toolbar.cjs.map +1 -0
- package/dist/components/toolbar.d.cts +14 -0
- package/dist/components/toolbar.d.ts +14 -0
- package/dist/components/toolbar.js +131 -0
- package/dist/components/toolbar.js.map +1 -0
- package/dist/components/tooltip.cjs +116 -0
- package/dist/components/tooltip.cjs.map +1 -0
- package/dist/components/tooltip.d.cts +13 -0
- package/dist/components/tooltip.d.ts +13 -0
- package/dist/components/tooltip.js +89 -0
- package/dist/components/tooltip.js.map +1 -0
- package/dist/components/tree-view.cjs +472 -0
- package/dist/components/tree-view.cjs.map +1 -0
- package/dist/components/tree-view.d.cts +33 -0
- package/dist/components/tree-view.d.ts +33 -0
- package/dist/components/tree-view.js +435 -0
- package/dist/components/tree-view.js.map +1 -0
- package/dist/index.cjs +11 -14
- package/dist/index.cjs.map +1 -1
- package/dist/index.d.cts +101 -903
- package/dist/index.d.ts +101 -903
- package/dist/index.js +4 -6
- package/dist/index.js.map +1 -1
- package/dist/lib/color-utils.cjs +315 -0
- package/dist/lib/color-utils.cjs.map +1 -0
- package/dist/lib/color-utils.d.cts +24 -0
- package/dist/lib/color-utils.d.ts +24 -0
- package/dist/lib/color-utils.js +280 -0
- package/dist/lib/color-utils.js.map +1 -0
- package/dist/lib/utils.cjs +35 -0
- package/dist/lib/utils.cjs.map +1 -0
- package/dist/lib/utils.d.cts +5 -0
- package/dist/lib/utils.d.ts +5 -0
- package/dist/lib/utils.js +10 -0
- package/dist/lib/utils.js.map +1 -0
- package/package.json +24 -5
|
@@ -0,0 +1,154 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
"use client";
|
|
3
|
+
var __defProp = Object.defineProperty;
|
|
4
|
+
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
5
|
+
var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
6
|
+
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
7
|
+
var __export = (target, all) => {
|
|
8
|
+
for (var name in all)
|
|
9
|
+
__defProp(target, name, { get: all[name], enumerable: true });
|
|
10
|
+
};
|
|
11
|
+
var __copyProps = (to, from, except, desc) => {
|
|
12
|
+
if (from && typeof from === "object" || typeof from === "function") {
|
|
13
|
+
for (let key of __getOwnPropNames(from))
|
|
14
|
+
if (!__hasOwnProp.call(to, key) && key !== except)
|
|
15
|
+
__defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
|
|
16
|
+
}
|
|
17
|
+
return to;
|
|
18
|
+
};
|
|
19
|
+
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
|
|
20
|
+
|
|
21
|
+
// src/components/accordion.tsx
|
|
22
|
+
var accordion_exports = {};
|
|
23
|
+
__export(accordion_exports, {
|
|
24
|
+
Accordion: () => Accordion,
|
|
25
|
+
AccordionContent: () => AccordionContent,
|
|
26
|
+
AccordionItem: () => AccordionItem,
|
|
27
|
+
AccordionTrigger: () => AccordionTrigger
|
|
28
|
+
});
|
|
29
|
+
module.exports = __toCommonJS(accordion_exports);
|
|
30
|
+
var import_accordion = require("@base-ui/react/accordion");
|
|
31
|
+
var import_lucide_react = require("lucide-react");
|
|
32
|
+
|
|
33
|
+
// src/lib/utils.ts
|
|
34
|
+
var import_clsx = require("clsx");
|
|
35
|
+
var import_tailwind_merge = require("tailwind-merge");
|
|
36
|
+
function cn(...inputs) {
|
|
37
|
+
return (0, import_tailwind_merge.twMerge)((0, import_clsx.clsx)(inputs));
|
|
38
|
+
}
|
|
39
|
+
|
|
40
|
+
// src/components/accordion.tsx
|
|
41
|
+
var import_jsx_runtime = require("react/jsx-runtime");
|
|
42
|
+
function Accordion({ className, ...props }) {
|
|
43
|
+
return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(
|
|
44
|
+
import_accordion.Accordion.Root,
|
|
45
|
+
{
|
|
46
|
+
"data-slot": "accordion",
|
|
47
|
+
className: cn("flex w-full flex-col", className),
|
|
48
|
+
...props
|
|
49
|
+
}
|
|
50
|
+
);
|
|
51
|
+
}
|
|
52
|
+
function AccordionItem({ className, ...props }) {
|
|
53
|
+
return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(
|
|
54
|
+
import_accordion.Accordion.Item,
|
|
55
|
+
{
|
|
56
|
+
"data-slot": "accordion-item",
|
|
57
|
+
className: cn(
|
|
58
|
+
"not-last:border-b not-last:border-border-light",
|
|
59
|
+
className
|
|
60
|
+
),
|
|
61
|
+
...props
|
|
62
|
+
}
|
|
63
|
+
);
|
|
64
|
+
}
|
|
65
|
+
function AccordionTrigger({
|
|
66
|
+
className,
|
|
67
|
+
children,
|
|
68
|
+
...props
|
|
69
|
+
}) {
|
|
70
|
+
return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_accordion.Accordion.Header, { className: "flex", children: /* @__PURE__ */ (0, import_jsx_runtime.jsxs)(
|
|
71
|
+
import_accordion.Accordion.Trigger,
|
|
72
|
+
{
|
|
73
|
+
"data-slot": "accordion-trigger",
|
|
74
|
+
className: cn(
|
|
75
|
+
// Base
|
|
76
|
+
"no-highlight group/accordion-trigger relative flex flex-1 cursor-pointer items-start justify-between",
|
|
77
|
+
"rounded-md py-4 text-left text-sm font-medium outline-none",
|
|
78
|
+
// Transitions
|
|
79
|
+
"transition-[color,background-color,border-color,box-shadow,opacity] duration-150 ease-smooth",
|
|
80
|
+
"motion-reduce:transition-none",
|
|
81
|
+
// Hover & focus
|
|
82
|
+
"hover-only:hover:underline",
|
|
83
|
+
"focus-visible:focus-ring",
|
|
84
|
+
// Press feedback
|
|
85
|
+
"motion-safe:active:scale-[0.98]",
|
|
86
|
+
// Icon positioning
|
|
87
|
+
"**:data-[slot=accordion-trigger-icon]:ml-auto",
|
|
88
|
+
"**:data-[slot=accordion-trigger-icon]:size-4",
|
|
89
|
+
"**:data-[slot=accordion-trigger-icon]:text-muted-foreground",
|
|
90
|
+
// Disabled
|
|
91
|
+
"aria-disabled:status-disabled",
|
|
92
|
+
className
|
|
93
|
+
),
|
|
94
|
+
...props,
|
|
95
|
+
children: [
|
|
96
|
+
children,
|
|
97
|
+
/* @__PURE__ */ (0, import_jsx_runtime.jsx)(
|
|
98
|
+
import_lucide_react.ChevronDownIcon,
|
|
99
|
+
{
|
|
100
|
+
"data-slot": "accordion-trigger-icon",
|
|
101
|
+
className: cn(
|
|
102
|
+
"pointer-events-none shrink-0",
|
|
103
|
+
"transition-transform duration-200 ease-smooth",
|
|
104
|
+
"motion-reduce:transition-none",
|
|
105
|
+
"group-data-[panel-open]/accordion-trigger:rotate-180"
|
|
106
|
+
)
|
|
107
|
+
}
|
|
108
|
+
)
|
|
109
|
+
]
|
|
110
|
+
}
|
|
111
|
+
) });
|
|
112
|
+
}
|
|
113
|
+
function AccordionContent({
|
|
114
|
+
className,
|
|
115
|
+
children,
|
|
116
|
+
...props
|
|
117
|
+
}) {
|
|
118
|
+
return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(
|
|
119
|
+
import_accordion.Accordion.Panel,
|
|
120
|
+
{
|
|
121
|
+
"data-slot": "accordion-content",
|
|
122
|
+
className: cn(
|
|
123
|
+
// Height animation (Base UI provides --accordion-panel-height)
|
|
124
|
+
"h-(--accordion-panel-height) overflow-hidden text-sm",
|
|
125
|
+
"transition-[height] duration-200 ease-smooth",
|
|
126
|
+
"motion-reduce:transition-none",
|
|
127
|
+
// Starting/ending at 0 height
|
|
128
|
+
"data-starting-style:h-0",
|
|
129
|
+
"data-ending-style:h-0"
|
|
130
|
+
),
|
|
131
|
+
...props,
|
|
132
|
+
children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(
|
|
133
|
+
"div",
|
|
134
|
+
{
|
|
135
|
+
className: cn(
|
|
136
|
+
"pt-0 pb-4",
|
|
137
|
+
"[&_a]:underline [&_a]:underline-offset-3 [&_a]:hover-only:hover:text-foreground",
|
|
138
|
+
"[&_p:not(:last-child)]:mb-4",
|
|
139
|
+
className
|
|
140
|
+
),
|
|
141
|
+
children
|
|
142
|
+
}
|
|
143
|
+
)
|
|
144
|
+
}
|
|
145
|
+
);
|
|
146
|
+
}
|
|
147
|
+
// Annotate the CommonJS export names for ESM import in node:
|
|
148
|
+
0 && (module.exports = {
|
|
149
|
+
Accordion,
|
|
150
|
+
AccordionContent,
|
|
151
|
+
AccordionItem,
|
|
152
|
+
AccordionTrigger
|
|
153
|
+
});
|
|
154
|
+
//# sourceMappingURL=accordion.cjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../src/components/accordion.tsx","../../src/lib/utils.ts"],"sourcesContent":["\"use client\";\n\nimport { Accordion as AccordionPrimitive } from \"@base-ui/react/accordion\";\nimport { ChevronDownIcon } from \"lucide-react\";\n\nimport { cn } from \"../lib/utils\";\n\nfunction Accordion({ className, ...props }: AccordionPrimitive.Root.Props) {\n return (\n <AccordionPrimitive.Root\n data-slot=\"accordion\"\n className={cn(\"flex w-full flex-col\", className)}\n {...props}\n />\n );\n}\n\nfunction AccordionItem({ className, ...props }: AccordionPrimitive.Item.Props) {\n return (\n <AccordionPrimitive.Item\n data-slot=\"accordion-item\"\n className={cn(\n \"not-last:border-b not-last:border-border-light\",\n className,\n )}\n {...props}\n />\n );\n}\n\nfunction AccordionTrigger({\n className,\n children,\n ...props\n}: AccordionPrimitive.Trigger.Props) {\n return (\n <AccordionPrimitive.Header className=\"flex\">\n <AccordionPrimitive.Trigger\n data-slot=\"accordion-trigger\"\n className={cn(\n // Base\n \"no-highlight group/accordion-trigger relative flex flex-1 cursor-pointer items-start justify-between\",\n \"rounded-md py-4 text-left text-sm font-medium outline-none\",\n // Transitions\n \"transition-[color,background-color,border-color,box-shadow,opacity] duration-150 ease-smooth\",\n \"motion-reduce:transition-none\",\n // Hover & focus\n \"hover-only:hover:underline\",\n \"focus-visible:focus-ring\",\n // Press feedback\n \"motion-safe:active:scale-[0.98]\",\n // Icon positioning\n \"**:data-[slot=accordion-trigger-icon]:ml-auto\",\n \"**:data-[slot=accordion-trigger-icon]:size-4\",\n \"**:data-[slot=accordion-trigger-icon]:text-muted-foreground\",\n // Disabled\n \"aria-disabled:status-disabled\",\n className,\n )}\n {...props}\n >\n {children}\n <ChevronDownIcon\n data-slot=\"accordion-trigger-icon\"\n className={cn(\n \"pointer-events-none shrink-0\",\n \"transition-transform duration-200 ease-smooth\",\n \"motion-reduce:transition-none\",\n \"group-data-[panel-open]/accordion-trigger:rotate-180\",\n )}\n />\n </AccordionPrimitive.Trigger>\n </AccordionPrimitive.Header>\n );\n}\n\nfunction AccordionContent({\n className,\n children,\n ...props\n}: AccordionPrimitive.Panel.Props) {\n return (\n <AccordionPrimitive.Panel\n data-slot=\"accordion-content\"\n className={cn(\n // Height animation (Base UI provides --accordion-panel-height)\n \"h-(--accordion-panel-height) overflow-hidden text-sm\",\n \"transition-[height] duration-200 ease-smooth\",\n \"motion-reduce:transition-none\",\n // Starting/ending at 0 height\n \"data-starting-style:h-0\",\n \"data-ending-style:h-0\",\n )}\n {...props}\n >\n <div\n className={cn(\n \"pt-0 pb-4\",\n \"[&_a]:underline [&_a]:underline-offset-3 [&_a]:hover-only:hover:text-foreground\",\n \"[&_p:not(:last-child)]:mb-4\",\n className,\n )}\n >\n {children}\n </div>\n </AccordionPrimitive.Panel>\n );\n}\n\nexport { Accordion, AccordionItem, AccordionTrigger, AccordionContent };\n\nexport type AccordionProps = React.ComponentProps<typeof Accordion>;\nexport type AccordionItemProps = React.ComponentProps<typeof AccordionItem>;\nexport type AccordionTriggerProps = React.ComponentProps<\n typeof AccordionTrigger\n>;\nexport type AccordionContentProps = React.ComponentProps<\n typeof AccordionContent\n>;\n","import { clsx, type ClassValue } from \"clsx\";\nimport { twMerge } from \"tailwind-merge\";\n\nexport function cn(...inputs: ClassValue[]) {\n return twMerge(clsx(inputs));\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAEA,uBAAgD;AAChD,0BAAgC;;;ACHhC,kBAAsC;AACtC,4BAAwB;AAEjB,SAAS,MAAM,QAAsB;AAC1C,aAAO,mCAAQ,kBAAK,MAAM,CAAC;AAC7B;;;ADII;AAFJ,SAAS,UAAU,EAAE,WAAW,GAAG,MAAM,GAAkC;AACzE,SACE;AAAA,IAAC,iBAAAA,UAAmB;AAAA,IAAnB;AAAA,MACC,aAAU;AAAA,MACV,WAAW,GAAG,wBAAwB,SAAS;AAAA,MAC9C,GAAG;AAAA;AAAA,EACN;AAEJ;AAEA,SAAS,cAAc,EAAE,WAAW,GAAG,MAAM,GAAkC;AAC7E,SACE;AAAA,IAAC,iBAAAA,UAAmB;AAAA,IAAnB;AAAA,MACC,aAAU;AAAA,MACV,WAAW;AAAA,QACT;AAAA,QACA;AAAA,MACF;AAAA,MACC,GAAG;AAAA;AAAA,EACN;AAEJ;AAEA,SAAS,iBAAiB;AAAA,EACxB;AAAA,EACA;AAAA,EACA,GAAG;AACL,GAAqC;AACnC,SACE,4CAAC,iBAAAA,UAAmB,QAAnB,EAA0B,WAAU,QACnC;AAAA,IAAC,iBAAAA,UAAmB;AAAA,IAAnB;AAAA,MACC,aAAU;AAAA,MACV,WAAW;AAAA;AAAA,QAET;AAAA,QACA;AAAA;AAAA,QAEA;AAAA,QACA;AAAA;AAAA,QAEA;AAAA,QACA;AAAA;AAAA,QAEA;AAAA;AAAA,QAEA;AAAA,QACA;AAAA,QACA;AAAA;AAAA,QAEA;AAAA,QACA;AAAA,MACF;AAAA,MACC,GAAG;AAAA,MAEH;AAAA;AAAA,QACD;AAAA,UAAC;AAAA;AAAA,YACC,aAAU;AAAA,YACV,WAAW;AAAA,cACT;AAAA,cACA;AAAA,cACA;AAAA,cACA;AAAA,YACF;AAAA;AAAA,QACF;AAAA;AAAA;AAAA,EACF,GACF;AAEJ;AAEA,SAAS,iBAAiB;AAAA,EACxB;AAAA,EACA;AAAA,EACA,GAAG;AACL,GAAmC;AACjC,SACE;AAAA,IAAC,iBAAAA,UAAmB;AAAA,IAAnB;AAAA,MACC,aAAU;AAAA,MACV,WAAW;AAAA;AAAA,QAET;AAAA,QACA;AAAA,QACA;AAAA;AAAA,QAEA;AAAA,QACA;AAAA,MACF;AAAA,MACC,GAAG;AAAA,MAEJ;AAAA,QAAC;AAAA;AAAA,UACC,WAAW;AAAA,YACT;AAAA,YACA;AAAA,YACA;AAAA,YACA;AAAA,UACF;AAAA,UAEC;AAAA;AAAA,MACH;AAAA;AAAA,EACF;AAEJ;","names":["AccordionPrimitive"]}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import * as react_jsx_runtime from 'react/jsx-runtime';
|
|
2
|
+
import { Accordion as Accordion$1 } from '@base-ui/react/accordion';
|
|
3
|
+
|
|
4
|
+
declare function Accordion({ className, ...props }: Accordion$1.Root.Props): react_jsx_runtime.JSX.Element;
|
|
5
|
+
declare function AccordionItem({ className, ...props }: Accordion$1.Item.Props): react_jsx_runtime.JSX.Element;
|
|
6
|
+
declare function AccordionTrigger({ className, children, ...props }: Accordion$1.Trigger.Props): react_jsx_runtime.JSX.Element;
|
|
7
|
+
declare function AccordionContent({ className, children, ...props }: Accordion$1.Panel.Props): react_jsx_runtime.JSX.Element;
|
|
8
|
+
|
|
9
|
+
type AccordionProps = React.ComponentProps<typeof Accordion>;
|
|
10
|
+
type AccordionItemProps = React.ComponentProps<typeof AccordionItem>;
|
|
11
|
+
type AccordionTriggerProps = React.ComponentProps<typeof AccordionTrigger>;
|
|
12
|
+
type AccordionContentProps = React.ComponentProps<typeof AccordionContent>;
|
|
13
|
+
|
|
14
|
+
export { Accordion, AccordionContent, type AccordionContentProps, AccordionItem, type AccordionItemProps, type AccordionProps, AccordionTrigger, type AccordionTriggerProps };
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import * as react_jsx_runtime from 'react/jsx-runtime';
|
|
2
|
+
import { Accordion as Accordion$1 } from '@base-ui/react/accordion';
|
|
3
|
+
|
|
4
|
+
declare function Accordion({ className, ...props }: Accordion$1.Root.Props): react_jsx_runtime.JSX.Element;
|
|
5
|
+
declare function AccordionItem({ className, ...props }: Accordion$1.Item.Props): react_jsx_runtime.JSX.Element;
|
|
6
|
+
declare function AccordionTrigger({ className, children, ...props }: Accordion$1.Trigger.Props): react_jsx_runtime.JSX.Element;
|
|
7
|
+
declare function AccordionContent({ className, children, ...props }: Accordion$1.Panel.Props): react_jsx_runtime.JSX.Element;
|
|
8
|
+
|
|
9
|
+
type AccordionProps = React.ComponentProps<typeof Accordion>;
|
|
10
|
+
type AccordionItemProps = React.ComponentProps<typeof AccordionItem>;
|
|
11
|
+
type AccordionTriggerProps = React.ComponentProps<typeof AccordionTrigger>;
|
|
12
|
+
type AccordionContentProps = React.ComponentProps<typeof AccordionContent>;
|
|
13
|
+
|
|
14
|
+
export { Accordion, AccordionContent, type AccordionContentProps, AccordionItem, type AccordionItemProps, type AccordionProps, AccordionTrigger, type AccordionTriggerProps };
|
|
@@ -0,0 +1,127 @@
|
|
|
1
|
+
"use client";
|
|
2
|
+
|
|
3
|
+
// src/components/accordion.tsx
|
|
4
|
+
import { Accordion as AccordionPrimitive } from "@base-ui/react/accordion";
|
|
5
|
+
import { ChevronDownIcon } from "lucide-react";
|
|
6
|
+
|
|
7
|
+
// src/lib/utils.ts
|
|
8
|
+
import { clsx } from "clsx";
|
|
9
|
+
import { twMerge } from "tailwind-merge";
|
|
10
|
+
function cn(...inputs) {
|
|
11
|
+
return twMerge(clsx(inputs));
|
|
12
|
+
}
|
|
13
|
+
|
|
14
|
+
// src/components/accordion.tsx
|
|
15
|
+
import { jsx, jsxs } from "react/jsx-runtime";
|
|
16
|
+
function Accordion({ className, ...props }) {
|
|
17
|
+
return /* @__PURE__ */ jsx(
|
|
18
|
+
AccordionPrimitive.Root,
|
|
19
|
+
{
|
|
20
|
+
"data-slot": "accordion",
|
|
21
|
+
className: cn("flex w-full flex-col", className),
|
|
22
|
+
...props
|
|
23
|
+
}
|
|
24
|
+
);
|
|
25
|
+
}
|
|
26
|
+
function AccordionItem({ className, ...props }) {
|
|
27
|
+
return /* @__PURE__ */ jsx(
|
|
28
|
+
AccordionPrimitive.Item,
|
|
29
|
+
{
|
|
30
|
+
"data-slot": "accordion-item",
|
|
31
|
+
className: cn(
|
|
32
|
+
"not-last:border-b not-last:border-border-light",
|
|
33
|
+
className
|
|
34
|
+
),
|
|
35
|
+
...props
|
|
36
|
+
}
|
|
37
|
+
);
|
|
38
|
+
}
|
|
39
|
+
function AccordionTrigger({
|
|
40
|
+
className,
|
|
41
|
+
children,
|
|
42
|
+
...props
|
|
43
|
+
}) {
|
|
44
|
+
return /* @__PURE__ */ jsx(AccordionPrimitive.Header, { className: "flex", children: /* @__PURE__ */ jsxs(
|
|
45
|
+
AccordionPrimitive.Trigger,
|
|
46
|
+
{
|
|
47
|
+
"data-slot": "accordion-trigger",
|
|
48
|
+
className: cn(
|
|
49
|
+
// Base
|
|
50
|
+
"no-highlight group/accordion-trigger relative flex flex-1 cursor-pointer items-start justify-between",
|
|
51
|
+
"rounded-md py-4 text-left text-sm font-medium outline-none",
|
|
52
|
+
// Transitions
|
|
53
|
+
"transition-[color,background-color,border-color,box-shadow,opacity] duration-150 ease-smooth",
|
|
54
|
+
"motion-reduce:transition-none",
|
|
55
|
+
// Hover & focus
|
|
56
|
+
"hover-only:hover:underline",
|
|
57
|
+
"focus-visible:focus-ring",
|
|
58
|
+
// Press feedback
|
|
59
|
+
"motion-safe:active:scale-[0.98]",
|
|
60
|
+
// Icon positioning
|
|
61
|
+
"**:data-[slot=accordion-trigger-icon]:ml-auto",
|
|
62
|
+
"**:data-[slot=accordion-trigger-icon]:size-4",
|
|
63
|
+
"**:data-[slot=accordion-trigger-icon]:text-muted-foreground",
|
|
64
|
+
// Disabled
|
|
65
|
+
"aria-disabled:status-disabled",
|
|
66
|
+
className
|
|
67
|
+
),
|
|
68
|
+
...props,
|
|
69
|
+
children: [
|
|
70
|
+
children,
|
|
71
|
+
/* @__PURE__ */ jsx(
|
|
72
|
+
ChevronDownIcon,
|
|
73
|
+
{
|
|
74
|
+
"data-slot": "accordion-trigger-icon",
|
|
75
|
+
className: cn(
|
|
76
|
+
"pointer-events-none shrink-0",
|
|
77
|
+
"transition-transform duration-200 ease-smooth",
|
|
78
|
+
"motion-reduce:transition-none",
|
|
79
|
+
"group-data-[panel-open]/accordion-trigger:rotate-180"
|
|
80
|
+
)
|
|
81
|
+
}
|
|
82
|
+
)
|
|
83
|
+
]
|
|
84
|
+
}
|
|
85
|
+
) });
|
|
86
|
+
}
|
|
87
|
+
function AccordionContent({
|
|
88
|
+
className,
|
|
89
|
+
children,
|
|
90
|
+
...props
|
|
91
|
+
}) {
|
|
92
|
+
return /* @__PURE__ */ jsx(
|
|
93
|
+
AccordionPrimitive.Panel,
|
|
94
|
+
{
|
|
95
|
+
"data-slot": "accordion-content",
|
|
96
|
+
className: cn(
|
|
97
|
+
// Height animation (Base UI provides --accordion-panel-height)
|
|
98
|
+
"h-(--accordion-panel-height) overflow-hidden text-sm",
|
|
99
|
+
"transition-[height] duration-200 ease-smooth",
|
|
100
|
+
"motion-reduce:transition-none",
|
|
101
|
+
// Starting/ending at 0 height
|
|
102
|
+
"data-starting-style:h-0",
|
|
103
|
+
"data-ending-style:h-0"
|
|
104
|
+
),
|
|
105
|
+
...props,
|
|
106
|
+
children: /* @__PURE__ */ jsx(
|
|
107
|
+
"div",
|
|
108
|
+
{
|
|
109
|
+
className: cn(
|
|
110
|
+
"pt-0 pb-4",
|
|
111
|
+
"[&_a]:underline [&_a]:underline-offset-3 [&_a]:hover-only:hover:text-foreground",
|
|
112
|
+
"[&_p:not(:last-child)]:mb-4",
|
|
113
|
+
className
|
|
114
|
+
),
|
|
115
|
+
children
|
|
116
|
+
}
|
|
117
|
+
)
|
|
118
|
+
}
|
|
119
|
+
);
|
|
120
|
+
}
|
|
121
|
+
export {
|
|
122
|
+
Accordion,
|
|
123
|
+
AccordionContent,
|
|
124
|
+
AccordionItem,
|
|
125
|
+
AccordionTrigger
|
|
126
|
+
};
|
|
127
|
+
//# sourceMappingURL=accordion.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../src/components/accordion.tsx","../../src/lib/utils.ts"],"sourcesContent":["\"use client\";\n\nimport { Accordion as AccordionPrimitive } from \"@base-ui/react/accordion\";\nimport { ChevronDownIcon } from \"lucide-react\";\n\nimport { cn } from \"../lib/utils\";\n\nfunction Accordion({ className, ...props }: AccordionPrimitive.Root.Props) {\n return (\n <AccordionPrimitive.Root\n data-slot=\"accordion\"\n className={cn(\"flex w-full flex-col\", className)}\n {...props}\n />\n );\n}\n\nfunction AccordionItem({ className, ...props }: AccordionPrimitive.Item.Props) {\n return (\n <AccordionPrimitive.Item\n data-slot=\"accordion-item\"\n className={cn(\n \"not-last:border-b not-last:border-border-light\",\n className,\n )}\n {...props}\n />\n );\n}\n\nfunction AccordionTrigger({\n className,\n children,\n ...props\n}: AccordionPrimitive.Trigger.Props) {\n return (\n <AccordionPrimitive.Header className=\"flex\">\n <AccordionPrimitive.Trigger\n data-slot=\"accordion-trigger\"\n className={cn(\n // Base\n \"no-highlight group/accordion-trigger relative flex flex-1 cursor-pointer items-start justify-between\",\n \"rounded-md py-4 text-left text-sm font-medium outline-none\",\n // Transitions\n \"transition-[color,background-color,border-color,box-shadow,opacity] duration-150 ease-smooth\",\n \"motion-reduce:transition-none\",\n // Hover & focus\n \"hover-only:hover:underline\",\n \"focus-visible:focus-ring\",\n // Press feedback\n \"motion-safe:active:scale-[0.98]\",\n // Icon positioning\n \"**:data-[slot=accordion-trigger-icon]:ml-auto\",\n \"**:data-[slot=accordion-trigger-icon]:size-4\",\n \"**:data-[slot=accordion-trigger-icon]:text-muted-foreground\",\n // Disabled\n \"aria-disabled:status-disabled\",\n className,\n )}\n {...props}\n >\n {children}\n <ChevronDownIcon\n data-slot=\"accordion-trigger-icon\"\n className={cn(\n \"pointer-events-none shrink-0\",\n \"transition-transform duration-200 ease-smooth\",\n \"motion-reduce:transition-none\",\n \"group-data-[panel-open]/accordion-trigger:rotate-180\",\n )}\n />\n </AccordionPrimitive.Trigger>\n </AccordionPrimitive.Header>\n );\n}\n\nfunction AccordionContent({\n className,\n children,\n ...props\n}: AccordionPrimitive.Panel.Props) {\n return (\n <AccordionPrimitive.Panel\n data-slot=\"accordion-content\"\n className={cn(\n // Height animation (Base UI provides --accordion-panel-height)\n \"h-(--accordion-panel-height) overflow-hidden text-sm\",\n \"transition-[height] duration-200 ease-smooth\",\n \"motion-reduce:transition-none\",\n // Starting/ending at 0 height\n \"data-starting-style:h-0\",\n \"data-ending-style:h-0\",\n )}\n {...props}\n >\n <div\n className={cn(\n \"pt-0 pb-4\",\n \"[&_a]:underline [&_a]:underline-offset-3 [&_a]:hover-only:hover:text-foreground\",\n \"[&_p:not(:last-child)]:mb-4\",\n className,\n )}\n >\n {children}\n </div>\n </AccordionPrimitive.Panel>\n );\n}\n\nexport { Accordion, AccordionItem, AccordionTrigger, AccordionContent };\n\nexport type AccordionProps = React.ComponentProps<typeof Accordion>;\nexport type AccordionItemProps = React.ComponentProps<typeof AccordionItem>;\nexport type AccordionTriggerProps = React.ComponentProps<\n typeof AccordionTrigger\n>;\nexport type AccordionContentProps = React.ComponentProps<\n typeof AccordionContent\n>;\n","import { clsx, type ClassValue } from \"clsx\";\nimport { twMerge } from \"tailwind-merge\";\n\nexport function cn(...inputs: ClassValue[]) {\n return twMerge(clsx(inputs));\n}\n"],"mappings":";;;AAEA,SAAS,aAAa,0BAA0B;AAChD,SAAS,uBAAuB;;;ACHhC,SAAS,YAA6B;AACtC,SAAS,eAAe;AAEjB,SAAS,MAAM,QAAsB;AAC1C,SAAO,QAAQ,KAAK,MAAM,CAAC;AAC7B;;;ADII,cA4BE,YA5BF;AAFJ,SAAS,UAAU,EAAE,WAAW,GAAG,MAAM,GAAkC;AACzE,SACE;AAAA,IAAC,mBAAmB;AAAA,IAAnB;AAAA,MACC,aAAU;AAAA,MACV,WAAW,GAAG,wBAAwB,SAAS;AAAA,MAC9C,GAAG;AAAA;AAAA,EACN;AAEJ;AAEA,SAAS,cAAc,EAAE,WAAW,GAAG,MAAM,GAAkC;AAC7E,SACE;AAAA,IAAC,mBAAmB;AAAA,IAAnB;AAAA,MACC,aAAU;AAAA,MACV,WAAW;AAAA,QACT;AAAA,QACA;AAAA,MACF;AAAA,MACC,GAAG;AAAA;AAAA,EACN;AAEJ;AAEA,SAAS,iBAAiB;AAAA,EACxB;AAAA,EACA;AAAA,EACA,GAAG;AACL,GAAqC;AACnC,SACE,oBAAC,mBAAmB,QAAnB,EAA0B,WAAU,QACnC;AAAA,IAAC,mBAAmB;AAAA,IAAnB;AAAA,MACC,aAAU;AAAA,MACV,WAAW;AAAA;AAAA,QAET;AAAA,QACA;AAAA;AAAA,QAEA;AAAA,QACA;AAAA;AAAA,QAEA;AAAA,QACA;AAAA;AAAA,QAEA;AAAA;AAAA,QAEA;AAAA,QACA;AAAA,QACA;AAAA;AAAA,QAEA;AAAA,QACA;AAAA,MACF;AAAA,MACC,GAAG;AAAA,MAEH;AAAA;AAAA,QACD;AAAA,UAAC;AAAA;AAAA,YACC,aAAU;AAAA,YACV,WAAW;AAAA,cACT;AAAA,cACA;AAAA,cACA;AAAA,cACA;AAAA,YACF;AAAA;AAAA,QACF;AAAA;AAAA;AAAA,EACF,GACF;AAEJ;AAEA,SAAS,iBAAiB;AAAA,EACxB;AAAA,EACA;AAAA,EACA,GAAG;AACL,GAAmC;AACjC,SACE;AAAA,IAAC,mBAAmB;AAAA,IAAnB;AAAA,MACC,aAAU;AAAA,MACV,WAAW;AAAA;AAAA,QAET;AAAA,QACA;AAAA,QACA;AAAA;AAAA,QAEA;AAAA,QACA;AAAA,MACF;AAAA,MACC,GAAG;AAAA,MAEJ;AAAA,QAAC;AAAA;AAAA,UACC,WAAW;AAAA,YACT;AAAA,YACA;AAAA,YACA;AAAA,YACA;AAAA,UACF;AAAA,UAEC;AAAA;AAAA,MACH;AAAA;AAAA,EACF;AAEJ;","names":[]}
|
|
@@ -0,0 +1,324 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
"use client";
|
|
3
|
+
var __defProp = Object.defineProperty;
|
|
4
|
+
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
5
|
+
var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
6
|
+
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
7
|
+
var __export = (target, all) => {
|
|
8
|
+
for (var name in all)
|
|
9
|
+
__defProp(target, name, { get: all[name], enumerable: true });
|
|
10
|
+
};
|
|
11
|
+
var __copyProps = (to, from, except, desc) => {
|
|
12
|
+
if (from && typeof from === "object" || typeof from === "function") {
|
|
13
|
+
for (let key of __getOwnPropNames(from))
|
|
14
|
+
if (!__hasOwnProp.call(to, key) && key !== except)
|
|
15
|
+
__defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
|
|
16
|
+
}
|
|
17
|
+
return to;
|
|
18
|
+
};
|
|
19
|
+
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
|
|
20
|
+
|
|
21
|
+
// src/components/alert-dialog.tsx
|
|
22
|
+
var alert_dialog_exports = {};
|
|
23
|
+
__export(alert_dialog_exports, {
|
|
24
|
+
AlertDialog: () => AlertDialog,
|
|
25
|
+
AlertDialogAction: () => AlertDialogAction,
|
|
26
|
+
AlertDialogCancel: () => AlertDialogCancel,
|
|
27
|
+
AlertDialogContent: () => AlertDialogContent,
|
|
28
|
+
AlertDialogDescription: () => AlertDialogDescription,
|
|
29
|
+
AlertDialogFooter: () => AlertDialogFooter,
|
|
30
|
+
AlertDialogHeader: () => AlertDialogHeader,
|
|
31
|
+
AlertDialogMedia: () => AlertDialogMedia,
|
|
32
|
+
AlertDialogOverlay: () => AlertDialogOverlay,
|
|
33
|
+
AlertDialogPortal: () => AlertDialogPortal,
|
|
34
|
+
AlertDialogTitle: () => AlertDialogTitle,
|
|
35
|
+
AlertDialogTrigger: () => AlertDialogTrigger
|
|
36
|
+
});
|
|
37
|
+
module.exports = __toCommonJS(alert_dialog_exports);
|
|
38
|
+
var import_alert_dialog = require("@base-ui/react/alert-dialog");
|
|
39
|
+
|
|
40
|
+
// src/lib/utils.ts
|
|
41
|
+
var import_clsx = require("clsx");
|
|
42
|
+
var import_tailwind_merge = require("tailwind-merge");
|
|
43
|
+
function cn(...inputs) {
|
|
44
|
+
return (0, import_tailwind_merge.twMerge)((0, import_clsx.clsx)(inputs));
|
|
45
|
+
}
|
|
46
|
+
|
|
47
|
+
// src/components/button.tsx
|
|
48
|
+
var import_button = require("@base-ui/react/button");
|
|
49
|
+
var import_class_variance_authority = require("class-variance-authority");
|
|
50
|
+
var import_jsx_runtime = require("react/jsx-runtime");
|
|
51
|
+
var buttonVariants = (0, import_class_variance_authority.cva)(
|
|
52
|
+
[
|
|
53
|
+
"inline-flex items-center justify-center whitespace-nowrap rounded-lg text-sm font-medium",
|
|
54
|
+
"transform-gpu transition-[color,background-color,border-color,box-shadow,opacity,transform] duration-150 ease-smooth",
|
|
55
|
+
"motion-reduce:transition-none",
|
|
56
|
+
"disabled:status-disabled",
|
|
57
|
+
"focus-visible:focus-ring",
|
|
58
|
+
"[&_svg:not([class*='size-'])]:size-4 [&_svg]:pointer-events-none [&_svg]:shrink-0",
|
|
59
|
+
"shrink-0 group/button select-none no-highlight"
|
|
60
|
+
],
|
|
61
|
+
{
|
|
62
|
+
variants: {
|
|
63
|
+
variant: {
|
|
64
|
+
default: [
|
|
65
|
+
// Base styles
|
|
66
|
+
"relative rounded-lg overflow-visible shadow-surface border border-primary dark:border-primary-dark",
|
|
67
|
+
"isolate text-primary-foreground [text-shadow:_0_1px_2px_oklch(0%_0_0_/_30%)]",
|
|
68
|
+
"[&>*]:relative [&>*]:z-[2]",
|
|
69
|
+
// Combined gradient layer with primary colors
|
|
70
|
+
"before:pointer-events-none before:absolute before:inset-[-0.5px] before:rounded-[inherit]",
|
|
71
|
+
"before:bg-gradient-to-br before:from-primary-light before:via-primary-middle before:to-primary-dark",
|
|
72
|
+
"before:dark:from-primary-light before:dark:via-primary-middle before:dark:to-primary-dark",
|
|
73
|
+
"before:z-[-1]",
|
|
74
|
+
// Additional outer border
|
|
75
|
+
"after:pointer-events-none after:absolute after:inset-[0.5px] after:rounded-[inherit]",
|
|
76
|
+
"after:bg-gradient-to-br after:from-primary after:to-primary-dark",
|
|
77
|
+
"after:z-[-1] after:transition-opacity after:duration-200 after:opacity-40 after:motion-reduce:transition-none",
|
|
78
|
+
// Hover state
|
|
79
|
+
"hover-only:after:opacity-100 hover-only:transition-opacity hover-only:duration-200"
|
|
80
|
+
].join(" "),
|
|
81
|
+
destructive: "bg-destructive text-destructive-foreground hover-only:hover:bg-destructive-hover",
|
|
82
|
+
outline: [
|
|
83
|
+
// Base styles
|
|
84
|
+
"relative rounded-lg overflow-visible shadow-field border",
|
|
85
|
+
"isolate text-foreground",
|
|
86
|
+
"[&>*]:relative [&>*]:z-[2]",
|
|
87
|
+
// Background layer
|
|
88
|
+
"before:pointer-events-none before:absolute before:inset-[-0.5px] before:rounded-[inherit]",
|
|
89
|
+
"before:bg-gradient-to-br before:from-border-light before:via-border before:to-border-dark/50",
|
|
90
|
+
"before:dark:from-border-light before:dark:to-border-dark",
|
|
91
|
+
"before:z-[-1]",
|
|
92
|
+
// Inner background layer
|
|
93
|
+
"after:pointer-events-none after:absolute after:inset-[0.5px] after:rounded-[inherit]",
|
|
94
|
+
"after:bg-background",
|
|
95
|
+
"after:z-[-1]",
|
|
96
|
+
"after:transition-colors after:duration-200 after:ease-out after:motion-reduce:transition-none",
|
|
97
|
+
// Hover state
|
|
98
|
+
"hover-only:after:bg-muted"
|
|
99
|
+
].join(" "),
|
|
100
|
+
secondary: "bg-secondary text-secondary-foreground hover-only:hover:bg-accent",
|
|
101
|
+
ghost: "hover-only:bg-accent hover-only:text-accent-foreground motion-safe:active:scale-100",
|
|
102
|
+
"primary-soft": "bg-primary-soft text-primary hover-only:hover:bg-primary-soft-hover",
|
|
103
|
+
"destructive-soft": "bg-destructive-soft text-destructive hover-only:hover:bg-destructive-soft-hover",
|
|
104
|
+
success: "bg-success text-success-foreground hover-only:hover:bg-success-hover",
|
|
105
|
+
warning: "bg-warning text-warning-foreground hover-only:hover:bg-warning-hover",
|
|
106
|
+
link: "dark:text-primary-light text-primary-dark underline-offset-4 hover-only:underline motion-safe:active:scale-100"
|
|
107
|
+
},
|
|
108
|
+
size: {
|
|
109
|
+
default: "h-9 gap-2 px-4 py-1 in-data-[slot=button-group]:rounded-md has-data-[icon=inline-end]:pr-2 has-data-[icon=inline-start]:pl-2 motion-safe:active:scale-[0.97]",
|
|
110
|
+
xs: "h-6 gap-1 rounded-lg px-2 text-xs in-data-[slot=button-group]:rounded-md has-data-[icon=inline-end]:pr-1.5 has-data-[icon=inline-start]:pl-1.5 [&_svg:not([class*='size-'])]:size-3 motion-safe:active:scale-[0.985]",
|
|
111
|
+
sm: "h-8 gap-1.5 rounded-lg px-3 text-xs in-data-[slot=button-group]:rounded-md has-data-[icon=inline-end]:pr-1.5 has-data-[icon=inline-start]:pl-1.5 motion-safe:active:scale-[0.98]",
|
|
112
|
+
lg: "h-10 gap-2 rounded-lg px-8 has-data-[icon=inline-end]:pr-3 has-data-[icon=inline-start]:pl-3 motion-safe:active:scale-[0.96]",
|
|
113
|
+
icon: "size-9 motion-safe:active:scale-[0.97]",
|
|
114
|
+
"icon-xs": "size-6 rounded-lg in-data-[slot=button-group]:rounded-md motion-safe:active:scale-[0.985]",
|
|
115
|
+
"icon-sm": "size-8 rounded-lg in-data-[slot=button-group]:rounded-md motion-safe:active:scale-[0.98]",
|
|
116
|
+
"icon-lg": "size-10 motion-safe:active:scale-[0.96]"
|
|
117
|
+
}
|
|
118
|
+
},
|
|
119
|
+
defaultVariants: {
|
|
120
|
+
variant: "default",
|
|
121
|
+
size: "default"
|
|
122
|
+
}
|
|
123
|
+
}
|
|
124
|
+
);
|
|
125
|
+
function Button({
|
|
126
|
+
className,
|
|
127
|
+
variant = "default",
|
|
128
|
+
size = "default",
|
|
129
|
+
isPending,
|
|
130
|
+
nativeButton,
|
|
131
|
+
render,
|
|
132
|
+
...props
|
|
133
|
+
}) {
|
|
134
|
+
return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(
|
|
135
|
+
import_button.Button,
|
|
136
|
+
{
|
|
137
|
+
"data-slot": "button",
|
|
138
|
+
"data-pending": isPending || void 0,
|
|
139
|
+
"aria-disabled": isPending || void 0,
|
|
140
|
+
nativeButton: nativeButton ?? (render ? false : void 0),
|
|
141
|
+
render,
|
|
142
|
+
className: cn(
|
|
143
|
+
buttonVariants({ variant, size }),
|
|
144
|
+
isPending && "status-pending",
|
|
145
|
+
className
|
|
146
|
+
),
|
|
147
|
+
...props
|
|
148
|
+
}
|
|
149
|
+
);
|
|
150
|
+
}
|
|
151
|
+
|
|
152
|
+
// src/components/alert-dialog.tsx
|
|
153
|
+
var import_jsx_runtime2 = require("react/jsx-runtime");
|
|
154
|
+
function AlertDialog({ ...props }) {
|
|
155
|
+
return /* @__PURE__ */ (0, import_jsx_runtime2.jsx)(import_alert_dialog.AlertDialog.Root, { "data-slot": "alert-dialog", ...props });
|
|
156
|
+
}
|
|
157
|
+
function AlertDialogTrigger({ ...props }) {
|
|
158
|
+
return /* @__PURE__ */ (0, import_jsx_runtime2.jsx)(import_alert_dialog.AlertDialog.Trigger, { "data-slot": "alert-dialog-trigger", ...props });
|
|
159
|
+
}
|
|
160
|
+
function AlertDialogPortal({ ...props }) {
|
|
161
|
+
return /* @__PURE__ */ (0, import_jsx_runtime2.jsx)(import_alert_dialog.AlertDialog.Portal, { "data-slot": "alert-dialog-portal", ...props });
|
|
162
|
+
}
|
|
163
|
+
function AlertDialogOverlay({
|
|
164
|
+
className,
|
|
165
|
+
...props
|
|
166
|
+
}) {
|
|
167
|
+
return /* @__PURE__ */ (0, import_jsx_runtime2.jsx)(
|
|
168
|
+
import_alert_dialog.AlertDialog.Backdrop,
|
|
169
|
+
{
|
|
170
|
+
"data-slot": "alert-dialog-overlay",
|
|
171
|
+
className: cn(
|
|
172
|
+
"data-open:animate-in data-closed:animate-out data-closed:fade-out-0 data-open:fade-in-0 bg-overlay-backdrop duration-200 supports-backdrop-filter:backdrop-blur-xs fixed inset-0 isolate z-50 transition motion-reduce:animate-none motion-reduce:transition-none",
|
|
173
|
+
className
|
|
174
|
+
),
|
|
175
|
+
...props
|
|
176
|
+
}
|
|
177
|
+
);
|
|
178
|
+
}
|
|
179
|
+
function AlertDialogContent({
|
|
180
|
+
className,
|
|
181
|
+
size = "default",
|
|
182
|
+
...props
|
|
183
|
+
}) {
|
|
184
|
+
return /* @__PURE__ */ (0, import_jsx_runtime2.jsxs)(AlertDialogPortal, { children: [
|
|
185
|
+
/* @__PURE__ */ (0, import_jsx_runtime2.jsx)(AlertDialogOverlay, {}),
|
|
186
|
+
/* @__PURE__ */ (0, import_jsx_runtime2.jsx)(
|
|
187
|
+
import_alert_dialog.AlertDialog.Popup,
|
|
188
|
+
{
|
|
189
|
+
"data-slot": "alert-dialog-content",
|
|
190
|
+
"data-size": size,
|
|
191
|
+
className: cn(
|
|
192
|
+
"bg-overlay text-overlay-foreground shadow-overlay data-open:animate-in data-closed:animate-out data-closed:fade-out-0 data-open:fade-in-0 data-closed:zoom-out-[0.98] data-open:zoom-in-[1.02] ring-border-light gap-6 rounded-xl p-6 ring-1 duration-200 ease-out-fluid data-[size=default]:max-w-xs data-[size=sm]:max-w-xs data-[size=default]:sm:max-w-lg group/alert-dialog-content fixed top-1/2 left-1/2 z-50 grid w-full -translate-x-1/2 -translate-y-1/2 outline-none transition data-entering:will-change-[opacity,transform] data-exiting:will-change-[opacity,transform] motion-reduce:animate-none motion-reduce:transition-none",
|
|
193
|
+
className
|
|
194
|
+
),
|
|
195
|
+
...props
|
|
196
|
+
}
|
|
197
|
+
)
|
|
198
|
+
] });
|
|
199
|
+
}
|
|
200
|
+
function AlertDialogHeader({
|
|
201
|
+
className,
|
|
202
|
+
...props
|
|
203
|
+
}) {
|
|
204
|
+
return /* @__PURE__ */ (0, import_jsx_runtime2.jsx)(
|
|
205
|
+
"div",
|
|
206
|
+
{
|
|
207
|
+
"data-slot": "alert-dialog-header",
|
|
208
|
+
className: cn(
|
|
209
|
+
"grid grid-rows-[auto_1fr] place-items-center gap-1.5 text-center has-data-[slot=alert-dialog-media]:grid-rows-[auto_auto_1fr] has-data-[slot=alert-dialog-media]:gap-x-6 sm:group-data-[size=default]/alert-dialog-content:place-items-start sm:group-data-[size=default]/alert-dialog-content:text-left sm:group-data-[size=default]/alert-dialog-content:has-data-[slot=alert-dialog-media]:grid-rows-[auto_1fr]",
|
|
210
|
+
className
|
|
211
|
+
),
|
|
212
|
+
...props
|
|
213
|
+
}
|
|
214
|
+
);
|
|
215
|
+
}
|
|
216
|
+
function AlertDialogFooter({
|
|
217
|
+
className,
|
|
218
|
+
...props
|
|
219
|
+
}) {
|
|
220
|
+
return /* @__PURE__ */ (0, import_jsx_runtime2.jsx)(
|
|
221
|
+
"div",
|
|
222
|
+
{
|
|
223
|
+
"data-slot": "alert-dialog-footer",
|
|
224
|
+
className: cn(
|
|
225
|
+
"flex flex-col-reverse gap-2 group-data-[size=sm]/alert-dialog-content:grid group-data-[size=sm]/alert-dialog-content:grid-cols-2 sm:flex-row sm:justify-end",
|
|
226
|
+
className
|
|
227
|
+
),
|
|
228
|
+
...props
|
|
229
|
+
}
|
|
230
|
+
);
|
|
231
|
+
}
|
|
232
|
+
function AlertDialogMedia({
|
|
233
|
+
className,
|
|
234
|
+
...props
|
|
235
|
+
}) {
|
|
236
|
+
return /* @__PURE__ */ (0, import_jsx_runtime2.jsx)(
|
|
237
|
+
"div",
|
|
238
|
+
{
|
|
239
|
+
"data-slot": "alert-dialog-media",
|
|
240
|
+
className: cn(
|
|
241
|
+
"bg-surface-secondary mb-2 inline-flex size-16 items-center justify-center rounded-md sm:group-data-[size=default]/alert-dialog-content:row-span-2 *:[svg:not([class*='size-'])]:size-8",
|
|
242
|
+
className
|
|
243
|
+
),
|
|
244
|
+
...props
|
|
245
|
+
}
|
|
246
|
+
);
|
|
247
|
+
}
|
|
248
|
+
function AlertDialogTitle({
|
|
249
|
+
className,
|
|
250
|
+
...props
|
|
251
|
+
}) {
|
|
252
|
+
return /* @__PURE__ */ (0, import_jsx_runtime2.jsx)(
|
|
253
|
+
import_alert_dialog.AlertDialog.Title,
|
|
254
|
+
{
|
|
255
|
+
"data-slot": "alert-dialog-title",
|
|
256
|
+
className: cn(
|
|
257
|
+
"text-lg font-medium sm:group-data-[size=default]/alert-dialog-content:group-has-data-[slot=alert-dialog-media]/alert-dialog-content:col-start-2",
|
|
258
|
+
className
|
|
259
|
+
),
|
|
260
|
+
...props
|
|
261
|
+
}
|
|
262
|
+
);
|
|
263
|
+
}
|
|
264
|
+
function AlertDialogDescription({
|
|
265
|
+
className,
|
|
266
|
+
...props
|
|
267
|
+
}) {
|
|
268
|
+
return /* @__PURE__ */ (0, import_jsx_runtime2.jsx)(
|
|
269
|
+
import_alert_dialog.AlertDialog.Description,
|
|
270
|
+
{
|
|
271
|
+
"data-slot": "alert-dialog-description",
|
|
272
|
+
className: cn(
|
|
273
|
+
"text-muted-foreground *:[a]:hover-only:hover:text-foreground text-sm text-balance md:text-pretty *:[a]:underline *:[a]:underline-offset-3",
|
|
274
|
+
className
|
|
275
|
+
),
|
|
276
|
+
...props
|
|
277
|
+
}
|
|
278
|
+
);
|
|
279
|
+
}
|
|
280
|
+
function AlertDialogAction({
|
|
281
|
+
className,
|
|
282
|
+
...props
|
|
283
|
+
}) {
|
|
284
|
+
return /* @__PURE__ */ (0, import_jsx_runtime2.jsx)(
|
|
285
|
+
Button,
|
|
286
|
+
{
|
|
287
|
+
"data-slot": "alert-dialog-action",
|
|
288
|
+
className: cn(className),
|
|
289
|
+
...props
|
|
290
|
+
}
|
|
291
|
+
);
|
|
292
|
+
}
|
|
293
|
+
function AlertDialogCancel({
|
|
294
|
+
className,
|
|
295
|
+
variant = "outline",
|
|
296
|
+
size = "default",
|
|
297
|
+
...props
|
|
298
|
+
}) {
|
|
299
|
+
return /* @__PURE__ */ (0, import_jsx_runtime2.jsx)(
|
|
300
|
+
import_alert_dialog.AlertDialog.Close,
|
|
301
|
+
{
|
|
302
|
+
"data-slot": "alert-dialog-cancel",
|
|
303
|
+
className: cn(className),
|
|
304
|
+
render: /* @__PURE__ */ (0, import_jsx_runtime2.jsx)(Button, { variant, size }),
|
|
305
|
+
...props
|
|
306
|
+
}
|
|
307
|
+
);
|
|
308
|
+
}
|
|
309
|
+
// Annotate the CommonJS export names for ESM import in node:
|
|
310
|
+
0 && (module.exports = {
|
|
311
|
+
AlertDialog,
|
|
312
|
+
AlertDialogAction,
|
|
313
|
+
AlertDialogCancel,
|
|
314
|
+
AlertDialogContent,
|
|
315
|
+
AlertDialogDescription,
|
|
316
|
+
AlertDialogFooter,
|
|
317
|
+
AlertDialogHeader,
|
|
318
|
+
AlertDialogMedia,
|
|
319
|
+
AlertDialogOverlay,
|
|
320
|
+
AlertDialogPortal,
|
|
321
|
+
AlertDialogTitle,
|
|
322
|
+
AlertDialogTrigger
|
|
323
|
+
});
|
|
324
|
+
//# sourceMappingURL=alert-dialog.cjs.map
|