@verdant-web/common 1.11.1 → 1.13.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (76) hide show
  1. package/dist/cjs/migration.d.ts +7 -0
  2. package/dist/cjs/migration.js +46 -6
  3. package/dist/cjs/migration.js.map +1 -1
  4. package/dist/cjs/oids.d.ts +5 -5
  5. package/dist/cjs/oids.js +37 -22
  6. package/dist/cjs/oids.js.map +1 -1
  7. package/dist/cjs/oids.test.js +62 -44
  8. package/dist/cjs/oids.test.js.map +1 -1
  9. package/dist/cjs/operation.d.ts +2 -2
  10. package/dist/cjs/operation.js +16 -7
  11. package/dist/cjs/operation.js.map +1 -1
  12. package/dist/cjs/operation.test.js +180 -30
  13. package/dist/cjs/operation.test.js.map +1 -1
  14. package/dist/cjs/patch.d.ts +3 -3
  15. package/dist/cjs/patch.js +6 -6
  16. package/dist/cjs/patch.js.map +1 -1
  17. package/dist/cjs/schema/defaults.test.js +4 -4
  18. package/dist/cjs/schema/defaults.test.js.map +1 -1
  19. package/dist/cjs/schema/{defaults.d.ts → fields.d.ts} +3 -0
  20. package/dist/cjs/schema/{defaults.js → fields.js} +48 -3
  21. package/dist/cjs/schema/fields.js.map +1 -0
  22. package/dist/cjs/schema/index.d.ts +1 -1
  23. package/dist/cjs/schema/index.js +1 -1
  24. package/dist/cjs/schema/index.js.map +1 -1
  25. package/dist/cjs/schema/validation.d.ts +3 -0
  26. package/dist/cjs/schema/validation.js +87 -0
  27. package/dist/cjs/schema/validation.js.map +1 -0
  28. package/dist/cjs/utils.d.ts +5 -1
  29. package/dist/cjs/utils.js +9 -5
  30. package/dist/cjs/utils.js.map +1 -1
  31. package/dist/esm/migration.d.ts +7 -0
  32. package/dist/esm/migration.js +47 -7
  33. package/dist/esm/migration.js.map +1 -1
  34. package/dist/esm/oids.d.ts +5 -5
  35. package/dist/esm/oids.js +34 -21
  36. package/dist/esm/oids.js.map +1 -1
  37. package/dist/esm/oids.test.js +62 -44
  38. package/dist/esm/oids.test.js.map +1 -1
  39. package/dist/esm/operation.d.ts +2 -2
  40. package/dist/esm/operation.js +18 -9
  41. package/dist/esm/operation.js.map +1 -1
  42. package/dist/esm/operation.test.js +180 -30
  43. package/dist/esm/operation.test.js.map +1 -1
  44. package/dist/esm/patch.d.ts +3 -3
  45. package/dist/esm/patch.js +6 -6
  46. package/dist/esm/patch.js.map +1 -1
  47. package/dist/esm/schema/defaults.test.js +2 -2
  48. package/dist/esm/schema/defaults.test.js.map +1 -1
  49. package/dist/esm/schema/{defaults.d.ts → fields.d.ts} +3 -0
  50. package/dist/esm/schema/{defaults.js → fields.js} +44 -2
  51. package/dist/esm/schema/fields.js.map +1 -0
  52. package/dist/esm/schema/index.d.ts +1 -1
  53. package/dist/esm/schema/index.js +1 -1
  54. package/dist/esm/schema/index.js.map +1 -1
  55. package/dist/esm/schema/validation.d.ts +3 -0
  56. package/dist/esm/schema/validation.js +82 -0
  57. package/dist/esm/schema/validation.js.map +1 -0
  58. package/dist/esm/utils.d.ts +5 -1
  59. package/dist/esm/utils.js +9 -5
  60. package/dist/esm/utils.js.map +1 -1
  61. package/dist/tsconfig-cjs.tsbuildinfo +1 -1
  62. package/dist/tsconfig.tsbuildinfo +1 -1
  63. package/package.json +1 -1
  64. package/src/migration.ts +74 -15
  65. package/src/oids.test.ts +62 -51
  66. package/src/oids.ts +35 -26
  67. package/src/operation.test.ts +189 -41
  68. package/src/operation.ts +23 -19
  69. package/src/patch.ts +5 -15
  70. package/src/schema/defaults.test.ts +2 -2
  71. package/src/schema/{defaults.ts → fields.ts} +55 -1
  72. package/src/schema/index.ts +1 -1
  73. package/src/schema/validation.ts +99 -0
  74. package/src/utils.ts +9 -5
  75. package/dist/cjs/schema/defaults.js.map +0 -1
  76. package/dist/esm/schema/defaults.js.map +0 -1
