Buckets:
| ; | |
| Object.defineProperty(exports, "__esModule", { | |
| value: true | |
| }); | |
| exports.default = void 0; | |
| function noop() {} | |
| const localStorageManager = ({ | |
| key, | |
| storageWindow | |
| }) => { | |
| if (!storageWindow && typeof window !== 'undefined') { | |
| storageWindow = window; | |
| } | |
| return { | |
| get(defaultValue) { | |
| if (typeof window === 'undefined') { | |
| return undefined; | |
| } | |
| if (!storageWindow) { | |
| return defaultValue; | |
| } | |
| let value; | |
| try { | |
| value = storageWindow.localStorage.getItem(key); | |
| } catch { | |
| // Unsupported | |
| } | |
| return value || defaultValue; | |
| }, | |
| set: value => { | |
| if (storageWindow) { | |
| try { | |
| storageWindow.localStorage.setItem(key, value); | |
| } catch { | |
| // Unsupported | |
| } | |
| } | |
| }, | |
| subscribe: handler => { | |
| if (!storageWindow) { | |
| return noop; | |
| } | |
| const listener = event => { | |
| const value = event.newValue; | |
| if (event.key === key) { | |
| handler(value); | |
| } | |
| }; | |
| storageWindow.addEventListener('storage', listener); | |
| return () => { | |
| storageWindow.removeEventListener('storage', listener); | |
| }; | |
| } | |
| }; | |
| }; | |
| var _default = exports.default = localStorageManager; |
Xet Storage Details
- Size:
- 1.27 kB
- Xet hash:
- df1063278dd43e3b6ecfe22d1197efe36d35b7b3d1e9f30359ff47f8e754ea21
·
Xet efficiently stores files, intelligently splitting them into unique chunks and accelerating uploads and downloads. More info.