@abduljebar/text-editor 2.5.2 → 2.6.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/index.js CHANGED
@@ -1,74 +1,74 @@
1
- import It, { useState as Z, useRef as ne, useCallback as H, useEffect as me, forwardRef as Lt, useImperativeHandle as zt } from "react";
2
- import { Save as ft, FileDown as Ot, Trash2 as Pt, Image as je, Undo as Mt, Redo as qt, Bold as Dt, Italic as Ft, Underline as Ut, Strikethrough as $t, Heading1 as Bt, Heading2 as Gt, Type as Wt, Code as Vt, Quote as Ht, List as Yt, ListOrdered as Jt, Indent as Kt, Outdent as Xt, AlignLeft as Qt, AlignCenter as Zt, AlignRight as er, Superscript as tr, Subscript as rr, Link as nr, Loader2 as or, CheckCircle as sr, AlertCircle as ar, Upload as ir } from "lucide-react";
3
- var ye = typeof globalThis < "u" ? globalThis : typeof window < "u" ? window : typeof global < "u" ? global : typeof self < "u" ? self : {};
4
- function lr(e) {
1
+ import Lt, { useState as ee, useRef as re, useCallback as W, useEffect as me, forwardRef as zt, useImperativeHandle as Ot } from "react";
2
+ import { Save as gt, FileDown as Pt, Trash2 as Mt, Image as Ce, Undo as qt, Redo as Dt, Bold as Ft, Italic as Ut, Underline as $t, Strikethrough as Bt, Heading1 as Gt, Heading2 as Wt, Type as Ht, Code as Vt, Quote as Yt, List as Jt, ListOrdered as Kt, Indent as Xt, Outdent as Qt, AlignLeft as Zt, AlignCenter as er, AlignRight as tr, Superscript as rr, Subscript as nr, Link as or, Loader2 as sr, CheckCircle as ar, AlertCircle as ir, Upload as lr } from "lucide-react";
3
+ var we = typeof globalThis < "u" ? globalThis : typeof window < "u" ? window : typeof global < "u" ? global : typeof self < "u" ? self : {};
4
+ function cr(e) {
5
5
  return e && e.__esModule && Object.prototype.hasOwnProperty.call(e, "default") ? e.default : e;
6
6
  }
7
- var we = { exports: {} }, he = {};
8
- var We;
9
- function cr() {
10
- if (We) return he;
11
- We = 1;
7
+ var ke = { exports: {} }, xe = {};
8
+ var He;
9
+ function dr() {
10
+ if (He) return xe;
11
+ He = 1;
12
12
  var e = /* @__PURE__ */ Symbol.for("react.transitional.element"), t = /* @__PURE__ */ Symbol.for("react.fragment");
13
- function r(n, s, d) {
13
+ function r(n, a, c) {
14
14
  var l = null;
15
- if (d !== void 0 && (l = "" + d), s.key !== void 0 && (l = "" + s.key), "key" in s) {
16
- d = {};
17
- for (var a in s)
18
- a !== "key" && (d[a] = s[a]);
19
- } else d = s;
20
- return s = d.ref, {
15
+ if (c !== void 0 && (l = "" + c), a.key !== void 0 && (l = "" + a.key), "key" in a) {
16
+ c = {};
17
+ for (var s in a)
18
+ s !== "key" && (c[s] = a[s]);
19
+ } else c = a;
20
+ return a = c.ref, {
21
21
  $$typeof: e,
22
22
  type: n,
23
23
  key: l,
24
- ref: s !== void 0 ? s : null,
25
- props: d
24
+ ref: a !== void 0 ? a : null,
25
+ props: c
26
26
  };
27
27
  }
28
- return he.Fragment = t, he.jsx = r, he.jsxs = r, he;
28
+ return xe.Fragment = t, xe.jsx = r, xe.jsxs = r, xe;
29
29
  }
30
- var xe = {};
30
+ var ve = {};
31
31
  var Ve;
32
- function dr() {
32
+ function ur() {
33
33
  return Ve || (Ve = 1, process.env.NODE_ENV !== "production" && (function() {
34
34
  function e(o) {
35
35
  if (o == null) return null;
36
36
  if (typeof o == "function")
37
- return o.$$typeof === j ? null : o.displayName || o.name || null;
37
+ return o.$$typeof === v ? null : o.displayName || o.name || null;
38
38
  if (typeof o == "string") return o;
39
39
  switch (o) {
40
40
  case z:
41
41
  return "Fragment";
42
- case B:
42
+ case $:
43
43
  return "Profiler";
44
- case V:
44
+ case H:
45
45
  return "StrictMode";
46
- case W:
46
+ case G:
47
47
  return "Suspense";
48
- case K:
48
+ case J:
49
49
  return "SuspenseList";
50
- case y:
50
+ case d:
51
51
  return "Activity";
52
52
  }
53
53
  if (typeof o == "object")
54
54
  switch (typeof o.tag == "number" && console.error(
55
55
  "Received an unexpected object in getComponentNameFromType(). This is likely a bug in React. Please file an issue."
56
56
  ), o.$$typeof) {
57
- case U:
57
+ case F:
58
58
  return "Portal";
59
59
  case N:
60
60
  return o.displayName || "Context";
61
61
  case k:
62
62
  return (o._context.displayName || "Context") + ".Consumer";
63
- case Y:
64
- var T = o.render;
65
- return o = o.displayName, o || (o = T.displayName || T.name || "", o = o !== "" ? "ForwardRef(" + o + ")" : "ForwardRef"), o;
66
- case p:
67
- return T = o.displayName || null, T !== null ? T : e(o.type) || "Memo";
68
- case c:
69
- T = o._payload, o = o._init;
63
+ case V:
64
+ var y = o.render;
65
+ return o = o.displayName, o || (o = y.displayName || y.name || "", o = o !== "" ? "ForwardRef(" + o + ")" : "ForwardRef"), o;
66
+ case x:
67
+ return y = o.displayName || null, y !== null ? y : e(o.type) || "Memo";
68
+ case P:
69
+ y = o._payload, o = o._init;
70
70
  try {
71
- return e(o(T));
71
+ return e(o(y));
72
72
  } catch {
73
73
  }
74
74
  }
@@ -80,50 +80,50 @@ function dr() {
80
80
  function r(o) {
81
81
  try {
82
82
  t(o);
83
- var T = !1;
83
+ var y = !1;
84
84
  } catch {
85
- T = !0;
85
+ y = !0;
86
86
  }
87
- if (T) {
88
- T = console;
89
- var w = T.error, R = typeof Symbol == "function" && Symbol.toStringTag && o[Symbol.toStringTag] || o.constructor.name || "Object";
87
+ if (y) {
88
+ y = console;
89
+ var w = y.error, C = typeof Symbol == "function" && Symbol.toStringTag && o[Symbol.toStringTag] || o.constructor.name || "Object";
90
90
  return w.call(
91
- T,
91
+ y,
92
92
  "The provided key is an unsupported type %s. This value must be coerced to a string before using it here.",
93
- R
93
+ C
94
94
  ), t(o);
95
95
  }
96
96
  }
97
97
  function n(o) {
98
98
  if (o === z) return "<>";
99
- if (typeof o == "object" && o !== null && o.$$typeof === c)
99
+ if (typeof o == "object" && o !== null && o.$$typeof === P)
100
100
  return "<...>";
101
101
  try {
102
- var T = e(o);
103
- return T ? "<" + T + ">" : "<...>";
102
+ var y = e(o);
103
+ return y ? "<" + y + ">" : "<...>";
104
104
  } catch {
105
105
  return "<...>";
106
106
  }
107
107
  }
108
- function s() {
109
- var o = x.A;
108
+ function a() {
109
+ var o = T.A;
110
110
  return o === null ? null : o.getOwner();
111
111
  }
112
- function d() {
112
+ function c() {
113
113
  return Error("react-stack-top-frame");
114
114
  }
115
115
  function l(o) {
116
- if (v.call(o, "key")) {
117
- var T = Object.getOwnPropertyDescriptor(o, "key").get;
118
- if (T && T.isReactWarning) return !1;
116
+ if (u.call(o, "key")) {
117
+ var y = Object.getOwnPropertyDescriptor(o, "key").get;
118
+ if (y && y.isReactWarning) return !1;
119
119
  }
120
120
  return o.key !== void 0;
121
121
  }
122
- function a(o, T) {
122
+ function s(o, y) {
123
123
  function w() {
124
- O || (O = !0, console.error(
124
+ D || (D = !0, console.error(
125
125
  "%s: `key` is not a prop. Trying to access it will result in `undefined` being returned. If you need to access the same value within the child component, you should pass it as a different prop. (https://react.dev/link/special-props)",
126
- T
126
+ y
127
127
  ));
128
128
  }
129
129
  w.isReactWarning = !0, Object.defineProperty(o, "key", {
@@ -131,23 +131,23 @@ function dr() {
131
131
  configurable: !0
132
132
  });
133
133
  }
134
- function u() {
134
+ function m() {
135
135
  var o = e(this.type);
136
- return $[o] || ($[o] = !0, console.error(
136
+ return U[o] || (U[o] = !0, console.error(
137
137
  "Accessing element.ref was removed in React 19. ref is now a regular prop. It will be removed from the JSX Element type in a future release."
138
138
  )), o = this.props.ref, o !== void 0 ? o : null;
139
139
  }
140
- function m(o, T, w, R, X, ae) {
141
- var C = w.ref;
140
+ function f(o, y, w, C, Z, ne) {
141
+ var E = w.ref;
142
142
  return o = {
143
143
  $$typeof: S,
144
144
  type: o,
145
- key: T,
145
+ key: y,
146
146
  props: w,
147
- _owner: R
148
- }, (C !== void 0 ? C : null) !== null ? Object.defineProperty(o, "ref", {
147
+ _owner: C
148
+ }, (E !== void 0 ? E : null) !== null ? Object.defineProperty(o, "ref", {
149
149
  enumerable: !1,
150
- get: u
150
+ get: m
151
151
  }) : Object.defineProperty(o, "ref", { enumerable: !1, value: null }), o._store = {}, Object.defineProperty(o._store, "validated", {
152
152
  configurable: !1,
153
153
  enumerable: !1,
@@ -162,243 +162,243 @@ function dr() {
162
162
  configurable: !1,
163
163
  enumerable: !1,
164
164
  writable: !0,
165
- value: X
165
+ value: Z
166
166
  }), Object.defineProperty(o, "_debugTask", {
167
167
  configurable: !1,
168
168
  enumerable: !1,
169
169
  writable: !0,
170
- value: ae
170
+ value: ne
171
171
  }), Object.freeze && (Object.freeze(o.props), Object.freeze(o)), o;
172
172
  }
173
- function A(o, T, w, R, X, ae) {
174
- var C = T.children;
175
- if (C !== void 0)
176
- if (R)
177
- if (E(C)) {
178
- for (R = 0; R < C.length; R++)
179
- L(C[R]);
180
- Object.freeze && Object.freeze(C);
173
+ function R(o, y, w, C, Z, ne) {
174
+ var E = y.children;
175
+ if (E !== void 0)
176
+ if (C)
177
+ if (j(E)) {
178
+ for (C = 0; C < E.length; C++)
179
+ L(E[C]);
180
+ Object.freeze && Object.freeze(E);
181
181
  } else
182
182
  console.error(
183
183
  "React.jsx: Static children should always be an array. You are likely explicitly calling React.jsxs or React.jsxDEV. Use the Babel transform instead."
184
184
  );
185
- else L(C);
186
- if (v.call(T, "key")) {
187
- C = e(o);
188
- var Q = Object.keys(T).filter(function(re) {
189
- return re !== "key";
185
+ else L(E);
186
+ if (u.call(y, "key")) {
187
+ E = e(o);
188
+ var Q = Object.keys(y).filter(function(oe) {
189
+ return oe !== "key";
190
190
  });
191
- R = 0 < Q.length ? "{key: someKey, " + Q.join(": ..., ") + ": ...}" : "{key: someKey}", te[C + R] || (Q = 0 < Q.length ? "{" + Q.join(": ..., ") + ": ...}" : "{}", console.error(
191
+ C = 0 < Q.length ? "{key: someKey, " + Q.join(": ..., ") + ": ...}" : "{key: someKey}", B[E + C] || (Q = 0 < Q.length ? "{" + Q.join(": ..., ") + ": ...}" : "{}", console.error(
192
192
  `A props object containing a "key" prop is being spread into JSX:
193
193
  let props = %s;
194
194
  <%s {...props} />
195
195
  React keys must be passed directly to JSX without using spread:
196
196
  let props = %s;
197
197
  <%s key={someKey} {...props} />`,
198
- R,
199
198
  C,
199
+ E,
200
200
  Q,
201
- C
202
- ), te[C + R] = !0);
201
+ E
202
+ ), B[E + C] = !0);
203
203
  }
204
- if (C = null, w !== void 0 && (r(w), C = "" + w), l(T) && (r(T.key), C = "" + T.key), "key" in T) {
204
+ if (E = null, w !== void 0 && (r(w), E = "" + w), l(y) && (r(y.key), E = "" + y.key), "key" in y) {
205
205
  w = {};
206
- for (var ee in T)
207
- ee !== "key" && (w[ee] = T[ee]);
208
- } else w = T;
209
- return C && a(
206
+ for (var te in y)
207
+ te !== "key" && (w[te] = y[te]);
208
+ } else w = y;
209
+ return E && s(
210
210
  w,
211
211
  typeof o == "function" ? o.displayName || o.name || "Unknown" : o
212
- ), m(
212
+ ), f(
213
213
  o,
214
- C,
214
+ E,
215
215
  w,
216
- s(),
217
- X,
218
- ae
216
+ a(),
217
+ Z,
218
+ ne
219
219
  );
220
220
  }
221
221
  function L(o) {
222
- M(o) ? o._store && (o._store.validated = 1) : typeof o == "object" && o !== null && o.$$typeof === c && (o._payload.status === "fulfilled" ? M(o._payload.value) && o._payload.value._store && (o._payload.value._store.validated = 1) : o._store && (o._store.validated = 1));
222
+ M(o) ? o._store && (o._store.validated = 1) : typeof o == "object" && o !== null && o.$$typeof === P && (o._payload.status === "fulfilled" ? M(o._payload.value) && o._payload.value._store && (o._payload.value._store.validated = 1) : o._store && (o._store.validated = 1));
223
223
  }
224
224
  function M(o) {
225
225
  return typeof o == "object" && o !== null && o.$$typeof === S;
226
226
  }
227
- var D = It, S = /* @__PURE__ */ Symbol.for("react.transitional.element"), U = /* @__PURE__ */ Symbol.for("react.portal"), z = /* @__PURE__ */ Symbol.for("react.fragment"), V = /* @__PURE__ */ Symbol.for("react.strict_mode"), B = /* @__PURE__ */ Symbol.for("react.profiler"), k = /* @__PURE__ */ Symbol.for("react.consumer"), N = /* @__PURE__ */ Symbol.for("react.context"), Y = /* @__PURE__ */ Symbol.for("react.forward_ref"), W = /* @__PURE__ */ Symbol.for("react.suspense"), K = /* @__PURE__ */ Symbol.for("react.suspense_list"), p = /* @__PURE__ */ Symbol.for("react.memo"), c = /* @__PURE__ */ Symbol.for("react.lazy"), y = /* @__PURE__ */ Symbol.for("react.activity"), j = /* @__PURE__ */ Symbol.for("react.client.reference"), x = D.__CLIENT_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE, v = Object.prototype.hasOwnProperty, E = Array.isArray, q = console.createTask ? console.createTask : function() {
227
+ var q = Lt, S = /* @__PURE__ */ Symbol.for("react.transitional.element"), F = /* @__PURE__ */ Symbol.for("react.portal"), z = /* @__PURE__ */ Symbol.for("react.fragment"), H = /* @__PURE__ */ Symbol.for("react.strict_mode"), $ = /* @__PURE__ */ Symbol.for("react.profiler"), k = /* @__PURE__ */ Symbol.for("react.consumer"), N = /* @__PURE__ */ Symbol.for("react.context"), V = /* @__PURE__ */ Symbol.for("react.forward_ref"), G = /* @__PURE__ */ Symbol.for("react.suspense"), J = /* @__PURE__ */ Symbol.for("react.suspense_list"), x = /* @__PURE__ */ Symbol.for("react.memo"), P = /* @__PURE__ */ Symbol.for("react.lazy"), d = /* @__PURE__ */ Symbol.for("react.activity"), v = /* @__PURE__ */ Symbol.for("react.client.reference"), T = q.__CLIENT_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE, u = Object.prototype.hasOwnProperty, j = Array.isArray, A = console.createTask ? console.createTask : function() {
228
228
  return null;
229
229
  };
230
- D = {
230
+ q = {
231
231
  react_stack_bottom_frame: function(o) {
232
232
  return o();
233
233
  }
234
234
  };
235
- var O, $ = {}, h = D.react_stack_bottom_frame.bind(
236
- D,
237
- d
238
- )(), G = q(n(d)), te = {};
239
- xe.Fragment = z, xe.jsx = function(o, T, w) {
240
- var R = 1e4 > x.recentlyCreatedOwnerStacks++;
241
- return A(
235
+ var D, U = {}, p = q.react_stack_bottom_frame.bind(
236
+ q,
237
+ c
238
+ )(), X = A(n(c)), B = {};
239
+ ve.Fragment = z, ve.jsx = function(o, y, w) {
240
+ var C = 1e4 > T.recentlyCreatedOwnerStacks++;
241
+ return R(
242
242
  o,
243
- T,
243
+ y,
244
244
  w,
245
245
  !1,
246
- R ? Error("react-stack-top-frame") : h,
247
- R ? q(n(o)) : G
246
+ C ? Error("react-stack-top-frame") : p,
247
+ C ? A(n(o)) : X
248
248
  );
249
- }, xe.jsxs = function(o, T, w) {
250
- var R = 1e4 > x.recentlyCreatedOwnerStacks++;
251
- return A(
249
+ }, ve.jsxs = function(o, y, w) {
250
+ var C = 1e4 > T.recentlyCreatedOwnerStacks++;
251
+ return R(
252
252
  o,
253
- T,
253
+ y,
254
254
  w,
255
255
  !0,
256
- R ? Error("react-stack-top-frame") : h,
257
- R ? q(n(o)) : G
256
+ C ? Error("react-stack-top-frame") : p,
257
+ C ? A(n(o)) : X
258
258
  );
259
259
  };
260
- })()), xe;
260
+ })()), ve;
261
261
  }
262
- var He;
263
- function ur() {
264
- return He || (He = 1, process.env.NODE_ENV === "production" ? we.exports = cr() : we.exports = dr()), we.exports;
262
+ var Ye;
263
+ function mr() {
264
+ return Ye || (Ye = 1, process.env.NODE_ENV === "production" ? ke.exports = dr() : ke.exports = ur()), ke.exports;
265
265
  }
266
- var i = ur();
267
- const mr = ({
266
+ var i = mr();
267
+ const fr = ({
268
268
  onCommand: e,
269
269
  onSave: t,
270
270
  onExport: r,
271
271
  onClear: n,
272
- onImageUpload: s,
273
- showButtons: d = !1,
272
+ onImageUpload: a,
273
+ showButtons: c = !1,
274
274
  hasUnsavedChanges: l,
275
- pendingImagesCount: a = 0
275
+ pendingImagesCount: s = 0
276
276
  }) => {
277
- const [u, m] = Z([]), [A, L] = Z("p"), [M, D] = Z(!1), [S, U] = Z(!1), [z, V] = Z(!1), [B, k] = Z(!1), [N, Y] = Z(!1), [W, K] = Z(!1), [p, c] = Z("left"), y = ne(null), j = H(() => {
277
+ const [m, f] = ee([]), [R, L] = ee("p"), [M, q] = ee(!1), [S, F] = ee(!1), [z, H] = ee(!1), [$, k] = ee(!1), [N, V] = ee(!1), [G, J] = ee(!1), [x, P] = ee("left"), d = re(null), v = W(() => {
278
278
  if (typeof window > "u" || typeof document > "u") return;
279
- const P = window.getSelection();
280
- if (!P || P.rangeCount === 0 || P.isCollapsed)
279
+ const O = window.getSelection();
280
+ if (!O || O.rangeCount === 0 || O.isCollapsed)
281
281
  return;
282
- const ce = P.getRangeAt(0).commonAncestorContainer;
283
- D(document.queryCommandState("bold")), U(document.queryCommandState("italic")), V(document.queryCommandState("underline")), k(document.queryCommandState("strikeThrough")), Y(document.queryCommandState("insertUnorderedList")), K(document.queryCommandState("insertOrderedList")), document.queryCommandState("justifyLeft") ? c("left") : document.queryCommandState("justifyCenter") ? c("center") : document.queryCommandState("justifyRight") && c("right");
284
- let oe = ce, b = "p";
285
- for (; oe && oe !== document.body; ) {
286
- if (oe.nodeType === Node.ELEMENT_NODE) {
287
- const se = oe.tagName.toLowerCase();
288
- if (["h1", "h2", "h3", "h4", "h5", "h6", "p", "div", "blockquote", "pre"].includes(se)) {
289
- ["h1", "h2"].includes(se) && (b = se);
282
+ const de = O.getRangeAt(0).commonAncestorContainer;
283
+ q(document.queryCommandState("bold")), F(document.queryCommandState("italic")), H(document.queryCommandState("underline")), k(document.queryCommandState("strikeThrough")), V(document.queryCommandState("insertUnorderedList")), J(document.queryCommandState("insertOrderedList")), document.queryCommandState("justifyLeft") ? P("left") : document.queryCommandState("justifyCenter") ? P("center") : document.queryCommandState("justifyRight") && P("right");
284
+ let se = de, ie = "p";
285
+ for (; se && se !== document.body; ) {
286
+ if (se.nodeType === Node.ELEMENT_NODE) {
287
+ const ae = se.tagName.toLowerCase();
288
+ if (["h1", "h2", "h3", "h4", "h5", "h6", "p", "div", "blockquote", "pre"].includes(ae)) {
289
+ ["h1", "h2"].includes(ae) && (ie = ae);
290
290
  break;
291
291
  }
292
292
  }
293
- oe = oe.parentNode;
293
+ se = se.parentNode;
294
294
  }
295
- L(b);
296
- const F = [];
297
- M && F.push("bold"), S && F.push("italic"), z && F.push("underline"), B && F.push("strikeThrough"), N && F.push("insertUnorderedList"), W && F.push("insertOrderedList"), p === "left" && F.push("justifyLeft"), p === "center" && F.push("justifyCenter"), p === "right" && F.push("justifyRight"), (b === "h1" || b === "h2") && F.push(`formatBlock:${b}`), m(F);
298
- }, [M, S, z, B, N, W, p]);
295
+ L(ie);
296
+ const g = [];
297
+ M && g.push("bold"), S && g.push("italic"), z && g.push("underline"), $ && g.push("strikeThrough"), N && g.push("insertUnorderedList"), G && g.push("insertOrderedList"), x === "left" && g.push("justifyLeft"), x === "center" && g.push("justifyCenter"), x === "right" && g.push("justifyRight"), (ie === "h1" || ie === "h2") && g.push(`formatBlock:${ie}`), f(g);
298
+ }, [M, S, z, $, N, G, x]);
299
299
  me(() => {
300
- const P = () => {
301
- requestAnimationFrame(j);
300
+ const O = () => {
301
+ requestAnimationFrame(v);
302
302
  }, I = () => {
303
- setTimeout(j, 10);
304
- }, ce = () => {
305
- setTimeout(j, 10);
303
+ setTimeout(v, 10);
304
+ }, de = () => {
305
+ setTimeout(v, 10);
306
306
  };
307
- return document.addEventListener("selectionchange", P), document.addEventListener("mouseup", I), document.addEventListener("keyup", ce), j(), () => {
308
- document.removeEventListener("selectionchange", P), document.removeEventListener("mouseup", I), document.removeEventListener("keyup", ce);
307
+ return document.addEventListener("selectionchange", O), document.addEventListener("mouseup", I), document.addEventListener("keyup", de), v(), () => {
308
+ document.removeEventListener("selectionchange", O), document.removeEventListener("mouseup", I), document.removeEventListener("keyup", de);
309
309
  };
310
- }, [j]);
311
- const x = () => {
312
- const P = prompt("Enter URL:", "https://");
313
- P && e("createLink", P);
314
- }, v = () => {
315
- s();
316
- }, E = (P) => {
317
- e("formatBlock", P);
318
- }, q = () => {
310
+ }, [v]);
311
+ const T = () => {
312
+ const O = prompt("Enter URL:", "https://");
313
+ O && e("createLink", O);
314
+ }, u = () => {
315
+ a();
316
+ }, j = (O) => {
317
+ e("formatBlock", O);
318
+ }, A = () => {
319
319
  e("indent");
320
- }, O = () => {
320
+ }, D = () => {
321
321
  e("outdent");
322
- }, $ = () => {
322
+ }, U = () => {
323
323
  e("undo");
324
- }, h = () => {
324
+ }, p = () => {
325
325
  e("redo");
326
- }, G = () => {
326
+ }, X = () => {
327
327
  e("formatBlock", "pre");
328
- }, te = () => {
328
+ }, B = () => {
329
329
  e("formatBlock", "blockquote");
330
330
  }, o = () => {
331
331
  e("superscript");
332
- }, T = () => {
332
+ }, y = () => {
333
333
  e("subscript");
334
334
  }, w = [
335
335
  {
336
336
  id: "undo",
337
337
  command: "undo",
338
- icon: /* @__PURE__ */ i.jsx(Mt, { size: 18 }),
338
+ icon: /* @__PURE__ */ i.jsx(qt, { size: 18 }),
339
339
  title: "Undo",
340
- onClick: $
340
+ onClick: U
341
341
  },
342
342
  {
343
343
  id: "redo",
344
344
  command: "redo",
345
- icon: /* @__PURE__ */ i.jsx(qt, { size: 18 }),
345
+ icon: /* @__PURE__ */ i.jsx(Dt, { size: 18 }),
346
346
  title: "Redo",
347
- onClick: h
347
+ onClick: p
348
348
  },
349
349
  { id: "separator-1", separator: !0 },
350
350
  {
351
351
  id: "bold",
352
352
  command: "bold",
353
- icon: /* @__PURE__ */ i.jsx(Dt, { size: 18 }),
353
+ icon: /* @__PURE__ */ i.jsx(Ft, { size: 18 }),
354
354
  title: "Bold (Ctrl+B)",
355
355
  isActive: M
356
356
  },
357
357
  {
358
358
  id: "italic",
359
359
  command: "italic",
360
- icon: /* @__PURE__ */ i.jsx(Ft, { size: 18 }),
360
+ icon: /* @__PURE__ */ i.jsx(Ut, { size: 18 }),
361
361
  title: "Italic (Ctrl+I)",
362
362
  isActive: S
363
363
  },
364
364
  {
365
365
  id: "underline",
366
366
  command: "underline",
367
- icon: /* @__PURE__ */ i.jsx(Ut, { size: 18 }),
367
+ icon: /* @__PURE__ */ i.jsx($t, { size: 18 }),
368
368
  title: "Underline (Ctrl+U)",
369
369
  isActive: z
370
370
  },
371
371
  {
372
372
  id: "strikeThrough",
373
373
  command: "strikeThrough",
374
- icon: /* @__PURE__ */ i.jsx($t, { size: 18 }),
374
+ icon: /* @__PURE__ */ i.jsx(Bt, { size: 18 }),
375
375
  title: "Strikethrough",
376
- isActive: B
376
+ isActive: $
377
377
  },
378
378
  { id: "separator-2", separator: !0 },
379
379
  {
380
380
  id: "heading-1",
381
381
  command: "formatBlock",
382
382
  value: "h1",
383
- icon: /* @__PURE__ */ i.jsx(Bt, { size: 18 }),
383
+ icon: /* @__PURE__ */ i.jsx(Gt, { size: 18 }),
384
384
  title: "Heading 1",
385
- isActive: A === "h1"
385
+ isActive: R === "h1"
386
386
  },
387
387
  {
388
388
  id: "heading-2",
389
389
  command: "formatBlock",
390
390
  value: "h2",
391
- icon: /* @__PURE__ */ i.jsx(Gt, { size: 18 }),
391
+ icon: /* @__PURE__ */ i.jsx(Wt, { size: 18 }),
392
392
  title: "Heading 2",
393
- isActive: A === "h2"
393
+ isActive: R === "h2"
394
394
  },
395
395
  {
396
396
  id: "paragraph",
397
397
  command: "formatBlock",
398
398
  value: "p",
399
- icon: /* @__PURE__ */ i.jsx(Wt, { size: 18 }),
399
+ icon: /* @__PURE__ */ i.jsx(Ht, { size: 18 }),
400
400
  title: "Paragraph",
401
- isActive: A === "p"
401
+ isActive: R === "p"
402
402
  },
403
403
  {
404
404
  id: "code",
@@ -406,142 +406,142 @@ const mr = ({
406
406
  value: "pre",
407
407
  icon: /* @__PURE__ */ i.jsx(Vt, { size: 18 }),
408
408
  title: "Code Block",
409
- onClick: G
409
+ onClick: X
410
410
  },
411
411
  {
412
412
  id: "quote",
413
413
  command: "formatBlock",
414
414
  value: "blockquote",
415
- icon: /* @__PURE__ */ i.jsx(Ht, { size: 18 }),
415
+ icon: /* @__PURE__ */ i.jsx(Yt, { size: 18 }),
416
416
  title: "Blockquote",
417
- onClick: te
417
+ onClick: B
418
418
  },
419
419
  { id: "separator-3", separator: !0 },
420
420
  {
421
421
  id: "unordered-list",
422
422
  command: "insertUnorderedList",
423
- icon: /* @__PURE__ */ i.jsx(Yt, { size: 18 }),
423
+ icon: /* @__PURE__ */ i.jsx(Jt, { size: 18 }),
424
424
  title: "Bullet List",
425
425
  isActive: N
426
426
  },
427
427
  {
428
428
  id: "ordered-list",
429
429
  command: "insertOrderedList",
430
- icon: /* @__PURE__ */ i.jsx(Jt, { size: 18 }),
430
+ icon: /* @__PURE__ */ i.jsx(Kt, { size: 18 }),
431
431
  title: "Numbered List",
432
- isActive: W
432
+ isActive: G
433
433
  },
434
434
  {
435
435
  id: "indent",
436
436
  command: "indent",
437
- icon: /* @__PURE__ */ i.jsx(Kt, { size: 18 }),
437
+ icon: /* @__PURE__ */ i.jsx(Xt, { size: 18 }),
438
438
  title: "Indent",
439
- onClick: q
439
+ onClick: A
440
440
  },
441
441
  {
442
442
  id: "outdent",
443
443
  command: "outdent",
444
- icon: /* @__PURE__ */ i.jsx(Xt, { size: 18 }),
444
+ icon: /* @__PURE__ */ i.jsx(Qt, { size: 18 }),
445
445
  title: "Outdent",
446
- onClick: O
446
+ onClick: D
447
447
  },
448
448
  { id: "separator-4", separator: !0 },
449
449
  {
450
450
  id: "align-left",
451
451
  command: "justifyLeft",
452
- icon: /* @__PURE__ */ i.jsx(Qt, { size: 18 }),
452
+ icon: /* @__PURE__ */ i.jsx(Zt, { size: 18 }),
453
453
  title: "Align Left",
454
- isActive: p === "left"
454
+ isActive: x === "left"
455
455
  },
456
456
  {
457
457
  id: "align-center",
458
458
  command: "justifyCenter",
459
- icon: /* @__PURE__ */ i.jsx(Zt, { size: 18 }),
459
+ icon: /* @__PURE__ */ i.jsx(er, { size: 18 }),
460
460
  title: "Center",
461
- isActive: p === "center"
461
+ isActive: x === "center"
462
462
  },
463
463
  {
464
464
  id: "align-right",
465
465
  command: "justifyRight",
466
- icon: /* @__PURE__ */ i.jsx(er, { size: 18 }),
466
+ icon: /* @__PURE__ */ i.jsx(tr, { size: 18 }),
467
467
  title: "Align Right",
468
- isActive: p === "right"
468
+ isActive: x === "right"
469
469
  },
470
470
  { id: "separator-5", separator: !0 },
471
471
  {
472
472
  id: "superscript",
473
473
  command: "superscript",
474
- icon: /* @__PURE__ */ i.jsx(tr, { size: 18 }),
474
+ icon: /* @__PURE__ */ i.jsx(rr, { size: 18 }),
475
475
  title: "Superscript",
476
476
  onClick: o
477
477
  },
478
478
  {
479
479
  id: "subscript",
480
480
  command: "subscript",
481
- icon: /* @__PURE__ */ i.jsx(rr, { size: 18 }),
481
+ icon: /* @__PURE__ */ i.jsx(nr, { size: 18 }),
482
482
  title: "Subscript",
483
- onClick: T
483
+ onClick: y
484
484
  },
485
485
  {
486
486
  id: "link",
487
487
  command: "createLink",
488
- icon: /* @__PURE__ */ i.jsx(nr, { size: 18 }),
488
+ icon: /* @__PURE__ */ i.jsx(or, { size: 18 }),
489
489
  title: "Insert Link",
490
- onClick: x
490
+ onClick: T
491
491
  },
492
492
  {
493
493
  id: "image",
494
494
  command: "insertImage",
495
- icon: a > 0 ? /* @__PURE__ */ i.jsxs("div", { className: "relative", children: [
496
- /* @__PURE__ */ i.jsx(je, { size: 18 }),
497
- /* @__PURE__ */ i.jsx("span", { className: "absolute -top-2 -right-2 bg-blue-600 text-white text-xs rounded-full w-4 h-4 flex items-center justify-center", children: a })
498
- ] }) : /* @__PURE__ */ i.jsx(je, { size: 18 }),
495
+ icon: s > 0 ? /* @__PURE__ */ i.jsxs("div", { className: "relative", children: [
496
+ /* @__PURE__ */ i.jsx(Ce, { size: 18 }),
497
+ /* @__PURE__ */ i.jsx("span", { className: "absolute -top-2 -right-2 bg-blue-600 text-white text-xs rounded-full w-4 h-4 flex items-center justify-center", children: s })
498
+ ] }) : /* @__PURE__ */ i.jsx(Ce, { size: 18 }),
499
499
  title: "Insert Image",
500
- onClick: v
500
+ onClick: u
501
501
  }
502
- ], R = (P) => /* @__PURE__ */ i.jsx("div", { className: "flex items-center border-r border-gray-200 pr-2 mr-2 last:border-r-0 last:pr-0 last:mr-0", children: P.map((I) => {
502
+ ], C = (O) => /* @__PURE__ */ i.jsx("div", { className: "flex items-center border-r border-gray-200 pr-2 mr-2 last:border-r-0 last:pr-0 last:mr-0", children: O.map((I) => {
503
503
  if (I.separator)
504
504
  return /* @__PURE__ */ i.jsx("div", { className: "w-px h-6 bg-gray-300 mx-2" }, I.id);
505
- const ce = I.isActive !== void 0 ? I.isActive : I.command ? u.includes(I.command) || I.command === "formatBlock" && I.value === A : !1;
505
+ const de = I.isActive !== void 0 ? I.isActive : I.command ? m.includes(I.command) || I.command === "formatBlock" && I.value === R : !1;
506
506
  return /* @__PURE__ */ i.jsx(
507
507
  "button",
508
508
  {
509
- onClick: (oe) => {
510
- oe.preventDefault(), oe.stopPropagation(), I.onClick ? I.onClick() : I.command === "formatBlock" && I.value ? E(I.value) : I.command && e(I.command, I.value), setTimeout(() => {
511
- const b = document.querySelector('[contenteditable="true"]');
512
- b && b.focus();
509
+ onClick: (se) => {
510
+ se.preventDefault(), se.stopPropagation(), I.onClick ? I.onClick() : I.command === "formatBlock" && I.value ? j(I.value) : I.command && e(I.command, I.value), setTimeout(() => {
511
+ const ie = document.querySelector('[contenteditable="true"]');
512
+ ie && ie.focus();
513
513
  }, 10);
514
514
  },
515
515
  title: I.title,
516
516
  type: "button",
517
- className: `min-w-[36px] h-9 flex items-center justify-center rounded-md border transition-all duration-150 ${ce ? "bg-blue-100 text-blue-600 border-blue-300 hover:bg-blue-200 shadow-sm" : "bg-white border-gray-300 text-gray-700 hover:bg-gray-100 hover:border-gray-400"} active:scale-95 mx-0.5`,
517
+ className: `min-w-[36px] h-9 flex items-center justify-center rounded-md border transition-all duration-150 ${de ? "bg-blue-100 text-blue-600 border-blue-300 hover:bg-blue-200 shadow-sm" : "bg-white border-gray-300 text-gray-700 hover:bg-gray-100 hover:border-gray-400"} active:scale-95 mx-0.5`,
518
518
  disabled: I.disabled,
519
519
  children: I.icon
520
520
  },
521
521
  I.id
522
522
  );
523
- }) }), X = w.slice(0, 3), ae = w.slice(3, 10), C = w.slice(10, 16), Q = w.slice(16, 20), ee = w.slice(20, 24), re = w.slice(24, 28), ie = w.slice(28);
523
+ }) }), Z = w.slice(0, 3), ne = w.slice(3, 10), E = w.slice(10, 16), Q = w.slice(16, 20), te = w.slice(20, 24), oe = w.slice(24, 28), le = w.slice(28);
524
524
  return /* @__PURE__ */ i.jsxs(
525
525
  "div",
526
526
  {
527
- ref: y,
527
+ ref: d,
528
528
  className: "flex flex-col sm:flex-row flex-wrap items-start sm:items-center justify-between p-3 bg-gray-50 border-b border-gray-200 gap-2",
529
529
  children: [
530
530
  /* @__PURE__ */ i.jsxs("div", { className: "flex flex-wrap items-center gap-1 order-1 w-full sm:w-auto", children: [
531
- R(X),
532
- R(ae),
533
- R(C),
534
- R(Q),
535
- R(ee),
536
- R(re),
537
- R(ie)
531
+ C(Z),
532
+ C(ne),
533
+ C(E),
534
+ C(Q),
535
+ C(te),
536
+ C(oe),
537
+ C(le)
538
538
  ] }),
539
- d && /* @__PURE__ */ i.jsxs("div", { className: "flex items-center gap-2 order-2 sm:order-3 mt-2 sm:mt-0 flex-shrink-0", children: [
539
+ c && /* @__PURE__ */ i.jsxs("div", { className: "flex items-center gap-2 order-2 sm:order-3 mt-2 sm:mt-0 flex-shrink-0", children: [
540
540
  /* @__PURE__ */ i.jsxs(
541
541
  "button",
542
542
  {
543
- onClick: (P) => {
544
- P.preventDefault(), P.stopPropagation(), t(), setTimeout(() => {
543
+ onClick: (O) => {
544
+ O.preventDefault(), O.stopPropagation(), t(), setTimeout(() => {
545
545
  const I = document.querySelector('[contenteditable="true"]');
546
546
  I && I.focus();
547
547
  }, 10);
@@ -550,7 +550,7 @@ const mr = ({
550
550
  title: "Save Document (Ctrl+S)",
551
551
  className: "flex items-center gap-2 px-4 py-2 bg-blue-600 text-white text-sm font-medium rounded-md hover:bg-blue-700 disabled:bg-blue-300 disabled:cursor-not-allowed transition-colors duration-200 active:scale-95",
552
552
  children: [
553
- /* @__PURE__ */ i.jsx(ft, { size: 16 }),
553
+ /* @__PURE__ */ i.jsx(gt, { size: 16 }),
554
554
  /* @__PURE__ */ i.jsx("span", { className: "hidden sm:inline", children: "Save" })
555
555
  ]
556
556
  }
@@ -558,8 +558,8 @@ const mr = ({
558
558
  /* @__PURE__ */ i.jsxs(
559
559
  "button",
560
560
  {
561
- onClick: (P) => {
562
- P.preventDefault(), P.stopPropagation(), r(), setTimeout(() => {
561
+ onClick: (O) => {
562
+ O.preventDefault(), O.stopPropagation(), r(), setTimeout(() => {
563
563
  const I = document.querySelector('[contenteditable="true"]');
564
564
  I && I.focus();
565
565
  }, 10);
@@ -567,7 +567,7 @@ const mr = ({
567
567
  title: "Export as HTML",
568
568
  className: "flex items-center gap-2 px-4 py-2 bg-green-600 text-white text-sm font-medium rounded-md hover:bg-green-700 transition-colors duration-200 active:scale-95",
569
569
  children: [
570
- /* @__PURE__ */ i.jsx(Ot, { size: 16 }),
570
+ /* @__PURE__ */ i.jsx(Pt, { size: 16 }),
571
571
  /* @__PURE__ */ i.jsx("span", { className: "hidden sm:inline", children: "Export" })
572
572
  ]
573
573
  }
@@ -575,8 +575,8 @@ const mr = ({
575
575
  /* @__PURE__ */ i.jsxs(
576
576
  "button",
577
577
  {
578
- onClick: (P) => {
579
- P.preventDefault(), P.stopPropagation(), n(), setTimeout(() => {
578
+ onClick: (O) => {
579
+ O.preventDefault(), O.stopPropagation(), n(), setTimeout(() => {
580
580
  const I = document.querySelector('[contenteditable="true"]');
581
581
  I && I.focus();
582
582
  }, 10);
@@ -584,17 +584,17 @@ const mr = ({
584
584
  title: "Clear Editor",
585
585
  className: "flex items-center gap-2 px-4 py-2 bg-red-600 text-white text-sm font-medium rounded-md hover:bg-red-700 transition-colors duration-200 active:scale-95",
586
586
  children: [
587
- /* @__PURE__ */ i.jsx(Pt, { size: 16 }),
587
+ /* @__PURE__ */ i.jsx(Mt, { size: 16 }),
588
588
  /* @__PURE__ */ i.jsx("span", { className: "hidden sm:inline", children: "Clear" })
589
589
  ]
590
590
  }
591
591
  )
592
592
  ] }),
593
593
  /* @__PURE__ */ i.jsxs("div", { className: "flex items-center gap-3 text-sm text-gray-500 order-3 sm:order-2 mt-2 sm:mt-0 flex-shrink-0", children: [
594
- a > 0 && /* @__PURE__ */ i.jsxs("span", { className: "flex items-center gap-1", children: [
595
- /* @__PURE__ */ i.jsx(je, { size: 14 }),
594
+ s > 0 && /* @__PURE__ */ i.jsxs("span", { className: "flex items-center gap-1", children: [
595
+ /* @__PURE__ */ i.jsx(Ce, { size: 14 }),
596
596
  /* @__PURE__ */ i.jsxs("span", { children: [
597
- a,
597
+ s,
598
598
  " pending"
599
599
  ] })
600
600
  ] }),
@@ -606,7 +606,7 @@ const mr = ({
606
606
  ]
607
607
  }
608
608
  );
609
- }, fr = ({
609
+ }, gr = ({
610
610
  wordCount: e,
611
611
  characterCount: t,
612
612
  hasUnsavedChanges: r,
@@ -622,7 +622,7 @@ const mr = ({
622
622
  /* @__PURE__ */ i.jsx("strong", { className: "text-gray-800", children: t })
623
623
  ] }),
624
624
  n > 0 && /* @__PURE__ */ i.jsxs("div", { className: "flex items-center gap-1", children: [
625
- /* @__PURE__ */ i.jsx(je, { size: 14, className: "text-blue-600" }),
625
+ /* @__PURE__ */ i.jsx(Ce, { size: 14, className: "text-blue-600" }),
626
626
  /* @__PURE__ */ i.jsxs("span", { className: "text-blue-600", children: [
627
627
  n,
628
628
  " image",
@@ -631,260 +631,260 @@ const mr = ({
631
631
  ] })
632
632
  ] }),
633
633
  /* @__PURE__ */ i.jsx("div", { className: "flex items-center gap-2", children: /* @__PURE__ */ i.jsxs("div", { className: `flex items-center gap-1 ${r ? "text-orange-600" : "text-green-600"}`, children: [
634
- r && /* @__PURE__ */ i.jsx(ft, { size: 14, className: "animate-pulse" }),
634
+ r && /* @__PURE__ */ i.jsx(gt, { size: 14, className: "animate-pulse" }),
635
635
  /* @__PURE__ */ i.jsx("strong", { children: r ? "Unsaved Changes" : "Saved" })
636
636
  ] }) })
637
- ] }), gr = ({
637
+ ] }), pr = ({
638
638
  initialContent: e = "",
639
639
  onImageUpload: t,
640
640
  imageUploadEndpoint: r,
641
641
  allowedImageTypes: n = ["image/jpeg", "image/png", "image/gif", "image/webp"],
642
- maxImageSize: s = 5 * 1024 * 1024
642
+ maxImageSize: a = 5 * 1024 * 1024
643
643
  }) => {
644
- const [d, l] = Z({
644
+ const [c, l] = ee({
645
645
  content: e,
646
646
  title: "Untitled Document",
647
647
  wordCount: e.trim() ? e.trim().split(/\s+/).length : 0,
648
648
  characterCount: e.length,
649
649
  hasUnsavedChanges: !1,
650
650
  pendingImages: []
651
- }), a = ne(null), u = ne(/* @__PURE__ */ new Map()), m = ne(e), A = ne(!0), L = H(() => {
652
- if (!a.current) return;
653
- a.current.focus();
654
- const c = window.getSelection();
655
- if (c && c.rangeCount > 0) {
656
- const x = c.getRangeAt(0);
657
- if (a.current.contains(x.commonAncestorContainer))
651
+ }), s = re(null), m = re(/* @__PURE__ */ new Map()), f = re(e), R = re(!0), L = W(() => {
652
+ if (!s.current) return;
653
+ s.current.focus();
654
+ const d = window.getSelection();
655
+ if (d && d.rangeCount > 0) {
656
+ const u = d.getRangeAt(0);
657
+ if (s.current.contains(u.commonAncestorContainer))
658
658
  return;
659
659
  }
660
- const y = document.createRange();
661
- y.selectNodeContents(a.current), y.collapse(!1);
662
- const j = window.getSelection();
663
- j?.removeAllRanges(), j?.addRange(y);
664
- }, []), M = H(() => {
665
- const c = window.getSelection();
666
- if (!c || c.rangeCount === 0 || !a.current) return null;
667
- const y = c.getRangeAt(0);
668
- return a.current.contains(y.commonAncestorContainer) ? y.cloneRange() : null;
669
- }, []), D = H((c) => {
670
- if (!c || !a.current) return;
671
- a.current.focus();
672
- const y = window.getSelection();
673
- y?.removeAllRanges(), y?.addRange(c);
660
+ const v = document.createRange();
661
+ v.selectNodeContents(s.current), v.collapse(!1);
662
+ const T = window.getSelection();
663
+ T?.removeAllRanges(), T?.addRange(v);
664
+ }, []), M = W(() => {
665
+ const d = window.getSelection();
666
+ if (!d || d.rangeCount === 0 || !s.current) return null;
667
+ const v = d.getRangeAt(0);
668
+ return s.current.contains(v.commonAncestorContainer) ? v.cloneRange() : null;
669
+ }, []), q = W((d) => {
670
+ if (!d || !s.current) return;
671
+ s.current.focus();
672
+ const v = window.getSelection();
673
+ v?.removeAllRanges(), v?.addRange(d);
674
674
  }, []);
675
675
  me(() => {
676
- a.current && A.current && (a.current.innerHTML = e || "", A.current = !1);
676
+ s.current && R.current && (s.current.innerHTML = e || "", R.current = !1);
677
677
  }, [e]), me(() => {
678
- e !== m.current && a.current && (a.current.innerHTML !== e && (a.current.innerHTML = e), m.current = e, l((c) => ({
679
- ...c,
678
+ e !== f.current && s.current && (s.current.innerHTML !== e && (s.current.innerHTML = e), f.current = e, l((d) => ({
679
+ ...d,
680
680
  content: e,
681
681
  wordCount: e.trim() ? e.trim().split(/\s+/).length : 0,
682
682
  characterCount: e.length,
683
683
  hasUnsavedChanges: !1
684
684
  })));
685
685
  }, [e]);
686
- const S = H((c) => {
687
- const y = c.trim() ? c.trim().split(/\s+/).length : 0, j = c.length;
688
- l((x) => ({
689
- ...x,
690
- content: c,
691
- wordCount: y,
692
- characterCount: j,
686
+ const S = W((d) => {
687
+ const v = d.trim() ? d.trim().split(/\s+/).length : 0, T = d.length;
688
+ l((u) => ({
689
+ ...u,
690
+ content: d,
691
+ wordCount: v,
692
+ characterCount: T,
693
693
  hasUnsavedChanges: !0
694
- })), m.current = c;
695
- }, []), U = H((c) => {
696
- l((y) => ({
697
- ...y,
698
- title: c,
694
+ })), f.current = d;
695
+ }, []), F = W((d) => {
696
+ l((v) => ({
697
+ ...v,
698
+ title: d,
699
699
  hasUnsavedChanges: !0
700
700
  }));
701
- }, []), z = H((c, y) => {
702
- if (!a.current) return;
703
- const j = M();
704
- if (a.current.focus(), j)
705
- D(j);
701
+ }, []), z = W((d, v) => {
702
+ if (!s.current) return;
703
+ const T = M();
704
+ if (s.current.focus(), T)
705
+ q(T);
706
706
  else {
707
- const x = window.getSelection();
708
- if (!x || x.rangeCount === 0) {
709
- const v = document.createRange();
710
- v.selectNodeContents(a.current), v.collapse(!1), x?.removeAllRanges(), x?.addRange(v);
707
+ const u = window.getSelection();
708
+ if (!u || u.rangeCount === 0) {
709
+ const j = document.createRange();
710
+ j.selectNodeContents(s.current), j.collapse(!1), u?.removeAllRanges(), u?.addRange(j);
711
711
  }
712
712
  }
713
713
  try {
714
- let x = !1;
715
- if (c === "formatBlock" && y)
716
- x = document.execCommand("formatBlock", !1, `<${y}>`);
717
- else if (c === "createLink" && y) {
718
- const v = window.getSelection();
719
- v && !v.isCollapsed ? x = document.execCommand("createLink", !1, y) : (document.execCommand("insertHTML", !1, `<a href="${y}" target="_blank">${y}</a>`), x = !0);
714
+ let u = !1;
715
+ if (d === "formatBlock" && v)
716
+ u = document.execCommand("formatBlock", !1, `<${v}>`);
717
+ else if (d === "createLink" && v) {
718
+ const j = window.getSelection();
719
+ j && !j.isCollapsed ? u = document.execCommand("createLink", !1, v) : (document.execCommand("insertHTML", !1, `<a href="${v}" target="_blank">${v}</a>`), u = !0);
720
720
  } else
721
- x = document.execCommand(c, !1, y);
722
- x || console.warn(`Command ${c} failed to execute`), setTimeout(() => {
723
- a.current && S(a.current.innerHTML);
721
+ u = document.execCommand(d, !1, v);
722
+ u || console.warn(`Command ${d} failed to execute`), setTimeout(() => {
723
+ s.current && S(s.current.innerHTML);
724
724
  }, 0);
725
- } catch (x) {
726
- console.error(`Command ${c} failed:`, x);
725
+ } catch (u) {
726
+ console.error(`Command ${d} failed:`, u);
727
727
  }
728
- a.current.focus();
729
- }, [S, M, D]), V = H((c) => n.includes(c.type) ? c.size > s ? {
728
+ s.current.focus();
729
+ }, [S, M, q]), H = W((d) => n.includes(d.type) ? d.size > a ? {
730
730
  valid: !1,
731
- error: `File too large. Maximum size: ${Math.round(s / (1024 * 1024))}MB`
731
+ error: `File too large. Maximum size: ${Math.round(a / (1024 * 1024))}MB`
732
732
  } : { valid: !0 } : {
733
733
  valid: !1,
734
734
  error: `Invalid file type. Allowed types: ${n.join(", ")}`
735
- }, [n, s]), B = H(async (c, y = !0) => {
736
- const j = V(c);
737
- if (!j.valid) {
738
- alert(j.error);
735
+ }, [n, a]), $ = W(async (d, v = !0) => {
736
+ const T = H(d);
737
+ if (!T.valid) {
738
+ alert(T.error);
739
739
  return;
740
740
  }
741
- if (!a.current) return;
742
- const x = `image-${Date.now()}-${Math.random().toString(36).substr(2, 9)}`, v = new FileReader();
743
- v.onload = (E) => {
744
- const q = E.target?.result;
745
- u.current.set(x, {
746
- originalUrl: q,
747
- fileName: c.name,
748
- size: c.size,
749
- type: c.type
741
+ if (!s.current) return;
742
+ const u = `image-${Date.now()}-${Math.random().toString(36).substr(2, 9)}`, j = new FileReader();
743
+ j.onload = (A) => {
744
+ const D = A.target?.result;
745
+ m.current.set(u, {
746
+ originalUrl: D,
747
+ fileName: d.name,
748
+ size: d.size,
749
+ type: d.type
750
750
  });
751
- const O = document.createElement("img");
752
- O.src = q, O.alt = c.name, O.className = "max-w-full h-auto border rounded", O.setAttribute("data-image-id", x), O.setAttribute("data-file-name", c.name), O.style.maxWidth = "100%", O.style.height = "auto";
753
- const $ = M();
754
- if (y && $) {
755
- $.deleteContents(), $.insertNode(O);
756
- const h = document.createRange();
757
- h.setStartAfter(O), h.collapse(!0);
758
- const G = window.getSelection();
759
- G?.removeAllRanges(), G?.addRange(h);
751
+ const U = document.createElement("img");
752
+ U.src = D, U.alt = d.name, U.className = "max-w-full h-auto border rounded", U.setAttribute("data-image-id", u), U.setAttribute("data-file-name", d.name), U.style.maxWidth = "100%", U.style.height = "auto";
753
+ const p = M();
754
+ if (v && p) {
755
+ p.deleteContents(), p.insertNode(U);
756
+ const X = document.createRange();
757
+ X.setStartAfter(U), X.collapse(!0);
758
+ const B = window.getSelection();
759
+ B?.removeAllRanges(), B?.addRange(X);
760
760
  } else
761
- a.current?.appendChild(O);
762
- a.current && S(a?.current?.innerHTML), (t || r) && l((h) => ({
763
- ...h,
761
+ s.current?.appendChild(U);
762
+ s.current && S(s?.current?.innerHTML), (t || r) && l((X) => ({
763
+ ...X,
764
764
  pendingImages: [
765
- ...h.pendingImages,
765
+ ...X.pendingImages,
766
766
  {
767
- id: x,
768
- file: c,
769
- placeholderUrl: q,
767
+ id: u,
768
+ file: d,
769
+ placeholderUrl: D,
770
770
  status: "pending"
771
771
  }
772
772
  ]
773
- })), a.current?.focus();
774
- }, v.readAsDataURL(c);
775
- }, [V, S, t, r, M]), k = H(async () => {
773
+ })), s.current?.focus();
774
+ }, j.readAsDataURL(d);
775
+ }, [H, S, t, r, M]), k = W(async () => {
776
776
  if (!t && !r)
777
777
  return;
778
- const c = d.pendingImages.filter((y) => y.status === "pending");
779
- if (c.length !== 0) {
780
- for (const y of c)
778
+ const d = c.pendingImages.filter((v) => v.status === "pending");
779
+ if (d.length !== 0) {
780
+ for (const v of d)
781
781
  try {
782
- l((v) => ({
783
- ...v,
784
- pendingImages: v.pendingImages.map(
785
- (E) => E.id === y.id ? { ...E, status: "uploading" } : E
782
+ l((j) => ({
783
+ ...j,
784
+ pendingImages: j.pendingImages.map(
785
+ (A) => A.id === v.id ? { ...A, status: "uploading" } : A
786
786
  )
787
787
  }));
788
- let j;
788
+ let T;
789
789
  if (t)
790
- j = await t(y.file);
790
+ T = await t(v.file);
791
791
  else if (r) {
792
- const v = new FormData();
793
- v.append("image", y.file);
794
- const E = await fetch(r, {
792
+ const j = new FormData();
793
+ j.append("image", v.file);
794
+ const A = await fetch(r, {
795
795
  method: "POST",
796
- body: v
796
+ body: j
797
797
  });
798
- if (!E.ok)
799
- throw new Error(`Upload failed: ${E.statusText}`);
800
- const q = await E.json();
801
- j = q.url || q.imageUrl || q.data;
798
+ if (!A.ok)
799
+ throw new Error(`Upload failed: ${A.statusText}`);
800
+ const D = await A.json();
801
+ T = D.url || D.imageUrl || D.data;
802
802
  } else
803
803
  throw new Error("No upload method provided");
804
- const x = a.current?.querySelector(`img[data-image-id="${y.id}"]`);
805
- if (x) {
806
- x.src = j, x.classList.add("uploaded");
807
- const v = u.current.get(y.id);
808
- v && u.current.set(y.id, {
809
- ...v,
810
- uploadedUrl: j
804
+ const u = s.current?.querySelector(`img[data-image-id="${v.id}"]`);
805
+ if (u) {
806
+ u.src = T, u.classList.add("uploaded");
807
+ const j = m.current.get(v.id);
808
+ j && m.current.set(v.id, {
809
+ ...j,
810
+ uploadedUrl: T
811
811
  });
812
812
  }
813
- l((v) => ({
814
- ...v,
815
- pendingImages: v.pendingImages.map(
816
- (E) => E.id === y.id ? { ...E, status: "uploaded" } : E
813
+ l((j) => ({
814
+ ...j,
815
+ pendingImages: j.pendingImages.map(
816
+ (A) => A.id === v.id ? { ...A, status: "uploaded" } : A
817
817
  )
818
818
  }));
819
- } catch (j) {
820
- console.error("Image upload failed:", j);
821
- const x = a.current?.querySelector(`img[data-image-id="${y.id}"]`);
822
- x && x.classList.add("failed"), l((v) => ({
823
- ...v,
824
- pendingImages: v.pendingImages.map(
825
- (E) => E.id === y.id ? { ...E, status: "failed" } : E
819
+ } catch (T) {
820
+ console.error("Image upload failed:", T);
821
+ const u = s.current?.querySelector(`img[data-image-id="${v.id}"]`);
822
+ u && u.classList.add("failed"), l((j) => ({
823
+ ...j,
824
+ pendingImages: j.pendingImages.map(
825
+ (A) => A.id === v.id ? { ...A, status: "failed" } : A
826
826
  )
827
827
  }));
828
828
  }
829
- a.current && S(a.current.innerHTML);
829
+ s.current && S(s.current.innerHTML);
830
830
  }
831
- }, [d.pendingImages, t, r, S]), N = H((c) => {
832
- const y = c.clipboardData.items;
833
- let j = !1;
834
- for (const x of y)
835
- if (x.type.indexOf("image") !== -1) {
836
- c.preventDefault();
837
- const v = x.getAsFile();
838
- v && (j = !0, B(v));
831
+ }, [c.pendingImages, t, r, S]), N = W((d) => {
832
+ const v = d.clipboardData.items;
833
+ let T = !1;
834
+ for (const u of v)
835
+ if (u.type.indexOf("image") !== -1) {
836
+ d.preventDefault();
837
+ const j = u.getAsFile();
838
+ j && (T = !0, $(j));
839
839
  break;
840
840
  }
841
- j || setTimeout(() => {
842
- a.current && S(a.current.innerHTML);
841
+ T || setTimeout(() => {
842
+ s.current && S(s.current.innerHTML);
843
843
  }, 0);
844
- }, [B, S]), Y = H((c) => {
845
- c.preventDefault();
846
- const y = Array.from(c.dataTransfer.files);
847
- let j = !1;
848
- for (const x of y)
849
- x.type.startsWith("image/") && (j = !0, B(x, !1));
850
- if (!j && a.current) {
851
- const x = window.getSelection();
852
- if (x && x.rangeCount > 0) {
853
- const v = x.getRangeAt(0);
854
- a.current.contains(v.commonAncestorContainer) && setTimeout(() => {
855
- a.current && S(a.current.innerHTML);
844
+ }, [$, S]), V = W((d) => {
845
+ d.preventDefault();
846
+ const v = Array.from(d.dataTransfer.files);
847
+ let T = !1;
848
+ for (const u of v)
849
+ u.type.startsWith("image/") && (T = !0, $(u, !1));
850
+ if (!T && s.current) {
851
+ const u = window.getSelection();
852
+ if (u && u.rangeCount > 0) {
853
+ const j = u.getRangeAt(0);
854
+ s.current.contains(j.commonAncestorContainer) && setTimeout(() => {
855
+ s.current && S(s.current.innerHTML);
856
856
  }, 0);
857
857
  }
858
858
  }
859
- }, [B, S]), W = H(() => {
859
+ }, [$, S]), G = W(() => {
860
860
  try {
861
- const c = a.current?.innerHTML || d.content;
861
+ const d = s.current?.innerHTML || c.content;
862
862
  return { success: !0, data: {
863
- title: d.title,
864
- content: c,
863
+ title: c.title,
864
+ content: d,
865
865
  metadata: {
866
866
  createdAt: (/* @__PURE__ */ new Date()).toISOString(),
867
867
  updatedAt: (/* @__PURE__ */ new Date()).toISOString(),
868
- wordCount: d.wordCount,
869
- characterCount: d.characterCount
868
+ wordCount: c.wordCount,
869
+ characterCount: c.characterCount
870
870
  }
871
871
  } };
872
- } catch (c) {
873
- return { success: !1, error: c instanceof Error ? c.message : "Validation failed" };
872
+ } catch (d) {
873
+ return { success: !1, error: d instanceof Error ? d.message : "Validation failed" };
874
874
  }
875
- }, [d]), K = H(
876
- (c = { includeStyles: !0, includeMeta: !0 }) => {
877
- const y = W();
878
- if (!y.success)
879
- throw new Error(y.error);
880
- const { data: j } = y;
881
- let x = `<!DOCTYPE html>
875
+ }, [c]), J = W(
876
+ (d = { includeStyles: !0, includeMeta: !0 }) => {
877
+ const v = G();
878
+ if (!v.success)
879
+ throw new Error(v.error);
880
+ const { data: T } = v;
881
+ let u = `<!DOCTYPE html>
882
882
  <html>
883
883
  <head>
884
884
  <meta charset="UTF-8">
885
885
  <meta name="viewport" content="width=device-width, initial-scale=1.0">
886
- <title>${j?.title || "Document"}</title>`;
887
- return c.includeStyles && (x += `
886
+ <title>${T?.title || "Document"}</title>`;
887
+ return d.includeStyles && (u += `
888
888
  <style>
889
889
  body {
890
890
  font-family: system-ui, -apple-system, sans-serif;
@@ -919,24 +919,24 @@ const mr = ({
919
919
  a { color: #2563eb; text-decoration: underline; }
920
920
  .image-uploading { opacity: 0.7; }
921
921
  .image-failed { border: 2px solid #ef4444; }
922
- </style>`), x += `
922
+ </style>`), u += `
923
923
  </head>
924
- <body>`, c.includeMeta && j && (x += `
924
+ <body>`, d.includeMeta && T && (u += `
925
925
  <div class="document-meta">
926
- <h1>${j.title}</h1>
927
- <p><small>Created: ${new Date(j.metadata.createdAt).toLocaleString()} |
928
- Words: ${j.metadata.wordCount} |
929
- Characters: ${j.metadata.characterCount}</small></p>
926
+ <h1>${T.title}</h1>
927
+ <p><small>Created: ${new Date(T.metadata.createdAt).toLocaleString()} |
928
+ Words: ${T.metadata.wordCount} |
929
+ Characters: ${T.metadata.characterCount}</small></p>
930
930
  <hr>
931
- </div>`), x += `
932
- <div class="${c.includeStyles ? "readonly-content" : ""}">
933
- ${j?.content || ""}
931
+ </div>`), u += `
932
+ <div class="${d.includeStyles ? "readonly-content" : ""}">
933
+ ${T?.content || ""}
934
934
  </div>
935
935
  </body>
936
- </html>`, x;
936
+ </html>`, u;
937
937
  },
938
- [W]
939
- ), p = H(() => {
938
+ [G]
939
+ ), x = W(() => {
940
940
  l({
941
941
  content: "",
942
942
  title: "Untitled Document",
@@ -944,130 +944,133 @@ const mr = ({
944
944
  characterCount: 0,
945
945
  hasUnsavedChanges: !1,
946
946
  pendingImages: []
947
- }), u.current.clear(), a.current && (a.current.innerHTML = "", L()), m.current = "";
948
- }, [L]);
947
+ }), m.current.clear(), s.current && (s.current.innerHTML = "", L()), f.current = "";
948
+ }, [L]), P = W((d) => {
949
+ s.current && (s.current.innerHTML = d || "", S(d || ""), f.current = d || "");
950
+ }, [S]);
949
951
  return {
950
- editorState: d,
951
- editorRef: a,
952
+ editorState: c,
953
+ editorRef: s,
952
954
  updateContent: S,
953
- updateTitle: U,
955
+ updateTitle: F,
954
956
  executeCommand: z,
955
- getValidationResult: W,
956
- exportToHTML: K,
957
- clearEditor: p,
957
+ getValidationResult: G,
958
+ exportToHTML: J,
959
+ clearEditor: x,
960
+ setHTML: P,
958
961
  handlePaste: N,
959
- handleDrop: Y,
960
- insertImage: B,
962
+ handleDrop: V,
963
+ insertImage: $,
961
964
  uploadPendingImages: k
962
965
  };
963
- }, pr = (e, t) => {
966
+ }, br = (e, t) => {
964
967
  const r = new Array(e.length + t.length);
965
968
  for (let n = 0; n < e.length; n++)
966
969
  r[n] = e[n];
967
970
  for (let n = 0; n < t.length; n++)
968
971
  r[e.length + n] = t[n];
969
972
  return r;
970
- }, br = (e, t) => ({
973
+ }, hr = (e, t) => ({
971
974
  classGroupId: e,
972
975
  validator: t
973
- }), gt = (e = /* @__PURE__ */ new Map(), t = null, r) => ({
976
+ }), pt = (e = /* @__PURE__ */ new Map(), t = null, r) => ({
974
977
  nextPart: e,
975
978
  validators: t,
976
979
  classGroupId: r
977
- }), Ce = "-", Ye = [], hr = "arbitrary..", xr = (e) => {
978
- const t = yr(e), {
980
+ }), Se = "-", Je = [], xr = "arbitrary..", vr = (e) => {
981
+ const t = wr(e), {
979
982
  conflictingClassGroups: r,
980
983
  conflictingClassGroupModifiers: n
981
984
  } = e;
982
985
  return {
983
986
  getClassGroupId: (l) => {
984
987
  if (l.startsWith("[") && l.endsWith("]"))
985
- return vr(l);
986
- const a = l.split(Ce), u = a[0] === "" && a.length > 1 ? 1 : 0;
987
- return pt(a, u, t);
988
+ return yr(l);
989
+ const s = l.split(Se), m = s[0] === "" && s.length > 1 ? 1 : 0;
990
+ return bt(s, m, t);
988
991
  },
989
- getConflictingClassGroupIds: (l, a) => {
990
- if (a) {
991
- const u = n[l], m = r[l];
992
- return u ? m ? pr(m, u) : u : m || Ye;
992
+ getConflictingClassGroupIds: (l, s) => {
993
+ if (s) {
994
+ const m = n[l], f = r[l];
995
+ return m ? f ? br(f, m) : m : f || Je;
993
996
  }
994
- return r[l] || Ye;
997
+ return r[l] || Je;
995
998
  }
996
999
  };
997
- }, pt = (e, t, r) => {
1000
+ }, bt = (e, t, r) => {
998
1001
  if (e.length - t === 0)
999
1002
  return r.classGroupId;
1000
- const s = e[t], d = r.nextPart.get(s);
1001
- if (d) {
1002
- const m = pt(e, t + 1, d);
1003
- if (m) return m;
1003
+ const a = e[t], c = r.nextPart.get(a);
1004
+ if (c) {
1005
+ const f = bt(e, t + 1, c);
1006
+ if (f) return f;
1004
1007
  }
1005
1008
  const l = r.validators;
1006
1009
  if (l === null)
1007
1010
  return;
1008
- const a = t === 0 ? e.join(Ce) : e.slice(t).join(Ce), u = l.length;
1009
- for (let m = 0; m < u; m++) {
1010
- const A = l[m];
1011
- if (A.validator(a))
1012
- return A.classGroupId;
1011
+ const s = t === 0 ? e.join(Se) : e.slice(t).join(Se), m = l.length;
1012
+ for (let f = 0; f < m; f++) {
1013
+ const R = l[f];
1014
+ if (R.validator(s))
1015
+ return R.classGroupId;
1013
1016
  }
1014
- }, vr = (e) => e.slice(1, -1).indexOf(":") === -1 ? void 0 : (() => {
1017
+ }, yr = (e) => e.slice(1, -1).indexOf(":") === -1 ? void 0 : (() => {
1015
1018
  const t = e.slice(1, -1), r = t.indexOf(":"), n = t.slice(0, r);
1016
- return n ? hr + n : void 0;
1017
- })(), yr = (e) => {
1019
+ return n ? xr + n : void 0;
1020
+ })(), wr = (e) => {
1018
1021
  const {
1019
1022
  theme: t,
1020
1023
  classGroups: r
1021
1024
  } = e;
1022
- return wr(r, t);
1023
- }, wr = (e, t) => {
1024
- const r = gt();
1025
+ return kr(r, t);
1026
+ }, kr = (e, t) => {
1027
+ const r = pt();
1025
1028
  for (const n in e) {
1026
- const s = e[n];
1027
- Ge(s, r, n, t);
1029
+ const a = e[n];
1030
+ We(a, r, n, t);
1028
1031
  }
1029
1032
  return r;
1030
- }, Ge = (e, t, r, n) => {
1031
- const s = e.length;
1032
- for (let d = 0; d < s; d++) {
1033
- const l = e[d];
1034
- kr(l, t, r, n);
1033
+ }, We = (e, t, r, n) => {
1034
+ const a = e.length;
1035
+ for (let c = 0; c < a; c++) {
1036
+ const l = e[c];
1037
+ Tr(l, t, r, n);
1035
1038
  }
1036
- }, kr = (e, t, r, n) => {
1039
+ }, Tr = (e, t, r, n) => {
1037
1040
  if (typeof e == "string") {
1038
- Tr(e, t, r);
1041
+ jr(e, t, r);
1039
1042
  return;
1040
1043
  }
1041
1044
  if (typeof e == "function") {
1042
- jr(e, t, r, n);
1045
+ Cr(e, t, r, n);
1043
1046
  return;
1044
1047
  }
1045
- Cr(e, t, r, n);
1046
- }, Tr = (e, t, r) => {
1047
- const n = e === "" ? t : bt(t, e);
1048
+ Sr(e, t, r, n);
1049
+ }, jr = (e, t, r) => {
1050
+ const n = e === "" ? t : ht(t, e);
1048
1051
  n.classGroupId = r;
1049
- }, jr = (e, t, r, n) => {
1050
- if (Sr(e)) {
1051
- Ge(e(n), t, r, n);
1052
+ }, Cr = (e, t, r, n) => {
1053
+ if (Rr(e)) {
1054
+ We(e(n), t, r, n);
1052
1055
  return;
1053
1056
  }
1054
- t.validators === null && (t.validators = []), t.validators.push(br(r, e));
1055
- }, Cr = (e, t, r, n) => {
1056
- const s = Object.entries(e), d = s.length;
1057
- for (let l = 0; l < d; l++) {
1058
- const [a, u] = s[l];
1059
- Ge(u, bt(t, a), r, n);
1057
+ t.validators === null && (t.validators = []), t.validators.push(hr(r, e));
1058
+ }, Sr = (e, t, r, n) => {
1059
+ const a = Object.entries(e), c = a.length;
1060
+ for (let l = 0; l < c; l++) {
1061
+ const [s, m] = a[l];
1062
+ We(m, ht(t, s), r, n);
1060
1063
  }
1061
- }, bt = (e, t) => {
1064
+ }, ht = (e, t) => {
1062
1065
  let r = e;
1063
- const n = t.split(Ce), s = n.length;
1064
- for (let d = 0; d < s; d++) {
1065
- const l = n[d];
1066
- let a = r.nextPart.get(l);
1067
- a || (a = gt(), r.nextPart.set(l, a)), r = a;
1066
+ const n = t.split(Se), a = n.length;
1067
+ for (let c = 0; c < a; c++) {
1068
+ const l = n[c];
1069
+ let s = r.nextPart.get(l);
1070
+ s || (s = pt(), r.nextPart.set(l, s)), r = s;
1068
1071
  }
1069
1072
  return r;
1070
- }, Sr = (e) => "isThemeGetter" in e && e.isThemeGetter === !0, Rr = (e) => {
1073
+ }, Rr = (e) => "isThemeGetter" in e && e.isThemeGetter === !0, Ar = (e) => {
1071
1074
  if (e < 1)
1072
1075
  return {
1073
1076
  get: () => {
@@ -1076,177 +1079,177 @@ const mr = ({
1076
1079
  }
1077
1080
  };
1078
1081
  let t = 0, r = /* @__PURE__ */ Object.create(null), n = /* @__PURE__ */ Object.create(null);
1079
- const s = (d, l) => {
1080
- r[d] = l, t++, t > e && (t = 0, n = r, r = /* @__PURE__ */ Object.create(null));
1082
+ const a = (c, l) => {
1083
+ r[c] = l, t++, t > e && (t = 0, n = r, r = /* @__PURE__ */ Object.create(null));
1081
1084
  };
1082
1085
  return {
1083
- get(d) {
1084
- let l = r[d];
1086
+ get(c) {
1087
+ let l = r[c];
1085
1088
  if (l !== void 0)
1086
1089
  return l;
1087
- if ((l = n[d]) !== void 0)
1088
- return s(d, l), l;
1090
+ if ((l = n[c]) !== void 0)
1091
+ return a(c, l), l;
1089
1092
  },
1090
- set(d, l) {
1091
- d in r ? r[d] = l : s(d, l);
1093
+ set(c, l) {
1094
+ c in r ? r[c] = l : a(c, l);
1092
1095
  }
1093
1096
  };
1094
- }, Be = "!", Je = ":", Ar = [], Ke = (e, t, r, n, s) => ({
1097
+ }, Ge = "!", Ke = ":", Er = [], Xe = (e, t, r, n, a) => ({
1095
1098
  modifiers: e,
1096
1099
  hasImportantModifier: t,
1097
1100
  baseClassName: r,
1098
1101
  maybePostfixModifierPosition: n,
1099
- isExternal: s
1100
- }), Er = (e) => {
1102
+ isExternal: a
1103
+ }), _r = (e) => {
1101
1104
  const {
1102
1105
  prefix: t,
1103
1106
  experimentalParseClassName: r
1104
1107
  } = e;
1105
- let n = (s) => {
1106
- const d = [];
1107
- let l = 0, a = 0, u = 0, m;
1108
- const A = s.length;
1109
- for (let U = 0; U < A; U++) {
1110
- const z = s[U];
1111
- if (l === 0 && a === 0) {
1112
- if (z === Je) {
1113
- d.push(s.slice(u, U)), u = U + 1;
1108
+ let n = (a) => {
1109
+ const c = [];
1110
+ let l = 0, s = 0, m = 0, f;
1111
+ const R = a.length;
1112
+ for (let F = 0; F < R; F++) {
1113
+ const z = a[F];
1114
+ if (l === 0 && s === 0) {
1115
+ if (z === Ke) {
1116
+ c.push(a.slice(m, F)), m = F + 1;
1114
1117
  continue;
1115
1118
  }
1116
1119
  if (z === "/") {
1117
- m = U;
1120
+ f = F;
1118
1121
  continue;
1119
1122
  }
1120
1123
  }
1121
- z === "[" ? l++ : z === "]" ? l-- : z === "(" ? a++ : z === ")" && a--;
1124
+ z === "[" ? l++ : z === "]" ? l-- : z === "(" ? s++ : z === ")" && s--;
1122
1125
  }
1123
- const L = d.length === 0 ? s : s.slice(u);
1124
- let M = L, D = !1;
1125
- L.endsWith(Be) ? (M = L.slice(0, -1), D = !0) : (
1126
+ const L = c.length === 0 ? a : a.slice(m);
1127
+ let M = L, q = !1;
1128
+ L.endsWith(Ge) ? (M = L.slice(0, -1), q = !0) : (
1126
1129
  /**
1127
1130
  * In Tailwind CSS v3 the important modifier was at the start of the base class name. This is still supported for legacy reasons.
1128
1131
  * @see https://github.com/dcastil/tailwind-merge/issues/513#issuecomment-2614029864
1129
1132
  */
1130
- L.startsWith(Be) && (M = L.slice(1), D = !0)
1133
+ L.startsWith(Ge) && (M = L.slice(1), q = !0)
1131
1134
  );
1132
- const S = m && m > u ? m - u : void 0;
1133
- return Ke(d, D, M, S);
1135
+ const S = f && f > m ? f - m : void 0;
1136
+ return Xe(c, q, M, S);
1134
1137
  };
1135
1138
  if (t) {
1136
- const s = t + Je, d = n;
1137
- n = (l) => l.startsWith(s) ? d(l.slice(s.length)) : Ke(Ar, !1, l, void 0, !0);
1139
+ const a = t + Ke, c = n;
1140
+ n = (l) => l.startsWith(a) ? c(l.slice(a.length)) : Xe(Er, !1, l, void 0, !0);
1138
1141
  }
1139
1142
  if (r) {
1140
- const s = n;
1141
- n = (d) => r({
1142
- className: d,
1143
- parseClassName: s
1143
+ const a = n;
1144
+ n = (c) => r({
1145
+ className: c,
1146
+ parseClassName: a
1144
1147
  });
1145
1148
  }
1146
1149
  return n;
1147
- }, _r = (e) => {
1150
+ }, Nr = (e) => {
1148
1151
  const t = /* @__PURE__ */ new Map();
1149
1152
  return e.orderSensitiveModifiers.forEach((r, n) => {
1150
1153
  t.set(r, 1e6 + n);
1151
1154
  }), (r) => {
1152
1155
  const n = [];
1153
- let s = [];
1154
- for (let d = 0; d < r.length; d++) {
1155
- const l = r[d], a = l[0] === "[", u = t.has(l);
1156
- a || u ? (s.length > 0 && (s.sort(), n.push(...s), s = []), n.push(l)) : s.push(l);
1156
+ let a = [];
1157
+ for (let c = 0; c < r.length; c++) {
1158
+ const l = r[c], s = l[0] === "[", m = t.has(l);
1159
+ s || m ? (a.length > 0 && (a.sort(), n.push(...a), a = []), n.push(l)) : a.push(l);
1157
1160
  }
1158
- return s.length > 0 && (s.sort(), n.push(...s)), n;
1161
+ return a.length > 0 && (a.sort(), n.push(...a)), n;
1159
1162
  };
1160
- }, Nr = (e) => ({
1161
- cache: Rr(e.cacheSize),
1162
- parseClassName: Er(e),
1163
- sortModifiers: _r(e),
1164
- ...xr(e)
1165
- }), Ir = /\s+/, Lr = (e, t) => {
1163
+ }, Ir = (e) => ({
1164
+ cache: Ar(e.cacheSize),
1165
+ parseClassName: _r(e),
1166
+ sortModifiers: Nr(e),
1167
+ ...vr(e)
1168
+ }), Lr = /\s+/, zr = (e, t) => {
1166
1169
  const {
1167
1170
  parseClassName: r,
1168
1171
  getClassGroupId: n,
1169
- getConflictingClassGroupIds: s,
1170
- sortModifiers: d
1171
- } = t, l = [], a = e.trim().split(Ir);
1172
- let u = "";
1173
- for (let m = a.length - 1; m >= 0; m -= 1) {
1174
- const A = a[m], {
1172
+ getConflictingClassGroupIds: a,
1173
+ sortModifiers: c
1174
+ } = t, l = [], s = e.trim().split(Lr);
1175
+ let m = "";
1176
+ for (let f = s.length - 1; f >= 0; f -= 1) {
1177
+ const R = s[f], {
1175
1178
  isExternal: L,
1176
1179
  modifiers: M,
1177
- hasImportantModifier: D,
1180
+ hasImportantModifier: q,
1178
1181
  baseClassName: S,
1179
- maybePostfixModifierPosition: U
1180
- } = r(A);
1182
+ maybePostfixModifierPosition: F
1183
+ } = r(R);
1181
1184
  if (L) {
1182
- u = A + (u.length > 0 ? " " + u : u);
1185
+ m = R + (m.length > 0 ? " " + m : m);
1183
1186
  continue;
1184
1187
  }
1185
- let z = !!U, V = n(z ? S.substring(0, U) : S);
1186
- if (!V) {
1188
+ let z = !!F, H = n(z ? S.substring(0, F) : S);
1189
+ if (!H) {
1187
1190
  if (!z) {
1188
- u = A + (u.length > 0 ? " " + u : u);
1191
+ m = R + (m.length > 0 ? " " + m : m);
1189
1192
  continue;
1190
1193
  }
1191
- if (V = n(S), !V) {
1192
- u = A + (u.length > 0 ? " " + u : u);
1194
+ if (H = n(S), !H) {
1195
+ m = R + (m.length > 0 ? " " + m : m);
1193
1196
  continue;
1194
1197
  }
1195
1198
  z = !1;
1196
1199
  }
1197
- const B = M.length === 0 ? "" : M.length === 1 ? M[0] : d(M).join(":"), k = D ? B + Be : B, N = k + V;
1200
+ const $ = M.length === 0 ? "" : M.length === 1 ? M[0] : c(M).join(":"), k = q ? $ + Ge : $, N = k + H;
1198
1201
  if (l.indexOf(N) > -1)
1199
1202
  continue;
1200
1203
  l.push(N);
1201
- const Y = s(V, z);
1202
- for (let W = 0; W < Y.length; ++W) {
1203
- const K = Y[W];
1204
- l.push(k + K);
1204
+ const V = a(H, z);
1205
+ for (let G = 0; G < V.length; ++G) {
1206
+ const J = V[G];
1207
+ l.push(k + J);
1205
1208
  }
1206
- u = A + (u.length > 0 ? " " + u : u);
1209
+ m = R + (m.length > 0 ? " " + m : m);
1207
1210
  }
1208
- return u;
1209
- }, zr = (...e) => {
1210
- let t = 0, r, n, s = "";
1211
+ return m;
1212
+ }, Or = (...e) => {
1213
+ let t = 0, r, n, a = "";
1211
1214
  for (; t < e.length; )
1212
- (r = e[t++]) && (n = ht(r)) && (s && (s += " "), s += n);
1213
- return s;
1214
- }, ht = (e) => {
1215
+ (r = e[t++]) && (n = xt(r)) && (a && (a += " "), a += n);
1216
+ return a;
1217
+ }, xt = (e) => {
1215
1218
  if (typeof e == "string")
1216
1219
  return e;
1217
1220
  let t, r = "";
1218
1221
  for (let n = 0; n < e.length; n++)
1219
- e[n] && (t = ht(e[n])) && (r && (r += " "), r += t);
1222
+ e[n] && (t = xt(e[n])) && (r && (r += " "), r += t);
1220
1223
  return r;
1221
- }, Or = (e, ...t) => {
1222
- let r, n, s, d;
1223
- const l = (u) => {
1224
- const m = t.reduce((A, L) => L(A), e());
1225
- return r = Nr(m), n = r.cache.get, s = r.cache.set, d = a, a(u);
1226
- }, a = (u) => {
1227
- const m = n(u);
1228
- if (m)
1229
- return m;
1230
- const A = Lr(u, r);
1231
- return s(u, A), A;
1224
+ }, Pr = (e, ...t) => {
1225
+ let r, n, a, c;
1226
+ const l = (m) => {
1227
+ const f = t.reduce((R, L) => L(R), e());
1228
+ return r = Ir(f), n = r.cache.get, a = r.cache.set, c = s, s(m);
1229
+ }, s = (m) => {
1230
+ const f = n(m);
1231
+ if (f)
1232
+ return f;
1233
+ const R = zr(m, r);
1234
+ return a(m, R), R;
1232
1235
  };
1233
- return d = l, (...u) => d(zr(...u));
1234
- }, Pr = [], J = (e) => {
1235
- const t = (r) => r[e] || Pr;
1236
+ return c = l, (...m) => c(Or(...m));
1237
+ }, Mr = [], Y = (e) => {
1238
+ const t = (r) => r[e] || Mr;
1236
1239
  return t.isThemeGetter = !0, t;
1237
- }, xt = /^\[(?:(\w[\w-]*):)?(.+)\]$/i, vt = /^\((?:(\w[\w-]*):)?(.+)\)$/i, Mr = /^\d+\/\d+$/, qr = /^(\d+(\.\d+)?)?(xs|sm|md|lg|xl)$/, Dr = /\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$/, Fr = /^(rgba?|hsla?|hwb|(ok)?(lab|lch)|color-mix)\(.+\)$/, Ur = /^(inset_)?-?((\d+)?\.?(\d+)[a-z]+|0)_-?((\d+)?\.?(\d+)[a-z]+|0)/, $r = /^(url|image|image-set|cross-fade|element|(repeating-)?(linear|radial|conic)-gradient)\(.+\)$/, ge = (e) => Mr.test(e), _ = (e) => !!e && !Number.isNaN(Number(e)), ue = (e) => !!e && Number.isInteger(Number(e)), Se = (e) => e.endsWith("%") && _(e.slice(0, -1)), le = (e) => qr.test(e), Br = () => !0, Gr = (e) => (
1240
+ }, vt = /^\[(?:(\w[\w-]*):)?(.+)\]$/i, yt = /^\((?:(\w[\w-]*):)?(.+)\)$/i, qr = /^\d+\/\d+$/, Dr = /^(\d+(\.\d+)?)?(xs|sm|md|lg|xl)$/, Fr = /\d+(%|px|r?em|[sdl]?v([hwib]|min|max)|pt|pc|in|cm|mm|cap|ch|ex|r?lh|cq(w|h|i|b|min|max))|\b(calc|min|max|clamp)\(.+\)|^0$/, Ur = /^(rgba?|hsla?|hwb|(ok)?(lab|lch)|color-mix)\(.+\)$/, $r = /^(inset_)?-?((\d+)?\.?(\d+)[a-z]+|0)_-?((\d+)?\.?(\d+)[a-z]+|0)/, Br = /^(url|image|image-set|cross-fade|element|(repeating-)?(linear|radial|conic)-gradient)\(.+\)$/, pe = (e) => qr.test(e), _ = (e) => !!e && !Number.isNaN(Number(e)), ue = (e) => !!e && Number.isInteger(Number(e)), Re = (e) => e.endsWith("%") && _(e.slice(0, -1)), ce = (e) => Dr.test(e), Gr = () => !0, Wr = (e) => (
1238
1241
  // `colorFunctionRegex` check is necessary because color functions can have percentages in them which which would be incorrectly classified as lengths.
1239
1242
  // For example, `hsl(0 0% 0%)` would be classified as a length without this check.
1240
1243
  // I could also use lookbehind assertion in `lengthUnitRegex` but that isn't supported widely enough.
1241
- Dr.test(e) && !Fr.test(e)
1242
- ), yt = () => !1, Wr = (e) => Ur.test(e), Vr = (e) => $r.test(e), Hr = (e) => !f(e) && !g(e), Yr = (e) => pe(e, Tt, yt), f = (e) => xt.test(e), fe = (e) => pe(e, jt, Gr), Re = (e) => pe(e, Zr, _), Xe = (e) => pe(e, wt, yt), Jr = (e) => pe(e, kt, Vr), ke = (e) => pe(e, Ct, Wr), g = (e) => vt.test(e), ve = (e) => be(e, jt), Kr = (e) => be(e, en), Qe = (e) => be(e, wt), Xr = (e) => be(e, Tt), Qr = (e) => be(e, kt), Te = (e) => be(e, Ct, !0), pe = (e, t, r) => {
1243
- const n = xt.exec(e);
1244
- return n ? n[1] ? t(n[1]) : r(n[2]) : !1;
1245
- }, be = (e, t, r = !1) => {
1244
+ Fr.test(e) && !Ur.test(e)
1245
+ ), wt = () => !1, Hr = (e) => $r.test(e), Vr = (e) => Br.test(e), Yr = (e) => !b(e) && !h(e), Jr = (e) => be(e, jt, wt), b = (e) => vt.test(e), ge = (e) => be(e, Ct, Wr), Ae = (e) => be(e, en, _), Qe = (e) => be(e, kt, wt), Kr = (e) => be(e, Tt, Vr), Te = (e) => be(e, St, Hr), h = (e) => yt.test(e), ye = (e) => he(e, Ct), Xr = (e) => he(e, tn), Ze = (e) => he(e, kt), Qr = (e) => he(e, jt), Zr = (e) => he(e, Tt), je = (e) => he(e, St, !0), be = (e, t, r) => {
1246
1246
  const n = vt.exec(e);
1247
+ return n ? n[1] ? t(n[1]) : r(n[2]) : !1;
1248
+ }, he = (e, t, r = !1) => {
1249
+ const n = yt.exec(e);
1247
1250
  return n ? n[1] ? t(n[1]) : r : !1;
1248
- }, wt = (e) => e === "position" || e === "percentage", kt = (e) => e === "image" || e === "url", Tt = (e) => e === "length" || e === "size" || e === "bg-size", jt = (e) => e === "length", Zr = (e) => e === "number", en = (e) => e === "family-name", Ct = (e) => e === "shadow", tn = () => {
1249
- const e = J("color"), t = J("font"), r = J("text"), n = J("font-weight"), s = J("tracking"), d = J("leading"), l = J("breakpoint"), a = J("container"), u = J("spacing"), m = J("radius"), A = J("shadow"), L = J("inset-shadow"), M = J("text-shadow"), D = J("drop-shadow"), S = J("blur"), U = J("perspective"), z = J("aspect"), V = J("ease"), B = J("animate"), k = () => ["auto", "avoid", "all", "avoid-page", "page", "left", "right", "column"], N = () => [
1251
+ }, kt = (e) => e === "position" || e === "percentage", Tt = (e) => e === "image" || e === "url", jt = (e) => e === "length" || e === "size" || e === "bg-size", Ct = (e) => e === "length", en = (e) => e === "number", tn = (e) => e === "family-name", St = (e) => e === "shadow", rn = () => {
1252
+ const e = Y("color"), t = Y("font"), r = Y("text"), n = Y("font-weight"), a = Y("tracking"), c = Y("leading"), l = Y("breakpoint"), s = Y("container"), m = Y("spacing"), f = Y("radius"), R = Y("shadow"), L = Y("inset-shadow"), M = Y("text-shadow"), q = Y("drop-shadow"), S = Y("blur"), F = Y("perspective"), z = Y("aspect"), H = Y("ease"), $ = Y("animate"), k = () => ["auto", "avoid", "all", "avoid-page", "page", "left", "right", "column"], N = () => [
1250
1253
  "center",
1251
1254
  "top",
1252
1255
  "bottom",
@@ -1264,51 +1267,51 @@ const mr = ({
1264
1267
  "bottom-left",
1265
1268
  // Deprecated since Tailwind CSS v4.1.0, see https://github.com/tailwindlabs/tailwindcss/pull/17378
1266
1269
  "left-bottom"
1267
- ], Y = () => [...N(), g, f], W = () => ["auto", "hidden", "clip", "visible", "scroll"], K = () => ["auto", "contain", "none"], p = () => [g, f, u], c = () => [ge, "full", "auto", ...p()], y = () => [ue, "none", "subgrid", g, f], j = () => ["auto", {
1268
- span: ["full", ue, g, f]
1269
- }, ue, g, f], x = () => [ue, "auto", g, f], v = () => ["auto", "min", "max", "fr", g, f], E = () => ["start", "end", "center", "between", "around", "evenly", "stretch", "baseline", "center-safe", "end-safe"], q = () => ["start", "end", "center", "stretch", "center-safe", "end-safe"], O = () => ["auto", ...p()], $ = () => [ge, "auto", "full", "dvw", "dvh", "lvw", "lvh", "svw", "svh", "min", "max", "fit", ...p()], h = () => [e, g, f], G = () => [...N(), Qe, Xe, {
1270
- position: [g, f]
1271
- }], te = () => ["no-repeat", {
1270
+ ], V = () => [...N(), h, b], G = () => ["auto", "hidden", "clip", "visible", "scroll"], J = () => ["auto", "contain", "none"], x = () => [h, b, m], P = () => [pe, "full", "auto", ...x()], d = () => [ue, "none", "subgrid", h, b], v = () => ["auto", {
1271
+ span: ["full", ue, h, b]
1272
+ }, ue, h, b], T = () => [ue, "auto", h, b], u = () => ["auto", "min", "max", "fr", h, b], j = () => ["start", "end", "center", "between", "around", "evenly", "stretch", "baseline", "center-safe", "end-safe"], A = () => ["start", "end", "center", "stretch", "center-safe", "end-safe"], D = () => ["auto", ...x()], U = () => [pe, "auto", "full", "dvw", "dvh", "lvw", "lvh", "svw", "svh", "min", "max", "fit", ...x()], p = () => [e, h, b], X = () => [...N(), Ze, Qe, {
1273
+ position: [h, b]
1274
+ }], B = () => ["no-repeat", {
1272
1275
  repeat: ["", "x", "y", "space", "round"]
1273
- }], o = () => ["auto", "cover", "contain", Xr, Yr, {
1274
- size: [g, f]
1275
- }], T = () => [Se, ve, fe], w = () => [
1276
+ }], o = () => ["auto", "cover", "contain", Qr, Jr, {
1277
+ size: [h, b]
1278
+ }], y = () => [Re, ye, ge], w = () => [
1276
1279
  // Deprecated since Tailwind CSS v4.0.0
1277
1280
  "",
1278
1281
  "none",
1279
1282
  "full",
1280
- m,
1281
- g,
1282
- f
1283
- ], R = () => ["", _, ve, fe], X = () => ["solid", "dashed", "dotted", "double"], ae = () => ["normal", "multiply", "screen", "overlay", "darken", "lighten", "color-dodge", "color-burn", "hard-light", "soft-light", "difference", "exclusion", "hue", "saturation", "color", "luminosity"], C = () => [_, Se, Qe, Xe], Q = () => [
1283
+ f,
1284
+ h,
1285
+ b
1286
+ ], C = () => ["", _, ye, ge], Z = () => ["solid", "dashed", "dotted", "double"], ne = () => ["normal", "multiply", "screen", "overlay", "darken", "lighten", "color-dodge", "color-burn", "hard-light", "soft-light", "difference", "exclusion", "hue", "saturation", "color", "luminosity"], E = () => [_, Re, Ze, Qe], Q = () => [
1284
1287
  // Deprecated since Tailwind CSS v4.0.0
1285
1288
  "",
1286
1289
  "none",
1287
1290
  S,
1288
- g,
1289
- f
1290
- ], ee = () => ["none", _, g, f], re = () => ["none", _, g, f], ie = () => [_, g, f], P = () => [ge, "full", ...p()];
1291
+ h,
1292
+ b
1293
+ ], te = () => ["none", _, h, b], oe = () => ["none", _, h, b], le = () => [_, h, b], O = () => [pe, "full", ...x()];
1291
1294
  return {
1292
1295
  cacheSize: 500,
1293
1296
  theme: {
1294
1297
  animate: ["spin", "ping", "pulse", "bounce"],
1295
1298
  aspect: ["video"],
1296
- blur: [le],
1297
- breakpoint: [le],
1298
- color: [Br],
1299
- container: [le],
1300
- "drop-shadow": [le],
1299
+ blur: [ce],
1300
+ breakpoint: [ce],
1301
+ color: [Gr],
1302
+ container: [ce],
1303
+ "drop-shadow": [ce],
1301
1304
  ease: ["in", "out", "in-out"],
1302
- font: [Hr],
1305
+ font: [Yr],
1303
1306
  "font-weight": ["thin", "extralight", "light", "normal", "medium", "semibold", "bold", "extrabold", "black"],
1304
- "inset-shadow": [le],
1307
+ "inset-shadow": [ce],
1305
1308
  leading: ["none", "tight", "snug", "normal", "relaxed", "loose"],
1306
1309
  perspective: ["dramatic", "near", "normal", "midrange", "distant", "none"],
1307
- radius: [le],
1308
- shadow: [le],
1310
+ radius: [ce],
1311
+ shadow: [ce],
1309
1312
  spacing: ["px", _],
1310
- text: [le],
1311
- "text-shadow": [le],
1313
+ text: [ce],
1314
+ "text-shadow": [ce],
1312
1315
  tracking: ["tighter", "tight", "normal", "wide", "wider", "widest"]
1313
1316
  },
1314
1317
  classGroups: {
@@ -1320,7 +1323,7 @@ const mr = ({
1320
1323
  * @see https://tailwindcss.com/docs/aspect-ratio
1321
1324
  */
1322
1325
  aspect: [{
1323
- aspect: ["auto", "square", ge, f, g, z]
1326
+ aspect: ["auto", "square", pe, b, h, z]
1324
1327
  }],
1325
1328
  /**
1326
1329
  * Container
@@ -1333,7 +1336,7 @@ const mr = ({
1333
1336
  * @see https://tailwindcss.com/docs/columns
1334
1337
  */
1335
1338
  columns: [{
1336
- columns: [_, f, g, a]
1339
+ columns: [_, b, h, s]
1337
1340
  }],
1338
1341
  /**
1339
1342
  * Break After
@@ -1411,49 +1414,49 @@ const mr = ({
1411
1414
  * @see https://tailwindcss.com/docs/object-position
1412
1415
  */
1413
1416
  "object-position": [{
1414
- object: Y()
1417
+ object: V()
1415
1418
  }],
1416
1419
  /**
1417
1420
  * Overflow
1418
1421
  * @see https://tailwindcss.com/docs/overflow
1419
1422
  */
1420
1423
  overflow: [{
1421
- overflow: W()
1424
+ overflow: G()
1422
1425
  }],
1423
1426
  /**
1424
1427
  * Overflow X
1425
1428
  * @see https://tailwindcss.com/docs/overflow
1426
1429
  */
1427
1430
  "overflow-x": [{
1428
- "overflow-x": W()
1431
+ "overflow-x": G()
1429
1432
  }],
1430
1433
  /**
1431
1434
  * Overflow Y
1432
1435
  * @see https://tailwindcss.com/docs/overflow
1433
1436
  */
1434
1437
  "overflow-y": [{
1435
- "overflow-y": W()
1438
+ "overflow-y": G()
1436
1439
  }],
1437
1440
  /**
1438
1441
  * Overscroll Behavior
1439
1442
  * @see https://tailwindcss.com/docs/overscroll-behavior
1440
1443
  */
1441
1444
  overscroll: [{
1442
- overscroll: K()
1445
+ overscroll: J()
1443
1446
  }],
1444
1447
  /**
1445
1448
  * Overscroll Behavior X
1446
1449
  * @see https://tailwindcss.com/docs/overscroll-behavior
1447
1450
  */
1448
1451
  "overscroll-x": [{
1449
- "overscroll-x": K()
1452
+ "overscroll-x": J()
1450
1453
  }],
1451
1454
  /**
1452
1455
  * Overscroll Behavior Y
1453
1456
  * @see https://tailwindcss.com/docs/overscroll-behavior
1454
1457
  */
1455
1458
  "overscroll-y": [{
1456
- "overscroll-y": K()
1459
+ "overscroll-y": J()
1457
1460
  }],
1458
1461
  /**
1459
1462
  * Position
@@ -1465,63 +1468,63 @@ const mr = ({
1465
1468
  * @see https://tailwindcss.com/docs/top-right-bottom-left
1466
1469
  */
1467
1470
  inset: [{
1468
- inset: c()
1471
+ inset: P()
1469
1472
  }],
1470
1473
  /**
1471
1474
  * Right / Left
1472
1475
  * @see https://tailwindcss.com/docs/top-right-bottom-left
1473
1476
  */
1474
1477
  "inset-x": [{
1475
- "inset-x": c()
1478
+ "inset-x": P()
1476
1479
  }],
1477
1480
  /**
1478
1481
  * Top / Bottom
1479
1482
  * @see https://tailwindcss.com/docs/top-right-bottom-left
1480
1483
  */
1481
1484
  "inset-y": [{
1482
- "inset-y": c()
1485
+ "inset-y": P()
1483
1486
  }],
1484
1487
  /**
1485
1488
  * Start
1486
1489
  * @see https://tailwindcss.com/docs/top-right-bottom-left
1487
1490
  */
1488
1491
  start: [{
1489
- start: c()
1492
+ start: P()
1490
1493
  }],
1491
1494
  /**
1492
1495
  * End
1493
1496
  * @see https://tailwindcss.com/docs/top-right-bottom-left
1494
1497
  */
1495
1498
  end: [{
1496
- end: c()
1499
+ end: P()
1497
1500
  }],
1498
1501
  /**
1499
1502
  * Top
1500
1503
  * @see https://tailwindcss.com/docs/top-right-bottom-left
1501
1504
  */
1502
1505
  top: [{
1503
- top: c()
1506
+ top: P()
1504
1507
  }],
1505
1508
  /**
1506
1509
  * Right
1507
1510
  * @see https://tailwindcss.com/docs/top-right-bottom-left
1508
1511
  */
1509
1512
  right: [{
1510
- right: c()
1513
+ right: P()
1511
1514
  }],
1512
1515
  /**
1513
1516
  * Bottom
1514
1517
  * @see https://tailwindcss.com/docs/top-right-bottom-left
1515
1518
  */
1516
1519
  bottom: [{
1517
- bottom: c()
1520
+ bottom: P()
1518
1521
  }],
1519
1522
  /**
1520
1523
  * Left
1521
1524
  * @see https://tailwindcss.com/docs/top-right-bottom-left
1522
1525
  */
1523
1526
  left: [{
1524
- left: c()
1527
+ left: P()
1525
1528
  }],
1526
1529
  /**
1527
1530
  * Visibility
@@ -1533,7 +1536,7 @@ const mr = ({
1533
1536
  * @see https://tailwindcss.com/docs/z-index
1534
1537
  */
1535
1538
  z: [{
1536
- z: [ue, "auto", g, f]
1539
+ z: [ue, "auto", h, b]
1537
1540
  }],
1538
1541
  // ------------------------
1539
1542
  // --- Flexbox and Grid ---
@@ -1543,7 +1546,7 @@ const mr = ({
1543
1546
  * @see https://tailwindcss.com/docs/flex-basis
1544
1547
  */
1545
1548
  basis: [{
1546
- basis: [ge, "full", "auto", a, ...p()]
1549
+ basis: [pe, "full", "auto", s, ...x()]
1547
1550
  }],
1548
1551
  /**
1549
1552
  * Flex Direction
@@ -1564,84 +1567,84 @@ const mr = ({
1564
1567
  * @see https://tailwindcss.com/docs/flex
1565
1568
  */
1566
1569
  flex: [{
1567
- flex: [_, ge, "auto", "initial", "none", f]
1570
+ flex: [_, pe, "auto", "initial", "none", b]
1568
1571
  }],
1569
1572
  /**
1570
1573
  * Flex Grow
1571
1574
  * @see https://tailwindcss.com/docs/flex-grow
1572
1575
  */
1573
1576
  grow: [{
1574
- grow: ["", _, g, f]
1577
+ grow: ["", _, h, b]
1575
1578
  }],
1576
1579
  /**
1577
1580
  * Flex Shrink
1578
1581
  * @see https://tailwindcss.com/docs/flex-shrink
1579
1582
  */
1580
1583
  shrink: [{
1581
- shrink: ["", _, g, f]
1584
+ shrink: ["", _, h, b]
1582
1585
  }],
1583
1586
  /**
1584
1587
  * Order
1585
1588
  * @see https://tailwindcss.com/docs/order
1586
1589
  */
1587
1590
  order: [{
1588
- order: [ue, "first", "last", "none", g, f]
1591
+ order: [ue, "first", "last", "none", h, b]
1589
1592
  }],
1590
1593
  /**
1591
1594
  * Grid Template Columns
1592
1595
  * @see https://tailwindcss.com/docs/grid-template-columns
1593
1596
  */
1594
1597
  "grid-cols": [{
1595
- "grid-cols": y()
1598
+ "grid-cols": d()
1596
1599
  }],
1597
1600
  /**
1598
1601
  * Grid Column Start / End
1599
1602
  * @see https://tailwindcss.com/docs/grid-column
1600
1603
  */
1601
1604
  "col-start-end": [{
1602
- col: j()
1605
+ col: v()
1603
1606
  }],
1604
1607
  /**
1605
1608
  * Grid Column Start
1606
1609
  * @see https://tailwindcss.com/docs/grid-column
1607
1610
  */
1608
1611
  "col-start": [{
1609
- "col-start": x()
1612
+ "col-start": T()
1610
1613
  }],
1611
1614
  /**
1612
1615
  * Grid Column End
1613
1616
  * @see https://tailwindcss.com/docs/grid-column
1614
1617
  */
1615
1618
  "col-end": [{
1616
- "col-end": x()
1619
+ "col-end": T()
1617
1620
  }],
1618
1621
  /**
1619
1622
  * Grid Template Rows
1620
1623
  * @see https://tailwindcss.com/docs/grid-template-rows
1621
1624
  */
1622
1625
  "grid-rows": [{
1623
- "grid-rows": y()
1626
+ "grid-rows": d()
1624
1627
  }],
1625
1628
  /**
1626
1629
  * Grid Row Start / End
1627
1630
  * @see https://tailwindcss.com/docs/grid-row
1628
1631
  */
1629
1632
  "row-start-end": [{
1630
- row: j()
1633
+ row: v()
1631
1634
  }],
1632
1635
  /**
1633
1636
  * Grid Row Start
1634
1637
  * @see https://tailwindcss.com/docs/grid-row
1635
1638
  */
1636
1639
  "row-start": [{
1637
- "row-start": x()
1640
+ "row-start": T()
1638
1641
  }],
1639
1642
  /**
1640
1643
  * Grid Row End
1641
1644
  * @see https://tailwindcss.com/docs/grid-row
1642
1645
  */
1643
1646
  "row-end": [{
1644
- "row-end": x()
1647
+ "row-end": T()
1645
1648
  }],
1646
1649
  /**
1647
1650
  * Grid Auto Flow
@@ -1655,70 +1658,70 @@ const mr = ({
1655
1658
  * @see https://tailwindcss.com/docs/grid-auto-columns
1656
1659
  */
1657
1660
  "auto-cols": [{
1658
- "auto-cols": v()
1661
+ "auto-cols": u()
1659
1662
  }],
1660
1663
  /**
1661
1664
  * Grid Auto Rows
1662
1665
  * @see https://tailwindcss.com/docs/grid-auto-rows
1663
1666
  */
1664
1667
  "auto-rows": [{
1665
- "auto-rows": v()
1668
+ "auto-rows": u()
1666
1669
  }],
1667
1670
  /**
1668
1671
  * Gap
1669
1672
  * @see https://tailwindcss.com/docs/gap
1670
1673
  */
1671
1674
  gap: [{
1672
- gap: p()
1675
+ gap: x()
1673
1676
  }],
1674
1677
  /**
1675
1678
  * Gap X
1676
1679
  * @see https://tailwindcss.com/docs/gap
1677
1680
  */
1678
1681
  "gap-x": [{
1679
- "gap-x": p()
1682
+ "gap-x": x()
1680
1683
  }],
1681
1684
  /**
1682
1685
  * Gap Y
1683
1686
  * @see https://tailwindcss.com/docs/gap
1684
1687
  */
1685
1688
  "gap-y": [{
1686
- "gap-y": p()
1689
+ "gap-y": x()
1687
1690
  }],
1688
1691
  /**
1689
1692
  * Justify Content
1690
1693
  * @see https://tailwindcss.com/docs/justify-content
1691
1694
  */
1692
1695
  "justify-content": [{
1693
- justify: [...E(), "normal"]
1696
+ justify: [...j(), "normal"]
1694
1697
  }],
1695
1698
  /**
1696
1699
  * Justify Items
1697
1700
  * @see https://tailwindcss.com/docs/justify-items
1698
1701
  */
1699
1702
  "justify-items": [{
1700
- "justify-items": [...q(), "normal"]
1703
+ "justify-items": [...A(), "normal"]
1701
1704
  }],
1702
1705
  /**
1703
1706
  * Justify Self
1704
1707
  * @see https://tailwindcss.com/docs/justify-self
1705
1708
  */
1706
1709
  "justify-self": [{
1707
- "justify-self": ["auto", ...q()]
1710
+ "justify-self": ["auto", ...A()]
1708
1711
  }],
1709
1712
  /**
1710
1713
  * Align Content
1711
1714
  * @see https://tailwindcss.com/docs/align-content
1712
1715
  */
1713
1716
  "align-content": [{
1714
- content: ["normal", ...E()]
1717
+ content: ["normal", ...j()]
1715
1718
  }],
1716
1719
  /**
1717
1720
  * Align Items
1718
1721
  * @see https://tailwindcss.com/docs/align-items
1719
1722
  */
1720
1723
  "align-items": [{
1721
- items: [...q(), {
1724
+ items: [...A(), {
1722
1725
  baseline: ["", "last"]
1723
1726
  }]
1724
1727
  }],
@@ -1727,7 +1730,7 @@ const mr = ({
1727
1730
  * @see https://tailwindcss.com/docs/align-self
1728
1731
  */
1729
1732
  "align-self": [{
1730
- self: ["auto", ...q(), {
1733
+ self: ["auto", ...A(), {
1731
1734
  baseline: ["", "last"]
1732
1735
  }]
1733
1736
  }],
@@ -1736,21 +1739,21 @@ const mr = ({
1736
1739
  * @see https://tailwindcss.com/docs/place-content
1737
1740
  */
1738
1741
  "place-content": [{
1739
- "place-content": E()
1742
+ "place-content": j()
1740
1743
  }],
1741
1744
  /**
1742
1745
  * Place Items
1743
1746
  * @see https://tailwindcss.com/docs/place-items
1744
1747
  */
1745
1748
  "place-items": [{
1746
- "place-items": [...q(), "baseline"]
1749
+ "place-items": [...A(), "baseline"]
1747
1750
  }],
1748
1751
  /**
1749
1752
  * Place Self
1750
1753
  * @see https://tailwindcss.com/docs/place-self
1751
1754
  */
1752
1755
  "place-self": [{
1753
- "place-self": ["auto", ...q()]
1756
+ "place-self": ["auto", ...A()]
1754
1757
  }],
1755
1758
  // Spacing
1756
1759
  /**
@@ -1758,133 +1761,133 @@ const mr = ({
1758
1761
  * @see https://tailwindcss.com/docs/padding
1759
1762
  */
1760
1763
  p: [{
1761
- p: p()
1764
+ p: x()
1762
1765
  }],
1763
1766
  /**
1764
1767
  * Padding X
1765
1768
  * @see https://tailwindcss.com/docs/padding
1766
1769
  */
1767
1770
  px: [{
1768
- px: p()
1771
+ px: x()
1769
1772
  }],
1770
1773
  /**
1771
1774
  * Padding Y
1772
1775
  * @see https://tailwindcss.com/docs/padding
1773
1776
  */
1774
1777
  py: [{
1775
- py: p()
1778
+ py: x()
1776
1779
  }],
1777
1780
  /**
1778
1781
  * Padding Start
1779
1782
  * @see https://tailwindcss.com/docs/padding
1780
1783
  */
1781
1784
  ps: [{
1782
- ps: p()
1785
+ ps: x()
1783
1786
  }],
1784
1787
  /**
1785
1788
  * Padding End
1786
1789
  * @see https://tailwindcss.com/docs/padding
1787
1790
  */
1788
1791
  pe: [{
1789
- pe: p()
1792
+ pe: x()
1790
1793
  }],
1791
1794
  /**
1792
1795
  * Padding Top
1793
1796
  * @see https://tailwindcss.com/docs/padding
1794
1797
  */
1795
1798
  pt: [{
1796
- pt: p()
1799
+ pt: x()
1797
1800
  }],
1798
1801
  /**
1799
1802
  * Padding Right
1800
1803
  * @see https://tailwindcss.com/docs/padding
1801
1804
  */
1802
1805
  pr: [{
1803
- pr: p()
1806
+ pr: x()
1804
1807
  }],
1805
1808
  /**
1806
1809
  * Padding Bottom
1807
1810
  * @see https://tailwindcss.com/docs/padding
1808
1811
  */
1809
1812
  pb: [{
1810
- pb: p()
1813
+ pb: x()
1811
1814
  }],
1812
1815
  /**
1813
1816
  * Padding Left
1814
1817
  * @see https://tailwindcss.com/docs/padding
1815
1818
  */
1816
1819
  pl: [{
1817
- pl: p()
1820
+ pl: x()
1818
1821
  }],
1819
1822
  /**
1820
1823
  * Margin
1821
1824
  * @see https://tailwindcss.com/docs/margin
1822
1825
  */
1823
1826
  m: [{
1824
- m: O()
1827
+ m: D()
1825
1828
  }],
1826
1829
  /**
1827
1830
  * Margin X
1828
1831
  * @see https://tailwindcss.com/docs/margin
1829
1832
  */
1830
1833
  mx: [{
1831
- mx: O()
1834
+ mx: D()
1832
1835
  }],
1833
1836
  /**
1834
1837
  * Margin Y
1835
1838
  * @see https://tailwindcss.com/docs/margin
1836
1839
  */
1837
1840
  my: [{
1838
- my: O()
1841
+ my: D()
1839
1842
  }],
1840
1843
  /**
1841
1844
  * Margin Start
1842
1845
  * @see https://tailwindcss.com/docs/margin
1843
1846
  */
1844
1847
  ms: [{
1845
- ms: O()
1848
+ ms: D()
1846
1849
  }],
1847
1850
  /**
1848
1851
  * Margin End
1849
1852
  * @see https://tailwindcss.com/docs/margin
1850
1853
  */
1851
1854
  me: [{
1852
- me: O()
1855
+ me: D()
1853
1856
  }],
1854
1857
  /**
1855
1858
  * Margin Top
1856
1859
  * @see https://tailwindcss.com/docs/margin
1857
1860
  */
1858
1861
  mt: [{
1859
- mt: O()
1862
+ mt: D()
1860
1863
  }],
1861
1864
  /**
1862
1865
  * Margin Right
1863
1866
  * @see https://tailwindcss.com/docs/margin
1864
1867
  */
1865
1868
  mr: [{
1866
- mr: O()
1869
+ mr: D()
1867
1870
  }],
1868
1871
  /**
1869
1872
  * Margin Bottom
1870
1873
  * @see https://tailwindcss.com/docs/margin
1871
1874
  */
1872
1875
  mb: [{
1873
- mb: O()
1876
+ mb: D()
1874
1877
  }],
1875
1878
  /**
1876
1879
  * Margin Left
1877
1880
  * @see https://tailwindcss.com/docs/margin
1878
1881
  */
1879
1882
  ml: [{
1880
- ml: O()
1883
+ ml: D()
1881
1884
  }],
1882
1885
  /**
1883
1886
  * Space Between X
1884
1887
  * @see https://tailwindcss.com/docs/margin#adding-space-between-children
1885
1888
  */
1886
1889
  "space-x": [{
1887
- "space-x": p()
1890
+ "space-x": x()
1888
1891
  }],
1889
1892
  /**
1890
1893
  * Space Between X Reverse
@@ -1896,7 +1899,7 @@ const mr = ({
1896
1899
  * @see https://tailwindcss.com/docs/margin#adding-space-between-children
1897
1900
  */
1898
1901
  "space-y": [{
1899
- "space-y": p()
1902
+ "space-y": x()
1900
1903
  }],
1901
1904
  /**
1902
1905
  * Space Between Y Reverse
@@ -1911,14 +1914,14 @@ const mr = ({
1911
1914
  * @see https://tailwindcss.com/docs/width#setting-both-width-and-height
1912
1915
  */
1913
1916
  size: [{
1914
- size: $()
1917
+ size: U()
1915
1918
  }],
1916
1919
  /**
1917
1920
  * Width
1918
1921
  * @see https://tailwindcss.com/docs/width
1919
1922
  */
1920
1923
  w: [{
1921
- w: [a, "screen", ...$()]
1924
+ w: [s, "screen", ...U()]
1922
1925
  }],
1923
1926
  /**
1924
1927
  * Min-Width
@@ -1926,11 +1929,11 @@ const mr = ({
1926
1929
  */
1927
1930
  "min-w": [{
1928
1931
  "min-w": [
1929
- a,
1932
+ s,
1930
1933
  "screen",
1931
1934
  /** Deprecated. @see https://github.com/tailwindlabs/tailwindcss.com/issues/2027#issuecomment-2620152757 */
1932
1935
  "none",
1933
- ...$()
1936
+ ...U()
1934
1937
  ]
1935
1938
  }],
1936
1939
  /**
@@ -1939,7 +1942,7 @@ const mr = ({
1939
1942
  */
1940
1943
  "max-w": [{
1941
1944
  "max-w": [
1942
- a,
1945
+ s,
1943
1946
  "screen",
1944
1947
  "none",
1945
1948
  /** Deprecated since Tailwind CSS v4.0.0. @see https://github.com/tailwindlabs/tailwindcss.com/issues/2027#issuecomment-2620152757 */
@@ -1948,7 +1951,7 @@ const mr = ({
1948
1951
  {
1949
1952
  screen: [l]
1950
1953
  },
1951
- ...$()
1954
+ ...U()
1952
1955
  ]
1953
1956
  }],
1954
1957
  /**
@@ -1956,21 +1959,21 @@ const mr = ({
1956
1959
  * @see https://tailwindcss.com/docs/height
1957
1960
  */
1958
1961
  h: [{
1959
- h: ["screen", "lh", ...$()]
1962
+ h: ["screen", "lh", ...U()]
1960
1963
  }],
1961
1964
  /**
1962
1965
  * Min-Height
1963
1966
  * @see https://tailwindcss.com/docs/min-height
1964
1967
  */
1965
1968
  "min-h": [{
1966
- "min-h": ["screen", "lh", "none", ...$()]
1969
+ "min-h": ["screen", "lh", "none", ...U()]
1967
1970
  }],
1968
1971
  /**
1969
1972
  * Max-Height
1970
1973
  * @see https://tailwindcss.com/docs/max-height
1971
1974
  */
1972
1975
  "max-h": [{
1973
- "max-h": ["screen", "lh", ...$()]
1976
+ "max-h": ["screen", "lh", ...U()]
1974
1977
  }],
1975
1978
  // ------------------
1976
1979
  // --- Typography ---
@@ -1980,7 +1983,7 @@ const mr = ({
1980
1983
  * @see https://tailwindcss.com/docs/font-size
1981
1984
  */
1982
1985
  "font-size": [{
1983
- text: ["base", r, ve, fe]
1986
+ text: ["base", r, ye, ge]
1984
1987
  }],
1985
1988
  /**
1986
1989
  * Font Smoothing
@@ -1997,21 +2000,21 @@ const mr = ({
1997
2000
  * @see https://tailwindcss.com/docs/font-weight
1998
2001
  */
1999
2002
  "font-weight": [{
2000
- font: [n, g, Re]
2003
+ font: [n, h, Ae]
2001
2004
  }],
2002
2005
  /**
2003
2006
  * Font Stretch
2004
2007
  * @see https://tailwindcss.com/docs/font-stretch
2005
2008
  */
2006
2009
  "font-stretch": [{
2007
- "font-stretch": ["ultra-condensed", "extra-condensed", "condensed", "semi-condensed", "normal", "semi-expanded", "expanded", "extra-expanded", "ultra-expanded", Se, f]
2010
+ "font-stretch": ["ultra-condensed", "extra-condensed", "condensed", "semi-condensed", "normal", "semi-expanded", "expanded", "extra-expanded", "ultra-expanded", Re, b]
2008
2011
  }],
2009
2012
  /**
2010
2013
  * Font Family
2011
2014
  * @see https://tailwindcss.com/docs/font-family
2012
2015
  */
2013
2016
  "font-family": [{
2014
- font: [Kr, f, t]
2017
+ font: [Xr, b, t]
2015
2018
  }],
2016
2019
  /**
2017
2020
  * Font Variant Numeric
@@ -2048,14 +2051,14 @@ const mr = ({
2048
2051
  * @see https://tailwindcss.com/docs/letter-spacing
2049
2052
  */
2050
2053
  tracking: [{
2051
- tracking: [s, g, f]
2054
+ tracking: [a, h, b]
2052
2055
  }],
2053
2056
  /**
2054
2057
  * Line Clamp
2055
2058
  * @see https://tailwindcss.com/docs/line-clamp
2056
2059
  */
2057
2060
  "line-clamp": [{
2058
- "line-clamp": [_, "none", g, Re]
2061
+ "line-clamp": [_, "none", h, Ae]
2059
2062
  }],
2060
2063
  /**
2061
2064
  * Line Height
@@ -2064,8 +2067,8 @@ const mr = ({
2064
2067
  leading: [{
2065
2068
  leading: [
2066
2069
  /** Deprecated since Tailwind CSS v4.0.0. @see https://github.com/tailwindlabs/tailwindcss.com/issues/2027#issuecomment-2620152757 */
2067
- d,
2068
- ...p()
2070
+ c,
2071
+ ...x()
2069
2072
  ]
2070
2073
  }],
2071
2074
  /**
@@ -2073,7 +2076,7 @@ const mr = ({
2073
2076
  * @see https://tailwindcss.com/docs/list-style-image
2074
2077
  */
2075
2078
  "list-image": [{
2076
- "list-image": ["none", g, f]
2079
+ "list-image": ["none", h, b]
2077
2080
  }],
2078
2081
  /**
2079
2082
  * List Style Position
@@ -2087,7 +2090,7 @@ const mr = ({
2087
2090
  * @see https://tailwindcss.com/docs/list-style-type
2088
2091
  */
2089
2092
  "list-style-type": [{
2090
- list: ["disc", "decimal", "none", g, f]
2093
+ list: ["disc", "decimal", "none", h, b]
2091
2094
  }],
2092
2095
  /**
2093
2096
  * Text Alignment
@@ -2102,14 +2105,14 @@ const mr = ({
2102
2105
  * @see https://v3.tailwindcss.com/docs/placeholder-color
2103
2106
  */
2104
2107
  "placeholder-color": [{
2105
- placeholder: h()
2108
+ placeholder: p()
2106
2109
  }],
2107
2110
  /**
2108
2111
  * Text Color
2109
2112
  * @see https://tailwindcss.com/docs/text-color
2110
2113
  */
2111
2114
  "text-color": [{
2112
- text: h()
2115
+ text: p()
2113
2116
  }],
2114
2117
  /**
2115
2118
  * Text Decoration
@@ -2121,28 +2124,28 @@ const mr = ({
2121
2124
  * @see https://tailwindcss.com/docs/text-decoration-style
2122
2125
  */
2123
2126
  "text-decoration-style": [{
2124
- decoration: [...X(), "wavy"]
2127
+ decoration: [...Z(), "wavy"]
2125
2128
  }],
2126
2129
  /**
2127
2130
  * Text Decoration Thickness
2128
2131
  * @see https://tailwindcss.com/docs/text-decoration-thickness
2129
2132
  */
2130
2133
  "text-decoration-thickness": [{
2131
- decoration: [_, "from-font", "auto", g, fe]
2134
+ decoration: [_, "from-font", "auto", h, ge]
2132
2135
  }],
2133
2136
  /**
2134
2137
  * Text Decoration Color
2135
2138
  * @see https://tailwindcss.com/docs/text-decoration-color
2136
2139
  */
2137
2140
  "text-decoration-color": [{
2138
- decoration: h()
2141
+ decoration: p()
2139
2142
  }],
2140
2143
  /**
2141
2144
  * Text Underline Offset
2142
2145
  * @see https://tailwindcss.com/docs/text-underline-offset
2143
2146
  */
2144
2147
  "underline-offset": [{
2145
- "underline-offset": [_, "auto", g, f]
2148
+ "underline-offset": [_, "auto", h, b]
2146
2149
  }],
2147
2150
  /**
2148
2151
  * Text Transform
@@ -2166,14 +2169,14 @@ const mr = ({
2166
2169
  * @see https://tailwindcss.com/docs/text-indent
2167
2170
  */
2168
2171
  indent: [{
2169
- indent: p()
2172
+ indent: x()
2170
2173
  }],
2171
2174
  /**
2172
2175
  * Vertical Alignment
2173
2176
  * @see https://tailwindcss.com/docs/vertical-align
2174
2177
  */
2175
2178
  "vertical-align": [{
2176
- align: ["baseline", "top", "middle", "bottom", "text-top", "text-bottom", "sub", "super", g, f]
2179
+ align: ["baseline", "top", "middle", "bottom", "text-top", "text-bottom", "sub", "super", h, b]
2177
2180
  }],
2178
2181
  /**
2179
2182
  * Whitespace
@@ -2208,7 +2211,7 @@ const mr = ({
2208
2211
  * @see https://tailwindcss.com/docs/content
2209
2212
  */
2210
2213
  content: [{
2211
- content: ["none", g, f]
2214
+ content: ["none", h, b]
2212
2215
  }],
2213
2216
  // -------------------
2214
2217
  // --- Backgrounds ---
@@ -2239,14 +2242,14 @@ const mr = ({
2239
2242
  * @see https://tailwindcss.com/docs/background-position
2240
2243
  */
2241
2244
  "bg-position": [{
2242
- bg: G()
2245
+ bg: X()
2243
2246
  }],
2244
2247
  /**
2245
2248
  * Background Repeat
2246
2249
  * @see https://tailwindcss.com/docs/background-repeat
2247
2250
  */
2248
2251
  "bg-repeat": [{
2249
- bg: te()
2252
+ bg: B()
2250
2253
  }],
2251
2254
  /**
2252
2255
  * Background Size
@@ -2263,59 +2266,59 @@ const mr = ({
2263
2266
  bg: ["none", {
2264
2267
  linear: [{
2265
2268
  to: ["t", "tr", "r", "br", "b", "bl", "l", "tl"]
2266
- }, ue, g, f],
2267
- radial: ["", g, f],
2268
- conic: [ue, g, f]
2269
- }, Qr, Jr]
2269
+ }, ue, h, b],
2270
+ radial: ["", h, b],
2271
+ conic: [ue, h, b]
2272
+ }, Zr, Kr]
2270
2273
  }],
2271
2274
  /**
2272
2275
  * Background Color
2273
2276
  * @see https://tailwindcss.com/docs/background-color
2274
2277
  */
2275
2278
  "bg-color": [{
2276
- bg: h()
2279
+ bg: p()
2277
2280
  }],
2278
2281
  /**
2279
2282
  * Gradient Color Stops From Position
2280
2283
  * @see https://tailwindcss.com/docs/gradient-color-stops
2281
2284
  */
2282
2285
  "gradient-from-pos": [{
2283
- from: T()
2286
+ from: y()
2284
2287
  }],
2285
2288
  /**
2286
2289
  * Gradient Color Stops Via Position
2287
2290
  * @see https://tailwindcss.com/docs/gradient-color-stops
2288
2291
  */
2289
2292
  "gradient-via-pos": [{
2290
- via: T()
2293
+ via: y()
2291
2294
  }],
2292
2295
  /**
2293
2296
  * Gradient Color Stops To Position
2294
2297
  * @see https://tailwindcss.com/docs/gradient-color-stops
2295
2298
  */
2296
2299
  "gradient-to-pos": [{
2297
- to: T()
2300
+ to: y()
2298
2301
  }],
2299
2302
  /**
2300
2303
  * Gradient Color Stops From
2301
2304
  * @see https://tailwindcss.com/docs/gradient-color-stops
2302
2305
  */
2303
2306
  "gradient-from": [{
2304
- from: h()
2307
+ from: p()
2305
2308
  }],
2306
2309
  /**
2307
2310
  * Gradient Color Stops Via
2308
2311
  * @see https://tailwindcss.com/docs/gradient-color-stops
2309
2312
  */
2310
2313
  "gradient-via": [{
2311
- via: h()
2314
+ via: p()
2312
2315
  }],
2313
2316
  /**
2314
2317
  * Gradient Color Stops To
2315
2318
  * @see https://tailwindcss.com/docs/gradient-color-stops
2316
2319
  */
2317
2320
  "gradient-to": [{
2318
- to: h()
2321
+ to: p()
2319
2322
  }],
2320
2323
  // ---------------
2321
2324
  // --- Borders ---
@@ -2430,70 +2433,70 @@ const mr = ({
2430
2433
  * @see https://tailwindcss.com/docs/border-width
2431
2434
  */
2432
2435
  "border-w": [{
2433
- border: R()
2436
+ border: C()
2434
2437
  }],
2435
2438
  /**
2436
2439
  * Border Width X
2437
2440
  * @see https://tailwindcss.com/docs/border-width
2438
2441
  */
2439
2442
  "border-w-x": [{
2440
- "border-x": R()
2443
+ "border-x": C()
2441
2444
  }],
2442
2445
  /**
2443
2446
  * Border Width Y
2444
2447
  * @see https://tailwindcss.com/docs/border-width
2445
2448
  */
2446
2449
  "border-w-y": [{
2447
- "border-y": R()
2450
+ "border-y": C()
2448
2451
  }],
2449
2452
  /**
2450
2453
  * Border Width Start
2451
2454
  * @see https://tailwindcss.com/docs/border-width
2452
2455
  */
2453
2456
  "border-w-s": [{
2454
- "border-s": R()
2457
+ "border-s": C()
2455
2458
  }],
2456
2459
  /**
2457
2460
  * Border Width End
2458
2461
  * @see https://tailwindcss.com/docs/border-width
2459
2462
  */
2460
2463
  "border-w-e": [{
2461
- "border-e": R()
2464
+ "border-e": C()
2462
2465
  }],
2463
2466
  /**
2464
2467
  * Border Width Top
2465
2468
  * @see https://tailwindcss.com/docs/border-width
2466
2469
  */
2467
2470
  "border-w-t": [{
2468
- "border-t": R()
2471
+ "border-t": C()
2469
2472
  }],
2470
2473
  /**
2471
2474
  * Border Width Right
2472
2475
  * @see https://tailwindcss.com/docs/border-width
2473
2476
  */
2474
2477
  "border-w-r": [{
2475
- "border-r": R()
2478
+ "border-r": C()
2476
2479
  }],
2477
2480
  /**
2478
2481
  * Border Width Bottom
2479
2482
  * @see https://tailwindcss.com/docs/border-width
2480
2483
  */
2481
2484
  "border-w-b": [{
2482
- "border-b": R()
2485
+ "border-b": C()
2483
2486
  }],
2484
2487
  /**
2485
2488
  * Border Width Left
2486
2489
  * @see https://tailwindcss.com/docs/border-width
2487
2490
  */
2488
2491
  "border-w-l": [{
2489
- "border-l": R()
2492
+ "border-l": C()
2490
2493
  }],
2491
2494
  /**
2492
2495
  * Divide Width X
2493
2496
  * @see https://tailwindcss.com/docs/border-width#between-children
2494
2497
  */
2495
2498
  "divide-x": [{
2496
- "divide-x": R()
2499
+ "divide-x": C()
2497
2500
  }],
2498
2501
  /**
2499
2502
  * Divide Width X Reverse
@@ -2505,7 +2508,7 @@ const mr = ({
2505
2508
  * @see https://tailwindcss.com/docs/border-width#between-children
2506
2509
  */
2507
2510
  "divide-y": [{
2508
- "divide-y": R()
2511
+ "divide-y": C()
2509
2512
  }],
2510
2513
  /**
2511
2514
  * Divide Width Y Reverse
@@ -2517,112 +2520,112 @@ const mr = ({
2517
2520
  * @see https://tailwindcss.com/docs/border-style
2518
2521
  */
2519
2522
  "border-style": [{
2520
- border: [...X(), "hidden", "none"]
2523
+ border: [...Z(), "hidden", "none"]
2521
2524
  }],
2522
2525
  /**
2523
2526
  * Divide Style
2524
2527
  * @see https://tailwindcss.com/docs/border-style#setting-the-divider-style
2525
2528
  */
2526
2529
  "divide-style": [{
2527
- divide: [...X(), "hidden", "none"]
2530
+ divide: [...Z(), "hidden", "none"]
2528
2531
  }],
2529
2532
  /**
2530
2533
  * Border Color
2531
2534
  * @see https://tailwindcss.com/docs/border-color
2532
2535
  */
2533
2536
  "border-color": [{
2534
- border: h()
2537
+ border: p()
2535
2538
  }],
2536
2539
  /**
2537
2540
  * Border Color X
2538
2541
  * @see https://tailwindcss.com/docs/border-color
2539
2542
  */
2540
2543
  "border-color-x": [{
2541
- "border-x": h()
2544
+ "border-x": p()
2542
2545
  }],
2543
2546
  /**
2544
2547
  * Border Color Y
2545
2548
  * @see https://tailwindcss.com/docs/border-color
2546
2549
  */
2547
2550
  "border-color-y": [{
2548
- "border-y": h()
2551
+ "border-y": p()
2549
2552
  }],
2550
2553
  /**
2551
2554
  * Border Color S
2552
2555
  * @see https://tailwindcss.com/docs/border-color
2553
2556
  */
2554
2557
  "border-color-s": [{
2555
- "border-s": h()
2558
+ "border-s": p()
2556
2559
  }],
2557
2560
  /**
2558
2561
  * Border Color E
2559
2562
  * @see https://tailwindcss.com/docs/border-color
2560
2563
  */
2561
2564
  "border-color-e": [{
2562
- "border-e": h()
2565
+ "border-e": p()
2563
2566
  }],
2564
2567
  /**
2565
2568
  * Border Color Top
2566
2569
  * @see https://tailwindcss.com/docs/border-color
2567
2570
  */
2568
2571
  "border-color-t": [{
2569
- "border-t": h()
2572
+ "border-t": p()
2570
2573
  }],
2571
2574
  /**
2572
2575
  * Border Color Right
2573
2576
  * @see https://tailwindcss.com/docs/border-color
2574
2577
  */
2575
2578
  "border-color-r": [{
2576
- "border-r": h()
2579
+ "border-r": p()
2577
2580
  }],
2578
2581
  /**
2579
2582
  * Border Color Bottom
2580
2583
  * @see https://tailwindcss.com/docs/border-color
2581
2584
  */
2582
2585
  "border-color-b": [{
2583
- "border-b": h()
2586
+ "border-b": p()
2584
2587
  }],
2585
2588
  /**
2586
2589
  * Border Color Left
2587
2590
  * @see https://tailwindcss.com/docs/border-color
2588
2591
  */
2589
2592
  "border-color-l": [{
2590
- "border-l": h()
2593
+ "border-l": p()
2591
2594
  }],
2592
2595
  /**
2593
2596
  * Divide Color
2594
2597
  * @see https://tailwindcss.com/docs/divide-color
2595
2598
  */
2596
2599
  "divide-color": [{
2597
- divide: h()
2600
+ divide: p()
2598
2601
  }],
2599
2602
  /**
2600
2603
  * Outline Style
2601
2604
  * @see https://tailwindcss.com/docs/outline-style
2602
2605
  */
2603
2606
  "outline-style": [{
2604
- outline: [...X(), "none", "hidden"]
2607
+ outline: [...Z(), "none", "hidden"]
2605
2608
  }],
2606
2609
  /**
2607
2610
  * Outline Offset
2608
2611
  * @see https://tailwindcss.com/docs/outline-offset
2609
2612
  */
2610
2613
  "outline-offset": [{
2611
- "outline-offset": [_, g, f]
2614
+ "outline-offset": [_, h, b]
2612
2615
  }],
2613
2616
  /**
2614
2617
  * Outline Width
2615
2618
  * @see https://tailwindcss.com/docs/outline-width
2616
2619
  */
2617
2620
  "outline-w": [{
2618
- outline: ["", _, ve, fe]
2621
+ outline: ["", _, ye, ge]
2619
2622
  }],
2620
2623
  /**
2621
2624
  * Outline Color
2622
2625
  * @see https://tailwindcss.com/docs/outline-color
2623
2626
  */
2624
2627
  "outline-color": [{
2625
- outline: h()
2628
+ outline: p()
2626
2629
  }],
2627
2630
  // ---------------
2628
2631
  // --- Effects ---
@@ -2636,9 +2639,9 @@ const mr = ({
2636
2639
  // Deprecated since Tailwind CSS v4.0.0
2637
2640
  "",
2638
2641
  "none",
2639
- A,
2640
- Te,
2641
- ke
2642
+ R,
2643
+ je,
2644
+ Te
2642
2645
  ]
2643
2646
  }],
2644
2647
  /**
@@ -2646,28 +2649,28 @@ const mr = ({
2646
2649
  * @see https://tailwindcss.com/docs/box-shadow#setting-the-shadow-color
2647
2650
  */
2648
2651
  "shadow-color": [{
2649
- shadow: h()
2652
+ shadow: p()
2650
2653
  }],
2651
2654
  /**
2652
2655
  * Inset Box Shadow
2653
2656
  * @see https://tailwindcss.com/docs/box-shadow#adding-an-inset-shadow
2654
2657
  */
2655
2658
  "inset-shadow": [{
2656
- "inset-shadow": ["none", L, Te, ke]
2659
+ "inset-shadow": ["none", L, je, Te]
2657
2660
  }],
2658
2661
  /**
2659
2662
  * Inset Box Shadow Color
2660
2663
  * @see https://tailwindcss.com/docs/box-shadow#setting-the-inset-shadow-color
2661
2664
  */
2662
2665
  "inset-shadow-color": [{
2663
- "inset-shadow": h()
2666
+ "inset-shadow": p()
2664
2667
  }],
2665
2668
  /**
2666
2669
  * Ring Width
2667
2670
  * @see https://tailwindcss.com/docs/box-shadow#adding-a-ring
2668
2671
  */
2669
2672
  "ring-w": [{
2670
- ring: R()
2673
+ ring: C()
2671
2674
  }],
2672
2675
  /**
2673
2676
  * Ring Width Inset
@@ -2681,7 +2684,7 @@ const mr = ({
2681
2684
  * @see https://tailwindcss.com/docs/box-shadow#setting-the-ring-color
2682
2685
  */
2683
2686
  "ring-color": [{
2684
- ring: h()
2687
+ ring: p()
2685
2688
  }],
2686
2689
  /**
2687
2690
  * Ring Offset Width
@@ -2690,7 +2693,7 @@ const mr = ({
2690
2693
  * @see https://github.com/tailwindlabs/tailwindcss/blob/v4.0.0/packages/tailwindcss/src/utilities.ts#L4158
2691
2694
  */
2692
2695
  "ring-offset-w": [{
2693
- "ring-offset": [_, fe]
2696
+ "ring-offset": [_, ge]
2694
2697
  }],
2695
2698
  /**
2696
2699
  * Ring Offset Color
@@ -2699,56 +2702,56 @@ const mr = ({
2699
2702
  * @see https://github.com/tailwindlabs/tailwindcss/blob/v4.0.0/packages/tailwindcss/src/utilities.ts#L4158
2700
2703
  */
2701
2704
  "ring-offset-color": [{
2702
- "ring-offset": h()
2705
+ "ring-offset": p()
2703
2706
  }],
2704
2707
  /**
2705
2708
  * Inset Ring Width
2706
2709
  * @see https://tailwindcss.com/docs/box-shadow#adding-an-inset-ring
2707
2710
  */
2708
2711
  "inset-ring-w": [{
2709
- "inset-ring": R()
2712
+ "inset-ring": C()
2710
2713
  }],
2711
2714
  /**
2712
2715
  * Inset Ring Color
2713
2716
  * @see https://tailwindcss.com/docs/box-shadow#setting-the-inset-ring-color
2714
2717
  */
2715
2718
  "inset-ring-color": [{
2716
- "inset-ring": h()
2719
+ "inset-ring": p()
2717
2720
  }],
2718
2721
  /**
2719
2722
  * Text Shadow
2720
2723
  * @see https://tailwindcss.com/docs/text-shadow
2721
2724
  */
2722
2725
  "text-shadow": [{
2723
- "text-shadow": ["none", M, Te, ke]
2726
+ "text-shadow": ["none", M, je, Te]
2724
2727
  }],
2725
2728
  /**
2726
2729
  * Text Shadow Color
2727
2730
  * @see https://tailwindcss.com/docs/text-shadow#setting-the-shadow-color
2728
2731
  */
2729
2732
  "text-shadow-color": [{
2730
- "text-shadow": h()
2733
+ "text-shadow": p()
2731
2734
  }],
2732
2735
  /**
2733
2736
  * Opacity
2734
2737
  * @see https://tailwindcss.com/docs/opacity
2735
2738
  */
2736
2739
  opacity: [{
2737
- opacity: [_, g, f]
2740
+ opacity: [_, h, b]
2738
2741
  }],
2739
2742
  /**
2740
2743
  * Mix Blend Mode
2741
2744
  * @see https://tailwindcss.com/docs/mix-blend-mode
2742
2745
  */
2743
2746
  "mix-blend": [{
2744
- "mix-blend": [...ae(), "plus-darker", "plus-lighter"]
2747
+ "mix-blend": [...ne(), "plus-darker", "plus-lighter"]
2745
2748
  }],
2746
2749
  /**
2747
2750
  * Background Blend Mode
2748
2751
  * @see https://tailwindcss.com/docs/background-blend-mode
2749
2752
  */
2750
2753
  "bg-blend": [{
2751
- "bg-blend": ae()
2754
+ "bg-blend": ne()
2752
2755
  }],
2753
2756
  /**
2754
2757
  * Mask Clip
@@ -2772,103 +2775,103 @@ const mr = ({
2772
2775
  "mask-linear": [_]
2773
2776
  }],
2774
2777
  "mask-image-linear-from-pos": [{
2775
- "mask-linear-from": C()
2778
+ "mask-linear-from": E()
2776
2779
  }],
2777
2780
  "mask-image-linear-to-pos": [{
2778
- "mask-linear-to": C()
2781
+ "mask-linear-to": E()
2779
2782
  }],
2780
2783
  "mask-image-linear-from-color": [{
2781
- "mask-linear-from": h()
2784
+ "mask-linear-from": p()
2782
2785
  }],
2783
2786
  "mask-image-linear-to-color": [{
2784
- "mask-linear-to": h()
2787
+ "mask-linear-to": p()
2785
2788
  }],
2786
2789
  "mask-image-t-from-pos": [{
2787
- "mask-t-from": C()
2790
+ "mask-t-from": E()
2788
2791
  }],
2789
2792
  "mask-image-t-to-pos": [{
2790
- "mask-t-to": C()
2793
+ "mask-t-to": E()
2791
2794
  }],
2792
2795
  "mask-image-t-from-color": [{
2793
- "mask-t-from": h()
2796
+ "mask-t-from": p()
2794
2797
  }],
2795
2798
  "mask-image-t-to-color": [{
2796
- "mask-t-to": h()
2799
+ "mask-t-to": p()
2797
2800
  }],
2798
2801
  "mask-image-r-from-pos": [{
2799
- "mask-r-from": C()
2802
+ "mask-r-from": E()
2800
2803
  }],
2801
2804
  "mask-image-r-to-pos": [{
2802
- "mask-r-to": C()
2805
+ "mask-r-to": E()
2803
2806
  }],
2804
2807
  "mask-image-r-from-color": [{
2805
- "mask-r-from": h()
2808
+ "mask-r-from": p()
2806
2809
  }],
2807
2810
  "mask-image-r-to-color": [{
2808
- "mask-r-to": h()
2811
+ "mask-r-to": p()
2809
2812
  }],
2810
2813
  "mask-image-b-from-pos": [{
2811
- "mask-b-from": C()
2814
+ "mask-b-from": E()
2812
2815
  }],
2813
2816
  "mask-image-b-to-pos": [{
2814
- "mask-b-to": C()
2817
+ "mask-b-to": E()
2815
2818
  }],
2816
2819
  "mask-image-b-from-color": [{
2817
- "mask-b-from": h()
2820
+ "mask-b-from": p()
2818
2821
  }],
2819
2822
  "mask-image-b-to-color": [{
2820
- "mask-b-to": h()
2823
+ "mask-b-to": p()
2821
2824
  }],
2822
2825
  "mask-image-l-from-pos": [{
2823
- "mask-l-from": C()
2826
+ "mask-l-from": E()
2824
2827
  }],
2825
2828
  "mask-image-l-to-pos": [{
2826
- "mask-l-to": C()
2829
+ "mask-l-to": E()
2827
2830
  }],
2828
2831
  "mask-image-l-from-color": [{
2829
- "mask-l-from": h()
2832
+ "mask-l-from": p()
2830
2833
  }],
2831
2834
  "mask-image-l-to-color": [{
2832
- "mask-l-to": h()
2835
+ "mask-l-to": p()
2833
2836
  }],
2834
2837
  "mask-image-x-from-pos": [{
2835
- "mask-x-from": C()
2838
+ "mask-x-from": E()
2836
2839
  }],
2837
2840
  "mask-image-x-to-pos": [{
2838
- "mask-x-to": C()
2841
+ "mask-x-to": E()
2839
2842
  }],
2840
2843
  "mask-image-x-from-color": [{
2841
- "mask-x-from": h()
2844
+ "mask-x-from": p()
2842
2845
  }],
2843
2846
  "mask-image-x-to-color": [{
2844
- "mask-x-to": h()
2847
+ "mask-x-to": p()
2845
2848
  }],
2846
2849
  "mask-image-y-from-pos": [{
2847
- "mask-y-from": C()
2850
+ "mask-y-from": E()
2848
2851
  }],
2849
2852
  "mask-image-y-to-pos": [{
2850
- "mask-y-to": C()
2853
+ "mask-y-to": E()
2851
2854
  }],
2852
2855
  "mask-image-y-from-color": [{
2853
- "mask-y-from": h()
2856
+ "mask-y-from": p()
2854
2857
  }],
2855
2858
  "mask-image-y-to-color": [{
2856
- "mask-y-to": h()
2859
+ "mask-y-to": p()
2857
2860
  }],
2858
2861
  "mask-image-radial": [{
2859
- "mask-radial": [g, f]
2862
+ "mask-radial": [h, b]
2860
2863
  }],
2861
2864
  "mask-image-radial-from-pos": [{
2862
- "mask-radial-from": C()
2865
+ "mask-radial-from": E()
2863
2866
  }],
2864
2867
  "mask-image-radial-to-pos": [{
2865
- "mask-radial-to": C()
2868
+ "mask-radial-to": E()
2866
2869
  }],
2867
2870
  "mask-image-radial-from-color": [{
2868
- "mask-radial-from": h()
2871
+ "mask-radial-from": p()
2869
2872
  }],
2870
2873
  "mask-image-radial-to-color": [{
2871
- "mask-radial-to": h()
2874
+ "mask-radial-to": p()
2872
2875
  }],
2873
2876
  "mask-image-radial-shape": [{
2874
2877
  "mask-radial": ["circle", "ellipse"]
@@ -2886,16 +2889,16 @@ const mr = ({
2886
2889
  "mask-conic": [_]
2887
2890
  }],
2888
2891
  "mask-image-conic-from-pos": [{
2889
- "mask-conic-from": C()
2892
+ "mask-conic-from": E()
2890
2893
  }],
2891
2894
  "mask-image-conic-to-pos": [{
2892
- "mask-conic-to": C()
2895
+ "mask-conic-to": E()
2893
2896
  }],
2894
2897
  "mask-image-conic-from-color": [{
2895
- "mask-conic-from": h()
2898
+ "mask-conic-from": p()
2896
2899
  }],
2897
2900
  "mask-image-conic-to-color": [{
2898
- "mask-conic-to": h()
2901
+ "mask-conic-to": p()
2899
2902
  }],
2900
2903
  /**
2901
2904
  * Mask Mode
@@ -2916,14 +2919,14 @@ const mr = ({
2916
2919
  * @see https://tailwindcss.com/docs/mask-position
2917
2920
  */
2918
2921
  "mask-position": [{
2919
- mask: G()
2922
+ mask: X()
2920
2923
  }],
2921
2924
  /**
2922
2925
  * Mask Repeat
2923
2926
  * @see https://tailwindcss.com/docs/mask-repeat
2924
2927
  */
2925
2928
  "mask-repeat": [{
2926
- mask: te()
2929
+ mask: B()
2927
2930
  }],
2928
2931
  /**
2929
2932
  * Mask Size
@@ -2944,7 +2947,7 @@ const mr = ({
2944
2947
  * @see https://tailwindcss.com/docs/mask-image
2945
2948
  */
2946
2949
  "mask-image": [{
2947
- mask: ["none", g, f]
2950
+ mask: ["none", h, b]
2948
2951
  }],
2949
2952
  // ---------------
2950
2953
  // --- Filters ---
@@ -2958,8 +2961,8 @@ const mr = ({
2958
2961
  // Deprecated since Tailwind CSS v3.0.0
2959
2962
  "",
2960
2963
  "none",
2961
- g,
2962
- f
2964
+ h,
2965
+ b
2963
2966
  ]
2964
2967
  }],
2965
2968
  /**
@@ -2974,14 +2977,14 @@ const mr = ({
2974
2977
  * @see https://tailwindcss.com/docs/brightness
2975
2978
  */
2976
2979
  brightness: [{
2977
- brightness: [_, g, f]
2980
+ brightness: [_, h, b]
2978
2981
  }],
2979
2982
  /**
2980
2983
  * Contrast
2981
2984
  * @see https://tailwindcss.com/docs/contrast
2982
2985
  */
2983
2986
  contrast: [{
2984
- contrast: [_, g, f]
2987
+ contrast: [_, h, b]
2985
2988
  }],
2986
2989
  /**
2987
2990
  * Drop Shadow
@@ -2992,9 +2995,9 @@ const mr = ({
2992
2995
  // Deprecated since Tailwind CSS v4.0.0
2993
2996
  "",
2994
2997
  "none",
2995
- D,
2996
- Te,
2997
- ke
2998
+ q,
2999
+ je,
3000
+ Te
2998
3001
  ]
2999
3002
  }],
3000
3003
  /**
@@ -3002,42 +3005,42 @@ const mr = ({
3002
3005
  * @see https://tailwindcss.com/docs/filter-drop-shadow#setting-the-shadow-color
3003
3006
  */
3004
3007
  "drop-shadow-color": [{
3005
- "drop-shadow": h()
3008
+ "drop-shadow": p()
3006
3009
  }],
3007
3010
  /**
3008
3011
  * Grayscale
3009
3012
  * @see https://tailwindcss.com/docs/grayscale
3010
3013
  */
3011
3014
  grayscale: [{
3012
- grayscale: ["", _, g, f]
3015
+ grayscale: ["", _, h, b]
3013
3016
  }],
3014
3017
  /**
3015
3018
  * Hue Rotate
3016
3019
  * @see https://tailwindcss.com/docs/hue-rotate
3017
3020
  */
3018
3021
  "hue-rotate": [{
3019
- "hue-rotate": [_, g, f]
3022
+ "hue-rotate": [_, h, b]
3020
3023
  }],
3021
3024
  /**
3022
3025
  * Invert
3023
3026
  * @see https://tailwindcss.com/docs/invert
3024
3027
  */
3025
3028
  invert: [{
3026
- invert: ["", _, g, f]
3029
+ invert: ["", _, h, b]
3027
3030
  }],
3028
3031
  /**
3029
3032
  * Saturate
3030
3033
  * @see https://tailwindcss.com/docs/saturate
3031
3034
  */
3032
3035
  saturate: [{
3033
- saturate: [_, g, f]
3036
+ saturate: [_, h, b]
3034
3037
  }],
3035
3038
  /**
3036
3039
  * Sepia
3037
3040
  * @see https://tailwindcss.com/docs/sepia
3038
3041
  */
3039
3042
  sepia: [{
3040
- sepia: ["", _, g, f]
3043
+ sepia: ["", _, h, b]
3041
3044
  }],
3042
3045
  /**
3043
3046
  * Backdrop Filter
@@ -3048,8 +3051,8 @@ const mr = ({
3048
3051
  // Deprecated since Tailwind CSS v3.0.0
3049
3052
  "",
3050
3053
  "none",
3051
- g,
3052
- f
3054
+ h,
3055
+ b
3053
3056
  ]
3054
3057
  }],
3055
3058
  /**
@@ -3064,56 +3067,56 @@ const mr = ({
3064
3067
  * @see https://tailwindcss.com/docs/backdrop-brightness
3065
3068
  */
3066
3069
  "backdrop-brightness": [{
3067
- "backdrop-brightness": [_, g, f]
3070
+ "backdrop-brightness": [_, h, b]
3068
3071
  }],
3069
3072
  /**
3070
3073
  * Backdrop Contrast
3071
3074
  * @see https://tailwindcss.com/docs/backdrop-contrast
3072
3075
  */
3073
3076
  "backdrop-contrast": [{
3074
- "backdrop-contrast": [_, g, f]
3077
+ "backdrop-contrast": [_, h, b]
3075
3078
  }],
3076
3079
  /**
3077
3080
  * Backdrop Grayscale
3078
3081
  * @see https://tailwindcss.com/docs/backdrop-grayscale
3079
3082
  */
3080
3083
  "backdrop-grayscale": [{
3081
- "backdrop-grayscale": ["", _, g, f]
3084
+ "backdrop-grayscale": ["", _, h, b]
3082
3085
  }],
3083
3086
  /**
3084
3087
  * Backdrop Hue Rotate
3085
3088
  * @see https://tailwindcss.com/docs/backdrop-hue-rotate
3086
3089
  */
3087
3090
  "backdrop-hue-rotate": [{
3088
- "backdrop-hue-rotate": [_, g, f]
3091
+ "backdrop-hue-rotate": [_, h, b]
3089
3092
  }],
3090
3093
  /**
3091
3094
  * Backdrop Invert
3092
3095
  * @see https://tailwindcss.com/docs/backdrop-invert
3093
3096
  */
3094
3097
  "backdrop-invert": [{
3095
- "backdrop-invert": ["", _, g, f]
3098
+ "backdrop-invert": ["", _, h, b]
3096
3099
  }],
3097
3100
  /**
3098
3101
  * Backdrop Opacity
3099
3102
  * @see https://tailwindcss.com/docs/backdrop-opacity
3100
3103
  */
3101
3104
  "backdrop-opacity": [{
3102
- "backdrop-opacity": [_, g, f]
3105
+ "backdrop-opacity": [_, h, b]
3103
3106
  }],
3104
3107
  /**
3105
3108
  * Backdrop Saturate
3106
3109
  * @see https://tailwindcss.com/docs/backdrop-saturate
3107
3110
  */
3108
3111
  "backdrop-saturate": [{
3109
- "backdrop-saturate": [_, g, f]
3112
+ "backdrop-saturate": [_, h, b]
3110
3113
  }],
3111
3114
  /**
3112
3115
  * Backdrop Sepia
3113
3116
  * @see https://tailwindcss.com/docs/backdrop-sepia
3114
3117
  */
3115
3118
  "backdrop-sepia": [{
3116
- "backdrop-sepia": ["", _, g, f]
3119
+ "backdrop-sepia": ["", _, h, b]
3117
3120
  }],
3118
3121
  // --------------
3119
3122
  // --- Tables ---
@@ -3130,21 +3133,21 @@ const mr = ({
3130
3133
  * @see https://tailwindcss.com/docs/border-spacing
3131
3134
  */
3132
3135
  "border-spacing": [{
3133
- "border-spacing": p()
3136
+ "border-spacing": x()
3134
3137
  }],
3135
3138
  /**
3136
3139
  * Border Spacing X
3137
3140
  * @see https://tailwindcss.com/docs/border-spacing
3138
3141
  */
3139
3142
  "border-spacing-x": [{
3140
- "border-spacing-x": p()
3143
+ "border-spacing-x": x()
3141
3144
  }],
3142
3145
  /**
3143
3146
  * Border Spacing Y
3144
3147
  * @see https://tailwindcss.com/docs/border-spacing
3145
3148
  */
3146
3149
  "border-spacing-y": [{
3147
- "border-spacing-y": p()
3150
+ "border-spacing-y": x()
3148
3151
  }],
3149
3152
  /**
3150
3153
  * Table Layout
@@ -3168,7 +3171,7 @@ const mr = ({
3168
3171
  * @see https://tailwindcss.com/docs/transition-property
3169
3172
  */
3170
3173
  transition: [{
3171
- transition: ["", "all", "colors", "opacity", "shadow", "transform", "none", g, f]
3174
+ transition: ["", "all", "colors", "opacity", "shadow", "transform", "none", h, b]
3172
3175
  }],
3173
3176
  /**
3174
3177
  * Transition Behavior
@@ -3182,28 +3185,28 @@ const mr = ({
3182
3185
  * @see https://tailwindcss.com/docs/transition-duration
3183
3186
  */
3184
3187
  duration: [{
3185
- duration: [_, "initial", g, f]
3188
+ duration: [_, "initial", h, b]
3186
3189
  }],
3187
3190
  /**
3188
3191
  * Transition Timing Function
3189
3192
  * @see https://tailwindcss.com/docs/transition-timing-function
3190
3193
  */
3191
3194
  ease: [{
3192
- ease: ["linear", "initial", V, g, f]
3195
+ ease: ["linear", "initial", H, h, b]
3193
3196
  }],
3194
3197
  /**
3195
3198
  * Transition Delay
3196
3199
  * @see https://tailwindcss.com/docs/transition-delay
3197
3200
  */
3198
3201
  delay: [{
3199
- delay: [_, g, f]
3202
+ delay: [_, h, b]
3200
3203
  }],
3201
3204
  /**
3202
3205
  * Animation
3203
3206
  * @see https://tailwindcss.com/docs/animation
3204
3207
  */
3205
3208
  animate: [{
3206
- animate: ["none", B, g, f]
3209
+ animate: ["none", $, h, b]
3207
3210
  }],
3208
3211
  // ------------------
3209
3212
  // --- Transforms ---
@@ -3220,70 +3223,70 @@ const mr = ({
3220
3223
  * @see https://tailwindcss.com/docs/perspective
3221
3224
  */
3222
3225
  perspective: [{
3223
- perspective: [U, g, f]
3226
+ perspective: [F, h, b]
3224
3227
  }],
3225
3228
  /**
3226
3229
  * Perspective Origin
3227
3230
  * @see https://tailwindcss.com/docs/perspective-origin
3228
3231
  */
3229
3232
  "perspective-origin": [{
3230
- "perspective-origin": Y()
3233
+ "perspective-origin": V()
3231
3234
  }],
3232
3235
  /**
3233
3236
  * Rotate
3234
3237
  * @see https://tailwindcss.com/docs/rotate
3235
3238
  */
3236
3239
  rotate: [{
3237
- rotate: ee()
3240
+ rotate: te()
3238
3241
  }],
3239
3242
  /**
3240
3243
  * Rotate X
3241
3244
  * @see https://tailwindcss.com/docs/rotate
3242
3245
  */
3243
3246
  "rotate-x": [{
3244
- "rotate-x": ee()
3247
+ "rotate-x": te()
3245
3248
  }],
3246
3249
  /**
3247
3250
  * Rotate Y
3248
3251
  * @see https://tailwindcss.com/docs/rotate
3249
3252
  */
3250
3253
  "rotate-y": [{
3251
- "rotate-y": ee()
3254
+ "rotate-y": te()
3252
3255
  }],
3253
3256
  /**
3254
3257
  * Rotate Z
3255
3258
  * @see https://tailwindcss.com/docs/rotate
3256
3259
  */
3257
3260
  "rotate-z": [{
3258
- "rotate-z": ee()
3261
+ "rotate-z": te()
3259
3262
  }],
3260
3263
  /**
3261
3264
  * Scale
3262
3265
  * @see https://tailwindcss.com/docs/scale
3263
3266
  */
3264
3267
  scale: [{
3265
- scale: re()
3268
+ scale: oe()
3266
3269
  }],
3267
3270
  /**
3268
3271
  * Scale X
3269
3272
  * @see https://tailwindcss.com/docs/scale
3270
3273
  */
3271
3274
  "scale-x": [{
3272
- "scale-x": re()
3275
+ "scale-x": oe()
3273
3276
  }],
3274
3277
  /**
3275
3278
  * Scale Y
3276
3279
  * @see https://tailwindcss.com/docs/scale
3277
3280
  */
3278
3281
  "scale-y": [{
3279
- "scale-y": re()
3282
+ "scale-y": oe()
3280
3283
  }],
3281
3284
  /**
3282
3285
  * Scale Z
3283
3286
  * @see https://tailwindcss.com/docs/scale
3284
3287
  */
3285
3288
  "scale-z": [{
3286
- "scale-z": re()
3289
+ "scale-z": oe()
3287
3290
  }],
3288
3291
  /**
3289
3292
  * Scale 3D
@@ -3295,35 +3298,35 @@ const mr = ({
3295
3298
  * @see https://tailwindcss.com/docs/skew
3296
3299
  */
3297
3300
  skew: [{
3298
- skew: ie()
3301
+ skew: le()
3299
3302
  }],
3300
3303
  /**
3301
3304
  * Skew X
3302
3305
  * @see https://tailwindcss.com/docs/skew
3303
3306
  */
3304
3307
  "skew-x": [{
3305
- "skew-x": ie()
3308
+ "skew-x": le()
3306
3309
  }],
3307
3310
  /**
3308
3311
  * Skew Y
3309
3312
  * @see https://tailwindcss.com/docs/skew
3310
3313
  */
3311
3314
  "skew-y": [{
3312
- "skew-y": ie()
3315
+ "skew-y": le()
3313
3316
  }],
3314
3317
  /**
3315
3318
  * Transform
3316
3319
  * @see https://tailwindcss.com/docs/transform
3317
3320
  */
3318
3321
  transform: [{
3319
- transform: [g, f, "", "none", "gpu", "cpu"]
3322
+ transform: [h, b, "", "none", "gpu", "cpu"]
3320
3323
  }],
3321
3324
  /**
3322
3325
  * Transform Origin
3323
3326
  * @see https://tailwindcss.com/docs/transform-origin
3324
3327
  */
3325
3328
  "transform-origin": [{
3326
- origin: Y()
3329
+ origin: V()
3327
3330
  }],
3328
3331
  /**
3329
3332
  * Transform Style
@@ -3337,28 +3340,28 @@ const mr = ({
3337
3340
  * @see https://tailwindcss.com/docs/translate
3338
3341
  */
3339
3342
  translate: [{
3340
- translate: P()
3343
+ translate: O()
3341
3344
  }],
3342
3345
  /**
3343
3346
  * Translate X
3344
3347
  * @see https://tailwindcss.com/docs/translate
3345
3348
  */
3346
3349
  "translate-x": [{
3347
- "translate-x": P()
3350
+ "translate-x": O()
3348
3351
  }],
3349
3352
  /**
3350
3353
  * Translate Y
3351
3354
  * @see https://tailwindcss.com/docs/translate
3352
3355
  */
3353
3356
  "translate-y": [{
3354
- "translate-y": P()
3357
+ "translate-y": O()
3355
3358
  }],
3356
3359
  /**
3357
3360
  * Translate Z
3358
3361
  * @see https://tailwindcss.com/docs/translate
3359
3362
  */
3360
3363
  "translate-z": [{
3361
- "translate-z": P()
3364
+ "translate-z": O()
3362
3365
  }],
3363
3366
  /**
3364
3367
  * Translate None
@@ -3373,7 +3376,7 @@ const mr = ({
3373
3376
  * @see https://tailwindcss.com/docs/accent-color
3374
3377
  */
3375
3378
  accent: [{
3376
- accent: h()
3379
+ accent: p()
3377
3380
  }],
3378
3381
  /**
3379
3382
  * Appearance
@@ -3387,7 +3390,7 @@ const mr = ({
3387
3390
  * @see https://tailwindcss.com/docs/just-in-time-mode#caret-color-utilities
3388
3391
  */
3389
3392
  "caret-color": [{
3390
- caret: h()
3393
+ caret: p()
3391
3394
  }],
3392
3395
  /**
3393
3396
  * Color Scheme
@@ -3401,7 +3404,7 @@ const mr = ({
3401
3404
  * @see https://tailwindcss.com/docs/cursor
3402
3405
  */
3403
3406
  cursor: [{
3404
- 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", g, f]
3407
+ 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", h, b]
3405
3408
  }],
3406
3409
  /**
3407
3410
  * Field Sizing
@@ -3436,126 +3439,126 @@ const mr = ({
3436
3439
  * @see https://tailwindcss.com/docs/scroll-margin
3437
3440
  */
3438
3441
  "scroll-m": [{
3439
- "scroll-m": p()
3442
+ "scroll-m": x()
3440
3443
  }],
3441
3444
  /**
3442
3445
  * Scroll Margin X
3443
3446
  * @see https://tailwindcss.com/docs/scroll-margin
3444
3447
  */
3445
3448
  "scroll-mx": [{
3446
- "scroll-mx": p()
3449
+ "scroll-mx": x()
3447
3450
  }],
3448
3451
  /**
3449
3452
  * Scroll Margin Y
3450
3453
  * @see https://tailwindcss.com/docs/scroll-margin
3451
3454
  */
3452
3455
  "scroll-my": [{
3453
- "scroll-my": p()
3456
+ "scroll-my": x()
3454
3457
  }],
3455
3458
  /**
3456
3459
  * Scroll Margin Start
3457
3460
  * @see https://tailwindcss.com/docs/scroll-margin
3458
3461
  */
3459
3462
  "scroll-ms": [{
3460
- "scroll-ms": p()
3463
+ "scroll-ms": x()
3461
3464
  }],
3462
3465
  /**
3463
3466
  * Scroll Margin End
3464
3467
  * @see https://tailwindcss.com/docs/scroll-margin
3465
3468
  */
3466
3469
  "scroll-me": [{
3467
- "scroll-me": p()
3470
+ "scroll-me": x()
3468
3471
  }],
3469
3472
  /**
3470
3473
  * Scroll Margin Top
3471
3474
  * @see https://tailwindcss.com/docs/scroll-margin
3472
3475
  */
3473
3476
  "scroll-mt": [{
3474
- "scroll-mt": p()
3477
+ "scroll-mt": x()
3475
3478
  }],
3476
3479
  /**
3477
3480
  * Scroll Margin Right
3478
3481
  * @see https://tailwindcss.com/docs/scroll-margin
3479
3482
  */
3480
3483
  "scroll-mr": [{
3481
- "scroll-mr": p()
3484
+ "scroll-mr": x()
3482
3485
  }],
3483
3486
  /**
3484
3487
  * Scroll Margin Bottom
3485
3488
  * @see https://tailwindcss.com/docs/scroll-margin
3486
3489
  */
3487
3490
  "scroll-mb": [{
3488
- "scroll-mb": p()
3491
+ "scroll-mb": x()
3489
3492
  }],
3490
3493
  /**
3491
3494
  * Scroll Margin Left
3492
3495
  * @see https://tailwindcss.com/docs/scroll-margin
3493
3496
  */
3494
3497
  "scroll-ml": [{
3495
- "scroll-ml": p()
3498
+ "scroll-ml": x()
3496
3499
  }],
3497
3500
  /**
3498
3501
  * Scroll Padding
3499
3502
  * @see https://tailwindcss.com/docs/scroll-padding
3500
3503
  */
3501
3504
  "scroll-p": [{
3502
- "scroll-p": p()
3505
+ "scroll-p": x()
3503
3506
  }],
3504
3507
  /**
3505
3508
  * Scroll Padding X
3506
3509
  * @see https://tailwindcss.com/docs/scroll-padding
3507
3510
  */
3508
3511
  "scroll-px": [{
3509
- "scroll-px": p()
3512
+ "scroll-px": x()
3510
3513
  }],
3511
3514
  /**
3512
3515
  * Scroll Padding Y
3513
3516
  * @see https://tailwindcss.com/docs/scroll-padding
3514
3517
  */
3515
3518
  "scroll-py": [{
3516
- "scroll-py": p()
3519
+ "scroll-py": x()
3517
3520
  }],
3518
3521
  /**
3519
3522
  * Scroll Padding Start
3520
3523
  * @see https://tailwindcss.com/docs/scroll-padding
3521
3524
  */
3522
3525
  "scroll-ps": [{
3523
- "scroll-ps": p()
3526
+ "scroll-ps": x()
3524
3527
  }],
3525
3528
  /**
3526
3529
  * Scroll Padding End
3527
3530
  * @see https://tailwindcss.com/docs/scroll-padding
3528
3531
  */
3529
3532
  "scroll-pe": [{
3530
- "scroll-pe": p()
3533
+ "scroll-pe": x()
3531
3534
  }],
3532
3535
  /**
3533
3536
  * Scroll Padding Top
3534
3537
  * @see https://tailwindcss.com/docs/scroll-padding
3535
3538
  */
3536
3539
  "scroll-pt": [{
3537
- "scroll-pt": p()
3540
+ "scroll-pt": x()
3538
3541
  }],
3539
3542
  /**
3540
3543
  * Scroll Padding Right
3541
3544
  * @see https://tailwindcss.com/docs/scroll-padding
3542
3545
  */
3543
3546
  "scroll-pr": [{
3544
- "scroll-pr": p()
3547
+ "scroll-pr": x()
3545
3548
  }],
3546
3549
  /**
3547
3550
  * Scroll Padding Bottom
3548
3551
  * @see https://tailwindcss.com/docs/scroll-padding
3549
3552
  */
3550
3553
  "scroll-pb": [{
3551
- "scroll-pb": p()
3554
+ "scroll-pb": x()
3552
3555
  }],
3553
3556
  /**
3554
3557
  * Scroll Padding Left
3555
3558
  * @see https://tailwindcss.com/docs/scroll-padding
3556
3559
  */
3557
3560
  "scroll-pl": [{
3558
- "scroll-pl": p()
3561
+ "scroll-pl": x()
3559
3562
  }],
3560
3563
  /**
3561
3564
  * Scroll Snap Align
@@ -3623,7 +3626,7 @@ const mr = ({
3623
3626
  * @see https://tailwindcss.com/docs/will-change
3624
3627
  */
3625
3628
  "will-change": [{
3626
- "will-change": ["auto", "scroll", "contents", "transform", g, f]
3629
+ "will-change": ["auto", "scroll", "contents", "transform", h, b]
3627
3630
  }],
3628
3631
  // -----------
3629
3632
  // --- SVG ---
@@ -3633,21 +3636,21 @@ const mr = ({
3633
3636
  * @see https://tailwindcss.com/docs/fill
3634
3637
  */
3635
3638
  fill: [{
3636
- fill: ["none", ...h()]
3639
+ fill: ["none", ...p()]
3637
3640
  }],
3638
3641
  /**
3639
3642
  * Stroke Width
3640
3643
  * @see https://tailwindcss.com/docs/stroke-width
3641
3644
  */
3642
3645
  "stroke-w": [{
3643
- stroke: [_, ve, fe, Re]
3646
+ stroke: [_, ye, ge, Ae]
3644
3647
  }],
3645
3648
  /**
3646
3649
  * Stroke
3647
3650
  * @see https://tailwindcss.com/docs/stroke
3648
3651
  */
3649
3652
  stroke: [{
3650
- stroke: ["none", ...h()]
3653
+ stroke: ["none", ...p()]
3651
3654
  }],
3652
3655
  // ---------------------
3653
3656
  // --- Accessibility ---
@@ -3715,231 +3718,231 @@ const mr = ({
3715
3718
  },
3716
3719
  orderSensitiveModifiers: ["*", "**", "after", "backdrop", "before", "details-content", "file", "first-letter", "first-line", "marker", "placeholder", "selection"]
3717
3720
  };
3718
- }, rn = /* @__PURE__ */ Or(tn);
3719
- function St(e) {
3721
+ }, nn = /* @__PURE__ */ Pr(rn);
3722
+ function Rt(e) {
3720
3723
  var t, r, n = "";
3721
3724
  if (typeof e == "string" || typeof e == "number") n += e;
3722
3725
  else if (typeof e == "object") if (Array.isArray(e)) {
3723
- var s = e.length;
3724
- for (t = 0; t < s; t++) e[t] && (r = St(e[t])) && (n && (n += " "), n += r);
3726
+ var a = e.length;
3727
+ for (t = 0; t < a; t++) e[t] && (r = Rt(e[t])) && (n && (n += " "), n += r);
3725
3728
  } else for (r in e) e[r] && (n && (n += " "), n += r);
3726
3729
  return n;
3727
3730
  }
3728
- function nn() {
3729
- for (var e, t, r = 0, n = "", s = arguments.length; r < s; r++) (e = arguments[r]) && (t = St(e)) && (n && (n += " "), n += t);
3731
+ function on() {
3732
+ for (var e, t, r = 0, n = "", a = arguments.length; r < a; r++) (e = arguments[r]) && (t = Rt(e)) && (n && (n += " "), n += t);
3730
3733
  return n;
3731
3734
  }
3732
- function Ae(...e) {
3733
- return rn(nn(e));
3735
+ function Ee(...e) {
3736
+ return nn(on(e));
3734
3737
  }
3735
- var Ee, Ze;
3736
- function Rt() {
3737
- if (Ze) return Ee;
3738
- Ze = 1;
3738
+ var _e, et;
3739
+ function At() {
3740
+ if (et) return _e;
3741
+ et = 1;
3739
3742
  function e(t) {
3740
3743
  var r = typeof t;
3741
3744
  return t != null && (r == "object" || r == "function");
3742
3745
  }
3743
- return Ee = e, Ee;
3744
- }
3745
- var _e, et;
3746
- function on() {
3747
- if (et) return _e;
3748
- et = 1;
3749
- var e = typeof ye == "object" && ye && ye.Object === Object && ye;
3750
3746
  return _e = e, _e;
3751
3747
  }
3752
3748
  var Ne, tt;
3753
- function At() {
3749
+ function sn() {
3754
3750
  if (tt) return Ne;
3755
3751
  tt = 1;
3756
- var e = on(), t = typeof self == "object" && self && self.Object === Object && self, r = e || t || Function("return this")();
3757
- return Ne = r, Ne;
3752
+ var e = typeof we == "object" && we && we.Object === Object && we;
3753
+ return Ne = e, Ne;
3758
3754
  }
3759
3755
  var Ie, rt;
3760
- function sn() {
3756
+ function Et() {
3761
3757
  if (rt) return Ie;
3762
3758
  rt = 1;
3763
- var e = At(), t = function() {
3764
- return e.Date.now();
3765
- };
3766
- return Ie = t, Ie;
3759
+ var e = sn(), t = typeof self == "object" && self && self.Object === Object && self, r = e || t || Function("return this")();
3760
+ return Ie = r, Ie;
3767
3761
  }
3768
3762
  var Le, nt;
3769
3763
  function an() {
3770
3764
  if (nt) return Le;
3771
3765
  nt = 1;
3772
- var e = /\s/;
3773
- function t(r) {
3774
- for (var n = r.length; n-- && e.test(r.charAt(n)); )
3775
- ;
3776
- return n;
3777
- }
3766
+ var e = Et(), t = function() {
3767
+ return e.Date.now();
3768
+ };
3778
3769
  return Le = t, Le;
3779
3770
  }
3780
3771
  var ze, ot;
3781
3772
  function ln() {
3782
3773
  if (ot) return ze;
3783
3774
  ot = 1;
3784
- var e = an(), t = /^\s+/;
3785
- function r(n) {
3786
- return n && n.slice(0, e(n) + 1).replace(t, "");
3775
+ var e = /\s/;
3776
+ function t(r) {
3777
+ for (var n = r.length; n-- && e.test(r.charAt(n)); )
3778
+ ;
3779
+ return n;
3787
3780
  }
3788
- return ze = r, ze;
3781
+ return ze = t, ze;
3789
3782
  }
3790
3783
  var Oe, st;
3791
- function Et() {
3784
+ function cn() {
3792
3785
  if (st) return Oe;
3793
3786
  st = 1;
3794
- var e = At(), t = e.Symbol;
3795
- return Oe = t, Oe;
3787
+ var e = ln(), t = /^\s+/;
3788
+ function r(n) {
3789
+ return n && n.slice(0, e(n) + 1).replace(t, "");
3790
+ }
3791
+ return Oe = r, Oe;
3796
3792
  }
3797
3793
  var Pe, at;
3798
- function cn() {
3794
+ function _t() {
3799
3795
  if (at) return Pe;
3800
3796
  at = 1;
3801
- var e = Et(), t = Object.prototype, r = t.hasOwnProperty, n = t.toString, s = e ? e.toStringTag : void 0;
3802
- function d(l) {
3803
- var a = r.call(l, s), u = l[s];
3804
- try {
3805
- l[s] = void 0;
3806
- var m = !0;
3807
- } catch {
3808
- }
3809
- var A = n.call(l);
3810
- return m && (a ? l[s] = u : delete l[s]), A;
3811
- }
3812
- return Pe = d, Pe;
3797
+ var e = Et(), t = e.Symbol;
3798
+ return Pe = t, Pe;
3813
3799
  }
3814
3800
  var Me, it;
3815
3801
  function dn() {
3816
3802
  if (it) return Me;
3817
3803
  it = 1;
3818
- var e = Object.prototype, t = e.toString;
3819
- function r(n) {
3820
- return t.call(n);
3804
+ var e = _t(), t = Object.prototype, r = t.hasOwnProperty, n = t.toString, a = e ? e.toStringTag : void 0;
3805
+ function c(l) {
3806
+ var s = r.call(l, a), m = l[a];
3807
+ try {
3808
+ l[a] = void 0;
3809
+ var f = !0;
3810
+ } catch {
3811
+ }
3812
+ var R = n.call(l);
3813
+ return f && (s ? l[a] = m : delete l[a]), R;
3821
3814
  }
3822
- return Me = r, Me;
3815
+ return Me = c, Me;
3823
3816
  }
3824
3817
  var qe, lt;
3825
3818
  function un() {
3826
3819
  if (lt) return qe;
3827
3820
  lt = 1;
3828
- var e = Et(), t = cn(), r = dn(), n = "[object Null]", s = "[object Undefined]", d = e ? e.toStringTag : void 0;
3829
- function l(a) {
3830
- return a == null ? a === void 0 ? s : n : d && d in Object(a) ? t(a) : r(a);
3821
+ var e = Object.prototype, t = e.toString;
3822
+ function r(n) {
3823
+ return t.call(n);
3831
3824
  }
3832
- return qe = l, qe;
3825
+ return qe = r, qe;
3833
3826
  }
3834
3827
  var De, ct;
3835
3828
  function mn() {
3836
3829
  if (ct) return De;
3837
3830
  ct = 1;
3838
- function e(t) {
3839
- return t != null && typeof t == "object";
3831
+ var e = _t(), t = dn(), r = un(), n = "[object Null]", a = "[object Undefined]", c = e ? e.toStringTag : void 0;
3832
+ function l(s) {
3833
+ return s == null ? s === void 0 ? a : n : c && c in Object(s) ? t(s) : r(s);
3840
3834
  }
3841
- return De = e, De;
3835
+ return De = l, De;
3842
3836
  }
3843
3837
  var Fe, dt;
3844
3838
  function fn() {
3845
3839
  if (dt) return Fe;
3846
3840
  dt = 1;
3847
- var e = un(), t = mn(), r = "[object Symbol]";
3848
- function n(s) {
3849
- return typeof s == "symbol" || t(s) && e(s) == r;
3841
+ function e(t) {
3842
+ return t != null && typeof t == "object";
3850
3843
  }
3851
- return Fe = n, Fe;
3844
+ return Fe = e, Fe;
3852
3845
  }
3853
3846
  var Ue, ut;
3854
3847
  function gn() {
3855
3848
  if (ut) return Ue;
3856
3849
  ut = 1;
3857
- var e = ln(), t = Rt(), r = fn(), n = NaN, s = /^[-+]0x[0-9a-f]+$/i, d = /^0b[01]+$/i, l = /^0o[0-7]+$/i, a = parseInt;
3858
- function u(m) {
3859
- if (typeof m == "number")
3860
- return m;
3861
- if (r(m))
3862
- return n;
3863
- if (t(m)) {
3864
- var A = typeof m.valueOf == "function" ? m.valueOf() : m;
3865
- m = t(A) ? A + "" : A;
3866
- }
3867
- if (typeof m != "string")
3868
- return m === 0 ? m : +m;
3869
- m = e(m);
3870
- var L = d.test(m);
3871
- return L || l.test(m) ? a(m.slice(2), L ? 2 : 8) : s.test(m) ? n : +m;
3850
+ var e = mn(), t = fn(), r = "[object Symbol]";
3851
+ function n(a) {
3852
+ return typeof a == "symbol" || t(a) && e(a) == r;
3872
3853
  }
3873
- return Ue = u, Ue;
3854
+ return Ue = n, Ue;
3874
3855
  }
3875
3856
  var $e, mt;
3876
3857
  function pn() {
3877
3858
  if (mt) return $e;
3878
3859
  mt = 1;
3879
- var e = Rt(), t = sn(), r = gn(), n = "Expected a function", s = Math.max, d = Math.min;
3880
- function l(a, u, m) {
3881
- var A, L, M, D, S, U, z = 0, V = !1, B = !1, k = !0;
3882
- if (typeof a != "function")
3860
+ var e = cn(), t = At(), r = gn(), n = NaN, a = /^[-+]0x[0-9a-f]+$/i, c = /^0b[01]+$/i, l = /^0o[0-7]+$/i, s = parseInt;
3861
+ function m(f) {
3862
+ if (typeof f == "number")
3863
+ return f;
3864
+ if (r(f))
3865
+ return n;
3866
+ if (t(f)) {
3867
+ var R = typeof f.valueOf == "function" ? f.valueOf() : f;
3868
+ f = t(R) ? R + "" : R;
3869
+ }
3870
+ if (typeof f != "string")
3871
+ return f === 0 ? f : +f;
3872
+ f = e(f);
3873
+ var L = c.test(f);
3874
+ return L || l.test(f) ? s(f.slice(2), L ? 2 : 8) : a.test(f) ? n : +f;
3875
+ }
3876
+ return $e = m, $e;
3877
+ }
3878
+ var Be, ft;
3879
+ function bn() {
3880
+ if (ft) return Be;
3881
+ ft = 1;
3882
+ var e = At(), t = an(), r = pn(), n = "Expected a function", a = Math.max, c = Math.min;
3883
+ function l(s, m, f) {
3884
+ var R, L, M, q, S, F, z = 0, H = !1, $ = !1, k = !0;
3885
+ if (typeof s != "function")
3883
3886
  throw new TypeError(n);
3884
- u = r(u) || 0, e(m) && (V = !!m.leading, B = "maxWait" in m, M = B ? s(r(m.maxWait) || 0, u) : M, k = "trailing" in m ? !!m.trailing : k);
3885
- function N(v) {
3886
- var E = A, q = L;
3887
- return A = L = void 0, z = v, D = a.apply(q, E), D;
3887
+ m = r(m) || 0, e(f) && (H = !!f.leading, $ = "maxWait" in f, M = $ ? a(r(f.maxWait) || 0, m) : M, k = "trailing" in f ? !!f.trailing : k);
3888
+ function N(u) {
3889
+ var j = R, A = L;
3890
+ return R = L = void 0, z = u, q = s.apply(A, j), q;
3888
3891
  }
3889
- function Y(v) {
3890
- return z = v, S = setTimeout(p, u), V ? N(v) : D;
3892
+ function V(u) {
3893
+ return z = u, S = setTimeout(x, m), H ? N(u) : q;
3891
3894
  }
3892
- function W(v) {
3893
- var E = v - U, q = v - z, O = u - E;
3894
- return B ? d(O, M - q) : O;
3895
+ function G(u) {
3896
+ var j = u - F, A = u - z, D = m - j;
3897
+ return $ ? c(D, M - A) : D;
3895
3898
  }
3896
- function K(v) {
3897
- var E = v - U, q = v - z;
3898
- return U === void 0 || E >= u || E < 0 || B && q >= M;
3899
+ function J(u) {
3900
+ var j = u - F, A = u - z;
3901
+ return F === void 0 || j >= m || j < 0 || $ && A >= M;
3899
3902
  }
3900
- function p() {
3901
- var v = t();
3902
- if (K(v))
3903
- return c(v);
3904
- S = setTimeout(p, W(v));
3903
+ function x() {
3904
+ var u = t();
3905
+ if (J(u))
3906
+ return P(u);
3907
+ S = setTimeout(x, G(u));
3905
3908
  }
3906
- function c(v) {
3907
- return S = void 0, k && A ? N(v) : (A = L = void 0, D);
3909
+ function P(u) {
3910
+ return S = void 0, k && R ? N(u) : (R = L = void 0, q);
3908
3911
  }
3909
- function y() {
3910
- S !== void 0 && clearTimeout(S), z = 0, A = U = L = S = void 0;
3912
+ function d() {
3913
+ S !== void 0 && clearTimeout(S), z = 0, R = F = L = S = void 0;
3911
3914
  }
3912
- function j() {
3913
- return S === void 0 ? D : c(t());
3915
+ function v() {
3916
+ return S === void 0 ? q : P(t());
3914
3917
  }
3915
- function x() {
3916
- var v = t(), E = K(v);
3917
- if (A = arguments, L = this, U = v, E) {
3918
+ function T() {
3919
+ var u = t(), j = J(u);
3920
+ if (R = arguments, L = this, F = u, j) {
3918
3921
  if (S === void 0)
3919
- return Y(U);
3920
- if (B)
3921
- return clearTimeout(S), S = setTimeout(p, u), N(U);
3922
+ return V(F);
3923
+ if ($)
3924
+ return clearTimeout(S), S = setTimeout(x, m), N(F);
3922
3925
  }
3923
- return S === void 0 && (S = setTimeout(p, u)), D;
3926
+ return S === void 0 && (S = setTimeout(x, m)), q;
3924
3927
  }
3925
- return x.cancel = y, x.flush = j, x;
3928
+ return T.cancel = d, T.flush = v, T;
3926
3929
  }
3927
- return $e = l, $e;
3930
+ return Be = l, Be;
3928
3931
  }
3929
- var bn = pn();
3930
- const hn = /* @__PURE__ */ lr(bn), xn = Lt(
3932
+ var hn = bn();
3933
+ const xn = /* @__PURE__ */ cr(hn), vn = zt(
3931
3934
  ({
3932
3935
  initialContent: e = "",
3933
3936
  onChange: t,
3934
3937
  onSave: r,
3935
3938
  onExport: n,
3936
- readOnly: s = !1,
3937
- showButtons: d = !1,
3939
+ readOnly: a = !1,
3940
+ showButtons: c = !1,
3938
3941
  showSaveTitle: l = !1,
3939
- showStatusBar: a = !1,
3940
- height: u = "500px",
3941
- onImageUpload: m,
3942
- imageUploadEndpoint: A,
3942
+ showStatusBar: s = !1,
3943
+ height: m = "500px",
3944
+ onImageUpload: f,
3945
+ imageUploadEndpoint: R,
3943
3946
  allowedImageTypes: L = [
3944
3947
  "image/jpeg",
3945
3948
  "image/png",
@@ -3948,82 +3951,86 @@ const hn = /* @__PURE__ */ lr(bn), xn = Lt(
3948
3951
  "image/svg+xml"
3949
3952
  ],
3950
3953
  maxImageSize: M = 5 * 1024 * 1024,
3951
- onInit: D,
3954
+ onInit: q,
3952
3955
  debounceDelay: S = 300,
3953
- className: U = "",
3956
+ className: F = "",
3954
3957
  placeholder: z = "Start typing here...",
3955
- autoFocus: V = !1
3956
- }, B) => {
3958
+ autoFocus: H = !1
3959
+ }, $) => {
3957
3960
  const {
3958
3961
  editorState: k,
3959
3962
  editorRef: N,
3960
- updateContent: Y,
3961
- updateTitle: W,
3962
- executeCommand: K,
3963
- getValidationResult: p,
3964
- exportToHTML: c,
3965
- clearEditor: y,
3966
- handlePaste: j,
3967
- handleDrop: x,
3968
- insertImage: v,
3969
- uploadPendingImages: E
3970
- } = gr({
3963
+ updateContent: V,
3964
+ updateTitle: G,
3965
+ executeCommand: J,
3966
+ getValidationResult: x,
3967
+ exportToHTML: P,
3968
+ clearEditor: d,
3969
+ setHTML: v,
3970
+ handlePaste: T,
3971
+ handleDrop: u,
3972
+ insertImage: j,
3973
+ uploadPendingImages: A
3974
+ } = pr({
3971
3975
  initialContent: e,
3972
- onImageUpload: m,
3973
- imageUploadEndpoint: A,
3976
+ onImageUpload: f,
3977
+ imageUploadEndpoint: R,
3974
3978
  allowedImageTypes: L,
3975
3979
  maxImageSize: M
3976
- }), q = ne(null), O = ne(!1), $ = ne(null), [h, G] = Z(!1), [te, o] = Z(""), [T, w] = Z(!1), [R, X] = Z(0), ae = ne(null), C = ne(t), Q = ne(k.content), ee = ne(k.title);
3980
+ }), D = re(null), U = re(!1), p = re(null), [X, B] = ee(!1), [o, y] = ee(""), [w, C] = ee(!1), [Z, ne] = ee(0), E = re(null), Q = re(t), te = re(k.content), oe = re(k.title);
3977
3981
  me(() => {
3978
- C.current = t;
3979
- }, [t]), zt(B, () => ({
3982
+ Q.current = t;
3983
+ }, [t]), Ot($, () => ({
3980
3984
  getContent: () => k.content,
3981
- getHTML: () => c(),
3985
+ getHTML: () => P(),
3982
3986
  getTitle: () => k.title,
3983
- clear: y,
3987
+ clear: d,
3984
3988
  focus: () => {
3985
3989
  if (N.current) {
3986
3990
  N.current.focus();
3987
- const b = document.createRange();
3988
- b.selectNodeContents(N.current), b.collapse(!1);
3989
- const F = window.getSelection();
3990
- F?.removeAllRanges(), F?.addRange(b);
3991
+ const g = document.createRange();
3992
+ g.selectNodeContents(N.current), g.collapse(!1);
3993
+ const K = window.getSelection();
3994
+ K?.removeAllRanges(), K?.addRange(g);
3991
3995
  }
3992
3996
  },
3993
- insertText: (b) => {
3994
- N.current && (document.execCommand("insertText", !1, b), Y(N.current.innerHTML));
3997
+ insertText: (g) => {
3998
+ N.current && (document.execCommand("insertText", !1, g), V(N.current.innerHTML));
3995
3999
  },
3996
- insertHTML: (b) => {
3997
- N.current && (document.execCommand("insertHTML", !1, b), Y(N.current.innerHTML));
4000
+ insertHTML: (g) => {
4001
+ N.current && (document.execCommand("insertHTML", !1, g), V(N.current.innerHTML));
3998
4002
  },
3999
- executeCommand: (b, F) => {
4000
- K(b, F);
4003
+ setHTML: (g) => {
4004
+ v(g);
4005
+ },
4006
+ executeCommand: (g, K) => {
4007
+ J(g, K);
4001
4008
  }
4002
4009
  })), me(() => {
4003
- D && N.current && !O.current && (D(N.current), O.current = !0);
4004
- }, [D, N]), me(() => {
4005
- V && N.current && !s && setTimeout(() => {
4010
+ q && N.current && !U.current && (q(N.current), U.current = !0);
4011
+ }, [q, N]), me(() => {
4012
+ H && N.current && !a && setTimeout(() => {
4006
4013
  if (N.current) {
4007
4014
  N.current.focus();
4008
- const b = document.createRange();
4009
- b.selectNodeContents(N.current), b.collapse(!1);
4010
- const F = window.getSelection();
4011
- F?.removeAllRanges(), F?.addRange(b);
4015
+ const g = document.createRange();
4016
+ g.selectNodeContents(N.current), g.collapse(!1);
4017
+ const K = window.getSelection();
4018
+ K?.removeAllRanges(), K?.addRange(g);
4012
4019
  }
4013
4020
  }, 100);
4014
- }, [V, s, N]), me(() => ($.current = hn(
4015
- (b, F, de) => {
4016
- C.current?.(b, F, de);
4021
+ }, [H, a, N]), me(() => (p.current = xn(
4022
+ (g, K, ae) => {
4023
+ Q.current?.(g, K, ae);
4017
4024
  },
4018
4025
  S
4019
4026
  ), () => {
4020
- $.current && $.current.cancel();
4027
+ p.current && p.current.cancel();
4021
4028
  }), [S]), me(() => {
4022
- if (!C.current || k.content === Q.current && k.title === ee.current)
4029
+ if (!Q.current || k.content === te.current && k.title === oe.current)
4023
4030
  return;
4024
- const b = (() => {
4031
+ const g = (() => {
4025
4032
  try {
4026
- return c({
4033
+ return P({
4027
4034
  includeStyles: !1,
4028
4035
  includeMeta: !1
4029
4036
  });
@@ -4031,108 +4038,108 @@ const hn = /* @__PURE__ */ lr(bn), xn = Lt(
4031
4038
  return `<!DOCTYPE html><html><body>${k.content}</body></html>`;
4032
4039
  }
4033
4040
  })();
4034
- Q.current = k.content, ee.current = k.title, S > 0 && $.current ? $.current(
4041
+ te.current = k.content, oe.current = k.title, S > 0 && p.current ? p.current(
4035
4042
  k.content,
4036
- b,
4043
+ g,
4037
4044
  k.title
4038
- ) : C.current(k.content, b, k.title);
4045
+ ) : Q.current(k.content, g, k.title);
4039
4046
  }, [
4040
4047
  k.content,
4041
4048
  k.title,
4042
- c,
4049
+ P,
4043
4050
  S
4044
4051
  ]);
4045
- const re = H(async () => {
4046
- if ($.current && $.current.flush?.(), k.pendingImages.length > 0) {
4047
- w(!0);
4052
+ const le = W(async () => {
4053
+ if (p.current && p.current.flush?.(), k.pendingImages.length > 0) {
4054
+ C(!0);
4048
4055
  try {
4049
- await E(), o("Images uploaded successfully!"), setTimeout(() => o(""), 3e3);
4056
+ await A(), y("Images uploaded successfully!"), setTimeout(() => y(""), 3e3);
4050
4057
  } catch {
4051
- o("Failed to upload images. Please try again."), G(!0), setTimeout(() => {
4052
- G(!1), o("");
4053
- }, 5e3), w(!1);
4058
+ y("Failed to upload images. Please try again."), B(!0), setTimeout(() => {
4059
+ B(!1), y("");
4060
+ }, 5e3), C(!1);
4054
4061
  return;
4055
4062
  } finally {
4056
- w(!1);
4063
+ C(!1);
4057
4064
  }
4058
4065
  }
4059
- const b = p();
4060
- if (!b.success) {
4061
- o(b.error || "Please fix validation errors before saving."), G(!0), setTimeout(() => {
4062
- G(!1), o("");
4066
+ const g = x();
4067
+ if (!g.success) {
4068
+ y(g.error || "Please fix validation errors before saving."), B(!0), setTimeout(() => {
4069
+ B(!1), y("");
4063
4070
  }, 3e3);
4064
4071
  return;
4065
4072
  }
4066
4073
  try {
4067
- r?.(k.content, c()), o("Document saved successfully!"), G(!0), setTimeout(() => {
4068
- G(!1), o("");
4074
+ r?.(k.content, P()), y("Document saved successfully!"), B(!0), setTimeout(() => {
4075
+ B(!1), y("");
4069
4076
  }, 2e3);
4070
4077
  } catch {
4071
- o("Failed to save document."), G(!0), setTimeout(() => {
4072
- G(!1), o("");
4078
+ y("Failed to save document."), B(!0), setTimeout(() => {
4079
+ B(!1), y("");
4073
4080
  }, 3e3);
4074
4081
  }
4075
4082
  }, [
4076
4083
  k,
4077
- E,
4078
- p,
4079
- c,
4084
+ A,
4085
+ x,
4086
+ P,
4080
4087
  r
4081
- ]), ie = H(async () => {
4082
- if ($.current && $.current.flush?.(), k.pendingImages.length > 0) {
4083
- w(!0);
4088
+ ]), O = W(async () => {
4089
+ if (p.current && p.current.flush?.(), k.pendingImages.length > 0) {
4090
+ C(!0);
4084
4091
  try {
4085
- await E();
4086
- } catch (b) {
4087
- console.error("Failed to upload images:", b);
4092
+ await A();
4093
+ } catch (g) {
4094
+ console.error("Failed to upload images:", g);
4088
4095
  } finally {
4089
- w(!1);
4096
+ C(!1);
4090
4097
  }
4091
4098
  }
4092
4099
  try {
4093
- const b = c();
4094
- n?.(b);
4095
- const F = new Blob([b], { type: "text/html" }), de = URL.createObjectURL(F), se = document.createElement("a");
4096
- se.href = de, se.download = `${k.title.replace(/[^\w\s]/gi, "").replace(/\s+/g, "_") || "document"}.html`, document.body.appendChild(se), se.click(), document.body.removeChild(se), URL.revokeObjectURL(de), o("Document exported successfully!"), G(!0), setTimeout(() => {
4097
- G(!1), o("");
4100
+ const g = P();
4101
+ n?.(g);
4102
+ const K = new Blob([g], { type: "text/html" }), ae = URL.createObjectURL(K), fe = document.createElement("a");
4103
+ fe.href = ae, fe.download = `${k.title.replace(/[^\w\s]/gi, "").replace(/\s+/g, "_") || "document"}.html`, document.body.appendChild(fe), fe.click(), document.body.removeChild(fe), URL.revokeObjectURL(ae), y("Document exported successfully!"), B(!0), setTimeout(() => {
4104
+ B(!1), y("");
4098
4105
  }, 2e3);
4099
4106
  } catch {
4100
- o("Failed to export document."), G(!0), setTimeout(() => {
4101
- G(!1), o("");
4107
+ y("Failed to export document."), B(!0), setTimeout(() => {
4108
+ B(!1), y("");
4102
4109
  }, 3e3);
4103
4110
  }
4104
- }, [k, E, c, n]), P = H(
4105
- (b) => {
4106
- Y(b);
4111
+ }, [k, A, P, n]), I = W(
4112
+ (g) => {
4113
+ V(g);
4107
4114
  },
4108
- [Y]
4109
- ), I = async (b) => {
4110
- if (!b.target.files || s) return;
4111
- const F = Array.from(b.target.files);
4112
- let de = 0;
4113
- const se = F.length;
4114
- for (const _t of F)
4115
+ [V]
4116
+ ), de = async (g) => {
4117
+ if (!g.target.files || a) return;
4118
+ const K = Array.from(g.target.files);
4119
+ let ae = 0;
4120
+ const fe = K.length;
4121
+ for (const Nt of K)
4115
4122
  try {
4116
- await v(_t), de++, X(Math.round(de / se * 100));
4117
- } catch (Nt) {
4118
- console.error("Failed to insert image:", Nt);
4123
+ await j(Nt), ae++, ne(Math.round(ae / fe * 100));
4124
+ } catch (It) {
4125
+ console.error("Failed to insert image:", It);
4119
4126
  }
4120
- X(0), b.target.value = "";
4121
- }, ce = H(() => {
4122
- s || N.current && N.current.focus();
4123
- }, [s, N]), oe = H((b) => {
4124
- (b.ctrlKey || b.metaKey) && b.key === "s" && (b.preventDefault(), re()), (b.ctrlKey || b.metaKey) && b.key === "e" && (b.preventDefault(), ie()), (b.ctrlKey || b.metaKey) && b.key === "k" && b.shiftKey && (b.preventDefault(), y());
4125
- }, [re, ie, y]);
4127
+ ne(0), g.target.value = "";
4128
+ }, se = W(() => {
4129
+ a || N.current && N.current.focus();
4130
+ }, [a, N]), ie = W((g) => {
4131
+ (g.ctrlKey || g.metaKey) && g.key === "s" && (g.preventDefault(), le()), (g.ctrlKey || g.metaKey) && g.key === "e" && (g.preventDefault(), O()), (g.ctrlKey || g.metaKey) && g.key === "k" && g.shiftKey && (g.preventDefault(), d());
4132
+ }, [le, O, d]);
4126
4133
  return /* @__PURE__ */ i.jsxs(
4127
4134
  "div",
4128
4135
  {
4129
- ref: ae,
4130
- className: Ae(
4136
+ ref: E,
4137
+ className: Ee(
4131
4138
  "relative w-full bg-white border border-gray-300 rounded-lg overflow-hidden flex flex-col",
4132
- s && "pointer-events-none opacity-80",
4133
- U
4139
+ a && "pointer-events-none opacity-80",
4140
+ F
4134
4141
  ),
4135
- style: { height: u },
4142
+ style: { height: m },
4136
4143
  children: [
4137
4144
  l && /* @__PURE__ */ i.jsxs("div", { className: "p-4 md:p-6 border-b bg-gradient-to-r from-gray-50 to-white", children: [
4138
4145
  /* @__PURE__ */ i.jsx(
@@ -4140,9 +4147,9 @@ const hn = /* @__PURE__ */ lr(bn), xn = Lt(
4140
4147
  {
4141
4148
  className: "w-full text-xl md:text-2xl font-bold bg-transparent outline-none placeholder:text-gray-400",
4142
4149
  value: k.title,
4143
- onChange: (b) => W(b.target.value),
4150
+ onChange: (g) => G(g.target.value),
4144
4151
  placeholder: "Document Title",
4145
- readOnly: s,
4152
+ readOnly: a,
4146
4153
  maxLength: 100
4147
4154
  }
4148
4155
  ),
@@ -4152,73 +4159,74 @@ const hn = /* @__PURE__ */ lr(bn), xn = Lt(
4152
4159
  ] })
4153
4160
  ] }),
4154
4161
  /* @__PURE__ */ i.jsx(
4155
- mr,
4162
+ fr,
4156
4163
  {
4157
- onCommand: K,
4158
- onSave: re,
4159
- onExport: ie,
4160
- showButtons: d,
4161
- onClear: y,
4164
+ onCommand: J,
4165
+ onSave: le,
4166
+ onExport: O,
4167
+ showButtons: c,
4168
+ onClear: d,
4162
4169
  hasUnsavedChanges: k.hasUnsavedChanges,
4163
- onImageUpload: () => q.current?.click(),
4170
+ onImageUpload: () => D.current?.click(),
4164
4171
  pendingImagesCount: k.pendingImages.length
4165
4172
  }
4166
4173
  ),
4167
4174
  /* @__PURE__ */ i.jsx(
4168
4175
  "input",
4169
4176
  {
4170
- ref: q,
4177
+ ref: D,
4171
4178
  type: "file",
4172
4179
  className: "hidden",
4173
4180
  accept: L.join(","),
4174
4181
  multiple: !0,
4175
- onChange: I,
4176
- disabled: s
4182
+ onChange: de,
4183
+ disabled: a
4177
4184
  }
4178
4185
  ),
4179
- (h || T) && /* @__PURE__ */ i.jsx("div", { className: Ae(
4186
+ (X || w) && /* @__PURE__ */ i.jsx("div", { className: Ee(
4180
4187
  "px-4 py-3 text-sm flex items-center gap-2 transition-all duration-300",
4181
- T ? "bg-blue-50 text-blue-700 border-b border-blue-100" : te.includes("success") ? "bg-green-50 text-green-700 border-b border-green-100" : "bg-red-50 text-red-700 border-b border-red-100"
4182
- ), children: T ? /* @__PURE__ */ i.jsxs(i.Fragment, { children: [
4183
- /* @__PURE__ */ i.jsx(or, { className: "h-4 w-4 animate-spin" }),
4188
+ w ? "bg-blue-50 text-blue-700 border-b border-blue-100" : o.includes("success") ? "bg-green-50 text-green-700 border-b border-green-100" : "bg-red-50 text-red-700 border-b border-red-100"
4189
+ ), children: w ? /* @__PURE__ */ i.jsxs(i.Fragment, { children: [
4190
+ /* @__PURE__ */ i.jsx(sr, { className: "h-4 w-4 animate-spin" }),
4184
4191
  /* @__PURE__ */ i.jsxs("span", { children: [
4185
4192
  "Uploading images... ",
4186
- R > 0 && `${R}%`
4193
+ Z > 0 && `${Z}%`
4187
4194
  ] })
4188
- ] }) : te.includes("success") ? /* @__PURE__ */ i.jsxs(i.Fragment, { children: [
4189
- /* @__PURE__ */ i.jsx(sr, { className: "h-4 w-4" }),
4190
- /* @__PURE__ */ i.jsx("span", { children: te })
4191
- ] }) : /* @__PURE__ */ i.jsxs(i.Fragment, { children: [
4195
+ ] }) : o.includes("success") ? /* @__PURE__ */ i.jsxs(i.Fragment, { children: [
4192
4196
  /* @__PURE__ */ i.jsx(ar, { className: "h-4 w-4" }),
4193
- /* @__PURE__ */ i.jsx("span", { children: te })
4197
+ /* @__PURE__ */ i.jsx("span", { children: o })
4198
+ ] }) : /* @__PURE__ */ i.jsxs(i.Fragment, { children: [
4199
+ /* @__PURE__ */ i.jsx(ir, { className: "h-4 w-4" }),
4200
+ /* @__PURE__ */ i.jsx("span", { children: o })
4194
4201
  ] }) }),
4195
- /* @__PURE__ */ i.jsx(
4196
- "div",
4197
- {
4198
- ref: N,
4199
- className: Ae(
4200
- "flex-1 p-4 md:p-6 outline-none overflow-y-auto min-h-[200px] bg-white",
4201
- s ? "cursor-default select-text" : "cursor-text",
4202
- !k.content && "relative"
4203
- ),
4204
- contentEditable: !s,
4205
- suppressContentEditableWarning: !0,
4206
- onInput: (b) => P(b.currentTarget.innerHTML),
4207
- onPaste: j,
4208
- onDrop: x,
4209
- onDragOver: (b) => b.preventDefault(),
4210
- onClick: ce,
4211
- onKeyDown: oe,
4212
- "data-placeholder": z,
4213
- role: "textbox",
4214
- "aria-label": "Text editor",
4215
- "aria-multiline": "true",
4216
- children: !k.content && /* @__PURE__ */ i.jsx("div", { className: "absolute top-6 left-6 text-gray-400 pointer-events-none select-none", children: z })
4217
- }
4218
- ),
4202
+ /* @__PURE__ */ i.jsxs("div", { className: "relative flex-1 flex flex-col overflow-hidden", children: [
4203
+ !k.content && /* @__PURE__ */ i.jsx("div", { className: "absolute top-6 left-6 text-gray-400 pointer-events-none select-none z-0", children: z }),
4204
+ /* @__PURE__ */ i.jsx(
4205
+ "div",
4206
+ {
4207
+ ref: N,
4208
+ className: Ee(
4209
+ "flex-1 p-4 md:p-6 outline-none overflow-y-auto min-h-[200px] bg-transparent z-10",
4210
+ a ? "cursor-default select-text" : "cursor-text"
4211
+ ),
4212
+ contentEditable: !a,
4213
+ suppressContentEditableWarning: !0,
4214
+ onInput: (g) => I(g.currentTarget.innerHTML),
4215
+ onPaste: T,
4216
+ onDrop: u,
4217
+ onDragOver: (g) => g.preventDefault(),
4218
+ onClick: se,
4219
+ onKeyDown: ie,
4220
+ "data-placeholder": z,
4221
+ role: "textbox",
4222
+ "aria-label": "Text editor",
4223
+ "aria-multiline": "true"
4224
+ }
4225
+ )
4226
+ ] }),
4219
4227
  k.pendingImages.length > 0 && /* @__PURE__ */ i.jsxs("div", { className: "px-4 py-3 text-sm text-blue-600 bg-blue-50 border-t border-blue-100 flex items-center justify-between", children: [
4220
4228
  /* @__PURE__ */ i.jsxs("div", { className: "flex items-center gap-2", children: [
4221
- /* @__PURE__ */ i.jsx(ir, { size: 16 }),
4229
+ /* @__PURE__ */ i.jsx(lr, { size: 16 }),
4222
4230
  /* @__PURE__ */ i.jsxs("span", { children: [
4223
4231
  k.pendingImages.length,
4224
4232
  " image",
@@ -4229,15 +4237,15 @@ const hn = /* @__PURE__ */ lr(bn), xn = Lt(
4229
4237
  /* @__PURE__ */ i.jsx(
4230
4238
  "button",
4231
4239
  {
4232
- onClick: E,
4233
- disabled: T,
4240
+ onClick: A,
4241
+ disabled: w,
4234
4242
  className: "text-sm px-3 py-1 bg-blue-100 hover:bg-blue-200 text-blue-700 rounded-md transition-colors disabled:opacity-50 disabled:cursor-not-allowed",
4235
- children: T ? "Uploading..." : "Upload Now"
4243
+ children: w ? "Uploading..." : "Upload Now"
4236
4244
  }
4237
4245
  )
4238
4246
  ] }),
4239
- a && /* @__PURE__ */ i.jsx(
4240
- fr,
4247
+ s && /* @__PURE__ */ i.jsx(
4248
+ gr,
4241
4249
  {
4242
4250
  wordCount: k.wordCount,
4243
4251
  characterCount: k.characterCount,
@@ -4245,13 +4253,13 @@ const hn = /* @__PURE__ */ lr(bn), xn = Lt(
4245
4253
  pendingImagesCount: k.pendingImages.length
4246
4254
  }
4247
4255
  ),
4248
- !s && /* @__PURE__ */ i.jsx("div", { className: "hidden md:block absolute bottom-2 right-2 text-xs text-gray-400 bg-white/80 px-2 py-1 rounded", children: "Ctrl+S to save • Ctrl+E to export" })
4256
+ !a && /* @__PURE__ */ i.jsx("div", { className: "hidden md:block absolute bottom-2 right-2 text-xs text-gray-400 bg-white/80 px-2 py-1 rounded", children: "Ctrl+S to save • Ctrl+E to export" })
4249
4257
  ]
4250
4258
  }
4251
4259
  );
4252
4260
  }
4253
4261
  );
4254
- xn.displayName = "TextEditor";
4262
+ vn.displayName = "TextEditor";
4255
4263
  export {
4256
- xn as TextEditor
4264
+ vn as TextEditor
4257
4265
  };