@intuitionrobotics/firebase 0.42.52 → 0.42.54
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/app-backend/firestore/FirestoreCollection.d.ts +14 -6
- package/app-backend/firestore/FirestoreCollection.js +31 -13
- package/app-backend/firestore/FirestoreCollection.js.map +1 -1
- package/app-backend/firestore/FirestoreInterface.d.ts +2 -1
- package/app-backend/firestore/FirestoreInterface.js +5 -6
- package/app-backend/firestore/FirestoreInterface.js.map +1 -1
- package/app-backend/firestore/FirestoreTransaction.d.ts +12 -3
- package/app-backend/firestore/FirestoreTransaction.js +17 -10
- package/app-backend/firestore/FirestoreTransaction.js.map +1 -1
- package/app-backend/firestore/FirestoreWrapper.d.ts +0 -2
- package/app-backend/firestore/FirestoreWrapper.js +0 -5
- package/app-backend/firestore/FirestoreWrapper.js.map +1 -1
- package/app-backend/firestore/types.d.ts +2 -1
- package/app-backend/firestore/types.js.map +1 -1
- package/package.json +1 -1
|
@@ -1,34 +1,42 @@
|
|
|
1
1
|
import { Subset } from "@intuitionrobotics/ts-common";
|
|
2
|
-
import { FirestoreType_Collection } from "./types";
|
|
2
|
+
import { FirestoreType_Collection, FirestoreType_QuerySnapshot } from "./types";
|
|
3
3
|
import { Clause_Select, Clause_Where, FilterKeys, FirestoreQuery } from "../../shared/types";
|
|
4
4
|
import { FirestoreWrapper } from "./FirestoreWrapper";
|
|
5
5
|
import { FirestoreTransaction } from "./FirestoreTransaction";
|
|
6
|
-
import
|
|
6
|
+
import { firestore } from "firebase-admin";
|
|
7
|
+
import { SetOptions } from "firebase-admin/lib/firestore";
|
|
8
|
+
import WriteResult = firestore.WriteResult;
|
|
7
9
|
export declare class FirestoreCollection<Type extends object> {
|
|
8
10
|
readonly name: string;
|
|
9
11
|
readonly wrapper: FirestoreWrapper;
|
|
10
|
-
readonly collection: FirestoreType_Collection
|
|
12
|
+
readonly collection: FirestoreType_Collection<Type>;
|
|
11
13
|
/**
|
|
12
14
|
* External unique as in there must never ever be two that answer the same query
|
|
13
15
|
*/
|
|
14
16
|
readonly externalUniqueFilter: ((object: Subset<Type>) => Clause_Where<Type>);
|
|
15
17
|
constructor(name: string, wrapper: FirestoreWrapper, externalFilterKeys?: FilterKeys<Type>);
|
|
16
18
|
private _query;
|
|
19
|
+
get(ourQuery?: FirestoreQuery<Type>): Promise<FirestoreType_QuerySnapshot<Type>>;
|
|
17
20
|
private _queryUnique;
|
|
18
21
|
queryUnique(ourQuery: FirestoreQuery<Type>): Promise<Type | undefined>;
|
|
19
|
-
insert(instance: Type): Promise<Type>;
|
|
22
|
+
insert(instance: Type, id?: string): Promise<Type>;
|
|
20
23
|
insertAll(instances: Type[]): Promise<Type[]>;
|
|
21
24
|
query(ourQuery: FirestoreQuery<Type>): Promise<Type[]>;
|
|
22
25
|
upsert(instance: Type): Promise<Type>;
|
|
23
26
|
upsertAll(instances: Type[]): Promise<Type[]>;
|
|
24
27
|
patch(instance: Subset<Type>): Promise<Type>;
|
|
25
28
|
deleteItem(instance: Type): Promise<Type | undefined>;
|
|
26
|
-
deleteUnique(
|
|
29
|
+
deleteUnique(id: string): Promise<WriteResult>;
|
|
30
|
+
/** @deprecated */
|
|
31
|
+
deleteUnique(ourQuery: FirestoreQuery<Type>): Promise<Type | undefined>;
|
|
27
32
|
delete(query: FirestoreQuery<Type>): Promise<Type[]>;
|
|
28
33
|
private deleteBatch;
|
|
29
34
|
deleteAll(): Promise<Type[]>;
|
|
30
35
|
getAll(select?: Clause_Select<Type>): Promise<Type[]>;
|
|
31
36
|
runInTransaction<ReturnType>(processor: (transaction: FirestoreTransaction) => Promise<ReturnType>): Promise<ReturnType>;
|
|
32
|
-
createDocumentReference():
|
|
37
|
+
createDocumentReference(id?: string): firestore.DocumentReference<Type>;
|
|
38
|
+
set(instance: Type, id: string): Promise<WriteResult>;
|
|
39
|
+
set(instance: Partial<Type>, id: string, options: SetOptions): Promise<WriteResult>;
|
|
40
|
+
create(instance: Type, id: string): Promise<firestore.WriteResult>;
|
|
33
41
|
getUniqueFilter: () => (object: Subset<Type>) => Clause_Where<Type>;
|
|
34
42
|
}
|
|
@@ -50,10 +50,16 @@ class FirestoreCollection {
|
|
|
50
50
|
}
|
|
51
51
|
_query(ourQuery) {
|
|
52
52
|
return __awaiter(this, void 0, void 0, function* () {
|
|
53
|
-
const myQuery = FirestoreInterface_1.FirestoreInterface.buildQuery(this, ourQuery);
|
|
53
|
+
const myQuery = FirestoreInterface_1.FirestoreInterface.buildQuery(this.collection, ourQuery);
|
|
54
54
|
return (yield myQuery.get()).docs;
|
|
55
55
|
});
|
|
56
56
|
}
|
|
57
|
+
get(ourQuery) {
|
|
58
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
59
|
+
const myQuery = FirestoreInterface_1.FirestoreInterface.buildQuery(this.collection, ourQuery);
|
|
60
|
+
return myQuery.get();
|
|
61
|
+
});
|
|
62
|
+
}
|
|
57
63
|
_queryUnique(ourQuery) {
|
|
58
64
|
return __awaiter(this, void 0, void 0, function* () {
|
|
59
65
|
const results = yield this._query(ourQuery);
|
|
@@ -68,9 +74,10 @@ class FirestoreCollection {
|
|
|
68
74
|
return doc.data();
|
|
69
75
|
});
|
|
70
76
|
}
|
|
71
|
-
insert(instance) {
|
|
77
|
+
insert(instance, id) {
|
|
72
78
|
return __awaiter(this, void 0, void 0, function* () {
|
|
73
|
-
|
|
79
|
+
const ref = this.createDocumentReference(id);
|
|
80
|
+
yield ref.set(instance);
|
|
74
81
|
return instance;
|
|
75
82
|
});
|
|
76
83
|
}
|
|
@@ -104,9 +111,11 @@ class FirestoreCollection {
|
|
|
104
111
|
return this.runInTransaction((transaction) => transaction.deleteItem(this, instance));
|
|
105
112
|
});
|
|
106
113
|
}
|
|
107
|
-
deleteUnique(
|
|
114
|
+
deleteUnique(param) {
|
|
108
115
|
return __awaiter(this, void 0, void 0, function* () {
|
|
109
|
-
|
|
116
|
+
if (typeof param === 'string')
|
|
117
|
+
return this.collection.doc(param).delete();
|
|
118
|
+
return this.runInTransaction((transaction) => __awaiter(this, void 0, void 0, function* () { return transaction.deleteUnique(this, param); }));
|
|
110
119
|
});
|
|
111
120
|
}
|
|
112
121
|
delete(query) {
|
|
@@ -117,9 +126,10 @@ class FirestoreCollection {
|
|
|
117
126
|
}
|
|
118
127
|
deleteBatch(docRefs) {
|
|
119
128
|
return __awaiter(this, void 0, void 0, function* () {
|
|
120
|
-
yield ts_common_1.batchAction(docRefs,
|
|
121
|
-
const
|
|
122
|
-
|
|
129
|
+
yield ts_common_1.batchAction(docRefs, 500, (elements) => __awaiter(this, void 0, void 0, function* () {
|
|
130
|
+
const batch = this.collection.firestore.batch();
|
|
131
|
+
elements.forEach(doc => batch.delete(doc.ref));
|
|
132
|
+
yield batch.commit();
|
|
123
133
|
}));
|
|
124
134
|
return docRefs.map(d => d.data());
|
|
125
135
|
});
|
|
@@ -137,15 +147,23 @@ class FirestoreCollection {
|
|
|
137
147
|
}
|
|
138
148
|
runInTransaction(processor) {
|
|
139
149
|
return __awaiter(this, void 0, void 0, function* () {
|
|
140
|
-
|
|
141
|
-
return firestore.runTransaction((transaction) => __awaiter(this, void 0, void 0, function* () {
|
|
150
|
+
return this.collection.firestore.runTransaction((transaction) => __awaiter(this, void 0, void 0, function* () {
|
|
142
151
|
return processor(new FirestoreTransaction_1.FirestoreTransaction(transaction));
|
|
143
152
|
}));
|
|
144
153
|
});
|
|
145
154
|
}
|
|
146
|
-
createDocumentReference() {
|
|
147
|
-
|
|
148
|
-
|
|
155
|
+
createDocumentReference(id = ts_common_1.generateHex(16)) {
|
|
156
|
+
return this.collection.doc(id);
|
|
157
|
+
}
|
|
158
|
+
set(instance, id, options) {
|
|
159
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
160
|
+
return this.collection.doc(id).set(instance, options);
|
|
161
|
+
});
|
|
162
|
+
}
|
|
163
|
+
create(instance, id) {
|
|
164
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
165
|
+
return this.collection.doc(id).create(instance);
|
|
166
|
+
});
|
|
149
167
|
}
|
|
150
168
|
}
|
|
151
169
|
exports.FirestoreCollection = FirestoreCollection;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"FirestoreCollection.js","sourceRoot":"","sources":["../../../src/main/app-backend/firestore/FirestoreCollection.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;;;GAgBG;;;;;;;;;;;;AAEH,
|
|
1
|
+
{"version":3,"file":"FirestoreCollection.js","sourceRoot":"","sources":["../../../src/main/app-backend/firestore/FirestoreCollection.ts"],"names":[],"mappings":"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"}
|
|
@@ -2,8 +2,9 @@ import { FirestoreQuery } from "../..";
|
|
|
2
2
|
import { FirestoreType_DocumentSnapshot } from "./types";
|
|
3
3
|
import { FirestoreCollection } from "./FirestoreCollection";
|
|
4
4
|
import * as admin from "firebase-admin";
|
|
5
|
+
import { CollectionReference } from "firebase-admin/firestore";
|
|
5
6
|
export declare class FirestoreInterface {
|
|
6
|
-
static buildQuery<Type extends object>(
|
|
7
|
+
static buildQuery<Type extends object>(myQuery: CollectionReference<Type>, query?: FirestoreQuery<Type>): admin.firestore.Query;
|
|
7
8
|
private static isQueryObject;
|
|
8
9
|
static assertUniqueDocument(results: FirestoreType_DocumentSnapshot[], query: FirestoreQuery<any>, collectionName: string): (FirestoreType_DocumentSnapshot | undefined);
|
|
9
10
|
static buildUniqueQuery<Type extends object>(collection: FirestoreCollection<Type>, instance: Type): FirestoreQuery<Type>;
|
|
@@ -21,13 +21,12 @@ exports.FirestoreInterface = void 0;
|
|
|
21
21
|
const __1 = require("../..");
|
|
22
22
|
const ts_common_1 = require("@intuitionrobotics/ts-common");
|
|
23
23
|
class FirestoreInterface {
|
|
24
|
-
static buildQuery(
|
|
25
|
-
let myQuery = collection.collection;
|
|
24
|
+
static buildQuery(myQuery, query) {
|
|
26
25
|
if (query && query.select)
|
|
27
|
-
myQuery
|
|
26
|
+
myQuery.select(...query.select);
|
|
28
27
|
if (query && query.where) {
|
|
29
28
|
const whereClause = query.where;
|
|
30
|
-
|
|
29
|
+
Object.keys(whereClause).reduce((_query, _whereField) => {
|
|
31
30
|
const whereField = _whereField;
|
|
32
31
|
const whereValue = whereClause[whereField];
|
|
33
32
|
if (whereValue === undefined || whereValue === null)
|
|
@@ -59,11 +58,11 @@ class FirestoreInterface {
|
|
|
59
58
|
}, myQuery);
|
|
60
59
|
}
|
|
61
60
|
if (query && query.orderBy)
|
|
62
|
-
|
|
61
|
+
query.orderBy.reduce((_query, field) => {
|
|
63
62
|
return _query.orderBy ? _query.orderBy(field.key, field.order) : _query;
|
|
64
63
|
}, myQuery);
|
|
65
64
|
if (query && query.limit)
|
|
66
|
-
myQuery
|
|
65
|
+
myQuery.limit(query.limit);
|
|
67
66
|
return myQuery;
|
|
68
67
|
}
|
|
69
68
|
static isQueryObject(whereValue) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"FirestoreInterface.js","sourceRoot":"","sources":["../../../src/main/app-backend/firestore/FirestoreInterface.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;;;GAgBG;;;AAEH,6BAGe;AAMf,4DAKsC;
|
|
1
|
+
{"version":3,"file":"FirestoreInterface.js","sourceRoot":"","sources":["../../../src/main/app-backend/firestore/FirestoreInterface.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;;;GAgBG;;;AAEH,6BAGe;AAMf,4DAKsC;AAItC,MAAa,kBAAkB;IAE9B,MAAM,CAAC,UAAU,CAAsB,OAAkC,EAAE,KAA4B;QACtG,IAAI,KAAK,IAAI,KAAK,CAAC,MAAM;YACxB,OAAO,CAAC,MAAM,CAAC,GAAG,KAAK,CAAC,MAAkB,CAAC,CAAC;QAE7C,IAAI,KAAK,IAAI,KAAK,CAAC,KAAK,EAAE;YACzB,MAAM,WAAW,GAAG,KAAK,CAAC,KAAK,CAAC;YAChC,MAAM,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC,MAAM,CAAC,CAAC,MAA2B,EAAE,WAAW,EAAE,EAAE;gBAC5E,MAAM,UAAU,GAAG,WAAW,CAAC;gBAC/B,MAAM,UAAU,GAAQ,WAAW,CAAC,UAAwB,CAAC,CAAC;gBAC9D,IAAI,UAAU,KAAK,SAAS,IAAI,UAAU,KAAK,IAAI;oBAClD,OAAO,MAAM,CAAC;gBAEf,MAAM,aAAa,GAAG,CAAC,QAA6B,EAAE,QAAgB,EAAE,WAAgB,EAAuB,EAAE;oBAChH,MAAM,SAAS,GAAG,OAAO,WAAW,CAAC;oBAErC,IAAI,KAAK,CAAC,OAAO,CAAC,WAAW,CAAC,EAAE;wBAC/B,IAAI,WAAW,CAAC,MAAM,KAAK,CAAC,IAAI,WAAW,CAAC,MAAM,GAAG,EAAE;4BACtD,MAAM,IAAI,sCAA0B,CACnC,8GAA8G;gCAC9G,oCAAoC,CAAC,CAAC;wBAExC,IAAI,WAAW,CAAC,MAAM,KAAK,CAAC;4BAC3B,OAAO,MAAM,CAAC,KAAK,CAAC,QAAQ,EAAE,gBAAgB,EAAE,WAAW,CAAC,CAAC,CAAC,CAAC,CAAC;wBAEjE,OAAO,MAAM,CAAC,KAAK,CAAC,QAAQ,EAAE,oBAAoB,EAAE,WAAW,CAAC,CAAC;qBACjE;oBAED,IAAI,IAAI,CAAC,aAAa,CAAC,WAAW,CAAC,EAAE;wBACpC,aAAa;wBACb,OAAO,MAAM,CAAC,KAAK,CAAC,QAAQ,EAAE,iBAAa,CAAC,MAAM,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,MAAM,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;qBACzG;oBAED,IAAI,SAAS,KAAK,QAAQ,IAAI,SAAS,KAAK,QAAQ,IAAI,SAAS,KAAK,SAAS;wBAC9E,OAAO,QAAQ,CAAC,KAAK,CAAC,QAAQ,EAAE,IAAI,EAAE,WAAW,CAAC,CAAC;oBAEpD,IAAI,SAAS,KAAK,QAAQ,EAAE;wBAC3B,OAAO,MAAM,CAAC,IAAI,CAAC,WAAqB,CAAC,CAAC,MAAM,CAAC,CAAC,OAA4B,EAAE,GAAG,EAAE,EAAE;4BACtF,OAAO,aAAa,CAAC,OAAO,EAAE,GAAG,QAAQ,IAAI,GAAG,EAAE,EAAE,WAAW,CAAC,GAAG,CAAC,CAAC,CAAA;wBACtE,CAAC,EAAE,QAAQ,CAAC,CAAC;qBACb;oBAED,MAAM,IAAI,0CAA8B,CACvC,uCAAuC,QAAQ,sBAAsB,SAAS,cAAc,uBAAW,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAA;gBACtH,CAAC,CAAC;gBAEF,OAAO,aAAa,CAAC,MAAM,EAAE,UAAU,EAAE,UAAU,CAAC,CAAC;YACtD,CAAC,EAAE,OAAO,CAAC,CAAC;SACZ;QAED,IAAI,KAAK,IAAI,KAAK,CAAC,OAAO;YACzB,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,MAA2B,EAAE,KAAK,EAAE,EAAE;gBAC3D,OAAO,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,GAAa,EAAE,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC;YACnF,CAAC,EAAE,OAAO,CAAC,CAAC;QAEb,IAAI,KAAK,IAAI,KAAK,CAAC,KAAK;YACvB,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;QAE5B,OAAO,OAAO,CAAC;IAChB,CAAC;IAEO,MAAM,CAAC,aAAa,CAAC,UAAe;QAC3C,OAAO,OAAO,UAAU,KAAK,QAAQ,IAAI,MAAM,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,MAAM,KAAK,CAAC,IAAI,CAChF,UAAU,CAAC,KAAK,CAAC;YACjB,UAAU,CAAC,MAAM,CAAC;YAClB,UAAU,CAAC,KAAK,CAAC;YACjB,UAAU,CAAC,MAAM,CAAC;YAClB,UAAU,CAAC,KAAK,CAAC;YACjB,UAAU,CAAC,MAAM,CAAC;YAClB,UAAU,CAAC,KAAK,CAAC;YACjB,UAAU,CAAC,MAAM,CAAC;YAClB,UAAU,CAAC,MAAM,CAAC;YAClB,UAAU,CAAC,KAAK,CAAC,CAAC,CAAC;IACrB,CAAC;IAED,MAAM,CAAC,oBAAoB,CAAC,OAAyC,EAAE,KAA0B,EAAE,cAAsB;QACxH,IAAI,OAAO,CAAC,MAAM,GAAG,CAAC;YACrB,MAAM,IAAI,sCAA0B,CAAC,+BAA+B,uBAAW,CAAC,KAAK,CAAC,mBAAmB,cAAc,EAAE,CAAC,CAAC;QAE5H,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC;YACvB,OAAO;QAER,OAAO,OAAO,CAAC,CAAC,CAAC,CAAC;IACnB,CAAC;IAAA,CAAC;IAEF,MAAM,CAAC,gBAAgB,CAAsB,UAAqC,EAAE,QAAc;QACjG,iBAAK,CAAC,QAAQ,CAAC,CAAC,OAAO,CAAC,CAAC,GAAG,EAAE,EAAE;YAC/B,IAAI,QAAQ,CAAC,GAAG,CAAC,KAAK,SAAS,IAAI,QAAQ,CAAC,GAAG,CAAC,KAAK,IAAI,EAAE;gBAC1D,MAAM,IAAI,sCAA0B,CACnC,wFAAwF,UAAU,CAAC,IAAI,wBAAwB,GAAG,YAAY,QAAQ,CAAC,GAAG,CAAC,GAAG,CAAC,CAAA;aAChK;QACF,CAAC,CAAC,CAAC;QAEH,MAAM,KAAK,GAAG,UAAU,CAAC,oBAAoB,CAAC,QAAQ,CAAC,CAAC;QACxD,OAAO,EAAC,KAAK,EAAC,CAAC;IAChB,CAAC;CACD;AAjGD,gDAiGC"}
|
|
@@ -1,7 +1,10 @@
|
|
|
1
1
|
import * as admin from "firebase-admin";
|
|
2
|
+
import { firestore } from "firebase-admin";
|
|
2
3
|
import { FirestoreCollection } from "./FirestoreCollection";
|
|
3
4
|
import { Subset } from "@intuitionrobotics/ts-common";
|
|
4
5
|
import { FirestoreQuery } from "../../shared/types";
|
|
6
|
+
import { SetOptions } from "firebase-admin/firestore";
|
|
7
|
+
import Transaction = firestore.Transaction;
|
|
5
8
|
export declare class FirestoreTransaction {
|
|
6
9
|
private transaction;
|
|
7
10
|
constructor(transaction: admin.firestore.Transaction);
|
|
@@ -11,8 +14,8 @@ export declare class FirestoreTransaction {
|
|
|
11
14
|
query<Type extends object>(collection: FirestoreCollection<Type>, ourQuery: FirestoreQuery<Type>): Promise<Type[]>;
|
|
12
15
|
queryItem<Type extends object>(collection: FirestoreCollection<Type>, instance: Type): Promise<Type | undefined>;
|
|
13
16
|
queryUnique<Type extends object>(collection: FirestoreCollection<Type>, ourQuery: FirestoreQuery<Type>): Promise<Type | undefined>;
|
|
14
|
-
insert<Type extends object>(collection: FirestoreCollection<Type>, instance: Type):
|
|
15
|
-
insertAll<Type extends object>(collection: FirestoreCollection<Type>, instances: Type[]):
|
|
17
|
+
insert<Type extends object>(collection: FirestoreCollection<Type>, instance: Type, id?: string): Type;
|
|
18
|
+
insertAll<Type extends object>(collection: FirestoreCollection<Type>, instances: Type[]): Type[];
|
|
16
19
|
upsert<Type extends object>(collection: FirestoreCollection<Type>, instance: Type): Promise<Type>;
|
|
17
20
|
upsert_Read<Type extends object>(collection: FirestoreCollection<Type>, instance: Type): Promise<() => Promise<Type>>;
|
|
18
21
|
private getOrCreateDocument;
|
|
@@ -23,7 +26,13 @@ export declare class FirestoreTransaction {
|
|
|
23
26
|
delete<Type extends object>(collection: FirestoreCollection<Type>, ourQuery: FirestoreQuery<Type>): Promise<Type[]>;
|
|
24
27
|
delete_Read<Type extends object>(collection: FirestoreCollection<Type>, ourQuery: FirestoreQuery<Type>): Promise<() => Promise<Type[]>>;
|
|
25
28
|
deleteItem<Type extends object>(collection: FirestoreCollection<Type>, instance: Type): Promise<Type | undefined>;
|
|
29
|
+
deleteUnique<Type extends object>(collection: FirestoreCollection<Type>, id: string): Transaction;
|
|
30
|
+
/** @deprecated */
|
|
26
31
|
deleteUnique<Type extends object>(collection: FirestoreCollection<Type>, ourQuery: FirestoreQuery<Type>): Promise<Type | undefined>;
|
|
32
|
+
private deleteUniqueImpl;
|
|
27
33
|
deleteUnique_Read<Type extends object>(collection: FirestoreCollection<Type>, ourQuery: FirestoreQuery<Type>): Promise<undefined | (() => Promise<Type>)>;
|
|
28
|
-
|
|
34
|
+
set<Type extends object>(collection: FirestoreCollection<Type>, instance: Type, id: string): Transaction;
|
|
35
|
+
set<Type extends object>(collection: FirestoreCollection<Type>, instance: Partial<Type>, id: string, options: SetOptions): Transaction;
|
|
36
|
+
create<Type extends object>(collection: FirestoreCollection<Type>, instance: Type, id: string): firestore.Transaction;
|
|
37
|
+
getSdkInstance(): firestore.Transaction;
|
|
29
38
|
}
|
|
@@ -35,7 +35,7 @@ class FirestoreTransaction {
|
|
|
35
35
|
}
|
|
36
36
|
_query(collection, ourQuery) {
|
|
37
37
|
return __awaiter(this, void 0, void 0, function* () {
|
|
38
|
-
const query = FirestoreInterface_1.FirestoreInterface.buildQuery(collection, ourQuery);
|
|
38
|
+
const query = FirestoreInterface_1.FirestoreInterface.buildQuery(collection.collection, ourQuery);
|
|
39
39
|
return (yield this.transaction.get(query)).docs;
|
|
40
40
|
});
|
|
41
41
|
}
|
|
@@ -71,17 +71,13 @@ class FirestoreTransaction {
|
|
|
71
71
|
return doc.data();
|
|
72
72
|
});
|
|
73
73
|
}
|
|
74
|
-
insert(collection, instance) {
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
return instance;
|
|
79
|
-
});
|
|
74
|
+
insert(collection, instance, id) {
|
|
75
|
+
const doc = collection.createDocumentReference(id);
|
|
76
|
+
this.transaction.set(doc, instance);
|
|
77
|
+
return instance;
|
|
80
78
|
}
|
|
81
79
|
insertAll(collection, instances) {
|
|
82
|
-
return
|
|
83
|
-
return Promise.all(instances.map(instance => this.insert(collection, instance)));
|
|
84
|
-
});
|
|
80
|
+
return instances.map(instance => this.insert(collection, instance));
|
|
85
81
|
}
|
|
86
82
|
//------------------------
|
|
87
83
|
upsert(collection, instance) {
|
|
@@ -160,6 +156,11 @@ class FirestoreTransaction {
|
|
|
160
156
|
});
|
|
161
157
|
}
|
|
162
158
|
deleteUnique(collection, ourQuery) {
|
|
159
|
+
if (typeof ourQuery === 'string')
|
|
160
|
+
return this.transaction.delete(collection.collection.doc(ourQuery));
|
|
161
|
+
return this.deleteUniqueImpl(collection, ourQuery);
|
|
162
|
+
}
|
|
163
|
+
deleteUniqueImpl(collection, ourQuery) {
|
|
163
164
|
return __awaiter(this, void 0, void 0, function* () {
|
|
164
165
|
const write = yield this.deleteUnique_Read(collection, ourQuery);
|
|
165
166
|
if (!write)
|
|
@@ -179,6 +180,12 @@ class FirestoreTransaction {
|
|
|
179
180
|
});
|
|
180
181
|
});
|
|
181
182
|
}
|
|
183
|
+
set(collection, instance, id, options) {
|
|
184
|
+
return this.transaction.set(collection.collection.doc(id), instance, options);
|
|
185
|
+
}
|
|
186
|
+
create(collection, instance, id) {
|
|
187
|
+
return this.transaction.create(collection.collection.doc(id), instance);
|
|
188
|
+
}
|
|
182
189
|
getSdkInstance() {
|
|
183
190
|
return this.transaction;
|
|
184
191
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"FirestoreTransaction.js","sourceRoot":"","sources":["../../../src/main/app-backend/firestore/FirestoreTransaction.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;;;GAgBG;;;;;;;;;;;;
|
|
1
|
+
{"version":3,"file":"FirestoreTransaction.js","sourceRoot":"","sources":["../../../src/main/app-backend/firestore/FirestoreTransaction.ts"],"names":[],"mappings":"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"}
|
|
@@ -3,13 +3,11 @@ import { FirestoreType, FirestoreType_Collection } from "./types";
|
|
|
3
3
|
import { FilterKeys } from "../../shared/types";
|
|
4
4
|
import { FirebaseSession } from "../auth/firebase-session";
|
|
5
5
|
import { FirebaseBaseWrapper } from "../auth/FirebaseBaseWrapper";
|
|
6
|
-
import { DB_Object } from "@intuitionrobotics/ts-common";
|
|
7
6
|
export declare class FirestoreWrapper extends FirebaseBaseWrapper {
|
|
8
7
|
readonly firestore: FirestoreType;
|
|
9
8
|
private readonly collections;
|
|
10
9
|
constructor(firebaseSession: FirebaseSession<any, any>);
|
|
11
10
|
getCollection<Type extends object>(name: string, externalFilterKeys?: FilterKeys<Type>): FirestoreCollection<Type>;
|
|
12
|
-
listen<Type extends DB_Object>(collection: FirestoreCollection<Type>, doc: string): void;
|
|
13
11
|
getSdkInstance(): FirebaseFirestore.Firestore;
|
|
14
12
|
deleteCollection(name: string): Promise<object[]>;
|
|
15
13
|
listCollections(): Promise<FirestoreType_Collection[]>;
|
|
@@ -42,11 +42,6 @@ class FirestoreWrapper extends FirebaseBaseWrapper_1.FirebaseBaseWrapper {
|
|
|
42
42
|
return collection;
|
|
43
43
|
return this.collections[name] = new FirestoreCollection_1.FirestoreCollection(name, this, externalFilterKeys);
|
|
44
44
|
}
|
|
45
|
-
listen(collection, doc) {
|
|
46
|
-
collection.wrapper.firestore.doc(`${collection.name}/${doc}`).onSnapshot(_snapshot => {
|
|
47
|
-
console.log('recieved snapshot!');
|
|
48
|
-
});
|
|
49
|
-
}
|
|
50
45
|
getSdkInstance() {
|
|
51
46
|
return this.firestore;
|
|
52
47
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"FirestoreWrapper.js","sourceRoot":"","sources":["../../../src/main/app-backend/firestore/FirestoreWrapper.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;;;GAgBG;;;;;;;;;;;;AAEH,+DAA2D;AAI3D,qEAAgE;
|
|
1
|
+
{"version":3,"file":"FirestoreWrapper.js","sourceRoot":"","sources":["../../../src/main/app-backend/firestore/FirestoreWrapper.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;;;GAgBG;;;;;;;;;;;;AAEH,+DAA2D;AAI3D,qEAAgE;AAChE,wDAAsD;AAEtD,MAAa,gBACT,SAAQ,yCAAmB;IAK3B,YAAY,eAA0C;QAClD,KAAK,CAAC,eAAe,CAAC,CAAC;QAHV,gBAAW,GAA2D,EAAE,CAAC;QAItF,IAAI,CAAC,SAAS,GAAG,wBAAY,CAAC,eAAe,CAAC,GAAG,CAAC,CAAA;IACtD,CAAC;IAEM,aAAa,CAAsB,IAAY,EAAE,kBAAqC;QACzF,MAAM,UAAU,GAAG,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC;QAC1C,IAAI,UAAU;YACV,OAAO,UAAU,CAAC;QAEtB,OAAO,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,GAAG,IAAI,yCAAmB,CAAO,IAAI,EAAE,IAAI,EAAE,kBAAkB,CAAC,CAAC;IAClG,CAAC;IAED,cAAc;QACV,OAAO,IAAI,CAAC,SAAS,CAAC;IAC1B,CAAC;IAEY,gBAAgB,CAAC,IAAY;;YACtC,OAAO,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,CAAC,SAAS,EAAE,CAAC;QAChD,CAAC;KAAA;IAEY,eAAe;;YACxB,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,eAAe;gBAC/B,OAAO,EAAE,CAAC;YAEd,OAAO,IAAI,CAAC,SAAS,CAAC,eAAe,EAAE,CAAC;QAC5C,CAAC;KAAA;CACJ;AAjCD,4CAiCC"}
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import * as admin from "firebase-admin";
|
|
2
|
-
export declare type FirestoreType_Collection = admin.firestore.CollectionReference
|
|
2
|
+
export declare type FirestoreType_Collection<T extends any = any> = admin.firestore.CollectionReference<T>;
|
|
3
3
|
export declare type FirestoreType_DocumentSnapshot = admin.firestore.QueryDocumentSnapshot;
|
|
4
|
+
export declare type FirestoreType_QuerySnapshot<T> = admin.firestore.QuerySnapshot<T>;
|
|
4
5
|
export declare type FirestoreType_Query = admin.firestore.Query;
|
|
5
6
|
export declare type FirestoreType_DocumentReference = admin.firestore.DocumentReference;
|
|
6
7
|
export declare type FirestoreType = admin.firestore.Firestore;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.js","sourceRoot":"","sources":["../../../src/main/app-backend/firestore/types.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;;;GAgBG;;
|
|
1
|
+
{"version":3,"file":"types.js","sourceRoot":"","sources":["../../../src/main/app-backend/firestore/types.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;;;GAgBG;;AAYH,uHAAuH;AACvH,iIAAiI;AACjI,mJAAmJ;AACnJ,0HAA0H;AAC1H,8JAA8J;AAC9J,wGAAwG;AACxG,EAAE"}
|