UNPKG

@progress/kendo-angular-buttons

Version:
99 lines (98 loc) 4.37 kB
/**----------------------------------------------------------------------------------------- * Copyright © 2025 Progress Software Corporation. All rights reserved. * Licensed under commercial license. See LICENSE.md in the project root for more information *-------------------------------------------------------------------------------------------*/ import { ButtonComponent } from '../button/button.component'; import { EventEmitter, QueryList, OnInit, OnDestroy, AfterContentChecked, AfterViewChecked, AfterContentInit, ElementRef, SimpleChanges, Renderer2 } from '@angular/core'; import { LocalizationService } from '@progress/kendo-angular-l10n'; import { ButtonGroupSelection } from '../button/selection-settings'; import { KendoButtonService } from '../button/button.service'; import { PreventableEvent } from '../preventable-event'; import * as i0 from "@angular/core"; /** * Represents the Kendo UI ButtonGroup component for Angular. * * @example * ```html * <kendo-buttongroup> * <button kendoButton>Left</button> * <button kendoButton>Middle</button> * <button kendoButton>Right</button> * </kendo-buttongroup> * ``` * * @remarks * Supported children components are: {@link ButtonComponent}. */ export declare class ButtonGroupComponent implements OnInit, OnDestroy, AfterContentChecked, AfterViewChecked, AfterContentInit { private service; private renderer; private element; /** * To disable a specific button, set **only** its `disabled` property to `true`. * If you also set the ButtonGroup `disabled` property, it takes precedence over * the `disabled` properties of the underlying buttons and they are ignored. */ disabled: boolean; /** * Sets the selection mode of the ButtonGroup. * * @default 'multiple' */ selection: ButtonGroupSelection; /** * Sets the width of the ButtonGroup. * When set, the buttons resize automatically to fill the full width of the group wrapper and acquire the same width. */ width: string; /** * Specifies the [`tabIndex`](https://developer.mozilla.org/en-US/docs/Web/HTML/Global_attributes/tabindex) of the component. */ set tabIndex(value: number); get tabIndex(): number; /** * When set to `true`, the component is a single tab-stop, * and focus moves through the inner buttons using the arrow keys. * * When set to `false`, the inner buttons are part of the natural tab sequence of the page. * * @default true */ navigable: boolean; /** * Fires every time keyboard navigation occurs within the ButtonGroup. */ navigate: EventEmitter<PreventableEvent>; buttons: QueryList<ButtonComponent>; private _tabIndex; private currentTabIndex; private lastFocusedIndex; private direction; private subs; wrapperClasses: boolean; get disabledClass(): boolean; get stretchedClass(): boolean; role: string; get dir(): string; get ariaDisabled(): boolean; get wrapperWidth(): string; get wrapperTabIndex(): number; constructor(service: KendoButtonService, localization: LocalizationService, renderer: Renderer2, element: ElementRef); ngOnInit(): void; ngOnChanges(changes: SimpleChanges): void; ngAfterContentInit(): void; ngAfterViewChecked(): void; ngOnDestroy(): void; ngAfterContentChecked(): void; protected navigateFocus(event: any): void; protected deactivate(buttons: Array<ButtonComponent>): void; protected activate(buttons: Array<ButtonComponent>): void; protected defocus(buttons: Array<ButtonComponent>): void; protected focus(buttons: Array<ButtonComponent>): void; private verifySettings; private isSelectionSingle; private handleSubs; private focusHandler; static ɵfac: i0.ɵɵFactoryDeclaration<ButtonGroupComponent, never>; static ɵcmp: i0.ɵɵComponentDeclaration<ButtonGroupComponent, "kendo-buttongroup", ["kendoButtonGroup"], { "disabled": { "alias": "disabled"; "required": false; }; "selection": { "alias": "selection"; "required": false; }; "width": { "alias": "width"; "required": false; }; "tabIndex": { "alias": "tabIndex"; "required": false; }; "navigable": { "alias": "navigable"; "required": false; }; }, { "navigate": "navigate"; }, ["buttons"], ["[kendoButton]"], true, never>; }