@progress/kendo-angular-dropdowns 19.0.0-develop.3 → 19.0.0-develop.31

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (44) hide show
  1. package/autocomplete/autocomplete.component.d.ts +11 -17
  2. package/codemods/template-transformer/index.js +94 -0
  3. package/codemods/utils.js +553 -0
  4. package/codemods/v19/autocomplete-subtitle.js +50 -0
  5. package/codemods/v19/autocomplete-title.js +51 -0
  6. package/codemods/v19/combobox-subtitle.js +50 -0
  7. package/codemods/v19/combobox-title.js +52 -0
  8. package/codemods/v19/dropdownlist-subtitle.js +49 -0
  9. package/codemods/v19/dropdownlist-title.js +51 -0
  10. package/codemods/v19/dropdowntree-subtitle.js +49 -0
  11. package/codemods/v19/dropdowntree-title.js +51 -0
  12. package/codemods/v19/multicolumncombobox-subtitle.js +49 -0
  13. package/codemods/v19/multicolumncombobox-title.js +51 -0
  14. package/codemods/v19/multiselect-subtitle.js +49 -0
  15. package/codemods/v19/multiselect-title.js +51 -0
  16. package/codemods/v19/multiselecttree-subtitle.js +49 -0
  17. package/codemods/v19/multiselecttree-title.js +51 -0
  18. package/comboboxes/combobox.component.d.ts +12 -14
  19. package/common/{action-sheet.component.d.ts → adaptive-renderer.component.d.ts} +10 -13
  20. package/common/list.component.d.ts +8 -1
  21. package/common/localization/messages.d.ts +5 -5
  22. package/common/util.d.ts +0 -6
  23. package/dropdownlist/dropdownlist.component.d.ts +7 -19
  24. package/dropdowntrees/dropdowntree.component.d.ts +9 -16
  25. package/dropdowntrees/multiselecttree.component.d.ts +9 -28
  26. package/esm2022/autocomplete/autocomplete.component.mjs +71 -94
  27. package/esm2022/comboboxes/combobox.component.mjs +85 -100
  28. package/esm2022/comboboxes/multicolumncombobox.component.mjs +23 -26
  29. package/esm2022/common/{action-sheet.component.mjs → adaptive-renderer.component.mjs} +71 -107
  30. package/esm2022/common/list.component.mjs +300 -213
  31. package/esm2022/common/localization/messages.mjs +7 -7
  32. package/esm2022/common/searchbar.component.mjs +2 -3
  33. package/esm2022/common/util.mjs +0 -22
  34. package/esm2022/dropdownlist/dropdownlist.component.mjs +50 -123
  35. package/esm2022/dropdowntrees/dropdowntree.component.mjs +63 -72
  36. package/esm2022/dropdowntrees/multiselecttree.component.mjs +65 -122
  37. package/esm2022/index.mjs +1 -1
  38. package/esm2022/multiselect/multiselect.component.mjs +133 -190
  39. package/esm2022/package-metadata.mjs +2 -2
  40. package/fesm2022/progress-kendo-angular-dropdowns.mjs +920 -1130
  41. package/index.d.ts +1 -1
  42. package/multiselect/multiselect.component.d.ts +13 -26
  43. package/package.json +90 -10
  44. package/schematics/ngAdd/index.js +2 -2
@@ -17,7 +17,7 @@ import { PreventableEvent } from '../common/models/preventable-event';
17
17
  import { NavigationAction } from '../common/navigation/navigation-action';
18
18
  import { RemoveTagEvent } from '../common/models/remove-tag-event';
19
19
  import { MultiSelectTreeMessages } from '../common/constants/error-messages';
20
- import { animationDuration, fetchDescendentNodes, getFillModeClass, getRoundedClass, getSearchableItems, getSizeClass, hasProps, isArray, isLetter, isObject, isObjectArray, isPresent, isTruthy, isUntouched, noop, parseNumber, setActionSheetTitle, updateActionSheetAdaptiveAppearance, valueFrom } from '../common/util';
20
+ import { animationDuration, fetchDescendentNodes, getFillModeClass, getRoundedClass, getSearchableItems, getSizeClass, hasProps, isArray, isLetter, isObject, isObjectArray, isPresent, isTruthy, isUntouched, noop, parseNumber, setActionSheetTitle, valueFrom } from '../common/util';
21
21
  import { HeaderTemplateDirective } from '../common/templates/header-template.directive';
22
22
  import { FooterTemplateDirective } from '../common/templates/footer-template.directive';
23
23
  import { NodeTemplateDirective } from './templates/node-template.directive';
@@ -28,7 +28,7 @@ import { merge, of, Subject, Subscription } from 'rxjs';
28
28
  import { debounceTime, filter, tap } from 'rxjs/operators';
29
29
  import { buildTreeItem, MultiSelectTreeLookupService, nodeIndex } from './lookup/lookup.service';
