@dereekb/firebase 5.0.0 → 5.2.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/CHANGELOG.md +23 -0
- package/package.json +5 -5
- package/src/lib/client/firestore/driver.accessor.batch.d.ts +3 -3
- package/src/lib/client/firestore/driver.accessor.batch.js +1 -1
- package/src/lib/client/firestore/driver.accessor.batch.js.map +1 -1
- package/src/lib/client/firestore/driver.accessor.d.ts +1 -1
- package/src/lib/client/firestore/driver.accessor.default.d.ts +3 -3
- package/src/lib/client/firestore/driver.accessor.default.js +1 -1
- package/src/lib/client/firestore/driver.accessor.default.js.map +1 -1
- package/src/lib/client/firestore/driver.accessor.js +1 -0
- package/src/lib/client/firestore/driver.accessor.js.map +1 -1
- package/src/lib/client/firestore/driver.accessor.transaction.d.ts +3 -3
- package/src/lib/client/firestore/driver.accessor.transaction.js +1 -1
- package/src/lib/client/firestore/driver.accessor.transaction.js.map +1 -1
- package/src/lib/client/firestore/driver.query.d.ts +3 -3
- package/src/lib/client/firestore/driver.query.js +2 -2
- package/src/lib/client/firestore/driver.query.js.map +1 -1
- package/src/lib/client/firestore/firestore.d.ts +1 -1
- package/src/lib/client/function/function.factory.d.ts +1 -1
- package/src/lib/client/function/function.factory.js.map +1 -1
- package/src/lib/common/firestore/accessor/accessor.batch.d.ts +2 -2
- package/src/lib/common/firestore/accessor/accessor.d.ts +2 -2
- package/src/lib/common/firestore/accessor/accessor.default.d.ts +1 -1
- package/src/lib/common/firestore/accessor/accessor.js.map +1 -1
- package/src/lib/common/firestore/accessor/accessor.transaction.d.ts +2 -2
- package/src/lib/common/firestore/accessor/context.batch.d.ts +2 -2
- package/src/lib/common/firestore/accessor/context.d.ts +1 -1
- package/src/lib/common/firestore/accessor/context.default.d.ts +1 -1
- package/src/lib/common/firestore/accessor/context.transaction.d.ts +2 -2
- package/src/lib/common/firestore/accessor/document.d.ts +56 -27
- package/src/lib/common/firestore/accessor/document.js +40 -23
- package/src/lib/common/firestore/accessor/document.js.map +1 -1
- package/src/lib/common/firestore/accessor/document.utility.d.ts +5 -5
- package/src/lib/common/firestore/accessor/document.utility.js +4 -4
- package/src/lib/common/firestore/accessor/document.utility.js.map +1 -1
- package/src/lib/common/firestore/collection/collection.d.ts +20 -13
- package/src/lib/common/firestore/collection/collection.group.d.ts +20 -0
- package/src/lib/common/firestore/collection/collection.group.js +31 -0
- package/src/lib/common/firestore/collection/collection.group.js.map +1 -0
- package/src/lib/common/firestore/collection/collection.js +6 -5
- package/src/lib/common/firestore/collection/collection.js.map +1 -1
- package/src/lib/common/firestore/collection/collection.query.d.ts +7 -7
- package/src/lib/common/firestore/collection/collection.query.js +3 -3
- package/src/lib/common/firestore/collection/collection.query.js.map +1 -1
- package/src/lib/common/firestore/collection/index.d.ts +1 -0
- package/src/lib/common/firestore/collection/index.js +1 -0
- package/src/lib/common/firestore/collection/index.js.map +1 -1
- package/src/lib/common/firestore/collection/subcollection.d.ts +1 -1
- package/src/lib/common/firestore/collection/subcollection.js +1 -0
- package/src/lib/common/firestore/collection/subcollection.js.map +1 -1
- package/src/lib/common/firestore/collection/subcollection.single.d.ts +1 -1
- package/src/lib/common/firestore/collection/subcollection.single.js.map +1 -1
- package/src/lib/common/firestore/context.d.ts +7 -3
- package/src/lib/common/firestore/context.js +7 -1
- package/src/lib/common/firestore/context.js.map +1 -1
- package/src/lib/common/firestore/driver/accessor.d.ts +3 -1
- package/src/lib/common/firestore/driver/driver.d.ts +2 -2
- package/src/lib/common/firestore/driver/query.d.ts +2 -2
- package/src/lib/common/firestore/driver/query.handler.d.ts +1 -1
- package/src/lib/common/firestore/driver/query.handler.js.map +1 -1
- package/src/lib/common/firestore/query/accumulator.d.ts +4 -4
- package/src/lib/common/firestore/query/accumulator.js +1 -1
- package/src/lib/common/firestore/query/accumulator.js.map +1 -1
- package/src/lib/common/firestore/query/constraint.d.ts +1 -1
- package/src/lib/common/firestore/query/constraint.js +2 -2
- package/src/lib/common/firestore/query/constraint.js.map +1 -1
- package/src/lib/common/firestore/query/iterator.d.ts +4 -4
- package/src/lib/common/firestore/query/iterator.js +10 -9
- package/src/lib/common/firestore/query/iterator.js.map +1 -1
- package/src/lib/common/firestore/query/query.d.ts +5 -5
- package/src/lib/common/firestore/query/query.js +2 -2
- package/src/lib/common/firestore/query/query.js.map +1 -1
- package/src/lib/common/firestore/query/query.util.d.ts +1 -1
- package/src/lib/common/firestore/query/query.util.js +2 -3
- package/src/lib/common/firestore/query/query.util.js.map +1 -1
- package/src/lib/common/firestore/query/watcher.d.ts +1 -1
- package/src/lib/common/firestore/query/watcher.js +1 -1
- package/src/lib/common/firestore/query/watcher.js.map +1 -1
- package/src/lib/common/firestore/reference.d.ts +8 -2
- package/src/lib/common/firestore/snapshot/snapshot.d.ts +2 -2
- package/src/lib/common/firestore/snapshot/snapshot.field.js +12 -12
- package/src/lib/common/firestore/snapshot/snapshot.field.js.map +1 -1
- package/src/lib/common/firestore/snapshot/snapshot.js.map +1 -1
- package/src/lib/common/firestore/types.d.ts +7 -2
- package/src/lib/common/firestore/types.js +0 -3
- package/src/lib/common/firestore/types.js.map +1 -1
- package/src/lib/common/function/action.d.ts +1 -1
- package/src/lib/model/user.d.ts +1 -1
- package/test/CHANGELOG.md +18 -0
- package/test/package.json +7 -7
- package/test/src/lib/client/firestore.d.ts +1 -1
- package/test/src/lib/client/firestore.js.map +1 -1
- package/test/src/lib/common/firestore.d.ts +3 -0
- package/test/src/lib/common/firestore.js +15 -6
- package/test/src/lib/common/firestore.js.map +1 -1
- package/test/src/lib/common/firestore.mock.d.ts +2 -2
- package/test/src/lib/common/firestore.mock.item.d.ts +5 -1
- package/test/src/lib/common/firestore.mock.item.fixture.d.ts +1 -0
- package/test/src/lib/common/firestore.mock.item.fixture.js +4 -1
- package/test/src/lib/common/firestore.mock.item.fixture.js.map +1 -1
- package/test/src/lib/common/firestore.mock.item.js +16 -2
- package/test/src/lib/common/firestore.mock.item.js.map +1 -1
- package/test/src/lib/common/firestore.mock.js.map +1 -1
- package/test/src/lib/common/test.driver.accessor.d.ts +1 -1
- package/test/src/lib/common/test.driver.accessor.js +6 -6
- package/test/src/lib/common/test.driver.accessor.js.map +1 -1
- package/test/src/lib/common/test.driver.query.d.ts +1 -1
- package/test/src/lib/common/test.driver.query.js +126 -13
- package/test/src/lib/common/test.driver.query.js.map +1 -1
- package/test/src/lib/common/test.iterator.d.ts +1 -1
- package/test/src/lib/common/test.iterator.js +8 -8
- package/test/src/lib/common/test.iterator.js.map +1 -1
|
@@ -7,18 +7,19 @@ const rxjs_2 = require("rxjs");
|
|
|
7
7
|
const constraint_1 = require("./constraint");
|
|
8
8
|
function filterDisallowedFirestoreItemPageIteratorInputContraints(constraints) {
|
|
9
9
|
const isIllegal = new Set([constraint_1.FIRESTORE_LIMIT_QUERY_CONSTRAINT_TYPE]);
|
|
10
|
-
return constraints.filter(x => !isIllegal.has(x.type));
|
|
10
|
+
return constraints.filter((x) => !isIllegal.has(x.type));
|
|
11
11
|
}
|
|
12
12
|
exports.filterDisallowedFirestoreItemPageIteratorInputContraints = filterDisallowedFirestoreItemPageIteratorInputContraints;
|
|
13
13
|
function makeFirestoreItemPageIteratorDelegate() {
|
|
14
14
|
return {
|
|
15
15
|
loadItemsForPage: (request) => {
|
|
16
16
|
const { page, iteratorConfig } = request;
|
|
17
|
-
const prevQueryResult$ =
|
|
18
|
-
const {
|
|
17
|
+
const prevQueryResult$ = page > 0 ? request.lastItem$ : (0, rxjs_2.of)(undefined);
|
|
18
|
+
const { queryLike, itemsPerPage, filter, firestoreQueryDriver: driver } = iteratorConfig;
|
|
19
19
|
const { limit: filterLimit, constraints: filterConstraints } = filter !== null && filter !== void 0 ? filter : {};
|
|
20
20
|
return prevQueryResult$.pipe((0, rxjs_2.exhaustMap)((prevResult) => {
|
|
21
|
-
if ((prevResult === null || prevResult === void 0 ? void 0 : prevResult.snapshot.empty) === true) {
|
|
21
|
+
if ((prevResult === null || prevResult === void 0 ? void 0 : prevResult.snapshot.empty) === true) {
|
|
22
|
+
// TODO: Shouldn't happen. Remove this later.
|
|
22
23
|
return (0, rxjs_2.of)({ end: true });
|
|
23
24
|
}
|
|
24
25
|
else {
|
|
@@ -28,17 +29,17 @@ function makeFirestoreItemPageIteratorDelegate() {
|
|
|
28
29
|
(0, util_1.mergeIntoArray)(constraints, filterDisallowedFirestoreItemPageIteratorInputContraints((0, util_1.asArray)(filterConstraints)));
|
|
29
30
|
}
|
|
30
31
|
// Add cursor
|
|
31
|
-
const cursorDocument =
|
|
32
|
-
const startAfterFilter =
|
|
32
|
+
const cursorDocument = prevResult ? (0, util_1.lastValue)(prevResult.docs) : undefined;
|
|
33
|
+
const startAfterFilter = cursorDocument ? (0, constraint_1.startAfter)(cursorDocument) : undefined;
|
|
33
34
|
if (startAfterFilter) {
|
|
34
35
|
constraints.push(startAfterFilter);
|
|
35
36
|
}
|
|
36
37
|
// Add Limit
|
|
37
|
-
const limitCount = filterLimit !== null && filterLimit !== void 0 ? filterLimit : itemsPerPage + (
|
|
38
|
+
const limitCount = filterLimit !== null && filterLimit !== void 0 ? filterLimit : itemsPerPage + (startAfterFilter ? 1 : 0); // todo: may not be needed.
|
|
38
39
|
const limitConstraint = (0, constraint_1.limit)(limitCount);
|
|
39
40
|
const constraintsWithLimit = [...constraints, limitConstraint];
|
|
40
41
|
// make query
|
|
41
|
-
const batchQuery = driver.query(
|
|
42
|
+
const batchQuery = driver.query(queryLike, ...constraintsWithLimit);
|
|
42
43
|
const resultPromise = driver.getDocs(batchQuery).then((snapshot) => {
|
|
43
44
|
const time = new Date();
|
|
44
45
|
const docs = snapshot.docs;
|
|
@@ -88,7 +89,7 @@ function firestoreItemPageIterationFactory(baseConfig) {
|
|
|
88
89
|
return (filter) => {
|
|
89
90
|
var _a;
|
|
90
91
|
const result = firestoreItemPageIteration({
|
|
91
|
-
|
|
92
|
+
queryLike: baseConfig.queryLike,
|
|
92
93
|
itemsPerPage: baseConfig.itemsPerPage,
|
|
93
94
|
firestoreQueryDriver: baseConfig.firestoreQueryDriver,
|
|
94
95
|
maxPageLoadLimit: (_a = filter === null || filter === void 0 ? void 0 : filter.maxPageLoadLimit) !== null && _a !== void 0 ? _a : baseConfig.maxPageLoadLimit,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"iterator.js","sourceRoot":"","sources":["../../../../../../../../packages/firebase/src/lib/common/firestore/query/iterator.ts"],"names":[],"mappings":";;;AAAA,wCAAkP;AAElP,wCAAwF;AACxF,+BAAwD;
|
|
1
|
+
{"version":3,"file":"iterator.js","sourceRoot":"","sources":["../../../../../../../../packages/firebase/src/lib/common/firestore/query/iterator.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
import { Observable } from 'rxjs';
|
|
2
|
-
import { ArrayOrValue, Maybe } from
|
|
3
|
-
import {
|
|
4
|
-
import { Query, QueryDocumentSnapshot, QuerySnapshot, Transaction } from
|
|
5
|
-
import { FirestoreQueryConstraint } from
|
|
2
|
+
import { ArrayOrValue, Maybe } from '@dereekb/util';
|
|
3
|
+
import { QueryLikeReferenceRef } from '../reference';
|
|
4
|
+
import { Query, QueryDocumentSnapshot, QuerySnapshot, Transaction } from '../types';
|
|
5
|
+
import { FirestoreQueryConstraint } from './constraint';
|
|
6
6
|
import { FirestoreQueryDriverRef } from '../driver/query';
|
|
7
7
|
export interface FirestoreExecutableQueryGetDocsContext {
|
|
8
8
|
readonly transaction?: Transaction;
|
|
@@ -38,7 +38,7 @@ export interface FirestoreQueryFactory<T> {
|
|
|
38
38
|
*/
|
|
39
39
|
readonly query: FirestoreQueryFactoryFunction<T>;
|
|
40
40
|
}
|
|
41
|
-
export interface FirestoreQueryConfig<T> extends FirestoreQueryDriverRef,
|
|
41
|
+
export interface FirestoreQueryConfig<T> extends FirestoreQueryDriverRef, QueryLikeReferenceRef<T> {
|
|
42
42
|
}
|
|
43
43
|
/**
|
|
44
44
|
* Creates a FirestoreCollectionQuery.
|
|
@@ -11,7 +11,7 @@ const constraint_1 = require("./constraint");
|
|
|
11
11
|
* @returns
|
|
12
12
|
*/
|
|
13
13
|
function firestoreQueryFactory(config) {
|
|
14
|
-
const {
|
|
14
|
+
const { queryLike, firestoreQueryDriver: driver } = config;
|
|
15
15
|
const { getDocs, streamDocs, query: makeQuery } = driver;
|
|
16
16
|
const extendQuery = (inputQuery, queryConstraints) => {
|
|
17
17
|
const allConstraints = (0, util_1.flattenArrayOrValueArray)(queryConstraints);
|
|
@@ -30,7 +30,7 @@ function firestoreQueryFactory(config) {
|
|
|
30
30
|
};
|
|
31
31
|
};
|
|
32
32
|
return {
|
|
33
|
-
query: (...queryConstraints) => extendQuery(
|
|
33
|
+
query: (...queryConstraints) => extendQuery(queryLike, queryConstraints)
|
|
34
34
|
};
|
|
35
35
|
}
|
|
36
36
|
exports.firestoreQueryFactory = firestoreQueryFactory;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"query.js","sourceRoot":"","sources":["../../../../../../../../packages/firebase/src/lib/common/firestore/query/query.ts"],"names":[],"mappings":";;;;AACA,wCAA8E;AAG9E,6CAAwF;AA2CxF;;;;;GAKG;AACH,SAAgB,qBAAqB,CAAI,MAA+B;IACtE,MAAM,EAAE,
|
|
1
|
+
{"version":3,"file":"query.js","sourceRoot":"","sources":["../../../../../../../../packages/firebase/src/lib/common/firestore/query/query.ts"],"names":[],"mappings":";;;;AACA,wCAA8E;AAG9E,6CAAwF;AA2CxF;;;;;GAKG;AACH,SAAgB,qBAAqB,CAAI,MAA+B;IACtE,MAAM,EAAE,SAAS,EAAE,oBAAoB,EAAE,MAAM,EAAE,GAAG,MAAM,CAAC;IAC3D,MAAM,EAAE,OAAO,EAAE,UAAU,EAAE,KAAK,EAAE,SAAS,EAAE,GAAG,MAAM,CAAC;IAEzD,MAAM,WAAW,GAAG,CAAC,UAAoB,EAAE,gBAA0D,EAAE,EAAE;QACvG,MAAM,cAAc,GAAG,IAAA,+BAAwB,EAAC,gBAAgB,CAAC,CAAC;QAClE,MAAM,KAAK,GAAG,SAAS,CAAC,UAAU,EAAE,GAAG,cAAc,CAAC,CAAC;QAEvD,OAAO;YACL,KAAK;YACL,WAAW,EAAE,CAAO,WAAyB,EAAE,EAAE;gBAC/C,MAAM,mBAAmB,GAAG,IAAA,2CAA8B,EAAC,CAAC,CAAC,CAAC,cAAc,CAAC,CAAC;gBAC9E,MAAM,KAAK,GAAG,SAAS,CAAC,UAAU,EAAE,GAAG,mBAAmB,CAAC,CAAC;gBAC5D,MAAM,MAAM,GAAG,MAAM,OAAO,CAAC,KAAK,EAAE,WAAW,CAAC,CAAC;gBACjD,OAAO,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;YACxB,CAAC,CAAA;YACD,OAAO,EAAE,CAAC,WAAyB,EAAE,EAAE,CAAC,OAAO,CAAC,KAAK,EAAE,WAAW,CAAC;YACnE,UAAU,EAAE,GAAG,EAAE,CAAC,UAAU,CAAC,KAAK,CAAC;YACnC,MAAM,EAAE,CAAC,GAAG,gBAA0D,EAAE,EAAE,CAAC,WAAW,CAAC,KAAK,EAAE,gBAAgB,CAAC;SAChH,CAAC;IACJ,CAAC,CAAC;IAEF,OAAO;QACL,KAAK,EAAE,CAAC,GAAG,gBAA0D,EAAE,EAAE,CAAC,WAAW,CAAC,SAAS,EAAE,gBAAgB,CAAC;KACnH,CAAC;AACJ,CAAC;AAzBD,sDAyBC"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { DocumentReference, QuerySnapshot } from './../types';
|
|
2
|
-
import { Observable } from
|
|
2
|
+
import { Observable } from 'rxjs';
|
|
3
3
|
export interface StreamDocsWithOnSnapshotFunctionParams<O> {
|
|
4
4
|
next: (value?: O | undefined) => void;
|
|
5
5
|
error: (err?: unknown) => void;
|
|
@@ -2,7 +2,6 @@
|
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.documentReferencesFromSnapshot = exports.streamFromOnSnapshot = void 0;
|
|
4
4
|
const rxjs_1 = require("rxjs");
|
|
5
|
-
;
|
|
6
5
|
/**
|
|
7
6
|
* Use to build an Observable that reacts to OnSnapshot events from queries.
|
|
8
7
|
*
|
|
@@ -14,14 +13,14 @@ function streamFromOnSnapshot(callOnSnapshot) {
|
|
|
14
13
|
const unsubscribe = callOnSnapshot({
|
|
15
14
|
next: subscriber.next.bind(subscriber),
|
|
16
15
|
error: subscriber.error.bind(subscriber),
|
|
17
|
-
complete: subscriber.complete.bind(subscriber)
|
|
16
|
+
complete: subscriber.complete.bind(subscriber)
|
|
18
17
|
});
|
|
19
18
|
return { unsubscribe };
|
|
20
19
|
});
|
|
21
20
|
}
|
|
22
21
|
exports.streamFromOnSnapshot = streamFromOnSnapshot;
|
|
23
22
|
function documentReferencesFromSnapshot(snapshots) {
|
|
24
|
-
return snapshots.docs.map(x => x.ref);
|
|
23
|
+
return snapshots.docs.map((x) => x.ref);
|
|
25
24
|
}
|
|
26
25
|
exports.documentReferencesFromSnapshot = documentReferencesFromSnapshot;
|
|
27
26
|
//# sourceMappingURL=query.util.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"query.util.js","sourceRoot":"","sources":["../../../../../../../../packages/firebase/src/lib/common/firestore/query/query.util.ts"],"names":[],"mappings":";;;AACA,+BAAkC;
|
|
1
|
+
{"version":3,"file":"query.util.js","sourceRoot":"","sources":["../../../../../../../../packages/firebase/src/lib/common/firestore/query/query.util.ts"],"names":[],"mappings":";;;AACA,+BAAkC;AAWlC;;;;;GAKG;AACH,SAAgB,oBAAoB,CAAI,cAAoG;IAC1I,OAAO,IAAI,iBAAU,CAAC,CAAC,UAAU,EAAE,EAAE;QACnC,MAAM,WAAW,GAAG,cAAc,CAAC;YACjC,IAAI,EAAE,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC;YACtC,KAAK,EAAE,UAAU,CAAC,KAAK,CAAC,IAAI,CAAC,UAAU,CAAC;YACxC,QAAQ,EAAE,UAAU,CAAC,QAAQ,CAAC,IAAI,CAAC,UAAU,CAAC;SAC/C,CAAC,CAAC;QACH,OAAO,EAAE,WAAW,EAAE,CAAC;IACzB,CAAC,CAAC,CAAC;AACL,CAAC;AATD,oDASC;AAED,SAAgB,8BAA8B,CAAI,SAA2B;IAC3E,OAAO,SAAS,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC;AAC1C,CAAC;AAFD,wEAEC"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { Observable } from 'rxjs';
|
|
2
2
|
import { DocumentChange, QuerySnapshot } from '../types';
|
|
3
|
-
import { FirestoreItemPageIterationInstance } from
|
|
3
|
+
import { FirestoreItemPageIterationInstance } from './iterator';
|
|
4
4
|
export declare const DEFAULT_QUERY_CHANGE_WATCHER_DELAY = 0;
|
|
5
5
|
export interface IterationQueryDocChangeWatcherConfig<T = unknown> {
|
|
6
6
|
readonly instance: FirestoreItemPageIterationInstance<T>;
|
|
@@ -15,7 +15,7 @@ function iterationQueryDocChangeWatcher(config) {
|
|
|
15
15
|
return (0, rxjs_1.timer)((_a = beginCheckingAt.expiresAt) !== null && _a !== void 0 ? _a : new Date()).pipe((0, rxjs_1.switchMap)(() => stream().pipe((0, rxjs_1.skip)(1) // skip the first value, as it should be equivalent to the query results given.
|
|
16
16
|
)));
|
|
17
17
|
}), (0, rxjs_1.shareReplay)(1));
|
|
18
|
-
const event$ = stream$.pipe((0, rxjs_1.map)(event => {
|
|
18
|
+
const event$ = stream$.pipe((0, rxjs_1.map)((event) => {
|
|
19
19
|
const changes = event.docChanges();
|
|
20
20
|
const results = (0, util_1.build)({
|
|
21
21
|
base: (0, util_1.groupValues)(changes, (x) => x.type),
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"watcher.js","sourceRoot":"","sources":["../../../../../../../../packages/firebase/src/lib/common/firestore/query/watcher.ts"],"names":[],"mappings":";;;AAAA,wCAA6D;AAC7D,wCAA0C;AAC1C,+BAA4E;AAK/D,QAAA,kCAAkC,GAAG,CAAC,CAAC;
|
|
1
|
+
{"version":3,"file":"watcher.js","sourceRoot":"","sources":["../../../../../../../../packages/firebase/src/lib/common/firestore/query/watcher.ts"],"names":[],"mappings":";;;AAAA,wCAA6D;AAC7D,wCAA0C;AAC1C,+BAA4E;AAK/D,QAAA,kCAAkC,GAAG,CAAC,CAAC;AAoCpD,SAAgB,8BAA8B,CAAc,MAA+C;IACzG,MAAM,EAAE,QAAQ,EAAE,KAAK,EAAE,eAAe,GAAG,0CAAkC,EAAE,GAAG,MAAM,CAAC;IAEzF,MAAM,OAAO,GAAG,QAAQ,CAAC,iBAAiB,CAAC,2BAA2B,CAAC,IAAI,CACzE,IAAA,gBAAS,EAAC,CAAC,KAAK,EAAE,EAAE;;QAClB,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,GAAI,KAAK,CAAC,KAAiE,CAAC,KAAwC,CAAC;QAC3I,MAAM,eAAe,GAAG,IAAA,gBAAS,EAAC,IAAI,EAAE,eAAe,CAAC,CAAC;QAEzD,gDAAgD;QAChD,OAAO,IAAA,YAAK,EAAC,MAAA,eAAe,CAAC,SAAS,mCAAI,IAAI,IAAI,EAAE,CAAC,CAAC,IAAI,CACxD,IAAA,gBAAS,EAAC,GAAG,EAAE,CACb,MAAM,EAAE,CAAC,IAAI,CACX,IAAA,WAAI,EAAC,CAAC,CAAC,CAAC,+EAA+E;SACxF,CACF,CACF,CAAC;IACJ,CAAC,CAAC,EACF,IAAA,kBAAW,EAAC,CAAC,CAAC,CACf,CAAC;IAEF,MAAM,MAAM,GAAG,OAAO,CAAC,IAAI,CACzB,IAAA,UAAG,EAAC,CAAC,KAAK,EAAE,EAAE;QACZ,MAAM,OAAO,GAAG,KAAK,CAAC,UAAU,EAAE,CAAC;QAEnC,MAAM,OAAO,GAAG,IAAA,YAAK,EAAC;YACpB,IAAI,EAAE,IAAA,kBAAW,EAAC,OAAO,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAqD;YAC7F,KAAK,EAAE,CAAC,CAAC,EAAE,EAAE;;gBACX,CAAC,CAAC,IAAI,GAAG,IAAI,IAAI,EAAE,CAAC;gBACpB,CAAC,CAAC,OAAO,GAAG,OAAO,CAAC;gBACpB,CAAC,CAAC,KAAK,GAAG,MAAA,CAAC,CAAC,KAAK,mCAAI,EAAE,CAAC;gBACxB,CAAC,CAAC,OAAO,GAAG,MAAA,CAAC,CAAC,OAAO,mCAAI,EAAE,CAAC;gBAC5B,CAAC,CAAC,QAAQ,GAAG,MAAA,CAAC,CAAC,QAAQ,mCAAI,EAAE,CAAC;gBAC9B,CAAC,CAAC,IAAI,GAAG,gDAAgD,CAAC,CAA2C,CAAC,CAAC;YACzG,CAAC;SACF,CAAC,CAAC;QAEH,OAAO,OAAO,CAAC;IACjB,CAAC,CAAC,EACF,IAAA,kBAAW,EAAC,CAAC,CAAC,CACf,CAAC;IAEF,OAAO;QACL,OAAO;QACP,MAAM;KACP,CAAC;AACJ,CAAC;AA7CD,wEA6CC;AAED,SAAgB,gDAAgD,CAAc,KAAmD;IAC/H,MAAM,QAAQ,GAAG,KAAK,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC;IACxC,MAAM,UAAU,GAAG,KAAK,CAAC,OAAO,CAAC,MAAM,GAAG,CAAC,CAAC;IAC5C,IAAI,IAA8C,CAAC;IAEnD,IAAI,QAAQ,IAAI,UAAU,EAAE;QAC1B,IAAI,GAAG,iBAAiB,CAAC;KAC1B;SAAM,IAAI,QAAQ,EAAE;QACnB,IAAI,GAAG,OAAO,CAAC;KAChB;SAAM,IAAI,UAAU,EAAE;QACrB,IAAI,GAAG,SAAS,CAAC;KAClB;SAAM,IAAI,KAAK,CAAC,QAAQ,CAAC,MAAM,GAAG,CAAC,EAAE;QACpC,IAAI,GAAG,UAAU,CAAC;KACnB;SAAM;QACL,IAAI,GAAG,MAAM,CAAC;KACf;IAED,OAAO,IAAI,CAAC;AACd,CAAC;AAlBD,4GAkBC"}
|
|
@@ -1,5 +1,11 @@
|
|
|
1
|
-
import { FirestoreContext } from
|
|
2
|
-
import { CollectionReference, DocumentReference, Firestore } from
|
|
1
|
+
import { FirestoreContext } from './context';
|
|
2
|
+
import { CollectionReference, DocumentReference, Firestore, Query } from './types';
|
|
3
|
+
/**
|
|
4
|
+
* Contains a reference to a Query.
|
|
5
|
+
*/
|
|
6
|
+
export interface QueryLikeReferenceRef<T> {
|
|
7
|
+
readonly queryLike: Query<T>;
|
|
8
|
+
}
|
|
3
9
|
/**
|
|
4
10
|
* Contains a reference to a CollectionReference.
|
|
5
11
|
*/
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import { MaybeMap, ModelFieldConversions, ApplyMapFunctionWithOptions, ModelFieldConversionsConfig, TypedMappedModelData } from
|
|
2
|
-
import { SnapshotOptions, SetOptions, DocumentSnapshot, FirestoreDataConverter } from
|
|
1
|
+
import { MaybeMap, ModelFieldConversions, ApplyMapFunctionWithOptions, ModelFieldConversionsConfig, TypedMappedModelData } from '@dereekb/util';
|
|
2
|
+
import { SnapshotOptions, SetOptions, DocumentSnapshot, FirestoreDataConverter } from '../types';
|
|
3
3
|
/**
|
|
4
4
|
* The default "empty" value in the Firestore.
|
|
5
5
|
*/
|
|
@@ -4,18 +4,18 @@ exports.optionalFirestoreNumber = exports.firestoreNumber = exports.optionalFire
|
|
|
4
4
|
const date_1 = require("@dereekb/date");
|
|
5
5
|
const util_1 = require("@dereekb/util");
|
|
6
6
|
const snapshot_1 = require("./snapshot");
|
|
7
|
-
;
|
|
8
|
-
;
|
|
9
7
|
function firestoreField(config) {
|
|
10
8
|
var _a;
|
|
11
9
|
return {
|
|
12
|
-
from:
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
10
|
+
from: config.default
|
|
11
|
+
? {
|
|
12
|
+
default: config.default,
|
|
13
|
+
convert: config.fromData
|
|
14
|
+
}
|
|
15
|
+
: {
|
|
16
|
+
defaultInput: config.defaultData,
|
|
17
|
+
convert: config.fromData
|
|
18
|
+
},
|
|
19
19
|
to: {
|
|
20
20
|
default: (_a = config.defaultBeforeSave) !== null && _a !== void 0 ? _a : snapshot_1.FIRESTORE_EMPTY_VALUE,
|
|
21
21
|
convert: config.toData
|
|
@@ -26,7 +26,7 @@ exports.firestoreField = firestoreField;
|
|
|
26
26
|
exports.FIRESTORE_PASSTHROUGH_FIELD = firestoreField({
|
|
27
27
|
default: null,
|
|
28
28
|
fromData: util_1.passThrough,
|
|
29
|
-
toData: util_1.passThrough
|
|
29
|
+
toData: util_1.passThrough
|
|
30
30
|
});
|
|
31
31
|
function firestorePassThroughField() {
|
|
32
32
|
return exports.FIRESTORE_PASSTHROUGH_FIELD;
|
|
@@ -72,7 +72,7 @@ function firestoreBoolean(config) {
|
|
|
72
72
|
return firestoreField({
|
|
73
73
|
default: config.default,
|
|
74
74
|
fromData: util_1.passThrough,
|
|
75
|
-
toData: util_1.passThrough
|
|
75
|
+
toData: util_1.passThrough
|
|
76
76
|
});
|
|
77
77
|
}
|
|
78
78
|
exports.firestoreBoolean = firestoreBoolean;
|
|
@@ -84,7 +84,7 @@ function firestoreNumber(config) {
|
|
|
84
84
|
return firestoreField({
|
|
85
85
|
default: config.default,
|
|
86
86
|
fromData: util_1.passThrough,
|
|
87
|
-
toData: util_1.passThrough
|
|
87
|
+
toData: util_1.passThrough
|
|
88
88
|
});
|
|
89
89
|
}
|
|
90
90
|
exports.firestoreNumber = firestoreNumber;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"snapshot.field.js","sourceRoot":"","sources":["../../../../../../../../packages/firebase/src/lib/common/firestore/snapshot/snapshot.field.ts"],"names":[],"mappings":";;;AAAA,wCAA4E;AAC5E,wCAA8H;AAC9H,yCAAmD;
|
|
1
|
+
{"version":3,"file":"snapshot.field.js","sourceRoot":"","sources":["../../../../../../../../packages/firebase/src/lib/common/firestore/snapshot/snapshot.field.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"snapshot.js","sourceRoot":"","sources":["../../../../../../../../packages/firebase/src/lib/common/firestore/snapshot/snapshot.ts"],"names":[],"mappings":";;;AAAA,wCAA6N;AAC7N,oCAAsM;AAEtM,aAAa;AACb;;GAEG;AACU,QAAA,qBAAqB,GAAG,IAAI,CAAC;AAiE1C,SAAgB,0BAA0B,CAA6D,MAAqC;;IAC1I,MAAM,WAAW,
|
|
1
|
+
{"version":3,"file":"snapshot.js","sourceRoot":"","sources":["../../../../../../../../packages/firebase/src/lib/common/firestore/snapshot/snapshot.ts"],"names":[],"mappings":";;;AAAA,wCAA6N;AAC7N,oCAAsM;AAEtM,aAAa;AACb;;GAEG;AACU,QAAA,qBAAqB,GAAG,IAAI,CAAC;AAiE1C,SAAgB,0BAA0B,CAA6D,MAAqC;;IAC1I,MAAM,WAAW,GAAgC,MAAC,MAAuD,CAAC,gBAAgB,mCAAI,IAAA,4BAAqB,EAAQ,MAAkD,CAAC,MAAM,CAAC,CAAC;IACtN,MAAM,EAAE,IAAI,EAAE,QAAQ,EAAE,EAAE,EAAE,MAAM,EAAE,GAAG,IAAA,4BAAqB,EAAO,WAAW,CAAC,CAAC;IAEhF,MAAM,IAAI,GAAwC,CAAC,KAAuB,EAAE,MAA0B,EAAE,EAAE;QACxG,MAAM,IAAI,GAAG,KAAK,CAAC,IAAI,EAAE,CAAC;QAC1B,OAAO,QAAQ,CAAC,IAAS,EAAE,MAAM,CAAC,CAAC;IACrC,CAAC,CAAC;IAEF,MAAM,EAAE,GAAsC,CAAC,KAAQ,EAAE,MAA0B,EAAE,OAA2B,EAAE,EAAE;QAClH,IAAI,SAA2C,CAAC;QAEhD,IAAI,OAAO,EAAE;YACX,MAAM,WAAW,GAAI,OAAiC,CAAC,WAAW,CAAC;YAEnE,IAAK,OAA2B,CAAC,KAAK,EAAE;gBACtC,SAAS,GAAG;oBACV,WAAW,EAAE,IAAI;iBAClB,CAAC;aACH;YAED,IAAI,WAAW,EAAE;gBACf,SAAS,mCACJ,SAAS,KACZ,MAAM,EAAE,IAAA,4BAAoB,EAAC,WAAW,CAAgB,GACzD,CAAC;aACH;SACF;QAED,OAAO,MAAM,CAAC,KAAK,EAAE,MAAM,EAAE,SAAS,CAAC,CAAC;IAC1C,CAAC,CAAC;IAEF,OAAO;QACL,IAAI;QACJ,EAAE;QACF,aAAa,EAAE,CAAC,QAA6B,EAAE,OAAyB,EAAE,EAAE,CAAC,IAAI,CAAC,QAAQ,EAAE,SAAS,EAAE,OAAO,CAAC;QAC/G,WAAW,EAAE,CAAC,WAAyD,EAAE,OAAoB,EAAE,EAAE,CAAC,EAAE,CAAC,WAAgB,EAAE,SAAS,EAAE,OAAO,CAAC;KAC3I,CAAC;AACJ,CAAC;AAtCD,gEAsCC"}
|
|
@@ -33,7 +33,7 @@ export interface FieldPath {
|
|
|
33
33
|
isEqual(other: FieldPath): boolean;
|
|
34
34
|
}
|
|
35
35
|
export declare function asTopLevelFieldPaths(input: (string | FieldPath)[]): string[];
|
|
36
|
-
export declare function asTopLevelFieldPath(input:
|
|
36
|
+
export declare function asTopLevelFieldPath(input: string | FieldPath): string;
|
|
37
37
|
export interface Timestamp {
|
|
38
38
|
readonly seconds: number;
|
|
39
39
|
readonly nanoseconds: number;
|
|
@@ -62,7 +62,7 @@ export interface SetOptionsMerge {
|
|
|
62
62
|
readonly merge?: boolean | undefined;
|
|
63
63
|
}
|
|
64
64
|
export interface SetOptionsMergeFields {
|
|
65
|
-
readonly mergeFields?: Array<
|
|
65
|
+
readonly mergeFields?: Array<string | FieldPath>;
|
|
66
66
|
}
|
|
67
67
|
export interface SnapshotOptions {
|
|
68
68
|
readonly serverTimestamps?: 'estimate' | 'previous' | 'none';
|
|
@@ -96,6 +96,11 @@ export interface CollectionReference<T = DocumentData> extends Query<T> {
|
|
|
96
96
|
withConverter<U>(converter: FirestoreDataConverter<U>): CollectionReference<U>;
|
|
97
97
|
withConverter(converter: null): CollectionReference<DocumentData>;
|
|
98
98
|
}
|
|
99
|
+
export interface CollectionGroup<T = DocumentData> extends Query<T> {
|
|
100
|
+
readonly type?: 'query';
|
|
101
|
+
withConverter<U>(converter: FirestoreDataConverter<U>): CollectionGroup<U>;
|
|
102
|
+
withConverter(converter: null): CollectionGroup<DocumentData>;
|
|
103
|
+
}
|
|
99
104
|
export interface WriteBatch {
|
|
100
105
|
/**
|
|
101
106
|
* Commits the changes.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.js","sourceRoot":"","sources":["../../../../../../../packages/firebase/src/lib/common/firestore/types.ts"],"names":[],"mappings":";AAAA,0GAA0G;AAC1G,oBAAoB;;;
|
|
1
|
+
{"version":3,"file":"types.js","sourceRoot":"","sources":["../../../../../../../packages/firebase/src/lib/common/firestore/types.ts"],"names":[],"mappings":";AAAA,0GAA0G;AAC1G,oBAAoB;;;AAiCpB,SAAgB,oBAAoB,CAAC,KAA6B;IAChE,OAAO,KAAK,CAAC,GAAG,CAAC,mBAAmB,CAAC,CAAC;AACxC,CAAC;AAFD,oDAEC;AAED,SAAgB,mBAAmB,CAAC,KAAyB;IAC3D,IAAI,IAAY,CAAC;IAEjB,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE;QAC7B,IAAI,GAAG,KAAK,CAAC;KACd;SAAM;QACL,MAAM,QAAQ,GAAG,KAAK,CAAC,QAAQ,EAAE,CAAC;QAClC,IAAI,GAAG,QAAQ,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;KAC/B;IAED,OAAO,IAAI,CAAC;AACd,CAAC;AAXD,kDAWC"}
|
|
@@ -1,3 +1,3 @@
|
|
|
1
|
-
import { TransformAndValidateFunctionResult } from
|
|
1
|
+
import { TransformAndValidateFunctionResult } from '@dereekb/model';
|
|
2
2
|
export declare type FirebaseFunctionUpdateAction<P extends object, T> = TransformAndValidateFunctionResult<P, (document: T) => Promise<T>>;
|
|
3
3
|
export declare type AsyncFirebaseFunctionUpdateAction<P extends object, T> = Promise<FirebaseFunctionUpdateAction<P, T>>;
|
package/src/lib/model/user.d.ts
CHANGED
package/test/CHANGELOG.md
CHANGED
|
@@ -2,6 +2,24 @@
|
|
|
2
2
|
|
|
3
3
|
This file was generated using [@jscutlery/semver](https://github.com/jscutlery/semver).
|
|
4
4
|
|
|
5
|
+
# [5.2.0](https://github.com/dereekb/dbx-components/compare/v5.1.0-dev...v5.2.0) (2022-05-29)
|
|
6
|
+
|
|
7
|
+
|
|
8
|
+
### Features
|
|
9
|
+
|
|
10
|
+
* added collection group support to dbx-firebase components ([9f746c1](https://github.com/dereekb/dbx-components/commit/9f746c12a0e219970dcde12d920f1ef540514ce9))
|
|
11
|
+
* added firestore collection group support ([3b4c4cf](https://github.com/dereekb/dbx-components/commit/3b4c4cfa1dd860604c347ade69acdc2fea1063f8))
|
|
12
|
+
|
|
13
|
+
|
|
14
|
+
|
|
15
|
+
# [5.1.0](https://github.com/dereekb/dbx-components/compare/v5.0.1-dev...v5.1.0) (2022-05-27)
|
|
16
|
+
|
|
17
|
+
|
|
18
|
+
|
|
19
|
+
## [5.0.1](https://github.com/dereekb/dbx-components/compare/v5.0.0-dev...v5.0.1) (2022-05-26)
|
|
20
|
+
|
|
21
|
+
|
|
22
|
+
|
|
5
23
|
# [5.0.0](https://github.com/dereekb/dbx-components/compare/v4.1.0-dev...v5.0.0) (2022-05-25)
|
|
6
24
|
|
|
7
25
|
|
package/test/package.json
CHANGED
|
@@ -1,27 +1,27 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@dereekb/firebase/test",
|
|
3
|
-
"version": "5.
|
|
3
|
+
"version": "5.2.0",
|
|
4
4
|
"main": "./src/index.js",
|
|
5
5
|
"typings": "./src/index.d.ts",
|
|
6
6
|
"dependencies": {},
|
|
7
7
|
"peerDependencies": {
|
|
8
|
-
"@dereekb/util/test": "5.
|
|
9
|
-
"@dereekb/util": "5.
|
|
8
|
+
"@dereekb/util/test": "5.2.0",
|
|
9
|
+
"@dereekb/util": "5.2.0",
|
|
10
10
|
"make-error": "^1.3.0",
|
|
11
11
|
"extra-set": "^2.2.11",
|
|
12
|
-
"@dereekb/firebase": "5.
|
|
12
|
+
"@dereekb/firebase": "5.2.0",
|
|
13
13
|
"rxjs": "^7.0.0",
|
|
14
14
|
"rxfire": "^6.0.3",
|
|
15
15
|
"firebase": "^9.8.0",
|
|
16
|
-
"@dereekb/rxjs": "5.
|
|
16
|
+
"@dereekb/rxjs": "5.2.0",
|
|
17
17
|
"ms": "^3.0.0-canary.1",
|
|
18
|
-
"@dereekb/date": "5.
|
|
18
|
+
"@dereekb/date": "5.2.0",
|
|
19
19
|
"class-transformer": "^0.5.1",
|
|
20
20
|
"date-fns": "^2.28.0",
|
|
21
21
|
"class-validator": "^0.13.2",
|
|
22
22
|
"date-fns-tz": "^1.3.0",
|
|
23
23
|
"rrule": "git+https://git@github.com/dereekb/rrule.git#17adf5708d6567b4d01a3a8afd106261421ea492",
|
|
24
|
-
"@dereekb/model": "5.
|
|
24
|
+
"@dereekb/model": "5.2.0",
|
|
25
25
|
"tslib": "^2.0.0"
|
|
26
26
|
}
|
|
27
27
|
}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { TestFirestoreContext, TestingFirestoreDrivers } from '../common/firestore';
|
|
2
2
|
import { Maybe } from '@dereekb/util';
|
|
3
|
-
import { TestEnvironmentConfig, RulesTestEnvironment, RulesTestContext, TokenOptions, EmulatorConfig } from
|
|
3
|
+
import { TestEnvironmentConfig, RulesTestEnvironment, RulesTestContext, TokenOptions, EmulatorConfig } from '@firebase/rules-unit-testing';
|
|
4
4
|
import { TestFirestoreContextFixture, TestFirestoreInstance } from '../common/firestore.mock';
|
|
5
5
|
export interface RulesUnitTestingContextConfig {
|
|
6
6
|
userId: string;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"firestore.js","sourceRoot":"","sources":["../../../../../../../packages/firebase/test/src/lib/client/firestore.ts"],"names":[],"mappings":";;;;AAAA,mDAAiH;AAEjH,6CAA4D;AAC5D,
|
|
1
|
+
{"version":3,"file":"firestore.js","sourceRoot":"","sources":["../../../../../../../packages/firebase/test/src/lib/client/firestore.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,4 +1,7 @@
|
|
|
1
1
|
import { FirestoreAccessorDriver, FirestoreContext, FirestoreDrivers } from '@dereekb/firebase';
|
|
2
|
+
/**
|
|
3
|
+
* Used to override/extend a FirestoreAccessorDriver to provide better isolation between tests.
|
|
4
|
+
*/
|
|
2
5
|
export interface TestingFirestoreAccessorDriver extends FirestoreAccessorDriver {
|
|
3
6
|
/**
|
|
4
7
|
* Gets the fuzzed path names map.
|
|
@@ -7,25 +7,34 @@ function makeTestingFirestoreAccesorDriver(driver) {
|
|
|
7
7
|
let fuzzerKey = 0;
|
|
8
8
|
const time = new Date().getTime();
|
|
9
9
|
const fuzzedMap = new Map();
|
|
10
|
-
const collection = driver
|
|
11
|
-
const
|
|
10
|
+
const { collection, subcollection, collectionGroup } = driver;
|
|
11
|
+
const fuzzedPathForPath = (path) => {
|
|
12
12
|
let fuzzedPath = fuzzedMap.get(path);
|
|
13
13
|
if (!fuzzedPath) {
|
|
14
14
|
const random = Math.ceil(Math.random() * 9999) % 9999;
|
|
15
|
-
fuzzedPath = `${time}_${random}_${path}_${fuzzerKey += 1}`;
|
|
15
|
+
fuzzedPath = `${time}_${random}_${path}_${(fuzzerKey += 1)}`;
|
|
16
16
|
fuzzedMap.set(path, fuzzedPath);
|
|
17
17
|
}
|
|
18
18
|
return fuzzedPath;
|
|
19
19
|
};
|
|
20
20
|
const fuzzedCollection = (f, path) => {
|
|
21
|
-
const fuzzedPath =
|
|
21
|
+
const fuzzedPath = fuzzedPathForPath(path);
|
|
22
22
|
return collection(f, fuzzedPath);
|
|
23
23
|
};
|
|
24
|
+
const fuzzedSubcollection = (document, path, ...pathSegments) => {
|
|
25
|
+
const fuzzedPath = fuzzedPathForPath(path);
|
|
26
|
+
const fuzzedPathSegments = pathSegments.map((x) => fuzzedPathForPath(x));
|
|
27
|
+
return subcollection(document, fuzzedPath, ...fuzzedPathSegments);
|
|
28
|
+
};
|
|
29
|
+
const fuzzedCollectionGroup = (f, collectionId) => {
|
|
30
|
+
const fuzzedPath = fuzzedPathForPath(collectionId);
|
|
31
|
+
return collectionGroup(f, fuzzedPath);
|
|
32
|
+
};
|
|
24
33
|
const initWithCollectionNames = (collectionPaths) => {
|
|
25
|
-
collectionPaths.forEach((x) =>
|
|
34
|
+
collectionPaths.forEach((x) => fuzzedPathForPath(x));
|
|
26
35
|
return fuzzedMap;
|
|
27
36
|
};
|
|
28
|
-
const injectedDriver = Object.assign(Object.assign({}, driver), { collection: fuzzedCollection, getFuzzedCollectionsNameMap: () => fuzzedMap, initWithCollectionNames });
|
|
37
|
+
const injectedDriver = Object.assign(Object.assign({}, driver), { collection: fuzzedCollection, collectionGroup: fuzzedCollectionGroup, subcollection: fuzzedSubcollection, getFuzzedCollectionsNameMap: () => fuzzedMap, initWithCollectionNames });
|
|
29
38
|
return injectedDriver;
|
|
30
39
|
}
|
|
31
40
|
exports.makeTestingFirestoreAccesorDriver = makeTestingFirestoreAccesorDriver;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"firestore.js","sourceRoot":"","sources":["../../../../../../../packages/firebase/test/src/lib/common/firestore.ts"],"names":[],"mappings":";;;;AAAA,
|
|
1
|
+
{"version":3,"file":"firestore.js","sourceRoot":"","sources":["../../../../../../../packages/firebase/test/src/lib/common/firestore.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
import { AbstractJestTestContextFixture, JestTestContextFactory } from
|
|
1
|
+
import { AbstractJestTestContextFixture, JestTestContextFactory } from '@dereekb/util/test';
|
|
2
2
|
import { Firestore } from '@dereekb/firebase';
|
|
3
|
-
import { TestFirestoreContext } from
|
|
3
|
+
import { TestFirestoreContext } from './firestore';
|
|
4
4
|
export declare class TestFirestoreInstance {
|
|
5
5
|
readonly context: TestFirestoreContext;
|
|
6
6
|
constructor(context: TestFirestoreContext);
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { Maybe } from '@dereekb/util';
|
|
2
|
-
import { CollectionReference, FirestoreCollection, FirestoreContext, AbstractFirestoreDocument, SingleItemFirestoreCollection, FirestoreCollectionWithParent, AbstractFirestoreDocumentWithParent, ExpectedFirestoreModelData, FirestoreModelData } from '@dereekb/firebase';
|
|
2
|
+
import { CollectionReference, FirestoreCollection, FirestoreContext, AbstractFirestoreDocument, SingleItemFirestoreCollection, FirestoreCollectionWithParent, AbstractFirestoreDocumentWithParent, ExpectedFirestoreModelData, FirestoreModelData, CollectionGroup, FirestoreCollectionGroup } from '@dereekb/firebase';
|
|
3
3
|
/**
|
|
4
4
|
* Converted data for a test item in our firestore collection.
|
|
5
5
|
*/
|
|
@@ -111,9 +111,13 @@ export declare function mockItemSubItemCollectionReferenceFactory(context: Fires
|
|
|
111
111
|
export declare type MockItemSubItemFirestoreCollection = FirestoreCollectionWithParent<MockItemSubItem, MockItem, MockItemSubItemDocument, MockItemDocument>;
|
|
112
112
|
export declare type MockItemSubItemFirestoreCollectionFactory = (parent: MockItemDocument) => MockItemSubItemFirestoreCollection;
|
|
113
113
|
export declare function mockItemSubItemFirestoreCollection(firestoreContext: FirestoreContext): MockItemSubItemFirestoreCollectionFactory;
|
|
114
|
+
export declare function mockItemSubItemCollectionReference(context: FirestoreContext): CollectionGroup<MockItemSubItem>;
|
|
115
|
+
export declare type MockItemSubItemFirestoreCollectionGroup = FirestoreCollectionGroup<MockItemSubItem, MockItemSubItemDocument>;
|
|
116
|
+
export declare function mockItemSubItemFirestoreCollectionGroup(firestoreContext: FirestoreContext): MockItemSubItemFirestoreCollectionGroup;
|
|
114
117
|
export declare abstract class MockItemCollections {
|
|
115
118
|
abstract readonly mockItem: MockItemFirestoreCollection;
|
|
116
119
|
abstract readonly mockItemPrivate: MockItemPrivateFirestoreCollectionFactory;
|
|
117
120
|
abstract readonly mockItemSubItem: MockItemSubItemFirestoreCollectionFactory;
|
|
121
|
+
abstract readonly mockItemSubItemGroup: MockItemSubItemFirestoreCollectionGroup;
|
|
118
122
|
}
|
|
119
123
|
export declare function makeMockItemCollections(firestoreContext: FirestoreContext): MockItemCollections;
|
|
@@ -9,6 +9,7 @@ export declare class MockItemCollectionFixtureInstance {
|
|
|
9
9
|
get firestoreCollection(): MockItemFirestoreCollection;
|
|
10
10
|
get mockItemPrivateCollection(): import("./firestore.mock.item").MockItemPrivateFirestoreCollectionFactory;
|
|
11
11
|
get mockItemSubItemCollection(): import("./firestore.mock.item").MockItemSubItemFirestoreCollectionFactory;
|
|
12
|
+
get mockItemSubItemCollectionGroup(): import("./firestore.mock.item").MockItemSubItemFirestoreCollectionGroup;
|
|
12
13
|
constructor(fixture: MockItemCollectionFixture);
|
|
13
14
|
}
|
|
14
15
|
/**
|
|
@@ -21,6 +21,9 @@ class MockItemCollectionFixtureInstance {
|
|
|
21
21
|
get mockItemSubItemCollection() {
|
|
22
22
|
return this.collections.mockItemSubItem;
|
|
23
23
|
}
|
|
24
|
+
get mockItemSubItemCollectionGroup() {
|
|
25
|
+
return this.collections.mockItemSubItemGroup;
|
|
26
|
+
}
|
|
24
27
|
}
|
|
25
28
|
exports.MockItemCollectionFixtureInstance = MockItemCollectionFixtureInstance;
|
|
26
29
|
/**
|
|
@@ -35,7 +38,7 @@ function testWithMockItemFixture(config) {
|
|
|
35
38
|
makeInstance: (wrap) => new MockItemCollectionFixtureInstance(wrap),
|
|
36
39
|
teardownInstance: (instance) => {
|
|
37
40
|
// instance.fixture.parent.instance.clearFirestore();
|
|
38
|
-
}
|
|
41
|
+
}
|
|
39
42
|
// TODO: Utilize config here using the setup/teardown later if needed.
|
|
40
43
|
});
|
|
41
44
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"firestore.mock.item.fixture.js","sourceRoot":"","sources":["../../../../../../../packages/firebase/test/src/lib/common/firestore.mock.item.fixture.ts"],"names":[],"mappings":";;;AACA,6CAAkJ;AAClJ,+DAAuG;AAGvG,kCAAkC;AAClC,MAAa,iCAAiC;
|
|
1
|
+
{"version":3,"file":"firestore.mock.item.fixture.js","sourceRoot":"","sources":["../../../../../../../packages/firebase/test/src/lib/common/firestore.mock.item.fixture.ts"],"names":[],"mappings":";;;AACA,6CAAkJ;AAClJ,+DAAuG;AAGvG,kCAAkC;AAClC,MAAa,iCAAiC;IAsB5C,YAAqB,OAAkC;QAAlC,YAAO,GAAP,OAAO,CAA2B;QArB9C,gBAAW,GAAG,IAAA,6CAAuB,EAAC,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;IAqBlB,CAAC;IAnB3D,IAAI,UAAU;QACZ,OAAO,IAAI,CAAC,mBAAmB,CAAC,UAAU,CAAC;IAC7C,CAAC;IACD,IAAI,mBAAmB;QACrB,OAAO,IAAI,CAAC,WAAW,CAAC,QAAQ,CAAC;IACnC,CAAC;IAED,IAAI,yBAAyB;QAC3B,OAAO,IAAI,CAAC,WAAW,CAAC,eAAe,CAAC;IAC1C,CAAC;IAED,IAAI,yBAAyB;QAC3B,OAAO,IAAI,CAAC,WAAW,CAAC,eAAe,CAAC;IAC1C,CAAC;IAED,IAAI,8BAA8B;QAChC,OAAO,IAAI,CAAC,WAAW,CAAC,oBAAoB,CAAC;IAC/C,CAAC;CAGF;AAvBD,8EAuBC;AAED;;GAEG;AACH,MAAa,yBAA0B,SAAQ,yCAAkG;CAAG;AAApJ,8DAAoJ;AAIpJ,SAAgB,uBAAuB,CAAC,MAAgD;IACtF,OAAO,IAAA,yCAAkC,EAAC;QACxC,WAAW,EAAE,CAAC,OAAO,EAAE,EAAE,CAAC,IAAI,yBAAyB,CAAC,OAAO,CAAC;QAChE,YAAY,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,iCAAiC,CAAC,IAAI,CAAC;QACnE,gBAAgB,EAAE,CAAC,QAA2C,EAAE,EAAE;YAChE,qDAAqD;QACvD,CAAC;QACD,sEAAsE;KACvE,CAAC,CAAC;AACL,CAAC;AATD,0DASC"}
|