@infosel-sdk/core
Version:
Core SDK for Infosel financial services platform. Provides essential infrastructure for authentication, HTTP/GraphQL communication, storage management, and error handling.
41 lines • 1.48 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
const tslib_1 = require("tslib");
const sdk_error_1 = tslib_1.__importStar(require("../../errors/sdk_error"));
class AppLocalStorage {
getObject(key) {
var _a;
return tslib_1.__awaiter(this, void 0, void 0, function* () {
const json = (_a = localStorage.getItem(key)) === null || _a === void 0 ? void 0 : _a.trim();
if (json) {
return JSON.parse(json);
}
throw new sdk_error_1.default(sdk_error_1.SdkErrorType.LOCAL_STORAGE_KEY_NOT_FOUND, key);
});
}
saveObject(key, object) {
return tslib_1.__awaiter(this, void 0, void 0, function* () {
try {
const json = JSON.stringify(object);
localStorage.setItem(key, json);
return object;
}
catch (error) {
throw new sdk_error_1.default(sdk_error_1.SdkErrorType.LOCAL_STORAGE_UNABLE_TO_SAVE_ITEM, error instanceof Error ? error.message : undefined);
}
});
}
removeObject(key) {
return tslib_1.__awaiter(this, void 0, void 0, function* () {
try {
localStorage.removeItem(key);
return true;
}
catch (_) {
return false;
}
});
}
}
exports.default = AppLocalStorage;
//# sourceMappingURL=app_local_storage.js.map