UNPKG

@lonewolfspace/storage-manager-ts

Version:

A universal browser storage manager with optional AES encryption support for localStorage, sessionStorage, and cookies.

34 lines (33 loc) 1.38 kB
"use strict"; var __importDefault = (this && this.__importDefault) || function (mod) { return (mod && mod.__esModule) ? mod : { "default": mod }; }; Object.defineProperty(exports, "__esModule", { value: true }); exports.ClientCookieManager = void 0; const js_cookie_1 = __importDefault(require("js-cookie")); const base_storage_manager_1 = require("./base-storage-manager"); class ClientCookieManager extends base_storage_manager_1.BaseStorageManager { static setCookie(name, value, options) { if (typeof window === "undefined") { throw new Error("This method can only be used in client components"); } const encryptedValue = this.encryptValue(value); js_cookie_1.default.set(name, encryptedValue, options); } static getCookie(name) { if (typeof window === "undefined") { throw new Error("This method can only be used in client components"); } const encryptedValue = js_cookie_1.default.get(name); if (!encryptedValue) return undefined; return this.decryptValue(encryptedValue); } static deleteCookie(name) { if (typeof window === "undefined") { throw new Error("This method can only be used in client components"); } js_cookie_1.default.remove(name); } } exports.ClientCookieManager = ClientCookieManager;