@rg-software/angular-archwizard
Version:
A fork of the Angular Arch Wizard adapted for angular versions 17+.
59 lines • 5.03 kB
JavaScript
import { Directive, Host, Input } from '@angular/core';
import * as i0 from "@angular/core";
import * as i1 from "../util/wizard-step.interface";
/**
* The `awOptionalStep` directive can be used to define an optional `wizard-step`.
* An optional wizard step is a [[WizardStep]] that doesn't need to be completed to transition to later wizard steps.
*
* ### Syntax
*
* ```html
* <aw-wizard-step awOptionalStep>
* ...
* </aw-wizard-step>
* ```
*
* ### Example
*
* ```html
* <aw-wizard-step stepTitle="Second step" awOptionalStep>
* ...
* </aw-wizard-step>
* ```
*
* @author Marc Arndt
*/
export class OptionalStepDirective {
/**
* Constructor
*
* @param wizardStep The wizard step, which contains this [[OptionalStepDirective]]
*/
constructor(wizardStep) {
this.wizardStep = wizardStep;
// tslint:disable-next-line:no-input-rename
this.optional = true;
}
/**
* Initialization work
*/
ngOnInit() {
// The input receives '' when specified in the template without a value. In this case, apply the default value (`true`).
// eslint-disable-next-line @typescript-eslint/no-explicit-any
this.wizardStep.optional = this.optional || this.optional === '';
}
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.1.0", ngImport: i0, type: OptionalStepDirective, deps: [{ token: i1.WizardStep, host: true }], target: i0.ɵɵFactoryTarget.Directive }); }
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "17.1.0", type: OptionalStepDirective, selector: "[awOptionalStep]", inputs: { optional: ["awOptionalStep", "optional"] }, ngImport: i0 }); }
}
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.1.0", ngImport: i0, type: OptionalStepDirective, decorators: [{
type: Directive,
args: [{
selector: '[awOptionalStep]'
}]
}], ctorParameters: () => [{ type: i1.WizardStep, decorators: [{
type: Host
}] }], propDecorators: { optional: [{
type: Input,
args: ['awOptionalStep']
}] } });
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoib3B0aW9uYWwtc3RlcC5kaXJlY3RpdmUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9zcmMvbGliL2RpcmVjdGl2ZXMvb3B0aW9uYWwtc3RlcC5kaXJlY3RpdmUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFDLFNBQVMsRUFBRSxJQUFJLEVBQUUsS0FBSyxFQUFTLE1BQU0sZUFBZSxDQUFDOzs7QUFHN0Q7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztHQXFCRztBQUlILE1BQU0sT0FBTyxxQkFBcUI7SUFNaEM7Ozs7T0FJRztJQUNILFlBQTRCLFVBQXNCO1FBQXRCLGVBQVUsR0FBVixVQUFVLENBQVk7UUFUbEQsMkNBQTJDO1FBRXBDLGFBQVEsR0FBRyxJQUFJLENBQUM7SUFRdkIsQ0FBQztJQUVEOztPQUVHO0lBQ0ksUUFBUTtRQUNiLHlIQUF5SDtRQUN6SCw4REFBOEQ7UUFDOUQsSUFBSSxDQUFDLFVBQVUsQ0FBQyxRQUFRLEdBQUcsSUFBSSxDQUFDLFFBQVEsSUFBSSxJQUFJLENBQUMsUUFBZSxLQUFLLEVBQUUsQ0FBQztJQUMxRSxDQUFDOzhHQXJCVSxxQkFBcUI7a0dBQXJCLHFCQUFxQjs7MkZBQXJCLHFCQUFxQjtrQkFIakMsU0FBUzttQkFBQztvQkFDVCxRQUFRLEVBQUUsa0JBQWtCO2lCQUM3Qjs7MEJBWWMsSUFBSTt5Q0FQVixRQUFRO3NCQURkLEtBQUs7dUJBQUMsZ0JBQWdCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtEaXJlY3RpdmUsIEhvc3QsIElucHV0LCBPbkluaXR9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHtXaXphcmRTdGVwfSBmcm9tICcuLi91dGlsL3dpemFyZC1zdGVwLmludGVyZmFjZSc7XG5cbi8qKlxuICogVGhlIGBhd09wdGlvbmFsU3RlcGAgZGlyZWN0aXZlIGNhbiBiZSB1c2VkIHRvIGRlZmluZSBhbiBvcHRpb25hbCBgd2l6YXJkLXN0ZXBgLlxuICogQW4gb3B0aW9uYWwgd2l6YXJkIHN0ZXAgaXMgYSBbW1dpemFyZFN0ZXBdXSB0aGF0IGRvZXNuJ3QgbmVlZCB0byBiZSBjb21wbGV0ZWQgdG8gdHJhbnNpdGlvbiB0byBsYXRlciB3aXphcmQgc3RlcHMuXG4gKlxuICogIyMjIFN5bnRheFxuICpcbiAqIGBgYGh0bWxcbiAqIDxhdy13aXphcmQtc3RlcCBhd09wdGlvbmFsU3RlcD5cbiAqICAgICAuLi5cbiAqIDwvYXctd2l6YXJkLXN0ZXA+XG4gKiBgYGBcbiAqXG4gKiAjIyMgRXhhbXBsZVxuICpcbiAqIGBgYGh0bWxcbiAqIDxhdy13aXphcmQtc3RlcCBzdGVwVGl0bGU9XCJTZWNvbmQgc3RlcFwiIGF3T3B0aW9uYWxTdGVwPlxuICogICAgIC4uLlxuICogPC9hdy13aXphcmQtc3RlcD5cbiAqIGBgYFxuICpcbiAqIEBhdXRob3IgTWFyYyBBcm5kdFxuICovXG5ARGlyZWN0aXZlKHtcbiAgc2VsZWN0b3I6ICdbYXdPcHRpb25hbFN0ZXBdJ1xufSlcbmV4cG9ydCBjbGFzcyBPcHRpb25hbFN0ZXBEaXJlY3RpdmUgaW1wbGVtZW50cyBPbkluaXQge1xuXG4gIC8vIHRzbGludDpkaXNhYmxlLW5leHQtbGluZTpuby1pbnB1dC1yZW5hbWVcbiAgQElucHV0KCdhd09wdGlvbmFsU3RlcCcpXG4gIHB1YmxpYyBvcHRpb25hbCA9IHRydWU7XG5cbiAgLyoqXG4gICAqIENvbnN0cnVjdG9yXG4gICAqXG4gICAqIEBwYXJhbSB3aXphcmRTdGVwIFRoZSB3aXphcmQgc3RlcCwgd2hpY2ggY29udGFpbnMgdGhpcyBbW09wdGlvbmFsU3RlcERpcmVjdGl2ZV1dXG4gICAqL1xuICBjb25zdHJ1Y3RvcihASG9zdCgpIHByaXZhdGUgd2l6YXJkU3RlcDogV2l6YXJkU3RlcCkge1xuICB9XG5cbiAgLyoqXG4gICAqIEluaXRpYWxpemF0aW9uIHdvcmtcbiAgICovXG4gIHB1YmxpYyBuZ09uSW5pdCgpOiB2b2lkIHtcbiAgICAvLyBUaGUgaW5wdXQgcmVjZWl2ZXMgJycgd2hlbiBzcGVjaWZpZWQgaW4gdGhlIHRlbXBsYXRlIHdpdGhvdXQgYSB2YWx1ZS4gIEluIHRoaXMgY2FzZSwgYXBwbHkgdGhlIGRlZmF1bHQgdmFsdWUgKGB0cnVlYCkuXG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEB0eXBlc2NyaXB0LWVzbGludC9uby1leHBsaWNpdC1hbnlcbiAgICB0aGlzLndpemFyZFN0ZXAub3B0aW9uYWwgPSB0aGlzLm9wdGlvbmFsIHx8IHRoaXMub3B0aW9uYWwgYXMgYW55ID09PSAnJztcbiAgfVxufVxuIl19