superdoc 1.0.0-beta.7 → 1.0.0-beta.9

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/{PdfViewer-hAYAlKzI.es.js → PdfViewer-CuFLNmIu.es.js} +1 -1
  2. package/dist/chunks/{PdfViewer-T4fTm1XF.cjs → PdfViewer-IfeBMKsU.cjs} +1 -1
  3. package/dist/chunks/{index-DV613LhK-BY095UD2.es.js → index-BVhSHfFK-4HejWjUD.es.js} +1 -1
  4. package/dist/chunks/{index-DV613LhK-CqFLIBmd.cjs → index-BVhSHfFK-CTmHktSn.cjs} +1 -1
  5. package/dist/chunks/{index-CYQjWGo5.cjs → index-CICIPNZT.cjs} +3 -3
  6. package/dist/chunks/{index-DGYP5Xod.es.js → index-WwpxSzB1.es.js} +3 -3
  7. package/dist/chunks/{super-editor.es-CcaD69pQ.es.js → super-editor.es-BJP3oxNX.es.js} +250 -47
  8. package/dist/chunks/{super-editor.es-DmhQckCV.cjs → super-editor.es-CCq8j_qB.cjs} +250 -47
  9. package/dist/super-editor/ai-writer.es.js +2 -2
  10. package/dist/super-editor/chunks/{converter-BM6gXTRC.js → converter-VnZK3P1W.js} +27 -2
  11. package/dist/super-editor/chunks/{docx-zipper-fwXPJGKu.js → docx-zipper-Bw5zXmBh.js} +1 -1
  12. package/dist/super-editor/chunks/{editor-RPTrfArg.js → editor-CKkHVssy.js} +259 -60
  13. package/dist/super-editor/chunks/{index-DV613LhK.js → index-BVhSHfFK.js} +1 -1
  14. package/dist/super-editor/chunks/{toolbar-DacKXz_n.js → toolbar-DPzMju-T.js} +2 -2
  15. package/dist/super-editor/converter.es.js +1 -1
  16. package/dist/super-editor/docx-zipper.es.js +2 -2
  17. package/dist/super-editor/editor.es.js +3 -3
  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 +2 -2
  24. package/dist/superdoc.es.js +2 -2
  25. package/dist/superdoc.umd.js +252 -49
  26. package/dist/superdoc.umd.js.map +1 -1
  27. package/package.json +1 -1
@@ -19529,18 +19529,43 @@ function encodeMarksFromRPr(runProperties, docx) {
19529
19529
  }
19530
19530
  return marks;
19531
19531
  }
