@progress/kendo-angular-toolbar 18.1.0-develop.30 → 18.1.0-develop.4

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 (36) hide show
  1. package/esm2022/localization/messages.mjs +2 -14
  2. package/esm2022/navigation.service.mjs +3 -5
  3. package/esm2022/package-metadata.mjs +2 -2
  4. package/esm2022/renderer.component.mjs +0 -8
  5. package/esm2022/toolbar.component.mjs +124 -716
  6. package/esm2022/tools/toolbar-button.component.mjs +2 -62
  7. package/esm2022/tools/toolbar-buttongroup.component.mjs +6 -87
  8. package/esm2022/tools/toolbar-dropdownbutton.component.mjs +11 -67
  9. package/esm2022/tools/toolbar-separator.component.mjs +0 -8
  10. package/esm2022/tools/toolbar-splitbutton.component.mjs +5 -61
  11. package/esm2022/tools/toolbar-tool.component.mjs +1 -9
  12. package/esm2022/tools/tools.service.mjs +0 -3
  13. package/esm2022/util.mjs +0 -17
  14. package/fesm2022/progress-kendo-angular-toolbar.mjs +155 -1300
  15. package/index.d.ts +0 -3
  16. package/localization/messages.d.ts +2 -10
  17. package/package.json +9 -9
  18. package/render-location.d.ts +1 -1
  19. package/toolbar.component.d.ts +6 -77
  20. package/tools/toolbar-button.component.d.ts +0 -1
  21. package/tools/toolbar-buttongroup.component.d.ts +0 -1
  22. package/tools/toolbar-dropdownbutton.component.d.ts +1 -2
  23. package/tools/toolbar-splitbutton.component.d.ts +0 -1
  24. package/tools/toolbar-tool.component.d.ts +0 -6
  25. package/tools/tools.service.d.ts +0 -1
  26. package/util.d.ts +0 -5
  27. package/common/overflow-mode.d.ts +0 -8
  28. package/common/overflow-settings.d.ts +0 -53
  29. package/common/scroll-buttons.d.ts +0 -12
  30. package/esm2022/common/overflow-mode.mjs +0 -5
  31. package/esm2022/common/overflow-settings.mjs +0 -5
  32. package/esm2022/common/scroll-buttons.mjs +0 -5
  33. package/esm2022/scroll.service.mjs +0 -102
  34. package/esm2022/scrollable-button.component.mjs +0 -162
  35. package/scroll.service.d.ts +0 -42
  36. package/scrollable-button.component.d.ts +0 -44
@@ -185,7 +185,6 @@ export class ToolBarButtonComponent extends ToolBarToolComponent {
185
185
  imageUrl: ''
186
186
  };
187
187
  toolbarButtonElement;
188
- sectionButtonElement;
189
188
  overflowButtonElement;
190
189
  _showText = 'both';
191
190
  _text;
@@ -245,7 +244,7 @@ export class ToolBarButtonComponent extends ToolBarToolComponent {
245
244
  this.selectedChange.emit(state);
246
245
  }
247
246
  getButton() {
248
- return this[`${this.location}ButtonElement`]?.nativeElement;
247
+ return (this.overflowButtonElement || this.toolbarButtonElement).nativeElement;
249
248
  }
250
249
  setTextDisplayMode() {
251
250
  this.toolbarOptions.text = this.showText === 'overflow' ? undefined : this.text;
@@ -254,7 +253,7 @@ export class ToolBarButtonComponent extends ToolBarToolComponent {
254
253
  });
255
254
  }
256
255
  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 });
257
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: ToolBarButtonComponent, isStandalone: true, selector: "kendo-toolbar-button", inputs: { showText: "showText", showIcon: "showIcon", text: "text", style: "style", className: "className", title: "title", disabled: "disabled", toggleable: "toggleable", look: "look", togglable: "togglable", selected: "selected", fillMode: "fillMode", themeColor: "themeColor", icon: "icon", iconClass: "iconClass", svgIcon: "svgIcon", imageUrl: "imageUrl" }, outputs: { click: "click", pointerdown: "pointerdown", selectedChange: "selectedChange" }, providers: [{ provide: ToolBarToolComponent, useExisting: forwardRef(() => ToolBarButtonComponent) }], viewQueries: [{ propertyName: "toolbarButtonElement", first: true, predicate: ["toolbarButton"], descendants: true, read: ElementRef }, { propertyName: "sectionButtonElement", first: true, predicate: ["sectionButton"], descendants: true, read: ElementRef }, { propertyName: "overflowButtonElement", first: true, predicate: ["overflowButton"], descendants: true, read: ElementRef }], exportAs: ["kendoToolBarButton"], usesInheritance: true, ngImport: i0, template: `
256
+ 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: `
258
257
  <ng-template #toolbarTemplate>
