@harbour-enterprises/superdoc 0.14.0-next.7 → 0.14.0-next.8

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.
@@ -19798,13 +19798,21 @@ function processLinkContentNode(node2) {
19798
19798
  name: "w:color",
19799
19799
  attributes: { "w:val": "467886" }
19800
19800
  };
19801
+ const underline = {
19802
+ name: "w:u",
19803
+ attributes: {
19804
+ "w:val": "none"
19805
+ }
19806
+ };
19801
19807
  if (contentNode.name === "w:r") {
19802
19808
  const runProps = contentNode.elements.find((el) => el.name === "w:rPr");
19803
19809
  if (runProps) {
19804
19810
  const foundColor = runProps.elements.find((el) => el.name === "w:color");
19805
19811
  const foundHyperlinkStyle = runProps.elements.find((el) => el.name === "w:rStyle");
19812
+ const underlineMark = runProps.elements.find((el) => el.name === "w:u");
19806
19813
  if (!foundColor) runProps.elements.unshift(color);
19807
19814
  if (!foundHyperlinkStyle) runProps.elements.unshift(hyperlinkStyle);
19815
+ if (!underlineMark) runProps.elements.unshift(underline);
19808
19816
  } else {
19809
19817
  const runProps2 = {
19810
19818
  name: "w:rPr",
@@ -21826,7 +21834,12 @@ const handleHyperlinkNode = (params2) => {
21826
21834
  const styleElements = elements2.filter((el) => el.name === "w:style");
21827
21835
  const style2 = styleElements.find((el) => el.attributes["w:styleId"] === "Hyperlink");
21828
21836
  const styleRpr = style2?.elements?.find((el) => el.name === "w:rPr");
21829
- if (styleRpr) runNode.elements.unshift(styleRpr);
21837
+ if (styleRpr) {
21838
+ styleRpr.elements.forEach((styleEl) => {
21839
+ const hasElInRPr = rPr.elements.find((el) => el.name === styleEl.name);
21840
+ if (!hasElInRPr) rPr.elements.push(styleEl);
21841
+ });
21842
+ }
21830
21843
  }
21831
21844
  }
21832
21845
  }
@@ -24252,7 +24265,7 @@ const _SuperConverter = class _SuperConverter2 {
24252
24265
  return;
24253
24266
  }
24254
24267
  }
