@prosekit/core 0.8.3 → 0.8.5
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/editor-KZlceNQ1.d.ts +722 -0
- package/dist/editor-KZlceNQ1.d.ts.map +1 -0
- package/dist/{editor-DlGlYOp-.js → editor-TvRTsFdO.js} +102 -196
- package/dist/editor-TvRTsFdO.js.map +1 -0
- package/dist/prosekit-core-test.d.ts +20 -19
- package/dist/prosekit-core-test.d.ts.map +1 -0
- package/dist/prosekit-core-test.js +5 -8
- package/dist/prosekit-core-test.js.map +1 -0
- package/dist/prosekit-core.d.ts +797 -792
- package/dist/prosekit-core.d.ts.map +1 -0
- package/dist/prosekit-core.js +42 -79
- package/dist/prosekit-core.js.map +1 -0
- package/package.json +14 -12
- package/src/commands/add-mark.ts +53 -0
- package/src/commands/expand-mark.ts +96 -0
- package/src/commands/insert-default-block.spec.ts +102 -0
- package/src/commands/insert-default-block.ts +49 -0
- package/src/commands/insert-node.ts +71 -0
- package/src/commands/insert-text.ts +24 -0
- package/src/commands/remove-mark.ts +54 -0
- package/src/commands/remove-node.ts +43 -0
- package/src/commands/select-all.ts +16 -0
- package/src/commands/set-block-type.ts +64 -0
- package/src/commands/set-node-attrs.ts +68 -0
- package/src/commands/toggle-mark.ts +65 -0
- package/src/commands/toggle-node.ts +47 -0
- package/src/commands/toggle-wrap.spec.ts +35 -0
- package/src/commands/toggle-wrap.ts +42 -0
- package/src/commands/unset-block-type.spec.ts +49 -0
- package/src/commands/unset-block-type.ts +84 -0
- package/src/commands/unset-mark.spec.ts +35 -0
- package/src/commands/unset-mark.ts +38 -0
- package/src/commands/wrap.ts +50 -0
- package/src/editor/action.spec.ts +143 -0
- package/src/editor/action.ts +248 -0
- package/src/editor/editor.spec.ts +186 -0
- package/src/editor/editor.ts +563 -0
- package/src/editor/union.spec.ts +108 -0
- package/src/editor/union.ts +47 -0
- package/src/editor/with-priority.ts +25 -0
- package/src/error.ts +28 -0
- package/src/extensions/clipboard-serializer.ts +107 -0
- package/src/extensions/command.ts +121 -0
- package/src/extensions/default-state.spec.ts +60 -0
- package/src/extensions/default-state.ts +76 -0
- package/src/extensions/doc.ts +31 -0
- package/src/extensions/events/doc-change.ts +34 -0
- package/src/extensions/events/dom-event.spec.ts +70 -0
- package/src/extensions/events/dom-event.ts +117 -0
- package/src/extensions/events/editor-event.ts +293 -0
- package/src/extensions/events/focus.spec.ts +50 -0
- package/src/extensions/events/focus.ts +28 -0
- package/src/extensions/events/plugin-view.ts +132 -0
- package/src/extensions/history.ts +81 -0
- package/src/extensions/keymap-base.ts +60 -0
- package/src/extensions/keymap.spec.ts +125 -0
- package/src/extensions/keymap.ts +96 -0
- package/src/extensions/mark-spec.spec.ts +177 -0
- package/src/extensions/mark-spec.ts +181 -0
- package/src/extensions/mark-view-effect.ts +85 -0
- package/src/extensions/mark-view.ts +43 -0
- package/src/extensions/node-spec.spec.ts +224 -0
- package/src/extensions/node-spec.ts +199 -0
- package/src/extensions/node-view-effect.ts +85 -0
- package/src/extensions/node-view.ts +43 -0
- package/src/extensions/paragraph.ts +61 -0
- package/src/extensions/plugin.spec.ts +153 -0
- package/src/extensions/plugin.ts +81 -0
- package/src/extensions/text.ts +34 -0
- package/src/facets/base-extension.ts +54 -0
- package/src/facets/command.ts +21 -0
- package/src/facets/facet-extension.spec.ts +173 -0
- package/src/facets/facet-extension.ts +53 -0
- package/src/facets/facet-node.spec.ts +265 -0
- package/src/facets/facet-node.ts +185 -0
- package/src/facets/facet-types.ts +9 -0
- package/src/facets/facet.spec.ts +76 -0
- package/src/facets/facet.ts +84 -0
- package/src/facets/root.ts +44 -0
- package/src/facets/schema-spec.ts +30 -0
- package/src/facets/schema.ts +26 -0
- package/src/facets/state.spec.ts +53 -0
- package/src/facets/state.ts +85 -0
- package/src/facets/union-extension.ts +41 -0
- package/src/index.ts +302 -0
- package/src/test/index.ts +4 -0
- package/src/test/test-builder.ts +68 -0
- package/src/test/test-editor.spec.ts +104 -0
- package/src/test/test-editor.ts +113 -0
- package/src/testing/index.ts +283 -0
- package/src/testing/keyboard.ts +5 -0
- package/src/types/any-function.ts +4 -0
- package/src/types/assert-type-equal.ts +8 -0
- package/src/types/attrs.ts +32 -0
- package/src/types/base-node-view-options.ts +33 -0
- package/src/types/dom-node.ts +1 -0
- package/src/types/extension-command.ts +52 -0
- package/src/types/extension-mark.ts +15 -0
- package/src/types/extension-node.ts +15 -0
- package/src/types/extension.spec.ts +56 -0
- package/src/types/extension.ts +168 -0
- package/src/types/model.ts +54 -0
- package/src/types/object-entries.ts +13 -0
- package/src/types/pick-string-literal.spec.ts +10 -0
- package/src/types/pick-string-literal.ts +6 -0
- package/src/types/pick-sub-type.spec.ts +20 -0
- package/src/types/pick-sub-type.ts +6 -0
- package/src/types/priority.ts +12 -0
- package/src/types/setter.ts +4 -0
- package/src/types/simplify-deeper.spec.ts +40 -0
- package/src/types/simplify-deeper.ts +6 -0
- package/src/types/simplify-union.spec.ts +21 -0
- package/src/types/simplify-union.ts +11 -0
- package/src/utils/array-grouping.spec.ts +29 -0
- package/src/utils/array-grouping.ts +25 -0
- package/src/utils/array.ts +21 -0
- package/src/utils/assert.ts +13 -0
- package/src/utils/attrs-match.ts +20 -0
- package/src/utils/can-use-regex-lookbehind.ts +12 -0
- package/src/utils/clsx.spec.ts +14 -0
- package/src/utils/clsx.ts +14 -0
- package/src/utils/collect-children.ts +21 -0
- package/src/utils/collect-nodes.ts +37 -0
- package/src/utils/combine-event-handlers.spec.ts +27 -0
- package/src/utils/combine-event-handlers.ts +27 -0
- package/src/utils/contains-inline-node.ts +17 -0
- package/src/utils/deep-equals.spec.ts +26 -0
- package/src/utils/deep-equals.ts +29 -0
- package/src/utils/default-block-at.ts +15 -0
- package/src/utils/editor-content.spec.ts +47 -0
- package/src/utils/editor-content.ts +77 -0
- package/src/utils/env.ts +6 -0
- package/src/utils/find-parent-node-of-type.ts +29 -0
- package/src/utils/find-parent-node.spec.ts +68 -0
- package/src/utils/find-parent-node.ts +55 -0
- package/src/utils/get-custom-selection.ts +19 -0
- package/src/utils/get-dom-api.ts +56 -0
- package/src/utils/get-id.spec.ts +14 -0
- package/src/utils/get-id.ts +13 -0
- package/src/utils/get-mark-type.ts +20 -0
- package/src/utils/get-node-type.ts +20 -0
- package/src/utils/get-node-types.ts +19 -0
- package/src/utils/includes-mark.ts +18 -0
- package/src/utils/is-at-block-start.ts +26 -0
- package/src/utils/is-in-code-block.ts +18 -0
- package/src/utils/is-mark-absent.spec.ts +53 -0
- package/src/utils/is-mark-absent.ts +42 -0
- package/src/utils/is-mark-active.ts +27 -0
- package/src/utils/is-node-active.ts +25 -0
- package/src/utils/is-subset.spec.ts +12 -0
- package/src/utils/is-subset.ts +11 -0
- package/src/utils/maybe-run.spec.ts +39 -0
- package/src/utils/maybe-run.ts +11 -0
- package/src/utils/merge-objects.spec.ts +30 -0
- package/src/utils/merge-objects.ts +11 -0
- package/src/utils/merge-specs.ts +35 -0
- package/src/utils/object-equal.spec.ts +26 -0
- package/src/utils/object-equal.ts +28 -0
- package/src/utils/output-spec.test.ts +95 -0
- package/src/utils/output-spec.ts +130 -0
- package/src/utils/parse.spec.ts +46 -0
- package/src/utils/parse.ts +321 -0
- package/src/utils/remove-undefined-values.spec.ts +15 -0
- package/src/utils/remove-undefined-values.ts +9 -0
- package/src/utils/set-selection-around.ts +11 -0
- package/src/utils/type-assertion.ts +91 -0
- package/src/utils/unicode.spec.ts +10 -0
- package/src/utils/unicode.ts +4 -0
- package/src/utils/with-skip-code-block.ts +15 -0
- package/dist/editor-OUH5V8BA.d.ts +0 -754
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"prosekit-core.d.ts","names":[],"sources":["../src/commands/add-mark.ts","../src/commands/expand-mark.ts","../src/commands/insert-default-block.ts","../src/commands/insert-node.ts","../src/commands/remove-mark.ts","../src/commands/remove-node.ts","../src/commands/set-block-type.ts","../src/commands/set-node-attrs.ts","../src/commands/toggle-mark.ts","../src/commands/toggle-node.ts","../src/commands/toggle-wrap.ts","../src/commands/unset-block-type.ts","../src/commands/unset-mark.ts","../src/commands/wrap.ts","../src/editor/union.ts","../src/editor/with-priority.ts","../src/error.ts","../src/types/any-function.ts","../src/extensions/clipboard-serializer.ts","../src/commands/insert-text.ts","../src/extensions/command.ts","../src/extensions/default-state.ts","../src/extensions/doc.ts","../src/extensions/events/doc-change.ts","../src/extensions/events/dom-event.ts","../src/facets/facet-types.ts","../src/facets/facet.ts","../src/types/object-entries.ts","../src/facets/state.ts","../src/extensions/plugin.ts","../src/extensions/events/editor-event.ts","../src/extensions/events/focus.ts","../src/extensions/events/plugin-view.ts","../src/extensions/history.ts","../src/extensions/keymap.ts","../src/extensions/keymap-base.ts","../src/extensions/mark-spec.ts","../src/extensions/mark-view.ts","../src/extensions/mark-view-effect.ts","../src/extensions/node-spec.ts","../src/extensions/node-view.ts","../src/extensions/node-view-effect.ts","../src/extensions/paragraph.ts","../src/extensions/text.ts","../src/facets/facet-extension.ts","../src/types/base-node-view-options.ts","../src/utils/assert.ts","../src/utils/can-use-regex-lookbehind.ts","../src/utils/clsx.ts","../src/utils/collect-children.ts","../src/utils/collect-nodes.ts","../src/utils/contains-inline-node.ts","../src/utils/default-block-at.ts","../src/utils/env.ts","../src/utils/find-parent-node.ts","../src/utils/find-parent-node-of-type.ts","../src/utils/get-id.ts","../src/utils/get-mark-type.ts","../src/utils/get-node-type.ts","../src/utils/is-at-block-start.ts","../src/utils/is-in-code-block.ts","../src/utils/is-mark-absent.ts","../src/utils/is-mark-active.ts","../src/utils/maybe-run.ts","../src/utils/set-selection-around.ts","../src/utils/type-assertion.ts","../src/utils/unicode.ts","../src/utils/with-skip-code-block.ts"],"sourcesContent":[],"mappings":"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3B3E7C;;;AAYjB;;;iB2BuEe,qBAAA,UACL,kBACR;A1BjGH;AA2BA;;;;AC9BiB,iByB4GD,sBAAA,CzBxGS,OAAA,EyByGd,gBzBzGc,CAAA,EyB0GtB,czB1GsB;AAczB;;;;ACfA;AAagB,iBwBsGA,oBAAA,CxBtGsB,OAAsB,EwBsGd,cxBtGqB,CAAA,EwBsGJ,cxBtGI;;;;ACdnE;;AAMuC,iBuBsHvB,kBAAA,CvBtHuB,OAAA,EuBsHK,YvBtHL,CAAA,EuBsHoB,cvBtHpB;;;AAmBvC;;;iBuB2GgB,0BAAA,UACL,uBACR;AtBpIH;AAqCA;;;;AAIE,iBsBmGc,wBAAA,CtBnGd,OAAA,EsBoGS,kBtBpGT,CAAA,EsBqGC,ctBrGD;;;;;;iBsB6Gc,0BAAA,UACL,uBACR;ArBxJH;AAoBA;;;;AAAgE,iBqB4IhD,wBAAA,CrB5IgD,OAAA,EqB6IrD,kBrB7IqD,CAAA,EqB8I7D,crB9I6D;;;;;ACtBhE;AAoBgB,iBoBwJA,kBAAA,CpBxJoB,OAAoB,EoBwJZ,YpBxJmB,CAAA,EoBwJJ,cpBxJI;;;;AChB/D;AAkBA;iBmB8JgB,iBAAA,UAA2B,cAAc;;;AlBtLzD;AAiBA;;iBkB6KgB,8BAAA,UACL,2BACR;UAIO,cAAA;EjBjMO,OAAA,EiBkMN,cjBlMiB;EAIpB,QAAA,EiB+LI,ejB/LJ;EAKK,SAAA,EiB2LA,gBjB3LA;EAKH,OAAA,EiBuLC,cjBvLD;EAAK,KAAA,EiBwLN,YjBxLM;EAUC,aAAI,EiB+KH,oBjB/K2B;eiBgL7B;iBACE;eACF;EhBhLN,KAAA,EgBiLA,YhBjLK;EAA0B,IAAA,EgBkLhC,WhBlLgC;EAAsB,iBAAA,EgBmLzC,wBhBnLyC;;;;AAAS;AAC/B,KgBwL5B,kBAAA,GAAqB,ahBxLO,CgBwLO,chBxLP,CAAA;;;;AAA4B,cgB6LvD,gBhB7LuD,EgB6LrC,KhB7LqC,CgB6L/B,kBhB7L+B,EgB6LX,ahB7LW,CAAA;;;;;;;;Ad3BpE;AA2BA;K+B5BY,kBAAA;;;A9BIZ;AAYA;;iB8BTgB,wBAAA,UACL,qBACR;;;;;;A/BRH;AA2BA;;;KgCjBY,YAAA,UAAsB;A/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"}
|
package/dist/prosekit-core.js
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { A as isSelection, B as assert, C as defineFacetPayload, D as isNodeSelection, E as isMark, F as rootFacet, H as EditorNotFoundError, I as defineFacet, L as Priority, M as isTextSelection, N as toReversed, O as isNotNullish, P as schemaFacet, R as isNodeActive, S as stateFacet, T as isFragment, U as ProseKitError, V as getMarkType, _ as jsonFromState, a as union, b as nodeFromJSON, c as isMarkActive, d as elementFromJSON, f as elementFromNode, g as jsonFromNode, h as jsonFromHTML, j as isSlice, k as isProseMirrorNode, l as isMarkAbsent, m as htmlFromNode, p as htmlFromJSON, r as createEditor, t as Editor, u as defineDefaultState, v as nodeFromElement, w as isAllSelection, x as stateFromJSON, y as nodeFromHTML, z as getNodeType } from "./editor-TvRTsFdO.js";
|
|
2
2
|
import { AllSelection, Plugin, PluginKey, ProseMirrorPlugin, TextSelection } from "@prosekit/pm/state";
|
|
3
3
|
import { ReplaceAroundStep, findWrapping, insertPoint } from "@prosekit/pm/transform";
|
|
4
4
|
import { baseKeymap, chainCommands, createParagraphNear, deleteSelection, joinTextblockBackward, lift, liftEmptyBlock, newlineInCode, selectNodeBackward, setBlockType as setBlockType$1, toggleMark as toggleMark$1 } from "@prosekit/pm/commands";
|
|
@@ -52,11 +52,8 @@ function expandMarkBefore($pos, predicate) {
|
|
|
52
52
|
if (!$pos.marks().some(predicate)) return $pos.pos;
|
|
53
53
|
const index = $pos.index();
|
|
54
54
|
let boundaryIndex = index;
|
|
55
|
-
for (let i = index; i >= 0; i--)
|
|
56
|
-
|
|
57
|
-
if (node.marks.some(predicate)) boundaryIndex = i;
|
|
58
|
-
else break;
|
|
59
|
-
}
|
|
55
|
+
for (let i = index; i >= 0; i--) if (parent.child(i).marks.some(predicate)) boundaryIndex = i;
|
|
56
|
+
else break;
|
|
60
57
|
return $pos.posAtIndex(boundaryIndex);
|
|
61
58
|
}
|
|
62
59
|
function expandMarkAfter($pos, predicate) {
|
|
@@ -65,11 +62,8 @@ function expandMarkAfter($pos, predicate) {
|
|
|
65
62
|
const index = Math.max(0, $pos.indexAfter() - 1);
|
|
66
63
|
const childCount = parent.childCount;
|
|
67
64
|
let boundaryIndex = index;
|
|
68
|
-
for (let i = index; i < childCount; i++)
|
|
69
|
-
|
|
70
|
-
if (node.marks.some(predicate)) boundaryIndex = i;
|
|
71
|
-
else break;
|
|
72
|
-
}
|
|
65
|
+
for (let i = index; i < childCount; i++) if (parent.child(i).marks.some(predicate)) boundaryIndex = i;
|
|
66
|
+
else break;
|
|
73
67
|
return $pos.posAtIndex(boundaryIndex) + parent.child(boundaryIndex).nodeSize;
|
|
74
68
|
}
|
|
75
69
|
|
|
@@ -177,16 +171,12 @@ function removeMark(options) {
|
|
|
177
171
|
function findParentNode(predicate, $pos) {
|
|
178
172
|
for (let depth = $pos.depth; depth >= 0; depth -= 1) {
|
|
179
173
|
const node = $pos.node(depth);
|
|
180
|
-
if (predicate(node)) {
|
|
181
|
-
|
|
182
|
-
|
|
183
|
-
|
|
184
|
-
|
|
185
|
-
|
|
186
|
-
start,
|
|
187
|
-
depth
|
|
188
|
-
};
|
|
189
|
-
}
|
|
174
|
+
if (predicate(node)) return {
|
|
175
|
+
node,
|
|
176
|
+
pos: depth === 0 ? 0 : $pos.before(depth),
|
|
177
|
+
start: $pos.start(depth),
|
|
178
|
+
depth
|
|
179
|
+
};
|
|
190
180
|
}
|
|
191
181
|
}
|
|
192
182
|
|
|
@@ -342,10 +332,7 @@ function toggleNode({ type, attrs }) {
|
|
|
342
332
|
const defaultType = state.schema.topNodeType.contentMatch.defaultType;
|
|
343
333
|
if (!defaultType) return false;
|
|
344
334
|
return setBlockType$1(defaultType)(state, dispatch, view);
|
|
345
|
-
} else
|
|
346
|
-
const nodeType = getNodeType(state.schema, type);
|
|
347
|
-
return setBlockType$1(nodeType, attrs)(state, dispatch, view);
|
|
348
|
-
}
|
|
335
|
+
} else return setBlockType$1(getNodeType(state.schema, type), attrs)(state, dispatch, view);
|
|
349
336
|
};
|
|
350
337
|
}
|
|
351
338
|
|
|
@@ -363,8 +350,7 @@ function wrap(options) {
|
|
|
363
350
|
const { $from, $to } = state.selection;
|
|
364
351
|
const range = $from.blockRange($to);
|
|
365
352
|
if (!range) return false;
|
|
366
|
-
const
|
|
367
|
-
const wrapping = findWrapping(range, nodeType, options.attrs);
|
|
353
|
+
const wrapping = findWrapping(range, getNodeType(state.schema, options.nodeType || options.type), options.attrs);
|
|
368
354
|
if (!wrapping) return false;
|
|
369
355
|
dispatch?.(state.tr.wrap(range, wrapping));
|
|
370
356
|
return true;
|
|
@@ -478,9 +464,7 @@ function withPriority(extension, priority) {
|
|
|
478
464
|
* @public
|
|
479
465
|
*/
|
|
480
466
|
function definePlugin(plugin) {
|
|
481
|
-
|
|
482
|
-
if (typeof plugin === "function") return definePluginPayload(plugin);
|
|
483
|
-
throw new TypeError("Invalid plugin");
|
|
467
|
+
return definePluginPayload(plugin);
|
|
484
468
|
}
|
|
485
469
|
function definePluginPayload(payload) {
|
|
486
470
|
return defineFacetPayload(pluginFacet, [payload]);
|
|
@@ -496,8 +480,7 @@ const pluginFacet = defineFacet({
|
|
|
496
480
|
else if (Array.isArray(payload) && payload.every((p) => p instanceof Plugin)) plugins.push(...payload);
|
|
497
481
|
else if (typeof payload === "function") plugins.push(...[payload({ schema })].flat());
|
|
498
482
|
else throw new ProseKitError("Invalid plugin");
|
|
499
|
-
plugins
|
|
500
|
-
return { plugins };
|
|
483
|
+
return { plugins: toReversed(plugins) };
|
|
501
484
|
};
|
|
502
485
|
},
|
|
503
486
|
parent: stateFacet
|
|
@@ -529,9 +512,7 @@ var CustomDOMSerializer = class extends DOMSerializer {
|
|
|
529
512
|
function createCustomDOMSerializer(schema, options) {
|
|
530
513
|
const nodesFromSchema = (...args) => DOMSerializer.nodesFromSchema(...args);
|
|
531
514
|
const marksFromSchema = (...args) => DOMSerializer.marksFromSchema(...args);
|
|
532
|
-
|
|
533
|
-
const marks = wrapFunction(marksFromSchema, options.marksFromSchemaWrapper)(schema);
|
|
534
|
-
return new CustomDOMSerializer(nodes, marks, options.serializeFragmentWrapper, options.serializeNodeWrapper);
|
|
515
|
+
return new CustomDOMSerializer(wrapFunction(nodesFromSchema, options.nodesFromSchemaWrapper)(schema), wrapFunction(marksFromSchema, options.marksFromSchemaWrapper)(schema), options.serializeFragmentWrapper, options.serializeNodeWrapper);
|
|
535
516
|
}
|
|
536
517
|
const clipboardSerializerFacet = defineFacet({
|
|
537
518
|
reducer: (inputs) => {
|
|
@@ -591,8 +572,7 @@ function selectAll() {
|
|
|
591
572
|
//#region src/facets/command.ts
|
|
592
573
|
const commandFacet = defineFacet({
|
|
593
574
|
reducer: (inputs) => {
|
|
594
|
-
|
|
595
|
-
return { commands: commands$1 };
|
|
575
|
+
return { commands: Object.assign({}, ...inputs) };
|
|
596
576
|
},
|
|
597
577
|
parent: rootFacet,
|
|
598
578
|
singleton: true
|
|
@@ -654,17 +634,13 @@ function groupBy(items, keySelector) {
|
|
|
654
634
|
const result = {};
|
|
655
635
|
for (const item of items) {
|
|
656
636
|
const key = keySelector(item);
|
|
657
|
-
|
|
658
|
-
values.push(item);
|
|
637
|
+
(result[key] ||= []).push(item);
|
|
659
638
|
}
|
|
660
639
|
return result;
|
|
661
640
|
}
|
|
662
641
|
function groupEntries(entries) {
|
|
663
642
|
const result = {};
|
|
664
|
-
for (const [key, value] of entries)
|
|
665
|
-
const values = result[key] ||= [];
|
|
666
|
-
values.push(value);
|
|
667
|
-
}
|
|
643
|
+
for (const [key, value] of entries) (result[key] ||= []).push(value);
|
|
668
644
|
return result;
|
|
669
645
|
}
|
|
670
646
|
|
|
@@ -694,10 +670,9 @@ function mergeSpecs(a, b) {
|
|
|
694
670
|
const attrSpecMerged = mergeObjects(attrSpecA, attrSpecB);
|
|
695
671
|
if (attrSpecMerged) attrs[name] = attrSpecMerged;
|
|
696
672
|
}
|
|
697
|
-
const parseDOM = [...a.parseDOM ?? [], ...b.parseDOM ?? []];
|
|
698
673
|
return mergeObjects(a, b, {
|
|
699
674
|
attrs,
|
|
700
|
-
parseDOM
|
|
675
|
+
parseDOM: [...a.parseDOM ?? [], ...b.parseDOM ?? []]
|
|
701
676
|
});
|
|
702
677
|
}
|
|
703
678
|
|
|
@@ -705,9 +680,7 @@ function mergeSpecs(a, b) {
|
|
|
705
680
|
//#region src/utils/output-spec.ts
|
|
706
681
|
function wrapOutputSpecAttrs(toDOM, options) {
|
|
707
682
|
return (node, ...args) => {
|
|
708
|
-
|
|
709
|
-
const pairs = options.map((option) => option.toDOM?.(node.attrs[option.attr])).filter(isNotNullish);
|
|
710
|
-
return insertOutputSpecAttrs(dom, pairs);
|
|
683
|
+
return insertOutputSpecAttrs(toDOM(node, ...args), options.map((option) => option.toDOM?.(node.attrs[option.attr])).filter(isNotNullish));
|
|
711
684
|
};
|
|
712
685
|
}
|
|
713
686
|
function wrapTagParseRuleAttrs(rule, options) {
|
|
@@ -752,8 +725,7 @@ function setObjectAttributes(obj, attrs) {
|
|
|
752
725
|
obj = { ...obj };
|
|
753
726
|
for (const [key, value] of attrs) {
|
|
754
727
|
const oldValue = obj[key];
|
|
755
|
-
|
|
756
|
-
obj[key] = newValue;
|
|
728
|
+
obj[key] = key === "style" ? joinStyles(value, typeof oldValue === "string" ? oldValue : "") : value;
|
|
757
729
|
}
|
|
758
730
|
return obj;
|
|
759
731
|
}
|
|
@@ -778,8 +750,7 @@ function joinStyles(...styles) {
|
|
|
778
750
|
* @public
|
|
779
751
|
*/
|
|
780
752
|
function defineNodeSpec(options) {
|
|
781
|
-
|
|
782
|
-
return defineFacetPayload(nodeSpecFacet, [payload]);
|
|
753
|
+
return defineFacetPayload(nodeSpecFacet, [[options, void 0]]);
|
|
783
754
|
}
|
|
784
755
|
/**
|
|
785
756
|
* Defines an attribute for a node type.
|
|
@@ -787,8 +758,7 @@ function defineNodeSpec(options) {
|
|
|
787
758
|
* @public
|
|
788
759
|
*/
|
|
789
760
|
function defineNodeAttr(options) {
|
|
790
|
-
|
|
791
|
-
return defineFacetPayload(nodeSpecFacet, [payload]);
|
|
761
|
+
return defineFacetPayload(nodeSpecFacet, [[void 0, options]]);
|
|
792
762
|
}
|
|
793
763
|
const nodeSpecFacet = defineFacet({
|
|
794
764
|
reducer: (payloads) => {
|
|
@@ -984,10 +954,7 @@ const domEventFacet = defineFacet({
|
|
|
984
954
|
combinedHandlerMap[event] = e;
|
|
985
955
|
}
|
|
986
956
|
const map = groupEntries(payloads);
|
|
987
|
-
for (const [event, setHandlers] of Object.entries(setHandlersMap))
|
|
988
|
-
const handlers = map[event] ?? [];
|
|
989
|
-
setHandlers(handlers);
|
|
990
|
-
}
|
|
957
|
+
for (const [event, setHandlers] of Object.entries(setHandlersMap)) setHandlers(map[event] ?? []);
|
|
991
958
|
if (hasNewEvent) plugin = new ProseMirrorPlugin({
|
|
992
959
|
key: new PluginKey("prosekit-dom-event-handler"),
|
|
993
960
|
props: { handleDOMEvents: combinedHandlerMap }
|
|
@@ -1145,7 +1112,7 @@ function setupEditorEventPlugin() {
|
|
|
1145
1112
|
setDropHandlers(map.drop ?? []);
|
|
1146
1113
|
setScrollToSelectionHandlers(map.scrollToSelection ?? []);
|
|
1147
1114
|
};
|
|
1148
|
-
|
|
1115
|
+
return [update, new ProseMirrorPlugin({
|
|
1149
1116
|
key: new PluginKey("prosekit-editor-event"),
|
|
1150
1117
|
props: {
|
|
1151
1118
|
handleKeyDown,
|
|
@@ -1161,8 +1128,7 @@ function setupEditorEventPlugin() {
|
|
|
1161
1128
|
handleDrop,
|
|
1162
1129
|
handleScrollToSelection
|
|
1163
1130
|
}
|
|
1164
|
-
});
|
|
1165
|
-
return [update, plugin];
|
|
1131
|
+
})];
|
|
1166
1132
|
}
|
|
1167
1133
|
|
|
1168
1134
|
//#endregion
|
|
@@ -1181,7 +1147,7 @@ function defineFocusChangeHandler(handler) {
|
|
|
1181
1147
|
//#endregion
|
|
1182
1148
|
//#region src/utils/env.ts
|
|
1183
1149
|
/**
|
|
1184
|
-
* @
|
|
1150
|
+
* @internal
|
|
1185
1151
|
*/
|
|
1186
1152
|
const isApple = typeof navigator !== "undefined" ? /Mac|iP(hone|[ao]d)/.test(navigator.platform) : false;
|
|
1187
1153
|
|
|
@@ -1217,10 +1183,7 @@ const keymapFacet = defineFacet({
|
|
|
1217
1183
|
});
|
|
1218
1184
|
function mergeKeymaps(keymaps) {
|
|
1219
1185
|
const bindings = {};
|
|
1220
|
-
for (const keymap$1 of keymaps) for (const [key, command] of Object.entries(keymap$1))
|
|
1221
|
-
const commands$1 = bindings[key] || (bindings[key] = []);
|
|
1222
|
-
commands$1.push(command);
|
|
1223
|
-
}
|
|
1186
|
+
for (const keymap$1 of keymaps) for (const [key, command] of Object.entries(keymap$1)) (bindings[key] || (bindings[key] = [])).push(command);
|
|
1224
1187
|
return mapValues(bindings, mergeCommands);
|
|
1225
1188
|
}
|
|
1226
1189
|
function mergeCommands(commands$1) {
|
|
@@ -1278,15 +1241,13 @@ function defineBaseKeymap(options) {
|
|
|
1278
1241
|
* @public
|
|
1279
1242
|
*/
|
|
1280
1243
|
function defineMarkSpec(options) {
|
|
1281
|
-
|
|
1282
|
-
return defineFacetPayload(markSpecFacet, [payload]);
|
|
1244
|
+
return defineFacetPayload(markSpecFacet, [[options, void 0]]);
|
|
1283
1245
|
}
|
|
1284
1246
|
/**
|
|
1285
1247
|
* @public
|
|
1286
1248
|
*/
|
|
1287
1249
|
function defineMarkAttr(options) {
|
|
1288
|
-
|
|
1289
|
-
return defineFacetPayload(markSpecFacet, [payload]);
|
|
1250
|
+
return defineFacetPayload(markSpecFacet, [[void 0, options]]);
|
|
1290
1251
|
}
|
|
1291
1252
|
const markSpecFacet = defineFacet({
|
|
1292
1253
|
reducer: (payloads) => {
|
|
@@ -1349,15 +1310,13 @@ const markViewFacet = defineFacet({
|
|
|
1349
1310
|
* @internal
|
|
1350
1311
|
*/
|
|
1351
1312
|
function defineMarkViewFactory(options) {
|
|
1352
|
-
|
|
1353
|
-
return defineFacetPayload(markViewFactoryFacet, [input]);
|
|
1313
|
+
return defineFacetPayload(markViewFactoryFacet, [[options, null]]);
|
|
1354
1314
|
}
|
|
1355
1315
|
/**
|
|
1356
1316
|
* @internal
|
|
1357
1317
|
*/
|
|
1358
1318
|
function defineMarkViewComponent(options) {
|
|
1359
|
-
|
|
1360
|
-
return defineFacetPayload(markViewFactoryFacet, [input]);
|
|
1319
|
+
return defineFacetPayload(markViewFactoryFacet, [[null, options]]);
|
|
1361
1320
|
}
|
|
1362
1321
|
const isServer$1 = typeof window === "undefined";
|
|
1363
1322
|
const markViewFactoryFacet = defineFacet({
|
|
@@ -1402,15 +1361,13 @@ const nodeViewFacet = defineFacet({
|
|
|
1402
1361
|
* @internal
|
|
1403
1362
|
*/
|
|
1404
1363
|
function defineNodeViewFactory(options) {
|
|
1405
|
-
|
|
1406
|
-
return defineFacetPayload(nodeViewFactoryFacet, [input]);
|
|
1364
|
+
return defineFacetPayload(nodeViewFactoryFacet, [[options, null]]);
|
|
1407
1365
|
}
|
|
1408
1366
|
/**
|
|
1409
1367
|
* @internal
|
|
1410
1368
|
*/
|
|
1411
1369
|
function defineNodeViewComponent(options) {
|
|
1412
|
-
|
|
1413
|
-
return defineFacetPayload(nodeViewFactoryFacet, [input]);
|
|
1370
|
+
return defineFacetPayload(nodeViewFactoryFacet, [[null, options]]);
|
|
1414
1371
|
}
|
|
1415
1372
|
const isServer = typeof window === "undefined";
|
|
1416
1373
|
const nodeViewFactoryFacet = defineFacet({
|
|
@@ -1485,6 +1442,9 @@ function defineText() {
|
|
|
1485
1442
|
|
|
1486
1443
|
//#endregion
|
|
1487
1444
|
//#region src/utils/can-use-regex-lookbehind.ts
|
|
1445
|
+
/**
|
|
1446
|
+
* Checks if the browser supports [regex lookbehind assertion](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Regular_expressions/Lookbehind_assertion).
|
|
1447
|
+
*/
|
|
1488
1448
|
const canUseRegexLookbehind = once(() => {
|
|
1489
1449
|
try {
|
|
1490
1450
|
return "ab".replace(new RegExp("(?<=a)b", "g"), "c") === "ac";
|
|
@@ -1560,6 +1520,8 @@ let id = 0;
|
|
|
1560
1520
|
* Returns a unique id in the current process that can be used in various places.
|
|
1561
1521
|
*
|
|
1562
1522
|
* @internal
|
|
1523
|
+
*
|
|
1524
|
+
* @deprecated Import `getId` from `@ocavue/utils` package instead. Remove it in a future version.
|
|
1563
1525
|
*/
|
|
1564
1526
|
function getId() {
|
|
1565
1527
|
id = (id + 1) % Number.MAX_SAFE_INTEGER;
|
|
@@ -1622,4 +1584,5 @@ function withSkipCodeBlock(command) {
|
|
|
1622
1584
|
}
|
|
1623
1585
|
|
|
1624
1586
|
//#endregion
|
|
1625
|
-
export { Editor, EditorNotFoundError, OBJECT_REPLACEMENT_CHARACTER, Priority, ProseKitError, getId as _getId, addMark, assert, canUseRegexLookbehind, clsx, collectChildren, collectNodes, containsInlineNode, createEditor, defaultBlockAt, defineBaseCommands, defineBaseKeymap, defineClickHandler, defineClickOnHandler, defineClipboardSerializer, defineCommands, defineDOMEventHandler, defineDefaultState, defineDoc, defineDocChangeHandler, defineDoubleClickHandler, defineDoubleClickOnHandler, defineDropHandler, defineFacet, defineFacetPayload, defineFocusChangeHandler, defineHistory, defineKeyDownHandler, defineKeyPressHandler, defineKeymap, defineMarkAttr, defineMarkSpec, defineMarkView, defineMarkViewComponent, defineMarkViewFactory, defineMountHandler, defineNodeAttr, defineNodeSpec, defineNodeView, defineNodeViewComponent, defineNodeViewFactory, defineParagraph, definePasteHandler, definePlugin, defineScrollToSelectionHandler, defineText, defineTextInputHandler, defineTripleClickHandler, defineTripleClickOnHandler, defineUnmountHandler, defineUpdateHandler, editorEventFacet, elementFromJSON, elementFromNode, expandMark, findParentNode, findParentNodeOfType, getMarkType, getNodeType, htmlFromJSON, htmlFromNode, insertDefaultBlock, insertNode, isAllSelection, isApple, isAtBlockStart, isFragment, isInCodeBlock, isMark, isMarkAbsent, isMarkActive, isNodeSelection, isProseMirrorNode, isSelection, isSlice, isTextSelection, jsonFromHTML, jsonFromNode, jsonFromState, keymapFacet, maybeRun, nodeFromElement, nodeFromHTML, nodeFromJSON, pluginFacet, removeMark, removeNode, setBlockType, setNodeAttrs, setSelectionAround, stateFromJSON, toggleMark, toggleNode, toggleWrap, union, unsetBlockType, unsetMark, withPriority, withSkipCodeBlock, wrap };
|
|
1587
|
+
export { Editor, EditorNotFoundError, OBJECT_REPLACEMENT_CHARACTER, Priority, ProseKitError, getId as _getId, addMark, assert, canUseRegexLookbehind, clsx, collectChildren, collectNodes, containsInlineNode, createEditor, defaultBlockAt, defineBaseCommands, defineBaseKeymap, defineClickHandler, defineClickOnHandler, defineClipboardSerializer, defineCommands, defineDOMEventHandler, defineDefaultState, defineDoc, defineDocChangeHandler, defineDoubleClickHandler, defineDoubleClickOnHandler, defineDropHandler, defineFacet, defineFacetPayload, defineFocusChangeHandler, defineHistory, defineKeyDownHandler, defineKeyPressHandler, defineKeymap, defineMarkAttr, defineMarkSpec, defineMarkView, defineMarkViewComponent, defineMarkViewFactory, defineMountHandler, defineNodeAttr, defineNodeSpec, defineNodeView, defineNodeViewComponent, defineNodeViewFactory, defineParagraph, definePasteHandler, definePlugin, defineScrollToSelectionHandler, defineText, defineTextInputHandler, defineTripleClickHandler, defineTripleClickOnHandler, defineUnmountHandler, defineUpdateHandler, editorEventFacet, elementFromJSON, elementFromNode, expandMark, findParentNode, findParentNodeOfType, getMarkType, getNodeType, htmlFromJSON, htmlFromNode, insertDefaultBlock, insertNode, isAllSelection, isApple, isAtBlockStart, isFragment, isInCodeBlock, isMark, isMarkAbsent, isMarkActive, isNodeSelection, isProseMirrorNode, isSelection, isSlice, isTextSelection, jsonFromHTML, jsonFromNode, jsonFromState, keymapFacet, maybeRun, nodeFromElement, nodeFromHTML, nodeFromJSON, pluginFacet, removeMark, removeNode, setBlockType, setNodeAttrs, setSelectionAround, stateFromJSON, toggleMark, toggleNode, toggleWrap, union, unsetBlockType, unsetMark, withPriority, withSkipCodeBlock, wrap };
|
|
1588
|
+
//# sourceMappingURL=prosekit-core.js.map
|