259
258
  <button
260
259
  #toolbarButton
@@ -307,34 +306,6 @@ export class ToolBarButtonComponent extends ToolBarToolComponent {
307
306
  </span>
308
307
  </div>
309
308
  </ng-template>
310
- <ng-template #sectionTemplate>
311
- <button
312
- #sectionButton
313
- [class.k-toolbar-button]="!toggleable"
314
- [class.k-toolbar-toggle-button]="toggleable"
315
- [tabindex]="tabIndex"
316
- type="button"
317
- kendoButton
318
- [ngStyle]="style"
319
- [ngClass]="className"
320
- [attr.title]="title"
321
- [disabled]="disabled"
322
- [toggleable]="toggleable"
323
- [fillMode]="fillMode"
324
- [themeColor]="fillMode ? themeColor : null"
325
- [selected]="selected"
326
- [icon]="toolbarOptions.icon"
327
- [iconClass]="toolbarOptions.iconClass"
328
- [svgIcon]="toolbarOptions.svgIcon"
329
- [imageUrl]="toolbarOptions.imageUrl"
330
- (click)="click.emit($event)"
331
- (pointerdown)="pointerdown.emit($event)"
332
- (selectedChange)="selectedChangeHandler($event)"
333
- (blur)="onBlur()"
334
- >
335
- {{ toolbarOptions.text }}
336
- </button>
337
- </ng-template>
338
309
  `, 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"] }] });
339
310
  }
340
311
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: ToolBarButtonComponent, decorators: [{
@@ -396,34 +367,6 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
396
367
  </span>
397
368
  </div>
398
369
  </ng-template>
399
- <ng-template #sectionTemplate>
400
- <button
401
- #sectionButton
402
- [class.k-toolbar-button]="!toggleable"
403
- [class.k-toolbar-toggle-button]="toggleable"
404
- [tabindex]="tabIndex"
405
- type="button"
406
- kendoButton
407
- [ngStyle]="style"
408
- [ngClass]="className"
409
- [attr.title]="title"
410
- [disabled]="disabled"
411
- [toggleable]="toggleable"
412
- [fillMode]="fillMode"
413
- [themeColor]="fillMode ? themeColor : null"
414
- [selected]="selected"
415
- [icon]="toolbarOptions.icon"
416
- [iconClass]="toolbarOptions.iconClass"
417
- [svgIcon]="toolbarOptions.svgIcon"
418
- [imageUrl]="toolbarOptions.imageUrl"
419
- (click)="click.emit($event)"
420
- (pointerdown)="pointerdown.emit($event)"
421
- (selectedChange)="selectedChangeHandler($event)"
422
- (blur)="onBlur()"
423
- >
424
- {{ toolbarOptions.text }}
425
- </button>
426
- </ng-template>
427
370
  `,
428
371
  standalone: true,
429
372
  imports: [ButtonComponent, NgStyle, NgClass, NgIf, IconWrapperComponent]
@@ -471,9 +414,6 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
471
414
  }], toolbarButtonElement: [{
472
415
  type: ViewChild,
473
416
  args: ['toolbarButton', { read: ElementRef }]
474
- }], sectionButtonElement: [{
475
- type: ViewChild,
476
- args: ['sectionButton', { read: ElementRef }]
477
417
  }], overflowButtonElement: [{
478
418
  type: ViewChild,
479
419
  args: ['overflowButton', { read: ElementRef }]
@@ -52,18 +52,12 @@ export class ToolBarButtonGroupComponent extends ToolBarToolComponent {
52
52
  }
53
53
  }
54
54
  toolbarButtonGroup;
55
- sectionButtonGroup;
56
55
  overflowListItems;
57
56
  buttonComponents;
58
57
  get buttonElements() {
59
- if (this.overflows && this.location === 'overflow') {
58
+ if (this.overflows) {
60
59
  return [...this.overflowListItems.toArray().filter(el => !el.nativeElement.classList.contains('k-disabled'))].map(el => el.nativeElement);
61
60
  }
62
- else if (this.overflows && this.location === 'section') {
63
- return this.sectionButtonGroup
64
- .buttons.filter(b => !b.isDisabled)
65
- .map(b => b.element);
66
- }
67
61
  else {
68
62
  return this.toolbarButtonGroup
69
63
  .buttons.filter(b => !b.isDisabled)
@@ -131,8 +125,8 @@ export class ToolBarButtonGroupComponent extends ToolBarToolComponent {
131
125
  * @hidden
132
126
  */
133
127
  focus(ev = {}) {
134
- const nextKey = this.getNextKey((this.overflows && this.location === 'overflow'));
135
- const prevKey = this.getPrevKey((this.overflows && this.location === 'overflow'));
128
+ const nextKey = this.getNextKey(this.overflows);
129
+ const prevKey = this.getPrevKey(this.overflows);
136
130
  this.focusedIndex = getIndexOfFocused(prevKey, nextKey, this.buttonElements)(ev);
137
131
  this.focusButton(this.focusedIndex, ev);
138
132
  }
@@ -140,8 +134,8 @@ export class ToolBarButtonGroupComponent extends ToolBarToolComponent {
140
134
  * @hidden
141
135
  */
142
136
  handleKey(ev) {
143
- const nextKey = this.getNextKey((this.overflows && this.location === 'overflow'));
144
- const prevKey = this.getPrevKey((this.overflows && this.location === 'overflow'));
137
+ const nextKey = this.getNextKey(this.overflows);
138
+ const prevKey = this.getPrevKey(this.overflows);
145
139
  const peekAtIndex = makePeeker(this.buttonElements);
146
140
  const isUnmodified = areEqual(this.focusedIndex);
147
141
  this.focusedIndex = seekFocusedIndex(prevKey, nextKey, peekAtIndex)(this.focusedIndex, ev);
@@ -177,7 +171,7 @@ export class ToolBarButtonGroupComponent extends ToolBarToolComponent {
177
171
  }
178
172
  }
179
173
  static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: ToolBarButtonGroupComponent, deps: [{ token: i1.LocalizationService }], target: i0.ɵɵFactoryTarget.Component });
180
- 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: "sectionButtonGroup", first: true, predicate: ["sectionButtonGroup"], descendants: true }, { propertyName: "overflowListItems", predicate: ["listItem"], descendants: true }], exportAs: ["kendoToolBarButtonGroup"], usesInheritance: true, ngImport: i0, template: `
174
+ 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: `
181
175
  <ng-template #toolbarTemplate>
182
176
  <kendo-buttongroup
183
177
  class="k-toolbar-button-group k-button-group-{{fillMode}}"
@@ -239,42 +233,6 @@ export class ToolBarButtonGroupComponent extends ToolBarToolComponent {
239
233
  </span>
240
234
  </div>
241
235
  </ng-template>
242
- <ng-template #sectionTemplate>
243
- <kendo-buttongroup
244
- class="k-toolbar-button-group k-button-group-{{fillMode}}"
245
- #sectionButtonGroup
246
- [tabIndex]="-1"
247
- [selection]="selection"
248
- [disabled]="disabled"
249
- [width]="width"
250
- (navigate)="onNavigate($event)"
251
- (focus)="onFocus()"
252
- >
253
- <button
254
- kendoButton
255
- type="button"
256
- *ngFor="let button of buttonComponents"
257
- [ngStyle]="button.style"
258
- [ngClass]="button.className"
259
- [attr.title]="button.title"
260
- [disabled]="button.disabled"
261
- [togglable]="button.togglable"
262
- [selected]="button.selected"
263
- [attr.aria-pressed]="button.selected ? true : false"
264
- [fillMode]="button.fillMode"
265
- [themeColor]="button.fillMode ? button.themeColor : null"
266
- [icon]="button.toolbarOptions.icon"
267
- [iconClass]="button.toolbarOptions.iconClass"
268
- [svgIcon]="button.toolbarOptions.svgIcon"
269
- [imageUrl]="button.toolbarOptions.imageUrl"
270
- (click)="button.click.emit($event); onButtonClick($event)"
271
- (pointerdown)="button.pointerdown.emit($event)"
272
- (selectedChange)="selectedChangeHandler($event, button)"
273
- >
274
- {{ button.toolbarOptions.text }}
275
- </button>
276
- </kendo-buttongroup>
277
- </ng-template>
278
236
  `, 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"] }] });
279
237
  }
280
238
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: ToolBarButtonGroupComponent, decorators: [{
@@ -345,42 +303,6 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
345
303
  </span>
346
304
  </div>
347
305
  </ng-template>
348
- <ng-template #sectionTemplate>
349
- <kendo-buttongroup
350
- class="k-toolbar-button-group k-button-group-{{fillMode}}"
351
- #sectionButtonGroup
352
- [tabIndex]="-1"
353
- [selection]="selection"
354
- [disabled]="disabled"
355
- [width]="width"
356
- (navigate)="onNavigate($event)"
357
- (focus)="onFocus()"
358
- >
359
- <button
360
- kendoButton
361
- type="button"
362
- *ngFor="let button of buttonComponents"
363
- [ngStyle]="button.style"
364
- [ngClass]="button.className"
365
- [attr.title]="button.title"
366
- [disabled]="button.disabled"
367
- [togglable]="button.togglable"
368
- [selected]="button.selected"
369
- [attr.aria-pressed]="button.selected ? true : false"
370
- [fillMode]="button.fillMode"
371
- [themeColor]="button.fillMode ? button.themeColor : null"
372
- [icon]="button.toolbarOptions.icon"
373
- [iconClass]="button.toolbarOptions.iconClass"
374
- [svgIcon]="button.toolbarOptions.svgIcon"
375
- [imageUrl]="button.toolbarOptions.imageUrl"
376
- (click)="button.click.emit($event); onButtonClick($event)"
377
- (pointerdown)="button.pointerdown.emit($event)"
378
- (selectedChange)="selectedChangeHandler($event, button)"
379
- >
380
- {{ button.toolbarOptions.text }}
381
- </button>
382
- </kendo-buttongroup>
383
- </ng-template>
384
306
  `,
385
307
  standalone: true,
386
308
  imports: [ButtonGroupComponent, NgFor, ButtonComponent, NgStyle, NgClass, NgIf, IconWrapperComponent]
@@ -398,9 +320,6 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
398
320
  }], toolbarButtonGroup: [{
399
321
  type: ViewChild,
400
322
  args: ['toolbarButtonGroup', { static: false }]
401
- }], sectionButtonGroup: [{
402
- type: ViewChild,
403
- args: ['sectionButtonGroup', { static: false }]
404
323
  }], overflowListItems: [{
405
324
  type: ViewChildren,
406
325
  args: ['listItem']
@@ -192,8 +192,7 @@ export class ToolBarDropDownButtonComponent extends ToolBarToolComponent {
192
192
  */
193
193
  close = new EventEmitter();
194
194
  dropdownButton;
195
- toolbarDropDownButton;
196
- sectionDropDownButton;
195
+ dropDownButtonComponent;
197
196
  overflowListItems;
198
197
  toolbarOptions = {
199
198
  text: '',
@@ -231,9 +230,7 @@ export class ToolBarDropDownButtonComponent extends ToolBarToolComponent {
231
230
  this.setTextDisplayMode();
232
231
  }
233
232
  ngAfterViewInit() {
234
- this.zone.onStable.pipe(take(1)).subscribe(() => {
235
- this.renderer.addClass(this[`${this.location}DropDownButton`].button.nativeElement, 'k-toolbar-menu-button');
236
- });
233
+ this.zone.onStable.pipe(take(1)).subscribe(() => (this.renderer.addClass(this.dropDownButtonComponent.button.nativeElement, 'k-toolbar-menu-button')));
237
234
  }
238
235
  /**
239
236
  * @hidden
@@ -253,9 +250,9 @@ export class ToolBarDropDownButtonComponent extends ToolBarToolComponent {
253
250
  * @hidden
254
251
  */
255
252
  focus(ev = {}) {
256
- if (!this.overflows || this.location === 'section') {
257
- if (!ev.type || ev.type === 'focus' || ev.type === 'keydown') {
258
- this[`${this.location}DropDownButton`]?.focus();
253
+ if (!this.overflows) {
254
+ if (ev.type === 'focus' || ev.type === 'keydown') {
255
+ this.dropDownButtonComponent?.focus();
259
256
  }
260
257
  }
261
258
  else if (this.overflowButtons.length > 0) {
@@ -270,7 +267,7 @@ export class ToolBarDropDownButtonComponent extends ToolBarToolComponent {
270
267
  if (!this.overflows && (ev.keyCode === this.getPrevKey(this.overflows) || ev.keyCode === this.getNextKey(this.overflows))) {
271
268
  return false;
272
269
  }
273
- if (this.overflows && this.location !== 'section') {
270
+ if (this.overflows) {
274
271
  const peekAtIndex = makePeeker(this.overflowButtons);
275
272
  const isUnmodified = areEqual(this.focusedIndex);
276
273
  this.focusedIndex = seekFocusedIndex(this.getPrevKey(), this.getNextKey(), peekAtIndex)(this.focusedIndex, ev);
@@ -308,9 +305,9 @@ export class ToolBarDropDownButtonComponent extends ToolBarToolComponent {
308
305
  this.overflowOptions.text = this.showText === 'toolbar' ? undefined : this.text;
309
306
  }
310
307
  static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: ToolBarDropDownButtonComponent, deps: [{ token: i0.NgZone }, { token: i0.Renderer2 }], target: i0.ɵɵFactoryTarget.Component });
311
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: ToolBarDropDownButtonComponent, isStandalone: true, selector: "kendo-toolbar-dropdownbutton", inputs: { arrowIcon: "arrowIcon", title: "title", showText: "showText", showIcon: "showIcon", text: "text", icon: "icon", svgIcon: "svgIcon", iconClass: "iconClass", imageUrl: "imageUrl", popupSettings: "popupSettings", look: "look", primary: "primary", fillMode: "fillMode", themeColor: "themeColor", buttonClass: "buttonClass", textField: "textField", disabled: "disabled", data: "data" }, outputs: { itemClick: "itemClick", open: "open", close: "close" }, providers: [{ provide: ToolBarToolComponent, useExisting: forwardRef(() => ToolBarDropDownButtonComponent) }], viewQueries: [{ propertyName: "dropdownButton", first: true, predicate: ["dropdownButton"], descendants: true, read: ElementRef, static: true }, { propertyName: "toolbarDropDownButton", first: true, predicate: ["toolbarDropDownButton"], descendants: true }, { propertyName: "sectionDropDownButton", first: true, predicate: ["sectionDropDownButton"], descendants: true }, { propertyName: "overflowListItems", predicate: ["listItem"], descendants: true }], exportAs: ["kendoToolBarDropDownButton"], usesInheritance: true, ngImport: i0, template: `
308
+ 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: "overflowListItems", predicate: ["listItem"], descendants: true }], exportAs: ["kendoToolBarDropDownButton"], usesInheritance: true, ngImport: i0, template: `
312
309
  <ng-template #toolbarTemplate>
313
- <kendo-dropdownbutton #toolbarDropDownButton
310
+ <kendo-dropdownbutton
314
311
  [icon]="toolbarOptions.icon"
315
312
  [iconClass]="toolbarOptions.iconClass"
316
313
  [svgIcon]="toolbarOptions.svgIcon"
@@ -332,7 +329,6 @@ export class ToolBarDropDownButtonComponent extends ToolBarToolComponent {
332
329
  {{ toolbarOptions.text }}
333
330
  </kendo-dropdownbutton>
334
331
  </ng-template>
335
-
336
332
  <ng-template #popupTemplate>
337
333
  <div
338
334
  tabindex="-1"
@@ -373,30 +369,6 @@ export class ToolBarDropDownButtonComponent extends ToolBarToolComponent {
373
369
  </div>
374
370
  </ng-container>
375
371
  </ng-template>
376
-
377
- <ng-template #sectionTemplate>
378
- <kendo-dropdownbutton #sectionDropDownButton
379
- [icon]="toolbarOptions.icon"
380
- [iconClass]="toolbarOptions.iconClass"
381
- [svgIcon]="toolbarOptions.svgIcon"
382
- [imageUrl]="toolbarOptions.imageUrl"
383
- [arrowIcon]="arrowIcon"
384
- [buttonClass]="buttonClass"
385
- [disabled]="disabled"
386
- [tabIndex]="-1"
387
- [data]="data"
388
- [buttonAttributes]="{'title': title}"
389
- [textField]="textField"
390
- [popupSettings]="popupSettings"
391
- [fillMode]="fillMode"
392
- [themeColor]="fillMode ? themeColor : null"
393
- (open)="open.emit($event)"
394
- (close)="close.emit($event)"
395
- (itemClick)="itemClick.emit($event)"
396
- >
397
- {{ toolbarOptions.text }}
398
- </kendo-dropdownbutton>
399
- </ng-template>
400
372
  `, 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"] }] });
401
373
  }
402
374
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: ToolBarDropDownButtonComponent, decorators: [{
@@ -407,7 +379,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
407
379
  selector: 'kendo-toolbar-dropdownbutton',
408
380
  template: `
409
381
  <ng-template #toolbarTemplate>
410
- <kendo-dropdownbutton #toolbarDropDownButton
382
+ <kendo-dropdownbutton
411
383
  [icon]="toolbarOptions.icon"
412
384
  [iconClass]="toolbarOptions.iconClass"
413
385
  [svgIcon]="toolbarOptions.svgIcon"
@@ -429,7 +401,6 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
429
401
  {{ toolbarOptions.text }}
430
402
  </kendo-dropdownbutton>
431
403
  </ng-template>
432
-
433
404
  <ng-template #popupTemplate>
434
405
  <div
435
406
  tabindex="-1"
@@ -470,30 +441,6 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
470
441
  </div>
471
442
  </ng-container>
472
443
  </ng-template>
473
-
474
- <ng-template #sectionTemplate>
475
- <kendo-dropdownbutton #sectionDropDownButton
476
- [icon]="toolbarOptions.icon"
477
- [iconClass]="toolbarOptions.iconClass"
478
- [svgIcon]="toolbarOptions.svgIcon"
479
- [imageUrl]="toolbarOptions.imageUrl"
480
- [arrowIcon]="arrowIcon"
481
- [buttonClass]="buttonClass"
482
- [disabled]="disabled"
483
- [tabIndex]="-1"
484
- [data]="data"
485
- [buttonAttributes]="{'title': title}"
486
- [textField]="textField"
487
- [popupSettings]="popupSettings"
488
- [fillMode]="fillMode"
489
- [themeColor]="fillMode ? themeColor : null"
490
- (open)="open.emit($event)"
491
- (close)="close.emit($event)"
492
- (itemClick)="itemClick.emit($event)"
493
- >
494
- {{ toolbarOptions.text }}
495
- </kendo-dropdownbutton>
496
- </ng-template>
497
444
  `,
498
445
  standalone: true,
499
446
  imports: [DropDownButtonComponent, NgClass, NgIf, IconWrapperComponent, NgFor]
@@ -543,12 +490,9 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
543
490
  }], dropdownButton: [{
544
491
  type: ViewChild,
545
492
  args: ['dropdownButton', { read: ElementRef, static: true }]
546
- }], toolbarDropDownButton: [{
547
- type: ViewChild,
548
- args: ['toolbarDropDownButton', { static: false }]
549
- }], sectionDropDownButton: [{
493
+ }], dropDownButtonComponent: [{
550
494
  type: ViewChild,
551
- args: ['sectionDropDownButton', { static: false }]
495
+ args: [DropDownButtonComponent, { static: false }]
552
496
  }], overflowListItems: [{
553
497
  type: ViewChildren,
554
498
  args: ['listItem']
@@ -45,10 +45,6 @@ export class ToolBarSeparatorComponent extends ToolBarToolComponent {
45
45
  <div class="k-separator k-toolbar-separator"></div>
46
46
  </ng-template>
47
47
 
48
- <ng-template #sectionTemplate>
49
- <div class="k-separator k-toolbar-separator"></div>
50
- </ng-template>
51
-
52
48
  <ng-template #popupTemplate>
53
49
  <div class="k-item k-menu-item">
54
50
  <div class="k-separator k-separator-horizontal"></div>
@@ -67,10 +63,6 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
67
63
  <div class="k-separator k-toolbar-separator"></div>
68
64
  </ng-template>
69
65
 
70
- <ng-template #sectionTemplate>
71
- <div class="k-separator k-toolbar-separator"></div>
72
- </ng-template>
73
-
74
66
  <ng-template #popupTemplate>
75
67
  <div class="k-item k-menu-item">
76
68
  <div class="k-separator k-separator-horizontal"></div>
@@ -220,7 +220,6 @@ export class ToolBarSplitButtonComponent extends ToolBarToolComponent {
220
220
  getNextKey;
221
221
  getPrevKey;
222
222
  toolbarSplitButton;
223
- sectionSplitButton;
224
223
  overflowMainButton;
225
224
  overflowListItems;
226
225
  constructor() {
@@ -252,9 +251,9 @@ export class ToolBarSplitButtonComponent extends ToolBarToolComponent {
252
251
  * @hidden
253
252
  */
254
253
  focus(ev = {}) {
255
- if (!this.overflows || this.location === 'section') {
256
- if (!ev.type || ev.type === 'focus' || ev.type === 'keydown') {
257
- this[`${this.location}SplitButton`].focus();
254
+ if (!this.overflows) {
255
+ if (ev.type === 'focus' || ev.type === 'keydown') {
256
+ this.toolbarSplitButton.focus();
258
257
  }
259
258
  }
260
259
  else if (this.overflowButtons.length > 0) {
@@ -298,7 +297,7 @@ export class ToolBarSplitButtonComponent extends ToolBarToolComponent {
298
297
  this.itemClick.emit(dataItem);
299
298
  }
300
299
  focusButton(index, ev) {
301
- if ((!ev.type || ev.type === 'focus' || ev.type === 'keydown' || ev.type === 'click') && this.location !== 'section') {
300
+ if (!ev.type || ev.type === 'focus' || ev.type === 'keydown' || ev.type === 'click') {
302
301
  this.overflowButtons[index].nativeElement.focus();
303
302
  }
304
303
  }
@@ -307,7 +306,7 @@ export class ToolBarSplitButtonComponent extends ToolBarToolComponent {
307
306
  this.overflowOptions.text = this.showText === 'toolbar' ? undefined : this.text;
308
307
  }
309
308
  static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: ToolBarSplitButtonComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
310
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: ToolBarSplitButtonComponent, isStandalone: true, selector: "kendo-toolbar-splitbutton", inputs: { showText: "showText", showIcon: "showIcon", text: "text", icon: "icon", svgIcon: "svgIcon", iconClass: "iconClass", imageUrl: "imageUrl", disabled: "disabled", popupSettings: "popupSettings", fillMode: "fillMode", themeColor: "themeColor", look: "look", buttonClass: "buttonClass", arrowButtonClass: "arrowButtonClass", arrowButtonIcon: "arrowButtonIcon", arrowButtonSvgIcon: "arrowButtonSvgIcon", textField: "textField", data: "data" }, outputs: { buttonClick: "buttonClick", itemClick: "itemClick", open: "open", close: "close" }, providers: [{ provide: ToolBarToolComponent, useExisting: forwardRef(() => ToolBarSplitButtonComponent) }], viewQueries: [{ propertyName: "toolbarSplitButton", first: true, predicate: ["toolbarSplitButton"], descendants: true }, { propertyName: "sectionSplitButton", first: true, predicate: ["sectionSplitButton"], descendants: true }, { propertyName: "overflowMainButton", first: true, predicate: ["overflowMainButton"], descendants: true, read: ElementRef }, { propertyName: "overflowListItems", predicate: ["listItem"], descendants: true }], exportAs: ["kendoToolBarSplitButton"], usesInheritance: true, ngImport: i0, template: `
309
+ 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: `
311
310
  <ng-template #toolbarTemplate>
312
311
  <kendo-splitbutton
313
312
  #toolbarSplitButton
@@ -377,32 +376,6 @@ export class ToolBarSplitButtonComponent extends ToolBarToolComponent {
377
376
  </div>
378
377
  </ng-container>
379
378
  </ng-template>
380
- <ng-template #sectionTemplate>
381
- <kendo-splitbutton
382
- #sectionSplitButton
383
- class="k-toolbar-split-button"
384
- [data]="data"
385
- [text]="toolbarOptions.text"
386
- [icon]="toolbarOptions.icon"
387
- [iconClass]="toolbarOptions.iconClass"
388
- [svgIcon]="toolbarOptions.svgIcon"
389
- [imageUrl]="toolbarOptions.imageUrl"
390
- [buttonClass]="buttonClass"
391
- [arrowButtonClass]="arrowButtonClass"
392
- [arrowButtonIcon]="arrowButtonIcon"
393
- [arrowButtonSvgIcon]="arrowButtonSvgIcon"
394
- [disabled]="disabled"
395
- [tabIndex]="-1"
396
- [textField]="textField"
397
- [popupSettings]="popupSettings"
398
- [fillMode]="fillMode"
399
- [themeColor]="fillMode ? themeColor : null"
400
- (buttonClick)="buttonClick.emit($event)"
401
- (open)="open.emit($event)"
402
- (close)="close.emit($event)"
403
- (itemClick)="itemClick.emit($event)"
404
- ></kendo-splitbutton>
405
- </ng-template>
406
379
  `, 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"] }] });
407
380
  }
408
381
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: ToolBarSplitButtonComponent, decorators: [{
@@ -481,32 +454,6 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
481
454
  </div>
482
455
  </ng-container>
483
456
  </ng-template>
484
- <ng-template #sectionTemplate>
485
- <kendo-splitbutton
486
- #sectionSplitButton
487
- class="k-toolbar-split-button"
488
- [data]="data"
489
- [text]="toolbarOptions.text"
490
- [icon]="toolbarOptions.icon"
491
- [iconClass]="toolbarOptions.iconClass"
492
- [svgIcon]="toolbarOptions.svgIcon"
493
- [imageUrl]="toolbarOptions.imageUrl"
494
- [buttonClass]="buttonClass"
495
- [arrowButtonClass]="arrowButtonClass"
496
- [arrowButtonIcon]="arrowButtonIcon"
497
- [arrowButtonSvgIcon]="arrowButtonSvgIcon"
498
- [disabled]="disabled"
499
- [tabIndex]="-1"
500
- [textField]="textField"
501
- [popupSettings]="popupSettings"
502
- [fillMode]="fillMode"
503
- [themeColor]="fillMode ? themeColor : null"
504
- (buttonClick)="buttonClick.emit($event)"
505
- (open)="open.emit($event)"
506
- (close)="close.emit($event)"
507
- (itemClick)="itemClick.emit($event)"
508
- ></kendo-splitbutton>
509
- </ng-template>
510
457
  `,
511
458
  standalone: true,
512
459
  imports: [SplitButtonComponent, NgClass, NgIf, IconWrapperComponent, NgFor]
@@ -558,9 +505,6 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
558
505
  }], toolbarSplitButton: [{
559
506
  type: ViewChild,
560
507
  args: ['toolbarSplitButton', { static: false }]
561
- }], sectionSplitButton: [{
562
- type: ViewChild,
563
- args: ['sectionSplitButton', { static: false }]
564
508
  }], overflowMainButton: [{
565
509
  type: ViewChild,
566
510
  args: ['overflowMainButton', { read: ElementRef }]
@@ -10,17 +10,12 @@ import * as i0 from "@angular/core";
10
10
  */
11
11
  export class ToolBarToolComponent {
12
12
  toolbarTemplate;
13
- sectionTemplate;
14
13
  popupTemplate;
15
14
  tabIndex = -1; //Focus movement inside the toolbar is managed using roving tabindex.
16
15
  overflows = true;
17
16
  visibility;
18
17
  element;
19
18
  isBuiltInTool = false;
20
- /**
21
- * @hidden
22
- */
23
- location;
24
19
  constructor() {
25
20
  this.element = inject(ElementRef);
26
21
  }
@@ -62,7 +57,7 @@ export class ToolBarToolComponent {
62
57
  return false;
63
58
  }
64
59
  static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: ToolBarToolComponent, deps: [], target: i0.ɵɵFactoryTarget.Directive });
65
- 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: "sectionTemplate", first: true, predicate: ["sectionTemplate"], descendants: true, static: true }, { propertyName: "popupTemplate", first: true, predicate: ["popupTemplate"], descendants: true, static: true }], ngImport: i0 });
60
+ 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 });
66
61
  }
67
62
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: ToolBarToolComponent, decorators: [{
68
63
  type: Directive,
@@ -72,9 +67,6 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
72
67
  }], ctorParameters: function () { return []; }, propDecorators: { toolbarTemplate: [{
73
68
  type: ViewChild,
74
69
  args: ['toolbarTemplate', { static: true }]
75
- }], sectionTemplate: [{
76
- type: ViewChild,
77
- args: ['sectionTemplate', { static: true }]
78
70
  }], popupTemplate: [{
79
71
  type: ViewChild,
80
72
  args: ['popupTemplate', { static: true }]
@@ -14,9 +14,6 @@ export class ToolbarToolsService {
14
14
  renderedTools = [];
15
15
  overflowTools = [];
16
16
  allTools = [];
17
- reset() {
18
- this.renderedTools = this.overflowTools = this.allTools = [];
19
- }
20
17
  static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: ToolbarToolsService, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
21
18
  static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: ToolbarToolsService });
22
19
  }
package/esm2022/util.mjs CHANGED
@@ -221,20 +221,3 @@ export const getStylingClasses = (componentType, stylingOption, previousValue, n
221
221
  * nodeType 1 is Element, nodeType 3 is Text
222
222
  */
223
223
  export const isElementOrTextNode = n => n.nodeType === 1 || n.nodeType === 3;
224
- /**
225
- * @hidden
226
- */
227
- export const normalizeOverflowSettings = (overflow) => {
228
- const defaultOverflowSettings = { mode: 'none', scrollButtons: 'auto', scrollButtonsPosition: 'split' };
229
- let normalizedSettings = {};
230
- if (typeof overflow === 'object') {
231
- normalizedSettings = Object.assign(defaultOverflowSettings, overflow);
232
- }
233
- else if (typeof overflow === 'boolean') {
234
- normalizedSettings = overflow ? Object.assign(defaultOverflowSettings, { mode: 'menu' }) : defaultOverflowSettings;
235
- }
236
- else {
237
- normalizedSettings = Object.assign(defaultOverflowSettings, { mode: overflow });
238
- }
239
- return normalizedSettings;
240
- };