@data-client/core
Version:
Async State Management without the Management. REST, GraphQL, SSE, Websockets, Fetch
16 lines • 1.94 kB
JavaScript
import _extends from "@babel/runtime/helpers/esm/extends";
export function expireReducer(state, action) {
const meta = _extends({}, state.meta);
Object.keys(meta).forEach(key => {
if (action.testKey(key)) {
meta[key] = _extends({}, meta[key], {
// 1 instead of 0 so we can do 'falsy' checks to see if it is set
expiresAt: 1
});
}
});
return _extends({}, state, {
meta
});
}
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJleHBpcmVSZWR1Y2VyIiwic3RhdGUiLCJhY3Rpb24iLCJtZXRhIiwiX2V4dGVuZHMiLCJPYmplY3QiLCJrZXlzIiwiZm9yRWFjaCIsImtleSIsInRlc3RLZXkiLCJleHBpcmVzQXQiXSwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvc3RhdGUvcmVkdWNlci9leHBpcmVSZWR1Y2VyLnRzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB0eXBlIHsgU3RhdGUsIEV4cGlyZUFsbEFjdGlvbiB9IGZyb20gJy4uLy4uL3R5cGVzLmpzJztcblxuZXhwb3J0IGZ1bmN0aW9uIGV4cGlyZVJlZHVjZXIoc3RhdGU6IFN0YXRlPHVua25vd24+LCBhY3Rpb246IEV4cGlyZUFsbEFjdGlvbikge1xuICBjb25zdCBtZXRhID0geyAuLi5zdGF0ZS5tZXRhIH07XG5cbiAgT2JqZWN0LmtleXMobWV0YSkuZm9yRWFjaChrZXkgPT4ge1xuICAgIGlmIChhY3Rpb24udGVzdEtleShrZXkpKSB7XG4gICAgICBtZXRhW2tleV0gPSB7XG4gICAgICAgIC4uLm1ldGFba2V5XSxcbiAgICAgICAgLy8gMSBpbnN0ZWFkIG9mIDAgc28gd2UgY2FuIGRvICdmYWxzeScgY2hlY2tzIHRvIHNlZSBpZiBpdCBpcyBzZXRcbiAgICAgICAgZXhwaXJlc0F0OiAxLFxuICAgICAgfTtcbiAgICB9XG4gIH0pO1xuXG4gIHJldHVybiB7XG4gICAgLi4uc3RhdGUsXG4gICAgbWV0YSxcbiAgfTtcbn1cbiJdLCJtYXBwaW5ncyI6IjtBQUVBLE9BQU8sU0FBU0EsYUFBYUEsQ0FBQ0MsS0FBcUIsRUFBRUMsTUFBdUIsRUFBRTtFQUM1RSxNQUFNQyxJQUFJLEdBQUFDLFFBQUEsS0FBUUgsS0FBSyxDQUFDRSxJQUFJLENBQUU7RUFFOUJFLE1BQU0sQ0FBQ0MsSUFBSSxDQUFDSCxJQUFJLENBQUMsQ0FBQ0ksT0FBTyxDQUFDQyxHQUFHLElBQUk7SUFDL0IsSUFBSU4sTUFBTSxDQUFDTyxPQUFPLENBQUNELEdBQUcsQ0FBQyxFQUFFO01BQ3ZCTCxJQUFJLENBQUNLLEdBQUcsQ0FBQyxHQUFBSixRQUFBLEtBQ0pELElBQUksQ0FBQ0ssR0FBRyxDQUFDO1FBQ1o7UUFDQUUsU0FBUyxFQUFFO01BQUMsRUFDYjtJQUNIO0VBQ0YsQ0FBQyxDQUFDO0VBRUYsT0FBQU4sUUFBQSxLQUNLSCxLQUFLO0lBQ1JFO0VBQUk7QUFFUiIsImlnbm9yZUxpc3QiOltdfQ==