@progress/kendo-angular-toolbar 21.1.1-develop.1 → 21.2.0-develop.1

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.
@@ -8,7 +8,7 @@ import { ToolBarToolComponent } from './toolbar-tool.component';
8
8
  import { getValueForLocation, makePeeker, getIndexOfFocused, getPrevKey, getNextKey, seekFocusedIndex, areEqual } from '../util';
9
9
  import { caretAltDownIcon } from '@progress/kendo-svg-icons';
10
10
  import { IconWrapperComponent } from '@progress/kendo-angular-icons';
11
- import { NgClass, NgIf, NgFor } from '@angular/common';
11
+ import { NgClass } from '@angular/common';
12
12
  import { ToolBarComponent } from '../toolbar.component';
13
13
  import { normalizeNumpadKeys } from '@progress/kendo-angular-common';
14
14
  import * as i0 from "@angular/core";
@@ -328,105 +328,111 @@ export class ToolBarSplitButtonComponent extends ToolBarToolComponent {
328
328
  this.overflowOptions.text = this.showText === 'toolbar' || this.showText === 'never' ? undefined : this.text;
329
329
  }
330
330
  static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: ToolBarSplitButtonComponent, deps: [{ token: i1.ToolBarComponent }], target: i0.ɵɵFactoryTarget.Component });
331
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.14", type: ToolBarSplitButtonComponent, isStandalone: true, selector: "kendo-toolbar-splitbutton", inputs: { showText: "showText", showIcon: "showIcon", text: "text", icon: "icon", svgIcon: "svgIcon", iconClass: "iconClass", imageUrl: "imageUrl", disabled: "disabled", popupSettings: "popupSettings", fillMode: "fillMode", themeColor: "themeColor", look: "look", buttonClass: "buttonClass", arrowButtonClass: "arrowButtonClass", arrowButtonIcon: "arrowButtonIcon", arrowButtonSvgIcon: "arrowButtonSvgIcon", textField: "textField", data: "data" }, outputs: { buttonClick: "buttonClick", itemClick: "itemClick", open: "open", close: "close" }, providers: [{ provide: ToolBarToolComponent, useExisting: forwardRef(() => ToolBarSplitButtonComponent) }], viewQueries: [{ propertyName: "toolbarSplitButton", first: true, predicate: ["toolbarSplitButton"], descendants: true }, { propertyName: "sectionSplitButton", first: true, predicate: ["sectionSplitButton"], descendants: true }, { propertyName: "overflowMainButton", first: true, predicate: ["overflowMainButton"], descendants: true, read: ElementRef }, { propertyName: "overflowListItems", predicate: ["listItem"], descendants: true }], exportAs: ["kendoToolBarSplitButton"], usesInheritance: true, ngImport: i0, template: `
331
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.14", type: ToolBarSplitButtonComponent, isStandalone: true, selector: "kendo-toolbar-splitbutton", inputs: { showText: "showText", showIcon: "showIcon", text: "text", icon: "icon", svgIcon: "svgIcon", iconClass: "iconClass", imageUrl: "imageUrl", disabled: "disabled", popupSettings: "popupSettings", fillMode: "fillMode", themeColor: "themeColor", look: "look", buttonClass: "buttonClass", arrowButtonClass: "arrowButtonClass", arrowButtonIcon: "arrowButtonIcon", arrowButtonSvgIcon: "arrowButtonSvgIcon", textField: "textField", data: "data" }, outputs: { buttonClick: "buttonClick", itemClick: "itemClick", open: "open", close: "close" }, providers: [{ provide: ToolBarToolComponent, useExisting: forwardRef(() => ToolBarSplitButtonComponent) }], viewQueries: [{ propertyName: "toolbarSplitButton", first: true, predicate: ["toolbarSplitButton"], descendants: true }, { propertyName: "sectionSplitButton", first: true, predicate: ["sectionSplitButton"], descendants: true }, { propertyName: "overflowMainButton", first: true, predicate: ["overflowMainButton"], descendants: true, read: ElementRef }, { propertyName: "overflowListItems", predicate: ["listItem"], descendants: true }], exportAs: ["kendoToolBarSplitButton"], usesInheritance: true, ngImport: i0, template: `
332
332
  <ng-template #toolbarTemplate>
