zabi-components 1.0.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.
@@ -0,0 +1,74 @@
1
+ import { p as g, l as _, a as H, i as J, c as K, f as O, b as Q, d as p, e as R, g as S, h as r, u as o, j as C, k as U, s as w, m as l, t as k, n as V, o as a, q as M, r as W, v as X, w as Y, x as Z, y as $ } from "./index-DInFKA3g.js";
2
+ import { createEventDispatcher as ee } from "svelte";
3
+ var te = C('<div><div class="flex items-center"><svg class="w-5 h-5 mr-3 flex-shrink-0" fill="none" stroke="currentColor" viewBox="0 0 24 24"><path stroke-linecap="round" stroke-linejoin="round" stroke-width="2"></path></svg> <span class="text-sm font-medium flex-1"> </span></div> <button class="ml-3 flex-shrink-0 opacity-70 hover:opacity-100 transition-opacity" aria-label="Close notification"><svg class="w-4 h-4" fill="none" stroke="currentColor" viewBox="0 0 24 24"><path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M6 18L18 6M6 6l12 12"></path></svg></button></div>'), se = C("<div></div>");
4
+ function oe(N, i) {
5
+ S(i, !1);
6
+ let t = g(i, "notifications", 28, () => []), d = g(i, "position", 8, "top-right"), c = g(i, "maxNotifications", 8, 5);
7
+ const L = ee(), j = "px-4 py-3 rounded-md border flex items-center justify-between mb-3 shadow-lg", u = {
8
+ success: "bg-green-100 border-green-400 text-green-700",
9
+ error: "bg-red-100 border-red-400 text-red-700",
10
+ warning: "bg-yellow-100 border-yellow-400 text-yellow-700",
11
+ info: "bg-blue-100 border-blue-400 text-blue-700",
12
+ default: "bg-gray-100 border-gray-400 text-gray-700"
13
+ }, v = {
14
+ success: "M5 13l4 4L19 7",
15
+ error: "M6 18L18 6M6 6l12 12",
16
+ warning: "M12 9v2m0 4h.01m-6.938 4h13.856c1.54 0 2.502-1.667 1.732-2.5L13.732 4c-.77-.833-1.732-.833-2.5 0L3.732 16c-.77.833.192 2.5 1.732 2.5z",
17
+ info: "M13 16h-1v-4h-1m1-4h.01M21 12a9 9 0 11-18 0 9 9 0 0118 0z",
18
+ default: "M13 16h-1v-4h-1m1-4h.01M21 12a9 9 0 11-18 0 9 9 0 0118 0z"
19
+ }, z = {
20
+ "top-right": "fixed top-4 right-4",
21
+ "top-left": "fixed top-4 left-4",
22
+ "bottom-right": "fixed bottom-4 right-4",
23
+ "bottom-left": "fixed bottom-4 left-4"
24
+ };
25
+ function B(e) {
26
+ return `${j} ${u[e] || u.default}`;
27
+ }
28
+ function E(e) {
29
+ return v[e] || v.default;
30
+ }
31
+ function m(e) {
32
+ L("remove", { id: e });
33
+ }
34
+ _(
35
+ () => (r(t()), r(c())),
36
+ () => {
37
+ t().length > c() && t(t().slice(-c()));
38
+ }
39
+ ), _(() => r(t()), () => {
40
+ t().length > 0 && t().forEach((e) => {
41
+ e.duration && e.duration > 0 && setTimeout(
42
+ () => {
43
+ m(e.id);
44
+ },
45
+ e.duration
46
+ );
47
+ });
48
+ }), H(), J();
49
+ var b = K(), q = O(b);
50
+ {
51
+ var D = (e) => {
52
+ var f = se();
53
+ U(f, 5, t, (h) => h.id, (h, s) => {
54
+ var n = te(), x = l(n), y = l(x), I = l(y), P = w(y, 2), T = l(P), A = w(x, 2);
55
+ k(
56
+ (F, G) => {
57
+ M(n, 1, F), W(I, "d", G), X(T, (a(s), o(() => a(s).message)));
58
+ },
59
+ [
60
+ () => V((a(s), o(() => B(a(s).type)))),
61
+ () => (a(s), o(() => E(a(s).type)))
62
+ ]
63
+ ), Y("click", A, () => m(a(s).id)), Z(3, n, () => $, () => ({ x: d().includes("right") ? 300 : -300, duration: 300 })), p(h, n);
64
+ }), k(() => M(f, 1, `${r(d()), o(() => z[d()]) ?? ""} z-50 max-w-sm w-full space-y-2`)), p(e, f);
65
+ };
66
+ Q(q, (e) => {
67
+ r(t()), o(() => t().length > 0) && e(D);
68
+ });
69
+ }
70
+ p(N, b), R();
71
+ }
72
+ export {
73
+ oe as N
74
+ };
@@ -0,0 +1,620 @@
1
+ import { p as l, l as X, a as ue, i as de, j as P, b as E, d as r, e as se, g as ie, h as j, o as t, z as q, m as u, A as N, f as $, s as I, t as m, q as D, n as G, w as Z, u as ne, E as ve, r as ee, F as we, c as ae, B as oe, v as K, C as fe, G as le } from "./index-DInFKA3g.js";
2
+ import { f as me, s as Q, g as _e } from "./Toggle-q1tBzXDR.js";
3
+ import { createEventDispatcher as ge, onMount as he } from "svelte";
4
+ var pe = P("<div></div>"), je = ve('<svg fill="currentColor" viewBox="0 0 20 20"><path fill-rule="evenodd" clip-rule="evenodd" class="svelte-14njway"></path></svg>'), Ce = ve('<svg fill="currentColor" viewBox="0 0 20 20"><path fill-rule="evenodd" clip-rule="evenodd" class="svelte-14njway"></path></svg>'), ke = P('<button type="button"><!> <!> <!> <!></button> <button type="button" aria-label="Close badge"><svg class="w-full h-full svelte-14njway" fill="currentColor" viewBox="0 0 20 20"><path fill-rule="evenodd" d="M4.293 4.293a1 1 0 011.414 0L10 8.586l4.293-4.293a1 1 0 111.414 1.414L11.414 10l4.293 4.293a1 1 0 01-1.414 1.414L10 11.414l-4.293 4.293a1 1 0 01-1.414-1.414L8.586 10 4.293 5.707a1 1 0 010-1.414z" clip-rule="evenodd" class="svelte-14njway"></path></svg></button>', 1), Pe = P("<div></div>"), Le = ve('<svg fill="currentColor" viewBox="0 0 20 20"><path fill-rule="evenodd" clip-rule="evenodd" class="svelte-14njway"></path></svg>'), Ee = ve('<svg fill="currentColor" viewBox="0 0 20 20"><path fill-rule="evenodd" clip-rule="evenodd" class="svelte-14njway"></path></svg>'), Ie = P("<span><!> <!> <!> <!></span>"), Be = P('<div class="inline-flex items-center gap-1 svelte-14njway"><!></div>');
5
+ const Me = {
6
+ hash: "svelte-14njway",
7
+ code: `
8
+ /* Hover effects for closable badges */.badge-closable.svelte-14njway:hover {transform:translateY(-1px);box-shadow:0 4px 8px rgba(0, 0, 0, 0.2);}.badge-closable.svelte-14njway:active {transform:translateY(0);}
9
+
10
+ /* Focus styles for accessibility */.badge-closable.svelte-14njway:focus {outline:2px solid var(--color-plasma-red-500);outline-offset:2px;}
11
+
12
+ /* Animation for badge appearance */
13
+ @keyframes svelte-14njway-badge-enter {
14
+ 0% {
15
+ opacity: 0;
16
+ transform: scale(0.8);
17
+ }
18
+ 100% {
19
+ opacity: 1;
20
+ transform: scale(1);
21
+ }
22
+ }.badge-enter.svelte-14njway {
23
+ animation: svelte-14njway-badge-enter 0.2s ease-out;}
24
+
25
+ /* Animation for badge removal */
26
+ @keyframes svelte-14njway-badge-exit {
27
+ 0% {
28
+ opacity: 1;
29
+ transform: scale(1);
30
+ }
31
+ 100% {
32
+ opacity: 0;
33
+ transform: scale(0.8);
34
+ }
35
+ }.badge-exit.svelte-14njway {
36
+ animation: svelte-14njway-badge-exit 0.2s ease-in;}
37
+
38
+ /* Dot animation */.badge-dot.svelte-14njway {
39
+ animation: svelte-14njway-badge-dot-pulse 2s infinite;}
40
+
41
+ @keyframes svelte-14njway-badge-dot-pulse {
42
+ 0%,
43
+ 100% {
44
+ opacity: 1;
45
+ }
46
+ 50% {
47
+ opacity: 0.5;
48
+ }
49
+ }
50
+
51
+ /* Icon rotation for loading states */.badge-icon-loading.svelte-14njway {
52
+ animation: svelte-14njway-badge-icon-spin 1s linear infinite;}
53
+
54
+ @keyframes svelte-14njway-badge-icon-spin {
55
+ from {
56
+ transform: rotate(0deg);
57
+ }
58
+ to {
59
+ transform: rotate(360deg);
60
+ }
61
+ }`
62
+ };
63
+ function Qe(H, e) {
64
+ ie(e, !1), me(H, Me);
65
+ const x = q(), w = q(), b = q(), a = q(), d = q(), h = q(), W = q();
66
+ let T = l(e, "variant", 8, "default"), g = l(e, "size", 8, "md"), i = l(e, "shape", 8, "rounded"), c = l(e, "dot", 8, !1), _ = l(e, "closable", 8, !1), s = l(e, "icon", 8, void 0), L = l(e, "iconPosition", 8, "left");
67
+ const F = ge();
68
+ function R(n) {
69
+ n.stopPropagation(), F("close", { event: n });
70
+ }
71
+ function B(n) {
72
+ F("click", { event: n });
73
+ }
74
+ X(() => {
75
+ }, () => {
76
+ N(x, {
77
+ sm: "px-2 py-0.5 text-xs",
78
+ md: "px-3 py-1 text-sm",
79
+ lg: "px-4 py-1.5 text-base"
80
+ });
81
+ }), X(() => {
82
+ }, () => {
83
+ N(w, {
84
+ default: "bg-dark-700 text-white border-dark-600",
85
+ success: "bg-matrix-green-900/20 text-matrix-green-400 border-matrix-green-500/30 grainy-green",
86
+ warning: "bg-cyber-amber-900/20 text-cyber-amber-400 border-cyber-amber-500/30 grainy-amber",
87
+ error: "bg-blood-red-900/20 text-blood-red-400 border-blood-red-500/30 grainy-red",
88
+ info: "bg-blue-900/20 text-blue-400 border-blue-500/30 grainy-blue",
89
+ neutral: "bg-gray-800 text-gray-300 border-gray-600"
90
+ });
91
+ }), X(() => {
92
+ }, () => {
93
+ N(b, {
94
+ rounded: "rounded-md",
95
+ pill: "rounded-full",
96
+ square: "rounded-none"
97
+ });
98
+ }), X(() => {
99
+ }, () => {
100
+ N(a, { sm: "w-1.5 h-1.5", md: "w-2 h-2", lg: "w-2.5 h-2.5" });
101
+ }), X(
102
+ () => (t(x), j(g()), t(w), j(T()), t(b), j(i()), j(_())),
103
+ () => {
104
+ N(d, [
105
+ "inline-flex",
106
+ "items-center",
107
+ "gap-1.5",
108
+ "font-medium",
109
+ "border",
110
+ "transition-all",
111
+ "duration-200",
112
+ "ease-in-out",
113
+ "select-none",
114
+ "cursor-default",
115
+ t(x)[g()],
116
+ t(w)[T()],
117
+ t(b)[i()],
118
+ _() ? "cursor-pointer hover:opacity-80" : ""
119
+ ].join(" "));
120
+ }
121
+ ), X(() => j(g()), () => {
122
+ N(h, [
123
+ "flex-shrink-0",
124
+ g() === "sm" ? "w-3 h-3" : g() === "md" ? "w-4 h-4" : "w-5 h-5"
125
+ ].join(" "));
126
+ }), X(() => j(g()), () => {
127
+ N(W, [
128
+ "flex-shrink-0",
129
+ "ml-1",
130
+ "hover:bg-white/10",
131
+ "rounded-full",
132
+ "p-0.5",
133
+ "transition-colors",
134
+ "duration-150",
135
+ "ease-in-out",
136
+ g() === "sm" ? "w-3 h-3" : g() === "md" ? "w-4 h-4" : "w-5 h-5"
137
+ ].join(" "));
138
+ }), ue(), de();
139
+ var z = Be(), C = u(z);
140
+ {
141
+ var Y = (n) => {
142
+ var p = ke(), M = $(p), J = u(M);
143
+ {
144
+ var V = (f) => {
145
+ var A = pe();
146
+ m(() => D(
147
+ A,
148
+ 1,
149
+ `w-2 h-2 rounded-full bg-current ${t(a), j(g()), ne(() => t(a)[g()]) ?? ""}`,
150
+ "svelte-14njway"
151
+ )), r(f, A);
152
+ };
153
+ E(J, (f) => {
154
+ c() && f(V);
155
+ });
156
+ }
157
+ var S = I(J, 2);
158
+ {
159
+ var o = (f) => {
160
+ var A = je(), te = u(A);
161
+ m(() => {
162
+ D(A, 0, G(t(h)), "svelte-14njway"), ee(te, "d", s());
163
+ }), r(f, A);
164
+ };
165
+ E(S, (f) => {
166
+ s() && L() === "left" && f(o);
167
+ });
168
+ }
169
+ var O = I(S, 2);
170
+ Q(O, e, "default", {}, null);
171
+ var U = I(O, 2);
172
+ {
173
+ var k = (f) => {
174
+ var A = Ce(), te = u(A);
175
+ m(() => {
176
+ D(A, 0, G(t(h)), "svelte-14njway"), ee(te, "d", s());
177
+ }), r(f, A);
178
+ };
179
+ E(U, (f) => {
180
+ s() && L() === "right" && f(k);
181
+ });
182
+ }
183
+ var y = I(M, 2);
184
+ m(() => {
185
+ D(M, 1, G(t(d)), "svelte-14njway"), D(y, 1, G(t(W)), "svelte-14njway");
186
+ }), Z("click", M, B), Z("keydown", M, (f) => f.key === "Enter" && B(f)), Z("click", y, R), Z("keydown", y, (f) => f.key === "Enter" && R(f)), r(n, p);
187
+ }, v = (n) => {
188
+ var p = Ie(), M = u(p);
189
+ {
190
+ var J = (k) => {
191
+ var y = Pe();
192
+ m(() => D(
193
+ y,
194
+ 1,
195
+ `w-2 h-2 rounded-full bg-current ${t(a), j(g()), ne(() => t(a)[g()]) ?? ""}`,
196
+ "svelte-14njway"
197
+ )), r(k, y);
198
+ };
199
+ E(M, (k) => {
200
+ c() && k(J);
201
+ });
202
+ }
203
+ var V = I(M, 2);
204
+ {
205
+ var S = (k) => {
206
+ var y = Le(), f = u(y);
207
+ m(() => {
208
+ D(y, 0, G(t(h)), "svelte-14njway"), ee(f, "d", s());
209
+ }), r(k, y);
210
+ };
211
+ E(V, (k) => {
212
+ s() && L() === "left" && k(S);
213
+ });
214
+ }
215
+ var o = I(V, 2);
216
+ Q(o, e, "default", {}, null);
217
+ var O = I(o, 2);
218
+ {
219
+ var U = (k) => {
220
+ var y = Ee(), f = u(y);
221
+ m(() => {
222
+ D(y, 0, G(t(h)), "svelte-14njway"), ee(f, "d", s());
223
+ }), r(k, y);
224
+ };
225
+ E(O, (k) => {
226
+ s() && L() === "right" && k(U);
227
+ });
228
+ }
229
+ m(() => D(p, 1, G(t(d)), "svelte-14njway")), r(n, p);
230
+ };
231
+ E(C, (n) => {
232
+ _() ? n(Y) : n(v, !1);
233
+ });
234
+ }
235
+ r(H, z), se();
236
+ }
237
+ var De = P('<div class="absolute inset-0 bg-stone-800/50 rounded-lg flex items-center justify-center" aria-hidden="true"><div class="animate-spin rounded-full h-6 w-6 border-2 border-stone-400 border-t-transparent"></div></div>'), ze = P('<div><div class="card-header svelte-1qx5g6b"><!></div> <div class="card-content svelte-1qx5g6b"><!></div> <div class="card-footer svelte-1qx5g6b"><!></div> <!></div>');
238
+ const Se = {
239
+ hash: "svelte-1qx5g6b",
240
+ code: ".card-header.svelte-1qx5g6b:empty {display:none;}.card-content.svelte-1qx5g6b:empty {display:none;}.card-footer.svelte-1qx5g6b:empty {display:none;}"
241
+ };
242
+ function Xe(H, e) {
243
+ ie(e, !1), me(H, Se);
244
+ const x = q(), w = q();
245
+ let b = l(e, "variant", 8, "default"), a = l(e, "density", 8, "comfortable"), d = l(e, "disabled", 8, !1), h = l(e, "loading", 8, !1), W = l(e, "className", 8, ""), T = l(e, "ariaLabel", 8, ""), g = l(e, "ariaDescribedBy", 8, "");
246
+ const i = ge(), c = {
247
+ compact: "p-3 sm:p-4 rounded-md shadow-sm",
248
+ comfortable: "p-4 sm:p-6 rounded-lg shadow-sm sm:shadow-md",
249
+ spacious: "p-6 sm:p-8 rounded-xl shadow-md sm:shadow-lg"
250
+ }, _ = {
251
+ default: "bg-stone-800 border border-stone-700",
252
+ interactive: "bg-stone-800 border border-stone-700 hover:bg-stone-700 hover:border-stone-600 focus:bg-stone-700 focus:border-stone-600 focus:outline-none focus:ring-2 focus:ring-blue-500 focus:ring-offset-2 focus:ring-offset-stone-900 cursor-pointer"
253
+ };
254
+ function s(o) {
255
+ if (d() || h()) {
256
+ o.preventDefault();
257
+ return;
258
+ }
259
+ i("click", o);
260
+ }
261
+ function L(o) {
262
+ if (!(d() || h())) {
263
+ if (b() === "interactive" && (o.key === "Enter" || o.key === " ")) {
264
+ o.preventDefault();
265
+ const O = new MouseEvent("click", { bubbles: !0, cancelable: !0, clientX: 0, clientY: 0 });
266
+ s(O);
267
+ }
268
+ o.key === "Escape" && o.target.blur();
269
+ }
270
+ }
271
+ function F(o) {
272
+ !d() && !h() && i("focus", o);
273
+ }
274
+ function R(o) {
275
+ !d() && !h() && i("blur", o);
276
+ }
277
+ function B(o) {
278
+ !d() && !h() && i("hover", o);
279
+ }
280
+ function z(o) {
281
+ !d() && !h() && i("leave", o);
282
+ }
283
+ X(
284
+ () => (j(b()), j(a()), j(d()), j(h()), j(W())),
285
+ () => {
286
+ N(x, [
287
+ "transition-all duration-200",
288
+ _[b()],
289
+ c[a()],
290
+ d() ? "opacity-50 cursor-not-allowed" : "",
291
+ h() ? "animate-pulse" : "",
292
+ W()
293
+ ].filter(Boolean).join(" "));
294
+ }
295
+ ), X(
296
+ () => (j(b()), j(d()), j(h()), j(T()), j(g())),
297
+ () => {
298
+ N(w, {
299
+ role: b() === "interactive" ? "button" : "presentation",
300
+ tabindex: b() === "interactive" ? d() ? -1 : 0 : void 0,
301
+ "aria-disabled": b() === "interactive" ? d() : void 0,
302
+ "aria-busy": h(),
303
+ "aria-label": T() || void 0,
304
+ "aria-describedby": g() || void 0
305
+ });
306
+ }
307
+ ), ue(), de();
308
+ var C = ze();
309
+ we(C, () => ({ class: t(x), ...t(w) }), void 0, void 0, "svelte-1qx5g6b");
310
+ var Y = u(C), v = u(Y);
311
+ Q(v, e, "header", {}, null);
312
+ var n = I(Y, 2), p = u(n);
313
+ Q(p, e, "default", {}, null);
314
+ var M = I(n, 2), J = u(M);
315
+ Q(J, e, "footer", {}, null);
316
+ var V = I(M, 2);
317
+ {
318
+ var S = (o) => {
319
+ var O = De();
320
+ r(o, O);
321
+ };
322
+ E(V, (o) => {
323
+ h() && o(S);
324
+ });
325
+ }
326
+ Z("click", C, s), Z("mouseenter", C, B), Z("mouseleave", C, z), Z("keydown", C, L), Z("focus", C, F), Z("blur", C, R), r(H, C), se();
327
+ }
328
+ var qe = P("<h1><!></h1>"), Ne = P("<h2><!></h2>"), Te = P("<h3><!></h3>"), Oe = P("<h4><!></h4>"), Ae = P("<h5><!></h5>"), He = P("<h6><!></h6>");
329
+ function Ue(H, e) {
330
+ ie(e, !1);
331
+ const x = q();
332
+ let w = l(e, "level", 8, 1), b = l(e, "text", 8, ""), a = l(e, "color", 8, "text-white"), d = l(e, "spacing", 8, "normal");
333
+ const h = {
334
+ 1: "!text-6xl md:!text-7xl font-bold leading-tight block",
335
+ 2: "!text-4xl md:!text-5xl font-bold leading-tight block",
336
+ 3: "!text-3xl md:!text-4xl font-semibold leading-snug block",
337
+ 4: "!text-2xl md:!text-3xl font-semibold leading-snug block",
338
+ 5: "!text-xl md:!text-2xl font-medium leading-normal block",
339
+ 6: "!text-lg md:!text-xl font-medium leading-normal block"
340
+ }, W = {
341
+ tight: {
342
+ 1: "mb-2",
343
+ 2: "mb-3",
344
+ 3: "mb-2",
345
+ 4: "mb-2",
346
+ 5: "mb-1",
347
+ 6: "mb-1"
348
+ },
349
+ normal: {
350
+ 1: "mb-4",
351
+ 2: "mb-4",
352
+ 3: "mb-3",
353
+ 4: "mb-3",
354
+ 5: "mb-2",
355
+ 6: "mb-2"
356
+ },
357
+ loose: {
358
+ 1: "mb-6",
359
+ 2: "mb-6",
360
+ 3: "mb-4",
361
+ 4: "mb-4",
362
+ 5: "mb-3",
363
+ 6: "mb-3"
364
+ }
365
+ };
366
+ X(
367
+ () => (j(w()), j(a()), j(d())),
368
+ () => {
369
+ N(x, `${h[w()]} font-title ${a()} ${W[d()][w()]}`);
370
+ }
371
+ ), ue();
372
+ var T = ae(), g = $(T);
373
+ {
374
+ var i = (_) => {
375
+ var s = qe(), L = u(s);
376
+ Q(L, e, "default", {}, (F) => {
377
+ var R = oe();
378
+ m(() => K(R, b())), r(F, R);
379
+ }), m(() => D(s, 1, G(t(x)))), r(_, s);
380
+ }, c = (_) => {
381
+ var s = ae(), L = $(s);
382
+ {
383
+ var F = (B) => {
384
+ var z = Ne(), C = u(z);
385
+ Q(C, e, "default", {}, (Y) => {
386
+ var v = oe();
387
+ m(() => K(v, b())), r(Y, v);
388
+ }), m(() => D(z, 1, G(t(x)))), r(B, z);
389
+ }, R = (B) => {
390
+ var z = ae(), C = $(z);
391
+ {
392
+ var Y = (n) => {
393
+ var p = Te(), M = u(p);
394
+ Q(M, e, "default", {}, (J) => {
395
+ var V = oe();
396
+ m(() => K(V, b())), r(J, V);
397
+ }), m(() => D(p, 1, G(t(x)))), r(n, p);
398
+ }, v = (n) => {
399
+ var p = ae(), M = $(p);
400
+ {
401
+ var J = (S) => {
402
+ var o = Oe(), O = u(o);
403
+ Q(O, e, "default", {}, (U) => {
404
+ var k = oe();
405
+ m(() => K(k, b())), r(U, k);
406
+ }), m(() => D(o, 1, G(t(x)))), r(S, o);
407
+ }, V = (S) => {
408
+ var o = ae(), O = $(o);
409
+ {
410
+ var U = (y) => {
411
+ var f = Ae(), A = u(f);
412
+ Q(A, e, "default", {}, (te) => {
413
+ var re = oe();
414
+ m(() => K(re, b())), r(te, re);
415
+ }), m(() => D(f, 1, G(t(x)))), r(y, f);
416
+ }, k = (y) => {
417
+ var f = ae(), A = $(f);
418
+ {
419
+ var te = (re) => {
420
+ var ce = He(), ye = u(ce);
421
+ Q(ye, e, "default", {}, (xe) => {
422
+ var be = oe();
423
+ m(() => K(be, b())), r(xe, be);
424
+ }), m(() => D(ce, 1, G(t(x)))), r(re, ce);
425
+ };
426
+ E(
427
+ A,
428
+ (re) => {
429
+ w() === 6 && re(te);
430
+ },
431
+ !0
432
+ );
433
+ }
434
+ r(y, f);
435
+ };
436
+ E(
437
+ O,
438
+ (y) => {
439
+ w() === 5 ? y(U) : y(k, !1);
440
+ },
441
+ !0
442
+ );
443
+ }
444
+ r(S, o);
445
+ };
446
+ E(
447
+ M,
448
+ (S) => {
449
+ w() === 4 ? S(J) : S(V, !1);
450
+ },
451
+ !0
452
+ );
453
+ }
454
+ r(n, p);
455
+ };
456
+ E(
457
+ C,
458
+ (n) => {
459
+ w() === 3 ? n(Y) : n(v, !1);
460
+ },
461
+ !0
462
+ );
463
+ }
464
+ r(B, z);
465
+ };
466
+ E(
467
+ L,
468
+ (B) => {
469
+ w() === 2 ? B(F) : B(R, !1);
470
+ },
471
+ !0
472
+ );
473
+ }
474
+ r(_, s);
475
+ };
476
+ E(g, (_) => {
477
+ w() === 1 ? _(i) : _(c, !1);
478
+ });
479
+ }
480
+ r(H, T), se();
481
+ }
482
+ var Fe = P('<img alt="" class="absolute inset-0 w-full h-full object-cover animate-pulse"/>'), Re = P('<img class="w-full h-full object-cover transition-opacity duration-300"/>'), Ve = P('<div class="absolute inset-0 bg-gray-200 flex items-center justify-center text-gray-500"><svg class="w-8 h-8" fill="none" stroke="currentColor" viewBox="0 0 24 24"><path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M4 16l4.586-4.586a2 2 0 012.828 0L16 16m-2-2l2.586-2.586a2 2 0 012.828 0L20 14m-6-6h.01M6 20h12a2 2 0 002-2V6a2 2 0 00-2-2H6a2 2 0 00-2 2v12a2 2 0 002 2z"></path></svg></div>'), Ge = P("<div><!> <!> <!></div>");
483
+ function $e(H, e) {
484
+ ie(e, !1);
485
+ let x = l(e, "src", 8), w = l(e, "alt", 8, ""), b = l(e, "width", 8, "100%"), a = l(e, "height", 8, "auto"), d = l(e, "loading", 8, "lazy"), h = l(e, "className", 8, ""), W = l(e, "placeholder", 8, "data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMTAwIiBoZWlnaHQ9IjEwMCIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj48cmVjdCB3aWR0aD0iMTAwJSIgaGVpZ2h0PSIxMDAlIiBmaWxsPSIjZjNmNGY2Ii8+PC9zdmc+"), T = q(!1), g = q(!1), i = q(!1), c = q();
486
+ he(() => {
487
+ if (d() === "lazy") {
488
+ const v = new IntersectionObserver(
489
+ (n) => {
490
+ n.forEach((p) => {
491
+ p.isIntersecting && (N(i, !0), v.unobserve(p.target));
492
+ });
493
+ },
494
+ { rootMargin: "50px" }
495
+ );
496
+ return t(c) && v.observe(t(c)), () => v.disconnect();
497
+ } else
498
+ N(i, !0);
499
+ });
500
+ function _() {
501
+ N(T, !0);
502
+ }
503
+ function s() {
504
+ N(g, !0), console.warn("Failed to load image:", x());
505
+ }
506
+ de();
507
+ var L = Ge(), F = u(L);
508
+ {
509
+ var R = (v) => {
510
+ var n = Fe();
511
+ m(() => ee(n, "src", W())), r(v, n);
512
+ };
513
+ E(F, (v) => {
514
+ !t(T) && !t(g) && v(R);
515
+ });
516
+ }
517
+ var B = I(F, 2);
518
+ {
519
+ var z = (v) => {
520
+ var n = Re();
521
+ m(() => {
522
+ ee(n, "src", x()), ee(n, "alt", w()), ee(n, "loading", d()), fe(n, `opacity: ${t(T) ? 1 : 0};`);
523
+ }), Z("load", n, _), Z("error", n, s), r(v, n);
524
+ };
525
+ E(B, (v) => {
526
+ t(i) && !t(g) && v(z);
527
+ });
528
+ }
529
+ var C = I(B, 2);
530
+ {
531
+ var Y = (v) => {
532
+ var n = Ve();
533
+ r(v, n);
534
+ };
535
+ E(C, (v) => {
536
+ t(g) && v(Y);
537
+ });
538
+ }
539
+ _e(L, (v) => N(c, v), () => t(c)), m(() => {
540
+ D(L, 1, `relative overflow-hidden ${h() ?? ""}`), fe(L, `width: ${(typeof b() == "number" ? b() + "px" : b()) ?? ""}; height: ${(typeof a() == "number" ? a() + "px" : a()) ?? ""};`);
541
+ }), r(H, L), se();
542
+ }
543
+ var Ze = P('<div class="fixed bottom-4 left-4 bg-black/80 text-white p-4 rounded-lg text-xs font-mono z-50 max-w-xs"><div class="flex items-center justify-between mb-2"><h3 class="font-bold"> </h3> <button class="text-gray-400 hover:text-white">×</button></div> <div class="space-y-1"><div> </div> <div> </div> <div> </div> <div> </div> <div class="pt-1 border-t border-gray-600"><div class="font-semibold"> </div></div></div></div>');
544
+ function et(H, e) {
545
+ ie(e, !1);
546
+ let x = l(e, "isVisible", 12, !1), w = l(e, "showInDev", 8, !0), b = l(e, "title", 8, "Debug Panel"), a = q({
547
+ domContentLoaded: 0,
548
+ loadComplete: 0,
549
+ firstPaint: 0,
550
+ firstContentfulPaint: 0,
551
+ largestContentfulPaint: 0,
552
+ cumulativeLayoutShift: 0
553
+ });
554
+ he(() => {
555
+ typeof window < "u" && "PerformanceObserver" in window && (new PerformanceObserver((i) => {
556
+ for (const c of i.getEntries())
557
+ c.name === "first-paint" && le(a, t(a).firstPaint = c.startTime);
558
+ }).observe({ entryTypes: ["paint"] }), new PerformanceObserver((i) => {
559
+ for (const c of i.getEntries())
560
+ c.name === "first-contentful-paint" && le(a, t(a).firstContentfulPaint = c.startTime);
561
+ }).observe({ entryTypes: ["paint"] }), new PerformanceObserver((i) => {
562
+ const c = i.getEntries(), _ = c[c.length - 1];
563
+ le(a, t(a).largestContentfulPaint = _.startTime);
564
+ }).observe({ entryTypes: ["largest-contentful-paint"] }), new PerformanceObserver((i) => {
565
+ for (const c of i.getEntries())
566
+ c.hadRecentInput || le(a, t(a).cumulativeLayoutShift += c.value);
567
+ }).observe({ entryTypes: ["layout-shift"] })), window.addEventListener("DOMContentLoaded", () => {
568
+ le(a, t(a).domContentLoaded = performance.now());
569
+ }), window.addEventListener("load", () => {
570
+ le(a, t(a).loadComplete = performance.now());
571
+ }), w();
572
+ });
573
+ function d(i) {
574
+ return `${Math.round(i)}ms`;
575
+ }
576
+ function h() {
577
+ const i = t(a).firstContentfulPaint, c = t(a).largestContentfulPaint, _ = t(a).cumulativeLayoutShift;
578
+ let s = 100;
579
+ return i > 1800 && (s -= 20), c > 2500 && (s -= 30), _ > 0.1 && (s -= 25), t(a).loadComplete > 3e3 && (s -= 25), s >= 90 ? "🟢 Excellent" : s >= 70 ? "🟡 Good" : s >= 50 ? "🟠 Needs Improvement" : "🔴 Poor";
580
+ }
581
+ de();
582
+ var W = ae(), T = $(W);
583
+ {
584
+ var g = (i) => {
585
+ var c = Ze(), _ = u(c), s = u(_), L = u(s), F = I(s, 2), R = I(_, 2), B = u(R), z = u(B), C = I(B, 2), Y = u(C), v = I(C, 2), n = u(v), p = I(v, 2), M = u(p), J = I(p, 2), V = u(J), S = u(V);
586
+ m(
587
+ (o, O, U, k, y) => {
588
+ K(L, b()), K(z, `FCP: ${o ?? ""}`), K(Y, `LCP: ${O ?? ""}`), K(n, `CLS: ${U ?? ""}`), K(M, `Load: ${k ?? ""}`), K(S, y);
589
+ },
590
+ [
591
+ () => (t(a), ne(() => d(t(a).firstContentfulPaint))),
592
+ () => (t(a), ne(() => d(t(a).largestContentfulPaint))),
593
+ () => (t(a), ne(() => t(a).cumulativeLayoutShift.toFixed(3))),
594
+ () => (t(a), ne(() => d(t(a).loadComplete))),
595
+ () => ne(h)
596
+ ]
597
+ ), Z("click", F, () => x(!1)), r(i, c);
598
+ };
599
+ E(T, (i) => {
600
+ x() && i(g);
601
+ });
602
+ }
603
+ r(H, W), se();
604
+ }
605
+ var We = P("<div></div>");
606
+ function tt(H, e) {
607
+ let x = l(e, "width", 8, "100%"), w = l(e, "height", 8, "1rem"), b = l(e, "borderRadius", 8, "0.5rem"), a = l(e, "className", 8, "");
608
+ var d = We();
609
+ m(() => {
610
+ D(d, 1, `animate-pulse bg-stone-800 ${a() ?? ""}`), fe(d, `width: ${x() ?? ""}; height: ${w() ?? ""}; border-radius: ${b() ?? ""};`);
611
+ }), r(H, d);
612
+ }
613
+ export {
614
+ Qe as B,
615
+ Xe as C,
616
+ Ue as H,
617
+ $e as O,
618
+ et as P,
619
+ tt as S
620
+ };