@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.
Files changed (170) hide show
  1. package/dist/editor-KZlceNQ1.d.ts +722 -0
  2. package/dist/editor-KZlceNQ1.d.ts.map +1 -0
  3. package/dist/{editor-DlGlYOp-.js → editor-TvRTsFdO.js} +102 -196
  4. package/dist/editor-TvRTsFdO.js.map +1 -0
  5. package/dist/prosekit-core-test.d.ts +20 -19
  6. package/dist/prosekit-core-test.d.ts.map +1 -0
  7. package/dist/prosekit-core-test.js +5 -8
  8. package/dist/prosekit-core-test.js.map +1 -0
  9. package/dist/prosekit-core.d.ts +797 -792
  10. package/dist/prosekit-core.d.ts.map +1 -0
  11. package/dist/prosekit-core.js +42 -79
  12. package/dist/prosekit-core.js.map +1 -0
  13. package/package.json +14 -12
  14. package/src/commands/add-mark.ts +53 -0
  15. package/src/commands/expand-mark.ts +96 -0
  16. package/src/commands/insert-default-block.spec.ts +102 -0
  17. package/src/commands/insert-default-block.ts +49 -0
  18. package/src/commands/insert-node.ts +71 -0
  19. package/src/commands/insert-text.ts +24 -0
  20. package/src/commands/remove-mark.ts +54 -0
  21. package/src/commands/remove-node.ts +43 -0
  22. package/src/commands/select-all.ts +16 -0
  23. package/src/commands/set-block-type.ts +64 -0
  24. package/src/commands/set-node-attrs.ts +68 -0
  25. package/src/commands/toggle-mark.ts +65 -0
  26. package/src/commands/toggle-node.ts +47 -0
  27. package/src/commands/toggle-wrap.spec.ts +35 -0
  28. package/src/commands/toggle-wrap.ts +42 -0
  29. package/src/commands/unset-block-type.spec.ts +49 -0
  30. package/src/commands/unset-block-type.ts +84 -0
  31. package/src/commands/unset-mark.spec.ts +35 -0
  32. package/src/commands/unset-mark.ts +38 -0
  33. package/src/commands/wrap.ts +50 -0
  34. package/src/editor/action.spec.ts +143 -0
  35. package/src/editor/action.ts +248 -0
  36. package/src/editor/editor.spec.ts +186 -0
  37. package/src/editor/editor.ts +563 -0
  38. package/src/editor/union.spec.ts +108 -0
  39. package/src/editor/union.ts +47 -0
  40. package/src/editor/with-priority.ts +25 -0
  41. package/src/error.ts +28 -0
  42. package/src/extensions/clipboard-serializer.ts +107 -0
  43. package/src/extensions/command.ts +121 -0
  44. package/src/extensions/default-state.spec.ts +60 -0
  45. package/src/extensions/default-state.ts +76 -0
  46. package/src/extensions/doc.ts +31 -0
  47. package/src/extensions/events/doc-change.ts +34 -0
  48. package/src/extensions/events/dom-event.spec.ts +70 -0
  49. package/src/extensions/events/dom-event.ts +117 -0
  50. package/src/extensions/events/editor-event.ts +293 -0
  51. package/src/extensions/events/focus.spec.ts +50 -0
  52. package/src/extensions/events/focus.ts +28 -0
  53. package/src/extensions/events/plugin-view.ts +132 -0
  54. package/src/extensions/history.ts +81 -0
  55. package/src/extensions/keymap-base.ts +60 -0
  56. package/src/extensions/keymap.spec.ts +125 -0
  57. package/src/extensions/keymap.ts +96 -0
  58. package/src/extensions/mark-spec.spec.ts +177 -0
  59. package/src/extensions/mark-spec.ts +181 -0
  60. package/src/extensions/mark-view-effect.ts +85 -0
  61. package/src/extensions/mark-view.ts +43 -0
  62. package/src/extensions/node-spec.spec.ts +224 -0
  63. package/src/extensions/node-spec.ts +199 -0
  64. package/src/extensions/node-view-effect.ts +85 -0
  65. package/src/extensions/node-view.ts +43 -0
  66. package/src/extensions/paragraph.ts +61 -0
  67. package/src/extensions/plugin.spec.ts +153 -0
  68. package/src/extensions/plugin.ts +81 -0
  69. package/src/extensions/text.ts +34 -0
  70. package/src/facets/base-extension.ts +54 -0
  71. package/src/facets/command.ts +21 -0
  72. package/src/facets/facet-extension.spec.ts +173 -0
  73. package/src/facets/facet-extension.ts +53 -0
  74. package/src/facets/facet-node.spec.ts +265 -0
  75. package/src/facets/facet-node.ts +185 -0
  76. package/src/facets/facet-types.ts +9 -0
  77. package/src/facets/facet.spec.ts +76 -0
  78. package/src/facets/facet.ts +84 -0
  79. package/src/facets/root.ts +44 -0
  80. package/src/facets/schema-spec.ts +30 -0
  81. package/src/facets/schema.ts +26 -0
  82. package/src/facets/state.spec.ts +53 -0
  83. package/src/facets/state.ts +85 -0
  84. package/src/facets/union-extension.ts +41 -0
  85. package/src/index.ts +302 -0
  86. package/src/test/index.ts +4 -0
  87. package/src/test/test-builder.ts +68 -0
  88. package/src/test/test-editor.spec.ts +104 -0
  89. package/src/test/test-editor.ts +113 -0
  90. package/src/testing/index.ts +283 -0
  91. package/src/testing/keyboard.ts +5 -0
  92. package/src/types/any-function.ts +4 -0
  93. package/src/types/assert-type-equal.ts +8 -0
  94. package/src/types/attrs.ts +32 -0
  95. package/src/types/base-node-view-options.ts +33 -0
  96. package/src/types/dom-node.ts +1 -0
  97. package/src/types/extension-command.ts +52 -0
  98. package/src/types/extension-mark.ts +15 -0
  99. package/src/types/extension-node.ts +15 -0
  100. package/src/types/extension.spec.ts +56 -0
  101. package/src/types/extension.ts +168 -0
  102. package/src/types/model.ts +54 -0
  103. package/src/types/object-entries.ts +13 -0
  104. package/src/types/pick-string-literal.spec.ts +10 -0
  105. package/src/types/pick-string-literal.ts +6 -0
  106. package/src/types/pick-sub-type.spec.ts +20 -0
  107. package/src/types/pick-sub-type.ts +6 -0
  108. package/src/types/priority.ts +12 -0
  109. package/src/types/setter.ts +4 -0
  110. package/src/types/simplify-deeper.spec.ts +40 -0
  111. package/src/types/simplify-deeper.ts +6 -0
  112. package/src/types/simplify-union.spec.ts +21 -0
  113. package/src/types/simplify-union.ts +11 -0
  114. package/src/utils/array-grouping.spec.ts +29 -0
  115. package/src/utils/array-grouping.ts +25 -0
  116. package/src/utils/array.ts +21 -0
  117. package/src/utils/assert.ts +13 -0
  118. package/src/utils/attrs-match.ts +20 -0
  119. package/src/utils/can-use-regex-lookbehind.ts +12 -0
  120. package/src/utils/clsx.spec.ts +14 -0
  121. package/src/utils/clsx.ts +14 -0
  122. package/src/utils/collect-children.ts +21 -0
  123. package/src/utils/collect-nodes.ts +37 -0
  124. package/src/utils/combine-event-handlers.spec.ts +27 -0
  125. package/src/utils/combine-event-handlers.ts +27 -0
  126. package/src/utils/contains-inline-node.ts +17 -0
  127. package/src/utils/deep-equals.spec.ts +26 -0
  128. package/src/utils/deep-equals.ts +29 -0
  129. package/src/utils/default-block-at.ts +15 -0
  130. package/src/utils/editor-content.spec.ts +47 -0
  131. package/src/utils/editor-content.ts +77 -0
  132. package/src/utils/env.ts +6 -0
  133. package/src/utils/find-parent-node-of-type.ts +29 -0
  134. package/src/utils/find-parent-node.spec.ts +68 -0
  135. package/src/utils/find-parent-node.ts +55 -0
  136. package/src/utils/get-custom-selection.ts +19 -0
  137. package/src/utils/get-dom-api.ts +56 -0
  138. package/src/utils/get-id.spec.ts +14 -0
  139. package/src/utils/get-id.ts +13 -0
  140. package/src/utils/get-mark-type.ts +20 -0
  141. package/src/utils/get-node-type.ts +20 -0
  142. package/src/utils/get-node-types.ts +19 -0
  143. package/src/utils/includes-mark.ts +18 -0
  144. package/src/utils/is-at-block-start.ts +26 -0
  145. package/src/utils/is-in-code-block.ts +18 -0
  146. package/src/utils/is-mark-absent.spec.ts +53 -0
  147. package/src/utils/is-mark-absent.ts +42 -0
  148. package/src/utils/is-mark-active.ts +27 -0
  149. package/src/utils/is-node-active.ts +25 -0
  150. package/src/utils/is-subset.spec.ts +12 -0
  151. package/src/utils/is-subset.ts +11 -0
  152. package/src/utils/maybe-run.spec.ts +39 -0
  153. package/src/utils/maybe-run.ts +11 -0
  154. package/src/utils/merge-objects.spec.ts +30 -0
  155. package/src/utils/merge-objects.ts +11 -0
  156. package/src/utils/merge-specs.ts +35 -0
  157. package/src/utils/object-equal.spec.ts +26 -0
  158. package/src/utils/object-equal.ts +28 -0
  159. package/src/utils/output-spec.test.ts +95 -0
  160. package/src/utils/output-spec.ts +130 -0
  161. package/src/utils/parse.spec.ts +46 -0
  162. package/src/utils/parse.ts +321 -0
  163. package/src/utils/remove-undefined-values.spec.ts +15 -0
  164. package/src/utils/remove-undefined-values.ts +9 -0
  165. package/src/utils/set-selection-around.ts +11 -0
  166. package/src/utils/type-assertion.ts +91 -0
  167. package/src/utils/unicode.spec.ts +10 -0
  168. package/src/utils/unicode.ts +4 -0
  169. package/src/utils/with-skip-code-block.ts +15 -0
  170. 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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"}
