@progress/kendo-angular-dropdowns 21.4.1 → 22.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/common/localization/messages.d.ts +1 -1
- package/dropdowntrees/checked-state/base-check.directive.d.ts +1 -1
- package/fesm2022/progress-kendo-angular-dropdowns.mjs +173 -173
- package/package.json +14 -22
- package/schematics/ngAdd/index.js +2 -2
- package/esm2022/autocomplete/autocomplete.component.mjs +0 -1687
- package/esm2022/autocomplete/autocomplete.module.mjs +0 -70
- package/esm2022/comboboxes/combobox-column/column-cell-template.directive.mjs +0 -42
- package/esm2022/comboboxes/combobox-column/column-header-template.directive.mjs +0 -40
- package/esm2022/comboboxes/combobox-column/combobox-column.component.mjs +0 -116
- package/esm2022/comboboxes/combobox-column/util.mjs +0 -60
- package/esm2022/comboboxes/combobox.component.mjs +0 -2149
- package/esm2022/comboboxes/combobox.module.mjs +0 -77
- package/esm2022/comboboxes/multicolumncombobox.component.mjs +0 -883
- package/esm2022/common/adaptive-renderer.component.mjs +0 -253
- package/esm2022/common/constants/error-messages.mjs +0 -61
- package/esm2022/common/data.service.mjs +0 -250
- package/esm2022/common/disabled-items/disabled-items.service.mjs +0 -47
- package/esm2022/common/disabled-items/item-disabled.mjs +0 -5
- package/esm2022/common/filter-input.directive.mjs +0 -39
- package/esm2022/common/filtering/filter-settings.mjs +0 -5
- package/esm2022/common/filtering/filter.directive.mjs +0 -136
- package/esm2022/common/filtering/filterable-component.mjs +0 -34
- package/esm2022/common/list-item.directive.mjs +0 -25
- package/esm2022/common/list.component.mjs +0 -968
- package/esm2022/common/localization/custom-messages.component.mjs +0 -96
- package/esm2022/common/localization/localized-messages.directive.mjs +0 -47
- package/esm2022/common/localization/messages.mjs +0 -77
- package/esm2022/common/models/checkboxes-settings.mjs +0 -15
- package/esm2022/common/models/direction.mjs +0 -5
- package/esm2022/common/models/fillmode.mjs +0 -5
- package/esm2022/common/models/list-type.mjs +0 -5
- package/esm2022/common/models/page-change-event.mjs +0 -5
- package/esm2022/common/models/popup-settings.mjs +0 -5
- package/esm2022/common/models/preventable-event.mjs +0 -25
- package/esm2022/common/models/remove-tag-event.mjs +0 -23
- package/esm2022/common/models/rounded.mjs +0 -5
- package/esm2022/common/models/size.mjs +0 -5
- package/esm2022/common/models/virtualization-settings.mjs +0 -24
- package/esm2022/common/navigation/navigation-action.mjs +0 -32
- package/esm2022/common/navigation/navigation.service.mjs +0 -188
- package/esm2022/common/searchbar.component.mjs +0 -386
- package/esm2022/common/selection/selectable.directive.mjs +0 -83
- package/esm2022/common/selection/selection.service.mjs +0 -166
- package/esm2022/common/shared-events.directive.mjs +0 -99
- package/esm2022/common/taglist.component.mjs +0 -295
- package/esm2022/common/templates/custom-item-template.directive.mjs +0 -48
- package/esm2022/common/templates/fixed-group-template.directive.mjs +0 -55
- package/esm2022/common/templates/footer-template.directive.mjs +0 -49
- package/esm2022/common/templates/group-tag-template.directive.mjs +0 -47
- package/esm2022/common/templates/group-template.directive.mjs +0 -55
- package/esm2022/common/templates/header-template.directive.mjs +0 -49
- package/esm2022/common/templates/item-template.directive.mjs +0 -48
- package/esm2022/common/templates/no-data-template.directive.mjs +0 -49
- package/esm2022/common/templates/tag-template.directive.mjs +0 -46
- package/esm2022/common/templates/value-template.directive.mjs +0 -50
- package/esm2022/common/util.mjs +0 -376
- package/esm2022/directives.mjs +0 -172
- package/esm2022/dropdownlist/dropdownlist.component.mjs +0 -1999
- package/esm2022/dropdownlist/dropdownlist.module.mjs +0 -79
- package/esm2022/dropdowns.module.mjs +0 -76
- package/esm2022/dropdowntrees/checked-state/base-check.directive.mjs +0 -76
- package/esm2022/dropdowntrees/checked-state/check-all.directive.mjs +0 -170
- package/esm2022/dropdowntrees/checked-state/check.directive.mjs +0 -168
- package/esm2022/dropdowntrees/checked-state/checkable-settings.mjs +0 -5
- package/esm2022/dropdowntrees/checked-state/checked-item.mjs +0 -5
- package/esm2022/dropdowntrees/data-binding/dropdowntree/flat-binding.directive.mjs +0 -69
- package/esm2022/dropdowntrees/data-binding/dropdowntree/hierarchy-binding.directive.mjs +0 -62
- package/esm2022/dropdowntrees/data-binding/multiselecttree/flat-binding.directive.mjs +0 -69
- package/esm2022/dropdowntrees/data-binding/multiselecttree/hierarchy-binding.directive.mjs +0 -62
- package/esm2022/dropdowntrees/dropdowntree.component.mjs +0 -1967
- package/esm2022/dropdowntrees/dropdowntrees.module.mjs +0 -79
- package/esm2022/dropdowntrees/expanded-state/expand.directive.mjs +0 -49
- package/esm2022/dropdowntrees/lookup/lookup.mjs +0 -5
- package/esm2022/dropdowntrees/lookup/lookup.service.mjs +0 -82
- package/esm2022/dropdowntrees/multiselecttree.component.mjs +0 -2359
- package/esm2022/dropdowntrees/summary-tag/summary-tag.directive.mjs +0 -70
- package/esm2022/dropdowntrees/templates/node-template.directive.mjs +0 -31
- package/esm2022/index.mjs +0 -55
- package/esm2022/multiselect/multiselect.component.mjs +0 -2380
- package/esm2022/multiselect/multiselect.module.mjs +0 -79
- package/esm2022/multiselect/summary-tag.directive.mjs +0 -68
- package/esm2022/package-metadata.mjs +0 -16
- package/esm2022/progress-kendo-angular-dropdowns.mjs +0 -8
|
@@ -1,99 +0,0 @@
|
|
|
1
|
-
/**-----------------------------------------------------------------------------------------
|
|
2
|
-
* Copyright © 2026 Progress Software Corporation. All rights reserved.
|
|
3
|
-
* Licensed under commercial license. See LICENSE.md in the project root for more information
|
|
4
|
-
*-------------------------------------------------------------------------------------------*/
|
|
5
|
-
import { ChangeDetectorRef, Directive, EventEmitter, Input, NgZone, Output, Renderer2 } from '@angular/core';
|
|
6
|
-
import { Subscription } from 'rxjs';
|
|
7
|
-
import { Keys, closest } from '@progress/kendo-angular-common';
|
|
8
|
-
import * as i0 from "@angular/core";
|
|
9
|
-
/**
|
|
10
|
-
* @hidden
|
|
11
|
-
*/
|
|
12
|
-
export class SharedDropDownEventsDirective {
|
|
13
|
-
ngZone;
|
|
14
|
-
renderer;
|
|
15
|
-
cdr;
|
|
16
|
-
hostElement;
|
|
17
|
-
clearButtonClicked;
|
|
18
|
-
isFocused;
|
|
19
|
-
isFocusedChange = new EventEmitter();
|
|
20
|
-
onFocus = new EventEmitter();
|
|
21
|
-
handleBlur = new EventEmitter();
|
|
22
|
-
subscriptions = new Subscription();
|
|
23
|
-
constructor(ngZone, renderer, cdr) {
|
|
24
|
-
this.ngZone = ngZone;
|
|
25
|
-
this.renderer = renderer;
|
|
26
|
-
this.cdr = cdr;
|
|
27
|
-
}
|
|
28
|
-
ngAfterViewInit() {
|
|
29
|
-
const hostElement = this.hostElement.nativeElement;
|
|
30
|
-
let cursorInsideWrapper = false;
|
|
31
|
-
let tabbing = false;
|
|
32
|
-
this.ngZone.runOutsideAngular(() => {
|
|
33
|
-
// focusIn and focusOut are relative to the host element
|
|
34
|
-
this.subscriptions.add(this.renderer.listen(hostElement, 'focusin', () => {
|
|
35
|
-
this.cdr.detectChanges();
|
|
36
|
-
if (!this.isFocused) {
|
|
37
|
-
this.ngZone.run(() => {
|
|
38
|
-
this.onFocus.emit();
|
|
39
|
-
this.isFocused = true;
|
|
40
|
-
this.isFocusedChange.emit(this.isFocused);
|
|
41
|
-
});
|
|
42
|
-
}
|
|
43
|
-
}));
|
|
44
|
-
this.subscriptions.add(this.renderer.listen(hostElement, 'focusout', (args) => {
|
|
45
|
-
if (!this.isFocused) {
|
|
46
|
-
return;
|
|
47
|
-
}
|
|
48
|
-
if (tabbing) {
|
|
49
|
-
const closestTextbox = closest(args.relatedTarget, (element) => element === hostElement);
|
|
50
|
-
if (!closestTextbox) {
|
|
51
|
-
this.handleBlur.emit();
|
|
52
|
-
}
|
|
53
|
-
tabbing = false;
|
|
54
|
-
}
|
|
55
|
-
else if (!cursorInsideWrapper) {
|
|
56
|
-
this.handleBlur.emit();
|
|
57
|
-
}
|
|
58
|
-
}));
|
|
59
|
-
this.subscriptions.add(this.renderer.listen(hostElement, 'mouseenter', () => {
|
|
60
|
-
cursorInsideWrapper = true;
|
|
61
|
-
}));
|
|
62
|
-
this.subscriptions.add(this.renderer.listen(hostElement, 'mouseleave', () => {
|
|
63
|
-
cursorInsideWrapper = false;
|
|
64
|
-
}));
|
|
65
|
-
this.subscriptions.add(this.renderer.listen(hostElement, 'keydown', (args) => {
|
|
66
|
-
if (args.code === Keys.Tab) {
|
|
67
|
-
tabbing = true;
|
|
68
|
-
}
|
|
69
|
-
else {
|
|
70
|
-
tabbing = false;
|
|
71
|
-
}
|
|
72
|
-
}));
|
|
73
|
-
});
|
|
74
|
-
}
|
|
75
|
-
ngOnDestroy() {
|
|
76
|
-
this.subscriptions.unsubscribe();
|
|
77
|
-
}
|
|
78
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: SharedDropDownEventsDirective, deps: [{ token: i0.NgZone }, { token: i0.Renderer2 }, { token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Directive });
|
|
79
|
-
static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "18.2.14", type: SharedDropDownEventsDirective, isStandalone: true, selector: "[kendoDropDownSharedEvents]", inputs: { hostElement: "hostElement", clearButtonClicked: "clearButtonClicked", isFocused: "isFocused" }, outputs: { isFocusedChange: "isFocusedChange", onFocus: "onFocus", handleBlur: "handleBlur" }, ngImport: i0 });
|
|
80
|
-
}
|
|
81
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: SharedDropDownEventsDirective, decorators: [{
|
|
82
|
-
type: Directive,
|
|
83
|
-
args: [{
|
|
84
|
-
selector: '[kendoDropDownSharedEvents]',
|
|
85
|
-
standalone: true
|
|
86
|
-
}]
|
|
87
|
-
}], ctorParameters: () => [{ type: i0.NgZone }, { type: i0.Renderer2 }, { type: i0.ChangeDetectorRef }], propDecorators: { hostElement: [{
|
|
88
|
-
type: Input
|
|
89
|
-
}], clearButtonClicked: [{
|
|
90
|
-
type: Input
|
|
91
|
-
}], isFocused: [{
|
|
92
|
-
type: Input
|
|
93
|
-
}], isFocusedChange: [{
|
|
94
|
-
type: Output
|
|
95
|
-
}], onFocus: [{
|
|
96
|
-
type: Output
|
|
97
|
-
}], handleBlur: [{
|
|
98
|
-
type: Output
|
|
99
|
-
}] } });
|
|
@@ -1,295 +0,0 @@
|
|
|
1
|
-
/**-----------------------------------------------------------------------------------------
|
|
2
|
-
* Copyright © 2026 Progress Software Corporation. All rights reserved.
|
|
3
|
-
* Licensed under commercial license. See LICENSE.md in the project root for more information
|
|
4
|
-
*-------------------------------------------------------------------------------------------*/
|
|
5
|
-
import { Component, Input, Output, EventEmitter, HostBinding, Renderer2, ElementRef } from '@angular/core';
|
|
6
|
-
import { TagTemplateDirective } from '../common/templates/tag-template.directive';
|
|
7
|
-
import { GroupTagTemplateDirective } from '../common/templates/group-tag-template.directive';
|
|
8
|
-
import { getSizeClass, getter, isPresent } from '../common/util';
|
|
9
|
-
import { xCircleIcon } from '@progress/kendo-svg-icons';
|
|
10
|
-
import { NgClass } from '@angular/common';
|
|
11
|
-
import { IconWrapperComponent } from '@progress/kendo-angular-icons';
|
|
12
|
-
import { TemplateContextDirective } from '@progress/kendo-angular-common';
|
|
13
|
-
import * as i0 from "@angular/core";
|
|
14
|
-
/**
|
|
15
|
-
* @hidden
|
|
16
|
-
*/
|
|
17
|
-
export class TagListComponent {
|
|
18
|
-
renderer;
|
|
19
|
-
hostElement;
|
|
20
|
-
/**
|
|
21
|
-
* @hidden
|
|
22
|
-
*/
|
|
23
|
-
xCircleIcon = xCircleIcon;
|
|
24
|
-
tags;
|
|
25
|
-
textField;
|
|
26
|
-
valueField;
|
|
27
|
-
valueDepth;
|
|
28
|
-
focused;
|
|
29
|
-
template;
|
|
30
|
-
groupTemplate;
|
|
31
|
-
disabled;
|
|
32
|
-
tagPrefix;
|
|
33
|
-
id;
|
|
34
|
-
set size(size) {
|
|
35
|
-
this.renderer.removeClass(this.hostElement.nativeElement, getSizeClass('chip-list', this.size));
|
|
36
|
-
if (size) {
|
|
37
|
-
this.renderer.addClass(this.hostElement.nativeElement, getSizeClass('chip-list', size));
|
|
38
|
-
}
|
|
39
|
-
this._size = size;
|
|
40
|
-
}
|
|
41
|
-
get size() {
|
|
42
|
-
return this._size;
|
|
43
|
-
}
|
|
44
|
-
rounded = 'medium';
|
|
45
|
-
fillMode = 'solid';
|
|
46
|
-
/**
|
|
47
|
-
* A collection with the disabled tags' indices.
|
|
48
|
-
*/
|
|
49
|
-
disabledIndices = new Set();
|
|
50
|
-
removeTag = new EventEmitter();
|
|
51
|
-
hostClass = true;
|
|
52
|
-
get hostId() {
|
|
53
|
-
return this.id;
|
|
54
|
-
}
|
|
55
|
-
taglistRole = 'listbox';
|
|
56
|
-
multiselectable = true;
|
|
57
|
-
_size = 'medium';
|
|
58
|
-
constructor(renderer, hostElement) {
|
|
59
|
-
this.renderer = renderer;
|
|
60
|
-
this.hostElement = hostElement;
|
|
61
|
-
}
|
|
62
|
-
tagProp(tag, prop, index) {
|
|
63
|
-
const propField = prop && this.getPropField(tag, prop, index);
|
|
64
|
-
return getter(tag, propField);
|
|
65
|
-
}
|
|
66
|
-
isTagDisabled(tag, positionIndex) {
|
|
67
|
-
if (this.isGroupTag(tag)) {
|
|
68
|
-
/** The `positionIndex` is used to determine after how many single tags is the group tag displayed =>
|
|
69
|
-
* => it is used to increment the indices inside the group tag so that we determine the actual position index
|
|
70
|
-
* of each group tag item as they appear in the `value` (important to check against `disabledIndices`)
|
|
71
|
-
* e.g. `disabledIndices = [0, 1]` && `tags = ['Small', ['Medium', 'Large']]` => without the incrementation with
|
|
72
|
-
* `positionIndex`, the group tag would yield [0, 1] as indices, while it should yield [1, 2]
|
|
73
|
-
*/
|
|
74
|
-
return tag.every((_tag, index) => this.disabledIndices.has(index + positionIndex));
|
|
75
|
-
}
|
|
76
|
-
return this.disabledIndices.has(positionIndex);
|
|
77
|
-
}
|
|
78
|
-
deleteTag(event, tag, index) {
|
|
79
|
-
event.preventDefault();
|
|
80
|
-
event.stopImmediatePropagation();
|
|
81
|
-
if (!this.disabled && event.which === 1) {
|
|
82
|
-
this.removeTag.emit({ tag, index });
|
|
83
|
-
}
|
|
84
|
-
}
|
|
85
|
-
itemId(tag, index) {
|
|
86
|
-
if (tag) { //because of custom values
|
|
87
|
-
return this.tagPrefix + "-" + index;
|
|
88
|
-
}
|
|
89
|
-
}
|
|
90
|
-
isGroupTag(tag) {
|
|
91
|
-
return tag instanceof Array;
|
|
92
|
-
}
|
|
93
|
-
tagAriaHidden(index) {
|
|
94
|
-
return isPresent(this.focused) && this.focused !== index;
|
|
95
|
-
}
|
|
96
|
-
getPropField(tag, prop, index) {
|
|
97
|
-
// Needed for MultiSelectTree value binding (Heterogeneous Data)
|
|
98
|
-
const fieldsCount = prop.length - 1;
|
|
99
|
-
if (typeof prop === 'string') {
|
|
100
|
-
return prop;
|
|
101
|
-
}
|
|
102
|
-
else if (this.valueDepth) {
|
|
103
|
-
const depth = this.valueDepth[index];
|
|
104
|
-
return fieldsCount < depth ? prop[fieldsCount] : prop[depth];
|
|
105
|
-
}
|
|
106
|
-
else {
|
|
107
|
-
return prop.find(item => item in tag);
|
|
108
|
-
}
|
|
109
|
-
}
|
|
110
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: TagListComponent, deps: [{ token: i0.Renderer2 }, { token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Component });
|
|
111
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.14", type: TagListComponent, isStandalone: true, selector: "kendo-taglist", inputs: { tags: "tags", textField: "textField", valueField: "valueField", valueDepth: "valueDepth", focused: "focused", template: "template", groupTemplate: "groupTemplate", disabled: "disabled", tagPrefix: "tagPrefix", id: "id", size: "size", rounded: "rounded", fillMode: "fillMode", disabledIndices: "disabledIndices" }, outputs: { removeTag: "removeTag" }, host: { properties: { "class.k-chip-list": "this.hostClass", "attr.id": "this.hostId", "attr.role": "this.taglistRole", "attr.aria-multiselectable": "this.multiselectable" } }, ngImport: i0, template: `
|
|
112
|
-
@for (tag of tags; track $index; let index = $index) {
|
|
113
|
-
<div
|
|
114
|
-
[attr.id]="itemId(tag, index)"
|
|
115
|
-
[attr.aria-selected]="true"
|
|
116
|
-
[attr.role]="'option'"
|
|
117
|
-
class="k-chip"
|
|
118
|
-
[ngClass]="{
|
|
119
|
-
'k-focus': index === focused,
|
|
120
|
-
'k-disabled': isTagDisabled(tag, index),
|
|
121
|
-
'k-chip-sm': size === 'small',
|
|
122
|
-
'k-chip-md': size === 'medium',
|
|
123
|
-
'k-chip-lg': size === 'large',
|
|
124
|
-
'k-rounded-sm': rounded === 'small',
|
|
125
|
-
'k-rounded-md': rounded === 'medium',
|
|
126
|
-
'k-rounded-lg': rounded === 'large',
|
|
127
|
-
'k-rounded-full': rounded === 'full',
|
|
128
|
-
'k-chip-solid k-chip-solid-base': fillMode === 'solid',
|
|
129
|
-
'k-chip-flat k-chip-flat-base': fillMode === 'flat',
|
|
130
|
-
'k-chip-outline k-chip-outline-base': fillMode === 'outline'
|
|
131
|
-
}"
|
|
132
|
-
>
|
|
133
|
-
<span class="k-chip-content">
|
|
134
|
-
@if (isGroupTag(tag)) {
|
|
135
|
-
<span class="k-chip-label k-text-ellipsis">
|
|
136
|
-
@if (groupTemplate) {
|
|
137
|
-
<ng-template
|
|
138
|
-
[templateContext]="{
|
|
139
|
-
templateRef: groupTemplate.templateRef,
|
|
140
|
-
$implicit: tag
|
|
141
|
-
}">
|
|
142
|
-
</ng-template>
|
|
143
|
-
}
|
|
144
|
-
@if (!groupTemplate) {
|
|
145
|
-
{{ tag.length }} {{ tag.length === 1 ? 'item' : 'items' }} selected
|
|
146
|
-
}
|
|
147
|
-
</span>
|
|
148
|
-
} @else {
|
|
149
|
-
<span class="k-chip-label k-text-ellipsis">
|
|
150
|
-
@if (template) {
|
|
151
|
-
<ng-template
|
|
152
|
-
[templateContext]="{
|
|
153
|
-
templateRef: template.templateRef,
|
|
154
|
-
$implicit: tag
|
|
155
|
-
}">
|
|
156
|
-
</ng-template>
|
|
157
|
-
}
|
|
158
|
-
@if (!template) {
|
|
159
|
-
{{ tagProp(tag, textField, index) }}
|
|
160
|
-
}
|
|
161
|
-
</span>
|
|
162
|
-
}
|
|
163
|
-
</span>
|
|
164
|
-
<span class="k-chip-actions">
|
|
165
|
-
<span aria-label="delete" [attr.aria-hidden]="index !== focused" class="k-chip-action k-chip-remove-action">
|
|
166
|
-
<kendo-icon-wrapper
|
|
167
|
-
(mousedown)="deleteTag($event, tag, index)"
|
|
168
|
-
name="x-circle"
|
|
169
|
-
[svgIcon]="xCircleIcon"
|
|
170
|
-
>
|
|
171
|
-
</kendo-icon-wrapper>
|
|
172
|
-
</span>
|
|
173
|
-
</span>
|
|
174
|
-
</div>
|
|
175
|
-
}
|
|
176
|
-
<ng-content></ng-content>
|
|
177
|
-
`, isInline: true, dependencies: [{ kind: "directive", type: NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: TemplateContextDirective, selector: "[templateContext]", inputs: ["templateContext"] }, { kind: "component", type: IconWrapperComponent, selector: "kendo-icon-wrapper", inputs: ["name", "svgIcon", "innerCssClass", "customFontClass", "size"], exportAs: ["kendoIconWrapper"] }] });
|
|
178
|
-
}
|
|
179
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: TagListComponent, decorators: [{
|
|
180
|
-
type: Component,
|
|
181
|
-
args: [{
|
|
182
|
-
selector: 'kendo-taglist',
|
|
183
|
-
template: `
|
|
184
|
-
@for (tag of tags; track $index; let index = $index) {
|
|
185
|
-
<div
|
|
186
|
-
[attr.id]="itemId(tag, index)"
|
|
187
|
-
[attr.aria-selected]="true"
|
|
188
|
-
[attr.role]="'option'"
|
|
189
|
-
class="k-chip"
|
|
190
|
-
[ngClass]="{
|
|
191
|
-
'k-focus': index === focused,
|
|
192
|
-
'k-disabled': isTagDisabled(tag, index),
|
|
193
|
-
'k-chip-sm': size === 'small',
|
|
194
|
-
'k-chip-md': size === 'medium',
|
|
195
|
-
'k-chip-lg': size === 'large',
|
|
196
|
-
'k-rounded-sm': rounded === 'small',
|
|
197
|
-
'k-rounded-md': rounded === 'medium',
|
|
198
|
-
'k-rounded-lg': rounded === 'large',
|
|
199
|
-
'k-rounded-full': rounded === 'full',
|
|
200
|
-
'k-chip-solid k-chip-solid-base': fillMode === 'solid',
|
|
201
|
-
'k-chip-flat k-chip-flat-base': fillMode === 'flat',
|
|
202
|
-
'k-chip-outline k-chip-outline-base': fillMode === 'outline'
|
|
203
|
-
}"
|
|
204
|
-
>
|
|
205
|
-
<span class="k-chip-content">
|
|
206
|
-
@if (isGroupTag(tag)) {
|
|
207
|
-
<span class="k-chip-label k-text-ellipsis">
|
|
208
|
-
@if (groupTemplate) {
|
|
209
|
-
<ng-template
|
|
210
|
-
[templateContext]="{
|
|
211
|
-
templateRef: groupTemplate.templateRef,
|
|
212
|
-
$implicit: tag
|
|
213
|
-
}">
|
|
214
|
-
</ng-template>
|
|
215
|
-
}
|
|
216
|
-
@if (!groupTemplate) {
|
|
217
|
-
{{ tag.length }} {{ tag.length === 1 ? 'item' : 'items' }} selected
|
|
218
|
-
}
|
|
219
|
-
</span>
|
|
220
|
-
} @else {
|
|
221
|
-
<span class="k-chip-label k-text-ellipsis">
|
|
222
|
-
@if (template) {
|
|
223
|
-
<ng-template
|
|
224
|
-
[templateContext]="{
|
|
225
|
-
templateRef: template.templateRef,
|
|
226
|
-
$implicit: tag
|
|
227
|
-
}">
|
|
228
|
-
</ng-template>
|
|
229
|
-
}
|
|
230
|
-
@if (!template) {
|
|
231
|
-
{{ tagProp(tag, textField, index) }}
|
|
232
|
-
}
|
|
233
|
-
</span>
|
|
234
|
-
}
|
|
235
|
-
</span>
|
|
236
|
-
<span class="k-chip-actions">
|
|
237
|
-
<span aria-label="delete" [attr.aria-hidden]="index !== focused" class="k-chip-action k-chip-remove-action">
|
|
238
|
-
<kendo-icon-wrapper
|
|
239
|
-
(mousedown)="deleteTag($event, tag, index)"
|
|
240
|
-
name="x-circle"
|
|
241
|
-
[svgIcon]="xCircleIcon"
|
|
242
|
-
>
|
|
243
|
-
</kendo-icon-wrapper>
|
|
244
|
-
</span>
|
|
245
|
-
</span>
|
|
246
|
-
</div>
|
|
247
|
-
}
|
|
248
|
-
<ng-content></ng-content>
|
|
249
|
-
`,
|
|
250
|
-
standalone: true,
|
|
251
|
-
imports: [NgClass, TemplateContextDirective, IconWrapperComponent]
|
|
252
|
-
}]
|
|
253
|
-
}], ctorParameters: () => [{ type: i0.Renderer2 }, { type: i0.ElementRef }], propDecorators: { tags: [{
|
|
254
|
-
type: Input
|
|
255
|
-
}], textField: [{
|
|
256
|
-
type: Input
|
|
257
|
-
}], valueField: [{
|
|
258
|
-
type: Input
|
|
259
|
-
}], valueDepth: [{
|
|
260
|
-
type: Input
|
|
261
|
-
}], focused: [{
|
|
262
|
-
type: Input
|
|
263
|
-
}], template: [{
|
|
264
|
-
type: Input
|
|
265
|
-
}], groupTemplate: [{
|
|
266
|
-
type: Input
|
|
267
|
-
}], disabled: [{
|
|
268
|
-
type: Input
|
|
269
|
-
}], tagPrefix: [{
|
|
270
|
-
type: Input
|
|
271
|
-
}], id: [{
|
|
272
|
-
type: Input
|
|
273
|
-
}], size: [{
|
|
274
|
-
type: Input
|
|
275
|
-
}], rounded: [{
|
|
276
|
-
type: Input
|
|
277
|
-
}], fillMode: [{
|
|
278
|
-
type: Input
|
|
279
|
-
}], disabledIndices: [{
|
|
280
|
-
type: Input
|
|
281
|
-
}], removeTag: [{
|
|
282
|
-
type: Output
|
|
283
|
-
}], hostClass: [{
|
|
284
|
-
type: HostBinding,
|
|
285
|
-
args: ['class.k-chip-list']
|
|
286
|
-
}], hostId: [{
|
|
287
|
-
type: HostBinding,
|
|
288
|
-
args: ['attr.id']
|
|
289
|
-
}], taglistRole: [{
|
|
290
|
-
type: HostBinding,
|
|
291
|
-
args: ['attr.role']
|
|
292
|
-
}], multiselectable: [{
|
|
293
|
-
type: HostBinding,
|
|
294
|
-
args: ['attr.aria-multiselectable']
|
|
295
|
-
}] } });
|
|
@@ -1,48 +0,0 @@
|
|
|
1
|
-
/**-----------------------------------------------------------------------------------------
|
|
2
|
-
* Copyright © 2026 Progress Software Corporation. All rights reserved.
|
|
3
|
-
* Licensed under commercial license. See LICENSE.md in the project root for more information
|
|
4
|
-
*-------------------------------------------------------------------------------------------*/
|
|
5
|
-
import { Directive, TemplateRef } from '@angular/core';
|
|
6
|
-
import * as i0 from "@angular/core";
|
|
7
|
-
/**
|
|
8
|
-
* Renders the content of the custom list item in the MultiSelect
|
|
9
|
-
* ([see example](slug:templates_multiselect#toc-rendering-custom-item-content)).
|
|
10
|
-
* The template context is set to the current component.
|
|
11
|
-
* To get a reference to the current text that is typed by the
|
|
12
|
-
* user, use the `let-customItem` directive.
|
|
13
|
-
*
|
|
14
|
-
* The `CustomItemTemplate` directive can only be used with the MultiSelect component.
|
|
15
|
-
*
|
|
16
|
-
* @example
|
|
17
|
-
* ```typescript
|
|
18
|
-
* @Component({
|
|
19
|
-
* selector: 'my-app',
|
|
20
|
-
* template: `
|
|
21
|
-
* <kendo-multiselect [data]="listItems" [allowCustom]="true">
|
|
22
|
-
* <ng-template kendoMultiSelectCustomItemTemplate let-customItem>
|
|
23
|
-
* <span>New Item: {{customItem}}</span>
|
|
24
|
-
* </ng-template>
|
|
25
|
-
* </kendo-multiselect>
|
|
26
|
-
* `
|
|
27
|
-
* })
|
|
28
|
-
* class AppComponent {
|
|
29
|
-
* public listItems: Array<string> = ["Item 1", "Item 2", "Item 3", "Item 4"];
|
|
30
|
-
* }
|
|
31
|
-
* ```
|
|
32
|
-
*
|
|
33
|
-
*/
|
|
34
|
-
export class CustomItemTemplateDirective {
|
|
35
|
-
templateRef;
|
|
36
|
-
constructor(templateRef) {
|
|
37
|
-
this.templateRef = templateRef;
|
|
38
|
-
}
|
|
39
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: CustomItemTemplateDirective, deps: [{ token: i0.TemplateRef }], target: i0.ɵɵFactoryTarget.Directive });
|
|
40
|
-
static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "18.2.14", type: CustomItemTemplateDirective, isStandalone: true, selector: "[kendoMultiSelectCustomItemTemplate]", ngImport: i0 });
|
|
41
|
-
}
|
|
42
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: CustomItemTemplateDirective, decorators: [{
|
|
43
|
-
type: Directive,
|
|
44
|
-
args: [{
|
|
45
|
-
selector: '[kendoMultiSelectCustomItemTemplate]',
|
|
46
|
-
standalone: true
|
|
47
|
-
}]
|
|
48
|
-
}], ctorParameters: () => [{ type: i0.TemplateRef }] });
|
|
@@ -1,55 +0,0 @@
|
|
|
1
|
-
/**-----------------------------------------------------------------------------------------
|
|
2
|
-
* Copyright © 2026 Progress Software Corporation. All rights reserved.
|
|
3
|
-
* Licensed under commercial license. See LICENSE.md in the project root for more information
|
|
4
|
-
*-------------------------------------------------------------------------------------------*/
|
|
5
|
-
import { Directive, TemplateRef } from '@angular/core';
|
|
6
|
-
import * as i0 from "@angular/core";
|
|
7
|
-
/**
|
|
8
|
-
* Renders the fixed group header content. To define the fixed group template, nest an `<ng-template>` tag
|
|
9
|
-
* with the `kendo<ComponentName>FixedGroupTemplate` directive inside the component tag. The template context is
|
|
10
|
-
* set to the current component. To get a reference to the current data item, use the `let-groupName` directive.
|
|
11
|
-
*
|
|
12
|
-
* - [Using `FixedGroupTemplate` with the AutoComplete]({% slug templates_autocomplete %}#toc-fixed-group-header-template)
|
|
13
|
-
* - [Using `FixedGroupTemplate` with the ComboBox]({% slug templates_combobox %}#toc-fixed-group-header-template)
|
|
14
|
-
* - [Using `FixedGroupTemplate` with the MultiColumnComboBox]({% slug templates_multicolumncombobox %}#toc-fixed-group-header-template)
|
|
15
|
-
* - [Using `FixedGroupTemplate` with the DropDownList]({% slug templates_ddl %}#toc-fixed-group-header-template)
|
|
16
|
-
* - [Using `FixedGroupTemplate` with the MultiSelect]({% slug templates_multiselect %}#toc-fixed-group-header-template)
|
|
17
|
-
*
|
|
18
|
-
* @example
|
|
19
|
-
* ```ts
|
|
20
|
-
* import { groupBy } from '@progress/kendo-data-query';
|
|
21
|
-
* _@Component({
|
|
22
|
-
* selector: 'my-app',
|
|
23
|
-
* template: `
|
|
24
|
-
* <kendo-combobox [data]="groupedData" textField="name" valueField="name">
|
|
25
|
-
* <ng-template kendoComboBoxFixedGroupTemplate let-groupName>
|
|
26
|
-
* <span>Food type: {{groupName}} option</span>
|
|
27
|
-
* </ng-template>
|
|
28
|
-
* </kendo-combobox>
|
|
29
|
-
* `
|
|
30
|
-
* })
|
|
31
|
-
* class AppComponent {
|
|
32
|
-
* public data = [
|
|
33
|
-
* { name: "Pork", category: "Food", subcategory: "Meat" },
|
|
34
|
-
* { name: "Pepper", category: "Food", subcategory: "Vegetables" },
|
|
35
|
-
* { name: "Beef", category: "Food", subcategory: "Meat" }
|
|
36
|
-
* ];
|
|
37
|
-
* public groupedData = groupBy(this.data, [{field: "subcategory"}]);
|
|
38
|
-
* }
|
|
39
|
-
* ```
|
|
40
|
-
*/
|
|
41
|
-
export class FixedGroupTemplateDirective {
|
|
42
|
-
templateRef;
|
|
43
|
-
constructor(templateRef) {
|
|
44
|
-
this.templateRef = templateRef;
|
|
45
|
-
}
|
|
46
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: FixedGroupTemplateDirective, deps: [{ token: i0.TemplateRef }], target: i0.ɵɵFactoryTarget.Directive });
|
|
47
|
-
static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "18.2.14", type: FixedGroupTemplateDirective, isStandalone: true, selector: "[kendoDropDownListFixedGroupTemplate],[kendoComboBoxFixedGroupTemplate],[kendoMultiColumnComboBoxFixedGroupTemplate],[kendoAutoCompleteFixedGroupTemplate],[kendoMultiSelectFixedGroupTemplate]", ngImport: i0 });
|
|
48
|
-
}
|
|
49
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: FixedGroupTemplateDirective, decorators: [{
|
|
50
|
-
type: Directive,
|
|
51
|
-
args: [{
|
|
52
|
-
selector: '[kendoDropDownListFixedGroupTemplate],[kendoComboBoxFixedGroupTemplate],[kendoMultiColumnComboBoxFixedGroupTemplate],[kendoAutoCompleteFixedGroupTemplate],[kendoMultiSelectFixedGroupTemplate]',
|
|
53
|
-
standalone: true
|
|
54
|
-
}]
|
|
55
|
-
}], ctorParameters: () => [{ type: i0.TemplateRef }] });
|
|
@@ -1,49 +0,0 @@
|
|
|
1
|
-
/**-----------------------------------------------------------------------------------------
|
|
2
|
-
* Copyright © 2026 Progress Software Corporation. All rights reserved.
|
|
3
|
-
* Licensed under commercial license. See LICENSE.md in the project root for more information
|
|
4
|
-
*-------------------------------------------------------------------------------------------*/
|
|
5
|
-
import { Directive, TemplateRef } from '@angular/core';
|
|
6
|
-
import * as i0 from "@angular/core";
|
|
7
|
-
/**
|
|
8
|
-
* Renders the footer content of the list. To define the footer template, nest an `<ng-template>` tag
|
|
9
|
-
* with the `kendo<ComponentName>FooterTemplate` directive inside the component tag.
|
|
10
|
-
*
|
|
11
|
-
* - [Using `FooterTemplate` with the AutoComplete]({% slug templates_autocomplete %}#toc-footer-template)
|
|
12
|
-
* - [Using `FooterTemplate` with the ComboBox]({% slug templates_combobox %}#toc-footer-template)
|
|
13
|
-
* - [Using `FooterTemplate` with the MultiColumnComboBox]({% slug templates_multicolumncombobox %}#toc-footer-template)
|
|
14
|
-
* - [Using `FooterTemplate` with the DropDownList]({% slug templates_ddl %}#toc-footer-template)
|
|
15
|
-
* - [Using `FooterTemplate` with the DropDownTree]({% slug templates_ddt %}#toc-footer-template)
|
|
16
|
-
* - [Using `FooterTemplate` with the MultiSelect]({% slug templates_multiselect %}#toc-footer-template)
|
|
17
|
-
*
|
|
18
|
-
* @example
|
|
19
|
-
* ```ts
|
|
20
|
-
* _@Component({
|
|
21
|
-
* selector: 'my-app',
|
|
22
|
-
* template: `
|
|
23
|
-
* <kendo-combobox [data]="listItems">
|
|
24
|
-
* <ng-template kendoComboBoxFooterTemplate>
|
|
25
|
-
* <h4>Footer template</h4>
|
|
26
|
-
* </ng-template>
|
|
27
|
-
* </kendo-combobox>
|
|
28
|
-
* `
|
|
29
|
-
* })
|
|
30
|
-
* class AppComponent {
|
|
31
|
-
* public listItems: Array<string> = ["Item 1", "Item 2", "Item 3", "Item 4"];
|
|
32
|
-
* }
|
|
33
|
-
* ```
|
|
34
|
-
*/
|
|
35
|
-
export class FooterTemplateDirective {
|
|
36
|
-
templateRef;
|
|
37
|
-
constructor(templateRef) {
|
|
38
|
-
this.templateRef = templateRef;
|
|
39
|
-
}
|
|
40
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: FooterTemplateDirective, deps: [{ token: i0.TemplateRef }], target: i0.ɵɵFactoryTarget.Directive });
|
|
41
|
-
static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "18.2.14", type: FooterTemplateDirective, isStandalone: true, selector: "[kendoDropDownListFooterTemplate],[kendoComboBoxFooterTemplate],[kendoDropDownTreeFooterTemplate],[kendoMultiColumnComboBoxFooterTemplate],[kendoAutoCompleteFooterTemplate],[kendoMultiSelectFooterTemplate],[kendoMultiSelectTreeFooterTemplate]", ngImport: i0 });
|
|
42
|
-
}
|
|
43
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: FooterTemplateDirective, decorators: [{
|
|
44
|
-
type: Directive,
|
|
45
|
-
args: [{
|
|
46
|
-
selector: '[kendoDropDownListFooterTemplate],[kendoComboBoxFooterTemplate],[kendoDropDownTreeFooterTemplate],[kendoMultiColumnComboBoxFooterTemplate],[kendoAutoCompleteFooterTemplate],[kendoMultiSelectFooterTemplate],[kendoMultiSelectTreeFooterTemplate]',
|
|
47
|
-
standalone: true
|
|
48
|
-
}]
|
|
49
|
-
}], ctorParameters: () => [{ type: i0.TemplateRef }] });
|
|
@@ -1,47 +0,0 @@
|
|
|
1
|
-
/**-----------------------------------------------------------------------------------------
|
|
2
|
-
* Copyright © 2026 Progress Software Corporation. All rights reserved.
|
|
3
|
-
* Licensed under commercial license. See LICENSE.md in the project root for more information
|
|
4
|
-
*-------------------------------------------------------------------------------------------*/
|
|
5
|
-
import { Directive, TemplateRef } from '@angular/core';
|
|
6
|
-
import * as i0 from "@angular/core";
|
|
7
|
-
/**
|
|
8
|
-
* Renders the grouped tag values in the MultiSelect
|
|
9
|
-
* ([see example]({% slug summarytagmode_multiselect %})).
|
|
10
|
-
* The template context is set to the current component.
|
|
11
|
-
* To get a reference to the current grouped
|
|
12
|
-
* data items collection, use the `let-dataItems` directive.
|
|
13
|
-
*
|
|
14
|
-
* > The `GroupTagTemplate` directive can only be used with the MultiSelect and MultiSelectTree components.
|
|
15
|
-
*
|
|
16
|
-
* @example
|
|
17
|
-
* ```ts
|
|
18
|
-
* _@Component({
|
|
19
|
-
* selector: 'my-app',
|
|
20
|
-
* template: `
|
|
21
|
-
* <kendo-multiselect kendoMultiSelectSummaryTag [data]="items">
|
|
22
|
-
* <ng-template kendoMultiSelectGroupTagTemplate let-dataItems>
|
|
23
|
-
* <span>{{dataItems.length}} item(s) selected</span>
|
|
24
|
-
* </ng-template>
|
|
25
|
-
* </kendo-multiselect>
|
|
26
|
-
* `
|
|
27
|
-
* })
|
|
28
|
-
* class AppComponent {
|
|
29
|
-
* public items: Array<string> = ["Item 1", "Item 2", "Item 3", "Item 4"];
|
|
30
|
-
* }
|
|
31
|
-
* ```
|
|
32
|
-
*/
|
|
33
|
-
export class GroupTagTemplateDirective {
|
|
34
|
-
templateRef;
|
|
35
|
-
constructor(templateRef) {
|
|
36
|
-
this.templateRef = templateRef;
|
|
37
|
-
}
|
|
38
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: GroupTagTemplateDirective, deps: [{ token: i0.TemplateRef }], target: i0.ɵɵFactoryTarget.Directive });
|
|
39
|
-
static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "18.2.14", type: GroupTagTemplateDirective, isStandalone: true, selector: "[kendoMultiSelectGroupTagTemplate],[kendoMultiSelectTreeGroupTagTemplate]", ngImport: i0 });
|
|
40
|
-
}
|
|
41
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: GroupTagTemplateDirective, decorators: [{
|
|
42
|
-
type: Directive,
|
|
43
|
-
args: [{
|
|
44
|
-
selector: '[kendoMultiSelectGroupTagTemplate],[kendoMultiSelectTreeGroupTagTemplate]',
|
|
45
|
-
standalone: true
|
|
46
|
-
}]
|
|
47
|
-
}], ctorParameters: () => [{ type: i0.TemplateRef }] });
|
|
@@ -1,55 +0,0 @@
|
|
|
1
|
-
/**-----------------------------------------------------------------------------------------
|
|
2
|
-
* Copyright © 2026 Progress Software Corporation. All rights reserved.
|
|
3
|
-
* Licensed under commercial license. See LICENSE.md in the project root for more information
|
|
4
|
-
*-------------------------------------------------------------------------------------------*/
|
|
5
|
-
import { Directive, TemplateRef } from '@angular/core';
|
|
6
|
-
import * as i0 from "@angular/core";
|
|
7
|
-
/**
|
|
8
|
-
* Renders the group header content. To define the group template, nest an `<ng-template>` tag
|
|
9
|
-
* with the `kendo<ComponentName>GroupTemplate` directive inside the component tag. The template context is
|
|
10
|
-
* set to the current component. To get a reference to the current data item, use the `let-groupName` directive.
|
|
11
|
-
*
|
|
12
|
-
* - [Using `GroupTemplate` with the AutoComplete]({% slug templates_autocomplete %}#toc-group-header-template)
|
|
13
|
-
* - [Using `GroupTemplate` with the ComboBox]({% slug templates_combobox %}#toc-group-header-template)
|
|
14
|
-
* - [Using `GroupTemplate` with the MultiColumnComboBox]({% slug templates_multicolumncombobox %}#toc-group-header-template)
|
|
15
|
-
* - [Using `GroupTemplate` with the DropDownList]({% slug templates_ddl %}#toc-group-header-template)
|
|
16
|
-
* - [Using `GroupTemplate` with the MultiSelect]({% slug templates_multiselect %}#toc-group-header-template)
|
|
17
|
-
*
|
|
18
|
-
* @example
|
|
19
|
-
* ```ts
|
|
20
|
-
* import { groupBy } from '@progress/kendo-data-query';
|
|
21
|
-
* _@Component({
|
|
22
|
-
* selector: 'my-app',
|
|
23
|
-
* template: `
|
|
24
|
-
* <kendo-combobox [data]="groupedData" textField="name" valueField="name">
|
|
25
|
-
* <ng-template kendoComboBoxGroupTemplate let-groupName>
|
|
26
|
-
* <span>Food type: {{groupName}} option</span>
|
|
27
|
-
* </ng-template>
|
|
28
|
-
* </kendo-combobox>
|
|
29
|
-
* `
|
|
30
|
-
* })
|
|
31
|
-
* class AppComponent {
|
|
32
|
-
* public data = [
|
|
33
|
-
* { name: "Pork", category: "Food", subcategory: "Meat" },
|
|
34
|
-
* { name: "Pepper", category: "Food", subcategory: "Vegetables" },
|
|
35
|
-
* { name: "Beef", category: "Food", subcategory: "Meat" }
|
|
36
|
-
* ];
|
|
37
|
-
* public groupedData = groupBy(this.data, [{field: "subcategory"}]);
|
|
38
|
-
* }
|
|
39
|
-
* ```
|
|
40
|
-
*/
|
|
41
|
-
export class GroupTemplateDirective {
|
|
42
|
-
templateRef;
|
|
43
|
-
constructor(templateRef) {
|
|
44
|
-
this.templateRef = templateRef;
|
|
45
|
-
}
|
|
46
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: GroupTemplateDirective, deps: [{ token: i0.TemplateRef }], target: i0.ɵɵFactoryTarget.Directive });
|
|
47
|
-
static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "18.2.14", type: GroupTemplateDirective, isStandalone: true, selector: "[kendoDropDownListGroupTemplate],[kendoComboBoxGroupTemplate],[kendoMultiColumnComboBoxGroupTemplate],[kendoAutoCompleteGroupTemplate],[kendoMultiSelectGroupTemplate]", ngImport: i0 });
|
|
48
|
-
}
|
|
49
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: GroupTemplateDirective, decorators: [{
|
|
50
|
-
type: Directive,
|
|
51
|
-
args: [{
|
|
52
|
-
selector: '[kendoDropDownListGroupTemplate],[kendoComboBoxGroupTemplate],[kendoMultiColumnComboBoxGroupTemplate],[kendoAutoCompleteGroupTemplate],[kendoMultiSelectGroupTemplate]',
|
|
53
|
-
standalone: true
|
|
54
|
-
}]
|
|
55
|
-
}], ctorParameters: () => [{ type: i0.TemplateRef }] });
|