richpartners-telegram-sdk
Version:
richPartners ads telegram
48 lines • 1.34 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
exports.LS = exports.LocalStorageService = void 0;
class LocalStorageService {
set(key, value, ttl = null) {
if (ttl !== null) {
const now = Date.now();
const item = {
value: value,
ttl: now + ttl * 1000,
};
localStorage.setItem(key, JSON.stringify(item));
}
else {
localStorage.setItem(key, JSON.stringify(value));
}
}
get(key) {
const itemStr = localStorage.getItem(key);
if (!itemStr)
return null;
if (itemStr === 'undefined')
return undefined;
try {
const item = JSON.parse(itemStr);
if (item.ttl && Date.now() > item.ttl) {
localStorage.removeItem(key);
return null;
}
return item.value || item;
}
catch {
return itemStr;
}
}
remove(key) {
localStorage.removeItem(key);
}
clear() {
localStorage.clear();
}
getWithPrefix(key) {
return exports.LS.get(key);
}
}
exports.LocalStorageService = LocalStorageService;
exports.LS = new LocalStorageService();
//# sourceMappingURL=LocalStorageHelper.js.map