elmskell/assets/js/init.js

19 lines
648 B
JavaScript

const flags =
{ Theme: storedObject('Theme')
, Prompt: storedObject('Prompt')
, Font: storedObject('Font')
, CookiesStored: storedObject('CookiesStored')
}
console.log(flags);
app = Elm.Main.init({flags:flags});
console.log(storedObject('cookies'));
app.ports.setStorage.subscribe(function(kc){const [k,c]=kc;localStorage.setItem(k,JSON.stringify(c))});
app.ports.getStorage.subscribe(function(k){
const n = k;
const d = storedObject(k);
const ret =
{ name: n
, data: d
};
app.ports.receiveStorageFromJS.send(ret)});
function storedObject(k) {return localStorage.getItem(k)?JSON.parse(localStorage.getItem(k)):null;};