@pdfluent/sdk-wasm 1.0.0-beta.10

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/xfa_wasm.js ADDED
@@ -0,0 +1,2086 @@
1
+ /* @ts-self-types="./xfa_wasm.d.ts" */
2
+
3
+ /**
4
+ * Chroma subsampling format
5
+ * @enum {0 | 1 | 2 | 3}
6
+ */
7
+ export const ChromaSampling = Object.freeze({
8
+ /**
9
+ * Both vertically and horizontally subsampled.
10
+ */
11
+ Cs420: 0, "0": "Cs420",
12
+ /**
13
+ * Horizontally subsampled.
14
+ */
15
+ Cs422: 1, "1": "Cs422",
16
+ /**
17
+ * Not subsampled.
18
+ */
19
+ Cs444: 2, "2": "Cs444",
20
+ /**
21
+ * Monochrome.
22
+ */
23
+ Cs400: 3, "3": "Cs400",
24
+ });
25
+
26
+ /**
27
+ * Status of the currently-active license.
28
+ */
29
+ export class LicenseStatus {
30
+ static __wrap(ptr) {
31
+ ptr = ptr >>> 0;
32
+ const obj = Object.create(LicenseStatus.prototype);
33
+ obj.__wbg_ptr = ptr;
34
+ LicenseStatusFinalization.register(obj, obj.__wbg_ptr, obj);
35
+ return obj;
36
+ }
37
+ __destroy_into_raw() {
38
+ const ptr = this.__wbg_ptr;
39
+ this.__wbg_ptr = 0;
40
+ LicenseStatusFinalization.unregister(this);
41
+ return ptr;
42
+ }
43
+ free() {
44
+ const ptr = this.__destroy_into_raw();
45
+ wasm.__wbg_licensestatus_free(ptr, 0);
46
+ }
47
+ /**
48
+ * Whether output is marked via `/Producer` metadata (Trial tier).
49
+ * @returns {boolean}
50
+ */
51
+ get outputIsMarked() {
52
+ const ret = wasm.licensestatus_outputIsMarked(this.__wbg_ptr);
53
+ return ret !== 0;
54
+ }
55
+ /**
56
+ * Source: `"Default" | "EnvVar" | "Explicit"`.
57
+ * @returns {string}
58
+ */
59
+ get source() {
60
+ let deferred1_0;
61
+ let deferred1_1;
62
+ try {
63
+ const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);
64
+ wasm.licensestatus_source(retptr, this.__wbg_ptr);
65
+ var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);
66
+ var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);
67
+ deferred1_0 = r0;
68
+ deferred1_1 = r1;
69
+ return getStringFromWasm0(r0, r1);
70
+ } finally {
71
+ wasm.__wbindgen_add_to_stack_pointer(16);
72
+ wasm.__wbindgen_export4(deferred1_0, deferred1_1, 1);
73
+ }
74
+ }
75
+ /**
76
+ * Tier name: `"Trial" | "Developer" | "Team" | "Business" | "Enterprise"`.
77
+ * @returns {string}
78
+ */
79
+ get tier() {
80
+ let deferred1_0;
81
+ let deferred1_1;
82
+ try {
83
+ const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);
84
+ wasm.licensestatus_tier(retptr, this.__wbg_ptr);
85
+ var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);
86
+ var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);
87
+ deferred1_0 = r0;
88
+ deferred1_1 = r1;
89
+ return getStringFromWasm0(r0, r1);
90
+ } finally {
91
+ wasm.__wbindgen_add_to_stack_pointer(16);
92
+ wasm.__wbindgen_export4(deferred1_0, deferred1_1, 1);
93
+ }
94
+ }
95
+ }
96
+ if (Symbol.dispose) LicenseStatus.prototype[Symbol.dispose] = LicenseStatus.prototype.free;
97
+
98
+ /**
99
+ * PDF document handle for analysis and text extraction.
100
+ *
101
+ * Uses `pdf-syntax` for metadata/geometry/signatures/compliance and
102
+ * `pdf-engine` for text extraction so the WASM path matches native decoding.
103
+ */
104
+ export class PdfDoc {
105
+ static __wrap(ptr) {
106
+ ptr = ptr >>> 0;
107
+ const obj = Object.create(PdfDoc.prototype);
108
+ obj.__wbg_ptr = ptr;
109
+ PdfDocFinalization.register(obj, obj.__wbg_ptr, obj);
110
+ return obj;
111
+ }
112
+ __destroy_into_raw() {
113
+ const ptr = this.__wbg_ptr;
114
+ this.__wbg_ptr = 0;
115
+ PdfDocFinalization.unregister(this);
116
+ return ptr;
117
+ }
118
+ free() {
119
+ const ptr = this.__destroy_into_raw();
120
+ wasm.__wbg_pdfdoc_free(ptr, 0);
121
+ }
122
+ /**
123
+ * Add a free-text (callout-style) annotation at the given page rectangle.
124
+ * @param {number} page_index
125
+ * @param {number} x
126
+ * @param {number} y
127
+ * @param {number} w
128
+ * @param {number} h
129
+ * @param {string} contents
130
+ * @returns {Uint8Array}
131
+ */
132
+ addFreeText(page_index, x, y, w, h, contents) {
133
+ try {
134
+ const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);
135
+ const ptr0 = passStringToWasm0(contents, wasm.__wbindgen_export, wasm.__wbindgen_export2);
136
+ const len0 = WASM_VECTOR_LEN;
137
+ wasm.pdfdoc_addFreeText(retptr, this.__wbg_ptr, page_index, x, y, w, h, ptr0, len0);
138
+ var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);
139
+ var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);
140
+ var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);
141
+ var r3 = getDataViewMemory0().getInt32(retptr + 4 * 3, true);
142
+ if (r3) {
143
+ throw takeObject(r2);
144
+ }
145
+ var v2 = getArrayU8FromWasm0(r0, r1).slice();
146
+ wasm.__wbindgen_export4(r0, r1 * 1, 1);
147
+ return v2;
148
+ } finally {
149
+ wasm.__wbindgen_add_to_stack_pointer(16);
150
+ }
151
+ }
152
+ /**
153
+ * Add a highlight annotation over the given page rectangle.
154
+ * Rectangle in PDF user-space coordinates (origin bottom-left).
155
+ * Optional `color_hex` like `"#ffeb3b"`; default yellow if `None`.
156
+ * @param {number} page_index
157
+ * @param {number} x
158
+ * @param {number} y
159
+ * @param {number} w
160
+ * @param {number} h
161
+ * @param {string | null} [color_hex]
162
+ * @returns {Uint8Array}
163
+ */
164
+ addHighlight(page_index, x, y, w, h, color_hex) {
165
+ try {
166
+ const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);
167
+ var ptr0 = isLikeNone(color_hex) ? 0 : passStringToWasm0(color_hex, wasm.__wbindgen_export, wasm.__wbindgen_export2);
168
+ var len0 = WASM_VECTOR_LEN;
169
+ wasm.pdfdoc_addHighlight(retptr, this.__wbg_ptr, page_index, x, y, w, h, ptr0, len0);
170
+ var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);
171
+ var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);
172
+ var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);
173
+ var r3 = getDataViewMemory0().getInt32(retptr + 4 * 3, true);
174
+ if (r3) {
175
+ throw takeObject(r2);
176
+ }
177
+ var v2 = getArrayU8FromWasm0(r0, r1).slice();
178
+ wasm.__wbindgen_export4(r0, r1 * 1, 1);
179
+ return v2;
180
+ } finally {
181
+ wasm.__wbindgen_add_to_stack_pointer(16);
182
+ }
183
+ }
184
+ /**
185
+ * Add a sticky-note (text) annotation at the given page position.
186
+ * @param {number} page_index
187
+ * @param {number} x
188
+ * @param {number} y
189
+ * @param {string} contents
190
+ * @returns {Uint8Array}
191
+ */
192
+ addStickyNote(page_index, x, y, contents) {
193
+ try {
194
+ const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);
195
+ const ptr0 = passStringToWasm0(contents, wasm.__wbindgen_export, wasm.__wbindgen_export2);
196
+ const len0 = WASM_VECTOR_LEN;
197
+ wasm.pdfdoc_addStickyNote(retptr, this.__wbg_ptr, page_index, x, y, ptr0, len0);
198
+ var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);
199
+ var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);
200
+ var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);
201
+ var r3 = getDataViewMemory0().getInt32(retptr + 4 * 3, true);
202
+ if (r3) {
203
+ throw takeObject(r2);
204
+ }
205
+ var v2 = getArrayU8FromWasm0(r0, r1).slice();
206
+ wasm.__wbindgen_export4(r0, r1 * 1, 1);
207
+ return v2;
208
+ } finally {
209
+ wasm.__wbindgen_add_to_stack_pointer(16);
210
+ }
211
+ }
212
+ /**
213
+ * Apply a diagonal text watermark to every page.
214
+ * `opacity` in 0.0..=1.0. Default rotation 45 deg, default colour gray.
215
+ * @param {string} text
216
+ * @param {number} opacity
217
+ * @returns {Uint8Array}
218
+ */
219
+ addTextWatermark(text, opacity) {
220
+ try {
221
+ const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);
222
+ const ptr0 = passStringToWasm0(text, wasm.__wbindgen_export, wasm.__wbindgen_export2);
223
+ const len0 = WASM_VECTOR_LEN;
224
+ wasm.pdfdoc_addTextWatermark(retptr, this.__wbg_ptr, ptr0, len0, opacity);
225
+ var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);
226
+ var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);
227
+ var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);
228
+ var r3 = getDataViewMemory0().getInt32(retptr + 4 * 3, true);
229
+ if (r3) {
230
+ throw takeObject(r2);
231
+ }
232
+ var v2 = getArrayU8FromWasm0(r0, r1).slice();
233
+ wasm.__wbindgen_export4(r0, r1 * 1, 1);
234
+ return v2;
235
+ } finally {
236
+ wasm.__wbindgen_add_to_stack_pointer(16);
237
+ }
238
+ }
239
+ /**
240
+ * Re-encode all content streams with deflate compression. Removes
241
+ * no-op overhead. Returns the optimised PDF as a `Uint8Array`.
242
+ * @returns {Uint8Array}
243
+ */
244
+ compress() {
245
+ try {
246
+ const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);
247
+ wasm.pdfdoc_compress(retptr, this.__wbg_ptr);
248
+ var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);
249
+ var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);
250
+ var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);
251
+ var r3 = getDataViewMemory0().getInt32(retptr + 4 * 3, true);
252
+ if (r3) {
253
+ throw takeObject(r2);
254
+ }
255
+ var v1 = getArrayU8FromWasm0(r0, r1).slice();
256
+ wasm.__wbindgen_export4(r0, r1 * 1, 1);
257
+ return v1;
258
+ } finally {
259
+ wasm.__wbindgen_add_to_stack_pointer(16);
260
+ }
261
+ }
262
+ /**
263
+ * Convert this PDF to PDF/A-1b, PDF/A-2b, or PDF/A-3b.
264
+ *
265
+ * `level` must be "1b", "2b", or "3b".
266
+ * Returns the converted PDF as a `Uint8Array`.
267
+ * @param {string} level
268
+ * @returns {Uint8Array}
269
+ */
270
+ convertToPdfa(level) {
271
+ try {
272
+ const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);
273
+ const ptr0 = passStringToWasm0(level, wasm.__wbindgen_export, wasm.__wbindgen_export2);
274
+ const len0 = WASM_VECTOR_LEN;
275
+ wasm.pdfdoc_convertToPdfa(retptr, this.__wbg_ptr, ptr0, len0);
276
+ var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);
277
+ var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);
278
+ var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);
279
+ var r3 = getDataViewMemory0().getInt32(retptr + 4 * 3, true);
280
+ if (r3) {
281
+ throw takeObject(r2);
282
+ }
283
+ var v2 = getArrayU8FromWasm0(r0, r1).slice();
284
+ wasm.__wbindgen_export4(r0, r1 * 1, 1);
285
+ return v2;
286
+ } finally {
287
+ wasm.__wbindgen_add_to_stack_pointer(16);
288
+ }
289
+ }
290
+ /**
291
+ * Delete the listed pages (0-based) from the document.
292
+ * @param {Uint32Array} pages
293
+ * @returns {Uint8Array}
294
+ */
295
+ deletePages(pages) {
296
+ try {
297
+ const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);
298
+ const ptr0 = passArray32ToWasm0(pages, wasm.__wbindgen_export);
299
+ const len0 = WASM_VECTOR_LEN;
300
+ wasm.pdfdoc_deletePages(retptr, this.__wbg_ptr, ptr0, len0);
301
+ var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);
302
+ var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);
303
+ var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);
304
+ var r3 = getDataViewMemory0().getInt32(retptr + 4 * 3, true);
305
+ if (r3) {
306
+ throw takeObject(r2);
307
+ }
308
+ var v2 = getArrayU8FromWasm0(r0, r1).slice();
309
+ wasm.__wbindgen_export4(r0, r1 * 1, 1);
310
+ return v2;
311
+ } finally {
312
+ wasm.__wbindgen_add_to_stack_pointer(16);
313
+ }
314
+ }
315
+ /**
316
+ * DSS (Document Security Store) info as JSON, or null if absent.
317
+ * @returns {string | undefined}
318
+ */
319
+ dssInfo() {
320
+ try {
321
+ const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);
322
+ wasm.pdfdoc_dssInfo(retptr, this.__wbg_ptr);
323
+ var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);
324
+ var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);
325
+ let v1;
326
+ if (r0 !== 0) {
327
+ v1 = getStringFromWasm0(r0, r1).slice();
328
+ wasm.__wbindgen_export4(r0, r1 * 1, 1);
329
+ }
330
+ return v1;
331
+ } finally {
332
+ wasm.__wbindgen_add_to_stack_pointer(16);
333
+ }
334
+ }
335
+ /**
336
+ * Extract the listed pages (0-based) into a new document.
337
+ * Used to implement "split" workflows in the browser.
338
+ * @param {Uint32Array} pages
339
+ * @returns {Uint8Array}
340
+ */
341
+ extractPages(pages) {
342
+ try {
343
+ const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);
344
+ const ptr0 = passArray32ToWasm0(pages, wasm.__wbindgen_export);
345
+ const len0 = WASM_VECTOR_LEN;
346
+ wasm.pdfdoc_extractPages(retptr, this.__wbg_ptr, ptr0, len0);
347
+ var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);
348
+ var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);
349
+ var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);
350
+ var r3 = getDataViewMemory0().getInt32(retptr + 4 * 3, true);
351
+ if (r3) {
352
+ throw takeObject(r2);
353
+ }
354
+ var v2 = getArrayU8FromWasm0(r0, r1).slice();
355
+ wasm.__wbindgen_export4(r0, r1 * 1, 1);
356
+ return v2;
357
+ } finally {
358
+ wasm.__wbindgen_add_to_stack_pointer(16);
359
+ }
360
+ }
361
+ /**
362
+ * Flatten XFA form fields into static PDF content.
363
+ *
364
+ * Returns the flattened PDF as a `Uint8Array`.
365
+ * Throws if the document has no XFA stream or flattening fails.
366
+ * @returns {Uint8Array}
367
+ */
368
+ flattenXfa() {
369
+ try {
370
+ const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);
371
+ wasm.pdfdoc_flattenXfa(retptr, this.__wbg_ptr);
372
+ var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);
373
+ var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);
374
+ var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);
375
+ var r3 = getDataViewMemory0().getInt32(retptr + 4 * 3, true);
376
+ if (r3) {
377
+ throw takeObject(r2);
378
+ }
379
+ var v1 = getArrayU8FromWasm0(r0, r1).slice();
380
+ wasm.__wbindgen_export4(r0, r1 * 1, 1);
381
+ return v1;
382
+ } finally {
383
+ wasm.__wbindgen_add_to_stack_pointer(16);
384
+ }
385
+ }
386
+ /**
387
+ * Parse existing annotations on a page as JSON.
388
+ *
389
+ * Returns a JSON array of annotation objects.
390
+ * @param {number} page_index
391
+ * @returns {string}
392
+ */
393
+ getAnnotations(page_index) {
394
+ let deferred2_0;
395
+ let deferred2_1;
396
+ try {
397
+ const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);
398
+ wasm.pdfdoc_getAnnotations(retptr, this.__wbg_ptr, page_index);
399
+ var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);
400
+ var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);
401
+ var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);
402
+ var r3 = getDataViewMemory0().getInt32(retptr + 4 * 3, true);
403
+ var ptr1 = r0;
404
+ var len1 = r1;
405
+ if (r3) {
406
+ ptr1 = 0; len1 = 0;
407
+ throw takeObject(r2);
408
+ }
409
+ deferred2_0 = ptr1;
410
+ deferred2_1 = len1;
411
+ return getStringFromWasm0(ptr1, len1);
412
+ } finally {
413
+ wasm.__wbindgen_add_to_stack_pointer(16);
414
+ wasm.__wbindgen_export4(deferred2_0, deferred2_1, 1);
415
+ }
416
+ }
417
+ /**
418
+ * Text-run positions for a page.
419
+ *
420
+ * Returns a JSON array of `{text, x, y, width, height, fontSize}`
421
+ * objects in page space with origin at the top-left. Each entry is a
422
+ * contiguous text run emitted by the same PDF interpreter that drives the
423
+ * renderer, which keeps the selection overlay aligned with the canvas.
424
+ *
425
+ * ```js
426
+ * const runs = JSON.parse(doc.getTextPositions(0));
427
+ * // runs[i] = { text: "Hello world", x: 72.0, y: 100.0, width: 96.0, height: 12.0, fontSize: 12.0 }
428
+ * ```
429
+ * @param {number} page_index
430
+ * @returns {string}
431
+ */
432
+ getTextPositions(page_index) {
433
+ let deferred2_0;
434
+ let deferred2_1;
435
+ try {
436
+ const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);
437
+ wasm.pdfdoc_getTextPositions(retptr, this.__wbg_ptr, page_index);
438
+ var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);
439
+ var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);
440
+ var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);
441
+ var r3 = getDataViewMemory0().getInt32(retptr + 4 * 3, true);
442
+ var ptr1 = r0;
443
+ var len1 = r1;
444
+ if (r3) {
445
+ ptr1 = 0; len1 = 0;
446
+ throw takeObject(r2);
447
+ }
448
+ deferred2_0 = ptr1;
449
+ deferred2_1 = len1;
450
+ return getStringFromWasm0(ptr1, len1);
451
+ } finally {
452
+ wasm.__wbindgen_add_to_stack_pointer(16);
453
+ wasm.__wbindgen_export4(deferred2_0, deferred2_1, 1);
454
+ }
455
+ }
456
+ /**
457
+ * Check if the document has any signatures.
458
+ * @returns {boolean}
459
+ */
460
+ hasSignatures() {
461
+ const ret = wasm.pdfdoc_hasSignatures(this.__wbg_ptr);
462
+ return ret !== 0;
463
+ }
464
+ /**
465
+ * Merge another PDF document into this one.
466
+ *
467
+ * Returns the merged PDF as a `Uint8Array`.
468
+ * @param {Uint8Array} other
469
+ * @returns {Uint8Array}
470
+ */
471
+ merge(other) {
472
+ try {
473
+ const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);
474
+ const ptr0 = passArray8ToWasm0(other, wasm.__wbindgen_export);
475
+ const len0 = WASM_VECTOR_LEN;
476
+ wasm.pdfdoc_merge(retptr, this.__wbg_ptr, ptr0, len0);
477
+ var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);
478
+ var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);
479
+ var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);
480
+ var r3 = getDataViewMemory0().getInt32(retptr + 4 * 3, true);
481
+ if (r3) {
482
+ throw takeObject(r2);
483
+ }
484
+ var v2 = getArrayU8FromWasm0(r0, r1).slice();
485
+ wasm.__wbindgen_export4(r0, r1 * 1, 1);
486
+ return v2;
487
+ } finally {
488
+ wasm.__wbindgen_add_to_stack_pointer(16);
489
+ }
490
+ }
491
+ /**
492
+ * Document metadata as JSON.
493
+ * @returns {string}
494
+ */
495
+ metadata() {
496
+ let deferred1_0;
497
+ let deferred1_1;
498
+ try {
499
+ const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);
500
+ wasm.pdfdoc_metadata(retptr, this.__wbg_ptr);
501
+ var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);
502
+ var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);
503
+ deferred1_0 = r0;
504
+ deferred1_1 = r1;
505
+ return getStringFromWasm0(r0, r1);
506
+ } finally {
507
+ wasm.__wbindgen_add_to_stack_pointer(16);
508
+ wasm.__wbindgen_export4(deferred1_0, deferred1_1, 1);
509
+ }
510
+ }
511
+ /**
512
+ * Open a PDF from raw bytes.
513
+ * @param {Uint8Array} data
514
+ * @returns {PdfDoc}
515
+ */
516
+ static open(data) {
517
+ try {
518
+ const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);
519
+ const ptr0 = passArray8ToWasm0(data, wasm.__wbindgen_export);
520
+ const len0 = WASM_VECTOR_LEN;
521
+ wasm.pdfdoc_open(retptr, ptr0, len0);
522
+ var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);
523
+ var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);
524
+ var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);
525
+ if (r2) {
526
+ throw takeObject(r1);
527
+ }
528
+ return PdfDoc.__wrap(r0);
529
+ } finally {
530
+ wasm.__wbindgen_add_to_stack_pointer(16);
531
+ }
532
+ }
533
+ /**
534
+ * Number of pages.
535
+ * @returns {number}
536
+ */
537
+ pageCount() {
538
+ const ret = wasm.pdfdoc_pageCount(this.__wbg_ptr);
539
+ return ret >>> 0;
540
+ }
541
+ /**
542
+ * Get page height in PDF points.
543
+ * @param {number} page_index
544
+ * @returns {number}
545
+ */
546
+ pageHeight(page_index) {
547
+ const ret = wasm.pdfdoc_pageHeight(this.__wbg_ptr, page_index);
548
+ return ret;
549
+ }
550
+ /**
551
+ * Get page width in PDF points.
552
+ * @param {number} page_index
553
+ * @returns {number}
554
+ */
555
+ pageWidth(page_index) {
556
+ const ret = wasm.pdfdoc_pageWidth(this.__wbg_ptr, page_index);
557
+ return ret;
558
+ }
559
+ /**
560
+ * Permanently remove content within the given page rectangle.
561
+ * Coordinates in PDF user-space (origin bottom-left).
562
+ * @param {number} page_index
563
+ * @param {number} x
564
+ * @param {number} y
565
+ * @param {number} w
566
+ * @param {number} h
567
+ * @returns {Uint8Array}
568
+ */
569
+ redactRegion(page_index, x, y, w, h) {
570
+ try {
571
+ const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);
572
+ wasm.pdfdoc_redactRegion(retptr, this.__wbg_ptr, page_index, x, y, w, h);
573
+ var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);
574
+ var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);
575
+ var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);
576
+ var r3 = getDataViewMemory0().getInt32(retptr + 4 * 3, true);
577
+ if (r3) {
578
+ throw takeObject(r2);
579
+ }
580
+ var v1 = getArrayU8FromWasm0(r0, r1).slice();
581
+ wasm.__wbindgen_export4(r0, r1 * 1, 1);
582
+ return v1;
583
+ } finally {
584
+ wasm.__wbindgen_add_to_stack_pointer(16);
585
+ }
586
+ }
587
+ /**
588
+ * Search-and-redact: every match of `query` (literal text, case-sensitive)
589
+ * is permanently removed from every page.
590
+ * @param {string} query
591
+ * @returns {Uint8Array}
592
+ */
593
+ redactSearch(query) {
594
+ try {
595
+ const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);
596
+ const ptr0 = passStringToWasm0(query, wasm.__wbindgen_export, wasm.__wbindgen_export2);
597
+ const len0 = WASM_VECTOR_LEN;
598
+ wasm.pdfdoc_redactSearch(retptr, this.__wbg_ptr, ptr0, len0);
599
+ var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);
600
+ var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);
601
+ var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);
602
+ var r3 = getDataViewMemory0().getInt32(retptr + 4 * 3, true);
603
+ if (r3) {
604
+ throw takeObject(r2);
605
+ }
606
+ var v2 = getArrayU8FromWasm0(r0, r1).slice();
607
+ wasm.__wbindgen_export4(r0, r1 * 1, 1);
608
+ return v2;
609
+ } finally {
610
+ wasm.__wbindgen_add_to_stack_pointer(16);
611
+ }
612
+ }
613
+ /**
614
+ * Render a page to RGBA pixels.
615
+ *
616
+ * Returns a Uint8Array with layout: `[width:4LE][height:4LE][RGBA pixels...]`.
617
+ * Use with Canvas ImageData:
618
+ * ```js
619
+ * const raw = doc.renderPage(0, 1.5);
620
+ * const view = new DataView(raw.buffer);
621
+ * const w = view.getUint32(0, true);
622
+ * const h = view.getUint32(4, true);
623
+ * const pixels = raw.slice(8);
624
+ * const imageData = new ImageData(new Uint8ClampedArray(pixels), w, h);
625
+ * ctx.putImageData(imageData, 0, 0);
626
+ * ```
627
+ * @param {number} page_index
628
+ * @param {number} scale
629
+ * @returns {Uint8Array}
630
+ */
631
+ renderPage(page_index, scale) {
632
+ try {
633
+ const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);
634
+ wasm.pdfdoc_renderPage(retptr, this.__wbg_ptr, page_index, scale);
635
+ var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);
636
+ var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);
637
+ var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);
638
+ var r3 = getDataViewMemory0().getInt32(retptr + 4 * 3, true);
639
+ if (r3) {
640
+ throw takeObject(r2);
641
+ }
642
+ var v1 = getArrayU8FromWasm0(r0, r1).slice();
643
+ wasm.__wbindgen_export4(r0, r1 * 1, 1);
644
+ return v1;
645
+ } finally {
646
+ wasm.__wbindgen_add_to_stack_pointer(16);
647
+ }
648
+ }
649
+ /**
650
+ * Render a page directly to an HTML canvas element (wasm32 only).
651
+ *
652
+ * Calls `canvas.getContext("2d")`, sets the canvas dimensions to the
653
+ * rendered pixel size, and calls `putImageData` — no round-trip through
654
+ * a JS Uint8Array. XFA documents are auto-flattened before rendering.
655
+ *
656
+ * ```js
657
+ * const canvas = document.getElementById('viewer');
658
+ * await doc.renderPageToCanvas(canvas, 0, 1.5); // page 0, 108 DPI
659
+ * ```
660
+ * @param {HTMLCanvasElement} canvas
661
+ * @param {number} page_index
662
+ * @param {number} scale
663
+ */
664
+ renderPageToCanvas(canvas, page_index, scale) {
665
+ try {
666
+ const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);
667
+ wasm.pdfdoc_renderPageToCanvas(retptr, this.__wbg_ptr, addBorrowedObject(canvas), page_index, scale);
668
+ var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);
669
+ var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);
670
+ if (r1) {
671
+ throw takeObject(r0);
672
+ }
673
+ } finally {
674
+ wasm.__wbindgen_add_to_stack_pointer(16);
675
+ heap[stack_pointer++] = undefined;
676
+ }
677
+ }
678
+ /**
679
+ * Render a page using Canvas2D vector draw calls.
680
+ *
681
+ * Falls back to the raster renderer if the vector device hits an
682
+ * unsupported PDF feature.
683
+ * @param {HTMLCanvasElement} canvas
684
+ * @param {number} page_index
685
+ * @param {number} scale
686
+ */
687
+ renderPageToCanvasVector(canvas, page_index, scale) {
688
+ try {
689
+ const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);
690
+ wasm.pdfdoc_renderPageToCanvasVector(retptr, this.__wbg_ptr, addBorrowedObject(canvas), page_index, scale);
691
+ var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);
692
+ var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);
693
+ if (r1) {
694
+ throw takeObject(r0);
695
+ }
696
+ } finally {
697
+ wasm.__wbindgen_add_to_stack_pointer(16);
698
+ heap[stack_pointer++] = undefined;
699
+ }
700
+ }
701
+ /**
702
+ * Render a thumbnail constrained to a maximum dimension.
703
+ *
704
+ * Same return format as `renderPage`.
705
+ * @param {number} page_index
706
+ * @param {number} max_dimension
707
+ * @returns {Uint8Array}
708
+ */
709
+ renderThumbnail(page_index, max_dimension) {
710
+ try {
711
+ const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);
712
+ wasm.pdfdoc_renderThumbnail(retptr, this.__wbg_ptr, page_index, max_dimension);
713
+ var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);
714
+ var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);
715
+ var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);
716
+ var r3 = getDataViewMemory0().getInt32(retptr + 4 * 3, true);
717
+ if (r3) {
718
+ throw takeObject(r2);
719
+ }
720
+ var v1 = getArrayU8FromWasm0(r0, r1).slice();
721
+ wasm.__wbindgen_export4(r0, r1 * 1, 1);
722
+ return v1;
723
+ } finally {
724
+ wasm.__wbindgen_add_to_stack_pointer(16);
725
+ }
726
+ }
727
+ /**
728
+ * Re-order pages. `new_order` is a permutation of 0..pageCount.
729
+ * @param {Uint32Array} new_order
730
+ * @returns {Uint8Array}
731
+ */
732
+ reorderPages(new_order) {
733
+ try {
734
+ const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);
735
+ const ptr0 = passArray32ToWasm0(new_order, wasm.__wbindgen_export);
736
+ const len0 = WASM_VECTOR_LEN;
737
+ wasm.pdfdoc_reorderPages(retptr, this.__wbg_ptr, ptr0, len0);
738
+ var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);
739
+ var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);
740
+ var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);
741
+ var r3 = getDataViewMemory0().getInt32(retptr + 4 * 3, true);
742
+ if (r3) {
743
+ throw takeObject(r2);
744
+ }
745
+ var v2 = getArrayU8FromWasm0(r0, r1).slice();
746
+ wasm.__wbindgen_export4(r0, r1 * 1, 1);
747
+ return v2;
748
+ } finally {
749
+ wasm.__wbindgen_add_to_stack_pointer(16);
750
+ }
751
+ }
752
+ /**
753
+ * Rotate a single page by 90, 180, or 270 degrees (clockwise).
754
+ * `degrees` may be negative; values are normalised modulo 360.
755
+ * @param {number} page_index
756
+ * @param {number} degrees
757
+ * @returns {Uint8Array}
758
+ */
759
+ rotatePage(page_index, degrees) {
760
+ try {
761
+ const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);
762
+ wasm.pdfdoc_rotatePage(retptr, this.__wbg_ptr, page_index, degrees);
763
+ var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);
764
+ var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);
765
+ var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);
766
+ var r3 = getDataViewMemory0().getInt32(retptr + 4 * 3, true);
767
+ if (r3) {
768
+ throw takeObject(r2);
769
+ }
770
+ var v1 = getArrayU8FromWasm0(r0, r1).slice();
771
+ wasm.__wbindgen_export4(r0, r1 * 1, 1);
772
+ return v1;
773
+ } finally {
774
+ wasm.__wbindgen_add_to_stack_pointer(16);
775
+ }
776
+ }
777
+ /**
778
+ * Set a single AcroForm text-field value. Returns the new PDF bytes.
779
+ * @param {string} path
780
+ * @param {string} value
781
+ * @returns {Uint8Array}
782
+ */
783
+ setFormField(path, value) {
784
+ try {
785
+ const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);
786
+ const ptr0 = passStringToWasm0(path, wasm.__wbindgen_export, wasm.__wbindgen_export2);
787
+ const len0 = WASM_VECTOR_LEN;
788
+ const ptr1 = passStringToWasm0(value, wasm.__wbindgen_export, wasm.__wbindgen_export2);
789
+ const len1 = WASM_VECTOR_LEN;
790
+ wasm.pdfdoc_setFormField(retptr, this.__wbg_ptr, ptr0, len0, ptr1, len1);
791
+ var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);
792
+ var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);
793
+ var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);
794
+ var r3 = getDataViewMemory0().getInt32(retptr + 4 * 3, true);
795
+ if (r3) {
796
+ throw takeObject(r2);
797
+ }
798
+ var v3 = getArrayU8FromWasm0(r0, r1).slice();
799
+ wasm.__wbindgen_export4(r0, r1 * 1, 1);
800
+ return v3;
801
+ } finally {
802
+ wasm.__wbindgen_add_to_stack_pointer(16);
803
+ }
804
+ }
805
+ /**
806
+ * Bulk-set multiple AcroForm text fields from a JSON object
807
+ * `{"field.path": "value", ...}`. Returns the new PDF bytes.
808
+ * @param {string} fields_json
809
+ * @returns {Uint8Array}
810
+ */
811
+ setFormFields(fields_json) {
812
+ try {
813
+ const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);
814
+ const ptr0 = passStringToWasm0(fields_json, wasm.__wbindgen_export, wasm.__wbindgen_export2);
815
+ const len0 = WASM_VECTOR_LEN;
816
+ wasm.pdfdoc_setFormFields(retptr, this.__wbg_ptr, ptr0, len0);
817
+ var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);
818
+ var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);
819
+ var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);
820
+ var r3 = getDataViewMemory0().getInt32(retptr + 4 * 3, true);
821
+ if (r3) {
822
+ throw takeObject(r2);
823
+ }
824
+ var v2 = getArrayU8FromWasm0(r0, r1).slice();
825
+ wasm.__wbindgen_export4(r0, r1 * 1, 1);
826
+ return v2;
827
+ } finally {
828
+ wasm.__wbindgen_add_to_stack_pointer(16);
829
+ }
830
+ }
831
+ /**
832
+ * Signature info as JSON array.
833
+ * @returns {string}
834
+ */
835
+ signatures() {
836
+ let deferred1_0;
837
+ let deferred1_1;
838
+ try {
839
+ const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);
840
+ wasm.pdfdoc_signatures(retptr, this.__wbg_ptr);
841
+ var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);
842
+ var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);
843
+ deferred1_0 = r0;
844
+ deferred1_1 = r1;
845
+ return getStringFromWasm0(r0, r1);
846
+ } finally {
847
+ wasm.__wbindgen_add_to_stack_pointer(16);
848
+ wasm.__wbindgen_export4(deferred1_0, deferred1_1, 1);
849
+ }
850
+ }
851
+ /**
852
+ * Extract plain text from a page (0-based index).
853
+ *
854
+ * Returns an empty string if the page index is out of range or text
855
+ * extraction fails.
856
+ * @param {number} page_index
857
+ * @returns {string}
858
+ */
859
+ text(page_index) {
860
+ let deferred1_0;
861
+ let deferred1_1;
862
+ try {
863
+ const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);
864
+ wasm.pdfdoc_text(retptr, this.__wbg_ptr, page_index);
865
+ var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);
866
+ var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);
867
+ deferred1_0 = r0;
868
+ deferred1_1 = r1;
869
+ return getStringFromWasm0(r0, r1);
870
+ } finally {
871
+ wasm.__wbindgen_add_to_stack_pointer(16);
872
+ wasm.__wbindgen_export4(deferred1_0, deferred1_1, 1);
873
+ }
874
+ }
875
+ /**
876
+ * Validate against a PDF/A level. Returns compliance report as JSON.
877
+ * @param {string} level
878
+ * @returns {string}
879
+ */
880
+ validatePdfA(level) {
881
+ let deferred3_0;
882
+ let deferred3_1;
883
+ try {
884
+ const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);
885
+ const ptr0 = passStringToWasm0(level, wasm.__wbindgen_export, wasm.__wbindgen_export2);
886
+ const len0 = WASM_VECTOR_LEN;
887
+ wasm.pdfdoc_validatePdfA(retptr, this.__wbg_ptr, ptr0, len0);
888
+ var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);
889
+ var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);
890
+ var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);
891
+ var r3 = getDataViewMemory0().getInt32(retptr + 4 * 3, true);
892
+ var ptr2 = r0;
893
+ var len2 = r1;
894
+ if (r3) {
895
+ ptr2 = 0; len2 = 0;
896
+ throw takeObject(r2);
897
+ }
898
+ deferred3_0 = ptr2;
899
+ deferred3_1 = len2;
900
+ return getStringFromWasm0(ptr2, len2);
901
+ } finally {
902
+ wasm.__wbindgen_add_to_stack_pointer(16);
903
+ wasm.__wbindgen_export4(deferred3_0, deferred3_1, 1);
904
+ }
905
+ }
906
+ /**
907
+ * Verify all digital signatures in the document.
908
+ *
909
+ * Returns JSON array with verification results per signature.
910
+ * @returns {string}
911
+ */
912
+ verifySignatures() {
913
+ let deferred1_0;
914
+ let deferred1_1;
915
+ try {
916
+ const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);
917
+ wasm.pdfdoc_verifySignatures(retptr, this.__wbg_ptr);
918
+ var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);
919
+ var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);
920
+ deferred1_0 = r0;
921
+ deferred1_1 = r1;
922
+ return getStringFromWasm0(r0, r1);
923
+ } finally {
924
+ wasm.__wbindgen_add_to_stack_pointer(16);
925
+ wasm.__wbindgen_export4(deferred1_0, deferred1_1, 1);
926
+ }
927
+ }
928
+ }
929
+ if (Symbol.dispose) PdfDoc.prototype[Symbol.dispose] = PdfDoc.prototype.free;
930
+
931
+ /**
932
+ * Stateful editing handle.
933
+ *
934
+ * Construct with [`PdfDocMut::open`], apply any sequence of mutations
935
+ * (all `&mut self`), and finally call [`PdfDocMut::save`] to get the
936
+ * modified PDF bytes. `save` is non-consuming; you can continue
937
+ * editing after taking a snapshot.
938
+ */
939
+ export class PdfDocMut {
940
+ static __wrap(ptr) {
941
+ ptr = ptr >>> 0;
942
+ const obj = Object.create(PdfDocMut.prototype);
943
+ obj.__wbg_ptr = ptr;
944
+ PdfDocMutFinalization.register(obj, obj.__wbg_ptr, obj);
945
+ return obj;
946
+ }
947
+ __destroy_into_raw() {
948
+ const ptr = this.__wbg_ptr;
949
+ this.__wbg_ptr = 0;
950
+ PdfDocMutFinalization.unregister(this);
951
+ return ptr;
952
+ }
953
+ free() {
954
+ const ptr = this.__destroy_into_raw();
955
+ wasm.__wbg_pdfdocmut_free(ptr, 0);
956
+ }
957
+ /**
958
+ * Add a free-text annotation at the given page rectangle.
959
+ * @param {number} page_index
960
+ * @param {number} x
961
+ * @param {number} y
962
+ * @param {number} w
963
+ * @param {number} h
964
+ * @param {string} contents
965
+ */
966
+ addFreeText(page_index, x, y, w, h, contents) {
967
+ try {
968
+ const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);
969
+ const ptr0 = passStringToWasm0(contents, wasm.__wbindgen_export, wasm.__wbindgen_export2);
970
+ const len0 = WASM_VECTOR_LEN;
971
+ wasm.pdfdocmut_addFreeText(retptr, this.__wbg_ptr, page_index, x, y, w, h, ptr0, len0);
972
+ var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);
973
+ var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);
974
+ if (r1) {
975
+ throw takeObject(r0);
976
+ }
977
+ } finally {
978
+ wasm.__wbindgen_add_to_stack_pointer(16);
979
+ }
980
+ }
981
+ /**
982
+ * Add a highlight annotation over the given page rectangle.
983
+ * `color_hex` like `"#ffeb3b"` — defaults to yellow when `None`.
984
+ * @param {number} page_index
985
+ * @param {number} x
986
+ * @param {number} y
987
+ * @param {number} w
988
+ * @param {number} h
989
+ * @param {string | null} [color_hex]
990
+ */
991
+ addHighlight(page_index, x, y, w, h, color_hex) {
992
+ try {
993
+ const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);
994
+ var ptr0 = isLikeNone(color_hex) ? 0 : passStringToWasm0(color_hex, wasm.__wbindgen_export, wasm.__wbindgen_export2);
995
+ var len0 = WASM_VECTOR_LEN;
996
+ wasm.pdfdocmut_addHighlight(retptr, this.__wbg_ptr, page_index, x, y, w, h, ptr0, len0);
997
+ var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);
998
+ var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);
999
+ if (r1) {
1000
+ throw takeObject(r0);
1001
+ }
1002
+ } finally {
1003
+ wasm.__wbindgen_add_to_stack_pointer(16);
1004
+ }
1005
+ }
1006
+ /**
1007
+ * Add a sticky-note annotation at the given page position.
1008
+ * @param {number} page_index
1009
+ * @param {number} x
1010
+ * @param {number} y
1011
+ * @param {string} contents
1012
+ */
1013
+ addStickyNote(page_index, x, y, contents) {
1014
+ try {
1015
+ const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);
1016
+ const ptr0 = passStringToWasm0(contents, wasm.__wbindgen_export, wasm.__wbindgen_export2);
1017
+ const len0 = WASM_VECTOR_LEN;
1018
+ wasm.pdfdocmut_addStickyNote(retptr, this.__wbg_ptr, page_index, x, y, ptr0, len0);
1019
+ var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);
1020
+ var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);
1021
+ if (r1) {
1022
+ throw takeObject(r0);
1023
+ }
1024
+ } finally {
1025
+ wasm.__wbindgen_add_to_stack_pointer(16);
1026
+ }
1027
+ }
1028
+ /**
1029
+ * Apply a diagonal text watermark to every page.
1030
+ * @param {string} text
1031
+ * @param {number} opacity
1032
+ */
1033
+ addTextWatermark(text, opacity) {
1034
+ try {
1035
+ const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);
1036
+ const ptr0 = passStringToWasm0(text, wasm.__wbindgen_export, wasm.__wbindgen_export2);
1037
+ const len0 = WASM_VECTOR_LEN;
1038
+ wasm.pdfdocmut_addTextWatermark(retptr, this.__wbg_ptr, ptr0, len0, opacity);
1039
+ var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);
1040
+ var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);
1041
+ if (r1) {
1042
+ throw takeObject(r0);
1043
+ }
1044
+ } finally {
1045
+ wasm.__wbindgen_add_to_stack_pointer(16);
1046
+ }
1047
+ }
1048
+ /**
1049
+ * Re-encode content streams with deflate compression.
1050
+ */
1051
+ compress() {
1052
+ try {
1053
+ const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);
1054
+ wasm.pdfdocmut_compress(retptr, this.__wbg_ptr);
1055
+ var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);
1056
+ var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);
1057
+ if (r1) {
1058
+ throw takeObject(r0);
1059
+ }
1060
+ } finally {
1061
+ wasm.__wbindgen_add_to_stack_pointer(16);
1062
+ }
1063
+ }
1064
+ /**
1065
+ * Delete the listed pages (0-based) from the document.
1066
+ * @param {Uint32Array} pages
1067
+ */
1068
+ deletePages(pages) {
1069
+ try {
1070
+ const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);
1071
+ const ptr0 = passArray32ToWasm0(pages, wasm.__wbindgen_export);
1072
+ const len0 = WASM_VECTOR_LEN;
1073
+ wasm.pdfdocmut_deletePages(retptr, this.__wbg_ptr, ptr0, len0);
1074
+ var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);
1075
+ var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);
1076
+ if (r1) {
1077
+ throw takeObject(r0);
1078
+ }
1079
+ } finally {
1080
+ wasm.__wbindgen_add_to_stack_pointer(16);
1081
+ }
1082
+ }
1083
+ /**
1084
+ * Extract the listed pages (0-based) into a **new** document and
1085
+ * return its bytes. Leaves the current editing session untouched.
1086
+ *
1087
+ * Use for split-style workflows where the original keeps the full
1088
+ * set of pages and a subset is exported.
1089
+ * @param {Uint32Array} pages
1090
+ * @returns {Uint8Array}
1091
+ */
1092
+ extractPages(pages) {
1093
+ try {
1094
+ const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);
1095
+ const ptr0 = passArray32ToWasm0(pages, wasm.__wbindgen_export);
1096
+ const len0 = WASM_VECTOR_LEN;
1097
+ wasm.pdfdocmut_extractPages(retptr, this.__wbg_ptr, ptr0, len0);
1098
+ var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);
1099
+ var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);
1100
+ var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);
1101
+ var r3 = getDataViewMemory0().getInt32(retptr + 4 * 3, true);
1102
+ if (r3) {
1103
+ throw takeObject(r2);
1104
+ }
1105
+ var v2 = getArrayU8FromWasm0(r0, r1).slice();
1106
+ wasm.__wbindgen_export4(r0, r1 * 1, 1);
1107
+ return v2;
1108
+ } finally {
1109
+ wasm.__wbindgen_add_to_stack_pointer(16);
1110
+ }
1111
+ }
1112
+ /**
1113
+ * Open a PDF for editing.
1114
+ * @param {Uint8Array} bytes
1115
+ * @returns {PdfDocMut}
1116
+ */
1117
+ static open(bytes) {
1118
+ try {
1119
+ const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);
1120
+ const ptr0 = passArray8ToWasm0(bytes, wasm.__wbindgen_export);
1121
+ const len0 = WASM_VECTOR_LEN;
1122
+ wasm.pdfdocmut_open(retptr, ptr0, len0);
1123
+ var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);
1124
+ var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);
1125
+ var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);
1126
+ if (r2) {
1127
+ throw takeObject(r1);
1128
+ }
1129
+ return PdfDocMut.__wrap(r0);
1130
+ } finally {
1131
+ wasm.__wbindgen_add_to_stack_pointer(16);
1132
+ }
1133
+ }
1134
+ /**
1135
+ * Number of pages in the current document state.
1136
+ * @returns {number}
1137
+ */
1138
+ pageCount() {
1139
+ const ret = wasm.pdfdocmut_pageCount(this.__wbg_ptr);
1140
+ return ret >>> 0;
1141
+ }
1142
+ /**
1143
+ * Permanently remove content within the given page rectangle.
1144
+ * @param {number} page_index
1145
+ * @param {number} x
1146
+ * @param {number} y
1147
+ * @param {number} w
1148
+ * @param {number} h
1149
+ */
1150
+ redactRegion(page_index, x, y, w, h) {
1151
+ try {
1152
+ const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);
1153
+ wasm.pdfdocmut_redactRegion(retptr, this.__wbg_ptr, page_index, x, y, w, h);
1154
+ var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);
1155
+ var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);
1156
+ if (r1) {
1157
+ throw takeObject(r0);
1158
+ }
1159
+ } finally {
1160
+ wasm.__wbindgen_add_to_stack_pointer(16);
1161
+ }
1162
+ }
1163
+ /**
1164
+ * Search-and-redact: every literal match of `query` is permanently
1165
+ * removed from every page.
1166
+ * @param {string} query
1167
+ */
1168
+ redactSearch(query) {
1169
+ try {
1170
+ const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);
1171
+ const ptr0 = passStringToWasm0(query, wasm.__wbindgen_export, wasm.__wbindgen_export2);
1172
+ const len0 = WASM_VECTOR_LEN;
1173
+ wasm.pdfdocmut_redactSearch(retptr, this.__wbg_ptr, ptr0, len0);
1174
+ var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);
1175
+ var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);
1176
+ if (r1) {
1177
+ throw takeObject(r0);
1178
+ }
1179
+ } finally {
1180
+ wasm.__wbindgen_add_to_stack_pointer(16);
1181
+ }
1182
+ }
1183
+ /**
1184
+ * Re-order pages. `new_order` is a permutation of `0..page_count`.
1185
+ * @param {Uint32Array} new_order
1186
+ */
1187
+ reorderPages(new_order) {
1188
+ try {
1189
+ const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);
1190
+ const ptr0 = passArray32ToWasm0(new_order, wasm.__wbindgen_export);
1191
+ const len0 = WASM_VECTOR_LEN;
1192
+ wasm.pdfdocmut_reorderPages(retptr, this.__wbg_ptr, ptr0, len0);
1193
+ var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);
1194
+ var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);
1195
+ if (r1) {
1196
+ throw takeObject(r0);
1197
+ }
1198
+ } finally {
1199
+ wasm.__wbindgen_add_to_stack_pointer(16);
1200
+ }
1201
+ }
1202
+ /**
1203
+ * Rotate a single page by 90/180/270 (or negative). Multiples of 90 only.
1204
+ * @param {number} page_index
1205
+ * @param {number} degrees
1206
+ */
1207
+ rotatePage(page_index, degrees) {
1208
+ try {
1209
+ const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);
1210
+ wasm.pdfdocmut_rotatePage(retptr, this.__wbg_ptr, page_index, degrees);
1211
+ var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);
1212
+ var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);
1213
+ if (r1) {
1214
+ throw takeObject(r0);
1215
+ }
1216
+ } finally {
1217
+ wasm.__wbindgen_add_to_stack_pointer(16);
1218
+ }
1219
+ }
1220
+ /**
1221
+ * Serialise the current document state to a `Uint8Array`.
1222
+ *
1223
+ * Non-consuming: subsequent mutations are still possible on the
1224
+ * same handle.
1225
+ * @returns {Uint8Array}
1226
+ */
1227
+ save() {
1228
+ try {
1229
+ const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);
1230
+ wasm.pdfdocmut_save(retptr, this.__wbg_ptr);
1231
+ var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);
1232
+ var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);
1233
+ var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);
1234
+ var r3 = getDataViewMemory0().getInt32(retptr + 4 * 3, true);
1235
+ if (r3) {
1236
+ throw takeObject(r2);
1237
+ }
1238
+ var v1 = getArrayU8FromWasm0(r0, r1).slice();
1239
+ wasm.__wbindgen_export4(r0, r1 * 1, 1);
1240
+ return v1;
1241
+ } finally {
1242
+ wasm.__wbindgen_add_to_stack_pointer(16);
1243
+ }
1244
+ }
1245
+ /**
1246
+ * Set a single AcroForm text-field value.
1247
+ *
1248
+ * Note: pdfluent's high-level `PdfFormMut` requires a
1249
+ * `pdfluent::PdfDocument`. To stay in-place on this handle, we use
1250
+ * the lower-level lopdf walk via the `pdf-forms` engine. For 1.0,
1251
+ * this supports flat top-level field hierarchies (no `/Kids`
1252
+ * recursion) — same constraint as the Rust core.
1253
+ * @param {string} path
1254
+ * @param {string} value
1255
+ */
1256
+ setFormField(path, value) {
1257
+ try {
1258
+ const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);
1259
+ const ptr0 = passStringToWasm0(path, wasm.__wbindgen_export, wasm.__wbindgen_export2);
1260
+ const len0 = WASM_VECTOR_LEN;
1261
+ const ptr1 = passStringToWasm0(value, wasm.__wbindgen_export, wasm.__wbindgen_export2);
1262
+ const len1 = WASM_VECTOR_LEN;
1263
+ wasm.pdfdocmut_setFormField(retptr, this.__wbg_ptr, ptr0, len0, ptr1, len1);
1264
+ var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);
1265
+ var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);
1266
+ if (r1) {
1267
+ throw takeObject(r0);
1268
+ }
1269
+ } finally {
1270
+ wasm.__wbindgen_add_to_stack_pointer(16);
1271
+ }
1272
+ }
1273
+ /**
1274
+ * Bulk-set multiple AcroForm text fields from a JSON object
1275
+ * `{"field.path": "value", ...}`.
1276
+ * @param {string} fields_json
1277
+ */
1278
+ setFormFields(fields_json) {
1279
+ try {
1280
+ const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);
1281
+ const ptr0 = passStringToWasm0(fields_json, wasm.__wbindgen_export, wasm.__wbindgen_export2);
1282
+ const len0 = WASM_VECTOR_LEN;
1283
+ wasm.pdfdocmut_setFormFields(retptr, this.__wbg_ptr, ptr0, len0);
1284
+ var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);
1285
+ var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);
1286
+ if (r1) {
1287
+ throw takeObject(r0);
1288
+ }
1289
+ } finally {
1290
+ wasm.__wbindgen_add_to_stack_pointer(16);
1291
+ }
1292
+ }
1293
+ }
1294
+ if (Symbol.dispose) PdfDocMut.prototype[Symbol.dispose] = PdfDocMut.prototype.free;
1295
+
1296
+ /**
1297
+ * The main XFA processing engine for WASM.
1298
+ *
1299
+ * Holds a parsed FormTree and provides methods to extract/import data.
1300
+ */
1301
+ export class XfaEngine {
1302
+ static __wrap(ptr) {
1303
+ ptr = ptr >>> 0;
1304
+ const obj = Object.create(XfaEngine.prototype);
1305
+ obj.__wbg_ptr = ptr;
1306
+ XfaEngineFinalization.register(obj, obj.__wbg_ptr, obj);
1307
+ return obj;
1308
+ }
1309
+ __destroy_into_raw() {
1310
+ const ptr = this.__wbg_ptr;
1311
+ this.__wbg_ptr = 0;
1312
+ XfaEngineFinalization.unregister(this);
1313
+ return ptr;
1314
+ }
1315
+ free() {
1316
+ const ptr = this.__destroy_into_raw();
1317
+ wasm.__wbg_xfaengine_free(ptr, 0);
1318
+ }
1319
+ /**
1320
+ * Export all field values as a JSON string.
1321
+ *
1322
+ * Returns `{"form1.FieldName": "value", ...}`.
1323
+ * @returns {string}
1324
+ */
1325
+ exportJson() {
1326
+ let deferred2_0;
1327
+ let deferred2_1;
1328
+ try {
1329
+ const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);
1330
+ wasm.xfaengine_exportJson(retptr, this.__wbg_ptr);
1331
+ var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);
1332
+ var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);
1333
+ var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);
1334
+ var r3 = getDataViewMemory0().getInt32(retptr + 4 * 3, true);
1335
+ var ptr1 = r0;
1336
+ var len1 = r1;
1337
+ if (r3) {
1338
+ ptr1 = 0; len1 = 0;
1339
+ throw takeObject(r2);
1340
+ }
1341
+ deferred2_0 = ptr1;
1342
+ deferred2_1 = len1;
1343
+ return getStringFromWasm0(ptr1, len1);
1344
+ } finally {
1345
+ wasm.__wbindgen_add_to_stack_pointer(16);
1346
+ wasm.__wbindgen_export4(deferred2_0, deferred2_1, 1);
1347
+ }
1348
+ }
1349
+ /**
1350
+ * Export the form schema as a JSON string.
1351
+ *
1352
+ * Returns metadata about each field (name, type, constraints).
1353
+ * @returns {string}
1354
+ */
1355
+ exportSchema() {
1356
+ let deferred2_0;
1357
+ let deferred2_1;
1358
+ try {
1359
+ const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);
1360
+ wasm.xfaengine_exportSchema(retptr, this.__wbg_ptr);
1361
+ var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);
1362
+ var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);
1363
+ var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);
1364
+ var r3 = getDataViewMemory0().getInt32(retptr + 4 * 3, true);
1365
+ var ptr1 = r0;
1366
+ var len1 = r1;
1367
+ if (r3) {
1368
+ ptr1 = 0; len1 = 0;
1369
+ throw takeObject(r2);
1370
+ }
1371
+ deferred2_0 = ptr1;
1372
+ deferred2_1 = len1;
1373
+ return getStringFromWasm0(ptr1, len1);
1374
+ } finally {
1375
+ wasm.__wbindgen_add_to_stack_pointer(16);
1376
+ wasm.__wbindgen_export4(deferred2_0, deferred2_1, 1);
1377
+ }
1378
+ }
1379
+ /**
1380
+ * Create an XfaEngine from a JSON array of field definitions.
1381
+ *
1382
+ * Expected format:
1383
+ * ```json
1384
+ * [
1385
+ * {"name": "FieldName", "value": "initial value", "calculate": "optional script"},
1386
+ * ...
1387
+ * ]
1388
+ * ```
1389
+ * @param {string} fields_json
1390
+ * @returns {XfaEngine}
1391
+ */
1392
+ static fromFields(fields_json) {
1393
+ try {
1394
+ const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);
1395
+ const ptr0 = passStringToWasm0(fields_json, wasm.__wbindgen_export, wasm.__wbindgen_export2);
1396
+ const len0 = WASM_VECTOR_LEN;
1397
+ wasm.xfaengine_fromFields(retptr, ptr0, len0);
1398
+ var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);
1399
+ var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);
1400
+ var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);
1401
+ if (r2) {
1402
+ throw takeObject(r1);
1403
+ }
1404
+ return XfaEngine.__wrap(r0);
1405
+ } finally {
1406
+ wasm.__wbindgen_add_to_stack_pointer(16);
1407
+ }
1408
+ }
1409
+ /**
1410
+ * Create an XfaEngine from exported JSON data (e.g. from `exportJson`).
1411
+ *
1412
+ * Rebuilds the form tree from a flat field map.
1413
+ * @param {string} json_str
1414
+ * @returns {XfaEngine}
1415
+ */
1416
+ static fromJson(json_str) {
1417
+ try {
1418
+ const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);
1419
+ const ptr0 = passStringToWasm0(json_str, wasm.__wbindgen_export, wasm.__wbindgen_export2);
1420
+ const len0 = WASM_VECTOR_LEN;
1421
+ wasm.xfaengine_fromJson(retptr, ptr0, len0);
1422
+ var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);
1423
+ var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);
1424
+ var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);
1425
+ if (r2) {
1426
+ throw takeObject(r1);
1427
+ }
1428
+ return XfaEngine.__wrap(r0);
1429
+ } finally {
1430
+ wasm.__wbindgen_add_to_stack_pointer(16);
1431
+ }
1432
+ }
1433
+ /**
1434
+ * Get a single field value by SOM path (e.g., "form1.Name").
1435
+ * @param {string} path
1436
+ * @returns {string | undefined}
1437
+ */
1438
+ getFieldValue(path) {
1439
+ try {
1440
+ const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);
1441
+ const ptr0 = passStringToWasm0(path, wasm.__wbindgen_export, wasm.__wbindgen_export2);
1442
+ const len0 = WASM_VECTOR_LEN;
1443
+ wasm.xfaengine_getFieldValue(retptr, this.__wbg_ptr, ptr0, len0);
1444
+ var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);
1445
+ var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);
1446
+ let v2;
1447
+ if (r0 !== 0) {
1448
+ v2 = getStringFromWasm0(r0, r1).slice();
1449
+ wasm.__wbindgen_export4(r0, r1 * 1, 1);
1450
+ }
1451
+ return v2;
1452
+ } finally {
1453
+ wasm.__wbindgen_add_to_stack_pointer(16);
1454
+ }
1455
+ }
1456
+ /**
1457
+ * Import field values from a JSON string.
1458
+ *
1459
+ * Accepts either:
1460
+ * - `{"fields": {"form1.Name": "value"}}` (FormData format)
1461
+ * - `{"form1.Name": "value"}` (flat format)
1462
+ * @param {string} json_str
1463
+ */
1464
+ importJson(json_str) {
1465
+ try {
1466
+ const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);
1467
+ const ptr0 = passStringToWasm0(json_str, wasm.__wbindgen_export, wasm.__wbindgen_export2);
1468
+ const len0 = WASM_VECTOR_LEN;
1469
+ wasm.xfaengine_importJson(retptr, this.__wbg_ptr, ptr0, len0);
1470
+ var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);
1471
+ var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);
1472
+ if (r1) {
1473
+ throw takeObject(r0);
1474
+ }
1475
+ } finally {
1476
+ wasm.__wbindgen_add_to_stack_pointer(16);
1477
+ }
1478
+ }
1479
+ /**
1480
+ * Get the number of form nodes.
1481
+ * @returns {number}
1482
+ */
1483
+ nodeCount() {
1484
+ const ret = wasm.xfaengine_nodeCount(this.__wbg_ptr);
1485
+ return ret >>> 0;
1486
+ }
1487
+ /**
1488
+ * Run FormCalc calculate scripts to compute derived field values.
1489
+ */
1490
+ runCalculations() {
1491
+ try {
1492
+ const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);
1493
+ wasm.xfaengine_runCalculations(retptr, this.__wbg_ptr);
1494
+ var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);
1495
+ var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);
1496
+ if (r1) {
1497
+ throw takeObject(r0);
1498
+ }
1499
+ } finally {
1500
+ wasm.__wbindgen_add_to_stack_pointer(16);
1501
+ }
1502
+ }
1503
+ /**
1504
+ * Set a single field value by SOM path.
1505
+ * @param {string} path
1506
+ * @param {string} value
1507
+ * @returns {boolean}
1508
+ */
1509
+ setFieldValue(path, value) {
1510
+ const ptr0 = passStringToWasm0(path, wasm.__wbindgen_export, wasm.__wbindgen_export2);
1511
+ const len0 = WASM_VECTOR_LEN;
1512
+ const ptr1 = passStringToWasm0(value, wasm.__wbindgen_export, wasm.__wbindgen_export2);
1513
+ const len1 = WASM_VECTOR_LEN;
1514
+ const ret = wasm.xfaengine_setFieldValue(this.__wbg_ptr, ptr0, len0, ptr1, len1);
1515
+ return ret !== 0;
1516
+ }
1517
+ /**
1518
+ * Get engine version string.
1519
+ * @returns {string}
1520
+ */
1521
+ static version() {
1522
+ let deferred1_0;
1523
+ let deferred1_1;
1524
+ try {
1525
+ const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);
1526
+ wasm.xfaengine_version(retptr);
1527
+ var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);
1528
+ var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);
1529
+ deferred1_0 = r0;
1530
+ deferred1_1 = r1;
1531
+ return getStringFromWasm0(r0, r1);
1532
+ } finally {
1533
+ wasm.__wbindgen_add_to_stack_pointer(16);
1534
+ wasm.__wbindgen_export4(deferred1_0, deferred1_1, 1);
1535
+ }
1536
+ }
1537
+ }
1538
+ if (Symbol.dispose) XfaEngine.prototype[Symbol.dispose] = XfaEngine.prototype.free;
1539
+
1540
+ /**
1541
+ * Activate the process-global license from a key string.
1542
+ *
1543
+ * Throws on invalid key or if the process has already been activated to a
1544
+ * different tier this session.
1545
+ * @param {string} key
1546
+ */
1547
+ export function activateLicenseKey(key) {
1548
+ try {
1549
+ const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);
1550
+ const ptr0 = passStringToWasm0(key, wasm.__wbindgen_export, wasm.__wbindgen_export2);
1551
+ const len0 = WASM_VECTOR_LEN;
1552
+ wasm.activateLicenseKey(retptr, ptr0, len0);
1553
+ var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);
1554
+ var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);
1555
+ if (r1) {
1556
+ throw takeObject(r0);
1557
+ }
1558
+ } finally {
1559
+ wasm.__wbindgen_add_to_stack_pointer(16);
1560
+ }
1561
+ }
1562
+
1563
+ /**
1564
+ * Return the current license status. Always succeeds; defaults to Trial.
1565
+ * @returns {LicenseStatus}
1566
+ */
1567
+ export function licenseStatus() {
1568
+ const ret = wasm.licenseStatus();
1569
+ return LicenseStatus.__wrap(ret);
1570
+ }
1571
+
1572
+ function __wbg_get_imports() {
1573
+ const import0 = {
1574
+ __proto__: null,
1575
+ __wbg_Error_83742b46f01ce22d: function(arg0, arg1) {
1576
+ const ret = Error(getStringFromWasm0(arg0, arg1));
1577
+ return addHeapObject(ret);
1578
+ },
1579
+ __wbg___wbindgen_debug_string_5398f5bb970e0daa: function(arg0, arg1) {
1580
+ const ret = debugString(getObject(arg1));
1581
+ const ptr1 = passStringToWasm0(ret, wasm.__wbindgen_export, wasm.__wbindgen_export2);
1582
+ const len1 = WASM_VECTOR_LEN;
1583
+ getDataViewMemory0().setInt32(arg0 + 4 * 1, len1, true);
1584
+ getDataViewMemory0().setInt32(arg0 + 4 * 0, ptr1, true);
1585
+ },
1586
+ __wbg___wbindgen_throw_6ddd609b62940d55: function(arg0, arg1) {
1587
+ throw new Error(getStringFromWasm0(arg0, arg1));
1588
+ },
1589
+ __wbg_beginPath_596efed55075dbc3: function(arg0) {
1590
+ getObject(arg0).beginPath();
1591
+ },
1592
+ __wbg_bezierCurveTo_ee956cad5cea25b2: function(arg0, arg1, arg2, arg3, arg4, arg5, arg6) {
1593
+ getObject(arg0).bezierCurveTo(arg1, arg2, arg3, arg4, arg5, arg6);
1594
+ },
1595
+ __wbg_clearRect_ea4f3d34d76f4bc5: function(arg0, arg1, arg2, arg3, arg4) {
1596
+ getObject(arg0).clearRect(arg1, arg2, arg3, arg4);
1597
+ },
1598
+ __wbg_clip_307b93ada960ec4d: function(arg0, arg1) {
1599
+ getObject(arg0).clip(__wbindgen_enum_CanvasWindingRule[arg1]);
1600
+ },
1601
+ __wbg_closePath_f96bcae0fc7087a9: function(arg0) {
1602
+ getObject(arg0).closePath();
1603
+ },
1604
+ __wbg_fillRect_4e5596ca954226e7: function(arg0, arg1, arg2, arg3, arg4) {
1605
+ getObject(arg0).fillRect(arg1, arg2, arg3, arg4);
1606
+ },
1607
+ __wbg_fillText_b1722b6179692b85: function() { return handleError(function (arg0, arg1, arg2, arg3, arg4) {
1608
+ getObject(arg0).fillText(getStringFromWasm0(arg1, arg2), arg3, arg4);
1609
+ }, arguments); },
1610
+ __wbg_fill_e228aca002a2bbf7: function(arg0, arg1) {
1611
+ getObject(arg0).fill(__wbindgen_enum_CanvasWindingRule[arg1]);
1612
+ },
1613
+ __wbg_getContext_f04bf8f22dcb2d53: function() { return handleError(function (arg0, arg1, arg2) {
1614
+ const ret = getObject(arg0).getContext(getStringFromWasm0(arg1, arg2));
1615
+ return isLikeNone(ret) ? 0 : addHeapObject(ret);
1616
+ }, arguments); },
1617
+ __wbg_getRandomValues_3f44b700395062e5: function() { return handleError(function (arg0, arg1) {
1618
+ globalThis.crypto.getRandomValues(getArrayU8FromWasm0(arg0, arg1));
1619
+ }, arguments); },
1620
+ __wbg_instanceof_CanvasRenderingContext2d_08b9d193c22fa886: function(arg0) {
1621
+ let result;
1622
+ try {
1623
+ result = getObject(arg0) instanceof CanvasRenderingContext2D;
1624
+ } catch (_) {
1625
+ result = false;
1626
+ }
1627
+ const ret = result;
1628
+ return ret;
1629
+ },
1630
+ __wbg_lineTo_8ea7db5b5d763030: function(arg0, arg1, arg2) {
1631
+ getObject(arg0).lineTo(arg1, arg2);
1632
+ },
1633
+ __wbg_log_524eedafa26daa59: function(arg0) {
1634
+ console.log(getObject(arg0));
1635
+ },
1636
+ __wbg_moveTo_6d04ca2f71946754: function(arg0, arg1, arg2) {
1637
+ getObject(arg0).moveTo(arg1, arg2);
1638
+ },
1639
+ __wbg_new_a70fbab9066b301f: function() {
1640
+ const ret = new Array();
1641
+ return addHeapObject(ret);
1642
+ },
1643
+ __wbg_new_with_u8_clamped_array_and_sh_5d9be5b17e50951c: function() { return handleError(function (arg0, arg1, arg2, arg3) {
1644
+ const ret = new ImageData(getClampedArrayU8FromWasm0(arg0, arg1), arg2 >>> 0, arg3 >>> 0);
1645
+ return addHeapObject(ret);
1646
+ }, arguments); },
1647
+ __wbg_push_e87b0e732085a946: function(arg0, arg1) {
1648
+ const ret = getObject(arg0).push(getObject(arg1));
1649
+ return ret;
1650
+ },
1651
+ __wbg_putImageData_1750176f4dd07174: function() { return handleError(function (arg0, arg1, arg2, arg3) {
1652
+ getObject(arg0).putImageData(getObject(arg1), arg2, arg3);
1653
+ }, arguments); },
1654
+ __wbg_quadraticCurveTo_79b47836efb75da7: function(arg0, arg1, arg2, arg3, arg4) {
1655
+ getObject(arg0).quadraticCurveTo(arg1, arg2, arg3, arg4);
1656
+ },
1657
+ __wbg_resetTransform_3e32a3e235bd6a64: function() { return handleError(function (arg0) {
1658
+ getObject(arg0).resetTransform();
1659
+ }, arguments); },
1660
+ __wbg_restore_ec1ece47cce5dc64: function(arg0) {
1661
+ getObject(arg0).restore();
1662
+ },
1663
+ __wbg_save_c4e64a4ec29f000f: function(arg0) {
1664
+ getObject(arg0).save();
1665
+ },
1666
+ __wbg_setLineDash_b22b8de6051bb23a: function() { return handleError(function (arg0, arg1) {
1667
+ getObject(arg0).setLineDash(getObject(arg1));
1668
+ }, arguments); },
1669
+ __wbg_set_fillStyle_58417b6b548ae475: function(arg0, arg1, arg2) {
1670
+ getObject(arg0).fillStyle = getStringFromWasm0(arg1, arg2);
1671
+ },
1672
+ __wbg_set_font_b038797b3573ae5e: function(arg0, arg1, arg2) {
1673
+ getObject(arg0).font = getStringFromWasm0(arg1, arg2);
1674
+ },
1675
+ __wbg_set_globalAlpha_d51aa11e10f40cfc: function(arg0, arg1) {
1676
+ getObject(arg0).globalAlpha = arg1;
1677
+ },
1678
+ __wbg_set_globalCompositeOperation_ba0da38482e6aa11: function() { return handleError(function (arg0, arg1, arg2) {
1679
+ getObject(arg0).globalCompositeOperation = getStringFromWasm0(arg1, arg2);
1680
+ }, arguments); },
1681
+ __wbg_set_height_b6548a01bdcb689a: function(arg0, arg1) {
1682
+ getObject(arg0).height = arg1 >>> 0;
1683
+ },
1684
+ __wbg_set_lineCap_1ecf6c7ca9319eb2: function(arg0, arg1, arg2) {
1685
+ getObject(arg0).lineCap = getStringFromWasm0(arg1, arg2);
1686
+ },
1687
+ __wbg_set_lineDashOffset_3dc747fbfd1e7a15: function(arg0, arg1) {
1688
+ getObject(arg0).lineDashOffset = arg1;
1689
+ },
1690
+ __wbg_set_lineJoin_2c56d0d6bec26d27: function(arg0, arg1, arg2) {
1691
+ getObject(arg0).lineJoin = getStringFromWasm0(arg1, arg2);
1692
+ },
1693
+ __wbg_set_lineWidth_e38550ed429ec417: function(arg0, arg1) {
1694
+ getObject(arg0).lineWidth = arg1;
1695
+ },
1696
+ __wbg_set_miterLimit_59600cb9df94059b: function(arg0, arg1) {
1697
+ getObject(arg0).miterLimit = arg1;
1698
+ },
1699
+ __wbg_set_strokeStyle_a5baa9565d8b6485: function(arg0, arg1, arg2) {
1700
+ getObject(arg0).strokeStyle = getStringFromWasm0(arg1, arg2);
1701
+ },
1702
+ __wbg_set_width_c0fcaa2da53cd540: function(arg0, arg1) {
1703
+ getObject(arg0).width = arg1 >>> 0;
1704
+ },
1705
+ __wbg_strokeRect_2e20ce9870736fad: function(arg0, arg1, arg2, arg3, arg4) {
1706
+ getObject(arg0).strokeRect(arg1, arg2, arg3, arg4);
1707
+ },
1708
+ __wbg_strokeText_9f0af270c9810166: function() { return handleError(function (arg0, arg1, arg2, arg3, arg4) {
1709
+ getObject(arg0).strokeText(getStringFromWasm0(arg1, arg2), arg3, arg4);
1710
+ }, arguments); },
1711
+ __wbg_stroke_affa71c0888c6f31: function(arg0) {
1712
+ getObject(arg0).stroke();
1713
+ },
1714
+ __wbg_transform_d9d216c58f699bf9: function() { return handleError(function (arg0, arg1, arg2, arg3, arg4, arg5, arg6) {
1715
+ getObject(arg0).transform(arg1, arg2, arg3, arg4, arg5, arg6);
1716
+ }, arguments); },
1717
+ __wbg_warn_69424c2d92a2fa73: function(arg0) {
1718
+ console.warn(getObject(arg0));
1719
+ },
1720
+ __wbindgen_cast_0000000000000001: function(arg0) {
1721
+ // Cast intrinsic for `F64 -> Externref`.
1722
+ const ret = arg0;
1723
+ return addHeapObject(ret);
1724
+ },
1725
+ __wbindgen_cast_0000000000000002: function(arg0, arg1) {
1726
+ // Cast intrinsic for `Ref(String) -> Externref`.
1727
+ const ret = getStringFromWasm0(arg0, arg1);
1728
+ return addHeapObject(ret);
1729
+ },
1730
+ __wbindgen_object_drop_ref: function(arg0) {
1731
+ takeObject(arg0);
1732
+ },
1733
+ };
1734
+ return {
1735
+ __proto__: null,
1736
+ "./xfa_wasm_bg.js": import0,
1737
+ };
1738
+ }
1739
+
1740
+ const __wbindgen_enum_CanvasWindingRule = ["nonzero", "evenodd"];
1741
+ const LicenseStatusFinalization = (typeof FinalizationRegistry === 'undefined')
1742
+ ? { register: () => {}, unregister: () => {} }
1743
+ : new FinalizationRegistry(ptr => wasm.__wbg_licensestatus_free(ptr >>> 0, 1));
1744
+ const PdfDocFinalization = (typeof FinalizationRegistry === 'undefined')
1745
+ ? { register: () => {}, unregister: () => {} }
1746
+ : new FinalizationRegistry(ptr => wasm.__wbg_pdfdoc_free(ptr >>> 0, 1));
1747
+ const PdfDocMutFinalization = (typeof FinalizationRegistry === 'undefined')
1748
+ ? { register: () => {}, unregister: () => {} }
1749
+ : new FinalizationRegistry(ptr => wasm.__wbg_pdfdocmut_free(ptr >>> 0, 1));
1750
+ const XfaEngineFinalization = (typeof FinalizationRegistry === 'undefined')
1751
+ ? { register: () => {}, unregister: () => {} }
1752
+ : new FinalizationRegistry(ptr => wasm.__wbg_xfaengine_free(ptr >>> 0, 1));
1753
+
1754
+ function addHeapObject(obj) {
1755
+ if (heap_next === heap.length) heap.push(heap.length + 1);
1756
+ const idx = heap_next;
1757
+ heap_next = heap[idx];
1758
+
1759
+ heap[idx] = obj;
1760
+ return idx;
1761
+ }
1762
+
1763
+ function addBorrowedObject(obj) {
1764
+ if (stack_pointer == 1) throw new Error('out of js stack');
1765
+ heap[--stack_pointer] = obj;
1766
+ return stack_pointer;
1767
+ }
1768
+
1769
+ function debugString(val) {
1770
+ // primitive types
1771
+ const type = typeof val;
1772
+ if (type == 'number' || type == 'boolean' || val == null) {
1773
+ return `${val}`;
1774
+ }
1775
+ if (type == 'string') {
1776
+ return `"${val}"`;
1777
+ }
1778
+ if (type == 'symbol') {
1779
+ const description = val.description;
1780
+ if (description == null) {
1781
+ return 'Symbol';
1782
+ } else {
1783
+ return `Symbol(${description})`;
1784
+ }
1785
+ }
1786
+ if (type == 'function') {
1787
+ const name = val.name;
1788
+ if (typeof name == 'string' && name.length > 0) {
1789
+ return `Function(${name})`;
1790
+ } else {
1791
+ return 'Function';
1792
+ }
1793
+ }
1794
+ // objects
1795
+ if (Array.isArray(val)) {
1796
+ const length = val.length;
1797
+ let debug = '[';
1798
+ if (length > 0) {
1799
+ debug += debugString(val[0]);
1800
+ }
1801
+ for(let i = 1; i < length; i++) {
1802
+ debug += ', ' + debugString(val[i]);
1803
+ }
1804
+ debug += ']';
1805
+ return debug;
1806
+ }
1807
+ // Test for built-in
1808
+ const builtInMatches = /\[object ([^\]]+)\]/.exec(toString.call(val));
1809
+ let className;
1810
+ if (builtInMatches && builtInMatches.length > 1) {
1811
+ className = builtInMatches[1];
1812
+ } else {
1813
+ // Failed to match the standard '[object ClassName]'
1814
+ return toString.call(val);
1815
+ }
1816
+ if (className == 'Object') {
1817
+ // we're a user defined class or Object
1818
+ // JSON.stringify avoids problems with cycles, and is generally much
1819
+ // easier than looping through ownProperties of `val`.
1820
+ try {
1821
+ return 'Object(' + JSON.stringify(val) + ')';
1822
+ } catch (_) {
1823
+ return 'Object';
1824
+ }
1825
+ }
1826
+ // errors
1827
+ if (val instanceof Error) {
1828
+ return `${val.name}: ${val.message}\n${val.stack}`;
1829
+ }
1830
+ // TODO we could test for more things here, like `Set`s and `Map`s.
1831
+ return className;
1832
+ }
1833
+
1834
+ function dropObject(idx) {
1835
+ if (idx < 1028) return;
1836
+ heap[idx] = heap_next;
1837
+ heap_next = idx;
1838
+ }
1839
+
1840
+ function getArrayU8FromWasm0(ptr, len) {
1841
+ ptr = ptr >>> 0;
1842
+ return getUint8ArrayMemory0().subarray(ptr / 1, ptr / 1 + len);
1843
+ }
1844
+
1845
+ function getClampedArrayU8FromWasm0(ptr, len) {
1846
+ ptr = ptr >>> 0;
1847
+ return getUint8ClampedArrayMemory0().subarray(ptr / 1, ptr / 1 + len);
1848
+ }
1849
+
1850
+ let cachedDataViewMemory0 = null;
1851
+ function getDataViewMemory0() {
1852
+ if (cachedDataViewMemory0 === null || cachedDataViewMemory0.buffer.detached === true || (cachedDataViewMemory0.buffer.detached === undefined && cachedDataViewMemory0.buffer !== wasm.memory.buffer)) {
1853
+ cachedDataViewMemory0 = new DataView(wasm.memory.buffer);
1854
+ }
1855
+ return cachedDataViewMemory0;
1856
+ }
1857
+
1858
+ function getStringFromWasm0(ptr, len) {
1859
+ ptr = ptr >>> 0;
1860
+ return decodeText(ptr, len);
1861
+ }
1862
+
1863
+ let cachedUint32ArrayMemory0 = null;
1864
+ function getUint32ArrayMemory0() {
1865
+ if (cachedUint32ArrayMemory0 === null || cachedUint32ArrayMemory0.byteLength === 0) {
1866
+ cachedUint32ArrayMemory0 = new Uint32Array(wasm.memory.buffer);
1867
+ }
1868
+ return cachedUint32ArrayMemory0;
1869
+ }
1870
+
1871
+ let cachedUint8ArrayMemory0 = null;
1872
+ function getUint8ArrayMemory0() {
1873
+ if (cachedUint8ArrayMemory0 === null || cachedUint8ArrayMemory0.byteLength === 0) {
1874
+ cachedUint8ArrayMemory0 = new Uint8Array(wasm.memory.buffer);
1875
+ }
1876
+ return cachedUint8ArrayMemory0;
1877
+ }
1878
+
1879
+ let cachedUint8ClampedArrayMemory0 = null;
1880
+ function getUint8ClampedArrayMemory0() {
1881
+ if (cachedUint8ClampedArrayMemory0 === null || cachedUint8ClampedArrayMemory0.byteLength === 0) {
1882
+ cachedUint8ClampedArrayMemory0 = new Uint8ClampedArray(wasm.memory.buffer);
1883
+ }
1884
+ return cachedUint8ClampedArrayMemory0;
1885
+ }
1886
+
1887
+ function getObject(idx) { return heap[idx]; }
1888
+
1889
+ function handleError(f, args) {
1890
+ try {
1891
+ return f.apply(this, args);
1892
+ } catch (e) {
1893
+ wasm.__wbindgen_export3(addHeapObject(e));
1894
+ }
1895
+ }
1896
+
1897
+ let heap = new Array(1024).fill(undefined);
1898
+ heap.push(undefined, null, true, false);
1899
+
1900
+ let heap_next = heap.length;
1901
+
1902
+ function isLikeNone(x) {
1903
+ return x === undefined || x === null;
1904
+ }
1905
+
1906
+ function passArray32ToWasm0(arg, malloc) {
1907
+ const ptr = malloc(arg.length * 4, 4) >>> 0;
1908
+ getUint32ArrayMemory0().set(arg, ptr / 4);
1909
+ WASM_VECTOR_LEN = arg.length;
1910
+ return ptr;
1911
+ }
1912
+
1913
+ function passArray8ToWasm0(arg, malloc) {
1914
+ const ptr = malloc(arg.length * 1, 1) >>> 0;
1915
+ getUint8ArrayMemory0().set(arg, ptr / 1);
1916
+ WASM_VECTOR_LEN = arg.length;
1917
+ return ptr;
1918
+ }
1919
+
1920
+ function passStringToWasm0(arg, malloc, realloc) {
1921
+ if (realloc === undefined) {
1922
+ const buf = cachedTextEncoder.encode(arg);
1923
+ const ptr = malloc(buf.length, 1) >>> 0;
1924
+ getUint8ArrayMemory0().subarray(ptr, ptr + buf.length).set(buf);
1925
+ WASM_VECTOR_LEN = buf.length;
1926
+ return ptr;
1927
+ }
1928
+
1929
+ let len = arg.length;
1930
+ let ptr = malloc(len, 1) >>> 0;
1931
+
1932
+ const mem = getUint8ArrayMemory0();
1933
+
1934
+ let offset = 0;
1935
+
1936
+ for (; offset < len; offset++) {
1937
+ const code = arg.charCodeAt(offset);
1938
+ if (code > 0x7F) break;
1939
+ mem[ptr + offset] = code;
1940
+ }
1941
+ if (offset !== len) {
1942
+ if (offset !== 0) {
1943
+ arg = arg.slice(offset);
1944
+ }
1945
+ ptr = realloc(ptr, len, len = offset + arg.length * 3, 1) >>> 0;
1946
+ const view = getUint8ArrayMemory0().subarray(ptr + offset, ptr + len);
1947
+ const ret = cachedTextEncoder.encodeInto(arg, view);
1948
+
1949
+ offset += ret.written;
1950
+ ptr = realloc(ptr, len, offset, 1) >>> 0;
1951
+ }
1952
+
1953
+ WASM_VECTOR_LEN = offset;
1954
+ return ptr;
1955
+ }
1956
+
1957
+ let stack_pointer = 1024;
1958
+
1959
+ function takeObject(idx) {
1960
+ const ret = getObject(idx);
1961
+ dropObject(idx);
1962
+ return ret;
1963
+ }
1964
+
1965
+ let cachedTextDecoder = new TextDecoder('utf-8', { ignoreBOM: true, fatal: true });
1966
+ cachedTextDecoder.decode();
1967
+ const MAX_SAFARI_DECODE_BYTES = 2146435072;
1968
+ let numBytesDecoded = 0;
1969
+ function decodeText(ptr, len) {
1970
+ numBytesDecoded += len;
1971
+ if (numBytesDecoded >= MAX_SAFARI_DECODE_BYTES) {
1972
+ cachedTextDecoder = new TextDecoder('utf-8', { ignoreBOM: true, fatal: true });
1973
+ cachedTextDecoder.decode();
1974
+ numBytesDecoded = len;
1975
+ }
1976
+ return cachedTextDecoder.decode(getUint8ArrayMemory0().subarray(ptr, ptr + len));
1977
+ }
1978
+
1979
+ const cachedTextEncoder = new TextEncoder();
1980
+
1981
+ if (!('encodeInto' in cachedTextEncoder)) {
1982
+ cachedTextEncoder.encodeInto = function (arg, view) {
1983
+ const buf = cachedTextEncoder.encode(arg);
1984
+ view.set(buf);
1985
+ return {
1986
+ read: arg.length,
1987
+ written: buf.length
1988
+ };
1989
+ };
1990
+ }
1991
+
1992
+ let WASM_VECTOR_LEN = 0;
1993
+
1994
+ let wasmModule, wasm;
1995
+ function __wbg_finalize_init(instance, module) {
1996
+ wasm = instance.exports;
1997
+ wasmModule = module;
1998
+ cachedDataViewMemory0 = null;
1999
+ cachedUint32ArrayMemory0 = null;
2000
+ cachedUint8ArrayMemory0 = null;
2001
+ cachedUint8ClampedArrayMemory0 = null;
2002
+ return wasm;
2003
+ }
2004
+
2005
+ async function __wbg_load(module, imports) {
2006
+ if (typeof Response === 'function' && module instanceof Response) {
2007
+ if (typeof WebAssembly.instantiateStreaming === 'function') {
2008
+ try {
2009
+ return await WebAssembly.instantiateStreaming(module, imports);
2010
+ } catch (e) {
2011
+ const validResponse = module.ok && expectedResponseType(module.type);
2012
+
2013
+ if (validResponse && module.headers.get('Content-Type') !== 'application/wasm') {
2014
+ console.warn("`WebAssembly.instantiateStreaming` failed because your server does not serve Wasm with `application/wasm` MIME type. Falling back to `WebAssembly.instantiate` which is slower. Original error:\n", e);
2015
+
2016
+ } else { throw e; }
2017
+ }
2018
+ }
2019
+
2020
+ const bytes = await module.arrayBuffer();
2021
+ return await WebAssembly.instantiate(bytes, imports);
2022
+ } else {
2023
+ const instance = await WebAssembly.instantiate(module, imports);
2024
+
2025
+ if (instance instanceof WebAssembly.Instance) {
2026
+ return { instance, module };
2027
+ } else {
2028
+ return instance;
2029
+ }
2030
+ }
2031
+
2032
+ function expectedResponseType(type) {
2033
+ switch (type) {
2034
+ case 'basic': case 'cors': case 'default': return true;
2035
+ }
2036
+ return false;
2037
+ }
2038
+ }
2039
+
2040
+ function initSync(module) {
2041
+ if (wasm !== undefined) return wasm;
2042
+
2043
+
2044
+ if (module !== undefined) {
2045
+ if (Object.getPrototypeOf(module) === Object.prototype) {
2046
+ ({module} = module)
2047
+ } else {
2048
+ console.warn('using deprecated parameters for `initSync()`; pass a single object instead')
2049
+ }
2050
+ }
2051
+
2052
+ const imports = __wbg_get_imports();
2053
+ if (!(module instanceof WebAssembly.Module)) {
2054
+ module = new WebAssembly.Module(module);
2055
+ }
2056
+ const instance = new WebAssembly.Instance(module, imports);
2057
+ return __wbg_finalize_init(instance, module);
2058
+ }
2059
+
2060
+ async function __wbg_init(module_or_path) {
2061
+ if (wasm !== undefined) return wasm;
2062
+
2063
+
2064
+ if (module_or_path !== undefined) {
2065
+ if (Object.getPrototypeOf(module_or_path) === Object.prototype) {
2066
+ ({module_or_path} = module_or_path)
2067
+ } else {
2068
+ console.warn('using deprecated parameters for the initialization function; pass a single object instead')
2069
+ }
2070
+ }
2071
+
2072
+ if (module_or_path === undefined) {
2073
+ module_or_path = new URL('xfa_wasm_bg.wasm', import.meta.url);
2074
+ }
2075
+ const imports = __wbg_get_imports();
2076
+
2077
+ if (typeof module_or_path === 'string' || (typeof Request === 'function' && module_or_path instanceof Request) || (typeof URL === 'function' && module_or_path instanceof URL)) {
2078
+ module_or_path = fetch(module_or_path);
2079
+ }
2080
+
2081
+ const { instance, module } = await __wbg_load(await module_or_path, imports);
2082
+
2083
+ return __wbg_finalize_init(instance, module);
2084
+ }
2085
+
2086
+ export { initSync, __wbg_init as default };