quoin-editor 1.7.0 → 2.0.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/CHANGELOG.md +21 -1
- package/MIGRATION.md +137 -23
- package/README.md +32 -11
- package/dist/ai-labels-BXX32H9a.d.cts +53 -0
- package/dist/ai-labels-BXX32H9a.d.ts +53 -0
- package/dist/ai.cjs +84 -86
- package/dist/ai.d.cts +4 -53
- package/dist/ai.d.ts +4 -53
- package/dist/ai.js +8 -10
- package/dist/ai.js.map +1 -1
- package/dist/catalogue.cjs +27 -26
- package/dist/catalogue.d.cts +10 -1
- package/dist/catalogue.d.ts +10 -1
- package/dist/catalogue.js +18 -17
- package/dist/catalogue.js.map +1 -1
- package/dist/{chunk-MNA7MBCH.js → chunk-2UKI26JA.js} +9 -11
- package/dist/chunk-2UKI26JA.js.map +1 -0
- package/dist/{chunk-MZXW2HXP.cjs → chunk-4PIJC4FD.cjs} +27 -29
- package/dist/{chunk-OS2O6IKX.js → chunk-5RBMZGKV.js} +4 -4
- package/dist/{chunk-OS2O6IKX.js.map → chunk-5RBMZGKV.js.map} +1 -1
- package/dist/{chunk-OJ4O6HWC.js → chunk-5X52BAZB.js} +10 -12
- package/dist/chunk-5X52BAZB.js.map +1 -0
- package/dist/{chunk-JY5VUHKN.cjs → chunk-5YAJZSTI.cjs} +28 -30
- package/dist/{chunk-YEFPH27F.cjs → chunk-66OPHDFA.cjs} +92 -94
- package/dist/{chunk-PWUFFHAQ.js → chunk-6BVE46K7.js} +8 -10
- package/dist/chunk-6BVE46K7.js.map +1 -0
- package/dist/{chunk-LKZJ2TDU.cjs → chunk-77CNOLHY.cjs} +10 -13
- package/dist/{chunk-4T4TJ2QS.cjs → chunk-7E43TURF.cjs} +7 -7
- package/dist/{chunk-BJTOLCRR.js → chunk-7Y4B7NHO.js} +2 -2
- package/dist/chunk-7Y4B7NHO.js.map +1 -0
- package/dist/{chunk-7GU25Z6L.js → chunk-B4VCDJSA.js} +9 -11
- package/dist/chunk-B4VCDJSA.js.map +1 -0
- package/dist/{chunk-QR2NIDUK.cjs → chunk-BYYCD54G.cjs} +2 -2
- package/dist/{chunk-6T5YGCZ5.cjs → chunk-CJVJNMOB.cjs} +302 -299
- package/dist/{chunk-CSKKSXCE.js → chunk-CSPCDVCT.js} +3 -3
- package/dist/{chunk-CSKKSXCE.js.map → chunk-CSPCDVCT.js.map} +1 -1
- package/dist/{chunk-BF7733XS.cjs → chunk-D6CIIWCU.cjs} +57 -59
- package/dist/{chunk-GHNQKJMD.js → chunk-DBOZFNWU.js} +3 -3
- package/dist/{chunk-GHNQKJMD.js.map → chunk-DBOZFNWU.js.map} +1 -1
- package/dist/{chunk-BM2GRZNM.cjs → chunk-DJU25PFC.cjs} +11 -11
- package/dist/chunk-DLQCTGC3.js +10 -0
- package/dist/chunk-DLQCTGC3.js.map +1 -0
- package/dist/{chunk-RQXJKJ5S.js → chunk-EU5IGKMP.js} +7 -10
- package/dist/chunk-EU5IGKMP.js.map +1 -0
- package/dist/{chunk-VZZPCYA3.cjs → chunk-FK7EBZPX.cjs} +226 -226
- package/dist/{chunk-BXSWZEA5.js → chunk-GPTJYWGS.js} +3 -3
- package/dist/{chunk-BXSWZEA5.js.map → chunk-GPTJYWGS.js.map} +1 -1
- package/dist/{chunk-I722LBD3.cjs → chunk-HOSDMHK6.cjs} +32 -34
- package/dist/{chunk-AZF7B2AE.cjs → chunk-IKZSCTRF.cjs} +11 -11
- package/dist/{chunk-R7MYG522.js → chunk-IW4TMECB.js} +3 -3
- package/dist/{chunk-R7MYG522.js.map → chunk-IW4TMECB.js.map} +1 -1
- package/dist/{chunk-PLUMKN4B.js → chunk-J2SVYBTC.js} +10 -12
- package/dist/chunk-J2SVYBTC.js.map +1 -0
- package/dist/{chunk-UZS3TW75.js → chunk-KQPZTSW3.js} +9 -11
- package/dist/chunk-KQPZTSW3.js.map +1 -0
- package/dist/{chunk-STKGRXSA.cjs → chunk-LEICOZYK.cjs} +15 -17
- package/dist/{chunk-H3C3MJW5.cjs → chunk-LM3DHROX.cjs} +2 -2
- package/dist/{chunk-AD3NY7NA.js → chunk-LSI4RMTY.js} +3 -3
- package/dist/{chunk-AD3NY7NA.js.map → chunk-LSI4RMTY.js.map} +1 -1
- package/dist/{chunk-QOIVLYMW.js → chunk-M77A3EGD.js} +5 -5
- package/dist/{chunk-QOIVLYMW.js.map → chunk-M77A3EGD.js.map} +1 -1
- package/dist/{chunk-5JEQZIRI.js → chunk-MAS4AEF4.js} +8 -10
- package/dist/chunk-MAS4AEF4.js.map +1 -0
- package/dist/{chunk-KDK2ATMB.cjs → chunk-NFO3W644.cjs} +51 -53
- package/dist/{chunk-XFEDJEJF.js → chunk-NL5J77VD.js} +204 -204
- package/dist/chunk-NL5J77VD.js.map +1 -0
- package/dist/{chunk-WN7BZDNH.cjs → chunk-PURYVDC3.cjs} +13 -13
- package/dist/{chunk-G25FMFEZ.js → chunk-UDBLZILE.js} +4 -4
- package/dist/{chunk-G25FMFEZ.js.map → chunk-UDBLZILE.js.map} +1 -1
- package/dist/{chunk-FNJOPGMN.cjs → chunk-V4WQG7FR.cjs} +116 -118
- package/dist/{chunk-IJKGF6SC.js → chunk-YABGWOAV.js} +8 -10
- package/dist/chunk-YABGWOAV.js.map +1 -0
- package/dist/{chunk-XZ4NC3Q7.cjs → chunk-YEDPBYO5.cjs} +4 -4
- package/dist/{chunk-QJ34MOFV.cjs → chunk-Z6LAARPB.cjs} +315 -320
- package/dist/{chunk-HSLOPJVT.js → chunk-ZN5DHNSL.js} +19 -16
- package/dist/chunk-ZN5DHNSL.js.map +1 -0
- package/dist/chunk-ZWTIRGY5.cjs +10 -0
- package/dist/comments-labels-DWqsSz8G.d.cts +30 -0
- package/dist/comments-labels-DWqsSz8G.d.ts +30 -0
- package/dist/comments.cjs +63 -65
- package/dist/comments.d.cts +4 -30
- package/dist/comments.d.ts +4 -30
- package/dist/comments.js +9 -11
- package/dist/comments.js.map +1 -1
- package/dist/{diagram-extension-Da7hp-tv.d.ts → diagram-extension-22x_njXB.d.ts} +4 -12
- package/dist/{diagram-extension-D573COJv.d.cts → diagram-extension-C_FSkoj9.d.cts} +4 -12
- package/dist/diagram-labels-Bi_jEZ8_.d.cts +11 -0
- package/dist/diagram-labels-Bi_jEZ8_.d.ts +11 -0
- package/dist/diagram.cjs +10 -9
- package/dist/diagram.d.cts +3 -2
- package/dist/diagram.d.ts +3 -2
- package/dist/diagram.js +7 -6
- package/dist/diff-labels-DWwg7N0n.d.cts +27 -0
- package/dist/diff-labels-DWwg7N0n.d.ts +27 -0
- package/dist/diff.cjs +27 -29
- package/dist/diff.d.cts +4 -27
- package/dist/diff.d.ts +4 -27
- package/dist/diff.js +5 -7
- package/dist/diff.js.map +1 -1
- package/dist/docx.cjs +30 -30
- package/dist/docx.js +3 -3
- package/dist/embed-labels-BiVa9HYl.d.cts +23 -0
- package/dist/embed-labels-BiVa9HYl.d.ts +23 -0
- package/dist/embed.cjs +10 -9
- package/dist/embed.d.cts +4 -23
- package/dist/embed.d.ts +4 -23
- package/dist/embed.js +8 -7
- package/dist/emoji-extension-C832oGeT.d.ts +16 -0
- package/dist/emoji-extension-Dk5IQLZf.d.cts +16 -0
- package/dist/{emoji-extension-gRKnbW8G.d.ts → emoji-labels-YwOms7ZJ.d.cts} +2 -15
- package/dist/{emoji-extension-C3o_Y5uC.d.cts → emoji-labels-YwOms7ZJ.d.ts} +2 -15
- package/dist/emoji.cjs +10 -9
- package/dist/emoji.d.cts +4 -3
- package/dist/emoji.d.ts +4 -3
- package/dist/emoji.js +7 -6
- package/dist/engine.cjs +58 -58
- package/dist/engine.d.cts +8 -7
- package/dist/engine.d.ts +8 -7
- package/dist/engine.js +3 -3
- package/dist/find-extension-BfruAPLi.d.cts +15 -0
- package/dist/find-extension-DmK9_N81.d.ts +15 -0
- package/dist/{find-extension-B_Ctrs6T.d.ts → find-labels-C4vs8Qe9.d.cts} +2 -14
- package/dist/{find-extension-BGGsJMu4.d.cts → find-labels-C4vs8Qe9.d.ts} +2 -14
- package/dist/find.cjs +11 -10
- package/dist/find.d.cts +2 -1
- package/dist/find.d.ts +2 -1
- package/dist/find.js +7 -6
- package/dist/headless.cjs +69 -89
- package/dist/headless.d.cts +21 -28
- package/dist/headless.d.ts +21 -28
- package/dist/headless.js +4 -4
- package/dist/highlight.cjs +7 -6
- package/dist/highlight.js +6 -5
- package/dist/highlight.js.map +1 -1
- package/dist/{index-CsG7OQoq.d.cts → index-3fYvwqUZ.d.cts} +1 -1
- package/dist/{index-h1llgZM-.d.ts → index-CgxnzCO5.d.ts} +1 -1
- package/dist/index.cjs +82 -101
- package/dist/index.d.cts +18 -185
- package/dist/index.d.ts +18 -185
- package/dist/index.js +6 -5
- package/dist/labels-BhRJYo46.d.ts +176 -0
- package/dist/labels-CiCxj2jP.d.cts +176 -0
- package/dist/locale-ar.cjs +565 -0
- package/dist/locale-ar.d.cts +63 -0
- package/dist/locale-ar.d.ts +63 -0
- package/dist/locale-ar.js +551 -0
- package/dist/locale-ar.js.map +1 -0
- package/dist/locale-de.cjs +510 -0
- package/dist/locale-de.d.cts +63 -0
- package/dist/locale-de.d.ts +63 -0
- package/dist/locale-de.js +496 -0
- package/dist/locale-de.js.map +1 -0
- package/dist/locale-es.cjs +510 -0
- package/dist/locale-es.d.cts +63 -0
- package/dist/locale-es.d.ts +63 -0
- package/dist/locale-es.js +496 -0
- package/dist/locale-es.js.map +1 -0
- package/dist/locale-fr.cjs +510 -0
- package/dist/locale-fr.d.cts +63 -0
- package/dist/locale-fr.d.ts +63 -0
- package/dist/locale-fr.js +496 -0
- package/dist/locale-fr.js.map +1 -0
- package/dist/locale-ja.cjs +505 -0
- package/dist/locale-ja.d.cts +63 -0
- package/dist/locale-ja.d.ts +63 -0
- package/dist/locale-ja.js +491 -0
- package/dist/locale-ja.js.map +1 -0
- package/dist/locale-pt.cjs +511 -0
- package/dist/locale-pt.d.cts +63 -0
- package/dist/locale-pt.d.ts +63 -0
- package/dist/locale-pt.js +497 -0
- package/dist/locale-pt.js.map +1 -0
- package/dist/locale-zh.cjs +505 -0
- package/dist/locale-zh.d.cts +63 -0
- package/dist/locale-zh.d.ts +63 -0
- package/dist/locale-zh.js +491 -0
- package/dist/locale-zh.js.map +1 -0
- package/dist/math-labels-DOf5KFxp.d.cts +24 -0
- package/dist/math-labels-DOf5KFxp.d.ts +24 -0
- package/dist/math.cjs +11 -10
- package/dist/math.d.cts +4 -24
- package/dist/math.d.ts +4 -24
- package/dist/math.js +9 -8
- package/dist/mention-labels-DIQy8LRT.d.cts +15 -0
- package/dist/mention-labels-DIQy8LRT.d.ts +15 -0
- package/dist/mention.cjs +11 -10
- package/dist/mention.d.cts +4 -15
- package/dist/mention.d.ts +4 -15
- package/dist/mention.js +9 -8
- package/dist/{view-controller-p-2x3J7Y.d.ts → node-reveal-BnFcnHhz.d.ts} +14 -14
- package/dist/{view-controller-BfVSNZYZ.d.cts → node-reveal-DY6bimv3.d.cts} +14 -14
- package/dist/palette-BrX-hEd-.d.cts +4 -0
- package/dist/palette-BrX-hEd-.d.ts +4 -0
- package/dist/presence-labels-DXVJLifl.d.cts +15 -0
- package/dist/presence-labels-DXVJLifl.d.ts +15 -0
- package/dist/presence.cjs +40 -42
- package/dist/presence.d.cts +4 -15
- package/dist/presence.d.ts +4 -15
- package/dist/presence.js +9 -11
- package/dist/presence.js.map +1 -1
- package/dist/source-labels-CeQDXsYZ.d.cts +9 -0
- package/dist/source-labels-CeQDXsYZ.d.ts +9 -0
- package/dist/source.cjs +11 -14
- package/dist/source.d.cts +5 -10
- package/dist/source.d.ts +5 -10
- package/dist/source.js +7 -10
- package/dist/source.js.map +1 -1
- package/dist/{stats-extension-oD6D1cYy.d.ts → stats-extension-D5HySF0a.d.cts} +4 -16
- package/dist/{stats-extension-XqOTvRaq.d.cts → stats-extension-Dmw0Ujxe.d.ts} +4 -16
- package/dist/stats-labels-W8gep51s.d.cts +15 -0
- package/dist/stats-labels-W8gep51s.d.ts +15 -0
- package/dist/stats.cjs +11 -10
- package/dist/stats.d.cts +3 -2
- package/dist/stats.d.ts +3 -2
- package/dist/stats.js +8 -7
- package/dist/styles.css +2 -2
- package/dist/table-extension-7LkLNK6Q.d.cts +15 -0
- package/dist/table-extension-DEpV0DnP.d.ts +15 -0
- package/dist/{table-extension-v6VB59bF.d.ts → table-labels-Dc-MzU3j.d.cts} +2 -14
- package/dist/{table-extension-BP47hHoz.d.cts → table-labels-Dc-MzU3j.d.ts} +2 -14
- package/dist/table.cjs +26 -25
- package/dist/table.d.cts +2 -1
- package/dist/table.d.ts +2 -1
- package/dist/table.js +7 -6
- package/dist/{to-html-1oD-CDle.d.cts → to-html-C19PbIzh.d.cts} +1 -0
- package/dist/{to-html-CLRBCX0I.d.ts → to-html-CogwrQer.d.ts} +1 -0
- package/dist/{to-markdown-CFPMbbiX.d.cts → to-markdown-C2w7Dzg8.d.cts} +1 -0
- package/dist/{to-markdown-BVOzhgVM.d.ts → to-markdown-DC1EUye5.d.ts} +1 -0
- package/dist/toc-extension-Dvh37bWQ.d.cts +15 -0
- package/dist/toc-extension-SVckrFmb.d.ts +15 -0
- package/dist/toc-labels-B2apPfXG.d.cts +14 -0
- package/dist/toc-labels-B2apPfXG.d.ts +14 -0
- package/dist/toc.cjs +10 -9
- package/dist/toc.d.cts +3 -2
- package/dist/toc.d.ts +3 -2
- package/dist/toc.js +7 -6
- package/dist/{types-DXF9p4qV.d.cts → types-Bzhq5AXj.d.cts} +1 -0
- package/dist/{types-BjLcmV00.d.ts → types-DMuuDBVh.d.ts} +1 -0
- package/dist/view.cjs +4 -4
- package/dist/view.js +2 -2
- package/dist/yjs.cjs +121 -121
- package/dist/yjs.d.cts +2 -2
- package/dist/yjs.d.ts +2 -2
- package/dist/yjs.js +5 -5
- package/package.json +71 -1
- package/dist/chunk-5JEQZIRI.js.map +0 -1
- package/dist/chunk-7GU25Z6L.js.map +0 -1
- package/dist/chunk-BJTOLCRR.js.map +0 -1
- package/dist/chunk-HSLOPJVT.js.map +0 -1
- package/dist/chunk-IJKGF6SC.js.map +0 -1
- package/dist/chunk-MNA7MBCH.js.map +0 -1
- package/dist/chunk-OJ4O6HWC.js.map +0 -1
- package/dist/chunk-PLUMKN4B.js.map +0 -1
- package/dist/chunk-PWUFFHAQ.js.map +0 -1
- package/dist/chunk-RQXJKJ5S.js.map +0 -1
- package/dist/chunk-UZS3TW75.js.map +0 -1
- package/dist/chunk-XFEDJEJF.js.map +0 -1
- package/dist/toc-extension-CI6jNOYl.d.cts +0 -26
- package/dist/toc-extension-CTHWjNJC.d.ts +0 -26
- /package/dist/{chunk-WZA5S5EJ.cjs → chunk-I7X7B3WD.cjs} +0 -0
|
@@ -1,9 +1,10 @@
|
|
|
1
1
|
'use strict';
|
|
2
2
|
|
|
3
|
-
var
|
|
4
|
-
var
|
|
5
|
-
var
|
|
6
|
-
var
|
|
3
|
+
var chunkCJVJNMOB_cjs = require('./chunk-CJVJNMOB.cjs');
|
|
4
|
+
var chunkZ6LAARPB_cjs = require('./chunk-Z6LAARPB.cjs');
|
|
5
|
+
var chunkZWTIRGY5_cjs = require('./chunk-ZWTIRGY5.cjs');
|
|
6
|
+
var chunkFK7EBZPX_cjs = require('./chunk-FK7EBZPX.cjs');
|
|
7
|
+
var chunkI7X7B3WD_cjs = require('./chunk-I7X7B3WD.cjs');
|
|
7
8
|
var react = require('react');
|
|
8
9
|
var jsxRuntime = require('react/jsx-runtime');
|
|
9
10
|
|
|
@@ -18,7 +19,7 @@ function keepScroll(element, change) {
|
|
|
18
19
|
change();
|
|
19
20
|
for (const [at, left, top] of before) {
|
|
20
21
|
const [, nowLeft, nowTop] = offsetOf(at);
|
|
21
|
-
if (nowLeft !== left || nowTop !== top) at.scrollTo({ left, top, behavior: "instant" });
|
|
22
|
+
if (nowLeft !== left || nowTop !== top) at.scrollTo?.({ left, top, behavior: "instant" });
|
|
22
23
|
}
|
|
23
24
|
}
|
|
24
25
|
|
|
@@ -28,31 +29,31 @@ var reducesMotion = (view) => typeof view?.matchMedia === "function" && view.mat
|
|
|
28
29
|
function goToHeading(controller, blockId) {
|
|
29
30
|
const { editor, root } = controller;
|
|
30
31
|
const { doc, schema } = editor.state;
|
|
31
|
-
const end = doc.index.has(blockId) ?
|
|
32
|
+
const end = doc.index.has(blockId) ? chunkFK7EBZPX_cjs.endOf(doc, schema, blockId) : null;
|
|
32
33
|
if (root === null || end?.kind !== "text") return;
|
|
33
34
|
keepScroll(controller.blockElement(blockId) ?? root, () => controller.focus(end.head));
|
|
34
|
-
const landed =
|
|
35
|
+
const landed = chunkFK7EBZPX_cjs.headBlockId(editor.state.selection);
|
|
35
36
|
const shell = landed === null ? void 0 : controller.blockElement(landed);
|
|
36
37
|
const behavior = reducesMotion(root.ownerDocument.defaultView) ? "auto" : "smooth";
|
|
37
|
-
shell?.scrollIntoView({ behavior, block: "start" });
|
|
38
|
+
shell?.scrollIntoView?.({ behavior, block: "start" });
|
|
38
39
|
}
|
|
39
40
|
|
|
40
41
|
// src/extensions/toc/toc-handlers.ts
|
|
41
42
|
var entryOf = (event) => event.target.closest("a[href]");
|
|
42
43
|
var asksTheBrowser = (event) => event.button !== 0 || event.ctrlKey || event.metaKey || event.shiftKey || event.altKey;
|
|
43
44
|
function tocHandlers(controller, blockId, root, readOnly) {
|
|
44
|
-
const select =
|
|
45
|
+
const select = chunkCJVJNMOB_cjs.selectHandlers(controller, blockId, root);
|
|
45
46
|
function walk(event, from) {
|
|
46
47
|
const entries = Array.from(root.current?.querySelectorAll("a[href]") ?? []);
|
|
47
48
|
const next = entries[entries.indexOf(from) + (event.shiftKey ? -1 : 1)];
|
|
48
49
|
event.preventDefault();
|
|
49
|
-
if (next === void 0)
|
|
50
|
+
if (next === void 0) chunkCJVJNMOB_cjs.focusNode(controller, blockId);
|
|
50
51
|
else next.focus();
|
|
51
52
|
}
|
|
52
53
|
return {
|
|
53
54
|
onClick(event) {
|
|
54
55
|
const entry = entryOf(event);
|
|
55
|
-
const heading = entry === null ? null :
|
|
56
|
+
const heading = entry === null ? null : chunkCJVJNMOB_cjs.linkedBlockId(entry.getAttribute("href") ?? "");
|
|
56
57
|
if (entry === null && !readOnly) select.onClick(event);
|
|
57
58
|
if (heading === null || asksTheBrowser(event)) return;
|
|
58
59
|
event.preventDefault();
|
|
@@ -61,14 +62,14 @@ function tocHandlers(controller, blockId, root, readOnly) {
|
|
|
61
62
|
onKeyDown: readOnly ? void 0 : (event) => {
|
|
62
63
|
const entry = entryOf(event);
|
|
63
64
|
const tab = event.key === "Tab" && !event.ctrlKey && !event.metaKey && !event.altKey;
|
|
64
|
-
if (tab && entry !== null && !
|
|
65
|
+
if (tab && entry !== null && !chunkZ6LAARPB_cjs.isComposingKey(controller, event.nativeEvent)) walk(event, entry);
|
|
65
66
|
else select.onKeyDown(event);
|
|
66
67
|
}
|
|
67
68
|
};
|
|
68
69
|
}
|
|
69
70
|
function TocList({ nodes, inTabOrder }) {
|
|
70
71
|
return /* @__PURE__ */ jsxRuntime.jsx("ul", { className: "quoin-toc-list", children: nodes.map(({ heading, children }) => /* @__PURE__ */ jsxRuntime.jsxs("li", { children: [
|
|
71
|
-
/* @__PURE__ */ jsxRuntime.jsx("a", { href:
|
|
72
|
+
/* @__PURE__ */ jsxRuntime.jsx("a", { href: chunkCJVJNMOB_cjs.blockFragment(heading.blockId), tabIndex: inTabOrder ? void 0 : -1, className: "quoin-toc-link", children: heading.text }),
|
|
72
73
|
children.length > 0 && /* @__PURE__ */ jsxRuntime.jsx(TocList, { nodes: children, inTabOrder })
|
|
73
74
|
] }, heading.blockId)) });
|
|
74
75
|
}
|
|
@@ -80,12 +81,12 @@ function refocus(controller, blockId, nav, href) {
|
|
|
80
81
|
return;
|
|
81
82
|
}
|
|
82
83
|
const { editor } = controller;
|
|
83
|
-
editor.dispatch(editor.createTransaction().setSelection(
|
|
84
|
+
editor.dispatch(editor.createTransaction().setSelection(chunkFK7EBZPX_cjs.nodeSelection(blockId)));
|
|
84
85
|
controller.focus();
|
|
85
86
|
}
|
|
86
87
|
function useEntryFocus(controller, blockId, root, drawn) {
|
|
87
88
|
const held = react.useRef(null);
|
|
88
|
-
|
|
89
|
+
chunkZ6LAARPB_cjs.useIsomorphicLayoutEffect(() => {
|
|
89
90
|
const entry = held.current;
|
|
90
91
|
const nav = root.current;
|
|
91
92
|
if (entry === null || entry.isConnected || nav === null) return;
|
|
@@ -113,8 +114,8 @@ function useEntryFocus(controller, blockId, root, drawn) {
|
|
|
113
114
|
// src/extensions/toc/headings.ts
|
|
114
115
|
var defaultSchema;
|
|
115
116
|
function headings(doc, options = {}) {
|
|
116
|
-
const schema = options.schema ?? (defaultSchema ??=
|
|
117
|
-
return
|
|
117
|
+
const schema = options.schema ?? (defaultSchema ??= chunkI7X7B3WD_cjs.createSchema());
|
|
118
|
+
return chunkI7X7B3WD_cjs.collectHeadings(doc.blocks, schema).map((heading) => ({ ...heading, anchor: chunkI7X7B3WD_cjs.headingId(heading.blockId) }));
|
|
118
119
|
}
|
|
119
120
|
|
|
120
121
|
// src/extensions/toc/per-doc.ts
|
|
@@ -131,20 +132,20 @@ var selectHeadings = perDoc(({ doc, schema }) => headings(doc, { schema }));
|
|
|
131
132
|
var sameHeading = (a, b) => a.blockId === b.blockId && a.level === b.level && a.text === b.text;
|
|
132
133
|
var sameHeadings = (a, b) => a.length === b.length && a.every((heading, index) => sameHeading(heading, b[index]));
|
|
133
134
|
function useTocHeadings(controller) {
|
|
134
|
-
return
|
|
135
|
+
return chunkZ6LAARPB_cjs.useEditorState(controller, selectHeadings, sameHeadings);
|
|
135
136
|
}
|
|
136
137
|
var tocIds = perDoc(({ doc }) => doc.blocks.flatMap((block) => block.type === "TOC" ? [block.id] : []));
|
|
137
138
|
function useTocNumber(controller, blockId) {
|
|
138
139
|
const select = react.useCallback((state) => tocIds(state).indexOf(blockId) + 1, [blockId]);
|
|
139
|
-
return
|
|
140
|
+
return chunkZ6LAARPB_cjs.useEditorState(controller, select);
|
|
140
141
|
}
|
|
141
142
|
function TocBlock({ block, controller, labels }) {
|
|
142
|
-
const readOnly =
|
|
143
|
+
const readOnly = chunkZ6LAARPB_cjs.useReadOnly(controller);
|
|
143
144
|
const listed = useTocHeadings(controller);
|
|
144
|
-
const nested = react.useMemo(() =>
|
|
145
|
+
const nested = react.useMemo(() => chunkI7X7B3WD_cjs.nestHeadings(listed), [listed]);
|
|
145
146
|
const root = react.useRef(null);
|
|
146
147
|
const keys = react.useMemo(() => ({ enter: () => root.current?.querySelector("a[href]")?.focus() }), []);
|
|
147
|
-
|
|
148
|
+
chunkCJVJNMOB_cjs.useNodeKeys(controller, block.id, !readOnly, listed.length > 0, root, keys);
|
|
148
149
|
const entryFocus = useEntryFocus(controller, block.id, root, nested);
|
|
149
150
|
const number = useTocNumber(controller, block.id);
|
|
150
151
|
return /* @__PURE__ */ jsxRuntime.jsx(
|
|
@@ -168,10 +169,7 @@ var englishTocLabels = {
|
|
|
168
169
|
tableOfContentsDescription: "Links to the headings of the page",
|
|
169
170
|
noHeadings: "Add headings to build the table of contents"
|
|
170
171
|
};
|
|
171
|
-
|
|
172
|
-
const given = Object.entries(overrides ?? {}).filter(([, value]) => value !== void 0);
|
|
173
|
-
return given.length === 0 ? englishTocLabels : { ...englishTocLabels, ...Object.fromEntries(given) };
|
|
174
|
-
}
|
|
172
|
+
var resolveTocLabels = (overrides) => chunkZWTIRGY5_cjs.mergeLabels(englishTocLabels, overrides);
|
|
175
173
|
|
|
176
174
|
// src/extensions/toc/toc-slash-item.ts
|
|
177
175
|
var tocSlashItem = (labels) => ({
|
|
@@ -179,9 +177,9 @@ var tocSlashItem = (labels) => ({
|
|
|
179
177
|
title: labels.tableOfContents,
|
|
180
178
|
description: labels.tableOfContentsDescription,
|
|
181
179
|
group: "advanced",
|
|
182
|
-
icon:
|
|
180
|
+
icon: chunkCJVJNMOB_cjs.TableOfContents,
|
|
183
181
|
keywords: ["toc", "contents", "outline", "headings", "index"],
|
|
184
|
-
command: () =>
|
|
182
|
+
command: () => chunkCJVJNMOB_cjs.insertBlockToWrite({ type: "TOC" }, false)
|
|
185
183
|
});
|
|
186
184
|
function tocExtension(options = {}) {
|
|
187
185
|
const labels = resolveTocLabels(options.labels);
|
|
@@ -191,7 +189,7 @@ function tocExtension(options = {}) {
|
|
|
191
189
|
renderers: { TOC: TocRenderer },
|
|
192
190
|
blockNames: { TOC: labels.tableOfContents }
|
|
193
191
|
};
|
|
194
|
-
return
|
|
192
|
+
return chunkFK7EBZPX_cjs.defineExtension({ name: "toc", ui });
|
|
195
193
|
}
|
|
196
194
|
|
|
197
195
|
exports.englishTocLabels = englishTocLabels;
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import { diffSequences } from './chunk-
|
|
2
|
-
import { ALERT_TONES, newId, requireBlockIndex, text, indexOfBlock, compareRegionNames, inlineLength, replaceBlocks, replaceInline, specFor, blockById, marksAt, sliceInline, updateBlock, createDoc, nodeLength, sanitizeHref, createBlockCodec, createSchema, documentNodes, blockPlainText, engineBlocksOf, isPaletteColor, coreAtomSpecs, coreMarkSpecs, coreBlockSpecs, sameValue, sameMark, inlineText, equalInline, removeMark, addMark, sameMarkSet, atom, hasMark, removeMarkRange, startsHtmlBlock, isRecord, fromMarkdown, isQuoinType, writtenAttrs, parseLine, serializeInline, sameItems, orderedStart, MAX_MARKER_NUMBER, parseInline, normalizeInline, str, linkClose, inlinePlainText, cellKey, PALETTE, addMarkRange } from './chunk-
|
|
1
|
+
import { diffSequences } from './chunk-CSPCDVCT.js';
|
|
2
|
+
import { ALERT_TONES, newId, requireBlockIndex, text, indexOfBlock, compareRegionNames, inlineLength, replaceBlocks, replaceInline, specFor, blockById, marksAt, sliceInline, updateBlock, createDoc, nodeLength, sanitizeHref, createBlockCodec, createSchema, documentNodes, blockPlainText, engineBlocksOf, isPaletteColor, coreAtomSpecs, coreMarkSpecs, coreBlockSpecs, sameValue, sameMark, inlineText, equalInline, removeMark, addMark, sameMarkSet, atom, hasMark, removeMarkRange, startsHtmlBlock, isRecord, fromMarkdown, isQuoinType, writtenAttrs, parseLine, serializeInline, sameItems, orderedStart, MAX_MARKER_NUMBER, parseInline, normalizeInline, str, linkClose, inlinePlainText, cellKey, PALETTE, addMarkRange } from './chunk-7Y4B7NHO.js';
|
|
3
3
|
|
|
4
4
|
// src/engine/transform/step.ts
|
|
5
5
|
var StepError = class extends Error {
|
|
@@ -4051,5 +4051,5 @@ function createInternalEditor(options) {
|
|
|
4051
4051
|
}
|
|
4052
4052
|
|
|
4053
4053
|
export { HISTORY_GROUP, HISTORY_PROVIDER, LINE_JOIN, LINE_SPLIT, Transaction, addMarkStep, applyTransaction, blockInputRules, blockRangeSelection, capIndents, caretMarks, commonPrefix, commonSuffix, comparePos, continuesEdit, coreExtensions, countBlock, countDoc, countText, createBlock, createEditor, createPluginKey, createState, defineExtension, deleteBackward, deleteBlocks, deleteForward, deleteRange, deleteSelection, deleteToLineEnd, deleteToLineStart, deleteWordBackward, deleteWordForward, descendantsEnd, detectMac, duplicateBlocks, editEnd, endOf, foreignOrigins, freshBlocks, fromHTML, getPluginState, graphemeCount, groupOf, headBlockId, hidingToggle, indent, insertBlockAfter, insertBlocksStep, insertHardBreak, insertMention, insertSlice, insertText, insertTextAt, insertTextWithRules, isActive, isClosedToggle, isCollapsed, isParagraph, isTextFlow, joinBlocksStep, keyName, mapSelection, markCoverage, markExtent, markInputRules, markRanges, moveBlocksDown, moveBlocksStep, moveBlocksTo, moveBlocksUp, movedBlockIds, nextGraphemeOffset, nodeSelection, normalizeKey, orderedRange, outdent, pasteAtCaret, pastedLink, prevGraphemeOffset, primaryRegion, rangeContent, redo, regionInline, regionLength, removeBlocksStep, removeMarkStep, replaceBlockStep, replaceDocStep, replaceInlineStep, runCommands, sameDoc, sameSelection, selectAll, selectedBlockIds, selectedBlockRange, selectionRange, setAttrs, setAttrsStep, setBlockColor, setBlockType, setIndentStep, setLink, setMark, setSelection, setTextAlign, sliceFromClipboard, sliceFromSelection, splitBlockStep, startOf, stepFromJSON, textSelection, toHTML, toMarkdown, toPlainText, toggleMark, toggleTask, typographyRules, undo, undoInputRule, unsetLink, unsetMark, validateSelection, withContent, wordCount };
|
|
4054
|
-
//# sourceMappingURL=chunk-
|
|
4055
|
-
//# sourceMappingURL=chunk-
|
|
4054
|
+
//# sourceMappingURL=chunk-5RBMZGKV.js.map
|
|
4055
|
+
//# sourceMappingURL=chunk-5RBMZGKV.js.map
|