@aws-amplify/datastore 3.12.6-next.36 → 3.12.6-next.44

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 (132) hide show
  1. package/CHANGELOG.md +8 -0
  2. package/lib/authModeStrategies/multiAuthStrategy.js.map +1 -1
  3. package/lib/datastore/datastore.d.ts +59 -8
  4. package/lib/datastore/datastore.js +640 -143
  5. package/lib/datastore/datastore.js.map +1 -1
  6. package/lib/index.d.ts +3 -2
  7. package/lib/index.js +4 -0
  8. package/lib/index.js.map +1 -1
  9. package/lib/predicates/index.d.ts +16 -2
  10. package/lib/predicates/index.js +127 -6
  11. package/lib/predicates/index.js.map +1 -1
  12. package/lib/predicates/next.d.ts +342 -0
  13. package/lib/predicates/next.js +801 -0
  14. package/lib/predicates/next.js.map +1 -0
  15. package/lib/predicates/sort.js +10 -4
  16. package/lib/predicates/sort.js.map +1 -1
  17. package/lib/storage/adapter/AsyncStorageAdapter.d.ts +2 -1
  18. package/lib/storage/adapter/AsyncStorageAdapter.js +106 -293
  19. package/lib/storage/adapter/AsyncStorageAdapter.js.map +1 -1
  20. package/lib/storage/adapter/AsyncStorageDatabase.js +6 -5
  21. package/lib/storage/adapter/AsyncStorageDatabase.js.map +1 -1
  22. package/lib/storage/adapter/InMemoryStore.d.ts +1 -1
  23. package/lib/storage/adapter/InMemoryStore.js.map +1 -1
  24. package/lib/storage/adapter/IndexedDBAdapter.d.ts +4 -2
  25. package/lib/storage/adapter/IndexedDBAdapter.js +223 -289
  26. package/lib/storage/adapter/IndexedDBAdapter.js.map +1 -1
  27. package/lib/storage/adapter/getDefaultAdapter/index.js.map +1 -1
  28. package/lib/storage/relationship.d.ts +140 -0
  29. package/lib/storage/relationship.js +335 -0
  30. package/lib/storage/relationship.js.map +1 -0
  31. package/lib/storage/storage.d.ts +7 -6
  32. package/lib/storage/storage.js +32 -16
  33. package/lib/storage/storage.js.map +1 -1
  34. package/lib/sync/datastoreConnectivity.js.map +1 -1
  35. package/lib/sync/index.js +2 -8
  36. package/lib/sync/index.js.map +1 -1
  37. package/lib/sync/merger.js.map +1 -1
  38. package/lib/sync/outbox.js.map +1 -1
  39. package/lib/sync/processors/errorMaps.js +1 -1
  40. package/lib/sync/processors/errorMaps.js.map +1 -1
  41. package/lib/sync/processors/mutation.js +9 -6
  42. package/lib/sync/processors/mutation.js.map +1 -1
  43. package/lib/sync/processors/subscription.js +3 -0
  44. package/lib/sync/processors/subscription.js.map +1 -1
  45. package/lib/sync/processors/sync.js.map +1 -1
  46. package/lib/sync/utils.d.ts +1 -1
  47. package/lib/sync/utils.js +30 -31
  48. package/lib/sync/utils.js.map +1 -1
  49. package/lib/types.d.ts +58 -6
  50. package/lib/types.js +6 -1
  51. package/lib/types.js.map +1 -1
  52. package/lib/util.d.ts +39 -6
  53. package/lib/util.js +174 -104
  54. package/lib/util.js.map +1 -1
  55. package/lib-esm/authModeStrategies/multiAuthStrategy.js.map +1 -1
  56. package/lib-esm/datastore/datastore.d.ts +59 -8
  57. package/lib-esm/datastore/datastore.js +642 -146
  58. package/lib-esm/datastore/datastore.js.map +1 -1
  59. package/lib-esm/index.d.ts +3 -2
  60. package/lib-esm/index.js +2 -1
  61. package/lib-esm/index.js.map +1 -1
  62. package/lib-esm/predicates/index.d.ts +16 -2
  63. package/lib-esm/predicates/index.js +128 -7
  64. package/lib-esm/predicates/index.js.map +1 -1
  65. package/lib-esm/predicates/next.d.ts +342 -0
  66. package/lib-esm/predicates/next.js +797 -0
  67. package/lib-esm/predicates/next.js.map +1 -0
  68. package/lib-esm/predicates/sort.js +10 -4
  69. package/lib-esm/predicates/sort.js.map +1 -1
  70. package/lib-esm/storage/adapter/AsyncStorageAdapter.d.ts +2 -1
  71. package/lib-esm/storage/adapter/AsyncStorageAdapter.js +108 -295
  72. package/lib-esm/storage/adapter/AsyncStorageAdapter.js.map +1 -1
  73. package/lib-esm/storage/adapter/AsyncStorageDatabase.js +6 -5
  74. package/lib-esm/storage/adapter/AsyncStorageDatabase.js.map +1 -1
  75. package/lib-esm/storage/adapter/InMemoryStore.d.ts +1 -1
  76. package/lib-esm/storage/adapter/InMemoryStore.js.map +1 -1
  77. package/lib-esm/storage/adapter/IndexedDBAdapter.d.ts +4 -2
  78. package/lib-esm/storage/adapter/IndexedDBAdapter.js +226 -292
  79. package/lib-esm/storage/adapter/IndexedDBAdapter.js.map +1 -1
  80. package/lib-esm/storage/adapter/getDefaultAdapter/index.js.map +1 -1
  81. package/lib-esm/storage/relationship.d.ts +140 -0
  82. package/lib-esm/storage/relationship.js +333 -0
  83. package/lib-esm/storage/relationship.js.map +1 -0
  84. package/lib-esm/storage/storage.d.ts +7 -6
  85. package/lib-esm/storage/storage.js +32 -16
  86. package/lib-esm/storage/storage.js.map +1 -1
  87. package/lib-esm/sync/datastoreConnectivity.js.map +1 -1
  88. package/lib-esm/sync/index.js +3 -9
  89. package/lib-esm/sync/index.js.map +1 -1
  90. package/lib-esm/sync/merger.js.map +1 -1
  91. package/lib-esm/sync/outbox.js.map +1 -1
  92. package/lib-esm/sync/processors/errorMaps.js +1 -1
  93. package/lib-esm/sync/processors/errorMaps.js.map +1 -1
  94. package/lib-esm/sync/processors/mutation.js +10 -7
  95. package/lib-esm/sync/processors/mutation.js.map +1 -1
  96. package/lib-esm/sync/processors/subscription.js +3 -0
  97. package/lib-esm/sync/processors/subscription.js.map +1 -1
  98. package/lib-esm/sync/processors/sync.js.map +1 -1
  99. package/lib-esm/sync/utils.d.ts +1 -1
  100. package/lib-esm/sync/utils.js +31 -32
  101. package/lib-esm/sync/utils.js.map +1 -1
  102. package/lib-esm/types.d.ts +58 -6
  103. package/lib-esm/types.js +6 -2
  104. package/lib-esm/types.js.map +1 -1
  105. package/lib-esm/util.d.ts +39 -6
  106. package/lib-esm/util.js +170 -104
  107. package/lib-esm/util.js.map +1 -1
  108. package/package.json +11 -9
  109. package/src/authModeStrategies/multiAuthStrategy.ts +1 -1
  110. package/src/datastore/datastore.ts +679 -203
  111. package/src/index.ts +4 -0
  112. package/src/predicates/index.ts +143 -17
  113. package/src/predicates/next.ts +1016 -0
  114. package/src/predicates/sort.ts +8 -2
  115. package/src/storage/adapter/AsyncStorageAdapter.ts +56 -178
  116. package/src/storage/adapter/AsyncStorageDatabase.ts +16 -15
  117. package/src/storage/adapter/InMemoryStore.ts +5 -2
  118. package/src/storage/adapter/IndexedDBAdapter.ts +166 -191
  119. package/src/storage/adapter/getDefaultAdapter/index.ts +2 -2
  120. package/src/storage/relationship.ts +272 -0
  121. package/src/storage/storage.ts +56 -37
  122. package/src/sync/datastoreConnectivity.ts +4 -4
  123. package/src/sync/index.ts +22 -28
  124. package/src/sync/merger.ts +1 -1
  125. package/src/sync/outbox.ts +6 -6
  126. package/src/sync/processors/errorMaps.ts +1 -1
  127. package/src/sync/processors/mutation.ts +22 -17
  128. package/src/sync/processors/subscription.ts +18 -14
  129. package/src/sync/processors/sync.ts +16 -16
  130. package/src/sync/utils.ts +42 -48
  131. package/src/types.ts +115 -10
  132. package/src/util.ts +108 -150
