UNPKG

@bitrix24/b24jssdk

Version:

Bitrix24 REST API JavaScript SDK

73 lines (70 loc) 2.04 kB
/** * @package @bitrix24/b24jssdk * @version 1.0.1 * @copyright (c) 2026 Bitrix24 * @license MIT * @see https://github.com/bitrix24/b24jssdk * @see https://bitrix24.github.io/b24jssdk/ */ import { Text } from '../tools/text.mjs'; import { LoggerFactory } from '../logger/logger-factory.mjs'; var __defProp = Object.defineProperty; var __name = (target, value) => __defProp(target, "name", { value, configurable: true }); class StorageManager { static { __name(this, "StorageManager"); } _logger; userId; siteId; constructor(params = {}) { this._logger = LoggerFactory.createNullLogger(); this.userId = params.userId ? Text.toInteger(params.userId) : 0; this.siteId = params.siteId ?? "none"; } setLogger(logger) { this._logger = logger; } getLogger() { return this._logger; } set(name, value) { if (typeof window.localStorage === "undefined") { this.getLogger().error("localStorage undefined", { error: new Error("undefined window.localStorage") }); return; } if (typeof value !== "string" && value) { value = JSON.stringify(value); } window.localStorage.setItem(this._getKey(name), value); } get(name, defaultValue) { if (typeof window.localStorage === "undefined") { return defaultValue || null; } const result = window.localStorage.getItem(this._getKey(name)); if (result === null) { return defaultValue || null; } return JSON.parse(result); } remove(name) { if (typeof window.localStorage === "undefined") { this.getLogger().error("localStorage undefined", { error: new Error("undefined window.localStorage") }); return; } return window.localStorage.removeItem(this._getKey(name)); } _getKey(name) { return `@bitrix24/b24jssdk-pull-${this.userId}-${this.siteId}-${name}`; } compareKey(eventKey, userKey) { return eventKey === this._getKey(userKey); } } export { StorageManager }; //# sourceMappingURL=storage-manager.mjs.map