@progress/kendo-angular-toolbar 19.0.0-develop.1 → 19.0.0-develop.11

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.
package/display-mode.d.ts CHANGED
@@ -3,8 +3,14 @@
3
3
  * Licensed under commercial license. See LICENSE.md in the project root for more information
4
4
  *-------------------------------------------------------------------------------------------*/
5
5
  /**
6
- * The position of the text inside the Toolbar buttons.
6
+ * Specifies the visibility of the toolbar tool text or icon.
7
7
  *
8
- * @default 'both'
8
+ * The possible values are:
9
+ * - `always`—The text or icon is always visible, regardless of the current overflow mode.
10
+ * - `toolbar`—The text or icon is displayed in the main ToolBar and in the overflow element when `section` overflow mode is used.
11
+ * - `menu`—The text or icon is displayed only in the overflow popup when `menu` overflow mode is used.
12
+ * - `never`—The text or icon is never rendered.
13
+ *
14
+ * @default 'always'
9
15
  */
10
- export type DisplayMode = 'both' | 'toolbar' | 'overflow';
16
+ export type DisplayMode = 'always' | 'toolbar' | 'menu' | 'never';
@@ -10,7 +10,7 @@ export const packageMetadata = {
10
10
  productName: 'Kendo UI for Angular',
11
11
  productCode: 'KENDOUIANGULAR',
12
12
  productCodes: ['KENDOUIANGULAR'],
13
- publishDate: 1745317389,
14
- version: '19.0.0-develop.1',
13
+ publishDate: 1746798414,
14
+ version: '19.0.0-develop.11',
15
15
  licensingDocsUrl: 'https://www.telerik.com/kendo-angular-ui/my-license/'
16
16
  };
@@ -59,24 +59,38 @@ export class ToolBarRendererComponent {
59
59
  if (this.resizable) {
60
60
  if (this.location === 'toolbar') {
61
61
  this.template = this.tool.toolbarTemplate;
62
- this.renderer.setStyle(this.internalComponentRef, 'visibility', 'hidden');
63
- this.renderer.setStyle(this.internalComponentRef, 'display', 'none');
62
+ this.hideTool();
64
63
  }
65
64
  else if (this.location === 'section') {
66
65
  this.template = this.tool.toolbarTemplate;
67
- this.renderer.setStyle(this.internalComponentRef, 'visibility', 'visible');
68
- this.renderer.setStyle(this.internalComponentRef, 'display', 'inline-flex');
66
+ if (this.tool.isHidden) {
67
+ this.hideTool();
68
+ }
69
+ else {
70
+ this.renderer.setStyle(this.internalComponentRef, 'visibility', 'visible');
71
+ this.renderer.setStyle(this.internalComponentRef, 'display', 'inline-flex');
72
+ }
69
73
  }
70
74
  else {
71
75
  this.template = this.tool.popupTemplate;
72
- this.renderer.setStyle(this.internalComponentRef, 'display', 'none');
76
+ if (this.tool.isHidden) {
77
+ this.hideTool();
78
+ }
79
+ else {
80
+ this.renderer.setStyle(this.internalComponentRef, 'display', 'none');
81
+ }
73
82
  }
74
83
  }
75
84
  else {
76
85
  this.tool.overflows = false;
77
86
  this.template = this.tool.toolbarTemplate;
78
- this.renderer.setStyle(this.internalComponentRef, 'visibility', 'visible');
79
- this.renderer.setStyle(this.internalComponentRef, 'display', 'inline-flex');
87
+ if (this.tool.isHidden) {
88
+ this.hideTool();
89
+ }
90
+ else {
91
+ this.renderer.setStyle(this.internalComponentRef, 'visibility', 'visible');
92
+ this.renderer.setStyle(this.internalComponentRef, 'display', 'inline-flex');
93
+ }
80
94
  }
81
95
  }
82
96
  ngOnDestroy() {
@@ -104,12 +118,17 @@ export class ToolBarRendererComponent {
104
118
  refresh() {
105
119
  this.tool.location = this.location;
106
120
  if (this.resizable && this.internalComponentRef) {
107
- if (this.location === 'toolbar') {
108
- this.renderer.setStyle(this.internalComponentRef, 'visibility', this.tool.visibility);
109
- this.renderer.setStyle(this.internalComponentRef, 'display', this.tool.toolbarDisplay);
121
+ if (this.tool.isHidden) {
122
+ this.hideTool();
110
123
  }
111
124
  else {
112
- this.renderer.setStyle(this.internalComponentRef, 'display', this.tool.overflowDisplay);
125
+ if (this.location === 'toolbar') {
126
+ this.renderer.setStyle(this.internalComponentRef, 'visibility', this.tool.visibility);
127
+ this.renderer.setStyle(this.internalComponentRef, 'display', this.tool.toolbarDisplay);
128
+ }
129
+ else {
130
+ this.renderer.setStyle(this.internalComponentRef, 'display', this.tool.overflowDisplay);
131
+ }
113
132
  }
114
133
  this.updateTools();
115
134
  }
@@ -138,6 +157,10 @@ export class ToolBarRendererComponent {
138
157
  }
139
158
  }
140
159
  }
160
+ hideTool() {
161
+ this.renderer.setStyle(this.internalComponentRef, 'visibility', 'hidden');
162
+ this.renderer.setStyle(this.internalComponentRef, 'display', 'none');
163
+ }
141
164
  static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: ToolBarRendererComponent, deps: [{ token: i0.Renderer2 }, { token: i1.RendererService }, { token: i2.RefreshService }, { token: i3.ToolbarToolsService }, { token: i0.ViewContainerRef }], target: i0.ɵɵFactoryTarget.Directive });
142
165
  static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "16.2.12", type: ToolBarRendererComponent, isStandalone: true, selector: "[kendoToolbarRenderer]", inputs: { tool: "tool", location: "location", resizable: "resizable" }, outputs: { rendererClick: "rendererClick" }, providers: [RendererService], ngImport: i0 });
143
166
  }
