@dereekb/firebase 8.13.1 → 8.13.4
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 +22 -0
- package/package.json +8 -9
- package/src/lib/client/firestore/driver.accessor.batch.js +1 -0
- package/src/lib/client/firestore/driver.accessor.batch.js.map +1 -1
- package/src/lib/client/firestore/driver.accessor.default.js +4 -4
- package/src/lib/client/firestore/driver.accessor.default.js.map +1 -1
- package/src/lib/client/firestore/driver.accessor.transaction.js +1 -0
- package/src/lib/client/firestore/driver.accessor.transaction.js.map +1 -1
- package/src/lib/common/firestore/accessor/accessor.d.ts +6 -4
- package/src/lib/common/firestore/accessor/accessor.js +5 -2
- package/src/lib/common/firestore/accessor/accessor.js.map +1 -1
- package/src/lib/common/firestore/accessor/accessor.wrap.modify.d.ts +8 -1
- package/src/lib/common/firestore/accessor/accessor.wrap.modify.js +19 -1
- package/src/lib/common/firestore/accessor/accessor.wrap.modify.js.map +1 -1
- package/src/lib/common/firestore/accessor/document.utility.d.ts +13 -8
- package/src/lib/common/firestore/accessor/document.utility.js +6 -2
- package/src/lib/common/firestore/accessor/document.utility.js.map +1 -1
- package/src/lib/common/firestore/error.d.ts +13 -0
- package/src/lib/common/firestore/error.js +22 -1
- package/src/lib/common/firestore/error.js.map +1 -1
- package/src/lib/common/firestore/query/constraint.d.ts +19 -5
- package/src/lib/common/firestore/query/constraint.js +16 -1
- package/src/lib/common/firestore/query/constraint.js.map +1 -1
- package/src/lib/common/firestore/query/constraint.template.d.ts +66 -3
- package/src/lib/common/firestore/query/constraint.template.js +28 -3
- package/src/lib/common/firestore/query/constraint.template.js.map +1 -1
- package/src/lib/common/firestore/snapshot/snapshot.field.d.ts +4 -2
- package/src/lib/common/firestore/snapshot/snapshot.field.js +6 -2
- package/src/lib/common/firestore/snapshot/snapshot.field.js.map +1 -1
- package/test/CHANGELOG.md +22 -0
- package/test/package.json +8 -9
- package/test/src/lib/common/firestore/test.driver.accessor.js +91 -1
- package/test/src/lib/common/firestore/test.driver.accessor.js.map +1 -1
- package/test/src/lib/common/firestore/test.driver.query.js +184 -6
- package/test/src/lib/common/firestore/test.driver.query.js.map +1 -1
- package/test/src/lib/common/mock/mock.item.d.ts +8 -0
- package/test/src/lib/common/mock/mock.item.js +2 -0
- package/test/src/lib/common/mock/mock.item.js.map +1 -1
package/CHANGELOG.md
CHANGED
|
@@ -2,6 +2,28 @@
|
|
|
2
2
|
|
|
3
3
|
This file was generated using [@jscutlery/semver](https://github.com/jscutlery/semver).
|
|
4
4
|
|
|
5
|
+
## [8.13.4](https://github.com/dereekb/dbx-components/compare/v8.13.3-dev...v8.13.4) (2022-07-23)
|
|
6
|
+
|
|
7
|
+
|
|
8
|
+
### Bug Fixes
|
|
9
|
+
|
|
10
|
+
* fixed ModifyBeforeSetFirestoreDocumentDataAccessorWrapper ([68b5fff](https://github.com/dereekb/dbx-components/commit/68b5fff454b8e30b838702c6747ed217937cf2ff))
|
|
11
|
+
|
|
12
|
+
|
|
13
|
+
|
|
14
|
+
## [8.13.3](https://github.com/dereekb/dbx-components/compare/v8.13.2-dev...v8.13.3) (2022-07-21)
|
|
15
|
+
|
|
16
|
+
|
|
17
|
+
|
|
18
|
+
## [8.13.2](https://github.com/dereekb/dbx-components/compare/v8.13.1-dev...v8.13.2) (2022-07-20)
|
|
19
|
+
|
|
20
|
+
|
|
21
|
+
### Bug Fixes
|
|
22
|
+
|
|
23
|
+
* firebase-server update fix ([38a52ca](https://github.com/dereekb/dbx-components/commit/38a52ca5894cded928127848b7a3b2e7283dbf18))
|
|
24
|
+
|
|
25
|
+
|
|
26
|
+
|
|
5
27
|
## [8.13.1](https://github.com/dereekb/dbx-components/compare/v8.13.0-dev...v8.13.1) (2022-07-19)
|
|
6
28
|
|
|
7
29
|
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@dereekb/firebase",
|
|
3
|
-
"version": "8.13.
|
|
3
|
+
"version": "8.13.4",
|
|
4
4
|
"devDependencies": {
|
|
5
5
|
"@firebase/rules-unit-testing": "^2.0.0"
|
|
6
6
|
},
|
|
@@ -20,20 +20,19 @@
|
|
|
20
20
|
"typings": "./src/index.d.ts",
|
|
21
21
|
"dependencies": {},
|
|
22
22
|
"peerDependencies": {
|
|
23
|
-
"
|
|
24
|
-
"rxjs": "^7.0.0",
|
|
25
|
-
"firebase": "^9.8.0",
|
|
26
|
-
"@dereekb/util": "8.13.1",
|
|
23
|
+
"@dereekb/util": "8.13.4",
|
|
27
24
|
"make-error": "^1.3.0",
|
|
28
25
|
"ts-essentials": "^9.1.2",
|
|
29
26
|
"extra-set": "^2.2.11",
|
|
30
|
-
"
|
|
27
|
+
"rxjs": "^7.0.0",
|
|
28
|
+
"firebase": "^9.8.0",
|
|
29
|
+
"@dereekb/rxjs": "8.13.4",
|
|
31
30
|
"ms": "^3.0.0-canary.1",
|
|
32
|
-
"@dereekb/model": "8.13.
|
|
31
|
+
"@dereekb/model": "8.13.4",
|
|
33
32
|
"class-transformer": "^0.5.1",
|
|
34
33
|
"class-validator": "^0.13.2",
|
|
35
|
-
"@dereekb/date": "8.13.
|
|
36
|
-
"date-fns": "^2.
|
|
34
|
+
"@dereekb/date": "8.13.4",
|
|
35
|
+
"date-fns": "^2.29.0",
|
|
37
36
|
"date-fns-tz": "^1.3.0",
|
|
38
37
|
"rrule": "git+https://git@github.com/dereekb/rrule#2b13b1ea881059ba2ecfec380e12ef244ef54570",
|
|
39
38
|
"tslib": "^2.0.0"
|
|
@@ -21,6 +21,7 @@ class WriteBatchFirestoreDocumentDataAccessor extends driver_accessor_default_1.
|
|
|
21
21
|
return Promise.resolve();
|
|
22
22
|
}
|
|
23
23
|
update(data) {
|
|
24
|
+
(0, firestore_1.assertFirestoreUpdateHasData)(data);
|
|
24
25
|
this.batch.update(this.documentRef, data);
|
|
25
26
|
return Promise.resolve();
|
|
26
27
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"driver.accessor.batch.js","sourceRoot":"","sources":["../../../../../../../packages/firebase/src/lib/client/firestore/driver.accessor.batch.ts"],"names":[],"mappings":";;;
|
|
1
|
+
{"version":3,"file":"driver.accessor.batch.js","sourceRoot":"","sources":["../../../../../../../packages/firebase/src/lib/client/firestore/driver.accessor.batch.ts"],"names":[],"mappings":";;;AAEA,sDAA2O;AAC3O,uEAAiF;AAEjF,iBAAiB;AACjB;;GAEG;AACH,MAAa,uCAA2C,SAAQ,8DAAuC;IACrG,YAAqB,KAAkC,EAAE,WAAiC;QACxF,KAAK,CAAC,WAAW,CAAC,CAAC;QADA,UAAK,GAAL,KAAK,CAA6B;IAEvD,CAAC;IAEQ,MAAM;QACb,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;QACpC,OAAO,OAAO,CAAC,OAAO,EAAE,CAAC;IAC3B,CAAC;IAEQ,GAAG,CAAC,IAAuB,EAAE,OAAoB;QACxD,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,WAAW,EAAE,IAAI,EAAE,OAAqB,CAAC,CAAC;QAC9D,OAAO,OAAO,CAAC,OAAO,EAAE,CAAC;IAC3B,CAAC;IAEQ,MAAM,CAAC,IAAyB;QACvC,IAAA,wCAA4B,EAAC,IAAI,CAAC,CAAC;QACnC,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,IAAI,CAAC,WAAW,EAAE,IAA8B,CAAC,CAAC;QACpE,OAAO,OAAO,CAAC,OAAO,EAAE,CAAC;IAC3B,CAAC;CACF;AApBD,0FAoBC;AAED;;;;;GAKG;AACH,SAAgB,yBAAyB,CAAI,UAAuC;IAClF,OAAO;QACL,WAAW,EAAE,CAAC,GAAyB,EAAE,EAAE,CAAC,IAAI,uCAAuC,CAAC,UAAU,EAAE,GAAG,CAAC;KACzG,CAAC;AACJ,CAAC;AAJD,8DAIC;AAED,gBAAgB;AAChB,MAAa,kCAAkC;IAI7C,YAAqB,KAAkC;QAAlC,UAAK,GAAL,KAAK,CAA6B;QAH9C,gBAAW,GAAG,wCAA4B,CAAC,KAAK,CAAC;QACjD,oBAAe,GAAG,yBAAyB,CAAI,IAAI,CAAC,KAAK,CAAC,CAAC;IAEV,CAAC;CAC5D;AALD,gFAKC;AAED,SAAgB,yBAAyB,CAAI,KAAkC;IAC7E,OAAO,IAAI,kCAAkC,CAAI,KAAK,CAAC,CAAC;AAC1D,CAAC;AAFD,8DAEC"}
|
|
@@ -2,8 +2,7 @@
|
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.defaultFirestoreDocumentContext = exports.defaultFirestoreAccessorFactory = exports.DefaultFirestoreDocumentDataAccessor = void 0;
|
|
4
4
|
const firestore_1 = require("@firebase/firestore");
|
|
5
|
-
const firestore_2 = require("
|
|
6
|
-
const firestore_3 = require("../../common/firestore");
|
|
5
|
+
const firestore_2 = require("../../common/firestore");
|
|
7
6
|
const driver_accessor_create_1 = require("./driver.accessor.create");
|
|
8
7
|
// MARK: Accessor
|
|
9
8
|
class DefaultFirestoreDocumentDataAccessor {
|
|
@@ -11,7 +10,7 @@ class DefaultFirestoreDocumentDataAccessor {
|
|
|
11
10
|
this.documentRef = documentRef;
|
|
12
11
|
}
|
|
13
12
|
stream() {
|
|
14
|
-
return (0, firestore_2.
|
|
13
|
+
return (0, firestore_2.streamFromOnSnapshot)(({ next, error }) => (0, firestore_1.onSnapshot)(this.documentRef, next, error));
|
|
15
14
|
}
|
|
16
15
|
create(data) {
|
|
17
16
|
return (0, driver_accessor_create_1.createWithAccessor)(this)(data);
|
|
@@ -32,6 +31,7 @@ class DefaultFirestoreDocumentDataAccessor {
|
|
|
32
31
|
return (0, firestore_1.setDoc)(this.documentRef, data, options);
|
|
33
32
|
}
|
|
34
33
|
update(data) {
|
|
34
|
+
(0, firestore_2.assertFirestoreUpdateHasData)(data);
|
|
35
35
|
return (0, firestore_1.updateDoc)(this.documentRef, data);
|
|
36
36
|
}
|
|
37
37
|
}
|
|
@@ -45,7 +45,7 @@ exports.defaultFirestoreAccessorFactory = defaultFirestoreAccessorFactory;
|
|
|
45
45
|
// MARK: Context
|
|
46
46
|
function defaultFirestoreDocumentContext() {
|
|
47
47
|
return {
|
|
48
|
-
contextType:
|
|
48
|
+
contextType: firestore_2.FirestoreDocumentContextType.NONE,
|
|
49
49
|
accessorFactory: defaultFirestoreAccessorFactory()
|
|
50
50
|
};
|
|
51
51
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"driver.accessor.default.js","sourceRoot":"","sources":["../../../../../../../packages/firebase/src/lib/client/firestore/driver.accessor.default.ts"],"names":[],"mappings":";;;AAAA,
|
|
1
|
+
{"version":3,"file":"driver.accessor.default.js","sourceRoot":"","sources":["../../../../../../../packages/firebase/src/lib/client/firestore/driver.accessor.default.ts"],"names":[],"mappings":";;;AAAA,mDAAwJ;AAExJ,sDAA2Q;AAC3Q,qEAA8D;AAE9D,iBAAiB;AACjB,MAAa,oCAAoC;IAC/C,YAAqB,WAAiC;QAAjC,gBAAW,GAAX,WAAW,CAAsB;IAAG,CAAC;IAE1D,MAAM;QACJ,OAAO,IAAA,gCAAoB,EAAC,CAAC,EAAE,IAAI,EAAE,KAAK,EAAE,EAAE,EAAE,CAAC,IAAA,sBAAU,EAAC,IAAI,CAAC,WAAW,EAAE,IAAI,EAAE,KAAK,CAAC,CAAC,CAAC;IAC9F,CAAC;IAED,MAAM,CAAC,IAAuB;QAC5B,OAAO,IAAA,2CAAkB,EAAC,IAAI,CAAC,CAAC,IAAI,CAAkB,CAAC;IACzD,CAAC;IAED,MAAM;QACJ,OAAO,IAAI,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC;IAC5C,CAAC;IAED,GAAG;QACD,OAAO,IAAA,kBAAM,EAAC,IAAI,CAAC,WAAW,CAAC,CAAC;IAClC,CAAC;IAED,gBAAgB,CAAmB,SAA2C;QAC5E,OAAO,IAAA,kBAAM,EAAC,IAAI,CAAC,WAAW,CAAC,aAAa,CAAI,SAAsC,CAAC,CAAiC,CAAC;IAC3H,CAAC;IAED,MAAM;QACJ,OAAO,IAAA,qBAAS,EAAC,IAAI,CAAC,WAAW,CAAC,CAAC;IACrC,CAAC;IAED,GAAG,CAAC,IAAuB,EAAE,OAAoB;QAC/C,OAAO,IAAA,kBAAM,EAAC,IAAI,CAAC,WAAW,EAAE,IAAI,EAAE,OAAqB,CAAC,CAAC;IAC/D,CAAC;IAED,MAAM,CAAC,IAAyB;QAC9B,IAAA,wCAA4B,EAAC,IAAI,CAAC,CAAC;QACnC,OAAO,IAAA,qBAAS,EAAC,IAAI,CAAC,WAAW,EAAE,IAAI,CAAC,CAAC;IAC3C,CAAC;CACF;AAnCD,oFAmCC;AAED,SAAgB,+BAA+B;IAC7C,OAAO;QACL,WAAW,EAAE,CAAC,GAAyB,EAAE,EAAE,CAAC,IAAI,oCAAoC,CAAC,GAAG,CAAC;KAC1F,CAAC;AACJ,CAAC;AAJD,0EAIC;AAED,gBAAgB;AAChB,SAAgB,+BAA+B;IAC7C,OAAO;QACL,WAAW,EAAE,wCAA4B,CAAC,IAAI;QAC9C,eAAe,EAAE,+BAA+B,EAAK;KACtD,CAAC;AACJ,CAAC;AALD,0EAKC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"driver.accessor.transaction.js","sourceRoot":"","sources":["../../../../../../../packages/firebase/src/lib/client/firestore/driver.accessor.transaction.ts"],"names":[],"mappings":";;;AACA,+BAAwC;AACxC,
|
|
1
|
+
{"version":3,"file":"driver.accessor.transaction.js","sourceRoot":"","sources":["../../../../../../../packages/firebase/src/lib/client/firestore/driver.accessor.transaction.ts"],"names":[],"mappings":";;;AACA,+BAAwC;AACxC,sDAAqP;AACrP,qEAA8D;AAE9D,iBAAiB;AACjB;;GAEG;AACH,MAAa,wCAAwC;IACnD,YAAqB,WAAyC,EAAW,WAAiC;QAArF,gBAAW,GAAX,WAAW,CAA8B;QAAW,gBAAW,GAAX,WAAW,CAAsB;IAAG,CAAC;IAE9G,MAAM;QACJ,OAAO,IAAA,WAAI,EAAC,IAAI,CAAC,GAAG,EAAE,CAAC,CAAC;IAC1B,CAAC;IAED,MAAM,CAAC,IAAuB;QAC5B,OAAO,IAAA,2CAAkB,EAAC,IAAI,CAAC,CAAC,IAAI,CAAkB,CAAC;IACzD,CAAC;IAED,MAAM;QACJ,OAAO,IAAI,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC;IAC5C,CAAC;IAED,GAAG;QACD,OAAO,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;IAChD,CAAC;IAED,gBAAgB,CAAmB,SAA2C;QAC5E,OAAO,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,IAAI,CAAC,WAAW,CAAC,aAAa,CAAI,SAAsC,CAAC,CAAiC,CAAC;IACzI,CAAC;IAED,MAAM;QACJ,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;QAC1C,OAAO,OAAO,CAAC,OAAO,EAAE,CAAC;IAC3B,CAAC;IAED,GAAG,CAAC,IAAuB,EAAE,OAAoB;QAC/C,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,IAAI,CAAC,WAAW,EAAE,IAAI,EAAE,OAAqB,CAAC,CAAC;QACpE,OAAO,OAAO,CAAC,OAAO,EAAE,CAAC;IAC3B,CAAC;IAED,MAAM,CAAC,IAAyB;QAC9B,IAAA,wCAA4B,EAAC,IAAI,CAAC,CAAC;QACnC,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC,IAAI,CAAC,WAAW,EAAE,IAAI,CAAC,CAAC;QAChD,OAAO,OAAO,CAAC,OAAO,EAAE,CAAC;IAC3B,CAAC;CACF;AAtCD,4FAsCC;AAED;;;;;GAKG;AACH,SAAgB,0BAA0B,CAAI,WAAyC;IACrF,OAAO;QACL,WAAW,EAAE,CAAC,GAAyB,EAAE,EAAE,CAAC,IAAI,wCAAwC,CAAC,WAAW,EAAE,GAAG,CAAC;KAC3G,CAAC;AACJ,CAAC;AAJD,gEAIC;AAED,gBAAgB;AAChB,MAAa,mCAAmC;IAI9C,YAAqB,WAAyC;QAAzC,gBAAW,GAAX,WAAW,CAA8B;QAHrD,gBAAW,GAAG,wCAA4B,CAAC,WAAW,CAAC;QACvD,oBAAe,GAAG,0BAA0B,CAAI,IAAI,CAAC,WAAW,CAAC,CAAC;IAEV,CAAC;CACnE;AALD,kFAKC;AAED,SAAgB,0BAA0B,CAAI,WAAyC;IACrF,OAAO,IAAI,mCAAmC,CAAI,WAAW,CAAC,CAAC;AACjE,CAAC;AAFD,gEAEC"}
|
|
@@ -47,16 +47,16 @@ export interface FirestoreDocumentDataAccessor<T, D = DocumentData> extends Docu
|
|
|
47
47
|
set(data: PartialWithFieldValue<T>, options: SetOptions): Promise<WriteResult | void>;
|
|
48
48
|
set(data: WithFieldValue<T>): Promise<WriteResult | void>;
|
|
49
49
|
/**
|
|
50
|
-
* Directly updates the data in the database, skipping
|
|
50
|
+
* Directly updates the data in the database, skipping the use of the converter, etc.
|
|
51
51
|
*
|
|
52
|
+
* If the input data is undefined or an empty object, it will fail.
|
|
52
53
|
* If the document doesn't exist, it will fail.
|
|
53
54
|
*
|
|
54
|
-
* NOTE: If you rely on the converter/conversion functionality, use set() with merge: true instead of update.
|
|
55
|
-
*
|
|
56
55
|
* @param data
|
|
57
56
|
*/
|
|
58
57
|
update(data: UpdateData<D>, params?: FirestoreDocumentUpdateParams): Promise<WriteResult | void>;
|
|
59
58
|
}
|
|
59
|
+
export declare type FirestoreDocumentDataAccessorCreateFunction<T> = (data: WithFieldValue<T>) => Promise<void | WriteResult>;
|
|
60
60
|
export declare type FirestoreDocumentDataAccessorSetFunction<T> = (data: PartialWithFieldValue<T> | WithFieldValue<T>, options?: SetOptions) => Promise<void | WriteResult>;
|
|
61
61
|
/**
|
|
62
62
|
* Contextual interface used for making a FirestoreDocumentModifier for a specific document.
|
|
@@ -124,13 +124,15 @@ export declare function updateWithAccessorSet<T>(accessor: FirestoreDocumentData
|
|
|
124
124
|
/**
|
|
125
125
|
* Updates the target object using the input data that uses the input converter to build data suitable for the update function.
|
|
126
126
|
*
|
|
127
|
+
* If the input data after conversion is empty then returns void.
|
|
128
|
+
*
|
|
127
129
|
* If the target object does not exist, this will fail.
|
|
128
130
|
*
|
|
129
131
|
* @param data
|
|
130
132
|
*/
|
|
131
133
|
export declare type UpdateWithAccessorUpdateAndConverterFunction<T> = (data: Partial<T>, params?: FirestoreDocumentUpdateParams) => Promise<WriteResult | void>;
|
|
132
134
|
/**
|
|
133
|
-
* Creates
|
|
135
|
+
* Creates an UpdateWithAccessorUpdateAndConverterFunction.
|
|
134
136
|
*
|
|
135
137
|
* @param accessor
|
|
136
138
|
* @param converter
|
|
@@ -66,7 +66,7 @@ function updateWithAccessorSet(accessor) {
|
|
|
66
66
|
}
|
|
67
67
|
exports.updateWithAccessorSet = updateWithAccessorSet;
|
|
68
68
|
/**
|
|
69
|
-
* Creates
|
|
69
|
+
* Creates an UpdateWithAccessorUpdateAndConverterFunction.
|
|
70
70
|
*
|
|
71
71
|
* @param accessor
|
|
72
72
|
* @param converter
|
|
@@ -76,7 +76,10 @@ function updateWithAccessorUpdateAndConverterFunction(accessor, converter) {
|
|
|
76
76
|
return (data, params) => tslib_1.__awaiter(this, void 0, void 0, function* () {
|
|
77
77
|
const updateInput = (0, util_1.filterUndefinedValues)(data);
|
|
78
78
|
const updateData = converter.toFirestore(updateInput, { merge: true }); // treat it as a merge
|
|
79
|
-
|
|
79
|
+
// Only update
|
|
80
|
+
if (!(0, util_1.objectHasNoKeys)(updateData)) {
|
|
81
|
+
return params != null ? accessor.update(updateData, params) : accessor.update(updateData);
|
|
82
|
+
}
|
|
80
83
|
});
|
|
81
84
|
}
|
|
82
85
|
exports.updateWithAccessorUpdateAndConverterFunction = updateWithAccessorUpdateAndConverterFunction;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"accessor.js","sourceRoot":"","sources":["../../../../../../../../packages/firebase/src/lib/common/firestore/accessor/accessor.ts"],"names":[],"mappings":";;;;AAAA,wCAA4C;AAC5C,wCAA8E;AAE9E,+BAAyD;AA2EzD,gBAAgB;AAChB;;;;;;;;GAQG;AACH,SAAgB,sBAAsB,CAAI,MAAuC,EAAE,OAAyB;IAC1G,OAAO,MAAM,CAAC,IAAI,CAAC,mBAAmB,CAAC,OAAO,CAAC,EAAE,IAAA,kBAAW,GAAE,CAAC,CAAC;AAClE,CAAC;AAFD,wDAEC;AAED;;;;;GAKG;AACH,SAAgB,mBAAmB,CAAI,OAAyB;IAC9D,OAAO,IAAA,UAAG,EAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC;AACrC,CAAC;AAFD,kDAEC;AAeD;;;;;GAKG;AACH,SAAgB,6BAA6B,CAAI,QAA0C;IACzF,OAAO,CAAC,IAAgB,EAAE,EAAE;QAC1B,OAAO,QAAQ,CAAC,MAAM,EAAE,CAAC,IAAI,CAAC,CAAC,MAAM,EAAE,EAAE;YACvC,IAAI,MAAM,EAAE;gBACV,OAAO,qBAAqB,CAAC,QAAQ,CAAC,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;aACpD;iBAAM;gBACL,OAAO,QAAQ,CAAC,GAAG,CAAC,IAAyB,CAAC,CAAC;aAChD;QACH,CAAC,CAAC,CAAC;IACL,CAAC,CAAC;AACJ,CAAC;AAVD,sEAUC;AAYD;;;;;GAKG;AACH,SAAgB,qBAAqB,CAAI,QAA0C;IACjF,OAAO,CAAO,IAAgB,EAAE,WAAqB,EAAE,EAAE;QACvD,MAAM,MAAM,GAAY,WAAW,IAAI,CAAC,MAAM,QAAQ,CAAC,MAAM,EAAE,CAAC,CAAC;QAEjE,IAAI,CAAC,MAAM,EAAE;YACX,MAAM,IAAI,KAAK,CAAC,UAAU,QAAQ,CAAC,WAAW,CAAC,IAAI,mBAAmB,CAAC,CAAC;SACzE;QAED,MAAM,MAAM,GAAG,IAAA,4BAAqB,EAAC,IAAI,CAAC,CAAC;QAC3C,OAAO,QAAQ,CAAC,GAAG,CAAC,MAAM,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC;IAC/C,CAAC,CAAA,CAAC;AACJ,CAAC;AAXD,sDAWC;
|
|
1
|
+
{"version":3,"file":"accessor.js","sourceRoot":"","sources":["../../../../../../../../packages/firebase/src/lib/common/firestore/accessor/accessor.ts"],"names":[],"mappings":";;;;AAAA,wCAA4C;AAC5C,wCAA8E;AAE9E,+BAAyD;AA2EzD,gBAAgB;AAChB;;;;;;;;GAQG;AACH,SAAgB,sBAAsB,CAAI,MAAuC,EAAE,OAAyB;IAC1G,OAAO,MAAM,CAAC,IAAI,CAAC,mBAAmB,CAAC,OAAO,CAAC,EAAE,IAAA,kBAAW,GAAE,CAAC,CAAC;AAClE,CAAC;AAFD,wDAEC;AAED;;;;;GAKG;AACH,SAAgB,mBAAmB,CAAI,OAAyB;IAC9D,OAAO,IAAA,UAAG,EAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC;AACrC,CAAC;AAFD,kDAEC;AAeD;;;;;GAKG;AACH,SAAgB,6BAA6B,CAAI,QAA0C;IACzF,OAAO,CAAC,IAAgB,EAAE,EAAE;QAC1B,OAAO,QAAQ,CAAC,MAAM,EAAE,CAAC,IAAI,CAAC,CAAC,MAAM,EAAE,EAAE;YACvC,IAAI,MAAM,EAAE;gBACV,OAAO,qBAAqB,CAAC,QAAQ,CAAC,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;aACpD;iBAAM;gBACL,OAAO,QAAQ,CAAC,GAAG,CAAC,IAAyB,CAAC,CAAC;aAChD;QACH,CAAC,CAAC,CAAC;IACL,CAAC,CAAC;AACJ,CAAC;AAVD,sEAUC;AAYD;;;;;GAKG;AACH,SAAgB,qBAAqB,CAAI,QAA0C;IACjF,OAAO,CAAO,IAAgB,EAAE,WAAqB,EAAE,EAAE;QACvD,MAAM,MAAM,GAAY,WAAW,IAAI,CAAC,MAAM,QAAQ,CAAC,MAAM,EAAE,CAAC,CAAC;QAEjE,IAAI,CAAC,MAAM,EAAE;YACX,MAAM,IAAI,KAAK,CAAC,UAAU,QAAQ,CAAC,WAAW,CAAC,IAAI,mBAAmB,CAAC,CAAC;SACzE;QAED,MAAM,MAAM,GAAG,IAAA,4BAAqB,EAAC,IAAI,CAAC,CAAC;QAC3C,OAAO,QAAQ,CAAC,GAAG,CAAC,MAAM,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC;IAC/C,CAAC,CAAA,CAAC;AACJ,CAAC;AAXD,sDAWC;AAaD;;;;;;GAMG;AACH,SAAgB,4CAA4C,CAAI,QAA0C,EAAE,SAAoC;IAC9I,OAAO,CAAO,IAAgB,EAAE,MAAsC,EAAE,EAAE;QACxE,MAAM,WAAW,GAAG,IAAA,4BAAqB,EAAC,IAAI,CAAC,CAAC;QAChD,MAAM,UAAU,GAAG,SAAS,CAAC,WAAW,CAAC,WAAW,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,sBAAsB;QAE9F,cAAc;QACd,IAAI,CAAC,IAAA,sBAAe,EAAC,UAAU,CAAC,EAAE;YAChC,OAAO,MAAM,IAAI,IAAI,CAAC,CAAC,CAAC,QAAQ,CAAC,MAAM,CAAC,UAAU,EAAE,MAAM,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC;SAC3F;IACH,CAAC,CAAA,CAAC;AACJ,CAAC;AAVD,oGAUC"}
|
|
@@ -4,7 +4,14 @@ import { DocumentReferenceRef } from '../reference';
|
|
|
4
4
|
import { DocumentData, SetOptions } from '../types';
|
|
5
5
|
import { FirestoreDocumentDataAccessor, FirestoreDocumentDataAccessorSetFunction } from './accessor';
|
|
6
6
|
import { AbstractFirestoreDocumentDataAccessorWrapper, InterceptAccessorFactoryFunction } from './accessor.wrap';
|
|
7
|
-
|
|
7
|
+
/**
|
|
8
|
+
* Data accessor modes.
|
|
9
|
+
* - always: Always modifies on update, set, or create.
|
|
10
|
+
* - update: Only modifies when calling set with options
|
|
11
|
+
* - set: Only modifies when calling create or set without options
|
|
12
|
+
* - create: Only modifies on create calls
|
|
13
|
+
*/
|
|
14
|
+
export declare type ModifyBeforeSetFistoreDataAccessorMode = 'always' | 'update' | 'set' | 'create';
|
|
8
15
|
/**
|
|
9
16
|
* Input fora ModifyBeforeSetFirestoreDocumentDataAccessorWrapper
|
|
10
17
|
*/
|
|
@@ -13,7 +13,7 @@ class ModifyBeforeSetFirestoreDocumentDataAccessorWrapper extends accessor_wrap_
|
|
|
13
13
|
const when = config.when;
|
|
14
14
|
this.modifier = (0, util_1.mergeModifiers)((0, util_1.asArray)(config.modifier));
|
|
15
15
|
let setFn;
|
|
16
|
-
const
|
|
16
|
+
const modifyData = (data, options) => {
|
|
17
17
|
const copy = Object.assign({}, data);
|
|
18
18
|
const input = {
|
|
19
19
|
data: copy,
|
|
@@ -21,11 +21,17 @@ class ModifyBeforeSetFirestoreDocumentDataAccessorWrapper extends accessor_wrap_
|
|
|
21
21
|
options
|
|
22
22
|
};
|
|
23
23
|
this.modifier(input);
|
|
24
|
+
return input;
|
|
25
|
+
};
|
|
26
|
+
const modifyAndSet = (data, options) => {
|
|
27
|
+
const input = modifyData(data, options);
|
|
24
28
|
return super.set(input.data, options);
|
|
25
29
|
};
|
|
30
|
+
let applyToCreateFunction = false;
|
|
26
31
|
switch (when) {
|
|
27
32
|
case 'always':
|
|
28
33
|
setFn = modifyAndSet;
|
|
34
|
+
applyToCreateFunction = true;
|
|
29
35
|
break;
|
|
30
36
|
case 'set':
|
|
31
37
|
setFn = (data, options) => {
|
|
@@ -37,6 +43,7 @@ class ModifyBeforeSetFirestoreDocumentDataAccessorWrapper extends accessor_wrap_
|
|
|
37
43
|
return super.set(data, options);
|
|
38
44
|
}
|
|
39
45
|
};
|
|
46
|
+
applyToCreateFunction = true;
|
|
40
47
|
break;
|
|
41
48
|
case 'update':
|
|
42
49
|
setFn = (data, options) => {
|
|
@@ -49,8 +56,19 @@ class ModifyBeforeSetFirestoreDocumentDataAccessorWrapper extends accessor_wrap_
|
|
|
49
56
|
}
|
|
50
57
|
};
|
|
51
58
|
break;
|
|
59
|
+
case 'create':
|
|
60
|
+
setFn = (data, options) => super.set(data, options);
|
|
61
|
+
applyToCreateFunction = true;
|
|
62
|
+
break;
|
|
52
63
|
}
|
|
53
64
|
this.set = setFn;
|
|
65
|
+
if (applyToCreateFunction) {
|
|
66
|
+
const modifyAndCreate = (data) => {
|
|
67
|
+
const input = modifyData(data);
|
|
68
|
+
return super.create(input.data);
|
|
69
|
+
};
|
|
70
|
+
this.create = modifyAndCreate;
|
|
71
|
+
}
|
|
54
72
|
}
|
|
55
73
|
}
|
|
56
74
|
exports.ModifyBeforeSetFirestoreDocumentDataAccessorWrapper = ModifyBeforeSetFirestoreDocumentDataAccessorWrapper;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"accessor.wrap.modify.js","sourceRoot":"","sources":["../../../../../../../../packages/firebase/src/lib/common/firestore/accessor/accessor.wrap.modify.ts"],"names":[],"mappings":";;;AAAA,
|
|
1
|
+
{"version":3,"file":"accessor.wrap.modify.js","sourceRoot":"","sources":["../../../../../../../../packages/firebase/src/lib/common/firestore/accessor/accessor.wrap.modify.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { AsyncGetterOrValue, Maybe, UseAsync } from '@dereekb/util';
|
|
2
2
|
import { FirestoreModelId, FirestoreModelKey } from '../collection';
|
|
3
3
|
import { DocumentDataWithId, DocumentReference, DocumentSnapshot, QuerySnapshot, Transaction } from '../types';
|
|
4
|
-
import { FirestoreDocument, FirestoreDocumentAccessor, LimitedFirestoreDocumentAccessor, LimitedFirestoreDocumentAccessorContextExtension } from './document';
|
|
4
|
+
import { FirestoreDocumentData, FirestoreDocument, FirestoreDocumentAccessor, LimitedFirestoreDocumentAccessor, LimitedFirestoreDocumentAccessorContextExtension } from './document';
|
|
5
5
|
export declare function newDocuments<T, D extends FirestoreDocument<T>>(documentAccessor: FirestoreDocumentAccessor<T, D>, count: number): D[];
|
|
6
6
|
export interface MakeDocumentsParams<T, D extends FirestoreDocument<T> = FirestoreDocument<T>> {
|
|
7
7
|
count: number;
|
|
@@ -24,11 +24,16 @@ export interface MakeDocumentsParams<T, D extends FirestoreDocument<T> = Firesto
|
|
|
24
24
|
* @returns
|
|
25
25
|
*/
|
|
26
26
|
export declare function makeDocuments<T, D extends FirestoreDocument<T>>(documentAccessor: FirestoreDocumentAccessor<T, D>, make: MakeDocumentsParams<T, D>): Promise<D[]>;
|
|
27
|
-
export declare function getDocumentSnapshots<
|
|
28
|
-
export declare
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
27
|
+
export declare function getDocumentSnapshots<D extends FirestoreDocument<any>>(documents: D[]): Promise<DocumentSnapshot<FirestoreDocumentData<D>>[]>;
|
|
28
|
+
export declare type FirestoreDocumentSnapshotPair<D extends FirestoreDocument<any>> = {
|
|
29
|
+
document: D;
|
|
30
|
+
snapshot: DocumentSnapshot<FirestoreDocumentData<D>>;
|
|
31
|
+
};
|
|
32
|
+
export declare function getDocumentSnapshotPairs<D extends FirestoreDocument<any>>(documents: D[]): Promise<FirestoreDocumentSnapshotPair<D>[]>;
|
|
33
|
+
export declare function getDocumentSnapshotsData<D extends FirestoreDocument<any>>(documents: D[]): Promise<DocumentDataWithId<FirestoreDocumentData<D>>[]>;
|
|
34
|
+
export declare function getDocumentSnapshotsData<D extends FirestoreDocument<any>>(documents: D[], withId: true): Promise<DocumentDataWithId<FirestoreDocumentData<D>>[]>;
|
|
35
|
+
export declare function getDocumentSnapshotsData<D extends FirestoreDocument<any>>(documents: D[], withId: false): Promise<FirestoreDocumentData<D>[]>;
|
|
36
|
+
export declare function getDocumentSnapshotsData<D extends FirestoreDocument<any>>(documents: D[], withId?: boolean): Promise<DocumentDataWithId<FirestoreDocumentData<D>>[] | FirestoreDocumentData<D>[]>;
|
|
32
37
|
export declare function getDataFromDocumentSnapshots<T>(snapshots: DocumentSnapshot<T>[]): DocumentDataWithId<T>[];
|
|
33
38
|
export declare function getDataFromDocumentSnapshots<T>(snapshots: DocumentSnapshot<T>[], withId: true): DocumentDataWithId<T>[];
|
|
34
39
|
export declare function getDataFromDocumentSnapshots<T>(snapshots: DocumentSnapshot<T>[], withId: false): T[];
|
|
@@ -81,11 +86,11 @@ export declare function documentDataWithId<T>(snapshot: DocumentSnapshot<T>): Ma
|
|
|
81
86
|
* @param defaultValue
|
|
82
87
|
* @returns
|
|
83
88
|
*/
|
|
84
|
-
export declare function useDocumentSnapshot<
|
|
89
|
+
export declare function useDocumentSnapshot<D extends FirestoreDocument<any>, O = void>(document: Maybe<D>, use: UseAsync<DocumentSnapshot<FirestoreDocumentData<D>>, O>, defaultValue?: Maybe<AsyncGetterOrValue<O>>): Promise<Maybe<O>>;
|
|
85
90
|
/**
|
|
86
91
|
* MappedUseAsyncFunction to load snapshot data from the input document and use it.
|
|
87
92
|
*/
|
|
88
|
-
export declare const useDocumentSnapshotData:
|
|
93
|
+
export declare const useDocumentSnapshotData: <D extends FirestoreDocument<any, import("../collection").FirestoreModelIdentity<string, string>>, O = void>(document: Maybe<D>, use: UseAsync<FirestoreDocumentData<D>, O>, defaultValue?: Maybe<AsyncGetterOrValue<O>>) => Promise<Maybe<O>>;
|
|
89
94
|
export declare function firestoreModelIdFromDocument<T, D extends FirestoreDocument<T>>(document: D): FirestoreModelId;
|
|
90
95
|
export declare function firestoreModelIdsFromDocuments<T, D extends FirestoreDocument<T>>(documents: D[]): FirestoreModelId[];
|
|
91
96
|
export declare function firestoreModelKeyFromDocument<T, D extends FirestoreDocument<T>>(document: D): FirestoreModelKey;
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.documentReferencesFromDocuments = exports.documentReferenceFromDocument = exports.firestoreModelKeysFromDocuments = exports.firestoreModelKeyFromDocument = exports.firestoreModelIdsFromDocuments = exports.firestoreModelIdFromDocument = exports.useDocumentSnapshotData = exports.useDocumentSnapshot = exports.documentDataWithId = exports.documentDataFunction = exports.documentData = exports.firestoreDocumentLoader = exports.loadDocumentsForIds = exports.loadDocumentsForIdsFromValues = exports.loadDocumentsForKeys = exports.loadDocumentsForKeysFromValues = exports.loadDocumentsForDocumentReferences = exports.loadDocumentsForValues = exports.loadDocumentsForDocumentReferencesFromValues = exports.loadDocumentsForSnapshots = exports.getDataFromDocumentSnapshots = exports.getDocumentSnapshotsData = exports.getDocumentSnapshots = exports.makeDocuments = exports.newDocuments = void 0;
|
|
3
|
+
exports.documentReferencesFromDocuments = exports.documentReferenceFromDocument = exports.firestoreModelKeysFromDocuments = exports.firestoreModelKeyFromDocument = exports.firestoreModelIdsFromDocuments = exports.firestoreModelIdFromDocument = exports.useDocumentSnapshotData = exports.useDocumentSnapshot = exports.documentDataWithId = exports.documentDataFunction = exports.documentData = exports.firestoreDocumentLoader = exports.loadDocumentsForIds = exports.loadDocumentsForIdsFromValues = exports.loadDocumentsForKeys = exports.loadDocumentsForKeysFromValues = exports.loadDocumentsForDocumentReferences = exports.loadDocumentsForValues = exports.loadDocumentsForDocumentReferencesFromValues = exports.loadDocumentsForSnapshots = exports.getDataFromDocumentSnapshots = exports.getDocumentSnapshotsData = exports.getDocumentSnapshotPairs = exports.getDocumentSnapshots = exports.makeDocuments = exports.newDocuments = void 0;
|
|
4
4
|
const tslib_1 = require("tslib");
|
|
5
5
|
const util_1 = require("@dereekb/util");
|
|
6
6
|
function newDocuments(documentAccessor, count) {
|
|
@@ -23,7 +23,7 @@ function makeDocuments(documentAccessor, make) {
|
|
|
23
23
|
const document = newDocumentFn(documentAccessor);
|
|
24
24
|
const data = yield make.init(i, document);
|
|
25
25
|
if (data != null) {
|
|
26
|
-
yield document.accessor.
|
|
26
|
+
yield document.accessor.create(data);
|
|
27
27
|
}
|
|
28
28
|
return document;
|
|
29
29
|
})
|
|
@@ -34,6 +34,10 @@ function getDocumentSnapshots(documents) {
|
|
|
34
34
|
return util_1.PromiseUtility.runTasksForValues(documents, (x) => x.accessor.get());
|
|
35
35
|
}
|
|
36
36
|
exports.getDocumentSnapshots = getDocumentSnapshots;
|
|
37
|
+
function getDocumentSnapshotPairs(documents) {
|
|
38
|
+
return util_1.PromiseUtility.runTasksForValues(documents, (document) => document.accessor.get().then((snapshot) => ({ document, snapshot })));
|
|
39
|
+
}
|
|
40
|
+
exports.getDocumentSnapshotPairs = getDocumentSnapshotPairs;
|
|
37
41
|
function getDocumentSnapshotsData(documents, withId = true) {
|
|
38
42
|
return getDocumentSnapshots(documents).then((x) => getDataFromDocumentSnapshots(x, withId));
|
|
39
43
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"document.utility.js","sourceRoot":"","sources":["../../../../../../../../packages/firebase/src/lib/common/firestore/accessor/document.utility.ts"],"names":[],"mappings":";;;;AAAA,wCAAyK;AAKzK,SAAgB,YAAY,CAAoC,gBAAiD,EAAE,KAAa;IAC9H,OAAO,IAAA,sBAAe,EAAC,GAAG,EAAE,CAAC,gBAAgB,CAAC,WAAW,EAAE,EAAE,KAAK,CAAC,CAAC;AACtE,CAAC;AAFD,oCAEC;AAkBD;;;;;;GAMG;AACH,SAAgB,aAAa,CAAoC,gBAAiD,EAAE,IAA+B;;IACjJ,MAAM,aAAa,GAAG,MAAA,IAAI,CAAC,WAAW,mCAAI,CAAC,GAAG,EAAE,CAAC,gBAAgB,CAAC,WAAW,EAAE,CAAC,CAAC;IACjF,OAAO,IAAA,sBAAe,EAAC;QACrB,KAAK,EAAE,IAAI,CAAC,KAAK;QACjB,IAAI,EAAE,CAAO,CAAS,EAAE,EAAE;YACxB,MAAM,QAAQ,GAAM,aAAa,CAAC,gBAAgB,CAAC,CAAC;YACpD,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,IAAI,CAAC,CAAC,EAAE,QAAQ,CAAC,CAAC;YAE1C,IAAI,IAAI,IAAI,IAAI,EAAE;gBAChB,MAAM,QAAQ,CAAC,QAAQ,CAAC,
|
|
1
|
+
{"version":3,"file":"document.utility.js","sourceRoot":"","sources":["../../../../../../../../packages/firebase/src/lib/common/firestore/accessor/document.utility.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1,14 @@
|
|
|
1
|
+
import { UpdateData } from '@firebase/firestore';
|
|
1
2
|
export declare function unsupportedFirestoreDriverFunctionError(message?: string): void;
|
|
3
|
+
/**
|
|
4
|
+
* Asserts that the input data is not an empty object and has keys.
|
|
5
|
+
*
|
|
6
|
+
* Used to help bring pairity to update(), as google-cloud/firestore will throw an error if the input data has no keys defined.
|
|
7
|
+
*
|
|
8
|
+
* @param data
|
|
9
|
+
*/
|
|
10
|
+
export declare function assertFirestoreUpdateHasData(data: UpdateData<unknown>): void;
|
|
11
|
+
/**
|
|
12
|
+
* Throws an error related to an empty object being passed to a FirestoreDocumentDataAccessor's update() function.
|
|
13
|
+
*/
|
|
14
|
+
export declare function firestoreUpdateWithNoDataError(): void;
|
|
@@ -1,8 +1,29 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.unsupportedFirestoreDriverFunctionError = void 0;
|
|
3
|
+
exports.firestoreUpdateWithNoDataError = exports.assertFirestoreUpdateHasData = exports.unsupportedFirestoreDriverFunctionError = void 0;
|
|
4
|
+
const util_1 = require("@dereekb/util");
|
|
4
5
|
function unsupportedFirestoreDriverFunctionError(message) {
|
|
5
6
|
throw new Error(message !== null && message !== void 0 ? message : 'This function is not supported by this Firestore driver.');
|
|
6
7
|
}
|
|
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;
|
|
8
29
|
//# sourceMappingURL=error.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"error.js","sourceRoot":"","sources":["../../../../../../../packages/firebase/src/lib/common/firestore/error.ts"],"names":[],"mappings":";;;AAAA,SAAgB,uCAAuC,CAAC,OAAgB;IACtE,MAAM,IAAI,KAAK,CAAC,OAAO,aAAP,OAAO,cAAP,OAAO,GAAI,0DAA0D,CAAC,CAAC;AACzF,CAAC;AAFD,0FAEC"}
|
|
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,IAAyB;IACpE,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,4 +1,4 @@
|
|
|
1
|
-
import { FieldPathOrStringPath } from './../types';
|
|
1
|
+
import { FieldPathOrStringPath, FieldPathOrStringPathOf } from './../types';
|
|
2
2
|
import { ArrayOrValue, SeparateResult, SortingOrder, Maybe, StringKeyPropertyKeys } from '@dereekb/util';
|
|
3
3
|
import { DocumentSnapshot, DocumentData, FieldPath } from '../types';
|
|
4
4
|
export declare type FirestoreQueryConstraintType = string;
|
|
@@ -38,9 +38,12 @@ export interface OffsetQueryConstraintData {
|
|
|
38
38
|
}
|
|
39
39
|
export declare function offset(offset: number): FirestoreQueryConstraint<OffsetQueryConstraintData>;
|
|
40
40
|
export declare const FIRESTORE_WHERE_QUERY_CONSTRAINT_TYPE = "where";
|
|
41
|
-
export declare type WhereFilterOp = '<' | '<=' | '==' | '!=' | '>=' | '>' | 'array-contains' | 'in' | 'not-in';
|
|
42
41
|
/**
|
|
43
|
-
*
|
|
42
|
+
* https://firebase.google.com/docs/firestore/query-data/queries#query_operators
|
|
43
|
+
*/
|
|
44
|
+
export declare type WhereFilterOp = '<' | '<=' | '==' | '>=' | '>' | '!=' | 'array-contains' | 'array-contains-any' | 'in' | 'not-in';
|
|
45
|
+
/**
|
|
46
|
+
* Maximum number of arguments allowed with the "in" and "array-contains"/"array-contains-any" operators.
|
|
44
47
|
*/
|
|
45
48
|
export declare const FIRESTORE_MAX_WHERE_IN_FILTER_ARGS_COUNT = 10;
|
|
46
49
|
export interface WhereQueryConstraintData {
|
|
@@ -48,8 +51,18 @@ export interface WhereQueryConstraintData {
|
|
|
48
51
|
opStr: WhereFilterOp;
|
|
49
52
|
value: unknown;
|
|
50
53
|
}
|
|
51
|
-
|
|
52
|
-
|
|
54
|
+
/**
|
|
55
|
+
* Configures a Firebase where query.
|
|
56
|
+
*
|
|
57
|
+
* https://firebase.google.com/docs/firestore/query-data/queries#simple_queries
|
|
58
|
+
*
|
|
59
|
+
* @param fieldPath
|
|
60
|
+
* @param opStr
|
|
61
|
+
* @param value
|
|
62
|
+
*/
|
|
63
|
+
export declare function where<T>(fieldPath: StringKeyPropertyKeys<T>, opStr: WhereFilterOp, value: unknown): FirestoreQueryConstraint<WhereQueryConstraintData>;
|
|
64
|
+
export declare function where(fieldPath: FieldPathOrStringPath, opStr: WhereFilterOp, value: unknown): FirestoreQueryConstraint<WhereQueryConstraintData>;
|
|
65
|
+
export declare function where<T = object>(fieldPath: FieldPathOrStringPathOf<T> | FieldPathOrStringPath, opStr: WhereFilterOp, value: unknown): FirestoreQueryConstraint<WhereQueryConstraintData>;
|
|
53
66
|
export declare const FIRESTORE_WHERE_DOCUMENT_ID_QUERY_CONSTRAINT_TYPE = "where_doc_id";
|
|
54
67
|
export declare type WhereDocumentIdQueryConstraintData = Omit<WhereQueryConstraintData, 'fieldPath'>;
|
|
55
68
|
export declare function whereDocumentId(opStr: WhereFilterOp, value: unknown): FirestoreQueryConstraint<WhereDocumentIdQueryConstraintData>;
|
|
@@ -61,6 +74,7 @@ export interface OrderByQueryConstraintData {
|
|
|
61
74
|
}
|
|
62
75
|
export declare function orderBy<T>(fieldPath: StringKeyPropertyKeys<T>, directionStr?: OrderByDirection): FirestoreQueryConstraint<OrderByQueryConstraintData>;
|
|
63
76
|
export declare function orderBy(fieldPath: FieldPathOrStringPath, directionStr?: OrderByDirection): FirestoreQueryConstraint<OrderByQueryConstraintData>;
|
|
77
|
+
export declare function orderBy<T = object>(fieldPath: FieldPathOrStringPathOf<T> | FieldPathOrStringPath, directionStr?: OrderByDirection): FirestoreQueryConstraint<OrderByQueryConstraintData>;
|
|
64
78
|
export declare const FIRESTORE_ORDER_BY_DOCUMENT_ID_QUERY_CONSTRAINT_TYPE = "order_by_doc_id";
|
|
65
79
|
export declare type OrderByDocumentIdQueryConstraintData = Pick<OrderByQueryConstraintData, 'directionStr'>;
|
|
66
80
|
export declare function orderByDocumentId(directionStr?: OrderByDirection): FirestoreQueryConstraint<OrderByDocumentIdQueryConstraintData>;
|
|
@@ -45,10 +45,25 @@ exports.offset = offset;
|
|
|
45
45
|
// MARK: Where
|
|
46
46
|
exports.FIRESTORE_WHERE_QUERY_CONSTRAINT_TYPE = 'where';
|
|
47
47
|
/**
|
|
48
|
-
* Maximum number of arguments allowed with the "in" and "array-contains" operators.
|
|
48
|
+
* Maximum number of arguments allowed with the "in" and "array-contains"/"array-contains-any" operators.
|
|
49
49
|
*/
|
|
50
50
|
exports.FIRESTORE_MAX_WHERE_IN_FILTER_ARGS_COUNT = 10;
|
|
51
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
|
+
}
|
|
52
67
|
return firestoreQueryConstraint(exports.FIRESTORE_WHERE_QUERY_CONSTRAINT_TYPE, { fieldPath: fieldPath, opStr, value });
|
|
53
68
|
}
|
|
54
69
|
exports.where = where;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"constraint.js","sourceRoot":"","sources":["../../../../../../../../packages/firebase/src/lib/common/firestore/query/constraint.ts"],"names":[],"mappings":";;;AACA,
|
|
1
|
+
{"version":3,"file":"constraint.js","sourceRoot":"","sources":["../../../../../../../../packages/firebase/src/lib/common/firestore/query/constraint.ts"],"names":[],"mappings":"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"}
|