@aws-amplify/datastore 3.12.6-next.20 → 3.12.6-next.32

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 (144) hide show
  1. package/CHANGELOG.md +58 -0
  2. package/lib/authModeStrategies/multiAuthStrategy.js +13 -2
  3. package/lib/authModeStrategies/multiAuthStrategy.js.map +1 -1
  4. package/lib/datastore/datastore.js +648 -344
  5. package/lib/datastore/datastore.js.map +1 -1
  6. package/lib/predicates/index.js +12 -2
  7. package/lib/predicates/index.js.map +1 -1
  8. package/lib/storage/adapter/AsyncStorageAdapter.js +354 -203
  9. package/lib/storage/adapter/AsyncStorageAdapter.js.map +1 -1
  10. package/lib/storage/adapter/AsyncStorageDatabase.js +65 -28
  11. package/lib/storage/adapter/AsyncStorageDatabase.js.map +1 -1
  12. package/lib/storage/adapter/IndexedDBAdapter.js +444 -271
  13. package/lib/storage/adapter/IndexedDBAdapter.js.map +1 -1
  14. package/lib/storage/storage.js +93 -28
  15. package/lib/storage/storage.js.map +1 -1
  16. package/lib/sync/datastoreConnectivity.js +9 -0
  17. package/lib/sync/datastoreConnectivity.js.map +1 -1
  18. package/lib/sync/index.js +522 -397
  19. package/lib/sync/index.js.map +1 -1
  20. package/lib/sync/merger.js +13 -6
  21. package/lib/sync/merger.js.map +1 -1
  22. package/lib/sync/outbox.js +77 -71
  23. package/lib/sync/outbox.js.map +1 -1
  24. package/lib/sync/processors/mutation.js +269 -209
  25. package/lib/sync/processors/mutation.js.map +1 -1
  26. package/lib/sync/processors/subscription.js +213 -178
  27. package/lib/sync/processors/subscription.js.map +1 -1
  28. package/lib/sync/processors/sync.js +126 -121
  29. package/lib/sync/processors/sync.js.map +1 -1
  30. package/lib/sync/utils.js +43 -8
  31. package/lib/sync/utils.js.map +1 -1
  32. package/lib/types.js +10 -1
  33. package/lib/types.js.map +1 -1
  34. package/lib/util.js +419 -166
  35. package/lib/util.js.map +1 -1
  36. package/lib-esm/authModeStrategies/multiAuthStrategy.d.ts +11 -0
  37. package/lib-esm/authModeStrategies/multiAuthStrategy.js +12 -1
  38. package/lib-esm/authModeStrategies/multiAuthStrategy.js.map +1 -1
  39. package/lib-esm/datastore/datastore.d.ts +107 -17
  40. package/lib-esm/datastore/datastore.js +648 -344
  41. package/lib-esm/datastore/datastore.js.map +1 -1
  42. package/lib-esm/index.d.ts +3 -19
  43. package/lib-esm/predicates/index.d.ts +3 -2
  44. package/lib-esm/predicates/index.js +13 -3
  45. package/lib-esm/predicates/index.js.map +1 -1
  46. package/lib-esm/storage/adapter/AsyncStorageAdapter.d.ts +4 -3
  47. package/lib-esm/storage/adapter/AsyncStorageAdapter.js +355 -204
  48. package/lib-esm/storage/adapter/AsyncStorageAdapter.js.map +1 -1
  49. package/lib-esm/storage/adapter/AsyncStorageDatabase.d.ts +14 -4
  50. package/lib-esm/storage/adapter/AsyncStorageDatabase.js +66 -29
  51. package/lib-esm/storage/adapter/AsyncStorageDatabase.js.map +1 -1
  52. package/lib-esm/storage/adapter/IndexedDBAdapter.d.ts +26 -4
  53. package/lib-esm/storage/adapter/IndexedDBAdapter.js +445 -272
  54. package/lib-esm/storage/adapter/IndexedDBAdapter.js.map +1 -1
  55. package/lib-esm/storage/adapter/index.d.ts +1 -1
  56. package/lib-esm/storage/storage.d.ts +1 -1
  57. package/lib-esm/storage/storage.js +93 -28
  58. package/lib-esm/storage/storage.js.map +1 -1
  59. package/lib-esm/sync/datastoreConnectivity.d.ts +1 -0
  60. package/lib-esm/sync/datastoreConnectivity.js +10 -1
  61. package/lib-esm/sync/datastoreConnectivity.js.map +1 -1
  62. package/lib-esm/sync/index.d.ts +31 -5
  63. package/lib-esm/sync/index.js +524 -399
  64. package/lib-esm/sync/index.js.map +1 -1
  65. package/lib-esm/sync/merger.d.ts +9 -3
  66. package/lib-esm/sync/merger.js +13 -6
  67. package/lib-esm/sync/merger.js.map +1 -1
  68. package/lib-esm/sync/outbox.d.ts +2 -2
  69. package/lib-esm/sync/outbox.js +78 -72
  70. package/lib-esm/sync/outbox.js.map +1 -1
  71. package/lib-esm/sync/processors/mutation.d.ts +2 -0
  72. package/lib-esm/sync/processors/mutation.js +270 -210
  73. package/lib-esm/sync/processors/mutation.js.map +1 -1
  74. package/lib-esm/sync/processors/subscription.d.ts +2 -0
  75. package/lib-esm/sync/processors/subscription.js +213 -178
  76. package/lib-esm/sync/processors/subscription.js.map +1 -1
  77. package/lib-esm/sync/processors/sync.d.ts +2 -1
  78. package/lib-esm/sync/processors/sync.js +126 -121
  79. package/lib-esm/sync/processors/sync.js.map +1 -1
  80. package/lib-esm/sync/utils.d.ts +3 -2
  81. package/lib-esm/sync/utils.js +45 -11
  82. package/lib-esm/sync/utils.js.map +1 -1
  83. package/lib-esm/types.d.ts +65 -26
  84. package/lib-esm/types.js +9 -2
  85. package/lib-esm/types.js.map +1 -1
  86. package/lib-esm/util.d.ts +67 -24
  87. package/lib-esm/util.js +419 -166
  88. package/lib-esm/util.js.map +1 -1
  89. package/package.json +13 -7
  90. package/src/authModeStrategies/multiAuthStrategy.ts +12 -1
  91. package/src/datastore/datastore.ts +798 -397
  92. package/src/predicates/index.ts +32 -10
  93. package/src/storage/adapter/AsyncStorageAdapter.ts +309 -93
  94. package/src/storage/adapter/AsyncStorageDatabase.ts +74 -26
  95. package/src/storage/adapter/IndexedDBAdapter.ts +358 -134
  96. package/src/storage/adapter/index.ts +1 -1
  97. package/src/storage/storage.ts +69 -22
  98. package/src/sync/datastoreConnectivity.ts +6 -0
  99. package/src/sync/index.ts +521 -412
  100. package/src/sync/merger.ts +20 -4
  101. package/src/sync/outbox.ts +22 -9
  102. package/src/sync/processors/mutation.ts +188 -150
  103. package/src/sync/processors/subscription.ts +289 -253
  104. package/src/sync/processors/sync.ts +151 -138
  105. package/src/sync/utils.ts +67 -12
  106. package/src/types.ts +182 -30
  107. package/src/util.ts +505 -176
  108. package/build.js +0 -5
  109. package/dist/aws-amplify-datastore.js +0 -83311
  110. package/dist/aws-amplify-datastore.js.map +0 -1
  111. package/dist/aws-amplify-datastore.min.js +0 -168
  112. package/dist/aws-amplify-datastore.min.js.map +0 -1
  113. package/index.js +0 -7
  114. package/lib/authModeStrategies/defaultAuthStrategy.d.ts +0 -2
  115. package/lib/authModeStrategies/index.d.ts +0 -2
  116. package/lib/authModeStrategies/multiAuthStrategy.d.ts +0 -2
  117. package/lib/datastore/datastore.d.ts +0 -66
  118. package/lib/index.d.ts +0 -31
  119. package/lib/predicates/index.d.ts +0 -15
  120. package/lib/predicates/sort.d.ts +0 -8
  121. package/lib/ssr/index.d.ts +0 -3
  122. package/lib/storage/adapter/AsyncStorageAdapter.d.ts +0 -40
  123. package/lib/storage/adapter/AsyncStorageDatabase.d.ts +0 -29
  124. package/lib/storage/adapter/InMemoryStore.d.ts +0 -11
  125. package/lib/storage/adapter/InMemoryStore.native.d.ts +0 -1
  126. package/lib/storage/adapter/IndexedDBAdapter.d.ts +0 -37
  127. package/lib/storage/adapter/getDefaultAdapter/index.d.ts +0 -3
  128. package/lib/storage/adapter/getDefaultAdapter/index.native.d.ts +0 -3
  129. package/lib/storage/adapter/index.d.ts +0 -9
  130. package/lib/storage/storage.d.ts +0 -49
  131. package/lib/sync/datastoreConnectivity.d.ts +0 -15
  132. package/lib/sync/datastoreReachability/index.d.ts +0 -3
  133. package/lib/sync/datastoreReachability/index.native.d.ts +0 -3
  134. package/lib/sync/index.d.ts +0 -63
  135. package/lib/sync/merger.d.ts +0 -11
  136. package/lib/sync/outbox.d.ts +0 -27
  137. package/lib/sync/processors/errorMaps.d.ts +0 -17
  138. package/lib/sync/processors/mutation.d.ts +0 -56
  139. package/lib/sync/processors/subscription.d.ts +0 -31
  140. package/lib/sync/processors/sync.d.ts +0 -27
  141. package/lib/sync/utils.d.ts +0 -41
  142. package/lib/types.d.ts +0 -462
  143. package/lib/util.d.ts +0 -113
  144. package/webpack.config.dev.js +0 -6
