@abduljebar/text-editor 2.2.6 → 2.3.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +372 -372
- package/dist/App.d.ts.map +1 -1
- package/dist/components/StatusBar.d.ts +1 -0
- package/dist/components/StatusBar.d.ts.map +1 -1
- package/dist/components/TextEditor.d.ts +4 -0
- package/dist/components/TextEditor.d.ts.map +1 -1
- package/dist/components/Toolbar.d.ts +2 -0
- package/dist/components/Toolbar.d.ts.map +1 -1
- package/dist/demo.jpg +0 -0
- package/dist/hooks/useTextEditor.d.ts +31 -20
- package/dist/hooks/useTextEditor.d.ts.map +1 -1
- package/dist/index.css +1 -1
- package/dist/index.js +1382 -1183
- package/dist/index.umd.cjs +61 -20
- package/dist/types/editor.d.ts +18 -0
- package/dist/types/editor.d.ts.map +1 -1
- package/package.json +82 -82
package/dist/index.js
CHANGED
|
@@ -1,357 +1,858 @@
|
|
|
1
|
-
import
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
function a(t, o, b) {
|
|
18
|
-
var p = null;
|
|
19
|
-
if (b !== void 0 && (p = "" + b), o.key !== void 0 && (p = "" + o.key), "key" in o) {
|
|
20
|
-
b = {};
|
|
21
|
-
for (var w in o)
|
|
22
|
-
w !== "key" && (b[w] = o[w]);
|
|
23
|
-
} else b = o;
|
|
24
|
-
return o = b.ref, {
|
|
1
|
+
import We, { useState as pe, useEffect as fe, useRef as me, useCallback as V } from "react";
|
|
2
|
+
import { Save as ze, FileDown as Ye, Trash2 as Be, Bold as He, Italic as Je, Underline as Xe, Strikethrough as Ze, List as Qe, ListOrdered as Ke, Heading1 as et, Heading2 as tt, Type as rt, AlignLeft as ot, AlignCenter as nt, AlignRight as st, Link as at, Image as ve, Upload as it } from "lucide-react";
|
|
3
|
+
var ce = { exports: {} }, se = {};
|
|
4
|
+
var _e;
|
|
5
|
+
function lt() {
|
|
6
|
+
if (_e) return se;
|
|
7
|
+
_e = 1;
|
|
8
|
+
var e = /* @__PURE__ */ Symbol.for("react.transitional.element"), n = /* @__PURE__ */ Symbol.for("react.fragment");
|
|
9
|
+
function r(o, s, l) {
|
|
10
|
+
var a = null;
|
|
11
|
+
if (l !== void 0 && (a = "" + l), s.key !== void 0 && (a = "" + s.key), "key" in s) {
|
|
12
|
+
l = {};
|
|
13
|
+
for (var c in s)
|
|
14
|
+
c !== "key" && (l[c] = s[c]);
|
|
15
|
+
} else l = s;
|
|
16
|
+
return s = l.ref, {
|
|
25
17
|
$$typeof: e,
|
|
26
|
-
type:
|
|
27
|
-
key:
|
|
28
|
-
ref:
|
|
29
|
-
props:
|
|
18
|
+
type: o,
|
|
19
|
+
key: a,
|
|
20
|
+
ref: s !== void 0 ? s : null,
|
|
21
|
+
props: l
|
|
30
22
|
};
|
|
31
23
|
}
|
|
32
|
-
return
|
|
24
|
+
return se.Fragment = n, se.jsx = r, se.jsxs = r, se;
|
|
33
25
|
}
|
|
34
|
-
var
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
function Ve() {
|
|
46
|
-
return je || (je = 1, process.env.NODE_ENV !== "production" && (function() {
|
|
47
|
-
function e(r) {
|
|
48
|
-
if (r == null) return null;
|
|
49
|
-
if (typeof r == "function")
|
|
50
|
-
return r.$$typeof === Q ? null : r.displayName || r.name || null;
|
|
51
|
-
if (typeof r == "string") return r;
|
|
52
|
-
switch (r) {
|
|
53
|
-
case L:
|
|
26
|
+
var ae = {};
|
|
27
|
+
var Ce;
|
|
28
|
+
function ct() {
|
|
29
|
+
return Ce || (Ce = 1, process.env.NODE_ENV !== "production" && (function() {
|
|
30
|
+
function e(t) {
|
|
31
|
+
if (t == null) return null;
|
|
32
|
+
if (typeof t == "function")
|
|
33
|
+
return t.$$typeof === F ? null : t.displayName || t.name || null;
|
|
34
|
+
if (typeof t == "string") return t;
|
|
35
|
+
switch (t) {
|
|
36
|
+
case R:
|
|
54
37
|
return "Fragment";
|
|
55
|
-
case
|
|
38
|
+
case D:
|
|
56
39
|
return "Profiler";
|
|
57
|
-
case
|
|
40
|
+
case $:
|
|
58
41
|
return "StrictMode";
|
|
59
|
-
case
|
|
42
|
+
case v:
|
|
60
43
|
return "Suspense";
|
|
61
|
-
case
|
|
44
|
+
case j:
|
|
62
45
|
return "SuspenseList";
|
|
63
|
-
case
|
|
46
|
+
case A:
|
|
64
47
|
return "Activity";
|
|
65
48
|
}
|
|
66
|
-
if (typeof
|
|
67
|
-
switch (typeof
|
|
49
|
+
if (typeof t == "object")
|
|
50
|
+
switch (typeof t.tag == "number" && console.error(
|
|
68
51
|
"Received an unexpected object in getComponentNameFromType(). This is likely a bug in React. Please file an issue."
|
|
69
|
-
),
|
|
70
|
-
case
|
|
52
|
+
), t.$$typeof) {
|
|
53
|
+
case h:
|
|
71
54
|
return "Portal";
|
|
72
|
-
case
|
|
73
|
-
return
|
|
74
|
-
case U:
|
|
75
|
-
return (r._context.displayName || "Context") + ".Consumer";
|
|
55
|
+
case N:
|
|
56
|
+
return t.displayName || "Context";
|
|
76
57
|
case O:
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
return
|
|
81
|
-
case
|
|
82
|
-
|
|
58
|
+
return (t._context.displayName || "Context") + ".Consumer";
|
|
59
|
+
case f:
|
|
60
|
+
var b = t.render;
|
|
61
|
+
return t = t.displayName, t || (t = b.displayName || b.name || "", t = t !== "" ? "ForwardRef(" + t + ")" : "ForwardRef"), t;
|
|
62
|
+
case i:
|
|
63
|
+
return b = t.displayName || null, b !== null ? b : e(t.type) || "Memo";
|
|
64
|
+
case E:
|
|
65
|
+
b = t._payload, t = t._init;
|
|
83
66
|
try {
|
|
84
|
-
return e(
|
|
67
|
+
return e(t(b));
|
|
85
68
|
} catch {
|
|
86
69
|
}
|
|
87
70
|
}
|
|
88
71
|
return null;
|
|
89
72
|
}
|
|
90
|
-
function
|
|
91
|
-
return "" +
|
|
73
|
+
function n(t) {
|
|
74
|
+
return "" + t;
|
|
92
75
|
}
|
|
93
|
-
function
|
|
76
|
+
function r(t) {
|
|
94
77
|
try {
|
|
95
|
-
|
|
96
|
-
var
|
|
78
|
+
n(t);
|
|
79
|
+
var b = !1;
|
|
97
80
|
} catch {
|
|
98
|
-
|
|
81
|
+
b = !0;
|
|
99
82
|
}
|
|
100
|
-
if (
|
|
101
|
-
|
|
102
|
-
var
|
|
103
|
-
return
|
|
104
|
-
|
|
83
|
+
if (b) {
|
|
84
|
+
b = console;
|
|
85
|
+
var x = b.error, T = typeof Symbol == "function" && Symbol.toStringTag && t[Symbol.toStringTag] || t.constructor.name || "Object";
|
|
86
|
+
return x.call(
|
|
87
|
+
b,
|
|
105
88
|
"The provided key is an unsupported type %s. This value must be coerced to a string before using it here.",
|
|
106
|
-
|
|
107
|
-
),
|
|
89
|
+
T
|
|
90
|
+
), n(t);
|
|
108
91
|
}
|
|
109
92
|
}
|
|
110
|
-
function t
|
|
111
|
-
if (
|
|
112
|
-
if (typeof
|
|
93
|
+
function o(t) {
|
|
94
|
+
if (t === R) return "<>";
|
|
95
|
+
if (typeof t == "object" && t !== null && t.$$typeof === E)
|
|
113
96
|
return "<...>";
|
|
114
97
|
try {
|
|
115
|
-
var
|
|
116
|
-
return
|
|
98
|
+
var b = e(t);
|
|
99
|
+
return b ? "<" + b + ">" : "<...>";
|
|
117
100
|
} catch {
|
|
118
101
|
return "<...>";
|
|
119
102
|
}
|
|
120
103
|
}
|
|
121
|
-
function
|
|
122
|
-
var
|
|
123
|
-
return
|
|
104
|
+
function s() {
|
|
105
|
+
var t = P.A;
|
|
106
|
+
return t === null ? null : t.getOwner();
|
|
124
107
|
}
|
|
125
|
-
function
|
|
108
|
+
function l() {
|
|
126
109
|
return Error("react-stack-top-frame");
|
|
127
110
|
}
|
|
128
|
-
function
|
|
129
|
-
if (
|
|
130
|
-
var
|
|
131
|
-
if (
|
|
111
|
+
function a(t) {
|
|
112
|
+
if (U.call(t, "key")) {
|
|
113
|
+
var b = Object.getOwnPropertyDescriptor(t, "key").get;
|
|
114
|
+
if (b && b.isReactWarning) return !1;
|
|
132
115
|
}
|
|
133
|
-
return
|
|
116
|
+
return t.key !== void 0;
|
|
134
117
|
}
|
|
135
|
-
function
|
|
136
|
-
function
|
|
137
|
-
|
|
118
|
+
function c(t, b) {
|
|
119
|
+
function x() {
|
|
120
|
+
G || (G = !0, console.error(
|
|
138
121
|
"%s: `key` is not a prop. Trying to access it will result in `undefined` being returned. If you need to access the same value within the child component, you should pass it as a different prop. (https://react.dev/link/special-props)",
|
|
139
|
-
|
|
122
|
+
b
|
|
140
123
|
));
|
|
141
124
|
}
|
|
142
|
-
|
|
143
|
-
get:
|
|
125
|
+
x.isReactWarning = !0, Object.defineProperty(t, "key", {
|
|
126
|
+
get: x,
|
|
144
127
|
configurable: !0
|
|
145
128
|
});
|
|
146
129
|
}
|
|
147
|
-
function
|
|
148
|
-
var
|
|
149
|
-
return
|
|
130
|
+
function m() {
|
|
131
|
+
var t = e(this.type);
|
|
132
|
+
return Y[t] || (Y[t] = !0, console.error(
|
|
150
133
|
"Accessing element.ref was removed in React 19. ref is now a regular prop. It will be removed from the JSX Element type in a future release."
|
|
151
|
-
)),
|
|
134
|
+
)), t = this.props.ref, t !== void 0 ? t : null;
|
|
152
135
|
}
|
|
153
|
-
function
|
|
154
|
-
var
|
|
155
|
-
return
|
|
156
|
-
$$typeof:
|
|
157
|
-
type:
|
|
158
|
-
key:
|
|
159
|
-
props:
|
|
160
|
-
_owner:
|
|
161
|
-
}, (
|
|
136
|
+
function _(t, b, x, T, B, ee) {
|
|
137
|
+
var k = x.ref;
|
|
138
|
+
return t = {
|
|
139
|
+
$$typeof: I,
|
|
140
|
+
type: t,
|
|
141
|
+
key: b,
|
|
142
|
+
props: x,
|
|
143
|
+
_owner: T
|
|
144
|
+
}, (k !== void 0 ? k : null) !== null ? Object.defineProperty(t, "ref", {
|
|
162
145
|
enumerable: !1,
|
|
163
|
-
get:
|
|
164
|
-
}) : Object.defineProperty(
|
|
146
|
+
get: m
|
|
147
|
+
}) : Object.defineProperty(t, "ref", { enumerable: !1, value: null }), t._store = {}, Object.defineProperty(t._store, "validated", {
|
|
165
148
|
configurable: !1,
|
|
166
149
|
enumerable: !1,
|
|
167
150
|
writable: !0,
|
|
168
151
|
value: 0
|
|
169
|
-
}), Object.defineProperty(
|
|
152
|
+
}), Object.defineProperty(t, "_debugInfo", {
|
|
170
153
|
configurable: !1,
|
|
171
154
|
enumerable: !1,
|
|
172
155
|
writable: !0,
|
|
173
156
|
value: null
|
|
174
|
-
}), Object.defineProperty(
|
|
157
|
+
}), Object.defineProperty(t, "_debugStack", {
|
|
175
158
|
configurable: !1,
|
|
176
159
|
enumerable: !1,
|
|
177
160
|
writable: !0,
|
|
178
|
-
value:
|
|
179
|
-
}), Object.defineProperty(
|
|
161
|
+
value: B
|
|
162
|
+
}), Object.defineProperty(t, "_debugTask", {
|
|
180
163
|
configurable: !1,
|
|
181
164
|
enumerable: !1,
|
|
182
165
|
writable: !0,
|
|
183
|
-
value:
|
|
184
|
-
}), Object.freeze && (Object.freeze(
|
|
166
|
+
value: ee
|
|
167
|
+
}), Object.freeze && (Object.freeze(t.props), Object.freeze(t)), t;
|
|
185
168
|
}
|
|
186
|
-
function C(
|
|
187
|
-
var
|
|
188
|
-
if (
|
|
189
|
-
if (
|
|
190
|
-
if (
|
|
191
|
-
for (
|
|
192
|
-
|
|
193
|
-
Object.freeze && Object.freeze(
|
|
169
|
+
function C(t, b, x, T, B, ee) {
|
|
170
|
+
var k = b.children;
|
|
171
|
+
if (k !== void 0)
|
|
172
|
+
if (T)
|
|
173
|
+
if (q(k)) {
|
|
174
|
+
for (T = 0; T < k.length; T++)
|
|
175
|
+
z(k[T]);
|
|
176
|
+
Object.freeze && Object.freeze(k);
|
|
194
177
|
} else
|
|
195
178
|
console.error(
|
|
196
179
|
"React.jsx: Static children should always be an array. You are likely explicitly calling React.jsxs or React.jsxDEV. Use the Babel transform instead."
|
|
197
180
|
);
|
|
198
|
-
else
|
|
199
|
-
if (
|
|
200
|
-
|
|
201
|
-
var
|
|
202
|
-
return
|
|
181
|
+
else z(k);
|
|
182
|
+
if (U.call(b, "key")) {
|
|
183
|
+
k = e(t);
|
|
184
|
+
var H = Object.keys(b).filter(function(te) {
|
|
185
|
+
return te !== "key";
|
|
203
186
|
});
|
|
204
|
-
|
|
187
|
+
T = 0 < H.length ? "{key: someKey, " + H.join(": ..., ") + ": ...}" : "{key: someKey}", S[k + T] || (H = 0 < H.length ? "{" + H.join(": ..., ") + ": ...}" : "{}", console.error(
|
|
205
188
|
`A props object containing a "key" prop is being spread into JSX:
|
|
206
189
|
let props = %s;
|
|
207
190
|
<%s {...props} />
|
|
208
191
|
React keys must be passed directly to JSX without using spread:
|
|
209
192
|
let props = %s;
|
|
210
193
|
<%s key={someKey} {...props} />`,
|
|
194
|
+
T,
|
|
211
195
|
k,
|
|
212
|
-
|
|
213
|
-
|
|
214
|
-
|
|
215
|
-
), re[n + k] = !0);
|
|
196
|
+
H,
|
|
197
|
+
k
|
|
198
|
+
), S[k + T] = !0);
|
|
216
199
|
}
|
|
217
|
-
if (
|
|
218
|
-
|
|
219
|
-
for (var
|
|
220
|
-
|
|
221
|
-
} else
|
|
222
|
-
return
|
|
223
|
-
|
|
224
|
-
typeof
|
|
225
|
-
),
|
|
226
|
-
|
|
227
|
-
|
|
228
|
-
|
|
229
|
-
|
|
230
|
-
|
|
231
|
-
|
|
200
|
+
if (k = null, x !== void 0 && (r(x), k = "" + x), a(b) && (r(b.key), k = "" + b.key), "key" in b) {
|
|
201
|
+
x = {};
|
|
202
|
+
for (var X in b)
|
|
203
|
+
X !== "key" && (x[X] = b[X]);
|
|
204
|
+
} else x = b;
|
|
205
|
+
return k && c(
|
|
206
|
+
x,
|
|
207
|
+
typeof t == "function" ? t.displayName || t.name || "Unknown" : t
|
|
208
|
+
), _(
|
|
209
|
+
t,
|
|
210
|
+
k,
|
|
211
|
+
x,
|
|
212
|
+
s(),
|
|
213
|
+
B,
|
|
214
|
+
ee
|
|
232
215
|
);
|
|
233
216
|
}
|
|
234
|
-
function
|
|
235
|
-
|
|
217
|
+
function z(t) {
|
|
218
|
+
L(t) ? t._store && (t._store.validated = 1) : typeof t == "object" && t !== null && t.$$typeof === E && (t._payload.status === "fulfilled" ? L(t._payload.value) && t._payload.value._store && (t._payload.value._store.validated = 1) : t._store && (t._store.validated = 1));
|
|
236
219
|
}
|
|
237
|
-
function
|
|
238
|
-
return typeof
|
|
220
|
+
function L(t) {
|
|
221
|
+
return typeof t == "object" && t !== null && t.$$typeof === I;
|
|
239
222
|
}
|
|
240
|
-
var
|
|
223
|
+
var y = We, I = /* @__PURE__ */ Symbol.for("react.transitional.element"), h = /* @__PURE__ */ Symbol.for("react.portal"), R = /* @__PURE__ */ Symbol.for("react.fragment"), $ = /* @__PURE__ */ Symbol.for("react.strict_mode"), D = /* @__PURE__ */ Symbol.for("react.profiler"), O = /* @__PURE__ */ Symbol.for("react.consumer"), N = /* @__PURE__ */ Symbol.for("react.context"), f = /* @__PURE__ */ Symbol.for("react.forward_ref"), v = /* @__PURE__ */ Symbol.for("react.suspense"), j = /* @__PURE__ */ Symbol.for("react.suspense_list"), i = /* @__PURE__ */ Symbol.for("react.memo"), E = /* @__PURE__ */ Symbol.for("react.lazy"), A = /* @__PURE__ */ Symbol.for("react.activity"), F = /* @__PURE__ */ Symbol.for("react.client.reference"), P = y.__CLIENT_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE, U = Object.prototype.hasOwnProperty, q = Array.isArray, W = console.createTask ? console.createTask : function() {
|
|
241
224
|
return null;
|
|
242
225
|
};
|
|
243
|
-
|
|
244
|
-
react_stack_bottom_frame: function(
|
|
245
|
-
return
|
|
226
|
+
y = {
|
|
227
|
+
react_stack_bottom_frame: function(t) {
|
|
228
|
+
return t();
|
|
246
229
|
}
|
|
247
230
|
};
|
|
248
|
-
var
|
|
249
|
-
|
|
250
|
-
|
|
251
|
-
)(),
|
|
252
|
-
|
|
253
|
-
var
|
|
231
|
+
var G, Y = {}, g = y.react_stack_bottom_frame.bind(
|
|
232
|
+
y,
|
|
233
|
+
l
|
|
234
|
+
)(), K = W(o(l)), S = {};
|
|
235
|
+
ae.Fragment = R, ae.jsx = function(t, b, x) {
|
|
236
|
+
var T = 1e4 > P.recentlyCreatedOwnerStacks++;
|
|
254
237
|
return C(
|
|
255
|
-
|
|
256
|
-
|
|
257
|
-
|
|
238
|
+
t,
|
|
239
|
+
b,
|
|
240
|
+
x,
|
|
258
241
|
!1,
|
|
259
|
-
|
|
260
|
-
|
|
242
|
+
T ? Error("react-stack-top-frame") : g,
|
|
243
|
+
T ? W(o(t)) : K
|
|
261
244
|
);
|
|
262
|
-
},
|
|
263
|
-
var
|
|
245
|
+
}, ae.jsxs = function(t, b, x) {
|
|
246
|
+
var T = 1e4 > P.recentlyCreatedOwnerStacks++;
|
|
264
247
|
return C(
|
|
265
|
-
|
|
266
|
-
|
|
267
|
-
|
|
248
|
+
t,
|
|
249
|
+
b,
|
|
250
|
+
x,
|
|
268
251
|
!0,
|
|
269
|
-
|
|
270
|
-
|
|
252
|
+
T ? Error("react-stack-top-frame") : g,
|
|
253
|
+
T ? W(o(t)) : K
|
|
271
254
|
);
|
|
272
255
|
};
|
|
273
|
-
})()),
|
|
256
|
+
})()), ae;
|
|
274
257
|
}
|
|
275
|
-
var
|
|
276
|
-
function
|
|
277
|
-
return
|
|
258
|
+
var je;
|
|
259
|
+
function dt() {
|
|
260
|
+
return je || (je = 1, process.env.NODE_ENV === "production" ? ce.exports = lt() : ce.exports = ct()), ce.exports;
|
|
278
261
|
}
|
|
279
|
-
var
|
|
280
|
-
const
|
|
281
|
-
|
|
282
|
-
|
|
283
|
-
|
|
262
|
+
var p = dt();
|
|
263
|
+
const ut = ({
|
|
264
|
+
onCommand: e,
|
|
265
|
+
onSave: n,
|
|
266
|
+
onExport: r,
|
|
267
|
+
onClear: o,
|
|
268
|
+
onImageUpload: s,
|
|
269
|
+
showButtons: l = !1,
|
|
270
|
+
hasUnsavedChanges: a,
|
|
271
|
+
pendingImagesCount: c = 0
|
|
272
|
+
}) => {
|
|
273
|
+
const [m, _] = pe([]), [C, z] = pe("p"), L = () => {
|
|
274
|
+
const h = [];
|
|
275
|
+
let R = "p";
|
|
276
|
+
document.queryCommandState("bold") && h.push("bold"), document.queryCommandState("italic") && h.push("italic"), document.queryCommandState("underline") && h.push("underline"), document.queryCommandState("strikeThrough") && h.push("strikeThrough"), document.queryCommandState("insertUnorderedList") && h.push("insertUnorderedList"), document.queryCommandState("insertOrderedList") && h.push("insertOrderedList"), document.queryCommandState("justifyLeft") && h.push("justifyLeft"), document.queryCommandState("justifyCenter") && h.push("justifyCenter"), document.queryCommandState("justifyRight") && h.push("justifyRight");
|
|
277
|
+
const $ = window.getSelection();
|
|
278
|
+
if ($ && $.rangeCount > 0) {
|
|
279
|
+
let D = $.getRangeAt(0).commonAncestorContainer;
|
|
280
|
+
for (; D && D.nodeType === Node.ELEMENT_NODE; ) {
|
|
281
|
+
const O = D, N = O.tagName.toLowerCase();
|
|
282
|
+
if (["h1", "h2", "p", "div"].includes(N)) {
|
|
283
|
+
N === "h1" || N === "h2" ? (R = N, h.push(`formatBlock:${N}`)) : (N === "p" || N === "div" && !R) && (R = "p");
|
|
284
|
+
break;
|
|
285
|
+
}
|
|
286
|
+
D = O.parentNode;
|
|
287
|
+
}
|
|
288
|
+
}
|
|
289
|
+
z(R), _(h);
|
|
290
|
+
};
|
|
291
|
+
fe(() => {
|
|
292
|
+
const h = () => {
|
|
293
|
+
L();
|
|
294
|
+
}, R = () => {
|
|
295
|
+
setTimeout(L, 10);
|
|
296
|
+
};
|
|
297
|
+
return document.addEventListener("selectionchange", h), document.addEventListener("click", R), document.addEventListener("keyup", R), () => {
|
|
298
|
+
document.removeEventListener("selectionchange", h), document.removeEventListener("click", R), document.removeEventListener("keyup", R);
|
|
299
|
+
};
|
|
300
|
+
}, []);
|
|
301
|
+
const y = () => {
|
|
302
|
+
const h = prompt("Enter URL:");
|
|
303
|
+
h && e("createLink", h);
|
|
304
|
+
}, I = [
|
|
305
|
+
{
|
|
306
|
+
id: "bold",
|
|
307
|
+
command: "bold",
|
|
308
|
+
icon: /* @__PURE__ */ p.jsx(He, { size: 18 }),
|
|
309
|
+
title: "Bold"
|
|
310
|
+
},
|
|
311
|
+
{
|
|
312
|
+
id: "italic",
|
|
313
|
+
command: "italic",
|
|
314
|
+
icon: /* @__PURE__ */ p.jsx(Je, { size: 18 }),
|
|
315
|
+
title: "Italic"
|
|
316
|
+
},
|
|
317
|
+
{
|
|
318
|
+
id: "underline",
|
|
319
|
+
command: "underline",
|
|
320
|
+
icon: /* @__PURE__ */ p.jsx(Xe, { size: 18 }),
|
|
321
|
+
title: "Underline"
|
|
322
|
+
},
|
|
323
|
+
{
|
|
324
|
+
id: "strikeThrough",
|
|
325
|
+
command: "strikeThrough",
|
|
326
|
+
icon: /* @__PURE__ */ p.jsx(Ze, { size: 18 }),
|
|
327
|
+
title: "Strikethrough"
|
|
328
|
+
},
|
|
329
|
+
{ id: "separator-1", separator: !0 },
|
|
330
|
+
{
|
|
331
|
+
id: "unordered-list",
|
|
332
|
+
command: "insertUnorderedList",
|
|
333
|
+
icon: /* @__PURE__ */ p.jsx(Qe, { size: 18 }),
|
|
334
|
+
title: "Bullet List"
|
|
335
|
+
},
|
|
336
|
+
{
|
|
337
|
+
id: "ordered-list",
|
|
338
|
+
command: "insertOrderedList",
|
|
339
|
+
icon: /* @__PURE__ */ p.jsx(Ke, { size: 18 }),
|
|
340
|
+
title: "Numbered List"
|
|
341
|
+
},
|
|
342
|
+
{ id: "separator-2", separator: !0 },
|
|
343
|
+
{
|
|
344
|
+
id: "heading-1",
|
|
345
|
+
command: "formatBlock",
|
|
346
|
+
value: "h1",
|
|
347
|
+
icon: /* @__PURE__ */ p.jsx(et, { size: 18 }),
|
|
348
|
+
title: "Heading 1",
|
|
349
|
+
isActive: C === "h1"
|
|
350
|
+
},
|
|
351
|
+
{
|
|
352
|
+
id: "heading-2",
|
|
353
|
+
command: "formatBlock",
|
|
354
|
+
value: "h2",
|
|
355
|
+
icon: /* @__PURE__ */ p.jsx(tt, { size: 18 }),
|
|
356
|
+
title: "Heading 2",
|
|
357
|
+
isActive: C === "h2"
|
|
358
|
+
},
|
|
359
|
+
{
|
|
360
|
+
id: "paragraph",
|
|
361
|
+
command: "formatBlock",
|
|
362
|
+
value: "p",
|
|
363
|
+
icon: /* @__PURE__ */ p.jsx(rt, { size: 18 }),
|
|
364
|
+
title: "Paragraph",
|
|
365
|
+
isActive: C === "p"
|
|
366
|
+
},
|
|
367
|
+
{ id: "separator-3", separator: !0 },
|
|
368
|
+
{
|
|
369
|
+
id: "align-left",
|
|
370
|
+
command: "justifyLeft",
|
|
371
|
+
icon: /* @__PURE__ */ p.jsx(ot, { size: 18 }),
|
|
372
|
+
title: "Align Left"
|
|
373
|
+
},
|
|
374
|
+
{
|
|
375
|
+
id: "align-center",
|
|
376
|
+
command: "justifyCenter",
|
|
377
|
+
icon: /* @__PURE__ */ p.jsx(nt, { size: 18 }),
|
|
378
|
+
title: "Center"
|
|
379
|
+
},
|
|
380
|
+
{
|
|
381
|
+
id: "align-right",
|
|
382
|
+
command: "justifyRight",
|
|
383
|
+
icon: /* @__PURE__ */ p.jsx(st, { size: 18 }),
|
|
384
|
+
title: "Align Right"
|
|
385
|
+
},
|
|
386
|
+
{ id: "separator-4", separator: !0 },
|
|
387
|
+
{
|
|
388
|
+
id: "link",
|
|
389
|
+
command: "createLink",
|
|
390
|
+
icon: /* @__PURE__ */ p.jsx(at, { size: 18 }),
|
|
391
|
+
title: "Insert Link",
|
|
392
|
+
onClick: y
|
|
393
|
+
},
|
|
394
|
+
{
|
|
395
|
+
id: "image",
|
|
396
|
+
command: "insertImage",
|
|
397
|
+
icon: c > 0 ? /* @__PURE__ */ p.jsxs("div", { className: "relative", children: [
|
|
398
|
+
/* @__PURE__ */ p.jsx(ve, { size: 18 }),
|
|
399
|
+
/* @__PURE__ */ p.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: c })
|
|
400
|
+
] }) : /* @__PURE__ */ p.jsx(ve, { size: 18 }),
|
|
401
|
+
title: "Insert Image",
|
|
402
|
+
onClick: s
|
|
403
|
+
}
|
|
404
|
+
];
|
|
405
|
+
return /* @__PURE__ */ p.jsxs("div", { className: "flex flex-wrap justify-between items-center p-3 bg-gray-50 border-b border-gray-200", children: [
|
|
406
|
+
/* @__PURE__ */ p.jsx("div", { className: "flex flex-wrap items-center gap-1", children: I.map((h) => {
|
|
407
|
+
if ("separator" in h)
|
|
408
|
+
return /* @__PURE__ */ p.jsx("div", { className: "w-px h-6 bg-gray-300 mx-2" }, h.id);
|
|
409
|
+
const R = h.isActive !== void 0 ? h.isActive : m.includes(h.command);
|
|
410
|
+
return /* @__PURE__ */ p.jsx(
|
|
411
|
+
"button",
|
|
412
|
+
{
|
|
413
|
+
onClick: () => h.onClick ? h.onClick() : e(h.command, h.value),
|
|
414
|
+
title: h.title,
|
|
415
|
+
type: "button",
|
|
416
|
+
className: `w-9 h-9 flex items-center justify-center rounded-md border transition-colors duration-200 ${R ? "bg-blue-100 text-blue-600 border-blue-300 hover:bg-blue-200" : "bg-white border-gray-300 text-gray-700 hover:bg-gray-100"}`,
|
|
417
|
+
children: h.icon
|
|
418
|
+
},
|
|
419
|
+
h.id
|
|
420
|
+
);
|
|
421
|
+
}) }),
|
|
422
|
+
l && /* @__PURE__ */ p.jsxs("div", { className: "flex items-center gap-2 mt-2 sm:mt-0", children: [
|
|
423
|
+
/* @__PURE__ */ p.jsxs(
|
|
424
|
+
"button",
|
|
425
|
+
{
|
|
426
|
+
onClick: n,
|
|
427
|
+
disabled: !a,
|
|
428
|
+
title: "Save Document",
|
|
429
|
+
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",
|
|
430
|
+
children: [
|
|
431
|
+
/* @__PURE__ */ p.jsx(ze, { size: 16 }),
|
|
432
|
+
/* @__PURE__ */ p.jsx("span", { children: "Save" })
|
|
433
|
+
]
|
|
434
|
+
}
|
|
435
|
+
),
|
|
436
|
+
/* @__PURE__ */ p.jsxs(
|
|
437
|
+
"button",
|
|
438
|
+
{
|
|
439
|
+
onClick: r,
|
|
440
|
+
title: "Export as HTML",
|
|
441
|
+
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",
|
|
442
|
+
children: [
|
|
443
|
+
/* @__PURE__ */ p.jsx(Ye, { size: 16 }),
|
|
444
|
+
/* @__PURE__ */ p.jsx("span", { children: "Export" })
|
|
445
|
+
]
|
|
446
|
+
}
|
|
447
|
+
),
|
|
448
|
+
/* @__PURE__ */ p.jsxs(
|
|
449
|
+
"button",
|
|
450
|
+
{
|
|
451
|
+
onClick: o,
|
|
452
|
+
title: "Clear Editor",
|
|
453
|
+
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",
|
|
454
|
+
children: [
|
|
455
|
+
/* @__PURE__ */ p.jsx(Be, { size: 16 }),
|
|
456
|
+
/* @__PURE__ */ p.jsx("span", { children: "Clear" })
|
|
457
|
+
]
|
|
458
|
+
}
|
|
459
|
+
)
|
|
460
|
+
] })
|
|
461
|
+
] });
|
|
462
|
+
}, mt = ({
|
|
463
|
+
wordCount: e,
|
|
464
|
+
characterCount: n,
|
|
465
|
+
hasUnsavedChanges: r,
|
|
466
|
+
pendingImagesCount: o = 0
|
|
467
|
+
}) => /* @__PURE__ */ p.jsxs("div", { className: "flex justify-between items-center px-5 py-3 bg-gray-50 border-t border-gray-200 text-sm text-gray-600", children: [
|
|
468
|
+
/* @__PURE__ */ p.jsxs("div", { className: "flex items-center gap-6", children: [
|
|
469
|
+
/* @__PURE__ */ p.jsxs("div", { children: [
|
|
470
|
+
"Words: ",
|
|
471
|
+
/* @__PURE__ */ p.jsx("strong", { className: "text-gray-800", children: e })
|
|
472
|
+
] }),
|
|
473
|
+
/* @__PURE__ */ p.jsxs("div", { children: [
|
|
474
|
+
"Characters: ",
|
|
475
|
+
/* @__PURE__ */ p.jsx("strong", { className: "text-gray-800", children: n })
|
|
476
|
+
] }),
|
|
477
|
+
o > 0 && /* @__PURE__ */ p.jsxs("div", { className: "flex items-center gap-1", children: [
|
|
478
|
+
/* @__PURE__ */ p.jsx(ve, { size: 14, className: "text-blue-600" }),
|
|
479
|
+
/* @__PURE__ */ p.jsxs("span", { className: "text-blue-600", children: [
|
|
480
|
+
o,
|
|
481
|
+
" image",
|
|
482
|
+
o !== 1 ? "s" : ""
|
|
483
|
+
] })
|
|
484
|
+
] })
|
|
485
|
+
] }),
|
|
486
|
+
/* @__PURE__ */ p.jsx("div", { className: "flex items-center gap-2", children: /* @__PURE__ */ p.jsxs("div", { className: `flex items-center gap-1 ${r ? "text-orange-600" : "text-green-600"}`, children: [
|
|
487
|
+
r && /* @__PURE__ */ p.jsx(ze, { size: 14, className: "animate-pulse" }),
|
|
488
|
+
/* @__PURE__ */ p.jsx("strong", { children: r ? "Unsaved Changes" : "Saved" })
|
|
489
|
+
] }) })
|
|
490
|
+
] }), pt = ({
|
|
491
|
+
initialContent: e = "",
|
|
492
|
+
onImageUpload: n,
|
|
493
|
+
imageUploadEndpoint: r,
|
|
494
|
+
allowedImageTypes: o,
|
|
495
|
+
maxImageSize: s
|
|
496
|
+
}) => {
|
|
497
|
+
const [l, a] = pe({
|
|
498
|
+
content: e,
|
|
499
|
+
title: "Untitled Document",
|
|
500
|
+
wordCount: e.trim() ? e.trim().split(/\s+/).length : 0,
|
|
501
|
+
characterCount: e.length,
|
|
502
|
+
hasUnsavedChanges: !1,
|
|
503
|
+
pendingImages: []
|
|
504
|
+
}), c = me(null), m = me(/* @__PURE__ */ new Map()), _ = me(e);
|
|
505
|
+
fe(() => {
|
|
506
|
+
e !== _.current && (c.current && (c.current.innerHTML = e), a((f) => ({
|
|
507
|
+
...f,
|
|
508
|
+
content: e,
|
|
509
|
+
wordCount: e.trim() ? e.trim().split(/\s+/).length : 0,
|
|
510
|
+
characterCount: e.length,
|
|
511
|
+
hasUnsavedChanges: !1
|
|
512
|
+
})), _.current = e);
|
|
513
|
+
}, [e]), fe(() => {
|
|
514
|
+
c.current && !c.current.innerHTML && e && (c.current.innerHTML = e);
|
|
515
|
+
}, [e]);
|
|
516
|
+
const C = V((f) => {
|
|
517
|
+
const v = f.trim() ? f.trim().split(/\s+/).length : 0, j = f.length;
|
|
518
|
+
a((i) => ({
|
|
519
|
+
...i,
|
|
520
|
+
content: f,
|
|
521
|
+
wordCount: v,
|
|
522
|
+
characterCount: j,
|
|
523
|
+
hasUnsavedChanges: !0
|
|
524
|
+
})), _.current = f;
|
|
525
|
+
}, []), z = V((f) => {
|
|
526
|
+
a((v) => ({
|
|
527
|
+
...v,
|
|
528
|
+
title: f,
|
|
529
|
+
hasUnsavedChanges: !0
|
|
530
|
+
}));
|
|
531
|
+
}, []), L = V((f, v) => {
|
|
532
|
+
c.current && (c.current.focus(), document.execCommand(f, !1, v), C(c.current.innerHTML));
|
|
533
|
+
}, [C]), y = (f) => o.includes(f.type) ? f.size > s ? {
|
|
534
|
+
valid: !1,
|
|
535
|
+
error: `File too large. Maximum size: ${Math.round(s / (1024 * 1024))}MB`
|
|
536
|
+
} : { valid: !0 } : {
|
|
537
|
+
valid: !1,
|
|
538
|
+
error: `Invalid file type. Allowed types: ${o.join(", ")}`
|
|
539
|
+
}, I = V(async (f, v = !0) => {
|
|
540
|
+
const j = y(f);
|
|
541
|
+
if (!j.valid) {
|
|
542
|
+
alert(j.error);
|
|
543
|
+
return;
|
|
544
|
+
}
|
|
545
|
+
if (!c.current) return;
|
|
546
|
+
const i = `image-${Date.now()}-${Math.random().toString(36).substr(2, 9)}`, E = new FileReader();
|
|
547
|
+
E.onload = (A) => {
|
|
548
|
+
const F = A.target?.result;
|
|
549
|
+
m.current.set(i, {
|
|
550
|
+
originalUrl: F,
|
|
551
|
+
fileName: f.name,
|
|
552
|
+
size: f.size,
|
|
553
|
+
type: f.type
|
|
554
|
+
});
|
|
555
|
+
const P = document.createElement("img");
|
|
556
|
+
if (P.src = F, P.alt = f.name, P.className = "image-uploading", P.setAttribute("data-image-id", i), P.setAttribute("data-file-name", f.name), v && window.getSelection) {
|
|
557
|
+
const U = window.getSelection();
|
|
558
|
+
if (U && U.rangeCount > 0) {
|
|
559
|
+
const q = U.getRangeAt(0);
|
|
560
|
+
q.deleteContents(), q.insertNode(P), q.setStartAfter(P), q.collapse(!0), U.removeAllRanges(), U.addRange(q);
|
|
561
|
+
} else
|
|
562
|
+
c.current.appendChild(P);
|
|
563
|
+
} else
|
|
564
|
+
c.current.appendChild(P);
|
|
565
|
+
C(c.current.innerHTML), (n || r) && a((U) => ({
|
|
566
|
+
...U,
|
|
567
|
+
pendingImages: [
|
|
568
|
+
...U.pendingImages,
|
|
569
|
+
{
|
|
570
|
+
id: i,
|
|
571
|
+
file: f,
|
|
572
|
+
placeholderUrl: F,
|
|
573
|
+
status: "pending"
|
|
574
|
+
}
|
|
575
|
+
]
|
|
576
|
+
}));
|
|
577
|
+
}, E.readAsDataURL(f);
|
|
578
|
+
}, [n, r, C, o, s]), h = V(async () => {
|
|
579
|
+
if (!n && !r)
|
|
580
|
+
return;
|
|
581
|
+
const f = l.pendingImages.filter((v) => v.status === "pending");
|
|
582
|
+
if (f.length !== 0) {
|
|
583
|
+
for (const v of f)
|
|
584
|
+
try {
|
|
585
|
+
a((E) => ({
|
|
586
|
+
...E,
|
|
587
|
+
pendingImages: E.pendingImages.map(
|
|
588
|
+
(A) => A.id === v.id ? { ...A, status: "uploading" } : A
|
|
589
|
+
)
|
|
590
|
+
}));
|
|
591
|
+
let j;
|
|
592
|
+
if (n)
|
|
593
|
+
j = await n(v.file);
|
|
594
|
+
else if (r) {
|
|
595
|
+
const E = new FormData();
|
|
596
|
+
E.append("image", v.file);
|
|
597
|
+
const A = await fetch(r, {
|
|
598
|
+
method: "POST",
|
|
599
|
+
body: E
|
|
600
|
+
});
|
|
601
|
+
if (!A.ok)
|
|
602
|
+
throw new Error(`Upload failed: ${A.statusText}`);
|
|
603
|
+
const F = await A.json();
|
|
604
|
+
j = F.url || F.imageUrl || F.data;
|
|
605
|
+
} else
|
|
606
|
+
throw new Error("No upload method provided");
|
|
607
|
+
const i = c.current?.querySelector(`img[data-image-id="${v.id}"]`);
|
|
608
|
+
if (i) {
|
|
609
|
+
i.src = j, i.classList.remove("image-uploading"), i.classList.add("image-uploaded");
|
|
610
|
+
const E = m.current.get(v.id);
|
|
611
|
+
E && m.current.set(v.id, {
|
|
612
|
+
...E,
|
|
613
|
+
uploadedUrl: j
|
|
614
|
+
});
|
|
615
|
+
}
|
|
616
|
+
a((E) => ({
|
|
617
|
+
...E,
|
|
618
|
+
pendingImages: E.pendingImages.map(
|
|
619
|
+
(A) => A.id === v.id ? { ...A, status: "uploaded" } : A
|
|
620
|
+
)
|
|
621
|
+
}));
|
|
622
|
+
} catch (j) {
|
|
623
|
+
console.error("Image upload failed:", j);
|
|
624
|
+
const i = c.current?.querySelector(`img[data-image-id="${v.id}"]`);
|
|
625
|
+
i && (i.classList.remove("image-uploading"), i.classList.add("image-failed")), a((E) => ({
|
|
626
|
+
...E,
|
|
627
|
+
pendingImages: E.pendingImages.map(
|
|
628
|
+
(A) => A.id === v.id ? { ...A, status: "failed" } : A
|
|
629
|
+
)
|
|
630
|
+
}));
|
|
631
|
+
}
|
|
632
|
+
c.current && C(c.current.innerHTML);
|
|
633
|
+
}
|
|
634
|
+
}, [l.pendingImages, n, r, C]), R = V((f) => {
|
|
635
|
+
const v = f.clipboardData.items;
|
|
636
|
+
for (const j of v)
|
|
637
|
+
if (j.type.indexOf("image") !== -1) {
|
|
638
|
+
f.preventDefault();
|
|
639
|
+
const i = j.getAsFile();
|
|
640
|
+
i && I(i);
|
|
641
|
+
break;
|
|
642
|
+
}
|
|
643
|
+
setTimeout(() => {
|
|
644
|
+
c.current && C(c.current.innerHTML);
|
|
645
|
+
}, 0);
|
|
646
|
+
}, [I, C]), $ = V((f) => {
|
|
647
|
+
f.preventDefault();
|
|
648
|
+
const v = f.dataTransfer.files;
|
|
649
|
+
for (const j of v)
|
|
650
|
+
j.type.startsWith("image/") && I(j, !1);
|
|
651
|
+
}, [I]), D = V(() => {
|
|
652
|
+
try {
|
|
653
|
+
const f = c.current?.innerHTML || l.content;
|
|
654
|
+
return { success: !0, data: {
|
|
655
|
+
title: l.title,
|
|
656
|
+
content: f,
|
|
657
|
+
metadata: {
|
|
658
|
+
createdAt: (/* @__PURE__ */ new Date()).toISOString(),
|
|
659
|
+
updatedAt: (/* @__PURE__ */ new Date()).toISOString(),
|
|
660
|
+
wordCount: l.wordCount,
|
|
661
|
+
characterCount: l.characterCount
|
|
662
|
+
}
|
|
663
|
+
} };
|
|
664
|
+
} catch (f) {
|
|
665
|
+
return { success: !1, error: f instanceof Error ? f.message : "Validation failed" };
|
|
666
|
+
}
|
|
667
|
+
}, [l]), O = V(
|
|
668
|
+
(f = { includeStyles: !0, includeMeta: !0 }) => {
|
|
669
|
+
const v = D();
|
|
670
|
+
if (!v.success)
|
|
671
|
+
throw new Error(v.error);
|
|
672
|
+
const { data: j } = v;
|
|
673
|
+
let i = `<!DOCTYPE html>
|
|
674
|
+
<html>
|
|
675
|
+
<head>
|
|
676
|
+
<meta charset="UTF-8">
|
|
677
|
+
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
|
678
|
+
<title>${j?.title || "Document"}</title>`;
|
|
679
|
+
return f.includeStyles && (i += `
|
|
680
|
+
<style>
|
|
681
|
+
body {
|
|
682
|
+
font-family: system-ui, -apple-system, sans-serif;
|
|
683
|
+
line-height: 1.6;
|
|
684
|
+
margin: 40px;
|
|
685
|
+
max-width: 800px;
|
|
686
|
+
background: #f8fafc;
|
|
687
|
+
}
|
|
688
|
+
.editor-content {
|
|
689
|
+
border: 1px solid #e2e8f0;
|
|
690
|
+
padding: 24px;
|
|
691
|
+
border-radius: 12px;
|
|
692
|
+
background: white;
|
|
693
|
+
box-shadow: 0 1px 3px 0 rgb(0 0 0 / 0.1);
|
|
694
|
+
}
|
|
695
|
+
.readonly-content {
|
|
696
|
+
background: #f9f9f9;
|
|
697
|
+
cursor: default;
|
|
698
|
+
user-select: text;
|
|
699
|
+
}
|
|
700
|
+
img {
|
|
701
|
+
max-width: 100%;
|
|
702
|
+
height: auto;
|
|
703
|
+
border-radius: 8px;
|
|
704
|
+
box-shadow: 0 2px 4px rgba(0,0,0,0.1);
|
|
705
|
+
margin: 16px 0;
|
|
706
|
+
}
|
|
707
|
+
</style>`), i += `
|
|
708
|
+
</head>
|
|
709
|
+
<body>`, f.includeMeta && j && (i += `
|
|
710
|
+
<div class="document-meta">
|
|
711
|
+
<h1>${j.title}</h1>
|
|
712
|
+
<p><small>Created: ${new Date(j.metadata.createdAt).toLocaleString()} |
|
|
713
|
+
Words: ${j.metadata.wordCount} |
|
|
714
|
+
Characters: ${j.metadata.characterCount}</small></p>
|
|
715
|
+
<hr>
|
|
716
|
+
</div>`), i += `
|
|
717
|
+
<div class="${f.includeStyles ? "readonly-content" : ""}">
|
|
718
|
+
${j?.content || ""}
|
|
719
|
+
</div>
|
|
720
|
+
</body>
|
|
721
|
+
</html>`, i;
|
|
722
|
+
},
|
|
723
|
+
[D]
|
|
724
|
+
), N = V(() => {
|
|
725
|
+
a({
|
|
726
|
+
content: "",
|
|
727
|
+
title: "Untitled Document",
|
|
728
|
+
wordCount: 0,
|
|
729
|
+
characterCount: 0,
|
|
730
|
+
hasUnsavedChanges: !1,
|
|
731
|
+
pendingImages: []
|
|
732
|
+
}), m.current.clear(), c.current && (c.current.innerHTML = ""), _.current = "";
|
|
733
|
+
}, []);
|
|
734
|
+
return {
|
|
735
|
+
editorState: l,
|
|
736
|
+
editorRef: c,
|
|
737
|
+
updateContent: C,
|
|
738
|
+
updateTitle: z,
|
|
739
|
+
executeCommand: L,
|
|
740
|
+
getValidationResult: D,
|
|
741
|
+
exportToHTML: O,
|
|
742
|
+
clearEditor: N,
|
|
743
|
+
handlePaste: R,
|
|
744
|
+
handleDrop: $,
|
|
745
|
+
insertImage: I,
|
|
746
|
+
uploadPendingImages: h
|
|
747
|
+
};
|
|
748
|
+
}, ft = (e, n) => {
|
|
749
|
+
const r = new Array(e.length + n.length);
|
|
750
|
+
for (let o = 0; o < e.length; o++)
|
|
751
|
+
r[o] = e[o];
|
|
752
|
+
for (let o = 0; o < n.length; o++)
|
|
753
|
+
r[e.length + o] = n[o];
|
|
754
|
+
return r;
|
|
755
|
+
}, gt = (e, n) => ({
|
|
756
|
+
classGroupId: e,
|
|
757
|
+
validator: n
|
|
758
|
+
}), Ne = (e = /* @__PURE__ */ new Map(), n = null, r) => ({
|
|
759
|
+
nextPart: e,
|
|
760
|
+
validators: n,
|
|
761
|
+
classGroupId: r
|
|
762
|
+
}), ge = "-", Re = [], ht = "arbitrary..", bt = (e) => {
|
|
763
|
+
const n = yt(e), {
|
|
764
|
+
conflictingClassGroups: r,
|
|
765
|
+
conflictingClassGroupModifiers: o
|
|
284
766
|
} = e;
|
|
285
767
|
return {
|
|
286
|
-
getClassGroupId: (
|
|
287
|
-
|
|
288
|
-
|
|
768
|
+
getClassGroupId: (a) => {
|
|
769
|
+
if (a.startsWith("[") && a.endsWith("]"))
|
|
770
|
+
return xt(a);
|
|
771
|
+
const c = a.split(ge), m = c[0] === "" && c.length > 1 ? 1 : 0;
|
|
772
|
+
return Le(c, m, n);
|
|
289
773
|
},
|
|
290
|
-
getConflictingClassGroupIds: (
|
|
291
|
-
|
|
292
|
-
|
|
774
|
+
getConflictingClassGroupIds: (a, c) => {
|
|
775
|
+
if (c) {
|
|
776
|
+
const m = o[a], _ = r[a];
|
|
777
|
+
return m ? _ ? ft(_, m) : m : _ || Re;
|
|
778
|
+
}
|
|
779
|
+
return r[a] || Re;
|
|
293
780
|
}
|
|
294
781
|
};
|
|
295
|
-
},
|
|
296
|
-
if (e.length === 0)
|
|
297
|
-
return
|
|
298
|
-
const
|
|
299
|
-
if (
|
|
300
|
-
|
|
301
|
-
|
|
782
|
+
}, Le = (e, n, r) => {
|
|
783
|
+
if (e.length - n === 0)
|
|
784
|
+
return r.classGroupId;
|
|
785
|
+
const s = e[n], l = r.nextPart.get(s);
|
|
786
|
+
if (l) {
|
|
787
|
+
const _ = Le(e, n + 1, l);
|
|
788
|
+
if (_) return _;
|
|
789
|
+
}
|
|
790
|
+
const a = r.validators;
|
|
791
|
+
if (a === null)
|
|
302
792
|
return;
|
|
303
|
-
const
|
|
304
|
-
|
|
305
|
-
|
|
306
|
-
|
|
307
|
-
|
|
308
|
-
if (Ee.test(e)) {
|
|
309
|
-
const l = Ee.exec(e)[1], a = l?.substring(0, l.indexOf(":"));
|
|
310
|
-
if (a)
|
|
311
|
-
return "arbitrary.." + a;
|
|
793
|
+
const c = n === 0 ? e.join(ge) : e.slice(n).join(ge), m = a.length;
|
|
794
|
+
for (let _ = 0; _ < m; _++) {
|
|
795
|
+
const C = a[_];
|
|
796
|
+
if (C.validator(c))
|
|
797
|
+
return C.classGroupId;
|
|
312
798
|
}
|
|
313
|
-
},
|
|
799
|
+
}, xt = (e) => e.slice(1, -1).indexOf(":") === -1 ? void 0 : (() => {
|
|
800
|
+
const n = e.slice(1, -1), r = n.indexOf(":"), o = n.slice(0, r);
|
|
801
|
+
return o ? ht + o : void 0;
|
|
802
|
+
})(), yt = (e) => {
|
|
314
803
|
const {
|
|
315
|
-
theme:
|
|
316
|
-
classGroups:
|
|
317
|
-
} = e
|
|
318
|
-
|
|
319
|
-
|
|
320
|
-
|
|
321
|
-
for (const o in
|
|
322
|
-
|
|
323
|
-
|
|
324
|
-
}
|
|
325
|
-
|
|
326
|
-
|
|
327
|
-
|
|
328
|
-
|
|
329
|
-
|
|
330
|
-
|
|
331
|
-
|
|
332
|
-
|
|
333
|
-
|
|
334
|
-
|
|
335
|
-
|
|
336
|
-
|
|
337
|
-
|
|
338
|
-
|
|
339
|
-
|
|
340
|
-
|
|
341
|
-
|
|
342
|
-
|
|
343
|
-
|
|
344
|
-
|
|
345
|
-
|
|
346
|
-
|
|
347
|
-
|
|
348
|
-
|
|
349
|
-
|
|
350
|
-
|
|
351
|
-
|
|
352
|
-
|
|
353
|
-
|
|
354
|
-
|
|
804
|
+
theme: n,
|
|
805
|
+
classGroups: r
|
|
806
|
+
} = e;
|
|
807
|
+
return vt(r, n);
|
|
808
|
+
}, vt = (e, n) => {
|
|
809
|
+
const r = Ne();
|
|
810
|
+
for (const o in e) {
|
|
811
|
+
const s = e[o];
|
|
812
|
+
ke(s, r, o, n);
|
|
813
|
+
}
|
|
814
|
+
return r;
|
|
815
|
+
}, ke = (e, n, r, o) => {
|
|
816
|
+
const s = e.length;
|
|
817
|
+
for (let l = 0; l < s; l++) {
|
|
818
|
+
const a = e[l];
|
|
819
|
+
wt(a, n, r, o);
|
|
820
|
+
}
|
|
821
|
+
}, wt = (e, n, r, o) => {
|
|
822
|
+
if (typeof e == "string") {
|
|
823
|
+
kt(e, n, r);
|
|
824
|
+
return;
|
|
825
|
+
}
|
|
826
|
+
if (typeof e == "function") {
|
|
827
|
+
_t(e, n, r, o);
|
|
828
|
+
return;
|
|
829
|
+
}
|
|
830
|
+
Ct(e, n, r, o);
|
|
831
|
+
}, kt = (e, n, r) => {
|
|
832
|
+
const o = e === "" ? n : Ie(n, e);
|
|
833
|
+
o.classGroupId = r;
|
|
834
|
+
}, _t = (e, n, r, o) => {
|
|
835
|
+
if (jt(e)) {
|
|
836
|
+
ke(e(o), n, r, o);
|
|
837
|
+
return;
|
|
838
|
+
}
|
|
839
|
+
n.validators === null && (n.validators = []), n.validators.push(gt(r, e));
|
|
840
|
+
}, Ct = (e, n, r, o) => {
|
|
841
|
+
const s = Object.entries(e), l = s.length;
|
|
842
|
+
for (let a = 0; a < l; a++) {
|
|
843
|
+
const [c, m] = s[a];
|
|
844
|
+
ke(m, Ie(n, c), r, o);
|
|
845
|
+
}
|
|
846
|
+
}, Ie = (e, n) => {
|
|
847
|
+
let r = e;
|
|
848
|
+
const o = n.split(ge), s = o.length;
|
|
849
|
+
for (let l = 0; l < s; l++) {
|
|
850
|
+
const a = o[l];
|
|
851
|
+
let c = r.nextPart.get(a);
|
|
852
|
+
c || (c = Ne(), r.nextPart.set(a, c)), r = c;
|
|
853
|
+
}
|
|
854
|
+
return r;
|
|
855
|
+
}, jt = (e) => "isThemeGetter" in e && e.isThemeGetter === !0, Rt = (e) => {
|
|
355
856
|
if (e < 1)
|
|
356
857
|
return {
|
|
357
858
|
get: () => {
|
|
@@ -359,178 +860,178 @@ const we = "-", We = (e) => {
|
|
|
359
860
|
set: () => {
|
|
360
861
|
}
|
|
361
862
|
};
|
|
362
|
-
let
|
|
363
|
-
const
|
|
364
|
-
a
|
|
863
|
+
let n = 0, r = /* @__PURE__ */ Object.create(null), o = /* @__PURE__ */ Object.create(null);
|
|
864
|
+
const s = (l, a) => {
|
|
865
|
+
r[l] = a, n++, n > e && (n = 0, o = r, r = /* @__PURE__ */ Object.create(null));
|
|
365
866
|
};
|
|
366
867
|
return {
|
|
367
|
-
get(
|
|
368
|
-
let
|
|
369
|
-
if (
|
|
370
|
-
return
|
|
371
|
-
if ((
|
|
372
|
-
return
|
|
868
|
+
get(l) {
|
|
869
|
+
let a = r[l];
|
|
870
|
+
if (a !== void 0)
|
|
871
|
+
return a;
|
|
872
|
+
if ((a = o[l]) !== void 0)
|
|
873
|
+
return s(l, a), a;
|
|
373
874
|
},
|
|
374
|
-
set(
|
|
375
|
-
|
|
875
|
+
set(l, a) {
|
|
876
|
+
l in r ? r[l] = a : s(l, a);
|
|
376
877
|
}
|
|
377
878
|
};
|
|
378
|
-
},
|
|
879
|
+
}, we = "!", Ee = ":", Et = [], Te = (e, n, r, o, s) => ({
|
|
880
|
+
modifiers: e,
|
|
881
|
+
hasImportantModifier: n,
|
|
882
|
+
baseClassName: r,
|
|
883
|
+
maybePostfixModifierPosition: o,
|
|
884
|
+
isExternal: s
|
|
885
|
+
}), Tt = (e) => {
|
|
379
886
|
const {
|
|
380
|
-
prefix:
|
|
381
|
-
experimentalParseClassName:
|
|
887
|
+
prefix: n,
|
|
888
|
+
experimentalParseClassName: r
|
|
382
889
|
} = e;
|
|
383
|
-
let
|
|
384
|
-
const
|
|
385
|
-
let
|
|
386
|
-
|
|
387
|
-
|
|
388
|
-
|
|
389
|
-
|
|
390
|
-
|
|
890
|
+
let o = (s) => {
|
|
891
|
+
const l = [];
|
|
892
|
+
let a = 0, c = 0, m = 0, _;
|
|
893
|
+
const C = s.length;
|
|
894
|
+
for (let h = 0; h < C; h++) {
|
|
895
|
+
const R = s[h];
|
|
896
|
+
if (a === 0 && c === 0) {
|
|
897
|
+
if (R === Ee) {
|
|
898
|
+
l.push(s.slice(m, h)), m = h + 1;
|
|
391
899
|
continue;
|
|
392
900
|
}
|
|
393
|
-
if (
|
|
394
|
-
|
|
901
|
+
if (R === "/") {
|
|
902
|
+
_ = h;
|
|
395
903
|
continue;
|
|
396
904
|
}
|
|
397
905
|
}
|
|
398
|
-
|
|
906
|
+
R === "[" ? a++ : R === "]" ? a-- : R === "(" ? c++ : R === ")" && c--;
|
|
399
907
|
}
|
|
400
|
-
const
|
|
401
|
-
|
|
402
|
-
|
|
403
|
-
|
|
404
|
-
|
|
405
|
-
|
|
406
|
-
|
|
908
|
+
const z = l.length === 0 ? s : s.slice(m);
|
|
909
|
+
let L = z, y = !1;
|
|
910
|
+
z.endsWith(we) ? (L = z.slice(0, -1), y = !0) : (
|
|
911
|
+
/**
|
|
912
|
+
* In Tailwind CSS v3 the important modifier was at the start of the base class name. This is still supported for legacy reasons.
|
|
913
|
+
* @see https://github.com/dcastil/tailwind-merge/issues/513#issuecomment-2614029864
|
|
914
|
+
*/
|
|
915
|
+
z.startsWith(we) && (L = z.slice(1), y = !0)
|
|
916
|
+
);
|
|
917
|
+
const I = _ && _ > m ? _ - m : void 0;
|
|
918
|
+
return Te(l, y, L, I);
|
|
407
919
|
};
|
|
408
|
-
if (
|
|
409
|
-
const
|
|
410
|
-
|
|
411
|
-
isExternal: !0,
|
|
412
|
-
modifiers: [],
|
|
413
|
-
hasImportantModifier: !1,
|
|
414
|
-
baseClassName: p,
|
|
415
|
-
maybePostfixModifierPosition: void 0
|
|
416
|
-
};
|
|
920
|
+
if (n) {
|
|
921
|
+
const s = n + Ee, l = o;
|
|
922
|
+
o = (a) => a.startsWith(s) ? l(a.slice(s.length)) : Te(Et, !1, a, void 0, !0);
|
|
417
923
|
}
|
|
418
|
-
if (
|
|
419
|
-
const
|
|
420
|
-
|
|
421
|
-
className:
|
|
422
|
-
parseClassName:
|
|
924
|
+
if (r) {
|
|
925
|
+
const s = o;
|
|
926
|
+
o = (l) => r({
|
|
927
|
+
className: l,
|
|
928
|
+
parseClassName: s
|
|
423
929
|
});
|
|
424
930
|
}
|
|
425
|
-
return
|
|
426
|
-
},
|
|
427
|
-
const
|
|
428
|
-
return (
|
|
429
|
-
|
|
430
|
-
|
|
931
|
+
return o;
|
|
932
|
+
}, St = (e) => {
|
|
933
|
+
const n = /* @__PURE__ */ new Map();
|
|
934
|
+
return e.orderSensitiveModifiers.forEach((r, o) => {
|
|
935
|
+
n.set(r, 1e6 + o);
|
|
936
|
+
}), (r) => {
|
|
431
937
|
const o = [];
|
|
432
|
-
let
|
|
433
|
-
|
|
434
|
-
|
|
435
|
-
|
|
938
|
+
let s = [];
|
|
939
|
+
for (let l = 0; l < r.length; l++) {
|
|
940
|
+
const a = r[l], c = a[0] === "[", m = n.has(a);
|
|
941
|
+
c || m ? (s.length > 0 && (s.sort(), o.push(...s), s = []), o.push(a)) : s.push(a);
|
|
942
|
+
}
|
|
943
|
+
return s.length > 0 && (s.sort(), o.push(...s)), o;
|
|
436
944
|
};
|
|
437
|
-
},
|
|
438
|
-
cache:
|
|
439
|
-
parseClassName:
|
|
440
|
-
sortModifiers:
|
|
441
|
-
...
|
|
442
|
-
}),
|
|
945
|
+
}, At = (e) => ({
|
|
946
|
+
cache: Rt(e.cacheSize),
|
|
947
|
+
parseClassName: Tt(e),
|
|
948
|
+
sortModifiers: St(e),
|
|
949
|
+
...bt(e)
|
|
950
|
+
}), zt = /\s+/, Nt = (e, n) => {
|
|
443
951
|
const {
|
|
444
|
-
parseClassName:
|
|
445
|
-
getClassGroupId:
|
|
446
|
-
getConflictingClassGroupIds:
|
|
447
|
-
sortModifiers:
|
|
448
|
-
} =
|
|
449
|
-
let
|
|
450
|
-
for (let
|
|
451
|
-
const C =
|
|
452
|
-
isExternal:
|
|
453
|
-
modifiers:
|
|
454
|
-
hasImportantModifier:
|
|
455
|
-
baseClassName:
|
|
456
|
-
maybePostfixModifierPosition:
|
|
457
|
-
} =
|
|
458
|
-
if (
|
|
459
|
-
|
|
952
|
+
parseClassName: r,
|
|
953
|
+
getClassGroupId: o,
|
|
954
|
+
getConflictingClassGroupIds: s,
|
|
955
|
+
sortModifiers: l
|
|
956
|
+
} = n, a = [], c = e.trim().split(zt);
|
|
957
|
+
let m = "";
|
|
958
|
+
for (let _ = c.length - 1; _ >= 0; _ -= 1) {
|
|
959
|
+
const C = c[_], {
|
|
960
|
+
isExternal: z,
|
|
961
|
+
modifiers: L,
|
|
962
|
+
hasImportantModifier: y,
|
|
963
|
+
baseClassName: I,
|
|
964
|
+
maybePostfixModifierPosition: h
|
|
965
|
+
} = r(C);
|
|
966
|
+
if (z) {
|
|
967
|
+
m = C + (m.length > 0 ? " " + m : m);
|
|
460
968
|
continue;
|
|
461
969
|
}
|
|
462
|
-
let
|
|
463
|
-
if (
|
|
464
|
-
if (!
|
|
465
|
-
|
|
970
|
+
let R = !!h, $ = o(R ? I.substring(0, h) : I);
|
|
971
|
+
if (!$) {
|
|
972
|
+
if (!R) {
|
|
973
|
+
m = C + (m.length > 0 ? " " + m : m);
|
|
466
974
|
continue;
|
|
467
975
|
}
|
|
468
|
-
if (
|
|
469
|
-
|
|
976
|
+
if ($ = o(I), !$) {
|
|
977
|
+
m = C + (m.length > 0 ? " " + m : m);
|
|
470
978
|
continue;
|
|
471
979
|
}
|
|
472
|
-
|
|
980
|
+
R = !1;
|
|
473
981
|
}
|
|
474
|
-
const
|
|
475
|
-
if (
|
|
982
|
+
const D = L.length === 0 ? "" : L.length === 1 ? L[0] : l(L).join(":"), O = y ? D + we : D, N = O + $;
|
|
983
|
+
if (a.indexOf(N) > -1)
|
|
476
984
|
continue;
|
|
477
|
-
|
|
478
|
-
const
|
|
479
|
-
for (let
|
|
480
|
-
const
|
|
481
|
-
|
|
985
|
+
a.push(N);
|
|
986
|
+
const f = s($, R);
|
|
987
|
+
for (let v = 0; v < f.length; ++v) {
|
|
988
|
+
const j = f[v];
|
|
989
|
+
a.push(O + j);
|
|
482
990
|
}
|
|
483
|
-
|
|
991
|
+
m = C + (m.length > 0 ? " " + m : m);
|
|
484
992
|
}
|
|
485
|
-
return
|
|
486
|
-
}
|
|
487
|
-
|
|
488
|
-
|
|
489
|
-
|
|
490
|
-
|
|
491
|
-
|
|
492
|
-
}
|
|
493
|
-
const Se = (e) => {
|
|
993
|
+
return m;
|
|
994
|
+
}, Lt = (...e) => {
|
|
995
|
+
let n = 0, r, o, s = "";
|
|
996
|
+
for (; n < e.length; )
|
|
997
|
+
(r = e[n++]) && (o = Pe(r)) && (s && (s += " "), s += o);
|
|
998
|
+
return s;
|
|
999
|
+
}, Pe = (e) => {
|
|
494
1000
|
if (typeof e == "string")
|
|
495
1001
|
return e;
|
|
496
|
-
let
|
|
497
|
-
for (let
|
|
498
|
-
e[
|
|
499
|
-
return
|
|
500
|
-
}
|
|
501
|
-
|
|
502
|
-
|
|
503
|
-
|
|
504
|
-
|
|
505
|
-
|
|
506
|
-
|
|
507
|
-
|
|
508
|
-
|
|
509
|
-
|
|
510
|
-
|
|
511
|
-
const C = or(g, a);
|
|
512
|
-
return o(g, C), C;
|
|
513
|
-
}
|
|
514
|
-
return function() {
|
|
515
|
-
return b(sr.apply(null, arguments));
|
|
1002
|
+
let n, r = "";
|
|
1003
|
+
for (let o = 0; o < e.length; o++)
|
|
1004
|
+
e[o] && (n = Pe(e[o])) && (r && (r += " "), r += n);
|
|
1005
|
+
return r;
|
|
1006
|
+
}, It = (e, ...n) => {
|
|
1007
|
+
let r, o, s, l;
|
|
1008
|
+
const a = (m) => {
|
|
1009
|
+
const _ = n.reduce((C, z) => z(C), e());
|
|
1010
|
+
return r = At(_), o = r.cache.get, s = r.cache.set, l = c, c(m);
|
|
1011
|
+
}, c = (m) => {
|
|
1012
|
+
const _ = o(m);
|
|
1013
|
+
if (_)
|
|
1014
|
+
return _;
|
|
1015
|
+
const C = Nt(m, r);
|
|
1016
|
+
return s(m, C), C;
|
|
516
1017
|
};
|
|
517
|
-
|
|
518
|
-
|
|
519
|
-
const
|
|
520
|
-
return
|
|
521
|
-
},
|
|
1018
|
+
return l = a, (...m) => l(Lt(...m));
|
|
1019
|
+
}, Pt = [], M = (e) => {
|
|
1020
|
+
const n = (r) => r[e] || Pt;
|
|
1021
|
+
return n.isThemeGetter = !0, n;
|
|
1022
|
+
}, Oe = /^\[(?:(\w[\w-]*):)?(.+)\]$/i, Me = /^\((?:(\w[\w-]*):)?(.+)\)$/i, Ot = /^\d+\/\d+$/, Mt = /^(\d+(\.\d+)?)?(xs|sm|md|lg|xl)$/, $t = /\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$/, Dt = /^(rgba?|hsla?|hwb|(ok)?(lab|lch)|color-mix)\(.+\)$/, Ft = /^(inset_)?-?((\d+)?\.?(\d+)[a-z]+|0)_-?((\d+)?\.?(\d+)[a-z]+|0)/, Ut = /^(url|image|image-set|cross-fade|element|(repeating-)?(linear|radial|conic)-gradient)\(.+\)$/, re = (e) => Ot.test(e), w = (e) => !!e && !Number.isNaN(Number(e)), Z = (e) => !!e && Number.isInteger(Number(e)), be = (e) => e.endsWith("%") && w(e.slice(0, -1)), J = (e) => Mt.test(e), Gt = () => !0, Vt = (e) => (
|
|
522
1023
|
// `colorFunctionRegex` check is necessary because color functions can have percentages in them which which would be incorrectly classified as lengths.
|
|
523
1024
|
// For example, `hsl(0 0% 0%)` would be classified as a length without this check.
|
|
524
1025
|
// I could also use lookbehind assertion in `lengthUnitRegex` but that isn't supported widely enough.
|
|
525
|
-
|
|
526
|
-
),
|
|
527
|
-
const
|
|
528
|
-
return
|
|
529
|
-
},
|
|
530
|
-
const
|
|
531
|
-
return
|
|
532
|
-
},
|
|
533
|
-
const e =
|
|
1026
|
+
$t.test(e) && !Dt.test(e)
|
|
1027
|
+
), $e = () => !1, qt = (e) => Ft.test(e), Wt = (e) => Ut.test(e), Yt = (e) => !d(e) && !u(e), Bt = (e) => oe(e, Ue, $e), d = (e) => Oe.test(e), Q = (e) => oe(e, Ge, Vt), xe = (e) => oe(e, Qt, w), Se = (e) => oe(e, De, $e), Ht = (e) => oe(e, Fe, Wt), de = (e) => oe(e, Ve, qt), u = (e) => Me.test(e), ie = (e) => ne(e, Ge), Jt = (e) => ne(e, Kt), Ae = (e) => ne(e, De), Xt = (e) => ne(e, Ue), Zt = (e) => ne(e, Fe), ue = (e) => ne(e, Ve, !0), oe = (e, n, r) => {
|
|
1028
|
+
const o = Oe.exec(e);
|
|
1029
|
+
return o ? o[1] ? n(o[1]) : r(o[2]) : !1;
|
|
1030
|
+
}, ne = (e, n, r = !1) => {
|
|
1031
|
+
const o = Me.exec(e);
|
|
1032
|
+
return o ? o[1] ? n(o[1]) : r : !1;
|
|
1033
|
+
}, De = (e) => e === "position" || e === "percentage", Fe = (e) => e === "image" || e === "url", Ue = (e) => e === "length" || e === "size" || e === "bg-size", Ge = (e) => e === "length", Qt = (e) => e === "number", Kt = (e) => e === "family-name", Ve = (e) => e === "shadow", er = () => {
|
|
1034
|
+
const e = M("color"), n = M("font"), r = M("text"), o = M("font-weight"), s = M("tracking"), l = M("leading"), a = M("breakpoint"), c = M("container"), m = M("spacing"), _ = M("radius"), C = M("shadow"), z = M("inset-shadow"), L = M("text-shadow"), y = M("drop-shadow"), I = M("blur"), h = M("perspective"), R = M("aspect"), $ = M("ease"), D = M("animate"), O = () => ["auto", "avoid", "all", "avoid-page", "page", "left", "right", "column"], N = () => [
|
|
534
1035
|
"center",
|
|
535
1036
|
"top",
|
|
536
1037
|
"bottom",
|
|
@@ -548,51 +1049,51 @@ const j = (e) => {
|
|
|
548
1049
|
"bottom-left",
|
|
549
1050
|
// Deprecated since Tailwind CSS v4.1.0, see https://github.com/tailwindlabs/tailwindcss/pull/17378
|
|
550
1051
|
"left-bottom"
|
|
551
|
-
],
|
|
552
|
-
span: ["full",
|
|
553
|
-
},
|
|
554
|
-
position: [
|
|
555
|
-
}],
|
|
1052
|
+
], f = () => [...N(), u, d], v = () => ["auto", "hidden", "clip", "visible", "scroll"], j = () => ["auto", "contain", "none"], i = () => [u, d, m], E = () => [re, "full", "auto", ...i()], A = () => [Z, "none", "subgrid", u, d], F = () => ["auto", {
|
|
1053
|
+
span: ["full", Z, u, d]
|
|
1054
|
+
}, Z, u, d], P = () => [Z, "auto", u, d], U = () => ["auto", "min", "max", "fr", u, d], q = () => ["start", "end", "center", "between", "around", "evenly", "stretch", "baseline", "center-safe", "end-safe"], W = () => ["start", "end", "center", "stretch", "center-safe", "end-safe"], G = () => ["auto", ...i()], Y = () => [re, "auto", "full", "dvw", "dvh", "lvw", "lvh", "svw", "svh", "min", "max", "fit", ...i()], g = () => [e, u, d], K = () => [...N(), Ae, Se, {
|
|
1055
|
+
position: [u, d]
|
|
1056
|
+
}], S = () => ["no-repeat", {
|
|
556
1057
|
repeat: ["", "x", "y", "space", "round"]
|
|
557
|
-
}],
|
|
558
|
-
size: [
|
|
559
|
-
}],
|
|
1058
|
+
}], t = () => ["auto", "cover", "contain", Xt, Bt, {
|
|
1059
|
+
size: [u, d]
|
|
1060
|
+
}], b = () => [be, ie, Q], x = () => [
|
|
560
1061
|
// Deprecated since Tailwind CSS v4.0.0
|
|
561
1062
|
"",
|
|
562
1063
|
"none",
|
|
563
1064
|
"full",
|
|
564
|
-
|
|
565
|
-
|
|
566
|
-
|
|
567
|
-
],
|
|
1065
|
+
_,
|
|
1066
|
+
u,
|
|
1067
|
+
d
|
|
1068
|
+
], T = () => ["", w, ie, Q], B = () => ["solid", "dashed", "dotted", "double"], ee = () => ["normal", "multiply", "screen", "overlay", "darken", "lighten", "color-dodge", "color-burn", "hard-light", "soft-light", "difference", "exclusion", "hue", "saturation", "color", "luminosity"], k = () => [w, be, Ae, Se], H = () => [
|
|
568
1069
|
// Deprecated since Tailwind CSS v4.0.0
|
|
569
1070
|
"",
|
|
570
1071
|
"none",
|
|
571
|
-
|
|
572
|
-
|
|
573
|
-
|
|
574
|
-
],
|
|
1072
|
+
I,
|
|
1073
|
+
u,
|
|
1074
|
+
d
|
|
1075
|
+
], X = () => ["none", w, u, d], te = () => ["none", w, u, d], he = () => [w, u, d], le = () => [re, "full", ...i()];
|
|
575
1076
|
return {
|
|
576
1077
|
cacheSize: 500,
|
|
577
1078
|
theme: {
|
|
578
1079
|
animate: ["spin", "ping", "pulse", "bounce"],
|
|
579
1080
|
aspect: ["video"],
|
|
580
|
-
blur: [
|
|
581
|
-
breakpoint: [
|
|
582
|
-
color: [
|
|
583
|
-
container: [
|
|
584
|
-
"drop-shadow": [
|
|
1081
|
+
blur: [J],
|
|
1082
|
+
breakpoint: [J],
|
|
1083
|
+
color: [Gt],
|
|
1084
|
+
container: [J],
|
|
1085
|
+
"drop-shadow": [J],
|
|
585
1086
|
ease: ["in", "out", "in-out"],
|
|
586
|
-
font: [
|
|
1087
|
+
font: [Yt],
|
|
587
1088
|
"font-weight": ["thin", "extralight", "light", "normal", "medium", "semibold", "bold", "extrabold", "black"],
|
|
588
|
-
"inset-shadow": [
|
|
1089
|
+
"inset-shadow": [J],
|
|
589
1090
|
leading: ["none", "tight", "snug", "normal", "relaxed", "loose"],
|
|
590
1091
|
perspective: ["dramatic", "near", "normal", "midrange", "distant", "none"],
|
|
591
|
-
radius: [
|
|
592
|
-
shadow: [
|
|
593
|
-
spacing: ["px",
|
|
594
|
-
text: [
|
|
595
|
-
"text-shadow": [
|
|
1092
|
+
radius: [J],
|
|
1093
|
+
shadow: [J],
|
|
1094
|
+
spacing: ["px", w],
|
|
1095
|
+
text: [J],
|
|
1096
|
+
"text-shadow": [J],
|
|
596
1097
|
tracking: ["tighter", "tight", "normal", "wide", "wider", "widest"]
|
|
597
1098
|
},
|
|
598
1099
|
classGroups: {
|
|
@@ -604,7 +1105,7 @@ const j = (e) => {
|
|
|
604
1105
|
* @see https://tailwindcss.com/docs/aspect-ratio
|
|
605
1106
|
*/
|
|
606
1107
|
aspect: [{
|
|
607
|
-
aspect: ["auto", "square",
|
|
1108
|
+
aspect: ["auto", "square", re, d, u, R]
|
|
608
1109
|
}],
|
|
609
1110
|
/**
|
|
610
1111
|
* Container
|
|
@@ -617,21 +1118,21 @@ const j = (e) => {
|
|
|
617
1118
|
* @see https://tailwindcss.com/docs/columns
|
|
618
1119
|
*/
|
|
619
1120
|
columns: [{
|
|
620
|
-
columns: [
|
|
1121
|
+
columns: [w, d, u, c]
|
|
621
1122
|
}],
|
|
622
1123
|
/**
|
|
623
1124
|
* Break After
|
|
624
1125
|
* @see https://tailwindcss.com/docs/break-after
|
|
625
1126
|
*/
|
|
626
1127
|
"break-after": [{
|
|
627
|
-
"break-after":
|
|
1128
|
+
"break-after": O()
|
|
628
1129
|
}],
|
|
629
1130
|
/**
|
|
630
1131
|
* Break Before
|
|
631
1132
|
* @see https://tailwindcss.com/docs/break-before
|
|
632
1133
|
*/
|
|
633
1134
|
"break-before": [{
|
|
634
|
-
"break-before":
|
|
1135
|
+
"break-before": O()
|
|
635
1136
|
}],
|
|
636
1137
|
/**
|
|
637
1138
|
* Break Inside
|
|
@@ -695,49 +1196,49 @@ const j = (e) => {
|
|
|
695
1196
|
* @see https://tailwindcss.com/docs/object-position
|
|
696
1197
|
*/
|
|
697
1198
|
"object-position": [{
|
|
698
|
-
object:
|
|
1199
|
+
object: f()
|
|
699
1200
|
}],
|
|
700
1201
|
/**
|
|
701
1202
|
* Overflow
|
|
702
1203
|
* @see https://tailwindcss.com/docs/overflow
|
|
703
1204
|
*/
|
|
704
1205
|
overflow: [{
|
|
705
|
-
overflow:
|
|
1206
|
+
overflow: v()
|
|
706
1207
|
}],
|
|
707
1208
|
/**
|
|
708
1209
|
* Overflow X
|
|
709
1210
|
* @see https://tailwindcss.com/docs/overflow
|
|
710
1211
|
*/
|
|
711
1212
|
"overflow-x": [{
|
|
712
|
-
"overflow-x":
|
|
1213
|
+
"overflow-x": v()
|
|
713
1214
|
}],
|
|
714
1215
|
/**
|
|
715
1216
|
* Overflow Y
|
|
716
1217
|
* @see https://tailwindcss.com/docs/overflow
|
|
717
1218
|
*/
|
|
718
1219
|
"overflow-y": [{
|
|
719
|
-
"overflow-y":
|
|
1220
|
+
"overflow-y": v()
|
|
720
1221
|
}],
|
|
721
1222
|
/**
|
|
722
1223
|
* Overscroll Behavior
|
|
723
1224
|
* @see https://tailwindcss.com/docs/overscroll-behavior
|
|
724
1225
|
*/
|
|
725
1226
|
overscroll: [{
|
|
726
|
-
overscroll:
|
|
1227
|
+
overscroll: j()
|
|
727
1228
|
}],
|
|
728
1229
|
/**
|
|
729
1230
|
* Overscroll Behavior X
|
|
730
1231
|
* @see https://tailwindcss.com/docs/overscroll-behavior
|
|
731
1232
|
*/
|
|
732
1233
|
"overscroll-x": [{
|
|
733
|
-
"overscroll-x":
|
|
1234
|
+
"overscroll-x": j()
|
|
734
1235
|
}],
|
|
735
1236
|
/**
|
|
736
1237
|
* Overscroll Behavior Y
|
|
737
1238
|
* @see https://tailwindcss.com/docs/overscroll-behavior
|
|
738
1239
|
*/
|
|
739
1240
|
"overscroll-y": [{
|
|
740
|
-
"overscroll-y":
|
|
1241
|
+
"overscroll-y": j()
|
|
741
1242
|
}],
|
|
742
1243
|
/**
|
|
743
1244
|
* Position
|
|
@@ -749,63 +1250,63 @@ const j = (e) => {
|
|
|
749
1250
|
* @see https://tailwindcss.com/docs/top-right-bottom-left
|
|
750
1251
|
*/
|
|
751
1252
|
inset: [{
|
|
752
|
-
inset:
|
|
1253
|
+
inset: E()
|
|
753
1254
|
}],
|
|
754
1255
|
/**
|
|
755
1256
|
* Right / Left
|
|
756
1257
|
* @see https://tailwindcss.com/docs/top-right-bottom-left
|
|
757
1258
|
*/
|
|
758
1259
|
"inset-x": [{
|
|
759
|
-
"inset-x":
|
|
1260
|
+
"inset-x": E()
|
|
760
1261
|
}],
|
|
761
1262
|
/**
|
|
762
1263
|
* Top / Bottom
|
|
763
1264
|
* @see https://tailwindcss.com/docs/top-right-bottom-left
|
|
764
1265
|
*/
|
|
765
1266
|
"inset-y": [{
|
|
766
|
-
"inset-y":
|
|
1267
|
+
"inset-y": E()
|
|
767
1268
|
}],
|
|
768
1269
|
/**
|
|
769
1270
|
* Start
|
|
770
1271
|
* @see https://tailwindcss.com/docs/top-right-bottom-left
|
|
771
1272
|
*/
|
|
772
1273
|
start: [{
|
|
773
|
-
start:
|
|
1274
|
+
start: E()
|
|
774
1275
|
}],
|
|
775
1276
|
/**
|
|
776
1277
|
* End
|
|
777
1278
|
* @see https://tailwindcss.com/docs/top-right-bottom-left
|
|
778
1279
|
*/
|
|
779
1280
|
end: [{
|
|
780
|
-
end:
|
|
1281
|
+
end: E()
|
|
781
1282
|
}],
|
|
782
1283
|
/**
|
|
783
1284
|
* Top
|
|
784
1285
|
* @see https://tailwindcss.com/docs/top-right-bottom-left
|
|
785
1286
|
*/
|
|
786
1287
|
top: [{
|
|
787
|
-
top:
|
|
1288
|
+
top: E()
|
|
788
1289
|
}],
|
|
789
1290
|
/**
|
|
790
1291
|
* Right
|
|
791
1292
|
* @see https://tailwindcss.com/docs/top-right-bottom-left
|
|
792
1293
|
*/
|
|
793
1294
|
right: [{
|
|
794
|
-
right:
|
|
1295
|
+
right: E()
|
|
795
1296
|
}],
|
|
796
1297
|
/**
|
|
797
1298
|
* Bottom
|
|
798
1299
|
* @see https://tailwindcss.com/docs/top-right-bottom-left
|
|
799
1300
|
*/
|
|
800
1301
|
bottom: [{
|
|
801
|
-
bottom:
|
|
1302
|
+
bottom: E()
|
|
802
1303
|
}],
|
|
803
1304
|
/**
|
|
804
1305
|
* Left
|
|
805
1306
|
* @see https://tailwindcss.com/docs/top-right-bottom-left
|
|
806
1307
|
*/
|
|
807
1308
|
left: [{
|
|
808
|
-
left:
|
|
1309
|
+
left: E()
|
|
809
1310
|
}],
|
|
810
1311
|
/**
|
|
811
1312
|
* Visibility
|
|
@@ -817,7 +1318,7 @@ const j = (e) => {
|
|
|
817
1318
|
* @see https://tailwindcss.com/docs/z-index
|
|
818
1319
|
*/
|
|
819
1320
|
z: [{
|
|
820
|
-
z: [
|
|
1321
|
+
z: [Z, "auto", u, d]
|
|
821
1322
|
}],
|
|
822
1323
|
// ------------------------
|
|
823
1324
|
// --- Flexbox and Grid ---
|
|
@@ -827,7 +1328,7 @@ const j = (e) => {
|
|
|
827
1328
|
* @see https://tailwindcss.com/docs/flex-basis
|
|
828
1329
|
*/
|
|
829
1330
|
basis: [{
|
|
830
|
-
basis: [
|
|
1331
|
+
basis: [re, "full", "auto", c, ...i()]
|
|
831
1332
|
}],
|
|
832
1333
|
/**
|
|
833
1334
|
* Flex Direction
|
|
@@ -848,84 +1349,84 @@ const j = (e) => {
|
|
|
848
1349
|
* @see https://tailwindcss.com/docs/flex
|
|
849
1350
|
*/
|
|
850
1351
|
flex: [{
|
|
851
|
-
flex: [
|
|
1352
|
+
flex: [w, re, "auto", "initial", "none", d]
|
|
852
1353
|
}],
|
|
853
1354
|
/**
|
|
854
1355
|
* Flex Grow
|
|
855
1356
|
* @see https://tailwindcss.com/docs/flex-grow
|
|
856
1357
|
*/
|
|
857
1358
|
grow: [{
|
|
858
|
-
grow: ["",
|
|
1359
|
+
grow: ["", w, u, d]
|
|
859
1360
|
}],
|
|
860
1361
|
/**
|
|
861
1362
|
* Flex Shrink
|
|
862
1363
|
* @see https://tailwindcss.com/docs/flex-shrink
|
|
863
1364
|
*/
|
|
864
1365
|
shrink: [{
|
|
865
|
-
shrink: ["",
|
|
1366
|
+
shrink: ["", w, u, d]
|
|
866
1367
|
}],
|
|
867
1368
|
/**
|
|
868
1369
|
* Order
|
|
869
1370
|
* @see https://tailwindcss.com/docs/order
|
|
870
1371
|
*/
|
|
871
1372
|
order: [{
|
|
872
|
-
order: [
|
|
1373
|
+
order: [Z, "first", "last", "none", u, d]
|
|
873
1374
|
}],
|
|
874
1375
|
/**
|
|
875
1376
|
* Grid Template Columns
|
|
876
1377
|
* @see https://tailwindcss.com/docs/grid-template-columns
|
|
877
1378
|
*/
|
|
878
1379
|
"grid-cols": [{
|
|
879
|
-
"grid-cols":
|
|
1380
|
+
"grid-cols": A()
|
|
880
1381
|
}],
|
|
881
1382
|
/**
|
|
882
1383
|
* Grid Column Start / End
|
|
883
1384
|
* @see https://tailwindcss.com/docs/grid-column
|
|
884
1385
|
*/
|
|
885
1386
|
"col-start-end": [{
|
|
886
|
-
col:
|
|
1387
|
+
col: F()
|
|
887
1388
|
}],
|
|
888
1389
|
/**
|
|
889
1390
|
* Grid Column Start
|
|
890
1391
|
* @see https://tailwindcss.com/docs/grid-column
|
|
891
1392
|
*/
|
|
892
1393
|
"col-start": [{
|
|
893
|
-
"col-start":
|
|
1394
|
+
"col-start": P()
|
|
894
1395
|
}],
|
|
895
1396
|
/**
|
|
896
1397
|
* Grid Column End
|
|
897
1398
|
* @see https://tailwindcss.com/docs/grid-column
|
|
898
1399
|
*/
|
|
899
1400
|
"col-end": [{
|
|
900
|
-
"col-end":
|
|
1401
|
+
"col-end": P()
|
|
901
1402
|
}],
|
|
902
1403
|
/**
|
|
903
1404
|
* Grid Template Rows
|
|
904
1405
|
* @see https://tailwindcss.com/docs/grid-template-rows
|
|
905
1406
|
*/
|
|
906
1407
|
"grid-rows": [{
|
|
907
|
-
"grid-rows":
|
|
1408
|
+
"grid-rows": A()
|
|
908
1409
|
}],
|
|
909
1410
|
/**
|
|
910
1411
|
* Grid Row Start / End
|
|
911
1412
|
* @see https://tailwindcss.com/docs/grid-row
|
|
912
1413
|
*/
|
|
913
1414
|
"row-start-end": [{
|
|
914
|
-
row:
|
|
1415
|
+
row: F()
|
|
915
1416
|
}],
|
|
916
1417
|
/**
|
|
917
1418
|
* Grid Row Start
|
|
918
1419
|
* @see https://tailwindcss.com/docs/grid-row
|
|
919
1420
|
*/
|
|
920
1421
|
"row-start": [{
|
|
921
|
-
"row-start":
|
|
1422
|
+
"row-start": P()
|
|
922
1423
|
}],
|
|
923
1424
|
/**
|
|
924
1425
|
* Grid Row End
|
|
925
1426
|
* @see https://tailwindcss.com/docs/grid-row
|
|
926
1427
|
*/
|
|
927
1428
|
"row-end": [{
|
|
928
|
-
"row-end":
|
|
1429
|
+
"row-end": P()
|
|
929
1430
|
}],
|
|
930
1431
|
/**
|
|
931
1432
|
* Grid Auto Flow
|
|
@@ -939,70 +1440,70 @@ const j = (e) => {
|
|
|
939
1440
|
* @see https://tailwindcss.com/docs/grid-auto-columns
|
|
940
1441
|
*/
|
|
941
1442
|
"auto-cols": [{
|
|
942
|
-
"auto-cols":
|
|
1443
|
+
"auto-cols": U()
|
|
943
1444
|
}],
|
|
944
1445
|
/**
|
|
945
1446
|
* Grid Auto Rows
|
|
946
1447
|
* @see https://tailwindcss.com/docs/grid-auto-rows
|
|
947
1448
|
*/
|
|
948
1449
|
"auto-rows": [{
|
|
949
|
-
"auto-rows":
|
|
1450
|
+
"auto-rows": U()
|
|
950
1451
|
}],
|
|
951
1452
|
/**
|
|
952
1453
|
* Gap
|
|
953
1454
|
* @see https://tailwindcss.com/docs/gap
|
|
954
1455
|
*/
|
|
955
1456
|
gap: [{
|
|
956
|
-
gap:
|
|
1457
|
+
gap: i()
|
|
957
1458
|
}],
|
|
958
1459
|
/**
|
|
959
1460
|
* Gap X
|
|
960
1461
|
* @see https://tailwindcss.com/docs/gap
|
|
961
1462
|
*/
|
|
962
1463
|
"gap-x": [{
|
|
963
|
-
"gap-x":
|
|
1464
|
+
"gap-x": i()
|
|
964
1465
|
}],
|
|
965
1466
|
/**
|
|
966
1467
|
* Gap Y
|
|
967
1468
|
* @see https://tailwindcss.com/docs/gap
|
|
968
1469
|
*/
|
|
969
1470
|
"gap-y": [{
|
|
970
|
-
"gap-y":
|
|
1471
|
+
"gap-y": i()
|
|
971
1472
|
}],
|
|
972
1473
|
/**
|
|
973
1474
|
* Justify Content
|
|
974
1475
|
* @see https://tailwindcss.com/docs/justify-content
|
|
975
1476
|
*/
|
|
976
1477
|
"justify-content": [{
|
|
977
|
-
justify: [...
|
|
1478
|
+
justify: [...q(), "normal"]
|
|
978
1479
|
}],
|
|
979
1480
|
/**
|
|
980
1481
|
* Justify Items
|
|
981
1482
|
* @see https://tailwindcss.com/docs/justify-items
|
|
982
1483
|
*/
|
|
983
1484
|
"justify-items": [{
|
|
984
|
-
"justify-items": [...
|
|
1485
|
+
"justify-items": [...W(), "normal"]
|
|
985
1486
|
}],
|
|
986
1487
|
/**
|
|
987
1488
|
* Justify Self
|
|
988
1489
|
* @see https://tailwindcss.com/docs/justify-self
|
|
989
1490
|
*/
|
|
990
1491
|
"justify-self": [{
|
|
991
|
-
"justify-self": ["auto", ...
|
|
1492
|
+
"justify-self": ["auto", ...W()]
|
|
992
1493
|
}],
|
|
993
1494
|
/**
|
|
994
1495
|
* Align Content
|
|
995
1496
|
* @see https://tailwindcss.com/docs/align-content
|
|
996
1497
|
*/
|
|
997
1498
|
"align-content": [{
|
|
998
|
-
content: ["normal", ...
|
|
1499
|
+
content: ["normal", ...q()]
|
|
999
1500
|
}],
|
|
1000
1501
|
/**
|
|
1001
1502
|
* Align Items
|
|
1002
1503
|
* @see https://tailwindcss.com/docs/align-items
|
|
1003
1504
|
*/
|
|
1004
1505
|
"align-items": [{
|
|
1005
|
-
items: [...
|
|
1506
|
+
items: [...W(), {
|
|
1006
1507
|
baseline: ["", "last"]
|
|
1007
1508
|
}]
|
|
1008
1509
|
}],
|
|
@@ -1011,7 +1512,7 @@ const j = (e) => {
|
|
|
1011
1512
|
* @see https://tailwindcss.com/docs/align-self
|
|
1012
1513
|
*/
|
|
1013
1514
|
"align-self": [{
|
|
1014
|
-
self: ["auto", ...
|
|
1515
|
+
self: ["auto", ...W(), {
|
|
1015
1516
|
baseline: ["", "last"]
|
|
1016
1517
|
}]
|
|
1017
1518
|
}],
|
|
@@ -1020,21 +1521,21 @@ const j = (e) => {
|
|
|
1020
1521
|
* @see https://tailwindcss.com/docs/place-content
|
|
1021
1522
|
*/
|
|
1022
1523
|
"place-content": [{
|
|
1023
|
-
"place-content":
|
|
1524
|
+
"place-content": q()
|
|
1024
1525
|
}],
|
|
1025
1526
|
/**
|
|
1026
1527
|
* Place Items
|
|
1027
1528
|
* @see https://tailwindcss.com/docs/place-items
|
|
1028
1529
|
*/
|
|
1029
1530
|
"place-items": [{
|
|
1030
|
-
"place-items": [...
|
|
1531
|
+
"place-items": [...W(), "baseline"]
|
|
1031
1532
|
}],
|
|
1032
1533
|
/**
|
|
1033
1534
|
* Place Self
|
|
1034
1535
|
* @see https://tailwindcss.com/docs/place-self
|
|
1035
1536
|
*/
|
|
1036
1537
|
"place-self": [{
|
|
1037
|
-
"place-self": ["auto", ...
|
|
1538
|
+
"place-self": ["auto", ...W()]
|
|
1038
1539
|
}],
|
|
1039
1540
|
// Spacing
|
|
1040
1541
|
/**
|
|
@@ -1042,133 +1543,133 @@ const j = (e) => {
|
|
|
1042
1543
|
* @see https://tailwindcss.com/docs/padding
|
|
1043
1544
|
*/
|
|
1044
1545
|
p: [{
|
|
1045
|
-
p:
|
|
1546
|
+
p: i()
|
|
1046
1547
|
}],
|
|
1047
1548
|
/**
|
|
1048
1549
|
* Padding X
|
|
1049
1550
|
* @see https://tailwindcss.com/docs/padding
|
|
1050
1551
|
*/
|
|
1051
1552
|
px: [{
|
|
1052
|
-
px:
|
|
1553
|
+
px: i()
|
|
1053
1554
|
}],
|
|
1054
1555
|
/**
|
|
1055
1556
|
* Padding Y
|
|
1056
1557
|
* @see https://tailwindcss.com/docs/padding
|
|
1057
1558
|
*/
|
|
1058
1559
|
py: [{
|
|
1059
|
-
py:
|
|
1560
|
+
py: i()
|
|
1060
1561
|
}],
|
|
1061
1562
|
/**
|
|
1062
1563
|
* Padding Start
|
|
1063
1564
|
* @see https://tailwindcss.com/docs/padding
|
|
1064
1565
|
*/
|
|
1065
1566
|
ps: [{
|
|
1066
|
-
ps:
|
|
1567
|
+
ps: i()
|
|
1067
1568
|
}],
|
|
1068
1569
|
/**
|
|
1069
1570
|
* Padding End
|
|
1070
1571
|
* @see https://tailwindcss.com/docs/padding
|
|
1071
1572
|
*/
|
|
1072
1573
|
pe: [{
|
|
1073
|
-
pe:
|
|
1574
|
+
pe: i()
|
|
1074
1575
|
}],
|
|
1075
1576
|
/**
|
|
1076
1577
|
* Padding Top
|
|
1077
1578
|
* @see https://tailwindcss.com/docs/padding
|
|
1078
1579
|
*/
|
|
1079
1580
|
pt: [{
|
|
1080
|
-
pt:
|
|
1581
|
+
pt: i()
|
|
1081
1582
|
}],
|
|
1082
1583
|
/**
|
|
1083
1584
|
* Padding Right
|
|
1084
1585
|
* @see https://tailwindcss.com/docs/padding
|
|
1085
1586
|
*/
|
|
1086
1587
|
pr: [{
|
|
1087
|
-
pr:
|
|
1588
|
+
pr: i()
|
|
1088
1589
|
}],
|
|
1089
1590
|
/**
|
|
1090
1591
|
* Padding Bottom
|
|
1091
1592
|
* @see https://tailwindcss.com/docs/padding
|
|
1092
1593
|
*/
|
|
1093
1594
|
pb: [{
|
|
1094
|
-
pb:
|
|
1595
|
+
pb: i()
|
|
1095
1596
|
}],
|
|
1096
1597
|
/**
|
|
1097
1598
|
* Padding Left
|
|
1098
1599
|
* @see https://tailwindcss.com/docs/padding
|
|
1099
1600
|
*/
|
|
1100
1601
|
pl: [{
|
|
1101
|
-
pl:
|
|
1602
|
+
pl: i()
|
|
1102
1603
|
}],
|
|
1103
1604
|
/**
|
|
1104
1605
|
* Margin
|
|
1105
1606
|
* @see https://tailwindcss.com/docs/margin
|
|
1106
1607
|
*/
|
|
1107
1608
|
m: [{
|
|
1108
|
-
m:
|
|
1609
|
+
m: G()
|
|
1109
1610
|
}],
|
|
1110
1611
|
/**
|
|
1111
1612
|
* Margin X
|
|
1112
1613
|
* @see https://tailwindcss.com/docs/margin
|
|
1113
1614
|
*/
|
|
1114
1615
|
mx: [{
|
|
1115
|
-
mx:
|
|
1616
|
+
mx: G()
|
|
1116
1617
|
}],
|
|
1117
1618
|
/**
|
|
1118
1619
|
* Margin Y
|
|
1119
1620
|
* @see https://tailwindcss.com/docs/margin
|
|
1120
1621
|
*/
|
|
1121
1622
|
my: [{
|
|
1122
|
-
my:
|
|
1623
|
+
my: G()
|
|
1123
1624
|
}],
|
|
1124
1625
|
/**
|
|
1125
1626
|
* Margin Start
|
|
1126
1627
|
* @see https://tailwindcss.com/docs/margin
|
|
1127
1628
|
*/
|
|
1128
1629
|
ms: [{
|
|
1129
|
-
ms:
|
|
1630
|
+
ms: G()
|
|
1130
1631
|
}],
|
|
1131
1632
|
/**
|
|
1132
1633
|
* Margin End
|
|
1133
1634
|
* @see https://tailwindcss.com/docs/margin
|
|
1134
1635
|
*/
|
|
1135
1636
|
me: [{
|
|
1136
|
-
me:
|
|
1637
|
+
me: G()
|
|
1137
1638
|
}],
|
|
1138
1639
|
/**
|
|
1139
1640
|
* Margin Top
|
|
1140
1641
|
* @see https://tailwindcss.com/docs/margin
|
|
1141
1642
|
*/
|
|
1142
1643
|
mt: [{
|
|
1143
|
-
mt:
|
|
1644
|
+
mt: G()
|
|
1144
1645
|
}],
|
|
1145
1646
|
/**
|
|
1146
1647
|
* Margin Right
|
|
1147
1648
|
* @see https://tailwindcss.com/docs/margin
|
|
1148
1649
|
*/
|
|
1149
1650
|
mr: [{
|
|
1150
|
-
mr:
|
|
1651
|
+
mr: G()
|
|
1151
1652
|
}],
|
|
1152
1653
|
/**
|
|
1153
1654
|
* Margin Bottom
|
|
1154
1655
|
* @see https://tailwindcss.com/docs/margin
|
|
1155
1656
|
*/
|
|
1156
1657
|
mb: [{
|
|
1157
|
-
mb:
|
|
1658
|
+
mb: G()
|
|
1158
1659
|
}],
|
|
1159
1660
|
/**
|
|
1160
1661
|
* Margin Left
|
|
1161
1662
|
* @see https://tailwindcss.com/docs/margin
|
|
1162
1663
|
*/
|
|
1163
1664
|
ml: [{
|
|
1164
|
-
ml:
|
|
1665
|
+
ml: G()
|
|
1165
1666
|
}],
|
|
1166
1667
|
/**
|
|
1167
1668
|
* Space Between X
|
|
1168
1669
|
* @see https://tailwindcss.com/docs/margin#adding-space-between-children
|
|
1169
1670
|
*/
|
|
1170
1671
|
"space-x": [{
|
|
1171
|
-
"space-x":
|
|
1672
|
+
"space-x": i()
|
|
1172
1673
|
}],
|
|
1173
1674
|
/**
|
|
1174
1675
|
* Space Between X Reverse
|
|
@@ -1180,7 +1681,7 @@ const j = (e) => {
|
|
|
1180
1681
|
* @see https://tailwindcss.com/docs/margin#adding-space-between-children
|
|
1181
1682
|
*/
|
|
1182
1683
|
"space-y": [{
|
|
1183
|
-
"space-y":
|
|
1684
|
+
"space-y": i()
|
|
1184
1685
|
}],
|
|
1185
1686
|
/**
|
|
1186
1687
|
* Space Between Y Reverse
|
|
@@ -1195,14 +1696,14 @@ const j = (e) => {
|
|
|
1195
1696
|
* @see https://tailwindcss.com/docs/width#setting-both-width-and-height
|
|
1196
1697
|
*/
|
|
1197
1698
|
size: [{
|
|
1198
|
-
size:
|
|
1699
|
+
size: Y()
|
|
1199
1700
|
}],
|
|
1200
1701
|
/**
|
|
1201
1702
|
* Width
|
|
1202
1703
|
* @see https://tailwindcss.com/docs/width
|
|
1203
1704
|
*/
|
|
1204
1705
|
w: [{
|
|
1205
|
-
w: [
|
|
1706
|
+
w: [c, "screen", ...Y()]
|
|
1206
1707
|
}],
|
|
1207
1708
|
/**
|
|
1208
1709
|
* Min-Width
|
|
@@ -1210,11 +1711,11 @@ const j = (e) => {
|
|
|
1210
1711
|
*/
|
|
1211
1712
|
"min-w": [{
|
|
1212
1713
|
"min-w": [
|
|
1213
|
-
|
|
1714
|
+
c,
|
|
1214
1715
|
"screen",
|
|
1215
1716
|
/** Deprecated. @see https://github.com/tailwindlabs/tailwindcss.com/issues/2027#issuecomment-2620152757 */
|
|
1216
1717
|
"none",
|
|
1217
|
-
...
|
|
1718
|
+
...Y()
|
|
1218
1719
|
]
|
|
1219
1720
|
}],
|
|
1220
1721
|
/**
|
|
@@ -1223,16 +1724,16 @@ const j = (e) => {
|
|
|
1223
1724
|
*/
|
|
1224
1725
|
"max-w": [{
|
|
1225
1726
|
"max-w": [
|
|
1226
|
-
|
|
1727
|
+
c,
|
|
1227
1728
|
"screen",
|
|
1228
1729
|
"none",
|
|
1229
1730
|
/** Deprecated since Tailwind CSS v4.0.0. @see https://github.com/tailwindlabs/tailwindcss.com/issues/2027#issuecomment-2620152757 */
|
|
1230
1731
|
"prose",
|
|
1231
1732
|
/** Deprecated since Tailwind CSS v4.0.0. @see https://github.com/tailwindlabs/tailwindcss.com/issues/2027#issuecomment-2620152757 */
|
|
1232
1733
|
{
|
|
1233
|
-
screen: [
|
|
1734
|
+
screen: [a]
|
|
1234
1735
|
},
|
|
1235
|
-
...
|
|
1736
|
+
...Y()
|
|
1236
1737
|
]
|
|
1237
1738
|
}],
|
|
1238
1739
|
/**
|
|
@@ -1240,21 +1741,21 @@ const j = (e) => {
|
|
|
1240
1741
|
* @see https://tailwindcss.com/docs/height
|
|
1241
1742
|
*/
|
|
1242
1743
|
h: [{
|
|
1243
|
-
h: ["screen", "lh", ...
|
|
1744
|
+
h: ["screen", "lh", ...Y()]
|
|
1244
1745
|
}],
|
|
1245
1746
|
/**
|
|
1246
1747
|
* Min-Height
|
|
1247
1748
|
* @see https://tailwindcss.com/docs/min-height
|
|
1248
1749
|
*/
|
|
1249
1750
|
"min-h": [{
|
|
1250
|
-
"min-h": ["screen", "lh", "none", ...
|
|
1751
|
+
"min-h": ["screen", "lh", "none", ...Y()]
|
|
1251
1752
|
}],
|
|
1252
1753
|
/**
|
|
1253
1754
|
* Max-Height
|
|
1254
1755
|
* @see https://tailwindcss.com/docs/max-height
|
|
1255
1756
|
*/
|
|
1256
1757
|
"max-h": [{
|
|
1257
|
-
"max-h": ["screen", "lh", ...
|
|
1758
|
+
"max-h": ["screen", "lh", ...Y()]
|
|
1258
1759
|
}],
|
|
1259
1760
|
// ------------------
|
|
1260
1761
|
// --- Typography ---
|
|
@@ -1264,7 +1765,7 @@ const j = (e) => {
|
|
|
1264
1765
|
* @see https://tailwindcss.com/docs/font-size
|
|
1265
1766
|
*/
|
|
1266
1767
|
"font-size": [{
|
|
1267
|
-
text: ["base",
|
|
1768
|
+
text: ["base", r, ie, Q]
|
|
1268
1769
|
}],
|
|
1269
1770
|
/**
|
|
1270
1771
|
* Font Smoothing
|
|
@@ -1281,21 +1782,21 @@ const j = (e) => {
|
|
|
1281
1782
|
* @see https://tailwindcss.com/docs/font-weight
|
|
1282
1783
|
*/
|
|
1283
1784
|
"font-weight": [{
|
|
1284
|
-
font: [
|
|
1785
|
+
font: [o, u, xe]
|
|
1285
1786
|
}],
|
|
1286
1787
|
/**
|
|
1287
1788
|
* Font Stretch
|
|
1288
1789
|
* @see https://tailwindcss.com/docs/font-stretch
|
|
1289
1790
|
*/
|
|
1290
1791
|
"font-stretch": [{
|
|
1291
|
-
"font-stretch": ["ultra-condensed", "extra-condensed", "condensed", "semi-condensed", "normal", "semi-expanded", "expanded", "extra-expanded", "ultra-expanded",
|
|
1792
|
+
"font-stretch": ["ultra-condensed", "extra-condensed", "condensed", "semi-condensed", "normal", "semi-expanded", "expanded", "extra-expanded", "ultra-expanded", be, d]
|
|
1292
1793
|
}],
|
|
1293
1794
|
/**
|
|
1294
1795
|
* Font Family
|
|
1295
1796
|
* @see https://tailwindcss.com/docs/font-family
|
|
1296
1797
|
*/
|
|
1297
1798
|
"font-family": [{
|
|
1298
|
-
font: [
|
|
1799
|
+
font: [Jt, d, n]
|
|
1299
1800
|
}],
|
|
1300
1801
|
/**
|
|
1301
1802
|
* Font Variant Numeric
|
|
@@ -1332,14 +1833,14 @@ const j = (e) => {
|
|
|
1332
1833
|
* @see https://tailwindcss.com/docs/letter-spacing
|
|
1333
1834
|
*/
|
|
1334
1835
|
tracking: [{
|
|
1335
|
-
tracking: [
|
|
1836
|
+
tracking: [s, u, d]
|
|
1336
1837
|
}],
|
|
1337
1838
|
/**
|
|
1338
1839
|
* Line Clamp
|
|
1339
1840
|
* @see https://tailwindcss.com/docs/line-clamp
|
|
1340
1841
|
*/
|
|
1341
1842
|
"line-clamp": [{
|
|
1342
|
-
"line-clamp": [
|
|
1843
|
+
"line-clamp": [w, "none", u, xe]
|
|
1343
1844
|
}],
|
|
1344
1845
|
/**
|
|
1345
1846
|
* Line Height
|
|
@@ -1348,8 +1849,8 @@ const j = (e) => {
|
|
|
1348
1849
|
leading: [{
|
|
1349
1850
|
leading: [
|
|
1350
1851
|
/** Deprecated since Tailwind CSS v4.0.0. @see https://github.com/tailwindlabs/tailwindcss.com/issues/2027#issuecomment-2620152757 */
|
|
1351
|
-
|
|
1352
|
-
...
|
|
1852
|
+
l,
|
|
1853
|
+
...i()
|
|
1353
1854
|
]
|
|
1354
1855
|
}],
|
|
1355
1856
|
/**
|
|
@@ -1357,7 +1858,7 @@ const j = (e) => {
|
|
|
1357
1858
|
* @see https://tailwindcss.com/docs/list-style-image
|
|
1358
1859
|
*/
|
|
1359
1860
|
"list-image": [{
|
|
1360
|
-
"list-image": ["none",
|
|
1861
|
+
"list-image": ["none", u, d]
|
|
1361
1862
|
}],
|
|
1362
1863
|
/**
|
|
1363
1864
|
* List Style Position
|
|
@@ -1371,7 +1872,7 @@ const j = (e) => {
|
|
|
1371
1872
|
* @see https://tailwindcss.com/docs/list-style-type
|
|
1372
1873
|
*/
|
|
1373
1874
|
"list-style-type": [{
|
|
1374
|
-
list: ["disc", "decimal", "none",
|
|
1875
|
+
list: ["disc", "decimal", "none", u, d]
|
|
1375
1876
|
}],
|
|
1376
1877
|
/**
|
|
1377
1878
|
* Text Alignment
|
|
@@ -1386,14 +1887,14 @@ const j = (e) => {
|
|
|
1386
1887
|
* @see https://v3.tailwindcss.com/docs/placeholder-color
|
|
1387
1888
|
*/
|
|
1388
1889
|
"placeholder-color": [{
|
|
1389
|
-
placeholder:
|
|
1890
|
+
placeholder: g()
|
|
1390
1891
|
}],
|
|
1391
1892
|
/**
|
|
1392
1893
|
* Text Color
|
|
1393
1894
|
* @see https://tailwindcss.com/docs/text-color
|
|
1394
1895
|
*/
|
|
1395
1896
|
"text-color": [{
|
|
1396
|
-
text:
|
|
1897
|
+
text: g()
|
|
1397
1898
|
}],
|
|
1398
1899
|
/**
|
|
1399
1900
|
* Text Decoration
|
|
@@ -1405,28 +1906,28 @@ const j = (e) => {
|
|
|
1405
1906
|
* @see https://tailwindcss.com/docs/text-decoration-style
|
|
1406
1907
|
*/
|
|
1407
1908
|
"text-decoration-style": [{
|
|
1408
|
-
decoration: [...
|
|
1909
|
+
decoration: [...B(), "wavy"]
|
|
1409
1910
|
}],
|
|
1410
1911
|
/**
|
|
1411
1912
|
* Text Decoration Thickness
|
|
1412
1913
|
* @see https://tailwindcss.com/docs/text-decoration-thickness
|
|
1413
1914
|
*/
|
|
1414
1915
|
"text-decoration-thickness": [{
|
|
1415
|
-
decoration: [
|
|
1916
|
+
decoration: [w, "from-font", "auto", u, Q]
|
|
1416
1917
|
}],
|
|
1417
1918
|
/**
|
|
1418
1919
|
* Text Decoration Color
|
|
1419
1920
|
* @see https://tailwindcss.com/docs/text-decoration-color
|
|
1420
1921
|
*/
|
|
1421
1922
|
"text-decoration-color": [{
|
|
1422
|
-
decoration:
|
|
1923
|
+
decoration: g()
|
|
1423
1924
|
}],
|
|
1424
1925
|
/**
|
|
1425
1926
|
* Text Underline Offset
|
|
1426
1927
|
* @see https://tailwindcss.com/docs/text-underline-offset
|
|
1427
1928
|
*/
|
|
1428
1929
|
"underline-offset": [{
|
|
1429
|
-
"underline-offset": [
|
|
1930
|
+
"underline-offset": [w, "auto", u, d]
|
|
1430
1931
|
}],
|
|
1431
1932
|
/**
|
|
1432
1933
|
* Text Transform
|
|
@@ -1450,14 +1951,14 @@ const j = (e) => {
|
|
|
1450
1951
|
* @see https://tailwindcss.com/docs/text-indent
|
|
1451
1952
|
*/
|
|
1452
1953
|
indent: [{
|
|
1453
|
-
indent:
|
|
1954
|
+
indent: i()
|
|
1454
1955
|
}],
|
|
1455
1956
|
/**
|
|
1456
1957
|
* Vertical Alignment
|
|
1457
1958
|
* @see https://tailwindcss.com/docs/vertical-align
|
|
1458
1959
|
*/
|
|
1459
1960
|
"vertical-align": [{
|
|
1460
|
-
align: ["baseline", "top", "middle", "bottom", "text-top", "text-bottom", "sub", "super",
|
|
1961
|
+
align: ["baseline", "top", "middle", "bottom", "text-top", "text-bottom", "sub", "super", u, d]
|
|
1461
1962
|
}],
|
|
1462
1963
|
/**
|
|
1463
1964
|
* Whitespace
|
|
@@ -1492,7 +1993,7 @@ const j = (e) => {
|
|
|
1492
1993
|
* @see https://tailwindcss.com/docs/content
|
|
1493
1994
|
*/
|
|
1494
1995
|
content: [{
|
|
1495
|
-
content: ["none",
|
|
1996
|
+
content: ["none", u, d]
|
|
1496
1997
|
}],
|
|
1497
1998
|
// -------------------
|
|
1498
1999
|
// --- Backgrounds ---
|
|
@@ -1523,21 +2024,21 @@ const j = (e) => {
|
|
|
1523
2024
|
* @see https://tailwindcss.com/docs/background-position
|
|
1524
2025
|
*/
|
|
1525
2026
|
"bg-position": [{
|
|
1526
|
-
bg:
|
|
2027
|
+
bg: K()
|
|
1527
2028
|
}],
|
|
1528
2029
|
/**
|
|
1529
2030
|
* Background Repeat
|
|
1530
2031
|
* @see https://tailwindcss.com/docs/background-repeat
|
|
1531
2032
|
*/
|
|
1532
2033
|
"bg-repeat": [{
|
|
1533
|
-
bg:
|
|
2034
|
+
bg: S()
|
|
1534
2035
|
}],
|
|
1535
2036
|
/**
|
|
1536
2037
|
* Background Size
|
|
1537
2038
|
* @see https://tailwindcss.com/docs/background-size
|
|
1538
2039
|
*/
|
|
1539
2040
|
"bg-size": [{
|
|
1540
|
-
bg:
|
|
2041
|
+
bg: t()
|
|
1541
2042
|
}],
|
|
1542
2043
|
/**
|
|
1543
2044
|
* Background Image
|
|
@@ -1547,59 +2048,59 @@ const j = (e) => {
|
|
|
1547
2048
|
bg: ["none", {
|
|
1548
2049
|
linear: [{
|
|
1549
2050
|
to: ["t", "tr", "r", "br", "b", "bl", "l", "tl"]
|
|
1550
|
-
},
|
|
1551
|
-
radial: ["",
|
|
1552
|
-
conic: [
|
|
1553
|
-
},
|
|
2051
|
+
}, Z, u, d],
|
|
2052
|
+
radial: ["", u, d],
|
|
2053
|
+
conic: [Z, u, d]
|
|
2054
|
+
}, Zt, Ht]
|
|
1554
2055
|
}],
|
|
1555
2056
|
/**
|
|
1556
2057
|
* Background Color
|
|
1557
2058
|
* @see https://tailwindcss.com/docs/background-color
|
|
1558
2059
|
*/
|
|
1559
2060
|
"bg-color": [{
|
|
1560
|
-
bg:
|
|
2061
|
+
bg: g()
|
|
1561
2062
|
}],
|
|
1562
2063
|
/**
|
|
1563
2064
|
* Gradient Color Stops From Position
|
|
1564
2065
|
* @see https://tailwindcss.com/docs/gradient-color-stops
|
|
1565
2066
|
*/
|
|
1566
2067
|
"gradient-from-pos": [{
|
|
1567
|
-
from:
|
|
2068
|
+
from: b()
|
|
1568
2069
|
}],
|
|
1569
2070
|
/**
|
|
1570
2071
|
* Gradient Color Stops Via Position
|
|
1571
2072
|
* @see https://tailwindcss.com/docs/gradient-color-stops
|
|
1572
2073
|
*/
|
|
1573
2074
|
"gradient-via-pos": [{
|
|
1574
|
-
via:
|
|
2075
|
+
via: b()
|
|
1575
2076
|
}],
|
|
1576
2077
|
/**
|
|
1577
2078
|
* Gradient Color Stops To Position
|
|
1578
2079
|
* @see https://tailwindcss.com/docs/gradient-color-stops
|
|
1579
2080
|
*/
|
|
1580
2081
|
"gradient-to-pos": [{
|
|
1581
|
-
to:
|
|
2082
|
+
to: b()
|
|
1582
2083
|
}],
|
|
1583
2084
|
/**
|
|
1584
2085
|
* Gradient Color Stops From
|
|
1585
2086
|
* @see https://tailwindcss.com/docs/gradient-color-stops
|
|
1586
2087
|
*/
|
|
1587
2088
|
"gradient-from": [{
|
|
1588
|
-
from:
|
|
2089
|
+
from: g()
|
|
1589
2090
|
}],
|
|
1590
2091
|
/**
|
|
1591
2092
|
* Gradient Color Stops Via
|
|
1592
2093
|
* @see https://tailwindcss.com/docs/gradient-color-stops
|
|
1593
2094
|
*/
|
|
1594
2095
|
"gradient-via": [{
|
|
1595
|
-
via:
|
|
2096
|
+
via: g()
|
|
1596
2097
|
}],
|
|
1597
2098
|
/**
|
|
1598
2099
|
* Gradient Color Stops To
|
|
1599
2100
|
* @see https://tailwindcss.com/docs/gradient-color-stops
|
|
1600
2101
|
*/
|
|
1601
2102
|
"gradient-to": [{
|
|
1602
|
-
to:
|
|
2103
|
+
to: g()
|
|
1603
2104
|
}],
|
|
1604
2105
|
// ---------------
|
|
1605
2106
|
// --- Borders ---
|
|
@@ -1609,175 +2110,175 @@ const j = (e) => {
|
|
|
1609
2110
|
* @see https://tailwindcss.com/docs/border-radius
|
|
1610
2111
|
*/
|
|
1611
2112
|
rounded: [{
|
|
1612
|
-
rounded:
|
|
2113
|
+
rounded: x()
|
|
1613
2114
|
}],
|
|
1614
2115
|
/**
|
|
1615
2116
|
* Border Radius Start
|
|
1616
2117
|
* @see https://tailwindcss.com/docs/border-radius
|
|
1617
2118
|
*/
|
|
1618
2119
|
"rounded-s": [{
|
|
1619
|
-
"rounded-s":
|
|
2120
|
+
"rounded-s": x()
|
|
1620
2121
|
}],
|
|
1621
2122
|
/**
|
|
1622
2123
|
* Border Radius End
|
|
1623
2124
|
* @see https://tailwindcss.com/docs/border-radius
|
|
1624
2125
|
*/
|
|
1625
2126
|
"rounded-e": [{
|
|
1626
|
-
"rounded-e":
|
|
2127
|
+
"rounded-e": x()
|
|
1627
2128
|
}],
|
|
1628
2129
|
/**
|
|
1629
2130
|
* Border Radius Top
|
|
1630
2131
|
* @see https://tailwindcss.com/docs/border-radius
|
|
1631
2132
|
*/
|
|
1632
2133
|
"rounded-t": [{
|
|
1633
|
-
"rounded-t":
|
|
2134
|
+
"rounded-t": x()
|
|
1634
2135
|
}],
|
|
1635
2136
|
/**
|
|
1636
2137
|
* Border Radius Right
|
|
1637
2138
|
* @see https://tailwindcss.com/docs/border-radius
|
|
1638
2139
|
*/
|
|
1639
2140
|
"rounded-r": [{
|
|
1640
|
-
"rounded-r":
|
|
2141
|
+
"rounded-r": x()
|
|
1641
2142
|
}],
|
|
1642
2143
|
/**
|
|
1643
2144
|
* Border Radius Bottom
|
|
1644
2145
|
* @see https://tailwindcss.com/docs/border-radius
|
|
1645
2146
|
*/
|
|
1646
2147
|
"rounded-b": [{
|
|
1647
|
-
"rounded-b":
|
|
2148
|
+
"rounded-b": x()
|
|
1648
2149
|
}],
|
|
1649
2150
|
/**
|
|
1650
2151
|
* Border Radius Left
|
|
1651
2152
|
* @see https://tailwindcss.com/docs/border-radius
|
|
1652
2153
|
*/
|
|
1653
2154
|
"rounded-l": [{
|
|
1654
|
-
"rounded-l":
|
|
2155
|
+
"rounded-l": x()
|
|
1655
2156
|
}],
|
|
1656
2157
|
/**
|
|
1657
2158
|
* Border Radius Start Start
|
|
1658
2159
|
* @see https://tailwindcss.com/docs/border-radius
|
|
1659
2160
|
*/
|
|
1660
2161
|
"rounded-ss": [{
|
|
1661
|
-
"rounded-ss":
|
|
2162
|
+
"rounded-ss": x()
|
|
1662
2163
|
}],
|
|
1663
2164
|
/**
|
|
1664
2165
|
* Border Radius Start End
|
|
1665
2166
|
* @see https://tailwindcss.com/docs/border-radius
|
|
1666
2167
|
*/
|
|
1667
2168
|
"rounded-se": [{
|
|
1668
|
-
"rounded-se":
|
|
2169
|
+
"rounded-se": x()
|
|
1669
2170
|
}],
|
|
1670
2171
|
/**
|
|
1671
2172
|
* Border Radius End End
|
|
1672
2173
|
* @see https://tailwindcss.com/docs/border-radius
|
|
1673
2174
|
*/
|
|
1674
2175
|
"rounded-ee": [{
|
|
1675
|
-
"rounded-ee":
|
|
2176
|
+
"rounded-ee": x()
|
|
1676
2177
|
}],
|
|
1677
2178
|
/**
|
|
1678
2179
|
* Border Radius End Start
|
|
1679
2180
|
* @see https://tailwindcss.com/docs/border-radius
|
|
1680
2181
|
*/
|
|
1681
2182
|
"rounded-es": [{
|
|
1682
|
-
"rounded-es":
|
|
2183
|
+
"rounded-es": x()
|
|
1683
2184
|
}],
|
|
1684
2185
|
/**
|
|
1685
2186
|
* Border Radius Top Left
|
|
1686
2187
|
* @see https://tailwindcss.com/docs/border-radius
|
|
1687
2188
|
*/
|
|
1688
2189
|
"rounded-tl": [{
|
|
1689
|
-
"rounded-tl":
|
|
2190
|
+
"rounded-tl": x()
|
|
1690
2191
|
}],
|
|
1691
2192
|
/**
|
|
1692
2193
|
* Border Radius Top Right
|
|
1693
2194
|
* @see https://tailwindcss.com/docs/border-radius
|
|
1694
2195
|
*/
|
|
1695
2196
|
"rounded-tr": [{
|
|
1696
|
-
"rounded-tr":
|
|
2197
|
+
"rounded-tr": x()
|
|
1697
2198
|
}],
|
|
1698
2199
|
/**
|
|
1699
2200
|
* Border Radius Bottom Right
|
|
1700
2201
|
* @see https://tailwindcss.com/docs/border-radius
|
|
1701
2202
|
*/
|
|
1702
2203
|
"rounded-br": [{
|
|
1703
|
-
"rounded-br":
|
|
2204
|
+
"rounded-br": x()
|
|
1704
2205
|
}],
|
|
1705
2206
|
/**
|
|
1706
2207
|
* Border Radius Bottom Left
|
|
1707
2208
|
* @see https://tailwindcss.com/docs/border-radius
|
|
1708
2209
|
*/
|
|
1709
2210
|
"rounded-bl": [{
|
|
1710
|
-
"rounded-bl":
|
|
2211
|
+
"rounded-bl": x()
|
|
1711
2212
|
}],
|
|
1712
2213
|
/**
|
|
1713
2214
|
* Border Width
|
|
1714
2215
|
* @see https://tailwindcss.com/docs/border-width
|
|
1715
2216
|
*/
|
|
1716
2217
|
"border-w": [{
|
|
1717
|
-
border:
|
|
2218
|
+
border: T()
|
|
1718
2219
|
}],
|
|
1719
2220
|
/**
|
|
1720
2221
|
* Border Width X
|
|
1721
2222
|
* @see https://tailwindcss.com/docs/border-width
|
|
1722
2223
|
*/
|
|
1723
2224
|
"border-w-x": [{
|
|
1724
|
-
"border-x":
|
|
2225
|
+
"border-x": T()
|
|
1725
2226
|
}],
|
|
1726
2227
|
/**
|
|
1727
2228
|
* Border Width Y
|
|
1728
2229
|
* @see https://tailwindcss.com/docs/border-width
|
|
1729
2230
|
*/
|
|
1730
2231
|
"border-w-y": [{
|
|
1731
|
-
"border-y":
|
|
2232
|
+
"border-y": T()
|
|
1732
2233
|
}],
|
|
1733
2234
|
/**
|
|
1734
2235
|
* Border Width Start
|
|
1735
2236
|
* @see https://tailwindcss.com/docs/border-width
|
|
1736
2237
|
*/
|
|
1737
2238
|
"border-w-s": [{
|
|
1738
|
-
"border-s":
|
|
2239
|
+
"border-s": T()
|
|
1739
2240
|
}],
|
|
1740
2241
|
/**
|
|
1741
2242
|
* Border Width End
|
|
1742
2243
|
* @see https://tailwindcss.com/docs/border-width
|
|
1743
2244
|
*/
|
|
1744
2245
|
"border-w-e": [{
|
|
1745
|
-
"border-e":
|
|
2246
|
+
"border-e": T()
|
|
1746
2247
|
}],
|
|
1747
2248
|
/**
|
|
1748
2249
|
* Border Width Top
|
|
1749
2250
|
* @see https://tailwindcss.com/docs/border-width
|
|
1750
2251
|
*/
|
|
1751
2252
|
"border-w-t": [{
|
|
1752
|
-
"border-t":
|
|
2253
|
+
"border-t": T()
|
|
1753
2254
|
}],
|
|
1754
2255
|
/**
|
|
1755
2256
|
* Border Width Right
|
|
1756
2257
|
* @see https://tailwindcss.com/docs/border-width
|
|
1757
2258
|
*/
|
|
1758
2259
|
"border-w-r": [{
|
|
1759
|
-
"border-r":
|
|
2260
|
+
"border-r": T()
|
|
1760
2261
|
}],
|
|
1761
2262
|
/**
|
|
1762
2263
|
* Border Width Bottom
|
|
1763
2264
|
* @see https://tailwindcss.com/docs/border-width
|
|
1764
2265
|
*/
|
|
1765
2266
|
"border-w-b": [{
|
|
1766
|
-
"border-b":
|
|
2267
|
+
"border-b": T()
|
|
1767
2268
|
}],
|
|
1768
2269
|
/**
|
|
1769
2270
|
* Border Width Left
|
|
1770
2271
|
* @see https://tailwindcss.com/docs/border-width
|
|
1771
2272
|
*/
|
|
1772
2273
|
"border-w-l": [{
|
|
1773
|
-
"border-l":
|
|
2274
|
+
"border-l": T()
|
|
1774
2275
|
}],
|
|
1775
2276
|
/**
|
|
1776
2277
|
* Divide Width X
|
|
1777
2278
|
* @see https://tailwindcss.com/docs/border-width#between-children
|
|
1778
2279
|
*/
|
|
1779
2280
|
"divide-x": [{
|
|
1780
|
-
"divide-x":
|
|
2281
|
+
"divide-x": T()
|
|
1781
2282
|
}],
|
|
1782
2283
|
/**
|
|
1783
2284
|
* Divide Width X Reverse
|
|
@@ -1789,7 +2290,7 @@ const j = (e) => {
|
|
|
1789
2290
|
* @see https://tailwindcss.com/docs/border-width#between-children
|
|
1790
2291
|
*/
|
|
1791
2292
|
"divide-y": [{
|
|
1792
|
-
"divide-y":
|
|
2293
|
+
"divide-y": T()
|
|
1793
2294
|
}],
|
|
1794
2295
|
/**
|
|
1795
2296
|
* Divide Width Y Reverse
|
|
@@ -1801,112 +2302,112 @@ const j = (e) => {
|
|
|
1801
2302
|
* @see https://tailwindcss.com/docs/border-style
|
|
1802
2303
|
*/
|
|
1803
2304
|
"border-style": [{
|
|
1804
|
-
border: [...
|
|
2305
|
+
border: [...B(), "hidden", "none"]
|
|
1805
2306
|
}],
|
|
1806
2307
|
/**
|
|
1807
2308
|
* Divide Style
|
|
1808
2309
|
* @see https://tailwindcss.com/docs/border-style#setting-the-divider-style
|
|
1809
2310
|
*/
|
|
1810
2311
|
"divide-style": [{
|
|
1811
|
-
divide: [...
|
|
2312
|
+
divide: [...B(), "hidden", "none"]
|
|
1812
2313
|
}],
|
|
1813
2314
|
/**
|
|
1814
2315
|
* Border Color
|
|
1815
2316
|
* @see https://tailwindcss.com/docs/border-color
|
|
1816
2317
|
*/
|
|
1817
2318
|
"border-color": [{
|
|
1818
|
-
border:
|
|
2319
|
+
border: g()
|
|
1819
2320
|
}],
|
|
1820
2321
|
/**
|
|
1821
2322
|
* Border Color X
|
|
1822
2323
|
* @see https://tailwindcss.com/docs/border-color
|
|
1823
2324
|
*/
|
|
1824
2325
|
"border-color-x": [{
|
|
1825
|
-
"border-x":
|
|
2326
|
+
"border-x": g()
|
|
1826
2327
|
}],
|
|
1827
2328
|
/**
|
|
1828
2329
|
* Border Color Y
|
|
1829
2330
|
* @see https://tailwindcss.com/docs/border-color
|
|
1830
2331
|
*/
|
|
1831
2332
|
"border-color-y": [{
|
|
1832
|
-
"border-y":
|
|
2333
|
+
"border-y": g()
|
|
1833
2334
|
}],
|
|
1834
2335
|
/**
|
|
1835
2336
|
* Border Color S
|
|
1836
2337
|
* @see https://tailwindcss.com/docs/border-color
|
|
1837
2338
|
*/
|
|
1838
2339
|
"border-color-s": [{
|
|
1839
|
-
"border-s":
|
|
2340
|
+
"border-s": g()
|
|
1840
2341
|
}],
|
|
1841
2342
|
/**
|
|
1842
2343
|
* Border Color E
|
|
1843
2344
|
* @see https://tailwindcss.com/docs/border-color
|
|
1844
2345
|
*/
|
|
1845
2346
|
"border-color-e": [{
|
|
1846
|
-
"border-e":
|
|
2347
|
+
"border-e": g()
|
|
1847
2348
|
}],
|
|
1848
2349
|
/**
|
|
1849
2350
|
* Border Color Top
|
|
1850
2351
|
* @see https://tailwindcss.com/docs/border-color
|
|
1851
2352
|
*/
|
|
1852
2353
|
"border-color-t": [{
|
|
1853
|
-
"border-t":
|
|
2354
|
+
"border-t": g()
|
|
1854
2355
|
}],
|
|
1855
2356
|
/**
|
|
1856
2357
|
* Border Color Right
|
|
1857
2358
|
* @see https://tailwindcss.com/docs/border-color
|
|
1858
2359
|
*/
|
|
1859
2360
|
"border-color-r": [{
|
|
1860
|
-
"border-r":
|
|
2361
|
+
"border-r": g()
|
|
1861
2362
|
}],
|
|
1862
2363
|
/**
|
|
1863
2364
|
* Border Color Bottom
|
|
1864
2365
|
* @see https://tailwindcss.com/docs/border-color
|
|
1865
2366
|
*/
|
|
1866
2367
|
"border-color-b": [{
|
|
1867
|
-
"border-b":
|
|
2368
|
+
"border-b": g()
|
|
1868
2369
|
}],
|
|
1869
2370
|
/**
|
|
1870
2371
|
* Border Color Left
|
|
1871
2372
|
* @see https://tailwindcss.com/docs/border-color
|
|
1872
2373
|
*/
|
|
1873
2374
|
"border-color-l": [{
|
|
1874
|
-
"border-l":
|
|
2375
|
+
"border-l": g()
|
|
1875
2376
|
}],
|
|
1876
2377
|
/**
|
|
1877
2378
|
* Divide Color
|
|
1878
2379
|
* @see https://tailwindcss.com/docs/divide-color
|
|
1879
2380
|
*/
|
|
1880
2381
|
"divide-color": [{
|
|
1881
|
-
divide:
|
|
2382
|
+
divide: g()
|
|
1882
2383
|
}],
|
|
1883
2384
|
/**
|
|
1884
2385
|
* Outline Style
|
|
1885
2386
|
* @see https://tailwindcss.com/docs/outline-style
|
|
1886
2387
|
*/
|
|
1887
2388
|
"outline-style": [{
|
|
1888
|
-
outline: [...
|
|
2389
|
+
outline: [...B(), "none", "hidden"]
|
|
1889
2390
|
}],
|
|
1890
2391
|
/**
|
|
1891
2392
|
* Outline Offset
|
|
1892
2393
|
* @see https://tailwindcss.com/docs/outline-offset
|
|
1893
2394
|
*/
|
|
1894
2395
|
"outline-offset": [{
|
|
1895
|
-
"outline-offset": [
|
|
2396
|
+
"outline-offset": [w, u, d]
|
|
1896
2397
|
}],
|
|
1897
2398
|
/**
|
|
1898
2399
|
* Outline Width
|
|
1899
2400
|
* @see https://tailwindcss.com/docs/outline-width
|
|
1900
2401
|
*/
|
|
1901
2402
|
"outline-w": [{
|
|
1902
|
-
outline: ["",
|
|
2403
|
+
outline: ["", w, ie, Q]
|
|
1903
2404
|
}],
|
|
1904
2405
|
/**
|
|
1905
2406
|
* Outline Color
|
|
1906
2407
|
* @see https://tailwindcss.com/docs/outline-color
|
|
1907
2408
|
*/
|
|
1908
2409
|
"outline-color": [{
|
|
1909
|
-
outline:
|
|
2410
|
+
outline: g()
|
|
1910
2411
|
}],
|
|
1911
2412
|
// ---------------
|
|
1912
2413
|
// --- Effects ---
|
|
@@ -1921,8 +2422,8 @@ const j = (e) => {
|
|
|
1921
2422
|
"",
|
|
1922
2423
|
"none",
|
|
1923
2424
|
C,
|
|
1924
|
-
|
|
1925
|
-
|
|
2425
|
+
ue,
|
|
2426
|
+
de
|
|
1926
2427
|
]
|
|
1927
2428
|
}],
|
|
1928
2429
|
/**
|
|
@@ -1930,28 +2431,28 @@ const j = (e) => {
|
|
|
1930
2431
|
* @see https://tailwindcss.com/docs/box-shadow#setting-the-shadow-color
|
|
1931
2432
|
*/
|
|
1932
2433
|
"shadow-color": [{
|
|
1933
|
-
shadow:
|
|
2434
|
+
shadow: g()
|
|
1934
2435
|
}],
|
|
1935
2436
|
/**
|
|
1936
2437
|
* Inset Box Shadow
|
|
1937
2438
|
* @see https://tailwindcss.com/docs/box-shadow#adding-an-inset-shadow
|
|
1938
2439
|
*/
|
|
1939
2440
|
"inset-shadow": [{
|
|
1940
|
-
"inset-shadow": ["none",
|
|
2441
|
+
"inset-shadow": ["none", z, ue, de]
|
|
1941
2442
|
}],
|
|
1942
2443
|
/**
|
|
1943
2444
|
* Inset Box Shadow Color
|
|
1944
2445
|
* @see https://tailwindcss.com/docs/box-shadow#setting-the-inset-shadow-color
|
|
1945
2446
|
*/
|
|
1946
2447
|
"inset-shadow-color": [{
|
|
1947
|
-
"inset-shadow":
|
|
2448
|
+
"inset-shadow": g()
|
|
1948
2449
|
}],
|
|
1949
2450
|
/**
|
|
1950
2451
|
* Ring Width
|
|
1951
2452
|
* @see https://tailwindcss.com/docs/box-shadow#adding-a-ring
|
|
1952
2453
|
*/
|
|
1953
2454
|
"ring-w": [{
|
|
1954
|
-
ring:
|
|
2455
|
+
ring: T()
|
|
1955
2456
|
}],
|
|
1956
2457
|
/**
|
|
1957
2458
|
* Ring Width Inset
|
|
@@ -1965,7 +2466,7 @@ const j = (e) => {
|
|
|
1965
2466
|
* @see https://tailwindcss.com/docs/box-shadow#setting-the-ring-color
|
|
1966
2467
|
*/
|
|
1967
2468
|
"ring-color": [{
|
|
1968
|
-
ring:
|
|
2469
|
+
ring: g()
|
|
1969
2470
|
}],
|
|
1970
2471
|
/**
|
|
1971
2472
|
* Ring Offset Width
|
|
@@ -1974,7 +2475,7 @@ const j = (e) => {
|
|
|
1974
2475
|
* @see https://github.com/tailwindlabs/tailwindcss/blob/v4.0.0/packages/tailwindcss/src/utilities.ts#L4158
|
|
1975
2476
|
*/
|
|
1976
2477
|
"ring-offset-w": [{
|
|
1977
|
-
"ring-offset": [
|
|
2478
|
+
"ring-offset": [w, Q]
|
|
1978
2479
|
}],
|
|
1979
2480
|
/**
|
|
1980
2481
|
* Ring Offset Color
|
|
@@ -1983,56 +2484,56 @@ const j = (e) => {
|
|
|
1983
2484
|
* @see https://github.com/tailwindlabs/tailwindcss/blob/v4.0.0/packages/tailwindcss/src/utilities.ts#L4158
|
|
1984
2485
|
*/
|
|
1985
2486
|
"ring-offset-color": [{
|
|
1986
|
-
"ring-offset":
|
|
2487
|
+
"ring-offset": g()
|
|
1987
2488
|
}],
|
|
1988
2489
|
/**
|
|
1989
2490
|
* Inset Ring Width
|
|
1990
2491
|
* @see https://tailwindcss.com/docs/box-shadow#adding-an-inset-ring
|
|
1991
2492
|
*/
|
|
1992
2493
|
"inset-ring-w": [{
|
|
1993
|
-
"inset-ring":
|
|
2494
|
+
"inset-ring": T()
|
|
1994
2495
|
}],
|
|
1995
2496
|
/**
|
|
1996
2497
|
* Inset Ring Color
|
|
1997
2498
|
* @see https://tailwindcss.com/docs/box-shadow#setting-the-inset-ring-color
|
|
1998
2499
|
*/
|
|
1999
2500
|
"inset-ring-color": [{
|
|
2000
|
-
"inset-ring":
|
|
2501
|
+
"inset-ring": g()
|
|
2001
2502
|
}],
|
|
2002
2503
|
/**
|
|
2003
2504
|
* Text Shadow
|
|
2004
2505
|
* @see https://tailwindcss.com/docs/text-shadow
|
|
2005
2506
|
*/
|
|
2006
2507
|
"text-shadow": [{
|
|
2007
|
-
"text-shadow": ["none",
|
|
2508
|
+
"text-shadow": ["none", L, ue, de]
|
|
2008
2509
|
}],
|
|
2009
2510
|
/**
|
|
2010
2511
|
* Text Shadow Color
|
|
2011
2512
|
* @see https://tailwindcss.com/docs/text-shadow#setting-the-shadow-color
|
|
2012
2513
|
*/
|
|
2013
2514
|
"text-shadow-color": [{
|
|
2014
|
-
"text-shadow":
|
|
2515
|
+
"text-shadow": g()
|
|
2015
2516
|
}],
|
|
2016
2517
|
/**
|
|
2017
2518
|
* Opacity
|
|
2018
2519
|
* @see https://tailwindcss.com/docs/opacity
|
|
2019
2520
|
*/
|
|
2020
2521
|
opacity: [{
|
|
2021
|
-
opacity: [
|
|
2522
|
+
opacity: [w, u, d]
|
|
2022
2523
|
}],
|
|
2023
2524
|
/**
|
|
2024
2525
|
* Mix Blend Mode
|
|
2025
2526
|
* @see https://tailwindcss.com/docs/mix-blend-mode
|
|
2026
2527
|
*/
|
|
2027
2528
|
"mix-blend": [{
|
|
2028
|
-
"mix-blend": [...
|
|
2529
|
+
"mix-blend": [...ee(), "plus-darker", "plus-lighter"]
|
|
2029
2530
|
}],
|
|
2030
2531
|
/**
|
|
2031
2532
|
* Background Blend Mode
|
|
2032
2533
|
* @see https://tailwindcss.com/docs/background-blend-mode
|
|
2033
2534
|
*/
|
|
2034
2535
|
"bg-blend": [{
|
|
2035
|
-
"bg-blend":
|
|
2536
|
+
"bg-blend": ee()
|
|
2036
2537
|
}],
|
|
2037
2538
|
/**
|
|
2038
2539
|
* Mask Clip
|
|
@@ -2053,106 +2554,106 @@ const j = (e) => {
|
|
|
2053
2554
|
* @see https://tailwindcss.com/docs/mask-image
|
|
2054
2555
|
*/
|
|
2055
2556
|
"mask-image-linear-pos": [{
|
|
2056
|
-
"mask-linear": [
|
|
2557
|
+
"mask-linear": [w]
|
|
2057
2558
|
}],
|
|
2058
2559
|
"mask-image-linear-from-pos": [{
|
|
2059
|
-
"mask-linear-from":
|
|
2560
|
+
"mask-linear-from": k()
|
|
2060
2561
|
}],
|
|
2061
2562
|
"mask-image-linear-to-pos": [{
|
|
2062
|
-
"mask-linear-to":
|
|
2563
|
+
"mask-linear-to": k()
|
|
2063
2564
|
}],
|
|
2064
2565
|
"mask-image-linear-from-color": [{
|
|
2065
|
-
"mask-linear-from":
|
|
2566
|
+
"mask-linear-from": g()
|
|
2066
2567
|
}],
|
|
2067
2568
|
"mask-image-linear-to-color": [{
|
|
2068
|
-
"mask-linear-to":
|
|
2569
|
+
"mask-linear-to": g()
|
|
2069
2570
|
}],
|
|
2070
2571
|
"mask-image-t-from-pos": [{
|
|
2071
|
-
"mask-t-from":
|
|
2572
|
+
"mask-t-from": k()
|
|
2072
2573
|
}],
|
|
2073
2574
|
"mask-image-t-to-pos": [{
|
|
2074
|
-
"mask-t-to":
|
|
2575
|
+
"mask-t-to": k()
|
|
2075
2576
|
}],
|
|
2076
2577
|
"mask-image-t-from-color": [{
|
|
2077
|
-
"mask-t-from":
|
|
2578
|
+
"mask-t-from": g()
|
|
2078
2579
|
}],
|
|
2079
2580
|
"mask-image-t-to-color": [{
|
|
2080
|
-
"mask-t-to":
|
|
2581
|
+
"mask-t-to": g()
|
|
2081
2582
|
}],
|
|
2082
2583
|
"mask-image-r-from-pos": [{
|
|
2083
|
-
"mask-r-from":
|
|
2584
|
+
"mask-r-from": k()
|
|
2084
2585
|
}],
|
|
2085
2586
|
"mask-image-r-to-pos": [{
|
|
2086
|
-
"mask-r-to":
|
|
2587
|
+
"mask-r-to": k()
|
|
2087
2588
|
}],
|
|
2088
2589
|
"mask-image-r-from-color": [{
|
|
2089
|
-
"mask-r-from":
|
|
2590
|
+
"mask-r-from": g()
|
|
2090
2591
|
}],
|
|
2091
2592
|
"mask-image-r-to-color": [{
|
|
2092
|
-
"mask-r-to":
|
|
2593
|
+
"mask-r-to": g()
|
|
2093
2594
|
}],
|
|
2094
2595
|
"mask-image-b-from-pos": [{
|
|
2095
|
-
"mask-b-from":
|
|
2596
|
+
"mask-b-from": k()
|
|
2096
2597
|
}],
|
|
2097
2598
|
"mask-image-b-to-pos": [{
|
|
2098
|
-
"mask-b-to":
|
|
2599
|
+
"mask-b-to": k()
|
|
2099
2600
|
}],
|
|
2100
2601
|
"mask-image-b-from-color": [{
|
|
2101
|
-
"mask-b-from":
|
|
2602
|
+
"mask-b-from": g()
|
|
2102
2603
|
}],
|
|
2103
2604
|
"mask-image-b-to-color": [{
|
|
2104
|
-
"mask-b-to":
|
|
2605
|
+
"mask-b-to": g()
|
|
2105
2606
|
}],
|
|
2106
2607
|
"mask-image-l-from-pos": [{
|
|
2107
|
-
"mask-l-from":
|
|
2608
|
+
"mask-l-from": k()
|
|
2108
2609
|
}],
|
|
2109
2610
|
"mask-image-l-to-pos": [{
|
|
2110
|
-
"mask-l-to":
|
|
2611
|
+
"mask-l-to": k()
|
|
2111
2612
|
}],
|
|
2112
2613
|
"mask-image-l-from-color": [{
|
|
2113
|
-
"mask-l-from":
|
|
2614
|
+
"mask-l-from": g()
|
|
2114
2615
|
}],
|
|
2115
2616
|
"mask-image-l-to-color": [{
|
|
2116
|
-
"mask-l-to":
|
|
2617
|
+
"mask-l-to": g()
|
|
2117
2618
|
}],
|
|
2118
2619
|
"mask-image-x-from-pos": [{
|
|
2119
|
-
"mask-x-from":
|
|
2620
|
+
"mask-x-from": k()
|
|
2120
2621
|
}],
|
|
2121
2622
|
"mask-image-x-to-pos": [{
|
|
2122
|
-
"mask-x-to":
|
|
2623
|
+
"mask-x-to": k()
|
|
2123
2624
|
}],
|
|
2124
2625
|
"mask-image-x-from-color": [{
|
|
2125
|
-
"mask-x-from":
|
|
2626
|
+
"mask-x-from": g()
|
|
2126
2627
|
}],
|
|
2127
2628
|
"mask-image-x-to-color": [{
|
|
2128
|
-
"mask-x-to":
|
|
2629
|
+
"mask-x-to": g()
|
|
2129
2630
|
}],
|
|
2130
2631
|
"mask-image-y-from-pos": [{
|
|
2131
|
-
"mask-y-from":
|
|
2632
|
+
"mask-y-from": k()
|
|
2132
2633
|
}],
|
|
2133
2634
|
"mask-image-y-to-pos": [{
|
|
2134
|
-
"mask-y-to":
|
|
2635
|
+
"mask-y-to": k()
|
|
2135
2636
|
}],
|
|
2136
2637
|
"mask-image-y-from-color": [{
|
|
2137
|
-
"mask-y-from":
|
|
2638
|
+
"mask-y-from": g()
|
|
2138
2639
|
}],
|
|
2139
2640
|
"mask-image-y-to-color": [{
|
|
2140
|
-
"mask-y-to":
|
|
2641
|
+
"mask-y-to": g()
|
|
2141
2642
|
}],
|
|
2142
2643
|
"mask-image-radial": [{
|
|
2143
|
-
"mask-radial": [
|
|
2644
|
+
"mask-radial": [u, d]
|
|
2144
2645
|
}],
|
|
2145
2646
|
"mask-image-radial-from-pos": [{
|
|
2146
|
-
"mask-radial-from":
|
|
2647
|
+
"mask-radial-from": k()
|
|
2147
2648
|
}],
|
|
2148
2649
|
"mask-image-radial-to-pos": [{
|
|
2149
|
-
"mask-radial-to":
|
|
2650
|
+
"mask-radial-to": k()
|
|
2150
2651
|
}],
|
|
2151
2652
|
"mask-image-radial-from-color": [{
|
|
2152
|
-
"mask-radial-from":
|
|
2653
|
+
"mask-radial-from": g()
|
|
2153
2654
|
}],
|
|
2154
2655
|
"mask-image-radial-to-color": [{
|
|
2155
|
-
"mask-radial-to":
|
|
2656
|
+
"mask-radial-to": g()
|
|
2156
2657
|
}],
|
|
2157
2658
|
"mask-image-radial-shape": [{
|
|
2158
2659
|
"mask-radial": ["circle", "ellipse"]
|
|
@@ -2164,22 +2665,22 @@ const j = (e) => {
|
|
|
2164
2665
|
}]
|
|
2165
2666
|
}],
|
|
2166
2667
|
"mask-image-radial-pos": [{
|
|
2167
|
-
"mask-radial-at":
|
|
2668
|
+
"mask-radial-at": N()
|
|
2168
2669
|
}],
|
|
2169
2670
|
"mask-image-conic-pos": [{
|
|
2170
|
-
"mask-conic": [
|
|
2671
|
+
"mask-conic": [w]
|
|
2171
2672
|
}],
|
|
2172
2673
|
"mask-image-conic-from-pos": [{
|
|
2173
|
-
"mask-conic-from":
|
|
2674
|
+
"mask-conic-from": k()
|
|
2174
2675
|
}],
|
|
2175
2676
|
"mask-image-conic-to-pos": [{
|
|
2176
|
-
"mask-conic-to":
|
|
2677
|
+
"mask-conic-to": k()
|
|
2177
2678
|
}],
|
|
2178
2679
|
"mask-image-conic-from-color": [{
|
|
2179
|
-
"mask-conic-from":
|
|
2680
|
+
"mask-conic-from": g()
|
|
2180
2681
|
}],
|
|
2181
2682
|
"mask-image-conic-to-color": [{
|
|
2182
|
-
"mask-conic-to":
|
|
2683
|
+
"mask-conic-to": g()
|
|
2183
2684
|
}],
|
|
2184
2685
|
/**
|
|
2185
2686
|
* Mask Mode
|
|
@@ -2200,21 +2701,21 @@ const j = (e) => {
|
|
|
2200
2701
|
* @see https://tailwindcss.com/docs/mask-position
|
|
2201
2702
|
*/
|
|
2202
2703
|
"mask-position": [{
|
|
2203
|
-
mask:
|
|
2704
|
+
mask: K()
|
|
2204
2705
|
}],
|
|
2205
2706
|
/**
|
|
2206
2707
|
* Mask Repeat
|
|
2207
2708
|
* @see https://tailwindcss.com/docs/mask-repeat
|
|
2208
2709
|
*/
|
|
2209
2710
|
"mask-repeat": [{
|
|
2210
|
-
mask:
|
|
2711
|
+
mask: S()
|
|
2211
2712
|
}],
|
|
2212
2713
|
/**
|
|
2213
2714
|
* Mask Size
|
|
2214
2715
|
* @see https://tailwindcss.com/docs/mask-size
|
|
2215
2716
|
*/
|
|
2216
2717
|
"mask-size": [{
|
|
2217
|
-
mask:
|
|
2718
|
+
mask: t()
|
|
2218
2719
|
}],
|
|
2219
2720
|
/**
|
|
2220
2721
|
* Mask Type
|
|
@@ -2228,7 +2729,7 @@ const j = (e) => {
|
|
|
2228
2729
|
* @see https://tailwindcss.com/docs/mask-image
|
|
2229
2730
|
*/
|
|
2230
2731
|
"mask-image": [{
|
|
2231
|
-
mask: ["none",
|
|
2732
|
+
mask: ["none", u, d]
|
|
2232
2733
|
}],
|
|
2233
2734
|
// ---------------
|
|
2234
2735
|
// --- Filters ---
|
|
@@ -2242,8 +2743,8 @@ const j = (e) => {
|
|
|
2242
2743
|
// Deprecated since Tailwind CSS v3.0.0
|
|
2243
2744
|
"",
|
|
2244
2745
|
"none",
|
|
2245
|
-
|
|
2246
|
-
|
|
2746
|
+
u,
|
|
2747
|
+
d
|
|
2247
2748
|
]
|
|
2248
2749
|
}],
|
|
2249
2750
|
/**
|
|
@@ -2251,21 +2752,21 @@ const j = (e) => {
|
|
|
2251
2752
|
* @see https://tailwindcss.com/docs/blur
|
|
2252
2753
|
*/
|
|
2253
2754
|
blur: [{
|
|
2254
|
-
blur:
|
|
2755
|
+
blur: H()
|
|
2255
2756
|
}],
|
|
2256
2757
|
/**
|
|
2257
2758
|
* Brightness
|
|
2258
2759
|
* @see https://tailwindcss.com/docs/brightness
|
|
2259
2760
|
*/
|
|
2260
2761
|
brightness: [{
|
|
2261
|
-
brightness: [
|
|
2762
|
+
brightness: [w, u, d]
|
|
2262
2763
|
}],
|
|
2263
2764
|
/**
|
|
2264
2765
|
* Contrast
|
|
2265
2766
|
* @see https://tailwindcss.com/docs/contrast
|
|
2266
2767
|
*/
|
|
2267
2768
|
contrast: [{
|
|
2268
|
-
contrast: [
|
|
2769
|
+
contrast: [w, u, d]
|
|
2269
2770
|
}],
|
|
2270
2771
|
/**
|
|
2271
2772
|
* Drop Shadow
|
|
@@ -2276,9 +2777,9 @@ const j = (e) => {
|
|
|
2276
2777
|
// Deprecated since Tailwind CSS v4.0.0
|
|
2277
2778
|
"",
|
|
2278
2779
|
"none",
|
|
2279
|
-
|
|
2280
|
-
|
|
2281
|
-
|
|
2780
|
+
y,
|
|
2781
|
+
ue,
|
|
2782
|
+
de
|
|
2282
2783
|
]
|
|
2283
2784
|
}],
|
|
2284
2785
|
/**
|
|
@@ -2286,42 +2787,42 @@ const j = (e) => {
|
|
|
2286
2787
|
* @see https://tailwindcss.com/docs/filter-drop-shadow#setting-the-shadow-color
|
|
2287
2788
|
*/
|
|
2288
2789
|
"drop-shadow-color": [{
|
|
2289
|
-
"drop-shadow":
|
|
2790
|
+
"drop-shadow": g()
|
|
2290
2791
|
}],
|
|
2291
2792
|
/**
|
|
2292
2793
|
* Grayscale
|
|
2293
2794
|
* @see https://tailwindcss.com/docs/grayscale
|
|
2294
2795
|
*/
|
|
2295
2796
|
grayscale: [{
|
|
2296
|
-
grayscale: ["",
|
|
2797
|
+
grayscale: ["", w, u, d]
|
|
2297
2798
|
}],
|
|
2298
2799
|
/**
|
|
2299
2800
|
* Hue Rotate
|
|
2300
2801
|
* @see https://tailwindcss.com/docs/hue-rotate
|
|
2301
2802
|
*/
|
|
2302
2803
|
"hue-rotate": [{
|
|
2303
|
-
"hue-rotate": [
|
|
2804
|
+
"hue-rotate": [w, u, d]
|
|
2304
2805
|
}],
|
|
2305
2806
|
/**
|
|
2306
2807
|
* Invert
|
|
2307
2808
|
* @see https://tailwindcss.com/docs/invert
|
|
2308
2809
|
*/
|
|
2309
2810
|
invert: [{
|
|
2310
|
-
invert: ["",
|
|
2811
|
+
invert: ["", w, u, d]
|
|
2311
2812
|
}],
|
|
2312
2813
|
/**
|
|
2313
2814
|
* Saturate
|
|
2314
2815
|
* @see https://tailwindcss.com/docs/saturate
|
|
2315
2816
|
*/
|
|
2316
2817
|
saturate: [{
|
|
2317
|
-
saturate: [
|
|
2818
|
+
saturate: [w, u, d]
|
|
2318
2819
|
}],
|
|
2319
2820
|
/**
|
|
2320
2821
|
* Sepia
|
|
2321
2822
|
* @see https://tailwindcss.com/docs/sepia
|
|
2322
2823
|
*/
|
|
2323
2824
|
sepia: [{
|
|
2324
|
-
sepia: ["",
|
|
2825
|
+
sepia: ["", w, u, d]
|
|
2325
2826
|
}],
|
|
2326
2827
|
/**
|
|
2327
2828
|
* Backdrop Filter
|
|
@@ -2332,8 +2833,8 @@ const j = (e) => {
|
|
|
2332
2833
|
// Deprecated since Tailwind CSS v3.0.0
|
|
2333
2834
|
"",
|
|
2334
2835
|
"none",
|
|
2335
|
-
|
|
2336
|
-
|
|
2836
|
+
u,
|
|
2837
|
+
d
|
|
2337
2838
|
]
|
|
2338
2839
|
}],
|
|
2339
2840
|
/**
|
|
@@ -2341,63 +2842,63 @@ const j = (e) => {
|
|
|
2341
2842
|
* @see https://tailwindcss.com/docs/backdrop-blur
|
|
2342
2843
|
*/
|
|
2343
2844
|
"backdrop-blur": [{
|
|
2344
|
-
"backdrop-blur":
|
|
2845
|
+
"backdrop-blur": H()
|
|
2345
2846
|
}],
|
|
2346
2847
|
/**
|
|
2347
2848
|
* Backdrop Brightness
|
|
2348
2849
|
* @see https://tailwindcss.com/docs/backdrop-brightness
|
|
2349
2850
|
*/
|
|
2350
2851
|
"backdrop-brightness": [{
|
|
2351
|
-
"backdrop-brightness": [
|
|
2852
|
+
"backdrop-brightness": [w, u, d]
|
|
2352
2853
|
}],
|
|
2353
2854
|
/**
|
|
2354
2855
|
* Backdrop Contrast
|
|
2355
2856
|
* @see https://tailwindcss.com/docs/backdrop-contrast
|
|
2356
2857
|
*/
|
|
2357
2858
|
"backdrop-contrast": [{
|
|
2358
|
-
"backdrop-contrast": [
|
|
2859
|
+
"backdrop-contrast": [w, u, d]
|
|
2359
2860
|
}],
|
|
2360
2861
|
/**
|
|
2361
2862
|
* Backdrop Grayscale
|
|
2362
2863
|
* @see https://tailwindcss.com/docs/backdrop-grayscale
|
|
2363
2864
|
*/
|
|
2364
2865
|
"backdrop-grayscale": [{
|
|
2365
|
-
"backdrop-grayscale": ["",
|
|
2866
|
+
"backdrop-grayscale": ["", w, u, d]
|
|
2366
2867
|
}],
|
|
2367
2868
|
/**
|
|
2368
2869
|
* Backdrop Hue Rotate
|
|
2369
2870
|
* @see https://tailwindcss.com/docs/backdrop-hue-rotate
|
|
2370
2871
|
*/
|
|
2371
2872
|
"backdrop-hue-rotate": [{
|
|
2372
|
-
"backdrop-hue-rotate": [
|
|
2873
|
+
"backdrop-hue-rotate": [w, u, d]
|
|
2373
2874
|
}],
|
|
2374
2875
|
/**
|
|
2375
2876
|
* Backdrop Invert
|
|
2376
2877
|
* @see https://tailwindcss.com/docs/backdrop-invert
|
|
2377
2878
|
*/
|
|
2378
2879
|
"backdrop-invert": [{
|
|
2379
|
-
"backdrop-invert": ["",
|
|
2880
|
+
"backdrop-invert": ["", w, u, d]
|
|
2380
2881
|
}],
|
|
2381
2882
|
/**
|
|
2382
2883
|
* Backdrop Opacity
|
|
2383
2884
|
* @see https://tailwindcss.com/docs/backdrop-opacity
|
|
2384
2885
|
*/
|
|
2385
2886
|
"backdrop-opacity": [{
|
|
2386
|
-
"backdrop-opacity": [
|
|
2887
|
+
"backdrop-opacity": [w, u, d]
|
|
2387
2888
|
}],
|
|
2388
2889
|
/**
|
|
2389
2890
|
* Backdrop Saturate
|
|
2390
2891
|
* @see https://tailwindcss.com/docs/backdrop-saturate
|
|
2391
2892
|
*/
|
|
2392
2893
|
"backdrop-saturate": [{
|
|
2393
|
-
"backdrop-saturate": [
|
|
2894
|
+
"backdrop-saturate": [w, u, d]
|
|
2394
2895
|
}],
|
|
2395
2896
|
/**
|
|
2396
2897
|
* Backdrop Sepia
|
|
2397
2898
|
* @see https://tailwindcss.com/docs/backdrop-sepia
|
|
2398
2899
|
*/
|
|
2399
2900
|
"backdrop-sepia": [{
|
|
2400
|
-
"backdrop-sepia": ["",
|
|
2901
|
+
"backdrop-sepia": ["", w, u, d]
|
|
2401
2902
|
}],
|
|
2402
2903
|
// --------------
|
|
2403
2904
|
// --- Tables ---
|
|
@@ -2414,21 +2915,21 @@ const j = (e) => {
|
|
|
2414
2915
|
* @see https://tailwindcss.com/docs/border-spacing
|
|
2415
2916
|
*/
|
|
2416
2917
|
"border-spacing": [{
|
|
2417
|
-
"border-spacing":
|
|
2918
|
+
"border-spacing": i()
|
|
2418
2919
|
}],
|
|
2419
2920
|
/**
|
|
2420
2921
|
* Border Spacing X
|
|
2421
2922
|
* @see https://tailwindcss.com/docs/border-spacing
|
|
2422
2923
|
*/
|
|
2423
2924
|
"border-spacing-x": [{
|
|
2424
|
-
"border-spacing-x":
|
|
2925
|
+
"border-spacing-x": i()
|
|
2425
2926
|
}],
|
|
2426
2927
|
/**
|
|
2427
2928
|
* Border Spacing Y
|
|
2428
2929
|
* @see https://tailwindcss.com/docs/border-spacing
|
|
2429
2930
|
*/
|
|
2430
2931
|
"border-spacing-y": [{
|
|
2431
|
-
"border-spacing-y":
|
|
2932
|
+
"border-spacing-y": i()
|
|
2432
2933
|
}],
|
|
2433
2934
|
/**
|
|
2434
2935
|
* Table Layout
|
|
@@ -2452,7 +2953,7 @@ const j = (e) => {
|
|
|
2452
2953
|
* @see https://tailwindcss.com/docs/transition-property
|
|
2453
2954
|
*/
|
|
2454
2955
|
transition: [{
|
|
2455
|
-
transition: ["", "all", "colors", "opacity", "shadow", "transform", "none",
|
|
2956
|
+
transition: ["", "all", "colors", "opacity", "shadow", "transform", "none", u, d]
|
|
2456
2957
|
}],
|
|
2457
2958
|
/**
|
|
2458
2959
|
* Transition Behavior
|
|
@@ -2466,28 +2967,28 @@ const j = (e) => {
|
|
|
2466
2967
|
* @see https://tailwindcss.com/docs/transition-duration
|
|
2467
2968
|
*/
|
|
2468
2969
|
duration: [{
|
|
2469
|
-
duration: [
|
|
2970
|
+
duration: [w, "initial", u, d]
|
|
2470
2971
|
}],
|
|
2471
2972
|
/**
|
|
2472
2973
|
* Transition Timing Function
|
|
2473
2974
|
* @see https://tailwindcss.com/docs/transition-timing-function
|
|
2474
2975
|
*/
|
|
2475
2976
|
ease: [{
|
|
2476
|
-
ease: ["linear", "initial",
|
|
2977
|
+
ease: ["linear", "initial", $, u, d]
|
|
2477
2978
|
}],
|
|
2478
2979
|
/**
|
|
2479
2980
|
* Transition Delay
|
|
2480
2981
|
* @see https://tailwindcss.com/docs/transition-delay
|
|
2481
2982
|
*/
|
|
2482
2983
|
delay: [{
|
|
2483
|
-
delay: [
|
|
2984
|
+
delay: [w, u, d]
|
|
2484
2985
|
}],
|
|
2485
2986
|
/**
|
|
2486
2987
|
* Animation
|
|
2487
2988
|
* @see https://tailwindcss.com/docs/animation
|
|
2488
2989
|
*/
|
|
2489
2990
|
animate: [{
|
|
2490
|
-
animate: ["none",
|
|
2991
|
+
animate: ["none", D, u, d]
|
|
2491
2992
|
}],
|
|
2492
2993
|
// ------------------
|
|
2493
2994
|
// --- Transforms ---
|
|
@@ -2504,70 +3005,70 @@ const j = (e) => {
|
|
|
2504
3005
|
* @see https://tailwindcss.com/docs/perspective
|
|
2505
3006
|
*/
|
|
2506
3007
|
perspective: [{
|
|
2507
|
-
perspective: [
|
|
3008
|
+
perspective: [h, u, d]
|
|
2508
3009
|
}],
|
|
2509
3010
|
/**
|
|
2510
3011
|
* Perspective Origin
|
|
2511
3012
|
* @see https://tailwindcss.com/docs/perspective-origin
|
|
2512
3013
|
*/
|
|
2513
3014
|
"perspective-origin": [{
|
|
2514
|
-
"perspective-origin":
|
|
3015
|
+
"perspective-origin": f()
|
|
2515
3016
|
}],
|
|
2516
3017
|
/**
|
|
2517
3018
|
* Rotate
|
|
2518
3019
|
* @see https://tailwindcss.com/docs/rotate
|
|
2519
3020
|
*/
|
|
2520
3021
|
rotate: [{
|
|
2521
|
-
rotate:
|
|
3022
|
+
rotate: X()
|
|
2522
3023
|
}],
|
|
2523
3024
|
/**
|
|
2524
3025
|
* Rotate X
|
|
2525
3026
|
* @see https://tailwindcss.com/docs/rotate
|
|
2526
3027
|
*/
|
|
2527
3028
|
"rotate-x": [{
|
|
2528
|
-
"rotate-x":
|
|
3029
|
+
"rotate-x": X()
|
|
2529
3030
|
}],
|
|
2530
3031
|
/**
|
|
2531
3032
|
* Rotate Y
|
|
2532
3033
|
* @see https://tailwindcss.com/docs/rotate
|
|
2533
3034
|
*/
|
|
2534
3035
|
"rotate-y": [{
|
|
2535
|
-
"rotate-y":
|
|
3036
|
+
"rotate-y": X()
|
|
2536
3037
|
}],
|
|
2537
3038
|
/**
|
|
2538
3039
|
* Rotate Z
|
|
2539
3040
|
* @see https://tailwindcss.com/docs/rotate
|
|
2540
3041
|
*/
|
|
2541
3042
|
"rotate-z": [{
|
|
2542
|
-
"rotate-z":
|
|
3043
|
+
"rotate-z": X()
|
|
2543
3044
|
}],
|
|
2544
3045
|
/**
|
|
2545
3046
|
* Scale
|
|
2546
3047
|
* @see https://tailwindcss.com/docs/scale
|
|
2547
3048
|
*/
|
|
2548
3049
|
scale: [{
|
|
2549
|
-
scale:
|
|
3050
|
+
scale: te()
|
|
2550
3051
|
}],
|
|
2551
3052
|
/**
|
|
2552
3053
|
* Scale X
|
|
2553
3054
|
* @see https://tailwindcss.com/docs/scale
|
|
2554
3055
|
*/
|
|
2555
3056
|
"scale-x": [{
|
|
2556
|
-
"scale-x":
|
|
3057
|
+
"scale-x": te()
|
|
2557
3058
|
}],
|
|
2558
3059
|
/**
|
|
2559
3060
|
* Scale Y
|
|
2560
3061
|
* @see https://tailwindcss.com/docs/scale
|
|
2561
3062
|
*/
|
|
2562
3063
|
"scale-y": [{
|
|
2563
|
-
"scale-y":
|
|
3064
|
+
"scale-y": te()
|
|
2564
3065
|
}],
|
|
2565
3066
|
/**
|
|
2566
3067
|
* Scale Z
|
|
2567
3068
|
* @see https://tailwindcss.com/docs/scale
|
|
2568
3069
|
*/
|
|
2569
3070
|
"scale-z": [{
|
|
2570
|
-
"scale-z":
|
|
3071
|
+
"scale-z": te()
|
|
2571
3072
|
}],
|
|
2572
3073
|
/**
|
|
2573
3074
|
* Scale 3D
|
|
@@ -2579,35 +3080,35 @@ const j = (e) => {
|
|
|
2579
3080
|
* @see https://tailwindcss.com/docs/skew
|
|
2580
3081
|
*/
|
|
2581
3082
|
skew: [{
|
|
2582
|
-
skew:
|
|
3083
|
+
skew: he()
|
|
2583
3084
|
}],
|
|
2584
3085
|
/**
|
|
2585
3086
|
* Skew X
|
|
2586
3087
|
* @see https://tailwindcss.com/docs/skew
|
|
2587
3088
|
*/
|
|
2588
3089
|
"skew-x": [{
|
|
2589
|
-
"skew-x":
|
|
3090
|
+
"skew-x": he()
|
|
2590
3091
|
}],
|
|
2591
3092
|
/**
|
|
2592
3093
|
* Skew Y
|
|
2593
3094
|
* @see https://tailwindcss.com/docs/skew
|
|
2594
3095
|
*/
|
|
2595
3096
|
"skew-y": [{
|
|
2596
|
-
"skew-y":
|
|
3097
|
+
"skew-y": he()
|
|
2597
3098
|
}],
|
|
2598
3099
|
/**
|
|
2599
3100
|
* Transform
|
|
2600
3101
|
* @see https://tailwindcss.com/docs/transform
|
|
2601
3102
|
*/
|
|
2602
3103
|
transform: [{
|
|
2603
|
-
transform: [
|
|
3104
|
+
transform: [u, d, "", "none", "gpu", "cpu"]
|
|
2604
3105
|
}],
|
|
2605
3106
|
/**
|
|
2606
3107
|
* Transform Origin
|
|
2607
3108
|
* @see https://tailwindcss.com/docs/transform-origin
|
|
2608
3109
|
*/
|
|
2609
3110
|
"transform-origin": [{
|
|
2610
|
-
origin:
|
|
3111
|
+
origin: f()
|
|
2611
3112
|
}],
|
|
2612
3113
|
/**
|
|
2613
3114
|
* Transform Style
|
|
@@ -2621,28 +3122,28 @@ const j = (e) => {
|
|
|
2621
3122
|
* @see https://tailwindcss.com/docs/translate
|
|
2622
3123
|
*/
|
|
2623
3124
|
translate: [{
|
|
2624
|
-
translate:
|
|
3125
|
+
translate: le()
|
|
2625
3126
|
}],
|
|
2626
3127
|
/**
|
|
2627
3128
|
* Translate X
|
|
2628
3129
|
* @see https://tailwindcss.com/docs/translate
|
|
2629
3130
|
*/
|
|
2630
3131
|
"translate-x": [{
|
|
2631
|
-
"translate-x":
|
|
3132
|
+
"translate-x": le()
|
|
2632
3133
|
}],
|
|
2633
3134
|
/**
|
|
2634
3135
|
* Translate Y
|
|
2635
3136
|
* @see https://tailwindcss.com/docs/translate
|
|
2636
3137
|
*/
|
|
2637
3138
|
"translate-y": [{
|
|
2638
|
-
"translate-y":
|
|
3139
|
+
"translate-y": le()
|
|
2639
3140
|
}],
|
|
2640
3141
|
/**
|
|
2641
3142
|
* Translate Z
|
|
2642
3143
|
* @see https://tailwindcss.com/docs/translate
|
|
2643
3144
|
*/
|
|
2644
3145
|
"translate-z": [{
|
|
2645
|
-
"translate-z":
|
|
3146
|
+
"translate-z": le()
|
|
2646
3147
|
}],
|
|
2647
3148
|
/**
|
|
2648
3149
|
* Translate None
|
|
@@ -2657,7 +3158,7 @@ const j = (e) => {
|
|
|
2657
3158
|
* @see https://tailwindcss.com/docs/accent-color
|
|
2658
3159
|
*/
|
|
2659
3160
|
accent: [{
|
|
2660
|
-
accent:
|
|
3161
|
+
accent: g()
|
|
2661
3162
|
}],
|
|
2662
3163
|
/**
|
|
2663
3164
|
* Appearance
|
|
@@ -2671,7 +3172,7 @@ const j = (e) => {
|
|
|
2671
3172
|
* @see https://tailwindcss.com/docs/just-in-time-mode#caret-color-utilities
|
|
2672
3173
|
*/
|
|
2673
3174
|
"caret-color": [{
|
|
2674
|
-
caret:
|
|
3175
|
+
caret: g()
|
|
2675
3176
|
}],
|
|
2676
3177
|
/**
|
|
2677
3178
|
* Color Scheme
|
|
@@ -2685,7 +3186,7 @@ const j = (e) => {
|
|
|
2685
3186
|
* @see https://tailwindcss.com/docs/cursor
|
|
2686
3187
|
*/
|
|
2687
3188
|
cursor: [{
|
|
2688
|
-
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",
|
|
3189
|
+
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", u, d]
|
|
2689
3190
|
}],
|
|
2690
3191
|
/**
|
|
2691
3192
|
* Field Sizing
|
|
@@ -2720,126 +3221,126 @@ const j = (e) => {
|
|
|
2720
3221
|
* @see https://tailwindcss.com/docs/scroll-margin
|
|
2721
3222
|
*/
|
|
2722
3223
|
"scroll-m": [{
|
|
2723
|
-
"scroll-m":
|
|
3224
|
+
"scroll-m": i()
|
|
2724
3225
|
}],
|
|
2725
3226
|
/**
|
|
2726
3227
|
* Scroll Margin X
|
|
2727
3228
|
* @see https://tailwindcss.com/docs/scroll-margin
|
|
2728
3229
|
*/
|
|
2729
3230
|
"scroll-mx": [{
|
|
2730
|
-
"scroll-mx":
|
|
3231
|
+
"scroll-mx": i()
|
|
2731
3232
|
}],
|
|
2732
3233
|
/**
|
|
2733
3234
|
* Scroll Margin Y
|
|
2734
3235
|
* @see https://tailwindcss.com/docs/scroll-margin
|
|
2735
3236
|
*/
|
|
2736
3237
|
"scroll-my": [{
|
|
2737
|
-
"scroll-my":
|
|
3238
|
+
"scroll-my": i()
|
|
2738
3239
|
}],
|
|
2739
3240
|
/**
|
|
2740
3241
|
* Scroll Margin Start
|
|
2741
3242
|
* @see https://tailwindcss.com/docs/scroll-margin
|
|
2742
3243
|
*/
|
|
2743
3244
|
"scroll-ms": [{
|
|
2744
|
-
"scroll-ms":
|
|
3245
|
+
"scroll-ms": i()
|
|
2745
3246
|
}],
|
|
2746
3247
|
/**
|
|
2747
3248
|
* Scroll Margin End
|
|
2748
3249
|
* @see https://tailwindcss.com/docs/scroll-margin
|
|
2749
3250
|
*/
|
|
2750
3251
|
"scroll-me": [{
|
|
2751
|
-
"scroll-me":
|
|
3252
|
+
"scroll-me": i()
|
|
2752
3253
|
}],
|
|
2753
3254
|
/**
|
|
2754
3255
|
* Scroll Margin Top
|
|
2755
3256
|
* @see https://tailwindcss.com/docs/scroll-margin
|
|
2756
3257
|
*/
|
|
2757
3258
|
"scroll-mt": [{
|
|
2758
|
-
"scroll-mt":
|
|
3259
|
+
"scroll-mt": i()
|
|
2759
3260
|
}],
|
|
2760
3261
|
/**
|
|
2761
3262
|
* Scroll Margin Right
|
|
2762
3263
|
* @see https://tailwindcss.com/docs/scroll-margin
|
|
2763
3264
|
*/
|
|
2764
3265
|
"scroll-mr": [{
|
|
2765
|
-
"scroll-mr":
|
|
3266
|
+
"scroll-mr": i()
|
|
2766
3267
|
}],
|
|
2767
3268
|
/**
|
|
2768
3269
|
* Scroll Margin Bottom
|
|
2769
3270
|
* @see https://tailwindcss.com/docs/scroll-margin
|
|
2770
3271
|
*/
|
|
2771
3272
|
"scroll-mb": [{
|
|
2772
|
-
"scroll-mb":
|
|
3273
|
+
"scroll-mb": i()
|
|
2773
3274
|
}],
|
|
2774
3275
|
/**
|
|
2775
3276
|
* Scroll Margin Left
|
|
2776
3277
|
* @see https://tailwindcss.com/docs/scroll-margin
|
|
2777
3278
|
*/
|
|
2778
3279
|
"scroll-ml": [{
|
|
2779
|
-
"scroll-ml":
|
|
3280
|
+
"scroll-ml": i()
|
|
2780
3281
|
}],
|
|
2781
3282
|
/**
|
|
2782
3283
|
* Scroll Padding
|
|
2783
3284
|
* @see https://tailwindcss.com/docs/scroll-padding
|
|
2784
3285
|
*/
|
|
2785
3286
|
"scroll-p": [{
|
|
2786
|
-
"scroll-p":
|
|
3287
|
+
"scroll-p": i()
|
|
2787
3288
|
}],
|
|
2788
3289
|
/**
|
|
2789
3290
|
* Scroll Padding X
|
|
2790
3291
|
* @see https://tailwindcss.com/docs/scroll-padding
|
|
2791
3292
|
*/
|
|
2792
3293
|
"scroll-px": [{
|
|
2793
|
-
"scroll-px":
|
|
3294
|
+
"scroll-px": i()
|
|
2794
3295
|
}],
|
|
2795
3296
|
/**
|
|
2796
3297
|
* Scroll Padding Y
|
|
2797
3298
|
* @see https://tailwindcss.com/docs/scroll-padding
|
|
2798
3299
|
*/
|
|
2799
3300
|
"scroll-py": [{
|
|
2800
|
-
"scroll-py":
|
|
3301
|
+
"scroll-py": i()
|
|
2801
3302
|
}],
|
|
2802
3303
|
/**
|
|
2803
3304
|
* Scroll Padding Start
|
|
2804
3305
|
* @see https://tailwindcss.com/docs/scroll-padding
|
|
2805
3306
|
*/
|
|
2806
3307
|
"scroll-ps": [{
|
|
2807
|
-
"scroll-ps":
|
|
3308
|
+
"scroll-ps": i()
|
|
2808
3309
|
}],
|
|
2809
3310
|
/**
|
|
2810
3311
|
* Scroll Padding End
|
|
2811
3312
|
* @see https://tailwindcss.com/docs/scroll-padding
|
|
2812
3313
|
*/
|
|
2813
3314
|
"scroll-pe": [{
|
|
2814
|
-
"scroll-pe":
|
|
3315
|
+
"scroll-pe": i()
|
|
2815
3316
|
}],
|
|
2816
3317
|
/**
|
|
2817
3318
|
* Scroll Padding Top
|
|
2818
3319
|
* @see https://tailwindcss.com/docs/scroll-padding
|
|
2819
3320
|
*/
|
|
2820
3321
|
"scroll-pt": [{
|
|
2821
|
-
"scroll-pt":
|
|
3322
|
+
"scroll-pt": i()
|
|
2822
3323
|
}],
|
|
2823
3324
|
/**
|
|
2824
3325
|
* Scroll Padding Right
|
|
2825
3326
|
* @see https://tailwindcss.com/docs/scroll-padding
|
|
2826
3327
|
*/
|
|
2827
3328
|
"scroll-pr": [{
|
|
2828
|
-
"scroll-pr":
|
|
3329
|
+
"scroll-pr": i()
|
|
2829
3330
|
}],
|
|
2830
3331
|
/**
|
|
2831
3332
|
* Scroll Padding Bottom
|
|
2832
3333
|
* @see https://tailwindcss.com/docs/scroll-padding
|
|
2833
3334
|
*/
|
|
2834
3335
|
"scroll-pb": [{
|
|
2835
|
-
"scroll-pb":
|
|
3336
|
+
"scroll-pb": i()
|
|
2836
3337
|
}],
|
|
2837
3338
|
/**
|
|
2838
3339
|
* Scroll Padding Left
|
|
2839
3340
|
* @see https://tailwindcss.com/docs/scroll-padding
|
|
2840
3341
|
*/
|
|
2841
3342
|
"scroll-pl": [{
|
|
2842
|
-
"scroll-pl":
|
|
3343
|
+
"scroll-pl": i()
|
|
2843
3344
|
}],
|
|
2844
3345
|
/**
|
|
2845
3346
|
* Scroll Snap Align
|
|
@@ -2907,7 +3408,7 @@ const j = (e) => {
|
|
|
2907
3408
|
* @see https://tailwindcss.com/docs/will-change
|
|
2908
3409
|
*/
|
|
2909
3410
|
"will-change": [{
|
|
2910
|
-
"will-change": ["auto", "scroll", "contents", "transform",
|
|
3411
|
+
"will-change": ["auto", "scroll", "contents", "transform", u, d]
|
|
2911
3412
|
}],
|
|
2912
3413
|
// -----------
|
|
2913
3414
|
// --- SVG ---
|
|
@@ -2917,21 +3418,21 @@ const j = (e) => {
|
|
|
2917
3418
|
* @see https://tailwindcss.com/docs/fill
|
|
2918
3419
|
*/
|
|
2919
3420
|
fill: [{
|
|
2920
|
-
fill: ["none", ...
|
|
3421
|
+
fill: ["none", ...g()]
|
|
2921
3422
|
}],
|
|
2922
3423
|
/**
|
|
2923
3424
|
* Stroke Width
|
|
2924
3425
|
* @see https://tailwindcss.com/docs/stroke-width
|
|
2925
3426
|
*/
|
|
2926
3427
|
"stroke-w": [{
|
|
2927
|
-
stroke: [
|
|
3428
|
+
stroke: [w, ie, Q, xe]
|
|
2928
3429
|
}],
|
|
2929
3430
|
/**
|
|
2930
3431
|
* Stroke
|
|
2931
3432
|
* @see https://tailwindcss.com/docs/stroke
|
|
2932
3433
|
*/
|
|
2933
3434
|
stroke: [{
|
|
2934
|
-
stroke: ["none", ...
|
|
3435
|
+
stroke: ["none", ...g()]
|
|
2935
3436
|
}],
|
|
2936
3437
|
// ---------------------
|
|
2937
3438
|
// --- Accessibility ---
|
|
@@ -2999,534 +3500,232 @@ const j = (e) => {
|
|
|
2999
3500
|
},
|
|
3000
3501
|
orderSensitiveModifiers: ["*", "**", "after", "backdrop", "before", "details-content", "file", "first-letter", "first-line", "marker", "placeholder", "selection"]
|
|
3001
3502
|
};
|
|
3002
|
-
},
|
|
3003
|
-
function
|
|
3004
|
-
var
|
|
3005
|
-
if (typeof e == "string" || typeof e == "number")
|
|
3503
|
+
}, tr = /* @__PURE__ */ It(er);
|
|
3504
|
+
function qe(e) {
|
|
3505
|
+
var n, r, o = "";
|
|
3506
|
+
if (typeof e == "string" || typeof e == "number") o += e;
|
|
3006
3507
|
else if (typeof e == "object") if (Array.isArray(e)) {
|
|
3007
|
-
var
|
|
3008
|
-
for (
|
|
3009
|
-
} else for (
|
|
3010
|
-
return
|
|
3508
|
+
var s = e.length;
|
|
3509
|
+
for (n = 0; n < s; n++) e[n] && (r = qe(e[n])) && (o && (o += " "), o += r);
|
|
3510
|
+
} else for (r in e) e[r] && (o && (o += " "), o += r);
|
|
3511
|
+
return o;
|
|
3011
3512
|
}
|
|
3012
|
-
function
|
|
3013
|
-
for (var e,
|
|
3014
|
-
return
|
|
3513
|
+
function rr() {
|
|
3514
|
+
for (var e, n, r = 0, o = "", s = arguments.length; r < s; r++) (e = arguments[r]) && (n = qe(e)) && (o && (o += " "), o += n);
|
|
3515
|
+
return o;
|
|
3015
3516
|
}
|
|
3016
|
-
function
|
|
3017
|
-
return
|
|
3517
|
+
function ye(...e) {
|
|
3518
|
+
return tr(rr(e));
|
|
3018
3519
|
}
|
|
3019
|
-
const
|
|
3520
|
+
const sr = ({
|
|
3020
3521
|
initialContent: e = "",
|
|
3021
|
-
onChange:
|
|
3022
|
-
onSave:
|
|
3023
|
-
onExport:
|
|
3024
|
-
readOnly:
|
|
3025
|
-
showButtons:
|
|
3026
|
-
showSaveTitle:
|
|
3027
|
-
showStatusBar:
|
|
3028
|
-
height:
|
|
3522
|
+
onChange: n,
|
|
3523
|
+
onSave: r,
|
|
3524
|
+
onExport: o,
|
|
3525
|
+
readOnly: s = !1,
|
|
3526
|
+
showButtons: l = !1,
|
|
3527
|
+
showSaveTitle: a = !1,
|
|
3528
|
+
showStatusBar: c = !1,
|
|
3529
|
+
height: m = "500px",
|
|
3530
|
+
onImageUpload: _,
|
|
3531
|
+
imageUploadEndpoint: C,
|
|
3532
|
+
allowedImageTypes: z = ["image/jpeg", "image/png", "image/gif", "image/webp"],
|
|
3533
|
+
maxImageSize: L = 5 * 1024 * 1024
|
|
3534
|
+
// 5MB default
|
|
3029
3535
|
}) => {
|
|
3030
|
-
const
|
|
3031
|
-
|
|
3032
|
-
|
|
3033
|
-
|
|
3034
|
-
|
|
3035
|
-
|
|
3036
|
-
|
|
3037
|
-
|
|
3038
|
-
|
|
3039
|
-
|
|
3040
|
-
|
|
3041
|
-
|
|
3042
|
-
|
|
3043
|
-
|
|
3044
|
-
|
|
3045
|
-
|
|
3046
|
-
|
|
3047
|
-
|
|
3048
|
-
|
|
3049
|
-
|
|
3050
|
-
|
|
3051
|
-
|
|
3052
|
-
break;
|
|
3053
|
-
case "h3":
|
|
3054
|
-
n.classList.add("text-xl", "font-bold", "mt-4", "mb-2", "text-gray-800");
|
|
3055
|
-
break;
|
|
3056
|
-
case "p":
|
|
3057
|
-
n.classList.add("mb-4", "text-gray-700", "leading-relaxed");
|
|
3058
|
-
break;
|
|
3059
|
-
case "ul":
|
|
3060
|
-
n.classList.add("list-disc", "list-inside", "mb-4", "ml-4", "space-y-1");
|
|
3061
|
-
break;
|
|
3062
|
-
case "ol":
|
|
3063
|
-
n.classList.add("list-decimal", "list-inside", "mb-4", "ml-4", "space-y-1");
|
|
3064
|
-
break;
|
|
3065
|
-
case "li":
|
|
3066
|
-
n.classList.add("mb-1");
|
|
3067
|
-
break;
|
|
3068
|
-
case "a":
|
|
3069
|
-
n.classList.add("text-blue-600", "hover:text-blue-800", "underline", "transition-colors");
|
|
3070
|
-
break;
|
|
3071
|
-
case "blockquote":
|
|
3072
|
-
n.classList.add("border-l-4", "border-blue-500", "pl-4", "italic", "text-gray-600", "my-4");
|
|
3073
|
-
break;
|
|
3074
|
-
case "code":
|
|
3075
|
-
n.parentElement?.tagName.toLowerCase() !== "pre" && n.classList.add("bg-gray-100", "px-2", "py-1", "rounded", "text-sm", "font-mono");
|
|
3076
|
-
break;
|
|
3077
|
-
case "pre":
|
|
3078
|
-
n.classList.add("bg-gray-800", "text-gray-100", "p-4", "rounded-lg", "overflow-x-auto", "my-4");
|
|
3079
|
-
break;
|
|
3080
|
-
}
|
|
3081
|
-
Array.from(n.children).forEach(u);
|
|
3082
|
-
};
|
|
3083
|
-
Array.from(x.current.children).forEach(u);
|
|
3084
|
-
}, []), A = G(() => {
|
|
3085
|
-
if (!(o || !x.current))
|
|
3086
|
-
try {
|
|
3087
|
-
const u = window.getSelection();
|
|
3088
|
-
u && u.rangeCount > 0 ? O({
|
|
3089
|
-
bold: document.queryCommandState("bold"),
|
|
3090
|
-
italic: document.queryCommandState("italic"),
|
|
3091
|
-
underline: document.queryCommandState("underline"),
|
|
3092
|
-
strikeThrough: document.queryCommandState("strikeThrough"),
|
|
3093
|
-
justifyLeft: document.queryCommandState("justifyLeft"),
|
|
3094
|
-
justifyCenter: document.queryCommandState("justifyCenter"),
|
|
3095
|
-
justifyRight: document.queryCommandState("justifyRight"),
|
|
3096
|
-
justifyFull: document.queryCommandState("justifyFull")
|
|
3097
|
-
}) : O({
|
|
3098
|
-
bold: !1,
|
|
3099
|
-
italic: !1,
|
|
3100
|
-
underline: !1,
|
|
3101
|
-
strikeThrough: !1,
|
|
3102
|
-
justifyLeft: !1,
|
|
3103
|
-
justifyCenter: !1,
|
|
3104
|
-
justifyRight: !1,
|
|
3105
|
-
justifyFull: !1
|
|
3106
|
-
});
|
|
3107
|
-
} catch (u) {
|
|
3108
|
-
console.warn("Format state detection not available:", u);
|
|
3109
|
-
}
|
|
3110
|
-
}, [o]), m = G(() => {
|
|
3111
|
-
if (!x.current) return;
|
|
3112
|
-
const u = x.current.innerHTML || "", n = x.current.innerText || "";
|
|
3113
|
-
l?.(n, u, $), T(), A();
|
|
3114
|
-
}, [l, $, T, A]), z = (u) => {
|
|
3115
|
-
const n = u.target.value;
|
|
3116
|
-
U(n);
|
|
3117
|
-
const E = x.current?.innerHTML || "", M = x.current?.innerText || "";
|
|
3118
|
-
l?.(M, E, n);
|
|
3119
|
-
}, X = G((u) => {
|
|
3120
|
-
if (!(o || !x.current))
|
|
3536
|
+
const {
|
|
3537
|
+
editorState: y,
|
|
3538
|
+
editorRef: I,
|
|
3539
|
+
updateContent: h,
|
|
3540
|
+
updateTitle: R,
|
|
3541
|
+
executeCommand: $,
|
|
3542
|
+
getValidationResult: D,
|
|
3543
|
+
exportToHTML: O,
|
|
3544
|
+
clearEditor: N,
|
|
3545
|
+
handlePaste: f,
|
|
3546
|
+
handleDrop: v,
|
|
3547
|
+
insertImage: j,
|
|
3548
|
+
uploadPendingImages: i
|
|
3549
|
+
} = pt({
|
|
3550
|
+
initialContent: e,
|
|
3551
|
+
onImageUpload: _,
|
|
3552
|
+
imageUploadEndpoint: C,
|
|
3553
|
+
allowedImageTypes: z,
|
|
3554
|
+
maxImageSize: L
|
|
3555
|
+
}), [E, A] = pe(!1), F = me(null);
|
|
3556
|
+
fe(() => {
|
|
3557
|
+
if (n)
|
|
3121
3558
|
try {
|
|
3122
|
-
|
|
3123
|
-
|
|
3124
|
-
|
|
3559
|
+
const S = O({ includeStyles: !1, includeMeta: !1 });
|
|
3560
|
+
n(y.content, S, y.title);
|
|
3561
|
+
} catch {
|
|
3562
|
+
const t = `<!DOCTYPE html><html><body>${y.content}</body></html>`;
|
|
3563
|
+
n(y.content, t, y.title);
|
|
3125
3564
|
}
|
|
3126
|
-
}, [
|
|
3127
|
-
|
|
3565
|
+
}, [y.content, y.title, n, O]);
|
|
3566
|
+
const P = V(async () => {
|
|
3567
|
+
if (y.pendingImages.length > 0)
|
|
3128
3568
|
try {
|
|
3129
|
-
|
|
3130
|
-
} catch
|
|
3131
|
-
|
|
3569
|
+
await i();
|
|
3570
|
+
} catch {
|
|
3571
|
+
alert("Failed to upload some images. Please check and try again.");
|
|
3572
|
+
return;
|
|
3132
3573
|
}
|
|
3133
|
-
|
|
3134
|
-
|
|
3135
|
-
|
|
3136
|
-
|
|
3137
|
-
|
|
3138
|
-
|
|
3139
|
-
|
|
3140
|
-
|
|
3141
|
-
|
|
3142
|
-
|
|
3143
|
-
|
|
3144
|
-
|
|
3145
|
-
|
|
3146
|
-
|
|
3147
|
-
|
|
3148
|
-
|
|
3149
|
-
|
|
3150
|
-
|
|
3151
|
-
|
|
3152
|
-
|
|
3153
|
-
|
|
3154
|
-
|
|
3155
|
-
|
|
3156
|
-
|
|
3157
|
-
m(), A();
|
|
3158
|
-
} catch (E) {
|
|
3159
|
-
console.warn(`Command ${u} failed:`, E);
|
|
3160
|
-
}
|
|
3574
|
+
if (D().success) {
|
|
3575
|
+
const t = O();
|
|
3576
|
+
r?.(y.content, t);
|
|
3577
|
+
} else
|
|
3578
|
+
A(!0), setTimeout(() => A(!1), 3e3);
|
|
3579
|
+
}, [y.content, y.pendingImages, D, O, r, i]), U = V(async () => {
|
|
3580
|
+
try {
|
|
3581
|
+
y.pendingImages.length > 0 && await i();
|
|
3582
|
+
const S = O();
|
|
3583
|
+
o?.(S);
|
|
3584
|
+
const t = new Blob([S], { type: "text/html" }), b = URL.createObjectURL(t), x = document.createElement("a");
|
|
3585
|
+
x.href = b, x.download = `${y.title.replace(/\s+/g, "_") || "document"}.html`, document.body.appendChild(x), x.click(), document.body.removeChild(x), URL.revokeObjectURL(b);
|
|
3586
|
+
} catch (S) {
|
|
3587
|
+
alert(
|
|
3588
|
+
"Export failed: " + (S instanceof Error ? S.message : "Unknown error")
|
|
3589
|
+
);
|
|
3590
|
+
}
|
|
3591
|
+
}, [O, y.title, y.pendingImages, o, i]), q = V(() => {
|
|
3592
|
+
confirm(
|
|
3593
|
+
"Are you sure you want to clear the editor? All unsaved changes will be lost."
|
|
3594
|
+
) && N();
|
|
3595
|
+
}, [N]), W = V(
|
|
3596
|
+
(S) => {
|
|
3597
|
+
h(S);
|
|
3161
3598
|
},
|
|
3162
|
-
[
|
|
3163
|
-
),
|
|
3164
|
-
|
|
3165
|
-
},
|
|
3166
|
-
|
|
3167
|
-
|
|
3168
|
-
|
|
3169
|
-
|
|
3170
|
-
|
|
3171
|
-
|
|
3172
|
-
|
|
3173
|
-
"#00FFFF",
|
|
3174
|
-
"#FFA500",
|
|
3175
|
-
"#800080",
|
|
3176
|
-
"#008000",
|
|
3177
|
-
"#800000",
|
|
3178
|
-
"#008080",
|
|
3179
|
-
"#000080",
|
|
3180
|
-
"#808080",
|
|
3181
|
-
"#A52A2A",
|
|
3182
|
-
"#FFC0CB",
|
|
3183
|
-
"#FFD700",
|
|
3184
|
-
"#90EE90",
|
|
3185
|
-
"#ADD8E6"
|
|
3186
|
-
], B = [
|
|
3187
|
-
"#FFFFFF",
|
|
3188
|
-
"#000000",
|
|
3189
|
-
"#FF0000",
|
|
3190
|
-
"#00FF00",
|
|
3191
|
-
"#0000FF",
|
|
3192
|
-
"#FFFF00",
|
|
3193
|
-
"#FF00FF",
|
|
3194
|
-
"#00FFFF",
|
|
3195
|
-
"#FFA500",
|
|
3196
|
-
"#800080",
|
|
3197
|
-
"#008000",
|
|
3198
|
-
"#800000",
|
|
3199
|
-
"#008080",
|
|
3200
|
-
"#000080",
|
|
3201
|
-
"#808080",
|
|
3202
|
-
"#FFE4E1",
|
|
3203
|
-
"#F0FFF0",
|
|
3204
|
-
"#F0F8FF",
|
|
3205
|
-
"#FFFACD",
|
|
3206
|
-
"#F5F5F5",
|
|
3207
|
-
"#E6E6FA",
|
|
3208
|
-
"#FFEFD5",
|
|
3209
|
-
"#F0E68C",
|
|
3210
|
-
"#F5DEB3",
|
|
3211
|
-
"#D3D3D3"
|
|
3212
|
-
], f = G((u) => {
|
|
3213
|
-
v("foreColor", u);
|
|
3214
|
-
}, [v]), ee = G((u) => {
|
|
3215
|
-
v("hiliteColor", u);
|
|
3216
|
-
}, [v]), re = G(() => {
|
|
3217
|
-
const u = x.current?.innerHTML || "", n = x.current?.innerText || "";
|
|
3218
|
-
a?.(n, u);
|
|
3219
|
-
}, [a]), r = G(() => {
|
|
3220
|
-
const u = x.current?.innerHTML || "";
|
|
3221
|
-
t?.(u);
|
|
3222
|
-
}, [t]), h = () => /* @__PURE__ */ s.jsx("div", { className: "w-px h-6 bg-gray-300 mx-1" }), d = ({ onClick: u, title: n, children: E, isActive: M = !1, className: W = "" }) => /* @__PURE__ */ s.jsx(
|
|
3223
|
-
"button",
|
|
3224
|
-
{
|
|
3225
|
-
className: pe(
|
|
3226
|
-
"w-8 h-8 flex items-center justify-center rounded hover:bg-gray-100 transition-colors",
|
|
3227
|
-
M && "bg-blue-100 text-blue-600 border border-blue-300",
|
|
3228
|
-
W
|
|
3229
|
-
),
|
|
3230
|
-
onMouseDown: (te) => te.preventDefault(),
|
|
3231
|
-
onClick: H(u),
|
|
3232
|
-
title: n,
|
|
3233
|
-
type: "button",
|
|
3234
|
-
disabled: o,
|
|
3235
|
-
children: E
|
|
3599
|
+
[h]
|
|
3600
|
+
), G = (S) => {
|
|
3601
|
+
R(S.target.value);
|
|
3602
|
+
}, Y = () => {
|
|
3603
|
+
F.current?.click();
|
|
3604
|
+
}, g = async (S) => {
|
|
3605
|
+
const t = S.target.files;
|
|
3606
|
+
if (!(!t || t.length === 0)) {
|
|
3607
|
+
for (const b of Array.from(t))
|
|
3608
|
+
await j(b);
|
|
3609
|
+
F.current && (F.current.value = "");
|
|
3236
3610
|
}
|
|
3237
|
-
|
|
3238
|
-
|
|
3239
|
-
d,
|
|
3240
|
-
{
|
|
3241
|
-
onClick: M,
|
|
3242
|
-
title: te,
|
|
3243
|
-
className: "relative",
|
|
3244
|
-
children: [
|
|
3245
|
-
W,
|
|
3246
|
-
/* @__PURE__ */ s.jsx("span", { className: "absolute -bottom-1 -right-1 text-[8px]", children: "▼" })
|
|
3247
|
-
]
|
|
3248
|
-
}
|
|
3249
|
-
),
|
|
3250
|
-
E && /* @__PURE__ */ s.jsx("div", { className: "absolute top-full left-0 mt-1 bg-white border border-gray-300 rounded-lg shadow-lg p-2 grid grid-cols-5 gap-1 z-20 min-w-[140px]", children: u.map((Y) => /* @__PURE__ */ s.jsx(
|
|
3251
|
-
"button",
|
|
3252
|
-
{
|
|
3253
|
-
className: "w-5 h-5 rounded border border-gray-300 hover:scale-110 transition-transform",
|
|
3254
|
-
style: { backgroundColor: Y },
|
|
3255
|
-
title: Y,
|
|
3256
|
-
onMouseDown: (Ge) => Ge.preventDefault(),
|
|
3257
|
-
onClick: H(() => {
|
|
3258
|
-
n(Y), M();
|
|
3259
|
-
})
|
|
3260
|
-
},
|
|
3261
|
-
Y
|
|
3262
|
-
)) })
|
|
3263
|
-
] });
|
|
3264
|
-
return /* @__PURE__ */ s.jsxs(
|
|
3611
|
+
};
|
|
3612
|
+
return /* @__PURE__ */ p.jsxs(
|
|
3265
3613
|
"div",
|
|
3266
3614
|
{
|
|
3267
|
-
|
|
3268
|
-
className: pe(
|
|
3615
|
+
className: ye(
|
|
3269
3616
|
"relative w-full bg-white border border-gray-300 rounded-lg overflow-hidden",
|
|
3270
|
-
|
|
3617
|
+
s && "pointer-events-none opacity-80"
|
|
3271
3618
|
),
|
|
3619
|
+
style: { height: m },
|
|
3272
3620
|
children: [
|
|
3273
|
-
|
|
3621
|
+
a && /* @__PURE__ */ p.jsx("div", { className: "p-6 border-b border-gray-200 bg-gray-50", children: /* @__PURE__ */ p.jsx(
|
|
3274
3622
|
"input",
|
|
3275
3623
|
{
|
|
3276
3624
|
type: "text",
|
|
3277
|
-
className:
|
|
3625
|
+
className: ye(
|
|
3278
3626
|
"w-full bg-transparent text-2xl font-bold text-gray-800 outline-none placeholder-gray-400",
|
|
3279
|
-
|
|
3627
|
+
s && "cursor-default"
|
|
3280
3628
|
),
|
|
3281
|
-
value:
|
|
3282
|
-
onChange:
|
|
3629
|
+
value: y.title,
|
|
3630
|
+
onChange: G,
|
|
3283
3631
|
placeholder: "Document Title",
|
|
3284
|
-
readOnly:
|
|
3632
|
+
readOnly: s
|
|
3285
3633
|
}
|
|
3286
3634
|
) }),
|
|
3287
|
-
|
|
3288
|
-
|
|
3289
|
-
|
|
3290
|
-
|
|
3291
|
-
|
|
3292
|
-
|
|
3293
|
-
|
|
3294
|
-
|
|
3295
|
-
|
|
3296
|
-
|
|
3297
|
-
|
|
3298
|
-
|
|
3299
|
-
|
|
3300
|
-
|
|
3301
|
-
|
|
3302
|
-
children: "Export"
|
|
3303
|
-
}
|
|
3304
|
-
)
|
|
3305
|
-
] }),
|
|
3306
|
-
!o && D && /* @__PURE__ */ s.jsxs(
|
|
3307
|
-
"div",
|
|
3635
|
+
/* @__PURE__ */ p.jsx(
|
|
3636
|
+
ut,
|
|
3637
|
+
{
|
|
3638
|
+
onCommand: $,
|
|
3639
|
+
onSave: P,
|
|
3640
|
+
onExport: U,
|
|
3641
|
+
showButtons: l,
|
|
3642
|
+
onClear: q,
|
|
3643
|
+
hasUnsavedChanges: y.hasUnsavedChanges,
|
|
3644
|
+
onImageUpload: Y,
|
|
3645
|
+
pendingImagesCount: y.pendingImages.length
|
|
3646
|
+
}
|
|
3647
|
+
),
|
|
3648
|
+
/* @__PURE__ */ p.jsx(
|
|
3649
|
+
"input",
|
|
3308
3650
|
{
|
|
3309
|
-
|
|
3310
|
-
|
|
3311
|
-
|
|
3312
|
-
|
|
3313
|
-
|
|
3314
|
-
|
|
3315
|
-
onClick: () => v("bold"),
|
|
3316
|
-
title: "Bold",
|
|
3317
|
-
isActive: R.bold,
|
|
3318
|
-
children: /* @__PURE__ */ s.jsx("span", { className: "font-bold text-sm", children: "B" })
|
|
3319
|
-
}
|
|
3320
|
-
),
|
|
3321
|
-
/* @__PURE__ */ s.jsx(
|
|
3322
|
-
d,
|
|
3323
|
-
{
|
|
3324
|
-
onClick: () => v("italic"),
|
|
3325
|
-
title: "Italic",
|
|
3326
|
-
isActive: R.italic,
|
|
3327
|
-
children: /* @__PURE__ */ s.jsx("span", { className: "italic text-sm", children: "I" })
|
|
3328
|
-
}
|
|
3329
|
-
),
|
|
3330
|
-
/* @__PURE__ */ s.jsx(
|
|
3331
|
-
d,
|
|
3332
|
-
{
|
|
3333
|
-
onClick: () => v("underline"),
|
|
3334
|
-
title: "Underline",
|
|
3335
|
-
isActive: R.underline,
|
|
3336
|
-
children: /* @__PURE__ */ s.jsx("span", { className: "underline text-sm", children: "U" })
|
|
3337
|
-
}
|
|
3338
|
-
),
|
|
3339
|
-
/* @__PURE__ */ s.jsx(h, {}),
|
|
3340
|
-
/* @__PURE__ */ s.jsx(
|
|
3341
|
-
d,
|
|
3342
|
-
{
|
|
3343
|
-
onClick: () => v("justifyLeft"),
|
|
3344
|
-
title: "Align Left",
|
|
3345
|
-
isActive: R.justifyLeft,
|
|
3346
|
-
children: /* @__PURE__ */ s.jsx("svg", { width: "16", height: "16", viewBox: "0 0 24 24", fill: "currentColor", children: /* @__PURE__ */ s.jsx("path", { d: "M3 5h18a1 1 0 1 0 0-2H3a1 1 0 1 0 0 2zm0 4h12a1 1 0 1 0 0-2H3a1 1 0 1 0 0 2zm0 4h18a1 1 0 1 0 0-2H3a1 1 0 1 0 0 2zm0 4h12a1 1 0 1 0 0-2H3a1 1 0 1 0 0 2zm0 4h18a1 1 0 1 0 0-2H3a1 1 0 1 0 0 2z" }) })
|
|
3347
|
-
}
|
|
3348
|
-
),
|
|
3349
|
-
/* @__PURE__ */ s.jsx(
|
|
3350
|
-
d,
|
|
3351
|
-
{
|
|
3352
|
-
onClick: () => v("justifyCenter"),
|
|
3353
|
-
title: "Align Center",
|
|
3354
|
-
isActive: R.justifyCenter,
|
|
3355
|
-
children: /* @__PURE__ */ s.jsx("svg", { width: "16", height: "16", viewBox: "0 0 24 24", fill: "currentColor", children: /* @__PURE__ */ s.jsx("path", { d: "M3 5h18a1 1 0 1 0 0-2H3a1 1 0 1 0 0 2zm3 4h12a1 1 0 1 0 0-2H6a1 1 0 1 0 0 2zm-3 4h18a1 1 0 1 0 0-2H3a1 1 0 1 0 0 2zm3 4h12a1 1 0 1 0 0-2H6a1 1 0 1 0 0 2zm-3 4h18a1 1 0 1 0 0-2H3a1 1 0 1 0 0 2z" }) })
|
|
3356
|
-
}
|
|
3357
|
-
),
|
|
3358
|
-
/* @__PURE__ */ s.jsx(
|
|
3359
|
-
d,
|
|
3360
|
-
{
|
|
3361
|
-
onClick: () => v("justifyRight"),
|
|
3362
|
-
title: "Align Right",
|
|
3363
|
-
isActive: R.justifyRight,
|
|
3364
|
-
children: /* @__PURE__ */ s.jsx("svg", { width: "16", height: "16", viewBox: "0 0 24 24", fill: "currentColor", children: /* @__PURE__ */ s.jsx("path", { d: "M3 5h18a1 1 0 1 0 0-2H3a1 1 0 1 0 0 2zm9 4h9a1 1 0 1 0 0-2h-9a1 1 0 1 0 0 2zm9 4H3a1 1 0 1 0 0 2h18a1 1 0 1 0 0-2zm-9 4h9a1 1 0 1 0 0-2h-9a1 1 0 1 0 0 2zm9 4H3a1 1 0 1 0 0 2h18a1 1 0 1 0 0-2z" }) })
|
|
3365
|
-
}
|
|
3366
|
-
),
|
|
3367
|
-
/* @__PURE__ */ s.jsx(
|
|
3368
|
-
d,
|
|
3369
|
-
{
|
|
3370
|
-
onClick: () => v("justifyFull"),
|
|
3371
|
-
title: "Justify",
|
|
3372
|
-
isActive: R.justifyFull,
|
|
3373
|
-
children: /* @__PURE__ */ s.jsx("svg", { width: "16", height: "16", viewBox: "0 0 24 24", fill: "currentColor", children: /* @__PURE__ */ s.jsx("path", { d: "M3 5h18a1 1 0 1 0 0-2H3a1 1 0 1 0 0 2zm0 4h18a1 1 0 1 0 0-2H3a1 1 0 1 0 0 2zm0 4h18a1 1 0 1 0 0-2H3a1 1 0 1 0 0 2zm0 4h18a1 1 0 1 0 0-2H3a1 1 0 1 0 0 2zm0 4h18a1 1 0 1 0 0-2H3a1 1 0 1 0 0 2z" }) })
|
|
3374
|
-
}
|
|
3375
|
-
),
|
|
3376
|
-
/* @__PURE__ */ s.jsx(h, {}),
|
|
3377
|
-
/* @__PURE__ */ s.jsx(
|
|
3378
|
-
k,
|
|
3379
|
-
{
|
|
3380
|
-
colors: P,
|
|
3381
|
-
onColorSelect: f,
|
|
3382
|
-
isOpen: _,
|
|
3383
|
-
onToggle: () => {
|
|
3384
|
-
F(!_), I(!1);
|
|
3385
|
-
},
|
|
3386
|
-
buttonContent: /* @__PURE__ */ s.jsxs("div", { className: "flex flex-col items-center", children: [
|
|
3387
|
-
/* @__PURE__ */ s.jsx("span", { className: "text-xs font-bold", children: "A" }),
|
|
3388
|
-
/* @__PURE__ */ s.jsx("div", { className: "w-3 h-1 bg-red-500 mt-[-2px]" })
|
|
3389
|
-
] }),
|
|
3390
|
-
title: "Text Color"
|
|
3391
|
-
}
|
|
3392
|
-
),
|
|
3393
|
-
/* @__PURE__ */ s.jsx(
|
|
3394
|
-
k,
|
|
3395
|
-
{
|
|
3396
|
-
colors: B,
|
|
3397
|
-
onColorSelect: ee,
|
|
3398
|
-
isOpen: L,
|
|
3399
|
-
onToggle: () => {
|
|
3400
|
-
I(!L), F(!1);
|
|
3401
|
-
},
|
|
3402
|
-
buttonContent: /* @__PURE__ */ s.jsxs("div", { className: "flex flex-col items-center", children: [
|
|
3403
|
-
/* @__PURE__ */ s.jsx("div", { className: "w-4 h-3 border border-gray-400 bg-yellow-200" }),
|
|
3404
|
-
/* @__PURE__ */ s.jsx("span", { className: "text-[8px] mt-[-2px]", children: "Bg" })
|
|
3405
|
-
] }),
|
|
3406
|
-
title: "Background Color"
|
|
3407
|
-
}
|
|
3408
|
-
),
|
|
3409
|
-
/* @__PURE__ */ s.jsx(h, {}),
|
|
3410
|
-
/* @__PURE__ */ s.jsx(
|
|
3411
|
-
d,
|
|
3412
|
-
{
|
|
3413
|
-
onClick: () => v("insertUnorderedList"),
|
|
3414
|
-
title: "Bulleted List",
|
|
3415
|
-
children: /* @__PURE__ */ s.jsx("svg", { width: "16", height: "16", viewBox: "0 0 24 24", fill: "currentColor", children: /* @__PURE__ */ s.jsx("path", { d: "M4,3c0,1.1-0.9,2-2,2S0,4.1,0,3s0.9-2,2-2S4,1.9,4,3z M2,9c-1.1,0-2,0.9-2,2s0.9,2,2,2s2-0.9,2-2S3.1,9,2,9z M2,17c-1.1,0-2,0.9-2,2s0.9,2,2,2s2-0.9,2-2S3.1,17,2,17z M24,19c0-0.6-0.4-1-1-1H8c-0.6,0-1,0.4-1,1s0.4,1,1,1h15C23.6,20,24,19.6,24,19z M24,11c0-0.6-0.4-1-1-1H8c-0.6,0-1,0.4-1,1s0.4,1,1,1h15C23.6,12,24,11.6,24,11z M24,3c0-0.6-0.4-1-1-1H8C7.4,2,7,2.4,7,3s0.4,1,1,1h15C23.6,4,24,3.6,24,3z" }) })
|
|
3416
|
-
}
|
|
3417
|
-
),
|
|
3418
|
-
/* @__PURE__ */ s.jsx(
|
|
3419
|
-
d,
|
|
3420
|
-
{
|
|
3421
|
-
onClick: () => v("insertOrderedList"),
|
|
3422
|
-
title: "Numbered List",
|
|
3423
|
-
children: /* @__PURE__ */ s.jsx("svg", { width: "16", height: "16", viewBox: "0 0 24 24", fill: "currentColor", children: /* @__PURE__ */ s.jsx("path", { d: "M10 3a1 1 0 0 1 1-1h12a1 1 0 1 1 0 2H11a1 1 0 0 1-1-1Zm13 9H11a1 1 0 1 0 0 2h12a1 1 0 1 0 0-2Zm0 10H11a1 1 0 1 0 0 2h12a1 1 0 1 0 0-2ZM4 2.41V9.5a.5.5 0 0 0 .5.5h1a.5.5 0 0 0 .5-.5V1A1 1 0 0 0 4.669.056L.925 1.37a.499.499 0 0 0-.306.637l.331.944a.5.5 0 0 0 .637.307l2.414-.846H4ZM1 24h6.5a.5.5 0 0 0 .5-.5v-1a.5.5 0 0 0-.5-.5H2.287c.556-.938 1.787-1.578 2.532-1.965l.339-.177C6.425 19.195 8 18.372 8 15.813 8 13.971 6.393 12 4 12 1.363 12 .409 14.103.272 15.214c0 0-.039.284-.062.504-.023.22.151.483.416.54.265.055.797.094 1.015.13.218.034.5-.06.537-.387.025-.22.078-.533.078-.533C2.291 15.223 2.543 14 4 14c1.239 0 2 1.056 2 1.813 0 1.293-.542 1.631-1.769 2.272l-.333.174C2.632 18.916 0 20.282 0 23 0 23 0 24 1 24Z" }) })
|
|
3424
|
-
}
|
|
3425
|
-
),
|
|
3426
|
-
/* @__PURE__ */ s.jsx(h, {}),
|
|
3427
|
-
/* @__PURE__ */ s.jsx(
|
|
3428
|
-
d,
|
|
3429
|
-
{
|
|
3430
|
-
onClick: () => v("formatBlock", "h1"),
|
|
3431
|
-
title: "Heading 1",
|
|
3432
|
-
children: /* @__PURE__ */ s.jsx("span", { className: "text-xs font-bold", children: "H1" })
|
|
3433
|
-
}
|
|
3434
|
-
),
|
|
3435
|
-
/* @__PURE__ */ s.jsx(
|
|
3436
|
-
d,
|
|
3437
|
-
{
|
|
3438
|
-
onClick: () => v("formatBlock", "h2"),
|
|
3439
|
-
title: "Heading 2",
|
|
3440
|
-
children: /* @__PURE__ */ s.jsx("span", { className: "text-xs font-bold", children: "H2" })
|
|
3441
|
-
}
|
|
3442
|
-
),
|
|
3443
|
-
/* @__PURE__ */ s.jsx(
|
|
3444
|
-
d,
|
|
3445
|
-
{
|
|
3446
|
-
onClick: () => v("formatBlock", "h3"),
|
|
3447
|
-
title: "Heading 3",
|
|
3448
|
-
children: /* @__PURE__ */ s.jsx("span", { className: "text-xs font-bold", children: "H3" })
|
|
3449
|
-
}
|
|
3450
|
-
),
|
|
3451
|
-
/* @__PURE__ */ s.jsx(h, {}),
|
|
3452
|
-
/* @__PURE__ */ s.jsx(
|
|
3453
|
-
d,
|
|
3454
|
-
{
|
|
3455
|
-
onClick: () => v("formatBlock", "blockquote"),
|
|
3456
|
-
title: "Quote",
|
|
3457
|
-
children: /* @__PURE__ */ s.jsx("svg", { width: "16", height: "16", viewBox: "0 0 24 24", fill: "currentColor", children: /* @__PURE__ */ s.jsx("path", { d: "M2 3v20a1 1 0 1 1-2 0V3a1 1 0 1 1 2 0Zm5 3h12a1 1 0 1 0 0 2H7a1 1 0 1 0 0 2Zm16 6H7a1 1 0 1 0 0 2h16a1 1 0 1 0 0-2Zm-4 8H7a1 1 0 1 0 0 2h12a1 1 0 1 0 0-2Z" }) })
|
|
3458
|
-
}
|
|
3459
|
-
),
|
|
3460
|
-
/* @__PURE__ */ s.jsx(
|
|
3461
|
-
d,
|
|
3462
|
-
{
|
|
3463
|
-
onClick: () => v("formatBlock", "pre"),
|
|
3464
|
-
title: "Code Block",
|
|
3465
|
-
children: /* @__PURE__ */ s.jsx("svg", { width: "16", height: "16", viewBox: "0 0 32 32", fill: "currentColor", children: /* @__PURE__ */ s.jsx("path", { d: "M32 10v6a1 1 0 1 1-2 0v-6c0-2.206-1.794-4-4-4H6c-2.206 0-4 1.794-4 4v12c0 2.206 1.794 4 4 4h3a1 1 0 1 1 0 2H6c-3.309 0-6-2.691-6-6V10c0-3.309 2.691-6 6-6h20c3.309 0 6 2.691 6 6Zm-13.359 8.232a1 1 0 0 0-1.409.128l-5 6a1 1 0 0 0 0 1.28l5 6a1 1 0 0 0 1.538-1.28L14.303 25l4.467-5.36a1 1 0 0 0-.129-1.408Zm8.128.128a1 1 0 0 0-1.537 1.28L29.699 25l-4.467 5.36a1 1 0 1 0 1.538 1.28l5-6a1 1 0 0 0 0-1.28l-5.001-6Z" }) })
|
|
3466
|
-
}
|
|
3467
|
-
),
|
|
3468
|
-
/* @__PURE__ */ s.jsx(h, {}),
|
|
3469
|
-
/* @__PURE__ */ s.jsx(d, { onClick: () => v("undo"), title: "Undo", children: /* @__PURE__ */ s.jsxs("svg", { width: "16", height: "16", viewBox: "0 0 24 24", fill: "currentColor", children: [
|
|
3470
|
-
/* @__PURE__ */ s.jsx("path", { d: "M7.18 4.8a1 1 0 0 1 .77 1.84A7.8 7.8 0 1 0 16 12a1 1 0 1 1 2 0 9.8 9.8 0 1 1-9.37-9.88 1 1 0 0 1 .55.68Z" }),
|
|
3471
|
-
/* @__PURE__ */ s.jsx("path", { d: "M11.29 7.71a1 1 0 0 1 0 1.42L9.41 11H17a1 1 0 1 1 0 2H9.41l1.88 1.88a1 1 0 0 1-1.42 1.41l-3.58-3.59a1 1 0 0 1 0-1.41l3.58-3.59a1 1 0 0 1 1.42 0Z" })
|
|
3472
|
-
] }) }),
|
|
3473
|
-
/* @__PURE__ */ s.jsx(d, { onClick: () => v("redo"), title: "Redo", children: /* @__PURE__ */ s.jsxs("svg", { width: "16", height: "16", viewBox: "0 0 24 24", fill: "currentColor", children: [
|
|
3474
|
-
/* @__PURE__ */ s.jsx("path", { d: "M16.82 4.8a1 1 0 0 0-.77 1.84A7.8 7.8 0 1 1 8 12a1 1 0 1 0-2 0 9.8 9.8 0 1 0 9.37-9.88 1 1 0 0 0-.55.68Z" }),
|
|
3475
|
-
/* @__PURE__ */ s.jsx("path", { d: "M12.71 7.71a1 1 0 0 0 0 1.42L14.59 11H7a1 1 0 1 0 0 2h7.59l-1.88 1.88a1 1 0 1 0 1.42 1.41l3.58-3.59a1 1 0 0 0 0-1.41l-3.58-3.59a1 1 0 0 0-1.42 0Z" })
|
|
3476
|
-
] }) })
|
|
3477
|
-
]
|
|
3651
|
+
type: "file",
|
|
3652
|
+
ref: F,
|
|
3653
|
+
className: "hidden",
|
|
3654
|
+
accept: z.join(","),
|
|
3655
|
+
multiple: !0,
|
|
3656
|
+
onChange: g
|
|
3478
3657
|
}
|
|
3479
3658
|
),
|
|
3480
|
-
/* @__PURE__ */
|
|
3659
|
+
E && /* @__PURE__ */ p.jsx("div", { className: "px-8 py-2 bg-red-50 text-red-600 text-sm", children: "Please fix validation errors before saving." }),
|
|
3660
|
+
/* @__PURE__ */ p.jsx(
|
|
3481
3661
|
"div",
|
|
3482
3662
|
{
|
|
3483
|
-
ref:
|
|
3484
|
-
className:
|
|
3485
|
-
"p-6 outline-none",
|
|
3663
|
+
ref: I,
|
|
3664
|
+
className: ye(
|
|
3665
|
+
"p-6 outline-none overflow-y-auto",
|
|
3486
3666
|
`
|
|
3667
|
+
/* Heading styles */
|
|
3487
3668
|
[&_h1]:text-3xl [&_h1]:font-bold [&_h1]:mt-6 [&_h1]:mb-4 [&_h1]:text-gray-800 [&_h1]:border-b [&_h1]:pb-2
|
|
3488
3669
|
[&_h2]:text-2xl [&_h2]:font-bold [&_h2]:mt-5 [&_h2]:mb-3 [&_h2]:text-gray-800
|
|
3489
3670
|
[&_h3]:text-xl [&_h3]:font-bold [&_h3]:mt-4 [&_h3]:mb-2 [&_h3]:text-gray-800
|
|
3671
|
+
/* Paragraph styles */
|
|
3490
3672
|
[&_p]:mb-4 [&_p]:text-gray-700 [&_p]:leading-relaxed
|
|
3673
|
+
/* List styles */
|
|
3491
3674
|
[&_ul]:list-disc [&_ul]:list-inside [&_ul]:mb-4 [&_ul]:ml-4 [&_ul]:space-y-1
|
|
3492
3675
|
[&_ol]:list-decimal [&_ol]:list-inside [&_ol]:mb-4 [&_ol]:ml-4 [&_ol]:space-y-1
|
|
3493
3676
|
[&_li]:mb-1
|
|
3677
|
+
/* Link styles */
|
|
3494
3678
|
[&_a]:text-blue-600 [&_a]:hover:text-blue-800 [&_a]:underline [&_a]:transition-colors
|
|
3679
|
+
/* Blockquote styles */
|
|
3495
3680
|
[&_blockquote]:border-l-4 [&_blockquote]:border-blue-500 [&_blockquote]:pl-4 [&_blockquote]:italic [&_blockquote]:text-gray-600 [&_blockquote]:my-4
|
|
3681
|
+
/* Code styles */
|
|
3496
3682
|
[&_code]:bg-gray-100 [&_code]:px-2 [&_code]:py-1 [&_code]:rounded [&_code]:text-sm [&_code]:font-mono
|
|
3497
3683
|
[&_pre]:bg-gray-800 [&_pre]:text-gray-100 [&_pre]:p-4 [&_pre]:rounded-lg [&_pre]:overflow-x-auto [&_pre]:my-4
|
|
3498
3684
|
[&_pre_code]:bg-transparent [&_pre_code]:text-inherit [&_pre_code]:p-0
|
|
3685
|
+
/* Image styles */
|
|
3686
|
+
[&_img]:max-w-full [&_img]:h-auto [&_img]:rounded-lg [&_img]:shadow-md [&_img]:my-4
|
|
3687
|
+
[&_.image-uploading]:opacity-50 [&_.image-uploading]:animate-pulse
|
|
3688
|
+
[&_.image-failed]:border-2 [&_.image-failed]:border-red-500
|
|
3499
3689
|
`,
|
|
3500
|
-
|
|
3501
|
-
"min-h-[
|
|
3690
|
+
s ? "bg-transparent cursor-default" : "cursor-text bg-white",
|
|
3691
|
+
"min-h-[200px]"
|
|
3502
3692
|
),
|
|
3503
|
-
contentEditable: !
|
|
3693
|
+
contentEditable: !s,
|
|
3504
3694
|
suppressContentEditableWarning: !0,
|
|
3505
|
-
|
|
3506
|
-
|
|
3507
|
-
|
|
3508
|
-
|
|
3509
|
-
|
|
3695
|
+
onInput: (S) => W(S.currentTarget.innerHTML),
|
|
3696
|
+
onPaste: f,
|
|
3697
|
+
onDrop: v,
|
|
3698
|
+
onDragOver: (S) => S.preventDefault(),
|
|
3699
|
+
onKeyDown: (S) => {
|
|
3700
|
+
S.key === "Tab" && (S.preventDefault(), $("indent"));
|
|
3510
3701
|
},
|
|
3511
|
-
"data-placeholder":
|
|
3512
|
-
style: {
|
|
3702
|
+
"data-placeholder": s ? "" : "Start typing...",
|
|
3703
|
+
style: {
|
|
3704
|
+
minHeight: "200px",
|
|
3705
|
+
maxHeight: `calc(${m} - ${a ? "140px" : "80px"} - ${c ? "40px" : "0px"})`
|
|
3706
|
+
}
|
|
3513
3707
|
}
|
|
3514
3708
|
),
|
|
3515
|
-
|
|
3516
|
-
/* @__PURE__ */
|
|
3517
|
-
|
|
3518
|
-
|
|
3519
|
-
|
|
3520
|
-
] }),
|
|
3521
|
-
/* @__PURE__ */ s.jsxs("span", { children: [
|
|
3522
|
-
"Characters: ",
|
|
3523
|
-
x.current?.innerText?.length || 0
|
|
3709
|
+
y.pendingImages.length > 0 && /* @__PURE__ */ p.jsx("div", { className: "px-8 pb-4", children: /* @__PURE__ */ p.jsxs("div", { className: "flex items-center gap-2 text-sm text-blue-600 bg-blue-50 p-3 rounded-lg", children: [
|
|
3710
|
+
/* @__PURE__ */ p.jsx(it, { size: 16 }),
|
|
3711
|
+
/* @__PURE__ */ p.jsxs("span", { children: [
|
|
3712
|
+
y.pendingImages.length,
|
|
3713
|
+
" image(s) pending upload. They will be uploaded when you save or export."
|
|
3524
3714
|
] })
|
|
3525
|
-
] })
|
|
3715
|
+
] }) }),
|
|
3716
|
+
c && /* @__PURE__ */ p.jsx(
|
|
3717
|
+
mt,
|
|
3718
|
+
{
|
|
3719
|
+
wordCount: y.wordCount,
|
|
3720
|
+
characterCount: y.characterCount,
|
|
3721
|
+
hasUnsavedChanges: y.hasUnsavedChanges,
|
|
3722
|
+
pendingImagesCount: y.pendingImages.length
|
|
3723
|
+
}
|
|
3724
|
+
)
|
|
3526
3725
|
]
|
|
3527
3726
|
}
|
|
3528
3727
|
);
|
|
3529
3728
|
};
|
|
3530
3729
|
export {
|
|
3531
|
-
|
|
3730
|
+
sr as TextEditor
|
|
3532
3731
|
};
|