19532
- function encodeCSSFromPPr(paragraphProperties) {
19532
+ function encodeCSSFromPPr(paragraphProperties, hasPreviousParagraph, nextParagraphProps) {
19533
19533
  if (!paragraphProperties || typeof paragraphProperties !== "object") {
19534
19534
  return {};
19535
19535
  }
19536
19536
  let css = {};
19537
19537
  const { spacing, indent, borders, justification } = paragraphProperties;
19538
+ const nextStyleId = nextParagraphProps?.styleId;
19538
19539
  if (spacing) {
19540
+ const getEffectiveBefore = (nextSpacing, isListItem) => {
19541
+ if (!nextSpacing) return 0;
19542
+ if (nextSpacing.beforeAutospacing && isListItem) {
19543
+ return 0;
19544
+ }
19545
+ return nextSpacing.before || 0;
19546
+ };
19539
19547
  const isDropCap = Boolean(paragraphProperties.framePr?.dropCap);
19540
19548
  const spacingCopy = { ...spacing };
19549
+ if (hasPreviousParagraph) {
19550
+ delete spacingCopy.before;
19551
+ }
19541
19552
  if (isDropCap) {
19542
19553
  spacingCopy.line = linesToTwips(1);
19543
19554
  spacingCopy.lineRule = "auto";
19555
+ delete spacingCopy.after;
19556
+ } else {
19557
+ const nextBefore = getEffectiveBefore(
19558
+ nextParagraphProps?.spacing,
19559
+ Boolean(nextParagraphProps?.numberingProperties)
19560
+ );
19561
+ spacingCopy.after = Math.max(spacingCopy.after || 0, nextBefore);
19562
+ if (paragraphProperties.contextualSpacing && nextStyleId != null && nextStyleId === paragraphProperties.styleId) {
19563
+ spacingCopy.after -= paragraphProperties.spacing?.after || 0;
19564
+ }
19565
+ if (nextParagraphProps?.contextualSpacing && nextStyleId != null && nextStyleId === paragraphProperties.styleId) {
19566
+ spacingCopy.after -= nextBefore;
19567
+ }
19568
+ spacingCopy.after = Math.max(spacingCopy.after, 0);
19544
19569
  }
19545
19570
  const spacingStyle = getSpacingStyle(spacingCopy, Boolean(paragraphProperties.numberingProperties));
19546
19571
  css = { ...css, ...spacingStyle };
@@ -35580,7 +35605,7 @@ const _SuperConverter = class _SuperConverter2 {
35580
35605
  static getStoredSuperdocVersion(docx) {
35581
35606
  return _SuperConverter2.getStoredCustomProperty(docx, "SuperdocVersion");
35582
35607
  }
35583
- static setStoredSuperdocVersion(docx = this.convertedXml, version2 = "1.0.0-beta.7") {
35608
+ static setStoredSuperdocVersion(docx = this.convertedXml, version2 = "1.0.0-beta.9") {
35584
35609
  return _SuperConverter2.setStoredCustomProperty(docx, "SuperdocVersion", version2, false);
35585
35610
  }
35586
35611
  /**
@@ -38780,7 +38805,7 @@ var __privateGet$1 = (obj, member, getter) => (__accessCheck$1(obj, member, "rea
38780
38805
  var __privateAdd$1 = (obj, member, value) => member.has(obj) ? __typeError$1("Cannot add the same private member more than once") : member instanceof WeakSet ? member.add(obj) : member.set(obj, value);
38781
38806
  var __privateSet = (obj, member, value, setter) => (__accessCheck$1(obj, member, "write to private field"), member.set(obj, value), value);
38782
38807
  var __privateMethod$1 = (obj, member, method) => (__accessCheck$1(obj, member, "access private method"), method);
38783
- var _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, _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, _instances, _options, _editor3, _visibleHost, _viewportHost, _painterHost, _selectionOverlay, _hiddenHost, _layoutOptions, _layoutState, _domPainter, _layoutError, _layoutErrorState, _errorBanner, _errorBannerMessage, _telemetryEmitter, _renderScheduled, _pendingDocChange, _isRerendering, _selectionUpdateScheduled, _remoteCursorUpdateScheduled, _rafHandle, _editorListeners, _sectionMetadata, _documentMode, _inputBridge, _trackedChangesMode, _trackedChangesEnabled, _trackedChangesOverrides, _headerFooterManager, _headerFooterAdapter, _headerFooterIdentifier, _headerLayoutResults, _footerLayoutResults, _headerDecorationProvider, _footerDecorationProvider, _headerFooterManagerCleanups, _headerRegions, _footerRegions, _session, _activeHeaderFooterEditor, _hoverOverlay, _hoverTooltip, _modeBanner, _ariaLiveRegion, _hoverRegion, _clickCount, _lastClickTime, _lastClickPosition, _remoteCursorState, _remoteCursorDirty, _remoteCursorOverlay, _localSelectionLayer, _awarenessCleanup, _scrollCleanup, _remoteCursorRafHandle, _scrollTimeout, _PresentationEditor_instances, aggregateLayoutBounds_fn, safeCleanup_fn, setupEditorListeners_fn, setupCollaborationCursors_fn, normalizeAwarenessStates_fn, getFallbackColor_fn, getValidatedColor_fn, scheduleRemoteCursorUpdate_fn, scheduleRemoteCursorReRender_fn, updateRemoteCursors_fn, renderRemoteCursors_fn, renderRemoteCaret_fn, renderRemoteCursorLabel_fn, renderRemoteSelection_fn, setupPointerHandlers_fn, setupInputBridge_fn, initHeaderFooterRegistry_fn, _handlePointerDown, getFirstTextPosition_fn, registerPointerClick_fn, selectWordAt_fn, selectParagraphAt_fn, isWordCharacter_fn, _handlePointerMove, _handlePointerLeave, _handleDoubleClick, _handleKeyDown, focusHeaderFooterShortcut_fn, scheduleRerender_fn, flushRerenderQueue_fn, rerender_fn, ensurePainter_fn, scheduleSelectionUpdate_fn, updateSelection_fn, resolveLayoutOptions_fn, buildHeaderFooterInput_fn, computeHeaderFooterConstraints_fn, updateDecorationProviders_fn, createDecorationProvider_fn, computeDecorationBox_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, validateHeaderFooterEditPermission_fn, emitHeaderFooterEditBlocked_fn, resolveDescriptorForRegion_fn, getBodyPageHeight_fn, getHeaderFooterPageHeight_fn, renderSelectionRects_fn, renderHoverRegion_fn, clearHoverRegion_fn, renderCaretOverlay_fn, getHeaderFooterContext_fn, computeHeaderFooterSelectionRects_fn, computeHeaderFooterCaretRect_fn, syncTrackedChangesPreferences_fn, deriveTrackedChangesMode_fn, deriveTrackedChangesEnabled_fn, getTrackChangesPluginState_fn, computeDefaultLayoutDefaults_fn, parseColumns_fn, inchesToPx_fn, applyZoom_fn, createLayoutMetrics_fn, convertPageLocalToOverlayCoords_fn, normalizeClientPoint_fn, computeCaretLayoutRect_fn, findLineContainingPos_fn, lineHeightBeforeIndex_fn, getCurrentPageIndex_fn, findRegionForPage_fn, handleLayoutError_fn, decorateError_fn, showLayoutErrorBanner_fn, dismissErrorBanner_fn, createHiddenHost_fn, _windowRoot, _layoutSurfaces, _getTargetDom, _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, _DocumentSectionView_instances, init_fn2, addToolTip_fn, _ParagraphNodeView_instances, updateHTMLAttributes_fn, updateDOMStyles_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;
38808
+ var _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, _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, _instances, _options, _editor3, _visibleHost, _viewportHost, _painterHost, _selectionOverlay, _hiddenHost, _layoutOptions, _layoutState, _domPainter, _layoutError, _layoutErrorState, _errorBanner, _errorBannerMessage, _telemetryEmitter, _renderScheduled, _pendingDocChange, _isRerendering, _selectionUpdateScheduled, _remoteCursorUpdateScheduled, _rafHandle, _editorListeners, _sectionMetadata, _documentMode, _inputBridge, _trackedChangesMode, _trackedChangesEnabled, _trackedChangesOverrides, _headerFooterManager, _headerFooterAdapter, _headerFooterIdentifier, _headerLayoutResults, _footerLayoutResults, _headerDecorationProvider, _footerDecorationProvider, _headerFooterManagerCleanups, _headerRegions, _footerRegions, _session, _activeHeaderFooterEditor, _hoverOverlay, _hoverTooltip, _modeBanner, _ariaLiveRegion, _hoverRegion, _clickCount, _lastClickTime, _lastClickPosition, _remoteCursorState, _remoteCursorDirty, _remoteCursorOverlay, _localSelectionLayer, _awarenessCleanup, _scrollCleanup, _remoteCursorRafHandle, _scrollTimeout, _PresentationEditor_instances, aggregateLayoutBounds_fn, safeCleanup_fn, setupEditorListeners_fn, setupCollaborationCursors_fn, normalizeAwarenessStates_fn, getFallbackColor_fn, getValidatedColor_fn, scheduleRemoteCursorUpdate_fn, scheduleRemoteCursorReRender_fn, updateRemoteCursors_fn, renderRemoteCursors_fn, renderRemoteCaret_fn, renderRemoteCursorLabel_fn, renderRemoteSelection_fn, setupPointerHandlers_fn, setupInputBridge_fn, initHeaderFooterRegistry_fn, _handlePointerDown, getFirstTextPosition_fn, registerPointerClick_fn, selectWordAt_fn, selectParagraphAt_fn, isWordCharacter_fn, _handlePointerMove, _handlePointerLeave, _handleDoubleClick, _handleKeyDown, focusHeaderFooterShortcut_fn, scheduleRerender_fn, flushRerenderQueue_fn, rerender_fn, ensurePainter_fn, scheduleSelectionUpdate_fn, updateSelection_fn, resolveLayoutOptions_fn, buildHeaderFooterInput_fn, computeHeaderFooterConstraints_fn, updateDecorationProviders_fn, createDecorationProvider_fn, computeDecorationBox_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, validateHeaderFooterEditPermission_fn, emitHeaderFooterEditBlocked_fn, resolveDescriptorForRegion_fn, getBodyPageHeight_fn, getHeaderFooterPageHeight_fn, renderSelectionRects_fn, renderHoverRegion_fn, clearHoverRegion_fn, renderCaretOverlay_fn, getHeaderFooterContext_fn, computeHeaderFooterSelectionRects_fn, computeHeaderFooterCaretRect_fn, syncTrackedChangesPreferences_fn, deriveTrackedChangesMode_fn, deriveTrackedChangesEnabled_fn, getTrackChangesPluginState_fn, computeDefaultLayoutDefaults_fn, parseColumns_fn, inchesToPx_fn, applyZoom_fn, createLayoutMetrics_fn, convertPageLocalToOverlayCoords_fn, normalizeClientPoint_fn, computeCaretLayoutRect_fn, findLineContainingPos_fn, lineHeightBeforeIndex_fn, getCurrentPageIndex_fn, findRegionForPage_fn, handleLayoutError_fn, decorateError_fn, showLayoutErrorBanner_fn, dismissErrorBanner_fn, createHiddenHost_fn, _windowRoot, _layoutSurfaces, _getTargetDom, _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, _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;
38784
38809
  var GOOD_LEAF_SIZE = 200;
38785
38810
  var RopeSequence = function RopeSequence2() {
38786
38811
  };
@@ -52287,7 +52312,7 @@ const isHeadless = (editor) => {
52287
52312
  const shouldSkipNodeView = (editor) => {
52288
52313
  return isHeadless(editor);
52289
52314
  };
52290
- const summaryVersion = "1.0.0-beta.7";
52315
+ const summaryVersion = "1.0.0-beta.9";
52291
52316
  const nodeKeys = ["group", "content", "marks", "inline", "atom", "defining", "code", "tableRole", "summary"];
52292
52317
  const markKeys = ["group", "inclusive", "excludes", "spanning", "code"];
52293
52318
  function mapAttributes(attrs) {
@@ -53066,7 +53091,7 @@ const _Editor = class _Editor2 extends EventEmitter$1 {
53066
53091
  { default: remarkStringify },
53067
53092
  { default: remarkGfm }
53068
53093
  ] = await Promise.all([
53069
- Promise.resolve().then(() => require("./index-DV613LhK-CqFLIBmd.cjs")),
53094
+ Promise.resolve().then(() => require("./index-BVhSHfFK-CTmHktSn.cjs")),
53070
53095
  Promise.resolve().then(() => require("./index-DRCvimau-H4Ck3S9a.cjs")),
53071
53096
  Promise.resolve().then(() => require("./index-C_x_N6Uh-Db3CUJMX.cjs")),
53072
53097
  Promise.resolve().then(() => require("./index-D_sWOSiG-BtDZzJ6I.cjs")),
@@ -53271,7 +53296,7 @@ const _Editor = class _Editor2 extends EventEmitter$1 {
53271
53296
  * Process collaboration migrations
53272
53297
  */
53273
53298
  processCollaborationMigrations() {
53274
- console.debug("[checkVersionMigrations] Current editor version", "1.0.0-beta.7");
53299
+ console.debug("[checkVersionMigrations] Current editor version", "1.0.0-beta.9");
53275
53300
  if (!this.options.ydoc) return;
53276
53301
  const metaMap = this.options.ydoc.getMap("meta");
53277
53302
  let docVersion = metaMap.get("version");
@@ -56823,8 +56848,6 @@ function calculateTabWidth(params2) {
56823
56848
  const beforeWidth = measureText2 ? measureText2(before) : 0;
56824
56849
  width -= beforeWidth;
56825
56850
  }
56826
- } else if (alignment2 === "bar") {
56827
- width = 0;
56828
56851
  }
56829
56852
  if (width < 1) {
56830
56853
  return fallbackWidth();
@@ -61867,14 +61890,14 @@ function measureRunSliceWidth(run2, fromChar, toChar) {
61867
61890
  return metrics.width;
61868
61891
  }
61869
61892
  function lineHeightForRuns(runs, fromRun, toRun) {
61870
- let maxSize = 0;
61893
+ let maxSize2 = 0;
61871
61894
  for (let i = fromRun; i <= toRun; i += 1) {
61872
61895
  const run2 = runs[i];
61873
61896
  const textRun = run2 && isTextRun(run2) ? run2 : null;
61874
61897
  const size2 = textRun?.fontSize ?? 16;
61875
- if (size2 > maxSize) maxSize = size2;
61898
+ if (size2 > maxSize2) maxSize2 = size2;
61876
61899
  }
61877
- return maxSize * 1.2;
61900
+ return maxSize2 * 1.2;
61878
61901
  }
61879
61902
  function remeasureParagraph(block, maxWidth) {
61880
61903
  const runs = block.runs ?? [];
@@ -67477,6 +67500,45 @@ function normalizeRotation(rotation) {
67477
67500
  function degToRad(degrees) {
67478
67501
  return degrees * Math.PI / 180;
67479
67502
  }
67503
+ const defaultMaxSize = 5e3;
67504
+ let maxSize = defaultMaxSize;
67505
+ const cache$1 = /* @__PURE__ */ new Map();
67506
+ const makeKey = (text, font, letterSpacing) => {
67507
+ return `${text}|${font}|${letterSpacing || 0}`;
67508
+ };
67509
+ function getMeasuredTextWidth(text, font, letterSpacing, ctx2) {
67510
+ if (text.length > 32e3) {
67511
+ text = text.substring(0, 32e3);
67512
+ }
67513
+ const key2 = makeKey(text, font, letterSpacing);
67514
+ const hit = cache$1.get(key2);
67515
+ if (hit !== void 0) {
67516
+ cache$1.delete(key2);
67517
+ cache$1.set(key2, hit);
67518
+ return hit.width;
67519
+ }
67520
+ try {
67521
+ ctx2.font = font;
67522
+ const metrics = ctx2.measureText(text);
67523
+ const advanceWidth = metrics.width;
67524
+ const paintedWidth = (metrics.actualBoundingBoxLeft || 0) + (metrics.actualBoundingBoxRight || 0);
67525
+ const baseWidth = Math.max(advanceWidth, paintedWidth);
67526
+ const extra = letterSpacing ? Math.max(0, text.length - 1) * letterSpacing : 0;
67527
+ const width = baseWidth + extra;
67528
+ cache$1.set(key2, { width });
67529
+ evictIfNeeded();
67530
+ return width;
67531
+ } catch {
67532
+ return 0;
67533
+ }
67534
+ }
67535
+ function evictIfNeeded() {
67536
+ while (cache$1.size > maxSize) {
67537
+ const oldestKey = cache$1.keys().next().value;
67538
+ if (oldestKey === void 0) break;
67539
+ cache$1.delete(oldestKey);
67540
+ }
67541
+ }
67480
67542
  const { computeTabStops } = Engines;
67481
67543
  let canvasContext = null;
67482
67544
  const DEFAULT_TAB_INTERVAL_TWIPS = 720;
@@ -67521,8 +67583,7 @@ function measureText(text, font, ctx2, _fontFamily, _letterSpacing) {
67521
67583
  const metrics = ctx2.measureText(text);
67522
67584
  const advanceWidth = metrics.width;
67523
67585
  const paintedWidth = (metrics.actualBoundingBoxLeft || 0) + (metrics.actualBoundingBoxRight || 0);
67524
- const baseWidth = Math.max(advanceWidth, paintedWidth);
67525
- return baseWidth;
67586
+ return Math.max(advanceWidth, paintedWidth);
67526
67587
  }
67527
67588
  const MIN_SINGLE_LINE_PX = 12 * 96 / 72;
67528
67589
  function calculateTypographyMetrics(fontSize2, spacing) {
@@ -68103,13 +68164,9 @@ const getPrimaryRun = (paragraph) => {
68103
68164
  };
68104
68165
  };
68105
68166
  const measureRunWidth = (text, font, ctx2, run2) => {
68106
- const baseWidth = measureText(text, font, ctx2);
68107
- const letterSpacing = run2.kind !== "tab" ? run2.letterSpacing : void 0;
68108
- if (!letterSpacing) {
68109
- return baseWidth;
68110
- }
68111
- const extra = Math.max(0, text.length - 1) * letterSpacing;
68112
- return roundValue(baseWidth + extra);
68167
+ const letterSpacing = run2.kind !== "tab" ? run2.letterSpacing || 0 : 0;
68168
+ const width = getMeasuredTextWidth(text, font, letterSpacing, ctx2);
68169
+ return roundValue(width);
68113
68170
  };
68114
68171
  const appendSegment = (segments, runIndex, fromChar, toChar, width, x2) => {
68115
68172
  if (!segments) return;
@@ -74858,7 +74915,7 @@ function calculateTabStyle(nodeSize2, view, pos, blockParent2, paragraphContext,
74858
74915
  const tabHeight = paragraphContext.tabHeight;
74859
74916
  paragraphContext.accumulatedTabWidth = accumulatedTabWidth + tabWidth;
74860
74917
  return `width: ${tabWidth}px; height: ${tabHeight}; ${extraStyles}`;
74861
- } catch (error) {
74918
+ } catch {
74862
74919
  return null;
74863
74920
  }
74864
74921
  }
@@ -75050,6 +75107,7 @@ function calcTabHeight(blockParent2) {
75050
75107
  const fontSize2 = parseInt(parentTextStyleMark?.attrs.fontSize) * ptToPxRatio || defaultFontSize;
75051
75108
  return `${fontSize2 * defaultLineHeight}px`;
75052
75109
  }
75110
+ const nodeViewMap = /* @__PURE__ */ new WeakMap();
75053
75111
  class ParagraphNodeView {
75054
75112
  /**
75055
75113
  * @param {import('prosemirror-model').Node} node Current paragraph node.
@@ -75066,6 +75124,8 @@ class ParagraphNodeView {
75066
75124
  this.decorations = decorations;
75067
75125
  this.extensionAttrs = extensionAttrs;
75068
75126
  this._animationFrameRequest = null;
75127
+ this.surroundingContext = {};
75128
+ nodeViewMap.set(this.node, this);
75069
75129
  calculateResolvedParagraphProperties(this.editor, this.node, this.editor.state.doc.resolve(this.getPos()));
75070
75130
  this.dom = document.createElement("p");
75071
75131
  this.contentDOM = document.createElement("span");
@@ -75085,18 +75145,26 @@ class ParagraphNodeView {
75085
75145
  /**
75086
75146
  * @param {import('prosemirror-model').Node} node
75087
75147
  * @param {import('prosemirror-view').Decoration[]} decorations
75148
+ * @param {import('prosemirror-view').Decoration[]} innerDecorations
75149
+ * @param {boolean} [forceUpdate=false]
75150
+ * @returns {boolean}
75088
75151
  */
75089
- update(node, decorations) {
75152
+ update(node, decorations, innerDecorations, forceUpdate = false) {
75153
+ if (nodeViewMap.get(this.node) === this) {
75154
+ nodeViewMap.delete(this.node);
75155
+ }
75156
+ const oldProps = getResolvedParagraphProperties(this.node);
75090
75157
  const oldAttrs = this.node.attrs;
75091
- const newAttrs = node.attrs;
75092
75158
  this.node = node;
75093
75159
  this.decorations = decorations;
75094
- if (JSON.stringify(oldAttrs) === JSON.stringify(newAttrs)) {
75160
+ this.innerDecorations = innerDecorations;
75161
+ nodeViewMap.set(this.node, this);
75162
+ if (!forceUpdate && !__privateMethod$1(this, _ParagraphNodeView_instances, checkShouldUpdate_fn).call(this, oldProps, oldAttrs, this.surroundingContext)) {
75095
75163
  return true;
75096
75164
  }
75097
75165
  calculateResolvedParagraphProperties(this.editor, this.node, this.editor.state.doc.resolve(this.getPos()));
75098
75166
  __privateMethod$1(this, _ParagraphNodeView_instances, updateHTMLAttributes_fn).call(this);
75099
- __privateMethod$1(this, _ParagraphNodeView_instances, updateDOMStyles_fn).call(this);
75167
+ __privateMethod$1(this, _ParagraphNodeView_instances, updateDOMStyles_fn).call(this, oldProps);
75100
75168
  if (!__privateMethod$1(this, _ParagraphNodeView_instances, checkIsList_fn).call(this)) {
75101
75169
  __privateMethod$1(this, _ParagraphNodeView_instances, removeList_fn).call(this);
75102
75170
  return true;
@@ -75139,9 +75207,16 @@ class ParagraphNodeView {
75139
75207
  }
75140
75208
  destroy() {
75141
75209
  __privateMethod$1(this, _ParagraphNodeView_instances, cancelScheduledAnimation_fn).call(this);
75210
+ if (nodeViewMap.get(this.node) === this) {
75211
+ nodeViewMap.delete(this.node);
75212
+ }
75142
75213
  }
75143
75214
  }
75144
75215
  _ParagraphNodeView_instances = /* @__PURE__ */ new WeakSet();
75216
+ checkShouldUpdate_fn = function(oldProps, oldAttrs, oldSurroundingContext) {
75217
+ __privateMethod$1(this, _ParagraphNodeView_instances, resolveNeighborParagraphProperties_fn).call(this);
75218
+ return JSON.stringify(oldAttrs) !== JSON.stringify(this.node.attrs) || JSON.stringify(oldProps) !== JSON.stringify(getResolvedParagraphProperties(this.node)) || JSON.stringify(oldSurroundingContext) !== JSON.stringify(this.surroundingContext);
75219
+ };
75145
75220
  updateHTMLAttributes_fn = function() {
75146
75221
  const htmlAttributes = Attribute2.getAttributesToRender(this.node, this.extensionAttrs);
75147
75222
  htmlAttributes.style = htmlAttributes.style || "";
@@ -75169,13 +75244,62 @@ updateHTMLAttributes_fn = function() {
75169
75244
  this.dom.setAttribute("styleid", paragraphProperties.styleId);
75170
75245
  }
75171
75246
  };
75172
- updateDOMStyles_fn = function() {
75247
+ updateDOMStyles_fn = function(oldParagraphProperties = null) {
75173
75248
  this.dom.style.cssText = "";
75174
75249
  const paragraphProperties = getResolvedParagraphProperties(this.node);
75175
- const style2 = encodeCSSFromPPr(paragraphProperties);
75250
+ __privateMethod$1(this, _ParagraphNodeView_instances, resolveNeighborParagraphProperties_fn).call(this);
75251
+ const style2 = encodeCSSFromPPr(
75252
+ paragraphProperties,
75253
+ this.surroundingContext.hasPreviousParagraph,
75254
+ this.surroundingContext.nextParagraphProps
75255
+ );
75176
75256
  Object.entries(style2).forEach(([k2, v2]) => {
75177
75257
  this.dom.style[k2] = v2;
75178
75258
  });
75259
+ if (JSON.stringify(paragraphProperties.spacing) !== JSON.stringify(oldParagraphProperties?.spacing) || paragraphProperties.styleId !== oldParagraphProperties?.styleId || paragraphProperties.contextualSpacing !== oldParagraphProperties?.contextualSpacing) {
75260
+ const previousNodeView = this.surroundingContext.previousParagraph ? nodeViewMap.get(this.surroundingContext.previousParagraph) : null;
75261
+ if (previousNodeView) {
75262
+ try {
75263
+ previousNodeView.getPos();
75264
+ } catch {
75265
+ return;
75266
+ }
75267
+ previousNodeView.update(
75268
+ previousNodeView.node,
75269
+ previousNodeView.decorations,
75270
+ previousNodeView.innerDecorations,
75271
+ true
75272
+ );
75273
+ }
75274
+ }
75275
+ };
75276
+ resolveNeighborParagraphProperties_fn = function() {
75277
+ const $pos = this.editor.state.doc.resolve(this.getPos());
75278
+ const parent = $pos.parent;
75279
+ const index2 = $pos.index();
75280
+ let hasPreviousParagraph = false;
75281
+ let previousParagraph = null;
75282
+ let nextParagraphProps = null;
75283
+ if (index2 > 0) {
75284
+ const previousNode = parent.child(index2 - 1);
75285
+ hasPreviousParagraph = previousNode.type.name === "paragraph" && !getResolvedParagraphProperties(previousNode)?.framePr?.dropCap;
75286
+ if (hasPreviousParagraph) {
75287
+ previousParagraph = previousNode;
75288
+ }
75289
+ }
75290
+ if (parent) {
75291
+ if (index2 < parent.childCount - 1) {
75292
+ const nextNode = parent.child(index2 + 1);
75293
+ if (nextNode.type.name === "paragraph") {
75294
+ nextParagraphProps = getResolvedParagraphProperties(nextNode);
75295
+ }
75296
+ }
75297
+ }
75298
+ this.surroundingContext = {
75299
+ hasPreviousParagraph,
75300
+ previousParagraph,
75301
+ nextParagraphProps
75302
+ };
75179
75303
  };
75180
75304
  updateListStyles_fn = function() {
75181
75305
  let { suffix: suffix2, justification } = this.node.attrs.listRendering;
@@ -75952,6 +76076,19 @@ const CommentsMark = Mark2.create({
75952
76076
  return [CommentMarkName, Attribute2.mergeAttributes(this.options.htmlAttributes, htmlAttributes)];
75953
76077
  }
75954
76078
  });
76079
+ let cache$2 = /* @__PURE__ */ new WeakMap();
76080
+ function getParagraphContext(paragraph, startPos, helpers2, revision, compute) {
76081
+ const cached = cache$2.get(paragraph);
76082
+ if (cached && cached.revision === revision) {
76083
+ return cached.context;
76084
+ }
76085
+ const context = compute(paragraph, startPos, helpers2);
76086
+ cache$2.set(paragraph, { revision, context });
76087
+ return context;
76088
+ }
76089
+ function clearAllParagraphContexts() {
76090
+ cache$2 = /* @__PURE__ */ new WeakMap();
76091
+ }
75955
76092
  const leaderStyles = {
75956
76093
  dot: "border-bottom: 1px dotted black;",
75957
76094
  heavy: "border-bottom: 2px solid black;",
@@ -75968,6 +76105,14 @@ function createLayoutRequest(doc2, paragraphPos, view, helpers2, revision, parag
75968
76105
  if (!paragraphContext) return null;
75969
76106
  const paragraphId = paragraphIdFromPos(paragraphContext.startPos);
75970
76107
  const paragraphNode = paragraphContext.paragraph;
76108
+ const cachedContext = getParagraphContext(
76109
+ paragraphNode,
76110
+ paragraphContext.startPos,
76111
+ helpers2,
76112
+ revision,
76113
+ () => extractParagraphContext(paragraphNode, paragraphContext.startPos, helpers2, paragraphContext.paragraphDepth)
76114
+ );
76115
+ const effectiveContext = cachedContext || paragraphContext;
75971
76116
  const { entries } = flattenParagraph(paragraphNode, paragraphContext.startPos);
75972
76117
  const spans = [];
75973
76118
  let tabIndex = 0;
@@ -75995,13 +76140,13 @@ function createLayoutRequest(doc2, paragraphPos, view, helpers2, revision, parag
75995
76140
  });
75996
76141
  }
75997
76142
  });
75998
- const tabStops = Array.isArray(paragraphContext.tabStops) ? [...paragraphContext.tabStops] : [];
75999
- const hangingPx = twipsToPixels(Number(paragraphContext.indent?.hanging) || 0);
76000
- if (hangingPx > 0 && paragraphContext.indentWidth != null) {
76001
- tabStops.unshift({ val: "start", pos: paragraphContext.indentWidth + hangingPx, leader: "none" });
76143
+ const tabStops = Array.isArray(effectiveContext.tabStops) ? [...effectiveContext.tabStops] : [];
76144
+ const hangingPx = twipsToPixels(Number(effectiveContext.indent?.hanging) || 0);
76145
+ if (hangingPx > 0 && effectiveContext.indentWidth != null) {
76146
+ tabStops.unshift({ val: "start", pos: effectiveContext.indentWidth + hangingPx, leader: "none" });
76002
76147
  }
76003
- const paragraphWidth = getBlockNodeWidth(view, paragraphContext.startPos) ?? defaultLineLength;
76004
- const indentWidth = paragraphContext.indentWidth ?? getIndentWidth(view, paragraphContext.startPos, paragraphContext.indent);
76148
+ const paragraphWidth = getBlockNodeWidth(view, effectiveContext.startPos) ?? defaultLineLength;
76149
+ const indentWidth = effectiveContext.indentWidth ?? getIndentWidth(view, effectiveContext.startPos, effectiveContext.indent);
76005
76150
  return {
76006
76151
  paragraphId,
76007
76152
  revision,
@@ -76009,9 +76154,9 @@ function createLayoutRequest(doc2, paragraphPos, view, helpers2, revision, parag
76009
76154
  defaultTabDistance,
76010
76155
  defaultLineLength,
76011
76156
  indents: {
76012
- left: twipsToPixels(Number(paragraphContext.indent?.left) || 0),
76013
- right: twipsToPixels(Number(paragraphContext.indent?.right) || 0),
76014
- firstLine: twipsToPixels(Number(paragraphContext.indent?.firstLine) || 0),
76157
+ left: twipsToPixels(Number(effectiveContext.indent?.left) || 0),
76158
+ right: twipsToPixels(Number(effectiveContext.indent?.right) || 0),
76159
+ firstLine: twipsToPixels(Number(effectiveContext.indent?.firstLine) || 0),
76015
76160
  hanging: hangingPx
76016
76161
  },
76017
76162
  tabStops,
@@ -76176,31 +76321,58 @@ const TabNode = Node$1.create({
76176
76321
  key: new PluginKey("tabPlugin"),
76177
76322
  state: {
76178
76323
  init() {
76179
- return { decorations: false, revision: 0 };
76324
+ const initialDecorations = buildInitialDecorations(view.state.doc, view, helpers2, 0);
76325
+ return { decorations: initialDecorations, revision: 0 };
76180
76326
  },
76181
76327
  apply(tr, { decorations, revision }, _oldState, newState) {
76182
- if (!decorations) {
76183
- const newDecorations2 = buildDecorations(newState.doc, view, helpers2, 0);
76184
- return { decorations: newDecorations2, revision: 0 };
76185
- }
76328
+ const currentDecorations = decorations && decorations.map ? decorations.map(tr.mapping, tr.doc) : DecorationSet.empty;
76186
76329
  if (!tr.docChanged || tr.getMeta("blockNodeInitialUpdate")) {
76187
- return { decorations, revision };
76188
- }
76189
- const nextRevision = revision + 1;
76190
- const newDecorations = buildDecorations(newState.doc, view, helpers2, nextRevision);
76191
- return { decorations: newDecorations, revision: nextRevision };
76330
+ return { decorations: currentDecorations, revision };
76331
+ }
76332
+ const affectedParagraphs = getAffectedParagraphStarts(tr, newState);
76333
+ if (affectedParagraphs.size === 0) {
76334
+ return { decorations: currentDecorations, revision };
76335
+ }
76336
+ let nextDecorations = currentDecorations;
76337
+ affectedParagraphs.forEach((pos) => {
76338
+ const paragraph = newState.doc.nodeAt(pos);
76339
+ if (!paragraph || paragraph.type.name !== "paragraph") return;
76340
+ const from2 = pos;
76341
+ const to = pos + paragraph.nodeSize;
76342
+ const existing = nextDecorations.find(from2, to);
76343
+ if (existing?.length) {
76344
+ nextDecorations = nextDecorations.remove(existing);
76345
+ }
76346
+ const paragraphDecorations = buildParagraphDecorations(
76347
+ newState.doc,
76348
+ pos + 1,
76349
+ paragraph,
76350
+ view,
76351
+ helpers2,
76352
+ revision + 1
76353
+ );
76354
+ nextDecorations = nextDecorations.add(newState.doc, paragraphDecorations);
76355
+ });
76356
+ return { decorations: nextDecorations, revision: revision + 1 };
76192
76357
  }
76193
76358
  },
76194
76359
  props: {
76195
76360
  decorations(state2) {
76196
76361
  return this.getState(state2).decorations;
76197
76362
  }
76363
+ },
76364
+ view() {
76365
+ return {
76366
+ destroy() {
76367
+ clearAllParagraphContexts();
76368
+ }
76369
+ };
76198
76370
  }
76199
76371
  });
76200
76372
  return [tabPlugin];
76201
76373
  }
76202
76374
  });
76203
- function buildDecorations(doc2, view, helpers2, revision) {
76375
+ function buildInitialDecorations(doc2, view, helpers2, revision) {
76204
76376
  const decorations = [];
76205
76377
  doc2.descendants((node, pos) => {
76206
76378
  if (node.type.name !== "paragraph") return;
@@ -76221,6 +76393,37 @@ function buildDecorations(doc2, view, helpers2, revision) {
76221
76393
  });
76222
76394
  return DecorationSet.create(doc2, decorations);
76223
76395
  }
76396
+ function buildParagraphDecorations(doc2, paragraphContentPos, paragraphNode, view, helpers2, revision) {
76397
+ const request = createLayoutRequest(doc2, paragraphContentPos, view, helpers2, revision);
76398
+ if (!request) return [];
76399
+ const result = calculateTabLayout(request, void 0, view);
76400
+ return applyLayoutResult(result, paragraphNode, paragraphContentPos - 1);
76401
+ }
76402
+ function getAffectedParagraphStarts(tr, newState) {
76403
+ const affected = /* @__PURE__ */ new Set();
76404
+ tr.steps.forEach((step, index2) => {
76405
+ if (step.from == null && step.to == null) return;
76406
+ let fromPos = step.from;
76407
+ let toPos = step.to;
76408
+ if (typeof fromPos !== "number" || typeof toPos !== "number") return;
76409
+ for (let i = index2; i < tr.steps.length; i++) {
76410
+ const stepMap = tr.steps[i].getMap();
76411
+ fromPos = stepMap.map(fromPos, -1);
76412
+ toPos = stepMap.map(toPos, 1);
76413
+ }
76414
+ if (fromPos < 0 || toPos < 0 || fromPos > newState.doc.content.size || toPos > newState.doc.content.size) {
76415
+ return;
76416
+ }
76417
+ newState.doc.nodesBetween(fromPos, toPos, (node, pos) => {
76418
+ if (node.type.name === "paragraph") {
76419
+ affected.add(pos);
76420
+ return false;
76421
+ }
76422
+ return true;
76423
+ });
76424
+ });
76425
+ return affected;
76426
+ }
76224
76427
  const LineBreak = Node$1.create({
76225
76428
  name: "lineBreak",
76226
76429
  group: "inline",
@@ -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-BM6gXTRC.js";
3
- import { _ as _export_sfc } from "./chunks/editor-RPTrfArg.js";
2
+ import { T as TextSelection } from "./chunks/converter-VnZK3P1W.js";
3
+ import { _ as _export_sfc } from "./chunks/editor-CKkHVssy.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 = {}) {
@@ -19518,18 +19518,43 @@ function encodeMarksFromRPr(runProperties, docx) {
19518
19518
  }
19519
19519
  return marks;
19520
19520
  }
19521
- function encodeCSSFromPPr(paragraphProperties) {
19521
+ function encodeCSSFromPPr(paragraphProperties, hasPreviousParagraph, nextParagraphProps) {
19522
19522
  if (!paragraphProperties || typeof paragraphProperties !== "object") {
19523
19523
  return {};
19524
19524
  }
19525
19525
  let css = {};
19526
19526
  const { spacing, indent, borders, justification } = paragraphProperties;
19527
+ const nextStyleId = nextParagraphProps?.styleId;
19527
19528
  if (spacing) {
19529
+ const getEffectiveBefore = (nextSpacing, isListItem) => {
19530
+ if (!nextSpacing) return 0;
19531
+ if (nextSpacing.beforeAutospacing && isListItem) {
19532
+ return 0;
19533
+ }
19534
+ return nextSpacing.before || 0;
19535
+ };
19528
19536
  const isDropCap = Boolean(paragraphProperties.framePr?.dropCap);
19529
19537
  const spacingCopy = { ...spacing };
19538
+ if (hasPreviousParagraph) {
19539
+ delete spacingCopy.before;
19540
+ }
19530
19541
  if (isDropCap) {
19531
19542
  spacingCopy.line = linesToTwips(1);
19532
19543
  spacingCopy.lineRule = "auto";
19544
+ delete spacingCopy.after;
19545
+ } else {
19546
+ const nextBefore = getEffectiveBefore(
19547
+ nextParagraphProps?.spacing,
19548
+ Boolean(nextParagraphProps?.numberingProperties)
19549
+ );
19550
+ spacingCopy.after = Math.max(spacingCopy.after || 0, nextBefore);
19551
+ if (paragraphProperties.contextualSpacing && nextStyleId != null && nextStyleId === paragraphProperties.styleId) {
19552
+ spacingCopy.after -= paragraphProperties.spacing?.after || 0;
19553
+ }
19554
+ if (nextParagraphProps?.contextualSpacing && nextStyleId != null && nextStyleId === paragraphProperties.styleId) {
19555
+ spacingCopy.after -= nextBefore;
19556
+ }
19557
+ spacingCopy.after = Math.max(spacingCopy.after, 0);
19533
19558
  }
19534
19559
  const spacingStyle = getSpacingStyle(spacingCopy, Boolean(paragraphProperties.numberingProperties));
19535
19560
  css = { ...css, ...spacingStyle };
@@ -35844,7 +35869,7 @@ const _SuperConverter = class _SuperConverter {
35844
35869
  static getStoredSuperdocVersion(docx) {
35845
35870
  return _SuperConverter.getStoredCustomProperty(docx, "SuperdocVersion");
35846
35871
  }
35847
- static setStoredSuperdocVersion(docx = this.convertedXml, version = "1.0.0-beta.7") {
35872
+ static setStoredSuperdocVersion(docx = this.convertedXml, version = "1.0.0-beta.9") {
35848
35873
  return _SuperConverter.setStoredCustomProperty(docx, "SuperdocVersion", version, false);
35849
35874
  }
35850
35875
  /**
@@ -1,4 +1,4 @@
1
- import { p as process$1, aI as commonjsGlobal, B as Buffer, aJ as getDefaultExportFromCjs, aK as getContentTypesFromXml, aL as xmljs } from "./converter-BM6gXTRC.js";
1
+ import { p as process$1, aI as commonjsGlobal, B as Buffer, aJ as getDefaultExportFromCjs, aK as getContentTypesFromXml, aL as xmljs } from "./converter-VnZK3P1W.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
  }