@progress/kendo-angular-toolbar 17.0.0-develop.9 → 17.0.0

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.
Files changed (54) hide show
  1. package/README.md +28 -20
  2. package/common/fillmode.d.ts +8 -0
  3. package/common/size.d.ts +1 -1
  4. package/direction.d.ts +1 -1
  5. package/display-mode.d.ts +1 -1
  6. package/{esm2020 → esm2022}/common/preventable-event.mjs +1 -3
  7. package/{esm2020 → esm2022}/localization/custom-messages.component.mjs +9 -8
  8. package/{esm2020 → esm2022}/localization/localized-toolbar-messages.directive.mjs +9 -8
  9. package/{esm2020 → esm2022}/localization/messages.mjs +7 -3
  10. package/{esm2020 → esm2022}/navigation.service.mjs +9 -7
  11. package/{esm2020 → esm2022}/package-metadata.mjs +2 -2
  12. package/{esm2020 → esm2022}/refresh.service.mjs +4 -6
  13. package/{esm2020 → esm2022}/renderer.component.mjs +22 -10
  14. package/{esm2020 → esm2022}/renderer.service.mjs +5 -3
  15. package/esm2022/tool-options.mjs +5 -0
  16. package/{esm2020 → esm2022}/toolbar.component.mjs +104 -64
  17. package/{esm2020 → esm2022}/toolbar.module.mjs +4 -4
  18. package/{esm2020 → esm2022}/tools/toolbar-button.component.mjs +110 -98
  19. package/{esm2020 → esm2022}/tools/toolbar-buttongroup.component.mjs +49 -25
  20. package/{esm2020 → esm2022}/tools/toolbar-dropdownbutton.component.mjs +112 -95
  21. package/{esm2020 → esm2022}/tools/toolbar-separator.component.mjs +7 -12
  22. package/{esm2020 → esm2022}/tools/toolbar-spacer.component.mjs +10 -16
  23. package/{esm2020 → esm2022}/tools/toolbar-splitbutton.component.mjs +117 -102
  24. package/{esm2020 → esm2022}/tools/toolbar-tool.component.mjs +23 -13
  25. package/{esm2020 → esm2022}/tools/tools.service.mjs +8 -10
  26. package/{esm2020 → esm2022}/util.mjs +5 -0
  27. package/{fesm2020 → fesm2022}/progress-kendo-angular-toolbar.mjs +612 -484
  28. package/group-selection-settings.d.ts +1 -1
  29. package/index.d.ts +1 -0
  30. package/localization/messages.d.ts +1 -1
  31. package/package.json +15 -21
  32. package/render-location.d.ts +1 -1
  33. package/renderer.component.d.ts +1 -1
  34. package/schematics/ngAdd/index.js +1 -1
  35. package/toolbar.component.d.ts +11 -1
  36. package/tools/toolbar-button.component.d.ts +2 -8
  37. package/tools/toolbar-buttongroup.component.d.ts +8 -4
  38. package/tools/toolbar-dropdownbutton.component.d.ts +2 -4
  39. package/tools/toolbar-separator.component.d.ts +1 -3
  40. package/tools/toolbar-spacer.component.d.ts +1 -3
  41. package/tools/toolbar-splitbutton.component.d.ts +2 -4
  42. package/tools/toolbar-tool.component.d.ts +3 -3
  43. package/fesm2015/progress-kendo-angular-toolbar.mjs +0 -3374
  44. /package/{esm2020/common/renderer-click.mjs → esm2022/common/fillmode.mjs} +0 -0
  45. /package/{esm2020/common/size.mjs → esm2022/common/renderer-click.mjs} +0 -0
  46. /package/{esm2020/direction.mjs → esm2022/common/size.mjs} +0 -0
  47. /package/{esm2020/display-mode.mjs → esm2022/direction.mjs} +0 -0
  48. /package/{esm2020 → esm2022}/directives.mjs +0 -0
  49. /package/{esm2020/group-selection-settings.mjs → esm2022/display-mode.mjs} +0 -0
  50. /package/{esm2020/popup-settings.mjs → esm2022/group-selection-settings.mjs} +0 -0
  51. /package/{esm2020 → esm2022}/index.mjs +0 -0
  52. /package/{esm2020/render-location.mjs → esm2022/popup-settings.mjs} +0 -0
  53. /package/{esm2020 → esm2022}/progress-kendo-angular-toolbar.mjs +0 -0
  54. /package/{esm2020/tool-options.mjs → esm2022/render-location.mjs} +0 -0
@@ -3,10 +3,10 @@
3
3
  * Licensed under commercial license. See LICENSE.md in the project root for more information
4
4
  *-------------------------------------------------------------------------------------------*/
5
5
  import * as i0 from '@angular/core';
6
- import { EventEmitter, Injectable, inject, ElementRef, Directive, Input, Output, forwardRef, ViewContainerRef, Component, ContentChildren, ViewChild, HostBinding, HostListener, isDevMode, ViewChildren, NgModule } from '@angular/core';
6
+ import { EventEmitter, Injectable, inject, ElementRef, Directive, ViewChild, Input, Output, forwardRef, ViewContainerRef, Component, ContentChildren, HostBinding, 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, guid, isDocumentAvailable, ResizeSensorComponent, ResizeBatchService } from '@progress/kendo-angular-common';
9
+ import { Keys, 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';
@@ -24,8 +24,8 @@ const packageMetadata = {
24
24
  name: '@progress/kendo-angular-toolbar',
25
25
  productName: 'Kendo UI for Angular',
26
26
  productCodes: ['KENDOUIANGULAR', 'KENDOUICOMPLETE'],
27
- publishDate: 1729174376,
28
- version: '17.0.0-develop.9',
27
+ publishDate: 1731413941,
28
+ version: '17.0.0',
29
29
  licensingDocsUrl: 'https://www.telerik.com/kendo-angular-ui/my-license/'
30
30
  };
31
31
 
@@ -33,16 +33,14 @@ const packageMetadata = {
33
33
  * @hidden
34
34
  */
35
35
  class RefreshService {
36
- constructor() {
37
- this.onRefresh = new EventEmitter();
38
- }
36
+ onRefresh = new EventEmitter();
39
37
  refresh(tool) {
40
38
  this.onRefresh.emit(tool);
41
39
  }
40
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: RefreshService, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
41
+ static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: RefreshService });
42
42
  }
43
- RefreshService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: RefreshService, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
44
- RefreshService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: RefreshService });
45
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: RefreshService, decorators: [{
43
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: RefreshService, decorators: [{
46
44
  type: Injectable
47
45
  }] });
48
46
 
@@ -248,6 +246,11 @@ const getStylingClasses = (componentType, stylingOption, previousValue, newValue
248
246
  toRemove: `k-${componentType}-${SIZES[previousValue]}`,
249
247
  toAdd: newValue !== 'none' ? `k-${componentType}-${SIZES[newValue]}` : ''
250
248
  };
249
+ case 'fillMode':
250
+ return {
251
+ toRemove: `k-${componentType}-${previousValue}`,
252
+ toAdd: newValue !== 'none' ? `k-${componentType}-${newValue}` : ''
253
+ };
251
254
  default:
252
255
  break;
253
256
  }
@@ -264,12 +267,14 @@ const isElementOrTextNode = n => n.nodeType === 1 || n.nodeType === 3;
264
267
  * @hidden
265
268
  */
266
269
  class NavigationService {
270
+ zone;
271
+ overflowButton;
272
+ focused = { renderedTool: null, index: -1 };
273
+ renderedTools = [];
274
+ isPopupFocused = false;
275
+ isOverflowButtonFocused = false;
267
276
  constructor(zone) {
268
277
  this.zone = zone;
269
- this.focused = { renderedTool: null, index: -1 };
270
- this.renderedTools = [];
271
- this.isPopupFocused = false;
272
- this.isOverflowButtonFocused = false;
273
278
  }
274
279
  setRenderedTools(rts) {
275
280
  this.renderedTools = rts;
@@ -401,10 +406,10 @@ class NavigationService {
401
406
  return (isPresent(this.overflowButton) &&
402
407
  window.getComputedStyle(this.overflowButton.nativeElement).getPropertyValue('visibility') === 'visible');
403
408
  }
409
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: NavigationService, deps: [{ token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Injectable });
410
+ static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: NavigationService });
404
411
  }
405
- NavigationService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: NavigationService, deps: [{ token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Injectable });
406
- NavigationService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: NavigationService });
407
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: NavigationService, decorators: [{
412
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: NavigationService, decorators: [{
408
413
  type: Injectable
409
414
  }], ctorParameters: function () { return [{ type: i0.NgZone }]; } });
410
415
 
@@ -413,17 +418,21 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImpo
413
418
  * Extend this class to create custom tools.
414
419
  */
415
420
  class ToolBarToolComponent {
421
+ toolbarTemplate;
422
+ popupTemplate;
423
+ tabIndex = -1; //Focus movement inside the toolbar is managed using roving tabindex.
424
+ overflows = true;
425
+ visibility;
426
+ element;
427
+ isBuiltInTool = false;
416
428
  constructor() {
417
- this.tabIndex = -1; //Focus movement inside the toolbar is managed using roving tabindex.
418
- this.overflows = true;
419
- this.isBuiltInTool = false;
420
- // this should be replaced with showTool: DisplayMode = 'both';
421
- /**
422
- * @hidden
423
- */
424
- this.responsive = true;
425
429
  this.element = inject(ElementRef);
426
430
  }
431
+ // this should be replaced with showTool: DisplayMode = 'both';
432
+ /**
433
+ * @hidden
434
+ */
435
+ responsive = true;
427
436
  get toolbarDisplay() {
428
437
  return this.overflows ? 'none' : 'inline-flex';
429
438
  }
@@ -456,15 +465,21 @@ class ToolBarToolComponent {
456
465
  handleKey(ev) {
457
466
  return false;
458
467
  }
468
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: ToolBarToolComponent, deps: [], target: i0.ɵɵFactoryTarget.Directive });
469
+ static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "16.2.12", type: ToolBarToolComponent, isStandalone: true, inputs: { responsive: "responsive" }, viewQueries: [{ propertyName: "toolbarTemplate", first: true, predicate: ["toolbarTemplate"], descendants: true, static: true }, { propertyName: "popupTemplate", first: true, predicate: ["popupTemplate"], descendants: true, static: true }], ngImport: i0 });
459
470
  }
460
- ToolBarToolComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: ToolBarToolComponent, deps: [], target: i0.ɵɵFactoryTarget.Directive });
461
- ToolBarToolComponent.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "15.2.10", type: ToolBarToolComponent, isStandalone: true, inputs: { responsive: "responsive" }, ngImport: i0 });
462
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: ToolBarToolComponent, decorators: [{
471
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: ToolBarToolComponent, decorators: [{
463
472
  type: Directive,
464
473
  args: [{
465
474
  standalone: true
466
475
  }]
467
- }], ctorParameters: function () { return []; }, propDecorators: { responsive: [{
476
+ }], ctorParameters: function () { return []; }, propDecorators: { toolbarTemplate: [{
477
+ type: ViewChild,
478
+ args: ['toolbarTemplate', { static: true }]
479
+ }], popupTemplate: [{
480
+ type: ViewChild,
481
+ args: ['popupTemplate', { static: true }]
482
+ }], responsive: [{
468
483
  type: Input
469
484
  }] } });
470
485
 
@@ -472,9 +487,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImpo
472
487
  * @hidden
473
488
  */
474
489
  class PreventableEvent {
475
- constructor() {
476
- this.prevented = false;
477
- }
490
+ prevented = false;
478
491
  /**
479
492
  * Prevents the default action for a specified event.
480
493
  * In this way, the source component suppresses the built-in behavior that follows the event.
@@ -496,6 +509,8 @@ class PreventableEvent {
496
509
  * @hidden
497
510
  */
498
511
  class RendererService {
512
+ element;
513
+ renderer;
499
514
  getElement() {
500
515
  return this.element.nativeElement;
501
516
  }
@@ -529,10 +544,10 @@ class RendererService {
529
544
  setAttribute(element, attr, value) {
530
545
  this.renderer.setAttribute(element, attr, value);
531
546
  }
547
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: RendererService, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
548
+ static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: RendererService });
532
549
  }
533
- RendererService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: RendererService, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
534
- RendererService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: RendererService });
535
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: RendererService, decorators: [{
550
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: RendererService, decorators: [{
536
551
  type: Injectable
537
552
  }] });
