@webda/gcp 2.0.0-beta.3 → 2.0.0
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.
- package/lib/index.d.ts +4 -1
- package/lib/index.js +4 -17
- package/lib/index.js.map +1 -1
- package/lib/index.spec.d.ts +1 -1
- package/lib/index.spec.js +4 -22
- package/lib/index.spec.js.map +1 -1
- package/lib/services/firestore.js +207 -256
- package/lib/services/firestore.js.map +1 -1
- package/lib/services/firestore.spec.js +132 -169
- package/lib/services/firestore.spec.js.map +1 -1
- package/lib/services/index.d.ts +1 -1
- package/lib/services/index.js +1 -17
- package/lib/services/index.js.map +1 -1
- package/lib/services/pubsub.js +19 -40
- package/lib/services/pubsub.js.map +1 -1
- package/lib/services/pubsub.spec.js +45 -58
- package/lib/services/pubsub.spec.js.map +1 -1
- package/lib/services/queue.js +63 -90
- package/lib/services/queue.js.map +1 -1
- package/lib/services/queue.spec.js +75 -92
- package/lib/services/queue.spec.js.map +1 -1
- package/lib/services/storage.d.ts +2 -0
- package/lib/services/storage.js +93 -126
- package/lib/services/storage.js.map +1 -1
- package/lib/services/storage.spec.js +113 -169
- package/lib/services/storage.spec.js.map +1 -1
- package/package.json +13 -10
- package/webda.module.json +98 -66
|
@@ -1,35 +1,21 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
|
4
|
-
return new (P || (P = Promise))(function (resolve, reject) {
|
|
5
|
-
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
|
|
6
|
-
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
|
|
7
|
-
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
|
|
8
|
-
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
|
9
|
-
});
|
|
10
|
-
};
|
|
11
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
12
|
-
exports.FireStore = exports.FireStoreParameters = void 0;
|
|
13
|
-
const firestore_1 = require("@google-cloud/firestore");
|
|
14
|
-
const core_1 = require("@webda/core");
|
|
1
|
+
import { FieldValue, Firestore, Timestamp } from "@google-cloud/firestore";
|
|
2
|
+
import { CoreModel, Store, StoreNotFoundError, StoreParameters, UpdateConditionFailError, WebdaQL, } from "@webda/core";
|
|
15
3
|
/**
|
|
16
4
|
* Firebase parameters
|
|
17
5
|
*/
|
|
18
|
-
class FireStoreParameters extends
|
|
6
|
+
export class FireStoreParameters extends StoreParameters {
|
|
19
7
|
constructor(params, service) {
|
|
20
|
-
var _a;
|
|
21
8
|
super(params, service);
|
|
22
9
|
// Default to empty compoundIndexes
|
|
23
|
-
|
|
10
|
+
this.compoundIndexes ?? (this.compoundIndexes = []);
|
|
24
11
|
}
|
|
25
12
|
}
|
|
26
|
-
exports.FireStoreParameters = FireStoreParameters;
|
|
27
13
|
/**
|
|
28
14
|
* Implement Firebase abstraction within Webda
|
|
29
15
|
*
|
|
30
16
|
* @WebdaModda GoogleCloudFireStore
|
|
31
17
|
*/
|
|
32
|
-
class FireStore extends
|
|
18
|
+
export default class FireStore extends Store {
|
|
33
19
|
/**
|
|
34
20
|
* @override
|
|
35
21
|
*/
|
|
@@ -39,28 +25,22 @@ class FireStore extends core_1.Store {
|
|
|
39
25
|
/**
|
|
40
26
|
* @override
|
|
41
27
|
*/
|
|
42
|
-
init() {
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
});
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
this.compoundIndexes = {};
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
this.compoundIndexes[key]
|
|
55
|
-
Object.keys(a).forEach(field => {
|
|
56
|
-
var _a;
|
|
57
|
-
var _b;
|
|
58
|
-
(_a = (_b = this.compoundIndexes[key])[field]) !== null && _a !== void 0 ? _a : (_b[field] = new Set());
|
|
59
|
-
this.compoundIndexes[key][field].add(a[field]);
|
|
60
|
-
});
|
|
28
|
+
async init() {
|
|
29
|
+
await super.init();
|
|
30
|
+
this.firestore = new Firestore();
|
|
31
|
+
this.firestore.settings({ ignoreUndefinedProperties: true });
|
|
32
|
+
this.compoundIndexes = {};
|
|
33
|
+
this.parameters.compoundIndexes.forEach(a => {
|
|
34
|
+
const key = Object.keys(a).join("/");
|
|
35
|
+
// Should contain the array of accessible order
|
|
36
|
+
this.compoundIndexes[key] = {};
|
|
37
|
+
Object.keys(a).forEach(field => {
|
|
38
|
+
var _a;
|
|
39
|
+
(_a = this.compoundIndexes[key])[field] ?? (_a[field] = new Set());
|
|
40
|
+
this.compoundIndexes[key][field].add(a[field]);
|
|
61
41
|
});
|
|
62
|
-
return this;
|
|
63
42
|
});
|
|
43
|
+
return this;
|
|
64
44
|
}
|
|
65
45
|
/**
|
|
66
46
|
* Get Document Reference
|
|
@@ -76,91 +56,89 @@ class FireStore extends core_1.Store {
|
|
|
76
56
|
*
|
|
77
57
|
* Return all for now
|
|
78
58
|
*/
|
|
79
|
-
find(parsedQuery) {
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
59
|
+
async find(parsedQuery) {
|
|
60
|
+
let offset = parseInt(parsedQuery.continuationToken || "0");
|
|
61
|
+
let query = this.firestore.collection(this.parameters.collection);
|
|
62
|
+
if (offset) {
|
|
63
|
+
query = query.offset(offset);
|
|
64
|
+
}
|
|
65
|
+
let filter = new WebdaQL.AndExpression([]);
|
|
66
|
+
let rangeAttribute;
|
|
67
|
+
let toProcess;
|
|
68
|
+
if (!(parsedQuery.filter instanceof WebdaQL.AndExpression)) {
|
|
69
|
+
toProcess = new WebdaQL.AndExpression([parsedQuery.filter]);
|
|
70
|
+
}
|
|
71
|
+
else {
|
|
72
|
+
toProcess = parsedQuery.filter;
|
|
73
|
+
}
|
|
74
|
+
const queryAttributes = new Set();
|
|
75
|
+
let count = 0;
|
|
76
|
+
let hasIn = false;
|
|
77
|
+
toProcess.children.forEach((child) => {
|
|
78
|
+
if (!(child instanceof WebdaQL.ComparisonExpression) || count) {
|
|
79
|
+
// Do not manage OR yet
|
|
80
|
+
filter.children.push(child);
|
|
81
|
+
return;
|
|
91
82
|
}
|
|
92
|
-
|
|
93
|
-
|
|
83
|
+
if (child.operator === "LIKE") {
|
|
84
|
+
this.log("WARN", "Firebase do not natively have 'LIKE'");
|
|
85
|
+
// LIKE is not managed by Firestore
|
|
86
|
+
filter.children.push(child);
|
|
87
|
+
return;
|
|
94
88
|
}
|
|
95
|
-
|
|
96
|
-
let
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
if (child.operator === "LIKE") {
|
|
105
|
-
this.log("WARN", "Firebase do not natively have 'LIKE'");
|
|
106
|
-
// LIKE is not managed by Firestore
|
|
107
|
-
filter.children.push(child);
|
|
108
|
-
return;
|
|
89
|
+
let operator;
|
|
90
|
+
let attribute = child.attribute.join(".");
|
|
91
|
+
queryAttributes.add(attribute);
|
|
92
|
+
// Translate operators
|
|
93
|
+
if (["=", "IN"].includes(child.operator)) {
|
|
94
|
+
// = is permitted on every fields
|
|
95
|
+
// if rangeQuery then need to check indexes
|
|
96
|
+
if (child.operator === "=") {
|
|
97
|
+
operator = "==";
|
|
109
98
|
}
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
// if rangeQuery then need to check indexes
|
|
117
|
-
if (child.operator === "=") {
|
|
118
|
-
operator = "==";
|
|
99
|
+
else if (child.operator === "IN") {
|
|
100
|
+
operator = "in";
|
|
101
|
+
if (child.value.length > 10) {
|
|
102
|
+
this.log("WARN", "Firebase cannot have more than 10 values for 'in'");
|
|
103
|
+
filter.children.push(child);
|
|
104
|
+
return;
|
|
119
105
|
}
|
|
120
|
-
|
|
121
|
-
|
|
122
|
-
|
|
123
|
-
|
|
124
|
-
filter.children.push(child);
|
|
125
|
-
return;
|
|
126
|
-
}
|
|
127
|
-
if (hasIn) {
|
|
128
|
-
this.log("WARN", "Firebase cannot have two 'in' clause");
|
|
129
|
-
filter.children.push(child);
|
|
130
|
-
return;
|
|
131
|
-
}
|
|
132
|
-
hasIn = true;
|
|
106
|
+
if (hasIn) {
|
|
107
|
+
this.log("WARN", "Firebase cannot have two 'in' clause");
|
|
108
|
+
filter.children.push(child);
|
|
109
|
+
return;
|
|
133
110
|
}
|
|
111
|
+
hasIn = true;
|
|
112
|
+
}
|
|
113
|
+
}
|
|
114
|
+
else {
|
|
115
|
+
// Requires compoundIndex
|
|
116
|
+
if (queryAttributes.size > 1 && !this.compoundIndexes[[...queryAttributes.values()].sort().join("/")]) {
|
|
117
|
+
this.log("WARN", "Compound index not defined");
|
|
118
|
+
filter.children.push(child);
|
|
119
|
+
return;
|
|
134
120
|
}
|
|
135
|
-
|
|
136
|
-
//
|
|
137
|
-
|
|
138
|
-
|
|
121
|
+
if (child.operator !== "!=") {
|
|
122
|
+
// Check compoundIndex exist
|
|
123
|
+
rangeAttribute ?? (rangeAttribute = attribute);
|
|
124
|
+
// Range need to apply on only one attribute
|
|
125
|
+
if (rangeAttribute !== attribute) {
|
|
139
126
|
filter.children.push(child);
|
|
140
127
|
return;
|
|
141
128
|
}
|
|
142
|
-
if (child.operator !== "!=") {
|
|
143
|
-
// Check compoundIndex exist
|
|
144
|
-
rangeAttribute !== null && rangeAttribute !== void 0 ? rangeAttribute : (rangeAttribute = attribute);
|
|
145
|
-
// Range need to apply on only one attribute
|
|
146
|
-
if (rangeAttribute !== attribute) {
|
|
147
|
-
filter.children.push(child);
|
|
148
|
-
return;
|
|
149
|
-
}
|
|
150
|
-
}
|
|
151
|
-
operator = child.operator;
|
|
152
129
|
}
|
|
153
|
-
|
|
154
|
-
}
|
|
155
|
-
|
|
156
|
-
query = this.handleOrderBy(query, parsedQuery.orderBy, rangeAttribute);
|
|
157
|
-
const res = yield query.limit(parsedQuery.limit || 0).get();
|
|
158
|
-
return {
|
|
159
|
-
results: res.docs.map(d => this.initModel(d.data())),
|
|
160
|
-
filter: filter.children.length ? filter : true,
|
|
161
|
-
continuationToken: res.docs.length >= parsedQuery.limit ? (offset + parsedQuery.limit).toString() : undefined,
|
|
162
|
-
};
|
|
130
|
+
operator = child.operator;
|
|
131
|
+
}
|
|
132
|
+
query = query.where(attribute, operator, child.value);
|
|
163
133
|
});
|
|
134
|
+
// OrderBy have quite some complexity with FireStore
|
|
135
|
+
query = this.handleOrderBy(query, parsedQuery.orderBy, rangeAttribute);
|
|
136
|
+
const res = await query.limit(parsedQuery.limit || 0).get();
|
|
137
|
+
return {
|
|
138
|
+
results: res.docs.map(d => this.initModel(d.data())),
|
|
139
|
+
filter: filter.children.length ? filter : true,
|
|
140
|
+
continuationToken: res.docs.length >= parsedQuery.limit ? (offset + parsedQuery.limit).toString() : undefined,
|
|
141
|
+
};
|
|
164
142
|
}
|
|
165
143
|
/**
|
|
166
144
|
* Manage OrderBy complex condition on Firebase
|
|
@@ -214,214 +192,187 @@ class FireStore extends core_1.Store {
|
|
|
214
192
|
/**
|
|
215
193
|
* @override
|
|
216
194
|
*/
|
|
217
|
-
exists(uid) {
|
|
218
|
-
return
|
|
219
|
-
return (yield this.getDocumentRef(uid).get()).exists;
|
|
220
|
-
});
|
|
195
|
+
async exists(uid) {
|
|
196
|
+
return (await this.getDocumentRef(uid).get()).exists;
|
|
221
197
|
}
|
|
222
198
|
/**
|
|
223
199
|
* @override
|
|
224
200
|
*/
|
|
225
|
-
_delete(uid, writeCondition, itemWriteConditionField) {
|
|
226
|
-
|
|
227
|
-
|
|
228
|
-
|
|
229
|
-
|
|
230
|
-
|
|
231
|
-
|
|
232
|
-
|
|
233
|
-
t.delete(docRef);
|
|
234
|
-
}));
|
|
201
|
+
async _delete(uid, writeCondition, itemWriteConditionField) {
|
|
202
|
+
await this.firestore.runTransaction(async (t) => {
|
|
203
|
+
const docRef = this.getDocumentRef(uid);
|
|
204
|
+
const doc = (await t.get(docRef)).data();
|
|
205
|
+
if (writeCondition && doc[itemWriteConditionField] !== writeCondition) {
|
|
206
|
+
throw new UpdateConditionFailError(uid, itemWriteConditionField, writeCondition);
|
|
207
|
+
}
|
|
208
|
+
t.delete(docRef);
|
|
235
209
|
});
|
|
236
210
|
}
|
|
237
211
|
/**
|
|
238
212
|
* @override
|
|
239
213
|
*/
|
|
240
|
-
_get(uid, raiseIfNotFound) {
|
|
241
|
-
|
|
242
|
-
|
|
243
|
-
if (
|
|
244
|
-
|
|
245
|
-
throw new core_1.StoreNotFoundError(uid, this.getName());
|
|
246
|
-
}
|
|
247
|
-
return undefined;
|
|
214
|
+
async _get(uid, raiseIfNotFound) {
|
|
215
|
+
let doc = (await this.getDocumentRef(uid).get()).data();
|
|
216
|
+
if (!doc) {
|
|
217
|
+
if (raiseIfNotFound) {
|
|
218
|
+
throw new StoreNotFoundError(uid, this.getName());
|
|
248
219
|
}
|
|
249
|
-
return
|
|
250
|
-
}
|
|
220
|
+
return undefined;
|
|
221
|
+
}
|
|
222
|
+
return this.initModel(doc);
|
|
251
223
|
}
|
|
252
224
|
/**
|
|
253
225
|
* @override
|
|
254
226
|
*/
|
|
255
|
-
getAll(list) {
|
|
256
|
-
|
|
257
|
-
|
|
258
|
-
|
|
259
|
-
|
|
260
|
-
|
|
261
|
-
|
|
262
|
-
|
|
263
|
-
|
|
264
|
-
return res.map(this.initModel, this);
|
|
265
|
-
});
|
|
227
|
+
async getAll(list) {
|
|
228
|
+
let res = [];
|
|
229
|
+
if (list) {
|
|
230
|
+
res = (await this.firestore.collection(this.parameters.collection).where("uuid", "in", list).get()).docs;
|
|
231
|
+
}
|
|
232
|
+
else {
|
|
233
|
+
res = await this.firestore.collection(this.parameters.collection).listDocuments();
|
|
234
|
+
}
|
|
235
|
+
return res.map(this.initModel, this);
|
|
266
236
|
}
|
|
267
237
|
/**
|
|
268
238
|
* @override
|
|
269
239
|
*/
|
|
270
|
-
_update(object, uid, itemWriteCondition, itemWriteConditionField) {
|
|
271
|
-
|
|
272
|
-
yield this._setDocument(false, object, uid, itemWriteCondition, itemWriteConditionField);
|
|
273
|
-
});
|
|
240
|
+
async _update(object, uid, itemWriteCondition, itemWriteConditionField) {
|
|
241
|
+
await this._setDocument(false, object, uid, itemWriteCondition, itemWriteConditionField);
|
|
274
242
|
}
|
|
275
243
|
checkCondition(uid, data, field, condition) {
|
|
276
244
|
if (condition) {
|
|
277
|
-
let values = [data[field], condition].map(i => (i instanceof
|
|
245
|
+
let values = [data[field], condition].map(i => (i instanceof Timestamp ? i.toMillis() : i));
|
|
278
246
|
if (values[0] !== values[1]) {
|
|
279
|
-
throw new
|
|
247
|
+
throw new UpdateConditionFailError(uid, field, condition);
|
|
280
248
|
}
|
|
281
249
|
}
|
|
282
250
|
}
|
|
283
251
|
/***
|
|
284
252
|
* Internal function that implement both update and patch
|
|
285
253
|
*/
|
|
286
|
-
_setDocument(merge, object, uid, itemWriteCondition, itemWriteConditionField) {
|
|
287
|
-
|
|
288
|
-
|
|
289
|
-
|
|
290
|
-
|
|
254
|
+
async _setDocument(merge, object, uid, itemWriteCondition, itemWriteConditionField) {
|
|
255
|
+
let update = object;
|
|
256
|
+
if (object instanceof CoreModel) {
|
|
257
|
+
update = object.toStoredJSON();
|
|
258
|
+
}
|
|
259
|
+
await this.firestore.runTransaction(async (t) => {
|
|
260
|
+
const docRef = this.getDocumentRef(uid);
|
|
261
|
+
const doc = await t.get(docRef);
|
|
262
|
+
if (!doc.exists) {
|
|
263
|
+
throw new StoreNotFoundError(uid, this.getName());
|
|
291
264
|
}
|
|
292
|
-
|
|
293
|
-
|
|
294
|
-
|
|
295
|
-
|
|
296
|
-
throw new core_1.StoreNotFoundError(uid, this.getName());
|
|
297
|
-
}
|
|
298
|
-
this.checkCondition(uid, doc.data(), itemWriteConditionField, itemWriteCondition);
|
|
299
|
-
t.set(docRef, update, {
|
|
300
|
-
merge,
|
|
301
|
-
});
|
|
302
|
-
}));
|
|
303
|
-
});
|
|
304
|
-
}
|
|
305
|
-
/**
|
|
306
|
-
* @override
|
|
307
|
-
*/
|
|
308
|
-
_patch(object, uid, itemWriteCondition, itemWriteConditionField) {
|
|
309
|
-
return __awaiter(this, void 0, void 0, function* () {
|
|
310
|
-
yield this._setDocument(true, object, uid, itemWriteCondition, itemWriteConditionField);
|
|
265
|
+
this.checkCondition(uid, doc.data(), itemWriteConditionField, itemWriteCondition);
|
|
266
|
+
t.set(docRef, update, {
|
|
267
|
+
merge,
|
|
268
|
+
});
|
|
311
269
|
});
|
|
312
270
|
}
|
|
313
271
|
/**
|
|
314
272
|
* @override
|
|
315
273
|
*/
|
|
316
|
-
|
|
317
|
-
|
|
318
|
-
yield this.firestore.runTransaction((t) => __awaiter(this, void 0, void 0, function* () {
|
|
319
|
-
const docRef = this.getDocumentRef(uuid);
|
|
320
|
-
const doc = yield t.get(docRef);
|
|
321
|
-
if (!doc.exists) {
|
|
322
|
-
throw new core_1.StoreNotFoundError(uuid, this.getName());
|
|
323
|
-
}
|
|
324
|
-
this.checkCondition(uuid, doc.data(), itemWriteConditionField, itemWriteCondition);
|
|
325
|
-
t.update(docRef, {
|
|
326
|
-
[attribute]: firestore_1.FieldValue.delete(),
|
|
327
|
-
});
|
|
328
|
-
}));
|
|
329
|
-
});
|
|
274
|
+
async _patch(object, uid, itemWriteCondition, itemWriteConditionField) {
|
|
275
|
+
await this._setDocument(true, object, uid, itemWriteCondition, itemWriteConditionField);
|
|
330
276
|
}
|
|
331
277
|
/**
|
|
332
278
|
* @override
|
|
333
279
|
*/
|
|
334
|
-
|
|
335
|
-
|
|
336
|
-
|
|
337
|
-
|
|
280
|
+
async _removeAttribute(uuid, attribute, itemWriteCondition, itemWriteConditionField) {
|
|
281
|
+
await this.firestore.runTransaction(async (t) => {
|
|
282
|
+
const docRef = this.getDocumentRef(uuid);
|
|
283
|
+
const doc = await t.get(docRef);
|
|
284
|
+
if (!doc.exists) {
|
|
285
|
+
throw new StoreNotFoundError(uuid, this.getName());
|
|
286
|
+
}
|
|
287
|
+
this.checkCondition(uuid, doc.data(), itemWriteConditionField, itemWriteCondition);
|
|
288
|
+
t.update(docRef, {
|
|
289
|
+
[attribute]: FieldValue.delete(),
|
|
290
|
+
});
|
|
338
291
|
});
|
|
339
292
|
}
|
|
340
293
|
/**
|
|
341
294
|
* @override
|
|
342
295
|
*/
|
|
343
|
-
|
|
344
|
-
|
|
345
|
-
|
|
346
|
-
yield this.getDocumentRef(uid).update({
|
|
347
|
-
[prop]: firestore_1.FieldValue.increment(value),
|
|
348
|
-
[this._lastUpdateField]: updateDate,
|
|
349
|
-
});
|
|
350
|
-
}
|
|
351
|
-
catch (err) {
|
|
352
|
-
if (err.code === 5) {
|
|
353
|
-
throw new core_1.StoreNotFoundError(uid, this.getName());
|
|
354
|
-
}
|
|
355
|
-
throw err;
|
|
356
|
-
}
|
|
357
|
-
});
|
|
296
|
+
async _save(object) {
|
|
297
|
+
await this.getDocumentRef(object.getUuid()).set(object.toStoredJSON());
|
|
298
|
+
return object;
|
|
358
299
|
}
|
|
359
300
|
/**
|
|
360
301
|
* @override
|
|
361
302
|
*/
|
|
362
|
-
|
|
363
|
-
|
|
364
|
-
|
|
365
|
-
|
|
366
|
-
|
|
367
|
-
|
|
368
|
-
|
|
369
|
-
|
|
370
|
-
|
|
371
|
-
|
|
372
|
-
this.checkCondition(uid, data[prop][index], itemWriteConditionField, itemWriteCondition);
|
|
373
|
-
data[prop][index] = item;
|
|
374
|
-
t.update(docRef, {
|
|
375
|
-
[prop]: data[prop],
|
|
376
|
-
[this._lastUpdateField]: updateDate,
|
|
377
|
-
});
|
|
378
|
-
}));
|
|
379
|
-
}
|
|
380
|
-
else {
|
|
381
|
-
try {
|
|
382
|
-
yield this.getDocumentRef(uid).update({
|
|
383
|
-
[prop]: firestore_1.FieldValue.arrayUnion(item),
|
|
384
|
-
});
|
|
385
|
-
}
|
|
386
|
-
catch (err) {
|
|
387
|
-
if (err.code === 5) {
|
|
388
|
-
throw new core_1.StoreNotFoundError(uid, this.getName());
|
|
389
|
-
}
|
|
390
|
-
throw err;
|
|
391
|
-
}
|
|
303
|
+
async _incrementAttribute(uid, prop, value, updateDate) {
|
|
304
|
+
try {
|
|
305
|
+
await this.getDocumentRef(uid).update({
|
|
306
|
+
[prop]: FieldValue.increment(value),
|
|
307
|
+
[this._lastUpdateField]: updateDate,
|
|
308
|
+
});
|
|
309
|
+
}
|
|
310
|
+
catch (err) {
|
|
311
|
+
if (err.code === 5) {
|
|
312
|
+
throw new StoreNotFoundError(uid, this.getName());
|
|
392
313
|
}
|
|
393
|
-
|
|
314
|
+
throw err;
|
|
315
|
+
}
|
|
394
316
|
}
|
|
395
317
|
/**
|
|
396
318
|
* @override
|
|
397
319
|
*/
|
|
398
|
-
|
|
399
|
-
|
|
400
|
-
|
|
320
|
+
async _upsertItemToCollection(uid, prop, item, index, itemWriteCondition, itemWriteConditionField, updateDate) {
|
|
321
|
+
if (index !== undefined) {
|
|
322
|
+
await this.firestore.runTransaction(async (t) => {
|
|
401
323
|
const docRef = this.getDocumentRef(uid);
|
|
402
|
-
const doc =
|
|
324
|
+
const doc = await t.get(docRef);
|
|
403
325
|
if (!doc.exists) {
|
|
404
|
-
throw new
|
|
326
|
+
throw new StoreNotFoundError(uid, this.getName());
|
|
405
327
|
}
|
|
406
328
|
const data = doc.data();
|
|
407
329
|
this.checkCondition(uid, data[prop][index], itemWriteConditionField, itemWriteCondition);
|
|
408
|
-
|
|
330
|
+
data[prop][index] = item;
|
|
409
331
|
t.update(docRef, {
|
|
410
|
-
[prop]:
|
|
332
|
+
[prop]: data[prop],
|
|
411
333
|
[this._lastUpdateField]: updateDate,
|
|
412
334
|
});
|
|
413
|
-
})
|
|
414
|
-
}
|
|
335
|
+
});
|
|
336
|
+
}
|
|
337
|
+
else {
|
|
338
|
+
try {
|
|
339
|
+
await this.getDocumentRef(uid).update({
|
|
340
|
+
[prop]: FieldValue.arrayUnion(item),
|
|
341
|
+
});
|
|
342
|
+
}
|
|
343
|
+
catch (err) {
|
|
344
|
+
if (err.code === 5) {
|
|
345
|
+
throw new StoreNotFoundError(uid, this.getName());
|
|
346
|
+
}
|
|
347
|
+
throw err;
|
|
348
|
+
}
|
|
349
|
+
}
|
|
415
350
|
}
|
|
416
351
|
/**
|
|
417
352
|
* @override
|
|
418
353
|
*/
|
|
419
|
-
|
|
420
|
-
|
|
421
|
-
|
|
354
|
+
async _deleteItemFromCollection(uid, prop, index, itemWriteCondition, itemWriteConditionField, updateDate) {
|
|
355
|
+
await this.firestore.runTransaction(async (t) => {
|
|
356
|
+
const docRef = this.getDocumentRef(uid);
|
|
357
|
+
const doc = await t.get(docRef);
|
|
358
|
+
if (!doc.exists) {
|
|
359
|
+
throw new StoreNotFoundError(uid, this.getName());
|
|
360
|
+
}
|
|
361
|
+
const data = doc.data();
|
|
362
|
+
this.checkCondition(uid, data[prop][index], itemWriteConditionField, itemWriteCondition);
|
|
363
|
+
// Get item from doc?
|
|
364
|
+
t.update(docRef, {
|
|
365
|
+
[prop]: FieldValue.arrayRemove(data[prop][index]),
|
|
366
|
+
[this._lastUpdateField]: updateDate,
|
|
367
|
+
});
|
|
422
368
|
});
|
|
423
369
|
}
|
|
370
|
+
/**
|
|
371
|
+
* @override
|
|
372
|
+
*/
|
|
373
|
+
async __clean() {
|
|
374
|
+
// Empty on purpose, unit test use custom collection each time
|
|
375
|
+
}
|
|
424
376
|
}
|
|
425
|
-
|
|
426
|
-
exports.FireStore = FireStore;
|
|
377
|
+
export { FireStore };
|
|
427
378
|
//# sourceMappingURL=firestore.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"firestore.js","sourceRoot":"","sources":["../../src/services/firestore.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,uDAAgH;AAChH,sCASqB;AAUrB;;GAEG;AACH,MAAa,mBAAoB,SAAQ,sBAAe;IAYtD,YAAY,MAAwC,EAAE,OAAc;;QAClE,KAAK,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;QACvB,mCAAmC;QACnC,MAAA,IAAI,CAAC,eAAe,oCAApB,IAAI,CAAC,eAAe,GAAK,EAAE,EAAC;IAC9B,CAAC;CACF;AAjBD,kDAiBC;AAED;;;;GAIG;AACH,MAAqB,SAGnB,SAAQ,YAAW;IAInB;;OAEG;IACH,cAAc,CAAC,MAAsB;QACnC,OAAO,IAAI,mBAAmB,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC;IAC/C,CAAC;IAED;;OAEG;IACG,IAAI;;;;;YACR,MAAM,OAAM,IAAI,WAAE,CAAC;YACnB,IAAI,CAAC,SAAS,GAAG,IAAI,qBAAS,EAAE,CAAC;YACjC,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,EAAE,yBAAyB,EAAE,IAAI,EAAE,CAAC,CAAC;YAC7D,IAAI,CAAC,eAAe,GAAG,EAAE,CAAC;YAC1B,IAAI,CAAC,UAAU,CAAC,eAAe,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE;gBAC1C,MAAM,GAAG,GAAG,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;gBACrC,+CAA+C;gBAC/C,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,GAAG,EAAE,CAAC;gBAC/B,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE;;;oBAC7B,YAAA,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,EAAC,KAAK,wCAAL,KAAK,IAAM,IAAI,GAAG,EAAkB,EAAC;oBAC/D,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,CAAC,KAAK,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC;gBACjD,CAAC,CAAC,CAAC;YACL,CAAC,CAAC,CAAC;YACH,OAAO,IAAI,CAAC;QACd,CAAC;KAAA;IAED;;;;;OAKG;IACH,cAAc,CAAC,IAAY,EAAE,aAAqB,IAAI,CAAC,UAAU,CAAC,UAAU;QAC1E,OAAO,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,GAAG,UAAU,IAAI,IAAI,EAAE,CAAC,CAAC;IACrD,CAAC;IAED;;;;OAIG;IACG,IAAI,CAAC,WAA0B;;YACnC,IAAI,MAAM,GAAW,QAAQ,CAAC,WAAW,CAAC,iBAAiB,IAAI,GAAG,CAAC,CAAC;YACpE,IAAI,KAAK,GAA4D,IAAI,CAAC,SAAS,CAAC,UAAU,CAC5F,IAAI,CAAC,UAAU,CAAC,UAAU,CAC3B,CAAC;YACF,IAAI,MAAM,EAAE;gBACV,KAAK,GAAG,KAAK,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;aAC9B;YAED,IAAI,MAAM,GAAG,IAAI,cAAO,CAAC,aAAa,CAAC,EAAE,CAAC,CAAC;YAC3C,IAAI,cAAsB,CAAC;YAC3B,IAAI,SAAgC,CAAC;YACrC,IAAI,CAAC,CAAC,WAAW,CAAC,MAAM,YAAY,cAAO,CAAC,aAAa,CAAC,EAAE;gBAC1D,SAAS,GAAG,IAAI,cAAO,CAAC,aAAa,CAAC,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC,CAAC;aAC7D;iBAAM;gBACL,SAAS,GAAG,WAAW,CAAC,MAAM,CAAC;aAChC;YACD,MAAM,eAAe,GAAG,IAAI,GAAG,EAAU,CAAC;YAC1C,IAAI,KAAK,GAAG,CAAC,CAAC;YACd,IAAI,KAAK,GAAG,KAAK,CAAC;YAClB,SAAS,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC,KAAyB,EAAE,EAAE;gBACvD,IAAI,CAAC,CAAC,KAAK,YAAY,cAAO,CAAC,oBAAoB,CAAC,IAAI,KAAK,EAAE;oBAC7D,uBAAuB;oBACvB,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;oBAC5B,OAAO;iBACR;gBACD,IAAI,KAAK,CAAC,QAAQ,KAAK,MAAM,EAAE;oBAC7B,IAAI,CAAC,GAAG,CAAC,MAAM,EAAE,sCAAsC,CAAC,CAAC;oBACzD,mCAAmC;oBACnC,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;oBAC5B,OAAO;iBACR;gBACD,IAAI,QAAyC,CAAC;gBAC9C,IAAI,SAAS,GAAG,KAAK,CAAC,SAAS,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;gBAC1C,eAAe,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;gBAC/B,sBAAsB;gBACtB,IAAI,CAAC,GAAG,EAAE,IAAI,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,QAAQ,CAAC,EAAE;oBACxC,iCAAiC;oBACjC,2CAA2C;oBAC3C,IAAI,KAAK,CAAC,QAAQ,KAAK,GAAG,EAAE;wBAC1B,QAAQ,GAAG,IAAI,CAAC;qBACjB;yBAAM,IAAI,KAAK,CAAC,QAAQ,KAAK,IAAI,EAAE;wBAClC,QAAQ,GAAG,IAAI,CAAC;wBAChB,IAAY,KAAK,CAAC,KAAM,CAAC,MAAM,GAAG,EAAE,EAAE;4BACpC,IAAI,CAAC,GAAG,CAAC,MAAM,EAAE,mDAAmD,CAAC,CAAC;4BACtE,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;4BAC5B,OAAO;yBACR;wBACD,IAAI,KAAK,EAAE;4BACT,IAAI,CAAC,GAAG,CAAC,MAAM,EAAE,sCAAsC,CAAC,CAAC;4BACzD,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;4BAC5B,OAAO;yBACR;wBACD,KAAK,GAAG,IAAI,CAAC;qBACd;iBACF;qBAAM;oBACL,yBAAyB;oBACzB,IAAI,eAAe,CAAC,IAAI,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC,GAAG,eAAe,CAAC,MAAM,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE;wBACrG,IAAI,CAAC,GAAG,CAAC,MAAM,EAAE,4BAA4B,CAAC,CAAC;wBAC/C,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;wBAC5B,OAAO;qBACR;oBACD,IAAI,KAAK,CAAC,QAAQ,KAAK,IAAI,EAAE;wBAC3B,4BAA4B;wBAC5B,cAAc,aAAd,cAAc,cAAd,cAAc,IAAd,cAAc,GAAK,SAAS,EAAC;wBAC7B,4CAA4C;wBAC5C,IAAI,cAAc,KAAK,SAAS,EAAE;4BAChC,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;4BAC5B,OAAO;yBACR;qBACF;oBACD,QAAQ,GAAG,KAAK,CAAC,QAAQ,CAAC;iBAC3B;gBACD,KAAK,GAAG,KAAK,CAAC,KAAK,CAAC,SAAS,EAAE,QAAQ,EAAE,KAAK,CAAC,KAAK,CAAC,CAAC;YACxD,CAAC,CAAC,CAAC;YAEH,oDAAoD;YACpD,KAAK,GAAG,IAAI,CAAC,aAAa,CAAC,KAAK,EAAE,WAAW,CAAC,OAAO,EAAE,cAAc,CAAC,CAAC;YAEvE,MAAM,GAAG,GAAG,MAAM,KAAK,CAAC,KAAK,CAAC,WAAW,CAAC,KAAK,IAAI,CAAC,CAAC,CAAC,GAAG,EAAE,CAAC;YAC5D,OAAO;gBACL,OAAO,EAAE,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC;gBACpD,MAAM,EAAE,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI;gBAC9C,iBAAiB,EAAE,GAAG,CAAC,IAAI,CAAC,MAAM,IAAI,WAAW,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,MAAM,GAAG,WAAW,CAAC,KAAK,CAAC,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC,SAAS;aAC9G,CAAC;QACJ,CAAC;KAAA;IAED;;;;;;OAMG;IACH,aAAa,CACX,KAA8D,EAC9D,OAA0B,EAC1B,cAAsB;QAEtB,wBAAwB;QACxB,IAAI,CAAC,OAAO,EAAE;YACZ,OAAO,KAAK,CAAC;SACd;QACD,IAAI,aAAa,GAAG,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,IAAI,EAAE,CAAC;QAC7D,IAAI,MAAM,CAAC;QACX,uCAAuC;QACvC,IAAI,aAAa,CAAC,MAAM,GAAG,CAAC,EAAE;YAC5B,MAAM,GAAG,IAAI,CAAC,eAAe,CAAC,aAAa,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC;YACvD,IAAI,CAAC,MAAM,EAAE;gBACX,IAAI,CAAC,GAAG,CAAC,MAAM,EAAE,0CAA0C,CAAC,CAAC;gBAC7D,OAAO,KAAK,CAAC;aACd;SACF;QACD,kCAAkC;QAClC,IAAI,cAAc,EAAE;YAClB,IACE,CAAC,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE;gBACpB,oDAAoD;gBACpD,IAAI,KAAK,CAAC,KAAK,KAAK,cAAc,EAAE;oBAClC,KAAK,GAAG,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,KAAK,EAAoB,KAAK,CAAC,SAAS,CAAC,WAAW,EAAE,CAAC,CAAC;oBACpF,OAAO,IAAI,CAAC;iBACb;YACH,CAAC,CAAC,EACF;gBACA,IAAI,CAAC,GAAG,CAAC,MAAM,EAAE,uEAAuE,CAAC,CAAC;gBAC1F,uEAAuE;gBACvE,OAAO,KAAK,CAAC;aACd;SACF;QACD,mCAAmC;QACnC,OAAO;aACJ,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC,KAAK,CAAC,KAAK,KAAK,cAAc,CAAC;aAC/C,OAAO,CAAC,KAAK,CAAC,EAAE;YACf,IAAI,CAAC,MAAM,IAAI,MAAM,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,GAAG,CAAmB,KAAK,CAAC,SAAS,CAAC,WAAW,EAAE,CAAC,EAAE;gBACvF,KAAK,GAAG,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,KAAK,EAAoB,KAAK,CAAC,SAAS,CAAC,WAAW,EAAE,CAAC,CAAC;aACrF;iBAAM;gBACL,IAAI,CAAC,GAAG,CAAC,MAAM,EAAE,oDAAoD,CAAC,CAAC;aACxE;QACH,CAAC,CAAC,CAAC;QACL,OAAO,KAAK,CAAC;IACf,CAAC;IAED;;OAEG;IACG,MAAM,CAAC,GAAW;;YACtB,OAAO,CAAC,MAAM,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,CAAC,CAAC,MAAM,CAAC;QACvD,CAAC;KAAA;IAED;;OAEG;IACG,OAAO,CAAC,GAAW,EAAE,cAAoB,EAAE,uBAAgC;;YAC/E,MAAM,IAAI,CAAC,SAAS,CAAC,cAAc,CAAC,CAAM,CAAC,EAAC,EAAE;gBAC5C,MAAM,MAAM,GAAG,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,CAAC;gBACxC,MAAM,GAAG,GAAG,CAAC,MAAM,CAAC,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;gBACzC,IAAI,cAAc,IAAI,GAAG,CAAC,uBAAuB,CAAC,KAAK,cAAc,EAAE;oBACrE,MAAM,IAAI,+BAAwB,CAAC,GAAG,EAAE,uBAAuB,EAAE,cAAc,CAAC,CAAC;iBAClF;gBACD,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;YACnB,CAAC,CAAA,CAAC,CAAC;QACL,CAAC;KAAA;IAED;;OAEG;IACG,IAAI,CAAC,GAAW,EAAE,eAAyB;;YAC/C,IAAI,GAAG,GAAG,CAAC,MAAM,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC;YACxD,IAAI,CAAC,GAAG,EAAE;gBACR,IAAI,eAAe,EAAE;oBACnB,MAAM,IAAI,yBAAkB,CAAC,GAAG,EAAE,IAAI,CAAC,OAAO,EAAE,CAAC,CAAC;iBACnD;gBACD,OAAO,SAAS,CAAC;aAClB;YACD,OAAO,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC;QAC7B,CAAC;KAAA;IAED;;OAEG;IACG,MAAM,CAAC,IAAe;;YAC1B,IAAI,GAAG,GAAG,EAAE,CAAC;YACb,IAAI,IAAI,EAAE;gBACR,GAAG,GAAG,CAAC,MAAM,IAAI,CAAC,SAAS,CAAC,UAAU,CAAC,IAAI,CAAC,UAAU,CAAC,UAAU,CAAC,CAAC,KAAK,CAAC,MAAM,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC,GAAG,EAAE,CAAC,CAAC,IAAI,CAAC;aAC1G;iBAAM;gBACL,GAAG,GAAG,MAAM,IAAI,CAAC,SAAS,CAAC,UAAU,CAAC,IAAI,CAAC,UAAU,CAAC,UAAU,CAAC,CAAC,aAAa,EAAE,CAAC;aACnF;YACD,OAAO,GAAG,CAAC,GAAG,CAAC,IAAI,CAAC,SAAS,EAAE,IAAI,CAAC,CAAC;QACvC,CAAC;KAAA;IAED;;OAEG;IACG,OAAO,CAAC,MAAW,EAAE,GAAW,EAAE,kBAAwB,EAAE,uBAAgC;;YAChG,MAAM,IAAI,CAAC,YAAY,CAAC,KAAK,EAAE,MAAM,EAAE,GAAG,EAAE,kBAAkB,EAAE,uBAAuB,CAAC,CAAC;QAC3F,CAAC;KAAA;IAES,cAAc,CAAC,GAAW,EAAE,IAAS,EAAE,KAAa,EAAE,SAAc;QAC5E,IAAI,SAAS,EAAE;YACb,IAAI,MAAM,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,SAAS,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,YAAY,qBAAS,CAAC,CAAC,CAAC,CAAC,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;YAC5F,IAAI,MAAM,CAAC,CAAC,CAAC,KAAK,MAAM,CAAC,CAAC,CAAC,EAAE;gBAC3B,MAAM,IAAI,+BAAwB,CAAC,GAAG,EAAE,KAAK,EAAE,SAAS,CAAC,CAAC;aAC3D;SACF;IACH,CAAC;IACD;;OAEG;IACa,YAAY,CAC1B,KAAc,EACd,MAAW,EACX,GAAW,EACX,kBAAwB,EACxB,uBAAgC;;YAEhC,IAAI,MAAM,GAAG,MAAM,CAAC;YACpB,IAAI,MAAM,YAAY,gBAAS,EAAE;gBAC/B,MAAM,GAAG,MAAM,CAAC,YAAY,EAAE,CAAC;aAChC;YACD,MAAM,IAAI,CAAC,SAAS,CAAC,cAAc,CAAC,CAAM,CAAC,EAAC,EAAE;gBAC5C,MAAM,MAAM,GAAG,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,CAAC;gBACxC,MAAM,GAAG,GAAG,MAAM,CAAC,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;gBAChC,IAAI,CAAC,GAAG,CAAC,MAAM,EAAE;oBACf,MAAM,IAAI,yBAAkB,CAAC,GAAG,EAAE,IAAI,CAAC,OAAO,EAAE,CAAC,CAAC;iBACnD;gBACD,IAAI,CAAC,cAAc,CAAC,GAAG,EAAE,GAAG,CAAC,IAAI,EAAE,EAAE,uBAAuB,EAAE,kBAAkB,CAAC,CAAC;gBAClF,CAAC,CAAC,GAAG,CAAC,MAAM,EAAE,MAAM,EAAE;oBACpB,KAAK;iBACN,CAAC,CAAC;YACL,CAAC,CAAA,CAAC,CAAC;QACL,CAAC;KAAA;IAED;;OAEG;IACG,MAAM,CAAC,MAAW,EAAE,GAAW,EAAE,kBAAwB,EAAE,uBAAgC;;YAC/F,MAAM,IAAI,CAAC,YAAY,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,EAAE,kBAAkB,EAAE,uBAAuB,CAAC,CAAC;QAC1F,CAAC;KAAA;IAED;;OAEG;IACG,gBAAgB,CACpB,IAAY,EACZ,SAAiB,EACjB,kBAAwB,EACxB,uBAAgC;;YAEhC,MAAM,IAAI,CAAC,SAAS,CAAC,cAAc,CAAC,CAAM,CAAC,EAAC,EAAE;gBAC5C,MAAM,MAAM,GAAG,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,CAAC;gBACzC,MAAM,GAAG,GAAG,MAAM,CAAC,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;gBAChC,IAAI,CAAC,GAAG,CAAC,MAAM,EAAE;oBACf,MAAM,IAAI,yBAAkB,CAAC,IAAI,EAAE,IAAI,CAAC,OAAO,EAAE,CAAC,CAAC;iBACpD;gBACD,IAAI,CAAC,cAAc,CAAC,IAAI,EAAE,GAAG,CAAC,IAAI,EAAE,EAAE,uBAAuB,EAAE,kBAAkB,CAAC,CAAC;gBACnF,CAAC,CAAC,MAAM,CAAC,MAAM,EAAE;oBACf,CAAC,SAAS,CAAC,EAAE,sBAAU,CAAC,MAAM,EAAE;iBACjC,CAAC,CAAC;YACL,CAAC,CAAA,CAAC,CAAC;QACL,CAAC;KAAA;IAED;;OAEG;IACG,KAAK,CAAC,MAAS;;YACnB,MAAM,IAAI,CAAC,cAAc,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC,CAAC,GAAG,CAAC,MAAM,CAAC,YAAY,EAAE,CAAC,CAAC;YACvE,OAAO,MAAM,CAAC;QAChB,CAAC;KAAA;IAED;;OAEG;IACG,mBAAmB,CAAC,GAAW,EAAE,IAAY,EAAE,KAAa,EAAE,UAAgB;;YAClF,IAAI;gBACF,MAAM,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,CAAC,MAAM,CAAC;oBACpC,CAAC,IAAI,CAAC,EAAE,sBAAU,CAAC,SAAS,CAAC,KAAK,CAAC;oBACnC,CAAC,IAAI,CAAC,gBAAgB,CAAC,EAAE,UAAU;iBACpC,CAAC,CAAC;aACJ;YAAC,OAAO,GAAG,EAAE;gBACZ,IAAI,GAAG,CAAC,IAAI,KAAK,CAAC,EAAE;oBAClB,MAAM,IAAI,yBAAkB,CAAC,GAAG,EAAE,IAAI,CAAC,OAAO,EAAE,CAAC,CAAC;iBACnD;gBACD,MAAM,GAAG,CAAC;aACX;QACH,CAAC;KAAA;IAED;;OAEG;IACG,uBAAuB,CAC3B,GAAW,EACX,IAAY,EACZ,IAAS,EACT,KAAa,EACb,kBAAuB,EACvB,uBAA+B,EAC/B,UAAgB;;YAEhB,IAAI,KAAK,KAAK,SAAS,EAAE;gBACvB,MAAM,IAAI,CAAC,SAAS,CAAC,cAAc,CAAC,CAAM,CAAC,EAAC,EAAE;oBAC5C,MAAM,MAAM,GAAG,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,CAAC;oBACxC,MAAM,GAAG,GAAG,MAAM,CAAC,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;oBAChC,IAAI,CAAC,GAAG,CAAC,MAAM,EAAE;wBACf,MAAM,IAAI,yBAAkB,CAAC,GAAG,EAAE,IAAI,CAAC,OAAO,EAAE,CAAC,CAAC;qBACnD;oBACD,MAAM,IAAI,GAAG,GAAG,CAAC,IAAI,EAAE,CAAC;oBACxB,IAAI,CAAC,cAAc,CAAC,GAAG,EAAE,IAAI,CAAC,IAAI,CAAC,CAAC,KAAK,CAAC,EAAE,uBAAuB,EAAE,kBAAkB,CAAC,CAAC;oBACzF,IAAI,CAAC,IAAI,CAAC,CAAC,KAAK,CAAC,GAAG,IAAI,CAAC;oBACzB,CAAC,CAAC,MAAM,CAAC,MAAM,EAAE;wBACf,CAAC,IAAI,CAAC,EAAE,IAAI,CAAC,IAAI,CAAC;wBAClB,CAAC,IAAI,CAAC,gBAAgB,CAAC,EAAE,UAAU;qBACpC,CAAC,CAAC;gBACL,CAAC,CAAA,CAAC,CAAC;aACJ;iBAAM;gBACL,IAAI;oBACF,MAAM,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,CAAC,MAAM,CAAC;wBACpC,CAAC,IAAI,CAAC,EAAE,sBAAU,CAAC,UAAU,CAAC,IAAI,CAAC;qBACpC,CAAC,CAAC;iBACJ;gBAAC,OAAO,GAAG,EAAE;oBACZ,IAAI,GAAG,CAAC,IAAI,KAAK,CAAC,EAAE;wBAClB,MAAM,IAAI,yBAAkB,CAAC,GAAG,EAAE,IAAI,CAAC,OAAO,EAAE,CAAC,CAAC;qBACnD;oBACD,MAAM,GAAG,CAAC;iBACX;aACF;QACH,CAAC;KAAA;IAED;;OAEG;IACG,yBAAyB,CAC7B,GAAW,EACX,IAAY,EACZ,KAAa,EACb,kBAAuB,EACvB,uBAA+B,EAC/B,UAAgB;;YAEhB,MAAM,IAAI,CAAC,SAAS,CAAC,cAAc,CAAC,CAAM,CAAC,EAAC,EAAE;gBAC5C,MAAM,MAAM,GAAG,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,CAAC;gBACxC,MAAM,GAAG,GAAG,MAAM,CAAC,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;gBAChC,IAAI,CAAC,GAAG,CAAC,MAAM,EAAE;oBACf,MAAM,IAAI,yBAAkB,CAAC,GAAG,EAAE,IAAI,CAAC,OAAO,EAAE,CAAC,CAAC;iBACnD;gBACD,MAAM,IAAI,GAAG,GAAG,CAAC,IAAI,EAAE,CAAC;gBACxB,IAAI,CAAC,cAAc,CAAC,GAAG,EAAE,IAAI,CAAC,IAAI,CAAC,CAAC,KAAK,CAAC,EAAE,uBAAuB,EAAE,kBAAkB,CAAC,CAAC;gBACzF,qBAAqB;gBACrB,CAAC,CAAC,MAAM,CAAC,MAAM,EAAE;oBACf,CAAC,IAAI,CAAC,EAAE,sBAAU,CAAC,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,KAAK,CAAC,CAAC;oBACjD,CAAC,IAAI,CAAC,gBAAgB,CAAC,EAAE,UAAU;iBACpC,CAAC,CAAC;YACL,CAAC,CAAA,CAAC,CAAC;QACL,CAAC;KAAA;IAED;;OAEG;IACG,OAAO;;YACX,8DAA8D;QAChE,CAAC;KAAA;CACF;AAzZD,4BAyZC;AAEQ,8BAAS"}
|
|
1
|
+
{"version":3,"file":"firestore.js","sourceRoot":"","sources":["../../src/services/firestore.ts"],"names":[],"mappings":"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"}
|