UNPKG

firestore-in-memory

Version:

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

33 lines (22 loc) 1.08 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.default = exports.getChild = void 0; var _curry = _interopRequireDefault(require("lodash/fp/curry")); var _flow = _interopRequireDefault(require("lodash/fp/flow")); var _get = _interopRequireDefault(require("lodash/fp/get")); function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } const childAccessor = name => (0, _flow.default)((0, _get.default)('children'), (0, _get.default)(name)); const getOrCreateChild = (fsDocument, createMockFirestoreDocument, { exists }, name) => fsDocument.__exists && childAccessor(name)(fsDocument) ? childAccessor(name)(fsDocument) : createMockFirestoreDocument(name, fsDocument, { isCollection: !fsDocument.isCollection, exists }); const getChild = (fsDocument, createMockFirestoreDocument) => name => getOrCreateChild(fsDocument, createMockFirestoreDocument, { exists: false }, name); exports.getChild = getChild; var _default = (0, _curry.default)(getOrCreateChild); exports.default = _default;