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