24255
- static updateDocumentVersion(docx = this.convertedXml, version2 = "0.14.0-next.7") {
24268
+ static updateDocumentVersion(docx = this.convertedXml, version2 = "0.14.0-next.8") {
24256
24269
  const customLocation = "docProps/custom.xml";
24257
24270
  if (!docx[customLocation]) {
24258
24271
  docx[customLocation] = generateCustomXml();
@@ -24720,7 +24733,7 @@ function storeSuperdocVersion(docx) {
24720
24733
  function generateCustomXml() {
24721
24734
  return DEFAULT_CUSTOM_XML;
24722
24735
  }
24723
- function generateSuperdocVersion(pid = 2, version2 = "0.14.0-next.7") {
24736
+ function generateSuperdocVersion(pid = 2, version2 = "0.14.0-next.8") {
24724
24737
  return {
24725
24738
  type: "element",
24726
24739
  name: "property",
@@ -41941,7 +41954,7 @@ const _Editor = class _Editor2 extends EventEmitter$1 {
41941
41954
  * @returns {Object | void} Migration results
41942
41955
  */
41943
41956
  processCollaborationMigrations() {
41944
- console.debug("[checkVersionMigrations] Current editor version", "0.14.0-next.7");
41957
+ console.debug("[checkVersionMigrations] Current editor version", "0.14.0-next.8");
41945
41958
  if (!this.options.ydoc) return;
41946
41959
  const metaMap = this.options.ydoc.getMap("meta");
41947
41960
  let docVersion = metaMap.get("version");
@@ -50521,7 +50534,7 @@ const Link = Mark2.create({
50521
50534
  addCommands() {
50522
50535
  return {
50523
50536
  setLink: ({ href }) => ({ chain }) => {
50524
- return chain().setMark(this.name, { href }).run();
50537
+ return chain().setMark("underline").setMark(this.name, { href }).run();
50525
50538
  },
50526
50539
  unsetLink: () => ({ chain }) => {
50527
50540
  return chain().unsetMark("underline").unsetColor().unsetMark(this.name, { extendEmptyMarkRange: true }).run();
@@ -19781,13 +19781,21 @@ function processLinkContentNode(node2) {
19781
19781
  name: "w:color",
19782
19782
  attributes: { "w:val": "467886" }
19783
19783
  };
19784
+ const underline = {
19785
+ name: "w:u",
19786
+ attributes: {
19787
+ "w:val": "none"
19788
+ }
19789
+ };
19784
19790
  if (contentNode.name === "w:r") {
19785
19791
  const runProps = contentNode.elements.find((el) => el.name === "w:rPr");
19786
19792
  if (runProps) {
19787
19793
  const foundColor = runProps.elements.find((el) => el.name === "w:color");
19788
19794
  const foundHyperlinkStyle = runProps.elements.find((el) => el.name === "w:rStyle");
19795
+ const underlineMark = runProps.elements.find((el) => el.name === "w:u");
19789
19796
  if (!foundColor) runProps.elements.unshift(color);
19790
19797
  if (!foundHyperlinkStyle) runProps.elements.unshift(hyperlinkStyle);
19798
+ if (!underlineMark) runProps.elements.unshift(underline);
19791
19799
  } else {
19792
19800
  const runProps2 = {
19793
19801
  name: "w:rPr",
@@ -21809,7 +21817,12 @@ const handleHyperlinkNode = (params2) => {
21809
21817
  const styleElements = elements2.filter((el) => el.name === "w:style");
21810
21818
  const style2 = styleElements.find((el) => el.attributes["w:styleId"] === "Hyperlink");
21811
21819
  const styleRpr = style2?.elements?.find((el) => el.name === "w:rPr");
21812
- if (styleRpr) runNode.elements.unshift(styleRpr);
21820
+ if (styleRpr) {
21821
+ styleRpr.elements.forEach((styleEl) => {
21822
+ const hasElInRPr = rPr.elements.find((el) => el.name === styleEl.name);
21823
+ if (!hasElInRPr) rPr.elements.push(styleEl);
21824
+ });
21825
+ }
21813
21826
  }
21814
21827
  }
21815
21828
  }
@@ -24235,7 +24248,7 @@ const _SuperConverter = class _SuperConverter2 {
24235
24248
  return;
24236
24249
  }
24237
24250
  }
24238
- static updateDocumentVersion(docx = this.convertedXml, version2 = "0.14.0-next.7") {
24251
+ static updateDocumentVersion(docx = this.convertedXml, version2 = "0.14.0-next.8") {
24239
24252
  const customLocation = "docProps/custom.xml";
24240
24253
  if (!docx[customLocation]) {
24241
24254
  docx[customLocation] = generateCustomXml();
@@ -24703,7 +24716,7 @@ function storeSuperdocVersion(docx) {
24703
24716
  function generateCustomXml() {
24704
24717
  return DEFAULT_CUSTOM_XML;
24705
24718
  }
24706
- function generateSuperdocVersion(pid = 2, version2 = "0.14.0-next.7") {
24719
+ function generateSuperdocVersion(pid = 2, version2 = "0.14.0-next.8") {
24707
24720
  return {
24708
24721
  type: "element",
24709
24722
  name: "property",
@@ -41924,7 +41937,7 @@ const _Editor = class _Editor2 extends EventEmitter$1 {
41924
41937
  * @returns {Object | void} Migration results
41925
41938
  */
41926
41939
  processCollaborationMigrations() {
41927
- console.debug("[checkVersionMigrations] Current editor version", "0.14.0-next.7");
41940
+ console.debug("[checkVersionMigrations] Current editor version", "0.14.0-next.8");
41928
41941
  if (!this.options.ydoc) return;
41929
41942
  const metaMap = this.options.ydoc.getMap("meta");
41930
41943
  let docVersion = metaMap.get("version");
@@ -50504,7 +50517,7 @@ const Link = Mark2.create({
50504
50517
  addCommands() {
50505
50518
  return {
50506
50519
  setLink: ({ href }) => ({ chain }) => {
50507
- return chain().setMark(this.name, { href }).run();
50520
+ return chain().setMark("underline").setMark(this.name, { href }).run();
50508
50521
  },
50509
50522
  unsetLink: () => ({ chain }) => {
50510
50523
  return chain().unsetMark("underline").unsetColor().unsetMark(this.name, { extendEmptyMarkRange: true }).run();
package/dist/style.css CHANGED
@@ -487,6 +487,9 @@ to {
487
487
  width: 100%;
488
488
  outline: none;
489
489
  }
490
+ a {
491
+ text-decoration: auto;
492
+ }
490
493
  /**
491
494
  * Basic ProseMirror styles.
492
495
  * https://github.com/ProseMirror/prosemirror-view/blob/master/style/prosemirror.css
@@ -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-Cq8A38P6.js";
3
- import { _ as _export_sfc } from "./chunks/editor-DiMXpjJM.js";
2
+ import { T as TextSelection } from "./chunks/converter-KLGCJKrA.js";
3
+ import { _ as _export_sfc } from "./chunks/editor-DoiOk-Hp.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 = {}) {
@@ -19800,13 +19800,21 @@ function processLinkContentNode(node2) {
19800
19800
  name: "w:color",
19801
19801
  attributes: { "w:val": "467886" }
19802
19802
  };
19803
+ const underline = {
19804
+ name: "w:u",
19805
+ attributes: {
19806
+ "w:val": "none"
19807
+ }
19808
+ };
19803
19809
  if (contentNode.name === "w:r") {
19804
19810
  const runProps = contentNode.elements.find((el) => el.name === "w:rPr");
19805
19811
  if (runProps) {
19806
19812
  const foundColor = runProps.elements.find((el) => el.name === "w:color");
19807
19813
  const foundHyperlinkStyle = runProps.elements.find((el) => el.name === "w:rStyle");
19814
+ const underlineMark = runProps.elements.find((el) => el.name === "w:u");
19808
19815
  if (!foundColor) runProps.elements.unshift(color);
19809
19816
  if (!foundHyperlinkStyle) runProps.elements.unshift(hyperlinkStyle);
19817
+ if (!underlineMark) runProps.elements.unshift(underline);
19810
19818
  } else {
19811
19819
  const runProps2 = {
19812
19820
  name: "w:rPr",
@@ -21828,7 +21836,12 @@ const handleHyperlinkNode = (params) => {
21828
21836
  const styleElements = elements2.filter((el) => el.name === "w:style");
21829
21837
  const style = styleElements.find((el) => el.attributes["w:styleId"] === "Hyperlink");
21830
21838
  const styleRpr = style?.elements?.find((el) => el.name === "w:rPr");
21831
- if (styleRpr) runNode.elements.unshift(styleRpr);
21839
+ if (styleRpr) {
21840
+ styleRpr.elements.forEach((styleEl) => {
21841
+ const hasElInRPr = rPr.elements.find((el) => el.name === styleEl.name);
21842
+ if (!hasElInRPr) rPr.elements.push(styleEl);
21843
+ });
21844
+ }
21832
21845
  }
21833
21846
  }
21834
21847
  }
@@ -24254,7 +24267,7 @@ const _SuperConverter = class _SuperConverter {
24254
24267
  return;
24255
24268
  }
24256
24269
  }
24257
- static updateDocumentVersion(docx = this.convertedXml, version = "0.14.0-next.7") {
24270
+ static updateDocumentVersion(docx = this.convertedXml, version = "0.14.0-next.8") {
24258
24271
  const customLocation = "docProps/custom.xml";
24259
24272
  if (!docx[customLocation]) {
24260
24273
  docx[customLocation] = generateCustomXml();
@@ -24725,7 +24738,7 @@ function storeSuperdocVersion(docx) {
24725
24738
  function generateCustomXml() {
24726
24739
  return DEFAULT_CUSTOM_XML;
24727
24740
  }
24728
- function generateSuperdocVersion(pid = 2, version = "0.14.0-next.7") {
24741
+ function generateSuperdocVersion(pid = 2, version = "0.14.0-next.8") {
24729
24742
  return {
24730
24743
  type: "element",
24731
24744
  name: "property",
@@ -1,4 +1,4 @@
1
- import { C as process$1, aa as commonjsGlobal, E as Buffer, ab as getDefaultExportFromCjs, ac as getContentTypesFromXml, ad as xmljs } from "./converter-Cq8A38P6.js";
1
+ import { C as process$1, aa as commonjsGlobal, E as Buffer, ab as getDefaultExportFromCjs, ac as getContentTypesFromXml, ad as xmljs } from "./converter-KLGCJKrA.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, dispatchTransaction_fn, handleNodeSelection_fn, prepareDocumentForImport_fn, prepareDocumentForExport_fn, endCollaboration_fn, _ListItemNodeView_instances, init_fn2, _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$1, f as Slice, o as objectIncludes, g as deleteProps, D as DOMParser$1, h as ReplaceStep, k as NodeRange, m as findWrapping, n as generateDocxRandomId, p as minMax, q as chainableEditorState, s as generateRandom32BitHex, t as getStyleTagFromStyleId, u as getAbstractDefinition, v as getDefinitionForLevel, w as isMacOS, x as isIOS, y as DOMSerializer, z as Mark$1, B as dropPoint, C as process$1, E as Buffer2, G as inputRulesPlugin, H as TrackDeleteMarkName, I as TrackInsertMarkName, J as v4, K as TrackFormatMarkName, L as comments_module_events, O as AddMarkStep, Q as RemoveMarkStep, U as twipsToLines, V as pixelsToTwips, W as CommandService, X as SuperConverter, Y as EditorState, Z as hasSomeParentWithClass, _ as parseSizeUnit, $ as getLineHeightValueString, a0 as InputRule, a1 as toKebabCase, a2 as kebabCase, a3 as docxNumberigHelpers, a4 as parseIndentElement, a5 as combineIndents, a6 as getColStyleDeclaration, a7 as SelectionRange, a8 as Transform, a9 as createColGroup } from "./converter-Cq8A38P6.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$1, f as Slice, o as objectIncludes, g as deleteProps, D as DOMParser$1, h as ReplaceStep, k as NodeRange, m as findWrapping, n as generateDocxRandomId, p as minMax, q as chainableEditorState, s as generateRandom32BitHex, t as getStyleTagFromStyleId, u as getAbstractDefinition, v as getDefinitionForLevel, w as isMacOS, x as isIOS, y as DOMSerializer, z as Mark$1, B as dropPoint, C as process$1, E as Buffer2, G as inputRulesPlugin, H as TrackDeleteMarkName, I as TrackInsertMarkName, J as v4, K as TrackFormatMarkName, L as comments_module_events, O as AddMarkStep, Q as RemoveMarkStep, U as twipsToLines, V as pixelsToTwips, W as CommandService, X as SuperConverter, Y as EditorState, Z as hasSomeParentWithClass, _ as parseSizeUnit, $ as getLineHeightValueString, a0 as InputRule, a1 as toKebabCase, a2 as kebabCase, a3 as docxNumberigHelpers, a4 as parseIndentElement, a5 as combineIndents, a6 as getColStyleDeclaration, a7 as SelectionRange, a8 as Transform, a9 as createColGroup } from "./converter-KLGCJKrA.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-DOtI6fZj.js";
17
+ import { D as DocxZipper } from "./docx-zipper-BPKYuqf2.js";
18
18
  function getMarksFromSelection(state) {
19
19
  const { from: from2, to, empty: empty2 } = state.selection;
20
20
  const marks = [];
@@ -14739,7 +14739,7 @@ const _Editor = class _Editor extends EventEmitter {
14739
14739
  * @returns {Object | void} Migration results
14740
14740
  */
14741
14741
  processCollaborationMigrations() {
14742
- console.debug("[checkVersionMigrations] Current editor version", "0.14.0-next.7");
14742
+ console.debug("[checkVersionMigrations] Current editor version", "0.14.0-next.8");
14743
14743
  if (!this.options.ydoc) return;
14744
14744
  const metaMap = this.options.ydoc.getMap("meta");
14745
14745
  let docVersion = metaMap.get("version");
@@ -23456,7 +23456,7 @@ const Link = Mark.create({
23456
23456
  addCommands() {
23457
23457
  return {
23458
23458
  setLink: ({ href }) => ({ chain }) => {
23459
- return chain().setMark(this.name, { href }).run();
23459
+ return chain().setMark("underline").setMark(this.name, { href }).run();
23460
23460
  },
23461
23461
  unsetLink: () => ({ chain }) => {
23462
23462
  return chain().unsetMark("underline").unsetColor().unsetMark(this.name, { extendEmptyMarkRange: true }).run();
@@ -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 { C as process$1 } from "./converter-Cq8A38P6.js";
3
- import { _ as _export_sfc, u as useHighContrastMode, g as global$1 } from "./editor-DiMXpjJM.js";
2
+ import { C as process$1 } from "./converter-KLGCJKrA.js";
3
+ import { _ as _export_sfc, u as useHighContrastMode, g as global$1 } from "./editor-DoiOk-Hp.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 { X } from "./chunks/converter-Cq8A38P6.js";
1
+ import { X } from "./chunks/converter-KLGCJKrA.js";
2
2
  export {
3
3
  X as SuperConverter
4
4
  };
@@ -1 +1 @@
1
- {"version":3,"file":"exporter.d.ts","sourceRoot":"","sources":["../../../src/core/super-converter/exporter.js"],"names":[],"mappings":"AAwBA;;;;;GAKG;AAEH;;;;;;;;;;;;GAYG;AAEH;;;GAGG;AAEH;;;GAGG;AAEH;;;;GAIG;AAEH;;;;;GAKG;AACH,2CAHW,YAAY,GACV,YAAY,CAwCxB;AA+DD;;;;;GAKG;AACH,qDAFa,YAAY,CAyBxB;AAg+DD;;;;;;;;;EAcC;AA+FD;IACE,4BAEC;IADC,eAA0B;IAG5B,gDAGC;;CAwEF;;;;;;;;;;;;;mBAt0Ea,KAAQ;;;;;;UAKR,MAAM;;;;aACN,KAAK,CAAC,UAAU,CAAC;;;;;;;;;;;;;UAMjB,MAAM;;;;cACN,KAAK,CAAC,YAAY,CAAC;;;;;;;;;;;;;;;;;;;;;;UAgBnB,MAAM"}
1
+ {"version":3,"file":"exporter.d.ts","sourceRoot":"","sources":["../../../src/core/super-converter/exporter.js"],"names":[],"mappings":"AAwBA;;;;;GAKG;AAEH;;;;;;;;;;;;GAYG;AAEH;;;GAGG;AAEH;;;GAGG;AAEH;;;;GAIG;AAEH;;;;;GAKG;AACH,2CAHW,YAAY,GACV,YAAY,CAwCxB;AA+DD;;;;;GAKG;AACH,qDAFa,YAAY,CAyBxB;AAw+DD;;;;;;;;;EAcC;AA+FD;IACE,4BAEC;IADC,eAA0B;IAG5B,gDAGC;;CAwEF;;;;;;;;;;;;;mBA90Ea,KAAQ;;;;;;UAKR,MAAM;;;;aACN,KAAK,CAAC,UAAU,CAAC;;;;;;;;;;;;;UAMjB,MAAM;;;;cACN,KAAK,CAAC,YAAY,CAAC;;;;;;;;;;;;;;;;;;;;;;UAgBnB,MAAM"}
@@ -1 +1 @@
1
- {"version":3,"file":"hyperlinkImporter.d.ts","sourceRoot":"","sources":["../../../../../src/core/super-converter/v2/importer/hyperlinkImporter.js"],"names":[],"mappings":"AAAA;;GAEG;AACH,sCAiDE;AAEF;;GAEG;AACH,6CAGE"}
1
+ {"version":3,"file":"hyperlinkImporter.d.ts","sourceRoot":"","sources":["../../../../../src/core/super-converter/v2/importer/hyperlinkImporter.js"],"names":[],"mappings":"AAAA;;GAEG;AACH,sCAsDE;AAEF;;GAEG;AACH,6CAGE"}
@@ -1,5 +1,5 @@
1
- import "./chunks/converter-Cq8A38P6.js";
2
- import { D } from "./chunks/docx-zipper-DOtI6fZj.js";
1
+ import "./chunks/converter-KLGCJKrA.js";
2
+ import { D } from "./chunks/docx-zipper-BPKYuqf2.js";
3
3
  export {
4
4
  D as default
5
5
  };
@@ -1,6 +1,6 @@
1
- import { E } from "./chunks/editor-DiMXpjJM.js";
2
- import "./chunks/converter-Cq8A38P6.js";
3
- import "./chunks/docx-zipper-DOtI6fZj.js";
1
+ import { E } from "./chunks/editor-DoiOk-Hp.js";
2
+ import "./chunks/converter-KLGCJKrA.js";
3
+ import "./chunks/docx-zipper-BPKYuqf2.js";
4
4
  export {
5
5
  E as Editor
6
6
  };
@@ -1,4 +1,4 @@
1
- import { J as JSZip } from "./chunks/docx-zipper-DOtI6fZj.js";
1
+ import { J as JSZip } from "./chunks/docx-zipper-BPKYuqf2.js";
2
2
  async function createZip(blobs, fileNames) {
3
3
  const zip = new JSZip();
4
4
  blobs.forEach((blob, index) => {
@@ -407,6 +407,9 @@ to {
407
407
  width: 100%;
408
408
  outline: none;
409
409
  }
410
+ a {
411
+ text-decoration: auto;
412
+ }
410
413
  /**
411
414
  * Basic ProseMirror styles.
412
415
  * https://github.com/ProseMirror/prosemirror-view/blob/master/style/prosemirror.css
@@ -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 { ab as getDefaultExportFromCjs, J as v4, ae as vClickOutside, T as TextSelection, a as Plugin } from "./chunks/converter-Cq8A38P6.js";
13
- import { X } from "./chunks/converter-Cq8A38P6.js";
14
- import { _ as _export_sfc, u as useHighContrastMode, a as getQuickFormatList, b as generateLinkedStyleString, f as findParentNode, c as getFileOpener, s as startImageUpload, d as getActiveFormatting, i as isInTable, e as undoDepth, r as redoDepth, E as Editor, h as getStarterExtensions, P as Placeholder, j as getRichTextExtensions, M as Mark, k as Extension, A as Attribute, N as Node } from "./chunks/editor-DiMXpjJM.js";
15
- import { o, C, T, m, q, p, l, n } from "./chunks/editor-DiMXpjJM.js";
12
+ import { ab as getDefaultExportFromCjs, J as v4, ae as vClickOutside, T as TextSelection, a as Plugin } from "./chunks/converter-KLGCJKrA.js";
13
+ import { X } from "./chunks/converter-KLGCJKrA.js";
14
+ import { _ as _export_sfc, u as useHighContrastMode, a as getQuickFormatList, b as generateLinkedStyleString, f as findParentNode, c as getFileOpener, s as startImageUpload, d as getActiveFormatting, i as isInTable, e as undoDepth, r as redoDepth, E as Editor, h as getStarterExtensions, P as Placeholder, j as getRichTextExtensions, M as Mark, k as Extension, A as Attribute, N as Node } from "./chunks/editor-DoiOk-Hp.js";
15
+ import { o, C, T, m, q, p, l, n } from "./chunks/editor-DoiOk-Hp.js";
16
16
  import { ref, onMounted, createElementBlock, openBlock, normalizeClass, unref, Fragment, renderList, createElementVNode, withModifiers, getCurrentInstance, computed, watch, createCommentVNode, withDirectives, withKeys, vModelText, createTextVNode, toDisplayString, normalizeStyle, createVNode, h, createApp, reactive, onUnmounted, shallowRef, onBeforeUnmount, createBlock } from "vue";
17
- import { t as toolbarIcons, s as sanitizeNumber, T as Toolbar, N as NSkeleton } from "./chunks/toolbar-CE2dEw2j.js";
17
+ import { t as toolbarIcons, s as sanitizeNumber, T as Toolbar, N as NSkeleton } from "./chunks/toolbar-DWETeuSj.js";
18
18
  import AIWriter from "./ai-writer.es.js";
19
- import { D } from "./chunks/docx-zipper-DOtI6fZj.js";
19
+ import { D } from "./chunks/docx-zipper-BPKYuqf2.js";
20
20
  import { createZip } from "./file-zipper.es.js";
21
21
  var eventemitter3 = { exports: {} };
22
22
  (function(module) {
@@ -1,6 +1,6 @@
1
1
  import "vue";
2
- import { T } from "./chunks/toolbar-CE2dEw2j.js";
3
- import "./chunks/editor-DiMXpjJM.js";
2
+ import { T } from "./chunks/toolbar-DWETeuSj.js";
3
+ import "./chunks/editor-DoiOk-Hp.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-BrUIfwuC.cjs");
3
+ const superEditor_es = require("./chunks/super-editor.es-CC5VKrmG.cjs");
4
4
  require("./chunks/vue-BBjMeYfo.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, T, f, g, i, h, j, k, l, m, n, o } from "./chunks/super-editor.es-B1co-x-F.es.js";
1
+ import { A, a, _, C, D, E, b, S, c, d, e, T, f, g, i, h, j, k, l, m, n, o } from "./chunks/super-editor.es-CHIPGDMw.es.js";
2
2
  import "./chunks/vue-BBJVqxjL.es.js";
3
3
  export {
4
4
  A as AIWriter,
package/dist/superdoc.cjs CHANGED
@@ -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-BrUIfwuC.cjs");
3
+ const superEditor_es = require("./chunks/super-editor.es-CC5VKrmG.cjs");
4
4
  const vue = require("./chunks/vue-BBjMeYfo.cjs");
5
5
  const jszip = require("./chunks/jszip-9bCX1h2W.cjs");
6
6
  const blankDocx = require("./chunks/blank-docx-CPqX9RF5.cjs");
@@ -47803,7 +47803,7 @@ class SuperDoc extends eventemitter3.EventEmitter {
47803
47803
  this.config.colors = shuffleArray(this.config.colors);
47804
47804
  this.userColorMap = /* @__PURE__ */ new Map();
47805
47805
  this.colorIndex = 0;
47806
- this.version = "0.14.0-next.7";
47806
+ this.version = "0.14.0-next.8";
47807
47807
  console.debug("🦋 [superdoc] Using SuperDoc version:", this.version);
47808
47808
  this.superdocId = config.superdocId || uuid.v4();
47809
47809
  this.colors = this.config.colors;
@@ -1,5 +1,5 @@
1
- import { o as index$1, C as CommentsPluginKey, f as TrackChangesBasePluginKey, E as Editor, l as getRichTextExtensions, d as SuperInput, A as AIWriter, c as SuperEditor, e as SuperToolbar, g as createZip } from "./chunks/super-editor.es-B1co-x-F.es.js";
2
- import { a, S, i, n } from "./chunks/super-editor.es-B1co-x-F.es.js";
1
+ import { o as index$1, C as CommentsPluginKey, f as TrackChangesBasePluginKey, E as Editor, l as getRichTextExtensions, d as SuperInput, A as AIWriter, c as SuperEditor, e as SuperToolbar, g as createZip } from "./chunks/super-editor.es-CHIPGDMw.es.js";
2
+ import { a, S, i, n } from "./chunks/super-editor.es-CHIPGDMw.es.js";
3
3
  import { Y as effectScope, r as ref, Z as markRaw, p as process$1, _ as toRaw, a as computed, $ as isRef, a0 as isReactive, D as toRef, i as inject, q as getCurrentInstance, l as watch, y as unref, a1 as hasInjectionContext, N as reactive, u as nextTick, a2 as getCurrentScope, a3 as onScopeDispose, a4 as toRefs, g as global$1, K as shallowRef, O as readonly, j as onMounted, k as onBeforeUnmount, h as onBeforeMount, U as onActivated, s as onDeactivated, A as createTextVNode, F as Fragment, R as Comment, m as defineComponent, E as provide, I as withDirectives, C as h, V as Teleport, S as renderSlot, W as isVNode, J as watchEffect, P as Transition, G as mergeProps, Q as vShow, H as cloneVNode, T as Text, b as createElementBlock, o as openBlock, t as toDisplayString, x as createVNode, z as withCtx, f as createBaseVNode, B as normalizeStyle, e as createCommentVNode, v as createBlock, w as withModifiers, n as normalizeClass, a5 as resolveDirective, d as renderList, c as createApp, X as onUnmounted, a6 as resolveDynamicComponent } from "./chunks/vue-BBJVqxjL.es.js";
4
4
  import { B as Buffer$2 } from "./chunks/jszip-Cl3s9njw.es.js";
5
5
  import { B as BlankDOCX } from "./chunks/blank-docx-iwdyG9RH.es.js";
@@ -47786,7 +47786,7 @@ class SuperDoc extends EventEmitter {
47786
47786
  this.config.colors = shuffleArray(this.config.colors);
47787
47787
  this.userColorMap = /* @__PURE__ */ new Map();
47788
47788
  this.colorIndex = 0;
47789
- this.version = "0.14.0-next.7";
47789
+ this.version = "0.14.0-next.8";
47790
47790
  console.debug("🦋 [superdoc] Using SuperDoc version:", this.version);
47791
47791
  this.superdocId = config.superdocId || v4();
47792
47792
  this.colors = this.config.colors;
@@ -27165,13 +27165,21 @@
27165
27165
  name: "w:color",
27166
27166
  attributes: { "w:val": "467886" }
27167
27167
  };
27168
+ const underline = {
27169
+ name: "w:u",
27170
+ attributes: {
27171
+ "w:val": "none"
27172
+ }
27173
+ };
27168
27174
  if (contentNode.name === "w:r") {
27169
27175
  const runProps = contentNode.elements.find((el) => el.name === "w:rPr");
27170
27176
  if (runProps) {
27171
27177
  const foundColor = runProps.elements.find((el) => el.name === "w:color");
27172
27178
  const foundHyperlinkStyle = runProps.elements.find((el) => el.name === "w:rStyle");
27179
+ const underlineMark = runProps.elements.find((el) => el.name === "w:u");
27173
27180
  if (!foundColor) runProps.elements.unshift(color);
27174
27181
  if (!foundHyperlinkStyle) runProps.elements.unshift(hyperlinkStyle);
27182
+ if (!underlineMark) runProps.elements.unshift(underline);
27175
27183
  } else {
27176
27184
  const runProps2 = {
27177
27185
  name: "w:rPr",
@@ -29193,7 +29201,12 @@
29193
29201
  const styleElements = elements2.filter((el) => el.name === "w:style");
29194
29202
  const style2 = styleElements.find((el) => el.attributes["w:styleId"] === "Hyperlink");
29195
29203
  const styleRpr = style2?.elements?.find((el) => el.name === "w:rPr");
29196
- if (styleRpr) runNode.elements.unshift(styleRpr);
29204
+ if (styleRpr) {
29205
+ styleRpr.elements.forEach((styleEl) => {
29206
+ const hasElInRPr = rPr.elements.find((el) => el.name === styleEl.name);
29207
+ if (!hasElInRPr) rPr.elements.push(styleEl);
29208
+ });
29209
+ }
29197
29210
  }
29198
29211
  }
29199
29212
  }
@@ -31619,7 +31632,7 @@
31619
31632
  return;
31620
31633
  }
31621
31634
  }
31622
- static updateDocumentVersion(docx = this.convertedXml, version2 = "0.14.0-next.7") {
31635
+ static updateDocumentVersion(docx = this.convertedXml, version2 = "0.14.0-next.8") {
31623
31636
  const customLocation = "docProps/custom.xml";
31624
31637
  if (!docx[customLocation]) {
31625
31638
  docx[customLocation] = generateCustomXml();
@@ -32087,7 +32100,7 @@
32087
32100
  function generateCustomXml() {
32088
32101
  return DEFAULT_CUSTOM_XML;
32089
32102
  }
32090
- function generateSuperdocVersion(pid = 2, version2 = "0.14.0-next.7") {
32103
+ function generateSuperdocVersion(pid = 2, version2 = "0.14.0-next.8") {
32091
32104
  return {
32092
32105
  type: "element",
32093
32106
  name: "property",
@@ -49308,7 +49321,7 @@
49308
49321
  * @returns {Object | void} Migration results
49309
49322
  */
49310
49323
  processCollaborationMigrations() {
49311
- console.debug("[checkVersionMigrations] Current editor version", "0.14.0-next.7");
49324
+ console.debug("[checkVersionMigrations] Current editor version", "0.14.0-next.8");
49312
49325
  if (!this.options.ydoc) return;
49313
49326
  const metaMap = this.options.ydoc.getMap("meta");
49314
49327
  let docVersion = metaMap.get("version");
@@ -57888,7 +57901,7 @@
57888
57901
  addCommands() {
57889
57902
  return {
57890
57903
  setLink: ({ href }) => ({ chain }) => {
57891
- return chain().setMark(this.name, { href }).run();
57904
+ return chain().setMark("underline").setMark(this.name, { href }).run();
57892
57905
  },
57893
57906
  unsetLink: () => ({ chain }) => {
57894
57907
  return chain().unsetMark("underline").unsetColor().unsetMark(this.name, { extendEmptyMarkRange: true }).run();
@@ -94122,7 +94135,7 @@ ${style2}
94122
94135
  this.config.colors = shuffleArray(this.config.colors);
94123
94136
  this.userColorMap = /* @__PURE__ */ new Map();
94124
94137
  this.colorIndex = 0;
94125
- this.version = "0.14.0-next.7";
94138
+ this.version = "0.14.0-next.8";
94126
94139
  console.debug("🦋 [superdoc] Using SuperDoc version:", this.version);
94127
94140
  this.superdocId = config.superdocId || v4();
94128
94141
  this.colors = this.config.colors;