@harbour-enterprises/superdoc 2.0.0-next.14 → 2.0.0-next.16

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 (28) hide show
  1. package/dist/chunks/{PdfViewer-DHGCKcbn.es.js → PdfViewer-CdrC8sun.es.js} +1 -1
  2. package/dist/chunks/{PdfViewer-B2KasYH0.cjs → PdfViewer-DLkwuY7-.cjs} +1 -1
  3. package/dist/chunks/{index-C5g9qqV4.cjs → index-1i4nXznH.cjs} +4 -6
  4. package/dist/chunks/{index-CIGMPabO-0NmziL3U.es.js → index-Cmw9APX9-BVfkx11h.es.js} +1 -1
  5. package/dist/chunks/{index-CIGMPabO-CaiVnKiQ.cjs → index-Cmw9APX9-BtDxXnRC.cjs} +1 -1
  6. package/dist/chunks/{index-BFL0Wf8L.es.js → index-Cp0Emzrz.es.js} +4 -6
  7. package/dist/chunks/{super-editor.es-Cnykvny5.es.js → super-editor.es-DBJog8Zb.es.js} +55 -41
  8. package/dist/chunks/{super-editor.es-VSoDsxCy.cjs → super-editor.es-KrYbeR9r.cjs} +55 -41
  9. package/dist/packages/superdoc/src/stores/comments-store.d.ts.map +1 -1
  10. package/dist/super-editor/ai-writer.es.js +2 -2
  11. package/dist/super-editor/chunks/{converter-CHaTddld.js → converter-DjhAJLsQ.js} +5 -5
  12. package/dist/super-editor/chunks/{docx-zipper-DukEuVKp.js → docx-zipper-BL4GcFvY.js} +1 -1
  13. package/dist/super-editor/chunks/{editor-Ca-y1mB-.js → editor-D7HY7SfB.js} +56 -42
  14. package/dist/super-editor/chunks/{index-CIGMPabO.js → index-Cmw9APX9.js} +1 -1
  15. package/dist/super-editor/chunks/{toolbar-C5IzePMi.js → toolbar-CH6U-8TG.js} +2 -2
  16. package/dist/super-editor/converter.es.js +1 -1
  17. package/dist/super-editor/docx-zipper.es.js +2 -2
  18. package/dist/super-editor/editor.es.js +3 -3
  19. package/dist/super-editor/file-zipper.es.js +1 -1
  20. package/dist/super-editor/super-editor.es.js +6 -6
  21. package/dist/super-editor/toolbar.es.js +2 -2
  22. package/dist/super-editor.cjs +1 -1
  23. package/dist/super-editor.es.js +1 -1
  24. package/dist/superdoc.cjs +2 -2
  25. package/dist/superdoc.es.js +2 -2
  26. package/dist/superdoc.umd.js +58 -46
  27. package/dist/superdoc.umd.js.map +1 -1
  28. package/package.json +1 -1
@@ -1,5 +1,5 @@
1
1
  import { y as defineComponent, A as h, P as Transition, a0 as process$1, K as watchEffect, a as computed, r as ref, j as onMounted, X as onUnmounted, b as createElementBlock, o as openBlock, f as createBaseVNode, e as createCommentVNode, s as createVNode, x as unref } from "./vue-CLFbn_1r.es.js";
