UNPKG

ng-wizard

Version:

Angular ng-wizard - Angular wizard | stepper

78 lines 9.42 kB
import { Injectable, Optional, Inject } from '@angular/core'; import { Subject } from 'rxjs'; import { NG_WIZARD_CONFIG_TOKEN } from '../ng-wizard-config.token'; import { DEFAULT_CONFIG } from '../utils/constants'; import { merge } from '../utils/functions'; import * as i0 from "@angular/core"; export class NgWizardDataService { config; resetWizard$; showNextStep$; showPreviousStep$; showStep$; setTheme$; stepChangedArgs$; _resetWizard; _showNextStep; _showPreviousStep; _showStep; _setTheme; _stepChangedArgs; _defaultConfig; constructor(config) { this.config = config; this._defaultConfig = { ...DEFAULT_CONFIG }; if (this.config) { this._defaultConfig = merge(this._defaultConfig, this.config); } // Observable sources this._resetWizard = new Subject(); this._showNextStep = new Subject(); this._showPreviousStep = new Subject(); this._showStep = new Subject(); this._setTheme = new Subject(); this._stepChangedArgs = new Subject(); // Observable streams this.resetWizard$ = this._resetWizard.asObservable(); this.showNextStep$ = this._showNextStep.asObservable(); this.showPreviousStep$ = this._showPreviousStep.asObservable(); this.showStep$ = this._showStep.asObservable(); this.setTheme$ = this._setTheme.asObservable(); this.stepChangedArgs$ = this._stepChangedArgs.asObservable(); } getDefaultConfig() { return { ...this._defaultConfig }; } resetWizard() { this._resetWizard.next(); } showNextStep() { this._showNextStep.next(); } showPreviousStep() { this._showPreviousStep.next(); } showStep(index) { this._showStep.next(index); } setTheme(theme) { this._setTheme.next(theme); } stepChanged(args) { this._stepChangedArgs.next(args); } static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.12", ngImport: i0, type: NgWizardDataService, deps: [{ token: NG_WIZARD_CONFIG_TOKEN, optional: true }], target: i0.ɵɵFactoryTarget.Injectable }); static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.12", ngImport: i0, type: NgWizardDataService, providedIn: 'root' }); } i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.12", ngImport: i0, type: NgWizardDataService, decorators: [{ type: Injectable, args: [{ providedIn: 'root', }] }], ctorParameters: () => [{ type: undefined, decorators: [{ type: Optional }, { type: Inject, args: [NG_WIZARD_CONFIG_TOKEN] }] }] }); //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibmctd2l6YXJkLWRhdGEuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25nLXdpemFyZC9zcmMvbGliL3NlcnZpY2VzL25nLXdpemFyZC1kYXRhLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxRQUFRLEVBQUUsTUFBTSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzdELE9BQU8sRUFBYyxPQUFPLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDM0MsT0FBTyxFQUFFLHNCQUFzQixFQUFFLE1BQU0sMkJBQTJCLENBQUM7QUFDbkUsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLG9CQUFvQixDQUFDO0FBRXBELE9BQU8sRUFBRSxLQUFLLEVBQUUsTUFBTSxvQkFBb0IsQ0FBQzs7QUFNM0MsTUFBTSxPQUFPLG1CQUFtQjtJQWlCd0I7SUFoQnRELFlBQVksQ0FBbUI7SUFDL0IsYUFBYSxDQUFtQjtJQUNoQyxpQkFBaUIsQ0FBbUI7SUFDcEMsU0FBUyxDQUFxQjtJQUM5QixTQUFTLENBQW9CO0lBQzdCLGdCQUFnQixDQUE4QjtJQUV0QyxZQUFZLENBQWdCO0lBQzVCLGFBQWEsQ0FBZ0I7SUFDN0IsaUJBQWlCLENBQWdCO0lBQ2pDLFNBQVMsQ0FBa0I7SUFDM0IsU0FBUyxDQUFpQjtJQUMxQixnQkFBZ0IsQ0FBMkI7SUFDM0MsY0FBYyxDQUFpQjtJQUV2QyxZQUNzRCxNQUFzQjtRQUF0QixXQUFNLEdBQU4sTUFBTSxDQUFnQjtRQUUxRSxJQUFJLENBQUMsY0FBYyxHQUFHLEVBQUUsR0FBRyxjQUFjLEVBQUUsQ0FBQztRQUM1QyxJQUFJLElBQUksQ0FBQyxNQUFNLEVBQUUsQ0FBQztZQUNoQixJQUFJLENBQUMsY0FBYyxHQUFHLEtBQUssQ0FBQyxJQUFJLENBQUMsY0FBYyxFQUFFLElBQUksQ0FBQyxNQUFNLENBQUMsQ0FBQztRQUNoRSxDQUFDO1FBRUQscUJBQXFCO1FBQ3JCLElBQUksQ0FBQyxZQUFZLEdBQUcsSUFBSSxPQUFPLEVBQVEsQ0FBQztRQUN4QyxJQUFJLENBQUMsYUFBYSxHQUFHLElBQUksT0FBTyxFQUFRLENBQUM7UUFDekMsSUFBSSxDQUFDLGlCQUFpQixHQUFHLElBQUksT0FBTyxFQUFRLENBQUM7UUFDN0MsSUFBSSxDQUFDLFNBQVMsR0FBRyxJQUFJLE9BQU8sRUFBVSxDQUFDO1FBQ3ZDLElBQUksQ0FBQyxTQUFTLEdBQUcsSUFBSSxPQUFPLEVBQVMsQ0FBQztRQUN0QyxJQUFJLENBQUMsZ0JBQWdCLEdBQUcsSUFBSSxPQUFPLEVBQW1CLENBQUM7UUFFdkQscUJBQXFCO1FBQ3JCLElBQUksQ0FBQyxZQUFZLEdBQUcsSUFBSSxDQUFDLFlBQVksQ0FBQyxZQUFZLEVBQUUsQ0FBQztRQUNyRCxJQUFJLENBQUMsYUFBYSxHQUFHLElBQUksQ0FBQyxhQUFhLENBQUMsWUFBWSxFQUFFLENBQUM7UUFDdkQsSUFBSSxDQUFDLGlCQUFpQixHQUFHLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxZQUFZLEVBQUUsQ0FBQztRQUMvRCxJQUFJLENBQUMsU0FBUyxHQUFHLElBQUksQ0FBQyxTQUFTLENBQUMsWUFBWSxFQUFFLENBQUM7UUFDL0MsSUFBSSxDQUFDLFNBQVMsR0FBRyxJQUFJLENBQUMsU0FBUyxDQUFDLFlBQVksRUFBRSxDQUFDO1FBQy9DLElBQUksQ0FBQyxnQkFBZ0IsR0FBRyxJQUFJLENBQUMsZ0JBQWdCLENBQUMsWUFBWSxFQUFFLENBQUM7SUFDL0QsQ0FBQztJQUVELGdCQUFnQjtRQUNkLE9BQU8sRUFBRSxHQUFHLElBQUksQ0FBQyxjQUFjLEVBQUUsQ0FBQztJQUNwQyxDQUFDO0lBRUQsV0FBVztRQUNULElBQUksQ0FBQyxZQUFZLENBQUMsSUFBSSxFQUFFLENBQUM7SUFDM0IsQ0FBQztJQUVELFlBQVk7UUFDVixJQUFJLENBQUMsYUFBYSxDQUFDLElBQUksRUFBRSxDQUFDO0lBQzVCLENBQUM7SUFFRCxnQkFBZ0I7UUFDZCxJQUFJLENBQUMsaUJBQWlCLENBQUMsSUFBSSxFQUFFLENBQUM7SUFDaEMsQ0FBQztJQUVELFFBQVEsQ0FBQyxLQUFhO1FBQ3BCLElBQUksQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDO0lBQzdCLENBQUM7SUFFRCxRQUFRLENBQUMsS0FBWTtRQUNuQixJQUFJLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUM3QixDQUFDO0lBRUQsV0FBVyxDQUFDLElBQXFCO1FBQy9CLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUM7SUFDbkMsQ0FBQzt3R0FuRVUsbUJBQW1CLGtCQWlCUixzQkFBc0I7NEdBakJqQyxtQkFBbUIsY0FGbEIsTUFBTTs7NEZBRVAsbUJBQW1CO2tCQUgvQixVQUFVO21CQUFDO29CQUNWLFVBQVUsRUFBRSxNQUFNO2lCQUNuQjs7MEJBa0JJLFFBQVE7OzBCQUFJLE1BQU07MkJBQUMsc0JBQXNCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0YWJsZSwgT3B0aW9uYWwsIEluamVjdCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBPYnNlcnZhYmxlLCBTdWJqZWN0IH0gZnJvbSAncnhqcyc7XHJcbmltcG9ydCB7IE5HX1dJWkFSRF9DT05GSUdfVE9LRU4gfSBmcm9tICcuLi9uZy13aXphcmQtY29uZmlnLnRva2VuJztcclxuaW1wb3J0IHsgREVGQVVMVF9DT05GSUcgfSBmcm9tICcuLi91dGlscy9jb25zdGFudHMnO1xyXG5pbXBvcnQgeyBUSEVNRSB9IGZyb20gJy4uL3V0aWxzL2VudW1zJztcclxuaW1wb3J0IHsgbWVyZ2UgfSBmcm9tICcuLi91dGlscy9mdW5jdGlvbnMnO1xyXG5pbXBvcnQgeyBTdGVwQ2hhbmdlZEFyZ3MsIE5nV2l6YXJkQ29uZmlnIH0gZnJvbSAnLi4vdXRpbHMvaW50ZXJmYWNlcyc7XHJcblxyXG5ASW5qZWN0YWJsZSh7XHJcbiAgcHJvdmlkZWRJbjogJ3Jvb3QnLFxyXG59KVxyXG5leHBvcnQgY2xhc3MgTmdXaXphcmREYXRhU2VydmljZSB7XHJcbiAgcmVzZXRXaXphcmQkOiBPYnNlcnZhYmxlPHZvaWQ+O1xyXG4gIHNob3dOZXh0U3RlcCQ6IE9ic2VydmFibGU8dm9pZD47XHJcbiAgc2hvd1ByZXZpb3VzU3RlcCQ6IE9ic2VydmFibGU8dm9pZD47XHJcbiAgc2hvd1N0ZXAkOiBPYnNlcnZhYmxlPG51bWJlcj47XHJcbiAgc2V0VGhlbWUkOiBPYnNlcnZhYmxlPFRIRU1FPjtcclxuICBzdGVwQ2hhbmdlZEFyZ3MkOiBPYnNlcnZhYmxlPFN0ZXBDaGFuZ2VkQXJncz47XHJcblxyXG4gIHByaXZhdGUgX3Jlc2V0V2l6YXJkOiBTdWJqZWN0PHZvaWQ+O1xyXG4gIHByaXZhdGUgX3Nob3dOZXh0U3RlcDogU3ViamVjdDx2b2lkPjtcclxuICBwcml2YXRlIF9zaG93UHJldmlvdXNTdGVwOiBTdWJqZWN0PHZvaWQ+O1xyXG4gIHByaXZhdGUgX3Nob3dTdGVwOiBTdWJqZWN0PG51bWJlcj47XHJcbiAgcHJpdmF0ZSBfc2V0VGhlbWU6IFN1YmplY3Q8VEhFTUU+O1xyXG4gIHByaXZhdGUgX3N0ZXBDaGFuZ2VkQXJnczogU3ViamVjdDxTdGVwQ2hhbmdlZEFyZ3M+O1xyXG4gIHByaXZhdGUgX2RlZmF1bHRDb25maWc6IE5nV2l6YXJkQ29uZmlnO1xyXG5cclxuICBjb25zdHJ1Y3RvcihcclxuICAgIEBPcHRpb25hbCgpIEBJbmplY3QoTkdfV0laQVJEX0NPTkZJR19UT0tFTikgcHJpdmF0ZSBjb25maWc6IE5nV2l6YXJkQ29uZmlnXHJcbiAgKSB7XHJcbiAgICB0aGlzLl9kZWZhdWx0Q29uZmlnID0geyAuLi5ERUZBVUxUX0NPTkZJRyB9O1xyXG4gICAgaWYgKHRoaXMuY29uZmlnKSB7XHJcbiAgICAgIHRoaXMuX2RlZmF1bHRDb25maWcgPSBtZXJnZSh0aGlzLl9kZWZhdWx0Q29uZmlnLCB0aGlzLmNvbmZpZyk7XHJcbiAgICB9XHJcblxyXG4gICAgLy8gT2JzZXJ2YWJsZSBzb3VyY2VzXHJcbiAgICB0aGlzLl9yZXNldFdpemFyZCA9IG5ldyBTdWJqZWN0PHZvaWQ+KCk7XHJcbiAgICB0aGlzLl9zaG93TmV4dFN0ZXAgPSBuZXcgU3ViamVjdDx2b2lkPigpO1xyXG4gICAgdGhpcy5fc2hvd1ByZXZpb3VzU3RlcCA9IG5ldyBTdWJqZWN0PHZvaWQ+KCk7XHJcbiAgICB0aGlzLl9zaG93U3RlcCA9IG5ldyBTdWJqZWN0PG51bWJlcj4oKTtcclxuICAgIHRoaXMuX3NldFRoZW1lID0gbmV3IFN1YmplY3Q8VEhFTUU+KCk7XHJcbiAgICB0aGlzLl9zdGVwQ2hhbmdlZEFyZ3MgPSBuZXcgU3ViamVjdDxTdGVwQ2hhbmdlZEFyZ3M+KCk7XHJcblxyXG4gICAgLy8gT2JzZXJ2YWJsZSBzdHJlYW1zXHJcbiAgICB0aGlzLnJlc2V0V2l6YXJkJCA9IHRoaXMuX3Jlc2V0V2l6YXJkLmFzT2JzZXJ2YWJsZSgpO1xyXG4gICAgdGhpcy5zaG93TmV4dFN0ZXAkID0gdGhpcy5fc2hvd05leHRTdGVwLmFzT2JzZXJ2YWJsZSgpO1xyXG4gICAgdGhpcy5zaG93UHJldmlvdXNTdGVwJCA9IHRoaXMuX3Nob3dQcmV2aW91c1N0ZXAuYXNPYnNlcnZhYmxlKCk7XHJcbiAgICB0aGlzLnNob3dTdGVwJCA9IHRoaXMuX3Nob3dTdGVwLmFzT2JzZXJ2YWJsZSgpO1xyXG4gICAgdGhpcy5zZXRUaGVtZSQgPSB0aGlzLl9zZXRUaGVtZS5hc09ic2VydmFibGUoKTtcclxuICAgIHRoaXMuc3RlcENoYW5nZWRBcmdzJCA9IHRoaXMuX3N0ZXBDaGFuZ2VkQXJncy5hc09ic2VydmFibGUoKTtcclxuICB9XHJcblxyXG4gIGdldERlZmF1bHRDb25maWcoKTogTmdXaXphcmRDb25maWcge1xyXG4gICAgcmV0dXJuIHsgLi4udGhpcy5fZGVmYXVsdENvbmZpZyB9O1xyXG4gIH1cclxuXHJcbiAgcmVzZXRXaXphcmQoKSB7XHJcbiAgICB0aGlzLl9yZXNldFdpemFyZC5uZXh0KCk7XHJcbiAgfVxyXG5cclxuICBzaG93TmV4dFN0ZXAoKSB7XHJcbiAgICB0aGlzLl9zaG93TmV4dFN0ZXAubmV4dCgpO1xyXG4gIH1cclxuXHJcbiAgc2hvd1ByZXZpb3VzU3RlcCgpIHtcclxuICAgIHRoaXMuX3Nob3dQcmV2aW91c1N0ZXAubmV4dCgpO1xyXG4gIH1cclxuXHJcbiAgc2hvd1N0ZXAoaW5kZXg6IG51bWJlcikge1xyXG4gICAgdGhpcy5fc2hvd1N0ZXAubmV4dChpbmRleCk7XHJcbiAgfVxyXG5cclxuICBzZXRUaGVtZSh0aGVtZTogVEhFTUUpIHtcclxuICAgIHRoaXMuX3NldFRoZW1lLm5leHQodGhlbWUpO1xyXG4gIH1cclxuXHJcbiAgc3RlcENoYW5nZWQoYXJnczogU3RlcENoYW5nZWRBcmdzKSB7XHJcbiAgICB0aGlzLl9zdGVwQ2hhbmdlZEFyZ3MubmV4dChhcmdzKTtcclxuICB9XHJcbn1cclxuIl19