@@ -1,4 +1,4 @@
1
- import { Editor, EditorNotFoundError, Priority, ProseKitError, assert, createEditor, defineDefaultState, defineFacet, defineFacetPayload, elementFromJSON, elementFromNode, getMarkType, getNodeType, htmlFromJSON, htmlFromNode, isAllSelection, isFragment, isMark, isMarkAbsent, isMarkActive, isNodeActive, isNodeSelection, isNotNullish, isProseMirrorNode, isSelection, isSlice, isTextSelection, jsonFromHTML, jsonFromNode, jsonFromState, nodeFromElement, nodeFromHTML, nodeFromJSON, rootFacet, schemaFacet, stateFacet, stateFromJSON, toReversed, union } from "./editor-DlGlYOp-.js";
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
- const node = parent.child(i);
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
- const node = parent.child(i);
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
- const pos = depth === 0 ? 0 : $pos.before(depth);
182
- const start = $pos.start(depth);
183
- return {
184
- node,
185
- pos,
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 nodeType = getNodeType(state.schema, options.nodeType || options.type);
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
- if (plugin instanceof Plugin || Array.isArray(plugin) && plugin.every((p) => p instanceof Plugin)) return definePluginPayload(() => plugin);
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.reverse();
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
- const nodes = wrapFunction(nodesFromSchema, options.nodesFromSchemaWrapper)(schema);
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
- const commands$1 = Object.assign({}, ...inputs);
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
- const values = result[key] ||= [];
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
- const dom = toDOM(node, ...args);
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
- const newValue = key === "style" ? joinStyles(value, typeof oldValue === "string" ? oldValue : "") : value;
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
- const payload = [options, void 0];
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
- const payload = [void 0, options];
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
- const plugin = new ProseMirrorPlugin({
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
- * @private
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
- const payload = [options, void 0];
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
- const payload = [void 0, options];
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
- const input = [options, null];
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
- const input = [null, options];
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
- const input = [options, null];
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
- const input = [null, options];
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