import { booleanAttribute, Directive, HostBinding, Input } from '@angular/core'; import { ButtonType, Colors, Shapes } from '../coreui.types'; @Directive({ selector: '[cButton]', exportAs: 'cButton', standalone: true }) export class ButtonDirective { /** * Toggle the active state for the component. [docs] * @type boolean */ @Input({ transform: booleanAttribute }) active: string | boolean = false; /** * Sets the color context of the component to one of CoreUI’s themed colors. [docs] * @type Colors */ @Input() color?: Colors = 'primary'; /** * Toggle the disabled state for the component. * @type boolean */ @Input({ transform: booleanAttribute }) disabled: string | boolean = false; /** * Select the shape of the component. * @type { 'rounded' | 'rounded-top' | 'rounded-end' | 'rounded-bottom' | 'rounded-start' | 'rounded-circle' | 'rounded-pill' | 'rounded-0' | 'rounded-1' | 'rounded-2' | 'rounded-3' | string } */ @Input() shape?: Shapes; /** * Size the component small or large. * @type {'sm' | 'lg'} */ @Input() size?: 'sm' | 'lg' | '' = ''; /** * Specifies the type of button. Always specify the type attribute for the `