{"version":3,"sources":["src/utils/local-storage-utils.tsx"],"names":["StorageItems","SafeStorage","[object Object]","this","tryAccessLocalStorageOrWarn","localStorage","clear","key","getItem","fallback","item","tryJSONOrWarn","JSON","parse","index","length","tryOrElse","removeItem","value","setItem","obj","stringified","stringify","tryTo","orElse","console","warn","e"],"mappings":"IAEYA,GAAZ,SAAYA,GACVA,EAAA,kBAAA,uBACAA,EAAA,8BAAA,oCAFF,CAAYA,IAAAA,EAAY,WAWXC,EACXC,eACOA,QACL,OAAOC,KAAKC,6BACV,IAAMC,aAAaC,UACnB,SAIGJ,QAAQK,GACb,OAAOJ,KAAKC,6BACV,IAAMC,aAAaG,QAAQD,KAC3B,IAAM,OAIHL,cAAiBK,EAAmBE,GACzC,MAAMC,EAAOP,KAAKK,QAAQD,GAC1B,IAAKG,EAAM,CACT,OAAOD,EAET,OAAON,KAAKQ,cACVJ,GACA,IAAMK,KAAKC,MAAMH,KACjB,IAAMD,IAIHP,IAAIY,GACT,OAAOX,KAAKC,6BACV,IAAMC,aAAaE,IAAIO,KACvB,IAAM,OAIVC,aACE,OAAOZ,KAAKa,WACV,IAAMX,aAAaU,SACnB,IAAM,IAIHb,WAAWK,GAChB,OAAOJ,KAAKC,6BACV,IAAMC,aAAaY,WAAWV,KAC9B,SAIGL,QAAQK,EAAmBW,GAChC,OAAOf,KAAKC,6BACV,IAAMC,aAAac,QAAQZ,EAAKW,KAChC,SAIGhB,QAAQK,EAAmBa,GAChC,MAAMC,EAAclB,KAAKQ,cACvBJ,GACA,IAAMK,KAAKU,UAAUF,KACrB,IAAMR,KAAKU,UAAU,MAEvB,OAAOnB,KAAKgB,QAAQZ,EAAKc,GAGnBnB,4BACNqB,EACAC,GAEA,OAAOrB,KAAKa,UAAUO,GAAO,KAC3BE,QAAQC,KACN,wGAEF,OAAOF,OAIHtB,cACNK,EACAgB,EACAC,GAEA,OAAOrB,KAAKa,UAAUO,GAAO,KAC3BE,QAAQC,KACN,wEAAwEnB,KAE1E,OAAOiB,OAIHtB,UACNqB,EACAC,GAEA,IACE,OAAOD,IACP,MAAOI,GACPF,QAAQC,KAAKC,GACb,OAAOH","sourcesContent":["import {StandaloneSearchBoxAnalytics} from '@coveo/headless';\n\nexport enum StorageItems {\n RECENT_QUERIES = 'coveo-recent-queries',\n STANDALONE_SEARCH_BOX_DATA = 'coveo-standalone-search-box-data',\n}\n\nexport interface StandaloneSearchBoxData {\n value: string;\n enableQuerySyntax?: boolean;\n analytics: StandaloneSearchBoxAnalytics;\n}\n\nexport class SafeStorage implements Storage {\n constructor() {}\n public clear() {\n return this.tryAccessLocalStorageOrWarn(\n () => localStorage.clear(),\n () => {}\n );\n }\n\n public getItem(key: StorageItems) {\n return this.tryAccessLocalStorageOrWarn(\n () => localStorage.getItem(key),\n () => null\n );\n }\n\n public getParsedJSON(key: StorageItems, fallback: T) {\n const item = this.getItem(key);\n if (!item) {\n return fallback;\n }\n return this.tryJSONOrWarn(\n key,\n () => JSON.parse(item) as T,\n () => fallback\n );\n }\n\n public key(index: number) {\n return this.tryAccessLocalStorageOrWarn(\n () => localStorage.key(index),\n () => null\n );\n }\n\n public get length() {\n return this.tryOrElse(\n () => localStorage.length,\n () => 0\n );\n }\n\n public removeItem(key: StorageItems) {\n return this.tryAccessLocalStorageOrWarn(\n () => localStorage.removeItem(key),\n () => {}\n );\n }\n\n public setItem(key: StorageItems, value: string) {\n return this.tryAccessLocalStorageOrWarn(\n () => localStorage.setItem(key, value),\n () => {}\n );\n }\n\n public setJSON(key: StorageItems, obj: unknown) {\n const stringified = this.tryJSONOrWarn(\n key,\n () => JSON.stringify(obj),\n () => JSON.stringify({})\n );\n return this.setItem(key, stringified);\n }\n\n private tryAccessLocalStorageOrWarn(\n tryTo: () => OnSuccess,\n orElse: () => OnFailure\n ) {\n return this.tryOrElse(tryTo, () => {\n console.warn(\n 'Error while trying to read or modify local storage. This can be caused by browser specific settings.'\n );\n return orElse();\n });\n }\n\n private tryJSONOrWarn(\n key: StorageItems,\n tryTo: () => OnSuccess,\n orElse: () => OnFailure\n ) {\n return this.tryOrElse(tryTo, () => {\n console.warn(\n `Error while trying to do JSON manipulation with local storage entry. ${key}`\n );\n return orElse();\n });\n }\n\n private tryOrElse(\n tryTo: () => OnSuccess,\n orElse: () => OnFailure\n ) {\n try {\n return tryTo();\n } catch (e) {\n console.warn(e as Error);\n return orElse();\n }\n }\n}\n"]}
ag8-Asia-Tour-service@78278.net
福建农林大学-金山学院
日出日落时间查询
太阳城官网
青岛特锐德电气股份有限公司
福房网
临汾天气预报
Sun-City-official-website-marketing@wellnessgrass.net
宝莲禅寺
搜狐广东
澳门银河
富阳教育信息网
华龙网体育频道
竞标股份
07073新闻中心
17173新天龙八部ol专区
DJ电音吧
重庆吉屋网
澳门威尼斯
云南师范大学商学院
盘锦天气预报
有家装饰
首创证券
赢时胜
中信国安葡萄酒业股份有限公司
杭州公交网
上饶招聘网
财经网地产频道
花都招聘网
中国教师站
燕安居
新浪游戏
站点地图
北京小升初论坛
赣榆人才网