@coorpacademy/squirrel
Version:
Local mirror mecanism for ETCD
24 lines (19 loc) • 656 B
JavaScript
;
exports.__esModule = true;
exports.default = void 0;
var _fp = require("lodash/fp");
const buildIndex = records => indexName => {
return (0, _fp.reduce)((index, record) => {
const key = (0, _fp.get)(indexName, record.value);
return (0, _fp.set)([key], record, index);
}, {}, records);
};
const createIndexer = indexNames => store => {
const records = (0, _fp.values)(store);
return (0, _fp.reduce)((indexes, indexName) => {
return (0, _fp.set)([indexName], buildIndex(records)(indexName), indexes);
}, {}, indexNames);
};
var _default = createIndexer;
exports.default = _default;
//# sourceMappingURL=indexer.js.map