@my-devkit/firebase 1.0.157 → 1.0.159

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 (101) hide show
  1. package/dist/aggregate.js +30 -52
  2. package/dist/aggregate.js.map +1 -1
  3. package/dist/app-factory.js +139 -261
  4. package/dist/app-factory.js.map +1 -1
  5. package/dist/bus.js +44 -101
  6. package/dist/bus.js.map +1 -1
  7. package/dist/context.js +69 -132
  8. package/dist/context.js.map +1 -1
  9. package/dist/decorators/controller/body.js +6 -6
  10. package/dist/decorators/controller/body.js.map +1 -1
  11. package/dist/decorators/controller/body.spec.js +55 -90
  12. package/dist/decorators/controller/body.spec.js.map +1 -1
  13. package/dist/decorators/controller/controller.js +3 -3
  14. package/dist/decorators/controller/controller.js.map +1 -1
  15. package/dist/decorators/controller/controller.spec.js +14 -48
  16. package/dist/decorators/controller/controller.spec.js.map +1 -1
  17. package/dist/decorators/controller/get.js +4 -4
  18. package/dist/decorators/controller/get.js.map +1 -1
  19. package/dist/decorators/controller/get.spec.js +30 -62
  20. package/dist/decorators/controller/get.spec.js.map +1 -1
  21. package/dist/decorators/controller/index.js +5 -1
  22. package/dist/decorators/controller/index.js.map +1 -1
  23. package/dist/decorators/controller/param.js +6 -6
  24. package/dist/decorators/controller/param.js.map +1 -1
  25. package/dist/decorators/controller/param.spec.js +48 -82
  26. package/dist/decorators/controller/param.spec.js.map +1 -1
  27. package/dist/decorators/controller/post.js +4 -4
  28. package/dist/decorators/controller/post.js.map +1 -1
  29. package/dist/decorators/controller/post.spec.js +69 -102
  30. package/dist/decorators/controller/post.spec.js.map +1 -1
  31. package/dist/decorators/controller/query.js +6 -6
  32. package/dist/decorators/controller/query.js.map +1 -1
  33. package/dist/decorators/controller/query.spec.js +48 -82
  34. package/dist/decorators/controller/query.spec.js.map +1 -1
  35. package/dist/decorators/handler/command-handler.js +7 -7
  36. package/dist/decorators/handler/command-handler.js.map +1 -1
  37. package/dist/decorators/handler/command-handler.spec.js +95 -178
  38. package/dist/decorators/handler/command-handler.spec.js.map +1 -1
  39. package/dist/decorators/handler/event-handler.js +7 -7
  40. package/dist/decorators/handler/event-handler.js.map +1 -1
  41. package/dist/decorators/handler/event-handler.spec.js +98 -181
  42. package/dist/decorators/handler/event-handler.spec.js.map +1 -1
  43. package/dist/decorators/handler/index.js +5 -1
  44. package/dist/decorators/handler/index.js.map +1 -1
  45. package/dist/decorators/index.js +5 -1
  46. package/dist/decorators/index.js.map +1 -1
  47. package/dist/decorators/injectable.js +2 -2
  48. package/dist/decorators/injectable.js.map +1 -1
  49. package/dist/decorators/module.js +2 -2
  50. package/dist/decorators/module.js.map +1 -1
  51. package/dist/decorators/transactional-client.js +2 -2
  52. package/dist/decorators/transactional-client.js.map +1 -1
  53. package/dist/execution-mode-enum.js +1 -1
  54. package/dist/execution-mode-enum.js.map +1 -1
  55. package/dist/firestore-client.js +179 -277
  56. package/dist/firestore-client.js.map +1 -1
  57. package/dist/handler-helper.js +57 -140
  58. package/dist/handler-helper.js.map +1 -1
  59. package/dist/index.js +5 -1
  60. package/dist/index.js.map +1 -1
  61. package/dist/injector.js +14 -25
  62. package/dist/injector.js.map +1 -1
  63. package/dist/interfaces/from-array.d.ts +1 -1
  64. package/dist/interfaces/index.js +5 -1
  65. package/dist/interfaces/index.js.map +1 -1
  66. package/dist/interfaces/newable.d.ts +1 -1
  67. package/dist/reflect.d.ts +3 -3
  68. package/dist/reflect.js +51 -57
  69. package/dist/reflect.js.map +1 -1
  70. package/dist/request-method.enum.js +1 -1
  71. package/dist/request-method.enum.js.map +1 -1
  72. package/dist/sanity-check/controller.js +29 -64
  73. package/dist/sanity-check/controller.js.map +1 -1
  74. package/dist/sanity-check/module.js +11 -14
  75. package/dist/sanity-check/module.js.map +1 -1
  76. package/dist/server/index.js +5 -1
  77. package/dist/server/index.js.map +1 -1
  78. package/dist/server/middlewares/authentication-middleware.js +45 -93
  79. package/dist/server/middlewares/authentication-middleware.js.map +1 -1
  80. package/dist/server/middlewares/create-context-middleware.js +8 -39
  81. package/dist/server/middlewares/create-context-middleware.js.map +1 -1
  82. package/dist/server/middlewares/error-middleware.js +30 -62
  83. package/dist/server/middlewares/error-middleware.js.map +1 -1
  84. package/dist/server/middlewares/headers-middleware.js +11 -42
  85. package/dist/server/middlewares/headers-middleware.js.map +1 -1
  86. package/dist/server/middlewares/index.js +5 -1
  87. package/dist/server/middlewares/index.js.map +1 -1
  88. package/dist/server/middlewares/not-found-middleware.js +4 -34
  89. package/dist/server/middlewares/not-found-middleware.js.map +1 -1
  90. package/dist/server/server.d.ts +1 -1
  91. package/dist/server/server.js +73 -103
  92. package/dist/server/server.js.map +1 -1
  93. package/dist/zip-helper.js +32 -12
  94. package/dist/zip-helper.js.map +1 -1
  95. package/package.json +28 -25
  96. package/src/decorators/handler/command-handler.spec.ts +7 -6
  97. package/src/decorators/handler/event-handler.spec.ts +9 -8
  98. package/src/reflect.ts +1 -1
  99. package/src/server/server.ts +2 -2
  100. package/tsconfig.json +11 -17
  101. package/dist/tsconfig.tsbuildinfo +0 -1
