@v4fire/core
Version:
V4Fire core library
35 lines (27 loc) • 881 B
text/typescript
/*!
* V4Fire Core
* https://github.com/V4Fire/Core
*
* Released under the MIT license
* https://github.com/V4Fire/Core/blob/master/LICENSE
*/
import { Cache } from 'core/cache';
import syncLocalEngine from 'core/kv-storage/engines/browser-indexeddb/sync-engine';
import AsyncLocalEngine from 'core/kv-storage/engines/browser-indexeddb/async-engine';
const
asyncLocalEngine = new AsyncLocalEngine(),
sessionEngine = new Cache();
export const
syncLocalStorage = syncLocalEngine,
asyncLocalStorage = asyncLocalEngine;
// eslint-disable-next-line import/no-mutable-exports
export let
syncSessionStorage,
asyncSessionStorage;
if (typeof globalThis.sessionStorage !== 'undefined') {
syncSessionStorage = globalThis.sessionStorage;
asyncSessionStorage = globalThis.sessionStorage;
} else {
syncSessionStorage = sessionEngine;
asyncSessionStorage = sessionEngine;
}