30
30
  import { searchIcon, xIcon } from '@progress/kendo-svg-icons';
31
- import { ResponsiveRendererComponent } from '../common/action-sheet.component';
31
+ import { AdaptiveRendererComponent } from '../common/adaptive-renderer.component';
32
32
  import { CheckDirective } from './checked-state/check.directive';
33
33
  import { CheckAllDirective } from './checked-state/check-all.directive';
34
34
  import { FilterInputDirective } from '../common/filter-input.directive';
@@ -129,41 +129,24 @@ export class MultiSelectTreeComponent {
129
129
  */
130
130
  onFilterChange(text) {
131
131
  if (this.filterable) {
132
+ this.filter = text;
132
133
  this.filterChange.emit(text);
133
134
  }
134
135
  }
135
- /**
136
- * @hidden
137
- */
138
- onExpand() {
139
- this._searchableNodes = getSearchableItems(this.treeViewId, this.actionSheet.element.nativeElement);
140
- this.isActionSheetExpanded = true;
141
- }
142
- /**
143
- * @hidden
144
- */
145
- onCollapse() {
146
- this.isActionSheetExpanded = false;
147
- }
148
136
  /**
149
137
  * Enables or disables the adaptive mode. By default the adaptive rendering is disabled.
150
138
  */
151
139
  adaptiveMode = 'none';
152
140
  /**
153
141
  * Sets the title of the ActionSheet that is rendered instead of the Popup when using small screen devices.
154
- * By default the ActionSheet title uses the text provided for the label of the AutoComplete.
142
+ * By default the ActionSheet title uses the text provided for the label of the MultiSelectTree.
155
143
  */
156
- title = '';
144
+ adaptiveTitle = '';
157
145
  /**
158
146
  * Sets the subtitle of the ActionSheet that is rendered instead of the Popup when using small screen devices.
159
- * By default the ActionSheet subtitle uses the text provided for the `placeholder` of the AutoComplete.
147
+ * By default the ActionSheet does not render a subtitle.
160
148
  */
161
- set subtitle(_subtitle) {
162
- this._subtitle = _subtitle;
163
- }
164
- get subtitle() {
165
- return this._subtitle || this.placeholder;
166
- }
149
+ adaptiveSubtitle;
167
150
  /**
168
151
  * @hidden
169
152
  */
@@ -177,7 +160,9 @@ export class MultiSelectTreeComponent {
177
160
  /**
178
161
  * @hidden
179
162
  */
180
- isActionSheetExpanded = false;
163
+ get isActionSheetExpanded() {
164
+ return this.actionSheet?.expanded;
165
+ }
181
166
  /**
182
167
  * @hidden
183
168
  */
@@ -217,18 +202,18 @@ export class MultiSelectTreeComponent {
217
202
  /**
218
203
  * @hidden
219
204
  */
220
- responsiveRendererComponent;
205
+ adaptiveRendererComponent;
221
206
  /**
222
207
  * @hidden
223
208
  */
224
209
  get actionSheet() {
225
- return this.responsiveRendererComponent?.actionSheet;
210
+ return this.adaptiveRendererComponent?.actionSheet;
226
211
  }
227
212
  /**
228
213
  * @hidden
229
214
  */
230
215
  get actionSheetSearchBar() {
231
- return this.responsiveRendererComponent?.actionSheetSearchBar;
216
+ return this.adaptiveRendererComponent?.actionSheetSearchBar;
232
217
  }
233
218
  /**
234
219
  * @hidden
@@ -786,7 +771,6 @@ export class MultiSelectTreeComponent {
786
771
  tags;
787
772
  focusedTagIndex = undefined;
788
773
  disabledIndices;
789
- _subtitle;
790
774
  _nodes;
791
775
  _value = [];
792
776
  _tabindex = 0;
@@ -795,8 +779,6 @@ export class MultiSelectTreeComponent {
795
779
  _isFocused = false;
796
780
  _treeview;
797
781
  _dataItems;
798
- _tempValue;
799
- _initiallyCheckedItems = [];
800
782
  _size = 'medium';
801
783
  _rounded = 'medium';
802
784
  _fillMode = 'solid';
@@ -842,17 +824,11 @@ export class MultiSelectTreeComponent {
842
824
  this.cdr.markForCheck();
843
825
  }));
844
826
  this.setComponentClasses();
845
- this._initiallyCheckedItems = [...this.checkedItems];
846
827
  }
847
828
  ngAfterViewInit() {
848
829
  this.windowSize = this.adaptiveService.size;
849
830
  this.subs.add(this.renderer.listen(this.wrapper.nativeElement, 'click', this.handleClick.bind(this)));
850
831
  this.subs.add(this.renderer.listen(this.wrapper.nativeElement, 'keydown', this.handleKeydown.bind(this)));
851
- if (this.actionSheet && isDocumentAvailable()) {
852
- // The following syntax is used as it does not violate CSP compliance
853
- this.actionSheet.element.nativeElement.style.setProperty('--kendo-actionsheet-height', '60vh');
854
- this.actionSheet.element.nativeElement.style.setProperty('--kendo-actionsheet-max-height', 'none');
855
- }
856
832
  }
857
833
  /**
858
834
  * @hidden
@@ -898,23 +874,6 @@ export class MultiSelectTreeComponent {
898
874
  this.allNodesHidden = this.areNodesHidden(this.data);
899
875
  }
900
876
  }
901
- /**
902
- * @hidden
903
- */
904
- applyValue() {
905
- this.value = this._tempValue;
906
- this._initiallyCheckedItems = [...this.checkedItems];
907
- this.emitValueChange(this.value);
908
- this.setTags();
909
- this.toggle(false);
910
- }
911
- /**
912
- * @hidden
913
- */
914
- cancelValue() {
915
- this.checkedItems = [...this._initiallyCheckedItems];
916
- this.togglePopup(false);
917
- }
918
877
  ngAfterContentInit() {
919
878
  this.isContentInit = true;
920
879
  // Still need to keep the call of 'registerLookupItems()' from ngAfterContentInit in the cases when the data is passed initially
@@ -1338,14 +1297,17 @@ export class MultiSelectTreeComponent {
1338
1297
  this.popupRef = null;
1339
1298
  this.renderer.setAttribute(this.wrapper.nativeElement, 'aria-expanded', 'false');
1340
1299
  this.renderer.removeAttribute(this.wrapper.nativeElement, 'aria-controls');
1341
- if (this.filter !== "") {
1342
- this.filter = "";
1343
- this.allNodesHidden = false;
1344
- if (hasObservers(this.filterChange)) {
1345
- this._zone.run(() => {
1346
- this.filterChange.emit("");
1347
- });
1348
- }
1300
+ this.clearFilter();
1301
+ }
1302
+ }
1303
+ clearFilter() {
1304
+ if (this.filter !== "") {
1305
+ this.filter = "";
1306
+ this.allNodesHidden = false;
1307
+ if (hasObservers(this.filterChange)) {
1308
+ this._zone.run(() => {
1309
+ this.filterChange.emit("");
1310
+ });
1349
1311
  }
1350
1312
  }
1351
1313
  }
@@ -1537,9 +1499,7 @@ export class MultiSelectTreeComponent {
1537
1499
  }
1538
1500
  setState() {
1539
1501
  if (isPresent(this.dataItems) && isPresent(this.valueField)) {
1540
- if (!this.isActionSheetExpanded) {
1541
- this.setTags();
1542
- }
1502
+ this.setTags();
1543
1503
  this.checkedItems = this.dataItems.slice();
1544
1504
  }
1545
1505
  this.cdr.markForCheck();
@@ -1562,13 +1522,8 @@ export class MultiSelectTreeComponent {
1562
1522
  const newValue = this.valuePrimitive ?
1563
1523
  value.map(item => valueFrom(item, this.valueField)) :
1564
1524
  value.map(item => item.dataItem);
1565
- if (this.isActionSheetExpanded) {
1566
- this._tempValue = newValue.slice();
1567
- }
1568
- else {
1569
- this.value = newValue;
1570
- this.emitValueChange(this.value);
1571
- }
1525
+ this.value = newValue;
1526
+ this.emitValueChange(this.value);
1572
1527
  }
1573
1528
  /**
1574
1529
  * @hidden
@@ -1650,26 +1605,20 @@ export class MultiSelectTreeComponent {
1650
1605
  this.actionSheet.toggle(false);
1651
1606
  this.renderer.removeAttribute(this.wrapper.nativeElement, 'aria-controls');
1652
1607
  this.renderer.setAttribute(this.wrapper.nativeElement, 'aria-expanded', 'false');
1653
- if (this.filterable) {
1654
- this.actionSheetSearchBar.value = '';
1655
- this.filterChange.emit('');
1656
- }
1608
+ this.clearFilter();
1657
1609
  this.closed.emit();
1658
1610
  }
1659
1611
  openActionSheet() {
1660
- this.windowSize = this.adaptiveService.size;
1661
1612
  this.actionSheet.toggle(true);
1662
- this.title = setActionSheetTitle(this.wrapper, this.title);
1613
+ this.adaptiveTitle = setActionSheetTitle(this.wrapper, this.adaptiveTitle);
1663
1614
  this.cdr.detectChanges();
1664
1615
  this.renderer.setAttribute(this.wrapper.nativeElement, 'aria-controls', this.treeViewId);
1665
1616
  this.renderer.setAttribute(this.wrapper.nativeElement, 'aria-expanded', 'true');
1666
- updateActionSheetAdaptiveAppearance(this.actionSheet, this.windowSize, this.renderer);
1667
1617
  this.cdr.detectChanges();
1668
1618
  this.opened.emit();
1669
- this.filterable && this.actionSheetSearchBar.focus();
1670
1619
  }
1671
1620
  static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: MultiSelectTreeComponent, deps: [{ token: i0.Injector }, { token: i0.ElementRef }, { token: i1.PopupService }, { token: i0.Renderer2 }, { token: i2.NavigationService }, { token: i0.NgZone }, { token: i3.LocalizationService }, { token: i0.ChangeDetectorRef }, { token: i4.MultiSelectTreeLookupService }, { token: i5.AdaptiveService }], target: i0.ɵɵFactoryTarget.Component });
1672
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: MultiSelectTreeComponent, isStandalone: true, selector: "kendo-multiselecttree", inputs: { adaptiveMode: "adaptiveMode", title: "title", subtitle: "subtitle", tabindex: "tabindex", size: "size", rounded: "rounded", fillMode: "fillMode", popupSettings: "popupSettings", checkableSettings: "checkableSettings", data: "data", value: "value", dataItems: "dataItems", textField: "textField", valueField: "valueField", valueDepth: "valueDepth", loading: "loading", placeholder: "placeholder", listHeight: "listHeight", disabled: "disabled", readonly: "readonly", valuePrimitive: "valuePrimitive", loadOnDemand: "loadOnDemand", focusableId: "focusableId", clearButton: "clearButton", filterable: "filterable", checkAll: "checkAll", hasChildren: "hasChildren", fetchChildren: "fetchChildren", isNodeExpanded: "isNodeExpanded", isNodeVisible: "isNodeVisible", itemDisabled: "itemDisabled", tagMapper: "tagMapper" }, outputs: { onFocus: "focus", onBlur: "blur", open: "open", opened: "opened", close: "close", closed: "closed", nodeExpand: "nodeExpand", nodeCollapse: "nodeCollapse", valueChange: "valueChange", removeTag: "removeTag", filterChange: "filterChange" }, host: { properties: { "class.k-multiselecttree": "this.hostClasses", "class.k-input": "this.hostClasses", "class.k-disabled": "this.isDisabled", "attr.aria-disabled": "this.isDisabled", "attr.aria-autocomplete": "this.hostAriaAutocomplete", "class.k-loading": "this.isLoading", "attr.aria-invalid": "this.hostAriaInvalid", "attr.aria-busy": "this.isBusy", "attr.id": "this.id", "attr.dir": "this.direction", "attr.tabindex": "this.hostTabIndex", "attr.role": "this.role", "attr.aria-haspopup": "this.ariaHasPopup", "attr.readonly": "this.isReadonly", "attr.aria-describedby": "this.ariaDescribedBy", "attr.aria-activedescendant": "this.ariaActiveDescendant", "class.k-readonly": "this.readonly" } }, providers: [
1621
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: MultiSelectTreeComponent, isStandalone: true, selector: "kendo-multiselecttree", inputs: { adaptiveMode: "adaptiveMode", adaptiveTitle: "adaptiveTitle", adaptiveSubtitle: "adaptiveSubtitle", tabindex: "tabindex", size: "size", rounded: "rounded", fillMode: "fillMode", popupSettings: "popupSettings", checkableSettings: "checkableSettings", data: "data", value: "value", dataItems: "dataItems", textField: "textField", valueField: "valueField", valueDepth: "valueDepth", loading: "loading", placeholder: "placeholder", listHeight: "listHeight", disabled: "disabled", readonly: "readonly", valuePrimitive: "valuePrimitive", loadOnDemand: "loadOnDemand", focusableId: "focusableId", clearButton: "clearButton", filterable: "filterable", checkAll: "checkAll", hasChildren: "hasChildren", fetchChildren: "fetchChildren", isNodeExpanded: "isNodeExpanded", isNodeVisible: "isNodeVisible", itemDisabled: "itemDisabled", tagMapper: "tagMapper" }, outputs: { onFocus: "focus", onBlur: "blur", open: "open", opened: "opened", close: "close", closed: "closed", nodeExpand: "nodeExpand", nodeCollapse: "nodeCollapse", valueChange: "valueChange", removeTag: "removeTag", filterChange: "filterChange" }, host: { properties: { "class.k-multiselecttree": "this.hostClasses", "class.k-input": "this.hostClasses", "class.k-disabled": "this.isDisabled", "attr.aria-disabled": "this.isDisabled", "attr.aria-autocomplete": "this.hostAriaAutocomplete", "class.k-loading": "this.isLoading", "attr.aria-invalid": "this.hostAriaInvalid", "attr.aria-busy": "this.isBusy", "attr.id": "this.id", "attr.dir": "this.direction", "attr.tabindex": "this.hostTabIndex", "attr.role": "this.role", "attr.aria-haspopup": "this.ariaHasPopup", "attr.readonly": "this.isReadonly", "attr.aria-describedby": "this.ariaDescribedBy", "attr.aria-activedescendant": "this.ariaActiveDescendant", "class.k-readonly": "this.readonly" } }, providers: [
1673
1622
  LocalizationService,
1674
1623
  NavigationService,
1675
1624
  DataService,
@@ -1697,7 +1646,7 @@ export class MultiSelectTreeComponent {
1697
1646
  provide: KendoInput,
1698
1647
  useExisting: forwardRef(() => MultiSelectTreeComponent)
1699
1648
  }
1700
- ], queries: [{ propertyName: "headerTemplate", first: true, predicate: HeaderTemplateDirective, descendants: true }, { propertyName: "footerTemplate", first: true, predicate: FooterTemplateDirective, descendants: true }, { propertyName: "nodeTemplate", first: true, predicate: NodeTemplateDirective, descendants: true }, { propertyName: "noDataTemplate", first: true, predicate: NoDataTemplateDirective, descendants: true }, { propertyName: "tagTemplate", first: true, predicate: TagTemplateDirective, descendants: true }, { propertyName: "groupTagTemplate", first: true, predicate: GroupTagTemplateDirective, descendants: true }], viewQueries: [{ propertyName: "responsiveRendererComponent", first: true, predicate: ResponsiveRendererComponent, descendants: true }, { propertyName: "popupTemplate", first: true, predicate: ["popupTemplate"], descendants: true, static: true }, { propertyName: "container", first: true, predicate: ["container"], descendants: true, read: ViewContainerRef, static: true }, { propertyName: "treeview", first: true, predicate: ["treeview"], descendants: true }, { propertyName: "filterInput", first: true, predicate: ["filterInput"], descendants: true }, { propertyName: "checkAllInput", first: true, predicate: ["checkAllInput"], descendants: true }], exportAs: ["kendoMultiSelectTree"], usesOnChanges: true, ngImport: i0, template: `
1649
+ ], queries: [{ propertyName: "headerTemplate", first: true, predicate: HeaderTemplateDirective, descendants: true }, { propertyName: "footerTemplate", first: true, predicate: FooterTemplateDirective, descendants: true }, { propertyName: "nodeTemplate", first: true, predicate: NodeTemplateDirective, descendants: true }, { propertyName: "noDataTemplate", first: true, predicate: NoDataTemplateDirective, descendants: true }, { propertyName: "tagTemplate", first: true, predicate: TagTemplateDirective, descendants: true }, { propertyName: "groupTagTemplate", first: true, predicate: GroupTagTemplateDirective, descendants: true }], viewQueries: [{ propertyName: "adaptiveRendererComponent", first: true, predicate: AdaptiveRendererComponent, descendants: true }, { propertyName: "popupTemplate", first: true, predicate: ["popupTemplate"], descendants: true, static: true }, { propertyName: "container", first: true, predicate: ["container"], descendants: true, read: ViewContainerRef, static: true }, { propertyName: "treeview", first: true, predicate: ["treeview"], descendants: true }, { propertyName: "filterInput", first: true, predicate: ["filterInput"], descendants: true }, { propertyName: "checkAllInput", first: true, predicate: ["checkAllInput"], descendants: true }], exportAs: ["kendoMultiSelectTree"], usesOnChanges: true, ngImport: i0, template: `
1701
1650
  <ng-container kendoMultiSelectTreeLocalizedMessages
1702
1651
  i18n-noDataText="kendo.multiselecttree.noDataText|The text displayed in the popup when there are no items"
1703
1652
  noDataText="NO DATA FOUND"
@@ -1714,11 +1663,11 @@ export class MultiSelectTreeComponent {
1714
1663
  i18n-popupLabel="kendo.multiselecttree.popupLabel|The label of the popup element that contains the list of options when its role is 'region'"
1715
1664
  popupLabel="Options list"
1716
1665
 
1717
- i18n-applyButton="kendo.multiselecttree.applyButton|The text of the Apply button in the action sheet"
1718
- applyButton="Apply"
1666
+ i18n-adaptiveCloseButtonTitle="kendo.multiselecttree.adaptiveCloseButtonTitle|The title of the Close button of the ActionSheet that is rendered instead of the Popup when using small screen devices in adaptive mode"
1667
+ adaptiveCloseButtonTitle="Close"
1719
1668
 
1720
- i18n-cancelButton="kendo.multiselecttree.cancelButton|The text of the Cancel button in the action sheet"
1721
- cancelButton="Cancel"
1669
+ i18n-filterInputPlaceholder="kendo.multiselecttree.filterInputPlaceholder|The text for the input's placeholder when filtering is enabled"
1670
+ filterInputPlaceholder="Filter"
1722
1671
  >
1723
1672
  </ng-container>
1724
1673
  <kendo-taglist
@@ -1772,22 +1721,19 @@ export class MultiSelectTreeComponent {
1772
1721
  <ng-container *ngTemplateOutlet="sharedPopupActionSheetTemplate"></ng-container>
1773
1722
  </ng-template>
1774
1723
  <ng-container #container></ng-container>
1775
- <!--adaptive rendering-->
1776
- <responsive-renderer
1724
+
1725
+ <kendo-adaptive-renderer
1777
1726
  [sharedPopupActionSheetTemplate]="sharedPopupActionSheetTemplate"
1778
- [isActionSheetExpanded]="isActionSheetExpanded"
1779
- [title]="title"
1727
+ [title]="adaptiveTitle"
1780
1728
  [showTextInput]="filterable"
1781
- [showActionButtons]="true"
1782
- [subtitle]="subtitle"
1729
+ [subtitle]="adaptiveSubtitle"
1783
1730
  (closePopup)="togglePopup(false)"
1784
- (onExpand)="onExpand()"
1785
- (onCollapse)="onCollapse()"
1786
1731
  (textInputChange)="onFilterChange($event)"
1787
- (onApply)="applyValue()"
1788
- (onCancel)="cancelValue()"
1789
- >
1790
- </responsive-renderer>
1732
+ [searchBarValue]="filter"
1733
+ [placeholder]="placeholder"
1734
+ [filterable]="filterable">
1735
+ </kendo-adaptive-renderer>
1736
+
1791
1737
  <ng-template #sharedPopupActionSheetTemplate>
1792
1738
  <div
1793
1739
  *ngIf="filterable && !isActionSheetExpanded"
@@ -1865,7 +1811,7 @@ export class MultiSelectTreeComponent {
1865
1811
  </div>
1866
1812
  <kendo-treeview
1867
1813
  #treeview
1868
- [size]="size"
1814
+ [size]="windowSize !== 'large' ? 'large' : size"
1869
1815
  [attr.id]="treeViewId"
1870
1816
  [nodes]="data"
1871
1817
  [style.maxHeight.px]="listHeight"
@@ -1917,7 +1863,7 @@ export class MultiSelectTreeComponent {
1917
1863
  </ng-template>
1918
1864
 
1919
1865
  <kendo-resize-sensor *ngIf="isOpen || isAdaptiveModeEnabled" (resize)="onResize()"></kendo-resize-sensor>
1920
- `, isInline: true, dependencies: [{ kind: "directive", type: LocalizedMessagesDirective, selector: "\n [kendoDropDownListLocalizedMessages],\n [kendoDropDownTreeLocalizedMessages],\n [kendoComboBoxLocalizedMessages],\n [kendoMultiColumnComboBoxLocalizedMessages],\n [kendoAutoCompleteLocalizedMessages],\n [kendoMultiSelectLocalizedMessages],\n [kendoMultiSelectTreeLocalizedMessages]\n " }, { kind: "component", type: TagListComponent, selector: "kendo-taglist", inputs: ["tags", "textField", "valueField", "valueDepth", "focused", "template", "groupTemplate", "disabled", "tagPrefix", "id", "size", "rounded", "fillMode", "disabledIndices"], outputs: ["removeTag"] }, { 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: NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "component", type: ResponsiveRendererComponent, selector: "responsive-renderer", inputs: ["title", "showActionButtons", "subtitle", "size", "showTextInput", "sharedPopupActionSheetTemplate", "isActionSheetExpanded", "text", "placeholder"], outputs: ["closePopup", "textInputChange", "navigate", "onExpand", "onCollapse", "onApply", "onCancel"] }, { kind: "directive", type: NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: FilterInputDirective, selector: "[filterInput]", inputs: ["filterInput"] }, { kind: "directive", type: EventsOutsideAngularDirective, selector: "[kendoEventsOutsideAngular]", inputs: ["kendoEventsOutsideAngular", "scope"] }, { kind: "directive", type: TemplateContextDirective, selector: "[templateContext]", inputs: ["templateContext"] }, { kind: "directive", type: CheckAllDirective, selector: "[checkAll]", inputs: ["lastAction", "treeview", "checkedItems", "valueField", "checkAll"], outputs: ["checkedItemsChange"] }, { kind: "component", type: TreeViewComponent, selector: "kendo-treeview", inputs: ["filterInputPlaceholder", "expandDisabledNodes", "animate", "nodeTemplate", "loadMoreButtonTemplate", "trackBy", "nodes", "textField", "hasChildren", "isChecked", "isDisabled", "hasCheckbox", "isExpanded", "isSelected", "isVisible", "navigable", "children", "loadOnDemand", "filterable", "filter", "size", "disableParentNodesOnly"], outputs: ["childrenLoaded", "blur", "focus", "expand", "collapse", "nodeDragStart", "nodeDrag", "filterStateChange", "nodeDrop", "nodeDragEnd", "addItem", "removeItem", "checkedChange", "selectionChange", "filterChange", "nodeClick", "nodeDblClick"], exportAs: ["kendoTreeView"] }, { kind: "directive", type: CheckDirective, selector: "[kendoMultiSelectTreeCheckable]", inputs: ["checkable", "valueField", "checkedItems"], outputs: ["checkedItemsChange"] }, { kind: "component", type: ResizeSensorComponent, selector: "kendo-resize-sensor", inputs: ["rateLimit"], outputs: ["resize"] }] });
1866
+ `, isInline: true, dependencies: [{ kind: "directive", type: LocalizedMessagesDirective, selector: "\n [kendoDropDownListLocalizedMessages],\n [kendoDropDownTreeLocalizedMessages],\n [kendoComboBoxLocalizedMessages],\n [kendoMultiColumnComboBoxLocalizedMessages],\n [kendoAutoCompleteLocalizedMessages],\n [kendoMultiSelectLocalizedMessages],\n [kendoMultiSelectTreeLocalizedMessages]\n " }, { kind: "component", type: TagListComponent, selector: "kendo-taglist", inputs: ["tags", "textField", "valueField", "valueDepth", "focused", "template", "groupTemplate", "disabled", "tagPrefix", "id", "size", "rounded", "fillMode", "disabledIndices"], outputs: ["removeTag"] }, { 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: NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "component", type: AdaptiveRendererComponent, selector: "kendo-adaptive-renderer", inputs: ["title", "subtitle", "showTextInput", "sharedPopupActionSheetTemplate", "text", "placeholder", "searchBarValue", "filterable"], outputs: ["closePopup", "textInputChange", "navigate", "onExpand"] }, { kind: "directive", type: NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: FilterInputDirective, selector: "[filterInput]", inputs: ["filterInput"] }, { kind: "directive", type: EventsOutsideAngularDirective, selector: "[kendoEventsOutsideAngular]", inputs: ["kendoEventsOutsideAngular", "scope"] }, { kind: "directive", type: TemplateContextDirective, selector: "[templateContext]", inputs: ["templateContext"] }, { kind: "directive", type: CheckAllDirective, selector: "[checkAll]", inputs: ["lastAction", "treeview", "checkedItems", "valueField", "checkAll"], outputs: ["checkedItemsChange"] }, { kind: "component", type: TreeViewComponent, selector: "kendo-treeview", inputs: ["filterInputPlaceholder", "expandDisabledNodes", "animate", "nodeTemplate", "loadMoreButtonTemplate", "trackBy", "nodes", "textField", "hasChildren", "isChecked", "isDisabled", "hasCheckbox", "isExpanded", "isSelected", "isVisible", "navigable", "children", "loadOnDemand", "filterable", "filter", "size", "disableParentNodesOnly"], outputs: ["childrenLoaded", "blur", "focus", "expand", "collapse", "nodeDragStart", "nodeDrag", "filterStateChange", "nodeDrop", "nodeDragEnd", "addItem", "removeItem", "checkedChange", "selectionChange", "filterChange", "nodeClick", "nodeDblClick"], exportAs: ["kendoTreeView"] }, { kind: "directive", type: CheckDirective, selector: "[kendoMultiSelectTreeCheckable]", inputs: ["checkable", "valueField", "checkedItems"], outputs: ["checkedItemsChange"] }, { kind: "component", type: ResizeSensorComponent, selector: "kendo-resize-sensor", inputs: ["rateLimit"], outputs: ["resize"] }] });
1921
1867
  }
1922
1868
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: MultiSelectTreeComponent, decorators: [{
1923
1869
  type: Component,
@@ -1970,11 +1916,11 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
1970
1916
  i18n-popupLabel="kendo.multiselecttree.popupLabel|The label of the popup element that contains the list of options when its role is 'region'"
1971
1917
  popupLabel="Options list"
1972
1918
 
1973
- i18n-applyButton="kendo.multiselecttree.applyButton|The text of the Apply button in the action sheet"
1974
- applyButton="Apply"
1919
+ i18n-adaptiveCloseButtonTitle="kendo.multiselecttree.adaptiveCloseButtonTitle|The title of the Close button of the ActionSheet that is rendered instead of the Popup when using small screen devices in adaptive mode"
1920
+ adaptiveCloseButtonTitle="Close"
1975
1921
 
1976
- i18n-cancelButton="kendo.multiselecttree.cancelButton|The text of the Cancel button in the action sheet"
1977
- cancelButton="Cancel"
1922
+ i18n-filterInputPlaceholder="kendo.multiselecttree.filterInputPlaceholder|The text for the input's placeholder when filtering is enabled"
1923
+ filterInputPlaceholder="Filter"
1978
1924
  >
1979
1925
  </ng-container>
1980
1926
  <kendo-taglist
@@ -2028,22 +1974,19 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
2028
1974
  <ng-container *ngTemplateOutlet="sharedPopupActionSheetTemplate"></ng-container>
2029
1975
  </ng-template>
2030
1976
  <ng-container #container></ng-container>
2031
- <!--adaptive rendering-->
2032
- <responsive-renderer
1977
+
1978
+ <kendo-adaptive-renderer
2033
1979
  [sharedPopupActionSheetTemplate]="sharedPopupActionSheetTemplate"
2034
- [isActionSheetExpanded]="isActionSheetExpanded"
2035
- [title]="title"
1980
+ [title]="adaptiveTitle"
2036
1981
  [showTextInput]="filterable"
2037
- [showActionButtons]="true"
2038
- [subtitle]="subtitle"
1982
+ [subtitle]="adaptiveSubtitle"
2039
1983
  (closePopup)="togglePopup(false)"
2040
- (onExpand)="onExpand()"
2041
- (onCollapse)="onCollapse()"
2042
1984
  (textInputChange)="onFilterChange($event)"
2043
- (onApply)="applyValue()"
2044
- (onCancel)="cancelValue()"
2045
- >
2046
- </responsive-renderer>
1985
+ [searchBarValue]="filter"
1986
+ [placeholder]="placeholder"
1987
+ [filterable]="filterable">
1988
+ </kendo-adaptive-renderer>
1989
+
2047
1990
  <ng-template #sharedPopupActionSheetTemplate>
2048
1991
  <div
2049
1992
  *ngIf="filterable && !isActionSheetExpanded"
@@ -2121,7 +2064,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
2121
2064
  </div>
2122
2065
  <kendo-treeview
2123
2066
  #treeview
2124
- [size]="size"
2067
+ [size]="windowSize !== 'large' ? 'large' : size"
2125
2068
  [attr.id]="treeViewId"
2126
2069
  [nodes]="data"
2127
2070
  [style.maxHeight.px]="listHeight"
@@ -2175,7 +2118,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
2175
2118
  <kendo-resize-sensor *ngIf="isOpen || isAdaptiveModeEnabled" (resize)="onResize()"></kendo-resize-sensor>
2176
2119
  `,
2177
2120
  standalone: true,
2178
- imports: [LocalizedMessagesDirective, TagListComponent, NgIf, IconWrapperComponent, NgTemplateOutlet, ResponsiveRendererComponent, NgClass, FilterInputDirective, EventsOutsideAngularDirective, TemplateContextDirective, CheckAllDirective, TreeViewComponent, CheckDirective, ResizeSensorComponent]
2121
+ imports: [LocalizedMessagesDirective, TagListComponent, NgIf, IconWrapperComponent, NgTemplateOutlet, AdaptiveRendererComponent, NgClass, FilterInputDirective, EventsOutsideAngularDirective, TemplateContextDirective, CheckAllDirective, TreeViewComponent, CheckDirective, ResizeSensorComponent]
2179
2122
  }]
2180
2123
  }], ctorParameters: function () { return [{ type: i0.Injector }, { type: i0.ElementRef }, { type: i1.PopupService }, { type: i0.Renderer2 }, { type: i2.NavigationService }, { type: i0.NgZone }, { type: i3.LocalizationService }, { type: i0.ChangeDetectorRef }, { type: i4.MultiSelectTreeLookupService }, { type: i5.AdaptiveService }]; }, propDecorators: { hostClasses: [{
2181
2124
  type: HostBinding,
@@ -2227,13 +2170,13 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
2227
2170
  args: ['attr.aria-activedescendant']
2228
2171
  }], adaptiveMode: [{
2229
2172
  type: Input
2230
- }], title: [{
2173
+ }], adaptiveTitle: [{
2231
2174
  type: Input
2232
- }], subtitle: [{
2175
+ }], adaptiveSubtitle: [{
2233
2176
  type: Input
2234
- }], responsiveRendererComponent: [{
2177
+ }], adaptiveRendererComponent: [{
2235
2178
  type: ViewChild,
2236
- args: [ResponsiveRendererComponent]
2179
+ args: [AdaptiveRendererComponent]
2237
2180
  }], headerTemplate: [{
2238
2181
  type: ContentChild,
2239
2182
  args: [HeaderTemplateDirective, { static: false }]
package/esm2022/index.mjs CHANGED
@@ -49,7 +49,7 @@ export { AutoCompleteModule } from './autocomplete/autocomplete.module';
49
49
  export { ComboBoxModule } from './comboboxes/combobox.module';
50
50
  export { DropDownListModule } from './dropdownlist/dropdownlist.module';
51
51
  export { ListComponent } from './common/list.component';
52
- export { ResponsiveRendererComponent } from './common/action-sheet.component';
52
+ export { AdaptiveRendererComponent } from './common/adaptive-renderer.component';
53
53
  export { PreventableEvent } from './common/models/preventable-event';
54
54
  export { RemoveTagEvent } from './common/models/remove-tag-event';
55
55
  export * from './directives';