UNPKG

firestore-in-memory

Version:

A drop-in, in-memory implementation of Firestore useful for testing

35 lines (28 loc) 940 B
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.default = void 0; var _splitNextDocRef = _interopRequireDefault(require("./splitNextDocRef")); var _getChild = _interopRequireDefault(require("./getChild")); function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } /* eslint-disable no-param-reassign */ const setDocument = (fsDocument, createMockFirestoreDocument) => (ref, data) => { const { refName, remainingRef } = (0, _splitNextDocRef.default)(ref); const child = (0, _getChild.default)(fsDocument, createMockFirestoreDocument, { exists: true }, refName); fsDocument.children = { ...fsDocument.children, [refName]: child }; if (remainingRef) { setDocument(child, createMockFirestoreDocument)(remainingRef, data); } else { child.documentData = data; } }; var _default = setDocument; exports.default = _default;