@airgrid/edgekit
Version:
A privacy focused library for cookie-less audience creation.
45 lines • 1.24 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
exports.storage = exports.timeout = exports.timeStampInSecs = void 0;
exports.timeStampInSecs = function () { return Math.round(Date.now() / 1000); };
exports.timeout = function (milliseconds, message) {
return new Promise(function (_, reject) {
setTimeout(function () { return reject(new Error(message)); }, milliseconds);
});
};
// eslint-disable-next-line @typescript-eslint/no-explicit-any
var get = function (key) {
var value = localStorage.getItem(key);
if (!value)
return undefined;
try {
return JSON.parse(value);
}
catch (e) {
return undefined;
}
};
// eslint-disable-next-line @typescript-eslint/no-explicit-any, @typescript-eslint/explicit-module-boundary-types
var set = function (key, value) {
try {
var serialized = JSON.stringify(value);
localStorage.setItem(key, serialized);
}
catch (e) {
// ignore...
}
};
var remove = function (key) {
try {
localStorage.removeItem(key);
}
catch (e) {
// ignore...
}
};
exports.storage = {
set: set,
get: get,
remove: remove,
};
//# sourceMappingURL=index.js.map