UNPKG

@ema/js-base-library

Version:

This library was generated with [Angular CLI](https://github.com/angular/angular-cli) version 7.2.0.

77 lines 6.35 kB
/** * @fileoverview added by tsickle * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc */ var Storage = /** @class */ (function () { function Storage() { } /** * @param {?} model * @param {?=} modelName * @return {?} */ Storage.saveLocalModel = /** * @param {?} model * @param {?=} modelName * @return {?} */ function (model, modelName) { if (modelName === void 0) { modelName = 'model'; } if (typeof window !== 'undefined' && window.localStorage) { // window.localStorage.setItem(modelName , btoa(JSON.stringify(model))); window.localStorage.setItem(modelName, JSON.stringify(model)); window.localStorage.setItem(modelName + '-changed', String(Math.round(+new Date() / 1000))); } else { console.error('localStorage not available: not running in a browser'); } }; ; /** * @param {?=} modelName * @return {?} */ Storage.restoreLocalModel = /** * @param {?=} modelName * @return {?} */ function (modelName) { if (modelName === void 0) { modelName = 'model'; } if (typeof window !== 'undefined' && window.localStorage) { if (localStorage.getItem(modelName)) { // return JSON.parse(atob(localStorage.getItem(modelName))); return JSON.parse(localStorage.getItem(modelName)); } } else { console.error('localStorage not available: not running in a browser'); } }; ; /** * @param {?=} modelName * @return {?} */ Storage.flushLocalModel = /** * @param {?=} modelName * @return {?} */ function (modelName) { if (modelName === void 0) { modelName = 'model'; } if (typeof window !== 'undefined' && window.localStorage) { if (localStorage.getItem(modelName)) { localStorage.removeItem(modelName); } if (localStorage.getItem(modelName + '-changed')) { localStorage.removeItem(modelName + '-changed'); } } else { console.error('localStorage not available: not running in a browser'); } }; ; return Storage; }()); export { Storage }; //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3RvcmFnZS5qcyIsInNvdXJjZVJvb3QiOiJuZzovL0BlbWEvanMtYmFzZS1saWJyYXJ5LyIsInNvdXJjZXMiOlsibGliL3V0aWxzL3N0b3JhZ2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7OztBQUFBO0lBQUE7SUFvQ0EsQ0FBQzs7Ozs7O0lBbENVLHNCQUFjOzs7OztJQUFyQixVQUFzQixLQUFVLEVBQUUsU0FBMkI7UUFBM0IsMEJBQUEsRUFBQSxtQkFBMkI7UUFDekQsSUFBSSxPQUFPLE1BQU0sS0FBSyxXQUFXLElBQUksTUFBTSxDQUFDLFlBQVksRUFBRTtZQUN0RCx3RUFBd0U7WUFDeEUsTUFBTSxDQUFDLFlBQVksQ0FBQyxPQUFPLENBQUMsU0FBUyxFQUFHLElBQUksQ0FBQyxTQUFTLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQztZQUMvRCxNQUFNLENBQUMsWUFBWSxDQUFDLE9BQU8sQ0FBQyxTQUFTLEdBQUcsVUFBVSxFQUFFLE1BQU0sQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUMsSUFBSSxJQUFJLEVBQUUsR0FBRyxJQUFJLENBQUMsQ0FBQyxDQUFDLENBQUM7U0FDL0Y7YUFBTTtZQUNILE9BQU8sQ0FBQyxLQUFLLENBQUMsc0RBQXNELENBQUMsQ0FBQztTQUN6RTtJQUNMLENBQUM7SUFBQSxDQUFDOzs7OztJQUVLLHlCQUFpQjs7OztJQUF4QixVQUF5QixTQUEyQjtRQUEzQiwwQkFBQSxFQUFBLG1CQUEyQjtRQUNoRCxJQUFJLE9BQU8sTUFBTSxLQUFLLFdBQVcsSUFBSSxNQUFNLENBQUMsWUFBWSxFQUFFO1lBQ3RELElBQUksWUFBWSxDQUFDLE9BQU8sQ0FBQyxTQUFTLENBQUMsRUFBRTtnQkFDakMsNERBQTREO2dCQUM1RCxPQUFPLElBQUksQ0FBQyxLQUFLLENBQUMsWUFBWSxDQUFDLE9BQU8sQ0FBQyxTQUFTLENBQUMsQ0FBQyxDQUFDO2FBQ3REO1NBQ0o7YUFBTTtZQUNILE9BQU8sQ0FBQyxLQUFLLENBQUMsc0RBQXNELENBQUMsQ0FBQztTQUN6RTtJQUNMLENBQUM7SUFBQSxDQUFDOzs7OztJQUVLLHVCQUFlOzs7O0lBQXRCLFVBQXVCLFNBQTJCO1FBQTNCLDBCQUFBLEVBQUEsbUJBQTJCO1FBQzlDLElBQUksT0FBTyxNQUFNLEtBQUssV0FBVyxJQUFJLE1BQU0sQ0FBQyxZQUFZLEVBQUU7WUFDdEQsSUFBSSxZQUFZLENBQUMsT0FBTyxDQUFDLFNBQVMsQ0FBQyxFQUFFO2dCQUNqQyxZQUFZLENBQUMsVUFBVSxDQUFDLFNBQVMsQ0FBQyxDQUFDO2FBQ3RDO1lBQ0QsSUFBSSxZQUFZLENBQUMsT0FBTyxDQUFDLFNBQVMsR0FBRyxVQUFVLENBQUMsRUFBRTtnQkFDOUMsWUFBWSxDQUFDLFVBQVUsQ0FBQyxTQUFTLEdBQUcsVUFBVSxDQUFDLENBQUM7YUFDbkQ7U0FDSjthQUFNO1lBQ0gsT0FBTyxDQUFDLEtBQUssQ0FBQyxzREFBc0QsQ0FBQyxDQUFDO1NBQ3pFO0lBQ0wsQ0FBQztJQUFBLENBQUM7SUFFTixjQUFDO0FBQUQsQ0FBQyxBQXBDRCxJQW9DQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCBjbGFzcyBTdG9yYWdlIHtcblxuICAgIHN0YXRpYyBzYXZlTG9jYWxNb2RlbChtb2RlbDogYW55LCBtb2RlbE5hbWU6IHN0cmluZyA9ICdtb2RlbCcpIHtcbiAgICAgICAgaWYgKHR5cGVvZiB3aW5kb3cgIT09ICd1bmRlZmluZWQnICYmIHdpbmRvdy5sb2NhbFN0b3JhZ2UpIHtcbiAgICAgICAgICAgIC8vIHdpbmRvdy5sb2NhbFN0b3JhZ2Uuc2V0SXRlbShtb2RlbE5hbWUgLCBidG9hKEpTT04uc3RyaW5naWZ5KG1vZGVsKSkpO1xuICAgICAgICAgICAgd2luZG93LmxvY2FsU3RvcmFnZS5zZXRJdGVtKG1vZGVsTmFtZSAsIEpTT04uc3RyaW5naWZ5KG1vZGVsKSk7XG4gICAgICAgICAgICB3aW5kb3cubG9jYWxTdG9yYWdlLnNldEl0ZW0obW9kZWxOYW1lICsgJy1jaGFuZ2VkJywgU3RyaW5nKE1hdGgucm91bmQoK25ldyBEYXRlKCkgLyAxMDAwKSkpO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgY29uc29sZS5lcnJvcignbG9jYWxTdG9yYWdlIG5vdCBhdmFpbGFibGU6IG5vdCBydW5uaW5nIGluIGEgYnJvd3NlcicpO1xuICAgICAgICB9XG4gICAgfTtcblxuICAgIHN0YXRpYyByZXN0b3JlTG9jYWxNb2RlbChtb2RlbE5hbWU6IHN0cmluZyA9ICdtb2RlbCcpIHtcbiAgICAgICAgaWYgKHR5cGVvZiB3aW5kb3cgIT09ICd1bmRlZmluZWQnICYmIHdpbmRvdy5sb2NhbFN0b3JhZ2UpIHtcbiAgICAgICAgICAgIGlmIChsb2NhbFN0b3JhZ2UuZ2V0SXRlbShtb2RlbE5hbWUpKSB7XG4gICAgICAgICAgICAgICAgLy8gcmV0dXJuIEpTT04ucGFyc2UoYXRvYihsb2NhbFN0b3JhZ2UuZ2V0SXRlbShtb2RlbE5hbWUpKSk7XG4gICAgICAgICAgICAgICAgcmV0dXJuIEpTT04ucGFyc2UobG9jYWxTdG9yYWdlLmdldEl0ZW0obW9kZWxOYW1lKSk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICBjb25zb2xlLmVycm9yKCdsb2NhbFN0b3JhZ2Ugbm90IGF2YWlsYWJsZTogbm90IHJ1bm5pbmcgaW4gYSBicm93c2VyJyk7XG4gICAgICAgIH1cbiAgICB9O1xuXG4gICAgc3RhdGljIGZsdXNoTG9jYWxNb2RlbChtb2RlbE5hbWU6IHN0cmluZyA9ICdtb2RlbCcpIHtcbiAgICAgICAgaWYgKHR5cGVvZiB3aW5kb3cgIT09ICd1bmRlZmluZWQnICYmIHdpbmRvdy5sb2NhbFN0b3JhZ2UpIHtcbiAgICAgICAgICAgIGlmIChsb2NhbFN0b3JhZ2UuZ2V0SXRlbShtb2RlbE5hbWUpKSB7XG4gICAgICAgICAgICAgICAgbG9jYWxTdG9yYWdlLnJlbW92ZUl0ZW0obW9kZWxOYW1lKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGlmIChsb2NhbFN0b3JhZ2UuZ2V0SXRlbShtb2RlbE5hbWUgKyAnLWNoYW5nZWQnKSkge1xuICAgICAgICAgICAgICAgIGxvY2FsU3RvcmFnZS5yZW1vdmVJdGVtKG1vZGVsTmFtZSArICctY2hhbmdlZCcpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgY29uc29sZS5lcnJvcignbG9jYWxTdG9yYWdlIG5vdCBhdmFpbGFibGU6IG5vdCBydW5uaW5nIGluIGEgYnJvd3NlcicpO1xuICAgICAgICB9XG4gICAgfTtcblxufVxuXG4iXX0=