@aws-amplify/datastore 3.11.3 → 3.11.4-geo.13
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/aws-amplify-datastore.js +231 -68
- package/dist/aws-amplify-datastore.js.map +1 -1
- package/dist/aws-amplify-datastore.min.js +11 -11
- package/dist/aws-amplify-datastore.min.js.map +1 -1
- package/lib/datastore/datastore.js +109 -24
- package/lib/datastore/datastore.js.map +1 -1
- package/lib/storage/adapter/AsyncStorageAdapter.js.map +1 -1
- package/lib/sync/processors/errorMaps.js +38 -11
- package/lib/sync/processors/errorMaps.js.map +1 -1
- package/lib/types.d.ts +1 -1
- package/lib/types.js.map +1 -1
- package/lib/util.d.ts +19 -0
- package/lib/util.js +29 -0
- package/lib/util.js.map +1 -1
- package/lib-esm/datastore/datastore.js +110 -25
- package/lib-esm/datastore/datastore.js.map +1 -1
- package/lib-esm/storage/adapter/AsyncStorageAdapter.js.map +1 -1
- package/lib-esm/sync/processors/errorMaps.js +38 -11
- package/lib-esm/sync/processors/errorMaps.js.map +1 -1
- package/lib-esm/types.d.ts +1 -1
- package/lib-esm/types.js.map +1 -1
- package/lib-esm/util.d.ts +19 -0
- package/lib-esm/util.js +28 -0
- package/lib-esm/util.js.map +1 -1
- package/package.json +8 -8
- package/src/datastore/datastore.ts +149 -49
- package/src/storage/adapter/AsyncStorageAdapter.ts +1 -0
- package/src/sync/processors/errorMaps.ts +43 -13
- package/src/types.ts +1 -0
- package/src/util.ts +40 -3
package/lib-esm/types.d.ts
CHANGED
|
@@ -433,7 +433,7 @@ export declare type SyncError<T extends PersistentModel> = {
|
|
|
433
433
|
operation: string;
|
|
434
434
|
cause?: Error;
|
|
435
435
|
};
|
|
436
|
-
export declare type ErrorType = 'ConfigError' | 'BadRecord' | 'Unauthorized' | 'Transient' | 'Unknown';
|
|
436
|
+
export declare type ErrorType = 'ConfigError' | 'BadModel' | 'BadRecord' | 'Unauthorized' | 'Transient' | 'Unknown';
|
|
437
437
|
export declare enum ProcessName {
|
|
438
438
|
'sync' = "sync",
|
|
439
439
|
'mutate' = "mutate",
|
package/lib-esm/types.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.js","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"types.js","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"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"}
|
package/lib-esm/util.d.ts
CHANGED
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import { ULID } from 'ulid';
|
|
2
|
+
import { Patch } from 'immer';
|
|
2
3
|
import { ModelInstanceMetadata, PersistentModel, PersistentModelConstructor, PredicateObject, PredicatesGroup, RelationshipType, RelationType, ModelKeys, ModelAttributes, SchemaNamespace, SortPredicatesGroup, NonModelTypeConstructor, DeferredCallbackResolverOptions } from './types';
|
|
3
4
|
export declare const exhaustiveCheck: (obj: never, throwOnError?: boolean) => void;
|
|
4
5
|
export declare const isNullOrUndefined: (val: any) => boolean;
|
|
@@ -91,3 +92,21 @@ export declare class DeferredCallbackResolver {
|
|
|
91
92
|
clear(): void;
|
|
92
93
|
resolve(): void;
|
|
93
94
|
}
|
|
95
|
+
/**
|
|
96
|
+
* merge two sets of patches created by immer produce.
|
|
97
|
+
* newPatches take precedent over oldPatches for patches modifying the same path.
|
|
98
|
+
* In the case many consecutive pathces are merged the original model should
|
|
99
|
+
* always be the root model.
|
|
100
|
+
*
|
|
101
|
+
* Example:
|
|
102
|
+
* A -> B, patches1
|
|
103
|
+
* B -> C, patches2
|
|
104
|
+
*
|
|
105
|
+
* mergePatches(A, patches1, patches2) to get patches for A -> C
|
|
106
|
+
*
|
|
107
|
+
* @param originalSource the original Model the patches should be applied to
|
|
108
|
+
* @param oldPatches immer produce patch list
|
|
109
|
+
* @param newPatches immer produce patch list (will take precedence)
|
|
110
|
+
* @return merged patches
|
|
111
|
+
*/
|
|
112
|
+
export declare function mergePatches<T>(originalSource: T, oldPatches: Patch[], newPatches: Patch[]): Patch[];
|
package/lib-esm/util.js
CHANGED
|
@@ -68,6 +68,7 @@ var __values = (this && this.__values) || function(o) {
|
|
|
68
68
|
import { Buffer } from 'buffer';
|
|
69
69
|
import { monotonicFactory } from 'ulid';
|
|
70
70
|
import { v4 as uuid } from 'uuid';
|
|
71
|
+
import { produce, applyPatches } from 'immer';
|
|
71
72
|
import { isPredicateGroup, isPredicateObj, SortDirection, isModelAttributeKey, isModelAttributePrimaryKey, isModelAttributeCompositeKey, LimitTimerRaceResolvedValues, } from './types';
|
|
72
73
|
import { WordArray } from 'amazon-cognito-identity-js';
|
|
73
74
|
export var exhaustiveCheck = function (obj, throwOnError) {
|
|
@@ -687,4 +688,31 @@ var DeferredCallbackResolver = /** @class */ (function () {
|
|
|
687
688
|
return DeferredCallbackResolver;
|
|
688
689
|
}());
|
|
689
690
|
export { DeferredCallbackResolver };
|
|
691
|
+
/**
|
|
692
|
+
* merge two sets of patches created by immer produce.
|
|
693
|
+
* newPatches take precedent over oldPatches for patches modifying the same path.
|
|
694
|
+
* In the case many consecutive pathces are merged the original model should
|
|
695
|
+
* always be the root model.
|
|
696
|
+
*
|
|
697
|
+
* Example:
|
|
698
|
+
* A -> B, patches1
|
|
699
|
+
* B -> C, patches2
|
|
700
|
+
*
|
|
701
|
+
* mergePatches(A, patches1, patches2) to get patches for A -> C
|
|
702
|
+
*
|
|
703
|
+
* @param originalSource the original Model the patches should be applied to
|
|
704
|
+
* @param oldPatches immer produce patch list
|
|
705
|
+
* @param newPatches immer produce patch list (will take precedence)
|
|
706
|
+
* @return merged patches
|
|
707
|
+
*/
|
|
708
|
+
export function mergePatches(originalSource, oldPatches, newPatches) {
|
|
709
|
+
var patchesToMerge = oldPatches.concat(newPatches);
|
|
710
|
+
var patches;
|
|
711
|
+
produce(originalSource, function (draft) {
|
|
712
|
+
applyPatches(draft, patchesToMerge);
|
|
713
|
+
}, function (p) {
|
|
714
|
+
patches = p;
|
|
715
|
+
});
|
|
716
|
+
return patches;
|
|
717
|
+
}
|
|
690
718
|
//# sourceMappingURL=util.js.map
|
package/lib-esm/util.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"util.js","sourceRoot":"","sources":["../src/util.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"util.js","sourceRoot":"","sources":["../src/util.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;AAChC,OAAO,EAAE,gBAAgB,EAAQ,MAAM,MAAM,CAAC;AAC9C,OAAO,EAAE,EAAE,IAAI,IAAI,EAAE,MAAM,MAAM,CAAC;AAClC,OAAO,EAAE,OAAO,EAAE,YAAY,EAAS,MAAM,OAAO,CAAC;AAErD,OAAO,EAEN,gBAAgB,EAChB,cAAc,EAad,aAAa,EACb,mBAAmB,EACnB,0BAA0B,EAC1B,4BAA4B,EAG5B,4BAA4B,GAC5B,MAAM,SAAS,CAAC;AACjB,OAAO,EAAE,SAAS,EAAE,MAAM,4BAA4B,CAAC;AAEvD,MAAM,CAAC,IAAM,eAAe,GAAG,UAAC,GAAU,EAAE,YAA4B;IAA5B,6BAAA,EAAA,mBAA4B;IACvE,IAAI,YAAY,EAAE;QACjB,MAAM,IAAI,KAAK,CAAC,aAAW,GAAK,CAAC,CAAC;KAClC;AACF,CAAC,CAAC;AAEF,MAAM,CAAC,IAAM,iBAAiB,GAAG,UAAC,GAAQ;IACzC,OAAO,OAAO,GAAG,KAAK,WAAW,IAAI,GAAG,KAAK,SAAS,IAAI,GAAG,KAAK,IAAI,CAAC;AACxE,CAAC,CAAC;AAEF,MAAM,CAAC,IAAM,iBAAiB,GAAG,UAChC,KAAQ,EACR,SAAmC,EACnC,kBAA+D;IAE/D,IAAI,UAA+C,CAAC;IACpD,IAAI,UAAU,GAAG,KAAK,CAAC;IAEvB,IAAI,kBAAkB,CAAC,MAAM,KAAK,CAAC,EAAE;QACpC,OAAO,IAAI,CAAC;KACZ;IAED,QAAQ,SAAS,EAAE;QAClB,KAAK,KAAK;YACT,UAAU,GAAG,OAAO,CAAC;YACrB,UAAU,GAAG,IAAI,CAAC;YAClB,MAAM;QACP,KAAK,KAAK;YACT,UAAU,GAAG,OAAO,CAAC;YACrB,MAAM;QACP,KAAK,IAAI;YACR,UAAU,GAAG,MAAM,CAAC;YACpB,MAAM;QACP;YACC,eAAe,CAAC,SAAS,CAAC,CAAC;KAC5B;IAED,IAAM,MAAM,GAAY,kBAAkB,CAAC,UAAU,CAAC,CAAC,UAAA,gBAAgB;QACtE,IAAI,cAAc,CAAC,gBAAgB,CAAC,EAAE;YAC7B,IAAA,8BAAK,EAAE,oCAAQ,EAAE,kCAAO,CAAsB;YACtD,IAAM,KAAK,GAAG,KAAK,CAAC,KAAK,CAAC,CAAC;YAE3B,OAAO,sBAAsB,CAAC,KAAK,EAAE,QAAQ,EAAE,OAAO,CAAC,CAAC;SACxD;QAED,IAAI,gBAAgB,CAAC,gBAAgB,CAAC,EAAE;YAC/B,IAAA,4BAAI,EAAE,wCAAU,CAAsB;YAC9C,OAAO,iBAAiB,CAAC,KAAK,EAAE,IAAI,EAAE,UAAU,CAAC,CAAC;SAClD;QAED,MAAM,IAAI,KAAK,CAAC,0BAA0B,CAAC,CAAC;IAC7C,CAAC,CAAC,CAAC;IAEH,OAAO,UAAU,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC;AACtC,CAAC,CAAC;AAEF,MAAM,CAAC,IAAM,sBAAsB,GAAG,UACrC,KAAQ,EACR,QAA4B,EAC5B,OAAmB;IAEnB,QAAQ,QAAQ,EAAE;QACjB,KAAK,IAAI;YACR,OAAO,KAAK,KAAK,OAAO,CAAC;QAC1B,KAAK,IAAI;YACR,OAAO,KAAK,KAAK,OAAO,CAAC;QAC1B,KAAK,IAAI;YACR,OAAO,KAAK,IAAI,OAAO,CAAC;QACzB,KAAK,IAAI;YACR,OAAO,KAAK,GAAG,OAAO,CAAC;QACxB,KAAK,IAAI;YACR,OAAO,KAAK,IAAI,OAAO,CAAC;QACzB,KAAK,IAAI;YACR,OAAO,KAAK,GAAG,OAAO,CAAC;QACxB,KAAK,SAAS;YACP,IAAA,uBAA4B,EAA3B,WAAG,EAAE,WAAsB,CAAC;YACnC,OAAO,KAAK,IAAI,GAAG,IAAI,KAAK,IAAI,GAAG,CAAC;QACrC,KAAK,YAAY;YAChB,OAAO,CACN,CAAC,iBAAiB,CAAC,KAAK,CAAC;gBACN,KAAO,CAAC,UAAU,CAAmB,OAAQ,CAAC,CACjE,CAAC;QACH,KAAK,UAAU;YACd,OAAO,CACN,CAAC,iBAAiB,CAAC,KAAK,CAAC;gBACN,KAAO,CAAC,OAAO,CAAmB,OAAQ,CAAC,GAAG,CAAC,CAAC,CACnE,CAAC;QACH,KAAK,aAAa;YACjB,OAAO,CACN,iBAAiB,CAAC,KAAK,CAAC;gBACL,KAAO,CAAC,OAAO,CAAmB,OAAQ,CAAC,KAAK,CAAC,CAAC,CACrE,CAAC;QACH;YACC,eAAe,CAAC,QAAQ,EAAE,KAAK,CAAC,CAAC;YACjC,OAAO,KAAK,CAAC;KACd;AACF,CAAC,CAAC;AAEF,MAAM,CAAC,IAAM,kBAAkB,GAAG,UACjC,GAAQ;IAER,OAAO,CACN,GAAG,IAAI,OAAuC,GAAI,CAAC,MAAM,KAAK,UAAU,CACxE,CAAC;AACH,CAAC,CAAC;AAEF,IAAM,eAAe,GAAG,IAAI,OAAO,EAAgC,CAAC;AAEpE,MAAM,UAAU,qBAAqB,CAAC,KAAmC;IACxE,eAAe,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;AAC5B,CAAC;AAED,MAAM,CAAC,IAAM,qBAAqB,GAAG,UACpC,GAAQ;IAER,OAAO,eAAe,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;AACjC,CAAC,CAAC;AAEF;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EA+BE;AACF,MAAM,CAAC,IAAM,oBAAoB,GAAG,UACnC,UAA2B;IAE3B,IAAM,uBAAuB,GAAG,UAAC,EAKhC;;QAHC,yFAAyF;QACzF,iCAA4B,EAAjB,2BAAgB;QAEvB,OAAA,aAAa;IAAb,CAAa,CAAC;IAEpB,IAAM,kBAAkB,GAAG,UAAU;SACnC,MAAM,CAAC,4BAA4B,CAAC;SACpC,GAAG,CAAC,uBAAuB,CAAC,CAAC;IAE/B;;;MAGE;IACF,IAAM,mBAAmB,GAAG,UAAC,MAAM;QAClC,OAAA,MAAM,CAAC,MAAM,CAAC,UAAC,QAAQ,EAAE,aAAa;YACrC,IAAM,gBAAgB,GAAG,IAAI,GAAG,CAAC,aAAa,CAAC,CAAC;YAEhD,IAAI,QAAQ,CAAC,MAAM,KAAK,CAAC,EAAE;gBAC1B,QAAQ,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAC;gBAChC,OAAO,QAAQ,CAAC;aAChB;YAED,wFAAwF;YACxF,IAAM,kBAAkB,GAAG,QAAQ,CAAC,SAAS,CAAC,UAAA,WAAW;gBACxD,OAAO,SAAI,WAAW,EAAE,IAAI,CAAC,UAAA,CAAC,IAAI,OAAA,gBAAgB,CAAC,GAAG,CAAC,CAAC,CAAC,EAAvB,CAAuB,CAAC,CAAC;YAC5D,CAAC,CAAC,CAAC;YAEH,IAAI,kBAAkB,GAAG,CAAC,CAAC,EAAE;gBAC5B,IAAM,KAAK,GAAG,IAAI,GAAG,UACjB,QAAQ,CAAC,kBAAkB,CAAC,EAC5B,gBAAgB,EAClB,CAAC;gBACH,mEAAmE;gBACnE,QAAQ,CAAC,kBAAkB,CAAC,GAAG,KAAK,CAAC;aACrC;iBAAM;gBACN,+EAA+E;gBAC/E,QAAQ,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAC;aAChC;YAED,OAAO,QAAQ,CAAC;QACjB,CAAC,EAAE,EAAE,CAAC;IA1BN,CA0BM,CAAC;IAER,IAAM,OAAO,GAAG,mBAAmB,CAAC,kBAAkB,CAAC,CAAC;IACxD,sEAAsE;IACtE,iEAAiE;IACjE,IAAM,QAAQ,GAAG,mBAAmB,CAAC,OAAO,CAAC,CAAC;IAE9C,OAAO,QAAQ,CAAC;AACjB,CAAC,CAAC;AAEF,MAAM,CAAC,IAAM,wBAAwB,GAAG,UACvC,SAA0B;IAE1B,IAAM,YAAY,GAAqB,EAAE,CAAC;IAC1C,IAAM,IAAI,GAAc,EAAE,CAAC;IAE3B,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC,OAAO,CAAC,UAAC,IAAY;;QAClD,YAAY,CAAC,IAAI,CAAC,GAAG,EAAE,OAAO,EAAE,EAAE,EAAE,aAAa,EAAE,EAAE,EAAE,CAAC;QACxD,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC;QAEhB,IAAM,KAAK,GAAG,SAAS,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;QACrC,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,OAAO,CAAC,UAAC,IAAY;YAC9C,IAAM,cAAc,GAAG,KAAK,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;YAC1C,IACC,OAAO,cAAc,CAAC,IAAI,KAAK,QAAQ;gBACvC,OAAO,IAAI,cAAc,CAAC,IAAI,EAC7B;gBACD,IAAM,cAAc,GAAG,cAAc,CAAC,WAAW,CAAC,cAAc,CAAC;gBACjE,YAAY,CAAC,IAAI,CAAC,CAAC,aAAa,CAAC,IAAI,CAAC;oBACrC,SAAS,EAAE,cAAc,CAAC,IAAI;oBAC9B,SAAS,EAAE,cAAc,CAAC,IAAI,CAAC,KAAK;oBACpC,YAAY,EAAE,cAAc;oBAC5B,UAAU,EAAE,cAAc,CAAC,WAAW,CAAC,YAAY,CAAC;oBACpD,cAAc,EAAE,cAAc,CAAC,WAAW,CAAC,gBAAgB,CAAC;iBAC5D,CAAC,CAAC;gBAEH,IAAI,cAAc,KAAK,YAAY,EAAE;oBACpC,YAAY,CAAC,IAAI,CAAC,CAAC,OAAO,CAAC,IAAI,CAC9B,cAAc,CAAC,WAAW,CAAC,YAAY,CAAC,CACxC,CAAC;iBACF;aACD;QACF,CAAC,CAAC,CAAC;QAEH,IAAI,KAAK,CAAC,UAAU,EAAE;YACrB,IAAI,CAAC,IAAI,CAAC,CAAC,aAAa,GAAG,oBAAoB,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC;;gBAElE,KAAwB,IAAA,KAAA,SAAA,KAAK,CAAC,UAAU,CAAA,gBAAA,4BAAE;oBAArC,IAAM,SAAS,WAAA;oBACnB,IAAI,CAAC,mBAAmB,CAAC,SAAS,CAAC,EAAE;wBACpC,SAAS;qBACT;oBAED,IAAI,0BAA0B,CAAC,SAAS,CAAC,EAAE;wBAC1C,IAAI,CAAC,IAAI,CAAC,CAAC,UAAU,GAAG,SAAS,CAAC,UAAU,CAAC,MAAM,CAAC;qBACpD;oBAEO,IAAA,oCAAM,CAA0B;;wBACxC,KAAoB,IAAA,0BAAA,SAAA,MAAM,CAAA,CAAA,8BAAA,kDAAE;4BAAvB,IAAM,KAAK,mBAAA;4BACf,iDAAiD;4BACjD,IAAM,MAAM,GAAG,YAAY,CAAC,IAAI,CAAC,CAAC,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;4BAC1D,IAAI,CAAC,MAAM,EAAE;gCACZ,YAAY,CAAC,IAAI,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;6BACvC;yBACD;;;;;;;;;iBACD;;;;;;;;;SACD;IACF,CAAC,CAAC,CAAC;IAEH,OAAO,CAAC,YAAY,EAAE,IAAI,CAAC,CAAC;AAC7B,CAAC,CAAC;AAEF,IAAM,yBAAyB,GAAG,IAAI,OAAO,EAA6B,CAAC;AAE3E,MAAM,CAAC,IAAM,aAAa,GAAG,UAC5B,YAAoB,EACpB,QAAW,EACX,SAA0B,EAC1B,oBAA0C,EAC1C,8BAGoC;IAEpC,IAAM,aAAa,GAAG,SAAS,CAAC,aAAa,CAAC;IAC9C,IAAM,gBAAgB,GAAG,8BAA8B,CACtD,SAAS,CAAC,IAAI,EACd,YAAY,CACZ,CAAC;IAEF,IAAM,QAAQ,GAAG,aAAa,CAAC,YAAY,CAAC,CAAC;IAC7C,IAAM,MAAM,GAIN,EAAE,CAAC;IAET,IAAM,WAAW,GAAG,gBAAgB,CAAC,MAAM,CAAC,QAAQ,EAAE,UAAA,aAAa;QAClE,QAAQ,CAAC,aAAa,CAAC,OAAO,CAAC,UAAC,KAAmB;YAClD,IAAM,gBAAgB,GAAG,8BAA8B,CACtD,SAAS,CAAC,IAAI,EACd,KAAK,CAAC,SAAS,CACf,CAAC;YAEF,QAAQ,KAAK,CAAC,YAAY,EAAE;gBAC3B,KAAK,SAAS;oBACb,IAAI,QAAQ,CAAC,KAAK,CAAC,SAAS,CAAC,EAAE;wBAC9B,IAAI,aAAa,SAAG,CAAC;wBACrB,IAAI;4BACH,aAAa,GAAG,oBAAoB,CACnC,gBAAgB,EAChB,QAAQ,CAAC,KAAK,CAAC,SAAS,CAAC,CACzB,CAAC;yBACF;wBAAC,OAAO,KAAK,EAAE;4BACf,aAAa;4BACb,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;yBACnB;wBAED,MAAM,CAAC,IAAI,CAAC;4BACX,SAAS,EAAE,KAAK,CAAC,SAAS;4BAC1B,IAAI,EAAE,QAAQ,CAAC,KAAK,CAAC,SAAS,CAAC;4BAC/B,QAAQ,EAAE,aAAa;yBACvB,CAAC,CAAC;wBAEH,yDAAyD;wBACzD,iFAAiF;wBACjF,iCAAiC;wBACjC,qDAAqD;wBACrD,IAAI,KAAK,CAAC,UAAU,EAAE;4BACf,aAAc,CAAC,KAAK,CAAC,UAAU,CAAC,GAAqB,CAC1D,aAAa,CAAC,KAAK,CAAC,SAAS,CAAC,CAC7B,CAAC,EAAE,CAAC;4BACN,OAAO,aAAa,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC;yBACtC;6BAAM;4BACA,aAAc,CAAC,KAAK,CAAC,SAAS,CAAC,GAAqB,CACzD,aAAa,CAAC,KAAK,CAAC,SAAS,CAAC,CAC7B,CAAC,EAAE,CAAC;yBACN;qBACD;oBAED,MAAM;gBACP,KAAK,YAAY;oBAChB,IAAI,QAAQ,CAAC,KAAK,CAAC,SAAS,CAAC,EAAE;wBAC9B,IAAI,aAAa,SAAG,CAAC;wBACrB,IAAI;4BACH,aAAa,GAAG,oBAAoB,CACnC,gBAAgB,EAChB,QAAQ,CAAC,KAAK,CAAC,SAAS,CAAC,CACzB,CAAC;yBACF;wBAAC,OAAO,KAAK,EAAE;4BACf,aAAa;yBACb;wBAED,IAAM,SAAS,GAA2B,CACzC,aAAa,CAAC,KAAK,CAAC,SAAS,CAAC,CAC7B,CAAC,QAAQ,CAAC;wBAEZ,IAAI,CAAC,SAAS,EAAE;4BACf,MAAM,CAAC,IAAI,CAAC;gCACX,SAAS,EAAE,KAAK,CAAC,SAAS;gCAC1B,IAAI,EAAE,QAAQ,CAAC,KAAK,CAAC,SAAS,CAAC;gCAC/B,QAAQ,EAAE,aAAa;6BACvB,CAAC,CAAC;yBACH;qBACD;oBAED,IAAI,aAAa,CAAC,KAAK,CAAC,SAAS,CAAC,EAAE;wBAC7B,aAAc,CAAC,KAAK,CAAC,UAAU,CAAC,GAAqB,CAC1D,aAAa,CAAC,KAAK,CAAC,SAAS,CAAC,CAC7B,CAAC,EAAE,CAAC;wBACN,OAAO,aAAa,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC;qBACtC;oBAED,MAAM;gBACP,KAAK,UAAU;oBACd,sBAAsB;oBACtB,MAAM;gBACP;oBACC,eAAe,CAAC,KAAK,CAAC,YAAY,CAAC,CAAC;oBACpC,MAAM;aACP;QACF,CAAC,CAAC,CAAC;IACJ,CAAC,CAAC,CAAC;IAEH,MAAM,CAAC,OAAO,CAAC;QACd,SAAS,EAAE,YAAY;QACvB,IAAI,EAAE,WAAW;QACjB,QAAQ,EAAE,WAAW;KACrB,CAAC,CAAC;IAEH,IAAI,CAAC,yBAAyB,CAAC,GAAG,CAAC,SAAS,CAAC,EAAE;QAC9C,yBAAyB,CAAC,GAAG,CAC5B,SAAS,EACT,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,wBAAwB,CAAC,IAAI,EAAE,CAAC,CACrD,CAAC;KACF;IAED,IAAM,YAAY,GAAG,yBAAyB,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;IAE9D,MAAM,CAAC,IAAI,CAAC,UAAC,CAAC,EAAE,CAAC;QAChB,OAAO,CACN,YAAY,CAAC,OAAO,CAAC,CAAC,CAAC,SAAS,CAAC,GAAG,YAAY,CAAC,OAAO,CAAC,CAAC,CAAC,SAAS,CAAC,CACrE,CAAC;IACH,CAAC,CAAC,CAAC;IAEH,OAAO,MAAM,CAAC;AACf,CAAC,CAAC;AAEF,MAAM,CAAC,IAAM,QAAQ,GAAG,UAAC,GAAmB,EAAE,GAAW;IACxD,IAAI,KAAK,GAAG,EAAE,CAAC;IACf,GAAG,CAAC,IAAI,CAAC,UAAC,OAAqB;QAC9B,IAAI,OAAO,CAAC,SAAS,KAAK,GAAG,EAAE;YAC9B,KAAK,GAAG,OAAO,CAAC,UAAU,CAAC;SAC3B;IACF,CAAC,CAAC,CAAC;IACH,OAAO,KAAK,CAAC;AACd,CAAC,CAAC;AAEF,MAAM,CAAC,IAAM,uBAAuB,GAAG,UACtC,OAAiB,EACjB,GAAW;IAEX,IAAM,KAAK,GAAG,OAAO,CAAC,IAAI,CAAC,UAAA,GAAG,IAAI,OAAA,GAAG,KAAK,GAAG,EAAX,CAAW,CAAC,CAAC;IAC/C,OAAO,KAAK,CAAC;AACd,CAAC,CAAC;AAEF,MAAM,CAAN,IAAY,UAKX;AALD,WAAY,UAAU;IACrB,qCAAuB,CAAA;IACvB,2BAAa,CAAA;IACb,2BAAa,CAAA;IACb,iCAAmB,CAAA;AACpB,CAAC,EALW,UAAU,KAAV,UAAU,QAKrB;AAED,IAAM,SAAS,GAAG,UAAU,CAAC,SAAS,CAAC;AACvC,IAAM,IAAI,GAAG,UAAU,CAAC,IAAI,CAAC;AAC7B,IAAM,IAAI,GAAG,UAAU,CAAC,IAAI,CAAC;AAC7B,IAAM,OAAO,GAAG,UAAU,CAAC,OAAO,CAAC;AAEnC,OAAO,EAAE,IAAI,EAAE,IAAI,EAAE,OAAO,EAAE,SAAS,EAAE,CAAC;AAE1C,IAAI,sBAAsB,CAAC;AAE3B,MAAM,CAAC,IAAM,aAAa,GAAG;IAC5B,OAAO,IAAI,OAAO,CAAC,UAAA,OAAO;QACzB,IAAM,MAAM,GAAG,IAAI,EAAE,CAAC;QACtB,IAAI,EAAE,CAAC;QAEP,IAAM,SAAS,GAAG;YACjB,sBAAsB,GAAG,KAAK,CAAC;YAE/B,OAAO,CAAC,IAAI,CAAC,CAAC;QACf,CAAC,CAAC;QAEF,IAAM,YAAY,GAAG;;;;6BAChB,CAAA,EAAE,IAAI,EAAE,CAAC,MAAM,IAAI,OAAO,EAAE,CAAC,MAAM,CAAC,KAAK,KAAK,UAAU,CAAA,EAAxD,wBAAwD;wBAC3D,qBAAM,EAAE,CAAC,MAAM,CAAC,KAAK,EAAE,EAAA;;wBAAvB,SAAuB,CAAC;;4BAGzB,qBAAM,SAAS,CAAC,cAAc,CAAC,MAAM,CAAC,EAAA;;wBAAtC,SAAsC,CAAC;wBAEvC,sBAAsB,GAAG,IAAI,CAAC;wBAE9B,sBAAO,OAAO,CAAC,KAAK,CAAC,EAAC;;;aACtB,CAAC;QAEF,IAAI,sBAAsB,KAAK,IAAI,EAAE;YACpC,OAAO,YAAY,EAAE,CAAC;SACtB;QAED,IAAI,sBAAsB,KAAK,KAAK,EAAE;YACrC,OAAO,SAAS,EAAE,CAAC;SACnB;QAED,IAAI,SAAS,KAAK,IAAI;YAAE,OAAO,SAAS,EAAE,CAAC;QAE3C,EAAE,GAAG,SAAS,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QAC5B,EAAE,CAAC,OAAO,GAAG,SAAS,CAAC;QACvB,EAAE,CAAC,SAAS,GAAG,YAAY,CAAC;IAC7B,CAAC,CAAC,CAAC;AACJ,CAAC,CAAC;AAEF,IAAM,WAAW,GAAG,UAAC,MAAc;IAClC,OAAO,MAAM,CAAC,IAAI,CAAC,IAAI,SAAS,EAAE,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,QAAQ,EAAE,EAAE,KAAK,CAAC,CAAC;AACtE,CAAC,CAAC;AACF,IAAM,IAAI,GAAG,cAAM,OAAA,WAAW,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,GAAG,IAAI,EAAlC,CAAkC,CAAC;AACtD,MAAM,UAAU,oBAAoB,CAAC,IAAa;IACjD,IAAM,IAAI,GAAG,gBAAgB,CAAC,IAAI,CAAC,CAAC;IAEpC,OAAO;QACN,OAAO,IAAI,CAAC,IAAI,CAAC,CAAC;IACnB,CAAC,CAAC;AACH,CAAC;AAED;;;;;;;;;;;GAWG;AACH,MAAM,UAAU,MAAM;IACrB,IACC,OAAO,WAAW,KAAK,WAAW;QAClC,WAAW;QACX,OAAO,WAAW,CAAC,GAAG,KAAK,UAAU,EACpC;QACD,OAAO,WAAW,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC,CAAC,qBAAqB;KACnD;SAAM;QACN,OAAO,IAAI,CAAC,GAAG,EAAE,CAAC;KAClB;AACF,CAAC;AAED,MAAM,UAAU,mBAAmB,CAClC,cAAsC;IAEtC,OAAO,SAAS,eAAe,CAAC,CAAC,EAAE,CAAC;;;YACnC,6DAA6D;YAC7D,+BAA+B;YAC/B,KAAwB,IAAA,mBAAA,SAAA,cAAc,CAAA,8CAAA,0EAAE;gBAAnC,IAAM,SAAS,2BAAA;gBACX,IAAA,uBAAK,EAAE,uCAAa,CAAe;gBAE3C,8CAA8C;gBAC9C,IAAM,cAAc,GAAG,aAAa,KAAK,aAAa,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;gBAE1E,IAAI,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,KAAK,CAAC,EAAE;oBACxB,OAAO,CAAC,CAAC,GAAG,cAAc,CAAC;iBAC3B;gBAED,IAAI,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,KAAK,CAAC,EAAE;oBACxB,OAAO,CAAC,GAAG,cAAc,CAAC;iBAC1B;aACD;;;;;;;;;QAED,OAAO,CAAC,CAAC;IACV,CAAC,CAAC;AACH,CAAC;AAED,4BAA4B;AAC5B,gEAAgE;AAChE,iCAAiC;AACjC,+DAA+D;AAC/D,4DAA4D;AAC5D,MAAM,UAAU,WAAW,CAC1B,IAAS,EACT,IAAS,EACT,OAAwB;;IAAxB,wBAAA,EAAA,eAAwB;IAExB,IAAI,CAAC,GAAG,IAAI,CAAC;IACb,IAAI,CAAC,GAAG,IAAI,CAAC;IAEb,IAAM,cAAc,GAAG,UAAC,EAAE,EAAE,EAAE;QAC7B,OAAO,CACN,CAAC,EAAE,KAAK,SAAS,IAAI,EAAE,KAAK,IAAI,CAAC,IAAI,CAAC,EAAE,KAAK,SAAS,IAAI,EAAE,KAAK,IAAI,CAAC,CACtE,CAAC;IACH,CAAC,CAAC;IAEF,iEAAiE;IACjE,IACC,CAAC,CAAC,YAAY,MAAM,IAAI,CAAC,CAAC,CAAC,YAAY,MAAM,CAAC,CAAC;QAC/C,CAAC,CAAC,CAAC,CAAC,YAAY,MAAM,CAAC,IAAI,CAAC,YAAY,MAAM,CAAC,EAC9C;QACD,OAAO,KAAK,CAAC;KACb;IAED,0BAA0B;IAC1B,IAAI,CAAC,CAAC,CAAC,YAAY,MAAM,CAAC,EAAE;QAC3B,IAAI,OAAO,IAAI,cAAc,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE;YACpC,OAAO,IAAI,CAAC;SACZ;QAED,OAAO,CAAC,KAAK,CAAC,CAAC;KACf;IAED,+BAA+B;IAC/B,IACC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;QACvC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,EACtC;QACD,OAAO,KAAK,CAAC;KACb;IAED,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC,YAAY,GAAG,EAAE;QACzC,CAAC,YAAO,CAAC,CAAC,CAAC;QACX,CAAC,YAAO,CAAC,CAAC,CAAC;KACX;IAED,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC,YAAY,GAAG,EAAE;QACzC,CAAC,GAAG,MAAM,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC;QAC1B,CAAC,GAAG,MAAM,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC;KAC1B;IAED,IAAM,KAAK,GAAG,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAC7B,IAAM,KAAK,GAAG,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAE7B,8GAA8G;IAC9G,IAAI,KAAK,CAAC,MAAM,KAAK,KAAK,CAAC,MAAM,IAAI,CAAC,CAAC,OAAO,IAAI,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,EAAE;QACpE,OAAO,KAAK,CAAC;KACb;IAED,yCAAyC;IACzC,uEAAuE;IACvE,mCAAmC;IACnC,IAAM,IAAI,GAAG,KAAK,CAAC,MAAM,IAAI,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC;;QAE1D,KAAkB,IAAA,SAAA,SAAA,IAAI,CAAA,0BAAA,4CAAE;YAAnB,IAAM,GAAG,iBAAA;YACb,IAAM,IAAI,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC;YACpB,IAAM,IAAI,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC;YAEpB,IAAI,CAAC,WAAW,CAAC,IAAI,EAAE,IAAI,EAAE,OAAO,CAAC,EAAE;gBACtC,OAAO,KAAK,CAAC;aACb;SACD;;;;;;;;;IAED,OAAO,IAAI,CAAC;AACb,CAAC;AAED,MAAM,CAAC,IAAM,SAAS,GAAG,UAAC,GAAW;IACpC,OAAO,CAAC,CAAC,mDAAmD,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;AACxE,CAAC,CAAC;AAEF,MAAM,CAAC,IAAM,SAAS,GAAG,UAAC,GAAW;IACpC,OAAO,CAAC,CAAC,6DAA6D,CAAC,IAAI,CAC1E,GAAG,CACH,CAAC;AACH,CAAC,CAAC;AAEF,MAAM,CAAC,IAAM,aAAa,GAAG,UAAC,GAAW;IACxC,OAAO,CAAC,CAAC,+EAA+E,CAAC,IAAI,CAC5F,GAAG,CACH,CAAC;AACH,CAAC,CAAC;AAEF,MAAM,CAAC,IAAM,cAAc,GAAG,UAAC,GAAW;IACzC,OAAO,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC;AACpC,CAAC,CAAC;AAEF,MAAM,CAAC,IAAM,UAAU,GAAG,UAAC,GAAW;IACrC,OAAO,CAAC,CAAC,sIAAsI,CAAC,IAAI,CACnJ,GAAG,CACH,CAAC;AACH,CAAC,CAAC;AAEF,MAAM,CAAC,IAAM,SAAS,GAAG,UAAC,GAAW;IACpC,IAAI;QACH,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;QAChB,OAAO,IAAI,CAAC;KACZ;IAAC,WAAM;QACP,OAAO,KAAK,CAAC;KACb;AACF,CAAC,CAAC;AAEF,MAAM,CAAC,IAAM,QAAQ,GAAG,UAAC,GAAW;IACnC,IAAI;QACH,OAAO,CAAC,CAAC,IAAI,GAAG,CAAC,GAAG,CAAC,CAAC;KACtB;IAAC,WAAM;QACP,OAAO,KAAK,CAAC;KACb;AACF,CAAC,CAAC;AAEF,MAAM,CAAC,IAAM,UAAU,GAAG,UAAC,GAAW;IACrC,OAAO,CAAC,CAAC,iBAAiB,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;AACtC,CAAC,CAAC;AAEF,MAAM,CAAC,IAAM,cAAc,GAAG,UAAC,GAAW;IACzC,OAAO,CAAC,CAAC,sqCAAsqC,CAAC,IAAI,CACnrC,GAAG,CACH,CAAC;AACH,CAAC,CAAC;AAEF;IAIC;QACC,IAAM,IAAI,GAAG,IAAI,CAAC;QAClB,IAAI,CAAC,OAAO,GAAG,IAAI,OAAO,CACzB,UAAC,OAAsD,EAAE,MAAM;YAC9D,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;YACvB,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;QACtB,CAAC,CACD,CAAC;IACH,CAAC;IACF,sBAAC;AAAD,CAAC,AAbD,IAaC;;AAED;IAcC,kCAAY,OAAwC;QAb5C,iBAAY,GAAG,IAAI,eAAe,EAAE,CAAC;QAIrC,iBAAY,GAAG,KAAK,CAAC;QACrB,aAAQ,GAAG,cAAO,CAAC,CAAC;QAEpB,wBAAmB,GAAG,UAC7B,GAAsC;YAAtC,oBAAA,EAAA,sCAAsC;YAEtC,MAAM,IAAI,KAAK,CAAC,GAAG,CAAC,CAAC;QACtB,CAAC,CAAC;QAGD,IAAI,CAAC,QAAQ,GAAG,OAAO,CAAC,QAAQ,CAAC;QACjC,IAAI,CAAC,YAAY,GAAG,OAAO,CAAC,YAAY,IAAI,IAAI,CAAC,mBAAmB,CAAC;QACrE,IAAI,CAAC,WAAW,GAAG,OAAO,CAAC,WAAW,IAAI,IAAI,CAAC;IAChD,CAAC;IAEO,6CAAU,GAAlB;QAAA,iBAMC;QALA,IAAI,CAAC,YAAY,GAAG,IAAI,OAAO,CAAC,UAAC,OAAO,EAAE,MAAM;YAC/C,KAAI,CAAC,KAAK,GAAG,UAAU,CAAC;gBACvB,OAAO,CAAC,4BAA4B,CAAC,KAAK,CAAC,CAAC;YAC7C,CAAC,EAAE,KAAI,CAAC,WAAW,CAAC,CAAC;QACtB,CAAC,CAAC,CAAC;IACJ,CAAC;IAEa,+CAAY,GAA1B;;;;;;;wBAGE,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC;wBACzB,IAAI,CAAC,UAAU,EAAE,CAAC;wBACT,qBAAM,OAAO,CAAC,IAAI,CAAC;gCAC3B,IAAI,CAAC,YAAY;gCACjB,IAAI,CAAC,YAAY,CAAC,OAAO;6BACzB,CAAC,EAAA;;wBAHF,MAAM,GAAG,SAGP,CAAC;wBACH,IAAI,CAAC,QAAQ,EAAE,CAAC;;;;wBAEhB,IAAI,CAAC,YAAY,CAAC,KAAG,CAAC,CAAC;;;wBAEvB,0BAA0B;wBAC1B,IAAI,CAAC,KAAK,EAAE,CAAC;wBACb,IAAI,CAAC,YAAY,GAAG,KAAK,CAAC;wBAC1B,IAAI,CAAC,YAAY,GAAG,IAAI,eAAe,EAAE,CAAC;wBAE1C,sBAAO,MAAM,EAAC;;;;;KAEf;IAEM,wCAAK,GAAZ;QACC,IAAI,CAAC,IAAI,CAAC,YAAY;YAAE,IAAI,CAAC,YAAY,EAAE,CAAC;IAC7C,CAAC;IAEM,wCAAK,GAAZ;QACC,YAAY,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IAC1B,CAAC;IAEM,0CAAO,GAAd;QACC,IAAI,CAAC,YAAY,CAAC,OAAO,CAAC,4BAA4B,CAAC,KAAK,CAAC,CAAC;IAC/D,CAAC;IACF,+BAAC;AAAD,CAAC,AA7DD,IA6DC;;AAED;;;;;;;;;;;;;;;;GAgBG;AACH,MAAM,UAAU,YAAY,CAC3B,cAAiB,EACjB,UAAmB,EACnB,UAAmB;IAEnB,IAAM,cAAc,GAAG,UAAU,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC;IACrD,IAAI,OAAgB,CAAC;IACrB,OAAO,CACN,cAAc,EACd,UAAA,KAAK;QACJ,YAAY,CAAC,KAAK,EAAE,cAAc,CAAC,CAAC;IACrC,CAAC,EACD,UAAA,CAAC;QACA,OAAO,GAAG,CAAC,CAAC;IACb,CAAC,CACD,CAAC;IACF,OAAO,OAAO,CAAC;AAChB,CAAC"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@aws-amplify/datastore",
|
|
3
|
-
"version": "3.11.
|
|
3
|
+
"version": "3.11.4-geo.13+ca2a11b5b",
|
|
4
4
|
"description": "AppSyncLocal support for aws-amplify",
|
|
5
5
|
"main": "./lib/index.js",
|
|
6
6
|
"module": "./lib-esm/index.js",
|
|
@@ -43,16 +43,16 @@
|
|
|
43
43
|
"devDependencies": {
|
|
44
44
|
"@react-native-community/netinfo": "4.7.0",
|
|
45
45
|
"@types/uuid": "3.4.5",
|
|
46
|
-
"dexie": "3.2.
|
|
46
|
+
"dexie": "3.2.2",
|
|
47
47
|
"dexie-export-import": "1.0.3",
|
|
48
48
|
"fake-indexeddb": "3.0.0"
|
|
49
49
|
},
|
|
50
50
|
"dependencies": {
|
|
51
|
-
"@aws-amplify/api": "4.0.
|
|
52
|
-
"@aws-amplify/auth": "4.5.
|
|
53
|
-
"@aws-amplify/core": "4.5.
|
|
54
|
-
"@aws-amplify/pubsub": "4.4.
|
|
55
|
-
"amazon-cognito-identity-js": "5.2.
|
|
51
|
+
"@aws-amplify/api": "4.0.43-geo.13+ca2a11b5b",
|
|
52
|
+
"@aws-amplify/auth": "4.5.7-geo.13+ca2a11b5b",
|
|
53
|
+
"@aws-amplify/core": "4.5.7-geo.13+ca2a11b5b",
|
|
54
|
+
"@aws-amplify/pubsub": "4.4.4-geo.13+ca2a11b5b",
|
|
55
|
+
"amazon-cognito-identity-js": "5.2.10-geo.20+ca2a11b5b",
|
|
56
56
|
"idb": "5.0.6",
|
|
57
57
|
"immer": "9.0.6",
|
|
58
58
|
"ulid": "2.3.0",
|
|
@@ -112,5 +112,5 @@
|
|
|
112
112
|
"lib-esm"
|
|
113
113
|
]
|
|
114
114
|
},
|
|
115
|
-
"gitHead": "
|
|
115
|
+
"gitHead": "ca2a11b5bc987e71ce3344058a4886bf067cb17b"
|
|
116
116
|
}
|
|
@@ -43,7 +43,6 @@ import {
|
|
|
43
43
|
SchemaModel,
|
|
44
44
|
SchemaNamespace,
|
|
45
45
|
SchemaNonModel,
|
|
46
|
-
InternalSubscriptionMessage,
|
|
47
46
|
SubscriptionMessage,
|
|
48
47
|
DataStoreSnapshot,
|
|
49
48
|
SyncConflict,
|
|
@@ -70,6 +69,8 @@ import {
|
|
|
70
69
|
registerNonModelClass,
|
|
71
70
|
sortCompareFunction,
|
|
72
71
|
DeferredCallbackResolver,
|
|
72
|
+
validatePredicate,
|
|
73
|
+
mergePatches,
|
|
73
74
|
} from '../util';
|
|
74
75
|
|
|
75
76
|
setAutoFreeze(true);
|
|
@@ -483,9 +484,21 @@ const createModelClass = <T extends PersistentModel>(
|
|
|
483
484
|
p => (patches = p)
|
|
484
485
|
);
|
|
485
486
|
|
|
486
|
-
|
|
487
|
-
|
|
488
|
-
|
|
487
|
+
const hasExistingPatches = modelPatchesMap.has(source);
|
|
488
|
+
if (patches.length || hasExistingPatches) {
|
|
489
|
+
if (hasExistingPatches) {
|
|
490
|
+
const [existingPatches, existingSource] = modelPatchesMap.get(source);
|
|
491
|
+
const mergedPatches = mergePatches(
|
|
492
|
+
existingSource,
|
|
493
|
+
existingPatches,
|
|
494
|
+
patches
|
|
495
|
+
);
|
|
496
|
+
modelPatchesMap.set(model, [mergedPatches, existingSource]);
|
|
497
|
+
checkReadOnlyPropertyOnUpdate(mergedPatches, modelDefinition);
|
|
498
|
+
} else {
|
|
499
|
+
modelPatchesMap.set(model, [patches, source]);
|
|
500
|
+
checkReadOnlyPropertyOnUpdate(patches, modelDefinition);
|
|
501
|
+
}
|
|
489
502
|
}
|
|
490
503
|
|
|
491
504
|
return model;
|
|
@@ -1144,24 +1157,32 @@ class DataStore {
|
|
|
1144
1157
|
handle = this.storage
|
|
1145
1158
|
.observe(modelConstructor, predicate)
|
|
1146
1159
|
.filter(({ model }) => namespaceResolver(model) === USER)
|
|
1147
|
-
.
|
|
1148
|
-
|
|
1149
|
-
//
|
|
1150
|
-
//
|
|
1151
|
-
//
|
|
1152
|
-
|
|
1153
|
-
|
|
1154
|
-
|
|
1155
|
-
|
|
1156
|
-
|
|
1157
|
-
|
|
1158
|
-
|
|
1159
|
-
|
|
1160
|
-
|
|
1161
|
-
|
|
1162
|
-
|
|
1163
|
-
|
|
1164
|
-
|
|
1160
|
+
.subscribe({
|
|
1161
|
+
next: async item => {
|
|
1162
|
+
// the `element` doesn't necessarily contain all item details or
|
|
1163
|
+
// have related records attached consistently with that of a query()
|
|
1164
|
+
// result item. for consistency, we attach them here.
|
|
1165
|
+
|
|
1166
|
+
let message = item;
|
|
1167
|
+
|
|
1168
|
+
// as lnog as we're not dealing with a DELETE, we need to fetch a fresh
|
|
1169
|
+
// item from storage to ensure it's fully populated.
|
|
1170
|
+
if (item.opType !== 'DELETE') {
|
|
1171
|
+
const freshElement = await this.query(
|
|
1172
|
+
item.model,
|
|
1173
|
+
item.element.id
|
|
1174
|
+
);
|
|
1175
|
+
message = {
|
|
1176
|
+
...message,
|
|
1177
|
+
element: freshElement as T,
|
|
1178
|
+
};
|
|
1179
|
+
}
|
|
1180
|
+
|
|
1181
|
+
observer.next(message as SubscriptionMessage<T>);
|
|
1182
|
+
},
|
|
1183
|
+
error: err => observer.error(err),
|
|
1184
|
+
complete: () => observer.complete(),
|
|
1185
|
+
});
|
|
1165
1186
|
})();
|
|
1166
1187
|
|
|
1167
1188
|
return () => {
|
|
@@ -1188,7 +1209,18 @@ class DataStore {
|
|
|
1188
1209
|
const itemsChanged = new Map<string, T>();
|
|
1189
1210
|
let deletedItemIds: string[] = [];
|
|
1190
1211
|
let handle: ZenObservable.Subscription;
|
|
1191
|
-
|
|
1212
|
+
let predicate: ModelPredicate<T>;
|
|
1213
|
+
|
|
1214
|
+
/**
|
|
1215
|
+
* As the name suggests, this geneates a snapshot in the form of
|
|
1216
|
+
* `{items: T[], isSynced: boolean}`
|
|
1217
|
+
* and sends it to the observer.
|
|
1218
|
+
*
|
|
1219
|
+
* SIDE EFFECT: The underlying generation and emission methods may touch:
|
|
1220
|
+
* `items`, `itemsChanged`, and `deletedItemIds`.
|
|
1221
|
+
*
|
|
1222
|
+
* Refer to `generateSnapshot` and `emitSnapshot` for more details.
|
|
1223
|
+
*/
|
|
1192
1224
|
const generateAndEmitSnapshot = (): void => {
|
|
1193
1225
|
const snapshot = generateSnapshot();
|
|
1194
1226
|
emitSnapshot(snapshot);
|
|
@@ -1205,6 +1237,28 @@ class DataStore {
|
|
|
1205
1237
|
const { sort } = options || {};
|
|
1206
1238
|
const sortOptions = sort ? { sort } : undefined;
|
|
1207
1239
|
|
|
1240
|
+
const modelDefinition = getModelDefinition(model);
|
|
1241
|
+
if (isQueryOne(criteria)) {
|
|
1242
|
+
predicate = ModelPredicateCreator.createForId<T>(
|
|
1243
|
+
modelDefinition,
|
|
1244
|
+
criteria
|
|
1245
|
+
);
|
|
1246
|
+
} else {
|
|
1247
|
+
if (isPredicatesAll(criteria)) {
|
|
1248
|
+
// Predicates.ALL means "all records", so no predicate (undefined)
|
|
1249
|
+
predicate = undefined;
|
|
1250
|
+
} else {
|
|
1251
|
+
predicate = ModelPredicateCreator.createFromExisting(
|
|
1252
|
+
modelDefinition,
|
|
1253
|
+
criteria
|
|
1254
|
+
);
|
|
1255
|
+
}
|
|
1256
|
+
}
|
|
1257
|
+
|
|
1258
|
+
const { predicates, type: predicateGroupType } =
|
|
1259
|
+
ModelPredicateCreator.getPredicates(predicate, false) || {};
|
|
1260
|
+
const hasPredicate = !!predicates;
|
|
1261
|
+
|
|
1208
1262
|
(async () => {
|
|
1209
1263
|
try {
|
|
1210
1264
|
// first, query and return any locally-available records
|
|
@@ -1212,34 +1266,54 @@ class DataStore {
|
|
|
1212
1266
|
items.set(item.id, item)
|
|
1213
1267
|
);
|
|
1214
1268
|
|
|
1215
|
-
//
|
|
1216
|
-
|
|
1217
|
-
|
|
1218
|
-
|
|
1219
|
-
|
|
1220
|
-
|
|
1221
|
-
|
|
1222
|
-
|
|
1223
|
-
|
|
1224
|
-
|
|
1225
|
-
|
|
1226
|
-
|
|
1227
|
-
|
|
1228
|
-
|
|
1229
|
-
|
|
1269
|
+
// Observe the model and send a stream of updates (debounced).
|
|
1270
|
+
// We need to post-filter results instead of passing criteria through
|
|
1271
|
+
// to have visibility into items that move from in-set to out-of-set.
|
|
1272
|
+
// We need to explicitly remove those items from the existing snapshot.
|
|
1273
|
+
handle = this.observe(model).subscribe(
|
|
1274
|
+
({ element, model, opType }) => {
|
|
1275
|
+
if (
|
|
1276
|
+
hasPredicate &&
|
|
1277
|
+
!validatePredicate(element, predicateGroupType, predicates)
|
|
1278
|
+
) {
|
|
1279
|
+
if (
|
|
1280
|
+
opType === 'UPDATE' &&
|
|
1281
|
+
(items.has(element.id) || itemsChanged.has(element.id))
|
|
1282
|
+
) {
|
|
1283
|
+
// tracking as a "deleted item" will include the item in
|
|
1284
|
+
// page limit calculations and ensure it is removed from the
|
|
1285
|
+
// final items collection, regardless of which collection(s)
|
|
1286
|
+
// it is currently in. (I mean, it could be in both, right!?)
|
|
1287
|
+
deletedItemIds.push(element.id);
|
|
1288
|
+
} else {
|
|
1289
|
+
// ignore updates for irrelevant/filtered items.
|
|
1290
|
+
return;
|
|
1291
|
+
}
|
|
1292
|
+
}
|
|
1293
|
+
|
|
1294
|
+
// Flag items which have been recently deleted
|
|
1295
|
+
// NOTE: Merging of separate operations to the same model instance is handled upstream
|
|
1296
|
+
// in the `mergePage` method within src/sync/merger.ts. The final state of a model instance
|
|
1297
|
+
// depends on the LATEST record (for a given id).
|
|
1298
|
+
if (opType === 'DELETE') {
|
|
1299
|
+
deletedItemIds.push(element.id);
|
|
1300
|
+
} else {
|
|
1301
|
+
itemsChanged.set(element.id, element);
|
|
1302
|
+
}
|
|
1230
1303
|
|
|
1231
|
-
|
|
1304
|
+
const isSynced = this.sync?.getModelSyncedStatus(model) ?? false;
|
|
1232
1305
|
|
|
1233
|
-
|
|
1234
|
-
|
|
1306
|
+
const limit =
|
|
1307
|
+
itemsChanged.size - deletedItemIds.length >= this.syncPageSize;
|
|
1235
1308
|
|
|
1236
|
-
|
|
1237
|
-
|
|
1238
|
-
|
|
1309
|
+
if (limit || isSynced) {
|
|
1310
|
+
limitTimerRace.resolve();
|
|
1311
|
+
}
|
|
1239
1312
|
|
|
1240
|
-
|
|
1241
|
-
|
|
1242
|
-
|
|
1313
|
+
// kicks off every subsequent race as results sync down
|
|
1314
|
+
limitTimerRace.start();
|
|
1315
|
+
}
|
|
1316
|
+
);
|
|
1243
1317
|
|
|
1244
1318
|
// returns a set of initial/locally-available results
|
|
1245
1319
|
generateAndEmitSnapshot();
|
|
@@ -1248,7 +1322,12 @@ class DataStore {
|
|
|
1248
1322
|
}
|
|
1249
1323
|
})();
|
|
1250
1324
|
|
|
1251
|
-
|
|
1325
|
+
/**
|
|
1326
|
+
* Combines the `items`, `itemsChanged`, and `deletedItemIds` collections into
|
|
1327
|
+
* a snapshot in the form of `{ items: T[], isSynced: boolean}`.
|
|
1328
|
+
*
|
|
1329
|
+
* SIDE EFFECT: The shared `items` collection is recreated.
|
|
1330
|
+
*/
|
|
1252
1331
|
const generateSnapshot = (): DataStoreSnapshot<T> => {
|
|
1253
1332
|
const isSynced = this.sync?.getModelSyncedStatus(model) ?? false;
|
|
1254
1333
|
const itemsArray = [
|
|
@@ -1272,6 +1351,14 @@ class DataStore {
|
|
|
1272
1351
|
};
|
|
1273
1352
|
};
|
|
1274
1353
|
|
|
1354
|
+
/**
|
|
1355
|
+
* Emits the list of items to the observer.
|
|
1356
|
+
*
|
|
1357
|
+
* SIDE EFFECT: `itemsChanged` and `deletedItemIds` are cleared to prepare
|
|
1358
|
+
* for the next snapshot.
|
|
1359
|
+
*
|
|
1360
|
+
* @param snapshot The generated items data to emit.
|
|
1361
|
+
*/
|
|
1275
1362
|
const emitSnapshot = (snapshot: DataStoreSnapshot<T>): void => {
|
|
1276
1363
|
// send the generated snapshot to the primary subscription
|
|
1277
1364
|
observer.next(snapshot);
|
|
@@ -1281,6 +1368,12 @@ class DataStore {
|
|
|
1281
1368
|
deletedItemIds = [];
|
|
1282
1369
|
};
|
|
1283
1370
|
|
|
1371
|
+
/**
|
|
1372
|
+
* Sorts an `Array` of `T` according to the sort instructions given in the
|
|
1373
|
+
* original `observeQuery()` call.
|
|
1374
|
+
*
|
|
1375
|
+
* @param itemsToSort A array of model type.
|
|
1376
|
+
*/
|
|
1284
1377
|
const sortItems = (itemsToSort: T[]): void => {
|
|
1285
1378
|
const modelDefinition = getModelDefinition(model);
|
|
1286
1379
|
const pagination = this.processPagination(modelDefinition, options);
|
|
@@ -1295,7 +1388,14 @@ class DataStore {
|
|
|
1295
1388
|
}
|
|
1296
1389
|
};
|
|
1297
1390
|
|
|
1298
|
-
|
|
1391
|
+
/**
|
|
1392
|
+
* Force one last snapshot when the model is fully synced.
|
|
1393
|
+
*
|
|
1394
|
+
* This reduces latency for that last snapshot, which will otherwise
|
|
1395
|
+
* wait for the configured timeout.
|
|
1396
|
+
*
|
|
1397
|
+
* @param payload The payload from the Hub event.
|
|
1398
|
+
*/
|
|
1299
1399
|
const hubCallback = ({ payload }): void => {
|
|
1300
1400
|
const { event, data } = payload;
|
|
1301
1401
|
if (
|
|
@@ -399,6 +399,7 @@ export class AsyncStorageAdapter implements Adapter {
|
|
|
399
399
|
const nameSpace = this.namespaceResolver(modelConstructor);
|
|
400
400
|
|
|
401
401
|
const storeName = this.getStorenameForModel(modelConstructor);
|
|
402
|
+
|
|
402
403
|
if (condition) {
|
|
403
404
|
const fromDB = await this.db.get(model.id, storeName);
|
|
404
405
|
|
|
@@ -4,35 +4,65 @@ export type ErrorMap = Partial<{
|
|
|
4
4
|
[key in ErrorType]: (error: Error) => boolean;
|
|
5
5
|
}>;
|
|
6
6
|
|
|
7
|
+
const connectionTimeout = error =>
|
|
8
|
+
/^Connection failed: Connection Timeout/.test(error.message);
|
|
9
|
+
|
|
10
|
+
const serverError = error =>
|
|
11
|
+
/^Error: Request failed with status code 5\d\d/.test(error.message);
|
|
12
|
+
|
|
7
13
|
export const mutationErrorMap: ErrorMap = {
|
|
8
|
-
|
|
14
|
+
BadModel: () => false,
|
|
15
|
+
BadRecord: error => {
|
|
16
|
+
const { message } = error;
|
|
17
|
+
return (
|
|
18
|
+
/^Cannot return \w+ for [\w-_]+ type/.test(message) ||
|
|
19
|
+
/^Variable '.+' has coerced Null value for NonNull type/.test(message)
|
|
20
|
+
); // newly required field, out of date client
|
|
21
|
+
},
|
|
9
22
|
ConfigError: () => false,
|
|
10
|
-
Transient: ()
|
|
11
|
-
Unauthorized:
|
|
23
|
+
Transient: error => connectionTimeout(error) || serverError(error),
|
|
24
|
+
Unauthorized: error =>
|
|
25
|
+
/^Request failed with status code 401/.test(error.message),
|
|
12
26
|
};
|
|
13
27
|
|
|
14
28
|
export const subscriptionErrorMap: ErrorMap = {
|
|
29
|
+
BadModel: () => false,
|
|
15
30
|
BadRecord: () => false,
|
|
16
31
|
ConfigError: () => false,
|
|
17
|
-
Transient:
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
const regex = /Connection failed.+Unauthorized/;
|
|
25
|
-
return regex.test(message);
|
|
32
|
+
Transient: observableError => {
|
|
33
|
+
const error = unwrapObservableError(observableError);
|
|
34
|
+
return connectionTimeout(error) || serverError(error);
|
|
35
|
+
},
|
|
36
|
+
Unauthorized: observableError => {
|
|
37
|
+
const error = unwrapObservableError(observableError);
|
|
38
|
+
return /Connection failed.+Unauthorized/.test(error.message);
|
|
26
39
|
},
|
|
27
40
|
};
|
|
28
41
|
|
|
29
42
|
export const syncErrorMap: ErrorMap = {
|
|
43
|
+
BadModel: () => false,
|
|
30
44
|
BadRecord: error => /^Cannot return \w+ for [\w-_]+ type/.test(error.message),
|
|
31
45
|
ConfigError: () => false,
|
|
32
|
-
Transient: ()
|
|
46
|
+
Transient: error => connectionTimeout(error) || serverError(error),
|
|
33
47
|
Unauthorized: () => false,
|
|
34
48
|
};
|
|
35
49
|
|
|
50
|
+
/**
|
|
51
|
+
* Get the first error reason of an observable.
|
|
52
|
+
* Allows for error maps to be easily applied to observable errors
|
|
53
|
+
*
|
|
54
|
+
* @param observableError an error from ZenObservable subscribe error callback
|
|
55
|
+
*/
|
|
56
|
+
function unwrapObservableError(observableError: any) {
|
|
57
|
+
const {
|
|
58
|
+
error: { errors: [error] } = {
|
|
59
|
+
errors: [],
|
|
60
|
+
},
|
|
61
|
+
} = observableError;
|
|
62
|
+
|
|
63
|
+
return error;
|
|
64
|
+
}
|
|
65
|
+
|
|
36
66
|
export function getMutationErrorType(error: Error): ErrorType {
|
|
37
67
|
return mapErrorToType(mutationErrorMap, error);
|
|
38
68
|
}
|