mindoodb-app-sdk 0.0.20 → 0.0.26

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.
@@ -1,3791 +1,9 @@
1
- import {
2
- __commonJS,
3
- __require,
4
- __toESM
5
- } from "../chunk-QGM4M3NI.js";
6
-
7
- // node_modules/.pnpm/@automerge+automerge@3.2.6/node_modules/@automerge/automerge/dist/mjs/wasm_bindgen_output/nodejs/automerge_wasm.cjs
8
- var require_automerge_wasm = __commonJS({
9
- "node_modules/.pnpm/@automerge+automerge@3.2.6/node_modules/@automerge/automerge/dist/mjs/wasm_bindgen_output/nodejs/automerge_wasm.cjs"(exports) {
10
- "use strict";
11
- function isNode18() {
12
- if (typeof process === "undefined" || typeof process.versions === "undefined" || typeof process.versions.node === "undefined") {
13
- return false;
14
- }
15
- const nodeVersion = process.versions.node;
16
- const majorVersion = parseInt(nodeVersion.split(".")[0], 10);
17
- return majorVersion == 18;
18
- }
19
- if (isNode18()) {
20
- globalThis.crypto = __require("crypto").webcrypto;
21
- }
22
- var Automerge2 = class _Automerge {
23
- static __wrap(ptr) {
24
- ptr = ptr >>> 0;
25
- const obj = Object.create(_Automerge.prototype);
26
- obj.__wbg_ptr = ptr;
27
- AutomergeFinalization2.register(obj, obj.__wbg_ptr, obj);
28
- return obj;
29
- }
30
- __destroy_into_raw() {
31
- const ptr = this.__wbg_ptr;
32
- this.__wbg_ptr = 0;
33
- AutomergeFinalization2.unregister(this);
34
- return ptr;
35
- }
36
- free() {
37
- const ptr = this.__destroy_into_raw();
38
- wasm2.__wbg_automerge_free(ptr, 0);
39
- }
40
- /**
41
- * @param {any} object
42
- * @param {any} meta
43
- * @returns {any}
44
- */
45
- applyAndReturnPatches(object, meta) {
46
- const ret = wasm2.automerge_applyAndReturnPatches(this.__wbg_ptr, object, meta);
47
- if (ret[2]) {
48
- throw takeFromExternrefTable02(ret[1]);
49
- }
50
- return takeFromExternrefTable02(ret[0]);
51
- }
52
- /**
53
- * @param {Change[]} changes
54
- */
55
- applyChanges(changes) {
56
- const ret = wasm2.automerge_applyChanges(this.__wbg_ptr, changes);
57
- if (ret[1]) {
58
- throw takeFromExternrefTable02(ret[0]);
59
- }
60
- }
61
- /**
62
- * @param {any} object
63
- * @param {any} meta
64
- * @returns {any}
65
- */
66
- applyPatches(object, meta) {
67
- const ret = wasm2.automerge_applyPatches(this.__wbg_ptr, object, meta);
68
- if (ret[2]) {
69
- throw takeFromExternrefTable02(ret[1]);
70
- }
71
- return takeFromExternrefTable02(ret[0]);
72
- }
73
- /**
74
- * @param {string | null} [actor]
75
- * @returns {Automerge}
76
- */
77
- clone(actor) {
78
- var ptr0 = isLikeNone2(actor) ? 0 : passStringToWasm02(actor, wasm2.__wbindgen_malloc, wasm2.__wbindgen_realloc);
79
- var len0 = WASM_VECTOR_LEN2;
80
- const ret = wasm2.automerge_clone(this.__wbg_ptr, ptr0, len0);
81
- if (ret[2]) {
82
- throw takeFromExternrefTable02(ret[1]);
83
- }
84
- return _Automerge.__wrap(ret[0]);
85
- }
86
- /**
87
- * @param {string | null} [message]
88
- * @param {number | null} [time]
89
- * @returns {Hash | null}
90
- */
91
- commit(message, time) {
92
- var ptr0 = isLikeNone2(message) ? 0 : passStringToWasm02(message, wasm2.__wbindgen_malloc, wasm2.__wbindgen_realloc);
93
- var len0 = WASM_VECTOR_LEN2;
94
- const ret = wasm2.automerge_commit(this.__wbg_ptr, ptr0, len0, !isLikeNone2(time), isLikeNone2(time) ? 0 : time);
95
- return ret;
96
- }
97
- /**
98
- * @param {ObjID} obj
99
- * @param {Prop} prop
100
- */
101
- delete(obj, prop) {
102
- const ret = wasm2.automerge_delete(this.__wbg_ptr, obj, prop);
103
- if (ret[1]) {
104
- throw takeFromExternrefTable02(ret[0]);
105
- }
106
- }
107
- /**
108
- * @param {Heads} before
109
- * @param {Heads} after
110
- * @returns {Patch[]}
111
- */
112
- diff(before, after) {
113
- const ret = wasm2.automerge_diff(this.__wbg_ptr, before, after);
114
- if (ret[2]) {
115
- throw takeFromExternrefTable02(ret[1]);
116
- }
117
- return takeFromExternrefTable02(ret[0]);
118
- }
119
- /**
120
- * @returns {Patch[]}
121
- */
122
- diffIncremental() {
123
- const ret = wasm2.automerge_diffIncremental(this.__wbg_ptr);
124
- if (ret[2]) {
125
- throw takeFromExternrefTable02(ret[1]);
126
- }
127
- return takeFromExternrefTable02(ret[0]);
128
- }
129
- /**
130
- * @param {Prop[] | string} path
131
- * @param {Heads} before
132
- * @param {Heads} after
133
- * @param {any} options
134
- * @returns {Array<any>}
135
- */
136
- diffPath(path, before, after, options) {
137
- const ret = wasm2.automerge_diffPath(this.__wbg_ptr, path, before, after, options);
138
- if (ret[2]) {
139
- throw takeFromExternrefTable02(ret[1]);
140
- }
141
- return takeFromExternrefTable02(ret[0]);
142
- }
143
- dump() {
144
- wasm2.automerge_dump(this.__wbg_ptr);
145
- }
146
- /**
147
- * @param {string | null} [message]
148
- * @param {number | null} [time]
149
- * @returns {Hash}
150
- */
151
- emptyChange(message, time) {
152
- var ptr0 = isLikeNone2(message) ? 0 : passStringToWasm02(message, wasm2.__wbindgen_malloc, wasm2.__wbindgen_realloc);
153
- var len0 = WASM_VECTOR_LEN2;
154
- const ret = wasm2.automerge_emptyChange(this.__wbg_ptr, ptr0, len0, !isLikeNone2(time), isLikeNone2(time) ? 0 : time);
155
- return ret;
156
- }
157
- /**
158
- * @param {boolean} enable
159
- * @returns {boolean}
160
- */
161
- enableFreeze(enable) {
162
- const ret = wasm2.automerge_enableFreeze(this.__wbg_ptr, enable);
163
- if (ret[2]) {
164
- throw takeFromExternrefTable02(ret[1]);
165
- }
166
- return ret[0] !== 0;
167
- }
168
- /**
169
- * @param {string | null | undefined} actor
170
- * @param {any} heads
171
- * @returns {Automerge}
172
- */
173
- fork(actor, heads) {
174
- var ptr0 = isLikeNone2(actor) ? 0 : passStringToWasm02(actor, wasm2.__wbindgen_malloc, wasm2.__wbindgen_realloc);
175
- var len0 = WASM_VECTOR_LEN2;
176
- const ret = wasm2.automerge_fork(this.__wbg_ptr, ptr0, len0, heads);
177
- if (ret[2]) {
178
- throw takeFromExternrefTable02(ret[1]);
179
- }
180
- return _Automerge.__wrap(ret[0]);
181
- }
182
- /**
183
- * @param {SyncState} state
184
- * @returns {SyncMessage | null}
185
- */
186
- generateSyncMessage(state) {
187
- _assertClass2(state, SyncState2);
188
- const ret = wasm2.automerge_generateSyncMessage(this.__wbg_ptr, state.__wbg_ptr);
189
- return ret;
190
- }
191
- /**
192
- * @param {any} obj
193
- * @param {any} prop
194
- * @param {any} heads
195
- * @returns {any}
196
- */
197
- get(obj, prop, heads) {
198
- const ret = wasm2.automerge_get(this.__wbg_ptr, obj, prop, heads);
199
- if (ret[2]) {
200
- throw takeFromExternrefTable02(ret[1]);
201
- }
202
- return takeFromExternrefTable02(ret[0]);
203
- }
204
- /**
205
- * @returns {Actor}
206
- */
207
- getActorId() {
208
- let deferred1_0;
209
- let deferred1_1;
210
- try {
211
- const ret = wasm2.automerge_getActorId(this.__wbg_ptr);
212
- deferred1_0 = ret[0];
213
- deferred1_1 = ret[1];
214
- return getStringFromWasm02(ret[0], ret[1]);
215
- } finally {
216
- wasm2.__wbindgen_free(deferred1_0, deferred1_1, 1);
217
- }
218
- }
219
- /**
220
- * @param {any} obj
221
- * @param {any} arg
222
- * @param {any} heads
223
- * @returns {Array<any>}
224
- */
225
- getAll(obj, arg, heads) {
226
- const ret = wasm2.automerge_getAll(this.__wbg_ptr, obj, arg, heads);
227
- if (ret[2]) {
228
- throw takeFromExternrefTable02(ret[1]);
229
- }
230
- return takeFromExternrefTable02(ret[0]);
231
- }
232
- /**
233
- * @param {any} text
234
- * @param {number} index
235
- * @param {any} heads
236
- * @returns {any}
237
- */
238
- getBlock(text, index, heads) {
239
- const ret = wasm2.automerge_getBlock(this.__wbg_ptr, text, index, heads);
240
- if (ret[2]) {
241
- throw takeFromExternrefTable02(ret[1]);
242
- }
243
- return takeFromExternrefTable02(ret[0]);
244
- }
245
- /**
246
- * @param {Hash} hash
247
- * @returns {Change | null}
248
- */
249
- getChangeByHash(hash) {
250
- const ret = wasm2.automerge_getChangeByHash(this.__wbg_ptr, hash);
251
- if (ret[2]) {
252
- throw takeFromExternrefTable02(ret[1]);
253
- }
254
- return takeFromExternrefTable02(ret[0]);
255
- }
256
- /**
257
- * @param {Hash} hash
258
- * @returns {ChangeMetadata | null}
259
- */
260
- getChangeMetaByHash(hash) {
261
- const ret = wasm2.automerge_getChangeMetaByHash(this.__wbg_ptr, hash);
262
- if (ret[2]) {
263
- throw takeFromExternrefTable02(ret[1]);
264
- }
265
- return takeFromExternrefTable02(ret[0]);
266
- }
267
- /**
268
- * @param {Heads} have_deps
269
- * @returns {Change[]}
270
- */
271
- getChanges(have_deps) {
272
- const ret = wasm2.automerge_getChanges(this.__wbg_ptr, have_deps);
273
- if (ret[2]) {
274
- throw takeFromExternrefTable02(ret[1]);
275
- }
276
- return takeFromExternrefTable02(ret[0]);
277
- }
278
- /**
279
- * @param {Automerge} other
280
- * @returns {Change[]}
281
- */
282
- getChangesAdded(other) {
283
- _assertClass2(other, _Automerge);
284
- const ret = wasm2.automerge_getChangesAdded(this.__wbg_ptr, other.__wbg_ptr);
285
- return ret;
286
- }
287
- /**
288
- * @param {Heads} have_deps
289
- * @returns {ChangeMetadata[]}
290
- */
291
- getChangesMeta(have_deps) {
292
- const ret = wasm2.automerge_getChangesMeta(this.__wbg_ptr, have_deps);
293
- if (ret[2]) {
294
- throw takeFromExternrefTable02(ret[1]);
295
- }
296
- return takeFromExternrefTable02(ret[0]);
297
- }
298
- /**
299
- * @param {any} obj
300
- * @param {any} position
301
- * @param {any} heads
302
- * @param {any} move_cursor
303
- * @returns {string}
304
- */
305
- getCursor(obj, position, heads, move_cursor) {
306
- let deferred2_0;
307
- let deferred2_1;
308
- try {
309
- const ret = wasm2.automerge_getCursor(this.__wbg_ptr, obj, position, heads, move_cursor);
310
- var ptr1 = ret[0];
311
- var len1 = ret[1];
312
- if (ret[3]) {
313
- ptr1 = 0;
314
- len1 = 0;
315
- throw takeFromExternrefTable02(ret[2]);
316
- }
317
- deferred2_0 = ptr1;
318
- deferred2_1 = len1;
319
- return getStringFromWasm02(ptr1, len1);
320
- } finally {
321
- wasm2.__wbindgen_free(deferred2_0, deferred2_1, 1);
322
- }
323
- }
324
- /**
325
- * @param {any} obj
326
- * @param {any} cursor
327
- * @param {any} heads
328
- * @returns {number}
329
- */
330
- getCursorPosition(obj, cursor, heads) {
331
- const ret = wasm2.automerge_getCursorPosition(this.__wbg_ptr, obj, cursor, heads);
332
- if (ret[2]) {
333
- throw takeFromExternrefTable02(ret[1]);
334
- }
335
- return ret[0];
336
- }
337
- /**
338
- * @param {Hash} hash
339
- * @returns {DecodedChange | null}
340
- */
341
- getDecodedChangeByHash(hash) {
342
- const ret = wasm2.automerge_getDecodedChangeByHash(this.__wbg_ptr, hash);
343
- if (ret[2]) {
344
- throw takeFromExternrefTable02(ret[1]);
345
- }
346
- return takeFromExternrefTable02(ret[0]);
347
- }
348
- /**
349
- * @returns {Heads}
350
- */
351
- getHeads() {
352
- const ret = wasm2.automerge_getHeads(this.__wbg_ptr);
353
- return ret;
354
- }
355
- /**
356
- * @returns {Change | null}
357
- */
358
- getLastLocalChange() {
359
- const ret = wasm2.automerge_getLastLocalChange(this.__wbg_ptr);
360
- return ret;
361
- }
362
- /**
363
- * @param {any} heads
364
- * @returns {Array<any>}
365
- */
366
- getMissingDeps(heads) {
367
- const ret = wasm2.automerge_getMissingDeps(this.__wbg_ptr, heads);
368
- if (ret[2]) {
369
- throw takeFromExternrefTable02(ret[1]);
370
- }
371
- return takeFromExternrefTable02(ret[0]);
372
- }
373
- /**
374
- * @param {any} obj
375
- * @param {any} prop
376
- * @param {any} heads
377
- * @returns {any}
378
- */
379
- getWithType(obj, prop, heads) {
380
- const ret = wasm2.automerge_getWithType(this.__wbg_ptr, obj, prop, heads);
381
- if (ret[2]) {
382
- throw takeFromExternrefTable02(ret[1]);
383
- }
384
- return takeFromExternrefTable02(ret[0]);
385
- }
386
- /**
387
- * @param {SyncState} state
388
- * @returns {boolean}
389
- */
390
- hasOurChanges(state) {
391
- _assertClass2(state, SyncState2);
392
- const ret = wasm2.automerge_hasOurChanges(this.__wbg_ptr, state.__wbg_ptr);
393
- return ret !== 0;
394
- }
395
- /**
396
- * @param {ObjID} obj
397
- * @param {Prop} prop
398
- * @param {number} value
399
- */
400
- increment(obj, prop, value) {
401
- const ret = wasm2.automerge_increment(this.__wbg_ptr, obj, prop, value);
402
- if (ret[1]) {
403
- throw takeFromExternrefTable02(ret[0]);
404
- }
405
- }
406
- /**
407
- * Initialize the root object of an empty document from a JS object.
408
- * This is much faster than setting keys one at a time for large initial states.
409
- * @param {any} value
410
- */
411
- initRootFromHydrate(value) {
412
- const ret = wasm2.automerge_initRootFromHydrate(this.__wbg_ptr, value);
413
- if (ret[1]) {
414
- throw takeFromExternrefTable02(ret[0]);
415
- }
416
- }
417
- /**
418
- * @param {any} obj
419
- * @param {number} index
420
- * @param {any} value
421
- * @param {any} datatype
422
- */
423
- insert(obj, index, value, datatype) {
424
- const ret = wasm2.automerge_insert(this.__wbg_ptr, obj, index, value, datatype);
425
- if (ret[1]) {
426
- throw takeFromExternrefTable02(ret[0]);
427
- }
428
- }
429
- /**
430
- * @param {ObjID} obj
431
- * @param {number} index
432
- * @param {ObjType} value
433
- * @returns {ObjID}
434
- */
435
- insertObject(obj, index, value) {
436
- let deferred2_0;
437
- let deferred2_1;
438
- try {
439
- const ret = wasm2.automerge_insertObject(this.__wbg_ptr, obj, index, value);
440
- var ptr1 = ret[0];
441
- var len1 = ret[1];
442
- if (ret[3]) {
443
- ptr1 = 0;
444
- len1 = 0;
445
- throw takeFromExternrefTable02(ret[2]);
446
- }
447
- deferred2_0 = ptr1;
448
- deferred2_1 = len1;
449
- return getStringFromWasm02(ptr1, len1);
450
- } finally {
451
- wasm2.__wbindgen_free(deferred2_0, deferred2_1, 1);
452
- }
453
- }
454
- /**
455
- * Insert a nested JavaScript value into a list using batch insertion.
456
- * This is much faster than insertObject for large nested objects.
457
- * The value is inserted at the given index, shifting subsequent elements.
458
- * @param {ObjID} obj
459
- * @param {number} index
460
- * @param {any} value
461
- * @returns {ObjID}
462
- */
463
- insertObjectFromHydrate(obj, index, value) {
464
- const ret = wasm2.automerge_insertObjectFromHydrate(this.__wbg_ptr, obj, index, value);
465
- if (ret[2]) {
466
- throw takeFromExternrefTable02(ret[1]);
467
- }
468
- return takeFromExternrefTable02(ret[0]);
469
- }
470
- integrate() {
471
- wasm2.automerge_integrate(this.__wbg_ptr);
472
- }
473
- /**
474
- * @param {Heads} heads
475
- */
476
- isolate(heads) {
477
- const ret = wasm2.automerge_isolate(this.__wbg_ptr, heads);
478
- if (ret[1]) {
479
- throw takeFromExternrefTable02(ret[0]);
480
- }
481
- }
482
- /**
483
- * @param {ObjID} obj
484
- * @param {number} index
485
- */
486
- joinBlock(obj, index) {
487
- const ret = wasm2.automerge_joinBlock(this.__wbg_ptr, obj, index);
488
- if (ret[1]) {
489
- throw takeFromExternrefTable02(ret[0]);
490
- }
491
- }
492
- /**
493
- * @param {any} obj
494
- * @param {any} heads
495
- * @returns {Array<any>}
496
- */
497
- keys(obj, heads) {
498
- const ret = wasm2.automerge_keys(this.__wbg_ptr, obj, heads);
499
- if (ret[2]) {
500
- throw takeFromExternrefTable02(ret[1]);
501
- }
502
- return takeFromExternrefTable02(ret[0]);
503
- }
504
- /**
505
- * @param {any} obj
506
- * @param {any} heads
507
- * @returns {number}
508
- */
509
- length(obj, heads) {
510
- const ret = wasm2.automerge_length(this.__wbg_ptr, obj, heads);
511
- if (ret[2]) {
512
- throw takeFromExternrefTable02(ret[1]);
513
- }
514
- return ret[0];
515
- }
516
- /**
517
- * @param {Uint8Array} data
518
- * @returns {number}
519
- */
520
- loadIncremental(data) {
521
- const ret = wasm2.automerge_loadIncremental(this.__wbg_ptr, data);
522
- if (ret[2]) {
523
- throw takeFromExternrefTable02(ret[1]);
524
- }
525
- return ret[0];
526
- }
527
- /**
528
- * @param {any} obj
529
- * @param {any} range
530
- * @param {any} name
531
- * @param {any} value
532
- * @param {any} datatype
533
- */
534
- mark(obj, range, name, value, datatype) {
535
- const ret = wasm2.automerge_mark(this.__wbg_ptr, obj, range, name, value, datatype);
536
- if (ret[1]) {
537
- throw takeFromExternrefTable02(ret[0]);
538
- }
539
- }
540
- /**
541
- * @param {any} obj
542
- * @param {any} heads
543
- * @returns {any}
544
- */
545
- marks(obj, heads) {
546
- const ret = wasm2.automerge_marks(this.__wbg_ptr, obj, heads);
547
- if (ret[2]) {
548
- throw takeFromExternrefTable02(ret[1]);
549
- }
550
- return takeFromExternrefTable02(ret[0]);
551
- }
552
- /**
553
- * @param {any} obj
554
- * @param {number} index
555
- * @param {any} heads
556
- * @returns {object}
557
- */
558
- marksAt(obj, index, heads) {
559
- const ret = wasm2.automerge_marksAt(this.__wbg_ptr, obj, index, heads);
560
- if (ret[2]) {
561
- throw takeFromExternrefTable02(ret[1]);
562
- }
563
- return takeFromExternrefTable02(ret[0]);
564
- }
565
- /**
566
- * @param {any} obj
567
- * @param {any} heads
568
- * @param {any} meta
569
- * @returns {any}
570
- */
571
- materialize(obj, heads, meta) {
572
- const ret = wasm2.automerge_materialize(this.__wbg_ptr, obj, heads, meta);
573
- if (ret[2]) {
574
- throw takeFromExternrefTable02(ret[1]);
575
- }
576
- return takeFromExternrefTable02(ret[0]);
577
- }
578
- /**
579
- * @param {Automerge} other
580
- * @returns {Heads}
581
- */
582
- merge(other) {
583
- _assertClass2(other, _Automerge);
584
- const ret = wasm2.automerge_merge(this.__wbg_ptr, other.__wbg_ptr);
585
- if (ret[2]) {
586
- throw takeFromExternrefTable02(ret[1]);
587
- }
588
- return takeFromExternrefTable02(ret[0]);
589
- }
590
- /**
591
- * @param {string | null} [actor]
592
- * @returns {Automerge}
593
- */
594
- static new(actor) {
595
- var ptr0 = isLikeNone2(actor) ? 0 : passStringToWasm02(actor, wasm2.__wbindgen_malloc, wasm2.__wbindgen_realloc);
596
- var len0 = WASM_VECTOR_LEN2;
597
- const ret = wasm2.automerge_new(ptr0, len0);
598
- if (ret[2]) {
599
- throw takeFromExternrefTable02(ret[1]);
600
- }
601
- return _Automerge.__wrap(ret[0]);
602
- }
603
- /**
604
- * @param {any} obj
605
- * @param {any} heads
606
- * @returns {object}
607
- */
608
- objInfo(obj, heads) {
609
- const ret = wasm2.automerge_objInfo(this.__wbg_ptr, obj, heads);
610
- if (ret[2]) {
611
- throw takeFromExternrefTable02(ret[1]);
612
- }
613
- return takeFromExternrefTable02(ret[0]);
614
- }
615
- /**
616
- * @returns {number}
617
- */
618
- pendingOps() {
619
- const ret = wasm2.automerge_pendingOps(this.__wbg_ptr);
620
- return ret;
621
- }
622
- /**
623
- * @param {any} obj
624
- * @param {any} value
625
- * @param {any} datatype
626
- */
627
- push(obj, value, datatype) {
628
- const ret = wasm2.automerge_push(this.__wbg_ptr, obj, value, datatype);
629
- if (ret[1]) {
630
- throw takeFromExternrefTable02(ret[0]);
631
- }
632
- }
633
- /**
634
- * @param {ObjID} obj
635
- * @param {ObjType} value
636
- * @returns {ObjID}
637
- */
638
- pushObject(obj, value) {
639
- let deferred2_0;
640
- let deferred2_1;
641
- try {
642
- const ret = wasm2.automerge_pushObject(this.__wbg_ptr, obj, value);
643
- var ptr1 = ret[0];
644
- var len1 = ret[1];
645
- if (ret[3]) {
646
- ptr1 = 0;
647
- len1 = 0;
648
- throw takeFromExternrefTable02(ret[2]);
649
- }
650
- deferred2_0 = ptr1;
651
- deferred2_1 = len1;
652
- return getStringFromWasm02(ptr1, len1);
653
- } finally {
654
- wasm2.__wbindgen_free(deferred2_0, deferred2_1, 1);
655
- }
656
- }
657
- /**
658
- * @param {any} obj
659
- * @param {any} prop
660
- * @param {any} value
661
- * @param {any} datatype
662
- */
663
- put(obj, prop, value, datatype) {
664
- const ret = wasm2.automerge_put(this.__wbg_ptr, obj, prop, value, datatype);
665
- if (ret[1]) {
666
- throw takeFromExternrefTable02(ret[0]);
667
- }
668
- }
669
- /**
670
- * @param {ObjID} obj
671
- * @param {Prop} prop
672
- * @param {ObjType} value
673
- * @returns {ObjID}
674
- */
675
- putObject(obj, prop, value) {
676
- const ret = wasm2.automerge_putObject(this.__wbg_ptr, obj, prop, value);
677
- if (ret[2]) {
678
- throw takeFromExternrefTable02(ret[1]);
679
- }
680
- return takeFromExternrefTable02(ret[0]);
681
- }
682
- /**
683
- * Put a nested JavaScript value as a new object tree using batch insertion.
684
- * This is much faster than putObject for large nested objects.
685
- * For map keys this overwrites any existing value. For list indices this
686
- * overwrites the element at that index.
687
- * @param {ObjID} obj
688
- * @param {Prop} prop
689
- * @param {any} value
690
- * @returns {ObjID}
691
- */
692
- putObjectFromHydrate(obj, prop, value) {
693
- const ret = wasm2.automerge_putObjectFromHydrate(this.__wbg_ptr, obj, prop, value);
694
- if (ret[2]) {
695
- throw takeFromExternrefTable02(ret[1]);
696
- }
697
- return takeFromExternrefTable02(ret[0]);
698
- }
699
- /**
700
- * @param {SyncState} state
701
- * @param {SyncMessage} message
702
- */
703
- receiveSyncMessage(state, message) {
704
- _assertClass2(state, SyncState2);
705
- const ret = wasm2.automerge_receiveSyncMessage(this.__wbg_ptr, state.__wbg_ptr, message);
706
- if (ret[1]) {
707
- throw takeFromExternrefTable02(ret[0]);
708
- }
709
- }
710
- /**
711
- * @param {string} datatype
712
- * @param {Function} construct
713
- * @param {(arg: any) => any | undefined} deconstruct
714
- */
715
- registerDatatype(datatype, construct, deconstruct) {
716
- const ret = wasm2.automerge_registerDatatype(this.__wbg_ptr, datatype, construct, deconstruct);
717
- if (ret[1]) {
718
- throw takeFromExternrefTable02(ret[0]);
719
- }
720
- }
721
- resetDiffCursor() {
722
- wasm2.automerge_resetDiffCursor(this.__wbg_ptr);
723
- }
724
- /**
725
- * @returns {number}
726
- */
727
- rollback() {
728
- const ret = wasm2.automerge_rollback(this.__wbg_ptr);
729
- return ret;
730
- }
731
- /**
732
- * @returns {Uint8Array}
733
- */
734
- save() {
735
- const ret = wasm2.automerge_save(this.__wbg_ptr);
736
- return ret;
737
- }
738
- /**
739
- * @returns {Uint8Array}
740
- */
741
- saveAndVerify() {
742
- const ret = wasm2.automerge_saveAndVerify(this.__wbg_ptr);
743
- if (ret[2]) {
744
- throw takeFromExternrefTable02(ret[1]);
745
- }
746
- return takeFromExternrefTable02(ret[0]);
747
- }
748
- /**
749
- * @param {any} hashes
750
- * @returns {Uint8Array}
751
- */
752
- saveBundle(hashes) {
753
- const ret = wasm2.automerge_saveBundle(this.__wbg_ptr, hashes);
754
- if (ret[2]) {
755
- throw takeFromExternrefTable02(ret[1]);
756
- }
757
- return takeFromExternrefTable02(ret[0]);
758
- }
759
- /**
760
- * @returns {Uint8Array}
761
- */
762
- saveIncremental() {
763
- const ret = wasm2.automerge_saveIncremental(this.__wbg_ptr);
764
- return ret;
765
- }
766
- /**
767
- * @returns {Uint8Array}
768
- */
769
- saveNoCompress() {
770
- const ret = wasm2.automerge_saveNoCompress(this.__wbg_ptr);
771
- return ret;
772
- }
773
- /**
774
- * @param {Heads} heads
775
- * @returns {Uint8Array}
776
- */
777
- saveSince(heads) {
778
- const ret = wasm2.automerge_saveSince(this.__wbg_ptr, heads);
779
- if (ret[2]) {
780
- throw takeFromExternrefTable02(ret[1]);
781
- }
782
- return takeFromExternrefTable02(ret[0]);
783
- }
784
- /**
785
- * @param {any} obj
786
- * @param {any} heads
787
- * @returns {Array<any>}
788
- */
789
- spans(obj, heads) {
790
- const ret = wasm2.automerge_spans(this.__wbg_ptr, obj, heads);
791
- if (ret[2]) {
792
- throw takeFromExternrefTable02(ret[1]);
793
- }
794
- return takeFromExternrefTable02(ret[0]);
795
- }
796
- /**
797
- * @param {any} obj
798
- * @param {number} start
799
- * @param {number} delete_count
800
- * @param {any} text
801
- */
802
- splice(obj, start, delete_count, text) {
803
- const ret = wasm2.automerge_splice(this.__wbg_ptr, obj, start, delete_count, text);
804
- if (ret[1]) {
805
- throw takeFromExternrefTable02(ret[0]);
806
- }
807
- }
808
- /**
809
- * Splice values into a list using batch insertion.
810
- * This is much faster than individual insert calls for multiple values.
811
- * @param {ObjID} obj
812
- * @param {number} index
813
- * @param {number} del
814
- * @param {any} values
815
- */
816
- spliceFromHydrate(obj, index, del, values) {
817
- const ret = wasm2.automerge_spliceFromHydrate(this.__wbg_ptr, obj, index, del, values);
818
- if (ret[1]) {
819
- throw takeFromExternrefTable02(ret[0]);
820
- }
821
- }
822
- /**
823
- * @param {ObjID} obj
824
- * @param {number} index
825
- * @param {{[key: string]: MaterializeValue}} block
826
- */
827
- splitBlock(obj, index, block) {
828
- const ret = wasm2.automerge_splitBlock(this.__wbg_ptr, obj, index, block);
829
- if (ret[1]) {
830
- throw takeFromExternrefTable02(ret[0]);
831
- }
832
- }
833
- /**
834
- * @returns {Stats}
835
- */
836
- stats() {
837
- const ret = wasm2.automerge_stats(this.__wbg_ptr);
838
- return ret;
839
- }
840
- /**
841
- * @param {any} obj
842
- * @param {any} heads
843
- * @returns {string}
844
- */
845
- text(obj, heads) {
846
- let deferred2_0;
847
- let deferred2_1;
848
- try {
849
- const ret = wasm2.automerge_text(this.__wbg_ptr, obj, heads);
850
- var ptr1 = ret[0];
851
- var len1 = ret[1];
852
- if (ret[3]) {
853
- ptr1 = 0;
854
- len1 = 0;
855
- throw takeFromExternrefTable02(ret[2]);
856
- }
857
- deferred2_0 = ptr1;
858
- deferred2_1 = len1;
859
- return getStringFromWasm02(ptr1, len1);
860
- } finally {
861
- wasm2.__wbindgen_free(deferred2_0, deferred2_1, 1);
862
- }
863
- }
864
- /**
865
- * @param {any} meta
866
- * @returns {MaterializeValue}
867
- */
868
- toJS(meta) {
869
- const ret = wasm2.automerge_toJS(this.__wbg_ptr, meta);
870
- if (ret[2]) {
871
- throw takeFromExternrefTable02(ret[1]);
872
- }
873
- return takeFromExternrefTable02(ret[0]);
874
- }
875
- /**
876
- * @returns {Hash[]}
877
- */
878
- topoHistoryTraversal() {
879
- const ret = wasm2.automerge_topoHistoryTraversal(this.__wbg_ptr);
880
- return ret;
881
- }
882
- /**
883
- * @param {ObjID} obj
884
- * @param {MarkRange} range
885
- * @param {string} name
886
- */
887
- unmark(obj, range, name) {
888
- const ret = wasm2.automerge_unmark(this.__wbg_ptr, obj, range, name);
889
- if (ret[1]) {
890
- throw takeFromExternrefTable02(ret[0]);
891
- }
892
- }
893
- /**
894
- * @param {ObjID} obj
895
- * @param {number} index
896
- * @param {{[key: string]: MaterializeValue}} block
897
- */
898
- updateBlock(obj, index, block) {
899
- const ret = wasm2.automerge_updateBlock(this.__wbg_ptr, obj, index, block);
900
- if (ret[1]) {
901
- throw takeFromExternrefTable02(ret[0]);
902
- }
903
- }
904
- updateDiffCursor() {
905
- wasm2.automerge_updateDiffCursor(this.__wbg_ptr);
906
- }
907
- /**
908
- * @param {ObjID} obj
909
- * @param {Span[]} args
910
- * @param {UpdateSpansConfig | undefined | null} config
911
- */
912
- updateSpans(obj, args, config) {
913
- const ret = wasm2.automerge_updateSpans(this.__wbg_ptr, obj, args, config);
914
- if (ret[1]) {
915
- throw takeFromExternrefTable02(ret[0]);
916
- }
917
- }
918
- /**
919
- * @param {ObjID} obj
920
- * @param {string} new_text
921
- */
922
- updateText(obj, new_text) {
923
- const ret = wasm2.automerge_updateText(this.__wbg_ptr, obj, new_text);
924
- if (ret[1]) {
925
- throw takeFromExternrefTable02(ret[0]);
926
- }
927
- }
928
- };
929
- if (Symbol.dispose) Automerge2.prototype[Symbol.dispose] = Automerge2.prototype.free;
930
- exports.Automerge = Automerge2;
931
- var SyncState2 = class _SyncState {
932
- static __wrap(ptr) {
933
- ptr = ptr >>> 0;
934
- const obj = Object.create(_SyncState.prototype);
935
- obj.__wbg_ptr = ptr;
936
- SyncStateFinalization2.register(obj, obj.__wbg_ptr, obj);
937
- return obj;
938
- }
939
- __destroy_into_raw() {
940
- const ptr = this.__wbg_ptr;
941
- this.__wbg_ptr = 0;
942
- SyncStateFinalization2.unregister(this);
943
- return ptr;
944
- }
945
- free() {
946
- const ptr = this.__destroy_into_raw();
947
- wasm2.__wbg_syncstate_free(ptr, 0);
948
- }
949
- /**
950
- * @returns {SyncState}
951
- */
952
- clone() {
953
- const ret = wasm2.syncstate_clone(this.__wbg_ptr);
954
- return _SyncState.__wrap(ret);
955
- }
956
- /**
957
- * @returns {Heads}
958
- */
959
- get lastSentHeads() {
960
- const ret = wasm2.syncstate_lastSentHeads(this.__wbg_ptr);
961
- return ret;
962
- }
963
- /**
964
- * @returns {boolean}
965
- */
966
- get peerReadOnly() {
967
- const ret = wasm2.syncstate_peerReadOnly(this.__wbg_ptr);
968
- return ret !== 0;
969
- }
970
- /**
971
- * @returns {boolean}
972
- */
973
- get readOnly() {
974
- const ret = wasm2.syncstate_readOnly(this.__wbg_ptr);
975
- return ret !== 0;
976
- }
977
- /**
978
- * @param {Heads} heads
979
- */
980
- set lastSentHeads(heads) {
981
- const ret = wasm2.syncstate_set_lastSentHeads(this.__wbg_ptr, heads);
982
- if (ret[1]) {
983
- throw takeFromExternrefTable02(ret[0]);
984
- }
985
- }
986
- /**
987
- * @param {boolean} read_only
988
- */
989
- set readOnly(read_only) {
990
- wasm2.syncstate_set_readOnly(this.__wbg_ptr, read_only);
991
- }
992
- /**
993
- * @param {Heads} hashes
994
- */
995
- set sentHashes(hashes) {
996
- const ret = wasm2.syncstate_set_sentHashes(this.__wbg_ptr, hashes);
997
- if (ret[1]) {
998
- throw takeFromExternrefTable02(ret[0]);
999
- }
1000
- }
1001
- /**
1002
- * @returns {Heads}
1003
- */
1004
- get sharedHeads() {
1005
- const ret = wasm2.syncstate_sharedHeads(this.__wbg_ptr);
1006
- return ret;
1007
- }
1008
- };
1009
- if (Symbol.dispose) SyncState2.prototype[Symbol.dispose] = SyncState2.prototype.free;
1010
- exports.SyncState = SyncState2;
1011
- function create(options) {
1012
- const ret = wasm2.create(options);
1013
- if (ret[2]) {
1014
- throw takeFromExternrefTable02(ret[1]);
1015
- }
1016
- return Automerge2.__wrap(ret[0]);
1017
- }
1018
- exports.create = create;
1019
- function decodeChange(change) {
1020
- const ret = wasm2.decodeChange(change);
1021
- if (ret[2]) {
1022
- throw takeFromExternrefTable02(ret[1]);
1023
- }
1024
- return takeFromExternrefTable02(ret[0]);
1025
- }
1026
- exports.decodeChange = decodeChange;
1027
- function decodeSyncMessage(msg) {
1028
- const ret = wasm2.decodeSyncMessage(msg);
1029
- if (ret[2]) {
1030
- throw takeFromExternrefTable02(ret[1]);
1031
- }
1032
- return takeFromExternrefTable02(ret[0]);
1033
- }
1034
- exports.decodeSyncMessage = decodeSyncMessage;
1035
- function decodeSyncState(data) {
1036
- const ret = wasm2.decodeSyncState(data);
1037
- if (ret[2]) {
1038
- throw takeFromExternrefTable02(ret[1]);
1039
- }
1040
- return SyncState2.__wrap(ret[0]);
1041
- }
1042
- exports.decodeSyncState = decodeSyncState;
1043
- function encodeChange(change) {
1044
- const ret = wasm2.encodeChange(change);
1045
- if (ret[2]) {
1046
- throw takeFromExternrefTable02(ret[1]);
1047
- }
1048
- return takeFromExternrefTable02(ret[0]);
1049
- }
1050
- exports.encodeChange = encodeChange;
1051
- function encodeSyncMessage(message) {
1052
- const ret = wasm2.encodeSyncMessage(message);
1053
- if (ret[2]) {
1054
- throw takeFromExternrefTable02(ret[1]);
1055
- }
1056
- return takeFromExternrefTable02(ret[0]);
1057
- }
1058
- exports.encodeSyncMessage = encodeSyncMessage;
1059
- function encodeSyncState(state) {
1060
- _assertClass2(state, SyncState2);
1061
- const ret = wasm2.encodeSyncState(state.__wbg_ptr);
1062
- return ret;
1063
- }
1064
- exports.encodeSyncState = encodeSyncState;
1065
- function exportSyncState(state) {
1066
- _assertClass2(state, SyncState2);
1067
- const ret = wasm2.exportSyncState(state.__wbg_ptr);
1068
- return ret;
1069
- }
1070
- exports.exportSyncState = exportSyncState;
1071
- function importSyncState(state) {
1072
- const ret = wasm2.importSyncState(state);
1073
- if (ret[2]) {
1074
- throw takeFromExternrefTable02(ret[1]);
1075
- }
1076
- return SyncState2.__wrap(ret[0]);
1077
- }
1078
- exports.importSyncState = importSyncState;
1079
- function initSyncState() {
1080
- const ret = wasm2.initSyncState();
1081
- return SyncState2.__wrap(ret);
1082
- }
1083
- exports.initSyncState = initSyncState;
1084
- function load2(data, options) {
1085
- const ret = wasm2.load(data, options);
1086
- if (ret[2]) {
1087
- throw takeFromExternrefTable02(ret[1]);
1088
- }
1089
- return Automerge2.__wrap(ret[0]);
1090
- }
1091
- exports.load = load2;
1092
- function readBundle(bundle) {
1093
- const ret = wasm2.readBundle(bundle);
1094
- if (ret[2]) {
1095
- throw takeFromExternrefTable02(ret[1]);
1096
- }
1097
- return takeFromExternrefTable02(ret[0]);
1098
- }
1099
- exports.readBundle = readBundle;
1100
- function wasmReleaseInfo() {
1101
- const ret = wasm2.wasmReleaseInfo();
1102
- return ret;
1103
- }
1104
- exports.wasmReleaseInfo = wasmReleaseInfo;
1105
- function __wbg_get_imports() {
1106
- const import0 = {
1107
- __proto__: null,
1108
- __wbg_BigInt_65bcea251e788083: function(arg0) {
1109
- const ret = BigInt(arg0);
1110
- return ret;
1111
- },
1112
- __wbg_Error_960c155d3d49e4c2: function(arg0, arg1) {
1113
- const ret = Error(getStringFromWasm02(arg0, arg1));
1114
- return ret;
1115
- },
1116
- __wbg_String_8564e559799eccda: function(arg0, arg1) {
1117
- const ret = String(arg1);
1118
- const ptr1 = passStringToWasm02(ret, wasm2.__wbindgen_malloc, wasm2.__wbindgen_realloc);
1119
- const len1 = WASM_VECTOR_LEN2;
1120
- getDataViewMemory0().setInt32(arg0 + 4 * 1, len1, true);
1121
- getDataViewMemory0().setInt32(arg0 + 4 * 0, ptr1, true);
1122
- },
1123
- __wbg___wbindgen_boolean_get_6ea149f0a8dcc5ff: function(arg0) {
1124
- const v = arg0;
1125
- const ret = typeof v === "boolean" ? v : void 0;
1126
- return isLikeNone2(ret) ? 16777215 : ret ? 1 : 0;
1127
- },
1128
- __wbg___wbindgen_debug_string_ab4b34d23d6778bd: function(arg0, arg1) {
1129
- const ret = debugString(arg1);
1130
- const ptr1 = passStringToWasm02(ret, wasm2.__wbindgen_malloc, wasm2.__wbindgen_realloc);
1131
- const len1 = WASM_VECTOR_LEN2;
1132
- getDataViewMemory0().setInt32(arg0 + 4 * 1, len1, true);
1133
- getDataViewMemory0().setInt32(arg0 + 4 * 0, ptr1, true);
1134
- },
1135
- __wbg___wbindgen_gt_fd08d8cbe0a8551c: function(arg0, arg1) {
1136
- const ret = arg0 > arg1;
1137
- return ret;
1138
- },
1139
- __wbg___wbindgen_is_bigint_ec25c7f91b4d9e93: function(arg0) {
1140
- const ret = typeof arg0 === "bigint";
1141
- return ret;
1142
- },
1143
- __wbg___wbindgen_is_function_3baa9db1a987f47d: function(arg0) {
1144
- const ret = typeof arg0 === "function";
1145
- return ret;
1146
- },
1147
- __wbg___wbindgen_is_null_52ff4ec04186736f: function(arg0) {
1148
- const ret = arg0 === null;
1149
- return ret;
1150
- },
1151
- __wbg___wbindgen_is_object_63322ec0cd6ea4ef: function(arg0) {
1152
- const val = arg0;
1153
- const ret = typeof val === "object" && val !== null;
1154
- return ret;
1155
- },
1156
- __wbg___wbindgen_is_string_6df3bf7ef1164ed3: function(arg0) {
1157
- const ret = typeof arg0 === "string";
1158
- return ret;
1159
- },
1160
- __wbg___wbindgen_is_undefined_29a43b4d42920abd: function(arg0) {
1161
- const ret = arg0 === void 0;
1162
- return ret;
1163
- },
1164
- __wbg___wbindgen_jsval_loose_eq_cac3565e89b4134c: function(arg0, arg1) {
1165
- const ret = arg0 == arg1;
1166
- return ret;
1167
- },
1168
- __wbg___wbindgen_lt_78bab382628fb48f: function(arg0, arg1) {
1169
- const ret = arg0 < arg1;
1170
- return ret;
1171
- },
1172
- __wbg___wbindgen_neg_8d39d23ef65c9fdb: function(arg0) {
1173
- const ret = -arg0;
1174
- return ret;
1175
- },
1176
- __wbg___wbindgen_number_get_c7f42aed0525c451: function(arg0, arg1) {
1177
- const obj = arg1;
1178
- const ret = typeof obj === "number" ? obj : void 0;
1179
- getDataViewMemory0().setFloat64(arg0 + 8 * 1, isLikeNone2(ret) ? 0 : ret, true);
1180
- getDataViewMemory0().setInt32(arg0 + 4 * 0, !isLikeNone2(ret), true);
1181
- },
1182
- __wbg___wbindgen_string_get_7ed5322991caaec5: function(arg0, arg1) {
1183
- const obj = arg1;
1184
- const ret = typeof obj === "string" ? obj : void 0;
1185
- var ptr1 = isLikeNone2(ret) ? 0 : passStringToWasm02(ret, wasm2.__wbindgen_malloc, wasm2.__wbindgen_realloc);
1186
- var len1 = WASM_VECTOR_LEN2;
1187
- getDataViewMemory0().setInt32(arg0 + 4 * 1, len1, true);
1188
- getDataViewMemory0().setInt32(arg0 + 4 * 0, ptr1, true);
1189
- },
1190
- __wbg___wbindgen_throw_6b64449b9b9ed33c: function(arg0, arg1) {
1191
- throw new Error(getStringFromWasm02(arg0, arg1));
1192
- },
1193
- __wbg_apply_329b2a440415c2e6: function() {
1194
- return handleError(function(arg0, arg1, arg2) {
1195
- const ret = Reflect.apply(arg0, arg1, arg2);
1196
- return ret;
1197
- }, arguments);
1198
- },
1199
- __wbg_assign_752c2af1512cc7fd: function(arg0, arg1) {
1200
- const ret = Object.assign(arg0, arg1);
1201
- return ret;
1202
- },
1203
- __wbg_call_14b169f759b26747: function() {
1204
- return handleError(function(arg0, arg1) {
1205
- const ret = arg0.call(arg1);
1206
- return ret;
1207
- }, arguments);
1208
- },
1209
- __wbg_call_a24592a6f349a97e: function() {
1210
- return handleError(function(arg0, arg1, arg2) {
1211
- const ret = arg0.call(arg1, arg2);
1212
- return ret;
1213
- }, arguments);
1214
- },
1215
- __wbg_concat_1cef5380372e969d: function(arg0, arg1) {
1216
- const ret = arg0.concat(arg1);
1217
- return ret;
1218
- },
1219
- __wbg_defineProperty_aeb95d0434ce03d0: function(arg0, arg1, arg2) {
1220
- const ret = Object.defineProperty(arg0, arg1, arg2);
1221
- return ret;
1222
- },
1223
- __wbg_deleteProperty_d5f7bd763acbdb44: function() {
1224
- return handleError(function(arg0, arg1) {
1225
- const ret = Reflect.deleteProperty(arg0, arg1);
1226
- return ret;
1227
- }, arguments);
1228
- },
1229
- __wbg_done_9158f7cc8751ba32: function(arg0) {
1230
- const ret = arg0.done;
1231
- return ret;
1232
- },
1233
- __wbg_entries_e0b73aa8571ddb56: function(arg0) {
1234
- const ret = Object.entries(arg0);
1235
- return ret;
1236
- },
1237
- __wbg_error_a6fa202b58aa1cd3: function(arg0, arg1) {
1238
- let deferred0_0;
1239
- let deferred0_1;
1240
- try {
1241
- deferred0_0 = arg0;
1242
- deferred0_1 = arg1;
1243
- console.error(getStringFromWasm02(arg0, arg1));
1244
- } finally {
1245
- wasm2.__wbindgen_free(deferred0_0, deferred0_1, 1);
1246
- }
1247
- },
1248
- __wbg_for_b0616d1de7774be9: function(arg0, arg1) {
1249
- const ret = Symbol.for(getStringFromWasm02(arg0, arg1));
1250
- return ret;
1251
- },
1252
- __wbg_freeze_c79f45721998bbbc: function(arg0) {
1253
- const ret = Object.freeze(arg0);
1254
- return ret;
1255
- },
1256
- __wbg_from_0dbf29f09e7fb200: function(arg0) {
1257
- const ret = Array.from(arg0);
1258
- return ret;
1259
- },
1260
- __wbg_getRandomValues_76dfc69825c9c552: function() {
1261
- return handleError(function(arg0, arg1) {
1262
- globalThis.crypto.getRandomValues(getArrayU8FromWasm0(arg0, arg1));
1263
- }, arguments);
1264
- },
1265
- __wbg_getTime_da7c55f52b71e8c6: function(arg0) {
1266
- const ret = arg0.getTime();
1267
- return ret;
1268
- },
1269
- __wbg_get_1affdbdd5573b16a: function() {
1270
- return handleError(function(arg0, arg1) {
1271
- const ret = Reflect.get(arg0, arg1);
1272
- return ret;
1273
- }, arguments);
1274
- },
1275
- __wbg_get_6011fa3a58f61074: function() {
1276
- return handleError(function(arg0, arg1) {
1277
- const ret = Reflect.get(arg0, arg1);
1278
- return ret;
1279
- }, arguments);
1280
- },
1281
- __wbg_get_8360291721e2339f: function(arg0, arg1) {
1282
- const ret = arg0[arg1 >>> 0];
1283
- return ret;
1284
- },
1285
- __wbg_get_unchecked_17f53dad852b9588: function(arg0, arg1) {
1286
- const ret = arg0[arg1 >>> 0];
1287
- return ret;
1288
- },
1289
- __wbg_instanceof_ArrayBuffer_7c8433c6ed14ffe3: function(arg0) {
1290
- let result;
1291
- try {
1292
- result = arg0 instanceof ArrayBuffer;
1293
- } catch (_) {
1294
- result = false;
1295
- }
1296
- const ret = result;
1297
- return ret;
1298
- },
1299
- __wbg_instanceof_Date_81b75f5ed36b30ea: function(arg0) {
1300
- let result;
1301
- try {
1302
- result = arg0 instanceof Date;
1303
- } catch (_) {
1304
- result = false;
1305
- }
1306
- const ret = result;
1307
- return ret;
1308
- },
1309
- __wbg_instanceof_Object_7c99480a1cdfb911: function(arg0) {
1310
- let result;
1311
- try {
1312
- result = arg0 instanceof Object;
1313
- } catch (_) {
1314
- result = false;
1315
- }
1316
- const ret = result;
1317
- return ret;
1318
- },
1319
- __wbg_instanceof_Uint8Array_152ba1f289edcf3f: function(arg0) {
1320
- let result;
1321
- try {
1322
- result = arg0 instanceof Uint8Array;
1323
- } catch (_) {
1324
- result = false;
1325
- }
1326
- const ret = result;
1327
- return ret;
1328
- },
1329
- __wbg_isArray_2790516aa848bf18: function(arg0) {
1330
- const ret = Array.isArray(arg0);
1331
- return ret;
1332
- },
1333
- __wbg_isArray_c3109d14ffc06469: function(arg0) {
1334
- const ret = Array.isArray(arg0);
1335
- return ret;
1336
- },
1337
- __wbg_iterator_013bc09ec998c2a7: function() {
1338
- const ret = Symbol.iterator;
1339
- return ret;
1340
- },
1341
- __wbg_keys_2fd1bfdda7e278ca: function(arg0) {
1342
- const ret = Object.keys(arg0);
1343
- return ret;
1344
- },
1345
- __wbg_length_3d4ecd04bd8d22f1: function(arg0) {
1346
- const ret = arg0.length;
1347
- return ret;
1348
- },
1349
- __wbg_length_6a846b3b23b74aca: function(arg0) {
1350
- const ret = arg0.length;
1351
- return ret;
1352
- },
1353
- __wbg_length_9f1775224cf1d815: function(arg0) {
1354
- const ret = arg0.length;
1355
- return ret;
1356
- },
1357
- __wbg_log_7e1aa9064a1dbdbd: function(arg0) {
1358
- console.log(arg0);
1359
- },
1360
- __wbg_log_dfa1efedf266562e: function(arg0, arg1) {
1361
- console.log(arg0, arg1);
1362
- },
1363
- __wbg_new_0c7403db6e782f19: function(arg0) {
1364
- const ret = new Uint8Array(arg0);
1365
- return ret;
1366
- },
1367
- __wbg_new_191521fecb171639: function(arg0, arg1) {
1368
- const ret = new RangeError(getStringFromWasm02(arg0, arg1));
1369
- return ret;
1370
- },
1371
- __wbg_new_227d7c05414eb861: function() {
1372
- const ret = new Error();
1373
- return ret;
1374
- },
1375
- __wbg_new_5e360d2ff7b9e1c3: function(arg0, arg1) {
1376
- const ret = new Error(getStringFromWasm02(arg0, arg1));
1377
- return ret;
1378
- },
1379
- __wbg_new_682678e2f47e32bc: function() {
1380
- const ret = new Array();
1381
- return ret;
1382
- },
1383
- __wbg_new_7913666fe5070684: function(arg0) {
1384
- const ret = new Date(arg0);
1385
- return ret;
1386
- },
1387
- __wbg_new_aa8d0fa9762c29bd: function() {
1388
- const ret = new Object();
1389
- return ret;
1390
- },
1391
- __wbg_new_from_slice_b5ea43e23f6008c0: function(arg0, arg1) {
1392
- const ret = new Uint8Array(getArrayU8FromWasm0(arg0, arg1));
1393
- return ret;
1394
- },
1395
- __wbg_next_0340c4ae324393c3: function() {
1396
- return handleError(function(arg0) {
1397
- const ret = arg0.next();
1398
- return ret;
1399
- }, arguments);
1400
- },
1401
- __wbg_next_7646edaa39458ef7: function(arg0) {
1402
- const ret = arg0.next;
1403
- return ret;
1404
- },
1405
- __wbg_ownKeys_0231887680f0f945: function() {
1406
- return handleError(function(arg0) {
1407
- const ret = Reflect.ownKeys(arg0);
1408
- return ret;
1409
- }, arguments);
1410
- },
1411
- __wbg_prototypesetcall_a6b02eb00b0f4ce2: function(arg0, arg1, arg2) {
1412
- Uint8Array.prototype.set.call(getArrayU8FromWasm0(arg0, arg1), arg2);
1413
- },
1414
- __wbg_push_471a5b068a5295f6: function(arg0, arg1) {
1415
- const ret = arg0.push(arg1);
1416
- return ret;
1417
- },
1418
- __wbg_set_022bee52d0b05b19: function() {
1419
- return handleError(function(arg0, arg1, arg2) {
1420
- const ret = Reflect.set(arg0, arg1, arg2);
1421
- return ret;
1422
- }, arguments);
1423
- },
1424
- __wbg_set_3bf1de9fab0cd644: function(arg0, arg1, arg2) {
1425
- arg0[arg1 >>> 0] = arg2;
1426
- },
1427
- __wbg_set_6be42768c690e380: function(arg0, arg1, arg2) {
1428
- arg0[arg1] = arg2;
1429
- },
1430
- __wbg_slice_45916ed2fae7e0ea: function(arg0, arg1, arg2) {
1431
- const ret = arg0.slice(arg1 >>> 0, arg2 >>> 0);
1432
- return ret;
1433
- },
1434
- __wbg_stack_3b0d974bbf31e44f: function(arg0, arg1) {
1435
- const ret = arg1.stack;
1436
- const ptr1 = passStringToWasm02(ret, wasm2.__wbindgen_malloc, wasm2.__wbindgen_realloc);
1437
- const len1 = WASM_VECTOR_LEN2;
1438
- getDataViewMemory0().setInt32(arg0 + 4 * 1, len1, true);
1439
- getDataViewMemory0().setInt32(arg0 + 4 * 0, ptr1, true);
1440
- },
1441
- __wbg_stringify_057c4027271f8007: function(arg0, arg1) {
1442
- const ret = JSON.stringify(arg1);
1443
- var ptr1 = isLikeNone2(ret) ? 0 : passStringToWasm02(ret, wasm2.__wbindgen_malloc, wasm2.__wbindgen_realloc);
1444
- var len1 = WASM_VECTOR_LEN2;
1445
- getDataViewMemory0().setInt32(arg0 + 4 * 1, len1, true);
1446
- getDataViewMemory0().setInt32(arg0 + 4 * 0, ptr1, true);
1447
- },
1448
- __wbg_toString_5a84b8552b34a19d: function(arg0) {
1449
- const ret = arg0.toString();
1450
- return ret;
1451
- },
1452
- __wbg_toString_c3061af2bf859d19: function() {
1453
- return handleError(function(arg0, arg1) {
1454
- const ret = arg0.toString(arg1);
1455
- return ret;
1456
- }, arguments);
1457
- },
1458
- __wbg_toString_c96dc76d5547a715: function(arg0, arg1, arg2) {
1459
- const ret = arg1.toString(arg2);
1460
- const ptr1 = passStringToWasm02(ret, wasm2.__wbindgen_malloc, wasm2.__wbindgen_realloc);
1461
- const len1 = WASM_VECTOR_LEN2;
1462
- getDataViewMemory0().setInt32(arg0 + 4 * 1, len1, true);
1463
- getDataViewMemory0().setInt32(arg0 + 4 * 0, ptr1, true);
1464
- },
1465
- __wbg_unshift_951ea71d9d2dc660: function(arg0, arg1) {
1466
- const ret = arg0.unshift(arg1);
1467
- return ret;
1468
- },
1469
- __wbg_value_ee3a06f4579184fa: function(arg0) {
1470
- const ret = arg0.value;
1471
- return ret;
1472
- },
1473
- __wbg_values_301a77363cf6c773: function(arg0) {
1474
- const ret = Object.values(arg0);
1475
- return ret;
1476
- },
1477
- __wbindgen_cast_0000000000000001: function(arg0) {
1478
- const ret = arg0;
1479
- return ret;
1480
- },
1481
- __wbindgen_cast_0000000000000002: function(arg0) {
1482
- const ret = arg0;
1483
- return ret;
1484
- },
1485
- __wbindgen_cast_0000000000000003: function(arg0, arg1) {
1486
- const ret = getStringFromWasm02(arg0, arg1);
1487
- return ret;
1488
- },
1489
- __wbindgen_cast_0000000000000004: function(arg0) {
1490
- const ret = BigInt.asUintN(64, arg0);
1491
- return ret;
1492
- },
1493
- __wbindgen_init_externref_table: function() {
1494
- const table = wasm2.__wbindgen_externrefs;
1495
- const offset = table.grow(4);
1496
- table.set(0, void 0);
1497
- table.set(offset + 0, void 0);
1498
- table.set(offset + 1, null);
1499
- table.set(offset + 2, true);
1500
- table.set(offset + 3, false);
1501
- }
1502
- };
1503
- return {
1504
- __proto__: null,
1505
- "./automerge_wasm_bg.js": import0
1506
- };
1507
- }
1508
- var AutomergeFinalization2 = typeof FinalizationRegistry === "undefined" ? { register: () => {
1509
- }, unregister: () => {
1510
- } } : new FinalizationRegistry((ptr) => wasm2.__wbg_automerge_free(ptr >>> 0, 1));
1511
- var SyncStateFinalization2 = typeof FinalizationRegistry === "undefined" ? { register: () => {
1512
- }, unregister: () => {
1513
- } } : new FinalizationRegistry((ptr) => wasm2.__wbg_syncstate_free(ptr >>> 0, 1));
1514
- function addToExternrefTable0(obj) {
1515
- const idx = wasm2.__externref_table_alloc();
1516
- wasm2.__wbindgen_externrefs.set(idx, obj);
1517
- return idx;
1518
- }
1519
- function _assertClass2(instance, klass) {
1520
- if (!(instance instanceof klass)) {
1521
- throw new Error(`expected instance of ${klass.name}`);
1522
- }
1523
- }
1524
- function debugString(val) {
1525
- const type = typeof val;
1526
- if (type == "number" || type == "boolean" || val == null) {
1527
- return `${val}`;
1528
- }
1529
- if (type == "string") {
1530
- return `"${val}"`;
1531
- }
1532
- if (type == "symbol") {
1533
- const description = val.description;
1534
- if (description == null) {
1535
- return "Symbol";
1536
- } else {
1537
- return `Symbol(${description})`;
1538
- }
1539
- }
1540
- if (type == "function") {
1541
- const name = val.name;
1542
- if (typeof name == "string" && name.length > 0) {
1543
- return `Function(${name})`;
1544
- } else {
1545
- return "Function";
1546
- }
1547
- }
1548
- if (Array.isArray(val)) {
1549
- const length = val.length;
1550
- let debug = "[";
1551
- if (length > 0) {
1552
- debug += debugString(val[0]);
1553
- }
1554
- for (let i = 1; i < length; i++) {
1555
- debug += ", " + debugString(val[i]);
1556
- }
1557
- debug += "]";
1558
- return debug;
1559
- }
1560
- const builtInMatches = /\[object ([^\]]+)\]/.exec(toString.call(val));
1561
- let className;
1562
- if (builtInMatches && builtInMatches.length > 1) {
1563
- className = builtInMatches[1];
1564
- } else {
1565
- return toString.call(val);
1566
- }
1567
- if (className == "Object") {
1568
- try {
1569
- return "Object(" + JSON.stringify(val) + ")";
1570
- } catch (_) {
1571
- return "Object";
1572
- }
1573
- }
1574
- if (val instanceof Error) {
1575
- return `${val.name}: ${val.message}
1576
- ${val.stack}`;
1577
- }
1578
- return className;
1579
- }
1580
- function getArrayU8FromWasm0(ptr, len) {
1581
- ptr = ptr >>> 0;
1582
- return getUint8ArrayMemory02().subarray(ptr / 1, ptr / 1 + len);
1583
- }
1584
- var cachedDataViewMemory0 = null;
1585
- function getDataViewMemory0() {
1586
- if (cachedDataViewMemory0 === null || cachedDataViewMemory0.buffer.detached === true || cachedDataViewMemory0.buffer.detached === void 0 && cachedDataViewMemory0.buffer !== wasm2.memory.buffer) {
1587
- cachedDataViewMemory0 = new DataView(wasm2.memory.buffer);
1588
- }
1589
- return cachedDataViewMemory0;
1590
- }
1591
- function getStringFromWasm02(ptr, len) {
1592
- ptr = ptr >>> 0;
1593
- return decodeText2(ptr, len);
1594
- }
1595
- var cachedUint8ArrayMemory02 = null;
1596
- function getUint8ArrayMemory02() {
1597
- if (cachedUint8ArrayMemory02 === null || cachedUint8ArrayMemory02.byteLength === 0) {
1598
- cachedUint8ArrayMemory02 = new Uint8Array(wasm2.memory.buffer);
1599
- }
1600
- return cachedUint8ArrayMemory02;
1601
- }
1602
- function handleError(f, args) {
1603
- try {
1604
- return f.apply(this, args);
1605
- } catch (e) {
1606
- const idx = addToExternrefTable0(e);
1607
- wasm2.__wbindgen_exn_store(idx);
1608
- }
1609
- }
1610
- function isLikeNone2(x) {
1611
- return x === void 0 || x === null;
1612
- }
1613
- function passStringToWasm02(arg, malloc, realloc) {
1614
- if (realloc === void 0) {
1615
- const buf = cachedTextEncoder2.encode(arg);
1616
- const ptr2 = malloc(buf.length, 1) >>> 0;
1617
- getUint8ArrayMemory02().subarray(ptr2, ptr2 + buf.length).set(buf);
1618
- WASM_VECTOR_LEN2 = buf.length;
1619
- return ptr2;
1620
- }
1621
- let len = arg.length;
1622
- let ptr = malloc(len, 1) >>> 0;
1623
- const mem = getUint8ArrayMemory02();
1624
- let offset = 0;
1625
- for (; offset < len; offset++) {
1626
- const code = arg.charCodeAt(offset);
1627
- if (code > 127) break;
1628
- mem[ptr + offset] = code;
1629
- }
1630
- if (offset !== len) {
1631
- if (offset !== 0) {
1632
- arg = arg.slice(offset);
1633
- }
1634
- ptr = realloc(ptr, len, len = offset + arg.length * 3, 1) >>> 0;
1635
- const view = getUint8ArrayMemory02().subarray(ptr + offset, ptr + len);
1636
- const ret = cachedTextEncoder2.encodeInto(arg, view);
1637
- offset += ret.written;
1638
- ptr = realloc(ptr, len, offset, 1) >>> 0;
1639
- }
1640
- WASM_VECTOR_LEN2 = offset;
1641
- return ptr;
1642
- }
1643
- function takeFromExternrefTable02(idx) {
1644
- const value = wasm2.__wbindgen_externrefs.get(idx);
1645
- wasm2.__externref_table_dealloc(idx);
1646
- return value;
1647
- }
1648
- var cachedTextDecoder2 = new TextDecoder("utf-8", { ignoreBOM: true, fatal: true });
1649
- cachedTextDecoder2.decode();
1650
- function decodeText2(ptr, len) {
1651
- return cachedTextDecoder2.decode(getUint8ArrayMemory02().subarray(ptr, ptr + len));
1652
- }
1653
- var cachedTextEncoder2 = new TextEncoder();
1654
- if (!("encodeInto" in cachedTextEncoder2)) {
1655
- cachedTextEncoder2.encodeInto = function(arg, view) {
1656
- const buf = cachedTextEncoder2.encode(arg);
1657
- view.set(buf);
1658
- return {
1659
- read: arg.length,
1660
- written: buf.length
1661
- };
1662
- };
1663
- }
1664
- var WASM_VECTOR_LEN2 = 0;
1665
- var wasmPath = `${__dirname}/automerge_wasm_bg.wasm`;
1666
- var wasmBytes = __require("fs").readFileSync(wasmPath);
1667
- var wasmModule = new WebAssembly.Module(wasmBytes);
1668
- var wasm2 = new WebAssembly.Instance(wasmModule, __wbg_get_imports()).exports;
1669
- wasm2.__wbindgen_start();
1670
- }
1671
- });
1672
-
1673
- // node_modules/.pnpm/@automerge+automerge@3.2.6/node_modules/@automerge/automerge/dist/mjs/wasm_bindgen_output/web/automerge_wasm.js
1674
- var Automerge = class _Automerge {
1675
- static __wrap(ptr) {
1676
- ptr = ptr >>> 0;
1677
- const obj = Object.create(_Automerge.prototype);
1678
- obj.__wbg_ptr = ptr;
1679
- AutomergeFinalization.register(obj, obj.__wbg_ptr, obj);
1680
- return obj;
1681
- }
1682
- __destroy_into_raw() {
1683
- const ptr = this.__wbg_ptr;
1684
- this.__wbg_ptr = 0;
1685
- AutomergeFinalization.unregister(this);
1686
- return ptr;
1687
- }
1688
- free() {
1689
- const ptr = this.__destroy_into_raw();
1690
- wasm.__wbg_automerge_free(ptr, 0);
1691
- }
1692
- /**
1693
- * @param {any} object
1694
- * @param {any} meta
1695
- * @returns {any}
1696
- */
1697
- applyAndReturnPatches(object, meta) {
1698
- const ret = wasm.automerge_applyAndReturnPatches(this.__wbg_ptr, object, meta);
1699
- if (ret[2]) {
1700
- throw takeFromExternrefTable0(ret[1]);
1701
- }
1702
- return takeFromExternrefTable0(ret[0]);
1703
- }
1704
- /**
1705
- * @param {Change[]} changes
1706
- */
1707
- applyChanges(changes) {
1708
- const ret = wasm.automerge_applyChanges(this.__wbg_ptr, changes);
1709
- if (ret[1]) {
1710
- throw takeFromExternrefTable0(ret[0]);
1711
- }
1712
- }
1713
- /**
1714
- * @param {any} object
1715
- * @param {any} meta
1716
- * @returns {any}
1717
- */
1718
- applyPatches(object, meta) {
1719
- const ret = wasm.automerge_applyPatches(this.__wbg_ptr, object, meta);
1720
- if (ret[2]) {
1721
- throw takeFromExternrefTable0(ret[1]);
1722
- }
1723
- return takeFromExternrefTable0(ret[0]);
1724
- }
1725
- /**
1726
- * @param {string | null} [actor]
1727
- * @returns {Automerge}
1728
- */
1729
- clone(actor) {
1730
- var ptr0 = isLikeNone(actor) ? 0 : passStringToWasm0(actor, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc);
1731
- var len0 = WASM_VECTOR_LEN;
1732
- const ret = wasm.automerge_clone(this.__wbg_ptr, ptr0, len0);
1733
- if (ret[2]) {
1734
- throw takeFromExternrefTable0(ret[1]);
1735
- }
1736
- return _Automerge.__wrap(ret[0]);
1737
- }
1738
- /**
1739
- * @param {string | null} [message]
1740
- * @param {number | null} [time]
1741
- * @returns {Hash | null}
1742
- */
1743
- commit(message, time) {
1744
- var ptr0 = isLikeNone(message) ? 0 : passStringToWasm0(message, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc);
1745
- var len0 = WASM_VECTOR_LEN;
1746
- const ret = wasm.automerge_commit(this.__wbg_ptr, ptr0, len0, !isLikeNone(time), isLikeNone(time) ? 0 : time);
1747
- return ret;
1748
- }
1749
- /**
1750
- * @param {ObjID} obj
1751
- * @param {Prop} prop
1752
- */
1753
- delete(obj, prop) {
1754
- const ret = wasm.automerge_delete(this.__wbg_ptr, obj, prop);
1755
- if (ret[1]) {
1756
- throw takeFromExternrefTable0(ret[0]);
1757
- }
1758
- }
1759
- /**
1760
- * @param {Heads} before
1761
- * @param {Heads} after
1762
- * @returns {Patch[]}
1763
- */
1764
- diff(before, after) {
1765
- const ret = wasm.automerge_diff(this.__wbg_ptr, before, after);
1766
- if (ret[2]) {
1767
- throw takeFromExternrefTable0(ret[1]);
1768
- }
1769
- return takeFromExternrefTable0(ret[0]);
1770
- }
1771
- /**
1772
- * @returns {Patch[]}
1773
- */
1774
- diffIncremental() {
1775
- const ret = wasm.automerge_diffIncremental(this.__wbg_ptr);
1776
- if (ret[2]) {
1777
- throw takeFromExternrefTable0(ret[1]);
1778
- }
1779
- return takeFromExternrefTable0(ret[0]);
1780
- }
1781
- /**
1782
- * @param {Prop[] | string} path
1783
- * @param {Heads} before
1784
- * @param {Heads} after
1785
- * @param {any} options
1786
- * @returns {Array<any>}
1787
- */
1788
- diffPath(path, before, after, options) {
1789
- const ret = wasm.automerge_diffPath(this.__wbg_ptr, path, before, after, options);
1790
- if (ret[2]) {
1791
- throw takeFromExternrefTable0(ret[1]);
1792
- }
1793
- return takeFromExternrefTable0(ret[0]);
1794
- }
1795
- dump() {
1796
- wasm.automerge_dump(this.__wbg_ptr);
1797
- }
1798
- /**
1799
- * @param {string | null} [message]
1800
- * @param {number | null} [time]
1801
- * @returns {Hash}
1802
- */
1803
- emptyChange(message, time) {
1804
- var ptr0 = isLikeNone(message) ? 0 : passStringToWasm0(message, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc);
1805
- var len0 = WASM_VECTOR_LEN;
1806
- const ret = wasm.automerge_emptyChange(this.__wbg_ptr, ptr0, len0, !isLikeNone(time), isLikeNone(time) ? 0 : time);
1807
- return ret;
1808
- }
1809
- /**
1810
- * @param {boolean} enable
1811
- * @returns {boolean}
1812
- */
1813
- enableFreeze(enable) {
1814
- const ret = wasm.automerge_enableFreeze(this.__wbg_ptr, enable);
1815
- if (ret[2]) {
1816
- throw takeFromExternrefTable0(ret[1]);
1817
- }
1818
- return ret[0] !== 0;
1819
- }
1820
- /**
1821
- * @param {string | null | undefined} actor
1822
- * @param {any} heads
1823
- * @returns {Automerge}
1824
- */
1825
- fork(actor, heads) {
1826
- var ptr0 = isLikeNone(actor) ? 0 : passStringToWasm0(actor, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc);
1827
- var len0 = WASM_VECTOR_LEN;
1828
- const ret = wasm.automerge_fork(this.__wbg_ptr, ptr0, len0, heads);
1829
- if (ret[2]) {
1830
- throw takeFromExternrefTable0(ret[1]);
1831
- }
1832
- return _Automerge.__wrap(ret[0]);
1833
- }
1834
- /**
1835
- * @param {SyncState} state
1836
- * @returns {SyncMessage | null}
1837
- */
1838
- generateSyncMessage(state) {
1839
- _assertClass(state, SyncState);
1840
- const ret = wasm.automerge_generateSyncMessage(this.__wbg_ptr, state.__wbg_ptr);
1841
- return ret;
1842
- }
1843
- /**
1844
- * @param {any} obj
1845
- * @param {any} prop
1846
- * @param {any} heads
1847
- * @returns {any}
1848
- */
1849
- get(obj, prop, heads) {
1850
- const ret = wasm.automerge_get(this.__wbg_ptr, obj, prop, heads);
1851
- if (ret[2]) {
1852
- throw takeFromExternrefTable0(ret[1]);
1853
- }
1854
- return takeFromExternrefTable0(ret[0]);
1855
- }
1856
- /**
1857
- * @returns {Actor}
1858
- */
1859
- getActorId() {
1860
- let deferred1_0;
1861
- let deferred1_1;
1862
- try {
1863
- const ret = wasm.automerge_getActorId(this.__wbg_ptr);
1864
- deferred1_0 = ret[0];
1865
- deferred1_1 = ret[1];
1866
- return getStringFromWasm0(ret[0], ret[1]);
1867
- } finally {
1868
- wasm.__wbindgen_free(deferred1_0, deferred1_1, 1);
1869
- }
1870
- }
1871
- /**
1872
- * @param {any} obj
1873
- * @param {any} arg
1874
- * @param {any} heads
1875
- * @returns {Array<any>}
1876
- */
1877
- getAll(obj, arg, heads) {
1878
- const ret = wasm.automerge_getAll(this.__wbg_ptr, obj, arg, heads);
1879
- if (ret[2]) {
1880
- throw takeFromExternrefTable0(ret[1]);
1881
- }
1882
- return takeFromExternrefTable0(ret[0]);
1883
- }
1884
- /**
1885
- * @param {any} text
1886
- * @param {number} index
1887
- * @param {any} heads
1888
- * @returns {any}
1889
- */
1890
- getBlock(text, index, heads) {
1891
- const ret = wasm.automerge_getBlock(this.__wbg_ptr, text, index, heads);
1892
- if (ret[2]) {
1893
- throw takeFromExternrefTable0(ret[1]);
1894
- }
1895
- return takeFromExternrefTable0(ret[0]);
1896
- }
1897
- /**
1898
- * @param {Hash} hash
1899
- * @returns {Change | null}
1900
- */
1901
- getChangeByHash(hash) {
1902
- const ret = wasm.automerge_getChangeByHash(this.__wbg_ptr, hash);
1903
- if (ret[2]) {
1904
- throw takeFromExternrefTable0(ret[1]);
1905
- }
1906
- return takeFromExternrefTable0(ret[0]);
1907
- }
1908
- /**
1909
- * @param {Hash} hash
1910
- * @returns {ChangeMetadata | null}
1911
- */
1912
- getChangeMetaByHash(hash) {
1913
- const ret = wasm.automerge_getChangeMetaByHash(this.__wbg_ptr, hash);
1914
- if (ret[2]) {
1915
- throw takeFromExternrefTable0(ret[1]);
1916
- }
1917
- return takeFromExternrefTable0(ret[0]);
1918
- }
1919
- /**
1920
- * @param {Heads} have_deps
1921
- * @returns {Change[]}
1922
- */
1923
- getChanges(have_deps) {
1924
- const ret = wasm.automerge_getChanges(this.__wbg_ptr, have_deps);
1925
- if (ret[2]) {
1926
- throw takeFromExternrefTable0(ret[1]);
1927
- }
1928
- return takeFromExternrefTable0(ret[0]);
1929
- }
1930
- /**
1931
- * @param {Automerge} other
1932
- * @returns {Change[]}
1933
- */
1934
- getChangesAdded(other) {
1935
- _assertClass(other, _Automerge);
1936
- const ret = wasm.automerge_getChangesAdded(this.__wbg_ptr, other.__wbg_ptr);
1937
- return ret;
1938
- }
1939
- /**
1940
- * @param {Heads} have_deps
1941
- * @returns {ChangeMetadata[]}
1942
- */
1943
- getChangesMeta(have_deps) {
1944
- const ret = wasm.automerge_getChangesMeta(this.__wbg_ptr, have_deps);
1945
- if (ret[2]) {
1946
- throw takeFromExternrefTable0(ret[1]);
1947
- }
1948
- return takeFromExternrefTable0(ret[0]);
1949
- }
1950
- /**
1951
- * @param {any} obj
1952
- * @param {any} position
1953
- * @param {any} heads
1954
- * @param {any} move_cursor
1955
- * @returns {string}
1956
- */
1957
- getCursor(obj, position, heads, move_cursor) {
1958
- let deferred2_0;
1959
- let deferred2_1;
1960
- try {
1961
- const ret = wasm.automerge_getCursor(this.__wbg_ptr, obj, position, heads, move_cursor);
1962
- var ptr1 = ret[0];
1963
- var len1 = ret[1];
1964
- if (ret[3]) {
1965
- ptr1 = 0;
1966
- len1 = 0;
1967
- throw takeFromExternrefTable0(ret[2]);
1968
- }
1969
- deferred2_0 = ptr1;
1970
- deferred2_1 = len1;
1971
- return getStringFromWasm0(ptr1, len1);
1972
- } finally {
1973
- wasm.__wbindgen_free(deferred2_0, deferred2_1, 1);
1974
- }
1975
- }
1976
- /**
1977
- * @param {any} obj
1978
- * @param {any} cursor
1979
- * @param {any} heads
1980
- * @returns {number}
1981
- */
1982
- getCursorPosition(obj, cursor, heads) {
1983
- const ret = wasm.automerge_getCursorPosition(this.__wbg_ptr, obj, cursor, heads);
1984
- if (ret[2]) {
1985
- throw takeFromExternrefTable0(ret[1]);
1986
- }
1987
- return ret[0];
1988
- }
1989
- /**
1990
- * @param {Hash} hash
1991
- * @returns {DecodedChange | null}
1992
- */
1993
- getDecodedChangeByHash(hash) {
1994
- const ret = wasm.automerge_getDecodedChangeByHash(this.__wbg_ptr, hash);
1995
- if (ret[2]) {
1996
- throw takeFromExternrefTable0(ret[1]);
1997
- }
1998
- return takeFromExternrefTable0(ret[0]);
1999
- }
2000
- /**
2001
- * @returns {Heads}
2002
- */
2003
- getHeads() {
2004
- const ret = wasm.automerge_getHeads(this.__wbg_ptr);
2005
- return ret;
2006
- }
2007
- /**
2008
- * @returns {Change | null}
2009
- */
2010
- getLastLocalChange() {
2011
- const ret = wasm.automerge_getLastLocalChange(this.__wbg_ptr);
2012
- return ret;
2013
- }
2014
- /**
2015
- * @param {any} heads
2016
- * @returns {Array<any>}
2017
- */
2018
- getMissingDeps(heads) {
2019
- const ret = wasm.automerge_getMissingDeps(this.__wbg_ptr, heads);
2020
- if (ret[2]) {
2021
- throw takeFromExternrefTable0(ret[1]);
2022
- }
2023
- return takeFromExternrefTable0(ret[0]);
2024
- }
2025
- /**
2026
- * @param {any} obj
2027
- * @param {any} prop
2028
- * @param {any} heads
2029
- * @returns {any}
2030
- */
2031
- getWithType(obj, prop, heads) {
2032
- const ret = wasm.automerge_getWithType(this.__wbg_ptr, obj, prop, heads);
2033
- if (ret[2]) {
2034
- throw takeFromExternrefTable0(ret[1]);
2035
- }
2036
- return takeFromExternrefTable0(ret[0]);
2037
- }
2038
- /**
2039
- * @param {SyncState} state
2040
- * @returns {boolean}
2041
- */
2042
- hasOurChanges(state) {
2043
- _assertClass(state, SyncState);
2044
- const ret = wasm.automerge_hasOurChanges(this.__wbg_ptr, state.__wbg_ptr);
2045
- return ret !== 0;
2046
- }
2047
- /**
2048
- * @param {ObjID} obj
2049
- * @param {Prop} prop
2050
- * @param {number} value
2051
- */
2052
- increment(obj, prop, value) {
2053
- const ret = wasm.automerge_increment(this.__wbg_ptr, obj, prop, value);
2054
- if (ret[1]) {
2055
- throw takeFromExternrefTable0(ret[0]);
2056
- }
2057
- }
2058
- /**
2059
- * Initialize the root object of an empty document from a JS object.
2060
- * This is much faster than setting keys one at a time for large initial states.
2061
- * @param {any} value
2062
- */
2063
- initRootFromHydrate(value) {
2064
- const ret = wasm.automerge_initRootFromHydrate(this.__wbg_ptr, value);
2065
- if (ret[1]) {
2066
- throw takeFromExternrefTable0(ret[0]);
2067
- }
2068
- }
2069
- /**
2070
- * @param {any} obj
2071
- * @param {number} index
2072
- * @param {any} value
2073
- * @param {any} datatype
2074
- */
2075
- insert(obj, index, value, datatype) {
2076
- const ret = wasm.automerge_insert(this.__wbg_ptr, obj, index, value, datatype);
2077
- if (ret[1]) {
2078
- throw takeFromExternrefTable0(ret[0]);
2079
- }
2080
- }
2081
- /**
2082
- * @param {ObjID} obj
2083
- * @param {number} index
2084
- * @param {ObjType} value
2085
- * @returns {ObjID}
2086
- */
2087
- insertObject(obj, index, value) {
2088
- let deferred2_0;
2089
- let deferred2_1;
2090
- try {
2091
- const ret = wasm.automerge_insertObject(this.__wbg_ptr, obj, index, value);
2092
- var ptr1 = ret[0];
2093
- var len1 = ret[1];
2094
- if (ret[3]) {
2095
- ptr1 = 0;
2096
- len1 = 0;
2097
- throw takeFromExternrefTable0(ret[2]);
2098
- }
2099
- deferred2_0 = ptr1;
2100
- deferred2_1 = len1;
2101
- return getStringFromWasm0(ptr1, len1);
2102
- } finally {
2103
- wasm.__wbindgen_free(deferred2_0, deferred2_1, 1);
2104
- }
2105
- }
2106
- /**
2107
- * Insert a nested JavaScript value into a list using batch insertion.
2108
- * This is much faster than insertObject for large nested objects.
2109
- * The value is inserted at the given index, shifting subsequent elements.
2110
- * @param {ObjID} obj
2111
- * @param {number} index
2112
- * @param {any} value
2113
- * @returns {ObjID}
2114
- */
2115
- insertObjectFromHydrate(obj, index, value) {
2116
- const ret = wasm.automerge_insertObjectFromHydrate(this.__wbg_ptr, obj, index, value);
2117
- if (ret[2]) {
2118
- throw takeFromExternrefTable0(ret[1]);
2119
- }
2120
- return takeFromExternrefTable0(ret[0]);
2121
- }
2122
- integrate() {
2123
- wasm.automerge_integrate(this.__wbg_ptr);
2124
- }
2125
- /**
2126
- * @param {Heads} heads
2127
- */
2128
- isolate(heads) {
2129
- const ret = wasm.automerge_isolate(this.__wbg_ptr, heads);
2130
- if (ret[1]) {
2131
- throw takeFromExternrefTable0(ret[0]);
2132
- }
2133
- }
2134
- /**
2135
- * @param {ObjID} obj
2136
- * @param {number} index
2137
- */
2138
- joinBlock(obj, index) {
2139
- const ret = wasm.automerge_joinBlock(this.__wbg_ptr, obj, index);
2140
- if (ret[1]) {
2141
- throw takeFromExternrefTable0(ret[0]);
2142
- }
2143
- }
2144
- /**
2145
- * @param {any} obj
2146
- * @param {any} heads
2147
- * @returns {Array<any>}
2148
- */
2149
- keys(obj, heads) {
2150
- const ret = wasm.automerge_keys(this.__wbg_ptr, obj, heads);
2151
- if (ret[2]) {
2152
- throw takeFromExternrefTable0(ret[1]);
2153
- }
2154
- return takeFromExternrefTable0(ret[0]);
2155
- }
2156
- /**
2157
- * @param {any} obj
2158
- * @param {any} heads
2159
- * @returns {number}
2160
- */
2161
- length(obj, heads) {
2162
- const ret = wasm.automerge_length(this.__wbg_ptr, obj, heads);
2163
- if (ret[2]) {
2164
- throw takeFromExternrefTable0(ret[1]);
2165
- }
2166
- return ret[0];
2167
- }
2168
- /**
2169
- * @param {Uint8Array} data
2170
- * @returns {number}
2171
- */
2172
- loadIncremental(data) {
2173
- const ret = wasm.automerge_loadIncremental(this.__wbg_ptr, data);
2174
- if (ret[2]) {
2175
- throw takeFromExternrefTable0(ret[1]);
2176
- }
2177
- return ret[0];
2178
- }
2179
- /**
2180
- * @param {any} obj
2181
- * @param {any} range
2182
- * @param {any} name
2183
- * @param {any} value
2184
- * @param {any} datatype
2185
- */
2186
- mark(obj, range, name, value, datatype) {
2187
- const ret = wasm.automerge_mark(this.__wbg_ptr, obj, range, name, value, datatype);
2188
- if (ret[1]) {
2189
- throw takeFromExternrefTable0(ret[0]);
2190
- }
2191
- }
2192
- /**
2193
- * @param {any} obj
2194
- * @param {any} heads
2195
- * @returns {any}
2196
- */
2197
- marks(obj, heads) {
2198
- const ret = wasm.automerge_marks(this.__wbg_ptr, obj, heads);
2199
- if (ret[2]) {
2200
- throw takeFromExternrefTable0(ret[1]);
2201
- }
2202
- return takeFromExternrefTable0(ret[0]);
2203
- }
2204
- /**
2205
- * @param {any} obj
2206
- * @param {number} index
2207
- * @param {any} heads
2208
- * @returns {object}
2209
- */
2210
- marksAt(obj, index, heads) {
2211
- const ret = wasm.automerge_marksAt(this.__wbg_ptr, obj, index, heads);
2212
- if (ret[2]) {
2213
- throw takeFromExternrefTable0(ret[1]);
2214
- }
2215
- return takeFromExternrefTable0(ret[0]);
2216
- }
2217
- /**
2218
- * @param {any} obj
2219
- * @param {any} heads
2220
- * @param {any} meta
2221
- * @returns {any}
2222
- */
2223
- materialize(obj, heads, meta) {
2224
- const ret = wasm.automerge_materialize(this.__wbg_ptr, obj, heads, meta);
2225
- if (ret[2]) {
2226
- throw takeFromExternrefTable0(ret[1]);
2227
- }
2228
- return takeFromExternrefTable0(ret[0]);
2229
- }
2230
- /**
2231
- * @param {Automerge} other
2232
- * @returns {Heads}
2233
- */
2234
- merge(other) {
2235
- _assertClass(other, _Automerge);
2236
- const ret = wasm.automerge_merge(this.__wbg_ptr, other.__wbg_ptr);
2237
- if (ret[2]) {
2238
- throw takeFromExternrefTable0(ret[1]);
2239
- }
2240
- return takeFromExternrefTable0(ret[0]);
2241
- }
2242
- /**
2243
- * @param {string | null} [actor]
2244
- * @returns {Automerge}
2245
- */
2246
- static new(actor) {
2247
- var ptr0 = isLikeNone(actor) ? 0 : passStringToWasm0(actor, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc);
2248
- var len0 = WASM_VECTOR_LEN;
2249
- const ret = wasm.automerge_new(ptr0, len0);
2250
- if (ret[2]) {
2251
- throw takeFromExternrefTable0(ret[1]);
2252
- }
2253
- return _Automerge.__wrap(ret[0]);
2254
- }
2255
- /**
2256
- * @param {any} obj
2257
- * @param {any} heads
2258
- * @returns {object}
2259
- */
2260
- objInfo(obj, heads) {
2261
- const ret = wasm.automerge_objInfo(this.__wbg_ptr, obj, heads);
2262
- if (ret[2]) {
2263
- throw takeFromExternrefTable0(ret[1]);
2264
- }
2265
- return takeFromExternrefTable0(ret[0]);
2266
- }
2267
- /**
2268
- * @returns {number}
2269
- */
2270
- pendingOps() {
2271
- const ret = wasm.automerge_pendingOps(this.__wbg_ptr);
2272
- return ret;
2273
- }
2274
- /**
2275
- * @param {any} obj
2276
- * @param {any} value
2277
- * @param {any} datatype
2278
- */
2279
- push(obj, value, datatype) {
2280
- const ret = wasm.automerge_push(this.__wbg_ptr, obj, value, datatype);
2281
- if (ret[1]) {
2282
- throw takeFromExternrefTable0(ret[0]);
2283
- }
2284
- }
2285
- /**
2286
- * @param {ObjID} obj
2287
- * @param {ObjType} value
2288
- * @returns {ObjID}
2289
- */
2290
- pushObject(obj, value) {
2291
- let deferred2_0;
2292
- let deferred2_1;
2293
- try {
2294
- const ret = wasm.automerge_pushObject(this.__wbg_ptr, obj, value);
2295
- var ptr1 = ret[0];
2296
- var len1 = ret[1];
2297
- if (ret[3]) {
2298
- ptr1 = 0;
2299
- len1 = 0;
2300
- throw takeFromExternrefTable0(ret[2]);
2301
- }
2302
- deferred2_0 = ptr1;
2303
- deferred2_1 = len1;
2304
- return getStringFromWasm0(ptr1, len1);
2305
- } finally {
2306
- wasm.__wbindgen_free(deferred2_0, deferred2_1, 1);
2307
- }
2308
- }
2309
- /**
2310
- * @param {any} obj
2311
- * @param {any} prop
2312
- * @param {any} value
2313
- * @param {any} datatype
2314
- */
2315
- put(obj, prop, value, datatype) {
2316
- const ret = wasm.automerge_put(this.__wbg_ptr, obj, prop, value, datatype);
2317
- if (ret[1]) {
2318
- throw takeFromExternrefTable0(ret[0]);
2319
- }
2320
- }
2321
- /**
2322
- * @param {ObjID} obj
2323
- * @param {Prop} prop
2324
- * @param {ObjType} value
2325
- * @returns {ObjID}
2326
- */
2327
- putObject(obj, prop, value) {
2328
- const ret = wasm.automerge_putObject(this.__wbg_ptr, obj, prop, value);
2329
- if (ret[2]) {
2330
- throw takeFromExternrefTable0(ret[1]);
2331
- }
2332
- return takeFromExternrefTable0(ret[0]);
2333
- }
2334
- /**
2335
- * Put a nested JavaScript value as a new object tree using batch insertion.
2336
- * This is much faster than putObject for large nested objects.
2337
- * For map keys this overwrites any existing value. For list indices this
2338
- * overwrites the element at that index.
2339
- * @param {ObjID} obj
2340
- * @param {Prop} prop
2341
- * @param {any} value
2342
- * @returns {ObjID}
2343
- */
2344
- putObjectFromHydrate(obj, prop, value) {
2345
- const ret = wasm.automerge_putObjectFromHydrate(this.__wbg_ptr, obj, prop, value);
2346
- if (ret[2]) {
2347
- throw takeFromExternrefTable0(ret[1]);
2348
- }
2349
- return takeFromExternrefTable0(ret[0]);
2350
- }
2351
- /**
2352
- * @param {SyncState} state
2353
- * @param {SyncMessage} message
2354
- */
2355
- receiveSyncMessage(state, message) {
2356
- _assertClass(state, SyncState);
2357
- const ret = wasm.automerge_receiveSyncMessage(this.__wbg_ptr, state.__wbg_ptr, message);
2358
- if (ret[1]) {
2359
- throw takeFromExternrefTable0(ret[0]);
2360
- }
2361
- }
2362
- /**
2363
- * @param {string} datatype
2364
- * @param {Function} construct
2365
- * @param {(arg: any) => any | undefined} deconstruct
2366
- */
2367
- registerDatatype(datatype, construct, deconstruct) {
2368
- const ret = wasm.automerge_registerDatatype(this.__wbg_ptr, datatype, construct, deconstruct);
2369
- if (ret[1]) {
2370
- throw takeFromExternrefTable0(ret[0]);
2371
- }
2372
- }
2373
- resetDiffCursor() {
2374
- wasm.automerge_resetDiffCursor(this.__wbg_ptr);
2375
- }
2376
- /**
2377
- * @returns {number}
2378
- */
2379
- rollback() {
2380
- const ret = wasm.automerge_rollback(this.__wbg_ptr);
2381
- return ret;
2382
- }
2383
- /**
2384
- * @returns {Uint8Array}
2385
- */
2386
- save() {
2387
- const ret = wasm.automerge_save(this.__wbg_ptr);
2388
- return ret;
2389
- }
2390
- /**
2391
- * @returns {Uint8Array}
2392
- */
2393
- saveAndVerify() {
2394
- const ret = wasm.automerge_saveAndVerify(this.__wbg_ptr);
2395
- if (ret[2]) {
2396
- throw takeFromExternrefTable0(ret[1]);
2397
- }
2398
- return takeFromExternrefTable0(ret[0]);
2399
- }
2400
- /**
2401
- * @param {any} hashes
2402
- * @returns {Uint8Array}
2403
- */
2404
- saveBundle(hashes) {
2405
- const ret = wasm.automerge_saveBundle(this.__wbg_ptr, hashes);
2406
- if (ret[2]) {
2407
- throw takeFromExternrefTable0(ret[1]);
2408
- }
2409
- return takeFromExternrefTable0(ret[0]);
2410
- }
2411
- /**
2412
- * @returns {Uint8Array}
2413
- */
2414
- saveIncremental() {
2415
- const ret = wasm.automerge_saveIncremental(this.__wbg_ptr);
2416
- return ret;
2417
- }
2418
- /**
2419
- * @returns {Uint8Array}
2420
- */
2421
- saveNoCompress() {
2422
- const ret = wasm.automerge_saveNoCompress(this.__wbg_ptr);
2423
- return ret;
2424
- }
2425
- /**
2426
- * @param {Heads} heads
2427
- * @returns {Uint8Array}
2428
- */
2429
- saveSince(heads) {
2430
- const ret = wasm.automerge_saveSince(this.__wbg_ptr, heads);
2431
- if (ret[2]) {
2432
- throw takeFromExternrefTable0(ret[1]);
2433
- }
2434
- return takeFromExternrefTable0(ret[0]);
2435
- }
2436
- /**
2437
- * @param {any} obj
2438
- * @param {any} heads
2439
- * @returns {Array<any>}
2440
- */
2441
- spans(obj, heads) {
2442
- const ret = wasm.automerge_spans(this.__wbg_ptr, obj, heads);
2443
- if (ret[2]) {
2444
- throw takeFromExternrefTable0(ret[1]);
2445
- }
2446
- return takeFromExternrefTable0(ret[0]);
2447
- }
2448
- /**
2449
- * @param {any} obj
2450
- * @param {number} start
2451
- * @param {number} delete_count
2452
- * @param {any} text
2453
- */
2454
- splice(obj, start, delete_count, text) {
2455
- const ret = wasm.automerge_splice(this.__wbg_ptr, obj, start, delete_count, text);
2456
- if (ret[1]) {
2457
- throw takeFromExternrefTable0(ret[0]);
2458
- }
2459
- }
2460
- /**
2461
- * Splice values into a list using batch insertion.
2462
- * This is much faster than individual insert calls for multiple values.
2463
- * @param {ObjID} obj
2464
- * @param {number} index
2465
- * @param {number} del
2466
- * @param {any} values
2467
- */
2468
- spliceFromHydrate(obj, index, del, values) {
2469
- const ret = wasm.automerge_spliceFromHydrate(this.__wbg_ptr, obj, index, del, values);
2470
- if (ret[1]) {
2471
- throw takeFromExternrefTable0(ret[0]);
2472
- }
2473
- }
2474
- /**
2475
- * @param {ObjID} obj
2476
- * @param {number} index
2477
- * @param {{[key: string]: MaterializeValue}} block
2478
- */
2479
- splitBlock(obj, index, block) {
2480
- const ret = wasm.automerge_splitBlock(this.__wbg_ptr, obj, index, block);
2481
- if (ret[1]) {
2482
- throw takeFromExternrefTable0(ret[0]);
2483
- }
2484
- }
2485
- /**
2486
- * @returns {Stats}
2487
- */
2488
- stats() {
2489
- const ret = wasm.automerge_stats(this.__wbg_ptr);
2490
- return ret;
2491
- }
2492
- /**
2493
- * @param {any} obj
2494
- * @param {any} heads
2495
- * @returns {string}
2496
- */
2497
- text(obj, heads) {
2498
- let deferred2_0;
2499
- let deferred2_1;
2500
- try {
2501
- const ret = wasm.automerge_text(this.__wbg_ptr, obj, heads);
2502
- var ptr1 = ret[0];
2503
- var len1 = ret[1];
2504
- if (ret[3]) {
2505
- ptr1 = 0;
2506
- len1 = 0;
2507
- throw takeFromExternrefTable0(ret[2]);
2508
- }
2509
- deferred2_0 = ptr1;
2510
- deferred2_1 = len1;
2511
- return getStringFromWasm0(ptr1, len1);
2512
- } finally {
2513
- wasm.__wbindgen_free(deferred2_0, deferred2_1, 1);
2514
- }
2515
- }
2516
- /**
2517
- * @param {any} meta
2518
- * @returns {MaterializeValue}
2519
- */
2520
- toJS(meta) {
2521
- const ret = wasm.automerge_toJS(this.__wbg_ptr, meta);
2522
- if (ret[2]) {
2523
- throw takeFromExternrefTable0(ret[1]);
2524
- }
2525
- return takeFromExternrefTable0(ret[0]);
2526
- }
2527
- /**
2528
- * @returns {Hash[]}
2529
- */
2530
- topoHistoryTraversal() {
2531
- const ret = wasm.automerge_topoHistoryTraversal(this.__wbg_ptr);
2532
- return ret;
2533
- }
2534
- /**
2535
- * @param {ObjID} obj
2536
- * @param {MarkRange} range
2537
- * @param {string} name
2538
- */
2539
- unmark(obj, range, name) {
2540
- const ret = wasm.automerge_unmark(this.__wbg_ptr, obj, range, name);
2541
- if (ret[1]) {
2542
- throw takeFromExternrefTable0(ret[0]);
2543
- }
2544
- }
2545
- /**
2546
- * @param {ObjID} obj
2547
- * @param {number} index
2548
- * @param {{[key: string]: MaterializeValue}} block
2549
- */
2550
- updateBlock(obj, index, block) {
2551
- const ret = wasm.automerge_updateBlock(this.__wbg_ptr, obj, index, block);
2552
- if (ret[1]) {
2553
- throw takeFromExternrefTable0(ret[0]);
2554
- }
2555
- }
2556
- updateDiffCursor() {
2557
- wasm.automerge_updateDiffCursor(this.__wbg_ptr);
2558
- }
2559
- /**
2560
- * @param {ObjID} obj
2561
- * @param {Span[]} args
2562
- * @param {UpdateSpansConfig | undefined | null} config
2563
- */
2564
- updateSpans(obj, args, config) {
2565
- const ret = wasm.automerge_updateSpans(this.__wbg_ptr, obj, args, config);
2566
- if (ret[1]) {
2567
- throw takeFromExternrefTable0(ret[0]);
2568
- }
2569
- }
2570
- /**
2571
- * @param {ObjID} obj
2572
- * @param {string} new_text
2573
- */
2574
- updateText(obj, new_text) {
2575
- const ret = wasm.automerge_updateText(this.__wbg_ptr, obj, new_text);
2576
- if (ret[1]) {
2577
- throw takeFromExternrefTable0(ret[0]);
2578
- }
2579
- }
2580
- };
2581
- if (Symbol.dispose) Automerge.prototype[Symbol.dispose] = Automerge.prototype.free;
2582
- var SyncState = class _SyncState {
2583
- static __wrap(ptr) {
2584
- ptr = ptr >>> 0;
2585
- const obj = Object.create(_SyncState.prototype);
2586
- obj.__wbg_ptr = ptr;
2587
- SyncStateFinalization.register(obj, obj.__wbg_ptr, obj);
2588
- return obj;
2589
- }
2590
- __destroy_into_raw() {
2591
- const ptr = this.__wbg_ptr;
2592
- this.__wbg_ptr = 0;
2593
- SyncStateFinalization.unregister(this);
2594
- return ptr;
2595
- }
2596
- free() {
2597
- const ptr = this.__destroy_into_raw();
2598
- wasm.__wbg_syncstate_free(ptr, 0);
2599
- }
2600
- /**
2601
- * @returns {SyncState}
2602
- */
2603
- clone() {
2604
- const ret = wasm.syncstate_clone(this.__wbg_ptr);
2605
- return _SyncState.__wrap(ret);
2606
- }
2607
- /**
2608
- * @returns {Heads}
2609
- */
2610
- get lastSentHeads() {
2611
- const ret = wasm.syncstate_lastSentHeads(this.__wbg_ptr);
2612
- return ret;
2613
- }
2614
- /**
2615
- * @returns {boolean}
2616
- */
2617
- get peerReadOnly() {
2618
- const ret = wasm.syncstate_peerReadOnly(this.__wbg_ptr);
2619
- return ret !== 0;
2620
- }
2621
- /**
2622
- * @returns {boolean}
2623
- */
2624
- get readOnly() {
2625
- const ret = wasm.syncstate_readOnly(this.__wbg_ptr);
2626
- return ret !== 0;
2627
- }
2628
- /**
2629
- * @param {Heads} heads
2630
- */
2631
- set lastSentHeads(heads) {
2632
- const ret = wasm.syncstate_set_lastSentHeads(this.__wbg_ptr, heads);
2633
- if (ret[1]) {
2634
- throw takeFromExternrefTable0(ret[0]);
2635
- }
2636
- }
2637
- /**
2638
- * @param {boolean} read_only
2639
- */
2640
- set readOnly(read_only) {
2641
- wasm.syncstate_set_readOnly(this.__wbg_ptr, read_only);
2642
- }
2643
- /**
2644
- * @param {Heads} hashes
2645
- */
2646
- set sentHashes(hashes) {
2647
- const ret = wasm.syncstate_set_sentHashes(this.__wbg_ptr, hashes);
2648
- if (ret[1]) {
2649
- throw takeFromExternrefTable0(ret[0]);
2650
- }
2651
- }
2652
- /**
2653
- * @returns {Heads}
2654
- */
2655
- get sharedHeads() {
2656
- const ret = wasm.syncstate_sharedHeads(this.__wbg_ptr);
2657
- return ret;
2658
- }
2659
- };
2660
- if (Symbol.dispose) SyncState.prototype[Symbol.dispose] = SyncState.prototype.free;
2661
- var AutomergeFinalization = typeof FinalizationRegistry === "undefined" ? { register: () => {
2662
- }, unregister: () => {
2663
- } } : new FinalizationRegistry((ptr) => wasm.__wbg_automerge_free(ptr >>> 0, 1));
2664
- var SyncStateFinalization = typeof FinalizationRegistry === "undefined" ? { register: () => {
2665
- }, unregister: () => {
2666
- } } : new FinalizationRegistry((ptr) => wasm.__wbg_syncstate_free(ptr >>> 0, 1));
2667
- function _assertClass(instance, klass) {
2668
- if (!(instance instanceof klass)) {
2669
- throw new Error(`expected instance of ${klass.name}`);
2670
- }
2671
- }
2672
- function getStringFromWasm0(ptr, len) {
2673
- ptr = ptr >>> 0;
2674
- return decodeText(ptr, len);
2675
- }
2676
- var cachedUint8ArrayMemory0 = null;
2677
- function getUint8ArrayMemory0() {
2678
- if (cachedUint8ArrayMemory0 === null || cachedUint8ArrayMemory0.byteLength === 0) {
2679
- cachedUint8ArrayMemory0 = new Uint8Array(wasm.memory.buffer);
2680
- }
2681
- return cachedUint8ArrayMemory0;
2682
- }
2683
- function isLikeNone(x) {
2684
- return x === void 0 || x === null;
2685
- }
2686
- function passStringToWasm0(arg, malloc, realloc) {
2687
- if (realloc === void 0) {
2688
- const buf = cachedTextEncoder.encode(arg);
2689
- const ptr2 = malloc(buf.length, 1) >>> 0;
2690
- getUint8ArrayMemory0().subarray(ptr2, ptr2 + buf.length).set(buf);
2691
- WASM_VECTOR_LEN = buf.length;
2692
- return ptr2;
2693
- }
2694
- let len = arg.length;
2695
- let ptr = malloc(len, 1) >>> 0;
2696
- const mem = getUint8ArrayMemory0();
2697
- let offset = 0;
2698
- for (; offset < len; offset++) {
2699
- const code = arg.charCodeAt(offset);
2700
- if (code > 127) break;
2701
- mem[ptr + offset] = code;
2702
- }
2703
- if (offset !== len) {
2704
- if (offset !== 0) {
2705
- arg = arg.slice(offset);
2706
- }
2707
- ptr = realloc(ptr, len, len = offset + arg.length * 3, 1) >>> 0;
2708
- const view = getUint8ArrayMemory0().subarray(ptr + offset, ptr + len);
2709
- const ret = cachedTextEncoder.encodeInto(arg, view);
2710
- offset += ret.written;
2711
- ptr = realloc(ptr, len, offset, 1) >>> 0;
2712
- }
2713
- WASM_VECTOR_LEN = offset;
2714
- return ptr;
2715
- }
2716
- function takeFromExternrefTable0(idx) {
2717
- const value = wasm.__wbindgen_externrefs.get(idx);
2718
- wasm.__externref_table_dealloc(idx);
2719
- return value;
2720
- }
2721
- var cachedTextDecoder = new TextDecoder("utf-8", { ignoreBOM: true, fatal: true });
2722
- cachedTextDecoder.decode();
2723
- var MAX_SAFARI_DECODE_BYTES = 2146435072;
2724
- var numBytesDecoded = 0;
2725
- function decodeText(ptr, len) {
2726
- numBytesDecoded += len;
2727
- if (numBytesDecoded >= MAX_SAFARI_DECODE_BYTES) {
2728
- cachedTextDecoder = new TextDecoder("utf-8", { ignoreBOM: true, fatal: true });
2729
- cachedTextDecoder.decode();
2730
- numBytesDecoded = len;
2731
- }
2732
- return cachedTextDecoder.decode(getUint8ArrayMemory0().subarray(ptr, ptr + len));
2733
- }
2734
- var cachedTextEncoder = new TextEncoder();
2735
- if (!("encodeInto" in cachedTextEncoder)) {
2736
- cachedTextEncoder.encodeInto = function(arg, view) {
2737
- const buf = cachedTextEncoder.encode(arg);
2738
- view.set(buf);
2739
- return {
2740
- read: arg.length,
2741
- written: buf.length
2742
- };
2743
- };
2744
- }
2745
- var WASM_VECTOR_LEN = 0;
2746
- var wasm;
2747
-
2748
- // node_modules/.pnpm/@automerge+automerge@3.2.6/node_modules/@automerge/automerge/dist/mjs/low_level.js
2749
- var _initialized = false;
2750
- var _initializeListeners = [];
2751
- function UseApi(api2) {
2752
- for (const k in api2) {
2753
- ;
2754
- ApiHandler[k] = api2[k];
2755
- }
2756
- _initialized = true;
2757
- for (const listener of _initializeListeners) {
2758
- listener();
2759
- }
2760
- }
2761
- var ApiHandler = {
2762
- create(options) {
2763
- throw new RangeError("Automerge.use() not called");
2764
- },
2765
- load(data, options) {
2766
- throw new RangeError("Automerge.use() not called (load)");
2767
- },
2768
- encodeChange(change) {
2769
- throw new RangeError("Automerge.use() not called (encodeChange)");
2770
- },
2771
- decodeChange(change) {
2772
- throw new RangeError("Automerge.use() not called (decodeChange)");
2773
- },
2774
- initSyncState() {
2775
- throw new RangeError("Automerge.use() not called (initSyncState)");
2776
- },
2777
- encodeSyncMessage(message) {
2778
- throw new RangeError("Automerge.use() not called (encodeSyncMessage)");
2779
- },
2780
- decodeSyncMessage(msg) {
2781
- throw new RangeError("Automerge.use() not called (decodeSyncMessage)");
2782
- },
2783
- encodeSyncState(state) {
2784
- throw new RangeError("Automerge.use() not called (encodeSyncState)");
2785
- },
2786
- decodeSyncState(data) {
2787
- throw new RangeError("Automerge.use() not called (decodeSyncState)");
2788
- },
2789
- exportSyncState(state) {
2790
- throw new RangeError("Automerge.use() not called (exportSyncState)");
2791
- },
2792
- importSyncState(state) {
2793
- throw new RangeError("Automerge.use() not called (importSyncState)");
2794
- },
2795
- readBundle(data) {
2796
- throw new RangeError("Automerge.use() not called (readBundle)");
2797
- },
2798
- wasmReleaseInfo() {
2799
- throw new RangeError("Automerge.use() not called (wasmReleaseInfo)");
2800
- }
2801
- };
2802
-
2803
- // node_modules/.pnpm/@automerge+automerge@3.2.6/node_modules/@automerge/automerge/dist/mjs/entrypoints/fullfat_node.js
2804
- var api = __toESM(require_automerge_wasm(), 1);
2805
-
2806
- // node_modules/.pnpm/@automerge+automerge@3.2.6/node_modules/@automerge/automerge/dist/mjs/constants.js
2807
- var STATE = /* @__PURE__ */ Symbol.for("_am_meta");
2808
- var TRACE = /* @__PURE__ */ Symbol.for("_am_trace");
2809
- var OBJECT_ID = /* @__PURE__ */ Symbol.for("_am_objectId");
2810
- var IS_PROXY = /* @__PURE__ */ Symbol.for("_am_isProxy");
2811
- var CLEAR_CACHE = /* @__PURE__ */ Symbol.for("_am_clearCache");
2812
- var UINT = /* @__PURE__ */ Symbol.for("_am_uint");
2813
- var INT = /* @__PURE__ */ Symbol.for("_am_int");
2814
- var F64 = /* @__PURE__ */ Symbol.for("_am_f64");
2815
- var COUNTER = /* @__PURE__ */ Symbol.for("_am_counter");
2816
- var IMMUTABLE_STRING = /* @__PURE__ */ Symbol.for("_am_immutableString");
2817
-
2818
- // node_modules/.pnpm/@automerge+automerge@3.2.6/node_modules/@automerge/automerge/dist/mjs/counter.js
2819
- var Counter = class {
2820
- constructor(value) {
2821
- this.value = value || 0;
2822
- Reflect.defineProperty(this, COUNTER, { value: true });
2823
- }
2824
- /**
2825
- * A peculiar JavaScript language feature from its early days: if the object
2826
- * `x` has a `valueOf()` method that returns a number, you can use numerical
2827
- * operators on the object `x` directly, such as `x + 1` or `x < 4`.
2828
- * This method is also called when coercing a value to a string by
2829
- * concatenating it with another string, as in `x + ''`.
2830
- * https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Object/valueOf
2831
- */
2832
- valueOf() {
2833
- return this.value;
2834
- }
2835
- /**
2836
- * Returns the counter value as a decimal string. If `x` is a counter object,
2837
- * this method is called e.g. when you do `['value: ', x].join('')` or when
2838
- * you use string interpolation: `value: ${x}`.
2839
- */
2840
- toString() {
2841
- return this.valueOf().toString();
2842
- }
2843
- /**
2844
- * Returns the counter value, so that a JSON serialization of an Automerge
2845
- * document represents the counter simply as an integer.
2846
- */
2847
- toJSON() {
2848
- return this.value;
2849
- }
2850
- /**
2851
- * Increases the value of the counter by `delta`. If `delta` is not given,
2852
- * increases the value of the counter by 1.
2853
- *
2854
- * Will throw an error if used outside of a change callback.
2855
- */
2856
- increment(_delta) {
2857
- throw new Error("Counters should not be incremented outside of a change callback");
2858
- }
2859
- /**
2860
- * Decreases the value of the counter by `delta`. If `delta` is not given,
2861
- * decreases the value of the counter by 1.
2862
- *
2863
- * Will throw an error if used outside of a change callback.
2864
- */
2865
- decrement(_delta) {
2866
- throw new Error("Counters should not be decremented outside of a change callback");
2867
- }
2868
- };
2869
- var WriteableCounter = class extends Counter {
2870
- constructor(value, context, path, objectId, key) {
2871
- super(value);
2872
- this.context = context;
2873
- this.path = path;
2874
- this.objectId = objectId;
2875
- this.key = key;
2876
- }
2877
- /**
2878
- * Increases the value of the counter by `delta`. If `delta` is not given,
2879
- * increases the value of the counter by 1.
2880
- */
2881
- increment(delta) {
2882
- delta = typeof delta === "number" ? delta : 1;
2883
- this.context.increment(this.objectId, this.key, delta);
2884
- this.value += delta;
2885
- return this.value;
2886
- }
2887
- /**
2888
- * Decreases the value of the counter by `delta`. If `delta` is not given,
2889
- * decreases the value of the counter by 1.
2890
- */
2891
- decrement(delta) {
2892
- return this.increment(typeof delta === "number" ? -delta : -1);
2893
- }
2894
- };
2895
- function getWriteableCounter(value, context, path, objectId, key) {
2896
- return new WriteableCounter(value, context, path, objectId, key);
2897
- }
2898
-
2899
- // node_modules/.pnpm/@automerge+automerge@3.2.6/node_modules/@automerge/automerge/dist/mjs/immutable_string.js
2900
- var _a;
2901
- var ImmutableString = class {
2902
- constructor(val) {
2903
- this[_a] = true;
2904
- this.val = val;
2905
- }
2906
- /**
2907
- * Returns the content of the ImmutableString object as a simple string
2908
- */
2909
- toString() {
2910
- return this.val;
2911
- }
2912
- toJSON() {
2913
- return this.val;
2914
- }
2915
- };
2916
- _a = IMMUTABLE_STRING;
2917
-
2918
- // node_modules/.pnpm/@automerge+automerge@3.2.6/node_modules/@automerge/automerge/dist/mjs/proxies.js
2919
- var MAX_I64 = BigInt("9223372036854775807");
2920
- function validateForBatchInsert(value, context, path) {
2921
- if (value === void 0) {
2922
- throw new RangeError([
2923
- `Cannot assign undefined value at ${printPath(path)}, `,
2924
- "You might consider setting the property's value to `null`, ",
2925
- "or using `delete` to remove it altogether."
2926
- ].join(""));
2927
- }
2928
- if (value === null)
2929
- return;
2930
- const type = typeof value;
2931
- if (type !== "object")
2932
- return;
2933
- if (context && isSameDocument(value, context)) {
2934
- throw new RangeError("Cannot create a reference to an existing document object");
2935
- }
2936
- if (value instanceof Array) {
2937
- for (let i = 0; i < value.length; i++) {
2938
- validateForBatchInsert(value[i], context, [...path, i]);
2939
- }
2940
- } else if (Object.prototype.toString.call(value) === "[object Object]") {
2941
- for (const k in value) {
2942
- validateForBatchInsert(value[k], context, [...path, k]);
2943
- }
2944
- }
2945
- }
2946
- function parseListIndex(key) {
2947
- if (typeof key === "string" && /^[0-9]+$/.test(key))
2948
- key = parseInt(key, 10);
2949
- if (typeof key !== "number") {
2950
- return key;
2951
- }
2952
- if (key < 0 || isNaN(key) || key === Infinity || key === -Infinity) {
2953
- throw new RangeError("A list index must be positive, but you passed " + key);
2954
- }
2955
- return key;
2956
- }
2957
- function valueAt(target, prop) {
2958
- const { context, objectId, path } = target;
2959
- const value = context.getWithType(objectId, prop);
2960
- if (value === null) {
2961
- return;
2962
- }
2963
- const datatype = value[0];
2964
- const val = value[1];
2965
- switch (datatype) {
2966
- case void 0:
2967
- return;
2968
- case "map":
2969
- return mapProxy(context, val, [...path, prop]);
2970
- case "list":
2971
- return listProxy(context, val, [...path, prop]);
2972
- case "text":
2973
- return context.text(val);
2974
- case "str":
2975
- return new ImmutableString(val);
2976
- case "uint":
2977
- return val;
2978
- case "int":
2979
- return val;
2980
- case "f64":
2981
- return val;
2982
- case "boolean":
2983
- return val;
2984
- case "null":
2985
- return null;
2986
- case "bytes":
2987
- return val;
2988
- case "timestamp":
2989
- return val;
2990
- case "counter": {
2991
- const counter = getWriteableCounter(val, context, path, objectId, prop);
2992
- return counter;
2993
- }
2994
- default:
2995
- throw RangeError(`datatype ${datatype} unimplemented`);
2996
- }
2997
- }
2998
- function import_value(value, path, context) {
2999
- const type = typeof value;
3000
- switch (type) {
3001
- case "object":
3002
- if (value == null) {
3003
- return [null, "null"];
3004
- } else if (value[UINT]) {
3005
- return [value.value, "uint"];
3006
- } else if (value[INT]) {
3007
- return [value.value, "int"];
3008
- } else if (value[F64]) {
3009
- return [value.value, "f64"];
3010
- } else if (value[COUNTER]) {
3011
- return [value.value, "counter"];
3012
- } else if (value instanceof Date) {
3013
- return [value.getTime(), "timestamp"];
3014
- } else if (isImmutableString(value)) {
3015
- return [value.toString(), "str"];
3016
- } else if (value instanceof Uint8Array) {
3017
- return [value, "bytes"];
3018
- } else if (value instanceof Array) {
3019
- return [value, "list"];
3020
- } else if (Object.prototype.toString.call(value) === "[object Object]") {
3021
- return [value, "map"];
3022
- } else if (isSameDocument(value, context)) {
3023
- throw new RangeError("Cannot create a reference to an existing document object");
3024
- } else {
3025
- throw new RangeError(`Cannot assign unknown object: ${value}`);
3026
- }
3027
- case "boolean":
3028
- return [value, "boolean"];
3029
- case "bigint":
3030
- if (value > MAX_I64) {
3031
- return [value, "uint"];
3032
- } else {
3033
- return [value, "int"];
3034
- }
3035
- case "number":
3036
- if (Number.isInteger(value)) {
3037
- return [value, "int"];
3038
- } else {
3039
- return [value, "f64"];
3040
- }
3041
- case "string":
3042
- return [value, "text"];
3043
- case "undefined":
3044
- throw new RangeError([
3045
- `Cannot assign undefined value at ${printPath(path)}, `,
3046
- "because `undefined` is not a valid JSON data type. ",
3047
- "You might consider setting the property's value to `null`, ",
3048
- "or using `delete` to remove it altogether."
3049
- ].join(""));
3050
- default:
3051
- throw new RangeError([
3052
- `Cannot assign ${type} value at ${printPath(path)}. `,
3053
- `All JSON primitive datatypes (object, array, string, number, boolean, null) `,
3054
- `are supported in an Automerge document; ${type} values are not. `
3055
- ].join(""));
3056
- }
3057
- }
3058
- function isSameDocument(val, context) {
3059
- var _b, _c;
3060
- if (val instanceof Date) {
3061
- return false;
3062
- }
3063
- if (val && ((_c = (_b = val[STATE]) === null || _b === void 0 ? void 0 : _b.handle) === null || _c === void 0 ? void 0 : _c.__wbg_ptr) === context.__wbg_ptr) {
3064
- return true;
3065
- }
3066
- return false;
3067
- }
3068
- var MapHandler = {
3069
- get(target, key) {
3070
- const { context, objectId, cache } = target;
3071
- if (key === Symbol.toStringTag) {
3072
- return target[Symbol.toStringTag];
3073
- }
3074
- if (key === OBJECT_ID)
3075
- return objectId;
3076
- if (key === IS_PROXY)
3077
- return true;
3078
- if (key === TRACE)
3079
- return target.trace;
3080
- if (key === STATE)
3081
- return { handle: context };
3082
- if (!cache[key]) {
3083
- cache[key] = valueAt(target, key);
3084
- }
3085
- return cache[key];
3086
- },
3087
- set(target, key, val) {
3088
- const { context, objectId, path } = target;
3089
- target.cache = {};
3090
- if (isSameDocument(val, context)) {
3091
- throw new RangeError("Cannot create a reference to an existing document object");
3092
- }
3093
- if (key === TRACE) {
3094
- target.trace = val;
3095
- return true;
3096
- }
3097
- if (key === CLEAR_CACHE) {
3098
- return true;
3099
- }
3100
- const [value, datatype] = import_value(val, [...path, key], context);
3101
- switch (datatype) {
3102
- case "list":
3103
- case "map": {
3104
- validateForBatchInsert(value, context, [...path, key]);
3105
- context.putObjectFromHydrate(objectId, key, value);
3106
- break;
3107
- }
3108
- case "text": {
3109
- context.putObject(objectId, key, value);
3110
- break;
3111
- }
3112
- default:
3113
- context.put(objectId, key, value, datatype);
3114
- }
3115
- return true;
3116
- },
3117
- deleteProperty(target, key) {
3118
- const { context, objectId } = target;
3119
- target.cache = {};
3120
- context.delete(objectId, key);
3121
- return true;
3122
- },
3123
- has(target, key) {
3124
- const value = this.get(target, key);
3125
- return value !== void 0;
3126
- },
3127
- getOwnPropertyDescriptor(target, key) {
3128
- const value = this.get(target, key);
3129
- if (typeof value !== "undefined") {
3130
- return {
3131
- configurable: true,
3132
- enumerable: true,
3133
- value
3134
- };
3135
- }
3136
- },
3137
- ownKeys(target) {
3138
- const { context, objectId } = target;
3139
- const keys = context.keys(objectId);
3140
- return [...new Set(keys)];
3141
- }
3142
- };
3143
- var ListHandler = {
3144
- get(target, index) {
3145
- const { context, objectId } = target;
3146
- index = parseListIndex(index);
3147
- if (index === Symbol.hasInstance) {
3148
- return (instance) => {
3149
- return Array.isArray(instance);
3150
- };
3151
- }
3152
- if (index === Symbol.toStringTag) {
3153
- return target[Symbol.toStringTag];
3154
- }
3155
- if (index === OBJECT_ID)
3156
- return objectId;
3157
- if (index === IS_PROXY)
3158
- return true;
3159
- if (index === TRACE)
3160
- return target.trace;
3161
- if (index === STATE)
3162
- return { handle: context };
3163
- if (index === "length")
3164
- return context.length(objectId);
3165
- if (typeof index === "number") {
3166
- return valueAt(target, index);
3167
- } else {
3168
- return listMethods(target)[index];
3169
- }
3170
- },
3171
- set(target, index, val) {
3172
- const { context, objectId, path } = target;
3173
- index = parseListIndex(index);
3174
- if (isSameDocument(val, context)) {
3175
- throw new RangeError("Cannot create a reference to an existing document object");
3176
- }
3177
- if (index === CLEAR_CACHE) {
3178
- return true;
3179
- }
3180
- if (index === TRACE) {
3181
- target.trace = val;
3182
- return true;
3183
- }
3184
- if (typeof index == "string") {
3185
- throw new RangeError("list index must be a number");
3186
- }
3187
- const [value, datatype] = import_value(val, [...path, index], context);
3188
- switch (datatype) {
3189
- case "list":
3190
- case "map": {
3191
- validateForBatchInsert(value, context, [...path, index]);
3192
- if (index >= context.length(objectId)) {
3193
- context.insertObjectFromHydrate(objectId, index, value);
3194
- } else {
3195
- context.putObjectFromHydrate(objectId, index, value);
3196
- }
3197
- break;
3198
- }
3199
- case "text": {
3200
- if (index >= context.length(objectId)) {
3201
- context.insertObject(objectId, index, value);
3202
- } else {
3203
- context.putObject(objectId, index, value);
3204
- }
3205
- break;
3206
- }
3207
- default:
3208
- if (index >= context.length(objectId)) {
3209
- context.insert(objectId, index, value, datatype);
3210
- } else {
3211
- context.put(objectId, index, value, datatype);
3212
- }
3213
- }
3214
- return true;
3215
- },
3216
- deleteProperty(target, index) {
3217
- const { context, objectId } = target;
3218
- index = parseListIndex(index);
3219
- const elem = context.get(objectId, index);
3220
- if (elem != null && elem[0] == "counter") {
3221
- throw new TypeError("Unsupported operation: deleting a counter from a list");
3222
- }
3223
- context.delete(objectId, index);
3224
- return true;
3225
- },
3226
- has(target, index) {
3227
- const { context, objectId } = target;
3228
- index = parseListIndex(index);
3229
- if (typeof index === "number") {
3230
- return index < context.length(objectId);
3231
- }
3232
- return index === "length";
3233
- },
3234
- getOwnPropertyDescriptor(target, index) {
3235
- const { context, objectId } = target;
3236
- if (index === "length")
3237
- return { writable: true, value: context.length(objectId) };
3238
- if (index === OBJECT_ID)
3239
- return { configurable: false, enumerable: false, value: objectId };
3240
- index = parseListIndex(index);
3241
- const value = valueAt(target, index);
3242
- return { configurable: true, enumerable: true, value };
3243
- },
3244
- getPrototypeOf(target) {
3245
- return Object.getPrototypeOf(target);
3246
- },
3247
- ownKeys() {
3248
- const keys = [];
3249
- keys.push("length");
3250
- return keys;
3251
- }
3252
- };
3253
- function mapProxy(context, objectId, path) {
3254
- const target = {
3255
- context,
3256
- objectId,
3257
- path: path || [],
3258
- cache: {}
3259
- };
3260
- const proxied = {};
3261
- Object.assign(proxied, target);
3262
- const result = new Proxy(proxied, MapHandler);
3263
- return result;
3264
- }
3265
- function listProxy(context, objectId, path) {
3266
- const target = {
3267
- context,
3268
- objectId,
3269
- path: path || [],
3270
- cache: {}
3271
- };
3272
- const proxied = [];
3273
- Object.assign(proxied, target);
3274
- return new Proxy(proxied, ListHandler);
3275
- }
3276
- function rootProxy(context) {
3277
- return mapProxy(context, "_root", []);
3278
- }
3279
- function listMethods(target) {
3280
- const { context, objectId, path } = target;
3281
- const methods = {
3282
- at(index) {
3283
- return valueAt(target, index);
3284
- },
3285
- deleteAt(index, numDelete) {
3286
- if (typeof numDelete === "number") {
3287
- context.splice(objectId, index, numDelete);
3288
- } else {
3289
- context.delete(objectId, index);
3290
- }
3291
- return this;
3292
- },
3293
- fill(val, start, end) {
3294
- const [value, datatype] = import_value(val, [...path, start], context);
3295
- const length = context.length(objectId);
3296
- start = parseListIndex(start || 0);
3297
- end = parseListIndex(end || length);
3298
- for (let i = start; i < Math.min(end, length); i++) {
3299
- if (datatype === "list" || datatype === "map") {
3300
- context.putObject(objectId, i, value);
3301
- } else if (datatype === "text") {
3302
- context.putObject(objectId, i, value);
3303
- } else {
3304
- context.put(objectId, i, value, datatype);
3305
- }
3306
- }
3307
- return this;
3308
- },
3309
- indexOf(searchElement, start = 0) {
3310
- const length = context.length(objectId);
3311
- for (let i = start; i < length; i++) {
3312
- const valueWithType = context.getWithType(objectId, i);
3313
- if (!valueWithType) {
3314
- continue;
3315
- }
3316
- const [valType, value] = valueWithType;
3317
- const isObject = ["map", "list", "text"].includes(valType);
3318
- if (!isObject) {
3319
- if (value === searchElement) {
3320
- return i;
3321
- } else {
3322
- continue;
3323
- }
3324
- }
3325
- if (valType === "text" && typeof searchElement === "string") {
3326
- if (searchElement === valueAt(target, i)) {
3327
- return i;
3328
- }
3329
- }
3330
- if (searchElement[OBJECT_ID] === value) {
3331
- return i;
3332
- }
3333
- }
3334
- return -1;
3335
- },
3336
- insertAt(index, ...values) {
3337
- this.splice(index, 0, ...values);
3338
- return this;
3339
- },
3340
- pop() {
3341
- const length = context.length(objectId);
3342
- if (length == 0) {
3343
- return void 0;
3344
- }
3345
- const last = valueAt(target, length - 1);
3346
- context.delete(objectId, length - 1);
3347
- return last;
3348
- },
3349
- push(...values) {
3350
- const len = context.length(objectId);
3351
- this.splice(len, 0, ...values);
3352
- return context.length(objectId);
3353
- },
3354
- shift() {
3355
- if (context.length(objectId) == 0)
3356
- return;
3357
- const first = valueAt(target, 0);
3358
- context.delete(objectId, 0);
3359
- return first;
3360
- },
3361
- splice(index, del, ...vals) {
3362
- index = parseListIndex(index);
3363
- if (typeof del !== "number") {
3364
- del = context.length(objectId) - index;
3365
- }
3366
- del = parseListIndex(del);
3367
- for (const val of vals) {
3368
- if (isSameDocument(val, context)) {
3369
- throw new RangeError("Cannot create a reference to an existing document object");
3370
- }
3371
- }
3372
- const result = [];
3373
- for (let i = 0; i < del; i++) {
3374
- const value = valueAt(target, index + i);
3375
- if (value !== void 0) {
3376
- result.push(value);
3377
- }
3378
- }
3379
- for (let i = 0; i < vals.length; i++) {
3380
- try {
3381
- validateForBatchInsert(vals[i], context, [...path, index + i]);
3382
- } catch (e) {
3383
- if (e instanceof RangeError) {
3384
- throw new RangeError(`${e.message} (at index ${i} in the input)`);
3385
- } else {
3386
- throw e;
3387
- }
3388
- }
3389
- }
3390
- context.spliceFromHydrate(objectId, index, del, vals);
3391
- return result;
3392
- },
3393
- unshift(...values) {
3394
- this.splice(0, 0, ...values);
3395
- return context.length(objectId);
3396
- },
3397
- entries() {
3398
- let i = 0;
3399
- const iterator = {
3400
- next: () => {
3401
- const value = valueAt(target, i);
3402
- if (value === void 0) {
3403
- return { value: void 0, done: true };
3404
- } else {
3405
- return { value: [i++, value], done: false };
3406
- }
3407
- },
3408
- [Symbol.iterator]() {
3409
- return this;
3410
- }
3411
- };
3412
- return iterator;
3413
- },
3414
- keys() {
3415
- let i = 0;
3416
- const len = context.length(objectId);
3417
- const iterator = {
3418
- next: () => {
3419
- if (i < len) {
3420
- return { value: i++, done: false };
3421
- }
3422
- return { value: void 0, done: true };
3423
- },
3424
- [Symbol.iterator]() {
3425
- return this;
3426
- }
3427
- };
3428
- return iterator;
3429
- },
3430
- values() {
3431
- let i = 0;
3432
- const iterator = {
3433
- next: () => {
3434
- const value = valueAt(target, i++);
3435
- if (value === void 0) {
3436
- return { value: void 0, done: true };
3437
- } else {
3438
- return { value, done: false };
3439
- }
3440
- },
3441
- [Symbol.iterator]() {
3442
- return this;
3443
- }
3444
- };
3445
- return iterator;
3446
- },
3447
- toArray() {
3448
- const list = [];
3449
- let value;
3450
- do {
3451
- value = valueAt(target, list.length);
3452
- if (value !== void 0) {
3453
- list.push(value);
3454
- }
3455
- } while (value !== void 0);
3456
- return list;
3457
- },
3458
- map(f) {
3459
- return this.toArray().map(f);
3460
- },
3461
- toString() {
3462
- return this.toArray().toString();
3463
- },
3464
- toLocaleString() {
3465
- return this.toArray().toLocaleString();
3466
- },
3467
- forEach(f) {
3468
- return this.toArray().forEach(f);
3469
- },
3470
- // todo: real concat function is different
3471
- concat(other) {
3472
- return this.toArray().concat(other);
3473
- },
3474
- every(f) {
3475
- return this.toArray().every(f);
3476
- },
3477
- filter(f) {
3478
- return this.toArray().filter(f);
3479
- },
3480
- find(f) {
3481
- let index = 0;
3482
- for (const v of this) {
3483
- if (f(v, index)) {
3484
- return v;
3485
- }
3486
- index += 1;
3487
- }
3488
- },
3489
- findIndex(f) {
3490
- let index = 0;
3491
- for (const v of this) {
3492
- if (f(v, index)) {
3493
- return index;
3494
- }
3495
- index += 1;
3496
- }
3497
- return -1;
3498
- },
3499
- includes(elem) {
3500
- return this.find((e) => e === elem) !== void 0;
3501
- },
3502
- join(sep) {
3503
- return this.toArray().join(sep);
3504
- },
3505
- reduce(f, initialValue) {
3506
- return this.toArray().reduce(f, initialValue);
3507
- },
3508
- reduceRight(f, initialValue) {
3509
- return this.toArray().reduceRight(f, initialValue);
3510
- },
3511
- lastIndexOf(search, fromIndex = Infinity) {
3512
- return this.toArray().lastIndexOf(search, fromIndex);
3513
- },
3514
- slice(index, num) {
3515
- return this.toArray().slice(index, num);
3516
- },
3517
- some(f) {
3518
- let index = 0;
3519
- for (const v of this) {
3520
- if (f(v, index)) {
3521
- return true;
3522
- }
3523
- index += 1;
3524
- }
3525
- return false;
3526
- },
3527
- [Symbol.iterator]: function* () {
3528
- let i = 0;
3529
- let value = valueAt(target, i);
3530
- while (value !== void 0) {
3531
- yield value;
3532
- i += 1;
3533
- value = valueAt(target, i);
3534
- }
3535
- }
3536
- };
3537
- return methods;
3538
- }
3539
- function printPath(path) {
3540
- const jsonPointerComponents = path.map((component) => {
3541
- if (typeof component === "number") {
3542
- return component.toString();
3543
- } else if (typeof component === "string") {
3544
- return component.replace(/~/g, "~0").replace(/\//g, "~1");
3545
- }
3546
- });
3547
- if (path.length === 0) {
3548
- return "";
3549
- } else {
3550
- return "/" + jsonPointerComponents.join("/");
3551
- }
3552
- }
3553
- function isImmutableString(obj) {
3554
- return typeof obj === "object" && obj !== null && Object.prototype.hasOwnProperty.call(obj, IMMUTABLE_STRING);
3555
- }
3556
-
3557
- // node_modules/.pnpm/@automerge+automerge@3.2.6/node_modules/@automerge/automerge/dist/mjs/internal_state.js
3558
- function _state(doc, checkroot = true) {
3559
- if (typeof doc !== "object") {
3560
- throw new RangeError("must be the document root");
3561
- }
3562
- const state = Reflect.get(doc, STATE);
3563
- if (state === void 0 || state == null || checkroot && _obj(doc) !== "_root") {
3564
- throw new RangeError("must be the document root");
3565
- }
3566
- return state;
3567
- }
3568
- function _trace(doc) {
3569
- return Reflect.get(doc, TRACE);
3570
- }
3571
- function _obj(doc) {
3572
- if (!(typeof doc === "object") || doc === null) {
3573
- return null;
3574
- }
3575
- return Reflect.get(doc, OBJECT_ID);
3576
- }
3577
- function _is_proxy(doc) {
3578
- return !!Reflect.get(doc, IS_PROXY);
3579
- }
3580
-
3581
- // node_modules/.pnpm/@automerge+automerge@3.2.6/node_modules/@automerge/automerge/dist/mjs/implementation.js
3582
- function importOpts(_actor) {
3583
- if (typeof _actor === "object") {
3584
- return _actor;
3585
- } else {
3586
- return { actor: _actor };
3587
- }
3588
- }
3589
- function getChangesSince(state, heads) {
3590
- const n = _state(state);
3591
- return n.handle.getChanges(heads);
3592
- }
3593
- function init(_opts) {
3594
- const opts = importOpts(_opts);
3595
- const freeze = !!opts.freeze;
3596
- const patchCallback = opts.patchCallback;
3597
- const actor = opts.actor;
3598
- const handle = ApiHandler.create({ actor });
3599
- handle.enableFreeze(!!opts.freeze);
3600
- registerDatatypes(handle);
3601
- const doc = handle.materialize("/", void 0, {
3602
- handle,
3603
- heads: void 0,
3604
- freeze,
3605
- patchCallback
3606
- });
3607
- return doc;
3608
- }
3609
- function from(initialState, _opts) {
3610
- const opts = importOpts(_opts);
3611
- if (typeof initialState !== "object" || Array.isArray(initialState)) {
3612
- initialState = Object.assign({}, initialState);
3613
- }
3614
- validateForBatchInsert(initialState, null, []);
3615
- const doc = init(_opts);
3616
- return _change(doc, "from", {}, (d) => {
3617
- _state(doc).handle.initRootFromHydrate(initialState);
3618
- return d;
3619
- }).newDoc;
3620
- }
3621
- function progressDocument(doc, source, heads, callback) {
3622
- if (heads == null) {
3623
- return doc;
3624
- }
3625
- const state = _state(doc);
3626
- const nextState = Object.assign(Object.assign({}, state), { heads: void 0 });
3627
- const { value: nextDoc, patches } = state.handle.applyAndReturnPatches(doc, nextState);
3628
- if (patches.length > 0) {
3629
- if (callback != null) {
3630
- callback(patches, { before: doc, after: nextDoc, source });
3631
- }
3632
- const newState = _state(nextDoc);
3633
- newState.mostRecentPatch = {
3634
- before: _state(doc).heads,
3635
- after: newState.handle.getHeads(),
3636
- patches
3637
- };
3638
- }
3639
- state.heads = heads;
3640
- return nextDoc;
3641
- }
3642
- function _change(doc, source, options, callback, scope) {
3643
- if (typeof callback !== "function") {
3644
- throw new RangeError("invalid change function");
3645
- }
3646
- const state = _state(doc);
3647
- if (doc === void 0 || state === void 0) {
3648
- throw new RangeError("must be the document root");
3649
- }
3650
- if (state.heads) {
3651
- throw new RangeError("Attempting to change an outdated document. Use Automerge.clone() if you wish to make a writable copy.");
3652
- }
3653
- if (_is_proxy(doc)) {
3654
- throw new RangeError("Calls to Automerge.change cannot be nested");
3655
- }
3656
- let heads = state.handle.getHeads();
3657
- if (scope && headsEqual(scope, heads)) {
3658
- scope = void 0;
3659
- }
3660
- if (scope) {
3661
- state.handle.isolate(scope);
3662
- heads = scope;
3663
- }
3664
- if (!("time" in options)) {
3665
- options.time = Math.floor(Date.now() / 1e3);
3666
- }
3667
- try {
3668
- state.heads = heads;
3669
- const root = rootProxy(state.handle);
3670
- callback(root);
3671
- if (state.handle.pendingOps() === 0) {
3672
- state.heads = void 0;
3673
- if (scope) {
3674
- state.handle.integrate();
3675
- }
3676
- return {
3677
- newDoc: doc,
3678
- newHeads: null
3679
- };
3680
- } else {
3681
- const newHead = state.handle.commit(options.message, options.time);
3682
- state.handle.integrate();
3683
- return {
3684
- newDoc: progressDocument(doc, source, heads, options.patchCallback || state.patchCallback),
3685
- newHeads: newHead != null ? [newHead] : null
3686
- };
3687
- }
3688
- } catch (e) {
3689
- state.heads = void 0;
3690
- state.handle.rollback();
3691
- throw e;
3692
- }
3693
- }
3694
- function load(data, _opts) {
3695
- const opts = importOpts(_opts);
3696
- if (opts.patchCallback) {
3697
- return loadIncremental(init(opts), data);
3698
- }
3699
- const actor = opts.actor;
3700
- const patchCallback = opts.patchCallback;
3701
- const unchecked = opts.unchecked || false;
3702
- const allowMissingDeps = opts.allowMissingChanges || false;
3703
- const convertImmutableStringsToText = opts.convertImmutableStringsToText || false;
3704
- const handle = ApiHandler.load(data, {
3705
- actor,
3706
- unchecked,
3707
- allowMissingDeps,
3708
- convertImmutableStringsToText
3709
- });
3710
- handle.enableFreeze(!!opts.freeze);
3711
- registerDatatypes(handle);
3712
- const doc = handle.materialize("/", void 0, {
3713
- handle,
3714
- heads: void 0,
3715
- patchCallback
3716
- });
3717
- return doc;
3718
- }
3719
- function loadIncremental(doc, data, opts) {
3720
- if (!opts) {
3721
- opts = {};
3722
- }
3723
- const state = _state(doc);
3724
- if (state.heads) {
3725
- throw new RangeError("Attempting to change an out of date document - set at: " + _trace(doc));
3726
- }
3727
- if (_is_proxy(doc)) {
3728
- throw new RangeError("Calls to Automerge.change cannot be nested");
3729
- }
3730
- const heads = state.handle.getHeads();
3731
- state.handle.loadIncremental(data);
3732
- return progressDocument(doc, "loadIncremental", heads, opts.patchCallback || state.patchCallback);
3733
- }
3734
- function save(doc) {
3735
- return _state(doc).handle.save();
3736
- }
3737
- function applyChanges(doc, changes, opts) {
3738
- const state = _state(doc);
3739
- if (!opts) {
3740
- opts = {};
3741
- }
3742
- if (state.heads) {
3743
- throw new RangeError("Attempting to change an outdated document. Use Automerge.clone() if you wish to make a writable copy.");
3744
- }
3745
- if (_is_proxy(doc)) {
3746
- throw new RangeError("Calls to Automerge.change cannot be nested");
3747
- }
3748
- const heads = state.handle.getHeads();
3749
- state.handle.applyChanges(changes);
3750
- state.heads = heads;
3751
- return [
3752
- progressDocument(doc, "applyChanges", heads, opts.patchCallback || state.patchCallback)
3753
- ];
3754
- }
3755
- function headsEqual(heads1, heads2) {
3756
- if (heads1.length !== heads2.length) {
3757
- return false;
3758
- }
3759
- for (let i = 0; i < heads1.length; i++) {
3760
- if (heads1[i] !== heads2[i]) {
3761
- return false;
3762
- }
3763
- }
3764
- return true;
3765
- }
3766
- function getHeads(doc) {
3767
- const state = _state(doc);
3768
- return state.heads || state.handle.getHeads();
3769
- }
3770
- function registerDatatypes(handle) {
3771
- handle.registerDatatype("counter", (n) => new Counter(n), (n) => {
3772
- if (n instanceof Counter) {
3773
- return n.value;
3774
- }
3775
- });
3776
- handle.registerDatatype("str", (n) => {
3777
- return new ImmutableString(n);
3778
- }, (s) => {
3779
- if (isImmutableString(s)) {
3780
- return s.val;
3781
- }
3782
- });
3783
- }
3784
-
3785
- // node_modules/.pnpm/@automerge+automerge@3.2.6/node_modules/@automerge/automerge/dist/mjs/entrypoints/fullfat_node.js
3786
- UseApi(api);
3787
-
3788
1
  // src/testing/index.ts
2
+ import * as Automerge from "@automerge/automerge";
3
+ import {
4
+ evaluateExpression,
5
+ parseMindooDBFormulaBooleanExpression
6
+ } from "mindoodb-view-language";
3789
7
  var PROTOCOL = "mindoodb-app-bridge";
3790
8
  function createBridgeErrorPayload(error, fallbackCode = "bridge-error") {
3791
9
  if (error && typeof error === "object" && "message" in error) {
@@ -4093,10 +311,12 @@ function createDefaultLaunchContext(patch) {
4093
311
  uiPreferences: {
4094
312
  iosMultitaskingOptimized: false
4095
313
  },
314
+ locale: "en",
4096
315
  user: {
4097
316
  id: "user-1",
4098
317
  username: "Test User"
4099
318
  },
319
+ licensedProducts: [],
4100
320
  launchParameters: {},
4101
321
  databases: [],
4102
322
  views: []
@@ -4142,19 +362,19 @@ function createDefaultWritableAttachmentStream() {
4142
362
  }
4143
363
  function loadMockAutomergeDocument(document) {
4144
364
  if (document.automergeBinary) {
4145
- return load(document.automergeBinary);
365
+ return Automerge.load(document.automergeBinary);
4146
366
  }
4147
- const initialDoc = from({
367
+ const initialDoc = Automerge.from({
4148
368
  ...structuredClone(document.data),
4149
369
  body: typeof document.data.body === "string" ? document.data.body : ""
4150
370
  });
4151
- document.automergeBinary = save(initialDoc);
371
+ document.automergeBinary = Automerge.save(initialDoc);
4152
372
  return initialDoc;
4153
373
  }
4154
374
  function persistMockAutomergeDocument(document, automergeDoc) {
4155
- document.automergeBinary = save(automergeDoc);
375
+ document.automergeBinary = Automerge.save(automergeDoc);
4156
376
  document.data = structuredClone(automergeDoc);
4157
- document.heads = getHeads(automergeDoc);
377
+ document.heads = Automerge.getHeads(automergeDoc);
4158
378
  }
4159
379
  function getFieldValue(source, field) {
4160
380
  return field.split(".").reduce((current, part) => {
@@ -4179,6 +399,138 @@ function decodeMockListCursor(cursor) {
4179
399
  const offset = Number.parseInt(cursor, 10);
4180
400
  return Number.isFinite(offset) && offset >= 0 ? offset : 0;
4181
401
  }
402
+ function mockExpressionToBoolean(value) {
403
+ if (typeof value === "boolean") {
404
+ return value;
405
+ }
406
+ if (typeof value === "number") {
407
+ return value !== 0;
408
+ }
409
+ if (typeof value === "string") {
410
+ const normalized = value.trim().toLowerCase();
411
+ return normalized !== "" && normalized !== "false" && normalized !== "0" && normalized !== "no";
412
+ }
413
+ return Boolean(value);
414
+ }
415
+ function compareMockQueryValues(left, right) {
416
+ const leftNumber = typeof left === "number" ? left : Number(left);
417
+ const rightNumber = typeof right === "number" ? right : Number(right);
418
+ if (Number.isFinite(leftNumber) && Number.isFinite(rightNumber)) {
419
+ return leftNumber - rightNumber;
420
+ }
421
+ return String(left ?? "").localeCompare(String(right ?? ""), void 0, {
422
+ sensitivity: "base"
423
+ });
424
+ }
425
+ function collectMockText(value, depth = 0) {
426
+ if (typeof value === "string") {
427
+ return value;
428
+ }
429
+ if (value === null || typeof value !== "object" || depth > 8) {
430
+ return "";
431
+ }
432
+ const parts = [];
433
+ for (const item of Array.isArray(value) ? value : Object.values(value)) {
434
+ const text = collectMockText(item, depth + 1);
435
+ if (text.length > 0) {
436
+ parts.push(text);
437
+ }
438
+ }
439
+ return parts.join(" ");
440
+ }
441
+ function mockTokenize(text) {
442
+ return text.toLowerCase().split(/[^\p{L}\p{N}]+/u).filter((token) => token.length > 0);
443
+ }
444
+ function computeMockTextScore(document, clause) {
445
+ const terms = mockTokenize(clause.query);
446
+ if (terms.length === 0) {
447
+ return void 0;
448
+ }
449
+ const haystack = clause.fields ? clause.fields.map((field) => collectMockText(getFieldValue(document.data, field))).join(" ") : collectMockText(
450
+ Object.fromEntries(
451
+ Object.entries(document.data).filter(([key]) => !key.startsWith("_"))
452
+ )
453
+ );
454
+ const tokens = mockTokenize(haystack);
455
+ const prefix = clause.prefix ?? true;
456
+ const combineWith = clause.combineWith ?? "AND";
457
+ let matchedTerms = 0;
458
+ let score = 0;
459
+ for (const term of terms) {
460
+ const occurrences = tokens.filter(
461
+ (token) => prefix ? token.startsWith(term) : token === term
462
+ ).length;
463
+ if (occurrences > 0) {
464
+ matchedTerms++;
465
+ score += occurrences;
466
+ }
467
+ }
468
+ const matches = combineWith === "AND" ? matchedTerms === terms.length : matchedTerms > 0;
469
+ return matches ? score : void 0;
470
+ }
471
+ function runMockDocumentQuery(storedDocuments, databaseId, query) {
472
+ const filter = typeof query?.filter === "string" ? parseMindooDBFormulaBooleanExpression(query.filter) : query?.filter;
473
+ const sortBy = query?.sortBy && query.sortBy.length > 0 ? query.sortBy : query?.text ? [{ special: "textScore", direction: "descending" }] : [];
474
+ const matches = [];
475
+ for (const document of storedDocuments.values()) {
476
+ if (document.isDeleted) {
477
+ continue;
478
+ }
479
+ let textScore;
480
+ if (query?.text) {
481
+ textScore = computeMockTextScore(document, query.text);
482
+ if (textScore === void 0) {
483
+ continue;
484
+ }
485
+ }
486
+ const context = {
487
+ doc: document.data,
488
+ values: {},
489
+ origin: databaseId,
490
+ variables: {}
491
+ };
492
+ if (filter && !mockExpressionToBoolean(evaluateExpression(filter, context))) {
493
+ continue;
494
+ }
495
+ const sortValues = sortBy.map((key) => {
496
+ if (key.special === "textScore") {
497
+ return textScore ?? 0;
498
+ }
499
+ return key.expression ? evaluateExpression(key.expression, context) : getFieldValue(document.data, key.field ?? "");
500
+ });
501
+ matches.push({ document, sortValues, textScore });
502
+ }
503
+ if (sortBy.length > 0) {
504
+ matches.sort((left, right) => {
505
+ for (let i = 0; i < sortBy.length; i++) {
506
+ const result = compareMockQueryValues(
507
+ left.sortValues[i],
508
+ right.sortValues[i]
509
+ );
510
+ if (result !== 0) {
511
+ return sortBy[i].direction === "descending" ? -result : result;
512
+ }
513
+ }
514
+ return left.document.id.localeCompare(right.document.id);
515
+ });
516
+ } else {
517
+ matches.sort((left, right) => left.document.id.localeCompare(right.document.id));
518
+ }
519
+ const offset = Math.max(0, query?.offset ?? 0);
520
+ const limit = Math.max(1, query?.limit ?? 200);
521
+ const rows = matches.slice(offset, offset + limit).map(({ document, textScore }) => ({
522
+ docId: document.id,
523
+ fields: query?.fields ? Object.fromEntries(
524
+ query.fields.map((field) => [
525
+ field,
526
+ getFieldValue(document.data, field)
527
+ ])
528
+ ) : structuredClone(document.data),
529
+ lastModified: document.updatedAt ? Date.parse(document.updatedAt) || 0 : 0,
530
+ ...textScore === void 0 ? {} : { textScore }
531
+ }));
532
+ return { rows, total: matches.length, coverage: "full" };
533
+ }
4182
534
  function createDefaultViewNavigator() {
4183
535
  const definition = {
4184
536
  title: "Mock View",
@@ -4209,6 +561,10 @@ function createDefaultViewNavigator() {
4209
561
  async refresh() {
4210
562
  return viewCursor;
4211
563
  },
564
+ onDidUpdate(_listener) {
565
+ return () => {
566
+ };
567
+ },
4212
568
  async getCurrentEntry() {
4213
569
  return null;
4214
570
  },
@@ -4388,7 +744,56 @@ function createDatabaseHandle(definition) {
4388
744
  let changeCounter = 0;
4389
745
  const defaultViewFactory = async () => createDefaultViewNavigator();
4390
746
  const storedDocuments = /* @__PURE__ */ new Map();
747
+ const liveQuerySubscriptions = /* @__PURE__ */ new Set();
748
+ const notifyLiveQueries = () => {
749
+ for (const subscription of liveQuerySubscriptions) {
750
+ const result = runMockDocumentQuery(
751
+ storedDocuments,
752
+ definition.info.id,
753
+ subscription.query
754
+ );
755
+ const resultJson = JSON.stringify(result);
756
+ if (resultJson !== subscription.lastResultJson) {
757
+ subscription.lastResultJson = resultJson;
758
+ subscription.onResult(result);
759
+ }
760
+ }
761
+ };
4391
762
  const defaultDocuments = {
763
+ async query(query) {
764
+ return runMockDocumentQuery(storedDocuments, definition.info.id, query);
765
+ },
766
+ async liveQuery(query, onResult) {
767
+ const initial = runMockDocumentQuery(
768
+ storedDocuments,
769
+ definition.info.id,
770
+ query
771
+ );
772
+ const subscription = {
773
+ query,
774
+ onResult,
775
+ lastResultJson: JSON.stringify(initial)
776
+ };
777
+ liveQuerySubscriptions.add(subscription);
778
+ onResult(initial);
779
+ return {
780
+ refresh: async () => {
781
+ if (!liveQuerySubscriptions.has(subscription)) {
782
+ return;
783
+ }
784
+ const result = runMockDocumentQuery(
785
+ storedDocuments,
786
+ definition.info.id,
787
+ query
788
+ );
789
+ subscription.lastResultJson = JSON.stringify(result);
790
+ onResult(result);
791
+ },
792
+ dispose: async () => {
793
+ liveQuerySubscriptions.delete(subscription);
794
+ }
795
+ };
796
+ },
4392
797
  async list(query) {
4393
798
  const status = query?.status ?? "existing";
4394
799
  const skip = Math.max(0, query?.skip ?? 0);
@@ -4463,8 +868,8 @@ function createDatabaseHandle(definition) {
4463
868
  }
4464
869
  const automergeDoc = loadMockAutomergeDocument(document);
4465
870
  return {
4466
- binary: save(automergeDoc),
4467
- heads: getHeads(automergeDoc)
871
+ binary: Automerge.save(automergeDoc),
872
+ heads: Automerge.getHeads(automergeDoc)
4468
873
  };
4469
874
  },
4470
875
  async applyAutomergeChanges(docId, patch) {
@@ -4473,7 +878,7 @@ function createDatabaseHandle(definition) {
4473
878
  throw new Error(`Document ${docId} was not found.`);
4474
879
  }
4475
880
  const currentDoc = loadMockAutomergeDocument(document);
4476
- const [mergedDoc] = applyChanges(
881
+ const [mergedDoc] = Automerge.applyChanges(
4477
882
  currentDoc,
4478
883
  patch.changes.map((change) => new Uint8Array(change))
4479
884
  );
@@ -4482,7 +887,7 @@ function createDatabaseHandle(definition) {
4482
887
  const mergedHeads = document.heads ? [...document.heads] : [];
4483
888
  let changesSince;
4484
889
  if (patch.replicaHeads?.length) {
4485
- const missingChanges = getChangesSince(
890
+ const missingChanges = Automerge.getChangesSince(
4486
891
  mergedDoc,
4487
892
  patch.replicaHeads
4488
893
  );
@@ -4512,6 +917,7 @@ function createDatabaseHandle(definition) {
4512
917
  existing.isDeleted = false;
4513
918
  existing.updatedAt = (/* @__PURE__ */ new Date()).toISOString();
4514
919
  existing.heads = [`mock-head-${++changeCounter}`];
920
+ notifyLiveQueries();
4515
921
  }
4516
922
  return {
4517
923
  id: existing.id,
@@ -4543,10 +949,19 @@ function createDatabaseHandle(definition) {
4543
949
  attachments: [],
4544
950
  isDeleted: false
4545
951
  });
952
+ notifyLiveQueries();
4546
953
  return {
4547
954
  ...created
4548
955
  };
4549
956
  },
957
+ async createMany(inputs) {
958
+ const ids = [];
959
+ for (const input of inputs) {
960
+ const created = await defaultDocuments.create(input);
961
+ ids.push(created.id);
962
+ }
963
+ return { ids };
964
+ },
4550
965
  async update(docId, patch) {
4551
966
  const updatedAt = (/* @__PURE__ */ new Date()).toISOString();
4552
967
  const existing = storedDocuments.get(docId);
@@ -4564,6 +979,7 @@ function createDatabaseHandle(definition) {
4564
979
  isDeleted: false,
4565
980
  automergeBinary: void 0
4566
981
  });
982
+ notifyLiveQueries();
4567
983
  return updated;
4568
984
  },
4569
985
  async delete(_docId) {
@@ -4574,6 +990,13 @@ function createDatabaseHandle(definition) {
4574
990
  isDeleted: true,
4575
991
  updatedAt: (/* @__PURE__ */ new Date()).toISOString()
4576
992
  });
993
+ notifyLiveQueries();
994
+ }
995
+ return { ok: true };
996
+ },
997
+ async deleteMany(docIds) {
998
+ for (const docId of docIds) {
999
+ await defaultDocuments.delete(docId);
4577
1000
  }
4578
1001
  return { ok: true };
4579
1002
  },
@@ -4586,9 +1009,25 @@ function createDatabaseHandle(definition) {
4586
1009
  heads: [`mock-head-${++changeCounter}`],
4587
1010
  updatedAt: (/* @__PURE__ */ new Date()).toISOString()
4588
1011
  });
1012
+ notifyLiveQueries();
4589
1013
  }
4590
1014
  return { ok: true };
4591
1015
  },
1016
+ async canCreate() {
1017
+ return { allowed: true, reason: "allowed (test host)", tier: "tier1" };
1018
+ },
1019
+ async canChange(_docId) {
1020
+ return { allowed: true, reason: "allowed (test host)", tier: "tier1" };
1021
+ },
1022
+ async canDelete(_docId) {
1023
+ return { allowed: true, reason: "allowed (test host)", tier: "tier1" };
1024
+ },
1025
+ async canUndelete(_docId) {
1026
+ return { allowed: true, reason: "allowed (test host)", tier: "tier1" };
1027
+ },
1028
+ async getDefaultCreateKeyId() {
1029
+ return "default";
1030
+ },
4592
1031
  async listHistory(_docId) {
4593
1032
  return [];
4594
1033
  },
@@ -4656,6 +1095,8 @@ function createDatabaseHandle(definition) {
4656
1095
  }
4657
1096
  };
4658
1097
  const methods = definition.methods ?? {};
1098
+ let fulltextSetup = definition.fulltextSetup ?? null;
1099
+ let extractionSetup = definition.extractionSetup ?? null;
4659
1100
  return {
4660
1101
  async info() {
4661
1102
  return {
@@ -4670,6 +1111,18 @@ function createDatabaseHandle(definition) {
4670
1111
  attachments: {
4671
1112
  ...defaultAttachments,
4672
1113
  ...methods.attachments
1114
+ },
1115
+ async getFulltextSetup() {
1116
+ return fulltextSetup === null ? null : { ...fulltextSetup };
1117
+ },
1118
+ async setFulltextSetup(config) {
1119
+ fulltextSetup = config === null ? null : { ...config };
1120
+ },
1121
+ async getExtractionSetup() {
1122
+ return extractionSetup === null ? null : { ...extractionSetup };
1123
+ },
1124
+ async setExtractionSetup(config) {
1125
+ extractionSetup = config === null ? null : { ...config };
4673
1126
  }
4674
1127
  };
4675
1128
  }
@@ -4678,6 +1131,7 @@ function createMockSessionState(options = {}) {
4678
1131
  const themeListeners = /* @__PURE__ */ new Set();
4679
1132
  const viewportListeners = /* @__PURE__ */ new Set();
4680
1133
  const uiPreferencesListeners = /* @__PURE__ */ new Set();
1134
+ const localeListeners = /* @__PURE__ */ new Set();
4681
1135
  const databaseHandles = /* @__PURE__ */ new Map();
4682
1136
  const databaseViewApis = /* @__PURE__ */ new Map();
4683
1137
  const sessionViews = /* @__PURE__ */ new Map();
@@ -4731,6 +1185,9 @@ function createMockSessionState(options = {}) {
4731
1185
  async getLaunchContext() {
4732
1186
  return mergeLaunchContext(launchContext);
4733
1187
  },
1188
+ async getLicensedProducts() {
1189
+ return [...launchContext.licensedProducts ?? []];
1190
+ },
4734
1191
  async listDatabases() {
4735
1192
  return databaseInfos.map((entry) => ({
4736
1193
  ...entry,
@@ -4757,13 +1214,13 @@ function createMockSessionState(options = {}) {
4757
1214
  "At least one test database is required for view creation."
4758
1215
  );
4759
1216
  }
4760
- const api2 = databaseViewApis.get(firstDatabaseId);
4761
- if (!api2) {
1217
+ const api = databaseViewApis.get(firstDatabaseId);
1218
+ if (!api) {
4762
1219
  throw new Error(
4763
1220
  `Unknown test database for view creation: ${firstDatabaseId}`
4764
1221
  );
4765
1222
  }
4766
- const view = await api2.create(input);
1223
+ const view = await api.create(input);
4767
1224
  const viewId = input.definition.id || crypto.randomUUID();
4768
1225
  sessionViews.set(viewId, view);
4769
1226
  return view;
@@ -4779,13 +1236,13 @@ function createMockSessionState(options = {}) {
4779
1236
  if (!sourceDatabaseId) {
4780
1237
  throw new Error(`Unknown test view: ${viewId}`);
4781
1238
  }
4782
- const api2 = databaseViewApis.get(sourceDatabaseId);
4783
- if (!api2) {
1239
+ const api = databaseViewApis.get(sourceDatabaseId);
1240
+ if (!api) {
4784
1241
  throw new Error(
4785
1242
  `Unknown test database for view ${viewId}: ${sourceDatabaseId}`
4786
1243
  );
4787
1244
  }
4788
- const view = await api2.open(viewId, options2);
1245
+ const view = await api.open(viewId, options2);
4789
1246
  sessionViews.set(viewId, view);
4790
1247
  return view;
4791
1248
  },
@@ -4808,6 +1265,12 @@ function createMockSessionState(options = {}) {
4808
1265
  uiPreferencesListeners.delete(listener);
4809
1266
  };
4810
1267
  },
1268
+ onLocaleChange(listener) {
1269
+ localeListeners.add(listener);
1270
+ return () => {
1271
+ localeListeners.delete(listener);
1272
+ };
1273
+ },
4811
1274
  async disconnect() {
4812
1275
  await options.onDisconnect?.();
4813
1276
  }
@@ -4839,6 +1302,9 @@ function createMockSessionState(options = {}) {
4839
1302
  }
4840
1303
  return database;
4841
1304
  },
1305
+ getLicensedProducts() {
1306
+ return [...launchContext.licensedProducts ?? []];
1307
+ },
4842
1308
  createViewNavigator: session.createViewNavigator,
4843
1309
  openViewNavigator: session.openViewNavigator,
4844
1310
  bridge,
@@ -4858,6 +1324,10 @@ function createMockSessionState(options = {}) {
4858
1324
  uiPreferencesListeners.forEach(
4859
1325
  (listener) => listener({ ...launchContext.uiPreferences })
4860
1326
  );
1327
+ },
1328
+ emitLocaleChange(locale) {
1329
+ launchContext = mergeLaunchContext(launchContext, { locale });
1330
+ localeListeners.forEach((listener) => listener(launchContext.locale));
4861
1331
  }
4862
1332
  };
4863
1333
  }
@@ -4868,11 +1338,13 @@ function createMockMindooDBAppSession(options = {}) {
4868
1338
  session: state.session,
4869
1339
  getLaunchContext: state.getLaunchContext,
4870
1340
  setLaunchContext: state.setLaunchContext,
1341
+ getLicensedProducts: state.getLicensedProducts,
4871
1342
  listDatabases: state.listDatabaseInfos,
4872
1343
  setDatabases: state.setDatabases,
4873
1344
  emitThemeChange: state.emitThemeChange,
4874
1345
  emitViewportChange: state.emitViewportChange,
4875
- emitUiPreferencesChange: state.emitUiPreferencesChange
1346
+ emitUiPreferencesChange: state.emitUiPreferencesChange,
1347
+ emitLocaleChange: state.emitLocaleChange
4876
1348
  };
4877
1349
  }
4878
1350
  function createMockMindooDBAppBridge(options = {}) {
@@ -4888,8 +1360,10 @@ function createFakeBridgeHost(options = {}) {
4888
1360
  const viewSessions = /* @__PURE__ */ new Map();
4889
1361
  const readStreams = /* @__PURE__ */ new Map();
4890
1362
  const writeStreams = /* @__PURE__ */ new Map();
1363
+ const liveQueries = /* @__PURE__ */ new Map();
4891
1364
  let viewCounter = 0;
4892
1365
  let streamCounter = 0;
1366
+ let liveQueryCounter = 0;
4893
1367
  let previousWindowDescriptor = Object.getOwnPropertyDescriptor(
4894
1368
  globalThis,
4895
1369
  "window"
@@ -5034,6 +1508,8 @@ function createFakeBridgeHost(options = {}) {
5034
1508
  switch (request.method) {
5035
1509
  case "session.getLaunchContext":
5036
1510
  return state.getLaunchContext();
1511
+ case "session.getLicensedProducts":
1512
+ return state.getLicensedProducts();
5037
1513
  case "session.listDatabases":
5038
1514
  return state.listDatabaseInfos();
5039
1515
  case "session.openDatabase":
@@ -5075,6 +1551,62 @@ function createFakeBridgeHost(options = {}) {
5075
1551
  );
5076
1552
  case "documents.getHeadCursor":
5077
1553
  return await state.getDatabase(String(params.databaseId)).documents.getHeadCursor();
1554
+ case "database.getFulltextSetup":
1555
+ return {
1556
+ config: await state.getDatabase(String(params.databaseId)).getFulltextSetup()
1557
+ };
1558
+ case "database.setFulltextSetup":
1559
+ await state.getDatabase(String(params.databaseId)).setFulltextSetup(
1560
+ params.config ?? null
1561
+ );
1562
+ return { ok: true };
1563
+ case "database.getExtractionSetup":
1564
+ return {
1565
+ config: await state.getDatabase(String(params.databaseId)).getExtractionSetup()
1566
+ };
1567
+ case "database.setExtractionSetup":
1568
+ await state.getDatabase(String(params.databaseId)).setExtractionSetup(
1569
+ params.config ?? null
1570
+ );
1571
+ return { ok: true };
1572
+ case "documents.query":
1573
+ return await state.getDatabase(String(params.databaseId)).documents.query(
1574
+ params.query
1575
+ );
1576
+ case "documents.liveQuery.subscribe": {
1577
+ const subscriptionId = `live-query-${liveQueryCounter += 1}`;
1578
+ let initialResult = null;
1579
+ let initialDelivered = false;
1580
+ const handle = await state.getDatabase(String(params.databaseId)).documents.liveQuery(
1581
+ params.query,
1582
+ (result) => {
1583
+ if (!initialDelivered) {
1584
+ initialDelivered = true;
1585
+ initialResult = result;
1586
+ return;
1587
+ }
1588
+ const payload = {
1589
+ protocol: PROTOCOL,
1590
+ kind: "query-result",
1591
+ subscriptionId,
1592
+ result
1593
+ };
1594
+ connectedPorts.forEach((port) => port.postMessage(payload));
1595
+ }
1596
+ );
1597
+ liveQueries.set(subscriptionId, handle);
1598
+ return { subscriptionId, result: initialResult };
1599
+ }
1600
+ case "documents.liveQuery.refresh": {
1601
+ await liveQueries.get(String(params.subscriptionId))?.refresh();
1602
+ return { ok: true };
1603
+ }
1604
+ case "documents.liveQuery.unsubscribe": {
1605
+ const key = String(params.subscriptionId);
1606
+ await liveQueries.get(key)?.dispose();
1607
+ liveQueries.delete(key);
1608
+ return { ok: true };
1609
+ }
5078
1610
  case "documents.get":
5079
1611
  return await state.getDatabase(String(params.databaseId)).documents.get(String(params.docId));
5080
1612
  case "documents.richText.get":
@@ -5105,6 +1637,18 @@ function createFakeBridgeHost(options = {}) {
5105
1637
  return await state.getDatabase(String(params.databaseId)).documents.delete(String(params.docId));
5106
1638
  case "documents.undelete":
5107
1639
  return await state.getDatabase(String(params.databaseId)).documents.undelete(String(params.docId));
1640
+ case "documents.canCreate":
1641
+ return await state.getDatabase(String(params.databaseId)).documents.canCreate(
1642
+ params.input
1643
+ );
1644
+ case "documents.canChange":
1645
+ return await state.getDatabase(String(params.databaseId)).documents.canChange(String(params.docId));
1646
+ case "documents.canDelete":
1647
+ return await state.getDatabase(String(params.databaseId)).documents.canDelete(String(params.docId));
1648
+ case "documents.canUndelete":
1649
+ return await state.getDatabase(String(params.databaseId)).documents.canUndelete(String(params.docId));
1650
+ case "documents.getDefaultCreateKeyId":
1651
+ return await state.getDatabase(String(params.databaseId)).documents.getDefaultCreateKeyId();
5108
1652
  case "documents.history.list":
5109
1653
  return await state.getDatabase(String(params.databaseId)).documents.listHistory(String(params.docId));
5110
1654
  case "documents.history.getAtTimestamp":
@@ -5436,6 +1980,10 @@ function createFakeBridgeHost(options = {}) {
5436
1980
  viewSessions.clear();
5437
1981
  readStreams.clear();
5438
1982
  writeStreams.clear();
1983
+ liveQueries.forEach((handle) => {
1984
+ void handle.dispose();
1985
+ });
1986
+ liveQueries.clear();
5439
1987
  },
5440
1988
  emitThemeChange(theme) {
5441
1989
  state.emitThemeChange(theme);
@@ -5464,6 +2012,33 @@ function createFakeBridgeHost(options = {}) {
5464
2012
  };
5465
2013
  connectedPorts.forEach((port) => port.postMessage(payload));
5466
2014
  },
2015
+ emitLocaleChange(locale) {
2016
+ state.emitLocaleChange(locale);
2017
+ const payload = {
2018
+ protocol: PROTOCOL,
2019
+ kind: "locale-changed",
2020
+ locale
2021
+ };
2022
+ connectedPorts.forEach((port) => port.postMessage(payload));
2023
+ },
2024
+ emitQueryResult(subscriptionId, result) {
2025
+ const payload = {
2026
+ protocol: PROTOCOL,
2027
+ kind: "query-result",
2028
+ subscriptionId,
2029
+ result
2030
+ };
2031
+ connectedPorts.forEach((port) => port.postMessage(payload));
2032
+ },
2033
+ emitViewChanged(navigatorId, stats) {
2034
+ const payload = {
2035
+ protocol: PROTOCOL,
2036
+ kind: "view-changed",
2037
+ navigatorId,
2038
+ stats
2039
+ };
2040
+ connectedPorts.forEach((port) => port.postMessage(payload));
2041
+ },
5467
2042
  postPortMessage(message, transfer = []) {
5468
2043
  connectedPorts.forEach((port) => port.postMessage(message, transfer));
5469
2044
  },