{"version":3,"file":"useSessionStorageCache.mjs","sources":["../../../../../../packages/request/request-cache/imp/useSessionStorageCache.ts"],"sourcesContent":["import type { AsyncCacheStore } from '../asyncCacheStore';\n\nclass SessionStorageCacheStore implements AsyncCacheStore {\n  private storage: Storage;\n\n  constructor() {\n    this.storage = sessionStorage;\n  }\n\n  async get<T>(key: string): Promise<T | undefined> {\n    const item = this.storage.getItem(key);\n    if (item) {\n      return JSON.parse(item) as T;\n    }\n    return undefined;\n  }\n\n  async set<T>(key: string, value: T): Promise<void> {\n    this.storage.setItem(key, JSON.stringify(value));\n  }\n\n  async delete(key: string): Promise<void> {\n    this.storage.removeItem(key);\n  }\n\n  async has(key: string): Promise<boolean> {\n    return this.storage.getItem(key) !== null;\n  }\n}\n\nexport function useSessionStorageCache() {\n  return new SessionStorageCacheStore();\n}\n"],"names":[],"mappings":"AAAA,MAAM,wBAAwB,CAAC;AAC/B,EAAE,WAAW,GAAG;AAChB,IAAI,IAAI,CAAC,OAAO,GAAG,cAAc,CAAC;AAClC,GAAG;AACH,EAAE,MAAM,GAAG,CAAC,GAAG,EAAE;AACjB,IAAI,MAAM,IAAI,GAAG,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;AAC3C,IAAI,IAAI,IAAI,EAAE;AACd,MAAM,OAAO,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;AAC9B,KAAK;AACL,IAAI,OAAO,KAAK,CAAC,CAAC;AAClB,GAAG;AACH,EAAE,MAAM,GAAG,CAAC,GAAG,EAAE,KAAK,EAAE;AACxB,IAAI,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,GAAG,EAAE,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC,CAAC;AACrD,GAAG;AACH,EAAE,MAAM,MAAM,CAAC,GAAG,EAAE;AACpB,IAAI,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC;AACjC,GAAG;AACH,EAAE,MAAM,GAAG,CAAC,GAAG,EAAE;AACjB,IAAI,OAAO,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,GAAG,CAAC,KAAK,IAAI,CAAC;AAC9C,GAAG;AACH,CAAC;AACM,SAAS,sBAAsB,GAAG;AACzC,EAAE,OAAO,IAAI,wBAAwB,EAAE,CAAC;AACxC;;;;"}