2
- import { d as derived, c, a as cB, f as fadeInTransition, b as cM, N as NBaseLoading, w as warnOnce, u as useConfig, e as useTheme, p as pxfy, g as createKey, h as useThemeClass, i as useCompitable, _ as _export_sfc, j as useSuperdocStore, s as storeToRefs, k as useSelection } from "./index-BFL0Wf8L.es.js";
2
+ import { d as derived, c, a as cB, f as fadeInTransition, b as cM, N as NBaseLoading, w as warnOnce, u as useConfig, e as useTheme, p as pxfy, g as createKey, h as useThemeClass, i as useCompitable, _ as _export_sfc, j as useSuperdocStore, s as storeToRefs, k as useSelection } from "./index-Cp0Emzrz.es.js";
3
3
  function self(vars) {
4
4
  const {
5
5
  opacityDisabled,
@@ -1,7 +1,7 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
3
3
  const vue = require("./vue-gvuFr0vx.cjs");
4
- const superdoc = require("./index-C5g9qqV4.cjs");
4
+ const superdoc = require("./index-1i4nXznH.cjs");
5
5
  function self(vars) {
6
6
  const {
7
7
  opacityDisabled,
@@ -1,5 +1,5 @@
1
1
  "use strict";
2
- const superEditor_es = require("./super-editor.es-VSoDsxCy.cjs");
2
+ const superEditor_es = require("./super-editor.es-KrYbeR9r.cjs");
3
3
  const blankDocx = require("./blank-docx-DfW3Eeh2.cjs");
4
4
  const eventemitter3 = require("./eventemitter3-DIclNhoR.cjs");
5
5
  const provider = require("@hocuspocus/provider");
@@ -4313,12 +4313,10 @@ const useCommentsStore = /* @__PURE__ */ defineStore("comments", () => {
4313
4313
  return processedComments;
4314
4314
  };
4315
4315
  const convertHtmlToSchema = (commentHTML) => {
4316
- const div = document.createElement("div");
4317
- div.innerHTML = commentHTML;
4318
4316
  const editor = new superEditor_es.Editor({
4319
4317
  mode: "text",
4320
4318
  isHeadless: true,
4321
- content: div,
4319
+ content: commentHTML,
4322
4320
  extensions: superEditor_es.getRichTextExtensions()
4323
4321
  });
4324
4322
  return editor.getJSON().content[0];
@@ -17487,7 +17485,7 @@ const _sfc_main = {
17487
17485
  __name: "SuperDoc",
17488
17486
  emits: ["selection-update"],
17489
17487
  setup(__props, { emit: __emit }) {
17490
- const PdfViewer = vue.defineAsyncComponent(() => Promise.resolve().then(() => require("./PdfViewer-B2KasYH0.cjs")));
17488
+ const PdfViewer = vue.defineAsyncComponent(() => Promise.resolve().then(() => require("./PdfViewer-DLkwuY7-.cjs")));
17491
17489
  const superdocStore = useSuperdocStore();
17492
17490
  const commentsStore = useCommentsStore();
17493
17491
  const {
@@ -18391,7 +18389,7 @@ class SuperDoc extends eventemitter3.EventEmitter {
18391
18389
  this.config.colors = shuffleArray(this.config.colors);
18392
18390
  this.userColorMap = /* @__PURE__ */ new Map();
18393
18391
  this.colorIndex = 0;
18394
- this.version = "2.0.0-next.14";
18392
+ this.version = "2.0.0-next.16";
18395
18393
  this.#log("🦋 [superdoc] Using SuperDoc version:", this.version);
18396
18394
  this.superdocId = config.superdocId || uuid.v4();
18397
18395
  this.colors = this.config.colors;
@@ -1,4 +1,4 @@
1
- import { s as getDefaultExportFromCjs$2 } from "./super-editor.es-Cnykvny5.es.js";
1
+ import { s as getDefaultExportFromCjs$2 } from "./super-editor.es-DBJog8Zb.es.js";
2
2
  import { V as VFile } from "./index-CvBqQJbG-CvBqQJbG.es.js";
3
3
  function bail(error) {
4
4
  if (error) {
@@ -1,6 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
3
- const superEditor_es = require("./super-editor.es-VSoDsxCy.cjs");
3
+ const superEditor_es = require("./super-editor.es-KrYbeR9r.cjs");
4
4
  const indexCvBqQJbG = require("./index-CvBqQJbG-Dwm0THD7.cjs");
5
5
  function bail(error) {
6
6
  if (error) {
@@ -1,4 +1,4 @@
1
- import { q as index, C as CommentsPluginKey, h as TrackChangesBasePluginKey, E as Editor, n as getRichTextExtensions, f as SuperInput, P as PresentationEditor, e as SuperEditor, A as AIWriter, g as SuperToolbar, i as createZip } from "./super-editor.es-Cnykvny5.es.js";
1
+ import { q as index, C as CommentsPluginKey, h as TrackChangesBasePluginKey, E as Editor, n as getRichTextExtensions, f as SuperInput, P as PresentationEditor, e as SuperEditor, A as AIWriter, g as SuperToolbar, i as createZip } from "./super-editor.es-DBJog8Zb.es.js";
2
2
  import { B as BlankDOCX } from "./blank-docx-ABm6XYAA.es.js";
3
3
  import { E as EventEmitter } from "./eventemitter3-D_2kqkfV.es.js";
4
4
  import { HocuspocusProvider, HocuspocusProviderWebsocket } from "@hocuspocus/provider";
@@ -4296,12 +4296,10 @@ const useCommentsStore = /* @__PURE__ */ defineStore("comments", () => {
4296
4296
  return processedComments;
4297
4297
  };
4298
4298
  const convertHtmlToSchema = (commentHTML) => {
4299
- const div = document.createElement("div");
4300
- div.innerHTML = commentHTML;
4301
4299
  const editor = new Editor({
4302
4300
  mode: "text",
4303
4301
  isHeadless: true,
4304
- content: div,
4302
+ content: commentHTML,
4305
4303
  extensions: getRichTextExtensions()
4306
4304
  });
4307
4305
  return editor.getJSON().content[0];
@@ -17470,7 +17468,7 @@ const _sfc_main = {
17470
17468
  __name: "SuperDoc",
17471
17469
  emits: ["selection-update"],
17472
17470
  setup(__props, { emit: __emit }) {
17473
- const PdfViewer = defineAsyncComponent(() => import("./PdfViewer-DHGCKcbn.es.js"));
17471
+ const PdfViewer = defineAsyncComponent(() => import("./PdfViewer-CdrC8sun.es.js"));
17474
17472
  const superdocStore = useSuperdocStore();
17475
17473
  const commentsStore = useCommentsStore();
17476
17474
  const {
@@ -18374,7 +18372,7 @@ class SuperDoc extends EventEmitter {
18374
18372
  this.config.colors = shuffleArray(this.config.colors);
18375
18373
  this.userColorMap = /* @__PURE__ */ new Map();
18376
18374
  this.colorIndex = 0;
18377
- this.version = "2.0.0-next.14";
18375
+ this.version = "2.0.0-next.16";
18378
18376
  this.#log("🦋 [superdoc] Using SuperDoc version:", this.version);
18379
18377
  this.superdocId = config.superdocId || v4();
18380
18378
  this.colors = this.config.colors;
@@ -42450,7 +42450,7 @@ const _SuperConverter = class _SuperConverter2 {
42450
42450
  static getStoredSuperdocVersion(docx) {
42451
42451
  return _SuperConverter2.getStoredCustomProperty(docx, "SuperdocVersion");
42452
42452
  }
42453
- static setStoredSuperdocVersion(docx = this.convertedXml, version2 = "2.0.0-next.14") {
42453
+ static setStoredSuperdocVersion(docx = this.convertedXml, version2 = "2.0.0-next.16") {
42454
42454
  return _SuperConverter2.setStoredCustomProperty(docx, "SuperdocVersion", version2, false);
42455
42455
  }
42456
42456
  /**
@@ -57598,6 +57598,9 @@ const findMarkPosition = (doc2, pos, markName) => {
57598
57598
  return null;
57599
57599
  }
57600
57600
  const actualMark = start2.node.marks.find((mark) => mark.type.name === markName);
57601
+ if (!actualMark) {
57602
+ return null;
57603
+ }
57601
57604
  let startIndex = $pos.index();
57602
57605
  let startPos = $pos.start() + start2.offset;
57603
57606
  while (startIndex > 0 && actualMark.isInSet(parent.child(startIndex - 1).marks)) {
@@ -58750,47 +58753,58 @@ function findRangeById(doc2, id) {
58750
58753
  return from2 !== null && to !== null ? { from: from2, to } : null;
58751
58754
  }
58752
58755
  const replaceStep = ({ state: state2, tr, step, newTr, map: map22, user, date, originalStep, originalStepIndex }) => {
58753
- const deletionMarkSchema = state2.schema.marks[TrackDeleteMarkName$1];
58754
- const deletionMark = findMark(state2, deletionMarkSchema, false);
58755
- const positionTo = deletionMark ? deletionMark.to : step.to;
58756
- const newStep = new ReplaceStep(
58757
- positionTo,
58758
- // We insert all the same steps, but with "from"/"to" both set to "to" in order not to delete content. Mapped as needed.
58759
- positionTo,
58760
- step.slice,
58761
- step.structure
58762
- );
58763
- const invertStep = originalStep.invert(tr.docs[originalStepIndex]).map(map22);
58764
- map22.appendMap(invertStep.getMap());
58765
- const meta = {};
58766
- if (newStep) {
58767
- const trTemp = state2.apply(newTr).tr;
58768
- if (trTemp.maybeStep(newStep).failed) {
58769
- return;
58770
- }
58771
- const mappedNewStepTo = newStep.getMap().map(newStep.to);
58772
- const insertedMark = markInsertion({
58773
- tr: trTemp,
58774
- from: newStep.from,
58775
- to: mappedNewStepTo,
58776
- user,
58777
- date
58778
- });
58779
- const condensedStep = new ReplaceStep(newStep.from, newStep.to, trTemp.doc.slice(newStep.from, mappedNewStepTo));
58780
- newTr.step(condensedStep);
58781
- const mirrorIndex = map22.maps.length - 1;
58782
- map22.appendMap(condensedStep.getMap(), mirrorIndex);
58783
- if (newStep.from !== mappedNewStepTo) {
58784
- meta.insertedMark = insertedMark;
58785
- meta.step = condensedStep;
58756
+ const trTemp = state2.apply(newTr).tr;
58757
+ let positionTo = step.to;
58758
+ const probePos = Math.max(step.from, step.to - 1);
58759
+ const deletionSpan = findMarkPosition(trTemp.doc, probePos, TrackDeleteMarkName$1);
58760
+ if (deletionSpan && deletionSpan.to > positionTo) {
58761
+ positionTo = deletionSpan.to;
58762
+ }
58763
+ const tryInsert = (slice2) => {
58764
+ const insertionStep = new ReplaceStep(positionTo, positionTo, slice2, false);
58765
+ if (trTemp.maybeStep(insertionStep).failed) return null;
58766
+ return {
58767
+ insertedFrom: insertionStep.from,
58768
+ insertedTo: insertionStep.getMap().map(insertionStep.to, 1)
58769
+ };
58770
+ };
58771
+ const insertion = tryInsert(step.slice) || tryInsert(Slice.maxOpen(step.slice.content, true));
58772
+ if (!insertion) {
58773
+ if (!newTr.maybeStep(step).failed) {
58774
+ map22.appendMap(step.getMap());
58786
58775
  }
58787
- if (!newTr.selection.eq(trTemp.selection)) {
58788
- newTr.setSelection(trTemp.selection);
58776
+ return;
58777
+ }
58778
+ const meta = {};
58779
+ const insertedMark = markInsertion({
58780
+ tr: trTemp,
58781
+ from: insertion.insertedFrom,
58782
+ to: insertion.insertedTo,
58783
+ user,
58784
+ date
58785
+ });
58786
+ const trackedInsertedSlice = trTemp.doc.slice(insertion.insertedFrom, insertion.insertedTo);
58787
+ const condensedStep = new ReplaceStep(positionTo, positionTo, trackedInsertedSlice, false);
58788
+ if (newTr.maybeStep(condensedStep).failed) {
58789
+ if (!newTr.maybeStep(step).failed) {
58790
+ map22.appendMap(step.getMap());
58789
58791
  }
58792
+ return;
58793
+ }
58794
+ const invertStep = originalStep.invert(tr.docs[originalStepIndex]).map(map22);
58795
+ map22.appendMap(invertStep.getMap());
58796
+ const mirrorIndex = map22.maps.length - 1;
58797
+ map22.appendMap(condensedStep.getMap(), mirrorIndex);
58798
+ if (insertion.insertedFrom !== insertion.insertedTo) {
58799
+ meta.insertedMark = insertedMark;
58800
+ meta.step = condensedStep;
58801
+ }
58802
+ if (!newTr.selection.eq(trTemp.selection)) {
58803
+ newTr.setSelection(trTemp.selection);
58790
58804
  }
58791
58805
  if (step.from !== step.to) {
58792
58806
  const {
58793
- deletionMark: deletionMark2,
58807
+ deletionMark,
58794
58808
  deletionMap,
58795
58809
  nodes: deletionNodes
58796
58810
  } = markDeletion({
@@ -58802,7 +58816,7 @@ const replaceStep = ({ state: state2, tr, step, newTr, map: map22, user, date, o
58802
58816
  id: meta.insertedMark?.attrs?.id
58803
58817
  });
58804
58818
  meta.deletionNodes = deletionNodes;
58805
- meta.deletionMark = deletionMark2;
58819
+ meta.deletionMark = deletionMark;
58806
58820
  map22.appendMapping(deletionMap);
58807
58821
  }
58808
58822
  newTr.setMeta(TrackChangesBasePluginKey, meta);
@@ -60623,7 +60637,7 @@ const isHeadless = (editor) => {
60623
60637
  const shouldSkipNodeView = (editor) => {
60624
60638
  return isHeadless(editor);
60625
60639
  };
60626
- const summaryVersion = "2.0.0-next.14";
60640
+ const summaryVersion = "2.0.0-next.16";
60627
60641
  const nodeKeys = ["group", "content", "marks", "inline", "atom", "defining", "code", "tableRole", "summary"];
60628
60642
  const markKeys = ["group", "inclusive", "excludes", "spanning", "code"];
60629
60643
  function mapAttributes(attrs) {
@@ -61412,7 +61426,7 @@ const _Editor = class _Editor2 extends EventEmitter$1 {
61412
61426
  { default: remarkStringify },
61413
61427
  { default: remarkGfm }
61414
61428
  ] = await Promise.all([
61415
- import("./index-CIGMPabO-0NmziL3U.es.js"),
61429
+ import("./index-Cmw9APX9-BVfkx11h.es.js"),
61416
61430
  import("./index-DRCvimau-Cw339678.es.js"),
61417
61431
  import("./index-C_x_N6Uh-DJn8hIEt.es.js"),
61418
61432
  import("./index-D_sWOSiG-DE96TaT5.es.js"),
@@ -61617,7 +61631,7 @@ const _Editor = class _Editor2 extends EventEmitter$1 {
61617
61631
  * Process collaboration migrations
61618
61632
  */
61619
61633
  processCollaborationMigrations() {
61620
- console.debug("[checkVersionMigrations] Current editor version", "2.0.0-next.14");
61634
+ console.debug("[checkVersionMigrations] Current editor version", "2.0.0-next.16");
61621
61635
  if (!this.options.ydoc) return;
61622
61636
  const metaMap = this.options.ydoc.getMap("meta");
61623
61637
  let docVersion = metaMap.get("version");
@@ -42467,7 +42467,7 @@ const _SuperConverter = class _SuperConverter2 {
42467
42467
  static getStoredSuperdocVersion(docx) {
42468
42468
  return _SuperConverter2.getStoredCustomProperty(docx, "SuperdocVersion");
42469
42469
  }
42470
- static setStoredSuperdocVersion(docx = this.convertedXml, version2 = "2.0.0-next.14") {
42470
+ static setStoredSuperdocVersion(docx = this.convertedXml, version2 = "2.0.0-next.16") {
42471
42471
  return _SuperConverter2.setStoredCustomProperty(docx, "SuperdocVersion", version2, false);
42472
42472
  }
42473
42473
  /**
@@ -57615,6 +57615,9 @@ const findMarkPosition = (doc2, pos, markName) => {
57615
57615
  return null;
57616
57616
  }
57617
57617
  const actualMark = start2.node.marks.find((mark) => mark.type.name === markName);
57618
+ if (!actualMark) {
57619
+ return null;
57620
+ }
57618
57621
  let startIndex = $pos.index();
57619
57622
  let startPos = $pos.start() + start2.offset;
57620
57623
  while (startIndex > 0 && actualMark.isInSet(parent.child(startIndex - 1).marks)) {
@@ -58767,47 +58770,58 @@ function findRangeById(doc2, id) {
58767
58770
  return from2 !== null && to !== null ? { from: from2, to } : null;
58768
58771
  }
58769
58772
  const replaceStep = ({ state: state2, tr, step, newTr, map: map22, user, date, originalStep, originalStepIndex }) => {
58770
- const deletionMarkSchema = state2.schema.marks[TrackDeleteMarkName$1];
58771
- const deletionMark = findMark(state2, deletionMarkSchema, false);
58772
- const positionTo = deletionMark ? deletionMark.to : step.to;
58773
- const newStep = new ReplaceStep(
58774
- positionTo,
58775
- // We insert all the same steps, but with "from"/"to" both set to "to" in order not to delete content. Mapped as needed.
58776
- positionTo,
58777
- step.slice,
58778
- step.structure
58779
- );
58780
- const invertStep = originalStep.invert(tr.docs[originalStepIndex]).map(map22);
58781
- map22.appendMap(invertStep.getMap());
58782
- const meta = {};
58783
- if (newStep) {
58784
- const trTemp = state2.apply(newTr).tr;
58785
- if (trTemp.maybeStep(newStep).failed) {
58786
- return;
58787
- }
58788
- const mappedNewStepTo = newStep.getMap().map(newStep.to);
58789
- const insertedMark = markInsertion({
58790
- tr: trTemp,
58791
- from: newStep.from,
58792
- to: mappedNewStepTo,
58793
- user,
58794
- date
58795
- });
58796
- const condensedStep = new ReplaceStep(newStep.from, newStep.to, trTemp.doc.slice(newStep.from, mappedNewStepTo));
58797
- newTr.step(condensedStep);
58798
- const mirrorIndex = map22.maps.length - 1;
58799
- map22.appendMap(condensedStep.getMap(), mirrorIndex);
58800
- if (newStep.from !== mappedNewStepTo) {
58801
- meta.insertedMark = insertedMark;
58802
- meta.step = condensedStep;
58773
+ const trTemp = state2.apply(newTr).tr;
58774
+ let positionTo = step.to;
58775
+ const probePos = Math.max(step.from, step.to - 1);
58776
+ const deletionSpan = findMarkPosition(trTemp.doc, probePos, TrackDeleteMarkName$1);
58777
+ if (deletionSpan && deletionSpan.to > positionTo) {
58778
+ positionTo = deletionSpan.to;
58779
+ }
58780
+ const tryInsert = (slice2) => {
58781
+ const insertionStep = new ReplaceStep(positionTo, positionTo, slice2, false);
58782
+ if (trTemp.maybeStep(insertionStep).failed) return null;
58783
+ return {
58784
+ insertedFrom: insertionStep.from,
58785
+ insertedTo: insertionStep.getMap().map(insertionStep.to, 1)
58786
+ };
58787
+ };
58788
+ const insertion = tryInsert(step.slice) || tryInsert(Slice.maxOpen(step.slice.content, true));
58789
+ if (!insertion) {
58790
+ if (!newTr.maybeStep(step).failed) {
58791
+ map22.appendMap(step.getMap());
58803
58792
  }
58804
- if (!newTr.selection.eq(trTemp.selection)) {
58805
- newTr.setSelection(trTemp.selection);
58793
+ return;
58794
+ }
58795
+ const meta = {};
58796
+ const insertedMark = markInsertion({
58797
+ tr: trTemp,
58798
+ from: insertion.insertedFrom,
58799
+ to: insertion.insertedTo,
58800
+ user,
58801
+ date
58802
+ });
58803
+ const trackedInsertedSlice = trTemp.doc.slice(insertion.insertedFrom, insertion.insertedTo);
58804
+ const condensedStep = new ReplaceStep(positionTo, positionTo, trackedInsertedSlice, false);
58805
+ if (newTr.maybeStep(condensedStep).failed) {
58806
+ if (!newTr.maybeStep(step).failed) {
58807
+ map22.appendMap(step.getMap());
58806
58808
  }
58809
+ return;
58810
+ }
58811
+ const invertStep = originalStep.invert(tr.docs[originalStepIndex]).map(map22);
58812
+ map22.appendMap(invertStep.getMap());
58813
+ const mirrorIndex = map22.maps.length - 1;
58814
+ map22.appendMap(condensedStep.getMap(), mirrorIndex);
58815
+ if (insertion.insertedFrom !== insertion.insertedTo) {
58816
+ meta.insertedMark = insertedMark;
58817
+ meta.step = condensedStep;
58818
+ }
58819
+ if (!newTr.selection.eq(trTemp.selection)) {
58820
+ newTr.setSelection(trTemp.selection);
58807
58821
  }
58808
58822
  if (step.from !== step.to) {
58809
58823
  const {
58810
- deletionMark: deletionMark2,
58824
+ deletionMark,
58811
58825
  deletionMap,
58812
58826
  nodes: deletionNodes
58813
58827
  } = markDeletion({
@@ -58819,7 +58833,7 @@ const replaceStep = ({ state: state2, tr, step, newTr, map: map22, user, date, o
58819
58833
  id: meta.insertedMark?.attrs?.id
58820
58834
  });
58821
58835
  meta.deletionNodes = deletionNodes;
58822
- meta.deletionMark = deletionMark2;
58836
+ meta.deletionMark = deletionMark;
58823
58837
  map22.appendMapping(deletionMap);
58824
58838
  }
58825
58839
  newTr.setMeta(TrackChangesBasePluginKey, meta);
@@ -60640,7 +60654,7 @@ const isHeadless = (editor) => {
60640
60654
  const shouldSkipNodeView = (editor) => {
60641
60655
  return isHeadless(editor);
60642
60656
  };
60643
- const summaryVersion = "2.0.0-next.14";
60657
+ const summaryVersion = "2.0.0-next.16";
60644
60658
  const nodeKeys = ["group", "content", "marks", "inline", "atom", "defining", "code", "tableRole", "summary"];
60645
60659
  const markKeys = ["group", "inclusive", "excludes", "spanning", "code"];
60646
60660
  function mapAttributes(attrs) {
@@ -61429,7 +61443,7 @@ const _Editor = class _Editor2 extends EventEmitter$1 {
61429
61443
  { default: remarkStringify },
61430
61444
  { default: remarkGfm }
61431
61445
  ] = await Promise.all([
61432
- Promise.resolve().then(() => require("./index-CIGMPabO-CaiVnKiQ.cjs")),
61446
+ Promise.resolve().then(() => require("./index-Cmw9APX9-BtDxXnRC.cjs")),
61433
61447
  Promise.resolve().then(() => require("./index-DRCvimau-H4Ck3S9a.cjs")),
61434
61448
  Promise.resolve().then(() => require("./index-C_x_N6Uh-Db3CUJMX.cjs")),
61435
61449
  Promise.resolve().then(() => require("./index-D_sWOSiG-BtDZzJ6I.cjs")),
@@ -61634,7 +61648,7 @@ const _Editor = class _Editor2 extends EventEmitter$1 {
61634
61648
  * Process collaboration migrations
61635
61649
  */
61636
61650
  processCollaborationMigrations() {
61637
- console.debug("[checkVersionMigrations] Current editor version", "2.0.0-next.14");
61651
+ console.debug("[checkVersionMigrations] Current editor version", "2.0.0-next.16");
61638
61652
  if (!this.options.ydoc) return;
61639
61653
  const metaMap = this.options.ydoc.getMap("meta");
61640
61654
  let docVersion = metaMap.get("version");
@@ -1 +1 @@
1
- {"version":3,"file":"comments-store.d.ts","sourceRoot":"","sources":["../../../../../src/stores/comments-store.js"],"names":[],"mappings":"AAeA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;oBA2Ca,MAAM,KACJ,IAAI;qBAiBN,MAAM,KACJ,MAAM;0CAUR,MAAM,GAAG,SAAS,GAAG,IAAI,KACvB,IAAI;;;;;;gFA8Ld;QAAuB,SAAS,EAAxB,MAAM;QACS,UAAU;QACV,eAAe;KACtC,KAAU,MAAM;;0DAqDhB;QAAuB,QAAQ,EAAvB,MAAM;KACd,KAAU,IAAI;sCAyEJ,IAAI;;;;;6CAzFJ,IAAI;4EAsGd;QAAsB,QAAQ;QACP,UAAU;KACjC,KAAU,IAAI;;+DA4HJ,IAAI;sDAnbd;QAAuB,QAAQ,EAAvB,MAAM;QACS,MAAM,EAArB,MAAM;KACd,KAAU,IAAI;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;oBAxDN,MAAM,KACJ,IAAI;qBAiBN,MAAM,KACJ,MAAM;0CAUR,MAAM,GAAG,SAAS,GAAG,IAAI,KACvB,IAAI;;;;;;gFA8Ld;QAAuB,SAAS,EAAxB,MAAM;QACS,UAAU;QACV,eAAe;KACtC,KAAU,MAAM;;0DAqDhB;QAAuB,QAAQ,EAAvB,MAAM;KACd,KAAU,IAAI;sCAyEJ,IAAI;;;;;6CAzFJ,IAAI;4EAsGd;QAAsB,QAAQ;QACP,UAAU;KACjC,KAAU,IAAI;;+DA4HJ,IAAI;sDAnbd;QAAuB,QAAQ,EAAvB,MAAM;QACS,MAAM,EAArB,MAAM;KACd,KAAU,IAAI;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;oBAxDN,MAAM,KACJ,IAAI;qBAiBN,MAAM,KACJ,MAAM;0CAUR,MAAM,GAAG,SAAS,GAAG,IAAI,KACvB,IAAI;;;;;;gFA8Ld;QAAuB,SAAS,EAAxB,MAAM;QACS,UAAU;QACV,eAAe;KACtC,KAAU,MAAM;;0DAqDhB;QAAuB,QAAQ,EAAvB,MAAM;KACd,KAAU,IAAI;sCAyEJ,IAAI;;;;;6CAzFJ,IAAI;4EAsGd;QAAsB,QAAQ;QACP,UAAU;KACjC,KAAU,IAAI;;+DA4HJ,IAAI;sDAnbd;QAAuB,QAAQ,EAAvB,MAAM;QACS,MAAM,EAArB,MAAM;KACd,KAAU,IAAI;wUA2jBhB"}
1
+ {"version":3,"file":"comments-store.d.ts","sourceRoot":"","sources":["../../../../../src/stores/comments-store.js"],"names":[],"mappings":"AAeA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;oBA2Ca,MAAM,KACJ,IAAI;qBAiBN,MAAM,KACJ,MAAM;0CAUR,MAAM,GAAG,SAAS,GAAG,IAAI,KACvB,IAAI;;;;;;gFA8Ld;QAAuB,SAAS,EAAxB,MAAM;QACS,UAAU;QACV,eAAe;KACtC,KAAU,MAAM;;0DAqDhB;QAAuB,QAAQ,EAAvB,MAAM;KACd,KAAU,IAAI;sCAyEJ,IAAI;;;;;6CAzFJ,IAAI;4EAsGd;QAAsB,QAAQ;QACP,UAAU;KACjC,KAAU,IAAI;;+DA0HJ,IAAI;sDAjbd;QAAuB,QAAQ,EAAvB,MAAM;QACS,MAAM,EAArB,MAAM;KACd,KAAU,IAAI;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;oBAxDN,MAAM,KACJ,IAAI;qBAiBN,MAAM,KACJ,MAAM;0CAUR,MAAM,GAAG,SAAS,GAAG,IAAI,KACvB,IAAI;;;;;;gFA8Ld;QAAuB,SAAS,EAAxB,MAAM;QACS,UAAU;QACV,eAAe;KACtC,KAAU,MAAM;;0DAqDhB;QAAuB,QAAQ,EAAvB,MAAM;KACd,KAAU,IAAI;sCAyEJ,IAAI;;;;;6CAzFJ,IAAI;4EAsGd;QAAsB,QAAQ;QACP,UAAU;KACjC,KAAU,IAAI;;+DA0HJ,IAAI;sDAjbd;QAAuB,QAAQ,EAAvB,MAAM;QACS,MAAM,EAArB,MAAM;KACd,KAAU,IAAI;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;oBAxDN,MAAM,KACJ,IAAI;qBAiBN,MAAM,KACJ,MAAM;0CAUR,MAAM,GAAG,SAAS,GAAG,IAAI,KACvB,IAAI;;;;;;gFA8Ld;QAAuB,SAAS,EAAxB,MAAM;QACS,UAAU;QACV,eAAe;KACtC,KAAU,MAAM;;0DAqDhB;QAAuB,QAAQ,EAAvB,MAAM;KACd,KAAU,IAAI;sCAyEJ,IAAI;;;;;6CAzFJ,IAAI;4EAsGd;QAAsB,QAAQ;QACP,UAAU;KACjC,KAAU,IAAI;;+DA0HJ,IAAI;sDAjbd;QAAuB,QAAQ,EAAvB,MAAM;QACS,MAAM,EAArB,MAAM;KACd,KAAU,IAAI;wUAyjBhB"}
@@ -1,6 +1,6 @@
1
1
  import { ref, onMounted, onUnmounted, computed, createElementBlock, openBlock, withModifiers, createElementVNode, withDirectives, unref, vModelText, createCommentVNode, nextTick } from "vue";
2
- import { T as TextSelection } from "./chunks/converter-CHaTddld.js";
3
- import { _ as _export_sfc } from "./chunks/editor-Ca-y1mB-.js";
2
+ import { T as TextSelection } from "./chunks/converter-DjhAJLsQ.js";
3
+ import { _ as _export_sfc } from "./chunks/editor-D7HY7SfB.js";
4
4
  const DEFAULT_API_ENDPOINT = "https://sd-dev-express-gateway-i6xtm.ondigitalocean.app/insights";
5
5
  const SYSTEM_PROMPT = "You are an expert copywriter and you are immersed in a document editor. You are to provide document related text responses based on the user prompts. Only write what is asked for. Do not provide explanations. Try to keep placeholders as short as possible. Do not output your prompt. Your instructions are: ";
6
6
  async function baseInsightsFetch(payload, options = {}) {
@@ -42767,7 +42767,7 @@ const _SuperConverter = class _SuperConverter {
42767
42767
  static getStoredSuperdocVersion(docx) {
42768
42768
  return _SuperConverter.getStoredCustomProperty(docx, "SuperdocVersion");
42769
42769
  }
42770
- static setStoredSuperdocVersion(docx = this.convertedXml, version = "2.0.0-next.14") {
42770
+ static setStoredSuperdocVersion(docx = this.convertedXml, version = "2.0.0-next.16") {
42771
42771
  return _SuperConverter.setStoredCustomProperty(docx, "SuperdocVersion", version, false);
42772
42772
  }
42773
42773
  /**
@@ -43492,10 +43492,10 @@ export {
43492
43492
  v4 as a0,
43493
43493
  TrackFormatMarkName as a1,
43494
43494
  comments_module_events as a2,
43495
- findMark as a3,
43496
- objectIncludes as a4,
43497
- AddMarkStep as a5,
43498
- RemoveMarkStep as a6,
43495
+ objectIncludes as a3,
43496
+ AddMarkStep as a4,
43497
+ RemoveMarkStep as a5,
43498
+ findMark as a6,
43499
43499
  twipsToLines as a7,
43500
43500
  pixelsToTwips as a8,
43501
43501
  helpers as a9,
@@ -1,4 +1,4 @@
1
- import { p as process$1, aJ as commonjsGlobal, B as Buffer, aK as getDefaultExportFromCjs, aL as getContentTypesFromXml, aM as xmljs } from "./converter-CHaTddld.js";
1
+ import { p as process$1, aJ as commonjsGlobal, B as Buffer, aK as getDefaultExportFromCjs, aL as getContentTypesFromXml, aM as xmljs } from "./converter-DjhAJLsQ.js";
2
2
  function commonjsRequire(path) {
3
3
  throw new Error('Could not dynamically require "' + path + '". Please configure the dynamicRequireTargets or/and ignoreDynamicRequires option of @rollup/plugin-commonjs appropriately for this require call to work.');
4
4
  }
@@ -12,8 +12,8 @@ var __privateMethod = (obj, member, method) => (__accessCheck(obj, member, "acce
12
12
  var _a, _Attribute_static, getGlobalAttributes_fn, getNodeAndMarksAttributes_fn, _Schema_static, createNodesSchema_fn, createMarksSchema_fn, _events, _ExtensionService_instances, setupExtensions_fn, attachEditorEvents_fn, _editor, _stateValidators, _xmlValidators, _requiredNodeTypes, _requiredMarkTypes, _SuperValidator_instances, initializeValidators_fn, collectValidatorRequirements_fn, analyzeDocument_fn, dispatchWithFallback_fn, _commandService, _Editor_instances, initContainerElement_fn, init_fn, initRichText_fn, onFocus_fn, checkHeadless_fn, registerCopyHandler_fn, insertNewFileData_fn, getPluginKeyName_fn, createExtensionService_fn, createCommandService_fn, createConverter_fn, initMedia_fn, initFonts_fn, checkFonts_fn, determineUnsupportedFonts_fn, createSchema_fn, generatePmData_fn, createView_fn, onCollaborationReady_fn, initComments_fn, dispatchTransaction_fn, handleNodeSelection_fn, prepareDocumentForImport_fn, prepareDocumentForExport_fn, endCollaboration_fn, validateDocumentInit_fn, validateDocumentExport_fn, initDevTools_fn, _currentEpoch, _mapsByFromEpoch, _maxEpochsToKeep, _EpochPositionMapper_instances, pruneByCurrentEpoch_fn, _entries, _windowRoot, _getPainterHost, _onRebuild, _observer, _rebuildScheduled, _rebuildRafId, _docEpoch, _layoutEpoch, _layoutUpdating, _pending, _scheduled, _rafHandle, _scheduler, _SelectionSyncCoordinator_instances, isSafeToRender_fn, maybeSchedule_fn, cancelScheduledRender_fn, _windowRoot2, _layoutSurfaces, _getTargetDom, _isEditable, _onTargetChanged, _listeners, _currentTarget, _destroyed, _useWindowFallback, _PresentationInputBridge_instances, addListener_fn, dispatchToTarget_fn, forwardKeyboardEvent_fn, forwardTextEvent_fn, forwardCompositionEvent_fn, forwardContextMenu_fn, isEventOnActiveTarget_fn, shouldSkipSurface_fn, isInLayoutSurface_fn, getListenerTargets_fn, isPlainCharacterKey_fn, _map, _editor2, _descriptors, _collections, _editorEntries, _maxCachedEditors, _editorAccessOrder, _pendingCreations, _cacheHits, _cacheMisses, _evictions, _HeaderFooterEditorManager_instances, hasConverter_fn, extractCollections_fn, collectDescriptors_fn, teardownMissingEditors_fn, teardownEditors_fn, createEditor_fn, createEditorContainer_fn, registerConverterEditor_fn, unregisterConverterEditor_fn, updateAccessOrder_fn, enforceCacheSizeLimit_fn, _manager, _mediaFiles, _blockCache, _HeaderFooterLayoutAdapter_instances, getBlocks_fn, getConverterContext_fn, _selectionOverlay, _activeEditorHost, _activeDecorationContainer, _activeRegion, _borderLine, _dimmingOverlay, _EditorOverlayManager_instances, findDecorationContainer_fn, ensureEditorHost_fn, positionEditorHost_fn, hideDimmingOverlay_fn, showHeaderFooterBorder_fn, hideHeaderFooterBorder_fn, _instances, _options, _editor3, _visibleHost, _viewportHost, _painterHost, _selectionOverlay2, _hiddenHost, _layoutOptions, _layoutState, _domPainter, _pageGeometryHelper, _dragHandlerCleanup, _layoutError, _layoutErrorState, _errorBanner, _errorBannerMessage, _telemetryEmitter, _renderScheduled, _pendingDocChange, _isRerendering, _selectionSync, _remoteCursorUpdateScheduled, _epochMapper, _layoutEpoch2, _domPositionIndex, _domIndexObserverManager, _debugLastPointer, _debugLastHit, _pendingMarginClick, _rafHandle2, _editorListeners, _sectionMetadata, _documentMode, _inputBridge, _trackedChangesMode, _trackedChangesEnabled, _trackedChangesOverrides, _headerFooterManager, _headerFooterAdapter, _headerFooterIdentifier, _multiSectionIdentifier, _headerLayoutResults, _footerLayoutResults, _headerLayoutsByRId, _footerLayoutsByRId, _headerDecorationProvider, _footerDecorationProvider, _headerFooterManagerCleanups, _headerRegions, _footerRegions, _session, _activeHeaderFooterEditor, _overlayManager, _hoverOverlay, _hoverTooltip, _modeBanner, _ariaLiveRegion, _a11ySelectionAnnounceTimeout, _a11yLastAnnouncedSelectionKey, _hoverRegion, _clickCount, _lastClickTime, _lastClickPosition, _lastSelectedImageBlockId, _dragAnchor, _dragAnchorPageIndex, _isDragging, _dragExtensionMode, _dragLastPointer, _dragLastRawHit, _dragUsedPageNotMountedFallback, _cellAnchor, _cellDragMode, _remoteCursorState, _remoteCursorElements, _remoteCursorDirty, _remoteCursorOverlay, _localSelectionLayer, _awarenessCleanup, _scrollCleanup, _scrollTimeout, _lastRemoteCursorRenderTime, _remoteCursorThrottleTimeout, _PresentationEditor_instances, wrapHiddenEditorFocus_fn, collectCommentPositions_fn, updateSelectionDebugHud_fn, computePendingMarginClick_fn, aggregateLayoutBounds_fn, rebuildDomPositionIndex_fn, setupEditorListeners_fn, setupCollaborationCursors_fn, updateLocalAwarenessCursor_fn, scheduleRemoteCursorUpdate_fn, scheduleRemoteCursorReRender_fn, updateRemoteCursors_fn, renderRemoteCursors_fn, setupPointerHandlers_fn, setupDragHandlers_fn, focusEditorAfterImageSelection_fn, setupInputBridge_fn, initHeaderFooterRegistry_fn, _handlePointerDown, getFirstTextPosition_fn, registerPointerClick_fn, getCellPosFromTableHit_fn, getTablePosFromHit_fn, shouldUseCellSelection_fn, setCellAnchor_fn, clearCellAnchor_fn, hitTestTable_fn, selectWordAt_fn, selectParagraphAt_fn, calculateExtendedSelection_fn, _handlePointerMove, _handlePointerLeave, _handleVisibleHostFocusIn, _handlePointerUp, _handleDragOver, _handleDrop, _handleDoubleClick, _handleKeyDown, focusHeaderFooterShortcut_fn, scheduleRerender_fn, flushRerenderQueue_fn, rerender_fn, ensurePainter_fn, scheduleSelectionUpdate_fn, updateSelection_fn, resolveLayoutOptions_fn, buildHeaderFooterInput_fn, computeHeaderFooterConstraints_fn, layoutPerRIdHeaderFooters_fn, updateDecorationProviders_fn, createDecorationProvider_fn, findHeaderFooterPageForPageNumber_fn, computeDecorationBox_fn, computeExpectedSectionType_fn, rebuildHeaderFooterRegions_fn, hitTestHeaderFooterRegion_fn, pointInRegion_fn, activateHeaderFooterRegion_fn, enterHeaderFooterMode_fn, exitHeaderFooterMode_fn, getActiveDomTarget_fn, emitHeaderFooterModeChanged_fn, emitHeaderFooterEditingContext_fn, updateAwarenessSession_fn, updateModeBanner_fn, announce_fn, syncHiddenEditorA11yAttributes_fn, scheduleA11ySelectionAnnouncement_fn, announceSelectionNow_fn, validateHeaderFooterEditPermission_fn, emitHeaderFooterEditBlocked_fn, resolveDescriptorForRegion_fn, createDefaultHeaderFooter_fn, getPageElement_fn, isSelectionAwareVirtualizationEnabled_fn, updateSelectionVirtualizationPins_fn, finalizeDragSelectionWithDom_fn, scrollPageIntoView_fn, waitForPageMount_fn, getEffectivePageGap_fn, getBodyPageHeight_fn, getHeaderFooterPageHeight_fn, renderCellSelectionOverlay_fn, renderHoverRegion_fn, clearHoverRegion_fn, getHeaderFooterContext_fn, computeHeaderFooterSelectionRects_fn, syncTrackedChangesPreferences_fn, deriveTrackedChangesMode_fn, deriveTrackedChangesEnabled_fn, getTrackChangesPluginState_fn, computeDefaultLayoutDefaults_fn, applyZoom_fn, getPageOffsetX_fn, convertPageLocalToOverlayCoords_fn, computeSelectionRectsFromDom_fn, computeDomCaretPageLocal_fn, normalizeClientPoint_fn, computeCaretLayoutRectGeometry_fn, computeCaretLayoutRect_fn, getCurrentPageIndex_fn, findRegionForPage_fn, handleLayoutError_fn, decorateError_fn, showLayoutErrorBanner_fn, dismissErrorBanner_fn, _DocumentSectionView_instances, init_fn2, addToolTip_fn, _ParagraphNodeView_instances, checkShouldUpdate_fn, updateHTMLAttributes_fn, updateDOMStyles_fn, resolveNeighborParagraphProperties_fn, updateListStyles_fn, initList_fn, checkIsList_fn, createMarker_fn, createSeparator_fn, calculateTabSeparatorStyle_fn, calculateMarkerStyle_fn, removeList_fn, getParagraphContext_fn, scheduleAnimation_fn, cancelScheduledAnimation_fn, _FieldAnnotationView_instances, createAnnotation_fn, _AutoPageNumberNodeView_instances, renderDom_fn, scheduleUpdateNodeStyle_fn, _VectorShapeView_instances, ensureParentPositioned_fn, _ShapeGroupView_instances, ensureParentPositioned_fn2;
13
13
  import * as Y from "yjs";
14
14
  import { UndoManager, Item as Item$1, ContentType, Text as Text$1, XmlElement, encodeStateAsUpdate } from "yjs";
15
- import { P as PluginKey, a as Plugin, M as Mapping, N as NodeSelection, S as Selection, T as TextSelection, b as Slice, D as DOMSerializer, F as Fragment, c as DOMParser$1, d as Mark$1, e as dropPoint, A as AllSelection, p as process$1, B as Buffer2, f as callOrGet, g as getExtensionConfigField, h as getMarkType, i as getMarksFromSelection, j as getNodeType, k as getSchemaTypeNameByName, l as Schema$2, m as cleanSchemaItem, n as canSplit, o as defaultBlockAt$1, q as liftTarget, r as canJoin, s as joinPoint, t as replaceStep$1, R as ReplaceAroundStep$1, u as isTextSelection, v as getMarkRange, w as isMarkActive, x as isNodeActive, y as deleteProps, z as processContent, C as htmlHandler, E as ReplaceStep, G as twipsToInches, H as inchesToTwips, I as ptToTwips, J as getResolvedParagraphProperties, K as linesToTwips, L as changeListLevel, O as findParentNode, Q as isList, U as updateNumberingProperties, V as ListHelpers, W as isMacOS, X as isIOS, Y as getSchemaTypeByName, Z as inputRulesPlugin, _ as TrackDeleteMarkName$1, $ as TrackInsertMarkName$1, a0 as v4, a1 as TrackFormatMarkName$1, a2 as comments_module_events, a3 as findMark, a4 as objectIncludes, a5 as AddMarkStep, a6 as RemoveMarkStep, a7 as twipsToLines, a8 as pixelsToTwips, a9 as helpers, aa as posToDOMRect, ab as CommandService, ac as SuperConverter, ad as createDocument, ae as createDocFromMarkdown, af as createDocFromHTML, ag as EditorState, ah as isActive, ai as unflattenListsInHtml, aj as SelectionRange, ak as Transform, al as resolveParagraphProperties, am as _getReferencedTableStyles, an as parseSizeUnit, ao as minMax, ap as updateDOMAttributes, aq as findChildren$5, ar as generateRandomSigned32BitIntStrId, as as decodeRPrFromMarks, at as calculateResolvedParagraphProperties, au as resolveRunProperties, av as encodeCSSFromPPr, aw as twipsToPixels$2, ax as encodeCSSFromRPr, ay as generateOrderedListIndex, az as docxNumberingHelpers, aA as InputRule, aB as convertSizeToCSS, aC as findParentNodeClosestToPos, aD as isInTable$1, aE as generateDocxRandomId, aF as insertNewRelationship, aG as inchesToPixels, aH as kebabCase, aI as getUnderlineCssString } from "./converter-CHaTddld.js";
16
- import { D as DocxZipper } from "./docx-zipper-DukEuVKp.js";
15
+ import { P as PluginKey, a as Plugin, M as Mapping, N as NodeSelection, S as Selection, T as TextSelection, b as Slice, D as DOMSerializer, F as Fragment, c as DOMParser$1, d as Mark$1, e as dropPoint, A as AllSelection, p as process$1, B as Buffer2, f as callOrGet, g as getExtensionConfigField, h as getMarkType, i as getMarksFromSelection, j as getNodeType, k as getSchemaTypeNameByName, l as Schema$2, m as cleanSchemaItem, n as canSplit, o as defaultBlockAt$1, q as liftTarget, r as canJoin, s as joinPoint, t as replaceStep$1, R as ReplaceAroundStep$1, u as isTextSelection, v as getMarkRange, w as isMarkActive, x as isNodeActive, y as deleteProps, z as processContent, C as htmlHandler, E as ReplaceStep, G as twipsToInches, H as inchesToTwips, I as ptToTwips, J as getResolvedParagraphProperties, K as linesToTwips, L as changeListLevel, O as findParentNode, Q as isList, U as updateNumberingProperties, V as ListHelpers, W as isMacOS, X as isIOS, Y as getSchemaTypeByName, Z as inputRulesPlugin, _ as TrackDeleteMarkName$1, $ as TrackInsertMarkName$1, a0 as v4, a1 as TrackFormatMarkName$1, a2 as comments_module_events, a3 as objectIncludes, a4 as AddMarkStep, a5 as RemoveMarkStep, a6 as findMark, a7 as twipsToLines, a8 as pixelsToTwips, a9 as helpers, aa as posToDOMRect, ab as CommandService, ac as SuperConverter, ad as createDocument, ae as createDocFromMarkdown, af as createDocFromHTML, ag as EditorState, ah as isActive, ai as unflattenListsInHtml, aj as SelectionRange, ak as Transform, al as resolveParagraphProperties, am as _getReferencedTableStyles, an as parseSizeUnit, ao as minMax, ap as updateDOMAttributes, aq as findChildren$5, ar as generateRandomSigned32BitIntStrId, as as decodeRPrFromMarks, at as calculateResolvedParagraphProperties, au as resolveRunProperties, av as encodeCSSFromPPr, aw as twipsToPixels$2, ax as encodeCSSFromRPr, ay as generateOrderedListIndex, az as docxNumberingHelpers, aA as InputRule, aB as convertSizeToCSS, aC as findParentNodeClosestToPos, aD as isInTable$1, aE as generateDocxRandomId, aF as insertNewRelationship, aG as inchesToPixels, aH as kebabCase, aI as getUnderlineCssString } from "./converter-DjhAJLsQ.js";
16
+ import { D as DocxZipper } from "./docx-zipper-BL4GcFvY.js";
17
17
  import { ref, computed, createElementBlock, openBlock, withModifiers, Fragment as Fragment$1, renderList, normalizeClass, createCommentVNode, toDisplayString, createElementVNode, createApp } from "vue";
18
18
  var GOOD_LEAF_SIZE = 200;
19
19
  var RopeSequence = function RopeSequence2() {
@@ -11859,6 +11859,9 @@ const findMarkPosition = (doc2, pos, markName) => {
11859
11859
  return null;
11860
11860
  }
11861
11861
  const actualMark = start2.node.marks.find((mark) => mark.type.name === markName);
11862
+ if (!actualMark) {
11863
+ return null;
11864
+ }
11862
11865
  let startIndex = $pos.index();
11863
11866
  let startPos = $pos.start() + start2.offset;
11864
11867
  while (startIndex > 0 && actualMark.isInSet(parent.child(startIndex - 1).marks)) {
@@ -13011,47 +13014,58 @@ function findRangeById(doc2, id) {
13011
13014
  return from2 !== null && to !== null ? { from: from2, to } : null;
13012
13015
  }
13013
13016
  const replaceStep = ({ state, tr, step, newTr, map: map2, user, date, originalStep, originalStepIndex }) => {
13014
- const deletionMarkSchema = state.schema.marks[TrackDeleteMarkName$1];
13015
- const deletionMark = findMark(state, deletionMarkSchema, false);
13016
- const positionTo = deletionMark ? deletionMark.to : step.to;
13017
- const newStep = new ReplaceStep(
13018
- positionTo,
13019
- // We insert all the same steps, but with "from"/"to" both set to "to" in order not to delete content. Mapped as needed.
13020
- positionTo,
13021
- step.slice,
13022
- step.structure
13023
- );
13024
- const invertStep = originalStep.invert(tr.docs[originalStepIndex]).map(map2);
13025
- map2.appendMap(invertStep.getMap());
13026
- const meta = {};
13027
- if (newStep) {
13028
- const trTemp = state.apply(newTr).tr;
13029
- if (trTemp.maybeStep(newStep).failed) {
13030
- return;
13031
- }
13032
- const mappedNewStepTo = newStep.getMap().map(newStep.to);
13033
- const insertedMark = markInsertion({
13034
- tr: trTemp,
13035
- from: newStep.from,
13036
- to: mappedNewStepTo,
13037
- user,
13038
- date
13039
- });
13040
- const condensedStep = new ReplaceStep(newStep.from, newStep.to, trTemp.doc.slice(newStep.from, mappedNewStepTo));
13041
- newTr.step(condensedStep);
13042
- const mirrorIndex = map2.maps.length - 1;
13043
- map2.appendMap(condensedStep.getMap(), mirrorIndex);
13044
- if (newStep.from !== mappedNewStepTo) {
13045
- meta.insertedMark = insertedMark;
13046
- meta.step = condensedStep;
13017
+ const trTemp = state.apply(newTr).tr;
13018
+ let positionTo = step.to;
13019
+ const probePos = Math.max(step.from, step.to - 1);
13020
+ const deletionSpan = findMarkPosition(trTemp.doc, probePos, TrackDeleteMarkName$1);
13021
+ if (deletionSpan && deletionSpan.to > positionTo) {
13022
+ positionTo = deletionSpan.to;
13023
+ }
13024
+ const tryInsert = (slice2) => {
13025
+ const insertionStep = new ReplaceStep(positionTo, positionTo, slice2, false);
13026
+ if (trTemp.maybeStep(insertionStep).failed) return null;
13027
+ return {
13028
+ insertedFrom: insertionStep.from,
13029
+ insertedTo: insertionStep.getMap().map(insertionStep.to, 1)
13030
+ };
13031
+ };
13032
+ const insertion = tryInsert(step.slice) || tryInsert(Slice.maxOpen(step.slice.content, true));
13033
+ if (!insertion) {
13034
+ if (!newTr.maybeStep(step).failed) {
13035
+ map2.appendMap(step.getMap());
13047
13036
  }
13048
- if (!newTr.selection.eq(trTemp.selection)) {
13049
- newTr.setSelection(trTemp.selection);
13037
+ return;
13038
+ }
13039
+ const meta = {};
13040
+ const insertedMark = markInsertion({
13041
+ tr: trTemp,
13042
+ from: insertion.insertedFrom,
13043
+ to: insertion.insertedTo,
13044
+ user,
13045
+ date
13046
+ });
13047
+ const trackedInsertedSlice = trTemp.doc.slice(insertion.insertedFrom, insertion.insertedTo);
13048
+ const condensedStep = new ReplaceStep(positionTo, positionTo, trackedInsertedSlice, false);
13049
+ if (newTr.maybeStep(condensedStep).failed) {
13050
+ if (!newTr.maybeStep(step).failed) {
13051
+ map2.appendMap(step.getMap());
13050
13052
  }
13053
+ return;
13054
+ }
13055
+ const invertStep = originalStep.invert(tr.docs[originalStepIndex]).map(map2);
13056
+ map2.appendMap(invertStep.getMap());
13057
+ const mirrorIndex = map2.maps.length - 1;
13058
+ map2.appendMap(condensedStep.getMap(), mirrorIndex);
13059
+ if (insertion.insertedFrom !== insertion.insertedTo) {
13060
+ meta.insertedMark = insertedMark;
13061
+ meta.step = condensedStep;
13062
+ }
13063
+ if (!newTr.selection.eq(trTemp.selection)) {
13064
+ newTr.setSelection(trTemp.selection);
13051
13065
  }
13052
13066
  if (step.from !== step.to) {
13053
13067
  const {
13054
- deletionMark: deletionMark2,
13068
+ deletionMark,
13055
13069
  deletionMap,
13056
13070
  nodes: deletionNodes
13057
13071
  } = markDeletion({
@@ -13063,7 +13077,7 @@ const replaceStep = ({ state, tr, step, newTr, map: map2, user, date, originalSt
13063
13077
  id: meta.insertedMark?.attrs?.id
13064
13078
  });
13065
13079
  meta.deletionNodes = deletionNodes;
13066
- meta.deletionMark = deletionMark2;
13080
+ meta.deletionMark = deletionMark;
13067
13081
  map2.appendMapping(deletionMap);
13068
13082
  }
13069
13083
  newTr.setMeta(TrackChangesBasePluginKey, meta);
@@ -14907,7 +14921,7 @@ const isHeadless = (editor) => {
14907
14921
  const shouldSkipNodeView = (editor) => {
14908
14922
  return isHeadless(editor);
14909
14923
  };
14910
- const summaryVersion = "2.0.0-next.14";
14924
+ const summaryVersion = "2.0.0-next.16";
14911
14925
  const nodeKeys = ["group", "content", "marks", "inline", "atom", "defining", "code", "tableRole", "summary"];
14912
14926
  const markKeys = ["group", "inclusive", "excludes", "spanning", "code"];
14913
14927
  function mapAttributes(attrs) {
@@ -15699,7 +15713,7 @@ const _Editor = class _Editor extends EventEmitter {
15699
15713
  { default: remarkStringify },
15700
15714
  { default: remarkGfm }
15701
15715
  ] = await Promise.all([
15702
- import("./index-CIGMPabO.js"),
15716
+ import("./index-Cmw9APX9.js"),
15703
15717
  import("./index-DRCvimau.js"),
15704
15718
  import("./index-C_x_N6Uh.js"),
15705
15719
  import("./index-D_sWOSiG.js"),
@@ -15904,7 +15918,7 @@ const _Editor = class _Editor extends EventEmitter {
15904
15918
  * Process collaboration migrations
15905
15919
  */
15906
15920
  processCollaborationMigrations() {
15907
- console.debug("[checkVersionMigrations] Current editor version", "2.0.0-next.14");
15921
+ console.debug("[checkVersionMigrations] Current editor version", "2.0.0-next.16");
15908
15922
  if (!this.options.ydoc) return;
15909
15923
  const metaMap = this.options.ydoc.getMap("meta");
15910
15924
  let docVersion = metaMap.get("version");