@harbour-enterprises/superdoc 0.24.0-next.3 → 0.24.0-next.4
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.
- package/dist/chunks/{PdfViewer-DEWI6Uts.es.js → PdfViewer-D7C8g2G4.es.js} +1 -1
- package/dist/chunks/{PdfViewer-skWUtg2N.cjs → PdfViewer-kOVuv-4I.cjs} +1 -1
- package/dist/chunks/blank-docx-ABm6XYAA.es.js +4 -0
- package/dist/chunks/blank-docx-DfW3Eeh2.cjs +3 -0
- package/dist/chunks/{index-2QL0aZ2S.cjs → index-BFKwBQjS.cjs} +12 -4
- package/dist/chunks/{index-C_AMhrHP.es.js → index-CnEAVnHQ.es.js} +12 -4
- package/dist/chunks/{super-editor.es-CfK_qBM9.cjs → super-editor.es-BmGTQ05x.cjs} +1010 -859
- package/dist/chunks/{super-editor.es-iMAoOYOw.es.js → super-editor.es-CBPoWvjs.es.js} +1010 -859
- package/dist/core/SuperDoc.d.ts.map +1 -1
- package/dist/core/types/index.d.ts.map +1 -1
- package/dist/style.css +27 -27
- package/dist/super-editor/ai-writer.es.js +2 -2
- package/dist/super-editor/chunks/{converter-BueCftlx.js → converter-DpPj67OW.js} +916 -863
- package/dist/super-editor/chunks/{docx-zipper-C9jmfWYZ.js → docx-zipper-6Kc95yG-.js} +1 -1
- package/dist/super-editor/chunks/{editor-BsuNqVvp.js → editor-Dx6AhT5N.js} +124 -6
- package/dist/super-editor/chunks/{toolbar-DxhfgAoa.js → toolbar-CXSg2lJ9.js} +2 -2
- package/dist/super-editor/converter.es.js +1 -1
- package/dist/super-editor/docx-zipper.es.js +2 -2
- package/dist/super-editor/editor.es.js +3 -3
- package/dist/super-editor/file-zipper.es.js +1 -1
- package/dist/super-editor/super-editor/src/core/Editor.d.ts +11 -0
- package/dist/super-editor/super-editor/src/core/helpers/canRenderFont.d.ts +12 -0
- package/dist/super-editor/super-editor/src/core/super-converter/SuperConverter.d.ts +6 -1
- package/dist/super-editor/super-editor/src/core/super-converter/helpers.d.ts +1 -1
- package/dist/super-editor/super-editor/src/core/super-converter/v2/importer/docxImporter.d.ts +2 -1
- package/dist/super-editor/super-editor/src/core/super-converter/v2/importer/tableImporter.d.ts +5 -3
- package/dist/super-editor/super-editor/src/core/super-converter/v2/importer/types/index.d.ts +4 -0
- package/dist/super-editor/super-editor/src/core/super-converter/v3/handlers/utils.d.ts +9 -0
- package/dist/super-editor/super-editor/src/core/super-converter/v3/handlers/w/gridSpan/gridSpan-translator.d.ts +6 -0
- package/dist/super-editor/super-editor/src/core/super-converter/v3/handlers/w/gridSpan/index.d.ts +1 -0
- package/dist/super-editor/super-editor/src/core/super-converter/v3/handlers/w/header/header-translator.d.ts +6 -0
- package/dist/super-editor/super-editor/src/core/super-converter/v3/handlers/w/header/index.d.ts +1 -0
- package/dist/super-editor/super-editor/src/core/super-converter/v3/handlers/w/headers/headers-translator.d.ts +7 -0
- package/dist/super-editor/super-editor/src/core/super-converter/v3/handlers/w/headers/index.d.ts +1 -0
- package/dist/super-editor/super-editor/src/core/super-converter/v3/handlers/w/hideMark/hideMark-translator.d.ts +6 -0
- package/dist/super-editor/super-editor/src/core/super-converter/v3/handlers/w/hideMark/index.d.ts +1 -0
- package/dist/super-editor/super-editor/src/core/super-converter/v3/handlers/w/noWrap/index.d.ts +1 -0
- package/dist/super-editor/super-editor/src/core/super-converter/v3/handlers/w/noWrap/noWrap-translator.d.ts +6 -0
- package/dist/super-editor/super-editor/src/core/super-converter/v3/handlers/w/shd/shd-translator.d.ts +1 -1
- package/dist/super-editor/super-editor/src/core/super-converter/v3/handlers/w/tc/helpers/translate-table-cell.d.ts +0 -5
- package/dist/super-editor/super-editor/src/core/super-converter/v3/handlers/w/tcBorders/index.d.ts +1 -0
- package/dist/super-editor/super-editor/src/core/super-converter/v3/handlers/w/tcBorders/tcBorders-translator.d.ts +6 -0
- package/dist/super-editor/super-editor/src/core/super-converter/v3/handlers/w/tcFitText/index.d.ts +1 -0
- package/dist/super-editor/super-editor/src/core/super-converter/v3/handlers/w/tcFitText/tcFitText-translator.d.ts +6 -0
- package/dist/super-editor/super-editor/src/core/super-converter/v3/handlers/w/tcMar/index.d.ts +1 -0
- package/dist/super-editor/super-editor/src/core/super-converter/v3/handlers/w/tcMar/tcMar-translator.d.ts +6 -0
- package/dist/super-editor/super-editor/src/core/super-converter/v3/handlers/w/tcPr/index.d.ts +1 -0
- package/dist/super-editor/super-editor/src/core/super-converter/v3/handlers/w/tcPr/tcPr-translator.d.ts +5 -0
- package/dist/super-editor/super-editor/src/core/super-converter/v3/handlers/w/tcW/index.d.ts +1 -0
- package/dist/super-editor/super-editor/src/core/super-converter/v3/handlers/w/tcW/tcW-translator.d.ts +6 -0
- package/dist/super-editor/super-editor/src/core/super-converter/v3/handlers/w/textDirection/index.d.ts +1 -0
- package/dist/super-editor/super-editor/src/core/super-converter/v3/handlers/w/textDirection/textDirection-translator.d.ts +6 -0
- package/dist/super-editor/super-editor/src/core/super-converter/v3/handlers/w/tl2br/index.d.ts +1 -0
- package/dist/super-editor/super-editor/src/core/super-converter/v3/handlers/w/tl2br/tl2br-translator.d.ts +6 -0
- package/dist/super-editor/super-editor/src/core/super-converter/v3/handlers/w/tr2bl/index.d.ts +1 -0
- package/dist/super-editor/super-editor/src/core/super-converter/v3/handlers/w/tr2bl/tr2bl-translator.d.ts +6 -0
- package/dist/super-editor/super-editor/src/core/super-converter/v3/handlers/w/vAlign/index.d.ts +1 -0
- package/dist/super-editor/super-editor/src/core/super-converter/v3/handlers/w/vAlign/vAlign-translator.d.ts +6 -0
- package/dist/super-editor/super-editor/src/core/super-converter/v3/handlers/w/vMerge/index.d.ts +1 -0
- package/dist/super-editor/super-editor/src/core/super-converter/v3/handlers/w/vMerge/vMerge-translator.d.ts +6 -0
- package/dist/super-editor/super-editor/src/extensions/table-cell/table-cell.d.ts +112 -0
- package/dist/super-editor/super-editor.es.js +91 -76
- package/dist/super-editor/toolbar.es.js +2 -2
- package/dist/super-editor.cjs +1 -1
- package/dist/super-editor.es.js +1 -1
- package/dist/superdoc.cjs +3 -3
- package/dist/superdoc.es.js +3 -3
- package/dist/superdoc.umd.js +1020 -861
- package/dist/superdoc.umd.js.map +1 -1
- package/package.json +1 -1
- package/dist/chunks/blank-docx-CPqX9RF5.cjs +0 -3
- package/dist/chunks/blank-docx-iwdyG9RH.es.js +0 -4
package/dist/superdoc.umd.js
CHANGED
|
@@ -22871,9 +22871,9 @@
|
|
|
22871
22871
|
if (typeof px === "string") px = parseFloat(px);
|
|
22872
22872
|
return Math.round(px * 9525);
|
|
22873
22873
|
}
|
|
22874
|
-
function
|
|
22875
|
-
if (
|
|
22876
|
-
const points = parseFloat(
|
|
22874
|
+
function eighthPointsToPixels(eighthPoints) {
|
|
22875
|
+
if (eighthPoints == null) return;
|
|
22876
|
+
const points = parseFloat(eighthPoints) / 8;
|
|
22877
22877
|
const pixels = points * 1.3333;
|
|
22878
22878
|
return pixels;
|
|
22879
22879
|
}
|
|
@@ -32277,37 +32277,37 @@ Please report this to https://github.com/markedjs/marked.`, e) {
|
|
|
32277
32277
|
};
|
|
32278
32278
|
__publicField$2(_NodeTranslator, "translatorTypes", TranslatorTypes);
|
|
32279
32279
|
let NodeTranslator = _NodeTranslator;
|
|
32280
|
-
const encode$
|
|
32280
|
+
const encode$1b = (attributes) => {
|
|
32281
32281
|
return attributes["w:type"];
|
|
32282
32282
|
};
|
|
32283
|
-
const decode$
|
|
32283
|
+
const decode$13 = (attrs) => {
|
|
32284
32284
|
const { lineBreakType } = attrs;
|
|
32285
32285
|
return lineBreakType;
|
|
32286
32286
|
};
|
|
32287
32287
|
const attrConfig$G = Object.freeze({
|
|
32288
32288
|
xmlName: "w:type",
|
|
32289
32289
|
sdName: "lineBreakType",
|
|
32290
|
-
encode: encode$
|
|
32291
|
-
decode: decode$
|
|
32290
|
+
encode: encode$1b,
|
|
32291
|
+
decode: decode$13
|
|
32292
32292
|
});
|
|
32293
|
-
const encode$
|
|
32293
|
+
const encode$1a = (attributes) => {
|
|
32294
32294
|
const xmlAttrValue = attributes["w:clear"];
|
|
32295
32295
|
return xmlAttrValue;
|
|
32296
32296
|
};
|
|
32297
|
-
const decode$
|
|
32297
|
+
const decode$12 = (attrs) => {
|
|
32298
32298
|
const { clear } = attrs;
|
|
32299
32299
|
return clear;
|
|
32300
32300
|
};
|
|
32301
32301
|
const attrConfig$F = Object.freeze({
|
|
32302
32302
|
xmlName: "w:clear",
|
|
32303
32303
|
sdName: "clear",
|
|
32304
|
-
encode: encode$
|
|
32305
|
-
decode: decode$
|
|
32304
|
+
encode: encode$1a,
|
|
32305
|
+
decode: decode$12
|
|
32306
32306
|
});
|
|
32307
32307
|
const validXmlAttributes$p = [attrConfig$G, attrConfig$F];
|
|
32308
|
-
const XML_NODE_NAME$
|
|
32308
|
+
const XML_NODE_NAME$y = "w:br";
|
|
32309
32309
|
const SD_NODE_NAME$h = "lineBreak";
|
|
32310
|
-
const encode$
|
|
32310
|
+
const encode$19 = (_2, encodedAttrs) => {
|
|
32311
32311
|
const isPageBreak = encodedAttrs?.lineBreakType === "page";
|
|
32312
32312
|
const translated = {
|
|
32313
32313
|
type: isPageBreak ? "hardBreak" : "lineBreak"
|
|
@@ -32317,7 +32317,7 @@ Please report this to https://github.com/markedjs/marked.`, e) {
|
|
|
32317
32317
|
}
|
|
32318
32318
|
return translated;
|
|
32319
32319
|
};
|
|
32320
|
-
const decode$
|
|
32320
|
+
const decode$11 = (params2, decodedAttrs) => {
|
|
32321
32321
|
const { node } = params2;
|
|
32322
32322
|
if (!node) return;
|
|
32323
32323
|
const wBreak = { name: "w:br" };
|
|
@@ -32334,39 +32334,39 @@ Please report this to https://github.com/markedjs/marked.`, e) {
|
|
|
32334
32334
|
};
|
|
32335
32335
|
return translated;
|
|
32336
32336
|
};
|
|
32337
|
-
const config$
|
|
32338
|
-
xmlName: XML_NODE_NAME$
|
|
32337
|
+
const config$x = {
|
|
32338
|
+
xmlName: XML_NODE_NAME$y,
|
|
32339
32339
|
sdNodeOrKeyName: SD_NODE_NAME$h,
|
|
32340
32340
|
type: NodeTranslator.translatorTypes.NODE,
|
|
32341
|
-
encode: encode$
|
|
32342
|
-
decode: decode$
|
|
32341
|
+
encode: encode$19,
|
|
32342
|
+
decode: decode$11,
|
|
32343
32343
|
attributes: validXmlAttributes$p
|
|
32344
32344
|
};
|
|
32345
|
-
const translator$
|
|
32346
|
-
const encode$
|
|
32347
|
-
const decode$
|
|
32345
|
+
const translator$1r = NodeTranslator.from(config$x);
|
|
32346
|
+
const encode$18 = (attributes) => attributes?.["w:val"];
|
|
32347
|
+
const decode$10 = (attrs) => attrs?.highlight;
|
|
32348
32348
|
const attrConfig$E = Object.freeze({
|
|
32349
32349
|
xmlName: "w:val",
|
|
32350
32350
|
sdName: "highlight",
|
|
32351
|
-
encode: encode$
|
|
32352
|
-
decode: decode$
|
|
32351
|
+
encode: encode$18,
|
|
32352
|
+
decode: decode$10
|
|
32353
32353
|
});
|
|
32354
32354
|
const validXmlAttributes$o = [attrConfig$E];
|
|
32355
|
-
const XML_NODE_NAME$
|
|
32356
|
-
const SD_ATTR_KEY$
|
|
32355
|
+
const XML_NODE_NAME$x = "w:highlight";
|
|
32356
|
+
const SD_ATTR_KEY$f = "highlight";
|
|
32357
32357
|
const DISABLED_TOKENS = /* @__PURE__ */ new Set(["transparent", "none", "inherit"]);
|
|
32358
|
-
const encode$
|
|
32358
|
+
const encode$17 = (params2, encodedAttrs = {}) => {
|
|
32359
32359
|
const { nodes } = params2;
|
|
32360
32360
|
const node = nodes?.[0];
|
|
32361
32361
|
const value = encodedAttrs.highlight ?? node?.attributes?.["w:val"];
|
|
32362
32362
|
return {
|
|
32363
32363
|
type: "attr",
|
|
32364
|
-
xmlName: XML_NODE_NAME$
|
|
32365
|
-
sdNodeOrKeyName: SD_ATTR_KEY$
|
|
32364
|
+
xmlName: XML_NODE_NAME$x,
|
|
32365
|
+
sdNodeOrKeyName: SD_ATTR_KEY$f,
|
|
32366
32366
|
attributes: { "w:val": value ?? null }
|
|
32367
32367
|
};
|
|
32368
32368
|
};
|
|
32369
|
-
const decode
|
|
32369
|
+
const decode$$ = (params2) => {
|
|
32370
32370
|
const attrs = params2?.node?.attrs || {};
|
|
32371
32371
|
const highlightValue = attrs.highlight ?? attrs.color ?? null;
|
|
32372
32372
|
if (!highlightValue) return void 0;
|
|
@@ -32374,14 +32374,14 @@ Please report this to https://github.com/markedjs/marked.`, e) {
|
|
|
32374
32374
|
if (!normalizedValue) return void 0;
|
|
32375
32375
|
if (DISABLED_TOKENS.has(normalizedValue)) {
|
|
32376
32376
|
return {
|
|
32377
|
-
name: XML_NODE_NAME$
|
|
32377
|
+
name: XML_NODE_NAME$x,
|
|
32378
32378
|
attributes: { "w:val": "none" }
|
|
32379
32379
|
};
|
|
32380
32380
|
}
|
|
32381
32381
|
const keyword = getDocxHighlightKeywordFromHex(highlightValue);
|
|
32382
32382
|
if (keyword) {
|
|
32383
32383
|
return {
|
|
32384
|
-
name: XML_NODE_NAME$
|
|
32384
|
+
name: XML_NODE_NAME$x,
|
|
32385
32385
|
attributes: { "w:val": keyword }
|
|
32386
32386
|
};
|
|
32387
32387
|
}
|
|
@@ -32396,63 +32396,63 @@ Please report this to https://github.com/markedjs/marked.`, e) {
|
|
|
32396
32396
|
}
|
|
32397
32397
|
};
|
|
32398
32398
|
};
|
|
32399
|
-
const config$
|
|
32400
|
-
xmlName: XML_NODE_NAME$
|
|
32401
|
-
sdNodeOrKeyName: SD_ATTR_KEY$
|
|
32399
|
+
const config$w = {
|
|
32400
|
+
xmlName: XML_NODE_NAME$x,
|
|
32401
|
+
sdNodeOrKeyName: SD_ATTR_KEY$f,
|
|
32402
32402
|
type: NodeTranslator.translatorTypes.ATTRIBUTE,
|
|
32403
|
-
encode: encode$
|
|
32404
|
-
decode: decode
|
|
32403
|
+
encode: encode$17,
|
|
32404
|
+
decode: decode$$,
|
|
32405
32405
|
attributes: validXmlAttributes$o
|
|
32406
32406
|
};
|
|
32407
|
-
const translator$
|
|
32408
|
-
const encode$
|
|
32407
|
+
const translator$1q = NodeTranslator.from(config$w);
|
|
32408
|
+
const encode$16 = (attributes) => {
|
|
32409
32409
|
return attributes["w:val"];
|
|
32410
32410
|
};
|
|
32411
|
-
const decode$
|
|
32411
|
+
const decode$_ = (attrs) => {
|
|
32412
32412
|
const { tabSize } = attrs || {};
|
|
32413
32413
|
return tabSize;
|
|
32414
32414
|
};
|
|
32415
32415
|
const attrConfig$D = Object.freeze({
|
|
32416
32416
|
xmlName: "w:val",
|
|
32417
32417
|
sdName: "tabSize",
|
|
32418
|
-
encode: encode$
|
|
32419
|
-
decode: decode$
|
|
32418
|
+
encode: encode$16,
|
|
32419
|
+
decode: decode$_
|
|
32420
32420
|
});
|
|
32421
|
-
const encode$
|
|
32421
|
+
const encode$15 = (attributes) => {
|
|
32422
32422
|
return attributes["w:leader"];
|
|
32423
32423
|
};
|
|
32424
|
-
const decode$
|
|
32424
|
+
const decode$Z = (attrs) => {
|
|
32425
32425
|
const { leader } = attrs || {};
|
|
32426
32426
|
return leader;
|
|
32427
32427
|
};
|
|
32428
32428
|
const attrConfig$C = Object.freeze({
|
|
32429
32429
|
xmlName: "w:leader",
|
|
32430
32430
|
sdName: "leader",
|
|
32431
|
-
encode: encode$
|
|
32432
|
-
decode: decode$
|
|
32431
|
+
encode: encode$15,
|
|
32432
|
+
decode: decode$Z
|
|
32433
32433
|
});
|
|
32434
|
-
const encode$
|
|
32434
|
+
const encode$14 = (attributes) => {
|
|
32435
32435
|
return attributes["w:pos"];
|
|
32436
32436
|
};
|
|
32437
|
-
const decode
|
|
32437
|
+
const decode$Y = (attrs) => {
|
|
32438
32438
|
const { pos } = attrs || {};
|
|
32439
32439
|
return pos;
|
|
32440
32440
|
};
|
|
32441
32441
|
const attrConfig$B = Object.freeze({
|
|
32442
32442
|
xmlName: "w:pos",
|
|
32443
32443
|
sdName: "pos",
|
|
32444
|
-
encode: encode$
|
|
32445
|
-
decode: decode
|
|
32444
|
+
encode: encode$14,
|
|
32445
|
+
decode: decode$Y
|
|
32446
32446
|
});
|
|
32447
32447
|
const validXmlAttributes$n = [attrConfig$D, attrConfig$B, attrConfig$C];
|
|
32448
|
-
const XML_NODE_NAME$
|
|
32448
|
+
const XML_NODE_NAME$w = "w:tab";
|
|
32449
32449
|
const SD_NODE_NAME$g = "tab";
|
|
32450
|
-
const encode$
|
|
32450
|
+
const encode$13 = (_2, encodedAttrs = {}) => {
|
|
32451
32451
|
const translated = { type: "tab" };
|
|
32452
32452
|
if (encodedAttrs) translated.attrs = { ...encodedAttrs };
|
|
32453
32453
|
return translated;
|
|
32454
32454
|
};
|
|
32455
|
-
const decode$
|
|
32455
|
+
const decode$X = (params2, decodedAttrs = {}) => {
|
|
32456
32456
|
const { node } = params2 || {};
|
|
32457
32457
|
if (!node) return;
|
|
32458
32458
|
const wTab = { name: "w:tab" };
|
|
@@ -32468,15 +32468,15 @@ Please report this to https://github.com/markedjs/marked.`, e) {
|
|
|
32468
32468
|
}
|
|
32469
32469
|
return translated;
|
|
32470
32470
|
};
|
|
32471
|
-
const config$
|
|
32472
|
-
xmlName: XML_NODE_NAME$
|
|
32471
|
+
const config$v = {
|
|
32472
|
+
xmlName: XML_NODE_NAME$w,
|
|
32473
32473
|
sdNodeOrKeyName: SD_NODE_NAME$g,
|
|
32474
32474
|
type: NodeTranslator.translatorTypes.NODE,
|
|
32475
|
-
encode: encode$
|
|
32476
|
-
decode: decode$
|
|
32475
|
+
encode: encode$13,
|
|
32476
|
+
decode: decode$X,
|
|
32477
32477
|
attributes: validXmlAttributes$n
|
|
32478
32478
|
};
|
|
32479
|
-
const translator$
|
|
32479
|
+
const translator$1p = NodeTranslator.from(config$v);
|
|
32480
32480
|
const mergeTextNodes = (nodes) => {
|
|
32481
32481
|
if (!nodes || !Array.isArray(nodes)) {
|
|
32482
32482
|
return nodes;
|
|
@@ -32702,9 +32702,9 @@ Please report this to https://github.com/markedjs/marked.`, e) {
|
|
|
32702
32702
|
const { attributes: a } = el;
|
|
32703
32703
|
if (a["w:val"] === "nil" || a["w:val"] === void 0) return;
|
|
32704
32704
|
let sizePx;
|
|
32705
|
-
if (a["w:sz"] !== void 0) sizePx =
|
|
32705
|
+
if (a["w:sz"] !== void 0) sizePx = eighthPointsToPixels(a["w:sz"]);
|
|
32706
32706
|
let spacePx;
|
|
32707
|
-
if (a["w:space"] !== void 0) spacePx =
|
|
32707
|
+
if (a["w:space"] !== void 0) spacePx = eighthPointsToPixels(a["w:space"]);
|
|
32708
32708
|
result[side] = {
|
|
32709
32709
|
val: a["w:val"],
|
|
32710
32710
|
size: sizePx,
|
|
@@ -32994,89 +32994,89 @@ Please report this to https://github.com/markedjs/marked.`, e) {
|
|
|
32994
32994
|
}
|
|
32995
32995
|
return schemaNode;
|
|
32996
32996
|
};
|
|
32997
|
-
const encode$
|
|
32997
|
+
const encode$12 = (attributes) => {
|
|
32998
32998
|
return attributes["w:rsidDel"];
|
|
32999
32999
|
};
|
|
33000
|
-
const decode$
|
|
33000
|
+
const decode$W = (attrs) => {
|
|
33001
33001
|
return attrs.rsidDel;
|
|
33002
33002
|
};
|
|
33003
33003
|
const attrConfig$A = Object.freeze({
|
|
33004
33004
|
xmlName: "w:rsidDel",
|
|
33005
33005
|
sdName: "rsidDel",
|
|
33006
|
-
encode: encode$
|
|
33007
|
-
decode: decode$
|
|
33006
|
+
encode: encode$12,
|
|
33007
|
+
decode: decode$W
|
|
33008
33008
|
});
|
|
33009
|
-
const encode$
|
|
33009
|
+
const encode$11 = (attributes) => {
|
|
33010
33010
|
return attributes["w:rsidP"];
|
|
33011
33011
|
};
|
|
33012
|
-
const decode$
|
|
33012
|
+
const decode$V = (attrs) => {
|
|
33013
33013
|
return attrs.rsidP;
|
|
33014
33014
|
};
|
|
33015
33015
|
const attrConfig$z = Object.freeze({
|
|
33016
33016
|
xmlName: "w:rsidP",
|
|
33017
33017
|
sdName: "rsidP",
|
|
33018
|
-
encode: encode$
|
|
33019
|
-
decode: decode$
|
|
33018
|
+
encode: encode$11,
|
|
33019
|
+
decode: decode$V
|
|
33020
33020
|
});
|
|
33021
|
-
const encode$
|
|
33021
|
+
const encode$10 = (attributes) => {
|
|
33022
33022
|
return attributes["w:rsidR"];
|
|
33023
33023
|
};
|
|
33024
|
-
const decode$
|
|
33024
|
+
const decode$U = (attrs) => {
|
|
33025
33025
|
return attrs.rsidR;
|
|
33026
33026
|
};
|
|
33027
33027
|
const attrConfig$y = Object.freeze({
|
|
33028
33028
|
xmlName: "w:rsidR",
|
|
33029
33029
|
sdName: "rsidR",
|
|
33030
|
-
encode: encode$
|
|
33031
|
-
decode: decode$
|
|
33030
|
+
encode: encode$10,
|
|
33031
|
+
decode: decode$U
|
|
33032
33032
|
});
|
|
33033
|
-
const encode
|
|
33033
|
+
const encode$$ = (attributes) => {
|
|
33034
33034
|
return attributes["w:rsidRPr"];
|
|
33035
33035
|
};
|
|
33036
|
-
const decode$
|
|
33036
|
+
const decode$T = (attrs) => {
|
|
33037
33037
|
return attrs.rsidRPr;
|
|
33038
33038
|
};
|
|
33039
33039
|
const attrConfig$x = Object.freeze({
|
|
33040
33040
|
xmlName: "w:rsidRPr",
|
|
33041
33041
|
sdName: "rsidRPr",
|
|
33042
|
-
encode: encode
|
|
33043
|
-
decode: decode$
|
|
33042
|
+
encode: encode$$,
|
|
33043
|
+
decode: decode$T
|
|
33044
33044
|
});
|
|
33045
|
-
const encode$
|
|
33045
|
+
const encode$_ = (attributes) => {
|
|
33046
33046
|
return attributes["w:rsidRDefault"];
|
|
33047
33047
|
};
|
|
33048
|
-
const decode$
|
|
33048
|
+
const decode$S = (attrs) => {
|
|
33049
33049
|
return attrs.rsidRDefault;
|
|
33050
33050
|
};
|
|
33051
33051
|
const attrConfig$w = Object.freeze({
|
|
33052
33052
|
xmlName: "w:rsidRDefault",
|
|
33053
33053
|
sdName: "rsidRDefault",
|
|
33054
|
-
encode: encode$
|
|
33055
|
-
decode: decode$
|
|
33054
|
+
encode: encode$_,
|
|
33055
|
+
decode: decode$S
|
|
33056
33056
|
});
|
|
33057
|
-
const encode$
|
|
33057
|
+
const encode$Z = (attributes) => {
|
|
33058
33058
|
return attributes["w14:paraId"];
|
|
33059
33059
|
};
|
|
33060
|
-
const decode$
|
|
33060
|
+
const decode$R = (attrs) => {
|
|
33061
33061
|
return attrs.paraId;
|
|
33062
33062
|
};
|
|
33063
33063
|
const attrConfig$v = Object.freeze({
|
|
33064
33064
|
xmlName: "w14:paraId",
|
|
33065
33065
|
sdName: "paraId",
|
|
33066
|
-
encode: encode$
|
|
33067
|
-
decode: decode$
|
|
33066
|
+
encode: encode$Z,
|
|
33067
|
+
decode: decode$R
|
|
33068
33068
|
});
|
|
33069
|
-
const encode
|
|
33069
|
+
const encode$Y = (attributes) => {
|
|
33070
33070
|
return attributes["w14:textId"];
|
|
33071
33071
|
};
|
|
33072
|
-
const decode$
|
|
33072
|
+
const decode$Q = (attrs) => {
|
|
33073
33073
|
return attrs.textId;
|
|
33074
33074
|
};
|
|
33075
33075
|
const attrConfig$u = Object.freeze({
|
|
33076
33076
|
xmlName: "w14:textId",
|
|
33077
33077
|
sdName: "textId",
|
|
33078
|
-
encode: encode
|
|
33079
|
-
decode: decode$
|
|
33078
|
+
encode: encode$Y,
|
|
33079
|
+
decode: decode$Q
|
|
33080
33080
|
});
|
|
33081
33081
|
const validXmlAttributes$m = [
|
|
33082
33082
|
attrConfig$v,
|
|
@@ -33087,9 +33087,9 @@ Please report this to https://github.com/markedjs/marked.`, e) {
|
|
|
33087
33087
|
attrConfig$x,
|
|
33088
33088
|
attrConfig$A
|
|
33089
33089
|
];
|
|
33090
|
-
const XML_NODE_NAME$
|
|
33090
|
+
const XML_NODE_NAME$v = "w:p";
|
|
33091
33091
|
const SD_NODE_NAME$f = "paragraph";
|
|
33092
|
-
const encode$
|
|
33092
|
+
const encode$X = (params2, encodedAttrs = {}) => {
|
|
33093
33093
|
const node = handleParagraphNode$1(params2);
|
|
33094
33094
|
if (!node) return void 0;
|
|
33095
33095
|
if (encodedAttrs && Object.keys(encodedAttrs).length) {
|
|
@@ -33097,7 +33097,7 @@ Please report this to https://github.com/markedjs/marked.`, e) {
|
|
|
33097
33097
|
}
|
|
33098
33098
|
return node;
|
|
33099
33099
|
};
|
|
33100
|
-
const decode$
|
|
33100
|
+
const decode$P = (params2, decodedAttrs = {}) => {
|
|
33101
33101
|
const translated = translateParagraphNode(params2);
|
|
33102
33102
|
if (!translated) return void 0;
|
|
33103
33103
|
if (decodedAttrs && Object.keys(decodedAttrs).length) {
|
|
@@ -33105,16 +33105,16 @@ Please report this to https://github.com/markedjs/marked.`, e) {
|
|
|
33105
33105
|
}
|
|
33106
33106
|
return translated;
|
|
33107
33107
|
};
|
|
33108
|
-
const config$
|
|
33109
|
-
xmlName: XML_NODE_NAME$
|
|
33108
|
+
const config$u = {
|
|
33109
|
+
xmlName: XML_NODE_NAME$v,
|
|
33110
33110
|
sdNodeOrKeyName: SD_NODE_NAME$f,
|
|
33111
33111
|
type: NodeTranslator.translatorTypes.NODE,
|
|
33112
|
-
encode: encode$
|
|
33113
|
-
decode: decode$
|
|
33112
|
+
encode: encode$X,
|
|
33113
|
+
decode: decode$P,
|
|
33114
33114
|
attributes: validXmlAttributes$m
|
|
33115
33115
|
};
|
|
33116
|
-
const translator$
|
|
33117
|
-
const encode$
|
|
33116
|
+
const translator$1o = NodeTranslator.from(config$u);
|
|
33117
|
+
const encode$W = (attributes) => {
|
|
33118
33118
|
const raw = attributes?.["w:val"];
|
|
33119
33119
|
if (raw === void 0 || raw === null) return void 0;
|
|
33120
33120
|
if (typeof raw === "boolean") return raw;
|
|
@@ -33124,24 +33124,24 @@ Please report this to https://github.com/markedjs/marked.`, e) {
|
|
|
33124
33124
|
if (val === "1" || val === "true" || val === "on") return true;
|
|
33125
33125
|
return void 0;
|
|
33126
33126
|
};
|
|
33127
|
-
const decode$
|
|
33127
|
+
const decode$O = (runProps) => {
|
|
33128
33128
|
if (runProps?.bold === false) return "0";
|
|
33129
33129
|
return void 0;
|
|
33130
33130
|
};
|
|
33131
33131
|
const attrConfig$t = Object.freeze({
|
|
33132
33132
|
xmlName: "w:val",
|
|
33133
33133
|
sdName: "bold",
|
|
33134
|
-
encode: encode$
|
|
33135
|
-
decode: decode$
|
|
33134
|
+
encode: encode$W,
|
|
33135
|
+
decode: decode$O
|
|
33136
33136
|
});
|
|
33137
33137
|
const validXmlAttributes$l = [attrConfig$t];
|
|
33138
|
-
const XML_NODE_NAME$
|
|
33139
|
-
const SD_ATTR_KEY$
|
|
33140
|
-
const encode$
|
|
33138
|
+
const XML_NODE_NAME$u = "w:b";
|
|
33139
|
+
const SD_ATTR_KEY$e = "bold";
|
|
33140
|
+
const encode$V = (params2, encodedAttrs = {}) => {
|
|
33141
33141
|
const { nodes } = params2;
|
|
33142
33142
|
const node = nodes[0];
|
|
33143
33143
|
if (!node) return void 0;
|
|
33144
|
-
const val = encodedAttrs?.[SD_ATTR_KEY$
|
|
33144
|
+
const val = encodedAttrs?.[SD_ATTR_KEY$e];
|
|
33145
33145
|
let attributes;
|
|
33146
33146
|
if (val === false) attributes = { "w:val": "0" };
|
|
33147
33147
|
else if (val === true)
|
|
@@ -33149,85 +33149,85 @@ Please report this to https://github.com/markedjs/marked.`, e) {
|
|
|
33149
33149
|
else attributes = node.attributes || {};
|
|
33150
33150
|
return {
|
|
33151
33151
|
type: "attr",
|
|
33152
|
-
xmlName: XML_NODE_NAME$
|
|
33153
|
-
sdNodeOrKeyName: SD_ATTR_KEY$
|
|
33152
|
+
xmlName: XML_NODE_NAME$u,
|
|
33153
|
+
sdNodeOrKeyName: SD_ATTR_KEY$e,
|
|
33154
33154
|
attributes
|
|
33155
33155
|
};
|
|
33156
33156
|
};
|
|
33157
|
-
const config$
|
|
33158
|
-
xmlName: XML_NODE_NAME$
|
|
33159
|
-
sdNodeOrKeyName: SD_ATTR_KEY$
|
|
33157
|
+
const config$t = {
|
|
33158
|
+
xmlName: XML_NODE_NAME$u,
|
|
33159
|
+
sdNodeOrKeyName: SD_ATTR_KEY$e,
|
|
33160
33160
|
type: NodeTranslator.translatorTypes.ATTRIBUTE,
|
|
33161
|
-
encode: encode$
|
|
33161
|
+
encode: encode$V,
|
|
33162
33162
|
attributes: validXmlAttributes$l
|
|
33163
33163
|
};
|
|
33164
|
-
const translator$
|
|
33165
|
-
const XML_NODE_NAME$
|
|
33166
|
-
const SD_ATTR_KEY$
|
|
33167
|
-
const encode$
|
|
33164
|
+
const translator$1n = NodeTranslator.from(config$t);
|
|
33165
|
+
const XML_NODE_NAME$t = "w:i";
|
|
33166
|
+
const SD_ATTR_KEY$d = "italic";
|
|
33167
|
+
const encode$U = (params2) => {
|
|
33168
33168
|
const { nodes } = params2;
|
|
33169
33169
|
const node = nodes?.[0];
|
|
33170
33170
|
if (!node) return void 0;
|
|
33171
33171
|
return {
|
|
33172
33172
|
type: "attr",
|
|
33173
|
-
xmlName: XML_NODE_NAME$
|
|
33174
|
-
sdNodeOrKeyName: SD_ATTR_KEY$
|
|
33173
|
+
xmlName: XML_NODE_NAME$t,
|
|
33174
|
+
sdNodeOrKeyName: SD_ATTR_KEY$d,
|
|
33175
33175
|
attributes: {
|
|
33176
33176
|
"w:val": node.attributes?.["w:val"] ?? null
|
|
33177
33177
|
}
|
|
33178
33178
|
};
|
|
33179
33179
|
};
|
|
33180
|
-
const config$
|
|
33181
|
-
xmlName: XML_NODE_NAME$
|
|
33182
|
-
sdNodeOrKeyName: SD_ATTR_KEY$
|
|
33180
|
+
const config$s = {
|
|
33181
|
+
xmlName: XML_NODE_NAME$t,
|
|
33182
|
+
sdNodeOrKeyName: SD_ATTR_KEY$d,
|
|
33183
33183
|
type: NodeTranslator.translatorTypes.ATTRIBUTE,
|
|
33184
|
-
encode: encode$
|
|
33184
|
+
encode: encode$U
|
|
33185
33185
|
};
|
|
33186
|
-
const translator$
|
|
33187
|
-
const encode$
|
|
33188
|
-
const decode$
|
|
33186
|
+
const translator$1m = NodeTranslator.from(config$s);
|
|
33187
|
+
const encode$T = (attributes) => attributes?.["w:val"];
|
|
33188
|
+
const decode$N = (attrs) => attrs?.underline;
|
|
33189
33189
|
const attrConfig$s = Object.freeze({
|
|
33190
33190
|
xmlName: "w:val",
|
|
33191
33191
|
sdName: "underline",
|
|
33192
|
-
encode: encode$
|
|
33193
|
-
decode: decode$
|
|
33192
|
+
encode: encode$T,
|
|
33193
|
+
decode: decode$N
|
|
33194
33194
|
});
|
|
33195
|
-
const encode$
|
|
33196
|
-
const decode$
|
|
33195
|
+
const encode$S = (attributes) => attributes?.["w:color"];
|
|
33196
|
+
const decode$M = (attrs) => attrs?.color;
|
|
33197
33197
|
const attrConfig$r = Object.freeze({
|
|
33198
33198
|
xmlName: "w:color",
|
|
33199
33199
|
sdName: "color",
|
|
33200
|
-
encode: encode$
|
|
33201
|
-
decode: decode$
|
|
33200
|
+
encode: encode$S,
|
|
33201
|
+
decode: decode$M
|
|
33202
33202
|
});
|
|
33203
|
-
const encode$
|
|
33204
|
-
const decode$
|
|
33203
|
+
const encode$R = (attributes) => attributes?.["w:themeColor"];
|
|
33204
|
+
const decode$L = (attrs) => attrs?.themeColor;
|
|
33205
33205
|
const attrConfig$q = Object.freeze({
|
|
33206
33206
|
xmlName: "w:themeColor",
|
|
33207
33207
|
sdName: "themeColor",
|
|
33208
|
-
encode: encode$
|
|
33209
|
-
decode: decode$
|
|
33208
|
+
encode: encode$R,
|
|
33209
|
+
decode: decode$L
|
|
33210
33210
|
});
|
|
33211
|
-
const encode$
|
|
33212
|
-
const decode$
|
|
33211
|
+
const encode$Q = (attributes) => attributes?.["w:themeTint"];
|
|
33212
|
+
const decode$K = (attrs) => attrs?.themeTint;
|
|
33213
33213
|
const attrConfig$p = Object.freeze({
|
|
33214
33214
|
xmlName: "w:themeTint",
|
|
33215
33215
|
sdName: "themeTint",
|
|
33216
|
-
encode: encode$
|
|
33217
|
-
decode: decode$
|
|
33216
|
+
encode: encode$Q,
|
|
33217
|
+
decode: decode$K
|
|
33218
33218
|
});
|
|
33219
|
-
const encode$
|
|
33220
|
-
const decode$
|
|
33219
|
+
const encode$P = (attributes) => attributes?.["w:themeShade"];
|
|
33220
|
+
const decode$J = (attrs) => attrs?.themeShade;
|
|
33221
33221
|
const attrConfig$o = Object.freeze({
|
|
33222
33222
|
xmlName: "w:themeShade",
|
|
33223
33223
|
sdName: "themeShade",
|
|
33224
|
-
encode: encode$
|
|
33225
|
-
decode: decode$
|
|
33224
|
+
encode: encode$P,
|
|
33225
|
+
decode: decode$J
|
|
33226
33226
|
});
|
|
33227
33227
|
const validXmlAttributes$k = [attrConfig$s, attrConfig$r, attrConfig$q, attrConfig$p, attrConfig$o];
|
|
33228
|
-
const XML_NODE_NAME$
|
|
33229
|
-
const SD_ATTR_KEY$
|
|
33230
|
-
const encode$
|
|
33228
|
+
const XML_NODE_NAME$s = "w:u";
|
|
33229
|
+
const SD_ATTR_KEY$c = "underline";
|
|
33230
|
+
const encode$O = (params2, encodedAttrs = {}) => {
|
|
33231
33231
|
const { nodes } = params2;
|
|
33232
33232
|
const node = nodes?.[0];
|
|
33233
33233
|
const sourceAttrs = node?.attributes || {};
|
|
@@ -33243,12 +33243,12 @@ Please report this to https://github.com/markedjs/marked.`, e) {
|
|
|
33243
33243
|
if (themeShade !== void 0 && themeShade !== null) attributes["w:themeShade"] = themeShade;
|
|
33244
33244
|
return {
|
|
33245
33245
|
type: "attr",
|
|
33246
|
-
xmlName: XML_NODE_NAME$
|
|
33247
|
-
sdNodeOrKeyName: SD_ATTR_KEY$
|
|
33246
|
+
xmlName: XML_NODE_NAME$s,
|
|
33247
|
+
sdNodeOrKeyName: SD_ATTR_KEY$c,
|
|
33248
33248
|
attributes
|
|
33249
33249
|
};
|
|
33250
33250
|
};
|
|
33251
|
-
const decode$
|
|
33251
|
+
const decode$I = (params2) => {
|
|
33252
33252
|
const attrs = params2?.node?.attrs || {};
|
|
33253
33253
|
const underlineType = attrs.underlineType ?? attrs.underline ?? null;
|
|
33254
33254
|
const color = attrs.underlineColor ?? attrs.color ?? null;
|
|
@@ -33266,20 +33266,20 @@ Please report this to https://github.com/markedjs/marked.`, e) {
|
|
|
33266
33266
|
if (themeTint) attributes["w:themeTint"] = themeTint;
|
|
33267
33267
|
if (themeShade) attributes["w:themeShade"] = themeShade;
|
|
33268
33268
|
return {
|
|
33269
|
-
name: XML_NODE_NAME$
|
|
33269
|
+
name: XML_NODE_NAME$s,
|
|
33270
33270
|
attributes
|
|
33271
33271
|
};
|
|
33272
33272
|
};
|
|
33273
|
-
const config$
|
|
33274
|
-
xmlName: XML_NODE_NAME$
|
|
33275
|
-
sdNodeOrKeyName: SD_ATTR_KEY$
|
|
33273
|
+
const config$r = {
|
|
33274
|
+
xmlName: XML_NODE_NAME$s,
|
|
33275
|
+
sdNodeOrKeyName: SD_ATTR_KEY$c,
|
|
33276
33276
|
type: NodeTranslator.translatorTypes.ATTRIBUTE,
|
|
33277
|
-
encode: encode$
|
|
33278
|
-
decode: decode$
|
|
33277
|
+
encode: encode$O,
|
|
33278
|
+
decode: decode$I,
|
|
33279
33279
|
attributes: validXmlAttributes$k
|
|
33280
33280
|
};
|
|
33281
|
-
const translator$
|
|
33282
|
-
const encode$
|
|
33281
|
+
const translator$1l = NodeTranslator.from(config$r);
|
|
33282
|
+
const encode$N = (attributes) => {
|
|
33283
33283
|
const raw = attributes?.["w:val"];
|
|
33284
33284
|
if (raw === void 0 || raw === null) return void 0;
|
|
33285
33285
|
if (typeof raw === "boolean") return raw;
|
|
@@ -33289,24 +33289,24 @@ Please report this to https://github.com/markedjs/marked.`, e) {
|
|
|
33289
33289
|
if (val === "1" || val === "true" || val === "on") return true;
|
|
33290
33290
|
return void 0;
|
|
33291
33291
|
};
|
|
33292
|
-
const decode$
|
|
33292
|
+
const decode$H = (attrs) => {
|
|
33293
33293
|
if (attrs?.strike === false) return "0";
|
|
33294
33294
|
return void 0;
|
|
33295
33295
|
};
|
|
33296
33296
|
const attrConfig$n = Object.freeze({
|
|
33297
33297
|
xmlName: "w:val",
|
|
33298
33298
|
sdName: "strike",
|
|
33299
|
-
encode: encode$
|
|
33300
|
-
decode: decode$
|
|
33299
|
+
encode: encode$N,
|
|
33300
|
+
decode: decode$H
|
|
33301
33301
|
});
|
|
33302
33302
|
const validXmlAttributes$j = [attrConfig$n];
|
|
33303
|
-
const XML_NODE_NAME$
|
|
33304
|
-
const SD_ATTR_KEY$
|
|
33305
|
-
const encode$
|
|
33303
|
+
const XML_NODE_NAME$r = "w:strike";
|
|
33304
|
+
const SD_ATTR_KEY$b = "strike";
|
|
33305
|
+
const encode$M = (params2, encodedAttrs = {}) => {
|
|
33306
33306
|
const { nodes } = params2;
|
|
33307
33307
|
const node = nodes?.[0];
|
|
33308
33308
|
if (!node) return void 0;
|
|
33309
|
-
const val = encodedAttrs?.[SD_ATTR_KEY$
|
|
33309
|
+
const val = encodedAttrs?.[SD_ATTR_KEY$b];
|
|
33310
33310
|
let attributes;
|
|
33311
33311
|
if (val === false) attributes = { "w:val": "0" };
|
|
33312
33312
|
else if (val === true) attributes = {};
|
|
@@ -33315,55 +33315,55 @@ Please report this to https://github.com/markedjs/marked.`, e) {
|
|
|
33315
33315
|
else if (val === true && attributes["w:val"] === void 0) delete attributes["w:val"];
|
|
33316
33316
|
return {
|
|
33317
33317
|
type: "attr",
|
|
33318
|
-
xmlName: XML_NODE_NAME$
|
|
33319
|
-
sdNodeOrKeyName: SD_ATTR_KEY$
|
|
33318
|
+
xmlName: XML_NODE_NAME$r,
|
|
33319
|
+
sdNodeOrKeyName: SD_ATTR_KEY$b,
|
|
33320
33320
|
attributes
|
|
33321
33321
|
};
|
|
33322
33322
|
};
|
|
33323
|
-
const config$
|
|
33324
|
-
xmlName: XML_NODE_NAME$
|
|
33325
|
-
sdNodeOrKeyName: SD_ATTR_KEY$
|
|
33323
|
+
const config$q = {
|
|
33324
|
+
xmlName: XML_NODE_NAME$r,
|
|
33325
|
+
sdNodeOrKeyName: SD_ATTR_KEY$b,
|
|
33326
33326
|
type: NodeTranslator.translatorTypes.ATTRIBUTE,
|
|
33327
|
-
encode: encode$
|
|
33327
|
+
encode: encode$M,
|
|
33328
33328
|
attributes: validXmlAttributes$j
|
|
33329
33329
|
};
|
|
33330
|
-
const translator$
|
|
33331
|
-
const encode$
|
|
33332
|
-
const decode$
|
|
33330
|
+
const translator$1k = NodeTranslator.from(config$q);
|
|
33331
|
+
const encode$L = (attributes) => attributes?.["w:val"];
|
|
33332
|
+
const decode$G = (attrs) => attrs?.color;
|
|
33333
33333
|
const attrConfig$m = Object.freeze({
|
|
33334
33334
|
xmlName: "w:val",
|
|
33335
33335
|
sdName: "color",
|
|
33336
|
-
encode: encode$
|
|
33337
|
-
decode: decode$
|
|
33336
|
+
encode: encode$L,
|
|
33337
|
+
decode: decode$G
|
|
33338
33338
|
});
|
|
33339
|
-
const encode$
|
|
33340
|
-
const decode$
|
|
33339
|
+
const encode$K = (attributes) => attributes?.["w:themeColor"];
|
|
33340
|
+
const decode$F = (attrs) => attrs?.themeColor;
|
|
33341
33341
|
const attrConfig$l = Object.freeze({
|
|
33342
33342
|
xmlName: "w:themeColor",
|
|
33343
33343
|
sdName: "themeColor",
|
|
33344
|
-
encode: encode$
|
|
33345
|
-
decode: decode$
|
|
33344
|
+
encode: encode$K,
|
|
33345
|
+
decode: decode$F
|
|
33346
33346
|
});
|
|
33347
|
-
const encode$
|
|
33348
|
-
const decode$
|
|
33347
|
+
const encode$J = (attributes) => attributes?.["w:themeTint"];
|
|
33348
|
+
const decode$E = (attrs) => attrs?.themeTint;
|
|
33349
33349
|
const attrConfig$k = Object.freeze({
|
|
33350
33350
|
xmlName: "w:themeTint",
|
|
33351
33351
|
sdName: "themeTint",
|
|
33352
|
-
encode: encode$
|
|
33353
|
-
decode: decode$
|
|
33352
|
+
encode: encode$J,
|
|
33353
|
+
decode: decode$E
|
|
33354
33354
|
});
|
|
33355
|
-
const encode$
|
|
33356
|
-
const decode$
|
|
33355
|
+
const encode$I = (attributes) => attributes?.["w:themeShade"];
|
|
33356
|
+
const decode$D = (attrs) => attrs?.themeShade;
|
|
33357
33357
|
const attrConfig$j = Object.freeze({
|
|
33358
33358
|
xmlName: "w:themeShade",
|
|
33359
33359
|
sdName: "themeShade",
|
|
33360
|
-
encode: encode$
|
|
33361
|
-
decode: decode$
|
|
33360
|
+
encode: encode$I,
|
|
33361
|
+
decode: decode$D
|
|
33362
33362
|
});
|
|
33363
33363
|
const validXmlAttributes$i = [attrConfig$m, attrConfig$l, attrConfig$k, attrConfig$j];
|
|
33364
|
-
const XML_NODE_NAME$
|
|
33365
|
-
const SD_ATTR_KEY$
|
|
33366
|
-
const encode$
|
|
33364
|
+
const XML_NODE_NAME$q = "w:color";
|
|
33365
|
+
const SD_ATTR_KEY$a = "color";
|
|
33366
|
+
const encode$H = (params2, encodedAttrs = {}) => {
|
|
33367
33367
|
const { nodes } = params2;
|
|
33368
33368
|
const node = nodes?.[0];
|
|
33369
33369
|
const sourceAttrs = node?.attributes || {};
|
|
@@ -33378,63 +33378,63 @@ Please report this to https://github.com/markedjs/marked.`, e) {
|
|
|
33378
33378
|
if (themeShade !== void 0 && themeShade !== null) attributes["w:themeShade"] = themeShade;
|
|
33379
33379
|
return {
|
|
33380
33380
|
type: "attr",
|
|
33381
|
-
xmlName: XML_NODE_NAME$
|
|
33382
|
-
sdNodeOrKeyName: SD_ATTR_KEY$
|
|
33381
|
+
xmlName: XML_NODE_NAME$q,
|
|
33382
|
+
sdNodeOrKeyName: SD_ATTR_KEY$a,
|
|
33383
33383
|
attributes
|
|
33384
33384
|
};
|
|
33385
33385
|
};
|
|
33386
|
-
const config$
|
|
33387
|
-
xmlName: XML_NODE_NAME$
|
|
33388
|
-
sdNodeOrKeyName: SD_ATTR_KEY$
|
|
33386
|
+
const config$p = {
|
|
33387
|
+
xmlName: XML_NODE_NAME$q,
|
|
33388
|
+
sdNodeOrKeyName: SD_ATTR_KEY$a,
|
|
33389
33389
|
type: NodeTranslator.translatorTypes.ATTRIBUTE,
|
|
33390
|
-
encode: encode$
|
|
33390
|
+
encode: encode$H,
|
|
33391
33391
|
attributes: validXmlAttributes$i
|
|
33392
33392
|
};
|
|
33393
|
-
const translator$
|
|
33394
|
-
const encode$
|
|
33395
|
-
const decode$
|
|
33393
|
+
const translator$1j = NodeTranslator.from(config$p);
|
|
33394
|
+
const encode$G = (attributes) => attributes?.["w:eastAsia"];
|
|
33395
|
+
const decode$C = (attrs) => attrs?.eastAsia;
|
|
33396
33396
|
const attrConfig$i = Object.freeze({
|
|
33397
33397
|
xmlName: "w:eastAsia",
|
|
33398
33398
|
sdName: "eastAsia",
|
|
33399
|
-
encode: encode$
|
|
33400
|
-
decode: decode$
|
|
33399
|
+
encode: encode$G,
|
|
33400
|
+
decode: decode$C
|
|
33401
33401
|
});
|
|
33402
|
-
const encode$
|
|
33403
|
-
const decode$
|
|
33402
|
+
const encode$F = (attributes) => attributes?.["w:ascii"];
|
|
33403
|
+
const decode$B = (attrs) => attrs?.ascii;
|
|
33404
33404
|
const attrConfig$h = Object.freeze({
|
|
33405
33405
|
xmlName: "w:ascii",
|
|
33406
33406
|
sdName: "ascii",
|
|
33407
|
-
encode: encode$
|
|
33408
|
-
decode: decode$
|
|
33407
|
+
encode: encode$F,
|
|
33408
|
+
decode: decode$B
|
|
33409
33409
|
});
|
|
33410
|
-
const encode$
|
|
33411
|
-
const decode$
|
|
33410
|
+
const encode$E = (attributes) => attributes?.["w:hAnsi"];
|
|
33411
|
+
const decode$A = (attrs) => attrs?.hAnsi;
|
|
33412
33412
|
const attrConfig$g = Object.freeze({
|
|
33413
33413
|
xmlName: "w:hAnsi",
|
|
33414
33414
|
sdName: "hAnsi",
|
|
33415
|
-
encode: encode$
|
|
33416
|
-
decode: decode$
|
|
33415
|
+
encode: encode$E,
|
|
33416
|
+
decode: decode$A
|
|
33417
33417
|
});
|
|
33418
|
-
const encode$
|
|
33419
|
-
const decode$
|
|
33418
|
+
const encode$D = (attributes) => attributes?.["w:cs"];
|
|
33419
|
+
const decode$z = (attrs) => attrs?.cs;
|
|
33420
33420
|
const attrConfig$f = Object.freeze({
|
|
33421
33421
|
xmlName: "w:cs",
|
|
33422
33422
|
sdName: "cs",
|
|
33423
|
-
encode: encode$
|
|
33424
|
-
decode: decode$
|
|
33423
|
+
encode: encode$D,
|
|
33424
|
+
decode: decode$z
|
|
33425
33425
|
});
|
|
33426
|
-
const encode$
|
|
33427
|
-
const decode$
|
|
33426
|
+
const encode$C = (attributes) => attributes?.["w:val"];
|
|
33427
|
+
const decode$y = (attrs) => attrs?.value;
|
|
33428
33428
|
const attrConfig$e = Object.freeze({
|
|
33429
33429
|
xmlName: "w:val",
|
|
33430
33430
|
sdName: "value",
|
|
33431
|
-
encode: encode$
|
|
33432
|
-
decode: decode$
|
|
33431
|
+
encode: encode$C,
|
|
33432
|
+
decode: decode$y
|
|
33433
33433
|
});
|
|
33434
33434
|
const validXmlAttributes$h = [attrConfig$i, attrConfig$h, attrConfig$g, attrConfig$f, attrConfig$e];
|
|
33435
|
-
const XML_NODE_NAME$
|
|
33436
|
-
const SD_ATTR_KEY$
|
|
33437
|
-
const encode$
|
|
33435
|
+
const XML_NODE_NAME$p = "w:rFonts";
|
|
33436
|
+
const SD_ATTR_KEY$9 = "fontFamily";
|
|
33437
|
+
const encode$B = (params2, encodedAttrs = {}) => {
|
|
33438
33438
|
const { nodes } = params2;
|
|
33439
33439
|
const node = nodes?.[0];
|
|
33440
33440
|
const sourceAttrs = node?.attributes || {};
|
|
@@ -33458,111 +33458,119 @@ Please report this to https://github.com/markedjs/marked.`, e) {
|
|
|
33458
33458
|
attributes["w:val"] = attributes["w:eastAsia"];
|
|
33459
33459
|
}
|
|
33460
33460
|
if (attributes["w:val"] === void 0) delete attributes["w:val"];
|
|
33461
|
+
if (params2.inlineDocumentFonts) {
|
|
33462
|
+
const font = attributes["w:ascii"];
|
|
33463
|
+
if (font) {
|
|
33464
|
+
if (!params2.inlineDocumentFonts.includes(font)) {
|
|
33465
|
+
params2.inlineDocumentFonts.push(font);
|
|
33466
|
+
}
|
|
33467
|
+
}
|
|
33468
|
+
}
|
|
33461
33469
|
return {
|
|
33462
33470
|
type: "attr",
|
|
33463
|
-
xmlName: XML_NODE_NAME$
|
|
33464
|
-
sdNodeOrKeyName: SD_ATTR_KEY$
|
|
33471
|
+
xmlName: XML_NODE_NAME$p,
|
|
33472
|
+
sdNodeOrKeyName: SD_ATTR_KEY$9,
|
|
33465
33473
|
attributes
|
|
33466
33474
|
};
|
|
33467
33475
|
};
|
|
33468
|
-
const config$
|
|
33469
|
-
xmlName: XML_NODE_NAME$
|
|
33470
|
-
sdNodeOrKeyName: SD_ATTR_KEY$
|
|
33476
|
+
const config$o = {
|
|
33477
|
+
xmlName: XML_NODE_NAME$p,
|
|
33478
|
+
sdNodeOrKeyName: SD_ATTR_KEY$9,
|
|
33471
33479
|
type: NodeTranslator.translatorTypes.ATTRIBUTE,
|
|
33472
|
-
encode: encode$
|
|
33480
|
+
encode: encode$B,
|
|
33473
33481
|
attributes: validXmlAttributes$h
|
|
33474
33482
|
};
|
|
33475
|
-
const translator$
|
|
33476
|
-
const encode$
|
|
33477
|
-
const decode$
|
|
33483
|
+
const translator$1i = NodeTranslator.from(config$o);
|
|
33484
|
+
const encode$A = (attributes) => attributes?.["w:val"];
|
|
33485
|
+
const decode$x = (attrs) => attrs?.styleId;
|
|
33478
33486
|
const attrConfig$d = Object.freeze({
|
|
33479
33487
|
xmlName: "w:val",
|
|
33480
33488
|
sdName: "styleId",
|
|
33481
|
-
encode: encode$
|
|
33482
|
-
decode: decode$
|
|
33489
|
+
encode: encode$A,
|
|
33490
|
+
decode: decode$x
|
|
33483
33491
|
});
|
|
33484
33492
|
const validXmlAttributes$g = [attrConfig$d];
|
|
33485
|
-
const XML_NODE_NAME$
|
|
33486
|
-
const SD_ATTR_KEY$
|
|
33487
|
-
const encode$
|
|
33493
|
+
const XML_NODE_NAME$o = "w:rStyle";
|
|
33494
|
+
const SD_ATTR_KEY$8 = "styleId";
|
|
33495
|
+
const encode$z = (params2, encodedAttrs = {}) => {
|
|
33488
33496
|
const { nodes } = params2;
|
|
33489
33497
|
const node = nodes?.[0];
|
|
33490
33498
|
const value = encodedAttrs.styleId ?? node?.attributes?.["w:val"];
|
|
33491
33499
|
return {
|
|
33492
33500
|
type: "attr",
|
|
33493
|
-
xmlName: XML_NODE_NAME$
|
|
33494
|
-
sdNodeOrKeyName: SD_ATTR_KEY$
|
|
33501
|
+
xmlName: XML_NODE_NAME$o,
|
|
33502
|
+
sdNodeOrKeyName: SD_ATTR_KEY$8,
|
|
33495
33503
|
attributes: { "w:val": value ?? null }
|
|
33496
33504
|
};
|
|
33497
33505
|
};
|
|
33498
|
-
const config$
|
|
33499
|
-
xmlName: XML_NODE_NAME$
|
|
33500
|
-
sdNodeOrKeyName: SD_ATTR_KEY$
|
|
33506
|
+
const config$n = {
|
|
33507
|
+
xmlName: XML_NODE_NAME$o,
|
|
33508
|
+
sdNodeOrKeyName: SD_ATTR_KEY$8,
|
|
33501
33509
|
type: NodeTranslator.translatorTypes.ATTRIBUTE,
|
|
33502
|
-
encode: encode$
|
|
33510
|
+
encode: encode$z,
|
|
33503
33511
|
attributes: validXmlAttributes$g
|
|
33504
33512
|
};
|
|
33505
|
-
const translator$
|
|
33506
|
-
const encode$
|
|
33507
|
-
const decode$
|
|
33513
|
+
const translator$1h = NodeTranslator.from(config$n);
|
|
33514
|
+
const encode$y = (attributes) => attributes?.["w:val"];
|
|
33515
|
+
const decode$w = (attrs) => attrs?.fontSize;
|
|
33508
33516
|
const attrConfig$c = Object.freeze({
|
|
33509
33517
|
xmlName: "w:val",
|
|
33510
33518
|
sdName: "fontSize",
|
|
33511
|
-
encode: encode$
|
|
33512
|
-
decode: decode$
|
|
33519
|
+
encode: encode$y,
|
|
33520
|
+
decode: decode$w
|
|
33513
33521
|
});
|
|
33514
33522
|
const validXmlAttributes$f = [attrConfig$c];
|
|
33515
|
-
const XML_NODE_NAME$
|
|
33516
|
-
const SD_ATTR_KEY$
|
|
33517
|
-
const encode$
|
|
33523
|
+
const XML_NODE_NAME$n = "w:sz";
|
|
33524
|
+
const SD_ATTR_KEY$7 = "fontSize";
|
|
33525
|
+
const encode$x = (params2, encodedAttrs = {}) => {
|
|
33518
33526
|
const { nodes } = params2;
|
|
33519
33527
|
const node = nodes?.[0];
|
|
33520
33528
|
const value = encodedAttrs.fontSize ?? node?.attributes?.["w:val"];
|
|
33521
33529
|
return {
|
|
33522
33530
|
type: "attr",
|
|
33523
|
-
xmlName: XML_NODE_NAME$
|
|
33524
|
-
sdNodeOrKeyName: SD_ATTR_KEY$
|
|
33531
|
+
xmlName: XML_NODE_NAME$n,
|
|
33532
|
+
sdNodeOrKeyName: SD_ATTR_KEY$7,
|
|
33525
33533
|
attributes: { "w:val": value ?? null }
|
|
33526
33534
|
};
|
|
33527
33535
|
};
|
|
33528
|
-
const config$
|
|
33529
|
-
xmlName: XML_NODE_NAME$
|
|
33530
|
-
sdNodeOrKeyName: SD_ATTR_KEY$
|
|
33536
|
+
const config$m = {
|
|
33537
|
+
xmlName: XML_NODE_NAME$n,
|
|
33538
|
+
sdNodeOrKeyName: SD_ATTR_KEY$7,
|
|
33531
33539
|
type: NodeTranslator.translatorTypes.ATTRIBUTE,
|
|
33532
|
-
encode: encode$
|
|
33540
|
+
encode: encode$x,
|
|
33533
33541
|
attributes: validXmlAttributes$f
|
|
33534
33542
|
};
|
|
33535
|
-
const translator$
|
|
33536
|
-
const encode$
|
|
33537
|
-
const decode$
|
|
33543
|
+
const translator$1g = NodeTranslator.from(config$m);
|
|
33544
|
+
const encode$w = (attributes) => attributes?.["w:val"];
|
|
33545
|
+
const decode$v = (attrs) => attrs?.fontSizeCs;
|
|
33538
33546
|
const attrConfig$b = Object.freeze({
|
|
33539
33547
|
xmlName: "w:val",
|
|
33540
33548
|
sdName: "fontSizeCs",
|
|
33541
|
-
encode: encode$
|
|
33542
|
-
decode: decode$
|
|
33549
|
+
encode: encode$w,
|
|
33550
|
+
decode: decode$v
|
|
33543
33551
|
});
|
|
33544
33552
|
const validXmlAttributes$e = [attrConfig$b];
|
|
33545
|
-
const XML_NODE_NAME$
|
|
33546
|
-
const SD_ATTR_KEY$
|
|
33547
|
-
const encode$
|
|
33553
|
+
const XML_NODE_NAME$m = "w:szCs";
|
|
33554
|
+
const SD_ATTR_KEY$6 = "fontSizeCs";
|
|
33555
|
+
const encode$v = (params2, encodedAttrs = {}) => {
|
|
33548
33556
|
const { nodes } = params2;
|
|
33549
33557
|
const node = nodes?.[0];
|
|
33550
33558
|
const value = encodedAttrs.fontSizeCs ?? node?.attributes?.["w:val"];
|
|
33551
33559
|
return {
|
|
33552
33560
|
type: "attr",
|
|
33553
|
-
xmlName: XML_NODE_NAME$
|
|
33554
|
-
sdNodeOrKeyName: SD_ATTR_KEY$
|
|
33561
|
+
xmlName: XML_NODE_NAME$m,
|
|
33562
|
+
sdNodeOrKeyName: SD_ATTR_KEY$6,
|
|
33555
33563
|
attributes: { "w:val": value ?? null }
|
|
33556
33564
|
};
|
|
33557
33565
|
};
|
|
33558
|
-
const config$
|
|
33559
|
-
xmlName: XML_NODE_NAME$
|
|
33560
|
-
sdNodeOrKeyName: SD_ATTR_KEY$
|
|
33566
|
+
const config$l = {
|
|
33567
|
+
xmlName: XML_NODE_NAME$m,
|
|
33568
|
+
sdNodeOrKeyName: SD_ATTR_KEY$6,
|
|
33561
33569
|
type: NodeTranslator.translatorTypes.ATTRIBUTE,
|
|
33562
|
-
encode: encode$
|
|
33570
|
+
encode: encode$v,
|
|
33563
33571
|
attributes: validXmlAttributes$e
|
|
33564
33572
|
};
|
|
33565
|
-
const translator$
|
|
33573
|
+
const translator$1f = NodeTranslator.from(config$l);
|
|
33566
33574
|
const generateV2HandlerEntity = (handlerName, translator2) => ({
|
|
33567
33575
|
handlerName,
|
|
33568
33576
|
handler: (params2) => {
|
|
@@ -33586,7 +33594,7 @@ Please report this to https://github.com/markedjs/marked.`, e) {
|
|
|
33586
33594
|
xmlName,
|
|
33587
33595
|
sdNodeOrKeyName: sdName,
|
|
33588
33596
|
encode: ({ nodes }) => {
|
|
33589
|
-
return transformEncode(nodes[0]
|
|
33597
|
+
return transformEncode(nodes[0]?.attributes?.[attrName]) ?? void 0;
|
|
33590
33598
|
},
|
|
33591
33599
|
decode: ({ node }) => {
|
|
33592
33600
|
const value = node.attrs?.[sdName] != null ? transformDecode(node.attrs[sdName]) : void 0;
|
|
@@ -33618,8 +33626,32 @@ Please report this to https://github.com/markedjs/marked.`, e) {
|
|
|
33618
33626
|
xmlName,
|
|
33619
33627
|
sdNodeOrKeyName: sdName,
|
|
33620
33628
|
attributes: [
|
|
33621
|
-
createAttributeHandler(
|
|
33622
|
-
|
|
33629
|
+
createAttributeHandler(
|
|
33630
|
+
"w:val",
|
|
33631
|
+
"val",
|
|
33632
|
+
(v2) => v2 === "nil" ? "none" : v2,
|
|
33633
|
+
(v2) => v2 === "none" ? "nil" : v2
|
|
33634
|
+
),
|
|
33635
|
+
createAttributeHandler(
|
|
33636
|
+
"w:color",
|
|
33637
|
+
"color",
|
|
33638
|
+
(v2) => {
|
|
33639
|
+
if (v2 === "auto") {
|
|
33640
|
+
return null;
|
|
33641
|
+
} else if (v2) {
|
|
33642
|
+
return `#${v2}`;
|
|
33643
|
+
} else {
|
|
33644
|
+
return void 0;
|
|
33645
|
+
}
|
|
33646
|
+
},
|
|
33647
|
+
(v2) => {
|
|
33648
|
+
if (v2) {
|
|
33649
|
+
return v2.replace("#", "");
|
|
33650
|
+
} else {
|
|
33651
|
+
return void 0;
|
|
33652
|
+
}
|
|
33653
|
+
}
|
|
33654
|
+
),
|
|
33623
33655
|
createAttributeHandler("w:themeColor"),
|
|
33624
33656
|
createAttributeHandler("w:themeTint"),
|
|
33625
33657
|
createAttributeHandler("w:themeShade"),
|
|
@@ -33685,6 +33717,37 @@ Please report this to https://github.com/markedjs/marked.`, e) {
|
|
|
33685
33717
|
});
|
|
33686
33718
|
return elements;
|
|
33687
33719
|
}
|
|
33720
|
+
function createNestedPropertiesTranslator(xmlName, sdName, propertyTranslators2, defaultEncodedAttrs = {}) {
|
|
33721
|
+
const propertyTranslatorsByXmlName = {};
|
|
33722
|
+
const propertyTranslatorsBySdName = {};
|
|
33723
|
+
propertyTranslators2.forEach((translator2) => {
|
|
33724
|
+
propertyTranslatorsByXmlName[translator2.xmlName] = translator2;
|
|
33725
|
+
propertyTranslatorsBySdName[translator2.sdNodeOrKeyName] = translator2;
|
|
33726
|
+
});
|
|
33727
|
+
return {
|
|
33728
|
+
xmlName,
|
|
33729
|
+
sdNodeOrKeyName: sdName,
|
|
33730
|
+
type: NodeTranslator.translatorTypes.NODE,
|
|
33731
|
+
attributes: [],
|
|
33732
|
+
encode: (params2) => {
|
|
33733
|
+
const { nodes } = params2;
|
|
33734
|
+
const node = nodes[0];
|
|
33735
|
+
const attributes = { ...defaultEncodedAttrs, ...encodeProperties(node, propertyTranslatorsByXmlName) };
|
|
33736
|
+
return Object.keys(attributes).length > 0 ? attributes : void 0;
|
|
33737
|
+
},
|
|
33738
|
+
decode: (params2) => {
|
|
33739
|
+
const currentValue = params2.node.attrs?.[sdName];
|
|
33740
|
+
const elements = decodeProperties(propertyTranslatorsBySdName, currentValue);
|
|
33741
|
+
const newNode = {
|
|
33742
|
+
name: xmlName,
|
|
33743
|
+
type: "element",
|
|
33744
|
+
attributes: {},
|
|
33745
|
+
elements
|
|
33746
|
+
};
|
|
33747
|
+
return newNode;
|
|
33748
|
+
}
|
|
33749
|
+
};
|
|
33750
|
+
}
|
|
33688
33751
|
const parseBoolean = (value) => value != null ? ["1", "true"].includes(value) : void 0;
|
|
33689
33752
|
const booleanToString = (value) => value != null ? value ? "1" : "0" : void 0;
|
|
33690
33753
|
const parseInteger = (value) => {
|
|
@@ -33696,9 +33759,9 @@ Please report this to https://github.com/markedjs/marked.`, e) {
|
|
|
33696
33759
|
const intValue = parseInteger(value);
|
|
33697
33760
|
return intValue != void 0 ? String(intValue) : void 0;
|
|
33698
33761
|
};
|
|
33699
|
-
const XML_NODE_NAME$
|
|
33700
|
-
const SD_ATTR_KEY$
|
|
33701
|
-
const encode$
|
|
33762
|
+
const XML_NODE_NAME$l = "w:caps";
|
|
33763
|
+
const SD_ATTR_KEY$5 = "textTransform";
|
|
33764
|
+
const encode$u = (params2, encodedAttrs = {}) => {
|
|
33702
33765
|
const { nodes } = params2;
|
|
33703
33766
|
const node = nodes[0];
|
|
33704
33767
|
if (!node) return void 0;
|
|
@@ -33710,31 +33773,31 @@ Please report this to https://github.com/markedjs/marked.`, e) {
|
|
|
33710
33773
|
}
|
|
33711
33774
|
return {
|
|
33712
33775
|
type: "attr",
|
|
33713
|
-
xmlName: XML_NODE_NAME$
|
|
33714
|
-
sdNodeOrKeyName: SD_ATTR_KEY$
|
|
33715
|
-
attributes: { [SD_ATTR_KEY$
|
|
33776
|
+
xmlName: XML_NODE_NAME$l,
|
|
33777
|
+
sdNodeOrKeyName: SD_ATTR_KEY$5,
|
|
33778
|
+
attributes: { [SD_ATTR_KEY$5]: result }
|
|
33716
33779
|
};
|
|
33717
33780
|
};
|
|
33718
|
-
const config$
|
|
33719
|
-
xmlName: XML_NODE_NAME$
|
|
33720
|
-
sdNodeOrKeyName: SD_ATTR_KEY$
|
|
33781
|
+
const config$k = {
|
|
33782
|
+
xmlName: XML_NODE_NAME$l,
|
|
33783
|
+
sdNodeOrKeyName: SD_ATTR_KEY$5,
|
|
33721
33784
|
type: NodeTranslator.translatorTypes.ATTRIBUTE,
|
|
33722
|
-
encode: encode$
|
|
33785
|
+
encode: encode$u,
|
|
33723
33786
|
attributes: [createAttributeHandler("w:val")]
|
|
33724
33787
|
};
|
|
33725
|
-
const translator
|
|
33788
|
+
const translator$1e = NodeTranslator.from(config$k);
|
|
33726
33789
|
const runPropertyTranslators = Object.freeze({
|
|
33727
|
-
"w:b": translator$
|
|
33728
|
-
"w:i": translator$
|
|
33729
|
-
"w:u": translator$
|
|
33730
|
-
"w:strike": translator$
|
|
33731
|
-
"w:color": translator$
|
|
33732
|
-
"w:highlight": translator$
|
|
33733
|
-
"w:rFonts": translator$
|
|
33734
|
-
"w:rStyle": translator$
|
|
33735
|
-
"w:sz": translator$
|
|
33736
|
-
"w:szCs": translator$
|
|
33737
|
-
"w:caps": translator
|
|
33790
|
+
"w:b": translator$1n,
|
|
33791
|
+
"w:i": translator$1m,
|
|
33792
|
+
"w:u": translator$1l,
|
|
33793
|
+
"w:strike": translator$1k,
|
|
33794
|
+
"w:color": translator$1j,
|
|
33795
|
+
"w:highlight": translator$1q,
|
|
33796
|
+
"w:rFonts": translator$1i,
|
|
33797
|
+
"w:rStyle": translator$1h,
|
|
33798
|
+
"w:sz": translator$1g,
|
|
33799
|
+
"w:szCs": translator$1f,
|
|
33800
|
+
"w:caps": translator$1e
|
|
33738
33801
|
});
|
|
33739
33802
|
const rawRunPropertyXmlNames = Object.freeze(["w:lang", "w:shd"]);
|
|
33740
33803
|
const RAW_CHILD_NAME_SET = new Set(rawRunPropertyXmlNames);
|
|
@@ -33748,9 +33811,9 @@ Please report this to https://github.com/markedjs/marked.`, e) {
|
|
|
33748
33811
|
attributes: { ...candidate.attributes || {} }
|
|
33749
33812
|
};
|
|
33750
33813
|
};
|
|
33751
|
-
const XML_NODE_NAME$
|
|
33752
|
-
const SD_ATTR_KEY$
|
|
33753
|
-
const encode$
|
|
33814
|
+
const XML_NODE_NAME$k = "w:rPr";
|
|
33815
|
+
const SD_ATTR_KEY$4 = "runProperties";
|
|
33816
|
+
const encode$t = (params2) => {
|
|
33754
33817
|
const { nodes } = params2;
|
|
33755
33818
|
const node = nodes?.[0] || {};
|
|
33756
33819
|
const contents = Array.isArray(node.elements) ? node.elements : [];
|
|
@@ -33784,16 +33847,16 @@ Please report this to https://github.com/markedjs/marked.`, e) {
|
|
|
33784
33847
|
attributes: runPropsArray
|
|
33785
33848
|
};
|
|
33786
33849
|
};
|
|
33787
|
-
const config$
|
|
33788
|
-
xmlName: XML_NODE_NAME$
|
|
33789
|
-
sdNodeOrKeyName: SD_ATTR_KEY$
|
|
33850
|
+
const config$j = {
|
|
33851
|
+
xmlName: XML_NODE_NAME$k,
|
|
33852
|
+
sdNodeOrKeyName: SD_ATTR_KEY$4,
|
|
33790
33853
|
type: NodeTranslator.translatorTypes.ATTRIBUTE,
|
|
33791
|
-
encode: encode$
|
|
33854
|
+
encode: encode$t
|
|
33792
33855
|
};
|
|
33793
|
-
const translator$
|
|
33856
|
+
const translator$1d = NodeTranslator.from(config$j);
|
|
33794
33857
|
const EAST_ASIAN_CHARACTER_REGEX = /[\u1100-\u11FF\u2E80-\u2EFF\u2F00-\u2FDF\u3040-\u30FF\u3100-\u312F\u3130-\u318F\u31A0-\u31BF\u3400-\u4DBF\u4E00-\u9FFF\uA960-\uA97F\uAC00-\uD7AF\uF900-\uFAFF\uFF00-\uFFEF]/u;
|
|
33795
33858
|
const containsEastAsianCharacters = (text) => EAST_ASIAN_CHARACTER_REGEX.test(text);
|
|
33796
|
-
const collectRunProperties = (params2, rPrNode, translator2 = translator$
|
|
33859
|
+
const collectRunProperties = (params2, rPrNode, translator2 = translator$1d) => {
|
|
33797
33860
|
if (!rPrNode) return { entries: [], hadRPr: false, styleChangeMarks: [] };
|
|
33798
33861
|
const result = translator2.encode({ ...params2, nodes: [rPrNode] }) || {};
|
|
33799
33862
|
let entries = [];
|
|
@@ -34266,7 +34329,7 @@ Please report this to https://github.com/markedjs/marked.`, e) {
|
|
|
34266
34329
|
}
|
|
34267
34330
|
return runs;
|
|
34268
34331
|
};
|
|
34269
|
-
const XML_NODE_NAME$
|
|
34332
|
+
const XML_NODE_NAME$j = "w:hyperlink";
|
|
34270
34333
|
const SD_NODE_NAME$e = "link";
|
|
34271
34334
|
const _createAttributeHandler = (xmlName, sdName) => ({
|
|
34272
34335
|
xmlName,
|
|
@@ -34287,7 +34350,7 @@ Please report this to https://github.com/markedjs/marked.`, e) {
|
|
|
34287
34350
|
_createAttributeHandler("r:id", "rId"),
|
|
34288
34351
|
_createAttributeHandler("w:tgtFrame", "target")
|
|
34289
34352
|
];
|
|
34290
|
-
const encode$
|
|
34353
|
+
const encode$s = (params2, encodedAttrs) => {
|
|
34291
34354
|
const { nodes, docx, nodeListHandler } = params2;
|
|
34292
34355
|
const node = nodes[0];
|
|
34293
34356
|
let href = _resolveHref(docx, encodedAttrs);
|
|
@@ -34321,7 +34384,7 @@ Please report this to https://github.com/markedjs/marked.`, e) {
|
|
|
34321
34384
|
}
|
|
34322
34385
|
return href;
|
|
34323
34386
|
};
|
|
34324
|
-
function decode$
|
|
34387
|
+
function decode$u(params2) {
|
|
34325
34388
|
const { hyperlinkGroup = [params2.node] } = params2.extraParams || {};
|
|
34326
34389
|
const node = hyperlinkGroup[0];
|
|
34327
34390
|
const linkMark = node.marks.find((m2) => m2.type === "link");
|
|
@@ -34370,55 +34433,55 @@ Please report this to https://github.com/markedjs/marked.`, e) {
|
|
|
34370
34433
|
});
|
|
34371
34434
|
return id;
|
|
34372
34435
|
}
|
|
34373
|
-
const config$
|
|
34374
|
-
xmlName: XML_NODE_NAME$
|
|
34436
|
+
const config$i = {
|
|
34437
|
+
xmlName: XML_NODE_NAME$j,
|
|
34375
34438
|
sdNodeOrKeyName: SD_NODE_NAME$e,
|
|
34376
34439
|
type: NodeTranslator.translatorTypes.NODE,
|
|
34377
|
-
encode: encode$
|
|
34378
|
-
decode: decode$
|
|
34440
|
+
encode: encode$s,
|
|
34441
|
+
decode: decode$u,
|
|
34379
34442
|
attributes: validXmlAttributes$d
|
|
34380
34443
|
};
|
|
34381
|
-
const translator$
|
|
34382
|
-
const encode$
|
|
34444
|
+
const translator$1c = NodeTranslator.from(config$i);
|
|
34445
|
+
const encode$r = (attributes) => {
|
|
34383
34446
|
return attributes["w:rsidR"];
|
|
34384
34447
|
};
|
|
34385
|
-
const decode$
|
|
34448
|
+
const decode$t = (attrs) => {
|
|
34386
34449
|
return attrs.rsidR;
|
|
34387
34450
|
};
|
|
34388
34451
|
const attrConfig$a = Object.freeze({
|
|
34389
34452
|
xmlName: "w:rsidR",
|
|
34390
34453
|
sdName: "rsidR",
|
|
34391
|
-
encode: encode$
|
|
34392
|
-
decode: decode$
|
|
34454
|
+
encode: encode$r,
|
|
34455
|
+
decode: decode$t
|
|
34393
34456
|
});
|
|
34394
|
-
const encode$
|
|
34457
|
+
const encode$q = (attributes) => {
|
|
34395
34458
|
return attributes["w:rsidRPr"];
|
|
34396
34459
|
};
|
|
34397
|
-
const decode$
|
|
34460
|
+
const decode$s = (attrs) => {
|
|
34398
34461
|
return attrs.rsidRPr;
|
|
34399
34462
|
};
|
|
34400
34463
|
const attrConfig$9 = Object.freeze({
|
|
34401
34464
|
xmlName: "w:rsidRPr",
|
|
34402
34465
|
sdName: "rsidRPr",
|
|
34403
|
-
encode: encode$
|
|
34404
|
-
decode: decode$
|
|
34466
|
+
encode: encode$q,
|
|
34467
|
+
decode: decode$s
|
|
34405
34468
|
});
|
|
34406
|
-
const encode$
|
|
34469
|
+
const encode$p = (attributes) => {
|
|
34407
34470
|
return attributes["w:rsidDel"];
|
|
34408
34471
|
};
|
|
34409
|
-
const decode$
|
|
34472
|
+
const decode$r = (attrs) => {
|
|
34410
34473
|
return attrs.rsidDel;
|
|
34411
34474
|
};
|
|
34412
34475
|
const attrConfig$8 = Object.freeze({
|
|
34413
34476
|
xmlName: "w:rsidDel",
|
|
34414
34477
|
sdName: "rsidDel",
|
|
34415
|
-
encode: encode$
|
|
34416
|
-
decode: decode$
|
|
34478
|
+
encode: encode$p,
|
|
34479
|
+
decode: decode$r
|
|
34417
34480
|
});
|
|
34418
34481
|
const validXmlAttributes$c = [attrConfig$a, attrConfig$9, attrConfig$8];
|
|
34419
|
-
const XML_NODE_NAME$
|
|
34482
|
+
const XML_NODE_NAME$i = "w:r";
|
|
34420
34483
|
const SD_KEY_NAME = "run";
|
|
34421
|
-
const encode$
|
|
34484
|
+
const encode$o = (params2, encodedAttrs = {}) => {
|
|
34422
34485
|
const { nodes = [], nodeListHandler } = params2 || {};
|
|
34423
34486
|
const runNode = nodes[0];
|
|
34424
34487
|
if (!runNode) return void 0;
|
|
@@ -34466,7 +34529,7 @@ Please report this to https://github.com/markedjs/marked.`, e) {
|
|
|
34466
34529
|
}
|
|
34467
34530
|
return runNodeResult;
|
|
34468
34531
|
};
|
|
34469
|
-
const decode$
|
|
34532
|
+
const decode$q = (params2, decodedAttrs = {}) => {
|
|
34470
34533
|
const { node } = params2 || {};
|
|
34471
34534
|
if (!node) return void 0;
|
|
34472
34535
|
const isLinkNode = node.marks?.some((m2) => m2.type === "link");
|
|
@@ -34475,7 +34538,7 @@ Please report this to https://github.com/markedjs/marked.`, e) {
|
|
|
34475
34538
|
...params2.extraParams,
|
|
34476
34539
|
linkProcessed: true
|
|
34477
34540
|
};
|
|
34478
|
-
return translator$
|
|
34541
|
+
return translator$1c.decode({ ...params2, extraParams });
|
|
34479
34542
|
}
|
|
34480
34543
|
const { runNode: runNodeForExport, trackingMarksByType } = prepareRunTrackingContext(node);
|
|
34481
34544
|
const runAttrs = runNodeForExport.attrs || {};
|
|
@@ -34531,7 +34594,7 @@ Please report this to https://github.com/markedjs/marked.`, e) {
|
|
|
34531
34594
|
runs.push(trackedClone);
|
|
34532
34595
|
return;
|
|
34533
34596
|
}
|
|
34534
|
-
const runWrapper = { name: XML_NODE_NAME$
|
|
34597
|
+
const runWrapper = { name: XML_NODE_NAME$i, elements: [] };
|
|
34535
34598
|
applyBaseRunProps(runWrapper);
|
|
34536
34599
|
if (!Array.isArray(runWrapper.elements)) runWrapper.elements = [];
|
|
34537
34600
|
runWrapper.elements.push(cloneXmlNode(child));
|
|
@@ -34539,7 +34602,7 @@ Please report this to https://github.com/markedjs/marked.`, e) {
|
|
|
34539
34602
|
});
|
|
34540
34603
|
const trackedRuns = ensureTrackedWrapper(runs, trackingMarksByType);
|
|
34541
34604
|
if (!trackedRuns.length) {
|
|
34542
|
-
const emptyRun = { name: XML_NODE_NAME$
|
|
34605
|
+
const emptyRun = { name: XML_NODE_NAME$i, elements: [] };
|
|
34543
34606
|
applyBaseRunProps(emptyRun);
|
|
34544
34607
|
trackedRuns.push(emptyRun);
|
|
34545
34608
|
}
|
|
@@ -34553,15 +34616,15 @@ Please report this to https://github.com/markedjs/marked.`, e) {
|
|
|
34553
34616
|
}
|
|
34554
34617
|
return trackedRuns;
|
|
34555
34618
|
};
|
|
34556
|
-
const config$
|
|
34557
|
-
xmlName: XML_NODE_NAME$
|
|
34619
|
+
const config$h = {
|
|
34620
|
+
xmlName: XML_NODE_NAME$i,
|
|
34558
34621
|
sdNodeOrKeyName: SD_KEY_NAME,
|
|
34559
34622
|
type: NodeTranslator.translatorTypes.NODE,
|
|
34560
|
-
encode: encode$
|
|
34561
|
-
decode: decode$
|
|
34623
|
+
encode: encode$o,
|
|
34624
|
+
decode: decode$q,
|
|
34562
34625
|
attributes: validXmlAttributes$c
|
|
34563
34626
|
};
|
|
34564
|
-
const translator$
|
|
34627
|
+
const translator$1b = NodeTranslator.from(config$h);
|
|
34565
34628
|
function preProcessVerticalMergeCells(table, { editorSchema }) {
|
|
34566
34629
|
if (!table || !Array.isArray(table.content)) {
|
|
34567
34630
|
return table;
|
|
@@ -34602,13 +34665,13 @@ Please report this to https://github.com/markedjs/marked.`, e) {
|
|
|
34602
34665
|
}
|
|
34603
34666
|
return table;
|
|
34604
34667
|
}
|
|
34605
|
-
const translator$
|
|
34668
|
+
const translator$1a = NodeTranslator.from({
|
|
34606
34669
|
xmlName: "w:cantSplit",
|
|
34607
34670
|
sdNodeOrKeyName: "cantSplit",
|
|
34608
34671
|
encode: ({ nodes }) => ["1", "true"].includes(nodes[0].attributes?.["w:val"] ?? "1"),
|
|
34609
34672
|
decode: ({ node }) => node.attrs?.cantSplit ? { attributes: {} } : void 0
|
|
34610
34673
|
});
|
|
34611
|
-
const translator$
|
|
34674
|
+
const translator$19 = NodeTranslator.from({
|
|
34612
34675
|
xmlName: "w:cnfStyle",
|
|
34613
34676
|
sdNodeOrKeyName: "cnfStyle",
|
|
34614
34677
|
attributes: [
|
|
@@ -34634,8 +34697,8 @@ Please report this to https://github.com/markedjs/marked.`, e) {
|
|
|
34634
34697
|
return Object.keys(decodedAttrs).length > 0 ? { attributes: decodedAttrs } : void 0;
|
|
34635
34698
|
}
|
|
34636
34699
|
});
|
|
34637
|
-
const translator$
|
|
34638
|
-
const translator$
|
|
34700
|
+
const translator$18 = NodeTranslator.from(createSingleAttrPropertyHandler("w:divId"));
|
|
34701
|
+
const translator$17 = NodeTranslator.from(
|
|
34639
34702
|
createSingleAttrPropertyHandler(
|
|
34640
34703
|
"w:gridAfter",
|
|
34641
34704
|
null,
|
|
@@ -34644,7 +34707,7 @@ Please report this to https://github.com/markedjs/marked.`, e) {
|
|
|
34644
34707
|
(v2) => integerToString(v2)
|
|
34645
34708
|
)
|
|
34646
34709
|
);
|
|
34647
|
-
const translator$
|
|
34710
|
+
const translator$16 = NodeTranslator.from(
|
|
34648
34711
|
createSingleAttrPropertyHandler(
|
|
34649
34712
|
"w:gridBefore",
|
|
34650
34713
|
null,
|
|
@@ -34653,21 +34716,21 @@ Please report this to https://github.com/markedjs/marked.`, e) {
|
|
|
34653
34716
|
(v2) => integerToString(v2)
|
|
34654
34717
|
)
|
|
34655
34718
|
);
|
|
34656
|
-
const translator$
|
|
34719
|
+
const translator$15 = NodeTranslator.from({
|
|
34657
34720
|
xmlName: "w:hidden",
|
|
34658
34721
|
sdNodeOrKeyName: "hidden",
|
|
34659
34722
|
encode: ({ nodes }) => parseBoolean(nodes[0].attributes?.["w:val"] ?? "1"),
|
|
34660
34723
|
decode: ({ node }) => node.attrs.hidden ? { attributes: {} } : void 0
|
|
34661
34724
|
});
|
|
34662
|
-
const translator$
|
|
34663
|
-
const translator$
|
|
34664
|
-
const translator$
|
|
34725
|
+
const translator$14 = NodeTranslator.from(createSingleAttrPropertyHandler("w:jc", "justification"));
|
|
34726
|
+
const translator$13 = NodeTranslator.from(createMeasurementPropertyHandler("w:tblCellSpacing", "tableCellSpacing"));
|
|
34727
|
+
const translator$12 = NodeTranslator.from({
|
|
34665
34728
|
xmlName: "w:tblHeader",
|
|
34666
34729
|
sdNodeOrKeyName: "repeatHeader",
|
|
34667
34730
|
encode: ({ nodes }) => parseBoolean(nodes[0].attributes?.["w:val"] ?? "1"),
|
|
34668
34731
|
decode: ({ node }) => node.attrs.repeatHeader ? { attributes: {} } : void 0
|
|
34669
34732
|
});
|
|
34670
|
-
const translator$
|
|
34733
|
+
const translator$11 = NodeTranslator.from({
|
|
34671
34734
|
xmlName: "w:trHeight",
|
|
34672
34735
|
sdNodeOrKeyName: "rowHeight",
|
|
34673
34736
|
encode: ({ nodes }) => {
|
|
@@ -34694,84 +34757,43 @@ Please report this to https://github.com/markedjs/marked.`, e) {
|
|
|
34694
34757
|
return Object.keys(heightAttrs).length > 0 ? { attributes: heightAttrs } : void 0;
|
|
34695
34758
|
}
|
|
34696
34759
|
});
|
|
34697
|
-
const translator$
|
|
34698
|
-
const translator
|
|
34699
|
-
const
|
|
34700
|
-
|
|
34701
|
-
|
|
34702
|
-
|
|
34703
|
-
|
|
34704
|
-
|
|
34760
|
+
const translator$10 = NodeTranslator.from(createMeasurementPropertyHandler("w:wAfter"));
|
|
34761
|
+
const translator$$ = NodeTranslator.from(createMeasurementPropertyHandler("w:wBefore"));
|
|
34762
|
+
const propertyTranslators$6 = [
|
|
34763
|
+
translator$1a,
|
|
34764
|
+
translator$19,
|
|
34765
|
+
translator$18,
|
|
34766
|
+
translator$17,
|
|
34767
|
+
translator$16,
|
|
34768
|
+
translator$15,
|
|
34769
|
+
translator$14,
|
|
34770
|
+
translator$13,
|
|
34771
|
+
translator$12,
|
|
34772
|
+
translator$11,
|
|
34773
|
+
translator$10,
|
|
34774
|
+
translator$$
|
|
34775
|
+
];
|
|
34776
|
+
const translator$_ = NodeTranslator.from(
|
|
34777
|
+
createNestedPropertiesTranslator("w:trPr", "tableRowProperties", propertyTranslators$6, {
|
|
34705
34778
|
cantSplit: false,
|
|
34706
34779
|
hidden: false,
|
|
34707
34780
|
repeatHeader: false
|
|
34708
|
-
}
|
|
34709
|
-
|
|
34710
|
-
|
|
34711
|
-
...encodeProperties(node, propertyTranslatorsByXmlName$2)
|
|
34712
|
-
};
|
|
34713
|
-
return {
|
|
34714
|
-
type: NodeTranslator.translatorTypes.ATTRIBUTE,
|
|
34715
|
-
xmlName: XML_NODE_NAME$k,
|
|
34716
|
-
sdNodeOrKeyName: SD_ATTR_KEY$6,
|
|
34717
|
-
attributes
|
|
34718
|
-
};
|
|
34719
|
-
};
|
|
34720
|
-
const decode$s = (params2) => {
|
|
34721
|
-
const { tableRowProperties = {} } = params2.node.attrs || {};
|
|
34722
|
-
const elements = decodeProperties(propertyTranslatorsBySdName$2, tableRowProperties);
|
|
34723
|
-
const newNode = {
|
|
34724
|
-
name: "w:trPr",
|
|
34725
|
-
type: "element",
|
|
34726
|
-
attributes: {},
|
|
34727
|
-
elements
|
|
34728
|
-
};
|
|
34729
|
-
return newNode;
|
|
34730
|
-
};
|
|
34731
|
-
const propertyTranslators$3 = [
|
|
34732
|
-
translator$X,
|
|
34733
|
-
translator$W,
|
|
34734
|
-
translator$V,
|
|
34735
|
-
translator$U,
|
|
34736
|
-
translator$T,
|
|
34737
|
-
translator$S,
|
|
34738
|
-
translator$R,
|
|
34739
|
-
translator$Q,
|
|
34740
|
-
translator$P,
|
|
34741
|
-
translator$O,
|
|
34742
|
-
translator$N,
|
|
34743
|
-
translator$M
|
|
34744
|
-
];
|
|
34745
|
-
const propertyTranslatorsByXmlName$2 = {};
|
|
34746
|
-
propertyTranslators$3.forEach((translator2) => {
|
|
34747
|
-
propertyTranslatorsByXmlName$2[translator2.xmlName] = translator2;
|
|
34748
|
-
});
|
|
34749
|
-
const propertyTranslatorsBySdName$2 = {};
|
|
34750
|
-
propertyTranslators$3.forEach((translator2) => {
|
|
34751
|
-
propertyTranslatorsBySdName$2[translator2.sdNodeOrKeyName] = translator2;
|
|
34752
|
-
});
|
|
34753
|
-
const config$h = {
|
|
34754
|
-
xmlName: XML_NODE_NAME$k,
|
|
34755
|
-
sdNodeOrKeyName: SD_ATTR_KEY$6,
|
|
34756
|
-
type: NodeTranslator.translatorTypes.ATTRIBUTE,
|
|
34757
|
-
encode: encode$q,
|
|
34758
|
-
decode: decode$s
|
|
34759
|
-
};
|
|
34760
|
-
const translator$L = NodeTranslator.from(config$h);
|
|
34761
|
-
const XML_NODE_NAME$j = "w:tr";
|
|
34781
|
+
})
|
|
34782
|
+
);
|
|
34783
|
+
const XML_NODE_NAME$h = "w:tr";
|
|
34762
34784
|
const SD_NODE_NAME$d = "tableRow";
|
|
34763
34785
|
const validXmlAttributes$b = ["w:rsidDel", "w:rsidR", "w:rsidRPr", "w:rsidTr", "w14:paraId", "w14:textId"].map(
|
|
34764
34786
|
(xmlName) => createAttributeHandler(xmlName)
|
|
34765
34787
|
);
|
|
34766
|
-
const encode$
|
|
34788
|
+
const encode$n = (params2, encodedAttrs) => {
|
|
34767
34789
|
const { row } = params2.extraParams;
|
|
34768
34790
|
let tableRowProperties = {};
|
|
34769
34791
|
const tPr = row.elements.find((el) => el.name === "w:trPr");
|
|
34770
34792
|
if (tPr) {
|
|
34771
|
-
|
|
34793
|
+
tableRowProperties = translator$_.encode({
|
|
34772
34794
|
...params2,
|
|
34773
34795
|
nodes: [tPr]
|
|
34774
|
-
})
|
|
34796
|
+
});
|
|
34775
34797
|
}
|
|
34776
34798
|
encodedAttrs["tableRowProperties"] = Object.freeze(tableRowProperties);
|
|
34777
34799
|
encodedAttrs["rowHeight"] = twipsToPixels(tableRowProperties["rowHeight"]?.value);
|
|
@@ -34803,7 +34825,7 @@ Please report this to https://github.com/markedjs/marked.`, e) {
|
|
|
34803
34825
|
};
|
|
34804
34826
|
return newNode;
|
|
34805
34827
|
};
|
|
34806
|
-
const decode$
|
|
34828
|
+
const decode$p = (params2, decodedAttrs) => {
|
|
34807
34829
|
const { node } = params2;
|
|
34808
34830
|
const elements = translateChildNodes(params2);
|
|
34809
34831
|
if (node.attrs?.tableRowProperties) {
|
|
@@ -34815,7 +34837,7 @@ Please report this to https://github.com/markedjs/marked.`, e) {
|
|
|
34815
34837
|
}
|
|
34816
34838
|
}
|
|
34817
34839
|
tableRowProperties["cantSplit"] = node.attrs["cantSplit"];
|
|
34818
|
-
const trPr = translator$
|
|
34840
|
+
const trPr = translator$_.decode({
|
|
34819
34841
|
...params2,
|
|
34820
34842
|
node: { ...node, attrs: { ...node.attrs, tableRowProperties } }
|
|
34821
34843
|
});
|
|
@@ -34828,21 +34850,21 @@ Please report this to https://github.com/markedjs/marked.`, e) {
|
|
|
34828
34850
|
};
|
|
34829
34851
|
};
|
|
34830
34852
|
const config$g = {
|
|
34831
|
-
xmlName: XML_NODE_NAME$
|
|
34853
|
+
xmlName: XML_NODE_NAME$h,
|
|
34832
34854
|
sdNodeOrKeyName: SD_NODE_NAME$d,
|
|
34833
34855
|
type: NodeTranslator.translatorTypes.NODE,
|
|
34834
|
-
encode: encode$
|
|
34835
|
-
decode: decode$
|
|
34856
|
+
encode: encode$n,
|
|
34857
|
+
decode: decode$p,
|
|
34836
34858
|
attributes: validXmlAttributes$b
|
|
34837
34859
|
};
|
|
34838
|
-
const translator$
|
|
34839
|
-
const translator$
|
|
34860
|
+
const translator$Z = NodeTranslator.from(config$g);
|
|
34861
|
+
const translator$Y = NodeTranslator.from({
|
|
34840
34862
|
xmlName: "w:bidiVisual",
|
|
34841
34863
|
sdNodeOrKeyName: "rightToLeft",
|
|
34842
34864
|
encode: ({ nodes }) => parseBoolean(nodes[0].attributes?.["w:val"] ?? "1"),
|
|
34843
34865
|
decode: ({ node }) => node.attrs.rightToLeft ? { attributes: {} } : void 0
|
|
34844
34866
|
});
|
|
34845
|
-
const translator$
|
|
34867
|
+
const translator$X = NodeTranslator.from({
|
|
34846
34868
|
xmlName: "w:shd",
|
|
34847
34869
|
sdNodeOrKeyName: "shading",
|
|
34848
34870
|
attributes: [
|
|
@@ -34864,11 +34886,11 @@ Please report this to https://github.com/markedjs/marked.`, e) {
|
|
|
34864
34886
|
return Object.keys(decodedAttrs).length > 0 ? { attributes: decodedAttrs } : void 0;
|
|
34865
34887
|
}
|
|
34866
34888
|
});
|
|
34867
|
-
const translator$
|
|
34868
|
-
const translator$
|
|
34869
|
-
const translator$
|
|
34870
|
-
const translator$
|
|
34871
|
-
const translator$
|
|
34889
|
+
const translator$W = NodeTranslator.from(createSingleAttrPropertyHandler("w:tblCaption", "caption"));
|
|
34890
|
+
const translator$V = NodeTranslator.from(createSingleAttrPropertyHandler("w:tblDescription", "description"));
|
|
34891
|
+
const translator$U = NodeTranslator.from(createMeasurementPropertyHandler("w:tblInd", "tableIndent"));
|
|
34892
|
+
const translator$T = NodeTranslator.from(createSingleAttrPropertyHandler("w:tblLayout", "tableLayout", "w:type"));
|
|
34893
|
+
const translator$S = NodeTranslator.from({
|
|
34872
34894
|
xmlName: "w:tblLook",
|
|
34873
34895
|
sdNodeOrKeyName: "tblLook",
|
|
34874
34896
|
attributes: ["w:firstColumn", "w:firstRow", "w:lastColumn", "w:lastRow", "w:noHBand", "w:noVBand"].map((attr) => createAttributeHandler(attr, null, parseBoolean, booleanToString)).concat([createAttributeHandler("w:val")]),
|
|
@@ -34880,16 +34902,16 @@ Please report this to https://github.com/markedjs/marked.`, e) {
|
|
|
34880
34902
|
return Object.keys(decodedAttrs).length > 0 ? { attributes: decodedAttrs } : void 0;
|
|
34881
34903
|
}
|
|
34882
34904
|
});
|
|
34883
|
-
const translator$
|
|
34884
|
-
const translator$
|
|
34885
|
-
const translator$
|
|
34905
|
+
const translator$R = NodeTranslator.from(createSingleAttrPropertyHandler("w:tblOverlap", "overlap"));
|
|
34906
|
+
const translator$Q = NodeTranslator.from(createSingleAttrPropertyHandler("w:tblStyle", "tableStyleId"));
|
|
34907
|
+
const translator$P = NodeTranslator.from(
|
|
34886
34908
|
createSingleAttrPropertyHandler("w:tblStyleColBandSize", "tableStyleColBandSize")
|
|
34887
34909
|
);
|
|
34888
|
-
const translator$
|
|
34910
|
+
const translator$O = NodeTranslator.from(
|
|
34889
34911
|
createSingleAttrPropertyHandler("w:tblStyleRowBandSize", "tableStyleRowBandSize")
|
|
34890
34912
|
);
|
|
34891
|
-
const translator$
|
|
34892
|
-
const translator$
|
|
34913
|
+
const translator$N = NodeTranslator.from(createMeasurementPropertyHandler("w:tblW", "tableWidth"));
|
|
34914
|
+
const translator$M = NodeTranslator.from({
|
|
34893
34915
|
xmlName: "w:tblpPr",
|
|
34894
34916
|
sdNodeOrKeyName: "floatingTableProperties",
|
|
34895
34917
|
attributes: ["w:leftFromText", "w:rightFromText", "w:topFromText", "w:bottomFromText", "w:tblpX", "w:tblpY"].map((attr) => createAttributeHandler(attr, null, parseInteger, integerToString)).concat(["w:horzAnchor", "w:vertAnchor", "w:tblpXSpec", "w:tblpYSpec"].map((attr) => createAttributeHandler(attr))),
|
|
@@ -34901,160 +34923,67 @@ Please report this to https://github.com/markedjs/marked.`, e) {
|
|
|
34901
34923
|
return Object.keys(decodedAttrs).length > 0 ? { attributes: decodedAttrs } : void 0;
|
|
34902
34924
|
}
|
|
34903
34925
|
});
|
|
34904
|
-
const translator$
|
|
34905
|
-
const translator$
|
|
34906
|
-
const translator$
|
|
34907
|
-
const translator$
|
|
34908
|
-
const translator$
|
|
34909
|
-
const translator$
|
|
34910
|
-
const translator$
|
|
34911
|
-
const translator$
|
|
34912
|
-
const translator$
|
|
34913
|
-
const translator$
|
|
34914
|
-
const translator$
|
|
34915
|
-
const translator$
|
|
34916
|
-
const translator$
|
|
34917
|
-
const translator$
|
|
34918
|
-
const
|
|
34919
|
-
|
|
34920
|
-
const encode$o = (params2) => {
|
|
34921
|
-
const { nodes } = params2;
|
|
34922
|
-
const node = nodes[0];
|
|
34923
|
-
const attributes = encodeProperties(node, tblBordersTranslatorsByXmlName);
|
|
34924
|
-
return Object.keys(attributes).length > 0 ? attributes : void 0;
|
|
34925
|
-
};
|
|
34926
|
-
const decode$q = (params2) => {
|
|
34927
|
-
const { borders = {} } = params2.node.attrs || {};
|
|
34928
|
-
const elements = decodeProperties(tblBordersTranslatorsBySdName, borders);
|
|
34929
|
-
const newNode = {
|
|
34930
|
-
name: "w:tblBorders",
|
|
34931
|
-
type: "element",
|
|
34932
|
-
attributes: {},
|
|
34933
|
-
elements
|
|
34934
|
-
};
|
|
34935
|
-
return newNode;
|
|
34936
|
-
};
|
|
34937
|
-
const propertyTranslators$2 = [
|
|
34938
|
-
translator$w,
|
|
34939
|
-
translator$u,
|
|
34940
|
-
translator$s,
|
|
34941
|
-
translator$r,
|
|
34942
|
-
translator$q,
|
|
34943
|
-
translator$o,
|
|
34944
|
-
translator$m,
|
|
34945
|
-
translator$k
|
|
34946
|
-
];
|
|
34947
|
-
const tblBordersTranslatorsByXmlName = {};
|
|
34948
|
-
const tblBordersTranslatorsBySdName = {};
|
|
34949
|
-
propertyTranslators$2.forEach((translator2) => {
|
|
34950
|
-
tblBordersTranslatorsByXmlName[translator2.xmlName] = translator2;
|
|
34951
|
-
tblBordersTranslatorsBySdName[translator2.sdNodeOrKeyName] = translator2;
|
|
34952
|
-
});
|
|
34953
|
-
const translator$i = NodeTranslator.from({
|
|
34954
|
-
xmlName: XML_NODE_NAME$i,
|
|
34955
|
-
sdNodeOrKeyName: SD_ATTR_KEY$5,
|
|
34956
|
-
type: NodeTranslator.translatorTypes.NODE,
|
|
34957
|
-
attributes: [],
|
|
34958
|
-
encode: encode$o,
|
|
34959
|
-
decode: decode$q
|
|
34960
|
-
});
|
|
34961
|
-
const XML_NODE_NAME$h = "w:tblCellMar";
|
|
34962
|
-
const SD_ATTR_KEY$4 = "cellMargins";
|
|
34963
|
-
const encode$n = (params2) => {
|
|
34964
|
-
const { nodes } = params2;
|
|
34965
|
-
const node = nodes[0];
|
|
34966
|
-
const attributes = encodeProperties(node, propertyTranslatorsByXmlName$1);
|
|
34967
|
-
return Object.keys(attributes).length > 0 ? attributes : void 0;
|
|
34968
|
-
};
|
|
34969
|
-
const decode$p = (params2) => {
|
|
34970
|
-
const { cellMargins = {} } = params2.node.attrs || {};
|
|
34971
|
-
const elements = decodeProperties(propertyTranslatorsBySdName$1, cellMargins);
|
|
34972
|
-
const newNode = {
|
|
34973
|
-
name: XML_NODE_NAME$h,
|
|
34974
|
-
type: "element",
|
|
34975
|
-
attributes: {},
|
|
34976
|
-
elements
|
|
34977
|
-
};
|
|
34978
|
-
return newNode;
|
|
34979
|
-
};
|
|
34980
|
-
const propertyTranslators$1 = [
|
|
34981
|
-
translator$v,
|
|
34982
|
-
translator$t,
|
|
34983
|
-
translator$p,
|
|
34984
|
-
translator$n,
|
|
34985
|
-
translator$l,
|
|
34986
|
-
translator$j
|
|
34987
|
-
];
|
|
34988
|
-
const propertyTranslatorsByXmlName$1 = {};
|
|
34989
|
-
const propertyTranslatorsBySdName$1 = {};
|
|
34990
|
-
propertyTranslators$1.forEach((translator2) => {
|
|
34991
|
-
propertyTranslatorsByXmlName$1[translator2.xmlName] = translator2;
|
|
34992
|
-
propertyTranslatorsBySdName$1[translator2.sdNodeOrKeyName] = translator2;
|
|
34993
|
-
});
|
|
34994
|
-
const translator$h = NodeTranslator.from({
|
|
34995
|
-
xmlName: XML_NODE_NAME$h,
|
|
34996
|
-
sdNodeOrKeyName: SD_ATTR_KEY$4,
|
|
34997
|
-
type: NodeTranslator.translatorTypes.NODE,
|
|
34998
|
-
attributes: [],
|
|
34999
|
-
encode: encode$n,
|
|
35000
|
-
decode: decode$p
|
|
35001
|
-
});
|
|
35002
|
-
const XML_NODE_NAME$g = "w:tblPr";
|
|
35003
|
-
const SD_ATTR_KEY$3 = "tableProperties";
|
|
35004
|
-
const encode$m = (params2) => {
|
|
35005
|
-
const { nodes } = params2;
|
|
35006
|
-
const node = nodes[0];
|
|
35007
|
-
const attributes = encodeProperties(node, propertyTranslatorsByXmlName);
|
|
35008
|
-
return {
|
|
35009
|
-
xmlName: XML_NODE_NAME$g,
|
|
35010
|
-
sdNodeOrKeyName: SD_ATTR_KEY$3,
|
|
35011
|
-
attributes
|
|
35012
|
-
};
|
|
35013
|
-
};
|
|
35014
|
-
const decode$o = (params2) => {
|
|
35015
|
-
const { tableProperties = {} } = params2.node.attrs || {};
|
|
35016
|
-
const elements = decodeProperties(propertyTranslatorsBySdName, tableProperties);
|
|
35017
|
-
const newNode = {
|
|
35018
|
-
name: "w:tblPr",
|
|
35019
|
-
type: "element",
|
|
35020
|
-
attributes: {},
|
|
35021
|
-
elements
|
|
35022
|
-
};
|
|
35023
|
-
return newNode;
|
|
35024
|
-
};
|
|
35025
|
-
const propertyTranslators = [
|
|
34926
|
+
const translator$L = NodeTranslator.from(createBorderPropertyHandler("w:bottom"));
|
|
34927
|
+
const translator$K = NodeTranslator.from(createMeasurementPropertyHandler("w:bottom", "marginBottom"));
|
|
34928
|
+
const translator$J = NodeTranslator.from(createBorderPropertyHandler("w:end"));
|
|
34929
|
+
const translator$I = NodeTranslator.from(createMeasurementPropertyHandler("w:end", "marginEnd"));
|
|
34930
|
+
const translator$H = NodeTranslator.from(createBorderPropertyHandler("w:insideH"));
|
|
34931
|
+
const translator$G = NodeTranslator.from(createBorderPropertyHandler("w:insideV"));
|
|
34932
|
+
const translator$F = NodeTranslator.from(createBorderPropertyHandler("w:left"));
|
|
34933
|
+
const translator$E = NodeTranslator.from(createMeasurementPropertyHandler("w:left", "marginLeft"));
|
|
34934
|
+
const translator$D = NodeTranslator.from(createBorderPropertyHandler("w:right"));
|
|
34935
|
+
const translator$C = NodeTranslator.from(createMeasurementPropertyHandler("w:right", "marginRight"));
|
|
34936
|
+
const translator$B = NodeTranslator.from(createBorderPropertyHandler("w:start"));
|
|
34937
|
+
const translator$A = NodeTranslator.from(createMeasurementPropertyHandler("w:start", "marginStart"));
|
|
34938
|
+
const translator$z = NodeTranslator.from(createBorderPropertyHandler("w:top"));
|
|
34939
|
+
const translator$y = NodeTranslator.from(createMeasurementPropertyHandler("w:top", "marginTop"));
|
|
34940
|
+
const propertyTranslators$5 = [
|
|
34941
|
+
translator$L,
|
|
35026
34942
|
translator$J,
|
|
35027
|
-
translator$R,
|
|
35028
|
-
translator$I,
|
|
35029
34943
|
translator$H,
|
|
35030
|
-
translator$Q,
|
|
35031
34944
|
translator$G,
|
|
35032
34945
|
translator$F,
|
|
35033
|
-
translator$E,
|
|
35034
34946
|
translator$D,
|
|
35035
|
-
translator$C,
|
|
35036
34947
|
translator$B,
|
|
34948
|
+
translator$z
|
|
34949
|
+
];
|
|
34950
|
+
const translator$x = NodeTranslator.from(
|
|
34951
|
+
createNestedPropertiesTranslator("w:tblBorders", "borders", propertyTranslators$5)
|
|
34952
|
+
);
|
|
34953
|
+
const propertyTranslators$4 = [
|
|
34954
|
+
translator$K,
|
|
34955
|
+
translator$I,
|
|
34956
|
+
translator$E,
|
|
34957
|
+
translator$C,
|
|
35037
34958
|
translator$A,
|
|
35038
|
-
translator$
|
|
35039
|
-
|
|
34959
|
+
translator$y
|
|
34960
|
+
];
|
|
34961
|
+
const translator$w = NodeTranslator.from(
|
|
34962
|
+
createNestedPropertiesTranslator("w:tblCellMar", "cellMargins", propertyTranslators$4)
|
|
34963
|
+
);
|
|
34964
|
+
const propertyTranslators$3 = [
|
|
34965
|
+
translator$Y,
|
|
34966
|
+
translator$14,
|
|
34967
|
+
translator$X,
|
|
34968
|
+
translator$W,
|
|
34969
|
+
translator$13,
|
|
34970
|
+
translator$V,
|
|
34971
|
+
translator$U,
|
|
34972
|
+
translator$T,
|
|
34973
|
+
translator$S,
|
|
34974
|
+
translator$R,
|
|
34975
|
+
translator$Q,
|
|
34976
|
+
translator$P,
|
|
34977
|
+
translator$O,
|
|
34978
|
+
translator$N,
|
|
34979
|
+
translator$M,
|
|
35040
34980
|
translator$x,
|
|
35041
|
-
translator$
|
|
35042
|
-
translator$h
|
|
34981
|
+
translator$w
|
|
35043
34982
|
];
|
|
35044
|
-
const
|
|
35045
|
-
|
|
35046
|
-
|
|
35047
|
-
|
|
35048
|
-
propertyTranslatorsBySdName[translator2.sdNodeOrKeyName] = translator2;
|
|
35049
|
-
});
|
|
35050
|
-
const config$f = {
|
|
35051
|
-
xmlName: XML_NODE_NAME$g,
|
|
35052
|
-
sdNodeOrKeyName: SD_ATTR_KEY$3,
|
|
35053
|
-
encode: encode$m,
|
|
35054
|
-
decode: decode$o
|
|
35055
|
-
};
|
|
35056
|
-
const translator$g = NodeTranslator.from(config$f);
|
|
35057
|
-
const translator$f = NodeTranslator.from(
|
|
34983
|
+
const translator$v = NodeTranslator.from(
|
|
34984
|
+
createNestedPropertiesTranslator("w:tblPr", "tableProperties", propertyTranslators$3)
|
|
34985
|
+
);
|
|
34986
|
+
const translator$u = NodeTranslator.from(
|
|
35058
34987
|
createSingleAttrPropertyHandler("w:gridCol", "col", "w:w", parseInteger, integerToString)
|
|
35059
34988
|
);
|
|
35060
34989
|
const DEFAULT_COLUMN_WIDTH_PX = 100;
|
|
@@ -35104,20 +35033,20 @@ Please report this to https://github.com/markedjs/marked.`, e) {
|
|
|
35104
35033
|
}
|
|
35105
35034
|
return Math.max(fallbackWidthTwips, cellMinWidthTwips);
|
|
35106
35035
|
};
|
|
35107
|
-
const XML_NODE_NAME$
|
|
35108
|
-
const SD_ATTR_KEY$
|
|
35036
|
+
const XML_NODE_NAME$g = "w:tblGrid";
|
|
35037
|
+
const SD_ATTR_KEY$3 = "grid";
|
|
35109
35038
|
const cellMinWidth = pixelsToTwips(10);
|
|
35110
|
-
const encode$
|
|
35039
|
+
const encode$m = (params2) => {
|
|
35111
35040
|
const { nodes } = params2;
|
|
35112
35041
|
const node = nodes[0];
|
|
35113
|
-
const attributes = encodeProperties(node, { [translator$
|
|
35042
|
+
const attributes = encodeProperties(node, { [translator$u.xmlName]: translator$u }, true);
|
|
35114
35043
|
return {
|
|
35115
|
-
xmlName: XML_NODE_NAME$
|
|
35116
|
-
sdNodeOrKeyName: SD_ATTR_KEY$
|
|
35044
|
+
xmlName: XML_NODE_NAME$g,
|
|
35045
|
+
sdNodeOrKeyName: SD_ATTR_KEY$3,
|
|
35117
35046
|
attributes
|
|
35118
35047
|
};
|
|
35119
35048
|
};
|
|
35120
|
-
const decode$
|
|
35049
|
+
const decode$o = (params2) => {
|
|
35121
35050
|
const { grid: rawGrid } = params2.node.attrs || {};
|
|
35122
35051
|
const grid = Array.isArray(rawGrid) ? rawGrid : [];
|
|
35123
35052
|
const { firstRow = {} } = params2.extraParams || {};
|
|
@@ -35136,10 +35065,10 @@ Please report this to https://github.com/markedjs/marked.`, e) {
|
|
|
35136
35065
|
numericWidth = fallbackColumnWidthTwips;
|
|
35137
35066
|
}
|
|
35138
35067
|
numericWidth = Math.max(numericWidth, cellMinWidth);
|
|
35139
|
-
const decoded = translator$
|
|
35068
|
+
const decoded = translator$u.decode({
|
|
35140
35069
|
node: { type: (
|
|
35141
35070
|
/** @type {string} */
|
|
35142
|
-
translator$
|
|
35071
|
+
translator$u.sdNodeOrKeyName
|
|
35143
35072
|
), attrs: { col: numericWidth } }
|
|
35144
35073
|
});
|
|
35145
35074
|
if (decoded) elements.push(decoded);
|
|
@@ -35174,19 +35103,19 @@ Please report this to https://github.com/markedjs/marked.`, e) {
|
|
|
35174
35103
|
columnIndex++;
|
|
35175
35104
|
}
|
|
35176
35105
|
const newNode = {
|
|
35177
|
-
name: XML_NODE_NAME$
|
|
35106
|
+
name: XML_NODE_NAME$g,
|
|
35178
35107
|
attributes: {},
|
|
35179
35108
|
elements
|
|
35180
35109
|
};
|
|
35181
35110
|
return newNode;
|
|
35182
35111
|
};
|
|
35183
|
-
const config$
|
|
35184
|
-
xmlName: XML_NODE_NAME$
|
|
35185
|
-
sdNodeOrKeyName: SD_ATTR_KEY$
|
|
35186
|
-
encode: encode$
|
|
35187
|
-
decode: decode$
|
|
35112
|
+
const config$f = {
|
|
35113
|
+
xmlName: XML_NODE_NAME$g,
|
|
35114
|
+
sdNodeOrKeyName: SD_ATTR_KEY$3,
|
|
35115
|
+
encode: encode$m,
|
|
35116
|
+
decode: decode$o
|
|
35188
35117
|
};
|
|
35189
|
-
const translator$
|
|
35118
|
+
const translator$t = NodeTranslator.from(config$f);
|
|
35190
35119
|
const DEFAULT_PAGE_WIDTH_TWIPS = 12240;
|
|
35191
35120
|
const DEFAULT_PAGE_MARGIN_TWIPS = 1440;
|
|
35192
35121
|
const DEFAULT_CONTENT_WIDTH_TWIPS = DEFAULT_PAGE_WIDTH_TWIPS - 2 * DEFAULT_PAGE_MARGIN_TWIPS;
|
|
@@ -35249,19 +35178,19 @@ Please report this to https://github.com/markedjs/marked.`, e) {
|
|
|
35249
35178
|
columnWidths: Array(columnCount).fill(fallbackColumnWidthPx)
|
|
35250
35179
|
};
|
|
35251
35180
|
};
|
|
35252
|
-
const XML_NODE_NAME$
|
|
35181
|
+
const XML_NODE_NAME$f = "w:tbl";
|
|
35253
35182
|
const SD_NODE_NAME$c = "table";
|
|
35254
|
-
const encode$
|
|
35183
|
+
const encode$l = (params2, encodedAttrs) => {
|
|
35255
35184
|
const { nodes } = params2;
|
|
35256
35185
|
const node = nodes[0];
|
|
35257
35186
|
const tblPr = node.elements.find((el) => el.name === "w:tblPr");
|
|
35258
35187
|
if (tblPr) {
|
|
35259
|
-
const encodedProperties = translator$
|
|
35260
|
-
encodedAttrs["tableProperties"] = encodedProperties
|
|
35188
|
+
const encodedProperties = translator$v.encode({ ...params2, nodes: [tblPr] });
|
|
35189
|
+
encodedAttrs["tableProperties"] = encodedProperties || {};
|
|
35261
35190
|
}
|
|
35262
35191
|
const tblGrid = node.elements.find((el) => el.name === "w:tblGrid");
|
|
35263
35192
|
if (tblGrid) {
|
|
35264
|
-
encodedAttrs["grid"] = translator$
|
|
35193
|
+
encodedAttrs["grid"] = translator$t.encode({ ...params2, nodes: [tblGrid] }).attributes;
|
|
35265
35194
|
}
|
|
35266
35195
|
[
|
|
35267
35196
|
"tableStyleId",
|
|
@@ -35328,7 +35257,7 @@ Please report this to https://github.com/markedjs/marked.`, e) {
|
|
|
35328
35257
|
}
|
|
35329
35258
|
const content = [];
|
|
35330
35259
|
rows.forEach((row) => {
|
|
35331
|
-
const result = translator$
|
|
35260
|
+
const result = translator$Z.encode({
|
|
35332
35261
|
...params2,
|
|
35333
35262
|
nodes: [row],
|
|
35334
35263
|
extraParams: {
|
|
@@ -35347,13 +35276,13 @@ Please report this to https://github.com/markedjs/marked.`, e) {
|
|
|
35347
35276
|
attrs: encodedAttrs
|
|
35348
35277
|
};
|
|
35349
35278
|
};
|
|
35350
|
-
const decode$
|
|
35279
|
+
const decode$n = (params2, decodedAttrs) => {
|
|
35351
35280
|
params2.node = preProcessVerticalMergeCells(params2.node, params2);
|
|
35352
35281
|
const { node } = params2;
|
|
35353
35282
|
const elements = translateChildNodes(params2);
|
|
35354
35283
|
const firstRow = node.content?.find((n) => n.type === "tableRow");
|
|
35355
35284
|
const properties = node.attrs.grid;
|
|
35356
|
-
const element = translator$
|
|
35285
|
+
const element = translator$t.decode({
|
|
35357
35286
|
...params2,
|
|
35358
35287
|
node: { ...node, attrs: { ...node.attrs, grid: properties } },
|
|
35359
35288
|
extraParams: {
|
|
@@ -35363,7 +35292,7 @@ Please report this to https://github.com/markedjs/marked.`, e) {
|
|
|
35363
35292
|
if (element) elements.unshift(element);
|
|
35364
35293
|
if (node.attrs?.tableProperties) {
|
|
35365
35294
|
const properties2 = { ...node.attrs.tableProperties };
|
|
35366
|
-
const element2 = translator$
|
|
35295
|
+
const element2 = translator$v.decode({
|
|
35367
35296
|
...params2,
|
|
35368
35297
|
node: { ...node, attrs: { ...node.attrs, tableProperties: properties2 } }
|
|
35369
35298
|
});
|
|
@@ -35383,7 +35312,7 @@ Please report this to https://github.com/markedjs/marked.`, e) {
|
|
|
35383
35312
|
const color = attributes.color;
|
|
35384
35313
|
const size2 = attributes.size;
|
|
35385
35314
|
if (color && color !== "auto") attrs["color"] = color.startsWith("#") ? color : `#${color}`;
|
|
35386
|
-
if (size2 && size2 !== "auto") attrs["size"] =
|
|
35315
|
+
if (size2 && size2 !== "auto") attrs["size"] = eighthPointsToPixels(size2);
|
|
35387
35316
|
const rowBorderNames = ["insideH", "insideV"];
|
|
35388
35317
|
if (rowBorderNames.includes(name)) rowBorders[name] = attrs;
|
|
35389
35318
|
borders[name] = attrs;
|
|
@@ -35429,7 +35358,7 @@ Please report this to https://github.com/markedjs/marked.`, e) {
|
|
|
35429
35358
|
if (baseTblPr && baseTblPr.elements) {
|
|
35430
35359
|
tblPr.elements.push(...baseTblPr.elements);
|
|
35431
35360
|
}
|
|
35432
|
-
const tableProperties = translator$
|
|
35361
|
+
const tableProperties = translator$v.encode({ ...params2, nodes: [tblPr] });
|
|
35433
35362
|
const { borders, rowBorders } = _processTableBorders(tableProperties.borders || {});
|
|
35434
35363
|
if (borders) stylesToReturn.borders = borders;
|
|
35435
35364
|
if (rowBorders) stylesToReturn.rowBorders = rowBorders;
|
|
@@ -35446,16 +35375,16 @@ Please report this to https://github.com/markedjs/marked.`, e) {
|
|
|
35446
35375
|
}
|
|
35447
35376
|
return stylesToReturn;
|
|
35448
35377
|
}
|
|
35449
|
-
const config$
|
|
35450
|
-
xmlName: XML_NODE_NAME$
|
|
35378
|
+
const config$e = {
|
|
35379
|
+
xmlName: XML_NODE_NAME$f,
|
|
35451
35380
|
sdNodeOrKeyName: SD_NODE_NAME$c,
|
|
35452
35381
|
type: NodeTranslator.translatorTypes.NODE,
|
|
35453
|
-
encode: encode$
|
|
35454
|
-
decode: decode$
|
|
35382
|
+
encode: encode$l,
|
|
35383
|
+
decode: decode$n,
|
|
35455
35384
|
attributes: []
|
|
35456
35385
|
};
|
|
35457
|
-
const translator$
|
|
35458
|
-
const tableNodeHandlerEntity = generateV2HandlerEntity("tableNodeHandler", translator$
|
|
35386
|
+
const translator$s = NodeTranslator.from(config$e);
|
|
35387
|
+
const tableNodeHandlerEntity = generateV2HandlerEntity("tableNodeHandler", translator$s);
|
|
35459
35388
|
function getReferencedTableStyles(tblStyleTag, docx) {
|
|
35460
35389
|
if (!tblStyleTag) return null;
|
|
35461
35390
|
const stylesToReturn = {};
|
|
@@ -35526,7 +35455,7 @@ Please report this to https://github.com/markedjs/marked.`, e) {
|
|
|
35526
35455
|
const color = attributes["w:color"];
|
|
35527
35456
|
const size2 = attributes["w:sz"];
|
|
35528
35457
|
if (color && color !== "auto") attrs["color"] = color.startsWith("#") ? color : `#${color}`;
|
|
35529
|
-
if (size2 && size2 !== "auto") attrs["size"] =
|
|
35458
|
+
if (size2 && size2 !== "auto") attrs["size"] = eighthPointsToPixels(size2);
|
|
35530
35459
|
const rowBorderNames = ["insideH", "insideV"];
|
|
35531
35460
|
if (rowBorderNames.includes(borderName)) rowBorders[borderName] = attrs;
|
|
35532
35461
|
borders[borderName] = attrs;
|
|
@@ -35536,6 +35465,125 @@ Please report this to https://github.com/markedjs/marked.`, e) {
|
|
|
35536
35465
|
rowBorders
|
|
35537
35466
|
};
|
|
35538
35467
|
}
|
|
35468
|
+
const translator$r = NodeTranslator.from(createMeasurementPropertyHandler("w:tcW", "cellWidth"));
|
|
35469
|
+
const translator$q = NodeTranslator.from(
|
|
35470
|
+
createSingleAttrPropertyHandler(
|
|
35471
|
+
"w:gridSpan",
|
|
35472
|
+
null,
|
|
35473
|
+
"w:val",
|
|
35474
|
+
(v2) => parseInteger(v2) ?? void 0,
|
|
35475
|
+
(v2) => integerToString(v2)
|
|
35476
|
+
)
|
|
35477
|
+
);
|
|
35478
|
+
const translator$p = NodeTranslator.from(createSingleAttrPropertyHandler("w:vMerge"));
|
|
35479
|
+
const translator$o = NodeTranslator.from(createBorderPropertyHandler("w:tl2br"));
|
|
35480
|
+
const translator$n = NodeTranslator.from(createBorderPropertyHandler("w:tr2bl"));
|
|
35481
|
+
const propertyTranslators$2 = [
|
|
35482
|
+
translator$z,
|
|
35483
|
+
translator$B,
|
|
35484
|
+
translator$F,
|
|
35485
|
+
translator$L,
|
|
35486
|
+
translator$J,
|
|
35487
|
+
translator$D,
|
|
35488
|
+
translator$H,
|
|
35489
|
+
translator$G,
|
|
35490
|
+
translator$o,
|
|
35491
|
+
translator$n
|
|
35492
|
+
];
|
|
35493
|
+
const translator$m = NodeTranslator.from(
|
|
35494
|
+
createNestedPropertiesTranslator("w:tcBorders", "borders", propertyTranslators$2)
|
|
35495
|
+
);
|
|
35496
|
+
const translator$l = NodeTranslator.from(
|
|
35497
|
+
createSingleAttrPropertyHandler(
|
|
35498
|
+
"w:noWrap",
|
|
35499
|
+
null,
|
|
35500
|
+
"w:val",
|
|
35501
|
+
(v2) => parseBoolean(v2 ?? "true"),
|
|
35502
|
+
(v2) => booleanToString(v2)
|
|
35503
|
+
)
|
|
35504
|
+
);
|
|
35505
|
+
const propertyTranslators$1 = [
|
|
35506
|
+
translator$K,
|
|
35507
|
+
translator$I,
|
|
35508
|
+
translator$E,
|
|
35509
|
+
translator$C,
|
|
35510
|
+
translator$A,
|
|
35511
|
+
translator$y
|
|
35512
|
+
];
|
|
35513
|
+
const translator$k = NodeTranslator.from(
|
|
35514
|
+
createNestedPropertiesTranslator("w:tcMar", "cellMargins", propertyTranslators$1)
|
|
35515
|
+
);
|
|
35516
|
+
const translator$j = NodeTranslator.from(createSingleAttrPropertyHandler("w:textDirection"));
|
|
35517
|
+
const translator$i = NodeTranslator.from(
|
|
35518
|
+
createSingleAttrPropertyHandler(
|
|
35519
|
+
"w:tcFitText",
|
|
35520
|
+
null,
|
|
35521
|
+
"w:val",
|
|
35522
|
+
(v2) => parseBoolean(v2 ?? "true"),
|
|
35523
|
+
(v2) => booleanToString(v2)
|
|
35524
|
+
)
|
|
35525
|
+
);
|
|
35526
|
+
const translator$h = NodeTranslator.from(createSingleAttrPropertyHandler("w:vAlign"));
|
|
35527
|
+
const translator$g = NodeTranslator.from(
|
|
35528
|
+
createSingleAttrPropertyHandler(
|
|
35529
|
+
"w:hideMark",
|
|
35530
|
+
null,
|
|
35531
|
+
"w:val",
|
|
35532
|
+
(v2) => parseBoolean(v2 ?? "true"),
|
|
35533
|
+
(v2) => booleanToString(v2)
|
|
35534
|
+
)
|
|
35535
|
+
);
|
|
35536
|
+
const translator$f = NodeTranslator.from(createSingleAttrPropertyHandler("w:header"));
|
|
35537
|
+
const XML_NODE_NAME$e = "w:headers";
|
|
35538
|
+
const SD_ATTR_KEY$2 = "headers";
|
|
35539
|
+
const encode$k = (params2) => {
|
|
35540
|
+
const { nodes } = params2;
|
|
35541
|
+
const node = nodes[0];
|
|
35542
|
+
const attributes = encodeProperties(node, { [translator$f.xmlName]: translator$f }, true);
|
|
35543
|
+
return {
|
|
35544
|
+
xmlName: XML_NODE_NAME$e,
|
|
35545
|
+
sdNodeOrKeyName: SD_ATTR_KEY$2,
|
|
35546
|
+
attributes
|
|
35547
|
+
};
|
|
35548
|
+
};
|
|
35549
|
+
const decode$m = (params2) => {
|
|
35550
|
+
const { headers = [] } = params2.node.attrs || {};
|
|
35551
|
+
const newNode = {
|
|
35552
|
+
name: XML_NODE_NAME$e,
|
|
35553
|
+
attributes: {},
|
|
35554
|
+
elements: headers.map(
|
|
35555
|
+
(header) => translator$f.decode({
|
|
35556
|
+
node: { type: "header", attrs: header }
|
|
35557
|
+
})
|
|
35558
|
+
)
|
|
35559
|
+
};
|
|
35560
|
+
return newNode;
|
|
35561
|
+
};
|
|
35562
|
+
const config$d = {
|
|
35563
|
+
xmlName: XML_NODE_NAME$e,
|
|
35564
|
+
sdNodeOrKeyName: SD_ATTR_KEY$2,
|
|
35565
|
+
encode: encode$k,
|
|
35566
|
+
decode: decode$m
|
|
35567
|
+
};
|
|
35568
|
+
const translator$e = NodeTranslator.from(config$d);
|
|
35569
|
+
const propertyTranslators = [
|
|
35570
|
+
translator$19,
|
|
35571
|
+
translator$r,
|
|
35572
|
+
translator$q,
|
|
35573
|
+
translator$p,
|
|
35574
|
+
translator$m,
|
|
35575
|
+
translator$X,
|
|
35576
|
+
translator$l,
|
|
35577
|
+
translator$k,
|
|
35578
|
+
translator$j,
|
|
35579
|
+
translator$i,
|
|
35580
|
+
translator$h,
|
|
35581
|
+
translator$g,
|
|
35582
|
+
translator$e
|
|
35583
|
+
];
|
|
35584
|
+
const translator$d = NodeTranslator.from(
|
|
35585
|
+
createNestedPropertiesTranslator("w:tcPr", "tableCellProperties", propertyTranslators)
|
|
35586
|
+
);
|
|
35539
35587
|
function handleTableCellNode({
|
|
35540
35588
|
params: params2,
|
|
35541
35589
|
node,
|
|
@@ -35548,8 +35596,10 @@ Please report this to https://github.com/markedjs/marked.`, e) {
|
|
|
35548
35596
|
allColumnWidths = []
|
|
35549
35597
|
}) {
|
|
35550
35598
|
const { docx, nodeListHandler } = params2;
|
|
35599
|
+
const attributes = {};
|
|
35551
35600
|
const tcPr = node.elements.find((el) => el.name === "w:tcPr");
|
|
35552
|
-
const
|
|
35601
|
+
const tableCellProperties = tcPr ? translator$d.encode({ ...params2, nodes: [tcPr] }) ?? {} : {};
|
|
35602
|
+
attributes["tableCellProperties"] = tableCellProperties;
|
|
35553
35603
|
if (rowBorders?.insideH) {
|
|
35554
35604
|
rowBorders["bottom"] = rowBorders.insideH;
|
|
35555
35605
|
delete rowBorders.insideH;
|
|
@@ -35558,33 +35608,20 @@ Please report this to https://github.com/markedjs/marked.`, e) {
|
|
|
35558
35608
|
rowBorders["right"] = rowBorders.insideV;
|
|
35559
35609
|
delete rowBorders?.insideV;
|
|
35560
35610
|
}
|
|
35561
|
-
|
|
35562
|
-
const
|
|
35563
|
-
|
|
35564
|
-
|
|
35565
|
-
|
|
35611
|
+
if (rowBorders) attributes["borders"] = { ...rowBorders };
|
|
35612
|
+
const inlineBorders = processInlineCellBorders(tableCellProperties.borders, rowBorders);
|
|
35613
|
+
if (inlineBorders) attributes["borders"] = Object.assign(attributes["borders"] || {}, inlineBorders);
|
|
35614
|
+
const colspan = tableCellProperties.gridSpan;
|
|
35615
|
+
if (colspan && !isNaN(parseInt(colspan, 10))) attributes["colspan"] = parseInt(colspan, 10);
|
|
35616
|
+
let width = tableCellProperties.cellWidth?.value ? twipsToPixels(tableCellProperties.cellWidth?.value) : null;
|
|
35617
|
+
const widthType = tableCellProperties.cellWidth?.type;
|
|
35618
|
+
if (widthType) attributes["widthType"] = widthType;
|
|
35566
35619
|
if (!width && columnWidth) width = columnWidth;
|
|
35567
|
-
const vMerge = getTableCellMergeTag(node);
|
|
35568
|
-
const { attributes: vMergeAttrs } = vMerge || {};
|
|
35569
|
-
const backgroundColor = tcPr?.elements?.find((el) => el.name === "w:shd");
|
|
35570
|
-
const background = {
|
|
35571
|
-
color: backgroundColor?.attributes["w:fill"]
|
|
35572
|
-
};
|
|
35573
|
-
const colspanTag = tcPr?.elements?.find((el) => el.name === "w:gridSpan");
|
|
35574
|
-
const colspan = colspanTag?.attributes["w:val"];
|
|
35575
|
-
const marginTag = tcPr?.elements?.find((el) => el.name === "w:tcMar");
|
|
35576
|
-
const verticalAlignTag = tcPr?.elements?.find((el) => el.name === "w:vAlign");
|
|
35577
|
-
const verticalAlign = verticalAlignTag?.attributes["w:val"] || "top";
|
|
35578
|
-
const attributes = {};
|
|
35579
|
-
const referencedStyles = getReferencedTableStyles(styleTag, docx) || {};
|
|
35580
|
-
attributes.cellMargins = getTableCellMargins(marginTag, referencedStyles);
|
|
35581
|
-
const { fontSize: fontSize2, fonts = {} } = referencedStyles;
|
|
35582
|
-
const fontFamily2 = fonts["ascii"];
|
|
35583
35620
|
if (width) {
|
|
35584
35621
|
attributes["colwidth"] = [width];
|
|
35585
35622
|
attributes["widthUnit"] = "px";
|
|
35586
|
-
const defaultColWidths =
|
|
35587
|
-
const hasDefaultColWidths =
|
|
35623
|
+
const defaultColWidths = allColumnWidths;
|
|
35624
|
+
const hasDefaultColWidths = allColumnWidths && allColumnWidths.length > 0;
|
|
35588
35625
|
const colspanNum = parseInt(colspan || 1, 10);
|
|
35589
35626
|
if (colspanNum && colspanNum > 1 && hasDefaultColWidths) {
|
|
35590
35627
|
let colwidth = [];
|
|
@@ -35602,15 +35639,19 @@ Please report this to https://github.com/markedjs/marked.`, e) {
|
|
|
35602
35639
|
}
|
|
35603
35640
|
}
|
|
35604
35641
|
}
|
|
35605
|
-
|
|
35606
|
-
|
|
35607
|
-
|
|
35608
|
-
attributes["
|
|
35642
|
+
const background = {
|
|
35643
|
+
color: tableCellProperties.shading?.fill
|
|
35644
|
+
};
|
|
35645
|
+
if (background.color) attributes["background"] = background;
|
|
35646
|
+
const verticalAlign = tableCellProperties.vAlign;
|
|
35647
|
+
if (verticalAlign) attributes["verticalAlign"] = verticalAlign;
|
|
35648
|
+
const referencedStyles = getReferencedTableStyles(styleTag, docx) || { fontSize: null, fonts: {}, cellMargins: {} };
|
|
35649
|
+
attributes.cellMargins = getTableCellMargins(tableCellProperties.cellMargins, referencedStyles);
|
|
35650
|
+
const { fontSize: fontSize2, fonts = {} } = referencedStyles;
|
|
35651
|
+
const fontFamily2 = fonts["ascii"];
|
|
35609
35652
|
if (fontSize2) attributes["fontSize"] = fontSize2;
|
|
35610
|
-
if (fontFamily2) attributes["fontFamily"] = fontFamily2
|
|
35611
|
-
if (
|
|
35612
|
-
if (inlineBorders) attributes["borders"] = Object.assign(attributes["borders"] || {}, inlineBorders);
|
|
35613
|
-
if (vMergeAttrs && vMergeAttrs["w:val"] === "restart") {
|
|
35653
|
+
if (fontFamily2) attributes["fontFamily"] = fontFamily2;
|
|
35654
|
+
if (tableCellProperties.vMerge === "restart") {
|
|
35614
35655
|
const rows = table.elements.filter((el) => el.name === "w:tr");
|
|
35615
35656
|
const currentRowIndex = rows.findIndex((r2) => r2 === row);
|
|
35616
35657
|
const remainingRows = rows.slice(currentRowIndex + 1);
|
|
@@ -35621,9 +35662,8 @@ Please report this to https://github.com/markedjs/marked.`, e) {
|
|
|
35621
35662
|
const firstCell = remainingRow.elements.findIndex((el) => el.name === "w:tc");
|
|
35622
35663
|
const cellAtIndex = remainingRow.elements[firstCell + cellIndex];
|
|
35623
35664
|
if (!cellAtIndex) break;
|
|
35624
|
-
const
|
|
35625
|
-
|
|
35626
|
-
if (!vMerge2 && !currentCellMergeAttrs || currentCellMergeAttrs && currentCellMergeAttrs["w:val"] === "restart") {
|
|
35665
|
+
const vMerge = getTableCellVMerge(cellAtIndex);
|
|
35666
|
+
if (!vMerge || vMerge === "restart") {
|
|
35627
35667
|
break;
|
|
35628
35668
|
}
|
|
35629
35669
|
rowspan++;
|
|
@@ -35643,69 +35683,52 @@ Please report this to https://github.com/markedjs/marked.`, e) {
|
|
|
35643
35683
|
}
|
|
35644
35684
|
const processInlineCellBorders = (borders, rowBorders) => {
|
|
35645
35685
|
if (!borders) return null;
|
|
35646
|
-
|
|
35647
|
-
|
|
35648
|
-
|
|
35649
|
-
|
|
35650
|
-
|
|
35651
|
-
|
|
35652
|
-
|
|
35653
|
-
|
|
35654
|
-
|
|
35655
|
-
|
|
35656
|
-
|
|
35657
|
-
|
|
35658
|
-
|
|
35659
|
-
|
|
35660
|
-
|
|
35661
|
-
|
|
35662
|
-
|
|
35663
|
-
|
|
35664
|
-
|
|
35665
|
-
|
|
35666
|
-
|
|
35667
|
-
|
|
35668
|
-
const border = Object.assign({}, rowBorders[direction] || {});
|
|
35669
|
-
if (!Object.keys(border)) return null;
|
|
35670
|
-
border["val"] = "none";
|
|
35671
|
-
return border;
|
|
35672
|
-
}
|
|
35673
|
-
return null;
|
|
35686
|
+
return ["bottom", "top", "left", "right"].reduce((acc, direction) => {
|
|
35687
|
+
const borderAttrs = borders[direction];
|
|
35688
|
+
const rowBorderAttrs = rowBorders[direction];
|
|
35689
|
+
if (borderAttrs && borderAttrs["val"] !== "nil") {
|
|
35690
|
+
const color = borderAttrs["color"];
|
|
35691
|
+
let size2 = borderAttrs["size"];
|
|
35692
|
+
if (size2) size2 = eighthPointsToPixels(size2);
|
|
35693
|
+
acc[direction] = { color, size: size2, val: borderAttrs["val"] };
|
|
35694
|
+
return acc;
|
|
35695
|
+
}
|
|
35696
|
+
if (borderAttrs && borderAttrs["val"] === "nil") {
|
|
35697
|
+
const border = Object.assign({}, rowBorderAttrs || {});
|
|
35698
|
+
if (!Object.keys(border).length) {
|
|
35699
|
+
return acc;
|
|
35700
|
+
} else {
|
|
35701
|
+
border["val"] = "none";
|
|
35702
|
+
acc[direction] = border;
|
|
35703
|
+
return acc;
|
|
35704
|
+
}
|
|
35705
|
+
}
|
|
35706
|
+
return acc;
|
|
35707
|
+
}, {});
|
|
35674
35708
|
};
|
|
35675
|
-
const
|
|
35709
|
+
const getTableCellVMerge = (node) => {
|
|
35676
35710
|
const tcPr = node.elements.find((el) => el.name === "w:tcPr");
|
|
35677
35711
|
const vMerge = tcPr?.elements?.find((el) => el.name === "w:vMerge");
|
|
35678
|
-
return
|
|
35679
|
-
|
|
35680
|
-
|
|
35681
|
-
|
|
35682
|
-
const inlineMarginRightTag = marginTag?.elements?.find((el) => el.name === "w:right");
|
|
35683
|
-
const inlineMarginTopTag = marginTag?.elements?.find((el) => el.name === "w:top");
|
|
35684
|
-
const inlineMarginBottomTag = marginTag?.elements?.find((el) => el.name === "w:bottom");
|
|
35685
|
-
const inlineMarginLeftValue = inlineMarginLeftTag?.attributes["w:w"];
|
|
35686
|
-
const inlineMarginRightValue = inlineMarginRightTag?.attributes["w:w"];
|
|
35687
|
-
const inlineMarginTopValue = inlineMarginTopTag?.attributes["w:w"];
|
|
35688
|
-
const inlineMarginBottomValue = inlineMarginBottomTag?.attributes["w:w"];
|
|
35712
|
+
if (!vMerge) return null;
|
|
35713
|
+
return vMerge.attributes?.["w:val"] || "continue";
|
|
35714
|
+
};
|
|
35715
|
+
const getTableCellMargins = (inlineMargins, referencedStyles) => {
|
|
35689
35716
|
const { cellMargins = {} } = referencedStyles;
|
|
35690
|
-
|
|
35691
|
-
|
|
35692
|
-
|
|
35693
|
-
|
|
35694
|
-
|
|
35695
|
-
|
|
35696
|
-
|
|
35697
|
-
|
|
35698
|
-
if (styleValue
|
|
35699
|
-
|
|
35700
|
-
|
|
35701
|
-
|
|
35702
|
-
|
|
35703
|
-
|
|
35704
|
-
|
|
35705
|
-
top: twipsToPixels(resolveMargin(inlineMarginTopValue, marginTopStyle)),
|
|
35706
|
-
bottom: twipsToPixels(resolveMargin(inlineMarginBottomValue, marginBottomStyle))
|
|
35707
|
-
};
|
|
35708
|
-
return margins;
|
|
35717
|
+
return ["left", "right", "top", "bottom"].reduce((acc, direction) => {
|
|
35718
|
+
const key2 = `margin${direction.charAt(0).toUpperCase() + direction.slice(1)}`;
|
|
35719
|
+
const inlineValue = inlineMargins ? inlineMargins?.[key2]?.value : null;
|
|
35720
|
+
const styleValue = cellMargins ? cellMargins[key2] : null;
|
|
35721
|
+
if (inlineValue != null) {
|
|
35722
|
+
acc[direction] = twipsToPixels(inlineValue);
|
|
35723
|
+
} else if (styleValue == null) {
|
|
35724
|
+
acc[direction] = void 0;
|
|
35725
|
+
} else if (typeof styleValue === "object") {
|
|
35726
|
+
acc[direction] = twipsToPixels(styleValue.value);
|
|
35727
|
+
} else {
|
|
35728
|
+
acc[direction] = twipsToPixels(styleValue);
|
|
35729
|
+
}
|
|
35730
|
+
return acc;
|
|
35731
|
+
}, {});
|
|
35709
35732
|
};
|
|
35710
35733
|
function translateTableCell(params2) {
|
|
35711
35734
|
const elements = translateChildNodes({
|
|
@@ -35720,102 +35743,86 @@ Please report this to https://github.com/markedjs/marked.`, e) {
|
|
|
35720
35743
|
};
|
|
35721
35744
|
}
|
|
35722
35745
|
function generateTableCellProperties(node) {
|
|
35723
|
-
const
|
|
35746
|
+
const tableCellProperties = { ...node.attrs?.tableCellProperties || {} };
|
|
35724
35747
|
const { attrs } = node;
|
|
35725
|
-
const { colwidth = [], cellWidthType = "dxa",
|
|
35748
|
+
const { colwidth = [], cellWidthType = "dxa", widthUnit } = attrs;
|
|
35726
35749
|
const colwidthSum = colwidth.reduce((acc, curr) => acc + curr, 0);
|
|
35727
|
-
const
|
|
35728
|
-
|
|
35729
|
-
|
|
35730
|
-
|
|
35731
|
-
|
|
35732
|
-
}
|
|
35733
|
-
};
|
|
35734
|
-
elements.push(cellWidthElement);
|
|
35735
|
-
if (colspan) {
|
|
35736
|
-
const gridSpanElement = {
|
|
35737
|
-
name: "w:gridSpan",
|
|
35738
|
-
attributes: { "w:val": `${colspan}` }
|
|
35750
|
+
const propertiesWidthPixels = twipsToPixels(tableCellProperties.cellWidth?.value);
|
|
35751
|
+
if (propertiesWidthPixels !== colwidthSum) {
|
|
35752
|
+
tableCellProperties["cellWidth"] = {
|
|
35753
|
+
value: widthUnit === "px" ? pixelsToTwips(colwidthSum) : inchesToTwips(colwidthSum),
|
|
35754
|
+
type: cellWidthType
|
|
35739
35755
|
};
|
|
35740
|
-
elements.push(gridSpanElement);
|
|
35741
35756
|
}
|
|
35742
|
-
const {
|
|
35743
|
-
if (
|
|
35744
|
-
|
|
35745
|
-
|
|
35746
|
-
|
|
35747
|
-
|
|
35748
|
-
|
|
35757
|
+
const { colspan } = attrs;
|
|
35758
|
+
if (colspan > 1 && tableCellProperties.gridSpan !== colspan) {
|
|
35759
|
+
tableCellProperties["gridSpan"] = colspan;
|
|
35760
|
+
} else if (!colspan || tableCellProperties?.gridSpan === 1) {
|
|
35761
|
+
delete tableCellProperties.gridSpan;
|
|
35762
|
+
}
|
|
35763
|
+
const { background = {} } = attrs;
|
|
35764
|
+
if (background?.color && tableCellProperties.shading?.fill !== background?.color) {
|
|
35765
|
+
tableCellProperties["shading"] = { fill: background.color };
|
|
35766
|
+
} else if (!background?.color && tableCellProperties?.shading?.fill) {
|
|
35767
|
+
delete tableCellProperties.shading;
|
|
35749
35768
|
}
|
|
35750
35769
|
const { cellMargins } = attrs;
|
|
35751
35770
|
if (cellMargins) {
|
|
35752
|
-
|
|
35753
|
-
|
|
35754
|
-
|
|
35755
|
-
|
|
35756
|
-
|
|
35771
|
+
["left", "right", "top", "bottom"].forEach((side) => {
|
|
35772
|
+
const key2 = `margin${side.charAt(0).toUpperCase() + side.slice(1)}`;
|
|
35773
|
+
if (cellMargins[side] != null) {
|
|
35774
|
+
if (!tableCellProperties.cellMargins) tableCellProperties["cellMargins"] = {};
|
|
35775
|
+
let currentPropertyValuePixels = twipsToPixels(tableCellProperties.cellMargins?.[key2]?.value);
|
|
35776
|
+
if (currentPropertyValuePixels !== cellMargins[side]) {
|
|
35777
|
+
tableCellProperties.cellMargins[key2] = { value: pixelsToTwips(cellMargins[side]), type: "dxa" };
|
|
35778
|
+
}
|
|
35779
|
+
} else if (tableCellProperties?.cellMargins?.[key2]) {
|
|
35780
|
+
delete tableCellProperties.cellMargins[key2];
|
|
35781
|
+
}
|
|
35782
|
+
});
|
|
35757
35783
|
}
|
|
35758
35784
|
const { verticalAlign } = attrs;
|
|
35759
|
-
if (verticalAlign) {
|
|
35760
|
-
|
|
35761
|
-
|
|
35762
|
-
|
|
35763
|
-
|
|
35764
|
-
|
|
35765
|
-
|
|
35766
|
-
|
|
35767
|
-
const vMergeElement = {
|
|
35768
|
-
name: "w:vMerge",
|
|
35769
|
-
type: "element",
|
|
35770
|
-
attributes: { "w:val": "restart" }
|
|
35771
|
-
};
|
|
35772
|
-
elements.push(vMergeElement);
|
|
35785
|
+
if (verticalAlign && verticalAlign !== tableCellProperties.vAlign) {
|
|
35786
|
+
tableCellProperties["vAlign"] = verticalAlign;
|
|
35787
|
+
} else if (!verticalAlign && tableCellProperties?.vAlign) {
|
|
35788
|
+
delete tableCellProperties.vAlign;
|
|
35789
|
+
}
|
|
35790
|
+
const { rowspan } = attrs;
|
|
35791
|
+
if (rowspan && rowspan > 1 && tableCellProperties.vMerge !== "restart") {
|
|
35792
|
+
tableCellProperties["vMerge"] = "restart";
|
|
35773
35793
|
} else if (attrs.continueMerge) {
|
|
35774
|
-
|
|
35775
|
-
|
|
35776
|
-
|
|
35777
|
-
};
|
|
35778
|
-
elements.push(vMergeElement);
|
|
35794
|
+
tableCellProperties["vMerge"] = "continue";
|
|
35795
|
+
} else if (tableCellProperties?.vMerge) {
|
|
35796
|
+
delete tableCellProperties.vMerge;
|
|
35779
35797
|
}
|
|
35780
35798
|
const { borders = {} } = attrs;
|
|
35781
35799
|
if (!!borders && Object.keys(borders).length) {
|
|
35782
|
-
|
|
35783
|
-
|
|
35784
|
-
|
|
35785
|
-
|
|
35786
|
-
|
|
35787
|
-
|
|
35788
|
-
|
|
35789
|
-
|
|
35790
|
-
|
|
35800
|
+
["top", "bottom", "left", "right"].forEach((side) => {
|
|
35801
|
+
if (borders[side]) {
|
|
35802
|
+
let currentPropertyValue = tableCellProperties.borders?.[side];
|
|
35803
|
+
let currentPropertySizePixels = eighthPointsToPixels(currentPropertyValue?.size);
|
|
35804
|
+
let color = borders[side].color;
|
|
35805
|
+
if (borders[side].color && color === "#000000") {
|
|
35806
|
+
color = "auto";
|
|
35807
|
+
}
|
|
35808
|
+
if (currentPropertySizePixels !== borders[side].size || currentPropertyValue?.color !== color || borders[side].val !== currentPropertyValue?.val) {
|
|
35809
|
+
if (!tableCellProperties.borders) tableCellProperties["borders"] = {};
|
|
35810
|
+
tableCellProperties.borders[side] = {
|
|
35811
|
+
size: pixelsToEightPoints(borders[side].size || 0),
|
|
35812
|
+
color,
|
|
35813
|
+
space: borders[side].space || 0,
|
|
35814
|
+
val: borders[side].val || "single"
|
|
35791
35815
|
};
|
|
35792
35816
|
}
|
|
35793
|
-
|
|
35794
|
-
|
|
35795
|
-
|
|
35796
|
-
|
|
35797
|
-
|
|
35798
|
-
|
|
35799
|
-
"w:space": value.space || 0
|
|
35800
|
-
}
|
|
35801
|
-
};
|
|
35802
|
-
})
|
|
35803
|
-
};
|
|
35804
|
-
elements.push(cellBordersElement);
|
|
35817
|
+
} else if (tableCellProperties.borders?.[side]) {
|
|
35818
|
+
delete tableCellProperties.borders[side];
|
|
35819
|
+
}
|
|
35820
|
+
});
|
|
35821
|
+
} else if (tableCellProperties?.borders) {
|
|
35822
|
+
delete tableCellProperties.borders;
|
|
35805
35823
|
}
|
|
35806
|
-
|
|
35807
|
-
|
|
35808
|
-
elements
|
|
35809
|
-
};
|
|
35810
|
-
}
|
|
35811
|
-
function generateCellMargins(cellMargins) {
|
|
35812
|
-
const elements = [];
|
|
35813
|
-
const { top: top2, right: right2, bottom: bottom2, left: left2 } = cellMargins;
|
|
35814
|
-
if (top2 != null) elements.push({ name: "w:top", attributes: { "w:w": pixelsToTwips(top2) } });
|
|
35815
|
-
if (right2 != null) elements.push({ name: "w:right", attributes: { "w:w": pixelsToTwips(right2) } });
|
|
35816
|
-
if (bottom2 != null) elements.push({ name: "w:bottom", attributes: { "w:w": pixelsToTwips(bottom2) } });
|
|
35817
|
-
if (left2 != null) elements.push({ name: "w:left", attributes: { "w:w": pixelsToTwips(left2) } });
|
|
35818
|
-
return elements;
|
|
35824
|
+
const result = translator$d.decode({ node: { ...node, attrs: { ...node.attrs, tableCellProperties } } });
|
|
35825
|
+
return result;
|
|
35819
35826
|
}
|
|
35820
35827
|
const XML_NODE_NAME$d = "w:tc";
|
|
35821
35828
|
const SD_NODE_NAME$b = "tableCell";
|
|
@@ -39427,8 +39434,8 @@ Please report this to https://github.com/markedjs/marked.`, e) {
|
|
|
39427
39434
|
handlerName: "trackChangeNodeHandler",
|
|
39428
39435
|
handler: handleTrackChangeNode
|
|
39429
39436
|
};
|
|
39430
|
-
const hyperlinkNodeHandlerEntity = generateV2HandlerEntity("hyperlinkNodeHandler", translator$
|
|
39431
|
-
const runNodeHandlerEntity = generateV2HandlerEntity("runNodeHandler", translator$
|
|
39437
|
+
const hyperlinkNodeHandlerEntity = generateV2HandlerEntity("hyperlinkNodeHandler", translator$1c);
|
|
39438
|
+
const runNodeHandlerEntity = generateV2HandlerEntity("runNodeHandler", translator$1b);
|
|
39432
39439
|
function parseProperties(node) {
|
|
39433
39440
|
const marks = [];
|
|
39434
39441
|
const unknownMarks = [];
|
|
@@ -39520,7 +39527,7 @@ Please report this to https://github.com/markedjs/marked.`, e) {
|
|
|
39520
39527
|
if (nodes.length === 0 || nodes[0].name !== "w:p") {
|
|
39521
39528
|
return { nodes: [], consumed: 0 };
|
|
39522
39529
|
}
|
|
39523
|
-
const schemaNode = translator$
|
|
39530
|
+
const schemaNode = translator$1o.encode(params2);
|
|
39524
39531
|
const newNodes = schemaNode ? [schemaNode] : [];
|
|
39525
39532
|
return { nodes: newNodes, consumed: 1 };
|
|
39526
39533
|
};
|
|
@@ -39623,7 +39630,7 @@ Please report this to https://github.com/markedjs/marked.`, e) {
|
|
|
39623
39630
|
if (nodes.length === 0 || nodes[0].name !== "w:br") {
|
|
39624
39631
|
return { nodes: [], consumed: 0 };
|
|
39625
39632
|
}
|
|
39626
|
-
const result = translator$
|
|
39633
|
+
const result = translator$1r.encode(params2);
|
|
39627
39634
|
if (!result) return { nodes: [], consumed: 0 };
|
|
39628
39635
|
return {
|
|
39629
39636
|
nodes: [result],
|
|
@@ -40222,7 +40229,7 @@ Please report this to https://github.com/markedjs/marked.`, e) {
|
|
|
40222
40229
|
if (!nodes.length || nodes[0].name !== "w:tab") {
|
|
40223
40230
|
return { nodes: [], consumed: 0 };
|
|
40224
40231
|
}
|
|
40225
|
-
const node = translator$
|
|
40232
|
+
const node = translator$1p.encode(params2);
|
|
40226
40233
|
return { nodes: [node], consumed: 1 };
|
|
40227
40234
|
};
|
|
40228
40235
|
const tabNodeEntityHandler = {
|
|
@@ -40474,12 +40481,14 @@ Please report this to https://github.com/markedjs/marked.`, e) {
|
|
|
40474
40481
|
const content = pruneIgnoredNodes(contentElements);
|
|
40475
40482
|
const comments = importCommentData({ docx, converter, editor });
|
|
40476
40483
|
const lists = {};
|
|
40484
|
+
const inlineDocumentFonts = [];
|
|
40477
40485
|
let parsedContent = nodeListHandler.handler({
|
|
40478
40486
|
nodes: content,
|
|
40479
40487
|
nodeListHandler,
|
|
40480
40488
|
docx,
|
|
40481
40489
|
converter,
|
|
40482
40490
|
editor,
|
|
40491
|
+
inlineDocumentFonts,
|
|
40483
40492
|
lists,
|
|
40484
40493
|
path: []
|
|
40485
40494
|
});
|
|
@@ -40502,6 +40511,7 @@ Please report this to https://github.com/markedjs/marked.`, e) {
|
|
|
40502
40511
|
savedTagsToRestore: node,
|
|
40503
40512
|
pageStyles: getDocumentStyles(node, docx, converter, editor),
|
|
40504
40513
|
comments,
|
|
40514
|
+
inlineDocumentFonts,
|
|
40505
40515
|
linkedStyles: getStyleDefinitions(docx),
|
|
40506
40516
|
numbering: getNumberingDefinitions(docx)
|
|
40507
40517
|
};
|
|
@@ -40565,6 +40575,7 @@ Please report this to https://github.com/markedjs/marked.`, e) {
|
|
|
40565
40575
|
filename,
|
|
40566
40576
|
parentStyleId,
|
|
40567
40577
|
lists,
|
|
40578
|
+
inlineDocumentFonts,
|
|
40568
40579
|
path = []
|
|
40569
40580
|
}) => {
|
|
40570
40581
|
if (!elements || !elements.length) return [];
|
|
@@ -40591,6 +40602,7 @@ Please report this to https://github.com/markedjs/marked.`, e) {
|
|
|
40591
40602
|
filename,
|
|
40592
40603
|
parentStyleId,
|
|
40593
40604
|
lists,
|
|
40605
|
+
inlineDocumentFonts,
|
|
40594
40606
|
path
|
|
40595
40607
|
});
|
|
40596
40608
|
},
|
|
@@ -41170,7 +41182,7 @@ Please report this to https://github.com/markedjs/marked.`, e) {
|
|
|
41170
41182
|
const XML_NODE_NAME = "w:pict";
|
|
41171
41183
|
const SD_NODE_NAME = ["shapeContainer", "contentBlock"];
|
|
41172
41184
|
const validXmlAttributes = [];
|
|
41173
|
-
function encode$
|
|
41185
|
+
function encode$1c(params2) {
|
|
41174
41186
|
const { node, pNode } = params2.extraParams;
|
|
41175
41187
|
const { type: pictType, handler: handler2 } = pictNodeTypeStrategy(node);
|
|
41176
41188
|
if (!handler2 || pictType === "unknown") {
|
|
@@ -41202,7 +41214,7 @@ Please report this to https://github.com/markedjs/marked.`, e) {
|
|
|
41202
41214
|
xmlName: XML_NODE_NAME,
|
|
41203
41215
|
sdNodeOrKeyName: SD_NODE_NAME,
|
|
41204
41216
|
type: NodeTranslator.translatorTypes.NODE,
|
|
41205
|
-
encode: encode$
|
|
41217
|
+
encode: encode$1c,
|
|
41206
41218
|
decode,
|
|
41207
41219
|
attributes: validXmlAttributes
|
|
41208
41220
|
};
|
|
@@ -41278,21 +41290,21 @@ Please report this to https://github.com/markedjs/marked.`, e) {
|
|
|
41278
41290
|
doc: translateDocumentNode,
|
|
41279
41291
|
body: translateBodyNode,
|
|
41280
41292
|
heading: translateHeadingNode,
|
|
41281
|
-
paragraph: translator$
|
|
41282
|
-
run: translator$
|
|
41293
|
+
paragraph: translator$1o,
|
|
41294
|
+
run: translator$1b,
|
|
41283
41295
|
text: translateTextNode,
|
|
41284
41296
|
bulletList: translateList,
|
|
41285
41297
|
orderedList: translateList,
|
|
41286
|
-
lineBreak: translator$
|
|
41287
|
-
table: translator$
|
|
41288
|
-
tableRow: translator$
|
|
41298
|
+
lineBreak: translator$1r,
|
|
41299
|
+
table: translator$s,
|
|
41300
|
+
tableRow: translator$Z,
|
|
41289
41301
|
tableCell: translator$c,
|
|
41290
41302
|
bookmarkStart: translator$7,
|
|
41291
41303
|
bookmarkEnd: translator$6,
|
|
41292
41304
|
fieldAnnotation: translator$8,
|
|
41293
|
-
tab: translator$
|
|
41305
|
+
tab: translator$1p,
|
|
41294
41306
|
image: translator$9,
|
|
41295
|
-
hardBreak: translator$
|
|
41307
|
+
hardBreak: translator$1r,
|
|
41296
41308
|
commentRangeStart: commentRangeStartTranslator,
|
|
41297
41309
|
commentRangeEnd: commentRangeEndTranslator,
|
|
41298
41310
|
commentReference: () => null,
|
|
@@ -41653,7 +41665,7 @@ Please report this to https://github.com/markedjs/marked.`, e) {
|
|
|
41653
41665
|
}
|
|
41654
41666
|
const isLinkNode = node.marks?.some((m2) => m2.type === "link");
|
|
41655
41667
|
if (isLinkNode && !extraParams?.linkProcessed) {
|
|
41656
|
-
return translator$
|
|
41668
|
+
return translator$1c.decode(params2);
|
|
41657
41669
|
}
|
|
41658
41670
|
const { text, marks = [] } = node;
|
|
41659
41671
|
return getTextNodeForExport(text, marks, params2);
|
|
@@ -41913,7 +41925,7 @@ Please report this to https://github.com/markedjs/marked.`, e) {
|
|
|
41913
41925
|
markElement.type = "element";
|
|
41914
41926
|
break;
|
|
41915
41927
|
case "underline": {
|
|
41916
|
-
const translated = translator$
|
|
41928
|
+
const translated = translator$1l.decode({
|
|
41917
41929
|
node: {
|
|
41918
41930
|
attrs: {
|
|
41919
41931
|
underlineType: attrs.underlineType ?? attrs.underline ?? null,
|
|
@@ -41977,7 +41989,7 @@ Please report this to https://github.com/markedjs/marked.`, e) {
|
|
|
41977
41989
|
break;
|
|
41978
41990
|
case "highlight": {
|
|
41979
41991
|
const highlightValue = attrs.color ?? attrs.highlight ?? null;
|
|
41980
|
-
const translated = translator$
|
|
41992
|
+
const translated = translator$1q.decode({ node: { attrs: { highlight: highlightValue } } });
|
|
41981
41993
|
return translated || {};
|
|
41982
41994
|
}
|
|
41983
41995
|
case "link":
|
|
@@ -42356,6 +42368,7 @@ Please report this to https://github.com/markedjs/marked.`, e) {
|
|
|
42356
42368
|
this.fonts = params2?.fonts || {};
|
|
42357
42369
|
this.addedMedia = {};
|
|
42358
42370
|
this.comments = [];
|
|
42371
|
+
this.inlineDocumentFonts = [];
|
|
42359
42372
|
this.docHiglightColors = /* @__PURE__ */ new Set([]);
|
|
42360
42373
|
this.xml = params2?.xml;
|
|
42361
42374
|
this.declaration = null;
|
|
@@ -42642,6 +42655,23 @@ Please report this to https://github.com/markedjs/marked.`, e) {
|
|
|
42642
42655
|
return result;
|
|
42643
42656
|
}
|
|
42644
42657
|
getDocumentFonts() {
|
|
42658
|
+
const inlineDocumentFonts = [...new Set(this.inlineDocumentFonts || [])];
|
|
42659
|
+
const fontTable = this.convertedXml["word/fontTable.xml"];
|
|
42660
|
+
if (!fontTable) {
|
|
42661
|
+
return inlineDocumentFonts;
|
|
42662
|
+
}
|
|
42663
|
+
const wFonts = fontTable.elements?.find((element) => element.name === "w:fonts");
|
|
42664
|
+
if (!wFonts) {
|
|
42665
|
+
return inlineDocumentFonts;
|
|
42666
|
+
}
|
|
42667
|
+
if (!wFonts.elements) {
|
|
42668
|
+
return inlineDocumentFonts;
|
|
42669
|
+
}
|
|
42670
|
+
const fontsInFontTable = wFonts.elements.filter((element) => element.name === "w:font").map((element) => element.attributes["w:name"]);
|
|
42671
|
+
const allFonts = [...inlineDocumentFonts, ...fontsInFontTable];
|
|
42672
|
+
return [...new Set(allFonts)];
|
|
42673
|
+
}
|
|
42674
|
+
getFontFaceImportString() {
|
|
42645
42675
|
const fontTable = this.convertedXml["word/fontTable.xml"];
|
|
42646
42676
|
if (!fontTable || !Object.keys(this.fonts).length) return;
|
|
42647
42677
|
const fonts = fontTable.elements.find((el) => el.name === "w:fonts");
|
|
@@ -42655,6 +42685,7 @@ Please report this to https://github.com/markedjs/marked.`, e) {
|
|
|
42655
42685
|
const rels = this.convertedXml["word/_rels/fontTable.xml.rels"];
|
|
42656
42686
|
const relationships = rels?.elements.find((el) => el.name === "Relationships") || {};
|
|
42657
42687
|
const { elements } = relationships;
|
|
42688
|
+
const fontsImported = [];
|
|
42658
42689
|
let styleString = "";
|
|
42659
42690
|
for (const font of fontsToInclude) {
|
|
42660
42691
|
const filePath = elements.find((el) => el.attributes.Id === font.attributes["r:id"])?.attributes?.Target;
|
|
@@ -42671,6 +42702,9 @@ Please report this to https://github.com/markedjs/marked.`, e) {
|
|
|
42671
42702
|
const isItalic = font.name.includes("Italic");
|
|
42672
42703
|
const isLight = font.name.includes("Light");
|
|
42673
42704
|
const fontWeight = isNormal ? "normal" : isBold ? "bold" : isLight ? "200" : "normal";
|
|
42705
|
+
if (!fontsImported.includes(font.fontFamily)) {
|
|
42706
|
+
fontsImported.push(font.fontFamily);
|
|
42707
|
+
}
|
|
42674
42708
|
styleString += `
|
|
42675
42709
|
@font-face {
|
|
42676
42710
|
font-style: ${isItalic ? "italic" : "normal"};
|
|
@@ -42681,7 +42715,10 @@ Please report this to https://github.com/markedjs/marked.`, e) {
|
|
|
42681
42715
|
}
|
|
42682
42716
|
`;
|
|
42683
42717
|
}
|
|
42684
|
-
return
|
|
42718
|
+
return {
|
|
42719
|
+
styleString,
|
|
42720
|
+
fontsImported
|
|
42721
|
+
};
|
|
42685
42722
|
}
|
|
42686
42723
|
getDocumentInternalId() {
|
|
42687
42724
|
const settingsLocation = "word/settings.xml";
|
|
@@ -42736,6 +42773,7 @@ Please report this to https://github.com/markedjs/marked.`, e) {
|
|
|
42736
42773
|
this.numbering = result.numbering;
|
|
42737
42774
|
this.comments = result.comments;
|
|
42738
42775
|
this.linkedStyles = result.linkedStyles;
|
|
42776
|
+
this.inlineDocumentFonts = result.inlineDocumentFonts;
|
|
42739
42777
|
return result.pmDoc;
|
|
42740
42778
|
} else {
|
|
42741
42779
|
return null;
|
|
@@ -45697,7 +45735,7 @@ Please report this to https://github.com/markedjs/marked.`, e) {
|
|
|
45697
45735
|
var __privateAdd$1 = (obj, member, value) => member.has(obj) ? __typeError$1("Cannot add the same private member more than once") : member instanceof WeakSet ? member.add(obj) : member.set(obj, value);
|
|
45698
45736
|
var __privateSet = (obj, member, value, setter) => (__accessCheck$1(obj, member, "write to private field"), member.set(obj, value), value);
|
|
45699
45737
|
var __privateMethod$1 = (obj, member, method) => (__accessCheck$1(obj, member, "access private method"), method);
|
|
45700
|
-
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, _DocumentSectionView_instances, init_fn2, addToolTip_fn, _ListItemNodeView_instances, init_fn3, _FieldAnnotationView_instances, createAnnotation_fn, _AutoPageNumberNodeView_instances, renderDom_fn, scheduleUpdateNodeStyle_fn;
|
|
45738
|
+
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, checkFonts_fn, determineUnsupportedFontsWithLocalFonts_fn, determineUnsupportedFontsWithCanvas_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, _DocumentSectionView_instances, init_fn2, addToolTip_fn, _ListItemNodeView_instances, init_fn3, _FieldAnnotationView_instances, createAnnotation_fn, _AutoPageNumberNodeView_instances, renderDom_fn, scheduleUpdateNodeStyle_fn;
|
|
45701
45739
|
var GOOD_LEAF_SIZE = 200;
|
|
45702
45740
|
var RopeSequence = function RopeSequence2() {
|
|
45703
45741
|
};
|
|
@@ -58766,6 +58804,29 @@ Please report this to https://github.com/markedjs/marked.`, e) {
|
|
|
58766
58804
|
}
|
|
58767
58805
|
return false;
|
|
58768
58806
|
};
|
|
58807
|
+
function canRenderFont(fontName, fallbackFont = "sans-serif") {
|
|
58808
|
+
const _canRenderFont = (fontName2, fallbackFont2) => {
|
|
58809
|
+
const canvas = document.createElement("canvas");
|
|
58810
|
+
const ctx2 = canvas.getContext("2d");
|
|
58811
|
+
ctx2.textBaseline = "top";
|
|
58812
|
+
const text = "abcdefghijklmnopqrstuvwxyz0123456789";
|
|
58813
|
+
ctx2.font = `72px ${fallbackFont2}`;
|
|
58814
|
+
const initialTextMeasurement = ctx2.measureText(text);
|
|
58815
|
+
const fallbackWidth = initialTextMeasurement.width;
|
|
58816
|
+
const fallbackHeight = initialTextMeasurement.actualBoundingBoxDescent;
|
|
58817
|
+
ctx2.font = `72px "${fontName2}", ${fallbackFont2}`;
|
|
58818
|
+
const customTextMeasurement = ctx2.measureText(text);
|
|
58819
|
+
const customFontWidth = customTextMeasurement.width;
|
|
58820
|
+
const customFontHeight = customTextMeasurement.actualBoundingBoxDescent;
|
|
58821
|
+
const isAvailable = customFontWidth !== fallbackWidth || customFontHeight !== fallbackHeight;
|
|
58822
|
+
return isAvailable;
|
|
58823
|
+
};
|
|
58824
|
+
if (_canRenderFont(fontName, fallbackFont)) {
|
|
58825
|
+
return true;
|
|
58826
|
+
}
|
|
58827
|
+
const oppositeFallbackFont = fallbackFont === "sans-serif" ? "serif" : "sans-serif";
|
|
58828
|
+
return _canRenderFont(fontName, oppositeFallbackFont);
|
|
58829
|
+
}
|
|
58769
58830
|
const { findChildren: findChildren$3 } = helpers;
|
|
58770
58831
|
function getAllFieldAnnotations(state2) {
|
|
58771
58832
|
let fieldAnnotations = findChildren$3(state2.doc, (node) => node.type.name === "fieldAnnotation");
|
|
@@ -59815,6 +59876,7 @@ Please report this to https://github.com/markedjs/marked.`, e) {
|
|
|
59815
59876
|
__publicField$1(this, "schema");
|
|
59816
59877
|
__publicField$1(this, "view");
|
|
59817
59878
|
__publicField$1(this, "isFocused", false);
|
|
59879
|
+
__publicField$1(this, "fontsImported", []);
|
|
59818
59880
|
__publicField$1(this, "options", {
|
|
59819
59881
|
element: null,
|
|
59820
59882
|
selector: null,
|
|
@@ -59875,6 +59937,7 @@ Please report this to https://github.com/markedjs/marked.`, e) {
|
|
|
59875
59937
|
onPaginationUpdate: () => null,
|
|
59876
59938
|
onException: () => null,
|
|
59877
59939
|
onListDefinitionsChange: () => null,
|
|
59940
|
+
onFontsResolved: null,
|
|
59878
59941
|
// async (file) => url;
|
|
59879
59942
|
handleImageUpload: null,
|
|
59880
59943
|
// telemetry
|
|
@@ -60851,6 +60914,9 @@ Please report this to https://github.com/markedjs/marked.`, e) {
|
|
|
60851
60914
|
this.emit("beforeCreate", { editor: this });
|
|
60852
60915
|
this.on("contentError", this.options.onContentError);
|
|
60853
60916
|
this.mount(this.options.element);
|
|
60917
|
+
if (!this.options.isHeadless) {
|
|
60918
|
+
__privateMethod$1(this, _Editor_instances, checkFonts_fn).call(this);
|
|
60919
|
+
}
|
|
60854
60920
|
this.on("create", this.options.onCreate);
|
|
60855
60921
|
this.on("update", this.options.onUpdate);
|
|
60856
60922
|
this.on("selectionUpdate", this.options.onSelectionUpdate);
|
|
@@ -60998,13 +61064,74 @@ Please report this to https://github.com/markedjs/marked.`, e) {
|
|
|
60998
61064
|
}
|
|
60999
61065
|
};
|
|
61000
61066
|
initFonts_fn = function() {
|
|
61001
|
-
const
|
|
61002
|
-
if (styleString?.length) {
|
|
61067
|
+
const results = this.converter.getFontFaceImportString();
|
|
61068
|
+
if (results?.styleString?.length) {
|
|
61003
61069
|
const style2 = document.createElement("style");
|
|
61004
|
-
style2.textContent = styleString;
|
|
61070
|
+
style2.textContent = results.styleString;
|
|
61005
61071
|
document.head.appendChild(style2);
|
|
61072
|
+
this.fontsImported = results.fontsImported;
|
|
61073
|
+
}
|
|
61074
|
+
};
|
|
61075
|
+
checkFonts_fn = async function() {
|
|
61076
|
+
if (!this.options.onFontsResolved || typeof this.options.onFontsResolved !== "function") {
|
|
61077
|
+
return;
|
|
61078
|
+
}
|
|
61079
|
+
if (this.options.isHeadless) {
|
|
61080
|
+
return;
|
|
61081
|
+
}
|
|
61082
|
+
const fontsUsedInDocument = this.converter.getDocumentFonts();
|
|
61083
|
+
if (!("queryLocalFonts" in window)) {
|
|
61084
|
+
console.warn("[SuperDoc] Could not get access to local fonts. Using fallback solution.");
|
|
61085
|
+
const unsupportedFonts = __privateMethod$1(this, _Editor_instances, determineUnsupportedFontsWithCanvas_fn).call(this, fontsUsedInDocument);
|
|
61086
|
+
this.options.onFontsResolved({
|
|
61087
|
+
documentFonts: fontsUsedInDocument,
|
|
61088
|
+
unsupportedFonts
|
|
61089
|
+
});
|
|
61090
|
+
return;
|
|
61091
|
+
}
|
|
61092
|
+
const localFontAccess = await navigator.permissions.query({ name: "local-fonts" });
|
|
61093
|
+
if (localFontAccess.state === "denied") {
|
|
61094
|
+
console.warn("[SuperDoc] Could not get access to local fonts. Using fallback solution.");
|
|
61095
|
+
const unsupportedFonts = __privateMethod$1(this, _Editor_instances, determineUnsupportedFontsWithCanvas_fn).call(this, fontsUsedInDocument);
|
|
61096
|
+
this.options.onFontsResolved({
|
|
61097
|
+
documentFonts: fontsUsedInDocument,
|
|
61098
|
+
unsupportedFonts
|
|
61099
|
+
});
|
|
61100
|
+
return;
|
|
61101
|
+
}
|
|
61102
|
+
try {
|
|
61103
|
+
const localFonts = await window.queryLocalFonts();
|
|
61104
|
+
const uniqueLocalFonts = [...new Set(localFonts.map((font) => font.family))];
|
|
61105
|
+
const unsupportedFonts = __privateMethod$1(this, _Editor_instances, determineUnsupportedFontsWithLocalFonts_fn).call(this, fontsUsedInDocument, uniqueLocalFonts);
|
|
61106
|
+
this.options.onFontsResolved({
|
|
61107
|
+
documentFonts: fontsUsedInDocument,
|
|
61108
|
+
unsupportedFonts
|
|
61109
|
+
});
|
|
61110
|
+
} catch {
|
|
61111
|
+
console.warn("[SuperDoc] Could not get access to local fonts. Using fallback solution.");
|
|
61112
|
+
const unsupportedFonts = __privateMethod$1(this, _Editor_instances, determineUnsupportedFontsWithCanvas_fn).call(this, fontsUsedInDocument);
|
|
61113
|
+
this.options.onFontsResolved({
|
|
61114
|
+
documentFonts: fontsUsedInDocument,
|
|
61115
|
+
unsupportedFonts
|
|
61116
|
+
});
|
|
61006
61117
|
}
|
|
61007
61118
|
};
|
|
61119
|
+
determineUnsupportedFontsWithLocalFonts_fn = function(fonts, localFonts) {
|
|
61120
|
+
const unsupportedFonts = fonts.filter((font) => {
|
|
61121
|
+
const isLocalFont = localFonts.includes(font);
|
|
61122
|
+
const isFontImported = this.fontsImported.includes(font);
|
|
61123
|
+
return !isLocalFont && !isFontImported;
|
|
61124
|
+
});
|
|
61125
|
+
return unsupportedFonts;
|
|
61126
|
+
};
|
|
61127
|
+
determineUnsupportedFontsWithCanvas_fn = function(fonts) {
|
|
61128
|
+
const unsupportedFonts = fonts.filter((font) => {
|
|
61129
|
+
const canRender = canRenderFont(font);
|
|
61130
|
+
const isFontImported = this.fontsImported.includes(font);
|
|
61131
|
+
return !canRender && !isFontImported;
|
|
61132
|
+
});
|
|
61133
|
+
return unsupportedFonts;
|
|
61134
|
+
};
|
|
61008
61135
|
createSchema_fn = function() {
|
|
61009
61136
|
this.schema = this.extensionService.schema;
|
|
61010
61137
|
};
|
|
@@ -69761,6 +69888,15 @@ Please report this to https://github.com/markedjs/marked.`, e) {
|
|
|
69761
69888
|
widthUnit: {
|
|
69762
69889
|
default: "px",
|
|
69763
69890
|
rendered: false
|
|
69891
|
+
},
|
|
69892
|
+
/**
|
|
69893
|
+
* @category Attribute
|
|
69894
|
+
* @param {TableCellProperties} tableCellProperties - Properties for the table cell.
|
|
69895
|
+
* @see {@link https://ecma-international.org/publications-and-standards/standards/ecma-376/} "Fundamentals And Markup Language Reference", page 463
|
|
69896
|
+
*/
|
|
69897
|
+
tableCellProperties: {
|
|
69898
|
+
default: null,
|
|
69899
|
+
rendered: false
|
|
69764
69900
|
}
|
|
69765
69901
|
};
|
|
69766
69902
|
},
|
|
@@ -95470,7 +95606,7 @@ ${style2}
|
|
|
95470
95606
|
}
|
|
95471
95607
|
};
|
|
95472
95608
|
const GenericPopover = /* @__PURE__ */ _export_sfc$1(_sfc_main$2$1, [["__scopeId", "data-v-cbddcc0f"]]);
|
|
95473
|
-
const BlankDOCX$1 = "data:application/octet-stream;base64,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";
|
|
95609
|
+
const BlankDOCX$1 = "data:application/octet-stream;base64,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";
|
|
95474
95610
|
const _hoisted_1$1$1 = { class: "super-editor-container" };
|
|
95475
95611
|
const _hoisted_2$a = {
|
|
95476
95612
|
key: 1,
|
|
@@ -95865,72 +96001,87 @@ ${style2}
|
|
|
95865
96001
|
"mc:AlternateContent": translator$1,
|
|
95866
96002
|
"sd:pageReference": translator$5,
|
|
95867
96003
|
"sd:tableOfContents": translator$4,
|
|
95868
|
-
"w:b": translator$
|
|
95869
|
-
"w:bidiVisual": translator$
|
|
96004
|
+
"w:b": translator$1n,
|
|
96005
|
+
"w:bidiVisual": translator$Y,
|
|
95870
96006
|
"w:bookmarkEnd": translator$6,
|
|
95871
96007
|
"w:bookmarkStart": translator$7,
|
|
95872
|
-
"w:bottom": translator$
|
|
95873
|
-
"w:br": translator$
|
|
95874
|
-
"w:cantSplit": translator$
|
|
95875
|
-
"w:cnfStyle": translator$
|
|
95876
|
-
"w:color": translator$
|
|
95877
|
-
"w:divId": translator$
|
|
96008
|
+
"w:bottom": translator$L,
|
|
96009
|
+
"w:br": translator$1r,
|
|
96010
|
+
"w:cantSplit": translator$1a,
|
|
96011
|
+
"w:cnfStyle": translator$19,
|
|
96012
|
+
"w:color": translator$1j,
|
|
96013
|
+
"w:divId": translator$18,
|
|
95878
96014
|
"w:drawing": translator$9,
|
|
95879
|
-
"w:end": translator$
|
|
95880
|
-
"w:gridAfter": translator$
|
|
95881
|
-
"w:gridBefore": translator$
|
|
95882
|
-
"w:gridCol": translator$
|
|
95883
|
-
"w:hidden": translator$
|
|
95884
|
-
"w:highlight": translator$
|
|
95885
|
-
"w:hyperlink": translator$
|
|
95886
|
-
"w:i": translator$
|
|
95887
|
-
"w:insideH": translator$
|
|
95888
|
-
"w:insideV": translator$
|
|
95889
|
-
"w:jc": translator$
|
|
95890
|
-
"w:left": translator$
|
|
95891
|
-
"w:p": translator$
|
|
95892
|
-
"w:r": translator$
|
|
95893
|
-
"w:rFonts": translator$
|
|
95894
|
-
"w:rPr": translator$
|
|
95895
|
-
"w:rStyle": translator$
|
|
95896
|
-
"w:right": translator$
|
|
96015
|
+
"w:end": translator$J,
|
|
96016
|
+
"w:gridAfter": translator$17,
|
|
96017
|
+
"w:gridBefore": translator$16,
|
|
96018
|
+
"w:gridCol": translator$u,
|
|
96019
|
+
"w:hidden": translator$15,
|
|
96020
|
+
"w:highlight": translator$1q,
|
|
96021
|
+
"w:hyperlink": translator$1c,
|
|
96022
|
+
"w:i": translator$1m,
|
|
96023
|
+
"w:insideH": translator$H,
|
|
96024
|
+
"w:insideV": translator$G,
|
|
96025
|
+
"w:jc": translator$14,
|
|
96026
|
+
"w:left": translator$F,
|
|
96027
|
+
"w:p": translator$1o,
|
|
96028
|
+
"w:r": translator$1b,
|
|
96029
|
+
"w:rFonts": translator$1i,
|
|
96030
|
+
"w:rPr": translator$1d,
|
|
96031
|
+
"w:rStyle": translator$1h,
|
|
96032
|
+
"w:right": translator$D,
|
|
95897
96033
|
"w:sdt": translator$8,
|
|
95898
|
-
"w:shd": translator$
|
|
95899
|
-
"w:start": translator$
|
|
95900
|
-
"w:strike": translator$
|
|
95901
|
-
"w:sz": translator$
|
|
95902
|
-
"w:szCs": translator$
|
|
95903
|
-
"w:tab": translator$
|
|
95904
|
-
"w:tbl": translator$
|
|
95905
|
-
"w:tblBorders": translator$
|
|
95906
|
-
"w:tblCaption": translator$
|
|
95907
|
-
"w:tblCellMar": translator$
|
|
95908
|
-
"w:tblCellSpacing": translator$
|
|
95909
|
-
"w:tblDescription": translator$
|
|
95910
|
-
"w:tblGrid": translator$
|
|
95911
|
-
"w:tblHeader": translator$
|
|
95912
|
-
"w:tblInd": translator$
|
|
95913
|
-
"w:tblLayout": translator$
|
|
95914
|
-
"w:tblLook": translator$
|
|
95915
|
-
"w:tblOverlap": translator$
|
|
95916
|
-
"w:tblPr": translator$
|
|
95917
|
-
"w:tblStyle": translator$
|
|
95918
|
-
"w:tblStyleColBandSize": translator$
|
|
95919
|
-
"w:tblStyleRowBandSize": translator$
|
|
95920
|
-
"w:tblW": translator$
|
|
95921
|
-
"w:tblpPr": translator$
|
|
96034
|
+
"w:shd": translator$X,
|
|
96035
|
+
"w:start": translator$B,
|
|
96036
|
+
"w:strike": translator$1k,
|
|
96037
|
+
"w:sz": translator$1g,
|
|
96038
|
+
"w:szCs": translator$1f,
|
|
96039
|
+
"w:tab": translator$1p,
|
|
96040
|
+
"w:tbl": translator$s,
|
|
96041
|
+
"w:tblBorders": translator$x,
|
|
96042
|
+
"w:tblCaption": translator$W,
|
|
96043
|
+
"w:tblCellMar": translator$w,
|
|
96044
|
+
"w:tblCellSpacing": translator$13,
|
|
96045
|
+
"w:tblDescription": translator$V,
|
|
96046
|
+
"w:tblGrid": translator$t,
|
|
96047
|
+
"w:tblHeader": translator$12,
|
|
96048
|
+
"w:tblInd": translator$U,
|
|
96049
|
+
"w:tblLayout": translator$T,
|
|
96050
|
+
"w:tblLook": translator$S,
|
|
96051
|
+
"w:tblOverlap": translator$R,
|
|
96052
|
+
"w:tblPr": translator$v,
|
|
96053
|
+
"w:tblStyle": translator$Q,
|
|
96054
|
+
"w:tblStyleColBandSize": translator$P,
|
|
96055
|
+
"w:tblStyleRowBandSize": translator$O,
|
|
96056
|
+
"w:tblW": translator$N,
|
|
96057
|
+
"w:tblpPr": translator$M,
|
|
95922
96058
|
"w:tc": translator$c,
|
|
95923
|
-
"w:top": translator$
|
|
95924
|
-
"w:tr": translator$
|
|
95925
|
-
"w:trHeight": translator$
|
|
95926
|
-
"w:trPr": translator$
|
|
95927
|
-
"w:u": translator$
|
|
95928
|
-
"w:wAfter": translator$
|
|
95929
|
-
"w:wBefore": translator
|
|
96059
|
+
"w:top": translator$z,
|
|
96060
|
+
"w:tr": translator$Z,
|
|
96061
|
+
"w:trHeight": translator$11,
|
|
96062
|
+
"w:trPr": translator$_,
|
|
96063
|
+
"w:u": translator$1l,
|
|
96064
|
+
"w:wAfter": translator$10,
|
|
96065
|
+
"w:wBefore": translator$$,
|
|
95930
96066
|
"wp:anchor": translator$b,
|
|
95931
96067
|
"wp:inline": translator$a,
|
|
95932
96068
|
"w:commentRangeStart": commentRangeStartTranslator,
|
|
95933
|
-
"w:commentRangeEnd": commentRangeEndTranslator
|
|
96069
|
+
"w:commentRangeEnd": commentRangeEndTranslator,
|
|
96070
|
+
"w:vMerge": translator$p,
|
|
96071
|
+
"w:gridSpan": translator$q,
|
|
96072
|
+
"w:vAlign": translator$h,
|
|
96073
|
+
"w:noWrap": translator$l,
|
|
96074
|
+
"w:tcFitText": translator$i,
|
|
96075
|
+
"w:tcW": translator$r,
|
|
96076
|
+
"w:hideMark": translator$g,
|
|
96077
|
+
"w:textDirection": translator$j,
|
|
96078
|
+
"w:tl2br": translator$o,
|
|
96079
|
+
"w:tr2bl": translator$n,
|
|
96080
|
+
"w:header": translator$f,
|
|
96081
|
+
"w:headers": translator$e,
|
|
96082
|
+
"w:tcBorders": translator$m,
|
|
96083
|
+
"w:tcMar": translator$k,
|
|
96084
|
+
"w:tcPr": translator$d
|
|
95934
96085
|
});
|
|
95935
96086
|
const baseHandlers = {
|
|
95936
96087
|
...runPropertyTranslators,
|
|
@@ -96277,7 +96428,7 @@ ${style2}
|
|
|
96277
96428
|
this.errors = [];
|
|
96278
96429
|
}
|
|
96279
96430
|
}
|
|
96280
|
-
const BlankDOCX = "data:application/octet-stream;base64,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";
|
|
96431
|
+
const BlankDOCX = "data:application/octet-stream;base64,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";
|
|
96281
96432
|
function getDefaultExportFromCjs(x) {
|
|
96282
96433
|
return x && x.__esModule && Object.prototype.hasOwnProperty.call(x, "default") ? x["default"] : x;
|
|
96283
96434
|
}
|
|
@@ -112477,6 +112628,9 @@ ${style2}
|
|
|
112477
112628
|
const onEditorListdefinitionsChange = (params2) => {
|
|
112478
112629
|
proxy.$superdoc.emit("list-definitions-change", params2);
|
|
112479
112630
|
};
|
|
112631
|
+
const onFontsResolved = (params2) => {
|
|
112632
|
+
proxy.$superdoc.emit("fonts-resolved", params2);
|
|
112633
|
+
};
|
|
112480
112634
|
const editorOptions = (doc2) => {
|
|
112481
112635
|
const options = {
|
|
112482
112636
|
isDebug: proxy.$superdoc.config.isDebug || false,
|
|
@@ -112509,6 +112663,7 @@ ${style2}
|
|
|
112509
112663
|
onCommentsUpdate: onEditorCommentsUpdate,
|
|
112510
112664
|
onCommentLocationsUpdate: onEditorCommentLocationsUpdate,
|
|
112511
112665
|
onListDefinitionsChange: onEditorListdefinitionsChange,
|
|
112666
|
+
onFontsResolved: proxy?.$superdoc?.config?.onFontsResolved ? onFontsResolved : null,
|
|
112512
112667
|
onTransaction: onEditorTransaction,
|
|
112513
112668
|
ydoc: doc2.ydoc,
|
|
112514
112669
|
collaborationProvider: doc2.provider || null,
|
|
@@ -112887,7 +113042,7 @@ ${style2}
|
|
|
112887
113042
|
};
|
|
112888
113043
|
}
|
|
112889
113044
|
};
|
|
112890
|
-
const App = /* @__PURE__ */ _export_sfc(_sfc_main$1, [["__scopeId", "data-v-
|
|
113045
|
+
const App = /* @__PURE__ */ _export_sfc(_sfc_main$1, [["__scopeId", "data-v-6de7ff3a"]]);
|
|
112891
113046
|
const createSuperdocVueApp = () => {
|
|
112892
113047
|
const app = createApp(App);
|
|
112893
113048
|
const pinia = createPinia();
|
|
@@ -112968,6 +113123,7 @@ ${style2}
|
|
|
112968
113123
|
onException: () => null,
|
|
112969
113124
|
onListDefinitionsChange: () => null,
|
|
112970
113125
|
onTransaction: () => null,
|
|
113126
|
+
onFontsResolved: null,
|
|
112971
113127
|
// Image upload handler
|
|
112972
113128
|
// async (file) => url;
|
|
112973
113129
|
handleImageUpload: null,
|
|
@@ -113142,6 +113298,9 @@ ${style2}
|
|
|
113142
113298
|
this.on("content-error", this.onContentError);
|
|
113143
113299
|
this.on("exception", this.config.onException);
|
|
113144
113300
|
this.on("list-definitions-change", this.config.onListDefinitionsChange);
|
|
113301
|
+
if (this.config.onFontsResolved) {
|
|
113302
|
+
this.on("fonts-resolved", this.config.onFontsResolved);
|
|
113303
|
+
}
|
|
113145
113304
|
}
|
|
113146
113305
|
/**
|
|
113147
113306
|
* Initialize collaboration if configured
|