@harbour-enterprises/superdoc 1.0.0-beta.54 → 1.0.0-beta.55

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-D_U-y4Wi.es.js → PdfViewer-ARRkZgYS.es.js} +1 -1
  2. package/dist/chunks/{PdfViewer-qBKjClah.cjs → PdfViewer-ObG30G-u.cjs} +1 -1
  3. package/dist/chunks/{index-to6_YLa7.es.js → index-Bwqb03qi.es.js} +3 -3
  4. package/dist/chunks/{index-BKvAeQdF.cjs → index-DFHwDXHd.cjs} +3 -3
  5. package/dist/chunks/{index-t8thQIOL-CV8VTGI4.cjs → index-bqjMjne1-CJi4d9NS.cjs} +1 -1
  6. package/dist/chunks/{index-t8thQIOL-vW80ABaR.es.js → index-bqjMjne1-DBB94Dlj.es.js} +1 -1
  7. package/dist/chunks/{super-editor.es-xpC1DWhM.es.js → super-editor.es-7Twgz-8H.es.js} +485 -177
  8. package/dist/chunks/{super-editor.es-BMiadG4G.cjs → super-editor.es-C2Ob7BbN.cjs} +485 -177
  9. package/dist/super-editor/ai-writer.es.js +2 -2
  10. package/dist/super-editor/chunks/{converter-OoT4LYwQ.js → converter-D33MGATy.js} +274 -171
  11. package/dist/super-editor/chunks/{docx-zipper-Cf_hIcjC.js → docx-zipper-C7Fp89_I.js} +1 -1
  12. package/dist/super-editor/chunks/{editor-CqbtudGQ.js → editor-BiFHsy25.js} +216 -11
  13. package/dist/super-editor/chunks/{index-t8thQIOL.js → index-bqjMjne1.js} +1 -1
  14. package/dist/super-editor/chunks/{toolbar-BsfRAJ0o.js → toolbar-BNta2qOv.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 +487 -179
  26. package/dist/superdoc.umd.js.map +1 -1
  27. package/package.json +1 -1
@@ -18063,7 +18063,7 @@ const config$p = {
18063
18063
  decode: decode$R,
18064
18064
  attributes: validXmlAttributes$h
18065
18065
  };
18066
- const translator$23 = NodeTranslator.from(config$p);
18066
+ const translator$2p = NodeTranslator.from(config$p);
18067
18067
  const encode$O = (attributes) => attributes?.["w:val"];
18068
18068
  const decode$Q = (attrs) => attrs?.highlight;
18069
18069
  const attrConfig$q = Object.freeze({
@@ -18125,7 +18125,7 @@ const config$o = {
18125
18125
  decode: decode$P,
18126
18126
  attributes: validXmlAttributes$g
18127
18127
  };
18128
- const translator$22 = NodeTranslator.from(config$o);
18128
+ const translator$2o = NodeTranslator.from(config$o);
18129
18129
  const encode$M = (attributes) => {
18130
18130
  return attributes["w:val"];
18131
18131
  };
@@ -18204,7 +18204,7 @@ const config$n = {
18204
18204
  decode: decode$L,
18205
18205
  attributes: validXmlAttributes$f
18206
18206
  };
18207
- const translator$21 = NodeTranslator.from(config$n);
18207
+ const translator$2n = NodeTranslator.from(config$n);
18208
18208
  const carbonCopy = (obj) => {
18209
18209
  if (!obj) return void 0;
18210
18210
  try {
@@ -18345,7 +18345,7 @@ function createBorderPropertyHandler(xmlName, sdName = null) {
18345
18345
  "color",
18346
18346
  (v2) => {
18347
18347
  if (v2 === "auto") {
18348
- return null;
18348
+ return "auto";
18349
18349
  } else if (v2) {
18350
18350
  return `#${v2}`;
18351
18351
  } else {
@@ -18530,9 +18530,10 @@ const integerToString = (value) => {
18530
18530
  const intValue = parseInteger(value);
18531
18531
  return intValue != void 0 ? String(intValue) : void 0;
18532
18532
  };
18533
- const translator$20 = NodeTranslator.from(createSingleBooleanPropertyHandler("w:b", "bold"));
18534
- const translator$1$ = NodeTranslator.from(createSingleBooleanPropertyHandler("w:bCs", "boldCs"));
18535
- const translator$1_ = NodeTranslator.from(createSingleBooleanPropertyHandler("w:i", "italic"));
18533
+ const translator$2m = NodeTranslator.from(createSingleBooleanPropertyHandler("w:b", "bold"));
18534
+ const translator$2l = NodeTranslator.from(createSingleBooleanPropertyHandler("w:bCs", "boldCs"));
18535
+ const translator$2k = NodeTranslator.from(createBorderPropertyHandler("w:bdr", "borders"));
18536
+ const translator$2j = NodeTranslator.from(createSingleBooleanPropertyHandler("w:i", "italic"));
18536
18537
  const encode$I = (attributes) => attributes?.["w:val"];
18537
18538
  const decode$K = (attrs) => attrs?.underline;
18538
18539
  const attrConfig$m = Object.freeze({
@@ -18627,10 +18628,10 @@ const config$m = {
18627
18628
  decode: decode$F,
18628
18629
  attributes: validXmlAttributes$e
18629
18630
  };
18630
- const translator$1Z = NodeTranslator.from(config$m);
18631
- const translator$1Y = NodeTranslator.from(createSingleBooleanPropertyHandler("w:strike"));
18632
- const translator$1X = NodeTranslator.from(createSingleBooleanPropertyHandler("w:dstrike"));
18633
- const translator$1W = NodeTranslator.from({
18631
+ const translator$2i = NodeTranslator.from(config$m);
18632
+ const translator$2h = NodeTranslator.from(createSingleBooleanPropertyHandler("w:strike"));
18633
+ const translator$2g = NodeTranslator.from(createSingleBooleanPropertyHandler("w:dstrike"));
18634
+ const translator$2f = NodeTranslator.from({
18634
18635
  xmlName: "w:color",
18635
18636
  sdNodeOrKeyName: "color",
18636
18637
  attributes: [
@@ -18647,7 +18648,7 @@ const translator$1W = NodeTranslator.from({
18647
18648
  return Object.keys(decodedAttrs).length > 0 ? { attributes: decodedAttrs } : void 0;
18648
18649
  }
18649
18650
  });
18650
- const translator$1V = NodeTranslator.from({
18651
+ const translator$2e = NodeTranslator.from({
18651
18652
  xmlName: "w:rFonts",
18652
18653
  sdNodeOrKeyName: "fontFamily",
18653
18654
  attributes: [
@@ -18678,16 +18679,16 @@ const translator$1V = NodeTranslator.from({
18678
18679
  return Object.keys(decodedAttrs).length > 0 ? { attributes: decodedAttrs } : void 0;
18679
18680
  }
18680
18681
  });
18681
- const translator$1U = NodeTranslator.from(createSingleAttrPropertyHandler("w:rStyle", "styleId"));
18682
- const translator$1T = NodeTranslator.from(createSingleIntegerPropertyHandler("w:sz", "fontSize"));
18683
- const translator$1S = NodeTranslator.from(createSingleIntegerPropertyHandler("w:szCs", "fontSizeCs"));
18684
- const translator$1R = NodeTranslator.from({
18682
+ const translator$2d = NodeTranslator.from(createSingleAttrPropertyHandler("w:rStyle", "styleId"));
18683
+ const translator$2c = NodeTranslator.from(createSingleIntegerPropertyHandler("w:sz", "fontSize"));
18684
+ const translator$2b = NodeTranslator.from(createSingleIntegerPropertyHandler("w:szCs", "fontSizeCs"));
18685
+ const translator$2a = NodeTranslator.from({
18685
18686
  xmlName: "w:caps",
18686
18687
  sdNodeOrKeyName: "textTransform",
18687
18688
  encode: ({ nodes }) => parseBoolean(nodes[0].attributes?.["w:val"] ?? "1") ? "uppercase" : "none",
18688
18689
  decode: ({ node }) => node.attrs["textTransform"] != null ? { name: "w:caps", attributes: { "w:val": booleanToString(node.attrs["textTransform"] === "uppercase") } } : void 0
18689
18690
  });
18690
- const translator$1Q = NodeTranslator.from({
18691
+ const translator$29 = NodeTranslator.from({
18691
18692
  xmlName: "w:shd",
18692
18693
  sdNodeOrKeyName: "shading",
18693
18694
  attributes: [
@@ -18709,7 +18710,7 @@ const translator$1Q = NodeTranslator.from({
18709
18710
  return Object.keys(decodedAttrs).length > 0 ? { attributes: decodedAttrs } : void 0;
18710
18711
  }
18711
18712
  });
18712
- const translator$1P = NodeTranslator.from({
18713
+ const translator$28 = NodeTranslator.from({
18713
18714
  xmlName: "w:lang",
18714
18715
  sdNodeOrKeyName: "lang",
18715
18716
  attributes: [createAttributeHandler("w:val"), createAttributeHandler("w:eastAsia"), createAttributeHandler("w:bidi")],
@@ -18721,26 +18722,99 @@ const translator$1P = NodeTranslator.from({
18721
18722
  return Object.keys(decodedAttrs).length > 0 ? { attributes: decodedAttrs } : void 0;
18722
18723
  }
18723
18724
  });
18724
- const translator$1O = NodeTranslator.from(createSingleIntegerPropertyHandler("w:spacing", "letterSpacing"));
18725
+ const translator$27 = NodeTranslator.from(createSingleIntegerPropertyHandler("w:spacing", "letterSpacing"));
18726
+ const translator$26 = NodeTranslator.from(createSingleAttrPropertyHandler("w:vertAlign"));
18727
+ const translator$25 = NodeTranslator.from(createSingleBooleanPropertyHandler("w:smallCaps"));
18728
+ const translator$24 = NodeTranslator.from(createSingleBooleanPropertyHandler("w:snapToGrid"));
18729
+ const translator$23 = NodeTranslator.from(createSingleBooleanPropertyHandler("w:emboss"));
18730
+ const translator$22 = NodeTranslator.from(createSingleBooleanPropertyHandler("w:imprint"));
18731
+ const translator$21 = NodeTranslator.from(createSingleBooleanPropertyHandler("w:noProof"));
18732
+ const translator$20 = NodeTranslator.from(createSingleBooleanPropertyHandler("w:oMath"));
18733
+ const translator$1$ = NodeTranslator.from(createSingleBooleanPropertyHandler("w:outline"));
18734
+ const translator$1_ = NodeTranslator.from(createSingleBooleanPropertyHandler("w:shadow"));
18735
+ const translator$1Z = NodeTranslator.from(createSingleBooleanPropertyHandler("w:vanish"));
18736
+ const translator$1Y = NodeTranslator.from(createSingleBooleanPropertyHandler("w:specVanish"));
18737
+ const translator$1X = NodeTranslator.from(createSingleAttrPropertyHandler("w:effect"));
18738
+ const translator$1W = NodeTranslator.from(createSingleAttrPropertyHandler("w:em"));
18739
+ const translator$1V = NodeTranslator.from(createSingleAttrPropertyHandler("w:w"));
18740
+ const translator$1U = NodeTranslator.from(createSingleIntegerPropertyHandler("w:kern"));
18741
+ const translator$1T = NodeTranslator.from(createSingleIntegerPropertyHandler("w:position"));
18742
+ const translator$1S = NodeTranslator.from({
18743
+ xmlName: "w:fitText",
18744
+ sdNodeOrKeyName: "fitText",
18745
+ attributes: [createIntegerAttributeHandler("w:val"), createIntegerAttributeHandler("w:id")],
18746
+ encode: (_2, encodedAttrs) => {
18747
+ return encodedAttrs;
18748
+ },
18749
+ decode: function({ node }) {
18750
+ const decodedAttrs = this.decodeAttributes({ node: { ...node, attrs: node.attrs["fitText"] || {} } });
18751
+ return Object.keys(decodedAttrs).length > 0 ? { attributes: decodedAttrs } : void 0;
18752
+ }
18753
+ });
18754
+ const translator$1R = NodeTranslator.from({
18755
+ xmlName: "w:eastAsianLayout",
18756
+ sdNodeOrKeyName: "eastAsianLayout",
18757
+ attributes: [
18758
+ createIntegerAttributeHandler("w:id"),
18759
+ createBooleanAttributeHandler("w:combine"),
18760
+ createAttributeHandler("w:combineBrackets"),
18761
+ createBooleanAttributeHandler("w:vert"),
18762
+ createBooleanAttributeHandler("w:vertCompress")
18763
+ ],
18764
+ encode: (_2, encodedAttrs) => {
18765
+ return encodedAttrs;
18766
+ },
18767
+ decode: function({ node }) {
18768
+ const decodedAttrs = this.decodeAttributes({ node: { ...node, attrs: node.attrs["eastAsianLayout"] || {} } });
18769
+ return Object.keys(decodedAttrs).length > 0 ? { attributes: decodedAttrs } : void 0;
18770
+ }
18771
+ });
18772
+ const translator$1Q = NodeTranslator.from(createSingleBooleanPropertyHandler("w:rtl"));
18773
+ const translator$1P = NodeTranslator.from(createSingleBooleanPropertyHandler("w:cs"));
18774
+ const translator$1O = NodeTranslator.from(createSingleBooleanPropertyHandler("w:iCs"));
18775
+ const translator$1N = NodeTranslator.from(createSingleBooleanPropertyHandler("w:webHidden"));
18725
18776
  const propertyTranslators$b = [
18726
- translator$20,
18727
- translator$1$,
18728
- translator$1_,
18729
- translator$1Z,
18730
- translator$1Y,
18777
+ translator$2l,
18778
+ translator$2m,
18779
+ translator$2k,
18780
+ translator$2a,
18781
+ translator$2f,
18782
+ translator$1P,
18783
+ translator$2g,
18784
+ translator$1R,
18731
18785
  translator$1X,
18732
18786
  translator$1W,
18787
+ translator$23,
18788
+ translator$1S,
18789
+ translator$2e,
18790
+ translator$2b,
18791
+ translator$2c,
18792
+ translator$2o,
18733
18793
  translator$22,
18734
- translator$1V,
18794
+ translator$2j,
18795
+ translator$1O,
18735
18796
  translator$1U,
18797
+ translator$28,
18798
+ translator$27,
18799
+ translator$21,
18800
+ translator$20,
18801
+ translator$1$,
18736
18802
  translator$1T,
18737
- translator$1S,
18738
- translator$1R,
18739
18803
  translator$1Q,
18740
- translator$1P,
18741
- translator$1O
18804
+ translator$2d,
18805
+ translator$1_,
18806
+ translator$29,
18807
+ translator$25,
18808
+ translator$24,
18809
+ translator$1Y,
18810
+ translator$2h,
18811
+ translator$2i,
18812
+ translator$1Z,
18813
+ translator$26,
18814
+ translator$1N,
18815
+ translator$1V
18742
18816
  ];
18743
- const translator$1N = NodeTranslator.from(
18817
+ const translator$1M = NodeTranslator.from(
18744
18818
  createNestedPropertiesTranslator("w:rPr", "runProperties", propertyTranslators$b)
18745
18819
  );
18746
18820
  const SUPPORTED_ALTERNATE_CONTENT_REQUIRES = /* @__PURE__ */ new Set([
@@ -18822,18 +18896,18 @@ function selectAlternateContentElements(node) {
18822
18896
  elements: carbonCopy(selectedElements)
18823
18897
  };
18824
18898
  }
18825
- const translator$1M = NodeTranslator.from(config$l);
18899
+ const translator$1L = NodeTranslator.from(config$l);
18826
18900
  function buildPath(existingPath = [], node, branch) {
18827
18901
  const path = [...existingPath];
18828
18902
  if (node) path.push(node);
18829
18903
  if (branch) path.push(branch);
18830
18904
  return path;
18831
18905
  }
18832
- const translator$1L = NodeTranslator.from(createSingleBooleanPropertyHandler("w:adjustRightInd"));
18833
- const translator$1K = NodeTranslator.from(createSingleBooleanPropertyHandler("w:autoSpaceDE"));
18834
- const translator$1J = NodeTranslator.from(createSingleBooleanPropertyHandler("w:autoSpaceDN"));
18835
- const translator$1I = NodeTranslator.from(createSingleBooleanPropertyHandler("w:bidi", "rightToLeft"));
18836
- const translator$1H = NodeTranslator.from({
18906
+ const translator$1K = NodeTranslator.from(createSingleBooleanPropertyHandler("w:adjustRightInd"));
18907
+ const translator$1J = NodeTranslator.from(createSingleBooleanPropertyHandler("w:autoSpaceDE"));
18908
+ const translator$1I = NodeTranslator.from(createSingleBooleanPropertyHandler("w:autoSpaceDN"));
18909
+ const translator$1H = NodeTranslator.from(createSingleBooleanPropertyHandler("w:bidi", "rightToLeft"));
18910
+ const translator$1G = NodeTranslator.from({
18837
18911
  xmlName: "w:cnfStyle",
18838
18912
  sdNodeOrKeyName: "cnfStyle",
18839
18913
  attributes: [
@@ -18859,9 +18933,9 @@ const translator$1H = NodeTranslator.from({
18859
18933
  return Object.keys(decodedAttrs).length > 0 ? { attributes: decodedAttrs } : void 0;
18860
18934
  }
18861
18935
  });
18862
- const translator$1G = NodeTranslator.from(createSingleBooleanPropertyHandler("w:contextualSpacing"));
18863
- const translator$1F = NodeTranslator.from(createSingleAttrPropertyHandler("w:divId"));
18864
- const translator$1E = NodeTranslator.from({
18936
+ const translator$1F = NodeTranslator.from(createSingleBooleanPropertyHandler("w:contextualSpacing"));
18937
+ const translator$1E = NodeTranslator.from(createSingleAttrPropertyHandler("w:divId"));
18938
+ const translator$1D = NodeTranslator.from({
18865
18939
  xmlName: "w:framePr",
18866
18940
  sdNodeOrKeyName: "framePr",
18867
18941
  attributes: [
@@ -18889,7 +18963,7 @@ const translator$1E = NodeTranslator.from({
18889
18963
  return Object.keys(decodedAttrs).length > 0 ? { attributes: decodedAttrs } : void 0;
18890
18964
  }
18891
18965
  });
18892
- const translator$1D = NodeTranslator.from({
18966
+ const translator$1C = NodeTranslator.from({
18893
18967
  xmlName: "w:ind",
18894
18968
  sdNodeOrKeyName: "indent",
18895
18969
  attributes: [
@@ -18914,12 +18988,12 @@ const translator$1D = NodeTranslator.from({
18914
18988
  return Object.keys(decodedAttrs).length > 0 ? { attributes: decodedAttrs } : void 0;
18915
18989
  }
18916
18990
  });
18917
- const translator$1C = NodeTranslator.from(createSingleAttrPropertyHandler("w:jc", "justification"));
18918
- const translator$1B = NodeTranslator.from(createSingleBooleanPropertyHandler("w:keepLines"));
18919
- const translator$1A = NodeTranslator.from(createSingleBooleanPropertyHandler("w:keepNext"));
18920
- const translator$1z = NodeTranslator.from(createSingleBooleanPropertyHandler("w:kinsoku"));
18921
- const translator$1y = NodeTranslator.from(createSingleBooleanPropertyHandler("w:mirrorIndents"));
18922
- const translator$1x = NodeTranslator.from(createSingleIntegerPropertyHandler("w:ilvl"));
18991
+ const translator$1B = NodeTranslator.from(createSingleAttrPropertyHandler("w:jc", "justification"));
18992
+ const translator$1A = NodeTranslator.from(createSingleBooleanPropertyHandler("w:keepLines"));
18993
+ const translator$1z = NodeTranslator.from(createSingleBooleanPropertyHandler("w:keepNext"));
18994
+ const translator$1y = NodeTranslator.from(createSingleBooleanPropertyHandler("w:kinsoku"));
18995
+ const translator$1x = NodeTranslator.from(createSingleBooleanPropertyHandler("w:mirrorIndents"));
18996
+ const translator$1w = NodeTranslator.from(createSingleIntegerPropertyHandler("w:ilvl"));
18923
18997
  const createTrackStyleMark = (marks) => {
18924
18998
  const trackStyleMark = marks.find((mark) => mark.type === "trackFormat");
18925
18999
  if (trackStyleMark) {
@@ -19001,41 +19075,40 @@ const config$k = {
19001
19075
  decode: decode$D,
19002
19076
  attributes: validXmlAttributes$c
19003
19077
  };
19004
- const translator$1w = NodeTranslator.from(config$k);
19005
- const translator$1v = NodeTranslator.from(createSingleIntegerPropertyHandler("w:numId"));
19006
- const propertyTranslators$a = [translator$1M, translator$1x, translator$1w, translator$1v];
19007
- const translator$1u = NodeTranslator.from(
19078
+ const translator$1v = NodeTranslator.from(config$k);
19079
+ const translator$1u = NodeTranslator.from(createSingleIntegerPropertyHandler("w:numId"));
19080
+ const propertyTranslators$a = [translator$1L, translator$1w, translator$1v, translator$1u];
19081
+ const translator$1t = NodeTranslator.from(
19008
19082
  createNestedPropertiesTranslator("w:numPr", "numberingProperties", propertyTranslators$a)
19009
19083
  );
19010
- const translator$1t = NodeTranslator.from(
19084
+ const translator$1s = NodeTranslator.from(
19011
19085
  createSingleAttrPropertyHandler("w:outlineLvl", "outlineLvl", "w:val", parseInteger, integerToString)
19012
19086
  );
19013
- const translator$1s = NodeTranslator.from(createSingleBooleanPropertyHandler("w:overflowPunct"));
19014
- const translator$1r = NodeTranslator.from(createBorderPropertyHandler("w:bar"));
19015
- const translator$1q = NodeTranslator.from(createBorderPropertyHandler("w:between"));
19016
- const translator$1p = NodeTranslator.from(createBorderPropertyHandler("w:bottom"));
19017
- const translator$1o = NodeTranslator.from(createMeasurementPropertyHandler("w:bottom", "marginBottom"));
19018
- const translator$1n = NodeTranslator.from(createBorderPropertyHandler("w:left"));
19019
- const translator$1m = NodeTranslator.from(createMeasurementPropertyHandler("w:left", "marginLeft"));
19020
- const translator$1l = NodeTranslator.from(createBorderPropertyHandler("w:right"));
19021
- const translator$1k = NodeTranslator.from(createMeasurementPropertyHandler("w:right", "marginRight"));
19022
- const translator$1j = NodeTranslator.from(createBorderPropertyHandler("w:top"));
19023
- const translator$1i = NodeTranslator.from(createMeasurementPropertyHandler("w:top", "marginTop"));
19087
+ const translator$1r = NodeTranslator.from(createSingleBooleanPropertyHandler("w:overflowPunct"));
19088
+ const translator$1q = NodeTranslator.from(createBorderPropertyHandler("w:bar"));
19089
+ const translator$1p = NodeTranslator.from(createBorderPropertyHandler("w:between"));
19090
+ const translator$1o = NodeTranslator.from(createBorderPropertyHandler("w:bottom"));
19091
+ const translator$1n = NodeTranslator.from(createMeasurementPropertyHandler("w:bottom", "marginBottom"));
19092
+ const translator$1m = NodeTranslator.from(createBorderPropertyHandler("w:left"));
19093
+ const translator$1l = NodeTranslator.from(createMeasurementPropertyHandler("w:left", "marginLeft"));
19094
+ const translator$1k = NodeTranslator.from(createBorderPropertyHandler("w:right"));
19095
+ const translator$1j = NodeTranslator.from(createMeasurementPropertyHandler("w:right", "marginRight"));
19096
+ const translator$1i = NodeTranslator.from(createBorderPropertyHandler("w:top"));
19097
+ const translator$1h = NodeTranslator.from(createMeasurementPropertyHandler("w:top", "marginTop"));
19024
19098
  const propertyTranslators$9 = [
19025
- translator$1M,
19026
- translator$1r,
19099
+ translator$1L,
19027
19100
  translator$1q,
19028
19101
  translator$1p,
19029
- translator$1n,
19030
- translator$1l,
19031
- translator$1j
19102
+ translator$1o,
19103
+ translator$1m,
19104
+ translator$1k,
19105
+ translator$1i
19032
19106
  ];
19033
- const translator$1h = NodeTranslator.from(
19107
+ const translator$1g = NodeTranslator.from(
19034
19108
  createNestedPropertiesTranslator("w:pBdr", "borders", propertyTranslators$9)
19035
19109
  );
19036
- const translator$1g = NodeTranslator.from(createSingleAttrPropertyHandler("w:pStyle", "styleId"));
19037
- const translator$1f = NodeTranslator.from(createSingleBooleanPropertyHandler("w:pageBreakBefore"));
19038
- const translator$1e = NodeTranslator.from(createSingleBooleanPropertyHandler("w:snapToGrid"));
19110
+ const translator$1f = NodeTranslator.from(createSingleAttrPropertyHandler("w:pStyle", "styleId"));
19111
+ const translator$1e = NodeTranslator.from(createSingleBooleanPropertyHandler("w:pageBreakBefore"));
19039
19112
  const translator$1d = NodeTranslator.from({
19040
19113
  xmlName: "w:spacing",
19041
19114
  sdNodeOrKeyName: "spacing",
@@ -19060,7 +19133,7 @@ const translator$1d = NodeTranslator.from({
19060
19133
  const translator$1c = NodeTranslator.from(createSingleBooleanPropertyHandler("w:suppressAutoHyphens"));
19061
19134
  const translator$1b = NodeTranslator.from(createSingleBooleanPropertyHandler("w:suppressLineNumbers"));
19062
19135
  const translator$1a = NodeTranslator.from(createSingleBooleanPropertyHandler("w:suppressOverlap"));
19063
- const propertyTranslators$8 = [translator$1M, translator$21];
19136
+ const propertyTranslators$8 = [translator$1L, translator$2n];
19064
19137
  const translator$19 = NodeTranslator.from(
19065
19138
  createNestedArrayPropertyHandler("w:tabs", "tabStops", propertyTranslators$8, { skipRun: true })
19066
19139
  );
@@ -19071,7 +19144,6 @@ const translator$15 = NodeTranslator.from(createSingleBooleanPropertyHandler("w:
19071
19144
  const translator$14 = NodeTranslator.from(createSingleBooleanPropertyHandler("w:widowControl"));
19072
19145
  const translator$13 = NodeTranslator.from(createSingleBooleanPropertyHandler("w:wordWrap"));
19073
19146
  const propertyTranslators$7 = [
19074
- translator$1M,
19075
19147
  translator$1L,
19076
19148
  translator$1K,
19077
19149
  translator$1J,
@@ -19086,14 +19158,15 @@ const propertyTranslators$7 = [
19086
19158
  translator$1A,
19087
19159
  translator$1z,
19088
19160
  translator$1y,
19089
- translator$1u,
19161
+ translator$1x,
19090
19162
  translator$1t,
19091
19163
  translator$1s,
19092
- translator$1h,
19164
+ translator$1r,
19093
19165
  translator$1g,
19094
19166
  translator$1f,
19095
- translator$1Q,
19096
19167
  translator$1e,
19168
+ translator$29,
19169
+ translator$24,
19097
19170
  translator$1d,
19098
19171
  translator$1c,
19099
19172
  translator$1b,
@@ -19105,7 +19178,7 @@ const propertyTranslators$7 = [
19105
19178
  translator$15,
19106
19179
  translator$14,
19107
19180
  translator$13,
19108
- translator$1N
19181
+ translator$1M
19109
19182
  ];
19110
19183
  const translator$12 = NodeTranslator.from(
19111
19184
  createNestedPropertiesTranslator("w:pPr", "paragraphProperties", propertyTranslators$7)
@@ -19178,12 +19251,12 @@ const INLINE_OVERRIDE_PROPERTIES = ["fontSize", "bold", "italic", "strike", "und
19178
19251
  const DEFAULT_FONT_SIZE_HALF_POINTS = 20;
19179
19252
  const resolveRunProperties = (params2, inlineRpr, resolvedPpr, isListNumber = false, numberingDefinedInline = false) => {
19180
19253
  const paragraphStyleId = resolvedPpr?.styleId;
19181
- const paragraphStyleProps = resolveStyleChain$1(params2, paragraphStyleId, translator$1N);
19182
- const defaultProps2 = getDefaultProperties(params2, translator$1N);
19183
- const { properties: normalProps, isDefault: isNormalDefault } = getStyleProperties(params2, "Normal", translator$1N);
19254
+ const paragraphStyleProps = resolveStyleChain$1(params2, paragraphStyleId, translator$1M);
19255
+ const defaultProps2 = getDefaultProperties(params2, translator$1M);
19256
+ const { properties: normalProps, isDefault: isNormalDefault } = getStyleProperties(params2, "Normal", translator$1M);
19184
19257
  let runStyleProps = {};
19185
19258
  if (!paragraphStyleId?.startsWith("TOC")) {
19186
- runStyleProps = inlineRpr.styleId ? resolveStyleChain$1(params2, inlineRpr.styleId, translator$1N) : {};
19259
+ runStyleProps = inlineRpr.styleId ? resolveStyleChain$1(params2, inlineRpr.styleId, translator$1M) : {};
19187
19260
  }
19188
19261
  let styleChain;
19189
19262
  if (isNormalDefault) {
@@ -19199,7 +19272,7 @@ const resolveRunProperties = (params2, inlineRpr, resolvedPpr, isListNumber = fa
19199
19272
  params2,
19200
19273
  resolvedPpr.numberingProperties.ilvl ?? 0,
19201
19274
  numId,
19202
- translator$1N
19275
+ translator$1M
19203
19276
  );
19204
19277
  }
19205
19278
  if (!numberingDefinedInline) {
@@ -19361,6 +19434,7 @@ function getStyleProperties(params2, styleId, translator2) {
19361
19434
  }
19362
19435
  function getNumberingProperties(params2, ilvl, numId, translator2, tries = 0) {
19363
19436
  const { numbering: allDefinitions } = params2;
19437
+ if (!allDefinitions) return {};
19364
19438
  const { definitions, abstracts } = allDefinitions;
19365
19439
  const propertiesChain = [];
19366
19440
  const numDefinition = definitions[numId];
@@ -19788,13 +19862,12 @@ function decodeRPrFromMarks(marks) {
19788
19862
  return runProperties;
19789
19863
  }
19790
19864
  marks.forEach((mark) => {
19791
- switch (mark.type.name ?? mark.type) {
19865
+ const type2 = mark.type.name ?? mark.type;
19866
+ switch (type2) {
19792
19867
  case "strike":
19793
19868
  case "italic":
19794
19869
  case "bold":
19795
- if (mark.attrs.value != null) {
19796
- runProperties[mark.type] = mark.attrs.value;
19797
- }
19870
+ runProperties[type2] = mark.attrs.value !== "0" && mark.attrs.value !== false;
19798
19871
  break;
19799
19872
  case "underline": {
19800
19873
  const { underlineType, underlineColor } = mark.attrs;
@@ -20043,7 +20116,7 @@ function handleStyleChangeMarksV2(rPrChange, currentMarks, params2) {
20043
20116
  let submarks = [];
20044
20117
  const rPr = rPrChange.elements?.find((el) => el.name === "w:rPr");
20045
20118
  if (rPr) {
20046
- const runProperties = translator$1N.encode({ ...params2, nodes: [rPr] });
20119
+ const runProperties = translator$1M.encode({ ...params2, nodes: [rPr] });
20047
20120
  submarks = encodeMarksFromRPr(runProperties, params2?.docx);
20048
20121
  }
20049
20122
  return [{ type: TrackFormatMarkName$1, attrs: { ...mappedAttributes, before: submarks, after: [...currentMarks] } }];
@@ -20605,8 +20678,8 @@ const validXmlAttributes$a = [
20605
20678
  {
20606
20679
  xmlName: "w:history",
20607
20680
  sdName: "history",
20608
- encode: (attributes) => attributes["w:history"] === "1" || attributes["w:history"] === "true",
20609
- decode: (attributes) => attributes["history"] ? "1" : "0"
20681
+ encode: (attributes) => attributes["w:history"] == null ? null : attributes["w:history"] === "1" || attributes["w:history"] === "true",
20682
+ decode: (attributes) => attributes["history"] == null ? null : attributes["history"] ? "1" : "0"
20610
20683
  },
20611
20684
  _createAttributeHandler("w:tooltip", "tooltip"),
20612
20685
  _createAttributeHandler("r:id", "rId"),
@@ -20749,7 +20822,7 @@ const encode$o = (params2, encodedAttrs = {}) => {
20749
20822
  if (!runNode) return void 0;
20750
20823
  const elements = Array.isArray(runNode.elements) ? runNode.elements : [];
20751
20824
  const rPrNode = elements.find((child) => child?.name === "w:rPr");
20752
- const runProperties = rPrNode ? translator$1N.encode({ ...params2, nodes: [rPrNode] }) : {};
20825
+ const runProperties = rPrNode ? translator$1M.encode({ ...params2, nodes: [rPrNode] }) : {};
20753
20826
  const paragraphProperties = params2?.extraParams?.paragraphProperties || {};
20754
20827
  const resolvedRunProperties = resolveRunProperties(params2, runProperties ?? {}, paragraphProperties);
20755
20828
  const marks = encodeMarksFromRPr(resolvedRunProperties, params2?.docx) || [];
@@ -20810,29 +20883,37 @@ const decode$q = (params2, decodedAttrs = {}) => {
20810
20883
  const { runNode: runNodeForExport, trackingMarksByType } = prepareRunTrackingContext(node);
20811
20884
  const runAttrs = runNodeForExport.attrs || {};
20812
20885
  const runProperties = runAttrs.runProperties || {};
20813
- const marksProperties = decodeRPrFromMarks(runNodeForExport.marks || []);
20814
- const finalRunProperties = combineRunProperties([runProperties, marksProperties]);
20815
20886
  const exportParams = {
20816
20887
  ...params2,
20817
20888
  node: runNodeForExport,
20818
- extraParams: { ...params2?.extraParams, runProperties: finalRunProperties }
20889
+ extraParams: { ...params2?.extraParams, runProperties }
20819
20890
  };
20820
20891
  if (!exportParams.editor) {
20821
20892
  exportParams.editor = { extensionService: { extensions: [] } };
20822
20893
  }
20823
20894
  const childElements = translateChildNodes(exportParams) || [];
20824
- let runPropertiesElement = translator$1N.decode({
20895
+ let runPropertiesElement = translator$1M.decode({
20825
20896
  ...params2,
20826
- node: { attrs: { runProperties: finalRunProperties } }
20897
+ node: { attrs: { runProperties } }
20827
20898
  });
20828
20899
  const runPropsTemplate = runPropertiesElement ? cloneXmlNode(runPropertiesElement) : null;
20829
20900
  const applyBaseRunProps = (runNode) => applyRunPropertiesTemplate(runNode, runPropsTemplate);
20901
+ const replaceRunProps = (runNode) => {
20902
+ if (Array.isArray(runNode.elements)) {
20903
+ runNode.elements = runNode.elements.filter((el) => el?.name !== "w:rPr");
20904
+ } else {
20905
+ runNode.elements = [];
20906
+ }
20907
+ if (runPropsTemplate) {
20908
+ runNode.elements.unshift(cloneXmlNode(runPropsTemplate));
20909
+ }
20910
+ };
20830
20911
  const runs = [];
20831
20912
  childElements.forEach((child) => {
20832
20913
  if (!child) return;
20833
20914
  if (child.name === "w:r") {
20834
20915
  const clonedRun = cloneXmlNode(child);
20835
- applyBaseRunProps(clonedRun);
20916
+ replaceRunProps(clonedRun);
20836
20917
  runs.push(clonedRun);
20837
20918
  return;
20838
20919
  }
@@ -20848,7 +20929,7 @@ const decode$q = (params2, decodedAttrs = {}) => {
20848
20929
  const trackedClone = cloneXmlNode(child);
20849
20930
  if (Array.isArray(trackedClone.elements)) {
20850
20931
  trackedClone.elements.forEach((element) => {
20851
- if (element?.name === "w:r") applyBaseRunProps(element);
20932
+ if (element?.name === "w:r") replaceRunProps(element);
20852
20933
  });
20853
20934
  }
20854
20935
  runs.push(trackedClone);
@@ -20910,12 +20991,12 @@ const translator$S = NodeTranslator.from(createMeasurementPropertyHandler("w:sta
20910
20991
  const translator$R = NodeTranslator.from(createBorderPropertyHandler("w:tl2br"));
20911
20992
  const translator$Q = NodeTranslator.from(createBorderPropertyHandler("w:tr2bl"));
20912
20993
  const propertyTranslators$6 = [
20913
- translator$1j,
20994
+ translator$1i,
20914
20995
  translator$T,
20915
- translator$1n,
20916
- translator$1p,
20996
+ translator$1m,
20997
+ translator$1o,
20917
20998
  translator$X,
20918
- translator$1l,
20999
+ translator$1k,
20919
21000
  translator$V,
20920
21001
  translator$U,
20921
21002
  translator$R,
@@ -20934,12 +21015,12 @@ const translator$O = NodeTranslator.from(
20934
21015
  )
20935
21016
  );
20936
21017
  const propertyTranslators$5 = [
20937
- translator$1o,
21018
+ translator$1n,
20938
21019
  translator$W,
20939
- translator$1m,
20940
- translator$1k,
21020
+ translator$1l,
21021
+ translator$1j,
20941
21022
  translator$S,
20942
- translator$1i
21023
+ translator$1h
20943
21024
  ];
20944
21025
  const translator$N = NodeTranslator.from(
20945
21026
  createNestedPropertiesTranslator("w:tcMar", "cellMargins", propertyTranslators$5)
@@ -20968,12 +21049,12 @@ const translator$I = NodeTranslator.from(
20968
21049
  createNestedArrayPropertyHandler("w:headers", "headers", [translator$J])
20969
21050
  );
20970
21051
  const propertyTranslators$4 = [
20971
- translator$1H,
21052
+ translator$1G,
20972
21053
  translator$_,
20973
21054
  translator$Z,
20974
21055
  translator$Y,
20975
21056
  translator$P,
20976
- translator$1Q,
21057
+ translator$29,
20977
21058
  translator$O,
20978
21059
  translator$N,
20979
21060
  translator$17,
@@ -21429,12 +21510,12 @@ const translator$y = NodeTranslator.from(createMeasurementPropertyHandler("w:wAf
21429
21510
  const translator$x = NodeTranslator.from(createMeasurementPropertyHandler("w:wBefore"));
21430
21511
  const propertyTranslators$3 = [
21431
21512
  translator$F,
21432
- translator$1H,
21433
- translator$1F,
21513
+ translator$1G,
21514
+ translator$1E,
21434
21515
  translator$E,
21435
21516
  translator$D,
21436
21517
  translator$C,
21437
- translator$1C,
21518
+ translator$1B,
21438
21519
  translator$B,
21439
21520
  translator$A,
21440
21521
  translator$z,
@@ -36844,7 +36925,7 @@ function getTextNodeForExport(text, marks, params2) {
36844
36925
  const textRunProperties = decodeRPrFromMarks(marks || []);
36845
36926
  const parentRunProperties = params2.extraParams?.runProperties || {};
36846
36927
  const combinedRunProperties = combineRunProperties([parentRunProperties, textRunProperties]);
36847
- const rPrNode = translator$1N.decode({ node: { attrs: { runProperties: combinedRunProperties } } });
36928
+ const rPrNode = translator$1M.decode({ node: { attrs: { runProperties: combinedRunProperties } } });
36848
36929
  textNodes.push({
36849
36930
  name: "w:t",
36850
36931
  elements: [{ text, type: "text" }],
@@ -37786,33 +37867,33 @@ const translator$f = NodeTranslator.from({
37786
37867
  }
37787
37868
  });
37788
37869
  const propertyTranslators$2 = [
37789
- translator$1p,
37870
+ translator$1o,
37790
37871
  translator$X,
37791
37872
  translator$V,
37792
37873
  translator$U,
37793
- translator$1n,
37794
- translator$1l,
37874
+ translator$1m,
37875
+ translator$1k,
37795
37876
  translator$T,
37796
- translator$1j
37877
+ translator$1i
37797
37878
  ];
37798
37879
  const translator$e = NodeTranslator.from(
37799
37880
  createNestedPropertiesTranslator("w:tblBorders", "borders", propertyTranslators$2)
37800
37881
  );
37801
37882
  const propertyTranslators$1 = [
37802
- translator$1o,
37883
+ translator$1n,
37803
37884
  translator$W,
37804
- translator$1m,
37805
- translator$1k,
37885
+ translator$1l,
37886
+ translator$1j,
37806
37887
  translator$S,
37807
- translator$1i
37888
+ translator$1h
37808
37889
  ];
37809
37890
  const translator$d = NodeTranslator.from(
37810
37891
  createNestedPropertiesTranslator("w:tblCellMar", "cellMargins", propertyTranslators$1)
37811
37892
  );
37812
37893
  const propertyTranslators = [
37813
37894
  translator$q,
37814
- translator$1C,
37815
- translator$1Q,
37895
+ translator$1B,
37896
+ translator$29,
37816
37897
  translator$p,
37817
37898
  translator$B,
37818
37899
  translator$o,
@@ -39083,7 +39164,7 @@ const handleTrackChangeNode = (params2) => {
39083
39164
  });
39084
39165
  break;
39085
39166
  case "w:ins":
39086
- result = translator$1w.encode({
39167
+ result = translator$1v.encode({
39087
39168
  ...translatorParams,
39088
39169
  extraParams: {
39089
39170
  ...translatorParams.extraParams,
@@ -39139,7 +39220,7 @@ const decode$1 = (params2) => {
39139
39220
  case "trackDelete":
39140
39221
  return translator$2.decode(params2);
39141
39222
  case "trackInsert":
39142
- return translator$1w.decode(params2);
39223
+ return translator$1v.decode(params2);
39143
39224
  }
39144
39225
  }
39145
39226
  const isLinkNode = node.marks?.some((m2) => m2.type === "link");
@@ -39215,33 +39296,40 @@ const sdtNodeHandlerEntity = {
39215
39296
  };
39216
39297
  const translatorList = Array.from(
39217
39298
  /* @__PURE__ */ new Set([
39218
- translator$1M,
39299
+ translator$1L,
39219
39300
  translator$6,
39220
39301
  translator$5,
39221
39302
  translator$4,
39222
39303
  translator$3,
39223
- translator$1L,
39224
39304
  translator$1K,
39225
39305
  translator$1J,
39226
- translator$20,
39227
- translator$1r,
39228
- translator$1$,
39306
+ translator$1I,
39307
+ translator$2m,
39308
+ translator$1q,
39309
+ translator$2l,
39310
+ translator$2k,
39229
39311
  translator$q,
39230
39312
  translator$7,
39231
39313
  translator$8,
39232
- translator$1p,
39233
- translator$23,
39314
+ translator$1o,
39315
+ translator$2p,
39234
39316
  translator$F,
39235
- translator$1R,
39236
- translator$1H,
39237
- translator$1W,
39317
+ translator$2a,
39238
39318
  translator$1G,
39239
- translator$2,
39319
+ translator$2f,
39240
39320
  translator$1F,
39321
+ translator$1P,
39322
+ translator$2,
39323
+ translator$1E,
39241
39324
  translator$s,
39325
+ translator$2g,
39326
+ translator$1R,
39242
39327
  translator$1X,
39328
+ translator$1W,
39329
+ translator$23,
39243
39330
  translator$X,
39244
- translator$1E,
39331
+ translator$1S,
39332
+ translator$1D,
39245
39333
  translator$E,
39246
39334
  translator$D,
39247
39335
  translator$b,
@@ -39250,49 +39338,60 @@ const translatorList = Array.from(
39250
39338
  translator$I,
39251
39339
  translator$C,
39252
39340
  translator$K,
39253
- translator$22,
39341
+ translator$2o,
39254
39342
  translator$10,
39255
- translator$1_,
39256
- translator$1x,
39257
- translator$1D,
39343
+ translator$2j,
39344
+ translator$1O,
39258
39345
  translator$1w,
39346
+ translator$1C,
39347
+ translator$22,
39348
+ translator$1v,
39259
39349
  translator$V,
39260
39350
  translator$U,
39261
- translator$1C,
39262
39351
  translator$1B,
39263
39352
  translator$1A,
39264
39353
  translator$1z,
39265
- translator$1P,
39266
- translator$1n,
39354
+ translator$1U,
39267
39355
  translator$1y,
39356
+ translator$28,
39357
+ translator$1m,
39358
+ translator$1x,
39359
+ translator$21,
39268
39360
  translator$O,
39269
- translator$1v,
39270
39361
  translator$1u,
39271
39362
  translator$1t,
39363
+ translator$1$,
39272
39364
  translator$1s,
39365
+ translator$1r,
39366
+ translator$20,
39273
39367
  translator$11,
39274
- translator$1f,
39275
- translator$1h,
39276
- translator$12,
39368
+ translator$1e,
39277
39369
  translator$1g,
39370
+ translator$1T,
39371
+ translator$12,
39372
+ translator$1f,
39278
39373
  translator$$,
39279
- translator$1V,
39280
- translator$1N,
39281
- translator$1U,
39282
- translator$1l,
39283
- translator$r,
39374
+ translator$2e,
39375
+ translator$1M,
39376
+ translator$2d,
39284
39377
  translator$1Q,
39285
- translator$1e,
39378
+ translator$1k,
39379
+ translator$r,
39380
+ translator$1_,
39381
+ translator$29,
39382
+ translator$25,
39383
+ translator$24,
39286
39384
  translator$1d,
39287
39385
  translator$1c,
39288
39386
  translator$1b,
39289
39387
  translator$1a,
39290
- translator$T,
39291
39388
  translator$1Y,
39292
- translator$1T,
39293
- translator$1S,
39389
+ translator$T,
39390
+ translator$2h,
39391
+ translator$2c,
39392
+ translator$2b,
39294
39393
  translator$1,
39295
- translator$21,
39394
+ translator$2n,
39296
39395
  translator$19,
39297
39396
  translator$9,
39298
39397
  translator$e,
@@ -39327,12 +39426,16 @@ const translatorList = Array.from(
39327
39426
  translator$18,
39328
39427
  translator$16,
39329
39428
  translator$15,
39330
- translator$1j,
39331
- translator$1Z,
39429
+ translator$1i,
39430
+ translator$2i,
39332
39431
  translator$L,
39432
+ translator$1Z,
39433
+ translator$26,
39333
39434
  translator$Y,
39435
+ translator$1V,
39334
39436
  translator$y,
39335
39437
  translator$x,
39438
+ translator$1N,
39336
39439
  translator$14,
39337
39440
  translator$13,
39338
39441
  translator$u,
@@ -39440,7 +39543,7 @@ const handler = (params2) => {
39440
39543
  if (nodes.length === 0 || nodes[0].name !== "w:br") {
39441
39544
  return { nodes: [], consumed: 0 };
39442
39545
  }
39443
- const result = translator$23.encode(params2);
39546
+ const result = translator$2p.encode(params2);
39444
39547
  if (!result) return { nodes: [], consumed: 0 };
39445
39548
  return {
39446
39549
  nodes: [result],
@@ -39584,7 +39687,7 @@ const handleAlternateChoice = (params2) => {
39584
39687
  ...currentNode,
39585
39688
  type: "element"
39586
39689
  };
39587
- const translated = translator$1M.encode({
39690
+ const translated = translator$1L.encode({
39588
39691
  ...params2,
39589
39692
  nodes: [nodeForTranslator],
39590
39693
  extraParams: { ...params2.extraParams || {}, node: nodeForTranslator }
@@ -40090,7 +40193,7 @@ const handleTabNode = (params2) => {
40090
40193
  if (!nodes.length || nodes[0].name !== "w:tab") {
40091
40194
  return { nodes: [], consumed: 0 };
40092
40195
  }
40093
- const node = translator$21.encode(params2);
40196
+ const node = translator$2n.encode(params2);
40094
40197
  return { nodes: [node], consumed: 1 };
40095
40198
  };
40096
40199
  const tabNodeEntityHandler = {
@@ -41169,7 +41272,7 @@ function translateContentBlock(params2) {
41169
41272
  if (vmlAttributes || horizontalRule) {
41170
41273
  return translateVRectContentBlock(params2);
41171
41274
  }
41172
- const alternateContent = translator$1M.decode(params2);
41275
+ const alternateContent = translator$1L.decode(params2);
41173
41276
  return wrapTextInRun(alternateContent);
41174
41277
  }
41175
41278
  function translateVRectContentBlock(params2) {
@@ -41316,16 +41419,16 @@ function exportSchemaToJson(params2) {
41316
41419
  paragraph: translator$11,
41317
41420
  run: translator$$,
41318
41421
  text: translator$1,
41319
- lineBreak: translator$23,
41422
+ lineBreak: translator$2p,
41320
41423
  table: translator$9,
41321
41424
  tableRow: translator$v,
41322
41425
  tableCell: translator$G,
41323
41426
  bookmarkStart: translator$8,
41324
41427
  bookmarkEnd: translator$7,
41325
41428
  fieldAnnotation: translator$r,
41326
- tab: translator$21,
41429
+ tab: translator$2n,
41327
41430
  image: translator$s,
41328
- hardBreak: translator$23,
41431
+ hardBreak: translator$2p,
41329
41432
  commentRangeStart: commentRangeStartTranslator,
41330
41433
  commentRangeEnd: commentRangeEndTranslator,
41331
41434
  commentReference: () => null,
@@ -41489,7 +41592,7 @@ function translateMark(mark) {
41489
41592
  markElement.type = "element";
41490
41593
  break;
41491
41594
  case "underline": {
41492
- const translated = translator$1Z.decode({
41595
+ const translated = translator$2i.decode({
41493
41596
  node: {
41494
41597
  attrs: {
41495
41598
  underlineType: attrs.underlineType ?? attrs.underline ?? null,
@@ -41553,7 +41656,7 @@ function translateMark(mark) {
41553
41656
  break;
41554
41657
  case "highlight": {
41555
41658
  const highlightValue = attrs.color ?? attrs.highlight ?? null;
41556
- const translated = translator$22.decode({ node: { attrs: { highlight: highlightValue } } });
41659
+ const translated = translator$2o.decode({ node: { attrs: { highlight: highlightValue } } });
41557
41660
  return translated || {};
41558
41661
  }
41559
41662
  case "strike":
@@ -42065,7 +42168,7 @@ const _SuperConverter = class _SuperConverter2 {
42065
42168
  static getStoredSuperdocVersion(docx) {
42066
42169
  return _SuperConverter2.getStoredCustomProperty(docx, "SuperdocVersion");
42067
42170
  }
42068
- static setStoredSuperdocVersion(docx = this.convertedXml, version2 = "1.0.0-beta.54") {
42171
+ static setStoredSuperdocVersion(docx = this.convertedXml, version2 = "1.0.0-beta.55") {
42069
42172
  return _SuperConverter2.setStoredCustomProperty(docx, "SuperdocVersion", version2, false);
42070
42173
  }
42071
42174
  /**
@@ -59247,7 +59350,7 @@ const isHeadless = (editor) => {
59247
59350
  const shouldSkipNodeView = (editor) => {
59248
59351
  return isHeadless(editor);
59249
59352
  };
59250
- const summaryVersion = "1.0.0-beta.54";
59353
+ const summaryVersion = "1.0.0-beta.55";
59251
59354
  const nodeKeys = ["group", "content", "marks", "inline", "atom", "defining", "code", "tableRole", "summary"];
59252
59355
  const markKeys = ["group", "inclusive", "excludes", "spanning", "code"];
59253
59356
  function mapAttributes(attrs) {
@@ -60036,7 +60139,7 @@ const _Editor = class _Editor2 extends EventEmitter$1 {
60036
60139
  { default: remarkStringify },
60037
60140
  { default: remarkGfm }
60038
60141
  ] = await Promise.all([
60039
- import("./index-t8thQIOL-vW80ABaR.es.js"),
60142
+ import("./index-bqjMjne1-DBB94Dlj.es.js"),
60040
60143
  import("./index-DRCvimau-Cw339678.es.js"),
60041
60144
  import("./index-C_x_N6Uh-DJn8hIEt.es.js"),
60042
60145
  import("./index-D_sWOSiG-DE96TaT5.es.js"),
@@ -60241,7 +60344,7 @@ const _Editor = class _Editor2 extends EventEmitter$1 {
60241
60344
  * Process collaboration migrations
60242
60345
  */
60243
60346
  processCollaborationMigrations() {
60244
- console.debug("[checkVersionMigrations] Current editor version", "1.0.0-beta.54");
60347
+ console.debug("[checkVersionMigrations] Current editor version", "1.0.0-beta.55");
60245
60348
  if (!this.options.ydoc) return;
60246
60349
  const metaMap = this.options.ydoc.getMap("meta");
60247
60350
  let docVersion = metaMap.get("version");
@@ -90319,7 +90422,7 @@ const cleanupEmptyRunsPlugin = new Plugin({
90319
90422
  return tr.docChanged ? tr : null;
90320
90423
  }
90321
90424
  });
90322
- const mergeRanges$1 = (ranges, docSize) => {
90425
+ const mergeRanges$2 = (ranges, docSize) => {
90323
90426
  if (!ranges.length) return [];
90324
90427
  const sorted = ranges.map(({ from: from2, to }) => ({
90325
90428
  from: Math.max(0, from2),
@@ -90348,7 +90451,7 @@ const collectChangedRanges = (trs, docSize) => {
90348
90451
  });
90349
90452
  });
90350
90453
  });
90351
- return mergeRanges$1(ranges, docSize);
90454
+ return mergeRanges$2(ranges, docSize);
90352
90455
  };
90353
90456
  const mapRangesThroughTransactions = (ranges, transactions, docSize) => {
90354
90457
  let mapped = ranges;
@@ -90360,7 +90463,7 @@ const mapRangesThroughTransactions = (ranges, transactions, docSize) => {
90360
90463
  return { from: mappedFrom, to: mappedTo };
90361
90464
  }).filter(Boolean);
90362
90465
  });
90363
- return mergeRanges$1(mapped, docSize);
90466
+ return mergeRanges$2(mapped, docSize);
90364
90467
  };
90365
90468
  const buildWrapTransaction = (state2, ranges, runType) => {
90366
90469
  if (!ranges.length) return null;
@@ -90419,7 +90522,7 @@ const wrapTextInRunsPlugin = () => {
90419
90522
  if (!runType) return null;
90420
90523
  pendingRanges = mapRangesThroughTransactions(pendingRanges, transactions, docSize);
90421
90524
  const changedRanges = collectChangedRanges(transactions, docSize);
90422
- pendingRanges = mergeRanges$1([...pendingRanges, ...changedRanges], docSize);
90525
+ pendingRanges = mergeRanges$2([...pendingRanges, ...changedRanges], docSize);
90423
90526
  if (view?.composing) {
90424
90527
  return null;
90425
90528
  }
@@ -90429,6 +90532,204 @@ const wrapTextInRunsPlugin = () => {
90429
90532
  }
90430
90533
  });
90431
90534
  };
90535
+ const splitRunsAfterMarkPlugin = new Plugin({
90536
+ appendTransaction(transactions, _old, newState) {
90537
+ const markRanges = [];
90538
+ let mappingToFinal = new Mapping();
90539
+ for (let ti = transactions.length - 1; ti >= 0; ti--) {
90540
+ const tr2 = transactions[ti];
90541
+ tr2.steps.forEach((step) => {
90542
+ if (!(step instanceof AddMarkStep || step instanceof RemoveMarkStep)) return;
90543
+ const fromAfterTr = tr2.mapping.map(step.from, 1);
90544
+ const toAfterTr = tr2.mapping.map(step.to, -1);
90545
+ markRanges.push({
90546
+ from: mappingToFinal.map(fromAfterTr, 1),
90547
+ to: mappingToFinal.map(toAfterTr, -1)
90548
+ });
90549
+ });
90550
+ const composed = new Mapping();
90551
+ composed.appendMapping(tr2.mapping);
90552
+ composed.appendMapping(mappingToFinal);
90553
+ mappingToFinal = composed;
90554
+ }
90555
+ if (!markRanges.length) return null;
90556
+ const runType = newState.schema.nodes["run"];
90557
+ if (!runType) return null;
90558
+ const runPositions = /* @__PURE__ */ new Set();
90559
+ markRanges.forEach(({ from: from2, to }) => {
90560
+ newState.doc.nodesBetween(from2, to, (node, pos) => {
90561
+ if (node.type === runType) runPositions.add(pos);
90562
+ });
90563
+ });
90564
+ if (!runPositions.size) return null;
90565
+ const tr = newState.tr;
90566
+ const originalSelection = newState.selection;
90567
+ const isTextSelection2 = originalSelection instanceof TextSelection$1;
90568
+ let preservedAnchor = isTextSelection2 ? originalSelection.anchor : null;
90569
+ let preservedHead = isTextSelection2 ? originalSelection.head : null;
90570
+ const anchorAssoc = preservedAnchor != null && preservedHead != null && preservedAnchor <= preservedHead ? -1 : 1;
90571
+ const headAssoc = preservedAnchor != null && preservedHead != null && preservedHead >= preservedAnchor ? 1 : -1;
90572
+ const mapOffsetThroughReplacement = (startPos, replacement, offset2) => {
90573
+ let currentPos = startPos;
90574
+ let remaining = offset2;
90575
+ let mapped = null;
90576
+ replacement.forEach((node) => {
90577
+ if (mapped != null) return;
90578
+ const contentSize = node.content.size;
90579
+ if (remaining <= contentSize) {
90580
+ mapped = currentPos + 1 + remaining;
90581
+ return;
90582
+ }
90583
+ remaining -= contentSize;
90584
+ currentPos += node.nodeSize;
90585
+ });
90586
+ return mapped ?? currentPos;
90587
+ };
90588
+ Array.from(runPositions).sort((a, b2) => b2 - a).forEach((pos) => {
90589
+ const mappedPos = tr.mapping.map(pos);
90590
+ const runNode = tr.doc.nodeAt(mappedPos);
90591
+ if (!runNode) return;
90592
+ const groups = [];
90593
+ let current = [];
90594
+ let currentMarks = null;
90595
+ runNode.forEach((child) => {
90596
+ if (child.isText) {
90597
+ if (currentMarks && Mark$1.sameSet(currentMarks, child.marks)) {
90598
+ current.push(child);
90599
+ } else {
90600
+ if (current.length) groups.push(Fragment.from(current));
90601
+ current = [child];
90602
+ currentMarks = child.marks;
90603
+ }
90604
+ } else {
90605
+ if (current.length) groups.push(Fragment.from(current));
90606
+ groups.push(Fragment.from(child));
90607
+ current = [];
90608
+ currentMarks = null;
90609
+ }
90610
+ });
90611
+ if (current.length) groups.push(Fragment.from(current));
90612
+ if (groups.length <= 1) return;
90613
+ const replacement = Fragment.from(
90614
+ groups.map((content) => runType.create(runNode.attrs, content, runNode.marks))
90615
+ );
90616
+ tr.replaceWith(mappedPos, mappedPos + runNode.nodeSize, replacement);
90617
+ const stepMap = tr.mapping.maps[tr.mapping.maps.length - 1];
90618
+ const mapSelectionPos = (pos2, assoc) => {
90619
+ if (pos2 == null) return null;
90620
+ if (pos2 < mappedPos || pos2 > mappedPos + runNode.nodeSize) {
90621
+ return stepMap.map(pos2, assoc);
90622
+ }
90623
+ const offsetInRun = pos2 - (mappedPos + 1);
90624
+ return mapOffsetThroughReplacement(mappedPos, replacement, offsetInRun);
90625
+ };
90626
+ preservedAnchor = mapSelectionPos(preservedAnchor, anchorAssoc);
90627
+ preservedHead = mapSelectionPos(preservedHead, headAssoc);
90628
+ });
90629
+ if (tr.docChanged && originalSelection) {
90630
+ if (originalSelection instanceof TextSelection$1 && preservedAnchor != null && preservedHead != null) {
90631
+ tr.setSelection(TextSelection$1.create(tr.doc, preservedAnchor, preservedHead));
90632
+ } else {
90633
+ tr.setSelection(originalSelection.map(tr.doc, tr.mapping));
90634
+ }
90635
+ }
90636
+ return tr.docChanged ? tr : null;
90637
+ }
90638
+ });
90639
+ const calculateInlineRunPropertiesPlugin = (editor) => new Plugin({
90640
+ appendTransaction(transactions, _oldState, newState) {
90641
+ const tr = newState.tr;
90642
+ if (!transactions.some((t) => t.docChanged)) return null;
90643
+ if (!transactions.some(
90644
+ (tr2) => tr2.steps.some((step) => step instanceof AddMarkStep || step instanceof RemoveMarkStep)
90645
+ )) {
90646
+ return null;
90647
+ }
90648
+ const runType = newState.schema.nodes.run;
90649
+ if (!runType) return null;
90650
+ const changedRanges = [];
90651
+ transactions.forEach((tr2) => {
90652
+ tr2.steps.forEach((step) => {
90653
+ const from2 = tr2.mapping.map(step.from, 1);
90654
+ const to = tr2.mapping.map(step.to, -1);
90655
+ changedRanges.push({ from: from2, to });
90656
+ });
90657
+ });
90658
+ const runPositions = /* @__PURE__ */ new Set();
90659
+ mergeRanges$1(changedRanges, newState.doc.content.size).forEach(({ from: from2, to }) => {
90660
+ newState.doc.nodesBetween(from2, to, (node, pos) => {
90661
+ if (node.type === runType) runPositions.add(pos);
90662
+ });
90663
+ });
90664
+ if (!runPositions.size) return null;
90665
+ runPositions.forEach((pos) => {
90666
+ const runNode = tr.doc.nodeAt(pos);
90667
+ if (!runNode) return;
90668
+ const $pos = tr.doc.resolve(pos);
90669
+ let paragraphNode = null;
90670
+ for (let depth = $pos.depth; depth >= 0; depth--) {
90671
+ const node = $pos.node(depth);
90672
+ if (node.type.name === "paragraph") {
90673
+ paragraphNode = node;
90674
+ break;
90675
+ }
90676
+ }
90677
+ if (!paragraphNode) return;
90678
+ const marks = getMarksFromRun(runNode);
90679
+ const runPropertiesFromMarks = decodeRPrFromMarks(marks);
90680
+ const paragraphProperties = getResolvedParagraphProperties(paragraphNode) || calculateResolvedParagraphProperties(editor, paragraphNode, $pos);
90681
+ const runPropertiesFromStyles = resolveRunProperties(
90682
+ { docx: editor.converter?.convertedXml ?? {}, numbering: editor.converter?.numbering ?? {} },
90683
+ {},
90684
+ paragraphProperties,
90685
+ false,
90686
+ Boolean(paragraphNode.attrs.paragraphProperties?.numberingProperties)
90687
+ );
90688
+ const inlineRunProperties = getInlineRunProperties(runPropertiesFromMarks, runPropertiesFromStyles);
90689
+ const runProperties = Object.keys(inlineRunProperties).length ? inlineRunProperties : null;
90690
+ if (JSON.stringify(runProperties) === JSON.stringify(runNode.attrs.runProperties)) return;
90691
+ tr.setNodeMarkup(pos, runNode.type, { ...runNode.attrs, runProperties }, runNode.marks);
90692
+ });
90693
+ return tr.docChanged ? tr : null;
90694
+ }
90695
+ });
90696
+ function getMarksFromRun(runNode) {
90697
+ let marks = [];
90698
+ runNode.forEach((child) => {
90699
+ if (!marks.length && child.isText) {
90700
+ marks = child.marks;
90701
+ }
90702
+ });
90703
+ return marks;
90704
+ }
90705
+ function getInlineRunProperties(runPropertiesFromMarks, runPropertiesFromStyles) {
90706
+ const inlineRunProperties = {};
90707
+ for (const key2 in runPropertiesFromMarks) {
90708
+ const valueFromMarks = runPropertiesFromMarks[key2];
90709
+ const valueFromStyles = runPropertiesFromStyles[key2];
90710
+ if (JSON.stringify(valueFromMarks) !== JSON.stringify(valueFromStyles)) {
90711
+ inlineRunProperties[key2] = valueFromMarks;
90712
+ }
90713
+ }
90714
+ return inlineRunProperties;
90715
+ }
90716
+ function mergeRanges$1(ranges, docSize) {
90717
+ if (!ranges.length) return [];
90718
+ const sorted = ranges.map(({ from: from2, to }) => ({
90719
+ from: Math.max(0, from2),
90720
+ to: Math.min(docSize, to)
90721
+ })).filter(({ from: from2, to }) => from2 < to).sort((a, b2) => a.from - b2.from);
90722
+ const merged = [];
90723
+ for (const range2 of sorted) {
90724
+ const last = merged[merged.length - 1];
90725
+ if (last && range2.from <= last.to) {
90726
+ last.to = Math.max(last.to, range2.to);
90727
+ } else {
90728
+ merged.push({ ...range2 });
90729
+ }
90730
+ }
90731
+ return merged;
90732
+ }
90432
90733
  const Run = OxmlNode.create({
90433
90734
  name: "run",
90434
90735
  oXmlName: "w:r",
@@ -90483,7 +90784,12 @@ const Run = OxmlNode.create({
90483
90784
  return ["span", base2, 0];
90484
90785
  },
90485
90786
  addPmPlugins() {
90486
- return [wrapTextInRunsPlugin(), cleanupEmptyRunsPlugin];
90787
+ return [
90788
+ wrapTextInRunsPlugin(),
90789
+ splitRunsAfterMarkPlugin,
90790
+ calculateInlineRunPropertiesPlugin(this.editor),
90791
+ cleanupEmptyRunsPlugin
90792
+ ];
90487
90793
  }
90488
90794
  });
90489
90795
  const restartNumbering = ({ editor, tr, state: state2, dispatch }) => {
@@ -95310,7 +95616,9 @@ const TableCell = Node$1.create({
95310
95616
  const style2 = sides.map((side) => {
95311
95617
  const border = borders?.[side];
95312
95618
  if (border && border.val === "none") return `border-${side}: ${border.val};`;
95313
- if (border) return `border-${side}: ${Math.ceil(border.size)}px solid ${border.color || "black"};`;
95619
+ let color = border?.color || "black";
95620
+ if (color === "auto") color = "black";
95621
+ if (border) return `border-${side}: ${Math.ceil(border.size)}px solid ${color};`;
95314
95622
  return "";
95315
95623
  }).join(" ");
95316
95624
  return { style: style2 };