UNPKG

ngx-webstorage

Version:

### Local and session storage - Angular service This library provides an easy to use service to manage the web storages (local and session) from your Angular application. It provides also two decorators to synchronize the component attributes and the web

33 lines 3.78 kB
import { of, Subject } from 'rxjs'; export const StorageStrategyStubName = 'stub_strategy'; class StorageStrategyStub { constructor(name) { this.keyChanges = new Subject(); this.store = {}; this._available = true; this.name = name || StorageStrategyStubName; } get isAvailable() { return this._available; } get(key) { return of(this.store[key]); } set(key, value) { this.store[key] = value; this.keyChanges.next(key); return of(value); } del(key) { delete this.store[key]; this.keyChanges.next(key); return of(null); } clear() { this.store = {}; this.keyChanges.next(null); return of(null); } } export { StorageStrategyStub }; //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3RvcmFnZVN0cmF0ZWd5LnN0dWIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wcm9qZWN0cy9uZ3gtd2Vic3RvcmFnZS9zcmMvc3R1YnMvc3RvcmFnZVN0cmF0ZWd5LnN0dWIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFhLEVBQUUsRUFBRSxPQUFPLEVBQUMsTUFBTSxNQUFNLENBQUM7QUFHN0MsTUFBTSxDQUFDLE1BQU0sdUJBQXVCLEdBQVcsZUFBZSxDQUFDO0FBRS9ELE1BQU0sbUJBQW1CO0lBT3hCLFlBQVksSUFBYTtRQUxoQixlQUFVLEdBQW9CLElBQUksT0FBTyxFQUFFLENBQUM7UUFDOUMsVUFBSyxHQUFRLEVBQUUsQ0FBQztRQUNoQixlQUFVLEdBQVksSUFBSSxDQUFDO1FBSWpDLElBQUksQ0FBQyxJQUFJLEdBQUcsSUFBSSxJQUFJLHVCQUF1QixDQUFDO0lBQzdDLENBQUM7SUFFRCxJQUFJLFdBQVc7UUFDZCxPQUFPLElBQUksQ0FBQyxVQUFVLENBQUM7SUFDeEIsQ0FBQztJQUVELEdBQUcsQ0FBQyxHQUFXO1FBQ2QsT0FBTyxFQUFFLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDO0lBQzVCLENBQUM7SUFFRCxHQUFHLENBQUMsR0FBVyxFQUFFLEtBQVU7UUFDMUIsSUFBSSxDQUFDLEtBQUssQ0FBQyxHQUFHLENBQUMsR0FBRyxLQUFLLENBQUM7UUFDeEIsSUFBSSxDQUFDLFVBQVUsQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLENBQUM7UUFDMUIsT0FBTyxFQUFFLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDbEIsQ0FBQztJQUVELEdBQUcsQ0FBQyxHQUFXO1FBQ2QsT0FBTyxJQUFJLENBQUMsS0FBSyxDQUFDLEdBQUcsQ0FBQyxDQUFDO1FBQ3ZCLElBQUksQ0FBQyxVQUFVLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFDO1FBQzFCLE9BQU8sRUFBRSxDQUFDLElBQUksQ0FBQyxDQUFDO0lBQ2pCLENBQUM7SUFFRCxLQUFLO1FBQ0osSUFBSSxDQUFDLEtBQUssR0FBRyxFQUFFLENBQUM7UUFDaEIsSUFBSSxDQUFDLFVBQVUsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUM7UUFDM0IsT0FBTyxFQUFFLENBQUMsSUFBSSxDQUFDLENBQUM7SUFDakIsQ0FBQztDQUVEO0FBRUQsT0FBTyxFQUFDLG1CQUFtQixFQUFDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge09ic2VydmFibGUsIG9mLCBTdWJqZWN0fSBmcm9tICdyeGpzJztcbmltcG9ydCB7U3RvcmFnZVN0cmF0ZWd5fSBmcm9tICcuLi9saWIvY29yZS9pbnRlcmZhY2VzL3N0b3JhZ2VTdHJhdGVneSc7XG5cbmV4cG9ydCBjb25zdCBTdG9yYWdlU3RyYXRlZ3lTdHViTmFtZTogc3RyaW5nID0gJ3N0dWJfc3RyYXRlZ3knO1xuXG5jbGFzcyBTdG9yYWdlU3RyYXRlZ3lTdHViIGltcGxlbWVudHMgU3RvcmFnZVN0cmF0ZWd5PGFueT4ge1xuXG5cdHJlYWRvbmx5IGtleUNoYW5nZXM6IFN1YmplY3Q8c3RyaW5nPiA9IG5ldyBTdWJqZWN0KCk7XG5cdHB1YmxpYyBzdG9yZTogYW55ID0ge307XG5cdHB1YmxpYyBfYXZhaWxhYmxlOiBib29sZWFuID0gdHJ1ZTtcblx0cmVhZG9ubHkgbmFtZTogc3RyaW5nO1xuXG5cdGNvbnN0cnVjdG9yKG5hbWU/OiBzdHJpbmcpIHtcblx0XHR0aGlzLm5hbWUgPSBuYW1lIHx8IFN0b3JhZ2VTdHJhdGVneVN0dWJOYW1lO1xuXHR9XG5cblx0Z2V0IGlzQXZhaWxhYmxlKCk6IGJvb2xlYW4ge1xuXHRcdHJldHVybiB0aGlzLl9hdmFpbGFibGU7XG5cdH1cblxuXHRnZXQoa2V5OiBzdHJpbmcpOiBPYnNlcnZhYmxlPGFueT4ge1xuXHRcdHJldHVybiBvZih0aGlzLnN0b3JlW2tleV0pO1xuXHR9XG5cblx0c2V0KGtleTogc3RyaW5nLCB2YWx1ZTogYW55KTogT2JzZXJ2YWJsZTxhbnk+IHtcblx0XHR0aGlzLnN0b3JlW2tleV0gPSB2YWx1ZTtcblx0XHR0aGlzLmtleUNoYW5nZXMubmV4dChrZXkpO1xuXHRcdHJldHVybiBvZih2YWx1ZSk7XG5cdH1cblxuXHRkZWwoa2V5OiBzdHJpbmcpOiBPYnNlcnZhYmxlPHZvaWQ+IHtcblx0XHRkZWxldGUgdGhpcy5zdG9yZVtrZXldO1xuXHRcdHRoaXMua2V5Q2hhbmdlcy5uZXh0KGtleSk7XG5cdFx0cmV0dXJuIG9mKG51bGwpO1xuXHR9XG5cblx0Y2xlYXIoKTogT2JzZXJ2YWJsZTx2b2lkPiB7XG5cdFx0dGhpcy5zdG9yZSA9IHt9O1xuXHRcdHRoaXMua2V5Q2hhbmdlcy5uZXh0KG51bGwpO1xuXHRcdHJldHVybiBvZihudWxsKTtcblx0fVxuXG59XG5cbmV4cG9ydCB7U3RvcmFnZVN0cmF0ZWd5U3R1Yn07XG4iXX0=