333
- <kendo-splitbutton
334
- #toolbarSplitButton
335
- class="k-toolbar-split-button"
336
- [data]="data"
337
- [text]="toolbarOptions.text"
338
- [icon]="toolbarOptions.icon"
339
- [iconClass]="toolbarOptions.iconClass"
340
- [svgIcon]="toolbarOptions.svgIcon"
341
- [imageUrl]="toolbarOptions.imageUrl"
342
- [buttonClass]="buttonClass"
343
- [arrowButtonClass]="arrowButtonClass"
344
- [arrowButtonIcon]="arrowButtonIcon"
345
- [arrowButtonSvgIcon]="arrowButtonSvgIcon"
346
- [disabled]="disabled"
347
- [size]="size"
348
- [tabIndex]="-1"
349
- [textField]="textField"
350
- [popupSettings]="popupSettings"
351
- [fillMode]="fillMode"
352
- [themeColor]="fillMode ? themeColor : null"
353
- (buttonClick)="buttonClick.emit($event)"
354
- (open)="open.emit($event)"
355
- (close)="close.emit($event)"
356
- (itemClick)="itemClick.emit($event)"
357
- ></kendo-splitbutton>
333
+ <kendo-splitbutton
334
+ #toolbarSplitButton
335
+ class="k-toolbar-split-button"
336
+ [data]="data"
337
+ [text]="toolbarOptions.text"
338
+ [icon]="toolbarOptions.icon"
339
+ [iconClass]="toolbarOptions.iconClass"
340
+ [svgIcon]="toolbarOptions.svgIcon"
341
+ [imageUrl]="toolbarOptions.imageUrl"
342
+ [buttonClass]="buttonClass"
343
+ [arrowButtonClass]="arrowButtonClass"
344
+ [arrowButtonIcon]="arrowButtonIcon"
345
+ [arrowButtonSvgIcon]="arrowButtonSvgIcon"
346
+ [disabled]="disabled"
347
+ [size]="size"
348
+ [tabIndex]="-1"
349
+ [textField]="textField"
350
+ [popupSettings]="popupSettings"
351
+ [fillMode]="fillMode"
352
+ [themeColor]="fillMode ? themeColor : null"
353
+ (buttonClick)="buttonClick.emit($event)"
354
+ (open)="open.emit($event)"
355
+ (close)="close.emit($event)"
356
+ (itemClick)="itemClick.emit($event)"
357
+ ></kendo-splitbutton>
358
358
  </ng-template>
359
359
  <ng-template #popupTemplate>
360
- <div #overflowMainButton
361
- tabindex="-1"
362
- role="menuitem"
363
- class="k-item k-menu-item"
364
- [class.k-disabled]="disabled"
365
- [ngClass]="buttonClass"
366
- (click)="onMainButtonClick($event)">
367
- <span
368
- [ngClass]="{'k-link': true, 'k-menu-link': true}"
369
- >
370
- <kendo-icon-wrapper
371
- *ngIf="overflowOptions.icon || overflowOptions.iconClass || overflowOptions.svgIcon"
372
- [name]="overflowOptions.icon"
373
- [customFontClass]="overflowOptions.iconClass"
374
- [svgIcon]="overflowOptions.svgIcon"
375
- >
376
- </kendo-icon-wrapper>
377
- <span *ngIf="overflowOptions.text" class="k-menu-link-text">{{overflowOptions.text}}</span>
378
- </span>
379
- </div>
380
- <ng-container *ngFor="let item of data; let i = index">
360
+ <div #overflowMainButton
361
+ tabindex="-1"
362
+ role="menuitem"
363
+ class="k-item k-menu-item"
364
+ [class.k-disabled]="disabled"
365
+ [ngClass]="buttonClass"
366
+ (click)="onMainButtonClick($event)">
367
+ <span
368
+ [ngClass]="{'k-link': true, 'k-menu-link': true}"
369
+ >
370
+ @if (overflowOptions.icon || overflowOptions.iconClass || overflowOptions.svgIcon) {
371
+ <kendo-icon-wrapper
372
+ [name]="overflowOptions.icon"
373
+ [customFontClass]="overflowOptions.iconClass"
374
+ [svgIcon]="overflowOptions.svgIcon"
375
+ >
376
+ </kendo-icon-wrapper>
377
+ }
378
+ @if (overflowOptions.text) {
379
+ <span class="k-menu-link-text">{{overflowOptions.text}}</span>
380
+ }
381
+ </span>
382
+ </div>
383
+ @for (item of data; track item; let i = $index) {
381
384
  <div #listItem
382
- tabindex="-1"
383
- role="menuitem"
384
- class="k-item k-menu-item"
385
- [class.k-disabled]="disabled || item.disabled"
386
- (click)="handleClick($event, item, i)">
387
- <span
388
- class="k-link k-menu-link"
385
+ tabindex="-1"
386
+ role="menuitem"
387
+ class="k-item k-menu-item"
388
+ [class.k-disabled]="disabled || item.disabled"
389
+ (click)="handleClick($event, item, i)">
390
+ <span
391
+ class="k-link k-menu-link"
389
392
  >
390
- <kendo-icon-wrapper
391
- *ngIf="item.icon || item.iconClass || item.svgIcon"
392
- [name]="item.icon"
393
- [customFontClass]="item.iconClass"
394
- [svgIcon]="item.svgIcon"
393
+ @if (item.icon || item.iconClass || item.svgIcon) {
394
+ <kendo-icon-wrapper
395
+ [name]="item.icon"
396
+ [customFontClass]="item.iconClass"
397
+ [svgIcon]="item.svgIcon"
395
398
  >
396
- </kendo-icon-wrapper>
397
- <span *ngIf="getText(item)" class="k-menu-link-text">{{ getText(item) }}</span>
398
- </span>
399
+ </kendo-icon-wrapper>
400
+ }
401
+ @if (getText(item)) {
402
+ <span class="k-menu-link-text">{{ getText(item) }}</span>
403
+ }
404
+ </span>
399
405
  </div>
400
- </ng-container>
406
+ }
401
407
  </ng-template>
