firesage
Version:
🔥 Extremely High Precision Typescript Wrapper for Firestore Web, Providing Unparalleled Type Safe and Dev Experience
24 lines (23 loc) • 993 B
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
exports.onSnapshot = exports.isOptions = void 0;
var firestore_1 = require("firebase/firestore");
var isOptions = function (arg) {
var v = arg;
return (v === null || v === void 0 ? void 0 : v.includeMetadataChanges) !== undefined; // includeMetadataChanges is boolean, so check for undefined
};
exports.isOptions = isOptions;
var onSnapshot = function (reference, onNext, onError, options) {
var newOnError = (0, exports.isOptions)(onError) ? undefined : onError;
var newOptions = options || ((0, exports.isOptions)(onError) ? onError : undefined);
return newOptions
? (0, firestore_1.onSnapshot)(reference, newOptions, {
// @ts-expect-error
next: onNext,
error: newOnError,
})
: (0, firestore_1.onSnapshot)(reference,
// @ts-expect-error
onNext, newOnError);
};
exports.onSnapshot = onSnapshot;