@@ -1 +1 @@
1
- {"version":3,"file":"utils.js","sourceRoot":"","sources":["../../src/sync/utils.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"utils.js","sourceRoot":"","sources":["../../src/sync/utils.ts"],"names":[],"mappings":"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"}
@@ -3,7 +3,7 @@ import { PredicateAll } from './predicates';
3
3
  import { GRAPHQL_AUTH_MODE } from '@aws-amplify/api-graphql';
4
4
  import { Auth } from '@aws-amplify/auth';
5
5
  import { API } from '@aws-amplify/api';
6
- import Cache from '@aws-amplify/cache';
6
+ import { BrowserStorageCache as Cache } from '@aws-amplify/cache';
7
7
  import { Adapter } from './storage/adapter';
8
8
  export declare type Schema = UserSchema & {
9
9
  version: string;
@@ -33,6 +33,7 @@ export declare type SchemaModel = {
33
33
  syncable?: boolean;
34
34
  };
35
35
  export declare function isSchemaModel(obj: any): obj is SchemaModel;
36
+ export declare function isSchemaModelWithAttributes(m: SchemaModel | SchemaNonModel): m is SchemaModel;
36
37
  export declare type SchemaNonModels = Record<string, SchemaNonModel>;
37
38
  export declare type SchemaNonModel = {
38
39
  name: string;
@@ -46,17 +47,19 @@ declare type SchemaEnum = {
46
47
  export declare type ModelAssociation = AssociatedWith | TargetNameAssociation;
47
48
  declare type AssociatedWith = {
48
49
  connectionType: 'HAS_MANY' | 'HAS_ONE';
49
- associatedWith: string;
50
+ associatedWith: string | string[];
50
51
  targetName?: string;
52
+ targetNames?: string[];
51
53
  };
52
54
  export declare function isAssociatedWith(obj: any): obj is AssociatedWith;
53
55
  declare type TargetNameAssociation = {
54
56
  connectionType: 'BELONGS_TO';
55
- targetName: string;
57
+ targetName?: string;
58
+ targetNames?: string[];
56
59
  };
57
60
  export declare function isTargetNameAssociation(obj: any): obj is TargetNameAssociation;
58
61
  export declare type ModelAttributes = ModelAttribute[];
59
- declare type ModelAttribute = {
62
+ export declare type ModelAttribute = {
60
63
  type: string;
61
64
  properties?: Record<string, any>;
62
65
  };
@@ -87,6 +90,7 @@ declare type ModelAttributeKey = {
87
90
  declare type ModelAttributePrimaryKey = {
88
91
  type: 'key';
89
92
  properties: {
93
+ name: never;
90
94
  fields: string[];
91
95
  };
92
96
  };
@@ -179,34 +183,64 @@ export declare type ModelField = {
179
183
  export declare type NonModelTypeConstructor<T> = {
180
184
  new (init: T): T;
181
185
  };
182
- export declare type PersistentModelConstructor<T extends PersistentModel, K extends PersistentModelMetaData = {
183
- readOnlyFields: 'createdAt' | 'updatedAt';
184
- }> = {
185
- new (init: ModelInit<T, K>): T;
186
- copyOf(src: T, mutator: (draft: MutableModel<T, K>) => void): T;
187
- };
188
- export declare type TypeConstructorMap = Record<string, PersistentModelConstructor<any> | NonModelTypeConstructor<any>>;
189
- export declare type PersistentModelMetaData = {
190
- readOnlyFields: string;
191
- };
192
- export declare type PersistentModel = Readonly<{
193
- id: string;
194
- } & Record<string, any>>;
195
- export declare type ModelInit<T, K extends PersistentModelMetaData = {
196
- readOnlyFields: 'createdAt' | 'updatedAt';
197
- }> = Omit<T, 'id' | K['readOnlyFields']>;
186
+ export declare type PersistentModelConstructor<T extends PersistentModel> = {
187
+ new (init: ModelInit<T, PersistentModelMetaData<T>>): T;
188
+ copyOf(src: T, mutator: (draft: MutableModel<T, PersistentModelMetaData<T>>) => void): T;
189
+ };
190
+ export declare type TypeConstructorMap = Record<string, PersistentModelConstructor<any> | NonModelTypeConstructor<unknown>>;
191
+ /**
192
+ * Each identifier type is represented using nominal types, see:
193
+ * https://basarat.gitbook.io/typescript/main-1/nominaltyping
194
+ */
195
+ export declare const __identifierBrand__: unique symbol;
196
+ export declare type IdentifierBrand<T, K> = T & {
197
+ [__identifierBrand__]: K;
198
+ };
199
+ export declare type ManagedIdentifier<T, F extends keyof T> = IdentifierBrand<{
200
+ field: F extends string ? F : never;
201
+ type: T;
202
+ }, 'ManagedIdentifier'>;
203
+ export declare type OptionallyManagedIdentifier<T, F extends keyof T> = IdentifierBrand<{
204
+ field: F extends string ? F : never;
205
+ type: T;
206
+ }, 'OptionallyManagedIdentifier'>;
207
+ export declare type CompositeIdentifier<T, K extends Array<keyof T>> = IdentifierBrand<{
208
+ fields: K;
209
+ type: T;
210
+ }, 'CompositeIdentifier'>;
211
+ export declare type CustomIdentifier<T, K extends keyof T> = CompositeIdentifier<T, [K]>;
212
+ export declare type Identifier<T> = ManagedIdentifier<T, any> | OptionallyManagedIdentifier<T, any> | CompositeIdentifier<T, any> | CustomIdentifier<T, any>;
213
+ export declare type IdentifierFields<T extends PersistentModel, M extends PersistentModelMetaData<T> = never> = (MetadataOrDefault<T, M>['identifier'] extends ManagedIdentifier<any, any> | OptionallyManagedIdentifier<any, any> ? MetadataOrDefault<T, M>['identifier']['field'] : MetadataOrDefault<T, M>['identifier'] extends CompositeIdentifier<T, infer B> ? B[number] : MetadataOrDefault<T, M>['identifier']['field']) & string;
214
+ export declare type IdentifierFieldsForInit<T extends PersistentModel, M extends PersistentModelMetaData<T>> = MetadataOrDefault<T, M>['identifier'] extends DefaultPersistentModelMetaData | ManagedIdentifier<T, any> ? never : MetadataOrDefault<T, M>['identifier'] extends OptionallyManagedIdentifier<T, any> ? IdentifierFields<T, M> : MetadataOrDefault<T, M>['identifier'] extends CompositeIdentifier<T, any> ? IdentifierFields<T, M> : never;
215
+ export declare const __modelMeta__: unique symbol;
216
+ export declare type PersistentModelMetaData<T> = {
217
+ identifier?: Identifier<T>;
218
+ readOnlyFields?: string;
219
+ };
220
+ export declare type DefaultPersistentModelMetaData = {
221
+ identifier: ManagedIdentifier<{
222
+ id: string;
223
+ }, 'id'>;
224
+ readOnlyFields: never;
225
+ };
226
+ export declare type MetadataOrDefault<T extends PersistentModel, _ extends PersistentModelMetaData<T> = never> = T extends {
227
+ [__modelMeta__]: PersistentModelMetaData<T>;
228
+ } ? T[typeof __modelMeta__] : DefaultPersistentModelMetaData;
229
+ export declare type PersistentModel = Readonly<Record<string, any>>;
230
+ export declare type MetadataReadOnlyFields<T extends PersistentModel, M extends PersistentModelMetaData<T>> = Extract<MetadataOrDefault<T, M>['readOnlyFields'] | M['readOnlyFields'], keyof T>;
231
+ export declare type ModelInit<T extends PersistentModel, M extends PersistentModelMetaData<T> = {}> = Omit<T, typeof __modelMeta__ | IdentifierFields<T, M> | MetadataReadOnlyFields<T, M>> & (MetadataOrDefault<T, M>['identifier'] extends OptionallyManagedIdentifier<T, any> ? Partial<Pick<T, IdentifierFieldsForInit<T, M>>> : Required<Pick<T, IdentifierFieldsForInit<T, M>>>);
198
232
  declare type DeepWritable<T> = {
199
233
  -readonly [P in keyof T]: T[P] extends TypeName<T[P]> ? T[P] : DeepWritable<T[P]>;
200
234
  };
201
- export declare type MutableModel<T extends Record<string, any>, K extends PersistentModelMetaData = {
202
- readOnlyFields: 'createdAt' | 'updatedAt';
203
- }> = DeepWritable<Omit<T, 'id' | K['readOnlyFields']>> & Readonly<Pick<T, 'id' | K['readOnlyFields']>>;
235
+ export declare type MutableModel<T extends PersistentModel, M extends PersistentModelMetaData<T> = {}> = DeepWritable<Omit<T, IdentifierFields<T, M> | MetadataReadOnlyFields<T, M>>> & Readonly<Pick<T, IdentifierFields<T, M> | MetadataReadOnlyFields<T, M>>>;
204
236
  export declare type ModelInstanceMetadata = {
205
- id: string;
206
237
  _version: number;
207
238
  _lastChangedAt: number;
208
239
  _deleted: boolean;
209
240
  };
241
+ export declare type IdentifierFieldValue<T extends PersistentModel, M extends PersistentModelMetaData<T>> = MetadataOrDefault<T, M>['identifier'] extends CompositeIdentifier<T, any> ? MetadataOrDefault<T, M>['identifier']['fields'] extends [any] ? T[MetadataOrDefault<T, M>['identifier']['fields'][0]] : never : T[MetadataOrDefault<T, M>['identifier']['field']];
242
+ export declare type IdentifierFieldOrIdentifierObject<T extends PersistentModel, M extends PersistentModelMetaData<T>> = Pick<T, IdentifierFields<T, M>> | IdentifierFieldValue<T, M>;
243
+ export declare function isIdentifierObject<T extends PersistentModel>(obj: any, modelDefinition: SchemaModel): obj is IdentifierFields<T extends PersistentModel ? T : never, any>;
210
244
  export declare enum OpType {
211
245
  INSERT = "INSERT",
212
246
  UPDATE = "UPDATE",
@@ -337,11 +371,16 @@ export declare type RelationType = {
337
371
  modelName: string;
338
372
  relationType: 'HAS_ONE' | 'HAS_MANY' | 'BELONGS_TO';
339
373
  targetName?: string;
340
- associatedWith?: string;
374
+ targetNames?: string[];
375
+ associatedWith?: string | string[];
376
+ };
377
+ declare type IndexOptions = {
378
+ unique?: boolean;
341
379
  };
380
+ export declare type IndexesType = Array<[string, string[], IndexOptions?]>;
342
381
  export declare type RelationshipType = {
343
382
  [modelName: string]: {
344
- indexes: string[];
383
+ indexes: IndexesType;
345
384
  relationTypes: RelationType[];
346
385
  };
347
386
  };
package/lib-esm/types.js CHANGED
@@ -1,13 +1,16 @@
1
1
  import { __awaiter, __generator } from "tslib";
2
- import { exhaustiveCheck, isAWSDate, isAWSTime, isAWSDateTime, isAWSTimestamp, isAWSEmail, isAWSJSON, isAWSURL, isAWSPhone, isAWSIPAddress, } from './util';
2
+ import { exhaustiveCheck, isAWSDate, isAWSTime, isAWSDateTime, isAWSTimestamp, isAWSEmail, isAWSJSON, isAWSURL, isAWSPhone, isAWSIPAddress, extractPrimaryKeyFieldNames, } from './util';
3
3
  export function isSchemaModel(obj) {
4
4
  return obj && obj.pluralName !== undefined;
5
5
  }
6
+ export function isSchemaModelWithAttributes(m) {
7
+ return isSchemaModel(m) && m.attributes !== undefined;
8
+ }
6
9
  export function isAssociatedWith(obj) {
7
10
  return obj && obj.associatedWith;
8
11
  }
9
12
  export function isTargetNameAssociation(obj) {
10
- return obj && obj.targetName;
13
+ return (obj === null || obj === void 0 ? void 0 : obj.targetName) || (obj === null || obj === void 0 ? void 0 : obj.targetNames);
11
14
  }
12
15
  export function isModelAttributeAuth(attr) {
13
16
  return (attr.type === 'auth' &&
@@ -135,6 +138,10 @@ export function isEnumFieldType(obj) {
135
138
  return true;
136
139
  return false;
137
140
  }
141
+ export function isIdentifierObject(obj, modelDefinition) {
142
+ var keys = extractPrimaryKeyFieldNames(modelDefinition);
143
+ return (typeof obj === 'object' && obj && keys.every(function (k) { return obj[k] !== undefined; }));
144
+ }
138
145
  //#endregion
139
146
  //#region Subscription messages
140
147
  export var OpType;
@@ -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,6 +1,27 @@
1
1
  import { ULID } from 'ulid';
2
2
  import { Patch } from 'immer';
3
- import { ModelInstanceMetadata, PersistentModel, PersistentModelConstructor, PredicateObject, PredicatesGroup, RelationshipType, RelationType, ModelKeys, ModelAttributes, SchemaNamespace, SortPredicatesGroup, NonModelTypeConstructor, DeferredCallbackResolverOptions } from './types';
3
+ import { PersistentModel, PersistentModelConstructor, PredicateObject, PredicatesGroup, RelationshipType, RelationType, ModelKeys, ModelAttributes, SchemaNamespace, SortPredicatesGroup, NonModelTypeConstructor, DeferredCallbackResolverOptions, SchemaModel, ModelAttribute, IndexesType } from './types';
4
+ export declare const ID = "id";
5
+ /**
6
+ * Used by the Async Storage Adapter to concatenate key values
7
+ * for a record. For instance, if a model has the following keys:
8
+ * `customId: ID! @primaryKey(sortKeyFields: ["createdAt"])`,
9
+ * we concatenate the `customId` and `createdAt` as:
10
+ * `12-234-5#2022-09-28T00:00:00.000Z`
11
+ */
12
+ export declare const DEFAULT_PRIMARY_KEY_VALUE_SEPARATOR = "#";
13
+ /**
14
+ * Used for generating spinal-cased index name from an array of
15
+ * key field names.
16
+ * E.g. for keys `[id, title]` => 'id-title'
17
+ */
18
+ export declare const IDENTIFIER_KEY_SEPARATOR = "-";
19
+ export declare const errorMessages: {
20
+ idEmptyString: string;
21
+ queryByPkWithCompositeKeyPresent: string;
22
+ deleteByPkWithCompositeKeyPresent: string;
23
+ observeWithObjectLiteral: string;
24
+ };
4
25
  export declare enum NAMESPACES {
5
26
  DATASTORE = "datastore",
6
27
  USER = "user",
@@ -15,37 +36,28 @@ export { USER, SYNC, STORAGE, DATASTORE };
15
36
  export declare const USER_AGENT_SUFFIX_DATASTORE = "/DataStore";
16
37
  export declare const exhaustiveCheck: (obj: never, throwOnError?: boolean) => void;
17
38
  export declare const isNullOrUndefined: (val: any) => boolean;
18
- export declare const validatePredicate: <T extends Readonly<{
19
- id: string;
20
- } & Record<string, any>>>(model: T, groupType: "and" | "or" | "not", predicatesOrGroups: (PredicateObject<T> | PredicatesGroup<T>)[]) => any;
39
+ export declare const validatePredicate: <T extends Readonly<Record<string, any>>>(model: T, groupType: "and" | "or" | "not", predicatesOrGroups: (PredicateObject<T> | PredicatesGroup<T>)[]) => any;
21
40
  export declare const validatePredicateField: <T>(value: T, operator: "ne" | "eq" | "le" | "lt" | "ge" | "gt" | "between" | "beginsWith" | "contains" | "notContains", operand: T | [T, T]) => boolean;
22
- export declare const isModelConstructor: <T extends Readonly<{
23
- id: string;
24
- } & Record<string, any>>>(obj: any) => obj is PersistentModelConstructor<T, {
25
- readOnlyFields: "createdAt" | "updatedAt";
26
- }>;
41
+ export declare const isModelConstructor: <T extends Readonly<Record<string, any>>>(obj: any) => obj is PersistentModelConstructor<T>;
27
42
  export declare function registerNonModelClass(clazz: NonModelTypeConstructor<any>): void;
28
43
  export declare const isNonModelConstructor: (obj: any) => obj is NonModelTypeConstructor<any>;
29
- export declare const processCompositeKeys: (attributes: ModelAttributes) => Set<string>[];
30
- export declare const establishRelationAndKeys: (namespace: SchemaNamespace) => [RelationshipType, ModelKeys];
31
- export declare const traverseModel: <T extends Readonly<{
32
- id: string;
33
- } & Record<string, any>>>(srcModelName: string, instance: T, namespace: SchemaNamespace, modelInstanceCreator: <T_1 extends Readonly<{
34
- id: string;
35
- } & Record<string, any>> = Readonly<{
36
- id: string;
37
- } & Record<string, any>>>(modelConstructor: PersistentModelConstructor<T_1, {
38
- readOnlyFields: "createdAt" | "updatedAt";
39
- }>, init: Pick<T_1, Exclude<keyof T_1, "id" | "createdAt" | "updatedAt">> & Partial<ModelInstanceMetadata>) => T_1, getModelConstructorByModelName: (namsespaceName: string, modelName: string) => PersistentModelConstructor<any, {
40
- readOnlyFields: "createdAt" | "updatedAt";
41
- }>) => {
44
+ export declare const traverseModel: <T extends Readonly<Record<string, any>>>(srcModelName: string, instance: T, namespace: SchemaNamespace, modelInstanceCreator: <T_1 extends Readonly<Record<string, any>>>(modelConstructor: PersistentModelConstructor<T_1>, init: Partial<T_1>) => T_1, getModelConstructorByModelName: (namsespaceName: string, modelName: string) => PersistentModelConstructor<any>) => {
42
45
  modelName: string;
43
46
  item: T;
44
47
  instance: T;
45
48
  }[];
46
- export declare const getIndex: (rel: RelationType[], src: string) => string;
47
- export declare const getIndexFromAssociation: (indexes: string[], src: string) => string;
48
49
  export declare const isPrivateMode: () => Promise<unknown>;
50
+ /**
51
+ * Whether the browser's implementation of IndexedDB breaks on array lookups
52
+ * against composite indexes whose keypath contains a single column.
53
+ *
54
+ * E.g., Whether `store.createIndex(indexName, ['id'])` followed by
55
+ * `store.index(indexName).get([1])` will *ever* return records.
56
+ *
57
+ * In all known, modern Safari browsers as of Q4 2022, the query against an index like
58
+ * this will *always* return `undefined`. So, the index needs to be created as a scalar.
59
+ */
60
+ export declare const isSafariCompatabilityMode: () => Promise<boolean>;
49
61
  export declare function monotonicUlidFactory(seed?: number): ULID;
50
62
  /**
51
63
  * Uses performance.now() if available, otherwise, uses Date.now() (e.g. react native without a polyfill)
@@ -111,3 +123,34 @@ export declare class DeferredCallbackResolver {
111
123
  * @return merged patches
112
124
  */
113
125
  export declare function mergePatches<T>(originalSource: T, oldPatches: Patch[], newPatches: Patch[]): Patch[];
126
+ export declare const getStorename: (namespace: string, modelName: string) => string;
127
+ export declare const processCompositeKeys: (attributes: ModelAttributes) => Set<string>[];
128
+ export declare const extractKeyIfExists: (modelDefinition: SchemaModel) => ModelAttribute;
129
+ export declare const extractPrimaryKeyFieldNames: (modelDefinition: SchemaModel) => string[];
130
+ export declare const extractPrimaryKeyValues: <T extends Readonly<Record<string, any>>>(model: T, keyFields: string[]) => string[];
131
+ export declare const extractPrimaryKeysAndValues: <T extends Readonly<Record<string, any>>>(model: T, keyFields: string[]) => any;
132
+ export declare const isIdManaged: (modelDefinition: SchemaModel) => boolean;
133
+ export declare const isIdOptionallyManaged: (modelDefinition: SchemaModel) => boolean;
134
+ export declare const establishRelationAndKeys: (namespace: SchemaNamespace) => [RelationshipType, ModelKeys];
135
+ export declare const getIndex: (rel: RelationType[], src: string) => string;
136
+ export declare const getIndexFromAssociation: (indexes: IndexesType, src: string | string[]) => string;
137
+ /**
138
+ * Backwards-compatability for schema generated prior to custom primary key support:
139
+ the single field `targetName` has been replaced with an array of `targetNames`.
140
+ `targetName` and `targetNames` are exclusive (will never exist on the same schema)
141
+ * @param src {RelationType | ModelAssociation | undefined}
142
+ * @returns array of targetNames, or `undefined`
143
+ */
144
+ export declare const extractTargetNamesFromSrc: (src: RelationType | {
145
+ connectionType: "HAS_ONE" | "HAS_MANY";
146
+ associatedWith: string | string[];
147
+ targetName?: string;
148
+ targetNames?: string[];
149
+ } | {
150
+ connectionType: "BELONGS_TO";
151
+ targetName?: string;
152
+ targetNames?: string[];
153
+ }) => string[];
154
+ export declare const indexNameFromKeys: (keys: string[]) => string;
155
+ export declare const keysEqual: (keysA: any, keysB: any) => boolean;
156
+ export declare const getIndexKeys: (namespace: SchemaNamespace, modelName: string) => string[];