@harbour-enterprises/superdoc 0.21.0-RC2 → 0.21.0-next.1

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 (30) hide show
  1. package/README.md +4 -4
  2. package/dist/chunks/{PdfViewer-CbGuPQY8.es.js → PdfViewer-0jdn-cVx.es.js} +1 -1
  3. package/dist/chunks/{PdfViewer-DGbJ8_qc.cjs → PdfViewer-Bn3Lvd0m.cjs} +1 -1
  4. package/dist/chunks/{index-qjntJEk0.es.js → index-BiZcP3bK.es.js} +57 -15
  5. package/dist/chunks/{index-ecl0ZFNw.cjs → index-C0XOj4vH.cjs} +57 -15
  6. package/dist/chunks/{super-editor.es-CS5l-cVZ.cjs → super-editor.es-BWdUsCXq.cjs} +66 -39
  7. package/dist/chunks/{super-editor.es-BF_Xaucb.es.js → super-editor.es-DQx0kzCl.es.js} +66 -39
  8. package/dist/core/SuperDoc.d.ts.map +1 -1
  9. package/dist/stores/comments-store.d.ts.map +1 -1
  10. package/dist/style.css +1 -1
  11. package/dist/super-editor/ai-writer.es.js +2 -2
  12. package/dist/super-editor/chunks/{converter-DUqGq6qj.js → converter-DMpIH4c0.js} +40 -24
  13. package/dist/super-editor/chunks/{docx-zipper-CQsQR8Zs.js → docx-zipper-CDrFfcVc.js} +1 -1
  14. package/dist/super-editor/chunks/{editor-gMF6aWiz.js → editor-DrzPfOIy.js} +9 -8
  15. package/dist/super-editor/chunks/{toolbar-BxsT1ZgG.js → toolbar-NxB-WhNb.js} +21 -11
  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/style.css +1 -1
  21. package/dist/super-editor/super-editor.es.js +6 -6
  22. package/dist/super-editor/toolbar.es.js +2 -2
  23. package/dist/super-editor.cjs +1 -1
  24. package/dist/super-editor.es.js +1 -1
  25. package/dist/superdoc.cjs +2 -2
  26. package/dist/superdoc.es.js +2 -2
  27. package/dist/superdoc.umd.js +121 -52
  28. package/dist/superdoc.umd.js.map +1 -1
  29. package/npm-deprecation-notice.cjs +10 -0
  30. package/package.json +11 -6
@@ -24194,6 +24194,18 @@ const baseNumbering = {
24194
24194
  }
24195
24195
  ]
24196
24196
  };
