scrubbed-tailwind-components-v2 2.2.1-b → 2.2.1-d
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.
|
@@ -1 +1 @@
|
|
|
1
|
-
@starting-style{.backdrop[data-v-aaece1c7]{opacity:0}}.
|
|
1
|
+
@starting-style{.backdrop[data-v-aaece1c7]{opacity:0}}.fade-in-dialog-enter-active{transition:all .15s cubic-bezier(.08,.82,.17,1)}.fade-in-dialog-leave-active{transition:all .15s cubic-bezier(.46,.03,.52,.96)}.fade-in-dialog-enter-from,.fade-in-dialog-leave-to{transform:scale(.95);opacity:0}.fade-in-dialog-enter-active{transition-delay:.05s}p[data-v-00088154]{transition-behavior:allow-discrete}.fade-in-enter-active,.fade-in-leave-active{transition:opacity .15s ease}.fade-in-enter-from,.fade-in-leave-to{opacity:0}.slide-enter-active{transition:all .5s cubic-bezier(.08,.82,.17,1)}.slide-leave-active{transition:all .15s cubic-bezier(.46,.03,.52,.96)}.slide-enter-from,.slide-leave-to{opacity:0;transform:translate(100%)}.slide-enter-active{transition-delay:.18s}.tab[data-v-9e06f71f]{border:1px solid transparent}.tab-active[data-v-9e06f71f]{border-radius:10px;border:1px solid rgba(255,255,255,.75);background:linear-gradient(101deg,#e9eef54d 6.76%,#105fa24d 100.14%);box-shadow:0 4px 17px -1px #30537426;-webkit-backdrop-filter:blur(1px);backdrop-filter:blur(1px)}
|
|
@@ -1,11 +1,11 @@
|
|
|
1
|
-
import { inject as b, createElementBlock as l, openBlock as a, normalizeClass as
|
|
2
|
-
import { RouterLink as
|
|
1
|
+
import { inject as b, createElementBlock as l, openBlock as a, normalizeClass as m, unref as d, createElementVNode as c, renderSlot as i, createBlock as g, withCtx as p, ref as x, provide as T, resolveDynamicComponent as A, cloneVNode as S, createVNode as v, Fragment as D, Teleport as E, normalizeStyle as q, watch as U, createCommentVNode as _, resolveComponent as Y, mergeProps as y, useModel as V, withDirectives as I, vModelCheckbox as Z, onMounted as J, onUnmounted as X, Transition as R, useSlots as H, createStaticVNode as Q, createTextVNode as z, vModelText as O, mergeModels as K, vModelRadio as ee, vModelSelect as te, renderList as M, toDisplayString as N, computed as re } from "vue";
|
|
2
|
+
import { RouterLink as P, useRoute as F } from "vue-router";
|
|
3
3
|
const oe = { class: "flex w-full items-center justify-between" }, ne = { class: "flex items-center gap-2" }, ae = { class: "flex items-center gap-10" }, se = { class: "hidden gap-6 sm:flex" }, le = {
|
|
4
4
|
__name: "AppHeader",
|
|
5
5
|
setup(e) {
|
|
6
6
|
const t = b("APP_DATA"), { isSidebarToggled: r, toggleSidebar: n } = t;
|
|
7
7
|
return (o, s) => (a(), l("header", {
|
|
8
|
-
class:
|
|
8
|
+
class: m(["fixed top-0 flex h-16 w-dvw items-center justify-center bg-white/50 px-3 backdrop-blur sm:px-6", { "rounded-t-2xl": d(r) }])
|
|
9
9
|
}, [
|
|
10
10
|
c("nav", oe, [
|
|
11
11
|
c("div", ne, [
|
|
@@ -49,12 +49,12 @@ const oe = { class: "flex w-full items-center justify-between" }, ne = { class:
|
|
|
49
49
|
setup(e) {
|
|
50
50
|
const t = e;
|
|
51
51
|
return (r, n) => (a(), l("li", null, [
|
|
52
|
-
t.to.startsWith("/") ? (a(),
|
|
52
|
+
t.to.startsWith("/") ? (a(), g(d(P), {
|
|
53
53
|
key: 0,
|
|
54
54
|
class: "hover:text-primary-950 [&.router-link-active]:text-primary-950 text-xs uppercase text-neutral-600 hover:transition-all [&.router-link-active]:font-semibold",
|
|
55
55
|
to: t.to
|
|
56
56
|
}, {
|
|
57
|
-
default:
|
|
57
|
+
default: p(() => [
|
|
58
58
|
i(r.$slots, "default")
|
|
59
59
|
]),
|
|
60
60
|
_: 3
|
|
@@ -70,7 +70,7 @@ const oe = { class: "flex w-full items-center justify-between" }, ne = { class:
|
|
|
70
70
|
}, ce = { class: "relative" }, ue = { class: "flex" }, ge = {
|
|
71
71
|
__name: "AppLayout",
|
|
72
72
|
setup(e) {
|
|
73
|
-
const t =
|
|
73
|
+
const t = x(!1);
|
|
74
74
|
function r() {
|
|
75
75
|
window.innerWidth <= 640 ? (t.value = !t.value, n()) : t.value && (t.value = !1, n());
|
|
76
76
|
}
|
|
@@ -78,33 +78,37 @@ const oe = { class: "flex w-full items-center justify-between" }, ne = { class:
|
|
|
78
78
|
const o = document.querySelector("body");
|
|
79
79
|
o.classList.contains("bg-black") ? o.classList.remove("bg-black") : o.classList.add("bg-black");
|
|
80
80
|
}
|
|
81
|
-
return
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
c("div",
|
|
89
|
-
|
|
81
|
+
return T("APP_DATA", { isSidebarToggled: t, toggleSidebar: r }), (o, s) => {
|
|
82
|
+
var u, f, $, C, h, B;
|
|
83
|
+
return a(), l("div", {
|
|
84
|
+
class: m(["bg-white transition-all duration-500 ease-[cubic-bezier(.32,.72,0,1)]", {
|
|
85
|
+
"origin-[center_top] translate-y-4 scale-93": t.value
|
|
86
|
+
}])
|
|
87
|
+
}, [
|
|
88
|
+
c("div", ce, [
|
|
89
|
+
(a(), g(A(S((f = (u = o.$slots).default) == null ? void 0 : f.call(u)[0])))),
|
|
90
|
+
c("div", ue, [
|
|
91
|
+
(a(), g(A(S((C = ($ = o.$slots).default) == null ? void 0 : C.call($)[1])))),
|
|
92
|
+
(a(), g(A(S((B = (h = o.$slots).default) == null ? void 0 : B.call(h)[2]))))
|
|
93
|
+
])
|
|
90
94
|
])
|
|
91
|
-
])
|
|
92
|
-
|
|
95
|
+
], 2);
|
|
96
|
+
};
|
|
93
97
|
}
|
|
94
98
|
}, pe = {
|
|
95
99
|
__name: "AppMain",
|
|
96
100
|
setup(e) {
|
|
97
101
|
const t = b("APP_DATA"), { isSidebarToggled: r } = t;
|
|
98
102
|
return (n, o) => (a(), l("main", {
|
|
99
|
-
class:
|
|
100
|
-
"bg-background-main fixed z-[-1] h-svh w-full overflow-auto px-6 pb-9
|
|
103
|
+
class: m([
|
|
104
|
+
"bg-background-main fixed z-[-1] h-svh w-full overflow-auto px-6 pt-24 pb-9 sm:top-16 sm:ml-[223px] sm:h-[calc(100dvh-4rem)] sm:w-[calc(100dvw-223px)] sm:pt-9",
|
|
101
105
|
d(r) ? "overflow-hidden rounded-t-xl sm:rounded-none" : "sm:rounded-tl-2xl"
|
|
102
106
|
])
|
|
103
107
|
}, [
|
|
104
108
|
i(n.$slots, "default")
|
|
105
109
|
], 2));
|
|
106
110
|
}
|
|
107
|
-
},
|
|
111
|
+
}, k = (e, t) => {
|
|
108
112
|
const r = e.__vccOpts || e;
|
|
109
113
|
for (const [n, o] of t)
|
|
110
114
|
r[n] = o;
|
|
@@ -115,19 +119,19 @@ function fe(e, t) {
|
|
|
115
119
|
i(e.$slots, "default")
|
|
116
120
|
]);
|
|
117
121
|
}
|
|
118
|
-
const he = /* @__PURE__ */
|
|
122
|
+
const he = /* @__PURE__ */ k(me, [["render", fe]]), xe = { class: "shrink-0" }, ve = {
|
|
119
123
|
__name: "AppNavTab",
|
|
120
124
|
props: {
|
|
121
125
|
to: { type: String, required: !0 }
|
|
122
126
|
},
|
|
123
127
|
setup(e) {
|
|
124
128
|
const t = e;
|
|
125
|
-
return
|
|
126
|
-
|
|
129
|
+
return x(null), (r, n) => (a(), l("div", xe, [
|
|
130
|
+
v(d(P), {
|
|
127
131
|
class: "[&.router-link-exact-active]:text-primary-950 [&.router-link-exact-active]:border-brand-primary-700 hover:text-brand-primary-700 group relative flex h-12 shrink-0 items-center justify-between gap-2 border-b-2 border-transparent px-3 text-sm text-neutral-600 transition-all [&.router-link-exact-active]:font-medium",
|
|
128
132
|
to: t.to
|
|
129
133
|
}, {
|
|
130
|
-
default:
|
|
134
|
+
default: p(() => [
|
|
131
135
|
i(r.$slots, "default"),
|
|
132
136
|
n[0] || (n[0] = c("div", { class: "bg-primary-100 absolute inset-x-0 z-[-1] h-8 w-full rounded-lg opacity-0 transition-all contain-strict group-hover:transform-none group-hover:opacity-100 group-hover:[transform-origin:50%_50%_0px]" }, null, -1))
|
|
133
137
|
]),
|
|
@@ -140,11 +144,11 @@ const he = /* @__PURE__ */ h(me, [["render", fe]]), xe = { class: "shrink-0" },
|
|
|
140
144
|
__name: "AppSidebar",
|
|
141
145
|
setup(e) {
|
|
142
146
|
const t = b("APP_DATA"), { isSidebarToggled: r, toggleSidebar: n } = t;
|
|
143
|
-
return (o, s) => (a(), l(
|
|
147
|
+
return (o, s) => (a(), l(D, null, [
|
|
144
148
|
c("aside", _e, [
|
|
145
149
|
i(o.$slots, "default", {}, void 0, !0)
|
|
146
150
|
]),
|
|
147
|
-
(a(),
|
|
151
|
+
(a(), g(E, { to: "body" }, [
|
|
148
152
|
c("div", {
|
|
149
153
|
class: "shadow-t-2xl fixed bottom-0 z-50 h-[60svh] w-full space-y-4 overflow-y-scroll rounded-t-2xl bg-white p-4 transition-all duration-500 ease-[cubic-bezier(.32,.72,0,1)] [&::-webkit-scrollbar]:hidden",
|
|
150
154
|
style: q(
|
|
@@ -155,7 +159,7 @@ const he = /* @__PURE__ */ h(me, [["render", fe]]), xe = { class: "shrink-0" },
|
|
|
155
159
|
], 4),
|
|
156
160
|
c("div", {
|
|
157
161
|
onClick: s[0] || (s[0] = (u) => d(n)()),
|
|
158
|
-
class:
|
|
162
|
+
class: m([
|
|
159
163
|
"backdrop backdrop-blur-[0.50px] transition-all duration-300 [transition-behavior:allow-discrete]",
|
|
160
164
|
d(r) ? "fixed inset-0 z-40 block bg-black/80 opacity-100" : "hidden"
|
|
161
165
|
])
|
|
@@ -163,15 +167,15 @@ const he = /* @__PURE__ */ h(me, [["render", fe]]), xe = { class: "shrink-0" },
|
|
|
163
167
|
]))
|
|
164
168
|
], 64));
|
|
165
169
|
}
|
|
166
|
-
}, ke = /* @__PURE__ */
|
|
170
|
+
}, ke = /* @__PURE__ */ k(ye, [["__scopeId", "data-v-aaece1c7"]]), Ce = { class: "flex flex-col" }, we = {
|
|
167
171
|
__name: "AppSidebarItem",
|
|
168
172
|
setup(e) {
|
|
169
|
-
|
|
170
|
-
const t =
|
|
173
|
+
F();
|
|
174
|
+
const t = x(!1);
|
|
171
175
|
function r() {
|
|
172
176
|
t.value = !t.value;
|
|
173
177
|
}
|
|
174
|
-
return
|
|
178
|
+
return T("SIDEBAR_TOGGLE", { toggled: t, toggleSidebarItem: r }), (n, o) => (a(), l("div", Ce, [
|
|
175
179
|
i(n.$slots, "default")
|
|
176
180
|
]));
|
|
177
181
|
}
|
|
@@ -182,12 +186,12 @@ const he = /* @__PURE__ */ h(me, [["render", fe]]), xe = { class: "shrink-0" },
|
|
|
182
186
|
},
|
|
183
187
|
setup(e) {
|
|
184
188
|
const t = e;
|
|
185
|
-
return (r, n) => typeof t.to == "object" || t.to.startsWith("/") ? (a(),
|
|
189
|
+
return (r, n) => typeof t.to == "object" || t.to.startsWith("/") ? (a(), g(d(P), {
|
|
186
190
|
key: 0,
|
|
187
191
|
class: "[&.router-link-exact-active]:text-primary-950 [&.router-link-exact-active]:bg-background-main text-primary-950 hover:bg-background-main block h-10 items-center gap-3 overflow-hidden rounded-lg px-3 text-xs leading-[40px] text-ellipsis whitespace-nowrap transition-all [&.router-link-exact-active]:font-medium",
|
|
188
192
|
to: t.to
|
|
189
193
|
}, {
|
|
190
|
-
default:
|
|
194
|
+
default: p(() => [
|
|
191
195
|
i(r.$slots, "default")
|
|
192
196
|
]),
|
|
193
197
|
_: 3
|
|
@@ -204,12 +208,12 @@ const he = /* @__PURE__ */ h(me, [["render", fe]]), xe = { class: "shrink-0" },
|
|
|
204
208
|
setup(e) {
|
|
205
209
|
const t = b("SIDEBAR_TOGGLE"), { toggled: r } = t;
|
|
206
210
|
return (n, o) => (a(), l("div", {
|
|
207
|
-
class:
|
|
211
|
+
class: m(["max-h-0 overflow-y-hidden rounded-b-lg opacity-0 transition-all", { "mt-2 max-h-max overflow-y-auto px-2 opacity-100": d(r) }])
|
|
208
212
|
}, [
|
|
209
213
|
i(n.$slots, "default")
|
|
210
214
|
], 2));
|
|
211
215
|
}
|
|
212
|
-
}, Te = { class: "link group/sidebar-item hover:bg-background-main has-[&.router-link-active]:
|
|
216
|
+
}, Te = { class: "link group/sidebar-item hover:bg-background-main peer has-[&.router-link-active]:from-brand-primary-50 has-[&.router-link-active]:to-brand-primary-100 flex h-10 items-center justify-between rounded-lg px-3 transition-all has-[&.router-link-active]:bg-gradient-to-br" }, Ie = ["href"], Be = {
|
|
213
217
|
__name: "AppSidebarItemParent",
|
|
214
218
|
props: {
|
|
215
219
|
to: { type: [String, Object], required: !0 },
|
|
@@ -217,21 +221,21 @@ const he = /* @__PURE__ */ h(me, [["render", fe]]), xe = { class: "shrink-0" },
|
|
|
217
221
|
hasChildren: { type: Boolean, default: !1 }
|
|
218
222
|
},
|
|
219
223
|
setup(e) {
|
|
220
|
-
const t =
|
|
221
|
-
function
|
|
224
|
+
const t = F(), r = e, n = b("SIDEBAR_TOGGLE"), o = b("APP_DATA"), { toggled: s, toggleSidebarItem: u } = n, { toggleSidebar: f } = o;
|
|
225
|
+
function $() {
|
|
222
226
|
t.matched.some(
|
|
223
|
-
(
|
|
227
|
+
(h) => r.name === h.name
|
|
224
228
|
) ? s.value = !0 : s.value = !1;
|
|
225
229
|
}
|
|
226
|
-
return U(t, () =>
|
|
227
|
-
typeof r.to == "object" || r.to.startsWith("/") ? (a(),
|
|
230
|
+
return U(t, () => $(), { immediate: !0 }), (C, h) => (a(), l("div", Te, [
|
|
231
|
+
typeof r.to == "object" || r.to.startsWith("/") ? (a(), g(d(P), {
|
|
228
232
|
key: 0,
|
|
229
|
-
onClick:
|
|
230
|
-
class: "[&.router-link-active]:text-primary-
|
|
233
|
+
onClick: h[0] || (h[0] = (B) => d(f)()),
|
|
234
|
+
class: "[&.router-link-active]:text-primary-700 text-primary-950 peer flex h-full w-full items-center gap-3 text-xs [&.router-link-active]:font-medium",
|
|
231
235
|
to: r.to
|
|
232
236
|
}, {
|
|
233
|
-
default:
|
|
234
|
-
i(
|
|
237
|
+
default: p(() => [
|
|
238
|
+
i(C.$slots, "default")
|
|
235
239
|
]),
|
|
236
240
|
_: 3
|
|
237
241
|
}, 8, ["to"])) : (a(), l("a", {
|
|
@@ -239,12 +243,12 @@ const he = /* @__PURE__ */ h(me, [["render", fe]]), xe = { class: "shrink-0" },
|
|
|
239
243
|
class: "text-primary-950 peer flex h-full w-full items-center gap-3 text-xs",
|
|
240
244
|
href: r.to
|
|
241
245
|
}, [
|
|
242
|
-
i(
|
|
246
|
+
i(C.$slots, "default")
|
|
243
247
|
], 8, Ie)),
|
|
244
248
|
r.hasChildren ? (a(), l("button", {
|
|
245
249
|
key: 2,
|
|
246
|
-
onClick:
|
|
247
|
-
class: "cursor-pointer rounded-full p-1 transition-all
|
|
250
|
+
onClick: h[1] || (h[1] = (B) => d(u)()),
|
|
251
|
+
class: "hover:bg-brand-primary-200 cursor-pointer rounded-full p-1 transition-all",
|
|
248
252
|
type: "button"
|
|
249
253
|
}, [
|
|
250
254
|
(a(), l("svg", {
|
|
@@ -257,25 +261,25 @@ const he = /* @__PURE__ */ h(me, [["render", fe]]), xe = { class: "shrink-0" },
|
|
|
257
261
|
"stroke-width": "2",
|
|
258
262
|
"stroke-linecap": "round",
|
|
259
263
|
"stroke-linejoin": "round",
|
|
260
|
-
class:
|
|
261
|
-
},
|
|
264
|
+
class: m(["lucide lucide-chevron-down-icon lucide-chevron-down stroke-brand-primary-800 transition-all duration-300", { "rotate-180": d(s) }])
|
|
265
|
+
}, h[2] || (h[2] = [
|
|
262
266
|
c("path", { d: "m6 9 6 6 6-6" }, null, -1)
|
|
263
267
|
]), 2))
|
|
264
|
-
])) :
|
|
268
|
+
])) : _("", !0)
|
|
265
269
|
]));
|
|
266
270
|
}
|
|
267
|
-
}, De =
|
|
271
|
+
}, De = { class: "hover:bg-background-main has-[&.router-link-active]:active has-[&.router-link-active]:bg-primary-700 peer flex h-10 items-center justify-between rounded-lg px-3 transition-all" }, Re = {
|
|
268
272
|
__name: "AppSidebarToggle",
|
|
269
273
|
setup(e) {
|
|
270
274
|
const t = b("SIDEBAR_TOGGLE");
|
|
271
275
|
return (r, n) => {
|
|
272
276
|
const o = Y("RouterLink");
|
|
273
|
-
return a(), l("div",
|
|
274
|
-
|
|
277
|
+
return a(), l("div", De, [
|
|
278
|
+
v(o, {
|
|
275
279
|
class: "text-primary-950 peer flex h-full w-full items-center gap-3 text-xs [&.router-link-active]:font-medium [&.router-link-active]:text-white",
|
|
276
280
|
to: "/"
|
|
277
281
|
}, {
|
|
278
|
-
default:
|
|
282
|
+
default: p(() => [
|
|
279
283
|
i(r.$slots, "default")
|
|
280
284
|
]),
|
|
281
285
|
_: 3
|
|
@@ -303,21 +307,21 @@ const he = /* @__PURE__ */ h(me, [["render", fe]]), xe = { class: "shrink-0" },
|
|
|
303
307
|
]);
|
|
304
308
|
};
|
|
305
309
|
}
|
|
306
|
-
},
|
|
310
|
+
}, Ve = {}, Pe = {
|
|
307
311
|
key: 0,
|
|
308
312
|
class: "text-primary-950 px-1 text-sm font-medium"
|
|
309
|
-
},
|
|
310
|
-
function
|
|
313
|
+
}, Me = { class: "mt-2" };
|
|
314
|
+
function ze(e, t) {
|
|
311
315
|
return a(), l("nav", null, [
|
|
312
|
-
e.$slots.title ? (a(), l("b",
|
|
316
|
+
e.$slots.title ? (a(), l("b", Pe, [
|
|
313
317
|
i(e.$slots, "title")
|
|
314
|
-
])) :
|
|
315
|
-
c("div",
|
|
318
|
+
])) : _("", !0),
|
|
319
|
+
c("div", Me, [
|
|
316
320
|
i(e.$slots, "items")
|
|
317
321
|
])
|
|
318
322
|
]);
|
|
319
323
|
}
|
|
320
|
-
const
|
|
324
|
+
const je = /* @__PURE__ */ k(Ve, [["render", ze]]), W = {
|
|
321
325
|
/* ---------------- Solid Buttons ---------------- */
|
|
322
326
|
primary: {
|
|
323
327
|
backgroundColor: "bg-brand-primary-700",
|
|
@@ -406,7 +410,7 @@ const Ee = /* @__PURE__ */ h(Pe, [["render", je]]), L = {
|
|
|
406
410
|
backgroundColor: "bg-transparent",
|
|
407
411
|
textColor: "text-warning-600"
|
|
408
412
|
}
|
|
409
|
-
},
|
|
413
|
+
}, w = {
|
|
410
414
|
/* ---------------- Solid Buttons ---------------- */
|
|
411
415
|
primary: {
|
|
412
416
|
backgroundColor: "bg-gradient-to-br from-brand-primary-500 to-brand-primary-700",
|
|
@@ -545,7 +549,7 @@ const Ee = /* @__PURE__ */ h(Pe, [["render", je]]), L = {
|
|
|
545
549
|
hoverTextColor: "hover:text-warning-700",
|
|
546
550
|
focusRing: "focus:ring-warning-200"
|
|
547
551
|
}
|
|
548
|
-
},
|
|
552
|
+
}, Ee = {
|
|
549
553
|
__name: "Badge",
|
|
550
554
|
props: {
|
|
551
555
|
variant: { type: String, default: "primary" }
|
|
@@ -553,29 +557,29 @@ const Ee = /* @__PURE__ */ h(Pe, [["render", je]]), L = {
|
|
|
553
557
|
setup(e) {
|
|
554
558
|
const t = e;
|
|
555
559
|
return (r, n) => (a(), l("div", {
|
|
556
|
-
class:
|
|
557
|
-
d(
|
|
558
|
-
d(
|
|
560
|
+
class: m(["rounded-full px-3 py-1 text-xs font-medium", [
|
|
561
|
+
d(W)[t.variant].backgroundColor,
|
|
562
|
+
d(W)[t.variant].textColor
|
|
559
563
|
]])
|
|
560
564
|
}, [
|
|
561
565
|
i(r.$slots, "default")
|
|
562
566
|
], 2));
|
|
563
567
|
}
|
|
564
|
-
},
|
|
568
|
+
}, j = {
|
|
565
569
|
__name: "Button",
|
|
566
570
|
props: {
|
|
567
571
|
variant: { type: String, default: "primary" }
|
|
568
572
|
},
|
|
569
573
|
setup(e, { expose: t }) {
|
|
570
|
-
const r = e, n =
|
|
571
|
-
return t({ buttonRef: n }), (o, s) => (a(), l("button",
|
|
574
|
+
const r = e, n = x(null);
|
|
575
|
+
return t({ buttonRef: n }), (o, s) => (a(), l("button", y(o.$attrs, {
|
|
572
576
|
class: ["cursor-pointer rounded-lg px-4 py-2 text-xs transition-all active:scale-[0.97] disabled:cursor-not-allowed disabled:opacity-50 disabled:active:scale-100", [
|
|
573
|
-
d(
|
|
574
|
-
d(
|
|
575
|
-
d(
|
|
576
|
-
d(
|
|
577
|
-
d(
|
|
578
|
-
d(
|
|
577
|
+
d(w)[r.variant].backgroundColor,
|
|
578
|
+
d(w)[r.variant].borderColor,
|
|
579
|
+
d(w)[r.variant].textColor,
|
|
580
|
+
d(w)[r.variant].hoverBackgroundColor,
|
|
581
|
+
d(w)[r.variant].hoverTextColor,
|
|
582
|
+
d(w)[r.variant].focusRing
|
|
579
583
|
]],
|
|
580
584
|
ref_key: "buttonRef",
|
|
581
585
|
ref: n
|
|
@@ -583,13 +587,13 @@ const Ee = /* @__PURE__ */ h(Pe, [["render", je]]), L = {
|
|
|
583
587
|
i(o.$slots, "default")
|
|
584
588
|
], 16));
|
|
585
589
|
}
|
|
586
|
-
},
|
|
587
|
-
function
|
|
588
|
-
return a(), l("div",
|
|
590
|
+
}, Le = {}, Ge = { class: "rounded-2xl bg-white p-6" };
|
|
591
|
+
function Ne(e, t) {
|
|
592
|
+
return a(), l("div", Ge, [
|
|
589
593
|
i(e.$slots, "default")
|
|
590
594
|
]);
|
|
591
595
|
}
|
|
592
|
-
const
|
|
596
|
+
const L = /* @__PURE__ */ k(Le, [["render", Ne]]), We = {
|
|
593
597
|
__name: "Checkbox",
|
|
594
598
|
props: {
|
|
595
599
|
modelValue: {},
|
|
@@ -597,7 +601,7 @@ const M = /* @__PURE__ */ h(Ge, [["render", We]]), He = {
|
|
|
597
601
|
},
|
|
598
602
|
emits: ["update:modelValue"],
|
|
599
603
|
setup(e) {
|
|
600
|
-
const t =
|
|
604
|
+
const t = V(e, "modelValue"), r = x(null);
|
|
601
605
|
return (n, o) => (a(), l("button", {
|
|
602
606
|
onClick: o[1] || (o[1] = (s) => r.value.click()),
|
|
603
607
|
class: "group/checkbox has-checked:bg-brand-primary-700 flex size-4 cursor-pointer items-center justify-center rounded-sm bg-neutral-200 transition-all duration-300 active:scale-[0.50] has-disabled:cursor-not-allowed has-disabled:opacity-50"
|
|
@@ -616,7 +620,7 @@ const M = /* @__PURE__ */ h(Ge, [["render", We]]), He = {
|
|
|
616
620
|
}, [
|
|
617
621
|
c("path", { d: "M20 6 9 17l-5-5" })
|
|
618
622
|
], -1)),
|
|
619
|
-
|
|
623
|
+
I(c("input", y(n.$attrs, {
|
|
620
624
|
"onUpdate:modelValue": o[0] || (o[0] = (s) => t.value = s),
|
|
621
625
|
type: "checkbox",
|
|
622
626
|
ref_key: "checkboxRef",
|
|
@@ -627,98 +631,98 @@ const M = /* @__PURE__ */ h(Ge, [["render", We]]), He = {
|
|
|
627
631
|
])
|
|
628
632
|
]));
|
|
629
633
|
}
|
|
630
|
-
},
|
|
634
|
+
}, He = {
|
|
631
635
|
__name: "Dialog",
|
|
632
636
|
setup(e) {
|
|
633
|
-
const t =
|
|
637
|
+
const t = x(!1);
|
|
634
638
|
function r() {
|
|
635
639
|
t.value = !t.value;
|
|
636
640
|
}
|
|
637
|
-
return
|
|
641
|
+
return T("DIALOG_META", { toggled: t, toggleDialog: r }), (n, o) => i(n.$slots, "default", {
|
|
638
642
|
toggled: t.value,
|
|
639
643
|
toggleDialog: r
|
|
640
644
|
});
|
|
641
645
|
}
|
|
642
|
-
},
|
|
646
|
+
}, G = {
|
|
643
647
|
__name: "DialogBackground",
|
|
644
648
|
setup(e) {
|
|
645
649
|
return J(() => {
|
|
646
650
|
document.querySelector("body").classList.add("overflow-hidden");
|
|
647
651
|
}), X(() => {
|
|
648
652
|
document.querySelector("body").classList.remove("overflow-hidden");
|
|
649
|
-
}), (t, r) => (a(), l("div",
|
|
653
|
+
}), (t, r) => (a(), l("div", y(t.$attrs, { class: "pointer-events-auto fixed inset-0 z-[100] min-h-screen bg-black/80 backdrop-blur-[2px]" }), [
|
|
650
654
|
i(t.$slots, "default")
|
|
651
655
|
], 16));
|
|
652
656
|
}
|
|
653
|
-
},
|
|
657
|
+
}, Oe = {
|
|
654
658
|
__name: "DialogContent",
|
|
655
659
|
props: {
|
|
656
660
|
class: { type: String }
|
|
657
661
|
},
|
|
658
662
|
setup(e) {
|
|
659
663
|
const t = e, { toggled: r, toggleDialog: n } = b("DIALOG_META");
|
|
660
|
-
return (o, s) => (a(),
|
|
661
|
-
|
|
662
|
-
default:
|
|
663
|
-
d(r) ? (a(),
|
|
664
|
+
return (o, s) => (a(), g(E, { to: "body" }, [
|
|
665
|
+
v(R, { name: "fade-in" }, {
|
|
666
|
+
default: p(() => [
|
|
667
|
+
d(r) ? (a(), g(G, {
|
|
664
668
|
key: 0,
|
|
665
669
|
onClick: s[0] || (s[0] = (u) => d(n)()),
|
|
666
670
|
class: "z-[175]"
|
|
667
|
-
})) :
|
|
671
|
+
})) : _("", !0)
|
|
668
672
|
]),
|
|
669
673
|
_: 1
|
|
670
674
|
}),
|
|
671
|
-
|
|
672
|
-
default:
|
|
673
|
-
d(r) ? (a(),
|
|
675
|
+
v(R, { name: "fade-in-dialog" }, {
|
|
676
|
+
default: p(() => [
|
|
677
|
+
d(r) ? (a(), g(L, {
|
|
674
678
|
key: 0,
|
|
675
|
-
class:
|
|
679
|
+
class: m(["fixed top-1/2 left-1/2 z-[200] -translate-x-1/2 -translate-y-1/2 rounded-xl bg-white transition-all", t.class])
|
|
676
680
|
}, {
|
|
677
|
-
default:
|
|
681
|
+
default: p(() => [
|
|
678
682
|
i(o.$slots, "default")
|
|
679
683
|
]),
|
|
680
684
|
_: 3
|
|
681
|
-
}, 8, ["class"])) :
|
|
685
|
+
}, 8, ["class"])) : _("", !0)
|
|
682
686
|
]),
|
|
683
687
|
_: 3
|
|
684
688
|
})
|
|
685
689
|
]));
|
|
686
690
|
}
|
|
687
|
-
},
|
|
691
|
+
}, Fe = {
|
|
688
692
|
__name: "DialogToggle",
|
|
689
693
|
setup(e) {
|
|
690
|
-
const t =
|
|
694
|
+
const t = H(), { toggleDialog: r } = b("DIALOG_META");
|
|
691
695
|
return (n, o) => {
|
|
692
696
|
var s, u;
|
|
693
|
-
return a(),
|
|
694
|
-
|
|
697
|
+
return a(), g(A(
|
|
698
|
+
S((u = (s = d(t)).default) == null ? void 0 : u.call(s)[0], {
|
|
695
699
|
onClick: d(r)
|
|
696
700
|
})
|
|
697
701
|
));
|
|
698
702
|
};
|
|
699
703
|
}
|
|
700
|
-
},
|
|
704
|
+
}, qe = { class: "flex flex-col items-center justify-center gap-8" }, Ue = { class: "flex items-center gap-2" }, Ye = {
|
|
701
705
|
__name: "Empty",
|
|
702
706
|
setup(e) {
|
|
703
|
-
return (t, r) => (a(), l("div",
|
|
707
|
+
return (t, r) => (a(), l("div", qe, [
|
|
704
708
|
r[2] || (r[2] = Q('<div class="flex max-w-xs flex-col items-center gap-2 text-center"><div class="bg-brand-primary-100 mb-2 grid size-12 place-items-center rounded-full"><svg xmlns="http://www.w3.org/2000/svg" class="text-brand-primary-700 h-6 w-6" fill="none" viewBox="0 0 24 24" stroke="currentColor" stroke-width="2"><path stroke-linecap="round" stroke-linejoin="round" d="M9 13h6m-3-3v6m5 5H7a2 2 0 01-2-2V5a2 2 0 012-2h5.586a1 1 0 01.707.293l5.414 5.414a1 1 0 01.293.707V19a2 2 0 01-2 2z"></path></svg></div><b class="text-lg font-medium">No Projects Yet</b><p class="text-sm text-neutral-600"> You haven't created any projects yet. Get started by creating your first project. </p></div>', 1)),
|
|
705
|
-
c("div",
|
|
706
|
-
|
|
709
|
+
c("div", Ue, [
|
|
710
|
+
v(j, {
|
|
707
711
|
class: "h-10",
|
|
708
712
|
variant: "outlined"
|
|
709
713
|
}, {
|
|
710
|
-
default:
|
|
711
|
-
|
|
714
|
+
default: p(() => r[0] || (r[0] = [
|
|
715
|
+
z("Import Project")
|
|
712
716
|
])),
|
|
713
717
|
_: 1,
|
|
714
718
|
__: [0]
|
|
715
719
|
}),
|
|
716
|
-
|
|
720
|
+
v(j, {
|
|
717
721
|
class: "h-10",
|
|
718
722
|
variant: "primary"
|
|
719
723
|
}, {
|
|
720
|
-
default:
|
|
721
|
-
|
|
724
|
+
default: p(() => r[1] || (r[1] = [
|
|
725
|
+
z("Create Project")
|
|
722
726
|
])),
|
|
723
727
|
_: 1,
|
|
724
728
|
__: [1]
|
|
@@ -726,23 +730,23 @@ const M = /* @__PURE__ */ h(Ge, [["render", We]]), He = {
|
|
|
726
730
|
])
|
|
727
731
|
]));
|
|
728
732
|
}
|
|
729
|
-
},
|
|
733
|
+
}, Ze = { class: "group flex flex-col gap-2" }, Je = {
|
|
730
734
|
__name: "FormField",
|
|
731
735
|
props: {
|
|
732
736
|
validate: { type: Boolean, default: !1 }
|
|
733
737
|
},
|
|
734
738
|
setup(e) {
|
|
735
|
-
return (t, r) => (a(), l("div",
|
|
739
|
+
return (t, r) => (a(), l("div", Ze, [
|
|
736
740
|
i(t.$slots, "default")
|
|
737
741
|
]));
|
|
738
742
|
}
|
|
739
|
-
},
|
|
740
|
-
function
|
|
741
|
-
return a(), l("p",
|
|
743
|
+
}, Xe = {}, Qe = { class: "text-danger-700 hidden h-0 text-xs opacity-0 transition-all group-has-user-invalid:mt-1 group-has-user-invalid:block group-has-user-invalid:h-4 group-has-user-invalid:opacity-100" };
|
|
744
|
+
function Ke(e, t) {
|
|
745
|
+
return a(), l("p", Qe, [
|
|
742
746
|
i(e.$slots, "default", {}, void 0, !0)
|
|
743
747
|
]);
|
|
744
748
|
}
|
|
745
|
-
const
|
|
749
|
+
const et = /* @__PURE__ */ k(Xe, [["render", Ke], ["__scopeId", "data-v-00088154"]]), tt = {
|
|
746
750
|
__name: "Input",
|
|
747
751
|
props: {
|
|
748
752
|
modelValue: {},
|
|
@@ -750,21 +754,21 @@ const tt = /* @__PURE__ */ h(Qe, [["render", et], ["__scopeId", "data-v-00088154
|
|
|
750
754
|
},
|
|
751
755
|
emits: ["update:modelValue"],
|
|
752
756
|
setup(e) {
|
|
753
|
-
const t =
|
|
754
|
-
return (r, n) =>
|
|
757
|
+
const t = V(e, "modelValue");
|
|
758
|
+
return (r, n) => I((a(), l("input", {
|
|
755
759
|
"onUpdate:modelValue": n[0] || (n[0] = (o) => t.value = o),
|
|
756
760
|
class: "text-primary-950 focus:ring-brand-primary-700 focus:user-invalid:ring-danger-700 user-invalid:ring-danger-700 rounded-lg border-[1px] border-neutral-200 bg-white px-3 py-2 text-xs ring-offset-2 transition-all duration-300 outline-none placeholder:text-neutral-400 user-invalid:ring-2 focus:ring-2 disabled:cursor-not-allowed disabled:opacity-50"
|
|
757
761
|
}, null, 512)), [
|
|
758
|
-
[
|
|
762
|
+
[O, t.value]
|
|
759
763
|
]);
|
|
760
764
|
}
|
|
761
|
-
},
|
|
762
|
-
function
|
|
763
|
-
return a(), l("label",
|
|
765
|
+
}, rt = {};
|
|
766
|
+
function ot(e, t) {
|
|
767
|
+
return a(), l("label", y(e.$attrs, { class: "text-primary-950 text-xs font-medium transition-all" }), [
|
|
764
768
|
i(e.$slots, "default")
|
|
765
769
|
], 16);
|
|
766
770
|
}
|
|
767
|
-
const
|
|
771
|
+
const nt = /* @__PURE__ */ k(rt, [["render", ot]]), at = {
|
|
768
772
|
__name: "Radio",
|
|
769
773
|
props: /* @__PURE__ */ K({
|
|
770
774
|
variant: { type: String, default: "small" }
|
|
@@ -774,23 +778,23 @@ const at = /* @__PURE__ */ h(ot, [["render", nt]]), st = {
|
|
|
774
778
|
}),
|
|
775
779
|
emits: ["update:modelValue"],
|
|
776
780
|
setup(e) {
|
|
777
|
-
const t =
|
|
781
|
+
const t = V(e, "modelValue"), r = e, n = x(null), o = {
|
|
778
782
|
small: { outerCircleSize: "size-4", innerCircleSize: "size-2.5" },
|
|
779
783
|
large: { outerCircleSize: "size-5", innerCircleSize: "size-3" }
|
|
780
784
|
};
|
|
781
785
|
return (s, u) => (a(), l("button", {
|
|
782
|
-
onClick: u[1] || (u[1] = (
|
|
783
|
-
class:
|
|
786
|
+
onClick: u[1] || (u[1] = (f) => n.value.click()),
|
|
787
|
+
class: m(["group/radio has-checked:border-brand-primary-700 flex cursor-pointer items-center justify-center rounded-full border-[1px] border-transparent bg-neutral-100 duration-300 active:scale-[0.80] has-checked:bg-white", o[r.variant].outerCircleSize]),
|
|
784
788
|
role: "radio",
|
|
785
789
|
type: "button"
|
|
786
790
|
}, [
|
|
787
791
|
c("div", {
|
|
788
|
-
class:
|
|
792
|
+
class: m(["group-has-checked/radio:bg-brand-primary-700 grid place-items-center rounded-full opacity-0 transition-all group-has-checked/radio:opacity-100", o[r.variant].innerCircleSize])
|
|
789
793
|
}, [
|
|
790
794
|
i(s.$slots, "default")
|
|
791
795
|
], 2),
|
|
792
|
-
|
|
793
|
-
"onUpdate:modelValue": u[0] || (u[0] = (
|
|
796
|
+
I(c("input", y(s.$attrs, {
|
|
797
|
+
"onUpdate:modelValue": u[0] || (u[0] = (f) => t.value = f),
|
|
794
798
|
type: "radio",
|
|
795
799
|
ref_key: "radioRef",
|
|
796
800
|
ref: n,
|
|
@@ -800,7 +804,7 @@ const at = /* @__PURE__ */ h(ot, [["render", nt]]), st = {
|
|
|
800
804
|
])
|
|
801
805
|
], 2));
|
|
802
806
|
}
|
|
803
|
-
},
|
|
807
|
+
}, st = "bg-[url('data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIyNCIgaGVpZ2h0PSIyNCIgdmlld0JveD0iMCAwIDI0IDI0IiBmaWxsPSJub25lIiBzdHJva2U9IiM1YjYxNmUiIHN0cm9rZS13aWR0aD0iMiIgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIiBzdHJva2UtbGluZWpvaW49InJvdW5kIiBjbGFzcz0ibHVjaWRlIGx1Y2lkZS1jaGV2cm9uLWRvd24iPjxwYXRoIGQ9Im02IDkgNiA2IDYtNiIvPjwvc3ZnPg==')]", lt = {
|
|
804
808
|
__name: "Select",
|
|
805
809
|
props: {
|
|
806
810
|
modelValue: {},
|
|
@@ -808,79 +812,79 @@ const at = /* @__PURE__ */ h(ot, [["render", nt]]), st = {
|
|
|
808
812
|
},
|
|
809
813
|
emits: ["update:modelValue"],
|
|
810
814
|
setup(e) {
|
|
811
|
-
const t =
|
|
812
|
-
return (r, n) =>
|
|
815
|
+
const t = V(e, "modelValue");
|
|
816
|
+
return (r, n) => I((a(), l("select", y(r.$attrs, {
|
|
813
817
|
"onUpdate:modelValue": n[0] || (n[0] = (o) => t.value = o),
|
|
814
|
-
class: ["text-primary-950 user-invalid:ring-danger-700 focus:user-invalid:ring-danger-700 focus:ring-brand-primary-700 appearance-none rounded-lg border-[1px] border-neutral-200 bg-white bg-[length:16px] bg-[right_12px_center] bg-no-repeat px-3 py-2 text-xs ring-offset-2 transition-all outline-none user-invalid:ring-2 focus:ring-2 disabled:cursor-not-allowed disabled:opacity-50",
|
|
818
|
+
class: ["text-primary-950 user-invalid:ring-danger-700 focus:user-invalid:ring-danger-700 focus:ring-brand-primary-700 appearance-none rounded-lg border-[1px] border-neutral-200 bg-white bg-[length:16px] bg-[right_12px_center] bg-no-repeat px-3 py-2 text-xs ring-offset-2 transition-all outline-none user-invalid:ring-2 focus:ring-2 disabled:cursor-not-allowed disabled:opacity-50", st]
|
|
815
819
|
}), [
|
|
816
820
|
i(r.$slots, "default")
|
|
817
821
|
], 16)), [
|
|
818
822
|
[te, t.value]
|
|
819
823
|
]);
|
|
820
824
|
}
|
|
821
|
-
},
|
|
825
|
+
}, it = {
|
|
822
826
|
__name: "Sheet",
|
|
823
827
|
setup(e) {
|
|
824
|
-
const t =
|
|
828
|
+
const t = x(!1);
|
|
825
829
|
function r() {
|
|
826
830
|
t.value = !t.value;
|
|
827
831
|
}
|
|
828
|
-
return
|
|
832
|
+
return T("SHEET_META", { toggled: t, toggleSheet: r }), (n, o) => i(n.$slots, "default", {
|
|
829
833
|
toggled: t.value,
|
|
830
834
|
toggleSheet: r
|
|
831
835
|
});
|
|
832
836
|
}
|
|
833
|
-
},
|
|
837
|
+
}, dt = {
|
|
834
838
|
__name: "SheetContent",
|
|
835
839
|
props: {
|
|
836
840
|
class: { type: String }
|
|
837
841
|
},
|
|
838
842
|
setup(e) {
|
|
839
843
|
const t = e, { toggled: r, toggleSheet: n } = b("SHEET_META");
|
|
840
|
-
return (o, s) => (a(),
|
|
841
|
-
|
|
842
|
-
default:
|
|
843
|
-
d(r) ? (a(),
|
|
844
|
+
return (o, s) => (a(), g(E, { to: "body" }, [
|
|
845
|
+
v(R, { name: "fade-in" }, {
|
|
846
|
+
default: p(() => [
|
|
847
|
+
d(r) ? (a(), g(G, {
|
|
844
848
|
key: 0,
|
|
845
849
|
onClick: s[0] || (s[0] = (u) => d(n)())
|
|
846
|
-
})) :
|
|
850
|
+
})) : _("", !0)
|
|
847
851
|
]),
|
|
848
852
|
_: 1
|
|
849
853
|
}),
|
|
850
|
-
|
|
851
|
-
default:
|
|
852
|
-
d(r) ? (a(),
|
|
854
|
+
v(R, { name: "slide" }, {
|
|
855
|
+
default: p(() => [
|
|
856
|
+
d(r) ? (a(), g(L, {
|
|
853
857
|
key: 0,
|
|
854
|
-
class:
|
|
858
|
+
class: m(["fixed top-1/2 right-0 z-[150] h-full w-3/4 -translate-y-1/2 rounded-e-none bg-white transition-all md:right-[1rem] md:h-[calc(100dvh-2rem)] md:w-96 md:rounded-xl", t.class])
|
|
855
859
|
}, {
|
|
856
|
-
default:
|
|
860
|
+
default: p(() => [
|
|
857
861
|
i(o.$slots, "default")
|
|
858
862
|
]),
|
|
859
863
|
_: 3
|
|
860
|
-
}, 8, ["class"])) :
|
|
864
|
+
}, 8, ["class"])) : _("", !0)
|
|
861
865
|
]),
|
|
862
866
|
_: 3
|
|
863
867
|
})
|
|
864
868
|
]));
|
|
865
869
|
}
|
|
866
|
-
},
|
|
870
|
+
}, ct = {
|
|
867
871
|
__name: "SheetToggle",
|
|
868
872
|
setup(e) {
|
|
869
|
-
const t =
|
|
873
|
+
const t = H(), { toggleSheet: r } = b("SHEET_META");
|
|
870
874
|
return (n, o) => {
|
|
871
875
|
var s, u;
|
|
872
|
-
return a(),
|
|
873
|
-
|
|
876
|
+
return a(), g(A(
|
|
877
|
+
S((u = (s = d(t)).default) == null ? void 0 : u.call(s)[0], {
|
|
874
878
|
onClick: d(r)
|
|
875
879
|
})
|
|
876
880
|
));
|
|
877
881
|
};
|
|
878
882
|
}
|
|
879
|
-
},
|
|
880
|
-
function
|
|
881
|
-
return a(), l("div",
|
|
883
|
+
}, ut = {}, gt = { class: "bg-primary-100 animate-pulse rounded-lg" };
|
|
884
|
+
function pt(e, t) {
|
|
885
|
+
return a(), l("div", gt);
|
|
882
886
|
}
|
|
883
|
-
const
|
|
887
|
+
const mt = /* @__PURE__ */ k(ut, [["render", pt]]), bt = {
|
|
884
888
|
__name: "Switch",
|
|
885
889
|
props: ["modelValue"],
|
|
886
890
|
emits: ["update:modelValue"],
|
|
@@ -889,8 +893,8 @@ const bt = /* @__PURE__ */ h(gt, [["render", mt]]), ft = {
|
|
|
889
893
|
function o() {
|
|
890
894
|
r("update:modelValue", !n.modelValue);
|
|
891
895
|
}
|
|
892
|
-
return (s, u) => (a(), l("button",
|
|
893
|
-
onClick: u[0] || (u[0] = (
|
|
896
|
+
return (s, u) => (a(), l("button", y(s.$attrs, {
|
|
897
|
+
onClick: u[0] || (u[0] = (f) => o()),
|
|
894
898
|
class: [
|
|
895
899
|
"group/switch h-5 w-9 cursor-pointer rounded-full p-0.5 transition-all duration-300 disabled:cursor-not-allowed disabled:opacity-50",
|
|
896
900
|
n.modelValue ? "from-brand-primary-600 to-brand-primary-700 bg-gradient-to-br" : "bg-neutral-200"
|
|
@@ -899,16 +903,16 @@ const bt = /* @__PURE__ */ h(gt, [["render", mt]]), ft = {
|
|
|
899
903
|
type: "button"
|
|
900
904
|
}), [
|
|
901
905
|
c("span", {
|
|
902
|
-
class:
|
|
906
|
+
class: m(["pointer-events-none flex size-4 items-center justify-center rounded-full bg-white shadow-md transition-all duration-300", { "translate-x-full": n.modelValue }])
|
|
903
907
|
}, [
|
|
904
908
|
i(s.$slots, "icon")
|
|
905
909
|
], 2)
|
|
906
910
|
], 16));
|
|
907
911
|
}
|
|
908
|
-
},
|
|
912
|
+
}, ft = { class: "w-full" }, ht = { class: "h-16" }, xt = { key: 0 }, vt = {
|
|
909
913
|
key: 0,
|
|
910
914
|
class: "pe-4"
|
|
911
|
-
},
|
|
915
|
+
}, _t = {
|
|
912
916
|
__name: "Table",
|
|
913
917
|
props: {
|
|
914
918
|
columns: { type: Array, required: !0 },
|
|
@@ -916,51 +920,51 @@ const bt = /* @__PURE__ */ h(gt, [["render", mt]]), ft = {
|
|
|
916
920
|
},
|
|
917
921
|
setup(e) {
|
|
918
922
|
const t = e;
|
|
919
|
-
return (r, n) => (a(), l("table",
|
|
923
|
+
return (r, n) => (a(), l("table", ft, [
|
|
920
924
|
c("thead", null, [
|
|
921
|
-
c("tr",
|
|
922
|
-
(a(!0), l(
|
|
925
|
+
c("tr", ht, [
|
|
926
|
+
(a(!0), l(D, null, M(t.columns, (o) => (a(), l("th", {
|
|
923
927
|
key: o.key,
|
|
924
928
|
class: "text-xs font-medium text-neutral-600 first-of-type:ps-4"
|
|
925
|
-
},
|
|
926
|
-
r.$slots.actions ? (a(), l("th",
|
|
929
|
+
}, N(o.label), 1))), 128)),
|
|
930
|
+
r.$slots.actions ? (a(), l("th", xt)) : _("", !0)
|
|
927
931
|
])
|
|
928
932
|
]),
|
|
929
933
|
c("tbody", null, [
|
|
930
|
-
(a(!0), l(
|
|
934
|
+
(a(!0), l(D, null, M(t.data, (o, s) => (a(), l("tr", {
|
|
931
935
|
key: s,
|
|
932
936
|
class: "odd:bg-background-main/50 hover:bg-background-main min-h-16 rounded-md transition-all"
|
|
933
937
|
}, [
|
|
934
|
-
(a(!0), l(
|
|
938
|
+
(a(!0), l(D, null, M(t.columns, (u) => (a(), l("td", {
|
|
935
939
|
key: u.key,
|
|
936
940
|
class: "text-primary-950 py-4 text-xs first-of-type:rounded-s-md first-of-type:ps-4 last-of-type:rounded-e-md last-of-type:pe-4"
|
|
937
941
|
}, [
|
|
938
942
|
i(r.$slots, u.key, { row: o }, () => [
|
|
939
|
-
|
|
943
|
+
z(N(o[u.key]), 1)
|
|
940
944
|
])
|
|
941
945
|
]))), 128)),
|
|
942
|
-
r.$slots.actions ? (a(), l("td",
|
|
946
|
+
r.$slots.actions ? (a(), l("td", vt, [
|
|
943
947
|
i(r.$slots, "actions", { row: o })
|
|
944
|
-
])) :
|
|
948
|
+
])) : _("", !0)
|
|
945
949
|
]))), 128))
|
|
946
950
|
])
|
|
947
951
|
]));
|
|
948
952
|
}
|
|
949
|
-
},
|
|
953
|
+
}, yt = { class: "overflow-x-scroll rounded-xl bg-neutral-100/50 p-1 [&::-webkit-scrollbar]:hidden" }, kt = {
|
|
950
954
|
__name: "Tabs",
|
|
951
955
|
props: {
|
|
952
956
|
default: { default: null }
|
|
953
957
|
},
|
|
954
958
|
setup(e) {
|
|
955
|
-
const r =
|
|
959
|
+
const r = x(e.default);
|
|
956
960
|
function n(o) {
|
|
957
961
|
r.value = o;
|
|
958
962
|
}
|
|
959
|
-
return
|
|
963
|
+
return T("TAB_DATA", { currentValue: r, setCurrentValue: n }), (o, s) => (a(), l("div", yt, [
|
|
960
964
|
i(o.$slots, "default")
|
|
961
965
|
]));
|
|
962
966
|
}
|
|
963
|
-
},
|
|
967
|
+
}, Ct = {
|
|
964
968
|
__name: "TabItem",
|
|
965
969
|
props: {
|
|
966
970
|
value: { required: !0 }
|
|
@@ -973,30 +977,30 @@ const bt = /* @__PURE__ */ h(gt, [["render", mt]]), ft = {
|
|
|
973
977
|
"shadow-xl",
|
|
974
978
|
"tab-active"
|
|
975
979
|
] : "text-neutral-600");
|
|
976
|
-
return (u,
|
|
977
|
-
onClick:
|
|
978
|
-
class:
|
|
980
|
+
return (u, f) => (a(), l("button", {
|
|
981
|
+
onClick: f[0] || (f[0] = ($) => d(o)(t.value)),
|
|
982
|
+
class: m(["tab h-8 cursor-pointer rounded-lg px-3 text-xs transition-all disabled:cursor-not-allowed disabled:opacity-50", s.value])
|
|
979
983
|
}, [
|
|
980
984
|
i(u.$slots, "default", {}, void 0, !0)
|
|
981
985
|
], 2));
|
|
982
986
|
}
|
|
983
|
-
},
|
|
987
|
+
}, wt = /* @__PURE__ */ k(Ct, [["__scopeId", "data-v-9e06f71f"]]), $t = {
|
|
984
988
|
__name: "TextArea",
|
|
985
989
|
props: ["modelValue"],
|
|
986
990
|
setup(e) {
|
|
987
|
-
const r =
|
|
988
|
-
return (n, o) =>
|
|
991
|
+
const r = x(e.modelValue);
|
|
992
|
+
return (n, o) => I((a(), l("textarea", y({
|
|
989
993
|
onInput: o[0] || (o[0] = (s) => n.$emit("update:modelValue", s.target.value))
|
|
990
994
|
}, n.$attrs, {
|
|
991
995
|
"onUpdate:modelValue": o[1] || (o[1] = (s) => r.value = s),
|
|
992
996
|
class: "text-primary-950 neutral-400:text-neutral-400 focus:ring-brand-primary-700 user-invalid:ring-danger-700 focus:user-invalid:ring-danger-700 rounded-lg border-[1px] border-neutral-200 px-3 py-2 text-xs transition-all outline-none user-invalid:ring-2 focus:ring-2 focus:ring-offset-2 disabled:cursor-not-allowed disabled:opacity-50"
|
|
993
997
|
}), null, 16)), [
|
|
994
|
-
[
|
|
998
|
+
[O, r.value]
|
|
995
999
|
]);
|
|
996
1000
|
}
|
|
997
|
-
},
|
|
1001
|
+
}, Tt = {
|
|
998
1002
|
install(e) {
|
|
999
|
-
e.component("AppHeader", le), e.component("AppHeaderLink", de), e.component("AppLayout", ge), e.component("AppMain", pe), e.component("AppNavTabs", he), e.component("AppNavTab", ve), e.component("AppSidebar", ke), e.component("AppSidebarItem", we), e.component("AppSidebarItemChild", Ae), e.component("AppSidebarItemChildren", Se), e.component("AppSidebarItemParent",
|
|
1003
|
+
e.component("AppHeader", le), e.component("AppHeaderLink", de), e.component("AppLayout", ge), e.component("AppMain", pe), e.component("AppNavTabs", he), e.component("AppNavTab", ve), e.component("AppSidebar", ke), e.component("AppSidebarItem", we), e.component("AppSidebarItemChild", Ae), e.component("AppSidebarItemChildren", Se), e.component("AppSidebarItemParent", Be), e.component("AppSidebarToggle", Re), e.component("AppSidebarNavSection", je), e.component("Badge", Ee), e.component("Button", j), e.component("Checkbox", We), e.component("Card", L), e.component("Dialog", He), e.component("DialogContent", Oe), e.component("DialogToggle", Fe), e.component("DialogBackground", G), e.component("Empty", Ye), e.component("FormField", Je), e.component("FormFieldError", et), e.component("Input", tt), e.component("Label", nt), e.component("Radio", at), e.component("Select", lt), e.component("Sheet", it), e.component("SheetContent", dt), e.component("SheetToggle", ct), e.component("SkeletonLoader", mt), e.component("Switch", bt), e.component("Table", _t), e.component("Tabs", kt), e.component("TabItem", wt), e.component("TextArea", $t);
|
|
1000
1004
|
}
|
|
1001
1005
|
};
|
|
1002
1006
|
export {
|
|
@@ -1010,32 +1014,32 @@ export {
|
|
|
1010
1014
|
we as AppSidebarItem,
|
|
1011
1015
|
Ae as AppSidebarItemChild,
|
|
1012
1016
|
Se as AppSidebarItemChildren,
|
|
1013
|
-
|
|
1014
|
-
|
|
1015
|
-
|
|
1016
|
-
|
|
1017
|
-
|
|
1018
|
-
|
|
1019
|
-
|
|
1020
|
-
|
|
1021
|
-
|
|
1022
|
-
|
|
1023
|
-
|
|
1024
|
-
|
|
1025
|
-
|
|
1026
|
-
|
|
1027
|
-
|
|
1028
|
-
|
|
1029
|
-
|
|
1030
|
-
|
|
1031
|
-
|
|
1032
|
-
|
|
1033
|
-
|
|
1034
|
-
|
|
1035
|
-
|
|
1036
|
-
|
|
1037
|
-
|
|
1038
|
-
|
|
1039
|
-
|
|
1040
|
-
|
|
1017
|
+
Be as AppSidebarItemParent,
|
|
1018
|
+
je as AppSidebarNavSection,
|
|
1019
|
+
Re as AppSidebarToggle,
|
|
1020
|
+
Ee as Badge,
|
|
1021
|
+
j as Button,
|
|
1022
|
+
L as Card,
|
|
1023
|
+
We as Checkbox,
|
|
1024
|
+
He as Dialog,
|
|
1025
|
+
G as DialogBackground,
|
|
1026
|
+
Oe as DialogContent,
|
|
1027
|
+
Fe as DialogToggle,
|
|
1028
|
+
Ye as Empty,
|
|
1029
|
+
Je as FormField,
|
|
1030
|
+
et as FormFieldError,
|
|
1031
|
+
tt as Input,
|
|
1032
|
+
nt as Label,
|
|
1033
|
+
at as Radio,
|
|
1034
|
+
lt as Select,
|
|
1035
|
+
it as Sheet,
|
|
1036
|
+
dt as SheetContent,
|
|
1037
|
+
ct as SheetToggle,
|
|
1038
|
+
mt as SkeletonLoader,
|
|
1039
|
+
bt as Switch,
|
|
1040
|
+
wt as TabItem,
|
|
1041
|
+
_t as Table,
|
|
1042
|
+
kt as Tabs,
|
|
1043
|
+
$t as TextArea,
|
|
1044
|
+
Tt as default
|
|
1041
1045
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
(function(l,e){typeof exports=="object"&&typeof module<"u"?e(exports,require("vue"),require("vue-router")):typeof define=="function"&&define.amd?define(["exports","vue","vue-router"],e):(l=typeof globalThis<"u"?globalThis:l||self,e(l.ScrubbedTailwindComponentsV2={},l.Vue,l.vueRouter))})(this,function(l,e,m){"use strict";const ee={class:"flex w-full items-center justify-between"},te={class:"flex items-center gap-2"},re={class:"flex items-center gap-10"},oe={class:"hidden gap-6 sm:flex"},k={__name:"AppHeader",setup(t){const r=e.inject("APP_DATA"),{isSidebarToggled:o,toggleSidebar:a}=r;return(n,s)=>(e.openBlock(),e.createElementBlock("header",{class:e.normalizeClass(["fixed top-0 flex h-16 w-dvw items-center justify-center bg-white/50 px-3 backdrop-blur sm:px-6",{"rounded-t-2xl":e.unref(o)}])},[e.createElementVNode("nav",ee,[e.createElementVNode("div",te,[e.createElementVNode("button",{onClick:s[0]||(s[0]=c=>e.unref(a)()),class:"block cursor-pointer rounded-full p-2 hover:bg-neutral-100 sm:hidden"},s[1]||(s[1]=[e.createElementVNode("svg",{xmlns:"http://www.w3.org/2000/svg",width:"24",height:"24",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor","stroke-width":"2","stroke-linecap":"round","stroke-linejoin":"round",class:"lucide lucide-menu-icon lucide-menu size-5 stroke-neutral-600"},[e.createElementVNode("path",{d:"M4 12h16"}),e.createElementVNode("path",{d:"M4 18h16"}),e.createElementVNode("path",{d:"M4 6h16"})],-1)])),e.renderSlot(n.$slots,"header-img")]),e.createElementVNode("div",re,[e.createElementVNode("ul",oe,[e.renderSlot(n.$slots,"header-links")]),e.renderSlot(n.$slots,"header-actions")])])],2))}},ne=["href"],_={__name:"AppHeaderLink",props:{to:{type:String,required:!0}},setup(t){const r=t;return(o,a)=>(e.openBlock(),e.createElementBlock("li",null,[r.to.startsWith("/")?(e.openBlock(),e.createBlock(e.unref(m.RouterLink),{key:0,class:"hover:text-primary-950 [&.router-link-active]:text-primary-950 text-xs uppercase text-neutral-600 hover:transition-all [&.router-link-active]:font-semibold",to:r.to},{default:e.withCtx(()=>[e.renderSlot(o.$slots,"default")]),_:3},8,["to"])):(e.openBlock(),e.createElementBlock("a",{key:1,class:"hover:text-primary-950 text-xs uppercase text-neutral-600 hover:transition-all",href:r.to},[e.renderSlot(o.$slots,"default")],8,ne))]))}},ae={class:"relative"},le={class:"flex"},x={__name:"AppLayout",setup(t){const r=e.ref(!1);function o(){window.innerWidth<=640?(r.value=!r.value,a()):r.value&&(r.value=!1,a())}function a(){const n=document.querySelector("body");n.classList.contains("bg-black")?n.classList.remove("bg-black"):n.classList.add("bg-black")}return e.provide("APP_DATA",{isSidebarToggled:r,toggleSidebar:o}),(n,s)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(["bg-white transition-all duration-500 ease-[cubic-bezier(.32,.72,0,1)]",{"scale-93 origin-[center_top] translate-y-4":r.value}])},[e.createElementVNode("div",ae,[e.renderSlot(n.$slots,"header"),e.createElementVNode("div",le,[e.renderSlot(n.$slots,"content")])])],2))}},y={__name:"AppMain",setup(t){const r=e.inject("APP_DATA"),{isSidebarToggled:o}=r;return(a,n)=>(e.openBlock(),e.createElementBlock("main",{class:e.normalizeClass(["bg-background-main fixed z-[-1] h-svh w-full overflow-auto px-6 pb-9 pt-24 sm:top-16 sm:ml-[223px] sm:h-[calc(100dvh-4rem)] sm:w-[calc(100dvw-223px)] sm:pt-9",e.unref(o)?"overflow-hidden rounded-t-xl sm:rounded-none":"sm:rounded-tl-2xl"])},[e.renderSlot(a.$slots,"default")],2))}},i=(t,r)=>{const o=t.__vccOpts||t;for(const[a,n]of r)o[a]=n;return o},se={},ce={class:"flex w-full overflow-x-auto border-b-[1px] border-neutral-200 [&::-webkit-scrollbar]:hidden"};function ie(t,r){return e.openBlock(),e.createElementBlock("div",ce,[e.renderSlot(t.$slots,"default")])}const C=i(se,[["render",ie]]),de={class:"shrink-0"},w={__name:"AppNavTab",props:{to:{type:String,required:!0}},setup(t){const r=t;return e.ref(null),(o,a)=>(e.openBlock(),e.createElementBlock("div",de,[e.createVNode(e.unref(m.RouterLink),{class:"[&.router-link-exact-active]:text-primary-950 [&.router-link-exact-active]:border-brand-primary-700 hover:text-brand-primary-700 group relative flex h-12 shrink-0 items-center justify-between gap-2 border-b-2 border-transparent px-3 text-sm text-neutral-600 transition-all [&.router-link-exact-active]:font-medium",to:r.to},{default:e.withCtx(()=>[e.renderSlot(o.$slots,"default"),a[0]||(a[0]=e.createElementVNode("div",{class:"bg-primary-100 absolute inset-x-0 z-[-1] h-8 w-full rounded-lg opacity-0 transition-all contain-strict group-hover:transform-none group-hover:opacity-100 group-hover:[transform-origin:50%_50%_0px]"},null,-1))]),_:3,__:[0]},8,["to"])]))}},pe={class:"fixed left-0 top-0 hidden w-[223px] space-y-4 bg-white px-4 py-8 sm:top-[64px] sm:block"},B=i({__name:"AppSidebar",setup(t){const r=e.inject("APP_DATA"),{isSidebarToggled:o,toggleSidebar:a}=r;return(n,s)=>(e.openBlock(),e.createElementBlock(e.Fragment,null,[e.createElementVNode("aside",pe,[e.renderSlot(n.$slots,"default",{},void 0,!0)]),(e.openBlock(),e.createBlock(e.Teleport,{to:"body"},[e.createElementVNode("div",{class:"shadow-t-2xl fixed bottom-0 z-50 h-[60svh] w-full space-y-4 overflow-y-scroll rounded-t-2xl bg-white p-4 transition-all duration-500 ease-[cubic-bezier(.32,.72,0,1)] [&::-webkit-scrollbar]:hidden",style:e.normalizeStyle(e.unref(o)?"transform: translateZ(0)":"transform: translate3d(0,60svh,0)")},[e.renderSlot(n.$slots,"default",{},void 0,!0)],4),e.createElementVNode("div",{onClick:s[0]||(s[0]=c=>e.unref(a)()),class:e.normalizeClass(["backdrop backdrop-blur-[0.50px] transition-all duration-300 [transition-behavior:allow-discrete]",e.unref(o)?"fixed inset-0 z-40 block bg-black/80 opacity-100":"hidden"])},null,2)]))],64))}},[["__scopeId","data-v-aaece1c7"]]),me={class:"flex flex-col"},S={__name:"AppSidebarItem",setup(t){m.useRoute();const r=e.ref(!1);function o(){r.value=!r.value}return e.provide("SIDEBAR_TOGGLE",{toggled:r,toggleSidebarItem:o}),(a,n)=>(e.openBlock(),e.createElementBlock("div",me,[e.renderSlot(a.$slots,"default")]))}},ge=["href"],$={__name:"AppSidebarItemChild",props:{to:{type:[String,Object],required:!0}},setup(t){const r=t;return(o,a)=>typeof r.to=="object"||r.to.startsWith("/")?(e.openBlock(),e.createBlock(e.unref(m.RouterLink),{key:0,class:"[&.router-link-exact-active]:text-primary-950 [&.router-link-exact-active]:bg-background-main text-primary-950 hover:bg-background-main block h-10 items-center gap-3 overflow-hidden rounded-lg px-3 text-xs leading-[40px] text-ellipsis whitespace-nowrap transition-all [&.router-link-exact-active]:font-medium",to:r.to},{default:e.withCtx(()=>[e.renderSlot(o.$slots,"default")]),_:3},8,["to"])):(e.openBlock(),e.createElementBlock("a",{key:1,class:"text-primary-950 hover:bg-background-main block h-10 items-center gap-3 overflow-hidden rounded-lg px-3 text-xs leading-[40px] text-ellipsis whitespace-nowrap transition-all",href:r.to},[e.renderSlot(o.$slots,"default")],8,ge))}},A={__name:"AppSidebarItemChildren",setup(t){const r=e.inject("SIDEBAR_TOGGLE"),{toggled:o}=r;return(a,n)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(["max-h-0 overflow-y-hidden rounded-b-lg opacity-0 transition-all",{"mt-2 max-h-max overflow-y-auto px-2 opacity-100":e.unref(o)}])},[e.renderSlot(a.$slots,"default")],2))}},ue={class:"link group/sidebar-item hover:bg-background-main has-[&.router-link-active]:bg-background-main peer flex h-10 items-center justify-between rounded-lg px-3 transition-all"},be=["href"],E=i({__name:"AppSidebarItemParent",props:{to:{type:[String,Object],required:!0},name:{type:String},hasChildren:{type:Boolean,default:!1}},setup(t){const r=m.useRoute(),o=t,a=e.inject("SIDEBAR_TOGGLE"),n=e.inject("APP_DATA"),{toggled:s,toggleSidebarItem:c}=a,{toggleSidebar:d}=n;function v(){r.matched.some(p=>o.name===p.name)?s.value=!0:s.value=!1}return e.watch(r,()=>v(),{immediate:!0}),(h,p)=>(e.openBlock(),e.createElementBlock("div",ue,[typeof o.to=="object"||o.to.startsWith("/")?(e.openBlock(),e.createBlock(e.unref(m.RouterLink),{key:0,onClick:p[0]||(p[0]=He=>e.unref(d)()),class:"[&.router-link-active]:text-primary-800 text-primary-950 peer flex h-full w-full items-center gap-3 text-xs [&.router-link-active]:font-medium",to:o.to},{default:e.withCtx(()=>[e.renderSlot(h.$slots,"default",{},void 0,!0)]),_:3},8,["to"])):(e.openBlock(),e.createElementBlock("a",{key:1,class:"text-primary-950 peer flex h-full w-full items-center gap-3 text-xs",href:o.to},[e.renderSlot(h.$slots,"default",{},void 0,!0)],8,be)),o.hasChildren?(e.openBlock(),e.createElementBlock("button",{key:2,onClick:p[1]||(p[1]=He=>e.unref(c)()),class:"cursor-pointer rounded-full p-1 transition-all hover:bg-neutral-100",type:"button"},[(e.openBlock(),e.createElementBlock("svg",{xmlns:"http://www.w3.org/2000/svg",width:"16",height:"16",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor","stroke-width":"2","stroke-linecap":"round","stroke-linejoin":"round",class:e.normalizeClass(["lucide lucide-chevron-down-icon lucide-chevron-down stroke-primary-800 transition-all duration-300",{"rotate-180":e.unref(s)}])},p[2]||(p[2]=[e.createElementVNode("path",{d:"m6 9 6 6 6-6"},null,-1)]),2))])):e.createCommentVNode("",!0)]))}},[["__scopeId","data-v-3b52e94a"]]),fe={class:"hover:bg-background-main has-[&.router-link-active]:active has-[&.router-link-active]:bg-primary-700 peer flex h-10 items-center justify-between rounded-lg px-3 transition-all"},V={__name:"AppSidebarToggle",setup(t){const r=e.inject("SIDEBAR_TOGGLE");return(o,a)=>{const n=e.resolveComponent("RouterLink");return e.openBlock(),e.createElementBlock("div",fe,[e.createVNode(n,{class:"text-primary-950 peer flex h-full w-full items-center gap-3 text-xs [&.router-link-active]:font-medium [&.router-link-active]:text-white",to:"/"},{default:e.withCtx(()=>[e.renderSlot(o.$slots,"default")]),_:3}),e.createElementVNode("button",{onClick:a[0]||(a[0]=s=>e.unref(r).toggleSidebarItem()),class:"cursor-pointer",type:"button"},a[1]||(a[1]=[e.createElementVNode("svg",{xmlns:"http://www.w3.org/2000/svg",width:"16",height:"16",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor","stroke-width":"2","stroke-linecap":"round","stroke-linejoin":"round",class:"lucide lucide-chevron-down-icon lucide-chevron-down stroke-white"},[e.createElementVNode("path",{d:"m6 9 6 6 6-6"})],-1)]))])}}},he={},ke={key:0,class:"text-primary-950 px-1 text-sm font-medium"},_e={class:"mt-2"};function xe(t,r){return e.openBlock(),e.createElementBlock("nav",null,[t.$slots.title?(e.openBlock(),e.createElementBlock("b",ke,[e.renderSlot(t.$slots,"title")])):e.createCommentVNode("",!0),e.createElementVNode("div",_e,[e.renderSlot(t.$slots,"items")])])}const T=i(he,[["render",xe]]),N={primary:{backgroundColor:"bg-brand-primary-700",textColor:"text-white"},secondary:{backgroundColor:"bg-neutral-100",textColor:"text-neutral-700"},success:{backgroundColor:"bg-success-400",textColor:"text-white"},danger:{backgroundColor:"bg-danger-600",textColor:"text-white"},warning:{backgroundColor:"bg-warning-500",textColor:"text-neutral-950"},secondaryPrimary:{backgroundColor:"bg-brand-primary-100",textColor:"text-brand-primary-700"},secondaryAltPrimary:{backgroundColor:"bg-primary-100",textColor:"text-primary-700"},secondarySuccess:{backgroundColor:"bg-success-100",textColor:"text-success-700"},secondaryDanger:{backgroundColor:"bg-danger-100",textColor:"text-danger-700"},secondaryWarning:{backgroundColor:"bg-warning-100",textColor:"text-warning-700"},outlined:{backgroundColor:"bg-transparent",textColor:"text-neutral-700",borderColor:"border border-neutral-200"},outlinedPrimary:{backgroundColor:"bg-transparent",textColor:"text-brand-primary-700",borderColor:"border border-brand-primary-300"},outlinedSuccess:{backgroundColor:"bg-transparent",textColor:"text-success-600",borderColor:"border border-success-300"},outlinedDanger:{backgroundColor:"bg-transparent",textColor:"text-danger-600",borderColor:"border border-danger-300"},outlinedWarning:{backgroundColor:"bg-transparent",textColor:"text-warning-600",borderColor:"border border-warning-300"},ghost:{backgroundColor:"bg-transparent",textColor:"text-neutral-700"},ghostPrimary:{backgroundColor:"bg-transparent",textColor:"text-brand-primary-700"},ghostSuccess:{backgroundColor:"bg-transparent",textColor:"text-success-600"},ghostDanger:{backgroundColor:"bg-transparent",textColor:"text-danger-600"},ghostWarning:{backgroundColor:"bg-transparent",textColor:"text-warning-600"}},g={primary:{backgroundColor:"bg-gradient-to-br from-brand-primary-500 to-brand-primary-700",textColor:"text-white",hoverBackgroundColor:"hover:from-brand-primary-700 hover:to-brand-primary-800",focusRing:"focus:ring-brand-primary-300"},secondary:{backgroundColor:"bg-neutral-100",textColor:"text-neutral-700",hoverBackgroundColor:"hover:bg-neutral-200",focusRing:"focus:ring-neutral-300"},success:{backgroundColor:"bg-success-400",textColor:"text-white",hoverBackgroundColor:"hover:bg-success-500",focusRing:"focus:ring-success-300"},danger:{backgroundColor:"bg-danger-600",textColor:"text-white",hoverBackgroundColor:"hover:bg-danger-700",focusRing:"focus:ring-danger-300"},warning:{backgroundColor:"bg-warning-500",textColor:"text-neutral-950",hoverBackgroundColor:"hover:bg-warning-600",focusRing:"focus:ring-warning-300"},secondaryPrimary:{backgroundColor:"bg-brand-primary-100",textColor:"text-brand-primary-700",hoverBackgroundColor:"hover:bg-brand-primary-200",focusRing:"focus:ring-brand-primary-200"},secondaryAltPrimary:{backgroundColor:"bg-primary-100",textColor:"text-primary-700",hoverBackgroundColor:"hover:bg-primary-200",focusRing:"focus:ring-primary-200"},secondarySuccess:{backgroundColor:"bg-success-100",textColor:"text-success-700",hoverBackgroundColor:"hover:bg-success-200",focusRing:"focus:ring-success-200"},secondaryDanger:{backgroundColor:"bg-danger-100",textColor:"text-danger-700",hoverBackgroundColor:"hover:bg-danger-200",focusRing:"focus:ring-danger-200"},secondaryWarning:{backgroundColor:"bg-warning-100",textColor:"text-warning-700",hoverBackgroundColor:"hover:bg-warning-200",focusRing:"focus:ring-warning-200"},outlined:{backgroundColor:"bg-transparent",textColor:"text-neutral-700",borderColor:"border border-neutral-200",hoverBackgroundColor:"hover:bg-neutral-100",hoverTextColor:"hover:text-neutral-900",focusRing:"focus:ring-neutral-200"},outlinedPrimary:{backgroundColor:"bg-transparent",textColor:"text-brand-primary-700",borderColor:"border border-brand-primary-300",hoverBackgroundColor:"hover:bg-brand-primary-100",hoverTextColor:"hover:text-brand-primary-800",focusRing:"focus:ring-brand-primary-200"},outlinedSuccess:{backgroundColor:"bg-transparent",textColor:"text-success-600",borderColor:"border border-success-300",hoverBackgroundColor:"hover:bg-success-100",hoverTextColor:"hover:text-success-700",focusRing:"focus:ring-success-200"},outlinedDanger:{backgroundColor:"bg-transparent",textColor:"text-danger-600",borderColor:"border border-danger-300",hoverBackgroundColor:"hover:bg-danger-100",hoverTextColor:"hover:text-danger-700",focusRing:"focus:ring-danger-200"},outlinedWarning:{backgroundColor:"bg-transparent",textColor:"text-warning-600",borderColor:"border border-warning-300",hoverBackgroundColor:"hover:bg-warning-100",hoverTextColor:"hover:text-warning-700",focusRing:"focus:ring-warning-200"},ghost:{backgroundColor:"bg-transparent",textColor:"text-neutral-700",hoverBackgroundColor:"hover:bg-neutral-100",hoverTextColor:"hover:text-neutral-900",focusRing:"focus:ring-neutral-200"},ghostPrimary:{backgroundColor:"bg-transparent",textColor:"text-brand-primary-700",hoverBackgroundColor:"hover:bg-brand-primary-100",hoverTextColor:"hover:text-brand-primary-800",focusRing:"focus:ring-brand-primary-200"},ghostSuccess:{backgroundColor:"bg-transparent",textColor:"text-success-600",hoverBackgroundColor:"hover:bg-success-100",hoverTextColor:"hover:text-success-700",focusRing:"focus:ring-success-200"},ghostDanger:{backgroundColor:"bg-transparent",textColor:"text-danger-600",hoverBackgroundColor:"hover:bg-danger-100",hoverTextColor:"hover:text-danger-700",focusRing:"focus:ring-danger-200"},ghostWarning:{backgroundColor:"bg-transparent",textColor:"text-warning-600",hoverBackgroundColor:"hover:bg-warning-100",hoverTextColor:"hover:text-warning-700",focusRing:"focus:ring-warning-200"}},I={__name:"Badge",props:{variant:{type:String,default:"primary"}},setup(t){const r=t;return(o,a)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(["rounded-full px-3 py-1 text-xs font-medium",[e.unref(N)[r.variant].backgroundColor,e.unref(N)[r.variant].textColor]])},[e.renderSlot(o.$slots,"default")],2))}},u={__name:"Button",props:{variant:{type:String,default:"primary"}},setup(t,{expose:r}){const o=t,a=e.ref(null);return r({buttonRef:a}),(n,s)=>(e.openBlock(),e.createElementBlock("button",e.mergeProps(n.$attrs,{class:["cursor-pointer rounded-lg px-4 py-2 text-xs transition-all active:scale-[0.97] disabled:cursor-not-allowed disabled:opacity-50 disabled:active:scale-100",[e.unref(g)[o.variant].backgroundColor,e.unref(g)[o.variant].borderColor,e.unref(g)[o.variant].textColor,e.unref(g)[o.variant].hoverBackgroundColor,e.unref(g)[o.variant].hoverTextColor,e.unref(g)[o.variant].focusRing]],ref_key:"buttonRef",ref:a}),[e.renderSlot(n.$slots,"default")],16))}},ye={},Ce={class:"rounded-2xl bg-white p-6"};function we(t,r){return e.openBlock(),e.createElementBlock("div",Ce,[e.renderSlot(t.$slots,"default")])}const b=i(ye,[["render",we]]),D={__name:"Checkbox",props:{modelValue:{},modelModifiers:{}},emits:["update:modelValue"],setup(t){const r=e.useModel(t,"modelValue"),o=e.ref(null);return(a,n)=>(e.openBlock(),e.createElementBlock("button",{onClick:n[1]||(n[1]=s=>o.value.click()),class:"group/checkbox has-checked:bg-brand-primary-700 flex size-4 cursor-pointer items-center justify-center rounded-sm bg-neutral-200 transition-all duration-300 active:scale-[0.50] has-disabled:cursor-not-allowed has-disabled:opacity-50"},[n[2]||(n[2]=e.createElementVNode("svg",{xmlns:"http://www.w3.org/2000/svg",width:"14",height:"14",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor","stroke-width":"2","stroke-linecap":"round","stroke-linejoin":"round",class:"lucide lucide-check-icon lucide-check scale-0 stroke-white opacity-0 group-has-[:checked]/checkbox:scale-100 group-has-[:checked]/checkbox:opacity-100"},[e.createElementVNode("path",{d:"M20 6 9 17l-5-5"})],-1)),e.withDirectives(e.createElementVNode("input",e.mergeProps(a.$attrs,{"onUpdate:modelValue":n[0]||(n[0]=s=>r.value=s),type:"checkbox",ref_key:"checkboxRef",ref:o,hidden:""}),null,16),[[e.vModelCheckbox,r.value]])]))}},R={__name:"Dialog",setup(t){const r=e.ref(!1);function o(){r.value=!r.value}return e.provide("DIALOG_META",{toggled:r,toggleDialog:o}),(a,n)=>e.renderSlot(a.$slots,"default",{toggled:r.value,toggleDialog:o})}},f={__name:"DialogBackground",setup(t){return e.onMounted(()=>{document.querySelector("body").classList.add("overflow-hidden")}),e.onUnmounted(()=>{document.querySelector("body").classList.remove("overflow-hidden")}),(r,o)=>(e.openBlock(),e.createElementBlock("div",e.mergeProps(r.$attrs,{class:"pointer-events-auto fixed inset-0 z-[100] min-h-screen bg-black/80 backdrop-blur-[2px]"}),[e.renderSlot(r.$slots,"default")],16))}},P={__name:"DialogContent",props:{class:{type:String}},setup(t){const r=t,{toggled:o,toggleDialog:a}=e.inject("DIALOG_META");return(n,s)=>(e.openBlock(),e.createBlock(e.Teleport,{to:"body"},[e.createVNode(e.Transition,{name:"fade-in"},{default:e.withCtx(()=>[e.unref(o)?(e.openBlock(),e.createBlock(f,{key:0,onClick:s[0]||(s[0]=c=>e.unref(a)()),class:"z-[175]"})):e.createCommentVNode("",!0)]),_:1}),e.createVNode(e.Transition,{name:"fade-in-dialog"},{default:e.withCtx(()=>[e.unref(o)?(e.openBlock(),e.createBlock(b,{key:0,class:e.normalizeClass(["fixed top-1/2 left-1/2 z-[200] -translate-x-1/2 -translate-y-1/2 rounded-xl bg-white transition-all",r.class])},{default:e.withCtx(()=>[e.renderSlot(n.$slots,"default")]),_:3},8,["class"])):e.createCommentVNode("",!0)]),_:3})]))}},j={__name:"DialogToggle",setup(t){const r=e.useSlots(),{toggleDialog:o}=e.inject("DIALOG_META");return(a,n)=>{var s,c;return e.openBlock(),e.createBlock(e.resolveDynamicComponent(e.cloneVNode((c=(s=e.unref(r)).default)==null?void 0:c.call(s)[0],{onClick:e.unref(o)})))}}},Be={class:"flex flex-col items-center justify-center gap-8"},Se={class:"flex items-center gap-2"},z={__name:"Empty",setup(t){return(r,o)=>(e.openBlock(),e.createElementBlock("div",Be,[o[2]||(o[2]=e.createStaticVNode('<div class="flex max-w-xs flex-col items-center gap-2 text-center"><div class="bg-brand-primary-100 mb-2 grid size-12 place-items-center rounded-full"><svg xmlns="http://www.w3.org/2000/svg" class="text-brand-primary-700 h-6 w-6" fill="none" viewBox="0 0 24 24" stroke="currentColor" stroke-width="2"><path stroke-linecap="round" stroke-linejoin="round" d="M9 13h6m-3-3v6m5 5H7a2 2 0 01-2-2V5a2 2 0 012-2h5.586a1 1 0 01.707.293l5.414 5.414a1 1 0 01.293.707V19a2 2 0 01-2 2z"></path></svg></div><b class="text-lg font-medium">No Projects Yet</b><p class="text-sm text-neutral-600"> You haven't created any projects yet. Get started by creating your first project. </p></div>',1)),e.createElementVNode("div",Se,[e.createVNode(u,{class:"h-10",variant:"outlined"},{default:e.withCtx(()=>o[0]||(o[0]=[e.createTextVNode("Import Project")])),_:1,__:[0]}),e.createVNode(u,{class:"h-10",variant:"primary"},{default:e.withCtx(()=>o[1]||(o[1]=[e.createTextVNode("Create Project")])),_:1,__:[1]})])]))}},$e={class:"group flex flex-col gap-2"},M={__name:"FormField",props:{validate:{type:Boolean,default:!1}},setup(t){return(r,o)=>(e.openBlock(),e.createElementBlock("div",$e,[e.renderSlot(r.$slots,"default")]))}},Ae={},Ee={class:"text-danger-700 hidden h-0 text-xs opacity-0 transition-all group-has-user-invalid:mt-1 group-has-user-invalid:block group-has-user-invalid:h-4 group-has-user-invalid:opacity-100"};function Ve(t,r){return e.openBlock(),e.createElementBlock("p",Ee,[e.renderSlot(t.$slots,"default",{},void 0,!0)])}const L=i(Ae,[["render",Ve],["__scopeId","data-v-00088154"]]),G={__name:"Input",props:{modelValue:{},modelModifiers:{}},emits:["update:modelValue"],setup(t){const r=e.useModel(t,"modelValue");return(o,a)=>e.withDirectives((e.openBlock(),e.createElementBlock("input",{"onUpdate:modelValue":a[0]||(a[0]=n=>r.value=n),class:"text-primary-950 focus:ring-brand-primary-700 focus:user-invalid:ring-danger-700 user-invalid:ring-danger-700 rounded-lg border-[1px] border-neutral-200 bg-white px-3 py-2 text-xs ring-offset-2 transition-all duration-300 outline-none placeholder:text-neutral-400 user-invalid:ring-2 focus:ring-2 disabled:cursor-not-allowed disabled:opacity-50"},null,512)),[[e.vModelText,r.value]])}},Te={};function Ne(t,r){return e.openBlock(),e.createElementBlock("label",e.mergeProps(t.$attrs,{class:"text-primary-950 text-xs font-medium transition-all"}),[e.renderSlot(t.$slots,"default")],16)}const W=i(Te,[["render",Ne]]),H={__name:"Radio",props:e.mergeModels({variant:{type:String,default:"small"}},{modelValue:{},modelModifiers:{}}),emits:["update:modelValue"],setup(t){const r=e.useModel(t,"modelValue"),o=t,a=e.ref(null),n={small:{outerCircleSize:"size-4",innerCircleSize:"size-2.5"},large:{outerCircleSize:"size-5",innerCircleSize:"size-3"}};return(s,c)=>(e.openBlock(),e.createElementBlock("button",{onClick:c[1]||(c[1]=d=>a.value.click()),class:e.normalizeClass(["group/radio has-checked:border-brand-primary-700 flex cursor-pointer items-center justify-center rounded-full border-[1px] border-transparent bg-neutral-100 duration-300 active:scale-[0.80] has-checked:bg-white",n[o.variant].outerCircleSize]),role:"radio",type:"button"},[e.createElementVNode("div",{class:e.normalizeClass(["group-has-checked/radio:bg-brand-primary-700 grid place-items-center rounded-full opacity-0 transition-all group-has-checked/radio:opacity-100",n[o.variant].innerCircleSize])},[e.renderSlot(s.$slots,"default")],2),e.withDirectives(e.createElementVNode("input",e.mergeProps(s.$attrs,{"onUpdate:modelValue":c[0]||(c[0]=d=>r.value=d),type:"radio",ref_key:"radioRef",ref:a,hidden:""}),null,16),[[e.vModelRadio,r.value]])],2))}},Ie="bg-[url('data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIyNCIgaGVpZ2h0PSIyNCIgdmlld0JveD0iMCAwIDI0IDI0IiBmaWxsPSJub25lIiBzdHJva2U9IiM1YjYxNmUiIHN0cm9rZS13aWR0aD0iMiIgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIiBzdHJva2UtbGluZWpvaW49InJvdW5kIiBjbGFzcz0ibHVjaWRlIGx1Y2lkZS1jaGV2cm9uLWRvd24iPjxwYXRoIGQ9Im02IDkgNiA2IDYtNiIvPjwvc3ZnPg==')]",F={__name:"Select",props:{modelValue:{},modelModifiers:{}},emits:["update:modelValue"],setup(t){const r=e.useModel(t,"modelValue");return(o,a)=>e.withDirectives((e.openBlock(),e.createElementBlock("select",e.mergeProps(o.$attrs,{"onUpdate:modelValue":a[0]||(a[0]=n=>r.value=n),class:["text-primary-950 user-invalid:ring-danger-700 focus:user-invalid:ring-danger-700 focus:ring-brand-primary-700 appearance-none rounded-lg border-[1px] border-neutral-200 bg-white bg-[length:16px] bg-[right_12px_center] bg-no-repeat px-3 py-2 text-xs ring-offset-2 transition-all outline-none user-invalid:ring-2 focus:ring-2 disabled:cursor-not-allowed disabled:opacity-50",Ie]}),[e.renderSlot(o.$slots,"default")],16)),[[e.vModelSelect,r.value]])}},q={__name:"Sheet",setup(t){const r=e.ref(!1);function o(){r.value=!r.value}return e.provide("SHEET_META",{toggled:r,toggleSheet:o}),(a,n)=>e.renderSlot(a.$slots,"default",{toggled:r.value,toggleSheet:o})}},O={__name:"SheetContent",props:{class:{type:String}},setup(t){const r=t,{toggled:o,toggleSheet:a}=e.inject("SHEET_META");return(n,s)=>(e.openBlock(),e.createBlock(e.Teleport,{to:"body"},[e.createVNode(e.Transition,{name:"fade-in"},{default:e.withCtx(()=>[e.unref(o)?(e.openBlock(),e.createBlock(f,{key:0,onClick:s[0]||(s[0]=c=>e.unref(a)())})):e.createCommentVNode("",!0)]),_:1}),e.createVNode(e.Transition,{name:"slide"},{default:e.withCtx(()=>[e.unref(o)?(e.openBlock(),e.createBlock(b,{key:0,class:e.normalizeClass(["fixed top-1/2 right-0 z-[150] h-full w-3/4 -translate-y-1/2 rounded-e-none bg-white transition-all md:right-[1rem] md:h-[calc(100dvh-2rem)] md:w-96 md:rounded-xl",r.class])},{default:e.withCtx(()=>[e.renderSlot(n.$slots,"default")]),_:3},8,["class"])):e.createCommentVNode("",!0)]),_:3})]))}},U={__name:"SheetToggle",setup(t){const r=e.useSlots(),{toggleSheet:o}=e.inject("SHEET_META");return(a,n)=>{var s,c;return e.openBlock(),e.createBlock(e.resolveDynamicComponent(e.cloneVNode((c=(s=e.unref(r)).default)==null?void 0:c.call(s)[0],{onClick:e.unref(o)})))}}},De={},Re={class:"bg-primary-100 animate-pulse rounded-lg"};function Pe(t,r){return e.openBlock(),e.createElementBlock("div",Re)}const Y=i(De,[["render",Pe]]),Z={__name:"Switch",props:["modelValue"],emits:["update:modelValue"],setup(t,{emit:r}){const o=r,a=t;function n(){o("update:modelValue",!a.modelValue)}return(s,c)=>(e.openBlock(),e.createElementBlock("button",e.mergeProps(s.$attrs,{onClick:c[0]||(c[0]=d=>n()),class:["group/switch h-5 w-9 cursor-pointer rounded-full p-0.5 transition-all duration-300 disabled:cursor-not-allowed disabled:opacity-50",a.modelValue?"from-brand-primary-600 to-brand-primary-700 bg-gradient-to-br":"bg-neutral-200"],role:"switch",type:"button"}),[e.createElementVNode("span",{class:e.normalizeClass(["pointer-events-none flex size-4 items-center justify-center rounded-full bg-white shadow-md transition-all duration-300",{"translate-x-full":a.modelValue}])},[e.renderSlot(s.$slots,"icon")],2)],16))}},je={class:"w-full"},ze={class:"h-16"},Me={key:0},Le={key:0,class:"pe-4"},J={__name:"Table",props:{columns:{type:Array,required:!0},data:{type:Array,required:!0}},setup(t){const r=t;return(o,a)=>(e.openBlock(),e.createElementBlock("table",je,[e.createElementVNode("thead",null,[e.createElementVNode("tr",ze,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(r.columns,n=>(e.openBlock(),e.createElementBlock("th",{key:n.key,class:"text-xs font-medium text-neutral-600 first-of-type:ps-4"},e.toDisplayString(n.label),1))),128)),o.$slots.actions?(e.openBlock(),e.createElementBlock("th",Me)):e.createCommentVNode("",!0)])]),e.createElementVNode("tbody",null,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(r.data,(n,s)=>(e.openBlock(),e.createElementBlock("tr",{key:s,class:"odd:bg-background-main/50 hover:bg-background-main min-h-16 rounded-md transition-all"},[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(r.columns,c=>(e.openBlock(),e.createElementBlock("td",{key:c.key,class:"text-primary-950 py-4 text-xs first-of-type:rounded-s-md first-of-type:ps-4 last-of-type:rounded-e-md last-of-type:pe-4"},[e.renderSlot(o.$slots,c.key,{row:n},()=>[e.createTextVNode(e.toDisplayString(n[c.key]),1)])]))),128)),o.$slots.actions?(e.openBlock(),e.createElementBlock("td",Le,[e.renderSlot(o.$slots,"actions",{row:n})])):e.createCommentVNode("",!0)]))),128))])]))}},Ge={class:"overflow-x-scroll rounded-xl bg-neutral-100/50 p-1 [&::-webkit-scrollbar]:hidden"},X={__name:"Tabs",props:{default:{default:null}},setup(t){const r=t,o=e.ref(r.default);function a(n){o.value=n}return e.provide("TAB_DATA",{currentValue:o,setCurrentValue:a}),(n,s)=>(e.openBlock(),e.createElementBlock("div",Ge,[e.renderSlot(n.$slots,"default")]))}},Q=i({__name:"TabItem",props:{value:{required:!0}},setup(t){const r=t,o=e.inject("TAB_DATA"),{currentValue:a,setCurrentValue:n}=o,s=e.computed(()=>a.value===r.value?["bg-white","font-medium","text-primary-700","shadow-xl","tab-active"]:"text-neutral-600");return(c,d)=>(e.openBlock(),e.createElementBlock("button",{onClick:d[0]||(d[0]=v=>e.unref(n)(r.value)),class:e.normalizeClass(["tab h-8 cursor-pointer rounded-lg px-3 text-xs transition-all disabled:cursor-not-allowed disabled:opacity-50",s.value])},[e.renderSlot(c.$slots,"default",{},void 0,!0)],2))}},[["__scopeId","data-v-9e06f71f"]]),K={__name:"TextArea",props:["modelValue"],setup(t){const r=t,o=e.ref(r.modelValue);return(a,n)=>e.withDirectives((e.openBlock(),e.createElementBlock("textarea",e.mergeProps({onInput:n[0]||(n[0]=s=>a.$emit("update:modelValue",s.target.value))},a.$attrs,{"onUpdate:modelValue":n[1]||(n[1]=s=>o.value=s),class:"text-primary-950 neutral-400:text-neutral-400 focus:ring-brand-primary-700 user-invalid:ring-danger-700 focus:user-invalid:ring-danger-700 rounded-lg border-[1px] border-neutral-200 px-3 py-2 text-xs transition-all outline-none user-invalid:ring-2 focus:ring-2 focus:ring-offset-2 disabled:cursor-not-allowed disabled:opacity-50"}),null,16)),[[e.vModelText,o.value]])}},We={install(t){t.component("AppHeader",k),t.component("AppHeaderLink",_),t.component("AppLayout",x),t.component("AppMain",y),t.component("AppNavTabs",C),t.component("AppNavTab",w),t.component("AppSidebar",B),t.component("AppSidebarItem",S),t.component("AppSidebarItemChild",$),t.component("AppSidebarItemChildren",A),t.component("AppSidebarItemParent",E),t.component("AppSidebarToggle",V),t.component("AppSidebarNavSection",T),t.component("Badge",I),t.component("Button",u),t.component("Checkbox",D),t.component("Card",b),t.component("Dialog",R),t.component("DialogContent",P),t.component("DialogToggle",j),t.component("DialogBackground",f),t.component("Empty",z),t.component("FormField",M),t.component("FormFieldError",L),t.component("Input",G),t.component("Label",W),t.component("Radio",H),t.component("Select",F),t.component("Sheet",q),t.component("SheetContent",O),t.component("SheetToggle",U),t.component("SkeletonLoader",Y),t.component("Switch",Z),t.component("Table",J),t.component("Tabs",X),t.component("TabItem",Q),t.component("TextArea",K)}};l.AppHeader=k,l.AppHeaderLink=_,l.AppLayout=x,l.AppMain=y,l.AppNavTab=w,l.AppNavTabs=C,l.AppSidebar=B,l.AppSidebarItem=S,l.AppSidebarItemChild=$,l.AppSidebarItemChildren=A,l.AppSidebarItemParent=E,l.AppSidebarNavSection=T,l.AppSidebarToggle=V,l.Badge=I,l.Button=u,l.Card=b,l.Checkbox=D,l.Dialog=R,l.DialogBackground=f,l.DialogContent=P,l.DialogToggle=j,l.Empty=z,l.FormField=M,l.FormFieldError=L,l.Input=G,l.Label=W,l.Radio=H,l.Select=F,l.Sheet=q,l.SheetContent=O,l.SheetToggle=U,l.SkeletonLoader=Y,l.Switch=Z,l.TabItem=Q,l.Table=J,l.Tabs=X,l.TextArea=K,l.default=We,Object.defineProperties(l,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}})});
|
|
1
|
+
(function(l,e){typeof exports=="object"&&typeof module<"u"?e(exports,require("vue"),require("vue-router")):typeof define=="function"&&define.amd?define(["exports","vue","vue-router"],e):(l=typeof globalThis<"u"?globalThis:l||self,e(l.ScrubbedTailwindComponentsV2={},l.Vue,l.vueRouter))})(this,function(l,e,m){"use strict";const te={class:"flex w-full items-center justify-between"},re={class:"flex items-center gap-2"},oe={class:"flex items-center gap-10"},ne={class:"hidden gap-6 sm:flex"},x={__name:"AppHeader",setup(t){const r=e.inject("APP_DATA"),{isSidebarToggled:o,toggleSidebar:a}=r;return(n,s)=>(e.openBlock(),e.createElementBlock("header",{class:e.normalizeClass(["fixed top-0 flex h-16 w-dvw items-center justify-center bg-white/50 px-3 backdrop-blur sm:px-6",{"rounded-t-2xl":e.unref(o)}])},[e.createElementVNode("nav",te,[e.createElementVNode("div",re,[e.createElementVNode("button",{onClick:s[0]||(s[0]=c=>e.unref(a)()),class:"block cursor-pointer rounded-full p-2 hover:bg-neutral-100 sm:hidden"},s[1]||(s[1]=[e.createElementVNode("svg",{xmlns:"http://www.w3.org/2000/svg",width:"24",height:"24",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor","stroke-width":"2","stroke-linecap":"round","stroke-linejoin":"round",class:"lucide lucide-menu-icon lucide-menu size-5 stroke-neutral-600"},[e.createElementVNode("path",{d:"M4 12h16"}),e.createElementVNode("path",{d:"M4 18h16"}),e.createElementVNode("path",{d:"M4 6h16"})],-1)])),e.renderSlot(n.$slots,"header-img")]),e.createElementVNode("div",oe,[e.createElementVNode("ul",ne,[e.renderSlot(n.$slots,"header-links")]),e.renderSlot(n.$slots,"header-actions")])])],2))}},ae=["href"],y={__name:"AppHeaderLink",props:{to:{type:String,required:!0}},setup(t){const r=t;return(o,a)=>(e.openBlock(),e.createElementBlock("li",null,[r.to.startsWith("/")?(e.openBlock(),e.createBlock(e.unref(m.RouterLink),{key:0,class:"hover:text-primary-950 [&.router-link-active]:text-primary-950 text-xs uppercase text-neutral-600 hover:transition-all [&.router-link-active]:font-semibold",to:r.to},{default:e.withCtx(()=>[e.renderSlot(o.$slots,"default")]),_:3},8,["to"])):(e.openBlock(),e.createElementBlock("a",{key:1,class:"hover:text-primary-950 text-xs uppercase text-neutral-600 hover:transition-all",href:r.to},[e.renderSlot(o.$slots,"default")],8,ae))]))}},le={class:"relative"},se={class:"flex"},C={__name:"AppLayout",setup(t){const r=e.ref(!1);function o(){window.innerWidth<=640?(r.value=!r.value,a()):r.value&&(r.value=!1,a())}function a(){const n=document.querySelector("body");n.classList.contains("bg-black")?n.classList.remove("bg-black"):n.classList.add("bg-black")}return e.provide("APP_DATA",{isSidebarToggled:r,toggleSidebar:o}),(n,s)=>{var c,i,b,u,d,_;return e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(["bg-white transition-all duration-500 ease-[cubic-bezier(.32,.72,0,1)]",{"origin-[center_top] translate-y-4 scale-93":r.value}])},[e.createElementVNode("div",le,[(e.openBlock(),e.createBlock(e.resolveDynamicComponent(e.cloneVNode((i=(c=n.$slots).default)==null?void 0:i.call(c)[0])))),e.createElementVNode("div",se,[(e.openBlock(),e.createBlock(e.resolveDynamicComponent(e.cloneVNode((u=(b=n.$slots).default)==null?void 0:u.call(b)[1])))),(e.openBlock(),e.createBlock(e.resolveDynamicComponent(e.cloneVNode((_=(d=n.$slots).default)==null?void 0:_.call(d)[2]))))])])],2)}}},B={__name:"AppMain",setup(t){const r=e.inject("APP_DATA"),{isSidebarToggled:o}=r;return(a,n)=>(e.openBlock(),e.createElementBlock("main",{class:e.normalizeClass(["bg-background-main fixed z-[-1] h-svh w-full overflow-auto px-6 pt-24 pb-9 sm:top-16 sm:ml-[223px] sm:h-[calc(100dvh-4rem)] sm:w-[calc(100dvw-223px)] sm:pt-9",e.unref(o)?"overflow-hidden rounded-t-xl sm:rounded-none":"sm:rounded-tl-2xl"])},[e.renderSlot(a.$slots,"default")],2))}},p=(t,r)=>{const o=t.__vccOpts||t;for(const[a,n]of r)o[a]=n;return o},ce={},ie={class:"flex w-full overflow-x-auto border-b-[1px] border-neutral-200 [&::-webkit-scrollbar]:hidden"};function de(t,r){return e.openBlock(),e.createElementBlock("div",ie,[e.renderSlot(t.$slots,"default")])}const w=p(ce,[["render",de]]),pe={class:"shrink-0"},S={__name:"AppNavTab",props:{to:{type:String,required:!0}},setup(t){const r=t;return e.ref(null),(o,a)=>(e.openBlock(),e.createElementBlock("div",pe,[e.createVNode(e.unref(m.RouterLink),{class:"[&.router-link-exact-active]:text-primary-950 [&.router-link-exact-active]:border-brand-primary-700 hover:text-brand-primary-700 group relative flex h-12 shrink-0 items-center justify-between gap-2 border-b-2 border-transparent px-3 text-sm text-neutral-600 transition-all [&.router-link-exact-active]:font-medium",to:r.to},{default:e.withCtx(()=>[e.renderSlot(o.$slots,"default"),a[0]||(a[0]=e.createElementVNode("div",{class:"bg-primary-100 absolute inset-x-0 z-[-1] h-8 w-full rounded-lg opacity-0 transition-all contain-strict group-hover:transform-none group-hover:opacity-100 group-hover:[transform-origin:50%_50%_0px]"},null,-1))]),_:3,__:[0]},8,["to"])]))}},me={class:"fixed left-0 top-0 hidden w-[223px] space-y-4 bg-white px-4 py-8 sm:top-[64px] sm:block"},$=p({__name:"AppSidebar",setup(t){const r=e.inject("APP_DATA"),{isSidebarToggled:o,toggleSidebar:a}=r;return(n,s)=>(e.openBlock(),e.createElementBlock(e.Fragment,null,[e.createElementVNode("aside",me,[e.renderSlot(n.$slots,"default",{},void 0,!0)]),(e.openBlock(),e.createBlock(e.Teleport,{to:"body"},[e.createElementVNode("div",{class:"shadow-t-2xl fixed bottom-0 z-50 h-[60svh] w-full space-y-4 overflow-y-scroll rounded-t-2xl bg-white p-4 transition-all duration-500 ease-[cubic-bezier(.32,.72,0,1)] [&::-webkit-scrollbar]:hidden",style:e.normalizeStyle(e.unref(o)?"transform: translateZ(0)":"transform: translate3d(0,60svh,0)")},[e.renderSlot(n.$slots,"default",{},void 0,!0)],4),e.createElementVNode("div",{onClick:s[0]||(s[0]=c=>e.unref(a)()),class:e.normalizeClass(["backdrop backdrop-blur-[0.50px] transition-all duration-300 [transition-behavior:allow-discrete]",e.unref(o)?"fixed inset-0 z-40 block bg-black/80 opacity-100":"hidden"])},null,2)]))],64))}},[["__scopeId","data-v-aaece1c7"]]),ge={class:"flex flex-col"},E={__name:"AppSidebarItem",setup(t){m.useRoute();const r=e.ref(!1);function o(){r.value=!r.value}return e.provide("SIDEBAR_TOGGLE",{toggled:r,toggleSidebarItem:o}),(a,n)=>(e.openBlock(),e.createElementBlock("div",ge,[e.renderSlot(a.$slots,"default")]))}},ue=["href"],A={__name:"AppSidebarItemChild",props:{to:{type:[String,Object],required:!0}},setup(t){const r=t;return(o,a)=>typeof r.to=="object"||r.to.startsWith("/")?(e.openBlock(),e.createBlock(e.unref(m.RouterLink),{key:0,class:"[&.router-link-exact-active]:text-primary-950 [&.router-link-exact-active]:bg-background-main text-primary-950 hover:bg-background-main block h-10 items-center gap-3 overflow-hidden rounded-lg px-3 text-xs leading-[40px] text-ellipsis whitespace-nowrap transition-all [&.router-link-exact-active]:font-medium",to:r.to},{default:e.withCtx(()=>[e.renderSlot(o.$slots,"default")]),_:3},8,["to"])):(e.openBlock(),e.createElementBlock("a",{key:1,class:"text-primary-950 hover:bg-background-main block h-10 items-center gap-3 overflow-hidden rounded-lg px-3 text-xs leading-[40px] text-ellipsis whitespace-nowrap transition-all",href:r.to},[e.renderSlot(o.$slots,"default")],8,ue))}},V={__name:"AppSidebarItemChildren",setup(t){const r=e.inject("SIDEBAR_TOGGLE"),{toggled:o}=r;return(a,n)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(["max-h-0 overflow-y-hidden rounded-b-lg opacity-0 transition-all",{"mt-2 max-h-max overflow-y-auto px-2 opacity-100":e.unref(o)}])},[e.renderSlot(a.$slots,"default")],2))}},be={class:"link group/sidebar-item hover:bg-background-main peer has-[&.router-link-active]:from-brand-primary-50 has-[&.router-link-active]:to-brand-primary-100 flex h-10 items-center justify-between rounded-lg px-3 transition-all has-[&.router-link-active]:bg-gradient-to-br"},fe=["href"],T={__name:"AppSidebarItemParent",props:{to:{type:[String,Object],required:!0},name:{type:String},hasChildren:{type:Boolean,default:!1}},setup(t){const r=m.useRoute(),o=t,a=e.inject("SIDEBAR_TOGGLE"),n=e.inject("APP_DATA"),{toggled:s,toggleSidebarItem:c}=a,{toggleSidebar:i}=n;function b(){r.matched.some(d=>o.name===d.name)?s.value=!0:s.value=!1}return e.watch(r,()=>b(),{immediate:!0}),(u,d)=>(e.openBlock(),e.createElementBlock("div",be,[typeof o.to=="object"||o.to.startsWith("/")?(e.openBlock(),e.createBlock(e.unref(m.RouterLink),{key:0,onClick:d[0]||(d[0]=_=>e.unref(i)()),class:"[&.router-link-active]:text-primary-700 text-primary-950 peer flex h-full w-full items-center gap-3 text-xs [&.router-link-active]:font-medium",to:o.to},{default:e.withCtx(()=>[e.renderSlot(u.$slots,"default")]),_:3},8,["to"])):(e.openBlock(),e.createElementBlock("a",{key:1,class:"text-primary-950 peer flex h-full w-full items-center gap-3 text-xs",href:o.to},[e.renderSlot(u.$slots,"default")],8,fe)),o.hasChildren?(e.openBlock(),e.createElementBlock("button",{key:2,onClick:d[1]||(d[1]=_=>e.unref(c)()),class:"hover:bg-brand-primary-200 cursor-pointer rounded-full p-1 transition-all",type:"button"},[(e.openBlock(),e.createElementBlock("svg",{xmlns:"http://www.w3.org/2000/svg",width:"16",height:"16",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor","stroke-width":"2","stroke-linecap":"round","stroke-linejoin":"round",class:e.normalizeClass(["lucide lucide-chevron-down-icon lucide-chevron-down stroke-brand-primary-800 transition-all duration-300",{"rotate-180":e.unref(s)}])},d[2]||(d[2]=[e.createElementVNode("path",{d:"m6 9 6 6 6-6"},null,-1)]),2))])):e.createCommentVNode("",!0)]))}},he={class:"hover:bg-background-main has-[&.router-link-active]:active has-[&.router-link-active]:bg-primary-700 peer flex h-10 items-center justify-between rounded-lg px-3 transition-all"},N={__name:"AppSidebarToggle",setup(t){const r=e.inject("SIDEBAR_TOGGLE");return(o,a)=>{const n=e.resolveComponent("RouterLink");return e.openBlock(),e.createElementBlock("div",he,[e.createVNode(n,{class:"text-primary-950 peer flex h-full w-full items-center gap-3 text-xs [&.router-link-active]:font-medium [&.router-link-active]:text-white",to:"/"},{default:e.withCtx(()=>[e.renderSlot(o.$slots,"default")]),_:3}),e.createElementVNode("button",{onClick:a[0]||(a[0]=s=>e.unref(r).toggleSidebarItem()),class:"cursor-pointer",type:"button"},a[1]||(a[1]=[e.createElementVNode("svg",{xmlns:"http://www.w3.org/2000/svg",width:"16",height:"16",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor","stroke-width":"2","stroke-linecap":"round","stroke-linejoin":"round",class:"lucide lucide-chevron-down-icon lucide-chevron-down stroke-white"},[e.createElementVNode("path",{d:"m6 9 6 6 6-6"})],-1)]))])}}},ke={},_e={key:0,class:"text-primary-950 px-1 text-sm font-medium"},xe={class:"mt-2"};function ye(t,r){return e.openBlock(),e.createElementBlock("nav",null,[t.$slots.title?(e.openBlock(),e.createElementBlock("b",_e,[e.renderSlot(t.$slots,"title")])):e.createCommentVNode("",!0),e.createElementVNode("div",xe,[e.renderSlot(t.$slots,"items")])])}const D=p(ke,[["render",ye]]),I={primary:{backgroundColor:"bg-brand-primary-700",textColor:"text-white"},secondary:{backgroundColor:"bg-neutral-100",textColor:"text-neutral-700"},success:{backgroundColor:"bg-success-400",textColor:"text-white"},danger:{backgroundColor:"bg-danger-600",textColor:"text-white"},warning:{backgroundColor:"bg-warning-500",textColor:"text-neutral-950"},secondaryPrimary:{backgroundColor:"bg-brand-primary-100",textColor:"text-brand-primary-700"},secondaryAltPrimary:{backgroundColor:"bg-primary-100",textColor:"text-primary-700"},secondarySuccess:{backgroundColor:"bg-success-100",textColor:"text-success-700"},secondaryDanger:{backgroundColor:"bg-danger-100",textColor:"text-danger-700"},secondaryWarning:{backgroundColor:"bg-warning-100",textColor:"text-warning-700"},outlined:{backgroundColor:"bg-transparent",textColor:"text-neutral-700",borderColor:"border border-neutral-200"},outlinedPrimary:{backgroundColor:"bg-transparent",textColor:"text-brand-primary-700",borderColor:"border border-brand-primary-300"},outlinedSuccess:{backgroundColor:"bg-transparent",textColor:"text-success-600",borderColor:"border border-success-300"},outlinedDanger:{backgroundColor:"bg-transparent",textColor:"text-danger-600",borderColor:"border border-danger-300"},outlinedWarning:{backgroundColor:"bg-transparent",textColor:"text-warning-600",borderColor:"border border-warning-300"},ghost:{backgroundColor:"bg-transparent",textColor:"text-neutral-700"},ghostPrimary:{backgroundColor:"bg-transparent",textColor:"text-brand-primary-700"},ghostSuccess:{backgroundColor:"bg-transparent",textColor:"text-success-600"},ghostDanger:{backgroundColor:"bg-transparent",textColor:"text-danger-600"},ghostWarning:{backgroundColor:"bg-transparent",textColor:"text-warning-600"}},g={primary:{backgroundColor:"bg-gradient-to-br from-brand-primary-500 to-brand-primary-700",textColor:"text-white",hoverBackgroundColor:"hover:from-brand-primary-700 hover:to-brand-primary-800",focusRing:"focus:ring-brand-primary-300"},secondary:{backgroundColor:"bg-neutral-100",textColor:"text-neutral-700",hoverBackgroundColor:"hover:bg-neutral-200",focusRing:"focus:ring-neutral-300"},success:{backgroundColor:"bg-success-400",textColor:"text-white",hoverBackgroundColor:"hover:bg-success-500",focusRing:"focus:ring-success-300"},danger:{backgroundColor:"bg-danger-600",textColor:"text-white",hoverBackgroundColor:"hover:bg-danger-700",focusRing:"focus:ring-danger-300"},warning:{backgroundColor:"bg-warning-500",textColor:"text-neutral-950",hoverBackgroundColor:"hover:bg-warning-600",focusRing:"focus:ring-warning-300"},secondaryPrimary:{backgroundColor:"bg-brand-primary-100",textColor:"text-brand-primary-700",hoverBackgroundColor:"hover:bg-brand-primary-200",focusRing:"focus:ring-brand-primary-200"},secondaryAltPrimary:{backgroundColor:"bg-primary-100",textColor:"text-primary-700",hoverBackgroundColor:"hover:bg-primary-200",focusRing:"focus:ring-primary-200"},secondarySuccess:{backgroundColor:"bg-success-100",textColor:"text-success-700",hoverBackgroundColor:"hover:bg-success-200",focusRing:"focus:ring-success-200"},secondaryDanger:{backgroundColor:"bg-danger-100",textColor:"text-danger-700",hoverBackgroundColor:"hover:bg-danger-200",focusRing:"focus:ring-danger-200"},secondaryWarning:{backgroundColor:"bg-warning-100",textColor:"text-warning-700",hoverBackgroundColor:"hover:bg-warning-200",focusRing:"focus:ring-warning-200"},outlined:{backgroundColor:"bg-transparent",textColor:"text-neutral-700",borderColor:"border border-neutral-200",hoverBackgroundColor:"hover:bg-neutral-100",hoverTextColor:"hover:text-neutral-900",focusRing:"focus:ring-neutral-200"},outlinedPrimary:{backgroundColor:"bg-transparent",textColor:"text-brand-primary-700",borderColor:"border border-brand-primary-300",hoverBackgroundColor:"hover:bg-brand-primary-100",hoverTextColor:"hover:text-brand-primary-800",focusRing:"focus:ring-brand-primary-200"},outlinedSuccess:{backgroundColor:"bg-transparent",textColor:"text-success-600",borderColor:"border border-success-300",hoverBackgroundColor:"hover:bg-success-100",hoverTextColor:"hover:text-success-700",focusRing:"focus:ring-success-200"},outlinedDanger:{backgroundColor:"bg-transparent",textColor:"text-danger-600",borderColor:"border border-danger-300",hoverBackgroundColor:"hover:bg-danger-100",hoverTextColor:"hover:text-danger-700",focusRing:"focus:ring-danger-200"},outlinedWarning:{backgroundColor:"bg-transparent",textColor:"text-warning-600",borderColor:"border border-warning-300",hoverBackgroundColor:"hover:bg-warning-100",hoverTextColor:"hover:text-warning-700",focusRing:"focus:ring-warning-200"},ghost:{backgroundColor:"bg-transparent",textColor:"text-neutral-700",hoverBackgroundColor:"hover:bg-neutral-100",hoverTextColor:"hover:text-neutral-900",focusRing:"focus:ring-neutral-200"},ghostPrimary:{backgroundColor:"bg-transparent",textColor:"text-brand-primary-700",hoverBackgroundColor:"hover:bg-brand-primary-100",hoverTextColor:"hover:text-brand-primary-800",focusRing:"focus:ring-brand-primary-200"},ghostSuccess:{backgroundColor:"bg-transparent",textColor:"text-success-600",hoverBackgroundColor:"hover:bg-success-100",hoverTextColor:"hover:text-success-700",focusRing:"focus:ring-success-200"},ghostDanger:{backgroundColor:"bg-transparent",textColor:"text-danger-600",hoverBackgroundColor:"hover:bg-danger-100",hoverTextColor:"hover:text-danger-700",focusRing:"focus:ring-danger-200"},ghostWarning:{backgroundColor:"bg-transparent",textColor:"text-warning-600",hoverBackgroundColor:"hover:bg-warning-100",hoverTextColor:"hover:text-warning-700",focusRing:"focus:ring-warning-200"}},R={__name:"Badge",props:{variant:{type:String,default:"primary"}},setup(t){const r=t;return(o,a)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(["rounded-full px-3 py-1 text-xs font-medium",[e.unref(I)[r.variant].backgroundColor,e.unref(I)[r.variant].textColor]])},[e.renderSlot(o.$slots,"default")],2))}},f={__name:"Button",props:{variant:{type:String,default:"primary"}},setup(t,{expose:r}){const o=t,a=e.ref(null);return r({buttonRef:a}),(n,s)=>(e.openBlock(),e.createElementBlock("button",e.mergeProps(n.$attrs,{class:["cursor-pointer rounded-lg px-4 py-2 text-xs transition-all active:scale-[0.97] disabled:cursor-not-allowed disabled:opacity-50 disabled:active:scale-100",[e.unref(g)[o.variant].backgroundColor,e.unref(g)[o.variant].borderColor,e.unref(g)[o.variant].textColor,e.unref(g)[o.variant].hoverBackgroundColor,e.unref(g)[o.variant].hoverTextColor,e.unref(g)[o.variant].focusRing]],ref_key:"buttonRef",ref:a}),[e.renderSlot(n.$slots,"default")],16))}},Ce={},Be={class:"rounded-2xl bg-white p-6"};function we(t,r){return e.openBlock(),e.createElementBlock("div",Be,[e.renderSlot(t.$slots,"default")])}const h=p(Ce,[["render",we]]),P={__name:"Checkbox",props:{modelValue:{},modelModifiers:{}},emits:["update:modelValue"],setup(t){const r=e.useModel(t,"modelValue"),o=e.ref(null);return(a,n)=>(e.openBlock(),e.createElementBlock("button",{onClick:n[1]||(n[1]=s=>o.value.click()),class:"group/checkbox has-checked:bg-brand-primary-700 flex size-4 cursor-pointer items-center justify-center rounded-sm bg-neutral-200 transition-all duration-300 active:scale-[0.50] has-disabled:cursor-not-allowed has-disabled:opacity-50"},[n[2]||(n[2]=e.createElementVNode("svg",{xmlns:"http://www.w3.org/2000/svg",width:"14",height:"14",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor","stroke-width":"2","stroke-linecap":"round","stroke-linejoin":"round",class:"lucide lucide-check-icon lucide-check scale-0 stroke-white opacity-0 group-has-[:checked]/checkbox:scale-100 group-has-[:checked]/checkbox:opacity-100"},[e.createElementVNode("path",{d:"M20 6 9 17l-5-5"})],-1)),e.withDirectives(e.createElementVNode("input",e.mergeProps(a.$attrs,{"onUpdate:modelValue":n[0]||(n[0]=s=>r.value=s),type:"checkbox",ref_key:"checkboxRef",ref:o,hidden:""}),null,16),[[e.vModelCheckbox,r.value]])]))}},j={__name:"Dialog",setup(t){const r=e.ref(!1);function o(){r.value=!r.value}return e.provide("DIALOG_META",{toggled:r,toggleDialog:o}),(a,n)=>e.renderSlot(a.$slots,"default",{toggled:r.value,toggleDialog:o})}},k={__name:"DialogBackground",setup(t){return e.onMounted(()=>{document.querySelector("body").classList.add("overflow-hidden")}),e.onUnmounted(()=>{document.querySelector("body").classList.remove("overflow-hidden")}),(r,o)=>(e.openBlock(),e.createElementBlock("div",e.mergeProps(r.$attrs,{class:"pointer-events-auto fixed inset-0 z-[100] min-h-screen bg-black/80 backdrop-blur-[2px]"}),[e.renderSlot(r.$slots,"default")],16))}},z={__name:"DialogContent",props:{class:{type:String}},setup(t){const r=t,{toggled:o,toggleDialog:a}=e.inject("DIALOG_META");return(n,s)=>(e.openBlock(),e.createBlock(e.Teleport,{to:"body"},[e.createVNode(e.Transition,{name:"fade-in"},{default:e.withCtx(()=>[e.unref(o)?(e.openBlock(),e.createBlock(k,{key:0,onClick:s[0]||(s[0]=c=>e.unref(a)()),class:"z-[175]"})):e.createCommentVNode("",!0)]),_:1}),e.createVNode(e.Transition,{name:"fade-in-dialog"},{default:e.withCtx(()=>[e.unref(o)?(e.openBlock(),e.createBlock(h,{key:0,class:e.normalizeClass(["fixed top-1/2 left-1/2 z-[200] -translate-x-1/2 -translate-y-1/2 rounded-xl bg-white transition-all",r.class])},{default:e.withCtx(()=>[e.renderSlot(n.$slots,"default")]),_:3},8,["class"])):e.createCommentVNode("",!0)]),_:3})]))}},M={__name:"DialogToggle",setup(t){const r=e.useSlots(),{toggleDialog:o}=e.inject("DIALOG_META");return(a,n)=>{var s,c;return e.openBlock(),e.createBlock(e.resolveDynamicComponent(e.cloneVNode((c=(s=e.unref(r)).default)==null?void 0:c.call(s)[0],{onClick:e.unref(o)})))}}},Se={class:"flex flex-col items-center justify-center gap-8"},$e={class:"flex items-center gap-2"},L={__name:"Empty",setup(t){return(r,o)=>(e.openBlock(),e.createElementBlock("div",Se,[o[2]||(o[2]=e.createStaticVNode('<div class="flex max-w-xs flex-col items-center gap-2 text-center"><div class="bg-brand-primary-100 mb-2 grid size-12 place-items-center rounded-full"><svg xmlns="http://www.w3.org/2000/svg" class="text-brand-primary-700 h-6 w-6" fill="none" viewBox="0 0 24 24" stroke="currentColor" stroke-width="2"><path stroke-linecap="round" stroke-linejoin="round" d="M9 13h6m-3-3v6m5 5H7a2 2 0 01-2-2V5a2 2 0 012-2h5.586a1 1 0 01.707.293l5.414 5.414a1 1 0 01.293.707V19a2 2 0 01-2 2z"></path></svg></div><b class="text-lg font-medium">No Projects Yet</b><p class="text-sm text-neutral-600"> You haven't created any projects yet. Get started by creating your first project. </p></div>',1)),e.createElementVNode("div",$e,[e.createVNode(f,{class:"h-10",variant:"outlined"},{default:e.withCtx(()=>o[0]||(o[0]=[e.createTextVNode("Import Project")])),_:1,__:[0]}),e.createVNode(f,{class:"h-10",variant:"primary"},{default:e.withCtx(()=>o[1]||(o[1]=[e.createTextVNode("Create Project")])),_:1,__:[1]})])]))}},Ee={class:"group flex flex-col gap-2"},G={__name:"FormField",props:{validate:{type:Boolean,default:!1}},setup(t){return(r,o)=>(e.openBlock(),e.createElementBlock("div",Ee,[e.renderSlot(r.$slots,"default")]))}},Ae={},Ve={class:"text-danger-700 hidden h-0 text-xs opacity-0 transition-all group-has-user-invalid:mt-1 group-has-user-invalid:block group-has-user-invalid:h-4 group-has-user-invalid:opacity-100"};function Te(t,r){return e.openBlock(),e.createElementBlock("p",Ve,[e.renderSlot(t.$slots,"default",{},void 0,!0)])}const W=p(Ae,[["render",Te],["__scopeId","data-v-00088154"]]),H={__name:"Input",props:{modelValue:{},modelModifiers:{}},emits:["update:modelValue"],setup(t){const r=e.useModel(t,"modelValue");return(o,a)=>e.withDirectives((e.openBlock(),e.createElementBlock("input",{"onUpdate:modelValue":a[0]||(a[0]=n=>r.value=n),class:"text-primary-950 focus:ring-brand-primary-700 focus:user-invalid:ring-danger-700 user-invalid:ring-danger-700 rounded-lg border-[1px] border-neutral-200 bg-white px-3 py-2 text-xs ring-offset-2 transition-all duration-300 outline-none placeholder:text-neutral-400 user-invalid:ring-2 focus:ring-2 disabled:cursor-not-allowed disabled:opacity-50"},null,512)),[[e.vModelText,r.value]])}},Ne={};function De(t,r){return e.openBlock(),e.createElementBlock("label",e.mergeProps(t.$attrs,{class:"text-primary-950 text-xs font-medium transition-all"}),[e.renderSlot(t.$slots,"default")],16)}const F=p(Ne,[["render",De]]),O={__name:"Radio",props:e.mergeModels({variant:{type:String,default:"small"}},{modelValue:{},modelModifiers:{}}),emits:["update:modelValue"],setup(t){const r=e.useModel(t,"modelValue"),o=t,a=e.ref(null),n={small:{outerCircleSize:"size-4",innerCircleSize:"size-2.5"},large:{outerCircleSize:"size-5",innerCircleSize:"size-3"}};return(s,c)=>(e.openBlock(),e.createElementBlock("button",{onClick:c[1]||(c[1]=i=>a.value.click()),class:e.normalizeClass(["group/radio has-checked:border-brand-primary-700 flex cursor-pointer items-center justify-center rounded-full border-[1px] border-transparent bg-neutral-100 duration-300 active:scale-[0.80] has-checked:bg-white",n[o.variant].outerCircleSize]),role:"radio",type:"button"},[e.createElementVNode("div",{class:e.normalizeClass(["group-has-checked/radio:bg-brand-primary-700 grid place-items-center rounded-full opacity-0 transition-all group-has-checked/radio:opacity-100",n[o.variant].innerCircleSize])},[e.renderSlot(s.$slots,"default")],2),e.withDirectives(e.createElementVNode("input",e.mergeProps(s.$attrs,{"onUpdate:modelValue":c[0]||(c[0]=i=>r.value=i),type:"radio",ref_key:"radioRef",ref:a,hidden:""}),null,16),[[e.vModelRadio,r.value]])],2))}},Ie="bg-[url('data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIyNCIgaGVpZ2h0PSIyNCIgdmlld0JveD0iMCAwIDI0IDI0IiBmaWxsPSJub25lIiBzdHJva2U9IiM1YjYxNmUiIHN0cm9rZS13aWR0aD0iMiIgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIiBzdHJva2UtbGluZWpvaW49InJvdW5kIiBjbGFzcz0ibHVjaWRlIGx1Y2lkZS1jaGV2cm9uLWRvd24iPjxwYXRoIGQ9Im02IDkgNiA2IDYtNiIvPjwvc3ZnPg==')]",q={__name:"Select",props:{modelValue:{},modelModifiers:{}},emits:["update:modelValue"],setup(t){const r=e.useModel(t,"modelValue");return(o,a)=>e.withDirectives((e.openBlock(),e.createElementBlock("select",e.mergeProps(o.$attrs,{"onUpdate:modelValue":a[0]||(a[0]=n=>r.value=n),class:["text-primary-950 user-invalid:ring-danger-700 focus:user-invalid:ring-danger-700 focus:ring-brand-primary-700 appearance-none rounded-lg border-[1px] border-neutral-200 bg-white bg-[length:16px] bg-[right_12px_center] bg-no-repeat px-3 py-2 text-xs ring-offset-2 transition-all outline-none user-invalid:ring-2 focus:ring-2 disabled:cursor-not-allowed disabled:opacity-50",Ie]}),[e.renderSlot(o.$slots,"default")],16)),[[e.vModelSelect,r.value]])}},U={__name:"Sheet",setup(t){const r=e.ref(!1);function o(){r.value=!r.value}return e.provide("SHEET_META",{toggled:r,toggleSheet:o}),(a,n)=>e.renderSlot(a.$slots,"default",{toggled:r.value,toggleSheet:o})}},Y={__name:"SheetContent",props:{class:{type:String}},setup(t){const r=t,{toggled:o,toggleSheet:a}=e.inject("SHEET_META");return(n,s)=>(e.openBlock(),e.createBlock(e.Teleport,{to:"body"},[e.createVNode(e.Transition,{name:"fade-in"},{default:e.withCtx(()=>[e.unref(o)?(e.openBlock(),e.createBlock(k,{key:0,onClick:s[0]||(s[0]=c=>e.unref(a)())})):e.createCommentVNode("",!0)]),_:1}),e.createVNode(e.Transition,{name:"slide"},{default:e.withCtx(()=>[e.unref(o)?(e.openBlock(),e.createBlock(h,{key:0,class:e.normalizeClass(["fixed top-1/2 right-0 z-[150] h-full w-3/4 -translate-y-1/2 rounded-e-none bg-white transition-all md:right-[1rem] md:h-[calc(100dvh-2rem)] md:w-96 md:rounded-xl",r.class])},{default:e.withCtx(()=>[e.renderSlot(n.$slots,"default")]),_:3},8,["class"])):e.createCommentVNode("",!0)]),_:3})]))}},Z={__name:"SheetToggle",setup(t){const r=e.useSlots(),{toggleSheet:o}=e.inject("SHEET_META");return(a,n)=>{var s,c;return e.openBlock(),e.createBlock(e.resolveDynamicComponent(e.cloneVNode((c=(s=e.unref(r)).default)==null?void 0:c.call(s)[0],{onClick:e.unref(o)})))}}},Re={},Pe={class:"bg-primary-100 animate-pulse rounded-lg"};function je(t,r){return e.openBlock(),e.createElementBlock("div",Pe)}const J=p(Re,[["render",je]]),X={__name:"Switch",props:["modelValue"],emits:["update:modelValue"],setup(t,{emit:r}){const o=r,a=t;function n(){o("update:modelValue",!a.modelValue)}return(s,c)=>(e.openBlock(),e.createElementBlock("button",e.mergeProps(s.$attrs,{onClick:c[0]||(c[0]=i=>n()),class:["group/switch h-5 w-9 cursor-pointer rounded-full p-0.5 transition-all duration-300 disabled:cursor-not-allowed disabled:opacity-50",a.modelValue?"from-brand-primary-600 to-brand-primary-700 bg-gradient-to-br":"bg-neutral-200"],role:"switch",type:"button"}),[e.createElementVNode("span",{class:e.normalizeClass(["pointer-events-none flex size-4 items-center justify-center rounded-full bg-white shadow-md transition-all duration-300",{"translate-x-full":a.modelValue}])},[e.renderSlot(s.$slots,"icon")],2)],16))}},ze={class:"w-full"},Me={class:"h-16"},Le={key:0},Ge={key:0,class:"pe-4"},Q={__name:"Table",props:{columns:{type:Array,required:!0},data:{type:Array,required:!0}},setup(t){const r=t;return(o,a)=>(e.openBlock(),e.createElementBlock("table",ze,[e.createElementVNode("thead",null,[e.createElementVNode("tr",Me,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(r.columns,n=>(e.openBlock(),e.createElementBlock("th",{key:n.key,class:"text-xs font-medium text-neutral-600 first-of-type:ps-4"},e.toDisplayString(n.label),1))),128)),o.$slots.actions?(e.openBlock(),e.createElementBlock("th",Le)):e.createCommentVNode("",!0)])]),e.createElementVNode("tbody",null,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(r.data,(n,s)=>(e.openBlock(),e.createElementBlock("tr",{key:s,class:"odd:bg-background-main/50 hover:bg-background-main min-h-16 rounded-md transition-all"},[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(r.columns,c=>(e.openBlock(),e.createElementBlock("td",{key:c.key,class:"text-primary-950 py-4 text-xs first-of-type:rounded-s-md first-of-type:ps-4 last-of-type:rounded-e-md last-of-type:pe-4"},[e.renderSlot(o.$slots,c.key,{row:n},()=>[e.createTextVNode(e.toDisplayString(n[c.key]),1)])]))),128)),o.$slots.actions?(e.openBlock(),e.createElementBlock("td",Ge,[e.renderSlot(o.$slots,"actions",{row:n})])):e.createCommentVNode("",!0)]))),128))])]))}},We={class:"overflow-x-scroll rounded-xl bg-neutral-100/50 p-1 [&::-webkit-scrollbar]:hidden"},K={__name:"Tabs",props:{default:{default:null}},setup(t){const r=t,o=e.ref(r.default);function a(n){o.value=n}return e.provide("TAB_DATA",{currentValue:o,setCurrentValue:a}),(n,s)=>(e.openBlock(),e.createElementBlock("div",We,[e.renderSlot(n.$slots,"default")]))}},v=p({__name:"TabItem",props:{value:{required:!0}},setup(t){const r=t,o=e.inject("TAB_DATA"),{currentValue:a,setCurrentValue:n}=o,s=e.computed(()=>a.value===r.value?["bg-white","font-medium","text-primary-700","shadow-xl","tab-active"]:"text-neutral-600");return(c,i)=>(e.openBlock(),e.createElementBlock("button",{onClick:i[0]||(i[0]=b=>e.unref(n)(r.value)),class:e.normalizeClass(["tab h-8 cursor-pointer rounded-lg px-3 text-xs transition-all disabled:cursor-not-allowed disabled:opacity-50",s.value])},[e.renderSlot(c.$slots,"default",{},void 0,!0)],2))}},[["__scopeId","data-v-9e06f71f"]]),ee={__name:"TextArea",props:["modelValue"],setup(t){const r=t,o=e.ref(r.modelValue);return(a,n)=>e.withDirectives((e.openBlock(),e.createElementBlock("textarea",e.mergeProps({onInput:n[0]||(n[0]=s=>a.$emit("update:modelValue",s.target.value))},a.$attrs,{"onUpdate:modelValue":n[1]||(n[1]=s=>o.value=s),class:"text-primary-950 neutral-400:text-neutral-400 focus:ring-brand-primary-700 user-invalid:ring-danger-700 focus:user-invalid:ring-danger-700 rounded-lg border-[1px] border-neutral-200 px-3 py-2 text-xs transition-all outline-none user-invalid:ring-2 focus:ring-2 focus:ring-offset-2 disabled:cursor-not-allowed disabled:opacity-50"}),null,16)),[[e.vModelText,o.value]])}},He={install(t){t.component("AppHeader",x),t.component("AppHeaderLink",y),t.component("AppLayout",C),t.component("AppMain",B),t.component("AppNavTabs",w),t.component("AppNavTab",S),t.component("AppSidebar",$),t.component("AppSidebarItem",E),t.component("AppSidebarItemChild",A),t.component("AppSidebarItemChildren",V),t.component("AppSidebarItemParent",T),t.component("AppSidebarToggle",N),t.component("AppSidebarNavSection",D),t.component("Badge",R),t.component("Button",f),t.component("Checkbox",P),t.component("Card",h),t.component("Dialog",j),t.component("DialogContent",z),t.component("DialogToggle",M),t.component("DialogBackground",k),t.component("Empty",L),t.component("FormField",G),t.component("FormFieldError",W),t.component("Input",H),t.component("Label",F),t.component("Radio",O),t.component("Select",q),t.component("Sheet",U),t.component("SheetContent",Y),t.component("SheetToggle",Z),t.component("SkeletonLoader",J),t.component("Switch",X),t.component("Table",Q),t.component("Tabs",K),t.component("TabItem",v),t.component("TextArea",ee)}};l.AppHeader=x,l.AppHeaderLink=y,l.AppLayout=C,l.AppMain=B,l.AppNavTab=S,l.AppNavTabs=w,l.AppSidebar=$,l.AppSidebarItem=E,l.AppSidebarItemChild=A,l.AppSidebarItemChildren=V,l.AppSidebarItemParent=T,l.AppSidebarNavSection=D,l.AppSidebarToggle=N,l.Badge=R,l.Button=f,l.Card=h,l.Checkbox=P,l.Dialog=j,l.DialogBackground=k,l.DialogContent=z,l.DialogToggle=M,l.Empty=L,l.FormField=G,l.FormFieldError=W,l.Input=H,l.Label=F,l.Radio=O,l.Select=q,l.Sheet=U,l.SheetContent=Y,l.SheetToggle=Z,l.SkeletonLoader=J,l.Switch=X,l.TabItem=v,l.Table=Q,l.Tabs=K,l.TextArea=ee,l.default=He,Object.defineProperties(l,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}})});
|