UNPKG

cc-terminal

Version:
18 lines 2.24 kB
// https://jurebajt.com/state-management-in-angular-with-observable-store-services/ import { BehaviorSubject } from 'rxjs'; /** * @description - This Class will work as a storage of any kind of data, but we will going to store the commands for now */ export class Store { constructor(initialState) { this._state$ = new BehaviorSubject(initialState); this.state$ = this._state$.asObservable(); } get state() { return this._state$.getValue(); } setState(nextState) { this._state$.next(nextState); } } //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3RvcmUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wcm9qZWN0cy9jYy10ZXJtaW5hbC9zcmMvbGliL3N0b3JlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLG1GQUFtRjtBQUNuRixPQUFPLEVBQWMsZUFBZSxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBRW5EOztHQUVHO0FBQ0gsTUFBTSxPQUFPLEtBQUs7SUFJaEIsWUFBc0IsWUFBZTtRQUNuQyxJQUFJLENBQUMsT0FBTyxHQUFHLElBQUksZUFBZSxDQUFDLFlBQVksQ0FBQyxDQUFDO1FBQ2pELElBQUksQ0FBQyxNQUFNLEdBQUcsSUFBSSxDQUFDLE9BQU8sQ0FBQyxZQUFZLEVBQUUsQ0FBQztJQUM1QyxDQUFDO0lBRUQsSUFBVyxLQUFLO1FBQ2QsT0FBTyxJQUFJLENBQUMsT0FBTyxDQUFDLFFBQVEsRUFBRSxDQUFDO0lBQ2pDLENBQUM7SUFFUyxRQUFRLENBQUMsU0FBWTtRQUM3QixJQUFJLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsQ0FBQztJQUMvQixDQUFDO0NBQ0YiLCJzb3VyY2VzQ29udGVudCI6WyIvLyBodHRwczovL2p1cmViYWp0LmNvbS9zdGF0ZS1tYW5hZ2VtZW50LWluLWFuZ3VsYXItd2l0aC1vYnNlcnZhYmxlLXN0b3JlLXNlcnZpY2VzL1xuaW1wb3J0IHsgT2JzZXJ2YWJsZSwgQmVoYXZpb3JTdWJqZWN0IH0gZnJvbSAncnhqcyc7XG5cbi8qKlxuICogQGRlc2NyaXB0aW9uIC0gVGhpcyBDbGFzcyB3aWxsIHdvcmsgYXMgYSBzdG9yYWdlIG9mIGFueSBraW5kIG9mIGRhdGEsIGJ1dCB3ZSB3aWxsIGdvaW5nIHRvIHN0b3JlIHRoZSBjb21tYW5kcyBmb3Igbm93XG4gKi9cbmV4cG9ydCBjbGFzcyBTdG9yZTxUPiB7XG4gIHN0YXRlJDogT2JzZXJ2YWJsZTxUPjtcbiAgcHJpdmF0ZSBfc3RhdGUkOiBCZWhhdmlvclN1YmplY3Q8VD47XG5cbiAgcHJvdGVjdGVkIGNvbnN0cnVjdG9yKGluaXRpYWxTdGF0ZTogVCkge1xuICAgIHRoaXMuX3N0YXRlJCA9IG5ldyBCZWhhdmlvclN1YmplY3QoaW5pdGlhbFN0YXRlKTtcbiAgICB0aGlzLnN0YXRlJCA9IHRoaXMuX3N0YXRlJC5hc09ic2VydmFibGUoKTtcbiAgfVxuXG4gIHB1YmxpYyBnZXQgc3RhdGUoKTogVCB7XG4gICAgcmV0dXJuIHRoaXMuX3N0YXRlJC5nZXRWYWx1ZSgpO1xuICB9XG5cbiAgcHJvdGVjdGVkIHNldFN0YXRlKG5leHRTdGF0ZTogVCk6IHZvaWQge1xuICAgIHRoaXMuX3N0YXRlJC5uZXh0KG5leHRTdGF0ZSk7XG4gIH1cbn1cbiJdfQ==