@@ -178,6 +178,34 @@ export class ToolBarComponent {
178
178
  get tabIndex() {
179
179
  return this.tabindex;
180
180
  }
181
+ /**
182
+ * Specifies the icons visibility for all tools in the ToolBar.
183
+ * This can be overridden by the `showIcon` property of each tool.
184
+ */
185
+ showIcon = 'always';
186
+ /**
187
+ * @hidden
188
+ */
189
+ get normalizedShowIcon() {
190
+ if (typeof this.showIcon === 'boolean') {
191
+ return this.showIcon ? 'always' : 'never';
192
+ }
193
+ return this.showIcon;
194
+ }
195
+ /**
196
+ * Specifies the text visibility for all tools in the ToolBar.
197
+ * This can be overridden by the `showText` property of each tool.
198
+ */
199
+ showText = 'always';
200
+ /**
201
+ * @hidden
202
+ */
203
+ get normalizedShowText() {
204
+ if (typeof this.showText === 'boolean') {
205
+ return this.showText ? 'always' : 'never';
206
+ }
207
+ return this.showText;
208
+ }
181
209
  /**
182
210
  * Fires when the overflow popup of the ToolBar is opened.
183
211
  */
@@ -789,10 +817,10 @@ export class ToolBarComponent {
789
817
  if (containerWidth > childrenWidth) {
790
818
  for (let i = this.overflowTools.length - 1; i >= 0; i--) {
791
819
  width = this.showFirstHiddenTool(containerWidth, childrenWidth);
792
- if (width) {
820
+ if (width > 0) {
793
821
  childrenWidth += width + this.gap;
794
822
  }
795
- else {
823
+ else if (width === 0) {
796
824
  break;
797
825
  }
798
826
  }
@@ -827,7 +855,7 @@ export class ToolBarComponent {
827
855
  tool.overflows = true;
828
856
  }
829
857
  this.refreshService.refresh(tool);
830
- return renderedElement.width; // returns 0 if `overflows` is true
858
+ return tool.isHidden ? -1 : renderedElement.width; // returns 0 if `overflows` is true and -1 if the tool is hidden
831
859
  }
832
860
  setPopupContentDimensions(isSection) {
833
861
  const popupContentContainer = this.popupRef.popup.instance.contentContainer.nativeElement;
@@ -954,7 +982,7 @@ export class ToolBarComponent {
954
982
  });
955
983
  }
956
984
  static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: ToolBarComponent, deps: [{ token: i1.LocalizationService }, { token: i2.PopupService }, { token: i3.RefreshService }, { token: i4.NavigationService }, { token: i0.ElementRef }, { token: i0.NgZone }, { token: i0.Renderer2 }, { token: i0.ChangeDetectorRef }, { token: i5.ToolbarToolsService }, { token: i6.ScrollService }], target: i0.ɵɵFactoryTarget.Component });
957
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: ToolBarComponent, isStandalone: true, selector: "kendo-toolbar", inputs: { overflow: "overflow", resizable: "resizable", popupSettings: "popupSettings", fillMode: "fillMode", tabindex: "tabindex", size: "size", tabIndex: "tabIndex" }, outputs: { open: "open", close: "close" }, host: { listeners: { "focus": "onFocus($event)", "focusout": "onFocusOut($event)" }, properties: { "class.k-toolbar": "this.hostClass", "class.k-toolbar-scrollable": "this.scrollableClass", "class.k-toolbar-section": "this.sectionClass", "attr.role": "this.role", "attr.dir": "this.getDir", "class.k-toolbar-resizable": "this.resizableClass" } }, providers: [
985
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: ToolBarComponent, isStandalone: true, selector: "kendo-toolbar", inputs: { overflow: "overflow", resizable: "resizable", popupSettings: "popupSettings", fillMode: "fillMode", tabindex: "tabindex", size: "size", tabIndex: "tabIndex", showIcon: "showIcon", showText: "showText" }, outputs: { open: "open", close: "close" }, host: { listeners: { "focus": "onFocus($event)", "focusout": "onFocusOut($event)" }, properties: { "class.k-toolbar": "this.hostClass", "class.k-toolbar-scrollable": "this.scrollableClass", "class.k-toolbar-section": "this.sectionClass", "attr.role": "this.role", "attr.dir": "this.getDir", "class.k-toolbar-resizable": "this.resizableClass" } }, providers: [
958
986
  RefreshService,
959
987
  NavigationService,
960
988
  LocalizationService,
@@ -1397,6 +1425,10 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
1397
1425
  }], tabIndex: [{
1398
1426
  type: Input,
1399
1427
  args: ['tabIndex']
1428
+ }], showIcon: [{
1429
+ type: Input
1430
+ }], showText: [{
1431
+ type: Input
1400
1432
  }], open: [{
1401
1433
  type: Output
1402
1434
  }], close: [{
@@ -10,28 +10,37 @@ import { take } from 'rxjs/operators';
10
10
  import { IconWrapperComponent } from '@progress/kendo-angular-icons';
11
11
  import { BadgeComponent } from '@progress/kendo-angular-indicators';
12
12
  import { NgStyle, NgClass, NgIf } from '@angular/common';
13
+ import { ToolBarComponent } from '../toolbar.component';
13
14
  import * as i0 from "@angular/core";
15
+ import * as i1 from "../toolbar.component";
14
16
  /**
15
17
  * Represents the [Kendo UI ToolBar Button tool for Angular]({% slug controltypes_toolbar %}#toc-buttons).
16
18
  */
17
19
  export class ToolBarButtonComponent extends ToolBarToolComponent {
18
20
  element;
19
21
  zone;
22
+ host;
20
23
  // showText and showIcon showIcon should be declared first
21
24
  /**
22
- * Specifies where button text should be displayed
25
+ * Specifies the button text visibility.
23
26
  */
24
27
  set showText(value) {
25
28
  this._showText = value;
26
29
  this.setTextDisplayMode();
27
30
  }
28
31
  get showText() {
29
- return this._showText;
32
+ return this._showText || this.host.normalizedShowText;
30
33
  }
31
34
  /**
32
- * Specifies where button icon should be displayed
35
+ * Specifies the button icon visibility.
33
36
  */
34
- showIcon = 'both';
37
+ set showIcon(value) {
38
+ this._showIcon = value;
39
+ this.setTextDisplayMode();
40
+ }
41
+ get showIcon() {
42
+ return this._showIcon || this.host.normalizedShowIcon;
43
+ }
35
44
  /**
36
45
  * Specifies the text of the Button ([see example]({% slug controltypes_toolbar %}#toc-buttons)).
37
46
  */
@@ -192,12 +201,14 @@ export class ToolBarButtonComponent extends ToolBarToolComponent {
192
201
  toolbarButtonElement;
193
202
  sectionButtonElement;
194
203
  overflowButtonElement;
195
- _showText = 'both';
204
+ _showText;
205
+ _showIcon;
196
206
  _text;
197
- constructor(element, zone) {
207
+ constructor(element, zone, host) {
198
208
  super();
199
209
  this.element = element;
200
210
  this.zone = zone;
211
+ this.host = host;
201
212
  this.isBuiltInTool = true;
202
213
  }
203
214
  ngOnInit() {
@@ -253,12 +264,12 @@ export class ToolBarButtonComponent extends ToolBarToolComponent {
253
264
  return this[`${this.location}ButtonElement`]?.nativeElement;
254
265
  }
255
266
  setTextDisplayMode() {
256
- this.toolbarOptions.text = this.showText === 'overflow' ? undefined : this.text;
267
+ this.toolbarOptions.text = this.showText === 'menu' || this.showText === 'never' ? undefined : this.text;
257
268
  this.zone.onStable.pipe(take(1)).subscribe(() => {
258
- this.overflowOptions.text = this.showText === 'toolbar' ? undefined : this.text;
269
+ this.overflowOptions.text = this.showText === 'toolbar' || this.showText === 'never' ? undefined : this.text;
259
270
  });
260
271
  }
261
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: ToolBarButtonComponent, deps: [{ token: i0.ElementRef }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component });
272
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: ToolBarButtonComponent, deps: [{ token: i0.ElementRef }, { token: i0.NgZone }, { token: i1.ToolBarComponent }], target: i0.ɵɵFactoryTarget.Component });
262
273
  static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: ToolBarButtonComponent, isStandalone: true, selector: "kendo-toolbar-button", inputs: { showText: "showText", showIcon: "showIcon", text: "text", style: "style", className: "className", title: "title", disabled: "disabled", toggleable: "toggleable", look: "look", togglable: "togglable", selected: "selected", fillMode: "fillMode", themeColor: "themeColor", icon: "icon", iconClass: "iconClass", svgIcon: "svgIcon", imageUrl: "imageUrl" }, outputs: { click: "click", pointerdown: "pointerdown", selectedChange: "selectedChange" }, providers: [{ provide: ToolBarToolComponent, useExisting: forwardRef(() => ToolBarButtonComponent) }], viewQueries: [{ propertyName: "toolbarButtonElement", first: true, predicate: ["toolbarButton"], descendants: true, read: ElementRef }, { propertyName: "sectionButtonElement", first: true, predicate: ["sectionButton"], descendants: true, read: ElementRef }, { propertyName: "overflowButtonElement", first: true, predicate: ["overflowButton"], descendants: true, read: ElementRef }], exportAs: ["kendoToolBarButton"], usesInheritance: true, ngImport: i0, template: `
263
274
  <ng-template #toolbarTemplate>
264
275
  <button
@@ -435,7 +446,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
435
446
  standalone: true,
436
447
  imports: [ButtonComponent, NgStyle, NgClass, NgIf, IconWrapperComponent, BadgeComponent],
437
448
  }]
438
- }], ctorParameters: function () { return [{ type: i0.ElementRef }, { type: i0.NgZone }]; }, propDecorators: { showText: [{
449
+ }], ctorParameters: function () { return [{ type: i0.ElementRef }, { type: i0.NgZone }, { type: i1.ToolBarComponent }]; }, propDecorators: { showText: [{
439
450
  type: Input
440
451
  }], showIcon: [{
441
452
  type: Input
@@ -9,13 +9,16 @@ import { getValueForLocation, makePeeker, getIndexOfFocused, getPrevKey, getNext
9
9
  import { IconWrapperComponent } from '@progress/kendo-angular-icons';
10
10
  import { NgClass, NgIf, NgFor } from '@angular/common';
11
11
  import { take } from 'rxjs/operators';
12
+ import { ToolBarComponent } from '../toolbar.component';
12
13
  import * as i0 from "@angular/core";
14
+ import * as i1 from "../toolbar.component";
13
15
  /**
14
16
  * Represents the [Kendo UI ToolBar DropDownButton for Angular](slug:controltypes_toolbar#drop-down-buttons).
15
17
  */
16
18
  export class ToolBarDropDownButtonComponent extends ToolBarToolComponent {
17
19
  zone;
18
20
  renderer;
21
+ host;
19
22
  /**
20
23
  * Allows showing the default arrow icon or providing alternative one instead.
21
24
  * @default false
@@ -28,19 +31,24 @@ export class ToolBarDropDownButtonComponent extends ToolBarToolComponent {
28
31
  title = '';
29
32
  // showText and showIcon showIcon should be declared first
30
33
  /**
31
- * Defines the location of the button text that will be displayed.
34
+ * Specifies the button text visibility.
32
35
  */
33
36
  set showText(value) {
34
37
  this._showText = value;
35
38
  this.setTextDisplayMode();
36
39
  }
37
40
  get showText() {
38
- return this._showText;
41
+ return this._showText || this.host.normalizedShowText;
39
42
  }
40
43
  /**
41
- * Defines the location of the button icon that will be displayed.
44
+ * Specifies the button icon visibility.
42
45
  */
43
- showIcon = 'both';
46
+ set showIcon(value) {
47
+ this._showIcon = value;
48
+ }
49
+ get showIcon() {
50
+ return this._showIcon || this.host.normalizedShowIcon;
51
+ }
44
52
  /**
45
53
  * Sets the text of the DropDownButton
46
54
  * ([see example](slug:controltypes_toolbar#toc-drop-down-buttons)).
@@ -215,14 +223,16 @@ export class ToolBarDropDownButtonComponent extends ToolBarToolComponent {
215
223
  _data;
216
224
  _popupSettings = { animate: true, popupClass: '' };
217
225
  focusedIndex = -1;
218
- _showText = 'both';
226
+ _showText;
227
+ _showIcon;
219
228
  _text;
220
229
  getNextKey;
221
230
  getPrevKey;
222
- constructor(zone, renderer) {
231
+ constructor(zone, renderer, host) {
223
232
  super();
224
233
  this.zone = zone;
225
234
  this.renderer = renderer;
235
+ this.host = host;
226
236
  this.getNextKey = getNextKey();
227
237
  this.getPrevKey = getPrevKey();
228
238
  this.isBuiltInTool = true;
@@ -232,9 +242,9 @@ export class ToolBarDropDownButtonComponent extends ToolBarToolComponent {
232
242
  }
233
243
  ngAfterViewInit() {
234
244
  this.zone.onStable.pipe(take(1)).subscribe(() => {
235
- const dropDownButton = this[`${this.location}DropDownButton`];
236
- if (dropDownButton) {
237
- this.renderer.addClass(dropDownButton.button.nativeElement, 'k-toolbar-menu-button');
245
+ const dropdownButton = this[`${this.location}DropDownButton`];
246
+ if (dropdownButton?.button) {
247
+ this.renderer.addClass(dropdownButton.button.nativeElement, 'k-toolbar-menu-button');
238
248
  }
239
249
  });
240
250
  }
@@ -288,7 +298,6 @@ export class ToolBarDropDownButtonComponent extends ToolBarToolComponent {
288
298
  if (dataItem) {
289
299
  return this.textField ? dataItem[this.textField] : dataItem.text || dataItem;
290
300
  }
291
- return undefined;
292
301
  }
293
302
  /**
294
303
  * @hidden
@@ -307,10 +316,10 @@ export class ToolBarDropDownButtonComponent extends ToolBarToolComponent {
307
316
  }
308
317
  }
309
318
  setTextDisplayMode() {
310
- this.toolbarOptions.text = this.showText === 'overflow' ? undefined : this.text;
311
- this.overflowOptions.text = this.showText === 'toolbar' ? undefined : this.text;
319
+ this.toolbarOptions.text = this.showText === 'menu' || this.showText === 'never' ? undefined : this.text;
320
+ this.overflowOptions.text = this.showText === 'toolbar' || this.showText === 'never' ? undefined : this.text;
312
321
  }
313
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: ToolBarDropDownButtonComponent, deps: [{ token: i0.NgZone }, { token: i0.Renderer2 }], target: i0.ɵɵFactoryTarget.Component });
322
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: ToolBarDropDownButtonComponent, deps: [{ token: i0.NgZone }, { token: i0.Renderer2 }, { token: i1.ToolBarComponent }], target: i0.ɵɵFactoryTarget.Component });
314
323
  static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: ToolBarDropDownButtonComponent, isStandalone: true, selector: "kendo-toolbar-dropdownbutton", inputs: { arrowIcon: "arrowIcon", title: "title", showText: "showText", showIcon: "showIcon", text: "text", icon: "icon", svgIcon: "svgIcon", 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: "dropdownButton", first: true, predicate: ["dropdownButton"], descendants: true, read: ElementRef, static: true }, { propertyName: "toolbarDropDownButton", first: true, predicate: ["toolbarDropDownButton"], descendants: true }, { propertyName: "sectionDropDownButton", first: true, predicate: ["sectionDropDownButton"], descendants: true }, { propertyName: "overflowListItems", predicate: ["listItem"], descendants: true }], exportAs: ["kendoToolBarDropDownButton"], usesInheritance: true, ngImport: i0, template: `
315
324
  <ng-template #toolbarTemplate>
316
325
  <kendo-dropdownbutton #toolbarDropDownButton
@@ -501,7 +510,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
501
510
  standalone: true,
502
511
  imports: [DropDownButtonComponent, NgClass, NgIf, IconWrapperComponent, NgFor]
503
512
  }]
504
- }], ctorParameters: function () { return [{ type: i0.NgZone }, { type: i0.Renderer2 }]; }, propDecorators: { arrowIcon: [{
513
+ }], ctorParameters: function () { return [{ type: i0.NgZone }, { type: i0.Renderer2 }, { type: i1.ToolBarComponent }]; }, propDecorators: { arrowIcon: [{
505
514
  type: Input
506
515
  }], title: [{
507
516
  type: Input
@@ -9,26 +9,46 @@ import { getValueForLocation, makePeeker, getIndexOfFocused, getPrevKey, getNext
9
9
  import { caretAltDownIcon } from '@progress/kendo-svg-icons';
10
10
  import { IconWrapperComponent } from '@progress/kendo-angular-icons';
11
11
  import { NgClass, NgIf, NgFor } from '@angular/common';
12
+ import { isPresent } from '@progress/kendo-angular-common';
13
+ import { ToolBarComponent } from '../toolbar.component';
12
14
  import * as i0 from "@angular/core";
15
+ import * as i1 from "../toolbar.component";
13
16
  /**
14
17
  * Represents the [Kendo UI ToolBar SplitButton for Angular](slug:controltypes_toolbar#toc-split-buttons).
15
18
  */
16
19
  export class ToolBarSplitButtonComponent extends ToolBarToolComponent {
20
+ host;
17
21
  // showText and showIcon showIcon should be declared first
18
22
  /**
19
- * Specifies where button text should be displayed
23
+ * Specifies the button text visibility.
20
24
  */
21
25
  set showText(value) {
22
- this._showText = value;
26
+ if (!isPresent(value)) {
27
+ this._showText = this.host.normalizedShowText;
28
+ }
29
+ else {
30
+ this._showText = value;
31
+ }
23
32
  this.setTextDisplayMode();
24
33
  }
25
34
  get showText() {
26
- return this._showText;
35
+ return this._showText || this.host.normalizedShowText;
27
36
  }
28
37
  /**
29
- * Specifies where button icon should be displayed
38
+ * Specifies the button icon visibility.
30
39
  */
31
- showIcon = 'both';
40
+ set showIcon(value) {
41
+ if (!isPresent(value)) {
42
+ this._showIcon = this.host.normalizedShowIcon;
43
+ }
44
+ else {
45
+ this._showIcon = value;
46
+ }
47
+ this.setTextDisplayMode();
48
+ }
49
+ get showIcon() {
50
+ return this._showIcon || this.host.normalizedShowIcon;
51
+ }
32
52
  /**
33
53
  * Sets the text of the SplitButton ([see example](slug:controltypes_toolbar#toc-split-buttons)).
34
54
  */
@@ -215,7 +235,8 @@ export class ToolBarSplitButtonComponent extends ToolBarToolComponent {
215
235
  _data;
216
236
  _popupSettings = { animate: true, popupClass: '' };
217
237
  focusedIndex = -1;
218
- _showText = 'both';
238
+ _showText;
239
+ _showIcon;
219
240
  _text;
220
241
  getNextKey;
221
242
  getPrevKey;
@@ -223,8 +244,9 @@ export class ToolBarSplitButtonComponent extends ToolBarToolComponent {
223
244
  sectionSplitButton;
224
245
  overflowMainButton;
225
246
  overflowListItems;
226
- constructor() {
247
+ constructor(host) {
227
248
  super();
249
+ this.host = host;
228
250
  this.getNextKey = getNextKey();
229
251
  this.getPrevKey = getPrevKey();
230
252
  this.isBuiltInTool = true;
@@ -284,7 +306,6 @@ export class ToolBarSplitButtonComponent extends ToolBarToolComponent {
284
306
  if (dataItem) {
285
307
  return this.textField ? dataItem[this.textField] : dataItem.text || dataItem;
286
308
  }
287
- return undefined;
288
309
  }
289
310
  /**
290
311
  * @hidden
@@ -303,10 +324,10 @@ export class ToolBarSplitButtonComponent extends ToolBarToolComponent {
303
324
  }
304
325
  }
305
326
  setTextDisplayMode() {
306
- this.toolbarOptions.text = this.showText === 'overflow' ? undefined : this.text;
307
- this.overflowOptions.text = this.showText === 'toolbar' ? undefined : this.text;
327
+ this.toolbarOptions.text = this.showText === 'menu' || this.showText === 'never' ? undefined : this.text;
328
+ this.overflowOptions.text = this.showText === 'toolbar' || this.showText === 'never' ? undefined : this.text;
308
329
  }
309
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: ToolBarSplitButtonComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
330
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: ToolBarSplitButtonComponent, deps: [{ token: i1.ToolBarComponent }], target: i0.ɵɵFactoryTarget.Component });
310
331
  static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: ToolBarSplitButtonComponent, isStandalone: true, selector: "kendo-toolbar-splitbutton", inputs: { showText: "showText", showIcon: "showIcon", text: "text", icon: "icon", svgIcon: "svgIcon", iconClass: "iconClass", imageUrl: "imageUrl", disabled: "disabled", popupSettings: "popupSettings", fillMode: "fillMode", themeColor: "themeColor", look: "look", buttonClass: "buttonClass", arrowButtonClass: "arrowButtonClass", arrowButtonIcon: "arrowButtonIcon", arrowButtonSvgIcon: "arrowButtonSvgIcon", textField: "textField", data: "data" }, outputs: { buttonClick: "buttonClick", itemClick: "itemClick", open: "open", close: "close" }, providers: [{ provide: ToolBarToolComponent, useExisting: forwardRef(() => ToolBarSplitButtonComponent) }], viewQueries: [{ propertyName: "toolbarSplitButton", first: true, predicate: ["toolbarSplitButton"], descendants: true }, { propertyName: "sectionSplitButton", first: true, predicate: ["sectionSplitButton"], descendants: true }, { propertyName: "overflowMainButton", first: true, predicate: ["overflowMainButton"], descendants: true, read: ElementRef }, { propertyName: "overflowListItems", predicate: ["listItem"], descendants: true }], exportAs: ["kendoToolBarSplitButton"], usesInheritance: true, ngImport: i0, template: `
311
332
  <ng-template #toolbarTemplate>
312
333
  <kendo-splitbutton
@@ -511,7 +532,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
511
532
  standalone: true,
512
533
  imports: [SplitButtonComponent, NgClass, NgIf, IconWrapperComponent, NgFor]
513
534
  }]
514
- }], ctorParameters: function () { return []; }, propDecorators: { showText: [{
535
+ }], ctorParameters: function () { return [{ type: i1.ToolBarComponent }]; }, propDecorators: { showText: [{
515
536
  type: Input
516
537
  }], showIcon: [{
517
538
  type: Input
@@ -17,6 +17,10 @@ export class ToolBarToolComponent {
17
17
  visibility;
18
18
  element;
19
19
  isBuiltInTool = false;
20
+ /**
21
+ * @hidden
22
+ */
23
+ isHidden = false;
20
24
  /**
21
25
  * @hidden
22
26
  */
package/esm2022/util.mjs CHANGED
@@ -179,8 +179,10 @@ export const getValueForLocation = (property, displayMode, overflows) => {
179
179
  switch (displayMode) {
180
180
  case 'toolbar':
181
181
  return overflows ? undefined : property;
182
- case 'overflow':
182
+ case 'menu':
183
183
  return overflows ? property : undefined;
184
+ case 'never':
185
+ return;
184
186
  default:
185
187
  return property;
186
188
  }
@@ -6,7 +6,7 @@ import * as i0 from '@angular/core';
6
6
  import { EventEmitter, Injectable, inject, ElementRef, Directive, ViewChild, Input, Output, forwardRef, Component, HostBinding, ViewContainerRef, ContentChildren, HostListener, isDevMode, ViewChildren, NgModule } from '@angular/core';
7
7
  import * as i2 from '@progress/kendo-angular-popup';
8
8
  import { PopupService } from '@progress/kendo-angular-popup';
9
- import { Keys, isDocumentAvailable, guid, ResizeSensorComponent, ResizeBatchService } from '@progress/kendo-angular-common';
9
+ import { Keys, isDocumentAvailable, guid, ResizeSensorComponent, isPresent as isPresent$1, ResizeBatchService } from '@progress/kendo-angular-common';
10
10
  import * as i1 from '@progress/kendo-angular-l10n';
11
11
  import { ComponentMessages, LocalizationService, L10N_PREFIX } from '@progress/kendo-angular-l10n';
12
12
  import { validatePackage } from '@progress/kendo-licensing';
@@ -26,8 +26,8 @@ const packageMetadata = {
26
26
  productName: 'Kendo UI for Angular',
27
27
  productCode: 'KENDOUIANGULAR',
28
28
  productCodes: ['KENDOUIANGULAR'],
29
- publishDate: 1745317389,
30
- version: '19.0.0-develop.1',
29
+ publishDate: 1746798414,
30
+ version: '19.0.0-develop.11',
31
31
  licensingDocsUrl: 'https://www.telerik.com/kendo-angular-ui/my-license/'
32
32
  };
33
33
 
@@ -222,8 +222,10 @@ const getValueForLocation = (property, displayMode, overflows) => {
222
222
  switch (displayMode) {
223
223
  case 'toolbar':
224
224
  return overflows ? undefined : property;
225
- case 'overflow':
225
+ case 'menu':
226
226
  return overflows ? property : undefined;
227
+ case 'never':
228
+ return;
227
229
  default:
228
230
  return property;
229
231
  }
@@ -447,6 +449,10 @@ class ToolBarToolComponent {
447
449
  visibility;
448
450
  element;
449
451
  isBuiltInTool = false;
452
+ /**
453
+ * @hidden
454
+ */
455
+ isHidden = false;
450
456
  /**
451
457
  * @hidden
452
458
  */
@@ -646,24 +652,38 @@ class ToolBarRendererComponent {
646
652
  if (this.resizable) {
647
653
  if (this.location === 'toolbar') {
648
654
  this.template = this.tool.toolbarTemplate;
649
- this.renderer.setStyle(this.internalComponentRef, 'visibility', 'hidden');
650
- this.renderer.setStyle(this.internalComponentRef, 'display', 'none');
655
+ this.hideTool();
651
656
  }
652
657
  else if (this.location === 'section') {
653
658
  this.template = this.tool.toolbarTemplate;
654
- this.renderer.setStyle(this.internalComponentRef, 'visibility', 'visible');
655
- this.renderer.setStyle(this.internalComponentRef, 'display', 'inline-flex');
659
+ if (this.tool.isHidden) {
660
+ this.hideTool();
661
+ }
662
+ else {
663
+ this.renderer.setStyle(this.internalComponentRef, 'visibility', 'visible');
664
+ this.renderer.setStyle(this.internalComponentRef, 'display', 'inline-flex');
665
+ }
656
666
  }
657
667
  else {
658
668
  this.template = this.tool.popupTemplate;
659
- this.renderer.setStyle(this.internalComponentRef, 'display', 'none');
669
+ if (this.tool.isHidden) {
670
+ this.hideTool();
671
+ }
672
+ else {
673
+ this.renderer.setStyle(this.internalComponentRef, 'display', 'none');
674
+ }
660
675
  }
661
676
  }
662
677
  else {
663
678
  this.tool.overflows = false;
664
679
  this.template = this.tool.toolbarTemplate;
665
- this.renderer.setStyle(this.internalComponentRef, 'visibility', 'visible');
666
- this.renderer.setStyle(this.internalComponentRef, 'display', 'inline-flex');
680
+ if (this.tool.isHidden) {
681
+ this.hideTool();
682
+ }
683
+ else {
684
+ this.renderer.setStyle(this.internalComponentRef, 'visibility', 'visible');
685
+ this.renderer.setStyle(this.internalComponentRef, 'display', 'inline-flex');
686
+ }
667
687
  }
668
688
  }
669
689
  ngOnDestroy() {
@@ -691,12 +711,17 @@ class ToolBarRendererComponent {
691
711
  refresh() {
692
712
  this.tool.location = this.location;
693
713
  if (this.resizable && this.internalComponentRef) {
694
- if (this.location === 'toolbar') {
695
- this.renderer.setStyle(this.internalComponentRef, 'visibility', this.tool.visibility);
696
- this.renderer.setStyle(this.internalComponentRef, 'display', this.tool.toolbarDisplay);
714
+ if (this.tool.isHidden) {
715
+ this.hideTool();
697
716
  }
698
717
  else {
699
- this.renderer.setStyle(this.internalComponentRef, 'display', this.tool.overflowDisplay);
718
+ if (this.location === 'toolbar') {
719
+ this.renderer.setStyle(this.internalComponentRef, 'visibility', this.tool.visibility);
720
+ this.renderer.setStyle(this.internalComponentRef, 'display', this.tool.toolbarDisplay);
721
+ }
722
+ else {
723
+ this.renderer.setStyle(this.internalComponentRef, 'display', this.tool.overflowDisplay);
724
+ }
700
725
  }
701
726
  this.updateTools();
702
727
  }
@@ -725,6 +750,10 @@ class ToolBarRendererComponent {
725
750
  }
726
751
  }
727
752
  }
753
+ hideTool() {
754
+ this.renderer.setStyle(this.internalComponentRef, 'visibility', 'hidden');
755
+ this.renderer.setStyle(this.internalComponentRef, 'display', 'none');
756
+ }
728
757
  static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: ToolBarRendererComponent, deps: [{ token: i0.Renderer2 }, { token: RendererService }, { token: RefreshService }, { token: ToolbarToolsService }, { token: i0.ViewContainerRef }], target: i0.ɵɵFactoryTarget.Directive });
729
758
  static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "16.2.12", type: ToolBarRendererComponent, isStandalone: true, selector: "[kendoToolbarRenderer]", inputs: { tool: "tool", location: "location", resizable: "resizable" }, outputs: { rendererClick: "rendererClick" }, providers: [RendererService], ngImport: i0 });
730
759
  }
@@ -1197,6 +1226,34 @@ class ToolBarComponent {
1197
1226
  get tabIndex() {
1198
1227
  return this.tabindex;
1199
1228
  }
1229
+ /**
1230
+ * Specifies the icons visibility for all tools in the ToolBar.
1231
+ * This can be overridden by the `showIcon` property of each tool.
1232
+ */
1233
+ showIcon = 'always';
1234
+ /**
1235
+ * @hidden
1236
+ */
1237
+ get normalizedShowIcon() {
1238
+ if (typeof this.showIcon === 'boolean') {
1239
+ return this.showIcon ? 'always' : 'never';
1240
+ }
1241
+ return this.showIcon;
1242
+ }
1243
+ /**
1244
+ * Specifies the text visibility for all tools in the ToolBar.
1245
+ * This can be overridden by the `showText` property of each tool.
1246
+ */
1247
+ showText = 'always';
1248
+ /**
1249
+ * @hidden
1250
+ */
1251
+ get normalizedShowText() {
1252
+ if (typeof this.showText === 'boolean') {
1253
+ return this.showText ? 'always' : 'never';
1254
+ }
1255
+ return this.showText;
1256
+ }
1200
1257
  /**
1201
1258
  * Fires when the overflow popup of the ToolBar is opened.
1202
1259
  */
@@ -1808,10 +1865,10 @@ class ToolBarComponent {
1808
1865
  if (containerWidth > childrenWidth) {
1809
1866
  for (let i = this.overflowTools.length - 1; i >= 0; i--) {
1810
1867
  width = this.showFirstHiddenTool(containerWidth, childrenWidth);
1811
- if (width) {
1868
+ if (width > 0) {
1812
1869
  childrenWidth += width + this.gap;
1813
1870
  }
1814
- else {
1871
+ else if (width === 0) {
1815
1872
  break;
1816
1873
  }
1817
1874
  }
@@ -1846,7 +1903,7 @@ class ToolBarComponent {
1846
1903
  tool.overflows = true;
1847
1904
  }
1848
1905
  this.refreshService.refresh(tool);
1849
- return renderedElement.width; // returns 0 if `overflows` is true
1906
+ return tool.isHidden ? -1 : renderedElement.width; // returns 0 if `overflows` is true and -1 if the tool is hidden
1850
1907
  }
1851
1908
  setPopupContentDimensions(isSection) {
1852
1909
  const popupContentContainer = this.popupRef.popup.instance.contentContainer.nativeElement;
@@ -1973,7 +2030,7 @@ class ToolBarComponent {
1973
2030
  });
1974
2031
  }
1975
2032
  static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: ToolBarComponent, deps: [{ token: i1.LocalizationService }, { token: i2.PopupService }, { token: RefreshService }, { token: NavigationService }, { token: i0.ElementRef }, { token: i0.NgZone }, { token: i0.Renderer2 }, { token: i0.ChangeDetectorRef }, { token: ToolbarToolsService }, { token: ScrollService }], target: i0.ɵɵFactoryTarget.Component });
1976
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: ToolBarComponent, isStandalone: true, selector: "kendo-toolbar", inputs: { overflow: "overflow", resizable: "resizable", popupSettings: "popupSettings", fillMode: "fillMode", tabindex: "tabindex", size: "size", tabIndex: "tabIndex" }, outputs: { open: "open", close: "close" }, host: { listeners: { "focus": "onFocus($event)", "focusout": "onFocusOut($event)" }, properties: { "class.k-toolbar": "this.hostClass", "class.k-toolbar-scrollable": "this.scrollableClass", "class.k-toolbar-section": "this.sectionClass", "attr.role": "this.role", "attr.dir": "this.getDir", "class.k-toolbar-resizable": "this.resizableClass" } }, providers: [
2033
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: ToolBarComponent, isStandalone: true, selector: "kendo-toolbar", inputs: { overflow: "overflow", resizable: "resizable", popupSettings: "popupSettings", fillMode: "fillMode", tabindex: "tabindex", size: "size", tabIndex: "tabIndex", showIcon: "showIcon", showText: "showText" }, outputs: { open: "open", close: "close" }, host: { listeners: { "focus": "onFocus($event)", "focusout": "onFocusOut($event)" }, properties: { "class.k-toolbar": "this.hostClass", "class.k-toolbar-scrollable": "this.scrollableClass", "class.k-toolbar-section": "this.sectionClass", "attr.role": "this.role", "attr.dir": "this.getDir", "class.k-toolbar-resizable": "this.resizableClass" } }, providers: [
1977
2034
  RefreshService,
1978
2035
  NavigationService,
1979
2036
  LocalizationService,
@@ -2416,6 +2473,10 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
2416
2473
  }], tabIndex: [{
2417
2474
  type: Input,
2418
2475
  args: ['tabIndex']
2476
+ }], showIcon: [{
2477
+ type: Input
2478
+ }], showText: [{
2479
+ type: Input
2419
2480
  }], open: [{
2420
2481
  type: Output
2421
2482
  }], close: [{
@@ -2488,21 +2549,28 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
2488
2549
  class ToolBarButtonComponent extends ToolBarToolComponent {
2489
2550
  element;
2490
2551
  zone;
2552
+ host;
2491
2553
  // showText and showIcon showIcon should be declared first
2492
2554
  /**
2493
- * Specifies where button text should be displayed
2555
+ * Specifies the button text visibility.
2494
2556
  */
2495
2557
  set showText(value) {
2496
2558
  this._showText = value;
2497
2559
  this.setTextDisplayMode();
2498
2560
  }
2499
2561
  get showText() {
2500
- return this._showText;
2562
+ return this._showText || this.host.normalizedShowText;
2501
2563
  }
2502
2564
  /**
2503
- * Specifies where button icon should be displayed
2565
+ * Specifies the button icon visibility.
2504
2566
  */
2505
- showIcon = 'both';
2567
+ set showIcon(value) {
2568
+ this._showIcon = value;
2569
+ this.setTextDisplayMode();
2570
+ }
2571
+ get showIcon() {
2572
+ return this._showIcon || this.host.normalizedShowIcon;
2573
+ }
2506
2574
  /**
2507
2575
  * Specifies the text of the Button ([see example]({% slug controltypes_toolbar %}#toc-buttons)).
2508
2576
  */
@@ -2663,12 +2731,14 @@ class ToolBarButtonComponent extends ToolBarToolComponent {
2663
2731
  toolbarButtonElement;
2664
2732
  sectionButtonElement;
2665
2733
  overflowButtonElement;
2666
- _showText = 'both';
2734
+ _showText;
2735
+ _showIcon;
2667
2736
  _text;
2668
- constructor(element, zone) {
2737
+ constructor(element, zone, host) {
2669
2738
  super();
2670
2739
  this.element = element;
2671
2740
  this.zone = zone;
2741
+ this.host = host;
2672
2742
  this.isBuiltInTool = true;
2673
2743
  }
2674
2744
  ngOnInit() {
@@ -2724,12 +2794,12 @@ class ToolBarButtonComponent extends ToolBarToolComponent {
2724
2794
  return this[`${this.location}ButtonElement`]?.nativeElement;
2725
2795
  }
2726
2796
  setTextDisplayMode() {
2727
- this.toolbarOptions.text = this.showText === 'overflow' ? undefined : this.text;
2797
+ this.toolbarOptions.text = this.showText === 'menu' || this.showText === 'never' ? undefined : this.text;
2728
2798
  this.zone.onStable.pipe(take(1)).subscribe(() => {
2729
- this.overflowOptions.text = this.showText === 'toolbar' ? undefined : this.text;
2799
+ this.overflowOptions.text = this.showText === 'toolbar' || this.showText === 'never' ? undefined : this.text;
2730
2800
  });
2731
2801
  }
2732
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: ToolBarButtonComponent, deps: [{ token: i0.ElementRef }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component });
2802
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: ToolBarButtonComponent, deps: [{ token: i0.ElementRef }, { token: i0.NgZone }, { token: ToolBarComponent }], target: i0.ɵɵFactoryTarget.Component });
2733
2803
  static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: ToolBarButtonComponent, isStandalone: true, selector: "kendo-toolbar-button", inputs: { showText: "showText", showIcon: "showIcon", text: "text", style: "style", className: "className", title: "title", disabled: "disabled", toggleable: "toggleable", look: "look", togglable: "togglable", selected: "selected", fillMode: "fillMode", themeColor: "themeColor", icon: "icon", iconClass: "iconClass", svgIcon: "svgIcon", imageUrl: "imageUrl" }, outputs: { click: "click", pointerdown: "pointerdown", selectedChange: "selectedChange" }, providers: [{ provide: ToolBarToolComponent, useExisting: forwardRef(() => ToolBarButtonComponent) }], viewQueries: [{ propertyName: "toolbarButtonElement", first: true, predicate: ["toolbarButton"], descendants: true, read: ElementRef }, { propertyName: "sectionButtonElement", first: true, predicate: ["sectionButton"], descendants: true, read: ElementRef }, { propertyName: "overflowButtonElement", first: true, predicate: ["overflowButton"], descendants: true, read: ElementRef }], exportAs: ["kendoToolBarButton"], usesInheritance: true, ngImport: i0, template: `
2734
2804
  <ng-template #toolbarTemplate>
2735
2805
  <button
@@ -2906,7 +2976,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
2906
2976
  standalone: true,
2907
2977
  imports: [ButtonComponent, NgStyle, NgClass, NgIf, IconWrapperComponent, BadgeComponent],
2908
2978
  }]
2909
- }], ctorParameters: function () { return [{ type: i0.ElementRef }, { type: i0.NgZone }]; }, propDecorators: { showText: [{
2979
+ }], ctorParameters: function () { return [{ type: i0.ElementRef }, { type: i0.NgZone }, { type: ToolBarComponent }]; }, propDecorators: { showText: [{
2910
2980
  type: Input
2911
2981
  }], showIcon: [{
2912
2982
  type: Input
@@ -3360,6 +3430,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
3360
3430
  class ToolBarDropDownButtonComponent extends ToolBarToolComponent {
3361
3431
  zone;
3362
3432
  renderer;
3433
+ host;
3363
3434
  /**
3364
3435
  * Allows showing the default arrow icon or providing alternative one instead.
3365
3436
  * @default false
@@ -3372,19 +3443,24 @@ class ToolBarDropDownButtonComponent extends ToolBarToolComponent {
3372
3443
  title = '';
3373
3444
  // showText and showIcon showIcon should be declared first
3374
3445
  /**
3375
- * Defines the location of the button text that will be displayed.
3446
+ * Specifies the button text visibility.
3376
3447
  */
3377
3448
  set showText(value) {
3378
3449
  this._showText = value;
3379
3450
  this.setTextDisplayMode();
3380
3451
  }
3381
3452
  get showText() {
3382
- return this._showText;
3453
+ return this._showText || this.host.normalizedShowText;
3383
3454
  }
3384
3455
  /**
3385
- * Defines the location of the button icon that will be displayed.
3456
+ * Specifies the button icon visibility.
3386
3457
  */
3387
- showIcon = 'both';
3458
+ set showIcon(value) {
3459
+ this._showIcon = value;
3460
+ }
3461
+ get showIcon() {
3462
+ return this._showIcon || this.host.normalizedShowIcon;
3463
+ }
3388
3464
  /**
3389
3465
  * Sets the text of the DropDownButton
3390
3466
  * ([see example](slug:controltypes_toolbar#toc-drop-down-buttons)).
@@ -3559,14 +3635,16 @@ class ToolBarDropDownButtonComponent extends ToolBarToolComponent {
3559
3635
  _data;
3560
3636
  _popupSettings = { animate: true, popupClass: '' };
3561
3637
  focusedIndex = -1;
3562
- _showText = 'both';
3638
+ _showText;
3639
+ _showIcon;
3563
3640
  _text;
3564
3641
  getNextKey;
3565
3642
  getPrevKey;
3566
- constructor(zone, renderer) {
3643
+ constructor(zone, renderer, host) {
3567
3644
  super();
3568
3645
  this.zone = zone;
3569
3646
  this.renderer = renderer;
3647
+ this.host = host;
3570
3648
  this.getNextKey = getNextKey();
3571
3649
  this.getPrevKey = getPrevKey();
3572
3650
  this.isBuiltInTool = true;
@@ -3576,9 +3654,9 @@ class ToolBarDropDownButtonComponent extends ToolBarToolComponent {
3576
3654
  }
3577
3655
  ngAfterViewInit() {
3578
3656
  this.zone.onStable.pipe(take(1)).subscribe(() => {
3579
- const dropDownButton = this[`${this.location}DropDownButton`];
3580
- if (dropDownButton) {
3581
- this.renderer.addClass(dropDownButton.button.nativeElement, 'k-toolbar-menu-button');
3657
+ const dropdownButton = this[`${this.location}DropDownButton`];
3658
+ if (dropdownButton?.button) {
3659
+ this.renderer.addClass(dropdownButton.button.nativeElement, 'k-toolbar-menu-button');
3582
3660
  }
3583
3661
  });
3584
3662
  }
@@ -3632,7 +3710,6 @@ class ToolBarDropDownButtonComponent extends ToolBarToolComponent {
3632
3710
  if (dataItem) {
3633
3711
  return this.textField ? dataItem[this.textField] : dataItem.text || dataItem;
3634
3712
  }
3635
- return undefined;
3636
3713
  }
3637
3714
  /**
3638
3715
  * @hidden
@@ -3651,10 +3728,10 @@ class ToolBarDropDownButtonComponent extends ToolBarToolComponent {
3651
3728
  }
3652
3729
  }
3653
3730
  setTextDisplayMode() {
3654
- this.toolbarOptions.text = this.showText === 'overflow' ? undefined : this.text;
3655
- this.overflowOptions.text = this.showText === 'toolbar' ? undefined : this.text;
3731
+ this.toolbarOptions.text = this.showText === 'menu' || this.showText === 'never' ? undefined : this.text;
3732
+ this.overflowOptions.text = this.showText === 'toolbar' || this.showText === 'never' ? undefined : this.text;
3656
3733
  }
3657
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: ToolBarDropDownButtonComponent, deps: [{ token: i0.NgZone }, { token: i0.Renderer2 }], target: i0.ɵɵFactoryTarget.Component });
3734
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: ToolBarDropDownButtonComponent, deps: [{ token: i0.NgZone }, { token: i0.Renderer2 }, { token: ToolBarComponent }], target: i0.ɵɵFactoryTarget.Component });
3658
3735
  static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: ToolBarDropDownButtonComponent, isStandalone: true, selector: "kendo-toolbar-dropdownbutton", inputs: { arrowIcon: "arrowIcon", title: "title", showText: "showText", showIcon: "showIcon", text: "text", icon: "icon", svgIcon: "svgIcon", 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: "dropdownButton", first: true, predicate: ["dropdownButton"], descendants: true, read: ElementRef, static: true }, { propertyName: "toolbarDropDownButton", first: true, predicate: ["toolbarDropDownButton"], descendants: true }, { propertyName: "sectionDropDownButton", first: true, predicate: ["sectionDropDownButton"], descendants: true }, { propertyName: "overflowListItems", predicate: ["listItem"], descendants: true }], exportAs: ["kendoToolBarDropDownButton"], usesInheritance: true, ngImport: i0, template: `
3659
3736
  <ng-template #toolbarTemplate>
3660
3737
  <kendo-dropdownbutton #toolbarDropDownButton
@@ -3845,7 +3922,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
3845
3922
  standalone: true,
3846
3923
  imports: [DropDownButtonComponent, NgClass, NgIf, IconWrapperComponent, NgFor]
3847
3924
  }]
3848
- }], ctorParameters: function () { return [{ type: i0.NgZone }, { type: i0.Renderer2 }]; }, propDecorators: { arrowIcon: [{
3925
+ }], ctorParameters: function () { return [{ type: i0.NgZone }, { type: i0.Renderer2 }, { type: ToolBarComponent }]; }, propDecorators: { arrowIcon: [{
3849
3926
  type: Input
3850
3927
  }], title: [{
3851
3928
  type: Input
@@ -3905,21 +3982,38 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
3905
3982
  * Represents the [Kendo UI ToolBar SplitButton for Angular](slug:controltypes_toolbar#toc-split-buttons).
3906
3983
  */
3907
3984
  class ToolBarSplitButtonComponent extends ToolBarToolComponent {
3985
+ host;
3908
3986
  // showText and showIcon showIcon should be declared first
3909
3987
  /**
3910
- * Specifies where button text should be displayed
3988
+ * Specifies the button text visibility.
3911
3989
  */
3912
3990
  set showText(value) {
3913
- this._showText = value;
3991
+ if (!isPresent$1(value)) {
3992
+ this._showText = this.host.normalizedShowText;
3993
+ }
3994
+ else {
3995
+ this._showText = value;
3996
+ }
3914
3997
  this.setTextDisplayMode();
3915
3998
  }
3916
3999
  get showText() {
3917
- return this._showText;
4000
+ return this._showText || this.host.normalizedShowText;
3918
4001
  }
3919
4002
  /**
3920
- * Specifies where button icon should be displayed
4003
+ * Specifies the button icon visibility.
3921
4004
  */
3922
- showIcon = 'both';
4005
+ set showIcon(value) {
4006
+ if (!isPresent$1(value)) {
4007
+ this._showIcon = this.host.normalizedShowIcon;
4008
+ }
4009
+ else {
4010
+ this._showIcon = value;
4011
+ }
4012
+ this.setTextDisplayMode();
4013
+ }
4014
+ get showIcon() {
4015
+ return this._showIcon || this.host.normalizedShowIcon;
4016
+ }
3923
4017
  /**
3924
4018
  * Sets the text of the SplitButton ([see example](slug:controltypes_toolbar#toc-split-buttons)).
3925
4019
  */
@@ -4106,7 +4200,8 @@ class ToolBarSplitButtonComponent extends ToolBarToolComponent {
4106
4200
  _data;
4107
4201
  _popupSettings = { animate: true, popupClass: '' };
4108
4202
  focusedIndex = -1;
4109
- _showText = 'both';
4203
+ _showText;
4204
+ _showIcon;
4110
4205
  _text;
4111
4206
  getNextKey;
4112
4207
  getPrevKey;
@@ -4114,8 +4209,9 @@ class ToolBarSplitButtonComponent extends ToolBarToolComponent {
4114
4209
  sectionSplitButton;
4115
4210
  overflowMainButton;
4116
4211
  overflowListItems;
4117
- constructor() {
4212
+ constructor(host) {
4118
4213
  super();
4214
+ this.host = host;
4119
4215
  this.getNextKey = getNextKey();
4120
4216
  this.getPrevKey = getPrevKey();
4121
4217
  this.isBuiltInTool = true;
@@ -4175,7 +4271,6 @@ class ToolBarSplitButtonComponent extends ToolBarToolComponent {
4175
4271
  if (dataItem) {
4176
4272
  return this.textField ? dataItem[this.textField] : dataItem.text || dataItem;
4177
4273
  }
4178
- return undefined;
4179
4274
  }
4180
4275
  /**
4181
4276
  * @hidden
@@ -4194,10 +4289,10 @@ class ToolBarSplitButtonComponent extends ToolBarToolComponent {
4194
4289
  }
4195
4290
  }
4196
4291
  setTextDisplayMode() {
4197
- this.toolbarOptions.text = this.showText === 'overflow' ? undefined : this.text;
4198
- this.overflowOptions.text = this.showText === 'toolbar' ? undefined : this.text;
4292
+ this.toolbarOptions.text = this.showText === 'menu' || this.showText === 'never' ? undefined : this.text;
4293
+ this.overflowOptions.text = this.showText === 'toolbar' || this.showText === 'never' ? undefined : this.text;
4199
4294
  }
4200
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: ToolBarSplitButtonComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
4295
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: ToolBarSplitButtonComponent, deps: [{ token: ToolBarComponent }], target: i0.ɵɵFactoryTarget.Component });
4201
4296
  static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: ToolBarSplitButtonComponent, isStandalone: true, selector: "kendo-toolbar-splitbutton", inputs: { showText: "showText", showIcon: "showIcon", text: "text", icon: "icon", svgIcon: "svgIcon", iconClass: "iconClass", imageUrl: "imageUrl", disabled: "disabled", popupSettings: "popupSettings", fillMode: "fillMode", themeColor: "themeColor", look: "look", buttonClass: "buttonClass", arrowButtonClass: "arrowButtonClass", arrowButtonIcon: "arrowButtonIcon", arrowButtonSvgIcon: "arrowButtonSvgIcon", textField: "textField", data: "data" }, outputs: { buttonClick: "buttonClick", itemClick: "itemClick", open: "open", close: "close" }, providers: [{ provide: ToolBarToolComponent, useExisting: forwardRef(() => ToolBarSplitButtonComponent) }], viewQueries: [{ propertyName: "toolbarSplitButton", first: true, predicate: ["toolbarSplitButton"], descendants: true }, { propertyName: "sectionSplitButton", first: true, predicate: ["sectionSplitButton"], descendants: true }, { propertyName: "overflowMainButton", first: true, predicate: ["overflowMainButton"], descendants: true, read: ElementRef }, { propertyName: "overflowListItems", predicate: ["listItem"], descendants: true }], exportAs: ["kendoToolBarSplitButton"], usesInheritance: true, ngImport: i0, template: `
4202
4297
  <ng-template #toolbarTemplate>
4203
4298
  <kendo-splitbutton
@@ -4402,7 +4497,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
4402
4497
  standalone: true,
4403
4498
  imports: [SplitButtonComponent, NgClass, NgIf, IconWrapperComponent, NgFor]
4404
4499
  }]
4405
- }], ctorParameters: function () { return []; }, propDecorators: { showText: [{
4500
+ }], ctorParameters: function () { return [{ type: ToolBarComponent }]; }, propDecorators: { showText: [{
4406
4501
  type: Input
4407
4502
  }], showIcon: [{
4408
4503
  type: Input
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@progress/kendo-angular-toolbar",
3
- "version": "19.0.0-develop.1",
3
+ "version": "19.0.0-develop.11",
4
4
  "description": "Kendo UI Angular Toolbar component - a single UI element that organizes buttons and other navigation elements",
5
5
  "license": "SEE LICENSE IN LICENSE.md",
6
6
  "author": "Progress",
@@ -25,7 +25,7 @@
25
25
  "package": {
26
26
  "productName": "Kendo UI for Angular",
27
27
  "productCode": "KENDOUIANGULAR",
28
- "publishDate": 1745317389,
28
+ "publishDate": 1746798414,
29
29
  "licensingDocsUrl": "https://www.telerik.com/kendo-angular-ui/my-license/"
30
30
  }
31
31
  },
@@ -35,16 +35,16 @@
35
35
  "@angular/core": "16 - 19",
36
36
  "@angular/platform-browser": "16 - 19",
37
37
  "@progress/kendo-licensing": "^1.5.0",
38
- "@progress/kendo-angular-buttons": "19.0.0-develop.1",
39
- "@progress/kendo-angular-common": "19.0.0-develop.1",
40
- "@progress/kendo-angular-l10n": "19.0.0-develop.1",
41
- "@progress/kendo-angular-icons": "19.0.0-develop.1",
42
- "@progress/kendo-angular-popup": "19.0.0-develop.1",
38
+ "@progress/kendo-angular-buttons": "19.0.0-develop.11",
39
+ "@progress/kendo-angular-common": "19.0.0-develop.11",
40
+ "@progress/kendo-angular-l10n": "19.0.0-develop.11",
41
+ "@progress/kendo-angular-icons": "19.0.0-develop.11",
42
+ "@progress/kendo-angular-popup": "19.0.0-develop.11",
43
43
  "rxjs": "^6.5.3 || ^7.0.0"
44
44
  },
45
45
  "dependencies": {
46
46
  "tslib": "^2.3.1",
47
- "@progress/kendo-angular-schematics": "19.0.0-develop.1"
47
+ "@progress/kendo-angular-schematics": "19.0.0-develop.11"
48
48
  },
49
49
  "schematics": "./schematics/collection.json",
50
50
  "module": "fesm2022/progress-kendo-angular-toolbar.mjs",
@@ -41,6 +41,7 @@ export declare class ToolBarRendererComponent implements OnInit, OnDestroy {
41
41
  setAttribute(element: HTMLElement, attr: string, value: string): void;
42
42
  private onClick;
43
43
  private updateTools;
44
+ private hideTool;
44
45
  static ɵfac: i0.ɵɵFactoryDeclaration<ToolBarRendererComponent, never>;
45
46
  static ɵdir: i0.ɵɵDirectiveDeclaration<ToolBarRendererComponent, "[kendoToolbarRenderer]", never, { "tool": { "alias": "tool"; "required": false; }; "location": { "alias": "location"; "required": false; }; "resizable": { "alias": "resizable"; "required": false; }; }, { "rendererClick": "rendererClick"; }, never, never, true, never>;
46
47
  }
@@ -21,6 +21,7 @@ import { OverflowMode } from './common/overflow-mode';
21
21
  import { ToolbarOverflowSettings } from './common/overflow-settings';
22
22
  import { ToolbarScrollButtonsPosition } from './common/scroll-buttons';
23
23
  import { ScrollService } from './scroll.service';
24
+ import { DisplayMode } from './display-mode';
24
25
  import * as i0 from "@angular/core";
25
26
  /**
26
27
  * Represents the [Kendo UI ToolBar component for Angular]({% slug overview_toolbar %}).
@@ -28,7 +29,7 @@ import * as i0 from "@angular/core";
28
29
  export declare class ToolBarComponent {
29
30
  localization: LocalizationService;
30
31
  private popupService;
31
- private refreshService;
32
+ refreshService: RefreshService;
32
33
  private navigationService;
33
34
  element: ElementRef;
34
35
  private zone;
@@ -105,6 +106,24 @@ export declare class ToolBarComponent {
105
106
  */
106
107
  set tabIndex(tabIndex: number);
107
108
  get tabIndex(): number;
109
+ /**
110
+ * Specifies the icons visibility for all tools in the ToolBar.
111
+ * This can be overridden by the `showIcon` property of each tool.
112
+ */
113
+ showIcon: DisplayMode | boolean;
114
+ /**
115
+ * @hidden
116
+ */
117
+ get normalizedShowIcon(): DisplayMode;
118
+ /**
119
+ * Specifies the text visibility for all tools in the ToolBar.
120
+ * This can be overridden by the `showText` property of each tool.
121
+ */
122
+ showText: DisplayMode | boolean;
123
+ /**
124
+ * @hidden
125
+ */
126
+ get normalizedShowText(): DisplayMode;
108
127
  /**
109
128
  * Fires when the overflow popup of the ToolBar is opened.
110
129
  */
@@ -260,5 +279,5 @@ export declare class ToolBarComponent {
260
279
  private handleScrollModeUpdates;
261
280
  private removeSubscriptions;
262
281
  static ɵfac: i0.ɵɵFactoryDeclaration<ToolBarComponent, never>;
263
- static ɵcmp: i0.ɵɵComponentDeclaration<ToolBarComponent, "kendo-toolbar", ["kendoToolBar"], { "overflow": { "alias": "overflow"; "required": false; }; "resizable": { "alias": "resizable"; "required": false; }; "popupSettings": { "alias": "popupSettings"; "required": false; }; "fillMode": { "alias": "fillMode"; "required": false; }; "tabindex": { "alias": "tabindex"; "required": false; }; "size": { "alias": "size"; "required": false; }; "tabIndex": { "alias": "tabIndex"; "required": false; }; }, { "open": "open"; "close": "close"; }, ["allTools"], never, true, never>;
282
+ static ɵcmp: i0.ɵɵComponentDeclaration<ToolBarComponent, "kendo-toolbar", ["kendoToolBar"], { "overflow": { "alias": "overflow"; "required": false; }; "resizable": { "alias": "resizable"; "required": false; }; "popupSettings": { "alias": "popupSettings"; "required": false; }; "fillMode": { "alias": "fillMode"; "required": false; }; "tabindex": { "alias": "tabindex"; "required": false; }; "size": { "alias": "size"; "required": false; }; "tabIndex": { "alias": "tabIndex"; "required": false; }; "showIcon": { "alias": "showIcon"; "required": false; }; "showText": { "alias": "showText"; "required": false; }; }, { "open": "open"; "close": "close"; }, ["allTools"], never, true, never>;
264
283
  }
@@ -8,6 +8,7 @@ import { DisplayMode } from '../display-mode';
8
8
  import { ToolOptions } from '../tool-options';
9
9
  import { ButtonFillMode, ButtonThemeColor } from '@progress/kendo-angular-buttons';
10
10
  import { SVGIcon } from '@progress/kendo-svg-icons';
11
+ import { ToolBarComponent } from '../toolbar.component';
11
12
  import * as i0 from "@angular/core";
12
13
  /**
13
14
  * Represents the [Kendo UI ToolBar Button tool for Angular]({% slug controltypes_toolbar %}#toc-buttons).
@@ -15,15 +16,17 @@ import * as i0 from "@angular/core";
15
16
  export declare class ToolBarButtonComponent extends ToolBarToolComponent {
16
17
  element: ElementRef;
17
18
  private zone;
19
+ host: ToolBarComponent;
18
20
  /**
19
- * Specifies where button text should be displayed
21
+ * Specifies the button text visibility.
20
22
  */
21
23
  set showText(value: DisplayMode);
22
24
  get showText(): DisplayMode;
23
25
  /**
24
- * Specifies where button icon should be displayed
26
+ * Specifies the button icon visibility.
25
27
  */
26
- showIcon: DisplayMode;
28
+ set showIcon(value: DisplayMode);
29
+ get showIcon(): DisplayMode;
27
30
  /**
28
31
  * Specifies the text of the Button ([see example]({% slug controltypes_toolbar %}#toc-buttons)).
29
32
  */
@@ -144,8 +147,9 @@ export declare class ToolBarButtonComponent extends ToolBarToolComponent {
144
147
  sectionButtonElement: ElementRef;
145
148
  private overflowButtonElement;
146
149
  private _showText;
150
+ private _showIcon;
147
151
  private _text;
148
- constructor(element: ElementRef, zone: NgZone);
152
+ constructor(element: ElementRef, zone: NgZone, host: ToolBarComponent);
149
153
  ngOnInit(): void;
150
154
  /**
151
155
  * @hidden
@@ -10,6 +10,7 @@ import { DisplayMode } from '../display-mode';
10
10
  import { ToolOptions } from '../tool-options';
11
11
  import { PreventableEvent } from '@progress/kendo-angular-buttons';
12
12
  import { SVGIcon } from '@progress/kendo-svg-icons';
13
+ import { ToolBarComponent } from '../toolbar.component';
13
14
  import * as i0 from "@angular/core";
14
15
  /**
15
16
  * Represents the [Kendo UI ToolBar DropDownButton for Angular](slug:controltypes_toolbar#drop-down-buttons).
@@ -17,6 +18,7 @@ import * as i0 from "@angular/core";
17
18
  export declare class ToolBarDropDownButtonComponent extends ToolBarToolComponent implements OnInit {
18
19
  private zone;
19
20
  private renderer;
21
+ private host;
20
22
  /**
21
23
  * Allows showing the default arrow icon or providing alternative one instead.
22
24
  * @default false
@@ -28,14 +30,15 @@ export declare class ToolBarDropDownButtonComponent extends ToolBarToolComponent
28
30
  */
29
31
  title: string;
30
32
  /**
31
- * Defines the location of the button text that will be displayed.
33
+ * Specifies the button text visibility.
32
34
  */
33
35
  set showText(value: DisplayMode);
34
36
  get showText(): DisplayMode;
35
37
  /**
36
- * Defines the location of the button icon that will be displayed.
38
+ * Specifies the button icon visibility.
37
39
  */
38
- showIcon: DisplayMode;
40
+ set showIcon(value: DisplayMode);
41
+ get showIcon(): DisplayMode;
39
42
  /**
40
43
  * Sets the text of the DropDownButton
41
44
  * ([see example](slug:controltypes_toolbar#toc-drop-down-buttons)).
@@ -155,10 +158,11 @@ export declare class ToolBarDropDownButtonComponent extends ToolBarToolComponent
155
158
  private _popupSettings;
156
159
  private focusedIndex;
157
160
  private _showText;
161
+ private _showIcon;
158
162
  private _text;
159
163
  private getNextKey;
160
164
  private getPrevKey;
161
- constructor(zone: NgZone, renderer: Renderer2);
165
+ constructor(zone: NgZone, renderer: Renderer2, host: ToolBarComponent);
162
166
  ngOnInit(): void;
163
167
  ngAfterViewInit(): void;
164
168
  /**
@@ -10,20 +10,23 @@ import { DisplayMode } from '../display-mode';
10
10
  import { ToolOptions } from '../tool-options';
11
11
  import { PreventableEvent } from '@progress/kendo-angular-buttons';
12
12
  import { SVGIcon } from '@progress/kendo-svg-icons';
13
+ import { ToolBarComponent } from '../toolbar.component';
13
14
  import * as i0 from "@angular/core";
14
15
  /**
15
16
  * Represents the [Kendo UI ToolBar SplitButton for Angular](slug:controltypes_toolbar#toc-split-buttons).
16
17
  */
17
18
  export declare class ToolBarSplitButtonComponent extends ToolBarToolComponent implements OnInit {
19
+ private host;
18
20
  /**
19
- * Specifies where button text should be displayed
21
+ * Specifies the button text visibility.
20
22
  */
21
23
  set showText(value: DisplayMode);
22
24
  get showText(): DisplayMode;
23
25
  /**
24
- * Specifies where button icon should be displayed
26
+ * Specifies the button icon visibility.
25
27
  */
26
- showIcon: DisplayMode;
28
+ set showIcon(value: DisplayMode);
29
+ get showIcon(): DisplayMode;
27
30
  /**
28
31
  * Sets the text of the SplitButton ([see example](slug:controltypes_toolbar#toc-split-buttons)).
29
32
  */
@@ -152,6 +155,7 @@ export declare class ToolBarSplitButtonComponent extends ToolBarToolComponent im
152
155
  private _popupSettings;
153
156
  private focusedIndex;
154
157
  private _showText;
158
+ private _showIcon;
155
159
  private _text;
156
160
  private getNextKey;
157
161
  private getPrevKey;
@@ -159,7 +163,7 @@ export declare class ToolBarSplitButtonComponent extends ToolBarToolComponent im
159
163
  private sectionSplitButton;
160
164
  private overflowMainButton;
161
165
  overflowListItems: QueryList<ElementRef>;
162
- constructor();
166
+ constructor(host: ToolBarComponent);
163
167
  /**
164
168
  * @hidden
165
169
  */
@@ -18,6 +18,10 @@ export declare class ToolBarToolComponent {
18
18
  visibility: string;
19
19
  element: ElementRef;
20
20
  isBuiltInTool: boolean;
21
+ /**
22
+ * @hidden
23
+ */
24
+ isHidden: boolean;
21
25
  /**
22
26
  * @hidden
23
27
  */