@chaibuilder/sdk 2.2.3 → 2.2.5
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/CodeEditor-B7r9YjDC.cjs +1 -0
- package/dist/CodeEditor-HKrlrH8b.js +71 -0
- package/dist/core.cjs +5 -5
- package/dist/core.d.ts +38 -39
- package/dist/core.js +4355 -4390
- package/dist/get-chai-builder-theme-ByeXCyGx.js +12 -0
- package/dist/get-chai-builder-theme-CeaKvOZ8.cjs +1 -0
- package/dist/mockServiceWorker.js +1 -1
- package/dist/plugin-C01tjI6V.cjs +22 -0
- package/dist/{chai-theme-helpers-CfZwxV6S.js → plugin-fnBB3TCm.js} +111 -99
- package/dist/render-chai-blocks-6SVNwoLW.js +201 -0
- package/dist/render-chai-blocks-Bvl2_fRE.cjs +1 -0
- package/dist/render.cjs +2 -2
- package/dist/render.d.ts +2 -2
- package/dist/render.js +38 -188
- package/dist/sooner-AJ7QkeLS.cjs +1 -0
- package/dist/sooner-DGhT8-JI.js +831 -0
- package/dist/tailwind.cjs +1 -1
- package/dist/tailwind.js +3 -2
- package/dist/ui.cjs +1 -1
- package/dist/ui.d.ts +37 -29
- package/dist/ui.js +232 -196
- package/dist/web-blocks.cjs +2 -2
- package/dist/web-blocks.js +1210 -1069
- package/package.json +3 -2
- package/dist/CodeEditor-CPR3N3wa.cjs +0 -1
- package/dist/CodeEditor-CuhsobXe.js +0 -65
- package/dist/chai-theme-helpers-utzv3TbX.cjs +0 -22
- package/dist/getSplitClasses-DodqA_KW.cjs +0 -1
- package/dist/getSplitClasses-DphwgQiE.js +0 -48
- package/dist/plugin-DW1HhfzA.js +0 -24
- package/dist/plugin-kqWzHDpF.cjs +0 -1
- package/dist/tooltip-BF2E5xPf.cjs +0 -1
- package/dist/tooltip-DGVZAvLU.js +0 -755
- /package/dist/{Functions-BGzDsf1z.js → common-functions-BGzDsf1z.js} +0 -0
- /package/dist/{Functions-BZmyleS1.cjs → common-functions-BZmyleS1.cjs} +0 -0
package/package.json
CHANGED
|
@@ -5,7 +5,7 @@
|
|
|
5
5
|
"author": "Suraj Air",
|
|
6
6
|
"license": "BSD-3-Clause",
|
|
7
7
|
"homepage": "https://chaibuilder.com",
|
|
8
|
-
"version": "2.2.
|
|
8
|
+
"version": "2.2.5",
|
|
9
9
|
"type": "module",
|
|
10
10
|
"repository": {
|
|
11
11
|
"type": "git",
|
|
@@ -150,7 +150,7 @@
|
|
|
150
150
|
"@tanstack/eslint-plugin-query": "^5.64.2",
|
|
151
151
|
"@testing-library/react": "^16.2.0",
|
|
152
152
|
"@types/lodash": "^4.17.14",
|
|
153
|
-
"@types/node": "^20.
|
|
153
|
+
"@types/node": "^20.17.11",
|
|
154
154
|
"@types/react": "^18.3.1",
|
|
155
155
|
"@types/react-dom": "^18.3.1",
|
|
156
156
|
"@typescript-eslint/eslint-plugin": "^8.21.0",
|
|
@@ -175,6 +175,7 @@
|
|
|
175
175
|
"react": "19.1.0",
|
|
176
176
|
"react-dom": "19.1.0",
|
|
177
177
|
"react-router-dom": "^7.1.3",
|
|
178
|
+
"shadcn": "2.3.0",
|
|
178
179
|
"tailwindcss": "^3.4.11",
|
|
179
180
|
"tailwindcss-animate": "^1.0.7",
|
|
180
181
|
"ts-jest": "^29.2.5",
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("react/jsx-runtime"),C=require("@radix-ui/react-icons"),v=require("@react-hookz/web"),n=require("react"),j=require("react-i18next"),g=require("./tooltip-BF2E5xPf.cjs"),a=require("./core.cjs"),u=o=>{const s=document.createElement("div");return s.innerHTML=o,s.innerHTML};function y(){const{t:o}=j.useTranslation(),[s,x]=n.useState(!1),[i,m]=n.useState(""),[t,r]=a.useCodeEditor(),[d]=a.useSelectedBlockIds(),b=a.useUpdateBlocksProps(),f=a.useUpdateBlocksPropsRealtime(),p=v.useThrottledCallback(l=>{const c=u(l);f([t.blockId],{[t.blockProp]:c})},[],300),h=n.useCallback(()=>{if(s){const l=u(i);b([t.blockId],{[t.blockProp]:l})}},[s,i]);n.useEffect(()=>{d.includes(t==null?void 0:t.blockId)||(h(),r(null))},[d]);const k=()=>{r(null)};return e.jsxs("div",{className:"h-full text-white bg-black border-t-4 border-black rounded-t-lg",children:[e.jsx("button",{onClick:k,className:"fixed inset-0 z-[100000] cursor-default bg-gray-400/20"}),e.jsxs("div",{className:"relative z-[100001] h-full w-full flex-col gap-y-1",children:[e.jsxs("div",{className:"flex items-center justify-between px-2 py-2 -mt-1",children:[e.jsxs("h3",{className:"space-x-3 text-sm font-semibold",children:[e.jsx("span",{children:o("HTML Code Editor |")}),e.jsx("span",{className:"text-xs text-gray-400",children:o("Scripts will be only executed in preview and live mode.")})]}),e.jsx("div",{className:"flex gap-x-2",children:e.jsx(g.Button,{onClick:()=>r(null),size:"sm",variant:"destructive",className:"h-6 w-fit",children:e.jsx(C.Cross2Icon,{})})})]}),e.jsx("textarea",{className:"w-full h-full p-2 font-mono text-xs bg-black text-white/90",value:i||t.initialCode,onChange:l=>{const c=l.target.value;x(!0),m(c),p(c)}})]})]})}exports.default=y;
|
|
@@ -1,65 +0,0 @@
|
|
|
1
|
-
import { jsxs as a, jsx as t } from "react/jsx-runtime";
|
|
2
|
-
import { Cross2Icon as k } from "@radix-ui/react-icons";
|
|
3
|
-
import { useThrottledCallback as C } from "@react-hookz/web";
|
|
4
|
-
import { useState as d, useCallback as v, useEffect as g } from "react";
|
|
5
|
-
import { useTranslation as N } from "react-i18next";
|
|
6
|
-
import { B as w } from "./tooltip-DGVZAvLU.js";
|
|
7
|
-
import { useCodeEditor as y, useSelectedBlockIds as T, useUpdateBlocksProps as B, useUpdateBlocksPropsRealtime as E } from "./core.js";
|
|
8
|
-
const u = (o) => {
|
|
9
|
-
const l = document.createElement("div");
|
|
10
|
-
return l.innerHTML = o, l.innerHTML;
|
|
11
|
-
};
|
|
12
|
-
function S() {
|
|
13
|
-
const { t: o } = N(), [l, m] = d(!1), [c, f] = d(""), [e, i] = y(), [r] = T(), p = B(), h = E(), x = C(
|
|
14
|
-
(s) => {
|
|
15
|
-
const n = u(s);
|
|
16
|
-
h([e.blockId], { [e.blockProp]: n });
|
|
17
|
-
},
|
|
18
|
-
[],
|
|
19
|
-
300
|
|
20
|
-
), b = v(() => {
|
|
21
|
-
if (l) {
|
|
22
|
-
const s = u(c);
|
|
23
|
-
p([e.blockId], { [e.blockProp]: s });
|
|
24
|
-
}
|
|
25
|
-
}, [l, c]);
|
|
26
|
-
return g(() => {
|
|
27
|
-
r.includes(e == null ? void 0 : e.blockId) || (b(), i(null));
|
|
28
|
-
}, [r]), /* @__PURE__ */ a("div", { className: "h-full text-white bg-black border-t-4 border-black rounded-t-lg", children: [
|
|
29
|
-
/* @__PURE__ */ t("button", { onClick: () => {
|
|
30
|
-
i(null);
|
|
31
|
-
}, className: "fixed inset-0 z-[100000] cursor-default bg-gray-400/20" }),
|
|
32
|
-
/* @__PURE__ */ a("div", { className: "relative z-[100001] h-full w-full flex-col gap-y-1", children: [
|
|
33
|
-
/* @__PURE__ */ a("div", { className: "flex items-center justify-between px-2 py-2 -mt-1", children: [
|
|
34
|
-
/* @__PURE__ */ a("h3", { className: "space-x-3 text-sm font-semibold", children: [
|
|
35
|
-
/* @__PURE__ */ t("span", { children: o("HTML Code Editor |") }),
|
|
36
|
-
/* @__PURE__ */ t("span", { className: "text-xs text-gray-400", children: o("Scripts will be only executed in preview and live mode.") })
|
|
37
|
-
] }),
|
|
38
|
-
/* @__PURE__ */ t("div", { className: "flex gap-x-2", children: /* @__PURE__ */ t(
|
|
39
|
-
w,
|
|
40
|
-
{
|
|
41
|
-
onClick: () => i(null),
|
|
42
|
-
size: "sm",
|
|
43
|
-
variant: "destructive",
|
|
44
|
-
className: "h-6 w-fit",
|
|
45
|
-
children: /* @__PURE__ */ t(k, {})
|
|
46
|
-
}
|
|
47
|
-
) })
|
|
48
|
-
] }),
|
|
49
|
-
/* @__PURE__ */ t(
|
|
50
|
-
"textarea",
|
|
51
|
-
{
|
|
52
|
-
className: "w-full h-full p-2 font-mono text-xs bg-black text-white/90",
|
|
53
|
-
value: c || e.initialCode,
|
|
54
|
-
onChange: (s) => {
|
|
55
|
-
const n = s.target.value;
|
|
56
|
-
m(!0), f(n), x(n);
|
|
57
|
-
}
|
|
58
|
-
}
|
|
59
|
-
)
|
|
60
|
-
] })
|
|
61
|
-
] });
|
|
62
|
-
}
|
|
63
|
-
export {
|
|
64
|
-
S as default
|
|
65
|
-
};
|
|
@@ -1,22 +0,0 @@
|
|
|
1
|
-
"use strict";const h=require("@chaibuilder/runtime"),i=require("lodash-es"),b={fontFamily:{"font-heading":"Inter","font-body":"Inter"},borderRadius:"10px",colors:[{group:"Body",items:{background:["#FFFFFF","#121212"],foreground:["#121212","#FFFFFF"]}},{group:"Primary",items:{primary:["#2563EB","#3B82F6"],"primary-foreground":["#FFFFFF","#FFFFFF"]}},{group:"Secondary",items:{secondary:["#F3F4F6","#374151"],"secondary-foreground":["#1F2937","#F9FAFB"]}},{group:"Border, Input & Ring",items:{border:["#E5E7EB","#374151"],input:["#E5E7EB","#374151"],ring:["#2563EB","#3B82F6"]}},{group:"Card",items:{card:["#FFFFFF","#1F2937"],"card-foreground":["#121212","#FFFFFF"]}},{group:"Popover",items:{popover:["#FFFFFF","#1F2937"],"popover-foreground":["#121212","#FFFFFF"]}},{group:"Muted",items:{muted:["#F3F4F6","#374151"],"muted-foreground":["#6B7280","#9CA3AF"]}},{group:"Accent",items:{accent:["#F3F4F6","#374151"],"accent-foreground":["#1F2937","#FFFFFF"]}},{group:"Destructive",items:{destructive:["#DC2626","#EF4444"],"destructive-foreground":["#FFFFFF","#FFFFFF"]}}]},B={fontFamily:{heading:"Inter",body:"Inter"},borderRadius:"6px",colors:{background:["#FFFFFF","#09090B"],foreground:["#09090B","#FFFFFF"],primary:["#2563EB","#3B82F6"],"primary-foreground":["#FFFFFF","#FFFFFF"],secondary:["#F4F4F5","#27272A"],"secondary-foreground":["#09090B","#FFFFFF"],muted:["#F4F4F5","#27272A"],"muted-foreground":["#71717A","#A1A1AA"],accent:["#F4F4F5","#27272A"],"accent-foreground":["#09090B","#FFFFFF"],destructive:["#EF4444","#7F1D1D"],"destructive-foreground":["#FFFFFF","#FFFFFF"],border:["#E4E4E7","#27272A"],input:["#E4E4E7","#27272A"],ring:["#2563EB","#3B82F6"],card:["#FFFFFF","#09090B"],"card-foreground":["#09090B","#FFFFFF"],popover:["#FFFFFF","#09090B"],"popover-foreground":["#09090B","#FFFFFF"]}};function v(e){return e&&e.__esModule&&Object.prototype.hasOwnProperty.call(e,"default")?e.default:e}var l={},c={},m;function _(){return m||(m=1,function(e){Object.defineProperty(e,"__esModule",{value:!0}),Object.defineProperty(e,"default",{enumerable:!0,get:function(){return r}});function t(n,F){return{handler:n,config:F}}t.withOptions=function(n,F=()=>({})){const o=function(u){return{__options:u,handler:n(u),config:F(u)}};return o.__isOptionsFunction=!0,o.__pluginFunction=n,o.__configFunction=F,o};const r=t}(c)),c}var p;function E(){return p||(p=1,function(e){Object.defineProperty(e,"__esModule",{value:!0}),Object.defineProperty(e,"default",{enumerable:!0,get:function(){return n}});const t=r(_());function r(F){return F&&F.__esModule?F:{default:F}}const n=t.default}(l)),l}var f,y;function C(){if(y)return f;y=1;let e=E();return f=(e.__esModule?e:{default:e}).default,f}var P=C();const A=v(P),j=e=>({fontFamily:e.fontFamily?i.keys(e.fontFamily).reduce((r,n)=>({...r,[n.replace("font-","")]:`var(--${n})`}),{}):{},borderRadius:e.borderRadius?{lg:"var(--radius)",md:"calc(var(--radius) - 2px)",sm:"calc(var(--radius) - 4px)"}:{},colors:e.colors?i.flatten(e.colors.map(r=>Object.entries(r.items))).reduce((r,[n])=>({...r,[n]:`hsl(var(--${n}))`}),{}):{}});function $(e){const t=/^#?([a-f\d]{2})([a-f\d]{2})([a-f\d]{2})$/i.exec(e);let r=parseInt(t[1],16),n=parseInt(t[2],16),F=parseInt(t[3],16);r/=255,n/=255,F/=255;const o=Math.max(r,n,F),u=Math.min(r,n,F);let a,d;const g=(o+u)/2;if(o==u)a=d=0;else{const s=o-u;switch(d=g>.5?s/(2-o-u):s/(o+u),o){case r:a=(n-F)/s+(n<F?6:0);break;case n:a=(F-r)/s+2;break;case F:a=(r-n)/s+4;break}a/=6}return`${Math.round(a*360)} ${Math.round(d*100)}% ${Math.round(g*100)}%`}const M=e=>{const r=h.getAllRegisteredFonts().find(n=>n.family===e);return`"${e}", ${i.get(r,"fallback","")}`},q=e=>`:root {
|
|
2
|
-
${e.fontFamily&&Object.entries(e.fontFamily).map(([t,r])=>`--font-${t}: ${M(r)};`).join(`
|
|
3
|
-
`)}
|
|
4
|
-
${e.borderRadius&&`--radius: ${e.borderRadius};`}
|
|
5
|
-
${e.colors&&Object.entries(e.colors).map(([t,r])=>`--${t}: ${$(r[0])};`).join(`
|
|
6
|
-
`)}
|
|
7
|
-
}
|
|
8
|
-
.dark {
|
|
9
|
-
${e.colors&&Object.entries(e.colors).map(([t,r])=>`--${t}: ${$(r[1])};`).join(`
|
|
10
|
-
`)}
|
|
11
|
-
}`,O=e=>!e||e.length===0?"":i.uniqBy(e,"family").map(t=>`<link rel="stylesheet" href="${t.url}" />`).join(`
|
|
12
|
-
`),k=e=>!e||e.length===0?"":i.uniqBy(e,"family").map(t=>`@import url("${t.url}");`).join(`
|
|
13
|
-
`),R=e=>!e||e.length===0?"":i.uniqBy(e,"family").map(t=>t.src.map(r=>`@font-face {
|
|
14
|
-
font-family: "${t.family}";
|
|
15
|
-
src: url("${r.url}") format("${r.format}");
|
|
16
|
-
font-display: swap;
|
|
17
|
-
${r.fontWeight?`font-weight: ${r.fontWeight};`:""}
|
|
18
|
-
${r.fontStyle?`font-style: ${r.fontStyle};`:""}
|
|
19
|
-
${r.fontStretch?`font-stretch: ${r.fontStretch};`:""}
|
|
20
|
-
}`).join(`
|
|
21
|
-
`)).join(`
|
|
22
|
-
`);exports.defaultThemeOptions=b;exports.defaultThemeValues=B;exports.getChaiThemeCssVariables=q;exports.getChaiThemeOptions=j;exports.getThemeCustomFontFace=R;exports.getThemeFontsCSSImport=k;exports.getThemeFontsLinkMarkup=O;exports.plugin=A;
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
"use strict";const a="#styles:",r="__ADD_BLOCK_INTERNAL_ROOT",n=s=>{if(s=s.replace(a,""),!s)return{baseClasses:"",classes:""};const e=s.split(/,(?![^\[]*\])/);if(e.length===1)return{baseClasses:"",classes:e[0].trim()};const[t,...l]=e;return{baseClasses:t.trim(),classes:l.join(",").trim().replace(/ +(?= )/g,"")}};exports.ROOT_TEMP_KEY=r;exports.STYLES_KEY=a;exports.getSplitChaiClasses=n;
|
|
@@ -1,48 +0,0 @@
|
|
|
1
|
-
const t = "#styles:", n = "__ADD_BLOCK_INTERNAL_ROOT", r = (s) => {
|
|
2
|
-
if (s = s.replace(t, ""), !s) return { baseClasses: "", classes: "" };
|
|
3
|
-
const e = s.split(/,(?![^\[]*\])/);
|
|
4
|
-
if (e.length === 1)
|
|
5
|
-
return { baseClasses: "", classes: e[0].trim() };
|
|
6
|
-
const [a, ...l] = e;
|
|
7
|
-
return {
|
|
8
|
-
baseClasses: a.trim(),
|
|
9
|
-
classes: l.join(",").trim().replace(/ +(?= )/g, "")
|
|
10
|
-
};
|
|
11
|
-
};
|
|
12
|
-
import.meta.vitest && describe("getSplitChaiClasses", () => {
|
|
13
|
-
it("should return the base classes and the classes", () => {
|
|
14
|
-
const s = {
|
|
15
|
-
",styles-2": { baseClasses: "", classes: "styles-2" },
|
|
16
|
-
"styles-1,styles-2": { baseClasses: "styles-1", classes: "styles-2" },
|
|
17
|
-
",bg-[linear-gradient(-10deg,black,transparent_100%)]": {
|
|
18
|
-
baseClasses: "",
|
|
19
|
-
classes: "bg-[linear-gradient(-10deg,black,transparent_100%)]"
|
|
20
|
-
},
|
|
21
|
-
"styles-1,bg-[linear-gradient(-10deg,black,transparent_100%)]": {
|
|
22
|
-
baseClasses: "styles-1",
|
|
23
|
-
classes: "bg-[linear-gradient(-10deg,black,transparent_100%)]"
|
|
24
|
-
},
|
|
25
|
-
someclass: {
|
|
26
|
-
baseClasses: "",
|
|
27
|
-
classes: "someclass"
|
|
28
|
-
},
|
|
29
|
-
",bg-red-500 text-center font-bold": {
|
|
30
|
-
baseClasses: "",
|
|
31
|
-
classes: "bg-red-500 text-center font-bold"
|
|
32
|
-
},
|
|
33
|
-
"bg-[linear-gradient(-10deg,black,transparent_100%)], bg-[linear-gradient(-10deg,black,transparent_100%)]": {
|
|
34
|
-
baseClasses: "bg-[linear-gradient(-10deg,black,transparent_100%)]",
|
|
35
|
-
classes: "bg-[linear-gradient(-10deg,black,transparent_100%)]"
|
|
36
|
-
}
|
|
37
|
-
};
|
|
38
|
-
for (let e in s) {
|
|
39
|
-
const a = r(`${t}${e}`);
|
|
40
|
-
expect(a).toEqual(s[e]);
|
|
41
|
-
}
|
|
42
|
-
});
|
|
43
|
-
});
|
|
44
|
-
export {
|
|
45
|
-
n as R,
|
|
46
|
-
t as S,
|
|
47
|
-
r as g
|
|
48
|
-
};
|
package/dist/plugin-DW1HhfzA.js
DELETED
|
@@ -1,24 +0,0 @@
|
|
|
1
|
-
import { g as r, d as a, p as i } from "./chai-theme-helpers-CfZwxV6S.js";
|
|
2
|
-
const t = (n = a) => ({
|
|
3
|
-
container: {
|
|
4
|
-
center: !0,
|
|
5
|
-
padding: "1rem",
|
|
6
|
-
screens: { "2xl": "1400px" }
|
|
7
|
-
},
|
|
8
|
-
...r(n)
|
|
9
|
-
}), l = i(function({ addBase: n, theme: o }) {
|
|
10
|
-
n({
|
|
11
|
-
"h1,h2,h3,h4,h5,h6": {
|
|
12
|
-
fontFamily: o("fontFamily.heading")
|
|
13
|
-
},
|
|
14
|
-
body: {
|
|
15
|
-
fontFamily: o("fontFamily.body"),
|
|
16
|
-
color: o("colors.foreground"),
|
|
17
|
-
backgroundColor: o("colors.background")
|
|
18
|
-
}
|
|
19
|
-
});
|
|
20
|
-
});
|
|
21
|
-
export {
|
|
22
|
-
l as c,
|
|
23
|
-
t as g
|
|
24
|
-
};
|
package/dist/plugin-kqWzHDpF.cjs
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
"use strict";const o=require("./chai-theme-helpers-utzv3TbX.cjs"),n=(i=o.defaultThemeOptions)=>({container:{center:!0,padding:"1rem",screens:{"2xl":"1400px"}},...o.getChaiThemeOptions(i)}),r=o.plugin(function({addBase:i,theme:e}){i({"h1,h2,h3,h4,h5,h6":{fontFamily:e("fontFamily.heading")},body:{fontFamily:e("fontFamily.body"),color:e("colors.foreground"),backgroundColor:e("colors.background")}})});exports.chaiBuilderPlugin=r;exports.getChaiBuilderTheme=n;
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
"use strict";const o=require("react/jsx-runtime"),Je=require("react"),Ke=require("@radix-ui/react-accordion"),g=require("@radix-ui/react-icons"),h=require("class-variance-authority"),Qe=require("@radix-ui/react-alert-dialog"),Ue=require("@radix-ui/react-slot"),We=require("@radix-ui/react-avatar"),c=require("cmdk"),Xe=require("@radix-ui/react-dialog"),Ye=require("@radix-ui/react-dropdown-menu"),Ze=require("@radix-ui/react-hover-card"),$e=require("@radix-ui/react-label"),et=require("@radix-ui/react-popover"),tt=require("@radix-ui/react-scroll-area"),at=require("@radix-ui/react-separator"),ot=require("next-themes"),st=require("sonner"),rt=require("@radix-ui/react-switch"),nt=require("@radix-ui/react-tabs"),it=require("@radix-ui/react-tooltip"),dt=require("clsx"),lt=require("tailwind-merge");function m(e){const t=Object.create(null,{[Symbol.toStringTag]:{value:"Module"}});if(e){for(const a in e)if(a!=="default"){const n=Object.getOwnPropertyDescriptor(e,a);Object.defineProperty(t,a,n.get?n:{enumerable:!0,get:()=>e[a]})}}return t.default=e,Object.freeze(t)}const r=m(Je),f=m(Ke),l=m(Qe),b=m(We),i=m(Xe),d=m(Ye),v=m(Ze),T=m($e),N=m(et),u=m(tt),k=m(at),C=m(rt),x=m(nt),y=m(it),s=(...e)=>lt.twMerge(dt.clsx(e)),ct=f.Root,S=r.forwardRef(({className:e,...t},a)=>o.jsx(f.Item,{ref:a,className:s("border-b",e),...t}));S.displayName="AccordionItem";const A=r.forwardRef(({className:e,children:t,...a},n)=>o.jsx(f.Header,{className:"flex",children:o.jsxs(f.Trigger,{ref:n,className:s("flex flex-1 items-center justify-between py-4 text-sm font-medium transition-all hover:underline [&[data-state=open]>svg]:rotate-180",e),...a,children:[t,a.hideArrow?null:o.jsx(g.ChevronDownIcon,{className:"h-4 w-4 shrink-0 text-muted-foreground transition-transform duration-200"})]})}));A.displayName=f.Trigger.displayName;const P=r.forwardRef(({className:e,children:t,...a},n)=>o.jsx(f.Content,{ref:n,className:s("text-sm data-[state=closed]:animate-accordion-up data-[state=open]:animate-accordion-down",e),...a,children:o.jsx("div",{className:"pb-4 pt-0",children:t})}));P.displayName=f.Content.displayName;const mt=h.cva("relative w-full rounded-lg border px-4 py-3 text-sm [&:has(svg)]:pl-11 [&>svg+div]:translate-y-[-3px] [&>svg]:absolute [&>svg]:left-4 [&>svg]:top-4 [&>svg]:text-foreground",{variants:{variant:{default:"bg-background text-foreground",destructive:"border-destructive/50 text-destructive dark:border-destructive [&>svg]:text-destructive"}},defaultVariants:{variant:"default"}}),_=r.forwardRef(({className:e,variant:t,...a},n)=>o.jsx("div",{ref:n,role:"alert",className:s(mt({variant:t}),e),...a}));_.displayName="Alert";const I=r.forwardRef(({className:e,...t},a)=>o.jsx("h5",{ref:a,className:s("mb-1 font-medium leading-none tracking-tight",e),...t}));I.displayName="AlertTitle";const M=r.forwardRef(({className:e,...t},a)=>o.jsx("div",{ref:a,className:s("text-sm [&_p]:leading-relaxed",e),...t}));M.displayName="AlertDescription";const w=h.cva("inline-flex items-center justify-center rounded-md text-sm font-medium transition-colors focus-visible:outline-none focus-visible:ring-1 focus-visible:ring-ring disabled:pointer-events-none disabled:opacity-50",{variants:{variant:{default:"bg-primary text-primary-foreground shadow hover:bg-primary/90",destructive:"bg-destructive text-destructive-foreground shadow-sm hover:bg-destructive/90",outline:"border border-input bg-background shadow-sm hover:bg-accent hover:text-accent-foreground",secondary:"bg-secondary text-secondary-foreground shadow-sm hover:bg-secondary/80",ghost:"hover:bg-accent hover:text-accent-foreground",link:"text-primary underline-offset-4 hover:underline"},size:{default:"h-9 px-4 py-2",sm:"h-8 rounded-md px-3 text-xs",lg:"h-10 rounded-md px-8",icon:"h-9 w-9"}},defaultVariants:{variant:"default",size:"default"}}),z=r.forwardRef(({className:e,variant:t,size:a,asChild:n=!1,...p},Be)=>{const Ee=n?Ue.Slot:"button";return o.jsx(Ee,{className:s(w({variant:t,size:a,className:e})),ref:Be,...p})});z.displayName="Button";const pt=l.Root,ut=l.Trigger,q=({className:e,...t})=>o.jsx(l.Portal,{className:s(e),...t});q.displayName=l.Portal.displayName;const H=r.forwardRef(({className:e,...t},a)=>o.jsx(l.Overlay,{className:s("fixed inset-0 z-50 bg-background/80 backdrop-blur-sm data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0",e),...t,ref:a}));H.displayName=l.Overlay.displayName;const F=r.forwardRef(({className:e,...t},a)=>o.jsxs(q,{children:[o.jsx(H,{}),o.jsx(l.Content,{ref:a,className:s("fixed left-[50%] top-[50%] z-50 grid w-full max-w-lg translate-x-[-50%] translate-y-[-50%] gap-4 border bg-background p-6 shadow-lg duration-200 data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 data-[state=closed]:slide-out-to-left-1/2 data-[state=closed]:slide-out-to-top-[48%] data-[state=open]:slide-in-from-left-1/2 data-[state=open]:slide-in-from-top-[48%] sm:rounded-lg md:w-full",e),...t})]}));F.displayName=l.Content.displayName;const L=({className:e,...t})=>o.jsx("div",{className:s("flex flex-col space-y-2 text-center sm:text-left",e),...t});L.displayName="AlertDialogHeader";const O=({className:e,...t})=>o.jsx("div",{className:s("flex flex-col-reverse sm:flex-row sm:justify-end sm:space-x-2",e),...t});O.displayName="AlertDialogFooter";const V=r.forwardRef(({className:e,...t},a)=>o.jsx(l.Title,{ref:a,className:s("text-lg font-semibold",e),...t}));V.displayName=l.Title.displayName;const G=r.forwardRef(({className:e,...t},a)=>o.jsx(l.Description,{ref:a,className:s("text-sm text-muted-foreground",e),...t}));G.displayName=l.Description.displayName;const B=r.forwardRef(({className:e,...t},a)=>o.jsx(l.Action,{ref:a,className:s(w(),e),...t}));B.displayName=l.Action.displayName;const E=r.forwardRef(({className:e,...t},a)=>o.jsx(l.Cancel,{ref:a,className:s(w({variant:"outline"}),"mt-2 sm:mt-0",e),...t}));E.displayName=l.Cancel.displayName;const J=r.forwardRef(({className:e,...t},a)=>o.jsx(b.Root,{ref:a,className:s("relative flex h-10 w-10 shrink-0 overflow-hidden rounded-full",e),...t}));J.displayName=b.Root.displayName;const K=r.forwardRef(({className:e,...t},a)=>o.jsx(b.Image,{ref:a,className:s("aspect-square h-full w-full",e),...t}));K.displayName=b.Image.displayName;const Q=r.forwardRef(({className:e,...t},a)=>o.jsx(b.Fallback,{ref:a,className:s("flex h-full w-full items-center justify-center rounded-full bg-muted",e),...t}));Q.displayName=b.Fallback.displayName;const U=h.cva("inline-flex items-center rounded-md border px-2.5 py-0.5 text-xs font-semibold transition-colors focus:outline-none focus:ring-2 focus:ring-ring focus:ring-offset-2",{variants:{variant:{default:"border-transparent bg-primary text-primary-foreground shadow hover:bg-primary/80",secondary:"border-transparent bg-secondary text-secondary-foreground hover:bg-secondary/80",destructive:"border-transparent bg-destructive text-destructive-foreground shadow hover:bg-destructive/80",outline:"text-foreground"}},defaultVariants:{variant:"default"}}),ft=({className:e,variant:t,...a})=>o.jsx("div",{className:s(U({variant:t}),e),...a}),W=r.forwardRef(({className:e,...t},a)=>o.jsx("div",{ref:a,className:s("rounded-xl border bg-card text-card-foreground shadow",e),...t}));W.displayName="Card";const X=r.forwardRef(({className:e,...t},a)=>o.jsx("div",{ref:a,className:s("flex flex-col space-y-1.5 p-6",e),...t}));X.displayName="CardHeader";const Y=r.forwardRef(({className:e,...t},a)=>o.jsx("h3",{ref:a,className:s("font-semibold leading-none tracking-tight",e),...t}));Y.displayName="CardTitle";const Z=r.forwardRef(({className:e,...t},a)=>o.jsx("p",{ref:a,className:s("text-sm text-muted-foreground",e),...t}));Z.displayName="CardDescription";const $=r.forwardRef(({className:e,...t},a)=>o.jsx("div",{ref:a,className:s("p-6 pt-0",e),...t}));$.displayName="CardContent";const ee=r.forwardRef(({className:e,...t},a)=>o.jsx("div",{ref:a,className:s(" flex items-center p-6 pt-0",e),...t}));ee.displayName="CardFooter";const te=i.Root,gt=i.Trigger,ae=({className:e,...t})=>o.jsx(i.Portal,{className:s(e),...t});ae.displayName=i.Portal.displayName;const oe=r.forwardRef(({className:e,...t},a)=>o.jsx(i.Overlay,{ref:a,className:s("fixed inset-0 z-50 bg-background/80 backdrop-blur-sm data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0",e),...t}));oe.displayName=i.Overlay.displayName;const j=r.forwardRef(({className:e,children:t,...a},n)=>o.jsxs(ae,{children:[o.jsx(oe,{}),o.jsxs(i.Content,{ref:n,className:s("fixed left-[50%] top-[50%] z-[999] grid w-full max-w-lg translate-x-[-50%] translate-y-[-50%] gap-4 border bg-background p-6 shadow-lg duration-200 data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 data-[state=closed]:slide-out-to-left-1/2 data-[state=closed]:slide-out-to-top-[48%] data-[state=open]:slide-in-from-left-1/2 data-[state=open]:slide-in-from-top-[48%] sm:rounded-lg md:w-full",e),...a,children:[t,o.jsxs(i.Close,{className:"absolute right-4 top-4 rounded-sm opacity-70 ring-offset-background transition-opacity hover:opacity-100 focus:outline-none 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",children:[o.jsx(g.Cross2Icon,{className:"h-4 w-4"}),o.jsx("span",{className:"sr-only",children:"Close"})]})]})]}));j.displayName=i.Content.displayName;const se=({className:e,...t})=>o.jsx("div",{className:s("flex flex-col space-y-1.5 text-center sm:text-left",e),...t});se.displayName="DialogHeader";const re=({className:e,...t})=>o.jsx("div",{className:s("flex flex-col-reverse sm:flex-row sm:justify-end sm:space-x-2",e),...t});re.displayName="DialogFooter";const ne=r.forwardRef(({className:e,...t},a)=>o.jsx(i.Title,{ref:a,className:s("text-lg font-semibold leading-none tracking-tight",e),...t}));ne.displayName=i.Title.displayName;const ie=r.forwardRef(({className:e,...t},a)=>o.jsx(i.Description,{ref:a,className:s("text-sm text-muted-foreground",e),...t}));ie.displayName=i.Description.displayName;const D=r.forwardRef(({className:e,...t},a)=>o.jsx(c.Command,{ref:a,className:s("flex h-full w-full flex-col overflow-hidden rounded-md bg-popover text-popover-foreground",e),...t}));D.displayName=c.Command.displayName;const xt=({children:e,...t})=>o.jsx(te,{...t,children:o.jsx(j,{className:"overflow-hidden p-0",children:o.jsx(D,{className:"[&_[cmdk-group-heading]]:px-2 [&_[cmdk-group-heading]]:font-medium [&_[cmdk-group-heading]]:text-muted-foreground [&_[cmdk-group]:not([hidden])_~[cmdk-group]]:pt-0 [&_[cmdk-group]]:px-2 [&_[cmdk-input-wrapper]_svg]:h-5 [&_[cmdk-input-wrapper]_svg]:w-5 [&_[cmdk-input]]:h-12 [&_[cmdk-item]]:px-2 [&_[cmdk-item]]:py-3 [&_[cmdk-item]_svg]:h-5 [&_[cmdk-item]_svg]:w-5",children:e})})}),de=r.forwardRef(({className:e,...t},a)=>o.jsxs("div",{className:"flex items-center border-b px-3","cmdk-input-wrapper":"",children:[o.jsx(g.MagnifyingGlassIcon,{className:"mr-2 h-4 w-4 shrink-0 opacity-50"}),o.jsx(c.Command.Input,{ref:a,className:s("flex h-10 w-full rounded-md bg-transparent py-3 text-sm outline-none placeholder:text-muted-foreground disabled:cursor-not-allowed disabled:opacity-50",e),...t})]}));de.displayName=c.Command.Input.displayName;const le=r.forwardRef(({className:e,...t},a)=>o.jsx(c.Command.List,{ref:a,className:s("max-h-[300px] overflow-y-auto overflow-x-hidden",e),...t}));le.displayName=c.Command.List.displayName;const ce=r.forwardRef((e,t)=>o.jsx(c.Command.Empty,{ref:t,className:"py-6 text-center text-sm",...e}));ce.displayName=c.Command.Empty.displayName;const me=r.forwardRef(({className:e,...t},a)=>o.jsx(c.Command.Group,{ref:a,className:s("overflow-hidden p-1 text-foreground [&_[cmdk-group-heading]]:px-2 [&_[cmdk-group-heading]]:py-1.5 [&_[cmdk-group-heading]]:text-xs [&_[cmdk-group-heading]]:font-medium [&_[cmdk-group-heading]]:text-muted-foreground",e),...t}));me.displayName=c.Command.Group.displayName;const pe=r.forwardRef(({className:e,...t},a)=>o.jsx(c.Command.Separator,{ref:a,className:s("-mx-1 h-px bg-border",e),...t}));pe.displayName=c.Command.Separator.displayName;const ue=r.forwardRef(({className:e,...t},a)=>o.jsx(c.Command.Item,{ref:a,className:s("relative flex cursor-default select-none items-center rounded-sm px-2 py-1.5 text-sm outline-none aria-selected:bg-accent aria-selected:text-accent-foreground data-[disabled]:pointer-events-none data-[disabled]:opacity-50",e),...t}));ue.displayName=c.Command.Item.displayName;const fe=({className:e,...t})=>o.jsx("span",{className:s("ml-auto text-xs tracking-widest text-muted-foreground",e),...t});fe.displayName="CommandShortcut";const bt=d.Root,yt=d.Trigger,Nt=d.Group,ht=d.Portal,vt=d.Sub,wt=d.RadioGroup,ge=r.forwardRef(({className:e,inset:t,children:a,...n},p)=>o.jsxs(d.SubTrigger,{ref:p,className:s("flex cursor-default select-none items-center rounded-sm px-2 py-1.5 text-sm outline-none focus:bg-accent data-[state=open]:bg-accent",t&&"pl-8",e),...n,children:[a,o.jsx(g.ChevronRightIcon,{className:"ml-auto h-4 w-4"})]}));ge.displayName=d.SubTrigger.displayName;const xe=r.forwardRef(({className:e,...t},a)=>o.jsx(d.SubContent,{ref:a,className:s("z-50 min-w-[8rem] overflow-hidden rounded-md border bg-popover p-1 text-popover-foreground shadow-lg data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2",e),...t}));xe.displayName=d.SubContent.displayName;const be=r.forwardRef(({className:e,sideOffset:t=4,...a},n)=>o.jsx(d.Portal,{children:o.jsx(d.Content,{ref:n,sideOffset:t,className:s("z-50 min-w-[8rem] overflow-hidden rounded-md border bg-popover p-1 text-popover-foreground shadow-md","data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2",e),...a})}));be.displayName=d.Content.displayName;const ye=r.forwardRef(({className:e,inset:t,...a},n)=>o.jsx(d.Item,{ref:n,className:s("relative flex cursor-default select-none items-center rounded-sm px-2 py-1.5 text-sm outline-none transition-colors focus:bg-accent focus:text-accent-foreground data-[disabled]:pointer-events-none data-[disabled]:opacity-50",t&&"pl-8",e),...a}));ye.displayName=d.Item.displayName;const Ne=r.forwardRef(({className:e,children:t,checked:a,...n},p)=>o.jsxs(d.CheckboxItem,{ref:p,className:s("relative flex cursor-default select-none items-center rounded-sm py-1.5 pl-8 pr-2 text-sm outline-none transition-colors focus:bg-accent focus:text-accent-foreground data-[disabled]:pointer-events-none data-[disabled]:opacity-50",e),checked:a,...n,children:[o.jsx("span",{className:"absolute left-2 flex h-3.5 w-3.5 items-center justify-center",children:o.jsx(d.ItemIndicator,{children:o.jsx(g.CheckIcon,{className:"h-4 w-4"})})}),t]}));Ne.displayName=d.CheckboxItem.displayName;const he=r.forwardRef(({className:e,children:t,...a},n)=>o.jsxs(d.RadioItem,{ref:n,className:s("relative flex cursor-default select-none items-center rounded-sm py-1.5 pl-8 pr-2 text-sm outline-none transition-colors focus:bg-accent focus:text-accent-foreground data-[disabled]:pointer-events-none data-[disabled]:opacity-50",e),...a,children:[o.jsx("span",{className:"absolute left-2 flex h-3.5 w-3.5 items-center justify-center",children:o.jsx(d.ItemIndicator,{children:o.jsx(g.DotFilledIcon,{className:"h-4 w-4 fill-current"})})}),t]}));he.displayName=d.RadioItem.displayName;const ve=r.forwardRef(({className:e,inset:t,...a},n)=>o.jsx(d.Label,{ref:n,className:s("px-2 py-1.5 text-sm font-semibold",t&&"pl-8",e),...a}));ve.displayName=d.Label.displayName;const we=r.forwardRef(({className:e,...t},a)=>o.jsx(d.Separator,{ref:a,className:s("-mx-1 my-1 h-px bg-muted",e),...t}));we.displayName=d.Separator.displayName;const Ce=({className:e,...t})=>o.jsx("span",{className:s("ml-auto text-xs tracking-widest opacity-60",e),...t});Ce.displayName="DropdownMenuShortcut";const Ct=v.Root,jt=v.Trigger,je=r.forwardRef(({className:e,align:t="center",sideOffset:a=4,...n},p)=>o.jsx(v.Content,{ref:p,align:t,sideOffset:a,className:s("z-50 w-64 rounded-md border bg-popover p-4 text-popover-foreground shadow-md outline-none data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2",e),...n}));je.displayName=v.Content.displayName;const De=r.forwardRef(({className:e,type:t,...a},n)=>o.jsx("input",{type:t,className:s("flex h-9 w-full rounded-md border border-border bg-background px-3 py-1 text-sm shadow-sm transition-colors file:border-0 file:bg-transparent file:text-sm file:font-medium placeholder:text-muted-foreground focus-visible:outline-none focus-visible:ring-1 focus-visible:ring-ring disabled:cursor-not-allowed disabled:opacity-50",e),ref:n,...a,autoCapitalize:"off",autoCorrect:"off",spellCheck:"false"}));De.displayName="Input";const Dt=h.cva("text-sm font-medium leading-none peer-disabled:cursor-not-allowed peer-disabled:opacity-70"),Re=r.forwardRef(({className:e,...t},a)=>o.jsx(T.Root,{ref:a,className:s(Dt(),e),...t}));Re.displayName=T.Root.displayName;const Rt=N.Root,Tt=N.Trigger,Te=r.forwardRef(({className:e,align:t="center",sideOffset:a=4,...n},p)=>o.jsx(N.Portal,{children:o.jsx(N.Content,{ref:p,align:t,sideOffset:a,className:s("z-50 w-72 rounded-md border bg-popover p-4 text-popover-foreground shadow-md outline-none data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2",e),...n})}));Te.displayName=N.Content.displayName;const ke=r.forwardRef(({className:e,children:t,...a},n)=>o.jsxs(u.Root,{ref:n,className:s("relative overflow-hidden",e),...a,children:[o.jsx(u.Viewport,{className:"h-full w-full rounded-[inherit]",children:t}),o.jsx(R,{}),o.jsx(u.Corner,{})]}));ke.displayName=u.Root.displayName;const R=r.forwardRef(({className:e,orientation:t="vertical",...a},n)=>o.jsx(u.ScrollAreaScrollbar,{ref:n,orientation:t,className:s("flex touch-none select-none transition-colors",t==="vertical"&&"h-full w-2.5 border-l border-l-transparent p-[1px]",t==="horizontal"&&"h-2.5 border-t border-t-transparent p-[1px]",e),...a,children:o.jsx(u.ScrollAreaThumb,{className:"relative flex-1 rounded-full bg-border"})}));R.displayName=u.ScrollAreaScrollbar.displayName;const Se=r.forwardRef(({className:e,orientation:t="horizontal",decorative:a=!0,...n},p)=>o.jsx(k.Root,{ref:p,decorative:a,orientation:t,className:s("shrink-0 bg-border",t==="horizontal"?"h-[1px] w-full":"h-full w-[1px]",e),...n}));Se.displayName=k.Root.displayName;const kt=i.Root,St=i.Trigger,At=i.Close,Ae=({className:e,...t})=>o.jsx(i.Portal,{className:s(e),...t});Ae.displayName=i.Portal.displayName;const Pe=r.forwardRef(({className:e,...t},a)=>o.jsx(i.Overlay,{className:s("fixed inset-0 z-50 bg-background/80 backdrop-blur-sm data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0",e),...t,ref:a}));Pe.displayName=i.Overlay.displayName;const Pt=h.cva("fixed z-50 gap-4 bg-background p-6 shadow-lg transition ease-in-out data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:duration-300 data-[state=open]:duration-500",{variants:{side:{top:"inset-x-0 top-0 border-b data-[state=closed]:slide-out-to-top data-[state=open]:slide-in-from-top",bottom:"inset-x-0 bottom-0 border-t data-[state=closed]:slide-out-to-bottom data-[state=open]:slide-in-from-bottom",left:"inset-y-0 left-0 h-full w-3/4 border-r data-[state=closed]:slide-out-to-left data-[state=open]:slide-in-from-left sm:max-w-sm",right:"inset-y-0 right-0 h-full w-3/4 border-l data-[state=closed]:slide-out-to-right data-[state=open]:slide-in-from-right sm:max-w-sm"}},defaultVariants:{side:"right"}}),_e=r.forwardRef(({side:e="right",className:t,children:a,...n},p)=>o.jsxs(Ae,{children:[o.jsx(Pe,{}),o.jsxs(i.Content,{ref:p,className:s(Pt({side:e}),t),...n,children:[a,o.jsxs(i.Close,{className:"absolute right-4 top-4 rounded-sm opacity-70 ring-offset-background transition-opacity hover:opacity-100 focus:outline-none focus:ring-2 focus:ring-ring focus:ring-offset-2 disabled:pointer-events-none data-[state=open]:bg-secondary",children:[o.jsx(g.Cross2Icon,{className:"h-4 w-4"}),o.jsx("span",{className:"sr-only",children:"Close"})]})]})]}));_e.displayName=i.Content.displayName;const Ie=({className:e,...t})=>o.jsx("div",{className:s("flex flex-col space-y-2 text-center sm:text-left",e),...t});Ie.displayName="SheetHeader";const Me=({className:e,...t})=>o.jsx("div",{className:s("flex flex-col-reverse sm:flex-row sm:justify-end sm:space-x-2",e),...t});Me.displayName="SheetFooter";const ze=r.forwardRef(({className:e,...t},a)=>o.jsx(i.Title,{ref:a,className:s("text-lg font-semibold text-foreground",e),...t}));ze.displayName=i.Title.displayName;const qe=r.forwardRef(({className:e,...t},a)=>o.jsx(i.Description,{ref:a,className:s("text-sm text-muted-foreground",e),...t}));qe.displayName=i.Description.displayName;const _t=({className:e,...t})=>o.jsx("div",{className:s("animate-pulse rounded-md bg-primary/10",e),...t}),It=({...e})=>{const{theme:t="system"}=ot.useTheme();return o.jsx(st.Toaster,{theme:t,className:"toaster group",toastOptions:{classNames:{toast:"group toast group-[.toaster]:bg-background group-[.toaster]:text-foreground group-[.toaster]:border-border group-[.toaster]:shadow-lg",description:"group-[.toast]:text-muted-foreground",actionButton:"group-[.toast]:bg-primary group-[.toast]:text-primary-foreground",cancelButton:"group-[.toast]:bg-muted group-[.toast]:text-muted-foreground"}},...e})},He=r.forwardRef(({className:e,...t},a)=>o.jsx(C.Root,{className:s("peer inline-flex h-[24px] w-[44px] shrink-0 cursor-pointer items-center rounded-full border-2 border-transparent transition-colors focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-slate-400 focus-visible:ring-offset-2 focus-visible:ring-offset-white disabled:cursor-not-allowed disabled:opacity-50 data-[state=checked]:bg-slate-900 data-[state=unchecked]:bg-slate-200 dark:focus-visible:ring-slate-800 dark:focus-visible:ring-offset-slate-950 dark:data-[state=checked]:bg-slate-50 dark:data-[state=unchecked]:bg-slate-800",e),...t,ref:a,children:o.jsx(C.Thumb,{className:s("pointer-events-none block h-5 w-5 rounded-full bg-white shadow-lg ring-0 transition-transform data-[state=checked]:translate-x-5 data-[state=unchecked]:translate-x-0 dark:bg-slate-950")})}));He.displayName=C.Root.displayName;const Mt=x.Root,Fe=r.forwardRef(({className:e,...t},a)=>o.jsx(x.List,{ref:a,className:s("inline-flex h-9 items-center justify-center rounded-lg bg-muted p-1 text-muted-foreground",e),...t}));Fe.displayName=x.List.displayName;const Le=r.forwardRef(({className:e,...t},a)=>o.jsx(x.Trigger,{ref:a,className:s("inline-flex items-center justify-center whitespace-nowrap rounded-md px-3 py-1 text-sm font-medium ring-offset-background transition-all focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2 disabled:pointer-events-none disabled:opacity-50 data-[state=active]:bg-background data-[state=active]:text-foreground data-[state=active]:shadow",e),...t}));Le.displayName=x.Trigger.displayName;const Oe=r.forwardRef(({className:e,...t},a)=>o.jsx(x.Content,{ref:a,className:s("mt-2 ring-offset-background focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2",e),...t}));Oe.displayName=x.Content.displayName;const Ve=r.forwardRef(({className:e,...t},a)=>o.jsx("textarea",{className:s("flex min-h-[60px] w-full rounded-md border border-input bg-transparent px-3 py-2 text-sm shadow-sm placeholder:text-muted-foreground focus-visible:outline-none focus-visible:ring-1 focus-visible:ring-ring disabled:cursor-not-allowed disabled:opacity-50",e),ref:a,...t,autoCapitalize:"off",autoCorrect:"off",spellCheck:"false"}));Ve.displayName="Textarea";const zt=y.Portal,qt=y.Provider,Ht=y.Root,Ft=y.Trigger,Ge=r.forwardRef(({className:e,sideOffset:t=4,...a},n)=>o.jsx(y.Content,{ref:n,sideOffset:t,className:s("z-50 overflow-hidden rounded-md bg-primary px-3 py-1.5 text-xs text-primary-foreground animate-in fade-in-0 zoom-in-95 data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=closed]:zoom-out-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",e),...a}));Ge.displayName=y.Content.displayName;exports.Accordion=ct;exports.AccordionContent=P;exports.AccordionItem=S;exports.AccordionTrigger=A;exports.Alert=_;exports.AlertDescription=M;exports.AlertDialog=pt;exports.AlertDialogAction=B;exports.AlertDialogCancel=E;exports.AlertDialogContent=F;exports.AlertDialogDescription=G;exports.AlertDialogFooter=O;exports.AlertDialogHeader=L;exports.AlertDialogTitle=V;exports.AlertDialogTrigger=ut;exports.AlertTitle=I;exports.Avatar=J;exports.AvatarFallback=Q;exports.AvatarImage=K;exports.Badge=ft;exports.Button=z;exports.Card=W;exports.CardContent=$;exports.CardDescription=Z;exports.CardFooter=ee;exports.CardHeader=X;exports.CardTitle=Y;exports.Command=D;exports.CommandDialog=xt;exports.CommandEmpty=ce;exports.CommandGroup=me;exports.CommandInput=de;exports.CommandItem=ue;exports.CommandList=le;exports.CommandSeparator=pe;exports.CommandShortcut=fe;exports.Dialog=te;exports.DialogContent=j;exports.DialogDescription=ie;exports.DialogFooter=re;exports.DialogHeader=se;exports.DialogTitle=ne;exports.DialogTrigger=gt;exports.DropdownMenu=bt;exports.DropdownMenuCheckboxItem=Ne;exports.DropdownMenuContent=be;exports.DropdownMenuGroup=Nt;exports.DropdownMenuItem=ye;exports.DropdownMenuLabel=ve;exports.DropdownMenuPortal=ht;exports.DropdownMenuRadioGroup=wt;exports.DropdownMenuRadioItem=he;exports.DropdownMenuSeparator=we;exports.DropdownMenuShortcut=Ce;exports.DropdownMenuSub=vt;exports.DropdownMenuSubContent=xe;exports.DropdownMenuSubTrigger=ge;exports.DropdownMenuTrigger=yt;exports.HoverCard=Ct;exports.HoverCardContent=je;exports.HoverCardTrigger=jt;exports.Input=De;exports.Label=Re;exports.Popover=Rt;exports.PopoverContent=Te;exports.PopoverTrigger=Tt;exports.ScrollArea=ke;exports.ScrollBar=R;exports.Separator=Se;exports.Sheet=kt;exports.SheetClose=At;exports.SheetContent=_e;exports.SheetDescription=qe;exports.SheetFooter=Me;exports.SheetHeader=Ie;exports.SheetTitle=ze;exports.SheetTrigger=St;exports.Skeleton=_t;exports.Switch=He;exports.Tabs=Mt;exports.TabsContent=Oe;exports.TabsList=Fe;exports.TabsTrigger=Le;exports.Textarea=Ve;exports.Toaster=It;exports.Tooltip=Ht;exports.TooltipContent=Ge;exports.TooltipPortal=zt;exports.TooltipProvider=qt;exports.TooltipTrigger=Ft;exports.badgeVariants=U;exports.buttonVariants=w;exports.cn=s;
|