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