@progress/kendo-angular-toolbar 11.0.0-develop.102 → 11.0.0-develop.104

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -2,12 +2,12 @@
2
2
  * Copyright © 2023 Progress Software Corporation. All rights reserved.
3
3
  * Licensed under commercial license. See LICENSE.md in the project root for more information
4
4
  *-------------------------------------------------------------------------------------------*/
5
- import { Component, TemplateRef, forwardRef, ViewChild, ContentChildren, QueryList, Input } from '@angular/core';
5
+ import { Component, TemplateRef, forwardRef, ViewChild, ContentChildren, QueryList, Input, ViewChildren } from '@angular/core';
6
6
  import { LocalizationService } from '@progress/kendo-angular-l10n';
7
7
  import { ToolBarToolComponent } from './toolbar-tool.component';
8
8
  import { ToolBarButtonComponent } from './toolbar-button.component';
9
- import { ButtonGroupComponent } from '@progress/kendo-angular-buttons';
10
9
  import { makePeeker, getIndexOfFocused, seekFocusedIndex, getNextKey, getPrevKey, areEqual } from '../util';
10
+ import { ButtonGroupComponent } from '@progress/kendo-angular-buttons';
11
11
  import * as i0 from "@angular/core";
12
12
  import * as i1 from "@progress/kendo-angular-l10n";
13
13
  import * as i2 from "@progress/kendo-angular-buttons";
@@ -36,9 +36,14 @@ export class ToolBarButtonGroupComponent extends ToolBarToolComponent {
36
36
  }
37
37
  }
38
38
  get buttonElements() {
39
- return this.getButtonGroup()
40
- .buttons.filter(b => !b.isDisabled)
41
- .map(b => b.element);
39
+ if (this.overflows) {
40
+ return [...this.overflowListItems.toArray().filter(el => !el.nativeElement.classList.contains('k-disabled'))].map(el => el.nativeElement);
41
+ }
42
+ else {
43
+ return this.toolbarButtonGroup
44
+ .buttons.filter(b => !b.isDisabled)
45
+ .map(b => b.element);
46
+ }
42
47
  }
43
48
  /**
44
49
  * @hidden
@@ -60,6 +65,20 @@ export class ToolBarButtonGroupComponent extends ToolBarToolComponent {
60
65
  button.selected = state;
61
66
  button.selectedChange.emit(state);
62
67
  }
68
+ /**
69
+ * @hidden
70
+ */
71
+ overflowSelectedChangeHandler(button) {
72
+ if (this.selection === 'multiple') {
73
+ button.selected = !button.selected;
74
+ }
75
+ else {
76
+ const filteredButtons = this.buttonComponents.filter(b => b !== button);
77
+ filteredButtons.forEach(b => b.selected = false);
78
+ button.selected = !button.selected;
79
+ }
80
+ button.selectedChange.emit(button.selected);
81
+ }
63
82
  /**
64
83
  * @hidden
65
84
  */
@@ -94,8 +113,24 @@ export class ToolBarButtonGroupComponent extends ToolBarToolComponent {
94
113
  this.focusButton(this.focusedIndex, ev);
95
114
  return !isUnmodified(this.focusedIndex);
96
115
  }
97
- getButtonGroup() {
98
- return this.overflows ? this.overflowButtonGroup : this.toolbarButtonGroup;
116
+ /**
117
+ * @hidden
118
+ */
119
+ handleClick(ev, button) {
120
+ button.click.emit(ev);
121
+ this.onButtonClick(ev);
122
+ this.overflowSelectedChangeHandler(button);
123
+ }
124
+ /**
125
+ * @hidden
126
+ */
127
+ getIconClasses(button) {
128
+ if (button.overflowOptions.icon) {
129
+ return `k-icon k-i-${button.overflowOptions.icon}`;
130
+ }
131
+ else if (button.overflowOptions.iconClass) {
132
+ return button.overflowOptions.iconClass;
133
+ }
99
134
  }
100
135
  focusButton(index, ev) {
101
136
  // Guard against focusing twice on mousedown.
@@ -105,9 +140,10 @@ export class ToolBarButtonGroupComponent extends ToolBarToolComponent {
105
140
  }
106
141
  }
107
142
  ToolBarButtonGroupComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: ToolBarButtonGroupComponent, deps: [{ token: i1.LocalizationService }], target: i0.ɵɵFactoryTarget.Component });