402
408
  <ng-template #sectionTemplate>
403
- <kendo-splitbutton
404
- #sectionSplitButton
405
- class="k-toolbar-split-button"
406
- [data]="data"
407
- [text]="toolbarOptions.text"
408
- [icon]="toolbarOptions.icon"
409
- [iconClass]="toolbarOptions.iconClass"
410
- [svgIcon]="toolbarOptions.svgIcon"
411
- [imageUrl]="toolbarOptions.imageUrl"
412
- [buttonClass]="buttonClass"
413
- [arrowButtonClass]="arrowButtonClass"
414
- [arrowButtonIcon]="arrowButtonIcon"
415
- [arrowButtonSvgIcon]="arrowButtonSvgIcon"
416
- [disabled]="disabled"
417
- [size]="size"
418
- [tabIndex]="-1"
419
- [textField]="textField"
420
- [popupSettings]="popupSettings"
421
- [fillMode]="fillMode"
422
- [themeColor]="fillMode ? themeColor : null"
423
- (buttonClick)="buttonClick.emit($event)"
424
- (open)="open.emit($event)"
425
- (close)="close.emit($event)"
426
- (itemClick)="itemClick.emit($event)"
427
- ></kendo-splitbutton>
409
+ <kendo-splitbutton
410
+ #sectionSplitButton
411
+ class="k-toolbar-split-button"
412
+ [data]="data"
413
+ [text]="toolbarOptions.text"
414
+ [icon]="toolbarOptions.icon"
415
+ [iconClass]="toolbarOptions.iconClass"
416
+ [svgIcon]="toolbarOptions.svgIcon"
417
+ [imageUrl]="toolbarOptions.imageUrl"
418
+ [buttonClass]="buttonClass"
419
+ [arrowButtonClass]="arrowButtonClass"
420
+ [arrowButtonIcon]="arrowButtonIcon"
421
+ [arrowButtonSvgIcon]="arrowButtonSvgIcon"
422
+ [disabled]="disabled"
423
+ [size]="size"
424
+ [tabIndex]="-1"
425
+ [textField]="textField"
426
+ [popupSettings]="popupSettings"
427
+ [fillMode]="fillMode"
428
+ [themeColor]="fillMode ? themeColor : null"
429
+ (buttonClick)="buttonClick.emit($event)"
430
+ (open)="open.emit($event)"
431
+ (close)="close.emit($event)"
432
+ (itemClick)="itemClick.emit($event)"
433
+ ></kendo-splitbutton>
428
434
  </ng-template>
429
- `, 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"] }] });
435
+ `, 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: "component", type: IconWrapperComponent, selector: "kendo-icon-wrapper", inputs: ["name", "svgIcon", "innerCssClass", "customFontClass", "size"], exportAs: ["kendoIconWrapper"] }] });
430
436
  }
