import { EventEmitter, Injectable, Output } from '@angular/core'; import { Observable, Subject } from 'rxjs'; @Injectable({ providedIn: 'root' }) export class StepService { private _next!: Subject; private _previous!: Subject; @Output() public stopEmmiter = new EventEmitter(); @Output() public isFirstStep = new EventEmitter(); public get getNext(): Observable { return this._next.asObservable(); } public get getPrevious(): Observable { return this._previous.asObservable(); } public initialize(): void { this._next = new Subject(); this._previous = new Subject(); } public next(): void { this._next.next(); } public previous(): void { this._previous.next(); } public stop(): void { this._next.complete(); this._previous.complete(); } }