@workokay/atom 0.1.0

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