@progress/kendo-angular-toolbar 19.3.0-develop.4 → 19.3.0-develop.40

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.
@@ -10,7 +10,7 @@ export const packageMetadata = {
10
10
  productName: 'Kendo UI for Angular',
11
11
  productCode: 'KENDOUIANGULAR',
12
12
  productCodes: ['KENDOUIANGULAR'],
13
- publishDate: 1752065406,
14
- version: '19.3.0-develop.4',
13
+ publishDate: 1754990725,
14
+ version: '19.3.0-develop.40',
15
15
  licensingDocsUrl: 'https://www.telerik.com/kendo-angular-ui/my-license/'
16
16
  };
@@ -5,7 +5,7 @@
5
5
  /* eslint-disable no-case-declarations */
6
6
  import { Component, HostBinding, ViewChild, TemplateRef, ElementRef, QueryList, ContentChildren, Input, HostListener, Output, EventEmitter, ViewContainerRef, NgZone, Renderer2, ChangeDetectorRef } from '@angular/core';
7
7
  import { PopupService } from '@progress/kendo-angular-popup';
8
- import { guid, ResizeSensorComponent } from '@progress/kendo-angular-common';
8
+ import { guid, normalizeNumpadKeys, ResizeSensorComponent } from '@progress/kendo-angular-common';
9
9
  import { LocalizationService, L10N_PREFIX } from '@progress/kendo-angular-l10n';
10
10
  import { validatePackage } from '@progress/kendo-licensing';
11
11
  import { packageMetadata } from './package-metadata';
