@baishuyun/ui-base 6.19.1 → 6.20.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/Amap/index.js +1 -1
- package/dist/Calendar/{Calendar-DbAebHXs.js → Calendar-qL5eoYtX.js} +1 -1
- package/dist/Calendar/index.js +3 -3
- package/dist/Card/index.js +1 -1
- package/dist/CheckBox/index.js +1 -1
- package/dist/ColorPicker/index.js +1 -1
- package/dist/ConfigProvider/index.js +1 -1
- package/dist/DatePicker/{DatePicker-B6E5kERj.js → DatePicker-zoV0C8jf.js} +1 -1
- package/dist/DatePicker/{DatePickerPanel-Ch2PMF9n.js → DatePickerPanel-BZJJDbjG.js} +1 -1
- package/dist/DatePicker/index.js +2 -2
- package/dist/DropDown/index.js +1 -1
- package/dist/Editor/index.js +962 -923
- package/dist/Gantt/index.js +1 -1
- package/dist/Icon/index.js +1 -1
- package/dist/InputTag/index.js +1 -1
- package/dist/Loading/index.js +1 -1
- package/dist/Modal/index.js +1 -1
- package/dist/NotFoundContent/index.js +1 -1
- package/dist/Overlay/index.js +1 -1
- package/dist/Radio/index.js +1 -1
- package/dist/ScrollBar/index.js +1 -1
- package/dist/Segmented/index.js +1 -1
- package/dist/Select/index.js +1 -1
- package/dist/Table/index.js +1 -1
- package/dist/Tabs/index.js +1 -1
- package/dist/Tooltip/index.js +1 -1
- package/dist/Tree/index.js +1 -1
- package/dist/components/Editor/ToolbarPlugin/context/TextFormatsContext.d.ts +1 -0
- package/dist/components/Editor/constants/index.d.ts +2 -0
- package/dist/components/Editor/nodes/ExtendedTextNode.d.ts +5 -1
- package/dist/components/Editor/plugins/IndentLimitPlugin.d.ts +1 -0
- package/dist/components/Editor/utils/clampElementIndent.d.ts +3 -0
- package/dist/components/Editor/utils/tryResetEmptyBlockFormat.d.ts +5 -0
- package/dist/index.js +3 -3
- package/dist/style.css +1 -1
- package/dist/vendors/{version-TqGVVc-h.js → version-CkTjB1Kb.js} +1 -1
- package/package.json +2 -2
package/dist/Editor/index.js
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import "../vendors/version-
|
|
1
|
+
import "../vendors/version-CkTjB1Kb.js";
|
|
2
2
|
import "../ScrollBar/style-D26azwz6.js";
|
|
3
3
|
import { t as e } from "../Icon/Icon-DrdQOEJE.js";
|
|
4
4
|
import "../vendors/LocaleContext-DXQoOKM2.js";
|
|
@@ -21,33 +21,33 @@ import { t as d } from "../vendors/useFloatingPortal-DJ1iKmW-.js";
|
|
|
21
21
|
import { t as f } from "../DropDown/DropDown-B_szM67V.js";
|
|
22
22
|
import { dropRightWhile as p, dropWhile as m, keyBy as h, omit as g, range as _ } from "lodash-es";
|
|
23
23
|
import { Fragment as v, jsx as y, jsxs as b } from "react/jsx-runtime";
|
|
24
|
-
import x, { createContext as S, forwardRef as C, memo as w, useCallback as T, useContext as E, useDeferredValue as D, useEffect as O, useId as ee, useImperativeHandle as k, useLayoutEffect as
|
|
25
|
-
import { Button as
|
|
26
|
-
import
|
|
27
|
-
import { useEventListener as
|
|
28
|
-
import { AnimatePresence as
|
|
29
|
-
import { FloatingPortal as
|
|
30
|
-
import { LexicalComposer as
|
|
31
|
-
import { RichTextPlugin as
|
|
32
|
-
import { ContentEditable as
|
|
33
|
-
import { HistoryPlugin as
|
|
34
|
-
import { OnChangePlugin as
|
|
35
|
-
import { LexicalErrorBoundary as
|
|
36
|
-
import { $generateHtmlFromNodes as
|
|
37
|
-
import { $applyNodeReplacement as
|
|
38
|
-
import { useLexicalComposerContext as ct, useLexicalComposerContext as
|
|
24
|
+
import x, { createContext as S, forwardRef as C, memo as w, useCallback as T, useContext as E, useDeferredValue as D, useEffect as O, useId as ee, useImperativeHandle as k, useLayoutEffect as A, useMemo as j, useRef as M, useState as N } from "react";
|
|
25
|
+
import { Button as P, Form as te, Input as ne, message as re } from "antd";
|
|
26
|
+
import F from "clsx";
|
|
27
|
+
import { useEventListener as ie } from "ahooks";
|
|
28
|
+
import { AnimatePresence as ae, motion as I, useReducedMotion as oe } from "motion/react";
|
|
29
|
+
import { FloatingPortal as se } from "@floating-ui/react";
|
|
30
|
+
import { LexicalComposer as ce } from "@lexical/react/LexicalComposer";
|
|
31
|
+
import { RichTextPlugin as le } from "@lexical/react/LexicalRichTextPlugin";
|
|
32
|
+
import { ContentEditable as ue } from "@lexical/react/LexicalContentEditable";
|
|
33
|
+
import { HistoryPlugin as de } from "@lexical/react/LexicalHistoryPlugin";
|
|
34
|
+
import { OnChangePlugin as fe } from "@lexical/react/LexicalOnChangePlugin";
|
|
35
|
+
import { LexicalErrorBoundary as pe } from "@lexical/react/LexicalErrorBoundary";
|
|
36
|
+
import { $generateHtmlFromNodes as me, $generateNodesFromDOM as he } from "@lexical/html";
|
|
37
|
+
import { $applyNodeReplacement as ge, $createLineBreakNode as _e, $createParagraphNode as ve, $createTabNode as ye, $createTextNode as be, $getNearestNodeFromDOMNode as xe, $getNodeByKey as Se, $getRoot as Ce, $getRoot as L, $getSelection as R, $insertNodes as we, $isElementNode as Te, $isLineBreakNode as Ee, $isParagraphNode as De, $isRangeSelection as z, $isRootOrShadowRoot as Oe, $isTabNode as ke, $isTextNode as Ae, $nodesOfType as je, $onUpdate as Me, $setSelection as Ne, BLUR_COMMAND as Pe, CAN_REDO_COMMAND as Fe, CAN_UNDO_COMMAND as Ie, CLEAR_HISTORY_COMMAND as Le, COMMAND_PRIORITY_CRITICAL as Re, COMMAND_PRIORITY_EDITOR as ze, COMMAND_PRIORITY_HIGH as Be, COMMAND_PRIORITY_LOW as Ve, DROP_COMMAND as He, DecoratorNode as Ue, FOCUS_COMMAND as We, FORMAT_ELEMENT_COMMAND as Ge, FORMAT_TEXT_COMMAND as Ke, HISTORY_MERGE_TAG as qe, INDENT_CONTENT_COMMAND as Je, KEY_ENTER_COMMAND as Ye, KEY_TAB_COMMAND as Xe, OUTDENT_CONTENT_COMMAND as Ze, PASTE_COMMAND as Qe, PASTE_TAG as $e, ParagraphNode as et, REDO_COMMAND as tt, RootNode as nt, TextNode as rt, UNDO_COMMAND as it, createCommand as at, isHTMLElement as ot, mergeRegister as st } from "lexical";
|
|
38
|
+
import { useLexicalComposerContext as ct, useLexicalComposerContext as B } from "@lexical/react/LexicalComposerContext";
|
|
39
39
|
import { $createLinkNode as lt, $isLinkNode as ut, $toggleLink as dt, AutoLinkNode as ft, LinkNode as pt, TOGGLE_LINK_COMMAND as mt } from "@lexical/link";
|
|
40
40
|
import { $isListItemNode as ht, $isListNode as gt, INSERT_ORDERED_LIST_COMMAND as _t, INSERT_UNORDERED_LIST_COMMAND as vt, ListItemNode as yt, ListNode as bt, REMOVE_LIST_COMMAND as xt } from "@lexical/list";
|
|
41
|
-
import { $createCodeHighlightNode as St, $createCodeNode as Ct, $isCodeHighlightNode as wt, $isCodeNode as
|
|
41
|
+
import { $createCodeHighlightNode as St, $createCodeNode as Ct, $isCodeHighlightNode as wt, $isCodeNode as V, $plainifyCodeContent as Tt, CodeHighlightNode as Et, CodeNode as Dt, registerCodeIndentation as Ot } from "@lexical/code-core";
|
|
42
42
|
import { $getSelectionStyleValueForProperty as kt, $patchStyleText as At, $setBlocksType as jt, $trimTextContentFromAnchor as Mt } from "@lexical/selection";
|
|
43
43
|
import { $findCellNode as Nt, $isTableCellNode as Pt, $isTableNode as Ft, $isTableRowNode as It, $isTableSelection as Lt, INSERT_TABLE_COMMAND as Rt, TableCellNode as zt, TableNode as Bt, TableRowNode as Vt, registerTableCellUnmergeTransform as Ht, registerTablePlugin as Ut, registerTableSelectionObserver as Wt, setScrollableTablesActive as Gt } from "@lexical/table";
|
|
44
44
|
import { $createHeadingNode as Kt, $isHeadingNode as qt, HeadingNode as Jt } from "@lexical/rich-text";
|
|
45
|
-
import { $findMatchingParent as
|
|
46
|
-
import
|
|
47
|
-
import { useLexicalEditable as
|
|
48
|
-
import { LinkPlugin as
|
|
49
|
-
import { ListPlugin as
|
|
50
|
-
var
|
|
45
|
+
import { $findMatchingParent as H, $handleIndentAndOutdent as Yt, $restoreEditorState as Xt, mergeRegister as Zt } from "@lexical/utils";
|
|
46
|
+
import Qt from "dompurify";
|
|
47
|
+
import { useLexicalEditable as $t } from "@lexical/react/useLexicalEditable";
|
|
48
|
+
import { LinkPlugin as en } from "@lexical/react/LexicalLinkPlugin";
|
|
49
|
+
import { ListPlugin as tn } from "@lexical/react/LexicalListPlugin";
|
|
50
|
+
var U = {
|
|
51
51
|
imageWrapper: "_imageWrapper_y06h3_1",
|
|
52
52
|
selected: "_selected_y06h3_8",
|
|
53
53
|
resizing: "_resizing_y06h3_12",
|
|
@@ -57,8 +57,8 @@ var V = {
|
|
|
57
57
|
topRight: "_topRight_y06h3_49",
|
|
58
58
|
bottomLeft: "_bottomLeft_y06h3_54",
|
|
59
59
|
bottomRight: "_bottomRight_y06h3_59"
|
|
60
|
-
},
|
|
61
|
-
let [s] =
|
|
60
|
+
}, nn = ({ src: e, altText: t, width: n, height: r, dataId: i, dataSrc: a, nodeKey: o }) => {
|
|
61
|
+
let [s] = B(), [c, l] = N(!1), [u, d] = N(null), f = M(null), [p, m] = N({
|
|
62
62
|
width: n || void 0,
|
|
63
63
|
height: r || void 0
|
|
64
64
|
}), h = T(() => {
|
|
@@ -106,8 +106,8 @@ var V = {
|
|
|
106
106
|
});
|
|
107
107
|
}, [u]), S = T(() => {
|
|
108
108
|
u?.isResizing && (s.update(() => {
|
|
109
|
-
let e =
|
|
110
|
-
|
|
109
|
+
let e = Se(o);
|
|
110
|
+
on(e) && e.setWidthAndHeight(p.width, p.height);
|
|
111
111
|
}), d(null));
|
|
112
112
|
}, [
|
|
113
113
|
s,
|
|
@@ -129,8 +129,8 @@ var V = {
|
|
|
129
129
|
}, []);
|
|
130
130
|
return O(() => s.registerUpdateListener(({ editorState: e }) => {
|
|
131
131
|
e.read(() => {
|
|
132
|
-
let e =
|
|
133
|
-
|
|
132
|
+
let e = R();
|
|
133
|
+
z(e) && !e.getNodes().some((e) => e.getKey() === o || e.getParent() && e.getParent()?.getKey() === o) && c && l(!1);
|
|
134
134
|
});
|
|
135
135
|
}), [
|
|
136
136
|
s,
|
|
@@ -144,9 +144,9 @@ var V = {
|
|
|
144
144
|
document.removeEventListener("mousedown", e);
|
|
145
145
|
};
|
|
146
146
|
}, [c]), /* @__PURE__ */ b("div", {
|
|
147
|
-
className:
|
|
148
|
-
[
|
|
149
|
-
[
|
|
147
|
+
className: F(U.imageWrapper, {
|
|
148
|
+
[U.selected]: c,
|
|
149
|
+
[U.resizing]: u?.isResizing
|
|
150
150
|
}),
|
|
151
151
|
children: [/* @__PURE__ */ y("img", {
|
|
152
152
|
ref: f,
|
|
@@ -154,7 +154,7 @@ var V = {
|
|
|
154
154
|
alt: t,
|
|
155
155
|
"data-id": i,
|
|
156
156
|
"data-src": a,
|
|
157
|
-
className:
|
|
157
|
+
className: U.image,
|
|
158
158
|
style: {
|
|
159
159
|
width: p.width,
|
|
160
160
|
height: p.height
|
|
@@ -164,24 +164,24 @@ var V = {
|
|
|
164
164
|
draggable: !1
|
|
165
165
|
}), c && /* @__PURE__ */ b(v, { children: [
|
|
166
166
|
/* @__PURE__ */ y("div", {
|
|
167
|
-
className:
|
|
167
|
+
className: F(U.resizeHandle, U.bottomRight),
|
|
168
168
|
onMouseDown: (e) => g(e, "bottom-right")
|
|
169
169
|
}),
|
|
170
170
|
/* @__PURE__ */ y("div", {
|
|
171
|
-
className:
|
|
171
|
+
className: F(U.resizeHandle, U.bottomLeft),
|
|
172
172
|
onMouseDown: (e) => g(e, "bottom-left")
|
|
173
173
|
}),
|
|
174
174
|
/* @__PURE__ */ y("div", {
|
|
175
|
-
className:
|
|
175
|
+
className: F(U.resizeHandle, U.topRight),
|
|
176
176
|
onMouseDown: (e) => g(e, "top-right")
|
|
177
177
|
}),
|
|
178
178
|
/* @__PURE__ */ y("div", {
|
|
179
|
-
className:
|
|
179
|
+
className: F(U.resizeHandle, U.topLeft),
|
|
180
180
|
onMouseDown: (e) => g(e, "top-left")
|
|
181
181
|
})
|
|
182
182
|
] })]
|
|
183
183
|
});
|
|
184
|
-
},
|
|
184
|
+
}, rn = class e extends Ue {
|
|
185
185
|
__src;
|
|
186
186
|
__altText;
|
|
187
187
|
__width;
|
|
@@ -236,7 +236,7 @@ var V = {
|
|
|
236
236
|
n.__width = e, n.__height = t;
|
|
237
237
|
}
|
|
238
238
|
decorate() {
|
|
239
|
-
return /* @__PURE__ */ y(
|
|
239
|
+
return /* @__PURE__ */ y(nn, {
|
|
240
240
|
src: this.__src,
|
|
241
241
|
altText: this.__altText,
|
|
242
242
|
width: this.__width,
|
|
@@ -248,13 +248,13 @@ var V = {
|
|
|
248
248
|
}
|
|
249
249
|
static importDOM() {
|
|
250
250
|
return { img: () => ({
|
|
251
|
-
conversion:
|
|
251
|
+
conversion: sn,
|
|
252
252
|
priority: 0
|
|
253
253
|
}) };
|
|
254
254
|
}
|
|
255
255
|
static importJSON(e) {
|
|
256
256
|
let { src: t, altText: n, width: r, height: i, dataId: a, dataSrc: o } = e;
|
|
257
|
-
return
|
|
257
|
+
return an({
|
|
258
258
|
src: t,
|
|
259
259
|
altText: n,
|
|
260
260
|
width: r,
|
|
@@ -279,13 +279,13 @@ var V = {
|
|
|
279
279
|
return !0;
|
|
280
280
|
}
|
|
281
281
|
};
|
|
282
|
-
function
|
|
283
|
-
return new
|
|
284
|
-
}
|
|
285
|
-
function an(e) {
|
|
286
|
-
return e instanceof nn;
|
|
282
|
+
function an({ src: e, altText: t, width: n, height: r, dataId: i, dataSrc: a, key: o }) {
|
|
283
|
+
return new rn(e, t, n, r, o, i, a);
|
|
287
284
|
}
|
|
288
285
|
function on(e) {
|
|
286
|
+
return e instanceof rn;
|
|
287
|
+
}
|
|
288
|
+
function sn(e) {
|
|
289
289
|
if (e instanceof HTMLImageElement) {
|
|
290
290
|
let { src: t, alt: n, style: r } = e, i, a;
|
|
291
291
|
if (r.width) {
|
|
@@ -298,7 +298,7 @@ function on(e) {
|
|
|
298
298
|
}
|
|
299
299
|
i === void 0 && e.width && (i = e.width), a === void 0 && e.height && (a = e.height);
|
|
300
300
|
let o = e.getAttribute("data-id") || void 0, s = e.getAttribute("data-src") || void 0;
|
|
301
|
-
return { node:
|
|
301
|
+
return { node: an({
|
|
302
302
|
src: t,
|
|
303
303
|
altText: n,
|
|
304
304
|
width: i,
|
|
@@ -311,10 +311,10 @@ function on(e) {
|
|
|
311
311
|
}
|
|
312
312
|
//#endregion
|
|
313
313
|
//#region src/components/Editor/constants/toolbarSize.ts
|
|
314
|
-
var
|
|
314
|
+
var cn = "default", W = {
|
|
315
315
|
x: 0,
|
|
316
316
|
y: 5
|
|
317
|
-
},
|
|
317
|
+
}, ln = {
|
|
318
318
|
small: {
|
|
319
319
|
itemHeight: 20,
|
|
320
320
|
iconSize: 14
|
|
@@ -323,24 +323,24 @@ var sn = "default", H = {
|
|
|
323
323
|
itemHeight: 30,
|
|
324
324
|
iconSize: 16
|
|
325
325
|
}
|
|
326
|
-
},
|
|
326
|
+
}, un = (e) => {
|
|
327
327
|
if (!(e === void 0 || e === "")) return typeof e == "number" ? `${e}px` : e;
|
|
328
|
-
},
|
|
329
|
-
let n =
|
|
328
|
+
}, dn = (e, t = cn) => {
|
|
329
|
+
let n = ln[t], r = un(e?.itemHeight) ?? `${n.itemHeight}px`, i = un(e?.iconSize) ?? `${n.iconSize}px`, a = {
|
|
330
330
|
"--bsy-editor-toolbar-item-height": r,
|
|
331
331
|
"--bsy-editor-toolbar-icon-size": i,
|
|
332
332
|
"--bsy-editor-toolbar-divider-color": "#e0e0e0",
|
|
333
333
|
"--bsy-editor-toolbar-item-highlight-color": "#0265ff"
|
|
334
334
|
};
|
|
335
|
-
return e ? (s(a, "--bsy-editor-toolbar-bg", e.bg), s(a, "--bsy-editor-toolbar-border-color", e.borderColor), s(a, "--bsy-editor-toolbar-padding", e.padding), s(a, "--bsy-editor-toolbar-gap",
|
|
336
|
-
},
|
|
335
|
+
return e ? (s(a, "--bsy-editor-toolbar-bg", e.bg), s(a, "--bsy-editor-toolbar-border-color", e.borderColor), s(a, "--bsy-editor-toolbar-padding", e.padding), s(a, "--bsy-editor-toolbar-gap", un(e.gap)), s(a, "--bsy-editor-toolbar-group-gap", un(e.groupGap)), s(a, "--bsy-editor-toolbar-divider-color", e.dividerColor), s(a, "--bsy-editor-toolbar-divider-margin", un(e.dividerMargin)), s(a, "--bsy-editor-toolbar-color-icon", e.colorIcon), s(a, "--bsy-editor-toolbar-item-hover-bg", e.itemHoverBg), s(a, "--bsy-editor-toolbar-item-hover-color", e.itemHoverColor), s(a, "--bsy-editor-toolbar-item-active-bg", e.itemActiveBg), s(a, "--bsy-editor-toolbar-item-active-color", e.itemActiveColor), s(a, "--bsy-editor-toolbar-item-highlight-color", e.itemHighlightColor), s(a, "--bsy-editor-toolbar-item-padding", un(e.itemPadding)), s(a, "--bsy-editor-toolbar-item-border-radius", un(e.itemBorderRadius)), a) : a;
|
|
336
|
+
}, fn = (e, t = cn) => {
|
|
337
337
|
if (typeof e == "number" && Number.isFinite(e)) return e;
|
|
338
338
|
if (typeof e == "string") {
|
|
339
339
|
let t = Number.parseFloat(e);
|
|
340
340
|
if (Number.isFinite(t)) return t;
|
|
341
341
|
}
|
|
342
|
-
return
|
|
343
|
-
},
|
|
342
|
+
return ln[t].iconSize;
|
|
343
|
+
}, pn = (e) => {
|
|
344
344
|
let t = e?.placement ?? "top", n = e?.offset, r = typeof n == "number" ? 0 : n?.x ?? 0, i = typeof n == "number" ? n : n?.y ?? 0, a = t === "top", o = {
|
|
345
345
|
position: "absolute",
|
|
346
346
|
[a ? "bottom" : "top"]: "100%",
|
|
@@ -350,7 +350,7 @@ var sn = "default", H = {
|
|
|
350
350
|
width: "100%"
|
|
351
351
|
};
|
|
352
352
|
return r && (o.transform = `translateX(${r}px)`), o;
|
|
353
|
-
},
|
|
353
|
+
}, mn = (e, t, n, r) => {
|
|
354
354
|
if (e.length === 0 || t <= 0 || e.reduce((e, t, n) => e + t.width + (n > 0 ? r : 0), 0) <= t) return e.length;
|
|
355
355
|
let i = 0, a = 0;
|
|
356
356
|
for (let o = 0; o < e.length; o++) {
|
|
@@ -360,13 +360,13 @@ var sn = "default", H = {
|
|
|
360
360
|
}
|
|
361
361
|
for (; a > 0 && e[a - 1]?.isDivider;) --a;
|
|
362
362
|
return a;
|
|
363
|
-
},
|
|
363
|
+
}, hn = (e, t) => {
|
|
364
364
|
let n = (e) => e.kind === "divider";
|
|
365
365
|
return {
|
|
366
366
|
visible: e.slice(0, t),
|
|
367
367
|
overflow: p(m(e.slice(t), n), n)
|
|
368
368
|
};
|
|
369
|
-
},
|
|
369
|
+
}, G = {
|
|
370
370
|
"bsy-lexical__toolbar": "_bsy-lexical__toolbar_1wqto_1",
|
|
371
371
|
"bsy-lexical__toolbar--floating": "_bsy-lexical__toolbar--floating_1wqto_14",
|
|
372
372
|
"bsy-lexical__toolbar--sticky": "_bsy-lexical__toolbar--sticky_1wqto_19",
|
|
@@ -387,7 +387,7 @@ var sn = "default", H = {
|
|
|
387
387
|
"bsy-lexical__toolbar-overflow-row--instant": "_bsy-lexical__toolbar-overflow-row--instant_1wqto_128",
|
|
388
388
|
"bsy-lexical__toolbar-overflow-inner": "_bsy-lexical__toolbar-overflow-inner_1wqto_132",
|
|
389
389
|
"bsy-lexical__toolbar-with-divider": "_bsy-lexical__toolbar-with-divider_1wqto_140"
|
|
390
|
-
},
|
|
390
|
+
}, gn = S(null), _n = [
|
|
391
391
|
{
|
|
392
392
|
label: "12",
|
|
393
393
|
value: "12px"
|
|
@@ -436,14 +436,14 @@ var sn = "default", H = {
|
|
|
436
436
|
label: "128",
|
|
437
437
|
value: "128px"
|
|
438
438
|
}
|
|
439
|
-
],
|
|
439
|
+
], vn = "16px", yn = "#000", bn = "transparent", xn = [
|
|
440
440
|
"jpg",
|
|
441
441
|
"jpeg",
|
|
442
442
|
"png",
|
|
443
443
|
"gif",
|
|
444
444
|
"bmp",
|
|
445
445
|
"tif"
|
|
446
|
-
],
|
|
446
|
+
], Sn = xn.map((e) => `.${e}`).join(","), Cn = "plaintext", wn = "github-light", Tn = [
|
|
447
447
|
{
|
|
448
448
|
id: "plaintext",
|
|
449
449
|
label: "Plain text"
|
|
@@ -528,60 +528,61 @@ var sn = "default", H = {
|
|
|
528
528
|
id: "markdown",
|
|
529
529
|
label: "Markdown"
|
|
530
530
|
}
|
|
531
|
-
],
|
|
531
|
+
], En = h(Tn, "id"), Dn = (e) => e && En[e] ? e : Cn, On = (e) => e === "center" || e === "right" || e === "left" ? e : e === "end" ? "right" : "left", kn = (e) => {
|
|
532
532
|
if (e) {
|
|
533
|
-
|
|
533
|
+
L().selectStart();
|
|
534
534
|
return;
|
|
535
535
|
}
|
|
536
|
-
|
|
537
|
-
},
|
|
536
|
+
Ne(null);
|
|
537
|
+
}, An = (e) => {
|
|
538
538
|
let t = e.getRootElement();
|
|
539
|
-
|
|
540
|
-
},
|
|
541
|
-
|
|
542
|
-
},
|
|
539
|
+
kn(!!(t && document.activeElement && t.contains(document.activeElement)));
|
|
540
|
+
}, jn = () => {
|
|
541
|
+
R() === null && L().selectStart();
|
|
542
|
+
}, K = (e) => {
|
|
543
543
|
e.isEditable() || e.setEditable(!0), e.update(() => {
|
|
544
|
-
|
|
544
|
+
jn();
|
|
545
545
|
}), e.focus(void 0, { defaultSelection: "rootStart" });
|
|
546
|
-
},
|
|
546
|
+
}, Mn = {
|
|
547
547
|
bold: !1,
|
|
548
548
|
italic: !1,
|
|
549
549
|
underline: !1,
|
|
550
550
|
strikethrough: !1,
|
|
551
551
|
superscript: !1,
|
|
552
552
|
subscript: !1,
|
|
553
|
-
fontSize:
|
|
554
|
-
fontColor:
|
|
555
|
-
backgroundColor:
|
|
553
|
+
fontSize: vn,
|
|
554
|
+
fontColor: yn,
|
|
555
|
+
backgroundColor: bn,
|
|
556
556
|
align: "left",
|
|
557
557
|
listType: !1,
|
|
558
|
+
canIndent: !0,
|
|
558
559
|
canOutdent: !1,
|
|
559
560
|
isCodeBlock: !1,
|
|
560
561
|
isInTable: !1,
|
|
561
562
|
headingTag: !1,
|
|
562
|
-
codeLanguage:
|
|
563
|
+
codeLanguage: Cn,
|
|
563
564
|
hasEditorText: !1,
|
|
564
565
|
link: void 0
|
|
565
|
-
},
|
|
566
|
-
let t = !!
|
|
567
|
-
...
|
|
566
|
+
}, Nn = (e) => {
|
|
567
|
+
let t = !!L().getTextContent().trim(), n = {
|
|
568
|
+
...Mn,
|
|
568
569
|
hasEditorText: t
|
|
569
570
|
};
|
|
570
571
|
if (!e) return n;
|
|
571
|
-
let r =
|
|
572
|
+
let r = R();
|
|
572
573
|
if (Lt(r)) return {
|
|
573
574
|
...n,
|
|
574
575
|
isInTable: !0
|
|
575
576
|
};
|
|
576
|
-
if (!
|
|
577
|
-
let i = kt(r, "font-size",
|
|
577
|
+
if (!z(r)) return n;
|
|
578
|
+
let i = kt(r, "font-size", vn), a = kt(r, "color", yn), o = kt(r, "background-color", bn), s = r.anchor.getNode(), c = s.getKey() === "root" ? s : H(s, (e) => {
|
|
578
579
|
let t = e.getParent();
|
|
579
|
-
return t !== null &&
|
|
580
|
+
return t !== null && Oe(t);
|
|
580
581
|
});
|
|
581
582
|
c === null && (c = s.getTopLevelElementOrThrow());
|
|
582
|
-
let l = {}, u =
|
|
583
|
+
let l = {}, u = H(s, ut);
|
|
583
584
|
u ? (l.link = u.getURL(), l.linkText = u.getTextContent(), l.newBlank = u.getTarget() === "_blank") : l.linkText = r.getTextContent();
|
|
584
|
-
let d =
|
|
585
|
+
let d = H(s, ht), f = !1, p = Te(c) ? c.getIndent() : 0;
|
|
585
586
|
if (ht(d)) {
|
|
586
587
|
p = d.getIndent();
|
|
587
588
|
let e = d.getParent();
|
|
@@ -590,7 +591,7 @@ var sn = "default", H = {
|
|
|
590
591
|
f = t === "number" || t === "bullet" ? t : !1;
|
|
591
592
|
}
|
|
592
593
|
}
|
|
593
|
-
let m =
|
|
594
|
+
let m = H(s, V), h = H(s, qt), g = qt(h) ? h.getTag() : void 0;
|
|
594
595
|
return {
|
|
595
596
|
bold: r.hasFormat("bold"),
|
|
596
597
|
italic: r.hasFormat("italic"),
|
|
@@ -601,72 +602,73 @@ var sn = "default", H = {
|
|
|
601
602
|
fontSize: i,
|
|
602
603
|
fontColor: a,
|
|
603
604
|
backgroundColor: o,
|
|
604
|
-
align:
|
|
605
|
+
align: On(Te(c) ? c.getFormatType() : ""),
|
|
605
606
|
listType: f,
|
|
607
|
+
canIndent: p < 8,
|
|
606
608
|
canOutdent: p > 0 || f !== !1,
|
|
607
609
|
isCodeBlock: !!m,
|
|
608
|
-
isInTable: !!
|
|
610
|
+
isInTable: !!H(s, Pt),
|
|
609
611
|
headingTag: g === "h1" || g === "h2" || g === "h3" ? g : !1,
|
|
610
|
-
codeLanguage:
|
|
612
|
+
codeLanguage: Dn(m?.getLanguage()),
|
|
611
613
|
hasEditorText: t,
|
|
612
614
|
link: l
|
|
613
615
|
};
|
|
614
|
-
},
|
|
616
|
+
}, Pn = (e, t) => {
|
|
615
617
|
e.isEditable() || e.setEditable(!0), e.update(() => {
|
|
616
|
-
|
|
618
|
+
jn(), t(Nn(!0));
|
|
617
619
|
}), e.focus(void 0, { defaultSelection: "rootStart" });
|
|
618
|
-
},
|
|
619
|
-
let t =
|
|
620
|
-
return
|
|
620
|
+
}, Fn = (e) => {
|
|
621
|
+
let t = Mn;
|
|
622
|
+
return Pn(e, (e) => {
|
|
621
623
|
t = e;
|
|
622
624
|
}), t;
|
|
623
|
-
},
|
|
624
|
-
let [e] =
|
|
625
|
-
return O(() =>
|
|
626
|
-
},
|
|
627
|
-
let [e] =
|
|
625
|
+
}, In = () => {
|
|
626
|
+
let [e] = B(), [t, n] = N(!1);
|
|
627
|
+
return O(() => Zt(e.registerCommand(We, () => (n(!0), !1), Ve), e.registerCommand(Pe, () => (n(!1), !1), Ve)), [e]), t;
|
|
628
|
+
}, Ln = () => {
|
|
629
|
+
let [e] = B(), t = In(), [n, r] = N(Mn);
|
|
628
630
|
return O(() => (e.getEditorState().read(() => {
|
|
629
|
-
r(
|
|
631
|
+
r(Nn(t));
|
|
630
632
|
}, { editor: e }), e.registerUpdateListener(({ editorState: n }) => {
|
|
631
633
|
n.read(() => {
|
|
632
|
-
r(
|
|
634
|
+
r(Nn(t));
|
|
633
635
|
}, { editor: e });
|
|
634
636
|
})), [e, t]), n;
|
|
635
|
-
},
|
|
636
|
-
let t =
|
|
637
|
-
return /* @__PURE__ */ y(
|
|
637
|
+
}, Rn = (e) => {
|
|
638
|
+
let t = Ln();
|
|
639
|
+
return /* @__PURE__ */ y(gn.Provider, {
|
|
638
640
|
value: t,
|
|
639
641
|
children: e.children
|
|
640
642
|
});
|
|
641
|
-
},
|
|
642
|
-
let e = E(
|
|
643
|
+
}, zn = S(null), Bn = () => {
|
|
644
|
+
let e = E(zn);
|
|
643
645
|
if (!e) throw Error("useHistoryStateContext must be used within HistoryStateProvider");
|
|
644
646
|
return e;
|
|
645
|
-
},
|
|
646
|
-
let [t] =
|
|
647
|
+
}, Vn = ({ children: e }) => {
|
|
648
|
+
let [t] = B(), [n, r] = N({
|
|
647
649
|
canUndo: !1,
|
|
648
650
|
canRedo: !1
|
|
649
651
|
});
|
|
650
|
-
return O(() => st(t.registerCommand(
|
|
652
|
+
return O(() => st(t.registerCommand(Ie, (e) => (r((t) => t.canUndo === e ? t : {
|
|
651
653
|
...t,
|
|
652
654
|
canUndo: e
|
|
653
|
-
}), !1),
|
|
655
|
+
}), !1), Re), t.registerCommand(Fe, (e) => (r((t) => t.canRedo === e ? t : {
|
|
654
656
|
...t,
|
|
655
657
|
canRedo: e
|
|
656
|
-
}), !1),
|
|
658
|
+
}), !1), Re)), [t]), /* @__PURE__ */ y(zn.Provider, {
|
|
657
659
|
value: n,
|
|
658
660
|
children: e
|
|
659
661
|
});
|
|
660
|
-
},
|
|
662
|
+
}, Hn = S({ iconSize: ln.default.iconSize }), Un = Hn.Provider, Wn = () => E(Hn), Gn = {
|
|
661
663
|
"lexical-editor__toolbar-button": "_lexical-editor__toolbar-button_dp4a1_1",
|
|
662
664
|
"lexical-editor__toolbar-button-active": "_lexical-editor__toolbar-button-active_dp4a1_26",
|
|
663
665
|
"lexical-editor__toolbar-button-highlight": "_lexical-editor__toolbar-button-highlight_dp4a1_30",
|
|
664
666
|
"lexical-editor__toolbar-button-tooltip-trigger": "_lexical-editor__toolbar-button-tooltip-trigger_dp4a1_36"
|
|
665
667
|
}, q = ({ icon: t, tooltip: n, onClick: r, disabled: i, showDisabledTooltip: a, active: o, highlight: s, size: l }) => {
|
|
666
|
-
let { iconSize: u } =
|
|
667
|
-
className:
|
|
668
|
-
[
|
|
669
|
-
[
|
|
668
|
+
let { iconSize: u } = Wn(), d = /* @__PURE__ */ y("button", {
|
|
669
|
+
className: F(Gn["lexical-editor__toolbar-button"], {
|
|
670
|
+
[Gn["lexical-editor__toolbar-button-active"]]: o,
|
|
671
|
+
[Gn["lexical-editor__toolbar-button-highlight"]]: s
|
|
670
672
|
}),
|
|
671
673
|
type: "button",
|
|
672
674
|
onClick: r,
|
|
@@ -681,16 +683,16 @@ var sn = "default", H = {
|
|
|
681
683
|
content: n,
|
|
682
684
|
minWidth: "auto",
|
|
683
685
|
children: i ? /* @__PURE__ */ y("span", {
|
|
684
|
-
className:
|
|
686
|
+
className: Gn["lexical-editor__toolbar-button-tooltip-trigger"],
|
|
685
687
|
children: d
|
|
686
688
|
}) : d
|
|
687
689
|
});
|
|
688
690
|
}, J = () => {
|
|
689
|
-
let e = E(
|
|
691
|
+
let e = E(gn);
|
|
690
692
|
if (!e) throw Error("useTextFormatsContext must be used within TextFormatsProvider");
|
|
691
693
|
return e;
|
|
692
|
-
},
|
|
693
|
-
let [r] =
|
|
694
|
+
}, Kn = ({ disabled: e, tooltip: t, showDisabledTooltip: n }) => {
|
|
695
|
+
let [r] = B(), i = J(), { t: o } = a(), s = i.bold;
|
|
694
696
|
return /* @__PURE__ */ y(q, {
|
|
695
697
|
icon: "bold",
|
|
696
698
|
tooltip: t ?? o("editor.bold"),
|
|
@@ -698,11 +700,11 @@ var sn = "default", H = {
|
|
|
698
700
|
active: s,
|
|
699
701
|
disabled: e,
|
|
700
702
|
onClick: () => {
|
|
701
|
-
|
|
703
|
+
K(r), r.dispatchCommand(Ke, "bold");
|
|
702
704
|
}
|
|
703
705
|
});
|
|
704
|
-
},
|
|
705
|
-
let [r] =
|
|
706
|
+
}, qn = ({ disabled: e, tooltip: t, showDisabledTooltip: n }) => {
|
|
707
|
+
let [r] = B(), i = J(), { t: o } = a(), s = i.underline;
|
|
706
708
|
return /* @__PURE__ */ y(q, {
|
|
707
709
|
icon: "underline",
|
|
708
710
|
tooltip: t ?? o("editor.underline"),
|
|
@@ -710,11 +712,11 @@ var sn = "default", H = {
|
|
|
710
712
|
active: s,
|
|
711
713
|
disabled: e,
|
|
712
714
|
onClick: () => {
|
|
713
|
-
|
|
715
|
+
K(r), r.dispatchCommand(Ke, "underline");
|
|
714
716
|
}
|
|
715
717
|
});
|
|
716
|
-
},
|
|
717
|
-
let [r] =
|
|
718
|
+
}, Jn = ({ disabled: e, tooltip: t, showDisabledTooltip: n }) => {
|
|
719
|
+
let [r] = B(), i = J(), { t: o } = a(), s = i.italic;
|
|
718
720
|
return /* @__PURE__ */ y(q, {
|
|
719
721
|
icon: "italic",
|
|
720
722
|
tooltip: t ?? o("editor.italic"),
|
|
@@ -722,18 +724,18 @@ var sn = "default", H = {
|
|
|
722
724
|
active: s,
|
|
723
725
|
disabled: e,
|
|
724
726
|
onClick: () => {
|
|
725
|
-
|
|
727
|
+
K(r), r.dispatchCommand(Ke, "italic");
|
|
726
728
|
}
|
|
727
729
|
});
|
|
728
|
-
},
|
|
729
|
-
let [r] =
|
|
730
|
+
}, Yn = ({ disabled: e, tooltip: t, showDisabledTooltip: n }) => {
|
|
731
|
+
let [r] = B(), { t: i } = a(), { fontSize: o, headingTag: s } = J(), c = j(() => _n.map((e) => ({
|
|
730
732
|
key: e.value,
|
|
731
733
|
label: e.label
|
|
732
734
|
})), []), l = T((e) => {
|
|
733
735
|
let t = e.key;
|
|
734
|
-
|
|
735
|
-
let e =
|
|
736
|
-
|
|
736
|
+
K(r), r.update(() => {
|
|
737
|
+
let e = R();
|
|
738
|
+
z(e) && At(e, { "font-size": t });
|
|
737
739
|
});
|
|
738
740
|
}, [r]);
|
|
739
741
|
return s || e ? /* @__PURE__ */ y(q, {
|
|
@@ -746,7 +748,7 @@ var sn = "default", H = {
|
|
|
746
748
|
onClick: l,
|
|
747
749
|
activeKey: [o],
|
|
748
750
|
showSearch: !1,
|
|
749
|
-
offset:
|
|
751
|
+
offset: W,
|
|
750
752
|
style: {
|
|
751
753
|
width: "60px",
|
|
752
754
|
minWidth: "60px"
|
|
@@ -761,28 +763,28 @@ var sn = "default", H = {
|
|
|
761
763
|
})
|
|
762
764
|
})
|
|
763
765
|
});
|
|
764
|
-
},
|
|
766
|
+
}, Xn = "M896 860.48V960H128v-99.52h768zM578.944 128l251.648 655.936h-115.2l-59.904-164.48H379.904L320 784H204.8L456.384 128h122.56z m-58.944 115.776h-3.712L412.16 531.2h211.072L520 243.84z", Zn = "M766.4 744.32c43.712 0 79.36-36.224 79.36-80.512 0-53.504-79.36-140.8-79.36-140.8s-79.36 87.296-79.36 140.8c0 44.288 35.648 80.512 79.36 80.512z m-377.088-44.16c7.04 7.168 18.56 7.168 25.6 0l256.064-256c7.104-7.04 7.104-18.56 0-25.6l-256-256a16.32 16.32 0 0 0-1.92-1.664L334.72 82.688a9.088 9.088 0 0 0-12.8 0l-48 48a9.088 9.088 0 0 0 0 12.8l67.2 67.2-207.808 207.936c-7.04 7.04-7.04 18.56 0 25.6l255.936 256z m12.864-448.576L581.12 430.528H223.36L402.24 251.52z m501.824 564.416H120a8 8 0 0 0-8 8v80c0 4.416 3.584 8 8 8h784a8 8 0 0 0 8-8v-80a8 8 0 0 0-8-8z", Qn = 860.48, $n = 99.52, er = /rgba\(\s*0\s*,\s*0\s*,\s*0\s*,\s*0(?:\.0+)?\s*\)/, tr = {
|
|
765
767
|
fontColor: {
|
|
766
|
-
path:
|
|
767
|
-
clipHeight:
|
|
768
|
+
path: Xn,
|
|
769
|
+
clipHeight: Qn,
|
|
768
770
|
x: 128,
|
|
769
771
|
width: 768,
|
|
770
772
|
rx: 0
|
|
771
773
|
},
|
|
772
774
|
fill: {
|
|
773
|
-
path:
|
|
775
|
+
path: Zn,
|
|
774
776
|
clipHeight: 816,
|
|
775
777
|
x: 112,
|
|
776
778
|
width: 800,
|
|
777
779
|
rx: 8
|
|
778
780
|
}
|
|
779
|
-
},
|
|
781
|
+
}, nr = (e, t) => {
|
|
780
782
|
let n = t.trim().toLowerCase();
|
|
781
|
-
if (e === "fill") return !n || n === "transparent" ||
|
|
783
|
+
if (e === "fill") return !n || n === "transparent" || er.test(n);
|
|
782
784
|
let r = n.replace(/\s+/g, "");
|
|
783
785
|
return r === "#000" || r === "#000000" || r === "black" || r === "rgb(0,0,0)" || r === "rgba(0,0,0,1)" || r === "rgba(0,0,0,1.0)";
|
|
784
|
-
},
|
|
785
|
-
let r = `${ee().replace(/:/g, "")}clip`, i =
|
|
786
|
+
}, rr = ({ variant: e, barColor: t, size: n }) => {
|
|
787
|
+
let r = `${ee().replace(/:/g, "")}clip`, i = tr[e];
|
|
786
788
|
return /* @__PURE__ */ b("svg", {
|
|
787
789
|
width: n,
|
|
788
790
|
height: n,
|
|
@@ -805,32 +807,32 @@ var sn = "default", H = {
|
|
|
805
807
|
}),
|
|
806
808
|
/* @__PURE__ */ y("rect", {
|
|
807
809
|
x: i.x,
|
|
808
|
-
y:
|
|
810
|
+
y: Qn,
|
|
809
811
|
width: i.width,
|
|
810
|
-
height:
|
|
812
|
+
height: $n,
|
|
811
813
|
rx: i.rx,
|
|
812
|
-
fill:
|
|
814
|
+
fill: nr(e, t) ? "currentColor" : t
|
|
813
815
|
})
|
|
814
816
|
]
|
|
815
817
|
});
|
|
816
|
-
},
|
|
817
|
-
let [r] =
|
|
818
|
-
|
|
819
|
-
let t =
|
|
820
|
-
|
|
818
|
+
}, ir = ({ disabled: e, tooltip: t, showDisabledTooltip: n }) => {
|
|
819
|
+
let [r] = B(), o = J(), { iconSize: s } = Wn(), { t: c } = a(), l = T((e) => {
|
|
820
|
+
K(r), r.update(() => {
|
|
821
|
+
let t = R();
|
|
822
|
+
z(t) && At(t, { color: e });
|
|
821
823
|
});
|
|
822
824
|
}, [r]);
|
|
823
825
|
return /* @__PURE__ */ y(i, {
|
|
824
826
|
value: o.fontColor,
|
|
825
827
|
onChange: l,
|
|
826
828
|
placement: "bottom-start",
|
|
827
|
-
offset:
|
|
829
|
+
offset: W.y,
|
|
828
830
|
presetColors: "basic",
|
|
829
831
|
disabled: e,
|
|
830
832
|
children: /* @__PURE__ */ y("div", {
|
|
831
833
|
className: "trigger-picker inline-flex",
|
|
832
834
|
children: /* @__PURE__ */ y(q, {
|
|
833
|
-
icon: /* @__PURE__ */ y(
|
|
835
|
+
icon: /* @__PURE__ */ y(rr, {
|
|
834
836
|
variant: "fontColor",
|
|
835
837
|
barColor: o.fontColor,
|
|
836
838
|
size: s
|
|
@@ -841,24 +843,24 @@ var sn = "default", H = {
|
|
|
841
843
|
})
|
|
842
844
|
})
|
|
843
845
|
});
|
|
844
|
-
},
|
|
845
|
-
let [r] =
|
|
846
|
-
|
|
847
|
-
let t =
|
|
848
|
-
|
|
846
|
+
}, ar = ({ disabled: e, tooltip: t, showDisabledTooltip: n }) => {
|
|
847
|
+
let [r] = B(), o = J(), { iconSize: s } = Wn(), { t: c } = a(), l = T((e) => {
|
|
848
|
+
K(r), r.update(() => {
|
|
849
|
+
let t = R();
|
|
850
|
+
z(t) && At(t, { "background-color": e });
|
|
849
851
|
});
|
|
850
852
|
}, [r]);
|
|
851
853
|
return /* @__PURE__ */ y(i, {
|
|
852
854
|
value: o.backgroundColor,
|
|
853
855
|
onChange: l,
|
|
854
856
|
placement: "bottom-start",
|
|
855
|
-
offset:
|
|
857
|
+
offset: W.y,
|
|
856
858
|
presetColors: "basic",
|
|
857
859
|
disabled: e,
|
|
858
860
|
children: /* @__PURE__ */ y("div", {
|
|
859
861
|
className: "trigger-picker inline-flex",
|
|
860
862
|
children: /* @__PURE__ */ y(q, {
|
|
861
|
-
icon: /* @__PURE__ */ y(
|
|
863
|
+
icon: /* @__PURE__ */ y(rr, {
|
|
862
864
|
variant: "fill",
|
|
863
865
|
barColor: o.backgroundColor,
|
|
864
866
|
size: s
|
|
@@ -869,17 +871,17 @@ var sn = "default", H = {
|
|
|
869
871
|
})
|
|
870
872
|
})
|
|
871
873
|
});
|
|
872
|
-
},
|
|
874
|
+
}, or = {
|
|
873
875
|
left: "paragraph",
|
|
874
876
|
center: "paragraphmiddle",
|
|
875
877
|
right: "paragraphright"
|
|
876
|
-
},
|
|
877
|
-
let [i] =
|
|
878
|
+
}, sr = ({ disabled: t, tooltip: n, showDisabledTooltip: r }) => {
|
|
879
|
+
let [i] = B(), { align: o } = J(), { iconSize: s } = Wn(), { t: c } = a(), l = j(() => [
|
|
878
880
|
{
|
|
879
881
|
key: "left",
|
|
880
882
|
label: c("leftAlign"),
|
|
881
883
|
icon: /* @__PURE__ */ y(e, {
|
|
882
|
-
name:
|
|
884
|
+
name: or.left,
|
|
883
885
|
size: s
|
|
884
886
|
})
|
|
885
887
|
},
|
|
@@ -887,7 +889,7 @@ var sn = "default", H = {
|
|
|
887
889
|
key: "center",
|
|
888
890
|
label: c("editor.centerAlign"),
|
|
889
891
|
icon: /* @__PURE__ */ y(e, {
|
|
890
|
-
name:
|
|
892
|
+
name: or.center,
|
|
891
893
|
size: s
|
|
892
894
|
})
|
|
893
895
|
},
|
|
@@ -895,23 +897,23 @@ var sn = "default", H = {
|
|
|
895
897
|
key: "right",
|
|
896
898
|
label: c("editor.rightAlign"),
|
|
897
899
|
icon: /* @__PURE__ */ y(e, {
|
|
898
|
-
name:
|
|
900
|
+
name: or.right,
|
|
899
901
|
size: s
|
|
900
902
|
})
|
|
901
903
|
}
|
|
902
904
|
], [s, c]), u = T((e) => {
|
|
903
|
-
|
|
905
|
+
K(i), i.dispatchCommand(Ge, e.key);
|
|
904
906
|
}, [i]), d = /* @__PURE__ */ y("div", {
|
|
905
|
-
className:
|
|
907
|
+
className: G["bsy-lexical__toolbar-select"],
|
|
906
908
|
style: { width: 50 },
|
|
907
909
|
children: /* @__PURE__ */ y(q, {
|
|
908
910
|
icon: /* @__PURE__ */ b(v, { children: [/* @__PURE__ */ y(e, {
|
|
909
|
-
name:
|
|
911
|
+
name: or[On(o)],
|
|
910
912
|
size: s
|
|
911
913
|
}), /* @__PURE__ */ y(e, {
|
|
912
914
|
name: "arrow-down",
|
|
913
915
|
size: s,
|
|
914
|
-
className:
|
|
916
|
+
className: G["bsy-lexical__toolbar-select-arrow"]
|
|
915
917
|
})] }),
|
|
916
918
|
tooltip: n ?? c("editor.alignment"),
|
|
917
919
|
showDisabledTooltip: r,
|
|
@@ -923,44 +925,44 @@ var sn = "default", H = {
|
|
|
923
925
|
onClick: u,
|
|
924
926
|
showSearch: !1,
|
|
925
927
|
activeKey: [o],
|
|
926
|
-
offset:
|
|
928
|
+
offset: W,
|
|
927
929
|
style: {
|
|
928
930
|
width: "110px",
|
|
929
931
|
minWidth: "110px"
|
|
930
932
|
},
|
|
931
933
|
children: d
|
|
932
934
|
});
|
|
933
|
-
},
|
|
934
|
-
let [i] =
|
|
935
|
+
}, cr = (e) => e ? e.startsWith("@") || e.match(/^https?:\/\//) ? e : `http://${e}` : "", lr = ({ disabled: e, tooltip: t, showDisabledTooltip: n }) => {
|
|
936
|
+
let [i] = B(), { link: o } = J(), { t: s } = a(), [c, u] = N(!1), [d, f] = N(""), [p, m] = N(""), [h, g] = N(!0), [_, x] = re.useMessage(), S = M(null), C = T((e) => {
|
|
935
937
|
u(e), e || i.setEditable(!0);
|
|
936
938
|
}, [i]), w = () => {
|
|
937
939
|
if (!d) {
|
|
938
940
|
_.warning(s("editor.linkAddressEmpty"));
|
|
939
941
|
return;
|
|
940
942
|
}
|
|
941
|
-
let e =
|
|
943
|
+
let e = cr(d);
|
|
942
944
|
i.setEditable(!0), i.update(() => {
|
|
943
945
|
let t = h ? {
|
|
944
946
|
target: "_blank",
|
|
945
947
|
rel: "noopener noreferrer",
|
|
946
948
|
title: d
|
|
947
949
|
} : { title: d }, n = S.current;
|
|
948
|
-
n !== null &&
|
|
949
|
-
let r =
|
|
950
|
-
if (
|
|
950
|
+
n !== null && Ne(n);
|
|
951
|
+
let r = R();
|
|
952
|
+
if (z(r)) {
|
|
951
953
|
let n = p || d, i = r.getTextContent();
|
|
952
954
|
if (!r.isCollapsed() && n === i) dt(e, t);
|
|
953
955
|
else {
|
|
954
|
-
let i = r.anchor.getNode(), a =
|
|
956
|
+
let i = r.anchor.getNode(), a = Ae(i) ? i : null, o = r.style || r.getNodes().find(Ae)?.getStyle() || a?.getStyle() || "", s = r.format || a?.getFormat() || 0, c = lt(e, t), l = be(n);
|
|
955
957
|
l.setFormat(s), l.setStyle(o), c.append(l), r.insertNodes([c]);
|
|
956
958
|
}
|
|
957
959
|
} else {
|
|
958
960
|
let n = lt(e, t);
|
|
959
|
-
n.append(
|
|
960
|
-
let r =
|
|
961
|
-
if (
|
|
961
|
+
n.append(be(p || d));
|
|
962
|
+
let r = L(), i = r.getLastChild();
|
|
963
|
+
if (Te(i) && i.isEmpty()) i.append(n);
|
|
962
964
|
else {
|
|
963
|
-
let e =
|
|
965
|
+
let e = ve();
|
|
964
966
|
e.append(n), r.append(e);
|
|
965
967
|
}
|
|
966
968
|
}
|
|
@@ -968,10 +970,10 @@ var sn = "default", H = {
|
|
|
968
970
|
}, E = T(() => {
|
|
969
971
|
let e = "";
|
|
970
972
|
i.getEditorState().read(() => {
|
|
971
|
-
let t =
|
|
972
|
-
S.current = t ? t.clone() : null,
|
|
973
|
+
let t = R();
|
|
974
|
+
S.current = t ? t.clone() : null, z(t) && !t.isCollapsed() && (e = t.getTextContent());
|
|
973
975
|
}), i.setEditable(!1), i.update(() => {
|
|
974
|
-
|
|
976
|
+
Ne(null);
|
|
975
977
|
}), window.getSelection()?.removeAllRanges(), i.getRootElement()?.blur(), o ? (f(o.link ?? ""), m(o.linkText ?? "")) : (f(""), m(e)), u(!0);
|
|
976
978
|
}, [o, i]);
|
|
977
979
|
return /* @__PURE__ */ b(v, { children: [
|
|
@@ -997,7 +999,7 @@ var sn = "default", H = {
|
|
|
997
999
|
className: "w-[80px] shrink-0",
|
|
998
1000
|
children: s("linkAddress")
|
|
999
1001
|
}),
|
|
1000
|
-
/* @__PURE__ */ y(
|
|
1002
|
+
/* @__PURE__ */ y(ne, {
|
|
1001
1003
|
value: d,
|
|
1002
1004
|
onChange: (e) => f(e.target.value),
|
|
1003
1005
|
placeholder: s("editor.linkTip")
|
|
@@ -1015,7 +1017,7 @@ var sn = "default", H = {
|
|
|
1015
1017
|
children: [/* @__PURE__ */ y("label", {
|
|
1016
1018
|
className: "w-[80px] shrink-0",
|
|
1017
1019
|
children: s("showContent")
|
|
1018
|
-
}), /* @__PURE__ */ y(
|
|
1020
|
+
}), /* @__PURE__ */ y(ne, {
|
|
1019
1021
|
value: p,
|
|
1020
1022
|
onChange: (e) => m(e.target.value)
|
|
1021
1023
|
})]
|
|
@@ -1028,10 +1030,10 @@ var sn = "default", H = {
|
|
|
1028
1030
|
children: s("openInNewTab")
|
|
1029
1031
|
}) }), /* @__PURE__ */ b("div", {
|
|
1030
1032
|
className: "flex gap-[15px]",
|
|
1031
|
-
children: [/* @__PURE__ */ y(
|
|
1033
|
+
children: [/* @__PURE__ */ y(P, {
|
|
1032
1034
|
onClick: () => C(!1),
|
|
1033
1035
|
children: s("cancel")
|
|
1034
|
-
}), /* @__PURE__ */ y(
|
|
1036
|
+
}), /* @__PURE__ */ y(P, {
|
|
1035
1037
|
type: "primary",
|
|
1036
1038
|
onClick: w,
|
|
1037
1039
|
children: s("confirm")
|
|
@@ -1040,15 +1042,15 @@ var sn = "default", H = {
|
|
|
1040
1042
|
})] })
|
|
1041
1043
|
})
|
|
1042
1044
|
] });
|
|
1043
|
-
},
|
|
1044
|
-
let [r] =
|
|
1045
|
+
}, ur = ({ disabled: e, tooltip: t, showDisabledTooltip: n }) => {
|
|
1046
|
+
let [r] = B(), { link: i } = J(), { t: o } = a();
|
|
1045
1047
|
return /* @__PURE__ */ y(q, {
|
|
1046
1048
|
icon: "cancellink",
|
|
1047
1049
|
tooltip: t ?? o("cancelLink"),
|
|
1048
1050
|
showDisabledTooltip: n,
|
|
1049
1051
|
disabled: e,
|
|
1050
1052
|
onClick: () => {
|
|
1051
|
-
i && (
|
|
1053
|
+
i && (K(r), r.dispatchCommand(mt, null));
|
|
1052
1054
|
}
|
|
1053
1055
|
});
|
|
1054
1056
|
}, Y = {
|
|
@@ -1077,8 +1079,8 @@ var sn = "default", H = {
|
|
|
1077
1079
|
"picture-modal__preview-delete": "_picture-modal__preview-delete_1067t_143",
|
|
1078
1080
|
"picture-modal__upload-text": "_picture-modal__upload-text_1067t_151",
|
|
1079
1081
|
"picture-modal__footer": "_picture-modal__footer_1067t_155"
|
|
1080
|
-
},
|
|
1081
|
-
let [n] =
|
|
1082
|
+
}, dr = C((e, t) => {
|
|
1083
|
+
let [n] = te.useForm(), [r, i] = N(""), { t: o } = a(), s = (e) => /^https?:\/\/.+/i.test(e);
|
|
1082
1084
|
return k(t, () => ({ getValue: async () => {
|
|
1083
1085
|
try {
|
|
1084
1086
|
return await n.validateFields(), r;
|
|
@@ -1089,15 +1091,15 @@ var sn = "default", H = {
|
|
|
1089
1091
|
className: Y["picture-modal__content-title"],
|
|
1090
1092
|
"data-title": o("editor.imageUrlNote"),
|
|
1091
1093
|
children: o("editor.enterImageUrl")
|
|
1092
|
-
}), /* @__PURE__ */ y(
|
|
1094
|
+
}), /* @__PURE__ */ y(te, {
|
|
1093
1095
|
form: n,
|
|
1094
|
-
children: /* @__PURE__ */ y(
|
|
1096
|
+
children: /* @__PURE__ */ y(te.Item, {
|
|
1095
1097
|
name: "url",
|
|
1096
1098
|
rules: [{
|
|
1097
1099
|
required: !0,
|
|
1098
1100
|
message: o("editor.pleaseEnterImageUrl")
|
|
1099
1101
|
}, { validator: (e, t) => !t || s(t) ? Promise.resolve() : Promise.reject(Error(o("editor.pleaseEnterValidImageUrl"))) }],
|
|
1100
|
-
children: /* @__PURE__ */ y(
|
|
1102
|
+
children: /* @__PURE__ */ y(ne, {
|
|
1101
1103
|
placeholder: o("editor.pleaseEnterImageUrl"),
|
|
1102
1104
|
value: r,
|
|
1103
1105
|
onChange: (e) => i(e.target.value)
|
|
@@ -1105,17 +1107,17 @@ var sn = "default", H = {
|
|
|
1105
1107
|
})
|
|
1106
1108
|
})] });
|
|
1107
1109
|
});
|
|
1108
|
-
|
|
1110
|
+
dr.displayName = "LinkInput";
|
|
1109
1111
|
//#endregion
|
|
1110
1112
|
//#region src/components/Editor/utils/formatTruncatedFilename.ts
|
|
1111
|
-
var
|
|
1113
|
+
var fr = "......", pr = (e, t, n) => {
|
|
1112
1114
|
if (t <= 0 || n(e) <= t) return {
|
|
1113
1115
|
display: e,
|
|
1114
1116
|
truncated: !1
|
|
1115
1117
|
};
|
|
1116
|
-
let r = e.lastIndexOf("."), i = r > 0 && r < e.length - 1, a = i ? e.slice(0, r) : e, o = i ? e.slice(r) : "", s = a.slice(-2), c = a.slice(0, -2), l = (e) => `${e}${
|
|
1118
|
+
let r = e.lastIndexOf("."), i = r > 0 && r < e.length - 1, a = i ? e.slice(0, r) : e, o = i ? e.slice(r) : "", s = a.slice(-2), c = a.slice(0, -2), l = (e) => `${e}${fr}${s}${o}`, u = (e) => n(e) <= t;
|
|
1117
1119
|
if (!u(l(""))) {
|
|
1118
|
-
let t = `${
|
|
1120
|
+
let t = `${fr}${o}`;
|
|
1119
1121
|
return {
|
|
1120
1122
|
display: u(t) ? t : e,
|
|
1121
1123
|
truncated: !0
|
|
@@ -1130,28 +1132,28 @@ var lr = "......", ur = (e, t, n) => {
|
|
|
1130
1132
|
display: l(c.slice(0, p)),
|
|
1131
1133
|
truncated: !0
|
|
1132
1134
|
};
|
|
1133
|
-
},
|
|
1134
|
-
let e = E(
|
|
1135
|
+
}, mr = S(null), hr = S({ text: "" }), gr = S(void 0), _r = () => {
|
|
1136
|
+
let e = E(mr);
|
|
1135
1137
|
if (!e) throw Error("useEditorContainer must be used within EditorContainerProvider");
|
|
1136
1138
|
return e;
|
|
1137
|
-
},
|
|
1138
|
-
function
|
|
1139
|
+
}, vr = () => E(hr), yr = () => E(gr), br = "EditorImageUploadingError";
|
|
1140
|
+
function xr(e) {
|
|
1139
1141
|
if (!e || typeof e != "object" || !("name" in e)) return !1;
|
|
1140
1142
|
let t = String(e.name);
|
|
1141
1143
|
return t === "AbortError" || t === "CanceledError";
|
|
1142
1144
|
}
|
|
1143
|
-
function
|
|
1144
|
-
return
|
|
1145
|
+
function Sr(e) {
|
|
1146
|
+
return xn.includes(e.name.split(".").pop()?.toLowerCase() ?? "");
|
|
1145
1147
|
}
|
|
1146
|
-
function
|
|
1148
|
+
function Cr(e) {
|
|
1147
1149
|
if (Number.isFinite(e)) return Math.min(100, Math.max(0, e));
|
|
1148
1150
|
}
|
|
1149
|
-
function
|
|
1151
|
+
function wr(e) {
|
|
1150
1152
|
return e === void 0 ? .55 : .55 * (1 - e / 100);
|
|
1151
1153
|
}
|
|
1152
1154
|
//#endregion
|
|
1153
1155
|
//#region src/components/Editor/ToolbarPlugin/Buttons/PictureButton/UploadImage.tsx
|
|
1154
|
-
var
|
|
1156
|
+
var Tr = {
|
|
1155
1157
|
duration: .2,
|
|
1156
1158
|
ease: [
|
|
1157
1159
|
.4,
|
|
@@ -1159,14 +1161,14 @@ var Sr = {
|
|
|
1159
1161
|
.2,
|
|
1160
1162
|
1
|
|
1161
1163
|
]
|
|
1162
|
-
},
|
|
1163
|
-
let n =
|
|
1164
|
-
return
|
|
1164
|
+
}, Er = ({ name: e, error: t }) => {
|
|
1165
|
+
let n = M(null), [r, i] = N(e), [a, o] = N(!1);
|
|
1166
|
+
return A(() => {
|
|
1165
1167
|
let t = n.current, r = document.createElement("canvas").getContext("2d");
|
|
1166
1168
|
if (!t || !r) return;
|
|
1167
1169
|
let a = () => {
|
|
1168
1170
|
r.font = getComputedStyle(t).font;
|
|
1169
|
-
let n =
|
|
1171
|
+
let n = pr(e, t.clientWidth, (e) => r.measureText(e).width);
|
|
1170
1172
|
i(n.display), o(n.truncated);
|
|
1171
1173
|
};
|
|
1172
1174
|
a();
|
|
@@ -1174,17 +1176,17 @@ var Sr = {
|
|
|
1174
1176
|
return s.observe(t), () => s.disconnect();
|
|
1175
1177
|
}, [e]), /* @__PURE__ */ y("div", {
|
|
1176
1178
|
ref: n,
|
|
1177
|
-
className:
|
|
1179
|
+
className: F(Y["picture-modal__preview-filename"], t && Y["picture-modal__preview-filename--error"]),
|
|
1178
1180
|
title: a ? e : void 0,
|
|
1179
1181
|
children: r
|
|
1180
1182
|
});
|
|
1181
|
-
},
|
|
1183
|
+
}, Dr = (e) => new Promise((t, n) => {
|
|
1182
1184
|
let r = new FileReader();
|
|
1183
1185
|
r.onload = () => t(r.result), r.onerror = () => n(r.error), r.readAsDataURL(e);
|
|
1184
|
-
}),
|
|
1185
|
-
let { upload: r } =
|
|
1186
|
+
}), Or = C((t, n) => {
|
|
1187
|
+
let { upload: r } = _r(), [i, o] = N(!1), [s, c] = N([]), l = M(s);
|
|
1186
1188
|
l.current = s;
|
|
1187
|
-
let u =
|
|
1189
|
+
let u = M(null), d = M(/* @__PURE__ */ new Map()), f = r?.customRequest, [p, m] = re.useMessage(), { t: h } = a(), g = (e) => (e / 1024).toFixed(1) + "kb", _ = (e, t) => {
|
|
1188
1190
|
c((n) => n.map((n) => n.id === e ? {
|
|
1189
1191
|
...n,
|
|
1190
1192
|
...t
|
|
@@ -1198,7 +1200,7 @@ var Sr = {
|
|
|
1198
1200
|
d.current.set(e, n), f(t, {
|
|
1199
1201
|
signal: n.signal,
|
|
1200
1202
|
onProgress: (t) => {
|
|
1201
|
-
let n =
|
|
1203
|
+
let n = Cr(t);
|
|
1202
1204
|
n !== void 0 && _(e, { percent: n });
|
|
1203
1205
|
}
|
|
1204
1206
|
}).then((t) => {
|
|
@@ -1209,11 +1211,11 @@ var Sr = {
|
|
|
1209
1211
|
attachment: typeof t == "string" ? void 0 : t.attachment
|
|
1210
1212
|
});
|
|
1211
1213
|
}).catch((t) => {
|
|
1212
|
-
n.signal.aborted ||
|
|
1214
|
+
n.signal.aborted || xr(t) || _(e, { status: "error" });
|
|
1213
1215
|
}).finally(() => {
|
|
1214
1216
|
d.current.delete(e);
|
|
1215
1217
|
});
|
|
1216
|
-
}, x = (e) =>
|
|
1218
|
+
}, x = (e) => Sr(e) ? e.size > 5242880 ? (p.warning(h("editor.imageSizeNote")), !1) : !0 : (p.warning(h("editor.onlyImageFormatsSupported")), !1), S = (e) => {
|
|
1217
1219
|
let t = 10 - l.current.length;
|
|
1218
1220
|
if (t <= 0) {
|
|
1219
1221
|
p.warning(h("editor.imageCountNote", { count: 10 }));
|
|
@@ -1245,13 +1247,13 @@ var Sr = {
|
|
|
1245
1247
|
}, []), k(n, () => ({ getValue: async () => {
|
|
1246
1248
|
if (s.some((e) => e.status === "uploading")) {
|
|
1247
1249
|
let e = Error(h("editor.imageUploading"));
|
|
1248
|
-
throw e.name =
|
|
1250
|
+
throw e.name = br, e;
|
|
1249
1251
|
}
|
|
1250
1252
|
let e = s.filter((e) => e.status === "success");
|
|
1251
1253
|
if (!e.length) throw p.warning(h("editor.pleaseUploadImageFirst")), Error(h("editor.pleaseUploadImageFirst"));
|
|
1252
1254
|
try {
|
|
1253
1255
|
return await Promise.all(e.map(async (e) => ({
|
|
1254
|
-
src: e.src ?? await
|
|
1256
|
+
src: e.src ?? await Dr(e.file),
|
|
1255
1257
|
fileName: e.file.name,
|
|
1256
1258
|
attachment: e.attachment
|
|
1257
1259
|
})));
|
|
@@ -1290,11 +1292,11 @@ var Sr = {
|
|
|
1290
1292
|
}),
|
|
1291
1293
|
s.length > 0 ? /* @__PURE__ */ y("div", {
|
|
1292
1294
|
className: Y["picture-modal__preview-list"],
|
|
1293
|
-
children: /* @__PURE__ */ y(
|
|
1295
|
+
children: /* @__PURE__ */ y(ae, {
|
|
1294
1296
|
mode: "popLayout",
|
|
1295
|
-
children: s.map((t) => /* @__PURE__ */ b(
|
|
1297
|
+
children: s.map((t) => /* @__PURE__ */ b(I.div, {
|
|
1296
1298
|
layout: "position",
|
|
1297
|
-
className:
|
|
1299
|
+
className: F(Y["picture-modal__preview"], t.status === "error" && Y["picture-modal__preview--error"]),
|
|
1298
1300
|
initial: {
|
|
1299
1301
|
opacity: 0,
|
|
1300
1302
|
y: 12
|
|
@@ -1307,7 +1309,7 @@ var Sr = {
|
|
|
1307
1309
|
opacity: 0,
|
|
1308
1310
|
y: -8
|
|
1309
1311
|
},
|
|
1310
|
-
transition:
|
|
1312
|
+
transition: Tr,
|
|
1311
1313
|
children: [
|
|
1312
1314
|
/* @__PURE__ */ b("div", {
|
|
1313
1315
|
className: Y["picture-modal__preview-image"],
|
|
@@ -1316,13 +1318,13 @@ var Sr = {
|
|
|
1316
1318
|
alt: h("editor.previewImage")
|
|
1317
1319
|
}), t.status === "uploading" ? /* @__PURE__ */ y("div", {
|
|
1318
1320
|
className: Y["picture-modal__preview-mask"],
|
|
1319
|
-
style: { opacity:
|
|
1321
|
+
style: { opacity: wr(t.percent) },
|
|
1320
1322
|
children: t.percent === void 0 ? /* @__PURE__ */ y("span", { className: Y["picture-modal__preview-spinner"] }) : null
|
|
1321
1323
|
}) : null]
|
|
1322
1324
|
}),
|
|
1323
1325
|
/* @__PURE__ */ b("div", {
|
|
1324
1326
|
className: Y["picture-modal__preview-info"],
|
|
1325
|
-
children: [/* @__PURE__ */ y(
|
|
1327
|
+
children: [/* @__PURE__ */ y(Er, {
|
|
1326
1328
|
name: t.file.name,
|
|
1327
1329
|
error: t.status === "error"
|
|
1328
1330
|
}), /* @__PURE__ */ y("div", {
|
|
@@ -1343,7 +1345,7 @@ var Sr = {
|
|
|
1343
1345
|
/* @__PURE__ */ y("input", {
|
|
1344
1346
|
ref: u,
|
|
1345
1347
|
type: "file",
|
|
1346
|
-
accept:
|
|
1348
|
+
accept: Sn,
|
|
1347
1349
|
multiple: !0,
|
|
1348
1350
|
style: { display: "none" },
|
|
1349
1351
|
onChange: T
|
|
@@ -1352,11 +1354,11 @@ var Sr = {
|
|
|
1352
1354
|
]
|
|
1353
1355
|
});
|
|
1354
1356
|
});
|
|
1355
|
-
|
|
1357
|
+
Or.displayName = "UploadImage";
|
|
1356
1358
|
//#endregion
|
|
1357
1359
|
//#region src/components/Editor/commands/ImageCommands.ts
|
|
1358
|
-
var
|
|
1359
|
-
let { t: o } = a(), [s] =
|
|
1360
|
+
var kr = at("INSERT_INLINE_IMAGE_COMMAND"), Ar = ({ disabled: t, tooltip: n, showDisabledTooltip: i }) => {
|
|
1361
|
+
let { t: o } = a(), [s] = B(), { attachmentsBySrcRef: c } = _r(), [l, d] = N(!1), f = M(null), p = M(null), m = [{
|
|
1360
1362
|
key: "upload",
|
|
1361
1363
|
title: o("editor.uploadImage"),
|
|
1362
1364
|
icon: /* @__PURE__ */ y(e, { name: "picture" })
|
|
@@ -1364,10 +1366,10 @@ var Er = at("INSERT_INLINE_IMAGE_COMMAND"), Dr = ({ disabled: t, tooltip: n, sho
|
|
|
1364
1366
|
key: "url",
|
|
1365
1367
|
title: o("editor.imageUrl"),
|
|
1366
1368
|
icon: /* @__PURE__ */ y(e, { name: "Insertlink" })
|
|
1367
|
-
}], [h, g] =
|
|
1369
|
+
}], [h, g] = N(m[0].key), _ = async () => {
|
|
1368
1370
|
try {
|
|
1369
1371
|
if (h === "upload" && p.current) (await p.current.getValue()).forEach((e) => {
|
|
1370
|
-
e.attachment !== void 0 && c.current.set(e.src, e.attachment), s.dispatchCommand(
|
|
1372
|
+
e.attachment !== void 0 && c.current.set(e.src, e.attachment), s.dispatchCommand(kr, {
|
|
1371
1373
|
src: e.src,
|
|
1372
1374
|
altText: e.fileName,
|
|
1373
1375
|
dataId: e.attachment?._id
|
|
@@ -1375,7 +1377,7 @@ var Er = at("INSERT_INLINE_IMAGE_COMMAND"), Dr = ({ disabled: t, tooltip: n, sho
|
|
|
1375
1377
|
});
|
|
1376
1378
|
else if (f.current) {
|
|
1377
1379
|
let e = await f.current.getValue();
|
|
1378
|
-
s.dispatchCommand(
|
|
1380
|
+
s.dispatchCommand(kr, {
|
|
1379
1381
|
src: e,
|
|
1380
1382
|
dataSrc: e
|
|
1381
1383
|
});
|
|
@@ -1384,14 +1386,14 @@ var Er = at("INSERT_INLINE_IMAGE_COMMAND"), Dr = ({ disabled: t, tooltip: n, sho
|
|
|
1384
1386
|
} catch (e) {
|
|
1385
1387
|
let t = e instanceof Error ? e.message : o("editor.operationFailed");
|
|
1386
1388
|
if (e instanceof Error && e.name === "EditorImageUploadingError") {
|
|
1387
|
-
|
|
1389
|
+
re.warning(t);
|
|
1388
1390
|
return;
|
|
1389
1391
|
}
|
|
1390
|
-
|
|
1392
|
+
re.error(t);
|
|
1391
1393
|
}
|
|
1392
1394
|
}, x = {
|
|
1393
|
-
upload: /* @__PURE__ */ y(
|
|
1394
|
-
url: /* @__PURE__ */ y(
|
|
1395
|
+
upload: /* @__PURE__ */ y(Or, { ref: p }),
|
|
1396
|
+
url: /* @__PURE__ */ y(dr, { ref: f })
|
|
1395
1397
|
};
|
|
1396
1398
|
return /* @__PURE__ */ b(v, { children: [/* @__PURE__ */ y(q, {
|
|
1397
1399
|
icon: "picture",
|
|
@@ -1426,18 +1428,18 @@ var Er = at("INSERT_INLINE_IMAGE_COMMAND"), Dr = ({ disabled: t, tooltip: n, sho
|
|
|
1426
1428
|
})]
|
|
1427
1429
|
}), /* @__PURE__ */ b("div", {
|
|
1428
1430
|
className: Y["picture-modal__footer"],
|
|
1429
|
-
children: [/* @__PURE__ */ y(
|
|
1431
|
+
children: [/* @__PURE__ */ y(P, {
|
|
1430
1432
|
onClick: () => d(!1),
|
|
1431
1433
|
children: o("cancel")
|
|
1432
|
-
}), /* @__PURE__ */ y(
|
|
1434
|
+
}), /* @__PURE__ */ y(P, {
|
|
1433
1435
|
type: "primary",
|
|
1434
1436
|
onClick: _,
|
|
1435
1437
|
children: o("confirm")
|
|
1436
1438
|
})]
|
|
1437
1439
|
})]
|
|
1438
1440
|
})] });
|
|
1439
|
-
},
|
|
1440
|
-
let [r] =
|
|
1441
|
+
}, jr = ({ disabled: e, tooltip: t, showDisabledTooltip: n }) => {
|
|
1442
|
+
let [r] = B(), { canUndo: i } = Bn(), { t: o } = a();
|
|
1441
1443
|
return /* @__PURE__ */ y(q, {
|
|
1442
1444
|
icon: "chexiao",
|
|
1443
1445
|
tooltip: t ?? o("editor.undo"),
|
|
@@ -1447,8 +1449,8 @@ var Er = at("INSERT_INLINE_IMAGE_COMMAND"), Dr = ({ disabled: t, tooltip: n, sho
|
|
|
1447
1449
|
r.dispatchCommand(it, void 0);
|
|
1448
1450
|
}
|
|
1449
1451
|
});
|
|
1450
|
-
},
|
|
1451
|
-
let [r] =
|
|
1452
|
+
}, Mr = ({ disabled: e, tooltip: t, showDisabledTooltip: n }) => {
|
|
1453
|
+
let [r] = B(), { canRedo: i } = Bn(), { t: o } = a();
|
|
1452
1454
|
return /* @__PURE__ */ y(q, {
|
|
1453
1455
|
icon: "fanhui",
|
|
1454
1456
|
tooltip: t ?? o("editor.redo"),
|
|
@@ -1456,8 +1458,8 @@ var Er = at("INSERT_INLINE_IMAGE_COMMAND"), Dr = ({ disabled: t, tooltip: n, sho
|
|
|
1456
1458
|
disabled: e || !i,
|
|
1457
1459
|
onClick: () => r.dispatchCommand(tt, void 0)
|
|
1458
1460
|
});
|
|
1459
|
-
},
|
|
1460
|
-
let [r] =
|
|
1461
|
+
}, Nr = ({ disabled: e, tooltip: t, showDisabledTooltip: n }) => {
|
|
1462
|
+
let [r] = B(), { strikethrough: i } = J(), { t: o } = a();
|
|
1461
1463
|
return /* @__PURE__ */ y(q, {
|
|
1462
1464
|
icon: "shanchuxian",
|
|
1463
1465
|
tooltip: t ?? o("editor.strikethrough"),
|
|
@@ -1465,11 +1467,11 @@ var Er = at("INSERT_INLINE_IMAGE_COMMAND"), Dr = ({ disabled: t, tooltip: n, sho
|
|
|
1465
1467
|
active: i,
|
|
1466
1468
|
disabled: e,
|
|
1467
1469
|
onClick: () => {
|
|
1468
|
-
|
|
1470
|
+
K(r), r.dispatchCommand(Ke, "strikethrough");
|
|
1469
1471
|
}
|
|
1470
1472
|
});
|
|
1471
|
-
},
|
|
1472
|
-
let [r] =
|
|
1473
|
+
}, Pr = ({ disabled: e, tooltip: t, showDisabledTooltip: n }) => {
|
|
1474
|
+
let [r] = B(), { superscript: i } = J(), { t: o } = a();
|
|
1473
1475
|
return /* @__PURE__ */ y(q, {
|
|
1474
1476
|
icon: "shangbiao",
|
|
1475
1477
|
tooltip: t ?? o("editor.superscript"),
|
|
@@ -1477,11 +1479,11 @@ var Er = at("INSERT_INLINE_IMAGE_COMMAND"), Dr = ({ disabled: t, tooltip: n, sho
|
|
|
1477
1479
|
active: i,
|
|
1478
1480
|
disabled: e,
|
|
1479
1481
|
onClick: () => {
|
|
1480
|
-
|
|
1482
|
+
K(r), r.dispatchCommand(Ke, "superscript");
|
|
1481
1483
|
}
|
|
1482
1484
|
});
|
|
1483
|
-
},
|
|
1484
|
-
let [r] =
|
|
1485
|
+
}, Fr = ({ disabled: e, tooltip: t, showDisabledTooltip: n }) => {
|
|
1486
|
+
let [r] = B(), { subscript: i } = J(), { t: o } = a();
|
|
1485
1487
|
return /* @__PURE__ */ y(q, {
|
|
1486
1488
|
icon: "xiabiao",
|
|
1487
1489
|
tooltip: t ?? o("editor.subscript"),
|
|
@@ -1489,36 +1491,36 @@ var Er = at("INSERT_INLINE_IMAGE_COMMAND"), Dr = ({ disabled: t, tooltip: n, sho
|
|
|
1489
1491
|
active: i,
|
|
1490
1492
|
disabled: e,
|
|
1491
1493
|
onClick: () => {
|
|
1492
|
-
|
|
1494
|
+
K(r), r.dispatchCommand(Ke, "subscript");
|
|
1493
1495
|
}
|
|
1494
1496
|
});
|
|
1495
|
-
},
|
|
1496
|
-
let [r] =
|
|
1497
|
+
}, Ir = ({ disabled: e, tooltip: t, showDisabledTooltip: n }) => {
|
|
1498
|
+
let [r] = B(), { canIndent: i } = J(), o = In(), { t: s } = a();
|
|
1497
1499
|
return /* @__PURE__ */ y(q, {
|
|
1498
1500
|
icon: "zengjiasuojin",
|
|
1499
|
-
tooltip: t ??
|
|
1501
|
+
tooltip: t ?? s("editor.indent"),
|
|
1500
1502
|
showDisabledTooltip: n,
|
|
1501
|
-
disabled: e,
|
|
1503
|
+
disabled: e || o && !i,
|
|
1502
1504
|
onClick: () => {
|
|
1503
|
-
|
|
1505
|
+
K(r), r.dispatchCommand(Je, void 0);
|
|
1504
1506
|
}
|
|
1505
1507
|
});
|
|
1506
|
-
},
|
|
1507
|
-
let [r] =
|
|
1508
|
+
}, Lr = ({ disabled: e, tooltip: t, showDisabledTooltip: n }) => {
|
|
1509
|
+
let [r] = B(), { canOutdent: i } = J(), o = In(), { t: s } = a();
|
|
1508
1510
|
return /* @__PURE__ */ b("div", {
|
|
1509
|
-
className:
|
|
1510
|
-
children: [/* @__PURE__ */ y("div", { className:
|
|
1511
|
+
className: G["bsy-lexical__toolbar-with-divider"],
|
|
1512
|
+
children: [/* @__PURE__ */ y("div", { className: G["bsy-lexical__toolbar-divider"] }), /* @__PURE__ */ y(q, {
|
|
1511
1513
|
icon: "jianshaosuojin",
|
|
1512
1514
|
tooltip: t ?? s("editor.outdent"),
|
|
1513
1515
|
showDisabledTooltip: n,
|
|
1514
1516
|
disabled: e || o && !i,
|
|
1515
1517
|
onClick: () => {
|
|
1516
|
-
|
|
1518
|
+
K(r), r.dispatchCommand(Ze, void 0);
|
|
1517
1519
|
}
|
|
1518
1520
|
})]
|
|
1519
1521
|
});
|
|
1520
|
-
},
|
|
1521
|
-
let [r] =
|
|
1522
|
+
}, Rr = ({ disabled: e, tooltip: t, showDisabledTooltip: n }) => {
|
|
1523
|
+
let [r] = B(), { listType: i } = J(), { t: o } = a(), s = i === "bullet";
|
|
1522
1524
|
return /* @__PURE__ */ y(q, {
|
|
1523
1525
|
icon: "xuhaoliebiao",
|
|
1524
1526
|
tooltip: t ?? o("editor.bulletList"),
|
|
@@ -1526,12 +1528,12 @@ var Er = at("INSERT_INLINE_IMAGE_COMMAND"), Dr = ({ disabled: t, tooltip: n, sho
|
|
|
1526
1528
|
active: s,
|
|
1527
1529
|
disabled: e,
|
|
1528
1530
|
onClick: () => {
|
|
1529
|
-
let e =
|
|
1531
|
+
let e = Fn(r);
|
|
1530
1532
|
r.dispatchCommand(e.listType === "bullet" ? xt : vt, void 0);
|
|
1531
1533
|
}
|
|
1532
1534
|
});
|
|
1533
|
-
},
|
|
1534
|
-
let [r] =
|
|
1535
|
+
}, zr = ({ disabled: e, tooltip: t, showDisabledTooltip: n }) => {
|
|
1536
|
+
let [r] = B(), { listType: i } = J(), { t: o } = a(), s = i === "number";
|
|
1535
1537
|
return /* @__PURE__ */ y(q, {
|
|
1536
1538
|
icon: "bianhaoliebiao",
|
|
1537
1539
|
tooltip: t ?? o("editor.numberList"),
|
|
@@ -1539,12 +1541,12 @@ var Er = at("INSERT_INLINE_IMAGE_COMMAND"), Dr = ({ disabled: t, tooltip: n, sho
|
|
|
1539
1541
|
active: s,
|
|
1540
1542
|
disabled: e,
|
|
1541
1543
|
onClick: () => {
|
|
1542
|
-
let e =
|
|
1544
|
+
let e = Fn(r);
|
|
1543
1545
|
r.dispatchCommand(e.listType === "number" ? xt : _t, void 0);
|
|
1544
1546
|
}
|
|
1545
1547
|
});
|
|
1546
|
-
},
|
|
1547
|
-
let [r] =
|
|
1548
|
+
}, Br = ({ disabled: e, tooltip: t, showDisabledTooltip: n }) => {
|
|
1549
|
+
let [r] = B(), { isCodeBlock: i } = J(), { t: o } = a();
|
|
1548
1550
|
return /* @__PURE__ */ y(q, {
|
|
1549
1551
|
icon: "daima",
|
|
1550
1552
|
tooltip: t ?? o("editor.codeBlock"),
|
|
@@ -1552,19 +1554,19 @@ var Er = at("INSERT_INLINE_IMAGE_COMMAND"), Dr = ({ disabled: t, tooltip: n, sho
|
|
|
1552
1554
|
active: i,
|
|
1553
1555
|
disabled: e,
|
|
1554
1556
|
onClick: () => {
|
|
1555
|
-
|
|
1556
|
-
jt(
|
|
1557
|
+
Pn(r, (e) => {
|
|
1558
|
+
jt(R(), () => e.isCodeBlock ? ve() : Ct(Cn));
|
|
1557
1559
|
});
|
|
1558
1560
|
}
|
|
1559
1561
|
});
|
|
1560
|
-
},
|
|
1562
|
+
}, Vr = {
|
|
1561
1563
|
"bsy-lexical__table-picker": "_bsy-lexical__table-picker_mv0nn_1",
|
|
1562
1564
|
"bsy-lexical__table-picker-grid": "_bsy-lexical__table-picker-grid_mv0nn_9",
|
|
1563
1565
|
"bsy-lexical__table-picker-cell": "_bsy-lexical__table-picker-cell_mv0nn_15",
|
|
1564
1566
|
"bsy-lexical__table-picker-cell--active": "_bsy-lexical__table-picker-cell--active_mv0nn_24",
|
|
1565
1567
|
"bsy-lexical__table-picker-label": "_bsy-lexical__table-picker-label_mv0nn_28"
|
|
1566
|
-
},
|
|
1567
|
-
let [s] =
|
|
1568
|
+
}, Hr = _(1, 11), Ur = ({ disabled: e, tooltip: r, showDisabledTooltip: i }) => {
|
|
1569
|
+
let [s] = B(), { isInTable: c } = J(), { t: l } = a(), u = t(), [f, p] = N(!1), [m, h] = N({
|
|
1568
1570
|
rows: 0,
|
|
1569
1571
|
cols: 0
|
|
1570
1572
|
});
|
|
@@ -1582,7 +1584,7 @@ var Er = at("INSERT_INLINE_IMAGE_COMMAND"), Dr = ({ disabled: t, tooltip: n, sho
|
|
|
1582
1584
|
showMask: !1,
|
|
1583
1585
|
zIndex: u,
|
|
1584
1586
|
popupMinWidth: "220px",
|
|
1585
|
-
offset:
|
|
1587
|
+
offset: W
|
|
1586
1588
|
});
|
|
1587
1589
|
return c ? /* @__PURE__ */ y(q, {
|
|
1588
1590
|
icon: "charubiaoge",
|
|
@@ -1599,9 +1601,9 @@ var Er = at("INSERT_INLINE_IMAGE_COMMAND"), Dr = ({ disabled: t, tooltip: n, sho
|
|
|
1599
1601
|
showDisabledTooltip: i,
|
|
1600
1602
|
disabled: e
|
|
1601
1603
|
})
|
|
1602
|
-
}), /* @__PURE__ */ y(
|
|
1604
|
+
}), /* @__PURE__ */ y(se, { children: /* @__PURE__ */ y(n, {
|
|
1603
1605
|
zIndex: u,
|
|
1604
|
-
children: /* @__PURE__ */ y(
|
|
1606
|
+
children: /* @__PURE__ */ y(ae, { children: f ? /* @__PURE__ */ y(I.div, {
|
|
1605
1607
|
ref: _.setFloating,
|
|
1606
1608
|
...C(),
|
|
1607
1609
|
style: {
|
|
@@ -1610,17 +1612,17 @@ var Er = at("INSERT_INLINE_IMAGE_COMMAND"), Dr = ({ disabled: t, tooltip: n, sho
|
|
|
1610
1612
|
},
|
|
1611
1613
|
...o,
|
|
1612
1614
|
children: /* @__PURE__ */ b("div", {
|
|
1613
|
-
className:
|
|
1615
|
+
className: Vr["bsy-lexical__table-picker"],
|
|
1614
1616
|
onMouseDown: (e) => e.preventDefault(),
|
|
1615
1617
|
onMouseLeave: () => h({
|
|
1616
1618
|
rows: 0,
|
|
1617
1619
|
cols: 0
|
|
1618
1620
|
}),
|
|
1619
1621
|
children: [/* @__PURE__ */ y("div", {
|
|
1620
|
-
className:
|
|
1621
|
-
children:
|
|
1622
|
+
className: Vr["bsy-lexical__table-picker-grid"],
|
|
1623
|
+
children: Hr.map((e) => Hr.map((t) => /* @__PURE__ */ y("button", {
|
|
1622
1624
|
type: "button",
|
|
1623
|
-
className:
|
|
1625
|
+
className: F(Vr["bsy-lexical__table-picker-cell"], m.rows >= e && m.cols >= t && Vr["bsy-lexical__table-picker-cell--active"]),
|
|
1624
1626
|
onMouseEnter: () => h({
|
|
1625
1627
|
rows: e,
|
|
1626
1628
|
cols: t
|
|
@@ -1634,7 +1636,7 @@ var Er = at("INSERT_INLINE_IMAGE_COMMAND"), Dr = ({ disabled: t, tooltip: n, sho
|
|
|
1634
1636
|
}
|
|
1635
1637
|
}, `${e}-${t}`)))
|
|
1636
1638
|
}), /* @__PURE__ */ b("div", {
|
|
1637
|
-
className:
|
|
1639
|
+
className: Vr["bsy-lexical__table-picker-label"],
|
|
1638
1640
|
children: [
|
|
1639
1641
|
m.rows,
|
|
1640
1642
|
" × ",
|
|
@@ -1644,12 +1646,12 @@ var Er = at("INSERT_INLINE_IMAGE_COMMAND"), Dr = ({ disabled: t, tooltip: n, sho
|
|
|
1644
1646
|
})
|
|
1645
1647
|
}, "bsy-lexical-table-picker") : null })
|
|
1646
1648
|
}) })] });
|
|
1647
|
-
},
|
|
1648
|
-
let e = E(
|
|
1649
|
+
}, Wr = S(null), Gr = () => {
|
|
1650
|
+
let e = E(Wr);
|
|
1649
1651
|
if (!e) throw Error("useSourceMode must be used within SourceModeProvider");
|
|
1650
1652
|
return e;
|
|
1651
|
-
},
|
|
1652
|
-
let { t: r } = a(), { isSourceMode: i, toggleSourceMode: o } =
|
|
1653
|
+
}, Kr = ({ disabled: e, tooltip: t, showDisabledTooltip: n }) => {
|
|
1654
|
+
let { t: r } = a(), { isSourceMode: i, toggleSourceMode: o } = Gr();
|
|
1653
1655
|
return /* @__PURE__ */ y(q, {
|
|
1654
1656
|
icon: "yuanmamoshi",
|
|
1655
1657
|
tooltip: t ?? r("editor.sourceMode"),
|
|
@@ -1658,8 +1660,8 @@ var Er = at("INSERT_INLINE_IMAGE_COMMAND"), Dr = ({ disabled: t, tooltip: n, sho
|
|
|
1658
1660
|
disabled: e,
|
|
1659
1661
|
onClick: o
|
|
1660
1662
|
});
|
|
1661
|
-
},
|
|
1662
|
-
let [i] =
|
|
1663
|
+
}, qr = ({ disabled: t, tooltip: n, showDisabledTooltip: r }) => {
|
|
1664
|
+
let [i] = B(), { headingTag: o, isInTable: s } = J(), { t: c } = a(), { iconSize: l } = Wn(), u = o || "paragraph", d = [
|
|
1663
1665
|
{
|
|
1664
1666
|
key: "paragraph",
|
|
1665
1667
|
label: c("editor.paragraph")
|
|
@@ -1678,20 +1680,20 @@ var Er = at("INSERT_INLINE_IMAGE_COMMAND"), Dr = ({ disabled: t, tooltip: n, sho
|
|
|
1678
1680
|
}
|
|
1679
1681
|
], p = d.find((e) => e.key === u)?.label, m = T((e) => {
|
|
1680
1682
|
let t = e.key;
|
|
1681
|
-
|
|
1682
|
-
jt(
|
|
1683
|
+
K(i), i.update(() => {
|
|
1684
|
+
jt(R(), () => t === "paragraph" ? ve() : Kt(t));
|
|
1683
1685
|
});
|
|
1684
1686
|
}, [i]), h = /* @__PURE__ */ y("div", {
|
|
1685
|
-
className:
|
|
1687
|
+
className: G["bsy-lexical__toolbar-select"],
|
|
1686
1688
|
style: { width: 62 },
|
|
1687
1689
|
children: /* @__PURE__ */ y(q, {
|
|
1688
1690
|
icon: /* @__PURE__ */ b(v, { children: [/* @__PURE__ */ y("span", {
|
|
1689
|
-
className:
|
|
1691
|
+
className: G["bsy-lexical__toolbar-select-label"],
|
|
1690
1692
|
children: p
|
|
1691
1693
|
}), /* @__PURE__ */ y(e, {
|
|
1692
1694
|
name: "arrow-down",
|
|
1693
1695
|
size: l,
|
|
1694
|
-
className:
|
|
1696
|
+
className: G["bsy-lexical__toolbar-select-arrow"]
|
|
1695
1697
|
})] }),
|
|
1696
1698
|
tooltip: n,
|
|
1697
1699
|
showDisabledTooltip: r,
|
|
@@ -1703,7 +1705,7 @@ var Er = at("INSERT_INLINE_IMAGE_COMMAND"), Dr = ({ disabled: t, tooltip: n, sho
|
|
|
1703
1705
|
onClick: m,
|
|
1704
1706
|
showSearch: !1,
|
|
1705
1707
|
activeKey: [u],
|
|
1706
|
-
offset:
|
|
1708
|
+
offset: W,
|
|
1707
1709
|
style: {
|
|
1708
1710
|
width: "62px",
|
|
1709
1711
|
minWidth: "62px"
|
|
@@ -1713,48 +1715,48 @@ var Er = at("INSERT_INLINE_IMAGE_COMMAND"), Dr = ({ disabled: t, tooltip: n, sho
|
|
|
1713
1715
|
};
|
|
1714
1716
|
//#endregion
|
|
1715
1717
|
//#region src/components/Editor/utils/clearInlineTextFormat.ts
|
|
1716
|
-
function
|
|
1717
|
-
let e =
|
|
1718
|
-
if (
|
|
1718
|
+
function Jr() {
|
|
1719
|
+
let e = R();
|
|
1720
|
+
if (z(e)) {
|
|
1719
1721
|
At(e, {
|
|
1720
1722
|
"font-size": null,
|
|
1721
1723
|
color: null,
|
|
1722
1724
|
"background-color": null
|
|
1723
1725
|
});
|
|
1724
|
-
for (let t of e.getNodes())
|
|
1725
|
-
e.setFormat(0);
|
|
1726
|
+
for (let t of e.getNodes()) Ae(t) && t.setFormat(0);
|
|
1727
|
+
e.setFormat(0), e.setStyle("");
|
|
1726
1728
|
}
|
|
1727
1729
|
}
|
|
1728
1730
|
//#endregion
|
|
1729
1731
|
//#region src/components/Editor/ToolbarPlugin/Buttons/ClearFormatButton.tsx
|
|
1730
|
-
var
|
|
1731
|
-
let [r] =
|
|
1732
|
+
var Yr = ({ disabled: e, tooltip: t, showDisabledTooltip: n }) => {
|
|
1733
|
+
let [r] = B(), { t: i } = a();
|
|
1732
1734
|
return /* @__PURE__ */ y(q, {
|
|
1733
1735
|
icon: "clearTree",
|
|
1734
1736
|
tooltip: t ?? i("editor.clearFormat"),
|
|
1735
1737
|
showDisabledTooltip: n,
|
|
1736
1738
|
disabled: e,
|
|
1737
1739
|
onClick: () => {
|
|
1738
|
-
|
|
1739
|
-
|
|
1740
|
+
K(r), r.update(() => {
|
|
1741
|
+
Jr();
|
|
1740
1742
|
});
|
|
1741
1743
|
}
|
|
1742
1744
|
});
|
|
1743
|
-
},
|
|
1745
|
+
}, Xr = [
|
|
1744
1746
|
"quick",
|
|
1745
1747
|
"formal",
|
|
1746
1748
|
"colloquial",
|
|
1747
1749
|
"lively",
|
|
1748
1750
|
"literary",
|
|
1749
1751
|
"retro"
|
|
1750
|
-
],
|
|
1752
|
+
], Zr = {
|
|
1751
1753
|
quick: "editor.aiPresetQuick",
|
|
1752
1754
|
formal: "editor.aiPresetFormal",
|
|
1753
1755
|
colloquial: "editor.aiPresetColloquial",
|
|
1754
1756
|
lively: "editor.aiPresetLively",
|
|
1755
1757
|
literary: "editor.aiPresetLiterary",
|
|
1756
1758
|
retro: "editor.aiPresetRetro"
|
|
1757
|
-
},
|
|
1759
|
+
}, Qr = {
|
|
1758
1760
|
typeset: [
|
|
1759
1761
|
"你是一名专业的 HTML 文档排版引擎。输入已是 HTML 片段。",
|
|
1760
1762
|
"任务:在不改内容层(措辞、语序、修辞、情感色彩)的前提下,做形式层 + 视觉层优化,充分利用富文本能力(标题、列表、加粗、字色、背景色、缩进、对齐)。",
|
|
@@ -1818,7 +1820,7 @@ var Kr = ({ disabled: e, tooltip: t, showDisabledTooltip: n }) => {
|
|
|
1818
1820
|
literary: "语气:更书面、文学感(适配小说、散文、高级文案)。\n规则:若主语言为中文,允许四字格;若为英文,允许复杂从句和排比;不改变原风格基调。",
|
|
1819
1821
|
retro: "语气:带一点复古书面色彩,仍保持现代可读。\n规则:仅当主语言为中文时生效:仿民国白话风(之/其/乃);其他语言自动降级为 literary。"
|
|
1820
1822
|
}
|
|
1821
|
-
},
|
|
1823
|
+
}, $r = Qr.typeset.join("\n"), ei = Qr.polishSystem.join("\n"), ti = (e) => `${ei}\n\n【本轮风格】\n${Qr.polish[e] ?? Qr.polish.quick}`, ni = (e) => {
|
|
1822
1824
|
if (!e.trim()) return {
|
|
1823
1825
|
html: e,
|
|
1824
1826
|
blocks: []
|
|
@@ -1833,16 +1835,16 @@ var Kr = ({ disabled: e, tooltip: t, showDisabledTooltip: n }) => {
|
|
|
1833
1835
|
html: t.body.innerHTML,
|
|
1834
1836
|
blocks: n
|
|
1835
1837
|
};
|
|
1836
|
-
},
|
|
1838
|
+
}, ri = "<!--bsy-block-->", ii = /<!--bsy-code-(\d+)-->/g, ai = "bsy-html-root", oi = (e) => new DOMParser().parseFromString(`<${ai}>${e}</${ai}>`, "text/html").body.querySelector(ai), si = (e, t) => {
|
|
1837
1839
|
if (!t.length) return e;
|
|
1838
|
-
let n = /* @__PURE__ */ new Set(), r = e.replace(
|
|
1840
|
+
let n = /* @__PURE__ */ new Set(), r = e.replace(ii, (e, r) => {
|
|
1839
1841
|
let i = Number(r), a = t[i];
|
|
1840
1842
|
return a === void 0 ? "" : (n.add(i), a);
|
|
1841
1843
|
}), i = t.filter((e, t) => !n.has(t)).join("");
|
|
1842
1844
|
return i ? `${r}${i}` : r;
|
|
1843
|
-
},
|
|
1845
|
+
}, ci = (e) => {
|
|
1844
1846
|
if (!/<pre[\s>/]/i.test(e)) return e;
|
|
1845
|
-
let t =
|
|
1847
|
+
let t = oi(e);
|
|
1846
1848
|
if (!t) return e;
|
|
1847
1849
|
let n = t.ownerDocument;
|
|
1848
1850
|
for (let e of Array.from(t.querySelectorAll("pre"))) {
|
|
@@ -1850,25 +1852,35 @@ var Kr = ({ disabled: e, tooltip: t, showDisabledTooltip: n }) => {
|
|
|
1850
1852
|
e.replaceWith(t);
|
|
1851
1853
|
}
|
|
1852
1854
|
return t.innerHTML.replace(/<!--bsy-code-dropped-->/g, "");
|
|
1853
|
-
},
|
|
1854
|
-
if (!e.trim() || !
|
|
1855
|
-
let t =
|
|
1855
|
+
}, li = (e, t) => si(ci(e), t), ui = "p, h1, h2, h3, li", di = /background(-color)?\s*:/i, fi = (e) => {
|
|
1856
|
+
if (!e.trim() || !di.test(e)) return e;
|
|
1857
|
+
let t = oi(e);
|
|
1856
1858
|
if (!t) return e;
|
|
1857
|
-
for (let e of Array.from(t.querySelectorAll(
|
|
1859
|
+
for (let e of Array.from(t.querySelectorAll(ui))) {
|
|
1858
1860
|
let t = e;
|
|
1859
1861
|
t.style.removeProperty("background-color"), t.style.removeProperty("background"), t.getAttribute("style")?.trim() || t.removeAttribute("style");
|
|
1860
1862
|
}
|
|
1861
1863
|
return t.innerHTML;
|
|
1862
|
-
},
|
|
1864
|
+
}, pi = "--listitem-marker-font-size", mi = `max(24px, calc(var(${pi}, 1em) * 1.25))`, hi = new Set([
|
|
1863
1865
|
"U",
|
|
1864
1866
|
"I",
|
|
1865
1867
|
"EM",
|
|
1866
1868
|
"B",
|
|
1867
1869
|
"STRONG"
|
|
1868
|
-
]),
|
|
1870
|
+
]), gi = (e) => e.startsWith("--listitem-marker-"), _i = [
|
|
1871
|
+
["fontSize", pi],
|
|
1872
|
+
["color", "--listitem-marker-color"],
|
|
1873
|
+
["backgroundColor", "--listitem-marker-background-color"],
|
|
1874
|
+
["fontFamily", "--listitem-marker-font-family"]
|
|
1875
|
+
], vi = (e) => {
|
|
1869
1876
|
let t = e.style.fontSize;
|
|
1870
|
-
if (t)
|
|
1871
|
-
|
|
1877
|
+
if (_i.some(([t]) => e.style[t])) {
|
|
1878
|
+
for (let n = e.parentElement; n; n = n.parentElement) if (t && hi.has(n.tagName) && !n.style.fontSize && (n.style.fontSize = t), !(n.tagName !== "LI" || n.classList.contains("editor-nested-listitem"))) for (let [t, r] of _i) {
|
|
1879
|
+
let i = e.style[t];
|
|
1880
|
+
i && !n.style.getPropertyValue(r) && n.style.setProperty(r, i);
|
|
1881
|
+
}
|
|
1882
|
+
}
|
|
1883
|
+
}, yi = (e, t, n, r) => {
|
|
1872
1884
|
if (!e) return;
|
|
1873
1885
|
let i = e.shadowRoot ?? e.attachShadow({ mode: "open" }), a = document.createElement("div");
|
|
1874
1886
|
a.className = "bsy-editor-html-preview__body", a.innerHTML = n(t);
|
|
@@ -1882,26 +1894,26 @@ var Kr = ({ disabled: e, tooltip: t, showDisabledTooltip: n }) => {
|
|
|
1882
1894
|
};
|
|
1883
1895
|
//#endregion
|
|
1884
1896
|
//#region src/components/Editor/utils/htmlText.ts
|
|
1885
|
-
function
|
|
1897
|
+
function bi(e) {
|
|
1886
1898
|
return /<[^>]*$/.test(e.trim());
|
|
1887
1899
|
}
|
|
1888
|
-
function
|
|
1900
|
+
function xi(e) {
|
|
1889
1901
|
return e ? new DOMParser().parseFromString(e, "text/html").body.textContent ?? "" : "";
|
|
1890
1902
|
}
|
|
1891
1903
|
//#endregion
|
|
1892
1904
|
//#region src/components/Editor/utils/fillRootFromHtml.ts
|
|
1893
|
-
var
|
|
1905
|
+
var Si = [
|
|
1894
1906
|
"color",
|
|
1895
1907
|
"background-color",
|
|
1896
1908
|
"font-size",
|
|
1897
1909
|
"font-family",
|
|
1898
1910
|
"font-weight",
|
|
1899
1911
|
"text-decoration"
|
|
1900
|
-
],
|
|
1912
|
+
], Ci = (e) => {
|
|
1901
1913
|
let t = e.body.querySelectorAll("p, h1, h2, h3, h4, h5, h6, li, td, th");
|
|
1902
1914
|
for (let n of Array.from(t)) {
|
|
1903
1915
|
let t = n, r = [];
|
|
1904
|
-
for (let e of
|
|
1916
|
+
for (let e of Si) {
|
|
1905
1917
|
let n = t.style.getPropertyValue(e);
|
|
1906
1918
|
n && (r.push(`${e}: ${n}`), t.style.removeProperty(e));
|
|
1907
1919
|
}
|
|
@@ -1919,28 +1931,28 @@ var vi = [
|
|
|
1919
1931
|
}
|
|
1920
1932
|
}
|
|
1921
1933
|
}
|
|
1922
|
-
},
|
|
1923
|
-
let n =
|
|
1934
|
+
}, wi = (e, t) => {
|
|
1935
|
+
let n = L();
|
|
1924
1936
|
if (n.clear(), t.trim()) {
|
|
1925
1937
|
let r = new DOMParser().parseFromString(t, "text/html");
|
|
1926
|
-
|
|
1927
|
-
let i =
|
|
1938
|
+
Ci(r);
|
|
1939
|
+
let i = he(e, r);
|
|
1928
1940
|
if (i.length) {
|
|
1929
|
-
n.select(),
|
|
1941
|
+
n.select(), we(i), Ne(null);
|
|
1930
1942
|
return;
|
|
1931
1943
|
}
|
|
1932
1944
|
}
|
|
1933
|
-
let r =
|
|
1934
|
-
n.append(r),
|
|
1945
|
+
let r = ve();
|
|
1946
|
+
n.append(r), Ne(null);
|
|
1935
1947
|
};
|
|
1936
1948
|
//#endregion
|
|
1937
1949
|
//#region src/components/Editor/utils/isEmptyEditorHtml.ts
|
|
1938
|
-
function
|
|
1950
|
+
function Ti(e, t) {
|
|
1939
1951
|
return !t.trim() && (e === "<p><br></p>" || e === "<p></p>" || e === "" || /^<p>\s*<br>\s*<\/p>$/.test(e));
|
|
1940
1952
|
}
|
|
1941
1953
|
//#endregion
|
|
1942
1954
|
//#region src/components/Editor/utils/sanitizeEditorHtml.ts
|
|
1943
|
-
var
|
|
1955
|
+
var Ei = /* @__PURE__ */ "p.br.strong.em.b.i.u.s.span.sub.sup.ul.ol.li.a.img.pre.code.table.thead.tbody.tr.td.th.h1.h2.h3.h4.h5.h6".split("."), Di = [
|
|
1944
1956
|
"href",
|
|
1945
1957
|
"src",
|
|
1946
1958
|
"alt",
|
|
@@ -1956,12 +1968,12 @@ var Si = /* @__PURE__ */ "p.br.strong.em.b.i.u.s.span.sub.sup.ul.ol.li.a.img.pre
|
|
|
1956
1968
|
"style",
|
|
1957
1969
|
"width",
|
|
1958
1970
|
"height"
|
|
1959
|
-
],
|
|
1971
|
+
], Oi = new Set(/* @__PURE__ */ "color.background-color.font-size.font-family.font-weight.font-style.text-decoration.text-align.max-width.display.vertical-align.width.height.border.margin.margin-inline-start.padding.padding-inline-start.line-height.list-style-type.list-style-position.list-style.border-collapse.table-layout.overflow-x.white-space.position.top.bottom.tab-size.border-radius.box-sizing.min-width.min-height.cursor".split(".")), ki = /^(?:(?:(?:f|ht)tps?|mailto|blob):|data:image\/[a-z0-9.+-]+[;,].*|[^a-z]|[a-z+.-]+(?:[^a-z+.:-]|$))/i, Ai = new Set([
|
|
1960
1972
|
"pre",
|
|
1961
1973
|
"code",
|
|
1962
1974
|
"td",
|
|
1963
1975
|
"th"
|
|
1964
|
-
]),
|
|
1976
|
+
]), ji = new Set(["pre", "code"]), Mi = new Set(["sup", "sub"]), Ni = (e, t) => gi(e) ? t === "li" : Oi.has(e) ? e === "padding-inline-start" ? !0 : e === "padding" || e.startsWith("padding-") ? Ai.has(t) : e === "border-radius" ? ji.has(t) : e === "position" || e === "top" || e === "bottom" ? Mi.has(t) : !0 : !1, Pi = (e, t) => e.split(";").map((e) => e.trim()).filter(Boolean).map((e) => {
|
|
1965
1977
|
let n = e.indexOf(":");
|
|
1966
1978
|
if (n === -1) return null;
|
|
1967
1979
|
let r = e.slice(0, n).trim().toLowerCase(), i = e.slice(n + 1).trim();
|
|
@@ -1969,80 +1981,80 @@ var Si = /* @__PURE__ */ "p.br.strong.em.b.i.u.s.span.sub.sup.ul.ol.li.a.img.pre
|
|
|
1969
1981
|
if (/url\s*\(/i.test(i)) return null;
|
|
1970
1982
|
r = "background-color";
|
|
1971
1983
|
}
|
|
1972
|
-
return !
|
|
1973
|
-
}).filter((e) => e !== null).join("; "),
|
|
1974
|
-
|
|
1984
|
+
return !Ni(r, t) || /expression|javascript:|url\s*\(\s*['"]?\s*javascript/i.test(i) ? null : `${r}: ${i}`;
|
|
1985
|
+
}).filter((e) => e !== null).join("; "), Fi = !1, Ii = () => {
|
|
1986
|
+
Fi ||= (Qt.addHook("uponSanitizeAttribute", (e, t) => {
|
|
1975
1987
|
if (t.attrName === "href" && /^data:/i.test(t.attrValue)) {
|
|
1976
1988
|
t.keepAttr = !1;
|
|
1977
1989
|
return;
|
|
1978
1990
|
}
|
|
1979
|
-
t.attrName === "style" && (t.attrValue =
|
|
1991
|
+
t.attrName === "style" && (t.attrValue = Pi(t.attrValue, e.nodeName.toLowerCase()), t.attrValue || (t.keepAttr = !1));
|
|
1980
1992
|
}), !0);
|
|
1981
1993
|
};
|
|
1982
1994
|
function X(e) {
|
|
1983
|
-
return e ? (
|
|
1984
|
-
ALLOWED_TAGS:
|
|
1985
|
-
ALLOWED_ATTR:
|
|
1995
|
+
return e ? (Ii(), Qt.sanitize(e, {
|
|
1996
|
+
ALLOWED_TAGS: Ei,
|
|
1997
|
+
ALLOWED_ATTR: Di,
|
|
1986
1998
|
ALLOW_DATA_ATTR: !1,
|
|
1987
1999
|
ADD_ATTR: [
|
|
1988
2000
|
"data-language",
|
|
1989
2001
|
"data-id",
|
|
1990
2002
|
"data-src"
|
|
1991
2003
|
],
|
|
1992
|
-
ALLOWED_URI_REGEXP:
|
|
2004
|
+
ALLOWED_URI_REGEXP: ki
|
|
1993
2005
|
})) : "";
|
|
1994
2006
|
}
|
|
1995
2007
|
//#endregion
|
|
1996
2008
|
//#region src/components/Editor/constants/portableEditorStyles.ts
|
|
1997
|
-
var
|
|
2009
|
+
var Li = {
|
|
1998
2010
|
margin: "0.6em 0 0.4em",
|
|
1999
2011
|
"font-weight": "600",
|
|
2000
2012
|
"line-height": "1.35"
|
|
2001
|
-
},
|
|
2013
|
+
}, Ri = {
|
|
2002
2014
|
h1: {
|
|
2003
|
-
...
|
|
2015
|
+
...Li,
|
|
2004
2016
|
"font-size": "2em"
|
|
2005
2017
|
},
|
|
2006
2018
|
h2: {
|
|
2007
|
-
...
|
|
2019
|
+
...Li,
|
|
2008
2020
|
"font-size": "1.5em"
|
|
2009
2021
|
},
|
|
2010
2022
|
h3: {
|
|
2011
|
-
...
|
|
2023
|
+
...Li,
|
|
2012
2024
|
"font-size": "1.25em"
|
|
2013
2025
|
},
|
|
2014
2026
|
h4: {
|
|
2015
|
-
...
|
|
2027
|
+
...Li,
|
|
2016
2028
|
"font-size": "1.125em"
|
|
2017
2029
|
},
|
|
2018
2030
|
h5: {
|
|
2019
|
-
...
|
|
2031
|
+
...Li,
|
|
2020
2032
|
"font-size": "1em"
|
|
2021
2033
|
},
|
|
2022
2034
|
h6: {
|
|
2023
|
-
...
|
|
2035
|
+
...Li,
|
|
2024
2036
|
"font-size": "0.875em"
|
|
2025
2037
|
}
|
|
2026
|
-
},
|
|
2038
|
+
}, zi = {
|
|
2027
2039
|
color: "#0269ff",
|
|
2028
2040
|
cursor: "pointer"
|
|
2029
|
-
},
|
|
2041
|
+
}, Bi = {
|
|
2030
2042
|
margin: "0",
|
|
2031
2043
|
"padding-inline-start": "0",
|
|
2032
2044
|
"list-style-position": "outside"
|
|
2033
|
-
},
|
|
2045
|
+
}, Vi = [
|
|
2034
2046
|
"disc",
|
|
2035
2047
|
"circle",
|
|
2036
2048
|
"square"
|
|
2037
|
-
],
|
|
2049
|
+
], Hi = {
|
|
2038
2050
|
margin: "0",
|
|
2039
|
-
"margin-inline-start":
|
|
2051
|
+
"margin-inline-start": mi,
|
|
2040
2052
|
"list-style": "inherit"
|
|
2041
|
-
},
|
|
2053
|
+
}, Ui = {
|
|
2042
2054
|
margin: "0",
|
|
2043
2055
|
"margin-inline-start": "0",
|
|
2044
2056
|
"list-style-type": "none"
|
|
2045
|
-
},
|
|
2057
|
+
}, Wi = {
|
|
2046
2058
|
display: "block",
|
|
2047
2059
|
"box-sizing": "border-box",
|
|
2048
2060
|
"max-width": "100%",
|
|
@@ -2057,23 +2069,23 @@ var Ni = {
|
|
|
2057
2069
|
"border-radius": "4px",
|
|
2058
2070
|
"background-color": "rgb(240, 242, 245)",
|
|
2059
2071
|
color: "#1f2328"
|
|
2060
|
-
},
|
|
2072
|
+
}, Gi = {
|
|
2061
2073
|
"border-collapse": "collapse",
|
|
2062
2074
|
"table-layout": "fixed",
|
|
2063
2075
|
width: "100%",
|
|
2064
2076
|
"overflow-x": "auto",
|
|
2065
2077
|
margin: "8px 0"
|
|
2066
|
-
},
|
|
2078
|
+
}, Ki = {
|
|
2067
2079
|
"box-sizing": "border-box",
|
|
2068
2080
|
"min-width": "75px",
|
|
2069
2081
|
"min-height": "32px",
|
|
2070
2082
|
padding: "4px 8px",
|
|
2071
2083
|
border: "1px solid #d9d9d9",
|
|
2072
2084
|
"vertical-align": "top"
|
|
2073
|
-
},
|
|
2085
|
+
}, qi = {
|
|
2074
2086
|
"font-weight": "600",
|
|
2075
2087
|
"background-color": "#f2f3f5"
|
|
2076
|
-
},
|
|
2088
|
+
}, Ji = {
|
|
2077
2089
|
display: "inline-block",
|
|
2078
2090
|
position: "static",
|
|
2079
2091
|
top: "auto",
|
|
@@ -2082,39 +2094,39 @@ var Ni = {
|
|
|
2082
2094
|
"line-height": "1"
|
|
2083
2095
|
}, Z = (e, t) => {
|
|
2084
2096
|
for (let [n, r] of Object.entries(t)) e.style.getPropertyValue(n) || e.style.setProperty(n, r);
|
|
2085
|
-
},
|
|
2097
|
+
}, Yi = (e) => {
|
|
2086
2098
|
let t = 0, n = e;
|
|
2087
2099
|
for (; n;) n.tagName === "UL" && (t += 1), n = n.parentElement;
|
|
2088
2100
|
return t;
|
|
2089
|
-
},
|
|
2101
|
+
}, Xi = (e) => {
|
|
2090
2102
|
let t = [...e.querySelectorAll("*")].filter((e) => e instanceof HTMLElement);
|
|
2091
|
-
for (let e of t)
|
|
2103
|
+
for (let e of t) vi(e);
|
|
2092
2104
|
for (let e of t) {
|
|
2093
|
-
let t = e.tagName.toLowerCase(), n =
|
|
2094
|
-
if (n && Z(e, n), t === "a" && Z(e,
|
|
2095
|
-
let t = Math.min(Math.max(
|
|
2105
|
+
let t = e.tagName.toLowerCase(), n = Ri[t];
|
|
2106
|
+
if (n && Z(e, n), t === "a" && Z(e, zi), t === "ul") {
|
|
2107
|
+
let t = Math.min(Math.max(Yi(e), 1), Vi.length);
|
|
2096
2108
|
Z(e, {
|
|
2097
|
-
...
|
|
2098
|
-
"list-style-type":
|
|
2109
|
+
...Bi,
|
|
2110
|
+
"list-style-type": Vi[t - 1]
|
|
2099
2111
|
});
|
|
2100
2112
|
}
|
|
2101
2113
|
t === "ol" && Z(e, {
|
|
2102
|
-
...
|
|
2114
|
+
...Bi,
|
|
2103
2115
|
"list-style-type": "decimal"
|
|
2104
|
-
}), t === "li" && Z(e, e.classList.contains("editor-nested-listitem") ?
|
|
2105
|
-
...
|
|
2116
|
+
}), t === "li" && Z(e, e.classList.contains("editor-nested-listitem") ? Ui : Hi), t === "pre" && Z(e, Wi), (t === "sup" || t === "sub") && Z(e, {
|
|
2117
|
+
...Ji,
|
|
2106
2118
|
"vertical-align": t === "sup" ? "super" : "sub"
|
|
2107
|
-
}), t === "table" && Z(e,
|
|
2119
|
+
}), t === "table" && Z(e, Gi), (t === "td" || t === "th") && (Z(e, Ki), (t === "th" || e.classList.contains("editor-table-cell-header")) && Z(e, qi)), e.classList.contains("editor-text-underline-strikethrough") ? Z(e, { "text-decoration": "underline line-through" }) : e.classList.contains("editor-text-underline") ? Z(e, { "text-decoration": "underline" }) : e.classList.contains("editor-text-strikethrough") && Z(e, { "text-decoration": "line-through" });
|
|
2108
2120
|
for (let t of Array.from(e.classList)) t.startsWith("editor-") && e.classList.remove(t);
|
|
2109
2121
|
e.classList.length === 0 && e.removeAttribute("class");
|
|
2110
2122
|
}
|
|
2111
|
-
},
|
|
2123
|
+
}, Zi = (e) => {
|
|
2112
2124
|
let t = e.parentNode;
|
|
2113
2125
|
if (t) {
|
|
2114
2126
|
for (; e.firstChild;) t.insertBefore(e.firstChild, e);
|
|
2115
2127
|
t.removeChild(e);
|
|
2116
2128
|
}
|
|
2117
|
-
},
|
|
2129
|
+
}, Qi = (e) => {
|
|
2118
2130
|
let t = !0;
|
|
2119
2131
|
for (; t;) {
|
|
2120
2132
|
t = !1;
|
|
@@ -2122,34 +2134,34 @@ var Ni = {
|
|
|
2122
2134
|
if (n.attributes.length > 0) continue;
|
|
2123
2135
|
let e = n.tagName.toLowerCase();
|
|
2124
2136
|
if (e === "span") {
|
|
2125
|
-
|
|
2137
|
+
Zi(n), t = !0;
|
|
2126
2138
|
continue;
|
|
2127
2139
|
}
|
|
2128
2140
|
if (n.childElementCount !== 1 || n.childNodes.length !== 1) continue;
|
|
2129
2141
|
let r = n.firstElementChild;
|
|
2130
|
-
(e === "b" && r?.tagName === "STRONG" || e === "i" && r?.tagName === "EM") && (
|
|
2142
|
+
(e === "b" && r?.tagName === "STRONG" || e === "i" && r?.tagName === "EM") && (Zi(n), t = !0);
|
|
2131
2143
|
}
|
|
2132
2144
|
}
|
|
2133
2145
|
};
|
|
2134
|
-
function
|
|
2146
|
+
function $i(e) {
|
|
2135
2147
|
if (!e.trim()) return e;
|
|
2136
2148
|
let t = new DOMParser().parseFromString(e, "text/html");
|
|
2137
|
-
|
|
2149
|
+
Xi(t.body), Qi(t.body);
|
|
2138
2150
|
for (let e of Array.from(t.body.querySelectorAll("pre"))) e.textContent?.trim() || e.remove();
|
|
2139
2151
|
return t.body.innerHTML;
|
|
2140
2152
|
}
|
|
2141
2153
|
//#endregion
|
|
2142
2154
|
//#region src/components/Editor/utils/applyAiPolish.ts
|
|
2143
|
-
function
|
|
2144
|
-
return e.join(`\n\n${
|
|
2155
|
+
function ea(e) {
|
|
2156
|
+
return e.join(`\n\n${ri}\n\n`);
|
|
2145
2157
|
}
|
|
2146
|
-
function
|
|
2147
|
-
return e.includes("<!--bsy-block-->") ? e.split(
|
|
2158
|
+
function ta(e) {
|
|
2159
|
+
return e.includes("<!--bsy-block-->") ? e.split(ri).map((e) => e.trim()) : [e];
|
|
2148
2160
|
}
|
|
2149
|
-
function
|
|
2150
|
-
return e.split(
|
|
2161
|
+
function na(e) {
|
|
2162
|
+
return e.split(ri).join("").trim().length > 0;
|
|
2151
2163
|
}
|
|
2152
|
-
function
|
|
2164
|
+
function ra(e, t) {
|
|
2153
2165
|
let n = e.map(() => "");
|
|
2154
2166
|
if (e.length === 0) return n;
|
|
2155
2167
|
let r = [], i = [];
|
|
@@ -2163,7 +2175,7 @@ function $i(e, t) {
|
|
|
2163
2175
|
for (; d < c;) n[n.length - 1] += o[d], d += 1;
|
|
2164
2176
|
return n;
|
|
2165
2177
|
}
|
|
2166
|
-
var
|
|
2178
|
+
var ia = new Set(["PRE"]), aa = new Set([
|
|
2167
2179
|
"PRE",
|
|
2168
2180
|
"TABLE",
|
|
2169
2181
|
"THEAD",
|
|
@@ -2174,11 +2186,11 @@ var ea = new Set(["PRE"]), ta = new Set([
|
|
|
2174
2186
|
"IMG",
|
|
2175
2187
|
"BR"
|
|
2176
2188
|
]);
|
|
2177
|
-
function
|
|
2189
|
+
function oa(e) {
|
|
2178
2190
|
let t = [], n = (e) => {
|
|
2179
2191
|
if (e.nodeType === Node.ELEMENT_NODE) {
|
|
2180
2192
|
let t = e.tagName;
|
|
2181
|
-
if (
|
|
2193
|
+
if (ia.has(t)) return;
|
|
2182
2194
|
for (let t of Array.from(e.childNodes)) n(t);
|
|
2183
2195
|
return;
|
|
2184
2196
|
}
|
|
@@ -2186,31 +2198,31 @@ function na(e) {
|
|
|
2186
2198
|
};
|
|
2187
2199
|
return n(e), t;
|
|
2188
2200
|
}
|
|
2189
|
-
function
|
|
2201
|
+
function sa(e, t) {
|
|
2190
2202
|
let n = e;
|
|
2191
|
-
for (; n && n !== t && !
|
|
2203
|
+
for (; n && n !== t && !aa.has(n.tagName) && !(n.textContent ?? "").trim() && !n.querySelector("img, pre, table, br");) {
|
|
2192
2204
|
let e = n.parentElement;
|
|
2193
2205
|
n.remove(), n = e;
|
|
2194
2206
|
}
|
|
2195
2207
|
}
|
|
2196
|
-
function
|
|
2208
|
+
function ca(e) {
|
|
2197
2209
|
let t = e.tagName;
|
|
2198
2210
|
return t === "PRE" || t === "IMG" || t === "TABLE";
|
|
2199
2211
|
}
|
|
2200
|
-
function
|
|
2201
|
-
let t =
|
|
2202
|
-
return t ? Array.from(t.children).filter((e) => !
|
|
2212
|
+
function la(e) {
|
|
2213
|
+
let t = oi(e);
|
|
2214
|
+
return t ? Array.from(t.children).filter((e) => !ca(e)).map((e) => e.textContent ?? "") : [];
|
|
2203
2215
|
}
|
|
2204
|
-
function
|
|
2205
|
-
return e.includes("<!--bsy-block-->") ? e :
|
|
2216
|
+
function ua(e) {
|
|
2217
|
+
return e.includes("<!--bsy-block-->") ? e : xi(e) || e;
|
|
2206
2218
|
}
|
|
2207
|
-
function
|
|
2208
|
-
let n =
|
|
2219
|
+
function da(e, t) {
|
|
2220
|
+
let n = oa(e);
|
|
2209
2221
|
if (n.length === 0) {
|
|
2210
2222
|
t && (e.querySelector("br")?.remove(), e.append(e.ownerDocument.createTextNode(t)));
|
|
2211
2223
|
return;
|
|
2212
2224
|
}
|
|
2213
|
-
let r =
|
|
2225
|
+
let r = ra(n.map((e) => e.textContent ?? ""), t);
|
|
2214
2226
|
for (let t = 0; t < n.length; t++) {
|
|
2215
2227
|
let i = r[t], a = n[t];
|
|
2216
2228
|
if (i) {
|
|
@@ -2218,38 +2230,38 @@ function sa(e, t) {
|
|
|
2218
2230
|
continue;
|
|
2219
2231
|
}
|
|
2220
2232
|
let o = a.parentElement;
|
|
2221
|
-
a.remove(),
|
|
2233
|
+
a.remove(), sa(o, e);
|
|
2222
2234
|
}
|
|
2223
2235
|
}
|
|
2224
|
-
function
|
|
2225
|
-
let n =
|
|
2226
|
-
if (!
|
|
2227
|
-
let r =
|
|
2236
|
+
function fa(e, t) {
|
|
2237
|
+
let n = ua(t);
|
|
2238
|
+
if (!na(n) || !e.trim()) return "";
|
|
2239
|
+
let r = oi(e);
|
|
2228
2240
|
if (!r) return "";
|
|
2229
|
-
let i = Array.from(r.children).filter((e) => !
|
|
2241
|
+
let i = Array.from(r.children).filter((e) => !ca(e));
|
|
2230
2242
|
if (i.length === 0) return "";
|
|
2231
|
-
let a =
|
|
2232
|
-
for (let e = 0; e < i.length; e++)
|
|
2243
|
+
let a = ta(n), o = a.length === i.length ? a : ra(i.map((e) => e.textContent ?? ""), a.join(""));
|
|
2244
|
+
for (let e = 0; e < i.length; e++) da(i[e], o[e] ?? "");
|
|
2233
2245
|
return r.innerHTML;
|
|
2234
2246
|
}
|
|
2235
|
-
function
|
|
2247
|
+
function pa(e, t) {
|
|
2236
2248
|
let n = "";
|
|
2237
2249
|
e.getEditorState().read(() => {
|
|
2238
|
-
n =
|
|
2250
|
+
n = $i(X(me(e, null)));
|
|
2239
2251
|
}, { editor: e });
|
|
2240
|
-
let r = X(
|
|
2241
|
-
return !r.trim() ||
|
|
2242
|
-
|
|
2252
|
+
let r = X(fa(n, t));
|
|
2253
|
+
return !r.trim() || Ti(r, xi(r)) ? !1 : (e.update(() => {
|
|
2254
|
+
wi(e, r), kn(!0);
|
|
2243
2255
|
}, { discrete: !0 }), !0);
|
|
2244
2256
|
}
|
|
2245
2257
|
//#endregion
|
|
2246
2258
|
//#region src/components/Editor/utils/readEditorAiSnapshot.ts
|
|
2247
|
-
function
|
|
2259
|
+
function ma(e) {
|
|
2248
2260
|
let t = "", n = "", r = "";
|
|
2249
2261
|
e.getEditorState().read(() => {
|
|
2250
|
-
n =
|
|
2262
|
+
n = L().getTextContent(), t = $i(X(me(e, null))), r = ea(la(t));
|
|
2251
2263
|
}, { editor: e });
|
|
2252
|
-
let i =
|
|
2264
|
+
let i = ni(t);
|
|
2253
2265
|
return {
|
|
2254
2266
|
html: t,
|
|
2255
2267
|
text: n,
|
|
@@ -2288,17 +2300,17 @@ var Q = {
|
|
|
2288
2300
|
"bsy-lexical-ai__footer": "_bsy-lexical-ai__footer_p7v4i_165",
|
|
2289
2301
|
"bsy-lexical-ai__error": "_bsy-lexical-ai__error_p7v4i_173",
|
|
2290
2302
|
"bsy-lexical-ai__preset": "_bsy-lexical-ai__preset_p7v4i_178"
|
|
2291
|
-
},
|
|
2292
|
-
let [i] =
|
|
2303
|
+
}, ha = "data:image/png;base64,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", ga = "data:image/png;base64,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", _a = 16, va = ({ disabled: t, tooltip: n, showDisabledTooltip: r }) => {
|
|
2304
|
+
let [i] = B(), { typeset: o, polish: s, canTypeset: c, canPolish: l, aiOpen: u, setAiOpen: d, aiSessionRef: p } = _r(), { hasEditorText: m } = J(), { t: h } = a(), { iconSize: g } = Wn(), _ = t || !c || !m, x = t || !l || !m, S = t || !!u, C = T(() => {
|
|
2293
2305
|
if (t || !c || !o) return;
|
|
2294
|
-
let e =
|
|
2306
|
+
let e = ma(i);
|
|
2295
2307
|
e.text.trim() && (p.current = {
|
|
2296
2308
|
originalHtml: e.html,
|
|
2297
2309
|
codeBlocks: e.codeBlocks
|
|
2298
2310
|
}, d("typeset"), o({
|
|
2299
2311
|
text: e.text,
|
|
2300
2312
|
html: e.htmlWithoutCode,
|
|
2301
|
-
prompt:
|
|
2313
|
+
prompt: $r
|
|
2302
2314
|
}));
|
|
2303
2315
|
}, [
|
|
2304
2316
|
p,
|
|
@@ -2309,15 +2321,15 @@ var Q = {
|
|
|
2309
2321
|
o
|
|
2310
2322
|
]), w = T((e) => {
|
|
2311
2323
|
if (t || !l || !s) return;
|
|
2312
|
-
let n =
|
|
2313
|
-
|
|
2324
|
+
let n = ma(i);
|
|
2325
|
+
na(n.polishText) && (p.current = {
|
|
2314
2326
|
originalHtml: n.html,
|
|
2315
2327
|
originalText: n.polishText,
|
|
2316
2328
|
preset: e
|
|
2317
2329
|
}, d("polish"), s({
|
|
2318
2330
|
text: n.polishText,
|
|
2319
2331
|
preset: e,
|
|
2320
|
-
prompt:
|
|
2332
|
+
prompt: ti(e)
|
|
2321
2333
|
}));
|
|
2322
2334
|
}, [
|
|
2323
2335
|
p,
|
|
@@ -2331,16 +2343,16 @@ var Q = {
|
|
|
2331
2343
|
C();
|
|
2332
2344
|
return;
|
|
2333
2345
|
}
|
|
2334
|
-
|
|
2346
|
+
Xr.includes(e.key) && w(e.key);
|
|
2335
2347
|
}, [w, C]), D = [{
|
|
2336
2348
|
key: "typeset",
|
|
2337
2349
|
label: h("editor.aiTypeset"),
|
|
2338
2350
|
disabled: _,
|
|
2339
2351
|
icon: /* @__PURE__ */ y("img", {
|
|
2340
|
-
src:
|
|
2352
|
+
src: ha,
|
|
2341
2353
|
alt: "",
|
|
2342
|
-
width:
|
|
2343
|
-
height:
|
|
2354
|
+
width: _a,
|
|
2355
|
+
height: _a,
|
|
2344
2356
|
className: Q["bsy-lexical-ai__icon"],
|
|
2345
2357
|
draggable: !1
|
|
2346
2358
|
})
|
|
@@ -2349,40 +2361,40 @@ var Q = {
|
|
|
2349
2361
|
label: h("editor.aiPolish"),
|
|
2350
2362
|
disabled: x,
|
|
2351
2363
|
icon: /* @__PURE__ */ y("img", {
|
|
2352
|
-
src:
|
|
2364
|
+
src: ga,
|
|
2353
2365
|
alt: "",
|
|
2354
|
-
width:
|
|
2355
|
-
height:
|
|
2366
|
+
width: _a,
|
|
2367
|
+
height: _a,
|
|
2356
2368
|
className: Q["bsy-lexical-ai__icon"],
|
|
2357
2369
|
draggable: !1
|
|
2358
2370
|
}),
|
|
2359
|
-
children:
|
|
2371
|
+
children: Xr.map((e) => ({
|
|
2360
2372
|
key: e,
|
|
2361
|
-
label: h(
|
|
2373
|
+
label: h(Zr[e])
|
|
2362
2374
|
}))
|
|
2363
2375
|
}], O = /* @__PURE__ */ y("div", {
|
|
2364
|
-
className:
|
|
2376
|
+
className: F(G["bsy-lexical__toolbar-select"], G["bsy-lexical__toolbar-select--ai"], Q["bsy-lexical-ai__trigger"]),
|
|
2365
2377
|
children: /* @__PURE__ */ y(q, {
|
|
2366
2378
|
tooltip: n,
|
|
2367
2379
|
showDisabledTooltip: r,
|
|
2368
2380
|
disabled: S,
|
|
2369
2381
|
icon: /* @__PURE__ */ b(v, { children: [
|
|
2370
2382
|
/* @__PURE__ */ y("img", {
|
|
2371
|
-
src:
|
|
2383
|
+
src: ha,
|
|
2372
2384
|
alt: "",
|
|
2373
|
-
width:
|
|
2374
|
-
height:
|
|
2385
|
+
width: _a,
|
|
2386
|
+
height: _a,
|
|
2375
2387
|
className: Q["bsy-lexical-ai__icon"],
|
|
2376
2388
|
draggable: !1
|
|
2377
2389
|
}),
|
|
2378
2390
|
/* @__PURE__ */ y("span", {
|
|
2379
|
-
className:
|
|
2391
|
+
className: G["bsy-lexical__toolbar-select-label"],
|
|
2380
2392
|
children: h("editor.aiTypeset")
|
|
2381
2393
|
}),
|
|
2382
2394
|
/* @__PURE__ */ y(e, {
|
|
2383
2395
|
name: "arrow-down",
|
|
2384
2396
|
size: g,
|
|
2385
|
-
className:
|
|
2397
|
+
className: G["bsy-lexical__toolbar-select-arrow"]
|
|
2386
2398
|
})
|
|
2387
2399
|
] })
|
|
2388
2400
|
})
|
|
@@ -2391,51 +2403,51 @@ var Q = {
|
|
|
2391
2403
|
menus: D,
|
|
2392
2404
|
onClick: E,
|
|
2393
2405
|
showSearch: !1,
|
|
2394
|
-
offset:
|
|
2406
|
+
offset: W,
|
|
2395
2407
|
style: {
|
|
2396
2408
|
width: 147,
|
|
2397
2409
|
minWidth: 147
|
|
2398
2410
|
},
|
|
2399
2411
|
children: O
|
|
2400
2412
|
});
|
|
2401
|
-
},
|
|
2413
|
+
}, ya = /* @__PURE__ */ new Map(), ba = (e, t) => {
|
|
2402
2414
|
if (!e) throw Error("registerToolbarButton: name is required");
|
|
2403
|
-
|
|
2404
|
-
},
|
|
2405
|
-
|
|
2406
|
-
},
|
|
2415
|
+
ya.set(e, t);
|
|
2416
|
+
}, xa = (e) => {
|
|
2417
|
+
ya.delete(e);
|
|
2418
|
+
}, Sa = (e) => ya.get(e), Ca = () => Array.from(ya.keys());
|
|
2407
2419
|
Object.entries({
|
|
2408
|
-
undo:
|
|
2409
|
-
redo:
|
|
2410
|
-
bold:
|
|
2411
|
-
underline:
|
|
2412
|
-
italic:
|
|
2413
|
-
strikethrough:
|
|
2414
|
-
superscript:
|
|
2415
|
-
subscript:
|
|
2416
|
-
heading:
|
|
2417
|
-
fontSize:
|
|
2418
|
-
fontColor:
|
|
2419
|
-
fill:
|
|
2420
|
-
clearFormat:
|
|
2421
|
-
bullet:
|
|
2422
|
-
number:
|
|
2423
|
-
outdent:
|
|
2424
|
-
indent:
|
|
2425
|
-
align:
|
|
2426
|
-
link:
|
|
2427
|
-
unLink:
|
|
2428
|
-
picture:
|
|
2429
|
-
code:
|
|
2430
|
-
table:
|
|
2431
|
-
source:
|
|
2432
|
-
ai:
|
|
2420
|
+
undo: jr,
|
|
2421
|
+
redo: Mr,
|
|
2422
|
+
bold: Kn,
|
|
2423
|
+
underline: qn,
|
|
2424
|
+
italic: Jn,
|
|
2425
|
+
strikethrough: Nr,
|
|
2426
|
+
superscript: Pr,
|
|
2427
|
+
subscript: Fr,
|
|
2428
|
+
heading: qr,
|
|
2429
|
+
fontSize: Yn,
|
|
2430
|
+
fontColor: ir,
|
|
2431
|
+
fill: ar,
|
|
2432
|
+
clearFormat: Yr,
|
|
2433
|
+
bullet: Rr,
|
|
2434
|
+
number: zr,
|
|
2435
|
+
outdent: Lr,
|
|
2436
|
+
indent: Ir,
|
|
2437
|
+
align: sr,
|
|
2438
|
+
link: lr,
|
|
2439
|
+
unLink: ur,
|
|
2440
|
+
picture: Ar,
|
|
2441
|
+
code: Br,
|
|
2442
|
+
table: Ur,
|
|
2443
|
+
source: Kr,
|
|
2444
|
+
ai: va
|
|
2433
2445
|
}).forEach(([e, t]) => {
|
|
2434
|
-
|
|
2446
|
+
ba(e, t);
|
|
2435
2447
|
});
|
|
2436
2448
|
//#endregion
|
|
2437
2449
|
//#region src/components/Editor/utils/getToolbarItems.ts
|
|
2438
|
-
var
|
|
2450
|
+
var wa = (e, t, n) => {
|
|
2439
2451
|
if (n) return [
|
|
2440
2452
|
{
|
|
2441
2453
|
kind: "button",
|
|
@@ -2493,44 +2505,44 @@ var ba = (e, t, n) => {
|
|
|
2493
2505
|
key: `divider-${t.key}`
|
|
2494
2506
|
});
|
|
2495
2507
|
}), r;
|
|
2496
|
-
},
|
|
2508
|
+
}, Ta = Tn.map((e) => ({
|
|
2497
2509
|
key: e.id,
|
|
2498
2510
|
label: e.label
|
|
2499
|
-
})),
|
|
2500
|
-
let [t] =
|
|
2511
|
+
})), Ea = () => {
|
|
2512
|
+
let [t] = B(), { codeLanguage: n } = J(), { t: r } = a(), { iconSize: i } = Wn(), o = T((e) => {
|
|
2501
2513
|
let n = e.key;
|
|
2502
|
-
|
|
2503
|
-
let e =
|
|
2504
|
-
|
|
2514
|
+
K(t), t.update(() => {
|
|
2515
|
+
let e = R();
|
|
2516
|
+
z(e) && H(e.anchor.getNode(), V)?.setLanguage(n);
|
|
2505
2517
|
});
|
|
2506
|
-
}, [t]), s =
|
|
2518
|
+
}, [t]), s = En[n].label;
|
|
2507
2519
|
return /* @__PURE__ */ y(f, {
|
|
2508
|
-
menus:
|
|
2520
|
+
menus: Ta,
|
|
2509
2521
|
onClick: o,
|
|
2510
2522
|
activeKey: [n],
|
|
2511
2523
|
showSearch: !1,
|
|
2512
|
-
offset:
|
|
2524
|
+
offset: W,
|
|
2513
2525
|
style: {
|
|
2514
2526
|
width: 120,
|
|
2515
2527
|
minWidth: 120
|
|
2516
2528
|
},
|
|
2517
2529
|
children: /* @__PURE__ */ y("div", {
|
|
2518
|
-
className:
|
|
2530
|
+
className: G["bsy-lexical__toolbar-select"],
|
|
2519
2531
|
style: { width: 120 },
|
|
2520
2532
|
children: /* @__PURE__ */ y(q, {
|
|
2521
2533
|
icon: /* @__PURE__ */ b(v, { children: [/* @__PURE__ */ y("span", {
|
|
2522
|
-
className:
|
|
2534
|
+
className: G["bsy-lexical__toolbar-select-label"],
|
|
2523
2535
|
children: s
|
|
2524
2536
|
}), /* @__PURE__ */ y(e, {
|
|
2525
2537
|
name: "arrow-down",
|
|
2526
2538
|
size: i,
|
|
2527
|
-
className:
|
|
2539
|
+
className: G["bsy-lexical__toolbar-select-arrow"]
|
|
2528
2540
|
})] }),
|
|
2529
2541
|
tooltip: r("editor.codeLanguage")
|
|
2530
2542
|
})
|
|
2531
2543
|
})
|
|
2532
2544
|
});
|
|
2533
|
-
},
|
|
2545
|
+
}, Da = {
|
|
2534
2546
|
initial: {
|
|
2535
2547
|
opacity: 0,
|
|
2536
2548
|
x: 6
|
|
@@ -2543,28 +2555,28 @@ var ba = (e, t, n) => {
|
|
|
2543
2555
|
opacity: 0,
|
|
2544
2556
|
x: -6
|
|
2545
2557
|
}
|
|
2546
|
-
},
|
|
2547
|
-
if (e.kind === "divider") return /* @__PURE__ */ y("div", { className:
|
|
2548
|
-
if (e.kind === "language") return /* @__PURE__ */ y(
|
|
2549
|
-
let t =
|
|
2558
|
+
}, Oa = (e) => {
|
|
2559
|
+
if (e.kind === "divider") return /* @__PURE__ */ y("div", { className: G["bsy-lexical__toolbar-divider"] });
|
|
2560
|
+
if (e.kind === "language") return /* @__PURE__ */ y(Ea, {});
|
|
2561
|
+
let t = Sa(e.name);
|
|
2550
2562
|
return t ? /* @__PURE__ */ y(t, { ...e.props }) : (console.warn(`[ToolbarPlugin] Button "${e.name}" is not registered.`), null);
|
|
2551
|
-
},
|
|
2552
|
-
let i =
|
|
2553
|
-
return i === null ? null : /* @__PURE__ */ y(
|
|
2563
|
+
}, ka = C(function({ item: e, motionProps: t, transition: n }, r) {
|
|
2564
|
+
let i = Oa(e);
|
|
2565
|
+
return i === null ? null : /* @__PURE__ */ y(I.div, {
|
|
2554
2566
|
ref: r,
|
|
2555
2567
|
"data-toolbar-item-key": e.key,
|
|
2556
|
-
className:
|
|
2568
|
+
className: F(G["bsy-lexical__toolbar-item"], e.kind === "button" && e.props?.disabled && G["bsy-lexical__toolbar-item--disabled"]),
|
|
2557
2569
|
layout: "position",
|
|
2558
2570
|
transition: n,
|
|
2559
2571
|
...t,
|
|
2560
2572
|
children: i
|
|
2561
2573
|
}, e.key);
|
|
2562
|
-
}),
|
|
2563
|
-
let { isCodeBlock: n } = J(), { isSourceMode: r } =
|
|
2574
|
+
}), Aa = ({ config: e, sizeToken: t }) => {
|
|
2575
|
+
let { isCodeBlock: n } = J(), { isSourceMode: r } = Gr(), i = oe(), o = j(() => wa(e, n, r), [
|
|
2564
2576
|
e,
|
|
2565
2577
|
n,
|
|
2566
2578
|
r
|
|
2567
|
-
]), s = o.map((e) => e.key).join("|"), { t: c } = a(), l =
|
|
2579
|
+
]), s = o.map((e) => e.key).join("|"), { t: c } = a(), l = M(null), u = M({}), d = M(null), f = M(!0), [p, m] = N({
|
|
2568
2580
|
keys: s,
|
|
2569
2581
|
count: o.length
|
|
2570
2582
|
});
|
|
@@ -2572,12 +2584,12 @@ var ba = (e, t, n) => {
|
|
|
2572
2584
|
keys: s,
|
|
2573
2585
|
count: o.length
|
|
2574
2586
|
});
|
|
2575
|
-
let h = p.keys === s ? p.count : o.length, g =
|
|
2587
|
+
let h = p.keys === s ? p.count : o.length, g = M(h);
|
|
2576
2588
|
g.current = h;
|
|
2577
|
-
let [_, v] =
|
|
2589
|
+
let [_, v] = N(!1), x = {
|
|
2578
2590
|
duration: i ? 0 : .16,
|
|
2579
2591
|
ease: "easeOut"
|
|
2580
|
-
}, S = i ? {} :
|
|
2592
|
+
}, S = i ? {} : Da, C = T(() => {
|
|
2581
2593
|
let e = l.current;
|
|
2582
2594
|
if (!e || f.current && g.current !== o.length) return;
|
|
2583
2595
|
let t = getComputedStyle(e), n = Number.parseFloat(t.columnGap || t.gap) || 0, r = e.clientWidth, i = new Set(o.map((e) => e.key));
|
|
@@ -2593,16 +2605,16 @@ var ba = (e, t, n) => {
|
|
|
2593
2605
|
}));
|
|
2594
2606
|
f.current && o.length > 0 && c.every((e) => e.width <= 0) || (f.current = !1, m({
|
|
2595
2607
|
keys: s,
|
|
2596
|
-
count:
|
|
2608
|
+
count: mn(c, r, a, n)
|
|
2597
2609
|
}));
|
|
2598
2610
|
}, [s, o]);
|
|
2599
|
-
|
|
2611
|
+
A(() => {
|
|
2600
2612
|
f.current = !0, u.current = {};
|
|
2601
2613
|
}, [
|
|
2602
2614
|
s,
|
|
2603
2615
|
o.length,
|
|
2604
2616
|
t
|
|
2605
|
-
]),
|
|
2617
|
+
]), A(() => {
|
|
2606
2618
|
C();
|
|
2607
2619
|
let e = l.current;
|
|
2608
2620
|
if (!e || typeof ResizeObserver > "u") return;
|
|
@@ -2613,27 +2625,27 @@ var ba = (e, t, n) => {
|
|
|
2613
2625
|
s,
|
|
2614
2626
|
t
|
|
2615
2627
|
]);
|
|
2616
|
-
let { visible: w, overflow: E } =
|
|
2628
|
+
let { visible: w, overflow: E } = hn(o, h), D = E.length > 0, O = M(E);
|
|
2617
2629
|
E.length > 0 && (O.current = E);
|
|
2618
|
-
let ee = _ && D, k = D || _ && O.current.length > 0,
|
|
2630
|
+
let ee = _ && D, k = D || _ && O.current.length > 0, P = D ? E : O.current;
|
|
2619
2631
|
return /* @__PURE__ */ b("div", {
|
|
2620
|
-
className:
|
|
2632
|
+
className: F(G["bsy-lexical__toolbar-stack"], i && G["bsy-lexical__toolbar-stack--instant"]),
|
|
2621
2633
|
children: [/* @__PURE__ */ b("div", {
|
|
2622
2634
|
ref: l,
|
|
2623
|
-
className:
|
|
2635
|
+
className: G["bsy-lexical__toolbar-items"],
|
|
2624
2636
|
children: [
|
|
2625
|
-
/* @__PURE__ */ y(
|
|
2637
|
+
/* @__PURE__ */ y(ae, {
|
|
2626
2638
|
initial: !1,
|
|
2627
2639
|
mode: "popLayout",
|
|
2628
|
-
children: w.map((e) => /* @__PURE__ */ y(
|
|
2640
|
+
children: w.map((e) => /* @__PURE__ */ y(ka, {
|
|
2629
2641
|
item: e,
|
|
2630
2642
|
motionProps: S,
|
|
2631
2643
|
transition: x
|
|
2632
2644
|
}, e.key))
|
|
2633
2645
|
}),
|
|
2634
2646
|
D ? /* @__PURE__ */ b("div", {
|
|
2635
|
-
className:
|
|
2636
|
-
children: [/* @__PURE__ */ y("div", { className:
|
|
2647
|
+
className: F(G["bsy-lexical__toolbar-overflow"], G["bsy-lexical__toolbar-with-divider"]),
|
|
2648
|
+
children: [/* @__PURE__ */ y("div", { className: G["bsy-lexical__toolbar-divider"] }), /* @__PURE__ */ y(q, {
|
|
2637
2649
|
icon: ee ? "packupeverything" : "expandall",
|
|
2638
2650
|
tooltip: c(ee ? "editor.collapse" : "editor.expand"),
|
|
2639
2651
|
highlight: ee,
|
|
@@ -2642,19 +2654,19 @@ var ba = (e, t, n) => {
|
|
|
2642
2654
|
}) : null,
|
|
2643
2655
|
/* @__PURE__ */ b("div", {
|
|
2644
2656
|
ref: d,
|
|
2645
|
-
className:
|
|
2657
|
+
className: F(G["bsy-lexical__toolbar-more-sizer"], G["bsy-lexical__toolbar-with-divider"]),
|
|
2646
2658
|
"aria-hidden": !0,
|
|
2647
|
-
children: [/* @__PURE__ */ y("div", { className:
|
|
2659
|
+
children: [/* @__PURE__ */ y("div", { className: G["bsy-lexical__toolbar-divider"] }), /* @__PURE__ */ y(q, {
|
|
2648
2660
|
icon: "expandall",
|
|
2649
2661
|
tooltip: ""
|
|
2650
2662
|
})]
|
|
2651
2663
|
})
|
|
2652
2664
|
]
|
|
2653
2665
|
}), k ? /* @__PURE__ */ y("div", {
|
|
2654
|
-
className:
|
|
2666
|
+
className: F(G["bsy-lexical__toolbar-overflow-row"], ee && G["bsy-lexical__toolbar-overflow-row--open"], i && G["bsy-lexical__toolbar-overflow-row--instant"]),
|
|
2655
2667
|
children: /* @__PURE__ */ y("div", {
|
|
2656
|
-
className:
|
|
2657
|
-
children:
|
|
2668
|
+
className: G["bsy-lexical__toolbar-overflow-inner"],
|
|
2669
|
+
children: P.map((e) => /* @__PURE__ */ y(ka, {
|
|
2658
2670
|
item: e,
|
|
2659
2671
|
motionProps: {},
|
|
2660
2672
|
transition: x
|
|
@@ -2662,11 +2674,11 @@ var ba = (e, t, n) => {
|
|
|
2662
2674
|
})
|
|
2663
2675
|
}) : null]
|
|
2664
2676
|
});
|
|
2665
|
-
},
|
|
2666
|
-
let { config: t = [], style: n, theme: r, mode: i, floating: a, stickyOffset: o, size: s =
|
|
2677
|
+
}, ja = (e) => {
|
|
2678
|
+
let { config: t = [], style: n, theme: r, mode: i, floating: a, stickyOffset: o, size: s = cn } = e, { toolbarRef: c } = _r(), l = i === "floating", u = o !== void 0, d = oe(), f = {
|
|
2667
2679
|
duration: d ? 0 : .16,
|
|
2668
2680
|
ease: "easeOut"
|
|
2669
|
-
}, p =
|
|
2681
|
+
}, p = j(() => dn(r, s), [r, s]), m = j(() => ({ iconSize: fn(r?.iconSize, s) }), [r?.iconSize, s]), h = l ? pn(a) : void 0, _ = l ? g(n, [
|
|
2670
2682
|
"position",
|
|
2671
2683
|
"left",
|
|
2672
2684
|
"top",
|
|
@@ -2677,41 +2689,41 @@ var ba = (e, t, n) => {
|
|
|
2677
2689
|
"marginTop",
|
|
2678
2690
|
"marginBottom"
|
|
2679
2691
|
]) : n;
|
|
2680
|
-
return /* @__PURE__ */ y(
|
|
2692
|
+
return /* @__PURE__ */ y(Un, {
|
|
2681
2693
|
value: m,
|
|
2682
|
-
children: /* @__PURE__ */ y(
|
|
2694
|
+
children: /* @__PURE__ */ y(Vn, { children: /* @__PURE__ */ y(Rn, { children: /* @__PURE__ */ y(I.div, {
|
|
2683
2695
|
ref: c,
|
|
2684
2696
|
layout: d || u ? !1 : "position",
|
|
2685
2697
|
transition: f,
|
|
2686
|
-
className:
|
|
2698
|
+
className: F(G["bsy-lexical__toolbar"], l && G["bsy-lexical__toolbar--floating"], u && G["bsy-lexical__toolbar--sticky"]),
|
|
2687
2699
|
style: {
|
|
2688
2700
|
...p,
|
|
2689
2701
|
...u ? { top: o } : null,
|
|
2690
2702
|
...h,
|
|
2691
2703
|
..._
|
|
2692
2704
|
},
|
|
2693
|
-
children: /* @__PURE__ */ y(
|
|
2705
|
+
children: /* @__PURE__ */ y(Aa, {
|
|
2694
2706
|
config: t,
|
|
2695
2707
|
sizeToken: `${s}|${r?.itemHeight ?? ""}|${r?.iconSize ?? ""}`
|
|
2696
2708
|
})
|
|
2697
2709
|
}) }) })
|
|
2698
2710
|
});
|
|
2699
2711
|
}, $ = {
|
|
2700
|
-
"bsy-lexical-editor": "_bsy-lexical-
|
|
2701
|
-
"bsy-lexical-editor--floating": "_bsy-lexical-editor--
|
|
2702
|
-
"bsy-lexical-editor--sticky-toolbar": "_bsy-lexical-editor--sticky-
|
|
2703
|
-
"bsy-lexical-editor__body": "_bsy-lexical-
|
|
2704
|
-
"bsy-lexical-editor__body--fixed": "_bsy-lexical-editor__body--
|
|
2705
|
-
"bsy-lexical-editor__editable-wrap": "_bsy-lexical-editor__editable-
|
|
2706
|
-
"bsy-lexical-editor__content-editable": "_bsy-lexical-editor__content-
|
|
2707
|
-
"bsy-lexical-editor__length-badge": "_bsy-lexical-editor__length-
|
|
2708
|
-
"bsy-lexical-editor__length-badge--exceeded": "_bsy-lexical-editor__length-badge--
|
|
2709
|
-
},
|
|
2712
|
+
"bsy-lexical-editor": "_bsy-lexical-editor_135r0_2",
|
|
2713
|
+
"bsy-lexical-editor--floating": "_bsy-lexical-editor--floating_135r0_9",
|
|
2714
|
+
"bsy-lexical-editor--sticky-toolbar": "_bsy-lexical-editor--sticky-toolbar_135r0_9",
|
|
2715
|
+
"bsy-lexical-editor__body": "_bsy-lexical-editor__body_135r0_12",
|
|
2716
|
+
"bsy-lexical-editor__body--fixed": "_bsy-lexical-editor__body--fixed_135r0_17",
|
|
2717
|
+
"bsy-lexical-editor__editable-wrap": "_bsy-lexical-editor__editable-wrap_135r0_20",
|
|
2718
|
+
"bsy-lexical-editor__content-editable": "_bsy-lexical-editor__content-editable_135r0_30",
|
|
2719
|
+
"bsy-lexical-editor__length-badge": "_bsy-lexical-editor__length-badge_135r0_50",
|
|
2720
|
+
"bsy-lexical-editor__length-badge--exceeded": "_bsy-lexical-editor__length-badge--exceeded_135r0_62"
|
|
2721
|
+
}, Ma = (e) => {
|
|
2710
2722
|
if (!(e === void 0 || e === "")) return typeof e == "number" ? `${e}px` : e;
|
|
2711
|
-
},
|
|
2723
|
+
}, Na = (e) => {
|
|
2712
2724
|
let t = {};
|
|
2713
|
-
return e ? (s(t, "--bsy-editor-container-border-color", e.borderColor), s(t, "--bsy-editor-container-border-width",
|
|
2714
|
-
},
|
|
2725
|
+
return e ? (s(t, "--bsy-editor-container-border-color", e.borderColor), s(t, "--bsy-editor-container-border-width", Ma(e.borderWidth)), s(t, "--bsy-editor-container-border-radius", Ma(e.borderRadius)), t) : t;
|
|
2726
|
+
}, Pa = class e extends rt {
|
|
2715
2727
|
constructor(e, t) {
|
|
2716
2728
|
super(e, t);
|
|
2717
2729
|
}
|
|
@@ -2726,60 +2738,70 @@ var ba = (e, t, n) => {
|
|
|
2726
2738
|
return {
|
|
2727
2739
|
...e,
|
|
2728
2740
|
code: () => ({
|
|
2729
|
-
conversion:
|
|
2741
|
+
conversion: Ia(e?.code),
|
|
2730
2742
|
priority: 1
|
|
2731
2743
|
}),
|
|
2732
2744
|
em: () => ({
|
|
2733
|
-
conversion:
|
|
2745
|
+
conversion: Ia(e?.em),
|
|
2734
2746
|
priority: 1
|
|
2735
2747
|
}),
|
|
2736
2748
|
span: () => ({
|
|
2737
|
-
conversion:
|
|
2749
|
+
conversion: Ia(e?.span),
|
|
2738
2750
|
priority: 1
|
|
2739
2751
|
}),
|
|
2740
2752
|
strong: () => ({
|
|
2741
|
-
conversion:
|
|
2753
|
+
conversion: Ia(e?.strong),
|
|
2742
2754
|
priority: 1
|
|
2743
2755
|
}),
|
|
2744
2756
|
sub: () => ({
|
|
2745
|
-
conversion:
|
|
2757
|
+
conversion: Ia(e?.sub),
|
|
2746
2758
|
priority: 1
|
|
2747
2759
|
}),
|
|
2748
2760
|
sup: () => ({
|
|
2749
|
-
conversion:
|
|
2761
|
+
conversion: Ia(e?.sup),
|
|
2750
2762
|
priority: 1
|
|
2751
2763
|
})
|
|
2752
2764
|
};
|
|
2753
2765
|
}
|
|
2754
2766
|
static importJSON(e) {
|
|
2755
|
-
return
|
|
2767
|
+
return Fa().updateFromJSON(e);
|
|
2756
2768
|
}
|
|
2757
2769
|
isSimpleText() {
|
|
2758
2770
|
return this.__type === "extended-text" && this.__mode === 0;
|
|
2759
2771
|
}
|
|
2772
|
+
createDOM(e, t) {
|
|
2773
|
+
let n = super.createDOM(e, t);
|
|
2774
|
+
return this.dropInlineTextDecorationIfFormatted(n), n;
|
|
2775
|
+
}
|
|
2776
|
+
updateDOM(e, t, n) {
|
|
2777
|
+
let r = super.updateDOM(e, t, n);
|
|
2778
|
+
return r || this.dropInlineTextDecorationIfFormatted(t), r;
|
|
2779
|
+
}
|
|
2780
|
+
dropInlineTextDecorationIfFormatted(e) {
|
|
2781
|
+
(this.hasFormat("underline") || this.hasFormat("strikethrough")) && e.style.removeProperty("text-decoration");
|
|
2782
|
+
}
|
|
2760
2783
|
};
|
|
2761
|
-
function
|
|
2762
|
-
return
|
|
2784
|
+
function Fa(e = "") {
|
|
2785
|
+
return ge(new Pa(e));
|
|
2763
2786
|
}
|
|
2764
|
-
function
|
|
2787
|
+
function Ia(e) {
|
|
2765
2788
|
return (t) => {
|
|
2766
2789
|
let n = e?.(t);
|
|
2767
2790
|
if (!n) return null;
|
|
2768
2791
|
let r = n.conversion(t);
|
|
2769
2792
|
if (!r) return r;
|
|
2770
|
-
let i = t.style.backgroundColor, a = t.style.color, o = t.style.fontFamily, s = t.style.fontWeight, c = t.style.fontSize
|
|
2793
|
+
let i = t.style.backgroundColor, a = t.style.color, o = t.style.fontFamily, s = t.style.fontWeight, c = t.style.fontSize;
|
|
2771
2794
|
return {
|
|
2772
2795
|
...r,
|
|
2773
2796
|
forChild: (e, t) => {
|
|
2774
2797
|
let n = (r?.forChild ?? ((e) => e))(e, t);
|
|
2775
|
-
if (
|
|
2798
|
+
if (Ae(n)) {
|
|
2776
2799
|
let e = [
|
|
2777
2800
|
i ? `background-color: ${i}` : null,
|
|
2778
2801
|
a ? `color: ${a}` : null,
|
|
2779
2802
|
o ? `font-family: ${o}` : null,
|
|
2780
2803
|
s ? `font-weight: ${s}` : null,
|
|
2781
|
-
c ? `font-size: ${c}` : null
|
|
2782
|
-
l ? `text-decoration: ${l}` : null
|
|
2804
|
+
c ? `font-size: ${c}` : null
|
|
2783
2805
|
].filter((e) => e !== null).join("; ");
|
|
2784
2806
|
if (e.length) return n.setStyle(e);
|
|
2785
2807
|
}
|
|
@@ -2790,98 +2812,86 @@ function Ma(e) {
|
|
|
2790
2812
|
}
|
|
2791
2813
|
//#endregion
|
|
2792
2814
|
//#region src/components/Editor/utils/stripInlineStyleProperty.ts
|
|
2793
|
-
function
|
|
2815
|
+
function La(e, t) {
|
|
2794
2816
|
return e.split(";").map((e) => e.trim()).filter((e) => e && e.split(":")[0].trim().toLowerCase() !== t).join("; ");
|
|
2795
2817
|
}
|
|
2796
2818
|
//#endregion
|
|
2797
2819
|
//#region src/components/Editor/plugins/LinkColorPlugin.tsx
|
|
2798
|
-
function
|
|
2799
|
-
if (!
|
|
2820
|
+
function Ra(e) {
|
|
2821
|
+
if (!H(e, ut)) return;
|
|
2800
2822
|
let t = e.getStyle();
|
|
2801
2823
|
if (!t) return;
|
|
2802
|
-
let n =
|
|
2824
|
+
let n = La(t, "color");
|
|
2803
2825
|
n !== t && e.setStyle(n);
|
|
2804
2826
|
}
|
|
2805
|
-
function
|
|
2806
|
-
let [e] =
|
|
2807
|
-
return O(() => e.registerNodeTransform(
|
|
2827
|
+
function za() {
|
|
2828
|
+
let [e] = B();
|
|
2829
|
+
return O(() => e.registerNodeTransform(Pa, Ra), [e]), null;
|
|
2808
2830
|
}
|
|
2809
2831
|
//#endregion
|
|
2810
2832
|
//#region src/components/Editor/plugins/ImagePlugin.tsx
|
|
2811
|
-
function
|
|
2812
|
-
let [e] =
|
|
2813
|
-
return O(() => e.registerCommand(
|
|
2833
|
+
function Ba() {
|
|
2834
|
+
let [e] = B();
|
|
2835
|
+
return O(() => e.registerCommand(kr, (e) => (we([an(e)]), !0), ze), [e]), null;
|
|
2814
2836
|
}
|
|
2815
2837
|
//#endregion
|
|
2816
2838
|
//#region src/components/Editor/utils/stripImagesFromHtml.ts
|
|
2817
|
-
function
|
|
2839
|
+
function Va(e) {
|
|
2818
2840
|
let t = new DOMParser().parseFromString(e, "text/html");
|
|
2819
2841
|
return t.querySelectorAll("img, picture").forEach((e) => e.remove()), t.body.innerHTML;
|
|
2820
2842
|
}
|
|
2821
2843
|
//#endregion
|
|
2822
2844
|
//#region src/components/Editor/plugins/PasteStripImagePlugin.tsx
|
|
2823
|
-
var
|
|
2824
|
-
function
|
|
2825
|
-
let [e] =
|
|
2845
|
+
var Ha = /<img\b|<picture\b/i;
|
|
2846
|
+
function Ua() {
|
|
2847
|
+
let [e] = B(), { isSourceModeRef: t } = Gr();
|
|
2826
2848
|
return O(() => {
|
|
2827
2849
|
let n = (n) => {
|
|
2828
2850
|
if (t.current) return !1;
|
|
2829
2851
|
let r = "clipboardData" in n ? n.clipboardData : "dataTransfer" in n ? n.dataTransfer : null;
|
|
2830
2852
|
if (!r || r.getData("application/x-lexical-editor") || r.getData("application/x-lexical-drag")) return !1;
|
|
2831
2853
|
let i = r.getData("text/html");
|
|
2832
|
-
if (!(Array.from(r.files).some((e) => e.type.startsWith("image/")) || Array.from(r.items).some((e) => e.type.startsWith("image/")) ||
|
|
2854
|
+
if (!(Array.from(r.files).some((e) => e.type.startsWith("image/")) || Array.from(r.items).some((e) => e.type.startsWith("image/")) || Ha.test(i))) return !1;
|
|
2833
2855
|
n.preventDefault();
|
|
2834
2856
|
let a = r.getData("text/plain");
|
|
2835
|
-
return !
|
|
2836
|
-
let t =
|
|
2857
|
+
return !Ha.test(i) && !a || e.update(() => {
|
|
2858
|
+
let t = R();
|
|
2837
2859
|
if (t === null) return;
|
|
2838
|
-
let n = i ?
|
|
2860
|
+
let n = i ? Va(i) : "", r = document.createElement("div");
|
|
2839
2861
|
if (r.innerHTML = n, n && r.textContent?.trim()) {
|
|
2840
|
-
let t =
|
|
2862
|
+
let t = he(e, new DOMParser().parseFromString(n, "text/html"));
|
|
2841
2863
|
if (t.length) {
|
|
2842
|
-
|
|
2864
|
+
we(t);
|
|
2843
2865
|
return;
|
|
2844
2866
|
}
|
|
2845
2867
|
}
|
|
2846
2868
|
a && t.insertRawText(a);
|
|
2847
|
-
}, { tag:
|
|
2869
|
+
}, { tag: $e }), !0;
|
|
2848
2870
|
};
|
|
2849
|
-
return
|
|
2871
|
+
return Zt(e.registerCommand(Qe, (e) => n(e), Be), e.registerCommand(He, (e) => n(e), Be));
|
|
2850
2872
|
}, [e, t]), null;
|
|
2851
2873
|
}
|
|
2852
2874
|
//#endregion
|
|
2875
|
+
//#region src/components/Editor/utils/tryResetEmptyBlockFormat.ts
|
|
2876
|
+
function Wa() {
|
|
2877
|
+
let e = R();
|
|
2878
|
+
if (!z(e) || !e.isCollapsed()) return !1;
|
|
2879
|
+
let t = e.anchor.getNode();
|
|
2880
|
+
if (H(t, (e) => ht(e) || V(e) || Ft(e))) return !1;
|
|
2881
|
+
let n = t.getTopLevelElement();
|
|
2882
|
+
if (!De(n) || n.getTextContent().trim() !== "" || !(e.format !== 0 || e.style.trim() !== "" || n.getAllTextNodes().some((e) => e.getFormat() !== 0 || e.getStyle() !== ""))) return !1;
|
|
2883
|
+
let r = ve();
|
|
2884
|
+
return n.replace(r), r.select(), Jr(), !0;
|
|
2885
|
+
}
|
|
2886
|
+
//#endregion
|
|
2853
2887
|
//#region src/components/Editor/plugins/EnterKeyPlugin.tsx
|
|
2854
|
-
function
|
|
2855
|
-
let [e] =
|
|
2856
|
-
return O(() => e.registerCommand(
|
|
2857
|
-
let r = Date.now(), i = r - t.current;
|
|
2858
|
-
return t.current = r, i < 250 && i > 0 ? e.getEditorState().read(() => {
|
|
2859
|
-
let e = I();
|
|
2860
|
-
return L(e) ? !!B(e.anchor.getNode(), (e) => ht(e) || z(e) || Pt(e)) : !1;
|
|
2861
|
-
}, { editor: e }) ? !1 : (e.update(() => {
|
|
2862
|
-
let e = I();
|
|
2863
|
-
if (L(e)) {
|
|
2864
|
-
let t = e.anchor.getNode().getTopLevelElement();
|
|
2865
|
-
if (t && t.getTextContent().trim() === "") {
|
|
2866
|
-
let n = be();
|
|
2867
|
-
At(e, {
|
|
2868
|
-
"background-color": "",
|
|
2869
|
-
color: "",
|
|
2870
|
-
"font-size": "",
|
|
2871
|
-
"font-weight": "",
|
|
2872
|
-
"font-style": "",
|
|
2873
|
-
"text-decoration": ""
|
|
2874
|
-
}), t.replace(n), n.select();
|
|
2875
|
-
let r = n.getPreviousSibling();
|
|
2876
|
-
r && r.getTextContent().trim() === "" && r.remove();
|
|
2877
|
-
}
|
|
2878
|
-
}
|
|
2879
|
-
}), n?.preventDefault(), !0) : !1;
|
|
2880
|
-
}, He), [e]), null;
|
|
2888
|
+
function Ga() {
|
|
2889
|
+
let [e] = B();
|
|
2890
|
+
return O(() => e.registerCommand(Ye, (e) => e?.shiftKey ? !1 : Wa() ? (e?.preventDefault(), !0) : !1, Ve), [e]), null;
|
|
2881
2891
|
}
|
|
2882
2892
|
//#endregion
|
|
2883
2893
|
//#region src/components/Editor/utils/codeHighlighter.ts
|
|
2884
|
-
var
|
|
2894
|
+
var Ka = {
|
|
2885
2895
|
css: () => import("@shikijs/langs/css"),
|
|
2886
2896
|
html: () => import("@shikijs/langs/html"),
|
|
2887
2897
|
xml: () => import("@shikijs/langs/xml"),
|
|
@@ -2902,70 +2912,70 @@ var Va = {
|
|
|
2902
2912
|
bash: () => import("@shikijs/langs/shellscript"),
|
|
2903
2913
|
lua: () => import("@shikijs/langs/lua"),
|
|
2904
2914
|
markdown: () => import("@shikijs/langs/markdown")
|
|
2905
|
-
},
|
|
2915
|
+
}, qa = (e) => e === "bash" ? "shellscript" : e, Ja = (e) => e in Ka, Ya = null, Xa = null, Za = /* @__PURE__ */ new Map(), Qa = () => (Ya ||= Promise.all([import("@shikijs/core"), import("@shikijs/engine-javascript")]).then(([{ createHighlighterCoreSync: e }, { createJavaScriptRegexEngine: t }]) => e({
|
|
2906
2916
|
engine: t(),
|
|
2907
2917
|
langs: [],
|
|
2908
2918
|
themes: []
|
|
2909
2919
|
})).catch((e) => {
|
|
2910
|
-
throw
|
|
2911
|
-
}),
|
|
2912
|
-
let t =
|
|
2913
|
-
return t || (t =
|
|
2914
|
-
let n =
|
|
2920
|
+
throw Ya = null, e;
|
|
2921
|
+
}), Ya), $a = (e, t) => Ja(t) && e.getLoadedLanguages().includes(qa(t)), eo = (e) => {
|
|
2922
|
+
let t = Za.get(e);
|
|
2923
|
+
return t || (t = Qa().then(async (t) => {
|
|
2924
|
+
let n = qa(e);
|
|
2915
2925
|
if (!t.getLoadedLanguages().includes(n)) {
|
|
2916
|
-
let n = await
|
|
2926
|
+
let n = await Ka[e]();
|
|
2917
2927
|
await t.loadLanguage(n.default);
|
|
2918
2928
|
}
|
|
2919
2929
|
return t;
|
|
2920
2930
|
}).catch((t) => {
|
|
2921
|
-
throw
|
|
2922
|
-
}),
|
|
2923
|
-
},
|
|
2931
|
+
throw Za.delete(e), t;
|
|
2932
|
+
}), Za.set(e, t)), t;
|
|
2933
|
+
}, to = () => (Xa ||= Qa().then(async (e) => {
|
|
2924
2934
|
if (!e.getLoadedThemes().includes("github-light")) {
|
|
2925
2935
|
let t = await import("@shikijs/themes/github-light");
|
|
2926
2936
|
await e.loadTheme(t.default);
|
|
2927
2937
|
}
|
|
2928
2938
|
return e;
|
|
2929
2939
|
}).catch((e) => {
|
|
2930
|
-
throw
|
|
2931
|
-
}),
|
|
2940
|
+
throw Xa = null, e;
|
|
2941
|
+
}), Xa), no = (e, t, n) => {
|
|
2932
2942
|
let r = e.getTextContent();
|
|
2933
|
-
if (e.getStyle() && e.setStyle(""), !n ||
|
|
2934
|
-
let i =
|
|
2943
|
+
if (e.getStyle() && e.setStyle(""), !n || !$a(n, t)) return Tt(r);
|
|
2944
|
+
let i = qa(t), a = n.codeToTokens(r, {
|
|
2935
2945
|
lang: i,
|
|
2936
|
-
theme:
|
|
2946
|
+
theme: wn
|
|
2937
2947
|
}), o = [];
|
|
2938
2948
|
return a.tokens.forEach((e, t) => {
|
|
2939
|
-
t && o.push(
|
|
2949
|
+
t && o.push(_e()), e.forEach((e) => {
|
|
2940
2950
|
e.content.split(" ").forEach((t, n) => {
|
|
2941
|
-
if (n && o.push(
|
|
2951
|
+
if (n && o.push(ye()), t === "") return;
|
|
2942
2952
|
let r = St(t), i = typeof e.htmlStyle == "string" ? e.htmlStyle : e.htmlStyle ? Object.entries(e.htmlStyle).map(([e, t]) => `${e}:${t}`).join(";") : e.color ? `color: ${e.color}` : "";
|
|
2943
2953
|
i && r.setStyle(i), o.push(r);
|
|
2944
2954
|
});
|
|
2945
2955
|
});
|
|
2946
2956
|
}), o;
|
|
2947
|
-
},
|
|
2948
|
-
let n =
|
|
2949
|
-
if (!
|
|
2950
|
-
let r =
|
|
2951
|
-
if (!
|
|
2957
|
+
}, ro = (e, t) => {
|
|
2958
|
+
let n = Se(e);
|
|
2959
|
+
if (!V(n) || !n.isAttached()) return;
|
|
2960
|
+
let r = R();
|
|
2961
|
+
if (!z(r)) {
|
|
2952
2962
|
t();
|
|
2953
2963
|
return;
|
|
2954
2964
|
}
|
|
2955
2965
|
let { anchor: i } = r;
|
|
2956
|
-
if (
|
|
2966
|
+
if (H(i.getNode(), V) !== n) {
|
|
2957
2967
|
t();
|
|
2958
2968
|
return;
|
|
2959
2969
|
}
|
|
2960
|
-
let a = i.offset, o = i.type === "element" &&
|
|
2970
|
+
let a = i.offset, o = i.type === "element" && Ee(n.getChildAtIndex(i.offset - 1)), s = 0;
|
|
2961
2971
|
if (o || (s = a + i.getNode().getPreviousSiblings().reduce((e, t) => e + t.getTextContentSize(), 0)), t()) {
|
|
2962
2972
|
if (o) {
|
|
2963
2973
|
i.getNode().select(a, a);
|
|
2964
2974
|
return;
|
|
2965
2975
|
}
|
|
2966
2976
|
n.getChildren().some((e) => {
|
|
2967
|
-
let t =
|
|
2968
|
-
if (t ||
|
|
2977
|
+
let t = Ae(e);
|
|
2978
|
+
if (t || Ee(e)) {
|
|
2969
2979
|
let n = e.getTextContentSize();
|
|
2970
2980
|
if (t && n >= s) return e.select(s, s), !0;
|
|
2971
2981
|
s -= n;
|
|
@@ -2973,11 +2983,11 @@ var Va = {
|
|
|
2973
2983
|
return !1;
|
|
2974
2984
|
});
|
|
2975
2985
|
}
|
|
2976
|
-
},
|
|
2986
|
+
}, io = (e, t) => wt(e) && wt(t) && e.__text === t.__text && e.__highlightType === t.__highlightType && e.__style === t.__style || ke(e) && ke(t) || Ee(e) && Ee(t), ao = (e, t) => {
|
|
2977
2987
|
let n = 0;
|
|
2978
|
-
for (; n < e.length &&
|
|
2988
|
+
for (; n < e.length && io(e[n], t[n]);) n++;
|
|
2979
2989
|
let r = e.length, i = t.length, a = Math.min(r, i) - n, o = 0;
|
|
2980
|
-
for (; o < a;) if (o++,
|
|
2990
|
+
for (; o < a;) if (o++, !io(e[r - o], t[i - o])) {
|
|
2981
2991
|
o--;
|
|
2982
2992
|
break;
|
|
2983
2993
|
}
|
|
@@ -2986,21 +2996,21 @@ var Va = {
|
|
|
2986
2996
|
to: r - o,
|
|
2987
2997
|
nodesForReplacement: t.slice(n, i - o)
|
|
2988
2998
|
};
|
|
2989
|
-
},
|
|
2990
|
-
let a = i.getKey(), o =
|
|
2999
|
+
}, oo = (e, t, n, r, i) => {
|
|
3000
|
+
let a = i.getKey(), o = Dn(i.getLanguage());
|
|
2991
3001
|
if (i.getLanguage() !== o && i.setLanguage(o), o === "plaintext") i.getIsSyntaxHighlightSupported() && i.setIsSyntaxHighlightSupported(!1);
|
|
2992
3002
|
else {
|
|
2993
|
-
i.getTheme() !== "github-light" && i.setTheme(
|
|
2994
|
-
let s = t ? t.getLoadedThemes().includes("github-light") ?
|
|
3003
|
+
i.getTheme() !== "github-light" && i.setTheme(wn);
|
|
3004
|
+
let s = t ? t.getLoadedThemes().includes("github-light") ? Ja(o) && !$a(t, o) ? eo(o) : null : to() : Qa();
|
|
2995
3005
|
if (s) {
|
|
2996
3006
|
i.getIsSyntaxHighlightSupported() && i.setIsSyntaxHighlightSupported(!1), n.pendingKeys.add(a), n.loading !== s && (n.loading = s, s.then((t) => {
|
|
2997
3007
|
r(t);
|
|
2998
3008
|
let i = [...n.pendingKeys];
|
|
2999
3009
|
n.pendingKeys.clear(), n.loading = null, e.update(() => {
|
|
3000
3010
|
i.forEach((e) => {
|
|
3001
|
-
|
|
3011
|
+
Se(e)?.markDirty();
|
|
3002
3012
|
});
|
|
3003
|
-
}, { tag:
|
|
3013
|
+
}, { tag: qe });
|
|
3004
3014
|
}, () => {
|
|
3005
3015
|
n.pendingKeys.clear(), n.loading = null;
|
|
3006
3016
|
}));
|
|
@@ -3008,20 +3018,20 @@ var Va = {
|
|
|
3008
3018
|
}
|
|
3009
3019
|
i.getIsSyntaxHighlightSupported() || i.setIsSyntaxHighlightSupported(!0);
|
|
3010
3020
|
}
|
|
3011
|
-
n.nodesCurrentlyHighlighting.has(a) || (n.nodesCurrentlyHighlighting.add(a), n.didTransform || (n.didTransform = !0,
|
|
3021
|
+
n.nodesCurrentlyHighlighting.has(a) || (n.nodesCurrentlyHighlighting.add(a), n.didTransform || (n.didTransform = !0, Me(() => {
|
|
3012
3022
|
n.didTransform = !1, n.nodesCurrentlyHighlighting.clear();
|
|
3013
|
-
})),
|
|
3014
|
-
let e =
|
|
3015
|
-
if (!
|
|
3016
|
-
let n =
|
|
3023
|
+
})), ro(a, () => {
|
|
3024
|
+
let e = Se(a);
|
|
3025
|
+
if (!V(e) || !e.isAttached()) return !1;
|
|
3026
|
+
let n = no(e, Dn(e.getLanguage()), t), { from: r, to: i, nodesForReplacement: o } = ao(e.getChildren(), n);
|
|
3017
3027
|
return r !== i || o.length ? (e.splice(r, i - r, o), !0) : !1;
|
|
3018
3028
|
}));
|
|
3019
|
-
},
|
|
3029
|
+
}, so = (e, t, n, r, i) => {
|
|
3020
3030
|
let a = i.getParent();
|
|
3021
|
-
|
|
3031
|
+
V(a) ? oo(e, t, n, r, a) : wt(i) && i.replace(be(i.__text));
|
|
3022
3032
|
};
|
|
3023
|
-
function
|
|
3024
|
-
let [e] =
|
|
3033
|
+
function co() {
|
|
3034
|
+
let [e] = B();
|
|
3025
3035
|
return O(() => {
|
|
3026
3036
|
if (!e.hasNodes([Dt, Et])) throw Error("CodeHighlightPlugin: CodeNode or CodeHighlightNode not registered on editor");
|
|
3027
3037
|
let t = null, n = {
|
|
@@ -3032,16 +3042,16 @@ function ro() {
|
|
|
3032
3042
|
}, r = (e) => {
|
|
3033
3043
|
t = e;
|
|
3034
3044
|
}, i = (e) => {
|
|
3035
|
-
let t =
|
|
3036
|
-
if (!
|
|
3045
|
+
let t = Se(e);
|
|
3046
|
+
if (!V(t)) return;
|
|
3037
3047
|
let n = t.getChildrenSize();
|
|
3038
3048
|
n === 0 ? t.selectStart() : t.select(0, n);
|
|
3039
3049
|
}, a = (t) => {
|
|
3040
3050
|
if (!(t instanceof Node) || !e.getRootElement()?.contains(t)) return null;
|
|
3041
3051
|
let n = null;
|
|
3042
3052
|
return e.getEditorState().read(() => {
|
|
3043
|
-
let e =
|
|
3044
|
-
|
|
3053
|
+
let e = xe(t), r = e ? H(e, V) : null;
|
|
3054
|
+
V(r) && (n = r.getKey());
|
|
3045
3055
|
}, { editor: e }), n;
|
|
3046
3056
|
}, o = null, s = (t, n, r) => {
|
|
3047
3057
|
t.preventDefault(), r && (o = n), e.update(() => {
|
|
@@ -3064,11 +3074,11 @@ function ro() {
|
|
|
3064
3074
|
t?.removeEventListener("mousedown", c, !0), t?.removeEventListener("mouseup", u, !0), t?.removeEventListener("dblclick", l, !0), e?.addEventListener("mousedown", c, !0), e?.addEventListener("mouseup", u, !0), e?.addEventListener("dblclick", l, !0);
|
|
3065
3075
|
};
|
|
3066
3076
|
return st(Ot(e), e.registerNodeTransform(Dt, (i) => {
|
|
3067
|
-
|
|
3077
|
+
oo(e, t, n, r, i);
|
|
3068
3078
|
}), e.registerNodeTransform(rt, (i) => {
|
|
3069
|
-
|
|
3079
|
+
so(e, t, n, r, i);
|
|
3070
3080
|
}), e.registerNodeTransform(Et, (i) => {
|
|
3071
|
-
|
|
3081
|
+
so(e, t, n, r, i);
|
|
3072
3082
|
}), e.registerRootListener(d), () => {
|
|
3073
3083
|
d(null, e.getRootElement());
|
|
3074
3084
|
});
|
|
@@ -3076,19 +3086,19 @@ function ro() {
|
|
|
3076
3086
|
}
|
|
3077
3087
|
//#endregion
|
|
3078
3088
|
//#region src/components/Editor/plugins/TablePlugin.tsx
|
|
3079
|
-
function
|
|
3080
|
-
let [e] =
|
|
3081
|
-
return O(() => (Gt(e, !0),
|
|
3089
|
+
function lo() {
|
|
3090
|
+
let [e] = B();
|
|
3091
|
+
return O(() => (Gt(e, !0), Zt(Ut(e), Wt(e, !1), Ht(e), e.registerNodeTransform(zt, (e) => {
|
|
3082
3092
|
e.getBackgroundColor() !== null && e.setBackgroundColor(null);
|
|
3083
|
-
}), e.registerCommand(
|
|
3084
|
-
let t =
|
|
3085
|
-
if (!
|
|
3093
|
+
}), e.registerCommand(Xe, (e) => {
|
|
3094
|
+
let t = R();
|
|
3095
|
+
if (!z(t) || !t.isCollapsed()) return !1;
|
|
3086
3096
|
let n = Nt(t.anchor.getNode());
|
|
3087
3097
|
if (n === null) return !1;
|
|
3088
3098
|
let r = e.shiftKey ? "previous" : "next", i = r === "next" ? "getNextSibling" : "getPreviousSibling", a = r === "next" ? "getFirstChild" : "getLastChild", o = n[i](), s = null;
|
|
3089
3099
|
if (Pt(o)) s = o;
|
|
3090
3100
|
else {
|
|
3091
|
-
let e =
|
|
3101
|
+
let e = H(n, It);
|
|
3092
3102
|
if (e !== null) for (let t = e[i](); t !== null; t = t[i]()) {
|
|
3093
3103
|
if (!It(t)) continue;
|
|
3094
3104
|
let e = t[a]();
|
|
@@ -3102,60 +3112,76 @@ function io() {
|
|
|
3102
3112
|
let e = s.getFirstDescendant();
|
|
3103
3113
|
e ? e.selectStart() : s.selectStart();
|
|
3104
3114
|
} else {
|
|
3105
|
-
let e =
|
|
3115
|
+
let e = H(n, Ft);
|
|
3106
3116
|
e && (r === "next" ? e.selectNext() : e.selectPrevious());
|
|
3107
3117
|
}
|
|
3108
3118
|
return !0;
|
|
3109
|
-
},
|
|
3119
|
+
}, Be))), [e]), null;
|
|
3110
3120
|
}
|
|
3111
3121
|
//#endregion
|
|
3112
|
-
//#region src/components/Editor/
|
|
3113
|
-
var
|
|
3114
|
-
|
|
3115
|
-
|
|
3116
|
-
|
|
3122
|
+
//#region src/components/Editor/utils/clampElementIndent.ts
|
|
3123
|
+
var uo = (e) => {
|
|
3124
|
+
let t = e.getIndent();
|
|
3125
|
+
t < 8 && e.setIndent(t + 1);
|
|
3126
|
+
}, fo = (e) => {
|
|
3127
|
+
let t = e.getIndent();
|
|
3128
|
+
if (t > 8) {
|
|
3129
|
+
e.setIndent(8);
|
|
3130
|
+
return;
|
|
3131
|
+
}
|
|
3132
|
+
t < 0 && e.setIndent(0);
|
|
3133
|
+
}, po = "\xA0".repeat(4);
|
|
3134
|
+
function mo() {
|
|
3135
|
+
let [e] = B();
|
|
3136
|
+
return O(() => e.registerCommand(Xe, (t) => {
|
|
3117
3137
|
if (t.shiftKey) return !1;
|
|
3118
|
-
let n =
|
|
3119
|
-
if (!
|
|
3138
|
+
let n = R();
|
|
3139
|
+
if (!z(n)) return !1;
|
|
3120
3140
|
let r = n.anchor.getNode();
|
|
3121
|
-
if (Nt(r) !== null ||
|
|
3141
|
+
if (Nt(r) !== null || H(r, V)) return !1;
|
|
3122
3142
|
t.preventDefault();
|
|
3123
|
-
let i =
|
|
3143
|
+
let i = H(r, ht);
|
|
3124
3144
|
if (ht(i)) {
|
|
3125
3145
|
let e = new Set([i]);
|
|
3126
3146
|
for (let t of n.getNodes()) {
|
|
3127
|
-
let n =
|
|
3147
|
+
let n = H(t, ht);
|
|
3128
3148
|
ht(n) && e.add(n);
|
|
3129
3149
|
}
|
|
3130
|
-
for (let t of e)
|
|
3150
|
+
for (let t of e) uo(t);
|
|
3131
3151
|
return !0;
|
|
3132
3152
|
}
|
|
3133
3153
|
let a = r.getTopLevelElement(), o = n.focus.getNode().getTopLevelElement();
|
|
3134
|
-
return !n.isCollapsed() && a && o && a !== o ? e.dispatchCommand(
|
|
3135
|
-
},
|
|
3154
|
+
return !n.isCollapsed() && a && o && a !== o ? e.dispatchCommand(Je, void 0) : (n.insertText(po), !0);
|
|
3155
|
+
}, ze), [e]), null;
|
|
3156
|
+
}
|
|
3157
|
+
//#endregion
|
|
3158
|
+
//#region src/components/Editor/plugins/IndentLimitPlugin.tsx
|
|
3159
|
+
function ho() {
|
|
3160
|
+
let [e] = B();
|
|
3161
|
+
return O(() => Zt(e.registerCommand(Je, () => Yt(uo), Be), e.registerNodeTransform(et, fo), e.registerNodeTransform(Jt, fo), e.registerNodeTransform(yt, fo)), [e]), null;
|
|
3136
3162
|
}
|
|
3137
3163
|
//#endregion
|
|
3138
3164
|
//#region src/components/Editor/plugins/MaxLengthPlugin.tsx
|
|
3139
|
-
function
|
|
3140
|
-
let [n] =
|
|
3165
|
+
function go({ maxLength: e, onMaxLengthExceed: t }) {
|
|
3166
|
+
let [n] = B(), { isSourceModeRef: r } = Gr(), i = M(t);
|
|
3141
3167
|
return i.current = t, O(() => {
|
|
3142
3168
|
let t = null;
|
|
3143
3169
|
return n.registerNodeTransform(nt, (a) => {
|
|
3144
3170
|
if (r.current) return;
|
|
3145
3171
|
let o = a.getTextContentSize();
|
|
3146
3172
|
if (o <= e) return;
|
|
3147
|
-
let s = n.getEditorState(), c = s.read(() => a.getTextContentSize()), l = o - e, u =
|
|
3173
|
+
let s = n.getEditorState(), c = s.read(() => a.getTextContentSize()), l = o - e, u = R();
|
|
3148
3174
|
if (c === e && t !== s) {
|
|
3149
|
-
t = s,
|
|
3175
|
+
t = s, Xt(n, s), i.current?.();
|
|
3150
3176
|
return;
|
|
3151
3177
|
}
|
|
3152
|
-
if (
|
|
3178
|
+
if (z(u) && u.isCollapsed()) {
|
|
3153
3179
|
Mt(n, u.anchor, l), i.current?.();
|
|
3154
3180
|
return;
|
|
3155
3181
|
}
|
|
3156
3182
|
a.selectEnd();
|
|
3157
|
-
let d =
|
|
3158
|
-
|
|
3183
|
+
let d = R();
|
|
3184
|
+
z(d) && (Mt(n, d.anchor, l), i.current?.());
|
|
3159
3185
|
});
|
|
3160
3186
|
}, [
|
|
3161
3187
|
n,
|
|
@@ -3165,19 +3191,19 @@ function so({ maxLength: e, onMaxLengthExceed: t }) {
|
|
|
3165
3191
|
}
|
|
3166
3192
|
//#endregion
|
|
3167
3193
|
//#region src/components/Editor/utils/textLength.ts
|
|
3168
|
-
function
|
|
3194
|
+
function _o(e) {
|
|
3169
3195
|
return typeof e == "number" && Number.isFinite(e) && e > 0;
|
|
3170
3196
|
}
|
|
3171
|
-
function
|
|
3172
|
-
let n =
|
|
3197
|
+
function vo(e, t) {
|
|
3198
|
+
let n = L(), r = n.getTextContentSize();
|
|
3173
3199
|
if (r <= t) return !1;
|
|
3174
3200
|
let i = r - t;
|
|
3175
3201
|
n.selectEnd();
|
|
3176
|
-
let a =
|
|
3177
|
-
return
|
|
3202
|
+
let a = R();
|
|
3203
|
+
return z(a) ? Mt(e, a.anchor, i) : yo(i), !0;
|
|
3178
3204
|
}
|
|
3179
|
-
function
|
|
3180
|
-
let t = e, n =
|
|
3205
|
+
function yo(e) {
|
|
3206
|
+
let t = e, n = L().getAllTextNodes();
|
|
3181
3207
|
for (let e = n.length - 1; e >= 0 && t > 0; e--) {
|
|
3182
3208
|
let r = n[e], i = r.getTextContent();
|
|
3183
3209
|
i.length !== 0 && (i.length <= t ? (t -= i.length, r.remove()) : (r.setTextContent(i.slice(0, i.length - t)), t = 0));
|
|
@@ -3185,7 +3211,7 @@ function uo(e) {
|
|
|
3185
3211
|
}
|
|
3186
3212
|
//#endregion
|
|
3187
3213
|
//#region src/components/Editor/utils/formatEditorHtml.ts
|
|
3188
|
-
var
|
|
3214
|
+
var bo = new Set([
|
|
3189
3215
|
"area",
|
|
3190
3216
|
"base",
|
|
3191
3217
|
"br",
|
|
@@ -3200,65 +3226,65 @@ var fo = new Set([
|
|
|
3200
3226
|
"source",
|
|
3201
3227
|
"track",
|
|
3202
3228
|
"wbr"
|
|
3203
|
-
]),
|
|
3204
|
-
let r = e.tagName.toLowerCase(), i = `<${r}${
|
|
3205
|
-
if (
|
|
3206
|
-
let a = n || r === "pre", o =
|
|
3207
|
-
return a || !
|
|
3208
|
-
},
|
|
3229
|
+
]), xo = new Set(/* @__PURE__ */ "address.article.aside.blockquote.div.dl.dt.dd.fieldset.figcaption.figure.footer.form.h1.h2.h3.h4.h5.h6.header.hr.li.main.nav.ol.p.pre.section.table.tbody.td.tfoot.th.thead.tr.ul".split(".")), So = 80, Co = (e) => e.replace(/&/g, "&").replace(/"/g, """), wo = (e) => e.replace(/&/g, "&").replace(/</g, "<").replace(/>/g, ">"), To = (e) => Array.from(e.attributes).map((e) => ` ${e.name}="${Co(e.value)}"`).join(""), Eo = (e) => " ".repeat(e), Do = (e, t, n) => {
|
|
3230
|
+
let r = e.tagName.toLowerCase(), i = `<${r}${To(e)}>`;
|
|
3231
|
+
if (bo.has(r)) return i;
|
|
3232
|
+
let a = n || r === "pre", o = Oo(e, t + 1, a), s = `</${r}>`;
|
|
3233
|
+
return a || !xo.has(r) ? `${i}${o}${s}` : Array.from(e.children).some((e) => xo.has(e.tagName.toLowerCase())) ? `${i}\n${Oo(e, t + 1, !1, !0)}\n${Eo(t)}${s}` : i.length + o.length + s.length > So ? `${i}\n${Eo(t + 1)}${o}\n${Eo(t)}${s}` : `${i}${o}${s}`;
|
|
3234
|
+
}, Oo = (e, t, n, r = !1) => {
|
|
3209
3235
|
let i = [];
|
|
3210
3236
|
for (let r of Array.from(e.childNodes)) {
|
|
3211
3237
|
if (r.nodeType === Node.TEXT_NODE) {
|
|
3212
3238
|
let e = r.textContent ?? "";
|
|
3213
3239
|
if (n) {
|
|
3214
|
-
i.push(
|
|
3240
|
+
i.push(wo(e));
|
|
3215
3241
|
continue;
|
|
3216
3242
|
}
|
|
3217
|
-
e.trim() && i.push(
|
|
3243
|
+
e.trim() && i.push(wo(e));
|
|
3218
3244
|
continue;
|
|
3219
3245
|
}
|
|
3220
3246
|
if (r.nodeType === Node.COMMENT_NODE) {
|
|
3221
3247
|
i.push(`<!--${r.data}-->`);
|
|
3222
3248
|
continue;
|
|
3223
3249
|
}
|
|
3224
|
-
r.nodeType === Node.ELEMENT_NODE && i.push(
|
|
3250
|
+
r.nodeType === Node.ELEMENT_NODE && i.push(Do(r, t, n));
|
|
3225
3251
|
}
|
|
3226
|
-
return n || !r ? i.join("") : i.map((e) => `${
|
|
3252
|
+
return n || !r ? i.join("") : i.map((e) => `${Eo(t)}${e}`).join("\n");
|
|
3227
3253
|
};
|
|
3228
|
-
function
|
|
3229
|
-
return e.trim() ?
|
|
3254
|
+
function ko(e) {
|
|
3255
|
+
return e.trim() ? Oo(new DOMParser().parseFromString($i(e), "text/html").body, 0, !1, !0).trimEnd() : e;
|
|
3230
3256
|
}
|
|
3231
3257
|
//#endregion
|
|
3232
3258
|
//#region src/components/Editor/utils/writeHtmlSource.ts
|
|
3233
|
-
function
|
|
3234
|
-
|
|
3259
|
+
function Ao(e) {
|
|
3260
|
+
L().clear();
|
|
3235
3261
|
let t = Ct("html");
|
|
3236
|
-
if (
|
|
3262
|
+
if (L().append(t), !e) return;
|
|
3237
3263
|
t.select();
|
|
3238
|
-
let n =
|
|
3239
|
-
|
|
3264
|
+
let n = R();
|
|
3265
|
+
z(n) && n.insertRawText(e);
|
|
3240
3266
|
}
|
|
3241
3267
|
//#endregion
|
|
3242
3268
|
//#region src/components/Editor/plugins/SourceModePlugin.tsx
|
|
3243
|
-
function
|
|
3244
|
-
let [r] =
|
|
3269
|
+
function jo({ children: e, maxLength: t, onMaxLengthExceed: n }) {
|
|
3270
|
+
let [r] = B(), [i, a] = N(!1), o = M(!1), s = M(n);
|
|
3245
3271
|
s.current = n;
|
|
3246
|
-
let c =
|
|
3272
|
+
let c = _o(t) ? t : void 0, l = T(() => {
|
|
3247
3273
|
if (o.current) return;
|
|
3248
3274
|
let e = "", t = "";
|
|
3249
3275
|
r.getEditorState().read(() => {
|
|
3250
|
-
t =
|
|
3276
|
+
t = L().getTextContent(), e = me(r, null);
|
|
3251
3277
|
}, { editor: r });
|
|
3252
|
-
let n =
|
|
3278
|
+
let n = Ti(e, t) ? "" : X(e);
|
|
3253
3279
|
o.current = !0, a(!0), r.update(() => {
|
|
3254
|
-
|
|
3255
|
-
}), r.dispatchCommand(
|
|
3280
|
+
Ao(ko(n));
|
|
3281
|
+
}), r.dispatchCommand(Le, void 0);
|
|
3256
3282
|
}, [r]), u = T(() => {
|
|
3257
3283
|
if (!o.current) return;
|
|
3258
3284
|
let e = !1;
|
|
3259
3285
|
o.current = !1, r.update(() => {
|
|
3260
|
-
|
|
3261
|
-
}), a(!1), r.dispatchCommand(
|
|
3286
|
+
wi(r, X(L().getTextContent())), c !== void 0 && (e = vo(r, c)), kn(!0);
|
|
3287
|
+
}), a(!1), r.dispatchCommand(Le, void 0), e && s.current?.();
|
|
3262
3288
|
}, [r, c]), d = T(() => {
|
|
3263
3289
|
if (o.current) {
|
|
3264
3290
|
u();
|
|
@@ -3276,51 +3302,51 @@ function Co({ children: e, maxLength: t, onMaxLengthExceed: n }) {
|
|
|
3276
3302
|
if (!n) return !0;
|
|
3277
3303
|
let i = X(n);
|
|
3278
3304
|
return r.update(() => {
|
|
3279
|
-
let e =
|
|
3280
|
-
|
|
3281
|
-
}, { tag:
|
|
3305
|
+
let e = R();
|
|
3306
|
+
z(e) && i && e.insertRawText(i);
|
|
3307
|
+
}, { tag: $e }), !0;
|
|
3282
3308
|
};
|
|
3283
|
-
return
|
|
3309
|
+
return Zt(r.registerNodeTransform(nt, () => {
|
|
3284
3310
|
if (!o.current) return;
|
|
3285
|
-
let e =
|
|
3286
|
-
|
|
3287
|
-
}), r.registerCommand(
|
|
3311
|
+
let e = L(), t = e.getChildrenSize() === 1 ? e.getFirstChild() : null;
|
|
3312
|
+
V(t) && t.getLanguage() === "html" || Ao(e.getTextContent());
|
|
3313
|
+
}), r.registerCommand(Qe, e, Re), r.registerCommand(He, e, Re));
|
|
3288
3314
|
}, [r]);
|
|
3289
|
-
let f =
|
|
3315
|
+
let f = j(() => ({
|
|
3290
3316
|
isSourceMode: i,
|
|
3291
3317
|
isSourceModeRef: o,
|
|
3292
3318
|
toggleSourceMode: d
|
|
3293
3319
|
}), [i, d]);
|
|
3294
|
-
return /* @__PURE__ */ y(
|
|
3320
|
+
return /* @__PURE__ */ y(Wr.Provider, {
|
|
3295
3321
|
value: f,
|
|
3296
3322
|
children: e
|
|
3297
3323
|
});
|
|
3298
3324
|
}
|
|
3299
3325
|
//#endregion
|
|
3300
3326
|
//#region src/components/Editor/plugins/HeadingPlugin.tsx
|
|
3301
|
-
function
|
|
3327
|
+
function Mo(e) {
|
|
3302
3328
|
let t = e.getTag();
|
|
3303
3329
|
if (t === "h4" || t === "h5" || t === "h6") {
|
|
3304
|
-
e.replace(
|
|
3330
|
+
e.replace(ve(), !0);
|
|
3305
3331
|
return;
|
|
3306
3332
|
}
|
|
3307
3333
|
for (let t of e.getAllTextNodes()) {
|
|
3308
3334
|
let e = t.getStyle();
|
|
3309
3335
|
if (!e) continue;
|
|
3310
|
-
let n =
|
|
3336
|
+
let n = La(e, "font-size");
|
|
3311
3337
|
n !== e && t.setStyle(n);
|
|
3312
3338
|
}
|
|
3313
3339
|
}
|
|
3314
|
-
function
|
|
3315
|
-
let [e] =
|
|
3316
|
-
return O(() => e.registerNodeTransform(Jt,
|
|
3340
|
+
function No() {
|
|
3341
|
+
let [e] = B();
|
|
3342
|
+
return O(() => e.registerNodeTransform(Jt, Mo), [e]), null;
|
|
3317
3343
|
}
|
|
3318
3344
|
//#endregion
|
|
3319
3345
|
//#region src/components/Editor/LengthBadge.tsx
|
|
3320
|
-
var
|
|
3346
|
+
var Po = ({ current: e, maxLength: t }) => {
|
|
3321
3347
|
let n = e > t;
|
|
3322
3348
|
return /* @__PURE__ */ b("div", {
|
|
3323
|
-
className:
|
|
3349
|
+
className: F($["bsy-lexical-editor__length-badge"], n && $["bsy-lexical-editor__length-badge--exceeded"]),
|
|
3324
3350
|
"aria-live": "polite",
|
|
3325
3351
|
children: [
|
|
3326
3352
|
e,
|
|
@@ -3329,33 +3355,33 @@ var Eo = ({ current: e, maxLength: t }) => {
|
|
|
3329
3355
|
]
|
|
3330
3356
|
});
|
|
3331
3357
|
};
|
|
3332
|
-
|
|
3358
|
+
Po.displayName = "BsyLexicalEditorLengthBadge";
|
|
3333
3359
|
//#endregion
|
|
3334
3360
|
//#region src/components/Editor/utils/unwrapTypesetFence.ts
|
|
3335
|
-
var
|
|
3361
|
+
var Fo = /^\uFEFF/, Io = /^ {0,3}`{1,3}[A-Za-z]*$/, Lo = /^( {0,3})([^`<]*?)```[ \t]*([A-Za-z0-9_-]*)[ \t]*(.*)$/, Ro = /^ {0,3}```[ \t]*$/, zo = /<\/?[a-zA-Z]/, Bo = /<[a-zA-Z!]/, Vo = (e) => Bo.test(e), Ho = (e) => zo.test(e), Uo = (e) => e.replace(Fo, "").replace(/\r\n/g, "\n"), Wo = (e) => {
|
|
3336
3362
|
let t = e.replace(/\n+$/, ""), n = t.lastIndexOf("\n"), r = n === -1 ? t : t.slice(n + 1);
|
|
3337
|
-
return
|
|
3363
|
+
return Io.test(r) ? {
|
|
3338
3364
|
text: n === -1 ? "" : t.slice(0, n),
|
|
3339
3365
|
withheld: !0
|
|
3340
3366
|
} : {
|
|
3341
3367
|
text: e,
|
|
3342
3368
|
withheld: !1
|
|
3343
3369
|
};
|
|
3344
|
-
},
|
|
3345
|
-
let t =
|
|
3370
|
+
}, Go = (e) => {
|
|
3371
|
+
let t = Lo.exec(e);
|
|
3346
3372
|
return t ? { sameLineBody: t[4] ?? "" } : null;
|
|
3347
|
-
},
|
|
3373
|
+
}, Ko = (e) => {
|
|
3348
3374
|
let t = e.replace(/[ \t]*```[ \t]*$/, "");
|
|
3349
3375
|
return t === e ? e : t;
|
|
3350
|
-
},
|
|
3376
|
+
}, qo = (e) => Vo(e) ? e.replace(/^\n/, "") : "", Jo = (e) => {
|
|
3351
3377
|
let t = e.split("\n"), n = [], r = 0;
|
|
3352
3378
|
for (; r < t.length;) {
|
|
3353
|
-
let e = t[r], i =
|
|
3379
|
+
let e = t[r], i = Go(e);
|
|
3354
3380
|
if (i) {
|
|
3355
3381
|
let e = i.sameLineBody;
|
|
3356
|
-
if (e !==
|
|
3357
|
-
e =
|
|
3358
|
-
let i =
|
|
3382
|
+
if (e !== Ko(e)) {
|
|
3383
|
+
e = Ko(e);
|
|
3384
|
+
let i = qo(t.slice(r + 1).join("\n"));
|
|
3359
3385
|
return [
|
|
3360
3386
|
...n,
|
|
3361
3387
|
e,
|
|
@@ -3363,38 +3389,38 @@ var Do = /^\uFEFF/, Oo = /^ {0,3}`{1,3}[A-Za-z]*$/, ko = /^( {0,3})([^`<]*?)```[
|
|
|
3363
3389
|
].filter(Boolean).join("\n");
|
|
3364
3390
|
}
|
|
3365
3391
|
let a = [];
|
|
3366
|
-
for (e && a.push(e), r += 1; r < t.length && !
|
|
3367
|
-
let o = r < t.length ?
|
|
3392
|
+
for (e && a.push(e), r += 1; r < t.length && !Ro.test(t[r]);) a.push(t[r]), r += 1;
|
|
3393
|
+
let o = r < t.length ? qo(t.slice(r + 1).join("\n")) : "";
|
|
3368
3394
|
return [
|
|
3369
3395
|
...n,
|
|
3370
3396
|
a.join("\n"),
|
|
3371
3397
|
o
|
|
3372
3398
|
].filter(Boolean).join("\n");
|
|
3373
3399
|
}
|
|
3374
|
-
if (
|
|
3375
|
-
|
|
3400
|
+
if (Ho(e)) return Yo([...n, ...t.slice(r)].join("\n"));
|
|
3401
|
+
Vo(e) && n.push(e), r += 1;
|
|
3376
3402
|
}
|
|
3377
3403
|
return n.length ? n.join("\n") : null;
|
|
3378
|
-
},
|
|
3404
|
+
}, Yo = (e) => {
|
|
3379
3405
|
let t = e.split("\n");
|
|
3380
3406
|
if (!t.length) return e;
|
|
3381
|
-
let n =
|
|
3382
|
-
return n && !
|
|
3407
|
+
let n = Go(t[0]);
|
|
3408
|
+
return n && !Ho(t[0].slice(0, t[0].indexOf("```"))) && (t.shift(), n.sameLineBody && t.unshift(Ko(n.sameLineBody))), t.length && Ro.test(t[t.length - 1] ?? "") && t.pop(), t.join("\n");
|
|
3383
3409
|
};
|
|
3384
|
-
function
|
|
3410
|
+
function Xo(e) {
|
|
3385
3411
|
if (!e) return {
|
|
3386
3412
|
html: "",
|
|
3387
3413
|
pending: !1
|
|
3388
3414
|
};
|
|
3389
|
-
let { text: t, withheld: n } =
|
|
3415
|
+
let { text: t, withheld: n } = Wo(Uo(e));
|
|
3390
3416
|
if (!t.trim()) return {
|
|
3391
3417
|
html: "",
|
|
3392
|
-
pending: n ||
|
|
3418
|
+
pending: n || Io.test(Uo(e).trim())
|
|
3393
3419
|
};
|
|
3394
|
-
let r =
|
|
3420
|
+
let r = Jo(t) ?? t, i = Jo(r);
|
|
3395
3421
|
i !== null && i !== r && (r = i);
|
|
3396
3422
|
let a = r.trim();
|
|
3397
|
-
return
|
|
3423
|
+
return Vo(a) ? {
|
|
3398
3424
|
html: a,
|
|
3399
3425
|
pending: !1
|
|
3400
3426
|
} : {
|
|
@@ -3404,21 +3430,21 @@ function Ho(e) {
|
|
|
3404
3430
|
}
|
|
3405
3431
|
//#endregion
|
|
3406
3432
|
//#region src/components/Editor/utils/prepareTypesetProposed.ts
|
|
3407
|
-
var
|
|
3408
|
-
let { html: n } =
|
|
3409
|
-
return n ? li(
|
|
3433
|
+
var Zo = (e, t) => {
|
|
3434
|
+
let { html: n } = Xo(e);
|
|
3435
|
+
return n ? fi(li(n, t)) : "";
|
|
3410
3436
|
};
|
|
3411
3437
|
//#endregion
|
|
3412
3438
|
//#region src/components/Editor/utils/applyAiTypeset.ts
|
|
3413
|
-
function
|
|
3414
|
-
let i = X(
|
|
3415
|
-
if (!i.trim() ||
|
|
3439
|
+
function Qo(e, t, n, r) {
|
|
3440
|
+
let i = X(Zo(t, n));
|
|
3441
|
+
if (!i.trim() || Ti(i, "")) return {
|
|
3416
3442
|
applied: !1,
|
|
3417
3443
|
truncated: !1
|
|
3418
3444
|
};
|
|
3419
3445
|
let a = !1;
|
|
3420
3446
|
return e.update(() => {
|
|
3421
|
-
|
|
3447
|
+
wi(e, i), _o(r) && (a = vo(e, r)), kn(!0);
|
|
3422
3448
|
}, { discrete: !0 }), {
|
|
3423
3449
|
applied: !0,
|
|
3424
3450
|
truncated: a
|
|
@@ -3426,15 +3452,15 @@ function Wo(e, t, n, r) {
|
|
|
3426
3452
|
}
|
|
3427
3453
|
//#endregion
|
|
3428
3454
|
//#region src/components/Editor/Preview/useAiPreviewHtml.ts
|
|
3429
|
-
var
|
|
3430
|
-
if (!e ||
|
|
3455
|
+
var $o = (e, t) => {
|
|
3456
|
+
if (!e || bi(e)) return e;
|
|
3431
3457
|
let n = X(e);
|
|
3432
|
-
return t === "ready" || t === "error" ?
|
|
3433
|
-
},
|
|
3434
|
-
let [i, a] =
|
|
3458
|
+
return t === "ready" || t === "error" ? $i(n) : n;
|
|
3459
|
+
}, es = ({ enabled: e, status: t, revision: n, compute: r }) => {
|
|
3460
|
+
let [i, a] = N(""), o = M(r);
|
|
3435
3461
|
o.current = r;
|
|
3436
|
-
let s =
|
|
3437
|
-
return
|
|
3462
|
+
let s = M(null);
|
|
3463
|
+
return A(() => {
|
|
3438
3464
|
let n = () => {
|
|
3439
3465
|
s.current !== null && (cancelAnimationFrame(s.current), s.current = null);
|
|
3440
3466
|
};
|
|
@@ -3457,12 +3483,12 @@ var Go = (e, t) => {
|
|
|
3457
3483
|
]), O(() => () => {
|
|
3458
3484
|
s.current !== null && cancelAnimationFrame(s.current);
|
|
3459
3485
|
}, []), i;
|
|
3460
|
-
},
|
|
3486
|
+
}, ts = [
|
|
3461
3487
|
.26,
|
|
3462
3488
|
.02,
|
|
3463
3489
|
.23,
|
|
3464
3490
|
.94
|
|
3465
|
-
],
|
|
3491
|
+
], ns = () => {
|
|
3466
3492
|
let e = `${ee().replace(/:/g, "")}g`;
|
|
3467
3493
|
return /* @__PURE__ */ y("span", {
|
|
3468
3494
|
className: Q["bsy-lexical-ai__think-icon"],
|
|
@@ -3501,8 +3527,8 @@ var Go = (e, t) => {
|
|
|
3501
3527
|
}) })]
|
|
3502
3528
|
})
|
|
3503
3529
|
});
|
|
3504
|
-
},
|
|
3505
|
-
let { t: n } = a(), r = e.status === "loading" && !t, [i, o] =
|
|
3530
|
+
}, rs = (e, t) => {
|
|
3531
|
+
let { t: n } = a(), r = e.status === "loading" && !t, [i, o] = N(!0), [s, c] = N(0), l = M(Date.now()), u = M(null), d = e.reasoning ?? "", f = r || i, p = (r || !!d) && !(e.status === "error" && !d);
|
|
3506
3532
|
return O(() => {
|
|
3507
3533
|
if (!r) {
|
|
3508
3534
|
u.current === null && (u.current = Math.max(1, Math.round((Date.now() - l.current) / 1e3)), c(u.current)), o(!1);
|
|
@@ -3521,21 +3547,21 @@ var Go = (e, t) => {
|
|
|
3521
3547
|
reasoning: d,
|
|
3522
3548
|
toggle: () => o((e) => !e)
|
|
3523
3549
|
};
|
|
3524
|
-
},
|
|
3550
|
+
}, is = ({ model: t }) => t.visible ? /* @__PURE__ */ b("button", {
|
|
3525
3551
|
type: "button",
|
|
3526
3552
|
className: Q["bsy-lexical-ai__think-head"],
|
|
3527
3553
|
disabled: t.thinking,
|
|
3528
3554
|
onClick: t.toggle,
|
|
3529
|
-
children: [t.thinking ? /* @__PURE__ */ y(
|
|
3555
|
+
children: [t.thinking ? /* @__PURE__ */ y(ns, {}) : /* @__PURE__ */ y(e, {
|
|
3530
3556
|
name: "arrow-down",
|
|
3531
3557
|
size: 12,
|
|
3532
|
-
className:
|
|
3558
|
+
className: F(Q["bsy-lexical-ai__think-arrow"], t.open && Q["bsy-lexical-ai__think-arrow--open"])
|
|
3533
3559
|
}), /* @__PURE__ */ y("span", {
|
|
3534
3560
|
className: Q["bsy-lexical-ai__think-label"],
|
|
3535
|
-
children: /* @__PURE__ */ y(
|
|
3561
|
+
children: /* @__PURE__ */ y(ae, {
|
|
3536
3562
|
mode: "popLayout",
|
|
3537
3563
|
initial: !1,
|
|
3538
|
-
children: /* @__PURE__ */ y(
|
|
3564
|
+
children: /* @__PURE__ */ y(I.span, {
|
|
3539
3565
|
initial: {
|
|
3540
3566
|
opacity: 0,
|
|
3541
3567
|
y: 6
|
|
@@ -3550,7 +3576,7 @@ var Go = (e, t) => {
|
|
|
3550
3576
|
},
|
|
3551
3577
|
transition: {
|
|
3552
3578
|
duration: .22,
|
|
3553
|
-
ease:
|
|
3579
|
+
ease: ts
|
|
3554
3580
|
},
|
|
3555
3581
|
children: /* @__PURE__ */ y("span", {
|
|
3556
3582
|
className: t.thinking ? Q["bsy-lexical-ai__think-label--shimmer"] : void 0,
|
|
@@ -3559,8 +3585,8 @@ var Go = (e, t) => {
|
|
|
3559
3585
|
}, t.label)
|
|
3560
3586
|
})
|
|
3561
3587
|
})]
|
|
3562
|
-
}) : null,
|
|
3563
|
-
let [t, n] =
|
|
3588
|
+
}) : null, as = ({ model: e }) => {
|
|
3589
|
+
let [t, n] = N(!0), r = D(e.reasoning);
|
|
3564
3590
|
if (O(() => {
|
|
3565
3591
|
e.open || n(!0);
|
|
3566
3592
|
}, [e.open]), !e.visible) return null;
|
|
@@ -3569,11 +3595,11 @@ var Go = (e, t) => {
|
|
|
3569
3595
|
children: r
|
|
3570
3596
|
});
|
|
3571
3597
|
return !t && e.open && e.reasoning ? /* @__PURE__ */ y("div", {
|
|
3572
|
-
className:
|
|
3598
|
+
className: F(Q["bsy-lexical-ai__think-collapse"], Q["bsy-lexical-ai__think-collapse--grown"]),
|
|
3573
3599
|
children: i
|
|
3574
|
-
}) : /* @__PURE__ */ y(
|
|
3600
|
+
}) : /* @__PURE__ */ y(ae, {
|
|
3575
3601
|
initial: !1,
|
|
3576
|
-
children: e.open && e.reasoning ? /* @__PURE__ */ y(
|
|
3602
|
+
children: e.open && e.reasoning ? /* @__PURE__ */ y(I.div, {
|
|
3577
3603
|
initial: {
|
|
3578
3604
|
height: 0,
|
|
3579
3605
|
opacity: 0
|
|
@@ -3601,8 +3627,8 @@ var Go = (e, t) => {
|
|
|
3601
3627
|
children: i
|
|
3602
3628
|
}, "think-body") : null
|
|
3603
3629
|
});
|
|
3604
|
-
},
|
|
3605
|
-
let r =
|
|
3630
|
+
}, os = 32, ss = .25, cs = 2, ls = ({ viewportRef: e, enabled: t, revision: n }) => {
|
|
3631
|
+
let r = M(!0), i = M(!1), a = M(0), o = T(() => e.current ?? void 0, [e]), s = T(() => {
|
|
3606
3632
|
let t = e.current;
|
|
3607
3633
|
return t?.closest("[data-overlayscrollbars]") ?? t ?? void 0;
|
|
3608
3634
|
}, [e]), c = T(() => {
|
|
@@ -3614,7 +3640,7 @@ var Go = (e, t) => {
|
|
|
3614
3640
|
t.scrollTop = n;
|
|
3615
3641
|
return;
|
|
3616
3642
|
}
|
|
3617
|
-
t.scrollTop += Math.max(i *
|
|
3643
|
+
t.scrollTop += Math.max(i * ss, Math.min(i, cs)), a.current = requestAnimationFrame(c);
|
|
3618
3644
|
}, [e]), l = T(() => {
|
|
3619
3645
|
!a.current && r.current && (a.current = requestAnimationFrame(c));
|
|
3620
3646
|
}, [c]);
|
|
@@ -3641,31 +3667,31 @@ var Go = (e, t) => {
|
|
|
3641
3667
|
let u = () => {
|
|
3642
3668
|
let t = e.current;
|
|
3643
3669
|
if (!t) return;
|
|
3644
|
-
let n = t.scrollHeight - t.clientHeight - t.scrollTop <=
|
|
3670
|
+
let n = t.scrollHeight - t.clientHeight - t.scrollTop <= os;
|
|
3645
3671
|
i.current ? (i.current = !1, r.current = n, !n && a.current && (cancelAnimationFrame(a.current), a.current = 0)) : n && (r.current = !0);
|
|
3646
3672
|
}, d = () => {
|
|
3647
3673
|
i.current = !0;
|
|
3648
3674
|
};
|
|
3649
|
-
return
|
|
3675
|
+
return ie("wheel", d, {
|
|
3650
3676
|
target: s,
|
|
3651
3677
|
passive: !0,
|
|
3652
3678
|
enable: t
|
|
3653
|
-
}),
|
|
3679
|
+
}), ie("touchstart", d, {
|
|
3654
3680
|
target: o,
|
|
3655
3681
|
passive: !0,
|
|
3656
3682
|
enable: t
|
|
3657
|
-
}),
|
|
3683
|
+
}), ie("pointerdown", (e) => {
|
|
3658
3684
|
e.target instanceof Element && e.target.closest(".os-scrollbar") && d();
|
|
3659
3685
|
}, {
|
|
3660
3686
|
target: s,
|
|
3661
3687
|
passive: !0,
|
|
3662
3688
|
enable: t
|
|
3663
|
-
}),
|
|
3689
|
+
}), ie("scroll", u, {
|
|
3664
3690
|
target: o,
|
|
3665
3691
|
passive: !0,
|
|
3666
3692
|
enable: t
|
|
3667
3693
|
}), { onScroll: u };
|
|
3668
|
-
},
|
|
3694
|
+
}, us = `
|
|
3669
3695
|
:host {
|
|
3670
3696
|
all: initial;
|
|
3671
3697
|
display: block;
|
|
@@ -3678,8 +3704,20 @@ var Go = (e, t) => {
|
|
|
3678
3704
|
font-family: -apple-system, BlinkMacSystemFont, 'PingFang SC', 'Helvetica Neue', sans-serif;
|
|
3679
3705
|
font-size: 15px;
|
|
3680
3706
|
line-height: 1.6;
|
|
3707
|
+
overflow-wrap: anywhere;
|
|
3681
3708
|
word-break: break-word;
|
|
3682
3709
|
}
|
|
3710
|
+
.bsy-editor-html-preview__body p,
|
|
3711
|
+
.bsy-editor-html-preview__body li,
|
|
3712
|
+
.bsy-editor-html-preview__body h1,
|
|
3713
|
+
.bsy-editor-html-preview__body h2,
|
|
3714
|
+
.bsy-editor-html-preview__body h3,
|
|
3715
|
+
.bsy-editor-html-preview__body h4,
|
|
3716
|
+
.bsy-editor-html-preview__body h5,
|
|
3717
|
+
.bsy-editor-html-preview__body h6 {
|
|
3718
|
+
box-sizing: border-box;
|
|
3719
|
+
max-width: 100%;
|
|
3720
|
+
}
|
|
3683
3721
|
.bsy-editor-html-preview__body p {
|
|
3684
3722
|
margin: 0;
|
|
3685
3723
|
}
|
|
@@ -3758,7 +3796,7 @@ var Go = (e, t) => {
|
|
|
3758
3796
|
.bsy-editor-html-preview__body li,
|
|
3759
3797
|
.bsy-editor-html-preview__body .editor-listitem {
|
|
3760
3798
|
margin: 0;
|
|
3761
|
-
margin-inline-start: ${
|
|
3799
|
+
margin-inline-start: ${mi};
|
|
3762
3800
|
list-style: inherit;
|
|
3763
3801
|
}
|
|
3764
3802
|
.bsy-editor-html-preview__body .editor-nested-listitem {
|
|
@@ -3837,36 +3875,36 @@ var Go = (e, t) => {
|
|
|
3837
3875
|
height: auto;
|
|
3838
3876
|
vertical-align: baseline;
|
|
3839
3877
|
}
|
|
3840
|
-
`,
|
|
3841
|
-
let t =
|
|
3842
|
-
return
|
|
3843
|
-
|
|
3878
|
+
`, ds = ({ html: e }) => {
|
|
3879
|
+
let t = M(null);
|
|
3880
|
+
return A(() => {
|
|
3881
|
+
yi(t.current, e, X, us);
|
|
3844
3882
|
}, [e]), /* @__PURE__ */ y("div", {
|
|
3845
3883
|
ref: t,
|
|
3846
3884
|
className: "bsy-editor-html-preview"
|
|
3847
3885
|
});
|
|
3848
|
-
},
|
|
3849
|
-
let [t, n] =
|
|
3886
|
+
}, fs = ({ html: e }) => {
|
|
3887
|
+
let [t, n] = N(() => e && !bi(e) ? e : "");
|
|
3850
3888
|
return O(() => {
|
|
3851
|
-
!e ||
|
|
3852
|
-
}, [e]), t ? /* @__PURE__ */ y(
|
|
3853
|
-
},
|
|
3889
|
+
!e || bi(e) || n(e);
|
|
3890
|
+
}, [e]), t ? /* @__PURE__ */ y(ds, { html: t }) : null;
|
|
3891
|
+
}, ps = {
|
|
3854
3892
|
paddingAbsolute: !0,
|
|
3855
3893
|
overflow: {
|
|
3856
3894
|
x: "hidden",
|
|
3857
3895
|
y: "scroll"
|
|
3858
3896
|
}
|
|
3859
|
-
},
|
|
3860
|
-
let { t: p } = a(), m =
|
|
3897
|
+
}, ms = ({ status: t, errorMessage: n, originalHtml: i, proposedHtml: o, preset: s, onPresetChange: c, onCancel: l, onApply: d }) => {
|
|
3898
|
+
let { t: p } = a(), m = yr(), [h, g] = N(!0), _ = M(null), v = !!o.trim(), x = t === "ready" && v, S = rs({
|
|
3861
3899
|
status: t,
|
|
3862
3900
|
reasoning: m
|
|
3863
|
-
}, v), C =
|
|
3901
|
+
}, v), C = ls({
|
|
3864
3902
|
viewportRef: _,
|
|
3865
3903
|
enabled: t === "loading",
|
|
3866
3904
|
revision: `${m ?? ""}\0${o}`
|
|
3867
|
-
}), w =
|
|
3905
|
+
}), w = Xr.map((e) => ({
|
|
3868
3906
|
key: e,
|
|
3869
|
-
label: p(
|
|
3907
|
+
label: p(Zr[e])
|
|
3870
3908
|
}));
|
|
3871
3909
|
return /* @__PURE__ */ y(r, {
|
|
3872
3910
|
title: p("editor.aiPolish"),
|
|
@@ -3882,19 +3920,19 @@ var Go = (e, t) => {
|
|
|
3882
3920
|
children: [/* @__PURE__ */ b("div", {
|
|
3883
3921
|
className: Q["bsy-lexical-ai__column"],
|
|
3884
3922
|
children: [/* @__PURE__ */ b("div", {
|
|
3885
|
-
className:
|
|
3923
|
+
className: F(Q["bsy-lexical-ai__column-title"], Q["bsy-lexical-ai__column-title--before"]),
|
|
3886
3924
|
children: [/* @__PURE__ */ y("span", { className: Q["bsy-lexical-ai__column-dot"] }), p("editor.aiOriginal")]
|
|
3887
3925
|
}), /* @__PURE__ */ y(u, {
|
|
3888
3926
|
className: Q["bsy-lexical-ai__column-body"],
|
|
3889
|
-
options:
|
|
3890
|
-
children: /* @__PURE__ */ y(
|
|
3927
|
+
options: ps,
|
|
3928
|
+
children: /* @__PURE__ */ y(fs, { html: i })
|
|
3891
3929
|
})]
|
|
3892
3930
|
}), /* @__PURE__ */ b("div", {
|
|
3893
3931
|
className: Q["bsy-lexical-ai__column"],
|
|
3894
3932
|
children: [/* @__PURE__ */ b("div", {
|
|
3895
3933
|
className: Q["bsy-lexical-ai__column-head"],
|
|
3896
3934
|
children: [/* @__PURE__ */ b("div", {
|
|
3897
|
-
className:
|
|
3935
|
+
className: F(Q["bsy-lexical-ai__column-title"], Q["bsy-lexical-ai__column-title--after"]),
|
|
3898
3936
|
children: [/* @__PURE__ */ y("span", { className: Q["bsy-lexical-ai__column-dot"] }), p("editor.aiOptimized")]
|
|
3899
3937
|
}), /* @__PURE__ */ y(f, {
|
|
3900
3938
|
menus: w,
|
|
@@ -3913,7 +3951,7 @@ var Go = (e, t) => {
|
|
|
3913
3951
|
type: "button",
|
|
3914
3952
|
className: Q["bsy-lexical-ai__preset"],
|
|
3915
3953
|
title: p("editor.aiPolish"),
|
|
3916
|
-
children: [p(
|
|
3954
|
+
children: [p(Zr[s]), /* @__PURE__ */ y(e, {
|
|
3917
3955
|
name: "arrow-down",
|
|
3918
3956
|
size: 16
|
|
3919
3957
|
})]
|
|
@@ -3923,25 +3961,25 @@ var Go = (e, t) => {
|
|
|
3923
3961
|
className: Q["bsy-lexical-ai__column-stack"],
|
|
3924
3962
|
children: [S.visible ? /* @__PURE__ */ y("div", {
|
|
3925
3963
|
className: Q["bsy-lexical-ai__think-pin"],
|
|
3926
|
-
children: /* @__PURE__ */ y(
|
|
3964
|
+
children: /* @__PURE__ */ y(is, { model: S })
|
|
3927
3965
|
}) : null, /* @__PURE__ */ b(u, {
|
|
3928
3966
|
className: Q["bsy-lexical-ai__column-body"],
|
|
3929
|
-
options:
|
|
3967
|
+
options: ps,
|
|
3930
3968
|
viewportRef: _,
|
|
3931
3969
|
onScroll: C.onScroll,
|
|
3932
3970
|
children: [t === "error" ? /* @__PURE__ */ y("div", {
|
|
3933
3971
|
className: Q["bsy-lexical-ai__error"],
|
|
3934
3972
|
children: n || p("editor.aiError")
|
|
3935
|
-
}) : /* @__PURE__ */ y(
|
|
3973
|
+
}) : /* @__PURE__ */ y(as, { model: S }), v ? /* @__PURE__ */ y(fs, { html: o }) : null]
|
|
3936
3974
|
})]
|
|
3937
3975
|
})]
|
|
3938
3976
|
})]
|
|
3939
3977
|
}), /* @__PURE__ */ b("div", {
|
|
3940
3978
|
className: Q["bsy-lexical-ai__footer"],
|
|
3941
|
-
children: [/* @__PURE__ */ y(
|
|
3979
|
+
children: [/* @__PURE__ */ y(P, {
|
|
3942
3980
|
onClick: () => g(!1),
|
|
3943
3981
|
children: p("editor.aiAbandon")
|
|
3944
|
-
}), /* @__PURE__ */ y(
|
|
3982
|
+
}), /* @__PURE__ */ y(P, {
|
|
3945
3983
|
type: "primary",
|
|
3946
3984
|
disabled: !x,
|
|
3947
3985
|
onClick: () => d() && g(!1),
|
|
@@ -3950,17 +3988,17 @@ var Go = (e, t) => {
|
|
|
3950
3988
|
})]
|
|
3951
3989
|
})
|
|
3952
3990
|
});
|
|
3953
|
-
},
|
|
3991
|
+
}, hs = {
|
|
3954
3992
|
paddingAbsolute: !0,
|
|
3955
3993
|
overflow: {
|
|
3956
3994
|
x: "hidden",
|
|
3957
3995
|
y: "scroll"
|
|
3958
3996
|
}
|
|
3959
|
-
},
|
|
3960
|
-
let { t: c } = a(), l =
|
|
3997
|
+
}, gs = ({ status: e, errorMessage: t, originalHtml: n, proposedHtml: i, onCancel: o, onApply: s }) => {
|
|
3998
|
+
let { t: c } = a(), l = yr(), [d, f] = N(!0), p = M(null), m = !!i.trim(), h = e === "ready" && m, g = rs({
|
|
3961
3999
|
status: e,
|
|
3962
4000
|
reasoning: l
|
|
3963
|
-
}, m), _ =
|
|
4001
|
+
}, m), _ = ls({
|
|
3964
4002
|
viewportRef: p,
|
|
3965
4003
|
enabled: e === "loading",
|
|
3966
4004
|
revision: `${l ?? ""}\0${i}`
|
|
@@ -3979,41 +4017,41 @@ var Go = (e, t) => {
|
|
|
3979
4017
|
children: [/* @__PURE__ */ b("div", {
|
|
3980
4018
|
className: Q["bsy-lexical-ai__column"],
|
|
3981
4019
|
children: [/* @__PURE__ */ b("div", {
|
|
3982
|
-
className:
|
|
4020
|
+
className: F(Q["bsy-lexical-ai__column-title"], Q["bsy-lexical-ai__column-title--before"]),
|
|
3983
4021
|
children: [/* @__PURE__ */ y("span", { className: Q["bsy-lexical-ai__column-dot"] }), c("editor.aiOriginal")]
|
|
3984
4022
|
}), /* @__PURE__ */ y(u, {
|
|
3985
4023
|
className: Q["bsy-lexical-ai__column-body"],
|
|
3986
|
-
options:
|
|
3987
|
-
children: /* @__PURE__ */ y(
|
|
4024
|
+
options: hs,
|
|
4025
|
+
children: /* @__PURE__ */ y(fs, { html: n })
|
|
3988
4026
|
})]
|
|
3989
4027
|
}), /* @__PURE__ */ b("div", {
|
|
3990
4028
|
className: Q["bsy-lexical-ai__column"],
|
|
3991
4029
|
children: [/* @__PURE__ */ b("div", {
|
|
3992
|
-
className:
|
|
4030
|
+
className: F(Q["bsy-lexical-ai__column-title"], Q["bsy-lexical-ai__column-title--after"]),
|
|
3993
4031
|
children: [/* @__PURE__ */ y("span", { className: Q["bsy-lexical-ai__column-dot"] }), c("editor.aiOptimized")]
|
|
3994
4032
|
}), /* @__PURE__ */ b("div", {
|
|
3995
4033
|
className: Q["bsy-lexical-ai__column-stack"],
|
|
3996
4034
|
children: [g.visible ? /* @__PURE__ */ y("div", {
|
|
3997
4035
|
className: Q["bsy-lexical-ai__think-pin"],
|
|
3998
|
-
children: /* @__PURE__ */ y(
|
|
4036
|
+
children: /* @__PURE__ */ y(is, { model: g })
|
|
3999
4037
|
}) : null, /* @__PURE__ */ b(u, {
|
|
4000
4038
|
className: Q["bsy-lexical-ai__column-body"],
|
|
4001
|
-
options:
|
|
4039
|
+
options: hs,
|
|
4002
4040
|
viewportRef: p,
|
|
4003
4041
|
onScroll: _.onScroll,
|
|
4004
4042
|
children: [e === "error" ? /* @__PURE__ */ y("div", {
|
|
4005
4043
|
className: Q["bsy-lexical-ai__error"],
|
|
4006
4044
|
children: t || c("editor.aiError")
|
|
4007
|
-
}) : /* @__PURE__ */ y(
|
|
4045
|
+
}) : /* @__PURE__ */ y(as, { model: g }), m ? /* @__PURE__ */ y(fs, { html: i }) : null]
|
|
4008
4046
|
})]
|
|
4009
4047
|
})]
|
|
4010
4048
|
})]
|
|
4011
4049
|
}), /* @__PURE__ */ b("div", {
|
|
4012
4050
|
className: Q["bsy-lexical-ai__footer"],
|
|
4013
|
-
children: [/* @__PURE__ */ y(
|
|
4051
|
+
children: [/* @__PURE__ */ y(P, {
|
|
4014
4052
|
onClick: () => f(!1),
|
|
4015
4053
|
children: c("editor.aiAbandon")
|
|
4016
|
-
}), /* @__PURE__ */ y(
|
|
4054
|
+
}), /* @__PURE__ */ y(P, {
|
|
4017
4055
|
type: "primary",
|
|
4018
4056
|
disabled: !h,
|
|
4019
4057
|
onClick: () => s() && f(!1),
|
|
@@ -4022,21 +4060,21 @@ var Go = (e, t) => {
|
|
|
4022
4060
|
})]
|
|
4023
4061
|
})
|
|
4024
4062
|
});
|
|
4025
|
-
},
|
|
4026
|
-
let [n] =
|
|
4063
|
+
}, _s = ({ maxLength: e, onMaxLengthExceed: t }) => {
|
|
4064
|
+
let [n] = B(), { aiOpen: r, setAiOpen: i, aiSessionRef: o, stop: s, polish: c } = _r(), { t: l } = a(), [u, d] = re.useMessage(), f = o.current, { text: p, status: m, errorMessage: h } = vr(), g = !m || m === "idle" ? "loading" : m, _ = j(() => r ? $o(o.current?.originalHtml || "", "ready") : "", [r, o]), x = es({
|
|
4027
4065
|
enabled: r === "typeset",
|
|
4028
4066
|
status: g,
|
|
4029
4067
|
revision: p,
|
|
4030
|
-
compute: () =>
|
|
4031
|
-
}), S =
|
|
4068
|
+
compute: () => $o(Zo(p, f?.codeBlocks ?? []), g)
|
|
4069
|
+
}), S = es({
|
|
4032
4070
|
enabled: r === "polish",
|
|
4033
4071
|
status: g,
|
|
4034
4072
|
revision: p,
|
|
4035
|
-
compute: () =>
|
|
4073
|
+
compute: () => $o(fa(f?.originalHtml || "", p), g)
|
|
4036
4074
|
});
|
|
4037
4075
|
O(() => {
|
|
4038
4076
|
if (r) return n.setEditable(!1), n.update(() => {
|
|
4039
|
-
|
|
4077
|
+
Ne(null);
|
|
4040
4078
|
}), window.getSelection()?.removeAllRanges(), n.getRootElement()?.blur(), () => {
|
|
4041
4079
|
n.setEditable(!0);
|
|
4042
4080
|
};
|
|
@@ -4050,7 +4088,7 @@ var Go = (e, t) => {
|
|
|
4050
4088
|
]), w = T(() => {
|
|
4051
4089
|
if (r !== "typeset" || g !== "ready") return !1;
|
|
4052
4090
|
n.setEditable(!0);
|
|
4053
|
-
let { applied: i, truncated: a } =
|
|
4091
|
+
let { applied: i, truncated: a } = Qo(n, p, o.current?.codeBlocks ?? [], e);
|
|
4054
4092
|
return i ? (a && t?.(), !0) : (n.setEditable(!1), u.warning(l("editor.aiApplyEmpty")), !1);
|
|
4055
4093
|
}, [
|
|
4056
4094
|
r,
|
|
@@ -4062,7 +4100,7 @@ var Go = (e, t) => {
|
|
|
4062
4100
|
g,
|
|
4063
4101
|
l,
|
|
4064
4102
|
p
|
|
4065
|
-
]), E = T(() => r !== "polish" || g !== "ready" ? !1 :
|
|
4103
|
+
]), E = T(() => r !== "polish" || g !== "ready" ? !1 : pa(n, p) ? !0 : (u.warning(l("editor.aiApplyEmpty")), !1), [
|
|
4066
4104
|
r,
|
|
4067
4105
|
n,
|
|
4068
4106
|
u,
|
|
@@ -4074,21 +4112,21 @@ var Go = (e, t) => {
|
|
|
4074
4112
|
!t?.originalText || !c || (t.preset = e, s?.(), c({
|
|
4075
4113
|
text: t.originalText,
|
|
4076
4114
|
preset: e,
|
|
4077
|
-
prompt:
|
|
4115
|
+
prompt: ti(e)
|
|
4078
4116
|
}));
|
|
4079
4117
|
}, [
|
|
4080
4118
|
o,
|
|
4081
4119
|
c,
|
|
4082
4120
|
s
|
|
4083
4121
|
]);
|
|
4084
|
-
return r ? /* @__PURE__ */ b(v, { children: [d, r === "typeset" ? /* @__PURE__ */ y(
|
|
4122
|
+
return r ? /* @__PURE__ */ b(v, { children: [d, r === "typeset" ? /* @__PURE__ */ y(gs, {
|
|
4085
4123
|
status: g,
|
|
4086
4124
|
errorMessage: h,
|
|
4087
4125
|
originalHtml: _,
|
|
4088
4126
|
proposedHtml: x,
|
|
4089
4127
|
onCancel: C,
|
|
4090
4128
|
onApply: w
|
|
4091
|
-
}) : /* @__PURE__ */ y(
|
|
4129
|
+
}) : /* @__PURE__ */ y(ms, {
|
|
4092
4130
|
status: g,
|
|
4093
4131
|
errorMessage: h,
|
|
4094
4132
|
originalHtml: _,
|
|
@@ -4098,20 +4136,20 @@ var Go = (e, t) => {
|
|
|
4098
4136
|
onCancel: C,
|
|
4099
4137
|
onApply: E
|
|
4100
4138
|
})] }) : d;
|
|
4101
|
-
},
|
|
4102
|
-
let { height: t = "auto", minHeight: n, onChange: r, toolbar: i, theme: a, maxLength: o, onMaxLengthExceed: s, upload: c, ai: l } = e, [u] =
|
|
4139
|
+
}, vs = [], ys = (e) => {
|
|
4140
|
+
let { height: t = "auto", minHeight: n, onChange: r, toolbar: i, theme: a, maxLength: o, onMaxLengthExceed: s, upload: c, ai: l } = e, [u] = B(), { isSourceMode: d, isSourceModeRef: f } = Gr(), p = M(null), m = M(null), h = M(/* @__PURE__ */ new Map()), g = M(null), _ = M(null), v = M(s);
|
|
4103
4141
|
v.current = s;
|
|
4104
|
-
let x =
|
|
4142
|
+
let x = _o(o) ? o : void 0, [S, C] = N(0), [w, E] = N(null), D = i?.mode === "floating", ee = x !== void 0 && !d, k = M(l);
|
|
4105
4143
|
k.current = l;
|
|
4106
|
-
let
|
|
4107
|
-
|
|
4108
|
-
let
|
|
4144
|
+
let A = M(r);
|
|
4145
|
+
A.current = r;
|
|
4146
|
+
let P = T((e) => {
|
|
4109
4147
|
k.current?.typeset?.(e);
|
|
4110
|
-
}, []),
|
|
4148
|
+
}, []), te = T((e) => {
|
|
4111
4149
|
k.current?.polish?.(e);
|
|
4112
|
-
}, []),
|
|
4150
|
+
}, []), ne = T(() => {
|
|
4113
4151
|
k.current?.stop?.();
|
|
4114
|
-
}, []),
|
|
4152
|
+
}, []), re = !!l?.typeset, F = !!l?.polish, ie = j(() => ({
|
|
4115
4153
|
containerRef: p,
|
|
4116
4154
|
toolbarRef: m,
|
|
4117
4155
|
upload: c,
|
|
@@ -4119,20 +4157,20 @@ var Go = (e, t) => {
|
|
|
4119
4157
|
setAiOpen: E,
|
|
4120
4158
|
aiSessionRef: g,
|
|
4121
4159
|
attachmentsBySrcRef: h,
|
|
4122
|
-
typeset:
|
|
4123
|
-
polish:
|
|
4124
|
-
stop:
|
|
4125
|
-
canTypeset:
|
|
4126
|
-
canPolish:
|
|
4160
|
+
typeset: P,
|
|
4161
|
+
polish: te,
|
|
4162
|
+
stop: ne,
|
|
4163
|
+
canTypeset: re,
|
|
4164
|
+
canPolish: F
|
|
4127
4165
|
}), [
|
|
4128
4166
|
w,
|
|
4129
|
-
|
|
4130
|
-
ie,
|
|
4131
|
-
ne,
|
|
4167
|
+
F,
|
|
4132
4168
|
re,
|
|
4133
|
-
|
|
4169
|
+
te,
|
|
4170
|
+
ne,
|
|
4171
|
+
P,
|
|
4134
4172
|
c
|
|
4135
|
-
]),
|
|
4173
|
+
]), ae = j(() => ({
|
|
4136
4174
|
text: l?.text ?? "",
|
|
4137
4175
|
status: l?.status,
|
|
4138
4176
|
errorMessage: l?.errorMessage
|
|
@@ -4140,12 +4178,12 @@ var Go = (e, t) => {
|
|
|
4140
4178
|
l?.text,
|
|
4141
4179
|
l?.status,
|
|
4142
4180
|
l?.errorMessage
|
|
4143
|
-
]),
|
|
4181
|
+
]), I = T((e) => {
|
|
4144
4182
|
f.current || e.read(() => {
|
|
4145
|
-
let t =
|
|
4183
|
+
let t = L().getTextContent(), n = $i(X(me(u, null))), r = Ti(n, t) ? null : n;
|
|
4146
4184
|
_.current = r, x !== void 0 && C(t.length);
|
|
4147
|
-
let i =
|
|
4148
|
-
|
|
4185
|
+
let i = je(rn).map((e) => h.current.get(e.getSrc())).filter((e) => e !== void 0);
|
|
4186
|
+
A.current({
|
|
4149
4187
|
text: t,
|
|
4150
4188
|
html: r,
|
|
4151
4189
|
attachments: i
|
|
@@ -4158,7 +4196,7 @@ var Go = (e, t) => {
|
|
|
4158
4196
|
]);
|
|
4159
4197
|
O(() => {
|
|
4160
4198
|
x === void 0 || d || u.getEditorState().read(() => {
|
|
4161
|
-
C(
|
|
4199
|
+
C(L().getTextContentSize());
|
|
4162
4200
|
}, { editor: u });
|
|
4163
4201
|
}, [
|
|
4164
4202
|
u,
|
|
@@ -4169,33 +4207,33 @@ var Go = (e, t) => {
|
|
|
4169
4207
|
if (f.current) {
|
|
4170
4208
|
let t = e.value?.trim() ? X(e.value) : "";
|
|
4171
4209
|
_.current = e.value, u.update(() => {
|
|
4172
|
-
|
|
4210
|
+
Ao(ko(t));
|
|
4173
4211
|
});
|
|
4174
4212
|
return;
|
|
4175
4213
|
}
|
|
4176
4214
|
let t = !1, n = _.current === null;
|
|
4177
4215
|
u.update(() => {
|
|
4178
|
-
|
|
4179
|
-
}), n && u.dispatchCommand(
|
|
4216
|
+
wi(u, e.value?.trim() ? X(e.value) : ""), x !== void 0 && (t = vo(u, x)), An(u);
|
|
4217
|
+
}), n && u.dispatchCommand(Le, void 0), t && v.current?.();
|
|
4180
4218
|
}, [
|
|
4181
4219
|
e.value,
|
|
4182
4220
|
u,
|
|
4183
4221
|
x,
|
|
4184
4222
|
f
|
|
4185
4223
|
]);
|
|
4186
|
-
let
|
|
4224
|
+
let oe = i?.config?.length ? i.config : vs, se = T(() => {
|
|
4187
4225
|
v.current?.();
|
|
4188
4226
|
}, []);
|
|
4189
|
-
return /* @__PURE__ */ y(
|
|
4190
|
-
value:
|
|
4191
|
-
children: /* @__PURE__ */ y(
|
|
4192
|
-
value:
|
|
4193
|
-
children: /* @__PURE__ */ b(
|
|
4227
|
+
return /* @__PURE__ */ y(mr.Provider, {
|
|
4228
|
+
value: ie,
|
|
4229
|
+
children: /* @__PURE__ */ y(hr.Provider, {
|
|
4230
|
+
value: ae,
|
|
4231
|
+
children: /* @__PURE__ */ b(gr.Provider, {
|
|
4194
4232
|
value: l?.reasoning,
|
|
4195
|
-
children: [/* @__PURE__ */ y(
|
|
4233
|
+
children: [/* @__PURE__ */ y(bs, {
|
|
4196
4234
|
containerRef: p,
|
|
4197
4235
|
isFloating: D,
|
|
4198
|
-
toolbarConfig:
|
|
4236
|
+
toolbarConfig: oe,
|
|
4199
4237
|
toolbarTheme: a?.toolbar,
|
|
4200
4238
|
containerTheme: a?.container,
|
|
4201
4239
|
toolbarStyle: i?.style,
|
|
@@ -4208,31 +4246,31 @@ var Go = (e, t) => {
|
|
|
4208
4246
|
showLengthBadge: ee,
|
|
4209
4247
|
textLength: S,
|
|
4210
4248
|
validMaxLength: x,
|
|
4211
|
-
onMaxLengthExceed:
|
|
4212
|
-
onChange:
|
|
4213
|
-
}), /* @__PURE__ */ y(
|
|
4249
|
+
onMaxLengthExceed: se,
|
|
4250
|
+
onChange: I
|
|
4251
|
+
}), /* @__PURE__ */ y(_s, {
|
|
4214
4252
|
maxLength: x,
|
|
4215
|
-
onMaxLengthExceed:
|
|
4253
|
+
onMaxLengthExceed: se
|
|
4216
4254
|
})]
|
|
4217
4255
|
})
|
|
4218
4256
|
})
|
|
4219
4257
|
});
|
|
4220
|
-
},
|
|
4221
|
-
let [_] =
|
|
4258
|
+
}, bs = w(function({ containerRef: e, isFloating: t, toolbarConfig: n, toolbarTheme: r, containerTheme: i, toolbarStyle: a, toolbarSize: o, toolbarMode: s, toolbarFloating: c, toolbarStickyOffset: l, height: u, minHeight: d, showLengthBadge: f, textLength: p, validMaxLength: m, onMaxLengthExceed: h, onChange: g }) {
|
|
4259
|
+
let [_] = B(), v = $t(), x = typeof u == "number" ? u : void 0, S = !t && x === void 0 && l !== void 0, C = M(!1);
|
|
4222
4260
|
O(() => {
|
|
4223
4261
|
v && C.current && (C.current = !1, _.focus());
|
|
4224
4262
|
}, [v, _]);
|
|
4225
|
-
let w =
|
|
4263
|
+
let w = j(() => Na(i), [i]);
|
|
4226
4264
|
return /* @__PURE__ */ b("div", {
|
|
4227
4265
|
ref: e,
|
|
4228
|
-
className:
|
|
4266
|
+
className: F("bsy-lexical-editor", $["bsy-lexical-editor"], t && $["bsy-lexical-editor--floating"], S && $["bsy-lexical-editor--sticky-toolbar"]),
|
|
4229
4267
|
style: w,
|
|
4230
4268
|
onClick: (e) => {
|
|
4231
4269
|
let t = _.getRootElement(), n = e.target;
|
|
4232
4270
|
!t || !n || !t.contains(n) || _.isEditable() || (C.current = !0, _.setEditable(!0));
|
|
4233
4271
|
},
|
|
4234
4272
|
children: [
|
|
4235
|
-
n && n.length > 0 ? /* @__PURE__ */ y(
|
|
4273
|
+
n && n.length > 0 ? /* @__PURE__ */ y(ja, {
|
|
4236
4274
|
config: n,
|
|
4237
4275
|
theme: r,
|
|
4238
4276
|
style: a,
|
|
@@ -4242,56 +4280,57 @@ var Go = (e, t) => {
|
|
|
4242
4280
|
stickyOffset: S ? l : void 0
|
|
4243
4281
|
}) : null,
|
|
4244
4282
|
/* @__PURE__ */ b("div", {
|
|
4245
|
-
className:
|
|
4283
|
+
className: F($["bsy-lexical-editor__body"], x !== void 0 && $["bsy-lexical-editor__body--fixed"]),
|
|
4246
4284
|
style: { height: x },
|
|
4247
4285
|
children: [/* @__PURE__ */ y("div", {
|
|
4248
4286
|
className: $["bsy-lexical-editor__editable-wrap"],
|
|
4249
|
-
children: /* @__PURE__ */ y(
|
|
4250
|
-
contentEditable: /* @__PURE__ */ y(
|
|
4287
|
+
children: /* @__PURE__ */ y(le, {
|
|
4288
|
+
contentEditable: /* @__PURE__ */ y(ue, {
|
|
4251
4289
|
className: $["bsy-lexical-editor__content-editable"],
|
|
4252
4290
|
style: {
|
|
4253
4291
|
minHeight: x === void 0 ? d : void 0,
|
|
4254
4292
|
cursor: v ? "auto" : "text"
|
|
4255
4293
|
}
|
|
4256
4294
|
}),
|
|
4257
|
-
ErrorBoundary:
|
|
4295
|
+
ErrorBoundary: pe
|
|
4258
4296
|
})
|
|
4259
|
-
}), f && m !== void 0 ? /* @__PURE__ */ y(
|
|
4297
|
+
}), f && m !== void 0 ? /* @__PURE__ */ y(Po, {
|
|
4260
4298
|
current: p,
|
|
4261
4299
|
maxLength: m
|
|
4262
4300
|
}) : null]
|
|
4263
4301
|
}),
|
|
4264
|
-
/* @__PURE__ */ y($t, {}),
|
|
4265
4302
|
/* @__PURE__ */ y(en, {}),
|
|
4266
|
-
/* @__PURE__ */ y(
|
|
4267
|
-
/* @__PURE__ */ y(To, {}),
|
|
4268
|
-
/* @__PURE__ */ y(Ia, {}),
|
|
4303
|
+
/* @__PURE__ */ y(tn, {}),
|
|
4269
4304
|
/* @__PURE__ */ y(za, {}),
|
|
4305
|
+
/* @__PURE__ */ y(No, {}),
|
|
4270
4306
|
/* @__PURE__ */ y(Ba, {}),
|
|
4271
|
-
/* @__PURE__ */ y(
|
|
4272
|
-
/* @__PURE__ */ y(
|
|
4273
|
-
/* @__PURE__ */ y(
|
|
4274
|
-
|
|
4307
|
+
/* @__PURE__ */ y(Ua, {}),
|
|
4308
|
+
/* @__PURE__ */ y(Ga, {}),
|
|
4309
|
+
/* @__PURE__ */ y(co, {}),
|
|
4310
|
+
/* @__PURE__ */ y(lo, {}),
|
|
4311
|
+
/* @__PURE__ */ y(mo, {}),
|
|
4312
|
+
/* @__PURE__ */ y(ho, {}),
|
|
4313
|
+
f && m !== void 0 ? /* @__PURE__ */ y(go, {
|
|
4275
4314
|
maxLength: m,
|
|
4276
4315
|
onMaxLengthExceed: h
|
|
4277
4316
|
}) : null,
|
|
4278
|
-
/* @__PURE__ */ y(
|
|
4279
|
-
/* @__PURE__ */ y(
|
|
4317
|
+
/* @__PURE__ */ y(de, {}),
|
|
4318
|
+
/* @__PURE__ */ y(fe, {
|
|
4280
4319
|
onChange: g,
|
|
4281
4320
|
ignoreSelectionChange: !0,
|
|
4282
4321
|
ignoreHistoryMergeTagChange: !1
|
|
4283
4322
|
})
|
|
4284
4323
|
]
|
|
4285
4324
|
});
|
|
4286
|
-
}),
|
|
4325
|
+
}), xs = (e) => /* @__PURE__ */ y(jo, {
|
|
4287
4326
|
maxLength: e.maxLength,
|
|
4288
4327
|
onMaxLengthExceed: e.onMaxLengthExceed,
|
|
4289
|
-
children: /* @__PURE__ */ y(
|
|
4328
|
+
children: /* @__PURE__ */ y(ys, { ...e })
|
|
4290
4329
|
});
|
|
4291
|
-
|
|
4330
|
+
xs.displayName = "BsyLexicalEditorCore";
|
|
4292
4331
|
//#endregion
|
|
4293
4332
|
//#region src/components/Editor/nodes/ExtendedLinkNode.ts
|
|
4294
|
-
var
|
|
4333
|
+
var Ss = class e extends pt {
|
|
4295
4334
|
constructor(e = "", t = {}, n) {
|
|
4296
4335
|
super(e, t, n);
|
|
4297
4336
|
}
|
|
@@ -4306,18 +4345,18 @@ var ms = class e extends pt {
|
|
|
4306
4345
|
}, t.__key);
|
|
4307
4346
|
}
|
|
4308
4347
|
static importJSON(e) {
|
|
4309
|
-
return
|
|
4348
|
+
return Cs().updateFromJSON(e);
|
|
4310
4349
|
}
|
|
4311
4350
|
sanitizeUrl(e) {
|
|
4312
4351
|
return e.startsWith("@") ? e : super.sanitizeUrl(e);
|
|
4313
4352
|
}
|
|
4314
|
-
},
|
|
4353
|
+
}, Cs = (e = "", t = {}) => ge(new Ss(e, t)), ws = "1px solid #d9d9d9", Ts = { export: new Map([[zt, (e, t) => {
|
|
4315
4354
|
let n = t.exportDOM(e);
|
|
4316
|
-
return ot(n.element) && (n.element.style.border =
|
|
4317
|
-
}]]) },
|
|
4355
|
+
return ot(n.element) && (n.element.style.border = ws), n;
|
|
4356
|
+
}]]) }, Es = (e) => {
|
|
4318
4357
|
let { autoFocus: t = !1 } = e;
|
|
4319
|
-
return /* @__PURE__ */ y(
|
|
4320
|
-
initialConfig:
|
|
4358
|
+
return /* @__PURE__ */ y(ce, {
|
|
4359
|
+
initialConfig: j(() => ({
|
|
4321
4360
|
namespace: "bsyLexicalEditor",
|
|
4322
4361
|
onError: (e) => {
|
|
4323
4362
|
console.error("Lexical error", e);
|
|
@@ -4353,17 +4392,17 @@ var ms = class e extends pt {
|
|
|
4353
4392
|
tableRow: "editor-table-row",
|
|
4354
4393
|
tableScrollableWrapper: "editor-table-scrollable-wrapper"
|
|
4355
4394
|
},
|
|
4356
|
-
html:
|
|
4395
|
+
html: Ts,
|
|
4357
4396
|
nodes: [
|
|
4358
|
-
|
|
4397
|
+
Ss,
|
|
4359
4398
|
{
|
|
4360
4399
|
replace: pt,
|
|
4361
|
-
with: (e) => new
|
|
4400
|
+
with: (e) => new Ss(e.__url, {
|
|
4362
4401
|
rel: e.__rel,
|
|
4363
4402
|
target: e.__target,
|
|
4364
4403
|
title: e.__title
|
|
4365
4404
|
}),
|
|
4366
|
-
withKlass:
|
|
4405
|
+
withKlass: Ss
|
|
4367
4406
|
},
|
|
4368
4407
|
ft,
|
|
4369
4408
|
bt,
|
|
@@ -4374,18 +4413,18 @@ var ms = class e extends pt {
|
|
|
4374
4413
|
Bt,
|
|
4375
4414
|
Vt,
|
|
4376
4415
|
zt,
|
|
4377
|
-
|
|
4378
|
-
|
|
4416
|
+
rn,
|
|
4417
|
+
Pa,
|
|
4379
4418
|
{
|
|
4380
4419
|
replace: rt,
|
|
4381
|
-
with: (e) => new
|
|
4382
|
-
withKlass:
|
|
4420
|
+
with: (e) => new Pa(e.__text),
|
|
4421
|
+
withKlass: Pa
|
|
4383
4422
|
}
|
|
4384
4423
|
]
|
|
4385
4424
|
}), [t]),
|
|
4386
|
-
children: /* @__PURE__ */ y(
|
|
4425
|
+
children: /* @__PURE__ */ y(xs, { ...e })
|
|
4387
4426
|
});
|
|
4388
4427
|
};
|
|
4389
|
-
|
|
4428
|
+
Es.displayName = "BsyLexicalEditor";
|
|
4390
4429
|
//#endregion
|
|
4391
|
-
export {
|
|
4430
|
+
export { Ce as $getRoot, q as BaseButton, ds as EditorHtmlPreview, Es as default, Ca as listRegisteredToolbarButtons, ba as registerToolbarButton, xa as unregisterToolbarButton, ct as useLexicalComposerContext };
|