@sozialhelden/ui 1.1.0 → 1.1.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/index.js ADDED
@@ -0,0 +1,4595 @@
1
+ import * as c from "react";
2
+ import br, { useState as yr } from "react";
3
+ import * as xr from "react-dom";
4
+ import wr from "react-dom";
5
+ import { XIcon as Er } from "lucide-react";
6
+ var Ce = { exports: {} }, he = {};
7
+ /**
8
+ * @license React
9
+ * react-jsx-runtime.production.js
10
+ *
11
+ * Copyright (c) Meta Platforms, Inc. and affiliates.
12
+ *
13
+ * This source code is licensed under the MIT license found in the
14
+ * LICENSE file in the root directory of this source tree.
15
+ */
16
+ var ot;
17
+ function kr() {
18
+ if (ot) return he;
19
+ ot = 1;
20
+ var e = Symbol.for("react.transitional.element"), t = Symbol.for("react.fragment");
21
+ function r(n, o, a) {
22
+ var i = null;
23
+ if (a !== void 0 && (i = "" + a), o.key !== void 0 && (i = "" + o.key), "key" in o) {
24
+ a = {};
25
+ for (var s in o)
26
+ s !== "key" && (a[s] = o[s]);
27
+ } else a = o;
28
+ return o = a.ref, {
29
+ $$typeof: e,
30
+ type: n,
31
+ key: i,
32
+ ref: o !== void 0 ? o : null,
33
+ props: a
34
+ };
35
+ }
36
+ return he.Fragment = t, he.jsx = r, he.jsxs = r, he;
37
+ }
38
+ var be = {};
39
+ /**
40
+ * @license React
41
+ * react-jsx-runtime.development.js
42
+ *
43
+ * Copyright (c) Meta Platforms, Inc. and affiliates.
44
+ *
45
+ * This source code is licensed under the MIT license found in the
46
+ * LICENSE file in the root directory of this source tree.
47
+ */
48
+ var at;
49
+ function Cr() {
50
+ return at || (at = 1, process.env.NODE_ENV !== "production" && (function() {
51
+ function e(d) {
52
+ if (d == null) return null;
53
+ if (typeof d == "function")
54
+ return d.$$typeof === q ? null : d.displayName || d.name || null;
55
+ if (typeof d == "string") return d;
56
+ switch (d) {
57
+ case f:
58
+ return "Fragment";
59
+ case C:
60
+ return "Profiler";
61
+ case x:
62
+ return "StrictMode";
63
+ case _:
64
+ return "Suspense";
65
+ case j:
66
+ return "SuspenseList";
67
+ case z:
68
+ return "Activity";
69
+ }
70
+ if (typeof d == "object")
71
+ switch (typeof d.tag == "number" && console.error(
72
+ "Received an unexpected object in getComponentNameFromType(). This is likely a bug in React. Please file an issue."
73
+ ), d.$$typeof) {
74
+ case S:
75
+ return "Portal";
76
+ case O:
77
+ return (d.displayName || "Context") + ".Provider";
78
+ case T:
79
+ return (d._context.displayName || "Context") + ".Consumer";
80
+ case A:
81
+ var k = d.render;
82
+ return d = d.displayName, d || (d = k.displayName || k.name || "", d = d !== "" ? "ForwardRef(" + d + ")" : "ForwardRef"), d;
83
+ case P:
84
+ return k = d.displayName || null, k !== null ? k : e(d.type) || "Memo";
85
+ case b:
86
+ k = d._payload, d = d._init;
87
+ try {
88
+ return e(d(k));
89
+ } catch {
90
+ }
91
+ }
92
+ return null;
93
+ }
94
+ function t(d) {
95
+ return "" + d;
96
+ }
97
+ function r(d) {
98
+ try {
99
+ t(d);
100
+ var k = !1;
101
+ } catch {
102
+ k = !0;
103
+ }
104
+ if (k) {
105
+ k = console;
106
+ var D = k.error, N = typeof Symbol == "function" && Symbol.toStringTag && d[Symbol.toStringTag] || d.constructor.name || "Object";
107
+ return D.call(
108
+ k,
109
+ "The provided key is an unsupported type %s. This value must be coerced to a string before using it here.",
110
+ N
111
+ ), t(d);
112
+ }
113
+ }
114
+ function n(d) {
115
+ if (d === f) return "<>";
116
+ if (typeof d == "object" && d !== null && d.$$typeof === b)
117
+ return "<...>";
118
+ try {
119
+ var k = e(d);
120
+ return k ? "<" + k + ">" : "<...>";
121
+ } catch {
122
+ return "<...>";
123
+ }
124
+ }
125
+ function o() {
126
+ var d = se.A;
127
+ return d === null ? null : d.getOwner();
128
+ }
129
+ function a() {
130
+ return Error("react-stack-top-frame");
131
+ }
132
+ function i(d) {
133
+ if (te.call(d, "key")) {
134
+ var k = Object.getOwnPropertyDescriptor(d, "key").get;
135
+ if (k && k.isReactWarning) return !1;
136
+ }
137
+ return d.key !== void 0;
138
+ }
139
+ function s(d, k) {
140
+ function D() {
141
+ H || (H = !0, console.error(
142
+ "%s: `key` is not a prop. Trying to access it will result in `undefined` being returned. If you need to access the same value within the child component, you should pass it as a different prop. (https://react.dev/link/special-props)",
143
+ k
144
+ ));
145
+ }
146
+ D.isReactWarning = !0, Object.defineProperty(d, "key", {
147
+ get: D,
148
+ configurable: !0
149
+ });
150
+ }
151
+ function l() {
152
+ var d = e(this.type);
153
+ return $[d] || ($[d] = !0, console.error(
154
+ "Accessing element.ref was removed in React 19. ref is now a regular prop. It will be removed from the JSX Element type in a future release."
155
+ )), d = this.props.ref, d !== void 0 ? d : null;
156
+ }
157
+ function u(d, k, D, N, M, W, ie, I) {
158
+ return D = W.ref, d = {
159
+ $$typeof: E,
160
+ type: d,
161
+ key: k,
162
+ props: W,
163
+ _owner: M
164
+ }, (D !== void 0 ? D : null) !== null ? Object.defineProperty(d, "ref", {
165
+ enumerable: !1,
166
+ get: l
167
+ }) : Object.defineProperty(d, "ref", { enumerable: !1, value: null }), d._store = {}, Object.defineProperty(d._store, "validated", {
168
+ configurable: !1,
169
+ enumerable: !1,
170
+ writable: !0,
171
+ value: 0
172
+ }), Object.defineProperty(d, "_debugInfo", {
173
+ configurable: !1,
174
+ enumerable: !1,
175
+ writable: !0,
176
+ value: null
177
+ }), Object.defineProperty(d, "_debugStack", {
178
+ configurable: !1,
179
+ enumerable: !1,
180
+ writable: !0,
181
+ value: ie
182
+ }), Object.defineProperty(d, "_debugTask", {
183
+ configurable: !1,
184
+ enumerable: !1,
185
+ writable: !0,
186
+ value: I
187
+ }), Object.freeze && (Object.freeze(d.props), Object.freeze(d)), d;
188
+ }
189
+ function m(d, k, D, N, M, W, ie, I) {
190
+ var L = k.children;
191
+ if (L !== void 0)
192
+ if (N)
193
+ if (Ee(L)) {
194
+ for (N = 0; N < L.length; N++)
195
+ p(L[N]);
196
+ Object.freeze && Object.freeze(L);
197
+ } else
198
+ console.error(
199
+ "React.jsx: Static children should always be an array. You are likely explicitly calling React.jsxs or React.jsxDEV. Use the Babel transform instead."
200
+ );
201
+ else p(L);
202
+ if (te.call(k, "key")) {
203
+ L = e(d);
204
+ var V = Object.keys(k).filter(function(ve) {
205
+ return ve !== "key";
206
+ });
207
+ N = 0 < V.length ? "{key: someKey, " + V.join(": ..., ") + ": ...}" : "{key: someKey}", ge[L + N] || (V = 0 < V.length ? "{" + V.join(": ..., ") + ": ...}" : "{}", console.error(
208
+ `A props object containing a "key" prop is being spread into JSX:
209
+ let props = %s;
210
+ <%s {...props} />
211
+ React keys must be passed directly to JSX without using spread:
212
+ let props = %s;
213
+ <%s key={someKey} {...props} />`,
214
+ N,
215
+ L,
216
+ V,
217
+ L
218
+ ), ge[L + N] = !0);
219
+ }
220
+ if (L = null, D !== void 0 && (r(D), L = "" + D), i(k) && (r(k.key), L = "" + k.key), "key" in k) {
221
+ D = {};
222
+ for (var J in k)
223
+ J !== "key" && (D[J] = k[J]);
224
+ } else D = k;
225
+ return L && s(
226
+ D,
227
+ typeof d == "function" ? d.displayName || d.name || "Unknown" : d
228
+ ), u(
229
+ d,
230
+ L,
231
+ W,
232
+ M,
233
+ o(),
234
+ D,
235
+ ie,
236
+ I
237
+ );
238
+ }
239
+ function p(d) {
240
+ typeof d == "object" && d !== null && d.$$typeof === E && d._store && (d._store.validated = 1);
241
+ }
242
+ var h = br, E = Symbol.for("react.transitional.element"), S = Symbol.for("react.portal"), f = Symbol.for("react.fragment"), x = Symbol.for("react.strict_mode"), C = Symbol.for("react.profiler"), T = Symbol.for("react.consumer"), O = Symbol.for("react.context"), A = Symbol.for("react.forward_ref"), _ = Symbol.for("react.suspense"), j = Symbol.for("react.suspense_list"), P = Symbol.for("react.memo"), b = Symbol.for("react.lazy"), z = Symbol.for("react.activity"), q = Symbol.for("react.client.reference"), se = h.__CLIENT_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE, te = Object.prototype.hasOwnProperty, Ee = Array.isArray, re = console.createTask ? console.createTask : function() {
243
+ return null;
244
+ };
245
+ h = {
246
+ react_stack_bottom_frame: function(d) {
247
+ return d();
248
+ }
249
+ };
250
+ var H, $ = {}, B = h.react_stack_bottom_frame.bind(
251
+ h,
252
+ a
253
+ )(), w = re(n(a)), ge = {};
254
+ be.Fragment = f, be.jsx = function(d, k, D, N, M) {
255
+ var W = 1e4 > se.recentlyCreatedOwnerStacks++;
256
+ return m(
257
+ d,
258
+ k,
259
+ D,
260
+ !1,
261
+ N,
262
+ M,
263
+ W ? Error("react-stack-top-frame") : B,
264
+ W ? re(n(d)) : w
265
+ );
266
+ }, be.jsxs = function(d, k, D, N, M) {
267
+ var W = 1e4 > se.recentlyCreatedOwnerStacks++;
268
+ return m(
269
+ d,
270
+ k,
271
+ D,
272
+ !0,
273
+ N,
274
+ M,
275
+ W ? Error("react-stack-top-frame") : B,
276
+ W ? re(n(d)) : w
277
+ );
278
+ };
279
+ })()), be;
280
+ }
281
+ var st;
282
+ function Sr() {
283
+ return st || (st = 1, process.env.NODE_ENV === "production" ? Ce.exports = kr() : Ce.exports = Cr()), Ce.exports;
284
+ }
285
+ var y = Sr();
286
+ function Rt(e) {
287
+ var t, r, n = "";
288
+ if (typeof e == "string" || typeof e == "number") n += e;
289
+ else if (typeof e == "object") if (Array.isArray(e)) {
290
+ var o = e.length;
291
+ for (t = 0; t < o; t++) e[t] && (r = Rt(e[t])) && (n && (n += " "), n += r);
292
+ } else for (r in e) e[r] && (n && (n += " "), n += r);
293
+ return n;
294
+ }
295
+ function Pt() {
296
+ for (var e, t, r = 0, n = "", o = arguments.length; r < o; r++) (e = arguments[r]) && (t = Rt(e)) && (n && (n += " "), n += t);
297
+ return n;
298
+ }
299
+ const it = (e) => typeof e == "boolean" ? `${e}` : e === 0 ? "0" : e, ct = Pt, At = (e, t) => (r) => {
300
+ var n;
301
+ if (t?.variants == null) return ct(e, r?.class, r?.className);
302
+ const { variants: o, defaultVariants: a } = t, i = Object.keys(o).map((u) => {
303
+ const m = r?.[u], p = a?.[u];
304
+ if (m === null) return null;
305
+ const h = it(m) || it(p);
306
+ return o[u][h];
307
+ }), s = r && Object.entries(r).reduce((u, m) => {
308
+ let [p, h] = m;
309
+ return h === void 0 || (u[p] = h), u;
310
+ }, {}), l = t == null || (n = t.compoundVariants) === null || n === void 0 ? void 0 : n.reduce((u, m) => {
311
+ let { class: p, className: h, ...E } = m;
312
+ return Object.entries(E).every((S) => {
313
+ let [f, x] = S;
314
+ return Array.isArray(x) ? x.includes({
315
+ ...a,
316
+ ...s
317
+ }[f]) : {
318
+ ...a,
319
+ ...s
320
+ }[f] === x;
321
+ }) ? [
322
+ ...u,
323
+ p,
324
+ h
325
+ ] : u;
326
+ }, []);
327
+ return ct(e, i, l, r?.class, r?.className);
328
+ }, Qe = "-", Rr = (e) => {
329
+ const t = Ar(e), {
330
+ conflictingClassGroups: r,
331
+ conflictingClassGroupModifiers: n
332
+ } = e;
333
+ return {
334
+ getClassGroupId: (i) => {
335
+ const s = i.split(Qe);
336
+ return s[0] === "" && s.length !== 1 && s.shift(), Nt(s, t) || Pr(i);
337
+ },
338
+ getConflictingClassGroupIds: (i, s) => {
339
+ const l = r[i] || [];
340
+ return s && n[i] ? [...l, ...n[i]] : l;
341
+ }
342
+ };
343
+ }, Nt = (e, t) => {
344
+ if (e.length === 0)
345
+ return t.classGroupId;
346
+ const r = e[0], n = t.nextPart.get(r), o = n ? Nt(e.slice(1), n) : void 0;
347
+ if (o)
348
+ return o;
349
+ if (t.validators.length === 0)
350
+ return;
351
+ const a = e.join(Qe);
352
+ return t.validators.find(({
353
+ validator: i
354
+ }) => i(a))?.classGroupId;
355
+ }, lt = /^\[(.+)\]$/, Pr = (e) => {
356
+ if (lt.test(e)) {
357
+ const t = lt.exec(e)[1], r = t?.substring(0, t.indexOf(":"));
358
+ if (r)
359
+ return "arbitrary.." + r;
360
+ }
361
+ }, Ar = (e) => {
362
+ const {
363
+ theme: t,
364
+ classGroups: r
365
+ } = e, n = {
366
+ nextPart: /* @__PURE__ */ new Map(),
367
+ validators: []
368
+ };
369
+ for (const o in r)
370
+ Xe(r[o], n, o, t);
371
+ return n;
372
+ }, Xe = (e, t, r, n) => {
373
+ e.forEach((o) => {
374
+ if (typeof o == "string") {
375
+ const a = o === "" ? t : ut(t, o);
376
+ a.classGroupId = r;
377
+ return;
378
+ }
379
+ if (typeof o == "function") {
380
+ if (Nr(o)) {
381
+ Xe(o(n), t, r, n);
382
+ return;
383
+ }
384
+ t.validators.push({
385
+ validator: o,
386
+ classGroupId: r
387
+ });
388
+ return;
389
+ }
390
+ Object.entries(o).forEach(([a, i]) => {
391
+ Xe(i, ut(t, a), r, n);
392
+ });
393
+ });
394
+ }, ut = (e, t) => {
395
+ let r = e;
396
+ return t.split(Qe).forEach((n) => {
397
+ r.nextPart.has(n) || r.nextPart.set(n, {
398
+ nextPart: /* @__PURE__ */ new Map(),
399
+ validators: []
400
+ }), r = r.nextPart.get(n);
401
+ }), r;
402
+ }, Nr = (e) => e.isThemeGetter, Tr = (e) => {
403
+ if (e < 1)
404
+ return {
405
+ get: () => {
406
+ },
407
+ set: () => {
408
+ }
409
+ };
410
+ let t = 0, r = /* @__PURE__ */ new Map(), n = /* @__PURE__ */ new Map();
411
+ const o = (a, i) => {
412
+ r.set(a, i), t++, t > e && (t = 0, n = r, r = /* @__PURE__ */ new Map());
413
+ };
414
+ return {
415
+ get(a) {
416
+ let i = r.get(a);
417
+ if (i !== void 0)
418
+ return i;
419
+ if ((i = n.get(a)) !== void 0)
420
+ return o(a, i), i;
421
+ },
422
+ set(a, i) {
423
+ r.has(a) ? r.set(a, i) : o(a, i);
424
+ }
425
+ };
426
+ }, Ke = "!", qe = ":", Or = qe.length, _r = (e) => {
427
+ const {
428
+ prefix: t,
429
+ experimentalParseClassName: r
430
+ } = e;
431
+ let n = (o) => {
432
+ const a = [];
433
+ let i = 0, s = 0, l = 0, u;
434
+ for (let S = 0; S < o.length; S++) {
435
+ let f = o[S];
436
+ if (i === 0 && s === 0) {
437
+ if (f === qe) {
438
+ a.push(o.slice(l, S)), l = S + Or;
439
+ continue;
440
+ }
441
+ if (f === "/") {
442
+ u = S;
443
+ continue;
444
+ }
445
+ }
446
+ f === "[" ? i++ : f === "]" ? i-- : f === "(" ? s++ : f === ")" && s--;
447
+ }
448
+ const m = a.length === 0 ? o : o.substring(l), p = Dr(m), h = p !== m, E = u && u > l ? u - l : void 0;
449
+ return {
450
+ modifiers: a,
451
+ hasImportantModifier: h,
452
+ baseClassName: p,
453
+ maybePostfixModifierPosition: E
454
+ };
455
+ };
456
+ if (t) {
457
+ const o = t + qe, a = n;
458
+ n = (i) => i.startsWith(o) ? a(i.substring(o.length)) : {
459
+ isExternal: !0,
460
+ modifiers: [],
461
+ hasImportantModifier: !1,
462
+ baseClassName: i,
463
+ maybePostfixModifierPosition: void 0
464
+ };
465
+ }
466
+ if (r) {
467
+ const o = n;
468
+ n = (a) => r({
469
+ className: a,
470
+ parseClassName: o
471
+ });
472
+ }
473
+ return n;
474
+ }, Dr = (e) => e.endsWith(Ke) ? e.substring(0, e.length - 1) : e.startsWith(Ke) ? e.substring(1) : e, Mr = (e) => {
475
+ const t = Object.fromEntries(e.orderSensitiveModifiers.map((n) => [n, !0]));
476
+ return (n) => {
477
+ if (n.length <= 1)
478
+ return n;
479
+ const o = [];
480
+ let a = [];
481
+ return n.forEach((i) => {
482
+ i[0] === "[" || t[i] ? (o.push(...a.sort(), i), a = []) : a.push(i);
483
+ }), o.push(...a.sort()), o;
484
+ };
485
+ }, Ir = (e) => ({
486
+ cache: Tr(e.cacheSize),
487
+ parseClassName: _r(e),
488
+ sortModifiers: Mr(e),
489
+ ...Rr(e)
490
+ }), jr = /\s+/, Lr = (e, t) => {
491
+ const {
492
+ parseClassName: r,
493
+ getClassGroupId: n,
494
+ getConflictingClassGroupIds: o,
495
+ sortModifiers: a
496
+ } = t, i = [], s = e.trim().split(jr);
497
+ let l = "";
498
+ for (let u = s.length - 1; u >= 0; u -= 1) {
499
+ const m = s[u], {
500
+ isExternal: p,
501
+ modifiers: h,
502
+ hasImportantModifier: E,
503
+ baseClassName: S,
504
+ maybePostfixModifierPosition: f
505
+ } = r(m);
506
+ if (p) {
507
+ l = m + (l.length > 0 ? " " + l : l);
508
+ continue;
509
+ }
510
+ let x = !!f, C = n(x ? S.substring(0, f) : S);
511
+ if (!C) {
512
+ if (!x) {
513
+ l = m + (l.length > 0 ? " " + l : l);
514
+ continue;
515
+ }
516
+ if (C = n(S), !C) {
517
+ l = m + (l.length > 0 ? " " + l : l);
518
+ continue;
519
+ }
520
+ x = !1;
521
+ }
522
+ const T = a(h).join(":"), O = E ? T + Ke : T, A = O + C;
523
+ if (i.includes(A))
524
+ continue;
525
+ i.push(A);
526
+ const _ = o(C, x);
527
+ for (let j = 0; j < _.length; ++j) {
528
+ const P = _[j];
529
+ i.push(O + P);
530
+ }
531
+ l = m + (l.length > 0 ? " " + l : l);
532
+ }
533
+ return l;
534
+ };
535
+ function Fr() {
536
+ let e = 0, t, r, n = "";
537
+ for (; e < arguments.length; )
538
+ (t = arguments[e++]) && (r = Tt(t)) && (n && (n += " "), n += r);
539
+ return n;
540
+ }
541
+ const Tt = (e) => {
542
+ if (typeof e == "string")
543
+ return e;
544
+ let t, r = "";
545
+ for (let n = 0; n < e.length; n++)
546
+ e[n] && (t = Tt(e[n])) && (r && (r += " "), r += t);
547
+ return r;
548
+ };
549
+ function zr(e, ...t) {
550
+ let r, n, o, a = i;
551
+ function i(l) {
552
+ const u = t.reduce((m, p) => p(m), e());
553
+ return r = Ir(u), n = r.cache.get, o = r.cache.set, a = s, s(l);
554
+ }
555
+ function s(l) {
556
+ const u = n(l);
557
+ if (u)
558
+ return u;
559
+ const m = Lr(l, r);
560
+ return o(l, m), m;
561
+ }
562
+ return function() {
563
+ return a(Fr.apply(null, arguments));
564
+ };
565
+ }
566
+ const F = (e) => {
567
+ const t = (r) => r[e] || [];
568
+ return t.isThemeGetter = !0, t;
569
+ }, Ot = /^\[(?:(\w[\w-]*):)?(.+)\]$/i, _t = /^\((?:(\w[\w-]*):)?(.+)\)$/i, Wr = /^\d+\/\d+$/, $r = /^(\d+(\.\d+)?)?(xs|sm|md|lg|xl)$/, Vr = /\d+(%|px|r?em|[sdl]?v([hwib]|min|max)|pt|pc|in|cm|mm|cap|ch|ex|r?lh|cq(w|h|i|b|min|max))|\b(calc|min|max|clamp)\(.+\)|^0$/, Ur = /^(rgba?|hsla?|hwb|(ok)?(lab|lch)|color-mix)\(.+\)$/, Br = /^(inset_)?-?((\d+)?\.?(\d+)[a-z]+|0)_-?((\d+)?\.?(\d+)[a-z]+|0)/, Gr = /^(url|image|image-set|cross-fade|element|(repeating-)?(linear|radial|conic)-gradient)\(.+\)$/, ce = (e) => Wr.test(e), R = (e) => !!e && !Number.isNaN(Number(e)), Z = (e) => !!e && Number.isInteger(Number(e)), Fe = (e) => e.endsWith("%") && R(e.slice(0, -1)), X = (e) => $r.test(e), Yr = () => !0, Hr = (e) => (
570
+ // `colorFunctionRegex` check is necessary because color functions can have percentages in them which which would be incorrectly classified as lengths.
571
+ // For example, `hsl(0 0% 0%)` would be classified as a length without this check.
572
+ // I could also use lookbehind assertion in `lengthUnitRegex` but that isn't supported widely enough.
573
+ Vr.test(e) && !Ur.test(e)
574
+ ), Dt = () => !1, Xr = (e) => Br.test(e), Kr = (e) => Gr.test(e), qr = (e) => !g(e) && !v(e), Jr = (e) => me(e, jt, Dt), g = (e) => Ot.test(e), ne = (e) => me(e, Lt, Hr), ze = (e) => me(e, rn, R), dt = (e) => me(e, Mt, Dt), Zr = (e) => me(e, It, Kr), Se = (e) => me(e, Ft, Xr), v = (e) => _t.test(e), ye = (e) => pe(e, Lt), Qr = (e) => pe(e, nn), ft = (e) => pe(e, Mt), en = (e) => pe(e, jt), tn = (e) => pe(e, It), Re = (e) => pe(e, Ft, !0), me = (e, t, r) => {
575
+ const n = Ot.exec(e);
576
+ return n ? n[1] ? t(n[1]) : r(n[2]) : !1;
577
+ }, pe = (e, t, r = !1) => {
578
+ const n = _t.exec(e);
579
+ return n ? n[1] ? t(n[1]) : r : !1;
580
+ }, Mt = (e) => e === "position" || e === "percentage", It = (e) => e === "image" || e === "url", jt = (e) => e === "length" || e === "size" || e === "bg-size", Lt = (e) => e === "length", rn = (e) => e === "number", nn = (e) => e === "family-name", Ft = (e) => e === "shadow", on = () => {
581
+ const e = F("color"), t = F("font"), r = F("text"), n = F("font-weight"), o = F("tracking"), a = F("leading"), i = F("breakpoint"), s = F("container"), l = F("spacing"), u = F("radius"), m = F("shadow"), p = F("inset-shadow"), h = F("text-shadow"), E = F("drop-shadow"), S = F("blur"), f = F("perspective"), x = F("aspect"), C = F("ease"), T = F("animate"), O = () => ["auto", "avoid", "all", "avoid-page", "page", "left", "right", "column"], A = () => [
582
+ "center",
583
+ "top",
584
+ "bottom",
585
+ "left",
586
+ "right",
587
+ "top-left",
588
+ // Deprecated since Tailwind CSS v4.1.0, see https://github.com/tailwindlabs/tailwindcss/pull/17378
589
+ "left-top",
590
+ "top-right",
591
+ // Deprecated since Tailwind CSS v4.1.0, see https://github.com/tailwindlabs/tailwindcss/pull/17378
592
+ "right-top",
593
+ "bottom-right",
594
+ // Deprecated since Tailwind CSS v4.1.0, see https://github.com/tailwindlabs/tailwindcss/pull/17378
595
+ "right-bottom",
596
+ "bottom-left",
597
+ // Deprecated since Tailwind CSS v4.1.0, see https://github.com/tailwindlabs/tailwindcss/pull/17378
598
+ "left-bottom"
599
+ ], _ = () => [...A(), v, g], j = () => ["auto", "hidden", "clip", "visible", "scroll"], P = () => ["auto", "contain", "none"], b = () => [v, g, l], z = () => [ce, "full", "auto", ...b()], q = () => [Z, "none", "subgrid", v, g], se = () => ["auto", {
600
+ span: ["full", Z, v, g]
601
+ }, Z, v, g], te = () => [Z, "auto", v, g], Ee = () => ["auto", "min", "max", "fr", v, g], re = () => ["start", "end", "center", "between", "around", "evenly", "stretch", "baseline", "center-safe", "end-safe"], H = () => ["start", "end", "center", "stretch", "center-safe", "end-safe"], $ = () => ["auto", ...b()], B = () => [ce, "auto", "full", "dvw", "dvh", "lvw", "lvh", "svw", "svh", "min", "max", "fit", ...b()], w = () => [e, v, g], ge = () => [...A(), ft, dt, {
602
+ position: [v, g]
603
+ }], d = () => ["no-repeat", {
604
+ repeat: ["", "x", "y", "space", "round"]
605
+ }], k = () => ["auto", "cover", "contain", en, Jr, {
606
+ size: [v, g]
607
+ }], D = () => [Fe, ye, ne], N = () => [
608
+ // Deprecated since Tailwind CSS v4.0.0
609
+ "",
610
+ "none",
611
+ "full",
612
+ u,
613
+ v,
614
+ g
615
+ ], M = () => ["", R, ye, ne], W = () => ["solid", "dashed", "dotted", "double"], ie = () => ["normal", "multiply", "screen", "overlay", "darken", "lighten", "color-dodge", "color-burn", "hard-light", "soft-light", "difference", "exclusion", "hue", "saturation", "color", "luminosity"], I = () => [R, Fe, ft, dt], L = () => [
616
+ // Deprecated since Tailwind CSS v4.0.0
617
+ "",
618
+ "none",
619
+ S,
620
+ v,
621
+ g
622
+ ], V = () => ["none", R, v, g], J = () => ["none", R, v, g], ve = () => [R, v, g], ke = () => [ce, "full", ...b()];
623
+ return {
624
+ cacheSize: 500,
625
+ theme: {
626
+ animate: ["spin", "ping", "pulse", "bounce"],
627
+ aspect: ["video"],
628
+ blur: [X],
629
+ breakpoint: [X],
630
+ color: [Yr],
631
+ container: [X],
632
+ "drop-shadow": [X],
633
+ ease: ["in", "out", "in-out"],
634
+ font: [qr],
635
+ "font-weight": ["thin", "extralight", "light", "normal", "medium", "semibold", "bold", "extrabold", "black"],
636
+ "inset-shadow": [X],
637
+ leading: ["none", "tight", "snug", "normal", "relaxed", "loose"],
638
+ perspective: ["dramatic", "near", "normal", "midrange", "distant", "none"],
639
+ radius: [X],
640
+ shadow: [X],
641
+ spacing: ["px", R],
642
+ text: [X],
643
+ "text-shadow": [X],
644
+ tracking: ["tighter", "tight", "normal", "wide", "wider", "widest"]
645
+ },
646
+ classGroups: {
647
+ // --------------
648
+ // --- Layout ---
649
+ // --------------
650
+ /**
651
+ * Aspect Ratio
652
+ * @see https://tailwindcss.com/docs/aspect-ratio
653
+ */
654
+ aspect: [{
655
+ aspect: ["auto", "square", ce, g, v, x]
656
+ }],
657
+ /**
658
+ * Container
659
+ * @see https://tailwindcss.com/docs/container
660
+ * @deprecated since Tailwind CSS v4.0.0
661
+ */
662
+ container: ["container"],
663
+ /**
664
+ * Columns
665
+ * @see https://tailwindcss.com/docs/columns
666
+ */
667
+ columns: [{
668
+ columns: [R, g, v, s]
669
+ }],
670
+ /**
671
+ * Break After
672
+ * @see https://tailwindcss.com/docs/break-after
673
+ */
674
+ "break-after": [{
675
+ "break-after": O()
676
+ }],
677
+ /**
678
+ * Break Before
679
+ * @see https://tailwindcss.com/docs/break-before
680
+ */
681
+ "break-before": [{
682
+ "break-before": O()
683
+ }],
684
+ /**
685
+ * Break Inside
686
+ * @see https://tailwindcss.com/docs/break-inside
687
+ */
688
+ "break-inside": [{
689
+ "break-inside": ["auto", "avoid", "avoid-page", "avoid-column"]
690
+ }],
691
+ /**
692
+ * Box Decoration Break
693
+ * @see https://tailwindcss.com/docs/box-decoration-break
694
+ */
695
+ "box-decoration": [{
696
+ "box-decoration": ["slice", "clone"]
697
+ }],
698
+ /**
699
+ * Box Sizing
700
+ * @see https://tailwindcss.com/docs/box-sizing
701
+ */
702
+ box: [{
703
+ box: ["border", "content"]
704
+ }],
705
+ /**
706
+ * Display
707
+ * @see https://tailwindcss.com/docs/display
708
+ */
709
+ display: ["block", "inline-block", "inline", "flex", "inline-flex", "table", "inline-table", "table-caption", "table-cell", "table-column", "table-column-group", "table-footer-group", "table-header-group", "table-row-group", "table-row", "flow-root", "grid", "inline-grid", "contents", "list-item", "hidden"],
710
+ /**
711
+ * Screen Reader Only
712
+ * @see https://tailwindcss.com/docs/display#screen-reader-only
713
+ */
714
+ sr: ["sr-only", "not-sr-only"],
715
+ /**
716
+ * Floats
717
+ * @see https://tailwindcss.com/docs/float
718
+ */
719
+ float: [{
720
+ float: ["right", "left", "none", "start", "end"]
721
+ }],
722
+ /**
723
+ * Clear
724
+ * @see https://tailwindcss.com/docs/clear
725
+ */
726
+ clear: [{
727
+ clear: ["left", "right", "both", "none", "start", "end"]
728
+ }],
729
+ /**
730
+ * Isolation
731
+ * @see https://tailwindcss.com/docs/isolation
732
+ */
733
+ isolation: ["isolate", "isolation-auto"],
734
+ /**
735
+ * Object Fit
736
+ * @see https://tailwindcss.com/docs/object-fit
737
+ */
738
+ "object-fit": [{
739
+ object: ["contain", "cover", "fill", "none", "scale-down"]
740
+ }],
741
+ /**
742
+ * Object Position
743
+ * @see https://tailwindcss.com/docs/object-position
744
+ */
745
+ "object-position": [{
746
+ object: _()
747
+ }],
748
+ /**
749
+ * Overflow
750
+ * @see https://tailwindcss.com/docs/overflow
751
+ */
752
+ overflow: [{
753
+ overflow: j()
754
+ }],
755
+ /**
756
+ * Overflow X
757
+ * @see https://tailwindcss.com/docs/overflow
758
+ */
759
+ "overflow-x": [{
760
+ "overflow-x": j()
761
+ }],
762
+ /**
763
+ * Overflow Y
764
+ * @see https://tailwindcss.com/docs/overflow
765
+ */
766
+ "overflow-y": [{
767
+ "overflow-y": j()
768
+ }],
769
+ /**
770
+ * Overscroll Behavior
771
+ * @see https://tailwindcss.com/docs/overscroll-behavior
772
+ */
773
+ overscroll: [{
774
+ overscroll: P()
775
+ }],
776
+ /**
777
+ * Overscroll Behavior X
778
+ * @see https://tailwindcss.com/docs/overscroll-behavior
779
+ */
780
+ "overscroll-x": [{
781
+ "overscroll-x": P()
782
+ }],
783
+ /**
784
+ * Overscroll Behavior Y
785
+ * @see https://tailwindcss.com/docs/overscroll-behavior
786
+ */
787
+ "overscroll-y": [{
788
+ "overscroll-y": P()
789
+ }],
790
+ /**
791
+ * Position
792
+ * @see https://tailwindcss.com/docs/position
793
+ */
794
+ position: ["static", "fixed", "absolute", "relative", "sticky"],
795
+ /**
796
+ * Top / Right / Bottom / Left
797
+ * @see https://tailwindcss.com/docs/top-right-bottom-left
798
+ */
799
+ inset: [{
800
+ inset: z()
801
+ }],
802
+ /**
803
+ * Right / Left
804
+ * @see https://tailwindcss.com/docs/top-right-bottom-left
805
+ */
806
+ "inset-x": [{
807
+ "inset-x": z()
808
+ }],
809
+ /**
810
+ * Top / Bottom
811
+ * @see https://tailwindcss.com/docs/top-right-bottom-left
812
+ */
813
+ "inset-y": [{
814
+ "inset-y": z()
815
+ }],
816
+ /**
817
+ * Start
818
+ * @see https://tailwindcss.com/docs/top-right-bottom-left
819
+ */
820
+ start: [{
821
+ start: z()
822
+ }],
823
+ /**
824
+ * End
825
+ * @see https://tailwindcss.com/docs/top-right-bottom-left
826
+ */
827
+ end: [{
828
+ end: z()
829
+ }],
830
+ /**
831
+ * Top
832
+ * @see https://tailwindcss.com/docs/top-right-bottom-left
833
+ */
834
+ top: [{
835
+ top: z()
836
+ }],
837
+ /**
838
+ * Right
839
+ * @see https://tailwindcss.com/docs/top-right-bottom-left
840
+ */
841
+ right: [{
842
+ right: z()
843
+ }],
844
+ /**
845
+ * Bottom
846
+ * @see https://tailwindcss.com/docs/top-right-bottom-left
847
+ */
848
+ bottom: [{
849
+ bottom: z()
850
+ }],
851
+ /**
852
+ * Left
853
+ * @see https://tailwindcss.com/docs/top-right-bottom-left
854
+ */
855
+ left: [{
856
+ left: z()
857
+ }],
858
+ /**
859
+ * Visibility
860
+ * @see https://tailwindcss.com/docs/visibility
861
+ */
862
+ visibility: ["visible", "invisible", "collapse"],
863
+ /**
864
+ * Z-Index
865
+ * @see https://tailwindcss.com/docs/z-index
866
+ */
867
+ z: [{
868
+ z: [Z, "auto", v, g]
869
+ }],
870
+ // ------------------------
871
+ // --- Flexbox and Grid ---
872
+ // ------------------------
873
+ /**
874
+ * Flex Basis
875
+ * @see https://tailwindcss.com/docs/flex-basis
876
+ */
877
+ basis: [{
878
+ basis: [ce, "full", "auto", s, ...b()]
879
+ }],
880
+ /**
881
+ * Flex Direction
882
+ * @see https://tailwindcss.com/docs/flex-direction
883
+ */
884
+ "flex-direction": [{
885
+ flex: ["row", "row-reverse", "col", "col-reverse"]
886
+ }],
887
+ /**
888
+ * Flex Wrap
889
+ * @see https://tailwindcss.com/docs/flex-wrap
890
+ */
891
+ "flex-wrap": [{
892
+ flex: ["nowrap", "wrap", "wrap-reverse"]
893
+ }],
894
+ /**
895
+ * Flex
896
+ * @see https://tailwindcss.com/docs/flex
897
+ */
898
+ flex: [{
899
+ flex: [R, ce, "auto", "initial", "none", g]
900
+ }],
901
+ /**
902
+ * Flex Grow
903
+ * @see https://tailwindcss.com/docs/flex-grow
904
+ */
905
+ grow: [{
906
+ grow: ["", R, v, g]
907
+ }],
908
+ /**
909
+ * Flex Shrink
910
+ * @see https://tailwindcss.com/docs/flex-shrink
911
+ */
912
+ shrink: [{
913
+ shrink: ["", R, v, g]
914
+ }],
915
+ /**
916
+ * Order
917
+ * @see https://tailwindcss.com/docs/order
918
+ */
919
+ order: [{
920
+ order: [Z, "first", "last", "none", v, g]
921
+ }],
922
+ /**
923
+ * Grid Template Columns
924
+ * @see https://tailwindcss.com/docs/grid-template-columns
925
+ */
926
+ "grid-cols": [{
927
+ "grid-cols": q()
928
+ }],
929
+ /**
930
+ * Grid Column Start / End
931
+ * @see https://tailwindcss.com/docs/grid-column
932
+ */
933
+ "col-start-end": [{
934
+ col: se()
935
+ }],
936
+ /**
937
+ * Grid Column Start
938
+ * @see https://tailwindcss.com/docs/grid-column
939
+ */
940
+ "col-start": [{
941
+ "col-start": te()
942
+ }],
943
+ /**
944
+ * Grid Column End
945
+ * @see https://tailwindcss.com/docs/grid-column
946
+ */
947
+ "col-end": [{
948
+ "col-end": te()
949
+ }],
950
+ /**
951
+ * Grid Template Rows
952
+ * @see https://tailwindcss.com/docs/grid-template-rows
953
+ */
954
+ "grid-rows": [{
955
+ "grid-rows": q()
956
+ }],
957
+ /**
958
+ * Grid Row Start / End
959
+ * @see https://tailwindcss.com/docs/grid-row
960
+ */
961
+ "row-start-end": [{
962
+ row: se()
963
+ }],
964
+ /**
965
+ * Grid Row Start
966
+ * @see https://tailwindcss.com/docs/grid-row
967
+ */
968
+ "row-start": [{
969
+ "row-start": te()
970
+ }],
971
+ /**
972
+ * Grid Row End
973
+ * @see https://tailwindcss.com/docs/grid-row
974
+ */
975
+ "row-end": [{
976
+ "row-end": te()
977
+ }],
978
+ /**
979
+ * Grid Auto Flow
980
+ * @see https://tailwindcss.com/docs/grid-auto-flow
981
+ */
982
+ "grid-flow": [{
983
+ "grid-flow": ["row", "col", "dense", "row-dense", "col-dense"]
984
+ }],
985
+ /**
986
+ * Grid Auto Columns
987
+ * @see https://tailwindcss.com/docs/grid-auto-columns
988
+ */
989
+ "auto-cols": [{
990
+ "auto-cols": Ee()
991
+ }],
992
+ /**
993
+ * Grid Auto Rows
994
+ * @see https://tailwindcss.com/docs/grid-auto-rows
995
+ */
996
+ "auto-rows": [{
997
+ "auto-rows": Ee()
998
+ }],
999
+ /**
1000
+ * Gap
1001
+ * @see https://tailwindcss.com/docs/gap
1002
+ */
1003
+ gap: [{
1004
+ gap: b()
1005
+ }],
1006
+ /**
1007
+ * Gap X
1008
+ * @see https://tailwindcss.com/docs/gap
1009
+ */
1010
+ "gap-x": [{
1011
+ "gap-x": b()
1012
+ }],
1013
+ /**
1014
+ * Gap Y
1015
+ * @see https://tailwindcss.com/docs/gap
1016
+ */
1017
+ "gap-y": [{
1018
+ "gap-y": b()
1019
+ }],
1020
+ /**
1021
+ * Justify Content
1022
+ * @see https://tailwindcss.com/docs/justify-content
1023
+ */
1024
+ "justify-content": [{
1025
+ justify: [...re(), "normal"]
1026
+ }],
1027
+ /**
1028
+ * Justify Items
1029
+ * @see https://tailwindcss.com/docs/justify-items
1030
+ */
1031
+ "justify-items": [{
1032
+ "justify-items": [...H(), "normal"]
1033
+ }],
1034
+ /**
1035
+ * Justify Self
1036
+ * @see https://tailwindcss.com/docs/justify-self
1037
+ */
1038
+ "justify-self": [{
1039
+ "justify-self": ["auto", ...H()]
1040
+ }],
1041
+ /**
1042
+ * Align Content
1043
+ * @see https://tailwindcss.com/docs/align-content
1044
+ */
1045
+ "align-content": [{
1046
+ content: ["normal", ...re()]
1047
+ }],
1048
+ /**
1049
+ * Align Items
1050
+ * @see https://tailwindcss.com/docs/align-items
1051
+ */
1052
+ "align-items": [{
1053
+ items: [...H(), {
1054
+ baseline: ["", "last"]
1055
+ }]
1056
+ }],
1057
+ /**
1058
+ * Align Self
1059
+ * @see https://tailwindcss.com/docs/align-self
1060
+ */
1061
+ "align-self": [{
1062
+ self: ["auto", ...H(), {
1063
+ baseline: ["", "last"]
1064
+ }]
1065
+ }],
1066
+ /**
1067
+ * Place Content
1068
+ * @see https://tailwindcss.com/docs/place-content
1069
+ */
1070
+ "place-content": [{
1071
+ "place-content": re()
1072
+ }],
1073
+ /**
1074
+ * Place Items
1075
+ * @see https://tailwindcss.com/docs/place-items
1076
+ */
1077
+ "place-items": [{
1078
+ "place-items": [...H(), "baseline"]
1079
+ }],
1080
+ /**
1081
+ * Place Self
1082
+ * @see https://tailwindcss.com/docs/place-self
1083
+ */
1084
+ "place-self": [{
1085
+ "place-self": ["auto", ...H()]
1086
+ }],
1087
+ // Spacing
1088
+ /**
1089
+ * Padding
1090
+ * @see https://tailwindcss.com/docs/padding
1091
+ */
1092
+ p: [{
1093
+ p: b()
1094
+ }],
1095
+ /**
1096
+ * Padding X
1097
+ * @see https://tailwindcss.com/docs/padding
1098
+ */
1099
+ px: [{
1100
+ px: b()
1101
+ }],
1102
+ /**
1103
+ * Padding Y
1104
+ * @see https://tailwindcss.com/docs/padding
1105
+ */
1106
+ py: [{
1107
+ py: b()
1108
+ }],
1109
+ /**
1110
+ * Padding Start
1111
+ * @see https://tailwindcss.com/docs/padding
1112
+ */
1113
+ ps: [{
1114
+ ps: b()
1115
+ }],
1116
+ /**
1117
+ * Padding End
1118
+ * @see https://tailwindcss.com/docs/padding
1119
+ */
1120
+ pe: [{
1121
+ pe: b()
1122
+ }],
1123
+ /**
1124
+ * Padding Top
1125
+ * @see https://tailwindcss.com/docs/padding
1126
+ */
1127
+ pt: [{
1128
+ pt: b()
1129
+ }],
1130
+ /**
1131
+ * Padding Right
1132
+ * @see https://tailwindcss.com/docs/padding
1133
+ */
1134
+ pr: [{
1135
+ pr: b()
1136
+ }],
1137
+ /**
1138
+ * Padding Bottom
1139
+ * @see https://tailwindcss.com/docs/padding
1140
+ */
1141
+ pb: [{
1142
+ pb: b()
1143
+ }],
1144
+ /**
1145
+ * Padding Left
1146
+ * @see https://tailwindcss.com/docs/padding
1147
+ */
1148
+ pl: [{
1149
+ pl: b()
1150
+ }],
1151
+ /**
1152
+ * Margin
1153
+ * @see https://tailwindcss.com/docs/margin
1154
+ */
1155
+ m: [{
1156
+ m: $()
1157
+ }],
1158
+ /**
1159
+ * Margin X
1160
+ * @see https://tailwindcss.com/docs/margin
1161
+ */
1162
+ mx: [{
1163
+ mx: $()
1164
+ }],
1165
+ /**
1166
+ * Margin Y
1167
+ * @see https://tailwindcss.com/docs/margin
1168
+ */
1169
+ my: [{
1170
+ my: $()
1171
+ }],
1172
+ /**
1173
+ * Margin Start
1174
+ * @see https://tailwindcss.com/docs/margin
1175
+ */
1176
+ ms: [{
1177
+ ms: $()
1178
+ }],
1179
+ /**
1180
+ * Margin End
1181
+ * @see https://tailwindcss.com/docs/margin
1182
+ */
1183
+ me: [{
1184
+ me: $()
1185
+ }],
1186
+ /**
1187
+ * Margin Top
1188
+ * @see https://tailwindcss.com/docs/margin
1189
+ */
1190
+ mt: [{
1191
+ mt: $()
1192
+ }],
1193
+ /**
1194
+ * Margin Right
1195
+ * @see https://tailwindcss.com/docs/margin
1196
+ */
1197
+ mr: [{
1198
+ mr: $()
1199
+ }],
1200
+ /**
1201
+ * Margin Bottom
1202
+ * @see https://tailwindcss.com/docs/margin
1203
+ */
1204
+ mb: [{
1205
+ mb: $()
1206
+ }],
1207
+ /**
1208
+ * Margin Left
1209
+ * @see https://tailwindcss.com/docs/margin
1210
+ */
1211
+ ml: [{
1212
+ ml: $()
1213
+ }],
1214
+ /**
1215
+ * Space Between X
1216
+ * @see https://tailwindcss.com/docs/margin#adding-space-between-children
1217
+ */
1218
+ "space-x": [{
1219
+ "space-x": b()
1220
+ }],
1221
+ /**
1222
+ * Space Between X Reverse
1223
+ * @see https://tailwindcss.com/docs/margin#adding-space-between-children
1224
+ */
1225
+ "space-x-reverse": ["space-x-reverse"],
1226
+ /**
1227
+ * Space Between Y
1228
+ * @see https://tailwindcss.com/docs/margin#adding-space-between-children
1229
+ */
1230
+ "space-y": [{
1231
+ "space-y": b()
1232
+ }],
1233
+ /**
1234
+ * Space Between Y Reverse
1235
+ * @see https://tailwindcss.com/docs/margin#adding-space-between-children
1236
+ */
1237
+ "space-y-reverse": ["space-y-reverse"],
1238
+ // --------------
1239
+ // --- Sizing ---
1240
+ // --------------
1241
+ /**
1242
+ * Size
1243
+ * @see https://tailwindcss.com/docs/width#setting-both-width-and-height
1244
+ */
1245
+ size: [{
1246
+ size: B()
1247
+ }],
1248
+ /**
1249
+ * Width
1250
+ * @see https://tailwindcss.com/docs/width
1251
+ */
1252
+ w: [{
1253
+ w: [s, "screen", ...B()]
1254
+ }],
1255
+ /**
1256
+ * Min-Width
1257
+ * @see https://tailwindcss.com/docs/min-width
1258
+ */
1259
+ "min-w": [{
1260
+ "min-w": [
1261
+ s,
1262
+ "screen",
1263
+ /** Deprecated. @see https://github.com/tailwindlabs/tailwindcss.com/issues/2027#issuecomment-2620152757 */
1264
+ "none",
1265
+ ...B()
1266
+ ]
1267
+ }],
1268
+ /**
1269
+ * Max-Width
1270
+ * @see https://tailwindcss.com/docs/max-width
1271
+ */
1272
+ "max-w": [{
1273
+ "max-w": [
1274
+ s,
1275
+ "screen",
1276
+ "none",
1277
+ /** Deprecated since Tailwind CSS v4.0.0. @see https://github.com/tailwindlabs/tailwindcss.com/issues/2027#issuecomment-2620152757 */
1278
+ "prose",
1279
+ /** Deprecated since Tailwind CSS v4.0.0. @see https://github.com/tailwindlabs/tailwindcss.com/issues/2027#issuecomment-2620152757 */
1280
+ {
1281
+ screen: [i]
1282
+ },
1283
+ ...B()
1284
+ ]
1285
+ }],
1286
+ /**
1287
+ * Height
1288
+ * @see https://tailwindcss.com/docs/height
1289
+ */
1290
+ h: [{
1291
+ h: ["screen", "lh", ...B()]
1292
+ }],
1293
+ /**
1294
+ * Min-Height
1295
+ * @see https://tailwindcss.com/docs/min-height
1296
+ */
1297
+ "min-h": [{
1298
+ "min-h": ["screen", "lh", "none", ...B()]
1299
+ }],
1300
+ /**
1301
+ * Max-Height
1302
+ * @see https://tailwindcss.com/docs/max-height
1303
+ */
1304
+ "max-h": [{
1305
+ "max-h": ["screen", "lh", ...B()]
1306
+ }],
1307
+ // ------------------
1308
+ // --- Typography ---
1309
+ // ------------------
1310
+ /**
1311
+ * Font Size
1312
+ * @see https://tailwindcss.com/docs/font-size
1313
+ */
1314
+ "font-size": [{
1315
+ text: ["base", r, ye, ne]
1316
+ }],
1317
+ /**
1318
+ * Font Smoothing
1319
+ * @see https://tailwindcss.com/docs/font-smoothing
1320
+ */
1321
+ "font-smoothing": ["antialiased", "subpixel-antialiased"],
1322
+ /**
1323
+ * Font Style
1324
+ * @see https://tailwindcss.com/docs/font-style
1325
+ */
1326
+ "font-style": ["italic", "not-italic"],
1327
+ /**
1328
+ * Font Weight
1329
+ * @see https://tailwindcss.com/docs/font-weight
1330
+ */
1331
+ "font-weight": [{
1332
+ font: [n, v, ze]
1333
+ }],
1334
+ /**
1335
+ * Font Stretch
1336
+ * @see https://tailwindcss.com/docs/font-stretch
1337
+ */
1338
+ "font-stretch": [{
1339
+ "font-stretch": ["ultra-condensed", "extra-condensed", "condensed", "semi-condensed", "normal", "semi-expanded", "expanded", "extra-expanded", "ultra-expanded", Fe, g]
1340
+ }],
1341
+ /**
1342
+ * Font Family
1343
+ * @see https://tailwindcss.com/docs/font-family
1344
+ */
1345
+ "font-family": [{
1346
+ font: [Qr, g, t]
1347
+ }],
1348
+ /**
1349
+ * Font Variant Numeric
1350
+ * @see https://tailwindcss.com/docs/font-variant-numeric
1351
+ */
1352
+ "fvn-normal": ["normal-nums"],
1353
+ /**
1354
+ * Font Variant Numeric
1355
+ * @see https://tailwindcss.com/docs/font-variant-numeric
1356
+ */
1357
+ "fvn-ordinal": ["ordinal"],
1358
+ /**
1359
+ * Font Variant Numeric
1360
+ * @see https://tailwindcss.com/docs/font-variant-numeric
1361
+ */
1362
+ "fvn-slashed-zero": ["slashed-zero"],
1363
+ /**
1364
+ * Font Variant Numeric
1365
+ * @see https://tailwindcss.com/docs/font-variant-numeric
1366
+ */
1367
+ "fvn-figure": ["lining-nums", "oldstyle-nums"],
1368
+ /**
1369
+ * Font Variant Numeric
1370
+ * @see https://tailwindcss.com/docs/font-variant-numeric
1371
+ */
1372
+ "fvn-spacing": ["proportional-nums", "tabular-nums"],
1373
+ /**
1374
+ * Font Variant Numeric
1375
+ * @see https://tailwindcss.com/docs/font-variant-numeric
1376
+ */
1377
+ "fvn-fraction": ["diagonal-fractions", "stacked-fractions"],
1378
+ /**
1379
+ * Letter Spacing
1380
+ * @see https://tailwindcss.com/docs/letter-spacing
1381
+ */
1382
+ tracking: [{
1383
+ tracking: [o, v, g]
1384
+ }],
1385
+ /**
1386
+ * Line Clamp
1387
+ * @see https://tailwindcss.com/docs/line-clamp
1388
+ */
1389
+ "line-clamp": [{
1390
+ "line-clamp": [R, "none", v, ze]
1391
+ }],
1392
+ /**
1393
+ * Line Height
1394
+ * @see https://tailwindcss.com/docs/line-height
1395
+ */
1396
+ leading: [{
1397
+ leading: [
1398
+ /** Deprecated since Tailwind CSS v4.0.0. @see https://github.com/tailwindlabs/tailwindcss.com/issues/2027#issuecomment-2620152757 */
1399
+ a,
1400
+ ...b()
1401
+ ]
1402
+ }],
1403
+ /**
1404
+ * List Style Image
1405
+ * @see https://tailwindcss.com/docs/list-style-image
1406
+ */
1407
+ "list-image": [{
1408
+ "list-image": ["none", v, g]
1409
+ }],
1410
+ /**
1411
+ * List Style Position
1412
+ * @see https://tailwindcss.com/docs/list-style-position
1413
+ */
1414
+ "list-style-position": [{
1415
+ list: ["inside", "outside"]
1416
+ }],
1417
+ /**
1418
+ * List Style Type
1419
+ * @see https://tailwindcss.com/docs/list-style-type
1420
+ */
1421
+ "list-style-type": [{
1422
+ list: ["disc", "decimal", "none", v, g]
1423
+ }],
1424
+ /**
1425
+ * Text Alignment
1426
+ * @see https://tailwindcss.com/docs/text-align
1427
+ */
1428
+ "text-alignment": [{
1429
+ text: ["left", "center", "right", "justify", "start", "end"]
1430
+ }],
1431
+ /**
1432
+ * Placeholder Color
1433
+ * @deprecated since Tailwind CSS v3.0.0
1434
+ * @see https://v3.tailwindcss.com/docs/placeholder-color
1435
+ */
1436
+ "placeholder-color": [{
1437
+ placeholder: w()
1438
+ }],
1439
+ /**
1440
+ * Text Color
1441
+ * @see https://tailwindcss.com/docs/text-color
1442
+ */
1443
+ "text-color": [{
1444
+ text: w()
1445
+ }],
1446
+ /**
1447
+ * Text Decoration
1448
+ * @see https://tailwindcss.com/docs/text-decoration
1449
+ */
1450
+ "text-decoration": ["underline", "overline", "line-through", "no-underline"],
1451
+ /**
1452
+ * Text Decoration Style
1453
+ * @see https://tailwindcss.com/docs/text-decoration-style
1454
+ */
1455
+ "text-decoration-style": [{
1456
+ decoration: [...W(), "wavy"]
1457
+ }],
1458
+ /**
1459
+ * Text Decoration Thickness
1460
+ * @see https://tailwindcss.com/docs/text-decoration-thickness
1461
+ */
1462
+ "text-decoration-thickness": [{
1463
+ decoration: [R, "from-font", "auto", v, ne]
1464
+ }],
1465
+ /**
1466
+ * Text Decoration Color
1467
+ * @see https://tailwindcss.com/docs/text-decoration-color
1468
+ */
1469
+ "text-decoration-color": [{
1470
+ decoration: w()
1471
+ }],
1472
+ /**
1473
+ * Text Underline Offset
1474
+ * @see https://tailwindcss.com/docs/text-underline-offset
1475
+ */
1476
+ "underline-offset": [{
1477
+ "underline-offset": [R, "auto", v, g]
1478
+ }],
1479
+ /**
1480
+ * Text Transform
1481
+ * @see https://tailwindcss.com/docs/text-transform
1482
+ */
1483
+ "text-transform": ["uppercase", "lowercase", "capitalize", "normal-case"],
1484
+ /**
1485
+ * Text Overflow
1486
+ * @see https://tailwindcss.com/docs/text-overflow
1487
+ */
1488
+ "text-overflow": ["truncate", "text-ellipsis", "text-clip"],
1489
+ /**
1490
+ * Text Wrap
1491
+ * @see https://tailwindcss.com/docs/text-wrap
1492
+ */
1493
+ "text-wrap": [{
1494
+ text: ["wrap", "nowrap", "balance", "pretty"]
1495
+ }],
1496
+ /**
1497
+ * Text Indent
1498
+ * @see https://tailwindcss.com/docs/text-indent
1499
+ */
1500
+ indent: [{
1501
+ indent: b()
1502
+ }],
1503
+ /**
1504
+ * Vertical Alignment
1505
+ * @see https://tailwindcss.com/docs/vertical-align
1506
+ */
1507
+ "vertical-align": [{
1508
+ align: ["baseline", "top", "middle", "bottom", "text-top", "text-bottom", "sub", "super", v, g]
1509
+ }],
1510
+ /**
1511
+ * Whitespace
1512
+ * @see https://tailwindcss.com/docs/whitespace
1513
+ */
1514
+ whitespace: [{
1515
+ whitespace: ["normal", "nowrap", "pre", "pre-line", "pre-wrap", "break-spaces"]
1516
+ }],
1517
+ /**
1518
+ * Word Break
1519
+ * @see https://tailwindcss.com/docs/word-break
1520
+ */
1521
+ break: [{
1522
+ break: ["normal", "words", "all", "keep"]
1523
+ }],
1524
+ /**
1525
+ * Overflow Wrap
1526
+ * @see https://tailwindcss.com/docs/overflow-wrap
1527
+ */
1528
+ wrap: [{
1529
+ wrap: ["break-word", "anywhere", "normal"]
1530
+ }],
1531
+ /**
1532
+ * Hyphens
1533
+ * @see https://tailwindcss.com/docs/hyphens
1534
+ */
1535
+ hyphens: [{
1536
+ hyphens: ["none", "manual", "auto"]
1537
+ }],
1538
+ /**
1539
+ * Content
1540
+ * @see https://tailwindcss.com/docs/content
1541
+ */
1542
+ content: [{
1543
+ content: ["none", v, g]
1544
+ }],
1545
+ // -------------------
1546
+ // --- Backgrounds ---
1547
+ // -------------------
1548
+ /**
1549
+ * Background Attachment
1550
+ * @see https://tailwindcss.com/docs/background-attachment
1551
+ */
1552
+ "bg-attachment": [{
1553
+ bg: ["fixed", "local", "scroll"]
1554
+ }],
1555
+ /**
1556
+ * Background Clip
1557
+ * @see https://tailwindcss.com/docs/background-clip
1558
+ */
1559
+ "bg-clip": [{
1560
+ "bg-clip": ["border", "padding", "content", "text"]
1561
+ }],
1562
+ /**
1563
+ * Background Origin
1564
+ * @see https://tailwindcss.com/docs/background-origin
1565
+ */
1566
+ "bg-origin": [{
1567
+ "bg-origin": ["border", "padding", "content"]
1568
+ }],
1569
+ /**
1570
+ * Background Position
1571
+ * @see https://tailwindcss.com/docs/background-position
1572
+ */
1573
+ "bg-position": [{
1574
+ bg: ge()
1575
+ }],
1576
+ /**
1577
+ * Background Repeat
1578
+ * @see https://tailwindcss.com/docs/background-repeat
1579
+ */
1580
+ "bg-repeat": [{
1581
+ bg: d()
1582
+ }],
1583
+ /**
1584
+ * Background Size
1585
+ * @see https://tailwindcss.com/docs/background-size
1586
+ */
1587
+ "bg-size": [{
1588
+ bg: k()
1589
+ }],
1590
+ /**
1591
+ * Background Image
1592
+ * @see https://tailwindcss.com/docs/background-image
1593
+ */
1594
+ "bg-image": [{
1595
+ bg: ["none", {
1596
+ linear: [{
1597
+ to: ["t", "tr", "r", "br", "b", "bl", "l", "tl"]
1598
+ }, Z, v, g],
1599
+ radial: ["", v, g],
1600
+ conic: [Z, v, g]
1601
+ }, tn, Zr]
1602
+ }],
1603
+ /**
1604
+ * Background Color
1605
+ * @see https://tailwindcss.com/docs/background-color
1606
+ */
1607
+ "bg-color": [{
1608
+ bg: w()
1609
+ }],
1610
+ /**
1611
+ * Gradient Color Stops From Position
1612
+ * @see https://tailwindcss.com/docs/gradient-color-stops
1613
+ */
1614
+ "gradient-from-pos": [{
1615
+ from: D()
1616
+ }],
1617
+ /**
1618
+ * Gradient Color Stops Via Position
1619
+ * @see https://tailwindcss.com/docs/gradient-color-stops
1620
+ */
1621
+ "gradient-via-pos": [{
1622
+ via: D()
1623
+ }],
1624
+ /**
1625
+ * Gradient Color Stops To Position
1626
+ * @see https://tailwindcss.com/docs/gradient-color-stops
1627
+ */
1628
+ "gradient-to-pos": [{
1629
+ to: D()
1630
+ }],
1631
+ /**
1632
+ * Gradient Color Stops From
1633
+ * @see https://tailwindcss.com/docs/gradient-color-stops
1634
+ */
1635
+ "gradient-from": [{
1636
+ from: w()
1637
+ }],
1638
+ /**
1639
+ * Gradient Color Stops Via
1640
+ * @see https://tailwindcss.com/docs/gradient-color-stops
1641
+ */
1642
+ "gradient-via": [{
1643
+ via: w()
1644
+ }],
1645
+ /**
1646
+ * Gradient Color Stops To
1647
+ * @see https://tailwindcss.com/docs/gradient-color-stops
1648
+ */
1649
+ "gradient-to": [{
1650
+ to: w()
1651
+ }],
1652
+ // ---------------
1653
+ // --- Borders ---
1654
+ // ---------------
1655
+ /**
1656
+ * Border Radius
1657
+ * @see https://tailwindcss.com/docs/border-radius
1658
+ */
1659
+ rounded: [{
1660
+ rounded: N()
1661
+ }],
1662
+ /**
1663
+ * Border Radius Start
1664
+ * @see https://tailwindcss.com/docs/border-radius
1665
+ */
1666
+ "rounded-s": [{
1667
+ "rounded-s": N()
1668
+ }],
1669
+ /**
1670
+ * Border Radius End
1671
+ * @see https://tailwindcss.com/docs/border-radius
1672
+ */
1673
+ "rounded-e": [{
1674
+ "rounded-e": N()
1675
+ }],
1676
+ /**
1677
+ * Border Radius Top
1678
+ * @see https://tailwindcss.com/docs/border-radius
1679
+ */
1680
+ "rounded-t": [{
1681
+ "rounded-t": N()
1682
+ }],
1683
+ /**
1684
+ * Border Radius Right
1685
+ * @see https://tailwindcss.com/docs/border-radius
1686
+ */
1687
+ "rounded-r": [{
1688
+ "rounded-r": N()
1689
+ }],
1690
+ /**
1691
+ * Border Radius Bottom
1692
+ * @see https://tailwindcss.com/docs/border-radius
1693
+ */
1694
+ "rounded-b": [{
1695
+ "rounded-b": N()
1696
+ }],
1697
+ /**
1698
+ * Border Radius Left
1699
+ * @see https://tailwindcss.com/docs/border-radius
1700
+ */
1701
+ "rounded-l": [{
1702
+ "rounded-l": N()
1703
+ }],
1704
+ /**
1705
+ * Border Radius Start Start
1706
+ * @see https://tailwindcss.com/docs/border-radius
1707
+ */
1708
+ "rounded-ss": [{
1709
+ "rounded-ss": N()
1710
+ }],
1711
+ /**
1712
+ * Border Radius Start End
1713
+ * @see https://tailwindcss.com/docs/border-radius
1714
+ */
1715
+ "rounded-se": [{
1716
+ "rounded-se": N()
1717
+ }],
1718
+ /**
1719
+ * Border Radius End End
1720
+ * @see https://tailwindcss.com/docs/border-radius
1721
+ */
1722
+ "rounded-ee": [{
1723
+ "rounded-ee": N()
1724
+ }],
1725
+ /**
1726
+ * Border Radius End Start
1727
+ * @see https://tailwindcss.com/docs/border-radius
1728
+ */
1729
+ "rounded-es": [{
1730
+ "rounded-es": N()
1731
+ }],
1732
+ /**
1733
+ * Border Radius Top Left
1734
+ * @see https://tailwindcss.com/docs/border-radius
1735
+ */
1736
+ "rounded-tl": [{
1737
+ "rounded-tl": N()
1738
+ }],
1739
+ /**
1740
+ * Border Radius Top Right
1741
+ * @see https://tailwindcss.com/docs/border-radius
1742
+ */
1743
+ "rounded-tr": [{
1744
+ "rounded-tr": N()
1745
+ }],
1746
+ /**
1747
+ * Border Radius Bottom Right
1748
+ * @see https://tailwindcss.com/docs/border-radius
1749
+ */
1750
+ "rounded-br": [{
1751
+ "rounded-br": N()
1752
+ }],
1753
+ /**
1754
+ * Border Radius Bottom Left
1755
+ * @see https://tailwindcss.com/docs/border-radius
1756
+ */
1757
+ "rounded-bl": [{
1758
+ "rounded-bl": N()
1759
+ }],
1760
+ /**
1761
+ * Border Width
1762
+ * @see https://tailwindcss.com/docs/border-width
1763
+ */
1764
+ "border-w": [{
1765
+ border: M()
1766
+ }],
1767
+ /**
1768
+ * Border Width X
1769
+ * @see https://tailwindcss.com/docs/border-width
1770
+ */
1771
+ "border-w-x": [{
1772
+ "border-x": M()
1773
+ }],
1774
+ /**
1775
+ * Border Width Y
1776
+ * @see https://tailwindcss.com/docs/border-width
1777
+ */
1778
+ "border-w-y": [{
1779
+ "border-y": M()
1780
+ }],
1781
+ /**
1782
+ * Border Width Start
1783
+ * @see https://tailwindcss.com/docs/border-width
1784
+ */
1785
+ "border-w-s": [{
1786
+ "border-s": M()
1787
+ }],
1788
+ /**
1789
+ * Border Width End
1790
+ * @see https://tailwindcss.com/docs/border-width
1791
+ */
1792
+ "border-w-e": [{
1793
+ "border-e": M()
1794
+ }],
1795
+ /**
1796
+ * Border Width Top
1797
+ * @see https://tailwindcss.com/docs/border-width
1798
+ */
1799
+ "border-w-t": [{
1800
+ "border-t": M()
1801
+ }],
1802
+ /**
1803
+ * Border Width Right
1804
+ * @see https://tailwindcss.com/docs/border-width
1805
+ */
1806
+ "border-w-r": [{
1807
+ "border-r": M()
1808
+ }],
1809
+ /**
1810
+ * Border Width Bottom
1811
+ * @see https://tailwindcss.com/docs/border-width
1812
+ */
1813
+ "border-w-b": [{
1814
+ "border-b": M()
1815
+ }],
1816
+ /**
1817
+ * Border Width Left
1818
+ * @see https://tailwindcss.com/docs/border-width
1819
+ */
1820
+ "border-w-l": [{
1821
+ "border-l": M()
1822
+ }],
1823
+ /**
1824
+ * Divide Width X
1825
+ * @see https://tailwindcss.com/docs/border-width#between-children
1826
+ */
1827
+ "divide-x": [{
1828
+ "divide-x": M()
1829
+ }],
1830
+ /**
1831
+ * Divide Width X Reverse
1832
+ * @see https://tailwindcss.com/docs/border-width#between-children
1833
+ */
1834
+ "divide-x-reverse": ["divide-x-reverse"],
1835
+ /**
1836
+ * Divide Width Y
1837
+ * @see https://tailwindcss.com/docs/border-width#between-children
1838
+ */
1839
+ "divide-y": [{
1840
+ "divide-y": M()
1841
+ }],
1842
+ /**
1843
+ * Divide Width Y Reverse
1844
+ * @see https://tailwindcss.com/docs/border-width#between-children
1845
+ */
1846
+ "divide-y-reverse": ["divide-y-reverse"],
1847
+ /**
1848
+ * Border Style
1849
+ * @see https://tailwindcss.com/docs/border-style
1850
+ */
1851
+ "border-style": [{
1852
+ border: [...W(), "hidden", "none"]
1853
+ }],
1854
+ /**
1855
+ * Divide Style
1856
+ * @see https://tailwindcss.com/docs/border-style#setting-the-divider-style
1857
+ */
1858
+ "divide-style": [{
1859
+ divide: [...W(), "hidden", "none"]
1860
+ }],
1861
+ /**
1862
+ * Border Color
1863
+ * @see https://tailwindcss.com/docs/border-color
1864
+ */
1865
+ "border-color": [{
1866
+ border: w()
1867
+ }],
1868
+ /**
1869
+ * Border Color X
1870
+ * @see https://tailwindcss.com/docs/border-color
1871
+ */
1872
+ "border-color-x": [{
1873
+ "border-x": w()
1874
+ }],
1875
+ /**
1876
+ * Border Color Y
1877
+ * @see https://tailwindcss.com/docs/border-color
1878
+ */
1879
+ "border-color-y": [{
1880
+ "border-y": w()
1881
+ }],
1882
+ /**
1883
+ * Border Color S
1884
+ * @see https://tailwindcss.com/docs/border-color
1885
+ */
1886
+ "border-color-s": [{
1887
+ "border-s": w()
1888
+ }],
1889
+ /**
1890
+ * Border Color E
1891
+ * @see https://tailwindcss.com/docs/border-color
1892
+ */
1893
+ "border-color-e": [{
1894
+ "border-e": w()
1895
+ }],
1896
+ /**
1897
+ * Border Color Top
1898
+ * @see https://tailwindcss.com/docs/border-color
1899
+ */
1900
+ "border-color-t": [{
1901
+ "border-t": w()
1902
+ }],
1903
+ /**
1904
+ * Border Color Right
1905
+ * @see https://tailwindcss.com/docs/border-color
1906
+ */
1907
+ "border-color-r": [{
1908
+ "border-r": w()
1909
+ }],
1910
+ /**
1911
+ * Border Color Bottom
1912
+ * @see https://tailwindcss.com/docs/border-color
1913
+ */
1914
+ "border-color-b": [{
1915
+ "border-b": w()
1916
+ }],
1917
+ /**
1918
+ * Border Color Left
1919
+ * @see https://tailwindcss.com/docs/border-color
1920
+ */
1921
+ "border-color-l": [{
1922
+ "border-l": w()
1923
+ }],
1924
+ /**
1925
+ * Divide Color
1926
+ * @see https://tailwindcss.com/docs/divide-color
1927
+ */
1928
+ "divide-color": [{
1929
+ divide: w()
1930
+ }],
1931
+ /**
1932
+ * Outline Style
1933
+ * @see https://tailwindcss.com/docs/outline-style
1934
+ */
1935
+ "outline-style": [{
1936
+ outline: [...W(), "none", "hidden"]
1937
+ }],
1938
+ /**
1939
+ * Outline Offset
1940
+ * @see https://tailwindcss.com/docs/outline-offset
1941
+ */
1942
+ "outline-offset": [{
1943
+ "outline-offset": [R, v, g]
1944
+ }],
1945
+ /**
1946
+ * Outline Width
1947
+ * @see https://tailwindcss.com/docs/outline-width
1948
+ */
1949
+ "outline-w": [{
1950
+ outline: ["", R, ye, ne]
1951
+ }],
1952
+ /**
1953
+ * Outline Color
1954
+ * @see https://tailwindcss.com/docs/outline-color
1955
+ */
1956
+ "outline-color": [{
1957
+ outline: w()
1958
+ }],
1959
+ // ---------------
1960
+ // --- Effects ---
1961
+ // ---------------
1962
+ /**
1963
+ * Box Shadow
1964
+ * @see https://tailwindcss.com/docs/box-shadow
1965
+ */
1966
+ shadow: [{
1967
+ shadow: [
1968
+ // Deprecated since Tailwind CSS v4.0.0
1969
+ "",
1970
+ "none",
1971
+ m,
1972
+ Re,
1973
+ Se
1974
+ ]
1975
+ }],
1976
+ /**
1977
+ * Box Shadow Color
1978
+ * @see https://tailwindcss.com/docs/box-shadow#setting-the-shadow-color
1979
+ */
1980
+ "shadow-color": [{
1981
+ shadow: w()
1982
+ }],
1983
+ /**
1984
+ * Inset Box Shadow
1985
+ * @see https://tailwindcss.com/docs/box-shadow#adding-an-inset-shadow
1986
+ */
1987
+ "inset-shadow": [{
1988
+ "inset-shadow": ["none", p, Re, Se]
1989
+ }],
1990
+ /**
1991
+ * Inset Box Shadow Color
1992
+ * @see https://tailwindcss.com/docs/box-shadow#setting-the-inset-shadow-color
1993
+ */
1994
+ "inset-shadow-color": [{
1995
+ "inset-shadow": w()
1996
+ }],
1997
+ /**
1998
+ * Ring Width
1999
+ * @see https://tailwindcss.com/docs/box-shadow#adding-a-ring
2000
+ */
2001
+ "ring-w": [{
2002
+ ring: M()
2003
+ }],
2004
+ /**
2005
+ * Ring Width Inset
2006
+ * @see https://v3.tailwindcss.com/docs/ring-width#inset-rings
2007
+ * @deprecated since Tailwind CSS v4.0.0
2008
+ * @see https://github.com/tailwindlabs/tailwindcss/blob/v4.0.0/packages/tailwindcss/src/utilities.ts#L4158
2009
+ */
2010
+ "ring-w-inset": ["ring-inset"],
2011
+ /**
2012
+ * Ring Color
2013
+ * @see https://tailwindcss.com/docs/box-shadow#setting-the-ring-color
2014
+ */
2015
+ "ring-color": [{
2016
+ ring: w()
2017
+ }],
2018
+ /**
2019
+ * Ring Offset Width
2020
+ * @see https://v3.tailwindcss.com/docs/ring-offset-width
2021
+ * @deprecated since Tailwind CSS v4.0.0
2022
+ * @see https://github.com/tailwindlabs/tailwindcss/blob/v4.0.0/packages/tailwindcss/src/utilities.ts#L4158
2023
+ */
2024
+ "ring-offset-w": [{
2025
+ "ring-offset": [R, ne]
2026
+ }],
2027
+ /**
2028
+ * Ring Offset Color
2029
+ * @see https://v3.tailwindcss.com/docs/ring-offset-color
2030
+ * @deprecated since Tailwind CSS v4.0.0
2031
+ * @see https://github.com/tailwindlabs/tailwindcss/blob/v4.0.0/packages/tailwindcss/src/utilities.ts#L4158
2032
+ */
2033
+ "ring-offset-color": [{
2034
+ "ring-offset": w()
2035
+ }],
2036
+ /**
2037
+ * Inset Ring Width
2038
+ * @see https://tailwindcss.com/docs/box-shadow#adding-an-inset-ring
2039
+ */
2040
+ "inset-ring-w": [{
2041
+ "inset-ring": M()
2042
+ }],
2043
+ /**
2044
+ * Inset Ring Color
2045
+ * @see https://tailwindcss.com/docs/box-shadow#setting-the-inset-ring-color
2046
+ */
2047
+ "inset-ring-color": [{
2048
+ "inset-ring": w()
2049
+ }],
2050
+ /**
2051
+ * Text Shadow
2052
+ * @see https://tailwindcss.com/docs/text-shadow
2053
+ */
2054
+ "text-shadow": [{
2055
+ "text-shadow": ["none", h, Re, Se]
2056
+ }],
2057
+ /**
2058
+ * Text Shadow Color
2059
+ * @see https://tailwindcss.com/docs/text-shadow#setting-the-shadow-color
2060
+ */
2061
+ "text-shadow-color": [{
2062
+ "text-shadow": w()
2063
+ }],
2064
+ /**
2065
+ * Opacity
2066
+ * @see https://tailwindcss.com/docs/opacity
2067
+ */
2068
+ opacity: [{
2069
+ opacity: [R, v, g]
2070
+ }],
2071
+ /**
2072
+ * Mix Blend Mode
2073
+ * @see https://tailwindcss.com/docs/mix-blend-mode
2074
+ */
2075
+ "mix-blend": [{
2076
+ "mix-blend": [...ie(), "plus-darker", "plus-lighter"]
2077
+ }],
2078
+ /**
2079
+ * Background Blend Mode
2080
+ * @see https://tailwindcss.com/docs/background-blend-mode
2081
+ */
2082
+ "bg-blend": [{
2083
+ "bg-blend": ie()
2084
+ }],
2085
+ /**
2086
+ * Mask Clip
2087
+ * @see https://tailwindcss.com/docs/mask-clip
2088
+ */
2089
+ "mask-clip": [{
2090
+ "mask-clip": ["border", "padding", "content", "fill", "stroke", "view"]
2091
+ }, "mask-no-clip"],
2092
+ /**
2093
+ * Mask Composite
2094
+ * @see https://tailwindcss.com/docs/mask-composite
2095
+ */
2096
+ "mask-composite": [{
2097
+ mask: ["add", "subtract", "intersect", "exclude"]
2098
+ }],
2099
+ /**
2100
+ * Mask Image
2101
+ * @see https://tailwindcss.com/docs/mask-image
2102
+ */
2103
+ "mask-image-linear-pos": [{
2104
+ "mask-linear": [R]
2105
+ }],
2106
+ "mask-image-linear-from-pos": [{
2107
+ "mask-linear-from": I()
2108
+ }],
2109
+ "mask-image-linear-to-pos": [{
2110
+ "mask-linear-to": I()
2111
+ }],
2112
+ "mask-image-linear-from-color": [{
2113
+ "mask-linear-from": w()
2114
+ }],
2115
+ "mask-image-linear-to-color": [{
2116
+ "mask-linear-to": w()
2117
+ }],
2118
+ "mask-image-t-from-pos": [{
2119
+ "mask-t-from": I()
2120
+ }],
2121
+ "mask-image-t-to-pos": [{
2122
+ "mask-t-to": I()
2123
+ }],
2124
+ "mask-image-t-from-color": [{
2125
+ "mask-t-from": w()
2126
+ }],
2127
+ "mask-image-t-to-color": [{
2128
+ "mask-t-to": w()
2129
+ }],
2130
+ "mask-image-r-from-pos": [{
2131
+ "mask-r-from": I()
2132
+ }],
2133
+ "mask-image-r-to-pos": [{
2134
+ "mask-r-to": I()
2135
+ }],
2136
+ "mask-image-r-from-color": [{
2137
+ "mask-r-from": w()
2138
+ }],
2139
+ "mask-image-r-to-color": [{
2140
+ "mask-r-to": w()
2141
+ }],
2142
+ "mask-image-b-from-pos": [{
2143
+ "mask-b-from": I()
2144
+ }],
2145
+ "mask-image-b-to-pos": [{
2146
+ "mask-b-to": I()
2147
+ }],
2148
+ "mask-image-b-from-color": [{
2149
+ "mask-b-from": w()
2150
+ }],
2151
+ "mask-image-b-to-color": [{
2152
+ "mask-b-to": w()
2153
+ }],
2154
+ "mask-image-l-from-pos": [{
2155
+ "mask-l-from": I()
2156
+ }],
2157
+ "mask-image-l-to-pos": [{
2158
+ "mask-l-to": I()
2159
+ }],
2160
+ "mask-image-l-from-color": [{
2161
+ "mask-l-from": w()
2162
+ }],
2163
+ "mask-image-l-to-color": [{
2164
+ "mask-l-to": w()
2165
+ }],
2166
+ "mask-image-x-from-pos": [{
2167
+ "mask-x-from": I()
2168
+ }],
2169
+ "mask-image-x-to-pos": [{
2170
+ "mask-x-to": I()
2171
+ }],
2172
+ "mask-image-x-from-color": [{
2173
+ "mask-x-from": w()
2174
+ }],
2175
+ "mask-image-x-to-color": [{
2176
+ "mask-x-to": w()
2177
+ }],
2178
+ "mask-image-y-from-pos": [{
2179
+ "mask-y-from": I()
2180
+ }],
2181
+ "mask-image-y-to-pos": [{
2182
+ "mask-y-to": I()
2183
+ }],
2184
+ "mask-image-y-from-color": [{
2185
+ "mask-y-from": w()
2186
+ }],
2187
+ "mask-image-y-to-color": [{
2188
+ "mask-y-to": w()
2189
+ }],
2190
+ "mask-image-radial": [{
2191
+ "mask-radial": [v, g]
2192
+ }],
2193
+ "mask-image-radial-from-pos": [{
2194
+ "mask-radial-from": I()
2195
+ }],
2196
+ "mask-image-radial-to-pos": [{
2197
+ "mask-radial-to": I()
2198
+ }],
2199
+ "mask-image-radial-from-color": [{
2200
+ "mask-radial-from": w()
2201
+ }],
2202
+ "mask-image-radial-to-color": [{
2203
+ "mask-radial-to": w()
2204
+ }],
2205
+ "mask-image-radial-shape": [{
2206
+ "mask-radial": ["circle", "ellipse"]
2207
+ }],
2208
+ "mask-image-radial-size": [{
2209
+ "mask-radial": [{
2210
+ closest: ["side", "corner"],
2211
+ farthest: ["side", "corner"]
2212
+ }]
2213
+ }],
2214
+ "mask-image-radial-pos": [{
2215
+ "mask-radial-at": A()
2216
+ }],
2217
+ "mask-image-conic-pos": [{
2218
+ "mask-conic": [R]
2219
+ }],
2220
+ "mask-image-conic-from-pos": [{
2221
+ "mask-conic-from": I()
2222
+ }],
2223
+ "mask-image-conic-to-pos": [{
2224
+ "mask-conic-to": I()
2225
+ }],
2226
+ "mask-image-conic-from-color": [{
2227
+ "mask-conic-from": w()
2228
+ }],
2229
+ "mask-image-conic-to-color": [{
2230
+ "mask-conic-to": w()
2231
+ }],
2232
+ /**
2233
+ * Mask Mode
2234
+ * @see https://tailwindcss.com/docs/mask-mode
2235
+ */
2236
+ "mask-mode": [{
2237
+ mask: ["alpha", "luminance", "match"]
2238
+ }],
2239
+ /**
2240
+ * Mask Origin
2241
+ * @see https://tailwindcss.com/docs/mask-origin
2242
+ */
2243
+ "mask-origin": [{
2244
+ "mask-origin": ["border", "padding", "content", "fill", "stroke", "view"]
2245
+ }],
2246
+ /**
2247
+ * Mask Position
2248
+ * @see https://tailwindcss.com/docs/mask-position
2249
+ */
2250
+ "mask-position": [{
2251
+ mask: ge()
2252
+ }],
2253
+ /**
2254
+ * Mask Repeat
2255
+ * @see https://tailwindcss.com/docs/mask-repeat
2256
+ */
2257
+ "mask-repeat": [{
2258
+ mask: d()
2259
+ }],
2260
+ /**
2261
+ * Mask Size
2262
+ * @see https://tailwindcss.com/docs/mask-size
2263
+ */
2264
+ "mask-size": [{
2265
+ mask: k()
2266
+ }],
2267
+ /**
2268
+ * Mask Type
2269
+ * @see https://tailwindcss.com/docs/mask-type
2270
+ */
2271
+ "mask-type": [{
2272
+ "mask-type": ["alpha", "luminance"]
2273
+ }],
2274
+ /**
2275
+ * Mask Image
2276
+ * @see https://tailwindcss.com/docs/mask-image
2277
+ */
2278
+ "mask-image": [{
2279
+ mask: ["none", v, g]
2280
+ }],
2281
+ // ---------------
2282
+ // --- Filters ---
2283
+ // ---------------
2284
+ /**
2285
+ * Filter
2286
+ * @see https://tailwindcss.com/docs/filter
2287
+ */
2288
+ filter: [{
2289
+ filter: [
2290
+ // Deprecated since Tailwind CSS v3.0.0
2291
+ "",
2292
+ "none",
2293
+ v,
2294
+ g
2295
+ ]
2296
+ }],
2297
+ /**
2298
+ * Blur
2299
+ * @see https://tailwindcss.com/docs/blur
2300
+ */
2301
+ blur: [{
2302
+ blur: L()
2303
+ }],
2304
+ /**
2305
+ * Brightness
2306
+ * @see https://tailwindcss.com/docs/brightness
2307
+ */
2308
+ brightness: [{
2309
+ brightness: [R, v, g]
2310
+ }],
2311
+ /**
2312
+ * Contrast
2313
+ * @see https://tailwindcss.com/docs/contrast
2314
+ */
2315
+ contrast: [{
2316
+ contrast: [R, v, g]
2317
+ }],
2318
+ /**
2319
+ * Drop Shadow
2320
+ * @see https://tailwindcss.com/docs/drop-shadow
2321
+ */
2322
+ "drop-shadow": [{
2323
+ "drop-shadow": [
2324
+ // Deprecated since Tailwind CSS v4.0.0
2325
+ "",
2326
+ "none",
2327
+ E,
2328
+ Re,
2329
+ Se
2330
+ ]
2331
+ }],
2332
+ /**
2333
+ * Drop Shadow Color
2334
+ * @see https://tailwindcss.com/docs/filter-drop-shadow#setting-the-shadow-color
2335
+ */
2336
+ "drop-shadow-color": [{
2337
+ "drop-shadow": w()
2338
+ }],
2339
+ /**
2340
+ * Grayscale
2341
+ * @see https://tailwindcss.com/docs/grayscale
2342
+ */
2343
+ grayscale: [{
2344
+ grayscale: ["", R, v, g]
2345
+ }],
2346
+ /**
2347
+ * Hue Rotate
2348
+ * @see https://tailwindcss.com/docs/hue-rotate
2349
+ */
2350
+ "hue-rotate": [{
2351
+ "hue-rotate": [R, v, g]
2352
+ }],
2353
+ /**
2354
+ * Invert
2355
+ * @see https://tailwindcss.com/docs/invert
2356
+ */
2357
+ invert: [{
2358
+ invert: ["", R, v, g]
2359
+ }],
2360
+ /**
2361
+ * Saturate
2362
+ * @see https://tailwindcss.com/docs/saturate
2363
+ */
2364
+ saturate: [{
2365
+ saturate: [R, v, g]
2366
+ }],
2367
+ /**
2368
+ * Sepia
2369
+ * @see https://tailwindcss.com/docs/sepia
2370
+ */
2371
+ sepia: [{
2372
+ sepia: ["", R, v, g]
2373
+ }],
2374
+ /**
2375
+ * Backdrop Filter
2376
+ * @see https://tailwindcss.com/docs/backdrop-filter
2377
+ */
2378
+ "backdrop-filter": [{
2379
+ "backdrop-filter": [
2380
+ // Deprecated since Tailwind CSS v3.0.0
2381
+ "",
2382
+ "none",
2383
+ v,
2384
+ g
2385
+ ]
2386
+ }],
2387
+ /**
2388
+ * Backdrop Blur
2389
+ * @see https://tailwindcss.com/docs/backdrop-blur
2390
+ */
2391
+ "backdrop-blur": [{
2392
+ "backdrop-blur": L()
2393
+ }],
2394
+ /**
2395
+ * Backdrop Brightness
2396
+ * @see https://tailwindcss.com/docs/backdrop-brightness
2397
+ */
2398
+ "backdrop-brightness": [{
2399
+ "backdrop-brightness": [R, v, g]
2400
+ }],
2401
+ /**
2402
+ * Backdrop Contrast
2403
+ * @see https://tailwindcss.com/docs/backdrop-contrast
2404
+ */
2405
+ "backdrop-contrast": [{
2406
+ "backdrop-contrast": [R, v, g]
2407
+ }],
2408
+ /**
2409
+ * Backdrop Grayscale
2410
+ * @see https://tailwindcss.com/docs/backdrop-grayscale
2411
+ */
2412
+ "backdrop-grayscale": [{
2413
+ "backdrop-grayscale": ["", R, v, g]
2414
+ }],
2415
+ /**
2416
+ * Backdrop Hue Rotate
2417
+ * @see https://tailwindcss.com/docs/backdrop-hue-rotate
2418
+ */
2419
+ "backdrop-hue-rotate": [{
2420
+ "backdrop-hue-rotate": [R, v, g]
2421
+ }],
2422
+ /**
2423
+ * Backdrop Invert
2424
+ * @see https://tailwindcss.com/docs/backdrop-invert
2425
+ */
2426
+ "backdrop-invert": [{
2427
+ "backdrop-invert": ["", R, v, g]
2428
+ }],
2429
+ /**
2430
+ * Backdrop Opacity
2431
+ * @see https://tailwindcss.com/docs/backdrop-opacity
2432
+ */
2433
+ "backdrop-opacity": [{
2434
+ "backdrop-opacity": [R, v, g]
2435
+ }],
2436
+ /**
2437
+ * Backdrop Saturate
2438
+ * @see https://tailwindcss.com/docs/backdrop-saturate
2439
+ */
2440
+ "backdrop-saturate": [{
2441
+ "backdrop-saturate": [R, v, g]
2442
+ }],
2443
+ /**
2444
+ * Backdrop Sepia
2445
+ * @see https://tailwindcss.com/docs/backdrop-sepia
2446
+ */
2447
+ "backdrop-sepia": [{
2448
+ "backdrop-sepia": ["", R, v, g]
2449
+ }],
2450
+ // --------------
2451
+ // --- Tables ---
2452
+ // --------------
2453
+ /**
2454
+ * Border Collapse
2455
+ * @see https://tailwindcss.com/docs/border-collapse
2456
+ */
2457
+ "border-collapse": [{
2458
+ border: ["collapse", "separate"]
2459
+ }],
2460
+ /**
2461
+ * Border Spacing
2462
+ * @see https://tailwindcss.com/docs/border-spacing
2463
+ */
2464
+ "border-spacing": [{
2465
+ "border-spacing": b()
2466
+ }],
2467
+ /**
2468
+ * Border Spacing X
2469
+ * @see https://tailwindcss.com/docs/border-spacing
2470
+ */
2471
+ "border-spacing-x": [{
2472
+ "border-spacing-x": b()
2473
+ }],
2474
+ /**
2475
+ * Border Spacing Y
2476
+ * @see https://tailwindcss.com/docs/border-spacing
2477
+ */
2478
+ "border-spacing-y": [{
2479
+ "border-spacing-y": b()
2480
+ }],
2481
+ /**
2482
+ * Table Layout
2483
+ * @see https://tailwindcss.com/docs/table-layout
2484
+ */
2485
+ "table-layout": [{
2486
+ table: ["auto", "fixed"]
2487
+ }],
2488
+ /**
2489
+ * Caption Side
2490
+ * @see https://tailwindcss.com/docs/caption-side
2491
+ */
2492
+ caption: [{
2493
+ caption: ["top", "bottom"]
2494
+ }],
2495
+ // ---------------------------------
2496
+ // --- Transitions and Animation ---
2497
+ // ---------------------------------
2498
+ /**
2499
+ * Transition Property
2500
+ * @see https://tailwindcss.com/docs/transition-property
2501
+ */
2502
+ transition: [{
2503
+ transition: ["", "all", "colors", "opacity", "shadow", "transform", "none", v, g]
2504
+ }],
2505
+ /**
2506
+ * Transition Behavior
2507
+ * @see https://tailwindcss.com/docs/transition-behavior
2508
+ */
2509
+ "transition-behavior": [{
2510
+ transition: ["normal", "discrete"]
2511
+ }],
2512
+ /**
2513
+ * Transition Duration
2514
+ * @see https://tailwindcss.com/docs/transition-duration
2515
+ */
2516
+ duration: [{
2517
+ duration: [R, "initial", v, g]
2518
+ }],
2519
+ /**
2520
+ * Transition Timing Function
2521
+ * @see https://tailwindcss.com/docs/transition-timing-function
2522
+ */
2523
+ ease: [{
2524
+ ease: ["linear", "initial", C, v, g]
2525
+ }],
2526
+ /**
2527
+ * Transition Delay
2528
+ * @see https://tailwindcss.com/docs/transition-delay
2529
+ */
2530
+ delay: [{
2531
+ delay: [R, v, g]
2532
+ }],
2533
+ /**
2534
+ * Animation
2535
+ * @see https://tailwindcss.com/docs/animation
2536
+ */
2537
+ animate: [{
2538
+ animate: ["none", T, v, g]
2539
+ }],
2540
+ // ------------------
2541
+ // --- Transforms ---
2542
+ // ------------------
2543
+ /**
2544
+ * Backface Visibility
2545
+ * @see https://tailwindcss.com/docs/backface-visibility
2546
+ */
2547
+ backface: [{
2548
+ backface: ["hidden", "visible"]
2549
+ }],
2550
+ /**
2551
+ * Perspective
2552
+ * @see https://tailwindcss.com/docs/perspective
2553
+ */
2554
+ perspective: [{
2555
+ perspective: [f, v, g]
2556
+ }],
2557
+ /**
2558
+ * Perspective Origin
2559
+ * @see https://tailwindcss.com/docs/perspective-origin
2560
+ */
2561
+ "perspective-origin": [{
2562
+ "perspective-origin": _()
2563
+ }],
2564
+ /**
2565
+ * Rotate
2566
+ * @see https://tailwindcss.com/docs/rotate
2567
+ */
2568
+ rotate: [{
2569
+ rotate: V()
2570
+ }],
2571
+ /**
2572
+ * Rotate X
2573
+ * @see https://tailwindcss.com/docs/rotate
2574
+ */
2575
+ "rotate-x": [{
2576
+ "rotate-x": V()
2577
+ }],
2578
+ /**
2579
+ * Rotate Y
2580
+ * @see https://tailwindcss.com/docs/rotate
2581
+ */
2582
+ "rotate-y": [{
2583
+ "rotate-y": V()
2584
+ }],
2585
+ /**
2586
+ * Rotate Z
2587
+ * @see https://tailwindcss.com/docs/rotate
2588
+ */
2589
+ "rotate-z": [{
2590
+ "rotate-z": V()
2591
+ }],
2592
+ /**
2593
+ * Scale
2594
+ * @see https://tailwindcss.com/docs/scale
2595
+ */
2596
+ scale: [{
2597
+ scale: J()
2598
+ }],
2599
+ /**
2600
+ * Scale X
2601
+ * @see https://tailwindcss.com/docs/scale
2602
+ */
2603
+ "scale-x": [{
2604
+ "scale-x": J()
2605
+ }],
2606
+ /**
2607
+ * Scale Y
2608
+ * @see https://tailwindcss.com/docs/scale
2609
+ */
2610
+ "scale-y": [{
2611
+ "scale-y": J()
2612
+ }],
2613
+ /**
2614
+ * Scale Z
2615
+ * @see https://tailwindcss.com/docs/scale
2616
+ */
2617
+ "scale-z": [{
2618
+ "scale-z": J()
2619
+ }],
2620
+ /**
2621
+ * Scale 3D
2622
+ * @see https://tailwindcss.com/docs/scale
2623
+ */
2624
+ "scale-3d": ["scale-3d"],
2625
+ /**
2626
+ * Skew
2627
+ * @see https://tailwindcss.com/docs/skew
2628
+ */
2629
+ skew: [{
2630
+ skew: ve()
2631
+ }],
2632
+ /**
2633
+ * Skew X
2634
+ * @see https://tailwindcss.com/docs/skew
2635
+ */
2636
+ "skew-x": [{
2637
+ "skew-x": ve()
2638
+ }],
2639
+ /**
2640
+ * Skew Y
2641
+ * @see https://tailwindcss.com/docs/skew
2642
+ */
2643
+ "skew-y": [{
2644
+ "skew-y": ve()
2645
+ }],
2646
+ /**
2647
+ * Transform
2648
+ * @see https://tailwindcss.com/docs/transform
2649
+ */
2650
+ transform: [{
2651
+ transform: [v, g, "", "none", "gpu", "cpu"]
2652
+ }],
2653
+ /**
2654
+ * Transform Origin
2655
+ * @see https://tailwindcss.com/docs/transform-origin
2656
+ */
2657
+ "transform-origin": [{
2658
+ origin: _()
2659
+ }],
2660
+ /**
2661
+ * Transform Style
2662
+ * @see https://tailwindcss.com/docs/transform-style
2663
+ */
2664
+ "transform-style": [{
2665
+ transform: ["3d", "flat"]
2666
+ }],
2667
+ /**
2668
+ * Translate
2669
+ * @see https://tailwindcss.com/docs/translate
2670
+ */
2671
+ translate: [{
2672
+ translate: ke()
2673
+ }],
2674
+ /**
2675
+ * Translate X
2676
+ * @see https://tailwindcss.com/docs/translate
2677
+ */
2678
+ "translate-x": [{
2679
+ "translate-x": ke()
2680
+ }],
2681
+ /**
2682
+ * Translate Y
2683
+ * @see https://tailwindcss.com/docs/translate
2684
+ */
2685
+ "translate-y": [{
2686
+ "translate-y": ke()
2687
+ }],
2688
+ /**
2689
+ * Translate Z
2690
+ * @see https://tailwindcss.com/docs/translate
2691
+ */
2692
+ "translate-z": [{
2693
+ "translate-z": ke()
2694
+ }],
2695
+ /**
2696
+ * Translate None
2697
+ * @see https://tailwindcss.com/docs/translate
2698
+ */
2699
+ "translate-none": ["translate-none"],
2700
+ // ---------------------
2701
+ // --- Interactivity ---
2702
+ // ---------------------
2703
+ /**
2704
+ * Accent Color
2705
+ * @see https://tailwindcss.com/docs/accent-color
2706
+ */
2707
+ accent: [{
2708
+ accent: w()
2709
+ }],
2710
+ /**
2711
+ * Appearance
2712
+ * @see https://tailwindcss.com/docs/appearance
2713
+ */
2714
+ appearance: [{
2715
+ appearance: ["none", "auto"]
2716
+ }],
2717
+ /**
2718
+ * Caret Color
2719
+ * @see https://tailwindcss.com/docs/just-in-time-mode#caret-color-utilities
2720
+ */
2721
+ "caret-color": [{
2722
+ caret: w()
2723
+ }],
2724
+ /**
2725
+ * Color Scheme
2726
+ * @see https://tailwindcss.com/docs/color-scheme
2727
+ */
2728
+ "color-scheme": [{
2729
+ scheme: ["normal", "dark", "light", "light-dark", "only-dark", "only-light"]
2730
+ }],
2731
+ /**
2732
+ * Cursor
2733
+ * @see https://tailwindcss.com/docs/cursor
2734
+ */
2735
+ cursor: [{
2736
+ cursor: ["auto", "default", "pointer", "wait", "text", "move", "help", "not-allowed", "none", "context-menu", "progress", "cell", "crosshair", "vertical-text", "alias", "copy", "no-drop", "grab", "grabbing", "all-scroll", "col-resize", "row-resize", "n-resize", "e-resize", "s-resize", "w-resize", "ne-resize", "nw-resize", "se-resize", "sw-resize", "ew-resize", "ns-resize", "nesw-resize", "nwse-resize", "zoom-in", "zoom-out", v, g]
2737
+ }],
2738
+ /**
2739
+ * Field Sizing
2740
+ * @see https://tailwindcss.com/docs/field-sizing
2741
+ */
2742
+ "field-sizing": [{
2743
+ "field-sizing": ["fixed", "content"]
2744
+ }],
2745
+ /**
2746
+ * Pointer Events
2747
+ * @see https://tailwindcss.com/docs/pointer-events
2748
+ */
2749
+ "pointer-events": [{
2750
+ "pointer-events": ["auto", "none"]
2751
+ }],
2752
+ /**
2753
+ * Resize
2754
+ * @see https://tailwindcss.com/docs/resize
2755
+ */
2756
+ resize: [{
2757
+ resize: ["none", "", "y", "x"]
2758
+ }],
2759
+ /**
2760
+ * Scroll Behavior
2761
+ * @see https://tailwindcss.com/docs/scroll-behavior
2762
+ */
2763
+ "scroll-behavior": [{
2764
+ scroll: ["auto", "smooth"]
2765
+ }],
2766
+ /**
2767
+ * Scroll Margin
2768
+ * @see https://tailwindcss.com/docs/scroll-margin
2769
+ */
2770
+ "scroll-m": [{
2771
+ "scroll-m": b()
2772
+ }],
2773
+ /**
2774
+ * Scroll Margin X
2775
+ * @see https://tailwindcss.com/docs/scroll-margin
2776
+ */
2777
+ "scroll-mx": [{
2778
+ "scroll-mx": b()
2779
+ }],
2780
+ /**
2781
+ * Scroll Margin Y
2782
+ * @see https://tailwindcss.com/docs/scroll-margin
2783
+ */
2784
+ "scroll-my": [{
2785
+ "scroll-my": b()
2786
+ }],
2787
+ /**
2788
+ * Scroll Margin Start
2789
+ * @see https://tailwindcss.com/docs/scroll-margin
2790
+ */
2791
+ "scroll-ms": [{
2792
+ "scroll-ms": b()
2793
+ }],
2794
+ /**
2795
+ * Scroll Margin End
2796
+ * @see https://tailwindcss.com/docs/scroll-margin
2797
+ */
2798
+ "scroll-me": [{
2799
+ "scroll-me": b()
2800
+ }],
2801
+ /**
2802
+ * Scroll Margin Top
2803
+ * @see https://tailwindcss.com/docs/scroll-margin
2804
+ */
2805
+ "scroll-mt": [{
2806
+ "scroll-mt": b()
2807
+ }],
2808
+ /**
2809
+ * Scroll Margin Right
2810
+ * @see https://tailwindcss.com/docs/scroll-margin
2811
+ */
2812
+ "scroll-mr": [{
2813
+ "scroll-mr": b()
2814
+ }],
2815
+ /**
2816
+ * Scroll Margin Bottom
2817
+ * @see https://tailwindcss.com/docs/scroll-margin
2818
+ */
2819
+ "scroll-mb": [{
2820
+ "scroll-mb": b()
2821
+ }],
2822
+ /**
2823
+ * Scroll Margin Left
2824
+ * @see https://tailwindcss.com/docs/scroll-margin
2825
+ */
2826
+ "scroll-ml": [{
2827
+ "scroll-ml": b()
2828
+ }],
2829
+ /**
2830
+ * Scroll Padding
2831
+ * @see https://tailwindcss.com/docs/scroll-padding
2832
+ */
2833
+ "scroll-p": [{
2834
+ "scroll-p": b()
2835
+ }],
2836
+ /**
2837
+ * Scroll Padding X
2838
+ * @see https://tailwindcss.com/docs/scroll-padding
2839
+ */
2840
+ "scroll-px": [{
2841
+ "scroll-px": b()
2842
+ }],
2843
+ /**
2844
+ * Scroll Padding Y
2845
+ * @see https://tailwindcss.com/docs/scroll-padding
2846
+ */
2847
+ "scroll-py": [{
2848
+ "scroll-py": b()
2849
+ }],
2850
+ /**
2851
+ * Scroll Padding Start
2852
+ * @see https://tailwindcss.com/docs/scroll-padding
2853
+ */
2854
+ "scroll-ps": [{
2855
+ "scroll-ps": b()
2856
+ }],
2857
+ /**
2858
+ * Scroll Padding End
2859
+ * @see https://tailwindcss.com/docs/scroll-padding
2860
+ */
2861
+ "scroll-pe": [{
2862
+ "scroll-pe": b()
2863
+ }],
2864
+ /**
2865
+ * Scroll Padding Top
2866
+ * @see https://tailwindcss.com/docs/scroll-padding
2867
+ */
2868
+ "scroll-pt": [{
2869
+ "scroll-pt": b()
2870
+ }],
2871
+ /**
2872
+ * Scroll Padding Right
2873
+ * @see https://tailwindcss.com/docs/scroll-padding
2874
+ */
2875
+ "scroll-pr": [{
2876
+ "scroll-pr": b()
2877
+ }],
2878
+ /**
2879
+ * Scroll Padding Bottom
2880
+ * @see https://tailwindcss.com/docs/scroll-padding
2881
+ */
2882
+ "scroll-pb": [{
2883
+ "scroll-pb": b()
2884
+ }],
2885
+ /**
2886
+ * Scroll Padding Left
2887
+ * @see https://tailwindcss.com/docs/scroll-padding
2888
+ */
2889
+ "scroll-pl": [{
2890
+ "scroll-pl": b()
2891
+ }],
2892
+ /**
2893
+ * Scroll Snap Align
2894
+ * @see https://tailwindcss.com/docs/scroll-snap-align
2895
+ */
2896
+ "snap-align": [{
2897
+ snap: ["start", "end", "center", "align-none"]
2898
+ }],
2899
+ /**
2900
+ * Scroll Snap Stop
2901
+ * @see https://tailwindcss.com/docs/scroll-snap-stop
2902
+ */
2903
+ "snap-stop": [{
2904
+ snap: ["normal", "always"]
2905
+ }],
2906
+ /**
2907
+ * Scroll Snap Type
2908
+ * @see https://tailwindcss.com/docs/scroll-snap-type
2909
+ */
2910
+ "snap-type": [{
2911
+ snap: ["none", "x", "y", "both"]
2912
+ }],
2913
+ /**
2914
+ * Scroll Snap Type Strictness
2915
+ * @see https://tailwindcss.com/docs/scroll-snap-type
2916
+ */
2917
+ "snap-strictness": [{
2918
+ snap: ["mandatory", "proximity"]
2919
+ }],
2920
+ /**
2921
+ * Touch Action
2922
+ * @see https://tailwindcss.com/docs/touch-action
2923
+ */
2924
+ touch: [{
2925
+ touch: ["auto", "none", "manipulation"]
2926
+ }],
2927
+ /**
2928
+ * Touch Action X
2929
+ * @see https://tailwindcss.com/docs/touch-action
2930
+ */
2931
+ "touch-x": [{
2932
+ "touch-pan": ["x", "left", "right"]
2933
+ }],
2934
+ /**
2935
+ * Touch Action Y
2936
+ * @see https://tailwindcss.com/docs/touch-action
2937
+ */
2938
+ "touch-y": [{
2939
+ "touch-pan": ["y", "up", "down"]
2940
+ }],
2941
+ /**
2942
+ * Touch Action Pinch Zoom
2943
+ * @see https://tailwindcss.com/docs/touch-action
2944
+ */
2945
+ "touch-pz": ["touch-pinch-zoom"],
2946
+ /**
2947
+ * User Select
2948
+ * @see https://tailwindcss.com/docs/user-select
2949
+ */
2950
+ select: [{
2951
+ select: ["none", "text", "all", "auto"]
2952
+ }],
2953
+ /**
2954
+ * Will Change
2955
+ * @see https://tailwindcss.com/docs/will-change
2956
+ */
2957
+ "will-change": [{
2958
+ "will-change": ["auto", "scroll", "contents", "transform", v, g]
2959
+ }],
2960
+ // -----------
2961
+ // --- SVG ---
2962
+ // -----------
2963
+ /**
2964
+ * Fill
2965
+ * @see https://tailwindcss.com/docs/fill
2966
+ */
2967
+ fill: [{
2968
+ fill: ["none", ...w()]
2969
+ }],
2970
+ /**
2971
+ * Stroke Width
2972
+ * @see https://tailwindcss.com/docs/stroke-width
2973
+ */
2974
+ "stroke-w": [{
2975
+ stroke: [R, ye, ne, ze]
2976
+ }],
2977
+ /**
2978
+ * Stroke
2979
+ * @see https://tailwindcss.com/docs/stroke
2980
+ */
2981
+ stroke: [{
2982
+ stroke: ["none", ...w()]
2983
+ }],
2984
+ // ---------------------
2985
+ // --- Accessibility ---
2986
+ // ---------------------
2987
+ /**
2988
+ * Forced Color Adjust
2989
+ * @see https://tailwindcss.com/docs/forced-color-adjust
2990
+ */
2991
+ "forced-color-adjust": [{
2992
+ "forced-color-adjust": ["auto", "none"]
2993
+ }]
2994
+ },
2995
+ conflictingClassGroups: {
2996
+ overflow: ["overflow-x", "overflow-y"],
2997
+ overscroll: ["overscroll-x", "overscroll-y"],
2998
+ inset: ["inset-x", "inset-y", "start", "end", "top", "right", "bottom", "left"],
2999
+ "inset-x": ["right", "left"],
3000
+ "inset-y": ["top", "bottom"],
3001
+ flex: ["basis", "grow", "shrink"],
3002
+ gap: ["gap-x", "gap-y"],
3003
+ p: ["px", "py", "ps", "pe", "pt", "pr", "pb", "pl"],
3004
+ px: ["pr", "pl"],
3005
+ py: ["pt", "pb"],
3006
+ m: ["mx", "my", "ms", "me", "mt", "mr", "mb", "ml"],
3007
+ mx: ["mr", "ml"],
3008
+ my: ["mt", "mb"],
3009
+ size: ["w", "h"],
3010
+ "font-size": ["leading"],
3011
+ "fvn-normal": ["fvn-ordinal", "fvn-slashed-zero", "fvn-figure", "fvn-spacing", "fvn-fraction"],
3012
+ "fvn-ordinal": ["fvn-normal"],
3013
+ "fvn-slashed-zero": ["fvn-normal"],
3014
+ "fvn-figure": ["fvn-normal"],
3015
+ "fvn-spacing": ["fvn-normal"],
3016
+ "fvn-fraction": ["fvn-normal"],
3017
+ "line-clamp": ["display", "overflow"],
3018
+ rounded: ["rounded-s", "rounded-e", "rounded-t", "rounded-r", "rounded-b", "rounded-l", "rounded-ss", "rounded-se", "rounded-ee", "rounded-es", "rounded-tl", "rounded-tr", "rounded-br", "rounded-bl"],
3019
+ "rounded-s": ["rounded-ss", "rounded-es"],
3020
+ "rounded-e": ["rounded-se", "rounded-ee"],
3021
+ "rounded-t": ["rounded-tl", "rounded-tr"],
3022
+ "rounded-r": ["rounded-tr", "rounded-br"],
3023
+ "rounded-b": ["rounded-br", "rounded-bl"],
3024
+ "rounded-l": ["rounded-tl", "rounded-bl"],
3025
+ "border-spacing": ["border-spacing-x", "border-spacing-y"],
3026
+ "border-w": ["border-w-x", "border-w-y", "border-w-s", "border-w-e", "border-w-t", "border-w-r", "border-w-b", "border-w-l"],
3027
+ "border-w-x": ["border-w-r", "border-w-l"],
3028
+ "border-w-y": ["border-w-t", "border-w-b"],
3029
+ "border-color": ["border-color-x", "border-color-y", "border-color-s", "border-color-e", "border-color-t", "border-color-r", "border-color-b", "border-color-l"],
3030
+ "border-color-x": ["border-color-r", "border-color-l"],
3031
+ "border-color-y": ["border-color-t", "border-color-b"],
3032
+ translate: ["translate-x", "translate-y", "translate-none"],
3033
+ "translate-none": ["translate", "translate-x", "translate-y", "translate-z"],
3034
+ "scroll-m": ["scroll-mx", "scroll-my", "scroll-ms", "scroll-me", "scroll-mt", "scroll-mr", "scroll-mb", "scroll-ml"],
3035
+ "scroll-mx": ["scroll-mr", "scroll-ml"],
3036
+ "scroll-my": ["scroll-mt", "scroll-mb"],
3037
+ "scroll-p": ["scroll-px", "scroll-py", "scroll-ps", "scroll-pe", "scroll-pt", "scroll-pr", "scroll-pb", "scroll-pl"],
3038
+ "scroll-px": ["scroll-pr", "scroll-pl"],
3039
+ "scroll-py": ["scroll-pt", "scroll-pb"],
3040
+ touch: ["touch-x", "touch-y", "touch-pz"],
3041
+ "touch-x": ["touch"],
3042
+ "touch-y": ["touch"],
3043
+ "touch-pz": ["touch"]
3044
+ },
3045
+ conflictingClassGroupModifiers: {
3046
+ "font-size": ["leading"]
3047
+ },
3048
+ orderSensitiveModifiers: ["*", "**", "after", "backdrop", "before", "details-content", "file", "first-letter", "first-line", "marker", "placeholder", "selection"]
3049
+ };
3050
+ }, an = /* @__PURE__ */ zr(on);
3051
+ function Y(...e) {
3052
+ return an(Pt(e));
3053
+ }
3054
+ const sn = At(
3055
+ "relative w-full rounded-lg border px-4 py-3 text-sm grid has-[>svg]:grid-cols-[calc(var(--spacing)*4)_1fr] grid-cols-[0_1fr] has-[>svg]:gap-x-3 gap-y-0.5 items-start [&>svg]:size-4 [&>svg]:translate-y-0.5 [&>svg]:text-current",
3056
+ {
3057
+ variants: {
3058
+ variant: {
3059
+ default: "bg-card text-card-foreground",
3060
+ destructive: "text-destructive bg-card [&>svg]:text-current *:data-[slot=alert-description]:text-destructive/90"
3061
+ }
3062
+ },
3063
+ defaultVariants: {
3064
+ variant: "default"
3065
+ }
3066
+ }
3067
+ );
3068
+ function ea({
3069
+ className: e,
3070
+ variant: t,
3071
+ ...r
3072
+ }) {
3073
+ return /* @__PURE__ */ y.jsx(
3074
+ "div",
3075
+ {
3076
+ "data-slot": "alert",
3077
+ role: "alert",
3078
+ className: Y(sn({ variant: t }), e),
3079
+ ...r
3080
+ }
3081
+ );
3082
+ }
3083
+ function ta({ className: e, ...t }) {
3084
+ return /* @__PURE__ */ y.jsx(
3085
+ "div",
3086
+ {
3087
+ "data-slot": "alert-title",
3088
+ className: Y(
3089
+ "col-start-2 line-clamp-1 min-h-4 font-medium tracking-tight",
3090
+ e
3091
+ ),
3092
+ ...t
3093
+ }
3094
+ );
3095
+ }
3096
+ function ra({
3097
+ className: e,
3098
+ ...t
3099
+ }) {
3100
+ return /* @__PURE__ */ y.jsx(
3101
+ "div",
3102
+ {
3103
+ "data-slot": "alert-description",
3104
+ className: Y(
3105
+ "text-muted-foreground col-start-2 grid justify-items-start gap-1 text-sm [&_p]:leading-relaxed",
3106
+ e
3107
+ ),
3108
+ ...t
3109
+ }
3110
+ );
3111
+ }
3112
+ function mt(e, t) {
3113
+ if (typeof e == "function")
3114
+ return e(t);
3115
+ e != null && (e.current = t);
3116
+ }
3117
+ function zt(...e) {
3118
+ return (t) => {
3119
+ let r = !1;
3120
+ const n = e.map((o) => {
3121
+ const a = mt(o, t);
3122
+ return !r && typeof a == "function" && (r = !0), a;
3123
+ });
3124
+ if (r)
3125
+ return () => {
3126
+ for (let o = 0; o < n.length; o++) {
3127
+ const a = n[o];
3128
+ typeof a == "function" ? a() : mt(e[o], null);
3129
+ }
3130
+ };
3131
+ };
3132
+ }
3133
+ function ae(...e) {
3134
+ return c.useCallback(zt(...e), e);
3135
+ }
3136
+ // @__NO_SIDE_EFFECTS__
3137
+ function et(e) {
3138
+ const t = /* @__PURE__ */ ln(e), r = c.forwardRef((n, o) => {
3139
+ const { children: a, ...i } = n, s = c.Children.toArray(a), l = s.find(dn);
3140
+ if (l) {
3141
+ const u = l.props.children, m = s.map((p) => p === l ? c.Children.count(u) > 1 ? c.Children.only(null) : c.isValidElement(u) ? u.props.children : null : p);
3142
+ return /* @__PURE__ */ y.jsx(t, { ...i, ref: o, children: c.isValidElement(u) ? c.cloneElement(u, void 0, m) : null });
3143
+ }
3144
+ return /* @__PURE__ */ y.jsx(t, { ...i, ref: o, children: a });
3145
+ });
3146
+ return r.displayName = `${e}.Slot`, r;
3147
+ }
3148
+ var cn = /* @__PURE__ */ et("Slot");
3149
+ // @__NO_SIDE_EFFECTS__
3150
+ function ln(e) {
3151
+ const t = c.forwardRef((r, n) => {
3152
+ const { children: o, ...a } = r;
3153
+ if (c.isValidElement(o)) {
3154
+ const i = mn(o), s = fn(a, o.props);
3155
+ return o.type !== c.Fragment && (s.ref = n ? zt(n, i) : i), c.cloneElement(o, s);
3156
+ }
3157
+ return c.Children.count(o) > 1 ? c.Children.only(null) : null;
3158
+ });
3159
+ return t.displayName = `${e}.SlotClone`, t;
3160
+ }
3161
+ var un = Symbol("radix.slottable");
3162
+ function dn(e) {
3163
+ return c.isValidElement(e) && typeof e.type == "function" && "__radixId" in e.type && e.type.__radixId === un;
3164
+ }
3165
+ function fn(e, t) {
3166
+ const r = { ...t };
3167
+ for (const n in t) {
3168
+ const o = e[n], a = t[n];
3169
+ /^on[A-Z]/.test(n) ? o && a ? r[n] = (...s) => {
3170
+ const l = a(...s);
3171
+ return o(...s), l;
3172
+ } : o && (r[n] = o) : n === "style" ? r[n] = { ...o, ...a } : n === "className" && (r[n] = [o, a].filter(Boolean).join(" "));
3173
+ }
3174
+ return { ...e, ...r };
3175
+ }
3176
+ function mn(e) {
3177
+ let t = Object.getOwnPropertyDescriptor(e.props, "ref")?.get, r = t && "isReactWarning" in t && t.isReactWarning;
3178
+ return r ? e.ref : (t = Object.getOwnPropertyDescriptor(e, "ref")?.get, r = t && "isReactWarning" in t && t.isReactWarning, r ? e.props.ref : e.props.ref || e.ref);
3179
+ }
3180
+ const pn = At(
3181
+ "inline-flex items-center justify-center gap-2 whitespace-nowrap rounded-md text-sm font-medium transition-all disabled:pointer-events-none disabled:opacity-50 [&_svg]:pointer-events-none [&_svg:not([class*='size-'])]:size-4 shrink-0 [&_svg]:shrink-0 outline-none focus-visible:border-ring focus-visible:ring-ring/50 focus-visible:ring-[3px] aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 aria-invalid:border-destructive",
3182
+ {
3183
+ variants: {
3184
+ variant: {
3185
+ default: "bg-primary text-primary-foreground shadow-xs hover:bg-primary/90",
3186
+ destructive: "bg-destructive text-white shadow-xs hover:bg-destructive/90 focus-visible:ring-destructive/20 dark:focus-visible:ring-destructive/40 dark:bg-destructive/60",
3187
+ outline: "border bg-background shadow-xs hover:bg-accent hover:text-accent-foreground dark:bg-input/30 dark:border-input dark:hover:bg-input/50",
3188
+ secondary: "bg-secondary text-secondary-foreground shadow-xs hover:bg-secondary/80",
3189
+ ghost: "hover:bg-accent hover:text-accent-foreground dark:hover:bg-accent/50",
3190
+ link: "text-primary underline-offset-4 hover:underline"
3191
+ },
3192
+ size: {
3193
+ default: "h-9 px-4 py-2 has-[>svg]:px-3",
3194
+ sm: "h-8 rounded-md gap-1.5 px-3 has-[>svg]:px-2.5",
3195
+ lg: "h-10 rounded-md px-6 has-[>svg]:px-4",
3196
+ icon: "size-9"
3197
+ }
3198
+ },
3199
+ defaultVariants: {
3200
+ variant: "default",
3201
+ size: "default"
3202
+ }
3203
+ }
3204
+ );
3205
+ function na({
3206
+ className: e,
3207
+ variant: t,
3208
+ size: r,
3209
+ asChild: n = !1,
3210
+ ...o
3211
+ }) {
3212
+ const a = n ? cn : "button";
3213
+ return /* @__PURE__ */ y.jsx(
3214
+ a,
3215
+ {
3216
+ "data-slot": "button",
3217
+ className: Y(pn({ variant: t, size: r, className: e })),
3218
+ ...o
3219
+ }
3220
+ );
3221
+ }
3222
+ function ee(e, t, { checkForDefaultPrevented: r = !0 } = {}) {
3223
+ return function(o) {
3224
+ if (e?.(o), r === !1 || !o.defaultPrevented)
3225
+ return t?.(o);
3226
+ };
3227
+ }
3228
+ function gn(e, t) {
3229
+ const r = c.createContext(t), n = (a) => {
3230
+ const { children: i, ...s } = a, l = c.useMemo(() => s, Object.values(s));
3231
+ return /* @__PURE__ */ y.jsx(r.Provider, { value: l, children: i });
3232
+ };
3233
+ n.displayName = e + "Provider";
3234
+ function o(a) {
3235
+ const i = c.useContext(r);
3236
+ if (i) return i;
3237
+ if (t !== void 0) return t;
3238
+ throw new Error(`\`${a}\` must be used within \`${e}\``);
3239
+ }
3240
+ return [n, o];
3241
+ }
3242
+ function vn(e, t = []) {
3243
+ let r = [];
3244
+ function n(a, i) {
3245
+ const s = c.createContext(i), l = r.length;
3246
+ r = [...r, i];
3247
+ const u = (p) => {
3248
+ const { scope: h, children: E, ...S } = p, f = h?.[e]?.[l] || s, x = c.useMemo(() => S, Object.values(S));
3249
+ return /* @__PURE__ */ y.jsx(f.Provider, { value: x, children: E });
3250
+ };
3251
+ u.displayName = a + "Provider";
3252
+ function m(p, h) {
3253
+ const E = h?.[e]?.[l] || s, S = c.useContext(E);
3254
+ if (S) return S;
3255
+ if (i !== void 0) return i;
3256
+ throw new Error(`\`${p}\` must be used within \`${a}\``);
3257
+ }
3258
+ return [u, m];
3259
+ }
3260
+ const o = () => {
3261
+ const a = r.map((i) => c.createContext(i));
3262
+ return function(s) {
3263
+ const l = s?.[e] || a;
3264
+ return c.useMemo(
3265
+ () => ({ [`__scope${e}`]: { ...s, [e]: l } }),
3266
+ [s, l]
3267
+ );
3268
+ };
3269
+ };
3270
+ return o.scopeName = e, [n, hn(o, ...t)];
3271
+ }
3272
+ function hn(...e) {
3273
+ const t = e[0];
3274
+ if (e.length === 1) return t;
3275
+ const r = () => {
3276
+ const n = e.map((o) => ({
3277
+ useScope: o(),
3278
+ scopeName: o.scopeName
3279
+ }));
3280
+ return function(a) {
3281
+ const i = n.reduce((s, { useScope: l, scopeName: u }) => {
3282
+ const p = l(a)[`__scope${u}`];
3283
+ return { ...s, ...p };
3284
+ }, {});
3285
+ return c.useMemo(() => ({ [`__scope${t.scopeName}`]: i }), [i]);
3286
+ };
3287
+ };
3288
+ return r.scopeName = t.scopeName, r;
3289
+ }
3290
+ var xe = globalThis?.document ? c.useLayoutEffect : () => {
3291
+ }, bn = c[" useId ".trim().toString()] || (() => {
3292
+ }), yn = 0;
3293
+ function We(e) {
3294
+ const [t, r] = c.useState(bn());
3295
+ return xe(() => {
3296
+ r((n) => n ?? String(yn++));
3297
+ }, [e]), e || (t ? `radix-${t}` : "");
3298
+ }
3299
+ var xn = c[" useInsertionEffect ".trim().toString()] || xe;
3300
+ function wn({
3301
+ prop: e,
3302
+ defaultProp: t,
3303
+ onChange: r = () => {
3304
+ },
3305
+ caller: n
3306
+ }) {
3307
+ const [o, a, i] = En({
3308
+ defaultProp: t,
3309
+ onChange: r
3310
+ }), s = e !== void 0, l = s ? e : o;
3311
+ {
3312
+ const m = c.useRef(e !== void 0);
3313
+ c.useEffect(() => {
3314
+ const p = m.current;
3315
+ p !== s && console.warn(
3316
+ `${n} is changing from ${p ? "controlled" : "uncontrolled"} to ${s ? "controlled" : "uncontrolled"}. Components should not switch from controlled to uncontrolled (or vice versa). Decide between using a controlled or uncontrolled value for the lifetime of the component.`
3317
+ ), m.current = s;
3318
+ }, [s, n]);
3319
+ }
3320
+ const u = c.useCallback(
3321
+ (m) => {
3322
+ if (s) {
3323
+ const p = kn(m) ? m(e) : m;
3324
+ p !== e && i.current?.(p);
3325
+ } else
3326
+ a(m);
3327
+ },
3328
+ [s, e, a, i]
3329
+ );
3330
+ return [l, u];
3331
+ }
3332
+ function En({
3333
+ defaultProp: e,
3334
+ onChange: t
3335
+ }) {
3336
+ const [r, n] = c.useState(e), o = c.useRef(r), a = c.useRef(t);
3337
+ return xn(() => {
3338
+ a.current = t;
3339
+ }, [t]), c.useEffect(() => {
3340
+ o.current !== r && (a.current?.(r), o.current = r);
3341
+ }, [r, o]), [r, n, a];
3342
+ }
3343
+ function kn(e) {
3344
+ return typeof e == "function";
3345
+ }
3346
+ var Cn = [
3347
+ "a",
3348
+ "button",
3349
+ "div",
3350
+ "form",
3351
+ "h2",
3352
+ "h3",
3353
+ "img",
3354
+ "input",
3355
+ "label",
3356
+ "li",
3357
+ "nav",
3358
+ "ol",
3359
+ "p",
3360
+ "select",
3361
+ "span",
3362
+ "svg",
3363
+ "ul"
3364
+ ], K = Cn.reduce((e, t) => {
3365
+ const r = /* @__PURE__ */ et(`Primitive.${t}`), n = c.forwardRef((o, a) => {
3366
+ const { asChild: i, ...s } = o, l = i ? r : t;
3367
+ return typeof window < "u" && (window[Symbol.for("radix-ui")] = !0), /* @__PURE__ */ y.jsx(l, { ...s, ref: a });
3368
+ });
3369
+ return n.displayName = `Primitive.${t}`, { ...e, [t]: n };
3370
+ }, {});
3371
+ function Sn(e, t) {
3372
+ e && xr.flushSync(() => e.dispatchEvent(t));
3373
+ }
3374
+ function we(e) {
3375
+ const t = c.useRef(e);
3376
+ return c.useEffect(() => {
3377
+ t.current = e;
3378
+ }), c.useMemo(() => (...r) => t.current?.(...r), []);
3379
+ }
3380
+ function Rn(e, t = globalThis?.document) {
3381
+ const r = we(e);
3382
+ c.useEffect(() => {
3383
+ const n = (o) => {
3384
+ o.key === "Escape" && r(o);
3385
+ };
3386
+ return t.addEventListener("keydown", n, { capture: !0 }), () => t.removeEventListener("keydown", n, { capture: !0 });
3387
+ }, [r, t]);
3388
+ }
3389
+ var Pn = "DismissableLayer", Je = "dismissableLayer.update", An = "dismissableLayer.pointerDownOutside", Nn = "dismissableLayer.focusOutside", pt, Wt = c.createContext({
3390
+ layers: /* @__PURE__ */ new Set(),
3391
+ layersWithOutsidePointerEventsDisabled: /* @__PURE__ */ new Set(),
3392
+ branches: /* @__PURE__ */ new Set()
3393
+ }), $t = c.forwardRef(
3394
+ (e, t) => {
3395
+ const {
3396
+ disableOutsidePointerEvents: r = !1,
3397
+ onEscapeKeyDown: n,
3398
+ onPointerDownOutside: o,
3399
+ onFocusOutside: a,
3400
+ onInteractOutside: i,
3401
+ onDismiss: s,
3402
+ ...l
3403
+ } = e, u = c.useContext(Wt), [m, p] = c.useState(null), h = m?.ownerDocument ?? globalThis?.document, [, E] = c.useState({}), S = ae(t, (P) => p(P)), f = Array.from(u.layers), [x] = [...u.layersWithOutsidePointerEventsDisabled].slice(-1), C = f.indexOf(x), T = m ? f.indexOf(m) : -1, O = u.layersWithOutsidePointerEventsDisabled.size > 0, A = T >= C, _ = _n((P) => {
3404
+ const b = P.target, z = [...u.branches].some((q) => q.contains(b));
3405
+ !A || z || (o?.(P), i?.(P), P.defaultPrevented || s?.());
3406
+ }, h), j = Dn((P) => {
3407
+ const b = P.target;
3408
+ [...u.branches].some((q) => q.contains(b)) || (a?.(P), i?.(P), P.defaultPrevented || s?.());
3409
+ }, h);
3410
+ return Rn((P) => {
3411
+ T === u.layers.size - 1 && (n?.(P), !P.defaultPrevented && s && (P.preventDefault(), s()));
3412
+ }, h), c.useEffect(() => {
3413
+ if (m)
3414
+ return r && (u.layersWithOutsidePointerEventsDisabled.size === 0 && (pt = h.body.style.pointerEvents, h.body.style.pointerEvents = "none"), u.layersWithOutsidePointerEventsDisabled.add(m)), u.layers.add(m), gt(), () => {
3415
+ r && u.layersWithOutsidePointerEventsDisabled.size === 1 && (h.body.style.pointerEvents = pt);
3416
+ };
3417
+ }, [m, h, r, u]), c.useEffect(() => () => {
3418
+ m && (u.layers.delete(m), u.layersWithOutsidePointerEventsDisabled.delete(m), gt());
3419
+ }, [m, u]), c.useEffect(() => {
3420
+ const P = () => E({});
3421
+ return document.addEventListener(Je, P), () => document.removeEventListener(Je, P);
3422
+ }, []), /* @__PURE__ */ y.jsx(
3423
+ K.div,
3424
+ {
3425
+ ...l,
3426
+ ref: S,
3427
+ style: {
3428
+ pointerEvents: O ? A ? "auto" : "none" : void 0,
3429
+ ...e.style
3430
+ },
3431
+ onFocusCapture: ee(e.onFocusCapture, j.onFocusCapture),
3432
+ onBlurCapture: ee(e.onBlurCapture, j.onBlurCapture),
3433
+ onPointerDownCapture: ee(
3434
+ e.onPointerDownCapture,
3435
+ _.onPointerDownCapture
3436
+ )
3437
+ }
3438
+ );
3439
+ }
3440
+ );
3441
+ $t.displayName = Pn;
3442
+ var Tn = "DismissableLayerBranch", On = c.forwardRef((e, t) => {
3443
+ const r = c.useContext(Wt), n = c.useRef(null), o = ae(t, n);
3444
+ return c.useEffect(() => {
3445
+ const a = n.current;
3446
+ if (a)
3447
+ return r.branches.add(a), () => {
3448
+ r.branches.delete(a);
3449
+ };
3450
+ }, [r.branches]), /* @__PURE__ */ y.jsx(K.div, { ...e, ref: o });
3451
+ });
3452
+ On.displayName = Tn;
3453
+ function _n(e, t = globalThis?.document) {
3454
+ const r = we(e), n = c.useRef(!1), o = c.useRef(() => {
3455
+ });
3456
+ return c.useEffect(() => {
3457
+ const a = (s) => {
3458
+ if (s.target && !n.current) {
3459
+ let l = function() {
3460
+ Vt(
3461
+ An,
3462
+ r,
3463
+ u,
3464
+ { discrete: !0 }
3465
+ );
3466
+ };
3467
+ const u = { originalEvent: s };
3468
+ s.pointerType === "touch" ? (t.removeEventListener("click", o.current), o.current = l, t.addEventListener("click", o.current, { once: !0 })) : l();
3469
+ } else
3470
+ t.removeEventListener("click", o.current);
3471
+ n.current = !1;
3472
+ }, i = window.setTimeout(() => {
3473
+ t.addEventListener("pointerdown", a);
3474
+ }, 0);
3475
+ return () => {
3476
+ window.clearTimeout(i), t.removeEventListener("pointerdown", a), t.removeEventListener("click", o.current);
3477
+ };
3478
+ }, [t, r]), {
3479
+ // ensures we check React component tree (not just DOM tree)
3480
+ onPointerDownCapture: () => n.current = !0
3481
+ };
3482
+ }
3483
+ function Dn(e, t = globalThis?.document) {
3484
+ const r = we(e), n = c.useRef(!1);
3485
+ return c.useEffect(() => {
3486
+ const o = (a) => {
3487
+ a.target && !n.current && Vt(Nn, r, { originalEvent: a }, {
3488
+ discrete: !1
3489
+ });
3490
+ };
3491
+ return t.addEventListener("focusin", o), () => t.removeEventListener("focusin", o);
3492
+ }, [t, r]), {
3493
+ onFocusCapture: () => n.current = !0,
3494
+ onBlurCapture: () => n.current = !1
3495
+ };
3496
+ }
3497
+ function gt() {
3498
+ const e = new CustomEvent(Je);
3499
+ document.dispatchEvent(e);
3500
+ }
3501
+ function Vt(e, t, r, { discrete: n }) {
3502
+ const o = r.originalEvent.target, a = new CustomEvent(e, { bubbles: !1, cancelable: !0, detail: r });
3503
+ t && o.addEventListener(e, t, { once: !0 }), n ? Sn(o, a) : o.dispatchEvent(a);
3504
+ }
3505
+ var $e = "focusScope.autoFocusOnMount", Ve = "focusScope.autoFocusOnUnmount", vt = { bubbles: !1, cancelable: !0 }, Mn = "FocusScope", Ut = c.forwardRef((e, t) => {
3506
+ const {
3507
+ loop: r = !1,
3508
+ trapped: n = !1,
3509
+ onMountAutoFocus: o,
3510
+ onUnmountAutoFocus: a,
3511
+ ...i
3512
+ } = e, [s, l] = c.useState(null), u = we(o), m = we(a), p = c.useRef(null), h = ae(t, (f) => l(f)), E = c.useRef({
3513
+ paused: !1,
3514
+ pause() {
3515
+ this.paused = !0;
3516
+ },
3517
+ resume() {
3518
+ this.paused = !1;
3519
+ }
3520
+ }).current;
3521
+ c.useEffect(() => {
3522
+ if (n) {
3523
+ let f = function(O) {
3524
+ if (E.paused || !s) return;
3525
+ const A = O.target;
3526
+ s.contains(A) ? p.current = A : Q(p.current, { select: !0 });
3527
+ }, x = function(O) {
3528
+ if (E.paused || !s) return;
3529
+ const A = O.relatedTarget;
3530
+ A !== null && (s.contains(A) || Q(p.current, { select: !0 }));
3531
+ }, C = function(O) {
3532
+ if (document.activeElement === document.body)
3533
+ for (const _ of O)
3534
+ _.removedNodes.length > 0 && Q(s);
3535
+ };
3536
+ document.addEventListener("focusin", f), document.addEventListener("focusout", x);
3537
+ const T = new MutationObserver(C);
3538
+ return s && T.observe(s, { childList: !0, subtree: !0 }), () => {
3539
+ document.removeEventListener("focusin", f), document.removeEventListener("focusout", x), T.disconnect();
3540
+ };
3541
+ }
3542
+ }, [n, s, E.paused]), c.useEffect(() => {
3543
+ if (s) {
3544
+ bt.add(E);
3545
+ const f = document.activeElement;
3546
+ if (!s.contains(f)) {
3547
+ const C = new CustomEvent($e, vt);
3548
+ s.addEventListener($e, u), s.dispatchEvent(C), C.defaultPrevented || (In(Wn(Bt(s)), { select: !0 }), document.activeElement === f && Q(s));
3549
+ }
3550
+ return () => {
3551
+ s.removeEventListener($e, u), setTimeout(() => {
3552
+ const C = new CustomEvent(Ve, vt);
3553
+ s.addEventListener(Ve, m), s.dispatchEvent(C), C.defaultPrevented || Q(f ?? document.body, { select: !0 }), s.removeEventListener(Ve, m), bt.remove(E);
3554
+ }, 0);
3555
+ };
3556
+ }
3557
+ }, [s, u, m, E]);
3558
+ const S = c.useCallback(
3559
+ (f) => {
3560
+ if (!r && !n || E.paused) return;
3561
+ const x = f.key === "Tab" && !f.altKey && !f.ctrlKey && !f.metaKey, C = document.activeElement;
3562
+ if (x && C) {
3563
+ const T = f.currentTarget, [O, A] = jn(T);
3564
+ O && A ? !f.shiftKey && C === A ? (f.preventDefault(), r && Q(O, { select: !0 })) : f.shiftKey && C === O && (f.preventDefault(), r && Q(A, { select: !0 })) : C === T && f.preventDefault();
3565
+ }
3566
+ },
3567
+ [r, n, E.paused]
3568
+ );
3569
+ return /* @__PURE__ */ y.jsx(K.div, { tabIndex: -1, ...i, ref: h, onKeyDown: S });
3570
+ });
3571
+ Ut.displayName = Mn;
3572
+ function In(e, { select: t = !1 } = {}) {
3573
+ const r = document.activeElement;
3574
+ for (const n of e)
3575
+ if (Q(n, { select: t }), document.activeElement !== r) return;
3576
+ }
3577
+ function jn(e) {
3578
+ const t = Bt(e), r = ht(t, e), n = ht(t.reverse(), e);
3579
+ return [r, n];
3580
+ }
3581
+ function Bt(e) {
3582
+ const t = [], r = document.createTreeWalker(e, NodeFilter.SHOW_ELEMENT, {
3583
+ acceptNode: (n) => {
3584
+ const o = n.tagName === "INPUT" && n.type === "hidden";
3585
+ return n.disabled || n.hidden || o ? NodeFilter.FILTER_SKIP : n.tabIndex >= 0 ? NodeFilter.FILTER_ACCEPT : NodeFilter.FILTER_SKIP;
3586
+ }
3587
+ });
3588
+ for (; r.nextNode(); ) t.push(r.currentNode);
3589
+ return t;
3590
+ }
3591
+ function ht(e, t) {
3592
+ for (const r of e)
3593
+ if (!Ln(r, { upTo: t })) return r;
3594
+ }
3595
+ function Ln(e, { upTo: t }) {
3596
+ if (getComputedStyle(e).visibility === "hidden") return !0;
3597
+ for (; e; ) {
3598
+ if (t !== void 0 && e === t) return !1;
3599
+ if (getComputedStyle(e).display === "none") return !0;
3600
+ e = e.parentElement;
3601
+ }
3602
+ return !1;
3603
+ }
3604
+ function Fn(e) {
3605
+ return e instanceof HTMLInputElement && "select" in e;
3606
+ }
3607
+ function Q(e, { select: t = !1 } = {}) {
3608
+ if (e && e.focus) {
3609
+ const r = document.activeElement;
3610
+ e.focus({ preventScroll: !0 }), e !== r && Fn(e) && t && e.select();
3611
+ }
3612
+ }
3613
+ var bt = zn();
3614
+ function zn() {
3615
+ let e = [];
3616
+ return {
3617
+ add(t) {
3618
+ const r = e[0];
3619
+ t !== r && r?.pause(), e = yt(e, t), e.unshift(t);
3620
+ },
3621
+ remove(t) {
3622
+ e = yt(e, t), e[0]?.resume();
3623
+ }
3624
+ };
3625
+ }
3626
+ function yt(e, t) {
3627
+ const r = [...e], n = r.indexOf(t);
3628
+ return n !== -1 && r.splice(n, 1), r;
3629
+ }
3630
+ function Wn(e) {
3631
+ return e.filter((t) => t.tagName !== "A");
3632
+ }
3633
+ var $n = "Portal", Gt = c.forwardRef((e, t) => {
3634
+ const { container: r, ...n } = e, [o, a] = c.useState(!1);
3635
+ xe(() => a(!0), []);
3636
+ const i = r || o && globalThis?.document?.body;
3637
+ return i ? wr.createPortal(/* @__PURE__ */ y.jsx(K.div, { ...n, ref: t }), i) : null;
3638
+ });
3639
+ Gt.displayName = $n;
3640
+ function Vn(e, t) {
3641
+ return c.useReducer((r, n) => t[r][n] ?? r, e);
3642
+ }
3643
+ var Ie = (e) => {
3644
+ const { present: t, children: r } = e, n = Un(t), o = typeof r == "function" ? r({ present: n.isPresent }) : c.Children.only(r), a = ae(n.ref, Bn(o));
3645
+ return typeof r == "function" || n.isPresent ? c.cloneElement(o, { ref: a }) : null;
3646
+ };
3647
+ Ie.displayName = "Presence";
3648
+ function Un(e) {
3649
+ const [t, r] = c.useState(), n = c.useRef(null), o = c.useRef(e), a = c.useRef("none"), i = e ? "mounted" : "unmounted", [s, l] = Vn(i, {
3650
+ mounted: {
3651
+ UNMOUNT: "unmounted",
3652
+ ANIMATION_OUT: "unmountSuspended"
3653
+ },
3654
+ unmountSuspended: {
3655
+ MOUNT: "mounted",
3656
+ ANIMATION_END: "unmounted"
3657
+ },
3658
+ unmounted: {
3659
+ MOUNT: "mounted"
3660
+ }
3661
+ });
3662
+ return c.useEffect(() => {
3663
+ const u = Pe(n.current);
3664
+ a.current = s === "mounted" ? u : "none";
3665
+ }, [s]), xe(() => {
3666
+ const u = n.current, m = o.current;
3667
+ if (m !== e) {
3668
+ const h = a.current, E = Pe(u);
3669
+ e ? l("MOUNT") : E === "none" || u?.display === "none" ? l("UNMOUNT") : l(m && h !== E ? "ANIMATION_OUT" : "UNMOUNT"), o.current = e;
3670
+ }
3671
+ }, [e, l]), xe(() => {
3672
+ if (t) {
3673
+ let u;
3674
+ const m = t.ownerDocument.defaultView ?? window, p = (E) => {
3675
+ const f = Pe(n.current).includes(CSS.escape(E.animationName));
3676
+ if (E.target === t && f && (l("ANIMATION_END"), !o.current)) {
3677
+ const x = t.style.animationFillMode;
3678
+ t.style.animationFillMode = "forwards", u = m.setTimeout(() => {
3679
+ t.style.animationFillMode === "forwards" && (t.style.animationFillMode = x);
3680
+ });
3681
+ }
3682
+ }, h = (E) => {
3683
+ E.target === t && (a.current = Pe(n.current));
3684
+ };
3685
+ return t.addEventListener("animationstart", h), t.addEventListener("animationcancel", p), t.addEventListener("animationend", p), () => {
3686
+ m.clearTimeout(u), t.removeEventListener("animationstart", h), t.removeEventListener("animationcancel", p), t.removeEventListener("animationend", p);
3687
+ };
3688
+ } else
3689
+ l("ANIMATION_END");
3690
+ }, [t, l]), {
3691
+ isPresent: ["mounted", "unmountSuspended"].includes(s),
3692
+ ref: c.useCallback((u) => {
3693
+ n.current = u ? getComputedStyle(u) : null, r(u);
3694
+ }, [])
3695
+ };
3696
+ }
3697
+ function Pe(e) {
3698
+ return e?.animationName || "none";
3699
+ }
3700
+ function Bn(e) {
3701
+ let t = Object.getOwnPropertyDescriptor(e.props, "ref")?.get, r = t && "isReactWarning" in t && t.isReactWarning;
3702
+ return r ? e.ref : (t = Object.getOwnPropertyDescriptor(e, "ref")?.get, r = t && "isReactWarning" in t && t.isReactWarning, r ? e.props.ref : e.props.ref || e.ref);
3703
+ }
3704
+ var Ue = 0;
3705
+ function Gn() {
3706
+ c.useEffect(() => {
3707
+ const e = document.querySelectorAll("[data-radix-focus-guard]");
3708
+ return document.body.insertAdjacentElement("afterbegin", e[0] ?? xt()), document.body.insertAdjacentElement("beforeend", e[1] ?? xt()), Ue++, () => {
3709
+ Ue === 1 && document.querySelectorAll("[data-radix-focus-guard]").forEach((t) => t.remove()), Ue--;
3710
+ };
3711
+ }, []);
3712
+ }
3713
+ function xt() {
3714
+ const e = document.createElement("span");
3715
+ return e.setAttribute("data-radix-focus-guard", ""), e.tabIndex = 0, e.style.outline = "none", e.style.opacity = "0", e.style.position = "fixed", e.style.pointerEvents = "none", e;
3716
+ }
3717
+ var G = function() {
3718
+ return G = Object.assign || function(t) {
3719
+ for (var r, n = 1, o = arguments.length; n < o; n++) {
3720
+ r = arguments[n];
3721
+ for (var a in r) Object.prototype.hasOwnProperty.call(r, a) && (t[a] = r[a]);
3722
+ }
3723
+ return t;
3724
+ }, G.apply(this, arguments);
3725
+ };
3726
+ function Yt(e, t) {
3727
+ var r = {};
3728
+ for (var n in e) Object.prototype.hasOwnProperty.call(e, n) && t.indexOf(n) < 0 && (r[n] = e[n]);
3729
+ if (e != null && typeof Object.getOwnPropertySymbols == "function")
3730
+ for (var o = 0, n = Object.getOwnPropertySymbols(e); o < n.length; o++)
3731
+ t.indexOf(n[o]) < 0 && Object.prototype.propertyIsEnumerable.call(e, n[o]) && (r[n[o]] = e[n[o]]);
3732
+ return r;
3733
+ }
3734
+ function Yn(e, t, r) {
3735
+ if (r || arguments.length === 2) for (var n = 0, o = t.length, a; n < o; n++)
3736
+ (a || !(n in t)) && (a || (a = Array.prototype.slice.call(t, 0, n)), a[n] = t[n]);
3737
+ return e.concat(a || Array.prototype.slice.call(t));
3738
+ }
3739
+ var _e = "right-scroll-bar-position", De = "width-before-scroll-bar", Hn = "with-scroll-bars-hidden", Xn = "--removed-body-scroll-bar-size";
3740
+ function Be(e, t) {
3741
+ return typeof e == "function" ? e(t) : e && (e.current = t), e;
3742
+ }
3743
+ function Kn(e, t) {
3744
+ var r = yr(function() {
3745
+ return {
3746
+ // value
3747
+ value: e,
3748
+ // last callback
3749
+ callback: t,
3750
+ // "memoized" public interface
3751
+ facade: {
3752
+ get current() {
3753
+ return r.value;
3754
+ },
3755
+ set current(n) {
3756
+ var o = r.value;
3757
+ o !== n && (r.value = n, r.callback(n, o));
3758
+ }
3759
+ }
3760
+ };
3761
+ })[0];
3762
+ return r.callback = t, r.facade;
3763
+ }
3764
+ var qn = typeof window < "u" ? c.useLayoutEffect : c.useEffect, wt = /* @__PURE__ */ new WeakMap();
3765
+ function Jn(e, t) {
3766
+ var r = Kn(null, function(n) {
3767
+ return e.forEach(function(o) {
3768
+ return Be(o, n);
3769
+ });
3770
+ });
3771
+ return qn(function() {
3772
+ var n = wt.get(r);
3773
+ if (n) {
3774
+ var o = new Set(n), a = new Set(e), i = r.current;
3775
+ o.forEach(function(s) {
3776
+ a.has(s) || Be(s, null);
3777
+ }), a.forEach(function(s) {
3778
+ o.has(s) || Be(s, i);
3779
+ });
3780
+ }
3781
+ wt.set(r, e);
3782
+ }, [e]), r;
3783
+ }
3784
+ function Zn(e) {
3785
+ return e;
3786
+ }
3787
+ function Qn(e, t) {
3788
+ t === void 0 && (t = Zn);
3789
+ var r = [], n = !1, o = {
3790
+ read: function() {
3791
+ if (n)
3792
+ throw new Error("Sidecar: could not `read` from an `assigned` medium. `read` could be used only with `useMedium`.");
3793
+ return r.length ? r[r.length - 1] : e;
3794
+ },
3795
+ useMedium: function(a) {
3796
+ var i = t(a, n);
3797
+ return r.push(i), function() {
3798
+ r = r.filter(function(s) {
3799
+ return s !== i;
3800
+ });
3801
+ };
3802
+ },
3803
+ assignSyncMedium: function(a) {
3804
+ for (n = !0; r.length; ) {
3805
+ var i = r;
3806
+ r = [], i.forEach(a);
3807
+ }
3808
+ r = {
3809
+ push: function(s) {
3810
+ return a(s);
3811
+ },
3812
+ filter: function() {
3813
+ return r;
3814
+ }
3815
+ };
3816
+ },
3817
+ assignMedium: function(a) {
3818
+ n = !0;
3819
+ var i = [];
3820
+ if (r.length) {
3821
+ var s = r;
3822
+ r = [], s.forEach(a), i = r;
3823
+ }
3824
+ var l = function() {
3825
+ var m = i;
3826
+ i = [], m.forEach(a);
3827
+ }, u = function() {
3828
+ return Promise.resolve().then(l);
3829
+ };
3830
+ u(), r = {
3831
+ push: function(m) {
3832
+ i.push(m), u();
3833
+ },
3834
+ filter: function(m) {
3835
+ return i = i.filter(m), r;
3836
+ }
3837
+ };
3838
+ }
3839
+ };
3840
+ return o;
3841
+ }
3842
+ function eo(e) {
3843
+ e === void 0 && (e = {});
3844
+ var t = Qn(null);
3845
+ return t.options = G({ async: !0, ssr: !1 }, e), t;
3846
+ }
3847
+ var Ht = function(e) {
3848
+ var t = e.sideCar, r = Yt(e, ["sideCar"]);
3849
+ if (!t)
3850
+ throw new Error("Sidecar: please provide `sideCar` property to import the right car");
3851
+ var n = t.read();
3852
+ if (!n)
3853
+ throw new Error("Sidecar medium not found");
3854
+ return c.createElement(n, G({}, r));
3855
+ };
3856
+ Ht.isSideCarExport = !0;
3857
+ function to(e, t) {
3858
+ return e.useMedium(t), Ht;
3859
+ }
3860
+ var Xt = eo(), Ge = function() {
3861
+ }, je = c.forwardRef(function(e, t) {
3862
+ var r = c.useRef(null), n = c.useState({
3863
+ onScrollCapture: Ge,
3864
+ onWheelCapture: Ge,
3865
+ onTouchMoveCapture: Ge
3866
+ }), o = n[0], a = n[1], i = e.forwardProps, s = e.children, l = e.className, u = e.removeScrollBar, m = e.enabled, p = e.shards, h = e.sideCar, E = e.noRelative, S = e.noIsolation, f = e.inert, x = e.allowPinchZoom, C = e.as, T = C === void 0 ? "div" : C, O = e.gapMode, A = Yt(e, ["forwardProps", "children", "className", "removeScrollBar", "enabled", "shards", "sideCar", "noRelative", "noIsolation", "inert", "allowPinchZoom", "as", "gapMode"]), _ = h, j = Jn([r, t]), P = G(G({}, A), o);
3867
+ return c.createElement(
3868
+ c.Fragment,
3869
+ null,
3870
+ m && c.createElement(_, { sideCar: Xt, removeScrollBar: u, shards: p, noRelative: E, noIsolation: S, inert: f, setCallbacks: a, allowPinchZoom: !!x, lockRef: r, gapMode: O }),
3871
+ i ? c.cloneElement(c.Children.only(s), G(G({}, P), { ref: j })) : c.createElement(T, G({}, P, { className: l, ref: j }), s)
3872
+ );
3873
+ });
3874
+ je.defaultProps = {
3875
+ enabled: !0,
3876
+ removeScrollBar: !0,
3877
+ inert: !1
3878
+ };
3879
+ je.classNames = {
3880
+ fullWidth: De,
3881
+ zeroRight: _e
3882
+ };
3883
+ var ro = function() {
3884
+ if (typeof __webpack_nonce__ < "u")
3885
+ return __webpack_nonce__;
3886
+ };
3887
+ function no() {
3888
+ if (!document)
3889
+ return null;
3890
+ var e = document.createElement("style");
3891
+ e.type = "text/css";
3892
+ var t = ro();
3893
+ return t && e.setAttribute("nonce", t), e;
3894
+ }
3895
+ function oo(e, t) {
3896
+ e.styleSheet ? e.styleSheet.cssText = t : e.appendChild(document.createTextNode(t));
3897
+ }
3898
+ function ao(e) {
3899
+ var t = document.head || document.getElementsByTagName("head")[0];
3900
+ t.appendChild(e);
3901
+ }
3902
+ var so = function() {
3903
+ var e = 0, t = null;
3904
+ return {
3905
+ add: function(r) {
3906
+ e == 0 && (t = no()) && (oo(t, r), ao(t)), e++;
3907
+ },
3908
+ remove: function() {
3909
+ e--, !e && t && (t.parentNode && t.parentNode.removeChild(t), t = null);
3910
+ }
3911
+ };
3912
+ }, io = function() {
3913
+ var e = so();
3914
+ return function(t, r) {
3915
+ c.useEffect(function() {
3916
+ return e.add(t), function() {
3917
+ e.remove();
3918
+ };
3919
+ }, [t && r]);
3920
+ };
3921
+ }, Kt = function() {
3922
+ var e = io(), t = function(r) {
3923
+ var n = r.styles, o = r.dynamic;
3924
+ return e(n, o), null;
3925
+ };
3926
+ return t;
3927
+ }, co = {
3928
+ left: 0,
3929
+ top: 0,
3930
+ right: 0,
3931
+ gap: 0
3932
+ }, Ye = function(e) {
3933
+ return parseInt(e || "", 10) || 0;
3934
+ }, lo = function(e) {
3935
+ var t = window.getComputedStyle(document.body), r = t[e === "padding" ? "paddingLeft" : "marginLeft"], n = t[e === "padding" ? "paddingTop" : "marginTop"], o = t[e === "padding" ? "paddingRight" : "marginRight"];
3936
+ return [Ye(r), Ye(n), Ye(o)];
3937
+ }, uo = function(e) {
3938
+ if (e === void 0 && (e = "margin"), typeof window > "u")
3939
+ return co;
3940
+ var t = lo(e), r = document.documentElement.clientWidth, n = window.innerWidth;
3941
+ return {
3942
+ left: t[0],
3943
+ top: t[1],
3944
+ right: t[2],
3945
+ gap: Math.max(0, n - r + t[2] - t[0])
3946
+ };
3947
+ }, fo = Kt(), fe = "data-scroll-locked", mo = function(e, t, r, n) {
3948
+ var o = e.left, a = e.top, i = e.right, s = e.gap;
3949
+ return r === void 0 && (r = "margin"), `
3950
+ .`.concat(Hn, ` {
3951
+ overflow: hidden `).concat(n, `;
3952
+ padding-right: `).concat(s, "px ").concat(n, `;
3953
+ }
3954
+ body[`).concat(fe, `] {
3955
+ overflow: hidden `).concat(n, `;
3956
+ overscroll-behavior: contain;
3957
+ `).concat([
3958
+ t && "position: relative ".concat(n, ";"),
3959
+ r === "margin" && `
3960
+ padding-left: `.concat(o, `px;
3961
+ padding-top: `).concat(a, `px;
3962
+ padding-right: `).concat(i, `px;
3963
+ margin-left:0;
3964
+ margin-top:0;
3965
+ margin-right: `).concat(s, "px ").concat(n, `;
3966
+ `),
3967
+ r === "padding" && "padding-right: ".concat(s, "px ").concat(n, ";")
3968
+ ].filter(Boolean).join(""), `
3969
+ }
3970
+
3971
+ .`).concat(_e, ` {
3972
+ right: `).concat(s, "px ").concat(n, `;
3973
+ }
3974
+
3975
+ .`).concat(De, ` {
3976
+ margin-right: `).concat(s, "px ").concat(n, `;
3977
+ }
3978
+
3979
+ .`).concat(_e, " .").concat(_e, ` {
3980
+ right: 0 `).concat(n, `;
3981
+ }
3982
+
3983
+ .`).concat(De, " .").concat(De, ` {
3984
+ margin-right: 0 `).concat(n, `;
3985
+ }
3986
+
3987
+ body[`).concat(fe, `] {
3988
+ `).concat(Xn, ": ").concat(s, `px;
3989
+ }
3990
+ `);
3991
+ }, Et = function() {
3992
+ var e = parseInt(document.body.getAttribute(fe) || "0", 10);
3993
+ return isFinite(e) ? e : 0;
3994
+ }, po = function() {
3995
+ c.useEffect(function() {
3996
+ return document.body.setAttribute(fe, (Et() + 1).toString()), function() {
3997
+ var e = Et() - 1;
3998
+ e <= 0 ? document.body.removeAttribute(fe) : document.body.setAttribute(fe, e.toString());
3999
+ };
4000
+ }, []);
4001
+ }, go = function(e) {
4002
+ var t = e.noRelative, r = e.noImportant, n = e.gapMode, o = n === void 0 ? "margin" : n;
4003
+ po();
4004
+ var a = c.useMemo(function() {
4005
+ return uo(o);
4006
+ }, [o]);
4007
+ return c.createElement(fo, { styles: mo(a, !t, o, r ? "" : "!important") });
4008
+ }, Ze = !1;
4009
+ if (typeof window < "u")
4010
+ try {
4011
+ var Ae = Object.defineProperty({}, "passive", {
4012
+ get: function() {
4013
+ return Ze = !0, !0;
4014
+ }
4015
+ });
4016
+ window.addEventListener("test", Ae, Ae), window.removeEventListener("test", Ae, Ae);
4017
+ } catch {
4018
+ Ze = !1;
4019
+ }
4020
+ var le = Ze ? { passive: !1 } : !1, vo = function(e) {
4021
+ return e.tagName === "TEXTAREA";
4022
+ }, qt = function(e, t) {
4023
+ if (!(e instanceof Element))
4024
+ return !1;
4025
+ var r = window.getComputedStyle(e);
4026
+ return (
4027
+ // not-not-scrollable
4028
+ r[t] !== "hidden" && // contains scroll inside self
4029
+ !(r.overflowY === r.overflowX && !vo(e) && r[t] === "visible")
4030
+ );
4031
+ }, ho = function(e) {
4032
+ return qt(e, "overflowY");
4033
+ }, bo = function(e) {
4034
+ return qt(e, "overflowX");
4035
+ }, kt = function(e, t) {
4036
+ var r = t.ownerDocument, n = t;
4037
+ do {
4038
+ typeof ShadowRoot < "u" && n instanceof ShadowRoot && (n = n.host);
4039
+ var o = Jt(e, n);
4040
+ if (o) {
4041
+ var a = Zt(e, n), i = a[1], s = a[2];
4042
+ if (i > s)
4043
+ return !0;
4044
+ }
4045
+ n = n.parentNode;
4046
+ } while (n && n !== r.body);
4047
+ return !1;
4048
+ }, yo = function(e) {
4049
+ var t = e.scrollTop, r = e.scrollHeight, n = e.clientHeight;
4050
+ return [
4051
+ t,
4052
+ r,
4053
+ n
4054
+ ];
4055
+ }, xo = function(e) {
4056
+ var t = e.scrollLeft, r = e.scrollWidth, n = e.clientWidth;
4057
+ return [
4058
+ t,
4059
+ r,
4060
+ n
4061
+ ];
4062
+ }, Jt = function(e, t) {
4063
+ return e === "v" ? ho(t) : bo(t);
4064
+ }, Zt = function(e, t) {
4065
+ return e === "v" ? yo(t) : xo(t);
4066
+ }, wo = function(e, t) {
4067
+ return e === "h" && t === "rtl" ? -1 : 1;
4068
+ }, Eo = function(e, t, r, n, o) {
4069
+ var a = wo(e, window.getComputedStyle(t).direction), i = a * n, s = r.target, l = t.contains(s), u = !1, m = i > 0, p = 0, h = 0;
4070
+ do {
4071
+ if (!s)
4072
+ break;
4073
+ var E = Zt(e, s), S = E[0], f = E[1], x = E[2], C = f - x - a * S;
4074
+ (S || C) && Jt(e, s) && (p += C, h += S);
4075
+ var T = s.parentNode;
4076
+ s = T && T.nodeType === Node.DOCUMENT_FRAGMENT_NODE ? T.host : T;
4077
+ } while (
4078
+ // portaled content
4079
+ !l && s !== document.body || // self content
4080
+ l && (t.contains(s) || t === s)
4081
+ );
4082
+ return (m && Math.abs(p) < 1 || !m && Math.abs(h) < 1) && (u = !0), u;
4083
+ }, Ne = function(e) {
4084
+ return "changedTouches" in e ? [e.changedTouches[0].clientX, e.changedTouches[0].clientY] : [0, 0];
4085
+ }, Ct = function(e) {
4086
+ return [e.deltaX, e.deltaY];
4087
+ }, St = function(e) {
4088
+ return e && "current" in e ? e.current : e;
4089
+ }, ko = function(e, t) {
4090
+ return e[0] === t[0] && e[1] === t[1];
4091
+ }, Co = function(e) {
4092
+ return `
4093
+ .block-interactivity-`.concat(e, ` {pointer-events: none;}
4094
+ .allow-interactivity-`).concat(e, ` {pointer-events: all;}
4095
+ `);
4096
+ }, So = 0, ue = [];
4097
+ function Ro(e) {
4098
+ var t = c.useRef([]), r = c.useRef([0, 0]), n = c.useRef(), o = c.useState(So++)[0], a = c.useState(Kt)[0], i = c.useRef(e);
4099
+ c.useEffect(function() {
4100
+ i.current = e;
4101
+ }, [e]), c.useEffect(function() {
4102
+ if (e.inert) {
4103
+ document.body.classList.add("block-interactivity-".concat(o));
4104
+ var f = Yn([e.lockRef.current], (e.shards || []).map(St), !0).filter(Boolean);
4105
+ return f.forEach(function(x) {
4106
+ return x.classList.add("allow-interactivity-".concat(o));
4107
+ }), function() {
4108
+ document.body.classList.remove("block-interactivity-".concat(o)), f.forEach(function(x) {
4109
+ return x.classList.remove("allow-interactivity-".concat(o));
4110
+ });
4111
+ };
4112
+ }
4113
+ }, [e.inert, e.lockRef.current, e.shards]);
4114
+ var s = c.useCallback(function(f, x) {
4115
+ if ("touches" in f && f.touches.length === 2 || f.type === "wheel" && f.ctrlKey)
4116
+ return !i.current.allowPinchZoom;
4117
+ var C = Ne(f), T = r.current, O = "deltaX" in f ? f.deltaX : T[0] - C[0], A = "deltaY" in f ? f.deltaY : T[1] - C[1], _, j = f.target, P = Math.abs(O) > Math.abs(A) ? "h" : "v";
4118
+ if ("touches" in f && P === "h" && j.type === "range")
4119
+ return !1;
4120
+ var b = kt(P, j);
4121
+ if (!b)
4122
+ return !0;
4123
+ if (b ? _ = P : (_ = P === "v" ? "h" : "v", b = kt(P, j)), !b)
4124
+ return !1;
4125
+ if (!n.current && "changedTouches" in f && (O || A) && (n.current = _), !_)
4126
+ return !0;
4127
+ var z = n.current || _;
4128
+ return Eo(z, x, f, z === "h" ? O : A);
4129
+ }, []), l = c.useCallback(function(f) {
4130
+ var x = f;
4131
+ if (!(!ue.length || ue[ue.length - 1] !== a)) {
4132
+ var C = "deltaY" in x ? Ct(x) : Ne(x), T = t.current.filter(function(_) {
4133
+ return _.name === x.type && (_.target === x.target || x.target === _.shadowParent) && ko(_.delta, C);
4134
+ })[0];
4135
+ if (T && T.should) {
4136
+ x.cancelable && x.preventDefault();
4137
+ return;
4138
+ }
4139
+ if (!T) {
4140
+ var O = (i.current.shards || []).map(St).filter(Boolean).filter(function(_) {
4141
+ return _.contains(x.target);
4142
+ }), A = O.length > 0 ? s(x, O[0]) : !i.current.noIsolation;
4143
+ A && x.cancelable && x.preventDefault();
4144
+ }
4145
+ }
4146
+ }, []), u = c.useCallback(function(f, x, C, T) {
4147
+ var O = { name: f, delta: x, target: C, should: T, shadowParent: Po(C) };
4148
+ t.current.push(O), setTimeout(function() {
4149
+ t.current = t.current.filter(function(A) {
4150
+ return A !== O;
4151
+ });
4152
+ }, 1);
4153
+ }, []), m = c.useCallback(function(f) {
4154
+ r.current = Ne(f), n.current = void 0;
4155
+ }, []), p = c.useCallback(function(f) {
4156
+ u(f.type, Ct(f), f.target, s(f, e.lockRef.current));
4157
+ }, []), h = c.useCallback(function(f) {
4158
+ u(f.type, Ne(f), f.target, s(f, e.lockRef.current));
4159
+ }, []);
4160
+ c.useEffect(function() {
4161
+ return ue.push(a), e.setCallbacks({
4162
+ onScrollCapture: p,
4163
+ onWheelCapture: p,
4164
+ onTouchMoveCapture: h
4165
+ }), document.addEventListener("wheel", l, le), document.addEventListener("touchmove", l, le), document.addEventListener("touchstart", m, le), function() {
4166
+ ue = ue.filter(function(f) {
4167
+ return f !== a;
4168
+ }), document.removeEventListener("wheel", l, le), document.removeEventListener("touchmove", l, le), document.removeEventListener("touchstart", m, le);
4169
+ };
4170
+ }, []);
4171
+ var E = e.removeScrollBar, S = e.inert;
4172
+ return c.createElement(
4173
+ c.Fragment,
4174
+ null,
4175
+ S ? c.createElement(a, { styles: Co(o) }) : null,
4176
+ E ? c.createElement(go, { noRelative: e.noRelative, gapMode: e.gapMode }) : null
4177
+ );
4178
+ }
4179
+ function Po(e) {
4180
+ for (var t = null; e !== null; )
4181
+ e instanceof ShadowRoot && (t = e.host, e = e.host), e = e.parentNode;
4182
+ return t;
4183
+ }
4184
+ const Ao = to(Xt, Ro);
4185
+ var Qt = c.forwardRef(function(e, t) {
4186
+ return c.createElement(je, G({}, e, { ref: t, sideCar: Ao }));
4187
+ });
4188
+ Qt.classNames = je.classNames;
4189
+ var No = function(e) {
4190
+ if (typeof document > "u")
4191
+ return null;
4192
+ var t = Array.isArray(e) ? e[0] : e;
4193
+ return t.ownerDocument.body;
4194
+ }, de = /* @__PURE__ */ new WeakMap(), Te = /* @__PURE__ */ new WeakMap(), Oe = {}, He = 0, er = function(e) {
4195
+ return e && (e.host || er(e.parentNode));
4196
+ }, To = function(e, t) {
4197
+ return t.map(function(r) {
4198
+ if (e.contains(r))
4199
+ return r;
4200
+ var n = er(r);
4201
+ return n && e.contains(n) ? n : (console.error("aria-hidden", r, "in not contained inside", e, ". Doing nothing"), null);
4202
+ }).filter(function(r) {
4203
+ return !!r;
4204
+ });
4205
+ }, Oo = function(e, t, r, n) {
4206
+ var o = To(t, Array.isArray(e) ? e : [e]);
4207
+ Oe[r] || (Oe[r] = /* @__PURE__ */ new WeakMap());
4208
+ var a = Oe[r], i = [], s = /* @__PURE__ */ new Set(), l = new Set(o), u = function(p) {
4209
+ !p || s.has(p) || (s.add(p), u(p.parentNode));
4210
+ };
4211
+ o.forEach(u);
4212
+ var m = function(p) {
4213
+ !p || l.has(p) || Array.prototype.forEach.call(p.children, function(h) {
4214
+ if (s.has(h))
4215
+ m(h);
4216
+ else
4217
+ try {
4218
+ var E = h.getAttribute(n), S = E !== null && E !== "false", f = (de.get(h) || 0) + 1, x = (a.get(h) || 0) + 1;
4219
+ de.set(h, f), a.set(h, x), i.push(h), f === 1 && S && Te.set(h, !0), x === 1 && h.setAttribute(r, "true"), S || h.setAttribute(n, "true");
4220
+ } catch (C) {
4221
+ console.error("aria-hidden: cannot operate on ", h, C);
4222
+ }
4223
+ });
4224
+ };
4225
+ return m(t), s.clear(), He++, function() {
4226
+ i.forEach(function(p) {
4227
+ var h = de.get(p) - 1, E = a.get(p) - 1;
4228
+ de.set(p, h), a.set(p, E), h || (Te.has(p) || p.removeAttribute(n), Te.delete(p)), E || p.removeAttribute(r);
4229
+ }), He--, He || (de = /* @__PURE__ */ new WeakMap(), de = /* @__PURE__ */ new WeakMap(), Te = /* @__PURE__ */ new WeakMap(), Oe = {});
4230
+ };
4231
+ }, _o = function(e, t, r) {
4232
+ r === void 0 && (r = "data-aria-hidden");
4233
+ var n = Array.from(Array.isArray(e) ? e : [e]), o = No(e);
4234
+ return o ? (n.push.apply(n, Array.from(o.querySelectorAll("[aria-live], script"))), Oo(n, o, r, "aria-hidden")) : function() {
4235
+ return null;
4236
+ };
4237
+ }, Le = "Dialog", [tr, oa] = vn(Le), [Do, U] = tr(Le), rr = (e) => {
4238
+ const {
4239
+ __scopeDialog: t,
4240
+ children: r,
4241
+ open: n,
4242
+ defaultOpen: o,
4243
+ onOpenChange: a,
4244
+ modal: i = !0
4245
+ } = e, s = c.useRef(null), l = c.useRef(null), [u, m] = wn({
4246
+ prop: n,
4247
+ defaultProp: o ?? !1,
4248
+ onChange: a,
4249
+ caller: Le
4250
+ });
4251
+ return /* @__PURE__ */ y.jsx(
4252
+ Do,
4253
+ {
4254
+ scope: t,
4255
+ triggerRef: s,
4256
+ contentRef: l,
4257
+ contentId: We(),
4258
+ titleId: We(),
4259
+ descriptionId: We(),
4260
+ open: u,
4261
+ onOpenChange: m,
4262
+ onOpenToggle: c.useCallback(() => m((p) => !p), [m]),
4263
+ modal: i,
4264
+ children: r
4265
+ }
4266
+ );
4267
+ };
4268
+ rr.displayName = Le;
4269
+ var nr = "DialogTrigger", or = c.forwardRef(
4270
+ (e, t) => {
4271
+ const { __scopeDialog: r, ...n } = e, o = U(nr, r), a = ae(t, o.triggerRef);
4272
+ return /* @__PURE__ */ y.jsx(
4273
+ K.button,
4274
+ {
4275
+ type: "button",
4276
+ "aria-haspopup": "dialog",
4277
+ "aria-expanded": o.open,
4278
+ "aria-controls": o.contentId,
4279
+ "data-state": nt(o.open),
4280
+ ...n,
4281
+ ref: a,
4282
+ onClick: ee(e.onClick, o.onOpenToggle)
4283
+ }
4284
+ );
4285
+ }
4286
+ );
4287
+ or.displayName = nr;
4288
+ var tt = "DialogPortal", [Mo, ar] = tr(tt, {
4289
+ forceMount: void 0
4290
+ }), sr = (e) => {
4291
+ const { __scopeDialog: t, forceMount: r, children: n, container: o } = e, a = U(tt, t);
4292
+ return /* @__PURE__ */ y.jsx(Mo, { scope: t, forceMount: r, children: c.Children.map(n, (i) => /* @__PURE__ */ y.jsx(Ie, { present: r || a.open, children: /* @__PURE__ */ y.jsx(Gt, { asChild: !0, container: o, children: i }) })) });
4293
+ };
4294
+ sr.displayName = tt;
4295
+ var Me = "DialogOverlay", ir = c.forwardRef(
4296
+ (e, t) => {
4297
+ const r = ar(Me, e.__scopeDialog), { forceMount: n = r.forceMount, ...o } = e, a = U(Me, e.__scopeDialog);
4298
+ return a.modal ? /* @__PURE__ */ y.jsx(Ie, { present: n || a.open, children: /* @__PURE__ */ y.jsx(jo, { ...o, ref: t }) }) : null;
4299
+ }
4300
+ );
4301
+ ir.displayName = Me;
4302
+ var Io = /* @__PURE__ */ et("DialogOverlay.RemoveScroll"), jo = c.forwardRef(
4303
+ (e, t) => {
4304
+ const { __scopeDialog: r, ...n } = e, o = U(Me, r);
4305
+ return (
4306
+ // Make sure `Content` is scrollable even when it doesn't live inside `RemoveScroll`
4307
+ // ie. when `Overlay` and `Content` are siblings
4308
+ /* @__PURE__ */ y.jsx(Qt, { as: Io, allowPinchZoom: !0, shards: [o.contentRef], children: /* @__PURE__ */ y.jsx(
4309
+ K.div,
4310
+ {
4311
+ "data-state": nt(o.open),
4312
+ ...n,
4313
+ ref: t,
4314
+ style: { pointerEvents: "auto", ...n.style }
4315
+ }
4316
+ ) })
4317
+ );
4318
+ }
4319
+ ), oe = "DialogContent", cr = c.forwardRef(
4320
+ (e, t) => {
4321
+ const r = ar(oe, e.__scopeDialog), { forceMount: n = r.forceMount, ...o } = e, a = U(oe, e.__scopeDialog);
4322
+ return /* @__PURE__ */ y.jsx(Ie, { present: n || a.open, children: a.modal ? /* @__PURE__ */ y.jsx(Lo, { ...o, ref: t }) : /* @__PURE__ */ y.jsx(Fo, { ...o, ref: t }) });
4323
+ }
4324
+ );
4325
+ cr.displayName = oe;
4326
+ var Lo = c.forwardRef(
4327
+ (e, t) => {
4328
+ const r = U(oe, e.__scopeDialog), n = c.useRef(null), o = ae(t, r.contentRef, n);
4329
+ return c.useEffect(() => {
4330
+ const a = n.current;
4331
+ if (a) return _o(a);
4332
+ }, []), /* @__PURE__ */ y.jsx(
4333
+ lr,
4334
+ {
4335
+ ...e,
4336
+ ref: o,
4337
+ trapFocus: r.open,
4338
+ disableOutsidePointerEvents: !0,
4339
+ onCloseAutoFocus: ee(e.onCloseAutoFocus, (a) => {
4340
+ a.preventDefault(), r.triggerRef.current?.focus();
4341
+ }),
4342
+ onPointerDownOutside: ee(e.onPointerDownOutside, (a) => {
4343
+ const i = a.detail.originalEvent, s = i.button === 0 && i.ctrlKey === !0;
4344
+ (i.button === 2 || s) && a.preventDefault();
4345
+ }),
4346
+ onFocusOutside: ee(
4347
+ e.onFocusOutside,
4348
+ (a) => a.preventDefault()
4349
+ )
4350
+ }
4351
+ );
4352
+ }
4353
+ ), Fo = c.forwardRef(
4354
+ (e, t) => {
4355
+ const r = U(oe, e.__scopeDialog), n = c.useRef(!1), o = c.useRef(!1);
4356
+ return /* @__PURE__ */ y.jsx(
4357
+ lr,
4358
+ {
4359
+ ...e,
4360
+ ref: t,
4361
+ trapFocus: !1,
4362
+ disableOutsidePointerEvents: !1,
4363
+ onCloseAutoFocus: (a) => {
4364
+ e.onCloseAutoFocus?.(a), a.defaultPrevented || (n.current || r.triggerRef.current?.focus(), a.preventDefault()), n.current = !1, o.current = !1;
4365
+ },
4366
+ onInteractOutside: (a) => {
4367
+ e.onInteractOutside?.(a), a.defaultPrevented || (n.current = !0, a.detail.originalEvent.type === "pointerdown" && (o.current = !0));
4368
+ const i = a.target;
4369
+ r.triggerRef.current?.contains(i) && a.preventDefault(), a.detail.originalEvent.type === "focusin" && o.current && a.preventDefault();
4370
+ }
4371
+ }
4372
+ );
4373
+ }
4374
+ ), lr = c.forwardRef(
4375
+ (e, t) => {
4376
+ const { __scopeDialog: r, trapFocus: n, onOpenAutoFocus: o, onCloseAutoFocus: a, ...i } = e, s = U(oe, r), l = c.useRef(null), u = ae(t, l);
4377
+ return Gn(), /* @__PURE__ */ y.jsxs(y.Fragment, { children: [
4378
+ /* @__PURE__ */ y.jsx(
4379
+ Ut,
4380
+ {
4381
+ asChild: !0,
4382
+ loop: !0,
4383
+ trapped: n,
4384
+ onMountAutoFocus: o,
4385
+ onUnmountAutoFocus: a,
4386
+ children: /* @__PURE__ */ y.jsx(
4387
+ $t,
4388
+ {
4389
+ role: "dialog",
4390
+ id: s.contentId,
4391
+ "aria-describedby": s.descriptionId,
4392
+ "aria-labelledby": s.titleId,
4393
+ "data-state": nt(s.open),
4394
+ ...i,
4395
+ ref: u,
4396
+ onDismiss: () => s.onOpenChange(!1)
4397
+ }
4398
+ )
4399
+ }
4400
+ ),
4401
+ /* @__PURE__ */ y.jsxs(y.Fragment, { children: [
4402
+ /* @__PURE__ */ y.jsx(zo, { titleId: s.titleId }),
4403
+ /* @__PURE__ */ y.jsx($o, { contentRef: l, descriptionId: s.descriptionId })
4404
+ ] })
4405
+ ] });
4406
+ }
4407
+ ), rt = "DialogTitle", ur = c.forwardRef(
4408
+ (e, t) => {
4409
+ const { __scopeDialog: r, ...n } = e, o = U(rt, r);
4410
+ return /* @__PURE__ */ y.jsx(K.h2, { id: o.titleId, ...n, ref: t });
4411
+ }
4412
+ );
4413
+ ur.displayName = rt;
4414
+ var dr = "DialogDescription", fr = c.forwardRef(
4415
+ (e, t) => {
4416
+ const { __scopeDialog: r, ...n } = e, o = U(dr, r);
4417
+ return /* @__PURE__ */ y.jsx(K.p, { id: o.descriptionId, ...n, ref: t });
4418
+ }
4419
+ );
4420
+ fr.displayName = dr;
4421
+ var mr = "DialogClose", pr = c.forwardRef(
4422
+ (e, t) => {
4423
+ const { __scopeDialog: r, ...n } = e, o = U(mr, r);
4424
+ return /* @__PURE__ */ y.jsx(
4425
+ K.button,
4426
+ {
4427
+ type: "button",
4428
+ ...n,
4429
+ ref: t,
4430
+ onClick: ee(e.onClick, () => o.onOpenChange(!1))
4431
+ }
4432
+ );
4433
+ }
4434
+ );
4435
+ pr.displayName = mr;
4436
+ function nt(e) {
4437
+ return e ? "open" : "closed";
4438
+ }
4439
+ var gr = "DialogTitleWarning", [aa, vr] = gn(gr, {
4440
+ contentName: oe,
4441
+ titleName: rt,
4442
+ docsSlug: "dialog"
4443
+ }), zo = ({ titleId: e }) => {
4444
+ const t = vr(gr), r = `\`${t.contentName}\` requires a \`${t.titleName}\` for the component to be accessible for screen reader users.
4445
+
4446
+ If you want to hide the \`${t.titleName}\`, you can wrap it with our VisuallyHidden component.
4447
+
4448
+ For more information, see https://radix-ui.com/primitives/docs/components/${t.docsSlug}`;
4449
+ return c.useEffect(() => {
4450
+ e && (document.getElementById(e) || console.error(r));
4451
+ }, [r, e]), null;
4452
+ }, Wo = "DialogDescriptionWarning", $o = ({ contentRef: e, descriptionId: t }) => {
4453
+ const n = `Warning: Missing \`Description\` or \`aria-describedby={undefined}\` for {${vr(Wo).contentName}}.`;
4454
+ return c.useEffect(() => {
4455
+ const o = e.current?.getAttribute("aria-describedby");
4456
+ t && o && (document.getElementById(t) || console.warn(n));
4457
+ }, [n, e, t]), null;
4458
+ }, Vo = rr, Uo = or, Bo = sr, Go = ir, Yo = cr, Ho = ur, Xo = fr, hr = pr;
4459
+ function sa({
4460
+ ...e
4461
+ }) {
4462
+ return /* @__PURE__ */ y.jsx(Vo, { "data-slot": "dialog", ...e });
4463
+ }
4464
+ function ia({
4465
+ ...e
4466
+ }) {
4467
+ return /* @__PURE__ */ y.jsx(Uo, { "data-slot": "dialog-trigger", ...e });
4468
+ }
4469
+ function Ko({
4470
+ ...e
4471
+ }) {
4472
+ return /* @__PURE__ */ y.jsx(Bo, { "data-slot": "dialog-portal", ...e });
4473
+ }
4474
+ function ca({
4475
+ ...e
4476
+ }) {
4477
+ return /* @__PURE__ */ y.jsx(hr, { "data-slot": "dialog-close", ...e });
4478
+ }
4479
+ function qo({
4480
+ className: e,
4481
+ ...t
4482
+ }) {
4483
+ return /* @__PURE__ */ y.jsx(
4484
+ Go,
4485
+ {
4486
+ "data-slot": "dialog-overlay",
4487
+ className: Y(
4488
+ "data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 fixed inset-0 z-50 bg-black/50",
4489
+ e
4490
+ ),
4491
+ ...t
4492
+ }
4493
+ );
4494
+ }
4495
+ function la({
4496
+ className: e,
4497
+ children: t,
4498
+ showCloseButton: r = !0,
4499
+ ...n
4500
+ }) {
4501
+ return /* @__PURE__ */ y.jsxs(Ko, { "data-slot": "dialog-portal", children: [
4502
+ /* @__PURE__ */ y.jsx(qo, {}),
4503
+ /* @__PURE__ */ y.jsxs(
4504
+ Yo,
4505
+ {
4506
+ "data-slot": "dialog-content",
4507
+ className: Y(
4508
+ "bg-background data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 fixed top-[50%] left-[50%] z-50 grid w-full max-w-[calc(100%-2rem)] translate-x-[-50%] translate-y-[-50%] gap-4 rounded-lg border p-6 shadow-lg duration-200 sm:max-w-lg",
4509
+ e
4510
+ ),
4511
+ ...n,
4512
+ children: [
4513
+ t,
4514
+ r && /* @__PURE__ */ y.jsxs(
4515
+ hr,
4516
+ {
4517
+ "data-slot": "dialog-close",
4518
+ className: "ring-offset-background focus:ring-ring data-[state=open]:bg-accent data-[state=open]:text-muted-foreground absolute top-4 right-4 rounded-xs opacity-70 transition-opacity hover:opacity-100 focus:ring-2 focus:ring-offset-2 focus:outline-hidden disabled:pointer-events-none [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4",
4519
+ children: [
4520
+ /* @__PURE__ */ y.jsx(Er, {}),
4521
+ /* @__PURE__ */ y.jsx("span", { className: "sr-only", children: "Close" })
4522
+ ]
4523
+ }
4524
+ )
4525
+ ]
4526
+ }
4527
+ )
4528
+ ] });
4529
+ }
4530
+ function ua({ className: e, ...t }) {
4531
+ return /* @__PURE__ */ y.jsx(
4532
+ "div",
4533
+ {
4534
+ "data-slot": "dialog-header",
4535
+ className: Y("flex flex-col gap-2 text-center sm:text-left", e),
4536
+ ...t
4537
+ }
4538
+ );
4539
+ }
4540
+ function da({ className: e, ...t }) {
4541
+ return /* @__PURE__ */ y.jsx(
4542
+ "div",
4543
+ {
4544
+ "data-slot": "dialog-footer",
4545
+ className: Y(
4546
+ "flex flex-col-reverse gap-2 sm:flex-row sm:justify-end",
4547
+ e
4548
+ ),
4549
+ ...t
4550
+ }
4551
+ );
4552
+ }
4553
+ function fa({
4554
+ className: e,
4555
+ ...t
4556
+ }) {
4557
+ return /* @__PURE__ */ y.jsx(
4558
+ Ho,
4559
+ {
4560
+ "data-slot": "dialog-title",
4561
+ className: Y("text-lg leading-none font-semibold", e),
4562
+ ...t
4563
+ }
4564
+ );
4565
+ }
4566
+ function ma({
4567
+ className: e,
4568
+ ...t
4569
+ }) {
4570
+ return /* @__PURE__ */ y.jsx(
4571
+ Xo,
4572
+ {
4573
+ "data-slot": "dialog-description",
4574
+ className: Y("text-muted-foreground text-sm", e),
4575
+ ...t
4576
+ }
4577
+ );
4578
+ }
4579
+ export {
4580
+ ea as Alert,
4581
+ ra as AlertDescription,
4582
+ ta as AlertTitle,
4583
+ na as Button,
4584
+ sa as Dialog,
4585
+ ca as DialogClose,
4586
+ la as DialogContent,
4587
+ ma as DialogDescription,
4588
+ da as DialogFooter,
4589
+ ua as DialogHeader,
4590
+ qo as DialogOverlay,
4591
+ Ko as DialogPortal,
4592
+ fa as DialogTitle,
4593
+ ia as DialogTrigger,
4594
+ pn as buttonVariants
4595
+ };