@stachelock/ui 0.2.6 → 0.2.8
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/{DashboardLayout.vue_vue_type_script_setup_true_lang-BVQR4s1E.js → DashboardLayout.vue_vue_type_script_setup_true_lang-Cg83utkU.js} +42 -30
- package/dist/DashboardLayout.vue_vue_type_script_setup_true_lang-Cg83utkU.js.map +1 -0
- package/dist/{NavigationGroup.vue_vue_type_script_setup_true_lang-2WURj34G.js → NavigationGroup.vue_vue_type_script_setup_true_lang-2tAB9Hbx.js} +10 -9
- package/dist/NavigationGroup.vue_vue_type_script_setup_true_lang-2tAB9Hbx.js.map +1 -0
- package/dist/NavigationItem.vue_vue_type_script_setup_true_lang-53p-Y_ru.js +57 -0
- package/dist/NavigationItem.vue_vue_type_script_setup_true_lang-53p-Y_ru.js.map +1 -0
- package/dist/{SidebarLayout.vue_vue_type_script_setup_true_lang-J1nfUTdM.js → SidebarLayout.vue_vue_type_script_setup_true_lang-BngtQexQ.js} +36 -26
- package/dist/SidebarLayout.vue_vue_type_script_setup_true_lang-BngtQexQ.js.map +1 -0
- package/dist/index.js +5 -5
- package/dist/index.js.map +1 -1
- package/dist/layouts/DashboardLayout.js +1 -1
- package/dist/layouts/NavigationGroup.js +1 -1
- package/dist/layouts/NavigationItem.js +1 -1
- package/dist/layouts/SidebarLayout.js +1 -1
- package/dist/src/components/layouts/DashboardLayout.d.ts.map +1 -1
- package/dist/src/components/layouts/NavigationGroup.d.ts.map +1 -1
- package/dist/src/components/layouts/NavigationItem.d.ts.map +1 -1
- package/dist/src/components/layouts/SidebarLayout.d.ts.map +1 -1
- package/dist/style.css +1 -1
- package/package.json +1 -1
- package/dist/DashboardLayout.vue_vue_type_script_setup_true_lang-BVQR4s1E.js.map +0 -1
- package/dist/NavigationGroup.vue_vue_type_script_setup_true_lang-2WURj34G.js.map +0 -1
- package/dist/NavigationItem.vue_vue_type_script_setup_true_lang-DiNg3gz2.js +0 -51
- package/dist/NavigationItem.vue_vue_type_script_setup_true_lang-DiNg3gz2.js.map +0 -1
- package/dist/SidebarLayout.vue_vue_type_script_setup_true_lang-J1nfUTdM.js.map +0 -1
|
@@ -1,13 +1,17 @@
|
|
|
1
|
-
import { defineComponent as w, ref as g, createElementBlock as a, openBlock as
|
|
1
|
+
import { defineComponent as w, ref as g, createElementBlock as a, openBlock as r, createVNode as i, createElementVNode as s, unref as n, withCtx as d, renderSlot as o, normalizeClass as f, createCommentVNode as m } from "vue";
|
|
2
2
|
import { r as $, a as C } from "./XMarkIcon-C4wILUsz.js";
|
|
3
|
-
import { S, h as
|
|
3
|
+
import { S, h as p } from "./transition-CuxxW9dY.js";
|
|
4
4
|
import { Y as j, G as N } from "./dialog-U1KNiPzc.js";
|
|
5
|
-
const z = { class: "sl-min-h-screen sl-bg-gray-50" }, B = { class: "sl-fixed sl-inset-0 sl-flex" }, O = { class: "sl-absolute sl-left-full sl-top-0 sl-flex sl-w-16 sl-justify-center sl-pt-5" }, E = {
|
|
5
|
+
const z = { class: "sl-min-h-screen sl-bg-gray-50" }, B = { class: "sl-fixed sl-inset-0 sl-flex" }, O = { class: "sl-absolute sl-left-full sl-top-0 sl-flex sl-w-16 sl-justify-center sl-pt-5" }, E = {
|
|
6
|
+
class: "sl-flex sl-grow sl-flex-col sl-gap-y-5 sl-px-6 sl-pb-2 sl-ring-1 sl-ring-white/10",
|
|
7
|
+
style: { "background-color": "var(--sl-color-stachelock-600, #3e4b9a)" }
|
|
8
|
+
}, L = { class: "sl-flex sl-h-16 sl-shrink-0 sl-items-center" }, M = { class: "sl-flex sl-flex-1 sl-flex-col" }, V = {
|
|
6
9
|
role: "list",
|
|
7
10
|
class: "-sl-mx-2 sl-flex-1 sl-space-y-1"
|
|
8
11
|
}, G = { class: "sl-mt-auto" }, Y = { class: "sl-flex sl-h-16 sl-shrink-0 sl-items-center sl-px-6" }, D = {
|
|
9
12
|
key: 0,
|
|
10
|
-
class: "sl-
|
|
13
|
+
class: "sl-font-semibold sl-text-lg",
|
|
14
|
+
style: { color: "var(--sl-color-stachelock-050, #edeff9)" }
|
|
11
15
|
}, P = {
|
|
12
16
|
key: 1,
|
|
13
17
|
class: "sl-flex sl-items-center sl-justify-center sl-w-full"
|
|
@@ -43,27 +47,27 @@ const z = { class: "sl-min-h-screen sl-bg-gray-50" }, B = { class: "sl-fixed sl-
|
|
|
43
47
|
}
|
|
44
48
|
},
|
|
45
49
|
emits: ["sidebar-toggle"],
|
|
46
|
-
setup(
|
|
47
|
-
const
|
|
50
|
+
setup(v, { emit: h }) {
|
|
51
|
+
const x = v, y = h, c = g(!1), t = g(!x.isNarrowSidebar), u = () => {
|
|
48
52
|
c.value = !1;
|
|
49
|
-
},
|
|
53
|
+
}, b = () => {
|
|
50
54
|
c.value = !0;
|
|
51
55
|
}, _ = () => {
|
|
52
|
-
t.value = !t.value,
|
|
56
|
+
t.value = !t.value, y("sidebar-toggle", t.value);
|
|
53
57
|
};
|
|
54
|
-
return (e, l) => (
|
|
55
|
-
|
|
58
|
+
return (e, l) => (r(), a("div", z, [
|
|
59
|
+
i(n(S), {
|
|
56
60
|
as: "template",
|
|
57
61
|
show: c.value
|
|
58
62
|
}, {
|
|
59
63
|
default: d(() => [
|
|
60
|
-
|
|
64
|
+
i(n(j), {
|
|
61
65
|
as: "div",
|
|
62
66
|
class: "sl-relative sl-z-50 lg:sl-hidden",
|
|
63
67
|
onClose: u
|
|
64
68
|
}, {
|
|
65
69
|
default: d(() => [
|
|
66
|
-
|
|
70
|
+
i(n(p), {
|
|
67
71
|
as: "template",
|
|
68
72
|
enter: "sl-transition-opacity sl-ease-linear sl-duration-300",
|
|
69
73
|
"enter-from": "sl-opacity-0",
|
|
@@ -79,7 +83,7 @@ const z = { class: "sl-min-h-screen sl-bg-gray-50" }, B = { class: "sl-fixed sl-
|
|
|
79
83
|
__: [2]
|
|
80
84
|
}),
|
|
81
85
|
s("div", B, [
|
|
82
|
-
|
|
86
|
+
i(n(p), {
|
|
83
87
|
as: "template",
|
|
84
88
|
enter: "sl-transition sl-ease-in-out sl-duration-300 sl-transform",
|
|
85
89
|
"enter-from": "-sl-translate-x-full",
|
|
@@ -89,9 +93,9 @@ const z = { class: "sl-min-h-screen sl-bg-gray-50" }, B = { class: "sl-fixed sl-
|
|
|
89
93
|
"leave-to": "-sl-translate-x-full"
|
|
90
94
|
}, {
|
|
91
95
|
default: d(() => [
|
|
92
|
-
|
|
96
|
+
i(n(N), { class: "sl-relative sl-mr-16 sl-flex sl-w-full sl-max-w-xs sl-flex-1" }, {
|
|
93
97
|
default: d(() => [
|
|
94
|
-
|
|
98
|
+
i(n(p), {
|
|
95
99
|
as: "template",
|
|
96
100
|
enter: "sl-ease-in-out sl-duration-300",
|
|
97
101
|
"enter-from": "sl-opacity-0",
|
|
@@ -108,8 +112,9 @@ const z = { class: "sl-min-h-screen sl-bg-gray-50" }, B = { class: "sl-fixed sl-
|
|
|
108
112
|
onClick: l[0] || (l[0] = (k) => u())
|
|
109
113
|
}, [
|
|
110
114
|
l[3] || (l[3] = s("span", { class: "sl-sr-only" }, "Close sidebar", -1)),
|
|
111
|
-
|
|
112
|
-
class: "sl-h-6 sl-w-6
|
|
115
|
+
i(n($), {
|
|
116
|
+
class: "sl-h-6 sl-w-6",
|
|
117
|
+
style: { color: "var(--sl-color-stachelock-050, #edeff9)" },
|
|
113
118
|
"aria-hidden": "true"
|
|
114
119
|
})
|
|
115
120
|
])
|
|
@@ -120,7 +125,10 @@ const z = { class: "sl-min-h-screen sl-bg-gray-50" }, B = { class: "sl-fixed sl-
|
|
|
120
125
|
s("div", E, [
|
|
121
126
|
s("div", L, [
|
|
122
127
|
o(e.$slots, "logo", {}, () => [
|
|
123
|
-
l[4] || (l[4] = s("div", {
|
|
128
|
+
l[4] || (l[4] = s("div", {
|
|
129
|
+
class: "sl-font-semibold sl-text-lg",
|
|
130
|
+
style: { color: "var(--sl-color-stachelock-050, #edeff9)" }
|
|
131
|
+
}, "Logo", -1))
|
|
124
132
|
])
|
|
125
133
|
]),
|
|
126
134
|
s("nav", M, [
|
|
@@ -146,13 +154,17 @@ const z = { class: "sl-min-h-screen sl-bg-gray-50" }, B = { class: "sl-fixed sl-
|
|
|
146
154
|
_: 3
|
|
147
155
|
}, 8, ["show"]),
|
|
148
156
|
s("div", {
|
|
149
|
-
class:
|
|
157
|
+
class: f(["sl-hidden lg:sl-fixed lg:sl-inset-y-0 lg:sl-left-0 lg:sl-z-50 lg:sl-block lg:sl-pb-4 sl-pt-4", t.value ? "lg:sl-w-64" : "lg:sl-w-16"]),
|
|
158
|
+
style: { "background-color": "var(--sl-color-stachelock-600, #3e4b9a)" }
|
|
150
159
|
}, [
|
|
151
160
|
s("div", Y, [
|
|
152
161
|
o(e.$slots, "logo", {}, () => [
|
|
153
|
-
t.value ? (
|
|
162
|
+
t.value ? (r(), a("div", D, "Logo")) : (r(), a("div", P, l[5] || (l[5] = [
|
|
154
163
|
s("div", { class: "sl-w-8 sl-h-8 sl-bg-white sl-rounded-lg sl-flex sl-items-center sl-justify-center" }, [
|
|
155
|
-
s("span", {
|
|
164
|
+
s("span", {
|
|
165
|
+
class: "sl-font-bold sl-text-sm",
|
|
166
|
+
style: { color: "var(--sl-color-stachelock-600, #3e4b9a)" }
|
|
167
|
+
}, "P")
|
|
156
168
|
], -1)
|
|
157
169
|
])))
|
|
158
170
|
])
|
|
@@ -160,7 +172,7 @@ const z = { class: "sl-min-h-screen sl-bg-gray-50" }, B = { class: "sl-fixed sl-
|
|
|
160
172
|
s("nav", W, [
|
|
161
173
|
s("ul", {
|
|
162
174
|
role: "list",
|
|
163
|
-
class:
|
|
175
|
+
class: f(t.value ? "sl-flex sl-flex-col sl-items-start sl-mx-4 sl-space-y-1" : "sl-flex sl-flex-col sl-items-center sl-space-y-1")
|
|
164
176
|
}, [
|
|
165
177
|
o(e.$slots, "navigation", {
|
|
166
178
|
iconOnly: !t.value
|
|
@@ -174,16 +186,16 @@ const z = { class: "sl-min-h-screen sl-bg-gray-50" }, B = { class: "sl-fixed sl-
|
|
|
174
186
|
])
|
|
175
187
|
], 2),
|
|
176
188
|
s("div", {
|
|
177
|
-
class:
|
|
189
|
+
class: f(["lg:sl-pl-16", t.value ? "lg:sl-pl-64" : "lg:sl-pl-16"])
|
|
178
190
|
}, [
|
|
179
191
|
s("div", A, [
|
|
180
192
|
s("button", {
|
|
181
193
|
type: "button",
|
|
182
194
|
class: "-sl-m-2.5 sl-p-2.5 sl-text-gray-700 lg:sl-hidden",
|
|
183
|
-
onClick: l[1] || (l[1] = (k) =>
|
|
195
|
+
onClick: l[1] || (l[1] = (k) => b())
|
|
184
196
|
}, [
|
|
185
197
|
l[6] || (l[6] = s("span", { class: "sl-sr-only" }, "Open sidebar", -1)),
|
|
186
|
-
|
|
198
|
+
i(n(C), {
|
|
187
199
|
class: "sl-h-6 sl-w-6",
|
|
188
200
|
"aria-hidden": "true"
|
|
189
201
|
})
|
|
@@ -203,21 +215,21 @@ const z = { class: "sl-min-h-screen sl-bg-gray-50" }, B = { class: "sl-fixed sl-
|
|
|
203
215
|
onClick: _,
|
|
204
216
|
title: t.value ? "Collapse sidebar" : "Expand sidebar"
|
|
205
217
|
}, [
|
|
206
|
-
(
|
|
207
|
-
t.value ? (
|
|
218
|
+
(r(), a("svg", K, [
|
|
219
|
+
t.value ? (r(), a("path", Q)) : (r(), a("path", R))
|
|
208
220
|
]))
|
|
209
221
|
], 8, J),
|
|
210
222
|
o(e.$slots, "header-right")
|
|
211
223
|
])
|
|
212
224
|
])
|
|
213
225
|
]),
|
|
214
|
-
e.$slots["page-header"] ? (
|
|
226
|
+
e.$slots["page-header"] ? (r(), a("div", T, [
|
|
215
227
|
o(e.$slots, "page-header")
|
|
216
228
|
])) : m("", !0),
|
|
217
229
|
s("main", U, [
|
|
218
230
|
o(e.$slots, "main")
|
|
219
231
|
]),
|
|
220
|
-
e.$slots.footer ? (
|
|
232
|
+
e.$slots.footer ? (r(), a("footer", X, [
|
|
221
233
|
o(e.$slots, "footer")
|
|
222
234
|
])) : m("", !0)
|
|
223
235
|
], 2)
|
|
@@ -227,4 +239,4 @@ const z = { class: "sl-min-h-screen sl-bg-gray-50" }, B = { class: "sl-fixed sl-
|
|
|
227
239
|
export {
|
|
228
240
|
ts as _
|
|
229
241
|
};
|
|
230
|
-
//# sourceMappingURL=DashboardLayout.vue_vue_type_script_setup_true_lang-
|
|
242
|
+
//# sourceMappingURL=DashboardLayout.vue_vue_type_script_setup_true_lang-Cg83utkU.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"DashboardLayout.vue_vue_type_script_setup_true_lang-Cg83utkU.js","sources":["../src/components/layouts/DashboardLayout.vue"],"sourcesContent":["<template>\n <div class=\"sl-min-h-screen sl-bg-gray-50\">\n <!-- Mobile sidebar overlay -->\n <TransitionRoot as=\"template\" :show=\"sidebarOpen\">\n <Dialog as=\"div\" class=\"sl-relative sl-z-50 lg:sl-hidden\" @close=\"closeSidebar\">\n <TransitionChild as=\"template\" enter=\"sl-transition-opacity sl-ease-linear sl-duration-300\" enter-from=\"sl-opacity-0\"\n enter-to=\"sl-opacity-100\" leave=\"sl-transition-opacity sl-ease-linear sl-duration-300\" leave-from=\"sl-opacity-100\"\n leave-to=\"sl-opacity-0\">\n <div class=\"sl-fixed sl-inset-0 sl-bg-gray-900/80\" />\n </TransitionChild>\n\n <div class=\"sl-fixed sl-inset-0 sl-flex\">\n <TransitionChild as=\"template\" enter=\"sl-transition sl-ease-in-out sl-duration-300 sl-transform\"\n enter-from=\"-sl-translate-x-full\" enter-to=\"sl-translate-x-0\"\n leave=\"sl-transition sl-ease-in-out sl-duration-300 sl-transform\" leave-from=\"sl-translate-x-0\"\n leave-to=\"-sl-translate-x-full\">\n <DialogPanel class=\"sl-relative sl-mr-16 sl-flex sl-w-full sl-max-w-xs sl-flex-1\">\n <TransitionChild as=\"template\" enter=\"sl-ease-in-out sl-duration-300\" enter-from=\"sl-opacity-0\"\n enter-to=\"sl-opacity-100\" leave=\"sl-ease-in-out sl-duration-300\" leave-from=\"sl-opacity-100\" leave-to=\"sl-opacity-0\">\n <div class=\"sl-absolute sl-left-full sl-top-0 sl-flex sl-w-16 sl-justify-center sl-pt-5\">\n <button type=\"button\" class=\"-sl-m-2.5 sl-p-2.5\" @click=\"closeSidebar()\">\n <span class=\"sl-sr-only\">Close sidebar</span>\n <XMarkIcon class=\"sl-h-6 sl-w-6\" style=\"color: var(--sl-color-stachelock-050, #edeff9);\" aria-hidden=\"true\" />\n </button>\n </div>\n </TransitionChild>\n\n <div class=\"sl-flex sl-grow sl-flex-col sl-gap-y-5 sl-px-6 sl-pb-2 sl-ring-1 sl-ring-white/10\"\n style=\"background-color: var(--sl-color-stachelock-600, #3e4b9a);\">\n <div class=\"sl-flex sl-h-16 sl-shrink-0 sl-items-center\">\n <slot name=\"logo\">\n <div class=\"sl-font-semibold sl-text-lg\" style=\"color: var(--sl-color-stachelock-050, #edeff9);\">Logo</div>\n </slot>\n </div>\n <nav class=\"sl-flex sl-flex-1 sl-flex-col\">\n <ul role=\"list\" class=\"-sl-mx-2 sl-flex-1 sl-space-y-1\">\n <slot name=\"navigation\">\n <!-- Default navigation slot -->\n </slot>\n </ul>\n </nav>\n <div class=\"sl-mt-auto\">\n <slot name=\"sidebar-footer\">\n <!-- Sidebar footer content -->\n </slot>\n </div>\n </div>\n </DialogPanel>\n </TransitionChild>\n </div>\n </Dialog>\n </TransitionRoot>\n\n <!-- Desktop sidebar -->\n <div\n class=\"sl-hidden lg:sl-fixed lg:sl-inset-y-0 lg:sl-left-0 lg:sl-z-50 lg:sl-block lg:sl-pb-4 sl-pt-4\"\n style=\"background-color: var(--sl-color-stachelock-600, #3e4b9a);\"\n :class=\"isWide ? 'lg:sl-w-64' : 'lg:sl-w-16'\">\n <div class=\"sl-flex sl-h-16 sl-shrink-0 sl-items-center sl-px-6\">\n <slot name=\"logo\">\n <div v-if=\"isWide\" class=\"sl-font-semibold sl-text-lg\" style=\"color: var(--sl-color-stachelock-050, #edeff9);\">Logo</div>\n <div v-else class=\"sl-flex sl-items-center sl-justify-center sl-w-full\">\n <div class=\"sl-w-8 sl-h-8 sl-bg-white sl-rounded-lg sl-flex sl-items-center sl-justify-center\">\n <span class=\"sl-font-bold sl-text-sm\" style=\"color: var(--sl-color-stachelock-600, #3e4b9a);\">P</span>\n </div>\n </div>\n </slot>\n </div>\n <nav class=\"sl-mt-8 sl-flex sl-flex-col sl-justify-between sl-h-full\">\n <ul role=\"list\"\n :class=\"isWide ? 'sl-flex sl-flex-col sl-items-start sl-mx-4 sl-space-y-1' : 'sl-flex sl-flex-col sl-items-center sl-space-y-1'\">\n <slot name=\"navigation\" :icon-only=\"!isWide\">\n <!-- Default navigation slot -->\n </slot>\n </ul>\n <div class=\"sl-absolute sl-bottom-4 sl-left-0 sl-right-0 sl-px-6\">\n <slot name=\"sidebar-footer\" :icon-only=\"!isWide\">\n <!-- Sidebar footer content -->\n </slot>\n </div>\n </nav>\n </div>\n\n <!-- Main content area -->\n <div :class=\"['lg:sl-pl-16', isWide ? 'lg:sl-pl-64' : 'lg:sl-pl-16']\">\n <!-- Header -->\n <div\n class=\"sl-sticky sl-top-0 sl-z-40 sl-flex sl-h-16 sl-shrink-0 sl-items-center sl-gap-x-4 sl-border-b sl-border-gray-200 sl-bg-white sl-px-4 sl-shadow-sm sm:sl-gap-x-6 sm:sl-px-6 lg:sl-px-8\">\n <button type=\"button\" class=\"-sl-m-2.5 sl-p-2.5 sl-text-gray-700 lg:sl-hidden\" @click=\"openSidebar()\">\n <span class=\"sl-sr-only\">Open sidebar</span>\n <Bars3Icon class=\"sl-h-6 sl-w-6\" aria-hidden=\"true\" />\n </button>\n\n <!-- Separator -->\n <div class=\"sl-h-6 sl-w-px sl-bg-gray-900/10 lg:sl-hidden\" aria-hidden=\"true\" />\n\n <div class=\"sl-flex sl-flex-1 sl-gap-x-4 sm:sl-self-stretch lg:sl-gap-x-6\">\n <div class=\"sl-relative sl-flex sl-flex-1\">\n <slot name=\"header-content\">\n <!-- Header content -->\n </slot>\n </div>\n <div class=\"sl-flex sl-items-center sl-gap-x-4 lg:sl-gap-x-6\">\n <!-- Sidebar toggle button -->\n <button \n type=\"button\" \n class=\"sl-hidden lg:sl-flex sl-items-center sl-justify-center sl-w-8 sl-h-8 sl-rounded-md sl-text-gray-400 hover:sl-text-gray-500 hover:sl-bg-gray-100\"\n @click=\"toggleSidebar\"\n :title=\"isWide ? 'Collapse sidebar' : 'Expand sidebar'\"\n >\n <svg class=\"sl-w-5 sl-h-5\" fill=\"none\" stroke=\"currentColor\" viewBox=\"0 0 24 24\">\n <path v-if=\"isWide\" stroke-linecap=\"round\" stroke-linejoin=\"round\" stroke-width=\"2\" d=\"M11 19l-7-7 7-7m8 14l-7-7 7-7\" />\n <path v-else stroke-linecap=\"round\" stroke-linejoin=\"round\" stroke-width=\"2\" d=\"M13 5l7 7-7 7M5 5l7 7-7 7\" />\n </svg>\n </button>\n \n <slot name=\"header-right\">\n <!-- Header right content (notifications, profile, etc.) -->\n </slot>\n </div>\n </div>\n </div>\n\n <!-- Page header -->\n <div v-if=\"$slots['page-header']\" class=\"sl-border-b sl-border-gray-200 sl-bg-white sl-px-4 sl-py-6 sm:sl-px-6 lg:sl-px-8\">\n <slot name=\"page-header\">\n <!-- Page header content -->\n </slot>\n </div>\n\n <!-- Main content -->\n <main class=\"sl-px-4 sm:sl-px-6 lg:sl-px-8 sl-py-6\">\n <slot name=\"main\">\n <!-- Main content slot -->\n </slot>\n </main>\n\n <!-- Footer -->\n <footer v-if=\"$slots.footer\" class=\"sl-border-t sl-border-gray-200 sl-bg-white sl-px-4 sl-py-6 sm:sl-px-6 lg:sl-px-8\">\n <slot name=\"footer\">\n <!-- Footer content -->\n </slot>\n </footer>\n </div>\n </div>\n</template>\n\n<script setup lang=\"ts\">\nimport { ref } from 'vue';\nimport { Dialog, DialogPanel, TransitionChild, TransitionRoot } from '@headlessui/vue';\nimport { Bars3Icon, XMarkIcon } from '@heroicons/vue/24/outline';\n\nconst props = defineProps({\n isNarrowSidebar: {\n type: Boolean,\n default: false\n }\n});\n\nconst emit = defineEmits(['sidebar-toggle']);\n\nconst sidebarOpen = ref(false);\nconst isWide = ref(!props.isNarrowSidebar);\n\nconst closeSidebar = () => {\n sidebarOpen.value = false;\n};\n\nconst openSidebar = () => {\n sidebarOpen.value = true;\n};\n\nconst toggleSidebar = () => {\n isWide.value = !isWide.value;\n emit('sidebar-toggle', isWide.value);\n};\n</script>\n\n<style scoped>\n</style>\n"],"names":["props","__props","emit","__emit","sidebarOpen","ref","isWide","closeSidebar","openSidebar","toggleSidebar","_openBlock","_createElementBlock","_hoisted_1","_createVNode","_unref","TransitionRoot","Dialog","TransitionChild","_cache","_createElementVNode","_hoisted_2","DialogPanel","_hoisted_3","XMarkIcon","_hoisted_4","_hoisted_5","_renderSlot","_ctx","_hoisted_6","_hoisted_7","_hoisted_8","_normalizeClass","_hoisted_9","_hoisted_10","_hoisted_11","_hoisted_12","_hoisted_13","_hoisted_14","Bars3Icon","_hoisted_15","_hoisted_16","_hoisted_17","_hoisted_19","_hoisted_20","_hoisted_21","$slots","_hoisted_22","_hoisted_23","_hoisted_24"],"mappings":"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"}
|
|
@@ -1,21 +1,22 @@
|
|
|
1
|
-
import { defineComponent as l, createElementBlock as
|
|
1
|
+
import { defineComponent as l, createElementBlock as s, openBlock as t, createCommentVNode as o, createElementVNode as n, normalizeClass as r, toDisplayString as a, renderSlot as c } from "vue";
|
|
2
2
|
const i = { class: "sl-space-y-1" }, p = {
|
|
3
3
|
role: "list",
|
|
4
4
|
class: "sl-space-y-1"
|
|
5
|
-
},
|
|
5
|
+
}, _ = /* @__PURE__ */ l({
|
|
6
6
|
__name: "NavigationGroup",
|
|
7
7
|
props: {
|
|
8
8
|
title: {},
|
|
9
9
|
iconOnly: { type: Boolean }
|
|
10
10
|
},
|
|
11
|
-
setup(
|
|
12
|
-
return (e,
|
|
13
|
-
e.title ? (
|
|
11
|
+
setup(d) {
|
|
12
|
+
return (e, m) => (t(), s("div", i, [
|
|
13
|
+
e.title ? (t(), s("h3", {
|
|
14
14
|
key: 0,
|
|
15
15
|
class: r([
|
|
16
|
-
"sl-px-3 sl-py-2 sl-text-xs sl-font-semibold sl-
|
|
16
|
+
"sl-px-3 sl-py-2 sl-text-xs sl-font-semibold sl-uppercase sl-tracking-wider",
|
|
17
17
|
e.iconOnly ? "sl-text-center" : ""
|
|
18
|
-
])
|
|
18
|
+
]),
|
|
19
|
+
style: { color: "var(--sl-color-stachelock-050, #edeff9)" }
|
|
19
20
|
}, a(e.title), 3)) : o("", !0),
|
|
20
21
|
n("ul", p, [
|
|
21
22
|
c(e.$slots, "default")
|
|
@@ -24,6 +25,6 @@ const i = { class: "sl-space-y-1" }, p = {
|
|
|
24
25
|
}
|
|
25
26
|
});
|
|
26
27
|
export {
|
|
27
|
-
|
|
28
|
+
_
|
|
28
29
|
};
|
|
29
|
-
//# sourceMappingURL=NavigationGroup.vue_vue_type_script_setup_true_lang-
|
|
30
|
+
//# sourceMappingURL=NavigationGroup.vue_vue_type_script_setup_true_lang-2tAB9Hbx.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"NavigationGroup.vue_vue_type_script_setup_true_lang-2tAB9Hbx.js","sources":["../src/components/layouts/NavigationGroup.vue"],"sourcesContent":["<template>\n <div class=\"sl-space-y-1\">\n <!-- Group header -->\n <h3 v-if=\"title\" :class=\"[\n 'sl-px-3 sl-py-2 sl-text-xs sl-font-semibold sl-uppercase sl-tracking-wider',\n iconOnly ? 'sl-text-center' : ''\n ]\"\n style=\"color: var(--sl-color-stachelock-050, #edeff9);\">\n {{ title }}\n </h3>\n \n <!-- Navigation items -->\n <ul role=\"list\" class=\"sl-space-y-1\">\n <slot>\n <!-- Default navigation items slot -->\n </slot>\n </ul>\n </div>\n</template>\n\n<script setup lang=\"ts\">\ndefineProps<{\n title?: string;\n iconOnly?: boolean;\n}>();\n</script>\n\n<style scoped>\n</style>\n"],"names":["_openBlock","_createElementBlock","_hoisted_1","title","_normalizeClass","iconOnly","_createElementVNode","_hoisted_2","_renderSlot","_ctx"],"mappings":";;;;;;;;;;;sBACEA,EAAA,GAAAC,EAgBM,OAhBNC,GAgBM;AAAA,MAdMC,EAAAA,cAAVF,EAMK,MAAA;AAAA;QANa,OAAKG,EAAA;AAAA;UAA8FC,EAAAA,WAAQ,mBAAA;AAAA,QAAA;QAI7H,OAAA,EAAA,OAAA,0CAAA;AAAA,MAAA,KACKF,EAAAA,KAAK,GAAA,CAAA;MAIVG,EAIK,MAJLC,GAIK;AAAA,QAHHC,EAEOC,EAAA,QAAA,SAAA;AAAA,MAAA;;;;"}
|
|
@@ -0,0 +1,57 @@
|
|
|
1
|
+
import { defineComponent as n, createElementBlock as s, openBlock as l, createElementVNode as i, normalizeStyle as a, normalizeClass as o, createBlock as c, createCommentVNode as t, resolveDynamicComponent as d, toDisplayString as r } from "vue";
|
|
2
|
+
const m = ["href"], h = {
|
|
3
|
+
key: 0,
|
|
4
|
+
class: "sl-truncate"
|
|
5
|
+
}, y = /* @__PURE__ */ n({
|
|
6
|
+
__name: "NavigationItem",
|
|
7
|
+
props: {
|
|
8
|
+
name: {},
|
|
9
|
+
href: {},
|
|
10
|
+
icon: {},
|
|
11
|
+
isActive: { type: Boolean },
|
|
12
|
+
iconOnly: { type: Boolean },
|
|
13
|
+
badge: {},
|
|
14
|
+
badgeTheme: {}
|
|
15
|
+
},
|
|
16
|
+
setup(g) {
|
|
17
|
+
return (e, p) => (l(), s("li", null, [
|
|
18
|
+
i("a", {
|
|
19
|
+
href: e.href,
|
|
20
|
+
class: o([
|
|
21
|
+
"sl-group sl-flex sl-gap-x-3 sl-rounded-md sl-p-2 sl-text-sm sl-leading-6 sl-font-semibold",
|
|
22
|
+
e.isActive ? "sl-bg-stachelock-400" : "hover:sl-bg-white/10"
|
|
23
|
+
]),
|
|
24
|
+
style: a({
|
|
25
|
+
color: e.isActive ? "var(--sl-color-stachelock-050, #edeff9)" : "var(--sl-color-stachelock-300, #949ed9)",
|
|
26
|
+
backgroundColor: e.isActive ? "var(--sl-color-stachelock-400, #717ecd)" : "transparent"
|
|
27
|
+
})
|
|
28
|
+
}, [
|
|
29
|
+
(l(), c(d(e.icon), {
|
|
30
|
+
class: o([
|
|
31
|
+
"sl-h-6 sl-w-6 sl-shrink-0"
|
|
32
|
+
]),
|
|
33
|
+
style: a({
|
|
34
|
+
color: e.isActive ? "var(--sl-color-stachelock-050, #edeff9)" : "var(--sl-color-stachelock-300, #949ed9)"
|
|
35
|
+
}),
|
|
36
|
+
"aria-hidden": "true"
|
|
37
|
+
}, null, 8, ["style"])),
|
|
38
|
+
e.iconOnly ? t("", !0) : (l(), s("span", h, r(e.name), 1)),
|
|
39
|
+
e.badge ? (l(), s("span", {
|
|
40
|
+
key: 1,
|
|
41
|
+
class: o([
|
|
42
|
+
"sl-ml-auto sl-inline-flex sl-items-center sl-rounded-md sl-px-2 sl-py-1 sl-text-xs sl-font-medium",
|
|
43
|
+
e.badgeTheme === "primary" ? "sl-bg-stachelock-400 sl-text-white" : "",
|
|
44
|
+
e.badgeTheme === "secondary" ? "sl-bg-gray-400 sl-text-white" : "",
|
|
45
|
+
e.badgeTheme === "success" ? "sl-bg-green-400 sl-text-white" : "",
|
|
46
|
+
e.badgeTheme === "warning" ? "sl-bg-yellow-400 sl-text-white" : "",
|
|
47
|
+
e.badgeTheme === "danger" ? "sl-bg-red-400 sl-text-white" : ""
|
|
48
|
+
])
|
|
49
|
+
}, r(e.badge), 3)) : t("", !0)
|
|
50
|
+
], 14, m)
|
|
51
|
+
]));
|
|
52
|
+
}
|
|
53
|
+
});
|
|
54
|
+
export {
|
|
55
|
+
y as _
|
|
56
|
+
};
|
|
57
|
+
//# sourceMappingURL=NavigationItem.vue_vue_type_script_setup_true_lang-53p-Y_ru.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"NavigationItem.vue_vue_type_script_setup_true_lang-53p-Y_ru.js","sources":["../src/components/layouts/NavigationItem.vue"],"sourcesContent":["<template>\n <li>\n <a :href=\"href\" :class=\"[\n 'sl-group sl-flex sl-gap-x-3 sl-rounded-md sl-p-2 sl-text-sm sl-leading-6 sl-font-semibold',\n isActive \n ? 'sl-bg-stachelock-400'\n : 'hover:sl-bg-white/10'\n ]\"\n :style=\"{\n color: isActive \n ? 'var(--sl-color-stachelock-050, #edeff9)' \n : 'var(--sl-color-stachelock-300, #949ed9)',\n backgroundColor: isActive \n ? 'var(--sl-color-stachelock-400, #717ecd)' \n : 'transparent'\n }\">\n <component \n :is=\"icon\" \n :class=\"[\n 'sl-h-6 sl-w-6 sl-shrink-0'\n ]\"\n :style=\"{\n color: isActive \n ? 'var(--sl-color-stachelock-050, #edeff9)' \n : 'var(--sl-color-stachelock-300, #949ed9)'\n }\" \n aria-hidden=\"true\" \n />\n <span v-if=\"!iconOnly\" class=\"sl-truncate\">{{ name }}</span>\n <span v-if=\"badge\" :class=\"[\n 'sl-ml-auto sl-inline-flex sl-items-center sl-rounded-md sl-px-2 sl-py-1 sl-text-xs sl-font-medium',\n badgeTheme === 'primary' ? 'sl-bg-stachelock-400 sl-text-white' : '',\n badgeTheme === 'secondary' ? 'sl-bg-gray-400 sl-text-white' : '',\n badgeTheme === 'success' ? 'sl-bg-green-400 sl-text-white' : '',\n badgeTheme === 'warning' ? 'sl-bg-yellow-400 sl-text-white' : '',\n badgeTheme === 'danger' ? 'sl-bg-red-400 sl-text-white' : ''\n ]\">\n {{ badge }}\n </span>\n </a>\n </li>\n</template>\n\n<script setup lang=\"ts\">\nimport type { Component } from 'vue';\n\ndefineProps<{\n name: string;\n href: string;\n icon: Component;\n isActive?: boolean;\n iconOnly?: boolean;\n badge?: string;\n badgeTheme?: 'primary' | 'secondary' | 'success' | 'warning' | 'danger';\n}>();\n</script>\n\n<style scoped>\n</style>\n"],"names":["_createElementBlock","_createElementVNode","href","_normalizeClass","isActive","_normalizeStyle","_openBlock","_createBlock","_resolveDynamicComponent","icon","iconOnly","_hoisted_2","_toDisplayString","name","badge","badgeTheme"],"mappings":";;;;;;;;;;;;;;;;2BACEA,EAuCK,MAAA,MAAA;AAAA,MAtCHC,EAqCI,KAAA;AAAA,QArCA,MAAMC,EAAAA;AAAAA,QAAa,OAAKC,EAAA;AAAA;UAAiHC,EAAAA;;QAM1I,OAAKC,EAAA;AAAA,iBAAmBD,EAAAA;2BAAiJA,EAAAA;;;SAQ1KE,KAAAC,EAWEC,EAVKC,EAAAA,IAAI,GAAA;AAAA,UACR,OAAKN,EAAE;AAAA;WAEP;AAAA,UACA,OAAKE,EAAA;AAAA,mBAAqBD,EAAAA;;UAK3B,eAAY;AAAA,QAAA;QAEDM,EAAAA,6BAAbV,EAA4D,QAA5DW,GAA4DC,EAAdC,EAAAA,IAAI,GAAA,CAAA;AAAA,QACtCC,EAAAA,cAAZd,EASO,QAAA;AAAA;UATa,OAAKG,EAAA;AAAA;YAAyHY,EAAAA,eAAU,YAAA,uCAAA;AAAA,YAAoEA,EAAAA,eAAU,cAAA,iCAAA;AAAA,YAAgEA,EAAAA,eAAU,YAAA,kCAAA;AAAA,YAA+DA,EAAAA,eAAU,YAAA,mCAAA;AAAA,YAAgEA,EAAAA,eAAU,WAAA,gCAAA;AAAA,UAAA;aAQlcD,EAAAA,KAAK,GAAA,CAAA;;;;;"}
|
|
@@ -1,11 +1,14 @@
|
|
|
1
|
-
import { defineComponent as
|
|
1
|
+
import { defineComponent as u, ref as x, createElementBlock as g, openBlock as v, createVNode as o, createElementVNode as s, unref as a, withCtx as i, renderSlot as t, normalizeClass as d } from "vue";
|
|
2
2
|
import { r as h, a as b } from "./XMarkIcon-C4wILUsz.js";
|
|
3
3
|
import { S as y, h as f } from "./transition-CuxxW9dY.js";
|
|
4
|
-
import { Y as _, G as
|
|
5
|
-
const
|
|
4
|
+
import { Y as _, G as k } from "./dialog-U1KNiPzc.js";
|
|
5
|
+
const w = { class: "sl-relative" }, $ = { class: "sl-fixed sl-inset-0 sl-flex" }, S = { class: "sl-absolute sl-left-full sl-top-0 sl-flex sl-w-16 sl-justify-center sl-pt-5" }, C = {
|
|
6
|
+
class: "sl-flex sl-grow sl-flex-col sl-gap-y-5 sl-px-6 sl-pb-2 sl-ring-1 sl-ring-white/10",
|
|
7
|
+
style: { "background-color": "var(--sl-color-stachelock-600, #3e4b9a)" }
|
|
8
|
+
}, z = { class: "sl-flex sl-h-16 sl-shrink-0 sl-items-center" }, W = { class: "sl-flex sl-flex-1 sl-flex-col" }, B = {
|
|
6
9
|
role: "list",
|
|
7
10
|
class: "-sl-mx-2 sl-flex-1 sl-space-y-1"
|
|
8
|
-
}, L = { class: "sl-mt-auto" }, j = { class: "sl-flex sl-h-16 sl-shrink-0 sl-items-center sl-px-6" }, E = { class: "sl-mt-8 sl-flex sl-flex-col sl-justify-between sl-h-full" }, G = { class: "sl-absolute sl-bottom-4 sl-left-0 sl-right-0 sl-px-6" }, N = { class: "sl-sticky sl-top-0 sl-z-40 sl-flex sl-h-16 sl-shrink-0 sl-items-center sl-gap-x-4 sl-border-b sl-border-gray-200 sl-bg-white sl-px-4 sl-shadow-sm sm:sl-gap-x-6 sm:sl-px-6 lg:sl-px-8" }, O = { class: "sl-flex sl-flex-1 sl-gap-x-4 sm:sl-self-stretch lg:sl-gap-x-6" }, V = { class: "sl-relative sl-flex sl-flex-1" }, Y = { class: "sl-flex sl-items-center sl-gap-x-4 lg:sl-gap-x-6" }, q = { class: "sl-px-4 sm:sl-px-6 lg:sl-px-8 sl-py-6" }, I = /* @__PURE__ */
|
|
11
|
+
}, L = { class: "sl-mt-auto" }, j = { class: "sl-flex sl-h-16 sl-shrink-0 sl-items-center sl-px-6" }, E = { class: "sl-mt-8 sl-flex sl-flex-col sl-justify-between sl-h-full" }, G = { class: "sl-absolute sl-bottom-4 sl-left-0 sl-right-0 sl-px-6" }, N = { class: "sl-sticky sl-top-0 sl-z-40 sl-flex sl-h-16 sl-shrink-0 sl-items-center sl-gap-x-4 sl-border-b sl-border-gray-200 sl-bg-white sl-px-4 sl-shadow-sm sm:sl-gap-x-6 sm:sl-px-6 lg:sl-px-8" }, O = { class: "sl-flex sl-flex-1 sl-gap-x-4 sm:sl-self-stretch lg:sl-gap-x-6" }, V = { class: "sl-relative sl-flex sl-flex-1" }, Y = { class: "sl-flex sl-items-center sl-gap-x-4 lg:sl-gap-x-6" }, q = { class: "sl-px-4 sm:sl-px-6 lg:sl-px-8 sl-py-6" }, I = /* @__PURE__ */ u({
|
|
9
12
|
__name: "SidebarLayout",
|
|
10
13
|
props: {
|
|
11
14
|
isWideSidebar: {
|
|
@@ -13,25 +16,25 @@ const k = { class: "sl-relative" }, $ = { class: "sl-fixed sl-inset-0 sl-flex" }
|
|
|
13
16
|
default: !1
|
|
14
17
|
}
|
|
15
18
|
},
|
|
16
|
-
setup(
|
|
17
|
-
const
|
|
18
|
-
|
|
19
|
+
setup(r) {
|
|
20
|
+
const n = x(!1), c = () => {
|
|
21
|
+
n.value = !1;
|
|
19
22
|
}, p = () => {
|
|
20
|
-
|
|
23
|
+
n.value = !0;
|
|
21
24
|
};
|
|
22
|
-
return (e, l) => (v(),
|
|
23
|
-
a(
|
|
25
|
+
return (e, l) => (v(), g("div", w, [
|
|
26
|
+
o(a(y), {
|
|
24
27
|
as: "template",
|
|
25
|
-
show:
|
|
28
|
+
show: n.value
|
|
26
29
|
}, {
|
|
27
30
|
default: i(() => [
|
|
28
|
-
a(
|
|
31
|
+
o(a(_), {
|
|
29
32
|
as: "div",
|
|
30
33
|
class: "sl-relative sl-z-50 lg:sl-hidden",
|
|
31
34
|
onClose: c
|
|
32
35
|
}, {
|
|
33
36
|
default: i(() => [
|
|
34
|
-
a(
|
|
37
|
+
o(a(f), {
|
|
35
38
|
as: "template",
|
|
36
39
|
enter: "sl-transition-opacity sl-ease-linear sl-duration-300",
|
|
37
40
|
"enter-from": "sl-opacity-0",
|
|
@@ -47,7 +50,7 @@ const k = { class: "sl-relative" }, $ = { class: "sl-fixed sl-inset-0 sl-flex" }
|
|
|
47
50
|
__: [2]
|
|
48
51
|
}),
|
|
49
52
|
s("div", $, [
|
|
50
|
-
a(
|
|
53
|
+
o(a(f), {
|
|
51
54
|
as: "template",
|
|
52
55
|
enter: "sl-transition sl-ease-in-out sl-duration-300 sl-transform",
|
|
53
56
|
"enter-from": "-sl-translate-x-full",
|
|
@@ -57,9 +60,9 @@ const k = { class: "sl-relative" }, $ = { class: "sl-fixed sl-inset-0 sl-flex" }
|
|
|
57
60
|
"leave-to": "-sl-translate-x-full"
|
|
58
61
|
}, {
|
|
59
62
|
default: i(() => [
|
|
60
|
-
a(
|
|
63
|
+
o(a(k), { class: "sl-relative sl-mr-16 sl-flex sl-w-full sl-max-w-xs sl-flex-1" }, {
|
|
61
64
|
default: i(() => [
|
|
62
|
-
a(
|
|
65
|
+
o(a(f), {
|
|
63
66
|
as: "template",
|
|
64
67
|
enter: "sl-ease-in-out sl-duration-300",
|
|
65
68
|
"enter-from": "sl-opacity-0",
|
|
@@ -73,10 +76,10 @@ const k = { class: "sl-relative" }, $ = { class: "sl-fixed sl-inset-0 sl-flex" }
|
|
|
73
76
|
s("button", {
|
|
74
77
|
type: "button",
|
|
75
78
|
class: "-sl-m-2.5 sl-p-2.5",
|
|
76
|
-
onClick: l[0] || (l[0] = (
|
|
79
|
+
onClick: l[0] || (l[0] = (m) => c())
|
|
77
80
|
}, [
|
|
78
81
|
l[3] || (l[3] = s("span", { class: "sl-sr-only" }, "Close sidebar", -1)),
|
|
79
|
-
a(
|
|
82
|
+
o(a(h), {
|
|
80
83
|
class: "sl-h-6 sl-w-6 sl-text-stachelock-050",
|
|
81
84
|
"aria-hidden": "true"
|
|
82
85
|
})
|
|
@@ -88,7 +91,10 @@ const k = { class: "sl-relative" }, $ = { class: "sl-fixed sl-inset-0 sl-flex" }
|
|
|
88
91
|
s("div", C, [
|
|
89
92
|
s("div", z, [
|
|
90
93
|
t(e.$slots, "logo", {}, () => [
|
|
91
|
-
l[4] || (l[4] = s("div", {
|
|
94
|
+
l[4] || (l[4] = s("div", {
|
|
95
|
+
class: "sl-font-semibold sl-text-lg",
|
|
96
|
+
style: { color: "var(--sl-color-stachelock-050, #edeff9)" }
|
|
97
|
+
}, "Logo", -1))
|
|
92
98
|
])
|
|
93
99
|
]),
|
|
94
100
|
s("nav", W, [
|
|
@@ -114,17 +120,21 @@ const k = { class: "sl-relative" }, $ = { class: "sl-fixed sl-inset-0 sl-flex" }
|
|
|
114
120
|
_: 3
|
|
115
121
|
}, 8, ["show"]),
|
|
116
122
|
s("div", {
|
|
117
|
-
class: d(["sl-hidden lg:sl-fixed lg:sl-inset-y-0 lg:sl-left-0 lg:sl-z-50 lg:sl-block lg:sl-pb-4 sl-pt-4
|
|
123
|
+
class: d(["sl-hidden lg:sl-fixed lg:sl-inset-y-0 lg:sl-left-0 lg:sl-z-50 lg:sl-block lg:sl-pb-4 sl-pt-4", r.isWideSidebar ? "lg:sl-w-72" : "lg:sl-w-20"]),
|
|
124
|
+
style: { "background-color": "var(--sl-color-stachelock-600, #3e4b9a)" }
|
|
118
125
|
}, [
|
|
119
126
|
s("div", j, [
|
|
120
127
|
t(e.$slots, "logo", {}, () => [
|
|
121
|
-
l[5] || (l[5] = s("div", {
|
|
128
|
+
l[5] || (l[5] = s("div", {
|
|
129
|
+
class: "sl-font-semibold sl-text-lg",
|
|
130
|
+
style: { color: "var(--sl-color-stachelock-050, #edeff9)" }
|
|
131
|
+
}, "Logo", -1))
|
|
122
132
|
])
|
|
123
133
|
]),
|
|
124
134
|
s("nav", E, [
|
|
125
135
|
s("ul", {
|
|
126
136
|
role: "list",
|
|
127
|
-
class: d(
|
|
137
|
+
class: d(r.isWideSidebar ? "sl-flex sl-flex-col sl-items-start sl-mx-4 sl-space-y-1" : "sl-flex sl-flex-col sl-items-center sl-space-y-1")
|
|
128
138
|
}, [
|
|
129
139
|
t(e.$slots, "navigation")
|
|
130
140
|
], 2),
|
|
@@ -134,16 +144,16 @@ const k = { class: "sl-relative" }, $ = { class: "sl-fixed sl-inset-0 sl-flex" }
|
|
|
134
144
|
])
|
|
135
145
|
], 2),
|
|
136
146
|
s("div", {
|
|
137
|
-
class: d(["lg:sl-pl-20",
|
|
147
|
+
class: d(["lg:sl-pl-20", r.isWideSidebar ? "lg:sl-pl-72" : "lg:sl-pl-20"])
|
|
138
148
|
}, [
|
|
139
149
|
s("div", N, [
|
|
140
150
|
s("button", {
|
|
141
151
|
type: "button",
|
|
142
152
|
class: "-sl-m-2.5 sl-p-2.5 sl-text-gray-700 lg:sl-hidden",
|
|
143
|
-
onClick: l[1] || (l[1] = (
|
|
153
|
+
onClick: l[1] || (l[1] = (m) => p())
|
|
144
154
|
}, [
|
|
145
155
|
l[6] || (l[6] = s("span", { class: "sl-sr-only" }, "Open sidebar", -1)),
|
|
146
|
-
a(
|
|
156
|
+
o(a(b), {
|
|
147
157
|
class: "sl-h-6 sl-w-6",
|
|
148
158
|
"aria-hidden": "true"
|
|
149
159
|
})
|
|
@@ -171,4 +181,4 @@ const k = { class: "sl-relative" }, $ = { class: "sl-fixed sl-inset-0 sl-flex" }
|
|
|
171
181
|
export {
|
|
172
182
|
I as _
|
|
173
183
|
};
|
|
174
|
-
//# sourceMappingURL=SidebarLayout.vue_vue_type_script_setup_true_lang-
|
|
184
|
+
//# sourceMappingURL=SidebarLayout.vue_vue_type_script_setup_true_lang-BngtQexQ.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"SidebarLayout.vue_vue_type_script_setup_true_lang-BngtQexQ.js","sources":["../src/components/layouts/SidebarLayout.vue"],"sourcesContent":["<template>\n <div class=\"sl-relative\">\n <!-- Mobile sidebar overlay -->\n <TransitionRoot as=\"template\" :show=\"sidebarOpen\">\n <Dialog as=\"div\" class=\"sl-relative sl-z-50 lg:sl-hidden\" @close=\"closeSidebar\">\n <TransitionChild as=\"template\" enter=\"sl-transition-opacity sl-ease-linear sl-duration-300\"\n enter-from=\"sl-opacity-0\" enter-to=\"sl-opacity-100\"\n leave=\"sl-transition-opacity sl-ease-linear sl-duration-300\" leave-from=\"sl-opacity-100\"\n leave-to=\"sl-opacity-0\">\n <div class=\"sl-fixed sl-inset-0 sl-bg-gray-900/80\" />\n </TransitionChild>\n\n <div class=\"sl-fixed sl-inset-0 sl-flex\">\n <TransitionChild as=\"template\" enter=\"sl-transition sl-ease-in-out sl-duration-300 sl-transform\"\n enter-from=\"-sl-translate-x-full\" enter-to=\"sl-translate-x-0\"\n leave=\"sl-transition sl-ease-in-out sl-duration-300 sl-transform\" leave-from=\"sl-translate-x-0\"\n leave-to=\"-sl-translate-x-full\">\n <DialogPanel class=\"sl-relative sl-mr-16 sl-flex sl-w-full sl-max-w-xs sl-flex-1\">\n <TransitionChild as=\"template\" enter=\"sl-ease-in-out sl-duration-300\" enter-from=\"sl-opacity-0\"\n enter-to=\"sl-opacity-100\" leave=\"sl-ease-in-out sl-duration-300\" leave-from=\"sl-opacity-100\"\n leave-to=\"sl-opacity-0\">\n <div class=\"sl-absolute sl-left-full sl-top-0 sl-flex sl-w-16 sl-justify-center sl-pt-5\">\n <button type=\"button\" class=\"-sl-m-2.5 sl-p-2.5\" @click=\"closeSidebar()\">\n <span class=\"sl-sr-only\">Close sidebar</span>\n <XMarkIcon class=\"sl-h-6 sl-w-6 sl-text-stachelock-050\" aria-hidden=\"true\" />\n </button>\n </div>\n </TransitionChild>\n\n <div\n class=\"sl-flex sl-grow sl-flex-col sl-gap-y-5 sl-px-6 sl-pb-2 sl-ring-1 sl-ring-white/10\"\n style=\"background-color: var(--sl-color-stachelock-600, #3e4b9a);\">\n <div class=\"sl-flex sl-h-16 sl-shrink-0 sl-items-center\">\n <slot name=\"logo\">\n <div class=\"sl-font-semibold sl-text-lg\" style=\"color: var(--sl-color-stachelock-050, #edeff9);\">Logo</div>\n </slot>\n </div>\n <nav class=\"sl-flex sl-flex-1 sl-flex-col\">\n <ul role=\"list\" class=\"-sl-mx-2 sl-flex-1 sl-space-y-1\">\n <slot name=\"navigation\">\n <!-- Default navigation slot -->\n </slot>\n </ul>\n </nav>\n <div class=\"sl-mt-auto\">\n <slot name=\"sidebar-footer\">\n <!-- Sidebar footer content -->\n </slot>\n </div>\n </div>\n </DialogPanel>\n </TransitionChild>\n </div>\n </Dialog>\n </TransitionRoot>\n\n <!-- Desktop sidebar -->\n <div\n class=\"sl-hidden lg:sl-fixed lg:sl-inset-y-0 lg:sl-left-0 lg:sl-z-50 lg:sl-block lg:sl-pb-4 sl-pt-4\"\n style=\"background-color: var(--sl-color-stachelock-600, #3e4b9a);\"\n :class=\"isWideSidebar ? 'lg:sl-w-72' : 'lg:sl-w-20'\">\n <div class=\"sl-flex sl-h-16 sl-shrink-0 sl-items-center sl-px-6\">\n <slot name=\"logo\">\n <div class=\"sl-font-semibold sl-text-lg\" style=\"color: var(--sl-color-stachelock-050, #edeff9);\">Logo</div>\n </slot>\n </div>\n <nav class=\"sl-mt-8 sl-flex sl-flex-col sl-justify-between sl-h-full\">\n <ul role=\"list\"\n :class=\"isWideSidebar ? 'sl-flex sl-flex-col sl-items-start sl-mx-4 sl-space-y-1' : 'sl-flex sl-flex-col sl-items-center sl-space-y-1'\">\n <slot name=\"navigation\">\n <!-- Default navigation slot -->\n </slot>\n </ul>\n <div class=\"sl-absolute sl-bottom-4 sl-left-0 sl-right-0 sl-px-6\">\n <slot name=\"sidebar-footer\">\n <!-- Sidebar footer content -->\n </slot>\n </div>\n </nav>\n </div>\n\n <!-- Main content area -->\n <div :class=\"['lg:sl-pl-20', isWideSidebar ? 'lg:sl-pl-72' : 'lg:sl-pl-20']\">\n <!-- Header -->\n <div\n class=\"sl-sticky sl-top-0 sl-z-40 sl-flex sl-h-16 sl-shrink-0 sl-items-center sl-gap-x-4 sl-border-b sl-border-gray-200 sl-bg-white sl-px-4 sl-shadow-sm sm:sl-gap-x-6 sm:sl-px-6 lg:sl-px-8\">\n <button type=\"button\" class=\"-sl-m-2.5 sl-p-2.5 sl-text-gray-700 lg:sl-hidden\" @click=\"openSidebar()\">\n <span class=\"sl-sr-only\">Open sidebar</span>\n <Bars3Icon class=\"sl-h-6 sl-w-6\" aria-hidden=\"true\" />\n </button>\n\n <!-- Separator -->\n <div class=\"sl-h-6 sl-w-px sl-bg-gray-900/10 lg:sl-hidden\" aria-hidden=\"true\" />\n\n <div class=\"sl-flex sl-flex-1 sl-gap-x-4 sm:sl-self-stretch lg:sl-gap-x-6\">\n <div class=\"sl-relative sl-flex sl-flex-1\">\n <slot name=\"header-content\">\n <!-- Header content -->\n </slot>\n </div>\n <div class=\"sl-flex sl-items-center sl-gap-x-4 lg:sl-gap-x-6\">\n <slot name=\"header-right\">\n <!-- Header right content (notifications, profile, etc.) -->\n </slot>\n </div>\n </div>\n </div>\n\n <!-- Main content -->\n <main class=\"sl-px-4 sm:sl-px-6 lg:sl-px-8 sl-py-6\">\n <slot name=\"main\">\n <!-- Main content slot -->\n </slot>\n </main>\n </div>\n </div>\n</template>\n\n<script setup lang=\"ts\">\nimport { ref } from 'vue';\nimport { Dialog, DialogPanel, TransitionChild, TransitionRoot } from '@headlessui/vue';\nimport { Bars3Icon, XMarkIcon } from '@heroicons/vue/24/outline';\n\ndefineProps({\n isWideSidebar: {\n type: Boolean,\n default: false\n }\n});\n\nconst sidebarOpen = ref(false);\n\nconst closeSidebar = () => {\n sidebarOpen.value = false;\n};\n\nconst openSidebar = () => {\n sidebarOpen.value = true;\n};\n</script>\n\n<style scoped></style>\n"],"names":["sidebarOpen","ref","closeSidebar","openSidebar","_openBlock","_createElementBlock","_hoisted_1","_createVNode","_unref","TransitionRoot","Dialog","TransitionChild","_cache","_createElementVNode","_hoisted_2","DialogPanel","_hoisted_3","XMarkIcon","_hoisted_4","_hoisted_5","_renderSlot","_ctx","_hoisted_6","_hoisted_7","_hoisted_8","_normalizeClass","__props","_hoisted_9","_hoisted_10","_hoisted_11","_hoisted_12","Bars3Icon","_hoisted_13","_hoisted_14","_hoisted_15","_hoisted_16"],"mappings":"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"}
|
package/dist/index.js
CHANGED
|
@@ -24,12 +24,12 @@ import { _ as F } from "./TextAreaInput.vue_vue_type_script_setup_true_lang-CbR6
|
|
|
24
24
|
import { _ as E } from "./SwitchInput.vue_vue_type_script_setup_true_lang-BFr2SByh.js";
|
|
25
25
|
import { _ as x } from "./SelectInput.vue_vue_type_script_setup_true_lang-BPjHLHdM.js";
|
|
26
26
|
import { _ as ze } from "./TagifyInput.vue_vue_type_script_setup_true_lang-DRR6jt_8.js";
|
|
27
|
-
import { _ as Ge } from "./DashboardLayout.vue_vue_type_script_setup_true_lang-
|
|
27
|
+
import { _ as Ge } from "./DashboardLayout.vue_vue_type_script_setup_true_lang-Cg83utkU.js";
|
|
28
28
|
import { _ as He } from "./DefaultLayout.vue_vue_type_script_setup_true_lang-BZAz6aC-.js";
|
|
29
29
|
import { _ as qe } from "./HeaderLayout.vue_vue_type_script_setup_true_lang-BY2G6hCc.js";
|
|
30
|
-
import { _ as Ke } from "./NavigationGroup.vue_vue_type_script_setup_true_lang-
|
|
31
|
-
import { _ as Xe } from "./NavigationItem.vue_vue_type_script_setup_true_lang-
|
|
32
|
-
import { _ as et } from "./SidebarLayout.vue_vue_type_script_setup_true_lang-
|
|
30
|
+
import { _ as Ke } from "./NavigationGroup.vue_vue_type_script_setup_true_lang-2tAB9Hbx.js";
|
|
31
|
+
import { _ as Xe } from "./NavigationItem.vue_vue_type_script_setup_true_lang-53p-Y_ru.js";
|
|
32
|
+
import { _ as et } from "./SidebarLayout.vue_vue_type_script_setup_true_lang-BngtQexQ.js";
|
|
33
33
|
import { default as st } from "./components/Badge.js";
|
|
34
34
|
import { default as rt } from "./components/Button.js";
|
|
35
35
|
import { default as lt } from "./components/LoadingDots.js";
|
|
@@ -537,7 +537,7 @@ class z {
|
|
|
537
537
|
(t.designTokens || t.prefix !== void 0 || t.injectCSS !== void 0) && this.configure(t), this.injectCSS && this.injectCSSVariables(), e.config.globalProperties.$stachelockUI = this, e.provide("stachelockUI", this);
|
|
538
538
|
}
|
|
539
539
|
configure(e) {
|
|
540
|
-
e.designTokens && (this.designTokens = _(
|
|
540
|
+
e.designTokens && (this.designTokens = _(this.designTokens, e.designTokens)), e.prefix !== void 0 && (this.prefix = e.prefix), e.injectCSS !== void 0 && (this.injectCSS = e.injectCSS);
|
|
541
541
|
}
|
|
542
542
|
getDesignTokens() {
|
|
543
543
|
return this.designTokens;
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sources":["../src/utils/component-registry.ts","../src/config/design-tokens.ts","../src/config/css-variables.ts","../src/components/UiRadialProgressBar.vue","../src/components/inputs/InputsShowcase.vue","../src/plugin/configure.ts"],"sourcesContent":["import { defineAsyncComponent, type Component } from 'vue'\nimport UiTextInput from '../components/UiTextInput.vue'\nimport type { ComponentMap } from '../types/form'\n\n/**\n * Default component map for dynamic forms\n */\nexport const defaultComponentMap: ComponentMap = {\n text: {\n component: 'TextInput',\n loader: () => Promise.resolve(UiTextInput)\n },\n email: {\n component: 'TextInput',\n loader: () => Promise.resolve(UiTextInput)\n },\n password: {\n component: 'TextInput',\n loader: () => Promise.resolve(UiTextInput)\n },\n number: {\n component: 'TextInput',\n loader: () => Promise.resolve(UiTextInput)\n },\n tel: {\n component: 'TextInput',\n loader: () => Promise.resolve(UiTextInput)\n },\n url: {\n component: 'TextInput',\n loader: () => Promise.resolve(UiTextInput)\n },\n textarea: {\n component: 'TextAreaInput',\n loader: () => import('../components/inputs/TextAreaInput.vue')\n },\n select: {\n component: 'SelectInput',\n loader: () => import('../components/inputs/SelectInput.vue')\n },\n combobox: {\n component: 'ComboboxInput',\n loader: () => import('../components/inputs/ComboboxInput.vue')\n },\n checkbox: {\n component: 'CheckboxInput',\n loader: () => import('../components/inputs/CheckboxInput.vue')\n },\n switch: {\n component: 'SwitchInput',\n loader: () => import('../components/inputs/SwitchInput.vue')\n }\n}\n\n/**\n * Component registry class for managing dynamic form components\n */\nexport class ComponentRegistry {\n private componentMap: ComponentMap = { ...defaultComponentMap }\n private loadedComponents: Map<string, Component> = new Map()\n\n /**\n * Register a new component type\n */\n register(type: string, component: string, loader: () => Promise<any>): void {\n this.componentMap[type] = { component, loader }\n // Clear cached component if it exists\n this.loadedComponents.delete(type)\n }\n\n /**\n * Get a component for a field type\n */\n getComponent(type: string): Component | null {\n const mapItem = this.componentMap[type]\n if (!mapItem) {\n console.warn(`Component type \"${type}\" is not registered`)\n return null\n }\n\n // Return cached component if available\n if (this.loadedComponents.has(type)) {\n return this.loadedComponents.get(type)!\n }\n\n // Create async component\n const asyncComponent = defineAsyncComponent({\n loader: mapItem.loader,\n delay: 0\n })\n\n this.loadedComponents.set(type, asyncComponent)\n return asyncComponent\n }\n\n /**\n * Check if a component type is registered\n */\n hasComponent(type: string): boolean {\n return type in this.componentMap\n }\n\n /**\n * Get all registered component types\n */\n getRegisteredTypes(): string[] {\n return Object.keys(this.componentMap)\n }\n\n /**\n * Unregister a component type\n */\n unregister(type: string): void {\n delete this.componentMap[type]\n this.loadedComponents.delete(type)\n }\n\n /**\n * Clear all cached components\n */\n clearCache(): void {\n this.loadedComponents.clear()\n }\n}\n\n// Global component registry instance\nexport const componentRegistry = new ComponentRegistry()\n\n/**\n * Register a component type globally\n */\nexport function registerComponent(type: string, component: string, loader: () => Promise<any>): void {\n componentRegistry.register(type, component, loader)\n}\n\n/**\n * Get a component for a field type\n */\nexport function getComponent(type: string): Component | null {\n return componentRegistry.getComponent(type)\n}\n","export interface StachelockUIDesignTokens {\n colors?: {\n primary?: {\n 50?: string;\n 100?: string;\n 200?: string;\n 300?: string;\n 400?: string;\n 500?: string;\n 600?: string;\n 700?: string;\n 800?: string;\n 900?: string;\n };\n stachelock?: {\n 50?: string;\n 100?: string;\n 200?: string;\n 300?: string;\n 400?: string;\n 500?: string;\n 600?: string;\n 700?: string;\n 800?: string;\n 900?: string;\n '050'?: string;\n };\n [key: string]: any;\n };\n spacing?: {\n [key: string]: string;\n };\n borderRadius?: {\n [key: string]: string;\n };\n shadows?: {\n [key: string]: string;\n };\n typography?: {\n fontFamily?: {\n [key: string]: string[];\n };\n fontSize?: {\n [key: string]: string;\n };\n };\n breakpoints?: {\n [key: string]: string;\n };\n}\n\nexport const defaultDesignTokens: StachelockUIDesignTokens = {\n colors: {\n primary: {\n 50: '#edeff9',\n 100: '#dbdff2',\n 200: '#b8bfe6',\n 300: '#949ed9',\n 400: '#717ecd',\n 500: '#4d5ec0',\n 600: '#3e4b9a',\n 700: '#2e3873',\n 800: '#1f264d',\n 900: '#0f1326',\n },\n stachelock: {\n 50: '#edeff9',\n 100: '#dbdff2',\n 200: '#b8bfe6',\n 300: '#949ed9',\n 400: '#717ecd',\n 500: '#4d5ec0',\n 600: '#3e4b9a',\n 700: '#2e3873',\n 800: '#1f264d',\n 900: '#0f1326',\n '050': '#edeff9', // Same as 50 for consistency\n },\n },\n spacing: {\n '0': '0',\n '1': '0.25rem',\n '2': '0.5rem',\n '3': '0.75rem',\n '4': '1rem',\n '5': '1.25rem',\n '6': '1.5rem',\n '8': '2rem',\n '10': '2.5rem',\n '12': '3rem',\n '16': '4rem',\n '20': '5rem',\n '24': '6rem',\n '32': '8rem',\n '40': '10rem',\n '48': '12rem',\n '56': '14rem',\n '64': '16rem',\n '72': '18rem',\n '80': '20rem',\n '96': '24rem',\n },\n borderRadius: {\n 'none': '0',\n 'sm': '0.125rem',\n 'DEFAULT': '0.25rem',\n 'md': '0.375rem',\n 'lg': '0.5rem',\n 'xl': '0.75rem',\n '2xl': '1rem',\n '3xl': '1.5rem',\n 'full': '9999px',\n },\n shadows: {\n 'sm': '0 1px 2px 0 rgb(0 0 0 / 0.05)',\n 'DEFAULT': '0 1px 3px 0 rgb(0 0 0 / 0.1), 0 1px 2px -1px rgb(0 0 0 / 0.1)',\n 'md': '0 4px 6px -1px rgb(0 0 0 / 0.1), 0 2px 4px -2px rgb(0 0 0 / 0.1)',\n 'lg': '0 10px 15px -3px rgb(0 0 0 / 0.1), 0 4px 6px -4px rgb(0 0 0 / 0.1)',\n 'xl': '0 20px 25px -5px rgb(0 0 0 / 0.1), 0 8px 10px -6px rgb(0 0 0 / 0.1)',\n '2xl': '0 25px 50px -12px rgb(0 0 0 / 0.25)',\n 'inner': 'inset 0 2px 4px 0 rgb(0 0 0 / 0.05)',\n 'none': 'none',\n },\n typography: {\n fontFamily: {\n sans: ['Inter', 'ui-sans-serif', 'system-ui', 'sans-serif'],\n serif: ['ui-serif', 'Georgia', 'Cambria', 'serif'],\n mono: ['ui-monospace', 'SFMono-Regular', 'Menlo', 'Monaco', 'Consolas', 'monospace'],\n },\n fontSize: {\n 'xs': '0.75rem',\n 'sm': '0.875rem',\n 'base': '1rem',\n 'lg': '1.125rem',\n 'xl': '1.25rem',\n '2xl': '1.5rem',\n '3xl': '1.875rem',\n '4xl': '2.25rem',\n '5xl': '3rem',\n '6xl': '3.75rem',\n '7xl': '4.5rem',\n '8xl': '6rem',\n '9xl': '8rem',\n },\n },\n breakpoints: {\n 'sm': '640px',\n 'md': '768px',\n 'lg': '1024px',\n 'xl': '1280px',\n '2xl': '1536px',\n },\n};\n\nexport function mergeDesignTokens(\n customTokens: StachelockUIDesignTokens,\n defaults: StachelockUIDesignTokens = defaultDesignTokens\n): StachelockUIDesignTokens {\n const merged = { ...defaults };\n \n // Deep merge function for nested objects\n function deepMerge(target: any, source: any): any {\n if (source && typeof source === 'object' && !Array.isArray(source)) {\n for (const key in source) {\n if (source.hasOwnProperty(key)) {\n if (target[key] && typeof target[key] === 'object' && !Array.isArray(target[key])) {\n target[key] = deepMerge(target[key], source[key]);\n } else {\n target[key] = source[key];\n }\n }\n }\n }\n return target;\n }\n \n return deepMerge(merged, customTokens);\n}\n","import type { StachelockUIDesignTokens } from './design-tokens';\n\nexport function generateCSSVariables(tokens: StachelockUIDesignTokens): string {\n let css = ':root {\\n';\n \n // Generate color variables\n if (tokens.colors) {\n Object.entries(tokens.colors).forEach(([colorName, colorShades]) => {\n if (typeof colorShades === 'object' && colorShades !== null) {\n Object.entries(colorShades).forEach(([shade, value]) => {\n const variableName = shade === 'DEFAULT' ? colorName : `${colorName}-${shade}`;\n css += ` --sl-color-${variableName}: ${value};\\n`;\n });\n }\n });\n }\n \n // Generate spacing variables\n if (tokens.spacing) {\n Object.entries(tokens.spacing).forEach(([name, value]) => {\n css += ` --sl-spacing-${name}: ${value};\\n`;\n });\n }\n \n // Generate border radius variables\n if (tokens.borderRadius) {\n Object.entries(tokens.borderRadius).forEach(([name, value]) => {\n const variableName = name === 'DEFAULT' ? 'radius' : `radius-${name}`;\n css += ` --sl-${variableName}: ${value};\\n`;\n });\n }\n \n // Generate shadow variables\n if (tokens.shadows) {\n Object.entries(tokens.shadows).forEach(([name, value]) => {\n const variableName = name === 'DEFAULT' ? 'shadow' : `shadow-${name}`;\n css += ` --sl-${variableName}: ${value};\\n`;\n });\n }\n \n // Generate typography variables\n if (tokens.typography) {\n if (tokens.typography.fontFamily) {\n Object.entries(tokens.typography.fontFamily).forEach(([name, fonts]) => {\n css += ` --sl-font-family-${name}: ${fonts.join(', ')};\\n`;\n });\n }\n \n if (tokens.typography.fontSize) {\n Object.entries(tokens.typography.fontSize).forEach(([name, size]) => {\n css += ` --sl-font-size-${name}: ${size};\\n`;\n });\n }\n }\n \n // Generate breakpoint variables\n if (tokens.breakpoints) {\n Object.entries(tokens.breakpoints).forEach(([name, value]) => {\n css += ` --sl-breakpoint-${name}: ${value};\\n`;\n });\n }\n \n // Add some computed variables\n css += ` --sl-ring-color: var(--sl-color-stachelock-600, #3e4b9a);\\n`;\n css += ` --sl-ring-offset-color: #ffffff;\\n`;\n css += ` --sl-ring-width: 2px;\\n`;\n css += ` --sl-outline-color: var(--sl-color-stachelock-600, #3e4b9a);\\n`;\n css += ` --sl-outline-width: 2px;\\n`;\n \n css += '}\\n\\n';\n \n // Add dark mode variables\n css += '@media (prefers-color-scheme: dark) {\\n';\n css += ' :root {\\n';\n css += ' --sl-ring-color: var(--sl-color-stachelock-600, #3e4b9a);\\n';\n css += ' }\\n';\n css += '}\\n';\n \n return css;\n}\n\nexport function generateTailwindConfig(tokens: StachelockUIDesignTokens): string {\n let config = 'export default {\\n';\n config += ' prefix: \"sl-\",\\n';\n config += ' theme: {\\n';\n config += ' extend: {\\n';\n \n // Colors\n if (tokens.colors) {\n config += ' colors: {\\n';\n Object.entries(tokens.colors).forEach(([colorName, colorShades]) => {\n if (typeof colorShades === 'object' && colorShades !== null) {\n config += ` \"${colorName}\": {\\n`;\n Object.entries(colorShades).forEach(([shade, value]) => {\n const shadeName = shade === 'DEFAULT' ? 'DEFAULT' : shade;\n config += ` \"${shadeName}\": \"${value}\",\\n`;\n });\n config += ' },\\n';\n }\n });\n config += ' },\\n';\n }\n \n // Spacing\n if (tokens.spacing) {\n config += ' spacing: {\\n';\n Object.entries(tokens.spacing).forEach(([name, value]) => {\n config += ` \"${name}\": \"${value}\",\\n`;\n });\n config += ' },\\n';\n }\n \n // Border radius\n if (tokens.borderRadius) {\n config += ' borderRadius: {\\n';\n Object.entries(tokens.borderRadius).forEach(([name, value]) => {\n const configName = name === 'DEFAULT' ? 'DEFAULT' : name;\n config += ` \"${configName}\": \"${value}\",\\n`;\n });\n config += ' },\\n';\n }\n \n // Shadows\n if (tokens.shadows) {\n config += ' boxShadow: {\\n';\n Object.entries(tokens.shadows).forEach(([name, value]) => {\n const configName = name === 'DEFAULT' ? 'DEFAULT' : name;\n config += ` \"${configName}\": \"${value}\",\\n`;\n });\n config += ' },\\n';\n }\n \n // Typography\n if (tokens.typography) {\n if (tokens.typography.fontFamily) {\n config += ' fontFamily: {\\n';\n Object.entries(tokens.typography.fontFamily).forEach(([name, fonts]) => {\n config += ` \"${name}\": [${fonts.map(f => `\"${f}\"`).join(', ')}],\\n`;\n });\n config += ' },\\n';\n }\n \n if (tokens.typography.fontSize) {\n config += ' fontSize: {\\n';\n Object.entries(tokens.typography.fontSize).forEach(([name, size]) => {\n config += ` \"${name}\": \"${size}\",\\n`;\n });\n config += ' },\\n';\n }\n }\n \n config += ' },\\n';\n config += ' },\\n';\n config += '};\\n';\n \n return config;\n}\n","<template>\n <div class=\"sl-relative\" :class=\"sizeClass\">\n <svg viewBox=\"0 0 36 36\" class=\"sl-transform -sl-rotate-90 sl-w-full sl-h-full\">\n <path class=\"sl-fill-none sl-stroke-gray-300\" stroke-width=\"3.8\"\n d=\"M18 2.0845 a 15.9155 15.9155 0 0 1 0 31.831 a 15.9155 15.9155 0 0 1 0 -31.831\" />\n <path\n class=\"sl-fill-none sl-stroke-stachelock-600 sl-stroke-linecap-round sl-transition-[stroke-dasharray] sl-duration-500 sl-ease-out\"\n :stroke-dasharray=\"progress + ', 100'\" stroke-width=\"3.8\"\n d=\"M18 2.0845 a 15.9155 15.9155 0 0 1 0 31.831 a 15.9155 15.9155 0 0 1 0 -31.831\" />\n </svg>\n <div v-if=\"label && label.length > 0\"\n class=\"sl-absolute sl-top-1/2 sl-left-1/2 sl-transform -sl-translate-x-1/2 -sl-translate-y-1/2 sl-text-center\">{{ label }}</div>\n <div v-if=\"showProgressLabel\"\n class=\"sl-absolute sl-top-1/2 sl-left-1/2 sl-transform -sl-translate-x-1/2 -sl-translate-y-1/2 sl-text-center sl-text-xs\">\n {{ progress }}%\n </div>\n </div>\n</template>\n\n<script setup lang=\"ts\">\nimport { computed, ref, watch } from 'vue';\n\ntype RadialProgressBarSize = 'xs' | 'sm' | 'md' | 'lg';\n\nconst props = defineProps({\n progress: {\n type: Number,\n default: 0\n },\n label: {\n type: String,\n default: ''\n },\n showProgressLabel: {\n type: Boolean,\n default: false\n },\n size: {\n type: String as () => RadialProgressBarSize,\n default: 'md'\n }\n});\n\nconst sizeClass = computed(() => {\n switch (props.size) {\n case 'xs':\n return 'sl-h-4 sl-w-4'\n case 'sm':\n return 'sl-h-8 sl-w-8'\n case 'md':\n return 'sl-h-12 sl-w-12'\n case 'lg':\n return 'sl-h-16 sl-w-16'\n default:\n return 'sl-h-8 sl-w-8'\n }\n});\n\nconst progress = ref(props.progress);\n\nwatch(() => props.progress, (newValue) => {\n progress.value = newValue;\n});\n</script>\n\n<style scoped>\n</style>\n","<template>\n <section class=\"sl-bg-white sl-rounded-lg sl-shadow sl-p-6\">\n <h2 class=\"sl-text-xl sl-font-semibold sl-mb-4\">All Inputs Showcase</h2>\n\n <div class=\"sl-space-y-8\">\n <!-- Text Input -->\n <div>\n <h3 class=\"sl-text-sm sl-font-medium sl-text-gray-700 sl-mb-2\">Text Input</h3>\n <TextInput\n name=\"demoText\"\n label=\"Text Input\"\n placeholder=\"Type something...\"\n v-model:value=\"state.text\"\n />\n </div>\n\n <!-- Text Area Input -->\n <div>\n <h3 class=\"sl-text-sm sl-font-medium sl-text-gray-700 sl-mb-2\">Text Area</h3>\n <TextAreaInput\n name=\"demoTextArea\"\n label=\"Text Area\"\n placeholder=\"Write a longer message...\"\n :rows=\"4\"\n :maxlength=\"200\"\n v-model=\"state.textArea\"\n />\n </div>\n\n <!-- Switch Input -->\n <div>\n <h3 class=\"sl-text-sm sl-font-medium sl-text-gray-700 sl-mb-2\">Switch</h3>\n <SwitchInput\n name=\"demoSwitch\"\n label=\"Enable feature\"\n v-model=\"state.switchOn\"\n textTrue=\"ON\"\n textFalse=\"OFF\"\n />\n </div>\n\n <!-- Checkbox Input -->\n <div>\n <h3 class=\"sl-text-sm sl-font-medium sl-text-gray-700 sl-mb-2\">Checkbox</h3>\n <CheckboxInput\n name=\"demoCheckbox\"\n label=\"I agree to the terms\"\n v-model=\"state.checkbox\"\n />\n </div>\n\n <!-- Select Input -->\n <div class=\"sl-grid sl-grid-cols-1 sl-md:grid-cols-2 sl-gap-6\">\n <div>\n <h3 class=\"sl-text-sm sl-font-medium sl-text-gray-700 sl-mb-2\">Select (Single)</h3>\n <SelectInput\n name=\"demoSelect\"\n label=\"Favorite Fruit\"\n placeholder=\"Select a fruit\"\n :items=\"fruits\"\n v-model=\"state.selectedFruit\"\n />\n </div>\n <div>\n <h3 class=\"sl-text-sm sl-font-medium sl-text-gray-700 sl-mb-2\">Select (Multiple)</h3>\n <SelectInput\n name=\"demoSelectMulti\"\n label=\"Favorite Languages\"\n placeholder=\"Select languages\"\n :items=\"languages\"\n multiple\n showAll\n v-model=\"state.selectedLanguages\"\n />\n </div>\n </div>\n\n <!-- Combobox Input -->\n <div>\n <h3 class=\"sl-text-sm sl-font-medium sl-text-gray-700 sl-mb-2\">Combobox</h3>\n <ComboboxInput\n name=\"demoCombobox\"\n label=\"Search a City\"\n placeholder=\"Start typing...\"\n :items=\"cities\"\n v-model=\"state.selectedCity\"\n />\n </div>\n\n <!-- Current State -->\n <div class=\"sl-bg-gray-50 sl-rounded-md sl-p-4 sl-text-sm sl-text-gray-700\">\n <div class=\"sl-font-semibold sl-mb-1\">State</div>\n <pre class=\"sl-whitespace-pre-wrap\">{{ state }}</pre>\n </div>\n </div>\n </section>\n</template>\n\n<script setup lang=\"ts\">\nimport { reactive } from 'vue'\nimport TextInput from '../UiTextInput.vue'\nimport TextAreaInput from './TextAreaInput.vue'\nimport SwitchInput from './SwitchInput.vue'\nimport CheckboxInput from './CheckboxInput.vue'\nimport SelectInput from './SelectInput.vue'\nimport ComboboxInput from './ComboboxInput.vue'\n\nconst state = reactive({\n text: '',\n textArea: '',\n switchOn: false,\n checkbox: false,\n selectedFruit: null as null | { id: number; name: string },\n selectedLanguages: [] as Array<{ id: number; name: string }>,\n selectedCity: null as null | { id: number; name: string },\n})\n\nconst fruits = [\n { id: 1, name: 'Apple' },\n { id: 2, name: 'Banana' },\n { id: 3, name: 'Cherry' },\n { id: 4, name: 'Durian', disabled: true },\n]\n\nconst languages = [\n { id: 1, name: 'TypeScript' },\n { id: 2, name: 'JavaScript' },\n { id: 3, name: 'Python' },\n { id: 4, name: 'Go' },\n { id: 5, name: 'Rust' },\n]\n\nconst cities = [\n { id: 1, name: 'New York' },\n { id: 2, name: 'San Francisco' },\n { id: 3, name: 'Seattle' },\n { id: 4, name: 'Austin' },\n { id: 5, name: 'Chicago' },\n { id: 6, name: 'Denver' },\n { id: 7, name: 'Miami' },\n { id: 8, name: 'Boston' },\n]\n</script>\n\n\n","import type { App } from 'vue';\nimport type { StachelockUIDesignTokens } from '../config/design-tokens';\nimport { defaultDesignTokens, mergeDesignTokens } from '../config/design-tokens';\nimport { generateCSSVariables } from '../config/css-variables';\n\nexport interface StachelockUIOptions {\n designTokens?: StachelockUIDesignTokens;\n prefix?: string;\n injectCSS?: boolean;\n}\n\nexport interface StachelockUIPlugin {\n install: (app: App, options?: StachelockUIOptions) => void;\n configure: (options: StachelockUIOptions) => void;\n getDesignTokens: () => StachelockUIDesignTokens;\n generateCSS: () => string;\n}\n\nclass StachelockUIPluginImpl implements StachelockUIPlugin {\n private designTokens: StachelockUIDesignTokens;\n private prefix: string = 'sl-';\n private injectCSS: boolean = true;\n\n constructor() {\n // Use imported default tokens\n this.designTokens = defaultDesignTokens;\n }\n\n install(app: App, options: StachelockUIOptions = {}) {\n // Configure with options if provided\n if (options.designTokens || options.prefix !== undefined || options.injectCSS !== undefined) {\n this.configure(options);\n }\n\n // Inject CSS variables if enabled\n if (this.injectCSS) {\n this.injectCSSVariables();\n }\n\n // Make plugin available globally\n app.config.globalProperties.$stachelockUI = this;\n \n // Provide plugin instance to components\n app.provide('stachelockUI', this);\n }\n\n configure(options: StachelockUIOptions) {\n if (options.designTokens) {\n this.designTokens = mergeDesignTokens(options.designTokens, this.designTokens);\n }\n \n if (options.prefix !== undefined) {\n this.prefix = options.prefix;\n }\n \n if (options.injectCSS !== undefined) {\n this.injectCSS = options.injectCSS;\n }\n }\n\n getDesignTokens(): StachelockUIDesignTokens {\n return this.designTokens;\n }\n\n generateCSS(): string {\n return generateCSSVariables(this.designTokens);\n }\n\n private injectCSSVariables() {\n // Create a style element and inject the CSS variables\n const style = document.createElement('style');\n style.textContent = this.generateCSS();\n style.setAttribute('data-stachelock-ui', 'true');\n \n // Remove any existing injected styles\n const existingStyle = document.querySelector('style[data-stachelock-ui=\"true\"]');\n if (existingStyle) {\n existingStyle.remove();\n }\n \n // Inject the new styles\n document.head.appendChild(style);\n }\n}\n\n// Create and export the plugin instance\nexport const StachelockUI: StachelockUIPlugin = new StachelockUIPluginImpl();\n\n// Export the plugin class for advanced usage\nexport { StachelockUIPluginImpl };\n"],"names":["defaultComponentMap","UiTextInput","ComponentRegistry","type","component","loader","mapItem","asyncComponent","defineAsyncComponent","componentRegistry","registerComponent","getComponent","defaultDesignTokens","mergeDesignTokens","customTokens","defaults","merged","deepMerge","target","source","key","generateCSSVariables","tokens","css","colorName","colorShades","shade","value","variableName","name","fonts","size","generateTailwindConfig","config","f","props","__props","sizeClass","computed","progress","ref","watch","newValue","_createElementBlock","_normalizeClass","_openBlock","_hoisted_1","_createElementVNode","_hoisted_3","_toDisplayString","_hoisted_4","state","reactive","fruits","languages","cities","_cache","_hoisted_2","_createVNode","TextInput","$event","TextAreaInput","SwitchInput","CheckboxInput","SelectInput","ComboboxInput","_hoisted_5","StachelockUIPluginImpl","app","options","style","existingStyle","StachelockUI"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAOO,MAAMA,IAAoC;AAAA,EAC/C,MAAM;AAAA,IACJ,WAAW;AAAA,IACX,QAAQ,MAAM,QAAQ,QAAQC,CAAW;AAAA,EAAA;AAAA,EAE3C,OAAO;AAAA,IACL,WAAW;AAAA,IACX,QAAQ,MAAM,QAAQ,QAAQA,CAAW;AAAA,EAAA;AAAA,EAE3C,UAAU;AAAA,IACR,WAAW;AAAA,IACX,QAAQ,MAAM,QAAQ,QAAQA,CAAW;AAAA,EAAA;AAAA,EAE3C,QAAQ;AAAA,IACN,WAAW;AAAA,IACX,QAAQ,MAAM,QAAQ,QAAQA,CAAW;AAAA,EAAA;AAAA,EAE3C,KAAK;AAAA,IACH,WAAW;AAAA,IACX,QAAQ,MAAM,QAAQ,QAAQA,CAAW;AAAA,EAAA;AAAA,EAE3C,KAAK;AAAA,IACH,WAAW;AAAA,IACX,QAAQ,MAAM,QAAQ,QAAQA,CAAW;AAAA,EAAA;AAAA,EAE3C,UAAU;AAAA,IACR,WAAW;AAAA,IACX,QAAQ,MAAM,OAAO,2BAAwC;AAAA,EAAA;AAAA,EAE/D,QAAQ;AAAA,IACN,WAAW;AAAA,IACX,QAAQ,MAAM,OAAO,yBAAsC;AAAA,EAAA;AAAA,EAE7D,UAAU;AAAA,IACR,WAAW;AAAA,IACX,QAAQ,MAAM,OAAO,2BAAwC;AAAA,EAAA;AAAA,EAE/D,UAAU;AAAA,IACR,WAAW;AAAA,IACX,QAAQ,MAAM,OAAO,2BAAwC;AAAA,EAAA;AAAA,EAE/D,QAAQ;AAAA,IACN,WAAW;AAAA,IACX,QAAQ,MAAM,OAAO,yBAAsC;AAAA,EAAA;AAE/D;AAKO,MAAMC,EAAkB;AAAA,EACrB,eAA6B,EAAE,GAAGF,EAAA;AAAA,EAClC,uCAA+C,IAAA;AAAA;AAAA;AAAA;AAAA,EAKvD,SAASG,GAAcC,GAAmBC,GAAkC;AAC1E,SAAK,aAAaF,CAAI,IAAI,EAAE,WAAAC,GAAW,QAAAC,EAAA,GAEvC,KAAK,iBAAiB,OAAOF,CAAI;AAAA,EACnC;AAAA;AAAA;AAAA;AAAA,EAKA,aAAaA,GAAgC;AAC3C,UAAMG,IAAU,KAAK,aAAaH,CAAI;AACtC,QAAI,CAACG;AACH,qBAAQ,KAAK,mBAAmBH,CAAI,qBAAqB,GAClD;AAIT,QAAI,KAAK,iBAAiB,IAAIA,CAAI;AAChC,aAAO,KAAK,iBAAiB,IAAIA,CAAI;AAIvC,UAAMI,IAAiBC,EAAqB;AAAA,MAC1C,QAAQF,EAAQ;AAAA,MAChB,OAAO;AAAA,IAAA,CACR;AAED,gBAAK,iBAAiB,IAAIH,GAAMI,CAAc,GACvCA;AAAA,EACT;AAAA;AAAA;AAAA;AAAA,EAKA,aAAaJ,GAAuB;AAClC,WAAOA,KAAQ,KAAK;AAAA,EACtB;AAAA;AAAA;AAAA;AAAA,EAKA,qBAA+B;AAC7B,WAAO,OAAO,KAAK,KAAK,YAAY;AAAA,EACtC;AAAA;AAAA;AAAA;AAAA,EAKA,WAAWA,GAAoB;AAC7B,WAAO,KAAK,aAAaA,CAAI,GAC7B,KAAK,iBAAiB,OAAOA,CAAI;AAAA,EACnC;AAAA;AAAA;AAAA;AAAA,EAKA,aAAmB;AACjB,SAAK,iBAAiB,MAAA;AAAA,EACxB;AACF;AAGO,MAAMM,IAAoB,IAAIP,EAAA;AAK9B,SAASQ,EAAkBP,GAAcC,GAAmBC,GAAkC;AACnG,EAAAI,EAAkB,SAASN,GAAMC,GAAWC,CAAM;AACpD;AAKO,SAASM,EAAaR,GAAgC;AAC3D,SAAOM,EAAkB,aAAaN,CAAI;AAC5C;ACzFO,MAAMS,IAAgD;AAAA,EAC3D,QAAQ;AAAA,IACN,SAAS;AAAA,MACP,IAAI;AAAA,MACJ,KAAK;AAAA,MACL,KAAK;AAAA,MACL,KAAK;AAAA,MACL,KAAK;AAAA,MACL,KAAK;AAAA,MACL,KAAK;AAAA,MACL,KAAK;AAAA,MACL,KAAK;AAAA,MACL,KAAK;AAAA,IAAA;AAAA,IAEP,YAAY;AAAA,MACV,IAAI;AAAA,MACJ,KAAK;AAAA,MACL,KAAK;AAAA,MACL,KAAK;AAAA,MACL,KAAK;AAAA,MACL,KAAK;AAAA,MACL,KAAK;AAAA,MACL,KAAK;AAAA,MACL,KAAK;AAAA,MACL,KAAK;AAAA,MACL,OAAO;AAAA;AAAA,IAAA;AAAA,EACT;AAAA,EAEF,SAAS;AAAA,IACP,GAAK;AAAA,IACL,GAAK;AAAA,IACL,GAAK;AAAA,IACL,GAAK;AAAA,IACL,GAAK;AAAA,IACL,GAAK;AAAA,IACL,GAAK;AAAA,IACL,GAAK;AAAA,IACL,IAAM;AAAA,IACN,IAAM;AAAA,IACN,IAAM;AAAA,IACN,IAAM;AAAA,IACN,IAAM;AAAA,IACN,IAAM;AAAA,IACN,IAAM;AAAA,IACN,IAAM;AAAA,IACN,IAAM;AAAA,IACN,IAAM;AAAA,IACN,IAAM;AAAA,IACN,IAAM;AAAA,IACN,IAAM;AAAA,EAAA;AAAA,EAER,cAAc;AAAA,IACZ,MAAQ;AAAA,IACR,IAAM;AAAA,IACN,SAAW;AAAA,IACX,IAAM;AAAA,IACN,IAAM;AAAA,IACN,IAAM;AAAA,IACN,OAAO;AAAA,IACP,OAAO;AAAA,IACP,MAAQ;AAAA,EAAA;AAAA,EAEV,SAAS;AAAA,IACP,IAAM;AAAA,IACN,SAAW;AAAA,IACX,IAAM;AAAA,IACN,IAAM;AAAA,IACN,IAAM;AAAA,IACN,OAAO;AAAA,IACP,OAAS;AAAA,IACT,MAAQ;AAAA,EAAA;AAAA,EAEV,YAAY;AAAA,IACV,YAAY;AAAA,MACV,MAAM,CAAC,SAAS,iBAAiB,aAAa,YAAY;AAAA,MAC1D,OAAO,CAAC,YAAY,WAAW,WAAW,OAAO;AAAA,MACjD,MAAM,CAAC,gBAAgB,kBAAkB,SAAS,UAAU,YAAY,WAAW;AAAA,IAAA;AAAA,IAErF,UAAU;AAAA,MACR,IAAM;AAAA,MACN,IAAM;AAAA,MACN,MAAQ;AAAA,MACR,IAAM;AAAA,MACN,IAAM;AAAA,MACN,OAAO;AAAA,MACP,OAAO;AAAA,MACP,OAAO;AAAA,MACP,OAAO;AAAA,MACP,OAAO;AAAA,MACP,OAAO;AAAA,MACP,OAAO;AAAA,MACP,OAAO;AAAA,IAAA;AAAA,EACT;AAAA,EAEF,aAAa;AAAA,IACX,IAAM;AAAA,IACN,IAAM;AAAA,IACN,IAAM;AAAA,IACN,IAAM;AAAA,IACN,OAAO;AAAA,EAAA;AAEX;AAEO,SAASC,EACdC,GACAC,IAAqCH,GACX;AAC1B,QAAMI,IAAS,EAAE,GAAGD,EAAA;AAGpB,WAASE,EAAUC,GAAaC,GAAkB;AAChD,QAAIA,KAAU,OAAOA,KAAW,YAAY,CAAC,MAAM,QAAQA,CAAM;AAC/D,iBAAWC,KAAOD;AAChB,QAAIA,EAAO,eAAeC,CAAG,MACvBF,EAAOE,CAAG,KAAK,OAAOF,EAAOE,CAAG,KAAM,YAAY,CAAC,MAAM,QAAQF,EAAOE,CAAG,CAAC,IAC9EF,EAAOE,CAAG,IAAIH,EAAUC,EAAOE,CAAG,GAAGD,EAAOC,CAAG,CAAC,IAEhDF,EAAOE,CAAG,IAAID,EAAOC,CAAG;AAKhC,WAAOF;AAAA,EACT;AAEA,SAAOD,EAAUD,GAAQF,CAAY;AACvC;AC/KO,SAASO,EAAqBC,GAA0C;AAC7E,MAAIC,IAAM;AAAA;AAGV,SAAID,EAAO,UACT,OAAO,QAAQA,EAAO,MAAM,EAAE,QAAQ,CAAC,CAACE,GAAWC,CAAW,MAAM;AAClE,IAAI,OAAOA,KAAgB,YAAYA,MAAgB,QACrD,OAAO,QAAQA,CAAW,EAAE,QAAQ,CAAC,CAACC,GAAOC,CAAK,MAAM;AACtD,YAAMC,IAAeF,MAAU,YAAYF,IAAY,GAAGA,CAAS,IAAIE,CAAK;AAC5E,MAAAH,KAAO,gBAAgBK,CAAY,KAAKD,CAAK;AAAA;AAAA,IAC/C,CAAC;AAAA,EAEL,CAAC,GAICL,EAAO,WACT,OAAO,QAAQA,EAAO,OAAO,EAAE,QAAQ,CAAC,CAACO,GAAMF,CAAK,MAAM;AACxD,IAAAJ,KAAO,kBAAkBM,CAAI,KAAKF,CAAK;AAAA;AAAA,EACzC,CAAC,GAICL,EAAO,gBACT,OAAO,QAAQA,EAAO,YAAY,EAAE,QAAQ,CAAC,CAACO,GAAMF,CAAK,MAAM;AAC7D,UAAMC,IAAeC,MAAS,YAAY,WAAW,UAAUA,CAAI;AACnE,IAAAN,KAAO,UAAUK,CAAY,KAAKD,CAAK;AAAA;AAAA,EACzC,CAAC,GAICL,EAAO,WACT,OAAO,QAAQA,EAAO,OAAO,EAAE,QAAQ,CAAC,CAACO,GAAMF,CAAK,MAAM;AACxD,UAAMC,IAAeC,MAAS,YAAY,WAAW,UAAUA,CAAI;AACnE,IAAAN,KAAO,UAAUK,CAAY,KAAKD,CAAK;AAAA;AAAA,EACzC,CAAC,GAICL,EAAO,eACLA,EAAO,WAAW,cACpB,OAAO,QAAQA,EAAO,WAAW,UAAU,EAAE,QAAQ,CAAC,CAACO,GAAMC,CAAK,MAAM;AACtE,IAAAP,KAAO,sBAAsBM,CAAI,KAAKC,EAAM,KAAK,IAAI,CAAC;AAAA;AAAA,EACxD,CAAC,GAGCR,EAAO,WAAW,YACpB,OAAO,QAAQA,EAAO,WAAW,QAAQ,EAAE,QAAQ,CAAC,CAACO,GAAME,CAAI,MAAM;AACnE,IAAAR,KAAO,oBAAoBM,CAAI,KAAKE,CAAI;AAAA;AAAA,EAC1C,CAAC,IAKDT,EAAO,eACT,OAAO,QAAQA,EAAO,WAAW,EAAE,QAAQ,CAAC,CAACO,GAAMF,CAAK,MAAM;AAC5D,IAAAJ,KAAO,qBAAqBM,CAAI,KAAKF,CAAK;AAAA;AAAA,EAC5C,CAAC,GAIHJ,KAAO;AAAA,GACPA,KAAO;AAAA,GACPA,KAAO;AAAA,GACPA,KAAO;AAAA,GACPA,KAAO;AAAA,GAEPA,KAAO;AAAA;AAAA,GAGPA,KAAO;AAAA,GACPA,KAAO;AAAA,GACPA,KAAO;AAAA,GACPA,KAAO;AAAA,GACPA,KAAO;AAAA,GAEAA;AACT;AAEO,SAASS,EAAuBV,GAA0C;AAC/E,MAAIW,IAAS;AAAA;AACb,SAAAA,KAAU;AAAA,GACVA,KAAU;AAAA,GACVA,KAAU;AAAA,GAGNX,EAAO,WACTW,KAAU;AAAA,GACV,OAAO,QAAQX,EAAO,MAAM,EAAE,QAAQ,CAAC,CAACE,GAAWC,CAAW,MAAM;AAClE,IAAI,OAAOA,KAAgB,YAAYA,MAAgB,SACrDQ,KAAU,YAAYT,CAAS;AAAA,GAC/B,OAAO,QAAQC,CAAW,EAAE,QAAQ,CAAC,CAACC,GAAOC,CAAK,MAAM;AAEtD,MAAAM,KAAU,cADQP,MAAU,YAAY,YAAYA,CACnB,OAAOC,CAAK;AAAA;AAAA,IAC/C,CAAC,GACDM,KAAU;AAAA;AAAA,EAEd,CAAC,GACDA,KAAU;AAAA,IAIRX,EAAO,YACTW,KAAU;AAAA,GACV,OAAO,QAAQX,EAAO,OAAO,EAAE,QAAQ,CAAC,CAACO,GAAMF,CAAK,MAAM;AACxD,IAAAM,KAAU,YAAYJ,CAAI,OAAOF,CAAK;AAAA;AAAA,EACxC,CAAC,GACDM,KAAU;AAAA,IAIRX,EAAO,iBACTW,KAAU;AAAA,GACV,OAAO,QAAQX,EAAO,YAAY,EAAE,QAAQ,CAAC,CAACO,GAAMF,CAAK,MAAM;AAE7D,IAAAM,KAAU,YADSJ,MAAS,YAAY,YAAYA,CACpB,OAAOF,CAAK;AAAA;AAAA,EAC9C,CAAC,GACDM,KAAU;AAAA,IAIRX,EAAO,YACTW,KAAU;AAAA,GACV,OAAO,QAAQX,EAAO,OAAO,EAAE,QAAQ,CAAC,CAACO,GAAMF,CAAK,MAAM;AAExD,IAAAM,KAAU,YADSJ,MAAS,YAAY,YAAYA,CACpB,OAAOF,CAAK;AAAA;AAAA,EAC9C,CAAC,GACDM,KAAU;AAAA,IAIRX,EAAO,eACLA,EAAO,WAAW,eACpBW,KAAU;AAAA,GACV,OAAO,QAAQX,EAAO,WAAW,UAAU,EAAE,QAAQ,CAAC,CAACO,GAAMC,CAAK,MAAM;AACtE,IAAAG,KAAU,YAAYJ,CAAI,OAAOC,EAAM,IAAI,CAAAI,MAAK,IAAIA,CAAC,GAAG,EAAE,KAAK,IAAI,CAAC;AAAA;AAAA,EACtE,CAAC,GACDD,KAAU;AAAA,IAGRX,EAAO,WAAW,aACpBW,KAAU;AAAA,GACV,OAAO,QAAQX,EAAO,WAAW,QAAQ,EAAE,QAAQ,CAAC,CAACO,GAAME,CAAI,MAAM;AACnE,IAAAE,KAAU,YAAYJ,CAAI,OAAOE,CAAI;AAAA;AAAA,EACvC,CAAC,GACDE,KAAU;AAAA,KAIdA,KAAU;AAAA,GACVA,KAAU;AAAA,GACVA,KAAU;AAAA,GAEHA;AACT;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;ACpIA,UAAME,IAAQC,GAmBRC,IAAYC,EAAS,MAAM;AAC/B,cAAQH,EAAM,MAAA;AAAA,QACZ,KAAK;AACH,iBAAO;AAAA,QACT,KAAK;AACH,iBAAO;AAAA,QACT,KAAK;AACH,iBAAO;AAAA,QACT,KAAK;AACH,iBAAO;AAAA,QACT;AACE,iBAAO;AAAA,MAAA;AAAA,IAEb,CAAC,GAEKI,IAAWC,EAAIL,EAAM,QAAQ;AAEnC,WAAAM,EAAM,MAAMN,EAAM,UAAU,CAACO,MAAa;AACxC,MAAAH,EAAS,QAAQG;AAAA,IACnB,CAAC,mBA7DCC,EAeM,OAAA;AAAA,MAfD,OAAKC,EAAA,CAAC,eAAsBP,EAAA,KAAS,CAAA;AAAA,IAAA;OACxCQ,KAAAF,EAOM,OAPNG,GAOM;AAAA,wBANJC,EACsF,QAAA;AAAA,UADhF,OAAM;AAAA,UAAkC,gBAAa;AAAA,UACzD,GAAE;AAAA,QAAA;QACJA,EAGsF,QAAA;AAAA,UAFpF,OAAM;AAAA,UACL,oBAAkBR,EAAA,QAAQ;AAAA,UAAY,gBAAa;AAAA,UACpD,GAAE;AAAA,QAAA;;MAEKH,EAAA,SAASA,EAAA,MAAM,SAAM,UAAhCO,EACkI,OADlIK,GACkIC,EAAdb,EAAA,KAAK,GAAA,CAAA;MAC9GA,EAAA,qBAAXS,EAAA,GAAAF,EAGM,OAHNO,GAGMD,EADDV,EAAA,KAAQ,IAAG,MAChB,CAAA;;;;;;AC4FJ,UAAMY,IAAQC,EAAS;AAAA,MACrB,MAAM;AAAA,MACN,UAAU;AAAA,MACV,UAAU;AAAA,MACV,UAAU;AAAA,MACV,eAAe;AAAA,MACf,mBAAmB,CAAA;AAAA,MACnB,cAAc;AAAA,IAAA,CACf,GAEKC,IAAS;AAAA,MACb,EAAE,IAAI,GAAG,MAAM,QAAA;AAAA,MACf,EAAE,IAAI,GAAG,MAAM,SAAA;AAAA,MACf,EAAE,IAAI,GAAG,MAAM,SAAA;AAAA,MACf,EAAE,IAAI,GAAG,MAAM,UAAU,UAAU,GAAA;AAAA,IAAK,GAGpCC,IAAY;AAAA,MAChB,EAAE,IAAI,GAAG,MAAM,aAAA;AAAA,MACf,EAAE,IAAI,GAAG,MAAM,aAAA;AAAA,MACf,EAAE,IAAI,GAAG,MAAM,SAAA;AAAA,MACf,EAAE,IAAI,GAAG,MAAM,KAAA;AAAA,MACf,EAAE,IAAI,GAAG,MAAM,OAAA;AAAA,IAAO,GAGlBC,IAAS;AAAA,MACb,EAAE,IAAI,GAAG,MAAM,WAAA;AAAA,MACf,EAAE,IAAI,GAAG,MAAM,gBAAA;AAAA,MACf,EAAE,IAAI,GAAG,MAAM,UAAA;AAAA,MACf,EAAE,IAAI,GAAG,MAAM,SAAA;AAAA,MACf,EAAE,IAAI,GAAG,MAAM,UAAA;AAAA,MACf,EAAE,IAAI,GAAG,MAAM,SAAA;AAAA,MACf,EAAE,IAAI,GAAG,MAAM,QAAA;AAAA,MACf,EAAE,IAAI,GAAG,MAAM,SAAA;AAAA,IAAS;sBA3IxBV,EAAA,GAAAF,EA8FU,WA9FVG,GA8FU;AAAA,MA7FRU,EAAA,EAAA,MAAAA,EAAA,EAAA,IAAAT,EAAwE,MAAA,EAApE,OAAM,sCAAA,GAAsC,uBAAmB,EAAA;AAAA,MAEnEA,EA0FM,OA1FNU,GA0FM;AAAA,QAxFJV,EAQM,OAAA,MAAA;AAAA,UAPJS,EAAA,CAAA,MAAAA,EAAA,CAAA,IAAAT,EAA8E,MAAA,EAA1E,OAAM,qDAAA,GAAqD,cAAU,EAAA;AAAA,UACzEW,EAKEC,GAAA;AAAA,YAJA,MAAK;AAAA,YACL,OAAM;AAAA,YACN,aAAY;AAAA,YACJ,OAAOR,EAAM;AAAA,YAAN,kBAAAK,EAAA,CAAA,MAAAA,EAAA,CAAA,IAAA,CAAAI,MAAAT,EAAM,OAAIS;AAAA,UAAA;;QAK7Bb,EAUM,OAAA,MAAA;AAAA,UATJS,EAAA,CAAA,MAAAA,EAAA,CAAA,IAAAT,EAA6E,MAAA,EAAzE,OAAM,qDAAA,GAAqD,aAAS,EAAA;AAAA,UACxEW,EAOEG,GAAA;AAAA,YANA,MAAK;AAAA,YACL,OAAM;AAAA,YACN,aAAY;AAAA,YACX,MAAM;AAAA,YACN,WAAW;AAAA,YACH,YAAAV,EAAM;AAAA,YAAN,uBAAAK,EAAA,CAAA,MAAAA,EAAA,CAAA,IAAA,CAAAI,MAAAT,EAAM,WAAQS;AAAA,UAAA;;QAK3Bb,EASM,OAAA,MAAA;AAAA,UARJS,EAAA,CAAA,MAAAA,EAAA,CAAA,IAAAT,EAA0E,MAAA,EAAtE,OAAM,qDAAA,GAAqD,UAAM,EAAA;AAAA,UACrEW,EAMEI,GAAA;AAAA,YALA,MAAK;AAAA,YACL,OAAM;AAAA,YACG,YAAAX,EAAM;AAAA,YAAN,uBAAAK,EAAA,CAAA,MAAAA,EAAA,CAAA,IAAA,CAAAI,MAAAT,EAAM,WAAQS;AAAA,YACvB,UAAS;AAAA,YACT,WAAU;AAAA,UAAA;;QAKdb,EAOM,OAAA,MAAA;AAAA,UANJS,EAAA,EAAA,MAAAA,EAAA,EAAA,IAAAT,EAA4E,MAAA,EAAxE,OAAM,qDAAA,GAAqD,YAAQ,EAAA;AAAA,UACvEW,EAIEK,GAAA;AAAA,YAHA,MAAK;AAAA,YACL,OAAM;AAAA,YACG,YAAAZ,EAAM;AAAA,YAAN,uBAAAK,EAAA,CAAA,MAAAA,EAAA,CAAA,IAAA,CAAAI,MAAAT,EAAM,WAAQS;AAAA,UAAA;;QAK3Bb,EAuBM,OAvBNC,GAuBM;AAAA,UAtBJD,EASM,OAAA,MAAA;AAAA,YARJS,EAAA,EAAA,MAAAA,EAAA,EAAA,IAAAT,EAAmF,MAAA,EAA/E,OAAM,qDAAA,GAAqD,mBAAe,EAAA;AAAA,YAC9EW,EAMEM,GAAA;AAAA,cALA,MAAK;AAAA,cACL,OAAM;AAAA,cACN,aAAY;AAAA,cACX,OAAOX;AAAA,cACC,YAAAF,EAAM;AAAA,cAAN,uBAAAK,EAAA,CAAA,MAAAA,EAAA,CAAA,IAAA,CAAAI,MAAAT,EAAM,gBAAaS;AAAA,YAAA;;UAGhCb,EAWM,OAAA,MAAA;AAAA,YAVJS,EAAA,EAAA,MAAAA,EAAA,EAAA,IAAAT,EAAqF,MAAA,EAAjF,OAAM,qDAAA,GAAqD,qBAAiB,EAAA;AAAA,YAChFW,EAQEM,GAAA;AAAA,cAPA,MAAK;AAAA,cACL,OAAM;AAAA,cACN,aAAY;AAAA,cACX,OAAOV;AAAA,cACR,UAAA;AAAA,cACA,SAAA;AAAA,cACS,YAAAH,EAAM;AAAA,cAAN,uBAAAK,EAAA,CAAA,MAAAA,EAAA,CAAA,IAAA,CAAAI,MAAAT,EAAM,oBAAiBS;AAAA,YAAA;;;QAMtCb,EASM,OAAA,MAAA;AAAA,UARJS,EAAA,EAAA,MAAAA,EAAA,EAAA,IAAAT,EAA4E,MAAA,EAAxE,OAAM,qDAAA,GAAqD,YAAQ,EAAA;AAAA,UACvEW,EAMEO,GAAA;AAAA,YALA,MAAK;AAAA,YACL,OAAM;AAAA,YACN,aAAY;AAAA,YACX,OAAOV;AAAA,YACC,YAAAJ,EAAM;AAAA,YAAN,uBAAAK,EAAA,CAAA,MAAAA,EAAA,CAAA,IAAA,CAAAI,MAAAT,EAAM,eAAYS;AAAA,UAAA;;QAK/Bb,EAGM,OAHNG,GAGM;AAAA,UAFJM,EAAA,EAAA,MAAAA,EAAA,EAAA,IAAAT,EAAiD,OAAA,EAA5C,OAAM,2BAAA,GAA2B,SAAK,EAAA;AAAA,UAC3CA,EAAqD,OAArDmB,GAAqDjB,EAAdE,CAAK,GAAA,CAAA;AAAA,QAAA;;;;;AC1EpD,MAAMgB,EAAqD;AAAA,EACjD;AAAA,EACA,SAAiB;AAAA,EACjB,YAAqB;AAAA,EAE7B,cAAc;AAEZ,SAAK,eAAevD;AAAA,EACtB;AAAA,EAEA,QAAQwD,GAAUC,IAA+B,IAAI;AAEnD,KAAIA,EAAQ,gBAAgBA,EAAQ,WAAW,UAAaA,EAAQ,cAAc,WAChF,KAAK,UAAUA,CAAO,GAIpB,KAAK,aACP,KAAK,mBAAA,GAIPD,EAAI,OAAO,iBAAiB,gBAAgB,MAG5CA,EAAI,QAAQ,gBAAgB,IAAI;AAAA,EAClC;AAAA,EAEA,UAAUC,GAA8B;AACtC,IAAIA,EAAQ,iBACV,KAAK,eAAexD,EAAkBwD,EAAQ,cAAc,KAAK,YAAY,IAG3EA,EAAQ,WAAW,WACrB,KAAK,SAASA,EAAQ,SAGpBA,EAAQ,cAAc,WACxB,KAAK,YAAYA,EAAQ;AAAA,EAE7B;AAAA,EAEA,kBAA4C;AAC1C,WAAO,KAAK;AAAA,EACd;AAAA,EAEA,cAAsB;AACpB,WAAOhD,EAAqB,KAAK,YAAY;AAAA,EAC/C;AAAA,EAEQ,qBAAqB;AAE3B,UAAMiD,IAAQ,SAAS,cAAc,OAAO;AAC5C,IAAAA,EAAM,cAAc,KAAK,YAAA,GACzBA,EAAM,aAAa,sBAAsB,MAAM;AAG/C,UAAMC,IAAgB,SAAS,cAAc,kCAAkC;AAC/E,IAAIA,KACFA,EAAc,OAAA,GAIhB,SAAS,KAAK,YAAYD,CAAK;AAAA,EACjC;AACF;AAGO,MAAME,KAAmC,IAAIL,EAAA;"}
|
|
1
|
+
{"version":3,"file":"index.js","sources":["../src/utils/component-registry.ts","../src/config/design-tokens.ts","../src/config/css-variables.ts","../src/components/UiRadialProgressBar.vue","../src/components/inputs/InputsShowcase.vue","../src/plugin/configure.ts"],"sourcesContent":["import { defineAsyncComponent, type Component } from 'vue'\nimport UiTextInput from '../components/UiTextInput.vue'\nimport type { ComponentMap } from '../types/form'\n\n/**\n * Default component map for dynamic forms\n */\nexport const defaultComponentMap: ComponentMap = {\n text: {\n component: 'TextInput',\n loader: () => Promise.resolve(UiTextInput)\n },\n email: {\n component: 'TextInput',\n loader: () => Promise.resolve(UiTextInput)\n },\n password: {\n component: 'TextInput',\n loader: () => Promise.resolve(UiTextInput)\n },\n number: {\n component: 'TextInput',\n loader: () => Promise.resolve(UiTextInput)\n },\n tel: {\n component: 'TextInput',\n loader: () => Promise.resolve(UiTextInput)\n },\n url: {\n component: 'TextInput',\n loader: () => Promise.resolve(UiTextInput)\n },\n textarea: {\n component: 'TextAreaInput',\n loader: () => import('../components/inputs/TextAreaInput.vue')\n },\n select: {\n component: 'SelectInput',\n loader: () => import('../components/inputs/SelectInput.vue')\n },\n combobox: {\n component: 'ComboboxInput',\n loader: () => import('../components/inputs/ComboboxInput.vue')\n },\n checkbox: {\n component: 'CheckboxInput',\n loader: () => import('../components/inputs/CheckboxInput.vue')\n },\n switch: {\n component: 'SwitchInput',\n loader: () => import('../components/inputs/SwitchInput.vue')\n }\n}\n\n/**\n * Component registry class for managing dynamic form components\n */\nexport class ComponentRegistry {\n private componentMap: ComponentMap = { ...defaultComponentMap }\n private loadedComponents: Map<string, Component> = new Map()\n\n /**\n * Register a new component type\n */\n register(type: string, component: string, loader: () => Promise<any>): void {\n this.componentMap[type] = { component, loader }\n // Clear cached component if it exists\n this.loadedComponents.delete(type)\n }\n\n /**\n * Get a component for a field type\n */\n getComponent(type: string): Component | null {\n const mapItem = this.componentMap[type]\n if (!mapItem) {\n console.warn(`Component type \"${type}\" is not registered`)\n return null\n }\n\n // Return cached component if available\n if (this.loadedComponents.has(type)) {\n return this.loadedComponents.get(type)!\n }\n\n // Create async component\n const asyncComponent = defineAsyncComponent({\n loader: mapItem.loader,\n delay: 0\n })\n\n this.loadedComponents.set(type, asyncComponent)\n return asyncComponent\n }\n\n /**\n * Check if a component type is registered\n */\n hasComponent(type: string): boolean {\n return type in this.componentMap\n }\n\n /**\n * Get all registered component types\n */\n getRegisteredTypes(): string[] {\n return Object.keys(this.componentMap)\n }\n\n /**\n * Unregister a component type\n */\n unregister(type: string): void {\n delete this.componentMap[type]\n this.loadedComponents.delete(type)\n }\n\n /**\n * Clear all cached components\n */\n clearCache(): void {\n this.loadedComponents.clear()\n }\n}\n\n// Global component registry instance\nexport const componentRegistry = new ComponentRegistry()\n\n/**\n * Register a component type globally\n */\nexport function registerComponent(type: string, component: string, loader: () => Promise<any>): void {\n componentRegistry.register(type, component, loader)\n}\n\n/**\n * Get a component for a field type\n */\nexport function getComponent(type: string): Component | null {\n return componentRegistry.getComponent(type)\n}\n","export interface StachelockUIDesignTokens {\n colors?: {\n primary?: {\n 50?: string;\n 100?: string;\n 200?: string;\n 300?: string;\n 400?: string;\n 500?: string;\n 600?: string;\n 700?: string;\n 800?: string;\n 900?: string;\n };\n stachelock?: {\n 50?: string;\n 100?: string;\n 200?: string;\n 300?: string;\n 400?: string;\n 500?: string;\n 600?: string;\n 700?: string;\n 800?: string;\n 900?: string;\n '050'?: string;\n };\n [key: string]: any;\n };\n spacing?: {\n [key: string]: string;\n };\n borderRadius?: {\n [key: string]: string;\n };\n shadows?: {\n [key: string]: string;\n };\n typography?: {\n fontFamily?: {\n [key: string]: string[];\n };\n fontSize?: {\n [key: string]: string;\n };\n };\n breakpoints?: {\n [key: string]: string;\n };\n}\n\nexport const defaultDesignTokens: StachelockUIDesignTokens = {\n colors: {\n primary: {\n 50: '#edeff9',\n 100: '#dbdff2',\n 200: '#b8bfe6',\n 300: '#949ed9',\n 400: '#717ecd',\n 500: '#4d5ec0',\n 600: '#3e4b9a',\n 700: '#2e3873',\n 800: '#1f264d',\n 900: '#0f1326',\n },\n stachelock: {\n 50: '#edeff9',\n 100: '#dbdff2',\n 200: '#b8bfe6',\n 300: '#949ed9',\n 400: '#717ecd',\n 500: '#4d5ec0',\n 600: '#3e4b9a',\n 700: '#2e3873',\n 800: '#1f264d',\n 900: '#0f1326',\n '050': '#edeff9', // Same as 50 for consistency\n },\n },\n spacing: {\n '0': '0',\n '1': '0.25rem',\n '2': '0.5rem',\n '3': '0.75rem',\n '4': '1rem',\n '5': '1.25rem',\n '6': '1.5rem',\n '8': '2rem',\n '10': '2.5rem',\n '12': '3rem',\n '16': '4rem',\n '20': '5rem',\n '24': '6rem',\n '32': '8rem',\n '40': '10rem',\n '48': '12rem',\n '56': '14rem',\n '64': '16rem',\n '72': '18rem',\n '80': '20rem',\n '96': '24rem',\n },\n borderRadius: {\n 'none': '0',\n 'sm': '0.125rem',\n 'DEFAULT': '0.25rem',\n 'md': '0.375rem',\n 'lg': '0.5rem',\n 'xl': '0.75rem',\n '2xl': '1rem',\n '3xl': '1.5rem',\n 'full': '9999px',\n },\n shadows: {\n 'sm': '0 1px 2px 0 rgb(0 0 0 / 0.05)',\n 'DEFAULT': '0 1px 3px 0 rgb(0 0 0 / 0.1), 0 1px 2px -1px rgb(0 0 0 / 0.1)',\n 'md': '0 4px 6px -1px rgb(0 0 0 / 0.1), 0 2px 4px -2px rgb(0 0 0 / 0.1)',\n 'lg': '0 10px 15px -3px rgb(0 0 0 / 0.1), 0 4px 6px -4px rgb(0 0 0 / 0.1)',\n 'xl': '0 20px 25px -5px rgb(0 0 0 / 0.1), 0 8px 10px -6px rgb(0 0 0 / 0.1)',\n '2xl': '0 25px 50px -12px rgb(0 0 0 / 0.25)',\n 'inner': 'inset 0 2px 4px 0 rgb(0 0 0 / 0.05)',\n 'none': 'none',\n },\n typography: {\n fontFamily: {\n sans: ['Inter', 'ui-sans-serif', 'system-ui', 'sans-serif'],\n serif: ['ui-serif', 'Georgia', 'Cambria', 'serif'],\n mono: ['ui-monospace', 'SFMono-Regular', 'Menlo', 'Monaco', 'Consolas', 'monospace'],\n },\n fontSize: {\n 'xs': '0.75rem',\n 'sm': '0.875rem',\n 'base': '1rem',\n 'lg': '1.125rem',\n 'xl': '1.25rem',\n '2xl': '1.5rem',\n '3xl': '1.875rem',\n '4xl': '2.25rem',\n '5xl': '3rem',\n '6xl': '3.75rem',\n '7xl': '4.5rem',\n '8xl': '6rem',\n '9xl': '8rem',\n },\n },\n breakpoints: {\n 'sm': '640px',\n 'md': '768px',\n 'lg': '1024px',\n 'xl': '1280px',\n '2xl': '1536px',\n },\n};\n\nexport function mergeDesignTokens(\n customTokens: StachelockUIDesignTokens,\n defaults: StachelockUIDesignTokens = defaultDesignTokens\n): StachelockUIDesignTokens {\n const merged = { ...defaults };\n \n // Deep merge function for nested objects\n function deepMerge(target: any, source: any): any {\n if (source && typeof source === 'object' && !Array.isArray(source)) {\n for (const key in source) {\n if (source.hasOwnProperty(key)) {\n if (target[key] && typeof target[key] === 'object' && !Array.isArray(target[key])) {\n target[key] = deepMerge(target[key], source[key]);\n } else {\n target[key] = source[key];\n }\n }\n }\n }\n return target;\n }\n \n return deepMerge(merged, customTokens);\n}\n","import type { StachelockUIDesignTokens } from './design-tokens';\n\nexport function generateCSSVariables(tokens: StachelockUIDesignTokens): string {\n let css = ':root {\\n';\n \n // Generate color variables\n if (tokens.colors) {\n Object.entries(tokens.colors).forEach(([colorName, colorShades]) => {\n if (typeof colorShades === 'object' && colorShades !== null) {\n Object.entries(colorShades).forEach(([shade, value]) => {\n const variableName = shade === 'DEFAULT' ? colorName : `${colorName}-${shade}`;\n css += ` --sl-color-${variableName}: ${value};\\n`;\n });\n }\n });\n }\n \n // Generate spacing variables\n if (tokens.spacing) {\n Object.entries(tokens.spacing).forEach(([name, value]) => {\n css += ` --sl-spacing-${name}: ${value};\\n`;\n });\n }\n \n // Generate border radius variables\n if (tokens.borderRadius) {\n Object.entries(tokens.borderRadius).forEach(([name, value]) => {\n const variableName = name === 'DEFAULT' ? 'radius' : `radius-${name}`;\n css += ` --sl-${variableName}: ${value};\\n`;\n });\n }\n \n // Generate shadow variables\n if (tokens.shadows) {\n Object.entries(tokens.shadows).forEach(([name, value]) => {\n const variableName = name === 'DEFAULT' ? 'shadow' : `shadow-${name}`;\n css += ` --sl-${variableName}: ${value};\\n`;\n });\n }\n \n // Generate typography variables\n if (tokens.typography) {\n if (tokens.typography.fontFamily) {\n Object.entries(tokens.typography.fontFamily).forEach(([name, fonts]) => {\n css += ` --sl-font-family-${name}: ${fonts.join(', ')};\\n`;\n });\n }\n \n if (tokens.typography.fontSize) {\n Object.entries(tokens.typography.fontSize).forEach(([name, size]) => {\n css += ` --sl-font-size-${name}: ${size};\\n`;\n });\n }\n }\n \n // Generate breakpoint variables\n if (tokens.breakpoints) {\n Object.entries(tokens.breakpoints).forEach(([name, value]) => {\n css += ` --sl-breakpoint-${name}: ${value};\\n`;\n });\n }\n \n // Add some computed variables\n css += ` --sl-ring-color: var(--sl-color-stachelock-600, #3e4b9a);\\n`;\n css += ` --sl-ring-offset-color: #ffffff;\\n`;\n css += ` --sl-ring-width: 2px;\\n`;\n css += ` --sl-outline-color: var(--sl-color-stachelock-600, #3e4b9a);\\n`;\n css += ` --sl-outline-width: 2px;\\n`;\n \n css += '}\\n\\n';\n \n // Add dark mode variables\n css += '@media (prefers-color-scheme: dark) {\\n';\n css += ' :root {\\n';\n css += ' --sl-ring-color: var(--sl-color-stachelock-600, #3e4b9a);\\n';\n css += ' }\\n';\n css += '}\\n';\n \n return css;\n}\n\nexport function generateTailwindConfig(tokens: StachelockUIDesignTokens): string {\n let config = 'export default {\\n';\n config += ' prefix: \"sl-\",\\n';\n config += ' theme: {\\n';\n config += ' extend: {\\n';\n \n // Colors\n if (tokens.colors) {\n config += ' colors: {\\n';\n Object.entries(tokens.colors).forEach(([colorName, colorShades]) => {\n if (typeof colorShades === 'object' && colorShades !== null) {\n config += ` \"${colorName}\": {\\n`;\n Object.entries(colorShades).forEach(([shade, value]) => {\n const shadeName = shade === 'DEFAULT' ? 'DEFAULT' : shade;\n config += ` \"${shadeName}\": \"${value}\",\\n`;\n });\n config += ' },\\n';\n }\n });\n config += ' },\\n';\n }\n \n // Spacing\n if (tokens.spacing) {\n config += ' spacing: {\\n';\n Object.entries(tokens.spacing).forEach(([name, value]) => {\n config += ` \"${name}\": \"${value}\",\\n`;\n });\n config += ' },\\n';\n }\n \n // Border radius\n if (tokens.borderRadius) {\n config += ' borderRadius: {\\n';\n Object.entries(tokens.borderRadius).forEach(([name, value]) => {\n const configName = name === 'DEFAULT' ? 'DEFAULT' : name;\n config += ` \"${configName}\": \"${value}\",\\n`;\n });\n config += ' },\\n';\n }\n \n // Shadows\n if (tokens.shadows) {\n config += ' boxShadow: {\\n';\n Object.entries(tokens.shadows).forEach(([name, value]) => {\n const configName = name === 'DEFAULT' ? 'DEFAULT' : name;\n config += ` \"${configName}\": \"${value}\",\\n`;\n });\n config += ' },\\n';\n }\n \n // Typography\n if (tokens.typography) {\n if (tokens.typography.fontFamily) {\n config += ' fontFamily: {\\n';\n Object.entries(tokens.typography.fontFamily).forEach(([name, fonts]) => {\n config += ` \"${name}\": [${fonts.map(f => `\"${f}\"`).join(', ')}],\\n`;\n });\n config += ' },\\n';\n }\n \n if (tokens.typography.fontSize) {\n config += ' fontSize: {\\n';\n Object.entries(tokens.typography.fontSize).forEach(([name, size]) => {\n config += ` \"${name}\": \"${size}\",\\n`;\n });\n config += ' },\\n';\n }\n }\n \n config += ' },\\n';\n config += ' },\\n';\n config += '};\\n';\n \n return config;\n}\n","<template>\n <div class=\"sl-relative\" :class=\"sizeClass\">\n <svg viewBox=\"0 0 36 36\" class=\"sl-transform -sl-rotate-90 sl-w-full sl-h-full\">\n <path class=\"sl-fill-none sl-stroke-gray-300\" stroke-width=\"3.8\"\n d=\"M18 2.0845 a 15.9155 15.9155 0 0 1 0 31.831 a 15.9155 15.9155 0 0 1 0 -31.831\" />\n <path\n class=\"sl-fill-none sl-stroke-stachelock-600 sl-stroke-linecap-round sl-transition-[stroke-dasharray] sl-duration-500 sl-ease-out\"\n :stroke-dasharray=\"progress + ', 100'\" stroke-width=\"3.8\"\n d=\"M18 2.0845 a 15.9155 15.9155 0 0 1 0 31.831 a 15.9155 15.9155 0 0 1 0 -31.831\" />\n </svg>\n <div v-if=\"label && label.length > 0\"\n class=\"sl-absolute sl-top-1/2 sl-left-1/2 sl-transform -sl-translate-x-1/2 -sl-translate-y-1/2 sl-text-center\">{{ label }}</div>\n <div v-if=\"showProgressLabel\"\n class=\"sl-absolute sl-top-1/2 sl-left-1/2 sl-transform -sl-translate-x-1/2 -sl-translate-y-1/2 sl-text-center sl-text-xs\">\n {{ progress }}%\n </div>\n </div>\n</template>\n\n<script setup lang=\"ts\">\nimport { computed, ref, watch } from 'vue';\n\ntype RadialProgressBarSize = 'xs' | 'sm' | 'md' | 'lg';\n\nconst props = defineProps({\n progress: {\n type: Number,\n default: 0\n },\n label: {\n type: String,\n default: ''\n },\n showProgressLabel: {\n type: Boolean,\n default: false\n },\n size: {\n type: String as () => RadialProgressBarSize,\n default: 'md'\n }\n});\n\nconst sizeClass = computed(() => {\n switch (props.size) {\n case 'xs':\n return 'sl-h-4 sl-w-4'\n case 'sm':\n return 'sl-h-8 sl-w-8'\n case 'md':\n return 'sl-h-12 sl-w-12'\n case 'lg':\n return 'sl-h-16 sl-w-16'\n default:\n return 'sl-h-8 sl-w-8'\n }\n});\n\nconst progress = ref(props.progress);\n\nwatch(() => props.progress, (newValue) => {\n progress.value = newValue;\n});\n</script>\n\n<style scoped>\n</style>\n","<template>\n <section class=\"sl-bg-white sl-rounded-lg sl-shadow sl-p-6\">\n <h2 class=\"sl-text-xl sl-font-semibold sl-mb-4\">All Inputs Showcase</h2>\n\n <div class=\"sl-space-y-8\">\n <!-- Text Input -->\n <div>\n <h3 class=\"sl-text-sm sl-font-medium sl-text-gray-700 sl-mb-2\">Text Input</h3>\n <TextInput\n name=\"demoText\"\n label=\"Text Input\"\n placeholder=\"Type something...\"\n v-model:value=\"state.text\"\n />\n </div>\n\n <!-- Text Area Input -->\n <div>\n <h3 class=\"sl-text-sm sl-font-medium sl-text-gray-700 sl-mb-2\">Text Area</h3>\n <TextAreaInput\n name=\"demoTextArea\"\n label=\"Text Area\"\n placeholder=\"Write a longer message...\"\n :rows=\"4\"\n :maxlength=\"200\"\n v-model=\"state.textArea\"\n />\n </div>\n\n <!-- Switch Input -->\n <div>\n <h3 class=\"sl-text-sm sl-font-medium sl-text-gray-700 sl-mb-2\">Switch</h3>\n <SwitchInput\n name=\"demoSwitch\"\n label=\"Enable feature\"\n v-model=\"state.switchOn\"\n textTrue=\"ON\"\n textFalse=\"OFF\"\n />\n </div>\n\n <!-- Checkbox Input -->\n <div>\n <h3 class=\"sl-text-sm sl-font-medium sl-text-gray-700 sl-mb-2\">Checkbox</h3>\n <CheckboxInput\n name=\"demoCheckbox\"\n label=\"I agree to the terms\"\n v-model=\"state.checkbox\"\n />\n </div>\n\n <!-- Select Input -->\n <div class=\"sl-grid sl-grid-cols-1 sl-md:grid-cols-2 sl-gap-6\">\n <div>\n <h3 class=\"sl-text-sm sl-font-medium sl-text-gray-700 sl-mb-2\">Select (Single)</h3>\n <SelectInput\n name=\"demoSelect\"\n label=\"Favorite Fruit\"\n placeholder=\"Select a fruit\"\n :items=\"fruits\"\n v-model=\"state.selectedFruit\"\n />\n </div>\n <div>\n <h3 class=\"sl-text-sm sl-font-medium sl-text-gray-700 sl-mb-2\">Select (Multiple)</h3>\n <SelectInput\n name=\"demoSelectMulti\"\n label=\"Favorite Languages\"\n placeholder=\"Select languages\"\n :items=\"languages\"\n multiple\n showAll\n v-model=\"state.selectedLanguages\"\n />\n </div>\n </div>\n\n <!-- Combobox Input -->\n <div>\n <h3 class=\"sl-text-sm sl-font-medium sl-text-gray-700 sl-mb-2\">Combobox</h3>\n <ComboboxInput\n name=\"demoCombobox\"\n label=\"Search a City\"\n placeholder=\"Start typing...\"\n :items=\"cities\"\n v-model=\"state.selectedCity\"\n />\n </div>\n\n <!-- Current State -->\n <div class=\"sl-bg-gray-50 sl-rounded-md sl-p-4 sl-text-sm sl-text-gray-700\">\n <div class=\"sl-font-semibold sl-mb-1\">State</div>\n <pre class=\"sl-whitespace-pre-wrap\">{{ state }}</pre>\n </div>\n </div>\n </section>\n</template>\n\n<script setup lang=\"ts\">\nimport { reactive } from 'vue'\nimport TextInput from '../UiTextInput.vue'\nimport TextAreaInput from './TextAreaInput.vue'\nimport SwitchInput from './SwitchInput.vue'\nimport CheckboxInput from './CheckboxInput.vue'\nimport SelectInput from './SelectInput.vue'\nimport ComboboxInput from './ComboboxInput.vue'\n\nconst state = reactive({\n text: '',\n textArea: '',\n switchOn: false,\n checkbox: false,\n selectedFruit: null as null | { id: number; name: string },\n selectedLanguages: [] as Array<{ id: number; name: string }>,\n selectedCity: null as null | { id: number; name: string },\n})\n\nconst fruits = [\n { id: 1, name: 'Apple' },\n { id: 2, name: 'Banana' },\n { id: 3, name: 'Cherry' },\n { id: 4, name: 'Durian', disabled: true },\n]\n\nconst languages = [\n { id: 1, name: 'TypeScript' },\n { id: 2, name: 'JavaScript' },\n { id: 3, name: 'Python' },\n { id: 4, name: 'Go' },\n { id: 5, name: 'Rust' },\n]\n\nconst cities = [\n { id: 1, name: 'New York' },\n { id: 2, name: 'San Francisco' },\n { id: 3, name: 'Seattle' },\n { id: 4, name: 'Austin' },\n { id: 5, name: 'Chicago' },\n { id: 6, name: 'Denver' },\n { id: 7, name: 'Miami' },\n { id: 8, name: 'Boston' },\n]\n</script>\n\n\n","import type { App } from 'vue';\nimport type { StachelockUIDesignTokens } from '../config/design-tokens';\nimport { defaultDesignTokens, mergeDesignTokens } from '../config/design-tokens';\nimport { generateCSSVariables } from '../config/css-variables';\n\nexport interface StachelockUIOptions {\n designTokens?: StachelockUIDesignTokens;\n prefix?: string;\n injectCSS?: boolean;\n}\n\nexport interface StachelockUIPlugin {\n install: (app: App, options?: StachelockUIOptions) => void;\n configure: (options: StachelockUIOptions) => void;\n getDesignTokens: () => StachelockUIDesignTokens;\n generateCSS: () => string;\n}\n\nclass StachelockUIPluginImpl implements StachelockUIPlugin {\n private designTokens: StachelockUIDesignTokens;\n private prefix: string = 'sl-';\n private injectCSS: boolean = true;\n\n constructor() {\n // Use imported default tokens\n this.designTokens = defaultDesignTokens;\n }\n\n install(app: App, options: StachelockUIOptions = {}) {\n // Configure with options if provided\n if (options.designTokens || options.prefix !== undefined || options.injectCSS !== undefined) {\n this.configure(options);\n }\n\n // Inject CSS variables if enabled\n if (this.injectCSS) {\n this.injectCSSVariables();\n }\n\n // Make plugin available globally\n app.config.globalProperties.$stachelockUI = this;\n \n // Provide plugin instance to components\n app.provide('stachelockUI', this);\n }\n\n configure(options: StachelockUIOptions) {\n if (options.designTokens) {\n this.designTokens = mergeDesignTokens(this.designTokens, options.designTokens);\n }\n \n if (options.prefix !== undefined) {\n this.prefix = options.prefix;\n }\n \n if (options.injectCSS !== undefined) {\n this.injectCSS = options.injectCSS;\n }\n }\n\n getDesignTokens(): StachelockUIDesignTokens {\n return this.designTokens;\n }\n\n generateCSS(): string {\n return generateCSSVariables(this.designTokens);\n }\n\n private injectCSSVariables() {\n // Create a style element and inject the CSS variables\n const style = document.createElement('style');\n style.textContent = this.generateCSS();\n style.setAttribute('data-stachelock-ui', 'true');\n \n // Remove any existing injected styles\n const existingStyle = document.querySelector('style[data-stachelock-ui=\"true\"]');\n if (existingStyle) {\n existingStyle.remove();\n }\n \n // Inject the new styles\n document.head.appendChild(style);\n }\n}\n\n// Create and export the plugin instance\nexport const StachelockUI: StachelockUIPlugin = new StachelockUIPluginImpl();\n\n// Export the plugin class for advanced usage\nexport { StachelockUIPluginImpl };\n"],"names":["defaultComponentMap","UiTextInput","ComponentRegistry","type","component","loader","mapItem","asyncComponent","defineAsyncComponent","componentRegistry","registerComponent","getComponent","defaultDesignTokens","mergeDesignTokens","customTokens","defaults","merged","deepMerge","target","source","key","generateCSSVariables","tokens","css","colorName","colorShades","shade","value","variableName","name","fonts","size","generateTailwindConfig","config","f","props","__props","sizeClass","computed","progress","ref","watch","newValue","_createElementBlock","_normalizeClass","_openBlock","_hoisted_1","_createElementVNode","_hoisted_3","_toDisplayString","_hoisted_4","state","reactive","fruits","languages","cities","_cache","_hoisted_2","_createVNode","TextInput","$event","TextAreaInput","SwitchInput","CheckboxInput","SelectInput","ComboboxInput","_hoisted_5","StachelockUIPluginImpl","app","options","style","existingStyle","StachelockUI"],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"DashboardLayout.vue.d.ts","sourceRoot":"","sources":["../../../../src/components/layouts/DashboardLayout.vue"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"DashboardLayout.vue.d.ts","sourceRoot":"","sources":["../../../../src/components/layouts/DashboardLayout.vue"],"names":[],"mappings":"AAkJA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAu0BA,wBAAwG;AACxG,KAAK,uBAAuB,CAAC,CAAC,EAAE,CAAC,IAAI,CAAC,GAAG;IAAE,QAAO;QAClD,MAAM,EAAE,CAAC,CAAC;KACT,CAAA;CAAE,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"NavigationGroup.vue.d.ts","sourceRoot":"","sources":["../../../../src/components/layouts/NavigationGroup.vue"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"NavigationGroup.vue.d.ts","sourceRoot":"","sources":["../../../../src/components/layouts/NavigationGroup.vue"],"names":[],"mappings":"AAmBA;;;;;;;;;;AA8GA,wBAAwG;AACxG,KAAK,sBAAsB,CAAC,CAAC,IAAI,CAAC,SAAS,SAAS,GAAG,KAAK,GAAG,CAAC,CAAC;AACjE,KAAK,6BAA6B,CAAC,CAAC,IAAI;KAAG,CAAC,IAAI,MAAM,CAAC,CAAC,CAAC,GAAG,EAAE,SAAS,IAAI,CAAC,CAAC,EAAE,CAAC,CAAC,GAAG;QAAE,IAAI,EAAE,OAAO,KAAK,EAAE,QAAQ,CAAC,sBAAsB,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAA;KAAE,GAAG;QAAE,IAAI,EAAE,OAAO,KAAK,EAAE,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QAAC,QAAQ,EAAE,IAAI,CAAA;KAAE;CAAE,CAAC;AAC9M,KAAK,uBAAuB,CAAC,CAAC,EAAE,CAAC,IAAI,CAAC,GAAG;IAAE,QAAO;QAClD,MAAM,EAAE,CAAC,CAAC;KACT,CAAA;CAAE,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"NavigationItem.vue.d.ts","sourceRoot":"","sources":["../../../../src/components/layouts/NavigationItem.vue"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"NavigationItem.vue.d.ts","sourceRoot":"","sources":["../../../../src/components/layouts/NavigationItem.vue"],"names":[],"mappings":"AA0CA;AAEA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,KAAK,CAAC;;UA8L7B,MAAM;UACN,MAAM;UACN,SAAS;;;;;;UAFT,MAAM;UACN,MAAM;UACN,SAAS;;;;;;AARjB,wBAcG;AACH,KAAK,sBAAsB,CAAC,CAAC,IAAI,CAAC,SAAS,SAAS,GAAG,KAAK,GAAG,CAAC,CAAC;AACjE,KAAK,6BAA6B,CAAC,CAAC,IAAI;KAAG,CAAC,IAAI,MAAM,CAAC,CAAC,CAAC,GAAG,EAAE,SAAS,IAAI,CAAC,CAAC,EAAE,CAAC,CAAC,GAAG;QAAE,IAAI,EAAE,OAAO,KAAK,EAAE,QAAQ,CAAC,sBAAsB,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAA;KAAE,GAAG;QAAE,IAAI,EAAE,OAAO,KAAK,EAAE,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QAAC,QAAQ,EAAE,IAAI,CAAA;KAAE;CAAE,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SidebarLayout.vue.d.ts","sourceRoot":"","sources":["../../../../src/components/layouts/SidebarLayout.vue"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"SidebarLayout.vue.d.ts","sourceRoot":"","sources":["../../../../src/components/layouts/SidebarLayout.vue"],"names":[],"mappings":"AAqHA;;;;;;;;;;;;;;;;;;;;;AAspBA,wBAAwG;AACxG,KAAK,uBAAuB,CAAC,CAAC,EAAE,CAAC,IAAI,CAAC,GAAG;IAAE,QAAO;QAClD,MAAM,EAAE,CAAC,CAAC;KACT,CAAA;CAAE,CAAC"}
|
package/dist/style.css
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
*,:after,:before{--tw-border-spacing-x:0;--tw-border-spacing-y:0;--tw-translate-x:0;--tw-translate-y:0;--tw-rotate:0;--tw-skew-x:0;--tw-skew-y:0;--tw-scale-x:1;--tw-scale-y:1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness:proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-color:#dc2626;--tw-ring-offset-shadow:0 0 #0000;--tw-ring-shadow:0 0 #0000;--tw-shadow:0 0 #0000;--tw-shadow-colored:0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }::backdrop{--tw-border-spacing-x:0;--tw-border-spacing-y:0;--tw-translate-x:0;--tw-translate-y:0;--tw-rotate:0;--tw-skew-x:0;--tw-skew-y:0;--tw-scale-x:1;--tw-scale-y:1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness:proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-color:#dc2626;--tw-ring-offset-shadow:0 0 #0000;--tw-ring-shadow:0 0 #0000;--tw-shadow:0 0 #0000;--tw-shadow-colored:0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }/*! tailwindcss v3.4.17 | MIT License | https://tailwindcss.com*/*,:after,:before{box-sizing:border-box;border:0 solid #e5e7eb}:after,:before{--tw-content:""}:host,html{line-height:1.5;-webkit-text-size-adjust:100%;-moz-tab-size:4;-o-tab-size:4;tab-size:4;font-family:Inter,ui-sans-serif,system-ui,sans-serif,Apple Color Emoji,Segoe UI Emoji,Segoe UI Symbol,Noto Color Emoji;font-feature-settings:normal;font-variation-settings:normal;-webkit-tap-highlight-color:transparent}body{margin:0;line-height:inherit}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,pre,samp{font-family:JetBrains Mono,ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-feature-settings:normal;font-variation-settings:normal;font-size:1em}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}button,input,optgroup,select,textarea{font-family:inherit;font-feature-settings:inherit;font-variation-settings:inherit;font-size:100%;font-weight:inherit;line-height:inherit;letter-spacing:inherit;color:inherit;margin:0;padding:0}button,select{text-transform:none}button,input:where([type=button]),input:where([type=reset]),input:where([type=submit]){-webkit-appearance:button;background-color:transparent;background-image:none}:-moz-focusring{outline:auto}:-moz-ui-invalid{box-shadow:none}progress{vertical-align:baseline}::-webkit-inner-spin-button,::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}summary{display:list-item}blockquote,dd,dl,figure,h1,h2,h3,h4,h5,h6,hr,p,pre{margin:0}fieldset{margin:0}fieldset,legend{padding:0}menu,ol,ul{list-style:none;margin:0;padding:0}dialog{padding:0}textarea{resize:vertical}input::-moz-placeholder,textarea::-moz-placeholder{opacity:1;color:#9ca3af}input::placeholder,textarea::placeholder{opacity:1;color:#9ca3af}[role=button],button{cursor:pointer}:disabled{cursor:default}audio,canvas,embed,iframe,img,object,svg,video{display:block;vertical-align:middle}img,video{max-width:100%;height:auto}[hidden]:where(:not([hidden=until-found])){display:none}@import url("https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700&display=swap");:root{--sl-color-primary:#3e4b9a;--sl-color-primary-50:#edeff9;--sl-color-primary-100:#dbdff2;--sl-color-primary-600:#3e4b9a;--sl-color-primary-700:#2e3873;--sl-ring-color:var(--sl-color-primary)}@media (prefers-color-scheme:dark){:root{--sl-ring-color:var(--sl-color-primary)}}.sl-form{font-family:Inter,ui-sans-serif,system-ui,sans-serif,Apple Color Emoji,Segoe UI Emoji,Segoe UI Symbol,Noto Color Emoji}.sl-form .has-error input,.sl-form .has-error input:focus,.sl-form .has-error select,.sl-form .has-error select:focus,.sl-form .has-error textarea,.sl-form .has-error textarea:focus{--tw-ring-opacity:1;--tw-ring-color:rgb(239 68 68/var(--tw-ring-opacity,1))}.sl-form .success input,.sl-form .success input:focus,.sl-form .success select,.sl-form .success select:focus,.sl-form .success textarea,.sl-form .success textarea:focus{--tw-ring-opacity:1;--tw-ring-color:rgb(34 197 94/var(--tw-ring-opacity,1))}.sl-sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border-width:0}.sl-pointer-events-none{pointer-events:none}.sl-pointer-events-auto{pointer-events:auto}.sl-fixed{position:fixed}.sl-absolute{position:absolute}.sl-relative{position:relative}.sl-sticky{position:sticky}.sl-inset-0{inset:0}.sl-inset-1{inset:.25rem}.sl-inset-y-0{top:0;bottom:0}.sl-bottom-2{bottom:.5rem}.sl-bottom-4{bottom:1rem}.sl-left-0{left:0}.sl-left-1\/2{left:50%}.sl-left-full{left:100%}.sl-right-0{right:0}.sl-right-1{right:.25rem}.sl-right-2{right:.5rem}.sl-top-0{top:0}.sl-top-1{top:.25rem}.sl-top-1\/2{top:50%}.sl-isolate{isolation:isolate}.sl-z-10{z-index:10}.sl-z-20{z-index:20}.sl-z-30{z-index:30}.sl-z-40{z-index:40}.sl-z-50{z-index:50}.sl-order-1{order:1}.sl-col-span-1{grid-column:span 1/span 1}.sl-col-span-2{grid-column:span 2/span 2}.sl-col-span-6{grid-column:span 6/span 6}.sl-col-start-1{grid-column-start:1}.sl-col-start-3{grid-column-start:3}.sl-col-start-7{grid-column-start:7}.sl-col-start-8{grid-column-start:8}.sl-col-end-1{grid-column-end:1}.sl-col-end-13{grid-column-end:13}.sl-col-end-2{grid-column-end:2}.sl-row-span-full{grid-row:1/-1}.sl-row-start-1{grid-row-start:1}.sl-row-end-1{grid-row-end:1}.-sl-m-2\.5{margin:-.625rem}.-sl-mx-2{margin-left:-.5rem;margin-right:-.5rem}.-sl-mx-3{margin-left:-.75rem;margin-right:-.75rem}.-sl-my-2{margin-top:-.5rem;margin-bottom:-.5rem}.sl--mx-4{margin-left:-1rem;margin-right:-1rem}.sl--my-2{margin-top:-.5rem;margin-bottom:-.5rem}.sl-mx-2{margin-left:.5rem;margin-right:.5rem}.sl-mx-4{margin-left:1rem;margin-right:1rem}.sl-mx-auto{margin-left:auto;margin-right:auto}.sl-my-4{margin-top:1rem;margin-bottom:1rem}.-sl-ml-0\.5{margin-left:-.125rem}.-sl-ml-14{margin-left:-3.5rem}.-sl-mt-2\.5{margin-top:-.625rem}.sl--mr-px{margin-right:-1px}.sl-mb-1{margin-bottom:.25rem}.sl-mb-2{margin-bottom:.5rem}.sl-mb-3{margin-bottom:.75rem}.sl-mb-4{margin-bottom:1rem}.sl-mb-6{margin-bottom:1.5rem}.sl-mb-8{margin-bottom:2rem}.sl-ml-1{margin-left:.25rem}.sl-ml-10{margin-left:2.5rem}.sl-ml-2{margin-left:.5rem}.sl-ml-3{margin-left:.75rem}.sl-ml-4{margin-left:1rem}.sl-ml-auto{margin-left:auto}.sl-mr-16{margin-right:4rem}.sl-mr-3{margin-right:.75rem}.sl-mt-1{margin-top:.25rem}.sl-mt-10{margin-top:2.5rem}.sl-mt-2{margin-top:.5rem}.sl-mt-3{margin-top:.75rem}.sl-mt-4{margin-top:1rem}.sl-mt-6{margin-top:1.5rem}.sl-mt-8{margin-top:2rem}.sl-mt-auto{margin-top:auto}.sl-mt-px{margin-top:1px}.sl-block{display:block}.sl-inline-block{display:inline-block}.sl-flex{display:flex}.sl-inline-flex{display:inline-flex}.sl-flow-root{display:flow-root}.sl-grid{display:grid}.sl-hidden{display:none}.sl-h-10{height:2.5rem}.sl-h-12{height:3rem}.sl-h-14{height:3.5rem}.sl-h-16{height:4rem}.sl-h-2{height:.5rem}.sl-h-2\.5{height:.625rem}.sl-h-20{height:5rem}.sl-h-24{height:6rem}.sl-h-3{height:.75rem}.sl-h-3\.5{height:.875rem}.sl-h-4{height:1rem}.sl-h-5{height:1.25rem}.sl-h-6{height:1.5rem}.sl-h-7{height:1.75rem}.sl-h-8{height:2rem}.sl-h-auto{height:auto}.sl-h-full{height:100%}.sl-max-h-56{max-height:14rem}.sl-max-h-60{max-height:15rem}.sl-min-h-\[80px\]{min-height:80px}.sl-min-h-full{min-height:100%}.sl-min-h-screen{min-height:100vh}.sl-w-1\/2{width:50%}.sl-w-10{width:2.5rem}.sl-w-11{width:2.75rem}.sl-w-12{width:3rem}.sl-w-14{width:3.5rem}.sl-w-16{width:4rem}.sl-w-2{width:.5rem}.sl-w-20{width:5rem}.sl-w-24{width:6rem}.sl-w-3{width:.75rem}.sl-w-3\.5{width:.875rem}.sl-w-3\/4{width:75%}.sl-w-32{width:8rem}.sl-w-4{width:1rem}.sl-w-5{width:1.25rem}.sl-w-6{width:1.5rem}.sl-w-7{width:1.75rem}.sl-w-8{width:2rem}.sl-w-full{width:100%}.sl-w-px{width:1px}.sl-w-screen{width:100vw}.sl-min-w-0{min-width:0}.sl-min-w-full{min-width:100%}.sl-max-w-2xl{max-width:42rem}.sl-max-w-4xl{max-width:56rem}.sl-max-w-7xl{max-width:80rem}.sl-max-w-\[150px\]{max-width:150px}.sl-max-w-full{max-width:100%}.sl-max-w-md{max-width:28rem}.sl-max-w-xs{max-width:20rem}.sl-flex-1{flex:1 1 0%}.sl-flex-auto{flex:1 1 auto}.sl-flex-none{flex:none}.sl-flex-shrink-0,.sl-shrink-0{flex-shrink:0}.sl-grow{flex-grow:1}.-sl-translate-x-1\/2{--tw-translate-x:-50%}.-sl-translate-x-1\/2,.-sl-translate-x-full{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.-sl-translate-x-full{--tw-translate-x:-100%}.-sl-translate-y-1\/2{--tw-translate-y:-50%}.-sl-translate-y-1\/2,.-sl-translate-y-4{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.-sl-translate-y-4{--tw-translate-y:-1rem}.sl-translate-x-0{--tw-translate-x:0px}.sl-translate-x-0,.sl-translate-x-1\/2{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.sl-translate-x-1\/2{--tw-translate-x:50%}.sl-translate-x-5{--tw-translate-x:1.25rem}.sl-translate-x-5,.sl-translate-y-0{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.sl-translate-y-0{--tw-translate-y:0px}.sl-translate-y-4{--tw-translate-y:1rem}.-sl-rotate-90,.sl-translate-y-4{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.-sl-rotate-90{--tw-rotate:-90deg}.sl-scale-100{--tw-scale-x:1;--tw-scale-y:1}.sl-scale-100,.sl-scale-95{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.sl-scale-95{--tw-scale-x:.95;--tw-scale-y:.95}.sl-transform{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}@keyframes sl-pulse{50%{opacity:.5}}.sl-animate-pulse{animation:sl-pulse 2s cubic-bezier(.4,0,.6,1) infinite}@keyframes sl-spin{to{transform:rotate(1turn)}}.sl-animate-spin{animation:sl-spin 1s linear infinite}.sl-cursor-default{cursor:default}.sl-cursor-not-allowed{cursor:not-allowed}.sl-cursor-pointer{cursor:pointer}.sl-select-none{-webkit-user-select:none;-moz-user-select:none;user-select:none}.sl-resize-y{resize:vertical}.sl-appearance-none{-webkit-appearance:none;-moz-appearance:none;appearance:none}.sl-grid-cols-1{grid-template-columns:repeat(1,minmax(0,1fr))}.sl-grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.sl-grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.sl-grid-cols-7{grid-template-columns:repeat(7,minmax(0,1fr))}.sl-grid-rows-1{grid-template-rows:repeat(1,minmax(0,1fr))}.sl-flex-col{flex-direction:column}.sl-flex-wrap{flex-wrap:wrap}.sl-items-start{align-items:flex-start}.sl-items-center{align-items:center}.sl-justify-start{justify-content:flex-start}.sl-justify-end{justify-content:flex-end}.sl-justify-center{justify-content:center}.sl-justify-between{justify-content:space-between}.sl-gap-2{gap:.5rem}.sl-gap-3{gap:.75rem}.sl-gap-4{gap:1rem}.sl-gap-6{gap:1.5rem}.sl-gap-8{gap:2rem}.sl-gap-px{gap:1px}.sl-gap-x-3{-moz-column-gap:.75rem;column-gap:.75rem}.sl-gap-x-4{-moz-column-gap:1rem;column-gap:1rem}.sl-gap-y-5{row-gap:1.25rem}.sl-space-x-2>:not([hidden])~:not([hidden]){--tw-space-x-reverse:0;margin-right:calc(.5rem*var(--tw-space-x-reverse));margin-left:calc(.5rem*(1 - var(--tw-space-x-reverse)))}.sl-space-x-3>:not([hidden])~:not([hidden]){--tw-space-x-reverse:0;margin-right:calc(.75rem*var(--tw-space-x-reverse));margin-left:calc(.75rem*(1 - var(--tw-space-x-reverse)))}.sl-space-x-4>:not([hidden])~:not([hidden]){--tw-space-x-reverse:0;margin-right:calc(1rem*var(--tw-space-x-reverse));margin-left:calc(1rem*(1 - var(--tw-space-x-reverse)))}.sl-space-x-6>:not([hidden])~:not([hidden]){--tw-space-x-reverse:0;margin-right:calc(1.5rem*var(--tw-space-x-reverse));margin-left:calc(1.5rem*(1 - var(--tw-space-x-reverse)))}.sl-space-y-1>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-top:calc(.25rem*(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.25rem*var(--tw-space-y-reverse))}.sl-space-y-10>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-top:calc(2.5rem*(1 - var(--tw-space-y-reverse)));margin-bottom:calc(2.5rem*var(--tw-space-y-reverse))}.sl-space-y-2>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-top:calc(.5rem*(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.5rem*var(--tw-space-y-reverse))}.sl-space-y-3>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-top:calc(.75rem*(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.75rem*var(--tw-space-y-reverse))}.sl-space-y-4>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-top:calc(1rem*(1 - var(--tw-space-y-reverse)));margin-bottom:calc(1rem*var(--tw-space-y-reverse))}.sl-space-y-6>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-top:calc(1.5rem*(1 - var(--tw-space-y-reverse)));margin-bottom:calc(1.5rem*var(--tw-space-y-reverse))}.sl-space-y-8>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-top:calc(2rem*(1 - var(--tw-space-y-reverse)));margin-bottom:calc(2rem*var(--tw-space-y-reverse))}.sl-divide-x>:not([hidden])~:not([hidden]){--tw-divide-x-reverse:0;border-right-width:calc(1px*var(--tw-divide-x-reverse));border-left-width:calc(1px*(1 - var(--tw-divide-x-reverse)))}.sl-divide-y>:not([hidden])~:not([hidden]){--tw-divide-y-reverse:0;border-top-width:calc(1px*(1 - var(--tw-divide-y-reverse)));border-bottom-width:calc(1px*var(--tw-divide-y-reverse))}.sl-divide-gray-100>:not([hidden])~:not([hidden]){--tw-divide-opacity:1;border-color:rgb(243 244 246/var(--tw-divide-opacity,1))}.sl-divide-gray-200>:not([hidden])~:not([hidden]){--tw-divide-opacity:1;border-color:rgb(229 231 235/var(--tw-divide-opacity,1))}.sl-divide-gray-300>:not([hidden])~:not([hidden]){--tw-divide-opacity:1;border-color:rgb(209 213 219/var(--tw-divide-opacity,1))}.sl-self-center{align-self:center}.sl-justify-self-end{justify-self:end}.sl-justify-self-center{justify-self:center}.sl-overflow-auto{overflow:auto}.sl-overflow-hidden{overflow:hidden}.sl-overflow-x-auto{overflow-x:auto}.sl-overflow-y-auto{overflow-y:auto}.sl-truncate{overflow:hidden;white-space:nowrap}.sl-overflow-ellipsis,.sl-truncate{text-overflow:ellipsis}.sl-whitespace-nowrap{white-space:nowrap}.sl-whitespace-pre-wrap{white-space:pre-wrap}.sl-rounded{border-radius:.25rem}.sl-rounded-full{border-radius:9999px}.sl-rounded-lg{border-radius:.5rem}.sl-rounded-md{border-radius:.375rem}.sl-rounded-bl-lg{border-bottom-left-radius:.5rem}.sl-rounded-br-lg{border-bottom-right-radius:.5rem}.sl-rounded-tl-lg{border-top-left-radius:.5rem}.sl-rounded-tr-lg{border-top-right-radius:.5rem}.sl-border{border-width:1px}.sl-border-0{border-width:0}.sl-border-2{border-width:2px}.sl-border-b{border-bottom-width:1px}.sl-border-l{border-left-width:1px}.sl-border-r{border-right-width:1px}.sl-border-t{border-top-width:1px}.sl-border-none{border-style:none}.sl-border-gray-100{--tw-border-opacity:1;border-color:rgb(243 244 246/var(--tw-border-opacity,1))}.sl-border-gray-200{--tw-border-opacity:1;border-color:rgb(229 231 235/var(--tw-border-opacity,1))}.sl-border-gray-300{--tw-border-opacity:1;border-color:rgb(209 213 219/var(--tw-border-opacity,1))}.sl-border-gray-700{--tw-border-opacity:1;border-color:rgb(55 65 81/var(--tw-border-opacity,1))}.sl-border-gray-900\/10{border-color:rgba(17,24,39,.1)}.sl-border-green-300{--tw-border-opacity:1;border-color:rgb(134 239 172/var(--tw-border-opacity,1))}.sl-border-green-500{--tw-border-opacity:1;border-color:rgb(34 197 94/var(--tw-border-opacity,1))}.sl-border-red-200{--tw-border-opacity:1;border-color:rgb(254 202 202/var(--tw-border-opacity,1))}.sl-border-red-300{--tw-border-opacity:1;border-color:rgb(252 165 165/var(--tw-border-opacity,1))}.sl-border-red-500{--tw-border-opacity:1;border-color:rgb(239 68 68/var(--tw-border-opacity,1))}.sl-border-stachelock-600{--tw-border-opacity:1;border-color:rgb(62 75 154/var(--tw-border-opacity,1))}.sl-border-transparent{border-color:transparent}.sl-border-yellow-200{--tw-border-opacity:1;border-color:rgb(254 240 138/var(--tw-border-opacity,1))}.sl-border-yellow-500{--tw-border-opacity:1;border-color:rgb(234 179 8/var(--tw-border-opacity,1))}.sl-bg-blue-50{--tw-bg-opacity:1;background-color:rgb(239 246 255/var(--tw-bg-opacity,1))}.sl-bg-gray-100{--tw-bg-opacity:1;background-color:rgb(243 244 246/var(--tw-bg-opacity,1))}.sl-bg-gray-200{--tw-bg-opacity:1;background-color:rgb(229 231 235/var(--tw-bg-opacity,1))}.sl-bg-gray-400{--tw-bg-opacity:1;background-color:rgb(156 163 175/var(--tw-bg-opacity,1))}.sl-bg-gray-50{--tw-bg-opacity:1;background-color:rgb(249 250 251/var(--tw-bg-opacity,1))}.sl-bg-gray-500\/75{background-color:hsla(220,9%,46%,.75)}.sl-bg-gray-700{--tw-bg-opacity:1;background-color:rgb(55 65 81/var(--tw-bg-opacity,1))}.sl-bg-gray-900{--tw-bg-opacity:1;background-color:rgb(17 24 39/var(--tw-bg-opacity,1))}.sl-bg-gray-900\/10{background-color:rgba(17,24,39,.1)}.sl-bg-gray-900\/80{background-color:rgba(17,24,39,.8)}.sl-bg-green-100{--tw-bg-opacity:1;background-color:rgb(220 252 231/var(--tw-bg-opacity,1))}.sl-bg-green-400{--tw-bg-opacity:1;background-color:rgb(74 222 128/var(--tw-bg-opacity,1))}.sl-bg-green-50{--tw-bg-opacity:1;background-color:rgb(240 253 244/var(--tw-bg-opacity,1))}.sl-bg-green-500{--tw-bg-opacity:1;background-color:rgb(34 197 94/var(--tw-bg-opacity,1))}.sl-bg-purple-100{--tw-bg-opacity:1;background-color:rgb(243 232 255/var(--tw-bg-opacity,1))}.sl-bg-red-400{--tw-bg-opacity:1;background-color:rgb(248 113 113/var(--tw-bg-opacity,1))}.sl-bg-red-50{--tw-bg-opacity:1;background-color:rgb(254 242 242/var(--tw-bg-opacity,1))}.sl-bg-red-500{--tw-bg-opacity:1;background-color:rgb(239 68 68/var(--tw-bg-opacity,1))}.sl-bg-stachelock-050{--tw-bg-opacity:1;background-color:rgb(237 239 249/var(--tw-bg-opacity,1))}.sl-bg-stachelock-100{--tw-bg-opacity:1;background-color:rgb(219 223 242/var(--tw-bg-opacity,1))}.sl-bg-stachelock-400{--tw-bg-opacity:1;background-color:rgb(113 126 205/var(--tw-bg-opacity,1))}.sl-bg-stachelock-600{--tw-bg-opacity:1;background-color:rgb(62 75 154/var(--tw-bg-opacity,1))}.sl-bg-transparent{background-color:transparent}.sl-bg-white{--tw-bg-opacity:1;background-color:rgb(255 255 255/var(--tw-bg-opacity,1))}.sl-bg-white\/80{background-color:hsla(0,0%,100%,.8)}.sl-bg-yellow-400{--tw-bg-opacity:1;background-color:rgb(250 204 21/var(--tw-bg-opacity,1))}.sl-bg-yellow-50{--tw-bg-opacity:1;background-color:rgb(254 252 232/var(--tw-bg-opacity,1))}.sl-bg-opacity-75{--tw-bg-opacity:0.75}.sl-fill-none{fill:none}.sl-stroke-gray-300{stroke:#d1d5db}.sl-stroke-stachelock-600{stroke:#3e4b9a}.sl-stroke-white{stroke:#fff}.sl-object-cover{-o-object-fit:cover;object-fit:cover}.sl-p-0\.5{padding:.125rem}.sl-p-1{padding:.25rem}.sl-p-2{padding:.5rem}.sl-p-2\.5{padding:.625rem}.sl-p-3{padding:.75rem}.sl-p-4{padding:1rem}.sl-p-5{padding:1.25rem}.sl-p-6{padding:1.5rem}.sl-px-1{padding-left:.25rem;padding-right:.25rem}.sl-px-2{padding-left:.5rem;padding-right:.5rem}.sl-px-2\.5{padding-left:.625rem;padding-right:.625rem}.sl-px-3{padding-left:.75rem;padding-right:.75rem}.sl-px-4{padding-left:1rem;padding-right:1rem}.sl-px-6{padding-left:1.5rem;padding-right:1.5rem}.sl-px-8{padding-left:2rem;padding-right:2rem}.sl-py-0\.5{padding-top:.125rem;padding-bottom:.125rem}.sl-py-1{padding-top:.25rem;padding-bottom:.25rem}.sl-py-1\.5{padding-top:.375rem;padding-bottom:.375rem}.sl-py-10{padding-top:2.5rem;padding-bottom:2.5rem}.sl-py-14{padding-top:3.5rem;padding-bottom:3.5rem}.sl-py-16{padding-top:4rem;padding-bottom:4rem}.sl-py-2{padding-top:.5rem;padding-bottom:.5rem}.sl-py-24{padding-top:6rem;padding-bottom:6rem}.sl-py-3{padding-top:.75rem;padding-bottom:.75rem}.sl-py-3\.5{padding-top:.875rem;padding-bottom:.875rem}.sl-py-4{padding-top:1rem;padding-bottom:1rem}.sl-py-5{padding-top:1.25rem;padding-bottom:1.25rem}.sl-py-6{padding-top:1.5rem;padding-bottom:1.5rem}.sl-py-8{padding-top:2rem;padding-bottom:2rem}.sl-pb-12{padding-bottom:3rem}.sl-pb-16{padding-bottom:4rem}.sl-pb-2{padding-bottom:.5rem}.sl-pb-3{padding-bottom:.75rem}.sl-pb-4{padding-bottom:1rem}.sl-pl-10{padding-left:2.5rem}.sl-pl-2{padding-left:.5rem}.sl-pl-3{padding-left:.75rem}.sl-pr-0{padding-right:0}.sl-pr-10{padding-right:2.5rem}.sl-pr-12{padding-right:3rem}.sl-pr-2{padding-right:.5rem}.sl-pr-3{padding-right:.75rem}.sl-pr-4{padding-right:1rem}.sl-pr-9{padding-right:2.25rem}.sl-pt-2{padding-top:.5rem}.sl-pt-4{padding-top:1rem}.sl-pt-5{padding-top:1.25rem}.sl-text-left{text-align:left}.sl-text-center{text-align:center}.sl-text-right{text-align:right}.sl-align-middle{vertical-align:middle}.sl-text-2xl{font-size:1.5rem;line-height:2rem}.sl-text-2xs{font-size:.6rem}.sl-text-3xl{font-size:1.875rem;line-height:2.25rem}.sl-text-4xl{font-size:2.25rem;line-height:2.5rem}.sl-text-4xs{font-size:.4rem}.sl-text-\[10px\]{font-size:10px}.sl-text-base{font-size:1rem;line-height:1.5rem}.sl-text-lg{font-size:1.125rem;line-height:1.75rem}.sl-text-sm{font-size:.875rem;line-height:1.25rem}.sl-text-xl{font-size:1.25rem;line-height:1.75rem}.sl-text-xs{font-size:.75rem;line-height:1rem}.sl-font-bold{font-weight:700}.sl-font-light{font-weight:300}.sl-font-medium{font-weight:500}.sl-font-normal{font-weight:400}.sl-font-semibold{font-weight:600}.sl-uppercase{text-transform:uppercase}.sl-leading-5{line-height:1.25rem}.sl-leading-6{line-height:1.5rem}.sl-leading-7{line-height:1.75rem}.sl-leading-8{line-height:2rem}.sl-tracking-tight{letter-spacing:-.025em}.sl-tracking-wider{letter-spacing:.05em}.sl-text-blue-500{--tw-text-opacity:1;color:rgb(59 130 246/var(--tw-text-opacity,1))}.sl-text-blue-700{--tw-text-opacity:1;color:rgb(29 78 216/var(--tw-text-opacity,1))}.sl-text-gray-400{--tw-text-opacity:1;color:rgb(156 163 175/var(--tw-text-opacity,1))}.sl-text-gray-500{--tw-text-opacity:1;color:rgb(107 114 128/var(--tw-text-opacity,1))}.sl-text-gray-600{--tw-text-opacity:1;color:rgb(75 85 99/var(--tw-text-opacity,1))}.sl-text-gray-700{--tw-text-opacity:1;color:rgb(55 65 81/var(--tw-text-opacity,1))}.sl-text-gray-800{--tw-text-opacity:1;color:rgb(31 41 55/var(--tw-text-opacity,1))}.sl-text-gray-900{--tw-text-opacity:1;color:rgb(17 24 39/var(--tw-text-opacity,1))}.sl-text-green-500{--tw-text-opacity:1;color:rgb(34 197 94/var(--tw-text-opacity,1))}.sl-text-green-600{--tw-text-opacity:1;color:rgb(22 163 74/var(--tw-text-opacity,1))}.sl-text-green-700{--tw-text-opacity:1;color:rgb(21 128 61/var(--tw-text-opacity,1))}.sl-text-red-400{--tw-text-opacity:1;color:rgb(248 113 113/var(--tw-text-opacity,1))}.sl-text-red-500{--tw-text-opacity:1;color:rgb(239 68 68/var(--tw-text-opacity,1))}.sl-text-red-600{--tw-text-opacity:1;color:rgb(220 38 38/var(--tw-text-opacity,1))}.sl-text-red-700{--tw-text-opacity:1;color:rgb(185 28 28/var(--tw-text-opacity,1))}.sl-text-red-800{--tw-text-opacity:1;color:rgb(153 27 27/var(--tw-text-opacity,1))}.sl-text-slate-500{--tw-text-opacity:1;color:rgb(100 116 139/var(--tw-text-opacity,1))}.sl-text-stachelock-050{--tw-text-opacity:1;color:rgb(237 239 249/var(--tw-text-opacity,1))}.sl-text-stachelock-300{--tw-text-opacity:1;color:rgb(148 158 217/var(--tw-text-opacity,1))}.sl-text-stachelock-600{--tw-text-opacity:1;color:rgb(62 75 154/var(--tw-text-opacity,1))}.sl-text-stachelock-700{--tw-text-opacity:1;color:rgb(46 56 115/var(--tw-text-opacity,1))}.sl-text-white{--tw-text-opacity:1;color:rgb(255 255 255/var(--tw-text-opacity,1))}.sl-text-yellow-400{--tw-text-opacity:1;color:rgb(250 204 21/var(--tw-text-opacity,1))}.sl-text-yellow-500{--tw-text-opacity:1;color:rgb(234 179 8/var(--tw-text-opacity,1))}.sl-text-yellow-600{--tw-text-opacity:1;color:rgb(202 138 4/var(--tw-text-opacity,1))}.sl-text-yellow-700{--tw-text-opacity:1;color:rgb(161 98 7/var(--tw-text-opacity,1))}.sl-text-yellow-800{--tw-text-opacity:1;color:rgb(133 77 14/var(--tw-text-opacity,1))}.sl-opacity-0{opacity:0}.sl-opacity-100{opacity:1}.sl-opacity-25{opacity:.25}.sl-opacity-50{opacity:.5}.sl-opacity-75{opacity:.75}.sl-shadow{--tw-shadow:0 1px 3px 0 rgba(0,0,0,.1),0 1px 2px -1px rgba(0,0,0,.1);--tw-shadow-colored:0 1px 3px 0 var(--tw-shadow-color),0 1px 2px -1px var(--tw-shadow-color)}.sl-shadow,.sl-shadow-lg{box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)}.sl-shadow-lg{--tw-shadow:0 10px 15px -3px rgba(0,0,0,.1),0 4px 6px -4px rgba(0,0,0,.1);--tw-shadow-colored:0 10px 15px -3px var(--tw-shadow-color),0 4px 6px -4px var(--tw-shadow-color)}.sl-shadow-md{--tw-shadow:0 4px 6px -1px rgba(0,0,0,.1),0 2px 4px -2px rgba(0,0,0,.1);--tw-shadow-colored:0 4px 6px -1px var(--tw-shadow-color),0 2px 4px -2px var(--tw-shadow-color)}.sl-shadow-md,.sl-shadow-sm{box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)}.sl-shadow-sm{--tw-shadow:0 1px 2px 0 rgba(0,0,0,.05);--tw-shadow-colored:0 1px 2px 0 var(--tw-shadow-color)}.sl-shadow-xl{--tw-shadow:0 20px 25px -5px rgba(0,0,0,.1),0 8px 10px -6px rgba(0,0,0,.1);--tw-shadow-colored:0 20px 25px -5px var(--tw-shadow-color),0 8px 10px -6px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)}.sl-outline-none{outline:2px solid transparent;outline-offset:2px}.sl-ring-0{--tw-ring-offset-shadow:var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow:var(--tw-ring-inset) 0 0 0 calc(var(--tw-ring-offset-width)) var(--tw-ring-color)}.sl-ring-0,.sl-ring-1{box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow,0 0 #0000)}.sl-ring-1{--tw-ring-offset-shadow:var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow:var(--tw-ring-inset) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color)}.sl-ring-inset{--tw-ring-inset:inset}.sl-ring-black{--tw-ring-opacity:1;--tw-ring-color:rgb(0 0 0/var(--tw-ring-opacity,1))}.sl-ring-gray-100{--tw-ring-opacity:1;--tw-ring-color:rgb(243 244 246/var(--tw-ring-opacity,1))}.sl-ring-gray-200{--tw-ring-opacity:1;--tw-ring-color:rgb(229 231 235/var(--tw-ring-opacity,1))}.sl-ring-gray-300{--tw-ring-opacity:1;--tw-ring-color:rgb(209 213 219/var(--tw-ring-opacity,1))}.sl-ring-gray-400\/20{--tw-ring-color:rgba(156,163,175,.2)}.sl-ring-gray-500\/10{--tw-ring-color:hsla(220,9%,46%,.1)}.sl-ring-green-500{--tw-ring-opacity:1;--tw-ring-color:rgb(34 197 94/var(--tw-ring-opacity,1))}.sl-ring-green-600\/20{--tw-ring-color:rgba(22,163,74,.2)}.sl-ring-red-100{--tw-ring-opacity:1;--tw-ring-color:rgb(254 226 226/var(--tw-ring-opacity,1))}.sl-ring-red-500{--tw-ring-opacity:1;--tw-ring-color:rgb(239 68 68/var(--tw-ring-opacity,1))}.sl-ring-red-600\/10{--tw-ring-color:rgba(220,38,38,.1)}.sl-ring-stachelock-600{--tw-ring-opacity:1;--tw-ring-color:rgb(62 75 154/var(--tw-ring-opacity,1))}.sl-ring-stachelock-600\/10{--tw-ring-color:rgba(62,75,154,.1)}.sl-ring-white{--tw-ring-opacity:1;--tw-ring-color:rgb(255 255 255/var(--tw-ring-opacity,1))}.sl-ring-white\/10{--tw-ring-color:hsla(0,0%,100%,.1)}.sl-ring-yellow-600\/20{--tw-ring-color:rgba(202,138,4,.2)}.sl-ring-opacity-5{--tw-ring-opacity:0.05}.sl-transition{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.sl-transition-\[stroke-dasharray\]{transition-property:stroke-dasharray;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.sl-transition-all{transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.sl-transition-colors{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.sl-transition-opacity{transition-property:opacity;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.sl-duration-100{transition-duration:.1s}.sl-duration-150{transition-duration:.15s}.sl-duration-200{transition-duration:.2s}.sl-duration-300{transition-duration:.3s}.sl-duration-500{transition-duration:.5s}.sl-ease-in{transition-timing-function:cubic-bezier(.4,0,1,1)}.sl-ease-in-out{transition-timing-function:cubic-bezier(.4,0,.2,1)}.sl-ease-linear{transition-timing-function:linear}.sl-ease-out{transition-timing-function:cubic-bezier(0,0,.2,1)}.sl-transition-colors{transition-property:color,background-color,border-color;transition-duration:.2s;transition-timing-function:cubic-bezier(.4,0,.2,1)}.placeholder\:sl-text-gray-400::-moz-placeholder{--tw-text-opacity:1;color:rgb(156 163 175/var(--tw-text-opacity,1))}.placeholder\:sl-text-gray-400::placeholder{--tw-text-opacity:1;color:rgb(156 163 175/var(--tw-text-opacity,1))}.placeholder\:sl-text-stachelock-400\/80::-moz-placeholder{color:rgba(113,126,205,.8)}.placeholder\:sl-text-stachelock-400\/80::placeholder{color:rgba(113,126,205,.8)}.checked\:sl-border-stachelock-600:checked{--tw-border-opacity:1;border-color:rgb(62 75 154/var(--tw-border-opacity,1))}.checked\:sl-bg-stachelock-600:checked{--tw-bg-opacity:1;background-color:rgb(62 75 154/var(--tw-bg-opacity,1))}.indeterminate\:sl-border-stachelock-600:indeterminate{--tw-border-opacity:1;border-color:rgb(62 75 154/var(--tw-border-opacity,1))}.indeterminate\:sl-bg-stachelock-600:indeterminate{--tw-bg-opacity:1;background-color:rgb(62 75 154/var(--tw-bg-opacity,1))}.focus-within\:sl-border-green-500:focus-within{--tw-border-opacity:1;border-color:rgb(34 197 94/var(--tw-border-opacity,1))}.focus-within\:sl-border-red-500:focus-within{--tw-border-opacity:1;border-color:rgb(239 68 68/var(--tw-border-opacity,1))}.focus-within\:sl-border-stachelock-500:focus-within{--tw-border-opacity:1;border-color:rgb(77 94 192/var(--tw-border-opacity,1))}.focus-within\:sl-ring-2:focus-within{--tw-ring-offset-shadow:var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow:var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow,0 0 #0000)}.focus-within\:sl-ring-inset:focus-within{--tw-ring-inset:inset}.focus-within\:sl-ring-green-500:focus-within{--tw-ring-opacity:1;--tw-ring-color:rgb(34 197 94/var(--tw-ring-opacity,1))}.focus-within\:sl-ring-red-500:focus-within{--tw-ring-opacity:1;--tw-ring-color:rgb(239 68 68/var(--tw-ring-opacity,1))}.focus-within\:sl-ring-stachelock-500:focus-within{--tw-ring-opacity:1;--tw-ring-color:rgb(77 94 192/var(--tw-ring-opacity,1))}.focus-within\:sl-ring-stachelock-600:focus-within{--tw-ring-opacity:1;--tw-ring-color:rgb(62 75 154/var(--tw-ring-opacity,1))}.hover\:sl-border-gray-400:hover{--tw-border-opacity:1;border-color:rgb(156 163 175/var(--tw-border-opacity,1))}.hover\:sl-border-gray-800:hover{--tw-border-opacity:1;border-color:rgb(31 41 55/var(--tw-border-opacity,1))}.hover\:sl-border-green-400:hover{--tw-border-opacity:1;border-color:rgb(74 222 128/var(--tw-border-opacity,1))}.hover\:sl-border-red-400:hover{--tw-border-opacity:1;border-color:rgb(248 113 113/var(--tw-border-opacity,1))}.hover\:sl-border-stachelock-400:hover{--tw-border-opacity:1;border-color:rgb(113 126 205/var(--tw-border-opacity,1))}.hover\:sl-border-yellow-400:hover{--tw-border-opacity:1;border-color:rgb(250 204 21/var(--tw-border-opacity,1))}.hover\:sl-bg-blue-100:hover{--tw-bg-opacity:1;background-color:rgb(219 234 254/var(--tw-bg-opacity,1))}.hover\:sl-bg-gray-100:hover{--tw-bg-opacity:1;background-color:rgb(243 244 246/var(--tw-bg-opacity,1))}.hover\:sl-bg-gray-50:hover{--tw-bg-opacity:1;background-color:rgb(249 250 251/var(--tw-bg-opacity,1))}.hover\:sl-bg-gray-800:hover{--tw-bg-opacity:1;background-color:rgb(31 41 55/var(--tw-bg-opacity,1))}.hover\:sl-bg-green-50:hover{--tw-bg-opacity:1;background-color:rgb(240 253 244/var(--tw-bg-opacity,1))}.hover\:sl-bg-green-600:hover{--tw-bg-opacity:1;background-color:rgb(22 163 74/var(--tw-bg-opacity,1))}.hover\:sl-bg-red-50:hover{--tw-bg-opacity:1;background-color:rgb(254 242 242/var(--tw-bg-opacity,1))}.hover\:sl-bg-red-600:hover{--tw-bg-opacity:1;background-color:rgb(220 38 38/var(--tw-bg-opacity,1))}.hover\:sl-bg-stachelock-50:hover{--tw-bg-opacity:1;background-color:rgb(237 239 249/var(--tw-bg-opacity,1))}.hover\:sl-bg-stachelock-600:hover{--tw-bg-opacity:1;background-color:rgb(62 75 154/var(--tw-bg-opacity,1))}.hover\:sl-bg-stachelock-700:hover{--tw-bg-opacity:1;background-color:rgb(46 56 115/var(--tw-bg-opacity,1))}.hover\:sl-bg-white\/10:hover{background-color:hsla(0,0%,100%,.1)}.hover\:sl-bg-yellow-50:hover{--tw-bg-opacity:1;background-color:rgb(254 252 232/var(--tw-bg-opacity,1))}.hover\:sl-bg-yellow-600:hover{--tw-bg-opacity:1;background-color:rgb(202 138 4/var(--tw-bg-opacity,1))}.hover\:sl-text-gray-500:hover{--tw-text-opacity:1;color:rgb(107 114 128/var(--tw-text-opacity,1))}.hover\:sl-text-gray-700:hover{--tw-text-opacity:1;color:rgb(55 65 81/var(--tw-text-opacity,1))}.hover\:sl-text-stachelock-050:hover{--tw-text-opacity:1;color:rgb(237 239 249/var(--tw-text-opacity,1))}.hover\:sl-text-stachelock-400:hover{--tw-text-opacity:1;color:rgb(113 126 205/var(--tw-text-opacity,1))}.hover\:sl-text-stachelock-600:hover{--tw-text-opacity:1;color:rgb(62 75 154/var(--tw-text-opacity,1))}.hover\:sl-text-white:hover{--tw-text-opacity:1;color:rgb(255 255 255/var(--tw-text-opacity,1))}.focus\:sl-z-10:focus{z-index:10}.focus\:sl-rounded-lg:focus{border-radius:.5rem}.focus\:sl-border-green-500:focus{--tw-border-opacity:1;border-color:rgb(34 197 94/var(--tw-border-opacity,1))}.focus\:sl-border-red-500:focus{--tw-border-opacity:1;border-color:rgb(239 68 68/var(--tw-border-opacity,1))}.focus\:sl-border-stachelock-500:focus{--tw-border-opacity:1;border-color:rgb(77 94 192/var(--tw-border-opacity,1))}.focus\:sl-outline-none:focus{outline:2px solid transparent;outline-offset:2px}.focus\:sl-ring-0:focus{--tw-ring-offset-shadow:var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow:var(--tw-ring-inset) 0 0 0 calc(var(--tw-ring-offset-width)) var(--tw-ring-color)}.focus\:sl-ring-0:focus,.focus\:sl-ring-2:focus{box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow,0 0 #0000)}.focus\:sl-ring-2:focus{--tw-ring-offset-shadow:var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow:var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color)}.focus\:sl-ring-inset:focus{--tw-ring-inset:inset}.focus\:sl-ring-gray-300:focus{--tw-ring-opacity:1;--tw-ring-color:rgb(209 213 219/var(--tw-ring-opacity,1))}.focus\:sl-ring-gray-500:focus{--tw-ring-opacity:1;--tw-ring-color:rgb(107 114 128/var(--tw-ring-opacity,1))}.focus\:sl-ring-green-300:focus{--tw-ring-opacity:1;--tw-ring-color:rgb(134 239 172/var(--tw-ring-opacity,1))}.focus\:sl-ring-green-400:focus{--tw-ring-opacity:1;--tw-ring-color:rgb(74 222 128/var(--tw-ring-opacity,1))}.focus\:sl-ring-green-500:focus{--tw-ring-opacity:1;--tw-ring-color:rgb(34 197 94/var(--tw-ring-opacity,1))}.focus\:sl-ring-red-300:focus{--tw-ring-opacity:1;--tw-ring-color:rgb(252 165 165/var(--tw-ring-opacity,1))}.focus\:sl-ring-red-400:focus{--tw-ring-opacity:1;--tw-ring-color:rgb(248 113 113/var(--tw-ring-opacity,1))}.focus\:sl-ring-red-500:focus{--tw-ring-opacity:1;--tw-ring-color:rgb(239 68 68/var(--tw-ring-opacity,1))}.focus\:sl-ring-red-600:focus{--tw-ring-opacity:1;--tw-ring-color:rgb(220 38 38/var(--tw-ring-opacity,1))}.focus\:sl-ring-stachelock-300:focus{--tw-ring-opacity:1;--tw-ring-color:rgb(148 158 217/var(--tw-ring-opacity,1))}.focus\:sl-ring-stachelock-500:focus{--tw-ring-opacity:1;--tw-ring-color:rgb(77 94 192/var(--tw-ring-opacity,1))}.focus\:sl-ring-stachelock-600:focus{--tw-ring-opacity:1;--tw-ring-color:rgb(62 75 154/var(--tw-ring-opacity,1))}.focus\:sl-ring-yellow-300:focus{--tw-ring-opacity:1;--tw-ring-color:rgb(253 224 71/var(--tw-ring-opacity,1))}.focus\:sl-ring-yellow-400:focus{--tw-ring-opacity:1;--tw-ring-color:rgb(250 204 21/var(--tw-ring-opacity,1))}.focus\:sl-ring-offset-2:focus{--tw-ring-offset-width:2px}.focus\:sl-ring-offset-gray-50:focus{--tw-ring-offset-color:#f9fafb}.focus-visible\:sl-outline:focus-visible{outline-style:solid}.focus-visible\:sl-outline-2:focus-visible{outline-width:2px}.focus-visible\:sl-outline-offset-2:focus-visible{outline-offset:2px}.focus-visible\:sl-outline-stachelock-600:focus-visible{outline-color:#3e4b9a}.disabled\:sl-border-gray-300:disabled{--tw-border-opacity:1;border-color:rgb(209 213 219/var(--tw-border-opacity,1))}.disabled\:checked\:sl-bg-gray-100:checked:disabled,.disabled\:sl-bg-gray-100:disabled{--tw-bg-opacity:1;background-color:rgb(243 244 246/var(--tw-bg-opacity,1))}.sl-group:hover .group-hover\:sl-text-blue-700{--tw-text-opacity:1;color:rgb(29 78 216/var(--tw-text-opacity,1))}.sl-group:hover .group-hover\:sl-text-stachelock-050{--tw-text-opacity:1;color:rgb(237 239 249/var(--tw-text-opacity,1))}.sl-group:has(:checked) .group-has-\[\:checked\]\:sl-opacity-100{opacity:1}.sl-group:has(:indeterminate) .group-has-\[\:indeterminate\]\:sl-opacity-100{opacity:1}.dark\:sl-bg-gray-700:is(.sl-dark *){--tw-bg-opacity:1;background-color:rgb(55 65 81/var(--tw-bg-opacity,1))}.dark\:sl-bg-gray-900:is(.sl-dark *){--tw-bg-opacity:1;background-color:rgb(17 24 39/var(--tw-bg-opacity,1))}.dark\:sl-bg-opacity-75:is(.sl-dark *){--tw-bg-opacity:0.75}@media (min-width:640px){.sm\:sl--mx-6{margin-left:-1.5rem;margin-right:-1.5rem}.sm\:sl-mx-0{margin-left:0;margin-right:0}.sm\:sl-ml-16{margin-left:4rem}.sm\:sl-ml-4{margin-left:1rem}.sm\:sl-mt-0{margin-top:0}.sm\:sl-flex{display:flex}.sm\:sl-grid{display:grid}.sm\:sl-hidden{display:none}.sm\:sl-h-10{height:2.5rem}.sm\:sl-w-10{width:2.5rem}.sm\:sl-max-w-none{max-width:none}.sm\:sl-flex-auto{flex:1 1 auto}.sm\:sl-flex-none{flex:none}.sm\:sl-grid-cols-7{grid-template-columns:repeat(7,minmax(0,1fr))}.sm\:sl-flex-row-reverse{flex-direction:row-reverse}.sm\:sl-items-start{align-items:flex-start}.sm\:sl-items-center{align-items:center}.sm\:sl-gap-x-6{-moz-column-gap:1.5rem;column-gap:1.5rem}.sm\:sl-space-x-8>:not([hidden])~:not([hidden]){--tw-space-x-reverse:0;margin-right:calc(2rem*var(--tw-space-x-reverse));margin-left:calc(2rem*(1 - var(--tw-space-x-reverse)))}.sm\:sl-self-stretch{align-self:stretch}.sm\:sl-rounded-lg{border-radius:.5rem}.sm\:sl-p-6{padding:1.5rem}.sm\:sl-px-14{padding-left:3.5rem;padding-right:3.5rem}.sm\:sl-px-6{padding-left:1.5rem;padding-right:1.5rem}.sm\:sl-py-12{padding-top:3rem;padding-bottom:3rem}.sm\:sl-py-32{padding-top:8rem;padding-bottom:8rem}.sm\:sl-pb-4{padding-bottom:1rem}.sm\:sl-pr-8{padding-right:2rem}.sm\:sl-pt-16{padding-top:4rem}.sm\:sl-text-left{text-align:left}.sm\:sl-text-6xl{font-size:3.75rem;line-height:1}.sm\:sl-text-sm{font-size:.875rem;line-height:1.25rem}.sm\:sl-leading-6{line-height:1.5rem}}@media (min-width:768px){.md\:sl-block{display:block}.md\:sl-hidden{display:none}.md\:sl-max-w-full{max-width:100%}.md\:sl-grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.md\:sl-rounded-lg{border-radius:.5rem}.md\:sl-px-6{padding-left:1.5rem;padding-right:1.5rem}}@media (min-width:1024px){.lg\:sl-fixed{position:fixed}.lg\:sl-inset-y-0{top:0;bottom:0}.lg\:sl-left-0{left:0}.lg\:sl-z-50{z-index:50}.lg\:sl-col-span-7{grid-column:span 7/span 7}.lg\:sl-col-start-8{grid-column-start:8}.lg\:sl-col-end-13{grid-column-end:13}.lg\:sl-row-start-1{grid-row-start:1}.lg\:sl--mx-8{margin-left:-2rem;margin-right:-2rem}.lg\:sl-mx-0{margin-left:0;margin-right:0}.lg\:sl-mx-12{margin-right:3rem}.lg\:sl-ml-12,.lg\:sl-mx-12{margin-left:3rem}.lg\:sl-mt-9{margin-top:2.25rem}.lg\:sl-block{display:block}.lg\:sl-flex{display:flex}.lg\:sl-grid{display:grid}.lg\:sl-hidden{display:none}.lg\:sl-h-16{height:4rem}.lg\:sl-h-full{height:100%}.lg\:sl-w-16{width:4rem}.lg\:sl-w-20{width:5rem}.lg\:sl-w-64{width:16rem}.lg\:sl-w-72{width:18rem}.lg\:sl-grid-cols-12{grid-template-columns:repeat(12,minmax(0,1fr))}.lg\:sl-grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.lg\:sl-items-center{align-items:center}.lg\:sl-justify-start{justify-content:flex-start}.lg\:sl-gap-x-6{-moz-column-gap:1.5rem;column-gap:1.5rem}.lg\:sl-gap-x-8{-moz-column-gap:2rem;column-gap:2rem}.lg\:sl-border-l{border-left-width:1px}.lg\:sl-border-gray-100{--tw-border-opacity:1;border-color:rgb(243 244 246/var(--tw-border-opacity,1))}.lg\:sl-bg-stachelock-600{--tw-bg-opacity:1;background-color:rgb(62 75 154/var(--tw-bg-opacity,1))}.lg\:sl-px-8{padding-left:2rem;padding-right:2rem}.lg\:sl-pb-4{padding-bottom:1rem}.lg\:sl-pl-16{padding-left:4rem}.lg\:sl-pl-20{padding-left:5rem}.lg\:sl-pl-64{padding-left:16rem}.lg\:sl-pl-72{padding-left:18rem}.lg\:sl-pl-8{padding-left:2rem}}@media (min-width:1280px){.xl\:sl-col-span-8{grid-column:span 8/span 8}.xl\:sl-col-start-9{grid-column-start:9}.xl\:sl-col-end-13{grid-column-end:13}.xl\:sl-ml-3\.5{margin-left:.875rem}.xl\:sl-mt-0{margin-top:0}.xl\:sl-grid{display:grid}.xl\:sl-hidden{display:none}.xl\:sl-flex-row{flex-direction:row}.xl\:sl-border-l{border-left-width:1px}.xl\:sl-border-gray-400{--tw-border-opacity:1;border-color:rgb(156 163 175/var(--tw-border-opacity,1))}.xl\:sl-border-opacity-50{--tw-border-opacity:0.5}.xl\:sl-pl-3\.5{padding-left:.875rem}}
|
|
1
|
+
*,:after,:before{--tw-border-spacing-x:0;--tw-border-spacing-y:0;--tw-translate-x:0;--tw-translate-y:0;--tw-rotate:0;--tw-skew-x:0;--tw-skew-y:0;--tw-scale-x:1;--tw-scale-y:1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness:proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-color:#dc2626;--tw-ring-offset-shadow:0 0 #0000;--tw-ring-shadow:0 0 #0000;--tw-shadow:0 0 #0000;--tw-shadow-colored:0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }::backdrop{--tw-border-spacing-x:0;--tw-border-spacing-y:0;--tw-translate-x:0;--tw-translate-y:0;--tw-rotate:0;--tw-skew-x:0;--tw-skew-y:0;--tw-scale-x:1;--tw-scale-y:1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness:proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-color:#dc2626;--tw-ring-offset-shadow:0 0 #0000;--tw-ring-shadow:0 0 #0000;--tw-shadow:0 0 #0000;--tw-shadow-colored:0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }/*! tailwindcss v3.4.17 | MIT License | https://tailwindcss.com*/*,:after,:before{box-sizing:border-box;border:0 solid #e5e7eb}:after,:before{--tw-content:""}:host,html{line-height:1.5;-webkit-text-size-adjust:100%;-moz-tab-size:4;-o-tab-size:4;tab-size:4;font-family:Inter,ui-sans-serif,system-ui,sans-serif,Apple Color Emoji,Segoe UI Emoji,Segoe UI Symbol,Noto Color Emoji;font-feature-settings:normal;font-variation-settings:normal;-webkit-tap-highlight-color:transparent}body{margin:0;line-height:inherit}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,pre,samp{font-family:JetBrains Mono,ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-feature-settings:normal;font-variation-settings:normal;font-size:1em}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}button,input,optgroup,select,textarea{font-family:inherit;font-feature-settings:inherit;font-variation-settings:inherit;font-size:100%;font-weight:inherit;line-height:inherit;letter-spacing:inherit;color:inherit;margin:0;padding:0}button,select{text-transform:none}button,input:where([type=button]),input:where([type=reset]),input:where([type=submit]){-webkit-appearance:button;background-color:transparent;background-image:none}:-moz-focusring{outline:auto}:-moz-ui-invalid{box-shadow:none}progress{vertical-align:baseline}::-webkit-inner-spin-button,::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}summary{display:list-item}blockquote,dd,dl,figure,h1,h2,h3,h4,h5,h6,hr,p,pre{margin:0}fieldset{margin:0}fieldset,legend{padding:0}menu,ol,ul{list-style:none;margin:0;padding:0}dialog{padding:0}textarea{resize:vertical}input::-moz-placeholder,textarea::-moz-placeholder{opacity:1;color:#9ca3af}input::placeholder,textarea::placeholder{opacity:1;color:#9ca3af}[role=button],button{cursor:pointer}:disabled{cursor:default}audio,canvas,embed,iframe,img,object,svg,video{display:block;vertical-align:middle}img,video{max-width:100%;height:auto}[hidden]:where(:not([hidden=until-found])){display:none}@import url("https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700&display=swap");:root{--sl-color-primary:#3e4b9a;--sl-color-primary-50:#edeff9;--sl-color-primary-100:#dbdff2;--sl-color-primary-600:#3e4b9a;--sl-color-primary-700:#2e3873;--sl-ring-color:var(--sl-color-primary)}@media (prefers-color-scheme:dark){:root{--sl-ring-color:var(--sl-color-primary)}}.sl-form{font-family:Inter,ui-sans-serif,system-ui,sans-serif,Apple Color Emoji,Segoe UI Emoji,Segoe UI Symbol,Noto Color Emoji}.sl-form .has-error input,.sl-form .has-error input:focus,.sl-form .has-error select,.sl-form .has-error select:focus,.sl-form .has-error textarea,.sl-form .has-error textarea:focus{--tw-ring-opacity:1;--tw-ring-color:rgb(239 68 68/var(--tw-ring-opacity,1))}.sl-form .success input,.sl-form .success input:focus,.sl-form .success select,.sl-form .success select:focus,.sl-form .success textarea,.sl-form .success textarea:focus{--tw-ring-opacity:1;--tw-ring-color:rgb(34 197 94/var(--tw-ring-opacity,1))}.sl-sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border-width:0}.sl-pointer-events-none{pointer-events:none}.sl-pointer-events-auto{pointer-events:auto}.sl-fixed{position:fixed}.sl-absolute{position:absolute}.sl-relative{position:relative}.sl-sticky{position:sticky}.sl-inset-0{inset:0}.sl-inset-1{inset:.25rem}.sl-inset-y-0{top:0;bottom:0}.sl-bottom-2{bottom:.5rem}.sl-bottom-4{bottom:1rem}.sl-left-0{left:0}.sl-left-1\/2{left:50%}.sl-left-full{left:100%}.sl-right-0{right:0}.sl-right-1{right:.25rem}.sl-right-2{right:.5rem}.sl-top-0{top:0}.sl-top-1{top:.25rem}.sl-top-1\/2{top:50%}.sl-isolate{isolation:isolate}.sl-z-10{z-index:10}.sl-z-20{z-index:20}.sl-z-30{z-index:30}.sl-z-40{z-index:40}.sl-z-50{z-index:50}.sl-order-1{order:1}.sl-col-span-1{grid-column:span 1/span 1}.sl-col-span-2{grid-column:span 2/span 2}.sl-col-span-6{grid-column:span 6/span 6}.sl-col-start-1{grid-column-start:1}.sl-col-start-3{grid-column-start:3}.sl-col-start-7{grid-column-start:7}.sl-col-start-8{grid-column-start:8}.sl-col-end-1{grid-column-end:1}.sl-col-end-13{grid-column-end:13}.sl-col-end-2{grid-column-end:2}.sl-row-span-full{grid-row:1/-1}.sl-row-start-1{grid-row-start:1}.sl-row-end-1{grid-row-end:1}.-sl-m-2\.5{margin:-.625rem}.-sl-mx-2{margin-left:-.5rem;margin-right:-.5rem}.-sl-mx-3{margin-left:-.75rem;margin-right:-.75rem}.-sl-my-2{margin-top:-.5rem;margin-bottom:-.5rem}.sl--mx-4{margin-left:-1rem;margin-right:-1rem}.sl--my-2{margin-top:-.5rem;margin-bottom:-.5rem}.sl-mx-2{margin-left:.5rem;margin-right:.5rem}.sl-mx-4{margin-left:1rem;margin-right:1rem}.sl-mx-auto{margin-left:auto;margin-right:auto}.sl-my-4{margin-top:1rem;margin-bottom:1rem}.-sl-ml-0\.5{margin-left:-.125rem}.-sl-ml-14{margin-left:-3.5rem}.-sl-mt-2\.5{margin-top:-.625rem}.sl--mr-px{margin-right:-1px}.sl-mb-1{margin-bottom:.25rem}.sl-mb-2{margin-bottom:.5rem}.sl-mb-3{margin-bottom:.75rem}.sl-mb-4{margin-bottom:1rem}.sl-mb-6{margin-bottom:1.5rem}.sl-mb-8{margin-bottom:2rem}.sl-ml-1{margin-left:.25rem}.sl-ml-10{margin-left:2.5rem}.sl-ml-2{margin-left:.5rem}.sl-ml-3{margin-left:.75rem}.sl-ml-4{margin-left:1rem}.sl-ml-auto{margin-left:auto}.sl-mr-16{margin-right:4rem}.sl-mr-3{margin-right:.75rem}.sl-mt-1{margin-top:.25rem}.sl-mt-10{margin-top:2.5rem}.sl-mt-2{margin-top:.5rem}.sl-mt-3{margin-top:.75rem}.sl-mt-4{margin-top:1rem}.sl-mt-6{margin-top:1.5rem}.sl-mt-8{margin-top:2rem}.sl-mt-auto{margin-top:auto}.sl-mt-px{margin-top:1px}.sl-block{display:block}.sl-inline-block{display:inline-block}.sl-flex{display:flex}.sl-inline-flex{display:inline-flex}.sl-flow-root{display:flow-root}.sl-grid{display:grid}.sl-hidden{display:none}.sl-h-10{height:2.5rem}.sl-h-12{height:3rem}.sl-h-14{height:3.5rem}.sl-h-16{height:4rem}.sl-h-2{height:.5rem}.sl-h-2\.5{height:.625rem}.sl-h-20{height:5rem}.sl-h-24{height:6rem}.sl-h-3{height:.75rem}.sl-h-3\.5{height:.875rem}.sl-h-4{height:1rem}.sl-h-5{height:1.25rem}.sl-h-6{height:1.5rem}.sl-h-7{height:1.75rem}.sl-h-8{height:2rem}.sl-h-auto{height:auto}.sl-h-full{height:100%}.sl-max-h-56{max-height:14rem}.sl-max-h-60{max-height:15rem}.sl-min-h-\[80px\]{min-height:80px}.sl-min-h-full{min-height:100%}.sl-min-h-screen{min-height:100vh}.sl-w-1\/2{width:50%}.sl-w-10{width:2.5rem}.sl-w-11{width:2.75rem}.sl-w-12{width:3rem}.sl-w-14{width:3.5rem}.sl-w-16{width:4rem}.sl-w-2{width:.5rem}.sl-w-20{width:5rem}.sl-w-24{width:6rem}.sl-w-3{width:.75rem}.sl-w-3\.5{width:.875rem}.sl-w-3\/4{width:75%}.sl-w-32{width:8rem}.sl-w-4{width:1rem}.sl-w-5{width:1.25rem}.sl-w-6{width:1.5rem}.sl-w-7{width:1.75rem}.sl-w-8{width:2rem}.sl-w-full{width:100%}.sl-w-px{width:1px}.sl-w-screen{width:100vw}.sl-min-w-0{min-width:0}.sl-min-w-full{min-width:100%}.sl-max-w-2xl{max-width:42rem}.sl-max-w-4xl{max-width:56rem}.sl-max-w-7xl{max-width:80rem}.sl-max-w-\[150px\]{max-width:150px}.sl-max-w-full{max-width:100%}.sl-max-w-md{max-width:28rem}.sl-max-w-xs{max-width:20rem}.sl-flex-1{flex:1 1 0%}.sl-flex-auto{flex:1 1 auto}.sl-flex-none{flex:none}.sl-flex-shrink-0,.sl-shrink-0{flex-shrink:0}.sl-grow{flex-grow:1}.-sl-translate-x-1\/2{--tw-translate-x:-50%}.-sl-translate-x-1\/2,.-sl-translate-x-full{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.-sl-translate-x-full{--tw-translate-x:-100%}.-sl-translate-y-1\/2{--tw-translate-y:-50%}.-sl-translate-y-1\/2,.-sl-translate-y-4{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.-sl-translate-y-4{--tw-translate-y:-1rem}.sl-translate-x-0{--tw-translate-x:0px}.sl-translate-x-0,.sl-translate-x-1\/2{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.sl-translate-x-1\/2{--tw-translate-x:50%}.sl-translate-x-5{--tw-translate-x:1.25rem}.sl-translate-x-5,.sl-translate-y-0{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.sl-translate-y-0{--tw-translate-y:0px}.sl-translate-y-4{--tw-translate-y:1rem}.-sl-rotate-90,.sl-translate-y-4{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.-sl-rotate-90{--tw-rotate:-90deg}.sl-scale-100{--tw-scale-x:1;--tw-scale-y:1}.sl-scale-100,.sl-scale-95{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.sl-scale-95{--tw-scale-x:.95;--tw-scale-y:.95}.sl-transform{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}@keyframes sl-pulse{50%{opacity:.5}}.sl-animate-pulse{animation:sl-pulse 2s cubic-bezier(.4,0,.6,1) infinite}@keyframes sl-spin{to{transform:rotate(1turn)}}.sl-animate-spin{animation:sl-spin 1s linear infinite}.sl-cursor-default{cursor:default}.sl-cursor-not-allowed{cursor:not-allowed}.sl-cursor-pointer{cursor:pointer}.sl-select-none{-webkit-user-select:none;-moz-user-select:none;user-select:none}.sl-resize-y{resize:vertical}.sl-appearance-none{-webkit-appearance:none;-moz-appearance:none;appearance:none}.sl-grid-cols-1{grid-template-columns:repeat(1,minmax(0,1fr))}.sl-grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.sl-grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.sl-grid-cols-7{grid-template-columns:repeat(7,minmax(0,1fr))}.sl-grid-rows-1{grid-template-rows:repeat(1,minmax(0,1fr))}.sl-flex-col{flex-direction:column}.sl-flex-wrap{flex-wrap:wrap}.sl-items-start{align-items:flex-start}.sl-items-center{align-items:center}.sl-justify-start{justify-content:flex-start}.sl-justify-end{justify-content:flex-end}.sl-justify-center{justify-content:center}.sl-justify-between{justify-content:space-between}.sl-gap-2{gap:.5rem}.sl-gap-3{gap:.75rem}.sl-gap-4{gap:1rem}.sl-gap-6{gap:1.5rem}.sl-gap-8{gap:2rem}.sl-gap-px{gap:1px}.sl-gap-x-3{-moz-column-gap:.75rem;column-gap:.75rem}.sl-gap-x-4{-moz-column-gap:1rem;column-gap:1rem}.sl-gap-y-5{row-gap:1.25rem}.sl-space-x-2>:not([hidden])~:not([hidden]){--tw-space-x-reverse:0;margin-right:calc(.5rem*var(--tw-space-x-reverse));margin-left:calc(.5rem*(1 - var(--tw-space-x-reverse)))}.sl-space-x-3>:not([hidden])~:not([hidden]){--tw-space-x-reverse:0;margin-right:calc(.75rem*var(--tw-space-x-reverse));margin-left:calc(.75rem*(1 - var(--tw-space-x-reverse)))}.sl-space-x-4>:not([hidden])~:not([hidden]){--tw-space-x-reverse:0;margin-right:calc(1rem*var(--tw-space-x-reverse));margin-left:calc(1rem*(1 - var(--tw-space-x-reverse)))}.sl-space-x-6>:not([hidden])~:not([hidden]){--tw-space-x-reverse:0;margin-right:calc(1.5rem*var(--tw-space-x-reverse));margin-left:calc(1.5rem*(1 - var(--tw-space-x-reverse)))}.sl-space-y-1>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-top:calc(.25rem*(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.25rem*var(--tw-space-y-reverse))}.sl-space-y-10>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-top:calc(2.5rem*(1 - var(--tw-space-y-reverse)));margin-bottom:calc(2.5rem*var(--tw-space-y-reverse))}.sl-space-y-2>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-top:calc(.5rem*(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.5rem*var(--tw-space-y-reverse))}.sl-space-y-3>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-top:calc(.75rem*(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.75rem*var(--tw-space-y-reverse))}.sl-space-y-4>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-top:calc(1rem*(1 - var(--tw-space-y-reverse)));margin-bottom:calc(1rem*var(--tw-space-y-reverse))}.sl-space-y-6>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-top:calc(1.5rem*(1 - var(--tw-space-y-reverse)));margin-bottom:calc(1.5rem*var(--tw-space-y-reverse))}.sl-space-y-8>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-top:calc(2rem*(1 - var(--tw-space-y-reverse)));margin-bottom:calc(2rem*var(--tw-space-y-reverse))}.sl-divide-x>:not([hidden])~:not([hidden]){--tw-divide-x-reverse:0;border-right-width:calc(1px*var(--tw-divide-x-reverse));border-left-width:calc(1px*(1 - var(--tw-divide-x-reverse)))}.sl-divide-y>:not([hidden])~:not([hidden]){--tw-divide-y-reverse:0;border-top-width:calc(1px*(1 - var(--tw-divide-y-reverse)));border-bottom-width:calc(1px*var(--tw-divide-y-reverse))}.sl-divide-gray-100>:not([hidden])~:not([hidden]){--tw-divide-opacity:1;border-color:rgb(243 244 246/var(--tw-divide-opacity,1))}.sl-divide-gray-200>:not([hidden])~:not([hidden]){--tw-divide-opacity:1;border-color:rgb(229 231 235/var(--tw-divide-opacity,1))}.sl-divide-gray-300>:not([hidden])~:not([hidden]){--tw-divide-opacity:1;border-color:rgb(209 213 219/var(--tw-divide-opacity,1))}.sl-self-center{align-self:center}.sl-justify-self-end{justify-self:end}.sl-justify-self-center{justify-self:center}.sl-overflow-auto{overflow:auto}.sl-overflow-hidden{overflow:hidden}.sl-overflow-x-auto{overflow-x:auto}.sl-overflow-y-auto{overflow-y:auto}.sl-truncate{overflow:hidden;white-space:nowrap}.sl-overflow-ellipsis,.sl-truncate{text-overflow:ellipsis}.sl-whitespace-nowrap{white-space:nowrap}.sl-whitespace-pre-wrap{white-space:pre-wrap}.sl-rounded{border-radius:.25rem}.sl-rounded-full{border-radius:9999px}.sl-rounded-lg{border-radius:.5rem}.sl-rounded-md{border-radius:.375rem}.sl-rounded-bl-lg{border-bottom-left-radius:.5rem}.sl-rounded-br-lg{border-bottom-right-radius:.5rem}.sl-rounded-tl-lg{border-top-left-radius:.5rem}.sl-rounded-tr-lg{border-top-right-radius:.5rem}.sl-border{border-width:1px}.sl-border-0{border-width:0}.sl-border-2{border-width:2px}.sl-border-b{border-bottom-width:1px}.sl-border-l{border-left-width:1px}.sl-border-r{border-right-width:1px}.sl-border-t{border-top-width:1px}.sl-border-none{border-style:none}.sl-border-gray-100{--tw-border-opacity:1;border-color:rgb(243 244 246/var(--tw-border-opacity,1))}.sl-border-gray-200{--tw-border-opacity:1;border-color:rgb(229 231 235/var(--tw-border-opacity,1))}.sl-border-gray-300{--tw-border-opacity:1;border-color:rgb(209 213 219/var(--tw-border-opacity,1))}.sl-border-gray-700{--tw-border-opacity:1;border-color:rgb(55 65 81/var(--tw-border-opacity,1))}.sl-border-gray-900\/10{border-color:rgba(17,24,39,.1)}.sl-border-green-300{--tw-border-opacity:1;border-color:rgb(134 239 172/var(--tw-border-opacity,1))}.sl-border-green-500{--tw-border-opacity:1;border-color:rgb(34 197 94/var(--tw-border-opacity,1))}.sl-border-red-200{--tw-border-opacity:1;border-color:rgb(254 202 202/var(--tw-border-opacity,1))}.sl-border-red-300{--tw-border-opacity:1;border-color:rgb(252 165 165/var(--tw-border-opacity,1))}.sl-border-red-500{--tw-border-opacity:1;border-color:rgb(239 68 68/var(--tw-border-opacity,1))}.sl-border-stachelock-600{--tw-border-opacity:1;border-color:rgb(62 75 154/var(--tw-border-opacity,1))}.sl-border-transparent{border-color:transparent}.sl-border-yellow-200{--tw-border-opacity:1;border-color:rgb(254 240 138/var(--tw-border-opacity,1))}.sl-border-yellow-500{--tw-border-opacity:1;border-color:rgb(234 179 8/var(--tw-border-opacity,1))}.sl-bg-blue-50{--tw-bg-opacity:1;background-color:rgb(239 246 255/var(--tw-bg-opacity,1))}.sl-bg-gray-100{--tw-bg-opacity:1;background-color:rgb(243 244 246/var(--tw-bg-opacity,1))}.sl-bg-gray-200{--tw-bg-opacity:1;background-color:rgb(229 231 235/var(--tw-bg-opacity,1))}.sl-bg-gray-400{--tw-bg-opacity:1;background-color:rgb(156 163 175/var(--tw-bg-opacity,1))}.sl-bg-gray-50{--tw-bg-opacity:1;background-color:rgb(249 250 251/var(--tw-bg-opacity,1))}.sl-bg-gray-500\/75{background-color:hsla(220,9%,46%,.75)}.sl-bg-gray-700{--tw-bg-opacity:1;background-color:rgb(55 65 81/var(--tw-bg-opacity,1))}.sl-bg-gray-900{--tw-bg-opacity:1;background-color:rgb(17 24 39/var(--tw-bg-opacity,1))}.sl-bg-gray-900\/10{background-color:rgba(17,24,39,.1)}.sl-bg-gray-900\/80{background-color:rgba(17,24,39,.8)}.sl-bg-green-100{--tw-bg-opacity:1;background-color:rgb(220 252 231/var(--tw-bg-opacity,1))}.sl-bg-green-400{--tw-bg-opacity:1;background-color:rgb(74 222 128/var(--tw-bg-opacity,1))}.sl-bg-green-50{--tw-bg-opacity:1;background-color:rgb(240 253 244/var(--tw-bg-opacity,1))}.sl-bg-green-500{--tw-bg-opacity:1;background-color:rgb(34 197 94/var(--tw-bg-opacity,1))}.sl-bg-purple-100{--tw-bg-opacity:1;background-color:rgb(243 232 255/var(--tw-bg-opacity,1))}.sl-bg-red-400{--tw-bg-opacity:1;background-color:rgb(248 113 113/var(--tw-bg-opacity,1))}.sl-bg-red-50{--tw-bg-opacity:1;background-color:rgb(254 242 242/var(--tw-bg-opacity,1))}.sl-bg-red-500{--tw-bg-opacity:1;background-color:rgb(239 68 68/var(--tw-bg-opacity,1))}.sl-bg-stachelock-050{--tw-bg-opacity:1;background-color:rgb(237 239 249/var(--tw-bg-opacity,1))}.sl-bg-stachelock-100{--tw-bg-opacity:1;background-color:rgb(219 223 242/var(--tw-bg-opacity,1))}.sl-bg-stachelock-400{--tw-bg-opacity:1;background-color:rgb(113 126 205/var(--tw-bg-opacity,1))}.sl-bg-stachelock-600{--tw-bg-opacity:1;background-color:rgb(62 75 154/var(--tw-bg-opacity,1))}.sl-bg-transparent{background-color:transparent}.sl-bg-white{--tw-bg-opacity:1;background-color:rgb(255 255 255/var(--tw-bg-opacity,1))}.sl-bg-white\/80{background-color:hsla(0,0%,100%,.8)}.sl-bg-yellow-400{--tw-bg-opacity:1;background-color:rgb(250 204 21/var(--tw-bg-opacity,1))}.sl-bg-yellow-50{--tw-bg-opacity:1;background-color:rgb(254 252 232/var(--tw-bg-opacity,1))}.sl-bg-opacity-75{--tw-bg-opacity:0.75}.sl-fill-none{fill:none}.sl-stroke-gray-300{stroke:#d1d5db}.sl-stroke-stachelock-600{stroke:#3e4b9a}.sl-stroke-white{stroke:#fff}.sl-object-cover{-o-object-fit:cover;object-fit:cover}.sl-p-0\.5{padding:.125rem}.sl-p-1{padding:.25rem}.sl-p-2{padding:.5rem}.sl-p-2\.5{padding:.625rem}.sl-p-3{padding:.75rem}.sl-p-4{padding:1rem}.sl-p-5{padding:1.25rem}.sl-p-6{padding:1.5rem}.sl-px-1{padding-left:.25rem;padding-right:.25rem}.sl-px-2{padding-left:.5rem;padding-right:.5rem}.sl-px-2\.5{padding-left:.625rem;padding-right:.625rem}.sl-px-3{padding-left:.75rem;padding-right:.75rem}.sl-px-4{padding-left:1rem;padding-right:1rem}.sl-px-6{padding-left:1.5rem;padding-right:1.5rem}.sl-px-8{padding-left:2rem;padding-right:2rem}.sl-py-0\.5{padding-top:.125rem;padding-bottom:.125rem}.sl-py-1{padding-top:.25rem;padding-bottom:.25rem}.sl-py-1\.5{padding-top:.375rem;padding-bottom:.375rem}.sl-py-10{padding-top:2.5rem;padding-bottom:2.5rem}.sl-py-14{padding-top:3.5rem;padding-bottom:3.5rem}.sl-py-16{padding-top:4rem;padding-bottom:4rem}.sl-py-2{padding-top:.5rem;padding-bottom:.5rem}.sl-py-24{padding-top:6rem;padding-bottom:6rem}.sl-py-3{padding-top:.75rem;padding-bottom:.75rem}.sl-py-3\.5{padding-top:.875rem;padding-bottom:.875rem}.sl-py-4{padding-top:1rem;padding-bottom:1rem}.sl-py-5{padding-top:1.25rem;padding-bottom:1.25rem}.sl-py-6{padding-top:1.5rem;padding-bottom:1.5rem}.sl-py-8{padding-top:2rem;padding-bottom:2rem}.sl-pb-12{padding-bottom:3rem}.sl-pb-16{padding-bottom:4rem}.sl-pb-2{padding-bottom:.5rem}.sl-pb-3{padding-bottom:.75rem}.sl-pb-4{padding-bottom:1rem}.sl-pl-10{padding-left:2.5rem}.sl-pl-2{padding-left:.5rem}.sl-pl-3{padding-left:.75rem}.sl-pr-0{padding-right:0}.sl-pr-10{padding-right:2.5rem}.sl-pr-12{padding-right:3rem}.sl-pr-2{padding-right:.5rem}.sl-pr-3{padding-right:.75rem}.sl-pr-4{padding-right:1rem}.sl-pr-9{padding-right:2.25rem}.sl-pt-2{padding-top:.5rem}.sl-pt-4{padding-top:1rem}.sl-pt-5{padding-top:1.25rem}.sl-text-left{text-align:left}.sl-text-center{text-align:center}.sl-text-right{text-align:right}.sl-align-middle{vertical-align:middle}.sl-text-2xl{font-size:1.5rem;line-height:2rem}.sl-text-2xs{font-size:.6rem}.sl-text-3xl{font-size:1.875rem;line-height:2.25rem}.sl-text-4xl{font-size:2.25rem;line-height:2.5rem}.sl-text-4xs{font-size:.4rem}.sl-text-\[10px\]{font-size:10px}.sl-text-base{font-size:1rem;line-height:1.5rem}.sl-text-lg{font-size:1.125rem;line-height:1.75rem}.sl-text-sm{font-size:.875rem;line-height:1.25rem}.sl-text-xl{font-size:1.25rem;line-height:1.75rem}.sl-text-xs{font-size:.75rem;line-height:1rem}.sl-font-bold{font-weight:700}.sl-font-light{font-weight:300}.sl-font-medium{font-weight:500}.sl-font-normal{font-weight:400}.sl-font-semibold{font-weight:600}.sl-uppercase{text-transform:uppercase}.sl-leading-5{line-height:1.25rem}.sl-leading-6{line-height:1.5rem}.sl-leading-7{line-height:1.75rem}.sl-leading-8{line-height:2rem}.sl-tracking-tight{letter-spacing:-.025em}.sl-tracking-wider{letter-spacing:.05em}.sl-text-blue-500{--tw-text-opacity:1;color:rgb(59 130 246/var(--tw-text-opacity,1))}.sl-text-blue-700{--tw-text-opacity:1;color:rgb(29 78 216/var(--tw-text-opacity,1))}.sl-text-gray-400{--tw-text-opacity:1;color:rgb(156 163 175/var(--tw-text-opacity,1))}.sl-text-gray-500{--tw-text-opacity:1;color:rgb(107 114 128/var(--tw-text-opacity,1))}.sl-text-gray-600{--tw-text-opacity:1;color:rgb(75 85 99/var(--tw-text-opacity,1))}.sl-text-gray-700{--tw-text-opacity:1;color:rgb(55 65 81/var(--tw-text-opacity,1))}.sl-text-gray-800{--tw-text-opacity:1;color:rgb(31 41 55/var(--tw-text-opacity,1))}.sl-text-gray-900{--tw-text-opacity:1;color:rgb(17 24 39/var(--tw-text-opacity,1))}.sl-text-green-500{--tw-text-opacity:1;color:rgb(34 197 94/var(--tw-text-opacity,1))}.sl-text-green-600{--tw-text-opacity:1;color:rgb(22 163 74/var(--tw-text-opacity,1))}.sl-text-green-700{--tw-text-opacity:1;color:rgb(21 128 61/var(--tw-text-opacity,1))}.sl-text-red-400{--tw-text-opacity:1;color:rgb(248 113 113/var(--tw-text-opacity,1))}.sl-text-red-500{--tw-text-opacity:1;color:rgb(239 68 68/var(--tw-text-opacity,1))}.sl-text-red-600{--tw-text-opacity:1;color:rgb(220 38 38/var(--tw-text-opacity,1))}.sl-text-red-700{--tw-text-opacity:1;color:rgb(185 28 28/var(--tw-text-opacity,1))}.sl-text-red-800{--tw-text-opacity:1;color:rgb(153 27 27/var(--tw-text-opacity,1))}.sl-text-slate-500{--tw-text-opacity:1;color:rgb(100 116 139/var(--tw-text-opacity,1))}.sl-text-stachelock-050{--tw-text-opacity:1;color:rgb(237 239 249/var(--tw-text-opacity,1))}.sl-text-stachelock-600{--tw-text-opacity:1;color:rgb(62 75 154/var(--tw-text-opacity,1))}.sl-text-stachelock-700{--tw-text-opacity:1;color:rgb(46 56 115/var(--tw-text-opacity,1))}.sl-text-white{--tw-text-opacity:1;color:rgb(255 255 255/var(--tw-text-opacity,1))}.sl-text-yellow-400{--tw-text-opacity:1;color:rgb(250 204 21/var(--tw-text-opacity,1))}.sl-text-yellow-500{--tw-text-opacity:1;color:rgb(234 179 8/var(--tw-text-opacity,1))}.sl-text-yellow-600{--tw-text-opacity:1;color:rgb(202 138 4/var(--tw-text-opacity,1))}.sl-text-yellow-700{--tw-text-opacity:1;color:rgb(161 98 7/var(--tw-text-opacity,1))}.sl-text-yellow-800{--tw-text-opacity:1;color:rgb(133 77 14/var(--tw-text-opacity,1))}.sl-opacity-0{opacity:0}.sl-opacity-100{opacity:1}.sl-opacity-25{opacity:.25}.sl-opacity-50{opacity:.5}.sl-opacity-75{opacity:.75}.sl-shadow{--tw-shadow:0 1px 3px 0 rgba(0,0,0,.1),0 1px 2px -1px rgba(0,0,0,.1);--tw-shadow-colored:0 1px 3px 0 var(--tw-shadow-color),0 1px 2px -1px var(--tw-shadow-color)}.sl-shadow,.sl-shadow-lg{box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)}.sl-shadow-lg{--tw-shadow:0 10px 15px -3px rgba(0,0,0,.1),0 4px 6px -4px rgba(0,0,0,.1);--tw-shadow-colored:0 10px 15px -3px var(--tw-shadow-color),0 4px 6px -4px var(--tw-shadow-color)}.sl-shadow-md{--tw-shadow:0 4px 6px -1px rgba(0,0,0,.1),0 2px 4px -2px rgba(0,0,0,.1);--tw-shadow-colored:0 4px 6px -1px var(--tw-shadow-color),0 2px 4px -2px var(--tw-shadow-color)}.sl-shadow-md,.sl-shadow-sm{box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)}.sl-shadow-sm{--tw-shadow:0 1px 2px 0 rgba(0,0,0,.05);--tw-shadow-colored:0 1px 2px 0 var(--tw-shadow-color)}.sl-shadow-xl{--tw-shadow:0 20px 25px -5px rgba(0,0,0,.1),0 8px 10px -6px rgba(0,0,0,.1);--tw-shadow-colored:0 20px 25px -5px var(--tw-shadow-color),0 8px 10px -6px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)}.sl-outline-none{outline:2px solid transparent;outline-offset:2px}.sl-ring-0{--tw-ring-offset-shadow:var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow:var(--tw-ring-inset) 0 0 0 calc(var(--tw-ring-offset-width)) var(--tw-ring-color)}.sl-ring-0,.sl-ring-1{box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow,0 0 #0000)}.sl-ring-1{--tw-ring-offset-shadow:var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow:var(--tw-ring-inset) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color)}.sl-ring-inset{--tw-ring-inset:inset}.sl-ring-black{--tw-ring-opacity:1;--tw-ring-color:rgb(0 0 0/var(--tw-ring-opacity,1))}.sl-ring-gray-100{--tw-ring-opacity:1;--tw-ring-color:rgb(243 244 246/var(--tw-ring-opacity,1))}.sl-ring-gray-200{--tw-ring-opacity:1;--tw-ring-color:rgb(229 231 235/var(--tw-ring-opacity,1))}.sl-ring-gray-300{--tw-ring-opacity:1;--tw-ring-color:rgb(209 213 219/var(--tw-ring-opacity,1))}.sl-ring-gray-400\/20{--tw-ring-color:rgba(156,163,175,.2)}.sl-ring-gray-500\/10{--tw-ring-color:hsla(220,9%,46%,.1)}.sl-ring-green-500{--tw-ring-opacity:1;--tw-ring-color:rgb(34 197 94/var(--tw-ring-opacity,1))}.sl-ring-green-600\/20{--tw-ring-color:rgba(22,163,74,.2)}.sl-ring-red-100{--tw-ring-opacity:1;--tw-ring-color:rgb(254 226 226/var(--tw-ring-opacity,1))}.sl-ring-red-500{--tw-ring-opacity:1;--tw-ring-color:rgb(239 68 68/var(--tw-ring-opacity,1))}.sl-ring-red-600\/10{--tw-ring-color:rgba(220,38,38,.1)}.sl-ring-stachelock-600{--tw-ring-opacity:1;--tw-ring-color:rgb(62 75 154/var(--tw-ring-opacity,1))}.sl-ring-stachelock-600\/10{--tw-ring-color:rgba(62,75,154,.1)}.sl-ring-white{--tw-ring-opacity:1;--tw-ring-color:rgb(255 255 255/var(--tw-ring-opacity,1))}.sl-ring-white\/10{--tw-ring-color:hsla(0,0%,100%,.1)}.sl-ring-yellow-600\/20{--tw-ring-color:rgba(202,138,4,.2)}.sl-ring-opacity-5{--tw-ring-opacity:0.05}.sl-transition{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.sl-transition-\[stroke-dasharray\]{transition-property:stroke-dasharray;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.sl-transition-all{transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.sl-transition-colors{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.sl-transition-opacity{transition-property:opacity;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.sl-duration-100{transition-duration:.1s}.sl-duration-150{transition-duration:.15s}.sl-duration-200{transition-duration:.2s}.sl-duration-300{transition-duration:.3s}.sl-duration-500{transition-duration:.5s}.sl-ease-in{transition-timing-function:cubic-bezier(.4,0,1,1)}.sl-ease-in-out{transition-timing-function:cubic-bezier(.4,0,.2,1)}.sl-ease-linear{transition-timing-function:linear}.sl-ease-out{transition-timing-function:cubic-bezier(0,0,.2,1)}.sl-transition-colors{transition-property:color,background-color,border-color;transition-duration:.2s;transition-timing-function:cubic-bezier(.4,0,.2,1)}.placeholder\:sl-text-gray-400::-moz-placeholder{--tw-text-opacity:1;color:rgb(156 163 175/var(--tw-text-opacity,1))}.placeholder\:sl-text-gray-400::placeholder{--tw-text-opacity:1;color:rgb(156 163 175/var(--tw-text-opacity,1))}.placeholder\:sl-text-stachelock-400\/80::-moz-placeholder{color:rgba(113,126,205,.8)}.placeholder\:sl-text-stachelock-400\/80::placeholder{color:rgba(113,126,205,.8)}.checked\:sl-border-stachelock-600:checked{--tw-border-opacity:1;border-color:rgb(62 75 154/var(--tw-border-opacity,1))}.checked\:sl-bg-stachelock-600:checked{--tw-bg-opacity:1;background-color:rgb(62 75 154/var(--tw-bg-opacity,1))}.indeterminate\:sl-border-stachelock-600:indeterminate{--tw-border-opacity:1;border-color:rgb(62 75 154/var(--tw-border-opacity,1))}.indeterminate\:sl-bg-stachelock-600:indeterminate{--tw-bg-opacity:1;background-color:rgb(62 75 154/var(--tw-bg-opacity,1))}.focus-within\:sl-border-green-500:focus-within{--tw-border-opacity:1;border-color:rgb(34 197 94/var(--tw-border-opacity,1))}.focus-within\:sl-border-red-500:focus-within{--tw-border-opacity:1;border-color:rgb(239 68 68/var(--tw-border-opacity,1))}.focus-within\:sl-border-stachelock-500:focus-within{--tw-border-opacity:1;border-color:rgb(77 94 192/var(--tw-border-opacity,1))}.focus-within\:sl-ring-2:focus-within{--tw-ring-offset-shadow:var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow:var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow,0 0 #0000)}.focus-within\:sl-ring-inset:focus-within{--tw-ring-inset:inset}.focus-within\:sl-ring-green-500:focus-within{--tw-ring-opacity:1;--tw-ring-color:rgb(34 197 94/var(--tw-ring-opacity,1))}.focus-within\:sl-ring-red-500:focus-within{--tw-ring-opacity:1;--tw-ring-color:rgb(239 68 68/var(--tw-ring-opacity,1))}.focus-within\:sl-ring-stachelock-500:focus-within{--tw-ring-opacity:1;--tw-ring-color:rgb(77 94 192/var(--tw-ring-opacity,1))}.focus-within\:sl-ring-stachelock-600:focus-within{--tw-ring-opacity:1;--tw-ring-color:rgb(62 75 154/var(--tw-ring-opacity,1))}.hover\:sl-border-gray-400:hover{--tw-border-opacity:1;border-color:rgb(156 163 175/var(--tw-border-opacity,1))}.hover\:sl-border-gray-800:hover{--tw-border-opacity:1;border-color:rgb(31 41 55/var(--tw-border-opacity,1))}.hover\:sl-border-green-400:hover{--tw-border-opacity:1;border-color:rgb(74 222 128/var(--tw-border-opacity,1))}.hover\:sl-border-red-400:hover{--tw-border-opacity:1;border-color:rgb(248 113 113/var(--tw-border-opacity,1))}.hover\:sl-border-stachelock-400:hover{--tw-border-opacity:1;border-color:rgb(113 126 205/var(--tw-border-opacity,1))}.hover\:sl-border-yellow-400:hover{--tw-border-opacity:1;border-color:rgb(250 204 21/var(--tw-border-opacity,1))}.hover\:sl-bg-blue-100:hover{--tw-bg-opacity:1;background-color:rgb(219 234 254/var(--tw-bg-opacity,1))}.hover\:sl-bg-gray-100:hover{--tw-bg-opacity:1;background-color:rgb(243 244 246/var(--tw-bg-opacity,1))}.hover\:sl-bg-gray-50:hover{--tw-bg-opacity:1;background-color:rgb(249 250 251/var(--tw-bg-opacity,1))}.hover\:sl-bg-gray-800:hover{--tw-bg-opacity:1;background-color:rgb(31 41 55/var(--tw-bg-opacity,1))}.hover\:sl-bg-green-50:hover{--tw-bg-opacity:1;background-color:rgb(240 253 244/var(--tw-bg-opacity,1))}.hover\:sl-bg-green-600:hover{--tw-bg-opacity:1;background-color:rgb(22 163 74/var(--tw-bg-opacity,1))}.hover\:sl-bg-red-50:hover{--tw-bg-opacity:1;background-color:rgb(254 242 242/var(--tw-bg-opacity,1))}.hover\:sl-bg-red-600:hover{--tw-bg-opacity:1;background-color:rgb(220 38 38/var(--tw-bg-opacity,1))}.hover\:sl-bg-stachelock-50:hover{--tw-bg-opacity:1;background-color:rgb(237 239 249/var(--tw-bg-opacity,1))}.hover\:sl-bg-stachelock-600:hover{--tw-bg-opacity:1;background-color:rgb(62 75 154/var(--tw-bg-opacity,1))}.hover\:sl-bg-stachelock-700:hover{--tw-bg-opacity:1;background-color:rgb(46 56 115/var(--tw-bg-opacity,1))}.hover\:sl-bg-white\/10:hover{background-color:hsla(0,0%,100%,.1)}.hover\:sl-bg-yellow-50:hover{--tw-bg-opacity:1;background-color:rgb(254 252 232/var(--tw-bg-opacity,1))}.hover\:sl-bg-yellow-600:hover{--tw-bg-opacity:1;background-color:rgb(202 138 4/var(--tw-bg-opacity,1))}.hover\:sl-text-gray-500:hover{--tw-text-opacity:1;color:rgb(107 114 128/var(--tw-text-opacity,1))}.hover\:sl-text-gray-700:hover{--tw-text-opacity:1;color:rgb(55 65 81/var(--tw-text-opacity,1))}.hover\:sl-text-stachelock-400:hover{--tw-text-opacity:1;color:rgb(113 126 205/var(--tw-text-opacity,1))}.hover\:sl-text-stachelock-600:hover{--tw-text-opacity:1;color:rgb(62 75 154/var(--tw-text-opacity,1))}.hover\:sl-text-white:hover{--tw-text-opacity:1;color:rgb(255 255 255/var(--tw-text-opacity,1))}.focus\:sl-z-10:focus{z-index:10}.focus\:sl-rounded-lg:focus{border-radius:.5rem}.focus\:sl-border-green-500:focus{--tw-border-opacity:1;border-color:rgb(34 197 94/var(--tw-border-opacity,1))}.focus\:sl-border-red-500:focus{--tw-border-opacity:1;border-color:rgb(239 68 68/var(--tw-border-opacity,1))}.focus\:sl-border-stachelock-500:focus{--tw-border-opacity:1;border-color:rgb(77 94 192/var(--tw-border-opacity,1))}.focus\:sl-outline-none:focus{outline:2px solid transparent;outline-offset:2px}.focus\:sl-ring-0:focus{--tw-ring-offset-shadow:var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow:var(--tw-ring-inset) 0 0 0 calc(var(--tw-ring-offset-width)) var(--tw-ring-color)}.focus\:sl-ring-0:focus,.focus\:sl-ring-2:focus{box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow,0 0 #0000)}.focus\:sl-ring-2:focus{--tw-ring-offset-shadow:var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow:var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color)}.focus\:sl-ring-inset:focus{--tw-ring-inset:inset}.focus\:sl-ring-gray-300:focus{--tw-ring-opacity:1;--tw-ring-color:rgb(209 213 219/var(--tw-ring-opacity,1))}.focus\:sl-ring-gray-500:focus{--tw-ring-opacity:1;--tw-ring-color:rgb(107 114 128/var(--tw-ring-opacity,1))}.focus\:sl-ring-green-300:focus{--tw-ring-opacity:1;--tw-ring-color:rgb(134 239 172/var(--tw-ring-opacity,1))}.focus\:sl-ring-green-400:focus{--tw-ring-opacity:1;--tw-ring-color:rgb(74 222 128/var(--tw-ring-opacity,1))}.focus\:sl-ring-green-500:focus{--tw-ring-opacity:1;--tw-ring-color:rgb(34 197 94/var(--tw-ring-opacity,1))}.focus\:sl-ring-red-300:focus{--tw-ring-opacity:1;--tw-ring-color:rgb(252 165 165/var(--tw-ring-opacity,1))}.focus\:sl-ring-red-400:focus{--tw-ring-opacity:1;--tw-ring-color:rgb(248 113 113/var(--tw-ring-opacity,1))}.focus\:sl-ring-red-500:focus{--tw-ring-opacity:1;--tw-ring-color:rgb(239 68 68/var(--tw-ring-opacity,1))}.focus\:sl-ring-red-600:focus{--tw-ring-opacity:1;--tw-ring-color:rgb(220 38 38/var(--tw-ring-opacity,1))}.focus\:sl-ring-stachelock-300:focus{--tw-ring-opacity:1;--tw-ring-color:rgb(148 158 217/var(--tw-ring-opacity,1))}.focus\:sl-ring-stachelock-500:focus{--tw-ring-opacity:1;--tw-ring-color:rgb(77 94 192/var(--tw-ring-opacity,1))}.focus\:sl-ring-stachelock-600:focus{--tw-ring-opacity:1;--tw-ring-color:rgb(62 75 154/var(--tw-ring-opacity,1))}.focus\:sl-ring-yellow-300:focus{--tw-ring-opacity:1;--tw-ring-color:rgb(253 224 71/var(--tw-ring-opacity,1))}.focus\:sl-ring-yellow-400:focus{--tw-ring-opacity:1;--tw-ring-color:rgb(250 204 21/var(--tw-ring-opacity,1))}.focus\:sl-ring-offset-2:focus{--tw-ring-offset-width:2px}.focus\:sl-ring-offset-gray-50:focus{--tw-ring-offset-color:#f9fafb}.focus-visible\:sl-outline:focus-visible{outline-style:solid}.focus-visible\:sl-outline-2:focus-visible{outline-width:2px}.focus-visible\:sl-outline-offset-2:focus-visible{outline-offset:2px}.focus-visible\:sl-outline-stachelock-600:focus-visible{outline-color:#3e4b9a}.disabled\:sl-border-gray-300:disabled{--tw-border-opacity:1;border-color:rgb(209 213 219/var(--tw-border-opacity,1))}.disabled\:checked\:sl-bg-gray-100:checked:disabled,.disabled\:sl-bg-gray-100:disabled{--tw-bg-opacity:1;background-color:rgb(243 244 246/var(--tw-bg-opacity,1))}.sl-group:hover .group-hover\:sl-text-blue-700{--tw-text-opacity:1;color:rgb(29 78 216/var(--tw-text-opacity,1))}.sl-group:has(:checked) .group-has-\[\:checked\]\:sl-opacity-100{opacity:1}.sl-group:has(:indeterminate) .group-has-\[\:indeterminate\]\:sl-opacity-100{opacity:1}.dark\:sl-bg-gray-700:is(.sl-dark *){--tw-bg-opacity:1;background-color:rgb(55 65 81/var(--tw-bg-opacity,1))}.dark\:sl-bg-gray-900:is(.sl-dark *){--tw-bg-opacity:1;background-color:rgb(17 24 39/var(--tw-bg-opacity,1))}.dark\:sl-bg-opacity-75:is(.sl-dark *){--tw-bg-opacity:0.75}@media (min-width:640px){.sm\:sl--mx-6{margin-left:-1.5rem;margin-right:-1.5rem}.sm\:sl-mx-0{margin-left:0;margin-right:0}.sm\:sl-ml-16{margin-left:4rem}.sm\:sl-ml-4{margin-left:1rem}.sm\:sl-mt-0{margin-top:0}.sm\:sl-flex{display:flex}.sm\:sl-grid{display:grid}.sm\:sl-hidden{display:none}.sm\:sl-h-10{height:2.5rem}.sm\:sl-w-10{width:2.5rem}.sm\:sl-max-w-none{max-width:none}.sm\:sl-flex-auto{flex:1 1 auto}.sm\:sl-flex-none{flex:none}.sm\:sl-grid-cols-7{grid-template-columns:repeat(7,minmax(0,1fr))}.sm\:sl-flex-row-reverse{flex-direction:row-reverse}.sm\:sl-items-start{align-items:flex-start}.sm\:sl-items-center{align-items:center}.sm\:sl-gap-x-6{-moz-column-gap:1.5rem;column-gap:1.5rem}.sm\:sl-space-x-8>:not([hidden])~:not([hidden]){--tw-space-x-reverse:0;margin-right:calc(2rem*var(--tw-space-x-reverse));margin-left:calc(2rem*(1 - var(--tw-space-x-reverse)))}.sm\:sl-self-stretch{align-self:stretch}.sm\:sl-rounded-lg{border-radius:.5rem}.sm\:sl-p-6{padding:1.5rem}.sm\:sl-px-14{padding-left:3.5rem;padding-right:3.5rem}.sm\:sl-px-6{padding-left:1.5rem;padding-right:1.5rem}.sm\:sl-py-12{padding-top:3rem;padding-bottom:3rem}.sm\:sl-py-32{padding-top:8rem;padding-bottom:8rem}.sm\:sl-pb-4{padding-bottom:1rem}.sm\:sl-pr-8{padding-right:2rem}.sm\:sl-pt-16{padding-top:4rem}.sm\:sl-text-left{text-align:left}.sm\:sl-text-6xl{font-size:3.75rem;line-height:1}.sm\:sl-text-sm{font-size:.875rem;line-height:1.25rem}.sm\:sl-leading-6{line-height:1.5rem}}@media (min-width:768px){.md\:sl-block{display:block}.md\:sl-hidden{display:none}.md\:sl-max-w-full{max-width:100%}.md\:sl-grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.md\:sl-rounded-lg{border-radius:.5rem}.md\:sl-px-6{padding-left:1.5rem;padding-right:1.5rem}}@media (min-width:1024px){.lg\:sl-fixed{position:fixed}.lg\:sl-inset-y-0{top:0;bottom:0}.lg\:sl-left-0{left:0}.lg\:sl-z-50{z-index:50}.lg\:sl-col-span-7{grid-column:span 7/span 7}.lg\:sl-col-start-8{grid-column-start:8}.lg\:sl-col-end-13{grid-column-end:13}.lg\:sl-row-start-1{grid-row-start:1}.lg\:sl--mx-8{margin-left:-2rem;margin-right:-2rem}.lg\:sl-mx-0{margin-left:0;margin-right:0}.lg\:sl-mx-12{margin-right:3rem}.lg\:sl-ml-12,.lg\:sl-mx-12{margin-left:3rem}.lg\:sl-mt-9{margin-top:2.25rem}.lg\:sl-block{display:block}.lg\:sl-flex{display:flex}.lg\:sl-grid{display:grid}.lg\:sl-hidden{display:none}.lg\:sl-h-16{height:4rem}.lg\:sl-h-full{height:100%}.lg\:sl-w-16{width:4rem}.lg\:sl-w-20{width:5rem}.lg\:sl-w-64{width:16rem}.lg\:sl-w-72{width:18rem}.lg\:sl-grid-cols-12{grid-template-columns:repeat(12,minmax(0,1fr))}.lg\:sl-grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.lg\:sl-items-center{align-items:center}.lg\:sl-justify-start{justify-content:flex-start}.lg\:sl-gap-x-6{-moz-column-gap:1.5rem;column-gap:1.5rem}.lg\:sl-gap-x-8{-moz-column-gap:2rem;column-gap:2rem}.lg\:sl-border-l{border-left-width:1px}.lg\:sl-border-gray-100{--tw-border-opacity:1;border-color:rgb(243 244 246/var(--tw-border-opacity,1))}.lg\:sl-px-8{padding-left:2rem;padding-right:2rem}.lg\:sl-pb-4{padding-bottom:1rem}.lg\:sl-pl-16{padding-left:4rem}.lg\:sl-pl-20{padding-left:5rem}.lg\:sl-pl-64{padding-left:16rem}.lg\:sl-pl-72{padding-left:18rem}.lg\:sl-pl-8{padding-left:2rem}}@media (min-width:1280px){.xl\:sl-col-span-8{grid-column:span 8/span 8}.xl\:sl-col-start-9{grid-column-start:9}.xl\:sl-col-end-13{grid-column-end:13}.xl\:sl-ml-3\.5{margin-left:.875rem}.xl\:sl-mt-0{margin-top:0}.xl\:sl-grid{display:grid}.xl\:sl-hidden{display:none}.xl\:sl-flex-row{flex-direction:row}.xl\:sl-border-l{border-left-width:1px}.xl\:sl-border-gray-400{--tw-border-opacity:1;border-color:rgb(156 163 175/var(--tw-border-opacity,1))}.xl\:sl-border-opacity-50{--tw-border-opacity:0.5}.xl\:sl-pl-3\.5{padding-left:.875rem}}
|
package/package.json
CHANGED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"DashboardLayout.vue_vue_type_script_setup_true_lang-BVQR4s1E.js","sources":["../src/components/layouts/DashboardLayout.vue"],"sourcesContent":["<template>\n <div class=\"sl-min-h-screen sl-bg-gray-50\">\n <!-- Mobile sidebar overlay -->\n <TransitionRoot as=\"template\" :show=\"sidebarOpen\">\n <Dialog as=\"div\" class=\"sl-relative sl-z-50 lg:sl-hidden\" @close=\"closeSidebar\">\n <TransitionChild as=\"template\" enter=\"sl-transition-opacity sl-ease-linear sl-duration-300\" enter-from=\"sl-opacity-0\"\n enter-to=\"sl-opacity-100\" leave=\"sl-transition-opacity sl-ease-linear sl-duration-300\" leave-from=\"sl-opacity-100\"\n leave-to=\"sl-opacity-0\">\n <div class=\"sl-fixed sl-inset-0 sl-bg-gray-900/80\" />\n </TransitionChild>\n\n <div class=\"sl-fixed sl-inset-0 sl-flex\">\n <TransitionChild as=\"template\" enter=\"sl-transition sl-ease-in-out sl-duration-300 sl-transform\"\n enter-from=\"-sl-translate-x-full\" enter-to=\"sl-translate-x-0\"\n leave=\"sl-transition sl-ease-in-out sl-duration-300 sl-transform\" leave-from=\"sl-translate-x-0\"\n leave-to=\"-sl-translate-x-full\">\n <DialogPanel class=\"sl-relative sl-mr-16 sl-flex sl-w-full sl-max-w-xs sl-flex-1\">\n <TransitionChild as=\"template\" enter=\"sl-ease-in-out sl-duration-300\" enter-from=\"sl-opacity-0\"\n enter-to=\"sl-opacity-100\" leave=\"sl-ease-in-out sl-duration-300\" leave-from=\"sl-opacity-100\" leave-to=\"sl-opacity-0\">\n <div class=\"sl-absolute sl-left-full sl-top-0 sl-flex sl-w-16 sl-justify-center sl-pt-5\">\n <button type=\"button\" class=\"-sl-m-2.5 sl-p-2.5\" @click=\"closeSidebar()\">\n <span class=\"sl-sr-only\">Close sidebar</span>\n <XMarkIcon class=\"sl-h-6 sl-w-6 sl-text-stachelock-050\" aria-hidden=\"true\" />\n </button>\n </div>\n </TransitionChild>\n\n <div class=\"sl-flex sl-grow sl-flex-col sl-gap-y-5 sl-bg-stachelock-600 sl-px-6 sl-pb-2 sl-ring-1 sl-ring-white/10\">\n <div class=\"sl-flex sl-h-16 sl-shrink-0 sl-items-center\">\n <slot name=\"logo\">\n <div class=\"sl-text-stachelock-050 sl-font-semibold sl-text-lg\">Logo</div>\n </slot>\n </div>\n <nav class=\"sl-flex sl-flex-1 sl-flex-col\">\n <ul role=\"list\" class=\"-sl-mx-2 sl-flex-1 sl-space-y-1\">\n <slot name=\"navigation\">\n <!-- Default navigation slot -->\n </slot>\n </ul>\n </nav>\n <div class=\"sl-mt-auto\">\n <slot name=\"sidebar-footer\">\n <!-- Sidebar footer content -->\n </slot>\n </div>\n </div>\n </DialogPanel>\n </TransitionChild>\n </div>\n </Dialog>\n </TransitionRoot>\n\n <!-- Desktop sidebar -->\n <div\n class=\"sl-hidden lg:sl-fixed lg:sl-inset-y-0 lg:sl-left-0 lg:sl-z-50 lg:sl-block lg:sl-pb-4 sl-pt-4 lg:sl-bg-stachelock-600\"\n :class=\"isWide ? 'lg:sl-w-64' : 'lg:sl-w-16'\">\n <div class=\"sl-flex sl-h-16 sl-shrink-0 sl-items-center sl-px-6\">\n <slot name=\"logo\">\n <div v-if=\"isWide\" class=\"sl-text-stachelock-050 sl-font-semibold sl-text-lg\">Logo</div>\n <div v-else class=\"sl-flex sl-items-center sl-justify-center sl-w-full\">\n <div class=\"sl-w-8 sl-h-8 sl-bg-white sl-rounded-lg sl-flex sl-items-center sl-justify-center\">\n <span class=\"sl-text-stachelock-600 sl-font-bold sl-text-sm\">P</span>\n </div>\n </div>\n </slot>\n </div>\n <nav class=\"sl-mt-8 sl-flex sl-flex-col sl-justify-between sl-h-full\">\n <ul role=\"list\"\n :class=\"isWide ? 'sl-flex sl-flex-col sl-items-start sl-mx-4 sl-space-y-1' : 'sl-flex sl-flex-col sl-items-center sl-space-y-1'\">\n <slot name=\"navigation\" :icon-only=\"!isWide\">\n <!-- Default navigation slot -->\n </slot>\n </ul>\n <div class=\"sl-absolute sl-bottom-4 sl-left-0 sl-right-0 sl-px-6\">\n <slot name=\"sidebar-footer\" :icon-only=\"!isWide\">\n <!-- Sidebar footer content -->\n </slot>\n </div>\n </nav>\n </div>\n\n <!-- Main content area -->\n <div :class=\"['lg:sl-pl-16', isWide ? 'lg:sl-pl-64' : 'lg:sl-pl-16']\">\n <!-- Header -->\n <div\n class=\"sl-sticky sl-top-0 sl-z-40 sl-flex sl-h-16 sl-shrink-0 sl-items-center sl-gap-x-4 sl-border-b sl-border-gray-200 sl-bg-white sl-px-4 sl-shadow-sm sm:sl-gap-x-6 sm:sl-px-6 lg:sl-px-8\">\n <button type=\"button\" class=\"-sl-m-2.5 sl-p-2.5 sl-text-gray-700 lg:sl-hidden\" @click=\"openSidebar()\">\n <span class=\"sl-sr-only\">Open sidebar</span>\n <Bars3Icon class=\"sl-h-6 sl-w-6\" aria-hidden=\"true\" />\n </button>\n\n <!-- Separator -->\n <div class=\"sl-h-6 sl-w-px sl-bg-gray-900/10 lg:sl-hidden\" aria-hidden=\"true\" />\n\n <div class=\"sl-flex sl-flex-1 sl-gap-x-4 sm:sl-self-stretch lg:sl-gap-x-6\">\n <div class=\"sl-relative sl-flex sl-flex-1\">\n <slot name=\"header-content\">\n <!-- Header content -->\n </slot>\n </div>\n <div class=\"sl-flex sl-items-center sl-gap-x-4 lg:sl-gap-x-6\">\n <!-- Sidebar toggle button -->\n <button \n type=\"button\" \n class=\"sl-hidden lg:sl-flex sl-items-center sl-justify-center sl-w-8 sl-h-8 sl-rounded-md sl-text-gray-400 hover:sl-text-gray-500 hover:sl-bg-gray-100\"\n @click=\"toggleSidebar\"\n :title=\"isWide ? 'Collapse sidebar' : 'Expand sidebar'\"\n >\n <svg class=\"sl-w-5 sl-h-5\" fill=\"none\" stroke=\"currentColor\" viewBox=\"0 0 24 24\">\n <path v-if=\"isWide\" stroke-linecap=\"round\" stroke-linejoin=\"round\" stroke-width=\"2\" d=\"M11 19l-7-7 7-7m8 14l-7-7 7-7\" />\n <path v-else stroke-linecap=\"round\" stroke-linejoin=\"round\" stroke-width=\"2\" d=\"M13 5l7 7-7 7M5 5l7 7-7 7\" />\n </svg>\n </button>\n \n <slot name=\"header-right\">\n <!-- Header right content (notifications, profile, etc.) -->\n </slot>\n </div>\n </div>\n </div>\n\n <!-- Page header -->\n <div v-if=\"$slots['page-header']\" class=\"sl-border-b sl-border-gray-200 sl-bg-white sl-px-4 sl-py-6 sm:sl-px-6 lg:sl-px-8\">\n <slot name=\"page-header\">\n <!-- Page header content -->\n </slot>\n </div>\n\n <!-- Main content -->\n <main class=\"sl-px-4 sm:sl-px-6 lg:sl-px-8 sl-py-6\">\n <slot name=\"main\">\n <!-- Main content slot -->\n </slot>\n </main>\n\n <!-- Footer -->\n <footer v-if=\"$slots.footer\" class=\"sl-border-t sl-border-gray-200 sl-bg-white sl-px-4 sl-py-6 sm:sl-px-6 lg:sl-px-8\">\n <slot name=\"footer\">\n <!-- Footer content -->\n </slot>\n </footer>\n </div>\n </div>\n</template>\n\n<script setup lang=\"ts\">\nimport { ref } from 'vue';\nimport { Dialog, DialogPanel, TransitionChild, TransitionRoot } from '@headlessui/vue';\nimport { Bars3Icon, XMarkIcon } from '@heroicons/vue/24/outline';\n\nconst props = defineProps({\n isNarrowSidebar: {\n type: Boolean,\n default: false\n }\n});\n\nconst emit = defineEmits(['sidebar-toggle']);\n\nconst sidebarOpen = ref(false);\nconst isWide = ref(!props.isNarrowSidebar);\n\nconst closeSidebar = () => {\n sidebarOpen.value = false;\n};\n\nconst openSidebar = () => {\n sidebarOpen.value = true;\n};\n\nconst toggleSidebar = () => {\n isWide.value = !isWide.value;\n emit('sidebar-toggle', isWide.value);\n};\n</script>\n\n<style scoped>\n</style>\n"],"names":["props","__props","emit","__emit","sidebarOpen","ref","isWide","closeSidebar","openSidebar","toggleSidebar","_openBlock","_createElementBlock","_hoisted_1","_createVNode","_unref","TransitionRoot","Dialog","TransitionChild","_cache","_createElementVNode","_hoisted_2","DialogPanel","_hoisted_3","XMarkIcon","_hoisted_4","_hoisted_5","_renderSlot","_ctx","_hoisted_6","_hoisted_7","_hoisted_8","_normalizeClass","_hoisted_9","_hoisted_10","_hoisted_11","_hoisted_12","_hoisted_13","_hoisted_14","Bars3Icon","_hoisted_15","_hoisted_16","_hoisted_17","_hoisted_19","_hoisted_20","_hoisted_21","$slots","_hoisted_22","_hoisted_23","_hoisted_24"],"mappings":"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"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"NavigationGroup.vue_vue_type_script_setup_true_lang-2WURj34G.js","sources":["../src/components/layouts/NavigationGroup.vue"],"sourcesContent":["<template>\n <div class=\"sl-space-y-1\">\n <!-- Group header -->\n <h3 v-if=\"title\" :class=\"[\n 'sl-px-3 sl-py-2 sl-text-xs sl-font-semibold sl-text-stachelock-050 sl-uppercase sl-tracking-wider',\n iconOnly ? 'sl-text-center' : ''\n ]\">\n {{ title }}\n </h3>\n \n <!-- Navigation items -->\n <ul role=\"list\" class=\"sl-space-y-1\">\n <slot>\n <!-- Default navigation items slot -->\n </slot>\n </ul>\n </div>\n</template>\n\n<script setup lang=\"ts\">\ndefineProps<{\n title?: string;\n iconOnly?: boolean;\n}>();\n</script>\n\n<style scoped>\n</style>\n"],"names":["_openBlock","_createElementBlock","_hoisted_1","title","_normalizeClass","iconOnly","_createElementVNode","_hoisted_2","_renderSlot","_ctx"],"mappings":";;;;;;;;;;;sBACEA,EAAA,GAAAC,EAeM,OAfNC,GAeM;AAAA,MAbMC,EAAAA,cAAVF,EAKK,MAAA;AAAA;QALa,OAAKG,EAAA;AAAA;UAAqHC,EAAAA,WAAQ,mBAAA;AAAA,QAAA;WAI/IF,EAAAA,KAAK,GAAA,CAAA;MAIVG,EAIK,MAJLC,GAIK;AAAA,QAHHC,EAEOC,EAAA,QAAA,SAAA;AAAA,MAAA;;;;"}
|
|
@@ -1,51 +0,0 @@
|
|
|
1
|
-
import { defineComponent as n, createElementBlock as l, openBlock as s, createElementVNode as r, normalizeClass as t, createBlock as i, createCommentVNode as a, resolveDynamicComponent as c, toDisplayString as o } from "vue";
|
|
2
|
-
const h = ["href"], m = {
|
|
3
|
-
key: 0,
|
|
4
|
-
class: "sl-truncate"
|
|
5
|
-
}, b = /* @__PURE__ */ n({
|
|
6
|
-
__name: "NavigationItem",
|
|
7
|
-
props: {
|
|
8
|
-
name: {},
|
|
9
|
-
href: {},
|
|
10
|
-
icon: {},
|
|
11
|
-
isActive: { type: Boolean },
|
|
12
|
-
iconOnly: { type: Boolean },
|
|
13
|
-
badge: {},
|
|
14
|
-
badgeTheme: {}
|
|
15
|
-
},
|
|
16
|
-
setup(d) {
|
|
17
|
-
return (e, g) => (s(), l("li", null, [
|
|
18
|
-
r("a", {
|
|
19
|
-
href: e.href,
|
|
20
|
-
class: t([
|
|
21
|
-
"sl-group sl-flex sl-gap-x-3 sl-rounded-md sl-p-2 sl-text-sm sl-leading-6 sl-font-semibold",
|
|
22
|
-
e.isActive ? "sl-bg-stachelock-400 sl-text-stachelock-050" : "sl-text-stachelock-300 hover:sl-text-stachelock-050 hover:sl-bg-white/10"
|
|
23
|
-
])
|
|
24
|
-
}, [
|
|
25
|
-
(s(), i(c(e.icon), {
|
|
26
|
-
class: t([
|
|
27
|
-
"sl-h-6 sl-w-6 sl-shrink-0",
|
|
28
|
-
e.isActive ? "sl-text-stachelock-050" : "sl-text-stachelock-300 group-hover:sl-text-stachelock-050"
|
|
29
|
-
]),
|
|
30
|
-
"aria-hidden": "true"
|
|
31
|
-
}, null, 8, ["class"])),
|
|
32
|
-
e.iconOnly ? a("", !0) : (s(), l("span", m, o(e.name), 1)),
|
|
33
|
-
e.badge ? (s(), l("span", {
|
|
34
|
-
key: 1,
|
|
35
|
-
class: t([
|
|
36
|
-
"sl-ml-auto sl-inline-flex sl-items-center sl-rounded-md sl-px-2 sl-py-1 sl-text-xs sl-font-medium",
|
|
37
|
-
e.badgeTheme === "primary" ? "sl-bg-stachelock-400 sl-text-white" : "",
|
|
38
|
-
e.badgeTheme === "secondary" ? "sl-bg-gray-400 sl-text-white" : "",
|
|
39
|
-
e.badgeTheme === "success" ? "sl-bg-green-400 sl-text-white" : "",
|
|
40
|
-
e.badgeTheme === "warning" ? "sl-bg-yellow-400 sl-text-white" : "",
|
|
41
|
-
e.badgeTheme === "danger" ? "sl-bg-red-400 sl-text-white" : ""
|
|
42
|
-
])
|
|
43
|
-
}, o(e.badge), 3)) : a("", !0)
|
|
44
|
-
], 10, h)
|
|
45
|
-
]));
|
|
46
|
-
}
|
|
47
|
-
});
|
|
48
|
-
export {
|
|
49
|
-
b as _
|
|
50
|
-
};
|
|
51
|
-
//# sourceMappingURL=NavigationItem.vue_vue_type_script_setup_true_lang-DiNg3gz2.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"NavigationItem.vue_vue_type_script_setup_true_lang-DiNg3gz2.js","sources":["../src/components/layouts/NavigationItem.vue"],"sourcesContent":["<template>\n <li>\n <a :href=\"href\" :class=\"[\n 'sl-group sl-flex sl-gap-x-3 sl-rounded-md sl-p-2 sl-text-sm sl-leading-6 sl-font-semibold',\n isActive \n ? 'sl-bg-stachelock-400 sl-text-stachelock-050' \n : 'sl-text-stachelock-300 hover:sl-text-stachelock-050 hover:sl-bg-white/10'\n ]\">\n <component \n :is=\"icon\" \n :class=\"[\n 'sl-h-6 sl-w-6 sl-shrink-0',\n isActive \n ? 'sl-text-stachelock-050' \n : 'sl-text-stachelock-300 group-hover:sl-text-stachelock-050'\n ]\" \n aria-hidden=\"true\" \n />\n <span v-if=\"!iconOnly\" class=\"sl-truncate\">{{ name }}</span>\n <span v-if=\"badge\" :class=\"[\n 'sl-ml-auto sl-inline-flex sl-items-center sl-rounded-md sl-px-2 sl-py-1 sl-text-xs sl-font-medium',\n badgeTheme === 'primary' ? 'sl-bg-stachelock-400 sl-text-white' : '',\n badgeTheme === 'secondary' ? 'sl-bg-gray-400 sl-text-white' : '',\n badgeTheme === 'success' ? 'sl-bg-green-400 sl-text-white' : '',\n badgeTheme === 'warning' ? 'sl-bg-yellow-400 sl-text-white' : '',\n badgeTheme === 'danger' ? 'sl-bg-red-400 sl-text-white' : ''\n ]\">\n {{ badge }}\n </span>\n </a>\n </li>\n</template>\n\n<script setup lang=\"ts\">\nimport type { Component } from 'vue';\n\ndefineProps<{\n name: string;\n href: string;\n icon: Component;\n isActive?: boolean;\n iconOnly?: boolean;\n badge?: string;\n badgeTheme?: 'primary' | 'secondary' | 'success' | 'warning' | 'danger';\n}>();\n</script>\n\n<style scoped>\n</style>\n"],"names":["_createElementBlock","_createElementVNode","href","_normalizeClass","isActive","_openBlock","_createBlock","_resolveDynamicComponent","icon","iconOnly","_hoisted_2","_toDisplayString","name","badge","badgeTheme"],"mappings":";;;;;;;;;;;;;;;;2BACEA,EA6BK,MAAA,MAAA;AAAA,MA5BHC,EA2BI,KAAA;AAAA,QA3BA,MAAMC,EAAAA;AAAAA,QAAO,OAAKC,EAAA;AAAA;UAA6GC,EAAAA;;;SAMjIC,KAAAC,EASEC,EARKC,EAAAA,IAAI,GAAA;AAAA,UACR,OAAKL,EAAA;AAAA;YAA6DC,EAAAA;;UAMnE,eAAY;AAAA,QAAA;QAEDK,EAAAA,6BAAbT,EAA4D,QAA5DU,GAA4DC,EAAdC,EAAAA,IAAI,GAAA,CAAA;AAAA,QACtCC,EAAAA,cAAZb,EASO,QAAA;AAAA;UATa,OAAKG,EAAA;AAAA;YAAyHW,EAAAA,eAAU,YAAA,uCAAA;AAAA,YAAoEA,EAAAA,eAAU,cAAA,iCAAA;AAAA,YAAgEA,EAAAA,eAAU,YAAA,kCAAA;AAAA,YAA+DA,EAAAA,eAAU,YAAA,mCAAA;AAAA,YAAgEA,EAAAA,eAAU,WAAA,gCAAA;AAAA,UAAA;aAQlcD,EAAAA,KAAK,GAAA,CAAA;;;;;"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"SidebarLayout.vue_vue_type_script_setup_true_lang-J1nfUTdM.js","sources":["../src/components/layouts/SidebarLayout.vue"],"sourcesContent":["<template>\n <div class=\"sl-relative\">\n <!-- Mobile sidebar overlay -->\n <TransitionRoot as=\"template\" :show=\"sidebarOpen\">\n <Dialog as=\"div\" class=\"sl-relative sl-z-50 lg:sl-hidden\" @close=\"closeSidebar\">\n <TransitionChild as=\"template\" enter=\"sl-transition-opacity sl-ease-linear sl-duration-300\"\n enter-from=\"sl-opacity-0\" enter-to=\"sl-opacity-100\"\n leave=\"sl-transition-opacity sl-ease-linear sl-duration-300\" leave-from=\"sl-opacity-100\"\n leave-to=\"sl-opacity-0\">\n <div class=\"sl-fixed sl-inset-0 sl-bg-gray-900/80\" />\n </TransitionChild>\n\n <div class=\"sl-fixed sl-inset-0 sl-flex\">\n <TransitionChild as=\"template\" enter=\"sl-transition sl-ease-in-out sl-duration-300 sl-transform\"\n enter-from=\"-sl-translate-x-full\" enter-to=\"sl-translate-x-0\"\n leave=\"sl-transition sl-ease-in-out sl-duration-300 sl-transform\" leave-from=\"sl-translate-x-0\"\n leave-to=\"-sl-translate-x-full\">\n <DialogPanel class=\"sl-relative sl-mr-16 sl-flex sl-w-full sl-max-w-xs sl-flex-1\">\n <TransitionChild as=\"template\" enter=\"sl-ease-in-out sl-duration-300\" enter-from=\"sl-opacity-0\"\n enter-to=\"sl-opacity-100\" leave=\"sl-ease-in-out sl-duration-300\" leave-from=\"sl-opacity-100\"\n leave-to=\"sl-opacity-0\">\n <div class=\"sl-absolute sl-left-full sl-top-0 sl-flex sl-w-16 sl-justify-center sl-pt-5\">\n <button type=\"button\" class=\"-sl-m-2.5 sl-p-2.5\" @click=\"closeSidebar()\">\n <span class=\"sl-sr-only\">Close sidebar</span>\n <XMarkIcon class=\"sl-h-6 sl-w-6 sl-text-stachelock-050\" aria-hidden=\"true\" />\n </button>\n </div>\n </TransitionChild>\n\n <div\n class=\"sl-flex sl-grow sl-flex-col sl-gap-y-5 sl-bg-stachelock-600 sl-px-6 sl-pb-2 sl-ring-1 sl-ring-white/10\">\n <div class=\"sl-flex sl-h-16 sl-shrink-0 sl-items-center\">\n <slot name=\"logo\">\n <div class=\"sl-text-stachelock-050 sl-font-semibold sl-text-lg\">Logo</div>\n </slot>\n </div>\n <nav class=\"sl-flex sl-flex-1 sl-flex-col\">\n <ul role=\"list\" class=\"-sl-mx-2 sl-flex-1 sl-space-y-1\">\n <slot name=\"navigation\">\n <!-- Default navigation slot -->\n </slot>\n </ul>\n </nav>\n <div class=\"sl-mt-auto\">\n <slot name=\"sidebar-footer\">\n <!-- Sidebar footer content -->\n </slot>\n </div>\n </div>\n </DialogPanel>\n </TransitionChild>\n </div>\n </Dialog>\n </TransitionRoot>\n\n <!-- Desktop sidebar -->\n <div\n class=\"sl-hidden lg:sl-fixed lg:sl-inset-y-0 lg:sl-left-0 lg:sl-z-50 lg:sl-block lg:sl-pb-4 sl-pt-4 lg:sl-bg-stachelock-600\"\n :class=\"isWideSidebar ? 'lg:sl-w-72' : 'lg:sl-w-20'\">\n <div class=\"sl-flex sl-h-16 sl-shrink-0 sl-items-center sl-px-6\">\n <slot name=\"logo\">\n <div class=\"sl-text-stachelock-050 sl-font-semibold sl-text-lg\">Logo</div>\n </slot>\n </div>\n <nav class=\"sl-mt-8 sl-flex sl-flex-col sl-justify-between sl-h-full\">\n <ul role=\"list\"\n :class=\"isWideSidebar ? 'sl-flex sl-flex-col sl-items-start sl-mx-4 sl-space-y-1' : 'sl-flex sl-flex-col sl-items-center sl-space-y-1'\">\n <slot name=\"navigation\">\n <!-- Default navigation slot -->\n </slot>\n </ul>\n <div class=\"sl-absolute sl-bottom-4 sl-left-0 sl-right-0 sl-px-6\">\n <slot name=\"sidebar-footer\">\n <!-- Sidebar footer content -->\n </slot>\n </div>\n </nav>\n </div>\n\n <!-- Main content area -->\n <div :class=\"['lg:sl-pl-20', isWideSidebar ? 'lg:sl-pl-72' : 'lg:sl-pl-20']\">\n <!-- Header -->\n <div\n class=\"sl-sticky sl-top-0 sl-z-40 sl-flex sl-h-16 sl-shrink-0 sl-items-center sl-gap-x-4 sl-border-b sl-border-gray-200 sl-bg-white sl-px-4 sl-shadow-sm sm:sl-gap-x-6 sm:sl-px-6 lg:sl-px-8\">\n <button type=\"button\" class=\"-sl-m-2.5 sl-p-2.5 sl-text-gray-700 lg:sl-hidden\" @click=\"openSidebar()\">\n <span class=\"sl-sr-only\">Open sidebar</span>\n <Bars3Icon class=\"sl-h-6 sl-w-6\" aria-hidden=\"true\" />\n </button>\n\n <!-- Separator -->\n <div class=\"sl-h-6 sl-w-px sl-bg-gray-900/10 lg:sl-hidden\" aria-hidden=\"true\" />\n\n <div class=\"sl-flex sl-flex-1 sl-gap-x-4 sm:sl-self-stretch lg:sl-gap-x-6\">\n <div class=\"sl-relative sl-flex sl-flex-1\">\n <slot name=\"header-content\">\n <!-- Header content -->\n </slot>\n </div>\n <div class=\"sl-flex sl-items-center sl-gap-x-4 lg:sl-gap-x-6\">\n <slot name=\"header-right\">\n <!-- Header right content (notifications, profile, etc.) -->\n </slot>\n </div>\n </div>\n </div>\n\n <!-- Main content -->\n <main class=\"sl-px-4 sm:sl-px-6 lg:sl-px-8 sl-py-6\">\n <slot name=\"main\">\n <!-- Main content slot -->\n </slot>\n </main>\n </div>\n </div>\n</template>\n\n<script setup lang=\"ts\">\nimport { ref } from 'vue';\nimport { Dialog, DialogPanel, TransitionChild, TransitionRoot } from '@headlessui/vue';\nimport { Bars3Icon, XMarkIcon } from '@heroicons/vue/24/outline';\n\ndefineProps({\n isWideSidebar: {\n type: Boolean,\n default: false\n }\n});\n\nconst sidebarOpen = ref(false);\n\nconst closeSidebar = () => {\n sidebarOpen.value = false;\n};\n\nconst openSidebar = () => {\n sidebarOpen.value = true;\n};\n</script>\n\n<style scoped></style>\n"],"names":["sidebarOpen","ref","closeSidebar","openSidebar","_openBlock","_createElementBlock","_hoisted_1","_createVNode","_unref","TransitionRoot","Dialog","TransitionChild","_cache","_createElementVNode","_hoisted_2","DialogPanel","_hoisted_3","XMarkIcon","_hoisted_4","_hoisted_5","_renderSlot","_ctx","_hoisted_6","_hoisted_7","_hoisted_8","_normalizeClass","__props","_hoisted_9","_hoisted_10","_hoisted_11","_hoisted_12","Bars3Icon","_hoisted_13","_hoisted_14","_hoisted_15","_hoisted_16"],"mappings":"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"}
|