firetender-admin 0.12.0 → 0.12.2
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/dist/FiretenderDoc.js +30 -6
- package/dist/FiretenderDoc.js.map +1 -1
- package/dist/errors.d.ts +9 -0
- package/dist/errors.js +11 -1
- package/dist/errors.js.map +1 -1
- package/dist/firestore-deps-admin.d.ts +3 -1
- package/dist/firestore-deps-admin.js +5 -1
- package/dist/firestore-deps-admin.js.map +1 -1
- package/dist/firestore-deps-web.d.ts +1 -0
- package/dist/firestore-deps-web.js +4 -2
- package/dist/firestore-deps-web.js.map +1 -1
- package/dist/firestore-deps.d.ts +3 -1
- package/dist/firestore-deps.js +5 -1
- package/dist/firestore-deps.js.map +1 -1
- package/dist/proxy.js +2 -1
- package/dist/proxy.js.map +1 -1
- package/dist/timestamps.js +7 -1
- package/dist/timestamps.js.map +1 -1
- package/package.json +22 -21
- package/src/FiretenderCollection.ts +1 -1
- package/src/FiretenderDoc.ts +41 -11
- package/src/errors.ts +10 -1
- package/src/firestore-deps-admin.ts +7 -2
- package/src/firestore-deps-web.ts +5 -3
- package/src/firestore-deps.ts +7 -2
- package/src/proxy.ts +4 -3
- package/src/timestamps.ts +8 -4
package/dist/FiretenderDoc.js
CHANGED
|
@@ -260,12 +260,19 @@ class FiretenderDoc {
|
|
|
260
260
|
snapshot = await (0, firestore_deps_1.getDoc)(this.ref);
|
|
261
261
|
}
|
|
262
262
|
catch (error) {
|
|
263
|
-
(
|
|
264
|
-
|
|
263
|
+
if ((error instanceof firestore_deps_1.FirestoreError || error instanceof firestore_deps_1.FirebaseError) &&
|
|
264
|
+
(error.code === "not-found" || error.code === "permission-denied")) {
|
|
265
|
+
// Not found and permission errors are handled below; snapshot is left
|
|
266
|
+
// undefined.
|
|
267
|
+
}
|
|
268
|
+
else {
|
|
269
|
+
(0, errors_1.addContextToError)(error, "getDoc", this.ref);
|
|
270
|
+
throw error;
|
|
271
|
+
}
|
|
265
272
|
}
|
|
266
273
|
}
|
|
267
|
-
if (!(0, firestore_deps_1.snapshotExists)(snapshot)) {
|
|
268
|
-
const error = new errors_1.FiretenderIOError(`Document does not exist: "${this.ref.path}"`);
|
|
274
|
+
if (!snapshot || !(0, firestore_deps_1.snapshotExists)(snapshot)) {
|
|
275
|
+
const error = new errors_1.FiretenderIOError(`Document does not exist or insufficient permissions: "${this.ref.path}"`);
|
|
269
276
|
this.resolvesWaitingForLoad.forEach((wait) => wait.reject(error));
|
|
270
277
|
throw error;
|
|
271
278
|
}
|
|
@@ -391,7 +398,9 @@ class FiretenderDoc {
|
|
|
391
398
|
*/
|
|
392
399
|
async update(mutator) {
|
|
393
400
|
this.throwIfReadonly();
|
|
394
|
-
|
|
401
|
+
if (!this.data) {
|
|
402
|
+
await this.load();
|
|
403
|
+
}
|
|
395
404
|
mutator(this.w);
|
|
396
405
|
await this.write();
|
|
397
406
|
return this;
|
|
@@ -429,7 +438,22 @@ class FiretenderDoc {
|
|
|
429
438
|
}
|
|
430
439
|
}
|
|
431
440
|
}
|
|
432
|
-
|
|
441
|
+
let parsedData;
|
|
442
|
+
try {
|
|
443
|
+
parsedData = this.schema.parse(data);
|
|
444
|
+
}
|
|
445
|
+
catch (error) {
|
|
446
|
+
if (error instanceof errors_1.NullTimestampError) {
|
|
447
|
+
// We are almost certainly in a listener, receiving the first snapshot
|
|
448
|
+
// update of a timestamp being set to serverTimestamp(). Ignore it.
|
|
449
|
+
// There will be another snapshot momentarily with the proper time.
|
|
450
|
+
//
|
|
451
|
+
// See https://stackoverflow.com/questions/64287252/ for background.
|
|
452
|
+
return false;
|
|
453
|
+
}
|
|
454
|
+
throw error; // Rethrow otherwise.
|
|
455
|
+
}
|
|
456
|
+
this.data = parsedData;
|
|
433
457
|
// Dereference the old proxy to force a recapture of data.
|
|
434
458
|
this.dataProxy = undefined;
|
|
435
459
|
return true;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"FiretenderDoc.js","sourceRoot":"","sources":["../src/FiretenderDoc.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"FiretenderDoc.js","sourceRoot":"","sources":["../src/FiretenderDoc.ts"],"names":[],"mappings":"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"}
|
package/dist/errors.d.ts
CHANGED
|
@@ -18,6 +18,15 @@ export declare class FiretenderUsageError extends FiretenderError {
|
|
|
18
18
|
*/
|
|
19
19
|
export declare class FiretenderInternalError extends FiretenderError {
|
|
20
20
|
}
|
|
21
|
+
/**
|
|
22
|
+
* Thrown to signal that a `timestampSchema` field was set to null. This
|
|
23
|
+
* happens when listening to a timestamp being set to the server time. See
|
|
24
|
+
* https://stackoverflow.com/questions/64287252/ for background.
|
|
25
|
+
*
|
|
26
|
+
* This error is only used internally.
|
|
27
|
+
*/
|
|
28
|
+
export declare class NullTimestampError extends FiretenderError {
|
|
29
|
+
}
|
|
21
30
|
/**
|
|
22
31
|
* Adds a "firetenderContext" property to the given error.
|
|
23
32
|
*
|
package/dist/errors.js
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.addContextToError = exports.FiretenderInternalError = exports.FiretenderUsageError = exports.FiretenderIOError = exports.FiretenderError = void 0;
|
|
3
|
+
exports.addContextToError = exports.NullTimestampError = exports.FiretenderInternalError = exports.FiretenderUsageError = exports.FiretenderIOError = exports.FiretenderError = void 0;
|
|
4
4
|
class FiretenderError extends Error {
|
|
5
5
|
}
|
|
6
6
|
exports.FiretenderError = FiretenderError;
|
|
@@ -24,6 +24,16 @@ exports.FiretenderUsageError = FiretenderUsageError;
|
|
|
24
24
|
class FiretenderInternalError extends FiretenderError {
|
|
25
25
|
}
|
|
26
26
|
exports.FiretenderInternalError = FiretenderInternalError;
|
|
27
|
+
/**
|
|
28
|
+
* Thrown to signal that a `timestampSchema` field was set to null. This
|
|
29
|
+
* happens when listening to a timestamp being set to the server time. See
|
|
30
|
+
* https://stackoverflow.com/questions/64287252/ for background.
|
|
31
|
+
*
|
|
32
|
+
* This error is only used internally.
|
|
33
|
+
*/
|
|
34
|
+
class NullTimestampError extends FiretenderError {
|
|
35
|
+
}
|
|
36
|
+
exports.NullTimestampError = NullTimestampError;
|
|
27
37
|
/**
|
|
28
38
|
* Adds a "firetenderContext" property to the given error.
|
|
29
39
|
*
|
package/dist/errors.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"errors.js","sourceRoot":"","sources":["../src/errors.ts"],"names":[],"mappings":";;;AAEA,MAAa,eAAgB,SAAQ,KAAK;CAAG;AAA7C,0CAA6C;AAE7C;;;GAGG;AACH,MAAa,iBAAkB,SAAQ,eAAe;CAAG;AAAzD,8CAAyD;AAEzD;;;GAGG;AACH,MAAa,oBAAqB,SAAQ,eAAe;CAAG;AAA5D,oDAA4D;AAE5D;;GAEG;AACH,MAAa,uBAAwB,SAAQ,eAAe;CAAG;AAA/D,0DAA+D;AAE/D;;;;;;;;GAQG;AACH,SAAgB,iBAAiB,CAC/B,KAAU,EACV,IAAY,EACZ,GAA6C,EAC7C,IAAU;IAEV,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE;QAC7B,OAAO;KACR;IACD,KAAK,CAAC,iBAAiB,GAAG,EAAE,IAAI,EAAE,CAAC;IACnC,IAAI,GAAG,EAAE;QACP,KAAK,CAAC,iBAAiB,CAAC,GAAG,GAAG,GAAG,CAAC,IAAI,CAAC;KACxC;IACD,IAAI,IAAI,KAAK,SAAS,EAAE;QACtB,KAAK,CAAC,iBAAiB,CAAC,IAAI,GAAG,IAAI,CAAC;KACrC;AACH,CAAC;AAhBD,8CAgBC"}
|
|
1
|
+
{"version":3,"file":"errors.js","sourceRoot":"","sources":["../src/errors.ts"],"names":[],"mappings":";;;AAEA,MAAa,eAAgB,SAAQ,KAAK;CAAG;AAA7C,0CAA6C;AAE7C;;;GAGG;AACH,MAAa,iBAAkB,SAAQ,eAAe;CAAG;AAAzD,8CAAyD;AAEzD;;;GAGG;AACH,MAAa,oBAAqB,SAAQ,eAAe;CAAG;AAA5D,oDAA4D;AAE5D;;GAEG;AACH,MAAa,uBAAwB,SAAQ,eAAe;CAAG;AAA/D,0DAA+D;AAE/D;;;;;;GAMG;AACH,MAAa,kBAAmB,SAAQ,eAAe;CAAG;AAA1D,gDAA0D;AAE1D;;;;;;;;GAQG;AACH,SAAgB,iBAAiB,CAC/B,KAAU,EACV,IAAY,EACZ,GAA6C,EAC7C,IAAU;IAEV,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE;QAC7B,OAAO;KACR;IACD,KAAK,CAAC,iBAAiB,GAAG,EAAE,IAAI,EAAE,CAAC;IACnC,IAAI,GAAG,EAAE;QACP,KAAK,CAAC,iBAAiB,CAAC,GAAG,GAAG,GAAG,CAAC,IAAI,CAAC;KACxC;IACD,IAAI,IAAI,KAAK,SAAS,EAAE;QACtB,KAAK,CAAC,iBAAiB,CAAC,IAAI,GAAG,IAAI,CAAC;KACrC;AACH,CAAC;AAhBD,8CAgBC"}
|
|
@@ -4,9 +4,11 @@
|
|
|
4
4
|
* For the server client API, we need to wrap the namespaced calls so they are
|
|
5
5
|
* compatible with the v9 modular calls used by the web version.
|
|
6
6
|
*/
|
|
7
|
+
import { FirebaseError } from "@firebase/util";
|
|
7
8
|
import { CollectionGroup, CollectionReference, DocumentReference, DocumentSnapshot, FieldValue, Filter, Firestore, Query, QuerySnapshot, Timestamp, UpdateData, WithFieldValue } from "@google-cloud/firestore";
|
|
9
|
+
import { FirestoreError } from "firebase/firestore";
|
|
8
10
|
export declare const FIRESTORE_DEPS_TYPE: "web" | "admin";
|
|
9
|
-
export { CollectionReference, DocumentReference, DocumentSnapshot, Firestore, Query, QuerySnapshot, Timestamp, };
|
|
11
|
+
export { CollectionReference, DocumentReference, DocumentSnapshot, FirebaseError, Firestore, FirestoreError, Query, QuerySnapshot, Timestamp, };
|
|
10
12
|
export type QueryConstraint = Filter;
|
|
11
13
|
export type Unsubscribe = () => void;
|
|
12
14
|
export declare const where: typeof Filter.where;
|
|
@@ -6,7 +6,9 @@
|
|
|
6
6
|
* compatible with the v9 modular calls used by the web version.
|
|
7
7
|
*/
|
|
8
8
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
9
|
-
exports.updateDoc = exports.setDoc = exports.query = exports.onSnapshot = exports.getDocs = exports.getDoc = exports.doc = exports.deleteDoc = exports.collectionGroup = exports.collection = exports.addDoc = exports.snapshotExists = exports.isServerTimestamp = exports.serverTimestamp = exports.deleteField = exports.arrayRemove = exports.where = exports.Timestamp = exports.QuerySnapshot = exports.Query = exports.Firestore = exports.DocumentSnapshot = exports.DocumentReference = exports.CollectionReference = exports.FIRESTORE_DEPS_TYPE = void 0;
|
|
9
|
+
exports.updateDoc = exports.setDoc = exports.query = exports.onSnapshot = exports.getDocs = exports.getDoc = exports.doc = exports.deleteDoc = exports.collectionGroup = exports.collection = exports.addDoc = exports.snapshotExists = exports.isServerTimestamp = exports.serverTimestamp = exports.deleteField = exports.arrayRemove = exports.where = exports.Timestamp = exports.QuerySnapshot = exports.Query = exports.FirestoreError = exports.Firestore = exports.FirebaseError = exports.DocumentSnapshot = exports.DocumentReference = exports.CollectionReference = exports.FIRESTORE_DEPS_TYPE = void 0;
|
|
10
|
+
const util_1 = require("@firebase/util");
|
|
11
|
+
Object.defineProperty(exports, "FirebaseError", { enumerable: true, get: function () { return util_1.FirebaseError; } });
|
|
10
12
|
const firestore_1 = require("@google-cloud/firestore");
|
|
11
13
|
Object.defineProperty(exports, "CollectionReference", { enumerable: true, get: function () { return firestore_1.CollectionReference; } });
|
|
12
14
|
Object.defineProperty(exports, "DocumentReference", { enumerable: true, get: function () { return firestore_1.DocumentReference; } });
|
|
@@ -15,6 +17,8 @@ Object.defineProperty(exports, "Firestore", { enumerable: true, get: function ()
|
|
|
15
17
|
Object.defineProperty(exports, "Query", { enumerable: true, get: function () { return firestore_1.Query; } });
|
|
16
18
|
Object.defineProperty(exports, "QuerySnapshot", { enumerable: true, get: function () { return firestore_1.QuerySnapshot; } });
|
|
17
19
|
Object.defineProperty(exports, "Timestamp", { enumerable: true, get: function () { return firestore_1.Timestamp; } });
|
|
20
|
+
const firestore_2 = require("firebase/firestore");
|
|
21
|
+
Object.defineProperty(exports, "FirestoreError", { enumerable: true, get: function () { return firestore_2.FirestoreError; } });
|
|
18
22
|
exports.FIRESTORE_DEPS_TYPE = "admin";
|
|
19
23
|
exports.where = firestore_1.Filter.where;
|
|
20
24
|
exports.arrayRemove = firestore_1.FieldValue.arrayRemove;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"firestore-deps-admin.js","sourceRoot":"","sources":["../src/firestore-deps-admin.ts"],"names":[],"mappings":";AAAA;;;;;GAKG;;;AAEH,uDAaiC;
|
|
1
|
+
{"version":3,"file":"firestore-deps-admin.js","sourceRoot":"","sources":["../src/firestore-deps-admin.ts"],"names":[],"mappings":"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"}
|
|
@@ -4,6 +4,7 @@
|
|
|
4
4
|
* For web clients, the "firebase/firestore" API is simply re-exported.
|
|
5
5
|
*/
|
|
6
6
|
import { DocumentSnapshot } from "firebase/firestore";
|
|
7
|
+
export { FirebaseError } from "firebase/app";
|
|
7
8
|
export * from "firebase/firestore";
|
|
8
9
|
export declare const FIRESTORE_DEPS_TYPE: "web" | "admin";
|
|
9
10
|
export declare const snapshotExists: (snapshot: DocumentSnapshot) => boolean;
|
|
@@ -19,13 +19,15 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
|
19
19
|
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
|
|
20
20
|
};
|
|
21
21
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
22
|
-
exports.isServerTimestamp = exports.snapshotExists = exports.FIRESTORE_DEPS_TYPE = void 0;
|
|
22
|
+
exports.isServerTimestamp = exports.snapshotExists = exports.FIRESTORE_DEPS_TYPE = exports.FirebaseError = void 0;
|
|
23
|
+
var app_1 = require("firebase/app");
|
|
24
|
+
Object.defineProperty(exports, "FirebaseError", { enumerable: true, get: function () { return app_1.FirebaseError; } });
|
|
23
25
|
__exportStar(require("firebase/firestore"), exports);
|
|
24
26
|
exports.FIRESTORE_DEPS_TYPE = "web";
|
|
25
27
|
// DocumentSnapshot.prototype.exists is a function for "firebase/firestore" and
|
|
26
28
|
// a boolean for "firebase-admin/firestore".
|
|
27
29
|
const snapshotExists = (snapshot) => snapshot.exists();
|
|
28
30
|
exports.snapshotExists = snapshotExists;
|
|
29
|
-
const isServerTimestamp = (data) => data._methodName === "serverTimestamp";
|
|
31
|
+
const isServerTimestamp = (data) => !!data && data._methodName === "serverTimestamp";
|
|
30
32
|
exports.isServerTimestamp = isServerTimestamp;
|
|
31
33
|
//# sourceMappingURL=firestore-deps-web.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"firestore-deps-web.js","sourceRoot":"","sources":["../src/firestore-deps-web.ts"],"names":[],"mappings":";AAAA;;;;GAIG;;;;;;;;;;;;;;;;;AAIH,qDAAmC;AAEtB,QAAA,mBAAmB,GAAoB,KAAK,CAAC;AAE1D,+EAA+E;AAC/E,4CAA4C;AACrC,MAAM,cAAc,GAAG,CAAC,QAA0B,
|
|
1
|
+
{"version":3,"file":"firestore-deps-web.js","sourceRoot":"","sources":["../src/firestore-deps-web.ts"],"names":[],"mappings":";AAAA;;;;GAIG;;;;;;;;;;;;;;;;;AAIH,oCAA6C;AAApC,oGAAA,aAAa,OAAA;AACtB,qDAAmC;AAEtB,QAAA,mBAAmB,GAAoB,KAAK,CAAC;AAE1D,+EAA+E;AAC/E,4CAA4C;AACrC,MAAM,cAAc,GAAG,CAAC,QAA0B,EAAW,EAAE,CACpE,QAAQ,CAAC,MAAM,EAAE,CAAC;AADP,QAAA,cAAc,kBACP;AAEb,MAAM,iBAAiB,GAAG,CAAC,IAAS,EAAW,EAAE,CACtD,CAAC,CAAC,IAAI,IAAI,IAAI,CAAC,WAAW,KAAK,iBAAiB,CAAC;AADtC,QAAA,iBAAiB,qBACqB"}
|
package/dist/firestore-deps.d.ts
CHANGED
|
@@ -4,9 +4,11 @@
|
|
|
4
4
|
* For the server client API, we need to wrap the namespaced calls so they are
|
|
5
5
|
* compatible with the v9 modular calls used by the web version.
|
|
6
6
|
*/
|
|
7
|
+
import { FirebaseError } from "@firebase/util";
|
|
7
8
|
import { CollectionGroup, CollectionReference, DocumentReference, DocumentSnapshot, FieldValue, Filter, Firestore, Query, QuerySnapshot, Timestamp, UpdateData, WithFieldValue } from "@google-cloud/firestore";
|
|
9
|
+
import { FirestoreError } from "firebase/firestore";
|
|
8
10
|
export declare const FIRESTORE_DEPS_TYPE: "web" | "admin";
|
|
9
|
-
export { CollectionReference, DocumentReference, DocumentSnapshot, Firestore, Query, QuerySnapshot, Timestamp, };
|
|
11
|
+
export { CollectionReference, DocumentReference, DocumentSnapshot, FirebaseError, Firestore, FirestoreError, Query, QuerySnapshot, Timestamp, };
|
|
10
12
|
export type QueryConstraint = Filter;
|
|
11
13
|
export type Unsubscribe = () => void;
|
|
12
14
|
export declare const where: typeof Filter.where;
|
package/dist/firestore-deps.js
CHANGED
|
@@ -6,7 +6,9 @@
|
|
|
6
6
|
* compatible with the v9 modular calls used by the web version.
|
|
7
7
|
*/
|
|
8
8
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
9
|
-
exports.updateDoc = exports.setDoc = exports.query = exports.onSnapshot = exports.getDocs = exports.getDoc = exports.doc = exports.deleteDoc = exports.collectionGroup = exports.collection = exports.addDoc = exports.snapshotExists = exports.isServerTimestamp = exports.serverTimestamp = exports.deleteField = exports.arrayRemove = exports.where = exports.Timestamp = exports.QuerySnapshot = exports.Query = exports.Firestore = exports.DocumentSnapshot = exports.DocumentReference = exports.CollectionReference = exports.FIRESTORE_DEPS_TYPE = void 0;
|
|
9
|
+
exports.updateDoc = exports.setDoc = exports.query = exports.onSnapshot = exports.getDocs = exports.getDoc = exports.doc = exports.deleteDoc = exports.collectionGroup = exports.collection = exports.addDoc = exports.snapshotExists = exports.isServerTimestamp = exports.serverTimestamp = exports.deleteField = exports.arrayRemove = exports.where = exports.Timestamp = exports.QuerySnapshot = exports.Query = exports.FirestoreError = exports.Firestore = exports.FirebaseError = exports.DocumentSnapshot = exports.DocumentReference = exports.CollectionReference = exports.FIRESTORE_DEPS_TYPE = void 0;
|
|
10
|
+
const util_1 = require("@firebase/util");
|
|
11
|
+
Object.defineProperty(exports, "FirebaseError", { enumerable: true, get: function () { return util_1.FirebaseError; } });
|
|
10
12
|
const firestore_1 = require("@google-cloud/firestore");
|
|
11
13
|
Object.defineProperty(exports, "CollectionReference", { enumerable: true, get: function () { return firestore_1.CollectionReference; } });
|
|
12
14
|
Object.defineProperty(exports, "DocumentReference", { enumerable: true, get: function () { return firestore_1.DocumentReference; } });
|
|
@@ -15,6 +17,8 @@ Object.defineProperty(exports, "Firestore", { enumerable: true, get: function ()
|
|
|
15
17
|
Object.defineProperty(exports, "Query", { enumerable: true, get: function () { return firestore_1.Query; } });
|
|
16
18
|
Object.defineProperty(exports, "QuerySnapshot", { enumerable: true, get: function () { return firestore_1.QuerySnapshot; } });
|
|
17
19
|
Object.defineProperty(exports, "Timestamp", { enumerable: true, get: function () { return firestore_1.Timestamp; } });
|
|
20
|
+
const firestore_2 = require("firebase/firestore");
|
|
21
|
+
Object.defineProperty(exports, "FirestoreError", { enumerable: true, get: function () { return firestore_2.FirestoreError; } });
|
|
18
22
|
exports.FIRESTORE_DEPS_TYPE = "admin";
|
|
19
23
|
exports.where = firestore_1.Filter.where;
|
|
20
24
|
exports.arrayRemove = firestore_1.FieldValue.arrayRemove;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"firestore-deps.js","sourceRoot":"","sources":["../src/firestore-deps.ts"],"names":[],"mappings":";AAAA;;;;;GAKG;;;AAEH,uDAaiC;
|
|
1
|
+
{"version":3,"file":"firestore-deps.js","sourceRoot":"","sources":["../src/firestore-deps.ts"],"names":[],"mappings":";AAAA;;;;;GAKG;;;AAEH,yCAA+C;AAuB7C,8FAvBO,oBAAa,OAuBP;AAtBf,uDAaiC;AAM/B,oGAjBA,+BAAmB,OAiBA;AACnB,kGAjBA,6BAAiB,OAiBA;AACjB,iGAjBA,4BAAgB,OAiBA;AAEhB,0FAhBA,qBAAS,OAgBA;AAET,sFAjBA,iBAAK,OAiBA;AACL,8FAjBA,yBAAa,OAiBA;AACb,0FAjBA,qBAAS,OAiBA;AAbX,kDAAoD;AAUlD,+FAVO,0BAAc,OAUP;AARH,QAAA,mBAAmB,GAAoB,OAAO,CAAC;AAgB/C,QAAA,KAAK,GAAG,kBAAM,CAAC,KAAK,CAAC;AACrB,QAAA,WAAW,GAAG,sBAAU,CAAC,WAAW,CAAC;AACrC,QAAA,WAAW,GAAG,sBAAU,CAAC,MAAM,CAAC;AAChC,QAAA,eAAe,GAAG,sBAAU,CAAC,eAAe,CAAC;AAEnD,MAAM,iBAAiB,GAAG,CAAC,CAAM,EAAW,EAAE,CAAC,CAAC,YAAY,sBAAU,CAAC;AAAjE,QAAA,iBAAiB,qBAAgD;AAE9E,+EAA+E;AAC/E,4CAA4C;AACrC,MAAM,cAAc,GAAG,CAAC,QAA0B,EAAW,EAAE,CACpE,QAAQ,CAAC,MAAM,CAAC;AADL,QAAA,cAAc,kBACT;AAEX,MAAM,MAAM,GAAG,CACpB,GAA2B,EAC3B,IAAuB,EACQ,EAAE,CAAC,GAAG,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;AAHrC,QAAA,MAAM,UAG+B;AAE3C,MAAM,UAAU,GAAG,CACxB,cAA+C,EAC/C,IAAY,EACZ,GAAG,YAAsB,EACJ,EAAE,CACvB,cAAc,YAAY,qBAAS;IACjC,CAAC,CAAC,cAAc,CAAC,UAAU,CAAC,CAAC,IAAI,EAAE,GAAG,YAAY,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;IAC9D,CAAC,CAAC,cAAc,CAAC,SAAS,CAAC,UAAU,CACjC,CAAC,cAAc,CAAC,IAAI,EAAE,IAAI,EAAE,GAAG,YAAY,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CACvD,CAAC;AATK,QAAA,UAAU,cASf;AAED,MAAM,eAAe,GAAG,CAC7B,SAAoB,EACpB,YAAoB,EACH,EAAE,CAAC,SAAS,CAAC,eAAe,CAAC,YAAY,CAAC,CAAC;AAHjD,QAAA,eAAe,mBAGkC;AAEvD,MAAM,SAAS,GAAG,KAAK,EAC5B,GAA+B,EAChB,EAAE;IACjB,MAAM,GAAG,CAAC,MAAM,EAAE,CAAC;AACrB,CAAC,CAAC;AAJW,QAAA,SAAS,aAIpB;AAEK,MAAM,GAAG,GAAG,CACjB,cAA+C,EAC/C,IAAa,EACb,GAAG,YAAsB,EACN,EAAE,CACrB,cAAc,YAAY,qBAAS;IACjC,CAAC,CAAC,cAAc,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,GAAG,YAAY,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;IACvD,CAAC,CAAC,IAAI;QACN,CAAC,CAAC,cAAc,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,GAAG,YAAY,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;QACvD,CAAC,CAAC,cAAc,CAAC,GAAG,EAAE,CAAC;AATd,QAAA,GAAG,OASW;AAEpB,MAAM,MAAM,GAAG,CACpB,GAAyB,EACK,EAAE,CAAC,GAAG,CAAC,GAAG,EAAE,CAAC;AAFhC,QAAA,MAAM,UAE0B;AAEtC,MAAM,OAAO,GAAG,CAAI,KAAe,EAA6B,EAAE,CACvE,KAAK,CAAC,GAAG,EAAE,CAAC;AADD,QAAA,OAAO,WACN;AAEP,MAAM,UAAU,GAAG,CACxB,GAAsB,EACtB,QAA8C,EACjC,EAAE;IACf,OAAO,GAAG,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC;AAClC,CAAC,CAAC;AALW,QAAA,UAAU,cAKrB;AAEK,MAAM,KAAK,GAAG,CACnB,GAAa,EACb,GAAG,gBAAmC,EAC5B,EAAE,CACZ,gBAAgB,CAAC,MAAM,KAAK,CAAC;IAC3B,CAAC,CAAC,GAAG;IACL,CAAC,CAAC,gBAAgB,CAAC,MAAM,KAAK,CAAC;QAC/B,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,gBAAgB,CAAC,CAAC,CAAC,CAAC;QAChC,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,kBAAM,CAAC,GAAG,CAAC,GAAG,gBAAgB,CAAC,CAAC,CAAC;AARpC,QAAA,KAAK,SAQ+B;AAE1C,MAAM,MAAM,GAAG,KAAK,EACzB,GAAyB,EACzB,IAAuB,EACR,EAAE;IACjB,MAAM,GAAG,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;AACtB,CAAC,CAAC;AALW,QAAA,MAAM,UAKjB;AAEK,MAAM,SAAS,GAAG,KAAK,EAC5B,GAAyB,EACzB,IAAmB,EACJ,EAAE;IACjB,MAAM,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;AACzB,CAAC,CAAC;AALW,QAAA,SAAS,aAKpB"}
|
package/dist/proxy.js
CHANGED
|
@@ -198,7 +198,8 @@ function getPropertySchema(parent, parentSchema, propertyKey) {
|
|
|
198
198
|
case zod_1.z.ZodFirstPartyTypeKind.ZodObject:
|
|
199
199
|
return schema.shape[propertyKey];
|
|
200
200
|
case zod_1.z.ZodFirstPartyTypeKind.ZodDiscriminatedUnion:
|
|
201
|
-
|
|
201
|
+
schema = schema.optionsMap.get(parent[schema.discriminator]);
|
|
202
|
+
continue;
|
|
202
203
|
// If the parent is of type ZodAny, so are its properties.
|
|
203
204
|
case zod_1.z.ZodFirstPartyTypeKind.ZodAny:
|
|
204
205
|
return zod_1.z.any();
|
package/dist/proxy.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"proxy.js","sourceRoot":"","sources":["../src/proxy.ts"],"names":[],"mappings":";;;AAAA,6BAAwB;AAExB,qDAA6E;AAE7E;;GAEG;AACH,MAAM,mBAAmB,GAAG,MAAM,CAAC,cAAc,CAAC,CAAC;AAEnD;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA4BG;AACH,SAAgB,eAAe,CAI7B,UAAoB,EACpB,WAA4B,EAC5B,KAA+B,EAC/B,eAAwD,EACxD,gBAAgD,SAAS;IAEzD,OAAO,IAAI,KAAK,CAAC,KAAK,EAAE;QACtB,GAAG,CAAC,MAAM,EAAE,WAAW;YACrB,MAAM,QAAQ,GAAG,MAAM,CAAC,WAAW,CAAC,CAAC;YACrC,IAAI,QAAQ,YAAY,QAAQ,EAAE;gBAChC,MAAM,MAAM,GAAG,CAAC,GAAG,IAAW,
|
|
1
|
+
{"version":3,"file":"proxy.js","sourceRoot":"","sources":["../src/proxy.ts"],"names":[],"mappings":"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"}
|
package/dist/timestamps.js
CHANGED
|
@@ -2,12 +2,18 @@
|
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.serverTimestampWithClientTime = exports.serverTimestamp = exports.futureTimestamp = exports.timestampSchema = void 0;
|
|
4
4
|
const zod_1 = require("zod");
|
|
5
|
+
const errors_1 = require("./errors");
|
|
5
6
|
const firestore_deps_1 = require("./firestore-deps");
|
|
6
7
|
/**
|
|
7
8
|
* Timestamp representation used by Firestore: seconds and nanoseconds since the
|
|
8
9
|
* epoch.
|
|
9
10
|
*/
|
|
10
|
-
exports.timestampSchema = zod_1.z.custom((data) =>
|
|
11
|
+
exports.timestampSchema = zod_1.z.custom((data) => {
|
|
12
|
+
if (data === null) {
|
|
13
|
+
throw new errors_1.NullTimestampError();
|
|
14
|
+
}
|
|
15
|
+
return data instanceof firestore_deps_1.Timestamp || (0, firestore_deps_1.isServerTimestamp)(data);
|
|
16
|
+
});
|
|
11
17
|
/**
|
|
12
18
|
* Returns a Firestore Timestamp for some future date. The result is typically
|
|
13
19
|
* used for writing TTLs.
|
package/dist/timestamps.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"timestamps.js","sourceRoot":"","sources":["../src/timestamps.ts"],"names":[],"mappings":";;;AAAA,6BAAwB;AAExB,qDAI0B;AAE1B;;;GAGG;AACU,QAAA,eAAe,GAAG,OAAC,CAAC,MAAM,
|
|
1
|
+
{"version":3,"file":"timestamps.js","sourceRoot":"","sources":["../src/timestamps.ts"],"names":[],"mappings":";;;AAAA,6BAAwB;AAExB,qCAA8C;AAC9C,qDAI0B;AAE1B;;;GAGG;AACU,QAAA,eAAe,GAAG,OAAC,CAAC,MAAM,CAAY,CAAC,IAAS,EAAE,EAAE;IAC/D,IAAI,IAAI,KAAK,IAAI,EAAE;QACjB,MAAM,IAAI,2BAAkB,EAAE,CAAC;KAChC;IACD,OAAO,IAAI,YAAY,0BAAS,IAAI,IAAA,kCAAiB,EAAC,IAAI,CAAC,CAAC;AAC9D,CAAC,CAAC,CAAC;AAEH;;;;;;;;;;;;GAYG;AACH,SAAgB,eAAe,CAAC,QAM/B;IACC,IAAI,SAAS,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;IAC3B,IAAI,QAAQ,CAAC,IAAI;QAAE,SAAS,IAAI,QAAQ,CAAC,IAAI,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,IAAI,CAAC;IACpE,IAAI,QAAQ,CAAC,KAAK;QAAE,SAAS,IAAI,QAAQ,CAAC,KAAK,GAAG,EAAE,GAAG,EAAE,GAAG,IAAI,CAAC;IACjE,IAAI,QAAQ,CAAC,OAAO;QAAE,SAAS,IAAI,QAAQ,CAAC,OAAO,GAAG,EAAE,GAAG,IAAI,CAAC;IAChE,IAAI,QAAQ,CAAC,OAAO;QAAE,SAAS,IAAI,QAAQ,CAAC,OAAO,GAAG,IAAI,CAAC;IAC3D,IAAI,QAAQ,CAAC,MAAM;QAAE,SAAS,IAAI,QAAQ,CAAC,MAAM,CAAC;IAClD,OAAO,0BAAS,CAAC,UAAU,CAAC,SAAS,CAAC,CAAC;AACzC,CAAC;AAdD,0CAcC;AAED;;;;;;;GAOG;AACH,SAAgB,eAAe;IAC7B,OAAO,IAAA,gCAAwB,GAAe,CAAC;AACjD,CAAC;AAFD,0CAEC;AAED;;;;;;;;GAQG;AACH,SAAgB,6BAA6B;IAC3C,MAAM,QAAQ,GAAG,IAAA,gCAAwB,GAAE,CAAC;IAC5C,MAAM,SAAS,GAAG,0BAAS,CAAC,GAAG,EAAE,CAAC;IAClC,MAAM,CAAC,MAAM,CAAC,QAAQ,EAAE,SAAS,CAAC,CAAC;IAClC,QAAgB,CAAC,OAAO,GAAG,CAAC,KAAgB,EAAE,EAAE,CAAC,SAAS,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;IAC1E,QAAgB,CAAC,MAAM,GAAG,GAAG,EAAE,CAAC,SAAS,CAAC,MAAM,EAAE,CAAC;IACnD,QAAgB,CAAC,QAAQ,GAAG,GAAG,EAAE,CAAC,SAAS,CAAC,QAAQ,EAAE,CAAC;IACvD,QAAgB,CAAC,QAAQ,GAAG,GAAG,EAAE,CAAC,SAAS,CAAC,QAAQ,EAAE,CAAC;IACvD,QAAgB,CAAC,OAAO,GAAG,GAAG,EAAE,CAAC,SAAS,CAAC,OAAO,EAAE,CAAC;IACtD,+DAA+D;IAC/D,iFAAiF;IACjF,sEAAsE;IACtE,OAAO,QAAqB,CAAC;AAC/B,CAAC;AAbD,sEAaC"}
|
package/package.json
CHANGED
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
"name": "firetender-admin",
|
|
3
3
|
"displayName": "Firetender (for firebase-admin/firestore)",
|
|
4
4
|
"description": "Typescript wrapper for Firestore documents",
|
|
5
|
-
"version": "0.12.
|
|
5
|
+
"version": "0.12.2",
|
|
6
6
|
"author": "Jake Hartman",
|
|
7
7
|
"license": "MIT",
|
|
8
8
|
"homepage": "https://github.com/jakes-space/firetender",
|
|
@@ -38,35 +38,36 @@
|
|
|
38
38
|
"prettier:fix": "prettier --write src/*.ts src/**/*.ts",
|
|
39
39
|
"check": "npm run lint:check && npm run prettier:check",
|
|
40
40
|
"fix": "npm run lint:fix && npm run prettier:fix",
|
|
41
|
-
"
|
|
42
|
-
"test": "
|
|
41
|
+
"start-emulator": "firebase --config=./src/__tests__/firebase.json --project=firetender --only=firestore emulators:start",
|
|
42
|
+
"test": "firebase --config=./src/__tests__/firebase.json --project=firetender --only=firestore emulators:exec ./src/__tests__/run-tests.sh",
|
|
43
|
+
"test:manual": "./src/__tests__/run-tests.sh",
|
|
43
44
|
"prepare": "husky install",
|
|
44
45
|
"clean": "rm -rf dist/*",
|
|
45
46
|
"build": "npm run clean && tsc && rm -rf dist/__tests__",
|
|
46
47
|
"prepublishOnly": "npm run check && npm run test && npm run build"
|
|
47
48
|
},
|
|
48
49
|
"dependencies": {
|
|
49
|
-
"firebase-admin": "^11.
|
|
50
|
-
"zod": "^3.
|
|
50
|
+
"firebase-admin": "^11.10.1",
|
|
51
|
+
"zod": "^3.21.4"
|
|
51
52
|
},
|
|
52
53
|
"devDependencies": {
|
|
53
|
-
"@firebase/rules-unit-testing": "^
|
|
54
|
-
"@rushstack/eslint-patch": "^1.2
|
|
55
|
-
"@types/jest": "^29.
|
|
56
|
-
"@typescript-eslint/eslint-plugin": "^
|
|
57
|
-
"@typescript-eslint/parser": "^
|
|
58
|
-
"eslint": "^8.
|
|
59
|
-
"eslint-config-prettier": "^8.
|
|
60
|
-
"eslint-import-resolver-typescript": "^3.5.
|
|
54
|
+
"@firebase/rules-unit-testing": "^3.0.0",
|
|
55
|
+
"@rushstack/eslint-patch": "^1.3.2",
|
|
56
|
+
"@types/jest": "^29.5.3",
|
|
57
|
+
"@typescript-eslint/eslint-plugin": "^6.1.0",
|
|
58
|
+
"@typescript-eslint/parser": "^6.1.0",
|
|
59
|
+
"eslint": "^8.45.0",
|
|
60
|
+
"eslint-config-prettier": "^8.8.0",
|
|
61
|
+
"eslint-import-resolver-typescript": "^3.5.5",
|
|
61
62
|
"eslint-plugin-import": "^2.27.5",
|
|
62
|
-
"eslint-plugin-prettier": "^
|
|
63
|
+
"eslint-plugin-prettier": "^5.0.0",
|
|
63
64
|
"eslint-plugin-simple-import-sort": "^10.0.0",
|
|
64
|
-
"firebase-admin": "^11.
|
|
65
|
+
"firebase-admin": "^11.10.1",
|
|
65
66
|
"husky": "^8.0.3",
|
|
66
|
-
"jest": "^29.
|
|
67
|
-
"prettier": "^
|
|
68
|
-
"ts-jest": "^29.
|
|
69
|
-
"tslib": "^2.
|
|
70
|
-
"typescript": "^
|
|
67
|
+
"jest": "^29.6.1",
|
|
68
|
+
"prettier": "^3.0.0",
|
|
69
|
+
"ts-jest": "^29.1.1",
|
|
70
|
+
"tslib": "^2.6.0",
|
|
71
|
+
"typescript": "^5.1.6"
|
|
71
72
|
}
|
|
72
|
-
}
|
|
73
|
+
}
|
|
@@ -273,7 +273,7 @@ export class FiretenderCollection<SchemaType extends z.SomeZodObject> {
|
|
|
273
273
|
* collection's documents. Patchers can also be passed in the options
|
|
274
274
|
* argument of this class's constructor.
|
|
275
275
|
*/
|
|
276
|
-
patch(patcher: (data: DeepPartial<z.input<SchemaType>>) => boolean) {
|
|
276
|
+
patch(patcher: (data: DeepPartial<z.input<SchemaType>>) => boolean): void {
|
|
277
277
|
if (!this.defaultDocOptions.patchers) {
|
|
278
278
|
this.defaultDocOptions.patchers = [patcher];
|
|
279
279
|
} else {
|
package/src/FiretenderDoc.ts
CHANGED
|
@@ -5,6 +5,7 @@ import {
|
|
|
5
5
|
FiretenderInternalError,
|
|
6
6
|
FiretenderIOError,
|
|
7
7
|
FiretenderUsageError,
|
|
8
|
+
NullTimestampError,
|
|
8
9
|
} from "./errors";
|
|
9
10
|
import {
|
|
10
11
|
addDoc,
|
|
@@ -13,6 +14,8 @@ import {
|
|
|
13
14
|
doc,
|
|
14
15
|
DocumentReference,
|
|
15
16
|
DocumentSnapshot,
|
|
17
|
+
FirebaseError,
|
|
18
|
+
FirestoreError,
|
|
16
19
|
getDoc,
|
|
17
20
|
onSnapshot,
|
|
18
21
|
setDoc,
|
|
@@ -399,14 +402,14 @@ export class FiretenderDoc<SchemaType extends z.SomeZodObject> {
|
|
|
399
402
|
}
|
|
400
403
|
}
|
|
401
404
|
this.resolvesWaitingForLoad = [];
|
|
402
|
-
let snapshot: DocumentSnapshot;
|
|
405
|
+
let snapshot: DocumentSnapshot | undefined;
|
|
403
406
|
if (options.listen) {
|
|
404
407
|
const callback =
|
|
405
408
|
typeof options.listen === "function" ? options.listen : undefined;
|
|
406
409
|
const listener = (
|
|
407
410
|
newSnapshot: DocumentSnapshot,
|
|
408
411
|
initialResolve: (ns: DocumentSnapshot) => void
|
|
409
|
-
) => {
|
|
412
|
+
): void => {
|
|
410
413
|
if (!this.detachListener) {
|
|
411
414
|
initialResolve(newSnapshot);
|
|
412
415
|
return;
|
|
@@ -445,13 +448,21 @@ export class FiretenderDoc<SchemaType extends z.SomeZodObject> {
|
|
|
445
448
|
try {
|
|
446
449
|
snapshot = await getDoc(this.ref);
|
|
447
450
|
} catch (error) {
|
|
448
|
-
|
|
449
|
-
|
|
451
|
+
if (
|
|
452
|
+
(error instanceof FirestoreError || error instanceof FirebaseError) &&
|
|
453
|
+
(error.code === "not-found" || error.code === "permission-denied")
|
|
454
|
+
) {
|
|
455
|
+
// Not found and permission errors are handled below; snapshot is left
|
|
456
|
+
// undefined.
|
|
457
|
+
} else {
|
|
458
|
+
addContextToError(error, "getDoc", this.ref);
|
|
459
|
+
throw error;
|
|
460
|
+
}
|
|
450
461
|
}
|
|
451
462
|
}
|
|
452
|
-
if (!snapshotExists(snapshot)) {
|
|
463
|
+
if (!snapshot || !snapshotExists(snapshot)) {
|
|
453
464
|
const error = new FiretenderIOError(
|
|
454
|
-
`Document does not exist: "${this.ref.path}"`
|
|
465
|
+
`Document does not exist or insufficient permissions: "${this.ref.path}"`
|
|
455
466
|
);
|
|
456
467
|
this.resolvesWaitingForLoad.forEach((wait) => wait.reject(error));
|
|
457
468
|
throw error;
|
|
@@ -465,7 +476,7 @@ export class FiretenderDoc<SchemaType extends z.SomeZodObject> {
|
|
|
465
476
|
/**
|
|
466
477
|
* Stops listening to the remote doc for changes.
|
|
467
478
|
*/
|
|
468
|
-
stopListening() {
|
|
479
|
+
stopListening(): void {
|
|
469
480
|
if (this.detachListener) {
|
|
470
481
|
this.detachListener();
|
|
471
482
|
this.detachListener = undefined;
|
|
@@ -591,7 +602,9 @@ export class FiretenderDoc<SchemaType extends z.SomeZodObject> {
|
|
|
591
602
|
*/
|
|
592
603
|
async update(mutator: (data: z.infer<SchemaType>) => void): Promise<this> {
|
|
593
604
|
this.throwIfReadonly();
|
|
594
|
-
|
|
605
|
+
if (!this.data) {
|
|
606
|
+
await this.load();
|
|
607
|
+
}
|
|
595
608
|
mutator(this.w);
|
|
596
609
|
await this.write();
|
|
597
610
|
return this;
|
|
@@ -600,7 +613,7 @@ export class FiretenderDoc<SchemaType extends z.SomeZodObject> {
|
|
|
600
613
|
//////////////////////////////////////////////////////////////////////////////
|
|
601
614
|
// Private functions
|
|
602
615
|
|
|
603
|
-
private throwIfReadonly() {
|
|
616
|
+
private throwIfReadonly(): void {
|
|
604
617
|
if (this.isReadonly) {
|
|
605
618
|
throw new FiretenderUsageError(
|
|
606
619
|
`An attempt was made to modify or write a read-only doc: ${this.docID}`
|
|
@@ -613,7 +626,10 @@ export class FiretenderDoc<SchemaType extends z.SomeZodObject> {
|
|
|
613
626
|
* not called from a listener, the patched data may be written to Firestore
|
|
614
627
|
* after a delay.
|
|
615
628
|
*/
|
|
616
|
-
private loadFromSnapshot(
|
|
629
|
+
private loadFromSnapshot(
|
|
630
|
+
snapshot: DocumentSnapshot,
|
|
631
|
+
isListener = false
|
|
632
|
+
): boolean {
|
|
617
633
|
const data = snapshot.data();
|
|
618
634
|
if (!data) {
|
|
619
635
|
// I'm not sure why this ever happens given that the snapshot claims to
|
|
@@ -639,7 +655,21 @@ export class FiretenderDoc<SchemaType extends z.SomeZodObject> {
|
|
|
639
655
|
}
|
|
640
656
|
}
|
|
641
657
|
}
|
|
642
|
-
|
|
658
|
+
let parsedData: z.infer<SchemaType>;
|
|
659
|
+
try {
|
|
660
|
+
parsedData = this.schema.parse(data);
|
|
661
|
+
} catch (error) {
|
|
662
|
+
if (error instanceof NullTimestampError) {
|
|
663
|
+
// We are almost certainly in a listener, receiving the first snapshot
|
|
664
|
+
// update of a timestamp being set to serverTimestamp(). Ignore it.
|
|
665
|
+
// There will be another snapshot momentarily with the proper time.
|
|
666
|
+
//
|
|
667
|
+
// See https://stackoverflow.com/questions/64287252/ for background.
|
|
668
|
+
return false;
|
|
669
|
+
}
|
|
670
|
+
throw error; // Rethrow otherwise.
|
|
671
|
+
}
|
|
672
|
+
this.data = parsedData;
|
|
643
673
|
// Dereference the old proxy to force a recapture of data.
|
|
644
674
|
this.dataProxy = undefined;
|
|
645
675
|
return true;
|
package/src/errors.ts
CHANGED
|
@@ -19,6 +19,15 @@ export class FiretenderUsageError extends FiretenderError {}
|
|
|
19
19
|
*/
|
|
20
20
|
export class FiretenderInternalError extends FiretenderError {}
|
|
21
21
|
|
|
22
|
+
/**
|
|
23
|
+
* Thrown to signal that a `timestampSchema` field was set to null. This
|
|
24
|
+
* happens when listening to a timestamp being set to the server time. See
|
|
25
|
+
* https://stackoverflow.com/questions/64287252/ for background.
|
|
26
|
+
*
|
|
27
|
+
* This error is only used internally.
|
|
28
|
+
*/
|
|
29
|
+
export class NullTimestampError extends FiretenderError {}
|
|
30
|
+
|
|
22
31
|
/**
|
|
23
32
|
* Adds a "firetenderContext" property to the given error.
|
|
24
33
|
*
|
|
@@ -33,7 +42,7 @@ export function addContextToError(
|
|
|
33
42
|
call: string,
|
|
34
43
|
ref?: DocumentReference | CollectionReference,
|
|
35
44
|
data?: any
|
|
36
|
-
) {
|
|
45
|
+
): void {
|
|
37
46
|
if (typeof error !== "object") {
|
|
38
47
|
return;
|
|
39
48
|
}
|
|
@@ -5,6 +5,7 @@
|
|
|
5
5
|
* compatible with the v9 modular calls used by the web version.
|
|
6
6
|
*/
|
|
7
7
|
|
|
8
|
+
import { FirebaseError } from "@firebase/util";
|
|
8
9
|
import {
|
|
9
10
|
CollectionGroup,
|
|
10
11
|
CollectionReference,
|
|
@@ -19,6 +20,7 @@ import {
|
|
|
19
20
|
UpdateData,
|
|
20
21
|
WithFieldValue,
|
|
21
22
|
} from "@google-cloud/firestore";
|
|
23
|
+
import { FirestoreError } from "firebase/firestore";
|
|
22
24
|
|
|
23
25
|
export const FIRESTORE_DEPS_TYPE: "web" | "admin" = "admin";
|
|
24
26
|
|
|
@@ -26,7 +28,9 @@ export {
|
|
|
26
28
|
CollectionReference,
|
|
27
29
|
DocumentReference,
|
|
28
30
|
DocumentSnapshot,
|
|
31
|
+
FirebaseError,
|
|
29
32
|
Firestore,
|
|
33
|
+
FirestoreError,
|
|
30
34
|
Query,
|
|
31
35
|
QuerySnapshot,
|
|
32
36
|
Timestamp,
|
|
@@ -39,11 +43,12 @@ export const arrayRemove = FieldValue.arrayRemove;
|
|
|
39
43
|
export const deleteField = FieldValue.delete;
|
|
40
44
|
export const serverTimestamp = FieldValue.serverTimestamp;
|
|
41
45
|
|
|
42
|
-
export const isServerTimestamp = (x: any) => x instanceof FieldValue;
|
|
46
|
+
export const isServerTimestamp = (x: any): boolean => x instanceof FieldValue;
|
|
43
47
|
|
|
44
48
|
// DocumentSnapshot.prototype.exists is a function for "firebase/firestore" and
|
|
45
49
|
// a boolean for "firebase-admin/firestore".
|
|
46
|
-
export const snapshotExists = (snapshot: DocumentSnapshot) =>
|
|
50
|
+
export const snapshotExists = (snapshot: DocumentSnapshot): boolean =>
|
|
51
|
+
snapshot.exists;
|
|
47
52
|
|
|
48
53
|
export const addDoc = <T>(
|
|
49
54
|
ref: CollectionReference<T>,
|
|
@@ -6,13 +6,15 @@
|
|
|
6
6
|
|
|
7
7
|
import { DocumentSnapshot } from "firebase/firestore";
|
|
8
8
|
|
|
9
|
+
export { FirebaseError } from "firebase/app";
|
|
9
10
|
export * from "firebase/firestore";
|
|
10
11
|
|
|
11
12
|
export const FIRESTORE_DEPS_TYPE: "web" | "admin" = "web";
|
|
12
13
|
|
|
13
14
|
// DocumentSnapshot.prototype.exists is a function for "firebase/firestore" and
|
|
14
15
|
// a boolean for "firebase-admin/firestore".
|
|
15
|
-
export const snapshotExists = (snapshot: DocumentSnapshot) =>
|
|
16
|
+
export const snapshotExists = (snapshot: DocumentSnapshot): boolean =>
|
|
17
|
+
snapshot.exists();
|
|
16
18
|
|
|
17
|
-
export const isServerTimestamp = (data: any) =>
|
|
18
|
-
data._methodName === "serverTimestamp";
|
|
19
|
+
export const isServerTimestamp = (data: any): boolean =>
|
|
20
|
+
!!data && data._methodName === "serverTimestamp";
|
package/src/firestore-deps.ts
CHANGED
|
@@ -5,6 +5,7 @@
|
|
|
5
5
|
* compatible with the v9 modular calls used by the web version.
|
|
6
6
|
*/
|
|
7
7
|
|
|
8
|
+
import { FirebaseError } from "@firebase/util";
|
|
8
9
|
import {
|
|
9
10
|
CollectionGroup,
|
|
10
11
|
CollectionReference,
|
|
@@ -19,6 +20,7 @@ import {
|
|
|
19
20
|
UpdateData,
|
|
20
21
|
WithFieldValue,
|
|
21
22
|
} from "@google-cloud/firestore";
|
|
23
|
+
import { FirestoreError } from "firebase/firestore";
|
|
22
24
|
|
|
23
25
|
export const FIRESTORE_DEPS_TYPE: "web" | "admin" = "admin";
|
|
24
26
|
|
|
@@ -26,7 +28,9 @@ export {
|
|
|
26
28
|
CollectionReference,
|
|
27
29
|
DocumentReference,
|
|
28
30
|
DocumentSnapshot,
|
|
31
|
+
FirebaseError,
|
|
29
32
|
Firestore,
|
|
33
|
+
FirestoreError,
|
|
30
34
|
Query,
|
|
31
35
|
QuerySnapshot,
|
|
32
36
|
Timestamp,
|
|
@@ -39,11 +43,12 @@ export const arrayRemove = FieldValue.arrayRemove;
|
|
|
39
43
|
export const deleteField = FieldValue.delete;
|
|
40
44
|
export const serverTimestamp = FieldValue.serverTimestamp;
|
|
41
45
|
|
|
42
|
-
export const isServerTimestamp = (x: any) => x instanceof FieldValue;
|
|
46
|
+
export const isServerTimestamp = (x: any): boolean => x instanceof FieldValue;
|
|
43
47
|
|
|
44
48
|
// DocumentSnapshot.prototype.exists is a function for "firebase/firestore" and
|
|
45
49
|
// a boolean for "firebase-admin/firestore".
|
|
46
|
-
export const snapshotExists = (snapshot: DocumentSnapshot) =>
|
|
50
|
+
export const snapshotExists = (snapshot: DocumentSnapshot): boolean =>
|
|
51
|
+
snapshot.exists;
|
|
47
52
|
|
|
48
53
|
export const addDoc = <T>(
|
|
49
54
|
ref: CollectionReference<T>,
|
package/src/proxy.ts
CHANGED
|
@@ -38,7 +38,7 @@ const PROXY_TARGET_SYMBOL = Symbol("proxy_target");
|
|
|
38
38
|
*/
|
|
39
39
|
export function watchForChanges<
|
|
40
40
|
FieldSchemaType extends z.ZodTypeAny,
|
|
41
|
-
ArrayElementType
|
|
41
|
+
ArrayElementType,
|
|
42
42
|
>(
|
|
43
43
|
updatePath: string[],
|
|
44
44
|
fieldSchema: FieldSchemaType,
|
|
@@ -50,7 +50,7 @@ export function watchForChanges<
|
|
|
50
50
|
get(target, propertyKey): any {
|
|
51
51
|
const property = target[propertyKey];
|
|
52
52
|
if (property instanceof Function) {
|
|
53
|
-
const result = (...args: any[]) => property.apply(field, args);
|
|
53
|
+
const result = (...args: any[]): any => property.apply(field, args);
|
|
54
54
|
if (arrayAncestor) {
|
|
55
55
|
// All methods of an array or its children are presumed to make
|
|
56
56
|
// modifications, thus triggering an update of the full array.
|
|
@@ -220,9 +220,10 @@ function getPropertySchema(
|
|
|
220
220
|
case z.ZodFirstPartyTypeKind.ZodObject:
|
|
221
221
|
return schema.shape[propertyKey];
|
|
222
222
|
case z.ZodFirstPartyTypeKind.ZodDiscriminatedUnion:
|
|
223
|
-
|
|
223
|
+
schema = (schema as any).optionsMap.get(
|
|
224
224
|
parent[(schema as any).discriminator]
|
|
225
225
|
);
|
|
226
|
+
continue;
|
|
226
227
|
// If the parent is of type ZodAny, so are its properties.
|
|
227
228
|
case z.ZodFirstPartyTypeKind.ZodAny:
|
|
228
229
|
return z.any();
|
package/src/timestamps.ts
CHANGED
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import { z } from "zod";
|
|
2
2
|
|
|
3
|
+
import { NullTimestampError } from "./errors";
|
|
3
4
|
import {
|
|
4
5
|
isServerTimestamp,
|
|
5
6
|
serverTimestamp as firestoreServerTimestamp,
|
|
@@ -10,9 +11,12 @@ import {
|
|
|
10
11
|
* Timestamp representation used by Firestore: seconds and nanoseconds since the
|
|
11
12
|
* epoch.
|
|
12
13
|
*/
|
|
13
|
-
export const timestampSchema = z.custom<Timestamp>(
|
|
14
|
-
(data
|
|
15
|
-
);
|
|
14
|
+
export const timestampSchema = z.custom<Timestamp>((data: any) => {
|
|
15
|
+
if (data === null) {
|
|
16
|
+
throw new NullTimestampError();
|
|
17
|
+
}
|
|
18
|
+
return data instanceof Timestamp || isServerTimestamp(data);
|
|
19
|
+
});
|
|
16
20
|
|
|
17
21
|
/**
|
|
18
22
|
* Returns a Firestore Timestamp for some future date. The result is typically
|
|
@@ -33,7 +37,7 @@ export function futureTimestamp(interval: {
|
|
|
33
37
|
minutes?: number;
|
|
34
38
|
seconds?: number;
|
|
35
39
|
millis?: number;
|
|
36
|
-
}) {
|
|
40
|
+
}): Timestamp {
|
|
37
41
|
let utcMillis = Date.now();
|
|
38
42
|
if (interval.days) utcMillis += interval.days * 24 * 60 * 60 * 1000;
|
|
39
43
|
if (interval.hours) utcMillis += interval.hours * 60 * 60 * 1000;
|