UNPKG

@clr/angular

Version:

Angular components for Clarity

76 lines 6.76 kB
/* * Copyright (c) 2016-2023 VMware, Inc. All Rights Reserved. * This software is released under MIT license. * The full license information can be found in LICENSE in the root directory of this project. */ import { Component, EventEmitter, Input, Output } from '@angular/core'; import * as i0 from "@angular/core"; let wizardHeaderActionIndex = 0; export class ClrWizardHeaderAction { constructor() { // title is explanatory text added to the header action this.title = ''; // If our host has an ID attribute, we use this instead of our index. this._id = (wizardHeaderActionIndex++).toString(); this.disabled = false; this.headerActionClicked = new EventEmitter(false); } get id() { return `clr-wizard-header-action-${this._id}`; } click() { if (this.disabled) { return; } // passing the header action id allows users to have one method that // routes to many different actions based on the type of header action // clicked. this is further aided by users being able to specify ids // for their header actions. this.headerActionClicked.emit(this._id); } } ClrWizardHeaderAction.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.2", ngImport: i0, type: ClrWizardHeaderAction, deps: [], target: i0.ɵɵFactoryTarget.Component }); ClrWizardHeaderAction.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.2", type: ClrWizardHeaderAction, selector: "clr-wizard-header-action", inputs: { title: "title", _id: ["id", "_id"], disabled: ["clrWizardHeaderActionDisabled", "disabled"] }, outputs: { headerActionClicked: "actionClicked" }, host: { classAttribute: "clr-wizard-header-action-wrapper" }, ngImport: i0, template: ` <button type="button" class="btn clr-wizard-header-action btn-link" [id]="id" [class.disabled]="disabled" (click)="click()" [title]="title" > <ng-content></ng-content> </button> `, isInline: true }); i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.2", ngImport: i0, type: ClrWizardHeaderAction, decorators: [{ type: Component, args: [{ selector: 'clr-wizard-header-action', template: ` <button type="button" class="btn clr-wizard-header-action btn-link" [id]="id" [class.disabled]="disabled" (click)="click()" [title]="title" > <ng-content></ng-content> </button> `, host: { class: 'clr-wizard-header-action-wrapper' }, }] }], propDecorators: { title: [{ type: Input, args: ['title'] }], _id: [{ type: Input, args: ['id'] }], disabled: [{ type: Input, args: ['clrWizardHeaderActionDisabled'] }], headerActionClicked: [{ type: Output, args: ['actionClicked'] }] } }); //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoid2l6YXJkLWhlYWRlci1hY3Rpb24uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wcm9qZWN0cy9hbmd1bGFyL3NyYy93aXphcmQvd2l6YXJkLWhlYWRlci1hY3Rpb24udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7R0FJRztBQUVILE9BQU8sRUFBRSxTQUFTLEVBQUUsWUFBWSxFQUFFLEtBQUssRUFBRSxNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7O0FBRXZFLElBQUksdUJBQXVCLEdBQUcsQ0FBQyxDQUFDO0FBa0JoQyxNQUFNLE9BQU8scUJBQXFCO0lBaEJsQztRQWlCRSx1REFBdUQ7UUFDdkMsVUFBSyxHQUFHLEVBQUUsQ0FBQztRQUUzQixxRUFBcUU7UUFDeEQsUUFBRyxHQUFXLENBQUMsdUJBQXVCLEVBQUUsQ0FBQyxDQUFDLFFBQVEsRUFBRSxDQUFDO1FBRTFCLGFBQVEsR0FBRyxLQUFLLENBQUM7UUFFaEMsd0JBQW1CLEdBQUcsSUFBSSxZQUFZLENBQVMsS0FBSyxDQUFDLENBQUM7S0FpQmhGO0lBZkMsSUFBSSxFQUFFO1FBQ0osT0FBTyw0QkFBNEIsSUFBSSxDQUFDLEdBQUcsRUFBRSxDQUFDO0lBQ2hELENBQUM7SUFFRCxLQUFLO1FBQ0gsSUFBSSxJQUFJLENBQUMsUUFBUSxFQUFFO1lBQ2pCLE9BQU87U0FDUjtRQUVELG9FQUFvRTtRQUNwRSxzRUFBc0U7UUFDdEUsb0VBQW9FO1FBQ3BFLDRCQUE0QjtRQUM1QixJQUFJLENBQUMsbUJBQW1CLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsQ0FBQztJQUMxQyxDQUFDOztrSEF6QlUscUJBQXFCO3NHQUFyQixxQkFBcUIsMFJBZHRCOzs7Ozs7Ozs7OztHQVdUOzJGQUdVLHFCQUFxQjtrQkFoQmpDLFNBQVM7bUJBQUM7b0JBQ1QsUUFBUSxFQUFFLDBCQUEwQjtvQkFDcEMsUUFBUSxFQUFFOzs7Ozs7Ozs7OztHQVdUO29CQUNELElBQUksRUFBRSxFQUFFLEtBQUssRUFBRSxrQ0FBa0MsRUFBRTtpQkFDcEQ7OEJBR2lCLEtBQUs7c0JBQXBCLEtBQUs7dUJBQUMsT0FBTztnQkFHRCxHQUFHO3NCQUFmLEtBQUs7dUJBQUMsSUFBSTtnQkFFNkIsUUFBUTtzQkFBL0MsS0FBSzt1QkFBQywrQkFBK0I7Z0JBRWIsbUJBQW1CO3NCQUEzQyxNQUFNO3VCQUFDLGVBQWUiLCJzb3VyY2VzQ29udGVudCI6WyIvKlxuICogQ29weXJpZ2h0IChjKSAyMDE2LTIwMjMgVk13YXJlLCBJbmMuIEFsbCBSaWdodHMgUmVzZXJ2ZWQuXG4gKiBUaGlzIHNvZnR3YXJlIGlzIHJlbGVhc2VkIHVuZGVyIE1JVCBsaWNlbnNlLlxuICogVGhlIGZ1bGwgbGljZW5zZSBpbmZvcm1hdGlvbiBjYW4gYmUgZm91bmQgaW4gTElDRU5TRSBpbiB0aGUgcm9vdCBkaXJlY3Rvcnkgb2YgdGhpcyBwcm9qZWN0LlxuICovXG5cbmltcG9ydCB7IENvbXBvbmVudCwgRXZlbnRFbWl0dGVyLCBJbnB1dCwgT3V0cHV0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbmxldCB3aXphcmRIZWFkZXJBY3Rpb25JbmRleCA9IDA7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2Nsci13aXphcmQtaGVhZGVyLWFjdGlvbicsXG4gIHRlbXBsYXRlOiBgXG4gICAgPGJ1dHRvblxuICAgICAgdHlwZT1cImJ1dHRvblwiXG4gICAgICBjbGFzcz1cImJ0biBjbHItd2l6YXJkLWhlYWRlci1hY3Rpb24gYnRuLWxpbmtcIlxuICAgICAgW2lkXT1cImlkXCJcbiAgICAgIFtjbGFzcy5kaXNhYmxlZF09XCJkaXNhYmxlZFwiXG4gICAgICAoY2xpY2spPVwiY2xpY2soKVwiXG4gICAgICBbdGl0bGVdPVwidGl0bGVcIlxuICAgID5cbiAgICAgIDxuZy1jb250ZW50PjwvbmctY29udGVudD5cbiAgICA8L2J1dHRvbj5cbiAgYCxcbiAgaG9zdDogeyBjbGFzczogJ2Nsci13aXphcmQtaGVhZGVyLWFjdGlvbi13cmFwcGVyJyB9LFxufSlcbmV4cG9ydCBjbGFzcyBDbHJXaXphcmRIZWFkZXJBY3Rpb24ge1xuICAvLyB0aXRsZSBpcyBleHBsYW5hdG9yeSB0ZXh0IGFkZGVkIHRvIHRoZSBoZWFkZXIgYWN0aW9uXG4gIEBJbnB1dCgndGl0bGUnKSB0aXRsZSA9ICcnO1xuXG4gIC8vIElmIG91ciBob3N0IGhhcyBhbiBJRCBhdHRyaWJ1dGUsIHdlIHVzZSB0aGlzIGluc3RlYWQgb2Ygb3VyIGluZGV4LlxuICBASW5wdXQoJ2lkJykgX2lkOiBzdHJpbmcgPSAod2l6YXJkSGVhZGVyQWN0aW9uSW5kZXgrKykudG9TdHJpbmcoKTtcblxuICBASW5wdXQoJ2NscldpemFyZEhlYWRlckFjdGlvbkRpc2FibGVkJykgZGlzYWJsZWQgPSBmYWxzZTtcblxuICBAT3V0cHV0KCdhY3Rpb25DbGlja2VkJykgaGVhZGVyQWN0aW9uQ2xpY2tlZCA9IG5ldyBFdmVudEVtaXR0ZXI8c3RyaW5nPihmYWxzZSk7XG5cbiAgZ2V0IGlkKCk6IHN0cmluZyB7XG4gICAgcmV0dXJuIGBjbHItd2l6YXJkLWhlYWRlci1hY3Rpb24tJHt0aGlzLl9pZH1gO1xuICB9XG5cbiAgY2xpY2soKTogdm9pZCB7XG4gICAgaWYgKHRoaXMuZGlzYWJsZWQpIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICAvLyBwYXNzaW5nIHRoZSBoZWFkZXIgYWN0aW9uIGlkIGFsbG93cyB1c2VycyB0byBoYXZlIG9uZSBtZXRob2QgdGhhdFxuICAgIC8vIHJvdXRlcyB0byBtYW55IGRpZmZlcmVudCBhY3Rpb25zIGJhc2VkIG9uIHRoZSB0eXBlIG9mIGhlYWRlciBhY3Rpb25cbiAgICAvLyBjbGlja2VkLiB0aGlzIGlzIGZ1cnRoZXIgYWlkZWQgYnkgdXNlcnMgYmVpbmcgYWJsZSB0byBzcGVjaWZ5IGlkc1xuICAgIC8vIGZvciB0aGVpciBoZWFkZXIgYWN0aW9ucy5cbiAgICB0aGlzLmhlYWRlckFjdGlvbkNsaWNrZWQuZW1pdCh0aGlzLl9pZCk7XG4gIH1cbn1cbiJdfQ==