431
437
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: ToolBarSplitButtonComponent, decorators: [{
432
438
  type: Component,
@@ -436,105 +442,111 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImpo
436
442
  selector: 'kendo-toolbar-splitbutton',
437
443
  template: `
438
444
  <ng-template #toolbarTemplate>
439
- <kendo-splitbutton
440
- #toolbarSplitButton
441
- class="k-toolbar-split-button"
442
- [data]="data"
443
- [text]="toolbarOptions.text"
444
- [icon]="toolbarOptions.icon"
445
- [iconClass]="toolbarOptions.iconClass"
446
- [svgIcon]="toolbarOptions.svgIcon"
447
- [imageUrl]="toolbarOptions.imageUrl"
448
- [buttonClass]="buttonClass"
449
- [arrowButtonClass]="arrowButtonClass"
450
- [arrowButtonIcon]="arrowButtonIcon"
451
- [arrowButtonSvgIcon]="arrowButtonSvgIcon"
452
- [disabled]="disabled"
453
- [size]="size"
454
- [tabIndex]="-1"
455
- [textField]="textField"
456
- [popupSettings]="popupSettings"
457
- [fillMode]="fillMode"
458
- [themeColor]="fillMode ? themeColor : null"
459
- (buttonClick)="buttonClick.emit($event)"
460
- (open)="open.emit($event)"
461
- (close)="close.emit($event)"
462
- (itemClick)="itemClick.emit($event)"
463
- ></kendo-splitbutton>
445
+ <kendo-splitbutton
446
+ #toolbarSplitButton
447
+ class="k-toolbar-split-button"
448
+ [data]="data"
449
+ [text]="toolbarOptions.text"
450
+ [icon]="toolbarOptions.icon"
451
+ [iconClass]="toolbarOptions.iconClass"
452
+ [svgIcon]="toolbarOptions.svgIcon"
453
+ [imageUrl]="toolbarOptions.imageUrl"
454
+ [buttonClass]="buttonClass"
455
+ [arrowButtonClass]="arrowButtonClass"
456
+ [arrowButtonIcon]="arrowButtonIcon"
457
+ [arrowButtonSvgIcon]="arrowButtonSvgIcon"
458
+ [disabled]="disabled"
459
+ [size]="size"
460
+ [tabIndex]="-1"
461
+ [textField]="textField"
462
+ [popupSettings]="popupSettings"
463
+ [fillMode]="fillMode"
464
+ [themeColor]="fillMode ? themeColor : null"
465
+ (buttonClick)="buttonClick.emit($event)"
466
+ (open)="open.emit($event)"
467
+ (close)="close.emit($event)"
468
+ (itemClick)="itemClick.emit($event)"
469
+ ></kendo-splitbutton>
464
470
  </ng-template>
465
471
  <ng-template #popupTemplate>
466
- <div #overflowMainButton
467
- tabindex="-1"
468
- role="menuitem"
469
- class="k-item k-menu-item"
470
- [class.k-disabled]="disabled"
471
- [ngClass]="buttonClass"
472
- (click)="onMainButtonClick($event)">
473
- <span
474
- [ngClass]="{'k-link': true, 'k-menu-link': true}"
475
- >
476
- <kendo-icon-wrapper
477
- *ngIf="overflowOptions.icon || overflowOptions.iconClass || overflowOptions.svgIcon"
478
- [name]="overflowOptions.icon"
479
- [customFontClass]="overflowOptions.iconClass"
480
- [svgIcon]="overflowOptions.svgIcon"
481
- >
482
- </kendo-icon-wrapper>
483
- <span *ngIf="overflowOptions.text" class="k-menu-link-text">{{overflowOptions.text}}</span>
484
- </span>
485
- </div>
486
- <ng-container *ngFor="let item of data; let i = index">
472
+ <div #overflowMainButton
473
+ tabindex="-1"
474
+ role="menuitem"
475
+ class="k-item k-menu-item"
476
+ [class.k-disabled]="disabled"
477
+ [ngClass]="buttonClass"
478
+ (click)="onMainButtonClick($event)">
479
+ <span
480
+ [ngClass]="{'k-link': true, 'k-menu-link': true}"
481
+ >
482
+ @if (overflowOptions.icon || overflowOptions.iconClass || overflowOptions.svgIcon) {
483
+ <kendo-icon-wrapper
484
+ [name]="overflowOptions.icon"
485
+ [customFontClass]="overflowOptions.iconClass"
486
+ [svgIcon]="overflowOptions.svgIcon"
487
+ >
488
+ </kendo-icon-wrapper>
489
+ }
490
+ @if (overflowOptions.text) {
491
+ <span class="k-menu-link-text">{{overflowOptions.text}}</span>
492
+ }
493
+ </span>
494
+ </div>
495
+ @for (item of data; track item; let i = $index) {
487
496
  <div #listItem
488
- tabindex="-1"
489
- role="menuitem"
490
- class="k-item k-menu-item"
491
- [class.k-disabled]="disabled || item.disabled"
492
- (click)="handleClick($event, item, i)">
493
- <span
494
- class="k-link k-menu-link"
497
+ tabindex="-1"
498
+ role="menuitem"
499
+ class="k-item k-menu-item"
500
+ [class.k-disabled]="disabled || item.disabled"
501
+ (click)="handleClick($event, item, i)">
502
+ <span
503
+ class="k-link k-menu-link"
495
504
  >
496
- <kendo-icon-wrapper
497
- *ngIf="item.icon || item.iconClass || item.svgIcon"
498
- [name]="item.icon"
499
- [customFontClass]="item.iconClass"
500
- [svgIcon]="item.svgIcon"
505
+ @if (item.icon || item.iconClass || item.svgIcon) {
506
+ <kendo-icon-wrapper
507
+ [name]="item.icon"
508
+ [customFontClass]="item.iconClass"
509
+ [svgIcon]="item.svgIcon"
501
510
  >
502
- </kendo-icon-wrapper>
503
- <span *ngIf="getText(item)" class="k-menu-link-text">{{ getText(item) }}</span>
504
- </span>
511
+ </kendo-icon-wrapper>
512
+ }
513
+ @if (getText(item)) {
514
+ <span class="k-menu-link-text">{{ getText(item) }}</span>
515
+ }
516
+ </span>
505
517
  </div>
506
- </ng-container>
518
+ }
507
519
  </ng-template>
508
520
  <ng-template #sectionTemplate>
509
- <kendo-splitbutton
510
- #sectionSplitButton
511
- class="k-toolbar-split-button"
512
- [data]="data"
513
- [text]="toolbarOptions.text"
514
- [icon]="toolbarOptions.icon"
515
- [iconClass]="toolbarOptions.iconClass"
516
- [svgIcon]="toolbarOptions.svgIcon"
517
- [imageUrl]="toolbarOptions.imageUrl"
518
- [buttonClass]="buttonClass"
519
- [arrowButtonClass]="arrowButtonClass"
520
- [arrowButtonIcon]="arrowButtonIcon"
521
- [arrowButtonSvgIcon]="arrowButtonSvgIcon"
522
- [disabled]="disabled"
523
- [size]="size"
524
- [tabIndex]="-1"
525
- [textField]="textField"
526
- [popupSettings]="popupSettings"
527
- [fillMode]="fillMode"
528
- [themeColor]="fillMode ? themeColor : null"
529
- (buttonClick)="buttonClick.emit($event)"
530
- (open)="open.emit($event)"
531
- (close)="close.emit($event)"
532
- (itemClick)="itemClick.emit($event)"
533
- ></kendo-splitbutton>
521
+ <kendo-splitbutton
522
+ #sectionSplitButton
523
+ class="k-toolbar-split-button"
524
+ [data]="data"
525
+ [text]="toolbarOptions.text"
526
+ [icon]="toolbarOptions.icon"
527
+ [iconClass]="toolbarOptions.iconClass"
528
+ [svgIcon]="toolbarOptions.svgIcon"
529
+ [imageUrl]="toolbarOptions.imageUrl"
530
+ [buttonClass]="buttonClass"
531
+ [arrowButtonClass]="arrowButtonClass"
532
+ [arrowButtonIcon]="arrowButtonIcon"
533
+ [arrowButtonSvgIcon]="arrowButtonSvgIcon"
534
+ [disabled]="disabled"
535
+ [size]="size"
536
+ [tabIndex]="-1"
537
+ [textField]="textField"
538
+ [popupSettings]="popupSettings"
539
+ [fillMode]="fillMode"
540
+ [themeColor]="fillMode ? themeColor : null"
541
+ (buttonClick)="buttonClick.emit($event)"
542
+ (open)="open.emit($event)"
543
+ (close)="close.emit($event)"
544
+ (itemClick)="itemClick.emit($event)"
545
+ ></kendo-splitbutton>
534
546
  </ng-template>
535
- `,
547
+ `,
536
548
  standalone: true,
537
- imports: [SplitButtonComponent, NgClass, NgIf, IconWrapperComponent, NgFor]
549
+ imports: [SplitButtonComponent, NgClass, IconWrapperComponent]
538
550
  }]
539
551
  }], ctorParameters: () => [{ type: i1.ToolBarComponent }], propDecorators: { showText: [{
540
552
  type: Input