@taraai/read-write
Version:
Synchronous NoSQL/Firestore for React
35 lines (27 loc) • 1.04 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.default = reduxFirestore;
exports.getFirestore = getFirestore;
var _constants = require("./constants");
var _createFirestoreInstance = _interopRequireDefault(require("./createFirestoreInstance"));
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
let firestoreInstance;
function reduxFirestore(firebaseInstance, otherConfig) {
return next => (reducer, initialState, middleware) => {
const store = next(reducer, initialState, middleware);
const configs = { ..._constants.defaultConfig,
...otherConfig
};
firestoreInstance = (0, _createFirestoreInstance.default)(firebaseInstance.firebase_ || firebaseInstance, configs, store.dispatch);
store.firestore = firestoreInstance;
return store;
};
}
function getFirestore() {
if (!firestoreInstance) {
throw new Error('Firebase instance does not yet exist. Check your compose function.');
}
return firestoreInstance;
}