@aws-amplify/datastore 3.14.4 → 3.14.5-unstable.2

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 (178) hide show
  1. package/CHANGELOG.md +0 -8
  2. package/lib/authModeStrategies/defaultAuthStrategy.d.ts +2 -0
  3. package/lib/authModeStrategies/index.d.ts +2 -0
  4. package/lib/authModeStrategies/multiAuthStrategy.d.ts +13 -0
  5. package/lib/authModeStrategies/multiAuthStrategy.js +6 -64
  6. package/lib/authModeStrategies/multiAuthStrategy.js.map +1 -1
  7. package/lib/datastore/datastore.d.ts +207 -0
  8. package/lib/datastore/datastore.js +703 -297
  9. package/lib/datastore/datastore.js.map +1 -1
  10. package/lib/index.d.ts +16 -0
  11. package/lib/index.js +6 -4
  12. package/lib/index.js.map +1 -1
  13. package/lib/predicates/index.d.ts +30 -0
  14. package/lib/predicates/index.js +127 -6
  15. package/lib/predicates/index.js.map +1 -1
  16. package/lib/predicates/next.d.ts +301 -0
  17. package/lib/predicates/next.js +816 -0
  18. package/lib/predicates/next.js.map +1 -0
  19. package/lib/predicates/sort.d.ts +8 -0
  20. package/lib/predicates/sort.js +10 -4
  21. package/lib/predicates/sort.js.map +1 -1
  22. package/lib/ssr/index.d.ts +3 -0
  23. package/lib/storage/adapter/AsyncStorageAdapter.d.ts +42 -0
  24. package/lib/storage/adapter/AsyncStorageAdapter.js +141 -382
  25. package/lib/storage/adapter/AsyncStorageAdapter.js.map +1 -1
  26. package/lib/storage/adapter/AsyncStorageDatabase.d.ts +39 -0
  27. package/lib/storage/adapter/AsyncStorageDatabase.js +37 -98
  28. package/lib/storage/adapter/AsyncStorageDatabase.js.map +1 -1
  29. package/lib/storage/adapter/InMemoryStore.d.ts +11 -0
  30. package/lib/storage/adapter/InMemoryStore.js +16 -67
  31. package/lib/storage/adapter/InMemoryStore.js.map +1 -1
  32. package/lib/storage/adapter/InMemoryStore.native.d.ts +1 -0
  33. package/lib/storage/adapter/InMemoryStore.native.js +2 -4
  34. package/lib/storage/adapter/InMemoryStore.native.js.map +1 -1
  35. package/lib/storage/adapter/IndexedDBAdapter.d.ts +61 -0
  36. package/lib/storage/adapter/IndexedDBAdapter.js +275 -419
  37. package/lib/storage/adapter/IndexedDBAdapter.js.map +1 -1
  38. package/lib/storage/adapter/getDefaultAdapter/index.d.ts +3 -0
  39. package/lib/storage/adapter/getDefaultAdapter/index.js +3 -5
  40. package/lib/storage/adapter/getDefaultAdapter/index.js.map +1 -1
  41. package/lib/storage/adapter/getDefaultAdapter/index.native.d.ts +3 -0
  42. package/lib/storage/adapter/getDefaultAdapter/index.native.js +2 -4
  43. package/lib/storage/adapter/getDefaultAdapter/index.native.js.map +1 -1
  44. package/lib/storage/adapter/index.d.ts +9 -0
  45. package/lib/storage/relationship.d.ts +140 -0
  46. package/lib/storage/relationship.js +335 -0
  47. package/lib/storage/relationship.js.map +1 -0
  48. package/lib/storage/storage.d.ts +50 -0
  49. package/lib/storage/storage.js +72 -143
  50. package/lib/storage/storage.js.map +1 -1
  51. package/lib/sync/datastoreConnectivity.d.ts +16 -0
  52. package/lib/sync/datastoreConnectivity.js +6 -55
  53. package/lib/sync/datastoreConnectivity.js.map +1 -1
  54. package/lib/sync/datastoreReachability/index.d.ts +3 -0
  55. package/lib/sync/datastoreReachability/index.native.d.ts +3 -0
  56. package/lib/sync/datastoreReachability/index.native.js +2 -4
  57. package/lib/sync/datastoreReachability/index.native.js.map +1 -1
  58. package/lib/sync/index.d.ts +89 -0
  59. package/lib/sync/index.js +49 -124
  60. package/lib/sync/index.js.map +1 -1
  61. package/lib/sync/merger.d.ts +17 -0
  62. package/lib/sync/merger.js +8 -74
  63. package/lib/sync/merger.js.map +1 -1
  64. package/lib/sync/outbox.d.ts +27 -0
  65. package/lib/sync/outbox.js +24 -97
  66. package/lib/sync/outbox.js.map +1 -1
  67. package/lib/sync/processors/errorMaps.d.ts +17 -0
  68. package/lib/sync/processors/errorMaps.js +5 -35
  69. package/lib/sync/processors/errorMaps.js.map +1 -1
  70. package/lib/sync/processors/mutation.d.ts +58 -0
  71. package/lib/sync/processors/mutation.js +47 -131
  72. package/lib/sync/processors/mutation.js.map +1 -1
  73. package/lib/sync/processors/subscription.d.ts +33 -0
  74. package/lib/sync/processors/subscription.js +29 -102
  75. package/lib/sync/processors/subscription.js.map +1 -1
  76. package/lib/sync/processors/sync.d.ts +28 -0
  77. package/lib/sync/processors/sync.js +26 -102
  78. package/lib/sync/processors/sync.js.map +1 -1
  79. package/lib/sync/utils.d.ts +42 -0
  80. package/lib/sync/utils.js +40 -103
  81. package/lib/sync/utils.js.map +1 -1
  82. package/lib/types.d.ts +554 -0
  83. package/lib/types.js +9 -39
  84. package/lib/types.js.map +1 -1
  85. package/lib/util.d.ts +189 -0
  86. package/lib/util.js +192 -188
  87. package/lib/util.js.map +1 -1
  88. package/lib-esm/authModeStrategies/multiAuthStrategy.js +2 -57
  89. package/lib-esm/authModeStrategies/multiAuthStrategy.js.map +1 -1
  90. package/lib-esm/datastore/datastore.d.ts +59 -8
  91. package/lib-esm/datastore/datastore.js +642 -234
  92. package/lib-esm/datastore/datastore.js.map +1 -1
  93. package/lib-esm/index.d.ts +3 -2
  94. package/lib-esm/index.js +2 -1
  95. package/lib-esm/index.js.map +1 -1
  96. package/lib-esm/predicates/index.d.ts +16 -2
  97. package/lib-esm/predicates/index.js +128 -7
  98. package/lib-esm/predicates/index.js.map +1 -1
  99. package/lib-esm/predicates/next.d.ts +301 -0
  100. package/lib-esm/predicates/next.js +812 -0
  101. package/lib-esm/predicates/next.js.map +1 -0
  102. package/lib-esm/predicates/sort.js +10 -4
  103. package/lib-esm/predicates/sort.js.map +1 -1
  104. package/lib-esm/storage/adapter/AsyncStorageAdapter.d.ts +2 -1
  105. package/lib-esm/storage/adapter/AsyncStorageAdapter.js +112 -350
  106. package/lib-esm/storage/adapter/AsyncStorageAdapter.js.map +1 -1
  107. package/lib-esm/storage/adapter/AsyncStorageDatabase.js +7 -68
  108. package/lib-esm/storage/adapter/AsyncStorageDatabase.js.map +1 -1
  109. package/lib-esm/storage/adapter/InMemoryStore.d.ts +1 -1
  110. package/lib-esm/storage/adapter/InMemoryStore.js +1 -52
  111. package/lib-esm/storage/adapter/InMemoryStore.js.map +1 -1
  112. package/lib-esm/storage/adapter/IndexedDBAdapter.d.ts +4 -2
  113. package/lib-esm/storage/adapter/IndexedDBAdapter.js +230 -367
  114. package/lib-esm/storage/adapter/IndexedDBAdapter.js.map +1 -1
  115. package/lib-esm/storage/adapter/getDefaultAdapter/index.js.map +1 -1
  116. package/lib-esm/storage/relationship.d.ts +140 -0
  117. package/lib-esm/storage/relationship.js +333 -0
  118. package/lib-esm/storage/relationship.js.map +1 -0
  119. package/lib-esm/storage/storage.d.ts +7 -6
  120. package/lib-esm/storage/storage.js +33 -101
  121. package/lib-esm/storage/storage.js.map +1 -1
  122. package/lib-esm/sync/datastoreConnectivity.js +1 -47
  123. package/lib-esm/sync/datastoreConnectivity.js.map +1 -1
  124. package/lib-esm/sync/index.js +4 -76
  125. package/lib-esm/sync/index.js.map +1 -1
  126. package/lib-esm/sync/merger.js +1 -67
  127. package/lib-esm/sync/merger.js.map +1 -1
  128. package/lib-esm/sync/outbox.js +1 -74
  129. package/lib-esm/sync/outbox.js.map +1 -1
  130. package/lib-esm/sync/processors/errorMaps.js +2 -32
  131. package/lib-esm/sync/processors/errorMaps.js.map +1 -1
  132. package/lib-esm/sync/processors/mutation.js +12 -93
  133. package/lib-esm/sync/processors/mutation.js.map +1 -1
  134. package/lib-esm/sync/processors/subscription.js +6 -69
  135. package/lib-esm/sync/processors/subscription.js.map +1 -1
  136. package/lib-esm/sync/processors/sync.js +2 -75
  137. package/lib-esm/sync/processors/sync.js.map +1 -1
  138. package/lib-esm/sync/utils.d.ts +1 -1
  139. package/lib-esm/sync/utils.js +32 -95
  140. package/lib-esm/sync/utils.js.map +1 -1
  141. package/lib-esm/types.d.ts +63 -10
  142. package/lib-esm/types.js +7 -38
  143. package/lib-esm/types.js.map +1 -1
  144. package/lib-esm/util.d.ts +39 -6
  145. package/lib-esm/util.js +171 -171
  146. package/lib-esm/util.js.map +1 -1
  147. package/package.json +21 -14
  148. package/src/authModeStrategies/multiAuthStrategy.ts +2 -2
  149. package/src/datastore/datastore.ts +699 -206
  150. package/src/index.ts +4 -0
  151. package/src/predicates/index.ts +143 -17
  152. package/src/predicates/next.ts +967 -0
  153. package/src/predicates/sort.ts +8 -2
  154. package/src/storage/adapter/AsyncStorageAdapter.ts +59 -181
  155. package/src/storage/adapter/AsyncStorageDatabase.ts +16 -15
  156. package/src/storage/adapter/InMemoryStore.ts +5 -2
  157. package/src/storage/adapter/IndexedDBAdapter.ts +169 -192
  158. package/src/storage/adapter/getDefaultAdapter/index.ts +2 -2
  159. package/src/storage/relationship.ts +272 -0
  160. package/src/storage/storage.ts +56 -37
  161. package/src/sync/datastoreConnectivity.ts +4 -4
  162. package/src/sync/index.ts +22 -28
  163. package/src/sync/merger.ts +1 -1
  164. package/src/sync/outbox.ts +6 -6
  165. package/src/sync/processors/errorMaps.ts +1 -1
  166. package/src/sync/processors/mutation.ts +23 -19
  167. package/src/sync/processors/subscription.ts +20 -16
  168. package/src/sync/processors/sync.ts +17 -17
  169. package/src/sync/utils.ts +42 -48
  170. package/src/types.ts +128 -16
  171. package/src/util.ts +108 -150
  172. package/build.js +0 -5
  173. package/dist/aws-amplify-datastore.js +0 -92787
  174. package/dist/aws-amplify-datastore.js.map +0 -1
  175. package/dist/aws-amplify-datastore.min.js +0 -66
  176. package/dist/aws-amplify-datastore.min.js.map +0 -1
  177. package/index.js +0 -7
  178. package/webpack.config.dev.js +0 -6
