dOrgTech/DAOcreator

`initStateStore` - Don't Assume LocalStorage

Open

#243 opened on Nov 17, 2019

 (0 comments) (0 reactions) (0 assignees)TypeScript (18 forks)auto 404
Libcode improvementgood first issuemed pri

Repository metrics

Stars
 (34 stars)
PR merge metrics
 (PR metrics pending)

Description

Currently we've hard-coded our state persistence into the UI layer and are using the localStorage of the browser. We should instead be making API calls into the Lib layer, and using an interface the implementer of the library supplies upon initialization.

For example:

import { initStateStore } from "lib/state";

// localStorage in browser, file in CLI
setStateStore({
  getItem: (key: string) => { ... },
  setItem: (key: string, value: string) => { ... },
  clearItem: (key: string) => { ... }
});

// later in the application
getSavedDAO();
saveDAO(dao);

Contributor guide