108
- ToolBarButtonGroupComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.11", type: ToolBarButtonGroupComponent, selector: "kendo-toolbar-buttongroup", inputs: { disabled: "disabled", selection: "selection", width: "width", look: "look" }, providers: [LocalizationService, { provide: ToolBarToolComponent, useExisting: forwardRef(() => ToolBarButtonGroupComponent) }], queries: [{ propertyName: "buttonComponents", predicate: i0.forwardRef(function () { return ToolBarButtonComponent; }) }], viewQueries: [{ propertyName: "toolbarTemplate", first: true, predicate: ["toolbarTemplate"], descendants: true, static: true }, { propertyName: "popupTemplate", first: true, predicate: ["popupTemplate"], descendants: true, static: true }, { propertyName: "toolbarButtonGroup", first: true, predicate: ["toolbarButtonGroup"], descendants: true }, { propertyName: "overflowButtonGroup", first: true, predicate: ["overflowButtonGroup"], descendants: true }], exportAs: ["kendoToolBarButtonGroup"], usesInheritance: true, ngImport: i0, template: `
143
+ ToolBarButtonGroupComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.11", type: ToolBarButtonGroupComponent, selector: "kendo-toolbar-buttongroup", inputs: { disabled: "disabled", selection: "selection", width: "width", look: "look" }, providers: [LocalizationService, { provide: ToolBarToolComponent, useExisting: forwardRef(() => ToolBarButtonGroupComponent) }], queries: [{ propertyName: "buttonComponents", predicate: i0.forwardRef(function () { return ToolBarButtonComponent; }) }], viewQueries: [{ propertyName: "toolbarTemplate", first: true, predicate: ["toolbarTemplate"], descendants: true, static: true }, { propertyName: "popupTemplate", first: true, predicate: ["popupTemplate"], descendants: true, static: true }, { propertyName: "toolbarButtonGroup", first: true, predicate: ["toolbarButtonGroup"], descendants: true }, { propertyName: "overflowListItems", predicate: ["listItem"], descendants: true }], exportAs: ["kendoToolBarButtonGroup"], usesInheritance: true, ngImport: i0, template: `
109
144
  <ng-template #toolbarTemplate>
110
145
  <kendo-buttongroup
146
+ class="k-toolbar-button-group"
111
147
  #toolbarButtonGroup
112
148
  [tabIndex]="-1"
113
149
  [selection]="selection"
@@ -139,37 +175,25 @@ ToolBarButtonGroupComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.
139
175
  </kendo-buttongroup>
140
176
  </ng-template>
141
177
  <ng-template #popupTemplate>
142
- <kendo-buttongroup
143
- #overflowButtonGroup
144
- class="k-overflow-button"
145
- [tabIndex]="-1"
146
- [selection]="selection"
147
- [disabled]="disabled"
148
- [width]="width"
149
- >
150
- <span
151
- kendoButton
152
- class="k-overflow-button"
153
- *ngFor="let button of buttonComponents"
178
+ <ng-container *ngFor="let button of buttonComponents">
179
+ <div #listItem
180
+ tabindex="-1"
181
+ role="menuitem"
182
+ class="k-item k-menu-item"
183
+ [class.k-disabled]="disabled || button.disabled"
154
184
  [ngStyle]="button.style"
155
185
  [ngClass]="button.className"
156
- [attr.title]="button.title"
157
- [disabled]="button.disabled"
158
- [togglable]="button.togglable"
159
- [selected]="button.selected"
160
- [fillMode]="button.fillMode"
161
- [themeColor]="button.fillMode ? button.themeColor : null"
162
- [icon]="button.overflowOptions.icon"
163
- [iconClass]="button.overflowOptions.iconClass"
164
- [imageUrl]="button.overflowOptions.imageUrl"
165
- (click)="button.click.emit($event); onButtonClick($event)"
166
- (selectedChange)="selectedChangeHandler($event, button)"
167
- >
168
- {{ button.overflowOptions.text }}
169
- </span>
170
- </kendo-buttongroup>
186
+ (click)="handleClick($event, button)">
187
+ <span
188
+ class="k-link k-menu-link"
189
+ [class.k-selected]="button.selected">
190
+ <span *ngIf="button.overflowOptions.icon || button.overflowOptions.iconClass" [ngClass]="getIconClasses(button)"></span>
191
+ <span *ngIf="button.overflowOptions.text" class="k-menu-link-text">{{button.overflowOptions.text}}</span>
192
+ </span>
193
+ </div>
194
+ </ng-container>
171
195
  </ng-template>