538
553
 
@@ -540,17 +555,15 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImpo
540
555
  * @hidden
541
556
  */
542
557
  class ToolbarToolsService {
543
- constructor() {
544
- this.renderedToolsChange = new Subject();
545
- this.overflowToolsChange = new Subject();
546
- this.renderedTools = [];
547
- this.overflowTools = [];
548
- this.allTools = [];
549
- }
558
+ renderedToolsChange = new Subject();
559
+ overflowToolsChange = new Subject();
560
+ renderedTools = [];
561
+ overflowTools = [];
562
+ allTools = [];
563
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: ToolbarToolsService, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
564
+ static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: ToolbarToolsService });
550
565
  }
551
- ToolbarToolsService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: ToolbarToolsService, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
552
- ToolbarToolsService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: ToolbarToolsService });
553
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: ToolbarToolsService, decorators: [{
566
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: ToolbarToolsService, decorators: [{
554
567
  type: Injectable
555
568
  }] });
556
569
 
@@ -559,19 +572,28 @@ const MIN_SPACER_WIDTH = 18;
559
572
  * @hidden
560
573
  */
561
574
  class ToolBarRendererComponent {
575
+ renderer;
576
+ rendererService;
577
+ refreshService;
578
+ toolsService;
579
+ viewContainer;
580
+ tool;
581
+ location;
582
+ resizable;
583
+ rendererClick = new EventEmitter();
584
+ template;
585
+ element;
586
+ get isSpacer() {
587
+ return this.tool && this.tool.__isSpacer;
588
+ }
589
+ refreshSubscription;
590
+ internalComponentRef;
562
591
  constructor(renderer, rendererService, refreshService, toolsService, viewContainer) {
563
592
  this.renderer = renderer;
564
593
  this.rendererService = rendererService;
565
594
  this.refreshService = refreshService;
566
595
  this.toolsService = toolsService;
567
596
  this.viewContainer = viewContainer;
568
- this.rendererClick = new EventEmitter();
569
- this.onClick = (ev) => {
570
- this.rendererClick.emit({ context: this, event: ev });
571
- };
572
- }
573
- get isSpacer() {
574
- return this.tool && this.tool.__isSpacer;
575
597
  }
576
598
  ngOnInit() {
577
599
  const viewContainerRootNodes = this.viewContainer.get(0)?.rootNodes?.filter(isElementOrTextNode);
@@ -643,6 +665,9 @@ class ToolBarRendererComponent {
643
665
  setAttribute(element, attr, value) {
644
666
  this.renderer.setAttribute(element, attr, value);
645
667
  }
668
+ onClick = (ev) => {
669
+ this.rendererClick.emit({ context: this, event: ev });
670
+ };
646
671
  updateTools() {
647
672
  const isInToolbar = this.toolsService.renderedTools.some(t => t.tool === this.tool);
648
673
  const isInPopup = this.toolsService.overflowTools.some(t => t.tool === this.tool);
@@ -660,10 +685,10 @@ class ToolBarRendererComponent {
660
685
  }
661
686
  }
662
687
  }
688
+ 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 });
689
+ 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 });
663
690
  }
