@aws-amplify/datastore 5.0.4-unstable.136f85f.0 → 5.0.4

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/package.json CHANGED
@@ -1,135 +1,135 @@
1
1
  {
2
- "name": "@aws-amplify/datastore",
3
- "version": "5.0.4-unstable.136f85f.0+136f85f",
4
- "description": "AppSyncLocal support for aws-amplify",
5
- "main": "./dist/cjs/index.js",
6
- "module": "./dist/esm/index.mjs",
7
- "typings": "./dist/esm/index.d.ts",
8
- "react-native": "./src/index.ts",
9
- "publishConfig": {
10
- "access": "public"
11
- },
12
- "sideEffects": [
13
- "./dist/cjs/datastore/datastore.js",
14
- "./dist/esm/datastore/datastore.mjs"
15
- ],
16
- "scripts": {
17
- "test": "npm run lint && jest -w 1 --coverage",
18
- "test:size": "size-limit",
19
- "build-with-test": "npm test && npm run build",
20
- "build:umd": "webpack && webpack --config ./webpack.config.dev.js",
21
- "build:esm-cjs": "rollup -c rollup.config.mjs",
22
- "build:cjs:watch": "rimraf dist/cjs && tsc -m commonjs --outDir dist/cjs --watch",
23
- "build:esm:watch": "rimraf dist/esm && tsc -m esnext --outDir dist/esm --watch",
24
- "build": "npm run clean && npm run build:esm-cjs && npm run build:umd",
25
- "clean": "npm run clean:size && rimraf dist lib lib-esm",
26
- "clean:size": "rimraf dual-publish-tmp tmp*",
27
- "format": "echo \"Not implemented\" && npm run ts-coverage",
28
- "lint": "tslint '{__tests__,src}/**/*.ts' && npm run ts-coverage",
29
- "ts-coverage": "typescript-coverage-report -p ./tsconfig.json -t 92.05"
30
- },
31
- "repository": {
32
- "type": "git",
33
- "url": "https://github.com/aws-amplify/amplify-js.git"
34
- },
35
- "author": "Amazon Web Services",
36
- "license": "Apache-2.0",
37
- "bugs": {
38
- "url": "https://github.com/aws/aws-amplify/issues"
39
- },
40
- "homepage": "https://aws-amplify.github.io/",
41
- "files": [
42
- "dist/cjs",
43
- "dist/esm",
44
- "src"
45
- ],
46
- "dependencies": {
47
- "@aws-amplify/api": "6.0.4-unstable.136f85f.0+136f85f",
48
- "buffer": "4.9.2",
49
- "idb": "5.0.6",
50
- "immer": "9.0.6",
51
- "rxjs": "^7.8.1",
52
- "ulid": "^2.3.0"
53
- },
54
- "peerDependencies": {
55
- "@aws-amplify/core": "6.0.4-unstable.136f85f.0+136f85f"
56
- },
57
- "devDependencies": {
58
- "@aws-amplify/core": "6.0.4-unstable.136f85f.0+136f85f",
59
- "@aws-amplify/react-native": "1.0.4-unstable.136f85f.0+136f85f",
60
- "@rollup/plugin-typescript": "11.1.5",
61
- "@types/uuid-validate": "^0.0.1",
62
- "dexie": "3.2.2",
63
- "dexie-export-import": "1.0.3",
64
- "fake-indexeddb": "3.0.0",
65
- "graphql": "15.8.0",
66
- "rollup": "3.29.4",
67
- "typescript": "5.0.2"
68
- },
69
- "size-limit": [
70
- {
71
- "name": "DataStore (top-level class)",
72
- "path": "./dist/esm/index.mjs",
73
- "import": "{ Amplify, DataStore }",
74
- "limit": "65.25 kB"
75
- }
76
- ],
77
- "jest": {
78
- "globals": {
79
- "ts-jest": {
80
- "diagnostics": true,
81
- "tsConfig": {
82
- "lib": [
83
- "es5",
84
- "es2015",
85
- "dom",
86
- "esnext.asynciterable",
87
- "es2019"
88
- ],
89
- "target": "es5",
90
- "allowJs": true,
91
- "esModuleInterop": true,
92
- "strictNullChecks": false,
93
- "types": [
94
- "@types/jest"
95
- ]
96
- }
97
- }
98
- },
99
- "transform": {
100
- "^.+\\.(js|jsx|ts|tsx)$": "ts-jest"
101
- },
102
- "testRegex": "(/__tests__/.*|\\.(test|spec))\\.(tsx?|jsx?)$",
103
- "testPathIgnorePatterns": [
104
- "__tests__/model.ts",
105
- "__tests__/schema.ts",
106
- "__tests__/helpers/",
107
- "__tests__/commonAdapterTests.ts"
108
- ],
109
- "moduleFileExtensions": [
110
- "ts",
111
- "tsx",
112
- "js",
113
- "json",
114
- "jsx"
115
- ],
116
- "testEnvironment": "jsdom",
117
- "testURL": "http://localhost/",
118
- "coverageThreshold": {
119
- "global": {
120
- "branches": 0,
121
- "functions": 0,
122
- "lines": 0,
123
- "statements": 0
124
- }
125
- },
126
- "coveragePathIgnorePatterns": [
127
- "/node_modules/",
128
- "dist"
129
- ],
130
- "setupFilesAfterEnv": [
131
- "<rootDir>/jest.setup.js"
132
- ]
133
- },
134
- "gitHead": "136f85f9ab52d7738bbe8d792eec7f904af081cc"
2
+ "name": "@aws-amplify/datastore",
3
+ "version": "5.0.4",
4
+ "description": "AppSyncLocal support for aws-amplify",
5
+ "main": "./dist/cjs/index.js",
6
+ "module": "./dist/esm/index.mjs",
7
+ "typings": "./dist/esm/index.d.ts",
8
+ "react-native": "./src/index.ts",
9
+ "publishConfig": {
10
+ "access": "public"
11
+ },
12
+ "sideEffects": [
13
+ "./dist/cjs/datastore/datastore.js",
14
+ "./dist/esm/datastore/datastore.mjs"
15
+ ],
16
+ "scripts": {
17
+ "test": "npm run lint && jest -w 1 --coverage",
18
+ "test:size": "size-limit",
19
+ "build-with-test": "npm test && npm run build",
20
+ "build:umd": "webpack && webpack --config ./webpack.config.dev.js",
21
+ "build:esm-cjs": "rollup -c rollup.config.mjs",
22
+ "build:cjs:watch": "rimraf dist/cjs && tsc -m commonjs --outDir dist/cjs --watch",
23
+ "build:esm:watch": "rimraf dist/esm && tsc -m esnext --outDir dist/esm --watch",
24
+ "build": "npm run clean && npm run build:esm-cjs && npm run build:umd",
25
+ "clean": "npm run clean:size && rimraf dist lib lib-esm",
26
+ "clean:size": "rimraf dual-publish-tmp tmp*",
27
+ "format": "echo \"Not implemented\" && npm run ts-coverage",
28
+ "lint": "tslint '{__tests__,src}/**/*.ts' && npm run ts-coverage",
29
+ "ts-coverage": "typescript-coverage-report -p ./tsconfig.json -t 92.05"
30
+ },
31
+ "repository": {
32
+ "type": "git",
33
+ "url": "https://github.com/aws-amplify/amplify-js.git"
34
+ },
35
+ "author": "Amazon Web Services",
36
+ "license": "Apache-2.0",
37
+ "bugs": {
38
+ "url": "https://github.com/aws/aws-amplify/issues"
39
+ },
40
+ "homepage": "https://aws-amplify.github.io/",
41
+ "files": [
42
+ "dist/cjs",
43
+ "dist/esm",
44
+ "src"
45
+ ],
46
+ "dependencies": {
47
+ "@aws-amplify/api": "6.0.4",
48
+ "buffer": "4.9.2",
49
+ "idb": "5.0.6",
50
+ "immer": "9.0.6",
51
+ "rxjs": "^7.8.1",
52
+ "ulid": "^2.3.0"
53
+ },
54
+ "peerDependencies": {
55
+ "@aws-amplify/core": "^6.0.0"
56
+ },
57
+ "devDependencies": {
58
+ "@aws-amplify/core": "6.0.4",
59
+ "@aws-amplify/react-native": "1.0.4",
60
+ "@rollup/plugin-typescript": "11.1.5",
61
+ "@types/uuid-validate": "^0.0.1",
62
+ "dexie": "3.2.2",
63
+ "dexie-export-import": "1.0.3",
64
+ "fake-indexeddb": "3.0.0",
65
+ "graphql": "15.8.0",
66
+ "rollup": "3.29.4",
67
+ "typescript": "5.0.2"
68
+ },
69
+ "size-limit": [
70
+ {
71
+ "name": "DataStore (top-level class)",
72
+ "path": "./dist/esm/index.mjs",
73
+ "import": "{ Amplify, DataStore }",
74
+ "limit": "65.25 kB"
75
+ }
76
+ ],
77
+ "jest": {
78
+ "globals": {
79
+ "ts-jest": {
80
+ "diagnostics": true,
81
+ "tsConfig": {
82
+ "lib": [
83
+ "es5",
84
+ "es2015",
85
+ "dom",
86
+ "esnext.asynciterable",
87
+ "es2019"
88
+ ],
89
+ "target": "es5",
90
+ "allowJs": true,
91
+ "esModuleInterop": true,
92
+ "strictNullChecks": false,
93
+ "types": [
94
+ "@types/jest"
95
+ ]
96
+ }
97
+ }
98
+ },
99
+ "transform": {
100
+ "^.+\\.(js|jsx|ts|tsx)$": "ts-jest"
101
+ },
102
+ "testRegex": "(/__tests__/.*|\\.(test|spec))\\.(tsx?|jsx?)$",
103
+ "testPathIgnorePatterns": [
104
+ "__tests__/model.ts",
105
+ "__tests__/schema.ts",
106
+ "__tests__/helpers/",
107
+ "__tests__/commonAdapterTests.ts"
108
+ ],
109
+ "moduleFileExtensions": [
110
+ "ts",
111
+ "tsx",
112
+ "js",
113
+ "json",
114
+ "jsx"
115
+ ],
116
+ "testEnvironment": "jsdom",
117
+ "testURL": "http://localhost/",
118
+ "coverageThreshold": {
119
+ "global": {
120
+ "branches": 0,
121
+ "functions": 0,
122
+ "lines": 0,
123
+ "statements": 0
124
+ }
125
+ },
126
+ "coveragePathIgnorePatterns": [
127
+ "/node_modules/",
128
+ "dist"
129
+ ],
130
+ "setupFilesAfterEnv": [
131
+ "<rootDir>/jest.setup.js"
132
+ ]
133
+ },
134
+ "gitHead": "0a6bc80a5e2bbd9b6f0c8815f13e227cc54b7da1"
135
135
  }
