@progress/kendo-angular-buttons
Version:
Buttons Package for Angular
73 lines (72 loc) • 2.04 kB
TypeScript
/**-----------------------------------------------------------------------------------------
* Copyright © 2025 Progress Software Corporation. All rights reserved.
* Licensed under commercial license. See LICENSE.md in the project root for more information
*-------------------------------------------------------------------------------------------*/
import { SVGIcon } from "@progress/kendo-svg-icons";
/**
* Represents the item models of the Kendo UI DropDownButton and SplitButton components. These are the interface fields that the items use.
*
* @example
*
* ```typescript
* @Component({
* selector: 'my-app',
* template: `
* <kendo-splitbutton [data]="items">SplitButton</kendo-splitbutton>
* `
* })
* class AppComponent {
* public items: ListItemModel[] = [{
* text: 'item1',
* icon: 'arrow-rotate-cw',
* click: (dataItem: any) => {
* //action
* }
* }, {
* text: 'item2',
* iconClass: 'test icon class',
* click: (dataItem: any) => {
* //action
* }
* }]
* }
* ```
*/
export interface ListItemModel {
/**
* Sets the text of the item.
*/
text?: string;
/**
* Defines an icon rendered next to the title.
*/
icon?: string;
/**
* Defines an [SVGIcon](slug:api_icons_svgicon) rendered next to the title.
*/
svgIcon?: SVGIcon;
/**
* Defines an icon with a custom CSS class rendered next to the title.
*/
iconClass?: string;
/**
* Specifies the location of an image displayed next to the title.
*/
imageUrl?: string;
/**
* Specifies the value of the image element `alt` attribute.
*/
imageAlt?: string;
/**
* Disables the button list item when set to `true`.
*/
disabled?: boolean;
/**
* Specifies the CSS classes rendered on the item element. Supports the same values as `ngClass`.
*/
cssClass?: any;
/**
* Emits an event when the item is clicked.
*/
click?: (dataItem?: any) => void;
}