carbon-components-angular
Version:
Next generation components
89 lines • 6.94 kB
JavaScript
import { Component, Input, Output, EventEmitter } from "@angular/core";
import { BaseIconButton } from "carbon-components-angular/button";
import * as i0 from "@angular/core";
import * as i1 from "carbon-components-angular/button";
/**
* Contained by `HeaderGlobal`. Generally used to trigger `Panel`s
*/
export class HeaderAction extends BaseIconButton {
constructor() {
super(...arguments);
/**
* Toggles the active state. May be used to toggle a `Panel`s active state.
*/
this.active = false;
/**
* "Change" emitter to allow double binding to the `active` Input.
*/
this.activeChange = new EventEmitter();
/**
* Emits when the action has been clicked.
*/
this.selected = new EventEmitter();
}
onClick() {
this.active = !this.active;
this.selected.emit(this.active);
this.activeChange.emit(this.active);
}
}
HeaderAction.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: HeaderAction, deps: null, target: i0.ɵɵFactoryTarget.Component });
HeaderAction.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.3.0", type: HeaderAction, selector: "cds-header-action, ibm-header-action", inputs: { description: "description", ariaLabel: "ariaLabel", active: "active" }, outputs: { activeChange: "activeChange", selected: "selected" }, usesInheritance: true, ngImport: i0, template: `
<cds-icon-button
[buttonNgClass]="{
'cds--header__action': true,
'cds--header__action--active': active
}"
(click)="onClick()"
[align]="align"
[caret]="caret"
[dropShadow]="dropShadow"
[highContrast]="highContrast"
[isOpen]="isOpen"
[enterDelayMs]="enterDelayMs"
[leaveDelayMs]="leaveDelayMs"
[description]="description"
[buttonAttributes]="{
'aria-label': ariaLabel
}">
<ng-content></ng-content>
</cds-icon-button>
`, isInline: true, dependencies: [{ kind: "component", type: i1.IconButton, selector: "cds-icon-button, ibm-icon-button", inputs: ["buttonNgClass", "buttonAttributes", "buttonId", "kind", "size", "type", "isExpressive", "disabled", "description"], outputs: ["click", "focus", "blur", "tooltipClick"] }] });
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: HeaderAction, decorators: [{
type: Component,
args: [{
selector: "cds-header-action, ibm-header-action",
template: `
<cds-icon-button
[buttonNgClass]="{
'cds--header__action': true,
'cds--header__action--active': active
}"
(click)="onClick()"
[align]="align"
[caret]="caret"
[dropShadow]="dropShadow"
[highContrast]="highContrast"
[isOpen]="isOpen"
[enterDelayMs]="enterDelayMs"
[leaveDelayMs]="leaveDelayMs"
[description]="description"
[buttonAttributes]="{
'aria-label': ariaLabel
}">
<ng-content></ng-content>
</cds-icon-button>
`
}]
}], propDecorators: { description: [{
type: Input
}], ariaLabel: [{
type: Input
}], active: [{
type: Input
}], activeChange: [{
type: Output
}], selected: [{
type: Output
}] } });
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaGVhZGVyLWFjdGlvbi5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvdWktc2hlbGwvaGVhZGVyL2hlYWRlci1hY3Rpb24uY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFDTixTQUFTLEVBQ1QsS0FBSyxFQUNMLE1BQU0sRUFDTixZQUFZLEVBRVosTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLGtDQUFrQyxDQUFDOzs7QUFFbEU7O0dBRUc7QUF5QkgsTUFBTSxPQUFPLFlBQWEsU0FBUSxjQUFjO0lBeEJoRDs7UUFpQ0M7O1dBRUc7UUFDTSxXQUFNLEdBQUcsS0FBSyxDQUFDO1FBQ3hCOztXQUVHO1FBQ08saUJBQVksR0FBRyxJQUFJLFlBQVksRUFBVyxDQUFDO1FBQ3JEOztXQUVHO1FBQ08sYUFBUSxHQUFHLElBQUksWUFBWSxFQUFXLENBQUM7S0FPakQ7SUFMQSxPQUFPO1FBQ04sSUFBSSxDQUFDLE1BQU0sR0FBRyxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUM7UUFDM0IsSUFBSSxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxDQUFDO1FBQ2hDLElBQUksQ0FBQyxZQUFZLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsQ0FBQztJQUNyQyxDQUFDOzt5R0ExQlcsWUFBWTs2RkFBWixZQUFZLHNQQXRCZDs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7RUFvQlQ7MkZBRVcsWUFBWTtrQkF4QnhCLFNBQVM7bUJBQUM7b0JBQ1YsUUFBUSxFQUFFLHNDQUFzQztvQkFDaEQsUUFBUSxFQUFFOzs7Ozs7Ozs7Ozs7Ozs7Ozs7OztFQW9CVDtpQkFDRDs4QkFLUyxXQUFXO3NCQUFuQixLQUFLO2dCQUlHLFNBQVM7c0JBQWpCLEtBQUs7Z0JBSUcsTUFBTTtzQkFBZCxLQUFLO2dCQUlJLFlBQVk7c0JBQXJCLE1BQU07Z0JBSUcsUUFBUTtzQkFBakIsTUFBTSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG5cdENvbXBvbmVudCxcblx0SW5wdXQsXG5cdE91dHB1dCxcblx0RXZlbnRFbWl0dGVyLFxuXHRUZW1wbGF0ZVJlZlxufSBmcm9tIFwiQGFuZ3VsYXIvY29yZVwiO1xuaW1wb3J0IHsgQmFzZUljb25CdXR0b24gfSBmcm9tIFwiY2FyYm9uLWNvbXBvbmVudHMtYW5ndWxhci9idXR0b25cIjtcblxuLyoqXG4gKiBDb250YWluZWQgYnkgYEhlYWRlckdsb2JhbGAuIEdlbmVyYWxseSB1c2VkIHRvIHRyaWdnZXIgYFBhbmVsYHNcbiAqL1xuQENvbXBvbmVudCh7XG5cdHNlbGVjdG9yOiBcImNkcy1oZWFkZXItYWN0aW9uLCBpYm0taGVhZGVyLWFjdGlvblwiLFxuXHR0ZW1wbGF0ZTogYFxuXHRcdDxjZHMtaWNvbi1idXR0b25cblx0XHRcdFtidXR0b25OZ0NsYXNzXT1cIntcblx0XHRcdFx0J2Nkcy0taGVhZGVyX19hY3Rpb24nOiB0cnVlLFxuXHRcdFx0XHQnY2RzLS1oZWFkZXJfX2FjdGlvbi0tYWN0aXZlJzogYWN0aXZlXG5cdFx0XHR9XCJcblx0XHRcdChjbGljayk9XCJvbkNsaWNrKClcIlxuXHRcdFx0W2FsaWduXT1cImFsaWduXCJcblx0XHRcdFtjYXJldF09XCJjYXJldFwiXG5cdFx0XHRbZHJvcFNoYWRvd109XCJkcm9wU2hhZG93XCJcblx0XHRcdFtoaWdoQ29udHJhc3RdPVwiaGlnaENvbnRyYXN0XCJcblx0XHRcdFtpc09wZW5dPVwiaXNPcGVuXCJcblx0XHRcdFtlbnRlckRlbGF5TXNdPVwiZW50ZXJEZWxheU1zXCJcblx0XHRcdFtsZWF2ZURlbGF5TXNdPVwibGVhdmVEZWxheU1zXCJcblx0XHRcdFtkZXNjcmlwdGlvbl09XCJkZXNjcmlwdGlvblwiXG5cdFx0XHRbYnV0dG9uQXR0cmlidXRlc109XCJ7XG5cdFx0XHRcdCdhcmlhLWxhYmVsJzogYXJpYUxhYmVsXG5cdFx0XHR9XCI+XG5cdFx0XHQ8bmctY29udGVudD48L25nLWNvbnRlbnQ+XG5cdFx0PC9jZHMtaWNvbi1idXR0b24+XG5cdGBcbn0pXG5leHBvcnQgY2xhc3MgSGVhZGVyQWN0aW9uIGV4dGVuZHMgQmFzZUljb25CdXR0b24ge1xuXHQvKipcblx0ICogVG9vbHRpcCBjb250ZW50IHRvIHNob3cgb24gbW91c2VlbnRlclxuXHQgKi9cblx0QElucHV0KCkgZGVzY3JpcHRpb246IHN0cmluZyB8IFRlbXBsYXRlUmVmPGFueT47XG5cdC8qKlxuXHQgKiBTZXRzIHRoZSBhcmlhIGxhYmVsIG9uIHRoZSBuYXYgZWxlbWVudC5cblx0ICovXG5cdEBJbnB1dCgpIGFyaWFMYWJlbDogc3RyaW5nO1xuXHQvKipcblx0ICogVG9nZ2xlcyB0aGUgYWN0aXZlIHN0YXRlLiBNYXkgYmUgdXNlZCB0byB0b2dnbGUgYSBgUGFuZWxgcyBhY3RpdmUgc3RhdGUuXG5cdCAqL1xuXHRASW5wdXQoKSBhY3RpdmUgPSBmYWxzZTtcblx0LyoqXG5cdCAqIFwiQ2hhbmdlXCIgZW1pdHRlciB0byBhbGxvdyBkb3VibGUgYmluZGluZyB0byB0aGUgYGFjdGl2ZWAgSW5wdXQuXG5cdCAqL1xuXHRAT3V0cHV0KCkgYWN0aXZlQ2hhbmdlID0gbmV3IEV2ZW50RW1pdHRlcjxib29sZWFuPigpO1xuXHQvKipcblx0ICogRW1pdHMgd2hlbiB0aGUgYWN0aW9uIGhhcyBiZWVuIGNsaWNrZWQuXG5cdCAqL1xuXHRAT3V0cHV0KCkgc2VsZWN0ZWQgPSBuZXcgRXZlbnRFbWl0dGVyPGJvb2xlYW4+KCk7XG5cblx0b25DbGljaygpIHtcblx0XHR0aGlzLmFjdGl2ZSA9ICF0aGlzLmFjdGl2ZTtcblx0XHR0aGlzLnNlbGVjdGVkLmVtaXQodGhpcy5hY3RpdmUpO1xuXHRcdHRoaXMuYWN0aXZlQ2hhbmdlLmVtaXQodGhpcy5hY3RpdmUpO1xuXHR9XG59XG4iXX0=