@harbour-enterprises/superdoc 0.13.0-next.3 → 0.13.0-next.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 (27) hide show
  1. package/dist/chunks/{super-editor.es-CaiAvJmI.es.js → super-editor.es-BUhPIiSe.es.js} +66 -11
  2. package/dist/chunks/{super-editor.es-C1r2fKvd.cjs → super-editor.es-DiMCL_ka.cjs} +66 -11
  3. package/dist/stores/comments-store.d.ts.map +1 -1
  4. package/dist/super-editor/ai-writer.es.js +2 -2
  5. package/dist/super-editor/chunks/{converter-DifQiKXL.js → converter-DOyDZC9F.js} +2 -2
  6. package/dist/super-editor/chunks/{docx-zipper-0V4s80fa.js → docx-zipper-DZ-zYy-E.js} +1 -1
  7. package/dist/super-editor/chunks/{editor-Cu6WivrX.js → editor-Dz35c20r.js} +66 -11
  8. package/dist/super-editor/chunks/{toolbar-VX_23hqe.js → toolbar-BXs-eLuz.js} +2 -2
  9. package/dist/super-editor/converter.es.js +1 -1
  10. package/dist/super-editor/core/Editor.d.ts +14 -0
  11. package/dist/super-editor/core/Editor.d.ts.map +1 -1
  12. package/dist/super-editor/docx-zipper.es.js +2 -2
  13. package/dist/super-editor/editor.es.js +3 -3
  14. package/dist/super-editor/extensions/image/imageHelpers/imagePositionPlugin.d.ts.map +1 -1
  15. package/dist/super-editor/extensions/ordered-list/helpers/orderedListSyncPlugin.d.ts.map +1 -1
  16. package/dist/super-editor/extensions/paragraph/paragraph.d.ts.map +1 -1
  17. package/dist/super-editor/extensions/tab/tab.d.ts.map +1 -1
  18. package/dist/super-editor/file-zipper.es.js +1 -1
  19. package/dist/super-editor/super-editor.es.js +6 -6
  20. package/dist/super-editor/toolbar.es.js +2 -2
  21. package/dist/super-editor.cjs +1 -1
  22. package/dist/super-editor.es.js +1 -1
  23. package/dist/superdoc.cjs +23 -7
  24. package/dist/superdoc.es.js +24 -8
  25. package/dist/superdoc.umd.js +88 -17
  26. package/dist/superdoc.umd.js.map +1 -1
  27. package/package.json +1 -1
@@ -23393,7 +23393,7 @@ const _SuperConverter = class _SuperConverter2 {
23393
23393
  return;
23394
23394
  }
23395
23395
  }
