UNPKG

ngx-store

Version:

Angular decorators to automagically keep variables in HTML5 LocalStorage, SessionStorage, cookies; injectable services for managing and listening to data changes and a bit more.

19 lines 3 kB
import { WebStorageService } from './webstorage.service'; import { sessionStorageUtility } from '../utility/index'; import { Injectable } from '@angular/core'; import { fromEvent, merge } from 'rxjs'; import { filter, map } from 'rxjs/operators'; export class SessionStorageService extends WebStorageService { constructor() { super(sessionStorageUtility); this._changes = merge(fromEvent(window, 'storage') .pipe(filter((event) => event.storageArea === sessionStorage), map((event) => this.mapNativeEvent(event))), sessionStorageUtility.changes); } } SessionStorageService.keys = []; SessionStorageService.decorators = [ { type: Injectable } ]; SessionStorageService.ctorParameters = () => []; //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2Vzc2lvbi1zdG9yYWdlLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZ3gtc3RvcmUvc3JjL2xpYi9zZXJ2aWNlL3Nlc3Npb24tc3RvcmFnZS5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLHNCQUFzQixDQUFDO0FBQ3pELE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLGtCQUFrQixDQUFDO0FBQ3pELE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDM0MsT0FBTyxFQUFFLFNBQVMsRUFBRSxLQUFLLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDeEMsT0FBTyxFQUFFLE1BQU0sRUFBRSxHQUFHLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUk3QyxNQUFNLE9BQU8scUJBQXNCLFNBQVEsaUJBQWlCO0lBRzFEO1FBQ0UsS0FBSyxDQUFDLHFCQUFxQixDQUFDLENBQUM7UUFDN0IsSUFBSSxDQUFDLFFBQVE7WUFDWCxLQUFLLENBQUMsU0FBUyxDQUFrQixNQUFNLEVBQUUsU0FBUyxDQUFDO2lCQUM5QyxJQUFJLENBQ0gsTUFBTSxDQUFDLENBQUMsS0FBc0IsRUFBRSxFQUFFLENBQUMsS0FBSyxDQUFDLFdBQVcsS0FBSyxjQUFjLENBQUMsRUFDeEUsR0FBRyxDQUFDLENBQUMsS0FBc0IsRUFBRSxFQUFFLENBQUMsSUFBSSxDQUFDLGNBQWMsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUM1RCxFQUNILHFCQUFxQixDQUFDLE9BQU8sQ0FBQyxDQUFDO0lBQ3JDLENBQUM7O0FBWGEsMEJBQUksR0FBa0IsRUFBRSxDQUFDOztZQUZ4QyxVQUFVIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgV2ViU3RvcmFnZVNlcnZpY2UgfSBmcm9tICcuL3dlYnN0b3JhZ2Uuc2VydmljZSc7XG5pbXBvcnQgeyBzZXNzaW9uU3RvcmFnZVV0aWxpdHkgfSBmcm9tICcuLi91dGlsaXR5L2luZGV4JztcbmltcG9ydCB7IEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IGZyb21FdmVudCwgbWVyZ2UgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IGZpbHRlciwgbWFwIH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xuaW1wb3J0IHsgTmd4U3RvcmFnZUV2ZW50IH0gZnJvbSAnLi4vdXRpbGl0eS9zdG9yYWdlL3N0b3JhZ2UtZXZlbnQnO1xuXG5ASW5qZWN0YWJsZSgpXG5leHBvcnQgY2xhc3MgU2Vzc2lvblN0b3JhZ2VTZXJ2aWNlIGV4dGVuZHMgV2ViU3RvcmFnZVNlcnZpY2Uge1xuICBwdWJsaWMgc3RhdGljIGtleXM6IEFycmF5PHN0cmluZz4gPSBbXTtcblxuICBjb25zdHJ1Y3RvcigpIHtcbiAgICBzdXBlcihzZXNzaW9uU3RvcmFnZVV0aWxpdHkpO1xuICAgIHRoaXMuX2NoYW5nZXMgPVxuICAgICAgbWVyZ2UoZnJvbUV2ZW50PE5neFN0b3JhZ2VFdmVudD4od2luZG93LCAnc3RvcmFnZScpXG4gICAgICAgICAgLnBpcGUoXG4gICAgICAgICAgICBmaWx0ZXIoKGV2ZW50OiBOZ3hTdG9yYWdlRXZlbnQpID0+IGV2ZW50LnN0b3JhZ2VBcmVhID09PSBzZXNzaW9uU3RvcmFnZSksXG4gICAgICAgICAgICBtYXAoKGV2ZW50OiBOZ3hTdG9yYWdlRXZlbnQpID0+IHRoaXMubWFwTmF0aXZlRXZlbnQoZXZlbnQpKSxcbiAgICAgICAgICApLFxuICAgICAgICBzZXNzaW9uU3RvcmFnZVV0aWxpdHkuY2hhbmdlcyk7XG4gIH1cbn1cbiJdfQ==