waffle-board 0.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -0,0 +1,3115 @@
1
+ import Fe, { useMemo as $e, Suspense as Ve } from "react";
2
+ import Ye, { useContainerWidth as We, useResponsiveLayout as De } from "react-grid-layout";
3
+ var ie = { exports: {} }, oe = {};
4
+ var he;
5
+ function Ue() {
6
+ if (he) return oe;
7
+ he = 1;
8
+ var e = /* @__PURE__ */ Symbol.for("react.transitional.element"), n = /* @__PURE__ */ Symbol.for("react.fragment");
9
+ function o(t, s, c) {
10
+ var i = null;
11
+ if (c !== void 0 && (i = "" + c), s.key !== void 0 && (i = "" + s.key), "key" in s) {
12
+ c = {};
13
+ for (var p in s)
14
+ p !== "key" && (c[p] = s[p]);
15
+ } else c = s;
16
+ return s = c.ref, {
17
+ $$typeof: e,
18
+ type: t,
19
+ key: i,
20
+ ref: s !== void 0 ? s : null,
21
+ props: c
22
+ };
23
+ }
24
+ return oe.Fragment = n, oe.jsx = o, oe.jsxs = o, oe;
25
+ }
26
+ var te = {};
27
+ var xe;
28
+ function Be() {
29
+ return xe || (xe = 1, process.env.NODE_ENV !== "production" && (function() {
30
+ function e(r) {
31
+ if (r == null) return null;
32
+ if (typeof r == "function")
33
+ return r.$$typeof === ae ? null : r.displayName || r.name || null;
34
+ if (typeof r == "string") return r;
35
+ switch (r) {
36
+ case R:
37
+ return "Fragment";
38
+ case B:
39
+ return "Profiler";
40
+ case O:
41
+ return "StrictMode";
42
+ case N:
43
+ return "Suspense";
44
+ case D:
45
+ return "SuspenseList";
46
+ case se:
47
+ return "Activity";
48
+ }
49
+ if (typeof r == "object")
50
+ switch (typeof r.tag == "number" && console.error(
51
+ "Received an unexpected object in getComponentNameFromType(). This is likely a bug in React. Please file an issue."
52
+ ), r.$$typeof) {
53
+ case A:
54
+ return "Portal";
55
+ case L:
56
+ return r.displayName || "Context";
57
+ case W:
58
+ return (r._context.displayName || "Context") + ".Consumer";
59
+ case F:
60
+ var f = r.render;
61
+ return r = r.displayName, r || (r = f.displayName || f.name || "", r = r !== "" ? "ForwardRef(" + r + ")" : "ForwardRef"), r;
62
+ case m:
63
+ return f = r.displayName || null, f !== null ? f : e(r.type) || "Memo";
64
+ case E:
65
+ f = r._payload, r = r._init;
66
+ try {
67
+ return e(r(f));
68
+ } catch {
69
+ }
70
+ }
71
+ return null;
72
+ }
73
+ function n(r) {
74
+ return "" + r;
75
+ }
76
+ function o(r) {
77
+ try {
78
+ n(r);
79
+ var f = !1;
80
+ } catch {
81
+ f = !0;
82
+ }
83
+ if (f) {
84
+ f = console;
85
+ var g = f.error, x = typeof Symbol == "function" && Symbol.toStringTag && r[Symbol.toStringTag] || r.constructor.name || "Object";
86
+ return g.call(
87
+ f,
88
+ "The provided key is an unsupported type %s. This value must be coerced to a string before using it here.",
89
+ x
90
+ ), n(r);
91
+ }
92
+ }
93
+ function t(r) {
94
+ if (r === R) return "<>";
95
+ if (typeof r == "object" && r !== null && r.$$typeof === E)
96
+ return "<...>";
97
+ try {
98
+ var f = e(r);
99
+ return f ? "<" + f + ">" : "<...>";
100
+ } catch {
101
+ return "<...>";
102
+ }
103
+ }
104
+ function s() {
105
+ var r = $.A;
106
+ return r === null ? null : r.getOwner();
107
+ }
108
+ function c() {
109
+ return Error("react-stack-top-frame");
110
+ }
111
+ function i(r) {
112
+ if (Q.call(r, "key")) {
113
+ var f = Object.getOwnPropertyDescriptor(r, "key").get;
114
+ if (f && f.isReactWarning) return !1;
115
+ }
116
+ return r.key !== void 0;
117
+ }
118
+ function p(r, f) {
119
+ function g() {
120
+ C || (C = !0, console.error(
121
+ "%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)",
122
+ f
123
+ ));
124
+ }
125
+ g.isReactWarning = !0, Object.defineProperty(r, "key", {
126
+ get: g,
127
+ configurable: !0
128
+ });
129
+ }
130
+ function u() {
131
+ var r = e(this.type);
132
+ return P[r] || (P[r] = !0, console.error(
133
+ "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."
134
+ )), r = this.props.ref, r !== void 0 ? r : null;
135
+ }
136
+ function k(r, f, g, x, I, q) {
137
+ var h = g.ref;
138
+ return r = {
139
+ $$typeof: j,
140
+ type: r,
141
+ key: f,
142
+ props: g,
143
+ _owner: x
144
+ }, (h !== void 0 ? h : null) !== null ? Object.defineProperty(r, "ref", {
145
+ enumerable: !1,
146
+ get: u
147
+ }) : Object.defineProperty(r, "ref", { enumerable: !1, value: null }), r._store = {}, Object.defineProperty(r._store, "validated", {
148
+ configurable: !1,
149
+ enumerable: !1,
150
+ writable: !0,
151
+ value: 0
152
+ }), Object.defineProperty(r, "_debugInfo", {
153
+ configurable: !1,
154
+ enumerable: !1,
155
+ writable: !0,
156
+ value: null
157
+ }), Object.defineProperty(r, "_debugStack", {
158
+ configurable: !1,
159
+ enumerable: !1,
160
+ writable: !0,
161
+ value: I
162
+ }), Object.defineProperty(r, "_debugTask", {
163
+ configurable: !1,
164
+ enumerable: !1,
165
+ writable: !0,
166
+ value: q
167
+ }), Object.freeze && (Object.freeze(r.props), Object.freeze(r)), r;
168
+ }
169
+ function w(r, f, g, x, I, q) {
170
+ var h = f.children;
171
+ if (h !== void 0)
172
+ if (x)
173
+ if (K(h)) {
174
+ for (x = 0; x < h.length; x++)
175
+ y(h[x]);
176
+ Object.freeze && Object.freeze(h);
177
+ } else
178
+ console.error(
179
+ "React.jsx: Static children should always be an array. You are likely explicitly calling React.jsxs or React.jsxDEV. Use the Babel transform instead."
180
+ );
181
+ else y(h);
182
+ if (Q.call(f, "key")) {
183
+ h = e(r);
184
+ var M = Object.keys(f).filter(function(J) {
185
+ return J !== "key";
186
+ });
187
+ x = 0 < M.length ? "{key: someKey, " + M.join(": ..., ") + ": ...}" : "{key: someKey}", re[h + x] || (M = 0 < M.length ? "{" + M.join(": ..., ") + ": ...}" : "{}", console.error(
188
+ `A props object containing a "key" prop is being spread into JSX:
189
+ let props = %s;
190
+ <%s {...props} />
191
+ React keys must be passed directly to JSX without using spread:
192
+ let props = %s;
193
+ <%s key={someKey} {...props} />`,
194
+ x,
195
+ h,
196
+ M,
197
+ h
198
+ ), re[h + x] = !0);
199
+ }
200
+ if (h = null, g !== void 0 && (o(g), h = "" + g), i(f) && (o(f.key), h = "" + f.key), "key" in f) {
201
+ g = {};
202
+ for (var V in f)
203
+ V !== "key" && (g[V] = f[V]);
204
+ } else g = f;
205
+ return h && p(
206
+ g,
207
+ typeof r == "function" ? r.displayName || r.name || "Unknown" : r
208
+ ), k(
209
+ r,
210
+ h,
211
+ g,
212
+ s(),
213
+ I,
214
+ q
215
+ );
216
+ }
217
+ function y(r) {
218
+ _(r) ? r._store && (r._store.validated = 1) : typeof r == "object" && r !== null && r.$$typeof === E && (r._payload.status === "fulfilled" ? _(r._payload.value) && r._payload.value._store && (r._payload.value._store.validated = 1) : r._store && (r._store.validated = 1));
219
+ }
220
+ function _(r) {
221
+ return typeof r == "object" && r !== null && r.$$typeof === j;
222
+ }
223
+ var S = Fe, j = /* @__PURE__ */ Symbol.for("react.transitional.element"), A = /* @__PURE__ */ Symbol.for("react.portal"), R = /* @__PURE__ */ Symbol.for("react.fragment"), O = /* @__PURE__ */ Symbol.for("react.strict_mode"), B = /* @__PURE__ */ Symbol.for("react.profiler"), W = /* @__PURE__ */ Symbol.for("react.consumer"), L = /* @__PURE__ */ Symbol.for("react.context"), F = /* @__PURE__ */ Symbol.for("react.forward_ref"), N = /* @__PURE__ */ Symbol.for("react.suspense"), D = /* @__PURE__ */ Symbol.for("react.suspense_list"), m = /* @__PURE__ */ Symbol.for("react.memo"), E = /* @__PURE__ */ Symbol.for("react.lazy"), se = /* @__PURE__ */ Symbol.for("react.activity"), ae = /* @__PURE__ */ Symbol.for("react.client.reference"), $ = S.__CLIENT_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE, Q = Object.prototype.hasOwnProperty, K = Array.isArray, z = console.createTask ? console.createTask : function() {
224
+ return null;
225
+ };
226
+ S = {
227
+ react_stack_bottom_frame: function(r) {
228
+ return r();
229
+ }
230
+ };
231
+ var C, P = {}, d = S.react_stack_bottom_frame.bind(
232
+ S,
233
+ c
234
+ )(), ee = z(t(c)), re = {};
235
+ te.Fragment = R, te.jsx = function(r, f, g) {
236
+ var x = 1e4 > $.recentlyCreatedOwnerStacks++;
237
+ return w(
238
+ r,
239
+ f,
240
+ g,
241
+ !1,
242
+ x ? Error("react-stack-top-frame") : d,
243
+ x ? z(t(r)) : ee
244
+ );
245
+ }, te.jsxs = function(r, f, g) {
246
+ var x = 1e4 > $.recentlyCreatedOwnerStacks++;
247
+ return w(
248
+ r,
249
+ f,
250
+ g,
251
+ !0,
252
+ x ? Error("react-stack-top-frame") : d,
253
+ x ? z(t(r)) : ee
254
+ );
255
+ };
256
+ })()), te;
257
+ }
258
+ var ke;
259
+ function qe() {
260
+ return ke || (ke = 1, process.env.NODE_ENV === "production" ? ie.exports = Ue() : ie.exports = Be()), ie.exports;
261
+ }
262
+ var T = qe();
263
+ function Ee(e) {
264
+ var n, o, t = "";
265
+ if (typeof e == "string" || typeof e == "number") t += e;
266
+ else if (typeof e == "object") if (Array.isArray(e)) {
267
+ var s = e.length;
268
+ for (n = 0; n < s; n++) e[n] && (o = Ee(e[n])) && (t && (t += " "), t += o);
269
+ } else for (o in e) e[o] && (t && (t += " "), t += o);
270
+ return t;
271
+ }
272
+ function Je() {
273
+ for (var e, n, o = 0, t = "", s = arguments.length; o < s; o++) (e = arguments[o]) && (n = Ee(e)) && (t && (t += " "), t += n);
274
+ return t;
275
+ }
276
+ const Xe = (e, n) => {
277
+ const o = new Array(e.length + n.length);
278
+ for (let t = 0; t < e.length; t++)
279
+ o[t] = e[t];
280
+ for (let t = 0; t < n.length; t++)
281
+ o[e.length + t] = n[t];
282
+ return o;
283
+ }, He = (e, n) => ({
284
+ classGroupId: e,
285
+ validator: n
286
+ }), Te = (e = /* @__PURE__ */ new Map(), n = null, o) => ({
287
+ nextPart: e,
288
+ validators: n,
289
+ classGroupId: o
290
+ }), ue = "-", we = [], Ze = "arbitrary..", Qe = (e) => {
291
+ const n = er(e), {
292
+ conflictingClassGroups: o,
293
+ conflictingClassGroupModifiers: t
294
+ } = e;
295
+ return {
296
+ getClassGroupId: (i) => {
297
+ if (i.startsWith("[") && i.endsWith("]"))
298
+ return Ke(i);
299
+ const p = i.split(ue), u = p[0] === "" && p.length > 1 ? 1 : 0;
300
+ return Se(p, u, n);
301
+ },
302
+ getConflictingClassGroupIds: (i, p) => {
303
+ if (p) {
304
+ const u = t[i], k = o[i];
305
+ return u ? k ? Xe(k, u) : u : k || we;
306
+ }
307
+ return o[i] || we;
308
+ }
309
+ };
310
+ }, Se = (e, n, o) => {
311
+ if (e.length - n === 0)
312
+ return o.classGroupId;
313
+ const s = e[n], c = o.nextPart.get(s);
314
+ if (c) {
315
+ const k = Se(e, n + 1, c);
316
+ if (k) return k;
317
+ }
318
+ const i = o.validators;
319
+ if (i === null)
320
+ return;
321
+ const p = n === 0 ? e.join(ue) : e.slice(n).join(ue), u = i.length;
322
+ for (let k = 0; k < u; k++) {
323
+ const w = i[k];
324
+ if (w.validator(p))
325
+ return w.classGroupId;
326
+ }
327
+ }, Ke = (e) => e.slice(1, -1).indexOf(":") === -1 ? void 0 : (() => {
328
+ const n = e.slice(1, -1), o = n.indexOf(":"), t = n.slice(0, o);
329
+ return t ? Ze + t : void 0;
330
+ })(), er = (e) => {
331
+ const {
332
+ theme: n,
333
+ classGroups: o
334
+ } = e;
335
+ return rr(o, n);
336
+ }, rr = (e, n) => {
337
+ const o = Te();
338
+ for (const t in e) {
339
+ const s = e[t];
340
+ ge(s, o, t, n);
341
+ }
342
+ return o;
343
+ }, ge = (e, n, o, t) => {
344
+ const s = e.length;
345
+ for (let c = 0; c < s; c++) {
346
+ const i = e[c];
347
+ or(i, n, o, t);
348
+ }
349
+ }, or = (e, n, o, t) => {
350
+ if (typeof e == "string") {
351
+ tr(e, n, o);
352
+ return;
353
+ }
354
+ if (typeof e == "function") {
355
+ nr(e, n, o, t);
356
+ return;
357
+ }
358
+ sr(e, n, o, t);
359
+ }, tr = (e, n, o) => {
360
+ const t = e === "" ? n : Ce(n, e);
361
+ t.classGroupId = o;
362
+ }, nr = (e, n, o, t) => {
363
+ if (ar(e)) {
364
+ ge(e(t), n, o, t);
365
+ return;
366
+ }
367
+ n.validators === null && (n.validators = []), n.validators.push(He(o, e));
368
+ }, sr = (e, n, o, t) => {
369
+ const s = Object.entries(e), c = s.length;
370
+ for (let i = 0; i < c; i++) {
371
+ const [p, u] = s[i];
372
+ ge(u, Ce(n, p), o, t);
373
+ }
374
+ }, Ce = (e, n) => {
375
+ let o = e;
376
+ const t = n.split(ue), s = t.length;
377
+ for (let c = 0; c < s; c++) {
378
+ const i = t[c];
379
+ let p = o.nextPart.get(i);
380
+ p || (p = Te(), o.nextPart.set(i, p)), o = p;
381
+ }
382
+ return o;
383
+ }, ar = (e) => "isThemeGetter" in e && e.isThemeGetter === !0, lr = (e) => {
384
+ if (e < 1)
385
+ return {
386
+ get: () => {
387
+ },
388
+ set: () => {
389
+ }
390
+ };
391
+ let n = 0, o = /* @__PURE__ */ Object.create(null), t = /* @__PURE__ */ Object.create(null);
392
+ const s = (c, i) => {
393
+ o[c] = i, n++, n > e && (n = 0, t = o, o = /* @__PURE__ */ Object.create(null));
394
+ };
395
+ return {
396
+ get(c) {
397
+ let i = o[c];
398
+ if (i !== void 0)
399
+ return i;
400
+ if ((i = t[c]) !== void 0)
401
+ return s(c, i), i;
402
+ },
403
+ set(c, i) {
404
+ c in o ? o[c] = i : s(c, i);
405
+ }
406
+ };
407
+ }, be = "!", ye = ":", ir = [], ve = (e, n, o, t, s) => ({
408
+ modifiers: e,
409
+ hasImportantModifier: n,
410
+ baseClassName: o,
411
+ maybePostfixModifierPosition: t,
412
+ isExternal: s
413
+ }), cr = (e) => {
414
+ const {
415
+ prefix: n,
416
+ experimentalParseClassName: o
417
+ } = e;
418
+ let t = (s) => {
419
+ const c = [];
420
+ let i = 0, p = 0, u = 0, k;
421
+ const w = s.length;
422
+ for (let A = 0; A < w; A++) {
423
+ const R = s[A];
424
+ if (i === 0 && p === 0) {
425
+ if (R === ye) {
426
+ c.push(s.slice(u, A)), u = A + 1;
427
+ continue;
428
+ }
429
+ if (R === "/") {
430
+ k = A;
431
+ continue;
432
+ }
433
+ }
434
+ R === "[" ? i++ : R === "]" ? i-- : R === "(" ? p++ : R === ")" && p--;
435
+ }
436
+ const y = c.length === 0 ? s : s.slice(u);
437
+ let _ = y, S = !1;
438
+ y.endsWith(be) ? (_ = y.slice(0, -1), S = !0) : (
439
+ /**
440
+ * In Tailwind CSS v3 the important modifier was at the start of the base class name. This is still supported for legacy reasons.
441
+ * @see https://github.com/dcastil/tailwind-merge/issues/513#issuecomment-2614029864
442
+ */
443
+ y.startsWith(be) && (_ = y.slice(1), S = !0)
444
+ );
445
+ const j = k && k > u ? k - u : void 0;
446
+ return ve(c, S, _, j);
447
+ };
448
+ if (n) {
449
+ const s = n + ye, c = t;
450
+ t = (i) => i.startsWith(s) ? c(i.slice(s.length)) : ve(ir, !1, i, void 0, !0);
451
+ }
452
+ if (o) {
453
+ const s = t;
454
+ t = (c) => o({
455
+ className: c,
456
+ parseClassName: s
457
+ });
458
+ }
459
+ return t;
460
+ }, dr = (e) => {
461
+ const n = /* @__PURE__ */ new Map();
462
+ return e.orderSensitiveModifiers.forEach((o, t) => {
463
+ n.set(o, 1e6 + t);
464
+ }), (o) => {
465
+ const t = [];
466
+ let s = [];
467
+ for (let c = 0; c < o.length; c++) {
468
+ const i = o[c], p = i[0] === "[", u = n.has(i);
469
+ p || u ? (s.length > 0 && (s.sort(), t.push(...s), s = []), t.push(i)) : s.push(i);
470
+ }
471
+ return s.length > 0 && (s.sort(), t.push(...s)), t;
472
+ };
473
+ }, ur = (e) => ({
474
+ cache: lr(e.cacheSize),
475
+ parseClassName: cr(e),
476
+ sortModifiers: dr(e),
477
+ ...Qe(e)
478
+ }), mr = /\s+/, fr = (e, n) => {
479
+ const {
480
+ parseClassName: o,
481
+ getClassGroupId: t,
482
+ getConflictingClassGroupIds: s,
483
+ sortModifiers: c
484
+ } = n, i = [], p = e.trim().split(mr);
485
+ let u = "";
486
+ for (let k = p.length - 1; k >= 0; k -= 1) {
487
+ const w = p[k], {
488
+ isExternal: y,
489
+ modifiers: _,
490
+ hasImportantModifier: S,
491
+ baseClassName: j,
492
+ maybePostfixModifierPosition: A
493
+ } = o(w);
494
+ if (y) {
495
+ u = w + (u.length > 0 ? " " + u : u);
496
+ continue;
497
+ }
498
+ let R = !!A, O = t(R ? j.substring(0, A) : j);
499
+ if (!O) {
500
+ if (!R) {
501
+ u = w + (u.length > 0 ? " " + u : u);
502
+ continue;
503
+ }
504
+ if (O = t(j), !O) {
505
+ u = w + (u.length > 0 ? " " + u : u);
506
+ continue;
507
+ }
508
+ R = !1;
509
+ }
510
+ const B = _.length === 0 ? "" : _.length === 1 ? _[0] : c(_).join(":"), W = S ? B + be : B, L = W + O;
511
+ if (i.indexOf(L) > -1)
512
+ continue;
513
+ i.push(L);
514
+ const F = s(O, R);
515
+ for (let N = 0; N < F.length; ++N) {
516
+ const D = F[N];
517
+ i.push(W + D);
518
+ }
519
+ u = w + (u.length > 0 ? " " + u : u);
520
+ }
521
+ return u;
522
+ }, pr = (...e) => {
523
+ let n = 0, o, t, s = "";
524
+ for (; n < e.length; )
525
+ (o = e[n++]) && (t = je(o)) && (s && (s += " "), s += t);
526
+ return s;
527
+ }, je = (e) => {
528
+ if (typeof e == "string")
529
+ return e;
530
+ let n, o = "";
531
+ for (let t = 0; t < e.length; t++)
532
+ e[t] && (n = je(e[t])) && (o && (o += " "), o += n);
533
+ return o;
534
+ }, br = (e, ...n) => {
535
+ let o, t, s, c;
536
+ const i = (u) => {
537
+ const k = n.reduce((w, y) => y(w), e());
538
+ return o = ur(k), t = o.cache.get, s = o.cache.set, c = p, p(u);
539
+ }, p = (u) => {
540
+ const k = t(u);
541
+ if (k)
542
+ return k;
543
+ const w = fr(u, o);
544
+ return s(u, w), w;
545
+ };
546
+ return c = i, (...u) => c(pr(...u));
547
+ }, gr = [], v = (e) => {
548
+ const n = (o) => o[e] || gr;
549
+ return n.isThemeGetter = !0, n;
550
+ }, ze = /^\[(?:(\w[\w-]*):)?(.+)\]$/i, Pe = /^\((?:(\w[\w-]*):)?(.+)\)$/i, hr = /^\d+\/\d+$/, xr = /^(\d+(\.\d+)?)?(xs|sm|md|lg|xl)$/, kr = /\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$/, wr = /^(rgba?|hsla?|hwb|(ok)?(lab|lch)|color-mix)\(.+\)$/, yr = /^(inset_)?-?((\d+)?\.?(\d+)[a-z]+|0)_-?((\d+)?\.?(\d+)[a-z]+|0)/, vr = /^(url|image|image-set|cross-fade|element|(repeating-)?(linear|radial|conic)-gradient)\(.+\)$/, X = (e) => hr.test(e), b = (e) => !!e && !Number.isNaN(Number(e)), Y = (e) => !!e && Number.isInteger(Number(e)), fe = (e) => e.endsWith("%") && b(e.slice(0, -1)), G = (e) => xr.test(e), Rr = () => !0, _r = (e) => (
551
+ // `colorFunctionRegex` check is necessary because color functions can have percentages in them which which would be incorrectly classified as lengths.
552
+ // For example, `hsl(0 0% 0%)` would be classified as a length without this check.
553
+ // I could also use lookbehind assertion in `lengthUnitRegex` but that isn't supported widely enough.
554
+ kr.test(e) && !wr.test(e)
555
+ ), Oe = () => !1, Ar = (e) => yr.test(e), Er = (e) => vr.test(e), Tr = (e) => !a(e) && !l(e), Sr = (e) => H(e, Me, Oe), a = (e) => ze.test(e), U = (e) => H(e, Ge, _r), pe = (e) => H(e, Or, b), Re = (e) => H(e, Ne, Oe), Cr = (e) => H(e, Ie, Er), ce = (e) => H(e, Le, Ar), l = (e) => Pe.test(e), ne = (e) => Z(e, Ge), jr = (e) => Z(e, Nr), _e = (e) => Z(e, Ne), zr = (e) => Z(e, Me), Pr = (e) => Z(e, Ie), de = (e) => Z(e, Le, !0), H = (e, n, o) => {
556
+ const t = ze.exec(e);
557
+ return t ? t[1] ? n(t[1]) : o(t[2]) : !1;
558
+ }, Z = (e, n, o = !1) => {
559
+ const t = Pe.exec(e);
560
+ return t ? t[1] ? n(t[1]) : o : !1;
561
+ }, Ne = (e) => e === "position" || e === "percentage", Ie = (e) => e === "image" || e === "url", Me = (e) => e === "length" || e === "size" || e === "bg-size", Ge = (e) => e === "length", Or = (e) => e === "number", Nr = (e) => e === "family-name", Le = (e) => e === "shadow", Ir = () => {
562
+ const e = v("color"), n = v("font"), o = v("text"), t = v("font-weight"), s = v("tracking"), c = v("leading"), i = v("breakpoint"), p = v("container"), u = v("spacing"), k = v("radius"), w = v("shadow"), y = v("inset-shadow"), _ = v("text-shadow"), S = v("drop-shadow"), j = v("blur"), A = v("perspective"), R = v("aspect"), O = v("ease"), B = v("animate"), W = () => ["auto", "avoid", "all", "avoid-page", "page", "left", "right", "column"], L = () => [
563
+ "center",
564
+ "top",
565
+ "bottom",
566
+ "left",
567
+ "right",
568
+ "top-left",
569
+ // Deprecated since Tailwind CSS v4.1.0, see https://github.com/tailwindlabs/tailwindcss/pull/17378
570
+ "left-top",
571
+ "top-right",
572
+ // Deprecated since Tailwind CSS v4.1.0, see https://github.com/tailwindlabs/tailwindcss/pull/17378
573
+ "right-top",
574
+ "bottom-right",
575
+ // Deprecated since Tailwind CSS v4.1.0, see https://github.com/tailwindlabs/tailwindcss/pull/17378
576
+ "right-bottom",
577
+ "bottom-left",
578
+ // Deprecated since Tailwind CSS v4.1.0, see https://github.com/tailwindlabs/tailwindcss/pull/17378
579
+ "left-bottom"
580
+ ], F = () => [...L(), l, a], N = () => ["auto", "hidden", "clip", "visible", "scroll"], D = () => ["auto", "contain", "none"], m = () => [l, a, u], E = () => [X, "full", "auto", ...m()], se = () => [Y, "none", "subgrid", l, a], ae = () => ["auto", {
581
+ span: ["full", Y, l, a]
582
+ }, Y, l, a], $ = () => [Y, "auto", l, a], Q = () => ["auto", "min", "max", "fr", l, a], K = () => ["start", "end", "center", "between", "around", "evenly", "stretch", "baseline", "center-safe", "end-safe"], z = () => ["start", "end", "center", "stretch", "center-safe", "end-safe"], C = () => ["auto", ...m()], P = () => [X, "auto", "full", "dvw", "dvh", "lvw", "lvh", "svw", "svh", "min", "max", "fit", ...m()], d = () => [e, l, a], ee = () => [...L(), _e, Re, {
583
+ position: [l, a]
584
+ }], re = () => ["no-repeat", {
585
+ repeat: ["", "x", "y", "space", "round"]
586
+ }], r = () => ["auto", "cover", "contain", zr, Sr, {
587
+ size: [l, a]
588
+ }], f = () => [fe, ne, U], g = () => [
589
+ // Deprecated since Tailwind CSS v4.0.0
590
+ "",
591
+ "none",
592
+ "full",
593
+ k,
594
+ l,
595
+ a
596
+ ], x = () => ["", b, ne, U], I = () => ["solid", "dashed", "dotted", "double"], q = () => ["normal", "multiply", "screen", "overlay", "darken", "lighten", "color-dodge", "color-burn", "hard-light", "soft-light", "difference", "exclusion", "hue", "saturation", "color", "luminosity"], h = () => [b, fe, _e, Re], M = () => [
597
+ // Deprecated since Tailwind CSS v4.0.0
598
+ "",
599
+ "none",
600
+ j,
601
+ l,
602
+ a
603
+ ], V = () => ["none", b, l, a], J = () => ["none", b, l, a], me = () => [b, l, a], le = () => [X, "full", ...m()];
604
+ return {
605
+ cacheSize: 500,
606
+ theme: {
607
+ animate: ["spin", "ping", "pulse", "bounce"],
608
+ aspect: ["video"],
609
+ blur: [G],
610
+ breakpoint: [G],
611
+ color: [Rr],
612
+ container: [G],
613
+ "drop-shadow": [G],
614
+ ease: ["in", "out", "in-out"],
615
+ font: [Tr],
616
+ "font-weight": ["thin", "extralight", "light", "normal", "medium", "semibold", "bold", "extrabold", "black"],
617
+ "inset-shadow": [G],
618
+ leading: ["none", "tight", "snug", "normal", "relaxed", "loose"],
619
+ perspective: ["dramatic", "near", "normal", "midrange", "distant", "none"],
620
+ radius: [G],
621
+ shadow: [G],
622
+ spacing: ["px", b],
623
+ text: [G],
624
+ "text-shadow": [G],
625
+ tracking: ["tighter", "tight", "normal", "wide", "wider", "widest"]
626
+ },
627
+ classGroups: {
628
+ // --------------
629
+ // --- Layout ---
630
+ // --------------
631
+ /**
632
+ * Aspect Ratio
633
+ * @see https://tailwindcss.com/docs/aspect-ratio
634
+ */
635
+ aspect: [{
636
+ aspect: ["auto", "square", X, a, l, R]
637
+ }],
638
+ /**
639
+ * Container
640
+ * @see https://tailwindcss.com/docs/container
641
+ * @deprecated since Tailwind CSS v4.0.0
642
+ */
643
+ container: ["container"],
644
+ /**
645
+ * Columns
646
+ * @see https://tailwindcss.com/docs/columns
647
+ */
648
+ columns: [{
649
+ columns: [b, a, l, p]
650
+ }],
651
+ /**
652
+ * Break After
653
+ * @see https://tailwindcss.com/docs/break-after
654
+ */
655
+ "break-after": [{
656
+ "break-after": W()
657
+ }],
658
+ /**
659
+ * Break Before
660
+ * @see https://tailwindcss.com/docs/break-before
661
+ */
662
+ "break-before": [{
663
+ "break-before": W()
664
+ }],
665
+ /**
666
+ * Break Inside
667
+ * @see https://tailwindcss.com/docs/break-inside
668
+ */
669
+ "break-inside": [{
670
+ "break-inside": ["auto", "avoid", "avoid-page", "avoid-column"]
671
+ }],
672
+ /**
673
+ * Box Decoration Break
674
+ * @see https://tailwindcss.com/docs/box-decoration-break
675
+ */
676
+ "box-decoration": [{
677
+ "box-decoration": ["slice", "clone"]
678
+ }],
679
+ /**
680
+ * Box Sizing
681
+ * @see https://tailwindcss.com/docs/box-sizing
682
+ */
683
+ box: [{
684
+ box: ["border", "content"]
685
+ }],
686
+ /**
687
+ * Display
688
+ * @see https://tailwindcss.com/docs/display
689
+ */
690
+ 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"],
691
+ /**
692
+ * Screen Reader Only
693
+ * @see https://tailwindcss.com/docs/display#screen-reader-only
694
+ */
695
+ sr: ["sr-only", "not-sr-only"],
696
+ /**
697
+ * Floats
698
+ * @see https://tailwindcss.com/docs/float
699
+ */
700
+ float: [{
701
+ float: ["right", "left", "none", "start", "end"]
702
+ }],
703
+ /**
704
+ * Clear
705
+ * @see https://tailwindcss.com/docs/clear
706
+ */
707
+ clear: [{
708
+ clear: ["left", "right", "both", "none", "start", "end"]
709
+ }],
710
+ /**
711
+ * Isolation
712
+ * @see https://tailwindcss.com/docs/isolation
713
+ */
714
+ isolation: ["isolate", "isolation-auto"],
715
+ /**
716
+ * Object Fit
717
+ * @see https://tailwindcss.com/docs/object-fit
718
+ */
719
+ "object-fit": [{
720
+ object: ["contain", "cover", "fill", "none", "scale-down"]
721
+ }],
722
+ /**
723
+ * Object Position
724
+ * @see https://tailwindcss.com/docs/object-position
725
+ */
726
+ "object-position": [{
727
+ object: F()
728
+ }],
729
+ /**
730
+ * Overflow
731
+ * @see https://tailwindcss.com/docs/overflow
732
+ */
733
+ overflow: [{
734
+ overflow: N()
735
+ }],
736
+ /**
737
+ * Overflow X
738
+ * @see https://tailwindcss.com/docs/overflow
739
+ */
740
+ "overflow-x": [{
741
+ "overflow-x": N()
742
+ }],
743
+ /**
744
+ * Overflow Y
745
+ * @see https://tailwindcss.com/docs/overflow
746
+ */
747
+ "overflow-y": [{
748
+ "overflow-y": N()
749
+ }],
750
+ /**
751
+ * Overscroll Behavior
752
+ * @see https://tailwindcss.com/docs/overscroll-behavior
753
+ */
754
+ overscroll: [{
755
+ overscroll: D()
756
+ }],
757
+ /**
758
+ * Overscroll Behavior X
759
+ * @see https://tailwindcss.com/docs/overscroll-behavior
760
+ */
761
+ "overscroll-x": [{
762
+ "overscroll-x": D()
763
+ }],
764
+ /**
765
+ * Overscroll Behavior Y
766
+ * @see https://tailwindcss.com/docs/overscroll-behavior
767
+ */
768
+ "overscroll-y": [{
769
+ "overscroll-y": D()
770
+ }],
771
+ /**
772
+ * Position
773
+ * @see https://tailwindcss.com/docs/position
774
+ */
775
+ position: ["static", "fixed", "absolute", "relative", "sticky"],
776
+ /**
777
+ * Top / Right / Bottom / Left
778
+ * @see https://tailwindcss.com/docs/top-right-bottom-left
779
+ */
780
+ inset: [{
781
+ inset: E()
782
+ }],
783
+ /**
784
+ * Right / Left
785
+ * @see https://tailwindcss.com/docs/top-right-bottom-left
786
+ */
787
+ "inset-x": [{
788
+ "inset-x": E()
789
+ }],
790
+ /**
791
+ * Top / Bottom
792
+ * @see https://tailwindcss.com/docs/top-right-bottom-left
793
+ */
794
+ "inset-y": [{
795
+ "inset-y": E()
796
+ }],
797
+ /**
798
+ * Start
799
+ * @see https://tailwindcss.com/docs/top-right-bottom-left
800
+ */
801
+ start: [{
802
+ start: E()
803
+ }],
804
+ /**
805
+ * End
806
+ * @see https://tailwindcss.com/docs/top-right-bottom-left
807
+ */
808
+ end: [{
809
+ end: E()
810
+ }],
811
+ /**
812
+ * Top
813
+ * @see https://tailwindcss.com/docs/top-right-bottom-left
814
+ */
815
+ top: [{
816
+ top: E()
817
+ }],
818
+ /**
819
+ * Right
820
+ * @see https://tailwindcss.com/docs/top-right-bottom-left
821
+ */
822
+ right: [{
823
+ right: E()
824
+ }],
825
+ /**
826
+ * Bottom
827
+ * @see https://tailwindcss.com/docs/top-right-bottom-left
828
+ */
829
+ bottom: [{
830
+ bottom: E()
831
+ }],
832
+ /**
833
+ * Left
834
+ * @see https://tailwindcss.com/docs/top-right-bottom-left
835
+ */
836
+ left: [{
837
+ left: E()
838
+ }],
839
+ /**
840
+ * Visibility
841
+ * @see https://tailwindcss.com/docs/visibility
842
+ */
843
+ visibility: ["visible", "invisible", "collapse"],
844
+ /**
845
+ * Z-Index
846
+ * @see https://tailwindcss.com/docs/z-index
847
+ */
848
+ z: [{
849
+ z: [Y, "auto", l, a]
850
+ }],
851
+ // ------------------------
852
+ // --- Flexbox and Grid ---
853
+ // ------------------------
854
+ /**
855
+ * Flex Basis
856
+ * @see https://tailwindcss.com/docs/flex-basis
857
+ */
858
+ basis: [{
859
+ basis: [X, "full", "auto", p, ...m()]
860
+ }],
861
+ /**
862
+ * Flex Direction
863
+ * @see https://tailwindcss.com/docs/flex-direction
864
+ */
865
+ "flex-direction": [{
866
+ flex: ["row", "row-reverse", "col", "col-reverse"]
867
+ }],
868
+ /**
869
+ * Flex Wrap
870
+ * @see https://tailwindcss.com/docs/flex-wrap
871
+ */
872
+ "flex-wrap": [{
873
+ flex: ["nowrap", "wrap", "wrap-reverse"]
874
+ }],
875
+ /**
876
+ * Flex
877
+ * @see https://tailwindcss.com/docs/flex
878
+ */
879
+ flex: [{
880
+ flex: [b, X, "auto", "initial", "none", a]
881
+ }],
882
+ /**
883
+ * Flex Grow
884
+ * @see https://tailwindcss.com/docs/flex-grow
885
+ */
886
+ grow: [{
887
+ grow: ["", b, l, a]
888
+ }],
889
+ /**
890
+ * Flex Shrink
891
+ * @see https://tailwindcss.com/docs/flex-shrink
892
+ */
893
+ shrink: [{
894
+ shrink: ["", b, l, a]
895
+ }],
896
+ /**
897
+ * Order
898
+ * @see https://tailwindcss.com/docs/order
899
+ */
900
+ order: [{
901
+ order: [Y, "first", "last", "none", l, a]
902
+ }],
903
+ /**
904
+ * Grid Template Columns
905
+ * @see https://tailwindcss.com/docs/grid-template-columns
906
+ */
907
+ "grid-cols": [{
908
+ "grid-cols": se()
909
+ }],
910
+ /**
911
+ * Grid Column Start / End
912
+ * @see https://tailwindcss.com/docs/grid-column
913
+ */
914
+ "col-start-end": [{
915
+ col: ae()
916
+ }],
917
+ /**
918
+ * Grid Column Start
919
+ * @see https://tailwindcss.com/docs/grid-column
920
+ */
921
+ "col-start": [{
922
+ "col-start": $()
923
+ }],
924
+ /**
925
+ * Grid Column End
926
+ * @see https://tailwindcss.com/docs/grid-column
927
+ */
928
+ "col-end": [{
929
+ "col-end": $()
930
+ }],
931
+ /**
932
+ * Grid Template Rows
933
+ * @see https://tailwindcss.com/docs/grid-template-rows
934
+ */
935
+ "grid-rows": [{
936
+ "grid-rows": se()
937
+ }],
938
+ /**
939
+ * Grid Row Start / End
940
+ * @see https://tailwindcss.com/docs/grid-row
941
+ */
942
+ "row-start-end": [{
943
+ row: ae()
944
+ }],
945
+ /**
946
+ * Grid Row Start
947
+ * @see https://tailwindcss.com/docs/grid-row
948
+ */
949
+ "row-start": [{
950
+ "row-start": $()
951
+ }],
952
+ /**
953
+ * Grid Row End
954
+ * @see https://tailwindcss.com/docs/grid-row
955
+ */
956
+ "row-end": [{
957
+ "row-end": $()
958
+ }],
959
+ /**
960
+ * Grid Auto Flow
961
+ * @see https://tailwindcss.com/docs/grid-auto-flow
962
+ */
963
+ "grid-flow": [{
964
+ "grid-flow": ["row", "col", "dense", "row-dense", "col-dense"]
965
+ }],
966
+ /**
967
+ * Grid Auto Columns
968
+ * @see https://tailwindcss.com/docs/grid-auto-columns
969
+ */
970
+ "auto-cols": [{
971
+ "auto-cols": Q()
972
+ }],
973
+ /**
974
+ * Grid Auto Rows
975
+ * @see https://tailwindcss.com/docs/grid-auto-rows
976
+ */
977
+ "auto-rows": [{
978
+ "auto-rows": Q()
979
+ }],
980
+ /**
981
+ * Gap
982
+ * @see https://tailwindcss.com/docs/gap
983
+ */
984
+ gap: [{
985
+ gap: m()
986
+ }],
987
+ /**
988
+ * Gap X
989
+ * @see https://tailwindcss.com/docs/gap
990
+ */
991
+ "gap-x": [{
992
+ "gap-x": m()
993
+ }],
994
+ /**
995
+ * Gap Y
996
+ * @see https://tailwindcss.com/docs/gap
997
+ */
998
+ "gap-y": [{
999
+ "gap-y": m()
1000
+ }],
1001
+ /**
1002
+ * Justify Content
1003
+ * @see https://tailwindcss.com/docs/justify-content
1004
+ */
1005
+ "justify-content": [{
1006
+ justify: [...K(), "normal"]
1007
+ }],
1008
+ /**
1009
+ * Justify Items
1010
+ * @see https://tailwindcss.com/docs/justify-items
1011
+ */
1012
+ "justify-items": [{
1013
+ "justify-items": [...z(), "normal"]
1014
+ }],
1015
+ /**
1016
+ * Justify Self
1017
+ * @see https://tailwindcss.com/docs/justify-self
1018
+ */
1019
+ "justify-self": [{
1020
+ "justify-self": ["auto", ...z()]
1021
+ }],
1022
+ /**
1023
+ * Align Content
1024
+ * @see https://tailwindcss.com/docs/align-content
1025
+ */
1026
+ "align-content": [{
1027
+ content: ["normal", ...K()]
1028
+ }],
1029
+ /**
1030
+ * Align Items
1031
+ * @see https://tailwindcss.com/docs/align-items
1032
+ */
1033
+ "align-items": [{
1034
+ items: [...z(), {
1035
+ baseline: ["", "last"]
1036
+ }]
1037
+ }],
1038
+ /**
1039
+ * Align Self
1040
+ * @see https://tailwindcss.com/docs/align-self
1041
+ */
1042
+ "align-self": [{
1043
+ self: ["auto", ...z(), {
1044
+ baseline: ["", "last"]
1045
+ }]
1046
+ }],
1047
+ /**
1048
+ * Place Content
1049
+ * @see https://tailwindcss.com/docs/place-content
1050
+ */
1051
+ "place-content": [{
1052
+ "place-content": K()
1053
+ }],
1054
+ /**
1055
+ * Place Items
1056
+ * @see https://tailwindcss.com/docs/place-items
1057
+ */
1058
+ "place-items": [{
1059
+ "place-items": [...z(), "baseline"]
1060
+ }],
1061
+ /**
1062
+ * Place Self
1063
+ * @see https://tailwindcss.com/docs/place-self
1064
+ */
1065
+ "place-self": [{
1066
+ "place-self": ["auto", ...z()]
1067
+ }],
1068
+ // Spacing
1069
+ /**
1070
+ * Padding
1071
+ * @see https://tailwindcss.com/docs/padding
1072
+ */
1073
+ p: [{
1074
+ p: m()
1075
+ }],
1076
+ /**
1077
+ * Padding X
1078
+ * @see https://tailwindcss.com/docs/padding
1079
+ */
1080
+ px: [{
1081
+ px: m()
1082
+ }],
1083
+ /**
1084
+ * Padding Y
1085
+ * @see https://tailwindcss.com/docs/padding
1086
+ */
1087
+ py: [{
1088
+ py: m()
1089
+ }],
1090
+ /**
1091
+ * Padding Start
1092
+ * @see https://tailwindcss.com/docs/padding
1093
+ */
1094
+ ps: [{
1095
+ ps: m()
1096
+ }],
1097
+ /**
1098
+ * Padding End
1099
+ * @see https://tailwindcss.com/docs/padding
1100
+ */
1101
+ pe: [{
1102
+ pe: m()
1103
+ }],
1104
+ /**
1105
+ * Padding Top
1106
+ * @see https://tailwindcss.com/docs/padding
1107
+ */
1108
+ pt: [{
1109
+ pt: m()
1110
+ }],
1111
+ /**
1112
+ * Padding Right
1113
+ * @see https://tailwindcss.com/docs/padding
1114
+ */
1115
+ pr: [{
1116
+ pr: m()
1117
+ }],
1118
+ /**
1119
+ * Padding Bottom
1120
+ * @see https://tailwindcss.com/docs/padding
1121
+ */
1122
+ pb: [{
1123
+ pb: m()
1124
+ }],
1125
+ /**
1126
+ * Padding Left
1127
+ * @see https://tailwindcss.com/docs/padding
1128
+ */
1129
+ pl: [{
1130
+ pl: m()
1131
+ }],
1132
+ /**
1133
+ * Margin
1134
+ * @see https://tailwindcss.com/docs/margin
1135
+ */
1136
+ m: [{
1137
+ m: C()
1138
+ }],
1139
+ /**
1140
+ * Margin X
1141
+ * @see https://tailwindcss.com/docs/margin
1142
+ */
1143
+ mx: [{
1144
+ mx: C()
1145
+ }],
1146
+ /**
1147
+ * Margin Y
1148
+ * @see https://tailwindcss.com/docs/margin
1149
+ */
1150
+ my: [{
1151
+ my: C()
1152
+ }],
1153
+ /**
1154
+ * Margin Start
1155
+ * @see https://tailwindcss.com/docs/margin
1156
+ */
1157
+ ms: [{
1158
+ ms: C()
1159
+ }],
1160
+ /**
1161
+ * Margin End
1162
+ * @see https://tailwindcss.com/docs/margin
1163
+ */
1164
+ me: [{
1165
+ me: C()
1166
+ }],
1167
+ /**
1168
+ * Margin Top
1169
+ * @see https://tailwindcss.com/docs/margin
1170
+ */
1171
+ mt: [{
1172
+ mt: C()
1173
+ }],
1174
+ /**
1175
+ * Margin Right
1176
+ * @see https://tailwindcss.com/docs/margin
1177
+ */
1178
+ mr: [{
1179
+ mr: C()
1180
+ }],
1181
+ /**
1182
+ * Margin Bottom
1183
+ * @see https://tailwindcss.com/docs/margin
1184
+ */
1185
+ mb: [{
1186
+ mb: C()
1187
+ }],
1188
+ /**
1189
+ * Margin Left
1190
+ * @see https://tailwindcss.com/docs/margin
1191
+ */
1192
+ ml: [{
1193
+ ml: C()
1194
+ }],
1195
+ /**
1196
+ * Space Between X
1197
+ * @see https://tailwindcss.com/docs/margin#adding-space-between-children
1198
+ */
1199
+ "space-x": [{
1200
+ "space-x": m()
1201
+ }],
1202
+ /**
1203
+ * Space Between X Reverse
1204
+ * @see https://tailwindcss.com/docs/margin#adding-space-between-children
1205
+ */
1206
+ "space-x-reverse": ["space-x-reverse"],
1207
+ /**
1208
+ * Space Between Y
1209
+ * @see https://tailwindcss.com/docs/margin#adding-space-between-children
1210
+ */
1211
+ "space-y": [{
1212
+ "space-y": m()
1213
+ }],
1214
+ /**
1215
+ * Space Between Y Reverse
1216
+ * @see https://tailwindcss.com/docs/margin#adding-space-between-children
1217
+ */
1218
+ "space-y-reverse": ["space-y-reverse"],
1219
+ // --------------
1220
+ // --- Sizing ---
1221
+ // --------------
1222
+ /**
1223
+ * Size
1224
+ * @see https://tailwindcss.com/docs/width#setting-both-width-and-height
1225
+ */
1226
+ size: [{
1227
+ size: P()
1228
+ }],
1229
+ /**
1230
+ * Width
1231
+ * @see https://tailwindcss.com/docs/width
1232
+ */
1233
+ w: [{
1234
+ w: [p, "screen", ...P()]
1235
+ }],
1236
+ /**
1237
+ * Min-Width
1238
+ * @see https://tailwindcss.com/docs/min-width
1239
+ */
1240
+ "min-w": [{
1241
+ "min-w": [
1242
+ p,
1243
+ "screen",
1244
+ /** Deprecated. @see https://github.com/tailwindlabs/tailwindcss.com/issues/2027#issuecomment-2620152757 */
1245
+ "none",
1246
+ ...P()
1247
+ ]
1248
+ }],
1249
+ /**
1250
+ * Max-Width
1251
+ * @see https://tailwindcss.com/docs/max-width
1252
+ */
1253
+ "max-w": [{
1254
+ "max-w": [
1255
+ p,
1256
+ "screen",
1257
+ "none",
1258
+ /** Deprecated since Tailwind CSS v4.0.0. @see https://github.com/tailwindlabs/tailwindcss.com/issues/2027#issuecomment-2620152757 */
1259
+ "prose",
1260
+ /** Deprecated since Tailwind CSS v4.0.0. @see https://github.com/tailwindlabs/tailwindcss.com/issues/2027#issuecomment-2620152757 */
1261
+ {
1262
+ screen: [i]
1263
+ },
1264
+ ...P()
1265
+ ]
1266
+ }],
1267
+ /**
1268
+ * Height
1269
+ * @see https://tailwindcss.com/docs/height
1270
+ */
1271
+ h: [{
1272
+ h: ["screen", "lh", ...P()]
1273
+ }],
1274
+ /**
1275
+ * Min-Height
1276
+ * @see https://tailwindcss.com/docs/min-height
1277
+ */
1278
+ "min-h": [{
1279
+ "min-h": ["screen", "lh", "none", ...P()]
1280
+ }],
1281
+ /**
1282
+ * Max-Height
1283
+ * @see https://tailwindcss.com/docs/max-height
1284
+ */
1285
+ "max-h": [{
1286
+ "max-h": ["screen", "lh", ...P()]
1287
+ }],
1288
+ // ------------------
1289
+ // --- Typography ---
1290
+ // ------------------
1291
+ /**
1292
+ * Font Size
1293
+ * @see https://tailwindcss.com/docs/font-size
1294
+ */
1295
+ "font-size": [{
1296
+ text: ["base", o, ne, U]
1297
+ }],
1298
+ /**
1299
+ * Font Smoothing
1300
+ * @see https://tailwindcss.com/docs/font-smoothing
1301
+ */
1302
+ "font-smoothing": ["antialiased", "subpixel-antialiased"],
1303
+ /**
1304
+ * Font Style
1305
+ * @see https://tailwindcss.com/docs/font-style
1306
+ */
1307
+ "font-style": ["italic", "not-italic"],
1308
+ /**
1309
+ * Font Weight
1310
+ * @see https://tailwindcss.com/docs/font-weight
1311
+ */
1312
+ "font-weight": [{
1313
+ font: [t, l, pe]
1314
+ }],
1315
+ /**
1316
+ * Font Stretch
1317
+ * @see https://tailwindcss.com/docs/font-stretch
1318
+ */
1319
+ "font-stretch": [{
1320
+ "font-stretch": ["ultra-condensed", "extra-condensed", "condensed", "semi-condensed", "normal", "semi-expanded", "expanded", "extra-expanded", "ultra-expanded", fe, a]
1321
+ }],
1322
+ /**
1323
+ * Font Family
1324
+ * @see https://tailwindcss.com/docs/font-family
1325
+ */
1326
+ "font-family": [{
1327
+ font: [jr, a, n]
1328
+ }],
1329
+ /**
1330
+ * Font Variant Numeric
1331
+ * @see https://tailwindcss.com/docs/font-variant-numeric
1332
+ */
1333
+ "fvn-normal": ["normal-nums"],
1334
+ /**
1335
+ * Font Variant Numeric
1336
+ * @see https://tailwindcss.com/docs/font-variant-numeric
1337
+ */
1338
+ "fvn-ordinal": ["ordinal"],
1339
+ /**
1340
+ * Font Variant Numeric
1341
+ * @see https://tailwindcss.com/docs/font-variant-numeric
1342
+ */
1343
+ "fvn-slashed-zero": ["slashed-zero"],
1344
+ /**
1345
+ * Font Variant Numeric
1346
+ * @see https://tailwindcss.com/docs/font-variant-numeric
1347
+ */
1348
+ "fvn-figure": ["lining-nums", "oldstyle-nums"],
1349
+ /**
1350
+ * Font Variant Numeric
1351
+ * @see https://tailwindcss.com/docs/font-variant-numeric
1352
+ */
1353
+ "fvn-spacing": ["proportional-nums", "tabular-nums"],
1354
+ /**
1355
+ * Font Variant Numeric
1356
+ * @see https://tailwindcss.com/docs/font-variant-numeric
1357
+ */
1358
+ "fvn-fraction": ["diagonal-fractions", "stacked-fractions"],
1359
+ /**
1360
+ * Letter Spacing
1361
+ * @see https://tailwindcss.com/docs/letter-spacing
1362
+ */
1363
+ tracking: [{
1364
+ tracking: [s, l, a]
1365
+ }],
1366
+ /**
1367
+ * Line Clamp
1368
+ * @see https://tailwindcss.com/docs/line-clamp
1369
+ */
1370
+ "line-clamp": [{
1371
+ "line-clamp": [b, "none", l, pe]
1372
+ }],
1373
+ /**
1374
+ * Line Height
1375
+ * @see https://tailwindcss.com/docs/line-height
1376
+ */
1377
+ leading: [{
1378
+ leading: [
1379
+ /** Deprecated since Tailwind CSS v4.0.0. @see https://github.com/tailwindlabs/tailwindcss.com/issues/2027#issuecomment-2620152757 */
1380
+ c,
1381
+ ...m()
1382
+ ]
1383
+ }],
1384
+ /**
1385
+ * List Style Image
1386
+ * @see https://tailwindcss.com/docs/list-style-image
1387
+ */
1388
+ "list-image": [{
1389
+ "list-image": ["none", l, a]
1390
+ }],
1391
+ /**
1392
+ * List Style Position
1393
+ * @see https://tailwindcss.com/docs/list-style-position
1394
+ */
1395
+ "list-style-position": [{
1396
+ list: ["inside", "outside"]
1397
+ }],
1398
+ /**
1399
+ * List Style Type
1400
+ * @see https://tailwindcss.com/docs/list-style-type
1401
+ */
1402
+ "list-style-type": [{
1403
+ list: ["disc", "decimal", "none", l, a]
1404
+ }],
1405
+ /**
1406
+ * Text Alignment
1407
+ * @see https://tailwindcss.com/docs/text-align
1408
+ */
1409
+ "text-alignment": [{
1410
+ text: ["left", "center", "right", "justify", "start", "end"]
1411
+ }],
1412
+ /**
1413
+ * Placeholder Color
1414
+ * @deprecated since Tailwind CSS v3.0.0
1415
+ * @see https://v3.tailwindcss.com/docs/placeholder-color
1416
+ */
1417
+ "placeholder-color": [{
1418
+ placeholder: d()
1419
+ }],
1420
+ /**
1421
+ * Text Color
1422
+ * @see https://tailwindcss.com/docs/text-color
1423
+ */
1424
+ "text-color": [{
1425
+ text: d()
1426
+ }],
1427
+ /**
1428
+ * Text Decoration
1429
+ * @see https://tailwindcss.com/docs/text-decoration
1430
+ */
1431
+ "text-decoration": ["underline", "overline", "line-through", "no-underline"],
1432
+ /**
1433
+ * Text Decoration Style
1434
+ * @see https://tailwindcss.com/docs/text-decoration-style
1435
+ */
1436
+ "text-decoration-style": [{
1437
+ decoration: [...I(), "wavy"]
1438
+ }],
1439
+ /**
1440
+ * Text Decoration Thickness
1441
+ * @see https://tailwindcss.com/docs/text-decoration-thickness
1442
+ */
1443
+ "text-decoration-thickness": [{
1444
+ decoration: [b, "from-font", "auto", l, U]
1445
+ }],
1446
+ /**
1447
+ * Text Decoration Color
1448
+ * @see https://tailwindcss.com/docs/text-decoration-color
1449
+ */
1450
+ "text-decoration-color": [{
1451
+ decoration: d()
1452
+ }],
1453
+ /**
1454
+ * Text Underline Offset
1455
+ * @see https://tailwindcss.com/docs/text-underline-offset
1456
+ */
1457
+ "underline-offset": [{
1458
+ "underline-offset": [b, "auto", l, a]
1459
+ }],
1460
+ /**
1461
+ * Text Transform
1462
+ * @see https://tailwindcss.com/docs/text-transform
1463
+ */
1464
+ "text-transform": ["uppercase", "lowercase", "capitalize", "normal-case"],
1465
+ /**
1466
+ * Text Overflow
1467
+ * @see https://tailwindcss.com/docs/text-overflow
1468
+ */
1469
+ "text-overflow": ["truncate", "text-ellipsis", "text-clip"],
1470
+ /**
1471
+ * Text Wrap
1472
+ * @see https://tailwindcss.com/docs/text-wrap
1473
+ */
1474
+ "text-wrap": [{
1475
+ text: ["wrap", "nowrap", "balance", "pretty"]
1476
+ }],
1477
+ /**
1478
+ * Text Indent
1479
+ * @see https://tailwindcss.com/docs/text-indent
1480
+ */
1481
+ indent: [{
1482
+ indent: m()
1483
+ }],
1484
+ /**
1485
+ * Vertical Alignment
1486
+ * @see https://tailwindcss.com/docs/vertical-align
1487
+ */
1488
+ "vertical-align": [{
1489
+ align: ["baseline", "top", "middle", "bottom", "text-top", "text-bottom", "sub", "super", l, a]
1490
+ }],
1491
+ /**
1492
+ * Whitespace
1493
+ * @see https://tailwindcss.com/docs/whitespace
1494
+ */
1495
+ whitespace: [{
1496
+ whitespace: ["normal", "nowrap", "pre", "pre-line", "pre-wrap", "break-spaces"]
1497
+ }],
1498
+ /**
1499
+ * Word Break
1500
+ * @see https://tailwindcss.com/docs/word-break
1501
+ */
1502
+ break: [{
1503
+ break: ["normal", "words", "all", "keep"]
1504
+ }],
1505
+ /**
1506
+ * Overflow Wrap
1507
+ * @see https://tailwindcss.com/docs/overflow-wrap
1508
+ */
1509
+ wrap: [{
1510
+ wrap: ["break-word", "anywhere", "normal"]
1511
+ }],
1512
+ /**
1513
+ * Hyphens
1514
+ * @see https://tailwindcss.com/docs/hyphens
1515
+ */
1516
+ hyphens: [{
1517
+ hyphens: ["none", "manual", "auto"]
1518
+ }],
1519
+ /**
1520
+ * Content
1521
+ * @see https://tailwindcss.com/docs/content
1522
+ */
1523
+ content: [{
1524
+ content: ["none", l, a]
1525
+ }],
1526
+ // -------------------
1527
+ // --- Backgrounds ---
1528
+ // -------------------
1529
+ /**
1530
+ * Background Attachment
1531
+ * @see https://tailwindcss.com/docs/background-attachment
1532
+ */
1533
+ "bg-attachment": [{
1534
+ bg: ["fixed", "local", "scroll"]
1535
+ }],
1536
+ /**
1537
+ * Background Clip
1538
+ * @see https://tailwindcss.com/docs/background-clip
1539
+ */
1540
+ "bg-clip": [{
1541
+ "bg-clip": ["border", "padding", "content", "text"]
1542
+ }],
1543
+ /**
1544
+ * Background Origin
1545
+ * @see https://tailwindcss.com/docs/background-origin
1546
+ */
1547
+ "bg-origin": [{
1548
+ "bg-origin": ["border", "padding", "content"]
1549
+ }],
1550
+ /**
1551
+ * Background Position
1552
+ * @see https://tailwindcss.com/docs/background-position
1553
+ */
1554
+ "bg-position": [{
1555
+ bg: ee()
1556
+ }],
1557
+ /**
1558
+ * Background Repeat
1559
+ * @see https://tailwindcss.com/docs/background-repeat
1560
+ */
1561
+ "bg-repeat": [{
1562
+ bg: re()
1563
+ }],
1564
+ /**
1565
+ * Background Size
1566
+ * @see https://tailwindcss.com/docs/background-size
1567
+ */
1568
+ "bg-size": [{
1569
+ bg: r()
1570
+ }],
1571
+ /**
1572
+ * Background Image
1573
+ * @see https://tailwindcss.com/docs/background-image
1574
+ */
1575
+ "bg-image": [{
1576
+ bg: ["none", {
1577
+ linear: [{
1578
+ to: ["t", "tr", "r", "br", "b", "bl", "l", "tl"]
1579
+ }, Y, l, a],
1580
+ radial: ["", l, a],
1581
+ conic: [Y, l, a]
1582
+ }, Pr, Cr]
1583
+ }],
1584
+ /**
1585
+ * Background Color
1586
+ * @see https://tailwindcss.com/docs/background-color
1587
+ */
1588
+ "bg-color": [{
1589
+ bg: d()
1590
+ }],
1591
+ /**
1592
+ * Gradient Color Stops From Position
1593
+ * @see https://tailwindcss.com/docs/gradient-color-stops
1594
+ */
1595
+ "gradient-from-pos": [{
1596
+ from: f()
1597
+ }],
1598
+ /**
1599
+ * Gradient Color Stops Via Position
1600
+ * @see https://tailwindcss.com/docs/gradient-color-stops
1601
+ */
1602
+ "gradient-via-pos": [{
1603
+ via: f()
1604
+ }],
1605
+ /**
1606
+ * Gradient Color Stops To Position
1607
+ * @see https://tailwindcss.com/docs/gradient-color-stops
1608
+ */
1609
+ "gradient-to-pos": [{
1610
+ to: f()
1611
+ }],
1612
+ /**
1613
+ * Gradient Color Stops From
1614
+ * @see https://tailwindcss.com/docs/gradient-color-stops
1615
+ */
1616
+ "gradient-from": [{
1617
+ from: d()
1618
+ }],
1619
+ /**
1620
+ * Gradient Color Stops Via
1621
+ * @see https://tailwindcss.com/docs/gradient-color-stops
1622
+ */
1623
+ "gradient-via": [{
1624
+ via: d()
1625
+ }],
1626
+ /**
1627
+ * Gradient Color Stops To
1628
+ * @see https://tailwindcss.com/docs/gradient-color-stops
1629
+ */
1630
+ "gradient-to": [{
1631
+ to: d()
1632
+ }],
1633
+ // ---------------
1634
+ // --- Borders ---
1635
+ // ---------------
1636
+ /**
1637
+ * Border Radius
1638
+ * @see https://tailwindcss.com/docs/border-radius
1639
+ */
1640
+ rounded: [{
1641
+ rounded: g()
1642
+ }],
1643
+ /**
1644
+ * Border Radius Start
1645
+ * @see https://tailwindcss.com/docs/border-radius
1646
+ */
1647
+ "rounded-s": [{
1648
+ "rounded-s": g()
1649
+ }],
1650
+ /**
1651
+ * Border Radius End
1652
+ * @see https://tailwindcss.com/docs/border-radius
1653
+ */
1654
+ "rounded-e": [{
1655
+ "rounded-e": g()
1656
+ }],
1657
+ /**
1658
+ * Border Radius Top
1659
+ * @see https://tailwindcss.com/docs/border-radius
1660
+ */
1661
+ "rounded-t": [{
1662
+ "rounded-t": g()
1663
+ }],
1664
+ /**
1665
+ * Border Radius Right
1666
+ * @see https://tailwindcss.com/docs/border-radius
1667
+ */
1668
+ "rounded-r": [{
1669
+ "rounded-r": g()
1670
+ }],
1671
+ /**
1672
+ * Border Radius Bottom
1673
+ * @see https://tailwindcss.com/docs/border-radius
1674
+ */
1675
+ "rounded-b": [{
1676
+ "rounded-b": g()
1677
+ }],
1678
+ /**
1679
+ * Border Radius Left
1680
+ * @see https://tailwindcss.com/docs/border-radius
1681
+ */
1682
+ "rounded-l": [{
1683
+ "rounded-l": g()
1684
+ }],
1685
+ /**
1686
+ * Border Radius Start Start
1687
+ * @see https://tailwindcss.com/docs/border-radius
1688
+ */
1689
+ "rounded-ss": [{
1690
+ "rounded-ss": g()
1691
+ }],
1692
+ /**
1693
+ * Border Radius Start End
1694
+ * @see https://tailwindcss.com/docs/border-radius
1695
+ */
1696
+ "rounded-se": [{
1697
+ "rounded-se": g()
1698
+ }],
1699
+ /**
1700
+ * Border Radius End End
1701
+ * @see https://tailwindcss.com/docs/border-radius
1702
+ */
1703
+ "rounded-ee": [{
1704
+ "rounded-ee": g()
1705
+ }],
1706
+ /**
1707
+ * Border Radius End Start
1708
+ * @see https://tailwindcss.com/docs/border-radius
1709
+ */
1710
+ "rounded-es": [{
1711
+ "rounded-es": g()
1712
+ }],
1713
+ /**
1714
+ * Border Radius Top Left
1715
+ * @see https://tailwindcss.com/docs/border-radius
1716
+ */
1717
+ "rounded-tl": [{
1718
+ "rounded-tl": g()
1719
+ }],
1720
+ /**
1721
+ * Border Radius Top Right
1722
+ * @see https://tailwindcss.com/docs/border-radius
1723
+ */
1724
+ "rounded-tr": [{
1725
+ "rounded-tr": g()
1726
+ }],
1727
+ /**
1728
+ * Border Radius Bottom Right
1729
+ * @see https://tailwindcss.com/docs/border-radius
1730
+ */
1731
+ "rounded-br": [{
1732
+ "rounded-br": g()
1733
+ }],
1734
+ /**
1735
+ * Border Radius Bottom Left
1736
+ * @see https://tailwindcss.com/docs/border-radius
1737
+ */
1738
+ "rounded-bl": [{
1739
+ "rounded-bl": g()
1740
+ }],
1741
+ /**
1742
+ * Border Width
1743
+ * @see https://tailwindcss.com/docs/border-width
1744
+ */
1745
+ "border-w": [{
1746
+ border: x()
1747
+ }],
1748
+ /**
1749
+ * Border Width X
1750
+ * @see https://tailwindcss.com/docs/border-width
1751
+ */
1752
+ "border-w-x": [{
1753
+ "border-x": x()
1754
+ }],
1755
+ /**
1756
+ * Border Width Y
1757
+ * @see https://tailwindcss.com/docs/border-width
1758
+ */
1759
+ "border-w-y": [{
1760
+ "border-y": x()
1761
+ }],
1762
+ /**
1763
+ * Border Width Start
1764
+ * @see https://tailwindcss.com/docs/border-width
1765
+ */
1766
+ "border-w-s": [{
1767
+ "border-s": x()
1768
+ }],
1769
+ /**
1770
+ * Border Width End
1771
+ * @see https://tailwindcss.com/docs/border-width
1772
+ */
1773
+ "border-w-e": [{
1774
+ "border-e": x()
1775
+ }],
1776
+ /**
1777
+ * Border Width Top
1778
+ * @see https://tailwindcss.com/docs/border-width
1779
+ */
1780
+ "border-w-t": [{
1781
+ "border-t": x()
1782
+ }],
1783
+ /**
1784
+ * Border Width Right
1785
+ * @see https://tailwindcss.com/docs/border-width
1786
+ */
1787
+ "border-w-r": [{
1788
+ "border-r": x()
1789
+ }],
1790
+ /**
1791
+ * Border Width Bottom
1792
+ * @see https://tailwindcss.com/docs/border-width
1793
+ */
1794
+ "border-w-b": [{
1795
+ "border-b": x()
1796
+ }],
1797
+ /**
1798
+ * Border Width Left
1799
+ * @see https://tailwindcss.com/docs/border-width
1800
+ */
1801
+ "border-w-l": [{
1802
+ "border-l": x()
1803
+ }],
1804
+ /**
1805
+ * Divide Width X
1806
+ * @see https://tailwindcss.com/docs/border-width#between-children
1807
+ */
1808
+ "divide-x": [{
1809
+ "divide-x": x()
1810
+ }],
1811
+ /**
1812
+ * Divide Width X Reverse
1813
+ * @see https://tailwindcss.com/docs/border-width#between-children
1814
+ */
1815
+ "divide-x-reverse": ["divide-x-reverse"],
1816
+ /**
1817
+ * Divide Width Y
1818
+ * @see https://tailwindcss.com/docs/border-width#between-children
1819
+ */
1820
+ "divide-y": [{
1821
+ "divide-y": x()
1822
+ }],
1823
+ /**
1824
+ * Divide Width Y Reverse
1825
+ * @see https://tailwindcss.com/docs/border-width#between-children
1826
+ */
1827
+ "divide-y-reverse": ["divide-y-reverse"],
1828
+ /**
1829
+ * Border Style
1830
+ * @see https://tailwindcss.com/docs/border-style
1831
+ */
1832
+ "border-style": [{
1833
+ border: [...I(), "hidden", "none"]
1834
+ }],
1835
+ /**
1836
+ * Divide Style
1837
+ * @see https://tailwindcss.com/docs/border-style#setting-the-divider-style
1838
+ */
1839
+ "divide-style": [{
1840
+ divide: [...I(), "hidden", "none"]
1841
+ }],
1842
+ /**
1843
+ * Border Color
1844
+ * @see https://tailwindcss.com/docs/border-color
1845
+ */
1846
+ "border-color": [{
1847
+ border: d()
1848
+ }],
1849
+ /**
1850
+ * Border Color X
1851
+ * @see https://tailwindcss.com/docs/border-color
1852
+ */
1853
+ "border-color-x": [{
1854
+ "border-x": d()
1855
+ }],
1856
+ /**
1857
+ * Border Color Y
1858
+ * @see https://tailwindcss.com/docs/border-color
1859
+ */
1860
+ "border-color-y": [{
1861
+ "border-y": d()
1862
+ }],
1863
+ /**
1864
+ * Border Color S
1865
+ * @see https://tailwindcss.com/docs/border-color
1866
+ */
1867
+ "border-color-s": [{
1868
+ "border-s": d()
1869
+ }],
1870
+ /**
1871
+ * Border Color E
1872
+ * @see https://tailwindcss.com/docs/border-color
1873
+ */
1874
+ "border-color-e": [{
1875
+ "border-e": d()
1876
+ }],
1877
+ /**
1878
+ * Border Color Top
1879
+ * @see https://tailwindcss.com/docs/border-color
1880
+ */
1881
+ "border-color-t": [{
1882
+ "border-t": d()
1883
+ }],
1884
+ /**
1885
+ * Border Color Right
1886
+ * @see https://tailwindcss.com/docs/border-color
1887
+ */
1888
+ "border-color-r": [{
1889
+ "border-r": d()
1890
+ }],
1891
+ /**
1892
+ * Border Color Bottom
1893
+ * @see https://tailwindcss.com/docs/border-color
1894
+ */
1895
+ "border-color-b": [{
1896
+ "border-b": d()
1897
+ }],
1898
+ /**
1899
+ * Border Color Left
1900
+ * @see https://tailwindcss.com/docs/border-color
1901
+ */
1902
+ "border-color-l": [{
1903
+ "border-l": d()
1904
+ }],
1905
+ /**
1906
+ * Divide Color
1907
+ * @see https://tailwindcss.com/docs/divide-color
1908
+ */
1909
+ "divide-color": [{
1910
+ divide: d()
1911
+ }],
1912
+ /**
1913
+ * Outline Style
1914
+ * @see https://tailwindcss.com/docs/outline-style
1915
+ */
1916
+ "outline-style": [{
1917
+ outline: [...I(), "none", "hidden"]
1918
+ }],
1919
+ /**
1920
+ * Outline Offset
1921
+ * @see https://tailwindcss.com/docs/outline-offset
1922
+ */
1923
+ "outline-offset": [{
1924
+ "outline-offset": [b, l, a]
1925
+ }],
1926
+ /**
1927
+ * Outline Width
1928
+ * @see https://tailwindcss.com/docs/outline-width
1929
+ */
1930
+ "outline-w": [{
1931
+ outline: ["", b, ne, U]
1932
+ }],
1933
+ /**
1934
+ * Outline Color
1935
+ * @see https://tailwindcss.com/docs/outline-color
1936
+ */
1937
+ "outline-color": [{
1938
+ outline: d()
1939
+ }],
1940
+ // ---------------
1941
+ // --- Effects ---
1942
+ // ---------------
1943
+ /**
1944
+ * Box Shadow
1945
+ * @see https://tailwindcss.com/docs/box-shadow
1946
+ */
1947
+ shadow: [{
1948
+ shadow: [
1949
+ // Deprecated since Tailwind CSS v4.0.0
1950
+ "",
1951
+ "none",
1952
+ w,
1953
+ de,
1954
+ ce
1955
+ ]
1956
+ }],
1957
+ /**
1958
+ * Box Shadow Color
1959
+ * @see https://tailwindcss.com/docs/box-shadow#setting-the-shadow-color
1960
+ */
1961
+ "shadow-color": [{
1962
+ shadow: d()
1963
+ }],
1964
+ /**
1965
+ * Inset Box Shadow
1966
+ * @see https://tailwindcss.com/docs/box-shadow#adding-an-inset-shadow
1967
+ */
1968
+ "inset-shadow": [{
1969
+ "inset-shadow": ["none", y, de, ce]
1970
+ }],
1971
+ /**
1972
+ * Inset Box Shadow Color
1973
+ * @see https://tailwindcss.com/docs/box-shadow#setting-the-inset-shadow-color
1974
+ */
1975
+ "inset-shadow-color": [{
1976
+ "inset-shadow": d()
1977
+ }],
1978
+ /**
1979
+ * Ring Width
1980
+ * @see https://tailwindcss.com/docs/box-shadow#adding-a-ring
1981
+ */
1982
+ "ring-w": [{
1983
+ ring: x()
1984
+ }],
1985
+ /**
1986
+ * Ring Width Inset
1987
+ * @see https://v3.tailwindcss.com/docs/ring-width#inset-rings
1988
+ * @deprecated since Tailwind CSS v4.0.0
1989
+ * @see https://github.com/tailwindlabs/tailwindcss/blob/v4.0.0/packages/tailwindcss/src/utilities.ts#L4158
1990
+ */
1991
+ "ring-w-inset": ["ring-inset"],
1992
+ /**
1993
+ * Ring Color
1994
+ * @see https://tailwindcss.com/docs/box-shadow#setting-the-ring-color
1995
+ */
1996
+ "ring-color": [{
1997
+ ring: d()
1998
+ }],
1999
+ /**
2000
+ * Ring Offset Width
2001
+ * @see https://v3.tailwindcss.com/docs/ring-offset-width
2002
+ * @deprecated since Tailwind CSS v4.0.0
2003
+ * @see https://github.com/tailwindlabs/tailwindcss/blob/v4.0.0/packages/tailwindcss/src/utilities.ts#L4158
2004
+ */
2005
+ "ring-offset-w": [{
2006
+ "ring-offset": [b, U]
2007
+ }],
2008
+ /**
2009
+ * Ring Offset Color
2010
+ * @see https://v3.tailwindcss.com/docs/ring-offset-color
2011
+ * @deprecated since Tailwind CSS v4.0.0
2012
+ * @see https://github.com/tailwindlabs/tailwindcss/blob/v4.0.0/packages/tailwindcss/src/utilities.ts#L4158
2013
+ */
2014
+ "ring-offset-color": [{
2015
+ "ring-offset": d()
2016
+ }],
2017
+ /**
2018
+ * Inset Ring Width
2019
+ * @see https://tailwindcss.com/docs/box-shadow#adding-an-inset-ring
2020
+ */
2021
+ "inset-ring-w": [{
2022
+ "inset-ring": x()
2023
+ }],
2024
+ /**
2025
+ * Inset Ring Color
2026
+ * @see https://tailwindcss.com/docs/box-shadow#setting-the-inset-ring-color
2027
+ */
2028
+ "inset-ring-color": [{
2029
+ "inset-ring": d()
2030
+ }],
2031
+ /**
2032
+ * Text Shadow
2033
+ * @see https://tailwindcss.com/docs/text-shadow
2034
+ */
2035
+ "text-shadow": [{
2036
+ "text-shadow": ["none", _, de, ce]
2037
+ }],
2038
+ /**
2039
+ * Text Shadow Color
2040
+ * @see https://tailwindcss.com/docs/text-shadow#setting-the-shadow-color
2041
+ */
2042
+ "text-shadow-color": [{
2043
+ "text-shadow": d()
2044
+ }],
2045
+ /**
2046
+ * Opacity
2047
+ * @see https://tailwindcss.com/docs/opacity
2048
+ */
2049
+ opacity: [{
2050
+ opacity: [b, l, a]
2051
+ }],
2052
+ /**
2053
+ * Mix Blend Mode
2054
+ * @see https://tailwindcss.com/docs/mix-blend-mode
2055
+ */
2056
+ "mix-blend": [{
2057
+ "mix-blend": [...q(), "plus-darker", "plus-lighter"]
2058
+ }],
2059
+ /**
2060
+ * Background Blend Mode
2061
+ * @see https://tailwindcss.com/docs/background-blend-mode
2062
+ */
2063
+ "bg-blend": [{
2064
+ "bg-blend": q()
2065
+ }],
2066
+ /**
2067
+ * Mask Clip
2068
+ * @see https://tailwindcss.com/docs/mask-clip
2069
+ */
2070
+ "mask-clip": [{
2071
+ "mask-clip": ["border", "padding", "content", "fill", "stroke", "view"]
2072
+ }, "mask-no-clip"],
2073
+ /**
2074
+ * Mask Composite
2075
+ * @see https://tailwindcss.com/docs/mask-composite
2076
+ */
2077
+ "mask-composite": [{
2078
+ mask: ["add", "subtract", "intersect", "exclude"]
2079
+ }],
2080
+ /**
2081
+ * Mask Image
2082
+ * @see https://tailwindcss.com/docs/mask-image
2083
+ */
2084
+ "mask-image-linear-pos": [{
2085
+ "mask-linear": [b]
2086
+ }],
2087
+ "mask-image-linear-from-pos": [{
2088
+ "mask-linear-from": h()
2089
+ }],
2090
+ "mask-image-linear-to-pos": [{
2091
+ "mask-linear-to": h()
2092
+ }],
2093
+ "mask-image-linear-from-color": [{
2094
+ "mask-linear-from": d()
2095
+ }],
2096
+ "mask-image-linear-to-color": [{
2097
+ "mask-linear-to": d()
2098
+ }],
2099
+ "mask-image-t-from-pos": [{
2100
+ "mask-t-from": h()
2101
+ }],
2102
+ "mask-image-t-to-pos": [{
2103
+ "mask-t-to": h()
2104
+ }],
2105
+ "mask-image-t-from-color": [{
2106
+ "mask-t-from": d()
2107
+ }],
2108
+ "mask-image-t-to-color": [{
2109
+ "mask-t-to": d()
2110
+ }],
2111
+ "mask-image-r-from-pos": [{
2112
+ "mask-r-from": h()
2113
+ }],
2114
+ "mask-image-r-to-pos": [{
2115
+ "mask-r-to": h()
2116
+ }],
2117
+ "mask-image-r-from-color": [{
2118
+ "mask-r-from": d()
2119
+ }],
2120
+ "mask-image-r-to-color": [{
2121
+ "mask-r-to": d()
2122
+ }],
2123
+ "mask-image-b-from-pos": [{
2124
+ "mask-b-from": h()
2125
+ }],
2126
+ "mask-image-b-to-pos": [{
2127
+ "mask-b-to": h()
2128
+ }],
2129
+ "mask-image-b-from-color": [{
2130
+ "mask-b-from": d()
2131
+ }],
2132
+ "mask-image-b-to-color": [{
2133
+ "mask-b-to": d()
2134
+ }],
2135
+ "mask-image-l-from-pos": [{
2136
+ "mask-l-from": h()
2137
+ }],
2138
+ "mask-image-l-to-pos": [{
2139
+ "mask-l-to": h()
2140
+ }],
2141
+ "mask-image-l-from-color": [{
2142
+ "mask-l-from": d()
2143
+ }],
2144
+ "mask-image-l-to-color": [{
2145
+ "mask-l-to": d()
2146
+ }],
2147
+ "mask-image-x-from-pos": [{
2148
+ "mask-x-from": h()
2149
+ }],
2150
+ "mask-image-x-to-pos": [{
2151
+ "mask-x-to": h()
2152
+ }],
2153
+ "mask-image-x-from-color": [{
2154
+ "mask-x-from": d()
2155
+ }],
2156
+ "mask-image-x-to-color": [{
2157
+ "mask-x-to": d()
2158
+ }],
2159
+ "mask-image-y-from-pos": [{
2160
+ "mask-y-from": h()
2161
+ }],
2162
+ "mask-image-y-to-pos": [{
2163
+ "mask-y-to": h()
2164
+ }],
2165
+ "mask-image-y-from-color": [{
2166
+ "mask-y-from": d()
2167
+ }],
2168
+ "mask-image-y-to-color": [{
2169
+ "mask-y-to": d()
2170
+ }],
2171
+ "mask-image-radial": [{
2172
+ "mask-radial": [l, a]
2173
+ }],
2174
+ "mask-image-radial-from-pos": [{
2175
+ "mask-radial-from": h()
2176
+ }],
2177
+ "mask-image-radial-to-pos": [{
2178
+ "mask-radial-to": h()
2179
+ }],
2180
+ "mask-image-radial-from-color": [{
2181
+ "mask-radial-from": d()
2182
+ }],
2183
+ "mask-image-radial-to-color": [{
2184
+ "mask-radial-to": d()
2185
+ }],
2186
+ "mask-image-radial-shape": [{
2187
+ "mask-radial": ["circle", "ellipse"]
2188
+ }],
2189
+ "mask-image-radial-size": [{
2190
+ "mask-radial": [{
2191
+ closest: ["side", "corner"],
2192
+ farthest: ["side", "corner"]
2193
+ }]
2194
+ }],
2195
+ "mask-image-radial-pos": [{
2196
+ "mask-radial-at": L()
2197
+ }],
2198
+ "mask-image-conic-pos": [{
2199
+ "mask-conic": [b]
2200
+ }],
2201
+ "mask-image-conic-from-pos": [{
2202
+ "mask-conic-from": h()
2203
+ }],
2204
+ "mask-image-conic-to-pos": [{
2205
+ "mask-conic-to": h()
2206
+ }],
2207
+ "mask-image-conic-from-color": [{
2208
+ "mask-conic-from": d()
2209
+ }],
2210
+ "mask-image-conic-to-color": [{
2211
+ "mask-conic-to": d()
2212
+ }],
2213
+ /**
2214
+ * Mask Mode
2215
+ * @see https://tailwindcss.com/docs/mask-mode
2216
+ */
2217
+ "mask-mode": [{
2218
+ mask: ["alpha", "luminance", "match"]
2219
+ }],
2220
+ /**
2221
+ * Mask Origin
2222
+ * @see https://tailwindcss.com/docs/mask-origin
2223
+ */
2224
+ "mask-origin": [{
2225
+ "mask-origin": ["border", "padding", "content", "fill", "stroke", "view"]
2226
+ }],
2227
+ /**
2228
+ * Mask Position
2229
+ * @see https://tailwindcss.com/docs/mask-position
2230
+ */
2231
+ "mask-position": [{
2232
+ mask: ee()
2233
+ }],
2234
+ /**
2235
+ * Mask Repeat
2236
+ * @see https://tailwindcss.com/docs/mask-repeat
2237
+ */
2238
+ "mask-repeat": [{
2239
+ mask: re()
2240
+ }],
2241
+ /**
2242
+ * Mask Size
2243
+ * @see https://tailwindcss.com/docs/mask-size
2244
+ */
2245
+ "mask-size": [{
2246
+ mask: r()
2247
+ }],
2248
+ /**
2249
+ * Mask Type
2250
+ * @see https://tailwindcss.com/docs/mask-type
2251
+ */
2252
+ "mask-type": [{
2253
+ "mask-type": ["alpha", "luminance"]
2254
+ }],
2255
+ /**
2256
+ * Mask Image
2257
+ * @see https://tailwindcss.com/docs/mask-image
2258
+ */
2259
+ "mask-image": [{
2260
+ mask: ["none", l, a]
2261
+ }],
2262
+ // ---------------
2263
+ // --- Filters ---
2264
+ // ---------------
2265
+ /**
2266
+ * Filter
2267
+ * @see https://tailwindcss.com/docs/filter
2268
+ */
2269
+ filter: [{
2270
+ filter: [
2271
+ // Deprecated since Tailwind CSS v3.0.0
2272
+ "",
2273
+ "none",
2274
+ l,
2275
+ a
2276
+ ]
2277
+ }],
2278
+ /**
2279
+ * Blur
2280
+ * @see https://tailwindcss.com/docs/blur
2281
+ */
2282
+ blur: [{
2283
+ blur: M()
2284
+ }],
2285
+ /**
2286
+ * Brightness
2287
+ * @see https://tailwindcss.com/docs/brightness
2288
+ */
2289
+ brightness: [{
2290
+ brightness: [b, l, a]
2291
+ }],
2292
+ /**
2293
+ * Contrast
2294
+ * @see https://tailwindcss.com/docs/contrast
2295
+ */
2296
+ contrast: [{
2297
+ contrast: [b, l, a]
2298
+ }],
2299
+ /**
2300
+ * Drop Shadow
2301
+ * @see https://tailwindcss.com/docs/drop-shadow
2302
+ */
2303
+ "drop-shadow": [{
2304
+ "drop-shadow": [
2305
+ // Deprecated since Tailwind CSS v4.0.0
2306
+ "",
2307
+ "none",
2308
+ S,
2309
+ de,
2310
+ ce
2311
+ ]
2312
+ }],
2313
+ /**
2314
+ * Drop Shadow Color
2315
+ * @see https://tailwindcss.com/docs/filter-drop-shadow#setting-the-shadow-color
2316
+ */
2317
+ "drop-shadow-color": [{
2318
+ "drop-shadow": d()
2319
+ }],
2320
+ /**
2321
+ * Grayscale
2322
+ * @see https://tailwindcss.com/docs/grayscale
2323
+ */
2324
+ grayscale: [{
2325
+ grayscale: ["", b, l, a]
2326
+ }],
2327
+ /**
2328
+ * Hue Rotate
2329
+ * @see https://tailwindcss.com/docs/hue-rotate
2330
+ */
2331
+ "hue-rotate": [{
2332
+ "hue-rotate": [b, l, a]
2333
+ }],
2334
+ /**
2335
+ * Invert
2336
+ * @see https://tailwindcss.com/docs/invert
2337
+ */
2338
+ invert: [{
2339
+ invert: ["", b, l, a]
2340
+ }],
2341
+ /**
2342
+ * Saturate
2343
+ * @see https://tailwindcss.com/docs/saturate
2344
+ */
2345
+ saturate: [{
2346
+ saturate: [b, l, a]
2347
+ }],
2348
+ /**
2349
+ * Sepia
2350
+ * @see https://tailwindcss.com/docs/sepia
2351
+ */
2352
+ sepia: [{
2353
+ sepia: ["", b, l, a]
2354
+ }],
2355
+ /**
2356
+ * Backdrop Filter
2357
+ * @see https://tailwindcss.com/docs/backdrop-filter
2358
+ */
2359
+ "backdrop-filter": [{
2360
+ "backdrop-filter": [
2361
+ // Deprecated since Tailwind CSS v3.0.0
2362
+ "",
2363
+ "none",
2364
+ l,
2365
+ a
2366
+ ]
2367
+ }],
2368
+ /**
2369
+ * Backdrop Blur
2370
+ * @see https://tailwindcss.com/docs/backdrop-blur
2371
+ */
2372
+ "backdrop-blur": [{
2373
+ "backdrop-blur": M()
2374
+ }],
2375
+ /**
2376
+ * Backdrop Brightness
2377
+ * @see https://tailwindcss.com/docs/backdrop-brightness
2378
+ */
2379
+ "backdrop-brightness": [{
2380
+ "backdrop-brightness": [b, l, a]
2381
+ }],
2382
+ /**
2383
+ * Backdrop Contrast
2384
+ * @see https://tailwindcss.com/docs/backdrop-contrast
2385
+ */
2386
+ "backdrop-contrast": [{
2387
+ "backdrop-contrast": [b, l, a]
2388
+ }],
2389
+ /**
2390
+ * Backdrop Grayscale
2391
+ * @see https://tailwindcss.com/docs/backdrop-grayscale
2392
+ */
2393
+ "backdrop-grayscale": [{
2394
+ "backdrop-grayscale": ["", b, l, a]
2395
+ }],
2396
+ /**
2397
+ * Backdrop Hue Rotate
2398
+ * @see https://tailwindcss.com/docs/backdrop-hue-rotate
2399
+ */
2400
+ "backdrop-hue-rotate": [{
2401
+ "backdrop-hue-rotate": [b, l, a]
2402
+ }],
2403
+ /**
2404
+ * Backdrop Invert
2405
+ * @see https://tailwindcss.com/docs/backdrop-invert
2406
+ */
2407
+ "backdrop-invert": [{
2408
+ "backdrop-invert": ["", b, l, a]
2409
+ }],
2410
+ /**
2411
+ * Backdrop Opacity
2412
+ * @see https://tailwindcss.com/docs/backdrop-opacity
2413
+ */
2414
+ "backdrop-opacity": [{
2415
+ "backdrop-opacity": [b, l, a]
2416
+ }],
2417
+ /**
2418
+ * Backdrop Saturate
2419
+ * @see https://tailwindcss.com/docs/backdrop-saturate
2420
+ */
2421
+ "backdrop-saturate": [{
2422
+ "backdrop-saturate": [b, l, a]
2423
+ }],
2424
+ /**
2425
+ * Backdrop Sepia
2426
+ * @see https://tailwindcss.com/docs/backdrop-sepia
2427
+ */
2428
+ "backdrop-sepia": [{
2429
+ "backdrop-sepia": ["", b, l, a]
2430
+ }],
2431
+ // --------------
2432
+ // --- Tables ---
2433
+ // --------------
2434
+ /**
2435
+ * Border Collapse
2436
+ * @see https://tailwindcss.com/docs/border-collapse
2437
+ */
2438
+ "border-collapse": [{
2439
+ border: ["collapse", "separate"]
2440
+ }],
2441
+ /**
2442
+ * Border Spacing
2443
+ * @see https://tailwindcss.com/docs/border-spacing
2444
+ */
2445
+ "border-spacing": [{
2446
+ "border-spacing": m()
2447
+ }],
2448
+ /**
2449
+ * Border Spacing X
2450
+ * @see https://tailwindcss.com/docs/border-spacing
2451
+ */
2452
+ "border-spacing-x": [{
2453
+ "border-spacing-x": m()
2454
+ }],
2455
+ /**
2456
+ * Border Spacing Y
2457
+ * @see https://tailwindcss.com/docs/border-spacing
2458
+ */
2459
+ "border-spacing-y": [{
2460
+ "border-spacing-y": m()
2461
+ }],
2462
+ /**
2463
+ * Table Layout
2464
+ * @see https://tailwindcss.com/docs/table-layout
2465
+ */
2466
+ "table-layout": [{
2467
+ table: ["auto", "fixed"]
2468
+ }],
2469
+ /**
2470
+ * Caption Side
2471
+ * @see https://tailwindcss.com/docs/caption-side
2472
+ */
2473
+ caption: [{
2474
+ caption: ["top", "bottom"]
2475
+ }],
2476
+ // ---------------------------------
2477
+ // --- Transitions and Animation ---
2478
+ // ---------------------------------
2479
+ /**
2480
+ * Transition Property
2481
+ * @see https://tailwindcss.com/docs/transition-property
2482
+ */
2483
+ transition: [{
2484
+ transition: ["", "all", "colors", "opacity", "shadow", "transform", "none", l, a]
2485
+ }],
2486
+ /**
2487
+ * Transition Behavior
2488
+ * @see https://tailwindcss.com/docs/transition-behavior
2489
+ */
2490
+ "transition-behavior": [{
2491
+ transition: ["normal", "discrete"]
2492
+ }],
2493
+ /**
2494
+ * Transition Duration
2495
+ * @see https://tailwindcss.com/docs/transition-duration
2496
+ */
2497
+ duration: [{
2498
+ duration: [b, "initial", l, a]
2499
+ }],
2500
+ /**
2501
+ * Transition Timing Function
2502
+ * @see https://tailwindcss.com/docs/transition-timing-function
2503
+ */
2504
+ ease: [{
2505
+ ease: ["linear", "initial", O, l, a]
2506
+ }],
2507
+ /**
2508
+ * Transition Delay
2509
+ * @see https://tailwindcss.com/docs/transition-delay
2510
+ */
2511
+ delay: [{
2512
+ delay: [b, l, a]
2513
+ }],
2514
+ /**
2515
+ * Animation
2516
+ * @see https://tailwindcss.com/docs/animation
2517
+ */
2518
+ animate: [{
2519
+ animate: ["none", B, l, a]
2520
+ }],
2521
+ // ------------------
2522
+ // --- Transforms ---
2523
+ // ------------------
2524
+ /**
2525
+ * Backface Visibility
2526
+ * @see https://tailwindcss.com/docs/backface-visibility
2527
+ */
2528
+ backface: [{
2529
+ backface: ["hidden", "visible"]
2530
+ }],
2531
+ /**
2532
+ * Perspective
2533
+ * @see https://tailwindcss.com/docs/perspective
2534
+ */
2535
+ perspective: [{
2536
+ perspective: [A, l, a]
2537
+ }],
2538
+ /**
2539
+ * Perspective Origin
2540
+ * @see https://tailwindcss.com/docs/perspective-origin
2541
+ */
2542
+ "perspective-origin": [{
2543
+ "perspective-origin": F()
2544
+ }],
2545
+ /**
2546
+ * Rotate
2547
+ * @see https://tailwindcss.com/docs/rotate
2548
+ */
2549
+ rotate: [{
2550
+ rotate: V()
2551
+ }],
2552
+ /**
2553
+ * Rotate X
2554
+ * @see https://tailwindcss.com/docs/rotate
2555
+ */
2556
+ "rotate-x": [{
2557
+ "rotate-x": V()
2558
+ }],
2559
+ /**
2560
+ * Rotate Y
2561
+ * @see https://tailwindcss.com/docs/rotate
2562
+ */
2563
+ "rotate-y": [{
2564
+ "rotate-y": V()
2565
+ }],
2566
+ /**
2567
+ * Rotate Z
2568
+ * @see https://tailwindcss.com/docs/rotate
2569
+ */
2570
+ "rotate-z": [{
2571
+ "rotate-z": V()
2572
+ }],
2573
+ /**
2574
+ * Scale
2575
+ * @see https://tailwindcss.com/docs/scale
2576
+ */
2577
+ scale: [{
2578
+ scale: J()
2579
+ }],
2580
+ /**
2581
+ * Scale X
2582
+ * @see https://tailwindcss.com/docs/scale
2583
+ */
2584
+ "scale-x": [{
2585
+ "scale-x": J()
2586
+ }],
2587
+ /**
2588
+ * Scale Y
2589
+ * @see https://tailwindcss.com/docs/scale
2590
+ */
2591
+ "scale-y": [{
2592
+ "scale-y": J()
2593
+ }],
2594
+ /**
2595
+ * Scale Z
2596
+ * @see https://tailwindcss.com/docs/scale
2597
+ */
2598
+ "scale-z": [{
2599
+ "scale-z": J()
2600
+ }],
2601
+ /**
2602
+ * Scale 3D
2603
+ * @see https://tailwindcss.com/docs/scale
2604
+ */
2605
+ "scale-3d": ["scale-3d"],
2606
+ /**
2607
+ * Skew
2608
+ * @see https://tailwindcss.com/docs/skew
2609
+ */
2610
+ skew: [{
2611
+ skew: me()
2612
+ }],
2613
+ /**
2614
+ * Skew X
2615
+ * @see https://tailwindcss.com/docs/skew
2616
+ */
2617
+ "skew-x": [{
2618
+ "skew-x": me()
2619
+ }],
2620
+ /**
2621
+ * Skew Y
2622
+ * @see https://tailwindcss.com/docs/skew
2623
+ */
2624
+ "skew-y": [{
2625
+ "skew-y": me()
2626
+ }],
2627
+ /**
2628
+ * Transform
2629
+ * @see https://tailwindcss.com/docs/transform
2630
+ */
2631
+ transform: [{
2632
+ transform: [l, a, "", "none", "gpu", "cpu"]
2633
+ }],
2634
+ /**
2635
+ * Transform Origin
2636
+ * @see https://tailwindcss.com/docs/transform-origin
2637
+ */
2638
+ "transform-origin": [{
2639
+ origin: F()
2640
+ }],
2641
+ /**
2642
+ * Transform Style
2643
+ * @see https://tailwindcss.com/docs/transform-style
2644
+ */
2645
+ "transform-style": [{
2646
+ transform: ["3d", "flat"]
2647
+ }],
2648
+ /**
2649
+ * Translate
2650
+ * @see https://tailwindcss.com/docs/translate
2651
+ */
2652
+ translate: [{
2653
+ translate: le()
2654
+ }],
2655
+ /**
2656
+ * Translate X
2657
+ * @see https://tailwindcss.com/docs/translate
2658
+ */
2659
+ "translate-x": [{
2660
+ "translate-x": le()
2661
+ }],
2662
+ /**
2663
+ * Translate Y
2664
+ * @see https://tailwindcss.com/docs/translate
2665
+ */
2666
+ "translate-y": [{
2667
+ "translate-y": le()
2668
+ }],
2669
+ /**
2670
+ * Translate Z
2671
+ * @see https://tailwindcss.com/docs/translate
2672
+ */
2673
+ "translate-z": [{
2674
+ "translate-z": le()
2675
+ }],
2676
+ /**
2677
+ * Translate None
2678
+ * @see https://tailwindcss.com/docs/translate
2679
+ */
2680
+ "translate-none": ["translate-none"],
2681
+ // ---------------------
2682
+ // --- Interactivity ---
2683
+ // ---------------------
2684
+ /**
2685
+ * Accent Color
2686
+ * @see https://tailwindcss.com/docs/accent-color
2687
+ */
2688
+ accent: [{
2689
+ accent: d()
2690
+ }],
2691
+ /**
2692
+ * Appearance
2693
+ * @see https://tailwindcss.com/docs/appearance
2694
+ */
2695
+ appearance: [{
2696
+ appearance: ["none", "auto"]
2697
+ }],
2698
+ /**
2699
+ * Caret Color
2700
+ * @see https://tailwindcss.com/docs/just-in-time-mode#caret-color-utilities
2701
+ */
2702
+ "caret-color": [{
2703
+ caret: d()
2704
+ }],
2705
+ /**
2706
+ * Color Scheme
2707
+ * @see https://tailwindcss.com/docs/color-scheme
2708
+ */
2709
+ "color-scheme": [{
2710
+ scheme: ["normal", "dark", "light", "light-dark", "only-dark", "only-light"]
2711
+ }],
2712
+ /**
2713
+ * Cursor
2714
+ * @see https://tailwindcss.com/docs/cursor
2715
+ */
2716
+ cursor: [{
2717
+ 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", l, a]
2718
+ }],
2719
+ /**
2720
+ * Field Sizing
2721
+ * @see https://tailwindcss.com/docs/field-sizing
2722
+ */
2723
+ "field-sizing": [{
2724
+ "field-sizing": ["fixed", "content"]
2725
+ }],
2726
+ /**
2727
+ * Pointer Events
2728
+ * @see https://tailwindcss.com/docs/pointer-events
2729
+ */
2730
+ "pointer-events": [{
2731
+ "pointer-events": ["auto", "none"]
2732
+ }],
2733
+ /**
2734
+ * Resize
2735
+ * @see https://tailwindcss.com/docs/resize
2736
+ */
2737
+ resize: [{
2738
+ resize: ["none", "", "y", "x"]
2739
+ }],
2740
+ /**
2741
+ * Scroll Behavior
2742
+ * @see https://tailwindcss.com/docs/scroll-behavior
2743
+ */
2744
+ "scroll-behavior": [{
2745
+ scroll: ["auto", "smooth"]
2746
+ }],
2747
+ /**
2748
+ * Scroll Margin
2749
+ * @see https://tailwindcss.com/docs/scroll-margin
2750
+ */
2751
+ "scroll-m": [{
2752
+ "scroll-m": m()
2753
+ }],
2754
+ /**
2755
+ * Scroll Margin X
2756
+ * @see https://tailwindcss.com/docs/scroll-margin
2757
+ */
2758
+ "scroll-mx": [{
2759
+ "scroll-mx": m()
2760
+ }],
2761
+ /**
2762
+ * Scroll Margin Y
2763
+ * @see https://tailwindcss.com/docs/scroll-margin
2764
+ */
2765
+ "scroll-my": [{
2766
+ "scroll-my": m()
2767
+ }],
2768
+ /**
2769
+ * Scroll Margin Start
2770
+ * @see https://tailwindcss.com/docs/scroll-margin
2771
+ */
2772
+ "scroll-ms": [{
2773
+ "scroll-ms": m()
2774
+ }],
2775
+ /**
2776
+ * Scroll Margin End
2777
+ * @see https://tailwindcss.com/docs/scroll-margin
2778
+ */
2779
+ "scroll-me": [{
2780
+ "scroll-me": m()
2781
+ }],
2782
+ /**
2783
+ * Scroll Margin Top
2784
+ * @see https://tailwindcss.com/docs/scroll-margin
2785
+ */
2786
+ "scroll-mt": [{
2787
+ "scroll-mt": m()
2788
+ }],
2789
+ /**
2790
+ * Scroll Margin Right
2791
+ * @see https://tailwindcss.com/docs/scroll-margin
2792
+ */
2793
+ "scroll-mr": [{
2794
+ "scroll-mr": m()
2795
+ }],
2796
+ /**
2797
+ * Scroll Margin Bottom
2798
+ * @see https://tailwindcss.com/docs/scroll-margin
2799
+ */
2800
+ "scroll-mb": [{
2801
+ "scroll-mb": m()
2802
+ }],
2803
+ /**
2804
+ * Scroll Margin Left
2805
+ * @see https://tailwindcss.com/docs/scroll-margin
2806
+ */
2807
+ "scroll-ml": [{
2808
+ "scroll-ml": m()
2809
+ }],
2810
+ /**
2811
+ * Scroll Padding
2812
+ * @see https://tailwindcss.com/docs/scroll-padding
2813
+ */
2814
+ "scroll-p": [{
2815
+ "scroll-p": m()
2816
+ }],
2817
+ /**
2818
+ * Scroll Padding X
2819
+ * @see https://tailwindcss.com/docs/scroll-padding
2820
+ */
2821
+ "scroll-px": [{
2822
+ "scroll-px": m()
2823
+ }],
2824
+ /**
2825
+ * Scroll Padding Y
2826
+ * @see https://tailwindcss.com/docs/scroll-padding
2827
+ */
2828
+ "scroll-py": [{
2829
+ "scroll-py": m()
2830
+ }],
2831
+ /**
2832
+ * Scroll Padding Start
2833
+ * @see https://tailwindcss.com/docs/scroll-padding
2834
+ */
2835
+ "scroll-ps": [{
2836
+ "scroll-ps": m()
2837
+ }],
2838
+ /**
2839
+ * Scroll Padding End
2840
+ * @see https://tailwindcss.com/docs/scroll-padding
2841
+ */
2842
+ "scroll-pe": [{
2843
+ "scroll-pe": m()
2844
+ }],
2845
+ /**
2846
+ * Scroll Padding Top
2847
+ * @see https://tailwindcss.com/docs/scroll-padding
2848
+ */
2849
+ "scroll-pt": [{
2850
+ "scroll-pt": m()
2851
+ }],
2852
+ /**
2853
+ * Scroll Padding Right
2854
+ * @see https://tailwindcss.com/docs/scroll-padding
2855
+ */
2856
+ "scroll-pr": [{
2857
+ "scroll-pr": m()
2858
+ }],
2859
+ /**
2860
+ * Scroll Padding Bottom
2861
+ * @see https://tailwindcss.com/docs/scroll-padding
2862
+ */
2863
+ "scroll-pb": [{
2864
+ "scroll-pb": m()
2865
+ }],
2866
+ /**
2867
+ * Scroll Padding Left
2868
+ * @see https://tailwindcss.com/docs/scroll-padding
2869
+ */
2870
+ "scroll-pl": [{
2871
+ "scroll-pl": m()
2872
+ }],
2873
+ /**
2874
+ * Scroll Snap Align
2875
+ * @see https://tailwindcss.com/docs/scroll-snap-align
2876
+ */
2877
+ "snap-align": [{
2878
+ snap: ["start", "end", "center", "align-none"]
2879
+ }],
2880
+ /**
2881
+ * Scroll Snap Stop
2882
+ * @see https://tailwindcss.com/docs/scroll-snap-stop
2883
+ */
2884
+ "snap-stop": [{
2885
+ snap: ["normal", "always"]
2886
+ }],
2887
+ /**
2888
+ * Scroll Snap Type
2889
+ * @see https://tailwindcss.com/docs/scroll-snap-type
2890
+ */
2891
+ "snap-type": [{
2892
+ snap: ["none", "x", "y", "both"]
2893
+ }],
2894
+ /**
2895
+ * Scroll Snap Type Strictness
2896
+ * @see https://tailwindcss.com/docs/scroll-snap-type
2897
+ */
2898
+ "snap-strictness": [{
2899
+ snap: ["mandatory", "proximity"]
2900
+ }],
2901
+ /**
2902
+ * Touch Action
2903
+ * @see https://tailwindcss.com/docs/touch-action
2904
+ */
2905
+ touch: [{
2906
+ touch: ["auto", "none", "manipulation"]
2907
+ }],
2908
+ /**
2909
+ * Touch Action X
2910
+ * @see https://tailwindcss.com/docs/touch-action
2911
+ */
2912
+ "touch-x": [{
2913
+ "touch-pan": ["x", "left", "right"]
2914
+ }],
2915
+ /**
2916
+ * Touch Action Y
2917
+ * @see https://tailwindcss.com/docs/touch-action
2918
+ */
2919
+ "touch-y": [{
2920
+ "touch-pan": ["y", "up", "down"]
2921
+ }],
2922
+ /**
2923
+ * Touch Action Pinch Zoom
2924
+ * @see https://tailwindcss.com/docs/touch-action
2925
+ */
2926
+ "touch-pz": ["touch-pinch-zoom"],
2927
+ /**
2928
+ * User Select
2929
+ * @see https://tailwindcss.com/docs/user-select
2930
+ */
2931
+ select: [{
2932
+ select: ["none", "text", "all", "auto"]
2933
+ }],
2934
+ /**
2935
+ * Will Change
2936
+ * @see https://tailwindcss.com/docs/will-change
2937
+ */
2938
+ "will-change": [{
2939
+ "will-change": ["auto", "scroll", "contents", "transform", l, a]
2940
+ }],
2941
+ // -----------
2942
+ // --- SVG ---
2943
+ // -----------
2944
+ /**
2945
+ * Fill
2946
+ * @see https://tailwindcss.com/docs/fill
2947
+ */
2948
+ fill: [{
2949
+ fill: ["none", ...d()]
2950
+ }],
2951
+ /**
2952
+ * Stroke Width
2953
+ * @see https://tailwindcss.com/docs/stroke-width
2954
+ */
2955
+ "stroke-w": [{
2956
+ stroke: [b, ne, U, pe]
2957
+ }],
2958
+ /**
2959
+ * Stroke
2960
+ * @see https://tailwindcss.com/docs/stroke
2961
+ */
2962
+ stroke: [{
2963
+ stroke: ["none", ...d()]
2964
+ }],
2965
+ // ---------------------
2966
+ // --- Accessibility ---
2967
+ // ---------------------
2968
+ /**
2969
+ * Forced Color Adjust
2970
+ * @see https://tailwindcss.com/docs/forced-color-adjust
2971
+ */
2972
+ "forced-color-adjust": [{
2973
+ "forced-color-adjust": ["auto", "none"]
2974
+ }]
2975
+ },
2976
+ conflictingClassGroups: {
2977
+ overflow: ["overflow-x", "overflow-y"],
2978
+ overscroll: ["overscroll-x", "overscroll-y"],
2979
+ inset: ["inset-x", "inset-y", "start", "end", "top", "right", "bottom", "left"],
2980
+ "inset-x": ["right", "left"],
2981
+ "inset-y": ["top", "bottom"],
2982
+ flex: ["basis", "grow", "shrink"],
2983
+ gap: ["gap-x", "gap-y"],
2984
+ p: ["px", "py", "ps", "pe", "pt", "pr", "pb", "pl"],
2985
+ px: ["pr", "pl"],
2986
+ py: ["pt", "pb"],
2987
+ m: ["mx", "my", "ms", "me", "mt", "mr", "mb", "ml"],
2988
+ mx: ["mr", "ml"],
2989
+ my: ["mt", "mb"],
2990
+ size: ["w", "h"],
2991
+ "font-size": ["leading"],
2992
+ "fvn-normal": ["fvn-ordinal", "fvn-slashed-zero", "fvn-figure", "fvn-spacing", "fvn-fraction"],
2993
+ "fvn-ordinal": ["fvn-normal"],
2994
+ "fvn-slashed-zero": ["fvn-normal"],
2995
+ "fvn-figure": ["fvn-normal"],
2996
+ "fvn-spacing": ["fvn-normal"],
2997
+ "fvn-fraction": ["fvn-normal"],
2998
+ "line-clamp": ["display", "overflow"],
2999
+ 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"],
3000
+ "rounded-s": ["rounded-ss", "rounded-es"],
3001
+ "rounded-e": ["rounded-se", "rounded-ee"],
3002
+ "rounded-t": ["rounded-tl", "rounded-tr"],
3003
+ "rounded-r": ["rounded-tr", "rounded-br"],
3004
+ "rounded-b": ["rounded-br", "rounded-bl"],
3005
+ "rounded-l": ["rounded-tl", "rounded-bl"],
3006
+ "border-spacing": ["border-spacing-x", "border-spacing-y"],
3007
+ "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"],
3008
+ "border-w-x": ["border-w-r", "border-w-l"],
3009
+ "border-w-y": ["border-w-t", "border-w-b"],
3010
+ "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"],
3011
+ "border-color-x": ["border-color-r", "border-color-l"],
3012
+ "border-color-y": ["border-color-t", "border-color-b"],
3013
+ translate: ["translate-x", "translate-y", "translate-none"],
3014
+ "translate-none": ["translate", "translate-x", "translate-y", "translate-z"],
3015
+ "scroll-m": ["scroll-mx", "scroll-my", "scroll-ms", "scroll-me", "scroll-mt", "scroll-mr", "scroll-mb", "scroll-ml"],
3016
+ "scroll-mx": ["scroll-mr", "scroll-ml"],
3017
+ "scroll-my": ["scroll-mt", "scroll-mb"],
3018
+ "scroll-p": ["scroll-px", "scroll-py", "scroll-ps", "scroll-pe", "scroll-pt", "scroll-pr", "scroll-pb", "scroll-pl"],
3019
+ "scroll-px": ["scroll-pr", "scroll-pl"],
3020
+ "scroll-py": ["scroll-pt", "scroll-pb"],
3021
+ touch: ["touch-x", "touch-y", "touch-pz"],
3022
+ "touch-x": ["touch"],
3023
+ "touch-y": ["touch"],
3024
+ "touch-pz": ["touch"]
3025
+ },
3026
+ conflictingClassGroupModifiers: {
3027
+ "font-size": ["leading"]
3028
+ },
3029
+ orderSensitiveModifiers: ["*", "**", "after", "backdrop", "before", "details-content", "file", "first-letter", "first-line", "marker", "placeholder", "selection"]
3030
+ };
3031
+ }, Mr = /* @__PURE__ */ br(Ir);
3032
+ function Ae(...e) {
3033
+ return Mr(Je(e));
3034
+ }
3035
+ const Gr = Ye;
3036
+ function $r({
3037
+ config: e,
3038
+ className: n,
3039
+ isEditable: o = !1,
3040
+ registry: t
3041
+ }) {
3042
+ const { width: s, containerRef: c, mounted: i } = We(), {
3043
+ layout: p,
3044
+ cols: u
3045
+ } = De({
3046
+ width: s,
3047
+ breakpoints: { lg: 1200, md: 996, sm: 768, xs: 480, xxs: 0 },
3048
+ cols: { lg: 12, md: 10, sm: 6, xs: 4, xxs: 2 },
3049
+ layouts: e.layouts,
3050
+ onBreakpointChange: (w, y) => {
3051
+ console.debug(`Breakpoint change: ${w}, cols: ${y} `);
3052
+ }
3053
+ }), k = $e(() => p.map((w) => ({
3054
+ ...w,
3055
+ isDraggable: o,
3056
+ isResizable: o
3057
+ })), [p, o]);
3058
+ return /* @__PURE__ */ T.jsx("div", { className: Ae("w-full min-h-screen p-4", n), children: /* @__PURE__ */ T.jsx("div", { ref: c, children: i && /* @__PURE__ */ T.jsx(
3059
+ Gr,
3060
+ {
3061
+ width: s,
3062
+ layout: k,
3063
+ cols: u,
3064
+ rowHeight: 100,
3065
+ draggableHandle: ".drag-handle",
3066
+ isDraggable: o,
3067
+ isResizable: o,
3068
+ margin: [16, 16],
3069
+ children: k.map((w) => {
3070
+ const y = e.widgets[w.i];
3071
+ if (!y) return null;
3072
+ const _ = t[y.type];
3073
+ return /* @__PURE__ */ T.jsxs(
3074
+ "div",
3075
+ {
3076
+ className: "text-card-foreground border rounded-xl shadow-sm overflow-hidden flex flex-col",
3077
+ style: {
3078
+ background: "hsl(var(--widget-bg))",
3079
+ borderColor: "hsl(var(--widget-border))"
3080
+ },
3081
+ "data-grid": { ...w, isDraggable: o, isResizable: o },
3082
+ "data-widget-id": w.i,
3083
+ children: [
3084
+ /* @__PURE__ */ T.jsxs(
3085
+ "div",
3086
+ {
3087
+ className: Ae(
3088
+ "flex items-center justify-between px-4 py-3 border-b",
3089
+ o ? "cursor-move drag-handle group" : "cursor-default"
3090
+ ),
3091
+ style: {
3092
+ background: "hsl(var(--widget-header-bg))",
3093
+ borderColor: "hsl(var(--widget-border))"
3094
+ },
3095
+ children: [
3096
+ /* @__PURE__ */ T.jsx("h3", { className: "font-medium text-sm tracking-tight", children: y.title }),
3097
+ o && /* @__PURE__ */ T.jsx("div", { className: "opacity-0 group-hover:opacity-100 transition-opacity", children: /* @__PURE__ */ T.jsx("div", { className: "i-lucide-grip-vertical w-4 h-4 text-muted-foreground" }) })
3098
+ ]
3099
+ }
3100
+ ),
3101
+ /* @__PURE__ */ T.jsx("div", { className: "flex-1 p-4 min-h-0 overflow-hidden relative", children: _ ? /* @__PURE__ */ T.jsx(Ve, { fallback: /* @__PURE__ */ T.jsx("div", { className: "flex items-center justify-center h-full text-muted-foreground animate-pulse text-sm", children: "Loading..." }), children: /* @__PURE__ */ T.jsx(_, { ...y.props }) }) : /* @__PURE__ */ T.jsxs("div", { className: "flex items-center justify-center h-full text-destructive text-sm bg-destructive/10 rounded", children: [
3102
+ "Unknown component type: ",
3103
+ y.type
3104
+ ] }) })
3105
+ ]
3106
+ },
3107
+ w.i
3108
+ );
3109
+ })
3110
+ }
3111
+ ) }) });
3112
+ }
3113
+ export {
3114
+ $r as Dashboard
3115
+ };