172
- `, isInline: true, components: [{ type: i2.ButtonGroupComponent, selector: "kendo-buttongroup", inputs: ["disabled", "selection", "width", "tabIndex", "navigable"], outputs: ["navigate"], exportAs: ["kendoButtonGroup"] }, { type: i2.Button, selector: "button[kendoButton], span[kendoButton], kendo-button", inputs: ["toggleable", "togglable", "selected", "tabIndex", "imageUrl", "iconClass", "icon", "disabled", "size", "rounded", "fillMode", "themeColor", "svgIcon", "role", "primary", "look"], outputs: ["selectedChange", "click"], exportAs: ["kendoButton"] }], directives: [{ type: i3.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { type: i3.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }, { type: i3.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }] });
196
+ `, isInline: true, components: [{ type: i2.ButtonGroupComponent, selector: "kendo-buttongroup", inputs: ["disabled", "selection", "width", "tabIndex", "navigable"], outputs: ["navigate"], exportAs: ["kendoButtonGroup"] }, { type: i2.Button, selector: "button[kendoButton], span[kendoButton], kendo-button", inputs: ["toggleable", "togglable", "selected", "tabIndex", "imageUrl", "iconClass", "icon", "disabled", "size", "rounded", "fillMode", "themeColor", "svgIcon", "role", "primary", "look"], outputs: ["selectedChange", "click"], exportAs: ["kendoButton"] }], directives: [{ type: i3.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { type: i3.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }, { type: i3.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { type: i3.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }] });
173
197
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: ToolBarButtonGroupComponent, decorators: [{
174
198
  type: Component,
175
199
  args: [{
@@ -179,6 +203,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImpo
179
203
  template: `
180
204
  <ng-template #toolbarTemplate>
181
205
  <kendo-buttongroup
206
+ class="k-toolbar-button-group"
182
207
  #toolbarButtonGroup
183
208
  [tabIndex]="-1"
184
209
  [selection]="selection"
@@ -210,35 +235,23 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImpo
210
235
  </kendo-buttongroup>
211
236
  </ng-template>
212
237
  <ng-template #popupTemplate>
213
- <kendo-buttongroup
214
- #overflowButtonGroup
215
- class="k-overflow-button"
216
- [tabIndex]="-1"
217
- [selection]="selection"
218
- [disabled]="disabled"
219
- [width]="width"
220
- >
221
- <span
222
- kendoButton
223
- class="k-overflow-button"
224
- *ngFor="let button of buttonComponents"
238
+ <ng-container *ngFor="let button of buttonComponents">
239
+ <div #listItem
240
+ tabindex="-1"
241
+ role="menuitem"
242
+ class="k-item k-menu-item"
243
+ [class.k-disabled]="disabled || button.disabled"
225
244
  [ngStyle]="button.style"
226
245
  [ngClass]="button.className"
227
- [attr.title]="button.title"
228
- [disabled]="button.disabled"
229
- [togglable]="button.togglable"
230
- [selected]="button.selected"
231
- [fillMode]="button.fillMode"
232
- [themeColor]="button.fillMode ? button.themeColor : null"
233
- [icon]="button.overflowOptions.icon"
234
- [iconClass]="button.overflowOptions.iconClass"
235
- [imageUrl]="button.overflowOptions.imageUrl"
236
- (click)="button.click.emit($event); onButtonClick($event)"
237
- (selectedChange)="selectedChangeHandler($event, button)"
238
- >
239
- {{ button.overflowOptions.text }}
240
- </span>
241
- </kendo-buttongroup>
246
+ (click)="handleClick($event, button)">
247
+ <span
248
+ class="k-link k-menu-link"
249
+ [class.k-selected]="button.selected">
250
+ <span *ngIf="button.overflowOptions.icon || button.overflowOptions.iconClass" [ngClass]="getIconClasses(button)"></span>
251
+ <span *ngIf="button.overflowOptions.text" class="k-menu-link-text">{{button.overflowOptions.text}}</span>
252
+ </span>
253
+ </div>
254
+ </ng-container>
242
255
  </ng-template>
243
256
  `
244
257
  }]
@@ -256,13 +269,13 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImpo
256
269
  }], popupTemplate: [{
257
270
  type: ViewChild,
258
271
  args: ['popupTemplate', { static: true }]
259
- }], buttonComponents: [{
260
- type: ContentChildren,
261
- args: [forwardRef(() => ToolBarButtonComponent)]
262
272
  }], toolbarButtonGroup: [{
263
273
  type: ViewChild,
264
274
  args: ['toolbarButtonGroup', { static: false }]
265
- }], overflowButtonGroup: [{
266
- type: ViewChild,
267
- args: ['overflowButtonGroup', { static: false }]
275
+ }], overflowListItems: [{
276
+ type: ViewChildren,
277
+ args: ['listItem']
278
+ }], buttonComponents: [{
279
+ type: ContentChildren,
280
+ args: [forwardRef(() => ToolBarButtonComponent)]
268
281
  }] } });
