@verdant-web/store 4.2.0 → 4.4.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/bundle/index.js +9 -7
- package/dist/bundle/index.js.map +4 -4
- package/dist/esm/__tests__/entities.test.js +438 -5
- package/dist/esm/__tests__/entities.test.js.map +1 -1
- package/dist/esm/__tests__/fixtures/testStorage.d.ts +1 -0
- package/dist/esm/__tests__/fixtures/testStorage.js +1 -1
- package/dist/esm/__tests__/fixtures/testStorage.js.map +1 -1
- package/dist/esm/client/Client.js +2 -1
- package/dist/esm/client/Client.js.map +1 -1
- package/dist/esm/entities/Entity.d.ts +22 -3
- package/dist/esm/entities/Entity.js +210 -38
- package/dist/esm/entities/Entity.js.map +1 -1
- package/dist/esm/entities/Entity.test.js +4 -3
- package/dist/esm/entities/Entity.test.js.map +1 -1
- package/dist/esm/entities/EntityCache.d.ts +6 -4
- package/dist/esm/entities/EntityCache.js +18 -7
- package/dist/esm/entities/EntityCache.js.map +1 -1
- package/dist/esm/entities/EntityMetadata.d.ts +8 -2
- package/dist/esm/entities/EntityMetadata.js +52 -4
- package/dist/esm/entities/EntityMetadata.js.map +1 -1
- package/dist/esm/entities/EntityStore.d.ts +4 -4
- package/dist/esm/entities/EntityStore.js +8 -10
- package/dist/esm/entities/EntityStore.js.map +1 -1
- package/dist/esm/entities/OperationBatcher.d.ts +1 -1
- package/dist/esm/entities/OperationBatcher.js +2 -0
- package/dist/esm/entities/OperationBatcher.js.map +1 -1
- package/dist/esm/files/EntityFile.d.ts +6 -1
- package/dist/esm/files/EntityFile.js +11 -4
- package/dist/esm/files/EntityFile.js.map +1 -1
- package/dist/esm/files/FileManager.d.ts +3 -1
- package/dist/esm/files/FileManager.js +2 -2
- package/dist/esm/files/FileManager.js.map +1 -1
- package/dist/esm/utils/versions.js +1 -1
- package/package.json +2 -2
- package/src/__tests__/entities.test.ts +471 -5
- package/src/__tests__/fixtures/testStorage.ts +1 -1
- package/src/client/Client.ts +6 -1
- package/src/entities/Entity.test.ts +8 -7
- package/src/entities/Entity.ts +239 -29
- package/src/entities/EntityCache.ts +20 -10
- package/src/entities/EntityMetadata.ts +69 -9
- package/src/entities/EntityStore.ts +15 -12
- package/src/entities/OperationBatcher.ts +16 -2
- package/src/files/EntityFile.ts +16 -3
- package/src/files/FileManager.ts +7 -3
- package/src/utils/versions.ts +1 -1
|
@@ -1,7 +1,11 @@
|
|
|
1
|
-
import { assert } from '@verdant-web/common';
|
|
2
|
-
import { describe,
|
|
1
|
+
import { assert, createRef, EventSubscriber, FixedTimestampProvider, NaiveTimestampProvider, PatchCreator, schema, } from '@verdant-web/common';
|
|
2
|
+
import { describe, expect, it, vi, vitest } from 'vitest';
|
|
3
|
+
import { WeakEvent } from 'weak-event';
|
|
4
|
+
import { Time } from '../context/Time.js';
|
|
5
|
+
import { EntityFamilyMetadata } from '../entities/EntityMetadata.js';
|
|
6
|
+
import { MARK_FAILED } from '../files/EntityFile.js';
|
|
7
|
+
import { Entity, EntityFile } from '../index.js';
|
|
3
8
|
import { createTestStorage } from './fixtures/testStorage.js';
|
|
4
|
-
import { EntityFile } from '../index.js';
|
|
5
9
|
async function waitForStoragePropagation(mock) {
|
|
6
10
|
await new Promise((resolve, reject) => {
|
|
7
11
|
// timeout after 3s waiting
|
|
@@ -514,14 +518,14 @@ describe('entities', () => {
|
|
|
514
518
|
await storage.todos.put({
|
|
515
519
|
content: { invalid: 'value' },
|
|
516
520
|
});
|
|
517
|
-
}).rejects.toThrowErrorMatchingInlineSnapshot(`[Error: Validation error: Expected string for field content, got
|
|
521
|
+
}).rejects.toThrowErrorMatchingInlineSnapshot(`[Error: Validation error: Expected string for field content, got {"invalid":"value"}]`);
|
|
518
522
|
});
|
|
519
523
|
it('should only allow valid values for file fields', async () => {
|
|
520
524
|
const storage = await createTestStorage();
|
|
521
525
|
const weird = await storage.weirds.put({});
|
|
522
526
|
expect(() => {
|
|
523
527
|
weird.set('file', { invalid: 'value' });
|
|
524
|
-
}).toThrowErrorMatchingInlineSnapshot(`[Error: Validation error: Expected file or null for field file, got
|
|
528
|
+
}).toThrowErrorMatchingInlineSnapshot(`[Error: Validation error: Expected file or null for field file, got {"invalid":"value"}]`);
|
|
525
529
|
// valid options
|
|
526
530
|
weird.set('file', new window.File(['d(⌐□_□)b'], 'test.txt', { type: 'text/plain' }));
|
|
527
531
|
weird.set('file', {
|
|
@@ -559,5 +563,434 @@ describe('entities', () => {
|
|
|
559
563
|
await storage.todos.delete(item.get('id'));
|
|
560
564
|
expect(item.deleted).toBe(true);
|
|
561
565
|
});
|
|
566
|
+
it('should apply contextual changes to a pruned entity in a way consistent with the pruned view of the data', async () => {
|
|
567
|
+
// manually constructing an entity for this test is easiest,
|
|
568
|
+
// kind of hard to force invalid data otherwise
|
|
569
|
+
const onPendingOperations = vi.fn();
|
|
570
|
+
const time = new Time(new NaiveTimestampProvider(), 1);
|
|
571
|
+
// too much junk in here, have to manually pick and choose
|
|
572
|
+
let subId = 0;
|
|
573
|
+
const testCtx = {
|
|
574
|
+
globalEvents: new EventSubscriber(),
|
|
575
|
+
time,
|
|
576
|
+
log: vi.fn(),
|
|
577
|
+
patchCreator: new PatchCreator(() => time.now, () => `${subId++}`),
|
|
578
|
+
files: {
|
|
579
|
+
add: vi.fn(),
|
|
580
|
+
},
|
|
581
|
+
weakRef: (v) => new WeakRef(v),
|
|
582
|
+
};
|
|
583
|
+
const metadataFamily = new EntityFamilyMetadata({
|
|
584
|
+
ctx: testCtx,
|
|
585
|
+
onPendingOperations,
|
|
586
|
+
rootOid: 'foos/a',
|
|
587
|
+
});
|
|
588
|
+
const entity = new Entity({
|
|
589
|
+
oid: 'foos/a',
|
|
590
|
+
schema: {
|
|
591
|
+
type: 'object',
|
|
592
|
+
properties: {
|
|
593
|
+
id: schema.fields.id(),
|
|
594
|
+
content: schema.fields.string(),
|
|
595
|
+
items: schema.fields.array({
|
|
596
|
+
items: schema.fields.object({
|
|
597
|
+
properties: {
|
|
598
|
+
content: schema.fields.string(),
|
|
599
|
+
},
|
|
600
|
+
}),
|
|
601
|
+
}),
|
|
602
|
+
},
|
|
603
|
+
},
|
|
604
|
+
ctx: testCtx,
|
|
605
|
+
deleteSelf: vi.fn(),
|
|
606
|
+
files: {
|
|
607
|
+
add: vi.fn(),
|
|
608
|
+
},
|
|
609
|
+
metadataFamily,
|
|
610
|
+
storeEvents: {
|
|
611
|
+
add: new WeakEvent(),
|
|
612
|
+
replace: new WeakEvent(),
|
|
613
|
+
resetAll: new WeakEvent(),
|
|
614
|
+
},
|
|
615
|
+
readonlyKeys: ['id'],
|
|
616
|
+
});
|
|
617
|
+
metadataFamily.addConfirmedData({
|
|
618
|
+
baselines: [
|
|
619
|
+
{
|
|
620
|
+
oid: 'foos/a:1',
|
|
621
|
+
snapshot: { content: 'item 1' },
|
|
622
|
+
timestamp: time.now,
|
|
623
|
+
},
|
|
624
|
+
{
|
|
625
|
+
oid: 'foos/a:2',
|
|
626
|
+
snapshot: { content: 'item 2' },
|
|
627
|
+
timestamp: time.now,
|
|
628
|
+
},
|
|
629
|
+
{
|
|
630
|
+
oid: 'foos/a:3',
|
|
631
|
+
snapshot: {}, // INVALID!
|
|
632
|
+
timestamp: time.now,
|
|
633
|
+
},
|
|
634
|
+
{
|
|
635
|
+
oid: 'foos/a:4',
|
|
636
|
+
snapshot: { content: 'item 4' },
|
|
637
|
+
timestamp: time.now,
|
|
638
|
+
},
|
|
639
|
+
{
|
|
640
|
+
oid: 'foos/a:5',
|
|
641
|
+
snapshot: [
|
|
642
|
+
createRef('foos/a:1'),
|
|
643
|
+
createRef('foos/a:2'),
|
|
644
|
+
createRef('foos/a:3'),
|
|
645
|
+
createRef('foos/a:4'),
|
|
646
|
+
],
|
|
647
|
+
timestamp: time.now,
|
|
648
|
+
},
|
|
649
|
+
{
|
|
650
|
+
oid: 'foos/a',
|
|
651
|
+
snapshot: {
|
|
652
|
+
id: 'a',
|
|
653
|
+
content: 'the main foo',
|
|
654
|
+
items: createRef('foos/a:5'),
|
|
655
|
+
},
|
|
656
|
+
timestamp: time.now,
|
|
657
|
+
},
|
|
658
|
+
],
|
|
659
|
+
});
|
|
660
|
+
expect(entity.deepInvalid).toBe(true);
|
|
661
|
+
// check all that worked, lol. and that it's
|
|
662
|
+
// pruned item 3
|
|
663
|
+
expect(entity.getSnapshot()).toEqual({
|
|
664
|
+
id: 'a',
|
|
665
|
+
content: 'the main foo',
|
|
666
|
+
items: [
|
|
667
|
+
{ content: 'item 1' },
|
|
668
|
+
{ content: 'item 2' },
|
|
669
|
+
{ content: 'item 4' },
|
|
670
|
+
],
|
|
671
|
+
});
|
|
672
|
+
// also check that unpruned snapshot is correct
|
|
673
|
+
expect(entity.getUnprunedSnapshot()).toEqual({
|
|
674
|
+
id: 'a',
|
|
675
|
+
content: 'the main foo',
|
|
676
|
+
items: [
|
|
677
|
+
{ content: 'item 1' },
|
|
678
|
+
{ content: 'item 2' },
|
|
679
|
+
{},
|
|
680
|
+
{ content: 'item 4' },
|
|
681
|
+
],
|
|
682
|
+
});
|
|
683
|
+
// now, let's set the content of index 2.
|
|
684
|
+
// if this works as expected, we should replace
|
|
685
|
+
// item 4 (even though technically it's at index 3)
|
|
686
|
+
// because we are respecting the user's intention.
|
|
687
|
+
const items = entity.get('items');
|
|
688
|
+
items.set(2, { content: 'new item' });
|
|
689
|
+
expect(entity.getSnapshot()).toEqual({
|
|
690
|
+
id: 'a',
|
|
691
|
+
content: 'the main foo',
|
|
692
|
+
items: [
|
|
693
|
+
{ content: 'item 1' },
|
|
694
|
+
{ content: 'item 2' },
|
|
695
|
+
{ content: 'new item' },
|
|
696
|
+
],
|
|
697
|
+
});
|
|
698
|
+
// now, the entity has been 'fixed' and is valid again
|
|
699
|
+
expect(entity.getSnapshot()).toEqual(entity.getUnprunedSnapshot());
|
|
700
|
+
expect(entity.deepInvalid).toBe(false);
|
|
701
|
+
});
|
|
702
|
+
it('should only fire deep change once for a file change even if you get it multiple times', async () => {
|
|
703
|
+
// addressing a specific bug / lazy thing I did that caused a listener leak
|
|
704
|
+
const storage = await createTestStorage();
|
|
705
|
+
const weird = await storage.weirds.put({});
|
|
706
|
+
const fileList = weird.get('fileList');
|
|
707
|
+
const file = new window.File(['d(⌐□_□)b'], 'test.txt', {
|
|
708
|
+
type: 'text/plain',
|
|
709
|
+
});
|
|
710
|
+
fileList.push(file);
|
|
711
|
+
const deepListener = vi.fn();
|
|
712
|
+
fileList.subscribe('changeDeep', deepListener);
|
|
713
|
+
fileList.get(0);
|
|
714
|
+
fileList.get(0);
|
|
715
|
+
fileList.get(0);
|
|
716
|
+
// easy way to trigger change
|
|
717
|
+
fileList.get(0)[MARK_FAILED]();
|
|
718
|
+
expect(deepListener).toHaveBeenCalledTimes(1);
|
|
719
|
+
});
|
|
720
|
+
it('should correctly prune deep nested objects', () => {
|
|
721
|
+
// manually constructing an entity for this test is easiest,
|
|
722
|
+
// kind of hard to force invalid data otherwise
|
|
723
|
+
const onPendingOperations = vi.fn();
|
|
724
|
+
const time = new Time(new FixedTimestampProvider(), 1);
|
|
725
|
+
// too much junk in here, have to manually pick and choose
|
|
726
|
+
let subId = 100; // avoid false-flag matching of other ids by choosing an arbitrary start point
|
|
727
|
+
const testCtx = {
|
|
728
|
+
globalEvents: new EventSubscriber(),
|
|
729
|
+
time,
|
|
730
|
+
log: console.log,
|
|
731
|
+
patchCreator: new PatchCreator(() => time.now, () => `${subId++}`),
|
|
732
|
+
files: {
|
|
733
|
+
add: vi.fn(),
|
|
734
|
+
},
|
|
735
|
+
weakRef: (v) => new WeakRef(v),
|
|
736
|
+
};
|
|
737
|
+
const metadataFamily = new EntityFamilyMetadata({
|
|
738
|
+
ctx: testCtx,
|
|
739
|
+
onPendingOperations,
|
|
740
|
+
rootOid: 'foos/a',
|
|
741
|
+
});
|
|
742
|
+
const entity = new Entity({
|
|
743
|
+
oid: 'foos/a',
|
|
744
|
+
schema: {
|
|
745
|
+
type: 'object',
|
|
746
|
+
properties: {
|
|
747
|
+
id: schema.fields.id(),
|
|
748
|
+
// should prune to an empty list entity
|
|
749
|
+
listTest: schema.fields.array({
|
|
750
|
+
items: schema.fields.object({
|
|
751
|
+
fields: {
|
|
752
|
+
required: schema.fields.string(),
|
|
753
|
+
},
|
|
754
|
+
}),
|
|
755
|
+
}),
|
|
756
|
+
objectTest: schema.fields.object({
|
|
757
|
+
default: () => ({
|
|
758
|
+
// @ts-ignore - excessive nesting
|
|
759
|
+
nested: {
|
|
760
|
+
required: 'foo',
|
|
761
|
+
},
|
|
762
|
+
}),
|
|
763
|
+
fields: {
|
|
764
|
+
nested: schema.fields.object({
|
|
765
|
+
fields: {
|
|
766
|
+
required: schema.fields.string(),
|
|
767
|
+
},
|
|
768
|
+
}),
|
|
769
|
+
},
|
|
770
|
+
}),
|
|
771
|
+
// this one will not be present at all.
|
|
772
|
+
missingTest: schema.fields.object({
|
|
773
|
+
default: () => ({
|
|
774
|
+
value: 1,
|
|
775
|
+
}),
|
|
776
|
+
fields: {
|
|
777
|
+
value: schema.fields.number(),
|
|
778
|
+
},
|
|
779
|
+
}),
|
|
780
|
+
},
|
|
781
|
+
},
|
|
782
|
+
ctx: testCtx,
|
|
783
|
+
deleteSelf: vi.fn(),
|
|
784
|
+
files: {
|
|
785
|
+
add: vi.fn(),
|
|
786
|
+
},
|
|
787
|
+
metadataFamily,
|
|
788
|
+
storeEvents: {
|
|
789
|
+
add: new WeakEvent(),
|
|
790
|
+
replace: new WeakEvent(),
|
|
791
|
+
resetAll: new WeakEvent(),
|
|
792
|
+
},
|
|
793
|
+
readonlyKeys: ['id'],
|
|
794
|
+
});
|
|
795
|
+
metadataFamily.addConfirmedData({
|
|
796
|
+
baselines: [
|
|
797
|
+
{
|
|
798
|
+
// an invalid list item
|
|
799
|
+
oid: 'foos/a:1',
|
|
800
|
+
snapshot: {},
|
|
801
|
+
timestamp: time.now,
|
|
802
|
+
},
|
|
803
|
+
{
|
|
804
|
+
oid: 'foos/a:2',
|
|
805
|
+
snapshot: [createRef('foos/a:1')],
|
|
806
|
+
timestamp: time.now,
|
|
807
|
+
},
|
|
808
|
+
{
|
|
809
|
+
// an invalid nested object
|
|
810
|
+
oid: 'foos/a:3',
|
|
811
|
+
snapshot: {},
|
|
812
|
+
timestamp: time.now,
|
|
813
|
+
},
|
|
814
|
+
{
|
|
815
|
+
oid: 'foos/a:4',
|
|
816
|
+
snapshot: { nested: createRef('foos/a:3') },
|
|
817
|
+
timestamp: time.now,
|
|
818
|
+
},
|
|
819
|
+
{
|
|
820
|
+
oid: 'foos/a',
|
|
821
|
+
snapshot: {
|
|
822
|
+
id: 'a',
|
|
823
|
+
listTest: createRef('foos/a:2'),
|
|
824
|
+
objectTest: createRef('foos/a:4'),
|
|
825
|
+
},
|
|
826
|
+
timestamp: time.now,
|
|
827
|
+
},
|
|
828
|
+
],
|
|
829
|
+
});
|
|
830
|
+
expect(entity.deepInvalid).toBe(true);
|
|
831
|
+
expect(entity.getSnapshot()).toEqual({
|
|
832
|
+
id: 'a',
|
|
833
|
+
listTest: [],
|
|
834
|
+
// gets the default, pruned
|
|
835
|
+
objectTest: {
|
|
836
|
+
nested: {
|
|
837
|
+
required: 'foo',
|
|
838
|
+
},
|
|
839
|
+
},
|
|
840
|
+
missingTest: {
|
|
841
|
+
value: 1,
|
|
842
|
+
},
|
|
843
|
+
});
|
|
844
|
+
// the kicker...
|
|
845
|
+
const list = entity.get('listTest');
|
|
846
|
+
expect(list).toBeInstanceOf(Entity);
|
|
847
|
+
const obj = entity.get('objectTest');
|
|
848
|
+
expect(obj).toBeInstanceOf(Entity);
|
|
849
|
+
const missing = entity.get('missingTest');
|
|
850
|
+
expect(missing).toBeInstanceOf(Entity);
|
|
851
|
+
// we should be able to make edits to the pruned versions
|
|
852
|
+
// and they get committed.
|
|
853
|
+
list.push({ required: 'foo' });
|
|
854
|
+
expect(entity.getSnapshot()).toEqual({
|
|
855
|
+
id: 'a',
|
|
856
|
+
listTest: [{ required: 'foo' }],
|
|
857
|
+
objectTest: {
|
|
858
|
+
nested: {
|
|
859
|
+
required: 'foo',
|
|
860
|
+
},
|
|
861
|
+
},
|
|
862
|
+
missingTest: {
|
|
863
|
+
value: 1,
|
|
864
|
+
},
|
|
865
|
+
});
|
|
866
|
+
obj.get('nested').set('required', 'bar');
|
|
867
|
+
expect(entity.getSnapshot()).toEqual({
|
|
868
|
+
id: 'a',
|
|
869
|
+
listTest: [{ required: 'foo' }],
|
|
870
|
+
objectTest: {
|
|
871
|
+
nested: {
|
|
872
|
+
required: 'bar',
|
|
873
|
+
},
|
|
874
|
+
},
|
|
875
|
+
missingTest: {
|
|
876
|
+
value: 1,
|
|
877
|
+
},
|
|
878
|
+
});
|
|
879
|
+
missing.set('value', 2);
|
|
880
|
+
expect(entity.getSnapshot()).toEqual({
|
|
881
|
+
id: 'a',
|
|
882
|
+
listTest: [{ required: 'foo' }],
|
|
883
|
+
objectTest: {
|
|
884
|
+
nested: {
|
|
885
|
+
required: 'bar',
|
|
886
|
+
},
|
|
887
|
+
// gets the default, pruned
|
|
888
|
+
},
|
|
889
|
+
missingTest: {
|
|
890
|
+
value: 2,
|
|
891
|
+
},
|
|
892
|
+
});
|
|
893
|
+
expect(onPendingOperations).toHaveBeenCalledTimes(5);
|
|
894
|
+
// when doing those changes above, we see pending operations
|
|
895
|
+
// added to construct the pruned versions with applied changes
|
|
896
|
+
function removeExtra(obj) {
|
|
897
|
+
delete obj.timestamp;
|
|
898
|
+
delete obj.authz;
|
|
899
|
+
return obj;
|
|
900
|
+
}
|
|
901
|
+
// being kind of precious about assertions here since
|
|
902
|
+
// ordering is not quite as important and some ops create new
|
|
903
|
+
// oids.
|
|
904
|
+
const firstCall = onPendingOperations.mock.calls[0][0].map(removeExtra);
|
|
905
|
+
// the required field was set to the default
|
|
906
|
+
expect(firstCall).toContainEqual({
|
|
907
|
+
data: {
|
|
908
|
+
name: 'required',
|
|
909
|
+
op: 'set',
|
|
910
|
+
value: 'foo',
|
|
911
|
+
},
|
|
912
|
+
oid: 'foos/a:3',
|
|
913
|
+
});
|
|
914
|
+
// missingTest is created wholesale
|
|
915
|
+
expect(firstCall).toContainEqual({
|
|
916
|
+
data: {
|
|
917
|
+
op: 'set',
|
|
918
|
+
name: 'missingTest',
|
|
919
|
+
value: {
|
|
920
|
+
'@@type': 'ref',
|
|
921
|
+
id: expect.stringMatching(/^foos\/a:/),
|
|
922
|
+
},
|
|
923
|
+
},
|
|
924
|
+
oid: 'foos/a',
|
|
925
|
+
});
|
|
926
|
+
expect(firstCall).toContainEqual({
|
|
927
|
+
data: {
|
|
928
|
+
op: 'initialize',
|
|
929
|
+
value: {
|
|
930
|
+
value: 1,
|
|
931
|
+
},
|
|
932
|
+
},
|
|
933
|
+
oid: expect.stringMatching(/^foos\/a:/),
|
|
934
|
+
});
|
|
935
|
+
// we asserted all the contents, now also assert the length
|
|
936
|
+
expect(firstCall).toHaveLength(3);
|
|
937
|
+
const secondCall = onPendingOperations.mock.calls[1][0].map(removeExtra);
|
|
938
|
+
// the invalid item was removed from the array
|
|
939
|
+
expect(secondCall).toContainEqual({
|
|
940
|
+
data: {
|
|
941
|
+
op: 'delete',
|
|
942
|
+
},
|
|
943
|
+
oid: 'foos/a:1',
|
|
944
|
+
});
|
|
945
|
+
expect(secondCall).toContainEqual({
|
|
946
|
+
data: {
|
|
947
|
+
op: 'list-remove',
|
|
948
|
+
only: 'last',
|
|
949
|
+
value: {
|
|
950
|
+
'@@type': 'ref',
|
|
951
|
+
id: 'foos/a:1',
|
|
952
|
+
},
|
|
953
|
+
},
|
|
954
|
+
oid: 'foos/a:2',
|
|
955
|
+
});
|
|
956
|
+
const thirdCall = onPendingOperations.mock.calls[2][0].map(removeExtra);
|
|
957
|
+
// we can be more lax here
|
|
958
|
+
expect(thirdCall).toMatchInlineSnapshot(`
|
|
959
|
+
[
|
|
960
|
+
{
|
|
961
|
+
"data": {
|
|
962
|
+
"op": "initialize",
|
|
963
|
+
"value": {
|
|
964
|
+
"required": "foo",
|
|
965
|
+
},
|
|
966
|
+
},
|
|
967
|
+
"oid": "foos/a:100",
|
|
968
|
+
},
|
|
969
|
+
{
|
|
970
|
+
"data": {
|
|
971
|
+
"op": "list-push",
|
|
972
|
+
"value": {
|
|
973
|
+
"@@type": "ref",
|
|
974
|
+
"id": "foos/a:100",
|
|
975
|
+
},
|
|
976
|
+
},
|
|
977
|
+
"oid": "foos/a:2",
|
|
978
|
+
},
|
|
979
|
+
]
|
|
980
|
+
`);
|
|
981
|
+
const fourthCall = onPendingOperations.mock.calls[3][0].map(removeExtra);
|
|
982
|
+
expect(fourthCall).toMatchInlineSnapshot(`
|
|
983
|
+
[
|
|
984
|
+
{
|
|
985
|
+
"data": {
|
|
986
|
+
"name": "required",
|
|
987
|
+
"op": "set",
|
|
988
|
+
"value": "bar",
|
|
989
|
+
},
|
|
990
|
+
"oid": "foos/a:3",
|
|
991
|
+
},
|
|
992
|
+
]
|
|
993
|
+
`);
|
|
994
|
+
});
|
|
562
995
|
});
|
|
563
996
|
//# sourceMappingURL=entities.test.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"entities.test.js","sourceRoot":"","sources":["../../../src/__tests__/entities.test.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"entities.test.js","sourceRoot":"","sources":["../../../src/__tests__/entities.test.ts"],"names":[],"mappings":"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"}
|
|
@@ -76,6 +76,7 @@ export declare const weirdCollection: import("@verdant-web/common").StorageColle
|
|
|
76
76
|
arrayMap: import("@verdant-web/common").StorageMapFieldSchema<import("@verdant-web/common").StorageArrayFieldSchema<import("@verdant-web/common").StorageStringFieldSchema>>;
|
|
77
77
|
file: import("@verdant-web/common").StorageFileFieldSchema;
|
|
78
78
|
}>>>;
|
|
79
|
+
export declare const testSchema: import("@verdant-web/common").StorageSchema;
|
|
79
80
|
export declare function createTestStorage({ idb, disableRebasing, log, }?: {
|
|
80
81
|
idb?: IDBFactory;
|
|
81
82
|
disableRebasing?: boolean;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"testStorage.js","sourceRoot":"","sources":["../../../../src/__tests__/fixtures/testStorage.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"testStorage.js","sourceRoot":"","sources":["../../../../src/__tests__/fixtures/testStorage.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,EAAE,MAAM,qBAAqB,CAAC;AAC9D,aAAa;AACb,OAAO,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAC;AAC5C,OAAO,EACN,gBAAgB,EAEhB,cAAc,GACd,MAAM,gBAAgB,CAAC;AAExB,MAAM,IAAI,GAAG,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC;IACjC,MAAM,EAAE;QACP,GAAG,EAAE,MAAM,CAAC,MAAM,CAAC,MAAM,EAAE;KAC3B;CACD,CAAC,CAAC;AAEH,MAAM,CAAC,MAAM,cAAc,GAAG,MAAM,CAAC,UAAU,CAAC;IAC/C,IAAI,EAAE,MAAM;IACZ,UAAU,EAAE,IAAI;IAChB,MAAM,EAAE;QACP,EAAE,EAAE,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC;YACxB,OAAO,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC;SACrD,CAAC;QACF,OAAO,EAAE,MAAM,CAAC,MAAM,CAAC,MAAM,EAAE;QAC/B,IAAI,EAAE,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC;YAC3B,OAAO,EAAE,KAAK;SACd,CAAC;QACF,IAAI,EAAE,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC;YACzB,KAAK,EAAE,MAAM,CAAC,MAAM,CAAC,MAAM,EAAE;SAC7B,CAAC;QACF,QAAQ,EAAE,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC;YAC9B,QAAQ,EAAE,IAAI;SACd,CAAC;QACF,WAAW,EAAE,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC;YAChC,KAAK,EAAE,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC;gBAC3B,UAAU,EAAE;oBACX,IAAI,EAAE,MAAM,CAAC,MAAM,CAAC,MAAM,EAAE;oBAC5B,IAAI,EAAE,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC;wBAC1B,OAAO,EAAE,CAAC;qBACV,CAAC;iBACF;aACD,CAAC;SACF,CAAC;KACF;IACD,OAAO,EAAE;QACR,OAAO,EAAE;YACR,KAAK,EAAE,SAAS;SAChB;QACD,OAAO,EAAE;YACR,IAAI,EAAE,QAAQ;YACd,OAAO,EAAE,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,OAAO;SAC7B;KACD;IACD,SAAS,EAAE;QACV,gBAAgB,EAAE;YACjB,EAAE,EAAE,CAAC,MAAM,EAAE,MAAM,CAAC;SACpB;QACD,oBAAoB,EAAE;YACrB,EAAE,EAAE,CAAC,UAAU,EAAE,MAAM,CAAC;SACxB;KACD;CACD,CAAC,CAAC;AAEH,MAAM,CAAC,MAAM,eAAe,GAAG,MAAM,CAAC,UAAU,CAAC;IAChD,IAAI,EAAE,OAAO;IACb,UAAU,EAAE,IAAI;IAChB,MAAM,EAAE;QACP,EAAE,EAAE,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC;YACxB,OAAO,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC;SACrD,CAAC;QACF,KAAK,EAAE,MAAM,CAAC,MAAM,CAAC,GAAG,EAAE;QAC1B,GAAG,EAAE,MAAM,CAAC,MAAM,CAAC,GAAG,CAAC;YACtB,MAAM,EAAE,MAAM,CAAC,MAAM,CAAC,MAAM,EAAE;SAC9B,CAAC;QACF,QAAQ,EAAE,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC;YAC7B,KAAK,EAAE,MAAM,CAAC,MAAM,CAAC,IAAI,EAAE;SAC3B,CAAC;QACF,SAAS,EAAE,MAAM,CAAC,MAAM,CAAC,GAAG,CAAC;YAC5B,MAAM,EAAE,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC;gBAC5B,UAAU,EAAE;oBACX,OAAO,EAAE,MAAM,CAAC,MAAM,CAAC,MAAM,EAAE;iBAC/B;aACD,CAAC;SACF,CAAC;QACF,QAAQ,EAAE,MAAM,CAAC,MAAM,CAAC,GAAG,CAAC;YAC3B,MAAM,EAAE,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC;gBAC3B,KAAK,EAAE,MAAM,CAAC,MAAM,CAAC,MAAM,EAAE;aAC7B,CAAC;SACF,CAAC;QACF,IAAI,EAAE,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC;YACxB,QAAQ,EAAE,IAAI;SACd,CAAC;KACF;CACD,CAAC,CAAC;AAEH,MAAM,CAAC,MAAM,UAAU,GAAG,MAAM,CAAC;IAChC,OAAO,EAAE,CAAC;IACV,WAAW,EAAE;QACZ,KAAK,EAAE,cAAc;QACrB,MAAM,EAAE,eAAe;KACvB;CACD,CAAC,CAAC;AAEH,MAAM,UAAU,iBAAiB,CAAC,EACjC,GAAG,GAAG,IAAI,UAAU,EAAE,EACtB,eAAe,GAAG,KAAK,EACvB,GAAG,MAKA,EAAE;IACL,MAAM,OAAO,GAAG,IAAI,gBAAgB,CAAC;QACpC,MAAM,EAAE,UAAU;QAClB,UAAU,EAAE,CAAC,eAAe,CAAK,UAAU,CAAC,CAAC;QAC7C,SAAS,EAAE,MAAM;QACjB,eAAe;QACf,UAAU,EAAE,CAAC,UAAU,CAAC;QACxB,GAAG;QACH,WAAW,EAAE,IAAI,cAAc,CAAC,GAAG,CAAC;KACpC,CAAC,CAAC,IAAI,EAAE,CAAC;IACV,OAAO,OAAyC,CAAC;AAClD,CAAC"}
|
|
@@ -67,10 +67,11 @@ export class Client extends EventSubscriber {
|
|
|
67
67
|
}
|
|
68
68
|
}
|
|
69
69
|
catch (err) {
|
|
70
|
-
this.context.log('critical', 'Sync failed', err);
|
|
70
|
+
this.context.log('critical', 'Sync failed. To avoid data corruption, the client will now shut down.', err);
|
|
71
71
|
this.emit('developerError', new Error('Sync failed, see logs or cause', {
|
|
72
72
|
cause: err,
|
|
73
73
|
}));
|
|
74
|
+
await this.close();
|
|
74
75
|
throw err;
|
|
75
76
|
}
|
|
76
77
|
};
|