@kreavoks/kreaui 0.0.5 → 0.1.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/lib/kreaui.css +1 -1
- package/lib/kreaui.es.js +304 -64
- package/lib/kreaui.umd.js +1 -1
- package/package.json +1 -1
package/lib/kreaui.css
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
.fade-enter-active[data-v-
|
|
1
|
+
.fade-enter-active[data-v-4b55fce4],.fade-leave-active[data-v-4b55fce4]{transition:opacity .2s,transform .2s}.fade-enter-from[data-v-4b55fce4],.fade-leave-to[data-v-4b55fce4]{opacity:0;transform:scale(.98)}.krea-dropdown-wrapper[data-v-948716a5]{display:inline-block;position:relative}.krea-dropdown-popover[data-v-948716a5]{z-index:50;background:#fff;border:1px solid #e2e8f0;border-radius:12px;flex-direction:column;gap:2px;min-width:14rem;padding:4px;animation:.12s cubic-bezier(.16,1,.3,1) krea-dropdown-in-948716a5;display:flex;position:absolute;top:calc(100% + 8px)}@keyframes krea-dropdown-in-948716a5{0%{opacity:0;transform:scale(.96)translateY(-4px)}to{opacity:1;transform:scale(1)translateY(0)}}:where([data-theme=dark],[data-theme=dark] *) .krea-dropdown-popover[data-v-948716a5]{background:#18181b;border-color:#27272a}.krea-dropdown-divider[data-v-948716a5]{background:#f1f5f9;height:1px;margin:4px 0}:where([data-theme=dark],[data-theme=dark] *) .krea-dropdown-divider[data-v-948716a5]{background:#27272a}.krea-dropdown-item[data-v-948716a5]{color:#334155;cursor:pointer;background:0 0;border:none;border-radius:8px;justify-content:space-between;align-items:center;width:100%;padding:8px 12px;font-size:.875rem;font-weight:500;transition:background-color .15s,color .15s;display:flex}.krea-dropdown-item[data-v-948716a5]:hover{background:#f1f5f9}:where([data-theme=dark],[data-theme=dark] *) .krea-dropdown-item[data-v-948716a5]{color:#e2e8f0}:where([data-theme=dark],[data-theme=dark] *) .krea-dropdown-item[data-v-948716a5]:hover{background:#27272a}.krea-dropdown-item[data-v-948716a5]:disabled{pointer-events:none;opacity:.4}.krea-dropdown-item--active[data-v-948716a5]{color:#4082e6;background:#eff6ff;font-weight:600}:where([data-theme=dark],[data-theme=dark] *) .krea-dropdown-item--active[data-v-948716a5]{color:#4082e6;background:#4082e626}.krea-dropdown-item--active[data-v-948716a5]:hover{background:#dbeafe}:where([data-theme=dark],[data-theme=dark] *) .krea-dropdown-item--active[data-v-948716a5]:hover{background:#4082e640}.krea-dropdown-item--danger[data-v-948716a5]{color:#f43f5e}.krea-dropdown-item--danger[data-v-948716a5]:hover{background:#fff1f2}:where([data-theme=dark],[data-theme=dark] *) .krea-dropdown-item--danger[data-v-948716a5]:hover{background:#f43f5e26}
|
|
2
2
|
/*$vite$:1*/
|
package/lib/kreaui.es.js
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { Fragment as e, Transition as t, computed as n, createBlock as r, createCommentVNode as i, createElementBlock as a, createElementVNode as o, createTextVNode as s, createVNode as c, defineComponent as l, normalizeClass as u, normalizeStyle as d, onMounted as f, onUnmounted as p, openBlock as m, ref as h, renderList as g, renderSlot as _, resolveDynamicComponent as v, toDisplayString as y, unref as b, vShow as x, withCtx as S, withDirectives as C } from "vue";
|
|
2
|
-
import { AlertCircle as w, AlertTriangle as T,
|
|
2
|
+
import { AlertCircle as w, AlertTriangle as T, ArrowRight as E, Calendar as D, CheckCircle2 as O, ChevronDown as k, Info as A, Loader2 as j, X as M } from "lucide-vue-next";
|
|
3
3
|
//#region src/shared/ui/alert/Alert.vue?vue&type=script&setup=true&lang.ts
|
|
4
|
-
var
|
|
4
|
+
var N = { class: "flex-1 text-sm leading-relaxed" }, P = { class: "opacity-90 [&_p]:m-0 [&_p]:leading-relaxed" }, F = /*@__PURE__*/ l({
|
|
5
5
|
__name: "Alert",
|
|
6
6
|
props: {
|
|
7
7
|
variant: { default: "info" },
|
|
@@ -22,21 +22,21 @@ var j = { class: "flex-1 text-sm leading-relaxed" }, M = { class: "opacity-90" }
|
|
|
22
22
|
let f = l, p = d, g = h(!0), x = () => {
|
|
23
23
|
g.value = !1, p("close");
|
|
24
24
|
}, C = {
|
|
25
|
-
info:
|
|
26
|
-
success:
|
|
25
|
+
info: A,
|
|
26
|
+
success: O,
|
|
27
27
|
warning: T,
|
|
28
28
|
danger: w
|
|
29
|
-
},
|
|
29
|
+
}, E = n(() => C[f.variant]), D = {
|
|
30
30
|
info: "bg-blue-50 border-blue-200 text-blue-800 dark:bg-blue-950/20 dark:border-blue-900/50 dark:text-blue-300",
|
|
31
31
|
success: "bg-emerald-50 border-emerald-200 text-emerald-800 dark:bg-emerald-950/20 dark:border-emerald-900/50 dark:text-emerald-300",
|
|
32
32
|
warning: "bg-amber-50 border-amber-200 text-amber-800 dark:bg-amber-950/20 dark:border-amber-900/50 dark:text-amber-300",
|
|
33
33
|
danger: "bg-rose-50 border-rose-200 text-rose-800 dark:bg-rose-950/20 dark:border-rose-900/50 dark:text-rose-300"
|
|
34
|
-
},
|
|
34
|
+
}, k = {
|
|
35
35
|
info: "text-blue-900 dark:text-blue-200",
|
|
36
36
|
success: "text-emerald-900 dark:text-emerald-200",
|
|
37
37
|
warning: "text-amber-900 dark:text-amber-200",
|
|
38
38
|
danger: "text-rose-900 dark:text-rose-200"
|
|
39
|
-
},
|
|
39
|
+
}, j = {
|
|
40
40
|
info: "text-blue-500 hover:bg-blue-100 hover:text-blue-800 dark:text-blue-400 dark:hover:bg-blue-900/40 dark:hover:text-blue-200",
|
|
41
41
|
success: "text-emerald-500 hover:bg-emerald-100 hover:text-emerald-800 dark:text-emerald-400 dark:hover:bg-emerald-900/40 dark:hover:text-emerald-200",
|
|
42
42
|
warning: "text-amber-500 hover:bg-amber-100 hover:text-amber-800 dark:text-amber-400 dark:hover:bg-amber-900/40 dark:hover:text-amber-200",
|
|
@@ -46,36 +46,36 @@ var j = { class: "flex-1 text-sm leading-relaxed" }, M = { class: "opacity-90" }
|
|
|
46
46
|
default: S(() => [g.value ? (m(), a("div", {
|
|
47
47
|
key: 0,
|
|
48
48
|
class: u([
|
|
49
|
-
"flex items-start gap-3 p-4 border rounded-2xl transition-all duration-200",
|
|
50
|
-
|
|
49
|
+
"flex items-start gap-3 p-4 border rounded-2xl transition-all duration-200 not-content",
|
|
50
|
+
D[l.variant],
|
|
51
51
|
f.class
|
|
52
52
|
]),
|
|
53
53
|
role: "alert"
|
|
54
54
|
}, [
|
|
55
|
-
l.showIcon ? (m(), r(v(
|
|
55
|
+
l.showIcon ? (m(), r(v(E.value), {
|
|
56
56
|
key: 0,
|
|
57
57
|
class: "w-5 h-5 shrink-0 mt-0.5"
|
|
58
58
|
})) : i("", !0),
|
|
59
|
-
o("div",
|
|
59
|
+
o("div", N, [l.title ? (m(), a("h5", {
|
|
60
60
|
key: 0,
|
|
61
|
-
class: u(["font-bold mb-1",
|
|
62
|
-
}, y(l.title), 3)) : i("", !0), o("div",
|
|
61
|
+
class: u(["font-bold mb-1 m-0 p-0 text-sm leading-snug", k[l.variant]])
|
|
62
|
+
}, y(l.title), 3)) : i("", !0), o("div", P, [l.message ? (m(), a(e, { key: 0 }, [s(y(l.message), 1)], 64)) : _(n.$slots, "default", { key: 1 }, void 0, !0)])]),
|
|
63
63
|
l.dismissible ? (m(), a("button", {
|
|
64
64
|
key: 1,
|
|
65
65
|
type: "button",
|
|
66
66
|
onClick: x,
|
|
67
|
-
class: u(["p-1 -mr-1 rounded-lg transition-colors cursor-pointer",
|
|
67
|
+
class: u(["p-1 -mr-1 rounded-lg transition-colors cursor-pointer", j[l.variant]]),
|
|
68
68
|
"aria-label": "Close alert"
|
|
69
|
-
}, [c(b(
|
|
69
|
+
}, [c(b(M), { class: "w-4 h-4" })], 2)) : i("", !0)
|
|
70
70
|
], 2)) : i("", !0)]),
|
|
71
71
|
_: 3
|
|
72
72
|
}));
|
|
73
73
|
}
|
|
74
|
-
}),
|
|
74
|
+
}), I = (e, t) => {
|
|
75
75
|
let n = e.__vccOpts || e;
|
|
76
76
|
for (let [e, r] of t) n[e] = r;
|
|
77
77
|
return n;
|
|
78
|
-
},
|
|
78
|
+
}, L = /*#__PURE__*/ I(F, [["__scopeId", "data-v-4b55fce4"]]), R = /* @__PURE__ */ l({
|
|
79
79
|
__name: "Badge",
|
|
80
80
|
props: {
|
|
81
81
|
type: { default: "label" },
|
|
@@ -91,23 +91,25 @@ var j = { class: "flex-1 text-sm leading-relaxed" }, M = { class: "opacity-90" }
|
|
|
91
91
|
},
|
|
92
92
|
setup(e) {
|
|
93
93
|
let t = e, r = n(() => t.appearance ? t.appearance : t.type === "label" ? "soft" : "solid"), o = {
|
|
94
|
-
primary: "bg-
|
|
95
|
-
secondary: "bg-
|
|
94
|
+
primary: "bg-[color-mix(in_srgb,var(--kv-color-primary)_5%,transparent)] text-[var(--kv-color-primary)] border-[color-mix(in_srgb,var(--kv-color-primary)_10%,transparent)] dark:bg-[color-mix(in_srgb,var(--kv-color-primary)_10%,transparent)] dark:text-blue-400 dark:border-[color-mix(in_srgb,var(--kv-color-primary)_20%,transparent)] font-bold",
|
|
95
|
+
secondary: "bg-gray-50/80 text-gray-500 border-gray-100/50 dark:bg-slate-800/50 dark:text-slate-400 dark:border-slate-800/50",
|
|
96
|
+
"brand-secondary": "bg-[color-mix(in_srgb,var(--kv-color-secondary)_15%,transparent)] text-[var(--kv-color-secondary-dark)] border-[color-mix(in_srgb,var(--kv-color-secondary)_30%,transparent)] dark:text-[var(--kv-color-secondary)]",
|
|
96
97
|
success: "bg-emerald-50 text-emerald-600 border-emerald-200 dark:bg-emerald-500/10 dark:text-emerald-400 dark:border-emerald-500/20",
|
|
97
98
|
error: "bg-rose-50 text-rose-600 border-rose-200 dark:bg-rose-500/10 dark:text-rose-400 dark:border-rose-500/20",
|
|
98
99
|
warning: "bg-amber-50 text-amber-600 border-amber-200 dark:bg-amber-500/10 dark:text-amber-400 dark:border-amber-500/20",
|
|
99
100
|
info: "bg-sky-50 text-sky-600 border-sky-200 dark:bg-sky-500/10 dark:text-sky-400 dark:border-sky-500/20",
|
|
100
101
|
outline: "bg-transparent text-slate-600 border-slate-200 dark:text-slate-400 dark:border-slate-700"
|
|
101
102
|
}, s = {
|
|
102
|
-
primary: "bg-[
|
|
103
|
+
primary: "bg-[var(--kv-color-primary)] text-white border-transparent",
|
|
103
104
|
secondary: "bg-slate-500 text-white border-transparent",
|
|
105
|
+
"brand-secondary": "bg-[var(--kv-color-secondary)] text-[var(--kv-color-soft-black)] border-transparent font-bold",
|
|
104
106
|
success: "bg-emerald-500 text-white border-transparent",
|
|
105
107
|
error: "bg-rose-500 text-white border-transparent",
|
|
106
108
|
warning: "bg-amber-500 text-white border-transparent",
|
|
107
109
|
info: "bg-sky-500 text-white border-transparent",
|
|
108
110
|
outline: "bg-transparent text-slate-600 border-slate-200"
|
|
109
111
|
}, c = {
|
|
110
|
-
sm: "text-[12px] px-2 py-
|
|
112
|
+
sm: "text-[12px] px-2.5 py-1 tracking-tight",
|
|
111
113
|
md: "text-[14px] px-2.5 py-0.5 tracking-wide font-medium",
|
|
112
114
|
lg: "text-[16px] px-3 py-1 tracking-wide font-medium"
|
|
113
115
|
}, l = {
|
|
@@ -130,9 +132,10 @@ var j = { class: "flex-1 text-sm leading-relaxed" }, M = { class: "opacity-90" }
|
|
|
130
132
|
sm: "rounded-sm",
|
|
131
133
|
md: "rounded-md",
|
|
132
134
|
lg: "rounded-lg",
|
|
133
|
-
full: "rounded-full"
|
|
135
|
+
full: "rounded-full",
|
|
136
|
+
"card-corner": "rounded-bl-2xl rounded-tr-none rounded-tl-none rounded-br-none"
|
|
134
137
|
}, g = n(() => {
|
|
135
|
-
let e = "inline-flex items-center justify-center transition-all duration-200 select-none whitespace-nowrap box-border", n = r.value === "soft" ? o[t.variant] : s[t.variant];
|
|
138
|
+
let e = "inline-flex items-center justify-center gap-1.5 transition-all duration-200 select-none whitespace-nowrap box-border", n = r.value === "soft" ? o[t.variant] : s[t.variant];
|
|
136
139
|
return t.type === "notification" ? [
|
|
137
140
|
e,
|
|
138
141
|
"rounded-full border",
|
|
@@ -156,7 +159,7 @@ var j = { class: "flex-1 text-sm leading-relaxed" }, M = { class: "opacity-90" }
|
|
|
156
159
|
});
|
|
157
160
|
return (t, n) => (m(), a("span", { class: u(g.value) }, [e.type === "hint" ? i("", !0) : _(t.$slots, "default", { key: 0 })], 2));
|
|
158
161
|
}
|
|
159
|
-
}),
|
|
162
|
+
}), z = /* @__PURE__ */ l({
|
|
160
163
|
__name: "Button",
|
|
161
164
|
props: {
|
|
162
165
|
variant: { default: "primary" },
|
|
@@ -174,6 +177,7 @@ var j = { class: "flex-1 text-sm leading-relaxed" }, M = { class: "opacity-90" }
|
|
|
174
177
|
default: !1
|
|
175
178
|
},
|
|
176
179
|
label: { default: "" },
|
|
180
|
+
href: { default: void 0 },
|
|
177
181
|
iconLeft: {},
|
|
178
182
|
iconRight: {},
|
|
179
183
|
class: { default: "" }
|
|
@@ -181,9 +185,9 @@ var j = { class: "flex-1 text-sm leading-relaxed" }, M = { class: "opacity-90" }
|
|
|
181
185
|
emits: ["click"],
|
|
182
186
|
setup(t, { emit: o }) {
|
|
183
187
|
let c = t, l = {
|
|
184
|
-
primary: "bg-[
|
|
188
|
+
primary: "bg-[var(--kv-color-primary)] text-white hover:bg-[var(--kv-color-primary-hover)] focus-visible:ring-[var(--kv-color-primary)]",
|
|
185
189
|
outline: "border border-slate-200 bg-transparent text-slate-600 hover:bg-slate-50 hover:text-slate-900 focus-visible:ring-slate-400 dark:border-slate-700 dark:text-slate-300 dark:hover:bg-slate-800 dark:hover:text-slate-100",
|
|
186
|
-
ghost: "bg-transparent text-slate-
|
|
190
|
+
ghost: "bg-transparent text-slate-500 hover:bg-slate-100 hover:text-slate-900 focus-visible:ring-slate-400 dark:text-slate-400 dark:hover:bg-slate-800 dark:hover:text-slate-100",
|
|
187
191
|
danger: "bg-rose-500 text-white hover:bg-rose-600 focus-visible:ring-rose-500"
|
|
188
192
|
}, d = {
|
|
189
193
|
sm: "h-9 px-4 text-sm gap-1.5 [&_svg]:w-4 [&_svg]:h-4",
|
|
@@ -204,48 +208,284 @@ var j = { class: "flex-1 text-sm leading-relaxed" }, M = { class: "opacity-90" }
|
|
|
204
208
|
c.icon ? f[c.size] : d[c.size],
|
|
205
209
|
c.class
|
|
206
210
|
].filter(Boolean).join(" "));
|
|
207
|
-
return (n, o) => (m(),
|
|
211
|
+
return (n, o) => (m(), r(v(c.href ? "a" : "button"), {
|
|
212
|
+
href: c.href,
|
|
208
213
|
class: u(g.value),
|
|
209
|
-
disabled: t.disabled || t.loading,
|
|
214
|
+
disabled: c.href ? void 0 : t.disabled || t.loading,
|
|
210
215
|
onClick: h
|
|
216
|
+
}, {
|
|
217
|
+
default: S(() => [
|
|
218
|
+
t.loading ? (m(), r(b(j), {
|
|
219
|
+
key: 0,
|
|
220
|
+
class: "animate-spin shrink-0"
|
|
221
|
+
})) : t.iconLeft ? (m(), r(v(t.iconLeft), { key: 1 })) : i("", !0),
|
|
222
|
+
t.label ? (m(), a(e, { key: 2 }, [s(y(t.label), 1)], 64)) : i("", !0),
|
|
223
|
+
_(n.$slots, "default"),
|
|
224
|
+
t.iconRight && !t.loading ? (m(), r(v(t.iconRight), { key: 3 })) : i("", !0)
|
|
225
|
+
]),
|
|
226
|
+
_: 3
|
|
227
|
+
}, 8, [
|
|
228
|
+
"href",
|
|
229
|
+
"class",
|
|
230
|
+
"disabled"
|
|
231
|
+
]));
|
|
232
|
+
}
|
|
233
|
+
}), ee = ["width", "height"], te = ["fill"], ne = ["fill"], re = ["fill"], B = /* @__PURE__ */ l({
|
|
234
|
+
__name: "LevelIcon",
|
|
235
|
+
props: {
|
|
236
|
+
level: { default: "beginner" },
|
|
237
|
+
size: { default: 14 },
|
|
238
|
+
class: { default: "" }
|
|
239
|
+
},
|
|
240
|
+
setup(e) {
|
|
241
|
+
let t = e, r = n(() => {
|
|
242
|
+
let e = t.level.toLowerCase();
|
|
243
|
+
return e.includes("pemula") || e.includes("begin") || e.includes("basic") || e.includes("all");
|
|
244
|
+
}), i = n(() => {
|
|
245
|
+
let e = t.level.toLowerCase();
|
|
246
|
+
return e.includes("menengah") || e.includes("inter");
|
|
247
|
+
}), s = n(() => {
|
|
248
|
+
let e = t.level.toLowerCase();
|
|
249
|
+
return e.includes("mahir") || e.includes("adv");
|
|
250
|
+
});
|
|
251
|
+
return (n, c) => (m(), a("svg", {
|
|
252
|
+
width: e.size,
|
|
253
|
+
height: e.size,
|
|
254
|
+
viewBox: "0 0 24 24",
|
|
255
|
+
fill: "none",
|
|
256
|
+
xmlns: "http://www.w3.org/2000/svg",
|
|
257
|
+
class: u(["shrink-0 text-[#4082E6] dark:text-blue-400", t.class])
|
|
211
258
|
}, [
|
|
212
|
-
|
|
213
|
-
|
|
214
|
-
|
|
215
|
-
|
|
216
|
-
|
|
217
|
-
|
|
218
|
-
|
|
219
|
-
|
|
259
|
+
o("rect", {
|
|
260
|
+
x: "3",
|
|
261
|
+
y: "14",
|
|
262
|
+
width: "4",
|
|
263
|
+
height: "7",
|
|
264
|
+
rx: "1.2",
|
|
265
|
+
fill: r.value || i.value || s.value ? "currentColor" : "rgba(156, 163, 175, 0.2)"
|
|
266
|
+
}, null, 8, te),
|
|
267
|
+
o("rect", {
|
|
268
|
+
x: "10",
|
|
269
|
+
y: "9",
|
|
270
|
+
width: "4",
|
|
271
|
+
height: "12",
|
|
272
|
+
rx: "1.2",
|
|
273
|
+
fill: i.value || s.value ? "currentColor" : "rgba(156, 163, 175, 0.2)"
|
|
274
|
+
}, null, 8, ne),
|
|
275
|
+
o("rect", {
|
|
276
|
+
x: "17",
|
|
277
|
+
y: "4",
|
|
278
|
+
width: "4",
|
|
279
|
+
height: "17",
|
|
280
|
+
rx: "1.2",
|
|
281
|
+
fill: s.value ? "currentColor" : "rgba(156, 163, 175, 0.2)"
|
|
282
|
+
}, null, 8, re)
|
|
283
|
+
], 10, ee));
|
|
284
|
+
}
|
|
285
|
+
}), V = ["width", "height"], H = /* @__PURE__ */ l({
|
|
286
|
+
__name: "VideoIcon",
|
|
287
|
+
props: {
|
|
288
|
+
size: { default: 14 },
|
|
289
|
+
class: { default: "" }
|
|
290
|
+
},
|
|
291
|
+
setup(e) {
|
|
292
|
+
let t = e;
|
|
293
|
+
return (e, n) => (m(), a("svg", {
|
|
294
|
+
width: t.size,
|
|
295
|
+
height: t.size,
|
|
296
|
+
viewBox: "0 0 24 24",
|
|
297
|
+
fill: "none",
|
|
298
|
+
stroke: "currentColor",
|
|
299
|
+
"stroke-width": "2",
|
|
300
|
+
"stroke-linecap": "round",
|
|
301
|
+
"stroke-linejoin": "round",
|
|
302
|
+
xmlns: "http://www.w3.org/2000/svg",
|
|
303
|
+
class: u(["shrink-0", t.class])
|
|
304
|
+
}, [...n[0] ||= [o("polygon", {
|
|
305
|
+
points: "23 7 16 12 23 17 23 7",
|
|
306
|
+
fill: "currentColor",
|
|
307
|
+
stroke: "none"
|
|
308
|
+
}, null, -1), o("rect", {
|
|
309
|
+
x: "1",
|
|
310
|
+
y: "5",
|
|
311
|
+
width: "15",
|
|
312
|
+
height: "14",
|
|
313
|
+
rx: "2",
|
|
314
|
+
ry: "2"
|
|
315
|
+
}, null, -1)]], 10, V));
|
|
220
316
|
}
|
|
221
|
-
}),
|
|
317
|
+
}), U = { class: "p-3 pb-0" }, W = { class: "relative aspect-video bg-slate-100 dark:bg-slate-800 rounded-2xl overflow-hidden" }, G = ["src", "alt"], K = {
|
|
222
318
|
key: 0,
|
|
223
|
-
class: "
|
|
224
|
-
|
|
319
|
+
class: "absolute top-0 right-0 z-10 px-3 py-1.5 text-[10px] font-bold tracking-tight rounded-bl-2xl",
|
|
320
|
+
style: {
|
|
321
|
+
"background-color": "var(--kv-color-secondary)",
|
|
322
|
+
color: "var(--kv-color-primary)"
|
|
323
|
+
}
|
|
324
|
+
}, q = { class: "p-4 grow flex flex-col gap-3" }, J = { class: "flex items-center justify-between" }, Y = {
|
|
325
|
+
key: 0,
|
|
326
|
+
class: "opacity-60 font-normal"
|
|
327
|
+
}, X = { class: "font-bold text-base leading-snug line-clamp-2 text-slate-900 dark:text-slate-200" }, ie = ["href"], ae = { class: "mt-auto pt-4 border-t border-dashed border-slate-100 dark:border-slate-800 flex justify-between items-center px-1" }, oe = { class: "flex flex-col" }, se = {
|
|
328
|
+
key: 0,
|
|
329
|
+
class: "text-emerald-500 font-bold text-base"
|
|
330
|
+
}, ce = {
|
|
331
|
+
key: 0,
|
|
332
|
+
class: "text-slate-400 dark:text-slate-500 text-[10px] font-medium line-through mb-0.5"
|
|
333
|
+
}, le = {
|
|
334
|
+
class: "font-extrabold text-lg tracking-tight",
|
|
335
|
+
style: { color: "var(--kv-color-primary)" }
|
|
336
|
+
}, ue = ["href"], de = { class: "p-3 pb-0" }, fe = { class: "relative aspect-video bg-slate-100 dark:bg-slate-800 rounded-2xl overflow-hidden" }, pe = ["src", "alt"], me = { class: "p-4 grow flex flex-col" }, he = { class: "flex items-center justify-between mb-3 text-sm font-medium text-gray-400 dark:text-slate-500" }, ge = { class: "flex items-center gap-2 min-w-0" }, _e = ["src", "alt"], ve = { class: "truncate text-xs" }, ye = { class: "font-semibold whitespace-nowrap" }, be = { class: "font-bold text-base leading-tight line-clamp-2 text-slate-900 dark:text-slate-200 mb-3" }, xe = ["href"], Se = { class: "mt-auto pt-4 border-t border-dashed border-slate-100 dark:border-slate-800 flex justify-between items-center px-1" }, Ce = { class: "flex flex-col" }, we = {
|
|
337
|
+
key: 0,
|
|
338
|
+
class: "text-emerald-500 font-bold text-lg"
|
|
339
|
+
}, Te = {
|
|
225
340
|
key: 1,
|
|
226
|
-
class: "
|
|
227
|
-
|
|
341
|
+
class: "font-extrabold text-xl tracking-tight",
|
|
342
|
+
style: { color: "var(--kv-color-primary)" }
|
|
343
|
+
}, Ee = ["href"], De = { class: "p-6 flex flex-col" }, Oe = {
|
|
344
|
+
key: 0,
|
|
345
|
+
class: "text-base font-semibold text-slate-900 dark:text-white"
|
|
346
|
+
}, ke = {
|
|
347
|
+
key: 1,
|
|
348
|
+
class: "mt-1 text-sm text-slate-400 dark:text-slate-500"
|
|
349
|
+
}, Z = {
|
|
228
350
|
key: 0,
|
|
229
351
|
class: "flex items-center justify-end gap-3 border-t border-slate-100 dark:border-slate-800 px-6 py-4 bg-slate-50/50 dark:bg-slate-950/50"
|
|
230
|
-
},
|
|
352
|
+
}, Q = "data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='400' height='225' viewBox='0 0 400 225'><rect width='100%' height='100%' fill='%23f1f5f9'/><text x='200' y='118' font-family='Plus Jakarta Sans, system-ui, sans-serif' font-size='16' font-weight='bold' fill='%2394a3b8' text-anchor='middle'>400 x 225 px</text></svg>", Ae = "data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 20 20'><circle cx='10' cy='10' r='10' fill='%23e2e8f0'/></svg>", je = /* @__PURE__ */ l({
|
|
231
353
|
__name: "Card",
|
|
232
354
|
props: {
|
|
355
|
+
variant: { default: "default" },
|
|
233
356
|
title: { default: "" },
|
|
234
357
|
description: { default: "" },
|
|
235
|
-
|
|
358
|
+
image: { default: "" },
|
|
359
|
+
actionUrl: { default: "#" },
|
|
360
|
+
class: { default: "" },
|
|
361
|
+
badgeText: { default: "" },
|
|
362
|
+
level: { default: "" },
|
|
363
|
+
ratingCount: { default: 0 },
|
|
364
|
+
infoText: { default: "" },
|
|
365
|
+
price: { default: "" },
|
|
366
|
+
discountPrice: { default: "" },
|
|
367
|
+
eventType: { default: "Workshop" },
|
|
368
|
+
date: { default: "" },
|
|
369
|
+
speaker: { default: "" },
|
|
370
|
+
speakerAvatar: { default: "" },
|
|
371
|
+
status: { default: "open" }
|
|
236
372
|
},
|
|
237
|
-
setup(
|
|
238
|
-
let t = e;
|
|
239
|
-
return (
|
|
240
|
-
|
|
241
|
-
|
|
242
|
-
|
|
243
|
-
|
|
373
|
+
setup(t) {
|
|
374
|
+
let n = t, l = (e) => e === "Gratis" || e === "Free" || e === 0 || e === "0";
|
|
375
|
+
return (d, f) => t.variant === "product" ? (m(), a("div", {
|
|
376
|
+
key: 0,
|
|
377
|
+
class: u(["group bg-white dark:bg-slate-900 rounded-[32px] border border-slate-100 dark:border-slate-800 overflow-hidden transition-all duration-500 h-full flex flex-col text-left", n.class])
|
|
378
|
+
}, [o("div", U, [o("div", W, [o("img", {
|
|
379
|
+
src: t.image || Q,
|
|
380
|
+
alt: t.title,
|
|
381
|
+
class: "w-full h-full object-cover"
|
|
382
|
+
}, null, 8, G), t.badgeText ? (m(), a("div", K, y(t.badgeText), 1)) : i("", !0)])]), o("div", q, [
|
|
383
|
+
o("div", J, [t.level ? (m(), r(R, {
|
|
384
|
+
key: 0,
|
|
385
|
+
variant: "secondary",
|
|
386
|
+
appearance: "soft",
|
|
387
|
+
rounded: "lg",
|
|
388
|
+
size: "sm"
|
|
389
|
+
}, {
|
|
390
|
+
default: S(() => [
|
|
391
|
+
c(B, { level: t.level }, null, 8, ["level"]),
|
|
392
|
+
o("span", null, y(t.level), 1),
|
|
393
|
+
t.ratingCount ? (m(), a("span", Y, "(" + y(t.ratingCount) + ")", 1)) : i("", !0)
|
|
394
|
+
]),
|
|
395
|
+
_: 1
|
|
396
|
+
})) : i("", !0), t.infoText ? (m(), r(R, {
|
|
397
|
+
key: 1,
|
|
398
|
+
variant: "primary",
|
|
399
|
+
appearance: "soft",
|
|
400
|
+
rounded: "lg",
|
|
401
|
+
size: "sm"
|
|
402
|
+
}, {
|
|
403
|
+
default: S(() => [_(d.$slots, "info-icon", {}, () => [c(H, { size: 14 })]), o("span", null, y(t.infoText), 1)]),
|
|
404
|
+
_: 3
|
|
405
|
+
})) : i("", !0)]),
|
|
406
|
+
o("h3", X, [o("a", {
|
|
407
|
+
href: t.actionUrl,
|
|
408
|
+
class: "hover:text-[var(--kv-color-primary)] dark:hover:text-blue-400 transition-colors"
|
|
409
|
+
}, y(t.title), 9, ie)]),
|
|
410
|
+
o("div", ae, [o("div", oe, [l(t.price) ? (m(), a("span", se, "Gratis")) : (m(), a(e, { key: 1 }, [t.discountPrice ? (m(), a("span", ce, y(t.discountPrice), 1)) : i("", !0), o("span", le, y(t.price), 1)], 64))]), o("a", {
|
|
411
|
+
href: t.actionUrl,
|
|
412
|
+
class: "w-10 h-10 shrink-0 flex items-center justify-center rounded-2xl bg-slate-50 dark:bg-slate-800/50 text-slate-400 dark:text-slate-500 transition-all duration-500 border border-slate-100 dark:border-slate-800 hover:border-transparent"
|
|
413
|
+
}, [c(b(E), {
|
|
414
|
+
size: 18,
|
|
415
|
+
class: "-rotate-45"
|
|
416
|
+
})], 8, ue)])
|
|
417
|
+
])], 2)) : t.variant === "event" ? (m(), a("div", {
|
|
418
|
+
key: 1,
|
|
419
|
+
class: u(["group bg-white dark:bg-slate-900 rounded-[32px] border border-slate-100 dark:border-slate-800 overflow-hidden transition-all duration-500 h-full flex flex-col text-left", n.class])
|
|
420
|
+
}, [o("div", de, [o("div", fe, [
|
|
421
|
+
o("img", {
|
|
422
|
+
src: t.image || Q,
|
|
423
|
+
alt: t.title,
|
|
424
|
+
class: "w-full h-full object-cover"
|
|
425
|
+
}, null, 8, pe),
|
|
426
|
+
t.eventType ? (m(), r(R, {
|
|
427
|
+
key: 0,
|
|
428
|
+
variant: "primary",
|
|
429
|
+
appearance: "soft",
|
|
430
|
+
rounded: "lg",
|
|
431
|
+
size: "sm",
|
|
432
|
+
class: "absolute top-3 left-3 z-10"
|
|
433
|
+
}, {
|
|
434
|
+
default: S(() => [s(y(t.eventType), 1)]),
|
|
435
|
+
_: 1
|
|
436
|
+
})) : i("", !0),
|
|
437
|
+
c(R, {
|
|
438
|
+
variant: t.status === "open" ? "success" : t.status === "closed" ? "secondary" : "primary",
|
|
439
|
+
appearance: "soft",
|
|
440
|
+
rounded: "card-corner",
|
|
441
|
+
size: "sm",
|
|
442
|
+
class: "absolute top-0 right-0 z-10"
|
|
443
|
+
}, {
|
|
444
|
+
default: S(() => [s(y(t.status === "open" ? "Open" : t.status === "closed" ? "Closed" : "Segera"), 1)]),
|
|
445
|
+
_: 1
|
|
446
|
+
}, 8, ["variant"])
|
|
447
|
+
])]), o("div", me, [
|
|
448
|
+
o("div", he, [o("div", ge, [o("img", {
|
|
449
|
+
src: t.speakerAvatar || Ae,
|
|
450
|
+
alt: t.speaker,
|
|
451
|
+
class: "w-5 h-5 rounded-full object-cover border border-gray-100 dark:border-slate-700 shrink-0"
|
|
452
|
+
}, null, 8, _e), o("span", ve, y(t.speaker || "Speaker"), 1)]), t.date ? (m(), r(R, {
|
|
453
|
+
key: 0,
|
|
454
|
+
variant: "secondary",
|
|
455
|
+
appearance: "soft",
|
|
456
|
+
rounded: "lg",
|
|
457
|
+
size: "sm"
|
|
458
|
+
}, {
|
|
459
|
+
default: S(() => [c(b(D), { size: 12 }), o("span", ye, y(t.date), 1)]),
|
|
460
|
+
_: 1
|
|
461
|
+
})) : i("", !0)]),
|
|
462
|
+
o("h3", be, [o("a", {
|
|
463
|
+
href: t.actionUrl,
|
|
464
|
+
class: "hover:text-[var(--kv-color-primary)] dark:hover:text-blue-400 transition-colors"
|
|
465
|
+
}, y(t.title), 9, xe)]),
|
|
466
|
+
o("div", Se, [o("div", Ce, [l(t.price) ? (m(), a("span", we, "Gratis")) : (m(), a("span", Te, y(t.price), 1))]), o("a", {
|
|
467
|
+
href: t.actionUrl,
|
|
468
|
+
class: "w-10 h-10 flex items-center justify-center rounded-2xl bg-slate-50 dark:bg-slate-800/50 text-slate-400 dark:text-slate-500 transition-all duration-500 border border-slate-100 dark:border-slate-800 hover:border-transparent"
|
|
469
|
+
}, [c(b(E), {
|
|
470
|
+
size: 18,
|
|
471
|
+
class: "-rotate-45"
|
|
472
|
+
})], 8, Ee)])
|
|
473
|
+
])], 2)) : (m(), a("div", {
|
|
474
|
+
key: 2,
|
|
475
|
+
class: u(["rounded-3xl border border-slate-200 dark:border-slate-800 bg-white dark:bg-slate-900 overflow-hidden", n.class])
|
|
476
|
+
}, [o("div", De, [
|
|
477
|
+
t.title ? (m(), a("h3", Oe, y(t.title), 1)) : i("", !0),
|
|
478
|
+
t.description ? (m(), a("p", ke, y(t.description), 1)) : i("", !0),
|
|
479
|
+
d.$slots.default ? (m(), a("div", {
|
|
480
|
+
key: 2,
|
|
481
|
+
class: u(t.title || t.description ? "mt-4" : "")
|
|
482
|
+
}, [_(d.$slots, "default")], 2)) : i("", !0)
|
|
483
|
+
]), d.$slots.footer ? (m(), a("div", Z, [_(d.$slots, "footer")])) : i("", !0)], 2));
|
|
244
484
|
}
|
|
245
|
-
}),
|
|
485
|
+
}), Me = ["disabled"], Ne = { class: "flex items-center gap-2" }, Pe = {
|
|
246
486
|
key: 0,
|
|
247
487
|
class: "krea-dropdown-divider"
|
|
248
|
-
},
|
|
488
|
+
}, Fe = ["disabled", "onClick"], Ie = { class: "flex items-center gap-3" }, Le = /*#__PURE__*/ I(/* @__PURE__ */ l({
|
|
249
489
|
__name: "DropdownMenu",
|
|
250
490
|
props: {
|
|
251
491
|
triggerText: { default: "Pilih Opsi" },
|
|
@@ -261,7 +501,7 @@ var j = { class: "flex-1 text-sm leading-relaxed" }, M = { class: "opacity-90" }
|
|
|
261
501
|
},
|
|
262
502
|
emits: ["update:modelValue", "select"],
|
|
263
503
|
setup(t, { emit: s }) {
|
|
264
|
-
let l = t, S = s, w = h(!1), T = h(null), E = n(() => l.items.find((e) => e.id === l.modelValue)),
|
|
504
|
+
let l = t, S = s, w = h(!1), T = h(null), E = n(() => l.items.find((e) => e.id === l.modelValue)), D = n(() => E.value?.label ?? l.triggerText), O = n(() => E.value?.icon), A = n(() => [
|
|
265
505
|
"inline-flex items-center justify-between whitespace-nowrap",
|
|
266
506
|
"font-semibold transition-all duration-150",
|
|
267
507
|
"focus:outline-none focus:ring-2 focus:ring-[#4082E6]",
|
|
@@ -300,23 +540,23 @@ var j = { class: "flex-1 text-sm leading-relaxed" }, M = { class: "opacity-90" }
|
|
|
300
540
|
onClick: N,
|
|
301
541
|
disabled: t.disabled,
|
|
302
542
|
class: u(A.value)
|
|
303
|
-
}, [o("div",
|
|
543
|
+
}, [o("div", Ne, [O.value ? (m(), r(v(O.value), {
|
|
304
544
|
key: 0,
|
|
305
545
|
class: "w-4 h-4 shrink-0 text-slate-500 dark:text-slate-400"
|
|
306
|
-
})) : i("", !0), o("span", null, y(
|
|
546
|
+
})) : i("", !0), o("span", null, y(D.value), 1)]), c(b(k), {
|
|
307
547
|
class: u([j.value, "text-slate-400 shrink-0 transition-transform duration-200"]),
|
|
308
548
|
style: d({ transform: w.value ? "rotate(180deg)" : "" })
|
|
309
|
-
}, null, 8, ["class", "style"])], 10,
|
|
549
|
+
}, null, 8, ["class", "style"])], 10, Me), C(o("div", { class: u(["krea-dropdown-popover", M.value]) }, [_(n.$slots, "default", {}, () => [(m(!0), a(e, null, g(t.items, (n, s) => (m(), a(e, { key: n.id ?? s }, [n.divider ? (m(), a("div", Pe)) : i("", !0), o("button", {
|
|
310
550
|
type: "button",
|
|
311
551
|
disabled: n.disabled,
|
|
312
552
|
onClick: (e) => P(n),
|
|
313
553
|
class: u(["krea-dropdown-item", n.variant === "danger" ? "krea-dropdown-item--danger" : t.modelValue === n.id ? "krea-dropdown-item--active" : ""])
|
|
314
|
-
}, [o("div",
|
|
554
|
+
}, [o("div", Ie, [n.icon ? (m(), r(v(n.icon), {
|
|
315
555
|
key: 0,
|
|
316
556
|
class: "w-4 h-4 shrink-0 text-slate-400"
|
|
317
|
-
})) : i("", !0), o("span", null, y(n.label), 1)])], 10,
|
|
557
|
+
})) : i("", !0), o("span", null, y(n.label), 1)])], 10, Fe)], 64))), 128))], !0)], 2), [[x, w.value]])], 512));
|
|
318
558
|
}
|
|
319
|
-
}), [["__scopeId", "data-v-948716a5"]]),
|
|
559
|
+
}), [["__scopeId", "data-v-948716a5"]]), Re = ["disabled", "onClick"], ze = /* @__PURE__ */ l({
|
|
320
560
|
__name: "Tabs",
|
|
321
561
|
props: {
|
|
322
562
|
modelValue: { default: "" },
|
|
@@ -355,18 +595,18 @@ var j = { class: "flex-1 text-sm leading-relaxed" }, M = { class: "opacity-90" }
|
|
|
355
595
|
disabled: e.disabled,
|
|
356
596
|
class: u(h(e)),
|
|
357
597
|
onClick: (t) => d.value = e.id
|
|
358
|
-
}, [e.icon ? (m(), r(v(e.icon), { key: 0 })) : i("", !0), s(" " + y(e.label), 1)], 10,
|
|
598
|
+
}, [e.icon ? (m(), r(v(e.icon), { key: 0 })) : i("", !0), s(" " + y(e.label), 1)], 10, Re))), 128))], 2));
|
|
359
599
|
}
|
|
360
600
|
});
|
|
361
601
|
//#endregion
|
|
362
602
|
//#region node_modules/tailwindcss/dist/plugin.mjs
|
|
363
|
-
function
|
|
603
|
+
function $(e, t) {
|
|
364
604
|
return {
|
|
365
605
|
handler: e,
|
|
366
606
|
config: t
|
|
367
607
|
};
|
|
368
608
|
}
|
|
369
|
-
|
|
609
|
+
$.withOptions = function(e, t = () => ({})) {
|
|
370
610
|
function n(n) {
|
|
371
611
|
return {
|
|
372
612
|
handler: e(n),
|
|
@@ -377,7 +617,7 @@ Q.withOptions = function(e, t = () => ({})) {
|
|
|
377
617
|
};
|
|
378
618
|
//#endregion
|
|
379
619
|
//#region src/plugin.ts
|
|
380
|
-
var
|
|
620
|
+
var Be = $(function({ addBase: e, addComponents: t, theme: n }) {
|
|
381
621
|
e({
|
|
382
622
|
":root": {
|
|
383
623
|
"--kv-color-primary": "#4082E6",
|
|
@@ -424,4 +664,4 @@ var $ = Q(function({ addBase: e, addComponents: t, theme: n }) {
|
|
|
424
664
|
}
|
|
425
665
|
} } });
|
|
426
666
|
//#endregion
|
|
427
|
-
export {
|
|
667
|
+
export { L as Alert, R as Badge, z as Button, je as Card, Le as DropdownMenu, B as LevelIcon, ze as Tabs, H as VideoIcon, Be as kreauiPlugin };
|
package/lib/kreaui.umd.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
(function(e,t){typeof exports==`object`&&typeof module<`u`?t(exports,require("vue"),require("lucide-vue-next")):typeof define==`function`&&define.amd?define([`exports`,`vue`,`lucide-vue-next`],t):(e=typeof globalThis<`u`?globalThis:e||self,t(e.KreaUI={},e.Vue,e.LucideVueNext))})(this,function(e,t,n){Object.defineProperty(e,Symbol.toStringTag,{value:`Module`});var r={class:`flex-1 text-sm leading-relaxed`},i={class:`opacity-90`},a=(0,t.defineComponent)({__name:`Alert`,props:{variant:{default:`info`},title:{default:``},message:{default:``},dismissible:{type:Boolean,default:!1},showIcon:{type:Boolean,default:!0},class:{default:``}},emits:[`close`],setup(e,{emit:a}){let o=e,s=a,c=(0,t.ref)(!0),l=()=>{c.value=!1,s(`close`)},u={info:n.Info,success:n.CheckCircle2,warning:n.AlertTriangle,danger:n.AlertCircle},d=(0,t.computed)(()=>u[o.variant]),f={info:`bg-blue-50 border-blue-200 text-blue-800 dark:bg-blue-950/20 dark:border-blue-900/50 dark:text-blue-300`,success:`bg-emerald-50 border-emerald-200 text-emerald-800 dark:bg-emerald-950/20 dark:border-emerald-900/50 dark:text-emerald-300`,warning:`bg-amber-50 border-amber-200 text-amber-800 dark:bg-amber-950/20 dark:border-amber-900/50 dark:text-amber-300`,danger:`bg-rose-50 border-rose-200 text-rose-800 dark:bg-rose-950/20 dark:border-rose-900/50 dark:text-rose-300`},p={info:`text-blue-900 dark:text-blue-200`,success:`text-emerald-900 dark:text-emerald-200`,warning:`text-amber-900 dark:text-amber-200`,danger:`text-rose-900 dark:text-rose-200`},m={info:`text-blue-500 hover:bg-blue-100 hover:text-blue-800 dark:text-blue-400 dark:hover:bg-blue-900/40 dark:hover:text-blue-200`,success:`text-emerald-500 hover:bg-emerald-100 hover:text-emerald-800 dark:text-emerald-400 dark:hover:bg-emerald-900/40 dark:hover:text-emerald-200`,warning:`text-amber-500 hover:bg-amber-100 hover:text-amber-800 dark:text-amber-400 dark:hover:bg-amber-900/40 dark:hover:text-amber-200`,danger:`text-rose-500 hover:bg-rose-100 hover:text-rose-800 dark:text-rose-400 dark:hover:bg-rose-900/40 dark:hover:text-rose-200`};return(a,s)=>((0,t.openBlock)(),(0,t.createBlock)(t.Transition,{name:`fade`},{default:(0,t.withCtx)(()=>[c.value?((0,t.openBlock)(),(0,t.createElementBlock)(`div`,{key:0,class:(0,t.normalizeClass)([`flex items-start gap-3 p-4 border rounded-2xl transition-all duration-200`,f[e.variant],o.class]),role:`alert`},[e.showIcon?((0,t.openBlock)(),(0,t.createBlock)((0,t.resolveDynamicComponent)(d.value),{key:0,class:`w-5 h-5 shrink-0 mt-0.5`})):(0,t.createCommentVNode)(``,!0),(0,t.createElementVNode)(`div`,r,[e.title?((0,t.openBlock)(),(0,t.createElementBlock)(`h5`,{key:0,class:(0,t.normalizeClass)([`font-bold mb-1`,p[e.variant]])},(0,t.toDisplayString)(e.title),3)):(0,t.createCommentVNode)(``,!0),(0,t.createElementVNode)(`div`,i,[e.message?((0,t.openBlock)(),(0,t.createElementBlock)(t.Fragment,{key:0},[(0,t.createTextVNode)((0,t.toDisplayString)(e.message),1)],64)):(0,t.renderSlot)(a.$slots,`default`,{key:1},void 0,!0)])]),e.dismissible?((0,t.openBlock)(),(0,t.createElementBlock)(`button`,{key:1,type:`button`,onClick:l,class:(0,t.normalizeClass)([`p-1 -mr-1 rounded-lg transition-colors cursor-pointer`,m[e.variant]]),"aria-label":`Close alert`},[(0,t.createVNode)((0,t.unref)(n.X),{class:`w-4 h-4`})],2)):(0,t.createCommentVNode)(``,!0)],2)):(0,t.createCommentVNode)(``,!0)]),_:3}))}}),o=(e,t)=>{let n=e.__vccOpts||e;for(let[e,r]of t)n[e]=r;return n},s=o(a,[[`__scopeId`,`data-v-7a29c82f`]]),c=(0,t.defineComponent)({__name:`Badge`,props:{type:{default:`label`},variant:{default:`primary`},appearance:{},size:{default:`md`},rounded:{default:`lg`},iconOnly:{type:Boolean,default:!1},class:{default:``}},setup(e){let n=e,r=(0,t.computed)(()=>n.appearance?n.appearance:n.type===`label`?`soft`:`solid`),i={primary:`bg-blue-50 text-primary border-blue-200/70 dark:bg-blue-950/40 dark:text-blue-400 dark:border-blue-800/50`,secondary:`bg-slate-100 text-slate-600 border-slate-200 dark:bg-slate-800/80 dark:text-slate-300 dark:border-slate-700`,success:`bg-emerald-50 text-emerald-600 border-emerald-200 dark:bg-emerald-500/10 dark:text-emerald-400 dark:border-emerald-500/20`,error:`bg-rose-50 text-rose-600 border-rose-200 dark:bg-rose-500/10 dark:text-rose-400 dark:border-rose-500/20`,warning:`bg-amber-50 text-amber-600 border-amber-200 dark:bg-amber-500/10 dark:text-amber-400 dark:border-amber-500/20`,info:`bg-sky-50 text-sky-600 border-sky-200 dark:bg-sky-500/10 dark:text-sky-400 dark:border-sky-500/20`,outline:`bg-transparent text-slate-600 border-slate-200 dark:text-slate-400 dark:border-slate-700`},a={primary:`bg-[#4082E6] text-white border-transparent`,secondary:`bg-slate-500 text-white border-transparent`,success:`bg-emerald-500 text-white border-transparent`,error:`bg-rose-500 text-white border-transparent`,warning:`bg-amber-500 text-white border-transparent`,info:`bg-sky-500 text-white border-transparent`,outline:`bg-transparent text-slate-600 border-slate-200`},o={sm:`text-[12px] px-2 py-0.5 tracking-wide font-medium`,md:`text-[14px] px-2.5 py-0.5 tracking-wide font-medium`,lg:`text-[16px] px-3 py-1 tracking-wide font-medium`},s={sm:`text-[12px] h-4 min-w-[16px] px-1 font-bold`,md:`text-[12px] h-5 min-w-[20px] px-1.5 font-bold`,lg:`text-[14px] h-6 min-w-[24px] px-2 font-bold`},c={sm:`h-4 w-4`,md:`h-5 w-5`,lg:`h-6 w-6`},l={sm:`h-5 w-5`,md:`h-6 w-6`,lg:`h-7 w-7`},u={sm:`h-2 w-2`,md:`h-3 w-3`,lg:`h-4 w-4`},d={sm:`rounded-sm`,md:`rounded-md`,lg:`rounded-lg`,full:`rounded-full`},f=(0,t.computed)(()=>{let e=`inline-flex items-center justify-center transition-all duration-200 select-none whitespace-nowrap box-border`,t=r.value===`soft`?i[n.variant]:a[n.variant];return n.type===`notification`?[e,`rounded-full border`,t,n.iconOnly?c[n.size]:s[n.size],n.class].filter(Boolean).join(` `):n.type===`hint`?[e,`rounded-full border`,t,u[n.size],n.class].filter(Boolean).join(` `):[e,`border`,t,n.iconOnly?l[n.size]:o[n.size],d[n.rounded],n.class].filter(Boolean).join(` `)});return(n,r)=>((0,t.openBlock)(),(0,t.createElementBlock)(`span`,{class:(0,t.normalizeClass)(f.value)},[e.type===`hint`?(0,t.createCommentVNode)(``,!0):(0,t.renderSlot)(n.$slots,`default`,{key:0})],2))}}),l=[`disabled`],u=(0,t.defineComponent)({__name:`Button`,props:{variant:{default:`primary`},size:{default:`md`},disabled:{type:Boolean,default:!1},loading:{type:Boolean,default:!1},icon:{type:Boolean,default:!1},label:{default:``},iconLeft:{},iconRight:{},class:{default:``}},emits:[`click`],setup(e,{emit:r}){let i=e,a={primary:`bg-[#4082E6] text-white hover:bg-[#2d6ed4] focus-visible:ring-[#4082E6]`,outline:`border border-slate-200 bg-transparent text-slate-600 hover:bg-slate-50 hover:text-slate-900 focus-visible:ring-slate-400 dark:border-slate-700 dark:text-slate-300 dark:hover:bg-slate-800 dark:hover:text-slate-100`,ghost:`bg-transparent text-slate-600 hover:bg-slate-100 hover:text-slate-900 focus-visible:ring-slate-400 dark:text-slate-300 dark:hover:bg-slate-800 dark:hover:text-slate-100`,danger:`bg-rose-500 text-white hover:bg-rose-600 focus-visible:ring-rose-500`},o={sm:`h-9 px-4 text-sm gap-1.5 [&_svg]:w-4 [&_svg]:h-4`,md:`h-11 px-6 text-base gap-2 [&_svg]:w-5 [&_svg]:h-5`,lg:`h-14 px-10 text-2xl gap-2.5 [&_svg]:w-6 [&_svg]:h-6`},s={sm:`h-9 w-9 text-lg [&_svg]:w-6 [&_svg]:h-6`,md:`h-11 w-11 text-xl [&_svg]:w-8 [&_svg]:h-8`,lg:`h-14 w-14 text-2xl [&_svg]:w-10 [&_svg]:h-10`},c=r,u=e=>{!i.disabled&&!i.loading&&c(`click`,e)},d=(0,t.computed)(()=>[`inline-flex items-center justify-center whitespace-nowrap rounded-2xl transition-colors duration-200`,i.icon?`font-medium`:`font-bold`,`focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-offset-2`,`disabled:pointer-events-none disabled:opacity-50`,a[i.variant],i.icon?s[i.size]:o[i.size],i.class].filter(Boolean).join(` `));return(r,i)=>((0,t.openBlock)(),(0,t.createElementBlock)(`button`,{class:(0,t.normalizeClass)(d.value),disabled:e.disabled||e.loading,onClick:u},[e.loading?((0,t.openBlock)(),(0,t.createBlock)((0,t.unref)(n.Loader2),{key:0,class:`animate-spin shrink-0`})):e.iconLeft?((0,t.openBlock)(),(0,t.createBlock)((0,t.resolveDynamicComponent)(e.iconLeft),{key:1})):(0,t.createCommentVNode)(``,!0),e.label?((0,t.openBlock)(),(0,t.createElementBlock)(t.Fragment,{key:2},[(0,t.createTextVNode)((0,t.toDisplayString)(e.label),1)],64)):(0,t.createCommentVNode)(``,!0),(0,t.renderSlot)(r.$slots,`default`),e.iconRight&&!e.loading?((0,t.openBlock)(),(0,t.createBlock)((0,t.resolveDynamicComponent)(e.iconRight),{key:3})):(0,t.createCommentVNode)(``,!0)],10,l))}}),d={class:`p-6`},f={key:0,class:`text-base font-semibold text-[#131313] dark:text-white`},p={key:1,class:`mt-1 text-sm text-slate-500 dark:text-slate-400`},m={key:0,class:`flex items-center justify-end gap-3 border-t border-slate-100 dark:border-slate-800 px-6 py-4 bg-slate-50/50 dark:bg-slate-950/50`},h=(0,t.defineComponent)({__name:`Card`,props:{title:{default:``},description:{default:``},class:{default:``}},setup(e){let n=e;return(r,i)=>((0,t.openBlock)(),(0,t.createElementBlock)(`div`,{class:(0,t.normalizeClass)([`rounded-3xl border border-slate-200 dark:border-slate-800 bg-white dark:bg-slate-900 overflow-hidden`,n.class])},[(0,t.createElementVNode)(`div`,d,[e.title?((0,t.openBlock)(),(0,t.createElementBlock)(`h3`,f,(0,t.toDisplayString)(e.title),1)):(0,t.createCommentVNode)(``,!0),e.description?((0,t.openBlock)(),(0,t.createElementBlock)(`p`,p,(0,t.toDisplayString)(e.description),1)):(0,t.createCommentVNode)(``,!0),(0,t.createElementVNode)(`div`,{class:(0,t.normalizeClass)([e.title||e.description?`mt-4`:``])},[(0,t.renderSlot)(r.$slots,`default`)],2)]),r.$slots.footer?((0,t.openBlock)(),(0,t.createElementBlock)(`div`,m,[(0,t.renderSlot)(r.$slots,`footer`)])):(0,t.createCommentVNode)(``,!0)],2))}}),g=[`disabled`],_={class:`flex items-center gap-2`},v={key:0,class:`krea-dropdown-divider`},y=[`disabled`,`onClick`],b={class:`flex items-center gap-3`},x=o((0,t.defineComponent)({__name:`DropdownMenu`,props:{triggerText:{default:`Pilih Opsi`},align:{default:`left`},disabled:{type:Boolean,default:!1},items:{default:()=>[]},modelValue:{default:``},variant:{default:`default`},size:{default:`md`}},emits:[`update:modelValue`,`select`],setup(e,{emit:r}){let i=e,a=r,o=(0,t.ref)(!1),s=(0,t.ref)(null),c=(0,t.computed)(()=>i.items.find(e=>e.id===i.modelValue)),l=(0,t.computed)(()=>c.value?.label??i.triggerText),u=(0,t.computed)(()=>c.value?.icon),d=(0,t.computed)(()=>[`inline-flex items-center justify-between whitespace-nowrap`,`font-semibold transition-all duration-150`,`focus:outline-none focus:ring-2 focus:ring-[#4082E6]`,`disabled:pointer-events-none disabled:opacity-50 cursor-pointer`,{default:`border border-slate-200 dark:border-slate-800 bg-white dark:bg-slate-900 text-slate-700 dark:text-slate-200 hover:bg-slate-50 dark:hover:bg-slate-800`,ghost:`bg-transparent text-slate-700 dark:text-slate-200 hover:bg-slate-100 dark:hover:bg-slate-800`,outline:`border border-slate-300 dark:border-slate-700 bg-transparent text-slate-700 dark:text-slate-200 hover:border-[#4082E6] hover:text-[#4082E6]`}[i.variant],{sm:`h-8 px-3 text-xs rounded-xl gap-2`,md:`h-10 px-4 text-sm rounded-2xl gap-2.5`,lg:`h-12 px-5 text-base rounded-2xl gap-3`}[i.size]].join(` `)),f=(0,t.computed)(()=>({sm:`w-3 h-3`,md:`w-4 h-4`,lg:`w-4 h-4`})[i.size]),p=(0,t.computed)(()=>i.align===`right`?`right-0`:`left-0`),m=()=>{i.disabled||(o.value=!o.value)},h=e=>{e.disabled||(a(`update:modelValue`,e.id),a(`select`,e),o.value=!1)},x=e=>{o.value&&(s.value?.contains(e.target)||(o.value=!1))};return(0,t.onMounted)(()=>{document.addEventListener(`mousedown`,x)}),(0,t.onUnmounted)(()=>{document.removeEventListener(`mousedown`,x)}),(r,i)=>((0,t.openBlock)(),(0,t.createElementBlock)(`div`,{ref_key:`wrapperEl`,ref:s,class:`krea-dropdown-wrapper`},[(0,t.createElementVNode)(`button`,{type:`button`,onClick:m,disabled:e.disabled,class:(0,t.normalizeClass)(d.value)},[(0,t.createElementVNode)(`div`,_,[u.value?((0,t.openBlock)(),(0,t.createBlock)((0,t.resolveDynamicComponent)(u.value),{key:0,class:`w-4 h-4 shrink-0 text-slate-500 dark:text-slate-400`})):(0,t.createCommentVNode)(``,!0),(0,t.createElementVNode)(`span`,null,(0,t.toDisplayString)(l.value),1)]),(0,t.createVNode)((0,t.unref)(n.ChevronDown),{class:(0,t.normalizeClass)([f.value,`text-slate-400 shrink-0 transition-transform duration-200`]),style:(0,t.normalizeStyle)({transform:o.value?`rotate(180deg)`:``})},null,8,[`class`,`style`])],10,g),(0,t.withDirectives)((0,t.createElementVNode)(`div`,{class:(0,t.normalizeClass)([`krea-dropdown-popover`,p.value])},[(0,t.renderSlot)(r.$slots,`default`,{},()=>[((0,t.openBlock)(!0),(0,t.createElementBlock)(t.Fragment,null,(0,t.renderList)(e.items,(n,r)=>((0,t.openBlock)(),(0,t.createElementBlock)(t.Fragment,{key:n.id??r},[n.divider?((0,t.openBlock)(),(0,t.createElementBlock)(`div`,v)):(0,t.createCommentVNode)(``,!0),(0,t.createElementVNode)(`button`,{type:`button`,disabled:n.disabled,onClick:e=>h(n),class:(0,t.normalizeClass)([`krea-dropdown-item`,n.variant===`danger`?`krea-dropdown-item--danger`:e.modelValue===n.id?`krea-dropdown-item--active`:``])},[(0,t.createElementVNode)(`div`,b,[n.icon?((0,t.openBlock)(),(0,t.createBlock)((0,t.resolveDynamicComponent)(n.icon),{key:0,class:`w-4 h-4 shrink-0 text-slate-400`})):(0,t.createCommentVNode)(``,!0),(0,t.createElementVNode)(`span`,null,(0,t.toDisplayString)(n.label),1)])],10,y)],64))),128))],!0)],2),[[t.vShow,o.value]])],512))}}),[[`__scopeId`,`data-v-948716a5`]]),S=[`disabled`,`onClick`],C=(0,t.defineComponent)({__name:`Tabs`,props:{modelValue:{default:``},items:{},variant:{default:`pills`},size:{default:`md`},class:{default:``}},emits:[`update:modelValue`,`change`],setup(e,{emit:n}){let r=e,i=n,a=(0,t.computed)({get:()=>r.modelValue||r.items[0]?.id||``,set:e=>{i(`update:modelValue`,e),i(`change`,e)}}),o=(0,t.computed)(()=>r.variant===`pills`?`inline-flex items-center p-1.5 gap-1 bg-slate-100 dark:bg-slate-900 border border-slate-200/60 dark:border-slate-800 rounded-2xl`:r.variant===`separated`?`inline-flex items-center gap-2 flex-wrap`:`flex items-center gap-6 border-b border-slate-200 dark:border-slate-800 w-full`),s={sm:`px-3 py-1.5 text-sm gap-1.5 [&_svg]:w-4 [&_svg]:h-4`,md:`px-5 py-2 text-sm gap-2 [&_svg]:w-4 [&_svg]:h-4`,lg:`px-7 py-3 text-base gap-2.5 [&_svg]:w-5 [&_svg]:h-5`};function c(e){let t=a.value===e.id;return r.variant===`pills`||r.variant===`separated`?[`inline-flex items-center rounded-xl font-medium transition-all duration-200 focus:outline-none disabled:pointer-events-none disabled:opacity-50`,s[r.size],t?`bg-[#4082E6] text-white font-semibold`:`text-slate-600 dark:text-slate-400 hover:text-slate-900 dark:hover:text-white hover:bg-slate-200/50 dark:hover:bg-slate-800`].join(` `):[`inline-flex items-center font-medium border-b-2 -mb-px pb-3 transition-colors focus:outline-none disabled:pointer-events-none disabled:opacity-50`,s[r.size],t?`border-[#4082E6] text-[#4082E6] font-semibold`:`border-transparent text-slate-500 hover:text-slate-800 dark:hover:text-slate-200`].join(` `)}return(n,i)=>((0,t.openBlock)(),(0,t.createElementBlock)(`div`,{class:(0,t.normalizeClass)([o.value,r.class])},[((0,t.openBlock)(!0),(0,t.createElementBlock)(t.Fragment,null,(0,t.renderList)(e.items,e=>((0,t.openBlock)(),(0,t.createElementBlock)(`button`,{key:e.id,type:`button`,disabled:e.disabled,class:(0,t.normalizeClass)(c(e)),onClick:t=>a.value=e.id},[e.icon?((0,t.openBlock)(),(0,t.createBlock)((0,t.resolveDynamicComponent)(e.icon),{key:0})):(0,t.createCommentVNode)(``,!0),(0,t.createTextVNode)(` `+(0,t.toDisplayString)(e.label),1)],10,S))),128))],2))}});function w(e,t){return{handler:e,config:t}}w.withOptions=function(e,t=()=>({})){function n(n){return{handler:e(n),config:t(n)}}return n.__isOptionsFunction=!0,n};var T=w(function({addBase:e,addComponents:t,theme:n}){e({":root":{"--kv-color-primary":`#4082E6`,"--kv-color-primary-hover":`#2d6ed4`,"--kv-color-primary-light":`#dbeafe`,"--kv-color-secondary":`#FEF747`,"--kv-color-soft-black":`#121212`,"--kv-color-soft-white":`#fafafa`,"--kv-color-surface":`#ffffff`,"--kv-color-border":`#e2e8f0`,"--kv-color-muted":`#64748b`,"--kv-color-muted-light":`#f1f5f9`,"--kv-color-danger":`#f43f5e`,"--kv-radius-sm":`0.75rem`,"--kv-radius-md":`1rem`,"--kv-radius-default":`1.5rem`,"--kv-shadow-none":`none`},'[data-theme="dark"]':{"--kv-color-soft-black":`#fafafa`,"--kv-color-soft-white":`#09090b`,"--kv-color-surface":`#0f0f12`,"--kv-color-border":`#27272a`,"--kv-color-muted":`#a1a1aa`,"--kv-color-muted-light":`#18181b`}})},{theme:{extend:{colors:{kv:{primary:{DEFAULT:`var(--kv-color-primary)`,hover:`var(--kv-color-primary-hover)`,light:`var(--kv-color-primary-light)`},secondary:`var(--kv-color-secondary)`,surface:`var(--kv-color-surface)`,border:`var(--kv-color-border)`,muted:`var(--kv-color-muted)`}},borderRadius:{"kv-sm":`var(--kv-radius-sm)`,"kv-md":`var(--kv-radius-md)`,"kv-default":`var(--kv-radius-default)`}}}});e.Alert=s,e.Badge=c,e.Button=u,e.Card=h,e.DropdownMenu=x,e.Tabs=C,e.kreauiPlugin=T});
|
|
1
|
+
(function(e,t){typeof exports==`object`&&typeof module<`u`?t(exports,require("vue"),require("lucide-vue-next")):typeof define==`function`&&define.amd?define([`exports`,`vue`,`lucide-vue-next`],t):(e=typeof globalThis<`u`?globalThis:e||self,t(e.KreaUI={},e.Vue,e.LucideVueNext))})(this,function(e,t,n){Object.defineProperty(e,Symbol.toStringTag,{value:`Module`});var r={class:`flex-1 text-sm leading-relaxed`},i={class:`opacity-90 [&_p]:m-0 [&_p]:leading-relaxed`},a=(0,t.defineComponent)({__name:`Alert`,props:{variant:{default:`info`},title:{default:``},message:{default:``},dismissible:{type:Boolean,default:!1},showIcon:{type:Boolean,default:!0},class:{default:``}},emits:[`close`],setup(e,{emit:a}){let o=e,s=a,c=(0,t.ref)(!0),l=()=>{c.value=!1,s(`close`)},u={info:n.Info,success:n.CheckCircle2,warning:n.AlertTriangle,danger:n.AlertCircle},d=(0,t.computed)(()=>u[o.variant]),f={info:`bg-blue-50 border-blue-200 text-blue-800 dark:bg-blue-950/20 dark:border-blue-900/50 dark:text-blue-300`,success:`bg-emerald-50 border-emerald-200 text-emerald-800 dark:bg-emerald-950/20 dark:border-emerald-900/50 dark:text-emerald-300`,warning:`bg-amber-50 border-amber-200 text-amber-800 dark:bg-amber-950/20 dark:border-amber-900/50 dark:text-amber-300`,danger:`bg-rose-50 border-rose-200 text-rose-800 dark:bg-rose-950/20 dark:border-rose-900/50 dark:text-rose-300`},p={info:`text-blue-900 dark:text-blue-200`,success:`text-emerald-900 dark:text-emerald-200`,warning:`text-amber-900 dark:text-amber-200`,danger:`text-rose-900 dark:text-rose-200`},m={info:`text-blue-500 hover:bg-blue-100 hover:text-blue-800 dark:text-blue-400 dark:hover:bg-blue-900/40 dark:hover:text-blue-200`,success:`text-emerald-500 hover:bg-emerald-100 hover:text-emerald-800 dark:text-emerald-400 dark:hover:bg-emerald-900/40 dark:hover:text-emerald-200`,warning:`text-amber-500 hover:bg-amber-100 hover:text-amber-800 dark:text-amber-400 dark:hover:bg-amber-900/40 dark:hover:text-amber-200`,danger:`text-rose-500 hover:bg-rose-100 hover:text-rose-800 dark:text-rose-400 dark:hover:bg-rose-900/40 dark:hover:text-rose-200`};return(a,s)=>((0,t.openBlock)(),(0,t.createBlock)(t.Transition,{name:`fade`},{default:(0,t.withCtx)(()=>[c.value?((0,t.openBlock)(),(0,t.createElementBlock)(`div`,{key:0,class:(0,t.normalizeClass)([`flex items-start gap-3 p-4 border rounded-2xl transition-all duration-200 not-content`,f[e.variant],o.class]),role:`alert`},[e.showIcon?((0,t.openBlock)(),(0,t.createBlock)((0,t.resolveDynamicComponent)(d.value),{key:0,class:`w-5 h-5 shrink-0 mt-0.5`})):(0,t.createCommentVNode)(``,!0),(0,t.createElementVNode)(`div`,r,[e.title?((0,t.openBlock)(),(0,t.createElementBlock)(`h5`,{key:0,class:(0,t.normalizeClass)([`font-bold mb-1 m-0 p-0 text-sm leading-snug`,p[e.variant]])},(0,t.toDisplayString)(e.title),3)):(0,t.createCommentVNode)(``,!0),(0,t.createElementVNode)(`div`,i,[e.message?((0,t.openBlock)(),(0,t.createElementBlock)(t.Fragment,{key:0},[(0,t.createTextVNode)((0,t.toDisplayString)(e.message),1)],64)):(0,t.renderSlot)(a.$slots,`default`,{key:1},void 0,!0)])]),e.dismissible?((0,t.openBlock)(),(0,t.createElementBlock)(`button`,{key:1,type:`button`,onClick:l,class:(0,t.normalizeClass)([`p-1 -mr-1 rounded-lg transition-colors cursor-pointer`,m[e.variant]]),"aria-label":`Close alert`},[(0,t.createVNode)((0,t.unref)(n.X),{class:`w-4 h-4`})],2)):(0,t.createCommentVNode)(``,!0)],2)):(0,t.createCommentVNode)(``,!0)]),_:3}))}}),o=(e,t)=>{let n=e.__vccOpts||e;for(let[e,r]of t)n[e]=r;return n},s=o(a,[[`__scopeId`,`data-v-4b55fce4`]]),c=(0,t.defineComponent)({__name:`Badge`,props:{type:{default:`label`},variant:{default:`primary`},appearance:{},size:{default:`md`},rounded:{default:`lg`},iconOnly:{type:Boolean,default:!1},class:{default:``}},setup(e){let n=e,r=(0,t.computed)(()=>n.appearance?n.appearance:n.type===`label`?`soft`:`solid`),i={primary:`bg-[color-mix(in_srgb,var(--kv-color-primary)_5%,transparent)] text-[var(--kv-color-primary)] border-[color-mix(in_srgb,var(--kv-color-primary)_10%,transparent)] dark:bg-[color-mix(in_srgb,var(--kv-color-primary)_10%,transparent)] dark:text-blue-400 dark:border-[color-mix(in_srgb,var(--kv-color-primary)_20%,transparent)] font-bold`,secondary:`bg-gray-50/80 text-gray-500 border-gray-100/50 dark:bg-slate-800/50 dark:text-slate-400 dark:border-slate-800/50`,"brand-secondary":`bg-[color-mix(in_srgb,var(--kv-color-secondary)_15%,transparent)] text-[var(--kv-color-secondary-dark)] border-[color-mix(in_srgb,var(--kv-color-secondary)_30%,transparent)] dark:text-[var(--kv-color-secondary)]`,success:`bg-emerald-50 text-emerald-600 border-emerald-200 dark:bg-emerald-500/10 dark:text-emerald-400 dark:border-emerald-500/20`,error:`bg-rose-50 text-rose-600 border-rose-200 dark:bg-rose-500/10 dark:text-rose-400 dark:border-rose-500/20`,warning:`bg-amber-50 text-amber-600 border-amber-200 dark:bg-amber-500/10 dark:text-amber-400 dark:border-amber-500/20`,info:`bg-sky-50 text-sky-600 border-sky-200 dark:bg-sky-500/10 dark:text-sky-400 dark:border-sky-500/20`,outline:`bg-transparent text-slate-600 border-slate-200 dark:text-slate-400 dark:border-slate-700`},a={primary:`bg-[var(--kv-color-primary)] text-white border-transparent`,secondary:`bg-slate-500 text-white border-transparent`,"brand-secondary":`bg-[var(--kv-color-secondary)] text-[var(--kv-color-soft-black)] border-transparent font-bold`,success:`bg-emerald-500 text-white border-transparent`,error:`bg-rose-500 text-white border-transparent`,warning:`bg-amber-500 text-white border-transparent`,info:`bg-sky-500 text-white border-transparent`,outline:`bg-transparent text-slate-600 border-slate-200`},o={sm:`text-[12px] px-2.5 py-1 tracking-tight`,md:`text-[14px] px-2.5 py-0.5 tracking-wide font-medium`,lg:`text-[16px] px-3 py-1 tracking-wide font-medium`},s={sm:`text-[12px] h-4 min-w-[16px] px-1 font-bold`,md:`text-[12px] h-5 min-w-[20px] px-1.5 font-bold`,lg:`text-[14px] h-6 min-w-[24px] px-2 font-bold`},c={sm:`h-4 w-4`,md:`h-5 w-5`,lg:`h-6 w-6`},l={sm:`h-5 w-5`,md:`h-6 w-6`,lg:`h-7 w-7`},u={sm:`h-2 w-2`,md:`h-3 w-3`,lg:`h-4 w-4`},d={sm:`rounded-sm`,md:`rounded-md`,lg:`rounded-lg`,full:`rounded-full`,"card-corner":`rounded-bl-2xl rounded-tr-none rounded-tl-none rounded-br-none`},f=(0,t.computed)(()=>{let e=`inline-flex items-center justify-center gap-1.5 transition-all duration-200 select-none whitespace-nowrap box-border`,t=r.value===`soft`?i[n.variant]:a[n.variant];return n.type===`notification`?[e,`rounded-full border`,t,n.iconOnly?c[n.size]:s[n.size],n.class].filter(Boolean).join(` `):n.type===`hint`?[e,`rounded-full border`,t,u[n.size],n.class].filter(Boolean).join(` `):[e,`border`,t,n.iconOnly?l[n.size]:o[n.size],d[n.rounded],n.class].filter(Boolean).join(` `)});return(n,r)=>((0,t.openBlock)(),(0,t.createElementBlock)(`span`,{class:(0,t.normalizeClass)(f.value)},[e.type===`hint`?(0,t.createCommentVNode)(``,!0):(0,t.renderSlot)(n.$slots,`default`,{key:0})],2))}}),l=(0,t.defineComponent)({__name:`Button`,props:{variant:{default:`primary`},size:{default:`md`},disabled:{type:Boolean,default:!1},loading:{type:Boolean,default:!1},icon:{type:Boolean,default:!1},label:{default:``},href:{default:void 0},iconLeft:{},iconRight:{},class:{default:``}},emits:[`click`],setup(e,{emit:r}){let i=e,a={primary:`bg-[var(--kv-color-primary)] text-white hover:bg-[var(--kv-color-primary-hover)] focus-visible:ring-[var(--kv-color-primary)]`,outline:`border border-slate-200 bg-transparent text-slate-600 hover:bg-slate-50 hover:text-slate-900 focus-visible:ring-slate-400 dark:border-slate-700 dark:text-slate-300 dark:hover:bg-slate-800 dark:hover:text-slate-100`,ghost:`bg-transparent text-slate-500 hover:bg-slate-100 hover:text-slate-900 focus-visible:ring-slate-400 dark:text-slate-400 dark:hover:bg-slate-800 dark:hover:text-slate-100`,danger:`bg-rose-500 text-white hover:bg-rose-600 focus-visible:ring-rose-500`},o={sm:`h-9 px-4 text-sm gap-1.5 [&_svg]:w-4 [&_svg]:h-4`,md:`h-11 px-6 text-base gap-2 [&_svg]:w-5 [&_svg]:h-5`,lg:`h-14 px-10 text-2xl gap-2.5 [&_svg]:w-6 [&_svg]:h-6`},s={sm:`h-9 w-9 text-lg [&_svg]:w-6 [&_svg]:h-6`,md:`h-11 w-11 text-xl [&_svg]:w-8 [&_svg]:h-8`,lg:`h-14 w-14 text-2xl [&_svg]:w-10 [&_svg]:h-10`},c=r,l=e=>{!i.disabled&&!i.loading&&c(`click`,e)},u=(0,t.computed)(()=>[`inline-flex items-center justify-center whitespace-nowrap rounded-2xl transition-colors duration-200`,i.icon?`font-medium`:`font-bold`,`focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-offset-2`,`disabled:pointer-events-none disabled:opacity-50`,a[i.variant],i.icon?s[i.size]:o[i.size],i.class].filter(Boolean).join(` `));return(r,a)=>((0,t.openBlock)(),(0,t.createBlock)((0,t.resolveDynamicComponent)(i.href?`a`:`button`),{href:i.href,class:(0,t.normalizeClass)(u.value),disabled:i.href?void 0:e.disabled||e.loading,onClick:l},{default:(0,t.withCtx)(()=>[e.loading?((0,t.openBlock)(),(0,t.createBlock)((0,t.unref)(n.Loader2),{key:0,class:`animate-spin shrink-0`})):e.iconLeft?((0,t.openBlock)(),(0,t.createBlock)((0,t.resolveDynamicComponent)(e.iconLeft),{key:1})):(0,t.createCommentVNode)(``,!0),e.label?((0,t.openBlock)(),(0,t.createElementBlock)(t.Fragment,{key:2},[(0,t.createTextVNode)((0,t.toDisplayString)(e.label),1)],64)):(0,t.createCommentVNode)(``,!0),(0,t.renderSlot)(r.$slots,`default`),e.iconRight&&!e.loading?((0,t.openBlock)(),(0,t.createBlock)((0,t.resolveDynamicComponent)(e.iconRight),{key:3})):(0,t.createCommentVNode)(``,!0)]),_:3},8,[`href`,`class`,`disabled`]))}}),u=[`width`,`height`],d=[`fill`],f=[`fill`],p=[`fill`],m=(0,t.defineComponent)({__name:`LevelIcon`,props:{level:{default:`beginner`},size:{default:14},class:{default:``}},setup(e){let n=e,r=(0,t.computed)(()=>{let e=n.level.toLowerCase();return e.includes(`pemula`)||e.includes(`begin`)||e.includes(`basic`)||e.includes(`all`)}),i=(0,t.computed)(()=>{let e=n.level.toLowerCase();return e.includes(`menengah`)||e.includes(`inter`)}),a=(0,t.computed)(()=>{let e=n.level.toLowerCase();return e.includes(`mahir`)||e.includes(`adv`)});return(o,s)=>((0,t.openBlock)(),(0,t.createElementBlock)(`svg`,{width:e.size,height:e.size,viewBox:`0 0 24 24`,fill:`none`,xmlns:`http://www.w3.org/2000/svg`,class:(0,t.normalizeClass)([`shrink-0 text-[#4082E6] dark:text-blue-400`,n.class])},[(0,t.createElementVNode)(`rect`,{x:`3`,y:`14`,width:`4`,height:`7`,rx:`1.2`,fill:r.value||i.value||a.value?`currentColor`:`rgba(156, 163, 175, 0.2)`},null,8,d),(0,t.createElementVNode)(`rect`,{x:`10`,y:`9`,width:`4`,height:`12`,rx:`1.2`,fill:i.value||a.value?`currentColor`:`rgba(156, 163, 175, 0.2)`},null,8,f),(0,t.createElementVNode)(`rect`,{x:`17`,y:`4`,width:`4`,height:`17`,rx:`1.2`,fill:a.value?`currentColor`:`rgba(156, 163, 175, 0.2)`},null,8,p)],10,u))}}),h=[`width`,`height`],g=(0,t.defineComponent)({__name:`VideoIcon`,props:{size:{default:14},class:{default:``}},setup(e){let n=e;return(e,r)=>((0,t.openBlock)(),(0,t.createElementBlock)(`svg`,{width:n.size,height:n.size,viewBox:`0 0 24 24`,fill:`none`,stroke:`currentColor`,"stroke-width":`2`,"stroke-linecap":`round`,"stroke-linejoin":`round`,xmlns:`http://www.w3.org/2000/svg`,class:(0,t.normalizeClass)([`shrink-0`,n.class])},[...r[0]||=[(0,t.createElementVNode)(`polygon`,{points:`23 7 16 12 23 17 23 7`,fill:`currentColor`,stroke:`none`},null,-1),(0,t.createElementVNode)(`rect`,{x:`1`,y:`5`,width:`15`,height:`14`,rx:`2`,ry:`2`},null,-1)]],10,h))}}),_={class:`p-3 pb-0`},ee={class:`relative aspect-video bg-slate-100 dark:bg-slate-800 rounded-2xl overflow-hidden`},te=[`src`,`alt`],v={key:0,class:`absolute top-0 right-0 z-10 px-3 py-1.5 text-[10px] font-bold tracking-tight rounded-bl-2xl`,style:{"background-color":`var(--kv-color-secondary)`,color:`var(--kv-color-primary)`}},y={class:`p-4 grow flex flex-col gap-3`},b={class:`flex items-center justify-between`},x={key:0,class:`opacity-60 font-normal`},S={class:`font-bold text-base leading-snug line-clamp-2 text-slate-900 dark:text-slate-200`},C=[`href`],w={class:`mt-auto pt-4 border-t border-dashed border-slate-100 dark:border-slate-800 flex justify-between items-center px-1`},T={class:`flex flex-col`},E={key:0,class:`text-emerald-500 font-bold text-base`},D={key:0,class:`text-slate-400 dark:text-slate-500 text-[10px] font-medium line-through mb-0.5`},O={class:`font-extrabold text-lg tracking-tight`,style:{color:`var(--kv-color-primary)`}},k=[`href`],A={class:`p-3 pb-0`},j={class:`relative aspect-video bg-slate-100 dark:bg-slate-800 rounded-2xl overflow-hidden`},M=[`src`,`alt`],N={class:`p-4 grow flex flex-col`},P={class:`flex items-center justify-between mb-3 text-sm font-medium text-gray-400 dark:text-slate-500`},F={class:`flex items-center gap-2 min-w-0`},I=[`src`,`alt`],L={class:`truncate text-xs`},ne={class:`font-semibold whitespace-nowrap`},R={class:`font-bold text-base leading-tight line-clamp-2 text-slate-900 dark:text-slate-200 mb-3`},z=[`href`],B={class:`mt-auto pt-4 border-t border-dashed border-slate-100 dark:border-slate-800 flex justify-between items-center px-1`},V={class:`flex flex-col`},H={key:0,class:`text-emerald-500 font-bold text-lg`},U={key:1,class:`font-extrabold text-xl tracking-tight`,style:{color:`var(--kv-color-primary)`}},W=[`href`],G={class:`p-6 flex flex-col`},K={key:0,class:`text-base font-semibold text-slate-900 dark:text-white`},q={key:1,class:`mt-1 text-sm text-slate-400 dark:text-slate-500`},J={key:0,class:`flex items-center justify-end gap-3 border-t border-slate-100 dark:border-slate-800 px-6 py-4 bg-slate-50/50 dark:bg-slate-950/50`},Y=`data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='400' height='225' viewBox='0 0 400 225'><rect width='100%' height='100%' fill='%23f1f5f9'/><text x='200' y='118' font-family='Plus Jakarta Sans, system-ui, sans-serif' font-size='16' font-weight='bold' fill='%2394a3b8' text-anchor='middle'>400 x 225 px</text></svg>`,X=`data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 20 20'><circle cx='10' cy='10' r='10' fill='%23e2e8f0'/></svg>`,Z=(0,t.defineComponent)({__name:`Card`,props:{variant:{default:`default`},title:{default:``},description:{default:``},image:{default:``},actionUrl:{default:`#`},class:{default:``},badgeText:{default:``},level:{default:``},ratingCount:{default:0},infoText:{default:``},price:{default:``},discountPrice:{default:``},eventType:{default:`Workshop`},date:{default:``},speaker:{default:``},speakerAvatar:{default:``},status:{default:`open`}},setup(e){let r=e,i=e=>e===`Gratis`||e===`Free`||e===0||e===`0`;return(a,o)=>e.variant===`product`?((0,t.openBlock)(),(0,t.createElementBlock)(`div`,{key:0,class:(0,t.normalizeClass)([`group bg-white dark:bg-slate-900 rounded-[32px] border border-slate-100 dark:border-slate-800 overflow-hidden transition-all duration-500 h-full flex flex-col text-left`,r.class])},[(0,t.createElementVNode)(`div`,_,[(0,t.createElementVNode)(`div`,ee,[(0,t.createElementVNode)(`img`,{src:e.image||Y,alt:e.title,class:`w-full h-full object-cover`},null,8,te),e.badgeText?((0,t.openBlock)(),(0,t.createElementBlock)(`div`,v,(0,t.toDisplayString)(e.badgeText),1)):(0,t.createCommentVNode)(``,!0)])]),(0,t.createElementVNode)(`div`,y,[(0,t.createElementVNode)(`div`,b,[e.level?((0,t.openBlock)(),(0,t.createBlock)(c,{key:0,variant:`secondary`,appearance:`soft`,rounded:`lg`,size:`sm`},{default:(0,t.withCtx)(()=>[(0,t.createVNode)(m,{level:e.level},null,8,[`level`]),(0,t.createElementVNode)(`span`,null,(0,t.toDisplayString)(e.level),1),e.ratingCount?((0,t.openBlock)(),(0,t.createElementBlock)(`span`,x,`(`+(0,t.toDisplayString)(e.ratingCount)+`)`,1)):(0,t.createCommentVNode)(``,!0)]),_:1})):(0,t.createCommentVNode)(``,!0),e.infoText?((0,t.openBlock)(),(0,t.createBlock)(c,{key:1,variant:`primary`,appearance:`soft`,rounded:`lg`,size:`sm`},{default:(0,t.withCtx)(()=>[(0,t.renderSlot)(a.$slots,`info-icon`,{},()=>[(0,t.createVNode)(g,{size:14})]),(0,t.createElementVNode)(`span`,null,(0,t.toDisplayString)(e.infoText),1)]),_:3})):(0,t.createCommentVNode)(``,!0)]),(0,t.createElementVNode)(`h3`,S,[(0,t.createElementVNode)(`a`,{href:e.actionUrl,class:`hover:text-[var(--kv-color-primary)] dark:hover:text-blue-400 transition-colors`},(0,t.toDisplayString)(e.title),9,C)]),(0,t.createElementVNode)(`div`,w,[(0,t.createElementVNode)(`div`,T,[i(e.price)?((0,t.openBlock)(),(0,t.createElementBlock)(`span`,E,`Gratis`)):((0,t.openBlock)(),(0,t.createElementBlock)(t.Fragment,{key:1},[e.discountPrice?((0,t.openBlock)(),(0,t.createElementBlock)(`span`,D,(0,t.toDisplayString)(e.discountPrice),1)):(0,t.createCommentVNode)(``,!0),(0,t.createElementVNode)(`span`,O,(0,t.toDisplayString)(e.price),1)],64))]),(0,t.createElementVNode)(`a`,{href:e.actionUrl,class:`w-10 h-10 shrink-0 flex items-center justify-center rounded-2xl bg-slate-50 dark:bg-slate-800/50 text-slate-400 dark:text-slate-500 transition-all duration-500 border border-slate-100 dark:border-slate-800 hover:border-transparent`},[(0,t.createVNode)((0,t.unref)(n.ArrowRight),{size:18,class:`-rotate-45`})],8,k)])])],2)):e.variant===`event`?((0,t.openBlock)(),(0,t.createElementBlock)(`div`,{key:1,class:(0,t.normalizeClass)([`group bg-white dark:bg-slate-900 rounded-[32px] border border-slate-100 dark:border-slate-800 overflow-hidden transition-all duration-500 h-full flex flex-col text-left`,r.class])},[(0,t.createElementVNode)(`div`,A,[(0,t.createElementVNode)(`div`,j,[(0,t.createElementVNode)(`img`,{src:e.image||Y,alt:e.title,class:`w-full h-full object-cover`},null,8,M),e.eventType?((0,t.openBlock)(),(0,t.createBlock)(c,{key:0,variant:`primary`,appearance:`soft`,rounded:`lg`,size:`sm`,class:`absolute top-3 left-3 z-10`},{default:(0,t.withCtx)(()=>[(0,t.createTextVNode)((0,t.toDisplayString)(e.eventType),1)]),_:1})):(0,t.createCommentVNode)(``,!0),(0,t.createVNode)(c,{variant:e.status===`open`?`success`:e.status===`closed`?`secondary`:`primary`,appearance:`soft`,rounded:`card-corner`,size:`sm`,class:`absolute top-0 right-0 z-10`},{default:(0,t.withCtx)(()=>[(0,t.createTextVNode)((0,t.toDisplayString)(e.status===`open`?`Open`:e.status===`closed`?`Closed`:`Segera`),1)]),_:1},8,[`variant`])])]),(0,t.createElementVNode)(`div`,N,[(0,t.createElementVNode)(`div`,P,[(0,t.createElementVNode)(`div`,F,[(0,t.createElementVNode)(`img`,{src:e.speakerAvatar||X,alt:e.speaker,class:`w-5 h-5 rounded-full object-cover border border-gray-100 dark:border-slate-700 shrink-0`},null,8,I),(0,t.createElementVNode)(`span`,L,(0,t.toDisplayString)(e.speaker||`Speaker`),1)]),e.date?((0,t.openBlock)(),(0,t.createBlock)(c,{key:0,variant:`secondary`,appearance:`soft`,rounded:`lg`,size:`sm`},{default:(0,t.withCtx)(()=>[(0,t.createVNode)((0,t.unref)(n.Calendar),{size:12}),(0,t.createElementVNode)(`span`,ne,(0,t.toDisplayString)(e.date),1)]),_:1})):(0,t.createCommentVNode)(``,!0)]),(0,t.createElementVNode)(`h3`,R,[(0,t.createElementVNode)(`a`,{href:e.actionUrl,class:`hover:text-[var(--kv-color-primary)] dark:hover:text-blue-400 transition-colors`},(0,t.toDisplayString)(e.title),9,z)]),(0,t.createElementVNode)(`div`,B,[(0,t.createElementVNode)(`div`,V,[i(e.price)?((0,t.openBlock)(),(0,t.createElementBlock)(`span`,H,`Gratis`)):((0,t.openBlock)(),(0,t.createElementBlock)(`span`,U,(0,t.toDisplayString)(e.price),1))]),(0,t.createElementVNode)(`a`,{href:e.actionUrl,class:`w-10 h-10 flex items-center justify-center rounded-2xl bg-slate-50 dark:bg-slate-800/50 text-slate-400 dark:text-slate-500 transition-all duration-500 border border-slate-100 dark:border-slate-800 hover:border-transparent`},[(0,t.createVNode)((0,t.unref)(n.ArrowRight),{size:18,class:`-rotate-45`})],8,W)])])],2)):((0,t.openBlock)(),(0,t.createElementBlock)(`div`,{key:2,class:(0,t.normalizeClass)([`rounded-3xl border border-slate-200 dark:border-slate-800 bg-white dark:bg-slate-900 overflow-hidden`,r.class])},[(0,t.createElementVNode)(`div`,G,[e.title?((0,t.openBlock)(),(0,t.createElementBlock)(`h3`,K,(0,t.toDisplayString)(e.title),1)):(0,t.createCommentVNode)(``,!0),e.description?((0,t.openBlock)(),(0,t.createElementBlock)(`p`,q,(0,t.toDisplayString)(e.description),1)):(0,t.createCommentVNode)(``,!0),a.$slots.default?((0,t.openBlock)(),(0,t.createElementBlock)(`div`,{key:2,class:(0,t.normalizeClass)(e.title||e.description?`mt-4`:``)},[(0,t.renderSlot)(a.$slots,`default`)],2)):(0,t.createCommentVNode)(``,!0)]),a.$slots.footer?((0,t.openBlock)(),(0,t.createElementBlock)(`div`,J,[(0,t.renderSlot)(a.$slots,`footer`)])):(0,t.createCommentVNode)(``,!0)],2))}}),re=[`disabled`],ie={class:`flex items-center gap-2`},ae={key:0,class:`krea-dropdown-divider`},oe=[`disabled`,`onClick`],se={class:`flex items-center gap-3`},Q=o((0,t.defineComponent)({__name:`DropdownMenu`,props:{triggerText:{default:`Pilih Opsi`},align:{default:`left`},disabled:{type:Boolean,default:!1},items:{default:()=>[]},modelValue:{default:``},variant:{default:`default`},size:{default:`md`}},emits:[`update:modelValue`,`select`],setup(e,{emit:r}){let i=e,a=r,o=(0,t.ref)(!1),s=(0,t.ref)(null),c=(0,t.computed)(()=>i.items.find(e=>e.id===i.modelValue)),l=(0,t.computed)(()=>c.value?.label??i.triggerText),u=(0,t.computed)(()=>c.value?.icon),d=(0,t.computed)(()=>[`inline-flex items-center justify-between whitespace-nowrap`,`font-semibold transition-all duration-150`,`focus:outline-none focus:ring-2 focus:ring-[#4082E6]`,`disabled:pointer-events-none disabled:opacity-50 cursor-pointer`,{default:`border border-slate-200 dark:border-slate-800 bg-white dark:bg-slate-900 text-slate-700 dark:text-slate-200 hover:bg-slate-50 dark:hover:bg-slate-800`,ghost:`bg-transparent text-slate-700 dark:text-slate-200 hover:bg-slate-100 dark:hover:bg-slate-800`,outline:`border border-slate-300 dark:border-slate-700 bg-transparent text-slate-700 dark:text-slate-200 hover:border-[#4082E6] hover:text-[#4082E6]`}[i.variant],{sm:`h-8 px-3 text-xs rounded-xl gap-2`,md:`h-10 px-4 text-sm rounded-2xl gap-2.5`,lg:`h-12 px-5 text-base rounded-2xl gap-3`}[i.size]].join(` `)),f=(0,t.computed)(()=>({sm:`w-3 h-3`,md:`w-4 h-4`,lg:`w-4 h-4`})[i.size]),p=(0,t.computed)(()=>i.align===`right`?`right-0`:`left-0`),m=()=>{i.disabled||(o.value=!o.value)},h=e=>{e.disabled||(a(`update:modelValue`,e.id),a(`select`,e),o.value=!1)},g=e=>{o.value&&(s.value?.contains(e.target)||(o.value=!1))};return(0,t.onMounted)(()=>{document.addEventListener(`mousedown`,g)}),(0,t.onUnmounted)(()=>{document.removeEventListener(`mousedown`,g)}),(r,i)=>((0,t.openBlock)(),(0,t.createElementBlock)(`div`,{ref_key:`wrapperEl`,ref:s,class:`krea-dropdown-wrapper`},[(0,t.createElementVNode)(`button`,{type:`button`,onClick:m,disabled:e.disabled,class:(0,t.normalizeClass)(d.value)},[(0,t.createElementVNode)(`div`,ie,[u.value?((0,t.openBlock)(),(0,t.createBlock)((0,t.resolveDynamicComponent)(u.value),{key:0,class:`w-4 h-4 shrink-0 text-slate-500 dark:text-slate-400`})):(0,t.createCommentVNode)(``,!0),(0,t.createElementVNode)(`span`,null,(0,t.toDisplayString)(l.value),1)]),(0,t.createVNode)((0,t.unref)(n.ChevronDown),{class:(0,t.normalizeClass)([f.value,`text-slate-400 shrink-0 transition-transform duration-200`]),style:(0,t.normalizeStyle)({transform:o.value?`rotate(180deg)`:``})},null,8,[`class`,`style`])],10,re),(0,t.withDirectives)((0,t.createElementVNode)(`div`,{class:(0,t.normalizeClass)([`krea-dropdown-popover`,p.value])},[(0,t.renderSlot)(r.$slots,`default`,{},()=>[((0,t.openBlock)(!0),(0,t.createElementBlock)(t.Fragment,null,(0,t.renderList)(e.items,(n,r)=>((0,t.openBlock)(),(0,t.createElementBlock)(t.Fragment,{key:n.id??r},[n.divider?((0,t.openBlock)(),(0,t.createElementBlock)(`div`,ae)):(0,t.createCommentVNode)(``,!0),(0,t.createElementVNode)(`button`,{type:`button`,disabled:n.disabled,onClick:e=>h(n),class:(0,t.normalizeClass)([`krea-dropdown-item`,n.variant===`danger`?`krea-dropdown-item--danger`:e.modelValue===n.id?`krea-dropdown-item--active`:``])},[(0,t.createElementVNode)(`div`,se,[n.icon?((0,t.openBlock)(),(0,t.createBlock)((0,t.resolveDynamicComponent)(n.icon),{key:0,class:`w-4 h-4 shrink-0 text-slate-400`})):(0,t.createCommentVNode)(``,!0),(0,t.createElementVNode)(`span`,null,(0,t.toDisplayString)(n.label),1)])],10,oe)],64))),128))],!0)],2),[[t.vShow,o.value]])],512))}}),[[`__scopeId`,`data-v-948716a5`]]),ce=[`disabled`,`onClick`],le=(0,t.defineComponent)({__name:`Tabs`,props:{modelValue:{default:``},items:{},variant:{default:`pills`},size:{default:`md`},class:{default:``}},emits:[`update:modelValue`,`change`],setup(e,{emit:n}){let r=e,i=n,a=(0,t.computed)({get:()=>r.modelValue||r.items[0]?.id||``,set:e=>{i(`update:modelValue`,e),i(`change`,e)}}),o=(0,t.computed)(()=>r.variant===`pills`?`inline-flex items-center p-1.5 gap-1 bg-slate-100 dark:bg-slate-900 border border-slate-200/60 dark:border-slate-800 rounded-2xl`:r.variant===`separated`?`inline-flex items-center gap-2 flex-wrap`:`flex items-center gap-6 border-b border-slate-200 dark:border-slate-800 w-full`),s={sm:`px-3 py-1.5 text-sm gap-1.5 [&_svg]:w-4 [&_svg]:h-4`,md:`px-5 py-2 text-sm gap-2 [&_svg]:w-4 [&_svg]:h-4`,lg:`px-7 py-3 text-base gap-2.5 [&_svg]:w-5 [&_svg]:h-5`};function c(e){let t=a.value===e.id;return r.variant===`pills`||r.variant===`separated`?[`inline-flex items-center rounded-xl font-medium transition-all duration-200 focus:outline-none disabled:pointer-events-none disabled:opacity-50`,s[r.size],t?`bg-[#4082E6] text-white font-semibold`:`text-slate-600 dark:text-slate-400 hover:text-slate-900 dark:hover:text-white hover:bg-slate-200/50 dark:hover:bg-slate-800`].join(` `):[`inline-flex items-center font-medium border-b-2 -mb-px pb-3 transition-colors focus:outline-none disabled:pointer-events-none disabled:opacity-50`,s[r.size],t?`border-[#4082E6] text-[#4082E6] font-semibold`:`border-transparent text-slate-500 hover:text-slate-800 dark:hover:text-slate-200`].join(` `)}return(n,i)=>((0,t.openBlock)(),(0,t.createElementBlock)(`div`,{class:(0,t.normalizeClass)([o.value,r.class])},[((0,t.openBlock)(!0),(0,t.createElementBlock)(t.Fragment,null,(0,t.renderList)(e.items,e=>((0,t.openBlock)(),(0,t.createElementBlock)(`button`,{key:e.id,type:`button`,disabled:e.disabled,class:(0,t.normalizeClass)(c(e)),onClick:t=>a.value=e.id},[e.icon?((0,t.openBlock)(),(0,t.createBlock)((0,t.resolveDynamicComponent)(e.icon),{key:0})):(0,t.createCommentVNode)(``,!0),(0,t.createTextVNode)(` `+(0,t.toDisplayString)(e.label),1)],10,ce))),128))],2))}});function $(e,t){return{handler:e,config:t}}$.withOptions=function(e,t=()=>({})){function n(n){return{handler:e(n),config:t(n)}}return n.__isOptionsFunction=!0,n};var ue=$(function({addBase:e,addComponents:t,theme:n}){e({":root":{"--kv-color-primary":`#4082E6`,"--kv-color-primary-hover":`#2d6ed4`,"--kv-color-primary-light":`#dbeafe`,"--kv-color-secondary":`#FEF747`,"--kv-color-soft-black":`#121212`,"--kv-color-soft-white":`#fafafa`,"--kv-color-surface":`#ffffff`,"--kv-color-border":`#e2e8f0`,"--kv-color-muted":`#64748b`,"--kv-color-muted-light":`#f1f5f9`,"--kv-color-danger":`#f43f5e`,"--kv-radius-sm":`0.75rem`,"--kv-radius-md":`1rem`,"--kv-radius-default":`1.5rem`,"--kv-shadow-none":`none`},'[data-theme="dark"]':{"--kv-color-soft-black":`#fafafa`,"--kv-color-soft-white":`#09090b`,"--kv-color-surface":`#0f0f12`,"--kv-color-border":`#27272a`,"--kv-color-muted":`#a1a1aa`,"--kv-color-muted-light":`#18181b`}})},{theme:{extend:{colors:{kv:{primary:{DEFAULT:`var(--kv-color-primary)`,hover:`var(--kv-color-primary-hover)`,light:`var(--kv-color-primary-light)`},secondary:`var(--kv-color-secondary)`,surface:`var(--kv-color-surface)`,border:`var(--kv-color-border)`,muted:`var(--kv-color-muted)`}},borderRadius:{"kv-sm":`var(--kv-radius-sm)`,"kv-md":`var(--kv-radius-md)`,"kv-default":`var(--kv-radius-default)`}}}});e.Alert=s,e.Badge=c,e.Button=l,e.Card=Z,e.DropdownMenu=Q,e.LevelIcon=m,e.Tabs=le,e.VideoIcon=g,e.kreauiPlugin=ue});
|