@mx-space/cli 0.14.1 → 0.15.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +35 -11
- package/dist/{Lexical.dev-DTxuYHmG.mjs → Lexical.dev-Cck4n26y.mjs} +998 -584
- package/dist/{Lexical.node-BlCLnfA6.mjs → Lexical.node-D6wf2D5M.mjs} +15 -5
- package/dist/Lexical.prod-DCwS1oTq.mjs +7170 -0
- package/dist/{LexicalClipboard.dev-CdFkLR_D.mjs → LexicalClipboard.dev-CMkPHV7O.mjs} +6 -6
- package/dist/{LexicalClipboard.node-ktUajxsv.mjs → LexicalClipboard.node-m4nZ7IYw.mjs} +2 -2
- package/dist/{LexicalClipboard.prod-DliyLofW.mjs → LexicalClipboard.prod-B_rN1vE1.mjs} +10 -8
- package/dist/{LexicalCodeCore.dev-CL9tHWJX.mjs → LexicalCodeCore.dev-DyJw3i8V.mjs} +62 -72
- package/dist/{LexicalCodeCore.prod-BoMSJc29.mjs → LexicalCodeCore.prod-DPXLHQLF.mjs} +212 -213
- package/dist/{LexicalDragon.dev-CqW7Aq5H.mjs → LexicalDragon.dev-ZkNfMwrE.mjs} +3 -3
- package/dist/{LexicalDragon.node-DLXctJyy.mjs → LexicalDragon.node-Ds9oLUFh.mjs} +2 -2
- package/dist/{LexicalDragon.prod-DHI3T6n5.mjs → LexicalDragon.prod-B58ic2av.mjs} +5 -4
- package/dist/{LexicalExtension.dev-BP-18zns.mjs → LexicalExtension.dev-DvwHs1Xv.mjs} +79 -67
- package/dist/{LexicalExtension.node-BWH6xbzG.mjs → LexicalExtension.node-5OymZQfy.mjs} +4 -2
- package/dist/{LexicalExtension.prod-Cs6OgrDn.mjs → LexicalExtension.prod-Ce0T5smQ.mjs} +372 -358
- package/dist/{LexicalHeadless.dev-DJp__UcP.mjs → LexicalHeadless.dev-DA0WldSR.mjs} +2 -2
- package/dist/{LexicalHeadless.prod-o0v9cIu5.mjs → LexicalHeadless.prod-1kQgKB6c.mjs} +2 -2
- package/dist/{LexicalHtml.dev-DoymwFpG.mjs → LexicalHtml.dev-BDB7CUrx.mjs} +14 -12
- package/dist/{LexicalHtml.node-CVkbWtUA.mjs → LexicalHtml.node-DpVNt7It.mjs} +4 -4
- package/dist/{LexicalHtml.prod-C2b3z99k.mjs → LexicalHtml.prod-HkxM5scw.mjs} +331 -300
- package/dist/{LexicalLink.dev-7cgLOLIe.mjs → LexicalLink.dev-C5zNJlrm.mjs} +65 -59
- package/dist/{LexicalLink.prod-DWFgoXHR.mjs → LexicalLink.prod-Bkt9hQAt.mjs} +196 -201
- package/dist/{LexicalList.dev-Ci2iOxFx.mjs → LexicalList.dev-B7VgME-m.mjs} +55 -82
- package/dist/LexicalList.prod-B8c7TDjH.mjs +951 -0
- package/dist/{LexicalMarkdown.dev-C0ZYCyuR.mjs → LexicalMarkdown.dev-B5z9kLbV.mjs} +62 -42
- package/dist/{LexicalMarkdown.prod-0M-Nc-rh.mjs → LexicalMarkdown.prod-wKzw7FFH.mjs} +255 -202
- package/dist/{LexicalRichText.dev-Cnr1kDym.mjs → LexicalRichText.dev-CUd6Li5F.mjs} +399 -120
- package/dist/{LexicalRichText.node-BUJZAiap.mjs → LexicalRichText.node-BKfaQ-CH.mjs} +12 -8
- package/dist/LexicalRichText.prod-SBewjJHx.mjs +708 -0
- package/dist/{LexicalSelection.dev-C4L7l8OB.mjs → LexicalSelection.dev-D27JOCqj.mjs} +48 -17
- package/dist/{LexicalSelection.node-CLKroUMQ.mjs → LexicalSelection.node-DBEwPjBu.mjs} +5 -4
- package/dist/{LexicalSelection.prod-DzFqpTlw.mjs → LexicalSelection.prod-OaYhXHOL.mjs} +101 -92
- package/dist/{LexicalTable.dev-Cc9-zqKa.mjs → LexicalTable.dev-6IFFOAE0.mjs} +590 -259
- package/dist/LexicalTable.prod-2CaLZ7fH.mjs +2524 -0
- package/dist/{LexicalUtils.dev-BRgK0L6G.mjs → LexicalUtils.dev-DJA7J_7v.mjs} +15 -19
- package/dist/{LexicalUtils.node-BVAwOkL4.mjs → LexicalUtils.node-Df9oPTlA.mjs} +6 -6
- package/dist/{LexicalUtils.prod-C1gtvVDP.mjs → LexicalUtils.prod-Bb7V4Ewg.mjs} +155 -159
- package/dist/bin/mxs.mjs +1 -1
- package/dist/esm-CDcJmHkG.mjs +2 -0
- package/dist/{esm-BNu4sUWV.mjs → esm-DLzrv7gD.mjs} +1837 -6015
- package/dist/index.d.mts +57 -62
- package/dist/index.mjs +1 -1
- package/dist/{mxs-CMX2yklg.mjs → mxs-BIRW5Axj.mjs} +13579 -8682
- package/dist/rolldown-runtime-JspESFgx.mjs +35 -0
- package/dist/vendor/litexml/cli.mjs +7043 -6207
- package/dist/vendor/litexml/litexml-html-preview-client.css +80 -47
- package/dist/vendor/litexml/litexml-html-preview-client.js +14422 -10838
- package/dist/vendor/litexml/style.css +6 -2
- package/package.json +23 -23
- package/skills/commands-ai.md +45 -12
- package/skills/overview.md +1 -1
- package/dist/Lexical.prod-CeB9UQuo.mjs +0 -6816
- package/dist/LexicalList.prod-D0xX5d3G.mjs +0 -944
- package/dist/LexicalRichText.prod-BfbMQ9uM.mjs +0 -538
- package/dist/LexicalTable.prod-BgO4nCxy.mjs +0 -2336
- package/dist/esm-jbwcVZth.mjs +0 -2
|
@@ -1,8 +1,8 @@
|
|
|
1
|
-
import { d as getPeerDependencyFromEditor, f as namedSignals, l as effect } from "./LexicalExtension.node-
|
|
2
|
-
import {
|
|
3
|
-
import {
|
|
4
|
-
import { l as $onEscapeDown, u as $onEscapeUp } from "./LexicalUtils.node-
|
|
5
|
-
//#region ../../node_modules/.pnpm/@lexical+code-core@0.
|
|
1
|
+
import { d as getPeerDependencyFromEditor, f as namedSignals, l as effect } from "./LexicalExtension.node-5OymZQfy.mjs";
|
|
2
|
+
import { $r as isHTMLElement, $t as COMMAND_PRIORITY_LOW, C as $generateNodesFromRawText, D as $getCaretRange, Et as $normalizeCaret, G as $getSelection, Gn as KEY_ARROW_RIGHT_COMMAND, I as $getDocument, It as $setSelectionFromCaretRange, K as $getSiblingCaret, Kn as KEY_ARROW_UP_COMMAND, Kr as isDOMDocumentNode, L as $getEditor, O as $getCaretRangeInDirection, Q as $getTextPointCaret, Qn as KEY_TAB_COMMAND, Sn as INDENT_CONTENT_COMMAND, St as $isTextNode, Tn as INSERT_TAB_COMMAND, Tr as defineExtension, Un as KEY_ARROW_DOWN_COMMAND, Ur as getTextDirection, Wn as KEY_ARROW_LEFT_COMMAND, Yn as KEY_ENTER_COMMAND, Yr as isDOMTextNode, _ as $createTabNode, _r as TextNode, bi as tokenizeRawText, br as configExtension, ci as mergeRegister, d as $createLineBreakNode, dt as $isLineBreakNode, er as MOVE_TO_END, fi as removeClassNamesFromElement, gr as TabNode, hn as ElementNode, m as $createPoint, mi as setDOMStyleFromCSS, mt as $isRangeSelection, n as $applyNodeReplacement, nr as OUTDENT_CONTENT_COMMAND, ot as $isElementNode, p as $createParagraphNode, pi as safeCast, tr as MOVE_TO_START, tt as $insertNodes, u as $create, vr as addClassNamesToElement, xt as $isTabNode } from "./Lexical.node-D6wf2D5M.mjs";
|
|
3
|
+
import { _ as defineOverlayRules, c as CoreImportExtension, g as defineImportRule, l as DOMImportExtension, u as ImportOverlays, y as sel } from "./LexicalHtml.node-DpVNt7It.mjs";
|
|
4
|
+
import { l as $onEscapeDown, u as $onEscapeUp } from "./LexicalUtils.node-Df9oPTlA.mjs";
|
|
5
|
+
//#region ../../node_modules/.pnpm/@lexical+code-core@0.49.0_typescript@6.0.3/node_modules/@lexical/code-core/dist/LexicalCodeCore.prod.mjs
|
|
6
6
|
/**
|
|
7
7
|
* Copyright (c) Meta Platforms, Inc. and affiliates.
|
|
8
8
|
*
|
|
@@ -10,28 +10,28 @@ import { l as $onEscapeDown, u as $onEscapeUp } from "./LexicalUtils.node-BVAwOk
|
|
|
10
10
|
* LICENSE file in the root directory of this source tree.
|
|
11
11
|
*
|
|
12
12
|
*/
|
|
13
|
-
function
|
|
13
|
+
function se(e, ...t) {
|
|
14
14
|
const n = new URL("https://lexical.dev/docs/error"), r = new URLSearchParams();
|
|
15
15
|
r.append("code", e);
|
|
16
16
|
for (const e of t) r.append("v", e);
|
|
17
17
|
throw n.search = r.toString(), Error(`Minified Lexical error #${e}; visit ${n.toString()} for the full message or use the non-minified dev environment for full errors and additional helpful warnings.`);
|
|
18
18
|
}
|
|
19
|
-
function
|
|
19
|
+
function le(e, t) {
|
|
20
20
|
let n = e;
|
|
21
|
-
for (let r = $getSiblingCaret(e, t); r && (
|
|
21
|
+
for (let r = $getSiblingCaret(e, t); r && (ke(r.origin) || $isTabNode(r.origin)); r = r.getAdjacentCaret()) n = r.origin;
|
|
22
22
|
return n;
|
|
23
23
|
}
|
|
24
|
-
function
|
|
25
|
-
return
|
|
24
|
+
function ue(e) {
|
|
25
|
+
return le(e, "previous");
|
|
26
26
|
}
|
|
27
|
-
function
|
|
28
|
-
return
|
|
27
|
+
function ce(e) {
|
|
28
|
+
return le(e, "next");
|
|
29
29
|
}
|
|
30
|
-
function
|
|
31
|
-
const t =
|
|
30
|
+
function ae(e) {
|
|
31
|
+
const t = ue(e), n = ce(e);
|
|
32
32
|
let r = t;
|
|
33
33
|
for (; null !== r;) {
|
|
34
|
-
if (
|
|
34
|
+
if (ke(r)) {
|
|
35
35
|
const e = getTextDirection(r.getTextContent());
|
|
36
36
|
if (null !== e) return e;
|
|
37
37
|
}
|
|
@@ -45,7 +45,7 @@ function ue(e) {
|
|
|
45
45
|
}
|
|
46
46
|
return null;
|
|
47
47
|
}
|
|
48
|
-
function
|
|
48
|
+
function ge(e, t) {
|
|
49
49
|
let n = null, r = null, i = e, o = t, s = e.getTextContent();
|
|
50
50
|
for (;;) {
|
|
51
51
|
if (0 === o) {
|
|
@@ -54,7 +54,7 @@ function ce(e, t) {
|
|
|
54
54
|
i = null;
|
|
55
55
|
break;
|
|
56
56
|
}
|
|
57
|
-
if (
|
|
57
|
+
if (ke(e) || $isTabNode(e) || $isLineBreakNode(e) || se(167), i = e, $isLineBreakNode(i)) {
|
|
58
58
|
n = {
|
|
59
59
|
node: i,
|
|
60
60
|
offset: 1
|
|
@@ -64,28 +64,28 @@ function ce(e, t) {
|
|
|
64
64
|
o = Math.max(0, i.getTextContentSize() - 1), s = i.getTextContent();
|
|
65
65
|
} else o--;
|
|
66
66
|
const e = s[o];
|
|
67
|
-
|
|
67
|
+
ke(i) && " " !== e && (r = {
|
|
68
68
|
node: i,
|
|
69
69
|
offset: o
|
|
70
70
|
});
|
|
71
71
|
}
|
|
72
72
|
if (null !== r) return r;
|
|
73
73
|
let l = null;
|
|
74
|
-
if (t < e.getTextContentSize())
|
|
74
|
+
if (t < e.getTextContentSize()) ke(e) && (l = e.getTextContent()[t]);
|
|
75
75
|
else {
|
|
76
76
|
const t = e.getNextSibling();
|
|
77
|
-
|
|
77
|
+
ke(t) && (l = t.getTextContent()[0]);
|
|
78
78
|
}
|
|
79
79
|
if (null !== l && " " !== l) return n;
|
|
80
80
|
{
|
|
81
81
|
const r = function(e, t) {
|
|
82
82
|
let n = e, r = t, i = e.getTextContent(), o = e.getTextContentSize();
|
|
83
83
|
for (;;) {
|
|
84
|
-
if (!
|
|
84
|
+
if (!ke(n) || r === o) {
|
|
85
85
|
if (n = n.getNextSibling(), null === n || $isLineBreakNode(n)) return null;
|
|
86
|
-
|
|
86
|
+
ke(n) && (r = 0, i = n.getTextContent(), o = n.getTextContentSize());
|
|
87
87
|
}
|
|
88
|
-
if (
|
|
88
|
+
if (ke(n)) {
|
|
89
89
|
if (" " !== i[r]) return {
|
|
90
90
|
node: n,
|
|
91
91
|
offset: r
|
|
@@ -97,117 +97,114 @@ function ce(e, t) {
|
|
|
97
97
|
return null !== r ? r : n;
|
|
98
98
|
}
|
|
99
99
|
}
|
|
100
|
-
function
|
|
101
|
-
const t =
|
|
102
|
-
return $isLineBreakNode(t) &&
|
|
100
|
+
function fe(e) {
|
|
101
|
+
const t = ce(e);
|
|
102
|
+
return $isLineBreakNode(t) && se(168), t;
|
|
103
103
|
}
|
|
104
|
-
function
|
|
104
|
+
function he(e) {
|
|
105
105
|
const t = [];
|
|
106
106
|
return tokenizeRawText(e, {
|
|
107
107
|
linebreak: () => t.push($createLineBreakNode()),
|
|
108
108
|
tab: () => t.push($createTabNode()),
|
|
109
|
-
text: (e) => t.push(
|
|
109
|
+
text: (e) => t.push(Le(e))
|
|
110
110
|
}), t;
|
|
111
111
|
}
|
|
112
|
-
function
|
|
112
|
+
function pe(e, t, n) {
|
|
113
113
|
if (!Number.isInteger(t) || t <= 0) return !1;
|
|
114
114
|
const r = e.getTextContent(), i = /^ +/.exec(r);
|
|
115
115
|
if (!i) return !1;
|
|
116
116
|
const o = Math.min(t, i[0].length), s = e.getKey(), l = n.anchor.key === s && "text" === n.anchor.type ? n.anchor.offset : null, u = n.focus.key === s && "text" === n.focus.type ? n.focus.offset : null;
|
|
117
117
|
return e.spliceText(0, o, ""), null !== l && n.anchor.set(s, Math.max(0, l - o), "text"), null !== u && n.focus.set(s, Math.max(0, u - o), "text"), !0;
|
|
118
118
|
}
|
|
119
|
-
const
|
|
120
|
-
|
|
119
|
+
const de = "javascript";
|
|
120
|
+
const me = () => de;
|
|
121
|
+
function xe(e, t) {
|
|
121
122
|
for (const n of e.childNodes) {
|
|
122
123
|
if (isHTMLElement(n) && n.tagName === t) return !0;
|
|
123
|
-
if (
|
|
124
|
+
if (xe(n, t)) return !0;
|
|
124
125
|
}
|
|
125
126
|
return !1;
|
|
126
127
|
}
|
|
127
|
-
const
|
|
128
|
-
|
|
128
|
+
const Se = "data-language";
|
|
129
|
+
const ye = "data-highlight-language";
|
|
130
|
+
const be = "data-theme";
|
|
131
|
+
var Ce = class extends ElementNode {
|
|
129
132
|
__language;
|
|
130
133
|
__theme;
|
|
131
134
|
__isSyntaxHighlightSupported;
|
|
132
|
-
|
|
133
|
-
return "code"
|
|
134
|
-
|
|
135
|
-
|
|
136
|
-
|
|
135
|
+
$config() {
|
|
136
|
+
return this.config("code", {
|
|
137
|
+
extends: ElementNode,
|
|
138
|
+
importDOM: {
|
|
139
|
+
code: (e) => null != e.textContent && (/\r?\n/.test(e.textContent) || xe(e, "BR")) ? {
|
|
140
|
+
conversion: Ne,
|
|
141
|
+
priority: 1
|
|
142
|
+
} : null,
|
|
143
|
+
div: () => ({
|
|
144
|
+
conversion: Ae,
|
|
145
|
+
priority: 1
|
|
146
|
+
}),
|
|
147
|
+
pre: () => ({
|
|
148
|
+
conversion: Ne,
|
|
149
|
+
priority: 0
|
|
150
|
+
}),
|
|
151
|
+
table: (e) => He(e) ? {
|
|
152
|
+
conversion: Pe,
|
|
153
|
+
priority: 3
|
|
154
|
+
} : null,
|
|
155
|
+
td: (e) => {
|
|
156
|
+
const t = e, n = t.closest("table");
|
|
157
|
+
return t.classList.contains("js-file-line") || n && He(n) ? {
|
|
158
|
+
conversion: Oe,
|
|
159
|
+
priority: 3
|
|
160
|
+
} : null;
|
|
161
|
+
},
|
|
162
|
+
tr: (e) => {
|
|
163
|
+
const t = e.closest("table");
|
|
164
|
+
return t && He(t) ? {
|
|
165
|
+
conversion: Oe,
|
|
166
|
+
priority: 3
|
|
167
|
+
} : null;
|
|
168
|
+
}
|
|
169
|
+
}
|
|
170
|
+
});
|
|
137
171
|
}
|
|
138
|
-
constructor(e, t) {
|
|
172
|
+
constructor(e = void 0, t) {
|
|
139
173
|
super(t), this.__language = e || void 0, this.__isSyntaxHighlightSupported = !1, this.__theme = void 0;
|
|
140
174
|
}
|
|
141
175
|
afterCloneFrom(e) {
|
|
142
176
|
super.afterCloneFrom(e), this.__language = e.__language, this.__theme = e.__theme, this.__isSyntaxHighlightSupported = e.__isSyntaxHighlightSupported;
|
|
143
177
|
}
|
|
144
178
|
createDOM(e) {
|
|
145
|
-
const t =
|
|
179
|
+
const t = $getDocument().createElement("code");
|
|
146
180
|
addClassNamesToElement(t, e.theme.code), t.setAttribute("spellcheck", "false");
|
|
147
181
|
const n = this.getLanguage();
|
|
148
|
-
n && (t.setAttribute(
|
|
182
|
+
n && (t.setAttribute(Se, n), this.getIsSyntaxHighlightSupported() && t.setAttribute(ye, n));
|
|
149
183
|
const r = this.getTheme();
|
|
150
|
-
r && t.setAttribute(
|
|
184
|
+
r && t.setAttribute(be, r);
|
|
151
185
|
const i = this.getStyle();
|
|
152
186
|
return i && setDOMStyleFromCSS(t.style, i), t;
|
|
153
187
|
}
|
|
154
188
|
updateDOM(e, t, n) {
|
|
155
189
|
const r = this.__language, i = e.__language;
|
|
156
|
-
r ? r !== i && t.setAttribute(
|
|
190
|
+
r ? r !== i && t.setAttribute(Se, r) : i && t.removeAttribute(Se);
|
|
157
191
|
const o = this.__isSyntaxHighlightSupported;
|
|
158
|
-
e.__isSyntaxHighlightSupported && i ? o && r ? r !== i && t.setAttribute(
|
|
192
|
+
e.__isSyntaxHighlightSupported && i ? o && r ? r !== i && t.setAttribute(ye, r) : t.removeAttribute(ye) : o && r && t.setAttribute(ye, r);
|
|
159
193
|
const s = this.__theme, l = e.__theme;
|
|
160
|
-
s ? s !== l && t.setAttribute(
|
|
194
|
+
s ? s !== l && t.setAttribute(be, s) : l && t.removeAttribute(be);
|
|
161
195
|
const u = this.__style, c = e.__style;
|
|
162
196
|
return u !== c && setDOMStyleFromCSS(t.style, u, c), !1;
|
|
163
197
|
}
|
|
164
198
|
exportDOM(e) {
|
|
165
|
-
const t =
|
|
199
|
+
const t = $getDocument().createElement("pre");
|
|
166
200
|
addClassNamesToElement(t, e._config.theme.code), t.setAttribute("spellcheck", "false");
|
|
167
201
|
const n = this.getLanguage();
|
|
168
|
-
n && (t.setAttribute(
|
|
202
|
+
n && (t.setAttribute(Se, n), this.getIsSyntaxHighlightSupported() && t.setAttribute(ye, n));
|
|
169
203
|
const r = this.getTheme();
|
|
170
|
-
r && t.setAttribute(
|
|
204
|
+
r && t.setAttribute(be, r);
|
|
171
205
|
const i = this.getStyle();
|
|
172
206
|
return i && setDOMStyleFromCSS(t.style, i), { element: t };
|
|
173
207
|
}
|
|
174
|
-
static importDOM() {
|
|
175
|
-
return {
|
|
176
|
-
code: (e) => null != e.textContent && (/\r?\n/.test(e.textContent) || de(e, "BR")) ? {
|
|
177
|
-
conversion: Ce,
|
|
178
|
-
priority: 1
|
|
179
|
-
} : null,
|
|
180
|
-
div: () => ({
|
|
181
|
-
conversion: Ne,
|
|
182
|
-
priority: 1
|
|
183
|
-
}),
|
|
184
|
-
pre: () => ({
|
|
185
|
-
conversion: Ce,
|
|
186
|
-
priority: 0
|
|
187
|
-
}),
|
|
188
|
-
table: (e) => Pe(e) ? {
|
|
189
|
-
conversion: Te,
|
|
190
|
-
priority: 3
|
|
191
|
-
} : null,
|
|
192
|
-
td: (e) => {
|
|
193
|
-
const t = e, n = t.closest("table");
|
|
194
|
-
return t.classList.contains("js-file-line") || n && Pe(n) ? {
|
|
195
|
-
conversion: Ae,
|
|
196
|
-
priority: 3
|
|
197
|
-
} : null;
|
|
198
|
-
},
|
|
199
|
-
tr: (e) => {
|
|
200
|
-
const t = e.closest("table");
|
|
201
|
-
return t && Pe(t) ? {
|
|
202
|
-
conversion: Ae,
|
|
203
|
-
priority: 3
|
|
204
|
-
} : null;
|
|
205
|
-
}
|
|
206
|
-
};
|
|
207
|
-
}
|
|
208
|
-
static importJSON(e) {
|
|
209
|
-
return be().updateFromJSON(e);
|
|
210
|
-
}
|
|
211
208
|
updateFromJSON(e) {
|
|
212
209
|
return super.updateFromJSON(e).setLanguage(e.language).setTheme(e.theme);
|
|
213
210
|
}
|
|
@@ -220,21 +217,21 @@ var ye = class ye extends ElementNode {
|
|
|
220
217
|
}
|
|
221
218
|
insertNewAfter(e, t = !0) {
|
|
222
219
|
if (!getPeerDependencyFromEditor($getEditor(), "@lexical/code")) {
|
|
223
|
-
const t =
|
|
220
|
+
const t = $e(e);
|
|
224
221
|
if (t) return t;
|
|
225
222
|
}
|
|
226
223
|
const { anchor: n, focus: r } = e, i = (n.isBefore(r) ? n : r).getNode();
|
|
227
224
|
if ($isTextNode(i)) {
|
|
228
|
-
let e =
|
|
225
|
+
let e = ue(i);
|
|
229
226
|
const t = [];
|
|
230
227
|
for (;;) if ($isTabNode(e)) t.push($createTabNode()), e = e.getNextSibling();
|
|
231
228
|
else {
|
|
232
|
-
if (!
|
|
229
|
+
if (!ke(e)) break;
|
|
233
230
|
{
|
|
234
231
|
let n = 0;
|
|
235
232
|
const r = e.getTextContent(), i = e.getTextContentSize();
|
|
236
233
|
for (; n < i && " " === r[n];) n++;
|
|
237
|
-
if (0 !== n && t.push(
|
|
234
|
+
if (0 !== n && t.push(Le(" ".repeat(n))), n !== i) break;
|
|
238
235
|
e = e.getNextSibling();
|
|
239
236
|
}
|
|
240
237
|
}
|
|
@@ -243,7 +240,7 @@ var ye = class ye extends ElementNode {
|
|
|
243
240
|
const a = t[t.length - 1];
|
|
244
241
|
a ? a.select() : 0 === n.offset ? r.selectPrevious() : r.getNextSibling().selectNext(0, 0);
|
|
245
242
|
}
|
|
246
|
-
if (
|
|
243
|
+
if (Te(i)) {
|
|
247
244
|
const { offset: t } = e.anchor;
|
|
248
245
|
i.splice(t, 0, [$createLineBreakNode()]), i.select(t + 1, t + 1);
|
|
249
246
|
}
|
|
@@ -278,43 +275,43 @@ var ye = class ye extends ElementNode {
|
|
|
278
275
|
return this.getLatest().__theme;
|
|
279
276
|
}
|
|
280
277
|
};
|
|
281
|
-
function
|
|
282
|
-
return $create(
|
|
283
|
-
}
|
|
284
|
-
function ve(e) {
|
|
285
|
-
return e instanceof ye;
|
|
278
|
+
function ve(e, t) {
|
|
279
|
+
return $create(Ce).setLanguage(e).setTheme(t);
|
|
286
280
|
}
|
|
287
|
-
function
|
|
288
|
-
return
|
|
281
|
+
function Te(e) {
|
|
282
|
+
return e instanceof Ce;
|
|
289
283
|
}
|
|
290
284
|
function Ne(e) {
|
|
291
|
-
|
|
285
|
+
return { node: ve(e.getAttribute(Se)) };
|
|
286
|
+
}
|
|
287
|
+
function Ae(e) {
|
|
288
|
+
const t = e, n = we(t);
|
|
292
289
|
return n || function(e) {
|
|
293
290
|
let t = e.parentElement;
|
|
294
291
|
for (; null !== t;) {
|
|
295
|
-
if (
|
|
292
|
+
if (we(t)) return !0;
|
|
296
293
|
t = t.parentElement;
|
|
297
294
|
}
|
|
298
295
|
return !1;
|
|
299
|
-
}(t) ? { node: n ?
|
|
296
|
+
}(t) ? { node: n ? ve() : null } : { node: null };
|
|
300
297
|
}
|
|
301
|
-
function
|
|
302
|
-
return { node:
|
|
298
|
+
function Pe() {
|
|
299
|
+
return { node: ve() };
|
|
303
300
|
}
|
|
304
|
-
function
|
|
301
|
+
function Oe() {
|
|
305
302
|
return { node: null };
|
|
306
303
|
}
|
|
307
|
-
function
|
|
304
|
+
function we(e) {
|
|
308
305
|
return null !== e.style.fontFamily.match("monospace");
|
|
309
306
|
}
|
|
310
|
-
function
|
|
307
|
+
function He(e) {
|
|
311
308
|
return e.classList.contains("js-file-line-container");
|
|
312
309
|
}
|
|
313
|
-
function
|
|
310
|
+
function $e(e) {
|
|
314
311
|
const { anchor: t } = e;
|
|
315
312
|
if (e.isCollapsed() && "element" === t.type) {
|
|
316
313
|
const e = t.getNode();
|
|
317
|
-
if (
|
|
314
|
+
if (Te(e)) {
|
|
318
315
|
const n = e.getChildrenSize();
|
|
319
316
|
if (n >= 2 && t.offset === n) {
|
|
320
317
|
const t = e.getLastChild();
|
|
@@ -327,16 +324,13 @@ function we(e) {
|
|
|
327
324
|
}
|
|
328
325
|
return null;
|
|
329
326
|
}
|
|
330
|
-
var
|
|
327
|
+
var De = class extends TextNode {
|
|
331
328
|
__highlightType;
|
|
332
329
|
constructor(e = "", t, n) {
|
|
333
330
|
super(e, n), this.__highlightType = t;
|
|
334
331
|
}
|
|
335
|
-
|
|
336
|
-
return "code-highlight";
|
|
337
|
-
}
|
|
338
|
-
static clone(e) {
|
|
339
|
-
return new He(e.__text, e.__highlightType || void 0, e.__key);
|
|
332
|
+
$config() {
|
|
333
|
+
return this.config("code-highlight", { extends: TextNode });
|
|
340
334
|
}
|
|
341
335
|
afterCloneFrom(e) {
|
|
342
336
|
super.afterCloneFrom(e), this.__highlightType = e.__highlightType;
|
|
@@ -353,15 +347,12 @@ var He = class He extends TextNode {
|
|
|
353
347
|
}
|
|
354
348
|
createDOM(e) {
|
|
355
349
|
const t = super.createDOM(e);
|
|
356
|
-
return addClassNamesToElement(t,
|
|
350
|
+
return addClassNamesToElement(t, Be(e.theme, this.__highlightType)), t;
|
|
357
351
|
}
|
|
358
352
|
updateDOM(e, t, n) {
|
|
359
|
-
const r = super.updateDOM(e, t, n), i =
|
|
353
|
+
const r = super.updateDOM(e, t, n), i = Be(n.theme, e.__highlightType), o = Be(n.theme, this.__highlightType);
|
|
360
354
|
return i !== o && (i && removeClassNamesFromElement(t, i), o && addClassNamesToElement(t, o)), r;
|
|
361
355
|
}
|
|
362
|
-
static importJSON(e) {
|
|
363
|
-
return ke().updateFromJSON(e);
|
|
364
|
-
}
|
|
365
356
|
updateFromJSON(e) {
|
|
366
357
|
return super.updateFromJSON(e).setHighlightType(e.highlightType);
|
|
367
358
|
}
|
|
@@ -378,52 +369,54 @@ var He = class He extends TextNode {
|
|
|
378
369
|
return !0;
|
|
379
370
|
}
|
|
380
371
|
createParentElementNode() {
|
|
381
|
-
return
|
|
372
|
+
return ve();
|
|
382
373
|
}
|
|
383
374
|
};
|
|
384
|
-
function
|
|
375
|
+
function Be(e, t) {
|
|
385
376
|
return t && e && e.codeHighlight && e.codeHighlight[t];
|
|
386
377
|
}
|
|
387
|
-
function
|
|
388
|
-
return $applyNodeReplacement(new
|
|
378
|
+
function Le(e = "", t) {
|
|
379
|
+
return $applyNodeReplacement(new De(e, t));
|
|
389
380
|
}
|
|
390
|
-
function
|
|
391
|
-
return e instanceof
|
|
381
|
+
function ke(e) {
|
|
382
|
+
return e instanceof De;
|
|
392
383
|
}
|
|
393
|
-
const
|
|
394
|
-
function
|
|
384
|
+
const Ee = "data-language";
|
|
385
|
+
function Fe(e) {
|
|
395
386
|
return null !== e.style.fontFamily.match("monospace");
|
|
396
387
|
}
|
|
397
|
-
function
|
|
388
|
+
function Me(e) {
|
|
398
389
|
let t = e.parentElement;
|
|
399
390
|
for (; null !== t;) {
|
|
400
|
-
if (
|
|
391
|
+
if (Fe(t)) return !0;
|
|
401
392
|
t = t.parentElement;
|
|
402
393
|
}
|
|
403
394
|
return !1;
|
|
404
395
|
}
|
|
405
|
-
const
|
|
396
|
+
const ze = /* @__PURE__ */ defineOverlayRules([/* @__PURE__ */ defineImportRule({
|
|
406
397
|
$import: (e, t) => e.$importChildren(t),
|
|
407
398
|
match: sel.tag("tr", "td"),
|
|
408
399
|
name: "@lexical/code/github-code-table/unwrap"
|
|
409
|
-
})])
|
|
410
|
-
|
|
400
|
+
})]);
|
|
401
|
+
const Ke = /* @__PURE__ */ defineImportRule({
|
|
402
|
+
$import: (e, t) => [ve(t.getAttribute(Ee)).splice(0, 0, e.$importChildren(t))],
|
|
411
403
|
match: sel.tag("pre"),
|
|
412
404
|
name: "@lexical/code/pre"
|
|
413
|
-
})
|
|
405
|
+
});
|
|
406
|
+
const Ie = /* @__PURE__ */ defineImportRule({
|
|
414
407
|
$import: (e, t, n) => {
|
|
415
408
|
const r = t.textContent || "";
|
|
416
|
-
return /\r?\n/.test(r) || null !== t.querySelector("br") ? [
|
|
409
|
+
return /\r?\n/.test(r) || null !== t.querySelector("br") ? [ve(t.getAttribute(Ee)).splice(0, 0, e.$importChildren(t))] : n();
|
|
417
410
|
},
|
|
418
411
|
match: sel.tag("code"),
|
|
419
412
|
name: "@lexical/code/code-multiline"
|
|
420
413
|
});
|
|
421
|
-
function
|
|
414
|
+
function je(e) {
|
|
422
415
|
if (!isHTMLElement(e)) return !1;
|
|
423
416
|
const t = e.style.fontFamily, n = e.style.whiteSpace;
|
|
424
417
|
return "string" == typeof t && /monospace/i.test(t) && "string" == typeof n && n.startsWith("pre");
|
|
425
418
|
}
|
|
426
|
-
function
|
|
419
|
+
function Je(e) {
|
|
427
420
|
let t = !1;
|
|
428
421
|
const n = [];
|
|
429
422
|
let r = "", i = !1;
|
|
@@ -437,45 +430,47 @@ function Ke(e) {
|
|
|
437
430
|
}
|
|
438
431
|
return o(), t ? n : null;
|
|
439
432
|
}
|
|
440
|
-
function
|
|
433
|
+
function Re(e) {
|
|
441
434
|
for (const t of Array.from(e.children)) {
|
|
442
|
-
if (isHTMLElement(t) &&
|
|
443
|
-
if (null !==
|
|
435
|
+
if (isHTMLElement(t) && je(t)) {
|
|
436
|
+
if (null !== Je(t)) return !0;
|
|
444
437
|
const e = t.nextElementSibling;
|
|
445
|
-
if (e &&
|
|
438
|
+
if (e && je(e)) return !0;
|
|
446
439
|
continue;
|
|
447
440
|
}
|
|
448
|
-
if (
|
|
441
|
+
if (Re(t)) return !0;
|
|
449
442
|
}
|
|
450
443
|
return !1;
|
|
451
444
|
}
|
|
452
|
-
const
|
|
445
|
+
const We = /* @__PURE__ */ defineOverlayRules([/* @__PURE__ */ defineImportRule({
|
|
453
446
|
$import: (e, t, n) => {
|
|
454
|
-
if (!
|
|
455
|
-
const r =
|
|
456
|
-
return null === r || 0 === r.length ? n() : [
|
|
447
|
+
if (!je(t) || Me(t)) return n();
|
|
448
|
+
const r = Je(t);
|
|
449
|
+
return null === r || 0 === r.length ? n() : [ve().splice(0, 0, $generateNodesFromRawText(r.join("\n")))];
|
|
457
450
|
},
|
|
458
451
|
match: sel.tag("div"),
|
|
459
452
|
name: "@lexical/code/vscode-wrapper"
|
|
460
453
|
}), /* @__PURE__ */ defineImportRule({
|
|
461
454
|
$import: (e, t, n) => {
|
|
462
|
-
if (!
|
|
455
|
+
if (!je(t) || Me(t)) return n();
|
|
463
456
|
const r = t.previousElementSibling;
|
|
464
|
-
if (r &&
|
|
457
|
+
if (r && je(r)) return [];
|
|
465
458
|
const i = [];
|
|
466
459
|
let o = t;
|
|
467
|
-
for (; o &&
|
|
468
|
-
return i.length < 2 ? n() : [
|
|
460
|
+
for (; o && je(o);) i.push("BR" === o.tagName ? "" : o.textContent || ""), o = o.nextElementSibling;
|
|
461
|
+
return i.length < 2 ? n() : [ve().splice(0, 0, $generateNodesFromRawText(i.join("\n")))];
|
|
469
462
|
},
|
|
470
463
|
match: sel.tag("div", "br"),
|
|
471
464
|
name: "@lexical/code/vscode-line-run"
|
|
472
|
-
})])
|
|
473
|
-
|
|
465
|
+
})]);
|
|
466
|
+
const qe = /* @__PURE__ */ defineImportRule({
|
|
467
|
+
$import: (e, t, n) => Fe(t) ? [ve().splice(0, 0, e.$importChildren(t))] : Me(t) ? e.$importChildren(t) : n(),
|
|
474
468
|
match: sel.tag("div"),
|
|
475
469
|
name: "@lexical/code/div"
|
|
476
|
-
})
|
|
470
|
+
});
|
|
471
|
+
const Ue = [
|
|
477
472
|
/* @__PURE__ */ defineImportRule({
|
|
478
|
-
$import: (e, t) => [
|
|
473
|
+
$import: (e, t) => [ve().splice(0, 0, e.$importChildren(t, { rules: ze }))],
|
|
479
474
|
match: sel.tag("table").classAll("js-file-line-container"),
|
|
480
475
|
name: "@lexical/code/github-code-table"
|
|
481
476
|
}),
|
|
@@ -484,38 +479,42 @@ const je = /* @__PURE__ */ defineOverlayRules([/* @__PURE__ */ defineImportRule(
|
|
|
484
479
|
match: sel.tag("td").classAll("js-file-line"),
|
|
485
480
|
name: "@lexical/code/github-code-cell-by-class"
|
|
486
481
|
}),
|
|
487
|
-
|
|
488
|
-
|
|
489
|
-
|
|
490
|
-
]
|
|
482
|
+
Ie,
|
|
483
|
+
Ke,
|
|
484
|
+
qe
|
|
485
|
+
];
|
|
486
|
+
const Ve = /* @__PURE__ */ defineExtension({
|
|
491
487
|
dependencies: [CoreImportExtension, /* @__PURE__ */ configExtension(DOMImportExtension, {
|
|
492
488
|
preprocess: [(e, t, r) => {
|
|
493
|
-
|
|
489
|
+
Re(isDOMDocumentNode(e) ? e.body : e) && t.session.update(ImportOverlays, (e) => [...e, We]), r();
|
|
494
490
|
}],
|
|
495
|
-
rules:
|
|
491
|
+
rules: Ue
|
|
496
492
|
})],
|
|
497
493
|
name: "@lexical/code",
|
|
498
|
-
nodes: () => [
|
|
499
|
-
register: (e) => e.registerCommand(KEY_ENTER_COMMAND, (e) => {
|
|
494
|
+
nodes: () => [Ce, De],
|
|
495
|
+
register: (e) => mergeRegister(e.registerCommand(KEY_ENTER_COMMAND, (e) => {
|
|
500
496
|
const t = $getSelection();
|
|
501
|
-
return !(!$isRangeSelection(t) ||
|
|
502
|
-
}, COMMAND_PRIORITY_LOW)
|
|
503
|
-
|
|
504
|
-
|
|
497
|
+
return !(!$isRangeSelection(t) || !$e(t)) && (null !== e && e.preventDefault(), !0);
|
|
498
|
+
}, COMMAND_PRIORITY_LOW), e.registerNodeTransform(TabNode, (e) => {
|
|
499
|
+
0 !== e.getFormat() && Te(e.getParent()) && e.setFormat(0);
|
|
500
|
+
}))
|
|
501
|
+
});
|
|
502
|
+
const Ge = /* @__PURE__ */ defineExtension({
|
|
503
|
+
dependencies: [Ve],
|
|
505
504
|
name: "@lexical/code/Import"
|
|
506
505
|
});
|
|
507
|
-
function
|
|
506
|
+
function Qe(e) {
|
|
508
507
|
if (!$isRangeSelection(e)) return !1;
|
|
509
|
-
const t = e.anchor.getNode(), n =
|
|
510
|
-
return
|
|
508
|
+
const t = e.anchor.getNode(), n = Te(t) ? t : t.getParent(), r = e.focus.getNode(), i = Te(r) ? r : r.getParent();
|
|
509
|
+
return Te(n) && n.is(i);
|
|
511
510
|
}
|
|
512
|
-
function
|
|
511
|
+
function Xe(e) {
|
|
513
512
|
const t = e.getNodes(), n = [];
|
|
514
|
-
if (1 === t.length &&
|
|
513
|
+
if (1 === t.length && Te(t[0])) return n;
|
|
515
514
|
let r = [];
|
|
516
515
|
for (let e = 0; e < t.length; e++) {
|
|
517
516
|
const i = t[e];
|
|
518
|
-
|
|
517
|
+
ke(i) || $isTabNode(i) || $isLineBreakNode(i) || se(169), $isLineBreakNode(i) ? r.length > 0 && (n.push(r), r = []) : r.push(i);
|
|
519
518
|
}
|
|
520
519
|
if (r.length > 0) {
|
|
521
520
|
const t = e.isBackward() ? e.anchor : e.focus, i = $createPoint(r[0].getKey(), 0, "text");
|
|
@@ -523,10 +522,10 @@ function Ge(e) {
|
|
|
523
522
|
}
|
|
524
523
|
return n;
|
|
525
524
|
}
|
|
526
|
-
function
|
|
525
|
+
function Ye(e, t) {
|
|
527
526
|
const n = $getSelection();
|
|
528
|
-
if (!$isRangeSelection(n) || !
|
|
529
|
-
const r =
|
|
527
|
+
if (!$isRangeSelection(n) || !Qe(n)) return !1;
|
|
528
|
+
const r = Xe(n), i = r.length;
|
|
530
529
|
if (0 === i && n.isCollapsed()) return e === INDENT_CONTENT_COMMAND && n.insertNodes([$createTabNode()]), !0;
|
|
531
530
|
if (0 === i && e === INDENT_CONTENT_COMMAND && "\n" === n.getTextContent()) {
|
|
532
531
|
const e = $createTabNode(), t = $createLineBreakNode(), r = n.isBackward() ? "previous" : "next";
|
|
@@ -536,22 +535,22 @@ function Qe(e, t) {
|
|
|
536
535
|
const i = r[o];
|
|
537
536
|
if (i.length > 0) {
|
|
538
537
|
let r = i[0];
|
|
539
|
-
if (0 === o && (r =
|
|
538
|
+
if (0 === o && (r = ue(r)), e === INDENT_CONTENT_COMMAND) {
|
|
540
539
|
const e = $createTabNode();
|
|
541
540
|
if (r.insertBefore(e), 0 === o) {
|
|
542
541
|
const t = n.isBackward() ? "focus" : "anchor", i = $createPoint(r.getKey(), 0, "text");
|
|
543
542
|
n[t].is(i) && n[t].set(e.getKey(), 0, "text");
|
|
544
543
|
}
|
|
545
|
-
} else $isTabNode(r) ? r.remove() : void 0 !== t &&
|
|
544
|
+
} else $isTabNode(r) ? r.remove() : void 0 !== t && ke(r) && pe(r, t, n);
|
|
546
545
|
}
|
|
547
546
|
}
|
|
548
547
|
return !0;
|
|
549
548
|
}
|
|
550
|
-
function
|
|
549
|
+
function Ze(e, t) {
|
|
551
550
|
const n = $getSelection();
|
|
552
551
|
if (!$isRangeSelection(n)) return !1;
|
|
553
552
|
const { anchor: r, focus: i } = n, o = r.offset, s = i.offset, l = r.getNode(), a = i.getNode(), g = e === KEY_ARROW_UP_COMMAND;
|
|
554
|
-
if (!
|
|
553
|
+
if (!Qe(n) || !ke(l) && !$isTabNode(l) || !ke(a) && !$isTabNode(a)) return !1;
|
|
555
554
|
if (!t.altKey) {
|
|
556
555
|
if (n.isCollapsed()) {
|
|
557
556
|
const e = l.getParentOrThrow();
|
|
@@ -563,89 +562,89 @@ function Xe(e, t) {
|
|
|
563
562
|
}
|
|
564
563
|
return !1;
|
|
565
564
|
}
|
|
566
|
-
let
|
|
567
|
-
if (l.isBefore(a) ? (
|
|
568
|
-
const p =
|
|
565
|
+
let f, h;
|
|
566
|
+
if (l.isBefore(a) ? (f = ue(l), h = ce(a)) : (f = ue(a), h = ce(l)), null == f || null == h) return !1;
|
|
567
|
+
const p = f.getNodesBetween(h);
|
|
569
568
|
for (let e = 0; e < p.length; e++) {
|
|
570
569
|
const t = p[e];
|
|
571
|
-
if (!
|
|
570
|
+
if (!ke(t) && !$isTabNode(t) && !$isLineBreakNode(t)) return !1;
|
|
572
571
|
}
|
|
573
572
|
t.preventDefault(), t.stopPropagation();
|
|
574
|
-
const d = g ?
|
|
573
|
+
const d = g ? f.getPreviousSibling() : h.getNextSibling();
|
|
575
574
|
if (!$isLineBreakNode(d)) return !0;
|
|
576
575
|
const m = g ? d.getPreviousSibling() : d.getNextSibling();
|
|
577
576
|
if (null == m) return !0;
|
|
578
|
-
const x =
|
|
579
|
-
let
|
|
580
|
-
return d.remove(), p.forEach((e) => e.remove()), e === KEY_ARROW_UP_COMMAND ? (p.forEach((e) =>
|
|
581
|
-
|
|
577
|
+
const x = ke(m) || $isTabNode(m) || $isLineBreakNode(m) ? g ? ue(m) : ce(m) : null;
|
|
578
|
+
let S = null != x ? x : m;
|
|
579
|
+
return d.remove(), p.forEach((e) => e.remove()), e === KEY_ARROW_UP_COMMAND ? (p.forEach((e) => S.insertBefore(e)), S.insertBefore(d)) : (S.insertAfter(d), S = d, p.forEach((e) => {
|
|
580
|
+
S.insertAfter(e), S = e;
|
|
582
581
|
})), n.setTextNodeRange(l, o, a, s), !0;
|
|
583
582
|
}
|
|
584
|
-
function
|
|
583
|
+
function et(e, t) {
|
|
585
584
|
const n = $getSelection();
|
|
586
585
|
if (!$isRangeSelection(n)) return !1;
|
|
587
586
|
const { anchor: r, focus: i } = n, o = r.getNode(), s = i.getNode(), l = e === MOVE_TO_START;
|
|
588
|
-
if (!
|
|
589
|
-
const a = s, g = "rtl" ===
|
|
587
|
+
if (!Qe(n) || !ke(o) && !$isTabNode(o) || !ke(s) && !$isTabNode(s)) return !1;
|
|
588
|
+
const a = s, g = "rtl" === ae(a) ? !l : l, f = r.key, h = r.offset, p = r.type;
|
|
590
589
|
if (g) {
|
|
591
|
-
const e =
|
|
590
|
+
const e = ge(a, i.offset);
|
|
592
591
|
if (null !== e) {
|
|
593
592
|
const { node: t, offset: r } = e;
|
|
594
593
|
$isLineBreakNode(t) ? t.selectNext(0, 0) : n.setTextNodeRange(t, r, t, r);
|
|
595
594
|
} else a.getParentOrThrow().selectStart();
|
|
596
|
-
} else
|
|
597
|
-
return t.shiftKey && n.anchor.set(
|
|
595
|
+
} else fe(a).select();
|
|
596
|
+
return t.shiftKey && n.anchor.set(f, h, p), t.preventDefault(), t.stopPropagation(), !0;
|
|
598
597
|
}
|
|
599
|
-
function
|
|
598
|
+
function tt(e, t, n) {
|
|
600
599
|
return mergeRegister(...n ? [
|
|
601
|
-
e.registerCommand(KEY_ARROW_DOWN_COMMAND, (e) => !e.altKey && $onEscapeDown(
|
|
602
|
-
e.registerCommand(KEY_ARROW_RIGHT_COMMAND, (e) => $onEscapeDown(
|
|
603
|
-
e.registerCommand(KEY_ARROW_UP_COMMAND, (e) => !e.altKey && $onEscapeUp(
|
|
604
|
-
e.registerCommand(KEY_ARROW_LEFT_COMMAND, (e) => $onEscapeUp(
|
|
600
|
+
e.registerCommand(KEY_ARROW_DOWN_COMMAND, (e) => !e.altKey && $onEscapeDown(Te, e), COMMAND_PRIORITY_LOW),
|
|
601
|
+
e.registerCommand(KEY_ARROW_RIGHT_COMMAND, (e) => $onEscapeDown(Te, e), COMMAND_PRIORITY_LOW),
|
|
602
|
+
e.registerCommand(KEY_ARROW_UP_COMMAND, (e) => !e.altKey && $onEscapeUp(Te, e), COMMAND_PRIORITY_LOW),
|
|
603
|
+
e.registerCommand(KEY_ARROW_LEFT_COMMAND, (e) => $onEscapeUp(Te, e), COMMAND_PRIORITY_LOW)
|
|
605
604
|
] : [], e.registerCommand(KEY_TAB_COMMAND, (t) => {
|
|
606
605
|
const n = function(e) {
|
|
607
606
|
const t = $getSelection();
|
|
608
|
-
if (!$isRangeSelection(t) || !
|
|
607
|
+
if (!$isRangeSelection(t) || !Qe(t)) return null;
|
|
609
608
|
const n = e ? OUTDENT_CONTENT_COMMAND : INDENT_CONTENT_COMMAND, r = e ? OUTDENT_CONTENT_COMMAND : INSERT_TAB_COMMAND, i = t.anchor, o = t.focus;
|
|
610
609
|
if (i.is(o)) return r;
|
|
611
|
-
const s =
|
|
610
|
+
const s = Xe(t);
|
|
612
611
|
if (1 !== s.length) return n;
|
|
613
612
|
const l = s[0];
|
|
614
613
|
let u, c;
|
|
615
|
-
0 === l.length &&
|
|
616
|
-
const a =
|
|
617
|
-
return u.isBefore(
|
|
614
|
+
0 === l.length && se(285), t.isBackward() ? (u = o, c = i) : (u = i, c = o);
|
|
615
|
+
const a = ue(l[0]), g = ce(l[0]), f = $createPoint(a.getKey(), 0, "text"), h = $createPoint(g.getKey(), g.getTextContentSize(), "text");
|
|
616
|
+
return u.isBefore(f) || h.isBefore(c) ? n : f.isBefore(u) || c.isBefore(h) ? r : n;
|
|
618
617
|
}(t.shiftKey);
|
|
619
|
-
return null !== n && (t.preventDefault(), e.dispatchCommand(n
|
|
620
|
-
}, COMMAND_PRIORITY_LOW), e.registerCommand(INSERT_TAB_COMMAND, () => !!
|
|
618
|
+
return null !== n && (t.preventDefault(), e.dispatchCommand(n), !0);
|
|
619
|
+
}, COMMAND_PRIORITY_LOW), e.registerCommand(INSERT_TAB_COMMAND, () => !!Qe($getSelection()) && ($insertNodes([$createTabNode()]), !0), COMMAND_PRIORITY_LOW), e.registerCommand(INDENT_CONTENT_COMMAND, () => Ye(INDENT_CONTENT_COMMAND), COMMAND_PRIORITY_LOW), e.registerCommand(OUTDENT_CONTENT_COMMAND, () => Ye(OUTDENT_CONTENT_COMMAND, t), COMMAND_PRIORITY_LOW), e.registerCommand(KEY_ARROW_UP_COMMAND, (e) => {
|
|
621
620
|
const t = $getSelection();
|
|
622
621
|
if (!$isRangeSelection(t)) return !1;
|
|
623
622
|
const { anchor: n } = t, r = n.getNode();
|
|
624
|
-
if (!
|
|
623
|
+
if (!Qe(t)) return !1;
|
|
625
624
|
const i = r.getParent();
|
|
626
|
-
return t.isCollapsed() && 0 === n.offset && null === r.getPreviousSibling() &&
|
|
625
|
+
return t.isCollapsed() && 0 === n.offset && null === r.getPreviousSibling() && Te(i) && null === i.getPreviousSibling() ? (e.preventDefault(), !0) : Ze(KEY_ARROW_UP_COMMAND, e);
|
|
627
626
|
}, COMMAND_PRIORITY_LOW), e.registerCommand(KEY_ARROW_DOWN_COMMAND, (e) => {
|
|
628
627
|
const t = $getSelection();
|
|
629
628
|
if (!$isRangeSelection(t)) return !1;
|
|
630
629
|
const { anchor: n } = t, r = n.getNode();
|
|
631
|
-
return !!
|
|
632
|
-
}, COMMAND_PRIORITY_LOW), e.registerCommand(MOVE_TO_START, (e) =>
|
|
630
|
+
return !!Qe(t) && (t.isCollapsed() && n.offset === r.getTextContentSize() && null === r.getNextSibling() && Te(r.getParentOrThrow()) && null === r.getParentOrThrow().getNextSibling() ? (e.preventDefault(), !0) : Ze(KEY_ARROW_DOWN_COMMAND, e));
|
|
631
|
+
}, COMMAND_PRIORITY_LOW), e.registerCommand(MOVE_TO_START, (e) => et(MOVE_TO_START, e), COMMAND_PRIORITY_LOW), e.registerCommand(MOVE_TO_END, (e) => et(MOVE_TO_END, e), COMMAND_PRIORITY_LOW));
|
|
633
632
|
}
|
|
634
|
-
const
|
|
633
|
+
const nt = /* @__PURE__ */ defineExtension({
|
|
635
634
|
build: (e, t) => namedSignals(t),
|
|
636
635
|
config: /* @__PURE__ */ safeCast({
|
|
637
636
|
disabled: !1,
|
|
638
637
|
escapeWithArrows: !1,
|
|
639
638
|
tabSize: void 0
|
|
640
639
|
}),
|
|
641
|
-
dependencies: [
|
|
640
|
+
dependencies: [Ve],
|
|
642
641
|
name: "@lexical/code-indent",
|
|
643
642
|
register: (e, t, n) => {
|
|
644
643
|
const r = n.getOutput();
|
|
645
644
|
return effect(() => {
|
|
646
|
-
if (!r.disabled.value) return
|
|
645
|
+
if (!r.disabled.value) return tt(e, r.tabSize.value, r.escapeWithArrows.value);
|
|
647
646
|
});
|
|
648
647
|
}
|
|
649
648
|
});
|
|
650
649
|
//#endregion
|
|
651
|
-
export {
|
|
650
|
+
export { Le as $createCodeHighlightNode, ve as $createCodeNode, ae as $getCodeLineDirection, fe as $getEndOfCodeInLine, ue as $getFirstCodeNodeOfLine, ce as $getLastCodeNodeOfLine, ge as $getStartOfCodeInLine, ke as $isCodeHighlightNode, Te as $isCodeNode, pe as $outdentLeadingSpaces, he as $plainifyCodeContent, Ve as CodeExtension, De as CodeHighlightNode, Ge as CodeImportExtension, Ue as CodeImportRules, nt as CodeIndentExtension, Ce as CodeNode, de as DEFAULT_CODE_LANGUAGE, me as getDefaultCodeLanguage, tt as registerCodeIndentation };
|