@@ -66,7 +66,8 @@ const getInitialPopupSettings = (isRtl) => ({
66
66
  * {@link EditorFontFamilyComponent},
67
67
  * {@link EditorFontSizeComponent},
68
68
  * {@link EditorFormatComponent},
69
- * {@link EditorInsertTableButtonComponent}.
69
+ * {@link EditorInsertTableButtonComponent},
70
+ * {@link SelectAllToolbarToolComponent}.
70
71
  */
71
72
  export class ToolBarComponent {
72
73
  localization;
@@ -391,7 +392,9 @@ export class ToolBarComponent {
391
392
  }
392
393
  this.zone.runOutsideAngular(() => {
393
394
  this.toolbarKeydownListener = this.renderer.listen(this.element.nativeElement, 'keydown', (ev) => {
394
- switch (ev.keyCode) {
395
+ // on some keyboards arrow keys, PageUp/Down, and Home/End are mapped to Numpad keys
396
+ const code = normalizeNumpadKeys(ev);
397
+ switch (code) {
395
398
  case Keys.ArrowLeft:
396
399
  this.zone.run(() => {
397
400
  ev.preventDefault();
@@ -655,7 +658,8 @@ export class ToolBarComponent {
655
658
  this.zone.runOutsideAngular(() => {
656
659
  if (this.normalizedOverflow.mode === 'section') {
657
660
  this.sectionKeydownListener = this.renderer.listen(this.popupRef.popupElement, 'keydown', (ev) => {
658
- switch (ev.keyCode) {
661
+ const code = normalizeNumpadKeys(ev);
662
+ switch (code) {
659
663
  case Keys.ArrowLeft:
660
664
  this.zone.run(() => {
661
665
  ev.preventDefault();
@@ -701,7 +705,8 @@ export class ToolBarComponent {
701
705
  }
702
706
  else {
703
707
  this.overflowKeydownListener = this.renderer.listen(this.popupRef.popupElement, 'keydown', (ev) => {
704
- switch (ev.keyCode) {
708
+ const code = normalizeNumpadKeys(ev);
709
+ switch (code) {
705
710
  case Keys.ArrowUp:
706
711
  this.zone.run(() => {
707
712
  ev.preventDefault();
@@ -726,6 +731,7 @@ export class ToolBarComponent {
726
731
  this.navigationService.resetNavigation();
727
732
  });
728
733
  break;
734
+ case Keys.NumpadEnter:
729
735
  case Keys.Enter:
730
736
  case Keys.Space:
731
737
  this.zone.run(() => {
@@ -125,6 +125,13 @@ export class ToolBarButtonComponent extends ToolBarToolComponent {
125
125
  * @default 'solid'
126
126
  */
127
127
  fillMode = 'solid';
128
+ /**
129
+ * Specifies the border radius of the Button.
130
+ * Accepts a `ButtonRounded` value.
131
+ *
132
+ * @default 'medium'
133
+ */
134
+ rounded = 'medium';
128
135
  /**
129
136
  * Specifies the predefined theme color of the Button.
130
137
  * Accepts a `ButtonThemeColor` value.
@@ -233,6 +240,17 @@ export class ToolBarButtonComponent extends ToolBarToolComponent {
233
240
  this.propertyChangeSub.unsubscribe();
234
241
  this.propertyChangeSub = null;
235
242
  }
243
+ ngOnChanges(changes) {
244
+ if (changes['rounded']) {
245
+ this.rounded = changes['rounded'].currentValue;
246
+ }
247
+ if (changes['themeColor']) {
248
+ this.themeColor = changes['themeColor'].currentValue;
249
+ }
250
+ if (changes['showText']) {
251
+ this.showText = changes['showText'].currentValue;
252
+ }
253
+ }
236
254
  /**
237
255
  * @hidden
238
256
  */
@@ -292,7 +310,7 @@ export class ToolBarButtonComponent extends ToolBarToolComponent {
292
310
  });
293
311
  }
294
312
  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 });
295
- 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: `
313
+ 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", rounded: "rounded", 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, usesOnChanges: true, ngImport: i0, template: `
296
314
  <ng-template #toolbarTemplate>
297
315
  <kendo-badge-container *ngIf="hasBadgeContainer">
298
316
  <button
@@ -310,6 +328,7 @@ export class ToolBarButtonComponent extends ToolBarToolComponent {
310
328
  [toggleable]="toggleable"
311
329
  [fillMode]="fillMode"
312
330
  [themeColor]="fillMode ? themeColor : null"
331
+ [rounded]="rounded"
313
332
  [selected]="selected"
314
333
  [icon]="toolbarOptions.icon"
315
334
  [iconClass]="toolbarOptions.iconClass"
@@ -340,6 +359,7 @@ export class ToolBarButtonComponent extends ToolBarToolComponent {
340
359
  [toggleable]="toggleable"
341
360
  [fillMode]="fillMode"
342
361
  [themeColor]="fillMode ? themeColor : null"
362
+ [rounded]="rounded"
343
363
  [selected]="selected"
344
364
  [icon]="toolbarOptions.icon"
345
365
  [iconClass]="toolbarOptions.iconClass"
@@ -394,6 +414,7 @@ export class ToolBarButtonComponent extends ToolBarToolComponent {
394
414
  [toggleable]="toggleable"
395
415
  [fillMode]="fillMode"
396
416
  [themeColor]="fillMode ? themeColor : null"
417
+ [rounded]="rounded"
397
418
  [selected]="selected"
398
419
  [icon]="toolbarOptions.icon"
399
420
  [iconClass]="toolbarOptions.iconClass"
@@ -424,6 +445,7 @@ export class ToolBarButtonComponent extends ToolBarToolComponent {
424
445
  [toggleable]="toggleable"
425
446
  [fillMode]="fillMode"
426
447
  [themeColor]="fillMode ? themeColor : null"
448
+ [rounded]="rounded"
427
449
  [selected]="selected"
428
450
  [icon]="toolbarOptions.icon"
429
451
  [iconClass]="toolbarOptions.iconClass"
@@ -463,6 +485,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
463
485
  [toggleable]="toggleable"
464
486
  [fillMode]="fillMode"
465
487
  [themeColor]="fillMode ? themeColor : null"
488
+ [rounded]="rounded"
466
489
  [selected]="selected"
467
490
  [icon]="toolbarOptions.icon"
468
491
  [iconClass]="toolbarOptions.iconClass"
@@ -493,6 +516,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
493
516
  [toggleable]="toggleable"
494
517
  [fillMode]="fillMode"
495
518
  [themeColor]="fillMode ? themeColor : null"
519
+ [rounded]="rounded"
496
520
  [selected]="selected"
497
521
  [icon]="toolbarOptions.icon"
498
522
  [iconClass]="toolbarOptions.iconClass"
@@ -547,6 +571,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
547
571
  [toggleable]="toggleable"
548
572
  [fillMode]="fillMode"
549
573
  [themeColor]="fillMode ? themeColor : null"
574
+ [rounded]="rounded"
550
575
  [selected]="selected"
551
576
  [icon]="toolbarOptions.icon"
552
577
  [iconClass]="toolbarOptions.iconClass"
@@ -577,6 +602,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
577
602
  [toggleable]="toggleable"
578
603
  [fillMode]="fillMode"
579
604
  [themeColor]="fillMode ? themeColor : null"
605
+ [rounded]="rounded"
580
606
  [selected]="selected"
581
607
  [icon]="toolbarOptions.icon"
582
608
  [iconClass]="toolbarOptions.iconClass"
@@ -618,6 +644,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
618
644
  type: Input
619
645
  }], fillMode: [{
620
646
  type: Input
647
+ }], rounded: [{
648
+ type: Input
621
649
  }], themeColor: [{
622
650
  type: Input
623
651
  }], icon: [{
@@ -10,6 +10,7 @@ import { IconWrapperComponent } from '@progress/kendo-angular-icons';
10
10
  import { NgClass, NgIf, NgFor } from '@angular/common';
11
11
  import { take } from 'rxjs/operators';
12
12
  import { ToolBarComponent } from '../toolbar.component';
13
+ import { normalizeNumpadKeys } from '@progress/kendo-angular-common';
13
14
  import * as i0 from "@angular/core";
14
15
  import * as i1 from "../toolbar.component";
15
16
  /**
@@ -290,7 +291,8 @@ export class ToolBarDropDownButtonComponent extends ToolBarToolComponent {
290
291
  * @hidden
291
292
  */
292
293
  handleKey(ev) {
293
- if (!this.overflows && (ev.keyCode === this.getPrevKey(this.overflows) || ev.keyCode === this.getNextKey(this.overflows))) {
294
+ const code = normalizeNumpadKeys(ev);
295
+ if (!this.overflows && (code === this.getPrevKey(this.overflows) || code === this.getNextKey(this.overflows))) {
294
296
  return false;
295
297
  }
296
298
  if (this.overflows && this.location !== 'section') {
@@ -10,6 +10,7 @@ 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
12
  import { ToolBarComponent } from '../toolbar.component';
13
+ import { normalizeNumpadKeys } from '@progress/kendo-angular-common';
13
14
  import * as i0 from "@angular/core";
14
15
  import * as i1 from "../toolbar.component";
15
16
  /**
@@ -286,7 +287,8 @@ export class ToolBarSplitButtonComponent extends ToolBarToolComponent {
286
287
  * @hidden
287
288
  */
288
289
  handleKey(ev) {
289
- if (!this.overflows && (ev.keyCode === this.getPrevKey(this.overflows) || ev.keyCode === this.getNextKey(this.overflows))) {
290
+ const code = normalizeNumpadKeys(ev);
291
+ if (!this.overflows && (code === this.getPrevKey(this.overflows) || code === this.getNextKey(this.overflows))) {
290
292
  return false;
291
293
  }
292
294
  if (this.overflows) {
package/esm2022/util.mjs CHANGED
@@ -2,7 +2,7 @@
2
2
  * Copyright © 2025 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 { Keys } from '@progress/kendo-angular-common';
5
+ import { Keys, normalizeNumpadKeys } from '@progress/kendo-angular-common';
6
6
  /**
7
7
  * @hidden
8
8
  */
@@ -130,12 +130,13 @@ export const makePeeker = (collection) => (index) => isPresent(collection[index]
130
130
  * @hidden
131
131
  */
132
132
  export const getIndexOfFocused = (prevKeyCode, nextKeyCode, collection) => (ev) => {
133
+ const code = normalizeNumpadKeys(ev);
133
134
  switch (ev.type) {
134
135
  case 'keydown':
135
- if (ev.keyCode === prevKeyCode) {
136
+ if (code === prevKeyCode) {
136
137
  return collection.length - 1;
137
138
  }
138
- if (ev.keyCode === nextKeyCode) {
139
+ if (code === nextKeyCode) {
139
140
  return 0;
140
141
  }
141
142
  break;
@@ -151,7 +152,8 @@ export const getIndexOfFocused = (prevKeyCode, nextKeyCode, collection) => (ev)
151
152
  * @hidden
152
153
  */
153
154
  export const seekFocusedIndex = (prevKeyCode, nextKeyCode, seeker) => (startIndex, ev) => {
154
- switch (ev.keyCode) {
155
+ const code = normalizeNumpadKeys(ev);
156
+ switch (code) {
155
157
  case prevKeyCode:
156
158
  return seeker(startIndex - 1) ? startIndex - 1 : startIndex;
157
159
  case nextKeyCode:
@@ -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, isPresent as isPresent$1, isDocumentAvailable, guid, ResizeSensorComponent, ResizeBatchService } from '@progress/kendo-angular-common';
9
+ import { normalizeNumpadKeys, Keys, isPresent as isPresent$1, isDocumentAvailable, guid, ResizeSensorComponent, 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: 1752065406,
30
- version: '19.3.0-develop.4',
29
+ publishDate: 1754990725,
30
+ version: '19.3.0-develop.40',
31
31
  licensingDocsUrl: 'https://www.telerik.com/kendo-angular-ui/my-license/'
32
32
  };
33
33
 
@@ -173,12 +173,13 @@ const makePeeker = (collection) => (index) => isPresent(collection[index]);
173
173
  * @hidden
174
174
  */
175
175
  const getIndexOfFocused = (prevKeyCode, nextKeyCode, collection) => (ev) => {
176
+ const code = normalizeNumpadKeys(ev);
176
177
  switch (ev.type) {
177
178
  case 'keydown':
178
- if (ev.keyCode === prevKeyCode) {
179
+ if (code === prevKeyCode) {
179
180
  return collection.length - 1;
180
181
  }
181
- if (ev.keyCode === nextKeyCode) {
182
+ if (code === nextKeyCode) {
182
183
  return 0;
183
184
  }
184
185
  break;
@@ -194,7 +195,8 @@ const getIndexOfFocused = (prevKeyCode, nextKeyCode, collection) => (ev) => {
194
195
  * @hidden
195
196
  */
196
197
  const seekFocusedIndex = (prevKeyCode, nextKeyCode, seeker) => (startIndex, ev) => {
197
- switch (ev.keyCode) {
198
+ const code = normalizeNumpadKeys(ev);
199
+ switch (code) {
198
200
  case prevKeyCode:
199
201
  return seeker(startIndex - 1) ? startIndex - 1 : startIndex;
200
202
  case nextKeyCode:
@@ -1141,7 +1143,8 @@ const getInitialPopupSettings = (isRtl) => ({
1141
1143
  * {@link EditorFontFamilyComponent},
1142
1144
  * {@link EditorFontSizeComponent},
1143
1145
  * {@link EditorFormatComponent},
1144
- * {@link EditorInsertTableButtonComponent}.
1146
+ * {@link EditorInsertTableButtonComponent},
1147
+ * {@link SelectAllToolbarToolComponent}.
1145
1148
  */
1146
1149
  class ToolBarComponent {
1147
1150
  localization;
@@ -1466,7 +1469,9 @@ class ToolBarComponent {
1466
1469
  }
1467
1470
  this.zone.runOutsideAngular(() => {
1468
1471
  this.toolbarKeydownListener = this.renderer.listen(this.element.nativeElement, 'keydown', (ev) => {
1469
- switch (ev.keyCode) {
1472
+ // on some keyboards arrow keys, PageUp/Down, and Home/End are mapped to Numpad keys
1473
+ const code = normalizeNumpadKeys(ev);
1474
+ switch (code) {
1470
1475
  case Keys.ArrowLeft:
1471
1476
  this.zone.run(() => {
1472
1477
  ev.preventDefault();
@@ -1730,7 +1735,8 @@ class ToolBarComponent {
1730
1735
  this.zone.runOutsideAngular(() => {
1731
1736
  if (this.normalizedOverflow.mode === 'section') {
1732
1737
  this.sectionKeydownListener = this.renderer.listen(this.popupRef.popupElement, 'keydown', (ev) => {
1733
- switch (ev.keyCode) {
1738
+ const code = normalizeNumpadKeys(ev);
1739
+ switch (code) {
1734
1740
  case Keys.ArrowLeft:
1735
1741
  this.zone.run(() => {
1736
1742
  ev.preventDefault();
@@ -1776,7 +1782,8 @@ class ToolBarComponent {
1776
1782
  }
1777
1783
  else {
1778
1784
  this.overflowKeydownListener = this.renderer.listen(this.popupRef.popupElement, 'keydown', (ev) => {
1779
- switch (ev.keyCode) {
1785
+ const code = normalizeNumpadKeys(ev);
1786
+ switch (code) {
1780
1787
  case Keys.ArrowUp:
1781
1788
  this.zone.run(() => {
1782
1789
  ev.preventDefault();
@@ -1801,6 +1808,7 @@ class ToolBarComponent {
1801
1808
  this.navigationService.resetNavigation();
1802
1809
  });
1803
1810
  break;
1811
+ case Keys.NumpadEnter:
1804
1812
  case Keys.Enter:
1805
1813
  case Keys.Space:
1806
1814
  this.zone.run(() => {
@@ -2718,6 +2726,13 @@ class ToolBarButtonComponent extends ToolBarToolComponent {
2718
2726
  * @default 'solid'
2719
2727
  */
2720
2728
  fillMode = 'solid';
2729
+ /**
2730
+ * Specifies the border radius of the Button.
2731
+ * Accepts a `ButtonRounded` value.
2732
+ *
2733
+ * @default 'medium'
2734
+ */
2735
+ rounded = 'medium';
2721
2736
  /**
2722
2737
  * Specifies the predefined theme color of the Button.
2723
2738
  * Accepts a `ButtonThemeColor` value.
@@ -2826,6 +2841,17 @@ class ToolBarButtonComponent extends ToolBarToolComponent {
2826
2841
  this.propertyChangeSub.unsubscribe();
2827
2842
  this.propertyChangeSub = null;
2828
2843
  }
2844
+ ngOnChanges(changes) {
2845
+ if (changes['rounded']) {
2846
+ this.rounded = changes['rounded'].currentValue;
2847
+ }
2848
+ if (changes['themeColor']) {
2849
+ this.themeColor = changes['themeColor'].currentValue;
2850
+ }
2851
+ if (changes['showText']) {
2852
+ this.showText = changes['showText'].currentValue;
2853
+ }
2854
+ }
2829
2855
  /**
2830
2856
  * @hidden
2831
2857
  */
@@ -2885,7 +2911,7 @@ class ToolBarButtonComponent extends ToolBarToolComponent {
2885
2911
  });
2886
2912
  }
2887
2913
  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 });
2888
- 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: `
2914
+ 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", rounded: "rounded", 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, usesOnChanges: true, ngImport: i0, template: `
2889
2915
  <ng-template #toolbarTemplate>
2890
2916
  <kendo-badge-container *ngIf="hasBadgeContainer">
2891
2917
  <button
@@ -2903,6 +2929,7 @@ class ToolBarButtonComponent extends ToolBarToolComponent {
2903
2929
  [toggleable]="toggleable"
2904
2930
  [fillMode]="fillMode"
2905
2931
  [themeColor]="fillMode ? themeColor : null"
2932
+ [rounded]="rounded"
2906
2933
  [selected]="selected"
2907
2934
  [icon]="toolbarOptions.icon"
2908
2935
  [iconClass]="toolbarOptions.iconClass"
@@ -2933,6 +2960,7 @@ class ToolBarButtonComponent extends ToolBarToolComponent {
2933
2960
  [toggleable]="toggleable"
2934
2961
  [fillMode]="fillMode"
2935
2962
  [themeColor]="fillMode ? themeColor : null"
2963
+ [rounded]="rounded"
2936
2964
  [selected]="selected"
2937
2965
  [icon]="toolbarOptions.icon"
2938
2966
  [iconClass]="toolbarOptions.iconClass"
@@ -2987,6 +3015,7 @@ class ToolBarButtonComponent extends ToolBarToolComponent {
2987
3015
  [toggleable]="toggleable"
2988
3016
  [fillMode]="fillMode"
2989
3017
  [themeColor]="fillMode ? themeColor : null"
3018
+ [rounded]="rounded"
2990
3019
  [selected]="selected"
2991
3020
  [icon]="toolbarOptions.icon"
2992
3021
  [iconClass]="toolbarOptions.iconClass"
@@ -3017,6 +3046,7 @@ class ToolBarButtonComponent extends ToolBarToolComponent {
3017
3046
  [toggleable]="toggleable"
3018
3047
  [fillMode]="fillMode"
3019
3048
  [themeColor]="fillMode ? themeColor : null"
3049
+ [rounded]="rounded"
3020
3050
  [selected]="selected"
3021
3051
  [icon]="toolbarOptions.icon"
3022
3052
  [iconClass]="toolbarOptions.iconClass"
@@ -3056,6 +3086,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
3056
3086
  [toggleable]="toggleable"
3057
3087
  [fillMode]="fillMode"
3058
3088
  [themeColor]="fillMode ? themeColor : null"
3089
+ [rounded]="rounded"
3059
3090
  [selected]="selected"
3060
3091
  [icon]="toolbarOptions.icon"
3061
3092
  [iconClass]="toolbarOptions.iconClass"
@@ -3086,6 +3117,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
3086
3117
  [toggleable]="toggleable"
3087
3118
  [fillMode]="fillMode"
3088
3119
  [themeColor]="fillMode ? themeColor : null"
3120
+ [rounded]="rounded"
3089
3121
  [selected]="selected"
3090
3122
  [icon]="toolbarOptions.icon"
3091
3123
  [iconClass]="toolbarOptions.iconClass"
@@ -3140,6 +3172,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
3140
3172
  [toggleable]="toggleable"
3141
3173
  [fillMode]="fillMode"
3142
3174
  [themeColor]="fillMode ? themeColor : null"
3175
+ [rounded]="rounded"
3143
3176
  [selected]="selected"
3144
3177
  [icon]="toolbarOptions.icon"
3145
3178
  [iconClass]="toolbarOptions.iconClass"
@@ -3170,6 +3203,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
3170
3203
  [toggleable]="toggleable"
3171
3204
  [fillMode]="fillMode"
3172
3205
  [themeColor]="fillMode ? themeColor : null"
3206
+ [rounded]="rounded"
3173
3207
  [selected]="selected"
3174
3208
  [icon]="toolbarOptions.icon"
3175
3209
  [iconClass]="toolbarOptions.iconClass"
@@ -3211,6 +3245,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
3211
3245
  type: Input
3212
3246
  }], fillMode: [{
3213
3247
  type: Input
3248
+ }], rounded: [{
3249
+ type: Input
3214
3250
  }], themeColor: [{
3215
3251
  type: Input
3216
3252
  }], icon: [{
@@ -3937,7 +3973,8 @@ class ToolBarDropDownButtonComponent extends ToolBarToolComponent {
3937
3973
  * @hidden
3938
3974
  */
3939
3975
  handleKey(ev) {
3940
- if (!this.overflows && (ev.keyCode === this.getPrevKey(this.overflows) || ev.keyCode === this.getNextKey(this.overflows))) {
3976
+ const code = normalizeNumpadKeys(ev);
3977
+ if (!this.overflows && (code === this.getPrevKey(this.overflows) || code === this.getNextKey(this.overflows))) {
3941
3978
  return false;
3942
3979
  }
3943
3980
  if (this.overflows && this.location !== 'section') {
@@ -4501,7 +4538,8 @@ class ToolBarSplitButtonComponent extends ToolBarToolComponent {
4501
4538
  * @hidden
4502
4539
  */
4503
4540
  handleKey(ev) {
4504
- if (!this.overflows && (ev.keyCode === this.getPrevKey(this.overflows) || ev.keyCode === this.getNextKey(this.overflows))) {
4541
+ const code = normalizeNumpadKeys(ev);
4542
+ if (!this.overflows && (code === this.getPrevKey(this.overflows) || code === this.getNextKey(this.overflows))) {
4505
4543
  return false;
4506
4544
  }
4507
4545
  if (this.overflows) {
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@progress/kendo-angular-toolbar",
3
- "version": "19.3.0-develop.4",
3
+ "version": "19.3.0-develop.40",
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",
@@ -45,7 +45,7 @@
45
45
  "package": {
46
46
  "productName": "Kendo UI for Angular",
47
47
  "productCode": "KENDOUIANGULAR",
48
- "publishDate": 1752065406,
48
+ "publishDate": 1754990725,
49
49
  "licensingDocsUrl": "https://www.telerik.com/kendo-angular-ui/my-license/"
50
50
  }
51
51
  },
@@ -54,18 +54,18 @@
54
54
  "@angular/common": "16 - 20",
55
55
  "@angular/core": "16 - 20",
56
56
  "@angular/platform-browser": "16 - 20",
57
- "@progress/kendo-licensing": "^1.5.0",
58
- "@progress/kendo-angular-buttons": "19.3.0-develop.4",
59
- "@progress/kendo-angular-common": "19.3.0-develop.4",
60
- "@progress/kendo-angular-l10n": "19.3.0-develop.4",
61
- "@progress/kendo-angular-icons": "19.3.0-develop.4",
62
- "@progress/kendo-angular-indicators": "19.3.0-develop.4",
63
- "@progress/kendo-angular-popup": "19.3.0-develop.4",
57
+ "@progress/kendo-licensing": "^1.7.0",
58
+ "@progress/kendo-angular-buttons": "19.3.0-develop.40",
59
+ "@progress/kendo-angular-common": "19.3.0-develop.40",
60
+ "@progress/kendo-angular-l10n": "19.3.0-develop.40",
61
+ "@progress/kendo-angular-icons": "19.3.0-develop.40",
62
+ "@progress/kendo-angular-indicators": "19.3.0-develop.40",
63
+ "@progress/kendo-angular-popup": "19.3.0-develop.40",
64
64
  "rxjs": "^6.5.3 || ^7.0.0"
65
65
  },
66
66
  "dependencies": {
67
67
  "tslib": "^2.3.1",
68
- "@progress/kendo-angular-schematics": "19.3.0-develop.4",
68
+ "@progress/kendo-angular-schematics": "19.3.0-develop.40",
69
69
  "node-html-parser": "^7.0.1"
70
70
  },
71
71
  "schematics": "./schematics/collection.json",
@@ -47,7 +47,8 @@ import * as i0 from "@angular/core";
47
47
  * {@link EditorFontFamilyComponent},
48
48
  * {@link EditorFontSizeComponent},
49
49
  * {@link EditorFormatComponent},
50
- * {@link EditorInsertTableButtonComponent}.
50
+ * {@link EditorInsertTableButtonComponent},
51
+ * {@link SelectAllToolbarToolComponent}.
51
52
  */
52
53
  export declare class ToolBarComponent {
53
54
  localization: LocalizationService;
@@ -6,7 +6,7 @@ import { EventEmitter, ElementRef, NgZone } from '@angular/core';
6
6
  import { ToolBarToolComponent } from './toolbar-tool.component';
7
7
  import { DisplayMode } from '../display-mode';
8
8
  import { ToolOptions } from '../tool-options';
9
- import { ButtonFillMode, ButtonThemeColor } from '@progress/kendo-angular-buttons';
9
+ import { ButtonFillMode, ButtonThemeColor, ButtonRounded } from '@progress/kendo-angular-buttons';
10
10
  import { SVGIcon } from '@progress/kendo-svg-icons';
11
11
  import { ToolBarComponent } from '../toolbar.component';
12
12
  import * as i0 from "@angular/core";
@@ -100,6 +100,13 @@ export declare class ToolBarButtonComponent extends ToolBarToolComponent {
100
100
  * @default 'solid'
101
101
  */
102
102
  fillMode: ButtonFillMode;
103
+ /**
104
+ * Specifies the border radius of the Button.
105
+ * Accepts a `ButtonRounded` value.
106
+ *
107
+ * @default 'medium'
108
+ */
109
+ rounded: ButtonRounded;
103
110
  /**
104
111
  * Specifies the predefined theme color of the Button.
105
112
  * Accepts a `ButtonThemeColor` value.
@@ -160,6 +167,7 @@ export declare class ToolBarButtonComponent extends ToolBarToolComponent {
160
167
  constructor(element: ElementRef, zone: NgZone, host: ToolBarComponent);
161
168
  ngOnInit(): void;
162
169
  ngOnDestroy(): void;
170
+ ngOnChanges(changes: any): void;
163
171
  /**
164
172
  * @hidden
165
173
  */
@@ -190,5 +198,5 @@ export declare class ToolBarButtonComponent extends ToolBarToolComponent {
190
198
  getButton(): HTMLElement;
191
199
  private setTextDisplayMode;
192
200
  static ɵfac: i0.ɵɵFactoryDeclaration<ToolBarButtonComponent, never>;
193
- static ɵcmp: i0.ɵɵComponentDeclaration<ToolBarButtonComponent, "kendo-toolbar-button", ["kendoToolBarButton"], { "showText": { "alias": "showText"; "required": false; }; "showIcon": { "alias": "showIcon"; "required": false; }; "text": { "alias": "text"; "required": false; }; "style": { "alias": "style"; "required": false; }; "className": { "alias": "className"; "required": false; }; "title": { "alias": "title"; "required": false; }; "disabled": { "alias": "disabled"; "required": false; }; "toggleable": { "alias": "toggleable"; "required": false; }; "look": { "alias": "look"; "required": false; }; "togglable": { "alias": "togglable"; "required": false; }; "selected": { "alias": "selected"; "required": false; }; "fillMode": { "alias": "fillMode"; "required": false; }; "themeColor": { "alias": "themeColor"; "required": false; }; "icon": { "alias": "icon"; "required": false; }; "iconClass": { "alias": "iconClass"; "required": false; }; "svgIcon": { "alias": "svgIcon"; "required": false; }; "imageUrl": { "alias": "imageUrl"; "required": false; }; }, { "click": "click"; "pointerdown": "pointerdown"; "selectedChange": "selectedChange"; }, never, never, true, never>;
201
+ static ɵcmp: i0.ɵɵComponentDeclaration<ToolBarButtonComponent, "kendo-toolbar-button", ["kendoToolBarButton"], { "showText": { "alias": "showText"; "required": false; }; "showIcon": { "alias": "showIcon"; "required": false; }; "text": { "alias": "text"; "required": false; }; "style": { "alias": "style"; "required": false; }; "className": { "alias": "className"; "required": false; }; "title": { "alias": "title"; "required": false; }; "disabled": { "alias": "disabled"; "required": false; }; "toggleable": { "alias": "toggleable"; "required": false; }; "look": { "alias": "look"; "required": false; }; "togglable": { "alias": "togglable"; "required": false; }; "selected": { "alias": "selected"; "required": false; }; "fillMode": { "alias": "fillMode"; "required": false; }; "rounded": { "alias": "rounded"; "required": false; }; "themeColor": { "alias": "themeColor"; "required": false; }; "icon": { "alias": "icon"; "required": false; }; "iconClass": { "alias": "iconClass"; "required": false; }; "svgIcon": { "alias": "svgIcon"; "required": false; }; "imageUrl": { "alias": "imageUrl"; "required": false; }; }, { "click": "click"; "pointerdown": "pointerdown"; "selectedChange": "selectedChange"; }, never, never, true, never>;
194
202
  }
package/util.d.ts CHANGED
@@ -63,11 +63,11 @@ export declare const makePeeker: (collection: any[]) => (index: number) => boole
63
63
  /**
64
64
  * @hidden
65
65
  */
66
- export declare const getIndexOfFocused: (prevKeyCode: number, nextKeyCode: number, collection: HTMLElement[]) => (ev: any) => number;
66
+ export declare const getIndexOfFocused: (prevKeyCode: string, nextKeyCode: string, collection: HTMLElement[]) => (ev: any) => number;
67
67
  /**
68
68
  * @hidden
69
69
  */
70
- export declare const seekFocusedIndex: (prevKeyCode: number, nextKeyCode: number, seeker: (i: number) => boolean) => (startIndex: number, ev: any) => number;
70
+ export declare const seekFocusedIndex: (prevKeyCode: string, nextKeyCode: string, seeker: (i: number) => boolean) => (startIndex: number, ev: any) => number;
71
71
  /**
72
72
  * @hidden
73
73
  */