UNPKG

4.45 kBJavaScriptView Raw
1"use strict";
2
3var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
5Object.defineProperty(exports, "__esModule", {
6 value: true
7});
8exports["default"] = void 0;
9
10var _regenerator = _interopRequireDefault(require("@babel/runtime/regenerator"));
11
12var _asyncToGenerator2 = _interopRequireDefault(require("@babel/runtime/helpers/asyncToGenerator"));
13
14var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime/helpers/classCallCheck"));
15
16var _createClass2 = _interopRequireDefault(require("@babel/runtime/helpers/createClass"));
17
18var _get2 = _interopRequireDefault(require("@babel/runtime/helpers/get"));
19
20var _inherits2 = _interopRequireDefault(require("@babel/runtime/helpers/inherits"));
21
22var _possibleConstructorReturn2 = _interopRequireDefault(require("@babel/runtime/helpers/possibleConstructorReturn"));
23
24var _getPrototypeOf2 = _interopRequireDefault(require("@babel/runtime/helpers/getPrototypeOf"));
25
26var _get3 = _interopRequireDefault(require("lodash/get"));
27
28var _tryJSONparse = _interopRequireDefault(require("@lskjs/utils/tryJSONparse"));
29
30var _Storage2 = _interopRequireDefault(require("./Storage"));
31
32function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = (0, _getPrototypeOf2["default"])(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = (0, _getPrototypeOf2["default"])(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return (0, _possibleConstructorReturn2["default"])(this, result); }; }
33
34function _isNativeReflectConstruct() { if (typeof Reflect === "undefined" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === "function") return true; try { Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); return true; } catch (e) { return false; } }
35
36var LocalStorage = /*#__PURE__*/function (_Storage) {
37 (0, _inherits2["default"])(LocalStorage, _Storage);
38
39 var _super = _createSuper(LocalStorage);
40
41 function LocalStorage() {
42 (0, _classCallCheck2["default"])(this, LocalStorage);
43 return _super.apply(this, arguments);
44 }
45
46 (0, _createClass2["default"])(LocalStorage, [{
47 key: "init",
48 value: function () {
49 var _init = (0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function _callee() {
50 return _regenerator["default"].wrap(function _callee$(_context) {
51 while (1) {
52 switch (_context.prev = _context.next) {
53 case 0:
54 _context.next = 2;
55 return (0, _get2["default"])((0, _getPrototypeOf2["default"])(LocalStorage.prototype), "init", this).call(this);
56
57 case 2:
58 if (typeof window !== 'undefined') {
59 this.state = window.localStorage;
60 } else {
61 this.debug('LocalStorage init on server =(');
62 }
63
64 case 3:
65 case "end":
66 return _context.stop();
67 }
68 }
69 }, _callee, this);
70 }));
71
72 function init() {
73 return _init.apply(this, arguments);
74 }
75
76 return init;
77 }()
78 }, {
79 key: "path",
80 value: function path(key) {
81 return "".concat((0, _get3["default"])(this, 'config.prefix', 'lsk'), ".").concat(key);
82 }
83 }, {
84 key: "_get",
85 value: function _get(key) {
86 if (!this._inited) console.error('!LocalStorage._inited');
87 var path = this.path(key);
88
89 if (!this.state) {
90 this.debug('get', path, '=( !localStorage');
91 return null;
92 }
93
94 try {
95 return (0, _tryJSONparse["default"])(this.state.getItem(path));
96 } catch (err) {
97 this.debug('get', path, err);
98 return null;
99 }
100 }
101 }, {
102 key: "_set",
103 value: function _set(key, value) {
104 if (!this._inited) console.error('!LocalStorage._inited');
105 var path = this.path(key);
106
107 if (!this.state) {
108 this.debug('set', path, '=( !localStorage');
109 return;
110 }
111
112 try {
113 this.state.setItem(path, JSON.stringify(value));
114 } catch (err) {
115 this.debug('set', path, err);
116 }
117 }
118 }]);
119 return LocalStorage;
120}(_Storage2["default"]);
121
122var _default = LocalStorage;
123exports["default"] = _default;
124//# sourceMappingURL=LocalStorage.js.map
\No newline at end of file