documonster 0.19.0 → 0.20.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/README.md +1 -1
- package/README_zh.md +1 -1
- package/dist/esm/modules/archive/compression/compress.base.js +20 -6
- package/dist/esm/modules/archive/compression/compress.browser.js +45 -32
- package/dist/esm/modules/archive/compression/compress.js +74 -18
- package/dist/esm/modules/archive/compression/deflate-fallback.js +14 -3
- package/dist/esm/modules/archive/compression/worker-pool/pool.browser.js +9 -3
- package/dist/esm/modules/archive/compression/worker-pool/worker-script.js +35 -7
- package/dist/esm/modules/archive/core/errors.js +26 -4
- package/dist/esm/modules/archive/index.base.js +1 -1
- package/dist/esm/modules/archive/unzip/zip-extract-core.js +74 -34
- package/dist/esm/modules/archive/unzip/zip-parser.js +55 -9
- package/dist/esm/modules/archive/zip-spec/zip-parser-core.js +14 -2
- package/dist/esm/modules/csv/parse/scanner/scanner.js +3 -0
- package/dist/esm/modules/csv/parse/sync.js +3 -2
- package/dist/esm/modules/csv/stream/parser.js +40 -4
- package/dist/esm/modules/csv/worker/worker-script.generated.js +1 -1
- package/dist/esm/modules/excel/core/cell.js +22 -2
- package/dist/esm/modules/excel/core/table.js +39 -2
- package/dist/esm/modules/excel/core/worksheet-core.js +39 -0
- package/dist/esm/modules/excel/core/worksheet-load.js +3 -1
- package/dist/esm/modules/excel/stream/workbook-reader.browser.js +34 -11
- package/dist/esm/modules/excel/surface/cell.js +64 -23
- package/dist/esm/modules/excel/utils/cell-format.js +3 -2
- package/dist/esm/modules/excel/xlsb/read/package.js +3 -1
- package/dist/esm/modules/excel/xlsx/read/package.js +17 -1
- package/dist/esm/modules/pdf/builder/document-builder.js +3 -1
- package/dist/esm/modules/pdf/builder/pdf-editor.js +218 -58
- package/dist/esm/modules/pdf/core/pdf-kdf.browser.js +9 -1
- package/dist/esm/modules/pdf/core/pdf-kdf.js +8 -0
- package/dist/esm/modules/pdf/core/pdf-writer.js +159 -149
- package/dist/esm/modules/pdf/core/pdfa.js +7 -3
- package/dist/esm/modules/pdf/errors.js +25 -0
- package/dist/esm/modules/pdf/index.js +1 -1
- package/dist/esm/modules/pdf/reader/pdf-decrypt.js +136 -74
- package/dist/esm/modules/pdf/reader/pdf-document.js +314 -105
- package/dist/esm/modules/pdf/reader/pdf-parser.js +29 -11
- package/dist/esm/modules/pdf/reader/pdf-reader.js +8 -1
- package/dist/esm/modules/pdf/reader/stream-filters.js +139 -77
- package/dist/esm/modules/pdf/render/pdf-exporter.js +3 -1
- package/dist/esm/modules/pdf/word-bridge.js +22 -48
- package/dist/esm/modules/word/advanced/field-engine.js +75 -56
- package/dist/esm/modules/word/builder/document-handle.js +15 -1
- package/dist/esm/modules/word/convert/docx-to-semantic.js +84 -83
- package/dist/esm/modules/word/convert/html/html-renderer.js +107 -78
- package/dist/esm/modules/word/convert/markdown/markdown-import.js +43 -10
- package/dist/esm/modules/word/convert/markdown/markdown-renderer.js +98 -130
- package/dist/esm/modules/word/convert/odt/odt.js +149 -55
- package/dist/esm/modules/word/core/text-utils.js +9 -0
- package/dist/esm/modules/word/errors.js +1 -1
- package/dist/esm/modules/word/layout/layout-constants.js +20 -23
- package/dist/esm/modules/word/layout/layout-full.js +259 -280
- package/dist/esm/modules/word/layout/layout.js +140 -197
- package/dist/esm/modules/word/query/final-view.js +49 -0
- package/dist/esm/modules/word/query/heading.js +81 -0
- package/dist/esm/modules/word/query/merge.js +39 -22
- package/dist/esm/modules/word/query/numbering-counter.js +108 -0
- package/dist/esm/modules/word/query/page-field.js +212 -0
- package/dist/esm/modules/word/query/search.js +15 -14
- package/dist/esm/modules/word/query/split.js +15 -25
- package/dist/esm/modules/word/query/style-resolve.js +196 -53
- package/dist/esm/modules/word/query/style-resolver.js +24 -0
- package/dist/esm/modules/word/reader/chart-parser.js +17 -7
- package/dist/esm/modules/word/reader/comments-parser.js +4 -4
- package/dist/esm/modules/word/reader/doc-props-parsers.js +10 -9
- package/dist/esm/modules/word/reader/docx-reader.js +46 -32
- package/dist/esm/modules/word/reader/metadata-parsers.js +5 -5
- package/dist/esm/modules/word/reader/numbering-parser.js +4 -3
- package/dist/esm/modules/word/reader/part-xml.js +26 -0
- package/dist/esm/modules/word/reader/reader-context.js +3 -3
- package/dist/esm/modules/word/reader/settings-parser.js +3 -3
- package/dist/esm/modules/word/reader/styles-parser.js +3 -3
- package/dist/esm/modules/word/reader/theme-parser.js +4 -3
- package/dist/esm/modules/word/surface/query.js +1 -1
- package/dist/esm/modules/word/writer/docx-packager.js +4 -1
- package/dist/esm/modules/word/writer/streaming-writer.js +11 -2
- package/dist/esm/modules/xml/dom.js +4 -8
- package/dist/esm/modules/xml/errors.js +1 -3
- package/dist/esm/modules/xml/sax.js +8 -7
- package/dist/esm/modules/xml/to-object.js +4 -8
- package/dist/esm/utils/crypto.browser.js +147 -0
- package/dist/esm/utils/crypto.js +14 -0
- package/dist/esm/utils/limits.js +19 -0
- package/dist/iife/documonster.archive.iife.min.js +39 -11
- package/dist/iife/documonster.csv.iife.min.js +17 -17
- package/dist/iife/documonster.draw.iife.min.js +1 -1
- package/dist/iife/documonster.excel.iife.min.js +88 -60
- package/dist/iife/documonster.formula.iife.min.js +1 -1
- package/dist/iife/documonster.markdown.iife.min.js +1 -1
- package/dist/iife/documonster.mermaid.iife.min.js +1 -1
- package/dist/iife/documonster.pdf.iife.min.js +44 -42
- package/dist/iife/documonster.stream.iife.min.js +1 -1
- package/dist/iife/documonster.word.iife.min.js +95 -67
- package/dist/iife/documonster.xml.iife.min.js +6 -6
- package/dist/types/modules/archive/compression/compress.base.d.ts +12 -3
- package/dist/types/modules/archive/compression/compress.browser.d.ts +7 -4
- package/dist/types/modules/archive/compression/compress.d.ts +9 -4
- package/dist/types/modules/archive/compression/deflate-fallback.d.ts +3 -1
- package/dist/types/modules/archive/compression/worker-pool/pool.browser.d.ts +4 -1
- package/dist/types/modules/archive/compression/worker-pool/types.d.ts +4 -0
- package/dist/types/modules/archive/core/errors.d.ts +31 -2
- package/dist/types/modules/archive/index.base.d.ts +1 -1
- package/dist/types/modules/archive/unzip/zip-extract-core.d.ts +9 -2
- package/dist/types/modules/archive/unzip/zip-parser.d.ts +33 -0
- package/dist/types/modules/archive/zip-spec/zip-parser-core.d.ts +6 -0
- package/dist/types/modules/csv/parse/scanner/types.d.ts +5 -0
- package/dist/types/modules/csv/stream/parser.d.ts +16 -0
- package/dist/types/modules/csv/worker/worker-script.generated.d.ts +1 -1
- package/dist/types/modules/excel/core/table.d.ts +15 -0
- package/dist/types/modules/excel/core/worksheet-core.d.ts +26 -0
- package/dist/types/modules/excel/stream/workbook-reader.browser.d.ts +11 -0
- package/dist/types/modules/excel/surface/cell.d.ts +8 -8
- package/dist/types/modules/excel/xlsx/types.d.ts +16 -0
- package/dist/types/modules/pdf/builder/document-builder.d.ts +7 -0
- package/dist/types/modules/pdf/builder/pdf-editor.d.ts +49 -5
- package/dist/types/modules/pdf/core/pdf-kdf.browser.d.ts +4 -0
- package/dist/types/modules/pdf/core/pdf-kdf.d.ts +4 -0
- package/dist/types/modules/pdf/core/pdf-writer.d.ts +49 -10
- package/dist/types/modules/pdf/core/pdfa.d.ts +2 -0
- package/dist/types/modules/pdf/errors.d.ts +19 -0
- package/dist/types/modules/pdf/index.d.ts +2 -2
- package/dist/types/modules/pdf/reader/pdf-document.d.ts +83 -5
- package/dist/types/modules/pdf/reader/pdf-parser.d.ts +2 -2
- package/dist/types/modules/pdf/reader/pdf-reader.d.ts +7 -0
- package/dist/types/modules/pdf/reader/stream-filters.d.ts +5 -1
- package/dist/types/modules/pdf/types.d.ts +7 -0
- package/dist/types/modules/word/convert/conversion-ir.d.ts +2 -0
- package/dist/types/modules/word/core/text-utils.d.ts +7 -1
- package/dist/types/modules/word/errors.d.ts +3 -3
- package/dist/types/modules/word/index.base.d.ts +1 -1
- package/dist/types/modules/word/layout/layout-constants.d.ts +13 -9
- package/dist/types/modules/word/query/final-view.d.ts +26 -0
- package/dist/types/modules/word/query/heading.d.ts +30 -0
- package/dist/types/modules/word/query/numbering-counter.d.ts +47 -0
- package/dist/types/modules/word/query/page-field.d.ts +79 -0
- package/dist/types/modules/word/query/search.d.ts +8 -2
- package/dist/types/modules/word/query/split.d.ts +4 -1
- package/dist/types/modules/word/query/style-resolve.d.ts +58 -11
- package/dist/types/modules/word/query/style-resolver.d.ts +29 -0
- package/dist/types/modules/word/reader/chart-parser.d.ts +2 -2
- package/dist/types/modules/word/reader/comments-parser.d.ts +1 -1
- package/dist/types/modules/word/reader/doc-props-parsers.d.ts +4 -4
- package/dist/types/modules/word/reader/metadata-parsers.d.ts +2 -2
- package/dist/types/modules/word/reader/numbering-parser.d.ts +1 -1
- package/dist/types/modules/word/reader/part-xml.d.ts +14 -0
- package/dist/types/modules/word/reader/reader-context.d.ts +1 -1
- package/dist/types/modules/word/reader/settings-parser.d.ts +1 -1
- package/dist/types/modules/word/reader/styles-parser.d.ts +1 -1
- package/dist/types/modules/word/reader/theme-parser.d.ts +1 -1
- package/dist/types/modules/word/surface/query.d.ts +2 -1
- package/dist/types/modules/word/types.d.ts +5 -1
- package/dist/types/modules/word/writer/docx-packager.d.ts +7 -0
- package/dist/types/modules/word/writer/streaming-writer.d.ts +7 -0
- package/dist/types/modules/xml/errors.d.ts +9 -0
- package/dist/types/modules/xml/index.d.ts +1 -0
- package/dist/types/modules/xml/sax.d.ts +2 -1
- package/dist/types/utils/crypto.browser.d.ts +10 -0
- package/dist/types/utils/crypto.d.ts +10 -0
- package/dist/types/utils/limits.d.ts +12 -0
- package/package.json +1 -1
|
@@ -9,6 +9,8 @@ import type { BaseErrorOptions } from "../../utils/errors.js";
|
|
|
9
9
|
export declare class XmlError extends BaseError {
|
|
10
10
|
name: string;
|
|
11
11
|
}
|
|
12
|
+
/** Resource limit that stopped a parse — see {@link XmlParseError.limit}. */
|
|
13
|
+
export type XmlParseLimit = "depth" | "entityExpansions";
|
|
12
14
|
/**
|
|
13
15
|
* Error thrown during XML parsing (SAX or DOM).
|
|
14
16
|
*/
|
|
@@ -17,10 +19,17 @@ export declare class XmlParseError extends XmlError {
|
|
|
17
19
|
readonly line?: number;
|
|
18
20
|
readonly column?: number;
|
|
19
21
|
readonly fileName?: string;
|
|
22
|
+
/**
|
|
23
|
+
* Set when parsing stopped because a configured resource limit was hit
|
|
24
|
+
* (`maxDepth` or `maxEntityExpansions`) rather than because the input is
|
|
25
|
+
* malformed, so callers can react to it without matching the message.
|
|
26
|
+
*/
|
|
27
|
+
readonly limit?: XmlParseLimit;
|
|
20
28
|
constructor(message: string, context?: {
|
|
21
29
|
line?: number;
|
|
22
30
|
column?: number;
|
|
23
31
|
fileName?: string;
|
|
32
|
+
limit?: XmlParseLimit;
|
|
24
33
|
}, options?: BaseErrorOptions);
|
|
25
34
|
}
|
|
26
35
|
/**
|
|
@@ -13,3 +13,4 @@
|
|
|
13
13
|
export type { XmlAttributes, XmlNodeType, XmlElement, XmlText, XmlCData, XmlComment, XmlProcessingInstruction, XmlNode, XmlDocument, XmlSink, SaxTag, SaxEvent, SaxEventAny, SaxHandlers, SaxOptions, InvalidCharHandling, WritableTarget, XmlParseOptions, ToPlainObjectOptions, ParseXmlToObjectOptions } from "./types.js";
|
|
14
14
|
export * as Xml from "./surface/xml.js";
|
|
15
15
|
export { XmlError, XmlParseError, XmlWriteError, isXmlError, isXmlParseError } from "./errors.js";
|
|
16
|
+
export type { XmlParseLimit } from "./errors.js";
|
|
@@ -13,6 +13,7 @@
|
|
|
13
13
|
*
|
|
14
14
|
* Based on XML 1.0 specification with fast-path optimizations for ASCII.
|
|
15
15
|
*/
|
|
16
|
+
import type { XmlParseLimit } from "./errors.js";
|
|
16
17
|
import type { SaxEvent, SaxHandlers, SaxOptions, SaxTag } from "./types.js";
|
|
17
18
|
/**
|
|
18
19
|
* Streaming SAX XML parser.
|
|
@@ -82,7 +83,7 @@ declare class SaxParser {
|
|
|
82
83
|
/** Return the currently-registered handler for an event, if any. */
|
|
83
84
|
getHandler<K extends keyof SaxHandlers>(name: K): SaxHandlers[K];
|
|
84
85
|
private makeError;
|
|
85
|
-
fail(message: string): this;
|
|
86
|
+
fail(message: string, limit?: XmlParseLimit): this;
|
|
86
87
|
write(chunk: string | null): this;
|
|
87
88
|
close(): this;
|
|
88
89
|
/**
|
|
@@ -15,6 +15,16 @@ export declare function aesCbcDecrypt(ciphertext: Uint8Array, key: Uint8Array, i
|
|
|
15
15
|
export declare function aesCbcDecryptRaw(ciphertext: Uint8Array, key: Uint8Array, iv: Uint8Array): Uint8Array;
|
|
16
16
|
export declare function aesCbcEncryptRaw(plaintext: Uint8Array, key: Uint8Array, iv: Uint8Array): Uint8Array;
|
|
17
17
|
export declare function aesEcbEncrypt(block: Uint8Array, key: Uint8Array): Uint8Array;
|
|
18
|
+
/**
|
|
19
|
+
* SHA-512 hash function (FIPS 180-4).
|
|
20
|
+
* @returns 64-byte digest
|
|
21
|
+
*/
|
|
22
|
+
export declare function sha512(input: Uint8Array): Uint8Array;
|
|
23
|
+
/**
|
|
24
|
+
* SHA-384 hash function (FIPS 180-4).
|
|
25
|
+
* @returns 48-byte digest
|
|
26
|
+
*/
|
|
27
|
+
export declare function sha384(input: Uint8Array): Uint8Array;
|
|
18
28
|
export declare function sha256(input: Uint8Array): Uint8Array;
|
|
19
29
|
export declare function md5(input: Uint8Array): Uint8Array;
|
|
20
30
|
/**
|
|
@@ -21,6 +21,16 @@
|
|
|
21
21
|
* @returns 32-byte digest
|
|
22
22
|
*/
|
|
23
23
|
export declare function sha256(input: Uint8Array): Uint8Array;
|
|
24
|
+
/**
|
|
25
|
+
* SHA-384 hash function (FIPS 180-4).
|
|
26
|
+
* @returns 48-byte digest
|
|
27
|
+
*/
|
|
28
|
+
export declare function sha384(input: Uint8Array): Uint8Array;
|
|
29
|
+
/**
|
|
30
|
+
* SHA-512 hash function (FIPS 180-4).
|
|
31
|
+
* @returns 64-byte digest
|
|
32
|
+
*/
|
|
33
|
+
export declare function sha512(input: Uint8Array): Uint8Array;
|
|
24
34
|
/**
|
|
25
35
|
* HMAC-SHA256 (RFC 2104).
|
|
26
36
|
* @returns 32-byte MAC
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Validation for size-limit options (`maxOutputLength`, `maxEntrySize`,
|
|
3
|
+
* `maxDecodedBytes`, …), applied once where a public option enters.
|
|
4
|
+
*
|
|
5
|
+
* A limit is a byte or item count: `undefined` selects the default, any
|
|
6
|
+
* non-negative number — `Infinity` included, meaning "unbounded" — is used as
|
|
7
|
+
* given. NaN and negatives used to fall through to whatever comparison each
|
|
8
|
+
* code path happened to make (a NaN bound disables a `>` check; a negative one
|
|
9
|
+
* was clamped on one path and rejected on another), so they are rejected here.
|
|
10
|
+
*/
|
|
11
|
+
/** Throw a `RangeError` unless `value` is `undefined` or a non-negative number. */
|
|
12
|
+
export declare function assertLimitOption(name: string, value: unknown): void;
|
package/package.json
CHANGED