@gram-ai/elements 1.19.1 → 1.20.1

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.
Files changed (38) hide show
  1. package/dist/components/Chat/index.d.ts +5 -1
  2. package/dist/components/Chat/stories/Variants.stories.d.ts +4 -1
  3. package/dist/components/assistant-ui/assistant-modal.d.ts +5 -1
  4. package/dist/components/assistant-ui/assistant-sidecar.d.ts +5 -1
  5. package/dist/components/assistant-ui/thread-list.d.ts +5 -1
  6. package/dist/components/assistant-ui/thread.d.ts +5 -1
  7. package/dist/elements.cjs +55 -53
  8. package/dist/elements.cjs.map +1 -1
  9. package/dist/elements.css +1 -1
  10. package/dist/elements.js +10119 -8884
  11. package/dist/elements.js.map +1 -1
  12. package/dist/hooks/useGramThreadListAdapter.d.ts +10 -0
  13. package/dist/index-B52U8PL6.cjs +99 -0
  14. package/dist/index-B52U8PL6.cjs.map +1 -0
  15. package/dist/{index-Cb5sxQuN.js → index-DaF9fGY-.js} +694 -1398
  16. package/dist/index-DaF9fGY-.js.map +1 -0
  17. package/dist/index.d.ts +4 -1
  18. package/dist/lib/messageConverter.d.ts +45 -0
  19. package/dist/plugins.cjs +1 -1
  20. package/dist/plugins.js +1 -1
  21. package/dist/types/index.d.ts +39 -0
  22. package/package.json +4 -2
  23. package/src/components/Chat/index.tsx +8 -4
  24. package/src/components/Chat/stories/Variants.stories.tsx +77 -2
  25. package/src/components/assistant-ui/assistant-modal.tsx +25 -5
  26. package/src/components/assistant-ui/assistant-sidecar.tsx +25 -5
  27. package/src/components/assistant-ui/thread-list.tsx +58 -26
  28. package/src/components/assistant-ui/thread.tsx +7 -2
  29. package/src/contexts/ElementsProvider.tsx +150 -29
  30. package/src/hooks/useGramThreadListAdapter.tsx +302 -0
  31. package/src/index.ts +4 -0
  32. package/src/lib/messageConverter.ts +241 -0
  33. package/src/plugins/chart/component.tsx +15 -7
  34. package/src/plugins/chart/index.ts +83 -1
  35. package/src/types/index.ts +42 -0
  36. package/dist/index-Cb5sxQuN.js.map +0 -1
  37. package/dist/index-hrhDHFgW.cjs +0 -19
  38. package/dist/index-hrhDHFgW.cjs.map +0 -1
@@ -1,127 +1,127 @@
1
- import { jsx as me, jsxs as qe } from "react/jsx-runtime";
2
- import { createContext as Ae, useState as Ke, useMemo as H, useEffect as Re, useLayoutEffect as Rt, useContext as Ze, useSyncExternalStore as It, useDebugValue as Mt, forwardRef as Qe, createElement as Ce, useRef as Ve } from "react";
3
- import { parse as zt, View as Pt, Warn as _t } from "vega";
4
- function et(e) {
5
- var t, r, o = "";
1
+ import { jsxs as fe, jsx as te } from "react/jsx-runtime";
2
+ import { createContext as Ce, useContext as Fe, forwardRef as Ae, createElement as se, useRef as be, useState as Be, useMemo as We, useEffect as _e } from "react";
3
+ import { parse as De, View as $e, Warn as qe } from "vega";
4
+ function ze(e) {
5
+ var r, t, o = "";
6
6
  if (typeof e == "string" || typeof e == "number") o += e;
7
7
  else if (typeof e == "object") if (Array.isArray(e)) {
8
- var n = e.length;
9
- for (t = 0; t < n; t++) e[t] && (r = et(e[t])) && (o && (o += " "), o += r);
10
- } else for (r in e) e[r] && (o && (o += " "), o += r);
8
+ var a = e.length;
9
+ for (r = 0; r < a; r++) e[r] && (t = ze(e[r])) && (o && (o += " "), o += t);
10
+ } else for (t in e) e[t] && (o && (o += " "), o += t);
11
11
  return o;
12
12
  }