664
- ToolBarRendererComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: ToolBarRendererComponent, deps: [{ token: i0.Renderer2 }, { token: RendererService }, { token: RefreshService }, { token: ToolbarToolsService }, { token: i0.ViewContainerRef }], target: i0.ɵɵFactoryTarget.Directive });
665
- ToolBarRendererComponent.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "15.2.10", type: ToolBarRendererComponent, isStandalone: true, selector: "[kendoToolbarRenderer]", inputs: { tool: "tool", location: "location", resizable: "resizable" }, outputs: { rendererClick: "rendererClick" }, providers: [RendererService], ngImport: i0 });
666
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: ToolBarRendererComponent, decorators: [{
691
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: ToolBarRendererComponent, decorators: [{
667
692
  type: Directive,
668
693
  args: [{
669
694
  providers: [RendererService],
@@ -684,10 +709,14 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImpo
684
709
  * @hidden
685
710
  */
686
711
  class ToolbarMessages extends ComponentMessages {
712
+ /**
713
+ * The title of the **more tools** button in a responsive ToolBar
714
+ */
715
+ moreToolsTitle;
716
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: ToolbarMessages, deps: null, target: i0.ɵɵFactoryTarget.Directive });
717
+ static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "16.2.12", type: ToolbarMessages, selector: "kendo-toolbar-messages-base", inputs: { moreToolsTitle: "moreToolsTitle" }, usesInheritance: true, ngImport: i0 });
687
718
  }
688
- ToolbarMessages.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: ToolbarMessages, deps: null, target: i0.ɵɵFactoryTarget.Directive });
689
- ToolbarMessages.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "15.2.10", type: ToolbarMessages, selector: "kendo-toolbar-messages-base", inputs: { moreToolsTitle: "moreToolsTitle" }, usesInheritance: true, ngImport: i0 });
690
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: ToolbarMessages, decorators: [{
719
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: ToolbarMessages, decorators: [{
691
720
  type: Directive,
692
721
  args: [{
693
722
  // eslint-disable-next-line @angular-eslint/directive-selector
@@ -701,19 +730,20 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImpo
701
730
  * @hidden
702
731
  */
703
732
  class LocalizedToolbarMessagesDirective extends ToolbarMessages {
733
+ service;
704
734
  constructor(service) {
705
735
  super();
706
736
  this.service = service;
707
737
  }
738
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: LocalizedToolbarMessagesDirective, deps: [{ token: i1.LocalizationService }], target: i0.ɵɵFactoryTarget.Directive });
739
+ static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "16.2.12", type: LocalizedToolbarMessagesDirective, isStandalone: true, selector: "[kendoToolbarLocalizedMessages]", providers: [
740
+ {
741
+ provide: ToolbarMessages,
742
+ useExisting: forwardRef(() => LocalizedToolbarMessagesDirective)
743
+ }
744
+ ], usesInheritance: true, ngImport: i0 });
708
745
  }
709
- LocalizedToolbarMessagesDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: LocalizedToolbarMessagesDirective, deps: [{ token: i1.LocalizationService }], target: i0.ɵɵFactoryTarget.Directive });
710
- LocalizedToolbarMessagesDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "15.2.10", type: LocalizedToolbarMessagesDirective, isStandalone: true, selector: "[kendoToolbarLocalizedMessages]", providers: [
711
- {
712
- provide: ToolbarMessages,
713
- useExisting: forwardRef(() => LocalizedToolbarMessagesDirective)
714
- }
715
- ], usesInheritance: true, ngImport: i0 });
716
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: LocalizedToolbarMessagesDirective, decorators: [{
746
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: LocalizedToolbarMessagesDirective, decorators: [{
717
747
  type: Directive,
718
748
  args: [{
719
749
  providers: [
@@ -729,6 +759,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImpo
729
759
 
730
760
  /* eslint-disable no-case-declarations */
731
761
  const DEFAULT_SIZE = 'medium';
762
+ const DEFAULT_FILL_MODE = 'solid';
732
763
  const immediateResizeThreshold = 300;
733
764
  const getInitialPopupSettings = (isRtl) => ({
734
765
  animate: true,
@@ -739,56 +770,22 @@ const getInitialPopupSettings = (isRtl) => ({
739
770
  * Represents the [Kendo UI ToolBar component for Angular]({% slug overview_toolbar %}).
740
771
  */
741
772
  class ToolBarComponent {
742
- constructor(localization, popupService, refreshService, navigationService,
743
- // Needs to be public as it is being accessed in the Editor component
744
- element, zone, renderer, _cdr, toolsService) {
745
- this.localization = localization;
746
- this.popupService = popupService;
747
- this.refreshService = refreshService;
748
- this.navigationService = navigationService;
749
- this.element = element;
750
- this.zone = zone;
751
- this.renderer = renderer;
752
- this._cdr = _cdr;
753
- this.toolsService = toolsService;
754
- /**
755
- * Hides the overflowing tools in a popup.
756
- */
757
- this.overflow = false;
758
- /**
759
- * Specifies the [`tabindex`](https://developer.mozilla.org/en-US/docs/Web/HTML/Global_attributes/tabindex) of the ToolBar.
760
- */
761
- this.tabindex = 0;
762
- /**
763
- * Fires when the overflow popup of the ToolBar is opened.
764
- */
765
- this.open = new EventEmitter();
766
- /**
767
- * Fires when the overflow popup of the ToolBar is closed.
768
- */
769
- this.close = new EventEmitter();
770
- this.hostClass = true;
771
- this.cancelRenderedToolsSubscription$ = new Subject();
772
- this._size = DEFAULT_SIZE;
773
- this.overflowButtonClickedTime = null;
774
- this.subscriptions = new Subscription();
775
- this.popupSubs = new Subscription();
776
- this.role = 'toolbar';
777
- this.moreVerticalIcon = moreVerticalIcon;
778
- /**
779
- * @hidden
780
- */
781
- this.overflowBtnId = guid();
782
- /**
783
- * @hidden
784
- */
785
- this.popupId = guid();
786
- validatePackage(packageMetadata);
787
- this.direction = localization.rtl ? 'rtl' : 'ltr';
788
- }
773
+ localization;
774
+ popupService;
775
+ refreshService;
776
+ navigationService;
777
+ element;
778
+ zone;
779
+ renderer;
780
+ _cdr;
781
+ toolsService;
789
782
  get overflowClass() {
790
783
  return `k-button-${SIZES[this.size]}`;
791
784
  }
785
+ /**
786
+ * Hides the overflowing tools in a popup.
787
+ */
788
+ overflow = false;
792
789
  /**
793
790
  * @hidden
794
791
  */
@@ -811,6 +808,24 @@ class ToolBarComponent {
811
808
  get popupSettings() {
812
809
  return this._popupSettings || getInitialPopupSettings(this.localization.rtl);
813
810
  }
811
+ /**
812
+ * The fillMode property specifies the background and border styles of the Toolbar
813
+ * ([see example](slug:appearance_toolbar#toc-fill-mode)).
814
+ *
815
+ * @default 'solid'
816
+ */
817
+ set fillMode(fillMode) {
818
+ const newFillMode = fillMode ? fillMode : DEFAULT_FILL_MODE;
819
+ this.handleClasses(newFillMode, 'fillMode');
820
+ this._fillMode = newFillMode;
821
+ }
822
+ get fillMode() {
823
+ return this._fillMode;
824
+ }
825
+ /**
826
+ * Specifies the [`tabindex`](https://developer.mozilla.org/en-US/docs/Web/HTML/Global_attributes/tabindex) of the ToolBar.
827
+ */
828
+ tabindex = 0;
814
829
  /**
815
830
  * Specifies the padding of all Toolbar elements.
816
831
  *
@@ -837,6 +852,21 @@ class ToolBarComponent {
837
852
  get tabIndex() {
838
853
  return this.tabindex;
839
854
  }
855
+ /**
856
+ * Fires when the overflow popup of the ToolBar is opened.
857
+ */
858
+ open = new EventEmitter();
859
+ /**
860
+ * Fires when the overflow popup of the ToolBar is closed.
861
+ */
862
+ close = new EventEmitter();
863
+ allTools;
864
+ overflowButton;
865
+ popupTemplate;
866
+ resizeSensor;
867
+ container;
868
+ popupRef;
869
+ direction;
840
870
  get appendTo() {
841
871
  const { appendTo } = this.popupSettings;
842
872
  if (!appendTo || appendTo === 'root') {
@@ -863,6 +893,19 @@ class ToolBarComponent {
863
893
  get popupOpen() {
864
894
  return this._open;
865
895
  }
896
+ hostClass = true;
897
+ _popupSettings;
898
+ cachedOverflowAnchorWidth;
899
+ _open;
900
+ toolbarKeydownListener;
901
+ overflowKeydownListener;
902
+ cancelRenderedToolsSubscription$ = new Subject();
903
+ cachedGap;
904
+ _size = DEFAULT_SIZE;
905
+ _fillMode = DEFAULT_FILL_MODE;
906
+ overflowButtonClickedTime = null;
907
+ subscriptions = new Subscription();
908
+ popupSubs = new Subscription();
866
909
  /**
867
910
  * @hidden
868
911
  */
@@ -883,12 +926,29 @@ class ToolBarComponent {
883
926
  }
884
927
  this.element.nativeElement.setAttribute('tabindex', this.tabindex.toString());
885
928
  }
929
+ role = 'toolbar';
886
930
  get getDir() {
887
931
  return this.direction;
888
932
  }
889
933
  get resizableClass() {
890
934
  return this.overflow;
891
935
  }
936
+ moreVerticalIcon = moreVerticalIcon;
937
+ constructor(localization, popupService, refreshService, navigationService,
938
+ // Needs to be public as it is being accessed in the Editor component
939
+ element, zone, renderer, _cdr, toolsService) {
940
+ this.localization = localization;
941
+ this.popupService = popupService;
942
+ this.refreshService = refreshService;
943
+ this.navigationService = navigationService;
944
+ this.element = element;
945
+ this.zone = zone;
946
+ this.renderer = renderer;
947
+ this._cdr = _cdr;
948
+ this.toolsService = toolsService;
949
+ validatePackage(packageMetadata);
950
+ this.direction = localization.rtl ? 'rtl' : 'ltr';
951
+ }
892
952
  ngAfterContentInit() {
893
953
  this.toolsService.allTools = this.allTools.toArray();
894
954
  this.subscriptions.add(this.allTools.changes.subscribe(changes => {
@@ -963,7 +1023,10 @@ class ToolBarComponent {
963
1023
  });
964
1024
  }
965
1025
  this.navigationService.setRenderedTools(this.toolsService.renderedTools);
966
- this.handleClasses(this.size, 'size');
1026
+ const stylingOptions = ['size', 'fillMode'];
1027
+ stylingOptions.forEach(option => {
1028
+ this.handleClasses(this[option], option);
1029
+ });
967
1030
  }
968
1031
  ngOnInit() {
969
1032
  this.subscriptions.add(this.localization.changes.subscribe(({ rtl }) => (this.direction = rtl ? 'rtl' : 'ltr')));
@@ -1128,6 +1191,14 @@ class ToolBarComponent {
1128
1191
  }
1129
1192
  this.renderer.removeAttribute(this.overflowButton.nativeElement, 'aria-controls');
1130
1193
  }
1194
+ /**
1195
+ * @hidden
1196
+ */
1197
+ overflowBtnId = guid();
1198
+ /**
1199
+ * @hidden
1200
+ */
1201
+ popupId = guid();
1131
1202
  displayAnchor() {
1132
1203
  const visibility = this.allTools.filter(t => t.overflows && t.responsive).length > 0 ? 'visible' : 'hidden';
1133
1204
  this.overflowButton && this.renderer.setStyle(this.overflowButton.nativeElement, 'visibility', visibility);
@@ -1275,18 +1346,17 @@ class ToolBarComponent {
1275
1346
  }
1276
1347
  return classes;
1277
1348
  }
1278
- }
1279
- ToolBarComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", 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 }], target: i0.ɵɵFactoryTarget.Component });
1280
- ToolBarComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.10", type: ToolBarComponent, isStandalone: true, selector: "kendo-toolbar", inputs: { overflow: "overflow", resizable: "resizable", popupSettings: "popupSettings", 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-solid": "this.hostClass", "attr.role": "this.role", "attr.dir": "this.getDir", "class.k-toolbar-resizable": "this.resizableClass" } }, providers: [
1281
- RefreshService,
1282
- NavigationService,
1283
- LocalizationService,
1284
- ToolbarToolsService,
1285
- {
1286
- provide: L10N_PREFIX,
1287
- useValue: 'kendo.toolbar'
1288
- }
1289
- ], queries: [{ propertyName: "allTools", predicate: ToolBarToolComponent }], viewQueries: [{ propertyName: "overflowButton", first: true, predicate: ["overflowButton"], descendants: true, read: ElementRef }, { propertyName: "popupTemplate", first: true, predicate: ["popupTemplate"], descendants: true, static: true }, { propertyName: "resizeSensor", first: true, predicate: ["resizeSensor"], descendants: true }, { propertyName: "container", first: true, predicate: ["container"], descendants: true, read: ViewContainerRef, static: true }], exportAs: ["kendoToolBar"], usesOnChanges: true, ngImport: i0, template: `
1349
+ 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 }], target: i0.ɵɵFactoryTarget.Component });
1350
+ 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", "attr.role": "this.role", "attr.dir": "this.getDir", "class.k-toolbar-resizable": "this.resizableClass" } }, providers: [
1351
+ RefreshService,
1352
+ NavigationService,
1353
+ LocalizationService,
1354
+ ToolbarToolsService,
1355
+ {
1356
+ provide: L10N_PREFIX,
1357
+ useValue: 'kendo.toolbar'
1358
+ }
1359
+ ], queries: [{ propertyName: "allTools", predicate: ToolBarToolComponent }], viewQueries: [{ propertyName: "overflowButton", first: true, predicate: ["overflowButton"], descendants: true, read: ElementRef }, { propertyName: "popupTemplate", first: true, predicate: ["popupTemplate"], descendants: true, static: true }, { propertyName: "resizeSensor", first: true, predicate: ["resizeSensor"], descendants: true }, { propertyName: "container", first: true, predicate: ["container"], descendants: true, read: ViewContainerRef, static: true }], exportAs: ["kendoToolBar"], usesOnChanges: true, ngImport: i0, template: `
1290
1360
  <ng-container kendoToolbarLocalizedMessages
1291
1361
  i18n-moreToolsTitle="kendo.toolbar.moreToolsTitle|The title of the **more tools** button in a responsive ToolBar"
1292
1362
  moreToolsTitle="More tools"
@@ -1353,7 +1423,8 @@ ToolBarComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", versi
1353
1423
  <ng-container #container></ng-container>
1354
1424
  <kendo-resize-sensor *ngIf="overflow" #resizeSensor></kendo-resize-sensor>
1355
1425
  `, isInline: true, dependencies: [{ kind: "directive", type: NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: LocalizedToolbarMessagesDirective, selector: "[kendoToolbarLocalizedMessages]" }, { kind: "directive", type: NgFor, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: ToolBarRendererComponent, selector: "[kendoToolbarRenderer]", inputs: ["tool", "location", "resizable"], outputs: ["rendererClick"] }, { kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: ButtonComponent, selector: "button[kendoButton]", inputs: ["arrowIcon", "toggleable", "togglable", "selected", "tabIndex", "imageUrl", "iconClass", "icon", "disabled", "size", "rounded", "fillMode", "themeColor", "svgIcon", "primary", "look"], outputs: ["selectedChange", "click"], exportAs: ["kendoButton"] }, { kind: "directive", type: NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "component", type: ResizeSensorComponent, selector: "kendo-resize-sensor", inputs: ["rateLimit"], outputs: ["resize"] }] });
1356
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: ToolBarComponent, decorators: [{
1426
+ }
1427
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: ToolBarComponent, decorators: [{
1357
1428
  type: Component,
1358
1429
  args: [{
1359
1430
  exportAs: 'kendoToolBar',
@@ -1444,6 +1515,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImpo
1444
1515
  type: Input
1445
1516
  }], popupSettings: [{
1446
1517
  type: Input
1518
+ }], fillMode: [{
1519
+ type: Input
1447
1520
  }], tabindex: [{
1448
1521
  type: Input
1449
1522
  }], size: [{
@@ -1473,9 +1546,6 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImpo
1473
1546
  }], hostClass: [{
1474
1547
  type: HostBinding,
1475
1548
  args: ['class.k-toolbar']
1476
- }, {
1477
- type: HostBinding,
1478
- args: ['class.k-toolbar-solid']
1479
1549
  }], onFocus: [{
1480
1550
  type: HostListener,
1481
1551
  args: ['focus', ['$event']]
@@ -1497,85 +1567,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImpo
1497
1567
  * Represents the [Kendo UI ToolBar Button tool for Angular]({% slug controltypes_toolbar %}#toc-buttons).
1498
1568
  */
1499
1569
  class ToolBarButtonComponent extends ToolBarToolComponent {
1500
- constructor(element, zone) {
1501
- super();
1502
- this.element = element;
1503
- this.zone = zone;
1504
- /**
1505
- * Specifies where button icon should be displayed
1506
- */
1507
- this.showIcon = 'both';
1508
- /**
1509
- * Provides visual styling that indicates if the Button is active
1510
- * ([see example]({% slug controltypes_toolbar %}#toc-toggle-buttons)).
1511
- * By default, `toggleable` is set to `false`.
1512
- */
1513
- this.toggleable = false;
1514
- /**
1515
- * Sets the selected state of the Button.
1516
- */
1517
- this.selected = false;
1518
- /**
1519
- * The fillMode property specifies the background and border styles of the Button.
1520
- *
1521
- * The available values are:
1522
- * * `solid` (default)
1523
- * * `flat`
1524
- * * `outline`
1525
- * * `link`
1526
- * * `null`
1527
- */
1528
- this.fillMode = 'solid';
1529
- /**
1530
- * The Button allows you to specify predefined theme colors.
1531
- * The theme color will be applied as a background and border color while also amending the text color accordingly
1532
- * ([see example]({% slug api_buttons_dropdownbuttoncomponent %}#toc-themeColor)).
1533
- *
1534
- * The possible values are:
1535
- * * `base` &mdash;Applies coloring based on the `base` theme color. (default)
1536
- * * `primary` &mdash;Applies coloring based on the `primary` theme color.
1537
- * * `secondary`&mdash;Applies coloring based on the `secondary` theme color.
1538
- * * `tertiary`&mdash; Applies coloring based on the `tertiary` theme color.
1539
- * * `info`&mdash;Applies coloring based on the `info` theme color.
1540
- * * `success`&mdash; Applies coloring based on the `success` theme color.
1541
- * * `warning`&mdash; Applies coloring based on the `warning` theme color.
1542
- * * `error`&mdash; Applies coloring based on the `error` theme color.
1543
- * * `dark`&mdash; Applies coloring based on the `dark` theme color.
1544
- * * `light`&mdash; Applies coloring based on the `light` theme color.
1545
- * * `inverse`&mdash; Applies coloring based on the `inverse` theme color.
1546
- * * `null` &mdash;Removes the default CSS class (no class would be rendered).
1547
- */
1548
- this.themeColor = 'base';
1549
- /**
1550
- * Fires each time the Button is clicked.
1551
- */
1552
- this.click = new EventEmitter();
1553
- /**
1554
- * Fires when the Button [pointerdown](https://developer.mozilla.org/en-US/docs/Web/API/HTMLElement/pointerdown_event) event is triggered.
1555
- */
1556
- this.pointerdown = new EventEmitter();
1557
- /**
1558
- * Fires each time the selected state of a Toggle Button is changed.
1559
- * The event argument is the new selected state (Boolean).
1560
- */
1561
- this.selectedChange = new EventEmitter();
1562
- this.toolbarOptions = {
1563
- text: '',
1564
- icon: '',
1565
- iconClass: '',
1566
- svgIcon: null,
1567
- imageUrl: ''
1568
- };
1569
- this.overflowOptions = {
1570
- text: '',
1571
- icon: '',
1572
- iconClass: '',
1573
- svgIcon: null,
1574
- imageUrl: ''
1575
- };
1576
- this._showText = 'both';
1577
- this.isBuiltInTool = true;
1578
- }
1570
+ element;
1571
+ zone;
1579
1572
  // showText and showIcon showIcon should be declared first
1580
1573
  /**
1581
1574
  * Specifies where button text should be displayed
@@ -1587,6 +1580,10 @@ class ToolBarButtonComponent extends ToolBarToolComponent {
1587
1580
  get showText() {
1588
1581
  return this._showText;
1589
1582
  }
1583
+ /**
1584
+ * Specifies where button icon should be displayed
1585
+ */
1586
+ showIcon = 'both';
1590
1587
  /**
1591
1588
  * Specifies the text of the Button ([see example]({% slug controltypes_toolbar %}#toc-buttons)).
1592
1589
  */
@@ -1597,6 +1594,29 @@ class ToolBarButtonComponent extends ToolBarToolComponent {
1597
1594
  get text() {
1598
1595
  return this._text;
1599
1596
  }
1597
+ /**
1598
+ * Specifies custom inline CSS styles of the Button.
1599
+ */
1600
+ style;
1601
+ /**
1602
+ * Specifies custom CSS class names that will be added to the Button.
1603
+ */
1604
+ className;
1605
+ /**
1606
+ * Specifies the title of the Button.
1607
+ */
1608
+ title;
1609
+ /**
1610
+ * If `disabled` is set to `true`, the Button is disabled
1611
+ * ([see example]({% slug controltypes_toolbar %}#toc-buttons)).
1612
+ */
1613
+ disabled;
1614
+ /**
1615
+ * Provides visual styling that indicates if the Button is active
1616
+ * ([see example]({% slug controltypes_toolbar %}#toc-toggle-buttons)).
1617
+ * By default, `toggleable` is set to `false`.
1618
+ */
1619
+ toggleable = false;
1600
1620
  /**
1601
1621
  * @hidden
1602
1622
  */
@@ -1614,6 +1634,41 @@ class ToolBarButtonComponent extends ToolBarToolComponent {
1614
1634
  set togglable(value) {
1615
1635
  this.toggleable = value;
1616
1636
  }
1637
+ /**
1638
+ * Sets the selected state of the Button.
1639
+ */
1640
+ selected = false;
1641
+ /**
1642
+ * The fillMode property specifies the background and border styles of the Button.
1643
+ *
1644
+ * The available values are:
1645
+ * * `solid` (default)
1646
+ * * `flat`
1647
+ * * `outline`
1648
+ * * `link`
1649
+ * * `null`
1650
+ */
1651
+ fillMode = 'solid';
1652
+ /**
1653
+ * The Button allows you to specify predefined theme colors.
1654
+ * The theme color will be applied as a background and border color while also amending the text color accordingly
1655
+ * ([see example]({% slug api_buttons_dropdownbuttoncomponent %}#toc-themeColor)).
1656
+ *
1657
+ * The possible values are:
1658
+ * * `base` &mdash;Applies coloring based on the `base` theme color. (default)
1659
+ * * `primary` &mdash;Applies coloring based on the `primary` theme color.
1660
+ * * `secondary`&mdash;Applies coloring based on the `secondary` theme color.
1661
+ * * `tertiary`&mdash; Applies coloring based on the `tertiary` theme color.
1662
+ * * `info`&mdash;Applies coloring based on the `info` theme color.
1663
+ * * `success`&mdash; Applies coloring based on the `success` theme color.
1664
+ * * `warning`&mdash; Applies coloring based on the `warning` theme color.
1665
+ * * `error`&mdash; Applies coloring based on the `error` theme color.
1666
+ * * `dark`&mdash; Applies coloring based on the `dark` theme color.
1667
+ * * `light`&mdash; Applies coloring based on the `light` theme color.
1668
+ * * `inverse`&mdash; Applies coloring based on the `inverse` theme color.
1669
+ * * `null` &mdash;Removes the default CSS class (no class would be rendered).
1670
+ */
1671
+ themeColor = 'base';
1617
1672
  /**
1618
1673
  * Defines the name for an existing icon in a Kendo UI theme
1619
1674
  * ([see example]({% slug controltypes_toolbar %}#toc-buttons)).
@@ -1655,6 +1710,43 @@ class ToolBarButtonComponent extends ToolBarToolComponent {
1655
1710
  this.toolbarOptions.imageUrl = getValueForLocation(imageUrl, this.showIcon, false);
1656
1711
  this.overflowOptions.imageUrl = getValueForLocation(imageUrl, this.showIcon, true);
1657
1712
  }
1713
+ /**
1714
+ * Fires each time the Button is clicked.
1715
+ */
1716
+ click = new EventEmitter();
1717
+ /**
1718
+ * Fires when the Button [pointerdown](https://developer.mozilla.org/en-US/docs/Web/API/HTMLElement/pointerdown_event) event is triggered.
1719
+ */
1720
+ pointerdown = new EventEmitter();
1721
+ /**
1722
+ * Fires each time the selected state of a Toggle Button is changed.
1723
+ * The event argument is the new selected state (Boolean).
1724
+ */
1725
+ selectedChange = new EventEmitter();
1726
+ toolbarOptions = {
1727
+ text: '',
1728
+ icon: '',
1729
+ iconClass: '',
1730
+ svgIcon: null,
1731
+ imageUrl: ''
1732
+ };
1733
+ overflowOptions = {
1734
+ text: '',
1735
+ icon: '',
1736
+ iconClass: '',
1737
+ svgIcon: null,
1738
+ imageUrl: ''
1739
+ };
1740
+ toolbarButtonElement;
1741
+ overflowButtonElement;
1742
+ _showText = 'both';
1743
+ _text;
1744
+ constructor(element, zone) {
1745
+ super();
1746
+ this.element = element;
1747
+ this.zone = zone;
1748
+ this.isBuiltInTool = true;
1749
+ }
1658
1750
  ngOnInit() {
1659
1751
  this.setTextDisplayMode();
1660
1752
  }
@@ -1687,12 +1779,6 @@ class ToolBarButtonComponent extends ToolBarToolComponent {
1687
1779
  this.getButton().tabIndex = -1;
1688
1780
  return false;
1689
1781
  }
1690
- /**
1691
- * @hidden
1692
- */
1693
- get toolbarButtonClass() {
1694
- return this.toggleable ? 'k-toolbar-toggle-button' : 'k-toolbar-button';
1695
- }
1696
1782
  /**
1697
1783
  * @hidden
1698
1784
  */
@@ -1719,13 +1805,13 @@ class ToolBarButtonComponent extends ToolBarToolComponent {
1719
1805
  this.overflowOptions.text = this.showText === 'toolbar' ? undefined : this.text;
1720
1806
  });
1721
1807
  }
1722
- }
1723
- ToolBarButtonComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: ToolBarButtonComponent, deps: [{ token: i0.ElementRef }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component });
1724
- ToolBarButtonComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.10", 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: "toolbarTemplate", first: true, predicate: ["toolbarTemplate"], descendants: true, static: true }, { propertyName: "popupTemplate", first: true, predicate: ["popupTemplate"], descendants: true, static: true }, { propertyName: "toolbarButtonElement", first: true, predicate: ["toolbarButton"], descendants: true, read: ElementRef }, { propertyName: "overflowButtonElement", first: true, predicate: ["overflowButton"], descendants: true, read: ElementRef }], exportAs: ["kendoToolBarButton"], usesInheritance: true, ngImport: i0, template: `
1808
+ 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 });
1809
+ 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: "overflowButtonElement", first: true, predicate: ["overflowButton"], descendants: true, read: ElementRef }], exportAs: ["kendoToolBarButton"], usesInheritance: true, ngImport: i0, template: `
1725
1810
  <ng-template #toolbarTemplate>
1726
1811
  <button
1727
1812
  #toolbarButton
1728
- [class]="toolbarButtonClass"
1813
+ [class.k-toolbar-button]="!toggleable"
1814
+ [class.k-toolbar-toggle-button]="toggleable"
1729
1815
  [tabindex]="tabIndex"
1730
1816
  type="button"
1731
1817
  kendoButton
@@ -1774,7 +1860,8 @@ ToolBarButtonComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0",
1774
1860
  </div>
1775
1861
  </ng-template>
1776
1862
  `, isInline: true, dependencies: [{ kind: "component", type: ButtonComponent, selector: "button[kendoButton]", inputs: ["arrowIcon", "toggleable", "togglable", "selected", "tabIndex", "imageUrl", "iconClass", "icon", "disabled", "size", "rounded", "fillMode", "themeColor", "svgIcon", "primary", "look"], outputs: ["selectedChange", "click"], exportAs: ["kendoButton"] }, { kind: "directive", type: NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }, { kind: "directive", type: NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: IconWrapperComponent, selector: "kendo-icon-wrapper", inputs: ["name", "svgIcon", "innerCssClass", "customFontClass", "size"], exportAs: ["kendoIconWrapper"] }] });
1777
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: ToolBarButtonComponent, decorators: [{
1863
+ }
1864
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: ToolBarButtonComponent, decorators: [{
1778
1865
  type: Component,
1779
1866
  args: [{
1780
1867
  exportAs: 'kendoToolBarButton',
@@ -1784,7 +1871,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImpo
1784
1871
  <ng-template #toolbarTemplate>
1785
1872
  <button
1786
1873
  #toolbarButton
1787
- [class]="toolbarButtonClass"
1874
+ [class.k-toolbar-button]="!toggleable"
1875
+ [class.k-toolbar-toggle-button]="toggleable"
1788
1876
  [tabindex]="tabIndex"
1789
1877
  type="button"
1790
1878
  kendoButton
@@ -1876,12 +1964,6 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImpo
1876
1964
  type: Output
1877
1965
  }], selectedChange: [{
1878
1966
  type: Output
1879
- }], toolbarTemplate: [{
1880
- type: ViewChild,
1881
- args: ['toolbarTemplate', { static: true }]
1882
- }], popupTemplate: [{
1883
- type: ViewChild,
1884
- args: ['popupTemplate', { static: true }]
1885
1967
  }], toolbarButtonElement: [{
1886
1968
  type: ViewChild,
1887
1969
  args: ['toolbarButton', { read: ElementRef }]
@@ -1894,18 +1976,33 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImpo
1894
1976
  * Represents the Kendo UI Toolbar ButtonGroup for Angular.
1895
1977
  */
1896
1978
  class ToolBarButtonGroupComponent extends ToolBarToolComponent {
1897
- constructor(localization) {
1898
- super();
1899
- this.localization = localization;
1900
- /**
1901
- * By default, the selection mode of the ButtonGroup is set to `multiple`.
1902
- */
1903
- this.selection = 'multiple';
1904
- this.focusedIndex = -1;
1905
- this.getNextKey = getNextKey(this.localization.rtl);
1906
- this.getPrevKey = getPrevKey(this.localization.rtl);
1907
- this.isBuiltInTool = true;
1908
- }
1979
+ localization;
1980
+ /**
1981
+ * By default, the ButtonGroup is enabled. To disable the whole group of buttons, set its `disabled`
1982
+ * attribute to `true`. To disable a specific button, set the `disabled` attribute of the button to
1983
+ * `true` and leave the `disabled` attribute of the ButtonGroup undefined. If you define the `disabled`
1984
+ * attribute of the ButtonGroup, it will take precedence over the `disabled` attributes of the underlying
1985
+ * buttons and they will be ignored.
1986
+ */
1987
+ disabled;
1988
+ /**
1989
+ * @hidden
1990
+ *
1991
+ * Used to set different fillmode in Spreadsheet and Toolbar to comply with referent rendering.
1992
+ */
1993
+ fillMode = 'solid';
1994
+ /**
1995
+ * By default, the selection mode of the ButtonGroup is set to `multiple`.
1996
+ */
1997
+ selection = 'multiple';
1998
+ /**
1999
+ * Sets the width of the ButtonGroup.
2000
+ *
2001
+ * If the width of the ButtonGroup is set:
2002
+ * - The buttons resize automatically to fill the full width of the group wrapper.
2003
+ * - The buttons acquire the same width.
2004
+ */
2005
+ width;
1909
2006
  /**
1910
2007
  * @hidden
1911
2008
  */
@@ -1914,6 +2011,9 @@ class ToolBarButtonGroupComponent extends ToolBarToolComponent {
1914
2011
  this.buttonComponents.forEach(b => b.fillMode = look === 'default' ? 'solid' : look);
1915
2012
  }
1916
2013
  }
2014
+ toolbarButtonGroup;
2015
+ overflowListItems;
2016
+ buttonComponents;
1917
2017
  get buttonElements() {
1918
2018
  if (this.overflows) {
1919
2019
  return [...this.overflowListItems.toArray().filter(el => !el.nativeElement.classList.contains('k-disabled'))].map(el => el.nativeElement);
@@ -1924,6 +2024,16 @@ class ToolBarButtonGroupComponent extends ToolBarToolComponent {
1924
2024
  .map(b => b.element);
1925
2025
  }
1926
2026
  }
2027
+ focusedIndex = -1;
2028
+ getNextKey;
2029
+ getPrevKey;
2030
+ constructor(localization) {
2031
+ super();
2032
+ this.localization = localization;
2033
+ this.getNextKey = getNextKey(this.localization.rtl);
2034
+ this.getPrevKey = getPrevKey(this.localization.rtl);
2035
+ this.isBuiltInTool = true;
2036
+ }
1927
2037
  /**
1928
2038
  * @hidden
1929
2039
  */
@@ -2020,12 +2130,11 @@ class ToolBarButtonGroupComponent extends ToolBarToolComponent {
2020
2130
  this.buttonElements[index]?.focus();
2021
2131
  }
2022
2132
  }
2023
- }
2024
- ToolBarButtonGroupComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: ToolBarButtonGroupComponent, deps: [{ token: i1.LocalizationService }], target: i0.ɵɵFactoryTarget.Component });
2025
- ToolBarButtonGroupComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.10", type: ToolBarButtonGroupComponent, isStandalone: true, selector: "kendo-toolbar-buttongroup", inputs: { disabled: "disabled", selection: "selection", width: "width", look: "look" }, providers: [LocalizationService, { provide: ToolBarToolComponent, useExisting: forwardRef(() => ToolBarButtonGroupComponent) }], queries: [{ propertyName: "buttonComponents", predicate: i0.forwardRef(function () { return ToolBarButtonComponent; }) }], viewQueries: [{ propertyName: "toolbarTemplate", first: true, predicate: ["toolbarTemplate"], descendants: true, static: true }, { propertyName: "popupTemplate", first: true, predicate: ["popupTemplate"], descendants: true, static: true }, { propertyName: "toolbarButtonGroup", first: true, predicate: ["toolbarButtonGroup"], descendants: true }, { propertyName: "overflowListItems", predicate: ["listItem"], descendants: true }], exportAs: ["kendoToolBarButtonGroup"], usesInheritance: true, ngImport: i0, template: `
2133
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: ToolBarButtonGroupComponent, deps: [{ token: i1.LocalizationService }], target: i0.ɵɵFactoryTarget.Component });
2134
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: ToolBarButtonGroupComponent, isStandalone: true, selector: "kendo-toolbar-buttongroup", inputs: { disabled: "disabled", fillMode: "fillMode", selection: "selection", width: "width", look: "look" }, providers: [LocalizationService, { provide: ToolBarToolComponent, useExisting: forwardRef(() => ToolBarButtonGroupComponent) }], queries: [{ propertyName: "buttonComponents", predicate: i0.forwardRef(function () { return ToolBarButtonComponent; }) }], viewQueries: [{ propertyName: "toolbarButtonGroup", first: true, predicate: ["toolbarButtonGroup"], descendants: true }, { propertyName: "overflowListItems", predicate: ["listItem"], descendants: true }], exportAs: ["kendoToolBarButtonGroup"], usesInheritance: true, ngImport: i0, template: `
2026
2135
  <ng-template #toolbarTemplate>
2027
2136
  <kendo-buttongroup
2028
- class="k-toolbar-button-group k-button-group-solid"
2137
+ class="k-toolbar-button-group k-button-group-{{fillMode}}"
2029
2138
  #toolbarButtonGroup
2030
2139
  [tabIndex]="-1"
2031
2140
  [selection]="selection"
@@ -2085,7 +2194,8 @@ ToolBarButtonGroupComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.
2085
2194
  </div>
2086
2195
  </ng-template>
2087
2196
  `, isInline: true, dependencies: [{ kind: "component", type: ButtonGroupComponent, selector: "kendo-buttongroup", inputs: ["disabled", "selection", "width", "tabIndex", "navigable"], outputs: ["navigate"], exportAs: ["kendoButtonGroup"] }, { kind: "directive", type: NgFor, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "component", type: ButtonComponent, selector: "button[kendoButton]", inputs: ["arrowIcon", "toggleable", "togglable", "selected", "tabIndex", "imageUrl", "iconClass", "icon", "disabled", "size", "rounded", "fillMode", "themeColor", "svgIcon", "primary", "look"], outputs: ["selectedChange", "click"], exportAs: ["kendoButton"] }, { kind: "directive", type: NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }, { kind: "directive", type: NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: IconWrapperComponent, selector: "kendo-icon-wrapper", inputs: ["name", "svgIcon", "innerCssClass", "customFontClass", "size"], exportAs: ["kendoIconWrapper"] }] });
2088
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: ToolBarButtonGroupComponent, decorators: [{
2197
+ }
2198
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: ToolBarButtonGroupComponent, decorators: [{
2089
2199
  type: Component,
2090
2200
  args: [{
2091
2201
  exportAs: 'kendoToolBarButtonGroup',
@@ -2094,7 +2204,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImpo
2094
2204
  template: `
2095
2205
  <ng-template #toolbarTemplate>
2096
2206
  <kendo-buttongroup
2097
- class="k-toolbar-button-group k-button-group-solid"
2207
+ class="k-toolbar-button-group k-button-group-{{fillMode}}"
2098
2208
  #toolbarButtonGroup
2099
2209
  [tabIndex]="-1"
2100
2210
  [selection]="selection"
@@ -2159,18 +2269,14 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImpo
2159
2269
  }]
2160
2270
  }], ctorParameters: function () { return [{ type: i1.LocalizationService }]; }, propDecorators: { disabled: [{
2161
2271
  type: Input
2272
+ }], fillMode: [{
2273
+ type: Input
2162
2274
  }], selection: [{
2163
2275
  type: Input
2164
2276
  }], width: [{
2165
2277
  type: Input
2166
2278
  }], look: [{
2167
2279
  type: Input
2168
- }], toolbarTemplate: [{
2169
- type: ViewChild,
2170
- args: ['toolbarTemplate', { static: true }]
2171
- }], popupTemplate: [{
2172
- type: ViewChild,
2173
- args: ['popupTemplate', { static: true }]
2174
2280
  }], toolbarButtonGroup: [{
2175
2281
  type: ViewChild,
2176
2282
  args: ['toolbarButtonGroup', { static: false }]
@@ -2186,90 +2292,17 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImpo
2186
2292
  * Represents the [Kendo UI ToolBar DropDownButton for Angular]({% slug controltypes_toolbar %}#toc-dropdownbuttons).
2187
2293
  */
2188
2294
  class ToolBarDropDownButtonComponent extends ToolBarToolComponent {
2189
- constructor(renderer) {
2190
- super();
2191
- this.renderer = renderer;
2192
- /**
2193
- * Allows showing the default arrow icon or providing alternative one instead.
2194
- * @default false
2195
- */
2196
- this.arrowIcon = false;
2197
- /**
2198
- * Sets the `title` attribute of the underlying button element.
2199
- * @default ''
2200
- */
2201
- this.title = '';
2202
- /**
2203
- * Defines the location of the button icon that will be displayed.
2204
- */
2205
- this.showIcon = 'both';
2206
- /**
2207
- * The fillMode property specifies the background and border styles of the Button.
2208
- *
2209
- * The available values are:
2210
- * * `solid` (default)
2211
- * * `flat`
2212
- * * `outline`
2213
- * * `link`
2214
- * * `null`
2215
- */
2216
- this.fillMode = 'solid';
2217
- /**
2218
- * The Button allows you to specify predefined theme colors.
2219
- * The theme color will be applied as a background and border color while also amending the text color accordingly
2220
- * ([see example]({% slug api_buttons_dropdownbuttoncomponent %}#toc-themeColor)).
2221
- *
2222
- * The possible values are:
2223
- * * `base` &mdash;Applies coloring based on the `base` theme color. (default)
2224
- * * `primary` &mdash;Applies coloring based on the `primary` theme color.
2225
- * * `secondary`&mdash;Applies coloring based on the `secondary` theme color.
2226
- * * `tertiary`&mdash; Applies coloring based on the `tertiary` theme color.
2227
- * * `info`&mdash;Applies coloring based on the `info` theme color.
2228
- * * `success`&mdash; Applies coloring based on the `success` theme color.
2229
- * * `warning`&mdash; Applies coloring based on the `warning` theme color.
2230
- * * `error`&mdash; Applies coloring based on the `error` theme color.
2231
- * * `dark`&mdash; Applies coloring based on the `dark` theme color.
2232
- * * `light`&mdash; Applies coloring based on the `light` theme color.
2233
- * * `inverse`&mdash; Applies coloring based on the `inverse` theme color.
2234
- * * `null` &mdash;Removes the default CSS class (no class would be rendered).
2235
- */
2236
- this.themeColor = 'base';
2237
- /**
2238
- * Fires each time the user clicks a DropDownButton item.
2239
- * The event data contains the data item that is bound to the clicked list item.
2240
- */
2241
- this.itemClick = new EventEmitter();
2242
- /**
2243
- * Fires each time the popup is about to open.
2244
- * This event is preventable. If you cancel the event, the popup will remain closed.
2245
- */
2246
- this.open = new EventEmitter();
2247
- /**
2248
- * Fires each time the popup is about to close.
2249
- * This event is preventable. If you cancel the event, the popup will remain open.
2250
- */
2251
- this.close = new EventEmitter();
2252
- this.toolbarOptions = {
2253
- text: '',
2254
- icon: '',
2255
- iconClass: '',
2256
- svgIcon: null,
2257
- imageUrl: ''
2258
- };
2259
- this.overflowOptions = {
2260
- text: '',
2261
- icon: '',
2262
- iconClass: '',
2263
- svgIcon: null,
2264
- imageUrl: ''
2265
- };
2266
- this._popupSettings = { animate: true, popupClass: '' };
2267
- this.focusedIndex = -1;
2268
- this._showText = 'both';
2269
- this.getNextKey = getNextKey();
2270
- this.getPrevKey = getPrevKey();
2271
- this.isBuiltInTool = true;
2272
- }
2295
+ renderer;
2296
+ /**
2297
+ * Allows showing the default arrow icon or providing alternative one instead.
2298
+ * @default false
2299
+ */
2300
+ arrowIcon = false;
2301
+ /**
2302
+ * Sets the `title` attribute of the underlying button element.
2303
+ * @default ''
2304
+ */
2305
+ title = '';
2273
2306
  // showText and showIcon showIcon should be declared first
2274
2307
  /**
2275
2308
  * Defines the location of the button text that will be displayed.
@@ -2281,6 +2314,10 @@ class ToolBarDropDownButtonComponent extends ToolBarToolComponent {
2281
2314
  get showText() {
2282
2315
  return this._showText;
2283
2316
  }
2317
+ /**
2318
+ * Defines the location of the button icon that will be displayed.
2319
+ */
2320
+ showIcon = 'both';
2284
2321
  /**
2285
2322
  * Sets the text of the DropDownButton
2286
2323
  * ([see example](slug:controltypes_toolbar#toc-drop-down-buttons).
@@ -2356,6 +2393,51 @@ class ToolBarDropDownButtonComponent extends ToolBarToolComponent {
2356
2393
  set primary(primary) {
2357
2394
  this.themeColor = primary ? 'primary' : 'base';
2358
2395
  }
2396
+ /**
2397
+ * The fillMode property specifies the background and border styles of the Button.
2398
+ *
2399
+ * The available values are:
2400
+ * * `solid` (default)
2401
+ * * `flat`
2402
+ * * `outline`
2403
+ * * `link`
2404
+ * * `null`
2405
+ */
2406
+ fillMode = 'solid';
2407
+ /**
2408
+ * The Button allows you to specify predefined theme colors.
2409
+ * The theme color will be applied as a background and border color while also amending the text color accordingly
2410
+ * ([see example]({% slug api_buttons_dropdownbuttoncomponent %}#toc-themeColor)).
2411
+ *
2412
+ * The possible values are:
2413
+ * * `base` &mdash;Applies coloring based on the `base` theme color. (default)
2414
+ * * `primary` &mdash;Applies coloring based on the `primary` theme color.
2415
+ * * `secondary`&mdash;Applies coloring based on the `secondary` theme color.
2416
+ * * `tertiary`&mdash; Applies coloring based on the `tertiary` theme color.
2417
+ * * `info`&mdash;Applies coloring based on the `info` theme color.
2418
+ * * `success`&mdash; Applies coloring based on the `success` theme color.
2419
+ * * `warning`&mdash; Applies coloring based on the `warning` theme color.
2420
+ * * `error`&mdash; Applies coloring based on the `error` theme color.
2421
+ * * `dark`&mdash; Applies coloring based on the `dark` theme color.
2422
+ * * `light`&mdash; Applies coloring based on the `light` theme color.
2423
+ * * `inverse`&mdash; Applies coloring based on the `inverse` theme color.
2424
+ * * `null` &mdash;Removes the default CSS class (no class would be rendered).
2425
+ */
2426
+ themeColor = 'base';
2427
+ /**
2428
+ * The CSS classes that will be rendered on the main button.
2429
+ * Supports the type of values that are supported by [`ngClass`](link:site.data.urls.angular['ngclassapi']).
2430
+ */
2431
+ buttonClass;
2432
+ /**
2433
+ * Sets the data item field that represents the item text.
2434
+ * If the data contains only primitive values, do not define it.
2435
+ */
2436
+ textField;
2437
+ /**
2438
+ * Sets the disabled state of the DropDownButton.
2439
+ */
2440
+ disabled;
2359
2441
  /**
2360
2442
  * Sets the data of the DropDownButton
2361
2443
  * ([see example]({% slug controltypes_toolbar %}#toc-dropdownbuttons)).
@@ -2371,6 +2453,38 @@ class ToolBarDropDownButtonComponent extends ToolBarToolComponent {
2371
2453
  }
2372
2454
  return this._data;
2373
2455
  }
2456
+ /**
2457
+ * Fires each time the user clicks a DropDownButton item.
2458
+ * The event data contains the data item that is bound to the clicked list item.
2459
+ */
2460
+ itemClick = new EventEmitter();
2461
+ /**
2462
+ * Fires each time the popup is about to open.
2463
+ * This event is preventable. If you cancel the event, the popup will remain closed.
2464
+ */
2465
+ open = new EventEmitter();
2466
+ /**
2467
+ * Fires each time the popup is about to close.
2468
+ * This event is preventable. If you cancel the event, the popup will remain open.
2469
+ */
2470
+ close = new EventEmitter();
2471
+ dropdownButton;
2472
+ dropDownButtonComponent;
2473
+ overflowListItems;
2474
+ toolbarOptions = {
2475
+ text: '',
2476
+ icon: '',
2477
+ iconClass: '',
2478
+ svgIcon: null,
2479
+ imageUrl: ''
2480
+ };
2481
+ overflowOptions = {
2482
+ text: '',
2483
+ icon: '',
2484
+ iconClass: '',
2485
+ svgIcon: null,
2486
+ imageUrl: ''
2487
+ };
2374
2488
  ngOnInit() {
2375
2489
  this.setTextDisplayMode();
2376
2490
  }
@@ -2380,6 +2494,21 @@ class ToolBarDropDownButtonComponent extends ToolBarToolComponent {
2380
2494
  get overflowButtons() {
2381
2495
  return [...this.overflowListItems.toArray().filter(el => !el.nativeElement.classList.contains('k-disabled'))];
2382
2496
  }
2497
+ toolbarDropDownButton;
2498
+ _data;
2499
+ _popupSettings = { animate: true, popupClass: '' };
2500
+ focusedIndex = -1;
2501
+ _showText = 'both';
2502
+ _text;
2503
+ getNextKey;
2504
+ getPrevKey;
2505
+ constructor(renderer) {
2506
+ super();
2507
+ this.renderer = renderer;
2508
+ this.getNextKey = getNextKey();
2509
+ this.getPrevKey = getPrevKey();
2510
+ this.isBuiltInTool = true;
2511
+ }
2383
2512
  /**
2384
2513
  * @hidden
2385
2514
  */
@@ -2452,9 +2581,8 @@ class ToolBarDropDownButtonComponent extends ToolBarToolComponent {
2452
2581
  this.toolbarOptions.text = this.showText === 'overflow' ? undefined : this.text;
2453
2582
  this.overflowOptions.text = this.showText === 'toolbar' ? undefined : this.text;
2454
2583
  }
2455
- }
2456
- ToolBarDropDownButtonComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: ToolBarDropDownButtonComponent, deps: [{ token: i0.Renderer2 }], target: i0.ɵɵFactoryTarget.Component });
2457
- ToolBarDropDownButtonComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.10", 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: "toolbarTemplate", first: true, predicate: ["toolbarTemplate"], descendants: true, static: true }, { propertyName: "popupTemplate", first: true, predicate: ["popupTemplate"], descendants: true, static: true }, { propertyName: "dropdownButton", first: true, predicate: ["dropdownButton"], descendants: true, read: ElementRef, static: true }, { propertyName: "dropDownButtonComponent", first: true, predicate: DropDownButtonComponent, descendants: true }, { propertyName: "toolbarDropDownButton", first: true, predicate: ["toolbarDropDownButton"], descendants: true }, { propertyName: "overflowListItems", predicate: ["listItem"], descendants: true }], exportAs: ["kendoToolBarDropDownButton"], usesInheritance: true, ngImport: i0, template: `
2584
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: ToolBarDropDownButtonComponent, deps: [{ token: i0.Renderer2 }], target: i0.ɵɵFactoryTarget.Component });
2585
+ 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: "dropDownButtonComponent", first: true, predicate: DropDownButtonComponent, descendants: true }, { propertyName: "toolbarDropDownButton", first: true, predicate: ["toolbarDropDownButton"], descendants: true }, { propertyName: "overflowListItems", predicate: ["listItem"], descendants: true }], exportAs: ["kendoToolBarDropDownButton"], usesInheritance: true, ngImport: i0, template: `
2458
2586
  <ng-template #toolbarTemplate>
2459
2587
  <kendo-dropdownbutton
2460
2588
  #toolbarDropDownButton
@@ -2520,7 +2648,8 @@ ToolBarDropDownButtonComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "
2520
2648
  </ng-container>
2521
2649
  </ng-template>
2522
2650
  `, isInline: true, dependencies: [{ kind: "component", type: DropDownButtonComponent, selector: "kendo-dropdownbutton", inputs: ["arrowIcon", "icon", "svgIcon", "iconClass", "imageUrl", "textField", "data", "size", "rounded", "fillMode", "themeColor", "buttonAttributes"], outputs: ["itemClick", "focus", "blur"], exportAs: ["kendoDropDownButton"] }, { kind: "directive", type: NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: IconWrapperComponent, selector: "kendo-icon-wrapper", inputs: ["name", "svgIcon", "innerCssClass", "customFontClass", "size"], exportAs: ["kendoIconWrapper"] }, { kind: "directive", type: NgFor, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }] });
2523
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: ToolBarDropDownButtonComponent, decorators: [{
2651
+ }
2652
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: ToolBarDropDownButtonComponent, decorators: [{
2524
2653
  type: Component,
2525
2654
  args: [{
2526
2655
  exportAs: 'kendoToolBarDropDownButton',
@@ -2637,12 +2766,6 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImpo
2637
2766
  type: Output
2638
2767
  }], close: [{
2639
2768
  type: Output
2640
- }], toolbarTemplate: [{
2641
- type: ViewChild,
2642
- args: ['toolbarTemplate', { static: true }]
2643
- }], popupTemplate: [{
2644
- type: ViewChild,
2645
- args: ['popupTemplate', { static: true }]
2646
2769
  }], dropdownButton: [{
2647
2770
  type: ViewChild,
2648
2771
  args: ['dropdownButton', { read: ElementRef, static: true }]
@@ -2661,96 +2784,6 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImpo
2661
2784
  * Represents the [Kendo UI ToolBar SplitButton for Angular]({% slug controltypes_toolbar %}#toc-splitbuttons).
2662
2785
  */
2663
2786
  class ToolBarSplitButtonComponent extends ToolBarToolComponent {
2664
- constructor() {
2665
- super();
2666
- /**
2667
- * Specifies where button icon should be displayed
2668
- */
2669
- this.showIcon = 'both';
2670
- /**
2671
- * The fillMode property specifies the background and border styles of the Button.
2672
- *
2673
- * The available values are:
2674
- * * `solid` (default)
2675
- * * `flat`
2676
- * * `outline`
2677
- * * `link`
2678
- * * `null`
2679
- */
2680
- this.fillMode = 'solid';
2681
- /**
2682
- * The Button allows you to specify predefined theme colors.
2683
- * The theme color will be applied as a background and border color while also amending the text color accordingly.
2684
- *
2685
- * The possible values are:
2686
- * * `base` &mdash;Applies coloring based on the `base` theme color. (default)
2687
- * * `primary` &mdash;Applies coloring based on the `primary` theme color.
2688
- * * `secondary`&mdash;Applies coloring based on the `secondary` theme color.
2689
- * * `tertiary`&mdash; Applies coloring based on the `tertiary` theme color.
2690
- * * `info`&mdash;Applies coloring based on the `info` theme color.
2691
- * * `success`&mdash; Applies coloring based on the `success` theme color.
2692
- * * `warning`&mdash; Applies coloring based on the `warning` theme color.
2693
- * * `error`&mdash; Applies coloring based on the `error` theme color.
2694
- * * `dark`&mdash; Applies coloring based on the `dark` theme color.
2695
- * * `light`&mdash; Applies coloring based on the `light` theme color.
2696
- * * `inverse`&mdash; Applies coloring based on the `inverse` theme color.
2697
- * * `null` &mdash;Removes the default CSS class (no class would be rendered).
2698
- */
2699
- this.themeColor = 'base';
2700
- /**
2701
- * Specifies the name of the [font icon]({% slug icons %}#toc-list-of-font-icons) that will
2702
- * be rendered for the button which opens the popup.
2703
- */
2704
- this.arrowButtonIcon = 'caret-alt-down';
2705
- /**
2706
- * Specifies the [`SVGIcon`](slug:api_icons_svgicon) that will
2707
- * be rendered for the button which opens the popup.
2708
- */
2709
- this.arrowButtonSvgIcon = caretAltDownIcon;
2710
- /**
2711
- * Configures the text field of the button-list popup.
2712
- */
2713
- this.textField = 'text';
2714
- /**
2715
- * Fires each time the user clicks the main button.
2716
- */
2717
- this.buttonClick = new EventEmitter();
2718
- /**
2719
- * Fires each time the user clicks the drop-down list.
2720
- * The event data contains the data item that is bound to the clicked list item.
2721
- */
2722
- this.itemClick = new EventEmitter();
2723
- /**
2724
- * Fires each time the popup is about to open.
2725
- * This event is preventable. If you cancel the event, the popup will remain closed.
2726
- */
2727
- this.open = new EventEmitter();
2728
- /**
2729
- * Fires each time the popup is about to close.
2730
- * This event is preventable. If you cancel the event, the popup will remain open.
2731
- */
2732
- this.close = new EventEmitter();
2733
- this.toolbarOptions = {
2734
- text: '',
2735
- icon: '',
2736
- iconClass: '',
2737
- svgIcon: null,
2738
- imageUrl: ''
2739
- };
2740
- this.overflowOptions = {
2741
- text: '',
2742
- icon: '',
2743
- iconClass: '',
2744
- svgIcon: null,
2745
- imageUrl: ''
2746
- };
2747
- this._popupSettings = { animate: true, popupClass: '' };
2748
- this.focusedIndex = -1;
2749
- this._showText = 'both';
2750
- this.getNextKey = getNextKey();
2751
- this.getPrevKey = getPrevKey();
2752
- this.isBuiltInTool = true;
2753
- }
2754
2787
  // showText and showIcon showIcon should be declared first
2755
2788
  /**
2756
2789
  * Specifies where button text should be displayed
@@ -2762,6 +2795,10 @@ class ToolBarSplitButtonComponent extends ToolBarToolComponent {
2762
2795
  get showText() {
2763
2796
  return this._showText;
2764
2797
  }
2798
+ /**
2799
+ * Specifies where button icon should be displayed
2800
+ */
2801
+ showIcon = 'both';
2765
2802
  /**
2766
2803
  * Sets the text of the SplitButton ([see example](slug:controltypes_toolbar#toc-split-buttons).
2767
2804
  */
@@ -2810,6 +2847,10 @@ class ToolBarSplitButtonComponent extends ToolBarToolComponent {
2810
2847
  this.toolbarOptions.imageUrl = getValueForLocation(imageUrl, this.showIcon, false);
2811
2848
  this.overflowOptions.imageUrl = getValueForLocation(imageUrl, this.showIcon, true);
2812
2849
  }
2850
+ /**
2851
+ * When set to `true`, disables a SplitButton item.
2852
+ */
2853
+ disabled;
2813
2854
  /**
2814
2855
  * Configures the popup of the SplitButton.
2815
2856
  *
@@ -2826,6 +2867,36 @@ class ToolBarSplitButtonComponent extends ToolBarToolComponent {
2826
2867
  }
2827
2868
  return this._popupSettings;
2828
2869
  }
2870
+ /**
2871
+ * The fillMode property specifies the background and border styles of the Button.
2872
+ *
2873
+ * The available values are:
2874
+ * * `solid` (default)
2875
+ * * `flat`
2876
+ * * `outline`
2877
+ * * `link`
2878
+ * * `null`
2879
+ */
2880
+ fillMode = 'solid';
2881
+ /**
2882
+ * The Button allows you to specify predefined theme colors.
2883
+ * The theme color will be applied as a background and border color while also amending the text color accordingly.
2884
+ *
2885
+ * The possible values are:
2886
+ * * `base` &mdash;Applies coloring based on the `base` theme color. (default)
2887
+ * * `primary` &mdash;Applies coloring based on the `primary` theme color.
2888
+ * * `secondary`&mdash;Applies coloring based on the `secondary` theme color.
2889
+ * * `tertiary`&mdash; Applies coloring based on the `tertiary` theme color.
2890
+ * * `info`&mdash;Applies coloring based on the `info` theme color.
2891
+ * * `success`&mdash; Applies coloring based on the `success` theme color.
2892
+ * * `warning`&mdash; Applies coloring based on the `warning` theme color.
2893
+ * * `error`&mdash; Applies coloring based on the `error` theme color.
2894
+ * * `dark`&mdash; Applies coloring based on the `dark` theme color.
2895
+ * * `light`&mdash; Applies coloring based on the `light` theme color.
2896
+ * * `inverse`&mdash; Applies coloring based on the `inverse` theme color.
2897
+ * * `null` &mdash;Removes the default CSS class (no class would be rendered).
2898
+ */
2899
+ themeColor = 'base';
2829
2900
  /**
2830
2901
  * @hidden
2831
2902
  */
@@ -2834,6 +2905,30 @@ class ToolBarSplitButtonComponent extends ToolBarToolComponent {
2834
2905
  this.fillMode = look === 'default' ? 'solid' : look;
2835
2906
  }
2836
2907
  }
2908
+ /**
2909
+ * The CSS classes that will be rendered on the main button.
2910
+ * Supports the type of values that are supported by [`ngClass`](link:site.data.urls.angular['ngclassapi']).
2911
+ */
2912
+ buttonClass;
2913
+ /**
2914
+ * The CSS classes that will be rendered on the button which opens the popup.
2915
+ * Supports the type of values that are supported by [`ngClass`](link:site.data.urls.angular['ngclassapi']).
2916
+ */
2917
+ arrowButtonClass;
2918
+ /**
2919
+ * Specifies the name of the [font icon]({% slug icons %}#toc-list-of-font-icons) that will
2920
+ * be rendered for the button which opens the popup.
2921
+ */
2922
+ arrowButtonIcon = 'caret-alt-down';
2923
+ /**
2924
+ * Specifies the [`SVGIcon`](slug:api_icons_svgicon) that will
2925
+ * be rendered for the button which opens the popup.
2926
+ */
2927
+ arrowButtonSvgIcon = caretAltDownIcon;
2928
+ /**
2929
+ * Configures the text field of the button-list popup.
2930
+ */
2931
+ textField = 'text';
2837
2932
  /**
2838
2933
  * Sets the data of the SplitButton ([see example]({% slug controltypes_toolbar %}#toc-splitbuttons)).
2839
2934
  *
@@ -2848,12 +2943,61 @@ class ToolBarSplitButtonComponent extends ToolBarToolComponent {
2848
2943
  }
2849
2944
  return this._data;
2850
2945
  }
2946
+ /**
2947
+ * Fires each time the user clicks the main button.
2948
+ */
2949
+ buttonClick = new EventEmitter();
2950
+ /**
2951
+ * Fires each time the user clicks the drop-down list.
2952
+ * The event data contains the data item that is bound to the clicked list item.
2953
+ */
2954
+ itemClick = new EventEmitter();
2955
+ /**
2956
+ * Fires each time the popup is about to open.
2957
+ * This event is preventable. If you cancel the event, the popup will remain closed.
2958
+ */
2959
+ open = new EventEmitter();
2960
+ /**
2961
+ * Fires each time the popup is about to close.
2962
+ * This event is preventable. If you cancel the event, the popup will remain open.
2963
+ */
2964
+ close = new EventEmitter();
2965
+ toolbarOptions = {
2966
+ text: '',
2967
+ icon: '',
2968
+ iconClass: '',
2969
+ svgIcon: null,
2970
+ imageUrl: ''
2971
+ };
2972
+ overflowOptions = {
2973
+ text: '',
2974
+ icon: '',
2975
+ iconClass: '',
2976
+ svgIcon: null,
2977
+ imageUrl: ''
2978
+ };
2851
2979
  ngOnInit() {
2852
2980
  this.setTextDisplayMode();
2853
2981
  }
2854
2982
  get overflowButtons() {
2855
2983
  return [this.overflowMainButton, ...this.overflowListItems.toArray().filter(el => !el.nativeElement.classList.contains('k-disabled'))];
2856
2984
  }
2985
+ _data;
2986
+ _popupSettings = { animate: true, popupClass: '' };
2987
+ focusedIndex = -1;
2988
+ _showText = 'both';
2989
+ _text;
2990
+ getNextKey;
2991
+ getPrevKey;
2992
+ toolbarSplitButton;
2993
+ overflowMainButton;
2994
+ overflowListItems;
2995
+ constructor() {
2996
+ super();
2997
+ this.getNextKey = getNextKey();
2998
+ this.getPrevKey = getPrevKey();
2999
+ this.isBuiltInTool = true;
3000
+ }
2857
3001
  /**
2858
3002
  * @hidden
2859
3003
  */
@@ -2931,9 +3075,8 @@ class ToolBarSplitButtonComponent extends ToolBarToolComponent {
2931
3075
  this.toolbarOptions.text = this.showText === 'overflow' ? undefined : this.text;
2932
3076
  this.overflowOptions.text = this.showText === 'toolbar' ? undefined : this.text;
2933
3077
  }
2934
- }
2935
- ToolBarSplitButtonComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: ToolBarSplitButtonComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
2936
- ToolBarSplitButtonComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.10", 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: "toolbarTemplate", first: true, predicate: ["toolbarTemplate"], descendants: true, static: true }, { propertyName: "popupTemplate", first: true, predicate: ["popupTemplate"], descendants: true, static: true }, { propertyName: "toolbarSplitButton", first: true, predicate: ["toolbarSplitButton"], 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: `
3078
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: ToolBarSplitButtonComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
3079
+ 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: "overflowMainButton", first: true, predicate: ["overflowMainButton"], descendants: true, read: ElementRef }, { propertyName: "overflowListItems", predicate: ["listItem"], descendants: true }], exportAs: ["kendoToolBarSplitButton"], usesInheritance: true, ngImport: i0, template: `
2937
3080
  <ng-template #toolbarTemplate>
2938
3081
  <kendo-splitbutton
2939
3082
  #toolbarSplitButton
@@ -3003,8 +3146,9 @@ ToolBarSplitButtonComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.
3003
3146
  </div>
3004
3147
  </ng-container>
3005
3148
  </ng-template>
3006
- `, isInline: true, dependencies: [{ kind: "component", type: SplitButtonComponent, selector: "kendo-splitbutton", inputs: ["text", "icon", "svgIcon", "iconClass", "type", "imageUrl", "size", "rounded", "fillMode", "themeColor", "disabled", "popupSettings", "tabIndex", "textField", "data", "buttonClass", "arrowButtonClass", "arrowButtonIcon", "arrowButtonSvgIcon", "buttonAttributes"], outputs: ["buttonClick", "itemClick", "focus", "blur", "open", "close"], exportAs: ["kendoSplitButton"] }, { kind: "directive", type: NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: IconWrapperComponent, selector: "kendo-icon-wrapper", inputs: ["name", "svgIcon", "innerCssClass", "customFontClass", "size"], exportAs: ["kendoIconWrapper"] }, { kind: "directive", type: NgFor, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }] });
3007
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: ToolBarSplitButtonComponent, decorators: [{
3149
+ `, isInline: true, dependencies: [{ kind: "component", type: SplitButtonComponent, selector: "kendo-splitbutton", inputs: ["text", "icon", "svgIcon", "iconClass", "type", "imageUrl", "size", "rounded", "fillMode", "themeColor", "disabled", "popupSettings", "tabIndex", "textField", "data", "arrowButtonClass", "arrowButtonIcon", "arrowButtonSvgIcon", "buttonAttributes"], outputs: ["buttonClick", "itemClick", "focus", "blur", "open", "close"], exportAs: ["kendoSplitButton"] }, { kind: "directive", type: NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: IconWrapperComponent, selector: "kendo-icon-wrapper", inputs: ["name", "svgIcon", "innerCssClass", "customFontClass", "size"], exportAs: ["kendoIconWrapper"] }, { kind: "directive", type: NgFor, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }] });
3150
+ }
3151
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: ToolBarSplitButtonComponent, decorators: [{
3008
3152
  type: Component,
3009
3153
  args: [{
3010
3154
  exportAs: 'kendoToolBarSplitButton',
@@ -3128,12 +3272,6 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImpo
3128
3272
  type: Output
3129
3273
  }], close: [{
3130
3274
  type: Output
3131
- }], toolbarTemplate: [{
3132
- type: ViewChild,
3133
- args: ['toolbarTemplate', { static: true }]
3134
- }], popupTemplate: [{
3135
- type: ViewChild,
3136
- args: ['popupTemplate', { static: true }]
3137
3275
  }], toolbarSplitButton: [{
3138
3276
  type: ViewChild,
3139
3277
  args: ['toolbarSplitButton', { static: false }]
@@ -3149,6 +3287,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImpo
3149
3287
  * Represents the [Kendo UI ToolBar Separator for Angular]({% slug controltypes_toolbar %}#toc-separators).
3150
3288
  */
3151
3289
  class ToolBarSeparatorComponent extends ToolBarToolComponent {
3290
+ separator;
3152
3291
  constructor() {
3153
3292
  super();
3154
3293
  this.isBuiltInTool = true;
@@ -3178,9 +3317,8 @@ class ToolBarSeparatorComponent extends ToolBarToolComponent {
3178
3317
  this.popupTemplate = this.toolbarTemplate;
3179
3318
  }
3180
3319
  }
3181
- }
3182
- ToolBarSeparatorComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: ToolBarSeparatorComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
3183
- ToolBarSeparatorComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.10", type: ToolBarSeparatorComponent, isStandalone: true, selector: "kendo-toolbar-separator", providers: [{ provide: ToolBarToolComponent, useExisting: forwardRef(() => ToolBarSeparatorComponent) }], viewQueries: [{ propertyName: "toolbarTemplate", first: true, predicate: ["toolbarTemplate"], descendants: true, static: true }, { propertyName: "popupTemplate", first: true, predicate: ["popupTemplate"], descendants: true, static: true }, { propertyName: "separator", first: true, predicate: ["separator"], descendants: true }], exportAs: ["kendoToolBarSeparator"], usesInheritance: true, ngImport: i0, template: `
3320
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: ToolBarSeparatorComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
3321
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: ToolBarSeparatorComponent, isStandalone: true, selector: "kendo-toolbar-separator", providers: [{ provide: ToolBarToolComponent, useExisting: forwardRef(() => ToolBarSeparatorComponent) }], viewQueries: [{ propertyName: "separator", first: true, predicate: ["separator"], descendants: true }], exportAs: ["kendoToolBarSeparator"], usesInheritance: true, ngImport: i0, template: `
3184
3322
  <ng-template #toolbarTemplate>
3185
3323
  <div class="k-separator"></div>
3186
3324
  </ng-template>
@@ -3191,7 +3329,8 @@ ToolBarSeparatorComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.
3191
3329
  </div>
3192
3330
  </ng-template>
3193
3331
  `, isInline: true });
3194
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: ToolBarSeparatorComponent, decorators: [{
3332
+ }
3333
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: ToolBarSeparatorComponent, decorators: [{
3195
3334
  type: Component,
3196
3335
  args: [{
3197
3336
  exportAs: 'kendoToolBarSeparator',
@@ -3210,13 +3349,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImpo
3210
3349
  `,
3211
3350
  standalone: true
3212
3351
  }]
3213
- }], ctorParameters: function () { return []; }, propDecorators: { toolbarTemplate: [{
3214
- type: ViewChild,
3215
- args: ['toolbarTemplate', { static: true }]
3216
- }], popupTemplate: [{
3217
- type: ViewChild,
3218
- args: ['popupTemplate', { static: true }]
3219
- }], separator: [{
3352
+ }], ctorParameters: function () { return []; }, propDecorators: { separator: [{
3220
3353
  type: ViewChild,
3221
3354
  args: ['separator', { static: false }]
3222
3355
  }] } });
@@ -3225,12 +3358,12 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImpo
3225
3358
  * Represents the [Kendo UI ToolBar Spacer for Angular]({% slug controltypes_toolbar %}#toc-separators).
3226
3359
  */
3227
3360
  class ToolBarSpacerComponent extends ToolBarToolComponent {
3361
+ /**
3362
+ * @hidden
3363
+ */
3364
+ __isSpacer = true;
3228
3365
  constructor() {
3229
3366
  super();
3230
- /**
3231
- * @hidden
3232
- */
3233
- this.__isSpacer = true;
3234
3367
  this.isBuiltInTool = true;
3235
3368
  }
3236
3369
  /**
@@ -3258,14 +3391,14 @@ class ToolBarSpacerComponent extends ToolBarToolComponent {
3258
3391
  this.popupTemplate = this.toolbarTemplate;
3259
3392
  }
3260
3393
  }
3261
- }
3262
- ToolBarSpacerComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: ToolBarSpacerComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
3263
- ToolBarSpacerComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.10", type: ToolBarSpacerComponent, isStandalone: true, selector: "kendo-toolbar-spacer", providers: [{ provide: ToolBarToolComponent, useExisting: forwardRef(() => ToolBarSpacerComponent) }], viewQueries: [{ propertyName: "toolbarTemplate", first: true, predicate: ["toolbarTemplate"], descendants: true, static: true }, { propertyName: "popupTemplate", first: true, predicate: ["popupTemplate"], descendants: true, static: true }], exportAs: ["kendoToolBarSpacer"], usesInheritance: true, ngImport: i0, template: `
3394
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: ToolBarSpacerComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
3395
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: ToolBarSpacerComponent, isStandalone: true, selector: "kendo-toolbar-spacer", providers: [{ provide: ToolBarToolComponent, useExisting: forwardRef(() => ToolBarSpacerComponent) }], exportAs: ["kendoToolBarSpacer"], usesInheritance: true, ngImport: i0, template: `
3264
3396
  <ng-template #toolbarTemplate>
3265
3397
  <div class="k-spacer"></div>
3266
3398
  </ng-template>
3267
3399
  `, isInline: true });
3268
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: ToolBarSpacerComponent, decorators: [{
3400
+ }
3401
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: ToolBarSpacerComponent, decorators: [{
3269
3402
  type: Component,
3270
3403
  args: [{
3271
3404
  exportAs: 'kendoToolBarSpacer',
@@ -3278,18 +3411,13 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImpo
3278
3411
  `,
3279
3412
  standalone: true
3280
3413
  }]
3281
- }], ctorParameters: function () { return []; }, propDecorators: { toolbarTemplate: [{
3282
- type: ViewChild,
3283
- args: ['toolbarTemplate', { static: true }]
3284
- }], popupTemplate: [{
3285
- type: ViewChild,
3286
- args: ['popupTemplate', { static: true }]
3287
- }] } });
3414
+ }], ctorParameters: function () { return []; } });
3288
3415
 
3289
3416
  /**
3290
3417
  * Custom component messages override default component messages.
3291
3418
  */
3292
3419
  class ToolbarCustomMessagesComponent extends ToolbarMessages {
3420
+ service;
3293
3421
  constructor(service) {
3294
3422
  super();
3295
3423
  this.service = service;
@@ -3297,15 +3425,15 @@ class ToolbarCustomMessagesComponent extends ToolbarMessages {
3297
3425
  get override() {
3298
3426
  return true;
3299
3427
  }
3428
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: ToolbarCustomMessagesComponent, deps: [{ token: i1.LocalizationService }], target: i0.ɵɵFactoryTarget.Component });
3429
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: ToolbarCustomMessagesComponent, isStandalone: true, selector: "kendo-toolbar-messages", providers: [
3430
+ {
3431
+ provide: ToolbarMessages,
3432
+ useExisting: forwardRef(() => ToolbarCustomMessagesComponent)
3433
+ }
3434
+ ], usesInheritance: true, ngImport: i0, template: ``, isInline: true });
3300
3435
  }
3301
- ToolbarCustomMessagesComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: ToolbarCustomMessagesComponent, deps: [{ token: i1.LocalizationService }], target: i0.ɵɵFactoryTarget.Component });
3302
- ToolbarCustomMessagesComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.10", type: ToolbarCustomMessagesComponent, isStandalone: true, selector: "kendo-toolbar-messages", providers: [
3303
- {
3304
- provide: ToolbarMessages,
3305
- useExisting: forwardRef(() => ToolbarCustomMessagesComponent)
3306
- }
3307
- ], usesInheritance: true, ngImport: i0, template: ``, isInline: true });
3308
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: ToolbarCustomMessagesComponent, decorators: [{
3436
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: ToolbarCustomMessagesComponent, decorators: [{
3309
3437
  type: Component,
3310
3438
  args: [{
3311
3439
  providers: [
@@ -3349,11 +3477,11 @@ const KENDO_TOOLBAR = [
3349
3477
  * - `ToolBarSeparatorComponent`&mdash;The Separator Tool component class.
3350
3478
  */
3351
3479
  class ToolBarModule {
3480
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: ToolBarModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
3481
+ static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "16.2.12", ngImport: i0, type: ToolBarModule, imports: [ToolBarComponent, ToolbarCustomMessagesComponent, ToolBarButtonComponent, ToolBarButtonGroupComponent, ToolBarDropDownButtonComponent, ToolBarSeparatorComponent, ToolBarSpacerComponent, ToolBarSplitButtonComponent, ToolBarToolComponent], exports: [ToolBarComponent, ToolbarCustomMessagesComponent, ToolBarButtonComponent, ToolBarButtonGroupComponent, ToolBarDropDownButtonComponent, ToolBarSeparatorComponent, ToolBarSpacerComponent, ToolBarSplitButtonComponent, ToolBarToolComponent] });
3482
+ static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: ToolBarModule, providers: [IconsService, PopupService, ResizeBatchService], imports: [ToolBarComponent, ToolBarButtonComponent, ToolBarButtonGroupComponent, ToolBarDropDownButtonComponent, ToolBarSplitButtonComponent] });
3352
3483
  }
3353
- ToolBarModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: ToolBarModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
3354
- ToolBarModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "15.2.10", ngImport: i0, type: ToolBarModule, imports: [ToolBarComponent, ToolbarCustomMessagesComponent, ToolBarButtonComponent, ToolBarButtonGroupComponent, ToolBarDropDownButtonComponent, ToolBarSeparatorComponent, ToolBarSpacerComponent, ToolBarSplitButtonComponent, ToolBarToolComponent], exports: [ToolBarComponent, ToolbarCustomMessagesComponent, ToolBarButtonComponent, ToolBarButtonGroupComponent, ToolBarDropDownButtonComponent, ToolBarSeparatorComponent, ToolBarSpacerComponent, ToolBarSplitButtonComponent, ToolBarToolComponent] });
3355
- ToolBarModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: ToolBarModule, providers: [IconsService, PopupService, ResizeBatchService], imports: [ToolBarComponent, ToolbarCustomMessagesComponent, ToolBarButtonComponent, ToolBarButtonGroupComponent, ToolBarDropDownButtonComponent, ToolBarSeparatorComponent, ToolBarSpacerComponent, ToolBarSplitButtonComponent] });
3356
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: ToolBarModule, decorators: [{
3484
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: ToolBarModule, decorators: [{
3357
3485
  type: NgModule,
3358
3486
  args: [{
3359
3487
  exports: [...KENDO_TOOLBAR],