@harbour-enterprises/superdoc 1.17.0-next.22 → 1.17.0-next.26
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/{DocxZipper-B5QHkGwk.cjs → DocxZipper-B8xyRRbO.cjs} +10 -4
- package/dist/chunks/{DocxZipper-CXjNiywL.es.js → DocxZipper-B9Uo1uiZ.es.js} +10 -4
- package/dist/chunks/{SuperConverter-Da2sHpq1.es.js → SuperConverter-BTdYC9eH.es.js} +288 -127
- package/dist/chunks/{SuperConverter-D7RZNOcI.cjs → SuperConverter-h-dPQ2kg.cjs} +288 -127
- package/dist/chunks/{constants-CpniKo9Z.cjs → constants-C-hTr4No.cjs} +24 -0
- package/dist/chunks/{constants-DBKi0Amm.es.js → constants-Dw0kAsLd.es.js} +19 -1
- package/dist/chunks/{src-nkjmbRm8.es.js → src-C-8JeNgT.es.js} +280 -85
- package/dist/chunks/{src-B58kawL4.cjs → src-kYXJzFjl.cjs} +280 -85
- package/dist/super-editor/converter.cjs +2 -2
- package/dist/super-editor/converter.es.js +2 -2
- package/dist/super-editor/docx-zipper.cjs +2 -2
- package/dist/super-editor/docx-zipper.es.js +2 -2
- package/dist/super-editor/src/core/DocxZipper.d.ts.map +1 -1
- package/dist/super-editor/src/core/super-converter/helpers.d.ts.map +1 -1
- package/dist/super-editor/src/core/super-converter/v3/handlers/wp/helpers/decode-image-node-helpers.d.ts.map +1 -1
- package/dist/super-editor/src/core/super-converter/v3/handlers/wp/helpers/encode-image-node-helpers.d.ts +1 -1
- package/dist/super-editor/src/core/super-converter/v3/handlers/wp/helpers/encode-image-node-helpers.d.ts.map +1 -1
- package/dist/super-editor/src/core/super-converter/v3/handlers/wp/helpers/rtfjs/emfjs/Bitmap.d.ts +1 -0
- package/dist/super-editor/src/core/super-converter/v3/handlers/wp/helpers/rtfjs/emfjs/Bitmap.d.ts.map +1 -1
- package/dist/super-editor/src/core/super-converter/v3/handlers/wp/helpers/rtfjs/emfjs/EMFRecords.d.ts +2 -0
- package/dist/super-editor/src/core/super-converter/v3/handlers/wp/helpers/rtfjs/emfjs/EMFRecords.d.ts.map +1 -1
- package/dist/super-editor/src/core/super-converter/v3/handlers/wp/helpers/rtfjs/emfjs/GDIContext.d.ts +3 -0
- package/dist/super-editor/src/core/super-converter/v3/handlers/wp/helpers/rtfjs/emfjs/GDIContext.d.ts.map +1 -1
- package/dist/super-editor/src/core/super-converter/v3/handlers/wp/helpers/rtfjs/emfjs/Renderer.d.ts.map +1 -1
- package/dist/super-editor/src/core/super-converter/v3/handlers/wp/helpers/vector-shape-helpers.d.ts +15 -0
- package/dist/super-editor/src/core/super-converter/v3/handlers/wp/helpers/vector-shape-helpers.d.ts.map +1 -1
- package/dist/super-editor/src/extensions/comment/comments-plugin.d.ts.map +1 -1
- package/dist/super-editor/src/extensions/image/image.d.ts.map +1 -1
- package/dist/super-editor/src/extensions/run/wrapTextInRunsPlugin.d.ts.map +1 -1
- package/dist/super-editor/src/extensions/shape-group/ShapeGroupView.d.ts.map +1 -1
- package/dist/super-editor/src/extensions/track-changes/track-changes.d.ts.map +1 -1
- package/dist/super-editor/src/extensions/vector-shape/vector-shape.d.ts.map +1 -1
- package/dist/super-editor.cjs +4 -4
- package/dist/super-editor.es.js +4 -4
- package/dist/superdoc/src/stores/comments-store.d.ts.map +1 -1
- package/dist/superdoc.cjs +15 -7
- package/dist/superdoc.es.js +15 -7
- package/dist/superdoc.umd.js +602 -214
- package/dist/superdoc.umd.js.map +1 -1
- package/package.json +1 -1
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
const require_rolldown_runtime = require("./rolldown-runtime-Dp2H1eGw.cjs");
|
|
2
2
|
const require_jszip = require("./jszip-DCT9QYaK.cjs");
|
|
3
3
|
const require_xml_js = require("./xml-js--DznO7Gk.cjs");
|
|
4
|
-
const require_constants = require("./constants-
|
|
4
|
+
const require_constants = require("./constants-C-hTr4No.cjs");
|
|
5
5
|
const DOCX = "application/vnd.openxmlformats-officedocument.wordprocessingml.document";
|
|
6
6
|
const PDF = "application/pdf";
|
|
7
7
|
const HTML = "text/html";
|
|
@@ -1477,8 +1477,8 @@ var DocxZipper = class {
|
|
|
1477
1477
|
this.mediaFiles[name] = fileBase64;
|
|
1478
1478
|
} else {
|
|
1479
1479
|
const fileBase64 = await zipEntry.async("base64");
|
|
1480
|
-
|
|
1481
|
-
|
|
1480
|
+
let extension = this.getFileExtension(name)?.toLowerCase();
|
|
1481
|
+
const imageTypes = new Set([
|
|
1482
1482
|
"png",
|
|
1483
1483
|
"jpg",
|
|
1484
1484
|
"jpeg",
|
|
@@ -1489,7 +1489,13 @@ var DocxZipper = class {
|
|
|
1489
1489
|
"wmf",
|
|
1490
1490
|
"svg",
|
|
1491
1491
|
"webp"
|
|
1492
|
-
])
|
|
1492
|
+
]);
|
|
1493
|
+
let detectedType = null;
|
|
1494
|
+
if (!imageTypes.has(extension) || extension === "tmp") {
|
|
1495
|
+
detectedType = require_constants.detectImageType(fileBase64);
|
|
1496
|
+
if (detectedType) extension = detectedType;
|
|
1497
|
+
}
|
|
1498
|
+
if (imageTypes.has(extension)) {
|
|
1493
1499
|
this.mediaFiles[name] = `data:image/${extension};base64,${fileBase64}`;
|
|
1494
1500
|
const blob = await zipEntry.async("blob");
|
|
1495
1501
|
const fileObj = new File([blob], name, { type: blob.type });
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { o as __toESM } from "./rolldown-runtime-B2q5OVn9.es.js";
|
|
2
2
|
import { t as require_jszip_min } from "./jszip-ChlR43oI.es.js";
|
|
3
3
|
import { t as require_lib } from "./xml-js-DLE8mr0n.es.js";
|
|
4
|
-
import {
|
|
4
|
+
import { d as detectImageType, h as getContentTypesFromXml, o as base64ToUint8Array, t as COMMENT_FILE_BASENAMES } from "./constants-Dw0kAsLd.es.js";
|
|
5
5
|
const DOCX = "application/vnd.openxmlformats-officedocument.wordprocessingml.document";
|
|
6
6
|
const PDF = "application/pdf";
|
|
7
7
|
const HTML = "text/html";
|
|
@@ -1477,8 +1477,8 @@ var DocxZipper = class {
|
|
|
1477
1477
|
this.mediaFiles[name] = fileBase64;
|
|
1478
1478
|
} else {
|
|
1479
1479
|
const fileBase64 = await zipEntry.async("base64");
|
|
1480
|
-
|
|
1481
|
-
|
|
1480
|
+
let extension = this.getFileExtension(name)?.toLowerCase();
|
|
1481
|
+
const imageTypes = new Set([
|
|
1482
1482
|
"png",
|
|
1483
1483
|
"jpg",
|
|
1484
1484
|
"jpeg",
|
|
@@ -1489,7 +1489,13 @@ var DocxZipper = class {
|
|
|
1489
1489
|
"wmf",
|
|
1490
1490
|
"svg",
|
|
1491
1491
|
"webp"
|
|
1492
|
-
])
|
|
1492
|
+
]);
|
|
1493
|
+
let detectedType = null;
|
|
1494
|
+
if (!imageTypes.has(extension) || extension === "tmp") {
|
|
1495
|
+
detectedType = detectImageType(fileBase64);
|
|
1496
|
+
if (detectedType) extension = detectedType;
|
|
1497
|
+
}
|
|
1498
|
+
if (imageTypes.has(extension)) {
|
|
1493
1499
|
this.mediaFiles[name] = `data:image/${extension};base64,${fileBase64}`;
|
|
1494
1500
|
const blob = await zipEntry.async("blob");
|
|
1495
1501
|
const fileObj = new File([blob], name, { type: blob.type });
|
|
@@ -2,7 +2,7 @@ import { o as __toESM, r as __export, t as __commonJSMin } from "./rolldown-runt
|
|
|
2
2
|
import { a as init_dist, i as global } from "./jszip-ChlR43oI.es.js";
|
|
3
3
|
import { t as require_lib } from "./xml-js-DLE8mr0n.es.js";
|
|
4
4
|
import { t as v4_default } from "./uuid-2IzDu5nl.es.js";
|
|
5
|
-
import { A as
|
|
5
|
+
import { A as ptToTwips, C as normalizeHexColor, D as pixelsToTwips, E as pixelsToEmu, F as twipsToInches, I as twipsToLines, L as twipsToPixels, M as resolveShadingFillColor, N as rgbToHex, O as pointsToTwips, P as rotToDegrees, R as twipsToPt, S as linesToTwips, T as pixelsToEightPoints, _ as getHexColorFromDocxSystem, a as HYPERLINK_RELATIONSHIP_TYPE, b as inchesToTwips, f as eighthPointsToPixels, g as getDocxHighlightKeywordFromHex, i as HEADER_RELATIONSHIP_TYPE, j as resolveOpcTargetPath, k as polygonToObj, l as degreesToRot, m as getArrayBufferFromUrl, n as COMMENT_RELATIONSHIP_TYPES, o as base64ToUint8Array, p as emuToPixels, r as FOOTER_RELATIONSHIP_TYPE, s as computeCrc32Hex, t as COMMENT_FILE_BASENAMES, u as deobfuscateFont, v as halfPointToPoints, w as objToPolygon, x as isValidHexColor } from "./constants-Dw0kAsLd.es.js";
|
|
6
6
|
import { t as unified } from "./unified-BRHLwnjP.es.js";
|
|
7
7
|
import { r as stringifyPosition } from "./lib-HnbxUP96.es.js";
|
|
8
8
|
import { s as toString } from "./lib-DAB30bX1.es.js";
|
|
@@ -10901,6 +10901,54 @@ function extractFillColor(spPr, style) {
|
|
|
10901
10901
|
}
|
|
10902
10902
|
return null;
|
|
10903
10903
|
}
|
|
10904
|
+
function extractCustomGeometry(spPr) {
|
|
10905
|
+
const custGeom = spPr?.elements?.find((el) => el.name === "a:custGeom");
|
|
10906
|
+
if (!custGeom) return null;
|
|
10907
|
+
const pathLst = custGeom.elements?.find((el) => el.name === "a:pathLst");
|
|
10908
|
+
if (!pathLst?.elements) return null;
|
|
10909
|
+
const paths = pathLst.elements.filter((el) => el.name === "a:path").map((pathEl) => {
|
|
10910
|
+
const w = parseInt(pathEl.attributes?.["w"] || "0", 10);
|
|
10911
|
+
const h = parseInt(pathEl.attributes?.["h"] || "0", 10);
|
|
10912
|
+
return {
|
|
10913
|
+
d: convertDrawingMLPathToSvg(pathEl),
|
|
10914
|
+
w,
|
|
10915
|
+
h
|
|
10916
|
+
};
|
|
10917
|
+
}).filter((p) => p.d);
|
|
10918
|
+
if (paths.length === 0) return null;
|
|
10919
|
+
return { paths };
|
|
10920
|
+
}
|
|
10921
|
+
function convertDrawingMLPathToSvg(pathEl) {
|
|
10922
|
+
if (!pathEl?.elements) return "";
|
|
10923
|
+
const parts = [];
|
|
10924
|
+
for (const cmd of pathEl.elements) switch (cmd.name) {
|
|
10925
|
+
case "a:moveTo": {
|
|
10926
|
+
const pt = cmd.elements?.find((el) => el.name === "a:pt");
|
|
10927
|
+
if (pt) parts.push(`M ${pt.attributes?.["x"] || 0} ${pt.attributes?.["y"] || 0}`);
|
|
10928
|
+
break;
|
|
10929
|
+
}
|
|
10930
|
+
case "a:lnTo": {
|
|
10931
|
+
const pt = cmd.elements?.find((el) => el.name === "a:pt");
|
|
10932
|
+
if (pt) parts.push(`L ${pt.attributes?.["x"] || 0} ${pt.attributes?.["y"] || 0}`);
|
|
10933
|
+
break;
|
|
10934
|
+
}
|
|
10935
|
+
case "a:cubicBezTo": {
|
|
10936
|
+
const pts = cmd.elements?.filter((el) => el.name === "a:pt") || [];
|
|
10937
|
+
if (pts.length === 3) parts.push(`C ${pts[0].attributes?.["x"] || 0} ${pts[0].attributes?.["y"] || 0} ${pts[1].attributes?.["x"] || 0} ${pts[1].attributes?.["y"] || 0} ${pts[2].attributes?.["x"] || 0} ${pts[2].attributes?.["y"] || 0}`);
|
|
10938
|
+
break;
|
|
10939
|
+
}
|
|
10940
|
+
case "a:quadBezTo": {
|
|
10941
|
+
const pts = cmd.elements?.filter((el) => el.name === "a:pt") || [];
|
|
10942
|
+
if (pts.length === 2) parts.push(`Q ${pts[0].attributes?.["x"] || 0} ${pts[0].attributes?.["y"] || 0} ${pts[1].attributes?.["x"] || 0} ${pts[1].attributes?.["y"] || 0}`);
|
|
10943
|
+
break;
|
|
10944
|
+
}
|
|
10945
|
+
case "a:close":
|
|
10946
|
+
parts.push("Z");
|
|
10947
|
+
break;
|
|
10948
|
+
default: break;
|
|
10949
|
+
}
|
|
10950
|
+
return parts.join(" ");
|
|
10951
|
+
}
|
|
10904
10952
|
function extractGradientFill(gradFill) {
|
|
10905
10953
|
const gradient = {
|
|
10906
10954
|
type: "gradient",
|
|
@@ -11519,6 +11567,155 @@ var Blob$2 = class Blob$2 {
|
|
|
11519
11567
|
return ret;
|
|
11520
11568
|
}
|
|
11521
11569
|
};
|
|
11570
|
+
var BitmapCoreHeader$1 = class {
|
|
11571
|
+
constructor(reader, skipsize) {
|
|
11572
|
+
if (skipsize) reader.skip(4);
|
|
11573
|
+
this.width = reader.readUint16();
|
|
11574
|
+
this.height = reader.readUint16();
|
|
11575
|
+
this.planes = reader.readUint16();
|
|
11576
|
+
this.bitcount = reader.readUint16();
|
|
11577
|
+
}
|
|
11578
|
+
colors() {
|
|
11579
|
+
return this.bitcount <= 8 ? 1 << this.bitcount : 0;
|
|
11580
|
+
}
|
|
11581
|
+
};
|
|
11582
|
+
var BitmapInfoHeader$1 = class {
|
|
11583
|
+
constructor(reader, skipsize) {
|
|
11584
|
+
if (skipsize) reader.skip(4);
|
|
11585
|
+
this.width = reader.readInt32();
|
|
11586
|
+
this.height = reader.readInt32();
|
|
11587
|
+
this.planes = reader.readUint16();
|
|
11588
|
+
this.bitcount = reader.readUint16();
|
|
11589
|
+
this.compression = reader.readUint32();
|
|
11590
|
+
this.sizeimage = reader.readUint32();
|
|
11591
|
+
this.xpelspermeter = reader.readInt32();
|
|
11592
|
+
this.ypelspermeter = reader.readInt32();
|
|
11593
|
+
this.clrused = reader.readUint32();
|
|
11594
|
+
this.clrimportant = reader.readUint32();
|
|
11595
|
+
}
|
|
11596
|
+
colors() {
|
|
11597
|
+
if (this.clrused !== 0) return this.clrused < 256 ? this.clrused : 256;
|
|
11598
|
+
else return this.bitcount > 8 ? 0 : 1 << this.bitcount;
|
|
11599
|
+
}
|
|
11600
|
+
};
|
|
11601
|
+
var BitmapInfo$1 = class {
|
|
11602
|
+
constructor(reader, usergb) {
|
|
11603
|
+
this._usergb = usergb;
|
|
11604
|
+
const hdrsize = reader.readUint32();
|
|
11605
|
+
this._infosize = hdrsize;
|
|
11606
|
+
if (hdrsize === Helper$1.GDI.BITMAPCOREHEADER_SIZE) {
|
|
11607
|
+
this._header = new BitmapCoreHeader$1(reader, false);
|
|
11608
|
+
this._infosize += this._header.colors() * (usergb ? 3 : 2);
|
|
11609
|
+
} else {
|
|
11610
|
+
this._header = new BitmapInfoHeader$1(reader, false);
|
|
11611
|
+
const masks = this._header.compression === Helper$1.GDI.BitmapCompression.BI_BITFIELDS ? 3 : 0;
|
|
11612
|
+
if (hdrsize <= Helper$1.GDI.BITMAPINFOHEADER_SIZE + masks * 4) this._infosize = Helper$1.GDI.BITMAPINFOHEADER_SIZE + masks * 4;
|
|
11613
|
+
this._infosize += this._header.colors() * (usergb ? 4 : 2);
|
|
11614
|
+
}
|
|
11615
|
+
}
|
|
11616
|
+
getWidth() {
|
|
11617
|
+
return this._header.width;
|
|
11618
|
+
}
|
|
11619
|
+
getHeight() {
|
|
11620
|
+
return Math.abs(this._header.height);
|
|
11621
|
+
}
|
|
11622
|
+
infosize() {
|
|
11623
|
+
return this._infosize;
|
|
11624
|
+
}
|
|
11625
|
+
header() {
|
|
11626
|
+
return this._header;
|
|
11627
|
+
}
|
|
11628
|
+
};
|
|
11629
|
+
var DIBitmap$1 = class {
|
|
11630
|
+
constructor(reader, bitmapInfo) {
|
|
11631
|
+
this._reader = reader;
|
|
11632
|
+
this._offset = reader.pos;
|
|
11633
|
+
this._location = bitmapInfo;
|
|
11634
|
+
this._info = new BitmapInfo$1(reader, true);
|
|
11635
|
+
}
|
|
11636
|
+
getWidth() {
|
|
11637
|
+
return this._info.getWidth();
|
|
11638
|
+
}
|
|
11639
|
+
getHeight() {
|
|
11640
|
+
return this._info.getHeight();
|
|
11641
|
+
}
|
|
11642
|
+
totalSize() {
|
|
11643
|
+
return this._location.header.size + this._location.data.size;
|
|
11644
|
+
}
|
|
11645
|
+
makeBitmapFileHeader() {
|
|
11646
|
+
const buf = /* @__PURE__ */ new ArrayBuffer(14);
|
|
11647
|
+
const view = new Uint8Array(buf);
|
|
11648
|
+
view[0] = 66;
|
|
11649
|
+
view[1] = 77;
|
|
11650
|
+
Helper$1._writeUint32Val(view, 2, this.totalSize() + 14);
|
|
11651
|
+
Helper$1._writeUint32Val(view, 10, this._info.infosize() + 14);
|
|
11652
|
+
return Helper$1._blobToBinary(view);
|
|
11653
|
+
}
|
|
11654
|
+
convertToPNG(bitmapData, width, height, hasAlpha) {
|
|
11655
|
+
const canvas = document.createElement("canvas");
|
|
11656
|
+
canvas.width = width;
|
|
11657
|
+
canvas.height = Math.abs(height);
|
|
11658
|
+
const ctx = canvas.getContext("2d");
|
|
11659
|
+
if (!ctx) throw new Error("Unable to get canvas context for PNG conversion");
|
|
11660
|
+
const imageData = ctx.createImageData(width, Math.abs(height));
|
|
11661
|
+
const pixels = imageData.data;
|
|
11662
|
+
const rowSize = width * 32 + 31 >>> 5 << 2;
|
|
11663
|
+
const absHeight = Math.abs(height);
|
|
11664
|
+
const topDown = height < 0;
|
|
11665
|
+
let alphaUsed = false;
|
|
11666
|
+
if (hasAlpha) for (let y = 0; y < absHeight && !alphaUsed; y++) {
|
|
11667
|
+
const srcY = topDown ? y : absHeight - 1 - y;
|
|
11668
|
+
for (let x = 0; x < width && !alphaUsed; x++) if (bitmapData[srcY * rowSize + x * 4 + 3] > 0) alphaUsed = true;
|
|
11669
|
+
}
|
|
11670
|
+
for (let y = 0; y < absHeight; y++) {
|
|
11671
|
+
const srcY = topDown ? y : absHeight - 1 - y;
|
|
11672
|
+
for (let x = 0; x < width; x++) {
|
|
11673
|
+
const srcOffset = srcY * rowSize + x * 4;
|
|
11674
|
+
const dstOffset = (y * width + x) * 4;
|
|
11675
|
+
pixels[dstOffset] = bitmapData[srcOffset + 2];
|
|
11676
|
+
pixels[dstOffset + 1] = bitmapData[srcOffset + 1];
|
|
11677
|
+
pixels[dstOffset + 2] = bitmapData[srcOffset];
|
|
11678
|
+
pixels[dstOffset + 3] = alphaUsed ? bitmapData[srcOffset + 3] : 255;
|
|
11679
|
+
}
|
|
11680
|
+
}
|
|
11681
|
+
ctx.putImageData(imageData, 0, 0);
|
|
11682
|
+
return canvas.toDataURL("image/png");
|
|
11683
|
+
}
|
|
11684
|
+
base64ref() {
|
|
11685
|
+
const prevpos = this._reader.pos;
|
|
11686
|
+
this._reader.seek(this._offset);
|
|
11687
|
+
const header = this._info.header();
|
|
11688
|
+
if (header instanceof BitmapInfoHeader$1 && header.compression != null) switch (header.compression) {
|
|
11689
|
+
case Helper$1.GDI.BitmapCompression.BI_JPEG:
|
|
11690
|
+
this._reader.seek(this._location.data.off);
|
|
11691
|
+
const jpegData = "data:image/jpeg;base64," + btoa(this._reader.readBinary(this._location.data.size));
|
|
11692
|
+
this._reader.seek(prevpos);
|
|
11693
|
+
return jpegData;
|
|
11694
|
+
case Helper$1.GDI.BitmapCompression.BI_PNG:
|
|
11695
|
+
this._reader.seek(this._location.data.off);
|
|
11696
|
+
const pngData = "data:image/png;base64," + btoa(this._reader.readBinary(this._location.data.size));
|
|
11697
|
+
this._reader.seek(prevpos);
|
|
11698
|
+
return pngData;
|
|
11699
|
+
}
|
|
11700
|
+
if (header instanceof BitmapInfoHeader$1 && header.bitcount === 32) {
|
|
11701
|
+
this._reader.seek(this._location.data.off);
|
|
11702
|
+
const bitmapBytes = new Uint8Array(this._location.data.size);
|
|
11703
|
+
const bitmapData = this._reader.readBinary(this._location.data.size);
|
|
11704
|
+
for (let i = 0; i < this._location.data.size; i++) bitmapBytes[i] = bitmapData.charCodeAt(i);
|
|
11705
|
+
const pngDataUrl = this.convertToPNG(bitmapBytes, header.width, header.height, true);
|
|
11706
|
+
this._reader.seek(prevpos);
|
|
11707
|
+
return pngDataUrl;
|
|
11708
|
+
}
|
|
11709
|
+
let data = this.makeBitmapFileHeader();
|
|
11710
|
+
this._reader.seek(this._location.header.off);
|
|
11711
|
+
data += this._reader.readBinary(this._location.header.size);
|
|
11712
|
+
this._reader.seek(this._location.data.off);
|
|
11713
|
+
data += this._reader.readBinary(this._location.data.size);
|
|
11714
|
+
const ref = "data:image/bmp;base64," + btoa(data);
|
|
11715
|
+
this._reader.seek(prevpos);
|
|
11716
|
+
return ref;
|
|
11717
|
+
}
|
|
11718
|
+
};
|
|
11522
11719
|
var PointS$1 = class PointS$1 {
|
|
11523
11720
|
constructor(reader, x, y) {
|
|
11524
11721
|
if (reader != null) {
|
|
@@ -11917,118 +12114,6 @@ var Scan$1 = class Scan$1 {
|
|
|
11917
12114
|
return this.scanlines.length > 0;
|
|
11918
12115
|
}
|
|
11919
12116
|
};
|
|
11920
|
-
var BitmapCoreHeader$1 = class {
|
|
11921
|
-
constructor(reader, skipsize) {
|
|
11922
|
-
if (skipsize) reader.skip(4);
|
|
11923
|
-
this.width = reader.readUint16();
|
|
11924
|
-
this.height = reader.readUint16();
|
|
11925
|
-
this.planes = reader.readUint16();
|
|
11926
|
-
this.bitcount = reader.readUint16();
|
|
11927
|
-
}
|
|
11928
|
-
colors() {
|
|
11929
|
-
return this.bitcount <= 8 ? 1 << this.bitcount : 0;
|
|
11930
|
-
}
|
|
11931
|
-
};
|
|
11932
|
-
var BitmapInfoHeader$1 = class {
|
|
11933
|
-
constructor(reader, skipsize) {
|
|
11934
|
-
if (skipsize) reader.skip(4);
|
|
11935
|
-
this.width = reader.readInt32();
|
|
11936
|
-
this.height = reader.readInt32();
|
|
11937
|
-
this.planes = reader.readUint16();
|
|
11938
|
-
this.bitcount = reader.readUint16();
|
|
11939
|
-
this.compression = reader.readUint32();
|
|
11940
|
-
this.sizeimage = reader.readUint32();
|
|
11941
|
-
this.xpelspermeter = reader.readInt32();
|
|
11942
|
-
this.ypelspermeter = reader.readInt32();
|
|
11943
|
-
this.clrused = reader.readUint32();
|
|
11944
|
-
this.clrimportant = reader.readUint32();
|
|
11945
|
-
}
|
|
11946
|
-
colors() {
|
|
11947
|
-
if (this.clrused !== 0) return this.clrused < 256 ? this.clrused : 256;
|
|
11948
|
-
else return this.bitcount > 8 ? 0 : 1 << this.bitcount;
|
|
11949
|
-
}
|
|
11950
|
-
};
|
|
11951
|
-
var BitmapInfo$1 = class {
|
|
11952
|
-
constructor(reader, usergb) {
|
|
11953
|
-
this._usergb = usergb;
|
|
11954
|
-
const hdrsize = reader.readUint32();
|
|
11955
|
-
this._infosize = hdrsize;
|
|
11956
|
-
if (hdrsize === Helper$1.GDI.BITMAPCOREHEADER_SIZE) {
|
|
11957
|
-
this._header = new BitmapCoreHeader$1(reader, false);
|
|
11958
|
-
this._infosize += this._header.colors() * (usergb ? 3 : 2);
|
|
11959
|
-
} else {
|
|
11960
|
-
this._header = new BitmapInfoHeader$1(reader, false);
|
|
11961
|
-
const masks = this._header.compression === Helper$1.GDI.BitmapCompression.BI_BITFIELDS ? 3 : 0;
|
|
11962
|
-
if (hdrsize <= Helper$1.GDI.BITMAPINFOHEADER_SIZE + masks * 4) this._infosize = Helper$1.GDI.BITMAPINFOHEADER_SIZE + masks * 4;
|
|
11963
|
-
this._infosize += this._header.colors() * (usergb ? 4 : 2);
|
|
11964
|
-
}
|
|
11965
|
-
}
|
|
11966
|
-
getWidth() {
|
|
11967
|
-
return this._header.width;
|
|
11968
|
-
}
|
|
11969
|
-
getHeight() {
|
|
11970
|
-
return Math.abs(this._header.height);
|
|
11971
|
-
}
|
|
11972
|
-
infosize() {
|
|
11973
|
-
return this._infosize;
|
|
11974
|
-
}
|
|
11975
|
-
header() {
|
|
11976
|
-
return this._header;
|
|
11977
|
-
}
|
|
11978
|
-
};
|
|
11979
|
-
var DIBitmap$1 = class {
|
|
11980
|
-
constructor(reader, bitmapInfo) {
|
|
11981
|
-
this._reader = reader;
|
|
11982
|
-
this._offset = reader.pos;
|
|
11983
|
-
this._location = bitmapInfo;
|
|
11984
|
-
this._info = new BitmapInfo$1(reader, true);
|
|
11985
|
-
}
|
|
11986
|
-
getWidth() {
|
|
11987
|
-
return this._info.getWidth();
|
|
11988
|
-
}
|
|
11989
|
-
getHeight() {
|
|
11990
|
-
return this._info.getHeight();
|
|
11991
|
-
}
|
|
11992
|
-
totalSize() {
|
|
11993
|
-
return this._location.header.size + this._location.data.size;
|
|
11994
|
-
}
|
|
11995
|
-
makeBitmapFileHeader() {
|
|
11996
|
-
const buf = /* @__PURE__ */ new ArrayBuffer(14);
|
|
11997
|
-
const view = new Uint8Array(buf);
|
|
11998
|
-
view[0] = 66;
|
|
11999
|
-
view[1] = 77;
|
|
12000
|
-
Helper$1._writeUint32Val(view, 2, this.totalSize() + 14);
|
|
12001
|
-
Helper$1._writeUint32Val(view, 10, this._info.infosize() + 14);
|
|
12002
|
-
return Helper$1._blobToBinary(view);
|
|
12003
|
-
}
|
|
12004
|
-
base64ref() {
|
|
12005
|
-
const prevpos = this._reader.pos;
|
|
12006
|
-
this._reader.seek(this._offset);
|
|
12007
|
-
let mime = "image/bmp";
|
|
12008
|
-
const header = this._info.header();
|
|
12009
|
-
let data;
|
|
12010
|
-
if (header instanceof BitmapInfoHeader$1 && header.compression != null) switch (header.compression) {
|
|
12011
|
-
case Helper$1.GDI.BitmapCompression.BI_JPEG:
|
|
12012
|
-
mime = "data:image/jpeg";
|
|
12013
|
-
break;
|
|
12014
|
-
case Helper$1.GDI.BitmapCompression.BI_PNG:
|
|
12015
|
-
mime = "data:image/png";
|
|
12016
|
-
break;
|
|
12017
|
-
default:
|
|
12018
|
-
data = this.makeBitmapFileHeader();
|
|
12019
|
-
break;
|
|
12020
|
-
}
|
|
12021
|
-
else data = this.makeBitmapFileHeader();
|
|
12022
|
-
this._reader.seek(this._location.header.offset);
|
|
12023
|
-
if (data != null) data += this._reader.readBinary(this._location.header.size);
|
|
12024
|
-
else data = this._reader.readBinary(this._location.header.size);
|
|
12025
|
-
this._reader.seek(this._location.data.offset);
|
|
12026
|
-
data += this._reader.readBinary(this._location.data.size);
|
|
12027
|
-
const ref = "data:" + mime + ";base64," + btoa(data);
|
|
12028
|
-
this._reader.seek(prevpos);
|
|
12029
|
-
return ref;
|
|
12030
|
-
}
|
|
12031
|
-
};
|
|
12032
12117
|
var ColorRef$1 = class ColorRef$1 {
|
|
12033
12118
|
constructor(reader, r, g, b) {
|
|
12034
12119
|
if (reader != null) {
|
|
@@ -12244,6 +12329,9 @@ var EmfHeader = class {
|
|
|
12244
12329
|
}
|
|
12245
12330
|
}
|
|
12246
12331
|
}
|
|
12332
|
+
getBounds() {
|
|
12333
|
+
return this.bounds;
|
|
12334
|
+
}
|
|
12247
12335
|
toString() {
|
|
12248
12336
|
return "{bounds: " + this.bounds.toString() + ", frame: " + this.frame.toString() + ", description: " + this.description + "}";
|
|
12249
12337
|
}
|
|
@@ -12352,11 +12440,11 @@ var EMFRecords = class {
|
|
|
12352
12440
|
const cbBits = reader.readUint32();
|
|
12353
12441
|
const pen = new Pen$1(reader, {
|
|
12354
12442
|
header: {
|
|
12355
|
-
off: offBmi,
|
|
12443
|
+
off: curpos + offBmi,
|
|
12356
12444
|
size: cbBmi
|
|
12357
12445
|
},
|
|
12358
12446
|
data: {
|
|
12359
|
-
off: offBits,
|
|
12447
|
+
off: curpos + offBits,
|
|
12360
12448
|
size: cbBits
|
|
12361
12449
|
}
|
|
12362
12450
|
});
|
|
@@ -12594,6 +12682,37 @@ var EMFRecords = class {
|
|
|
12594
12682
|
});
|
|
12595
12683
|
break;
|
|
12596
12684
|
}
|
|
12685
|
+
case Helper$1.GDI.RecordType.EMR_STRETCHDIBITS: {
|
|
12686
|
+
new RectL(reader);
|
|
12687
|
+
const xDest = reader.readInt32();
|
|
12688
|
+
const yDest = reader.readInt32();
|
|
12689
|
+
const xSrc = reader.readInt32();
|
|
12690
|
+
const ySrc = reader.readInt32();
|
|
12691
|
+
const cxSrc = reader.readInt32();
|
|
12692
|
+
const cySrc = reader.readInt32();
|
|
12693
|
+
const offBmiSrc = reader.readUint32();
|
|
12694
|
+
const cbBmiSrc = reader.readUint32();
|
|
12695
|
+
const offBitsSrc = reader.readUint32();
|
|
12696
|
+
const cbBitsSrc = reader.readUint32();
|
|
12697
|
+
const iUsageSrc = reader.readUint32();
|
|
12698
|
+
const dwRop = reader.readUint32();
|
|
12699
|
+
const cxDest = reader.readInt32();
|
|
12700
|
+
const cyDest = reader.readInt32();
|
|
12701
|
+
const dib = new DIBitmap$1(reader, {
|
|
12702
|
+
header: {
|
|
12703
|
+
off: curpos + offBmiSrc,
|
|
12704
|
+
size: cbBmiSrc
|
|
12705
|
+
},
|
|
12706
|
+
data: {
|
|
12707
|
+
off: curpos + offBitsSrc,
|
|
12708
|
+
size: cbBitsSrc
|
|
12709
|
+
}
|
|
12710
|
+
});
|
|
12711
|
+
this._records.push((gdi) => {
|
|
12712
|
+
gdi.stretchDibBits(xSrc, ySrc, cxSrc, cySrc, xDest, yDest, cxDest, cyDest, dwRop, iUsageSrc, dib);
|
|
12713
|
+
});
|
|
12714
|
+
break;
|
|
12715
|
+
}
|
|
12597
12716
|
case Helper$1.GDI.RecordType.EMR_POLYLINE:
|
|
12598
12717
|
case Helper$1.GDI.RecordType.EMR_POLYLINETO:
|
|
12599
12718
|
case Helper$1.GDI.RecordType.EMR_POLYPOLYLINE:
|
|
@@ -12636,7 +12755,6 @@ var EMFRecords = class {
|
|
|
12636
12755
|
case Helper$1.GDI.RecordType.EMR_MASKBLT:
|
|
12637
12756
|
case Helper$1.GDI.RecordType.EMR_PLGBLT:
|
|
12638
12757
|
case Helper$1.GDI.RecordType.EMR_SETDIBITSTODEVICE:
|
|
12639
|
-
case Helper$1.GDI.RecordType.EMR_STRETCHDIBITS:
|
|
12640
12758
|
case Helper$1.GDI.RecordType.EMR_EXTCREATEFONTINDIRECTW:
|
|
12641
12759
|
case Helper$1.GDI.RecordType.EMR_EXTTEXTOUTA:
|
|
12642
12760
|
case Helper$1.GDI.RecordType.EMR_EXTTEXTOUTW:
|
|
@@ -12683,6 +12801,9 @@ var EMFRecords = class {
|
|
|
12683
12801
|
}
|
|
12684
12802
|
if (!all) throw new EMFJSError("Could not read all records");
|
|
12685
12803
|
}
|
|
12804
|
+
getBounds() {
|
|
12805
|
+
return this._header.getBounds();
|
|
12806
|
+
}
|
|
12686
12807
|
play(gdi) {
|
|
12687
12808
|
const len = this._records.length;
|
|
12688
12809
|
for (let i = 0; i < len; i++) this._records[i](gdi);
|
|
@@ -12832,6 +12953,9 @@ var GDIContext$1 = class {
|
|
|
12832
12953
|
this.state.mapmode = mode;
|
|
12833
12954
|
this.state._svggroup = null;
|
|
12834
12955
|
}
|
|
12956
|
+
getMapMode() {
|
|
12957
|
+
return this.state.mapmode;
|
|
12958
|
+
}
|
|
12835
12959
|
setWindowOrgEx(x, y) {
|
|
12836
12960
|
Helper$1.log("[gdi] setWindowOrgEx: x=" + x + " y=" + y);
|
|
12837
12961
|
this.state.wx = x;
|
|
@@ -12880,6 +13004,20 @@ var GDIContext$1 = class {
|
|
|
12880
13004
|
setStretchBltMode(stretchMode) {
|
|
12881
13005
|
Helper$1.log("[gdi] setStretchBltMode: stretchMode=" + stretchMode);
|
|
12882
13006
|
}
|
|
13007
|
+
stretchDibBits(srcX, srcY, srcW, srcH, dstX, dstY, dstW, dstH, rasterOp, colorUsage, dib) {
|
|
13008
|
+
Helper$1.log("[gdi] stretchDibBits: srcX=" + srcX + " srcY=" + srcY + " srcW=" + srcW + " srcH=" + srcH + " dstX=" + dstX + " dstY=" + dstY + " dstW=" + dstW + " dstH=" + dstH + " rasterOp=0x" + rasterOp.toString(16));
|
|
13009
|
+
srcX = this._todevX(srcX);
|
|
13010
|
+
srcY = this._todevY(srcY);
|
|
13011
|
+
srcW = this._todevW(srcW);
|
|
13012
|
+
srcH = this._todevH(srcH);
|
|
13013
|
+
dstX = this._todevX(dstX);
|
|
13014
|
+
dstY = this._todevY(dstY);
|
|
13015
|
+
dstW = this._todevW(dstW);
|
|
13016
|
+
dstH = this._todevH(dstH);
|
|
13017
|
+
Helper$1.log("[gdi] stretchDibBits: TRANSLATED: srcX=" + srcX + " srcY=" + srcY + " srcW=" + srcW + " srcH=" + srcH + " dstX=" + dstX + " dstY=" + dstY + " dstW=" + dstW + " dstH=" + dstH + " rasterOp=0x" + rasterOp.toString(16));
|
|
13018
|
+
this._pushGroup();
|
|
13019
|
+
this._svg.image(this.state._svggroup, dstX, dstY, dstW, dstH, dib.base64ref());
|
|
13020
|
+
}
|
|
12883
13021
|
rectangle(rect, rw, rh) {
|
|
12884
13022
|
Helper$1.log("[gdi] rectangle: rect=" + rect.toString() + " with pen " + this.state.selected.pen.toString() + " and brush " + this.state.selected.brush.toString());
|
|
12885
13023
|
const bottom = this._todevY(rect.bottom);
|
|
@@ -13327,14 +13465,16 @@ var Renderer$1 = class {
|
|
|
13327
13465
|
}
|
|
13328
13466
|
render(info) {
|
|
13329
13467
|
const svgElement = document.createElementNS("http://www.w3.org/2000/svg", "svg");
|
|
13330
|
-
|
|
13468
|
+
const emfBounds = this._img.getBounds();
|
|
13469
|
+
const gdi = this._render(new SVG(svgElement), info.mapMode, emfBounds.width, emfBounds.height, emfBounds.width, emfBounds.height);
|
|
13331
13470
|
svgElement.setAttribute("viewBox", [
|
|
13332
13471
|
0,
|
|
13333
13472
|
0,
|
|
13334
|
-
|
|
13335
|
-
|
|
13473
|
+
emfBounds.width,
|
|
13474
|
+
emfBounds.height
|
|
13336
13475
|
].join(" "));
|
|
13337
|
-
|
|
13476
|
+
const preserveAspectRatio = gdi.getMapMode() === Helper$1.GDI.MapMode.MM_ANISOTROPIC ? "none" : "xMidYMid meet";
|
|
13477
|
+
svgElement.setAttribute("preserveAspectRatio", preserveAspectRatio);
|
|
13338
13478
|
svgElement.setAttribute("width", info.width);
|
|
13339
13479
|
svgElement.setAttribute("height", info.height);
|
|
13340
13480
|
return svgElement;
|
|
@@ -13356,6 +13496,7 @@ var Renderer$1 = class {
|
|
|
13356
13496
|
Helper$1.log("[EMF] BEGIN RENDERING --->");
|
|
13357
13497
|
this._img.render(gdi);
|
|
13358
13498
|
Helper$1.log("[EMF] <--- DONE RENDERING");
|
|
13499
|
+
return gdi;
|
|
13359
13500
|
}
|
|
13360
13501
|
};
|
|
13361
13502
|
var EMF = class {
|
|
@@ -13366,6 +13507,13 @@ var EMF = class {
|
|
|
13366
13507
|
render(gdi) {
|
|
13367
13508
|
this._records.play(gdi);
|
|
13368
13509
|
}
|
|
13510
|
+
getBounds() {
|
|
13511
|
+
const bounds = this._records.getBounds();
|
|
13512
|
+
return {
|
|
13513
|
+
width: bounds.right - bounds.left,
|
|
13514
|
+
height: bounds.bottom - bounds.top
|
|
13515
|
+
};
|
|
13516
|
+
}
|
|
13369
13517
|
};
|
|
13370
13518
|
var WMFJSError = class extends Error {
|
|
13371
13519
|
constructor(message) {
|
|
@@ -16530,6 +16678,7 @@ function handleImageNode(node, params, isAnchor) {
|
|
|
16530
16678
|
const blipFill = picture.elements.find((el) => el.name === "pic:blipFill");
|
|
16531
16679
|
const blip = blipFill?.elements.find((el) => el.name === "a:blip");
|
|
16532
16680
|
if (!blip) return null;
|
|
16681
|
+
const hasGrayscale = blip.elements?.some((el) => el.name === "a:grayscl");
|
|
16533
16682
|
const stretch = blipFill?.elements?.find((el) => el.name === "a:stretch");
|
|
16534
16683
|
const fillRect = stretch?.elements?.find((el) => el.name === "a:fillRect");
|
|
16535
16684
|
const srcRect = blipFill?.elements?.find((el) => el.name === "a:srcRect");
|
|
@@ -16625,14 +16774,18 @@ function handleImageNode(node, params, isAnchor) {
|
|
|
16625
16774
|
originalAttributes: node.attributes,
|
|
16626
16775
|
rId: relAttributes["Id"],
|
|
16627
16776
|
...order.length ? { drawingChildOrder: order } : {},
|
|
16628
|
-
...originalChildren.length ? { originalDrawingChildren: originalChildren } : {}
|
|
16777
|
+
...originalChildren.length ? { originalDrawingChildren: originalChildren } : {},
|
|
16778
|
+
...hasGrayscale ? { grayscale: true } : {}
|
|
16629
16779
|
}
|
|
16630
16780
|
};
|
|
16631
16781
|
}
|
|
16632
16782
|
var handleShapeDrawing = (params, node, graphicData, size, padding, marginOffset, anchorData, wrap$1, isAnchor, isHidden) => {
|
|
16633
16783
|
const wsp = graphicData.elements.find((el) => el.name === "wps:wsp");
|
|
16634
16784
|
const textBoxContent = wsp.elements.find((el) => el.name === "wps:txbx")?.elements?.find((el) => el.name === "w:txbxContent");
|
|
16635
|
-
|
|
16785
|
+
const spPr = wsp.elements.find((el) => el.name === "wps:spPr");
|
|
16786
|
+
const shapeType = (spPr?.elements.find((el) => el.name === "a:prstGeom"))?.attributes["prst"];
|
|
16787
|
+
const custGeom = !shapeType ? extractCustomGeometry(spPr) : null;
|
|
16788
|
+
if (shapeType || custGeom) {
|
|
16636
16789
|
const result = getVectorShape({
|
|
16637
16790
|
params,
|
|
16638
16791
|
node,
|
|
@@ -16641,7 +16794,8 @@ var handleShapeDrawing = (params, node, graphicData, size, padding, marginOffset
|
|
|
16641
16794
|
marginOffset,
|
|
16642
16795
|
anchorData,
|
|
16643
16796
|
wrap: wrap$1,
|
|
16644
|
-
isAnchor
|
|
16797
|
+
isAnchor,
|
|
16798
|
+
customGeometry: custGeom
|
|
16645
16799
|
});
|
|
16646
16800
|
if (result?.attrs && isHidden) result.attrs.hidden = true;
|
|
16647
16801
|
if (result) return result;
|
|
@@ -16710,6 +16864,7 @@ var handleShapeGroup = (params, node, graphicData, size, padding, marginOffset,
|
|
|
16710
16864
|
const spPr = wsp.elements?.find((el) => el.name === "wps:spPr");
|
|
16711
16865
|
if (!spPr) return null;
|
|
16712
16866
|
const shapeKind = (spPr.elements?.find((el) => el.name === "a:prstGeom"))?.attributes?.["prst"];
|
|
16867
|
+
const customGeom = !shapeKind ? extractCustomGeometry(spPr) : null;
|
|
16713
16868
|
const shapeXfrm = spPr.elements?.find((el) => el.name === "a:xfrm");
|
|
16714
16869
|
const shapeOff = shapeXfrm?.elements?.find((el) => el.name === "a:off");
|
|
16715
16870
|
const shapeExt = shapeXfrm?.elements?.find((el) => el.name === "a:ext");
|
|
@@ -16753,6 +16908,7 @@ var handleShapeGroup = (params, node, graphicData, size, padding, marginOffset,
|
|
|
16753
16908
|
shapeType: "vectorShape",
|
|
16754
16909
|
attrs: {
|
|
16755
16910
|
kind: shapeKind,
|
|
16911
|
+
customGeometry: customGeom || void 0,
|
|
16756
16912
|
x,
|
|
16757
16913
|
y,
|
|
16758
16914
|
width,
|
|
@@ -16979,7 +17135,7 @@ var buildShapePlaceholder = (node, size, padding, marginOffset, shapeType) => {
|
|
|
16979
17135
|
attrs
|
|
16980
17136
|
};
|
|
16981
17137
|
};
|
|
16982
|
-
function getVectorShape({ params, node, graphicData, size, marginOffset, anchorData, wrap: wrap$1, isAnchor }) {
|
|
17138
|
+
function getVectorShape({ params, node, graphicData, size, marginOffset, anchorData, wrap: wrap$1, isAnchor, customGeometry }) {
|
|
16983
17139
|
const schemaAttrs = {};
|
|
16984
17140
|
const drawingNode = params.nodes?.[0];
|
|
16985
17141
|
if (drawingNode?.name === "w:drawing") schemaAttrs.drawingContent = drawingNode;
|
|
@@ -16988,8 +17144,12 @@ function getVectorShape({ params, node, graphicData, size, marginOffset, anchorD
|
|
|
16988
17144
|
const spPr = wsp.elements?.find((el) => el.name === "wps:spPr");
|
|
16989
17145
|
if (!spPr) return null;
|
|
16990
17146
|
const shapeKind = (spPr.elements?.find((el) => el.name === "a:prstGeom"))?.attributes?.["prst"];
|
|
16991
|
-
if (!shapeKind) console.warn("Shape kind not found");
|
|
16992
17147
|
schemaAttrs.kind = shapeKind;
|
|
17148
|
+
if (customGeometry) schemaAttrs.customGeometry = customGeometry;
|
|
17149
|
+
else if (!shapeKind) {
|
|
17150
|
+
const extracted = extractCustomGeometry(spPr);
|
|
17151
|
+
if (extracted) schemaAttrs.customGeometry = extracted;
|
|
17152
|
+
}
|
|
16993
17153
|
const width = size?.width ?? DEFAULT_SHAPE_WIDTH;
|
|
16994
17154
|
const height = size?.height ?? DEFAULT_SHAPE_HEIGHT;
|
|
16995
17155
|
const xfrm = spPr.elements?.find((el) => el.name === "a:xfrm");
|
|
@@ -25587,7 +25747,8 @@ const translateImageNode = (params) => {
|
|
|
25587
25747
|
elements: [
|
|
25588
25748
|
{
|
|
25589
25749
|
name: "a:blip",
|
|
25590
|
-
attributes: { "r:embed": imageId }
|
|
25750
|
+
attributes: { "r:embed": imageId },
|
|
25751
|
+
...attrs.grayscale ? { elements: [{ name: "a:grayscl" }] } : {}
|
|
25591
25752
|
},
|
|
25592
25753
|
...rawSrcRect ? [rawSrcRect] : [],
|
|
25593
25754
|
{
|
|
@@ -36996,7 +37157,7 @@ var SuperConverter = class SuperConverter {
|
|
|
36996
37157
|
static getStoredSuperdocVersion(docx) {
|
|
36997
37158
|
return SuperConverter.getStoredCustomProperty(docx, "SuperdocVersion");
|
|
36998
37159
|
}
|
|
36999
|
-
static setStoredSuperdocVersion(docx = this.convertedXml, version = "1.17.0-next.
|
|
37160
|
+
static setStoredSuperdocVersion(docx = this.convertedXml, version = "1.17.0-next.26") {
|
|
37000
37161
|
return SuperConverter.setStoredCustomProperty(docx, "SuperdocVersion", version, false);
|
|
37001
37162
|
}
|
|
37002
37163
|
static generateWordTimestamp() {
|