@@ -17,222 +17,143 @@ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, ge
17
17
  step((generator = generator.apply(thisArg, _arguments || [])).next());
18
18
  });
19
19
  };
20
- var __generator = (this && this.__generator) || function (thisArg, body) {
21
- var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;
22
- return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
23
- function verb(n) { return function (v) { return step([n, v]); }; }
24
- function step(op) {
25
- if (f) throw new TypeError("Generator is already executing.");
26
- while (_) try {
27
- if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;
28
- if (y = 0, t) op = [op[0] & 2, t.value];
29
- switch (op[0]) {
30
- case 0: case 1: t = op; break;
31
- case 4: _.label++; return { value: op[1], done: false };
32
- case 5: _.label++; y = op[1]; op = [0]; continue;
33
- case 7: op = _.ops.pop(); _.trys.pop(); continue;
34
- default:
35
- if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }
36
- if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }
37
- if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }
38
- if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }
39
- if (t[2]) _.ops.pop();
40
- _.trys.pop(); continue;
41
- }
42
- op = body.call(thisArg, _);
43
- } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }
44
- if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
45
- }
46
- };
20
+ var FirestoreClient_1;
47
21
  Object.defineProperty(exports, "__esModule", { value: true });
48
22
  exports.FirestoreClient = void 0;
