@wora/relay-store
Version:
@wora Relay Store
26 lines • 1.29 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
function createPersistedRecordSource(clientState) {
if (clientState === void 0) { clientState = {}; }
return createPersistedStorage('relay-records', clientState);
}
exports.createPersistedRecordSource = createPersistedRecordSource;
function createPersistedStore(clientState) {
if (clientState === void 0) { clientState = {}; }
return createPersistedStorage('relay-store', clientState);
}
exports.createPersistedStore = createPersistedStore;
function createPersistedStorage(prefix, clientState) {
if (clientState === void 0) { clientState = {}; }
var state = {};
Object.keys(clientState).forEach(function (key) { return (state[prefix + '.' + key] = JSON.stringify(clientState[key])); });
return {
getAllKeys: function () { return Promise.resolve(Object.keys(state)); },
setItem: function (_key, _value) { return Promise.resolve(); },
removeItem: function (key) { return Promise.resolve(delete state[key]); },
getItem: function (key) { return Promise.resolve(state[key]); },
getState: function () { return state; },
};
}
exports.createPersistedStorage = createPersistedStorage;
//# sourceMappingURL=utils.js.map