@json-eval-rs/node 0.0.29

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.
@@ -0,0 +1,2284 @@
1
+
2
+ let imports = {};
3
+ imports['__wbindgen_placeholder__'] = module.exports;
4
+
5
+ let cachedUint8ArrayMemory0 = null;
6
+
7
+ function getUint8ArrayMemory0() {
8
+ if (cachedUint8ArrayMemory0 === null || cachedUint8ArrayMemory0.byteLength === 0) {
9
+ cachedUint8ArrayMemory0 = new Uint8Array(wasm.memory.buffer);
10
+ }
11
+ return cachedUint8ArrayMemory0;
12
+ }
13
+
14
+ let cachedTextDecoder = new TextDecoder('utf-8', { ignoreBOM: true, fatal: true });
15
+
16
+ cachedTextDecoder.decode();
17
+
18
+ function decodeText(ptr, len) {
19
+ return cachedTextDecoder.decode(getUint8ArrayMemory0().subarray(ptr, ptr + len));
20
+ }
21
+
22
+ function getStringFromWasm0(ptr, len) {
23
+ ptr = ptr >>> 0;
24
+ return decodeText(ptr, len);
25
+ }
26
+
27
+ let heap = new Array(128).fill(undefined);
28
+
29
+ heap.push(undefined, null, true, false);
30
+
31
+ let heap_next = heap.length;
32
+
33
+ function addHeapObject(obj) {
34
+ if (heap_next === heap.length) heap.push(heap.length + 1);
35
+ const idx = heap_next;
36
+ heap_next = heap[idx];
37
+
38
+ heap[idx] = obj;
39
+ return idx;
40
+ }
41
+
42
+ function getObject(idx) { return heap[idx]; }
43
+
44
+ let WASM_VECTOR_LEN = 0;
45
+
46
+ const cachedTextEncoder = new TextEncoder();
47
+
48
+ if (!('encodeInto' in cachedTextEncoder)) {
49
+ cachedTextEncoder.encodeInto = function (arg, view) {
50
+ const buf = cachedTextEncoder.encode(arg);
51
+ view.set(buf);
52
+ return {
53
+ read: arg.length,
54
+ written: buf.length
55
+ };
56
+ }
57
+ }
58
+
59
+ function passStringToWasm0(arg, malloc, realloc) {
60
+
61
+ if (realloc === undefined) {
62
+ const buf = cachedTextEncoder.encode(arg);
63
+ const ptr = malloc(buf.length, 1) >>> 0;
64
+ getUint8ArrayMemory0().subarray(ptr, ptr + buf.length).set(buf);
65
+ WASM_VECTOR_LEN = buf.length;
66
+ return ptr;
67
+ }
68
+
69
+ let len = arg.length;
70
+ let ptr = malloc(len, 1) >>> 0;
71
+
72
+ const mem = getUint8ArrayMemory0();
73
+
74
+ let offset = 0;
75
+
76
+ for (; offset < len; offset++) {
77
+ const code = arg.charCodeAt(offset);
78
+ if (code > 0x7F) break;
79
+ mem[ptr + offset] = code;
80
+ }
81
+
82
+ if (offset !== len) {
83
+ if (offset !== 0) {
84
+ arg = arg.slice(offset);
85
+ }
86
+ ptr = realloc(ptr, len, len = offset + arg.length * 3, 1) >>> 0;
87
+ const view = getUint8ArrayMemory0().subarray(ptr + offset, ptr + len);
88
+ const ret = cachedTextEncoder.encodeInto(arg, view);
89
+
90
+ offset += ret.written;
91
+ ptr = realloc(ptr, len, offset, 1) >>> 0;
92
+ }
93
+
94
+ WASM_VECTOR_LEN = offset;
95
+ return ptr;
96
+ }
97
+
98
+ let cachedDataViewMemory0 = null;
99
+
100
+ function getDataViewMemory0() {
101
+ if (cachedDataViewMemory0 === null || cachedDataViewMemory0.buffer.detached === true || (cachedDataViewMemory0.buffer.detached === undefined && cachedDataViewMemory0.buffer !== wasm.memory.buffer)) {
102
+ cachedDataViewMemory0 = new DataView(wasm.memory.buffer);
103
+ }
104
+ return cachedDataViewMemory0;
105
+ }
106
+
107
+ function getArrayU8FromWasm0(ptr, len) {
108
+ ptr = ptr >>> 0;
109
+ return getUint8ArrayMemory0().subarray(ptr / 1, ptr / 1 + len);
110
+ }
111
+
112
+ function handleError(f, args) {
113
+ try {
114
+ return f.apply(this, args);
115
+ } catch (e) {
116
+ wasm.__wbindgen_export_3(addHeapObject(e));
117
+ }
118
+ }
119
+
120
+ function dropObject(idx) {
121
+ if (idx < 132) return;
122
+ heap[idx] = heap_next;
123
+ heap_next = idx;
124
+ }
125
+
126
+ function takeObject(idx) {
127
+ const ret = getObject(idx);
128
+ dropObject(idx);
129
+ return ret;
130
+ }
131
+
132
+ function debugString(val) {
133
+ // primitive types
134
+ const type = typeof val;
135
+ if (type == 'number' || type == 'boolean' || val == null) {
136
+ return `${val}`;
137
+ }
138
+ if (type == 'string') {
139
+ return `"${val}"`;
140
+ }
141
+ if (type == 'symbol') {
142
+ const description = val.description;
143
+ if (description == null) {
144
+ return 'Symbol';
145
+ } else {
146
+ return `Symbol(${description})`;
147
+ }
148
+ }
149
+ if (type == 'function') {
150
+ const name = val.name;
151
+ if (typeof name == 'string' && name.length > 0) {
152
+ return `Function(${name})`;
153
+ } else {
154
+ return 'Function';
155
+ }
156
+ }
157
+ // objects
158
+ if (Array.isArray(val)) {
159
+ const length = val.length;
160
+ let debug = '[';
161
+ if (length > 0) {
162
+ debug += debugString(val[0]);
163
+ }
164
+ for(let i = 1; i < length; i++) {
165
+ debug += ', ' + debugString(val[i]);
166
+ }
167
+ debug += ']';
168
+ return debug;
169
+ }
170
+ // Test for built-in
171
+ const builtInMatches = /\[object ([^\]]+)\]/.exec(toString.call(val));
172
+ let className;
173
+ if (builtInMatches && builtInMatches.length > 1) {
174
+ className = builtInMatches[1];
175
+ } else {
176
+ // Failed to match the standard '[object ClassName]'
177
+ return toString.call(val);
178
+ }
179
+ if (className == 'Object') {
180
+ // we're a user defined class or Object
181
+ // JSON.stringify avoids problems with cycles, and is generally much
182
+ // easier than looping through ownProperties of `val`.
183
+ try {
184
+ return 'Object(' + JSON.stringify(val) + ')';
185
+ } catch (_) {
186
+ return 'Object';
187
+ }
188
+ }
189
+ // errors
190
+ if (val instanceof Error) {
191
+ return `${val.name}: ${val.message}\n${val.stack}`;
192
+ }
193
+ // TODO we could test for more things here, like `Set`s and `Map`s.
194
+ return className;
195
+ }
196
+
197
+ function isLikeNone(x) {
198
+ return x === undefined || x === null;
199
+ }
200
+
201
+ function getArrayJsValueFromWasm0(ptr, len) {
202
+ ptr = ptr >>> 0;
203
+ const mem = getDataViewMemory0();
204
+ const result = [];
205
+ for (let i = ptr; i < ptr + 4 * len; i += 4) {
206
+ result.push(takeObject(mem.getUint32(i, true)));
207
+ }
208
+ return result;
209
+ }
210
+ /**
211
+ * Get the library version
212
+ * @returns {string}
213
+ */
214
+ exports.getVersion = function() {
215
+ let deferred1_0;
216
+ let deferred1_1;
217
+ try {
218
+ const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);
219
+ wasm.getVersion(retptr);
220
+ var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);
221
+ var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);
222
+ deferred1_0 = r0;
223
+ deferred1_1 = r1;
224
+ return getStringFromWasm0(r0, r1);
225
+ } finally {
226
+ wasm.__wbindgen_add_to_stack_pointer(16);
227
+ wasm.__wbindgen_export_2(deferred1_0, deferred1_1, 1);
228
+ }
229
+ };
230
+
231
+ /**
232
+ * Get library version (alias)
233
+ * @returns {string}
234
+ */
235
+ exports.version = function() {
236
+ let deferred1_0;
237
+ let deferred1_1;
238
+ try {
239
+ const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);
240
+ wasm.getVersion(retptr);
241
+ var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);
242
+ var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);
243
+ deferred1_0 = r0;
244
+ deferred1_1 = r1;
245
+ return getStringFromWasm0(r0, r1);
246
+ } finally {
247
+ wasm.__wbindgen_add_to_stack_pointer(16);
248
+ wasm.__wbindgen_export_2(deferred1_0, deferred1_1, 1);
249
+ }
250
+ };
251
+
252
+ /**
253
+ * Initialize the library (sets up panic hook)
254
+ */
255
+ exports.init = function() {
256
+ wasm.init();
257
+ };
258
+
259
+ function passArray8ToWasm0(arg, malloc) {
260
+ const ptr = malloc(arg.length * 1, 1) >>> 0;
261
+ getUint8ArrayMemory0().set(arg, ptr / 1);
262
+ WASM_VECTOR_LEN = arg.length;
263
+ return ptr;
264
+ }
265
+
266
+ function passArrayJsValueToWasm0(array, malloc) {
267
+ const ptr = malloc(array.length * 4, 4) >>> 0;
268
+ const mem = getDataViewMemory0();
269
+ for (let i = 0; i < array.length; i++) {
270
+ mem.setUint32(ptr + 4 * i, addHeapObject(array[i]), true);
271
+ }
272
+ WASM_VECTOR_LEN = array.length;
273
+ return ptr;
274
+ }
275
+
276
+ const JSONEvalWasmFinalization = (typeof FinalizationRegistry === 'undefined')
277
+ ? { register: () => {}, unregister: () => {} }
278
+ : new FinalizationRegistry(ptr => wasm.__wbg_jsonevalwasm_free(ptr >>> 0, 1));
279
+ /**
280
+ * WebAssembly wrapper for JSONEval
281
+ */
282
+ class JSONEvalWasm {
283
+
284
+ static __wrap(ptr) {
285
+ ptr = ptr >>> 0;
286
+ const obj = Object.create(JSONEvalWasm.prototype);
287
+ obj.__wbg_ptr = ptr;
288
+ JSONEvalWasmFinalization.register(obj, obj.__wbg_ptr, obj);
289
+ return obj;
290
+ }
291
+
292
+ __destroy_into_raw() {
293
+ const ptr = this.__wbg_ptr;
294
+ this.__wbg_ptr = 0;
295
+ JSONEvalWasmFinalization.unregister(this);
296
+ return ptr;
297
+ }
298
+
299
+ free() {
300
+ const ptr = this.__destroy_into_raw();
301
+ wasm.__wbg_jsonevalwasm_free(ptr, 0);
302
+ }
303
+ /**
304
+ * Create a new JSONEval instance
305
+ *
306
+ * @param schema - JSON schema string
307
+ * @param context - Optional context data JSON string
308
+ * @param data - Optional initial data JSON string
309
+ * @param {string} schema
310
+ * @param {string | null} [context]
311
+ * @param {string | null} [data]
312
+ */
313
+ constructor(schema, context, data) {
314
+ try {
315
+ const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);
316
+ const ptr0 = passStringToWasm0(schema, wasm.__wbindgen_export_0, wasm.__wbindgen_export_1);
317
+ const len0 = WASM_VECTOR_LEN;
318
+ var ptr1 = isLikeNone(context) ? 0 : passStringToWasm0(context, wasm.__wbindgen_export_0, wasm.__wbindgen_export_1);
319
+ var len1 = WASM_VECTOR_LEN;
320
+ var ptr2 = isLikeNone(data) ? 0 : passStringToWasm0(data, wasm.__wbindgen_export_0, wasm.__wbindgen_export_1);
321
+ var len2 = WASM_VECTOR_LEN;
322
+ wasm.jsonevalwasm_new(retptr, ptr0, len0, ptr1, len1, ptr2, len2);
323
+ var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);
324
+ var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);
325
+ var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);
326
+ if (r2) {
327
+ throw takeObject(r1);
328
+ }
329
+ this.__wbg_ptr = r0 >>> 0;
330
+ JSONEvalWasmFinalization.register(this, this.__wbg_ptr, this);
331
+ return this;
332
+ } finally {
333
+ wasm.__wbindgen_add_to_stack_pointer(16);
334
+ }
335
+ }
336
+ /**
337
+ * Create a new JSONEval instance from MessagePack-encoded schema
338
+ *
339
+ * @param schemaMsgpack - MessagePack-encoded schema bytes (Uint8Array)
340
+ * @param context - Optional context data JSON string
341
+ * @param data - Optional initial data JSON string
342
+ * @param {Uint8Array} schema_msgpack
343
+ * @param {string | null} [context]
344
+ * @param {string | null} [data]
345
+ * @returns {JSONEvalWasm}
346
+ */
347
+ static newFromMsgpack(schema_msgpack, context, data) {
348
+ try {
349
+ const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);
350
+ const ptr0 = passArray8ToWasm0(schema_msgpack, wasm.__wbindgen_export_0);
351
+ const len0 = WASM_VECTOR_LEN;
352
+ var ptr1 = isLikeNone(context) ? 0 : passStringToWasm0(context, wasm.__wbindgen_export_0, wasm.__wbindgen_export_1);
353
+ var len1 = WASM_VECTOR_LEN;
354
+ var ptr2 = isLikeNone(data) ? 0 : passStringToWasm0(data, wasm.__wbindgen_export_0, wasm.__wbindgen_export_1);
355
+ var len2 = WASM_VECTOR_LEN;
356
+ wasm.jsonevalwasm_newFromMsgpack(retptr, ptr0, len0, ptr1, len1, ptr2, len2);
357
+ var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);
358
+ var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);
359
+ var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);
360
+ if (r2) {
361
+ throw takeObject(r1);
362
+ }
363
+ return JSONEvalWasm.__wrap(r0);
364
+ } finally {
365
+ wasm.__wbindgen_add_to_stack_pointer(16);
366
+ }
367
+ }
368
+ /**
369
+ * Create a new JSONEval instance from a cached ParsedSchema
370
+ *
371
+ * @param cacheKey - Cache key to lookup in the global ParsedSchemaCache
372
+ * @param context - Optional context data JSON string
373
+ * @param data - Optional initial data JSON string
374
+ * @param {string} cache_key
375
+ * @param {string | null} [context]
376
+ * @param {string | null} [data]
377
+ * @returns {JSONEvalWasm}
378
+ */
379
+ static newFromCache(cache_key, context, data) {
380
+ try {
381
+ const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);
382
+ const ptr0 = passStringToWasm0(cache_key, wasm.__wbindgen_export_0, wasm.__wbindgen_export_1);
383
+ const len0 = WASM_VECTOR_LEN;
384
+ var ptr1 = isLikeNone(context) ? 0 : passStringToWasm0(context, wasm.__wbindgen_export_0, wasm.__wbindgen_export_1);
385
+ var len1 = WASM_VECTOR_LEN;
386
+ var ptr2 = isLikeNone(data) ? 0 : passStringToWasm0(data, wasm.__wbindgen_export_0, wasm.__wbindgen_export_1);
387
+ var len2 = WASM_VECTOR_LEN;
388
+ wasm.jsonevalwasm_newFromCache(retptr, ptr0, len0, ptr1, len1, ptr2, len2);
389
+ var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);
390
+ var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);
391
+ var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);
392
+ if (r2) {
393
+ throw takeObject(r1);
394
+ }
395
+ return JSONEvalWasm.__wrap(r0);
396
+ } finally {
397
+ wasm.__wbindgen_add_to_stack_pointer(16);
398
+ }
399
+ }
400
+ /**
401
+ * Evaluate schema with provided data (does not return schema - use getEvaluatedSchema() for that)
402
+ *
403
+ * @param data - JSON data string
404
+ * @param context - Optional context data JSON string
405
+ * @throws Error if evaluation fails
406
+ * @param {string} data
407
+ * @param {string | null} [context]
408
+ */
409
+ evaluate(data, context) {
410
+ try {
411
+ const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);
412
+ const ptr0 = passStringToWasm0(data, wasm.__wbindgen_export_0, wasm.__wbindgen_export_1);
413
+ const len0 = WASM_VECTOR_LEN;
414
+ var ptr1 = isLikeNone(context) ? 0 : passStringToWasm0(context, wasm.__wbindgen_export_0, wasm.__wbindgen_export_1);
415
+ var len1 = WASM_VECTOR_LEN;
416
+ wasm.jsonevalwasm_evaluate(retptr, this.__wbg_ptr, ptr0, len0, ptr1, len1);
417
+ var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);
418
+ var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);
419
+ if (r1) {
420
+ throw takeObject(r0);
421
+ }
422
+ } finally {
423
+ wasm.__wbindgen_add_to_stack_pointer(16);
424
+ }
425
+ }
426
+ /**
427
+ * Evaluate and return as JsValue for direct JavaScript object access
428
+ *
429
+ * @param data - JSON data string
430
+ * @param context - Optional context data JSON string
431
+ * @returns Evaluated schema as JavaScript object
432
+ * @param {string} data
433
+ * @param {string | null} [context]
434
+ * @returns {any}
435
+ */
436
+ evaluateJS(data, context) {
437
+ try {
438
+ const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);
439
+ const ptr0 = passStringToWasm0(data, wasm.__wbindgen_export_0, wasm.__wbindgen_export_1);
440
+ const len0 = WASM_VECTOR_LEN;
441
+ var ptr1 = isLikeNone(context) ? 0 : passStringToWasm0(context, wasm.__wbindgen_export_0, wasm.__wbindgen_export_1);
442
+ var len1 = WASM_VECTOR_LEN;
443
+ wasm.jsonevalwasm_evaluateJS(retptr, this.__wbg_ptr, ptr0, len0, ptr1, len1);
444
+ var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);
445
+ var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);
446
+ var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);
447
+ if (r2) {
448
+ throw takeObject(r1);
449
+ }
450
+ return takeObject(r0);
451
+ } finally {
452
+ wasm.__wbindgen_add_to_stack_pointer(16);
453
+ }
454
+ }
455
+ /**
456
+ * Evaluate dependents when a field changes (returns array of changes as JSON string)
457
+ *
458
+ * @param changedPath - Path of the field that changed
459
+ * @param data - Optional updated JSON data string
460
+ * @param context - Optional context data JSON string
461
+ * @returns Array of dependent change objects as JSON string
462
+ * @param {string} changed_path
463
+ * @param {string | null} [data]
464
+ * @param {string | null} [context]
465
+ * @returns {string}
466
+ */
467
+ evaluateDependents(changed_path, data, context) {
468
+ let deferred5_0;
469
+ let deferred5_1;
470
+ try {
471
+ const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);
472
+ const ptr0 = passStringToWasm0(changed_path, wasm.__wbindgen_export_0, wasm.__wbindgen_export_1);
473
+ const len0 = WASM_VECTOR_LEN;
474
+ var ptr1 = isLikeNone(data) ? 0 : passStringToWasm0(data, wasm.__wbindgen_export_0, wasm.__wbindgen_export_1);
475
+ var len1 = WASM_VECTOR_LEN;
476
+ var ptr2 = isLikeNone(context) ? 0 : passStringToWasm0(context, wasm.__wbindgen_export_0, wasm.__wbindgen_export_1);
477
+ var len2 = WASM_VECTOR_LEN;
478
+ wasm.jsonevalwasm_evaluateDependents(retptr, this.__wbg_ptr, ptr0, len0, ptr1, len1, ptr2, len2);
479
+ var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);
480
+ var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);
481
+ var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);
482
+ var r3 = getDataViewMemory0().getInt32(retptr + 4 * 3, true);
483
+ var ptr4 = r0;
484
+ var len4 = r1;
485
+ if (r3) {
486
+ ptr4 = 0; len4 = 0;
487
+ throw takeObject(r2);
488
+ }
489
+ deferred5_0 = ptr4;
490
+ deferred5_1 = len4;
491
+ return getStringFromWasm0(ptr4, len4);
492
+ } finally {
493
+ wasm.__wbindgen_add_to_stack_pointer(16);
494
+ wasm.__wbindgen_export_2(deferred5_0, deferred5_1, 1);
495
+ }
496
+ }
497
+ /**
498
+ * Evaluate dependents and return as JavaScript object
499
+ *
500
+ * @param changedPathsJson - JSON array of field paths that changed
501
+ * @param data - Optional updated JSON data string
502
+ * @param context - Optional context data JSON string
503
+ * @param reEvaluate - If true, performs full evaluation after processing dependents
504
+ * @returns Array of dependent change objects as JavaScript object
505
+ * @param {string} changed_paths_json
506
+ * @param {string | null | undefined} data
507
+ * @param {string | null | undefined} context
508
+ * @param {boolean} re_evaluate
509
+ * @returns {any}
510
+ */
511
+ evaluateDependentsJS(changed_paths_json, data, context, re_evaluate) {
512
+ try {
513
+ const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);
514
+ const ptr0 = passStringToWasm0(changed_paths_json, wasm.__wbindgen_export_0, wasm.__wbindgen_export_1);
515
+ const len0 = WASM_VECTOR_LEN;
516
+ var ptr1 = isLikeNone(data) ? 0 : passStringToWasm0(data, wasm.__wbindgen_export_0, wasm.__wbindgen_export_1);
517
+ var len1 = WASM_VECTOR_LEN;
518
+ var ptr2 = isLikeNone(context) ? 0 : passStringToWasm0(context, wasm.__wbindgen_export_0, wasm.__wbindgen_export_1);
519
+ var len2 = WASM_VECTOR_LEN;
520
+ wasm.jsonevalwasm_evaluateDependentsJS(retptr, this.__wbg_ptr, ptr0, len0, ptr1, len1, ptr2, len2, re_evaluate);
521
+ var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);
522
+ var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);
523
+ var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);
524
+ if (r2) {
525
+ throw takeObject(r1);
526
+ }
527
+ return takeObject(r0);
528
+ } finally {
529
+ wasm.__wbindgen_add_to_stack_pointer(16);
530
+ }
531
+ }
532
+ /**
533
+ * Compile and run JSON logic from a JSON logic string
534
+ * @param logic_str - JSON logic expression as a string
535
+ * @param data - Optional JSON data string
536
+ * @param context - Optional JSON context string
537
+ * @returns Result as JavaScript object
538
+ * @param {string} logic_str
539
+ * @param {string | null} [data]
540
+ * @param {string | null} [context]
541
+ * @returns {any}
542
+ */
543
+ compileAndRunLogic(logic_str, data, context) {
544
+ try {
545
+ const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);
546
+ const ptr0 = passStringToWasm0(logic_str, wasm.__wbindgen_export_0, wasm.__wbindgen_export_1);
547
+ const len0 = WASM_VECTOR_LEN;
548
+ var ptr1 = isLikeNone(data) ? 0 : passStringToWasm0(data, wasm.__wbindgen_export_0, wasm.__wbindgen_export_1);
549
+ var len1 = WASM_VECTOR_LEN;
550
+ var ptr2 = isLikeNone(context) ? 0 : passStringToWasm0(context, wasm.__wbindgen_export_0, wasm.__wbindgen_export_1);
551
+ var len2 = WASM_VECTOR_LEN;
552
+ wasm.jsonevalwasm_compileAndRunLogic(retptr, this.__wbg_ptr, ptr0, len0, ptr1, len1, ptr2, len2);
553
+ var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);
554
+ var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);
555
+ var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);
556
+ if (r2) {
557
+ throw takeObject(r1);
558
+ }
559
+ return takeObject(r0);
560
+ } finally {
561
+ wasm.__wbindgen_add_to_stack_pointer(16);
562
+ }
563
+ }
564
+ /**
565
+ * Compile JSON logic and return a global ID
566
+ * @param logic_str - JSON logic expression as a string
567
+ * @returns Compiled logic ID as number (u64)
568
+ * @param {string} logic_str
569
+ * @returns {number}
570
+ */
571
+ compileLogic(logic_str) {
572
+ try {
573
+ const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);
574
+ const ptr0 = passStringToWasm0(logic_str, wasm.__wbindgen_export_0, wasm.__wbindgen_export_1);
575
+ const len0 = WASM_VECTOR_LEN;
576
+ wasm.jsonevalwasm_compileLogic(retptr, this.__wbg_ptr, ptr0, len0);
577
+ var r0 = getDataViewMemory0().getFloat64(retptr + 8 * 0, true);
578
+ var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);
579
+ var r3 = getDataViewMemory0().getInt32(retptr + 4 * 3, true);
580
+ if (r3) {
581
+ throw takeObject(r2);
582
+ }
583
+ return r0;
584
+ } finally {
585
+ wasm.__wbindgen_add_to_stack_pointer(16);
586
+ }
587
+ }
588
+ /**
589
+ * Run pre-compiled logic by ID
590
+ * @param logic_id - Compiled logic ID from compileLogic
591
+ * @param data - Optional JSON data string
592
+ * @param context - Optional JSON context string
593
+ * @returns Result as JavaScript object
594
+ * @param {number} logic_id
595
+ * @param {string | null} [data]
596
+ * @param {string | null} [context]
597
+ * @returns {any}
598
+ */
599
+ runLogic(logic_id, data, context) {
600
+ try {
601
+ const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);
602
+ var ptr0 = isLikeNone(data) ? 0 : passStringToWasm0(data, wasm.__wbindgen_export_0, wasm.__wbindgen_export_1);
603
+ var len0 = WASM_VECTOR_LEN;
604
+ var ptr1 = isLikeNone(context) ? 0 : passStringToWasm0(context, wasm.__wbindgen_export_0, wasm.__wbindgen_export_1);
605
+ var len1 = WASM_VECTOR_LEN;
606
+ wasm.jsonevalwasm_runLogic(retptr, this.__wbg_ptr, logic_id, ptr0, len0, ptr1, len1);
607
+ var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);
608
+ var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);
609
+ var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);
610
+ if (r2) {
611
+ throw takeObject(r1);
612
+ }
613
+ return takeObject(r0);
614
+ } finally {
615
+ wasm.__wbindgen_add_to_stack_pointer(16);
616
+ }
617
+ }
618
+ /**
619
+ * Validate data against schema rules
620
+ *
621
+ * @param data - JSON data string
622
+ * @param context - Optional context data JSON string
623
+ * @returns ValidationResult
624
+ * @param {string} data
625
+ * @param {string | null} [context]
626
+ * @returns {ValidationResult}
627
+ */
628
+ validate(data, context) {
629
+ try {
630
+ const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);
631
+ const ptr0 = passStringToWasm0(data, wasm.__wbindgen_export_0, wasm.__wbindgen_export_1);
632
+ const len0 = WASM_VECTOR_LEN;
633
+ var ptr1 = isLikeNone(context) ? 0 : passStringToWasm0(context, wasm.__wbindgen_export_0, wasm.__wbindgen_export_1);
634
+ var len1 = WASM_VECTOR_LEN;
635
+ wasm.jsonevalwasm_validate(retptr, this.__wbg_ptr, ptr0, len0, ptr1, len1);
636
+ var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);
637
+ var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);
638
+ var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);
639
+ if (r2) {
640
+ throw takeObject(r1);
641
+ }
642
+ return ValidationResult.__wrap(r0);
643
+ } finally {
644
+ wasm.__wbindgen_add_to_stack_pointer(16);
645
+ }
646
+ }
647
+ /**
648
+ * Validate data and return as plain JavaScript object (Worker-safe)
649
+ *
650
+ * @param data - JSON data string
651
+ * @param context - Optional context data JSON string
652
+ * @returns Plain JavaScript object with validation result
653
+ * @param {string} data
654
+ * @param {string | null} [context]
655
+ * @returns {any}
656
+ */
657
+ validateJS(data, context) {
658
+ try {
659
+ const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);
660
+ const ptr0 = passStringToWasm0(data, wasm.__wbindgen_export_0, wasm.__wbindgen_export_1);
661
+ const len0 = WASM_VECTOR_LEN;
662
+ var ptr1 = isLikeNone(context) ? 0 : passStringToWasm0(context, wasm.__wbindgen_export_0, wasm.__wbindgen_export_1);
663
+ var len1 = WASM_VECTOR_LEN;
664
+ wasm.jsonevalwasm_validateJS(retptr, this.__wbg_ptr, ptr0, len0, ptr1, len1);
665
+ var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);
666
+ var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);
667
+ var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);
668
+ if (r2) {
669
+ throw takeObject(r1);
670
+ }
671
+ return takeObject(r0);
672
+ } finally {
673
+ wasm.__wbindgen_add_to_stack_pointer(16);
674
+ }
675
+ }
676
+ /**
677
+ * Validate data against schema rules with optional path filtering
678
+ *
679
+ * @param data - JSON data string
680
+ * @param context - Optional context data JSON string
681
+ * @param paths - Optional array of paths to validate (null for all)
682
+ * @returns ValidationResult
683
+ * @param {string} data
684
+ * @param {string | null} [context]
685
+ * @param {string[] | null} [paths]
686
+ * @returns {ValidationResult}
687
+ */
688
+ validatePaths(data, context, paths) {
689
+ try {
690
+ const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);
691
+ const ptr0 = passStringToWasm0(data, wasm.__wbindgen_export_0, wasm.__wbindgen_export_1);
692
+ const len0 = WASM_VECTOR_LEN;
693
+ var ptr1 = isLikeNone(context) ? 0 : passStringToWasm0(context, wasm.__wbindgen_export_0, wasm.__wbindgen_export_1);
694
+ var len1 = WASM_VECTOR_LEN;
695
+ var ptr2 = isLikeNone(paths) ? 0 : passArrayJsValueToWasm0(paths, wasm.__wbindgen_export_0);
696
+ var len2 = WASM_VECTOR_LEN;
697
+ wasm.jsonevalwasm_validatePaths(retptr, this.__wbg_ptr, ptr0, len0, ptr1, len1, ptr2, len2);
698
+ var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);
699
+ var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);
700
+ var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);
701
+ if (r2) {
702
+ throw takeObject(r1);
703
+ }
704
+ return ValidationResult.__wrap(r0);
705
+ } finally {
706
+ wasm.__wbindgen_add_to_stack_pointer(16);
707
+ }
708
+ }
709
+ /**
710
+ * Validate with path filtering and return as plain JavaScript object (Worker-safe)
711
+ *
712
+ * @param data - JSON data string
713
+ * @param context - Optional context data JSON string
714
+ * @param paths - Optional array of paths to validate (null for all)
715
+ * @returns Plain JavaScript object with validation result
716
+ * @param {string} data
717
+ * @param {string | null} [context]
718
+ * @param {string[] | null} [paths]
719
+ * @returns {any}
720
+ */
721
+ validatePathsJS(data, context, paths) {
722
+ try {
723
+ const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);
724
+ const ptr0 = passStringToWasm0(data, wasm.__wbindgen_export_0, wasm.__wbindgen_export_1);
725
+ const len0 = WASM_VECTOR_LEN;
726
+ var ptr1 = isLikeNone(context) ? 0 : passStringToWasm0(context, wasm.__wbindgen_export_0, wasm.__wbindgen_export_1);
727
+ var len1 = WASM_VECTOR_LEN;
728
+ var ptr2 = isLikeNone(paths) ? 0 : passArrayJsValueToWasm0(paths, wasm.__wbindgen_export_0);
729
+ var len2 = WASM_VECTOR_LEN;
730
+ wasm.jsonevalwasm_validatePathsJS(retptr, this.__wbg_ptr, ptr0, len0, ptr1, len1, ptr2, len2);
731
+ var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);
732
+ var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);
733
+ var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);
734
+ if (r2) {
735
+ throw takeObject(r1);
736
+ }
737
+ return takeObject(r0);
738
+ } finally {
739
+ wasm.__wbindgen_add_to_stack_pointer(16);
740
+ }
741
+ }
742
+ /**
743
+ * Get the evaluated schema with optional layout resolution
744
+ *
745
+ * @param skipLayout - Whether to skip layout resolution
746
+ * @returns Evaluated schema as JSON string
747
+ * @param {boolean} skip_layout
748
+ * @returns {string}
749
+ */
750
+ getEvaluatedSchema(skip_layout) {
751
+ let deferred1_0;
752
+ let deferred1_1;
753
+ try {
754
+ const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);
755
+ wasm.jsonevalwasm_getEvaluatedSchema(retptr, this.__wbg_ptr, skip_layout);
756
+ var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);
757
+ var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);
758
+ deferred1_0 = r0;
759
+ deferred1_1 = r1;
760
+ return getStringFromWasm0(r0, r1);
761
+ } finally {
762
+ wasm.__wbindgen_add_to_stack_pointer(16);
763
+ wasm.__wbindgen_export_2(deferred1_0, deferred1_1, 1);
764
+ }
765
+ }
766
+ /**
767
+ * Get the evaluated schema as JavaScript object
768
+ *
769
+ * @param skipLayout - Whether to skip layout resolution
770
+ * @returns Evaluated schema as JavaScript object
771
+ * @param {boolean} skip_layout
772
+ * @returns {any}
773
+ */
774
+ getEvaluatedSchemaJS(skip_layout) {
775
+ try {
776
+ const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);
777
+ wasm.jsonevalwasm_getEvaluatedSchemaJS(retptr, this.__wbg_ptr, skip_layout);
778
+ var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);
779
+ var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);
780
+ var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);
781
+ if (r2) {
782
+ throw takeObject(r1);
783
+ }
784
+ return takeObject(r0);
785
+ } finally {
786
+ wasm.__wbindgen_add_to_stack_pointer(16);
787
+ }
788
+ }
789
+ /**
790
+ * Get the evaluated schema in MessagePack format
791
+ *
792
+ * @param skipLayout - Whether to skip layout resolution
793
+ * @returns Evaluated schema as MessagePack bytes (Uint8Array)
794
+ *
795
+ * # Zero-Copy Optimization
796
+ *
797
+ * This method returns MessagePack binary data with minimal copying:
798
+ * 1. Serializes schema to Vec<u8> in Rust (unavoidable)
799
+ * 2. wasm-bindgen transfers Vec<u8> to JS as Uint8Array (optimized)
800
+ * 3. Result is a Uint8Array view (minimal overhead)
801
+ *
802
+ * MessagePack format is 20-50% smaller than JSON, ideal for web/WASM.
803
+ * @param {boolean} skip_layout
804
+ * @returns {Uint8Array}
805
+ */
806
+ getEvaluatedSchemaMsgpack(skip_layout) {
807
+ try {
808
+ const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);
809
+ wasm.jsonevalwasm_getEvaluatedSchemaMsgpack(retptr, this.__wbg_ptr, skip_layout);
810
+ var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);
811
+ var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);
812
+ var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);
813
+ var r3 = getDataViewMemory0().getInt32(retptr + 4 * 3, true);
814
+ if (r3) {
815
+ throw takeObject(r2);
816
+ }
817
+ var v1 = getArrayU8FromWasm0(r0, r1).slice();
818
+ wasm.__wbindgen_export_2(r0, r1 * 1, 1);
819
+ return v1;
820
+ } finally {
821
+ wasm.__wbindgen_add_to_stack_pointer(16);
822
+ }
823
+ }
824
+ /**
825
+ * Get all schema values (evaluations ending with .value)
826
+ * Mutates internal data by overriding with values from value evaluations
827
+ *
828
+ * @returns Modified data as JavaScript object
829
+ * @returns {any}
830
+ */
831
+ getSchemaValue() {
832
+ try {
833
+ const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);
834
+ wasm.jsonevalwasm_getSchemaValue(retptr, this.__wbg_ptr);
835
+ var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);
836
+ var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);
837
+ var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);
838
+ if (r2) {
839
+ throw takeObject(r1);
840
+ }
841
+ return takeObject(r0);
842
+ } finally {
843
+ wasm.__wbindgen_add_to_stack_pointer(16);
844
+ }
845
+ }
846
+ /**
847
+ * Get the evaluated schema without $params field
848
+ *
849
+ * @param skipLayout - Whether to skip layout resolution
850
+ * @returns Evaluated schema as JSON string
851
+ * @param {boolean} skip_layout
852
+ * @returns {string}
853
+ */
854
+ getEvaluatedSchemaWithoutParams(skip_layout) {
855
+ let deferred1_0;
856
+ let deferred1_1;
857
+ try {
858
+ const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);
859
+ wasm.jsonevalwasm_getEvaluatedSchemaWithoutParams(retptr, this.__wbg_ptr, skip_layout);
860
+ var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);
861
+ var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);
862
+ deferred1_0 = r0;
863
+ deferred1_1 = r1;
864
+ return getStringFromWasm0(r0, r1);
865
+ } finally {
866
+ wasm.__wbindgen_add_to_stack_pointer(16);
867
+ wasm.__wbindgen_export_2(deferred1_0, deferred1_1, 1);
868
+ }
869
+ }
870
+ /**
871
+ * Get the evaluated schema without $params as JavaScript object
872
+ *
873
+ * @param skipLayout - Whether to skip layout resolution
874
+ * @returns Evaluated schema as JavaScript object
875
+ * @param {boolean} skip_layout
876
+ * @returns {any}
877
+ */
878
+ getEvaluatedSchemaWithoutParamsJS(skip_layout) {
879
+ try {
880
+ const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);
881
+ wasm.jsonevalwasm_getEvaluatedSchemaWithoutParamsJS(retptr, this.__wbg_ptr, skip_layout);
882
+ var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);
883
+ var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);
884
+ var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);
885
+ if (r2) {
886
+ throw takeObject(r1);
887
+ }
888
+ return takeObject(r0);
889
+ } finally {
890
+ wasm.__wbindgen_add_to_stack_pointer(16);
891
+ }
892
+ }
893
+ /**
894
+ * Get a value from the evaluated schema using dotted path notation
895
+ *
896
+ * @param path - Dotted path to the value (e.g., "properties.field.value")
897
+ * @param skipLayout - Whether to skip layout resolution
898
+ * @returns Value as JSON string or null if not found
899
+ * @param {string} path
900
+ * @param {boolean} skip_layout
901
+ * @returns {string | undefined}
902
+ */
903
+ getEvaluatedSchemaByPath(path, skip_layout) {
904
+ try {
905
+ const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);
906
+ const ptr0 = passStringToWasm0(path, wasm.__wbindgen_export_0, wasm.__wbindgen_export_1);
907
+ const len0 = WASM_VECTOR_LEN;
908
+ wasm.jsonevalwasm_getEvaluatedSchemaByPath(retptr, this.__wbg_ptr, ptr0, len0, skip_layout);
909
+ var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);
910
+ var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);
911
+ let v2;
912
+ if (r0 !== 0) {
913
+ v2 = getStringFromWasm0(r0, r1).slice();
914
+ wasm.__wbindgen_export_2(r0, r1 * 1, 1);
915
+ }
916
+ return v2;
917
+ } finally {
918
+ wasm.__wbindgen_add_to_stack_pointer(16);
919
+ }
920
+ }
921
+ /**
922
+ * Get a value from the evaluated schema using dotted path notation as JavaScript object
923
+ *
924
+ * @param path - Dotted path to the value (e.g., "properties.field.value")
925
+ * @param skipLayout - Whether to skip layout resolution
926
+ * @returns Value as JavaScript object or null if not found
927
+ * @param {string} path
928
+ * @param {boolean} skip_layout
929
+ * @returns {any}
930
+ */
931
+ getEvaluatedSchemaByPathJS(path, skip_layout) {
932
+ try {
933
+ const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);
934
+ const ptr0 = passStringToWasm0(path, wasm.__wbindgen_export_0, wasm.__wbindgen_export_1);
935
+ const len0 = WASM_VECTOR_LEN;
936
+ wasm.jsonevalwasm_getEvaluatedSchemaByPathJS(retptr, this.__wbg_ptr, ptr0, len0, skip_layout);
937
+ var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);
938
+ var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);
939
+ var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);
940
+ if (r2) {
941
+ throw takeObject(r1);
942
+ }
943
+ return takeObject(r0);
944
+ } finally {
945
+ wasm.__wbindgen_add_to_stack_pointer(16);
946
+ }
947
+ }
948
+ /**
949
+ * Get values from evaluated schema using multiple dotted paths
950
+ * @param pathsJson - JSON array of dotted paths
951
+ * @param skipLayout - Whether to skip layout resolution
952
+ * @param format - Return format (0=Nested, 1=Flat, 2=Array)
953
+ * @returns Data in specified format as JSON string
954
+ * @param {string} paths_json
955
+ * @param {boolean} skip_layout
956
+ * @param {number} format
957
+ * @returns {string}
958
+ */
959
+ getEvaluatedSchemaByPaths(paths_json, skip_layout, format) {
960
+ let deferred3_0;
961
+ let deferred3_1;
962
+ try {
963
+ const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);
964
+ const ptr0 = passStringToWasm0(paths_json, wasm.__wbindgen_export_0, wasm.__wbindgen_export_1);
965
+ const len0 = WASM_VECTOR_LEN;
966
+ wasm.jsonevalwasm_getEvaluatedSchemaByPaths(retptr, this.__wbg_ptr, ptr0, len0, skip_layout, format);
967
+ var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);
968
+ var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);
969
+ var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);
970
+ var r3 = getDataViewMemory0().getInt32(retptr + 4 * 3, true);
971
+ var ptr2 = r0;
972
+ var len2 = r1;
973
+ if (r3) {
974
+ ptr2 = 0; len2 = 0;
975
+ throw takeObject(r2);
976
+ }
977
+ deferred3_0 = ptr2;
978
+ deferred3_1 = len2;
979
+ return getStringFromWasm0(ptr2, len2);
980
+ } finally {
981
+ wasm.__wbindgen_add_to_stack_pointer(16);
982
+ wasm.__wbindgen_export_2(deferred3_0, deferred3_1, 1);
983
+ }
984
+ }
985
+ /**
986
+ * Get values from evaluated schema using multiple dotted paths (JS object)
987
+ * @param pathsJson - JSON array of dotted paths
988
+ * @param skipLayout - Whether to skip layout resolution
989
+ * @param format - Return format (0=Nested, 1=Flat, 2=Array)
990
+ * @returns Data in specified format as JavaScript object
991
+ * @param {string} paths_json
992
+ * @param {boolean} skip_layout
993
+ * @param {number} format
994
+ * @returns {any}
995
+ */
996
+ getEvaluatedSchemaByPathsJS(paths_json, skip_layout, format) {
997
+ try {
998
+ const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);
999
+ const ptr0 = passStringToWasm0(paths_json, wasm.__wbindgen_export_0, wasm.__wbindgen_export_1);
1000
+ const len0 = WASM_VECTOR_LEN;
1001
+ wasm.jsonevalwasm_getEvaluatedSchemaByPathsJS(retptr, this.__wbg_ptr, ptr0, len0, skip_layout, format);
1002
+ var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);
1003
+ var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);
1004
+ var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);
1005
+ if (r2) {
1006
+ throw takeObject(r1);
1007
+ }
1008
+ return takeObject(r0);
1009
+ } finally {
1010
+ wasm.__wbindgen_add_to_stack_pointer(16);
1011
+ }
1012
+ }
1013
+ /**
1014
+ * Get a value from the schema using dotted path notation
1015
+ *
1016
+ * @param path - Dotted path to the value (e.g., "properties.field.value")
1017
+ * @returns Value as JSON string or null if not found
1018
+ * @param {string} path
1019
+ * @returns {string | undefined}
1020
+ */
1021
+ getSchemaByPath(path) {
1022
+ try {
1023
+ const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);
1024
+ const ptr0 = passStringToWasm0(path, wasm.__wbindgen_export_0, wasm.__wbindgen_export_1);
1025
+ const len0 = WASM_VECTOR_LEN;
1026
+ wasm.jsonevalwasm_getSchemaByPath(retptr, this.__wbg_ptr, ptr0, len0);
1027
+ var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);
1028
+ var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);
1029
+ let v2;
1030
+ if (r0 !== 0) {
1031
+ v2 = getStringFromWasm0(r0, r1).slice();
1032
+ wasm.__wbindgen_export_2(r0, r1 * 1, 1);
1033
+ }
1034
+ return v2;
1035
+ } finally {
1036
+ wasm.__wbindgen_add_to_stack_pointer(16);
1037
+ }
1038
+ }
1039
+ /**
1040
+ * Get a value from the schema using dotted path notation as JavaScript object
1041
+ *
1042
+ * @param path - Dotted path to the value (e.g., "properties.field.value")
1043
+ * @returns Value as JavaScript object or null if not found
1044
+ * @param {string} path
1045
+ * @returns {any}
1046
+ */
1047
+ getSchemaByPathJS(path) {
1048
+ try {
1049
+ const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);
1050
+ const ptr0 = passStringToWasm0(path, wasm.__wbindgen_export_0, wasm.__wbindgen_export_1);
1051
+ const len0 = WASM_VECTOR_LEN;
1052
+ wasm.jsonevalwasm_getSchemaByPathJS(retptr, this.__wbg_ptr, ptr0, len0);
1053
+ var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);
1054
+ var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);
1055
+ var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);
1056
+ if (r2) {
1057
+ throw takeObject(r1);
1058
+ }
1059
+ return takeObject(r0);
1060
+ } finally {
1061
+ wasm.__wbindgen_add_to_stack_pointer(16);
1062
+ }
1063
+ }
1064
+ /**
1065
+ * Get values from schema using multiple dotted paths
1066
+ * @param pathsJson - JSON array of dotted paths
1067
+ * @param format - Return format (0=Nested, 1=Flat, 2=Array)
1068
+ * @returns Data in specified format as JSON string
1069
+ * @param {string} paths_json
1070
+ * @param {number} format
1071
+ * @returns {string}
1072
+ */
1073
+ getSchemaByPaths(paths_json, format) {
1074
+ let deferred3_0;
1075
+ let deferred3_1;
1076
+ try {
1077
+ const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);
1078
+ const ptr0 = passStringToWasm0(paths_json, wasm.__wbindgen_export_0, wasm.__wbindgen_export_1);
1079
+ const len0 = WASM_VECTOR_LEN;
1080
+ wasm.jsonevalwasm_getSchemaByPaths(retptr, this.__wbg_ptr, ptr0, len0, format);
1081
+ var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);
1082
+ var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);
1083
+ var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);
1084
+ var r3 = getDataViewMemory0().getInt32(retptr + 4 * 3, true);
1085
+ var ptr2 = r0;
1086
+ var len2 = r1;
1087
+ if (r3) {
1088
+ ptr2 = 0; len2 = 0;
1089
+ throw takeObject(r2);
1090
+ }
1091
+ deferred3_0 = ptr2;
1092
+ deferred3_1 = len2;
1093
+ return getStringFromWasm0(ptr2, len2);
1094
+ } finally {
1095
+ wasm.__wbindgen_add_to_stack_pointer(16);
1096
+ wasm.__wbindgen_export_2(deferred3_0, deferred3_1, 1);
1097
+ }
1098
+ }
1099
+ /**
1100
+ * Get values from schema using multiple dotted paths (JS object)
1101
+ * @param pathsJson - JSON array of dotted paths
1102
+ * @param format - Return format (0=Nested, 1=Flat, 2=Array)
1103
+ * @returns Data in specified format as JavaScript object
1104
+ * @param {string} paths_json
1105
+ * @param {number} format
1106
+ * @returns {any}
1107
+ */
1108
+ getSchemaByPathsJS(paths_json, format) {
1109
+ try {
1110
+ const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);
1111
+ const ptr0 = passStringToWasm0(paths_json, wasm.__wbindgen_export_0, wasm.__wbindgen_export_1);
1112
+ const len0 = WASM_VECTOR_LEN;
1113
+ wasm.jsonevalwasm_getSchemaByPathsJS(retptr, this.__wbg_ptr, ptr0, len0, format);
1114
+ var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);
1115
+ var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);
1116
+ var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);
1117
+ if (r2) {
1118
+ throw takeObject(r1);
1119
+ }
1120
+ return takeObject(r0);
1121
+ } finally {
1122
+ wasm.__wbindgen_add_to_stack_pointer(16);
1123
+ }
1124
+ }
1125
+ /**
1126
+ * Reload schema with new data
1127
+ *
1128
+ * @param schema - New JSON schema string
1129
+ * @param context - Optional context data JSON string
1130
+ * @param data - Optional initial data JSON string
1131
+ * @param {string} schema
1132
+ * @param {string | null} [context]
1133
+ * @param {string | null} [data]
1134
+ */
1135
+ reloadSchema(schema, context, data) {
1136
+ try {
1137
+ const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);
1138
+ const ptr0 = passStringToWasm0(schema, wasm.__wbindgen_export_0, wasm.__wbindgen_export_1);
1139
+ const len0 = WASM_VECTOR_LEN;
1140
+ var ptr1 = isLikeNone(context) ? 0 : passStringToWasm0(context, wasm.__wbindgen_export_0, wasm.__wbindgen_export_1);
1141
+ var len1 = WASM_VECTOR_LEN;
1142
+ var ptr2 = isLikeNone(data) ? 0 : passStringToWasm0(data, wasm.__wbindgen_export_0, wasm.__wbindgen_export_1);
1143
+ var len2 = WASM_VECTOR_LEN;
1144
+ wasm.jsonevalwasm_reloadSchema(retptr, this.__wbg_ptr, ptr0, len0, ptr1, len1, ptr2, len2);
1145
+ var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);
1146
+ var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);
1147
+ if (r1) {
1148
+ throw takeObject(r0);
1149
+ }
1150
+ } finally {
1151
+ wasm.__wbindgen_add_to_stack_pointer(16);
1152
+ }
1153
+ }
1154
+ /**
1155
+ * Reload schema from MessagePack-encoded bytes
1156
+ *
1157
+ * @param schemaMsgpack - MessagePack-encoded schema bytes (Uint8Array)
1158
+ * @param context - Optional context data JSON string
1159
+ * @param data - Optional initial data JSON string
1160
+ * @param {Uint8Array} schema_msgpack
1161
+ * @param {string | null} [context]
1162
+ * @param {string | null} [data]
1163
+ */
1164
+ reloadSchemaMsgpack(schema_msgpack, context, data) {
1165
+ try {
1166
+ const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);
1167
+ const ptr0 = passArray8ToWasm0(schema_msgpack, wasm.__wbindgen_export_0);
1168
+ const len0 = WASM_VECTOR_LEN;
1169
+ var ptr1 = isLikeNone(context) ? 0 : passStringToWasm0(context, wasm.__wbindgen_export_0, wasm.__wbindgen_export_1);
1170
+ var len1 = WASM_VECTOR_LEN;
1171
+ var ptr2 = isLikeNone(data) ? 0 : passStringToWasm0(data, wasm.__wbindgen_export_0, wasm.__wbindgen_export_1);
1172
+ var len2 = WASM_VECTOR_LEN;
1173
+ wasm.jsonevalwasm_reloadSchemaMsgpack(retptr, this.__wbg_ptr, ptr0, len0, ptr1, len1, ptr2, len2);
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
+ * Reload schema from ParsedSchemaCache using a cache key
1185
+ *
1186
+ * @param cacheKey - Cache key to lookup in the global ParsedSchemaCache
1187
+ * @param context - Optional context data JSON string
1188
+ * @param data - Optional initial data JSON string
1189
+ * @param {string} cache_key
1190
+ * @param {string | null} [context]
1191
+ * @param {string | null} [data]
1192
+ */
1193
+ reloadSchemaFromCache(cache_key, context, data) {
1194
+ try {
1195
+ const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);
1196
+ const ptr0 = passStringToWasm0(cache_key, wasm.__wbindgen_export_0, wasm.__wbindgen_export_1);
1197
+ const len0 = WASM_VECTOR_LEN;
1198
+ var ptr1 = isLikeNone(context) ? 0 : passStringToWasm0(context, wasm.__wbindgen_export_0, wasm.__wbindgen_export_1);
1199
+ var len1 = WASM_VECTOR_LEN;
1200
+ var ptr2 = isLikeNone(data) ? 0 : passStringToWasm0(data, wasm.__wbindgen_export_0, wasm.__wbindgen_export_1);
1201
+ var len2 = WASM_VECTOR_LEN;
1202
+ wasm.jsonevalwasm_reloadSchemaFromCache(retptr, this.__wbg_ptr, ptr0, len0, ptr1, len1, ptr2, len2);
1203
+ var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);
1204
+ var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);
1205
+ if (r1) {
1206
+ throw takeObject(r0);
1207
+ }
1208
+ } finally {
1209
+ wasm.__wbindgen_add_to_stack_pointer(16);
1210
+ }
1211
+ }
1212
+ /**
1213
+ * Get cache statistics
1214
+ *
1215
+ * @returns Cache statistics as JavaScript object with hits, misses, and entries
1216
+ * @returns {any}
1217
+ */
1218
+ cacheStats() {
1219
+ try {
1220
+ const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);
1221
+ wasm.jsonevalwasm_cacheStats(retptr, this.__wbg_ptr);
1222
+ var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);
1223
+ var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);
1224
+ var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);
1225
+ if (r2) {
1226
+ throw takeObject(r1);
1227
+ }
1228
+ return takeObject(r0);
1229
+ } finally {
1230
+ wasm.__wbindgen_add_to_stack_pointer(16);
1231
+ }
1232
+ }
1233
+ /**
1234
+ * Clear the evaluation cache
1235
+ */
1236
+ clearCache() {
1237
+ wasm.jsonevalwasm_clearCache(this.__wbg_ptr);
1238
+ }
1239
+ /**
1240
+ * Get the number of cached entries
1241
+ *
1242
+ * @returns Number of cached entries
1243
+ * @returns {number}
1244
+ */
1245
+ cacheLen() {
1246
+ const ret = wasm.jsonevalwasm_cacheLen(this.__wbg_ptr);
1247
+ return ret >>> 0;
1248
+ }
1249
+ /**
1250
+ * Enable evaluation caching
1251
+ * Useful for reusing JSONEval instances with different data
1252
+ */
1253
+ enableCache() {
1254
+ wasm.jsonevalwasm_enableCache(this.__wbg_ptr);
1255
+ }
1256
+ /**
1257
+ * Disable evaluation caching
1258
+ * Useful for web API usage where each request creates a new JSONEval instance
1259
+ * Improves performance by skipping cache operations that have no benefit for single-use instances
1260
+ */
1261
+ disableCache() {
1262
+ wasm.jsonevalwasm_disableCache(this.__wbg_ptr);
1263
+ }
1264
+ /**
1265
+ * Check if evaluation caching is enabled
1266
+ *
1267
+ * @returns true if caching is enabled, false otherwise
1268
+ * @returns {boolean}
1269
+ */
1270
+ isCacheEnabled() {
1271
+ const ret = wasm.jsonevalwasm_isCacheEnabled(this.__wbg_ptr);
1272
+ return ret !== 0;
1273
+ }
1274
+ /**
1275
+ * Resolve layout with optional evaluation
1276
+ *
1277
+ * @param evaluate - If true, runs evaluation before resolving layout
1278
+ * @throws Error if resolve fails
1279
+ * @param {boolean} evaluate
1280
+ */
1281
+ resolveLayout(evaluate) {
1282
+ try {
1283
+ const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);
1284
+ wasm.jsonevalwasm_resolveLayout(retptr, this.__wbg_ptr, evaluate);
1285
+ var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);
1286
+ var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);
1287
+ if (r1) {
1288
+ throw takeObject(r0);
1289
+ }
1290
+ } finally {
1291
+ wasm.__wbindgen_add_to_stack_pointer(16);
1292
+ }
1293
+ }
1294
+ /**
1295
+ * Evaluate a subform with data
1296
+ *
1297
+ * @param subformPath - Path to the subform (e.g., "#/riders")
1298
+ * @param data - JSON data string for the subform
1299
+ * @param context - Optional context data JSON string
1300
+ * @throws Error if evaluation fails
1301
+ * @param {string} subform_path
1302
+ * @param {string} data
1303
+ * @param {string | null} [context]
1304
+ */
1305
+ evaluateSubform(subform_path, data, context) {
1306
+ try {
1307
+ const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);
1308
+ const ptr0 = passStringToWasm0(subform_path, wasm.__wbindgen_export_0, wasm.__wbindgen_export_1);
1309
+ const len0 = WASM_VECTOR_LEN;
1310
+ const ptr1 = passStringToWasm0(data, wasm.__wbindgen_export_0, wasm.__wbindgen_export_1);
1311
+ const len1 = WASM_VECTOR_LEN;
1312
+ var ptr2 = isLikeNone(context) ? 0 : passStringToWasm0(context, wasm.__wbindgen_export_0, wasm.__wbindgen_export_1);
1313
+ var len2 = WASM_VECTOR_LEN;
1314
+ wasm.jsonevalwasm_evaluateSubform(retptr, this.__wbg_ptr, ptr0, len0, ptr1, len1, ptr2, len2);
1315
+ var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);
1316
+ var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);
1317
+ if (r1) {
1318
+ throw takeObject(r0);
1319
+ }
1320
+ } finally {
1321
+ wasm.__wbindgen_add_to_stack_pointer(16);
1322
+ }
1323
+ }
1324
+ /**
1325
+ * Validate subform data against its schema rules
1326
+ *
1327
+ * @param subformPath - Path to the subform
1328
+ * @param data - JSON data string for the subform
1329
+ * @param context - Optional context data JSON string
1330
+ * @returns ValidationResult
1331
+ * @param {string} subform_path
1332
+ * @param {string} data
1333
+ * @param {string | null} [context]
1334
+ * @returns {ValidationResult}
1335
+ */
1336
+ validateSubform(subform_path, data, context) {
1337
+ try {
1338
+ const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);
1339
+ const ptr0 = passStringToWasm0(subform_path, wasm.__wbindgen_export_0, wasm.__wbindgen_export_1);
1340
+ const len0 = WASM_VECTOR_LEN;
1341
+ const ptr1 = passStringToWasm0(data, wasm.__wbindgen_export_0, wasm.__wbindgen_export_1);
1342
+ const len1 = WASM_VECTOR_LEN;
1343
+ var ptr2 = isLikeNone(context) ? 0 : passStringToWasm0(context, wasm.__wbindgen_export_0, wasm.__wbindgen_export_1);
1344
+ var len2 = WASM_VECTOR_LEN;
1345
+ wasm.jsonevalwasm_validateSubform(retptr, this.__wbg_ptr, ptr0, len0, ptr1, len1, ptr2, len2);
1346
+ var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);
1347
+ var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);
1348
+ var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);
1349
+ if (r2) {
1350
+ throw takeObject(r1);
1351
+ }
1352
+ return ValidationResult.__wrap(r0);
1353
+ } finally {
1354
+ wasm.__wbindgen_add_to_stack_pointer(16);
1355
+ }
1356
+ }
1357
+ /**
1358
+ * Evaluate dependents in subform when a field changes
1359
+ *
1360
+ * @param subformPath - Path to the subform
1361
+ * @param changedPath - Path of the field that changed
1362
+ * @param data - Optional updated JSON data string
1363
+ * @param context - Optional context data JSON string
1364
+ * @returns Array of dependent change objects as JSON string
1365
+ * @param {string} subform_path
1366
+ * @param {string} changed_path
1367
+ * @param {string | null} [data]
1368
+ * @param {string | null} [context]
1369
+ * @returns {string}
1370
+ */
1371
+ evaluateDependentsSubform(subform_path, changed_path, data, context) {
1372
+ let deferred6_0;
1373
+ let deferred6_1;
1374
+ try {
1375
+ const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);
1376
+ const ptr0 = passStringToWasm0(subform_path, wasm.__wbindgen_export_0, wasm.__wbindgen_export_1);
1377
+ const len0 = WASM_VECTOR_LEN;
1378
+ const ptr1 = passStringToWasm0(changed_path, wasm.__wbindgen_export_0, wasm.__wbindgen_export_1);
1379
+ const len1 = WASM_VECTOR_LEN;
1380
+ var ptr2 = isLikeNone(data) ? 0 : passStringToWasm0(data, wasm.__wbindgen_export_0, wasm.__wbindgen_export_1);
1381
+ var len2 = WASM_VECTOR_LEN;
1382
+ var ptr3 = isLikeNone(context) ? 0 : passStringToWasm0(context, wasm.__wbindgen_export_0, wasm.__wbindgen_export_1);
1383
+ var len3 = WASM_VECTOR_LEN;
1384
+ wasm.jsonevalwasm_evaluateDependentsSubform(retptr, this.__wbg_ptr, ptr0, len0, ptr1, len1, ptr2, len2, ptr3, len3);
1385
+ var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);
1386
+ var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);
1387
+ var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);
1388
+ var r3 = getDataViewMemory0().getInt32(retptr + 4 * 3, true);
1389
+ var ptr5 = r0;
1390
+ var len5 = r1;
1391
+ if (r3) {
1392
+ ptr5 = 0; len5 = 0;
1393
+ throw takeObject(r2);
1394
+ }
1395
+ deferred6_0 = ptr5;
1396
+ deferred6_1 = len5;
1397
+ return getStringFromWasm0(ptr5, len5);
1398
+ } finally {
1399
+ wasm.__wbindgen_add_to_stack_pointer(16);
1400
+ wasm.__wbindgen_export_2(deferred6_0, deferred6_1, 1);
1401
+ }
1402
+ }
1403
+ /**
1404
+ * Evaluate dependents in subform and return as JavaScript object
1405
+ *
1406
+ * @param subformPath - Path to the subform
1407
+ * @param changedPath - Path of the field that changed
1408
+ * @param data - Optional updated JSON data string
1409
+ * @param context - Optional context data JSON string
1410
+ * @returns Array of dependent change objects as JavaScript object
1411
+ * @param {string} subform_path
1412
+ * @param {string} changed_path
1413
+ * @param {string | null} [data]
1414
+ * @param {string | null} [context]
1415
+ * @returns {any}
1416
+ */
1417
+ evaluateDependentsSubformJS(subform_path, changed_path, data, context) {
1418
+ try {
1419
+ const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);
1420
+ const ptr0 = passStringToWasm0(subform_path, wasm.__wbindgen_export_0, wasm.__wbindgen_export_1);
1421
+ const len0 = WASM_VECTOR_LEN;
1422
+ const ptr1 = passStringToWasm0(changed_path, wasm.__wbindgen_export_0, wasm.__wbindgen_export_1);
1423
+ const len1 = WASM_VECTOR_LEN;
1424
+ var ptr2 = isLikeNone(data) ? 0 : passStringToWasm0(data, wasm.__wbindgen_export_0, wasm.__wbindgen_export_1);
1425
+ var len2 = WASM_VECTOR_LEN;
1426
+ var ptr3 = isLikeNone(context) ? 0 : passStringToWasm0(context, wasm.__wbindgen_export_0, wasm.__wbindgen_export_1);
1427
+ var len3 = WASM_VECTOR_LEN;
1428
+ wasm.jsonevalwasm_evaluateDependentsSubformJS(retptr, this.__wbg_ptr, ptr0, len0, ptr1, len1, ptr2, len2, ptr3, len3);
1429
+ var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);
1430
+ var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);
1431
+ var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);
1432
+ if (r2) {
1433
+ throw takeObject(r1);
1434
+ }
1435
+ return takeObject(r0);
1436
+ } finally {
1437
+ wasm.__wbindgen_add_to_stack_pointer(16);
1438
+ }
1439
+ }
1440
+ /**
1441
+ * Resolve layout for subform
1442
+ *
1443
+ * @param subformPath - Path to the subform
1444
+ * @param evaluate - If true, runs evaluation before resolving layout
1445
+ * @throws Error if resolve fails
1446
+ * @param {string} subform_path
1447
+ * @param {boolean} evaluate
1448
+ */
1449
+ resolveLayoutSubform(subform_path, evaluate) {
1450
+ try {
1451
+ const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);
1452
+ const ptr0 = passStringToWasm0(subform_path, wasm.__wbindgen_export_0, wasm.__wbindgen_export_1);
1453
+ const len0 = WASM_VECTOR_LEN;
1454
+ wasm.jsonevalwasm_resolveLayoutSubform(retptr, this.__wbg_ptr, ptr0, len0, evaluate);
1455
+ var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);
1456
+ var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);
1457
+ if (r1) {
1458
+ throw takeObject(r0);
1459
+ }
1460
+ } finally {
1461
+ wasm.__wbindgen_add_to_stack_pointer(16);
1462
+ }
1463
+ }
1464
+ /**
1465
+ * Get evaluated schema from subform
1466
+ *
1467
+ * @param subformPath - Path to the subform
1468
+ * @param resolveLayout - Whether to resolve layout
1469
+ * @returns Evaluated schema as JSON string
1470
+ * @param {string} subform_path
1471
+ * @param {boolean} resolve_layout
1472
+ * @returns {string}
1473
+ */
1474
+ getEvaluatedSchemaSubform(subform_path, resolve_layout) {
1475
+ let deferred2_0;
1476
+ let deferred2_1;
1477
+ try {
1478
+ const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);
1479
+ const ptr0 = passStringToWasm0(subform_path, wasm.__wbindgen_export_0, wasm.__wbindgen_export_1);
1480
+ const len0 = WASM_VECTOR_LEN;
1481
+ wasm.jsonevalwasm_getEvaluatedSchemaSubform(retptr, this.__wbg_ptr, ptr0, len0, resolve_layout);
1482
+ var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);
1483
+ var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);
1484
+ deferred2_0 = r0;
1485
+ deferred2_1 = r1;
1486
+ return getStringFromWasm0(r0, r1);
1487
+ } finally {
1488
+ wasm.__wbindgen_add_to_stack_pointer(16);
1489
+ wasm.__wbindgen_export_2(deferred2_0, deferred2_1, 1);
1490
+ }
1491
+ }
1492
+ /**
1493
+ * Get evaluated schema from subform as JavaScript object
1494
+ *
1495
+ * @param subformPath - Path to the subform
1496
+ * @param resolveLayout - Whether to resolve layout
1497
+ * @returns Evaluated schema as JavaScript object
1498
+ * @param {string} subform_path
1499
+ * @param {boolean} resolve_layout
1500
+ * @returns {any}
1501
+ */
1502
+ getEvaluatedSchemaSubformJS(subform_path, resolve_layout) {
1503
+ try {
1504
+ const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);
1505
+ const ptr0 = passStringToWasm0(subform_path, wasm.__wbindgen_export_0, wasm.__wbindgen_export_1);
1506
+ const len0 = WASM_VECTOR_LEN;
1507
+ wasm.jsonevalwasm_getEvaluatedSchemaSubformJS(retptr, this.__wbg_ptr, ptr0, len0, resolve_layout);
1508
+ var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);
1509
+ var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);
1510
+ var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);
1511
+ if (r2) {
1512
+ throw takeObject(r1);
1513
+ }
1514
+ return takeObject(r0);
1515
+ } finally {
1516
+ wasm.__wbindgen_add_to_stack_pointer(16);
1517
+ }
1518
+ }
1519
+ /**
1520
+ * Get schema value from subform (all .value fields)
1521
+ *
1522
+ * @param subformPath - Path to the subform
1523
+ * @returns Modified data as JavaScript object
1524
+ * @param {string} subform_path
1525
+ * @returns {any}
1526
+ */
1527
+ getSchemaValueSubform(subform_path) {
1528
+ try {
1529
+ const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);
1530
+ const ptr0 = passStringToWasm0(subform_path, wasm.__wbindgen_export_0, wasm.__wbindgen_export_1);
1531
+ const len0 = WASM_VECTOR_LEN;
1532
+ wasm.jsonevalwasm_getSchemaValueSubform(retptr, this.__wbg_ptr, ptr0, len0);
1533
+ var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);
1534
+ var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);
1535
+ var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);
1536
+ if (r2) {
1537
+ throw takeObject(r1);
1538
+ }
1539
+ return takeObject(r0);
1540
+ } finally {
1541
+ wasm.__wbindgen_add_to_stack_pointer(16);
1542
+ }
1543
+ }
1544
+ /**
1545
+ * Get evaluated schema without $params from subform
1546
+ *
1547
+ * @param subformPath - Path to the subform
1548
+ * @param resolveLayout - Whether to resolve layout
1549
+ * @returns Evaluated schema as JSON string
1550
+ * @param {string} subform_path
1551
+ * @param {boolean} resolve_layout
1552
+ * @returns {string}
1553
+ */
1554
+ getEvaluatedSchemaWithoutParamsSubform(subform_path, resolve_layout) {
1555
+ let deferred2_0;
1556
+ let deferred2_1;
1557
+ try {
1558
+ const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);
1559
+ const ptr0 = passStringToWasm0(subform_path, wasm.__wbindgen_export_0, wasm.__wbindgen_export_1);
1560
+ const len0 = WASM_VECTOR_LEN;
1561
+ wasm.jsonevalwasm_getEvaluatedSchemaWithoutParamsSubform(retptr, this.__wbg_ptr, ptr0, len0, resolve_layout);
1562
+ var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);
1563
+ var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);
1564
+ deferred2_0 = r0;
1565
+ deferred2_1 = r1;
1566
+ return getStringFromWasm0(r0, r1);
1567
+ } finally {
1568
+ wasm.__wbindgen_add_to_stack_pointer(16);
1569
+ wasm.__wbindgen_export_2(deferred2_0, deferred2_1, 1);
1570
+ }
1571
+ }
1572
+ /**
1573
+ * Get evaluated schema without $params from subform as JavaScript object
1574
+ *
1575
+ * @param subformPath - Path to the subform
1576
+ * @param resolveLayout - Whether to resolve layout
1577
+ * @returns Evaluated schema as JavaScript object
1578
+ * @param {string} subform_path
1579
+ * @param {boolean} resolve_layout
1580
+ * @returns {any}
1581
+ */
1582
+ getEvaluatedSchemaWithoutParamsSubformJS(subform_path, resolve_layout) {
1583
+ try {
1584
+ const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);
1585
+ const ptr0 = passStringToWasm0(subform_path, wasm.__wbindgen_export_0, wasm.__wbindgen_export_1);
1586
+ const len0 = WASM_VECTOR_LEN;
1587
+ wasm.jsonevalwasm_getEvaluatedSchemaWithoutParamsSubformJS(retptr, this.__wbg_ptr, ptr0, len0, resolve_layout);
1588
+ var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);
1589
+ var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);
1590
+ var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);
1591
+ if (r2) {
1592
+ throw takeObject(r1);
1593
+ }
1594
+ return takeObject(r0);
1595
+ } finally {
1596
+ wasm.__wbindgen_add_to_stack_pointer(16);
1597
+ }
1598
+ }
1599
+ /**
1600
+ * Get evaluated schema by specific path from subform
1601
+ *
1602
+ * @param subformPath - Path to the subform
1603
+ * @param schemaPath - Dotted path to the value within the subform
1604
+ * @param skipLayout - Whether to skip layout resolution
1605
+ * @returns Value as JSON string or null if not found
1606
+ * @param {string} subform_path
1607
+ * @param {string} schema_path
1608
+ * @param {boolean} skip_layout
1609
+ * @returns {string | undefined}
1610
+ */
1611
+ getEvaluatedSchemaByPathSubform(subform_path, schema_path, skip_layout) {
1612
+ try {
1613
+ const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);
1614
+ const ptr0 = passStringToWasm0(subform_path, wasm.__wbindgen_export_0, wasm.__wbindgen_export_1);
1615
+ const len0 = WASM_VECTOR_LEN;
1616
+ const ptr1 = passStringToWasm0(schema_path, wasm.__wbindgen_export_0, wasm.__wbindgen_export_1);
1617
+ const len1 = WASM_VECTOR_LEN;
1618
+ wasm.jsonevalwasm_getEvaluatedSchemaByPathSubform(retptr, this.__wbg_ptr, ptr0, len0, ptr1, len1, skip_layout);
1619
+ var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);
1620
+ var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);
1621
+ let v3;
1622
+ if (r0 !== 0) {
1623
+ v3 = getStringFromWasm0(r0, r1).slice();
1624
+ wasm.__wbindgen_export_2(r0, r1 * 1, 1);
1625
+ }
1626
+ return v3;
1627
+ } finally {
1628
+ wasm.__wbindgen_add_to_stack_pointer(16);
1629
+ }
1630
+ }
1631
+ /**
1632
+ * Get evaluated schema by specific path from subform as JavaScript object
1633
+ *
1634
+ * @param subformPath - Path to the subform
1635
+ * @param schemaPath - Dotted path to the value within the subform
1636
+ * @param skipLayout - Whether to skip layout resolution
1637
+ * @returns Value as JavaScript object or null if not found
1638
+ * @param {string} subform_path
1639
+ * @param {string} schema_path
1640
+ * @param {boolean} skip_layout
1641
+ * @returns {any}
1642
+ */
1643
+ getEvaluatedSchemaByPathSubformJS(subform_path, schema_path, skip_layout) {
1644
+ try {
1645
+ const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);
1646
+ const ptr0 = passStringToWasm0(subform_path, wasm.__wbindgen_export_0, wasm.__wbindgen_export_1);
1647
+ const len0 = WASM_VECTOR_LEN;
1648
+ const ptr1 = passStringToWasm0(schema_path, wasm.__wbindgen_export_0, wasm.__wbindgen_export_1);
1649
+ const len1 = WASM_VECTOR_LEN;
1650
+ wasm.jsonevalwasm_getEvaluatedSchemaByPathSubformJS(retptr, this.__wbg_ptr, ptr0, len0, ptr1, len1, skip_layout);
1651
+ var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);
1652
+ var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);
1653
+ var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);
1654
+ if (r2) {
1655
+ throw takeObject(r1);
1656
+ }
1657
+ return takeObject(r0);
1658
+ } finally {
1659
+ wasm.__wbindgen_add_to_stack_pointer(16);
1660
+ }
1661
+ }
1662
+ /**
1663
+ * Get values from the evaluated schema of a subform using multiple dotted path notations (returns JSON string)
1664
+ * @param subformPath - Path to the subform
1665
+ * @param pathsJson - JSON array of dotted paths
1666
+ * @param skipLayout - Whether to skip layout resolution
1667
+ * @param format - Return format (0=Nested, 1=Flat, 2=Array)
1668
+ * @returns Data in specified format as JSON string
1669
+ * @param {string} subform_path
1670
+ * @param {string} paths_json
1671
+ * @param {boolean} skip_layout
1672
+ * @param {number} format
1673
+ * @returns {string}
1674
+ */
1675
+ getEvaluatedSchemaByPathsSubform(subform_path, paths_json, skip_layout, format) {
1676
+ let deferred4_0;
1677
+ let deferred4_1;
1678
+ try {
1679
+ const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);
1680
+ const ptr0 = passStringToWasm0(subform_path, wasm.__wbindgen_export_0, wasm.__wbindgen_export_1);
1681
+ const len0 = WASM_VECTOR_LEN;
1682
+ const ptr1 = passStringToWasm0(paths_json, wasm.__wbindgen_export_0, wasm.__wbindgen_export_1);
1683
+ const len1 = WASM_VECTOR_LEN;
1684
+ wasm.jsonevalwasm_getEvaluatedSchemaByPathsSubform(retptr, this.__wbg_ptr, ptr0, len0, ptr1, len1, skip_layout, format);
1685
+ var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);
1686
+ var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);
1687
+ var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);
1688
+ var r3 = getDataViewMemory0().getInt32(retptr + 4 * 3, true);
1689
+ var ptr3 = r0;
1690
+ var len3 = r1;
1691
+ if (r3) {
1692
+ ptr3 = 0; len3 = 0;
1693
+ throw takeObject(r2);
1694
+ }
1695
+ deferred4_0 = ptr3;
1696
+ deferred4_1 = len3;
1697
+ return getStringFromWasm0(ptr3, len3);
1698
+ } finally {
1699
+ wasm.__wbindgen_add_to_stack_pointer(16);
1700
+ wasm.__wbindgen_export_2(deferred4_0, deferred4_1, 1);
1701
+ }
1702
+ }
1703
+ /**
1704
+ * Get values from the evaluated schema of a subform using multiple dotted path notations (returns JS object)
1705
+ * @param subformPath - Path to the subform
1706
+ * @param pathsJson - JSON array of dotted paths
1707
+ * @param skipLayout - Whether to skip layout resolution
1708
+ * @param format - Return format (0=Nested, 1=Flat, 2=Array)
1709
+ * @returns Data in specified format as JavaScript object
1710
+ * @param {string} subform_path
1711
+ * @param {string} paths_json
1712
+ * @param {boolean} skip_layout
1713
+ * @param {number} format
1714
+ * @returns {any}
1715
+ */
1716
+ getEvaluatedSchemaByPathsSubformJS(subform_path, paths_json, skip_layout, format) {
1717
+ try {
1718
+ const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);
1719
+ const ptr0 = passStringToWasm0(subform_path, wasm.__wbindgen_export_0, wasm.__wbindgen_export_1);
1720
+ const len0 = WASM_VECTOR_LEN;
1721
+ const ptr1 = passStringToWasm0(paths_json, wasm.__wbindgen_export_0, wasm.__wbindgen_export_1);
1722
+ const len1 = WASM_VECTOR_LEN;
1723
+ wasm.jsonevalwasm_getEvaluatedSchemaByPathsSubformJS(retptr, this.__wbg_ptr, ptr0, len0, ptr1, len1, skip_layout, format);
1724
+ var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);
1725
+ var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);
1726
+ var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);
1727
+ if (r2) {
1728
+ throw takeObject(r1);
1729
+ }
1730
+ return takeObject(r0);
1731
+ } finally {
1732
+ wasm.__wbindgen_add_to_stack_pointer(16);
1733
+ }
1734
+ }
1735
+ /**
1736
+ * Get schema by specific path from subform (returns JSON string)
1737
+ * @param subformPath - Path to the subform
1738
+ * @param schemaPath - Path within the subform
1739
+ * @returns Value as JSON string or null if not found
1740
+ * @param {string} subform_path
1741
+ * @param {string} schema_path
1742
+ * @returns {string | undefined}
1743
+ */
1744
+ getSchemaByPathSubform(subform_path, schema_path) {
1745
+ try {
1746
+ const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);
1747
+ const ptr0 = passStringToWasm0(subform_path, wasm.__wbindgen_export_0, wasm.__wbindgen_export_1);
1748
+ const len0 = WASM_VECTOR_LEN;
1749
+ const ptr1 = passStringToWasm0(schema_path, wasm.__wbindgen_export_0, wasm.__wbindgen_export_1);
1750
+ const len1 = WASM_VECTOR_LEN;
1751
+ wasm.jsonevalwasm_getSchemaByPathSubform(retptr, this.__wbg_ptr, ptr0, len0, ptr1, len1);
1752
+ var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);
1753
+ var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);
1754
+ let v3;
1755
+ if (r0 !== 0) {
1756
+ v3 = getStringFromWasm0(r0, r1).slice();
1757
+ wasm.__wbindgen_export_2(r0, r1 * 1, 1);
1758
+ }
1759
+ return v3;
1760
+ } finally {
1761
+ wasm.__wbindgen_add_to_stack_pointer(16);
1762
+ }
1763
+ }
1764
+ /**
1765
+ * Get schema by specific path from subform (returns JS object)
1766
+ * @param subformPath - Path to the subform
1767
+ * @param schemaPath - Path within the subform
1768
+ * @returns Value as JavaScript object or null if not found
1769
+ * @param {string} subform_path
1770
+ * @param {string} schema_path
1771
+ * @returns {any}
1772
+ */
1773
+ getSchemaByPathSubformJS(subform_path, schema_path) {
1774
+ try {
1775
+ const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);
1776
+ const ptr0 = passStringToWasm0(subform_path, wasm.__wbindgen_export_0, wasm.__wbindgen_export_1);
1777
+ const len0 = WASM_VECTOR_LEN;
1778
+ const ptr1 = passStringToWasm0(schema_path, wasm.__wbindgen_export_0, wasm.__wbindgen_export_1);
1779
+ const len1 = WASM_VECTOR_LEN;
1780
+ wasm.jsonevalwasm_getSchemaByPathSubformJS(retptr, this.__wbg_ptr, ptr0, len0, ptr1, len1);
1781
+ var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);
1782
+ var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);
1783
+ var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);
1784
+ if (r2) {
1785
+ throw takeObject(r1);
1786
+ }
1787
+ return takeObject(r0);
1788
+ } finally {
1789
+ wasm.__wbindgen_add_to_stack_pointer(16);
1790
+ }
1791
+ }
1792
+ /**
1793
+ * Get schema by multiple paths from subform
1794
+ * @param subformPath - Path to the subform
1795
+ * @param pathsJson - JSON array of dotted paths
1796
+ * @param format - Return format (0=Nested, 1=Flat, 2=Array)
1797
+ * @returns Data in specified format as JSON string
1798
+ * @param {string} subform_path
1799
+ * @param {string} paths_json
1800
+ * @param {number} format
1801
+ * @returns {string}
1802
+ */
1803
+ getSchemaByPathsSubform(subform_path, paths_json, format) {
1804
+ let deferred4_0;
1805
+ let deferred4_1;
1806
+ try {
1807
+ const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);
1808
+ const ptr0 = passStringToWasm0(subform_path, wasm.__wbindgen_export_0, wasm.__wbindgen_export_1);
1809
+ const len0 = WASM_VECTOR_LEN;
1810
+ const ptr1 = passStringToWasm0(paths_json, wasm.__wbindgen_export_0, wasm.__wbindgen_export_1);
1811
+ const len1 = WASM_VECTOR_LEN;
1812
+ wasm.jsonevalwasm_getSchemaByPathsSubform(retptr, this.__wbg_ptr, ptr0, len0, ptr1, len1, format);
1813
+ var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);
1814
+ var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);
1815
+ var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);
1816
+ var r3 = getDataViewMemory0().getInt32(retptr + 4 * 3, true);
1817
+ var ptr3 = r0;
1818
+ var len3 = r1;
1819
+ if (r3) {
1820
+ ptr3 = 0; len3 = 0;
1821
+ throw takeObject(r2);
1822
+ }
1823
+ deferred4_0 = ptr3;
1824
+ deferred4_1 = len3;
1825
+ return getStringFromWasm0(ptr3, len3);
1826
+ } finally {
1827
+ wasm.__wbindgen_add_to_stack_pointer(16);
1828
+ wasm.__wbindgen_export_2(deferred4_0, deferred4_1, 1);
1829
+ }
1830
+ }
1831
+ /**
1832
+ * Get schema by multiple paths from subform (JS object)
1833
+ * @param subformPath - Path to the subform
1834
+ * @param pathsJson - JSON array of dotted paths
1835
+ * @param format - Return format (0=Nested, 1=Flat, 2=Array)
1836
+ * @returns Data in specified format as JavaScript object
1837
+ * @param {string} subform_path
1838
+ * @param {string} paths_json
1839
+ * @param {number} format
1840
+ * @returns {any}
1841
+ */
1842
+ getSchemaByPathsSubformJS(subform_path, paths_json, format) {
1843
+ try {
1844
+ const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);
1845
+ const ptr0 = passStringToWasm0(subform_path, wasm.__wbindgen_export_0, wasm.__wbindgen_export_1);
1846
+ const len0 = WASM_VECTOR_LEN;
1847
+ const ptr1 = passStringToWasm0(paths_json, wasm.__wbindgen_export_0, wasm.__wbindgen_export_1);
1848
+ const len1 = WASM_VECTOR_LEN;
1849
+ wasm.jsonevalwasm_getSchemaByPathsSubformJS(retptr, this.__wbg_ptr, ptr0, len0, ptr1, len1, format);
1850
+ var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);
1851
+ var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);
1852
+ var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);
1853
+ if (r2) {
1854
+ throw takeObject(r1);
1855
+ }
1856
+ return takeObject(r0);
1857
+ } finally {
1858
+ wasm.__wbindgen_add_to_stack_pointer(16);
1859
+ }
1860
+ }
1861
+ /**
1862
+ * Get list of available subform paths
1863
+ *
1864
+ * @returns Array of subform paths
1865
+ * @returns {string[]}
1866
+ */
1867
+ getSubformPaths() {
1868
+ try {
1869
+ const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);
1870
+ wasm.jsonevalwasm_getSubformPaths(retptr, this.__wbg_ptr);
1871
+ var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);
1872
+ var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);
1873
+ var v1 = getArrayJsValueFromWasm0(r0, r1).slice();
1874
+ wasm.__wbindgen_export_2(r0, r1 * 4, 4);
1875
+ return v1;
1876
+ } finally {
1877
+ wasm.__wbindgen_add_to_stack_pointer(16);
1878
+ }
1879
+ }
1880
+ /**
1881
+ * Check if a subform exists at the given path
1882
+ *
1883
+ * @param subformPath - Path to check
1884
+ * @returns True if subform exists, false otherwise
1885
+ * @param {string} subform_path
1886
+ * @returns {boolean}
1887
+ */
1888
+ hasSubform(subform_path) {
1889
+ const ptr0 = passStringToWasm0(subform_path, wasm.__wbindgen_export_0, wasm.__wbindgen_export_1);
1890
+ const len0 = WASM_VECTOR_LEN;
1891
+ const ret = wasm.jsonevalwasm_hasSubform(this.__wbg_ptr, ptr0, len0);
1892
+ return ret !== 0;
1893
+ }
1894
+ }
1895
+ if (Symbol.dispose) JSONEvalWasm.prototype[Symbol.dispose] = JSONEvalWasm.prototype.free;
1896
+
1897
+ exports.JSONEvalWasm = JSONEvalWasm;
1898
+
1899
+ const ValidationErrorFinalization = (typeof FinalizationRegistry === 'undefined')
1900
+ ? { register: () => {}, unregister: () => {} }
1901
+ : new FinalizationRegistry(ptr => wasm.__wbg_validationerror_free(ptr >>> 0, 1));
1902
+ /**
1903
+ * Validation error for JavaScript
1904
+ */
1905
+ class ValidationError {
1906
+
1907
+ static __wrap(ptr) {
1908
+ ptr = ptr >>> 0;
1909
+ const obj = Object.create(ValidationError.prototype);
1910
+ obj.__wbg_ptr = ptr;
1911
+ ValidationErrorFinalization.register(obj, obj.__wbg_ptr, obj);
1912
+ return obj;
1913
+ }
1914
+
1915
+ __destroy_into_raw() {
1916
+ const ptr = this.__wbg_ptr;
1917
+ this.__wbg_ptr = 0;
1918
+ ValidationErrorFinalization.unregister(this);
1919
+ return ptr;
1920
+ }
1921
+
1922
+ free() {
1923
+ const ptr = this.__destroy_into_raw();
1924
+ wasm.__wbg_validationerror_free(ptr, 0);
1925
+ }
1926
+ /**
1927
+ * @returns {string}
1928
+ */
1929
+ get path() {
1930
+ let deferred1_0;
1931
+ let deferred1_1;
1932
+ try {
1933
+ const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);
1934
+ wasm.validationerror_path(retptr, this.__wbg_ptr);
1935
+ var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);
1936
+ var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);
1937
+ deferred1_0 = r0;
1938
+ deferred1_1 = r1;
1939
+ return getStringFromWasm0(r0, r1);
1940
+ } finally {
1941
+ wasm.__wbindgen_add_to_stack_pointer(16);
1942
+ wasm.__wbindgen_export_2(deferred1_0, deferred1_1, 1);
1943
+ }
1944
+ }
1945
+ /**
1946
+ * @returns {string}
1947
+ */
1948
+ get rule_type() {
1949
+ let deferred1_0;
1950
+ let deferred1_1;
1951
+ try {
1952
+ const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);
1953
+ wasm.validationerror_rule_type(retptr, this.__wbg_ptr);
1954
+ var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);
1955
+ var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);
1956
+ deferred1_0 = r0;
1957
+ deferred1_1 = r1;
1958
+ return getStringFromWasm0(r0, r1);
1959
+ } finally {
1960
+ wasm.__wbindgen_add_to_stack_pointer(16);
1961
+ wasm.__wbindgen_export_2(deferred1_0, deferred1_1, 1);
1962
+ }
1963
+ }
1964
+ /**
1965
+ * @returns {string}
1966
+ */
1967
+ get message() {
1968
+ let deferred1_0;
1969
+ let deferred1_1;
1970
+ try {
1971
+ const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);
1972
+ wasm.validationerror_message(retptr, this.__wbg_ptr);
1973
+ var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);
1974
+ var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);
1975
+ deferred1_0 = r0;
1976
+ deferred1_1 = r1;
1977
+ return getStringFromWasm0(r0, r1);
1978
+ } finally {
1979
+ wasm.__wbindgen_add_to_stack_pointer(16);
1980
+ wasm.__wbindgen_export_2(deferred1_0, deferred1_1, 1);
1981
+ }
1982
+ }
1983
+ /**
1984
+ * @returns {string | undefined}
1985
+ */
1986
+ get code() {
1987
+ try {
1988
+ const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);
1989
+ wasm.validationerror_code(retptr, this.__wbg_ptr);
1990
+ var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);
1991
+ var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);
1992
+ let v1;
1993
+ if (r0 !== 0) {
1994
+ v1 = getStringFromWasm0(r0, r1).slice();
1995
+ wasm.__wbindgen_export_2(r0, r1 * 1, 1);
1996
+ }
1997
+ return v1;
1998
+ } finally {
1999
+ wasm.__wbindgen_add_to_stack_pointer(16);
2000
+ }
2001
+ }
2002
+ /**
2003
+ * @returns {string | undefined}
2004
+ */
2005
+ get pattern() {
2006
+ try {
2007
+ const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);
2008
+ wasm.validationerror_pattern(retptr, this.__wbg_ptr);
2009
+ var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);
2010
+ var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);
2011
+ let v1;
2012
+ if (r0 !== 0) {
2013
+ v1 = getStringFromWasm0(r0, r1).slice();
2014
+ wasm.__wbindgen_export_2(r0, r1 * 1, 1);
2015
+ }
2016
+ return v1;
2017
+ } finally {
2018
+ wasm.__wbindgen_add_to_stack_pointer(16);
2019
+ }
2020
+ }
2021
+ /**
2022
+ * @returns {string | undefined}
2023
+ */
2024
+ get field_value() {
2025
+ try {
2026
+ const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);
2027
+ wasm.validationerror_field_value(retptr, this.__wbg_ptr);
2028
+ var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);
2029
+ var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);
2030
+ let v1;
2031
+ if (r0 !== 0) {
2032
+ v1 = getStringFromWasm0(r0, r1).slice();
2033
+ wasm.__wbindgen_export_2(r0, r1 * 1, 1);
2034
+ }
2035
+ return v1;
2036
+ } finally {
2037
+ wasm.__wbindgen_add_to_stack_pointer(16);
2038
+ }
2039
+ }
2040
+ /**
2041
+ * @returns {any}
2042
+ */
2043
+ get data() {
2044
+ const ret = wasm.validationerror_data(this.__wbg_ptr);
2045
+ return takeObject(ret);
2046
+ }
2047
+ }
2048
+ if (Symbol.dispose) ValidationError.prototype[Symbol.dispose] = ValidationError.prototype.free;
2049
+
2050
+ exports.ValidationError = ValidationError;
2051
+
2052
+ const ValidationResultFinalization = (typeof FinalizationRegistry === 'undefined')
2053
+ ? { register: () => {}, unregister: () => {} }
2054
+ : new FinalizationRegistry(ptr => wasm.__wbg_validationresult_free(ptr >>> 0, 1));
2055
+ /**
2056
+ * Validation result for JavaScript
2057
+ */
2058
+ class ValidationResult {
2059
+
2060
+ static __wrap(ptr) {
2061
+ ptr = ptr >>> 0;
2062
+ const obj = Object.create(ValidationResult.prototype);
2063
+ obj.__wbg_ptr = ptr;
2064
+ ValidationResultFinalization.register(obj, obj.__wbg_ptr, obj);
2065
+ return obj;
2066
+ }
2067
+
2068
+ __destroy_into_raw() {
2069
+ const ptr = this.__wbg_ptr;
2070
+ this.__wbg_ptr = 0;
2071
+ ValidationResultFinalization.unregister(this);
2072
+ return ptr;
2073
+ }
2074
+
2075
+ free() {
2076
+ const ptr = this.__destroy_into_raw();
2077
+ wasm.__wbg_validationresult_free(ptr, 0);
2078
+ }
2079
+ /**
2080
+ * @returns {boolean}
2081
+ */
2082
+ get has_error() {
2083
+ const ret = wasm.validationresult_has_error(this.__wbg_ptr);
2084
+ return ret !== 0;
2085
+ }
2086
+ /**
2087
+ * @returns {ValidationError[]}
2088
+ */
2089
+ get errors() {
2090
+ try {
2091
+ const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);
2092
+ wasm.validationresult_errors(retptr, this.__wbg_ptr);
2093
+ var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);
2094
+ var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);
2095
+ var v1 = getArrayJsValueFromWasm0(r0, r1).slice();
2096
+ wasm.__wbindgen_export_2(r0, r1 * 4, 4);
2097
+ return v1;
2098
+ } finally {
2099
+ wasm.__wbindgen_add_to_stack_pointer(16);
2100
+ }
2101
+ }
2102
+ /**
2103
+ * @returns {any}
2104
+ */
2105
+ toJSON() {
2106
+ try {
2107
+ const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);
2108
+ wasm.validationresult_toJSON(retptr, this.__wbg_ptr);
2109
+ var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);
2110
+ var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);
2111
+ var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);
2112
+ if (r2) {
2113
+ throw takeObject(r1);
2114
+ }
2115
+ return takeObject(r0);
2116
+ } finally {
2117
+ wasm.__wbindgen_add_to_stack_pointer(16);
2118
+ }
2119
+ }
2120
+ }
2121
+ if (Symbol.dispose) ValidationResult.prototype[Symbol.dispose] = ValidationResult.prototype.free;
2122
+
2123
+ exports.ValidationResult = ValidationResult;
2124
+
2125
+ exports.__wbg_Error_e17e777aac105295 = function(arg0, arg1) {
2126
+ const ret = Error(getStringFromWasm0(arg0, arg1));
2127
+ return addHeapObject(ret);
2128
+ };
2129
+
2130
+ exports.__wbg_String_8f0eb39a4a4c2f66 = function(arg0, arg1) {
2131
+ const ret = String(getObject(arg1));
2132
+ const ptr1 = passStringToWasm0(ret, wasm.__wbindgen_export_0, wasm.__wbindgen_export_1);
2133
+ const len1 = WASM_VECTOR_LEN;
2134
+ getDataViewMemory0().setInt32(arg0 + 4 * 1, len1, true);
2135
+ getDataViewMemory0().setInt32(arg0 + 4 * 0, ptr1, true);
2136
+ };
2137
+
2138
+ exports.__wbg_error_7534b8e9a36f1ab4 = function(arg0, arg1) {
2139
+ let deferred0_0;
2140
+ let deferred0_1;
2141
+ try {
2142
+ deferred0_0 = arg0;
2143
+ deferred0_1 = arg1;
2144
+ console.error(getStringFromWasm0(arg0, arg1));
2145
+ } finally {
2146
+ wasm.__wbindgen_export_2(deferred0_0, deferred0_1, 1);
2147
+ }
2148
+ };
2149
+
2150
+ exports.__wbg_getRandomValues_1c61fac11405ffdc = function() { return handleError(function (arg0, arg1) {
2151
+ globalThis.crypto.getRandomValues(getArrayU8FromWasm0(arg0, arg1));
2152
+ }, arguments) };
2153
+
2154
+ exports.__wbg_getTime_6bb3f64e0f18f817 = function(arg0) {
2155
+ const ret = getObject(arg0).getTime();
2156
+ return ret;
2157
+ };
2158
+
2159
+ exports.__wbg_log_b28c09a93d15bcda = function(arg0, arg1) {
2160
+ console.log(getStringFromWasm0(arg0, arg1));
2161
+ };
2162
+
2163
+ exports.__wbg_new0_b0a0a38c201e6df5 = function() {
2164
+ const ret = new Date();
2165
+ return addHeapObject(ret);
2166
+ };
2167
+
2168
+ exports.__wbg_new_19c25a3f2fa63a02 = function() {
2169
+ const ret = new Object();
2170
+ return addHeapObject(ret);
2171
+ };
2172
+
2173
+ exports.__wbg_new_1f3a344cf3123716 = function() {
2174
+ const ret = new Array();
2175
+ return addHeapObject(ret);
2176
+ };
2177
+
2178
+ exports.__wbg_new_2ff1f68f3676ea53 = function() {
2179
+ const ret = new Map();
2180
+ return addHeapObject(ret);
2181
+ };
2182
+
2183
+ exports.__wbg_new_8a6f238a6ece86ea = function() {
2184
+ const ret = new Error();
2185
+ return addHeapObject(ret);
2186
+ };
2187
+
2188
+ exports.__wbg_parse_442f5ba02e5eaf8b = function() { return handleError(function (arg0, arg1) {
2189
+ const ret = JSON.parse(getStringFromWasm0(arg0, arg1));
2190
+ return addHeapObject(ret);
2191
+ }, arguments) };
2192
+
2193
+ exports.__wbg_set_3f1d0b984ed272ed = function(arg0, arg1, arg2) {
2194
+ getObject(arg0)[takeObject(arg1)] = takeObject(arg2);
2195
+ };
2196
+
2197
+ exports.__wbg_set_90f6c0f7bd8c0415 = function(arg0, arg1, arg2) {
2198
+ getObject(arg0)[arg1 >>> 0] = takeObject(arg2);
2199
+ };
2200
+
2201
+ exports.__wbg_set_b7f1cf4fae26fe2a = function(arg0, arg1, arg2) {
2202
+ const ret = getObject(arg0).set(getObject(arg1), getObject(arg2));
2203
+ return addHeapObject(ret);
2204
+ };
2205
+
2206
+ exports.__wbg_stack_0ed75d68575b0f3c = function(arg0, arg1) {
2207
+ const ret = getObject(arg1).stack;
2208
+ const ptr1 = passStringToWasm0(ret, wasm.__wbindgen_export_0, wasm.__wbindgen_export_1);
2209
+ const len1 = WASM_VECTOR_LEN;
2210
+ getDataViewMemory0().setInt32(arg0 + 4 * 1, len1, true);
2211
+ getDataViewMemory0().setInt32(arg0 + 4 * 0, ptr1, true);
2212
+ };
2213
+
2214
+ exports.__wbg_validationerror_new = function(arg0) {
2215
+ const ret = ValidationError.__wrap(arg0);
2216
+ return addHeapObject(ret);
2217
+ };
2218
+
2219
+ exports.__wbg_wbindgendebugstring_99ef257a3ddda34d = function(arg0, arg1) {
2220
+ const ret = debugString(getObject(arg1));
2221
+ const ptr1 = passStringToWasm0(ret, wasm.__wbindgen_export_0, wasm.__wbindgen_export_1);
2222
+ const len1 = WASM_VECTOR_LEN;
2223
+ getDataViewMemory0().setInt32(arg0 + 4 * 1, len1, true);
2224
+ getDataViewMemory0().setInt32(arg0 + 4 * 0, ptr1, true);
2225
+ };
2226
+
2227
+ exports.__wbg_wbindgenisstring_d4fa939789f003b0 = function(arg0) {
2228
+ const ret = typeof(getObject(arg0)) === 'string';
2229
+ return ret;
2230
+ };
2231
+
2232
+ exports.__wbg_wbindgenstringget_0f16a6ddddef376f = function(arg0, arg1) {
2233
+ const obj = getObject(arg1);
2234
+ const ret = typeof(obj) === 'string' ? obj : undefined;
2235
+ var ptr1 = isLikeNone(ret) ? 0 : passStringToWasm0(ret, wasm.__wbindgen_export_0, wasm.__wbindgen_export_1);
2236
+ var len1 = WASM_VECTOR_LEN;
2237
+ getDataViewMemory0().setInt32(arg0 + 4 * 1, len1, true);
2238
+ getDataViewMemory0().setInt32(arg0 + 4 * 0, ptr1, true);
2239
+ };
2240
+
2241
+ exports.__wbg_wbindgenthrow_451ec1a8469d7eb6 = function(arg0, arg1) {
2242
+ throw new Error(getStringFromWasm0(arg0, arg1));
2243
+ };
2244
+
2245
+ exports.__wbindgen_cast_2241b6af4c4b2941 = function(arg0, arg1) {
2246
+ // Cast intrinsic for `Ref(String) -> Externref`.
2247
+ const ret = getStringFromWasm0(arg0, arg1);
2248
+ return addHeapObject(ret);
2249
+ };
2250
+
2251
+ exports.__wbindgen_cast_4625c577ab2ec9ee = function(arg0) {
2252
+ // Cast intrinsic for `U64 -> Externref`.
2253
+ const ret = BigInt.asUintN(64, arg0);
2254
+ return addHeapObject(ret);
2255
+ };
2256
+
2257
+ exports.__wbindgen_cast_9ae0607507abb057 = function(arg0) {
2258
+ // Cast intrinsic for `I64 -> Externref`.
2259
+ const ret = arg0;
2260
+ return addHeapObject(ret);
2261
+ };
2262
+
2263
+ exports.__wbindgen_cast_d6cd19b81560fd6e = function(arg0) {
2264
+ // Cast intrinsic for `F64 -> Externref`.
2265
+ const ret = arg0;
2266
+ return addHeapObject(ret);
2267
+ };
2268
+
2269
+ exports.__wbindgen_object_clone_ref = function(arg0) {
2270
+ const ret = getObject(arg0);
2271
+ return addHeapObject(ret);
2272
+ };
2273
+
2274
+ exports.__wbindgen_object_drop_ref = function(arg0) {
2275
+ takeObject(arg0);
2276
+ };
2277
+
2278
+ const wasmPath = `${__dirname}/json_eval_rs_bg.wasm`;
2279
+ const wasmBytes = require('fs').readFileSync(wasmPath);
2280
+ const wasmModule = new WebAssembly.Module(wasmBytes);
2281
+ const wasm = exports.__wasm = new WebAssembly.Instance(wasmModule, imports).exports;
2282
+
2283
+ wasm.__wbindgen_start();
2284
+