@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.
- package/esm2022/localization/messages.mjs +2 -14
- package/esm2022/navigation.service.mjs +3 -5
- package/esm2022/package-metadata.mjs +2 -2
- package/esm2022/renderer.component.mjs +0 -8
- package/esm2022/toolbar.component.mjs +124 -716
- package/esm2022/tools/toolbar-button.component.mjs +2 -62
- package/esm2022/tools/toolbar-buttongroup.component.mjs +6 -87
- package/esm2022/tools/toolbar-dropdownbutton.component.mjs +11 -67
- package/esm2022/tools/toolbar-separator.component.mjs +0 -8
- package/esm2022/tools/toolbar-splitbutton.component.mjs +5 -61
- package/esm2022/tools/toolbar-tool.component.mjs +1 -9
- package/esm2022/tools/tools.service.mjs +0 -3
- package/esm2022/util.mjs +0 -17
- package/fesm2022/progress-kendo-angular-toolbar.mjs +155 -1300
- package/index.d.ts +0 -3
- package/localization/messages.d.ts +2 -10
- package/package.json +9 -9
- package/render-location.d.ts +1 -1
- package/toolbar.component.d.ts +6 -77
- package/tools/toolbar-button.component.d.ts +0 -1
- package/tools/toolbar-buttongroup.component.d.ts +0 -1
- package/tools/toolbar-dropdownbutton.component.d.ts +1 -2
- package/tools/toolbar-splitbutton.component.d.ts +0 -1
- package/tools/toolbar-tool.component.d.ts +0 -6
- package/tools/tools.service.d.ts +0 -1
- package/util.d.ts +0 -5
- package/common/overflow-mode.d.ts +0 -8
- package/common/overflow-settings.d.ts +0 -53
- package/common/scroll-buttons.d.ts +0 -12
- package/esm2022/common/overflow-mode.mjs +0 -5
- package/esm2022/common/overflow-settings.mjs +0 -5
- package/esm2022/common/scroll-buttons.mjs +0 -5
- package/esm2022/scroll.service.mjs +0 -102
- package/esm2022/scrollable-button.component.mjs +0 -162
- package/scroll.service.d.ts +0 -42
- package/scrollable-button.component.d.ts +0 -44
|
@@ -3,7 +3,7 @@
|
|
|
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, ViewChild, Input, Output, forwardRef,
|
|
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
9
|
import { Keys, isDocumentAvailable, guid, ResizeSensorComponent, ResizeBatchService } from '@progress/kendo-angular-common';
|
|
@@ -12,7 +12,7 @@ import { ComponentMessages, LocalizationService, L10N_PREFIX } from '@progress/k
|
|
|
12
12
|
import { validatePackage } from '@progress/kendo-licensing';
|
|
13
13
|
import { take, filter, takeUntil } from 'rxjs/operators';
|
|
14
14
|
import { Subject, Subscription, merge, fromEvent } from 'rxjs';
|
|
15
|
-
import {
|
|
15
|
+
import { moreVerticalIcon, caretAltDownIcon } from '@progress/kendo-svg-icons';
|
|
16
16
|
import { ButtonComponent, ButtonGroupComponent, DropDownButtonComponent, SplitButtonComponent } from '@progress/kendo-angular-buttons';
|
|
17
17
|
import { NgTemplateOutlet, NgFor, NgIf, NgClass, NgStyle } from '@angular/common';
|
|
18
18
|
import { IconWrapperComponent, IconsService } from '@progress/kendo-angular-icons';
|
|
@@ -25,8 +25,8 @@ const packageMetadata = {
|
|
|
25
25
|
productName: 'Kendo UI for Angular',
|
|
26
26
|
productCode: 'KENDOUIANGULAR',
|
|
27
27
|
productCodes: ['KENDOUIANGULAR'],
|
|
28
|
-
publishDate:
|
|
29
|
-
version: '18.1.0-develop.
|
|
28
|
+
publishDate: 1738318239,
|
|
29
|
+
version: '18.1.0-develop.4',
|
|
30
30
|
licensingDocsUrl: 'https://www.telerik.com/kendo-angular-ui/my-license/'
|
|
31
31
|
};
|
|
32
32
|
|
|
@@ -263,23 +263,6 @@ const getStylingClasses = (componentType, stylingOption, previousValue, newValue
|
|
|
263
263
|
* nodeType 1 is Element, nodeType 3 is Text
|
|
264
264
|
*/
|
|
265
265
|
const isElementOrTextNode = n => n.nodeType === 1 || n.nodeType === 3;
|
|
266
|
-
/**
|
|
267
|
-
* @hidden
|
|
268
|
-
*/
|
|
269
|
-
const normalizeOverflowSettings = (overflow) => {
|
|
270
|
-
const defaultOverflowSettings = { mode: 'none', scrollButtons: 'auto', scrollButtonsPosition: 'split' };
|
|
271
|
-
let normalizedSettings = {};
|
|
272
|
-
if (typeof overflow === 'object') {
|
|
273
|
-
normalizedSettings = Object.assign(defaultOverflowSettings, overflow);
|
|
274
|
-
}
|
|
275
|
-
else if (typeof overflow === 'boolean') {
|
|
276
|
-
normalizedSettings = overflow ? Object.assign(defaultOverflowSettings, { mode: 'menu' }) : defaultOverflowSettings;
|
|
277
|
-
}
|
|
278
|
-
else {
|
|
279
|
-
normalizedSettings = Object.assign(defaultOverflowSettings, { mode: overflow });
|
|
280
|
-
}
|
|
281
|
-
return normalizedSettings;
|
|
282
|
-
};
|
|
283
266
|
|
|
284
267
|
/**
|
|
285
268
|
* @hidden
|
|
@@ -416,11 +399,9 @@ class NavigationService {
|
|
|
416
399
|
}
|
|
417
400
|
}
|
|
418
401
|
focusOverflowButton() {
|
|
419
|
-
|
|
420
|
-
|
|
421
|
-
|
|
422
|
-
this.overflowButton.nativeElement.focus();
|
|
423
|
-
}
|
|
402
|
+
this.isOverflowButtonFocused = true;
|
|
403
|
+
this.overflowButton.nativeElement.tabIndex = 0;
|
|
404
|
+
this.overflowButton.nativeElement.focus();
|
|
424
405
|
}
|
|
425
406
|
isOverflowButtonVisible() {
|
|
426
407
|
return (isPresent(this.overflowButton) &&
|
|
@@ -439,17 +420,12 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
|
|
|
439
420
|
*/
|
|
440
421
|
class ToolBarToolComponent {
|
|
441
422
|
toolbarTemplate;
|
|
442
|
-
sectionTemplate;
|
|
443
423
|
popupTemplate;
|
|
444
424
|
tabIndex = -1; //Focus movement inside the toolbar is managed using roving tabindex.
|
|
445
425
|
overflows = true;
|
|
446
426
|
visibility;
|
|
447
427
|
element;
|
|
448
428
|
isBuiltInTool = false;
|
|
449
|
-
/**
|
|
450
|
-
* @hidden
|
|
451
|
-
*/
|
|
452
|
-
location;
|
|
453
429
|
constructor() {
|
|
454
430
|
this.element = inject(ElementRef);
|
|
455
431
|
}
|
|
@@ -491,7 +467,7 @@ class ToolBarToolComponent {
|
|
|
491
467
|
return false;
|
|
492
468
|
}
|
|
493
469
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: ToolBarToolComponent, deps: [], target: i0.ɵɵFactoryTarget.Directive });
|
|
494
|
-
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: "
|
|
470
|
+
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 });
|
|
495
471
|
}
|
|
496
472
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: ToolBarToolComponent, decorators: [{
|
|
497
473
|
type: Directive,
|
|
@@ -501,9 +477,6 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
|
|
|
501
477
|
}], ctorParameters: function () { return []; }, propDecorators: { toolbarTemplate: [{
|
|
502
478
|
type: ViewChild,
|
|
503
479
|
args: ['toolbarTemplate', { static: true }]
|
|
504
|
-
}], sectionTemplate: [{
|
|
505
|
-
type: ViewChild,
|
|
506
|
-
args: ['sectionTemplate', { static: true }]
|
|
507
480
|
}], popupTemplate: [{
|
|
508
481
|
type: ViewChild,
|
|
509
482
|
args: ['popupTemplate', { static: true }]
|
|
@@ -588,9 +561,6 @@ class ToolbarToolsService {
|
|
|
588
561
|
renderedTools = [];
|
|
589
562
|
overflowTools = [];
|
|
590
563
|
allTools = [];
|
|
591
|
-
reset() {
|
|
592
|
-
this.renderedTools = this.overflowTools = this.allTools = [];
|
|
593
|
-
}
|
|
594
564
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: ToolbarToolsService, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
|
|
595
565
|
static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: ToolbarToolsService });
|
|
596
566
|
}
|
|
@@ -631,7 +601,6 @@ class ToolBarRendererComponent {
|
|
|
631
601
|
if (!viewContainerRootNodes || viewContainerRootNodes.length === 0) {
|
|
632
602
|
return;
|
|
633
603
|
}
|
|
634
|
-
this.tool.location = this.location;
|
|
635
604
|
this.internalComponentRef = viewContainerRootNodes[0];
|
|
636
605
|
this.element = this.tool.element;
|
|
637
606
|
this.internalComponentRef.addEventListener('click', this.onClick);
|
|
@@ -648,11 +617,6 @@ class ToolBarRendererComponent {
|
|
|
648
617
|
this.renderer.setStyle(this.internalComponentRef, 'visibility', 'hidden');
|
|
649
618
|
this.renderer.setStyle(this.internalComponentRef, 'display', 'none');
|
|
650
619
|
}
|
|
651
|
-
else if (this.location === 'section') {
|
|
652
|
-
this.template = this.tool.toolbarTemplate;
|
|
653
|
-
this.renderer.setStyle(this.internalComponentRef, 'visibility', 'visible');
|
|
654
|
-
this.renderer.setStyle(this.internalComponentRef, 'display', 'inline-flex');
|
|
655
|
-
}
|
|
656
620
|
else {
|
|
657
621
|
this.template = this.tool.popupTemplate;
|
|
658
622
|
this.renderer.setStyle(this.internalComponentRef, 'display', 'none');
|
|
@@ -688,7 +652,6 @@ class ToolBarRendererComponent {
|
|
|
688
652
|
return this.internalComponentRef?.style?.display !== 'none';
|
|
689
653
|
}
|
|
690
654
|
refresh() {
|
|
691
|
-
this.tool.location = this.location;
|
|
692
655
|
if (this.resizable && this.internalComponentRef) {
|
|
693
656
|
if (this.location === 'toolbar') {
|
|
694
657
|
this.renderer.setStyle(this.internalComponentRef, 'visibility', this.tool.visibility);
|
|
@@ -707,7 +670,6 @@ class ToolBarRendererComponent {
|
|
|
707
670
|
this.rendererClick.emit({ context: this, event: ev });
|
|
708
671
|
};
|
|
709
672
|
updateTools() {
|
|
710
|
-
this.tool.location = this.location;
|
|
711
673
|
const isInToolbar = this.toolsService.renderedTools.some(t => t.tool === this.tool);
|
|
712
674
|
const isInPopup = this.toolsService.overflowTools.some(t => t.tool === this.tool);
|
|
713
675
|
if (this.location === 'toolbar') {
|
|
@@ -749,19 +711,11 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
|
|
|
749
711
|
*/
|
|
750
712
|
class ToolbarMessages extends ComponentMessages {
|
|
751
713
|
/**
|
|
752
|
-
* The title of the **
|
|
714
|
+
* The title of the **more tools** button in a responsive ToolBar
|
|
753
715
|
*/
|
|
754
716
|
moreToolsTitle;
|
|
755
|
-
/**
|
|
756
|
-
* The title for the **Previous Tool** button when the Toolbar is scrollable.
|
|
757
|
-
*/
|
|
758
|
-
previousToolButton;
|
|
759
|
-
/**
|
|
760
|
-
* The title for the **Next Tool** button when the Toolbar is scrollable.
|
|
761
|
-
*/
|
|
762
|
-
nextToolButton;
|
|
763
717
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: ToolbarMessages, deps: null, target: i0.ɵɵFactoryTarget.Directive });
|
|
764
|
-
static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "16.2.12", type: ToolbarMessages, selector: "kendo-toolbar-messages-base", inputs: { moreToolsTitle: "moreToolsTitle"
|
|
718
|
+
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 });
|
|
765
719
|
}
|
|
766
720
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: ToolbarMessages, decorators: [{
|
|
767
721
|
type: Directive,
|
|
@@ -771,10 +725,6 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
|
|
|
771
725
|
}]
|
|
772
726
|
}], propDecorators: { moreToolsTitle: [{
|
|
773
727
|
type: Input
|
|
774
|
-
}], previousToolButton: [{
|
|
775
|
-
type: Input
|
|
776
|
-
}], nextToolButton: [{
|
|
777
|
-
type: Input
|
|
778
728
|
}] } });
|
|
779
729
|
|
|
780
730
|
/**
|
|
@@ -808,251 +758,6 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
|
|
|
808
758
|
}]
|
|
809
759
|
}], ctorParameters: function () { return [{ type: i1.LocalizationService }]; } });
|
|
810
760
|
|
|
811
|
-
const DEFAULT_SCROLL_BEHAVIOR = 'smooth';
|
|
812
|
-
const DEFAULT_SCROLL_SPEED = 100;
|
|
813
|
-
/**
|
|
814
|
-
* @hidden
|
|
815
|
-
*/
|
|
816
|
-
class ScrollService {
|
|
817
|
-
ngZone;
|
|
818
|
-
localization;
|
|
819
|
-
owner;
|
|
820
|
-
position = 0;
|
|
821
|
-
scrollButtonActiveStateChange = new Subject();
|
|
822
|
-
get scrollElement() {
|
|
823
|
-
return this.owner.scrollContainer?.nativeElement;
|
|
824
|
-
}
|
|
825
|
-
get scrollContainerOverflowSize() {
|
|
826
|
-
if (!isDocumentAvailable()) {
|
|
827
|
-
return 0;
|
|
828
|
-
}
|
|
829
|
-
if (!this.scrollElement) {
|
|
830
|
-
return 0;
|
|
831
|
-
}
|
|
832
|
-
const overflowSize = Math.floor(this.scrollElement.scrollWidth - this.scrollElement.getBoundingClientRect().width);
|
|
833
|
-
return overflowSize < 0 ? 0 : overflowSize;
|
|
834
|
-
}
|
|
835
|
-
get toolsOverflow() {
|
|
836
|
-
return this.scrollContainerOverflowSize > 0;
|
|
837
|
-
}
|
|
838
|
-
constructor(ngZone, localization) {
|
|
839
|
-
this.ngZone = ngZone;
|
|
840
|
-
this.localization = localization;
|
|
841
|
-
}
|
|
842
|
-
toggleScrollButtonsState() {
|
|
843
|
-
const toolbar = this.owner;
|
|
844
|
-
if (!toolbar.hasScrollButtons) {
|
|
845
|
-
return;
|
|
846
|
-
}
|
|
847
|
-
const currentPrevButtonActive = !this.isDisabled('prev');
|
|
848
|
-
const currentNextButtonActive = !this.isDisabled('next');
|
|
849
|
-
const defaultOffset = 1;
|
|
850
|
-
const rtlDelta = this.localization.rtl ? -1 : 1;
|
|
851
|
-
const calculatedPrevButtonActive = (this.position * rtlDelta) > 0 && this.scrollContainerOverflowSize > 0;
|
|
852
|
-
const calculatedNextButtonActive = (this.position * rtlDelta) < this.scrollContainerOverflowSize - defaultOffset && this.scrollContainerOverflowSize > 0;
|
|
853
|
-
if (calculatedPrevButtonActive !== currentPrevButtonActive) {
|
|
854
|
-
this.ngZone.run(() => this.toggleButtonActiveState('prev', calculatedPrevButtonActive));
|
|
855
|
-
}
|
|
856
|
-
if (calculatedNextButtonActive !== currentNextButtonActive) {
|
|
857
|
-
this.ngZone.run(() => this.toggleButtonActiveState('next', calculatedNextButtonActive));
|
|
858
|
-
}
|
|
859
|
-
}
|
|
860
|
-
onScroll(e) {
|
|
861
|
-
this.position = e.target.scrollLeft;
|
|
862
|
-
this.toggleScrollButtonsState();
|
|
863
|
-
}
|
|
864
|
-
scrollTools(direction) {
|
|
865
|
-
this.calculateListPosition(direction, DEFAULT_SCROLL_SPEED);
|
|
866
|
-
if (this.scrollElement) {
|
|
867
|
-
this.scrollElement.scrollTo({ left: this.position, behavior: DEFAULT_SCROLL_BEHAVIOR });
|
|
868
|
-
}
|
|
869
|
-
this.toggleScrollButtonsState();
|
|
870
|
-
}
|
|
871
|
-
calculateListPosition(direction, scrollSpeed) {
|
|
872
|
-
if (direction === 'prev') {
|
|
873
|
-
if (!this.localization.rtl) {
|
|
874
|
-
this.position = this.position - scrollSpeed <= 0 ? 0 : this.position - scrollSpeed;
|
|
875
|
-
}
|
|
876
|
-
else {
|
|
877
|
-
this.position = this.position + scrollSpeed >= 0 ? 0 : this.position + scrollSpeed;
|
|
878
|
-
}
|
|
879
|
-
}
|
|
880
|
-
else if (direction === 'next' && this.position < this.scrollContainerOverflowSize) {
|
|
881
|
-
if (this.position + scrollSpeed > this.scrollContainerOverflowSize) {
|
|
882
|
-
this.position = this.scrollContainerOverflowSize;
|
|
883
|
-
return;
|
|
884
|
-
}
|
|
885
|
-
if (this.localization.rtl) {
|
|
886
|
-
this.position -= scrollSpeed;
|
|
887
|
-
}
|
|
888
|
-
else {
|
|
889
|
-
this.position += scrollSpeed;
|
|
890
|
-
}
|
|
891
|
-
}
|
|
892
|
-
}
|
|
893
|
-
toggleButtonActiveState(buttonType, active) {
|
|
894
|
-
this.scrollButtonActiveStateChange.next({ buttonType, active });
|
|
895
|
-
}
|
|
896
|
-
isDisabled = (buttonType) => this.owner[`${buttonType}ScrollButton`]?.nativeElement.classList.contains('k-disabled');
|
|
897
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: ScrollService, deps: [{ token: i0.NgZone }, { token: i1.LocalizationService }], target: i0.ɵɵFactoryTarget.Injectable });
|
|
898
|
-
static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: ScrollService });
|
|
899
|
-
}
|
|
900
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: ScrollService, decorators: [{
|
|
901
|
-
type: Injectable
|
|
902
|
-
}], ctorParameters: function () { return [{ type: i0.NgZone }, { type: i1.LocalizationService }]; } });
|
|
903
|
-
|
|
904
|
-
const DIRECTION_CLASSES = {
|
|
905
|
-
left: 'caret-alt-left',
|
|
906
|
-
right: 'caret-alt-right'
|
|
907
|
-
};
|
|
908
|
-
/**
|
|
909
|
-
* @hidden
|
|
910
|
-
*/
|
|
911
|
-
class ToolbarScrollableButtonComponent {
|
|
912
|
-
host;
|
|
913
|
-
renderer;
|
|
914
|
-
ngZone;
|
|
915
|
-
localization;
|
|
916
|
-
get prevClass() {
|
|
917
|
-
return this.prev;
|
|
918
|
-
}
|
|
919
|
-
get nextClass() {
|
|
920
|
-
return !this.prev;
|
|
921
|
-
}
|
|
922
|
-
/**
|
|
923
|
-
* @hidden
|
|
924
|
-
*/
|
|
925
|
-
onMouseDown(ev) {
|
|
926
|
-
ev.preventDefault();
|
|
927
|
-
ev.stopImmediatePropagation();
|
|
928
|
-
}
|
|
929
|
-
role = 'button';
|
|
930
|
-
prev = false;
|
|
931
|
-
overflow;
|
|
932
|
-
onClick = new EventEmitter();
|
|
933
|
-
get iconClass() {
|
|
934
|
-
return this.scrollButtonIconClass;
|
|
935
|
-
}
|
|
936
|
-
get customIconClass() {
|
|
937
|
-
return this.customScrollButtonIconClass;
|
|
938
|
-
}
|
|
939
|
-
get svgIcon() {
|
|
940
|
-
return this.scrollButtonSVGIcon;
|
|
941
|
-
}
|
|
942
|
-
caretAltLeftIcon = caretAltLeftIcon;
|
|
943
|
-
caretAltRightIcon = caretAltRightIcon;
|
|
944
|
-
subs = new Subscription();
|
|
945
|
-
constructor(host, renderer, ngZone, localization) {
|
|
946
|
-
this.host = host;
|
|
947
|
-
this.renderer = renderer;
|
|
948
|
-
this.ngZone = ngZone;
|
|
949
|
-
this.localization = localization;
|
|
950
|
-
}
|
|
951
|
-
ngAfterViewInit() {
|
|
952
|
-
this.ngZone.runOutsideAngular(() => {
|
|
953
|
-
this.subs.add(this.renderer.listen(this.host.nativeElement, 'click', this.clickHandler));
|
|
954
|
-
});
|
|
955
|
-
}
|
|
956
|
-
ngOnDestroy() {
|
|
957
|
-
this.subs.unsubscribe();
|
|
958
|
-
}
|
|
959
|
-
clickHandler = () => {
|
|
960
|
-
const buttonType = this.prev ? 'prev' : 'next';
|
|
961
|
-
this.onClick.emit(buttonType);
|
|
962
|
-
};
|
|
963
|
-
get scrollButtonIconClass() {
|
|
964
|
-
const defaultPrevIcon = !this.localization.rtl ?
|
|
965
|
-
DIRECTION_CLASSES.left :
|
|
966
|
-
DIRECTION_CLASSES.right;
|
|
967
|
-
const defaultNextIcon = !this.localization.rtl ?
|
|
968
|
-
DIRECTION_CLASSES.right :
|
|
969
|
-
DIRECTION_CLASSES.left;
|
|
970
|
-
if (typeof this.overflow === 'object') {
|
|
971
|
-
const prevIcon = typeof this.overflow.prevButtonIcon === 'undefined' ? defaultPrevIcon : '';
|
|
972
|
-
const nextIcon = typeof this.overflow.nextButtonIcon === 'undefined' ? defaultNextIcon : '';
|
|
973
|
-
if (prevIcon && this.prev) {
|
|
974
|
-
return prevIcon;
|
|
975
|
-
}
|
|
976
|
-
else if (nextIcon && !this.prev) {
|
|
977
|
-
return nextIcon;
|
|
978
|
-
}
|
|
979
|
-
}
|
|
980
|
-
}
|
|
981
|
-
get customScrollButtonIconClass() {
|
|
982
|
-
if (typeof this.overflow === 'object') {
|
|
983
|
-
const prevIcon = this.overflow.prevButtonIcon;
|
|
984
|
-
const nextIcon = this.overflow.nextButtonIcon;
|
|
985
|
-
if (prevIcon && this.prev) {
|
|
986
|
-
return `k-icon ${prevIcon}`;
|
|
987
|
-
}
|
|
988
|
-
if (nextIcon && !this.prev) {
|
|
989
|
-
return `k-icon ${nextIcon}`;
|
|
990
|
-
}
|
|
991
|
-
}
|
|
992
|
-
}
|
|
993
|
-
get scrollButtonSVGIcon() {
|
|
994
|
-
const defaultPrevSVGIcon = !this.localization.rtl ?
|
|
995
|
-
this.caretAltLeftIcon :
|
|
996
|
-
this.caretAltRightIcon;
|
|
997
|
-
const defaultNextSVGIcon = !this.localization.rtl ?
|
|
998
|
-
this.caretAltRightIcon :
|
|
999
|
-
this.caretAltLeftIcon;
|
|
1000
|
-
if (typeof this.overflow === 'object') {
|
|
1001
|
-
const prevIcon = this.overflow.prevSVGButtonIcon !== undefined ? this.overflow.prevSVGButtonIcon : defaultPrevSVGIcon;
|
|
1002
|
-
const nextIcon = this.overflow.nextSVGButtonIcon !== undefined ? this.overflow.nextSVGButtonIcon : defaultNextSVGIcon;
|
|
1003
|
-
if (prevIcon || nextIcon) {
|
|
1004
|
-
return this.prev ? prevIcon : nextIcon;
|
|
1005
|
-
}
|
|
1006
|
-
}
|
|
1007
|
-
}
|
|
1008
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: ToolbarScrollableButtonComponent, deps: [{ token: i0.ElementRef }, { token: i0.Renderer2 }, { token: i0.NgZone }, { token: i1.LocalizationService }], target: i0.ɵɵFactoryTarget.Component });
|
|
1009
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: ToolbarScrollableButtonComponent, isStandalone: true, selector: "[kendoToolbarScrollableButton]", inputs: { prev: "prev", overflow: "overflow" }, outputs: { onClick: "onClick" }, host: { listeners: { "mousedown": "onMouseDown($event)" }, properties: { "class.k-toolbar-prev": "this.prevClass", "class.k-toolbar-next": "this.nextClass", "attr.role": "this.role" } }, ngImport: i0, template: `
|
|
1010
|
-
<kendo-icon-wrapper
|
|
1011
|
-
[name]="iconClass"
|
|
1012
|
-
[customFontClass]="customIconClass"
|
|
1013
|
-
[svgIcon]="svgIcon"
|
|
1014
|
-
innerCssClass="k-button-icon"
|
|
1015
|
-
>
|
|
1016
|
-
</kendo-icon-wrapper>
|
|
1017
|
-
`, isInline: true, dependencies: [{ kind: "component", type: IconWrapperComponent, selector: "kendo-icon-wrapper", inputs: ["name", "svgIcon", "innerCssClass", "customFontClass", "size"], exportAs: ["kendoIconWrapper"] }] });
|
|
1018
|
-
}
|
|
1019
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: ToolbarScrollableButtonComponent, decorators: [{
|
|
1020
|
-
type: Component,
|
|
1021
|
-
args: [{
|
|
1022
|
-
template: `
|
|
1023
|
-
<kendo-icon-wrapper
|
|
1024
|
-
[name]="iconClass"
|
|
1025
|
-
[customFontClass]="customIconClass"
|
|
1026
|
-
[svgIcon]="svgIcon"
|
|
1027
|
-
innerCssClass="k-button-icon"
|
|
1028
|
-
>
|
|
1029
|
-
</kendo-icon-wrapper>
|
|
1030
|
-
`,
|
|
1031
|
-
// eslint-disable-next-line @angular-eslint/component-selector
|
|
1032
|
-
selector: '[kendoToolbarScrollableButton]',
|
|
1033
|
-
standalone: true,
|
|
1034
|
-
imports: [IconWrapperComponent]
|
|
1035
|
-
}]
|
|
1036
|
-
}], ctorParameters: function () { return [{ type: i0.ElementRef }, { type: i0.Renderer2 }, { type: i0.NgZone }, { type: i1.LocalizationService }]; }, propDecorators: { prevClass: [{
|
|
1037
|
-
type: HostBinding,
|
|
1038
|
-
args: ['class.k-toolbar-prev']
|
|
1039
|
-
}], nextClass: [{
|
|
1040
|
-
type: HostBinding,
|
|
1041
|
-
args: ['class.k-toolbar-next']
|
|
1042
|
-
}], onMouseDown: [{
|
|
1043
|
-
type: HostListener,
|
|
1044
|
-
args: ['mousedown', ['$event']]
|
|
1045
|
-
}], role: [{
|
|
1046
|
-
type: HostBinding,
|
|
1047
|
-
args: ['attr.role']
|
|
1048
|
-
}], prev: [{
|
|
1049
|
-
type: Input
|
|
1050
|
-
}], overflow: [{
|
|
1051
|
-
type: Input
|
|
1052
|
-
}], onClick: [{
|
|
1053
|
-
type: Output
|
|
1054
|
-
}] } });
|
|
1055
|
-
|
|
1056
761
|
/* eslint-disable no-case-declarations */
|
|
1057
762
|
const DEFAULT_SIZE = 'medium';
|
|
1058
763
|
const DEFAULT_FILL_MODE = 'solid';
|
|
@@ -1075,27 +780,13 @@ class ToolBarComponent {
|
|
|
1075
780
|
renderer;
|
|
1076
781
|
_cdr;
|
|
1077
782
|
toolsService;
|
|
1078
|
-
scrollService;
|
|
1079
783
|
get overflowClass() {
|
|
1080
784
|
return `k-button-${SIZES[this.size]}`;
|
|
1081
785
|
}
|
|
1082
786
|
/**
|
|
1083
|
-
*
|
|
1084
|
-
* @default false
|
|
787
|
+
* Hides the overflowing tools in a popup.
|
|
1085
788
|
*/
|
|
1086
|
-
|
|
1087
|
-
this._overflow = overflow;
|
|
1088
|
-
this.zone.onStable.pipe(take(1)).subscribe(() => this.onResize());
|
|
1089
|
-
}
|
|
1090
|
-
get overflow() {
|
|
1091
|
-
return this._overflow;
|
|
1092
|
-
}
|
|
1093
|
-
get show() {
|
|
1094
|
-
const buttonsVisibility = this.normalizedOverflow.scrollButtons;
|
|
1095
|
-
const showAuto = buttonsVisibility === 'auto' && this.showAutoButtons;
|
|
1096
|
-
const showAlways = buttonsVisibility === 'visible';
|
|
1097
|
-
return this.isScrollMode && (showAuto || showAlways);
|
|
1098
|
-
}
|
|
789
|
+
overflow = false;
|
|
1099
790
|
/**
|
|
1100
791
|
* @hidden
|
|
1101
792
|
*/
|
|
@@ -1103,39 +794,10 @@ class ToolBarComponent {
|
|
|
1103
794
|
this.overflow = value;
|
|
1104
795
|
}
|
|
1105
796
|
get resizable() {
|
|
1106
|
-
return this.
|
|
797
|
+
return this.overflow;
|
|
1107
798
|
}
|
|
1108
799
|
/**
|
|
1109
|
-
*
|
|
1110
|
-
*/
|
|
1111
|
-
get hasScrollButtons() {
|
|
1112
|
-
const visible = this.normalizedOverflow.mode === 'scroll' && this.normalizedOverflow.scrollButtons !== 'hidden';
|
|
1113
|
-
const position = this.normalizedOverflow.scrollButtonsPosition;
|
|
1114
|
-
return {
|
|
1115
|
-
visible,
|
|
1116
|
-
position
|
|
1117
|
-
};
|
|
1118
|
-
}
|
|
1119
|
-
/**
|
|
1120
|
-
* @hidden
|
|
1121
|
-
*/
|
|
1122
|
-
get isScrollMode() {
|
|
1123
|
-
return this.normalizedOverflow.mode === 'scroll';
|
|
1124
|
-
}
|
|
1125
|
-
/**
|
|
1126
|
-
* @hidden
|
|
1127
|
-
*/
|
|
1128
|
-
get showMenu() {
|
|
1129
|
-
return this.normalizedOverflow.mode === 'menu' || this.normalizedOverflow.mode === 'section';
|
|
1130
|
-
}
|
|
1131
|
-
/**
|
|
1132
|
-
* @hidden
|
|
1133
|
-
*/
|
|
1134
|
-
get overflowEnabled() {
|
|
1135
|
-
return this.normalizedOverflow.mode !== 'none';
|
|
1136
|
-
}
|
|
1137
|
-
/**
|
|
1138
|
-
* Configures the popup of the ToolBar overflow button ([see example](slug:responsive_toolbar#customizing-the-popup)).
|
|
800
|
+
* Configures the popup of the ToolBar overflow button ([see example]({% slug responsive_toolbar %}#toc-popup-customization)).
|
|
1139
801
|
*
|
|
1140
802
|
* The available options are:
|
|
1141
803
|
* - `animate: Boolean`—Controls the popup animation. By default, the open and close animations are enabled.
|
|
@@ -1202,15 +864,8 @@ class ToolBarComponent {
|
|
|
1202
864
|
allTools;
|
|
1203
865
|
overflowButton;
|
|
1204
866
|
popupTemplate;
|
|
1205
|
-
popupSectionTemplate;
|
|
1206
|
-
scrollContainer;
|
|
1207
867
|
resizeSensor;
|
|
1208
868
|
container;
|
|
1209
|
-
prevScrollButton;
|
|
1210
|
-
nextScrollButton;
|
|
1211
|
-
startButtonGroup;
|
|
1212
|
-
endButtonGroup;
|
|
1213
|
-
scrollSeparator;
|
|
1214
869
|
popupRef;
|
|
1215
870
|
direction;
|
|
1216
871
|
get appendTo() {
|
|
@@ -1239,40 +894,17 @@ class ToolBarComponent {
|
|
|
1239
894
|
get popupOpen() {
|
|
1240
895
|
return this._open;
|
|
1241
896
|
}
|
|
1242
|
-
/**
|
|
1243
|
-
* @hidden
|
|
1244
|
-
*/
|
|
1245
|
-
prevButtonIcon = caretAltLeftIcon;
|
|
1246
|
-
/**
|
|
1247
|
-
* @hidden
|
|
1248
|
-
*/
|
|
1249
|
-
nextButtonIcon = caretAltRightIcon;
|
|
1250
897
|
hostClass = true;
|
|
1251
|
-
get scrollableClass() {
|
|
1252
|
-
return this.isScrollMode;
|
|
1253
|
-
}
|
|
1254
|
-
get sectionClass() {
|
|
1255
|
-
return this.normalizedOverflow.mode === 'section';
|
|
1256
|
-
}
|
|
1257
|
-
_overflow = false;
|
|
1258
898
|
_popupSettings;
|
|
1259
899
|
cachedOverflowAnchorWidth;
|
|
1260
900
|
_open;
|
|
1261
901
|
toolbarKeydownListener;
|
|
1262
902
|
overflowKeydownListener;
|
|
1263
|
-
sectionKeydownListener;
|
|
1264
903
|
cancelRenderedToolsSubscription$ = new Subject();
|
|
1265
904
|
cachedGap;
|
|
1266
905
|
_size = DEFAULT_SIZE;
|
|
1267
906
|
_fillMode = DEFAULT_FILL_MODE;
|
|
1268
907
|
overflowButtonClickedTime = null;
|
|
1269
|
-
showAutoButtons = false;
|
|
1270
|
-
/**
|
|
1271
|
-
* @hidden
|
|
1272
|
-
*/
|
|
1273
|
-
get normalizedOverflow() {
|
|
1274
|
-
return normalizeOverflowSettings(this.overflow);
|
|
1275
|
-
}
|
|
1276
908
|
subscriptions = new Subscription();
|
|
1277
909
|
popupSubs = new Subscription();
|
|
1278
910
|
/**
|
|
@@ -1300,11 +932,12 @@ class ToolBarComponent {
|
|
|
1300
932
|
return this.direction;
|
|
1301
933
|
}
|
|
1302
934
|
get resizableClass() {
|
|
1303
|
-
return this.
|
|
935
|
+
return this.overflow;
|
|
1304
936
|
}
|
|
937
|
+
moreVerticalIcon = moreVerticalIcon;
|
|
1305
938
|
constructor(localization, popupService, refreshService, navigationService,
|
|
1306
939
|
// Needs to be public as it is being accessed in the Editor component
|
|
1307
|
-
element, zone, renderer, _cdr, toolsService
|
|
940
|
+
element, zone, renderer, _cdr, toolsService) {
|
|
1308
941
|
this.localization = localization;
|
|
1309
942
|
this.popupService = popupService;
|
|
1310
943
|
this.refreshService = refreshService;
|
|
@@ -1314,19 +947,13 @@ class ToolBarComponent {
|
|
|
1314
947
|
this.renderer = renderer;
|
|
1315
948
|
this._cdr = _cdr;
|
|
1316
949
|
this.toolsService = toolsService;
|
|
1317
|
-
this.scrollService = scrollService;
|
|
1318
950
|
validatePackage(packageMetadata);
|
|
1319
951
|
this.direction = localization.rtl ? 'rtl' : 'ltr';
|
|
1320
|
-
this.scrollService.owner = this;
|
|
1321
952
|
}
|
|
1322
953
|
ngAfterContentInit() {
|
|
1323
954
|
this.toolsService.allTools = this.allTools.toArray();
|
|
1324
955
|
this.subscriptions.add(this.allTools.changes.subscribe(() => {
|
|
1325
|
-
this.toolsService.reset();
|
|
1326
956
|
this.toolsService.allTools = this.allTools.toArray();
|
|
1327
|
-
this.allTools.forEach((tool) => {
|
|
1328
|
-
this.refreshService.refresh(tool);
|
|
1329
|
-
});
|
|
1330
957
|
this.zone.onStable.pipe(take(1)).subscribe(() => this.onResize());
|
|
1331
958
|
}));
|
|
1332
959
|
}
|
|
@@ -1383,11 +1010,9 @@ class ToolBarComponent {
|
|
|
1383
1010
|
}
|
|
1384
1011
|
});
|
|
1385
1012
|
});
|
|
1386
|
-
if (this.
|
|
1013
|
+
if (this.overflow) {
|
|
1387
1014
|
this.subscriptions.add(merge(this.resizeSensor.resize, this.toolsService.renderedToolsChange).subscribe(() => this.onResize()));
|
|
1388
|
-
|
|
1389
|
-
this.navigationService.overflowButton = this.overflowButton;
|
|
1390
|
-
}
|
|
1015
|
+
this.navigationService.overflowButton = this.overflowButton;
|
|
1391
1016
|
// because of https://github.com/telerik/kendo-angular-buttons/pull/276
|
|
1392
1017
|
// button icons are not rendered until onResize() is called
|
|
1393
1018
|
this.zone.runOutsideAngular(() => {
|
|
@@ -1398,38 +1023,6 @@ class ToolBarComponent {
|
|
|
1398
1023
|
});
|
|
1399
1024
|
});
|
|
1400
1025
|
}
|
|
1401
|
-
if (this.isScrollMode) {
|
|
1402
|
-
if (this.show) {
|
|
1403
|
-
if (this.normalizedOverflow.scrollButtons === 'visible' && !this.scrollService.toolsOverflow) {
|
|
1404
|
-
this.renderer.addClass(this.nextScrollButton.nativeElement, 'k-disabled');
|
|
1405
|
-
this.renderer.addClass(this.prevScrollButton.nativeElement, 'k-disabled');
|
|
1406
|
-
}
|
|
1407
|
-
else {
|
|
1408
|
-
const buttonToDisable = this.direction === 'rtl' ? this.nextScrollButton : this.prevScrollButton;
|
|
1409
|
-
this.renderer.addClass(buttonToDisable.nativeElement, 'k-disabled');
|
|
1410
|
-
}
|
|
1411
|
-
}
|
|
1412
|
-
if (this.hasScrollButtons.visible) {
|
|
1413
|
-
this.subscriptions.add(this.scrollService.scrollButtonActiveStateChange.subscribe((activeButtonSettings) => {
|
|
1414
|
-
if (this.show) {
|
|
1415
|
-
const action = activeButtonSettings.active ? 'remove' : 'add';
|
|
1416
|
-
const scrollButton = this[`${activeButtonSettings.buttonType}ScrollButton`].nativeElement;
|
|
1417
|
-
this.renderer[`${action}Class`](scrollButton, 'k-disabled');
|
|
1418
|
-
action === 'add' && this[`${activeButtonSettings.buttonType}ScrollButton`].nativeElement.blur();
|
|
1419
|
-
}
|
|
1420
|
-
}));
|
|
1421
|
-
}
|
|
1422
|
-
this.zone.runOutsideAngular(() => {
|
|
1423
|
-
this.subscriptions.add(this.renderer.listen(this.scrollContainer.nativeElement, 'scroll', (e) => {
|
|
1424
|
-
if (!this.hasScrollButtons.visible) {
|
|
1425
|
-
this.setScrollableOverlayClasses();
|
|
1426
|
-
}
|
|
1427
|
-
else {
|
|
1428
|
-
this.scrollService.onScroll(e);
|
|
1429
|
-
}
|
|
1430
|
-
}));
|
|
1431
|
-
});
|
|
1432
|
-
}
|
|
1433
1026
|
this.navigationService.setRenderedTools(this.toolsService.renderedTools);
|
|
1434
1027
|
const stylingOptions = ['size', 'fillMode'];
|
|
1435
1028
|
stylingOptions.forEach(option => {
|
|
@@ -1463,10 +1056,6 @@ class ToolBarComponent {
|
|
|
1463
1056
|
this.cancelRenderedToolsSubscription$.next();
|
|
1464
1057
|
this.subscriptions.unsubscribe();
|
|
1465
1058
|
}
|
|
1466
|
-
/**
|
|
1467
|
-
* @hidden
|
|
1468
|
-
*/
|
|
1469
|
-
showOverflowSeparator = false;
|
|
1470
1059
|
/**
|
|
1471
1060
|
* @hidden
|
|
1472
1061
|
*/
|
|
@@ -1479,31 +1068,6 @@ class ToolBarComponent {
|
|
|
1479
1068
|
get cdr() {
|
|
1480
1069
|
return this._cdr;
|
|
1481
1070
|
}
|
|
1482
|
-
/**
|
|
1483
|
-
* @hidden
|
|
1484
|
-
*/
|
|
1485
|
-
get sectionSizeClass() {
|
|
1486
|
-
return this.size === 'none' ? '' : `k-toolbar-items-list-${SIZES[this.size]}`;
|
|
1487
|
-
}
|
|
1488
|
-
/**
|
|
1489
|
-
* @hidden
|
|
1490
|
-
*/
|
|
1491
|
-
getScrollButtonTitle(buttonType) {
|
|
1492
|
-
let currentButton;
|
|
1493
|
-
if (this.localization.rtl) {
|
|
1494
|
-
currentButton = buttonType === 'prev' ? 'nextToolButton' : 'previousToolButton';
|
|
1495
|
-
}
|
|
1496
|
-
else {
|
|
1497
|
-
currentButton = buttonType === 'prev' ? 'previousToolButton' : 'nextToolButton';
|
|
1498
|
-
}
|
|
1499
|
-
return this.localization.get(currentButton);
|
|
1500
|
-
}
|
|
1501
|
-
/**
|
|
1502
|
-
* @hidden
|
|
1503
|
-
*/
|
|
1504
|
-
scrollTools(dir) {
|
|
1505
|
-
this.scrollService.scrollTools(dir);
|
|
1506
|
-
}
|
|
1507
1071
|
/**
|
|
1508
1072
|
* @hidden
|
|
1509
1073
|
*/
|
|
@@ -1511,17 +1075,6 @@ class ToolBarComponent {
|
|
|
1511
1075
|
this.navigationService.click(data);
|
|
1512
1076
|
this.element.nativeElement.setAttribute('tabindex', '-1');
|
|
1513
1077
|
}
|
|
1514
|
-
/**
|
|
1515
|
-
* @hidden
|
|
1516
|
-
*/
|
|
1517
|
-
overflowButtonIcon(iconType) {
|
|
1518
|
-
if (iconType === 'svg') {
|
|
1519
|
-
return this.normalizedOverflow.mode === 'section' ? moreHorizontalIcon : moreVerticalIcon;
|
|
1520
|
-
}
|
|
1521
|
-
else {
|
|
1522
|
-
return this.normalizedOverflow.mode === 'section' ? 'more-horizontal' : 'more-vertical';
|
|
1523
|
-
}
|
|
1524
|
-
}
|
|
1525
1078
|
/**
|
|
1526
1079
|
* @hidden
|
|
1527
1080
|
*/
|
|
@@ -1540,30 +1093,17 @@ class ToolBarComponent {
|
|
|
1540
1093
|
this.popupRef = null;
|
|
1541
1094
|
}
|
|
1542
1095
|
if (this.popupOpen) {
|
|
1543
|
-
|
|
1544
|
-
|
|
1545
|
-
|
|
1546
|
-
|
|
1547
|
-
|
|
1548
|
-
|
|
1549
|
-
|
|
1550
|
-
|
|
1551
|
-
|
|
1552
|
-
}
|
|
1553
|
-
|
|
1554
|
-
settings = {
|
|
1555
|
-
anchor: this.overflowButton,
|
|
1556
|
-
anchorAlign: this.popupSettings.anchorAlign,
|
|
1557
|
-
popupAlign: this.popupSettings.popupAlign,
|
|
1558
|
-
content: this.popupTemplate,
|
|
1559
|
-
appendTo: this.appendTo,
|
|
1560
|
-
animate: this.popupSettings.animate,
|
|
1561
|
-
popupClass: this.normalizePopupClasses(this.popupSettings.popupClass),
|
|
1562
|
-
positionMode: 'absolute'
|
|
1563
|
-
};
|
|
1564
|
-
}
|
|
1565
|
-
this.popupRef = this.popupService.open(settings);
|
|
1566
|
-
this.setPopupContentDimensions(isSection);
|
|
1096
|
+
this.popupRef = this.popupService.open({
|
|
1097
|
+
anchor: this.overflowButton,
|
|
1098
|
+
anchorAlign: this.popupSettings.anchorAlign,
|
|
1099
|
+
popupAlign: this.popupSettings.popupAlign,
|
|
1100
|
+
content: this.popupTemplate,
|
|
1101
|
+
appendTo: this.appendTo,
|
|
1102
|
+
animate: this.popupSettings.animate,
|
|
1103
|
+
popupClass: this.normalizePopupClasses(this.popupSettings.popupClass),
|
|
1104
|
+
positionMode: 'absolute'
|
|
1105
|
+
});
|
|
1106
|
+
this.setPopupContentDimensions();
|
|
1567
1107
|
this.popupSubs.add(this.popupRef.popupOpen.subscribe(this.onPopupOpen.bind(this)));
|
|
1568
1108
|
this.popupSubs.add(this.popupRef.popupClose.subscribe(this.onPopupClose.bind(this)));
|
|
1569
1109
|
}
|
|
@@ -1573,51 +1113,15 @@ class ToolBarComponent {
|
|
|
1573
1113
|
*/
|
|
1574
1114
|
onResize() {
|
|
1575
1115
|
if (isDocumentAvailable()) {
|
|
1576
|
-
|
|
1577
|
-
|
|
1578
|
-
|
|
1579
|
-
|
|
1580
|
-
this.displayAnchor();
|
|
1581
|
-
const isImmediateResize = (Date.now() - this.overflowButtonClickedTime) < immediateResizeThreshold;
|
|
1582
|
-
if (this.popupOpen && !isImmediateResize) {
|
|
1583
|
-
this.toggle();
|
|
1584
|
-
}
|
|
1585
|
-
}
|
|
1586
|
-
else if (this.isScrollMode) {
|
|
1587
|
-
if (this.normalizedOverflow.scrollButtons === 'auto') {
|
|
1588
|
-
const containerWidth = innerWidth(this.element.nativeElement);
|
|
1589
|
-
let scrollButtonsWidth = 0;
|
|
1590
|
-
if (this.showAutoButtons) {
|
|
1591
|
-
const separatorWidth = this.scrollSeparator.nativeElement.getBoundingClientRect().width + 2 * this.gap;
|
|
1592
|
-
if (this.hasScrollButtons.position === 'split') {
|
|
1593
|
-
scrollButtonsWidth = innerWidth(this.prevScrollButton.nativeElement) + innerWidth(this.nextScrollButton.nativeElement) + 2 * separatorWidth;
|
|
1594
|
-
}
|
|
1595
|
-
else if (this.hasScrollButtons.position === 'end') {
|
|
1596
|
-
scrollButtonsWidth = innerWidth(this.endButtonGroup.nativeElement) + separatorWidth;
|
|
1597
|
-
}
|
|
1598
|
-
else {
|
|
1599
|
-
scrollButtonsWidth = innerWidth(this.startButtonGroup.nativeElement) + separatorWidth;
|
|
1600
|
-
}
|
|
1601
|
-
}
|
|
1602
|
-
const shouldShowButtons = (this.childrenWidth + scrollButtonsWidth) > containerWidth;
|
|
1603
|
-
if (shouldShowButtons !== this.showAutoButtons) {
|
|
1604
|
-
this.showAutoButtons = shouldShowButtons;
|
|
1605
|
-
this.cdr.detectChanges();
|
|
1606
|
-
}
|
|
1607
|
-
this.scrollService.toggleScrollButtonsState();
|
|
1608
|
-
}
|
|
1609
|
-
else if (!this.hasScrollButtons.visible) {
|
|
1610
|
-
this.setScrollableOverlayClasses();
|
|
1611
|
-
}
|
|
1612
|
-
else if (!this.scrollService.toolsOverflow) {
|
|
1613
|
-
this.renderer.addClass(this.nextScrollButton.nativeElement, 'k-disabled');
|
|
1614
|
-
this.renderer.addClass(this.prevScrollButton.nativeElement, 'k-disabled');
|
|
1615
|
-
}
|
|
1616
|
-
else {
|
|
1617
|
-
this.scrollService.toggleScrollButtonsState();
|
|
1618
|
-
}
|
|
1619
|
-
}
|
|
1116
|
+
const containerWidth = innerWidth(this.element.nativeElement) - this.overflowAnchorWidth;
|
|
1117
|
+
this.shrink(containerWidth, this.childrenWidth);
|
|
1118
|
+
this.stretch(containerWidth, this.childrenWidth);
|
|
1119
|
+
this.displayAnchor();
|
|
1620
1120
|
this.resizeSensor?.acceptSize();
|
|
1121
|
+
const isImmediateResize = (Date.now() - this.overflowButtonClickedTime) < immediateResizeThreshold;
|
|
1122
|
+
if (this.popupOpen && !isImmediateResize) {
|
|
1123
|
+
this.toggle();
|
|
1124
|
+
}
|
|
1621
1125
|
}
|
|
1622
1126
|
}
|
|
1623
1127
|
/**
|
|
@@ -1625,94 +1129,45 @@ class ToolBarComponent {
|
|
|
1625
1129
|
*/
|
|
1626
1130
|
onPopupOpen() {
|
|
1627
1131
|
this.zone.runOutsideAngular(() => {
|
|
1628
|
-
|
|
1629
|
-
|
|
1630
|
-
|
|
1631
|
-
|
|
1632
|
-
|
|
1633
|
-
|
|
1634
|
-
|
|
1635
|
-
|
|
1636
|
-
|
|
1637
|
-
|
|
1638
|
-
|
|
1639
|
-
|
|
1640
|
-
|
|
1641
|
-
|
|
1642
|
-
|
|
1643
|
-
|
|
1644
|
-
|
|
1645
|
-
|
|
1646
|
-
|
|
1647
|
-
|
|
1648
|
-
|
|
1649
|
-
|
|
1650
|
-
|
|
1651
|
-
|
|
1652
|
-
|
|
1653
|
-
|
|
1654
|
-
|
|
1655
|
-
|
|
1656
|
-
|
|
1657
|
-
case Keys.Escape: {
|
|
1658
|
-
this.zone.run(() => this.toggle(false));
|
|
1659
|
-
const eventArgs = new PreventableEvent();
|
|
1660
|
-
this.close.emit(eventArgs);
|
|
1661
|
-
break;
|
|
1662
|
-
}
|
|
1663
|
-
case Keys.Tab:
|
|
1664
|
-
this.zone.run(() => {
|
|
1665
|
-
this.toggle(false);
|
|
1666
|
-
this.navigationService.resetNavigation();
|
|
1667
|
-
});
|
|
1668
|
-
break;
|
|
1669
|
-
default:
|
|
1670
|
-
break;
|
|
1671
|
-
}
|
|
1672
|
-
});
|
|
1673
|
-
}
|
|
1674
|
-
else {
|
|
1675
|
-
this.overflowKeydownListener = this.renderer.listen(this.popupRef.popupElement, 'keydown', (ev) => {
|
|
1676
|
-
switch (ev.keyCode) {
|
|
1677
|
-
case Keys.ArrowUp:
|
|
1678
|
-
this.zone.run(() => {
|
|
1679
|
-
ev.preventDefault();
|
|
1680
|
-
this.navigationService.focusPrev(ev);
|
|
1681
|
-
});
|
|
1682
|
-
break;
|
|
1683
|
-
case Keys.ArrowDown:
|
|
1684
|
-
this.zone.run(() => {
|
|
1132
|
+
this.overflowKeydownListener = this.renderer.listen(this.popupRef.popupElement, 'keydown', (ev) => {
|
|
1133
|
+
switch (ev.keyCode) {
|
|
1134
|
+
case Keys.ArrowUp:
|
|
1135
|
+
this.zone.run(() => {
|
|
1136
|
+
ev.preventDefault();
|
|
1137
|
+
this.navigationService.focusPrev(ev);
|
|
1138
|
+
});
|
|
1139
|
+
break;
|
|
1140
|
+
case Keys.ArrowDown:
|
|
1141
|
+
this.zone.run(() => {
|
|
1142
|
+
ev.preventDefault();
|
|
1143
|
+
this.navigationService.focusNext(ev);
|
|
1144
|
+
});
|
|
1145
|
+
break;
|
|
1146
|
+
case Keys.Escape:
|
|
1147
|
+
this.zone.run(() => this.toggle(false));
|
|
1148
|
+
const eventArgs = new PreventableEvent();
|
|
1149
|
+
this.close.emit(eventArgs);
|
|
1150
|
+
break;
|
|
1151
|
+
case Keys.Tab:
|
|
1152
|
+
this.zone.run(() => {
|
|
1153
|
+
this.toggle(false);
|
|
1154
|
+
this.navigationService.resetNavigation();
|
|
1155
|
+
});
|
|
1156
|
+
break;
|
|
1157
|
+
case Keys.Enter:
|
|
1158
|
+
case Keys.Space:
|
|
1159
|
+
this.zone.run(() => {
|
|
1160
|
+
if (ev.target.closest('.k-menu-item')) {
|
|
1685
1161
|
ev.preventDefault();
|
|
1686
|
-
|
|
1687
|
-
|
|
1688
|
-
|
|
1689
|
-
|
|
1690
|
-
|
|
1691
|
-
|
|
1692
|
-
|
|
1693
|
-
|
|
1694
|
-
|
|
1695
|
-
case Keys.Tab:
|
|
1696
|
-
this.zone.run(() => {
|
|
1697
|
-
this.toggle(false);
|
|
1698
|
-
this.navigationService.resetNavigation();
|
|
1699
|
-
});
|
|
1700
|
-
break;
|
|
1701
|
-
case Keys.Enter:
|
|
1702
|
-
case Keys.Space:
|
|
1703
|
-
this.zone.run(() => {
|
|
1704
|
-
if (ev.target.closest('.k-menu-item')) {
|
|
1705
|
-
ev.preventDefault();
|
|
1706
|
-
ev.target.click();
|
|
1707
|
-
ev.target.focus();
|
|
1708
|
-
}
|
|
1709
|
-
});
|
|
1710
|
-
break;
|
|
1711
|
-
default:
|
|
1712
|
-
break;
|
|
1713
|
-
}
|
|
1714
|
-
});
|
|
1715
|
-
}
|
|
1162
|
+
ev.target.click();
|
|
1163
|
+
ev.target.focus();
|
|
1164
|
+
}
|
|
1165
|
+
});
|
|
1166
|
+
break;
|
|
1167
|
+
default:
|
|
1168
|
+
break;
|
|
1169
|
+
}
|
|
1170
|
+
});
|
|
1716
1171
|
});
|
|
1717
1172
|
this.cancelRenderedToolsSubscription$.next();
|
|
1718
1173
|
this.navigationService.setRenderedTools(this.toolsService.overflowTools);
|
|
@@ -1735,9 +1190,6 @@ class ToolBarComponent {
|
|
|
1735
1190
|
if (this.overflowKeydownListener) {
|
|
1736
1191
|
this.overflowKeydownListener();
|
|
1737
1192
|
}
|
|
1738
|
-
if (this.sectionKeydownListener) {
|
|
1739
|
-
this.sectionKeydownListener();
|
|
1740
|
-
}
|
|
1741
1193
|
this.renderer.removeAttribute(this.overflowButton.nativeElement, 'aria-controls');
|
|
1742
1194
|
}
|
|
1743
1195
|
/**
|
|
@@ -1751,11 +1203,6 @@ class ToolBarComponent {
|
|
|
1751
1203
|
displayAnchor() {
|
|
1752
1204
|
const visibility = this.allTools.filter(t => t.overflows && t.responsive).length > 0 ? 'visible' : 'hidden';
|
|
1753
1205
|
this.overflowButton && this.renderer.setStyle(this.overflowButton.nativeElement, 'visibility', visibility);
|
|
1754
|
-
const isVisible = visibility === 'visible';
|
|
1755
|
-
if (isVisible !== this.showOverflowSeparator) {
|
|
1756
|
-
this.showOverflowSeparator = isVisible;
|
|
1757
|
-
this.cdr.detectChanges();
|
|
1758
|
-
}
|
|
1759
1206
|
}
|
|
1760
1207
|
get popupWidth() {
|
|
1761
1208
|
if (!this.popupSettings || !this.popupSettings.width) {
|
|
@@ -1770,7 +1217,7 @@ class ToolBarComponent {
|
|
|
1770
1217
|
return isNaN(this.popupSettings.height) ? this.popupSettings.height : `${this.popupSettings.height}px`;
|
|
1771
1218
|
}
|
|
1772
1219
|
get overflowAnchorWidth() {
|
|
1773
|
-
if (!this.
|
|
1220
|
+
if (!this.overflow) {
|
|
1774
1221
|
return 0;
|
|
1775
1222
|
}
|
|
1776
1223
|
if (!this.cachedOverflowAnchorWidth) {
|
|
@@ -1837,7 +1284,7 @@ class ToolBarComponent {
|
|
|
1837
1284
|
return r.tool === tool;
|
|
1838
1285
|
});
|
|
1839
1286
|
const width = renderedElement.width;
|
|
1840
|
-
tool.overflows = this.
|
|
1287
|
+
tool.overflows = this.overflow;
|
|
1841
1288
|
this.refreshService.refresh(tool);
|
|
1842
1289
|
return width;
|
|
1843
1290
|
}
|
|
@@ -1859,17 +1306,11 @@ class ToolBarComponent {
|
|
|
1859
1306
|
this.refreshService.refresh(tool);
|
|
1860
1307
|
return renderedElement.width; // returns 0 if `overflows` is true
|
|
1861
1308
|
}
|
|
1862
|
-
setPopupContentDimensions(
|
|
1309
|
+
setPopupContentDimensions() {
|
|
1863
1310
|
const popupContentContainer = this.popupRef.popup.instance.contentContainer.nativeElement;
|
|
1864
|
-
|
|
1865
|
-
|
|
1866
|
-
|
|
1867
|
-
}
|
|
1868
|
-
else {
|
|
1869
|
-
popupContentContainer.style.width = this.popupWidth;
|
|
1870
|
-
popupContentContainer.style.height = this.popupHeight;
|
|
1871
|
-
popupContentContainer.style.overflow = 'auto';
|
|
1872
|
-
}
|
|
1311
|
+
popupContentContainer.style.width = this.popupWidth;
|
|
1312
|
+
popupContentContainer.style.height = this.popupHeight;
|
|
1313
|
+
popupContentContainer.style.overflow = 'auto';
|
|
1873
1314
|
}
|
|
1874
1315
|
destroyPopup() {
|
|
1875
1316
|
if (this.popupRef) {
|
|
@@ -1889,10 +1330,7 @@ class ToolBarComponent {
|
|
|
1889
1330
|
}
|
|
1890
1331
|
}
|
|
1891
1332
|
normalizePopupClasses(classList) {
|
|
1892
|
-
let classes = ['k-toolbar-popup'];
|
|
1893
|
-
if (this.normalizedOverflow.mode === 'menu') {
|
|
1894
|
-
classes.push('k-menu-popup');
|
|
1895
|
-
}
|
|
1333
|
+
let classes = ['k-menu-popup', 'k-toolbar-popup'];
|
|
1896
1334
|
if (!classList) {
|
|
1897
1335
|
return classes;
|
|
1898
1336
|
}
|
|
@@ -1909,204 +1347,62 @@ class ToolBarComponent {
|
|
|
1909
1347
|
}
|
|
1910
1348
|
return classes;
|
|
1911
1349
|
}
|
|
1912
|
-
|
|
1913
|
-
|
|
1914
|
-
const container = this.scrollContainer?.nativeElement;
|
|
1915
|
-
if (!container) {
|
|
1916
|
-
return;
|
|
1917
|
-
}
|
|
1918
|
-
const scrollOffset = container.scrollLeft;
|
|
1919
|
-
const defaultOffset = 1;
|
|
1920
|
-
if (this.scrollService.toolsOverflow) {
|
|
1921
|
-
this.renderer.addClass(wrapper, 'k-toolbar-scrollable-overlay');
|
|
1922
|
-
if (scrollOffset === 0) {
|
|
1923
|
-
this.renderer.removeClass(wrapper, 'k-toolbar-scrollable-end');
|
|
1924
|
-
this.renderer.addClass(wrapper, 'k-toolbar-scrollable-start');
|
|
1925
|
-
}
|
|
1926
|
-
else if ((scrollOffset > 0 && scrollOffset < this.scrollService.scrollContainerOverflowSize - defaultOffset) || (scrollOffset < 0 && Math.abs(scrollOffset) < this.scrollService.scrollContainerOverflowSize - defaultOffset)) {
|
|
1927
|
-
this.renderer.removeClass(wrapper, 'k-toolbar-scrollable-end');
|
|
1928
|
-
this.renderer.removeClass(wrapper, 'k-toolbar-scrollable-start');
|
|
1929
|
-
}
|
|
1930
|
-
else {
|
|
1931
|
-
this.renderer.removeClass(wrapper, 'k-toolbar-scrollable-start');
|
|
1932
|
-
this.renderer.addClass(wrapper, 'k-toolbar-scrollable-end');
|
|
1933
|
-
}
|
|
1934
|
-
}
|
|
1935
|
-
else {
|
|
1936
|
-
this.renderer.removeClass(wrapper, 'k-toolbar-scrollable-overlay');
|
|
1937
|
-
this.renderer.removeClass(wrapper, 'k-toolbar-scrollable-end');
|
|
1938
|
-
this.renderer.removeClass(wrapper, 'k-toolbar-scrollable-start');
|
|
1939
|
-
}
|
|
1940
|
-
}
|
|
1941
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: ToolBarComponent, deps: [{ token: i1.LocalizationService }, { token: i2.PopupService }, { token: RefreshService }, { token: NavigationService }, { token: i0.ElementRef }, { token: i0.NgZone }, { token: i0.Renderer2 }, { token: i0.ChangeDetectorRef }, { token: ToolbarToolsService }, { token: ScrollService }], target: i0.ɵɵFactoryTarget.Component });
|
|
1942
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: ToolBarComponent, isStandalone: true, selector: "kendo-toolbar", inputs: { overflow: "overflow", resizable: "resizable", popupSettings: "popupSettings", fillMode: "fillMode", tabindex: "tabindex", size: "size", tabIndex: "tabIndex" }, outputs: { open: "open", close: "close" }, host: { listeners: { "focus": "onFocus($event)", "focusout": "onFocusOut($event)" }, properties: { "class.k-toolbar": "this.hostClass", "class.k-toolbar-scrollable": "this.scrollableClass", "class.k-toolbar-section": "this.sectionClass", "attr.role": "this.role", "attr.dir": "this.getDir", "class.k-toolbar-resizable": "this.resizableClass" } }, providers: [
|
|
1350
|
+
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 });
|
|
1351
|
+
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: [
|
|
1943
1352
|
RefreshService,
|
|
1944
1353
|
NavigationService,
|
|
1945
1354
|
LocalizationService,
|
|
1946
1355
|
ToolbarToolsService,
|
|
1947
|
-
ScrollService,
|
|
1948
1356
|
{
|
|
1949
1357
|
provide: L10N_PREFIX,
|
|
1950
1358
|
useValue: 'kendo.toolbar'
|
|
1951
1359
|
}
|
|
1952
|
-
], 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: "
|
|
1360
|
+
], 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: `
|
|
1953
1361
|
<ng-container kendoToolbarLocalizedMessages
|
|
1954
|
-
|
|
1955
|
-
|
|
1956
|
-
|
|
1957
|
-
i18n-previousToolButton="kendo.toolbar.previousToolButton|The title for the **Previous Tool** button when the Toolbar is scrollable."
|
|
1958
|
-
previousToolButton="Scroll left"
|
|
1959
|
-
|
|
1960
|
-
i18n-nextToolButton="kendo.toolbar.nextToolButton|The title for the **Next Tool** button when the Toolbar is scrollable."
|
|
1961
|
-
nextToolButton="Scroll right"
|
|
1362
|
+
i18n-moreToolsTitle="kendo.toolbar.moreToolsTitle|The title of the **more tools** button in a responsive ToolBar"
|
|
1363
|
+
moreToolsTitle="More tools"
|
|
1962
1364
|
>
|
|
1963
1365
|
</ng-container>
|
|
1964
|
-
<ng-container *
|
|
1965
|
-
|
|
1966
|
-
|
|
1967
|
-
|
|
1968
|
-
|
|
1969
|
-
|
|
1970
|
-
|
|
1971
|
-
|
|
1972
|
-
|
|
1973
|
-
|
|
1974
|
-
|
|
1975
|
-
|
|
1976
|
-
(onClick)="scrollTools($event)">
|
|
1977
|
-
</span>
|
|
1978
|
-
<div class="k-button-group k-button-group-solid" *ngIf="hasScrollButtons.position === 'start'" #startButtonGroup>
|
|
1979
|
-
<span #prevScrollButton
|
|
1980
|
-
kendoToolbarScrollableButton
|
|
1981
|
-
[prev]="true"
|
|
1982
|
-
[overflow]="normalizedOverflow"
|
|
1983
|
-
[title]="getScrollButtonTitle('prev')"
|
|
1984
|
-
class="k-toolbar-prev k-icon-button k-button k-button-solid k-button-solid-base k-rounded-md"
|
|
1985
|
-
[ngClass]="{
|
|
1986
|
-
'k-button-sm': size === 'small',
|
|
1987
|
-
'k-button-md': size === 'medium' || !size,
|
|
1988
|
-
'k-button-lg': size === 'large'
|
|
1989
|
-
}"
|
|
1990
|
-
(onClick)="scrollTools($event)">
|
|
1991
|
-
</span>
|
|
1992
|
-
<span #nextScrollButton
|
|
1993
|
-
kendoToolbarScrollableButton
|
|
1994
|
-
[prev]="false"
|
|
1995
|
-
[overflow]="normalizedOverflow"
|
|
1996
|
-
[title]="getScrollButtonTitle('next')"
|
|
1997
|
-
class="k-toolbar-next k-icon-button k-button k-button-solid k-button-solid-base k-rounded-md"
|
|
1998
|
-
[ngClass]="{
|
|
1999
|
-
'k-button-sm': size === 'small',
|
|
2000
|
-
'k-button-md': size === 'medium' || !size,
|
|
2001
|
-
'k-button-lg': size === 'large'
|
|
2002
|
-
}"
|
|
2003
|
-
(onClick)="scrollTools($event)">
|
|
2004
|
-
</span>
|
|
2005
|
-
</div>
|
|
2006
|
-
<div class="k-toolbar-separator k-toolbar-button-separator k-separator" #scrollSeparator></div>
|
|
1366
|
+
<ng-container *ngFor="let tool of allTools; let index = index"
|
|
1367
|
+
kendoToolbarRenderer
|
|
1368
|
+
[tool]="tool"
|
|
1369
|
+
location="toolbar"
|
|
1370
|
+
[resizable]="overflow"
|
|
1371
|
+
(rendererClick)="onRendererClick($event)"
|
|
1372
|
+
[ngTemplateOutlet]="tool.isBuiltInTool ? tool.toolbarTemplate : wrapper">
|
|
1373
|
+
<ng-template #wrapper>
|
|
1374
|
+
<div class="k-toolbar-item">
|
|
1375
|
+
<ng-container [ngTemplateOutlet]="tool.toolbarTemplate"></ng-container>
|
|
1376
|
+
</div>
|
|
1377
|
+
</ng-template>
|
|
2007
1378
|
</ng-container>
|
|
2008
|
-
<div class="k-toolbar-items k-toolbar-items-scroll" *ngIf="isScrollMode; else noScroll" #scrollContainer>
|
|
2009
|
-
<ng-container *ngFor="let tool of allTools; let index = index"
|
|
2010
|
-
kendoToolbarRenderer
|
|
2011
|
-
[tool]="tool"
|
|
2012
|
-
location="toolbar"
|
|
2013
|
-
[resizable]="resizable"
|
|
2014
|
-
(rendererClick)="onRendererClick($event)"
|
|
2015
|
-
[ngTemplateOutlet]="tool.isBuiltInTool ? tool.toolbarTemplate : wrapper">
|
|
2016
|
-
<ng-template #wrapper>
|
|
2017
|
-
<div class="k-toolbar-item">
|
|
2018
|
-
<ng-container [ngTemplateOutlet]="tool.toolbarTemplate"></ng-container>
|
|
2019
|
-
</div>
|
|
2020
|
-
</ng-template>
|
|
2021
|
-
</ng-container>
|
|
2022
|
-
</div>
|
|
2023
|
-
<ng-template #noScroll>
|
|
2024
|
-
<ng-container *ngFor="let tool of allTools; let index = index"
|
|
2025
|
-
kendoToolbarRenderer
|
|
2026
|
-
[tool]="tool"
|
|
2027
|
-
location="toolbar"
|
|
2028
|
-
[resizable]="resizable"
|
|
2029
|
-
(rendererClick)="onRendererClick($event)"
|
|
2030
|
-
[ngTemplateOutlet]="tool.isBuiltInTool ? tool.toolbarTemplate : wrapper">
|
|
2031
|
-
<ng-template #wrapper>
|
|
2032
|
-
<div class="k-toolbar-item">
|
|
2033
|
-
<ng-container [ngTemplateOutlet]="tool.toolbarTemplate"></ng-container>
|
|
2034
|
-
</div>
|
|
2035
|
-
</ng-template>
|
|
2036
|
-
</ng-container>
|
|
2037
|
-
</ng-template>
|
|
2038
|
-
<div class="k-toolbar-separator k-toolbar-button-separator k-separator" *ngIf="showOverflowSeparator"></div>
|
|
2039
1379
|
<button
|
|
2040
1380
|
kendoButton
|
|
2041
1381
|
fillMode="flat"
|
|
2042
1382
|
#overflowButton
|
|
2043
1383
|
type="button"
|
|
2044
|
-
|
|
2045
|
-
[svgIcon]="
|
|
1384
|
+
icon="more-vertical"
|
|
1385
|
+
[svgIcon]="moreVerticalIcon"
|
|
2046
1386
|
tabindex="-1"
|
|
2047
1387
|
[title]="moreToolsTitle"
|
|
2048
1388
|
[attr.aria-label]="moreToolsTitle"
|
|
2049
1389
|
[attr.aria-expanded]="popupOpen"
|
|
2050
1390
|
[id]="overflowBtnId"
|
|
2051
|
-
|
|
2052
|
-
*ngIf="
|
|
1391
|
+
aria-haspopup="menu"
|
|
1392
|
+
*ngIf="overflow"
|
|
2053
1393
|
[style.visibility]="'hidden'"
|
|
2054
1394
|
[style.position]="'relative'"
|
|
1395
|
+
[style.margin-inline-start]="'auto'"
|
|
2055
1396
|
class="k-toolbar-overflow-button"
|
|
2056
1397
|
[ngClass]="overflowClass"
|
|
2057
1398
|
(click)="showPopup()"
|
|
2058
1399
|
>
|
|
2059
1400
|
</button>
|
|
2060
|
-
<ng-container *ngIf="show && (hasScrollButtons.position === 'split' || hasScrollButtons.position === 'end')">
|
|
2061
|
-
<div class="k-toolbar-separator k-toolbar-button-separator k-separator"></div>
|
|
2062
|
-
<span *ngIf="hasScrollButtons.position === 'split'" #nextScrollButton
|
|
2063
|
-
kendoToolbarScrollableButton
|
|
2064
|
-
[prev]="false"
|
|
2065
|
-
[overflow]="normalizedOverflow"
|
|
2066
|
-
[title]="getScrollButtonTitle('next')"
|
|
2067
|
-
class="k-toolbar-next k-icon-button k-button k-button-solid k-button-solid-base k-rounded-md"
|
|
2068
|
-
[ngClass]="{
|
|
2069
|
-
'k-button-sm': size === 'small',
|
|
2070
|
-
'k-button-md': size === 'medium' || !size,
|
|
2071
|
-
'k-button-lg': size === 'large'
|
|
2072
|
-
}"
|
|
2073
|
-
(onClick)="scrollTools($event)">
|
|
2074
|
-
</span>
|
|
2075
|
-
<div class="k-button-group k-button-group-solid" *ngIf="hasScrollButtons.position === 'end'" #endButtonGroup>
|
|
2076
|
-
<span #prevScrollButton
|
|
2077
|
-
kendoToolbarScrollableButton
|
|
2078
|
-
[prev]="true"
|
|
2079
|
-
[overflow]="normalizedOverflow"
|
|
2080
|
-
[title]="getScrollButtonTitle('prev')"
|
|
2081
|
-
class="k-toolbar-prev k-icon-button k-button k-button-solid k-button-solid-base k-rounded-md"
|
|
2082
|
-
[ngClass]="{
|
|
2083
|
-
'k-button-sm': size === 'small',
|
|
2084
|
-
'k-button-md': size === 'medium' || !size,
|
|
2085
|
-
'k-button-lg': size === 'large'
|
|
2086
|
-
}"
|
|
2087
|
-
(onClick)="scrollTools($event)">
|
|
2088
|
-
</span>
|
|
2089
|
-
<span #nextScrollButton
|
|
2090
|
-
kendoToolbarScrollableButton
|
|
2091
|
-
[prev]="false"
|
|
2092
|
-
[overflow]="normalizedOverflow"
|
|
2093
|
-
[title]="getScrollButtonTitle('next')"
|
|
2094
|
-
class="k-toolbar-next k-icon-button k-button k-button-solid k-button-solid-base k-rounded-md"
|
|
2095
|
-
[ngClass]="{
|
|
2096
|
-
'k-button-sm': size === 'small',
|
|
2097
|
-
'k-button-md': size === 'medium' || !size,
|
|
2098
|
-
'k-button-lg': size === 'large'
|
|
2099
|
-
}"
|
|
2100
|
-
(onClick)="scrollTools($event)">
|
|
2101
|
-
</span>
|
|
2102
|
-
</div>
|
|
2103
|
-
</ng-container>
|
|
2104
1401
|
<ng-template #popupTemplate>
|
|
2105
1402
|
<div
|
|
2106
1403
|
class="k-menu-group k-menu-group-md"
|
|
2107
1404
|
role="menu"
|
|
2108
1405
|
[id]="popupId"
|
|
2109
|
-
[attr.dir]="direction === 'rtl' ? 'rtl' : null"
|
|
2110
1406
|
[attr.aria-labelledby]="overflowBtnId">
|
|
2111
1407
|
<ng-container *ngFor="let tool of overflowTools; let index = index">
|
|
2112
1408
|
<ng-template
|
|
@@ -2114,7 +1410,7 @@ class ToolBarComponent {
|
|
|
2114
1410
|
kendoToolbarRenderer
|
|
2115
1411
|
[tool]="tool"
|
|
2116
1412
|
location="overflow"
|
|
2117
|
-
[resizable]="
|
|
1413
|
+
[resizable]="overflow"
|
|
2118
1414
|
(rendererClick)="onRendererClick($event)"
|
|
2119
1415
|
[ngTemplateOutlet]="tool.isBuiltInTool ? tool.popupTemplate : popupWrapper"></ng-template>
|
|
2120
1416
|
<ng-template #popupWrapper>
|
|
@@ -2125,29 +1421,9 @@ class ToolBarComponent {
|
|
|
2125
1421
|
</ng-container>
|
|
2126
1422
|
</div>
|
|
2127
1423
|
</ng-template>
|
|
2128
|
-
<ng-template #popupSectionTemplate>
|
|
2129
|
-
<span class="k-toolbar-items-list k-toolbar-items-list-solid"
|
|
2130
|
-
[ngClass]="sectionSizeClass"
|
|
2131
|
-
role="toolbar"
|
|
2132
|
-
[id]="popupId"
|
|
2133
|
-
[attr.dir]="direction === 'rtl' ? 'rtl' : null"
|
|
2134
|
-
[attr.aria-labelledby]="overflowBtnId">
|
|
2135
|
-
<ng-container *ngFor="let tool of overflowTools; let index = index"
|
|
2136
|
-
kendoToolbarRenderer
|
|
2137
|
-
[tool]="tool"
|
|
2138
|
-
location="section"
|
|
2139
|
-
[resizable]="resizable"
|
|
2140
|
-
(rendererClick)="onRendererClick($event)"
|
|
2141
|
-
[ngTemplateOutlet]="tool.isBuiltInTool ? tool.sectionTemplate : wrapper">
|
|
2142
|
-
<ng-template #wrapper>
|
|
2143
|
-
<ng-container [ngTemplateOutlet]="tool.sectionTemplate"></ng-container>
|
|
2144
|
-
</ng-template>
|
|
2145
|
-
</ng-container>
|
|
2146
|
-
</span>
|
|
2147
|
-
</ng-template>
|
|
2148
1424
|
<ng-container #container></ng-container>
|
|
2149
|
-
<kendo-resize-sensor *ngIf="
|
|
2150
|
-
`, 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"] }
|
|
1425
|
+
<kendo-resize-sensor *ngIf="overflow" #resizeSensor></kendo-resize-sensor>
|
|
1426
|
+
`, 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"] }] });
|
|
2151
1427
|
}
|
|
2152
1428
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: ToolBarComponent, decorators: [{
|
|
2153
1429
|
type: Component,
|
|
@@ -2158,7 +1434,6 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
|
|
|
2158
1434
|
NavigationService,
|
|
2159
1435
|
LocalizationService,
|
|
2160
1436
|
ToolbarToolsService,
|
|
2161
|
-
ScrollService,
|
|
2162
1437
|
{
|
|
2163
1438
|
provide: L10N_PREFIX,
|
|
2164
1439
|
useValue: 'kendo.toolbar'
|
|
@@ -2167,162 +1442,50 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
|
|
|
2167
1442
|
selector: 'kendo-toolbar',
|
|
2168
1443
|
template: `
|
|
2169
1444
|
<ng-container kendoToolbarLocalizedMessages
|
|
2170
|
-
|
|
2171
|
-
|
|
2172
|
-
|
|
2173
|
-
i18n-previousToolButton="kendo.toolbar.previousToolButton|The title for the **Previous Tool** button when the Toolbar is scrollable."
|
|
2174
|
-
previousToolButton="Scroll left"
|
|
2175
|
-
|
|
2176
|
-
i18n-nextToolButton="kendo.toolbar.nextToolButton|The title for the **Next Tool** button when the Toolbar is scrollable."
|
|
2177
|
-
nextToolButton="Scroll right"
|
|
1445
|
+
i18n-moreToolsTitle="kendo.toolbar.moreToolsTitle|The title of the **more tools** button in a responsive ToolBar"
|
|
1446
|
+
moreToolsTitle="More tools"
|
|
2178
1447
|
>
|
|
2179
1448
|
</ng-container>
|
|
2180
|
-
<ng-container *
|
|
2181
|
-
|
|
2182
|
-
|
|
2183
|
-
|
|
2184
|
-
|
|
2185
|
-
|
|
2186
|
-
|
|
2187
|
-
|
|
2188
|
-
|
|
2189
|
-
|
|
2190
|
-
|
|
2191
|
-
|
|
2192
|
-
(onClick)="scrollTools($event)">
|
|
2193
|
-
</span>
|
|
2194
|
-
<div class="k-button-group k-button-group-solid" *ngIf="hasScrollButtons.position === 'start'" #startButtonGroup>
|
|
2195
|
-
<span #prevScrollButton
|
|
2196
|
-
kendoToolbarScrollableButton
|
|
2197
|
-
[prev]="true"
|
|
2198
|
-
[overflow]="normalizedOverflow"
|
|
2199
|
-
[title]="getScrollButtonTitle('prev')"
|
|
2200
|
-
class="k-toolbar-prev k-icon-button k-button k-button-solid k-button-solid-base k-rounded-md"
|
|
2201
|
-
[ngClass]="{
|
|
2202
|
-
'k-button-sm': size === 'small',
|
|
2203
|
-
'k-button-md': size === 'medium' || !size,
|
|
2204
|
-
'k-button-lg': size === 'large'
|
|
2205
|
-
}"
|
|
2206
|
-
(onClick)="scrollTools($event)">
|
|
2207
|
-
</span>
|
|
2208
|
-
<span #nextScrollButton
|
|
2209
|
-
kendoToolbarScrollableButton
|
|
2210
|
-
[prev]="false"
|
|
2211
|
-
[overflow]="normalizedOverflow"
|
|
2212
|
-
[title]="getScrollButtonTitle('next')"
|
|
2213
|
-
class="k-toolbar-next k-icon-button k-button k-button-solid k-button-solid-base k-rounded-md"
|
|
2214
|
-
[ngClass]="{
|
|
2215
|
-
'k-button-sm': size === 'small',
|
|
2216
|
-
'k-button-md': size === 'medium' || !size,
|
|
2217
|
-
'k-button-lg': size === 'large'
|
|
2218
|
-
}"
|
|
2219
|
-
(onClick)="scrollTools($event)">
|
|
2220
|
-
</span>
|
|
2221
|
-
</div>
|
|
2222
|
-
<div class="k-toolbar-separator k-toolbar-button-separator k-separator" #scrollSeparator></div>
|
|
1449
|
+
<ng-container *ngFor="let tool of allTools; let index = index"
|
|
1450
|
+
kendoToolbarRenderer
|
|
1451
|
+
[tool]="tool"
|
|
1452
|
+
location="toolbar"
|
|
1453
|
+
[resizable]="overflow"
|
|
1454
|
+
(rendererClick)="onRendererClick($event)"
|
|
1455
|
+
[ngTemplateOutlet]="tool.isBuiltInTool ? tool.toolbarTemplate : wrapper">
|
|
1456
|
+
<ng-template #wrapper>
|
|
1457
|
+
<div class="k-toolbar-item">
|
|
1458
|
+
<ng-container [ngTemplateOutlet]="tool.toolbarTemplate"></ng-container>
|
|
1459
|
+
</div>
|
|
1460
|
+
</ng-template>
|
|
2223
1461
|
</ng-container>
|
|
2224
|
-
<div class="k-toolbar-items k-toolbar-items-scroll" *ngIf="isScrollMode; else noScroll" #scrollContainer>
|
|
2225
|
-
<ng-container *ngFor="let tool of allTools; let index = index"
|
|
2226
|
-
kendoToolbarRenderer
|
|
2227
|
-
[tool]="tool"
|
|
2228
|
-
location="toolbar"
|
|
2229
|
-
[resizable]="resizable"
|
|
2230
|
-
(rendererClick)="onRendererClick($event)"
|
|
2231
|
-
[ngTemplateOutlet]="tool.isBuiltInTool ? tool.toolbarTemplate : wrapper">
|
|
2232
|
-
<ng-template #wrapper>
|
|
2233
|
-
<div class="k-toolbar-item">
|
|
2234
|
-
<ng-container [ngTemplateOutlet]="tool.toolbarTemplate"></ng-container>
|
|
2235
|
-
</div>
|
|
2236
|
-
</ng-template>
|
|
2237
|
-
</ng-container>
|
|
2238
|
-
</div>
|
|
2239
|
-
<ng-template #noScroll>
|
|
2240
|
-
<ng-container *ngFor="let tool of allTools; let index = index"
|
|
2241
|
-
kendoToolbarRenderer
|
|
2242
|
-
[tool]="tool"
|
|
2243
|
-
location="toolbar"
|
|
2244
|
-
[resizable]="resizable"
|
|
2245
|
-
(rendererClick)="onRendererClick($event)"
|
|
2246
|
-
[ngTemplateOutlet]="tool.isBuiltInTool ? tool.toolbarTemplate : wrapper">
|
|
2247
|
-
<ng-template #wrapper>
|
|
2248
|
-
<div class="k-toolbar-item">
|
|
2249
|
-
<ng-container [ngTemplateOutlet]="tool.toolbarTemplate"></ng-container>
|
|
2250
|
-
</div>
|
|
2251
|
-
</ng-template>
|
|
2252
|
-
</ng-container>
|
|
2253
|
-
</ng-template>
|
|
2254
|
-
<div class="k-toolbar-separator k-toolbar-button-separator k-separator" *ngIf="showOverflowSeparator"></div>
|
|
2255
1462
|
<button
|
|
2256
1463
|
kendoButton
|
|
2257
1464
|
fillMode="flat"
|
|
2258
1465
|
#overflowButton
|
|
2259
1466
|
type="button"
|
|
2260
|
-
|
|
2261
|
-
[svgIcon]="
|
|
1467
|
+
icon="more-vertical"
|
|
1468
|
+
[svgIcon]="moreVerticalIcon"
|
|
2262
1469
|
tabindex="-1"
|
|
2263
1470
|
[title]="moreToolsTitle"
|
|
2264
1471
|
[attr.aria-label]="moreToolsTitle"
|
|
2265
1472
|
[attr.aria-expanded]="popupOpen"
|
|
2266
1473
|
[id]="overflowBtnId"
|
|
2267
|
-
|
|
2268
|
-
*ngIf="
|
|
1474
|
+
aria-haspopup="menu"
|
|
1475
|
+
*ngIf="overflow"
|
|
2269
1476
|
[style.visibility]="'hidden'"
|
|
2270
1477
|
[style.position]="'relative'"
|
|
1478
|
+
[style.margin-inline-start]="'auto'"
|
|
2271
1479
|
class="k-toolbar-overflow-button"
|
|
2272
1480
|
[ngClass]="overflowClass"
|
|
2273
1481
|
(click)="showPopup()"
|
|
2274
1482
|
>
|
|
2275
1483
|
</button>
|
|
2276
|
-
<ng-container *ngIf="show && (hasScrollButtons.position === 'split' || hasScrollButtons.position === 'end')">
|
|
2277
|
-
<div class="k-toolbar-separator k-toolbar-button-separator k-separator"></div>
|
|
2278
|
-
<span *ngIf="hasScrollButtons.position === 'split'" #nextScrollButton
|
|
2279
|
-
kendoToolbarScrollableButton
|
|
2280
|
-
[prev]="false"
|
|
2281
|
-
[overflow]="normalizedOverflow"
|
|
2282
|
-
[title]="getScrollButtonTitle('next')"
|
|
2283
|
-
class="k-toolbar-next k-icon-button k-button k-button-solid k-button-solid-base k-rounded-md"
|
|
2284
|
-
[ngClass]="{
|
|
2285
|
-
'k-button-sm': size === 'small',
|
|
2286
|
-
'k-button-md': size === 'medium' || !size,
|
|
2287
|
-
'k-button-lg': size === 'large'
|
|
2288
|
-
}"
|
|
2289
|
-
(onClick)="scrollTools($event)">
|
|
2290
|
-
</span>
|
|
2291
|
-
<div class="k-button-group k-button-group-solid" *ngIf="hasScrollButtons.position === 'end'" #endButtonGroup>
|
|
2292
|
-
<span #prevScrollButton
|
|
2293
|
-
kendoToolbarScrollableButton
|
|
2294
|
-
[prev]="true"
|
|
2295
|
-
[overflow]="normalizedOverflow"
|
|
2296
|
-
[title]="getScrollButtonTitle('prev')"
|
|
2297
|
-
class="k-toolbar-prev k-icon-button k-button k-button-solid k-button-solid-base k-rounded-md"
|
|
2298
|
-
[ngClass]="{
|
|
2299
|
-
'k-button-sm': size === 'small',
|
|
2300
|
-
'k-button-md': size === 'medium' || !size,
|
|
2301
|
-
'k-button-lg': size === 'large'
|
|
2302
|
-
}"
|
|
2303
|
-
(onClick)="scrollTools($event)">
|
|
2304
|
-
</span>
|
|
2305
|
-
<span #nextScrollButton
|
|
2306
|
-
kendoToolbarScrollableButton
|
|
2307
|
-
[prev]="false"
|
|
2308
|
-
[overflow]="normalizedOverflow"
|
|
2309
|
-
[title]="getScrollButtonTitle('next')"
|
|
2310
|
-
class="k-toolbar-next k-icon-button k-button k-button-solid k-button-solid-base k-rounded-md"
|
|
2311
|
-
[ngClass]="{
|
|
2312
|
-
'k-button-sm': size === 'small',
|
|
2313
|
-
'k-button-md': size === 'medium' || !size,
|
|
2314
|
-
'k-button-lg': size === 'large'
|
|
2315
|
-
}"
|
|
2316
|
-
(onClick)="scrollTools($event)">
|
|
2317
|
-
</span>
|
|
2318
|
-
</div>
|
|
2319
|
-
</ng-container>
|
|
2320
1484
|
<ng-template #popupTemplate>
|
|
2321
1485
|
<div
|
|
2322
1486
|
class="k-menu-group k-menu-group-md"
|
|
2323
1487
|
role="menu"
|
|
2324
1488
|
[id]="popupId"
|
|
2325
|
-
[attr.dir]="direction === 'rtl' ? 'rtl' : null"
|
|
2326
1489
|
[attr.aria-labelledby]="overflowBtnId">
|
|
2327
1490
|
<ng-container *ngFor="let tool of overflowTools; let index = index">
|
|
2328
1491
|
<ng-template
|
|
@@ -2330,7 +1493,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
|
|
|
2330
1493
|
kendoToolbarRenderer
|
|
2331
1494
|
[tool]="tool"
|
|
2332
1495
|
location="overflow"
|
|
2333
|
-
[resizable]="
|
|
1496
|
+
[resizable]="overflow"
|
|
2334
1497
|
(rendererClick)="onRendererClick($event)"
|
|
2335
1498
|
[ngTemplateOutlet]="tool.isBuiltInTool ? tool.popupTemplate : popupWrapper"></ng-template>
|
|
2336
1499
|
<ng-template #popupWrapper>
|
|
@@ -2341,33 +1504,13 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
|
|
|
2341
1504
|
</ng-container>
|
|
2342
1505
|
</div>
|
|
2343
1506
|
</ng-template>
|
|
2344
|
-
<ng-template #popupSectionTemplate>
|
|
2345
|
-
<span class="k-toolbar-items-list k-toolbar-items-list-solid"
|
|
2346
|
-
[ngClass]="sectionSizeClass"
|
|
2347
|
-
role="toolbar"
|
|
2348
|
-
[id]="popupId"
|
|
2349
|
-
[attr.dir]="direction === 'rtl' ? 'rtl' : null"
|
|
2350
|
-
[attr.aria-labelledby]="overflowBtnId">
|
|
2351
|
-
<ng-container *ngFor="let tool of overflowTools; let index = index"
|
|
2352
|
-
kendoToolbarRenderer
|
|
2353
|
-
[tool]="tool"
|
|
2354
|
-
location="section"
|
|
2355
|
-
[resizable]="resizable"
|
|
2356
|
-
(rendererClick)="onRendererClick($event)"
|
|
2357
|
-
[ngTemplateOutlet]="tool.isBuiltInTool ? tool.sectionTemplate : wrapper">
|
|
2358
|
-
<ng-template #wrapper>
|
|
2359
|
-
<ng-container [ngTemplateOutlet]="tool.sectionTemplate"></ng-container>
|
|
2360
|
-
</ng-template>
|
|
2361
|
-
</ng-container>
|
|
2362
|
-
</span>
|
|
2363
|
-
</ng-template>
|
|
2364
1507
|
<ng-container #container></ng-container>
|
|
2365
|
-
<kendo-resize-sensor *ngIf="
|
|
1508
|
+
<kendo-resize-sensor *ngIf="overflow" #resizeSensor></kendo-resize-sensor>
|
|
2366
1509
|
`,
|
|
2367
1510
|
standalone: true,
|
|
2368
|
-
imports: [NgTemplateOutlet, LocalizedToolbarMessagesDirective, NgFor, ToolBarRendererComponent, NgIf, ButtonComponent, NgClass, ResizeSensorComponent
|
|
1511
|
+
imports: [NgTemplateOutlet, LocalizedToolbarMessagesDirective, NgFor, ToolBarRendererComponent, NgIf, ButtonComponent, NgClass, ResizeSensorComponent]
|
|
2369
1512
|
}]
|
|
2370
|
-
}], ctorParameters: function () { return [{ type: i1.LocalizationService }, { type: i2.PopupService }, { type: RefreshService }, { type: NavigationService }, { type: i0.ElementRef }, { type: i0.NgZone }, { type: i0.Renderer2 }, { type: i0.ChangeDetectorRef }, { type: ToolbarToolsService }
|
|
1513
|
+
}], ctorParameters: function () { return [{ type: i1.LocalizationService }, { type: i2.PopupService }, { type: RefreshService }, { type: NavigationService }, { type: i0.ElementRef }, { type: i0.NgZone }, { type: i0.Renderer2 }, { type: i0.ChangeDetectorRef }, { type: ToolbarToolsService }]; }, propDecorators: { overflow: [{
|
|
2371
1514
|
type: Input
|
|
2372
1515
|
}], resizable: [{
|
|
2373
1516
|
type: Input
|
|
@@ -2395,42 +1538,15 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
|
|
|
2395
1538
|
}], popupTemplate: [{
|
|
2396
1539
|
type: ViewChild,
|
|
2397
1540
|
args: ['popupTemplate', { static: true }]
|
|
2398
|
-
}], popupSectionTemplate: [{
|
|
2399
|
-
type: ViewChild,
|
|
2400
|
-
args: ['popupSectionTemplate', { static: true }]
|
|
2401
|
-
}], scrollContainer: [{
|
|
2402
|
-
type: ViewChild,
|
|
2403
|
-
args: ['scrollContainer', { read: ElementRef, static: false }]
|
|
2404
1541
|
}], resizeSensor: [{
|
|
2405
1542
|
type: ViewChild,
|
|
2406
1543
|
args: ['resizeSensor', { static: false }]
|
|
2407
1544
|
}], container: [{
|
|
2408
1545
|
type: ViewChild,
|
|
2409
1546
|
args: ['container', { read: ViewContainerRef, static: true }]
|
|
2410
|
-
}], prevScrollButton: [{
|
|
2411
|
-
type: ViewChild,
|
|
2412
|
-
args: ['prevScrollButton', { read: ElementRef }]
|
|
2413
|
-
}], nextScrollButton: [{
|
|
2414
|
-
type: ViewChild,
|
|
2415
|
-
args: ['nextScrollButton', { read: ElementRef }]
|
|
2416
|
-
}], startButtonGroup: [{
|
|
2417
|
-
type: ViewChild,
|
|
2418
|
-
args: ['startButtonGroup', { read: ElementRef }]
|
|
2419
|
-
}], endButtonGroup: [{
|
|
2420
|
-
type: ViewChild,
|
|
2421
|
-
args: ['endButtonGroup', { read: ElementRef }]
|
|
2422
|
-
}], scrollSeparator: [{
|
|
2423
|
-
type: ViewChild,
|
|
2424
|
-
args: ['scrollSeparator', { read: ElementRef }]
|
|
2425
1547
|
}], hostClass: [{
|
|
2426
1548
|
type: HostBinding,
|
|
2427
1549
|
args: ['class.k-toolbar']
|
|
2428
|
-
}], scrollableClass: [{
|
|
2429
|
-
type: HostBinding,
|
|
2430
|
-
args: ['class.k-toolbar-scrollable']
|
|
2431
|
-
}], sectionClass: [{
|
|
2432
|
-
type: HostBinding,
|
|
2433
|
-
args: ['class.k-toolbar-section']
|
|
2434
1550
|
}], onFocus: [{
|
|
2435
1551
|
type: HostListener,
|
|
2436
1552
|
args: ['focus', ['$event']]
|
|
@@ -2623,7 +1739,6 @@ class ToolBarButtonComponent extends ToolBarToolComponent {
|
|
|
2623
1739
|
imageUrl: ''
|
|
2624
1740
|
};
|
|
2625
1741
|
toolbarButtonElement;
|
|
2626
|
-
sectionButtonElement;
|
|
2627
1742
|
overflowButtonElement;
|
|
2628
1743
|
_showText = 'both';
|
|
2629
1744
|
_text;
|
|
@@ -2683,7 +1798,7 @@ class ToolBarButtonComponent extends ToolBarToolComponent {
|
|
|
2683
1798
|
this.selectedChange.emit(state);
|
|
2684
1799
|
}
|
|
2685
1800
|
getButton() {
|
|
2686
|
-
return this
|
|
1801
|
+
return (this.overflowButtonElement || this.toolbarButtonElement).nativeElement;
|
|
2687
1802
|
}
|
|
2688
1803
|
setTextDisplayMode() {
|
|
2689
1804
|
this.toolbarOptions.text = this.showText === 'overflow' ? undefined : this.text;
|
|
@@ -2692,7 +1807,7 @@ class ToolBarButtonComponent extends ToolBarToolComponent {
|
|
|
2692
1807
|
});
|
|
2693
1808
|
}
|
|
2694
1809
|
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 });
|
|
2695
|
-
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: "
|
|
1810
|
+
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: `
|
|
2696
1811
|
<ng-template #toolbarTemplate>
|
|
2697
1812
|
<button
|
|
2698
1813
|
#toolbarButton
|
|
@@ -2745,34 +1860,6 @@ class ToolBarButtonComponent extends ToolBarToolComponent {
|
|
|
2745
1860
|
</span>
|
|
2746
1861
|
</div>
|
|
2747
1862
|
</ng-template>
|
|
2748
|
-
<ng-template #sectionTemplate>
|
|
2749
|
-
<button
|
|
2750
|
-
#sectionButton
|
|
2751
|
-
[class.k-toolbar-button]="!toggleable"
|
|
2752
|
-
[class.k-toolbar-toggle-button]="toggleable"
|
|
2753
|
-
[tabindex]="tabIndex"
|
|
2754
|
-
type="button"
|
|
2755
|
-
kendoButton
|
|
2756
|
-
[ngStyle]="style"
|
|
2757
|
-
[ngClass]="className"
|
|
2758
|
-
[attr.title]="title"
|
|
2759
|
-
[disabled]="disabled"
|
|
2760
|
-
[toggleable]="toggleable"
|
|
2761
|
-
[fillMode]="fillMode"
|
|
2762
|
-
[themeColor]="fillMode ? themeColor : null"
|
|
2763
|
-
[selected]="selected"
|
|
2764
|
-
[icon]="toolbarOptions.icon"
|
|
2765
|
-
[iconClass]="toolbarOptions.iconClass"
|
|
2766
|
-
[svgIcon]="toolbarOptions.svgIcon"
|
|
2767
|
-
[imageUrl]="toolbarOptions.imageUrl"
|
|
2768
|
-
(click)="click.emit($event)"
|
|
2769
|
-
(pointerdown)="pointerdown.emit($event)"
|
|
2770
|
-
(selectedChange)="selectedChangeHandler($event)"
|
|
2771
|
-
(blur)="onBlur()"
|
|
2772
|
-
>
|
|
2773
|
-
{{ toolbarOptions.text }}
|
|
2774
|
-
</button>
|
|
2775
|
-
</ng-template>
|
|
2776
1863
|
`, 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"] }] });
|
|
2777
1864
|
}
|
|
2778
1865
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: ToolBarButtonComponent, decorators: [{
|
|
@@ -2834,34 +1921,6 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
|
|
|
2834
1921
|
</span>
|
|
2835
1922
|
</div>
|
|
2836
1923
|
</ng-template>
|
|
2837
|
-
<ng-template #sectionTemplate>
|
|
2838
|
-
<button
|
|
2839
|
-
#sectionButton
|
|
2840
|
-
[class.k-toolbar-button]="!toggleable"
|
|
2841
|
-
[class.k-toolbar-toggle-button]="toggleable"
|
|
2842
|
-
[tabindex]="tabIndex"
|
|
2843
|
-
type="button"
|
|
2844
|
-
kendoButton
|
|
2845
|
-
[ngStyle]="style"
|
|
2846
|
-
[ngClass]="className"
|
|
2847
|
-
[attr.title]="title"
|
|
2848
|
-
[disabled]="disabled"
|
|
2849
|
-
[toggleable]="toggleable"
|
|
2850
|
-
[fillMode]="fillMode"
|
|
2851
|
-
[themeColor]="fillMode ? themeColor : null"
|
|
2852
|
-
[selected]="selected"
|
|
2853
|
-
[icon]="toolbarOptions.icon"
|
|
2854
|
-
[iconClass]="toolbarOptions.iconClass"
|
|
2855
|
-
[svgIcon]="toolbarOptions.svgIcon"
|
|
2856
|
-
[imageUrl]="toolbarOptions.imageUrl"
|
|
2857
|
-
(click)="click.emit($event)"
|
|
2858
|
-
(pointerdown)="pointerdown.emit($event)"
|
|
2859
|
-
(selectedChange)="selectedChangeHandler($event)"
|
|
2860
|
-
(blur)="onBlur()"
|
|
2861
|
-
>
|
|
2862
|
-
{{ toolbarOptions.text }}
|
|
2863
|
-
</button>
|
|
2864
|
-
</ng-template>
|
|
2865
1924
|
`,
|
|
2866
1925
|
standalone: true,
|
|
2867
1926
|
imports: [ButtonComponent, NgStyle, NgClass, NgIf, IconWrapperComponent]
|
|
@@ -2909,9 +1968,6 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
|
|
|
2909
1968
|
}], toolbarButtonElement: [{
|
|
2910
1969
|
type: ViewChild,
|
|
2911
1970
|
args: ['toolbarButton', { read: ElementRef }]
|
|
2912
|
-
}], sectionButtonElement: [{
|
|
2913
|
-
type: ViewChild,
|
|
2914
|
-
args: ['sectionButton', { read: ElementRef }]
|
|
2915
1971
|
}], overflowButtonElement: [{
|
|
2916
1972
|
type: ViewChild,
|
|
2917
1973
|
args: ['overflowButton', { read: ElementRef }]
|
|
@@ -2957,18 +2013,12 @@ class ToolBarButtonGroupComponent extends ToolBarToolComponent {
|
|
|
2957
2013
|
}
|
|
2958
2014
|
}
|
|
2959
2015
|
toolbarButtonGroup;
|
|
2960
|
-
sectionButtonGroup;
|
|
2961
2016
|
overflowListItems;
|
|
2962
2017
|
buttonComponents;
|
|
2963
2018
|
get buttonElements() {
|
|
2964
|
-
if (this.overflows
|
|
2019
|
+
if (this.overflows) {
|
|
2965
2020
|
return [...this.overflowListItems.toArray().filter(el => !el.nativeElement.classList.contains('k-disabled'))].map(el => el.nativeElement);
|
|
2966
2021
|
}
|
|
2967
|
-
else if (this.overflows && this.location === 'section') {
|
|
2968
|
-
return this.sectionButtonGroup
|
|
2969
|
-
.buttons.filter(b => !b.isDisabled)
|
|
2970
|
-
.map(b => b.element);
|
|
2971
|
-
}
|
|
2972
2022
|
else {
|
|
2973
2023
|
return this.toolbarButtonGroup
|
|
2974
2024
|
.buttons.filter(b => !b.isDisabled)
|
|
@@ -3036,8 +2086,8 @@ class ToolBarButtonGroupComponent extends ToolBarToolComponent {
|
|
|
3036
2086
|
* @hidden
|
|
3037
2087
|
*/
|
|
3038
2088
|
focus(ev = {}) {
|
|
3039
|
-
const nextKey = this.getNextKey(
|
|
3040
|
-
const prevKey = this.getPrevKey(
|
|
2089
|
+
const nextKey = this.getNextKey(this.overflows);
|
|
2090
|
+
const prevKey = this.getPrevKey(this.overflows);
|
|
3041
2091
|
this.focusedIndex = getIndexOfFocused(prevKey, nextKey, this.buttonElements)(ev);
|
|
3042
2092
|
this.focusButton(this.focusedIndex, ev);
|
|
3043
2093
|
}
|
|
@@ -3045,8 +2095,8 @@ class ToolBarButtonGroupComponent extends ToolBarToolComponent {
|
|
|
3045
2095
|
* @hidden
|
|
3046
2096
|
*/
|
|
3047
2097
|
handleKey(ev) {
|
|
3048
|
-
const nextKey = this.getNextKey(
|
|
3049
|
-
const prevKey = this.getPrevKey(
|
|
2098
|
+
const nextKey = this.getNextKey(this.overflows);
|
|
2099
|
+
const prevKey = this.getPrevKey(this.overflows);
|
|
3050
2100
|
const peekAtIndex = makePeeker(this.buttonElements);
|
|
3051
2101
|
const isUnmodified = areEqual(this.focusedIndex);
|
|
3052
2102
|
this.focusedIndex = seekFocusedIndex(prevKey, nextKey, peekAtIndex)(this.focusedIndex, ev);
|
|
@@ -3082,7 +2132,7 @@ class ToolBarButtonGroupComponent extends ToolBarToolComponent {
|
|
|
3082
2132
|
}
|
|
3083
2133
|
}
|
|
3084
2134
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: ToolBarButtonGroupComponent, deps: [{ token: i1.LocalizationService }], target: i0.ɵɵFactoryTarget.Component });
|
|
3085
|
-
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: "
|
|
2135
|
+
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: `
|
|
3086
2136
|
<ng-template #toolbarTemplate>
|
|
3087
2137
|
<kendo-buttongroup
|
|
3088
2138
|
class="k-toolbar-button-group k-button-group-{{fillMode}}"
|
|
@@ -3144,42 +2194,6 @@ class ToolBarButtonGroupComponent extends ToolBarToolComponent {
|
|
|
3144
2194
|
</span>
|
|
3145
2195
|
</div>
|
|
3146
2196
|
</ng-template>
|
|
3147
|
-
<ng-template #sectionTemplate>
|
|
3148
|
-
<kendo-buttongroup
|
|
3149
|
-
class="k-toolbar-button-group k-button-group-{{fillMode}}"
|
|
3150
|
-
#sectionButtonGroup
|
|
3151
|
-
[tabIndex]="-1"
|
|
3152
|
-
[selection]="selection"
|
|
3153
|
-
[disabled]="disabled"
|
|
3154
|
-
[width]="width"
|
|
3155
|
-
(navigate)="onNavigate($event)"
|
|
3156
|
-
(focus)="onFocus()"
|
|
3157
|
-
>
|
|
3158
|
-
<button
|
|
3159
|
-
kendoButton
|
|
3160
|
-
type="button"
|
|
3161
|
-
*ngFor="let button of buttonComponents"
|
|
3162
|
-
[ngStyle]="button.style"
|
|
3163
|
-
[ngClass]="button.className"
|
|
3164
|
-
[attr.title]="button.title"
|
|
3165
|
-
[disabled]="button.disabled"
|
|
3166
|
-
[togglable]="button.togglable"
|
|
3167
|
-
[selected]="button.selected"
|
|
3168
|
-
[attr.aria-pressed]="button.selected ? true : false"
|
|
3169
|
-
[fillMode]="button.fillMode"
|
|
3170
|
-
[themeColor]="button.fillMode ? button.themeColor : null"
|
|
3171
|
-
[icon]="button.toolbarOptions.icon"
|
|
3172
|
-
[iconClass]="button.toolbarOptions.iconClass"
|
|
3173
|
-
[svgIcon]="button.toolbarOptions.svgIcon"
|
|
3174
|
-
[imageUrl]="button.toolbarOptions.imageUrl"
|
|
3175
|
-
(click)="button.click.emit($event); onButtonClick($event)"
|
|
3176
|
-
(pointerdown)="button.pointerdown.emit($event)"
|
|
3177
|
-
(selectedChange)="selectedChangeHandler($event, button)"
|
|
3178
|
-
>
|
|
3179
|
-
{{ button.toolbarOptions.text }}
|
|
3180
|
-
</button>
|
|
3181
|
-
</kendo-buttongroup>
|
|
3182
|
-
</ng-template>
|
|
3183
2197
|
`, 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"] }] });
|
|
3184
2198
|
}
|
|
3185
2199
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: ToolBarButtonGroupComponent, decorators: [{
|
|
@@ -3250,42 +2264,6 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
|
|
|
3250
2264
|
</span>
|
|
3251
2265
|
</div>
|
|
3252
2266
|
</ng-template>
|
|
3253
|
-
<ng-template #sectionTemplate>
|
|
3254
|
-
<kendo-buttongroup
|
|
3255
|
-
class="k-toolbar-button-group k-button-group-{{fillMode}}"
|
|
3256
|
-
#sectionButtonGroup
|
|
3257
|
-
[tabIndex]="-1"
|
|
3258
|
-
[selection]="selection"
|
|
3259
|
-
[disabled]="disabled"
|
|
3260
|
-
[width]="width"
|
|
3261
|
-
(navigate)="onNavigate($event)"
|
|
3262
|
-
(focus)="onFocus()"
|
|
3263
|
-
>
|
|
3264
|
-
<button
|
|
3265
|
-
kendoButton
|
|
3266
|
-
type="button"
|
|
3267
|
-
*ngFor="let button of buttonComponents"
|
|
3268
|
-
[ngStyle]="button.style"
|
|
3269
|
-
[ngClass]="button.className"
|
|
3270
|
-
[attr.title]="button.title"
|
|
3271
|
-
[disabled]="button.disabled"
|
|
3272
|
-
[togglable]="button.togglable"
|
|
3273
|
-
[selected]="button.selected"
|
|
3274
|
-
[attr.aria-pressed]="button.selected ? true : false"
|
|
3275
|
-
[fillMode]="button.fillMode"
|
|
3276
|
-
[themeColor]="button.fillMode ? button.themeColor : null"
|
|
3277
|
-
[icon]="button.toolbarOptions.icon"
|
|
3278
|
-
[iconClass]="button.toolbarOptions.iconClass"
|
|
3279
|
-
[svgIcon]="button.toolbarOptions.svgIcon"
|
|
3280
|
-
[imageUrl]="button.toolbarOptions.imageUrl"
|
|
3281
|
-
(click)="button.click.emit($event); onButtonClick($event)"
|
|
3282
|
-
(pointerdown)="button.pointerdown.emit($event)"
|
|
3283
|
-
(selectedChange)="selectedChangeHandler($event, button)"
|
|
3284
|
-
>
|
|
3285
|
-
{{ button.toolbarOptions.text }}
|
|
3286
|
-
</button>
|
|
3287
|
-
</kendo-buttongroup>
|
|
3288
|
-
</ng-template>
|
|
3289
2267
|
`,
|
|
3290
2268
|
standalone: true,
|
|
3291
2269
|
imports: [ButtonGroupComponent, NgFor, ButtonComponent, NgStyle, NgClass, NgIf, IconWrapperComponent]
|
|
@@ -3303,9 +2281,6 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
|
|
|
3303
2281
|
}], toolbarButtonGroup: [{
|
|
3304
2282
|
type: ViewChild,
|
|
3305
2283
|
args: ['toolbarButtonGroup', { static: false }]
|
|
3306
|
-
}], sectionButtonGroup: [{
|
|
3307
|
-
type: ViewChild,
|
|
3308
|
-
args: ['sectionButtonGroup', { static: false }]
|
|
3309
2284
|
}], overflowListItems: [{
|
|
3310
2285
|
type: ViewChildren,
|
|
3311
2286
|
args: ['listItem']
|
|
@@ -3496,8 +2471,7 @@ class ToolBarDropDownButtonComponent extends ToolBarToolComponent {
|
|
|
3496
2471
|
*/
|
|
3497
2472
|
close = new EventEmitter();
|
|
3498
2473
|
dropdownButton;
|
|
3499
|
-
|
|
3500
|
-
sectionDropDownButton;
|
|
2474
|
+
dropDownButtonComponent;
|
|
3501
2475
|
overflowListItems;
|
|
3502
2476
|
toolbarOptions = {
|
|
3503
2477
|
text: '',
|
|
@@ -3535,9 +2509,7 @@ class ToolBarDropDownButtonComponent extends ToolBarToolComponent {
|
|
|
3535
2509
|
this.setTextDisplayMode();
|
|
3536
2510
|
}
|
|
3537
2511
|
ngAfterViewInit() {
|
|
3538
|
-
this.zone.onStable.pipe(take(1)).subscribe(() =>
|
|
3539
|
-
this.renderer.addClass(this[`${this.location}DropDownButton`].button.nativeElement, 'k-toolbar-menu-button');
|
|
3540
|
-
});
|
|
2512
|
+
this.zone.onStable.pipe(take(1)).subscribe(() => (this.renderer.addClass(this.dropDownButtonComponent.button.nativeElement, 'k-toolbar-menu-button')));
|
|
3541
2513
|
}
|
|
3542
2514
|
/**
|
|
3543
2515
|
* @hidden
|
|
@@ -3557,9 +2529,9 @@ class ToolBarDropDownButtonComponent extends ToolBarToolComponent {
|
|
|
3557
2529
|
* @hidden
|
|
3558
2530
|
*/
|
|
3559
2531
|
focus(ev = {}) {
|
|
3560
|
-
if (!this.overflows
|
|
3561
|
-
if (
|
|
3562
|
-
this
|
|
2532
|
+
if (!this.overflows) {
|
|
2533
|
+
if (ev.type === 'focus' || ev.type === 'keydown') {
|
|
2534
|
+
this.dropDownButtonComponent?.focus();
|
|
3563
2535
|
}
|
|
3564
2536
|
}
|
|
3565
2537
|
else if (this.overflowButtons.length > 0) {
|
|
@@ -3574,7 +2546,7 @@ class ToolBarDropDownButtonComponent extends ToolBarToolComponent {
|
|
|
3574
2546
|
if (!this.overflows && (ev.keyCode === this.getPrevKey(this.overflows) || ev.keyCode === this.getNextKey(this.overflows))) {
|
|
3575
2547
|
return false;
|
|
3576
2548
|
}
|
|
3577
|
-
if (this.overflows
|
|
2549
|
+
if (this.overflows) {
|
|
3578
2550
|
const peekAtIndex = makePeeker(this.overflowButtons);
|
|
3579
2551
|
const isUnmodified = areEqual(this.focusedIndex);
|
|
3580
2552
|
this.focusedIndex = seekFocusedIndex(this.getPrevKey(), this.getNextKey(), peekAtIndex)(this.focusedIndex, ev);
|
|
@@ -3612,9 +2584,9 @@ class ToolBarDropDownButtonComponent extends ToolBarToolComponent {
|
|
|
3612
2584
|
this.overflowOptions.text = this.showText === 'toolbar' ? undefined : this.text;
|
|
3613
2585
|
}
|
|
3614
2586
|
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 });
|
|
3615
|
-
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: "
|
|
2587
|
+
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: `
|
|
3616
2588
|
<ng-template #toolbarTemplate>
|
|
3617
|
-
<kendo-dropdownbutton
|
|
2589
|
+
<kendo-dropdownbutton
|
|
3618
2590
|
[icon]="toolbarOptions.icon"
|
|
3619
2591
|
[iconClass]="toolbarOptions.iconClass"
|
|
3620
2592
|
[svgIcon]="toolbarOptions.svgIcon"
|
|
@@ -3636,7 +2608,6 @@ class ToolBarDropDownButtonComponent extends ToolBarToolComponent {
|
|
|
3636
2608
|
{{ toolbarOptions.text }}
|
|
3637
2609
|
</kendo-dropdownbutton>
|
|
3638
2610
|
</ng-template>
|
|
3639
|
-
|
|
3640
2611
|
<ng-template #popupTemplate>
|
|
3641
2612
|
<div
|
|
3642
2613
|
tabindex="-1"
|
|
@@ -3677,30 +2648,6 @@ class ToolBarDropDownButtonComponent extends ToolBarToolComponent {
|
|
|
3677
2648
|
</div>
|
|
3678
2649
|
</ng-container>
|
|
3679
2650
|
</ng-template>
|
|
3680
|
-
|
|
3681
|
-
<ng-template #sectionTemplate>
|
|
3682
|
-
<kendo-dropdownbutton #sectionDropDownButton
|
|
3683
|
-
[icon]="toolbarOptions.icon"
|
|
3684
|
-
[iconClass]="toolbarOptions.iconClass"
|
|
3685
|
-
[svgIcon]="toolbarOptions.svgIcon"
|
|
3686
|
-
[imageUrl]="toolbarOptions.imageUrl"
|
|
3687
|
-
[arrowIcon]="arrowIcon"
|
|
3688
|
-
[buttonClass]="buttonClass"
|
|
3689
|
-
[disabled]="disabled"
|
|
3690
|
-
[tabIndex]="-1"
|
|
3691
|
-
[data]="data"
|
|
3692
|
-
[buttonAttributes]="{'title': title}"
|
|
3693
|
-
[textField]="textField"
|
|
3694
|
-
[popupSettings]="popupSettings"
|
|
3695
|
-
[fillMode]="fillMode"
|
|
3696
|
-
[themeColor]="fillMode ? themeColor : null"
|
|
3697
|
-
(open)="open.emit($event)"
|
|
3698
|
-
(close)="close.emit($event)"
|
|
3699
|
-
(itemClick)="itemClick.emit($event)"
|
|
3700
|
-
>
|
|
3701
|
-
{{ toolbarOptions.text }}
|
|
3702
|
-
</kendo-dropdownbutton>
|
|
3703
|
-
</ng-template>
|
|
3704
2651
|
`, 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"] }] });
|
|
3705
2652
|
}
|
|
3706
2653
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: ToolBarDropDownButtonComponent, decorators: [{
|
|
@@ -3711,7 +2658,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
|
|
|
3711
2658
|
selector: 'kendo-toolbar-dropdownbutton',
|
|
3712
2659
|
template: `
|
|
3713
2660
|
<ng-template #toolbarTemplate>
|
|
3714
|
-
<kendo-dropdownbutton
|
|
2661
|
+
<kendo-dropdownbutton
|
|
3715
2662
|
[icon]="toolbarOptions.icon"
|
|
3716
2663
|
[iconClass]="toolbarOptions.iconClass"
|
|
3717
2664
|
[svgIcon]="toolbarOptions.svgIcon"
|
|
@@ -3733,7 +2680,6 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
|
|
|
3733
2680
|
{{ toolbarOptions.text }}
|
|
3734
2681
|
</kendo-dropdownbutton>
|
|
3735
2682
|
</ng-template>
|
|
3736
|
-
|
|
3737
2683
|
<ng-template #popupTemplate>
|
|
3738
2684
|
<div
|
|
3739
2685
|
tabindex="-1"
|
|
@@ -3774,30 +2720,6 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
|
|
|
3774
2720
|
</div>
|
|
3775
2721
|
</ng-container>
|
|
3776
2722
|
</ng-template>
|
|
3777
|
-
|
|
3778
|
-
<ng-template #sectionTemplate>
|
|
3779
|
-
<kendo-dropdownbutton #sectionDropDownButton
|
|
3780
|
-
[icon]="toolbarOptions.icon"
|
|
3781
|
-
[iconClass]="toolbarOptions.iconClass"
|
|
3782
|
-
[svgIcon]="toolbarOptions.svgIcon"
|
|
3783
|
-
[imageUrl]="toolbarOptions.imageUrl"
|
|
3784
|
-
[arrowIcon]="arrowIcon"
|
|
3785
|
-
[buttonClass]="buttonClass"
|
|
3786
|
-
[disabled]="disabled"
|
|
3787
|
-
[tabIndex]="-1"
|
|
3788
|
-
[data]="data"
|
|
3789
|
-
[buttonAttributes]="{'title': title}"
|
|
3790
|
-
[textField]="textField"
|
|
3791
|
-
[popupSettings]="popupSettings"
|
|
3792
|
-
[fillMode]="fillMode"
|
|
3793
|
-
[themeColor]="fillMode ? themeColor : null"
|
|
3794
|
-
(open)="open.emit($event)"
|
|
3795
|
-
(close)="close.emit($event)"
|
|
3796
|
-
(itemClick)="itemClick.emit($event)"
|
|
3797
|
-
>
|
|
3798
|
-
{{ toolbarOptions.text }}
|
|
3799
|
-
</kendo-dropdownbutton>
|
|
3800
|
-
</ng-template>
|
|
3801
2723
|
`,
|
|
3802
2724
|
standalone: true,
|
|
3803
2725
|
imports: [DropDownButtonComponent, NgClass, NgIf, IconWrapperComponent, NgFor]
|
|
@@ -3847,12 +2769,9 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
|
|
|
3847
2769
|
}], dropdownButton: [{
|
|
3848
2770
|
type: ViewChild,
|
|
3849
2771
|
args: ['dropdownButton', { read: ElementRef, static: true }]
|
|
3850
|
-
}],
|
|
2772
|
+
}], dropDownButtonComponent: [{
|
|
3851
2773
|
type: ViewChild,
|
|
3852
|
-
args: [
|
|
3853
|
-
}], sectionDropDownButton: [{
|
|
3854
|
-
type: ViewChild,
|
|
3855
|
-
args: ['sectionDropDownButton', { static: false }]
|
|
2774
|
+
args: [DropDownButtonComponent, { static: false }]
|
|
3856
2775
|
}], overflowListItems: [{
|
|
3857
2776
|
type: ViewChildren,
|
|
3858
2777
|
args: ['listItem']
|
|
@@ -4068,7 +2987,6 @@ class ToolBarSplitButtonComponent extends ToolBarToolComponent {
|
|
|
4068
2987
|
getNextKey;
|
|
4069
2988
|
getPrevKey;
|
|
4070
2989
|
toolbarSplitButton;
|
|
4071
|
-
sectionSplitButton;
|
|
4072
2990
|
overflowMainButton;
|
|
4073
2991
|
overflowListItems;
|
|
4074
2992
|
constructor() {
|
|
@@ -4100,9 +3018,9 @@ class ToolBarSplitButtonComponent extends ToolBarToolComponent {
|
|
|
4100
3018
|
* @hidden
|
|
4101
3019
|
*/
|
|
4102
3020
|
focus(ev = {}) {
|
|
4103
|
-
if (!this.overflows
|
|
4104
|
-
if (
|
|
4105
|
-
this
|
|
3021
|
+
if (!this.overflows) {
|
|
3022
|
+
if (ev.type === 'focus' || ev.type === 'keydown') {
|
|
3023
|
+
this.toolbarSplitButton.focus();
|
|
4106
3024
|
}
|
|
4107
3025
|
}
|
|
4108
3026
|
else if (this.overflowButtons.length > 0) {
|
|
@@ -4146,7 +3064,7 @@ class ToolBarSplitButtonComponent extends ToolBarToolComponent {
|
|
|
4146
3064
|
this.itemClick.emit(dataItem);
|
|
4147
3065
|
}
|
|
4148
3066
|
focusButton(index, ev) {
|
|
4149
|
-
if (
|
|
3067
|
+
if (!ev.type || ev.type === 'focus' || ev.type === 'keydown' || ev.type === 'click') {
|
|
4150
3068
|
this.overflowButtons[index].nativeElement.focus();
|
|
4151
3069
|
}
|
|
4152
3070
|
}
|
|
@@ -4155,7 +3073,7 @@ class ToolBarSplitButtonComponent extends ToolBarToolComponent {
|
|
|
4155
3073
|
this.overflowOptions.text = this.showText === 'toolbar' ? undefined : this.text;
|
|
4156
3074
|
}
|
|
4157
3075
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: ToolBarSplitButtonComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
4158
|
-
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: "
|
|
3076
|
+
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: `
|
|
4159
3077
|
<ng-template #toolbarTemplate>
|
|
4160
3078
|
<kendo-splitbutton
|
|
4161
3079
|
#toolbarSplitButton
|
|
@@ -4225,32 +3143,6 @@ class ToolBarSplitButtonComponent extends ToolBarToolComponent {
|
|
|
4225
3143
|
</div>
|
|
4226
3144
|
</ng-container>
|
|
4227
3145
|
</ng-template>
|
|
4228
|
-
<ng-template #sectionTemplate>
|
|
4229
|
-
<kendo-splitbutton
|
|
4230
|
-
#sectionSplitButton
|
|
4231
|
-
class="k-toolbar-split-button"
|
|
4232
|
-
[data]="data"
|
|
4233
|
-
[text]="toolbarOptions.text"
|
|
4234
|
-
[icon]="toolbarOptions.icon"
|
|
4235
|
-
[iconClass]="toolbarOptions.iconClass"
|
|
4236
|
-
[svgIcon]="toolbarOptions.svgIcon"
|
|
4237
|
-
[imageUrl]="toolbarOptions.imageUrl"
|
|
4238
|
-
[buttonClass]="buttonClass"
|
|
4239
|
-
[arrowButtonClass]="arrowButtonClass"
|
|
4240
|
-
[arrowButtonIcon]="arrowButtonIcon"
|
|
4241
|
-
[arrowButtonSvgIcon]="arrowButtonSvgIcon"
|
|
4242
|
-
[disabled]="disabled"
|
|
4243
|
-
[tabIndex]="-1"
|
|
4244
|
-
[textField]="textField"
|
|
4245
|
-
[popupSettings]="popupSettings"
|
|
4246
|
-
[fillMode]="fillMode"
|
|
4247
|
-
[themeColor]="fillMode ? themeColor : null"
|
|
4248
|
-
(buttonClick)="buttonClick.emit($event)"
|
|
4249
|
-
(open)="open.emit($event)"
|
|
4250
|
-
(close)="close.emit($event)"
|
|
4251
|
-
(itemClick)="itemClick.emit($event)"
|
|
4252
|
-
></kendo-splitbutton>
|
|
4253
|
-
</ng-template>
|
|
4254
3146
|
`, 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"] }] });
|
|
4255
3147
|
}
|
|
4256
3148
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: ToolBarSplitButtonComponent, decorators: [{
|
|
@@ -4329,32 +3221,6 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
|
|
|
4329
3221
|
</div>
|
|
4330
3222
|
</ng-container>
|
|
4331
3223
|
</ng-template>
|
|
4332
|
-
<ng-template #sectionTemplate>
|
|
4333
|
-
<kendo-splitbutton
|
|
4334
|
-
#sectionSplitButton
|
|
4335
|
-
class="k-toolbar-split-button"
|
|
4336
|
-
[data]="data"
|
|
4337
|
-
[text]="toolbarOptions.text"
|
|
4338
|
-
[icon]="toolbarOptions.icon"
|
|
4339
|
-
[iconClass]="toolbarOptions.iconClass"
|
|
4340
|
-
[svgIcon]="toolbarOptions.svgIcon"
|
|
4341
|
-
[imageUrl]="toolbarOptions.imageUrl"
|
|
4342
|
-
[buttonClass]="buttonClass"
|
|
4343
|
-
[arrowButtonClass]="arrowButtonClass"
|
|
4344
|
-
[arrowButtonIcon]="arrowButtonIcon"
|
|
4345
|
-
[arrowButtonSvgIcon]="arrowButtonSvgIcon"
|
|
4346
|
-
[disabled]="disabled"
|
|
4347
|
-
[tabIndex]="-1"
|
|
4348
|
-
[textField]="textField"
|
|
4349
|
-
[popupSettings]="popupSettings"
|
|
4350
|
-
[fillMode]="fillMode"
|
|
4351
|
-
[themeColor]="fillMode ? themeColor : null"
|
|
4352
|
-
(buttonClick)="buttonClick.emit($event)"
|
|
4353
|
-
(open)="open.emit($event)"
|
|
4354
|
-
(close)="close.emit($event)"
|
|
4355
|
-
(itemClick)="itemClick.emit($event)"
|
|
4356
|
-
></kendo-splitbutton>
|
|
4357
|
-
</ng-template>
|
|
4358
3224
|
`,
|
|
4359
3225
|
standalone: true,
|
|
4360
3226
|
imports: [SplitButtonComponent, NgClass, NgIf, IconWrapperComponent, NgFor]
|
|
@@ -4406,9 +3272,6 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
|
|
|
4406
3272
|
}], toolbarSplitButton: [{
|
|
4407
3273
|
type: ViewChild,
|
|
4408
3274
|
args: ['toolbarSplitButton', { static: false }]
|
|
4409
|
-
}], sectionSplitButton: [{
|
|
4410
|
-
type: ViewChild,
|
|
4411
|
-
args: ['sectionSplitButton', { static: false }]
|
|
4412
3275
|
}], overflowMainButton: [{
|
|
4413
3276
|
type: ViewChild,
|
|
4414
3277
|
args: ['overflowMainButton', { read: ElementRef }]
|
|
@@ -4457,10 +3320,6 @@ class ToolBarSeparatorComponent extends ToolBarToolComponent {
|
|
|
4457
3320
|
<div class="k-separator k-toolbar-separator"></div>
|
|
4458
3321
|
</ng-template>
|
|
4459
3322
|
|
|
4460
|
-
<ng-template #sectionTemplate>
|
|
4461
|
-
<div class="k-separator k-toolbar-separator"></div>
|
|
4462
|
-
</ng-template>
|
|
4463
|
-
|
|
4464
3323
|
<ng-template #popupTemplate>
|
|
4465
3324
|
<div class="k-item k-menu-item">
|
|
4466
3325
|
<div class="k-separator k-separator-horizontal"></div>
|
|
@@ -4479,10 +3338,6 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
|
|
|
4479
3338
|
<div class="k-separator k-toolbar-separator"></div>
|
|
4480
3339
|
</ng-template>
|
|
4481
3340
|
|
|
4482
|
-
<ng-template #sectionTemplate>
|
|
4483
|
-
<div class="k-separator k-toolbar-separator"></div>
|
|
4484
|
-
</ng-template>
|
|
4485
|
-
|
|
4486
3341
|
<ng-template #popupTemplate>
|
|
4487
3342
|
<div class="k-item k-menu-item">
|
|
4488
3343
|
<div class="k-separator k-separator-horizontal"></div>
|