@lexmata/micropdf 0.4.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/LICENSE +191 -0
- package/README.md +985 -0
- package/binding.gyp +73 -0
- package/dist/annot.d.ts +458 -0
- package/dist/annot.d.ts.map +1 -0
- package/dist/annot.js +697 -0
- package/dist/annot.js.map +1 -0
- package/dist/archive.d.ts +128 -0
- package/dist/archive.d.ts.map +1 -0
- package/dist/archive.js +268 -0
- package/dist/archive.js.map +1 -0
- package/dist/buffer.d.ts +572 -0
- package/dist/buffer.d.ts.map +1 -0
- package/dist/buffer.js +971 -0
- package/dist/buffer.js.map +1 -0
- package/dist/colorspace.d.ts +287 -0
- package/dist/colorspace.d.ts.map +1 -0
- package/dist/colorspace.js +542 -0
- package/dist/colorspace.js.map +1 -0
- package/dist/context.d.ts +184 -0
- package/dist/context.d.ts.map +1 -0
- package/dist/context.js +320 -0
- package/dist/context.js.map +1 -0
- package/dist/cookie.d.ts +164 -0
- package/dist/cookie.d.ts.map +1 -0
- package/dist/cookie.js +306 -0
- package/dist/cookie.js.map +1 -0
- package/dist/device.d.ts +169 -0
- package/dist/device.d.ts.map +1 -0
- package/dist/device.js +350 -0
- package/dist/device.js.map +1 -0
- package/dist/display-list.d.ts +202 -0
- package/dist/display-list.d.ts.map +1 -0
- package/dist/display-list.js +410 -0
- package/dist/display-list.js.map +1 -0
- package/dist/document.d.ts +637 -0
- package/dist/document.d.ts.map +1 -0
- package/dist/document.js +902 -0
- package/dist/document.js.map +1 -0
- package/dist/easy.d.ts +423 -0
- package/dist/easy.d.ts.map +1 -0
- package/dist/easy.js +644 -0
- package/dist/easy.js.map +1 -0
- package/dist/enhanced.d.ts +226 -0
- package/dist/enhanced.d.ts.map +1 -0
- package/dist/enhanced.js +368 -0
- package/dist/enhanced.js.map +1 -0
- package/dist/filter.d.ts +51 -0
- package/dist/filter.d.ts.map +1 -0
- package/dist/filter.js +381 -0
- package/dist/filter.js.map +1 -0
- package/dist/font.d.ts +222 -0
- package/dist/font.d.ts.map +1 -0
- package/dist/font.js +381 -0
- package/dist/font.js.map +1 -0
- package/dist/form.d.ts +214 -0
- package/dist/form.d.ts.map +1 -0
- package/dist/form.js +497 -0
- package/dist/form.js.map +1 -0
- package/dist/geometry.d.ts +469 -0
- package/dist/geometry.d.ts.map +1 -0
- package/dist/geometry.js +780 -0
- package/dist/geometry.js.map +1 -0
- package/dist/image.d.ts +172 -0
- package/dist/image.d.ts.map +1 -0
- package/dist/image.js +348 -0
- package/dist/image.js.map +1 -0
- package/dist/index.d.ts +171 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +339 -0
- package/dist/index.js.map +1 -0
- package/dist/link.d.ts +168 -0
- package/dist/link.d.ts.map +1 -0
- package/dist/link.js +343 -0
- package/dist/link.js.map +1 -0
- package/dist/micropdf.d.ts +40 -0
- package/dist/micropdf.d.ts.map +1 -0
- package/dist/micropdf.js +45 -0
- package/dist/micropdf.js.map +1 -0
- package/dist/nanopdf.d.ts +40 -0
- package/dist/nanopdf.d.ts.map +1 -0
- package/dist/nanopdf.js +45 -0
- package/dist/nanopdf.js.map +1 -0
- package/dist/native.d.ts +242 -0
- package/dist/native.d.ts.map +1 -0
- package/dist/native.js +509 -0
- package/dist/native.js.map +1 -0
- package/dist/output.d.ts +166 -0
- package/dist/output.d.ts.map +1 -0
- package/dist/output.js +365 -0
- package/dist/output.js.map +1 -0
- package/dist/path.d.ts +420 -0
- package/dist/path.d.ts.map +1 -0
- package/dist/path.js +687 -0
- package/dist/path.js.map +1 -0
- package/dist/pdf/object.d.ts +489 -0
- package/dist/pdf/object.d.ts.map +1 -0
- package/dist/pdf/object.js +1045 -0
- package/dist/pdf/object.js.map +1 -0
- package/dist/pixmap.d.ts +315 -0
- package/dist/pixmap.d.ts.map +1 -0
- package/dist/pixmap.js +590 -0
- package/dist/pixmap.js.map +1 -0
- package/dist/profiler.d.ts +159 -0
- package/dist/profiler.d.ts.map +1 -0
- package/dist/profiler.js +380 -0
- package/dist/profiler.js.map +1 -0
- package/dist/render-options.d.ts +227 -0
- package/dist/render-options.d.ts.map +1 -0
- package/dist/render-options.js +130 -0
- package/dist/render-options.js.map +1 -0
- package/dist/resource-tracking.d.ts +332 -0
- package/dist/resource-tracking.d.ts.map +1 -0
- package/dist/resource-tracking.js +653 -0
- package/dist/resource-tracking.js.map +1 -0
- package/dist/simple.d.ts +276 -0
- package/dist/simple.d.ts.map +1 -0
- package/dist/simple.js +343 -0
- package/dist/simple.js.map +1 -0
- package/dist/stext.d.ts +290 -0
- package/dist/stext.d.ts.map +1 -0
- package/dist/stext.js +312 -0
- package/dist/stext.js.map +1 -0
- package/dist/stream.d.ts +174 -0
- package/dist/stream.d.ts.map +1 -0
- package/dist/stream.js +476 -0
- package/dist/stream.js.map +1 -0
- package/dist/text.d.ts +337 -0
- package/dist/text.d.ts.map +1 -0
- package/dist/text.js +454 -0
- package/dist/text.js.map +1 -0
- package/dist/typed-arrays.d.ts +127 -0
- package/dist/typed-arrays.d.ts.map +1 -0
- package/dist/typed-arrays.js +410 -0
- package/dist/typed-arrays.js.map +1 -0
- package/dist/types.d.ts +358 -0
- package/dist/types.d.ts.map +1 -0
- package/dist/types.js +216 -0
- package/dist/types.js.map +1 -0
- package/native/annot.cc +557 -0
- package/native/buffer.cc +204 -0
- package/native/colorspace.cc +166 -0
- package/native/context.cc +84 -0
- package/native/cookie.cc +179 -0
- package/native/device.cc +179 -0
- package/native/display_list.cc +179 -0
- package/native/document.cc +268 -0
- package/native/enhanced.cc +70 -0
- package/native/font.cc +282 -0
- package/native/form.cc +523 -0
- package/native/geometry.cc +255 -0
- package/native/image.cc +216 -0
- package/native/include/micropdf/enhanced.h +38 -0
- package/native/include/micropdf/types.h +36 -0
- package/native/include/micropdf.h +106 -0
- package/native/include/mupdf-ffi.h +39 -0
- package/native/include/mupdf.h +11 -0
- package/native/include/mupdf_minimal.h +381 -0
- package/native/lib/linux-x64/libmicropdf.a +0 -0
- package/native/link.cc +234 -0
- package/native/micropdf.cc +71 -0
- package/native/output.cc +229 -0
- package/native/page.cc +572 -0
- package/native/path.cc +259 -0
- package/native/pixmap.cc +240 -0
- package/native/stext.cc +610 -0
- package/native/stream.cc +239 -0
- package/package.json +120 -0
- package/scripts/build-from-rust.js +97 -0
- package/scripts/install.js +184 -0
|
@@ -0,0 +1,184 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Context - Rendering and error context
|
|
3
|
+
*
|
|
4
|
+
* This module provides 100% API compatibility with MuPDF's context operations.
|
|
5
|
+
* Handles error management, memory management, and rendering contexts.
|
|
6
|
+
*/
|
|
7
|
+
/**
|
|
8
|
+
* Error callback type
|
|
9
|
+
*/
|
|
10
|
+
export type ErrorCallback = (message: string, code: number) => void;
|
|
11
|
+
/**
|
|
12
|
+
* Warning callback type
|
|
13
|
+
*/
|
|
14
|
+
export type WarningCallback = (message: string) => void;
|
|
15
|
+
/**
|
|
16
|
+
* Context for MuPDF operations
|
|
17
|
+
*/
|
|
18
|
+
export declare class Context {
|
|
19
|
+
private _userData;
|
|
20
|
+
private _errorCallback;
|
|
21
|
+
private _warningCallback;
|
|
22
|
+
private _warnings;
|
|
23
|
+
private _lastError;
|
|
24
|
+
private _storeSize;
|
|
25
|
+
private _storeUsed;
|
|
26
|
+
private _aaLevel;
|
|
27
|
+
private _iccEnabled;
|
|
28
|
+
private _refCount;
|
|
29
|
+
constructor();
|
|
30
|
+
/**
|
|
31
|
+
* Create a new default context
|
|
32
|
+
*/
|
|
33
|
+
static createDefault(): Context;
|
|
34
|
+
/**
|
|
35
|
+
* Create a new context
|
|
36
|
+
*/
|
|
37
|
+
static create(storeSize?: number): Context;
|
|
38
|
+
/**
|
|
39
|
+
* Get the global default context (alias for getDefaultContext())
|
|
40
|
+
*/
|
|
41
|
+
static getDefault(): Context;
|
|
42
|
+
keep(): this;
|
|
43
|
+
drop(): void;
|
|
44
|
+
/**
|
|
45
|
+
* Clone this context
|
|
46
|
+
*/
|
|
47
|
+
clone(): Context;
|
|
48
|
+
/**
|
|
49
|
+
* Set user context data
|
|
50
|
+
*/
|
|
51
|
+
setUserContext(data: unknown): void;
|
|
52
|
+
/**
|
|
53
|
+
* Get user context data
|
|
54
|
+
*/
|
|
55
|
+
getUserContext<T = unknown>(): T | null;
|
|
56
|
+
/**
|
|
57
|
+
* Throw an error
|
|
58
|
+
*/
|
|
59
|
+
throw(message: string, code?: number): never;
|
|
60
|
+
/**
|
|
61
|
+
* Rethrow the last error
|
|
62
|
+
*/
|
|
63
|
+
rethrow(): never;
|
|
64
|
+
/**
|
|
65
|
+
* Get caught error
|
|
66
|
+
*/
|
|
67
|
+
caught(): number;
|
|
68
|
+
/**
|
|
69
|
+
* Get caught error message
|
|
70
|
+
*/
|
|
71
|
+
caughtMessage(): string;
|
|
72
|
+
/**
|
|
73
|
+
* Check if context has an error
|
|
74
|
+
*/
|
|
75
|
+
hasError(): boolean;
|
|
76
|
+
/**
|
|
77
|
+
* Ignore/clear the current error
|
|
78
|
+
*/
|
|
79
|
+
ignoreError(): void;
|
|
80
|
+
/**
|
|
81
|
+
* Convert error code to string
|
|
82
|
+
*/
|
|
83
|
+
convertError(code: number): string;
|
|
84
|
+
/**
|
|
85
|
+
* Report error
|
|
86
|
+
*/
|
|
87
|
+
reportError(message: string, code?: number): void;
|
|
88
|
+
/**
|
|
89
|
+
* Set error callback
|
|
90
|
+
*/
|
|
91
|
+
setErrorCallback(callback: ErrorCallback | null): void;
|
|
92
|
+
/**
|
|
93
|
+
* Issue a warning
|
|
94
|
+
*/
|
|
95
|
+
warn(message: string): void;
|
|
96
|
+
/**
|
|
97
|
+
* Flush accumulated warnings
|
|
98
|
+
*/
|
|
99
|
+
flushWarnings(): string[];
|
|
100
|
+
/**
|
|
101
|
+
* Set warning callback
|
|
102
|
+
*/
|
|
103
|
+
setWarningCallback(callback: WarningCallback | null): void;
|
|
104
|
+
/**
|
|
105
|
+
* Get store size (cache size)
|
|
106
|
+
*/
|
|
107
|
+
getStoreSize(): number;
|
|
108
|
+
/**
|
|
109
|
+
* Get store used bytes
|
|
110
|
+
*/
|
|
111
|
+
getStoreUsed(): number;
|
|
112
|
+
/**
|
|
113
|
+
* Shrink store to target size
|
|
114
|
+
*/
|
|
115
|
+
shrinkStore(target: number): void;
|
|
116
|
+
/**
|
|
117
|
+
* Empty the store completely
|
|
118
|
+
*/
|
|
119
|
+
emptyStore(): void;
|
|
120
|
+
/**
|
|
121
|
+
* Scavenge store (reclaim memory)
|
|
122
|
+
*/
|
|
123
|
+
storeScavenge(target: number): number;
|
|
124
|
+
/**
|
|
125
|
+
* Enable ICC color management
|
|
126
|
+
*/
|
|
127
|
+
enableICC(): void;
|
|
128
|
+
/**
|
|
129
|
+
* Disable ICC color management
|
|
130
|
+
*/
|
|
131
|
+
disableICC(): void;
|
|
132
|
+
/**
|
|
133
|
+
* Check if ICC is enabled
|
|
134
|
+
*/
|
|
135
|
+
get isICCEnabled(): boolean;
|
|
136
|
+
/**
|
|
137
|
+
* Set anti-aliasing level (0-8)
|
|
138
|
+
*/
|
|
139
|
+
setAALevel(level: number): void;
|
|
140
|
+
/**
|
|
141
|
+
* Get anti-aliasing level
|
|
142
|
+
*/
|
|
143
|
+
getAALevel(): number;
|
|
144
|
+
/**
|
|
145
|
+
* Check if context is valid
|
|
146
|
+
*/
|
|
147
|
+
isValid(): boolean;
|
|
148
|
+
/**
|
|
149
|
+
* Get context info
|
|
150
|
+
*/
|
|
151
|
+
getInfo(): ContextInfo;
|
|
152
|
+
/**
|
|
153
|
+
* Get context status string
|
|
154
|
+
*/
|
|
155
|
+
toString(): string;
|
|
156
|
+
}
|
|
157
|
+
/**
|
|
158
|
+
* Context information
|
|
159
|
+
*/
|
|
160
|
+
export interface ContextInfo {
|
|
161
|
+
storeSize: number;
|
|
162
|
+
storeUsed: number;
|
|
163
|
+
storeAvailable: number;
|
|
164
|
+
storePercent: number;
|
|
165
|
+
aaLevel: number;
|
|
166
|
+
iccEnabled: boolean;
|
|
167
|
+
hasError: boolean;
|
|
168
|
+
errorMessage: string;
|
|
169
|
+
warningCount: number;
|
|
170
|
+
refCount: number;
|
|
171
|
+
}
|
|
172
|
+
/**
|
|
173
|
+
* Get the global default context
|
|
174
|
+
*/
|
|
175
|
+
export declare function getDefaultContext(): Context;
|
|
176
|
+
/**
|
|
177
|
+
* Set the global default context
|
|
178
|
+
*/
|
|
179
|
+
export declare function setDefaultContext(ctx: Context): void;
|
|
180
|
+
/**
|
|
181
|
+
* Reset the global default context
|
|
182
|
+
*/
|
|
183
|
+
export declare function resetDefaultContext(): void;
|
|
184
|
+
//# sourceMappingURL=context.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"context.d.ts","sourceRoot":"","sources":["../src/context.ts"],"names":[],"mappings":"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"}
|
package/dist/context.js
ADDED
|
@@ -0,0 +1,320 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Context - Rendering and error context
|
|
3
|
+
*
|
|
4
|
+
* This module provides 100% API compatibility with MuPDF's context operations.
|
|
5
|
+
* Handles error management, memory management, and rendering contexts.
|
|
6
|
+
*/
|
|
7
|
+
/**
|
|
8
|
+
* Context for MuPDF operations
|
|
9
|
+
*/
|
|
10
|
+
export class Context {
|
|
11
|
+
_userData = null;
|
|
12
|
+
_errorCallback = null;
|
|
13
|
+
_warningCallback = null;
|
|
14
|
+
_warnings = [];
|
|
15
|
+
_lastError = null;
|
|
16
|
+
_storeSize = 256 * 1024 * 1024; // 256MB default
|
|
17
|
+
_storeUsed = 0;
|
|
18
|
+
_aaLevel = 8;
|
|
19
|
+
_iccEnabled = true;
|
|
20
|
+
_refCount = 1;
|
|
21
|
+
constructor() { }
|
|
22
|
+
/**
|
|
23
|
+
* Create a new default context
|
|
24
|
+
*/
|
|
25
|
+
static createDefault() {
|
|
26
|
+
return new Context();
|
|
27
|
+
}
|
|
28
|
+
/**
|
|
29
|
+
* Create a new context
|
|
30
|
+
*/
|
|
31
|
+
static create(storeSize) {
|
|
32
|
+
const ctx = new Context();
|
|
33
|
+
if (storeSize !== undefined) {
|
|
34
|
+
ctx._storeSize = storeSize;
|
|
35
|
+
}
|
|
36
|
+
return ctx;
|
|
37
|
+
}
|
|
38
|
+
/**
|
|
39
|
+
* Get the global default context (alias for getDefaultContext())
|
|
40
|
+
*/
|
|
41
|
+
static getDefault() {
|
|
42
|
+
if (!defaultContext) {
|
|
43
|
+
defaultContext = Context.createDefault();
|
|
44
|
+
}
|
|
45
|
+
return defaultContext;
|
|
46
|
+
}
|
|
47
|
+
// ============================================================================
|
|
48
|
+
// Reference Counting
|
|
49
|
+
// ============================================================================
|
|
50
|
+
keep() {
|
|
51
|
+
this._refCount++;
|
|
52
|
+
return this;
|
|
53
|
+
}
|
|
54
|
+
drop() {
|
|
55
|
+
if (this._refCount > 0) {
|
|
56
|
+
this._refCount--;
|
|
57
|
+
}
|
|
58
|
+
}
|
|
59
|
+
/**
|
|
60
|
+
* Clone this context
|
|
61
|
+
*/
|
|
62
|
+
clone() {
|
|
63
|
+
const cloned = new Context();
|
|
64
|
+
cloned._storeSize = this._storeSize;
|
|
65
|
+
cloned._aaLevel = this._aaLevel;
|
|
66
|
+
cloned._iccEnabled = this._iccEnabled;
|
|
67
|
+
return cloned;
|
|
68
|
+
}
|
|
69
|
+
// ============================================================================
|
|
70
|
+
// User Data
|
|
71
|
+
// ============================================================================
|
|
72
|
+
/**
|
|
73
|
+
* Set user context data
|
|
74
|
+
*/
|
|
75
|
+
setUserContext(data) {
|
|
76
|
+
this._userData = data;
|
|
77
|
+
}
|
|
78
|
+
/**
|
|
79
|
+
* Get user context data
|
|
80
|
+
*/
|
|
81
|
+
getUserContext() {
|
|
82
|
+
return this._userData;
|
|
83
|
+
}
|
|
84
|
+
// ============================================================================
|
|
85
|
+
// Error Handling
|
|
86
|
+
// ============================================================================
|
|
87
|
+
/**
|
|
88
|
+
* Throw an error
|
|
89
|
+
*/
|
|
90
|
+
throw(message, code = 1) {
|
|
91
|
+
this._lastError = { message, code };
|
|
92
|
+
if (this._errorCallback) {
|
|
93
|
+
this._errorCallback(message, code);
|
|
94
|
+
}
|
|
95
|
+
throw new Error(message);
|
|
96
|
+
}
|
|
97
|
+
/**
|
|
98
|
+
* Rethrow the last error
|
|
99
|
+
*/
|
|
100
|
+
rethrow() {
|
|
101
|
+
if (this._lastError) {
|
|
102
|
+
this.throw(this._lastError.message, this._lastError.code);
|
|
103
|
+
}
|
|
104
|
+
throw new Error('No error to rethrow');
|
|
105
|
+
}
|
|
106
|
+
/**
|
|
107
|
+
* Get caught error
|
|
108
|
+
*/
|
|
109
|
+
caught() {
|
|
110
|
+
return this._lastError ? this._lastError.code : 0;
|
|
111
|
+
}
|
|
112
|
+
/**
|
|
113
|
+
* Get caught error message
|
|
114
|
+
*/
|
|
115
|
+
caughtMessage() {
|
|
116
|
+
return this._lastError ? this._lastError.message : '';
|
|
117
|
+
}
|
|
118
|
+
/**
|
|
119
|
+
* Check if context has an error
|
|
120
|
+
*/
|
|
121
|
+
hasError() {
|
|
122
|
+
return this._lastError !== null;
|
|
123
|
+
}
|
|
124
|
+
/**
|
|
125
|
+
* Ignore/clear the current error
|
|
126
|
+
*/
|
|
127
|
+
ignoreError() {
|
|
128
|
+
this._lastError = null;
|
|
129
|
+
}
|
|
130
|
+
/**
|
|
131
|
+
* Convert error code to string
|
|
132
|
+
*/
|
|
133
|
+
convertError(code) {
|
|
134
|
+
const errors = {
|
|
135
|
+
0: 'No error',
|
|
136
|
+
1: 'Generic error',
|
|
137
|
+
2: 'Out of memory',
|
|
138
|
+
3: 'Invalid operation',
|
|
139
|
+
4: 'File not found',
|
|
140
|
+
5: 'I/O error'
|
|
141
|
+
};
|
|
142
|
+
return errors[code] || `Error ${code}`;
|
|
143
|
+
}
|
|
144
|
+
/**
|
|
145
|
+
* Report error
|
|
146
|
+
*/
|
|
147
|
+
reportError(message, code = 1) {
|
|
148
|
+
this._lastError = { message, code };
|
|
149
|
+
if (this._errorCallback) {
|
|
150
|
+
this._errorCallback(message, code);
|
|
151
|
+
}
|
|
152
|
+
}
|
|
153
|
+
/**
|
|
154
|
+
* Set error callback
|
|
155
|
+
*/
|
|
156
|
+
setErrorCallback(callback) {
|
|
157
|
+
this._errorCallback = callback;
|
|
158
|
+
}
|
|
159
|
+
// ============================================================================
|
|
160
|
+
// Warning Handling
|
|
161
|
+
// ============================================================================
|
|
162
|
+
/**
|
|
163
|
+
* Issue a warning
|
|
164
|
+
*/
|
|
165
|
+
warn(message) {
|
|
166
|
+
this._warnings.push(message);
|
|
167
|
+
if (this._warningCallback) {
|
|
168
|
+
this._warningCallback(message);
|
|
169
|
+
}
|
|
170
|
+
}
|
|
171
|
+
/**
|
|
172
|
+
* Flush accumulated warnings
|
|
173
|
+
*/
|
|
174
|
+
flushWarnings() {
|
|
175
|
+
const warnings = [...this._warnings];
|
|
176
|
+
this._warnings = [];
|
|
177
|
+
return warnings;
|
|
178
|
+
}
|
|
179
|
+
/**
|
|
180
|
+
* Set warning callback
|
|
181
|
+
*/
|
|
182
|
+
setWarningCallback(callback) {
|
|
183
|
+
this._warningCallback = callback;
|
|
184
|
+
}
|
|
185
|
+
// ============================================================================
|
|
186
|
+
// Store (Cache) Management
|
|
187
|
+
// ============================================================================
|
|
188
|
+
/**
|
|
189
|
+
* Get store size (cache size)
|
|
190
|
+
*/
|
|
191
|
+
getStoreSize() {
|
|
192
|
+
return this._storeSize;
|
|
193
|
+
}
|
|
194
|
+
/**
|
|
195
|
+
* Get store used bytes
|
|
196
|
+
*/
|
|
197
|
+
getStoreUsed() {
|
|
198
|
+
return this._storeUsed;
|
|
199
|
+
}
|
|
200
|
+
/**
|
|
201
|
+
* Shrink store to target size
|
|
202
|
+
*/
|
|
203
|
+
shrinkStore(target) {
|
|
204
|
+
if (this._storeUsed > target) {
|
|
205
|
+
this._storeUsed = target;
|
|
206
|
+
}
|
|
207
|
+
}
|
|
208
|
+
/**
|
|
209
|
+
* Empty the store completely
|
|
210
|
+
*/
|
|
211
|
+
emptyStore() {
|
|
212
|
+
this._storeUsed = 0;
|
|
213
|
+
}
|
|
214
|
+
/**
|
|
215
|
+
* Scavenge store (reclaim memory)
|
|
216
|
+
*/
|
|
217
|
+
storeScavenge(target) {
|
|
218
|
+
const before = this._storeUsed;
|
|
219
|
+
this.shrinkStore(target);
|
|
220
|
+
return before - this._storeUsed;
|
|
221
|
+
}
|
|
222
|
+
// ============================================================================
|
|
223
|
+
// ICC Color Management
|
|
224
|
+
// ============================================================================
|
|
225
|
+
/**
|
|
226
|
+
* Enable ICC color management
|
|
227
|
+
*/
|
|
228
|
+
enableICC() {
|
|
229
|
+
this._iccEnabled = true;
|
|
230
|
+
}
|
|
231
|
+
/**
|
|
232
|
+
* Disable ICC color management
|
|
233
|
+
*/
|
|
234
|
+
disableICC() {
|
|
235
|
+
this._iccEnabled = false;
|
|
236
|
+
}
|
|
237
|
+
/**
|
|
238
|
+
* Check if ICC is enabled
|
|
239
|
+
*/
|
|
240
|
+
get isICCEnabled() {
|
|
241
|
+
return this._iccEnabled;
|
|
242
|
+
}
|
|
243
|
+
// ============================================================================
|
|
244
|
+
// Anti-Aliasing
|
|
245
|
+
// ============================================================================
|
|
246
|
+
/**
|
|
247
|
+
* Set anti-aliasing level (0-8)
|
|
248
|
+
*/
|
|
249
|
+
setAALevel(level) {
|
|
250
|
+
this._aaLevel = Math.max(0, Math.min(8, level));
|
|
251
|
+
}
|
|
252
|
+
/**
|
|
253
|
+
* Get anti-aliasing level
|
|
254
|
+
*/
|
|
255
|
+
getAALevel() {
|
|
256
|
+
return this._aaLevel;
|
|
257
|
+
}
|
|
258
|
+
// ============================================================================
|
|
259
|
+
// Validation
|
|
260
|
+
// ============================================================================
|
|
261
|
+
/**
|
|
262
|
+
* Check if context is valid
|
|
263
|
+
*/
|
|
264
|
+
isValid() {
|
|
265
|
+
return this._refCount > 0;
|
|
266
|
+
}
|
|
267
|
+
// ============================================================================
|
|
268
|
+
// Context Info
|
|
269
|
+
// ============================================================================
|
|
270
|
+
/**
|
|
271
|
+
* Get context info
|
|
272
|
+
*/
|
|
273
|
+
getInfo() {
|
|
274
|
+
return {
|
|
275
|
+
storeSize: this._storeSize,
|
|
276
|
+
storeUsed: this._storeUsed,
|
|
277
|
+
storeAvailable: this._storeSize - this._storeUsed,
|
|
278
|
+
storePercent: (this._storeUsed / this._storeSize) * 100,
|
|
279
|
+
aaLevel: this._aaLevel,
|
|
280
|
+
iccEnabled: this._iccEnabled,
|
|
281
|
+
hasError: this.hasError(),
|
|
282
|
+
errorMessage: this.caughtMessage(),
|
|
283
|
+
warningCount: this._warnings.length,
|
|
284
|
+
refCount: this._refCount
|
|
285
|
+
};
|
|
286
|
+
}
|
|
287
|
+
/**
|
|
288
|
+
* Get context status string
|
|
289
|
+
*/
|
|
290
|
+
toString() {
|
|
291
|
+
const info = this.getInfo();
|
|
292
|
+
return `Context(store=${(info.storeUsed / 1024 / 1024).toFixed(1)}/${(info.storeSize / 1024 / 1024).toFixed(0)}MB, aa=${info.aaLevel}, icc=${info.iccEnabled}, errors=${info.hasError}, warnings=${info.warningCount})`;
|
|
293
|
+
}
|
|
294
|
+
}
|
|
295
|
+
/**
|
|
296
|
+
* Global default context
|
|
297
|
+
*/
|
|
298
|
+
let defaultContext = null;
|
|
299
|
+
/**
|
|
300
|
+
* Get the global default context
|
|
301
|
+
*/
|
|
302
|
+
export function getDefaultContext() {
|
|
303
|
+
if (!defaultContext) {
|
|
304
|
+
defaultContext = Context.createDefault();
|
|
305
|
+
}
|
|
306
|
+
return defaultContext;
|
|
307
|
+
}
|
|
308
|
+
/**
|
|
309
|
+
* Set the global default context
|
|
310
|
+
*/
|
|
311
|
+
export function setDefaultContext(ctx) {
|
|
312
|
+
defaultContext = ctx;
|
|
313
|
+
}
|
|
314
|
+
/**
|
|
315
|
+
* Reset the global default context
|
|
316
|
+
*/
|
|
317
|
+
export function resetDefaultContext() {
|
|
318
|
+
defaultContext = null;
|
|
319
|
+
}
|
|
320
|
+
//# sourceMappingURL=context.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"context.js","sourceRoot":"","sources":["../src/context.ts"],"names":[],"mappings":"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"}
|
package/dist/cookie.d.ts
ADDED
|
@@ -0,0 +1,164 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Cookie - Operation progress and cancellation tracking
|
|
3
|
+
*
|
|
4
|
+
* This module provides 100% API compatibility with MuPDF's cookie operations.
|
|
5
|
+
* Cookies track progress, errors, and allow cancellation of long-running operations.
|
|
6
|
+
*/
|
|
7
|
+
/**
|
|
8
|
+
* A cookie for tracking operation progress and cancellation
|
|
9
|
+
*/
|
|
10
|
+
export declare class Cookie {
|
|
11
|
+
private _abort;
|
|
12
|
+
private _progress;
|
|
13
|
+
private _progressMax;
|
|
14
|
+
private _errors;
|
|
15
|
+
private _incomplete;
|
|
16
|
+
private _refCount;
|
|
17
|
+
constructor();
|
|
18
|
+
/**
|
|
19
|
+
* Create a new cookie
|
|
20
|
+
*/
|
|
21
|
+
static create(): Cookie;
|
|
22
|
+
keep(): this;
|
|
23
|
+
drop(): void;
|
|
24
|
+
/**
|
|
25
|
+
* Clone this cookie
|
|
26
|
+
*/
|
|
27
|
+
clone(): Cookie;
|
|
28
|
+
/**
|
|
29
|
+
* Check if operation should abort
|
|
30
|
+
*/
|
|
31
|
+
shouldAbort(): boolean;
|
|
32
|
+
/**
|
|
33
|
+
* Request abortion of the operation
|
|
34
|
+
*/
|
|
35
|
+
abort(): void;
|
|
36
|
+
/**
|
|
37
|
+
* Reset abort flag
|
|
38
|
+
*/
|
|
39
|
+
resetAbort(): void;
|
|
40
|
+
/**
|
|
41
|
+
* Check if aborted
|
|
42
|
+
*/
|
|
43
|
+
get isAborted(): boolean;
|
|
44
|
+
/**
|
|
45
|
+
* Get current progress
|
|
46
|
+
*/
|
|
47
|
+
getProgress(): number;
|
|
48
|
+
/**
|
|
49
|
+
* Set current progress
|
|
50
|
+
*/
|
|
51
|
+
setProgress(progress: number): void;
|
|
52
|
+
/**
|
|
53
|
+
* Increment progress
|
|
54
|
+
*/
|
|
55
|
+
incProgress(delta?: number): void;
|
|
56
|
+
/**
|
|
57
|
+
* Get progress maximum
|
|
58
|
+
*/
|
|
59
|
+
getProgressMax(): number;
|
|
60
|
+
/**
|
|
61
|
+
* Set progress maximum
|
|
62
|
+
*/
|
|
63
|
+
setProgressMax(max: number): void;
|
|
64
|
+
/**
|
|
65
|
+
* Get progress as percentage (0-100)
|
|
66
|
+
*/
|
|
67
|
+
getProgressPercent(): number;
|
|
68
|
+
/**
|
|
69
|
+
* Get progress as float (0.0-1.0)
|
|
70
|
+
*/
|
|
71
|
+
getProgressFloat(): number;
|
|
72
|
+
/**
|
|
73
|
+
* Get remaining progress
|
|
74
|
+
*/
|
|
75
|
+
getProgressRemaining(): number;
|
|
76
|
+
/**
|
|
77
|
+
* Check if progress is complete
|
|
78
|
+
*/
|
|
79
|
+
isComplete(): boolean;
|
|
80
|
+
/**
|
|
81
|
+
* Get error count
|
|
82
|
+
*/
|
|
83
|
+
getErrors(): number;
|
|
84
|
+
/**
|
|
85
|
+
* Set error count
|
|
86
|
+
*/
|
|
87
|
+
setErrors(count: number): void;
|
|
88
|
+
/**
|
|
89
|
+
* Increment error count
|
|
90
|
+
*/
|
|
91
|
+
incErrors(delta?: number): void;
|
|
92
|
+
/**
|
|
93
|
+
* Check if there are errors
|
|
94
|
+
*/
|
|
95
|
+
hasErrors(): boolean;
|
|
96
|
+
/**
|
|
97
|
+
* Check if operation is incomplete
|
|
98
|
+
*/
|
|
99
|
+
isIncomplete(): boolean;
|
|
100
|
+
/**
|
|
101
|
+
* Set incomplete flag
|
|
102
|
+
*/
|
|
103
|
+
setIncomplete(incomplete: boolean): void;
|
|
104
|
+
/**
|
|
105
|
+
* Reset cookie to initial state
|
|
106
|
+
*/
|
|
107
|
+
reset(): void;
|
|
108
|
+
/**
|
|
109
|
+
* Check if cookie is valid
|
|
110
|
+
*/
|
|
111
|
+
isValid(): boolean;
|
|
112
|
+
/**
|
|
113
|
+
* Get status summary
|
|
114
|
+
*/
|
|
115
|
+
getStatus(): {
|
|
116
|
+
aborted: boolean;
|
|
117
|
+
progress: number;
|
|
118
|
+
progressMax: number;
|
|
119
|
+
progressPercent: number;
|
|
120
|
+
progressFloat: number;
|
|
121
|
+
errors: number;
|
|
122
|
+
incomplete: boolean;
|
|
123
|
+
complete: boolean;
|
|
124
|
+
};
|
|
125
|
+
/**
|
|
126
|
+
* Get status string
|
|
127
|
+
*/
|
|
128
|
+
toString(): string;
|
|
129
|
+
}
|
|
130
|
+
/**
|
|
131
|
+
* Cookie-aware operation wrapper
|
|
132
|
+
*/
|
|
133
|
+
export declare class CookieOperation<T> {
|
|
134
|
+
private _cookie;
|
|
135
|
+
private _operation;
|
|
136
|
+
private _onProgress?;
|
|
137
|
+
private _onError?;
|
|
138
|
+
private _running;
|
|
139
|
+
constructor(operation: (cookie: Cookie) => Promise<T>, options?: {
|
|
140
|
+
onProgress?: (progress: number, max: number) => void;
|
|
141
|
+
onError?: (error: Error) => void;
|
|
142
|
+
});
|
|
143
|
+
/**
|
|
144
|
+
* Get the cookie
|
|
145
|
+
*/
|
|
146
|
+
get cookie(): Cookie;
|
|
147
|
+
/**
|
|
148
|
+
* Check if operation is running
|
|
149
|
+
*/
|
|
150
|
+
get isRunning(): boolean;
|
|
151
|
+
/**
|
|
152
|
+
* Run the operation
|
|
153
|
+
*/
|
|
154
|
+
run(): Promise<T>;
|
|
155
|
+
/**
|
|
156
|
+
* Abort the operation
|
|
157
|
+
*/
|
|
158
|
+
abort(): void;
|
|
159
|
+
/**
|
|
160
|
+
* Get progress as percentage
|
|
161
|
+
*/
|
|
162
|
+
getProgress(): number;
|
|
163
|
+
}
|
|
164
|
+
//# sourceMappingURL=cookie.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"cookie.d.ts","sourceRoot":"","sources":["../src/cookie.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH;;GAEG;AACH,qBAAa,MAAM;IACjB,OAAO,CAAC,MAAM,CAAkB;IAChC,OAAO,CAAC,SAAS,CAAa;IAC9B,OAAO,CAAC,YAAY,CAAa;IACjC,OAAO,CAAC,OAAO,CAAa;IAC5B,OAAO,CAAC,WAAW,CAAkB;IACrC,OAAO,CAAC,SAAS,CAAa;;IAI9B;;OAEG;IACH,MAAM,CAAC,MAAM,IAAI,MAAM;IAQvB,IAAI,IAAI,IAAI;IAKZ,IAAI,IAAI,IAAI;IAMZ;;OAEG;IACH,KAAK,IAAI,MAAM;IAcf;;OAEG;IACH,WAAW,IAAI,OAAO;IAItB;;OAEG;IACH,KAAK,IAAI,IAAI;IAIb;;OAEG;IACH,UAAU,IAAI,IAAI;IAIlB;;OAEG;IACH,IAAI,SAAS,IAAI,OAAO,CAEvB;IAMD;;OAEG;IACH,WAAW,IAAI,MAAM;IAIrB;;OAEG;IACH,WAAW,CAAC,QAAQ,EAAE,MAAM,GAAG,IAAI;IAInC;;OAEG;IACH,WAAW,CAAC,KAAK,GAAE,MAAU,GAAG,IAAI;IAIpC;;OAEG;IACH,cAAc,IAAI,MAAM;IAIxB;;OAEG;IACH,cAAc,CAAC,GAAG,EAAE,MAAM,GAAG,IAAI;IAIjC;;OAEG;IACH,kBAAkB,IAAI,MAAM;IAO5B;;OAEG;IACH,gBAAgB,IAAI,MAAM;IAO1B;;OAEG;IACH,oBAAoB,IAAI,MAAM;IAI9B;;OAEG;IACH,UAAU,IAAI,OAAO;IAQrB;;OAEG;IACH,SAAS,IAAI,MAAM;IAInB;;OAEG;IACH,SAAS,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI;IAI9B;;OAEG;IACH,SAAS,CAAC,KAAK,GAAE,MAAU,GAAG,IAAI;IAIlC;;OAEG;IACH,SAAS,IAAI,OAAO;IAQpB;;OAEG;IACH,YAAY,IAAI,OAAO;IAIvB;;OAEG;IACH,aAAa,CAAC,UAAU,EAAE,OAAO,GAAG,IAAI;IAQxC;;OAEG;IACH,KAAK,IAAI,IAAI;IAYb;;OAEG;IACH,OAAO,IAAI,OAAO;IAQlB;;OAEG;IACH,SAAS,IAAI;QACX,OAAO,EAAE,OAAO,CAAC;QACjB,QAAQ,EAAE,MAAM,CAAC;QACjB,WAAW,EAAE,MAAM,CAAC;QACpB,eAAe,EAAE,MAAM,CAAC;QACxB,aAAa,EAAE,MAAM,CAAC;QACtB,MAAM,EAAE,MAAM,CAAC;QACf,UAAU,EAAE,OAAO,CAAC;QACpB,QAAQ,EAAE,OAAO,CAAC;KACnB;IAaD;;OAEG;IACH,QAAQ,IAAI,MAAM;CAInB;AAED;;GAEG;AACH,qBAAa,eAAe,CAAC,CAAC;IAC5B,OAAO,CAAC,OAAO,CAAS;IACxB,OAAO,CAAC,UAAU,CAAiC;IACnD,OAAO,CAAC,WAAW,CAAC,CAA0C;IAC9D,OAAO,CAAC,QAAQ,CAAC,CAAyB;IAC1C,OAAO,CAAC,QAAQ,CAAkB;gBAGhC,SAAS,EAAE,CAAC,MAAM,EAAE,MAAM,KAAK,OAAO,CAAC,CAAC,CAAC,EACzC,OAAO,CAAC,EAAE;QACR,UAAU,CAAC,EAAE,CAAC,QAAQ,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,KAAK,IAAI,CAAC;QACrD,OAAO,CAAC,EAAE,CAAC,KAAK,EAAE,KAAK,KAAK,IAAI,CAAC;KAClC;IAYH;;OAEG;IACH,IAAI,MAAM,IAAI,MAAM,CAEnB;IAED;;OAEG;IACH,IAAI,SAAS,IAAI,OAAO,CAEvB;IAED;;OAEG;IACG,GAAG,IAAI,OAAO,CAAC,CAAC,CAAC;IAiCvB;;OAEG;IACH,KAAK,IAAI,IAAI;IAIb;;OAEG;IACH,WAAW,IAAI,MAAM;CAGtB"}
|