@@ -2,15 +2,13 @@
2
2
  * Copyright © 2023 Progress Software Corporation. All rights reserved.
3
3
  * Licensed under commercial license. See LICENSE.md in the project root for more information
4
4
  *-------------------------------------------------------------------------------------------*/
5
- import { Component, ElementRef, TemplateRef, forwardRef, ViewChild, Input, EventEmitter, Output } from '@angular/core';
5
+ import { Component, ElementRef, TemplateRef, forwardRef, ViewChild, Input, EventEmitter, Output, QueryList, ViewChildren } from '@angular/core';
6
6
  import { ToolBarToolComponent } from './toolbar-tool.component';
7
7
  import { DropDownButtonComponent } from '@progress/kendo-angular-buttons';
8
- import { ToolBarButtonListComponent } from './toolbar-buttonlist.component';
9
8
  import { getValueForLocation, makePeeker, getIndexOfFocused, getPrevKey, getNextKey, seekFocusedIndex, areEqual } from '../util';
10
9
  import * as i0 from "@angular/core";
11
10
  import * as i1 from "@progress/kendo-angular-buttons";
12
- import * as i2 from "./toolbar-buttonlist.component";
13
- import * as i3 from "@angular/common";
11
+ import * as i2 from "@angular/common";
14
12
  /**
15
13
  * Represents the [Kendo UI ToolBar DropDownButton for Angular]({% slug controltypes_toolbar %}#toc-dropdownbuttons).
16
14
  */
@@ -164,13 +162,13 @@ export class ToolBarDropDownButtonComponent extends ToolBarToolComponent {
164
162
  this.setTextDisplayMode();
165
163
  }
166
164
  get overflowButtons() {
167
- return [...this.overflowDropDownButtonButtonList.buttons.toArray().filter(b => !b.nativeElement.disabled)];
165
+ return [...this.overflowListItems.toArray().filter(el => !el.nativeElement.classList.contains('k-disabled'))];
168
166
  }
169
167
  /**
170
168
  * @hidden
171
169
  */
172
170
  onButtonListClick(ev) {
173
- this.focusedIndex = this.overflowDropDownButtonButtonList.buttons
171
+ this.focusedIndex = this.overflowListItems
174
172
  .toArray()
175
173
  .findIndex(b => b.nativeElement.contains(ev.target));
176
174
  }
@@ -209,6 +207,47 @@ export class ToolBarDropDownButtonComponent extends ToolBarToolComponent {
209
207
  return !isUnmodified(this.focusedIndex);
210
208
  }
211
209
  }
