UNPKG

@bitrix24/b24jssdk

Version:

Bitrix24 REST API JavaScript SDK

1 lines 3.98 kB
{"version":3,"file":"storage-manager.mjs","sources":["../../../src/pullClient/storage-manager.ts"],"sourcesContent":["import type { StorageManagerParams, TypeStorageManager } from '../types/pull'\nimport type { LoggerInterface } from '../logger'\nimport { LoggerFactory } from '../logger'\nimport { Text } from '../tools/text'\n\nexport class StorageManager implements TypeStorageManager {\n private _logger: LoggerInterface\n\n private readonly userId: number\n private readonly siteId: string\n\n constructor(params: StorageManagerParams = {}) {\n this._logger = LoggerFactory.createNullLogger()\n this.userId = params.userId ? Text.toInteger(params.userId) : 0\n this.siteId = params.siteId ?? 'none'\n }\n\n setLogger(logger: LoggerInterface): void {\n this._logger = logger\n }\n\n getLogger(): LoggerInterface {\n return this._logger\n }\n\n set(name: string, value: any): void {\n if (typeof window.localStorage === 'undefined') {\n this.getLogger().error('localStorage undefined', {\n error: new Error('undefined window.localStorage')\n })\n return\n }\n\n if (typeof value !== 'string' && value) {\n value = JSON.stringify(value)\n }\n\n window.localStorage.setItem(this._getKey(name), value)\n }\n\n get(name: string, defaultValue: any): any {\n if (typeof window.localStorage === 'undefined') {\n return defaultValue || null\n }\n\n const result = window.localStorage.getItem(this._getKey(name))\n if (result === null) {\n return defaultValue || null\n }\n\n return JSON.parse(result)\n }\n\n remove(name: string): void {\n if (typeof window.localStorage === 'undefined') {\n this.getLogger().error('localStorage undefined', {\n error: new Error('undefined window.localStorage')\n })\n return\n }\n\n return window.localStorage.removeItem(this._getKey(name))\n }\n\n private _getKey(name: string): string {\n return `@bitrix24/b24jssdk-pull-${this.userId}-${this.siteId}-${name}`\n }\n\n compareKey(eventKey: string, userKey: string): boolean {\n return eventKey === this._getKey(userKey)\n }\n}\n"],"names":[],"mappings":";;;;;;;;;;;;;AAKO,MAAM,cAAA,CAA6C;AAAA,EAL1D;AAK0D,IAAA,MAAA,CAAA,IAAA,EAAA,gBAAA,CAAA;AAAA;AAAA,EAChD,OAAA;AAAA,EAES,MAAA;AAAA,EACA,MAAA;AAAA,EAEjB,WAAA,CAAY,MAAA,GAA+B,EAAC,EAAG;AAC7C,IAAA,IAAA,CAAK,OAAA,GAAU,cAAc,gBAAA,EAAiB;AAC9C,IAAA,IAAA,CAAK,SAAS,MAAA,CAAO,MAAA,GAAS,KAAK,SAAA,CAAU,MAAA,CAAO,MAAM,CAAA,GAAI,CAAA;AAC9D,IAAA,IAAA,CAAK,MAAA,GAAS,OAAO,MAAA,IAAU,MAAA;AAAA,EACjC;AAAA,EAEA,UAAU,MAAA,EAA+B;AACvC,IAAA,IAAA,CAAK,OAAA,GAAU,MAAA;AAAA,EACjB;AAAA,EAEA,SAAA,GAA6B;AAC3B,IAAA,OAAO,IAAA,CAAK,OAAA;AAAA,EACd;AAAA,EAEA,GAAA,CAAI,MAAc,KAAA,EAAkB;AAClC,IAAA,IAAI,OAAO,MAAA,CAAO,YAAA,KAAiB,WAAA,EAAa;AAC9C,MAAA,IAAA,CAAK,SAAA,EAAU,CAAE,KAAA,CAAM,wBAAA,EAA0B;AAAA,QAC/C,KAAA,EAAO,IAAI,KAAA,CAAM,+BAA+B;AAAA,OACjD,CAAA;AACD,MAAA;AAAA,IACF;AAEA,IAAA,IAAI,OAAO,KAAA,KAAU,QAAA,IAAY,KAAA,EAAO;AACtC,MAAA,KAAA,GAAQ,IAAA,CAAK,UAAU,KAAK,CAAA;AAAA,IAC9B;AAEA,IAAA,MAAA,CAAO,aAAa,OAAA,CAAQ,IAAA,CAAK,OAAA,CAAQ,IAAI,GAAG,KAAK,CAAA;AAAA,EACvD;AAAA,EAEA,GAAA,CAAI,MAAc,YAAA,EAAwB;AACxC,IAAA,IAAI,OAAO,MAAA,CAAO,YAAA,KAAiB,WAAA,EAAa;AAC9C,MAAA,OAAO,YAAA,IAAgB,IAAA;AAAA,IACzB;AAEA,IAAA,MAAM,SAAS,MAAA,CAAO,YAAA,CAAa,QAAQ,IAAA,CAAK,OAAA,CAAQ,IAAI,CAAC,CAAA;AAC7D,IAAA,IAAI,WAAW,IAAA,EAAM;AACnB,MAAA,OAAO,YAAA,IAAgB,IAAA;AAAA,IACzB;AAEA,IAAA,OAAO,IAAA,CAAK,MAAM,MAAM,CAAA;AAAA,EAC1B;AAAA,EAEA,OAAO,IAAA,EAAoB;AACzB,IAAA,IAAI,OAAO,MAAA,CAAO,YAAA,KAAiB,WAAA,EAAa;AAC9C,MAAA,IAAA,CAAK,SAAA,EAAU,CAAE,KAAA,CAAM,wBAAA,EAA0B;AAAA,QAC/C,KAAA,EAAO,IAAI,KAAA,CAAM,+BAA+B;AAAA,OACjD,CAAA;AACD,MAAA;AAAA,IACF;AAEA,IAAA,OAAO,OAAO,YAAA,CAAa,UAAA,CAAW,IAAA,CAAK,OAAA,CAAQ,IAAI,CAAC,CAAA;AAAA,EAC1D;AAAA,EAEQ,QAAQ,IAAA,EAAsB;AACpC,IAAA,OAAO,2BAA2B,IAAA,CAAK,MAAM,IAAI,IAAA,CAAK,MAAM,IAAI,IAAI,CAAA,CAAA;AAAA,EACtE;AAAA,EAEA,UAAA,CAAW,UAAkB,OAAA,EAA0B;AACrD,IAAA,OAAO,QAAA,KAAa,IAAA,CAAK,OAAA,CAAQ,OAAO,CAAA;AAAA,EAC1C;AACF;;;;"}