@@ -1 +1 @@
1
- {"version":3,"file":"IndexedDBAdapter.js","sourceRoot":"","sources":["../../../src/storage/adapter/IndexedDBAdapter.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"IndexedDBAdapter.js","sourceRoot":"","sources":["../../../src/storage/adapter/IndexedDBAdapter.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/storage/adapter/getDefaultAdapter/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAE/D,OAAO,gBAAgB,MAAM,qBAAqB,CAAC;AACnD,OAAO,mBAAmB,MAAM,wBAAwB,CAAC;AAEzD,IAAM,iBAAiB,GAAkB;IAChC,IAAA,qCAAS,CAAqB;IAEtC,IAAI,CAAC,SAAS,IAAI,MAAM,CAAC,SAAS,CAAC,IAAI,CAAC,WAAW,EAAE,IAAI,IAAI,CAAC,SAAS,CAAC,EAAE;QACzE,OAAO,gBAAgB,CAAC;KACxB;IAED,OAAO,mBAAmB,CAAC;AAC5B,CAAC,CAAC;AAEF,eAAe,iBAAiB,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/storage/adapter/getDefaultAdapter/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAE/D,OAAO,gBAAgB,MAAM,qBAAqB,CAAC;AACnD,OAAO,mBAAmB,MAAM,wBAAwB,CAAC;AAEzD,IAAM,iBAAiB,GAAkB;IAChC,IAAA,qCAAS,CAAqB;IAEtC,IAAI,CAAC,SAAS,IAAI,MAAM,CAAC,SAAS,CAAC,IAAI,CAAC,WAAW,EAAE,IAAI,IAAI,CAAC,SAAS,CAAC,EAAE;QACzE,OAAO,gBAA2B,CAAC;KACnC;IAED,OAAO,mBAA8B,CAAC;AACvC,CAAC,CAAC;AAEF,eAAe,iBAAiB,CAAC"}
@@ -0,0 +1,140 @@
1
+ import { ModelMeta } from '../types';
2
+ /**
3
+ * Defines a relationship from a LOCAL model.field to a REMOTE model.field and helps
4
+ * navigate the relationship, providing a simplified peek at the relationship details
5
+ * pertinent to setting FK's and constructing join conditions.
6
+ *
7
+ * Because I mean, relationships are tough.
8
+ *
9
+ */
10
+ export declare class ModelRelationship<T> {
11
+ private localModel;
12
+ private _field;
13
+ /**
14
+ * @param modelDefinition The "local" model.
15
+ * @param field The "local" model field.
16
+ */
17
+ constructor(model: ModelMeta<T>, field: string);
18
+ /**
19
+ * Returns a ModelRelationship for the the given model and field if the pair
20
+ * indicates a relationship to another model. Else, returns `null`.
21
+ *
22
+ * @param model The model the relationship field exists in.
23
+ * @param field The field that may relates the local model to the remote model.
24
+ */
25
+ static from<T>(model: ModelMeta<T>, field: string): ModelRelationship<T>;
26
+ /**
27
+ * Enumerates all valid `ModelRelationship`'s on the given model.
28
+ *
29
+ * @param model The model definition to enumerate relationships of.
30
+ */
31
+ static allFrom<T>(model: ModelMeta<T>): ModelRelationship<T>[];
32
+ private get localDefinition();
33
+ /**
34
+ * The virtual/computed field on the local model that should contain
35
+ * the related model.
36
+ */
37
+ get field(): string;
38
+ /**
39
+ * The constructor that can be used to query DataStore or create instance for
40
+ * the local model.
41
+ */
42
+ get localConstructor(): import("../types").PersistentModelConstructor<T>;
43
+ /**
44
+ * The name/type of the relationship the local model has with the remote model
45
+ * via the defined local model field.
46
+ */
47
+ get type(): "HAS_MANY" | "HAS_ONE" | "BELONGS_TO";
48
+ /**
49
+ * Raw details about the local FK as-is from the local model's field definition in
50
+ * the schema. This field requires interpretation.
51
+ *
52
+ * @see localJoinFields
53
+ * @see localAssociatedWith
54
+ */
55
+ private get localAssocation();
56
+ /**
57
+ * The field names on the local model that can be used to query or queried to match
58
+ * with instances of the remote model.
59
+ *
60
+ * Fields are returned in-order to match the order of `this.remoteKeyFields`.
61
+ */
62
+ get localJoinFields(): string[];
63
+ /**
64
+ * The field names on the local model that uniquely identify it.
65
+ *
66
+ * These fields may or may not be relevant to the join fields.
67
+ */
68
+ get localPKFields(): string[];
69
+ get remoteDefinition(): import("../types").SchemaModel;
70
+ private get remoteModelType();
71
+ /**
72
+ * Constructor that can be used to query DataStore or create instances for
73
+ * the remote model.
74
+ */
75
+ get remoteModelConstructor(): import("../types").PersistentModelConstructor<Readonly<Record<string, any>>>;
76
+ /**
77
+ * The field names on the remote model that uniquely identify it.
78
+ *
79
+ * These fields may or may not be relevant to the join fields.
80
+ */
81
+ get remotePKFields(): string[];
82
+ /**
83
+ * The `associatedWith` fields from the local perspective.
84
+ *
85
+ * When present, these fields indicate which fields on the remote model to use
86
+ * when looking for a remote association and/or determining the final remote
87
+ * key fields.
88
+ */
89
+ private get localAssociatedWith();
90
+ private get explicitRemoteAssociation();
91
+ /**
92
+ * The field names on the remote model that can used to query or queried to match
93
+ * with instances of the local model.
94
+ *
95
+ * Fields are returned in-order to match the order of `this.localKeyFields`.
96
+ */
97
+ get remoteJoinFields(): string[];
98
+ /**
99
+ * Whether this relationship everything necessary to get, set, and query from
100
+ * the perspective of the local model provided at instantiation.
101
+ */
102
+ get isComplete(): boolean;
103
+ /**
104
+ * Creates an FK mapper object with respect to the given related instance.
105
+ *
106
+ * E.g., if the local FK fields are `[parentId, parentName]` and point to
107
+ * `[customId, name]` on the remote model, `createLocalFKObject(remote)`
108
+ * will return:
109
+ *
110
+ * ```
111
+ * {
112
+ * parentId: remote.customId,
113
+ * parentName: remote.name
114
+ * }
115
+ * ```
116
+ *
117
+ * @param remote The remote related instance.
118
+ */
119
+ createLocalFKObject(remote: any): Record<string, string>;
120
+ /**
121
+ * Creates an query mapper object to help fetch the remote instance(s) or
122
+ * `null` if any of the necessary local fields are `null` or `undefined`.
123
+ *
124
+ * E.g., if the local FK fields are `[parentId, parentName]` and point to
125
+ * `[customId, name]` on the remote model, `createLocalFKObject(remote)`
126
+ * will return:
127
+ *
128
+ * ```
129
+ * {
130
+ * customId: local.parentId
131
+ * name: local.parentName
132
+ * }
133
+ * ```
134
+ *
135
+ * If the local fields are not populated, returns
136
+ *
137
+ * @param local The local instance.
138
+ */
139
+ createRemoteQueryObject(local: T): Record<string, string>;
140
+ }
@@ -0,0 +1,333 @@
1
+ import { __values } from "tslib";
2
+ import { isFieldAssociation } from '../types';
3
+ /**
4
+ * Defines a relationship from a LOCAL model.field to a REMOTE model.field and helps
5
+ * navigate the relationship, providing a simplified peek at the relationship details
6
+ * pertinent to setting FK's and constructing join conditions.
7
+ *
8
+ * Because I mean, relationships are tough.
9
+ *
10
+ */
11
+ var ModelRelationship = /** @class */ (function () {
12
+ /**
13
+ * @param modelDefinition The "local" model.
14
+ * @param field The "local" model field.
15
+ */
16
+ function ModelRelationship(model, field) {
17
+ if (!isFieldAssociation(model.schema, field)) {
18
+ throw new Error(model.schema.name + "." + field + " is not a relationship.");
19
+ }
20
+ this.localModel = model;
21
+ this._field = field;
22
+ }
23
+ /**
24
+ * Returns a ModelRelationship for the the given model and field if the pair
25
+ * indicates a relationship to another model. Else, returns `null`.
26
+ *
27
+ * @param model The model the relationship field exists in.
28
+ * @param field The field that may relates the local model to the remote model.
29
+ */
30
+ ModelRelationship.from = function (model, field) {
31
+ if (isFieldAssociation(model.schema, field)) {
32
+ return new this(model, field);
33
+ }
34
+ else {
35
+ return null;
36
+ }
37
+ };
38
+ /**
39
+ * Enumerates all valid `ModelRelationship`'s on the given model.
40
+ *
41
+ * @param model The model definition to enumerate relationships of.
42
+ */
43
+ ModelRelationship.allFrom = function (model) {
44
+ var e_1, _a;
45
+ var relationships = [];
46
+ try {
47
+ for (var _b = __values(Object.keys(model.schema.fields)), _c = _b.next(); !_c.done; _c = _b.next()) {
48
+ var field = _c.value;
49
+ var relationship = ModelRelationship.from(model, field);
50
+ relationship && relationships.push(relationship);
51
+ }
52
+ }
53
+ catch (e_1_1) { e_1 = { error: e_1_1 }; }
54
+ finally {
55
+ try {
56
+ if (_c && !_c.done && (_a = _b.return)) _a.call(_b);
57
+ }
58
+ finally { if (e_1) throw e_1.error; }
59
+ }
60
+ return relationships;
61
+ };
62
+ Object.defineProperty(ModelRelationship.prototype, "localDefinition", {
63
+ get: function () {
64
+ return this.localModel.schema;
65
+ },
66
+ enumerable: true,
67
+ configurable: true
68
+ });
69
+ Object.defineProperty(ModelRelationship.prototype, "field", {
70
+ /**
71
+ * The virtual/computed field on the local model that should contain
72
+ * the related model.
73
+ */
74
+ get: function () {
75
+ return this._field;
76
+ },
77
+ enumerable: true,
78
+ configurable: true
79
+ });
80
+ Object.defineProperty(ModelRelationship.prototype, "localConstructor", {
81
+ /**
82
+ * The constructor that can be used to query DataStore or create instance for
83
+ * the local model.
84
+ */
85
+ get: function () {
86
+ return this.localModel.builder;
87
+ },
88
+ enumerable: true,
89
+ configurable: true
90
+ });
91
+ Object.defineProperty(ModelRelationship.prototype, "type", {
92
+ /**
93
+ * The name/type of the relationship the local model has with the remote model
94
+ * via the defined local model field.
95
+ */
96
+ get: function () {
97
+ return this.localAssocation.connectionType;
98
+ },
99
+ enumerable: true,
100
+ configurable: true
101
+ });
102
+ Object.defineProperty(ModelRelationship.prototype, "localAssocation", {
103
+ /**
104
+ * Raw details about the local FK as-is from the local model's field definition in
105
+ * the schema. This field requires interpretation.
106
+ *
107
+ * @see localJoinFields
108
+ * @see localAssociatedWith
109
+ */
110
+ get: function () {
111
+ return this.localDefinition.fields[this.field].association;
112
+ },
113
+ enumerable: true,
114
+ configurable: true
115
+ });
116
+ Object.defineProperty(ModelRelationship.prototype, "localJoinFields", {
117
+ /**
118
+ * The field names on the local model that can be used to query or queried to match
119
+ * with instances of the remote model.
120
+ *
121
+ * Fields are returned in-order to match the order of `this.remoteKeyFields`.
122
+ */
123
+ get: function () {
124
+ /**
125
+ * This is relatively straightforward, actually.
126
+ *
127
+ * If we have explicitly stated targetNames, codegen is telling us authoritatively
128
+ * to use those fields for this relationship. The local model "points to" fields
129
+ * in the remote one.
130
+ *
131
+ * In other cases, the remote model points to this one's
132
+ */
133
+ if (this.localAssocation.targetName) {
134
+ // This case is theoretically unnecessary going forward.
135
+ return [this.localAssocation.targetName];
136
+ }
137
+ else if (this.localAssocation.targetNames) {
138
+ return this.localAssocation.targetNames;
139
+ }
140
+ else {
141
+ return this.localPKFields;
142
+ }
143
+ },
144
+ enumerable: true,
145
+ configurable: true
146
+ });
147
+ Object.defineProperty(ModelRelationship.prototype, "localPKFields", {
148
+ /**
149
+ * The field names on the local model that uniquely identify it.
150
+ *
151
+ * These fields may or may not be relevant to the join fields.
152
+ */
153
+ get: function () {
154
+ return this.localModel.pkField;
155
+ },
156
+ enumerable: true,
157
+ configurable: true
158
+ });
159
+ Object.defineProperty(ModelRelationship.prototype, "remoteDefinition", {
160
+ get: function () {
161
+ var _a;
162
+ return (_a = this.remoteModelType.modelConstructor) === null || _a === void 0 ? void 0 : _a.schema;
163
+ },
164
+ enumerable: true,
165
+ configurable: true
166
+ });
167
+ Object.defineProperty(ModelRelationship.prototype, "remoteModelType", {
168
+ get: function () {
169
+ return this.localDefinition.fields[this.field].type;
170
+ },
171
+ enumerable: true,
172
+ configurable: true
173
+ });
174
+ Object.defineProperty(ModelRelationship.prototype, "remoteModelConstructor", {
175
+ /**
176
+ * Constructor that can be used to query DataStore or create instances for
177
+ * the remote model.
178
+ */
179
+ get: function () {
180
+ return this.remoteModelType.modelConstructor.builder;
181
+ },
182
+ enumerable: true,
183
+ configurable: true
184
+ });
185
+ Object.defineProperty(ModelRelationship.prototype, "remotePKFields", {
186
+ /**
187
+ * The field names on the remote model that uniquely identify it.
188
+ *
189
+ * These fields may or may not be relevant to the join fields.
190
+ */
191
+ get: function () {
192
+ var _a;
193
+ return ((_a = this.remoteModelType.modelConstructor) === null || _a === void 0 ? void 0 : _a.pkField) || ['id'];
194
+ },
195
+ enumerable: true,
196
+ configurable: true
197
+ });
198
+ Object.defineProperty(ModelRelationship.prototype, "localAssociatedWith", {
199
+ /**
200
+ * The `associatedWith` fields from the local perspective.
201
+ *
202
+ * When present, these fields indicate which fields on the remote model to use
203
+ * when looking for a remote association and/or determining the final remote
204
+ * key fields.
205
+ */
206
+ get: function () {
207
+ if (this.localAssocation.connectionType === 'HAS_MANY' ||
208
+ this.localAssocation.connectionType === 'HAS_ONE') {
209
+ // This de-arraying is theoretically unnecessary going forward.
210
+ return Array.isArray(this.localAssocation.associatedWith)
211
+ ? this.localAssocation.associatedWith
212
+ : [this.localAssocation.associatedWith];
213
+ }
214
+ else {
215
+ return undefined;
216
+ }
217
+ },
218
+ enumerable: true,
219
+ configurable: true
220
+ });
221
+ Object.defineProperty(ModelRelationship.prototype, "explicitRemoteAssociation", {
222
+ get: function () {
223
+ var _a;
224
+ if (this.localAssociatedWith) {
225
+ if (this.localAssociatedWith.length === 1) {
226
+ return (_a = this.remoteDefinition.fields[this.localAssociatedWith[0]]) === null || _a === void 0 ? void 0 : _a.association;
227
+ }
228
+ else {
229
+ return undefined;
230
+ }
231
+ }
232
+ },
233
+ enumerable: true,
234
+ configurable: true
235
+ });
236
+ Object.defineProperty(ModelRelationship.prototype, "remoteJoinFields", {
237
+ /**
238
+ * The field names on the remote model that can used to query or queried to match
239
+ * with instances of the local model.
240
+ *
241
+ * Fields are returned in-order to match the order of `this.localKeyFields`.
242
+ */
243
+ get: function () {
244
+ /**
245
+ * If the local relationship explicitly names "associated with" fields, we
246
+ * need to see if this points direction to a reciprocating assocation. If it
247
+ * does, the remote assocation indicates what fields to use.
248
+ */
249
+ var _a, _b, _c;
250
+ if ((_a = this.explicitRemoteAssociation) === null || _a === void 0 ? void 0 : _a.targetName) {
251
+ // This case is theoretically unnecessary going forward.
252
+ return [this.explicitRemoteAssociation.targetName];
253
+ }
254
+ else if ((_b = this.explicitRemoteAssociation) === null || _b === void 0 ? void 0 : _b.targetNames) {
255
+ return (_c = this.explicitRemoteAssociation) === null || _c === void 0 ? void 0 : _c.targetNames;
256
+ }
257
+ else if (this.localAssociatedWith) {
258
+ return this.localAssociatedWith;
259
+ }
260
+ else {
261
+ return this.remotePKFields;
262
+ }
263
+ },
264
+ enumerable: true,
265
+ configurable: true
266
+ });
267
+ Object.defineProperty(ModelRelationship.prototype, "isComplete", {
268
+ /**
269
+ * Whether this relationship everything necessary to get, set, and query from
270
+ * the perspective of the local model provided at instantiation.
271
+ */
272
+ get: function () {
273
+ return this.localJoinFields.length > 0 && this.remoteJoinFields.length > 0;
274
+ },
275
+ enumerable: true,
276
+ configurable: true
277
+ });
278
+ /**
279
+ * Creates an FK mapper object with respect to the given related instance.
280
+ *
281
+ * E.g., if the local FK fields are `[parentId, parentName]` and point to
282
+ * `[customId, name]` on the remote model, `createLocalFKObject(remote)`
283
+ * will return:
284
+ *
285
+ * ```
286
+ * {
287
+ * parentId: remote.customId,
288
+ * parentName: remote.name
289
+ * }
290
+ * ```
291
+ *
292
+ * @param remote The remote related instance.
293
+ */
294
+ ModelRelationship.prototype.createLocalFKObject = function (remote) {
295
+ var fk = {};
296
+ for (var i = 0; i < this.localJoinFields.length; i++) {
297
+ fk[this.localJoinFields[i]] = remote[this.remoteJoinFields[i]];
298
+ }
299
+ return fk;
300
+ };
301
+ /**
302
+ * Creates an query mapper object to help fetch the remote instance(s) or
303
+ * `null` if any of the necessary local fields are `null` or `undefined`.
304
+ *
305
+ * E.g., if the local FK fields are `[parentId, parentName]` and point to
306
+ * `[customId, name]` on the remote model, `createLocalFKObject(remote)`
307
+ * will return:
308
+ *
309
+ * ```
310
+ * {
311
+ * customId: local.parentId
312
+ * name: local.parentName
313
+ * }
314
+ * ```
315
+ *
316
+ * If the local fields are not populated, returns
317
+ *
318
+ * @param local The local instance.
319
+ */
320
+ ModelRelationship.prototype.createRemoteQueryObject = function (local) {
321
+ var query = {};
322
+ for (var i = 0; i < this.remoteJoinFields.length; i++) {
323
+ var localValue = local[this.localJoinFields[i]];
324
+ if (localValue === null || localValue === undefined)
325
+ return null;
326
+ query[this.remoteJoinFields[i]] = local[this.localJoinFields[i]];
327
+ }
328
+ return query;
329
+ };
330
+ return ModelRelationship;
331
+ }());
332
+ export { ModelRelationship };
333
+ //# sourceMappingURL=relationship.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"relationship.js","sourceRoot":"","sources":["../../src/storage/relationship.ts"],"names":[],"mappings":"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"}
@@ -2,6 +2,7 @@ import Observable from 'zen-observable-ts';
2
2
  import { Patch } from 'immer';
3
3
  import { ModelInstanceCreator } from '../datastore/datastore';
4
4
  import { InternalSchema, ModelInstanceMetadata, ModelPredicate, NamespaceResolver, OpType, PaginationInput, PersistentModel, PersistentModelConstructor, QueryOne, SchemaNamespace, InternalSubscriptionMessage, SubscriptionMessage } from '../types';
5
+ import { NAMESPACES } from '../util';
5
6
  import { Adapter } from './adapter';
6
7
  export declare type StorageSubscriptionMessage<T extends PersistentModel> = InternalSubscriptionMessage<T> & {
7
8
  mutator?: Symbol;
@@ -17,15 +18,15 @@ declare class StorageClass implements StorageFacade {
17
18
  private readonly sessionId?;
18
19
  private initialized;
19
20
  private readonly pushStream;
20
- constructor(schema: InternalSchema, namespaceResolver: NamespaceResolver, getModelConstructorByModelName: (namsespaceName: string, modelName: string) => PersistentModelConstructor<any>, modelInstanceCreator: ModelInstanceCreator, adapter?: Adapter, sessionId?: string);
21
+ constructor(schema: InternalSchema, namespaceResolver: NamespaceResolver, getModelConstructorByModelName: (namsespaceName: NAMESPACES, modelName: string) => PersistentModelConstructor<any>, modelInstanceCreator: ModelInstanceCreator, adapter?: Adapter, sessionId?: string);
21
22
  static getNamespace(): SchemaNamespace;
22
23
  init(): Promise<void>;
23
24
  save<T extends PersistentModel>(model: T, condition?: ModelPredicate<T>, mutator?: Symbol, patchesTuple?: [Patch[], PersistentModel]): Promise<[T, OpType.INSERT | OpType.UPDATE][]>;
24
25
  delete<T extends PersistentModel>(model: T, condition?: ModelPredicate<T>, mutator?: Symbol): Promise<[T[], T[]]>;
25
26
  delete<T extends PersistentModel>(modelConstructor: PersistentModelConstructor<T>, condition?: ModelPredicate<T>, mutator?: Symbol): Promise<[T[], T[]]>;
26
27
  query<T extends PersistentModel>(modelConstructor: PersistentModelConstructor<T>, predicate?: ModelPredicate<T>, pagination?: PaginationInput<T>): Promise<T[]>;
27
- queryOne<T extends PersistentModel>(modelConstructor: PersistentModelConstructor<T>, firstOrLast?: QueryOne): Promise<T>;
28
- observe<T extends PersistentModel>(modelConstructor?: PersistentModelConstructor<T>, predicate?: ModelPredicate<T>, skipOwn?: Symbol): Observable<SubscriptionMessage<T>>;
28
+ queryOne<T extends PersistentModel>(modelConstructor: PersistentModelConstructor<T>, firstOrLast?: QueryOne): Promise<T | undefined>;
29
+ observe<T extends PersistentModel>(modelConstructor?: PersistentModelConstructor<T> | null, predicate?: ModelPredicate<T> | null, skipOwn?: Symbol): Observable<SubscriptionMessage<T>>;
29
30
  clear(completeObservable?: boolean): Promise<void>;
30
31
  batchSave<T extends PersistentModel>(modelConstructor: PersistentModelConstructor<any>, items: ModelInstanceMetadata[], mutator?: Symbol): Promise<[T, OpType][]>;
31
32
  private getUpdateMutationInput;
@@ -33,15 +34,15 @@ declare class StorageClass implements StorageFacade {
33
34
  declare class ExclusiveStorage implements StorageFacade {
34
35
  private storage;
35
36
  private readonly mutex;
36
- constructor(schema: InternalSchema, namespaceResolver: NamespaceResolver, getModelConstructorByModelName: (namsespaceName: string, modelName: string) => PersistentModelConstructor<any>, modelInstanceCreator: ModelInstanceCreator, adapter?: Adapter, sessionId?: string);
37
+ constructor(schema: InternalSchema, namespaceResolver: NamespaceResolver, getModelConstructorByModelName: (namsespaceName: NAMESPACES, modelName: string) => PersistentModelConstructor<any>, modelInstanceCreator: ModelInstanceCreator, adapter?: Adapter, sessionId?: string);
37
38
  runExclusive<T>(fn: (storage: StorageClass) => Promise<T>): Promise<T>;
38
39
  save<T extends PersistentModel>(model: T, condition?: ModelPredicate<T>, mutator?: Symbol, patchesTuple?: [Patch[], PersistentModel]): Promise<[T, OpType.INSERT | OpType.UPDATE][]>;
39
40
  delete<T extends PersistentModel>(model: T, condition?: ModelPredicate<T>, mutator?: Symbol): Promise<[T[], T[]]>;
40
41
  delete<T extends PersistentModel>(modelConstructor: PersistentModelConstructor<T>, condition?: ModelPredicate<T>, mutator?: Symbol): Promise<[T[], T[]]>;
41
42
  query<T extends PersistentModel>(modelConstructor: PersistentModelConstructor<T>, predicate?: ModelPredicate<T>, pagination?: PaginationInput<T>): Promise<T[]>;
42
- queryOne<T extends PersistentModel>(modelConstructor: PersistentModelConstructor<T>, firstOrLast?: QueryOne): Promise<T>;
43
+ queryOne<T extends PersistentModel>(modelConstructor: PersistentModelConstructor<T>, firstOrLast?: QueryOne): Promise<T | undefined>;
43
44
  static getNamespace(): SchemaNamespace;
44
- observe<T extends PersistentModel>(modelConstructor?: PersistentModelConstructor<T>, predicate?: ModelPredicate<T>, skipOwn?: Symbol): Observable<SubscriptionMessage<T>>;
45
+ observe<T extends PersistentModel>(modelConstructor?: PersistentModelConstructor<T> | null, predicate?: ModelPredicate<T> | null, skipOwn?: Symbol): Observable<SubscriptionMessage<T>>;
45
46
  clear(): Promise<void>;
46
47
  batchSave<T extends PersistentModel>(modelConstructor: PersistentModelConstructor<T>, items: ModelInstanceMetadata[]): Promise<[T, OpType][]>;
47
48
  init(): Promise<void>;