angular-archwizard
Version:
An Angular 9+ module containing a wizard component and its supporting components and directives
59 lines • 4.45 kB
JavaScript
import { __decorate, __metadata } from "tslib";
import { Directive, EventEmitter, HostListener, Output } from '@angular/core';
import { WizardComponent } from '../components/wizard.component';
/**
* The `awResetWizard` directive can be used to reset the wizard to its initial state.
* This directive accepts an output, which can be used to specify some custom cleanup work during the reset process.
*
* ### Syntax
*
* ```html
* <button awResetWizard (finalize)="custom reset task">...</button>
* ```
*
* @author Marc Arndt
*/
let ResetWizardDirective = class ResetWizardDirective {
/**
* Constructor
*
* @param wizard The wizard component
*/
constructor(wizard) {
this.wizard = wizard;
/**
* An [[EventEmitter]] containing some tasks to be done, directly before the wizard is being reset
*/
this.finalize = new EventEmitter();
}
/**
* Resets the wizard
*/
onClick() {
// do some optional cleanup work
this.finalize.emit();
// reset the wizard to its initial state
this.wizard.reset();
}
};
ResetWizardDirective.ctorParameters = () => [
{ type: WizardComponent }
];
__decorate([
Output(),
__metadata("design:type", EventEmitter)
], ResetWizardDirective.prototype, "finalize", void 0);
__decorate([
HostListener('click'),
__metadata("design:type", Function),
__metadata("design:paramtypes", []),
__metadata("design:returntype", void 0)
], ResetWizardDirective.prototype, "onClick", null);
ResetWizardDirective = __decorate([
Directive({
selector: '[awResetWizard]'
}),
__metadata("design:paramtypes", [WizardComponent])
], ResetWizardDirective);
export { ResetWizardDirective };
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVzZXQtd2l6YXJkLmRpcmVjdGl2ZS5qcyIsInNvdXJjZVJvb3QiOiJuZzovL2FuZ3VsYXItYXJjaHdpemFyZC8iLCJzb3VyY2VzIjpbImxpYi9kaXJlY3RpdmVzL3Jlc2V0LXdpemFyZC5kaXJlY3RpdmUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBLE9BQU8sRUFBQyxTQUFTLEVBQUUsWUFBWSxFQUFFLFlBQVksRUFBRSxNQUFNLEVBQUMsTUFBTSxlQUFlLENBQUM7QUFDNUUsT0FBTyxFQUFDLGVBQWUsRUFBQyxNQUFNLGdDQUFnQyxDQUFDO0FBRS9EOzs7Ozs7Ozs7OztHQVdHO0FBSUgsSUFBYSxvQkFBb0IsR0FBakMsTUFBYSxvQkFBb0I7SUFPL0I7Ozs7T0FJRztJQUNILFlBQW9CLE1BQXVCO1FBQXZCLFdBQU0sR0FBTixNQUFNLENBQWlCO1FBWDNDOztXQUVHO1FBRUksYUFBUSxHQUF1QixJQUFJLFlBQVksRUFBRSxDQUFDO0lBUXpELENBQUM7SUFFRDs7T0FFRztJQUVJLE9BQU87UUFDWixnQ0FBZ0M7UUFDaEMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxJQUFJLEVBQUUsQ0FBQztRQUNyQix3Q0FBd0M7UUFDeEMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxLQUFLLEVBQUUsQ0FBQztJQUN0QixDQUFDO0NBQ0YsQ0FBQTs7WUFiNkIsZUFBZTs7QUFQM0M7SUFEQyxNQUFNLEVBQUU7OEJBQ1EsWUFBWTtzREFBNEI7QUFjekQ7SUFEQyxZQUFZLENBQUMsT0FBTyxDQUFDOzs7O21EQU1yQjtBQXhCVSxvQkFBb0I7SUFIaEMsU0FBUyxDQUFDO1FBQ1QsUUFBUSxFQUFFLGlCQUFpQjtLQUM1QixDQUFDO3FDQWE0QixlQUFlO0dBWmhDLG9CQUFvQixDQXlCaEM7U0F6Qlksb0JBQW9CIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtEaXJlY3RpdmUsIEV2ZW50RW1pdHRlciwgSG9zdExpc3RlbmVyLCBPdXRwdXR9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHtXaXphcmRDb21wb25lbnR9IGZyb20gJy4uL2NvbXBvbmVudHMvd2l6YXJkLmNvbXBvbmVudCc7XG5cbi8qKlxuICogVGhlIGBhd1Jlc2V0V2l6YXJkYCBkaXJlY3RpdmUgY2FuIGJlIHVzZWQgdG8gcmVzZXQgdGhlIHdpemFyZCB0byBpdHMgaW5pdGlhbCBzdGF0ZS5cbiAqIFRoaXMgZGlyZWN0aXZlIGFjY2VwdHMgYW4gb3V0cHV0LCB3aGljaCBjYW4gYmUgdXNlZCB0byBzcGVjaWZ5IHNvbWUgY3VzdG9tIGNsZWFudXAgd29yayBkdXJpbmcgdGhlIHJlc2V0IHByb2Nlc3MuXG4gKlxuICogIyMjIFN5bnRheFxuICpcbiAqIGBgYGh0bWxcbiAqIDxidXR0b24gYXdSZXNldFdpemFyZCAoZmluYWxpemUpPVwiY3VzdG9tIHJlc2V0IHRhc2tcIj4uLi48L2J1dHRvbj5cbiAqIGBgYFxuICpcbiAqIEBhdXRob3IgTWFyYyBBcm5kdFxuICovXG5ARGlyZWN0aXZlKHtcbiAgc2VsZWN0b3I6ICdbYXdSZXNldFdpemFyZF0nXG59KVxuZXhwb3J0IGNsYXNzIFJlc2V0V2l6YXJkRGlyZWN0aXZlIHtcbiAgLyoqXG4gICAqIEFuIFtbRXZlbnRFbWl0dGVyXV0gY29udGFpbmluZyBzb21lIHRhc2tzIHRvIGJlIGRvbmUsIGRpcmVjdGx5IGJlZm9yZSB0aGUgd2l6YXJkIGlzIGJlaW5nIHJlc2V0XG4gICAqL1xuICBAT3V0cHV0KClcbiAgcHVibGljIGZpbmFsaXplOiBFdmVudEVtaXR0ZXI8dm9pZD4gPSBuZXcgRXZlbnRFbWl0dGVyKCk7XG5cbiAgLyoqXG4gICAqIENvbnN0cnVjdG9yXG4gICAqXG4gICAqIEBwYXJhbSB3aXphcmQgVGhlIHdpemFyZCBjb21wb25lbnRcbiAgICovXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgd2l6YXJkOiBXaXphcmRDb21wb25lbnQpIHtcbiAgfVxuXG4gIC8qKlxuICAgKiBSZXNldHMgdGhlIHdpemFyZFxuICAgKi9cbiAgQEhvc3RMaXN0ZW5lcignY2xpY2snKVxuICBwdWJsaWMgb25DbGljaygpOiB2b2lkIHtcbiAgICAvLyBkbyBzb21lIG9wdGlvbmFsIGNsZWFudXAgd29ya1xuICAgIHRoaXMuZmluYWxpemUuZW1pdCgpO1xuICAgIC8vIHJlc2V0IHRoZSB3aXphcmQgdG8gaXRzIGluaXRpYWwgc3RhdGVcbiAgICB0aGlzLndpemFyZC5yZXNldCgpO1xuICB9XG59XG4iXX0=