@@ -835,8 +835,8 @@ const createModelClass = <T extends PersistentModel>(
835
835
  const id = isInternalModel
836
836
  ? _id
837
837
  : modelDefinition.syncable
838
- ? amplifyUuid()
839
- : ulid();
838
+ ? amplifyUuid()
839
+ : ulid();
840
840
 
841
841
  (<ModelWithIDIdentifier>(<unknown>draft)).id = id;
842
842
  } else if (isIdOptionallyManaged(modelDefinition)) {
@@ -1740,7 +1740,7 @@ class DataStore {
1740
1740
  const initPatchesTuple = initPatches.has(model)
1741
1741
  ? ([initPatches.get(model)!, {}] as [
1742
1742
  Patch[],
1743
- Readonly<Record<string, any>>,
1743
+ Readonly<Record<string, any>>
1744
1744
  ])
1745
1745
  : undefined;
1746
1746
 
@@ -170,8 +170,9 @@ class AsyncStorageDatabase {
170
170
  }
171
171
  }
172
172
 
173
- const existingRecordsMap: [string, string][] =
174
- await this.storage.multiGet(allItemsKeys);
173
+ const existingRecordsMap: [string, string][] = await this.storage.multiGet(
174
+ allItemsKeys
175
+ );
175
176
  const existingRecordsKeys = existingRecordsMap
176
177
  .filter(([, v]) => !!v)
177
178
  .reduce((set, [k]) => set.add(k), new Set<string>());
package/src/sync/index.ts CHANGED
@@ -598,8 +598,9 @@ export class SyncEngine {
598
598
  * merged individually. Otherwise, we can merge them in batches.
599
599
  */
600
600
  await this.storage.runExclusive(async storage => {
601
- const idsInOutbox =
602
- await this.outbox.getModelIds(storage);
601
+ const idsInOutbox = await this.outbox.getModelIds(
602
+ storage
603
+ );
603
604
 
604
605
  const oneByOne: ModelInstanceMetadata[] = [];
605
606
  const page = items.filter(item => {
@@ -247,7 +247,7 @@ class SubscriptionProcessor {
247
247
 
248
248
  start(): [
249
249
  Observable<CONTROL_MSG>,
250
- Observable<[TransformerMutationType, SchemaModel, PersistentModel]>,
250
+ Observable<[TransformerMutationType, SchemaModel, PersistentModel]>
251
251
  ] {
252
252
  this.runningProcesses =
253
253
  this.runningProcesses || new BackgroundProcessManager();
package/src/sync/utils.ts CHANGED
@@ -411,7 +411,7 @@ export function buildGraphQLOperation(
411
411
  }
412
412
 
413
413
  export function createMutationInstanceFromModelOperation<
414
- T extends PersistentModel,
414
+ T extends PersistentModel
415
415
  >(
416
416
  relationships: RelationshipType,
417
417
  modelDefinition: SchemaModel,
package/src/types.ts CHANGED
@@ -454,34 +454,34 @@ export type Identifier<T> =
454
454
 
455
455
  export type IdentifierFields<
456
456
  T extends PersistentModel,
457
- M extends PersistentModelMetaData<T> = never,
457
+ M extends PersistentModelMetaData<T> = never
458
458
  > = (MetadataOrDefault<T, M>['identifier'] extends
459
459
  | ManagedIdentifier<any, any>
460
460
  | OptionallyManagedIdentifier<any, any>
461
461
  ? MetadataOrDefault<T, M>['identifier']['field']
462
462
  : MetadataOrDefault<T, M>['identifier'] extends CompositeIdentifier<
463
- T,
464
- infer B
465
- >
466
- ? B[number] // B[number]
467
- : MetadataOrDefault<T, M>['identifier']['field']) &
463
+ T,
464
+ infer B
465
+ >
466
+ ? B[number] // B[number]
467
+ : MetadataOrDefault<T, M>['identifier']['field']) &
468
468
  string;
469
469
 
470
470
  export type IdentifierFieldsForInit<
471
471
  T extends PersistentModel,
472
- M extends PersistentModelMetaData<T>,
472
+ M extends PersistentModelMetaData<T>
473
473
  > = MetadataOrDefault<T, M>['identifier'] extends
474
474
  | DefaultPersistentModelMetaData
475
475
  | ManagedIdentifier<T, any>
476
476
  ? never
477
477
  : MetadataOrDefault<T, M>['identifier'] extends OptionallyManagedIdentifier<
478
- T,
479
- any
480
- >
481
- ? IdentifierFields<T, M>
482
- : MetadataOrDefault<T, M>['identifier'] extends CompositeIdentifier<T, any>
483
- ? IdentifierFields<T, M>
484
- : never;
478
+ T,
479
+ any
480
+ >
481
+ ? IdentifierFields<T, M>
482
+ : MetadataOrDefault<T, M>['identifier'] extends CompositeIdentifier<T, any>
483
+ ? IdentifierFields<T, M>
484
+ : never;
485
485
 
486
486
  // Instance of model
487
487
  export declare const __modelMeta__: unique symbol;
@@ -500,18 +500,18 @@ export type SettableFieldType<T> = T extends Promise<infer InnerPromiseType>
500
500
  ? InnerPromiseType | null
501
501
  : InnerPromiseType
502
502
  : T extends AsyncCollection<infer InnerCollectionType>
503
- ? InnerCollectionType[] | undefined
504
- : undefined extends T
505
- ? T | null
506
- : T;
503
+ ? InnerCollectionType[] | undefined
504
+ : undefined extends T
505
+ ? T | null
506
+ : T;
507
507
 
508
508
  export type PredicateFieldType<T> = NonNullable<
509
509
  Scalar<
510
510
  T extends Promise<infer InnerPromiseType>
511
511
  ? InnerPromiseType
512
512
  : T extends AsyncCollection<infer InnerCollectionType>
513
- ? InnerCollectionType
514
- : T
513
+ ? InnerCollectionType
514
+ : T
515
515
  >
516
516
  >;
517
517
 
@@ -545,7 +545,7 @@ export type DefaultPersistentModelMetaData = {
545
545
 
546
546
  export type MetadataOrDefault<
547
547
  T extends PersistentModel,
548
- _ extends PersistentModelMetaData<T> = never,
548
+ _ extends PersistentModelMetaData<T> = never
549
549
  > = T extends {
550
550
  [__modelMeta__]: PersistentModelMetaData<T>;
551
551
  }
@@ -556,7 +556,7 @@ export type PersistentModel = Readonly<Record<string, any>>;
556
556
 
557
557
  export type MetadataReadOnlyFields<
558
558
  T extends PersistentModel,
559
- M extends PersistentModelMetaData<T>,
559
+ M extends PersistentModelMetaData<T>
560
560
  > = Extract<
561
561
  MetadataOrDefault<T, M>['readOnlyFields'] | M['readOnlyFields'],
562
562
  keyof T
@@ -569,7 +569,7 @@ export type MetadataReadOnlyFields<
569
569
  // This type makes optional some identifiers in the constructor init object (e.g. OptionallyManagedIdentifier)
570
570
  export type ModelInitBase<
571
571
  T extends PersistentModel,
572
- M extends PersistentModelMetaData<T> = {},
572
+ M extends PersistentModelMetaData<T> = {}
573
573
  > = Omit<
574
574
  T,
575
575
  typeof __modelMeta__ | IdentifierFields<T, M> | MetadataReadOnlyFields<T, M>
@@ -583,7 +583,7 @@ export type ModelInitBase<
583
583
 
584
584
  export type ModelInit<
585
585
  T extends PersistentModel,
586
- M extends PersistentModelMetaData<T> = {},
586
+ M extends PersistentModelMetaData<T> = {}
587
587
  > = {
588
588
  [P in keyof OmitOptionalRelatives<ModelInitBase<T, M>>]: SettableFieldType<
589
589
  ModelInitBase<T, M>[P]
@@ -598,17 +598,17 @@ type DeepWritable<T> = {
598
598
  -readonly [P in keyof T]: T[P] extends TypeName<T[P]>
599
599
  ? T[P]
600
600
  : T[P] extends Promise<infer InnerPromiseType>
601
- ? undefined extends InnerPromiseType
602
- ? InnerPromiseType | null
603
- : InnerPromiseType
604
- : T[P] extends AsyncCollection<infer InnerCollectionType>
605
- ? InnerCollectionType[] | undefined | null
606
- : DeepWritable<T[P]>;
601
+ ? undefined extends InnerPromiseType
602
+ ? InnerPromiseType | null
603
+ : InnerPromiseType
604
+ : T[P] extends AsyncCollection<infer InnerCollectionType>
605
+ ? InnerCollectionType[] | undefined | null
606
+ : DeepWritable<T[P]>;
607
607
  };
608
608
 
609
609
  export type MutableModel<
610
610
  T extends PersistentModel,
611
- M extends PersistentModelMetaData<T> = {},
611
+ M extends PersistentModelMetaData<T> = {}
612
612
  // This provides Intellisense with ALL of the properties, regardless of read-only
613
613
  // but will throw a linting error if trying to overwrite a read-only property
614
614
  > = DeepWritable<
@@ -624,7 +624,7 @@ export type ModelInstanceMetadata = {
624
624
 
625
625
  export type IdentifierFieldValue<
626
626
  T extends PersistentModel,
627
- M extends PersistentModelMetaData<T>,
627
+ M extends PersistentModelMetaData<T>
628
628
  > = MetadataOrDefault<T, M>['identifier'] extends CompositeIdentifier<T, any>
629
629
  ? MetadataOrDefault<T, M>['identifier']['fields'] extends [any]
630
630
  ? T[MetadataOrDefault<T, M>['identifier']['fields'][0]]
@@ -633,7 +633,7 @@ export type IdentifierFieldValue<
633
633
 
634
634
  export type IdentifierFieldOrIdentifierObject<
635
635
  T extends PersistentModel,
636
- M extends PersistentModelMetaData<T>,
636
+ M extends PersistentModelMetaData<T>
637
637
  > = Pick<T, IdentifierFields<T, M>> | IdentifierFieldValue<T, M>;
638
638
 
639
639
  export function isIdentifierObject<T extends PersistentModel>(
@@ -678,7 +678,7 @@ export type DataStoreSnapshot<T extends PersistentModel> = {
678
678
 
679
679
  export type PredicateExpression<
680
680
  M extends PersistentModel,
681
- FT,
681
+ FT
682
682
  > = TypeName<FT> extends keyof MapTypeToOperands<FT>
683
683
  ? (
684
684
  operator: keyof MapTypeToOperands<FT>[TypeName<FT>],
@@ -726,16 +726,16 @@ type MapTypeToOperands<T> = {
726
726
  type TypeName<T> = T extends string
727
727
  ? 'string'
728
728
  : T extends number
729
- ? 'number'
730
- : T extends boolean
731
- ? 'boolean'
732
- : T extends string[]
733
- ? 'string[]'
734
- : T extends number[]
735
- ? 'number[]'
736
- : T extends boolean[]
737
- ? 'boolean[]'
738
- : never;
729
+ ? 'number'
730
+ : T extends boolean
731
+ ? 'boolean'
732
+ : T extends string[]
733
+ ? 'string[]'
734
+ : T extends number[]
735
+ ? 'number[]'
736
+ : T extends boolean[]
737
+ ? 'boolean[]'
738
+ : never;
739
739
 
740
740
  export type PredicateGroups<T extends PersistentModel> = {
741
741
  and: (
@@ -843,7 +843,7 @@ export type SortPredicate<T extends PersistentModel> = {
843
843
 
844
844
  export type SortPredicateExpression<
845
845
  M extends PersistentModel,
846
- FT,
846
+ FT
847
847
  > = TypeName<FT> extends keyof MapTypeToOperands<FT>
848
848
  ? (sortDirection: keyof typeof SortDirection) => SortPredicate<M>
849
849
  : never;
@@ -1028,7 +1028,7 @@ type ConditionProducer<T extends PersistentModel, A extends Option<T>> = (
1028
1028
 
1029
1029
  export async function syncExpression<
1030
1030
  T extends PersistentModel,
1031
- A extends Option<T>,
1031
+ A extends Option<T>
1032
1032
  >(
1033
1033
  modelConstructor: PersistentModelConstructor<T>,
1034
1034
  conditionProducer: ConditionProducer<T, A>
@@ -1149,7 +1149,7 @@ export type RecursiveModelPredicateExtender<RT extends PersistentModel> = (
1149
1149
  ) => PredicateInternalsKey;
1150
1150
 
1151
1151
  export type RecursiveModelPredicateAggregateExtender<
1152
- RT extends PersistentModel,
1152
+ RT extends PersistentModel
1153
1153
  > = (lambda: RecursiveModelPredicate<RT>) => PredicateInternalsKey[];
1154
1154
 
1155
1155
  export type RecursiveModelPredicateOperator<RT extends PersistentModel> = (
@@ -1201,7 +1201,7 @@ export type ModelPredicateAggregateExtender<RT extends PersistentModel> = (
1201
1201
 
1202
1202
  export type ValuePredicate<
1203
1203
  RT extends PersistentModel,
1204
- MT extends MatchableTypes,
1204
+ MT extends MatchableTypes
1205
1205
  > = {
1206
1206
  [K in AllFieldOperators]: K extends 'between'
1207
1207
  ? (