package/CHANGELOG.md CHANGED
@@ -3,6 +3,14 @@
3
3
  All notable changes to this project will be documented in this file.
4
4
  See [Conventional Commits](https://conventionalcommits.org) for commit guidelines.
5
5
 
6
+ ## [3.14.3](https://github.com/aws-amplify/amplify-js/compare/@aws-amplify/datastore@3.14.2...@aws-amplify/datastore@3.14.3) (2022-10-27)
7
+
8
+ **Note:** Version bump only for package @aws-amplify/datastore
9
+
10
+
11
+
12
+
13
+
6
14
  ## [3.14.2](https://github.com/aws-amplify/amplify-js/compare/@aws-amplify/datastore@3.14.1...@aws-amplify/datastore@3.14.2) (2022-10-26)
7
15
 
8
16
  **Note:** Version bump only for package @aws-amplify/datastore
@@ -1 +1 @@
1
- {"version":3,"file":"multiAuthStrategy.js","sourceRoot":"","sources":["../../src/authModeStrategies/multiAuthStrategy.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"multiAuthStrategy.js","sourceRoot":"","sources":["../../src/authModeStrategies/multiAuthStrategy.ts"],"names":[],"mappings":"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"}
@@ -1,7 +1,48 @@
1
1
  import Observable from 'zen-observable-ts';
2
2
  import { PredicateAll } from '../predicates';
3
- import { ConflictHandler, DataStoreConfig, NonModelTypeConstructor, ProducerPaginationInput, PersistentModel, PersistentModelConstructor, ProducerModelPredicate, Schema, SubscriptionMessage, DataStoreSnapshot, TypeConstructorMap, ErrorHandler, ObserveQueryOptions, PersistentModelMetaData, IdentifierFieldOrIdentifierObject } from '../types';
3
+ import { ConflictHandler, DataStoreConfig, NonModelTypeConstructor, ProducerPaginationInput, PersistentModel, PersistentModelConstructor, Schema, SubscriptionMessage, DataStoreSnapshot, TypeConstructorMap, ErrorHandler, ObserveQueryOptions, PersistentModelMetaData, IdentifierFieldOrIdentifierObject } from '../types';
4
+ import { RecursiveModelPredicateExtender, ModelPredicateExtender } from '../predicates/next';
4
5
  export declare let syncClasses: TypeConstructorMap;
6
+ /**
7
+ * Describes whether and to what a model is attached for lazy loading purposes.
8
+ */
9
+ declare enum ModelAttachment {
10
+ /**
11
+ * Model doesn't lazy load from any data source.
12
+ *
13
+ * Related entity properties provided at instantiation are returned
14
+ * via the respective lazy interfaces when their properties are invoked.
15
+ */
16
+ Detached = "Detached",
17
+ /**
18
+ * Model lazy loads from the global DataStore.
19
+ */
20
+ DataStore = "DataStore",
21
+ /**
22
+ * Demonstrative. Not yet implemented.
23
+ */
24
+ API = "API"
25
+ }
26
+ /**
27
+ * Registers a model instance against a data source (DataStore, API, or
28
+ * Detached/None).
29
+ *
30
+ * The API option is demonstrative. Lazy loading against API is not yet
31
+ * implemented.
32
+ *
33
+ * @param result A model instance or array of instances
34
+ * @param attachment A ModelAttachment data source
35
+ * @returns passes the `result` back through after attachment
36
+ */
37
+ export declare function attached<T extends PersistentModel | PersistentModel[]>(result: T, attachment: ModelAttachment): T;
38
+ /**
39
+ * Determines what source a model instance should lazy load from.
40
+ *
41
+ * If the instace was never explicitly registered, it is detached by default.
42
+ *
43
+ * @param instance A model instance
44
+ */
45
+ export declare const getAttachment: (instance: Readonly<Record<string, any>>) => ModelAttachment.Detached | ModelAttachment;
5
46
  declare const initSchema: (userSchema: Schema) => Record<string, PersistentModelConstructor<any> | NonModelTypeConstructor<unknown>>;
6
47
  /**
7
48
  * Constructs a model and records it with its metadata in a weakset. Allows for
@@ -14,6 +55,16 @@ declare const initSchema: (userSchema: Schema) => Record<string, PersistentModel
14
55
  */
15
56
  export declare type ModelInstanceCreator = typeof modelInstanceCreator;
16
57
  declare function modelInstanceCreator<T extends PersistentModel>(modelConstructor: PersistentModelConstructor<T>, init: Partial<T>): T;
58
+ export declare class AsyncItem<T> extends Promise<T> {
59
+ }
60
+ export declare class AsyncCollection<T> implements AsyncIterable<T> {
61
+ values: Array<any> | Promise<Array<any>>;
62
+ constructor(values: Array<any> | Promise<Array<any>>);
63
+ [Symbol.asyncIterator](): AsyncIterator<T>;
64
+ toArray({ max, }?: {
65
+ max?: number;
66
+ }): Promise<T[]>;
67
+ }
17
68
  declare class DataStore {
18
69
  private Auth;
19
70
  private API;
@@ -32,7 +83,7 @@ declare class DataStore {
32
83
  private syncPageSize;
33
84
  private syncExpressions;
34
85
  private syncPredicates;
35
- private sessionId;
86
+ private sessionId?;
36
87
  private storageAdapter;
37
88
  private amplifyContext;
38
89
  private connectivityMonitor?;
@@ -94,24 +145,24 @@ declare class DataStore {
94
145
  start: () => Promise<void>;
95
146
  query: {
96
147
  <T extends PersistentModel>(modelConstructor: PersistentModelConstructor<T>, identifier: IdentifierFieldOrIdentifierObject<T, PersistentModelMetaData<T>>): Promise<T | undefined>;
97
- <T extends PersistentModel>(modelConstructor: PersistentModelConstructor<T>, criteria?: ProducerModelPredicate<T> | typeof PredicateAll, paginationProducer?: ProducerPaginationInput<T>): Promise<T[]>;
148
+ <T extends PersistentModel>(modelConstructor: PersistentModelConstructor<T>, criteria?: RecursiveModelPredicateExtender<T> | typeof PredicateAll | null, paginationProducer?: ProducerPaginationInput<T>): Promise<T[]>;
98
149
  };
99
- save: <T extends Readonly<Record<string, any>>>(model: T, condition?: ProducerModelPredicate<T>) => Promise<T>;
150
+ save: <T extends Readonly<Record<string, any>>>(model: T, condition?: ModelPredicateExtender<T>) => Promise<T>;
100
151
  setConflictHandler: (config: DataStoreConfig) => ConflictHandler;
101
152
  setErrorHandler: (config: DataStoreConfig) => ErrorHandler;
102
153
  delete: {
103
154
  <T extends PersistentModel>(modelConstructor: PersistentModelConstructor<T>, identifier: IdentifierFieldOrIdentifierObject<T, PersistentModelMetaData<T>>): Promise<T[]>;
104
- <T extends PersistentModel>(modelConstructor: PersistentModelConstructor<T>, condition: ProducerModelPredicate<T> | typeof PredicateAll): Promise<T[]>;
105
- <T extends PersistentModel>(model: T, condition?: ProducerModelPredicate<T>): Promise<T>;
155
+ <T extends PersistentModel>(modelConstructor: PersistentModelConstructor<T>, condition: ModelPredicateExtender<T> | typeof PredicateAll): Promise<T[]>;
156
+ <T extends PersistentModel>(model: T, condition?: ModelPredicateExtender<T>): Promise<T>;
106
157
  };
107
158
  observe: {
108
159
  (): Observable<SubscriptionMessage<PersistentModel>>;
109
160
  <T extends PersistentModel>(modelConstructor: PersistentModelConstructor<T>, identifier: string): Observable<SubscriptionMessage<T>>;
110
- <T extends PersistentModel>(modelConstructor: PersistentModelConstructor<T>, criteria?: ProducerModelPredicate<T> | typeof PredicateAll): Observable<SubscriptionMessage<T>>;
161
+ <T extends PersistentModel>(modelConstructor: PersistentModelConstructor<T>, criteria?: RecursiveModelPredicateExtender<T> | typeof PredicateAll): Observable<SubscriptionMessage<T>>;
111
162
  <T extends PersistentModel>(model: T): Observable<SubscriptionMessage<T>>;
112
163
  };
113
164
  observeQuery: {
114
- <T extends PersistentModel>(modelConstructor: PersistentModelConstructor<T>, criteria?: ProducerModelPredicate<T> | typeof PredicateAll, paginationProducer?: ObserveQueryOptions<T>): Observable<DataStoreSnapshot<T>>;
165
+ <T extends PersistentModel>(modelConstructor: PersistentModelConstructor<T>, criteria?: RecursiveModelPredicateExtender<T> | typeof PredicateAll, paginationProducer?: ObserveQueryOptions<T>): Observable<DataStoreSnapshot<T>>;
115
166
  };
116
167
  configure: (config?: DataStoreConfig) => void;
117
168
  /**