49
- var core_1 = require("@my-devkit/core");
50
- var firestore_1 = require("firebase-admin/firestore");
51
- var decorators_1 = require("./decorators");
52
- var FirestoreClient = /** @class */ (function () {
53
- function FirestoreClient() {
23
+ const core_1 = require("@my-devkit/core");
24
+ const firestore_1 = require("firebase-admin/firestore");
25
+ const decorators_1 = require("./decorators");
26
+ let FirestoreClient = FirestoreClient_1 = class FirestoreClient {
27
+ constructor() {
54
28
  this.db = (0, firestore_1.getFirestore)();
55
29
  this.operations = new Map();
56
30
  }
57
- FirestoreClient_1 = FirestoreClient;
58
- FirestoreClient.prototype.save = function () {
59
- return __awaiter(this, void 0, void 0, function () {
60
- var _i, _a, operation;
61
- return __generator(this, function (_b) {
62
- switch (_b.label) {
63
- case 0:
64
- _i = 0, _a = Array.from(this.operations.values());
65
- _b.label = 1;
66
- case 1:
67
- if (!(_i < _a.length)) return [3 /*break*/, 10];
68
- operation = _a[_i];
69
- if (operation.committed === true) {
70
- return [3 /*break*/, 9];
71
- }
72
- if (!this.isCreateOperation(operation)) return [3 /*break*/, 3];
73
- core_1.Logger.info("Create document ".concat(operation.document._path));
74
- return [4 /*yield*/, this.db.doc(operation.document._path).set((0, core_1.serialize)(operation.document))];
75
- case 2:
76
- _b.sent();
77
- return [3 /*break*/, 8];
78
- case 3:
79
- if (!this.isUpdateOperation(operation)) return [3 /*break*/, 5];
80
- core_1.Logger.info("Update document ".concat(operation.document._path));
81
- return [4 /*yield*/, this.db.doc(operation.document._path).set((0, core_1.serialize)(operation.document))];
82
- case 4:
83
- _b.sent();
84
- return [3 /*break*/, 8];
85
- case 5:
86
- if (!this.isDeleteOperation(operation)) return [3 /*break*/, 7];
87
- core_1.Logger.info("Delete document ".concat(operation.document._path));
88
- return [4 /*yield*/, this.db.doc(operation.document._path).delete()];
89
- case 6:
90
- _b.sent();
91
- return [3 /*break*/, 8];
92
- case 7: throw new Error("Not supported action ".concat(operation.action));
93
- case 8:
94
- operation.committed = true;
95
- _b.label = 9;
96
- case 9:
97
- _i++;
98
- return [3 /*break*/, 1];
99
- case 10: return [2 /*return*/];
31
+ save() {
32
+ return __awaiter(this, void 0, void 0, function* () {
33
+ for (const operation of Array.from(this.operations.values())) {
34
+ if (operation.committed === true) {
35
+ continue;
100
36
  }
101
- });
102
- });
103
- };
104
- FirestoreClient.prototype._find = function (path) {
105
- return __awaiter(this, void 0, void 0, function () {
106
- var operation;
107
- return __generator(this, function (_a) {
108
- core_1.Logger.info("Repository: find ".concat(path));
109
- if (this.operations.has(path)) {
110
- core_1.Logger.info("Repository: document returned from transaction");
111
- operation = this.operations.get(path);
112
- return [2 /*return*/, this.isDeleteOperation(operation) ? null : operation.document];
37
+ if (this.isCreateOperation(operation)) {
38
+ core_1.Logger.info(`Create document ${operation.document._path}`);
39
+ yield this.db.doc(operation.document._path).set((0, core_1.serialize)(operation.document));
113
40
  }
114
- return [2 /*return*/, this.queryDocument(path)];
115
- });
116
- });
117
- };
118
- FirestoreClient.prototype._findWhere = function (collection, whereClauses, options) {
119
- if (whereClauses === void 0) { whereClauses = []; }
120
- return __awaiter(this, void 0, void 0, function () {
121
- var documents;
122
- return __generator(this, function (_a) {
123
- switch (_a.label) {
124
- case 0: return [4 /*yield*/, this._getWhere(collection, whereClauses, options)];
125
- case 1:
126
- documents = _a.sent();
127
- if (documents.length > 1) {
128
- throw new Error("Transactional Repository: Too many documents found (".concat(documents.length, ")"));
129
- }
130
- return [2 /*return*/, documents[0] || null];
41
+ else if (this.isUpdateOperation(operation)) {
42
+ core_1.Logger.info(`Update document ${operation.document._path}`);
43
+ yield this.db.doc(operation.document._path).set((0, core_1.serialize)(operation.document));
131
44
  }
132
- });
133
- });
134
- };
135
- FirestoreClient.prototype._get = function (path) {
136
- return __awaiter(this, void 0, void 0, function () {
137
- var result;
138
- return __generator(this, function (_a) {
139
- switch (_a.label) {
140
- case 0:
141
- core_1.Logger.info("Repository: get ".concat(path));
142
- return [4 /*yield*/, this._find(path)];
143
- case 1:
144
- result = _a.sent();
145
- if (!result) {
146
- throw new core_1.NotFoundError("Repository: document ".concat(path, " not found"));
147
- }
148
- return [2 /*return*/, result];
45
+ else if (this.isDeleteOperation(operation)) {
46
+ core_1.Logger.info(`Delete document ${operation.document._path}`);
47
+ yield this.db.doc(operation.document._path).delete();
149
48
  }
150
- });
49
+ else {
50
+ throw new Error(`Not supported action ${operation.action}`);
51
+ }
52
+ operation.committed = true;
53
+ }
151
54
  });
152
- };
153
- FirestoreClient.prototype._getAll = function (collection, options) {
154
- return __awaiter(this, void 0, void 0, function () {
155
- return __generator(this, function (_a) {
156
- return [2 /*return*/, this._getWhere(collection, [], options)];
157
- });
55
+ }
56
+ _find(path) {
57
+ return __awaiter(this, void 0, void 0, function* () {
58
+ core_1.Logger.info(`Repository: find ${path}`);
59
+ if (this.operations.has(path)) {
60
+ core_1.Logger.info(`Repository: document returned from transaction`);
61
+ const operation = this.operations.get(path);
62
+ return this.isDeleteOperation(operation) ? null : operation.document;
63
+ }
64
+ return this.queryDocument(path);
65
+ });
66
+ }
67
+ _findWhere(collection, whereClauses = [], options) {
68
+ return __awaiter(this, void 0, void 0, function* () {
69
+ const documents = yield this._getWhere(collection, whereClauses, options);
70
+ if (documents.length > 1) {
71
+ throw new Error(`Transactional Repository: Too many documents found (${documents.length})`);
72
+ }
73
+ return documents[0] || null;
74
+ });
75
+ }
76
+ _get(path) {
77
+ return __awaiter(this, void 0, void 0, function* () {
78
+ core_1.Logger.info(`Repository: get ${path}`);
79
+ const result = yield this._find(path);
80
+ if (!result) {
81
+ throw new core_1.NotFoundError(`Repository: document ${path} not found`);
82
+ }
83
+ return result;
84
+ });
85
+ }
86
+ _getAll(collection, options) {
87
+ return __awaiter(this, void 0, void 0, function* () {
88
+ return this._getWhere(collection, [], options);
158
89
  });
159
- };
160
- FirestoreClient.prototype._getWhere = function (collection, whereClauses, options) {
161
- if (whereClauses === void 0) { whereClauses = []; }
162
- return __awaiter(this, void 0, void 0, function () {
163
- var documentMap, _i, _a, operation, exists, documents;
164
- return __generator(this, function (_b) {
165
- switch (_b.label) {
166
- case 0:
167
- core_1.Logger.info("Repository: getWhere ".concat(collection, " whereClauses: ").concat(JSON.stringify(whereClauses)));
168
- return [4 /*yield*/, this.queryCollection(collection, whereClauses, options)];
169
- case 1:
170
- documentMap = _b.sent();
171
- for (_i = 0, _a = Array.from(this.operations.values()); _i < _a.length; _i++) {
172
- operation = _a[_i];
173
- exists = documentMap.has(operation.document._path);
174
- switch (operation.action) {
175
- case FirestoreClient_1.Action.Create:
176
- if (this.doesDocumentMatchQuery(operation.document, collection, whereClauses)) {
177
- documentMap.set(operation.document._path, operation.document);
178
- core_1.Logger.info("Repository: Document ".concat(operation.document._path, " added to result"));
179
- }
180
- break;
181
- case FirestoreClient_1.Action.Update:
182
- if (this.doesDocumentMatchQuery(operation.document, collection, whereClauses)) {
183
- core_1.Logger.info("Repository: Document ".concat(operation.document._path, " ").concat(exists ? 'updated from' : 'added to', " result"));
184
- documentMap.set(operation.document._path, operation.document);
185
- }
186
- else if (exists) {
187
- documentMap.delete(operation.document._path);
188
- core_1.Logger.info("Repository: Document ".concat(operation.document._path, " removed from result"));
189
- }
190
- break;
191
- case FirestoreClient_1.Action.Delete:
192
- if (exists) {
193
- documentMap.delete(operation.document._path);
194
- core_1.Logger.info("Repository: Document ".concat(operation.document._path, " removed from result"));
195
- }
196
- break;
197
- default:
198
- throw new Error("FirestoreClient: Unhandled existing operation ".concat(operation.action, " on ").concat(operation.document._path));
199
- }
90
+ }
91
+ _getWhere(collection, whereClauses = [], options) {
92
+ return __awaiter(this, void 0, void 0, function* () {
93
+ core_1.Logger.info(`Repository: getWhere ${collection} whereClauses: ${JSON.stringify(whereClauses)}`);
94
+ const documentMap = yield this.queryCollection(collection, whereClauses, options);
95
+ for (const operation of Array.from(this.operations.values())) {
96
+ const exists = documentMap.has(operation.document._path);
97
+ switch (operation.action) {
98
+ case FirestoreClient_1.Action.Create:
99
+ if (this.doesDocumentMatchQuery(operation.document, collection, whereClauses)) {
100
+ documentMap.set(operation.document._path, operation.document);
101
+ core_1.Logger.info(`Repository: Document ${operation.document._path} added to result`);
102
+ }
103
+ break;
104
+ case FirestoreClient_1.Action.Update:
105
+ if (this.doesDocumentMatchQuery(operation.document, collection, whereClauses)) {
106
+ core_1.Logger.info(`Repository: Document ${operation.document._path} ${exists ? 'updated from' : 'added to'} result`);
107
+ documentMap.set(operation.document._path, operation.document);
200
108
  }
201
- core_1.Logger.info("Repository: ".concat(documentMap.size, " documents found"));
202
- documents = Array.from(documentMap.values());
203
- if (options === null || options === void 0 ? void 0 : options.orderBy) {
204
- documents = (0, core_1._orderBy)(documents, [options.orderBy], [options.orderByDirection || 'asc']);
109
+ else if (exists) {
110
+ documentMap.delete(operation.document._path);
111
+ core_1.Logger.info(`Repository: Document ${operation.document._path} removed from result`);
205
112
  }
206
- if (options === null || options === void 0 ? void 0 : options.limit) {
207
- documents = documents.slice(0, options.limit);
113
+ break;
114
+ case FirestoreClient_1.Action.Delete:
115
+ if (exists) {
116
+ documentMap.delete(operation.document._path);
117
+ core_1.Logger.info(`Repository: Document ${operation.document._path} removed from result`);
208
118
  }
209
- return [2 /*return*/, documents];
119
+ break;
120
+ default:
121
+ throw new Error(`FirestoreClient: Unhandled existing operation ${operation.action} on ${operation.document._path}`);
210
122
  }
211
- });
123
+ }
124
+ core_1.Logger.info(`Repository: ${documentMap.size} documents found`);
125
+ let documents = Array.from(documentMap.values());
126
+ if (options === null || options === void 0 ? void 0 : options.orderBy) {
127
+ documents = (0, core_1._orderBy)(documents, [options.orderBy], [options.orderByDirection || 'asc']);
128
+ }
129
+ if (options === null || options === void 0 ? void 0 : options.limit) {
130
+ documents = documents.slice(0, options.limit);
131
+ }
132
+ return documents;
212
133
  });
213
- };
214
- FirestoreClient.prototype.createDocument = function (document) {
215
- var existingOperation = this.operations.get(document._path);
134
+ }
135
+ createDocument(document) {
136
+ const existingOperation = this.operations.get(document._path);
216
137
  if (existingOperation) {
217
138
  switch (existingOperation.action) {
218
139
  case FirestoreClient_1.Action.Create:
219
- throw new Error("FirestoreClient: can't create twice document ".concat(document._path));
140
+ throw new Error(`FirestoreClient: can't create twice document ${document._path}`);
220
141
  case FirestoreClient_1.Action.Update:
221
- throw new Error("FirestoreClient: can't create already existing document ".concat(document._path));
142
+ throw new Error(`FirestoreClient: can't create already existing document ${document._path}`);
222
143
  case FirestoreClient_1.Action.Delete:
223
144
  existingOperation.action = FirestoreClient_1.Action.Update;
224
145
  existingOperation.document = document;
225
146
  break;
226
147
  default:
227
- throw new Error("FirestoreClient: Unhandled existing operation ".concat(existingOperation.action, " on ").concat(document._path));
148
+ throw new Error(`FirestoreClient: Unhandled existing operation ${existingOperation.action} on ${document._path}`);
228
149
  }
229
150
  }
230
151
  else {
231
- this.operations.set(document._path, { document: document, action: FirestoreClient_1.Action.Create, committed: false });
152
+ this.operations.set(document._path, { document, action: FirestoreClient_1.Action.Create, committed: false });
232
153
  }
233
- };
234
- FirestoreClient.prototype.updateDocument = function (document) {
235
- var existingOperation = this.operations.get(document._path);
154
+ }
155
+ updateDocument(document) {
156
+ const existingOperation = this.operations.get(document._path);
236
157
  if (existingOperation) {
237
158
  switch (existingOperation.action) {
238
159
  case FirestoreClient_1.Action.Create:
@@ -240,17 +161,17 @@ var FirestoreClient = /** @class */ (function () {
240
161
  existingOperation.document = document;
241
162
  break;
242
163
  case FirestoreClient_1.Action.Delete:
243
- throw new Error("FirestoreClient: can't update deleted document ".concat(document._path));
164
+ throw new Error(`FirestoreClient: can't update deleted document ${document._path}`);
244
165
  default:
245
- throw new Error("FirestoreClient: Unhandled existing operation ".concat(existingOperation.action, " on ").concat(document._path));
166
+ throw new Error(`FirestoreClient: Unhandled existing operation ${existingOperation.action} on ${document._path}`);
246
167
  }
247
168
  }
248
169
  else {
249
- this.operations.set(document._path, { document: document, action: FirestoreClient_1.Action.Update, committed: false });
170
+ this.operations.set(document._path, { document, action: FirestoreClient_1.Action.Update, committed: false });
250
171
  }
251
- };
252
- FirestoreClient.prototype.deleteDocument = function (document) {
253
- var existingOperation = this.operations.get(document._path);
172
+ }
173
+ deleteDocument(document) {
174
+ const existingOperation = this.operations.get(document._path);
254
175
  if (existingOperation) {
255
176
  switch (existingOperation.action) {
256
177
  case FirestoreClient_1.Action.Create:
@@ -261,73 +182,57 @@ var FirestoreClient = /** @class */ (function () {
261
182
  existingOperation.action = FirestoreClient_1.Action.Delete;
262
183
  break;
263
184
  case FirestoreClient_1.Action.Delete:
264
- throw new Error("FirestoreClient: can't delete already deleted document ".concat(document._path));
185
+ throw new Error(`FirestoreClient: can't delete already deleted document ${document._path}`);
265
186
  default:
266
- throw new Error("FirestoreClient: Unhandled existing operation ".concat(existingOperation.action, " on ").concat(document._path));
187
+ throw new Error(`FirestoreClient: Unhandled existing operation ${existingOperation.action} on ${document._path}`);
267
188
  }
268
189
  }
269
190
  else {
270
- this.operations.set(document._path, { document: document, action: FirestoreClient_1.Action.Delete, committed: false });
191
+ this.operations.set(document._path, { document, action: FirestoreClient_1.Action.Delete, committed: false });
271
192
  }
272
- };
273
- FirestoreClient.prototype.getCollectionReference = function (collection) {
193
+ }
194
+ getCollectionReference(collection) {
274
195
  if (collection.startsWith('**/')) {
275
196
  return this.db.collectionGroup(collection.replace('**/', ''));
276
197
  }
277
198
  else {
278
199
  return this.db.collection(collection);
279
200
  }
280
- };
281
- FirestoreClient.prototype.queryCollection = function (collection, whereClauses, options) {
282
- if (whereClauses === void 0) { whereClauses = []; }
283
- return __awaiter(this, void 0, void 0, function () {
284
- var query, querySnapshot, documents;
285
- return __generator(this, function (_a) {
286
- switch (_a.label) {
287
- case 0:
288
- query = this.getCollectionReference(collection);
289
- whereClauses.forEach(function (where) {
290
- query = query.where(where[0], where[1], where[2]);
291
- });
292
- if (options === null || options === void 0 ? void 0 : options.orderBy) {
293
- query = query.orderBy(options.orderBy, options.orderByDirection || 'asc');
294
- }
295
- if (options === null || options === void 0 ? void 0 : options.limit) {
296
- query = query.limit(options.limit);
297
- }
298
- return [4 /*yield*/, query.get()];
299
- case 1:
300
- querySnapshot = _a.sent();
301
- documents = new Map();
302
- querySnapshot.forEach(function (doc) {
303
- var document = (0, core_1.deserialize)(doc.data());
304
- documents.set(document._path, document);
305
- });
306
- return [2 /*return*/, documents];
307
- }
201
+ }
202
+ queryCollection(collection, whereClauses = [], options) {
203
+ return __awaiter(this, void 0, void 0, function* () {
204
+ let query = this.getCollectionReference(collection);
205
+ whereClauses.forEach(where => {
206
+ query = query.where(where[0], where[1], where[2]);
308
207
  });
309
- });
310
- };
311
- FirestoreClient.prototype.queryDocument = function (path) {
312
- return __awaiter(this, void 0, void 0, function () {
313
- var doc, result;
314
- return __generator(this, function (_a) {
315
- switch (_a.label) {
316
- case 0: return [4 /*yield*/, this.db.doc(path).get()];
317
- case 1:
318
- doc = _a.sent();
319
- result = doc.data();
320
- return [2 /*return*/, result ? (0, core_1.deserialize)(result) : null];
321
- }
208
+ if (options === null || options === void 0 ? void 0 : options.orderBy) {
209
+ query = query.orderBy(options.orderBy, options.orderByDirection || 'asc');
210
+ }
211
+ if (options === null || options === void 0 ? void 0 : options.limit) {
212
+ query = query.limit(options.limit);
213
+ }
214
+ const querySnapshot = yield query.get();
215
+ const documents = new Map();
216
+ querySnapshot.forEach(doc => {
217
+ const document = (0, core_1.deserialize)(doc.data());
218
+ documents.set(document._path, document);
322
219
  });
220
+ return documents;
323
221
  });
324
- };
325
- FirestoreClient.prototype.doesDocumentMatchQuery = function (document, collection, whereClauses) {
326
- var serializedDocument = (0, core_1.serialize)(document);
327
- return document._path.startsWith("".concat(collection, "/")) && whereClauses.every(function (wc) {
328
- var documentValue = serializedDocument[wc[0]];
329
- var operator = wc[1];
330
- var expectedValue = wc[2];
222
+ }
223
+ queryDocument(path) {
224
+ return __awaiter(this, void 0, void 0, function* () {
225
+ const doc = yield this.db.doc(path).get();
226
+ const result = doc.data();
227
+ return result ? (0, core_1.deserialize)(result) : null;
228
+ });
229
+ }
230
+ doesDocumentMatchQuery(document, collection, whereClauses) {
231
+ const serializedDocument = (0, core_1.serialize)(document);
232
+ return document._path.startsWith(`${collection}/`) && whereClauses.every(wc => {
233
+ const documentValue = serializedDocument[wc[0]];
234
+ const operator = wc[1];
235
+ const expectedValue = wc[2];
331
236
  switch (operator) {
332
237
  case '==':
333
238
  return documentValue === expectedValue;
@@ -344,52 +249,49 @@ var FirestoreClient = /** @class */ (function () {
344
249
  case 'array-contains':
345
250
  return Array.isArray(documentValue) && documentValue.includes(expectedValue);
346
251
  case 'array-contains-any':
347
- return Array.isArray(documentValue) && Array.isArray(expectedValue) && documentValue.some(function (v) { return expectedValue.includes(v); });
252
+ return Array.isArray(documentValue) && Array.isArray(expectedValue) && documentValue.some(v => expectedValue.includes(v));
348
253
  case 'in':
349
254
  return Array.isArray(expectedValue) && expectedValue.includes(documentValue);
350
255
  case 'not-in':
351
256
  return Array.isArray(expectedValue) && !expectedValue.includes(documentValue);
352
257
  default:
353
- throw new Error("Operator ".concat(operator, " not handled!"));
258
+ throw new Error(`Operator ${operator} not handled!`);
354
259
  }
355
260
  });
356
- };
357
- FirestoreClient.prototype.isCreateOperation = function (operation) {
261
+ }
262
+ isCreateOperation(operation) {
358
263
  return operation.action === FirestoreClient_1.Action.Create;
359
- };
360
- FirestoreClient.prototype.isUpdateOperation = function (operation) {
264
+ }
265
+ isUpdateOperation(operation) {
361
266
  return operation.action === FirestoreClient_1.Action.Update;
362
- };
363
- FirestoreClient.prototype.isDeleteOperation = function (operation) {
267
+ }
268
+ isDeleteOperation(operation) {
364
269
  return operation.action === FirestoreClient_1.Action.Delete;
365
- };
366
- var FirestoreClient_1;
367
- __decorate([
368
- (0, core_1.Cacheable)(),
369
- __metadata("design:type", Function),
370
- __metadata("design:paramtypes", [String, Array, Object]),
371
- __metadata("design:returntype", Promise)
372
- ], FirestoreClient.prototype, "queryCollection", null);
373
- __decorate([
374
- (0, core_1.Cacheable)(),
375
- __metadata("design:type", Function),
376
- __metadata("design:paramtypes", [String]),
377
- __metadata("design:returntype", Promise)
378
- ], FirestoreClient.prototype, "queryDocument", null);
379
- FirestoreClient = FirestoreClient_1 = __decorate([
380
- (0, decorators_1.TransactionalClient)(),
381
- (0, decorators_1.Injectable)()
382
- ], FirestoreClient);
383
- return FirestoreClient;
384
- }());
270
+ }
271
+ };
385
272
  exports.FirestoreClient = FirestoreClient;
273
+ __decorate([
274
+ (0, core_1.Cacheable)(),
275
+ __metadata("design:type", Function),
276
+ __metadata("design:paramtypes", [String, Array, Object]),
277
+ __metadata("design:returntype", Promise)
278
+ ], FirestoreClient.prototype, "queryCollection", null);
279
+ __decorate([
280
+ (0, core_1.Cacheable)(),
281
+ __metadata("design:type", Function),
282
+ __metadata("design:paramtypes", [String]),
283
+ __metadata("design:returntype", Promise)
284
+ ], FirestoreClient.prototype, "queryDocument", null);
285
+ exports.FirestoreClient = FirestoreClient = FirestoreClient_1 = __decorate([
286
+ (0, decorators_1.TransactionalClient)(),
287
+ (0, decorators_1.Injectable)()
288
+ ], FirestoreClient);
386
289
  (function (FirestoreClient) {
387
- var Action;
290
+ let Action;
388
291
  (function (Action) {
389
292
  Action[Action["Create"] = 'Create'] = "Create";
390
293
  Action[Action["Update"] = 'Update'] = "Update";
391
294
  Action[Action["Delete"] = 'Delete'] = "Delete";
392
295
  })(Action = FirestoreClient.Action || (FirestoreClient.Action = {}));
393
- })(FirestoreClient = exports.FirestoreClient || (exports.FirestoreClient = {}));
394
- exports.FirestoreClient = FirestoreClient;
296
+ })(FirestoreClient || (exports.FirestoreClient = FirestoreClient = {}));
395
297
  //# sourceMappingURL=firestore-client.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"firestore-client.js","sourceRoot":"","sources":["../src/firestore-client.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"firestore-client.js","sourceRoot":"","sources":["../src/firestore-client.ts"],"names":[],"mappings":"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"}