210
+ /**
211
+ * @hidden
212
+ */
213
+ getIconClasses(item) {
214
+ if (item) {
215
+ if (item.icon) {
216
+ return `k-icon k-i-${item.icon}`;
217
+ }
218
+ else if (item.iconClass) {
219
+ return item.iconClass;
220
+ }
221
+ }
222
+ else {
223
+ if (this.overflowOptions.icon) {
224
+ return `k-icon k-i-${this.overflowOptions.icon}`;
225
+ }
226
+ else if (this.overflowOptions.iconClass) {
227
+ return this.overflowOptions.iconClass;
228
+ }
229
+ }
230
+ }
231
+ /**
232
+ * @hidden
233
+ */
234
+ getText(dataItem) {
235
+ if (dataItem) {
236
+ return this.textField ? dataItem[this.textField] : dataItem.text || dataItem;
237
+ }
238
+ return undefined;
239
+ }
240
+ /**
241
+ * @hidden
242
+ */
243
+ handleClick(ev, item, index) {
244
+ this.onButtonListClick(ev);
245
+ const dataItem = this.data[index];
246
+ if (item.click) {
247
+ item.click(dataItem);
248
+ }
249
+ this.itemClick.emit(dataItem);
250
+ }
212
251
  focusButton(index, ev) {
213
252
  if (!ev.type || ev.type === 'focus' || ev.type === 'keydown') {
214
253
  this.overflowButtons[index].nativeElement.focus();
@@ -220,10 +259,11 @@ export class ToolBarDropDownButtonComponent extends ToolBarToolComponent {
220
259
  }
221
260
  }
222
261
  ToolBarDropDownButtonComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: ToolBarDropDownButtonComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
223
- ToolBarDropDownButtonComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.11", type: ToolBarDropDownButtonComponent, selector: "kendo-toolbar-dropdownbutton", inputs: { showText: "showText", showIcon: "showIcon", text: "text", icon: "icon", iconClass: "iconClass", imageUrl: "imageUrl", popupSettings: "popupSettings", look: "look", primary: "primary", fillMode: "fillMode", themeColor: "themeColor", buttonClass: "buttonClass", textField: "textField", disabled: "disabled", data: "data" }, outputs: { itemClick: "itemClick", open: "open", close: "close" }, providers: [{ provide: ToolBarToolComponent, useExisting: forwardRef(() => ToolBarDropDownButtonComponent) }], viewQueries: [{ propertyName: "toolbarTemplate", first: true, predicate: ["toolbarTemplate"], descendants: true, static: true }, { propertyName: "popupTemplate", first: true, predicate: ["popupTemplate"], descendants: true, static: true }, { propertyName: "dropdownButton", first: true, predicate: ["dropdownButton"], descendants: true, read: ElementRef, static: true }, { propertyName: "dropDownButtonComponent", first: true, predicate: DropDownButtonComponent, descendants: true }, { propertyName: "toolbarDropDownButton", first: true, predicate: ["toolbarDropDownButton"], descendants: true }, { propertyName: "overflowDropDownButtonButtonList", first: true, predicate: ["overflowDropDownButtonButtonList"], descendants: true }], exportAs: ["kendoToolBarDropDownButton"], usesInheritance: true, ngImport: i0, template: `
262
+ ToolBarDropDownButtonComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.11", type: ToolBarDropDownButtonComponent, selector: "kendo-toolbar-dropdownbutton", inputs: { showText: "showText", showIcon: "showIcon", text: "text", icon: "icon", iconClass: "iconClass", imageUrl: "imageUrl", popupSettings: "popupSettings", look: "look", primary: "primary", fillMode: "fillMode", themeColor: "themeColor", buttonClass: "buttonClass", textField: "textField", disabled: "disabled", data: "data" }, outputs: { itemClick: "itemClick", open: "open", close: "close" }, providers: [{ provide: ToolBarToolComponent, useExisting: forwardRef(() => ToolBarDropDownButtonComponent) }], viewQueries: [{ propertyName: "toolbarTemplate", first: true, predicate: ["toolbarTemplate"], descendants: true, static: true }, { propertyName: "popupTemplate", first: true, predicate: ["popupTemplate"], descendants: true, static: true }, { propertyName: "dropdownButton", first: true, predicate: ["dropdownButton"], descendants: true, read: ElementRef, static: true }, { propertyName: "dropDownButtonComponent", first: true, predicate: DropDownButtonComponent, descendants: true }, { propertyName: "toolbarDropDownButton", first: true, predicate: ["toolbarDropDownButton"], descendants: true }, { propertyName: "overflowListItems", predicate: ["listItem"], descendants: true }], exportAs: ["kendoToolBarDropDownButton"], usesInheritance: true, ngImport: i0, template: `
224
263
  <ng-template #toolbarTemplate>
225
264
  <kendo-dropdownbutton
226
265
  #toolbarDropDownButton
266
+ class="k-toolbar-menu-button"
227
267
  [icon]="toolbarOptions.icon"
228
268
  [iconClass]="toolbarOptions.iconClass"
229
269
  [imageUrl]="toolbarOptions.imageUrl"
@@ -243,31 +283,33 @@ ToolBarDropDownButtonComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "
243
283
  </kendo-dropdownbutton>
244
284
  </ng-template>
245
285
  <ng-template #popupTemplate>
246
- <button
247
- type="button"
286
+ <div
248
287
  tabindex="-1"
249
- kendoButton
250
- class="k-overflow-button"
251
- [disabled]="true"
252
- [icon]="overflowOptions.icon"
253
- [iconClass]="overflowOptions.iconClass"
254
- [imageUrl]="overflowOptions.imageUrl"
255
- [ngClass]="buttonClass"
256
- (click)="itemClick.emit($event)"
257
- >
258
- {{ overflowOptions.text }}
259
- </button>
260
- <kendo-toolbar-buttonlist
261
- #overflowDropDownButtonButtonList
262
- [data]="data"
263
- [disabled]="disabled"
264
- [textField]="textField"
265
- (itemClick)="itemClick.emit($event)"
266
- (click)="onButtonListClick($event)"
267
- >
268
- </kendo-toolbar-buttonlist>
288
+ role="menuitem"
289
+ class="k-item k-menu-item k-disabled"
290
+ [ngClass]="buttonClass">
291
+ <span
292
+ [ngClass]="{'k-link': true, 'k-menu-link': true}">
293
+ <span *ngIf="overflowOptions.icon || overflowOptions.iconClass" [ngClass]="getIconClasses()"></span>
294
+ <span *ngIf="overflowOptions.text" class="k-menu-link-text">{{overflowOptions.text}}</span>
295
+ </span>
296
+ </div>
297
+ <ng-container *ngFor="let item of data; let i = index">
298
+ <div #listItem
299
+ tabindex="-1"
300
+ role="menuitem"
301
+ class="k-item k-menu-item"
302
+ [class.k-disabled]="disabled || item.disabled"
303
+ (click)="handleClick($event, item, i)">
304
+ <span
305
+ class="k-link k-menu-link">
306
+ <span *ngIf="item.icon || item.iconClass" [ngClass]="getIconClasses(item)"></span>
307
+ <span *ngIf="getText(item)" class="k-menu-link-text">{{ getText(item) }}</span>
308
+ </span>
309
+ </div>
310
+ </ng-container>
269
311
  </ng-template>
270
- `, isInline: true, components: [{ type: i1.DropDownButtonComponent, selector: "kendo-dropdownbutton", inputs: ["icon", "svgIcon", "iconClass", "imageUrl", "textField", "data", "size", "rounded", "fillMode", "themeColor"], outputs: ["itemClick", "focus", "blur"], exportAs: ["kendoDropDownButton"] }, { type: i1.Button, selector: "button[kendoButton], span[kendoButton], kendo-button", inputs: ["toggleable", "togglable", "selected", "tabIndex", "imageUrl", "iconClass", "icon", "disabled", "size", "rounded", "fillMode", "themeColor", "svgIcon", "role", "primary", "look"], outputs: ["selectedChange", "click"], exportAs: ["kendoButton"] }, { type: i2.ToolBarButtonListComponent, selector: "kendo-toolbar-buttonlist", inputs: ["data", "textField", "disabled", "fillMode", "themeColor"], outputs: ["itemClick"] }], directives: [{ type: i3.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }] });
312
+ `, isInline: true, components: [{ type: i1.DropDownButtonComponent, selector: "kendo-dropdownbutton", inputs: ["icon", "svgIcon", "iconClass", "imageUrl", "textField", "data", "size", "rounded", "fillMode", "themeColor"], outputs: ["itemClick", "focus", "blur"], exportAs: ["kendoDropDownButton"] }], directives: [{ type: i2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }] });
271
313
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: ToolBarDropDownButtonComponent, decorators: [{
272
314
  type: Component,
273
315
  args: [{
@@ -278,6 +320,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImpo
278
320
  <ng-template #toolbarTemplate>
279
321
  <kendo-dropdownbutton
280
322
  #toolbarDropDownButton
323
+ class="k-toolbar-menu-button"
281
324
  [icon]="toolbarOptions.icon"
282
325
  [iconClass]="toolbarOptions.iconClass"
283
326
  [imageUrl]="toolbarOptions.imageUrl"
@@ -297,29 +340,31 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImpo
297
340
  </kendo-dropdownbutton>
298
341
  </ng-template>
299
342
  <ng-template #popupTemplate>
300
- <button
301
- type="button"
343
+ <div
302
344
  tabindex="-1"
303
- kendoButton
304
- class="k-overflow-button"
305
- [disabled]="true"
306
- [icon]="overflowOptions.icon"
307
- [iconClass]="overflowOptions.iconClass"
308
- [imageUrl]="overflowOptions.imageUrl"
309
- [ngClass]="buttonClass"
310
- (click)="itemClick.emit($event)"
311
- >
312
- {{ overflowOptions.text }}
313
- </button>
314
- <kendo-toolbar-buttonlist
315
- #overflowDropDownButtonButtonList
316
- [data]="data"
317
- [disabled]="disabled"
318
- [textField]="textField"
319
- (itemClick)="itemClick.emit($event)"
320
- (click)="onButtonListClick($event)"
321
- >
322
- </kendo-toolbar-buttonlist>
345
+ role="menuitem"
346
+ class="k-item k-menu-item k-disabled"
347
+ [ngClass]="buttonClass">
348
+ <span
349
+ [ngClass]="{'k-link': true, 'k-menu-link': true}">
350
+ <span *ngIf="overflowOptions.icon || overflowOptions.iconClass" [ngClass]="getIconClasses()"></span>
351
+ <span *ngIf="overflowOptions.text" class="k-menu-link-text">{{overflowOptions.text}}</span>
352
+ </span>
353
+ </div>
354
+ <ng-container *ngFor="let item of data; let i = index">
355
+ <div #listItem
356
+ tabindex="-1"
357
+ role="menuitem"
358
+ class="k-item k-menu-item"
359
+ [class.k-disabled]="disabled || item.disabled"
360
+ (click)="handleClick($event, item, i)">
361
+ <span
362
+ class="k-link k-menu-link">
363
+ <span *ngIf="item.icon || item.iconClass" [ngClass]="getIconClasses(item)"></span>
364
+ <span *ngIf="getText(item)" class="k-menu-link-text">{{ getText(item) }}</span>
365
+ </span>
366
+ </div>
367
+ </ng-container>
323
368
  </ng-template>
324
369
  `
325
370
  }]
@@ -371,10 +416,10 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImpo
371
416
  }], dropDownButtonComponent: [{
372
417
  type: ViewChild,
373
418
  args: [DropDownButtonComponent, { static: false }]
419
+ }], overflowListItems: [{
420
+ type: ViewChildren,
421
+ args: ['listItem']
374
422
  }], toolbarDropDownButton: [{
375
423
  type: ViewChild,
376
424
  args: ['toolbarDropDownButton', { static: false }]
377
- }], overflowDropDownButtonButtonList: [{
378
- type: ViewChild,
379
- args: ['overflowDropDownButtonButtonList', { static: false }]
380
425
  }] } });
@@ -43,6 +43,12 @@ ToolBarSeparatorComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.
43
43
  <ng-template #toolbarTemplate>
44
44
  <div class="k-separator"></div>
45
45
  </ng-template>
46
+
47
+ <ng-template #popupTemplate>
48
+ <div class="k-item k-menu-item">
49
+ <div class="k-separator k-separator-horizontal"></div>
50
+ </div>
51
+ </ng-template>
46
52
  `, isInline: true });
47
53
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: ToolBarSeparatorComponent, decorators: [{
48
54
  type: Component,
@@ -54,6 +60,12 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImpo
54
60
  <ng-template #toolbarTemplate>
55
61
  <div class="k-separator"></div>
56
62
  </ng-template>
63
+
64
+ <ng-template #popupTemplate>
65
+ <div class="k-item k-menu-item">
66
+ <div class="k-separator k-separator-horizontal"></div>
67
+ </div>
68
+ </ng-template>
57
69
  `
58
70
  }]
59
71
  }], ctorParameters: function () { return []; }, propDecorators: { toolbarTemplate: [{