@bendyline/squisq-formats 2.0.0 → 2.1.0
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/{chunk-CX3LH47J.js → chunk-74GO3FVS.js} +3 -3
- package/dist/{chunk-4HJ6AK2Q.js → chunk-7ARKUCQT.js} +52 -13
- package/dist/chunk-7ARKUCQT.js.map +1 -0
- package/dist/{chunk-LXYLOOST.js → chunk-DTDF6QDP.js} +3 -3
- package/dist/chunk-DTDF6QDP.js.map +1 -0
- package/dist/{chunk-ZZ7D4DN6.js → chunk-EW54IRRS.js} +39 -9
- package/dist/chunk-EW54IRRS.js.map +1 -0
- package/dist/{chunk-H7T5DXUU.js → chunk-FE6OJV6O.js} +95 -14
- package/dist/chunk-FE6OJV6O.js.map +1 -0
- package/dist/{chunk-XTLQXR4U.js → chunk-KURGXM4I.js} +3 -3
- package/dist/{chunk-2CSZJEAL.js → chunk-NNHKUXKA.js} +292 -70
- package/dist/chunk-NNHKUXKA.js.map +1 -0
- package/dist/{chunk-2PRVLAU3.js → chunk-QFLDYKCR.js} +55 -17
- package/dist/chunk-QFLDYKCR.js.map +1 -0
- package/dist/{chunk-CVNVD7VH.js → chunk-RLU7UFYU.js} +5 -5
- package/dist/{chunk-X4USWOQ2.js → chunk-SC67HYQJ.js} +2 -2
- package/dist/{chunk-HBSCRS5P.js → chunk-UGYF5AZE.js} +3 -3
- package/dist/{chunk-2EFDWKC6.js → chunk-WQSHGBLN.js} +86 -23
- package/dist/chunk-WQSHGBLN.js.map +1 -0
- package/dist/container/index.d.ts +10 -4
- package/dist/container/index.js +9 -4
- package/dist/container/index.js.map +1 -1
- package/dist/docx/index.d.ts +2 -2
- package/dist/docx/index.js +5 -4
- package/dist/{export-Djev9BLU.d.ts → export-D2NkylDT.d.ts} +1 -1
- package/dist/{extract-LNOA7DBK.js → extract-OJ7ZQV6P.js} +5 -5
- package/dist/html/index.js +1 -1
- package/dist/{import-Yivc3kZM.d.ts → import-K8mfc0fz.d.ts} +1 -1
- package/dist/index.d.ts +8 -7
- package/dist/index.js +15 -13
- package/dist/infer/index.d.ts +4 -4
- package/dist/infer/index.js +5 -5
- package/dist/{layouts-7OUUVAGU.js → layouts-5VDIRPIJ.js} +4 -4
- package/dist/{layouts-CZ0bdsNL.d.ts → layouts-BHrgZ5FS.d.ts} +1 -1
- package/dist/ooxml/index.d.ts +4 -4
- package/dist/ooxml/index.js +4 -4
- package/dist/pptx/index.d.ts +5 -5
- package/dist/pptx/index.js +5 -5
- package/dist/{reader-Gof6OrJX.d.ts → reader-B9L8Ucbj.d.ts} +3 -3
- package/dist/registry/index.d.ts +20 -6
- package/dist/registry/index.js +6 -4
- package/dist/{themeReader-DPw4J5Ss.d.ts → themeReader-DJKErl_j.d.ts} +1 -1
- package/dist/xlsx/index.d.ts +4 -4
- package/dist/xlsx/index.js +4 -4
- package/dist/{zipLimits-bGYMS9cI.d.ts → zipLimits-BOKCB7qk.d.ts} +2 -0
- package/package.json +2 -2
- package/src/__tests__/convert.test.ts +143 -1
- package/src/__tests__/docxExport.test.ts +34 -0
- package/src/__tests__/docxImport.test.ts +121 -0
- package/src/__tests__/html.test.ts +4 -0
- package/src/__tests__/ooxml.test.ts +17 -0
- package/src/__tests__/ooxmlCancellation.test.ts +113 -0
- package/src/container/index.ts +17 -3
- package/src/docx/export.ts +113 -5
- package/src/docx/import.ts +324 -69
- package/src/html/htmlTemplate.ts +2 -2
- package/src/index.ts +3 -0
- package/src/infer/index.ts +35 -4
- package/src/ooxml/namespaces.ts +21 -0
- package/src/ooxml/reader.ts +55 -14
- package/src/pptx/layouts.ts +68 -14
- package/src/registry/convert.ts +115 -31
- package/src/registry/defaultFormats.ts +5 -2
- package/src/registry/index.ts +3 -1
- package/src/registry/types.ts +18 -1
- package/src/shared/boundedZipArchive.ts +49 -8
- package/src/shared/zipEntryCount.ts +59 -5
- package/src/shared/zipLimits.ts +10 -0
- package/dist/chunk-2CSZJEAL.js.map +0 -1
- package/dist/chunk-2EFDWKC6.js.map +0 -1
- package/dist/chunk-2PRVLAU3.js.map +0 -1
- package/dist/chunk-4HJ6AK2Q.js.map +0 -1
- package/dist/chunk-H7T5DXUU.js.map +0 -1
- package/dist/chunk-LXYLOOST.js.map +0 -1
- package/dist/chunk-ZZ7D4DN6.js.map +0 -1
- /package/dist/{chunk-CX3LH47J.js.map → chunk-74GO3FVS.js.map} +0 -0
- /package/dist/{chunk-XTLQXR4U.js.map → chunk-KURGXM4I.js.map} +0 -0
- /package/dist/{chunk-CVNVD7VH.js.map → chunk-RLU7UFYU.js.map} +0 -0
- /package/dist/{chunk-X4USWOQ2.js.map → chunk-SC67HYQJ.js.map} +0 -0
- /package/dist/{chunk-HBSCRS5P.js.map → chunk-UGYF5AZE.js.map} +0 -0
- /package/dist/{extract-LNOA7DBK.js.map → extract-OJ7ZQV6P.js.map} +0 -0
- /package/dist/{layouts-7OUUVAGU.js.map → layouts-5VDIRPIJ.js.map} +0 -0
package/dist/container/index.js
CHANGED
|
@@ -2,12 +2,12 @@ import {
|
|
|
2
2
|
ZipSafetyError,
|
|
3
3
|
assertSafeZipPath,
|
|
4
4
|
openBoundedZipArchive
|
|
5
|
-
} from "../chunk-
|
|
5
|
+
} from "../chunk-FE6OJV6O.js";
|
|
6
6
|
|
|
7
7
|
// src/container/index.ts
|
|
8
8
|
import JSZip from "jszip";
|
|
9
9
|
import { MemoryContentContainer } from "@bendyline/squisq/storage";
|
|
10
|
-
async function containerToZip(container) {
|
|
10
|
+
async function containerToZip(container, options = {}) {
|
|
11
11
|
const zip = new JSZip();
|
|
12
12
|
const entries = await container.listFiles();
|
|
13
13
|
for (const entry of entries) {
|
|
@@ -17,10 +17,15 @@ async function containerToZip(container) {
|
|
|
17
17
|
zip.file(entry.path, new Uint8Array(data));
|
|
18
18
|
}
|
|
19
19
|
}
|
|
20
|
+
const compression = options.compression ?? "DEFLATE";
|
|
21
|
+
const compressionLevel = options.compressionLevel ?? 6;
|
|
22
|
+
if (!Number.isSafeInteger(compressionLevel) || compressionLevel < 1 || compressionLevel > 9) {
|
|
23
|
+
throw new Error("ZIP compression level must be an integer between 1 and 9");
|
|
24
|
+
}
|
|
20
25
|
return zip.generateAsync({
|
|
21
26
|
type: "blob",
|
|
22
|
-
compression
|
|
23
|
-
compressionOptions: { level:
|
|
27
|
+
compression,
|
|
28
|
+
...compression === "DEFLATE" ? { compressionOptions: { level: compressionLevel } } : {}
|
|
24
29
|
});
|
|
25
30
|
}
|
|
26
31
|
async function zipToContainer(zipData, options = {}) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../src/container/index.ts"],"sourcesContent":["/**\n * Container ZIP serialization — convert between ContentContainer and ZIP archives.\n *\n * Uses JSZip (already a formats dependency) to serialize a ContentContainer to\n * a ZIP blob and to deserialize a ZIP blob into a MemoryContentContainer.\n *\n * ZIP structure mirrors the container's flat path hierarchy directly:\n * index.md\n * images/hero.jpg\n * audio/narration.mp3\n * timing.json\n */\n\nimport JSZip from 'jszip';\nimport type { ContentContainer } from '@bendyline/squisq/storage';\nimport { MemoryContentContainer } from '@bendyline/squisq/storage';\nimport {\n assertSafeZipPath,\n openBoundedZipArchive,\n ZipSafetyError,\n type ZipSafetyLimits,\n type ZipSafetyErrorCode,\n type ZipSafetyErrorOptions,\n} from '../shared/zipSafety.js';\n\nexport type ZipToContainerOptions = ZipSafetyLimits;\nexport { ZipSafetyError };\nexport type { ZipSafetyLimits, ZipSafetyErrorCode, ZipSafetyErrorOptions };\n\n/**\n * Serialize a ContentContainer to a ZIP blob.\n *\n * All files in the container are written to the ZIP archive preserving\n * their path structure. The resulting blob can be saved as a .zip file.\n *\n * @param container — The container to serialize\n * @returns A Blob containing the ZIP archive\n */\nexport async function containerToZip(container: ContentContainer): Promise<Blob> {\n const zip = new JSZip();\n const entries = await container.listFiles();\n\n for (const entry of entries) {\n assertSafeZipPath(entry.path);\n const data = await container.readFile(entry.path);\n if (data) {\n zip.file(entry.path, new Uint8Array(data));\n }\n }\n\n return zip.generateAsync({\n type: 'blob',\n compression
|
|
1
|
+
{"version":3,"sources":["../../src/container/index.ts"],"sourcesContent":["/**\n * Container ZIP serialization — convert between ContentContainer and ZIP archives.\n *\n * Uses JSZip (already a formats dependency) to serialize a ContentContainer to\n * a ZIP blob and to deserialize a ZIP blob into a MemoryContentContainer.\n *\n * ZIP structure mirrors the container's flat path hierarchy directly:\n * index.md\n * images/hero.jpg\n * audio/narration.mp3\n * timing.json\n */\n\nimport JSZip from 'jszip';\nimport type { ContentContainer } from '@bendyline/squisq/storage';\nimport { MemoryContentContainer } from '@bendyline/squisq/storage';\nimport {\n assertSafeZipPath,\n openBoundedZipArchive,\n ZipSafetyError,\n type ZipSafetyLimits,\n type ZipSafetyErrorCode,\n type ZipSafetyErrorOptions,\n} from '../shared/zipSafety.js';\n\nexport type ZipToContainerOptions = ZipSafetyLimits;\nexport interface ContainerToZipOptions {\n /** STORE avoids producing archives that violate strict import compression-ratio policies. */\n compression?: 'STORE' | 'DEFLATE';\n /** JSZip DEFLATE level; ignored for STORE. */\n compressionLevel?: number;\n}\nexport { ZipSafetyError };\nexport type { ZipSafetyLimits, ZipSafetyErrorCode, ZipSafetyErrorOptions };\n\n/**\n * Serialize a ContentContainer to a ZIP blob.\n *\n * All files in the container are written to the ZIP archive preserving\n * their path structure. The resulting blob can be saved as a .zip file.\n *\n * @param container — The container to serialize\n * @returns A Blob containing the ZIP archive\n */\nexport async function containerToZip(\n container: ContentContainer,\n options: ContainerToZipOptions = {},\n): Promise<Blob> {\n const zip = new JSZip();\n const entries = await container.listFiles();\n\n for (const entry of entries) {\n assertSafeZipPath(entry.path);\n const data = await container.readFile(entry.path);\n if (data) {\n zip.file(entry.path, new Uint8Array(data));\n }\n }\n\n const compression = options.compression ?? 'DEFLATE';\n const compressionLevel = options.compressionLevel ?? 6;\n if (!Number.isSafeInteger(compressionLevel) || compressionLevel < 1 || compressionLevel > 9) {\n throw new Error('ZIP compression level must be an integer between 1 and 9');\n }\n return zip.generateAsync({\n type: 'blob',\n compression,\n ...(compression === 'DEFLATE' ? { compressionOptions: { level: compressionLevel } } : {}),\n });\n}\n\n/**\n * Deserialize a ZIP archive into a MemoryContentContainer.\n *\n * Reads all files from the ZIP and writes them into a new MemoryContentContainer.\n * Directory entries are skipped. The resulting container can be used immediately\n * for rendering, editing, or saving to persistent storage.\n *\n * @param zipData — The ZIP archive as ArrayBuffer, Uint8Array, or Blob\n * @returns A MemoryContentContainer populated with the ZIP's contents\n */\nexport async function zipToContainer(\n zipData: ArrayBuffer | Uint8Array | Blob,\n options: ZipToContainerOptions = {},\n): Promise<MemoryContentContainer> {\n const archive = await openBoundedZipArchive(zipData, options);\n const container = new MemoryContentContainer();\n for (const { path } of archive.entries) {\n const data = await archive.read(path);\n if (data) await container.writeFile(path, data);\n archive.release(path);\n }\n return container;\n}\n"],"mappings":";;;;;;;AAaA,OAAO,WAAW;AAElB,SAAS,8BAA8B;AA6BvC,eAAsB,eACpB,WACA,UAAiC,CAAC,GACnB;AACf,QAAM,MAAM,IAAI,MAAM;AACtB,QAAM,UAAU,MAAM,UAAU,UAAU;AAE1C,aAAW,SAAS,SAAS;AAC3B,sBAAkB,MAAM,IAAI;AAC5B,UAAM,OAAO,MAAM,UAAU,SAAS,MAAM,IAAI;AAChD,QAAI,MAAM;AACR,UAAI,KAAK,MAAM,MAAM,IAAI,WAAW,IAAI,CAAC;AAAA,IAC3C;AAAA,EACF;AAEA,QAAM,cAAc,QAAQ,eAAe;AAC3C,QAAM,mBAAmB,QAAQ,oBAAoB;AACrD,MAAI,CAAC,OAAO,cAAc,gBAAgB,KAAK,mBAAmB,KAAK,mBAAmB,GAAG;AAC3F,UAAM,IAAI,MAAM,0DAA0D;AAAA,EAC5E;AACA,SAAO,IAAI,cAAc;AAAA,IACvB,MAAM;AAAA,IACN;AAAA,IACA,GAAI,gBAAgB,YAAY,EAAE,oBAAoB,EAAE,OAAO,iBAAiB,EAAE,IAAI,CAAC;AAAA,EACzF,CAAC;AACH;AAYA,eAAsB,eACpB,SACA,UAAiC,CAAC,GACD;AACjC,QAAM,UAAU,MAAM,sBAAsB,SAAS,OAAO;AAC5D,QAAM,YAAY,IAAI,uBAAuB;AAC7C,aAAW,EAAE,KAAK,KAAK,QAAQ,SAAS;AACtC,UAAM,OAAO,MAAM,QAAQ,KAAK,IAAI;AACpC,QAAI,KAAM,OAAM,UAAU,UAAU,MAAM,IAAI;AAC9C,YAAQ,QAAQ,IAAI;AAAA,EACtB;AACA,SAAO;AACT;","names":[]}
|
package/dist/docx/index.d.ts
CHANGED
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
import { ThemeRegistry, Doc } from '@bendyline/squisq/schemas';
|
|
2
2
|
import { MarkdownDocument } from '@bendyline/squisq/markdown';
|
|
3
|
-
import { O as OoxmlOpenOptions } from '../reader-
|
|
3
|
+
import { O as OoxmlOpenOptions } from '../reader-B9L8Ucbj.js';
|
|
4
4
|
import { ContentContainer } from '@bendyline/squisq/storage';
|
|
5
|
-
import '../zipLimits-
|
|
5
|
+
import '../zipLimits-BOKCB7qk.js';
|
|
6
6
|
|
|
7
7
|
/**
|
|
8
8
|
* DOCX Export
|
package/dist/docx/index.js
CHANGED
|
@@ -4,13 +4,14 @@ import {
|
|
|
4
4
|
docxToDoc,
|
|
5
5
|
docxToMarkdownDoc,
|
|
6
6
|
markdownDocToDocx
|
|
7
|
-
} from "../chunk-
|
|
7
|
+
} from "../chunk-NNHKUXKA.js";
|
|
8
8
|
import "../chunk-6M7Z25LA.js";
|
|
9
9
|
import "../chunk-PN52A5AA.js";
|
|
10
|
-
import "../chunk-
|
|
10
|
+
import "../chunk-YRT7GQ5Y.js";
|
|
11
|
+
import "../chunk-KURGXM4I.js";
|
|
11
12
|
import "../chunk-U4MRIFKL.js";
|
|
12
|
-
import "../chunk-
|
|
13
|
-
import "../chunk-
|
|
13
|
+
import "../chunk-7ARKUCQT.js";
|
|
14
|
+
import "../chunk-FE6OJV6O.js";
|
|
14
15
|
import "../chunk-SSUPBUF5.js";
|
|
15
16
|
import "../chunk-O3GVVND4.js";
|
|
16
17
|
export {
|
|
@@ -2,14 +2,14 @@ import {
|
|
|
2
2
|
extractDocxTheme,
|
|
3
3
|
extractPptxTheme,
|
|
4
4
|
extractXlsxTheme
|
|
5
|
-
} from "./chunk-
|
|
6
|
-
import "./chunk-
|
|
5
|
+
} from "./chunk-74GO3FVS.js";
|
|
6
|
+
import "./chunk-SC67HYQJ.js";
|
|
7
7
|
import "./chunk-YRT7GQ5Y.js";
|
|
8
|
-
import "./chunk-
|
|
9
|
-
import "./chunk-
|
|
8
|
+
import "./chunk-7ARKUCQT.js";
|
|
9
|
+
import "./chunk-FE6OJV6O.js";
|
|
10
10
|
export {
|
|
11
11
|
extractDocxTheme,
|
|
12
12
|
extractPptxTheme,
|
|
13
13
|
extractXlsxTheme
|
|
14
14
|
};
|
|
15
|
-
//# sourceMappingURL=extract-
|
|
15
|
+
//# sourceMappingURL=extract-OJ7ZQV6P.js.map
|
package/dist/html/index.js
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { ThemeRegistry, Doc } from '@bendyline/squisq/schemas';
|
|
2
2
|
import { MarkdownDocument } from '@bendyline/squisq/markdown';
|
|
3
|
-
import { O as OoxmlOpenOptions } from './reader-
|
|
3
|
+
import { O as OoxmlOpenOptions } from './reader-B9L8Ucbj.js';
|
|
4
4
|
import { ContentContainer } from '@bendyline/squisq/storage';
|
|
5
5
|
|
|
6
6
|
/**
|
package/dist/index.d.ts
CHANGED
|
@@ -6,15 +6,16 @@ export { PdfExportOptions, PdfImportOptions, configurePdfWorker, docToPdf, markd
|
|
|
6
6
|
export { HtmlZipExportOptions, docToHtml, docToHtmlZip } from './html/index.js';
|
|
7
7
|
export { EpubExportOptions, docToEpub, markdownDocToEpub } from './epub/index.js';
|
|
8
8
|
export { ExtractedFileTheme, InferSourceFormat, InferThemeOptions, InferredFileTheme, compileExtractedTheme, inferThemeFromFile } from './infer/index.js';
|
|
9
|
-
export { BUILTIN_FORMAT_IDS, BuiltinFormatOptions, ConversionError, ConversionErrorCode, ConversionErrorOptions, ConversionResult, ConvertOptions, ConvertSource, DbkFormatOptions, FormatDefinition, FormatId, FormatRegistry, MarkdownFormatOptions, NormalizedInput, convert, createRegistry, defaultFormats, defaultRegistry } from './registry/index.js';
|
|
10
|
-
export { Z as ZipSafetyError, a as ZipSafetyErrorCode, b as ZipSafetyErrorOptions, c as ZipSafetyLimits } from './zipLimits-
|
|
9
|
+
export { BUILTIN_FORMAT_IDS, BuiltinFormatOptions, ConversionError, ConversionErrorCode, ConversionErrorOptions, ConversionResult, ConvertOptions, ConvertSource, DbkFormatOptions, FormatDefinition, FormatId, FormatRegistry, MarkdownFormatOptions, NormalizedInput, PreparedConversion, PreparedExportOptions, convert, createRegistry, defaultFormats, defaultRegistry, prepareConversion } from './registry/index.js';
|
|
10
|
+
export { Z as ZipSafetyError, a as ZipSafetyErrorCode, b as ZipSafetyErrorOptions, c as ZipSafetyLimits } from './zipLimits-BOKCB7qk.js';
|
|
11
11
|
export { H as HtmlExportOptions, a as HtmlImportOptions, c as collectImagePaths, h as htmlToMarkdown, b as htmlToMarkdownDoc, d as htmlToMarkdownDocSync } from './import-DTkDxHmZ.js';
|
|
12
|
-
export { P as PptxExportOptions, a as PptxImportOptions, d as docToPptx, m as markdownDocToPptx, p as pptxToMarkdownDoc } from './import-
|
|
13
|
-
export { X as XlsxExportOptions, a as XlsxImportOptions, d as docToXlsx, m as markdownDocToXlsx, x as xlsxToMarkdownDoc } from './export-
|
|
12
|
+
export { P as PptxExportOptions, a as PptxImportOptions, d as docToPptx, m as markdownDocToPptx, p as pptxToMarkdownDoc } from './import-K8mfc0fz.js';
|
|
13
|
+
export { X as XlsxExportOptions, a as XlsxImportOptions, d as docToXlsx, m as markdownDocToXlsx, x as xlsxToMarkdownDoc } from './export-D2NkylDT.js';
|
|
14
14
|
import '@bendyline/squisq/schemas';
|
|
15
15
|
import '@bendyline/squisq/markdown';
|
|
16
|
-
import './reader-
|
|
16
|
+
import './reader-B9L8Ucbj.js';
|
|
17
17
|
import '@bendyline/squisq/storage';
|
|
18
|
-
import './layouts-
|
|
19
|
-
import './themeReader-
|
|
18
|
+
import './layouts-BHrgZ5FS.js';
|
|
19
|
+
import './themeReader-DJKErl_j.js';
|
|
20
20
|
import '@bendyline/squisq/transform';
|
|
21
|
+
import './container/index.js';
|
package/dist/index.js
CHANGED
|
@@ -7,15 +7,16 @@ import {
|
|
|
7
7
|
convert,
|
|
8
8
|
createRegistry,
|
|
9
9
|
defaultFormats,
|
|
10
|
-
defaultRegistry
|
|
11
|
-
|
|
10
|
+
defaultRegistry,
|
|
11
|
+
prepareConversion
|
|
12
|
+
} from "./chunk-WQSHGBLN.js";
|
|
12
13
|
import {
|
|
13
14
|
inferThemeFromFile
|
|
14
|
-
} from "./chunk-
|
|
15
|
+
} from "./chunk-EW54IRRS.js";
|
|
15
16
|
import {
|
|
16
17
|
ConversionError
|
|
17
18
|
} from "./chunk-ODL3SSPT.js";
|
|
18
|
-
import "./chunk-
|
|
19
|
+
import "./chunk-74GO3FVS.js";
|
|
19
20
|
import {
|
|
20
21
|
compileExtractedTheme
|
|
21
22
|
} from "./chunk-NKAJPJ4G.js";
|
|
@@ -24,21 +25,21 @@ import {
|
|
|
24
25
|
docxToDoc,
|
|
25
26
|
docxToMarkdownDoc,
|
|
26
27
|
markdownDocToDocx
|
|
27
|
-
} from "./chunk-
|
|
28
|
+
} from "./chunk-NNHKUXKA.js";
|
|
28
29
|
import {
|
|
29
30
|
docToPptx,
|
|
30
31
|
markdownDocToPptx,
|
|
31
32
|
pptxToDoc,
|
|
32
33
|
pptxToMarkdownDoc
|
|
33
|
-
} from "./chunk-
|
|
34
|
-
import "./chunk-
|
|
34
|
+
} from "./chunk-RLU7UFYU.js";
|
|
35
|
+
import "./chunk-QFLDYKCR.js";
|
|
35
36
|
import "./chunk-6M7Z25LA.js";
|
|
36
37
|
import {
|
|
37
38
|
docToXlsx,
|
|
38
39
|
markdownDocToXlsx,
|
|
39
40
|
xlsxToDoc,
|
|
40
41
|
xlsxToMarkdownDoc
|
|
41
|
-
} from "./chunk-
|
|
42
|
+
} from "./chunk-UGYF5AZE.js";
|
|
42
43
|
import "./chunk-PN52A5AA.js";
|
|
43
44
|
import {
|
|
44
45
|
csvToDoc,
|
|
@@ -46,14 +47,14 @@ import {
|
|
|
46
47
|
markdownDocToCsv,
|
|
47
48
|
parseCsv
|
|
48
49
|
} from "./chunk-RFAPOKHJ.js";
|
|
49
|
-
import "./chunk-
|
|
50
|
+
import "./chunk-SC67HYQJ.js";
|
|
50
51
|
import "./chunk-YRT7GQ5Y.js";
|
|
51
|
-
import "./chunk-
|
|
52
|
+
import "./chunk-KURGXM4I.js";
|
|
52
53
|
import "./chunk-U4MRIFKL.js";
|
|
53
|
-
import "./chunk-
|
|
54
|
+
import "./chunk-7ARKUCQT.js";
|
|
54
55
|
import {
|
|
55
56
|
ZipSafetyError
|
|
56
|
-
} from "./chunk-
|
|
57
|
+
} from "./chunk-FE6OJV6O.js";
|
|
57
58
|
import {
|
|
58
59
|
configurePdfWorker,
|
|
59
60
|
docToPdf,
|
|
@@ -69,7 +70,7 @@ import {
|
|
|
69
70
|
htmlToMarkdown,
|
|
70
71
|
htmlToMarkdownDoc,
|
|
71
72
|
htmlToMarkdownDocSync
|
|
72
|
-
} from "./chunk-
|
|
73
|
+
} from "./chunk-DTDF6QDP.js";
|
|
73
74
|
import "./chunk-MLX2BOJC.js";
|
|
74
75
|
import "./chunk-O3GVVND4.js";
|
|
75
76
|
export {
|
|
@@ -109,6 +110,7 @@ export {
|
|
|
109
110
|
pdfToMarkdownDoc,
|
|
110
111
|
pptxToDoc,
|
|
111
112
|
pptxToMarkdownDoc,
|
|
113
|
+
prepareConversion,
|
|
112
114
|
xlsxToDoc,
|
|
113
115
|
xlsxToMarkdownDoc
|
|
114
116
|
};
|
package/dist/infer/index.d.ts
CHANGED
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
import { Theme, DeepPartial, CustomTemplateDefinition } from '@bendyline/squisq/schemas';
|
|
2
|
-
import { a as OoxmlPackage, O as OoxmlOpenOptions } from '../reader-
|
|
3
|
-
import { O as OoxmlColorScheme, a as OoxmlFontScheme } from '../themeReader-
|
|
4
|
-
import { P as PptxColorHints } from '../layouts-
|
|
5
|
-
import '../zipLimits-
|
|
2
|
+
import { a as OoxmlPackage, O as OoxmlOpenOptions } from '../reader-B9L8Ucbj.js';
|
|
3
|
+
import { O as OoxmlColorScheme, a as OoxmlFontScheme } from '../themeReader-DJKErl_j.js';
|
|
4
|
+
import { P as PptxColorHints } from '../layouts-BHrgZ5FS.js';
|
|
5
|
+
import '../zipLimits-BOKCB7qk.js';
|
|
6
6
|
|
|
7
7
|
/**
|
|
8
8
|
* Shared types for file-import theme inference.
|
package/dist/infer/index.js
CHANGED
|
@@ -1,21 +1,21 @@
|
|
|
1
1
|
import {
|
|
2
2
|
inferThemeFromFile
|
|
3
|
-
} from "../chunk-
|
|
3
|
+
} from "../chunk-EW54IRRS.js";
|
|
4
4
|
import "../chunk-ODL3SSPT.js";
|
|
5
5
|
import {
|
|
6
6
|
extractDocxTheme,
|
|
7
7
|
extractPptxTheme,
|
|
8
8
|
extractXlsxTheme
|
|
9
|
-
} from "../chunk-
|
|
9
|
+
} from "../chunk-74GO3FVS.js";
|
|
10
10
|
import {
|
|
11
11
|
colorHintsFromExtraction,
|
|
12
12
|
compileExtractedTheme,
|
|
13
13
|
extractedThemeToPartial
|
|
14
14
|
} from "../chunk-NKAJPJ4G.js";
|
|
15
|
-
import "../chunk-
|
|
15
|
+
import "../chunk-SC67HYQJ.js";
|
|
16
16
|
import "../chunk-YRT7GQ5Y.js";
|
|
17
|
-
import "../chunk-
|
|
18
|
-
import "../chunk-
|
|
17
|
+
import "../chunk-7ARKUCQT.js";
|
|
18
|
+
import "../chunk-FE6OJV6O.js";
|
|
19
19
|
export {
|
|
20
20
|
colorHintsFromExtraction,
|
|
21
21
|
compileExtractedTheme,
|
|
@@ -1,12 +1,12 @@
|
|
|
1
1
|
import {
|
|
2
2
|
analyzePptxLayouts,
|
|
3
3
|
inspectPptxLayouts
|
|
4
|
-
} from "./chunk-
|
|
4
|
+
} from "./chunk-QFLDYKCR.js";
|
|
5
5
|
import "./chunk-YRT7GQ5Y.js";
|
|
6
|
-
import "./chunk-
|
|
7
|
-
import "./chunk-
|
|
6
|
+
import "./chunk-7ARKUCQT.js";
|
|
7
|
+
import "./chunk-FE6OJV6O.js";
|
|
8
8
|
export {
|
|
9
9
|
analyzePptxLayouts,
|
|
10
10
|
inspectPptxLayouts
|
|
11
11
|
};
|
|
12
|
-
//# sourceMappingURL=layouts-
|
|
12
|
+
//# sourceMappingURL=layouts-5VDIRPIJ.js.map
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { CustomTemplateDefinition } from '@bendyline/squisq/schemas';
|
|
2
|
-
import { O as OoxmlOpenOptions, a as OoxmlPackage } from './reader-
|
|
2
|
+
import { O as OoxmlOpenOptions, a as OoxmlPackage } from './reader-B9L8Ucbj.js';
|
|
3
3
|
|
|
4
4
|
/**
|
|
5
5
|
* PPTX slide-layout inference — reads the layouts/masters a deck actually
|
package/dist/ooxml/index.d.ts
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
|
-
import { R as Relationship, C as CoreProperties } from '../reader-
|
|
2
|
-
export { b as ContentTypeMap, O as OoxmlOpenOptions, a as OoxmlPackage, P as PackagePart, c as PendingRelationship, g as getCoreProperties, d as getPartBinary, e as getPartRelationships, f as getPartXml, o as openPackage } from '../reader-
|
|
3
|
-
export { Z as ZipSafetyError, a as ZipSafetyErrorCode, b as ZipSafetyErrorOptions, c as ZipSafetyLimits } from '../zipLimits-
|
|
4
|
-
export { O as OoxmlColorScheme, a as OoxmlFontScheme, b as OoxmlTheme, p as parseThemeXml, r as readThemePart } from '../themeReader-
|
|
1
|
+
import { R as Relationship, C as CoreProperties } from '../reader-B9L8Ucbj.js';
|
|
2
|
+
export { b as ContentTypeMap, O as OoxmlOpenOptions, a as OoxmlPackage, P as PackagePart, c as PendingRelationship, g as getCoreProperties, d as getPartBinary, e as getPartRelationships, f as getPartXml, o as openPackage } from '../reader-B9L8Ucbj.js';
|
|
3
|
+
export { Z as ZipSafetyError, a as ZipSafetyErrorCode, b as ZipSafetyErrorOptions, c as ZipSafetyLimits } from '../zipLimits-BOKCB7qk.js';
|
|
4
|
+
export { O as OoxmlColorScheme, a as OoxmlFontScheme, b as OoxmlTheme, p as parseThemeXml, r as readThemePart } from '../themeReader-DJKErl_j.js';
|
|
5
5
|
|
|
6
6
|
/**
|
|
7
7
|
* Shared DOM-read helpers for OOXML importers.
|
package/dist/ooxml/index.js
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import {
|
|
2
2
|
parseThemeXml,
|
|
3
3
|
readThemePart
|
|
4
|
-
} from "../chunk-
|
|
4
|
+
} from "../chunk-SC67HYQJ.js";
|
|
5
5
|
import {
|
|
6
6
|
attrNS,
|
|
7
7
|
baseDirOf,
|
|
@@ -10,7 +10,7 @@ import {
|
|
|
10
10
|
} from "../chunk-YRT7GQ5Y.js";
|
|
11
11
|
import {
|
|
12
12
|
createPackage
|
|
13
|
-
} from "../chunk-
|
|
13
|
+
} from "../chunk-KURGXM4I.js";
|
|
14
14
|
import {
|
|
15
15
|
attrString,
|
|
16
16
|
escapeXml,
|
|
@@ -70,10 +70,10 @@ import {
|
|
|
70
70
|
getPartRelationships,
|
|
71
71
|
getPartXml,
|
|
72
72
|
openPackage
|
|
73
|
-
} from "../chunk-
|
|
73
|
+
} from "../chunk-7ARKUCQT.js";
|
|
74
74
|
import {
|
|
75
75
|
ZipSafetyError
|
|
76
|
-
} from "../chunk-
|
|
76
|
+
} from "../chunk-FE6OJV6O.js";
|
|
77
77
|
export {
|
|
78
78
|
CONTENT_TYPE_CORE_PROPERTIES,
|
|
79
79
|
CONTENT_TYPE_DOCX_DOCUMENT,
|
package/dist/pptx/index.d.ts
CHANGED
|
@@ -1,10 +1,10 @@
|
|
|
1
|
-
import { a as PptxImportOptions } from '../import-
|
|
2
|
-
export { P as PptxExportOptions, d as docToPptx, m as markdownDocToPptx, b as pptxToContainer, p as pptxToMarkdownDoc } from '../import-
|
|
1
|
+
import { a as PptxImportOptions } from '../import-K8mfc0fz.js';
|
|
2
|
+
export { P as PptxExportOptions, d as docToPptx, m as markdownDocToPptx, b as pptxToContainer, p as pptxToMarkdownDoc } from '../import-K8mfc0fz.js';
|
|
3
3
|
import { Doc } from '@bendyline/squisq/schemas';
|
|
4
|
-
export { A as AnalyzePptxLayoutsOptions, a as AnalyzedLayout, E as ExtractedPlaceholder, b as ExtractedSlideLayout, I as InspectPptxLayoutsOptions, L as LayoutVerdict, P as PptxColorHints, c as PptxLayoutInference, d as PptxLayoutSummary, e as analyzePptxLayouts, i as inspectPptxLayouts } from '../layouts-
|
|
4
|
+
export { A as AnalyzePptxLayoutsOptions, a as AnalyzedLayout, E as ExtractedPlaceholder, b as ExtractedSlideLayout, I as InspectPptxLayoutsOptions, L as LayoutVerdict, P as PptxColorHints, c as PptxLayoutInference, d as PptxLayoutSummary, e as analyzePptxLayouts, i as inspectPptxLayouts } from '../layouts-BHrgZ5FS.js';
|
|
5
5
|
import '@bendyline/squisq/markdown';
|
|
6
|
-
import '../reader-
|
|
7
|
-
import '../zipLimits-
|
|
6
|
+
import '../reader-B9L8Ucbj.js';
|
|
7
|
+
import '../zipLimits-BOKCB7qk.js';
|
|
8
8
|
import '@bendyline/squisq/storage';
|
|
9
9
|
|
|
10
10
|
/**
|
package/dist/pptx/index.js
CHANGED
|
@@ -4,18 +4,18 @@ import {
|
|
|
4
4
|
pptxToContainer,
|
|
5
5
|
pptxToDoc,
|
|
6
6
|
pptxToMarkdownDoc
|
|
7
|
-
} from "../chunk-
|
|
7
|
+
} from "../chunk-RLU7UFYU.js";
|
|
8
8
|
import {
|
|
9
9
|
analyzePptxLayouts,
|
|
10
10
|
inspectPptxLayouts
|
|
11
|
-
} from "../chunk-
|
|
11
|
+
} from "../chunk-QFLDYKCR.js";
|
|
12
12
|
import "../chunk-6M7Z25LA.js";
|
|
13
13
|
import "../chunk-PN52A5AA.js";
|
|
14
14
|
import "../chunk-YRT7GQ5Y.js";
|
|
15
|
-
import "../chunk-
|
|
15
|
+
import "../chunk-KURGXM4I.js";
|
|
16
16
|
import "../chunk-U4MRIFKL.js";
|
|
17
|
-
import "../chunk-
|
|
18
|
-
import "../chunk-
|
|
17
|
+
import "../chunk-7ARKUCQT.js";
|
|
18
|
+
import "../chunk-FE6OJV6O.js";
|
|
19
19
|
import "../chunk-SSUPBUF5.js";
|
|
20
20
|
import "../chunk-MLX2BOJC.js";
|
|
21
21
|
import "../chunk-O3GVVND4.js";
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { c as ZipSafetyLimits } from './zipLimits-
|
|
1
|
+
import { c as ZipSafetyLimits } from './zipLimits-BOKCB7qk.js';
|
|
2
2
|
|
|
3
3
|
/**
|
|
4
4
|
* OOXML Types
|
|
@@ -89,8 +89,8 @@ interface PendingRelationship {
|
|
|
89
89
|
* structural metadata: [Content_Types].xml, relationships, and
|
|
90
90
|
* core properties.
|
|
91
91
|
*
|
|
92
|
-
* Uses bounded JSZip member streams and a platform DOMParser (with
|
|
93
|
-
*
|
|
92
|
+
* Uses bounded JSZip member streams and a platform DOMParser (with the
|
|
93
|
+
* package-owned xmldom parser in Node/SSR) to parse XML.
|
|
94
94
|
*/
|
|
95
95
|
|
|
96
96
|
type OoxmlOpenOptions = ZipSafetyLimits;
|
package/dist/registry/index.d.ts
CHANGED
|
@@ -3,14 +3,15 @@ import { TransformStyleInput, TransformStyleRegistry } from '@bendyline/squisq/t
|
|
|
3
3
|
import { ParseOptions, StringifyOptions, MarkdownDocument } from '@bendyline/squisq/markdown';
|
|
4
4
|
import { ContentContainer } from '@bendyline/squisq/storage';
|
|
5
5
|
import { DocxImportOptions, DocxExportOptions } from '../docx/index.js';
|
|
6
|
-
import { a as PptxImportOptions, P as PptxExportOptions } from '../import-
|
|
7
|
-
import { a as XlsxImportOptions, X as XlsxExportOptions } from '../export-
|
|
6
|
+
import { a as PptxImportOptions, P as PptxExportOptions } from '../import-K8mfc0fz.js';
|
|
7
|
+
import { a as XlsxImportOptions, X as XlsxExportOptions } from '../export-D2NkylDT.js';
|
|
8
8
|
import { CsvImportOptions, CsvExportOptions } from '../csv/index.js';
|
|
9
9
|
import { PdfImportOptions, PdfExportOptions } from '../pdf/index.js';
|
|
10
10
|
import { a as HtmlImportOptions, H as HtmlExportOptions } from '../import-DTkDxHmZ.js';
|
|
11
11
|
import { EpubExportOptions } from '../epub/index.js';
|
|
12
|
-
import {
|
|
13
|
-
import '../
|
|
12
|
+
import { ContainerToZipOptions } from '../container/index.js';
|
|
13
|
+
import { c as ZipSafetyLimits } from '../zipLimits-BOKCB7qk.js';
|
|
14
|
+
import '../reader-B9L8Ucbj.js';
|
|
14
15
|
|
|
15
16
|
/**
|
|
16
17
|
* Format registry — shared types.
|
|
@@ -42,7 +43,7 @@ interface MarkdownFormatOptions {
|
|
|
42
43
|
stringify?: StringifyOptions;
|
|
43
44
|
}
|
|
44
45
|
/** Resource limits applied when importing a DBK/ZIP container. */
|
|
45
|
-
type DbkFormatOptions = ZipSafetyLimits;
|
|
46
|
+
type DbkFormatOptions = ZipSafetyLimits & ContainerToZipOptions;
|
|
46
47
|
/**
|
|
47
48
|
* Strongly typed option bags for built-in formats. Import and export options
|
|
48
49
|
* share a bag because a single conversion may use the format on either side.
|
|
@@ -74,6 +75,8 @@ interface NormalizedInput {
|
|
|
74
75
|
}
|
|
75
76
|
/** Options threaded through `convert()` and into every format method. */
|
|
76
77
|
interface ConvertOptions {
|
|
78
|
+
/** Cancel normalization, transformation, or export at the next bounded work boundary. */
|
|
79
|
+
signal?: AbortSignal;
|
|
77
80
|
/** Registry to resolve formats against. Defaults to `defaultRegistry()`. */
|
|
78
81
|
registry?: FormatRegistry;
|
|
79
82
|
/** Explicit source format id (skips extension/byte sniffing). */
|
|
@@ -95,6 +98,15 @@ interface ConvertOptions {
|
|
|
95
98
|
/** Typed per-format options for built-ins; custom format ids remain extensible. */
|
|
96
99
|
formatOptions?: Partial<BuiltinFormatOptions> & Record<FormatId, unknown>;
|
|
97
100
|
}
|
|
101
|
+
/** Target-only options accepted after a source has already been normalized and transformed. */
|
|
102
|
+
type PreparedExportOptions = Pick<ConvertOptions, 'signal' | 'title' | 'resolvePlayerScript' | 'formatOptions'>;
|
|
103
|
+
/**
|
|
104
|
+
* An opaque normalized conversion snapshot. The source and transform pipeline
|
|
105
|
+
* has already completed; each call exports that same snapshot to one target.
|
|
106
|
+
*/
|
|
107
|
+
interface PreparedConversion {
|
|
108
|
+
convert(to: FormatId, options?: PreparedExportOptions): Promise<ConversionResult>;
|
|
109
|
+
}
|
|
98
110
|
/** Describes how a single format imports to / exports from the squisq model. */
|
|
99
111
|
interface FormatDefinition {
|
|
100
112
|
id: FormatId;
|
|
@@ -192,6 +204,8 @@ declare function defaultFormats(): FormatDefinition[];
|
|
|
192
204
|
* an optional transform, then hands off to the target format's exporter.
|
|
193
205
|
*/
|
|
194
206
|
|
|
207
|
+
/** Normalize and transform a source once, then safely export that snapshot many times. */
|
|
208
|
+
declare function prepareConversion(source: ConvertSource, options?: ConvertOptions): Promise<PreparedConversion>;
|
|
195
209
|
/**
|
|
196
210
|
* Convert a source document to a target format.
|
|
197
211
|
*
|
|
@@ -202,4 +216,4 @@ declare function defaultFormats(): FormatDefinition[];
|
|
|
202
216
|
*/
|
|
203
217
|
declare function convert(source: ConvertSource, to: FormatId, options?: ConvertOptions): Promise<ConversionResult>;
|
|
204
218
|
|
|
205
|
-
export { BUILTIN_FORMAT_IDS, type BuiltinFormatOptions, ConversionError, type ConversionErrorCode, type ConversionErrorOptions, type ConversionResult, type ConvertOptions, type ConvertSource, type DbkFormatOptions, type FormatDefinition, type FormatId, type FormatRegistry, type MarkdownFormatOptions, type NormalizedInput, convert, createRegistry, defaultFormats, defaultRegistry };
|
|
219
|
+
export { BUILTIN_FORMAT_IDS, type BuiltinFormatOptions, ConversionError, type ConversionErrorCode, type ConversionErrorOptions, type ConversionResult, type ConvertOptions, type ConvertSource, type DbkFormatOptions, type FormatDefinition, type FormatId, type FormatRegistry, type MarkdownFormatOptions, type NormalizedInput, type PreparedConversion, type PreparedExportOptions, convert, createRegistry, defaultFormats, defaultRegistry, prepareConversion };
|
package/dist/registry/index.js
CHANGED
|
@@ -3,18 +3,20 @@ import {
|
|
|
3
3
|
convert,
|
|
4
4
|
createRegistry,
|
|
5
5
|
defaultFormats,
|
|
6
|
-
defaultRegistry
|
|
7
|
-
|
|
6
|
+
defaultRegistry,
|
|
7
|
+
prepareConversion
|
|
8
|
+
} from "../chunk-WQSHGBLN.js";
|
|
8
9
|
import {
|
|
9
10
|
ConversionError
|
|
10
11
|
} from "../chunk-ODL3SSPT.js";
|
|
11
|
-
import "../chunk-
|
|
12
|
+
import "../chunk-FE6OJV6O.js";
|
|
12
13
|
export {
|
|
13
14
|
BUILTIN_FORMAT_IDS,
|
|
14
15
|
ConversionError,
|
|
15
16
|
convert,
|
|
16
17
|
createRegistry,
|
|
17
18
|
defaultFormats,
|
|
18
|
-
defaultRegistry
|
|
19
|
+
defaultRegistry,
|
|
20
|
+
prepareConversion
|
|
19
21
|
};
|
|
20
22
|
//# sourceMappingURL=index.js.map
|
package/dist/xlsx/index.d.ts
CHANGED
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
import { Doc } from '@bendyline/squisq/schemas';
|
|
2
|
-
import { a as XlsxImportOptions } from '../export-
|
|
3
|
-
export { X as XlsxExportOptions, d as docToXlsx, m as markdownDocToXlsx, x as xlsxToMarkdownDoc } from '../export-
|
|
2
|
+
import { a as XlsxImportOptions } from '../export-D2NkylDT.js';
|
|
3
|
+
export { X as XlsxExportOptions, d as docToXlsx, m as markdownDocToXlsx, x as xlsxToMarkdownDoc } from '../export-D2NkylDT.js';
|
|
4
4
|
import '@bendyline/squisq/markdown';
|
|
5
|
-
import '../reader-
|
|
6
|
-
import '../zipLimits-
|
|
5
|
+
import '../reader-B9L8Ucbj.js';
|
|
6
|
+
import '../zipLimits-BOKCB7qk.js';
|
|
7
7
|
|
|
8
8
|
/**
|
|
9
9
|
* @bendyline/squisq-formats XLSX Module
|
package/dist/xlsx/index.js
CHANGED
|
@@ -3,12 +3,12 @@ import {
|
|
|
3
3
|
markdownDocToXlsx,
|
|
4
4
|
xlsxToDoc,
|
|
5
5
|
xlsxToMarkdownDoc
|
|
6
|
-
} from "../chunk-
|
|
6
|
+
} from "../chunk-UGYF5AZE.js";
|
|
7
7
|
import "../chunk-PN52A5AA.js";
|
|
8
|
-
import "../chunk-
|
|
8
|
+
import "../chunk-KURGXM4I.js";
|
|
9
9
|
import "../chunk-U4MRIFKL.js";
|
|
10
|
-
import "../chunk-
|
|
11
|
-
import "../chunk-
|
|
10
|
+
import "../chunk-7ARKUCQT.js";
|
|
11
|
+
import "../chunk-FE6OJV6O.js";
|
|
12
12
|
export {
|
|
13
13
|
docToXlsx,
|
|
14
14
|
markdownDocToXlsx,
|
|
@@ -1,6 +1,8 @@
|
|
|
1
1
|
/** ZIP safety policy, structured errors, path checks, and metadata validation. */
|
|
2
2
|
|
|
3
3
|
interface ZipSafetyLimits {
|
|
4
|
+
/** Cooperatively cancel archive opening, validation, and member traversal. */
|
|
5
|
+
signal?: AbortSignal;
|
|
4
6
|
/** Maximum number of archive records, including directories. Default: 10,000. */
|
|
5
7
|
maxEntries?: number;
|
|
6
8
|
/** Maximum uncompressed bytes for one member. Defaults to maxUncompressedBytes. */
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@bendyline/squisq-formats",
|
|
3
|
-
"version": "2.
|
|
3
|
+
"version": "2.1.0",
|
|
4
4
|
"description": "Document format converters — DOCX, PDF, OOXML import/export",
|
|
5
5
|
"license": "MIT",
|
|
6
6
|
"author": "Bendyline",
|
|
@@ -100,7 +100,7 @@
|
|
|
100
100
|
},
|
|
101
101
|
"dependencies": {
|
|
102
102
|
"@xmldom/xmldom": "0.9.10",
|
|
103
|
-
"@bendyline/squisq": "2.
|
|
103
|
+
"@bendyline/squisq": "2.1.0",
|
|
104
104
|
"jszip": "3.10.1",
|
|
105
105
|
"pdf-lib": "1.17.1",
|
|
106
106
|
"pdfjs-dist": "4.10.38"
|