{"name":"storage","master":false,"version":"1.0.0","description":"Storage","schemas":{"12fa8181ce127a0":{"_id":"12fa8181ce127a0","_name":"_Storage","_inherit":["_Component"],"_core":true,"store":"property","get":"method","set":"method","remove":"method","clear":"method","changed":"event"}},"models":{"1f4141671514c2c":{"_id":"1f4141671514c2c","_name":"_Storage","get":{"params":[{"name":"key","type":"string","mandatory":true,"default":""}]},"set":{"params":[{"name":"key","type":"string","mandatory":true,"default":""},{"name":"value","type":"any","mandatory":true,"default":null}]},"changed":{"params":[{"name":"obj","type":"object","mandatory":true,"default":{}}]},"clear":{},"remove":{"params":[{"name":"key","type":"string","mandatory":true,"default":""}]},"_core":true,"store":{"type":"object","readOnly":false,"mandatory":false,"default":{}}}},"behaviors":{"1ca0f1020412d4f":{"_id":"1ca0f1020412d4f","component":"_Storage","state":"get","action":"function get(key) {\n  var result = null;\n\n  if (typeof this.store()[key]) {\n    result = this.store()[key];\n  }\n  return result;\n}","useCoreAPI":false,"core":true},"16764100d51b5f8":{"_id":"16764100d51b5f8","component":"_Storage","state":"set","action":"function set(key, value) {\n  var store = this.store(),\n    item = {};\n\n  store[key] = value;\n  this.store(store);\n\n  item[key] = JSON.stringify(value);\n\n  try {\n    switch (true) {\n      case typeof localStorage !== 'undefined':\n        localStorage.setItem(key, JSON.stringify(value));\n        break;\n      default:\n        break;\n    }\n  } catch (e) { }\n}","useCoreAPI":false,"core":true},"134b616b1016f60":{"_id":"134b616b1016f60","component":"_Storage","state":"clear","action":"function clear() {\n  this.store({});\n  try {\n    switch (true) {\n      case typeof localStorage !== 'undefined':\n        localStorage.clear();\n        break;\n      default:\n        break;\n    }\n  } catch (e) { }\n}","useCoreAPI":false,"core":true},"14c7f1a8431b3d5":{"_id":"14c7f1a8431b3d5","component":"_Storage","state":"init","action":"function init(conf) {\n  try {\n    switch (true) {\n      case typeof localStorage !== 'undefined':\n        // init \n        var keys = Object.keys(localStorage),\n          store = {},\n          i = 0,\n          length = 0;\n\n        length = keys.length;\n        for (i = 0; i < length; i++) {\n          try {\n            store[keys[i]] = JSON.parse(localStorage[keys[i]]);\n          } catch (e) { }\n        }\n        this.store(store);\n\n        // event\n        window.addEventListener('storage', function (e) {\n          var obj = {},\n            store = this.store();\n\n          try {\n            store[e.key] = JSON.parse(e.newValue);\n            this.store(store);\n\n            obj[e.key] = {};\n            obj[e.key].oldValue = JSON.parse(e.oldValue);\n            obj[e.key].newValue = JSON.parse(e.newValue);\n\n            this.changed(obj);\n          } catch (e) { }\n        }.bind(this));\n        break;\n      default:\n        break;\n    }\n  } catch (e) { }\n}","useCoreAPI":false,"core":true},"1a4921ac7112bd4":{"_id":"1a4921ac7112bd4","component":"_Storage","state":"remove","action":"function remove(key) {\n  var store = this.store();\n\n  delete store[key];\n  this.store(store);\n\n  try {\n    switch (true) {\n      case typeof localStorage !== 'undefined':\n        localStorage.removeItem(key);\n        break;\n      default:\n        break;\n    }\n  } catch (e) { }\n}","useCoreAPI":false,"core":true}},"types":{},"components":{"_Storage":{"storage":{"_id":"storage","_core":true}}},"_id":"15de81d295153db"}