UNPKG

@coorpacademy/squirrel

Version:
44 lines (35 loc) 1.08 kB
"use strict"; exports.__esModule = true; exports.createWatchCommand = exports.createFetchCommand = exports.parseRangeResponse = exports.parseKeyValue = void 0; var _fp = require("lodash/fp"); const tryParse = v => { try { return JSON.parse(v); } catch (err) { return v; } }; const parseKeyValue = kv => { if (kv.create_revision === '0') return { key: kv.key.toString('utf8') }; return { key: kv.key.toString('utf8'), value: tryParse(kv.value.toString('utf8')), version: kv.mod_revision }; }; exports.parseKeyValue = parseKeyValue; const parseRangeResponse = (0, _fp.pipe)((0, _fp.get)('kvs'), (0, _fp.map)(parseKeyValue)); exports.parseRangeResponse = parseRangeResponse; const createFetchCommand = rangeResponse => ({ type: 'fetch', payload: parseRangeResponse(rangeResponse) }); exports.createFetchCommand = createFetchCommand; const createWatchCommand = keyValueResponse => ({ type: 'watch', payload: [parseKeyValue(keyValueResponse)] }); exports.createWatchCommand = createWatchCommand; //# sourceMappingURL=command.js.map