@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 { f as namedSignals, l as effect } from "./LexicalExtension.node-
|
|
2
|
-
import { $ as
|
|
3
|
-
import { c as
|
|
4
|
-
import {
|
|
5
|
-
//#region ../../node_modules/.pnpm/@lexical+link@0.
|
|
1
|
+
import { f as namedSignals, l as effect } from "./LexicalExtension.node-5OymZQfy.mjs";
|
|
2
|
+
import { $t as COMMAND_PRIORITY_LOW, A as $getChildCaret, At as $rewindSiblingCaret, Dt as $normalizeSelection__EXPERIMENTAL, Et as $normalizeCaret, Ft as $setSelection, G as $getSelection, I as $getDocument, Lr as getNearestEditorFromDOMNode, Pt as $setPointFromCaret, Qr as isHTMLAnchorElement, St as $isTextNode, Tr as defineExtension, Zt as COMMAND_PRIORITY_EDITOR, _i as shallowMergeConfig, _r as TextNode, b as $findMatchingParent, br as configExtension, ci as mergeRegister, di as registerEventListeners, dt as $isLineBreakNode, et as $insertNodeToNearestRootAtCaret, ft as $isNodeSelection, hn as ElementNode, i as $caretFromPoint, l as $copyNode, mt as $isRangeSelection, n as $applyNodeReplacement, ot as $isElementNode, pi as safeCast, qr as isDOMNode, rr as PASTE_COMMAND, v as $createTextNode, vr as addClassNamesToElement, xr as createCommand, yt as $isSiblingCaret, z as $getNearestNodeFromDOMNode } from "./Lexical.node-D6wf2D5M.mjs";
|
|
3
|
+
import { c as CoreImportExtension, g as defineImportRule, l as DOMImportExtension, t as $distributeInlineWrapper, y as sel } from "./LexicalHtml.node-DpVNt7It.mjs";
|
|
4
|
+
import { m as objectKlassEquals } from "./LexicalUtils.node-Df9oPTlA.mjs";
|
|
5
|
+
//#region ../../node_modules/.pnpm/@lexical+link@0.49.0_typescript@6.0.3/node_modules/@lexical/link/dist/LexicalLink.prod.mjs
|
|
6
6
|
/**
|
|
7
7
|
* Copyright (c) Meta Platforms, Inc. and affiliates.
|
|
8
8
|
*
|
|
@@ -10,27 +10,26 @@ import { h as objectKlassEquals } from "./LexicalUtils.node-BVAwOkL4.mjs";
|
|
|
10
10
|
* LICENSE file in the root directory of this source tree.
|
|
11
11
|
*
|
|
12
12
|
*/
|
|
13
|
-
const
|
|
13
|
+
const j = /* @__PURE__ */ new Set([
|
|
14
14
|
"http:",
|
|
15
15
|
"https:",
|
|
16
16
|
"mailto:",
|
|
17
17
|
"sms:",
|
|
18
18
|
"tel:"
|
|
19
19
|
]);
|
|
20
|
-
var
|
|
20
|
+
var Z = class extends ElementNode {
|
|
21
21
|
__url;
|
|
22
22
|
__target;
|
|
23
23
|
__rel;
|
|
24
24
|
__title;
|
|
25
|
-
|
|
26
|
-
return "link"
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
}, t.__key);
|
|
25
|
+
$config() {
|
|
26
|
+
return this.config("link", {
|
|
27
|
+
extends: ElementNode,
|
|
28
|
+
importDOM: { a: () => ({
|
|
29
|
+
conversion: Q,
|
|
30
|
+
priority: 1
|
|
31
|
+
}) }
|
|
32
|
+
});
|
|
34
33
|
}
|
|
35
34
|
constructor(t = "", e = {}, n) {
|
|
36
35
|
super(n);
|
|
@@ -41,7 +40,7 @@ var z = class z extends ElementNode {
|
|
|
41
40
|
super.afterCloneFrom(t), this.__url = t.__url, this.__rel = t.__rel, this.__target = t.__target, this.__title = t.__title;
|
|
42
41
|
}
|
|
43
42
|
createDOM(t) {
|
|
44
|
-
const e =
|
|
43
|
+
const e = $getDocument().createElement("a");
|
|
45
44
|
return this.updateLinkDOM(null, e, t), addClassNamesToElement(e, t.theme.link), e;
|
|
46
45
|
}
|
|
47
46
|
updateLinkDOM(t, e, n) {
|
|
@@ -60,25 +59,18 @@ var z = class z extends ElementNode {
|
|
|
60
59
|
updateDOM(t, e, n) {
|
|
61
60
|
return this.updateLinkDOM(t, e, n), !1;
|
|
62
61
|
}
|
|
63
|
-
static importDOM() {
|
|
64
|
-
return { a: (t) => ({
|
|
65
|
-
conversion: Z,
|
|
66
|
-
priority: 1
|
|
67
|
-
}) };
|
|
68
|
-
}
|
|
69
|
-
static importJSON(t) {
|
|
70
|
-
return q().updateFromJSON(t);
|
|
71
|
-
}
|
|
72
62
|
updateFromJSON(t) {
|
|
73
63
|
return super.updateFromJSON(t).setURL(t.url).setRel(t.rel || null).setTarget(t.target || null).setTitle(t.title || null);
|
|
74
64
|
}
|
|
75
65
|
sanitizeUrl(t) {
|
|
76
|
-
|
|
66
|
+
const e = t;
|
|
67
|
+
t = lt(t);
|
|
77
68
|
try {
|
|
78
|
-
const e = new URL(
|
|
79
|
-
if (!
|
|
80
|
-
} catch (
|
|
81
|
-
|
|
69
|
+
const e = new URL(lt(t));
|
|
70
|
+
if (!j.has(e.protocol)) return "about:blank";
|
|
71
|
+
} catch (t) {
|
|
72
|
+
const n = e.replace(/[\u0000-\u001F\u007F\s]/g, "").match(/^([a-z][a-z0-9+.-]*):/i);
|
|
73
|
+
if (null != n && !j.has(`${n[1].toLowerCase()}:`)) return "about:blank";
|
|
82
74
|
}
|
|
83
75
|
return t;
|
|
84
76
|
}
|
|
@@ -150,31 +142,31 @@ var z = class z extends ElementNode {
|
|
|
150
142
|
return this.getType() === t.getType() && this.__url === t.__url && this.__target === t.__target && this.__rel === t.__rel && this.__title === t.__title;
|
|
151
143
|
}
|
|
152
144
|
};
|
|
153
|
-
function
|
|
145
|
+
function H(t) {
|
|
154
146
|
const e = $caretFromPoint(t, "next");
|
|
155
147
|
return [e, e.getFlipped()];
|
|
156
148
|
}
|
|
157
|
-
function
|
|
149
|
+
function G(t, e) {
|
|
158
150
|
for (const n of e) if (n.origin.isAttached()) {
|
|
159
151
|
$setPointFromCaret(t, $normalizeCaret(n));
|
|
160
152
|
return;
|
|
161
153
|
}
|
|
162
154
|
}
|
|
163
|
-
function
|
|
155
|
+
function q(t) {
|
|
164
156
|
const e = $getSelection();
|
|
165
157
|
let n = null, r = null;
|
|
166
158
|
function i() {
|
|
167
|
-
$isRangeSelection(e) && (
|
|
159
|
+
$isRangeSelection(e) && (G(e.anchor, n), G(e.focus, r), $normalizeSelection__EXPERIMENTAL(e));
|
|
168
160
|
}
|
|
169
|
-
$isRangeSelection(e) && (n =
|
|
170
|
-
let
|
|
161
|
+
$isRangeSelection(e) && (n = H(e.anchor), r = H(e.focus));
|
|
162
|
+
let s = !1;
|
|
171
163
|
for (const e of $getChildCaret(t, "next")) {
|
|
172
164
|
const n = e.origin;
|
|
173
165
|
if ($isElementNode(n) && !n.isInline()) {
|
|
174
166
|
const r = n.getChildren();
|
|
175
167
|
if (r.length > 0) {
|
|
176
168
|
const e = $copyNode(t);
|
|
177
|
-
e.append(...r), n.append(e),
|
|
169
|
+
e.append(...r), n.append(e), s = !0;
|
|
178
170
|
}
|
|
179
171
|
$insertNodeToNearestRootAtCaret(n, $rewindSiblingCaret(e), { $shouldSplit: () => !1 });
|
|
180
172
|
}
|
|
@@ -187,11 +179,11 @@ function G(t) {
|
|
|
187
179
|
}
|
|
188
180
|
if (t.isAttached()) {
|
|
189
181
|
const e = t.getPreviousSibling();
|
|
190
|
-
if (
|
|
191
|
-
const
|
|
192
|
-
|
|
182
|
+
if (X(e) && e.shouldMergeAdjacentLink(t)) return n && (n = u(n, e, t)), r && (r = u(r, e, t)), e.append(...t.getChildren()), t.remove(), void i();
|
|
183
|
+
const l = t.getNextSibling();
|
|
184
|
+
X(l) && t.shouldMergeAdjacentLink(l) && (n && (n = u(n, t, l)), r && (r = u(r, t, l)), t.append(...l.getChildren()), l.remove(), s = !0);
|
|
193
185
|
}
|
|
194
|
-
if (
|
|
186
|
+
if (s) {
|
|
195
187
|
if (!t.canBeEmpty() && t.isEmpty()) {
|
|
196
188
|
const e = t.getParent();
|
|
197
189
|
t.remove(), e && e.isEmpty() && e.remove();
|
|
@@ -199,11 +191,11 @@ function G(t) {
|
|
|
199
191
|
i();
|
|
200
192
|
}
|
|
201
193
|
}
|
|
202
|
-
function
|
|
194
|
+
function Q(t) {
|
|
203
195
|
let e = null;
|
|
204
196
|
if (isHTMLAnchorElement(t)) {
|
|
205
197
|
const n = t.textContent;
|
|
206
|
-
(null !== n && "" !== n || t.children.length > 0) && (e =
|
|
198
|
+
(null !== n && "" !== n || t.children.length > 0) && (e = V(t.getAttribute("href") || "", {
|
|
207
199
|
rel: t.getAttribute("rel"),
|
|
208
200
|
target: t.getAttribute("target"),
|
|
209
201
|
title: t.getAttribute("title")
|
|
@@ -211,13 +203,13 @@ function Z(t) {
|
|
|
211
203
|
}
|
|
212
204
|
return { node: e };
|
|
213
205
|
}
|
|
214
|
-
function
|
|
215
|
-
return $applyNodeReplacement(new
|
|
206
|
+
function V(t = "", e) {
|
|
207
|
+
return $applyNodeReplacement(new Z(t, e));
|
|
216
208
|
}
|
|
217
|
-
function
|
|
218
|
-
return t instanceof
|
|
209
|
+
function X(t) {
|
|
210
|
+
return t instanceof Z;
|
|
219
211
|
}
|
|
220
|
-
var
|
|
212
|
+
var Y = class extends Z {
|
|
221
213
|
__isUnlinked;
|
|
222
214
|
constructor(t = "", e = {}, n) {
|
|
223
215
|
super(t, e, n), this.__isUnlinked = void 0 !== e.isUnlinked && null !== e.isUnlinked && e.isUnlinked;
|
|
@@ -225,16 +217,8 @@ var V = class V extends z {
|
|
|
225
217
|
afterCloneFrom(t) {
|
|
226
218
|
super.afterCloneFrom(t), this.__isUnlinked = t.__isUnlinked;
|
|
227
219
|
}
|
|
228
|
-
|
|
229
|
-
return "autolink";
|
|
230
|
-
}
|
|
231
|
-
static clone(t) {
|
|
232
|
-
return new V(t.__url, {
|
|
233
|
-
isUnlinked: t.__isUnlinked,
|
|
234
|
-
rel: t.__rel,
|
|
235
|
-
target: t.__target,
|
|
236
|
-
title: t.__title
|
|
237
|
-
}, t.__key);
|
|
220
|
+
$config() {
|
|
221
|
+
return this.config("autolink", { extends: Z });
|
|
238
222
|
}
|
|
239
223
|
shouldMergeAdjacentLink(t) {
|
|
240
224
|
return !1;
|
|
@@ -247,20 +231,14 @@ var V = class V extends z {
|
|
|
247
231
|
return e.__isUnlinked = t, e;
|
|
248
232
|
}
|
|
249
233
|
createDOM(t) {
|
|
250
|
-
return this.__isUnlinked ?
|
|
234
|
+
return this.__isUnlinked ? $getDocument().createElement("span") : super.createDOM(t);
|
|
251
235
|
}
|
|
252
236
|
updateDOM(t, e, n) {
|
|
253
237
|
return super.updateDOM(t, e, n) || t.__isUnlinked !== this.__isUnlinked;
|
|
254
238
|
}
|
|
255
|
-
static importJSON(t) {
|
|
256
|
-
return X().updateFromJSON(t);
|
|
257
|
-
}
|
|
258
239
|
updateFromJSON(t) {
|
|
259
240
|
return super.updateFromJSON(t).setIsUnlinked(t.isUnlinked || !1);
|
|
260
241
|
}
|
|
261
|
-
static importDOM() {
|
|
262
|
-
return null;
|
|
263
|
-
}
|
|
264
242
|
exportJSON() {
|
|
265
243
|
return {
|
|
266
244
|
...super.exportJSON(),
|
|
@@ -268,7 +246,7 @@ var V = class V extends z {
|
|
|
268
246
|
};
|
|
269
247
|
}
|
|
270
248
|
insertNewAfter(t, e = !0) {
|
|
271
|
-
const n =
|
|
249
|
+
const n = tt(this.__url, {
|
|
272
250
|
isUnlinked: this.__isUnlinked,
|
|
273
251
|
rel: this.__rel,
|
|
274
252
|
target: this.__target,
|
|
@@ -277,14 +255,14 @@ var V = class V extends z {
|
|
|
277
255
|
return this.insertAfter(n, e), n;
|
|
278
256
|
}
|
|
279
257
|
};
|
|
280
|
-
function
|
|
281
|
-
return $applyNodeReplacement(new
|
|
258
|
+
function tt(t = "", e) {
|
|
259
|
+
return $applyNodeReplacement(new Y(t, e));
|
|
282
260
|
}
|
|
283
|
-
function
|
|
284
|
-
return t instanceof
|
|
261
|
+
function et(t) {
|
|
262
|
+
return t instanceof Y;
|
|
285
263
|
}
|
|
286
|
-
const
|
|
287
|
-
function
|
|
264
|
+
const nt = /* @__PURE__ */ createCommand("TOGGLE_LINK_COMMAND");
|
|
265
|
+
function rt(t, e) {
|
|
288
266
|
if ("element" === t.type) {
|
|
289
267
|
const n = t.getNode();
|
|
290
268
|
$isElementNode(n) || function(t, ...e) {
|
|
@@ -297,7 +275,7 @@ function et(t, e) {
|
|
|
297
275
|
}
|
|
298
276
|
return null;
|
|
299
277
|
}
|
|
300
|
-
function
|
|
278
|
+
function it(t, e = {}) {
|
|
301
279
|
let n;
|
|
302
280
|
if (t && "object" == typeof t) {
|
|
303
281
|
const { url: r, ...i } = t;
|
|
@@ -306,21 +284,21 @@ function nt(t, e = {}) {
|
|
|
306
284
|
...e
|
|
307
285
|
};
|
|
308
286
|
} else n = t;
|
|
309
|
-
const { target: r, title: i } = e,
|
|
287
|
+
const { target: r, title: i } = e, s = void 0 === e.rel ? "noreferrer" : e.rel, u = $getSelection();
|
|
310
288
|
if (null === u || !$isRangeSelection(u) && !$isNodeSelection(u)) return;
|
|
311
289
|
if ($isNodeSelection(u)) {
|
|
312
290
|
const t = u.getNodes();
|
|
313
291
|
if (0 === t.length) return;
|
|
314
292
|
t.forEach((t) => {
|
|
315
293
|
if (null === n) {
|
|
316
|
-
const e = $findMatchingParent(t, (t) => !
|
|
294
|
+
const e = $findMatchingParent(t, (t) => !et(t) && X(t));
|
|
317
295
|
e && (e.insertBefore(t), 0 === e.getChildren().length && e.remove());
|
|
318
296
|
} else {
|
|
319
|
-
const e = $findMatchingParent(t, (t) => !
|
|
320
|
-
if (e) e.setURL(n), void 0 !== r && e.setTarget(r), void 0 !==
|
|
297
|
+
const e = $findMatchingParent(t, (t) => !et(t) && X(t));
|
|
298
|
+
if (e) e.setURL(n), void 0 !== r && e.setTarget(r), void 0 !== s && e.setRel(s);
|
|
321
299
|
else {
|
|
322
|
-
const e =
|
|
323
|
-
rel:
|
|
300
|
+
const e = V(n, {
|
|
301
|
+
rel: s,
|
|
324
302
|
target: r
|
|
325
303
|
});
|
|
326
304
|
t.insertBefore(e), e.append(t);
|
|
@@ -330,48 +308,48 @@ function nt(t, e = {}) {
|
|
|
330
308
|
return;
|
|
331
309
|
}
|
|
332
310
|
if (u.isCollapsed() && null === n) for (const t of u.getNodes()) {
|
|
333
|
-
const e = $findMatchingParent(t, (t) => !
|
|
311
|
+
const e = $findMatchingParent(t, (t) => !et(t) && X(t));
|
|
334
312
|
null !== e && (e.getParentOrThrow().splice(e.getIndexWithinParent(), 0, e.getChildren()), e.remove());
|
|
335
313
|
return;
|
|
336
314
|
}
|
|
337
|
-
const
|
|
315
|
+
const a = u.extract();
|
|
338
316
|
if (null === n) {
|
|
339
317
|
const t = /* @__PURE__ */ new Set();
|
|
340
|
-
|
|
341
|
-
const n = $findMatchingParent(e, (t) => !
|
|
318
|
+
a.forEach((e) => {
|
|
319
|
+
const n = $findMatchingParent(e, (t) => !et(t) && X(t));
|
|
342
320
|
if (null !== n) {
|
|
343
321
|
const e = n.getKey();
|
|
344
322
|
if (t.has(e)) return;
|
|
345
323
|
(function(t, e) {
|
|
346
|
-
const n = new Set(e.filter((e) => t.isParentOf(e)).map((t) => t.getKey())), r = t.getChildren(), i = (r) => n.has(r.getKey()) || $isElementNode(r) && e.some((e) => t.isParentOf(e) && r.isParentOf(e)),
|
|
347
|
-
if (
|
|
324
|
+
const n = new Set(e.filter((e) => t.isParentOf(e)).map((t) => t.getKey())), r = t.getChildren(), i = (r) => n.has(r.getKey()) || $isElementNode(r) && e.some((e) => t.isParentOf(e) && r.isParentOf(e)), s = r.filter(i);
|
|
325
|
+
if (s.length === r.length) return r.forEach((e) => t.insertBefore(e)), void t.remove();
|
|
348
326
|
const o = r.findIndex(i), u = r.findLastIndex(i), a = 0 === o, c = u === r.length - 1;
|
|
349
|
-
if (a)
|
|
350
|
-
else if (c) for (let e =
|
|
327
|
+
if (a) s.forEach((e) => t.insertBefore(e));
|
|
328
|
+
else if (c) for (let e = s.length - 1; e >= 0; e--) t.insertAfter(s[e]);
|
|
351
329
|
else {
|
|
352
|
-
for (let e =
|
|
330
|
+
for (let e = s.length - 1; e >= 0; e--) t.insertAfter(s[e]);
|
|
353
331
|
const e = r.slice(u + 1);
|
|
354
332
|
if (e.length > 0) {
|
|
355
333
|
const n = $copyNode(t);
|
|
356
|
-
|
|
334
|
+
s[s.length - 1].insertAfter(n), e.forEach((t) => n.append(t));
|
|
357
335
|
}
|
|
358
336
|
}
|
|
359
|
-
})(n,
|
|
337
|
+
})(n, a), t.add(e);
|
|
360
338
|
}
|
|
361
339
|
});
|
|
362
340
|
return;
|
|
363
341
|
}
|
|
364
|
-
const
|
|
365
|
-
|
|
342
|
+
const p = /* @__PURE__ */ new Set(), m = (t) => {
|
|
343
|
+
p.has(t.getKey()) || (p.add(t.getKey()), t.setURL(n), void 0 !== r && t.setTarget(r), void 0 !== s && t.setRel(s), void 0 !== i && t.setTitle(i));
|
|
366
344
|
};
|
|
367
|
-
if (1 ===
|
|
368
|
-
const t =
|
|
345
|
+
if (1 === a.length) {
|
|
346
|
+
const t = a[0], e = $findMatchingParent(t, X);
|
|
369
347
|
if (null !== e) return m(e);
|
|
370
348
|
}
|
|
371
349
|
(function(t) {
|
|
372
350
|
const e = $getSelection();
|
|
373
351
|
if (!$isRangeSelection(e)) return t();
|
|
374
|
-
const n = $normalizeSelection__EXPERIMENTAL(e), r = n.isBackward(), i =
|
|
352
|
+
const n = $normalizeSelection__EXPERIMENTAL(e), r = n.isBackward(), i = rt(n.anchor, r ? -1 : 0), s = rt(n.focus, r ? 0 : -1);
|
|
375
353
|
t();
|
|
376
354
|
if (i || s) {
|
|
377
355
|
const t = $getSelection();
|
|
@@ -390,17 +368,17 @@ function nt(t, e = {}) {
|
|
|
390
368
|
}
|
|
391
369
|
})(() => {
|
|
392
370
|
let t = null;
|
|
393
|
-
for (const e of
|
|
371
|
+
for (const e of a) {
|
|
394
372
|
if (!e.isAttached()) continue;
|
|
395
|
-
const
|
|
396
|
-
if (
|
|
397
|
-
m(
|
|
373
|
+
const l = $findMatchingParent(e, X);
|
|
374
|
+
if (l) {
|
|
375
|
+
m(l);
|
|
398
376
|
continue;
|
|
399
377
|
}
|
|
400
378
|
if ($isElementNode(e)) {
|
|
401
379
|
if (!e.isInline()) continue;
|
|
402
|
-
if (
|
|
403
|
-
if (!(
|
|
380
|
+
if (X(e)) {
|
|
381
|
+
if (!(et(e) || null !== t && t.getParentOrThrow().isParentOf(e))) {
|
|
404
382
|
m(e), t = e;
|
|
405
383
|
continue;
|
|
406
384
|
}
|
|
@@ -409,20 +387,20 @@ function nt(t, e = {}) {
|
|
|
409
387
|
continue;
|
|
410
388
|
}
|
|
411
389
|
}
|
|
412
|
-
const
|
|
413
|
-
|
|
414
|
-
rel:
|
|
390
|
+
const o = e.getPreviousSibling();
|
|
391
|
+
X(o) && o.is(t) ? o.append(e) : (t = V(n, {
|
|
392
|
+
rel: s,
|
|
415
393
|
target: r,
|
|
416
394
|
title: i
|
|
417
395
|
}), e.insertAfter(t), t.append(e));
|
|
418
396
|
}
|
|
419
397
|
});
|
|
420
398
|
}
|
|
421
|
-
const
|
|
422
|
-
function
|
|
423
|
-
return t.match(/^[a-z][a-z0-9+.-]*:/i) || t.match(/^[/#.]/) ? t : t.includes("@") ? `mailto:${t}` :
|
|
399
|
+
const st = /^\+?[0-9\s()-]{5,}$/;
|
|
400
|
+
function lt(t) {
|
|
401
|
+
return t.match(/^[a-z][a-z0-9+.-]*:/i) || t.match(/^[/#.]/) ? t : t.includes("@") ? `mailto:${t}` : st.test(t) ? `tel:${t}` : `https://${t}`;
|
|
424
402
|
}
|
|
425
|
-
const
|
|
403
|
+
const ot = [/* @__PURE__ */ defineImportRule({
|
|
426
404
|
$import: (t, e) => {
|
|
427
405
|
if (!e.textContent && 0 === e.children.length) return [];
|
|
428
406
|
const n = e.getAttribute("href") || "", r = {
|
|
@@ -430,19 +408,19 @@ const st = [/* @__PURE__ */ defineImportRule({
|
|
|
430
408
|
target: e.getAttribute("target"),
|
|
431
409
|
title: e.getAttribute("title")
|
|
432
410
|
};
|
|
433
|
-
return $distributeInlineWrapper(t.$importChildren(e), () =>
|
|
411
|
+
return $distributeInlineWrapper(t.$importChildren(e), () => V(n, r));
|
|
434
412
|
},
|
|
435
413
|
match: sel.tag("a"),
|
|
436
414
|
name: "@lexical/link/a"
|
|
437
415
|
})];
|
|
438
|
-
function
|
|
439
|
-
return mergeRegister(t.registerNodeTransform(
|
|
416
|
+
function ut(t, n) {
|
|
417
|
+
return mergeRegister(t.registerNodeTransform(Z, q), t.registerCommand(nt, (t) => {
|
|
440
418
|
const e = n.validateUrl.peek(), r = n.attributes.peek();
|
|
441
|
-
if (null === t) return
|
|
442
|
-
if ("string" == typeof t) return !(void 0 !== e && !e(t)) && (
|
|
419
|
+
if (null === t) return it(null), !0;
|
|
420
|
+
if ("string" == typeof t) return !(void 0 !== e && !e(t)) && (it(t, r), !0);
|
|
443
421
|
{
|
|
444
422
|
const { url: e, target: n, rel: i, title: s } = t;
|
|
445
|
-
return
|
|
423
|
+
return it(e, {
|
|
446
424
|
...r,
|
|
447
425
|
rel: i,
|
|
448
426
|
target: n,
|
|
@@ -459,43 +437,44 @@ function lt(t, n) {
|
|
|
459
437
|
if (null === n.clipboardData) return !1;
|
|
460
438
|
const s = n.clipboardData.getData("text");
|
|
461
439
|
if (!e(s)) return !1;
|
|
462
|
-
return !i.getNodes().some((t) => $isElementNode(t) || $isTextNode(t) && !t.isSimpleText()) && (t.dispatchCommand(
|
|
440
|
+
return !i.getNodes().some((t) => $isElementNode(t) || $isTextNode(t) && !t.isSimpleText()) && (t.dispatchCommand(nt, {
|
|
463
441
|
...r,
|
|
464
442
|
url: s
|
|
465
443
|
}), n.preventDefault(), !0);
|
|
466
444
|
}, COMMAND_PRIORITY_LOW);
|
|
467
445
|
}));
|
|
468
446
|
}
|
|
469
|
-
const
|
|
447
|
+
const at = /* @__PURE__ */ defineExtension({
|
|
470
448
|
build: (e, n, r) => namedSignals(n),
|
|
471
449
|
config: {
|
|
472
450
|
attributes: void 0,
|
|
473
451
|
validateUrl: void 0
|
|
474
452
|
},
|
|
475
|
-
dependencies: [CoreImportExtension, /* @__PURE__ */ configExtension(DOMImportExtension, { rules:
|
|
453
|
+
dependencies: [CoreImportExtension, /* @__PURE__ */ configExtension(DOMImportExtension, { rules: ot })],
|
|
476
454
|
mergeConfig(t, e) {
|
|
477
455
|
const n = shallowMergeConfig(t, e);
|
|
478
456
|
return t.attributes && (n.attributes = shallowMergeConfig(t.attributes, n.attributes)), n;
|
|
479
457
|
},
|
|
480
458
|
name: "@lexical/link/Link",
|
|
481
|
-
nodes: () => [
|
|
482
|
-
register: (t, e, n) =>
|
|
483
|
-
})
|
|
484
|
-
|
|
459
|
+
nodes: () => [Z],
|
|
460
|
+
register: (t, e, n) => ut(t, n.getOutput())
|
|
461
|
+
});
|
|
462
|
+
const ct = /* @__PURE__ */ defineExtension({
|
|
463
|
+
dependencies: [at],
|
|
485
464
|
name: "@lexical/link/Import"
|
|
486
465
|
});
|
|
487
|
-
function
|
|
466
|
+
function gt(t, e, n = {}) {
|
|
488
467
|
const r = (n) => {
|
|
489
468
|
const r = n.target;
|
|
490
469
|
if (!isDOMNode(r)) return;
|
|
491
|
-
const
|
|
492
|
-
if (null ===
|
|
493
|
-
let
|
|
494
|
-
if (
|
|
470
|
+
const i = getNearestEditorFromDOMNode(r);
|
|
471
|
+
if (null === i) return;
|
|
472
|
+
let l = null, u = null, a = !1;
|
|
473
|
+
if (i.update(() => {
|
|
495
474
|
const t = $getNearestNodeFromDOMNode(r);
|
|
496
475
|
if (null !== t) {
|
|
497
476
|
const n = $findMatchingParent(t, $isElementNode);
|
|
498
|
-
if (!e.disabled.peek()) if (
|
|
477
|
+
if (!e.disabled.peek()) if (X(n)) a = et(n) && n.getIsUnlinked(), l = n.sanitizeUrl(n.getURL()), u = n.getTarget();
|
|
499
478
|
else {
|
|
500
479
|
const t = function(t, e) {
|
|
501
480
|
let n = t;
|
|
@@ -505,34 +484,35 @@ function at(t, e, n = {}) {
|
|
|
505
484
|
}
|
|
506
485
|
return null;
|
|
507
486
|
}(r, isHTMLAnchorElement);
|
|
508
|
-
null !== t && (
|
|
487
|
+
null !== t && (l = t.href, u = t.target);
|
|
509
488
|
}
|
|
510
489
|
}
|
|
511
|
-
}), null ===
|
|
512
|
-
const
|
|
513
|
-
if ($isRangeSelection(
|
|
514
|
-
const
|
|
515
|
-
window.open(
|
|
516
|
-
},
|
|
490
|
+
}), null === l || "" === l || a) return;
|
|
491
|
+
const g = t.read("latest", $getSelection);
|
|
492
|
+
if ($isRangeSelection(g) && !g.isCollapsed()) return void n.preventDefault();
|
|
493
|
+
const d = "auxclick" === n.type && 1 === n.button;
|
|
494
|
+
window.open(l, e.newTab.peek() || d || n.metaKey || n.ctrlKey || "_blank" === u ? "_blank" : "_self"), n.preventDefault();
|
|
495
|
+
}, i = (t) => {
|
|
517
496
|
1 === t.button && r(t);
|
|
518
497
|
};
|
|
519
498
|
return t.registerRootListener((t) => {
|
|
520
|
-
if (t) return
|
|
521
|
-
|
|
522
|
-
|
|
499
|
+
if (t) return registerEventListeners(t, {
|
|
500
|
+
click: r,
|
|
501
|
+
mouseup: i
|
|
502
|
+
}, n);
|
|
523
503
|
});
|
|
524
504
|
}
|
|
525
|
-
const
|
|
505
|
+
const ft = /* @__PURE__ */ defineExtension({
|
|
526
506
|
build: (e, n, r) => namedSignals(n),
|
|
527
507
|
config: /* @__PURE__ */ safeCast({
|
|
528
508
|
disabled: !1,
|
|
529
509
|
newTab: !1
|
|
530
510
|
}),
|
|
531
|
-
dependencies: [
|
|
511
|
+
dependencies: [at],
|
|
532
512
|
name: "@lexical/link/ClickableLink",
|
|
533
|
-
register: (t, e, n) =>
|
|
513
|
+
register: (t, e, n) => gt(t, n.getOutput())
|
|
534
514
|
});
|
|
535
|
-
function
|
|
515
|
+
function dt(t, e = (t) => t) {
|
|
536
516
|
return (n) => {
|
|
537
517
|
const r = t.exec(n);
|
|
538
518
|
return null === r ? null : {
|
|
@@ -543,36 +523,51 @@ function gt(t, e = (t) => t) {
|
|
|
543
523
|
};
|
|
544
524
|
};
|
|
545
525
|
}
|
|
546
|
-
|
|
526
|
+
const ht = /((https?:\/\/(www\.)?)|(www\.))[-\p{L}\p{N}@:%._+~#=]{1,256}\.[\p{L}\p{N}]{1,6}(?:[-\p{L}\p{N}()@:%_+.~#?&//=]*[\p{L}\p{N}()@_~#?&//=])?/u;
|
|
527
|
+
const pt = (t) => {
|
|
528
|
+
const e = ht.exec(t);
|
|
529
|
+
if (null === e) return null;
|
|
530
|
+
let n = e[0], r = 0;
|
|
531
|
+
for (const t of n) "(" === t ? r++ : ")" === t && r--;
|
|
532
|
+
for (; r < 0 && n.endsWith(")");) n = n.slice(0, -1), r++;
|
|
533
|
+
return {
|
|
534
|
+
index: e.index,
|
|
535
|
+
length: n.length,
|
|
536
|
+
text: n,
|
|
537
|
+
url: n.startsWith("http") ? n : `https://${n}`
|
|
538
|
+
};
|
|
539
|
+
};
|
|
540
|
+
const _t = dt(/(([^<>()[\]\\.,;:\s@"]{1,64}(\.[^<>()[\]\\.,;:\s@"]{1,64}){0,63})|(".{1,255}"))@((\[[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\])|(([a-zA-Z\-0-9]{1,63}\.){1,127}[a-zA-Z]{2,63}))/, (t) => `mailto:${t}`);
|
|
541
|
+
function mt(t, e) {
|
|
547
542
|
for (let n = 0; n < e.length; n++) {
|
|
548
543
|
const r = e[n](t);
|
|
549
544
|
if (r) return r;
|
|
550
545
|
}
|
|
551
546
|
return null;
|
|
552
547
|
}
|
|
553
|
-
const
|
|
554
|
-
function
|
|
548
|
+
const xt = /[.,;\s]/;
|
|
549
|
+
function bt(t, e) {
|
|
555
550
|
return e.test(t);
|
|
556
551
|
}
|
|
557
|
-
function
|
|
558
|
-
return
|
|
552
|
+
function kt(t, e) {
|
|
553
|
+
return bt(t[t.length - 1], e);
|
|
559
554
|
}
|
|
560
|
-
function
|
|
561
|
-
return
|
|
555
|
+
function Ut(t, e) {
|
|
556
|
+
return bt(t[0], e);
|
|
562
557
|
}
|
|
563
|
-
function
|
|
558
|
+
function vt(t, e) {
|
|
564
559
|
let n = t.getPreviousSibling();
|
|
565
|
-
return $isElementNode(n) && (n = n.getLastDescendant()), null === n || $isLineBreakNode(n) || $isTextNode(n) &&
|
|
560
|
+
return $isElementNode(n) && (n = n.getLastDescendant()), null === n || $isLineBreakNode(n) || $isTextNode(n) && kt(n.getTextContent(), e);
|
|
566
561
|
}
|
|
567
|
-
function
|
|
562
|
+
function Tt(t, e) {
|
|
568
563
|
let n = t.getNextSibling();
|
|
569
|
-
return $isElementNode(n) && (n = n.getFirstDescendant()), null === n || $isLineBreakNode(n) || $isTextNode(n) &&
|
|
564
|
+
return $isElementNode(n) && (n = n.getFirstDescendant()), null === n || $isLineBreakNode(n) || $isTextNode(n) && Ut(n.getTextContent(), e);
|
|
570
565
|
}
|
|
571
|
-
function
|
|
572
|
-
if (!(t > 0 ?
|
|
573
|
-
return e < r.length ?
|
|
566
|
+
function Ct(t, e, n, r, i) {
|
|
567
|
+
if (!(t > 0 ? bt(r[t - 1], n) : vt(i[0], n))) return !1;
|
|
568
|
+
return e < r.length ? bt(r[e], n) : Tt(i[i.length - 1], n);
|
|
574
569
|
}
|
|
575
|
-
function
|
|
570
|
+
function Lt(t, e, n) {
|
|
576
571
|
const r = [], i = [], s = [];
|
|
577
572
|
let l = 0, o = 0;
|
|
578
573
|
const u = [...t];
|
|
@@ -587,8 +582,8 @@ function bt(t, e, n) {
|
|
|
587
582
|
s
|
|
588
583
|
];
|
|
589
584
|
}
|
|
590
|
-
function
|
|
591
|
-
const i =
|
|
585
|
+
function St(t, e, n, r) {
|
|
586
|
+
const i = tt(r.url, r.attributes);
|
|
592
587
|
if (1 === t.length) {
|
|
593
588
|
let s, l = t[0];
|
|
594
589
|
0 === e ? [s, l] = l.splitText(n) : [, s, l] = l.splitText(e, n);
|
|
@@ -597,32 +592,32 @@ function vt(t, e, n, r) {
|
|
|
597
592
|
}
|
|
598
593
|
if (t.length > 1) {
|
|
599
594
|
const r = t[0];
|
|
600
|
-
let s,
|
|
595
|
+
let s, l = r.getTextContent().length;
|
|
601
596
|
0 === e ? s = r : [, s] = r.splitText(e);
|
|
602
597
|
const u = [];
|
|
603
|
-
let
|
|
598
|
+
let a;
|
|
604
599
|
for (let e = 1; e < t.length; e++) {
|
|
605
|
-
const r = t[e], i = r.getTextContent().length, s =
|
|
606
|
-
if (s < n) if (
|
|
600
|
+
const r = t[e], i = r.getTextContent().length, s = l;
|
|
601
|
+
if (s < n) if (l + i <= n) u.push(r);
|
|
607
602
|
else {
|
|
608
603
|
const [t, e] = r.splitText(n - s);
|
|
609
|
-
u.push(t),
|
|
604
|
+
u.push(t), a = e;
|
|
610
605
|
}
|
|
611
|
-
|
|
606
|
+
l += i;
|
|
612
607
|
}
|
|
613
608
|
const f = $getSelection(), d = f ? f.getNodes().find($isTextNode) : void 0, h = $createTextNode(s.getTextContent());
|
|
614
|
-
return h.setFormat(s.getFormat()), h.setDetail(s.getDetail()), h.setStyle(s.getStyle()), i.append(h, ...u), d && d === s && ($isRangeSelection(f) ? h.select(f.anchor.offset, f.focus.offset) : $isNodeSelection(f) && h.select(0, h.getTextContent().length)), s.replace(i),
|
|
609
|
+
return h.setFormat(s.getFormat()), h.setDetail(s.getDetail()), h.setStyle(s.getStyle()), i.append(h, ...u), d && d === s && ($isRangeSelection(f) ? h.select(f.anchor.offset, f.focus.offset) : $isNodeSelection(f) && h.select(0, h.getTextContent().length)), s.replace(i), a;
|
|
615
610
|
}
|
|
616
611
|
}
|
|
617
|
-
function
|
|
612
|
+
function At(t, e, n, r) {
|
|
618
613
|
const i = t.getChildren(), s = i.length;
|
|
619
614
|
for (let e = 0; e < s; e++) {
|
|
620
615
|
const r = i[e];
|
|
621
|
-
if (!$isTextNode(r) || !r.isSimpleText()) return
|
|
616
|
+
if (!$isTextNode(r) || !r.isSimpleText()) return Pt(t), void n(null, t.getURL());
|
|
622
617
|
}
|
|
623
|
-
const l = t.getTextContent(), o =
|
|
624
|
-
if (null === o || o.text !== l) return
|
|
625
|
-
if (!
|
|
618
|
+
const l = t.getTextContent(), o = mt(l, e);
|
|
619
|
+
if (null === o || o.text !== l) return Pt(t), void n(null, t.getURL());
|
|
620
|
+
if (!vt(t, r) || !Tt(t, r)) return Pt(t), void n(null, t.getURL());
|
|
626
621
|
const u = t.getURL();
|
|
627
622
|
if (u !== o.url && (t.setURL(o.url), n(o.url, u)), o.attributes) {
|
|
628
623
|
const e = t.getRel();
|
|
@@ -631,41 +626,41 @@ function Ut(t, e, n, r) {
|
|
|
631
626
|
r !== o.attributes.target && (t.setTarget(o.attributes.target || null), n(o.attributes.target || null, r));
|
|
632
627
|
}
|
|
633
628
|
}
|
|
634
|
-
function
|
|
629
|
+
function Pt(t) {
|
|
635
630
|
const e = t.getChildren();
|
|
636
631
|
for (let n = e.length - 1; n >= 0; n--) t.insertAfter(e[n]);
|
|
637
632
|
return t.remove(), e.map((t) => t.getLatest());
|
|
638
633
|
}
|
|
639
|
-
const
|
|
634
|
+
const Nt = {
|
|
640
635
|
changeHandlers: [],
|
|
641
636
|
excludeParents: [],
|
|
642
637
|
matchers: [],
|
|
643
|
-
separatorRegex:
|
|
638
|
+
separatorRegex: xt
|
|
644
639
|
};
|
|
645
|
-
function
|
|
646
|
-
const { matchers: n, changeHandlers: r, excludeParents: i, separatorRegex: s =
|
|
640
|
+
function Rt(t, e = Nt) {
|
|
641
|
+
const { matchers: n, changeHandlers: r, excludeParents: i, separatorRegex: s = xt } = e, l = (t, e) => {
|
|
647
642
|
for (const n of r) n(t, e);
|
|
648
643
|
};
|
|
649
644
|
return mergeRegister(t.registerNodeTransform(TextNode, (t) => {
|
|
650
645
|
const e = t.getParentOrThrow(), r = t.getPreviousSibling();
|
|
651
|
-
if (
|
|
652
|
-
else if (!
|
|
653
|
-
if (t.isSimpleText() && (
|
|
646
|
+
if (et(e)) At(e, n, l, s);
|
|
647
|
+
else if (!X(e) && !i.some((t) => t(e))) {
|
|
648
|
+
if (t.isSimpleText() && (Ut(t.getTextContent(), s) || !et(r))) (function(t, e, n, r) {
|
|
654
649
|
for (const e of t) {
|
|
655
650
|
const t = e.getParent();
|
|
656
|
-
if (
|
|
651
|
+
if (et(t) && !t.getIsUnlinked()) return;
|
|
657
652
|
}
|
|
658
653
|
let i = [...t];
|
|
659
654
|
const s = i.map((t) => t.getTextContent()).join("");
|
|
660
655
|
let l, o = s, u = 0;
|
|
661
|
-
for (; (l =
|
|
656
|
+
for (; (l = mt(o, e)) && null !== l;) {
|
|
662
657
|
const t = l.index, e = t + l.length;
|
|
663
|
-
if (
|
|
664
|
-
const [r, , s, a] =
|
|
658
|
+
if (Ct(u + t, u + e, r, s, i)) {
|
|
659
|
+
const [r, , s, a] = Lt(i, u + t, u + e);
|
|
665
660
|
let c = !1;
|
|
666
661
|
for (const t of s) {
|
|
667
662
|
const e = t.getParent();
|
|
668
|
-
if (
|
|
663
|
+
if (et(e) && !e.getIsUnlinked()) {
|
|
669
664
|
c = !0;
|
|
670
665
|
break;
|
|
671
666
|
}
|
|
@@ -674,7 +669,7 @@ function Lt(t, e = Ct) {
|
|
|
674
669
|
u += e, o = o.substring(e);
|
|
675
670
|
continue;
|
|
676
671
|
}
|
|
677
|
-
const g =
|
|
672
|
+
const g = St(s, u + t - r, u + e - r, l);
|
|
678
673
|
i = g ? [g, ...a] : a, n(l.url, null), u = 0;
|
|
679
674
|
} else u += e;
|
|
680
675
|
o = o.substring(e);
|
|
@@ -684,34 +679,34 @@ function Lt(t, e = Ct) {
|
|
|
684
679
|
let n = t.getNextSibling();
|
|
685
680
|
for (; null !== n && $isTextNode(n) && n.isSimpleText() && (e.push(n), !/[\s]/.test(n.getTextContent()));) n = n.getNextSibling();
|
|
686
681
|
return e;
|
|
687
|
-
}(t), n,
|
|
682
|
+
}(t), n, l, s);
|
|
688
683
|
(function(t, e, n, r) {
|
|
689
684
|
const i = t.getParent(), s = t.getPreviousSibling(), l = t.getNextSibling(), o = t.getTextContent();
|
|
690
|
-
if (!
|
|
691
|
-
if (
|
|
692
|
-
if (!
|
|
685
|
+
if (!et(i) || i.getIsUnlinked()) {
|
|
686
|
+
if (et(s) && !s.getIsUnlinked() && s.is(t.getPreviousSibling()) && t.getParent() === s.getParent()) {
|
|
687
|
+
if (!Ut(o, r)) return Pt(s), void n(null, s.getURL());
|
|
693
688
|
if (u = o, s.isEmailURI() ? /^\.[a-zA-Z]{2,}/.test(u) : /^\.[a-zA-Z0-9]{1,}/.test(u)) {
|
|
694
|
-
const i = s.getTextContent() + o, l =
|
|
695
|
-
null !== l && l.text === i && (s.append(t),
|
|
689
|
+
const i = s.getTextContent() + o, l = mt(i, e);
|
|
690
|
+
null !== l && l.text === i && (s.append(t), At(s, e, n, r), n(null, s.getURL()));
|
|
696
691
|
}
|
|
697
692
|
}
|
|
698
693
|
var u;
|
|
699
|
-
!
|
|
694
|
+
!et(l) || l.getIsUnlinked() || kt(o, r) || l.is(t.getNextSibling()) && t.getParent() === l.getParent() && (Pt(l), n(null, l.getURL()));
|
|
700
695
|
}
|
|
701
|
-
})(t, n,
|
|
696
|
+
})(t, n, l, s);
|
|
702
697
|
}
|
|
703
|
-
}), t.registerCommand(
|
|
698
|
+
}), t.registerCommand(nt, (t) => {
|
|
704
699
|
const e = $getSelection();
|
|
705
700
|
if (null !== t || !$isRangeSelection(e)) return !1;
|
|
706
701
|
return e.extract().forEach((t) => {
|
|
707
702
|
const e = t.getParent();
|
|
708
|
-
|
|
703
|
+
et(e) && (e.setIsUnlinked(!e.getIsUnlinked()), e.markDirty());
|
|
709
704
|
}), !1;
|
|
710
705
|
}, COMMAND_PRIORITY_LOW));
|
|
711
706
|
}
|
|
712
|
-
const
|
|
713
|
-
config:
|
|
714
|
-
dependencies: [
|
|
707
|
+
const Ot = /* @__PURE__ */ defineExtension({
|
|
708
|
+
config: Nt,
|
|
709
|
+
dependencies: [at],
|
|
715
710
|
mergeConfig(t, e) {
|
|
716
711
|
const n = shallowMergeConfig(t, e);
|
|
717
712
|
for (const r of [
|
|
@@ -725,8 +720,8 @@ const St = /* @__PURE__ */ defineExtension({
|
|
|
725
720
|
return n;
|
|
726
721
|
},
|
|
727
722
|
name: "@lexical/link/AutoLink",
|
|
728
|
-
nodes: [
|
|
729
|
-
register:
|
|
723
|
+
nodes: [Y],
|
|
724
|
+
register: Rt
|
|
730
725
|
});
|
|
731
726
|
//#endregion
|
|
732
|
-
export {
|
|
727
|
+
export { tt as $createAutoLinkNode, V as $createLinkNode, et as $isAutoLinkNode, X as $isLinkNode, it as $toggleLink, Ot as AutoLinkExtension, Y as AutoLinkNode, ft as ClickableLinkExtension, at as LinkExtension, ct as LinkImportExtension, ot as LinkImportRules, Z as LinkNode, nt as TOGGLE_LINK_COMMAND, _t as autoLinkEmailMatcher, pt as autoLinkUrlMatcher, dt as createLinkMatcherWithRegExp, lt as formatUrl, Rt as registerAutoLink, gt as registerClickableLink, ut as registerLink };
|