13
- function Ot() {
14
- for (var e, t, r = 0, o = "", n = arguments.length; r < n; r++) (e = arguments[r]) && (t = et(e)) && (o && (o += " "), o += t);
13
+ function Je() {
14
+ for (var e, r, t = 0, o = "", a = arguments.length; t < a; t++) (e = arguments[t]) && (r = ze(e)) && (o && (o += " "), o += r);
15
15
  return o;
16
16
  }
17
- const Tt = (e, t) => {
18
- const r = new Array(e.length + t.length);
17
+ const Ye = (e, r) => {
18
+ const t = new Array(e.length + r.length);
19
19
  for (let o = 0; o < e.length; o++)
20
- r[o] = e[o];
21
- for (let o = 0; o < t.length; o++)
22
- r[e.length + o] = t[o];
23
- return r;
24
- }, Nt = (e, t) => ({
20
+ t[o] = e[o];
21
+ for (let o = 0; o < r.length; o++)
22
+ t[e.length + o] = r[o];
23
+ return t;
24
+ }, He = (e, r) => ({
25
25
  classGroupId: e,
26
- validator: t
27
- }), tt = (e = /* @__PURE__ */ new Map(), t = null, r) => ({
26
+ validator: r
27
+ }), Se = (e = /* @__PURE__ */ new Map(), r = null, t) => ({
28
28
  nextPart: e,
29
- validators: t,
30
- classGroupId: r
31
- }), fe = "-", De = [], Lt = "arbitrary..", jt = (e) => {
32
- const t = Gt(e), {
33
- conflictingClassGroups: r,
29
+ validators: r,
30
+ classGroupId: t
31
+ }), K = "-", he = [], Xe = "arbitrary..", Ke = (e) => {
32
+ const r = Ze(e), {
33
+ conflictingClassGroups: t,
34
34
  conflictingClassGroupModifiers: o
35
35
  } = e;
36
36
  return {
37
- getClassGroupId: (s) => {
38
- if (s.startsWith("[") && s.endsWith("]"))
39
- return Ft(s);
40
- const l = s.split(fe), a = l[0] === "" && l.length > 1 ? 1 : 0;
41
- return rt(l, a, t);
37
+ getClassGroupId: (l) => {
38
+ if (l.startsWith("[") && l.endsWith("]"))
39
+ return Qe(l);
40
+ const p = l.split(K), c = p[0] === "" && p.length > 1 ? 1 : 0;
41
+ return Re(p, c, r);
42
42
  },
43
- getConflictingClassGroupIds: (s, l) => {
44
- if (l) {
45
- const a = o[s], u = r[s];
46
- return a ? u ? Tt(u, a) : a : u || De;
43
+ getConflictingClassGroupIds: (l, p) => {
44
+ if (p) {
45
+ const c = o[l], g = t[l];
46
+ return c ? g ? Ye(g, c) : c : g || he;
47
47
  }
48
- return r[s] || De;
48
+ return t[l] || he;
49
49
  }
50
50
  };
51
- }, rt = (e, t, r) => {
52
- if (e.length - t === 0)
53
- return r.classGroupId;
54
- const n = e[t], i = r.nextPart.get(n);
51
+ }, Re = (e, r, t) => {
52
+ if (e.length - r === 0)
53
+ return t.classGroupId;
54
+ const a = e[r], i = t.nextPart.get(a);
55
55
  if (i) {
56
- const u = rt(e, t + 1, i);
57
- if (u) return u;
56
+ const g = Re(e, r + 1, i);
57
+ if (g) return g;
58
58
  }
59
- const s = r.validators;
60
- if (s === null)
59
+ const l = t.validators;
60
+ if (l === null)
61
61
  return;
62
- const l = t === 0 ? e.join(fe) : e.slice(t).join(fe), a = s.length;
63
- for (let u = 0; u < a; u++) {
64
- const m = s[u];
65
- if (m.validator(l))
66
- return m.classGroupId;
62
+ const p = r === 0 ? e.join(K) : e.slice(r).join(K), c = l.length;
63
+ for (let g = 0; g < c; g++) {
64
+ const f = l[g];
65
+ if (f.validator(p))
66
+ return f.classGroupId;
67
67
  }
68
- }, Ft = (e) => e.slice(1, -1).indexOf(":") === -1 ? void 0 : (() => {
69
- const t = e.slice(1, -1), r = t.indexOf(":"), o = t.slice(0, r);
70
- return o ? Lt + o : void 0;
71
- })(), Gt = (e) => {
68
+ }, Qe = (e) => e.slice(1, -1).indexOf(":") === -1 ? void 0 : (() => {
69
+ const r = e.slice(1, -1), t = r.indexOf(":"), o = r.slice(0, t);
70
+ return o ? Xe + o : void 0;
71
+ })(), Ze = (e) => {
72
72
  const {
73
- theme: t,
74
- classGroups: r
73
+ theme: r,
74
+ classGroups: t
75
75
  } = e;
76
- return qt(r, t);
77
- }, qt = (e, t) => {
78
- const r = tt();
76
+ return et(t, r);
77
+ }, et = (e, r) => {
78
+ const t = Se();
79
79
  for (const o in e) {
80
- const n = e[o];
81
- Ie(n, r, o, t);
80
+ const a = e[o];
81
+ ae(a, t, o, r);
82
82
  }
83
- return r;
84
- }, Ie = (e, t, r, o) => {
85
- const n = e.length;
86
- for (let i = 0; i < n; i++) {
87
- const s = e[i];
88
- Vt(s, t, r, o);
83
+ return t;
84
+ }, ae = (e, r, t, o) => {
85
+ const a = e.length;
86
+ for (let i = 0; i < a; i++) {
87
+ const l = e[i];
88
+ tt(l, r, t, o);
89
89
  }
90
- }, Vt = (e, t, r, o) => {
90
+ }, tt = (e, r, t, o) => {
91
91
  if (typeof e == "string") {
92
- Dt(e, t, r);
92
+ rt(e, r, t);
93
93
  return;
94
94
  }
95
95
  if (typeof e == "function") {
96
- Ut(e, t, r, o);
96
+ ot(e, r, t, o);
97
97
  return;
98
98
  }
99
- $t(e, t, r, o);
100
- }, Dt = (e, t, r) => {
101
- const o = e === "" ? t : ot(t, e);
102
- o.classGroupId = r;
103
- }, Ut = (e, t, r, o) => {
104
- if (Wt(e)) {
105
- Ie(e(o), t, r, o);
99
+ st(e, r, t, o);
100
+ }, rt = (e, r, t) => {
101
+ const o = e === "" ? r : Ee(r, e);
102
+ o.classGroupId = t;
103
+ }, ot = (e, r, t, o) => {
104
+ if (nt(e)) {
105
+ ae(e(o), r, t, o);
106
106
  return;
107
107
  }
108
- t.validators === null && (t.validators = []), t.validators.push(Nt(r, e));
109
- }, $t = (e, t, r, o) => {
110
- const n = Object.entries(e), i = n.length;
111
- for (let s = 0; s < i; s++) {
112
- const [l, a] = n[s];
113
- Ie(a, ot(t, l), r, o);
108
+ r.validators === null && (r.validators = []), r.validators.push(He(t, e));
109
+ }, st = (e, r, t, o) => {
110
+ const a = Object.entries(e), i = a.length;
111
+ for (let l = 0; l < i; l++) {
112
+ const [p, c] = a[l];
113
+ ae(c, Ee(r, p), t, o);
114
114
  }
115
- }, ot = (e, t) => {
116
- let r = e;
117
- const o = t.split(fe), n = o.length;
118
- for (let i = 0; i < n; i++) {
119
- const s = o[i];
120
- let l = r.nextPart.get(s);
121
- l || (l = tt(), r.nextPart.set(s, l)), r = l;
115
+ }, Ee = (e, r) => {
116
+ let t = e;
117
+ const o = r.split(K), a = o.length;
118
+ for (let i = 0; i < a; i++) {
119
+ const l = o[i];
120
+ let p = t.nextPart.get(l);
121
+ p || (p = Se(), t.nextPart.set(l, p)), t = p;
122
122
  }
123
- return r;
124
- }, Wt = (e) => "isThemeGetter" in e && e.isThemeGetter === !0, Ht = (e) => {
123
+ return t;
124
+ }, nt = (e) => "isThemeGetter" in e && e.isThemeGetter === !0, at = (e) => {
125
125
  if (e < 1)
126
126
  return {
127
127
  get: () => {
@@ -129,178 +129,178 @@ const Tt = (e, t) => {
129
129
  set: () => {
130
130
  }
131
131
  };
132
- let t = 0, r = /* @__PURE__ */ Object.create(null), o = /* @__PURE__ */ Object.create(null);
133
- const n = (i, s) => {
134
- r[i] = s, t++, t > e && (t = 0, o = r, r = /* @__PURE__ */ Object.create(null));
132
+ let r = 0, t = /* @__PURE__ */ Object.create(null), o = /* @__PURE__ */ Object.create(null);
133
+ const a = (i, l) => {
134
+ t[i] = l, r++, r > e && (r = 0, o = t, t = /* @__PURE__ */ Object.create(null));
135
135
  };
136
136
  return {
137
137
  get(i) {
138
- let s = r[i];
139
- if (s !== void 0)
140
- return s;
141
- if ((s = o[i]) !== void 0)
142
- return n(i, s), s;
138
+ let l = t[i];
139
+ if (l !== void 0)
140
+ return l;
141
+ if ((l = o[i]) !== void 0)
142
+ return a(i, l), l;
143
143
  },
144
- set(i, s) {
145
- i in r ? r[i] = s : n(i, s);
144
+ set(i, l) {
145
+ i in t ? t[i] = l : a(i, l);
146
146
  }
147
147
  };
148
- }, Ee = "!", Ue = ":", Bt = [], $e = (e, t, r, o, n) => ({
148
+ }, ne = "!", xe = ":", lt = [], ye = (e, r, t, o, a) => ({
149
149
  modifiers: e,
150
- hasImportantModifier: t,
151
- baseClassName: r,
150
+ hasImportantModifier: r,
151
+ baseClassName: t,
152
152
  maybePostfixModifierPosition: o,
153
- isExternal: n
154
- }), Jt = (e) => {
153
+ isExternal: a
154
+ }), it = (e) => {
155
155
  const {
156
- prefix: t,
157
- experimentalParseClassName: r
156
+ prefix: r,
157
+ experimentalParseClassName: t
158
158
  } = e;
159
- let o = (n) => {
159
+ let o = (a) => {
160
160
  const i = [];
161
- let s = 0, l = 0, a = 0, u;
162
- const m = n.length;
163
- for (let A = 0; A < m; A++) {
164
- const C = n[A];
165
- if (s === 0 && l === 0) {
166
- if (C === Ue) {
167
- i.push(n.slice(a, A)), a = A + 1;
161
+ let l = 0, p = 0, c = 0, g;
162
+ const f = a.length;
163
+ for (let C = 0; C < f; C++) {
164
+ const w = a[C];
165
+ if (l === 0 && p === 0) {
166
+ if (w === xe) {
167
+ i.push(a.slice(c, C)), c = C + 1;
168
168
  continue;
169
169
  }
170
- if (C === "/") {
171
- u = A;
170
+ if (w === "/") {
171
+ g = C;
172
172
  continue;
173
173
  }
174
174
  }
175
- C === "[" ? s++ : C === "]" ? s-- : C === "(" ? l++ : C === ")" && l--;
175
+ w === "[" ? l++ : w === "]" ? l-- : w === "(" ? p++ : w === ")" && p--;
176
176
  }
177
- const b = i.length === 0 ? n : n.slice(a);
178
- let g = b, w = !1;
179
- b.endsWith(Ee) ? (g = b.slice(0, -1), w = !0) : (
177
+ const x = i.length === 0 ? a : a.slice(c);
178
+ let v = x, A = !1;
179
+ x.endsWith(ne) ? (v = x.slice(0, -1), A = !0) : (
180
180
  /**
181
181
  * In Tailwind CSS v3 the important modifier was at the start of the base class name. This is still supported for legacy reasons.
182
182
  * @see https://github.com/dcastil/tailwind-merge/issues/513#issuecomment-2614029864
183
183
  */
184
- b.startsWith(Ee) && (g = b.slice(1), w = !0)
184
+ x.startsWith(ne) && (v = x.slice(1), A = !0)
185
185
  );
186
- const R = u && u > a ? u - a : void 0;
187
- return $e(i, w, g, R);
186
+ const I = g && g > c ? g - c : void 0;
187
+ return ye(i, A, v, I);
188
188
  };
189
- if (t) {
190
- const n = t + Ue, i = o;
191
- o = (s) => s.startsWith(n) ? i(s.slice(n.length)) : $e(Bt, !1, s, void 0, !0);
192
- }
193
189
  if (r) {
194
- const n = o;
195
- o = (i) => r({
190
+ const a = r + xe, i = o;
191
+ o = (l) => l.startsWith(a) ? i(l.slice(a.length)) : ye(lt, !1, l, void 0, !0);
192
+ }
193
+ if (t) {
194
+ const a = o;
195
+ o = (i) => t({
196
196
  className: i,
197
- parseClassName: n
197
+ parseClassName: a
198
198
  });
199
199
  }
200
200
  return o;
201
- }, Yt = (e) => {
202
- const t = /* @__PURE__ */ new Map();
203
- return e.orderSensitiveModifiers.forEach((r, o) => {
204
- t.set(r, 1e6 + o);
205
- }), (r) => {
201
+ }, ct = (e) => {
202
+ const r = /* @__PURE__ */ new Map();
203
+ return e.orderSensitiveModifiers.forEach((t, o) => {
204
+ r.set(t, 1e6 + o);
205
+ }), (t) => {
206
206
  const o = [];
207
- let n = [];
208
- for (let i = 0; i < r.length; i++) {
209
- const s = r[i], l = s[0] === "[", a = t.has(s);
210
- l || a ? (n.length > 0 && (n.sort(), o.push(...n), n = []), o.push(s)) : n.push(s);
207
+ let a = [];
208
+ for (let i = 0; i < t.length; i++) {
209
+ const l = t[i], p = l[0] === "[", c = r.has(l);
210
+ p || c ? (a.length > 0 && (a.sort(), o.push(...a), a = []), o.push(l)) : a.push(l);
211
211
  }
212
- return n.length > 0 && (n.sort(), o.push(...n)), o;
212
+ return a.length > 0 && (a.sort(), o.push(...a)), o;
213
213
  };
214
- }, Xt = (e) => ({
215
- cache: Ht(e.cacheSize),
216
- parseClassName: Jt(e),
217
- sortModifiers: Yt(e),
218
- ...jt(e)
219
- }), Kt = /\s+/, Zt = (e, t) => {
214
+ }, dt = (e) => ({
215
+ cache: at(e.cacheSize),
216
+ parseClassName: it(e),
217
+ sortModifiers: ct(e),
218
+ ...Ke(e)
219
+ }), mt = /\s+/, pt = (e, r) => {
220
220
  const {
221
- parseClassName: r,
221
+ parseClassName: t,
222
222
  getClassGroupId: o,
223
- getConflictingClassGroupIds: n,
223
+ getConflictingClassGroupIds: a,
224
224
  sortModifiers: i
225
- } = t, s = [], l = e.trim().split(Kt);
226
- let a = "";
227
- for (let u = l.length - 1; u >= 0; u -= 1) {
228
- const m = l[u], {
229
- isExternal: b,
230
- modifiers: g,
231
- hasImportantModifier: w,
232
- baseClassName: R,
233
- maybePostfixModifierPosition: A
234
- } = r(m);
235
- if (b) {
236
- a = m + (a.length > 0 ? " " + a : a);
225
+ } = r, l = [], p = e.trim().split(mt);
226
+ let c = "";
227
+ for (let g = p.length - 1; g >= 0; g -= 1) {
228
+ const f = p[g], {
229
+ isExternal: x,
230
+ modifiers: v,
231
+ hasImportantModifier: A,
232
+ baseClassName: I,
233
+ maybePostfixModifierPosition: C
234
+ } = t(f);
235
+ if (x) {
236
+ c = f + (c.length > 0 ? " " + c : c);
237
237
  continue;
238
238
  }
239
- let C = !!A, N = o(C ? R.substring(0, A) : R);
239
+ let w = !!C, N = o(w ? I.substring(0, C) : I);
240
240
  if (!N) {
241
- if (!C) {
242
- a = m + (a.length > 0 ? " " + a : a);
241
+ if (!w) {
242
+ c = f + (c.length > 0 ? " " + c : c);
243
243
  continue;
244
244
  }
245
- if (N = o(R), !N) {
246
- a = m + (a.length > 0 ? " " + a : a);
245
+ if (N = o(I), !N) {
246
+ c = f + (c.length > 0 ? " " + c : c);
247
247
  continue;
248
248
  }
249
- C = !1;
249
+ w = !1;
250
250
  }
251
- const ne = g.length === 0 ? "" : g.length === 1 ? g[0] : i(g).join(":"), X = w ? ne + Ee : ne, V = X + N;
252
- if (s.indexOf(V) > -1)
251
+ const _ = v.length === 0 ? "" : v.length === 1 ? v[0] : i(v).join(":"), F = A ? _ + ne : _, O = F + N;
252
+ if (l.indexOf(O) > -1)
253
253
  continue;
254
- s.push(V);
255
- const D = n(N, C);
256
- for (let L = 0; L < D.length; ++L) {
257
- const K = D[L];
258
- s.push(X + K);
254
+ l.push(O);
255
+ const P = a(N, w);
256
+ for (let T = 0; T < P.length; ++T) {
257
+ const B = P[T];
258
+ l.push(F + B);
259
259
  }
260
- a = m + (a.length > 0 ? " " + a : a);
260
+ c = f + (c.length > 0 ? " " + c : c);
261
261
  }
262
+ return c;
263
+ }, ut = (...e) => {
264
+ let r = 0, t, o, a = "";
265
+ for (; r < e.length; )
266
+ (t = e[r++]) && (o = Ie(t)) && (a && (a += " "), a += o);
262
267
  return a;
263
- }, Qt = (...e) => {
264
- let t = 0, r, o, n = "";
265
- for (; t < e.length; )
266
- (r = e[t++]) && (o = st(r)) && (n && (n += " "), n += o);
267
- return n;
268
- }, st = (e) => {
268
+ }, Ie = (e) => {
269
269
  if (typeof e == "string")
270
270
  return e;
271
- let t, r = "";
271
+ let r, t = "";
272
272
  for (let o = 0; o < e.length; o++)
273
- e[o] && (t = st(e[o])) && (r && (r += " "), r += t);
274
- return r;
275
- }, er = (e, ...t) => {
276
- let r, o, n, i;
277
- const s = (a) => {
278
- const u = t.reduce((m, b) => b(m), e());
279
- return r = Xt(u), o = r.cache.get, n = r.cache.set, i = l, l(a);
280
- }, l = (a) => {
281
- const u = o(a);
282
- if (u)
283
- return u;
284
- const m = Zt(a, r);
285
- return n(a, m), m;
273
+ e[o] && (r = Ie(e[o])) && (t && (t += " "), t += r);
274
+ return t;
275
+ }, gt = (e, ...r) => {
276
+ let t, o, a, i;
277
+ const l = (c) => {
278
+ const g = r.reduce((f, x) => x(f), e());
279
+ return t = dt(g), o = t.cache.get, a = t.cache.set, i = p, p(c);
280
+ }, p = (c) => {
281
+ const g = o(c);
282
+ if (g)
283
+ return g;
284
+ const f = pt(c, t);
285
+ return a(c, f), f;
286
286
  };
287
- return i = s, (...a) => i(Qt(...a));
288
- }, tr = [], y = (e) => {
289
- const t = (r) => r[e] || tr;
290
- return t.isThemeGetter = !0, t;
291
- }, nt = /^\[(?:(\w[\w-]*):)?(.+)\]$/i, it = /^\((?:(\w[\w-]*):)?(.+)\)$/i, rr = /^\d+\/\d+$/, or = /^(\d+(\.\d+)?)?(xs|sm|md|lg|xl)$/, sr = /\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$/, nr = /^(rgba?|hsla?|hwb|(ok)?(lab|lch)|color-mix)\(.+\)$/, ir = /^(inset_)?-?((\d+)?\.?(\d+)[a-z]+|0)_-?((\d+)?\.?(\d+)[a-z]+|0)/, ar = /^(url|image|image-set|cross-fade|element|(repeating-)?(linear|radial|conic)-gradient)\(.+\)$/, $ = (e) => rr.test(e), h = (e) => !!e && !Number.isNaN(Number(e)), T = (e) => !!e && Number.isInteger(Number(e)), we = (e) => e.endsWith("%") && h(e.slice(0, -1)), _ = (e) => or.test(e), lr = () => !0, cr = (e) => (
287
+ return i = l, (...c) => i(ut(...c));
288
+ }, ft = [], b = (e) => {
289
+ const r = (t) => t[e] || ft;
290
+ return r.isThemeGetter = !0, r;
291
+ }, Ne = /^\[(?:(\w[\w-]*):)?(.+)\]$/i, Te = /^\((?:(\w[\w-]*):)?(.+)\)$/i, bt = /^\d+\/\d+$/, ht = /^(\d+(\.\d+)?)?(xs|sm|md|lg|xl)$/, xt = /\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$/, yt = /^(rgba?|hsla?|hwb|(ok)?(lab|lch)|color-mix)\(.+\)$/, wt = /^(inset_)?-?((\d+)?\.?(\d+)[a-z]+|0)_-?((\d+)?\.?(\d+)[a-z]+|0)/, kt = /^(url|image|image-set|cross-fade|element|(repeating-)?(linear|radial|conic)-gradient)\(.+\)$/, G = (e) => bt.test(e), u = (e) => !!e && !Number.isNaN(Number(e)), E = (e) => !!e && Number.isInteger(Number(e)), re = (e) => e.endsWith("%") && u(e.slice(0, -1)), R = (e) => ht.test(e), vt = () => !0, Ct = (e) => (
292
292
  // `colorFunctionRegex` check is necessary because color functions can have percentages in them which which would be incorrectly classified as lengths.
293
293
  // For example, `hsl(0 0% 0%)` would be classified as a length without this check.
294
294
  // I could also use lookbehind assertion in `lengthUnitRegex` but that isn't supported widely enough.
295
- sr.test(e) && !nr.test(e)
296
- ), at = () => !1, dr = (e) => ir.test(e), ur = (e) => ar.test(e), pr = (e) => !c(e) && !d(e), mr = (e) => J(e, dt, at), c = (e) => nt.test(e), F = (e) => J(e, ut, cr), ve = (e) => J(e, yr, h), We = (e) => J(e, lt, at), fr = (e) => J(e, ct, ur), ue = (e) => J(e, pt, dr), d = (e) => it.test(e), Z = (e) => Y(e, ut), hr = (e) => Y(e, xr), He = (e) => Y(e, lt), gr = (e) => Y(e, dt), br = (e) => Y(e, ct), pe = (e) => Y(e, pt, !0), J = (e, t, r) => {
297
- const o = nt.exec(e);
298
- return o ? o[1] ? t(o[1]) : r(o[2]) : !1;
299
- }, Y = (e, t, r = !1) => {
300
- const o = it.exec(e);
301
- return o ? o[1] ? t(o[1]) : r : !1;
302
- }, lt = (e) => e === "position" || e === "percentage", ct = (e) => e === "image" || e === "url", dt = (e) => e === "length" || e === "size" || e === "bg-size", ut = (e) => e === "length", yr = (e) => e === "number", xr = (e) => e === "family-name", pt = (e) => e === "shadow", wr = () => {
303
- const e = y("color"), t = y("font"), r = y("text"), o = y("font-weight"), n = y("tracking"), i = y("leading"), s = y("breakpoint"), l = y("container"), a = y("spacing"), u = y("radius"), m = y("shadow"), b = y("inset-shadow"), g = y("text-shadow"), w = y("drop-shadow"), R = y("blur"), A = y("perspective"), C = y("aspect"), N = y("ease"), ne = y("animate"), X = () => ["auto", "avoid", "all", "avoid-page", "page", "left", "right", "column"], V = () => [
295
+ xt.test(e) && !yt.test(e)
296
+ ), Me = () => !1, At = (e) => wt.test(e), zt = (e) => kt.test(e), St = (e) => !s(e) && !n(e), Rt = (e) => V(e, Pe, Me), s = (e) => Ne.test(e), L = (e) => V(e, je, Ct), oe = (e) => V(e, Mt, u), we = (e) => V(e, Le, Me), Et = (e) => V(e, Oe, zt), H = (e) => V(e, Ge, At), n = (e) => Te.test(e), W = (e) => U(e, je), It = (e) => U(e, Lt), ke = (e) => U(e, Le), Nt = (e) => U(e, Pe), Tt = (e) => U(e, Oe), X = (e) => U(e, Ge, !0), V = (e, r, t) => {
297
+ const o = Ne.exec(e);
298
+ return o ? o[1] ? r(o[1]) : t(o[2]) : !1;
299
+ }, U = (e, r, t = !1) => {
300
+ const o = Te.exec(e);
301
+ return o ? o[1] ? r(o[1]) : t : !1;
302
+ }, Le = (e) => e === "position" || e === "percentage", Oe = (e) => e === "image" || e === "url", Pe = (e) => e === "length" || e === "size" || e === "bg-size", je = (e) => e === "length", Mt = (e) => e === "number", Lt = (e) => e === "family-name", Ge = (e) => e === "shadow", Ot = () => {
303
+ const e = b("color"), r = b("font"), t = b("text"), o = b("font-weight"), a = b("tracking"), i = b("leading"), l = b("breakpoint"), p = b("container"), c = b("spacing"), g = b("radius"), f = b("shadow"), x = b("inset-shadow"), v = b("text-shadow"), A = b("drop-shadow"), I = b("blur"), C = b("perspective"), w = b("aspect"), N = b("ease"), _ = b("animate"), F = () => ["auto", "avoid", "all", "avoid-page", "page", "left", "right", "column"], O = () => [
304
304
  "center",
305
305
  "top",
306
306
  "bottom",
@@ -318,51 +318,51 @@ const Tt = (e, t) => {
318
318
  "bottom-left",
319
319
  // Deprecated since Tailwind CSS v4.1.0, see https://github.com/tailwindlabs/tailwindcss/pull/17378
320
320
  "left-bottom"
321
- ], D = () => [...V(), d, c], L = () => ["auto", "hidden", "clip", "visible", "scroll"], K = () => ["auto", "contain", "none"], f = () => [d, c, a], z = () => [$, "full", "auto", ...f()], _e = () => [T, "none", "subgrid", d, c], Oe = () => ["auto", {
322
- span: ["full", T, d, c]
323
- }, T, d, c], ie = () => [T, "auto", d, c], Te = () => ["auto", "min", "max", "fr", d, c], be = () => ["start", "end", "center", "between", "around", "evenly", "stretch", "baseline", "center-safe", "end-safe"], U = () => ["start", "end", "center", "stretch", "center-safe", "end-safe"], P = () => ["auto", ...f()], j = () => [$, "auto", "full", "dvw", "dvh", "lvw", "lvh", "svw", "svh", "min", "max", "fit", ...f()], p = () => [e, d, c], Ne = () => [...V(), He, We, {
324
- position: [d, c]
325
- }], Le = () => ["no-repeat", {
321
+ ], P = () => [...O(), n, s], T = () => ["auto", "hidden", "clip", "visible", "scroll"], B = () => ["auto", "contain", "none"], m = () => [n, s, c], z = () => [G, "full", "auto", ...m()], le = () => [E, "none", "subgrid", n, s], ie = () => ["auto", {
322
+ span: ["full", E, n, s]
323
+ }, E, n, s], D = () => [E, "auto", n, s], ce = () => ["auto", "min", "max", "fr", n, s], Q = () => ["start", "end", "center", "between", "around", "evenly", "stretch", "baseline", "center-safe", "end-safe"], j = () => ["start", "end", "center", "stretch", "center-safe", "end-safe"], S = () => ["auto", ...m()], M = () => [G, "auto", "full", "dvw", "dvh", "lvw", "lvh", "svw", "svh", "min", "max", "fit", ...m()], d = () => [e, n, s], de = () => [...O(), ke, we, {
324
+ position: [n, s]
325
+ }], me = () => ["no-repeat", {
326
326
  repeat: ["", "x", "y", "space", "round"]
327
- }], je = () => ["auto", "cover", "contain", gr, mr, {
328
- size: [d, c]
329
- }], ye = () => [we, Z, F], k = () => [
327
+ }], pe = () => ["auto", "cover", "contain", Nt, Rt, {
328
+ size: [n, s]
329
+ }], Z = () => [re, W, L], y = () => [
330
330
  // Deprecated since Tailwind CSS v4.0.0
331
331
  "",
332
332
  "none",
333
333
  "full",
334
- u,
335
- d,
336
- c
337
- ], E = () => ["", h, Z, F], ae = () => ["solid", "dashed", "dotted", "double"], Fe = () => ["normal", "multiply", "screen", "overlay", "darken", "lighten", "color-dodge", "color-burn", "hard-light", "soft-light", "difference", "exclusion", "hue", "saturation", "color", "luminosity"], x = () => [h, we, He, We], Ge = () => [
334
+ g,
335
+ n,
336
+ s
337
+ ], k = () => ["", u, W, L], $ = () => ["solid", "dashed", "dotted", "double"], ue = () => ["normal", "multiply", "screen", "overlay", "darken", "lighten", "color-dodge", "color-burn", "hard-light", "soft-light", "difference", "exclusion", "hue", "saturation", "color", "luminosity"], h = () => [u, re, ke, we], ge = () => [
338
338
  // Deprecated since Tailwind CSS v4.0.0
339
339
  "",
340
340
  "none",
341
- R,
342
- d,
343
- c
344
- ], le = () => ["none", h, d, c], ce = () => ["none", h, d, c], xe = () => [h, d, c], de = () => [$, "full", ...f()];
341
+ I,
342
+ n,
343
+ s
344
+ ], q = () => ["none", u, n, s], J = () => ["none", u, n, s], ee = () => [u, n, s], Y = () => [G, "full", ...m()];
345
345
  return {
346
346
  cacheSize: 500,
347
347
  theme: {
348
348
  animate: ["spin", "ping", "pulse", "bounce"],
349
349
  aspect: ["video"],
350
- blur: [_],
351
- breakpoint: [_],
352
- color: [lr],
353
- container: [_],
354
- "drop-shadow": [_],
350
+ blur: [R],
351
+ breakpoint: [R],
352
+ color: [vt],
353
+ container: [R],
354
+ "drop-shadow": [R],
355
355
  ease: ["in", "out", "in-out"],
356
- font: [pr],
356
+ font: [St],
357
357
  "font-weight": ["thin", "extralight", "light", "normal", "medium", "semibold", "bold", "extrabold", "black"],
358
- "inset-shadow": [_],
358
+ "inset-shadow": [R],
359
359
  leading: ["none", "tight", "snug", "normal", "relaxed", "loose"],
360
360
  perspective: ["dramatic", "near", "normal", "midrange", "distant", "none"],
361
- radius: [_],
362
- shadow: [_],
363
- spacing: ["px", h],
364
- text: [_],
365
- "text-shadow": [_],
361
+ radius: [R],
362
+ shadow: [R],
363
+ spacing: ["px", u],
364
+ text: [R],
365
+ "text-shadow": [R],
366
366
  tracking: ["tighter", "tight", "normal", "wide", "wider", "widest"]
367
367
  },
368
368
  classGroups: {
@@ -374,7 +374,7 @@ const Tt = (e, t) => {
374
374
  * @see https://tailwindcss.com/docs/aspect-ratio
375
375
  */
376
376
  aspect: [{
377
- aspect: ["auto", "square", $, c, d, C]
377
+ aspect: ["auto", "square", G, s, n, w]
378
378
  }],
379
379
  /**
380
380
  * Container
@@ -387,21 +387,21 @@ const Tt = (e, t) => {
387
387
  * @see https://tailwindcss.com/docs/columns
388
388
  */
389
389
  columns: [{
390
- columns: [h, c, d, l]
390
+ columns: [u, s, n, p]
391
391
  }],
392
392
  /**
393
393
  * Break After
394
394
  * @see https://tailwindcss.com/docs/break-after
395
395
  */
396
396
  "break-after": [{
397
- "break-after": X()
397
+ "break-after": F()
398
398
  }],
399
399
  /**
400
400
  * Break Before
401
401
  * @see https://tailwindcss.com/docs/break-before
402
402
  */
403
403
  "break-before": [{
404
- "break-before": X()
404
+ "break-before": F()
405
405
  }],
406
406
  /**
407
407
  * Break Inside
@@ -465,49 +465,49 @@ const Tt = (e, t) => {
465
465
  * @see https://tailwindcss.com/docs/object-position
466
466
  */
467
467
  "object-position": [{
468
- object: D()
468
+ object: P()
469
469
  }],
470
470
  /**
471
471
  * Overflow
472
472
  * @see https://tailwindcss.com/docs/overflow
473
473
  */
474
474
  overflow: [{
475
- overflow: L()
475
+ overflow: T()
476
476
  }],
477
477
  /**
478
478
  * Overflow X
479
479
  * @see https://tailwindcss.com/docs/overflow
480
480
  */
481
481
  "overflow-x": [{
482
- "overflow-x": L()
482
+ "overflow-x": T()
483
483
  }],
484
484
  /**
485
485
  * Overflow Y
486
486
  * @see https://tailwindcss.com/docs/overflow
487
487
  */
488
488
  "overflow-y": [{
489
- "overflow-y": L()
489
+ "overflow-y": T()
490
490
  }],
491
491
  /**
492
492
  * Overscroll Behavior
493
493
  * @see https://tailwindcss.com/docs/overscroll-behavior
494
494
  */
495
495
  overscroll: [{
496
- overscroll: K()
496
+ overscroll: B()
497
497
  }],
498
498
  /**
499
499
  * Overscroll Behavior X
500
500
  * @see https://tailwindcss.com/docs/overscroll-behavior
501
501
  */
502
502
  "overscroll-x": [{
503
- "overscroll-x": K()
503
+ "overscroll-x": B()
504
504
  }],
505
505
  /**
506
506
  * Overscroll Behavior Y
507
507
  * @see https://tailwindcss.com/docs/overscroll-behavior
508
508
  */
509
509
  "overscroll-y": [{
510
- "overscroll-y": K()
510
+ "overscroll-y": B()
511
511
  }],
512
512
  /**
513
513
  * Position
@@ -587,7 +587,7 @@ const Tt = (e, t) => {
587
587
  * @see https://tailwindcss.com/docs/z-index
588
588
  */
589
589
  z: [{
590
- z: [T, "auto", d, c]
590
+ z: [E, "auto", n, s]
591
591
  }],
592
592
  // ------------------------
593
593
  // --- Flexbox and Grid ---
@@ -597,7 +597,7 @@ const Tt = (e, t) => {
597
597
  * @see https://tailwindcss.com/docs/flex-basis
598
598
  */
599
599
  basis: [{
600
- basis: [$, "full", "auto", l, ...f()]
600
+ basis: [G, "full", "auto", p, ...m()]
601
601
  }],
602
602
  /**
603
603
  * Flex Direction
@@ -618,84 +618,84 @@ const Tt = (e, t) => {
618
618
  * @see https://tailwindcss.com/docs/flex
619
619
  */
620
620
  flex: [{
621
- flex: [h, $, "auto", "initial", "none", c]
621
+ flex: [u, G, "auto", "initial", "none", s]
622
622
  }],
623
623
  /**
624
624
  * Flex Grow
625
625
  * @see https://tailwindcss.com/docs/flex-grow
626
626
  */
627
627
  grow: [{
628
- grow: ["", h, d, c]
628
+ grow: ["", u, n, s]
629
629
  }],
630
630
  /**
631
631
  * Flex Shrink
632
632
  * @see https://tailwindcss.com/docs/flex-shrink
633
633
  */
634
634
  shrink: [{
635
- shrink: ["", h, d, c]
635
+ shrink: ["", u, n, s]
636
636
  }],
637
637
  /**
638
638
  * Order
639
639
  * @see https://tailwindcss.com/docs/order
640
640
  */
641
641
  order: [{
642
- order: [T, "first", "last", "none", d, c]
642
+ order: [E, "first", "last", "none", n, s]
643
643
  }],
644
644
  /**
645
645
  * Grid Template Columns
646
646
  * @see https://tailwindcss.com/docs/grid-template-columns
647
647
  */
648
648
  "grid-cols": [{
649
- "grid-cols": _e()
649
+ "grid-cols": le()
650
650
  }],
651
651
  /**
652
652
  * Grid Column Start / End
653
653
  * @see https://tailwindcss.com/docs/grid-column
654
654
  */
655
655
  "col-start-end": [{
656
- col: Oe()
656
+ col: ie()
657
657
  }],
658
658
  /**
659
659
  * Grid Column Start
660
660
  * @see https://tailwindcss.com/docs/grid-column
661
661
  */
662
662
  "col-start": [{
663
- "col-start": ie()
663
+ "col-start": D()
664
664
  }],
665
665
  /**
666
666
  * Grid Column End
667
667
  * @see https://tailwindcss.com/docs/grid-column
668
668
  */
669
669
  "col-end": [{
670
- "col-end": ie()
670
+ "col-end": D()
671
671
  }],
672
672
  /**
673
673
  * Grid Template Rows
674
674
  * @see https://tailwindcss.com/docs/grid-template-rows
675
675
  */
676
676
  "grid-rows": [{
677
- "grid-rows": _e()
677
+ "grid-rows": le()
678
678
  }],
679
679
  /**
680
680
  * Grid Row Start / End
681
681
  * @see https://tailwindcss.com/docs/grid-row
682
682
  */
683
683
  "row-start-end": [{
684
- row: Oe()
684
+ row: ie()
685
685
  }],
686
686
  /**
687
687
  * Grid Row Start
688
688
  * @see https://tailwindcss.com/docs/grid-row
689
689
  */
690
690
  "row-start": [{
691
- "row-start": ie()
691
+ "row-start": D()
692
692
  }],
693
693
  /**
694
694
  * Grid Row End
695
695
  * @see https://tailwindcss.com/docs/grid-row
696
696
  */
697
697
  "row-end": [{
698
- "row-end": ie()
698
+ "row-end": D()
699
699
  }],
700
700
  /**
701
701
  * Grid Auto Flow
@@ -709,70 +709,70 @@ const Tt = (e, t) => {
709
709
  * @see https://tailwindcss.com/docs/grid-auto-columns
710
710
  */
711
711
  "auto-cols": [{
712
- "auto-cols": Te()
712
+ "auto-cols": ce()
713
713
  }],
714
714
  /**
715
715
  * Grid Auto Rows
716
716
  * @see https://tailwindcss.com/docs/grid-auto-rows
717
717
  */
718
718
  "auto-rows": [{
719
- "auto-rows": Te()
719
+ "auto-rows": ce()
720
720
  }],
721
721
  /**
722
722
  * Gap
723
723
  * @see https://tailwindcss.com/docs/gap
724
724
  */
725
725
  gap: [{
726
- gap: f()
726
+ gap: m()
727
727
  }],
728
728
  /**
729
729
  * Gap X
730
730
  * @see https://tailwindcss.com/docs/gap
731
731
  */
732
732
  "gap-x": [{
733
- "gap-x": f()
733
+ "gap-x": m()
734
734
  }],
735
735
  /**
736
736
  * Gap Y
737
737
  * @see https://tailwindcss.com/docs/gap
738
738
  */
739
739
  "gap-y": [{
740
- "gap-y": f()
740
+ "gap-y": m()
741
741
  }],
742
742
  /**
743
743
  * Justify Content
744
744
  * @see https://tailwindcss.com/docs/justify-content
745
745
  */
746
746
  "justify-content": [{
747
- justify: [...be(), "normal"]
747
+ justify: [...Q(), "normal"]
748
748
  }],
749
749
  /**
750
750
  * Justify Items
751
751
  * @see https://tailwindcss.com/docs/justify-items
752
752
  */
753
753
  "justify-items": [{
754
- "justify-items": [...U(), "normal"]
754
+ "justify-items": [...j(), "normal"]
755
755
  }],
756
756
  /**
757
757
  * Justify Self
758
758
  * @see https://tailwindcss.com/docs/justify-self
759
759
  */
760
760
  "justify-self": [{
761
- "justify-self": ["auto", ...U()]
761
+ "justify-self": ["auto", ...j()]
762
762
  }],
763
763
  /**
764
764
  * Align Content
765
765
  * @see https://tailwindcss.com/docs/align-content
766
766
  */
767
767
  "align-content": [{
768
- content: ["normal", ...be()]
768
+ content: ["normal", ...Q()]
769
769
  }],
770
770
  /**
771
771
  * Align Items
772
772
  * @see https://tailwindcss.com/docs/align-items
773
773
  */
774
774
  "align-items": [{
775
- items: [...U(), {
775
+ items: [...j(), {
776
776
  baseline: ["", "last"]
777
777
  }]
778
778
  }],
@@ -781,7 +781,7 @@ const Tt = (e, t) => {
781
781
  * @see https://tailwindcss.com/docs/align-self
782
782
  */
783
783
  "align-self": [{
784
- self: ["auto", ...U(), {
784
+ self: ["auto", ...j(), {
785
785
  baseline: ["", "last"]
786
786
  }]
787
787
  }],
@@ -790,21 +790,21 @@ const Tt = (e, t) => {
790
790
  * @see https://tailwindcss.com/docs/place-content
791
791
  */
792
792
  "place-content": [{
793
- "place-content": be()
793
+ "place-content": Q()
794
794
  }],
795
795
  /**
796
796
  * Place Items
797
797
  * @see https://tailwindcss.com/docs/place-items
798
798
  */
799
799
  "place-items": [{
800
- "place-items": [...U(), "baseline"]
800
+ "place-items": [...j(), "baseline"]
801
801
  }],
802
802
  /**
803
803
  * Place Self
804
804
  * @see https://tailwindcss.com/docs/place-self
805
805
  */
806
806
  "place-self": [{
807
- "place-self": ["auto", ...U()]
807
+ "place-self": ["auto", ...j()]
808
808
  }],
809
809
  // Spacing
810
810
  /**
@@ -812,133 +812,133 @@ const Tt = (e, t) => {
812
812
  * @see https://tailwindcss.com/docs/padding
813
813
  */
814
814
  p: [{
815
- p: f()
815
+ p: m()
816
816
  }],
817
817
  /**
818
818
  * Padding X
819
819
  * @see https://tailwindcss.com/docs/padding
820
820
  */
821
821
  px: [{
822
- px: f()
822
+ px: m()
823
823
  }],
824
824
  /**
825
825
  * Padding Y
826
826
  * @see https://tailwindcss.com/docs/padding
827
827
  */
828
828
  py: [{
829
- py: f()
829
+ py: m()
830
830
  }],
831
831
  /**
832
832
  * Padding Start
833
833
  * @see https://tailwindcss.com/docs/padding
834
834
  */
835
835
  ps: [{
836
- ps: f()
836
+ ps: m()
837
837
  }],
838
838
  /**
839
839
  * Padding End
840
840
  * @see https://tailwindcss.com/docs/padding
841
841
  */
842
842
  pe: [{
843
- pe: f()
843
+ pe: m()
844
844
  }],
845
845
  /**
846
846
  * Padding Top
847
847
  * @see https://tailwindcss.com/docs/padding
848
848
  */
849
849
  pt: [{
850
- pt: f()
850
+ pt: m()
851
851
  }],
852
852
  /**
853
853
  * Padding Right
854
854
  * @see https://tailwindcss.com/docs/padding
855
855
  */
856
856
  pr: [{
857
- pr: f()
857
+ pr: m()
858
858
  }],
859
859
  /**
860
860
  * Padding Bottom
861
861
  * @see https://tailwindcss.com/docs/padding
862
862
  */
863
863
  pb: [{
864
- pb: f()
864
+ pb: m()
865
865
  }],
866
866
  /**
867
867
  * Padding Left
868
868
  * @see https://tailwindcss.com/docs/padding
869
869
  */
870
870
  pl: [{
871
- pl: f()
871
+ pl: m()
872
872
  }],
873
873
  /**
874
874
  * Margin
875
875
  * @see https://tailwindcss.com/docs/margin
876
876
  */
877
877
  m: [{
878
- m: P()
878
+ m: S()
879
879
  }],
880
880
  /**
881
881
  * Margin X
882
882
  * @see https://tailwindcss.com/docs/margin
883
883
  */
884
884
  mx: [{
885
- mx: P()
885
+ mx: S()
886
886
  }],
887
887
  /**
888
888
  * Margin Y
889
889
  * @see https://tailwindcss.com/docs/margin
890
890
  */
891
891
  my: [{
892
- my: P()
892
+ my: S()
893
893
  }],
894
894
  /**
895
895
  * Margin Start
896
896
  * @see https://tailwindcss.com/docs/margin
897
897
  */
898
898
  ms: [{
899
- ms: P()
899
+ ms: S()
900
900
  }],
901
901
  /**
902
902
  * Margin End
903
903
  * @see https://tailwindcss.com/docs/margin
904
904
  */
905
905
  me: [{
906
- me: P()
906
+ me: S()
907
907
  }],
908
908
  /**
909
909
  * Margin Top
910
910
  * @see https://tailwindcss.com/docs/margin
911
911
  */
912
912
  mt: [{
913
- mt: P()
913
+ mt: S()
914
914
  }],
915
915
  /**
916
916
  * Margin Right
917
917
  * @see https://tailwindcss.com/docs/margin
918
918
  */
919
919
  mr: [{
920
- mr: P()
920
+ mr: S()
921
921
  }],
922
922
  /**
923
923
  * Margin Bottom
924
924
  * @see https://tailwindcss.com/docs/margin
925
925
  */
926
926
  mb: [{
927
- mb: P()
927
+ mb: S()
928
928
  }],
929
929
  /**
930
930
  * Margin Left
931
931
  * @see https://tailwindcss.com/docs/margin
932
932
  */
933
933
  ml: [{
934
- ml: P()
934
+ ml: S()
935
935
  }],
936
936
  /**
937
937
  * Space Between X
938
938
  * @see https://tailwindcss.com/docs/margin#adding-space-between-children
939
939
  */
940
940
  "space-x": [{
941
- "space-x": f()
941
+ "space-x": m()
942
942
  }],
943
943
  /**
944
944
  * Space Between X Reverse
@@ -950,7 +950,7 @@ const Tt = (e, t) => {
950
950
  * @see https://tailwindcss.com/docs/margin#adding-space-between-children
951
951
  */
952
952
  "space-y": [{
953
- "space-y": f()
953
+ "space-y": m()
954
954
  }],
955
955
  /**
956
956
  * Space Between Y Reverse
@@ -965,14 +965,14 @@ const Tt = (e, t) => {
965
965
  * @see https://tailwindcss.com/docs/width#setting-both-width-and-height
966
966
  */
967
967
  size: [{
968
- size: j()
968
+ size: M()
969
969
  }],
970
970
  /**
971
971
  * Width
972
972
  * @see https://tailwindcss.com/docs/width
973
973
  */
974
974
  w: [{
975
- w: [l, "screen", ...j()]
975
+ w: [p, "screen", ...M()]
976
976
  }],
977
977
  /**
978
978
  * Min-Width
@@ -980,11 +980,11 @@ const Tt = (e, t) => {
980
980
  */
981
981
  "min-w": [{
982
982
  "min-w": [
983
- l,
983
+ p,
984
984
  "screen",
985
985
  /** Deprecated. @see https://github.com/tailwindlabs/tailwindcss.com/issues/2027#issuecomment-2620152757 */
986
986
  "none",
987
- ...j()
987
+ ...M()
988
988
  ]
989
989
  }],
990
990
  /**
@@ -993,16 +993,16 @@ const Tt = (e, t) => {
993
993
  */
994
994
  "max-w": [{
995
995
  "max-w": [
996
- l,
996
+ p,
997
997
  "screen",
998
998
  "none",
999
999
  /** Deprecated since Tailwind CSS v4.0.0. @see https://github.com/tailwindlabs/tailwindcss.com/issues/2027#issuecomment-2620152757 */
1000
1000
  "prose",
1001
1001
  /** Deprecated since Tailwind CSS v4.0.0. @see https://github.com/tailwindlabs/tailwindcss.com/issues/2027#issuecomment-2620152757 */
1002
1002
  {
1003
- screen: [s]
1003
+ screen: [l]
1004
1004
  },
1005
- ...j()
1005
+ ...M()
1006
1006
  ]
1007
1007
  }],
1008
1008
  /**
@@ -1010,21 +1010,21 @@ const Tt = (e, t) => {
1010
1010
  * @see https://tailwindcss.com/docs/height
1011
1011
  */
1012
1012
  h: [{
1013
- h: ["screen", "lh", ...j()]
1013
+ h: ["screen", "lh", ...M()]
1014
1014
  }],
1015
1015
  /**
1016
1016
  * Min-Height
1017
1017
  * @see https://tailwindcss.com/docs/min-height
1018
1018
  */
1019
1019
  "min-h": [{
1020
- "min-h": ["screen", "lh", "none", ...j()]
1020
+ "min-h": ["screen", "lh", "none", ...M()]
1021
1021
  }],
1022
1022
  /**
1023
1023
  * Max-Height
1024
1024
  * @see https://tailwindcss.com/docs/max-height
1025
1025
  */
1026
1026
  "max-h": [{
1027
- "max-h": ["screen", "lh", ...j()]
1027
+ "max-h": ["screen", "lh", ...M()]
1028
1028
  }],
1029
1029
  // ------------------
1030
1030
  // --- Typography ---
@@ -1034,7 +1034,7 @@ const Tt = (e, t) => {
1034
1034
  * @see https://tailwindcss.com/docs/font-size
1035
1035
  */
1036
1036
  "font-size": [{
1037
- text: ["base", r, Z, F]
1037
+ text: ["base", t, W, L]
1038
1038
  }],
1039
1039
  /**
1040
1040
  * Font Smoothing
@@ -1051,21 +1051,21 @@ const Tt = (e, t) => {
1051
1051
  * @see https://tailwindcss.com/docs/font-weight
1052
1052
  */
1053
1053
  "font-weight": [{
1054
- font: [o, d, ve]
1054
+ font: [o, n, oe]
1055
1055
  }],
1056
1056
  /**
1057
1057
  * Font Stretch
1058
1058
  * @see https://tailwindcss.com/docs/font-stretch
1059
1059
  */
1060
1060
  "font-stretch": [{
1061
- "font-stretch": ["ultra-condensed", "extra-condensed", "condensed", "semi-condensed", "normal", "semi-expanded", "expanded", "extra-expanded", "ultra-expanded", we, c]
1061
+ "font-stretch": ["ultra-condensed", "extra-condensed", "condensed", "semi-condensed", "normal", "semi-expanded", "expanded", "extra-expanded", "ultra-expanded", re, s]
1062
1062
  }],
1063
1063
  /**
1064
1064
  * Font Family
1065
1065
  * @see https://tailwindcss.com/docs/font-family
1066
1066
  */
1067
1067
  "font-family": [{
1068
- font: [hr, c, t]
1068
+ font: [It, s, r]
1069
1069
  }],
1070
1070
  /**
1071
1071
  * Font Variant Numeric
@@ -1102,14 +1102,14 @@ const Tt = (e, t) => {
1102
1102
  * @see https://tailwindcss.com/docs/letter-spacing
1103
1103
  */
1104
1104
  tracking: [{
1105
- tracking: [n, d, c]
1105
+ tracking: [a, n, s]
1106
1106
  }],
1107
1107
  /**
1108
1108
  * Line Clamp
1109
1109
  * @see https://tailwindcss.com/docs/line-clamp
1110
1110
  */
1111
1111
  "line-clamp": [{
1112
- "line-clamp": [h, "none", d, ve]
1112
+ "line-clamp": [u, "none", n, oe]
1113
1113
  }],
1114
1114
  /**
1115
1115
  * Line Height
@@ -1119,7 +1119,7 @@ const Tt = (e, t) => {
1119
1119
  leading: [
1120
1120
  /** Deprecated since Tailwind CSS v4.0.0. @see https://github.com/tailwindlabs/tailwindcss.com/issues/2027#issuecomment-2620152757 */
1121
1121
  i,
1122
- ...f()
1122
+ ...m()
1123
1123
  ]
1124
1124
  }],
1125
1125
  /**
@@ -1127,7 +1127,7 @@ const Tt = (e, t) => {
1127
1127
  * @see https://tailwindcss.com/docs/list-style-image
1128
1128
  */
1129
1129
  "list-image": [{
1130
- "list-image": ["none", d, c]
1130
+ "list-image": ["none", n, s]
1131
1131
  }],
1132
1132
  /**
1133
1133
  * List Style Position
@@ -1141,7 +1141,7 @@ const Tt = (e, t) => {
1141
1141
  * @see https://tailwindcss.com/docs/list-style-type
1142
1142
  */
1143
1143
  "list-style-type": [{
1144
- list: ["disc", "decimal", "none", d, c]
1144
+ list: ["disc", "decimal", "none", n, s]
1145
1145
  }],
1146
1146
  /**
1147
1147
  * Text Alignment
@@ -1156,14 +1156,14 @@ const Tt = (e, t) => {
1156
1156
  * @see https://v3.tailwindcss.com/docs/placeholder-color
1157
1157
  */
1158
1158
  "placeholder-color": [{
1159
- placeholder: p()
1159
+ placeholder: d()
1160
1160
  }],
1161
1161
  /**
1162
1162
  * Text Color
1163
1163
  * @see https://tailwindcss.com/docs/text-color
1164
1164
  */
1165
1165
  "text-color": [{
1166
- text: p()
1166
+ text: d()
1167
1167
  }],
1168
1168
  /**
1169
1169
  * Text Decoration
@@ -1175,28 +1175,28 @@ const Tt = (e, t) => {
1175
1175
  * @see https://tailwindcss.com/docs/text-decoration-style
1176
1176
  */
1177
1177
  "text-decoration-style": [{
1178
- decoration: [...ae(), "wavy"]
1178
+ decoration: [...$(), "wavy"]
1179
1179
  }],
1180
1180
  /**
1181
1181
  * Text Decoration Thickness
1182
1182
  * @see https://tailwindcss.com/docs/text-decoration-thickness
1183
1183
  */
1184
1184
  "text-decoration-thickness": [{
1185
- decoration: [h, "from-font", "auto", d, F]
1185
+ decoration: [u, "from-font", "auto", n, L]
1186
1186
  }],
1187
1187
  /**
1188
1188
  * Text Decoration Color
1189
1189
  * @see https://tailwindcss.com/docs/text-decoration-color
1190
1190
  */
1191
1191
  "text-decoration-color": [{
1192
- decoration: p()
1192
+ decoration: d()
1193
1193
  }],
1194
1194
  /**
1195
1195
  * Text Underline Offset
1196
1196
  * @see https://tailwindcss.com/docs/text-underline-offset
1197
1197
  */
1198
1198
  "underline-offset": [{
1199
- "underline-offset": [h, "auto", d, c]
1199
+ "underline-offset": [u, "auto", n, s]
1200
1200
  }],
1201
1201
  /**
1202
1202
  * Text Transform
@@ -1220,14 +1220,14 @@ const Tt = (e, t) => {
1220
1220
  * @see https://tailwindcss.com/docs/text-indent
1221
1221
  */
1222
1222
  indent: [{
1223
- indent: f()
1223
+ indent: m()
1224
1224
  }],
1225
1225
  /**
1226
1226
  * Vertical Alignment
1227
1227
  * @see https://tailwindcss.com/docs/vertical-align
1228
1228
  */
1229
1229
  "vertical-align": [{
1230
- align: ["baseline", "top", "middle", "bottom", "text-top", "text-bottom", "sub", "super", d, c]
1230
+ align: ["baseline", "top", "middle", "bottom", "text-top", "text-bottom", "sub", "super", n, s]
1231
1231
  }],
1232
1232
  /**
1233
1233
  * Whitespace
@@ -1262,7 +1262,7 @@ const Tt = (e, t) => {
1262
1262
  * @see https://tailwindcss.com/docs/content
1263
1263
  */
1264
1264
  content: [{
1265
- content: ["none", d, c]
1265
+ content: ["none", n, s]
1266
1266
  }],
1267
1267
  // -------------------
1268
1268
  // --- Backgrounds ---
@@ -1293,21 +1293,21 @@ const Tt = (e, t) => {
1293
1293
  * @see https://tailwindcss.com/docs/background-position
1294
1294
  */
1295
1295
  "bg-position": [{
1296
- bg: Ne()
1296
+ bg: de()
1297
1297
  }],
1298
1298
  /**
1299
1299
  * Background Repeat
1300
1300
  * @see https://tailwindcss.com/docs/background-repeat
1301
1301
  */
1302
1302
  "bg-repeat": [{
1303
- bg: Le()
1303
+ bg: me()
1304
1304
  }],
1305
1305
  /**
1306
1306
  * Background Size
1307
1307
  * @see https://tailwindcss.com/docs/background-size
1308
1308
  */
1309
1309
  "bg-size": [{
1310
- bg: je()
1310
+ bg: pe()
1311
1311
  }],
1312
1312
  /**
1313
1313
  * Background Image
@@ -1317,59 +1317,59 @@ const Tt = (e, t) => {
1317
1317
  bg: ["none", {
1318
1318
  linear: [{
1319
1319
  to: ["t", "tr", "r", "br", "b", "bl", "l", "tl"]
1320
- }, T, d, c],
1321
- radial: ["", d, c],
1322
- conic: [T, d, c]
1323
- }, br, fr]
1320
+ }, E, n, s],
1321
+ radial: ["", n, s],
1322
+ conic: [E, n, s]
1323
+ }, Tt, Et]
1324
1324
  }],
1325
1325
  /**
1326
1326
  * Background Color
1327
1327
  * @see https://tailwindcss.com/docs/background-color
1328
1328
  */
1329
1329
  "bg-color": [{
1330
- bg: p()
1330
+ bg: d()
1331
1331
  }],
1332
1332
  /**
1333
1333
  * Gradient Color Stops From Position
1334
1334
  * @see https://tailwindcss.com/docs/gradient-color-stops
1335
1335
  */
1336
1336
  "gradient-from-pos": [{
1337
- from: ye()
1337
+ from: Z()
1338
1338
  }],
1339
1339
  /**
1340
1340
  * Gradient Color Stops Via Position
1341
1341
  * @see https://tailwindcss.com/docs/gradient-color-stops
1342
1342
  */
1343
1343
  "gradient-via-pos": [{
1344
- via: ye()
1344
+ via: Z()
1345
1345
  }],
1346
1346
  /**
1347
1347
  * Gradient Color Stops To Position
1348
1348
  * @see https://tailwindcss.com/docs/gradient-color-stops
1349
1349
  */
1350
1350
  "gradient-to-pos": [{
1351
- to: ye()
1351
+ to: Z()
1352
1352
  }],
1353
1353
  /**
1354
1354
  * Gradient Color Stops From
1355
1355
  * @see https://tailwindcss.com/docs/gradient-color-stops
1356
1356
  */
1357
1357
  "gradient-from": [{
1358
- from: p()
1358
+ from: d()
1359
1359
  }],
1360
1360
  /**
1361
1361
  * Gradient Color Stops Via
1362
1362
  * @see https://tailwindcss.com/docs/gradient-color-stops
1363
1363
  */
1364
1364
  "gradient-via": [{
1365
- via: p()
1365
+ via: d()
1366
1366
  }],
1367
1367
  /**
1368
1368
  * Gradient Color Stops To
1369
1369
  * @see https://tailwindcss.com/docs/gradient-color-stops
1370
1370
  */
1371
1371
  "gradient-to": [{
1372
- to: p()
1372
+ to: d()
1373
1373
  }],
1374
1374
  // ---------------
1375
1375
  // --- Borders ---
@@ -1379,175 +1379,175 @@ const Tt = (e, t) => {
1379
1379
  * @see https://tailwindcss.com/docs/border-radius
1380
1380
  */
1381
1381
  rounded: [{
1382
- rounded: k()
1382
+ rounded: y()
1383
1383
  }],
1384
1384
  /**
1385
1385
  * Border Radius Start
1386
1386
  * @see https://tailwindcss.com/docs/border-radius
1387
1387
  */
1388
1388
  "rounded-s": [{
1389
- "rounded-s": k()
1389
+ "rounded-s": y()
1390
1390
  }],
1391
1391
  /**
1392
1392
  * Border Radius End
1393
1393
  * @see https://tailwindcss.com/docs/border-radius
1394
1394
  */
1395
1395
  "rounded-e": [{
1396
- "rounded-e": k()
1396
+ "rounded-e": y()
1397
1397
  }],
1398
1398
  /**
1399
1399
  * Border Radius Top
1400
1400
  * @see https://tailwindcss.com/docs/border-radius
1401
1401
  */
1402
1402
  "rounded-t": [{
1403
- "rounded-t": k()
1403
+ "rounded-t": y()
1404
1404
  }],
1405
1405
  /**
1406
1406
  * Border Radius Right
1407
1407
  * @see https://tailwindcss.com/docs/border-radius
1408
1408
  */
1409
1409
  "rounded-r": [{
1410
- "rounded-r": k()
1410
+ "rounded-r": y()
1411
1411
  }],
1412
1412
  /**
1413
1413
  * Border Radius Bottom
1414
1414
  * @see https://tailwindcss.com/docs/border-radius
1415
1415
  */
1416
1416
  "rounded-b": [{
1417
- "rounded-b": k()
1417
+ "rounded-b": y()
1418
1418
  }],
1419
1419
  /**
1420
1420
  * Border Radius Left
1421
1421
  * @see https://tailwindcss.com/docs/border-radius
1422
1422
  */
1423
1423
  "rounded-l": [{
1424
- "rounded-l": k()
1424
+ "rounded-l": y()
1425
1425
  }],
1426
1426
  /**
1427
1427
  * Border Radius Start Start
1428
1428
  * @see https://tailwindcss.com/docs/border-radius
1429
1429
  */
1430
1430
  "rounded-ss": [{
1431
- "rounded-ss": k()
1431
+ "rounded-ss": y()
1432
1432
  }],
1433
1433
  /**
1434
1434
  * Border Radius Start End
1435
1435
  * @see https://tailwindcss.com/docs/border-radius
1436
1436
  */
1437
1437
  "rounded-se": [{
1438
- "rounded-se": k()
1438
+ "rounded-se": y()
1439
1439
  }],
1440
1440
  /**
1441
1441
  * Border Radius End End
1442
1442
  * @see https://tailwindcss.com/docs/border-radius
1443
1443
  */
1444
1444
  "rounded-ee": [{
1445
- "rounded-ee": k()
1445
+ "rounded-ee": y()
1446
1446
  }],
1447
1447
  /**
1448
1448
  * Border Radius End Start
1449
1449
  * @see https://tailwindcss.com/docs/border-radius
1450
1450
  */
1451
1451
  "rounded-es": [{
1452
- "rounded-es": k()
1452
+ "rounded-es": y()
1453
1453
  }],
1454
1454
  /**
1455
1455
  * Border Radius Top Left
1456
1456
  * @see https://tailwindcss.com/docs/border-radius
1457
1457
  */
1458
1458
  "rounded-tl": [{
1459
- "rounded-tl": k()
1459
+ "rounded-tl": y()
1460
1460
  }],
1461
1461
  /**
1462
1462
  * Border Radius Top Right
1463
1463
  * @see https://tailwindcss.com/docs/border-radius
1464
1464
  */
1465
1465
  "rounded-tr": [{
1466
- "rounded-tr": k()
1466
+ "rounded-tr": y()
1467
1467
  }],
1468
1468
  /**
1469
1469
  * Border Radius Bottom Right
1470
1470
  * @see https://tailwindcss.com/docs/border-radius
1471
1471
  */
1472
1472
  "rounded-br": [{
1473
- "rounded-br": k()
1473
+ "rounded-br": y()
1474
1474
  }],
1475
1475
  /**
1476
1476
  * Border Radius Bottom Left
1477
1477
  * @see https://tailwindcss.com/docs/border-radius
1478
1478
  */
1479
1479
  "rounded-bl": [{
1480
- "rounded-bl": k()
1480
+ "rounded-bl": y()
1481
1481
  }],
1482
1482
  /**
1483
1483
  * Border Width
1484
1484
  * @see https://tailwindcss.com/docs/border-width
1485
1485
  */
1486
1486
  "border-w": [{
1487
- border: E()
1487
+ border: k()
1488
1488
  }],
1489
1489
  /**
1490
1490
  * Border Width X
1491
1491
  * @see https://tailwindcss.com/docs/border-width
1492
1492
  */
1493
1493
  "border-w-x": [{
1494
- "border-x": E()
1494
+ "border-x": k()
1495
1495
  }],
1496
1496
  /**
1497
1497
  * Border Width Y
1498
1498
  * @see https://tailwindcss.com/docs/border-width
1499
1499
  */
1500
1500
  "border-w-y": [{
1501
- "border-y": E()
1501
+ "border-y": k()
1502
1502
  }],
1503
1503
  /**
1504
1504
  * Border Width Start
1505
1505
  * @see https://tailwindcss.com/docs/border-width
1506
1506
  */
1507
1507
  "border-w-s": [{
1508
- "border-s": E()
1508
+ "border-s": k()
1509
1509
  }],
1510
1510
  /**
1511
1511
  * Border Width End
1512
1512
  * @see https://tailwindcss.com/docs/border-width
1513
1513
  */
1514
1514
  "border-w-e": [{
1515
- "border-e": E()
1515
+ "border-e": k()
1516
1516
  }],
1517
1517
  /**
1518
1518
  * Border Width Top
1519
1519
  * @see https://tailwindcss.com/docs/border-width
1520
1520
  */
1521
1521
  "border-w-t": [{
1522
- "border-t": E()
1522
+ "border-t": k()
1523
1523
  }],
1524
1524
  /**
1525
1525
  * Border Width Right
1526
1526
  * @see https://tailwindcss.com/docs/border-width
1527
1527
  */
1528
1528
  "border-w-r": [{
1529
- "border-r": E()
1529
+ "border-r": k()
1530
1530
  }],
1531
1531
  /**
1532
1532
  * Border Width Bottom
1533
1533
  * @see https://tailwindcss.com/docs/border-width
1534
1534
  */
1535
1535
  "border-w-b": [{
1536
- "border-b": E()
1536
+ "border-b": k()
1537
1537
  }],
1538
1538
  /**
1539
1539
  * Border Width Left
1540
1540
  * @see https://tailwindcss.com/docs/border-width
1541
1541
  */
1542
1542
  "border-w-l": [{
1543
- "border-l": E()
1543
+ "border-l": k()
1544
1544
  }],
1545
1545
  /**
1546
1546
  * Divide Width X
1547
1547
  * @see https://tailwindcss.com/docs/border-width#between-children
1548
1548
  */
1549
1549
  "divide-x": [{
1550
- "divide-x": E()
1550
+ "divide-x": k()
1551
1551
  }],
1552
1552
  /**
1553
1553
  * Divide Width X Reverse
@@ -1559,7 +1559,7 @@ const Tt = (e, t) => {
1559
1559
  * @see https://tailwindcss.com/docs/border-width#between-children
1560
1560
  */
1561
1561
  "divide-y": [{
1562
- "divide-y": E()
1562
+ "divide-y": k()
1563
1563
  }],
1564
1564
  /**
1565
1565
  * Divide Width Y Reverse
@@ -1571,112 +1571,112 @@ const Tt = (e, t) => {
1571
1571
  * @see https://tailwindcss.com/docs/border-style
1572
1572
  */
1573
1573
  "border-style": [{
1574
- border: [...ae(), "hidden", "none"]
1574
+ border: [...$(), "hidden", "none"]
1575
1575
  }],
1576
1576
  /**
1577
1577
  * Divide Style
1578
1578
  * @see https://tailwindcss.com/docs/border-style#setting-the-divider-style
1579
1579
  */
1580
1580
  "divide-style": [{
1581
- divide: [...ae(), "hidden", "none"]
1581
+ divide: [...$(), "hidden", "none"]
1582
1582
  }],
1583
1583
  /**
1584
1584
  * Border Color
1585
1585
  * @see https://tailwindcss.com/docs/border-color
1586
1586
  */
1587
1587
  "border-color": [{
1588
- border: p()
1588
+ border: d()
1589
1589
  }],
1590
1590
  /**
1591
1591
  * Border Color X
1592
1592
  * @see https://tailwindcss.com/docs/border-color
1593
1593
  */
1594
1594
  "border-color-x": [{
1595
- "border-x": p()
1595
+ "border-x": d()
1596
1596
  }],
1597
1597
  /**
1598
1598
  * Border Color Y
1599
1599
  * @see https://tailwindcss.com/docs/border-color
1600
1600
  */
1601
1601
  "border-color-y": [{
1602
- "border-y": p()
1602
+ "border-y": d()
1603
1603
  }],
1604
1604
  /**
1605
1605
  * Border Color S
1606
1606
  * @see https://tailwindcss.com/docs/border-color
1607
1607
  */
1608
1608
  "border-color-s": [{
1609
- "border-s": p()
1609
+ "border-s": d()
1610
1610
  }],
1611
1611
  /**
1612
1612
  * Border Color E
1613
1613
  * @see https://tailwindcss.com/docs/border-color
1614
1614
  */
1615
1615
  "border-color-e": [{
1616
- "border-e": p()
1616
+ "border-e": d()
1617
1617
  }],
1618
1618
  /**
1619
1619
  * Border Color Top
1620
1620
  * @see https://tailwindcss.com/docs/border-color
1621
1621
  */
1622
1622
  "border-color-t": [{
1623
- "border-t": p()
1623
+ "border-t": d()
1624
1624
  }],
1625
1625
  /**
1626
1626
  * Border Color Right
1627
1627
  * @see https://tailwindcss.com/docs/border-color
1628
1628
  */
1629
1629
  "border-color-r": [{
1630
- "border-r": p()
1630
+ "border-r": d()
1631
1631
  }],
1632
1632
  /**
1633
1633
  * Border Color Bottom
1634
1634
  * @see https://tailwindcss.com/docs/border-color
1635
1635
  */
1636
1636
  "border-color-b": [{
1637
- "border-b": p()
1637
+ "border-b": d()
1638
1638
  }],
1639
1639
  /**
1640
1640
  * Border Color Left
1641
1641
  * @see https://tailwindcss.com/docs/border-color
1642
1642
  */
1643
1643
  "border-color-l": [{
1644
- "border-l": p()
1644
+ "border-l": d()
1645
1645
  }],
1646
1646
  /**
1647
1647
  * Divide Color
1648
1648
  * @see https://tailwindcss.com/docs/divide-color
1649
1649
  */
1650
1650
  "divide-color": [{
1651
- divide: p()
1651
+ divide: d()
1652
1652
  }],
1653
1653
  /**
1654
1654
  * Outline Style
1655
1655
  * @see https://tailwindcss.com/docs/outline-style
1656
1656
  */
1657
1657
  "outline-style": [{
1658
- outline: [...ae(), "none", "hidden"]
1658
+ outline: [...$(), "none", "hidden"]
1659
1659
  }],
1660
1660
  /**
1661
1661
  * Outline Offset
1662
1662
  * @see https://tailwindcss.com/docs/outline-offset
1663
1663
  */
1664
1664
  "outline-offset": [{
1665
- "outline-offset": [h, d, c]
1665
+ "outline-offset": [u, n, s]
1666
1666
  }],
1667
1667
  /**
1668
1668
  * Outline Width
1669
1669
  * @see https://tailwindcss.com/docs/outline-width
1670
1670
  */
1671
1671
  "outline-w": [{
1672
- outline: ["", h, Z, F]
1672
+ outline: ["", u, W, L]
1673
1673
  }],
1674
1674
  /**
1675
1675
  * Outline Color
1676
1676
  * @see https://tailwindcss.com/docs/outline-color
1677
1677
  */
1678
1678
  "outline-color": [{
1679
- outline: p()
1679
+ outline: d()
1680
1680
  }],
1681
1681
  // ---------------
1682
1682
  // --- Effects ---
@@ -1690,9 +1690,9 @@ const Tt = (e, t) => {
1690
1690
  // Deprecated since Tailwind CSS v4.0.0
1691
1691
  "",
1692
1692
  "none",
1693
- m,
1694
- pe,
1695
- ue
1693
+ f,
1694
+ X,
1695
+ H
1696
1696
  ]
1697
1697
  }],
1698
1698
  /**
@@ -1700,28 +1700,28 @@ const Tt = (e, t) => {
1700
1700
  * @see https://tailwindcss.com/docs/box-shadow#setting-the-shadow-color
1701
1701
  */
1702
1702
  "shadow-color": [{
1703
- shadow: p()
1703
+ shadow: d()
1704
1704
  }],
1705
1705
  /**
1706
1706
  * Inset Box Shadow
1707
1707
  * @see https://tailwindcss.com/docs/box-shadow#adding-an-inset-shadow
1708
1708
  */
1709
1709
  "inset-shadow": [{
1710
- "inset-shadow": ["none", b, pe, ue]
1710
+ "inset-shadow": ["none", x, X, H]
1711
1711
  }],
1712
1712
  /**
1713
1713
  * Inset Box Shadow Color
1714
1714
  * @see https://tailwindcss.com/docs/box-shadow#setting-the-inset-shadow-color
1715
1715
  */
1716
1716
  "inset-shadow-color": [{
1717
- "inset-shadow": p()
1717
+ "inset-shadow": d()
1718
1718
  }],
1719
1719
  /**
1720
1720
  * Ring Width
1721
1721
  * @see https://tailwindcss.com/docs/box-shadow#adding-a-ring
1722
1722
  */
1723
1723
  "ring-w": [{
1724
- ring: E()
1724
+ ring: k()
1725
1725
  }],
1726
1726
  /**
1727
1727
  * Ring Width Inset
@@ -1735,7 +1735,7 @@ const Tt = (e, t) => {
1735
1735
  * @see https://tailwindcss.com/docs/box-shadow#setting-the-ring-color
1736
1736
  */
1737
1737
  "ring-color": [{
1738
- ring: p()
1738
+ ring: d()
1739
1739
  }],
1740
1740
  /**
1741
1741
  * Ring Offset Width
@@ -1744,7 +1744,7 @@ const Tt = (e, t) => {
1744
1744
  * @see https://github.com/tailwindlabs/tailwindcss/blob/v4.0.0/packages/tailwindcss/src/utilities.ts#L4158
1745
1745
  */
1746
1746
  "ring-offset-w": [{
1747
- "ring-offset": [h, F]
1747
+ "ring-offset": [u, L]
1748
1748
  }],
1749
1749
  /**
1750
1750
  * Ring Offset Color
@@ -1753,56 +1753,56 @@ const Tt = (e, t) => {
1753
1753
  * @see https://github.com/tailwindlabs/tailwindcss/blob/v4.0.0/packages/tailwindcss/src/utilities.ts#L4158
1754
1754
  */
1755
1755
  "ring-offset-color": [{
1756
- "ring-offset": p()
1756
+ "ring-offset": d()
1757
1757
  }],
1758
1758
  /**
1759
1759
  * Inset Ring Width
1760
1760
  * @see https://tailwindcss.com/docs/box-shadow#adding-an-inset-ring
1761
1761
  */
1762
1762
  "inset-ring-w": [{
1763
- "inset-ring": E()
1763
+ "inset-ring": k()
1764
1764
  }],
1765
1765
  /**
1766
1766
  * Inset Ring Color
1767
1767
  * @see https://tailwindcss.com/docs/box-shadow#setting-the-inset-ring-color
1768
1768
  */
1769
1769
  "inset-ring-color": [{
1770
- "inset-ring": p()
1770
+ "inset-ring": d()
1771
1771
  }],
1772
1772
  /**
1773
1773
  * Text Shadow
1774
1774
  * @see https://tailwindcss.com/docs/text-shadow
1775
1775
  */
1776
1776
  "text-shadow": [{
1777
- "text-shadow": ["none", g, pe, ue]
1777
+ "text-shadow": ["none", v, X, H]
1778
1778
  }],
1779
1779
  /**
1780
1780
  * Text Shadow Color
1781
1781
  * @see https://tailwindcss.com/docs/text-shadow#setting-the-shadow-color
1782
1782
  */
1783
1783
  "text-shadow-color": [{
1784
- "text-shadow": p()
1784
+ "text-shadow": d()
1785
1785
  }],
1786
1786
  /**
1787
1787
  * Opacity
1788
1788
  * @see https://tailwindcss.com/docs/opacity
1789
1789
  */
1790
1790
  opacity: [{
1791
- opacity: [h, d, c]
1791
+ opacity: [u, n, s]
1792
1792
  }],
1793
1793
  /**
1794
1794
  * Mix Blend Mode
1795
1795
  * @see https://tailwindcss.com/docs/mix-blend-mode
1796
1796
  */
1797
1797
  "mix-blend": [{
1798
- "mix-blend": [...Fe(), "plus-darker", "plus-lighter"]
1798
+ "mix-blend": [...ue(), "plus-darker", "plus-lighter"]
1799
1799
  }],
1800
1800
  /**
1801
1801
  * Background Blend Mode
1802
1802
  * @see https://tailwindcss.com/docs/background-blend-mode
1803
1803
  */
1804
1804
  "bg-blend": [{
1805
- "bg-blend": Fe()
1805
+ "bg-blend": ue()
1806
1806
  }],
1807
1807
  /**
1808
1808
  * Mask Clip
@@ -1823,106 +1823,106 @@ const Tt = (e, t) => {
1823
1823
  * @see https://tailwindcss.com/docs/mask-image
1824
1824
  */
1825
1825
  "mask-image-linear-pos": [{
1826
- "mask-linear": [h]
1826
+ "mask-linear": [u]
1827
1827
  }],
1828
1828
  "mask-image-linear-from-pos": [{
1829
- "mask-linear-from": x()
1829
+ "mask-linear-from": h()
1830
1830
  }],
1831
1831
  "mask-image-linear-to-pos": [{
1832
- "mask-linear-to": x()
1832
+ "mask-linear-to": h()
1833
1833
  }],
1834
1834
  "mask-image-linear-from-color": [{
1835
- "mask-linear-from": p()
1835
+ "mask-linear-from": d()
1836
1836
  }],
1837
1837
  "mask-image-linear-to-color": [{
1838
- "mask-linear-to": p()
1838
+ "mask-linear-to": d()
1839
1839
  }],
1840
1840
  "mask-image-t-from-pos": [{
1841
- "mask-t-from": x()
1841
+ "mask-t-from": h()
1842
1842
  }],
1843
1843
  "mask-image-t-to-pos": [{
1844
- "mask-t-to": x()
1844
+ "mask-t-to": h()
1845
1845
  }],
1846
1846
  "mask-image-t-from-color": [{
1847
- "mask-t-from": p()
1847
+ "mask-t-from": d()
1848
1848
  }],
1849
1849
  "mask-image-t-to-color": [{
1850
- "mask-t-to": p()
1850
+ "mask-t-to": d()
1851
1851
  }],
1852
1852
  "mask-image-r-from-pos": [{
1853
- "mask-r-from": x()
1853
+ "mask-r-from": h()
1854
1854
  }],
1855
1855
  "mask-image-r-to-pos": [{
1856
- "mask-r-to": x()
1856
+ "mask-r-to": h()
1857
1857
  }],
1858
1858
  "mask-image-r-from-color": [{
1859
- "mask-r-from": p()
1859
+ "mask-r-from": d()
1860
1860
  }],
1861
1861
  "mask-image-r-to-color": [{
1862
- "mask-r-to": p()
1862
+ "mask-r-to": d()
1863
1863
  }],
1864
1864
  "mask-image-b-from-pos": [{
1865
- "mask-b-from": x()
1865
+ "mask-b-from": h()
1866
1866
  }],
1867
1867
  "mask-image-b-to-pos": [{
1868
- "mask-b-to": x()
1868
+ "mask-b-to": h()
1869
1869
  }],
1870
1870
  "mask-image-b-from-color": [{
1871
- "mask-b-from": p()
1871
+ "mask-b-from": d()
1872
1872
  }],
1873
1873
  "mask-image-b-to-color": [{
1874
- "mask-b-to": p()
1874
+ "mask-b-to": d()
1875
1875
  }],
1876
1876
  "mask-image-l-from-pos": [{
1877
- "mask-l-from": x()
1877
+ "mask-l-from": h()
1878
1878
  }],
1879
1879
  "mask-image-l-to-pos": [{
1880
- "mask-l-to": x()
1880
+ "mask-l-to": h()
1881
1881
  }],
1882
1882
  "mask-image-l-from-color": [{
1883
- "mask-l-from": p()
1883
+ "mask-l-from": d()
1884
1884
  }],
1885
1885
  "mask-image-l-to-color": [{
1886
- "mask-l-to": p()
1886
+ "mask-l-to": d()
1887
1887
  }],
1888
1888
  "mask-image-x-from-pos": [{
1889
- "mask-x-from": x()
1889
+ "mask-x-from": h()
1890
1890
  }],
1891
1891
  "mask-image-x-to-pos": [{
1892
- "mask-x-to": x()
1892
+ "mask-x-to": h()
1893
1893
  }],
1894
1894
  "mask-image-x-from-color": [{
1895
- "mask-x-from": p()
1895
+ "mask-x-from": d()
1896
1896
  }],
1897
1897
  "mask-image-x-to-color": [{
1898
- "mask-x-to": p()
1898
+ "mask-x-to": d()
1899
1899
  }],
1900
1900
  "mask-image-y-from-pos": [{
1901
- "mask-y-from": x()
1901
+ "mask-y-from": h()
1902
1902
  }],
1903
1903
  "mask-image-y-to-pos": [{
1904
- "mask-y-to": x()
1904
+ "mask-y-to": h()
1905
1905
  }],
1906
1906
  "mask-image-y-from-color": [{
1907
- "mask-y-from": p()
1907
+ "mask-y-from": d()
1908
1908
  }],
1909
1909
  "mask-image-y-to-color": [{
1910
- "mask-y-to": p()
1910
+ "mask-y-to": d()
1911
1911
  }],
1912
1912
  "mask-image-radial": [{
1913
- "mask-radial": [d, c]
1913
+ "mask-radial": [n, s]
1914
1914
  }],
1915
1915
  "mask-image-radial-from-pos": [{
1916
- "mask-radial-from": x()
1916
+ "mask-radial-from": h()
1917
1917
  }],
1918
1918
  "mask-image-radial-to-pos": [{
1919
- "mask-radial-to": x()
1919
+ "mask-radial-to": h()
1920
1920
  }],
1921
1921
  "mask-image-radial-from-color": [{
1922
- "mask-radial-from": p()
1922
+ "mask-radial-from": d()
1923
1923
  }],
1924
1924
  "mask-image-radial-to-color": [{
1925
- "mask-radial-to": p()
1925
+ "mask-radial-to": d()
1926
1926
  }],
1927
1927
  "mask-image-radial-shape": [{
1928
1928
  "mask-radial": ["circle", "ellipse"]
@@ -1934,22 +1934,22 @@ const Tt = (e, t) => {
1934
1934
  }]
1935
1935
  }],
1936
1936
  "mask-image-radial-pos": [{
1937
- "mask-radial-at": V()
1937
+ "mask-radial-at": O()
1938
1938
  }],
1939
1939
  "mask-image-conic-pos": [{
1940
- "mask-conic": [h]
1940
+ "mask-conic": [u]
1941
1941
  }],
1942
1942
  "mask-image-conic-from-pos": [{
1943
- "mask-conic-from": x()
1943
+ "mask-conic-from": h()
1944
1944
  }],
1945
1945
  "mask-image-conic-to-pos": [{
1946
- "mask-conic-to": x()
1946
+ "mask-conic-to": h()
1947
1947
  }],
1948
1948
  "mask-image-conic-from-color": [{
1949
- "mask-conic-from": p()
1949
+ "mask-conic-from": d()
1950
1950
  }],
1951
1951
  "mask-image-conic-to-color": [{
1952
- "mask-conic-to": p()
1952
+ "mask-conic-to": d()
1953
1953
  }],
1954
1954
  /**
1955
1955
  * Mask Mode
@@ -1970,21 +1970,21 @@ const Tt = (e, t) => {
1970
1970
  * @see https://tailwindcss.com/docs/mask-position
1971
1971
  */
1972
1972
  "mask-position": [{
1973
- mask: Ne()
1973
+ mask: de()
1974
1974
  }],
1975
1975
  /**
1976
1976
  * Mask Repeat
1977
1977
  * @see https://tailwindcss.com/docs/mask-repeat
1978
1978
  */
1979
1979
  "mask-repeat": [{
1980
- mask: Le()
1980
+ mask: me()
1981
1981
  }],
1982
1982
  /**
1983
1983
  * Mask Size
1984
1984
  * @see https://tailwindcss.com/docs/mask-size
1985
1985
  */
1986
1986
  "mask-size": [{
1987
- mask: je()
1987
+ mask: pe()
1988
1988
  }],
1989
1989
  /**
1990
1990
  * Mask Type
@@ -1998,7 +1998,7 @@ const Tt = (e, t) => {
1998
1998
  * @see https://tailwindcss.com/docs/mask-image
1999
1999
  */
2000
2000
  "mask-image": [{
2001
- mask: ["none", d, c]
2001
+ mask: ["none", n, s]
2002
2002
  }],
2003
2003
  // ---------------
2004
2004
  // --- Filters ---
@@ -2012,8 +2012,8 @@ const Tt = (e, t) => {
2012
2012
  // Deprecated since Tailwind CSS v3.0.0
2013
2013
  "",
2014
2014
  "none",
2015
- d,
2016
- c
2015
+ n,
2016
+ s
2017
2017
  ]
2018
2018
  }],
2019
2019
  /**
@@ -2021,21 +2021,21 @@ const Tt = (e, t) => {
2021
2021
  * @see https://tailwindcss.com/docs/blur
2022
2022
  */
2023
2023
  blur: [{
2024
- blur: Ge()
2024
+ blur: ge()
2025
2025
  }],
2026
2026
  /**
2027
2027
  * Brightness
2028
2028
  * @see https://tailwindcss.com/docs/brightness
2029
2029
  */
2030
2030
  brightness: [{
2031
- brightness: [h, d, c]
2031
+ brightness: [u, n, s]
2032
2032
  }],
2033
2033
  /**
2034
2034
  * Contrast
2035
2035
  * @see https://tailwindcss.com/docs/contrast
2036
2036
  */
2037
2037
  contrast: [{
2038
- contrast: [h, d, c]
2038
+ contrast: [u, n, s]
2039
2039
  }],
2040
2040
  /**
2041
2041
  * Drop Shadow
@@ -2046,9 +2046,9 @@ const Tt = (e, t) => {
2046
2046
  // Deprecated since Tailwind CSS v4.0.0
2047
2047
  "",
2048
2048
  "none",
2049
- w,
2050
- pe,
2051
- ue
2049
+ A,
2050
+ X,
2051
+ H
2052
2052
  ]
2053
2053
  }],
2054
2054
  /**
@@ -2056,42 +2056,42 @@ const Tt = (e, t) => {
2056
2056
  * @see https://tailwindcss.com/docs/filter-drop-shadow#setting-the-shadow-color
2057
2057
  */
2058
2058
  "drop-shadow-color": [{
2059
- "drop-shadow": p()
2059
+ "drop-shadow": d()
2060
2060
  }],
2061
2061
  /**
2062
2062
  * Grayscale
2063
2063
  * @see https://tailwindcss.com/docs/grayscale
2064
2064
  */
2065
2065
  grayscale: [{
2066
- grayscale: ["", h, d, c]
2066
+ grayscale: ["", u, n, s]
2067
2067
  }],
2068
2068
  /**
2069
2069
  * Hue Rotate
2070
2070
  * @see https://tailwindcss.com/docs/hue-rotate
2071
2071
  */
2072
2072
  "hue-rotate": [{
2073
- "hue-rotate": [h, d, c]
2073
+ "hue-rotate": [u, n, s]
2074
2074
  }],
2075
2075
  /**
2076
2076
  * Invert
2077
2077
  * @see https://tailwindcss.com/docs/invert
2078
2078
  */
2079
2079
  invert: [{
2080
- invert: ["", h, d, c]
2080
+ invert: ["", u, n, s]
2081
2081
  }],
2082
2082
  /**
2083
2083
  * Saturate
2084
2084
  * @see https://tailwindcss.com/docs/saturate
2085
2085
  */
2086
2086
  saturate: [{
2087
- saturate: [h, d, c]
2087
+ saturate: [u, n, s]
2088
2088
  }],
2089
2089
  /**
2090
2090
  * Sepia
2091
2091
  * @see https://tailwindcss.com/docs/sepia
2092
2092
  */
2093
2093
  sepia: [{
2094
- sepia: ["", h, d, c]
2094
+ sepia: ["", u, n, s]
2095
2095
  }],
2096
2096
  /**
2097
2097
  * Backdrop Filter
@@ -2102,8 +2102,8 @@ const Tt = (e, t) => {
2102
2102
  // Deprecated since Tailwind CSS v3.0.0
2103
2103
  "",
2104
2104
  "none",
2105
- d,
2106
- c
2105
+ n,
2106
+ s
2107
2107
  ]
2108
2108
  }],
2109
2109
  /**
@@ -2111,63 +2111,63 @@ const Tt = (e, t) => {
2111
2111
  * @see https://tailwindcss.com/docs/backdrop-blur
2112
2112
  */
2113
2113
  "backdrop-blur": [{
2114
- "backdrop-blur": Ge()
2114
+ "backdrop-blur": ge()
2115
2115
  }],
2116
2116
  /**
2117
2117
  * Backdrop Brightness
2118
2118
  * @see https://tailwindcss.com/docs/backdrop-brightness
2119
2119
  */
2120
2120
  "backdrop-brightness": [{
2121
- "backdrop-brightness": [h, d, c]
2121
+ "backdrop-brightness": [u, n, s]
2122
2122
  }],
2123
2123
  /**
2124
2124
  * Backdrop Contrast
2125
2125
  * @see https://tailwindcss.com/docs/backdrop-contrast
2126
2126
  */
2127
2127
  "backdrop-contrast": [{
2128
- "backdrop-contrast": [h, d, c]
2128
+ "backdrop-contrast": [u, n, s]
2129
2129
  }],
2130
2130
  /**
2131
2131
  * Backdrop Grayscale
2132
2132
  * @see https://tailwindcss.com/docs/backdrop-grayscale
2133
2133
  */
2134
2134
  "backdrop-grayscale": [{
2135
- "backdrop-grayscale": ["", h, d, c]
2135
+ "backdrop-grayscale": ["", u, n, s]
2136
2136
  }],
2137
2137
  /**
2138
2138
  * Backdrop Hue Rotate
2139
2139
  * @see https://tailwindcss.com/docs/backdrop-hue-rotate
2140
2140
  */
2141
2141
  "backdrop-hue-rotate": [{
2142
- "backdrop-hue-rotate": [h, d, c]
2142
+ "backdrop-hue-rotate": [u, n, s]
2143
2143
  }],
2144
2144
  /**
2145
2145
  * Backdrop Invert
2146
2146
  * @see https://tailwindcss.com/docs/backdrop-invert
2147
2147
  */
2148
2148
  "backdrop-invert": [{
2149
- "backdrop-invert": ["", h, d, c]
2149
+ "backdrop-invert": ["", u, n, s]
2150
2150
  }],
2151
2151
  /**
2152
2152
  * Backdrop Opacity
2153
2153
  * @see https://tailwindcss.com/docs/backdrop-opacity
2154
2154
  */
2155
2155
  "backdrop-opacity": [{
2156
- "backdrop-opacity": [h, d, c]
2156
+ "backdrop-opacity": [u, n, s]
2157
2157
  }],
2158
2158
  /**
2159
2159
  * Backdrop Saturate
2160
2160
  * @see https://tailwindcss.com/docs/backdrop-saturate
2161
2161
  */
2162
2162
  "backdrop-saturate": [{
2163
- "backdrop-saturate": [h, d, c]
2163
+ "backdrop-saturate": [u, n, s]
2164
2164
  }],
2165
2165
  /**
2166
2166
  * Backdrop Sepia
2167
2167
  * @see https://tailwindcss.com/docs/backdrop-sepia
2168
2168
  */
2169
2169
  "backdrop-sepia": [{
2170
- "backdrop-sepia": ["", h, d, c]
2170
+ "backdrop-sepia": ["", u, n, s]
2171
2171
  }],
2172
2172
  // --------------
2173
2173
  // --- Tables ---
@@ -2184,21 +2184,21 @@ const Tt = (e, t) => {
2184
2184
  * @see https://tailwindcss.com/docs/border-spacing
2185
2185
  */
2186
2186
  "border-spacing": [{
2187
- "border-spacing": f()
2187
+ "border-spacing": m()
2188
2188
  }],
2189
2189
  /**
2190
2190
  * Border Spacing X
2191
2191
  * @see https://tailwindcss.com/docs/border-spacing
2192
2192
  */
2193
2193
  "border-spacing-x": [{
2194
- "border-spacing-x": f()
2194
+ "border-spacing-x": m()
2195
2195
  }],
2196
2196
  /**
2197
2197
  * Border Spacing Y
2198
2198
  * @see https://tailwindcss.com/docs/border-spacing
2199
2199
  */
2200
2200
  "border-spacing-y": [{
2201
- "border-spacing-y": f()
2201
+ "border-spacing-y": m()
2202
2202
  }],
2203
2203
  /**
2204
2204
  * Table Layout
@@ -2222,7 +2222,7 @@ const Tt = (e, t) => {
2222
2222
  * @see https://tailwindcss.com/docs/transition-property
2223
2223
  */
2224
2224
  transition: [{
2225
- transition: ["", "all", "colors", "opacity", "shadow", "transform", "none", d, c]
2225
+ transition: ["", "all", "colors", "opacity", "shadow", "transform", "none", n, s]
2226
2226
  }],
2227
2227
  /**
2228
2228
  * Transition Behavior
@@ -2236,28 +2236,28 @@ const Tt = (e, t) => {
2236
2236
  * @see https://tailwindcss.com/docs/transition-duration
2237
2237
  */
2238
2238
  duration: [{
2239
- duration: [h, "initial", d, c]
2239
+ duration: [u, "initial", n, s]
2240
2240
  }],
2241
2241
  /**
2242
2242
  * Transition Timing Function
2243
2243
  * @see https://tailwindcss.com/docs/transition-timing-function
2244
2244
  */
2245
2245
  ease: [{
2246
- ease: ["linear", "initial", N, d, c]
2246
+ ease: ["linear", "initial", N, n, s]
2247
2247
  }],
2248
2248
  /**
2249
2249
  * Transition Delay
2250
2250
  * @see https://tailwindcss.com/docs/transition-delay
2251
2251
  */
2252
2252
  delay: [{
2253
- delay: [h, d, c]
2253
+ delay: [u, n, s]
2254
2254
  }],
2255
2255
  /**
2256
2256
  * Animation
2257
2257
  * @see https://tailwindcss.com/docs/animation
2258
2258
  */
2259
2259
  animate: [{
2260
- animate: ["none", ne, d, c]
2260
+ animate: ["none", _, n, s]
2261
2261
  }],
2262
2262
  // ------------------
2263
2263
  // --- Transforms ---
@@ -2274,70 +2274,70 @@ const Tt = (e, t) => {
2274
2274
  * @see https://tailwindcss.com/docs/perspective
2275
2275
  */
2276
2276
  perspective: [{
2277
- perspective: [A, d, c]
2277
+ perspective: [C, n, s]
2278
2278
  }],
2279
2279
  /**
2280
2280
  * Perspective Origin
2281
2281
  * @see https://tailwindcss.com/docs/perspective-origin
2282
2282
  */
2283
2283
  "perspective-origin": [{
2284
- "perspective-origin": D()
2284
+ "perspective-origin": P()
2285
2285
  }],
2286
2286
  /**
2287
2287
  * Rotate
2288
2288
  * @see https://tailwindcss.com/docs/rotate
2289
2289
  */
2290
2290
  rotate: [{
2291
- rotate: le()
2291
+ rotate: q()
2292
2292
  }],
2293
2293
  /**
2294
2294
  * Rotate X
2295
2295
  * @see https://tailwindcss.com/docs/rotate
2296
2296
  */
2297
2297
  "rotate-x": [{
2298
- "rotate-x": le()
2298
+ "rotate-x": q()
2299
2299
  }],
2300
2300
  /**
2301
2301
  * Rotate Y
2302
2302
  * @see https://tailwindcss.com/docs/rotate
2303
2303
  */
2304
2304
  "rotate-y": [{
2305
- "rotate-y": le()
2305
+ "rotate-y": q()
2306
2306
  }],
2307
2307
  /**
2308
2308
  * Rotate Z
2309
2309
  * @see https://tailwindcss.com/docs/rotate
2310
2310
  */
2311
2311
  "rotate-z": [{
2312
- "rotate-z": le()
2312
+ "rotate-z": q()
2313
2313
  }],
2314
2314
  /**
2315
2315
  * Scale
2316
2316
  * @see https://tailwindcss.com/docs/scale
2317
2317
  */
2318
2318
  scale: [{
2319
- scale: ce()
2319
+ scale: J()
2320
2320
  }],
2321
2321
  /**
2322
2322
  * Scale X
2323
2323
  * @see https://tailwindcss.com/docs/scale
2324
2324
  */
2325
2325
  "scale-x": [{
2326
- "scale-x": ce()
2326
+ "scale-x": J()
2327
2327
  }],
2328
2328
  /**
2329
2329
  * Scale Y
2330
2330
  * @see https://tailwindcss.com/docs/scale
2331
2331
  */
2332
2332
  "scale-y": [{
2333
- "scale-y": ce()
2333
+ "scale-y": J()
2334
2334
  }],
2335
2335
  /**
2336
2336
  * Scale Z
2337
2337
  * @see https://tailwindcss.com/docs/scale
2338
2338
  */
2339
2339
  "scale-z": [{
2340
- "scale-z": ce()
2340
+ "scale-z": J()
2341
2341
  }],
2342
2342
  /**
2343
2343
  * Scale 3D
@@ -2349,35 +2349,35 @@ const Tt = (e, t) => {
2349
2349
  * @see https://tailwindcss.com/docs/skew
2350
2350
  */
2351
2351
  skew: [{
2352
- skew: xe()
2352
+ skew: ee()
2353
2353
  }],
2354
2354
  /**
2355
2355
  * Skew X
2356
2356
  * @see https://tailwindcss.com/docs/skew
2357
2357
  */
2358
2358
  "skew-x": [{
2359
- "skew-x": xe()
2359
+ "skew-x": ee()
2360
2360
  }],
2361
2361
  /**
2362
2362
  * Skew Y
2363
2363
  * @see https://tailwindcss.com/docs/skew
2364
2364
  */
2365
2365
  "skew-y": [{
2366
- "skew-y": xe()
2366
+ "skew-y": ee()
2367
2367
  }],
2368
2368
  /**
2369
2369
  * Transform
2370
2370
  * @see https://tailwindcss.com/docs/transform
2371
2371
  */
2372
2372
  transform: [{
2373
- transform: [d, c, "", "none", "gpu", "cpu"]
2373
+ transform: [n, s, "", "none", "gpu", "cpu"]
2374
2374
  }],
2375
2375
  /**
2376
2376
  * Transform Origin
2377
2377
  * @see https://tailwindcss.com/docs/transform-origin
2378
2378
  */
2379
2379
  "transform-origin": [{
2380
- origin: D()
2380
+ origin: P()
2381
2381
  }],
2382
2382
  /**
2383
2383
  * Transform Style
@@ -2391,28 +2391,28 @@ const Tt = (e, t) => {
2391
2391
  * @see https://tailwindcss.com/docs/translate
2392
2392
  */
2393
2393
  translate: [{
2394
- translate: de()
2394
+ translate: Y()
2395
2395
  }],
2396
2396
  /**
2397
2397
  * Translate X
2398
2398
  * @see https://tailwindcss.com/docs/translate
2399
2399
  */
2400
2400
  "translate-x": [{
2401
- "translate-x": de()
2401
+ "translate-x": Y()
2402
2402
  }],
2403
2403
  /**
2404
2404
  * Translate Y
2405
2405
  * @see https://tailwindcss.com/docs/translate
2406
2406
  */
2407
2407
  "translate-y": [{
2408
- "translate-y": de()
2408
+ "translate-y": Y()
2409
2409
  }],
2410
2410
  /**
2411
2411
  * Translate Z
2412
2412
  * @see https://tailwindcss.com/docs/translate
2413
2413
  */
2414
2414
  "translate-z": [{
2415
- "translate-z": de()
2415
+ "translate-z": Y()
2416
2416
  }],
2417
2417
  /**
2418
2418
  * Translate None
@@ -2427,7 +2427,7 @@ const Tt = (e, t) => {
2427
2427
  * @see https://tailwindcss.com/docs/accent-color
2428
2428
  */
2429
2429
  accent: [{
2430
- accent: p()
2430
+ accent: d()
2431
2431
  }],
2432
2432
  /**
2433
2433
  * Appearance
@@ -2441,7 +2441,7 @@ const Tt = (e, t) => {
2441
2441
  * @see https://tailwindcss.com/docs/just-in-time-mode#caret-color-utilities
2442
2442
  */
2443
2443
  "caret-color": [{
2444
- caret: p()
2444
+ caret: d()
2445
2445
  }],
2446
2446
  /**
2447
2447
  * Color Scheme
@@ -2455,7 +2455,7 @@ const Tt = (e, t) => {
2455
2455
  * @see https://tailwindcss.com/docs/cursor
2456
2456
  */
2457
2457
  cursor: [{
2458
- 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", d, c]
2458
+ 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", n, s]
2459
2459
  }],
2460
2460
  /**
2461
2461
  * Field Sizing
@@ -2490,126 +2490,126 @@ const Tt = (e, t) => {
2490
2490
  * @see https://tailwindcss.com/docs/scroll-margin
2491
2491
  */
2492
2492
  "scroll-m": [{
2493
- "scroll-m": f()
2493
+ "scroll-m": m()
2494
2494
  }],
2495
2495
  /**
2496
2496
  * Scroll Margin X
2497
2497
  * @see https://tailwindcss.com/docs/scroll-margin
2498
2498
  */
2499
2499
  "scroll-mx": [{
2500
- "scroll-mx": f()
2500
+ "scroll-mx": m()
2501
2501
  }],
2502
2502
  /**
2503
2503
  * Scroll Margin Y
2504
2504
  * @see https://tailwindcss.com/docs/scroll-margin
2505
2505
  */
2506
2506
  "scroll-my": [{
2507
- "scroll-my": f()
2507
+ "scroll-my": m()
2508
2508
  }],
2509
2509
  /**
2510
2510
  * Scroll Margin Start
2511
2511
  * @see https://tailwindcss.com/docs/scroll-margin
2512
2512
  */
2513
2513
  "scroll-ms": [{
2514
- "scroll-ms": f()
2514
+ "scroll-ms": m()
2515
2515
  }],
2516
2516
  /**
2517
2517
  * Scroll Margin End
2518
2518
  * @see https://tailwindcss.com/docs/scroll-margin
2519
2519
  */
2520
2520
  "scroll-me": [{
2521
- "scroll-me": f()
2521
+ "scroll-me": m()
2522
2522
  }],
2523
2523
  /**
2524
2524
  * Scroll Margin Top
2525
2525
  * @see https://tailwindcss.com/docs/scroll-margin
2526
2526
  */
2527
2527
  "scroll-mt": [{
2528
- "scroll-mt": f()
2528
+ "scroll-mt": m()
2529
2529
  }],
2530
2530
  /**
2531
2531
  * Scroll Margin Right
2532
2532
  * @see https://tailwindcss.com/docs/scroll-margin
2533
2533
  */
2534
2534
  "scroll-mr": [{
2535
- "scroll-mr": f()
2535
+ "scroll-mr": m()
2536
2536
  }],
2537
2537
  /**
2538
2538
  * Scroll Margin Bottom
2539
2539
  * @see https://tailwindcss.com/docs/scroll-margin
2540
2540
  */
2541
2541
  "scroll-mb": [{
2542
- "scroll-mb": f()
2542
+ "scroll-mb": m()
2543
2543
  }],
2544
2544
  /**
2545
2545
  * Scroll Margin Left
2546
2546
  * @see https://tailwindcss.com/docs/scroll-margin
2547
2547
  */
2548
2548
  "scroll-ml": [{
2549
- "scroll-ml": f()
2549
+ "scroll-ml": m()
2550
2550
  }],
2551
2551
  /**
2552
2552
  * Scroll Padding
2553
2553
  * @see https://tailwindcss.com/docs/scroll-padding
2554
2554
  */
2555
2555
  "scroll-p": [{
2556
- "scroll-p": f()
2556
+ "scroll-p": m()
2557
2557
  }],
2558
2558
  /**
2559
2559
  * Scroll Padding X
2560
2560
  * @see https://tailwindcss.com/docs/scroll-padding
2561
2561
  */
2562
2562
  "scroll-px": [{
2563
- "scroll-px": f()
2563
+ "scroll-px": m()
2564
2564
  }],
2565
2565
  /**
2566
2566
  * Scroll Padding Y
2567
2567
  * @see https://tailwindcss.com/docs/scroll-padding
2568
2568
  */
2569
2569
  "scroll-py": [{
2570
- "scroll-py": f()
2570
+ "scroll-py": m()
2571
2571
  }],
2572
2572
  /**
2573
2573
  * Scroll Padding Start
2574
2574
  * @see https://tailwindcss.com/docs/scroll-padding
2575
2575
  */
2576
2576
  "scroll-ps": [{
2577
- "scroll-ps": f()
2577
+ "scroll-ps": m()
2578
2578
  }],
2579
2579
  /**
2580
2580
  * Scroll Padding End
2581
2581
  * @see https://tailwindcss.com/docs/scroll-padding
2582
2582
  */
2583
2583
  "scroll-pe": [{
2584
- "scroll-pe": f()
2584
+ "scroll-pe": m()
2585
2585
  }],
2586
2586
  /**
2587
2587
  * Scroll Padding Top
2588
2588
  * @see https://tailwindcss.com/docs/scroll-padding
2589
2589
  */
2590
2590
  "scroll-pt": [{
2591
- "scroll-pt": f()
2591
+ "scroll-pt": m()
2592
2592
  }],
2593
2593
  /**
2594
2594
  * Scroll Padding Right
2595
2595
  * @see https://tailwindcss.com/docs/scroll-padding
2596
2596
  */
2597
2597
  "scroll-pr": [{
2598
- "scroll-pr": f()
2598
+ "scroll-pr": m()
2599
2599
  }],
2600
2600
  /**
2601
2601
  * Scroll Padding Bottom
2602
2602
  * @see https://tailwindcss.com/docs/scroll-padding
2603
2603
  */
2604
2604
  "scroll-pb": [{
2605
- "scroll-pb": f()
2605
+ "scroll-pb": m()
2606
2606
  }],
2607
2607
  /**
2608
2608
  * Scroll Padding Left
2609
2609
  * @see https://tailwindcss.com/docs/scroll-padding
2610
2610
  */
2611
2611
  "scroll-pl": [{
2612
- "scroll-pl": f()
2612
+ "scroll-pl": m()
2613
2613
  }],
2614
2614
  /**
2615
2615
  * Scroll Snap Align
@@ -2677,7 +2677,7 @@ const Tt = (e, t) => {
2677
2677
  * @see https://tailwindcss.com/docs/will-change
2678
2678
  */
2679
2679
  "will-change": [{
2680
- "will-change": ["auto", "scroll", "contents", "transform", d, c]
2680
+ "will-change": ["auto", "scroll", "contents", "transform", n, s]
2681
2681
  }],
2682
2682
  // -----------
2683
2683
  // --- SVG ---
@@ -2687,21 +2687,21 @@ const Tt = (e, t) => {
2687
2687
  * @see https://tailwindcss.com/docs/fill
2688
2688
  */
2689
2689
  fill: [{
2690
- fill: ["none", ...p()]
2690
+ fill: ["none", ...d()]
2691
2691
  }],
2692
2692
  /**
2693
2693
  * Stroke Width
2694
2694
  * @see https://tailwindcss.com/docs/stroke-width
2695
2695
  */
2696
2696
  "stroke-w": [{
2697
- stroke: [h, Z, F, ve]
2697
+ stroke: [u, W, L, oe]
2698
2698
  }],
2699
2699
  /**
2700
2700
  * Stroke
2701
2701
  * @see https://tailwindcss.com/docs/stroke
2702
2702
  */
2703
2703
  stroke: [{
2704
- stroke: ["none", ...p()]
2704
+ stroke: ["none", ...d()]
2705
2705
  }],
2706
2706
  // ---------------------
2707
2707
  // --- Accessibility ---
@@ -2769,793 +2769,25 @@ const Tt = (e, t) => {
2769
2769
  },
2770
2770
  orderSensitiveModifiers: ["*", "**", "after", "backdrop", "before", "details-content", "file", "first-letter", "first-line", "marker", "placeholder", "selection"]
2771
2771
  };
2772
- }, vr = /* @__PURE__ */ er(wr);
2773
- function kr(...e) {
2774
- return vr(Ot(e));
2772
+ }, Pt = /* @__PURE__ */ gt(Ot);
2773
+ function jt(...e) {
2774
+ return Pt(Je(e));
2775
2775
  }
2776
- function So(e) {
2776
+ function tr(e) {
2777
2777
  throw new Error(`Unexpected value: ${e}`);
2778
2778
  }
2779
- function Co(e, t) {
2779
+ function rr(e, r) {
2780
2780
  if (!e)
2781
- throw new Error(t);
2781
+ throw new Error(r);
2782
2782
  }
2783
- const Sr = Ae(
2783
+ const Gt = Ce(
2784
2784
  void 0
2785
- ), Eo = Ae(null), Cr = (e) => Array.from(e).map((r) => r.getModelContext()).sort((r, o) => (o.priority ?? 0) - (r.priority ?? 0)).reduce((r, o) => {
2786
- if (o.system && (r.system ? r.system += `
2787
-
2788
- ${o.system}` : r.system = o.system), o.tools)
2789
- for (const [n, i] of Object.entries(o.tools)) {
2790
- const s = r.tools?.[n];
2791
- if (s && s !== i)
2792
- throw new Error(`You tried to define a tool with the name ${n}, but it already exists.`);
2793
- r.tools || (r.tools = {}), r.tools[n] = i;
2794
- }
2795
- return o.config && (r.config = {
2796
- ...r.config,
2797
- ...o.config
2798
- }), o.callSettings && (r.callSettings = {
2799
- ...r.callSettings,
2800
- ...o.callSettings
2801
- }), r;
2802
- }, {});
2803
- class Er {
2804
- _providers = /* @__PURE__ */ new Set();
2805
- getModelContext() {
2806
- return Cr(this._providers);
2807
- }
2808
- registerModelContextProvider(t) {
2809
- this._providers.add(t);
2810
- const r = t.subscribe?.(() => {
2811
- this.notifySubscribers();
2812
- });
2813
- return this.notifySubscribers(), () => {
2814
- this._providers.delete(t), r?.(), this.notifySubscribers();
2815
- };
2816
- }
2817
- _subscribers = /* @__PURE__ */ new Set();
2818
- notifySubscribers() {
2819
- for (const t of this._subscribers)
2820
- t();
2821
- }
2822
- subscribe(t) {
2823
- return this._subscribers.add(t), () => this._subscribers.delete(t);
2824
- }
2825
- }
2826
- function Ar(e, t) {
2827
- e.commitTasks.forEach((r) => {
2828
- const o = r.cellIndex, n = t.cells[o];
2829
- if (n.type !== "effect")
2830
- throw new Error("Cannot find effect cell");
2831
- let i = !0;
2832
- if (n.deps !== void 0 && r.deps !== void 0 && (i = n.deps.length !== r.deps.length || n.deps.some((s, l) => !Object.is(s, r.deps[l]))), i) {
2833
- if (n.mounted) {
2834
- if (typeof n.deps != typeof r.deps)
2835
- throw new Error("tapEffect called with and without dependencies across re-renders");
2836
- try {
2837
- n.mounted && n.cleanup && n.cleanup();
2838
- } finally {
2839
- n.mounted = !1;
2840
- }
2841
- }
2842
- const s = r.effect();
2843
- if (s !== void 0 && typeof s != "function")
2844
- throw new Error(`An effect function must either return a cleanup function or nothing. Received: ${typeof s}`);
2845
- n.mounted = !0, n.cleanup = typeof s == "function" ? s : void 0, n.deps = r.deps;
2846
- }
2847
- });
2848
- }
2849
- function Rr(e) {
2850
- let t = null;
2851
- for (let r = e.cells.length - 1; r >= 0; r--) {
2852
- const o = e.cells[r];
2853
- if (o?.type === "effect" && o.mounted && o.cleanup)
2854
- try {
2855
- o.cleanup();
2856
- } catch (n) {
2857
- t == null && (t = n);
2858
- } finally {
2859
- o.mounted = !1;
2860
- }
2861
- }
2862
- if (t != null)
2863
- throw t;
2864
- }
2865
- let Q = null;
2866
- function Ir(e, t) {
2867
- e.currentIndex = 0;
2868
- const r = Q;
2869
- Q = e;
2870
- try {
2871
- if (t(), e.isFirstRender = !1, e.cells.length !== e.currentIndex)
2872
- throw new Error(`Rendered ${e.currentIndex} hooks but expected ${e.cells.length}. Hooks must be called in the exact same order in every render.`);
2873
- } finally {
2874
- Q = r;
2875
- }
2876
- }
2877
- function Me() {
2878
- if (!Q)
2879
- throw new Error("No resource fiber available");
2880
- return Q;
2881
- }
2882
- function mt(e, t) {
2883
- const r = e[ft];
2884
- if (!r)
2885
- throw new Error("ResourceElement.type is not a valid Resource");
2886
- return r(t);
2887
- }
2888
- const ft = Symbol("fnSymbol");
2889
- function ge(e, t) {
2890
- return {
2891
- resource: e,
2892
- scheduleRerender: t,
2893
- cells: [],
2894
- currentIndex: 0,
2895
- renderContext: void 0,
2896
- isFirstRender: !0,
2897
- isMounted: !1,
2898
- isNeverMounted: !0
2899
- };
2900
- }
2901
- function re(e) {
2902
- e.isMounted = !1, Rr(e);
2903
- }
2904
- function oe(e, t) {
2905
- const r = {
2906
- commitTasks: [],
2907
- props: t,
2908
- state: void 0
2909
- };
2910
- return Ir(e, () => {
2911
- e.renderContext = r;
2912
- try {
2913
- r.state = mt(e.resource, t);
2914
- } finally {
2915
- e.renderContext = void 0;
2916
- }
2917
- }), r;
2918
- }
2919
- function se(e, t) {
2920
- e.isMounted = !0, e.isNeverMounted = !1, Ar(t, e);
2921
- }
2922
- const Mr = globalThis.__ASSISTANT_UI_DISABLE_LAYOUT_EFFECT__ === !0, Be = Mr ? Re : Rt;
2923
- function ht(e) {
2924
- const [, t] = Ke({}), r = H(() => ge(e.type, () => t({})), [e.type]), o = oe(r, e.props);
2925
- return Be(() => () => re(r), [r]), Be(() => {
2926
- se(r, o);
2927
- }), o.state;
2928
- }
2929
- const gt = (e) => typeof e == "string" ? {
2930
- scope: e.split(".")[0],
2931
- event: e
2932
- } : {
2933
- scope: e.scope,
2934
- event: e.event
2935
- }, ke = (e, t, r) => t === e;
2936
- let W;
2937
- const Se = () => {
2938
- if (W)
2939
- return W;
2940
- const e = () => ({
2941
- apis: /* @__PURE__ */ new Map(),
2942
- nextId: 0,
2943
- listeners: /* @__PURE__ */ new Set()
2944
- });
2945
- if (typeof window > "u")
2946
- return W = e(), W;
2947
- const t = window.__ASSISTANT_UI_DEVTOOLS_HOOK__;
2948
- if (t)
2949
- return W = t, t;
2950
- const r = e();
2951
- return window.__ASSISTANT_UI_DEVTOOLS_HOOK__ = r, W = r, r;
2952
- };
2953
- class G {
2954
- static MAX_EVENT_LOGS_PER_API = 200;
2955
- static register(t) {
2956
- const r = Se();
2957
- for (const l of r.apis.values())
2958
- if (l.api === t)
2959
- return () => {
2960
- };
2961
- const o = r.nextId++, n = {
2962
- api: t,
2963
- logs: []
2964
- }, i = t.on?.("*", (l) => {
2965
- const a = r.apis.get(o);
2966
- a && (a.logs.push({
2967
- time: /* @__PURE__ */ new Date(),
2968
- event: l.event,
2969
- data: l.payload
2970
- }), a.logs.length > G.MAX_EVENT_LOGS_PER_API && (a.logs = a.logs.slice(-200)), G.notifyListeners(o));
2971
- }), s = t.subscribe?.(() => {
2972
- G.notifyListeners(o);
2973
- });
2974
- return r.apis.set(o, n), G.notifyListeners(o), () => {
2975
- const l = Se();
2976
- l.apis.get(o) && (i?.(), s?.(), l.apis.delete(o), G.notifyListeners(o));
2977
- };
2978
- }
2979
- static notifyListeners(t) {
2980
- Se().listeners.forEach((o) => o(t));
2981
- }
2982
- }
2983
- function O(e) {
2984
- const t = (r) => ({
2985
- type: t,
2986
- props: r
2987
- });
2988
- return t[ft] = e, t;
2989
- }
2990
- const zr = (e) => {
2991
- if (e.renderContext)
2992
- throw new Error("Resource updated during render");
2993
- if (e.isMounted)
2994
- e.scheduleRerender();
2995
- else if (e.isNeverMounted)
2996
- throw new Error("Resource updated before mount");
2997
- };
2998
- function Pr(e) {
2999
- const t = Me(), r = t.currentIndex++;
3000
- if (!t.isFirstRender && r >= t.cells.length)
3001
- throw new Error("Rendered more hooks than during the previous render. Hooks must be called in the exact same order in every render.");
3002
- if (!t.cells[r]) {
3003
- const i = {
3004
- type: "state",
3005
- value: typeof e == "function" ? e() : e,
3006
- set: (s) => {
3007
- const l = i.value, a = typeof s == "function" ? s(l) : s;
3008
- Object.is(l, a) || (i.value = a, zr(t));
3009
- }
3010
- };
3011
- t.cells[r] = i;
3012
- }
3013
- const o = t.cells[r];
3014
- if (o.type !== "state")
3015
- throw new Error("Hook order changed between renders");
3016
- return o;
3017
- }
3018
- function q(e) {
3019
- const t = Pr(e);
3020
- return [t.value, t.set];
3021
- }
3022
- function _r() {
3023
- const e = Me(), t = e.currentIndex++;
3024
- if (!e.isFirstRender && t >= e.cells.length)
3025
- throw new Error("Rendered more hooks than during the previous render. Hooks must be called in the exact same order in every render.");
3026
- if (!e.cells[t]) {
3027
- const o = {
3028
- type: "effect",
3029
- mounted: !1
3030
- };
3031
- e.cells[t] = o;
3032
- }
3033
- if (e.cells[t].type !== "effect")
3034
- throw new Error("Hook order changed between renders");
3035
- return t;
3036
- }
3037
- function M(e, t) {
3038
- const r = Me(), o = _r();
3039
- r.renderContext.commitTasks.push({
3040
- effect: e,
3041
- deps: t,
3042
- cellIndex: o
3043
- });
3044
- }
3045
- function B(e) {
3046
- const [t] = q(() => ({
3047
- current: e
3048
- }));
3049
- return t;
3050
- }
3051
- const Or = (e, t) => {
3052
- if (e.length !== t.length)
3053
- return !1;
3054
- for (let r = 0; r < e.length; r++)
3055
- if (!Object.is(e[r], t[r]))
3056
- return !1;
3057
- return !0;
3058
- }, S = (e, t) => {
3059
- const r = B();
3060
- return r.current || (r.current = { value: e(), deps: t }), Or(r.current.deps, t) || (r.current.value = e(), r.current.deps = t), r.current.value;
3061
- }, Tr = (e, t) => S(() => e, t);
3062
- function ee(e, t) {
3063
- const [r, o] = q({}), n = S(() => ge(e.type, () => o({})), [e.type]), i = t ? S(() => e.props, t) : e.props, s = S(() => oe(n, i), [n, i, r]);
3064
- return M(() => () => re(n), [n]), M(() => {
3065
- se(n, s);
3066
- }, [n, s]), s.state;
3067
- }
3068
- function Nr(e) {
3069
- return mt(e.type, e.props);
3070
- }
3071
- function Lr(e, t, r) {
3072
- const [o, n] = q(0), i = Tr(() => n((u) => u + 1), []), [s] = q(() => /* @__PURE__ */ new Map()), l = S(() => t, r), a = S(() => {
3073
- const u = {
3074
- remove: [],
3075
- add: [],
3076
- commit: [],
3077
- return: {}
3078
- };
3079
- for (const m in e) {
3080
- const b = e[m], g = l(b, m);
3081
- let w = s.get(m);
3082
- (!w || w.resource !== g.type) && (w && u.remove.push(m), w = ge(g.type, i), u.add.push([m, w]));
3083
- const R = oe(w, g.props);
3084
- u.commit.push([m, R]), u.return[m] = R.state;
3085
- }
3086
- if (s.size > u.commit.length - u.add.length + u.remove.length)
3087
- for (const m of s.keys())
3088
- m in e || u.remove.push(m);
3089
- return u;
3090
- }, [e, l, o]);
3091
- return M(() => () => {
3092
- for (const u of s.keys())
3093
- re(s.get(u)), s.delete(u);
3094
- }, []), M(() => {
3095
- for (const u of a.remove)
3096
- re(s.get(u)), s.delete(u);
3097
- for (const [u, m] of a.add)
3098
- s.set(u, m);
3099
- for (const [u, m] of a.commit)
3100
- se(s.get(u), m);
3101
- }, [a]), a.return;
3102
- }
3103
- const jr = 50;
3104
- let I = {
3105
- schedulers: /* @__PURE__ */ new Set([]),
3106
- isScheduled: !1
3107
- };
3108
- class Fr {
3109
- _task;
3110
- _isDirty = !1;
3111
- constructor(t) {
3112
- this._task = t;
3113
- }
3114
- get isDirty() {
3115
- return this._isDirty;
3116
- }
3117
- markDirty() {
3118
- this._isDirty = !0, I.schedulers.add(this), Gr();
3119
- }
3120
- runTask() {
3121
- this._isDirty = !1, this._task();
3122
- }
3123
- }
3124
- const Gr = () => {
3125
- I.isScheduled || (I.isScheduled = !0, queueMicrotask(bt));
3126
- }, bt = () => {
3127
- try {
3128
- const e = [];
3129
- let t = 0;
3130
- for (const r of I.schedulers)
3131
- if (I.schedulers.delete(r), !!r.isDirty) {
3132
- if (t++, t > jr)
3133
- throw new Error("Maximum update depth exceeded. This can happen when a resource repeatedly calls setState inside tapEffect.");
3134
- try {
3135
- r.runTask();
3136
- } catch (o) {
3137
- e.push(o);
3138
- }
3139
- }
3140
- if (e.length > 0)
3141
- throw e.length === 1 ? e[0] : new AggregateError(e, "Errors occurred during flushSync");
3142
- } finally {
3143
- I.schedulers.clear(), I.isScheduled = !1;
3144
- }
3145
- }, Je = (e) => {
3146
- const t = I;
3147
- I = {
3148
- schedulers: /* @__PURE__ */ new Set([]),
3149
- isScheduled: !0
3150
- };
3151
- try {
3152
- const r = e();
3153
- return bt(), r;
3154
- } finally {
3155
- I = t;
3156
- }
3157
- }, qr = O((e) => {
3158
- const [, t] = q(e.element), r = ee(e.element), o = B(/* @__PURE__ */ new Set()).current, n = B(r);
3159
- return M(() => {
3160
- r !== n.current && (n.current = r, o.forEach((s) => s()));
3161
- }), S(() => ({
3162
- getState: () => n.current,
3163
- subscribe: (s) => (o.add(s), () => o.delete(s)),
3164
- render: (s) => {
3165
- const l = e.element !== s;
3166
- e.element = s, e.onRender(l) && t(s);
3167
- },
3168
- unmount: e.onUnmount
3169
- }), []);
3170
- }), Vr = (e, { mount: t = !0 } = {}) => {
3171
- let r = t, o;
3172
- const n = {
3173
- element: e,
3174
- onRender: (l) => r ? l : (r = !0, Je(() => {
3175
- l && (o = oe(s, n)), !i.isDirty && se(s, o);
3176
- }), !1),
3177
- onUnmount: () => {
3178
- if (!r)
3179
- throw new Error("Resource not mounted");
3180
- r = !1, re(s);
3181
- }
3182
- }, i = new Fr(() => {
3183
- o = oe(s, n), !(i.isDirty || !r) && se(s, o);
3184
- }), s = ge(qr, () => i.markDirty());
3185
- return Je(() => {
3186
- i.markDirty();
3187
- }), o.state;
3188
- }, te = Symbol("tap.Context"), yt = (e) => ({
3189
- [te]: e
3190
- }), xt = (e, t, r) => {
3191
- const o = e[te];
3192
- e[te] = t;
3193
- try {
3194
- return r();
3195
- } finally {
3196
- e[te] = o;
3197
- }
3198
- }, wt = (e) => e[te], Dr = O((e) => {
3199
- const t = S(() => Vr(e, { mount: !1 }), [e.type]);
3200
- return M(() => {
3201
- t.render(e);
3202
- }), t;
3203
- });
3204
- class Ur {
3205
- ref;
3206
- constructor(t) {
3207
- this.ref = t;
3208
- }
3209
- get(t, r) {
3210
- return this.ref.current[r];
3211
- }
3212
- ownKeys() {
3213
- return Object.keys(this.ref.current);
3214
- }
3215
- has(t, r) {
3216
- return r in this.ref.current;
3217
- }
3218
- getOwnPropertyDescriptor(t, r) {
3219
- return Object.getOwnPropertyDescriptor(this.ref.current, r);
3220
- }
3221
- set() {
3222
- return !1;
3223
- }
3224
- setPrototypeOf() {
3225
- return !1;
3226
- }
3227
- defineProperty() {
3228
- return !1;
3229
- }
3230
- deleteProperty() {
3231
- return !1;
3232
- }
3233
- preventExtensions() {
3234
- return !1;
3235
- }
3236
- }
3237
- const ze = (e, t) => {
3238
- const r = B(e);
3239
- M(() => {
3240
- r.current = e;
3241
- });
3242
- const o = S(() => new Proxy({}, new Ur(r)), []), n = t?.key, i = e.getState();
3243
- return S(() => ({
3244
- key: n,
3245
- state: i,
3246
- api: o
3247
- }), [i, n]);
3248
- }, Ao = O((e) => {
3249
- const t = B(e.get);
3250
- return M(() => {
3251
- t.current = e.get;
3252
- }), S(() => v({
3253
- source: e.source,
3254
- query: e.query,
3255
- get: () => t.current()
3256
- }), [e.source, JSON.stringify(e.query)]);
3257
- }), $r = O((e) => {
3258
- const t = ee(e.scopeElement);
3259
- return S(() => [e.fieldName, t], [e.fieldName, t]);
3260
- }), Wr = O((e) => {
3261
- const { on: t, subscribe: r, ...o } = e, n = B({ on: t, subscribe: r });
3262
- M(() => {
3263
- n.current = { on: t, subscribe: r };
3264
- });
3265
- const i = Lr(o, (s, l) => $r({
3266
- fieldName: l,
3267
- scopeElement: s
3268
- }), []);
3269
- return S(() => {
3270
- const s = Object.fromEntries(Object.values(i)), { on: l, subscribe: a } = n.current;
3271
- return l && (s.on = (u, m) => l(u, m)), a && (s.subscribe = (u) => a(u)), s;
3272
- }, [i]);
3273
- }), vt = yt(null), Hr = (e, t) => xt(vt, e, t), Br = () => {
3274
- const e = wt(vt);
3275
- if (!e)
3276
- throw new Error("Model context is not available in this context");
3277
- return e;
3278
- }, Jr = O(({ toolkit: e }) => {
3279
- const [t, r] = q(() => ({
3280
- tools: {}
3281
- })), o = Br();
3282
- M(() => {
3283
- if (!e)
3284
- return;
3285
- const i = [];
3286
- for (const [a, u] of Object.entries(e))
3287
- u.render && i.push(n(a, u.render));
3288
- const s = Object.entries(e).reduce((a, [u, m]) => {
3289
- const { render: b, ...g } = m;
3290
- return a[u] = g, a;
3291
- }, {}), l = {
3292
- getModelContext: () => ({
3293
- tools: s
3294
- })
3295
- };
3296
- return i.push(o.register(l)), () => {
3297
- i.forEach((a) => a());
3298
- };
3299
- }, [e, o]);
3300
- const n = (i, s) => (r((l) => ({
3301
- ...l,
3302
- tools: {
3303
- ...l.tools,
3304
- [i]: [...l.tools[i] ?? [], s]
3305
- }
3306
- })), () => {
3307
- r((l) => ({
3308
- ...l,
3309
- tools: {
3310
- ...l.tools,
3311
- [i]: l.tools[i]?.filter((a) => a !== s) ?? []
3312
- }
3313
- }));
3314
- });
3315
- return ze({
3316
- getState: () => t,
3317
- setToolUI: n
3318
- });
3319
- }), Yr = O(() => S(() => {
3320
- const t = /* @__PURE__ */ new Map();
3321
- return {
3322
- on: (r, o) => {
3323
- t.has(r) || t.set(r, /* @__PURE__ */ new Set());
3324
- const n = t.get(r);
3325
- return n.add(o), () => {
3326
- n.delete(o), n.size === 0 && t.delete(r);
3327
- };
3328
- },
3329
- emit: (r, o) => {
3330
- const n = t.get(r), i = t.get("*");
3331
- !n && !i || queueMicrotask(() => {
3332
- if (n)
3333
- for (const s of n)
3334
- s(o);
3335
- if (i)
3336
- for (const s of i)
3337
- s({ event: r, payload: o });
3338
- });
3339
- }
3340
- };
3341
- }, [])), kt = yt(null), Xr = (e, t) => xt(kt, e, t), Ro = () => {
3342
- const e = wt(kt);
3343
- if (!e)
3344
- throw new Error("Events context is not available");
3345
- return e;
3346
- }, Kr = O(() => {
3347
- const [e] = q(() => ({})), t = new Er();
3348
- return ze({
3349
- getState: () => e,
3350
- getModelContext: () => t.getModelContext(),
3351
- subscribe: (r) => t.subscribe(r),
3352
- register: (r) => t.registerModelContextProvider(r)
3353
- });
3354
- }), Zr = O(({ threads: e, modelContext: t, tools: r }) => {
3355
- const o = Nr(Yr()), { threads: n, tools: i, modelContext: s } = Xr(o, () => {
3356
- const a = ee(t ?? Kr(), [t]);
3357
- return Hr(a.api, () => ({
3358
- modelContext: a,
3359
- tools: ee(r ?? Jr({}), [r]),
3360
- threads: ee(e, [e])
3361
- }));
3362
- }), l = S(() => ({
3363
- threads: n.state,
3364
- tools: i.state,
3365
- modelContext: s.state
3366
- }), [n.state, i.state, s.state]);
3367
- return ze({
3368
- getState: () => l,
3369
- threads: n.api,
3370
- tools: i.api,
3371
- modelContext: s.api,
3372
- on: o.on
3373
- });
3374
- }), Qr = (e) => {
3375
- const t = () => e.getState().api.threads.item("main");
3376
- return {
3377
- threads: v({
3378
- source: "root",
3379
- query: {},
3380
- get: () => e.getState().api.threads
3381
- }),
3382
- tools: v({
3383
- source: "root",
3384
- query: {},
3385
- get: () => e.getState().api.tools
3386
- }),
3387
- modelContext: v({
3388
- source: "root",
3389
- query: {},
3390
- get: () => e.getState().api.modelContext
3391
- }),
3392
- thread: v({
3393
- source: "threads",
3394
- query: { type: "main" },
3395
- get: () => e.getState().api.threads.thread("main")
3396
- }),
3397
- threadListItem: v({
3398
- source: "threads",
3399
- query: { type: "main" },
3400
- get: () => t()
3401
- }),
3402
- composer: v({
3403
- source: "thread",
3404
- query: {},
3405
- get: () => e.getState().api.threads.thread("main").composer
3406
- }),
3407
- on(r, o) {
3408
- const { event: n, scope: i } = gt(r);
3409
- if (i === "*")
3410
- return e.getState().api.on(n, o);
3411
- if (ke("thread", i) || ke("thread-list-item", i) || ke("composer", i))
3412
- return e.getState().api.on(n, (s) => {
3413
- s.threadId === t().getState().id && o(s);
3414
- });
3415
- throw new Error(`Event scope is not available in this component: ${i}`);
3416
- },
3417
- subscribe: e.subscribe
3418
- };
3419
- }, eo = (e) => {
3420
- const t = Pe(), r = ht(Dr(Zr(e))), o = H(() => Qr(r), [r]);
3421
- return H(() => Ct(t, o), [t, o]);
3422
- }, v = (e) => {
3423
- const t = e.get;
3424
- return t.source = e.source, t.query = e.query, t;
3425
- }, he = () => () => {
3426
- }, St = Ae({
3427
- threads: v({
3428
- source: null,
3429
- query: {},
3430
- get: () => {
3431
- throw new Error("Threads is only available inside <AssistantProvider />");
3432
- }
3433
- }),
3434
- tools: v({
3435
- source: null,
3436
- query: {},
3437
- get: () => {
3438
- throw new Error("Tools is only available inside <AssistantProvider />");
3439
- }
3440
- }),
3441
- modelContext: v({
3442
- source: null,
3443
- query: {},
3444
- get: () => {
3445
- throw new Error("ModelContext is only available inside <AssistantProvider />");
3446
- }
3447
- }),
3448
- threadListItem: v({
3449
- source: null,
3450
- query: {},
3451
- get: () => {
3452
- throw new Error("ThreadListItem is only available inside <AssistantProvider />");
3453
- }
3454
- }),
3455
- thread: v({
3456
- source: null,
3457
- query: {},
3458
- get: () => {
3459
- throw new Error("Thread is only available inside <AssistantProvider />");
3460
- }
3461
- }),
3462
- composer: v({
3463
- source: null,
3464
- query: {},
3465
- get: () => {
3466
- throw new Error("Composer is only available inside <AssistantProvider />");
3467
- }
3468
- }),
3469
- message: v({
3470
- source: null,
3471
- query: {},
3472
- get: () => {
3473
- throw new Error("Message is only available inside <ThreadPrimitive.Messages />");
3474
- }
3475
- }),
3476
- part: v({
3477
- source: null,
3478
- query: {},
3479
- get: () => {
3480
- throw new Error("Part is only available inside <MessagePrimitive.Parts />");
3481
- }
3482
- }),
3483
- attachment: v({
3484
- source: null,
3485
- query: {},
3486
- get: () => {
3487
- throw new Error("Attachment is only available inside <MessagePrimitive.Attachments /> or <ComposerPrimitive.Attachments />");
3488
- }
3489
- }),
3490
- subscribe: he,
3491
- on: (e) => {
3492
- const { scope: t } = gt(e);
3493
- throw new Error(`Event scope is not available in this component: ${t}`);
3494
- }
3495
- }), Pe = () => Ze(St), Io = (e) => {
3496
- const t = Pe(), r = ht(Wr(e));
3497
- return H(() => Ct(t, r), [t, r]);
3498
- }, to = (e) => eo(e);
3499
- function ro(e) {
3500
- return e ? to(e) : Pe();
3501
- }
3502
- const oo = (e, t) => e === he ? t : t === he ? e : (...r) => {
3503
- const o = e(...r), n = t(...r);
3504
- return () => {
3505
- o(), n();
3506
- };
3507
- }, Ct = (e, t) => {
3508
- const r = t.subscribe;
3509
- return {
3510
- ...e,
3511
- ...t,
3512
- subscribe: oo(e.subscribe, r ?? he)
3513
- };
3514
- }, Mo = ({ api: e, children: t, devToolsVisible: r = !0 }) => (Re(() => {
3515
- if (!(!r || !e.subscribe))
3516
- return G.register(e);
3517
- }, [e, r]), me(St.Provider, { value: e, children: t }));
3518
- class Ye {
3519
- #e;
3520
- constructor(t) {
3521
- this.#e = t;
3522
- }
3523
- get threads() {
3524
- return this.#e.threads().getState();
3525
- }
3526
- get tools() {
3527
- return this.#e.tools().getState();
3528
- }
3529
- get threadListItem() {
3530
- return this.#e.threadListItem().getState();
3531
- }
3532
- get thread() {
3533
- return this.#e.thread().getState();
3534
- }
3535
- get composer() {
3536
- return this.#e.composer().getState();
3537
- }
3538
- get message() {
3539
- return this.#e.message().getState();
3540
- }
3541
- get part() {
3542
- return this.#e.part().getState();
3543
- }
3544
- get attachment() {
3545
- return this.#e.attachment().getState();
3546
- }
3547
- }
3548
- const so = (e) => {
3549
- const t = ro(), r = H(() => new Ye(t), [t]), o = It(t.subscribe, () => e(r), () => e(r));
3550
- if (Mt(o), o instanceof Ye)
3551
- throw new Error("You tried to return the entire AssistantState. This is not supported due to technical limitations.");
3552
- return o;
3553
- }, Et = () => {
3554
- const e = Ze(Sr);
2785
+ ), or = Ce(null), Ve = () => {
2786
+ const e = Fe(Gt);
3555
2787
  if (!e)
3556
2788
  throw new Error("useElements must be used within a ElementsProvider");
3557
2789
  return e;
3558
- }, no = {
2790
+ }, Vt = {
3559
2791
  compact: {
3560
2792
  // Padding - small increments (1, 1.5, 2, 2.5, 3)
3561
2793
  "p-xs": "p-1",
@@ -3646,10 +2878,10 @@ const so = (e) => {
3646
2878
  "text-title": "text-3xl",
3647
2879
  "text-subtitle": "text-lg"
3648
2880
  }
3649
- }, io = () => {
3650
- const { config: e } = Et(), t = e.theme?.density ?? "normal";
3651
- return (r) => no[t][r];
3652
- }, ao = {
2881
+ }, Ut = () => {
2882
+ const { config: e } = Ve(), r = e.theme?.density ?? "normal";
2883
+ return (t) => Vt[r][t];
2884
+ }, Ft = {
3653
2885
  sharp: {
3654
2886
  sm: "rounded-sm",
3655
2887
  md: "rounded",
@@ -3671,22 +2903,22 @@ const so = (e) => {
3671
2903
  xl: "rounded-3xl",
3672
2904
  full: "rounded-full"
3673
2905
  }
3674
- }, lo = () => {
3675
- const { config: e } = Et(), t = e.theme?.radius ?? "soft";
3676
- return (r) => ao[t][r];
2906
+ }, Bt = () => {
2907
+ const { config: e } = Ve(), r = e.theme?.radius ?? "soft";
2908
+ return (t) => Ft[r][t];
3677
2909
  };
3678
- const co = (e) => e.replace(/([a-z0-9])([A-Z])/g, "$1-$2").toLowerCase(), uo = (e) => e.replace(
2910
+ const Wt = (e) => e.replace(/([a-z0-9])([A-Z])/g, "$1-$2").toLowerCase(), _t = (e) => e.replace(
3679
2911
  /^([A-Z])|[\s-_]+(\w)/g,
3680
- (t, r, o) => o ? o.toUpperCase() : r.toLowerCase()
3681
- ), Xe = (e) => {
3682
- const t = uo(e);
3683
- return t.charAt(0).toUpperCase() + t.slice(1);
3684
- }, At = (...e) => e.filter((t, r, o) => !!t && t.trim() !== "" && o.indexOf(t) === r).join(" ").trim(), po = (e) => {
3685
- for (const t in e)
3686
- if (t.startsWith("aria-") || t === "role" || t === "title")
2912
+ (r, t, o) => o ? o.toUpperCase() : t.toLowerCase()
2913
+ ), ve = (e) => {
2914
+ const r = _t(e);
2915
+ return r.charAt(0).toUpperCase() + r.slice(1);
2916
+ }, Ue = (...e) => e.filter((r, t, o) => !!r && r.trim() !== "" && o.indexOf(r) === t).join(" ").trim(), Dt = (e) => {
2917
+ for (const r in e)
2918
+ if (r.startsWith("aria-") || r === "role" || r === "title")
3687
2919
  return !0;
3688
2920
  };
3689
- var mo = {
2921
+ var $t = {
3690
2922
  xmlns: "http://www.w3.org/2000/svg",
3691
2923
  width: 24,
3692
2924
  height: 24,
@@ -3697,99 +2929,102 @@ var mo = {
3697
2929
  strokeLinecap: "round",
3698
2930
  strokeLinejoin: "round"
3699
2931
  };
3700
- const fo = Qe(
2932
+ const qt = Ae(
3701
2933
  ({
3702
2934
  color: e = "currentColor",
3703
- size: t = 24,
3704
- strokeWidth: r = 2,
2935
+ size: r = 24,
2936
+ strokeWidth: t = 2,
3705
2937
  absoluteStrokeWidth: o,
3706
- className: n = "",
2938
+ className: a = "",
3707
2939
  children: i,
3708
- iconNode: s,
3709
- ...l
3710
- }, a) => Ce(
2940
+ iconNode: l,
2941
+ ...p
2942
+ }, c) => se(
3711
2943
  "svg",
3712
2944
  {
3713
- ref: a,
3714
- ...mo,
3715
- width: t,
3716
- height: t,
2945
+ ref: c,
2946
+ ...$t,
2947
+ width: r,
2948
+ height: r,
3717
2949
  stroke: e,
3718
- strokeWidth: o ? Number(r) * 24 / Number(t) : r,
3719
- className: At("lucide", n),
3720
- ...!i && !po(l) && { "aria-hidden": "true" },
3721
- ...l
2950
+ strokeWidth: o ? Number(t) * 24 / Number(r) : t,
2951
+ className: Ue("lucide", a),
2952
+ ...!i && !Dt(p) && { "aria-hidden": "true" },
2953
+ ...p
3722
2954
  },
3723
2955
  [
3724
- ...s.map(([u, m]) => Ce(u, m)),
2956
+ ...l.map(([g, f]) => se(g, f)),
3725
2957
  ...Array.isArray(i) ? i : [i]
3726
2958
  ]
3727
2959
  )
3728
2960
  );
3729
- const ho = (e, t) => {
3730
- const r = Qe(
3731
- ({ className: o, ...n }, i) => Ce(fo, {
2961
+ const Jt = (e, r) => {
2962
+ const t = Ae(
2963
+ ({ className: o, ...a }, i) => se(qt, {
3732
2964
  ref: i,
3733
- iconNode: t,
3734
- className: At(
3735
- `lucide-${co(Xe(e))}`,
2965
+ iconNode: r,
2966
+ className: Ue(
2967
+ `lucide-${Wt(ve(e))}`,
3736
2968
  `lucide-${e}`,
3737
2969
  o
3738
2970
  ),
3739
- ...n
2971
+ ...a
3740
2972
  })
3741
2973
  );
3742
- return r.displayName = Xe(e), r;
2974
+ return t.displayName = ve(e), t;
3743
2975
  };
3744
- const go = [
2976
+ const Yt = [
3745
2977
  ["circle", { cx: "12", cy: "12", r: "10", key: "1mglay" }],
3746
2978
  ["line", { x1: "12", x2: "12", y1: "8", y2: "12", key: "1pkeuh" }],
3747
2979
  ["line", { x1: "12", x2: "12.01", y1: "16", y2: "16", key: "4dfq90" }]
3748
- ], bo = ho("circle-alert", go), yo = ({ code: e }) => {
3749
- const t = so(({ message: b }) => b), r = Ve(null), o = Ve(null), [n, i] = Ke(null), s = t.status?.type === "complete", l = lo(), a = io(), u = H(() => {
3750
- const b = e.trim();
3751
- if (!b) return null;
2980
+ ], Ht = Jt("circle-alert", Yt), Xt = ({ code: e }) => {
2981
+ const r = be(null), t = be(null), [o, a] = Be(null), i = Bt(), l = Ut(), p = We(() => {
2982
+ const g = e.trim();
2983
+ if (!g) return null;
3752
2984
  try {
3753
- return JSON.parse(b);
2985
+ const f = JSON.parse(g), x = f.data;
2986
+ return !x?.length || !x.some(
2987
+ (A) => Array.isArray(A.values) && A.values.length > 0
2988
+ ) ? null : f;
3754
2989
  } catch {
3755
2990
  return null;
3756
2991
  }
3757
- }, [e]), m = s && u !== null;
3758
- return Re(() => !r.current || !m ? void 0 : (i(null), (async () => {
2992
+ }, [e]), c = p !== null;
2993
+ return _e(() => !r.current || !c ? void 0 : (a(null), (async () => {
3759
2994
  try {
3760
- o.current && (o.current.finalize(), o.current = null);
3761
- const g = zt(u), w = new Pt(g, {
2995
+ t.current && (t.current.finalize(), t.current = null);
2996
+ const f = De(p), x = new $e(f, {
3762
2997
  container: r.current ?? void 0,
3763
2998
  renderer: "svg",
3764
2999
  hover: !0,
3765
- logLevel: _t
3000
+ logLevel: qe
3766
3001
  });
3767
- o.current = w, await w.runAsync();
3768
- } catch (g) {
3769
- console.error("Failed to render chart:", g), i(g instanceof Error ? g.message : "Failed to render chart");
3002
+ t.current = x, await x.runAsync();
3003
+ } catch (f) {
3004
+ console.error("Failed to render chart:", f), a(f instanceof Error ? f.message : "Failed to render chart");
3770
3005
  }
3771
3006
  })(), () => {
3772
- o.current && (o.current.finalize(), o.current = null);
3773
- }), [m, u]), /* @__PURE__ */ qe(
3007
+ t.current && (t.current.finalize(), t.current = null);
3008
+ }), [c, p]), /* @__PURE__ */ fe(
3774
3009
  "div",
3775
3010
  {
3776
- className: kr(
3011
+ className: jt(
3777
3012
  // the after:hidden is to prevent assistant-ui from showing its default code block loading indicator
3778
- "relative flex min-h-[400px] w-fit max-w-full min-w-[400px] items-center justify-center border p-6 after:hidden",
3779
- l("lg"),
3780
- a("p-lg")
3013
+ "relative min-h-[400px] w-fit max-w-full min-w-[400px] overflow-auto border p-6 after:hidden",
3014
+ i("lg"),
3015
+ l("p-lg")
3781
3016
  ),
3782
3017
  children: [
3783
- !m && !n && /* @__PURE__ */ me("div", { className: "shimmer text-muted-foreground bg-background/80 absolute inset-0 z-10 flex items-center justify-center", children: "Rendering chart..." }),
3784
- n && /* @__PURE__ */ qe("div", { className: "bg-background absolute inset-0 z-10 flex items-center justify-center gap-2 text-rose-500", children: [
3785
- /* @__PURE__ */ me(bo, { name: "alert-circle", className: "h-4 w-4" }),
3786
- n
3018
+ !c && !o && /* @__PURE__ */ te("div", { className: "shimmer text-muted-foreground bg-background/80 absolute inset-0 z-10 flex items-center justify-center", children: "Rendering chart..." }),
3019
+ o && /* @__PURE__ */ fe("div", { className: "bg-background absolute inset-0 z-10 flex items-center justify-center gap-2 text-rose-500", children: [
3020
+ /* @__PURE__ */ te(Ht, { name: "alert-circle", className: "h-4 w-4" }),
3021
+ o
3787
3022
  ] }),
3788
- /* @__PURE__ */ me("div", { ref: r, className: m ? "block" : "hidden" })
3023
+ /* @__PURE__ */ te("div", { ref: r, className: c ? "block" : "hidden" })
3789
3024
  ]
3790
3025
  }
3791
3026
  );
3792
- }, xo = {
3027
+ }, Kt = {
3793
3028
  language: "vega",
3794
3029
  prompt: `When a user requests a chart or visualization, respond with a valid Vega specification (https://vega.github.io/vega/) in a code block annotated with the language identifier 'vega'.
3795
3030
 
@@ -3806,43 +3041,104 @@ CONTENT GUIDELINES:
3806
3041
  - Do not describe visual properties or technical implementation details
3807
3042
  - Do not mention "Vega" or other technical terms - this is user-facing
3808
3043
 
3809
- The Vega spec will be parsed with JSON.parse() - if it fails, the chart will error. Ensure strict JSON validity.`,
3810
- Component: yo,
3044
+ The Vega spec will be parsed with JSON.parse() - if it fails, the chart will error. Ensure strict JSON validity.
3045
+
3046
+ REQUIRED STRUCTURE:
3047
+ Every spec needs: "$schema", "width", "height", "data", "scales", "marks". Include "padding" (5 or object) and "axes" for readability.
3048
+ Data format:
3049
+ {"name": "table", "values": [{"category": "A", "amount": 28}]}
3050
+ SCALES - Choose the right type:
3051
+ - "band": categorical x-axis (bar charts) - domain from data field, range: "width", padding: 0.1
3052
+ - "linear": numerical axes - domain from data field, range: "width"/"height", nice: true
3053
+ - "time"/"utc": temporal data
3054
+ - "ordinal": for colors use range: {"scheme": "category10"} or range: ["#1f77b4", "#ff7f0e", "#2ca02c"]
3055
+ MARKS - Common types:
3056
+ - "rect": bar charts (requires x, width, y, y2)
3057
+ - "line": time series (requires x, y)
3058
+ - "area": filled areas (requires x, y, y2)
3059
+ - "symbol": scatter plots (requires x, y)
3060
+ CHART PATTERNS:
3061
+ Bar: band scale (x) + linear scale (y) + rect marks. Set y2: {"scale": "yscale", "value": 0}
3062
+ Line: linear/point scale (x) + linear scale (y) + line mark. Add "interpolate": "monotone"
3063
+ Scatter: linear scales (both) + symbol marks
3064
+ Area: like line but use area mark with y2: {"scale": "yscale", "value": 0}
3065
+ Stacked: add transform [{"type": "stack", "groupby": ["x"], "field": "y"}], use y0/y1 fields
3066
+ CRITICAL RULES:
3067
+ 1. Data must contain at least one record with valid (non-null) values for ALL fields used in scales
3068
+ 2. ONLY reference fields that actually exist in your data - never use datum.meta, datum.id, or any field not in your values array
3069
+ 3. Always include y2 for rect/area marks (or bars/areas have zero height)
3070
+ 4. Use "band" for categories, not "linear"
3071
+ 5. For position scales use "range": "width" or "height". For color scales NEVER use "range": "category10" - use "range": {"scheme": "category10"} or an array
3072
+ 6. Match scale/data names exactly between definition and usage
3073
+ 7. Include "from": {"data": "dataName"} on marks
3074
+ 8. Add padding to prevent label cutoff
3075
+ EXAMPLE: COMPLETE BAR CHART
3076
+ {
3077
+ "$schema": "https://vega.github.io/schema/vega/v5.json",
3078
+ "width": 500,
3079
+ "height": 300,
3080
+ "padding": 5,
3081
+ "data": [
3082
+ {
3083
+ "name": "table",
3084
+ "values": [
3085
+ {"category": "A", "amount": 28},
3086
+ {"category": "B", "amount": 55},
3087
+ {"category": "C", "amount": 43}
3088
+ ]
3089
+ }
3090
+ ],
3091
+ "scales": [
3092
+ {
3093
+ "name": "xscale",
3094
+ "type": "band",
3095
+ "domain": {"data": "table", "field": "category"},
3096
+ "range": "width",
3097
+ "padding": 0.1
3098
+ },
3099
+ {
3100
+ "name": "yscale",
3101
+ "type": "linear",
3102
+ "domain": {"data": "table", "field": "amount"},
3103
+ "range": "height",
3104
+ "nice": true
3105
+ }
3106
+ ],
3107
+ "axes": [
3108
+ {"scale": "xscale", "orient": "bottom"},
3109
+ {"scale": "yscale", "orient": "left", "title": "Amount"}
3110
+ ],
3111
+ "marks": [
3112
+ {
3113
+ "type": "rect",
3114
+ "from": {"data": "table"},
3115
+ "encode": {
3116
+ "enter": {
3117
+ "x": {"scale": "xscale", "field": "category"},
3118
+ "width": {"scale": "xscale", "band": 1},
3119
+ "y": {"scale": "yscale", "field": "amount"},
3120
+ "y2": {"scale": "yscale", "value": 0},
3121
+ "fill": {"value": "steelblue"}
3122
+ }
3123
+ }
3124
+ }
3125
+ ]
3126
+ }`,
3127
+ Component: Xt,
3811
3128
  Header: void 0
3812
- }, zo = [xo];
3129
+ }, sr = [Kt];
3813
3130
  export {
3814
- Mo as A,
3815
- So as B,
3816
- Er as C,
3817
- Ao as D,
3818
- Sr as E,
3819
- xo as F,
3820
- Eo as T,
3821
- Co as a,
3822
- M as b,
3823
- Ro as c,
3824
- ze as d,
3825
- S as e,
3826
- Lr as f,
3827
- Nr as g,
3828
- Br as h,
3829
- Io as i,
3830
- ke as j,
3831
- ht as k,
3832
- Dr as l,
3833
- so as m,
3834
- gt as n,
3835
- Pe as o,
3836
- Je as p,
3837
- ho as q,
3838
- O as r,
3839
- zo as s,
3840
- q as t,
3841
- ro as u,
3842
- kr as v,
3843
- Ot as w,
3844
- Et as x,
3845
- io as y,
3846
- lo as z
3131
+ Gt as E,
3132
+ or as T,
3133
+ rr as a,
3134
+ jt as b,
3135
+ Jt as c,
3136
+ Je as d,
3137
+ Ut as e,
3138
+ Bt as f,
3139
+ tr as g,
3140
+ Kt as h,
3141
+ sr as r,
3142
+ Ve as u
3847
3143
  };
3848
- //# sourceMappingURL=index-Cb5sxQuN.js.map
3144
+ //# sourceMappingURL=index-DaF9fGY-.js.map