24197
+ const sanitizeDocxMediaName = (value, fallback = "image") => {
24198
+ if (!value) return fallback;
24199
+ const sanitized = value.replace(/[^a-zA-Z0-9_-]/g, "_");
24200
+ return sanitized || fallback;
24201
+ };
24202
+ const getFallbackImageNameFromDataUri = (src = "", fallback = "image") => {
24203
+ if (!src || typeof src !== "string") return fallback;
24204
+ const [prefix] = src.split(";");
24205
+ const [, maybeType] = prefix.split("/");
24206
+ const extension = maybeType?.toLowerCase();
24207
+ return extension ? `${fallback}.${extension}` : fallback;
24208
+ };
24197
24209
  const TranslatorTypes = Object.freeze({
24198
24210
  NODE: "node",
24199
24211
  ATTRIBUTE: "attribute"
@@ -24400,6 +24412,7 @@ const attrConfig$D = Object.freeze({
24400
24412
  const validXmlAttributes$k = [attrConfig$D];
24401
24413
  const XML_NODE_NAME$s = "w:highlight";
24402
24414
  const SD_ATTR_KEY$f = "highlight";
24415
+ const DISABLED_TOKENS = /* @__PURE__ */ new Set(["transparent", "none", "inherit"]);
24403
24416
  const encode$13 = (params, encodedAttrs = {}) => {
24404
24417
  const { nodes } = params;
24405
24418
  const node = nodes?.[0];
@@ -24416,8 +24429,12 @@ const decode$W = (params) => {
24416
24429
  const highlightValue = attrs.highlight ?? attrs.color ?? null;
24417
24430
  if (!highlightValue) return void 0;
24418
24431
  const normalizedValue = String(highlightValue).trim().toLowerCase();
24419
- if (!normalizedValue || normalizedValue === "transparent" || normalizedValue === "none") {
24420
- return void 0;
24432
+ if (!normalizedValue) return void 0;
24433
+ if (DISABLED_TOKENS.has(normalizedValue)) {
24434
+ return {
24435
+ name: XML_NODE_NAME$s,
24436
+ attributes: { "w:val": "none" }
24437
+ };
24421
24438
  }
24422
24439
  const keyword = getDocxHighlightKeywordFromHex(highlightValue);
24423
24440
  if (keyword) {
@@ -28319,18 +28336,6 @@ function handleAnchorNode(params) {
28319
28336
  }
28320
28337
  return handleImageNode(node, params, true);
28321
28338
  }
28322
- const sanitizeDocxMediaName = (value, fallback = "image") => {
28323
- if (!value) return fallback;
28324
- const sanitized = value.replace(/[^a-zA-Z0-9_-]/g, "_");
28325
- return sanitized || fallback;
28326
- };
28327
- const getFallbackImageNameFromDataUri = (src = "", fallback = "image") => {
28328
- if (!src || typeof src !== "string") return fallback;
28329
- const [prefix] = src.split(";");
28330
- const [, maybeType] = prefix.split("/");
28331
- const extension = maybeType?.toLowerCase();
28332
- return extension ? `${fallback}.${extension}` : fallback;
28333
- };
28334
28339
  const translateImageNode = (params) => {
28335
28340
  const {
28336
28341
  node: { attrs = {} },
@@ -31259,13 +31264,21 @@ function translateMark(mark) {
31259
31264
  markElement.name = "w:rStyle";
31260
31265
  markElement.attributes["w:val"] = attrs.styleId;
31261
31266
  break;
31262
- case "color":
31263
- let processedColor = attrs.color.replace(/^#/, "").replace(/;$/, "");
31267
+ case "color": {
31268
+ const rawColor = attrs.color;
31269
+ if (!rawColor) break;
31270
+ const normalized = String(rawColor).trim().toLowerCase();
31271
+ if (normalized === "inherit") {
31272
+ markElement.attributes["w:val"] = "auto";
31273
+ break;
31274
+ }
31275
+ let processedColor = String(rawColor).replace(/^#/, "").replace(/;$/, "");
31264
31276
  if (processedColor.startsWith("rgb")) {
31265
31277
  processedColor = rgbToHex(processedColor);
31266
31278
  }
31267
31279
  markElement.attributes["w:val"] = processedColor;
31268
31280
  break;
31281
+ }
31269
31282
  case "textAlign":
31270
31283
  markElement.attributes["w:val"] = attrs.textAlign;
31271
31284
  break;
@@ -32256,27 +32269,30 @@ function importCommentData({ docx, editor, converter }) {
32256
32269
  trackedChange,
32257
32270
  trackedChangeText,
32258
32271
  trackedChangeType,
32259
- trackedDeletedText
32272
+ trackedDeletedText,
32273
+ isDone: false
32260
32274
  };
32261
32275
  });
32262
32276
  const extendedComments = generateCommentsWithExtendedData({ docx, comments: extractedComments });
32263
32277
  return extendedComments;
32264
32278
  }
32265
32279
  const generateCommentsWithExtendedData = ({ docx, comments }) => {
32280
+ if (!comments?.length) return [];
32266
32281
  const commentsExtended = docx["word/commentsExtended.xml"];
32267
- if (!commentsExtended) return [];
32268
- const { elements: initialElements } = commentsExtended;
32269
- const { elements } = initialElements[0];
32282
+ if (!commentsExtended) return comments.map((comment) => ({ ...comment, isDone: comment.isDone ?? false }));
32283
+ const { elements: initialElements = [] } = commentsExtended;
32284
+ if (!initialElements?.length) return comments.map((comment) => ({ ...comment, isDone: comment.isDone ?? false }));
32285
+ const { elements = [] } = initialElements[0] ?? {};
32270
32286
  const commentEx = elements.filter((el) => el.name === "w15:commentEx");
32271
32287
  return comments.map((comment) => {
32272
32288
  const extendedDef = commentEx.find((ce2) => ce2.attributes["w15:paraId"] === comment.paraId);
32273
- if (!extendedDef) return { ...comment };
32289
+ if (!extendedDef) return { ...comment, isDone: comment.isDone ?? false };
32274
32290
  const { isDone, paraIdParent } = getExtendedDetails(extendedDef);
32275
32291
  let parentComment;
32276
32292
  if (paraIdParent) parentComment = comments.find((c) => c.paraId === paraIdParent);
32277
32293
  const newComment = {
32278
32294
  ...comment,
32279
- isDone,
32295
+ isDone: isDone ?? false,
32280
32296
  parentCommentId: parentComment?.commentId
32281
32297
  };
32282
32298
  return newComment;
@@ -33112,7 +33128,7 @@ const _SuperConverter = class _SuperConverter {
33112
33128
  return;
33113
33129
  }
33114
33130
  }
33115
- static updateDocumentVersion(docx = this.convertedXml, version = "0.21.0-RC2") {
33131
+ static updateDocumentVersion(docx = this.convertedXml, version = "0.20.2") {
33116
33132
  const customLocation = "docProps/custom.xml";
33117
33133
  if (!docx[customLocation]) {
33118
33134
  docx[customLocation] = generateCustomXml();
@@ -33608,7 +33624,7 @@ function storeSuperdocVersion(docx) {
33608
33624
  function generateCustomXml() {
33609
33625
  return DEFAULT_CUSTOM_XML;
33610
33626
  }
33611
- function generateSuperdocVersion(pid = 2, version = "0.21.0-RC2") {
33627
+ function generateSuperdocVersion(pid = 2, version = "0.20.2") {
33612
33628
  return {
33613
33629
  type: "element",
33614
33630
  name: "property",
@@ -1,4 +1,4 @@
1
- import { p as process$1, au as commonjsGlobal, B as Buffer, av as getDefaultExportFromCjs, aw as getContentTypesFromXml, ax as xmljs } from "./converter-DUqGq6qj.js";
1
+ import { p as process$1, au as commonjsGlobal, B as Buffer, av as getDefaultExportFromCjs, aw as getContentTypesFromXml, ax as xmljs } from "./converter-DMpIH4c0.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, _editor, _stateValidators, _xmlValidators, _requiredNodeTypes, _requiredMarkTypes, _SuperValidator_instances, initializeValidators_fn, collectValidatorRequirements_fn, analyzeDocument_fn, _commandService, _Editor_instances, initContainerElement_fn, init_fn, initRichText_fn, onFocus_fn, checkHeadless_fn, registerCopyHandler_fn, insertNewFileData_fn, registerPluginByNameIfNotExists_fn, createExtensionService_fn, createCommandService_fn, createConverter_fn, initMedia_fn, initFonts_fn, createSchema_fn, generatePmData_fn, createView_fn, onCollaborationReady_fn, initComments_fn, initPagination_fn, dispatchTransaction_fn, handleNodeSelection_fn, prepareDocumentForImport_fn, prepareDocumentForExport_fn, endCollaboration_fn, validateDocumentInit_fn, validateDocumentExport_fn, initDevTools_fn, _ListItemNodeView_instances, init_fn2, _FieldAnnotationView_instances, createAnnotation_fn, _AutoPageNumberNodeView_instances, renderDom_fn, scheduleUpdateNodeStyle_fn, _DocumentSectionView_instances, init_fn3, addToolTip_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, 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$1, 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 ReplaceStep, E as NodeRange, G as findWrapping, L as ListHelpers, H as findParentNode, I as isMacOS, J as isIOS, K as getSchemaTypeByName, O as inputRulesPlugin, Q as TrackDeleteMarkName, U as TrackInsertMarkName, V as v4, W as TrackFormatMarkName, X as comments_module_events, Y as findMark, Z as objectIncludes, _ as AddMarkStep, $ as RemoveMarkStep, a0 as twipsToLines, a1 as pixelsToTwips, a2 as helpers, a3 as posToDOMRect, a4 as CommandService, a5 as SuperConverter, a6 as createDocument, a7 as createDocFromMarkdown, a8 as createDocFromHTML, a9 as EditorState, aa as hasSomeParentWithClass, ab as isActive, ac as unflattenListsInHtml, ad as parseSizeUnit, ae as minMax, af as getLineHeightValueString, ag as InputRule, ah as kebabCase, ai as findParentNodeClosestToPos, aj as getListItemStyleDefinitions, ak as docxNumberigHelpers, al as parseIndentElement, am as combineIndents, an as SelectionRange, ao as Transform, ap as isInTable$1, aq as generateDocxRandomId, ar as insertNewRelationship, as as updateDOMAttributes, at as htmlHandler } from "./converter-DUqGq6qj.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$1, 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 ReplaceStep, E as NodeRange, G as findWrapping, L as ListHelpers, H as findParentNode, I as isMacOS, J as isIOS, K as getSchemaTypeByName, O as inputRulesPlugin, Q as TrackDeleteMarkName, U as TrackInsertMarkName, V as v4, W as TrackFormatMarkName, X as comments_module_events, Y as findMark, Z as objectIncludes, _ as AddMarkStep, $ as RemoveMarkStep, a0 as twipsToLines, a1 as pixelsToTwips, a2 as helpers, a3 as posToDOMRect, a4 as CommandService, a5 as SuperConverter, a6 as createDocument, a7 as createDocFromMarkdown, a8 as createDocFromHTML, a9 as EditorState, aa as hasSomeParentWithClass, ab as isActive, ac as unflattenListsInHtml, ad as parseSizeUnit, ae as minMax, af as getLineHeightValueString, ag as InputRule, ah as kebabCase, ai as findParentNodeClosestToPos, aj as getListItemStyleDefinitions, ak as docxNumberigHelpers, al as parseIndentElement, am as combineIndents, an as SelectionRange, ao as Transform, ap as isInTable$1, aq as generateDocxRandomId, ar as insertNewRelationship, as as updateDOMAttributes, at as htmlHandler } from "./converter-DMpIH4c0.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-CQsQR8Zs.js";
17
+ import { D as DocxZipper } from "./docx-zipper-CDrFfcVc.js";
18
18
  var GOOD_LEAF_SIZE = 200;
19
19
  var RopeSequence = function RopeSequence2() {
20
20
  };
@@ -1872,17 +1872,18 @@ class NodeViewDesc extends ViewDesc {
1872
1872
  }
1873
1873
  // Mark this node as being the selected node.
1874
1874
  selectNode() {
1875
- if (this.nodeDOM.nodeType == 1)
1875
+ if (this.nodeDOM.nodeType == 1) {
1876
1876
  this.nodeDOM.classList.add("ProseMirror-selectednode");
1877
- if (this.contentDOM || !this.node.type.spec.draggable)
1878
- this.dom.draggable = true;
1877
+ if (this.contentDOM || !this.node.type.spec.draggable)
1878
+ this.nodeDOM.draggable = true;
1879
+ }
1879
1880
  }
1880
1881
  // Remove selected node marking from this node.
1881
1882
  deselectNode() {
1882
1883
  if (this.nodeDOM.nodeType == 1) {
1883
1884
  this.nodeDOM.classList.remove("ProseMirror-selectednode");
1884
1885
  if (this.contentDOM || !this.node.type.spec.draggable)
1885
- this.dom.removeAttribute("draggable");
1886
+ this.nodeDOM.removeAttribute("draggable");
1886
1887
  }
1887
1888
  }
1888
1889
  get domAtom() {
@@ -3542,7 +3543,7 @@ class MouseDown {
3542
3543
  }
3543
3544
  const target = flushed ? null : event.target;
3544
3545
  const targetDesc = target ? view.docView.nearestDesc(target, true) : null;
3545
- this.target = targetDesc && targetDesc.dom.nodeType == 1 ? targetDesc.dom : null;
3546
+ this.target = targetDesc && targetDesc.nodeDOM.nodeType == 1 ? targetDesc.nodeDOM : null;
3546
3547
  let { selection } = view.state;
3547
3548
  if (event.button == 0 && targetNode.type.spec.draggable && targetNode.type.spec.selectable !== false || selection instanceof NodeSelection && selection.from <= targetPos && selection.to > targetPos)
3548
3549
  this.mightDrag = {
@@ -14849,7 +14850,7 @@ const _Editor = class _Editor extends EventEmitter {
14849
14850
  * @returns {Object | void} Migration results
14850
14851
  */
14851
14852
  processCollaborationMigrations() {
14852
- console.debug("[checkVersionMigrations] Current editor version", "0.21.0-RC2");
14853
+ console.debug("[checkVersionMigrations] Current editor version", "0.20.2");
14853
14854
  if (!this.options.ydoc) return;
14854
14855
  const metaMap = this.options.ydoc.getMap("meta");
14855
14856
  let docVersion = metaMap.get("version");
@@ -1,6 +1,6 @@
1
1
  import { computed, createElementBlock, openBlock, createElementVNode, createCommentVNode, normalizeClass, normalizeStyle, ref, withKeys, unref, withModifiers, createBlock, toDisplayString, withDirectives, vModelText, nextTick, getCurrentInstance, createVNode, readonly, watch, onMounted, onBeforeUnmount, reactive, onBeforeMount, inject, onActivated, onDeactivated, createTextVNode, Fragment, Comment, defineComponent, provide, h, Teleport, toRef, renderSlot, isVNode, shallowRef, watchEffect, mergeProps, Transition, vShow, cloneVNode, Text, renderList, withCtx } from "vue";
2
- import { p as process$1 } from "./converter-DUqGq6qj.js";
3
- import { _ as _export_sfc, u as useHighContrastMode, g as global$1 } from "./editor-gMF6aWiz.js";
2
+ import { p as process$1 } from "./converter-DMpIH4c0.js";
3
+ import { _ as _export_sfc, u as useHighContrastMode, g as global$1 } from "./editor-DrzPfOIy.js";
4
4
  const sanitizeNumber = (value, defaultNumber) => {
5
5
  let sanitized = value.replace(/[^0-9.]/g, "");
6
6
  sanitized = parseFloat(sanitized);
@@ -2483,7 +2483,7 @@ function resolveTo(selector) {
2483
2483
  if (typeof selector === "string") {
2484
2484
  return document.querySelector(selector);
2485
2485
  }
2486
- return selector();
2486
+ return selector() || null;
2487
2487
  }
2488
2488
  const LazyTeleport = defineComponent({
2489
2489
  name: "LazyTeleport",
@@ -2571,8 +2571,11 @@ const oppositeAlignCssPositionProps = {
2571
2571
  };
2572
2572
  const keepOffsetDirection = {
2573
2573
  top: true,
2574
+ // top++
2574
2575
  bottom: false,
2576
+ // top--
2575
2577
  left: true,
2578
+ // left++
2576
2579
  right: false
2577
2580
  // left--
2578
2581
  };
@@ -3689,7 +3692,6 @@ function isFocusable(element) {
3689
3692
  return !!element.href && element.rel !== "ignore";
3690
3693
  case "INPUT":
3691
3694
  return element.type !== "hidden" && element.type !== "file";
3692
- case "BUTTON":
3693
3695
  case "SELECT":
3694
3696
  case "TEXTAREA":
3695
3697
  return true;
@@ -3708,8 +3710,8 @@ const FocusTrap = defineComponent({
3708
3710
  default: true
3709
3711
  },
3710
3712
  onEsc: Function,
3711
- initialFocusTo: String,
3712
- finalFocusTo: String,
3713
+ initialFocusTo: [String, Function],
3714
+ finalFocusTo: [String, Function],
3713
3715
  returnFocusOnDeactivated: {
3714
3716
  type: Boolean,
3715
3717
  default: true
@@ -5807,6 +5809,7 @@ function self$6(vars) {
5807
5809
  });
5808
5810
  }
5809
5811
  const scrollbarLight = {
5812
+ name: "Scrollbar",
5810
5813
  common: derived,
5811
5814
  self: self$6
5812
5815
  };
@@ -7322,11 +7325,14 @@ function self$5(vars) {
7322
7325
  boxShadow: boxShadow2
7323
7326
  });
7324
7327
  }
7325
- const popoverLight = {
7328
+ const popoverLight = createTheme({
7326
7329
  name: "Popover",
7327
7330
  common: derived,
7331
+ peers: {
7332
+ Scrollbar: scrollbarLight
7333
+ },
7328
7334
  self: self$5
7329
- };
7335
+ });
7330
7336
  const oppositePlacement = {
7331
7337
  top: "bottom",
7332
7338
  bottom: "top",
@@ -7546,9 +7552,11 @@ const NPopoverBody = defineComponent({
7546
7552
  const {
7547
7553
  namespaceRef,
7548
7554
  mergedClsPrefixRef,
7549
- inlineThemeDisabled
7555
+ inlineThemeDisabled,
7556
+ mergedRtlRef
7550
7557
  } = useConfig(props);
7551
7558
  const themeRef = useTheme("Popover", "-popover", style$3, popoverLight, props, mergedClsPrefixRef);
7559
+ const rtlEnabledRef = useRtl("Popover", mergedRtlRef, mergedClsPrefixRef);
7552
7560
  const followerRef = ref(null);
7553
7561
  const NPopover2 = inject("NPopover");
7554
7562
  const bodyRef = ref(null);
@@ -7746,6 +7754,8 @@ const NPopoverBody = defineComponent({
7746
7754
  style: props.contentStyle
7747
7755
  }, slots);
7748
7756
  const maybeScrollableBody = props.scrollable ? h(XScrollbar, {
7757
+ themeOverrides: themeRef.value.peerOverrides.Scrollbar,
7758
+ theme: themeRef.value.peers.Scrollbar,
7749
7759
  contentClass: hasHeaderOrFooter ? void 0 : `${mergedClsPrefix}-popover__content ${(_b = props.contentClass) !== null && _b !== void 0 ? _b : ""}`,
7750
7760
  contentStyle: hasHeaderOrFooter ? void 0 : props.contentStyle
7751
7761
  }, {
@@ -7761,7 +7771,7 @@ const NPopoverBody = defineComponent({
7761
7771
  return [maybeScrollableBody, arrow];
7762
7772
  };
7763
7773
  contentNode = h("div", mergeProps({
7764
- class: [`${mergedClsPrefix}-popover`, `${mergedClsPrefix}-popover-shared`, themeClassHandle === null || themeClassHandle === void 0 ? void 0 : themeClassHandle.themeClass.value, extraClass.map((v) => `${mergedClsPrefix}-${v}`), {
7774
+ class: [`${mergedClsPrefix}-popover`, `${mergedClsPrefix}-popover-shared`, (rtlEnabledRef === null || rtlEnabledRef === void 0 ? void 0 : rtlEnabledRef.value) && `${mergedClsPrefix}-popover--rtl`, themeClassHandle === null || themeClassHandle === void 0 ? void 0 : themeClassHandle.themeClass.value, extraClass.map((v) => `${mergedClsPrefix}-${v}`), {
7765
7775
  [`${mergedClsPrefix}-popover--scrollable`]: props.scrollable,
7766
7776
  [`${mergedClsPrefix}-popover--show-header-or-footer`]: hasHeaderOrFooter,
7767
7777
  [`${mergedClsPrefix}-popover--raw`]: props.raw,
@@ -7785,7 +7795,7 @@ const NPopoverBody = defineComponent({
7785
7795
  // The popover class and overlap class must exists, they will be used
7786
7796
  // to place the body & transition animation.
7787
7797
  // Shadow class exists for reuse box-shadow.
7788
- [`${mergedClsPrefix}-popover-shared`, themeClassHandle === null || themeClassHandle === void 0 ? void 0 : themeClassHandle.themeClass.value, props.overlap && `${mergedClsPrefix}-popover-shared--overlap`, props.showArrow && `${mergedClsPrefix}-popover-shared--show-arrow`, props.arrowPointToCenter && `${mergedClsPrefix}-popover-shared--center-arrow`],
7798
+ [`${mergedClsPrefix}-popover-shared`, (rtlEnabledRef === null || rtlEnabledRef === void 0 ? void 0 : rtlEnabledRef.value) && `${mergedClsPrefix}-popover--rtl`, themeClassHandle === null || themeClassHandle === void 0 ? void 0 : themeClassHandle.themeClass.value, props.overlap && `${mergedClsPrefix}-popover-shared--overlap`, props.showArrow && `${mergedClsPrefix}-popover-shared--show-arrow`, props.arrowPointToCenter && `${mergedClsPrefix}-popover-shared--center-arrow`],
7789
7799
  bodyRef,
7790
7800
  styleRef.value,
7791
7801
  handleMouseEnter,
@@ -1,4 +1,4 @@
1
- import { a5 } from "./chunks/converter-DUqGq6qj.js";
1
+ import { a5 } from "./chunks/converter-DMpIH4c0.js";
2
2
  import "vue";
3
3
  export {
4
4
  a5 as SuperConverter
@@ -1,5 +1,5 @@
1
- import "./chunks/converter-DUqGq6qj.js";
2
- import { D } from "./chunks/docx-zipper-CQsQR8Zs.js";
1
+ import "./chunks/converter-DMpIH4c0.js";
2
+ import { D } from "./chunks/docx-zipper-CDrFfcVc.js";
3
3
  export {
4
4
  D as default
5
5
  };
@@ -1,6 +1,6 @@
1
- import { E } from "./chunks/editor-gMF6aWiz.js";
2
- import "./chunks/converter-DUqGq6qj.js";
3
- import "./chunks/docx-zipper-CQsQR8Zs.js";
1
+ import { E } from "./chunks/editor-DrzPfOIy.js";
2
+ import "./chunks/converter-DMpIH4c0.js";
3
+ import "./chunks/docx-zipper-CDrFfcVc.js";
4
4
  export {
5
5
  E as Editor
6
6
  };
@@ -1,4 +1,4 @@
1
- import { J as JSZip } from "./chunks/docx-zipper-CQsQR8Zs.js";
1
+ import { J as JSZip } from "./chunks/docx-zipper-CDrFfcVc.js";
2
2
  async function createZip(blobs, fileNames) {
3
3
  const zip = new JSZip();
4
4
  blobs.forEach((blob, index) => {
@@ -1140,7 +1140,7 @@ on the right if it is inside shape textbox.
1140
1140
  border: 1px solid #629be7;
1141
1141
  border-bottom: none;
1142
1142
  border-radius: 6px 6px 0 0;
1143
- background-color: #629be733;
1143
+ background-color: #629be7dd;
1144
1144
  z-index: 10;
1145
1145
  cursor: grab;
1146
1146
  display: none;
@@ -9,14 +9,14 @@ var __privateGet = (obj, member, getter) => (__accessCheck(obj, member, "read fr
9
9
  var __privateAdd = (obj, member, value) => member.has(obj) ? __typeError("Cannot add the same private member more than once") : member instanceof WeakSet ? member.add(obj) : member.set(obj, value);
10
10
  var __privateMethod = (obj, member, method) => (__accessCheck(obj, member, "access private method"), method);
11
11
  var _SuperToolbar_instances, initToolbarGroups_fn, _interceptedCommands, makeToolbarItems_fn, initDefaultFonts_fn, updateHighlightColors_fn, deactivateAll_fn, updateToolbarHistory_fn, runCommandWithArgumentOnly_fn;
12
- import { av as getDefaultExportFromCjs, V as v4, T as TextSelection$1, v as getMarkRange, ay as vClickOutside, H as findParentNode, az as getActiveFormatting, ap as isInTable, aA as readFromClipboard, aB as handleClipboardPaste, aC as getFileObject, aD as runPropertyTranslators, aE as translator, aF as translator$1, aG as translator$2, aH as translator$3, aI as translator$4, aJ as translator$5, aK as translator$6, aL as translator$7, aM as translator$8, aN as translator$9, aO as translator$a, aP as translator$b, aQ as translator$c, aR as translator$d, aS as translator$e, aT as translator$f, aU as translator$g, aV as translator$h, aW as translator$i, aX as translator$j, aY as translator$k, aZ as translator$l, a_ as translator$m, a$ as translator$n, b0 as translator$o, b1 as translator$p, a as Plugin } from "./chunks/converter-DUqGq6qj.js";
13
- import { b2, a5, i, a2 } from "./chunks/converter-DUqGq6qj.js";
14
- import { _ as _export_sfc, u as useHighContrastMode, a as getQuickFormatList, b as generateLinkedStyleString, c as getFileOpener, d as checkAndProcessImage, r as replaceSelectionWithImagePlaceholder, e as uploadAndInsertImage, y as yUndoPluginKey, f as undoDepth, h as redoDepth, S as SlashMenuPluginKey, E as Editor, i as getStarterExtensions, P as Placeholder, j as getRichTextExtensions, M as Mark, k as Extension, A as Attribute, N as Node } from "./chunks/editor-gMF6aWiz.js";
15
- import { n, C, o, T, l, p, m } from "./chunks/editor-gMF6aWiz.js";
12
+ import { av as getDefaultExportFromCjs, V as v4, T as TextSelection$1, v as getMarkRange, ay as vClickOutside, H as findParentNode, az as getActiveFormatting, ap as isInTable, aA as readFromClipboard, aB as handleClipboardPaste, aC as getFileObject, aD as runPropertyTranslators, aE as translator, aF as translator$1, aG as translator$2, aH as translator$3, aI as translator$4, aJ as translator$5, aK as translator$6, aL as translator$7, aM as translator$8, aN as translator$9, aO as translator$a, aP as translator$b, aQ as translator$c, aR as translator$d, aS as translator$e, aT as translator$f, aU as translator$g, aV as translator$h, aW as translator$i, aX as translator$j, aY as translator$k, aZ as translator$l, a_ as translator$m, a$ as translator$n, b0 as translator$o, b1 as translator$p, a as Plugin } from "./chunks/converter-DMpIH4c0.js";
13
+ import { b2, a5, i, a2 } from "./chunks/converter-DMpIH4c0.js";
14
+ import { _ as _export_sfc, u as useHighContrastMode, a as getQuickFormatList, b as generateLinkedStyleString, c as getFileOpener, d as checkAndProcessImage, r as replaceSelectionWithImagePlaceholder, e as uploadAndInsertImage, y as yUndoPluginKey, f as undoDepth, h as redoDepth, S as SlashMenuPluginKey, E as Editor, i as getStarterExtensions, P as Placeholder, j as getRichTextExtensions, M as Mark, k as Extension, A as Attribute, N as Node } from "./chunks/editor-DrzPfOIy.js";
15
+ import { n, C, o, T, l, p, m } from "./chunks/editor-DrzPfOIy.js";
16
16
  import { ref, onMounted, createElementBlock, openBlock, normalizeClass, unref, Fragment, renderList, createElementVNode, withModifiers, toDisplayString, createCommentVNode, normalizeStyle, computed, watch, withDirectives, withKeys, vModelText, createTextVNode, createVNode, h, createApp, markRaw, nextTick, onBeforeUnmount, reactive, onUnmounted, renderSlot, shallowRef, createBlock, withCtx, resolveDynamicComponent, normalizeProps, guardReactiveProps } from "vue";
17
- import { t as toolbarIcons, s as sanitizeNumber, T as Toolbar, m as magicWandIcon, p as plusIconSvg, a as trashIconSvg, l as linkIconSvg, b as tableIconSvg, c as scissorsIconSvg, d as copyIconSvg, e as pasteIconSvg, f as borderNoneIconSvg, g as arrowsToDotIconSvg, h as arrowsLeftRightIconSvg, w as wrenchIconSvg, u as useMessage, N as NSkeleton } from "./chunks/toolbar-BxsT1ZgG.js";
17
+ import { t as toolbarIcons, s as sanitizeNumber, T as Toolbar, m as magicWandIcon, p as plusIconSvg, a as trashIconSvg, l as linkIconSvg, b as tableIconSvg, c as scissorsIconSvg, d as copyIconSvg, e as pasteIconSvg, f as borderNoneIconSvg, g as arrowsToDotIconSvg, h as arrowsLeftRightIconSvg, w as wrenchIconSvg, u as useMessage, N as NSkeleton } from "./chunks/toolbar-NxB-WhNb.js";
18
18
  import AIWriter from "./ai-writer.es.js";
19
- import { D } from "./chunks/docx-zipper-CQsQR8Zs.js";
19
+ import { D } from "./chunks/docx-zipper-CDrFfcVc.js";
20
20
  import { createZip } from "./file-zipper.es.js";
21
21
  var eventemitter3 = { exports: {} };
22
22
  var hasRequiredEventemitter3;
@@ -1,6 +1,6 @@
1
1
  import "vue";
2
- import { T } from "./chunks/toolbar-BxsT1ZgG.js";
3
- import "./chunks/editor-gMF6aWiz.js";
2
+ import { T } from "./chunks/toolbar-NxB-WhNb.js";
3
+ import "./chunks/editor-DrzPfOIy.js";
4
4
  export {
5
5
  T as default
6
6
  };
@@ -1,6 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
3
- const superEditor_es = require("./chunks/super-editor.es-CS5l-cVZ.cjs");
3
+ const superEditor_es = require("./chunks/super-editor.es-BWdUsCXq.cjs");
4
4
  require("./chunks/vue-DWle4Cai.cjs");
5
5
  exports.AIWriter = superEditor_es.AIWriter;
6
6
  exports.AnnotatorHelpers = superEditor_es.AnnotatorHelpers;
@@ -1,4 +1,4 @@
1
- import { A, a, _, C, D, E, b, S, c, d, e, f, g, T, h, i, j, k, l, m, n, o, p, r, q } from "./chunks/super-editor.es-BF_Xaucb.es.js";
1
+ import { A, a, _, C, D, E, b, S, c, d, e, f, g, T, h, i, j, k, l, m, n, o, p, r, q } from "./chunks/super-editor.es-DQx0kzCl.es.js";
2
2
  import "./chunks/vue-CXxsqYcP.es.js";
3
3
  export {
4
4
  A as AIWriter,
package/dist/superdoc.cjs CHANGED
@@ -1,7 +1,7 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
3
- const superEditor_es = require("./chunks/super-editor.es-CS5l-cVZ.cjs");
4
- const superdoc = require("./chunks/index-ecl0ZFNw.cjs");
3
+ const superEditor_es = require("./chunks/super-editor.es-BWdUsCXq.cjs");
4
+ const superdoc = require("./chunks/index-C0XOj4vH.cjs");
5
5
  require("./chunks/vue-DWle4Cai.cjs");
6
6
  require("./chunks/jszip-b7l8QkfH.cjs");
7
7
  const blankDocx = require("./chunks/blank-docx-CPqX9RF5.cjs");
@@ -1,5 +1,5 @@
1
- import { a, E, b, S, d, i, j, n, r, p, q } from "./chunks/super-editor.es-BF_Xaucb.es.js";
2
- import { D, H, P, S as S2, m, l } from "./chunks/index-qjntJEk0.es.js";
1
+ import { a, E, b, S, d, i, j, n, r, p, q } from "./chunks/super-editor.es-DQx0kzCl.es.js";
2
+ import { D, H, P, S as S2, m, l } from "./chunks/index-BiZcP3bK.es.js";
3
3
  import "./chunks/vue-CXxsqYcP.es.js";
4
4
  import "./chunks/jszip-B8KIZSNe.es.js";
5
5
  import { B } from "./chunks/blank-docx-iwdyG9RH.es.js";