23396
- static updateDocumentVersion(docx = this.convertedXml, version2 = "0.13.0-next.3") {
23396
+ static updateDocumentVersion(docx = this.convertedXml, version2 = "0.13.0-next.5") {
23397
23397
  const customLocation = "docProps/custom.xml";
23398
23398
  if (!docx[customLocation]) {
23399
23399
  docx[customLocation] = generateCustomXml();
@@ -23860,7 +23860,7 @@ function storeSuperdocVersion(docx) {
23860
23860
  function generateCustomXml() {
23861
23861
  return DEFAULT_CUSTOM_XML;
23862
23862
  }
23863
- function generateSuperdocVersion(pid = 2, version2 = "0.13.0-next.3") {
23863
+ function generateSuperdocVersion(pid = 2, version2 = "0.13.0-next.5") {
23864
23864
  return {
23865
23865
  type: "element",
23866
23866
  name: "property",
@@ -39382,7 +39382,7 @@ const CommentsPlugin = Extension.create({
39382
39382
  if (isPaginationInit) shouldUpdate = true;
39383
39383
  const meta = tr.getMeta(CommentsPluginKey);
39384
39384
  const { type: type2 } = meta || {};
39385
- if (type2 === "force") shouldUpdate = true;
39385
+ if (type2 === "force" || type2 === "forceTrackChanges") shouldUpdate = true;
39386
39386
  if (!isPaginationInit && !shouldUpdate && meta && meta.decorations) {
39387
39387
  return {
39388
39388
  ...pluginState,
@@ -40664,7 +40664,9 @@ const _Editor = class _Editor2 extends EventEmitter$1 {
40664
40664
  // async (file) => url;
40665
40665
  handleImageUpload: null,
40666
40666
  // telemetry
40667
- telemetry: null
40667
+ telemetry: null,
40668
+ // Docx xml updated by User
40669
+ customUpdatedFiles: {}
40668
40670
  });
40669
40671
  __privateMethod$1(this, _Editor_instances, initContainerElement_fn).call(this, options2);
40670
40672
  __privateMethod$1(this, _Editor_instances, checkHeadless_fn).call(this, options2);
@@ -41170,6 +41172,7 @@ const _Editor = class _Editor2 extends EventEmitter$1 {
41170
41172
  const numberingData = this.converter.convertedXml["word/numbering.xml"];
41171
41173
  const numbering = this.converter.schemaToXml(numberingData.elements[0]);
41172
41174
  const updatedDocs = {
41175
+ ...this.options.customUpdatedFiles,
41173
41176
  "word/document.xml": String(documentXml),
41174
41177
  "docProps/custom.xml": String(customXml),
41175
41178
  "word/settings.xml": String(customSettings),
@@ -41237,7 +41240,7 @@ const _Editor = class _Editor2 extends EventEmitter$1 {
41237
41240
  * @returns {Object | void} Migration results
41238
41241
  */
41239
41242
  processCollaborationMigrations() {
41240
- console.debug("[checkVersionMigrations] Current editor version", "0.13.0-next.3");
41243
+ console.debug("[checkVersionMigrations] Current editor version", "0.13.0-next.5");
41241
41244
  if (!this.options.ydoc) return;
41242
41245
  const metaMap = this.options.ydoc.getMap("meta");
41243
41246
  let docVersion = metaMap.get("version");
@@ -41290,6 +41293,35 @@ const _Editor = class _Editor2 extends EventEmitter$1 {
41290
41293
  __privateMethod$1(this, _Editor_instances, initComments_fn).call(this);
41291
41294
  }
41292
41295
  }
41296
+ /**
41297
+ * Get internal docx file content
41298
+ * @param {string} name - File name
41299
+ * @param {string} type - type of result (json, string)
41300
+ * @returns {Object|String} - file content
41301
+ */
41302
+ getInternalXmlFile(name, type2 = "json") {
41303
+ if (!this.converter.convertedXml[name]) {
41304
+ console.warn("Cannot find file in docx");
41305
+ return null;
41306
+ }
41307
+ if (type2 === "json") {
41308
+ return this.converter.convertedXml[name].elements[0] || null;
41309
+ }
41310
+ return this.converter.schemaToXml(this.converter.convertedXml[name].elements[0]);
41311
+ }
41312
+ /**
41313
+ * Update internal docx file content
41314
+ * @param {string} name - File name
41315
+ * @param {string} updatedContent - new file content
41316
+ */
41317
+ updateInternalXmlFile(name, updatedContent) {
41318
+ if (typeof updatedContent === "string") {
41319
+ this.options.customUpdatedFiles[name] = String(updatedContent);
41320
+ } else {
41321
+ const internalFileXml = this.converter.schemaToXml(updatedContent);
41322
+ this.options.customUpdatedFiles[name] = String(internalFileXml);
41323
+ }
41324
+ }
41293
41325
  /**
41294
41326
  * Get all nodes of a specific type
41295
41327
  * @param {string} type - Node type
@@ -42936,6 +42968,9 @@ function orderedListSync(options2 = {}) {
42936
42968
  let { doc: doc2, tr } = newState;
42937
42969
  let listsBySyncId = {};
42938
42970
  doc2.descendants((node2, pos) => {
42971
+ if (node2.type.name === "paragraph") {
42972
+ return false;
42973
+ }
42939
42974
  if (node2.type.name === "orderedList" && !!node2.attrs.syncId) {
42940
42975
  let syncId = node2.attrs.syncId;
42941
42976
  if (!listsBySyncId[syncId]) listsBySyncId[syncId] = [];
@@ -43065,6 +43100,9 @@ function getOrderedListItemsByList(state2) {
43065
43100
  let { doc: doc2 } = state2;
43066
43101
  let map22 = /* @__PURE__ */ new Map();
43067
43102
  doc2.descendants((node2, pos) => {
43103
+ if (node2.type.name === "paragraph") {
43104
+ return false;
43105
+ }
43068
43106
  let { attrs } = node2;
43069
43107
  let isListItem = node2.type.name === "listItem";
43070
43108
  let hasListLevel = !!attrs.listLevel?.length;
@@ -43085,6 +43123,9 @@ function getAllChildListItemsOfList({ state: state2, list }) {
43085
43123
  let { doc: doc2 } = state2;
43086
43124
  let allItems = [];
43087
43125
  doc2.descendants((node2, pos) => {
43126
+ if (node2.type.name === "paragraph") {
43127
+ return false;
43128
+ }
43088
43129
  let isListItem = node2.type.name === "listItem";
43089
43130
  let $pos = doc2.resolve(pos);
43090
43131
  if (isListItem && $pos.parent === list) {
@@ -43460,7 +43501,15 @@ function getListMarkerDecorations(state2, marks = []) {
43460
43501
  let { doc: doc2, storedMarks } = state2;
43461
43502
  let decorations = [];
43462
43503
  if (Array.isArray(storedMarks)) marks.push(...storedMarks);
43463
- let listItems = findChildren$4(doc2, (node2) => node2.type.name === "listItem");
43504
+ let listItems = [];
43505
+ doc2.descendants((node2, pos) => {
43506
+ if (node2.type.name === "paragraph") {
43507
+ return false;
43508
+ }
43509
+ if (node2.type.name === "listItem") {
43510
+ listItems.push({ node: node2, pos });
43511
+ }
43512
+ });
43464
43513
  if (!listItems.length) {
43465
43514
  return decorations;
43466
43515
  }
@@ -44037,6 +44086,7 @@ const Paragraph = Node$1.create({
44037
44086
  return DecorationSet.create(state2.doc, decorations);
44038
44087
  },
44039
44088
  apply(tr, oldDecorationSet, oldState, newState) {
44089
+ if (!tr.docChanged) return oldDecorationSet;
44040
44090
  const decorations = getDropcapDecorations(newState, view);
44041
44091
  return DecorationSet.create(newState.doc, decorations);
44042
44092
  }
@@ -44053,11 +44103,14 @@ const Paragraph = Node$1.create({
44053
44103
  const getDropcapDecorations = (state2, view) => {
44054
44104
  let decorations = [];
44055
44105
  state2.doc.descendants((node2, pos) => {
44056
- if (node2.attrs.dropcap?.type === "margin") {
44057
- const width = getDropcapWidth(view, pos);
44058
- decorations.push(
44059
- Decoration.inline(pos, pos + node2.nodeSize, { style: `margin-left: -${width}px;` })
44060
- );
44106
+ if (node2.type.name === "paragraph") {
44107
+ if (node2.attrs.dropcap?.type === "margin") {
44108
+ const width = getDropcapWidth(view, pos);
44109
+ decorations.push(
44110
+ Decoration.inline(pos, pos + node2.nodeSize, { style: `margin-left: -${width}px;` })
44111
+ );
44112
+ }
44113
+ return false;
44061
44114
  }
44062
44115
  });
44063
44116
  return decorations;
@@ -44293,6 +44346,7 @@ const TabNode = Node$1.create({
44293
44346
  return DecorationSet.create(state2.doc, decorations);
44294
44347
  },
44295
44348
  apply(tr, oldDecorationSet, oldState, newState) {
44349
+ if (!tr.docChanged) return oldDecorationSet;
44296
44350
  const decorations = getTabDecorations(newState, view);
44297
44351
  return DecorationSet.create(newState.doc, decorations);
44298
44352
  }
@@ -48628,6 +48682,7 @@ const ImagePositionPlugin = ({ editor }) => {
48628
48682
  return DecorationSet.empty;
48629
48683
  },
48630
48684
  apply(tr, oldDecorationSet, oldState, newState) {
48685
+ if (!tr.docChanged) return oldDecorationSet;
48631
48686
  const decorations = getImagePositionDecorations(newState, view);
48632
48687
  return DecorationSet.create(newState.doc, decorations);
48633
48688
  }
@@ -23410,7 +23410,7 @@ const _SuperConverter = class _SuperConverter2 {
23410
23410
  return;
23411
23411
  }
23412
23412
  }
23413
- static updateDocumentVersion(docx = this.convertedXml, version2 = "0.13.0-next.3") {
23413
+ static updateDocumentVersion(docx = this.convertedXml, version2 = "0.13.0-next.5") {
23414
23414
  const customLocation = "docProps/custom.xml";
23415
23415
  if (!docx[customLocation]) {
23416
23416
  docx[customLocation] = generateCustomXml();
@@ -23877,7 +23877,7 @@ function storeSuperdocVersion(docx) {
23877
23877
  function generateCustomXml() {
23878
23878
  return DEFAULT_CUSTOM_XML;
23879
23879
  }
23880
- function generateSuperdocVersion(pid = 2, version2 = "0.13.0-next.3") {
23880
+ function generateSuperdocVersion(pid = 2, version2 = "0.13.0-next.5") {
23881
23881
  return {
23882
23882
  type: "element",
23883
23883
  name: "property",
@@ -39399,7 +39399,7 @@ const CommentsPlugin = Extension.create({
39399
39399
  if (isPaginationInit) shouldUpdate = true;
39400
39400
  const meta = tr.getMeta(CommentsPluginKey);
39401
39401
  const { type: type2 } = meta || {};
39402
- if (type2 === "force") shouldUpdate = true;
39402
+ if (type2 === "force" || type2 === "forceTrackChanges") shouldUpdate = true;
39403
39403
  if (!isPaginationInit && !shouldUpdate && meta && meta.decorations) {
39404
39404
  return {
39405
39405
  ...pluginState,
@@ -40681,7 +40681,9 @@ const _Editor = class _Editor2 extends EventEmitter$1 {
40681
40681
  // async (file) => url;
40682
40682
  handleImageUpload: null,
40683
40683
  // telemetry
40684
- telemetry: null
40684
+ telemetry: null,
40685
+ // Docx xml updated by User
40686
+ customUpdatedFiles: {}
40685
40687
  });
40686
40688
  __privateMethod$1(this, _Editor_instances, initContainerElement_fn).call(this, options2);
40687
40689
  __privateMethod$1(this, _Editor_instances, checkHeadless_fn).call(this, options2);
@@ -41187,6 +41189,7 @@ const _Editor = class _Editor2 extends EventEmitter$1 {
41187
41189
  const numberingData = this.converter.convertedXml["word/numbering.xml"];
41188
41190
  const numbering = this.converter.schemaToXml(numberingData.elements[0]);
41189
41191
  const updatedDocs = {
41192
+ ...this.options.customUpdatedFiles,
41190
41193
  "word/document.xml": String(documentXml),
41191
41194
  "docProps/custom.xml": String(customXml),
41192
41195
  "word/settings.xml": String(customSettings),
@@ -41254,7 +41257,7 @@ const _Editor = class _Editor2 extends EventEmitter$1 {
41254
41257
  * @returns {Object | void} Migration results
41255
41258
  */
41256
41259
  processCollaborationMigrations() {
41257
- console.debug("[checkVersionMigrations] Current editor version", "0.13.0-next.3");
41260
+ console.debug("[checkVersionMigrations] Current editor version", "0.13.0-next.5");
41258
41261
  if (!this.options.ydoc) return;
41259
41262
  const metaMap = this.options.ydoc.getMap("meta");
41260
41263
  let docVersion = metaMap.get("version");
@@ -41307,6 +41310,35 @@ const _Editor = class _Editor2 extends EventEmitter$1 {
41307
41310
  __privateMethod$1(this, _Editor_instances, initComments_fn).call(this);
41308
41311
  }
41309
41312
  }
41313
+ /**
41314
+ * Get internal docx file content
41315
+ * @param {string} name - File name
41316
+ * @param {string} type - type of result (json, string)
41317
+ * @returns {Object|String} - file content
41318
+ */
41319
+ getInternalXmlFile(name, type2 = "json") {
41320
+ if (!this.converter.convertedXml[name]) {
41321
+ console.warn("Cannot find file in docx");
41322
+ return null;
41323
+ }
41324
+ if (type2 === "json") {
41325
+ return this.converter.convertedXml[name].elements[0] || null;
41326
+ }
41327
+ return this.converter.schemaToXml(this.converter.convertedXml[name].elements[0]);
41328
+ }
41329
+ /**
41330
+ * Update internal docx file content
41331
+ * @param {string} name - File name
41332
+ * @param {string} updatedContent - new file content
41333
+ */
41334
+ updateInternalXmlFile(name, updatedContent) {
41335
+ if (typeof updatedContent === "string") {
41336
+ this.options.customUpdatedFiles[name] = String(updatedContent);
41337
+ } else {
41338
+ const internalFileXml = this.converter.schemaToXml(updatedContent);
41339
+ this.options.customUpdatedFiles[name] = String(internalFileXml);
41340
+ }
41341
+ }
41310
41342
  /**
41311
41343
  * Get all nodes of a specific type
41312
41344
  * @param {string} type - Node type
@@ -42953,6 +42985,9 @@ function orderedListSync(options2 = {}) {
42953
42985
  let { doc: doc2, tr } = newState;
42954
42986
  let listsBySyncId = {};
42955
42987
  doc2.descendants((node2, pos) => {
42988
+ if (node2.type.name === "paragraph") {
42989
+ return false;
42990
+ }
42956
42991
  if (node2.type.name === "orderedList" && !!node2.attrs.syncId) {
42957
42992
  let syncId = node2.attrs.syncId;
42958
42993
  if (!listsBySyncId[syncId]) listsBySyncId[syncId] = [];
@@ -43082,6 +43117,9 @@ function getOrderedListItemsByList(state2) {
43082
43117
  let { doc: doc2 } = state2;
43083
43118
  let map22 = /* @__PURE__ */ new Map();
43084
43119
  doc2.descendants((node2, pos) => {
43120
+ if (node2.type.name === "paragraph") {
43121
+ return false;
43122
+ }
43085
43123
  let { attrs } = node2;
43086
43124
  let isListItem = node2.type.name === "listItem";
43087
43125
  let hasListLevel = !!attrs.listLevel?.length;
@@ -43102,6 +43140,9 @@ function getAllChildListItemsOfList({ state: state2, list }) {
43102
43140
  let { doc: doc2 } = state2;
43103
43141
  let allItems = [];
43104
43142
  doc2.descendants((node2, pos) => {
43143
+ if (node2.type.name === "paragraph") {
43144
+ return false;
43145
+ }
43105
43146
  let isListItem = node2.type.name === "listItem";
43106
43147
  let $pos = doc2.resolve(pos);
43107
43148
  if (isListItem && $pos.parent === list) {
@@ -43477,7 +43518,15 @@ function getListMarkerDecorations(state2, marks = []) {
43477
43518
  let { doc: doc2, storedMarks } = state2;
43478
43519
  let decorations = [];
43479
43520
  if (Array.isArray(storedMarks)) marks.push(...storedMarks);
43480
- let listItems = findChildren$4(doc2, (node2) => node2.type.name === "listItem");
43521
+ let listItems = [];
43522
+ doc2.descendants((node2, pos) => {
43523
+ if (node2.type.name === "paragraph") {
43524
+ return false;
43525
+ }
43526
+ if (node2.type.name === "listItem") {
43527
+ listItems.push({ node: node2, pos });
43528
+ }
43529
+ });
43481
43530
  if (!listItems.length) {
43482
43531
  return decorations;
43483
43532
  }
@@ -44054,6 +44103,7 @@ const Paragraph = Node$1.create({
44054
44103
  return DecorationSet.create(state2.doc, decorations);
44055
44104
  },
44056
44105
  apply(tr, oldDecorationSet, oldState, newState) {
44106
+ if (!tr.docChanged) return oldDecorationSet;
44057
44107
  const decorations = getDropcapDecorations(newState, view);
44058
44108
  return DecorationSet.create(newState.doc, decorations);
44059
44109
  }
@@ -44070,11 +44120,14 @@ const Paragraph = Node$1.create({
44070
44120
  const getDropcapDecorations = (state2, view) => {
44071
44121
  let decorations = [];
44072
44122
  state2.doc.descendants((node2, pos) => {
44073
- if (node2.attrs.dropcap?.type === "margin") {
44074
- const width = getDropcapWidth(view, pos);
44075
- decorations.push(
44076
- Decoration.inline(pos, pos + node2.nodeSize, { style: `margin-left: -${width}px;` })
44077
- );
44123
+ if (node2.type.name === "paragraph") {
44124
+ if (node2.attrs.dropcap?.type === "margin") {
44125
+ const width = getDropcapWidth(view, pos);
44126
+ decorations.push(
44127
+ Decoration.inline(pos, pos + node2.nodeSize, { style: `margin-left: -${width}px;` })
44128
+ );
44129
+ }
44130
+ return false;
44078
44131
  }
44079
44132
  });
44080
44133
  return decorations;
@@ -44310,6 +44363,7 @@ const TabNode = Node$1.create({
44310
44363
  return DecorationSet.create(state2.doc, decorations);
44311
44364
  },
44312
44365
  apply(tr, oldDecorationSet, oldState, newState) {
44366
+ if (!tr.docChanged) return oldDecorationSet;
44313
44367
  const decorations = getTabDecorations(newState, view);
44314
44368
  return DecorationSet.create(newState.doc, decorations);
44315
44369
  }
@@ -48645,6 +48699,7 @@ const ImagePositionPlugin = ({ editor }) => {
48645
48699
  return DecorationSet.empty;
48646
48700
  },
48647
48701
  apply(tr, oldDecorationSet, oldState, newState) {
48702
+ if (!tr.docChanged) return oldDecorationSet;
48648
48703
  const decorations = getImagePositionDecorations(newState, view);
48649
48704
  return DecorationSet.create(newState.doc, decorations);
48650
48705
  }
@@ -1 +1 @@
1
- {"version":3,"file":"comments-store.d.ts","sourceRoot":"","sources":["../../src/stores/comments-store.js"],"names":[],"mappings":"AASA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;4BA2Ce,IAAI;qBAiBN,MAAM;2BAWN,MAAM,GAAG,SAAS,GAAG,IAAI,KACvB,IAAI;;;;;;;gFA0Nd;QAAuB,SAAS;QACT,UAAU;QACV,eAAe;KACtC;;wCAoDA;QAAuB,QAAQ;KAC/B,KAAU,IAAI;sCA2EJ,IAAI;;;;;6CA3FJ,IAAI;4EAwGd;QAAsB,QAAQ;QACP,UAAU;KACjC,KAAU,IAAI;;oFAqGJ,IAAI;sDAhcd;QAAuB,QAAQ;QACR,MAAM;KAC7B,KAAU,IAAI;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;4BAhDJ,IAAI;qBAiBN,MAAM;2BAWN,MAAM,GAAG,SAAS,GAAG,IAAI,KACvB,IAAI;;;;;;;gFA0Nd;QAAuB,SAAS;QACT,UAAU;QACV,eAAe;KACtC;;wCAoDA;QAAuB,QAAQ;KAC/B,KAAU,IAAI;sCA2EJ,IAAI;;;;;6CA3FJ,IAAI;4EAwGd;QAAsB,QAAQ;QACP,UAAU;KACjC,KAAU,IAAI;;oFAqGJ,IAAI;sDAhcd;QAAuB,QAAQ;QACR,MAAM;KAC7B,KAAU,IAAI;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;4BAhDJ,IAAI;qBAiBN,MAAM;2BAWN,MAAM,GAAG,SAAS,GAAG,IAAI,KACvB,IAAI;;;;;;;gFA0Nd;QAAuB,SAAS;QACT,UAAU;QACV,eAAe;KACtC;;wCAoDA;QAAuB,QAAQ;KAC/B,KAAU,IAAI;sCA2EJ,IAAI;;;;;6CA3FJ,IAAI;4EAwGd;QAAsB,QAAQ;QACP,UAAU;KACjC,KAAU,IAAI;;oFAqGJ,IAAI;sDAhcd;QAAuB,QAAQ;QACR,MAAM;KAC7B,KAAU,IAAI;0VA6hBhB"}
1
+ {"version":3,"file":"comments-store.d.ts","sourceRoot":"","sources":["../../src/stores/comments-store.js"],"names":[],"mappings":"AASA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;4BA2Ce,IAAI;qBAiBN,MAAM;2BAWN,MAAM,GAAG,SAAS,GAAG,IAAI,KACvB,IAAI;;;;;;;gFA0Nd;QAAuB,SAAS;QACT,UAAU;QACV,eAAe;KACtC;;wCAoDA;QAAuB,QAAQ;KAC/B,KAAU,IAAI;sCA2EJ,IAAI;;;;;6CA3FJ,IAAI;4EAwGd;QAAsB,QAAQ;QACP,UAAU;KACjC,KAAU,IAAI;;oFA0HJ,IAAI;sDArdd;QAAuB,QAAQ;QACR,MAAM;KAC7B,KAAU,IAAI;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;4BAhDJ,IAAI;qBAiBN,MAAM;2BAWN,MAAM,GAAG,SAAS,GAAG,IAAI,KACvB,IAAI;;;;;;;gFA0Nd;QAAuB,SAAS;QACT,UAAU;QACV,eAAe;KACtC;;wCAoDA;QAAuB,QAAQ;KAC/B,KAAU,IAAI;sCA2EJ,IAAI;;;;;6CA3FJ,IAAI;4EAwGd;QAAsB,QAAQ;QACP,UAAU;KACjC,KAAU,IAAI;;oFA0HJ,IAAI;sDArdd;QAAuB,QAAQ;QACR,MAAM;KAC7B,KAAU,IAAI;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;4BAhDJ,IAAI;qBAiBN,MAAM;2BAWN,MAAM,GAAG,SAAS,GAAG,IAAI,KACvB,IAAI;;;;;;;gFA0Nd;QAAuB,SAAS;QACT,UAAU;QACV,eAAe;KACtC;;wCAoDA;QAAuB,QAAQ;KAC/B,KAAU,IAAI;sCA2EJ,IAAI;;;;;6CA3FJ,IAAI;4EAwGd;QAAsB,QAAQ;QACP,UAAU;KACjC,KAAU,IAAI;;oFA0HJ,IAAI;sDArdd;QAAuB,QAAQ;QACR,MAAM;KAC7B,KAAU,IAAI;0VAkjBhB"}
@@ -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-DifQiKXL.js";
3
- import { _ as _export_sfc } from "./chunks/editor-Cu6WivrX.js";
2
+ import { T as TextSelection } from "./chunks/converter-DOyDZC9F.js";
3
+ import { _ as _export_sfc } from "./chunks/editor-Dz35c20r.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 = {}) {
@@ -23412,7 +23412,7 @@ const _SuperConverter = class _SuperConverter {
23412
23412
  return;
23413
23413
  }
23414
23414
  }
23415
- static updateDocumentVersion(docx = this.convertedXml, version = "0.13.0-next.3") {
23415
+ static updateDocumentVersion(docx = this.convertedXml, version = "0.13.0-next.5") {
23416
23416
  const customLocation = "docProps/custom.xml";
23417
23417
  if (!docx[customLocation]) {
23418
23418
  docx[customLocation] = generateCustomXml();
@@ -23882,7 +23882,7 @@ function storeSuperdocVersion(docx) {
23882
23882
  function generateCustomXml() {
23883
23883
  return DEFAULT_CUSTOM_XML;
23884
23884
  }
23885
- function generateSuperdocVersion(pid = 2, version = "0.13.0-next.3") {
23885
+ function generateSuperdocVersion(pid = 2, version = "0.13.0-next.5") {
23886
23886
  return {
23887
23887
  type: "element",
23888
23888
  name: "property",
@@ -1,4 +1,4 @@
1
- import { x as process$1, a1 as commonjsGlobal, B as Buffer, a2 as getDefaultExportFromCjs, a3 as getContentTypesFromXml, a4 as xmljs } from "./converter-DifQiKXL.js";
1
+ import { x as process$1, a1 as commonjsGlobal, B as Buffer, a2 as getDefaultExportFromCjs, a3 as getContentTypesFromXml, a4 as xmljs } from "./converter-DOyDZC9F.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,9 +12,9 @@ var __privateMethod = (obj, member, method) => (__accessCheck(obj, member, "acce
12
12
  var _Attribute_static, getGlobalAttributes_fn, getNodeAndMarksAttributes_fn, _Schema_static, createNodesSchema_fn, createMarksSchema_fn, _events, _ExtensionService_instances, setupExtensions_fn, attachEditorEvents_fn, _commandService, _css, _Editor_instances, initContainerElement_fn, init_fn, initRichText_fn, onFocus_fn, checkHeadless_fn, insertNewFileData_fn, registerPluginByNameIfNotExists_fn, createExtensionService_fn, createCommandService_fn, createConverter_fn, initMedia_fn, initFonts_fn, createSchema_fn, generatePmData_fn, createDocFromHTML_fn, createView_fn, onCollaborationReady_fn, initComments_fn, initPagination_fn, dispatchTransaction_fn, prepareDocumentForImport_fn, prepareDocumentForExport_fn, endCollaboration_fn, _FieldAnnotationView_instances, createAnnotation_fn, _AutoPageNumberNodeView_instances, renderDom_fn, scheduleUpdateNodeStyle_fn;
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, c as callOrGet, i as isEmptyObject, S as Schema$1, T as TextSelection, b as canSplit, l as liftTarget, A as AllSelection, d as canJoin, j as joinPoint, N as NodeSelection, r as replaceStep$1, e as Selection, F as Fragment, R as ReplaceAroundStep, f as Slice, o as objectIncludes, g as deleteProps, D as DOMParser$1, h as ReplaceStep, k as NodeRange, m as findWrapping, n as isMacOS, p as isIOS, q as generateDocxRandomId, s as minMax, t as generateRandom32BitHex, u as DOMSerializer, v as Mark$1, w as dropPoint, x as process$1, B as Buffer2, y as isRegExp, z as TrackDeleteMarkName, C as TrackInsertMarkName, E as v4, G as TrackFormatMarkName, H as comments_module_events, I as AddMarkStep, J as RemoveMarkStep, K as twipsToLines, L as pixelsToTwips, O as SuperConverter, Q as EditorState, U as hasSomeParentWithClass, V as parseSizeUnit, W as getLineHeightValueString, X as toKebabCase, Y as kebabCase, Z as getColStyleDeclaration, _ as SelectionRange, $ as Transform, a0 as createColGroup } from "./converter-DifQiKXL.js";
15
+ import { P as PluginKey, a as Plugin, M as Mapping, c as callOrGet, i as isEmptyObject, S as Schema$1, T as TextSelection, b as canSplit, l as liftTarget, A as AllSelection, d as canJoin, j as joinPoint, N as NodeSelection, r as replaceStep$1, e as Selection, F as Fragment, R as ReplaceAroundStep, f as Slice, o as objectIncludes, g as deleteProps, D as DOMParser$1, h as ReplaceStep, k as NodeRange, m as findWrapping, n as isMacOS, p as isIOS, q as generateDocxRandomId, s as minMax, t as generateRandom32BitHex, u as DOMSerializer, v as Mark$1, w as dropPoint, x as process$1, B as Buffer2, y as isRegExp, z as TrackDeleteMarkName, C as TrackInsertMarkName, E as v4, G as TrackFormatMarkName, H as comments_module_events, I as AddMarkStep, J as RemoveMarkStep, K as twipsToLines, L as pixelsToTwips, O as SuperConverter, Q as EditorState, U as hasSomeParentWithClass, V as parseSizeUnit, W as getLineHeightValueString, X as toKebabCase, Y as kebabCase, Z as getColStyleDeclaration, _ as SelectionRange, $ as Transform, a0 as createColGroup } from "./converter-DOyDZC9F.js";
16
16
  import { ref, computed, createElementBlock, openBlock, withModifiers, Fragment as Fragment$1, renderList, normalizeClass, createCommentVNode, toDisplayString, createElementVNode, createApp } from "vue";
17
- import { D as DocxZipper } from "./docx-zipper-0V4s80fa.js";
17
+ import { D as DocxZipper } from "./docx-zipper-DZ-zYy-E.js";
18
18
  function getMarksFromSelection(state) {
19
19
  const { from: from2, to, empty: empty2 } = state.selection;
20
20
  const marks = [];
@@ -13012,7 +13012,7 @@ const CommentsPlugin = Extension.create({
13012
13012
  if (isPaginationInit) shouldUpdate = true;
13013
13013
  const meta = tr.getMeta(CommentsPluginKey);
13014
13014
  const { type } = meta || {};
13015
- if (type === "force") shouldUpdate = true;
13015
+ if (type === "force" || type === "forceTrackChanges") shouldUpdate = true;
13016
13016
  if (!isPaginationInit && !shouldUpdate && meta && meta.decorations) {
13017
13017
  return {
13018
13018
  ...pluginState,
@@ -14322,7 +14322,9 @@ const _Editor = class _Editor extends EventEmitter {
14322
14322
  // async (file) => url;
14323
14323
  handleImageUpload: null,
14324
14324
  // telemetry
14325
- telemetry: null
14325
+ telemetry: null,
14326
+ // Docx xml updated by User
14327
+ customUpdatedFiles: {}
14326
14328
  });
14327
14329
  __privateMethod(this, _Editor_instances, initContainerElement_fn).call(this, options);
14328
14330
  __privateMethod(this, _Editor_instances, checkHeadless_fn).call(this, options);
@@ -14828,6 +14830,7 @@ const _Editor = class _Editor extends EventEmitter {
14828
14830
  const numberingData = this.converter.convertedXml["word/numbering.xml"];
14829
14831
  const numbering = this.converter.schemaToXml(numberingData.elements[0]);
14830
14832
  const updatedDocs = {
14833
+ ...this.options.customUpdatedFiles,
14831
14834
  "word/document.xml": String(documentXml),
14832
14835
  "docProps/custom.xml": String(customXml),
14833
14836
  "word/settings.xml": String(customSettings),
@@ -14895,7 +14898,7 @@ const _Editor = class _Editor extends EventEmitter {
14895
14898
  * @returns {Object | void} Migration results
14896
14899
  */
14897
14900
  processCollaborationMigrations() {
14898
- console.debug("[checkVersionMigrations] Current editor version", "0.13.0-next.3");
14901
+ console.debug("[checkVersionMigrations] Current editor version", "0.13.0-next.5");
14899
14902
  if (!this.options.ydoc) return;
14900
14903
  const metaMap = this.options.ydoc.getMap("meta");
14901
14904
  let docVersion = metaMap.get("version");
@@ -14948,6 +14951,35 @@ const _Editor = class _Editor extends EventEmitter {
14948
14951
  __privateMethod(this, _Editor_instances, initComments_fn).call(this);
14949
14952
  }
14950
14953
  }
14954
+ /**
14955
+ * Get internal docx file content
14956
+ * @param {string} name - File name
14957
+ * @param {string} type - type of result (json, string)
14958
+ * @returns {Object|String} - file content
14959
+ */
14960
+ getInternalXmlFile(name, type = "json") {
14961
+ if (!this.converter.convertedXml[name]) {
14962
+ console.warn("Cannot find file in docx");
14963
+ return null;
14964
+ }
14965
+ if (type === "json") {
14966
+ return this.converter.convertedXml[name].elements[0] || null;
14967
+ }
14968
+ return this.converter.schemaToXml(this.converter.convertedXml[name].elements[0]);
14969
+ }
14970
+ /**
14971
+ * Update internal docx file content
14972
+ * @param {string} name - File name
14973
+ * @param {string} updatedContent - new file content
14974
+ */
14975
+ updateInternalXmlFile(name, updatedContent) {
14976
+ if (typeof updatedContent === "string") {
14977
+ this.options.customUpdatedFiles[name] = String(updatedContent);
14978
+ } else {
14979
+ const internalFileXml = this.converter.schemaToXml(updatedContent);
14980
+ this.options.customUpdatedFiles[name] = String(internalFileXml);
14981
+ }
14982
+ }
14951
14983
  /**
14952
14984
  * Get all nodes of a specific type
14953
14985
  * @param {string} type - Node type
@@ -16728,6 +16760,9 @@ function orderedListSync(options = {}) {
16728
16760
  let { doc: doc2, tr } = newState;
16729
16761
  let listsBySyncId = {};
16730
16762
  doc2.descendants((node, pos) => {
16763
+ if (node.type.name === "paragraph") {
16764
+ return false;
16765
+ }
16731
16766
  if (node.type.name === "orderedList" && !!node.attrs.syncId) {
16732
16767
  let syncId = node.attrs.syncId;
16733
16768
  if (!listsBySyncId[syncId]) listsBySyncId[syncId] = [];
@@ -16857,6 +16892,9 @@ function getOrderedListItemsByList(state) {
16857
16892
  let { doc: doc2 } = state;
16858
16893
  let map2 = /* @__PURE__ */ new Map();
16859
16894
  doc2.descendants((node, pos) => {
16895
+ if (node.type.name === "paragraph") {
16896
+ return false;
16897
+ }
16860
16898
  let { attrs } = node;
16861
16899
  let isListItem = node.type.name === "listItem";
16862
16900
  let hasListLevel = !!attrs.listLevel?.length;
@@ -16877,6 +16915,9 @@ function getAllChildListItemsOfList({ state, list }) {
16877
16915
  let { doc: doc2 } = state;
16878
16916
  let allItems = [];
16879
16917
  doc2.descendants((node, pos) => {
16918
+ if (node.type.name === "paragraph") {
16919
+ return false;
16920
+ }
16880
16921
  let isListItem = node.type.name === "listItem";
16881
16922
  let $pos = doc2.resolve(pos);
16882
16923
  if (isListItem && $pos.parent === list) {
@@ -17252,7 +17293,15 @@ function getListMarkerDecorations(state, marks = []) {
17252
17293
  let { doc: doc2, storedMarks } = state;
17253
17294
  let decorations = [];
17254
17295
  if (Array.isArray(storedMarks)) marks.push(...storedMarks);
17255
- let listItems = findChildren$4(doc2, (node) => node.type.name === "listItem");
17296
+ let listItems = [];
17297
+ doc2.descendants((node, pos) => {
17298
+ if (node.type.name === "paragraph") {
17299
+ return false;
17300
+ }
17301
+ if (node.type.name === "listItem") {
17302
+ listItems.push({ node, pos });
17303
+ }
17304
+ });
17256
17305
  if (!listItems.length) {
17257
17306
  return decorations;
17258
17307
  }
@@ -17829,6 +17878,7 @@ const Paragraph = Node$1.create({
17829
17878
  return DecorationSet.create(state.doc, decorations);
17830
17879
  },
17831
17880
  apply(tr, oldDecorationSet, oldState, newState) {
17881
+ if (!tr.docChanged) return oldDecorationSet;
17832
17882
  const decorations = getDropcapDecorations(newState, view);
17833
17883
  return DecorationSet.create(newState.doc, decorations);
17834
17884
  }
@@ -17845,11 +17895,14 @@ const Paragraph = Node$1.create({
17845
17895
  const getDropcapDecorations = (state, view) => {
17846
17896
  let decorations = [];
17847
17897
  state.doc.descendants((node, pos) => {
17848
- if (node.attrs.dropcap?.type === "margin") {
17849
- const width = getDropcapWidth(view, pos);
17850
- decorations.push(
17851
- Decoration.inline(pos, pos + node.nodeSize, { style: `margin-left: -${width}px;` })
17852
- );
17898
+ if (node.type.name === "paragraph") {
17899
+ if (node.attrs.dropcap?.type === "margin") {
17900
+ const width = getDropcapWidth(view, pos);
17901
+ decorations.push(
17902
+ Decoration.inline(pos, pos + node.nodeSize, { style: `margin-left: -${width}px;` })
17903
+ );
17904
+ }
17905
+ return false;
17853
17906
  }
17854
17907
  });
17855
17908
  return decorations;
@@ -18085,6 +18138,7 @@ const TabNode = Node$1.create({
18085
18138
  return DecorationSet.create(state.doc, decorations);
18086
18139
  },
18087
18140
  apply(tr, oldDecorationSet, oldState, newState) {
18141
+ if (!tr.docChanged) return oldDecorationSet;
18088
18142
  const decorations = getTabDecorations(newState, view);
18089
18143
  return DecorationSet.create(newState.doc, decorations);
18090
18144
  }
@@ -22420,6 +22474,7 @@ const ImagePositionPlugin = ({ editor }) => {
22420
22474
  return DecorationSet.empty;
22421
22475
  },
22422
22476
  apply(tr, oldDecorationSet, oldState, newState) {
22477
+ if (!tr.docChanged) return oldDecorationSet;
22423
22478
  const decorations = getImagePositionDecorations(newState, view);
22424
22479
  return DecorationSet.create(newState.doc, decorations);
22425
22480
  }
@@ -1,6 +1,6 @@
1
1
  import { computed, createElementBlock, openBlock, createElementVNode, createCommentVNode, normalizeClass, normalizeStyle, ref, withKeys, unref, withModifiers, createBlock, toDisplayString, withDirectives, vModelText, getCurrentInstance, createVNode, readonly, watch, onMounted, onBeforeUnmount, reactive, onBeforeMount, inject, onActivated, onDeactivated, createTextVNode, Fragment, Comment, defineComponent, provide, h, Teleport, toRef, nextTick, renderSlot, isVNode, shallowRef, watchEffect, mergeProps, Transition, vShow, cloneVNode, Text, renderList, withCtx } from "vue";
2
- import { x as process$1 } from "./converter-DifQiKXL.js";
3
- import { _ as _export_sfc, u as useHighContrastMode, g as global$1 } from "./editor-Cu6WivrX.js";
2
+ import { x as process$1 } from "./converter-DOyDZC9F.js";
3
+ import { _ as _export_sfc, u as useHighContrastMode, g as global$1 } from "./editor-Dz35c20r.js";
4
4
  const sanitizeNumber = (value, defaultNumber) => {
5
5
  let sanitized = value.replace(/[^0-9.]/g, "");
6
6
  sanitized = parseFloat(sanitized);
@@ -1,4 +1,4 @@
1
- import { O } from "./chunks/converter-DifQiKXL.js";
1
+ import { O } from "./chunks/converter-DOyDZC9F.js";
2
2
  export {
3
3
  O as SuperConverter
4
4
  };
@@ -208,6 +208,7 @@ export class Editor extends EventEmitter {
208
208
  onException: () => any;
209
209
  handleImageUpload: any;
210
210
  telemetry: any;
211
+ customUpdatedFiles: {};
211
212
  };
212
213
  setHighContrastMode: (value: any) => void;
213
214
  /**
@@ -432,6 +433,19 @@ export class Editor extends EventEmitter {
432
433
  * @returns {Promise<void>}
433
434
  */
434
435
  replaceFile(newFile: any): Promise<void>;
436
+ /**
437
+ * Get internal docx file content
438
+ * @param {string} name - File name
439
+ * @param {string} type - type of result (json, string)
440
+ * @returns {Object|String} - file content
441
+ */
442
+ getInternalXmlFile(name: string, type?: string): any | string;
443
+ /**
444
+ * Update internal docx file content
445
+ * @param {string} name - File name
446
+ * @param {string} updatedContent - new file content
447
+ */
448
+ updateInternalXmlFile(name: string, updatedContent: string): void;
435
449
  /**
436
450
  * Get all nodes of a specific type
437
451
  * @param {string} type - Node type
@@ -1 +1 @@
1
- {"version":3,"file":"Editor.d.ts","sourceRoot":"","sources":["../../src/core/Editor.js"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Editor.d.ts","sourceRoot":"","sources":["../../src/core/Editor.js"],"names":[],"mappings":"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"}
@@ -1,5 +1,5 @@
1
- import "./chunks/converter-DifQiKXL.js";
2
- import { D } from "./chunks/docx-zipper-0V4s80fa.js";
1
+ import "./chunks/converter-DOyDZC9F.js";
2
+ import { D } from "./chunks/docx-zipper-DZ-zYy-E.js";
3
3
  export {
4
4
  D as default
5
5
  };
@@ -1,6 +1,6 @@
1
- import { E } from "./chunks/editor-Cu6WivrX.js";
2
- import "./chunks/converter-DifQiKXL.js";
3
- import "./chunks/docx-zipper-0V4s80fa.js";
1
+ import { E } from "./chunks/editor-Dz35c20r.js";
2
+ import "./chunks/converter-DOyDZC9F.js";
3
+ import "./chunks/docx-zipper-DZ-zYy-E.js";
4
4
  export {
5
5
  E as Editor
6
6
  };