@@ -1,6 +1,6 @@
1
1
  import { DocumentBaseline } from './baseline.js';
2
2
  import { FileRef } from './files.js';
3
- import { KeyPath, ObjectIdentifier } from './oids.js';
3
+ import { ObjectIdentifier } from './oids.js';
4
4
  export declare type ObjectRef = {
5
5
  '@@type': 'ref';
6
6
  id: ObjectIdentifier;
@@ -92,7 +92,7 @@ export declare type Operation = {
92
92
  };
93
93
  export declare function diffToPatches<T extends {
94
94
  [key: string]: any;
95
- } | any[]>(from: T, to: T, getNow: () => string, keyPath: KeyPath, createSubId?: () => string, patches?: Operation[], options?: {
95
+ } | any[]>(from: T, to: T, getNow: () => string, createSubId?: () => string, patches?: Operation[], options?: {
96
96
  /**
97
97
  * If an object is merged with another and the new one does not
98
98
  * have an OID assigned, assume it is the same identity as previous
@@ -18,7 +18,7 @@ function compareNonDiffable(a, b) {
18
18
  return (0, refs_js_1.compareRefs)(a, b);
19
19
  return false;
20
20
  }
21
- function diffToPatches(from, to, getNow, keyPath, createSubId, patches = [], options = {}) {
21
+ function diffToPatches(from, to, getNow, createSubId, patches = [], options = {}) {
22
22
  const oid = (0, oids_js_1.getOid)(from);
23
23
  function diffItems(key, value, oldValue) {
24
24
  if (!isDiffableObject(value)) {
@@ -38,22 +38,31 @@ function diffToPatches(from, to, getNow, keyPath, createSubId, patches = [], opt
38
38
  }
39
39
  else {
40
40
  const oldValueOid = (0, oids_js_1.maybeGetOid)(oldValue);
41
- let valueOid;
42
- if (!options.mergeUnknownObjects) {
43
- valueOid = (0, oids_js_1.ensureOid)(value, oid, key, createSubId);
41
+ let valueOid = (0, oids_js_1.maybeGetOid)(value);
42
+ // the user supplied an object which was already assigned an OID,
43
+ // but that OID is from a separate entity: this object must
44
+ // be cloned to a new identity.
45
+ if (valueOid && !(0, oids_js_1.areOidsRelated)(oid, valueOid)) {
46
+ value = (0, utils_js_1.cloneDeep)(value, false);
47
+ valueOid = (0, oids_js_1.createSubOid)(oid, createSubId);
48
+ (0, oids_js_1.assignOid)(value, valueOid);
49
+ }
50
+ else if (!options.mergeUnknownObjects) {
51
+ valueOid = (0, oids_js_1.ensureOid)(value, oid, createSubId);
44
52
  }
45
53
  else {
46
54
  // if merge unknown objects is requested, we copy the previous value's oid
47
55
  // to any mirrored new value if it doesn't have one assigned already.
48
- valueOid = (0, oids_js_1.maybeGetOid)(value);
49
56
  if (!valueOid && oldValueOid) {
50
57
  (0, oids_js_1.assignOid)(value, oldValueOid);
51
58
  valueOid = oldValueOid;
52
59
  }
53
60
  else {
54
- valueOid = (0, oids_js_1.ensureOid)(value, oid, key, createSubId);
61
+ valueOid = (0, oids_js_1.ensureOid)(value, oid, createSubId);
55
62
  }
56
63
  }
64
+ (0, utils_js_1.assert)(!!valueOid, 'Error: no value OID was resolved during diff. This is a bug in Verdant.');
65
+ (0, utils_js_1.assert)((0, oids_js_1.areOidsRelated)(oid, valueOid), `Error: value OID ${valueOid} is not related to parent OID ${oid}. This is a bug in Verdant.`);
57
66
  if (oldValue === undefined || valueOid !== oldValueOid) {
58
67
  // first case: previous value exists but the OIDs are different,
59
68
  // meaning the object identity has changed
@@ -83,7 +92,7 @@ function diffToPatches(from, to, getNow, keyPath, createSubId, patches = [], opt
83
92
  else {
84
93
  // third case: OIDs are the same, meaning the identity is the same,
85
94
  // and we must diff the objects
86
- diffToPatches(oldValue, value, getNow, [...keyPath, key], createSubId, patches, options);
95
+ diffToPatches(oldValue, value, getNow, createSubId, patches, options);
87
96
  }
88
97
  }
89
98
  }
@@ -1 +1 @@
1
- {"version":3,"file":"operation.js","sourceRoot":"","sources":["../../src/operation.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"operation.js","sourceRoot":"","sources":["../../src/operation.ts"],"names":[],"mappings":"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"}
@@ -6,7 +6,13 @@ const oids_js_1 = require("./oids.js");
6
6
  const operation_js_1 = require("./operation.js");
7
7
  function createClock(init = 0) {
8
8
  let i = init;
9
- return () => (i++).toString();
9
+ const clock = () => (i++).toString();
10
+ Object.defineProperty(clock, 'current', {
11
+ get() {
12
+ return i;
13
+ },
14
+ });
15
+ return clock;
10
16
  }
11
17
  (0, vitest_1.describe)('creating diff patch operations', () => {
12
18
  (0, vitest_1.describe)('on flat objects', () => {
@@ -15,7 +21,7 @@ function createClock(init = 0) {
15
21
  (0, oids_js_1.assignOid)(from, 'test/a');
16
22
  const to = { foo: 'bar', baz: 'pop' };
17
23
  (0, oids_js_1.assignOid)(to, 'test/a');
18
- const ops = (0, operation_js_1.diffToPatches)(from, to, createClock(), []);
24
+ const ops = (0, operation_js_1.diffToPatches)(from, to, createClock());
19
25
  (0, vitest_1.expect)(ops).toMatchInlineSnapshot(`
20
26
  [
21
27
  {
@@ -51,7 +57,7 @@ function createClock(init = 0) {
51
57
  foo: 'bar',
52
58
  baz: (0, oids_js_1.assignOid)({ qux: 'grault' }, 'test/a:1'),
53
59
  }, 'test/a');
54
- const patches = (0, operation_js_1.diffToPatches)(from, to, createClock(), []);
60
+ const patches = (0, operation_js_1.diffToPatches)(from, to, createClock());
55
61
  (0, vitest_1.expect)(patches).toMatchInlineSnapshot(`
56
62
  [
57
63
  {
@@ -99,7 +105,7 @@ function createClock(init = 0) {
99
105
  };
100
106
  (0, oids_js_1.assignOid)(to, 'test/a');
101
107
  (0, oids_js_1.assignOid)(to.baz, 'test/a:1');
102
- const patches = (0, operation_js_1.diffToPatches)(from, to, createClock(), []);
108
+ const patches = (0, operation_js_1.diffToPatches)(from, to, createClock());
103
109
  (0, vitest_1.expect)(patches).toMatchInlineSnapshot(`
104
110
  [
105
111
  {
@@ -147,7 +153,7 @@ function createClock(init = 0) {
147
153
  };
148
154
  (0, oids_js_1.assignOid)(to, 'test/a');
149
155
  (0, oids_js_1.assignOid)(to.baz, 'test/a:0');
150
- const patches = (0, operation_js_1.diffToPatches)(from, to, createClock(), []);
156
+ const patches = (0, operation_js_1.diffToPatches)(from, to, createClock());
151
157
  (0, vitest_1.expect)(patches).toEqual([]);
152
158
  });
153
159
  (0, vitest_1.it)('patches sub-objects with same identity', () => {
@@ -163,7 +169,7 @@ function createClock(init = 0) {
163
169
  };
164
170
  (0, oids_js_1.assignOid)(to, 'test/a');
165
171
  (0, oids_js_1.assignOid)(to.baz, 'test/a:0');
166
- const patches = (0, operation_js_1.diffToPatches)(from, to, createClock(), []);
172
+ const patches = (0, operation_js_1.diffToPatches)(from, to, createClock());
167
173
  (0, vitest_1.expect)(patches).toMatchInlineSnapshot(`
168
174
  [
169
175
  {
@@ -189,7 +195,7 @@ function createClock(init = 0) {
189
195
  foo: 'bip',
190
196
  };
191
197
  (0, oids_js_1.assignOid)(to, 'test/a');
192
- const patches = (0, operation_js_1.diffToPatches)(from, to, createClock(), [], undefined, [], {
198
+ const patches = (0, operation_js_1.diffToPatches)(from, to, createClock(), undefined, [], {
193
199
  defaultUndefined: true,
194
200
  mergeUnknownObjects: true,
195
201
  });
@@ -273,7 +279,7 @@ function createClock(init = 0) {
273
279
  (0, oids_js_1.assignOid)(to.baz, 'test/a:3');
274
280
  (0, oids_js_1.assignOid)(to.baz[0], 'test/a:4');
275
281
  (0, oids_js_1.assignOid)(to.baz[1], 'test/a:5');
276
- (0, vitest_1.expect)((0, operation_js_1.diffToPatches)(from, to, createClock(), [])).toMatchInlineSnapshot(`
282
+ (0, vitest_1.expect)((0, operation_js_1.diffToPatches)(from, to, createClock())).toMatchInlineSnapshot(`
277
283
  [
278
284
  {
279
285
  "data": {
@@ -367,7 +373,7 @@ function createClock(init = 0) {
367
373
  },
368
374
  ],
369
375
  };
370
- (0, vitest_1.expect)((0, operation_js_1.diffToPatches)(from, to, createClock(), [], createClock(5), [], {
376
+ (0, vitest_1.expect)((0, operation_js_1.diffToPatches)(from, to, createClock(), createClock(5), [], {
371
377
  mergeUnknownObjects: true,
372
378
  })).toMatchInlineSnapshot(`
373
379
  [
@@ -377,7 +383,7 @@ function createClock(init = 0) {
377
383
  "index": 2,
378
384
  "op": "list-delete",
379
385
  },
380
- "oid": "test/a.foo.bar:1",
386
+ "oid": "test/a:1",
381
387
  "timestamp": "0",
382
388
  },
383
389
  {
@@ -387,7 +393,7 @@ function createClock(init = 0) {
387
393
  0,
388
394
  ],
389
395
  },
390
- "oid": "test/a.foo.bop:5",
396
+ "oid": "test/a:5",
391
397
  "timestamp": "1",
392
398
  },
393
399
  {
@@ -396,10 +402,10 @@ function createClock(init = 0) {
396
402
  "op": "set",
397
403
  "value": {
398
404
  "@@type": "ref",
399
- "id": "test/a.foo.bop:5",
405
+ "id": "test/a:5",
400
406
  },
401
407
  },
402
- "oid": "test/a.foo:0",
408
+ "oid": "test/a:0",
403
409
  "timestamp": "2",
404
410
  },
405
411
  {
@@ -408,7 +414,7 @@ function createClock(init = 0) {
408
414
  "op": "set",
409
415
  "value": false,
410
416
  },
411
- "oid": "test/a.baz.#:3",
417
+ "oid": "test/a:3",
412
418
  "timestamp": "3",
413
419
  },
414
420
  {
@@ -418,7 +424,7 @@ function createClock(init = 0) {
418
424
  "corge": false,
419
425
  },
420
426
  },
421
- "oid": "test/a.baz.#:6",
427
+ "oid": "test/a:6",
422
428
  "timestamp": "4",
423
429
  },
424
430
  {
@@ -427,10 +433,10 @@ function createClock(init = 0) {
427
433
  "op": "set",
428
434
  "value": {
429
435
  "@@type": "ref",
430
- "id": "test/a.baz.#:6",
436
+ "id": "test/a:6",
431
437
  },
432
438
  },
433
- "oid": "test/a.baz:2",
439
+ "oid": "test/a:2",
434
440
  "timestamp": "5",
435
441
  },
436
442
  ]
@@ -451,7 +457,7 @@ function createClock(init = 0) {
451
457
  },
452
458
  bar: [(0, files_js_1.createFileRef)('def456')],
453
459
  };
454
- (0, vitest_1.expect)((0, operation_js_1.diffToPatches)(from, to, createClock(), [], createClock(5), [], {
460
+ (0, vitest_1.expect)((0, operation_js_1.diffToPatches)(from, to, createClock(), createClock(5), [], {
455
461
  mergeUnknownObjects: true,
456
462
  })).toMatchInlineSnapshot(`
457
463
  [
@@ -464,7 +470,7 @@ function createClock(init = 0) {
464
470
  "id": "abc456",
465
471
  },
466
472
  },
467
- "oid": "test/a.foo:0",
473
+ "oid": "test/a:0",
468
474
  "timestamp": "0",
469
475
  },
470
476
  {
@@ -473,9 +479,153 @@ function createClock(init = 0) {
473
479
  "index": 1,
474
480
  "op": "list-delete",
475
481
  },
476
- "oid": "test/a.bar:1",
482
+ "oid": "test/a:1",
483
+ "timestamp": "1",
484
+ },
485
+ ]
486
+ `);
487
+ });
488
+ (0, vitest_1.it)('should assign a new OID to objects which had an incompatible existing OID', () => {
489
+ const from = {
490
+ foo: {
491
+ bar: [1, 2, 3],
492
+ },
493
+ };
494
+ (0, oids_js_1.assignOid)(from, 'test/a');
495
+ (0, oids_js_1.assignOidsToAllSubObjects)(from, createClock());
496
+ const to = {
497
+ foo: {
498
+ bar: [1, 2],
499
+ },
500
+ };
501
+ (0, oids_js_1.assignOid)(to, 'test/a');
502
+ (0, oids_js_1.assignOid)(to.foo, 'uff/b');
503
+ (0, oids_js_1.assignOidsToAllSubObjects)(to.foo, createClock());
504
+ (0, vitest_1.expect)((0, operation_js_1.diffToPatches)(from, to, createClock(), createClock(5), [], {
505
+ mergeUnknownObjects: true,
506
+ })).toMatchInlineSnapshot(`
507
+ [
508
+ {
509
+ "data": {
510
+ "op": "initialize",
511
+ "value": [
512
+ 1,
513
+ 2,
514
+ ],
515
+ },
516
+ "oid": "test/a:6",
517
+ "timestamp": "0",
518
+ },
519
+ {
520
+ "data": {
521
+ "op": "initialize",
522
+ "value": {
523
+ "bar": {
524
+ "@@type": "ref",
525
+ "id": "test/a:6",
526
+ },
527
+ },
528
+ },
529
+ "oid": "test/a:5",
477
530
  "timestamp": "1",
478
531
  },
532
+ {
533
+ "data": {
534
+ "name": "foo",
535
+ "op": "set",
536
+ "value": {
537
+ "@@type": "ref",
538
+ "id": "test/a:5",
539
+ },
540
+ },
541
+ "oid": "test/a",
542
+ "timestamp": "2",
543
+ },
544
+ {
545
+ "data": {
546
+ "op": "delete",
547
+ },
548
+ "oid": "test/a:0",
549
+ "timestamp": "3",
550
+ },
551
+ ]
552
+ `);
553
+ });
554
+ // an edge case - if a subobject which contains nested objects changes identity,
555
+ // this gets written as a new init patch tree - we want to ensure all init subobjects
556
+ // in that tree have compatible OIDs.
557
+ (0, vitest_1.it)('should assign a new OID to objects which have an incompatible OID when parent identity changes', () => {
558
+ const from = {
559
+ bar: [],
560
+ };
561
+ (0, oids_js_1.assignOid)(from, 'test/a');
562
+ (0, oids_js_1.assignOid)(from.bar, 'test/random');
563
+ const to = {
564
+ bar: [{ baz: 1 }, { baz: 2 }],
565
+ };
566
+ (0, oids_js_1.assignOid)(to, 'test/a');
567
+ (0, oids_js_1.assignOidsToAllSubObjects)(to, createClock());
568
+ (0, oids_js_1.assignOid)(to.bar[0], 'uff/b');
569
+ (0, vitest_1.expect)((0, operation_js_1.diffToPatches)(from, to, createClock(), createClock(5), [], {
570
+ mergeUnknownObjects: true,
571
+ })).toMatchInlineSnapshot(`
572
+ [
573
+ {
574
+ "data": {
575
+ "op": "initialize",
576
+ "value": {
577
+ "baz": 1,
578
+ },
579
+ },
580
+ "oid": "test/a:5",
581
+ "timestamp": "0",
582
+ },
583
+ {
584
+ "data": {
585
+ "op": "initialize",
586
+ "value": {
587
+ "baz": 2,
588
+ },
589
+ },
590
+ "oid": "test/a:2",
591
+ "timestamp": "1",
592
+ },
593
+ {
594
+ "data": {
595
+ "op": "initialize",
596
+ "value": [
597
+ {
598
+ "@@type": "ref",
599
+ "id": "test/a:5",
600
+ },
601
+ {
602
+ "@@type": "ref",
603
+ "id": "test/a:2",
604
+ },
605
+ ],
606
+ },
607
+ "oid": "test/a:0",
608
+ "timestamp": "2",
609
+ },
610
+ {
611
+ "data": {
612
+ "name": "bar",
613
+ "op": "set",
614
+ "value": {
615
+ "@@type": "ref",
616
+ "id": "test/a:0",
617
+ },
618
+ },
619
+ "oid": "test/a",
620
+ "timestamp": "3",
621
+ },
622
+ {
623
+ "data": {
624
+ "op": "delete",
625
+ },
626
+ "oid": "test/random",
627
+ "timestamp": "4",
628
+ },
479
629
  ]
480
630
  `);
481
631
  });
@@ -637,7 +787,7 @@ function createClock(init = 0) {
637
787
  "bar": "baz",
638
788
  },
639
789
  },
640
- "oid": "test/a.foo:0",
790
+ "oid": "test/a:0",
641
791
  "timestamp": "0",
642
792
  },
643
793
  {
@@ -647,7 +797,7 @@ function createClock(init = 0) {
647
797
  "corge": "grault",
648
798
  },
649
799
  },
650
- "oid": "test/a.qux.#:2",
800
+ "oid": "test/a:2",
651
801
  "timestamp": "1",
652
802
  },
653
803
  {
@@ -657,7 +807,7 @@ function createClock(init = 0) {
657
807
  "oof": 1,
658
808
  },
659
809
  },
660
- "oid": "test/a.qux.#.bin:4",
810
+ "oid": "test/a:4",
661
811
  "timestamp": "2",
662
812
  },
663
813
  {
@@ -666,11 +816,11 @@ function createClock(init = 0) {
666
816
  "value": {
667
817
  "bin": {
668
818
  "@@type": "ref",
669
- "id": "test/a.qux.#.bin:4",
819
+ "id": "test/a:4",
670
820
  },
671
821
  },
672
822
  },
673
- "oid": "test/a.qux.#:3",
823
+ "oid": "test/a:3",
674
824
  "timestamp": "3",
675
825
  },
676
826
  {
@@ -679,15 +829,15 @@ function createClock(init = 0) {
679
829
  "value": [
680
830
  {
681
831
  "@@type": "ref",
682
- "id": "test/a.qux.#:2",
832
+ "id": "test/a:2",
683
833
  },
684
834
  {
685
835
  "@@type": "ref",
686
- "id": "test/a.qux.#:3",
836
+ "id": "test/a:3",
687
837
  },
688
838
  ],
689
839
  },
690
- "oid": "test/a.qux:1",
840
+ "oid": "test/a:1",
691
841
  "timestamp": "4",
692
842
  },
693
843
  {
@@ -696,11 +846,11 @@ function createClock(init = 0) {
696
846
  "value": {
697
847
  "foo": {
698
848
  "@@type": "ref",
699
- "id": "test/a.foo:0",
849
+ "id": "test/a:0",
700
850
  },
701
851
  "qux": {
702
852
  "@@type": "ref",
703
- "id": "test/a.qux:1",
853
+ "id": "test/a:1",
704
854
  },
705
855
  },
706
856
  },
@@ -1 +1 @@
1
- {"version":3,"file":"operation.test.js","sourceRoot":"","sources":["../../src/operation.test.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"operation.test.js","sourceRoot":"","sources":["../../src/operation.test.ts"],"names":[],"mappings":"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"}
@@ -1,18 +1,18 @@
1
1
  /**
2
2
  * High-level patch creation for use with complex nested objects.
3
3
  */
4
- import { KeyPath, ObjectIdentifier } from './oids.js';
4
+ import { ObjectIdentifier } from './oids.js';
5
5
  import { ObjectRef, Operation, PropertyName } from './operation.js';
6
6
  export declare class PatchCreator {
7
7
  private getNow;
8
8
  private createSubId?;
9
9
  constructor(getNow: () => string, createSubId?: (() => string) | undefined);
10
- createDiff: (from: any, to: any, keyPath: KeyPath, options?: {
10
+ createDiff: (from: any, to: any, options?: {
11
11
  mergeUnknownObjects?: boolean;
12
12
  defaultUndefined?: boolean;
13
13
  }) => Operation[];
14
14
  createInitialize: (obj: any, oid: ObjectIdentifier) => Operation[];
15
- createSet: (oid: ObjectIdentifier, key: PropertyName, value: any, keyPath: KeyPath) => Operation[];
15
+ createSet: (oid: ObjectIdentifier, key: PropertyName, value: any) => Operation[];
16
16
  createRemove: (oid: ObjectIdentifier, key: PropertyName) => Operation[];
17
17
  createListPush: (oid: ObjectIdentifier, value: any) => Operation[];
18
18
  createListAdd: (oid: ObjectIdentifier, value: any) => Operation[];