@dereekb/firebase 10.0.4 → 10.0.6
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/index.cjs.d.ts +1 -0
- package/index.cjs.default.js +1 -0
- package/index.cjs.js +8116 -0
- package/index.cjs.mjs +2 -0
- package/index.esm.js +8767 -0
- package/package.json +9 -10
- package/src/lib/client/firestore/driver.accessor.batch.d.ts +2 -2
- package/src/lib/client/firestore/driver.accessor.create.d.ts +2 -2
- 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.transaction.d.ts +3 -3
- package/src/lib/client/firestore/driver.d.ts +1 -1
- package/src/lib/client/firestore/driver.query.d.ts +5 -5
- package/src/lib/client/firestore/firestore.d.ts +1 -1
- package/src/lib/client/firestore/increment.d.ts +2 -2
- package/src/lib/client/function/development.function.d.ts +2 -2
- package/src/lib/client/function/development.function.factory.d.ts +3 -3
- package/src/lib/client/function/error.d.ts +2 -2
- package/src/lib/client/function/function.callable.d.ts +2 -2
- package/src/lib/client/function/function.factory.d.ts +3 -3
- package/src/lib/client/function/model.function.factory.d.ts +7 -6
- package/src/lib/client/storage/driver.accessor.d.ts +4 -4
- package/src/lib/client/storage/driver.d.ts +1 -1
- package/src/lib/client/storage/storage.d.ts +1 -1
- package/src/lib/common/auth/auth.context.d.ts +2 -2
- package/src/lib/common/auth/auth.d.ts +1 -1
- package/src/lib/common/auth/auth.error.d.ts +2 -2
- package/src/lib/common/firestore/accessor/accessor.batch.d.ts +2 -2
- package/src/lib/common/firestore/accessor/accessor.d.ts +5 -5
- package/src/lib/common/firestore/accessor/accessor.default.d.ts +1 -1
- package/src/lib/common/firestore/accessor/accessor.transaction.d.ts +2 -2
- package/src/lib/common/firestore/accessor/accessor.wrap.d.ts +3 -3
- package/src/lib/common/firestore/accessor/accessor.wrap.modify.d.ts +6 -6
- 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/converter.d.ts +2 -2
- package/src/lib/common/firestore/accessor/document.d.ts +11 -11
- package/src/lib/common/firestore/accessor/document.rxjs.d.ts +3 -3
- package/src/lib/common/firestore/accessor/document.utility.d.ts +4 -4
- package/src/lib/common/firestore/accessor/increment.d.ts +2 -2
- package/src/lib/common/firestore/collection/collection.d.ts +7 -7
- package/src/lib/common/firestore/collection/collection.group.d.ts +5 -5
- package/src/lib/common/firestore/collection/collection.key.d.ts +3 -3
- package/src/lib/common/firestore/collection/collection.query.d.ts +7 -7
- package/src/lib/common/firestore/collection/collection.single.d.ts +2 -2
- package/src/lib/common/firestore/collection/subcollection.d.ts +2 -2
- package/src/lib/common/firestore/collection/subcollection.single.d.ts +2 -2
- package/src/lib/common/firestore/context.d.ts +6 -6
- package/src/lib/common/firestore/driver/accessor.d.ts +7 -7
- package/src/lib/common/firestore/driver/batch.d.ts +2 -2
- package/src/lib/common/firestore/driver/driver.d.ts +2 -2
- package/src/lib/common/firestore/driver/query.d.ts +5 -5
- package/src/lib/common/firestore/driver/query.handler.d.ts +3 -3
- package/src/lib/common/firestore/driver/transaction.d.ts +1 -1
- package/src/lib/common/firestore/error.d.ts +1 -1
- package/src/lib/common/firestore/query/accumulator.d.ts +4 -4
- package/src/lib/common/firestore/query/constraint.d.ts +3 -3
- package/src/lib/common/firestore/query/constraint.template.d.ts +5 -5
- package/src/lib/common/firestore/query/iterator.d.ts +7 -7
- package/src/lib/common/firestore/query/query.d.ts +6 -6
- package/src/lib/common/firestore/query/query.iterate.d.ts +5 -5
- package/src/lib/common/firestore/query/query.util.d.ts +1 -1
- package/src/lib/common/firestore/query/watcher.d.ts +3 -3
- package/src/lib/common/firestore/reference.d.ts +2 -2
- package/src/lib/common/firestore/snapshot/snapshot.d.ts +1 -1
- package/src/lib/common/firestore/snapshot/snapshot.field.d.ts +4 -4
- package/src/lib/common/firestore/snapshot/snapshot.type.d.ts +2 -2
- package/src/lib/common/firestore/util/id.batch.d.ts +4 -4
- package/src/lib/common/function/action.d.ts +1 -1
- package/src/lib/common/model/context.d.ts +2 -2
- package/src/lib/common/model/function.d.ts +3 -3
- package/src/lib/common/model/model/model.loader.d.ts +3 -3
- package/src/lib/common/model/model/model.param.d.ts +1 -1
- package/src/lib/common/model/model/model.validator.d.ts +2 -2
- package/src/lib/common/model/model.service.d.ts +7 -7
- package/src/lib/common/model/permission/permission.context.d.ts +4 -4
- package/src/lib/common/model/permission/permission.d.ts +4 -4
- package/src/lib/common/model/permission/permission.service.d.ts +6 -6
- package/src/lib/common/model/permission/permission.service.grant.d.ts +5 -5
- package/src/lib/common/model/permission/permission.service.role.d.ts +6 -6
- package/src/lib/common/storage/accessor/path.model.d.ts +2 -2
- package/src/lib/common/storage/context.d.ts +4 -4
- package/src/lib/common/storage/driver/accessor.d.ts +3 -3
- package/src/lib/common/storage/driver/driver.d.ts +1 -1
- package/src/lib/common/storage/driver/error.d.ts +1 -1
- package/src/lib/common/storage/driver/list.d.ts +1 -1
- package/src/lib/common/storage/storage.d.ts +1 -1
- package/src/lib/common/storage/types.d.ts +1 -1
- package/src/lib/model/system/system.action.d.ts +2 -2
- package/src/lib/model/system/system.d.ts +5 -5
- package/src/lib/model/user.d.ts +1 -1
- package/test/CHANGELOG.md +8 -0
- package/test/package.json +1 -1
- package/CHANGELOG.md +0 -1751
- package/src/index.js +0 -5
- package/src/index.js.map +0 -1
- package/src/lib/client/firestore/driver.accessor.batch.js +0 -55
- package/src/lib/client/firestore/driver.accessor.batch.js.map +0 -1
- package/src/lib/client/firestore/driver.accessor.create.js +0 -17
- package/src/lib/client/firestore/driver.accessor.create.js.map +0 -1
- package/src/lib/client/firestore/driver.accessor.default.js +0 -58
- package/src/lib/client/firestore/driver.accessor.default.js.map +0 -1
- package/src/lib/client/firestore/driver.accessor.js +0 -25
- package/src/lib/client/firestore/driver.accessor.js.map +0 -1
- package/src/lib/client/firestore/driver.accessor.transaction.js +0 -76
- package/src/lib/client/firestore/driver.accessor.transaction.js.map +0 -1
- package/src/lib/client/firestore/driver.js +0 -15
- package/src/lib/client/firestore/driver.js.map +0 -1
- package/src/lib/client/firestore/driver.query.js +0 -52
- package/src/lib/client/firestore/driver.query.js.map +0 -1
- package/src/lib/client/firestore/firestore.js +0 -10
- package/src/lib/client/firestore/firestore.js.map +0 -1
- package/src/lib/client/firestore/increment.js +0 -18
- package/src/lib/client/firestore/increment.js.map +0 -1
- package/src/lib/client/firestore/index.js +0 -9
- package/src/lib/client/firestore/index.js.map +0 -1
- package/src/lib/client/function/development.function.factory.js +0 -23
- package/src/lib/client/function/development.function.factory.js.map +0 -1
- package/src/lib/client/function/development.function.js +0 -16
- package/src/lib/client/function/development.function.js.map +0 -1
- package/src/lib/client/function/error.js +0 -20
- package/src/lib/client/function/error.js.map +0 -1
- package/src/lib/client/function/function.callable.js +0 -52
- package/src/lib/client/function/function.callable.js.map +0 -1
- package/src/lib/client/function/function.factory.js +0 -39
- package/src/lib/client/function/function.factory.js.map +0 -1
- package/src/lib/client/function/function.js +0 -3
- package/src/lib/client/function/function.js.map +0 -1
- package/src/lib/client/function/index.js +0 -11
- package/src/lib/client/function/index.js.map +0 -1
- package/src/lib/client/function/model.function.factory.js +0 -75
- package/src/lib/client/function/model.function.factory.js.map +0 -1
- package/src/lib/client/index.js +0 -7
- package/src/lib/client/index.js.map +0 -1
- package/src/lib/client/storage/driver.accessor.js +0 -105
- package/src/lib/client/storage/driver.accessor.js.map +0 -1
- package/src/lib/client/storage/driver.js +0 -13
- package/src/lib/client/storage/driver.js.map +0 -1
- package/src/lib/client/storage/index.js +0 -7
- package/src/lib/client/storage/index.js.map +0 -1
- package/src/lib/client/storage/storage.js +0 -10
- package/src/lib/client/storage/storage.js.map +0 -1
- package/src/lib/common/auth/auth.context.js +0 -7
- package/src/lib/common/auth/auth.context.js.map +0 -1
- package/src/lib/common/auth/auth.error.js +0 -41
- package/src/lib/common/auth/auth.error.js.map +0 -1
- package/src/lib/common/auth/auth.js +0 -18
- package/src/lib/common/auth/auth.js.map +0 -1
- package/src/lib/common/auth/index.js +0 -7
- package/src/lib/common/auth/index.js.map +0 -1
- package/src/lib/common/development/function.js +0 -23
- package/src/lib/common/development/function.js.map +0 -1
- package/src/lib/common/development/function.schedule.js +0 -33
- package/src/lib/common/development/function.schedule.js.map +0 -1
- package/src/lib/common/development/index.js +0 -6
- package/src/lib/common/development/index.js.map +0 -1
- package/src/lib/common/error.js +0 -3
- package/src/lib/common/error.js.map +0 -1
- package/src/lib/common/firestore/accessor/accessor.batch.js +0 -3
- package/src/lib/common/firestore/accessor/accessor.batch.js.map +0 -1
- package/src/lib/common/firestore/accessor/accessor.default.js +0 -3
- package/src/lib/common/firestore/accessor/accessor.default.js.map +0 -1
- package/src/lib/common/firestore/accessor/accessor.js +0 -83
- package/src/lib/common/firestore/accessor/accessor.js.map +0 -1
- package/src/lib/common/firestore/accessor/accessor.transaction.js +0 -3
- package/src/lib/common/firestore/accessor/accessor.transaction.js.map +0 -1
- package/src/lib/common/firestore/accessor/accessor.wrap.js +0 -52
- package/src/lib/common/firestore/accessor/accessor.wrap.js.map +0 -1
- package/src/lib/common/firestore/accessor/accessor.wrap.modify.js +0 -114
- package/src/lib/common/firestore/accessor/accessor.wrap.modify.js.map +0 -1
- package/src/lib/common/firestore/accessor/context.batch.js +0 -3
- package/src/lib/common/firestore/accessor/context.batch.js.map +0 -1
- package/src/lib/common/firestore/accessor/context.default.js +0 -3
- package/src/lib/common/firestore/accessor/context.default.js.map +0 -1
- package/src/lib/common/firestore/accessor/context.js +0 -15
- package/src/lib/common/firestore/accessor/context.js.map +0 -1
- package/src/lib/common/firestore/accessor/context.transaction.js +0 -3
- package/src/lib/common/firestore/accessor/context.transaction.js.map +0 -1
- package/src/lib/common/firestore/accessor/converter.js +0 -3
- package/src/lib/common/firestore/accessor/converter.js.map +0 -1
- package/src/lib/common/firestore/accessor/document.js +0 -248
- package/src/lib/common/firestore/accessor/document.js.map +0 -1
- package/src/lib/common/firestore/accessor/document.rxjs.js +0 -18
- package/src/lib/common/firestore/accessor/document.rxjs.js.map +0 -1
- package/src/lib/common/firestore/accessor/document.utility.js +0 -211
- package/src/lib/common/firestore/accessor/document.utility.js.map +0 -1
- package/src/lib/common/firestore/accessor/increment.js +0 -22
- package/src/lib/common/firestore/accessor/increment.js.map +0 -1
- package/src/lib/common/firestore/accessor/index.js +0 -19
- package/src/lib/common/firestore/accessor/index.js.map +0 -1
- package/src/lib/common/firestore/collection/collection.group.js +0 -32
- package/src/lib/common/firestore/collection/collection.group.js.map +0 -1
- package/src/lib/common/firestore/collection/collection.js +0 -446
- package/src/lib/common/firestore/collection/collection.js.map +0 -1
- package/src/lib/common/firestore/collection/collection.key.js +0 -3
- package/src/lib/common/firestore/collection/collection.key.js.map +0 -1
- package/src/lib/common/firestore/collection/collection.query.js +0 -27
- package/src/lib/common/firestore/collection/collection.query.js.map +0 -1
- package/src/lib/common/firestore/collection/collection.single.js +0 -17
- package/src/lib/common/firestore/collection/collection.single.js.map +0 -1
- package/src/lib/common/firestore/collection/index.js +0 -10
- package/src/lib/common/firestore/collection/index.js.map +0 -1
- package/src/lib/common/firestore/collection/subcollection.js +0 -15
- package/src/lib/common/firestore/collection/subcollection.js.map +0 -1
- package/src/lib/common/firestore/collection/subcollection.single.js +0 -17
- package/src/lib/common/firestore/collection/subcollection.single.js.map +0 -1
- package/src/lib/common/firestore/context.js +0 -47
- package/src/lib/common/firestore/context.js.map +0 -1
- package/src/lib/common/firestore/driver/accessor.js +0 -3
- package/src/lib/common/firestore/driver/accessor.js.map +0 -1
- package/src/lib/common/firestore/driver/batch.js +0 -3
- package/src/lib/common/firestore/driver/batch.js.map +0 -1
- package/src/lib/common/firestore/driver/driver.js +0 -3
- package/src/lib/common/firestore/driver/driver.js.map +0 -1
- package/src/lib/common/firestore/driver/index.js +0 -10
- package/src/lib/common/firestore/driver/index.js.map +0 -1
- package/src/lib/common/firestore/driver/query.handler.js +0 -27
- package/src/lib/common/firestore/driver/query.handler.js.map +0 -1
- package/src/lib/common/firestore/driver/query.js +0 -3
- package/src/lib/common/firestore/driver/query.js.map +0 -1
- package/src/lib/common/firestore/driver/transaction.js +0 -3
- package/src/lib/common/firestore/driver/transaction.js.map +0 -1
- package/src/lib/common/firestore/error.js +0 -29
- package/src/lib/common/firestore/error.js.map +0 -1
- package/src/lib/common/firestore/index.js +0 -14
- package/src/lib/common/firestore/index.js.map +0 -1
- package/src/lib/common/firestore/query/accumulator.js +0 -24
- package/src/lib/common/firestore/query/accumulator.js.map +0 -1
- package/src/lib/common/firestore/query/constraint.js +0 -176
- package/src/lib/common/firestore/query/constraint.js.map +0 -1
- package/src/lib/common/firestore/query/constraint.template.js +0 -75
- package/src/lib/common/firestore/query/constraint.template.js.map +0 -1
- package/src/lib/common/firestore/query/index.js +0 -12
- package/src/lib/common/firestore/query/index.js.map +0 -1
- package/src/lib/common/firestore/query/iterator.js +0 -110
- package/src/lib/common/firestore/query/iterator.js.map +0 -1
- package/src/lib/common/firestore/query/query.iterate.js +0 -158
- package/src/lib/common/firestore/query/query.iterate.js.map +0 -1
- package/src/lib/common/firestore/query/query.js +0 -37
- package/src/lib/common/firestore/query/query.js.map +0 -1
- package/src/lib/common/firestore/query/query.util.js +0 -26
- package/src/lib/common/firestore/query/query.util.js.map +0 -1
- package/src/lib/common/firestore/query/watcher.js +0 -62
- package/src/lib/common/firestore/query/watcher.js.map +0 -1
- package/src/lib/common/firestore/reference.js +0 -3
- package/src/lib/common/firestore/reference.js.map +0 -1
- package/src/lib/common/firestore/snapshot/index.js +0 -7
- package/src/lib/common/firestore/snapshot/index.js.map +0 -1
- package/src/lib/common/firestore/snapshot/snapshot.field.js +0 -580
- package/src/lib/common/firestore/snapshot/snapshot.field.js.map +0 -1
- package/src/lib/common/firestore/snapshot/snapshot.js +0 -40
- package/src/lib/common/firestore/snapshot/snapshot.js.map +0 -1
- package/src/lib/common/firestore/snapshot/snapshot.type.js +0 -8
- package/src/lib/common/firestore/snapshot/snapshot.type.js.map +0 -1
- package/src/lib/common/firestore/types.js +0 -22
- package/src/lib/common/firestore/types.js.map +0 -1
- package/src/lib/common/firestore/util/id.batch.js +0 -28
- package/src/lib/common/firestore/util/id.batch.js.map +0 -1
- package/src/lib/common/firestore/util/index.js +0 -5
- package/src/lib/common/firestore/util/index.js.map +0 -1
- package/src/lib/common/function/action.js +0 -3
- package/src/lib/common/function/action.js.map +0 -1
- package/src/lib/common/function/index.js +0 -5
- package/src/lib/common/function/index.js.map +0 -1
- package/src/lib/common/index.js +0 -11
- package/src/lib/common/index.js.map +0 -1
- package/src/lib/common/model/context.js +0 -3
- package/src/lib/common/model/context.js.map +0 -1
- package/src/lib/common/model/function.js +0 -53
- package/src/lib/common/model/function.js.map +0 -1
- package/src/lib/common/model/index.js +0 -9
- package/src/lib/common/model/index.js.map +0 -1
- package/src/lib/common/model/model/index.js +0 -7
- package/src/lib/common/model/model/index.js.map +0 -1
- package/src/lib/common/model/model/model.loader.js +0 -21
- package/src/lib/common/model/model/model.loader.js.map +0 -1
- package/src/lib/common/model/model/model.param.js +0 -52
- package/src/lib/common/model/model/model.param.js.map +0 -1
- package/src/lib/common/model/model/model.validator.js +0 -46
- package/src/lib/common/model/model/model.validator.js.map +0 -1
- package/src/lib/common/model/model.service.js +0 -138
- package/src/lib/common/model/model.service.js.map +0 -1
- package/src/lib/common/model/permission/index.js +0 -9
- package/src/lib/common/model/permission/index.js.map +0 -1
- package/src/lib/common/model/permission/permission.context.js +0 -3
- package/src/lib/common/model/permission/permission.context.js.map +0 -1
- package/src/lib/common/model/permission/permission.js +0 -3
- package/src/lib/common/model/permission/permission.js.map +0 -1
- package/src/lib/common/model/permission/permission.service.grant.js +0 -136
- package/src/lib/common/model/permission/permission.service.grant.js.map +0 -1
- package/src/lib/common/model/permission/permission.service.js +0 -34
- package/src/lib/common/model/permission/permission.service.js.map +0 -1
- package/src/lib/common/model/permission/permission.service.role.js +0 -115
- package/src/lib/common/model/permission/permission.service.role.js.map +0 -1
- package/src/lib/common/storage/accessor/index.js +0 -5
- package/src/lib/common/storage/accessor/index.js.map +0 -1
- package/src/lib/common/storage/accessor/path.model.js +0 -25
- package/src/lib/common/storage/accessor/path.model.js.map +0 -1
- package/src/lib/common/storage/context.js +0 -34
- package/src/lib/common/storage/context.js.map +0 -1
- package/src/lib/common/storage/driver/accessor.js +0 -3
- package/src/lib/common/storage/driver/accessor.js.map +0 -1
- package/src/lib/common/storage/driver/driver.js +0 -3
- package/src/lib/common/storage/driver/driver.js.map +0 -1
- package/src/lib/common/storage/driver/error.js +0 -16
- package/src/lib/common/storage/driver/error.js.map +0 -1
- package/src/lib/common/storage/driver/index.js +0 -8
- package/src/lib/common/storage/driver/index.js.map +0 -1
- package/src/lib/common/storage/driver/list.js +0 -41
- package/src/lib/common/storage/driver/list.js.map +0 -1
- package/src/lib/common/storage/index.js +0 -9
- package/src/lib/common/storage/index.js.map +0 -1
- package/src/lib/common/storage/storage.js +0 -55
- package/src/lib/common/storage/storage.js.map +0 -1
- package/src/lib/common/storage/types.js +0 -3
- package/src/lib/common/storage/types.js.map +0 -1
- package/src/lib/index.js +0 -7
- package/src/lib/index.js.map +0 -1
- package/src/lib/model/index.js +0 -6
- package/src/lib/model/index.js.map +0 -1
- package/src/lib/model/system/index.js +0 -6
- package/src/lib/model/system/index.js.map +0 -1
- package/src/lib/model/system/system.action.js +0 -3
- package/src/lib/model/system/system.action.js.map +0 -1
- package/src/lib/model/system/system.js +0 -56
- package/src/lib/model/system/system.js.map +0 -1
- package/src/lib/model/user.js +0 -3
- package/src/lib/model/user.js.map +0 -1
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"driver.js","sourceRoot":"","sources":["../../../../../../../../packages/firebase/src/lib/common/firestore/driver/driver.ts"],"names":[],"mappings":""}
|
|
@@ -1,10 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
const tslib_1 = require("tslib");
|
|
4
|
-
tslib_1.__exportStar(require("./driver"), exports);
|
|
5
|
-
tslib_1.__exportStar(require("./transaction"), exports);
|
|
6
|
-
tslib_1.__exportStar(require("./batch"), exports);
|
|
7
|
-
tslib_1.__exportStar(require("./query"), exports);
|
|
8
|
-
tslib_1.__exportStar(require("./query.handler"), exports);
|
|
9
|
-
tslib_1.__exportStar(require("./accessor"), exports);
|
|
10
|
-
//# sourceMappingURL=index.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../../../../packages/firebase/src/lib/common/firestore/driver/index.ts"],"names":[],"mappings":";;;AAAA,mDAAyB;AACzB,wDAA8B;AAC9B,kDAAwB;AACxB,kDAAwB;AACxB,0DAAgC;AAChC,qDAA2B"}
|
|
@@ -1,27 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.makeFirestoreQueryConstraintFunctionsDriver = void 0;
|
|
4
|
-
const util_1 = require("@dereekb/util");
|
|
5
|
-
function makeFirestoreQueryConstraintFunctionsDriver(config) {
|
|
6
|
-
const { mapping, init, build, documentIdFieldPath } = config;
|
|
7
|
-
const constraintsMap = (0, util_1.objectToMap)(mapping);
|
|
8
|
-
const availableConstraintTypes = new Set(constraintsMap.keys());
|
|
9
|
-
const query = (query, ...queryConstraints) => {
|
|
10
|
-
let builder = init(query);
|
|
11
|
-
queryConstraints.forEach((x) => {
|
|
12
|
-
const handler = constraintsMap.get(x.type);
|
|
13
|
-
if (!handler) {
|
|
14
|
-
throw new Error(`The current driver does not support the query constraint with type "${x.type}".`);
|
|
15
|
-
}
|
|
16
|
-
builder = handler(builder, x.data, x);
|
|
17
|
-
});
|
|
18
|
-
return build(builder);
|
|
19
|
-
};
|
|
20
|
-
return {
|
|
21
|
-
availableConstraintTypes,
|
|
22
|
-
query,
|
|
23
|
-
documentIdFieldPath
|
|
24
|
-
};
|
|
25
|
-
}
|
|
26
|
-
exports.makeFirestoreQueryConstraintFunctionsDriver = makeFirestoreQueryConstraintFunctionsDriver;
|
|
27
|
-
//# sourceMappingURL=query.handler.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"query.handler.js","sourceRoot":"","sources":["../../../../../../../../packages/firebase/src/lib/common/firestore/driver/query.handler.ts"],"names":[],"mappings":";;;AAAA,wCAA4C;AAW5C,SAAgB,2CAA2C,CAAI,MAAsD;IACnH,MAAM,EAAE,OAAO,EAAE,IAAI,EAAE,KAAK,EAAE,mBAAmB,EAAE,GAAG,MAAM,CAAC;IAC7D,MAAM,cAAc,GAAG,IAAA,kBAAW,EAAC,OAAO,CAAC,CAAC;IAC5C,MAAM,wBAAwB,GAAgB,IAAI,GAAG,CAAC,cAAc,CAAC,IAAI,EAAE,CAAC,CAAC;IAC7E,MAAM,KAAK,GAAsC,CAAI,KAAe,EAAE,GAAG,gBAA4C,EAAE,EAAE;QACvH,IAAI,OAAO,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC;QAE1B,gBAAgB,CAAC,OAAO,CAAC,CAAC,CAA2B,EAAE,EAAE;YACvD,MAAM,OAAO,GAAG,cAAc,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;YAE3C,IAAI,CAAC,OAAO,EAAE;gBACZ,MAAM,IAAI,KAAK,CAAC,uEAAuE,CAAC,CAAC,IAAI,IAAI,CAAC,CAAC;aACpG;YAED,OAAO,GAAG,OAAO,CAAC,OAAO,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC;QACxC,CAAC,CAAC,CAAC;QAEH,OAAO,KAAK,CAAC,OAAO,CAAC,CAAC;IACxB,CAAC,CAAC;IAEF,OAAO;QACL,wBAAwB;QACxB,KAAK;QACL,mBAAmB;KACpB,CAAC;AACJ,CAAC;AAzBD,kGAyBC"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"query.js","sourceRoot":"","sources":["../../../../../../../../packages/firebase/src/lib/common/firestore/driver/query.ts"],"names":[],"mappings":""}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"transaction.js","sourceRoot":"","sources":["../../../../../../../../packages/firebase/src/lib/common/firestore/driver/transaction.ts"],"names":[],"mappings":""}
|
|
@@ -1,29 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.firestoreUpdateWithNoDataError = exports.assertFirestoreUpdateHasData = exports.unsupportedFirestoreDriverFunctionError = void 0;
|
|
4
|
-
const util_1 = require("@dereekb/util");
|
|
5
|
-
function unsupportedFirestoreDriverFunctionError(message) {
|
|
6
|
-
throw new Error(message !== null && message !== void 0 ? message : 'This function is not supported by this Firestore driver.');
|
|
7
|
-
}
|
|
8
|
-
exports.unsupportedFirestoreDriverFunctionError = unsupportedFirestoreDriverFunctionError;
|
|
9
|
-
/**
|
|
10
|
-
* Asserts that the input data is not an empty object and has keys.
|
|
11
|
-
*
|
|
12
|
-
* Used to help bring pairity to update(), as google-cloud/firestore will throw an error if the input data has no keys defined.
|
|
13
|
-
*
|
|
14
|
-
* @param data
|
|
15
|
-
*/
|
|
16
|
-
function assertFirestoreUpdateHasData(data) {
|
|
17
|
-
if ((0, util_1.objectHasNoKeys)(data)) {
|
|
18
|
-
throw firestoreUpdateWithNoDataError();
|
|
19
|
-
}
|
|
20
|
-
}
|
|
21
|
-
exports.assertFirestoreUpdateHasData = assertFirestoreUpdateHasData;
|
|
22
|
-
/**
|
|
23
|
-
* Throws an error related to an empty object being passed to a FirestoreDocumentDataAccessor's update() function.
|
|
24
|
-
*/
|
|
25
|
-
function firestoreUpdateWithNoDataError() {
|
|
26
|
-
throw new Error('No data or an empty object was passed to update().');
|
|
27
|
-
}
|
|
28
|
-
exports.firestoreUpdateWithNoDataError = firestoreUpdateWithNoDataError;
|
|
29
|
-
//# sourceMappingURL=error.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"error.js","sourceRoot":"","sources":["../../../../../../../packages/firebase/src/lib/common/firestore/error.ts"],"names":[],"mappings":";;;AAAA,wCAAgD;AAGhD,SAAgB,uCAAuC,CAAC,OAAgB;IACtE,MAAM,IAAI,KAAK,CAAC,OAAO,aAAP,OAAO,cAAP,OAAO,GAAI,0DAA0D,CAAC,CAAC;AACzF,CAAC;AAFD,0FAEC;AAED;;;;;;GAMG;AACH,SAAgB,4BAA4B,CAAC,IAAwB;IACnE,IAAI,IAAA,sBAAe,EAAC,IAAI,CAAC,EAAE;QACzB,MAAM,8BAA8B,EAAE,CAAC;KACxC;AACH,CAAC;AAJD,oEAIC;AAED;;GAEG;AACH,SAAgB,8BAA8B;IAC5C,MAAM,IAAI,KAAK,CAAC,oDAAoD,CAAC,CAAC;AACxE,CAAC;AAFD,wEAEC"}
|
|
@@ -1,14 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
const tslib_1 = require("tslib");
|
|
4
|
-
tslib_1.__exportStar(require("./accessor"), exports);
|
|
5
|
-
tslib_1.__exportStar(require("./snapshot"), exports);
|
|
6
|
-
tslib_1.__exportStar(require("./error"), exports);
|
|
7
|
-
tslib_1.__exportStar(require("./query"), exports);
|
|
8
|
-
tslib_1.__exportStar(require("./context"), exports);
|
|
9
|
-
tslib_1.__exportStar(require("./driver"), exports);
|
|
10
|
-
tslib_1.__exportStar(require("./collection"), exports);
|
|
11
|
-
tslib_1.__exportStar(require("./types"), exports);
|
|
12
|
-
tslib_1.__exportStar(require("./reference"), exports);
|
|
13
|
-
tslib_1.__exportStar(require("./util"), exports);
|
|
14
|
-
//# sourceMappingURL=index.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../../../packages/firebase/src/lib/common/firestore/index.ts"],"names":[],"mappings":";;;AAAA,qDAA2B;AAC3B,qDAA2B;AAC3B,kDAAwB;AACxB,kDAAwB;AACxB,oDAA0B;AAC1B,mDAAyB;AACzB,uDAA6B;AAC7B,kDAAwB;AACxB,sDAA4B;AAC5B,iDAAuB"}
|
|
@@ -1,24 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.firebaseQueryItemAccumulator = exports.firebaseQuerySnapshotAccumulator = void 0;
|
|
4
|
-
const rxjs_1 = require("@dereekb/rxjs");
|
|
5
|
-
const util_1 = require("@dereekb/util");
|
|
6
|
-
const accessor_1 = require("../accessor");
|
|
7
|
-
function firebaseQuerySnapshotAccumulator(iteration, mapSnapshots) {
|
|
8
|
-
return (0, rxjs_1.itemAccumulator)(iteration, mapSnapshots);
|
|
9
|
-
}
|
|
10
|
-
exports.firebaseQuerySnapshotAccumulator = firebaseQuerySnapshotAccumulator;
|
|
11
|
-
function firebaseQueryItemAccumulator(iteration, mapItem) {
|
|
12
|
-
mapItem = mapItem !== null && mapItem !== void 0 ? mapItem : ((x) => x);
|
|
13
|
-
const snapshotData = (0, accessor_1.documentDataFunction)(true);
|
|
14
|
-
const mapFn = (x) => {
|
|
15
|
-
const result = (0, util_1.filterMaybeValues)(x.map((y) => {
|
|
16
|
-
const data = snapshotData(y);
|
|
17
|
-
return data ? mapItem(data) : undefined;
|
|
18
|
-
}));
|
|
19
|
-
return result;
|
|
20
|
-
};
|
|
21
|
-
return firebaseQuerySnapshotAccumulator(iteration, mapFn);
|
|
22
|
-
}
|
|
23
|
-
exports.firebaseQueryItemAccumulator = firebaseQueryItemAccumulator;
|
|
24
|
-
//# sourceMappingURL=accumulator.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"accumulator.js","sourceRoot":"","sources":["../../../../../../../../packages/firebase/src/lib/common/firestore/query/accumulator.ts"],"names":[],"mappings":";;;AAAA,wCAAwH;AACxH,wCAA+D;AAC/D,0CAAmD;AAmBnD,SAAgB,gCAAgC,CAAO,SAAgD,EAAE,YAA2E;IAClL,OAAO,IAAA,sBAAe,EAAqF,SAAS,EAAE,YAAY,CAAC,CAAC;AACtI,CAAC;AAFD,4EAEC;AAUD,SAAgB,4BAA4B,CAAO,SAAgD,EAAE,OAAqD;IACxJ,OAAO,GAAG,OAAO,aAAP,OAAO,cAAP,OAAO,GAAK,CAAC,CAAC,CAA8B,EAAE,EAAE,CAAC,CAAC,CAA4D,CAAC;IAEzH,MAAM,YAAY,GAAG,IAAA,+BAAoB,EAAI,IAAI,CAAC,CAAC;IACnD,MAAM,KAAK,GAAmE,CAAC,CAAgC,EAAE,EAAE;QACjH,MAAM,MAAM,GAAQ,IAAA,wBAAiB,EACnC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE;YACV,MAAM,IAAI,GAAG,YAAY,CAAC,CAAC,CAAC,CAAC;YAC7B,OAAO,IAAI,CAAC,CAAC,CAAE,OAAuD,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;QAC3F,CAAC,CAAC,CACH,CAAC;QAEF,OAAO,MAAM,CAAC;IAChB,CAAC,CAAC;IAEF,OAAO,gCAAgC,CAAC,SAAS,EAAE,KAAK,CAAC,CAAC;AAC5D,CAAC;AAhBD,oEAgBC"}
|
|
@@ -1,176 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.separateConstraints = exports.replaceConstraints = exports.filterConstraintsOfType = exports.addOrReplaceLimitInConstraints = exports.endBefore = exports.FIRESTORE_END_BEFORE_QUERY_CONSTRAINT_TYPE = exports.endAt = exports.endAtValue = exports.FIRESTORE_END_AT_VALUE_QUERY_CONSTRAINT_TYPE = exports.FIRESTORE_END_AT_QUERY_CONSTRAINT_TYPE = exports.startAfter = exports.FIRESTORE_START_AFTER_QUERY_CONSTRAINT_TYPE = exports.startAtValue = exports.FIRESTORE_START_AT_VALUE_QUERY_CONSTRAINT_TYPE = exports.startAt = exports.FIRESTORE_START_AT_QUERY_CONSTRAINT_TYPE = exports.orderByDocumentId = exports.FIRESTORE_ORDER_BY_DOCUMENT_ID_QUERY_CONSTRAINT_TYPE = exports.orderBy = exports.FIRESTORE_ORDER_BY_QUERY_CONSTRAINT_TYPE = exports.whereDocumentId = exports.FIRESTORE_WHERE_DOCUMENT_ID_QUERY_CONSTRAINT_TYPE = exports.where = exports.FIRESTORE_MAX_WHERE_IN_FILTER_ARGS_COUNT = exports.FIRESTORE_WHERE_QUERY_CONSTRAINT_TYPE = exports.offset = exports.FIRESTORE_OFFSET_QUERY_CONSTRAINT_TYPE = exports.limitToLast = exports.FIRESTORE_LIMIT_TO_LAST_QUERY_CONSTRAINT_TYPE = exports.limit = exports.FIRESTORE_LIMIT_QUERY_CONSTRAINT_TYPE = exports.firestoreQueryConstraintFactory = exports.firestoreQueryConstraint = void 0;
|
|
4
|
-
const util_1 = require("@dereekb/util");
|
|
5
|
-
function firestoreQueryConstraint(type, data) {
|
|
6
|
-
return {
|
|
7
|
-
type,
|
|
8
|
-
data
|
|
9
|
-
};
|
|
10
|
-
}
|
|
11
|
-
exports.firestoreQueryConstraint = firestoreQueryConstraint;
|
|
12
|
-
function firestoreQueryConstraintFactory(type) {
|
|
13
|
-
return (data) => firestoreQueryConstraint(type, data);
|
|
14
|
-
}
|
|
15
|
-
exports.firestoreQueryConstraintFactory = firestoreQueryConstraintFactory;
|
|
16
|
-
// MARK: Limit
|
|
17
|
-
exports.FIRESTORE_LIMIT_QUERY_CONSTRAINT_TYPE = 'limit';
|
|
18
|
-
/**
|
|
19
|
-
* Limits the maximum number of documents to return.
|
|
20
|
-
*
|
|
21
|
-
* @param limit
|
|
22
|
-
* @returns
|
|
23
|
-
*/
|
|
24
|
-
function limit(limit) {
|
|
25
|
-
return firestoreQueryConstraint(exports.FIRESTORE_LIMIT_QUERY_CONSTRAINT_TYPE, { limit });
|
|
26
|
-
}
|
|
27
|
-
exports.limit = limit;
|
|
28
|
-
// MARK: Limit To Last
|
|
29
|
-
exports.FIRESTORE_LIMIT_TO_LAST_QUERY_CONSTRAINT_TYPE = 'limit_to_last';
|
|
30
|
-
/**
|
|
31
|
-
* Returns the last matching documents in the query, up to the limit.
|
|
32
|
-
*
|
|
33
|
-
* Does not work with queries with streamed results.
|
|
34
|
-
*/
|
|
35
|
-
function limitToLast(limit) {
|
|
36
|
-
return firestoreQueryConstraint(exports.FIRESTORE_LIMIT_TO_LAST_QUERY_CONSTRAINT_TYPE, { limit });
|
|
37
|
-
}
|
|
38
|
-
exports.limitToLast = limitToLast;
|
|
39
|
-
// MARK: Offset
|
|
40
|
-
exports.FIRESTORE_OFFSET_QUERY_CONSTRAINT_TYPE = 'offset';
|
|
41
|
-
function offset(offset) {
|
|
42
|
-
return firestoreQueryConstraint(exports.FIRESTORE_OFFSET_QUERY_CONSTRAINT_TYPE, { offset });
|
|
43
|
-
}
|
|
44
|
-
exports.offset = offset;
|
|
45
|
-
// MARK: Where
|
|
46
|
-
exports.FIRESTORE_WHERE_QUERY_CONSTRAINT_TYPE = 'where';
|
|
47
|
-
/**
|
|
48
|
-
* Maximum number of arguments allowed with the "in" and "array-contains"/"array-contains-any" operators.
|
|
49
|
-
*/
|
|
50
|
-
exports.FIRESTORE_MAX_WHERE_IN_FILTER_ARGS_COUNT = 10;
|
|
51
|
-
function where(fieldPath, opStr, value) {
|
|
52
|
-
switch (opStr) {
|
|
53
|
-
case 'array-contains':
|
|
54
|
-
if (Array.isArray(value)) {
|
|
55
|
-
throw new Error('array-contains does not accept array values. Did you mean "array-contains-any"?');
|
|
56
|
-
}
|
|
57
|
-
break;
|
|
58
|
-
case 'in':
|
|
59
|
-
case 'array-contains-any':
|
|
60
|
-
if (value == null) {
|
|
61
|
-
throw new Error(`"${opStr}" requires a non-null value.`);
|
|
62
|
-
}
|
|
63
|
-
// ensure the value is passed as an array.
|
|
64
|
-
value = (0, util_1.convertToArray)(value);
|
|
65
|
-
break;
|
|
66
|
-
}
|
|
67
|
-
return firestoreQueryConstraint(exports.FIRESTORE_WHERE_QUERY_CONSTRAINT_TYPE, { fieldPath: fieldPath, opStr, value });
|
|
68
|
-
}
|
|
69
|
-
exports.where = where;
|
|
70
|
-
// MARK: WhereDocumentId
|
|
71
|
-
exports.FIRESTORE_WHERE_DOCUMENT_ID_QUERY_CONSTRAINT_TYPE = 'where_doc_id';
|
|
72
|
-
function whereDocumentId(opStr, value) {
|
|
73
|
-
return firestoreQueryConstraint(exports.FIRESTORE_WHERE_DOCUMENT_ID_QUERY_CONSTRAINT_TYPE, { opStr, value });
|
|
74
|
-
}
|
|
75
|
-
exports.whereDocumentId = whereDocumentId;
|
|
76
|
-
// MARK: OrderBy
|
|
77
|
-
exports.FIRESTORE_ORDER_BY_QUERY_CONSTRAINT_TYPE = 'order_by';
|
|
78
|
-
function orderBy(fieldPath, directionStr) {
|
|
79
|
-
return firestoreQueryConstraint(exports.FIRESTORE_ORDER_BY_QUERY_CONSTRAINT_TYPE, { fieldPath: fieldPath, directionStr });
|
|
80
|
-
}
|
|
81
|
-
exports.orderBy = orderBy;
|
|
82
|
-
// MARK: OrderByDocumentId
|
|
83
|
-
exports.FIRESTORE_ORDER_BY_DOCUMENT_ID_QUERY_CONSTRAINT_TYPE = 'order_by_doc_id';
|
|
84
|
-
function orderByDocumentId(directionStr) {
|
|
85
|
-
return firestoreQueryConstraint(exports.FIRESTORE_ORDER_BY_DOCUMENT_ID_QUERY_CONSTRAINT_TYPE, { directionStr });
|
|
86
|
-
}
|
|
87
|
-
exports.orderByDocumentId = orderByDocumentId;
|
|
88
|
-
// MARK: Start At
|
|
89
|
-
exports.FIRESTORE_START_AT_QUERY_CONSTRAINT_TYPE = 'start_at';
|
|
90
|
-
function startAt(snapshot) {
|
|
91
|
-
return firestoreQueryConstraint(exports.FIRESTORE_START_AT_QUERY_CONSTRAINT_TYPE, { snapshot });
|
|
92
|
-
}
|
|
93
|
-
exports.startAt = startAt;
|
|
94
|
-
// MARK: Start At Value
|
|
95
|
-
exports.FIRESTORE_START_AT_VALUE_QUERY_CONSTRAINT_TYPE = 'start_at_path';
|
|
96
|
-
function startAtValue(...fieldValues) {
|
|
97
|
-
return firestoreQueryConstraint(exports.FIRESTORE_START_AT_VALUE_QUERY_CONSTRAINT_TYPE, { fieldValues });
|
|
98
|
-
}
|
|
99
|
-
exports.startAtValue = startAtValue;
|
|
100
|
-
// MARK: Start After
|
|
101
|
-
exports.FIRESTORE_START_AFTER_QUERY_CONSTRAINT_TYPE = 'start_after';
|
|
102
|
-
function startAfter(snapshot) {
|
|
103
|
-
return firestoreQueryConstraint(exports.FIRESTORE_START_AFTER_QUERY_CONSTRAINT_TYPE, { snapshot });
|
|
104
|
-
}
|
|
105
|
-
exports.startAfter = startAfter;
|
|
106
|
-
// MARK: End At
|
|
107
|
-
exports.FIRESTORE_END_AT_QUERY_CONSTRAINT_TYPE = 'end_at';
|
|
108
|
-
// MARK: End At Value
|
|
109
|
-
exports.FIRESTORE_END_AT_VALUE_QUERY_CONSTRAINT_TYPE = 'end_at_path';
|
|
110
|
-
function endAtValue(...fieldValues) {
|
|
111
|
-
return firestoreQueryConstraint(exports.FIRESTORE_END_AT_VALUE_QUERY_CONSTRAINT_TYPE, { fieldValues });
|
|
112
|
-
}
|
|
113
|
-
exports.endAtValue = endAtValue;
|
|
114
|
-
/**
|
|
115
|
-
*
|
|
116
|
-
* @param snapshot
|
|
117
|
-
* @returns
|
|
118
|
-
*/
|
|
119
|
-
function endAt(snapshot) {
|
|
120
|
-
return firestoreQueryConstraint(exports.FIRESTORE_END_AT_QUERY_CONSTRAINT_TYPE, { snapshot });
|
|
121
|
-
}
|
|
122
|
-
exports.endAt = endAt;
|
|
123
|
-
// MARK: End Before
|
|
124
|
-
exports.FIRESTORE_END_BEFORE_QUERY_CONSTRAINT_TYPE = 'end_before';
|
|
125
|
-
/**
|
|
126
|
-
*
|
|
127
|
-
* @param snapshot
|
|
128
|
-
* @returns
|
|
129
|
-
*/
|
|
130
|
-
function endBefore(snapshot) {
|
|
131
|
-
return firestoreQueryConstraint(exports.FIRESTORE_END_BEFORE_QUERY_CONSTRAINT_TYPE, { snapshot });
|
|
132
|
-
}
|
|
133
|
-
exports.endBefore = endBefore;
|
|
134
|
-
// MARK: Utils
|
|
135
|
-
function addOrReplaceLimitInConstraints(limit, addedLimitType = exports.FIRESTORE_LIMIT_QUERY_CONSTRAINT_TYPE) {
|
|
136
|
-
const replace = replaceConstraints((constraints) => {
|
|
137
|
-
let type;
|
|
138
|
-
if (constraints.length) {
|
|
139
|
-
type = constraints[0].type;
|
|
140
|
-
}
|
|
141
|
-
else {
|
|
142
|
-
type = addedLimitType;
|
|
143
|
-
}
|
|
144
|
-
return {
|
|
145
|
-
type,
|
|
146
|
-
data: {
|
|
147
|
-
limit
|
|
148
|
-
}
|
|
149
|
-
};
|
|
150
|
-
}, [exports.FIRESTORE_LIMIT_QUERY_CONSTRAINT_TYPE, exports.FIRESTORE_LIMIT_TO_LAST_QUERY_CONSTRAINT_TYPE]);
|
|
151
|
-
return replace;
|
|
152
|
-
}
|
|
153
|
-
exports.addOrReplaceLimitInConstraints = addOrReplaceLimitInConstraints;
|
|
154
|
-
function filterConstraintsOfType(...types) {
|
|
155
|
-
const typesToFilterOut = new Set(types);
|
|
156
|
-
return (constraints) => constraints.filter((x) => !typesToFilterOut.has(x.type));
|
|
157
|
-
}
|
|
158
|
-
exports.filterConstraintsOfType = filterConstraintsOfType;
|
|
159
|
-
function replaceConstraints(replaceFn, types) {
|
|
160
|
-
const separateFn = separateConstraints(...types);
|
|
161
|
-
return (constraints) => {
|
|
162
|
-
const separated = separateFn(constraints);
|
|
163
|
-
const replacements = (0, util_1.asArray)(replaceFn(separated.excluded));
|
|
164
|
-
return replacements ? (0, util_1.pushItemOrArrayItemsIntoArray)(separated.included, replacements) : separated.included;
|
|
165
|
-
};
|
|
166
|
-
}
|
|
167
|
-
exports.replaceConstraints = replaceConstraints;
|
|
168
|
-
function separateConstraints(...types) {
|
|
169
|
-
return (constraints) => {
|
|
170
|
-
const typesToFilterOut = new Set(types);
|
|
171
|
-
const separated = (0, util_1.separateValues)(constraints, (x) => !typesToFilterOut.has(x.type));
|
|
172
|
-
return separated;
|
|
173
|
-
};
|
|
174
|
-
}
|
|
175
|
-
exports.separateConstraints = separateConstraints;
|
|
176
|
-
//# sourceMappingURL=constraint.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"constraint.js","sourceRoot":"","sources":["../../../../../../../../packages/firebase/src/lib/common/firestore/query/constraint.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,75 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.whereDateIsBeforeWithSort = exports.whereDateIsBefore = exports.whereDateIsOnOrAfterWithSort = exports.whereDateIsOnOrAfter = exports.whereDateIsBetween = exports.whereDateIsInRange = exports.whereStringValueHasPrefix = exports.whereStringHasRootIdentityModelKey = exports.allChildDocumentsUnderRelativePath = exports.allChildDocumentsUnderParentPath = exports.allChildDocumentsUnderParent = void 0;
|
|
4
|
-
const date_1 = require("@dereekb/date");
|
|
5
|
-
const util_1 = require("@dereekb/util");
|
|
6
|
-
const constraint_1 = require("./constraint");
|
|
7
|
-
// MARK: Parents
|
|
8
|
-
/**
|
|
9
|
-
* Use with a CollectionGroup query to return all child documents that are under a given parent.
|
|
10
|
-
*
|
|
11
|
-
* @param parentRef U
|
|
12
|
-
* @returns
|
|
13
|
-
*/
|
|
14
|
-
function allChildDocumentsUnderParent(parentRef) {
|
|
15
|
-
return allChildDocumentsUnderParentPath(parentRef.path);
|
|
16
|
-
}
|
|
17
|
-
exports.allChildDocumentsUnderParent = allChildDocumentsUnderParent;
|
|
18
|
-
/**
|
|
19
|
-
* Use with a CollectionGroup query to return all child documents that have a given path.
|
|
20
|
-
*
|
|
21
|
-
* @param parentPath
|
|
22
|
-
* @returns
|
|
23
|
-
*/
|
|
24
|
-
function allChildDocumentsUnderParentPath(parentPath) {
|
|
25
|
-
// https://medium.com/firebase-developers/how-to-query-collections-in-firestore-under-a-certain-path-6a0d686cebd2
|
|
26
|
-
// https://medium.com/firelayer/save-money-on-the-list-query-in-firestore-26ef9bee5474 for restricting
|
|
27
|
-
return [(0, constraint_1.orderByDocumentId)(), (0, constraint_1.startAtValue)(parentPath), (0, constraint_1.endAtValue)(parentPath + util_1.UTF_8_START_CHARACTER)];
|
|
28
|
-
}
|
|
29
|
-
exports.allChildDocumentsUnderParentPath = allChildDocumentsUnderParentPath;
|
|
30
|
-
function allChildDocumentsUnderRelativePath(orderByFieldPath, parentValue, sortDirection) {
|
|
31
|
-
return [(0, constraint_1.orderBy)(orderByFieldPath, sortDirection), (0, constraint_1.startAtValue)(parentValue), (0, constraint_1.endAtValue)(parentValue + util_1.UTF_PRIVATE_USAGE_AREA_START)];
|
|
32
|
-
}
|
|
33
|
-
exports.allChildDocumentsUnderRelativePath = allChildDocumentsUnderRelativePath;
|
|
34
|
-
/**
|
|
35
|
-
* Searches a specified field for string values that start with a model key's collection type.
|
|
36
|
-
*
|
|
37
|
-
* @param orderByFieldPath
|
|
38
|
-
* @param parentValue
|
|
39
|
-
* @param sortDirection
|
|
40
|
-
*/
|
|
41
|
-
function whereStringHasRootIdentityModelKey(orderByFieldPath, value, sortDirection) {
|
|
42
|
-
return whereStringValueHasPrefix(orderByFieldPath, `${value.collectionType}/`, sortDirection);
|
|
43
|
-
}
|
|
44
|
-
exports.whereStringHasRootIdentityModelKey = whereStringHasRootIdentityModelKey;
|
|
45
|
-
function whereStringValueHasPrefix(orderByFieldPath, value, sortDirection) {
|
|
46
|
-
return [(0, constraint_1.orderBy)(orderByFieldPath, sortDirection), (0, constraint_1.startAtValue)(value), (0, constraint_1.endAtValue)(value + util_1.UTF_PRIVATE_USAGE_AREA_START)];
|
|
47
|
-
}
|
|
48
|
-
exports.whereStringValueHasPrefix = whereStringValueHasPrefix;
|
|
49
|
-
function whereDateIsInRange(fieldPath, rangeInput, sortDirection) {
|
|
50
|
-
const range = (0, date_1.dateRange)(rangeInput);
|
|
51
|
-
return whereDateIsBetween(fieldPath, range, sortDirection);
|
|
52
|
-
}
|
|
53
|
-
exports.whereDateIsInRange = whereDateIsInRange;
|
|
54
|
-
function whereDateIsBetween(fieldPath, range, sortDirection) {
|
|
55
|
-
const { start, end } = range;
|
|
56
|
-
return [(0, constraint_1.orderBy)(fieldPath, sortDirection !== null && sortDirection !== void 0 ? sortDirection : 'asc'), (0, constraint_1.where)(fieldPath, '>=', start.toISOString()), (0, constraint_1.where)(fieldPath, '<', end.toISOString())];
|
|
57
|
-
}
|
|
58
|
-
exports.whereDateIsBetween = whereDateIsBetween;
|
|
59
|
-
function whereDateIsOnOrAfter(fieldPath, date = new Date()) {
|
|
60
|
-
return (0, constraint_1.where)(fieldPath, '>=', date.toISOString());
|
|
61
|
-
}
|
|
62
|
-
exports.whereDateIsOnOrAfter = whereDateIsOnOrAfter;
|
|
63
|
-
function whereDateIsOnOrAfterWithSort(fieldPath, date = new Date(), sortDirection) {
|
|
64
|
-
return [(0, constraint_1.orderBy)(fieldPath, sortDirection !== null && sortDirection !== void 0 ? sortDirection : 'asc'), whereDateIsOnOrAfter(fieldPath, date)];
|
|
65
|
-
}
|
|
66
|
-
exports.whereDateIsOnOrAfterWithSort = whereDateIsOnOrAfterWithSort;
|
|
67
|
-
function whereDateIsBefore(fieldPath, date = new Date()) {
|
|
68
|
-
return (0, constraint_1.where)(fieldPath, '<', date.toISOString());
|
|
69
|
-
}
|
|
70
|
-
exports.whereDateIsBefore = whereDateIsBefore;
|
|
71
|
-
function whereDateIsBeforeWithSort(fieldPath, date = new Date(), sortDirection) {
|
|
72
|
-
return [(0, constraint_1.orderBy)(fieldPath, sortDirection !== null && sortDirection !== void 0 ? sortDirection : 'desc'), whereDateIsBefore(fieldPath, date)];
|
|
73
|
-
}
|
|
74
|
-
exports.whereDateIsBeforeWithSort = whereDateIsBeforeWithSort;
|
|
75
|
-
//# sourceMappingURL=constraint.template.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"constraint.template.js","sourceRoot":"","sources":["../../../../../../../../packages/firebase/src/lib/common/firestore/query/constraint.template.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,12 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
const tslib_1 = require("tslib");
|
|
4
|
-
tslib_1.__exportStar(require("./accumulator"), exports);
|
|
5
|
-
tslib_1.__exportStar(require("./constraint"), exports);
|
|
6
|
-
tslib_1.__exportStar(require("./constraint.template"), exports);
|
|
7
|
-
tslib_1.__exportStar(require("./iterator"), exports);
|
|
8
|
-
tslib_1.__exportStar(require("./query"), exports);
|
|
9
|
-
tslib_1.__exportStar(require("./query.iterate"), exports);
|
|
10
|
-
tslib_1.__exportStar(require("./query.util"), exports);
|
|
11
|
-
tslib_1.__exportStar(require("./watcher"), exports);
|
|
12
|
-
//# sourceMappingURL=index.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../../../../packages/firebase/src/lib/common/firestore/query/index.ts"],"names":[],"mappings":";;;AAAA,wDAA8B;AAC9B,uDAA6B;AAC7B,gEAAsC;AACtC,qDAA2B;AAC3B,kDAAwB;AACxB,0DAAgC;AAChC,uDAA6B;AAC7B,oDAA0B"}
|
|
@@ -1,110 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.firestoreItemPageIteration = exports.FIRESTORE_ITEM_PAGE_ITERATOR = exports.FIRESTORE_ITEM_PAGE_ITERATOR_DELEGATE = exports.firestoreItemPageIterationFactory = exports.FirestoreItemPageIterationInstance = exports.makeFirestoreItemPageIteratorDelegate = exports.DEFAULT_FIRESTORE_ITEM_PAGE_ITERATOR_ITEMS_PER_PAGE = exports.filterDisallowedFirestoreItemPageIteratorInputContraints = void 0;
|
|
4
|
-
const rxjs_1 = require("@dereekb/rxjs");
|
|
5
|
-
const util_1 = require("@dereekb/util");
|
|
6
|
-
const rxjs_2 = require("rxjs");
|
|
7
|
-
const constraint_1 = require("./constraint");
|
|
8
|
-
function filterDisallowedFirestoreItemPageIteratorInputContraints(constraints) {
|
|
9
|
-
const isIllegal = new Set([constraint_1.FIRESTORE_LIMIT_QUERY_CONSTRAINT_TYPE]);
|
|
10
|
-
return constraints.filter((x) => !isIllegal.has(x.type));
|
|
11
|
-
}
|
|
12
|
-
exports.filterDisallowedFirestoreItemPageIteratorInputContraints = filterDisallowedFirestoreItemPageIteratorInputContraints;
|
|
13
|
-
exports.DEFAULT_FIRESTORE_ITEM_PAGE_ITERATOR_ITEMS_PER_PAGE = 50;
|
|
14
|
-
function makeFirestoreItemPageIteratorDelegate() {
|
|
15
|
-
return {
|
|
16
|
-
loadItemsForPage: (request) => {
|
|
17
|
-
const { page, iteratorConfig } = request;
|
|
18
|
-
const prevQueryResult$ = page > 0 ? request.lastItem$ : (0, rxjs_2.of)(undefined);
|
|
19
|
-
const { queryLike, itemsPerPage = exports.DEFAULT_FIRESTORE_ITEM_PAGE_ITERATOR_ITEMS_PER_PAGE, filter, firestoreQueryDriver: driver } = iteratorConfig;
|
|
20
|
-
const { limit: filterLimit, constraints: filterConstraints } = filter !== null && filter !== void 0 ? filter : {};
|
|
21
|
-
return prevQueryResult$.pipe((0, rxjs_2.exhaustMap)((prevResult) => {
|
|
22
|
-
if ((prevResult === null || prevResult === void 0 ? void 0 : prevResult.snapshot.empty) === true) {
|
|
23
|
-
// TODO: Shouldn't happen. Remove this later.
|
|
24
|
-
return (0, rxjs_2.of)({ end: true });
|
|
25
|
-
}
|
|
26
|
-
else {
|
|
27
|
-
const constraints = [];
|
|
28
|
-
// Add filter constraints
|
|
29
|
-
if (filterConstraints != null) {
|
|
30
|
-
(0, util_1.mergeArraysIntoArray)(constraints, filterDisallowedFirestoreItemPageIteratorInputContraints((0, util_1.asArray)(filterConstraints)));
|
|
31
|
-
}
|
|
32
|
-
// Add cursor
|
|
33
|
-
const cursorDocument = prevResult ? (0, util_1.lastValue)(prevResult.docs) : undefined;
|
|
34
|
-
const startAfterFilter = cursorDocument ? (0, constraint_1.startAfter)(cursorDocument) : undefined;
|
|
35
|
-
if (startAfterFilter) {
|
|
36
|
-
constraints.push(startAfterFilter);
|
|
37
|
-
}
|
|
38
|
-
// Add Limit
|
|
39
|
-
const limitCount = filterLimit !== null && filterLimit !== void 0 ? filterLimit : itemsPerPage + (startAfterFilter ? 1 : 0); // todo: may not be needed.
|
|
40
|
-
const limitConstraint = (0, constraint_1.limit)(limitCount);
|
|
41
|
-
const constraintsWithLimit = [...constraints, limitConstraint];
|
|
42
|
-
// make query
|
|
43
|
-
const batchQuery = driver.query(queryLike, ...constraintsWithLimit);
|
|
44
|
-
const resultPromise = driver.getDocs(batchQuery).then((snapshot) => {
|
|
45
|
-
const time = new Date();
|
|
46
|
-
const docs = snapshot.docs;
|
|
47
|
-
const result = {
|
|
48
|
-
value: {
|
|
49
|
-
time,
|
|
50
|
-
docs,
|
|
51
|
-
snapshot,
|
|
52
|
-
reload() {
|
|
53
|
-
return driver.getDocs(batchQuery);
|
|
54
|
-
},
|
|
55
|
-
stream(options) {
|
|
56
|
-
// todo: consider allowing limit to be changed here to stream a subset. This will be useful for detecting collection changes.
|
|
57
|
-
return driver.streamDocs(batchQuery, options === null || options === void 0 ? void 0 : options.options);
|
|
58
|
-
}
|
|
59
|
-
},
|
|
60
|
-
end: snapshot.empty
|
|
61
|
-
};
|
|
62
|
-
return result;
|
|
63
|
-
});
|
|
64
|
-
return (0, rxjs_2.from)(resultPromise);
|
|
65
|
-
}
|
|
66
|
-
}));
|
|
67
|
-
}
|
|
68
|
-
};
|
|
69
|
-
}
|
|
70
|
-
exports.makeFirestoreItemPageIteratorDelegate = makeFirestoreItemPageIteratorDelegate;
|
|
71
|
-
class FirestoreItemPageIterationInstance extends rxjs_1.MappedPageItemIterationInstance {
|
|
72
|
-
constructor(snapshotIteration) {
|
|
73
|
-
super(snapshotIteration, {
|
|
74
|
-
forwardDestroy: true,
|
|
75
|
-
mapValue: (x) => x.docs
|
|
76
|
-
});
|
|
77
|
-
}
|
|
78
|
-
get snapshotIteration() {
|
|
79
|
-
return this.itemIterator;
|
|
80
|
-
}
|
|
81
|
-
}
|
|
82
|
-
exports.FirestoreItemPageIterationInstance = FirestoreItemPageIterationInstance;
|
|
83
|
-
/**
|
|
84
|
-
* Creates a new factory function that can build FirestoreItemPageIterationInstance values from just the input filter.
|
|
85
|
-
*
|
|
86
|
-
* @param baseConfig
|
|
87
|
-
* @returns FirestoreItemPageIterationInstance
|
|
88
|
-
*/
|
|
89
|
-
function firestoreItemPageIterationFactory(baseConfig) {
|
|
90
|
-
return (filter) => {
|
|
91
|
-
var _a;
|
|
92
|
-
const result = firestoreItemPageIteration({
|
|
93
|
-
queryLike: baseConfig.queryLike,
|
|
94
|
-
itemsPerPage: baseConfig.itemsPerPage,
|
|
95
|
-
firestoreQueryDriver: baseConfig.firestoreQueryDriver,
|
|
96
|
-
maxPageLoadLimit: (_a = filter === null || filter === void 0 ? void 0 : filter.maxPageLoadLimit) !== null && _a !== void 0 ? _a : baseConfig.maxPageLoadLimit,
|
|
97
|
-
filter
|
|
98
|
-
});
|
|
99
|
-
return result;
|
|
100
|
-
};
|
|
101
|
-
}
|
|
102
|
-
exports.firestoreItemPageIterationFactory = firestoreItemPageIterationFactory;
|
|
103
|
-
exports.FIRESTORE_ITEM_PAGE_ITERATOR_DELEGATE = makeFirestoreItemPageIteratorDelegate();
|
|
104
|
-
exports.FIRESTORE_ITEM_PAGE_ITERATOR = new rxjs_1.ItemPageIterator(exports.FIRESTORE_ITEM_PAGE_ITERATOR_DELEGATE);
|
|
105
|
-
function firestoreItemPageIteration(config) {
|
|
106
|
-
const iterator = exports.FIRESTORE_ITEM_PAGE_ITERATOR.instance(config);
|
|
107
|
-
return new FirestoreItemPageIterationInstance(iterator);
|
|
108
|
-
}
|
|
109
|
-
exports.firestoreItemPageIteration = firestoreItemPageIteration;
|
|
110
|
-
//# sourceMappingURL=iterator.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"iterator.js","sourceRoot":"","sources":["../../../../../../../../packages/firebase/src/lib/common/firestore/query/iterator.ts"],"names":[],"mappings":"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"}
|