UNPKG

nedux-persist

Version:

the next redux state management

2 lines (1 loc) 461 B
const e="@nedux-persist",s=(s,{storage:t=localStorage,version:o=""}={})=>r=>{const i=s=>{let i=!1;r.subscribe(s,async a=>{if(i)null!=a?((s,r)=>Promise.resolve(t.setItem(`${e}-${o}:${s}`,JSON.stringify(r))))(s,a):(s=>Promise.resolve(t.removeItem(`${e}-${o}:${s}`)))(s);else{i=!0;const a=await(async s=>JSON.parse(await Promise.resolve(t.getItem(`${e}-${o}:${s}`))))(s);null!==a&&r.set(s,a)}},{withInitialValue:!0})};s.forEach(e=>i(e))};export{s as persistKeys};