@progress/kendo-angular-dropdowns 21.1.1-develop.2 → 21.2.0-develop.2

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.
@@ -38,7 +38,7 @@ import { normalizeVirtualizationSettings } from '../common/models/virtualization
38
38
  import { xIcon } from '@progress/kendo-svg-icons';
39
39
  import { AdaptiveRendererComponent } from '../common/adaptive-renderer.component';
40
40
  import { TagListComponent } from '../common/taglist.component';
41
- import { NgIf, NgTemplateOutlet } from '@angular/common';
41
+ import { NgTemplateOutlet } from '@angular/common';
42
42
  import { SharedDropDownEventsDirective } from '../common/shared-events.directive';
43
43
  import { LocalizedMessagesDirective } from '../common/localization/localized-messages.directive';
44
44
  import { IconWrapperComponent } from '@progress/kendo-angular-icons';
@@ -1788,7 +1788,7 @@ export class MultiSelectComponent {
1788
1788
  }
1789
1789
  }
1790
1790
  static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: MultiSelectComponent, deps: [{ token: i0.ElementRef }, { token: i1.LocalizationService }, { token: i2.PopupService }, { token: i3.DataService }, { token: i4.SelectionService }, { token: i5.NavigationService }, { token: i6.DisabledItemsService }, { token: i0.ChangeDetectorRef }, { token: i0.KeyValueDiffers }, { token: i0.Renderer2 }, { token: i0.NgZone }, { token: i0.Injector }, { token: i0.ElementRef }, { token: i7.AdaptiveService }], target: i0.ɵɵFactoryTarget.Component });
1791
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.14", type: MultiSelectComponent, isStandalone: true, selector: "kendo-multiselect", inputs: { showStickyHeader: "showStickyHeader", focusableId: "focusableId", autoClose: "autoClose", loading: "loading", data: "data", value: "value", valueField: "valueField", textField: "textField", tabindex: "tabindex", tabIndex: "tabIndex", size: "size", rounded: "rounded", fillMode: "fillMode", placeholder: "placeholder", adaptiveMode: "adaptiveMode", adaptiveTitle: "adaptiveTitle", adaptiveSubtitle: "adaptiveSubtitle", disabled: "disabled", itemDisabled: "itemDisabled", checkboxes: "checkboxes", readonly: "readonly", filterable: "filterable", virtual: "virtual", popupSettings: "popupSettings", listHeight: "listHeight", valuePrimitive: "valuePrimitive", clearButton: "clearButton", tagMapper: "tagMapper", allowCustom: "allowCustom", valueNormalizer: "valueNormalizer", inputAttributes: "inputAttributes" }, outputs: { filterChange: "filterChange", valueChange: "valueChange", open: "open", opened: "opened", close: "close", closed: "closed", onFocus: "focus", onBlur: "blur", inputFocus: "inputFocus", inputBlur: "inputBlur", removeTag: "removeTag" }, host: { properties: { "class.k-readonly": "this.readonly", "class.k-multiselect": "this.hostClasses", "class.k-input": "this.hostClasses", "attr.dir": "this.dir", "class.k-disabled": "this.disabledClass", "class.k-loading": "this.isLoading" } }, providers: [
1791
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.14", type: MultiSelectComponent, isStandalone: true, selector: "kendo-multiselect", inputs: { showStickyHeader: "showStickyHeader", focusableId: "focusableId", autoClose: "autoClose", loading: "loading", data: "data", value: "value", valueField: "valueField", textField: "textField", tabindex: "tabindex", tabIndex: "tabIndex", size: "size", rounded: "rounded", fillMode: "fillMode", placeholder: "placeholder", adaptiveMode: "adaptiveMode", adaptiveTitle: "adaptiveTitle", adaptiveSubtitle: "adaptiveSubtitle", disabled: "disabled", itemDisabled: "itemDisabled", checkboxes: "checkboxes", readonly: "readonly", filterable: "filterable", virtual: "virtual", popupSettings: "popupSettings", listHeight: "listHeight", valuePrimitive: "valuePrimitive", clearButton: "clearButton", tagMapper: "tagMapper", allowCustom: "allowCustom", valueNormalizer: "valueNormalizer", inputAttributes: "inputAttributes" }, outputs: { filterChange: "filterChange", valueChange: "valueChange", open: "open", opened: "opened", close: "close", closed: "closed", onFocus: "focus", onBlur: "blur", inputFocus: "inputFocus", inputBlur: "inputBlur", removeTag: "removeTag" }, host: { properties: { "class.k-readonly": "this.readonly", "class.k-multiselect": "this.hostClasses", "class.k-input": "this.hostClasses", "attr.dir": "this.dir", "class.k-disabled": "this.disabledClass", "class.k-loading": "this.isLoading" } }, providers: [
1792
1792
  MULTISELECT_VALUE_ACCESSOR,
1793
1793
  DataService,
1794
1794
  SelectionService,
@@ -1807,176 +1807,196 @@ export class MultiSelectComponent {
1807
1807
  }
1808
1808
  ], queries: [{ propertyName: "template", first: true, predicate: ItemTemplateDirective, descendants: true }, { propertyName: "customItemTemplate", first: true, predicate: CustomItemTemplateDirective, descendants: true }, { propertyName: "groupTemplate", first: true, predicate: GroupTemplateDirective, descendants: true }, { propertyName: "fixedGroupTemplate", first: true, predicate: FixedGroupTemplateDirective, descendants: true }, { propertyName: "headerTemplate", first: true, predicate: HeaderTemplateDirective, descendants: true }, { propertyName: "footerTemplate", first: true, predicate: FooterTemplateDirective, descendants: true }, { propertyName: "tagTemplate", first: true, predicate: TagTemplateDirective, descendants: true }, { propertyName: "groupTagTemplate", first: true, predicate: GroupTagTemplateDirective, descendants: true }, { propertyName: "noDataTemplate", first: true, predicate: NoDataTemplateDirective, descendants: true }, { propertyName: "suffixTemplate", first: true, predicate: SuffixTemplateDirective, descendants: true }, { propertyName: "prefixTemplate", first: true, predicate: PrefixTemplateDirective, descendants: true }], viewQueries: [{ propertyName: "adaptiveRendererComponent", first: true, predicate: AdaptiveRendererComponent, descendants: true }, { propertyName: "container", first: true, predicate: ["container"], descendants: true, read: ViewContainerRef, static: true }, { propertyName: "searchbar", first: true, predicate: SearchBarComponent, descendants: true, static: true }, { propertyName: "tagList", first: true, predicate: TagListComponent, descendants: true, static: true }, { propertyName: "popupTemplate", first: true, predicate: ["popupTemplate"], descendants: true, static: true }, { propertyName: "optionsList", first: true, predicate: ["optionsList"], descendants: true }], exportAs: ["kendoMultiSelect"], usesOnChanges: true, ngImport: i0, template: `
1809
1809
  <ng-container kendoMultiSelectLocalizedMessages
1810
- i18n-noDataText="kendo.multiselect.noDataText|The text displayed in the popup when there are no items"
1811
- noDataText="NO DATA FOUND"
1812
-
1813
- i18n-clearTitle="kendo.multiselect.clearTitle|The title of the clear button"
1814
- clearTitle="clear"
1815
-
1816
- i18n-popupLabel="kendo.multiselect.popupLabel|The label of the popup element that contains the list of options when its role is 'region'"
1817
- popupLabel="Options list"
1818
-
1819
- i18n-adaptiveCloseButtonTitle="kendo.multiselect.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."
1820
- adaptiveCloseButtonTitle="Close"
1821
-
1822
- i18n-useCustomValueText="kendo.multiselect.useCustomValueText|The text displayed when the user types a custom value that is not in the list of options."
1823
- useCustomValueText="{{ 'Use &quot;{customValue}&quot;' }}"
1824
- >
1810
+ i18n-noDataText="kendo.multiselect.noDataText|The text displayed in the popup when there are no items"
1811
+ noDataText="NO DATA FOUND"
1812
+
1813
+ i18n-clearTitle="kendo.multiselect.clearTitle|The title of the clear button"
1814
+ clearTitle="clear"
1815
+
1816
+ i18n-popupLabel="kendo.multiselect.popupLabel|The label of the popup element that contains the list of options when its role is 'region'"
1817
+ popupLabel="Options list"
1818
+
1819
+ i18n-adaptiveCloseButtonTitle="kendo.multiselect.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."
1820
+ adaptiveCloseButtonTitle="Close"
1821
+
1822
+ i18n-useCustomValueText="kendo.multiselect.useCustomValueText|The text displayed when the user types a custom value that is not in the list of options."
1823
+ useCustomValueText="{{ 'Use &quot;{customValue}&quot;' }}"
1824
+ >
1825
1825
  </ng-container>
1826
-
1826
+
1827
1827
  <ng-container
1828
- kendoDropDownSharedEvents
1829
- [hostElement]="hostElement"
1830
- [(isFocused)]="isFocused"
1831
- (handleBlur)="handleBlur()"
1832
- (onFocus)="handleFocus()"
1833
- >
1834
- <span *ngIf="prefixTemplate" class="k-input-prefix k-input-prefix-horizontal">
1835
- <ng-template [ngTemplateOutlet]="prefixTemplate?.templateRef">
1836
- </ng-template>
1828
+ kendoDropDownSharedEvents
1829
+ [hostElement]="hostElement"
1830
+ [(isFocused)]="isFocused"
1831
+ (handleBlur)="handleBlur()"
1832
+ (onFocus)="handleFocus()"
1833
+ >
1834
+ @if (prefixTemplate) {
1835
+ <span class="k-input-prefix k-input-prefix-horizontal">
1836
+ <ng-template [ngTemplateOutlet]="prefixTemplate?.templateRef">
1837
+ </ng-template>
1837
1838
  </span>
1838
- <kendo-separator *ngIf="prefixTemplate && prefixTemplate.showSeparator"></kendo-separator>
1839
- <div class="k-input-values">
1840
- <kendo-taglist
1841
- [size]="size"
1842
- [rounded]="rounded"
1843
- [fillMode]="fillMode"
1844
- [id]="tagListId"
1845
- [tags]="tags"
1846
- [textField]="textField"
1847
- [valueField]="valueField"
1848
- [focused]="focusedTagIndex"
1849
- [disabled]="disabled"
1850
- [template]="tagTemplate"
1851
- [groupTemplate]="groupTagTemplate"
1852
- [tagPrefix]="tagPrefix"
1853
- [disabledIndices]="disabledIndices"
1854
- (removeTag)="handleRemoveTag($event)"
1855
- >
1856
- </kendo-taglist>
1857
- <input
1858
- kendoSearchbar
1859
- [ariaControls]="ariaControls"
1860
- [ariaExpanded]="isOpen"
1861
- [id]="focusableId"
1862
- [tagListId]="tagListId"
1863
- [isLoading]="loading"
1864
- [isFilterable]="filterable"
1865
- [activeDescendant]="activeDescendant"
1866
- [userInput]="text"
1867
- [disabled]="disabled"
1868
- [readonly]="readonly || this.isAdaptive"
1869
- [tabIndex]="tabIndex"
1870
- [isRequired]="isControlRequired"
1871
- [placeholder]="placeholder"
1872
- [inputAttributes]="inputAttributes"
1873
- (onNavigate)="handleNavigate($event)"
1874
- (valueChange)="handleFilter($event)"
1875
- (onBlur)="handleInputBlur()"
1876
- (onFocus)="handleInputFocus()"
1877
- (click)="handleClick()"
1878
- />
1879
- </div>
1880
-
1839
+ }
1840
+ @if (prefixTemplate && prefixTemplate.showSeparator) {
1841
+ <kendo-separator></kendo-separator>
1842
+ }
1843
+ <div class="k-input-values">
1844
+ <kendo-taglist
1845
+ [size]="size"
1846
+ [rounded]="rounded"
1847
+ [fillMode]="fillMode"
1848
+ [id]="tagListId"
1849
+ [tags]="tags"
1850
+ [textField]="textField"
1851
+ [valueField]="valueField"
1852
+ [focused]="focusedTagIndex"
1853
+ [disabled]="disabled"
1854
+ [template]="tagTemplate"
1855
+ [groupTemplate]="groupTagTemplate"
1856
+ [tagPrefix]="tagPrefix"
1857
+ [disabledIndices]="disabledIndices"
1858
+ (removeTag)="handleRemoveTag($event)"
1859
+ >
1860
+ </kendo-taglist>
1861
+ <input
1862
+ kendoSearchbar
1863
+ [ariaControls]="ariaControls"
1864
+ [ariaExpanded]="isOpen"
1865
+ [id]="focusableId"
1866
+ [tagListId]="tagListId"
1867
+ [isLoading]="loading"
1868
+ [isFilterable]="filterable"
1869
+ [activeDescendant]="activeDescendant"
1870
+ [userInput]="text"
1871
+ [disabled]="disabled"
1872
+ [readonly]="readonly || this.isAdaptive"
1873
+ [tabIndex]="tabIndex"
1874
+ [isRequired]="isControlRequired"
1875
+ [placeholder]="placeholder"
1876
+ [inputAttributes]="inputAttributes"
1877
+ (onNavigate)="handleNavigate($event)"
1878
+ (valueChange)="handleFilter($event)"
1879
+ (onBlur)="handleInputBlur()"
1880
+ (onFocus)="handleInputFocus()"
1881
+ (click)="handleClick()"
1882
+ />
1883
+ </div>
1884
+
1885
+ @if (!loading && !readonly && clearButton && (tags?.length || text?.length)) {
1881
1886
  <span
1882
- *ngIf="!loading && !readonly && clearButton && (tags?.length || text?.length)"
1883
- class="k-clear-value"
1884
- [style.visibility]="clearButtonVisibility"
1885
- [attr.title]="messageFor('clearTitle')"
1886
- role="button"
1887
- tabindex="-1"
1888
- (mousedown)="clearAll($event)"
1889
- >
1890
- <kendo-icon-wrapper
1891
- class="k-icon"
1892
- name="x"
1893
- [svgIcon]="xIcon"
1887
+ class="k-clear-value"
1888
+ [style.visibility]="clearButtonVisibility"
1889
+ [attr.title]="messageFor('clearTitle')"
1890
+ role="button"
1891
+ tabindex="-1"
1892
+ (mousedown)="clearAll($event)"
1893
+ >
1894
+ <kendo-icon-wrapper
1895
+ class="k-icon"
1896
+ name="x"
1897
+ [svgIcon]="xIcon"
1894
1898
  >
1895
- </kendo-icon-wrapper>
1899
+ </kendo-icon-wrapper>
1896
1900
  </span>
1901
+ }
1902
+ @if (loading) {
1897
1903
  <span
1898
- *ngIf="loading"
1899
- class="k-icon k-i-loading k-input-loading-icon"
1900
- >
1904
+ class="k-icon k-i-loading k-input-loading-icon"
1905
+ >
1901
1906
  </span>
1902
- <kendo-separator *ngIf="suffixTemplate && suffixTemplate.showSeparator"></kendo-separator>
1903
- <span *ngIf="suffixTemplate" class="k-input-suffix k-input-suffix-horizontal">
1904
- <ng-template [ngTemplateOutlet]="suffixTemplate?.templateRef">
1905
- </ng-template>
1907
+ }
1908
+ @if (suffixTemplate && suffixTemplate.showSeparator) {
1909
+ <kendo-separator></kendo-separator>
1910
+ }
1911
+ @if (suffixTemplate) {
1912
+ <span class="k-input-suffix k-input-suffix-horizontal">
1913
+ <ng-template [ngTemplateOutlet]="suffixTemplate?.templateRef">
1914
+ </ng-template>
1906
1915
  </span>
1916
+ }
1907
1917
  </ng-container>
1908
-
1918
+
1909
1919
  <ng-template #popupTemplate>
1910
- <ng-container *ngTemplateOutlet="sharedPopupActionSheetTemplate"></ng-container>
1920
+ <ng-container *ngTemplateOutlet="sharedPopupActionSheetTemplate"></ng-container>
1911
1921
  </ng-template>
1912
- <kendo-resize-sensor *ngIf="isOpen || isAdaptiveModeEnabled" (resize)="onResize()"></kendo-resize-sensor>
1922
+ @if (isOpen || isAdaptiveModeEnabled) {
1923
+ <kendo-resize-sensor (resize)="onResize()"></kendo-resize-sensor>
1924
+ }
1913
1925
  <ng-container #container></ng-container>
1914
-
1926
+
1915
1927
  <kendo-adaptive-renderer
1916
- [sharedPopupActionSheetTemplate]="sharedPopupActionSheetTemplate"
1917
- [title]="adaptiveTitle"
1918
- [showTextInput]="true"
1919
- [subtitle]="adaptiveSubtitle"
1920
- (closePopup)="applyValue()"
1921
- (textInputChange)="handleFilter($event)"
1922
- [placeholder]="placeholder"
1923
- (navigate)="handleNavigate($event)"
1924
- [searchBarValue]="text">
1928
+ [sharedPopupActionSheetTemplate]="sharedPopupActionSheetTemplate"
1929
+ [title]="adaptiveTitle"
1930
+ [showTextInput]="true"
1931
+ [subtitle]="adaptiveSubtitle"
1932
+ (closePopup)="applyValue()"
1933
+ (textInputChange)="handleFilter($event)"
1934
+ [placeholder]="placeholder"
1935
+ (navigate)="handleNavigate($event)"
1936
+ [searchBarValue]="text">
1925
1937
  </kendo-adaptive-renderer>
1926
-
1938
+
1927
1939
  <ng-template #sharedPopupActionSheetTemplate>
1928
- <!--header template-->
1929
- <ng-template *ngIf="headerTemplate"
1940
+ <!--header template-->
1941
+ @if (headerTemplate) {
1942
+ <ng-template
1930
1943
  [templateContext]="{
1931
1944
  templateRef: headerTemplate.templateRef
1932
1945
  }">
1933
1946
  </ng-template>
1934
- <!--list-->
1935
- <kendo-list
1936
- #optionsList
1937
- [size]="isAdaptive ? 'large' : size"
1938
- [rounded]="rounded"
1939
- [id]="listBoxId"
1940
- [optionPrefix]="optionPrefix"
1941
- [data]="data"
1942
- [textField]="textField"
1943
- [valueField]="valueField"
1944
- [template]="template"
1945
- [groupTemplate]="groupTemplate"
1946
- [fixedGroupTemplate]="fixedGroupTemplate"
1947
- [height]="listHeight"
1948
- [show]="isOpen"
1949
- [multipleSelection]="true"
1950
- [virtual]="virtual"
1951
- (pageChange)="pageChange($event)"
1952
- [checkboxes]="checkboxes"
1953
- [isMultiselect]="true"
1954
- [isActionSheetExpanded]="isActionSheetExpanded"
1955
- [showStickyHeader]="showStickyHeader"
1956
- [customItemTemplate]="customItemTemplate"
1957
- [text]="text"
1958
- [allowCustom]="allowCustom"
1947
+ }
1948
+ <!--list-->
1949
+ <kendo-list
1950
+ #optionsList
1951
+ [size]="isAdaptive ? 'large' : size"
1952
+ [rounded]="rounded"
1953
+ [id]="listBoxId"
1954
+ [optionPrefix]="optionPrefix"
1955
+ [data]="data"
1956
+ [textField]="textField"
1957
+ [valueField]="valueField"
1958
+ [template]="template"
1959
+ [groupTemplate]="groupTemplate"
1960
+ [fixedGroupTemplate]="fixedGroupTemplate"
1961
+ [height]="listHeight"
1962
+ [show]="isOpen"
1963
+ [multipleSelection]="true"
1964
+ [virtual]="virtual"
1965
+ (pageChange)="pageChange($event)"
1966
+ [checkboxes]="checkboxes"
1967
+ [isMultiselect]="true"
1968
+ [isActionSheetExpanded]="isActionSheetExpanded"
1969
+ [showStickyHeader]="showStickyHeader"
1970
+ [customItemTemplate]="customItemTemplate"
1971
+ [text]="text"
1972
+ [allowCustom]="allowCustom"
1959
1973
  >
1960
- </kendo-list>
1961
- <!--no data template-->
1962
- <div class="k-no-data" *ngIf="data.length === 0">
1963
- <ng-template [ngIf]="noDataTemplate"
1974
+ </kendo-list>
1975
+ <!--no data template-->
1976
+ @if (data.length === 0) {
1977
+ <div class="k-no-data">
1978
+ @if (noDataTemplate) {
1979
+ <ng-template
1964
1980
  [templateContext]="{
1965
1981
  templateRef: noDataTemplate ? noDataTemplate.templateRef : undefined
1966
1982
  }">
1967
1983
  </ng-template>
1968
- <ng-template [ngIf]="!noDataTemplate">
1969
- <div>{{ messageFor('noDataText') }}</div>
1970
- </ng-template>
1984
+ }
1985
+ @if (!noDataTemplate) {
1986
+ <div>{{ messageFor('noDataText') }}</div>
1987
+ }
1971
1988
  </div>
1972
- <!--footer template-->
1973
- <ng-template *ngIf="footerTemplate"
1989
+ }
1990
+ <!--footer template-->
1991
+ @if (footerTemplate) {
1992
+ <ng-template
1974
1993
  [templateContext]="{
1975
1994
  templateRef: footerTemplate.templateRef
1976
1995
  }">
1977
1996
  </ng-template>
1997
+ }
1978
1998
  </ng-template>
1979
- `, isInline: true, dependencies: [{ kind: "directive", type: LocalizedMessagesDirective, selector: "\n [kendoDropDownListLocalizedMessages],\n [kendoDropDownTreeLocalizedMessages],\n [kendoComboBoxLocalizedMessages],\n [kendoMultiColumnComboBoxLocalizedMessages],\n [kendoAutoCompleteLocalizedMessages],\n [kendoMultiSelectLocalizedMessages],\n [kendoMultiSelectTreeLocalizedMessages]\n " }, { kind: "directive", type: SharedDropDownEventsDirective, selector: "[kendoDropDownSharedEvents]", inputs: ["hostElement", "clearButtonClicked", "isFocused"], outputs: ["isFocusedChange", "onFocus", "handleBlur"] }, { kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "component", type: SeparatorComponent, selector: "kendo-separator", inputs: ["orientation"] }, { 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: "component", type: SearchBarComponent, selector: "input[kendoSearchbar]", inputs: ["tagListId", "readonly", "disabled", "isRequired", "isSuggestable", "isFilterable", "userInput", "suggestedText", "inputAttributes", "id", "activeDescendant", "tabIndex", "isLoading", "ariaControls", "ariaExpanded", "placeholder"], outputs: ["valueChange", "onBlur", "onFocus", "onClick", "onNavigate"] }, { kind: "component", type: IconWrapperComponent, selector: "kendo-icon-wrapper", inputs: ["name", "svgIcon", "innerCssClass", "customFontClass", "size"], exportAs: ["kendoIconWrapper"] }, { kind: "component", type: ResizeSensorComponent, selector: "kendo-resize-sensor", inputs: ["rateLimit"], outputs: ["resize"] }, { 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: TemplateContextDirective, selector: "[templateContext]", inputs: ["templateContext"] }, { kind: "component", type: ListComponent, selector: "kendo-list", inputs: ["selected", "focused", "textField", "valueField", "height", "template", "groupTemplate", "fixedGroupTemplate", "show", "id", "optionPrefix", "multipleSelection", "virtual", "type", "checkboxes", "ariaLive", "isMultiselect", "isActionSheetExpanded", "showStickyHeader", "rowWidth", "customItemTemplate", "text", "allowCustom", "defaultItem", "data", "size", "rounded"], outputs: ["onClick", "pageChange", "listResize", "popupListScroll"] }] });
1999
+ `, isInline: true, dependencies: [{ kind: "directive", type: LocalizedMessagesDirective, selector: "\n [kendoDropDownListLocalizedMessages],\n [kendoDropDownTreeLocalizedMessages],\n [kendoComboBoxLocalizedMessages],\n [kendoMultiColumnComboBoxLocalizedMessages],\n [kendoAutoCompleteLocalizedMessages],\n [kendoMultiSelectLocalizedMessages],\n [kendoMultiSelectTreeLocalizedMessages]\n " }, { kind: "directive", type: SharedDropDownEventsDirective, selector: "[kendoDropDownSharedEvents]", inputs: ["hostElement", "clearButtonClicked", "isFocused"], outputs: ["isFocusedChange", "onFocus", "handleBlur"] }, { kind: "directive", type: NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "component", type: SeparatorComponent, selector: "kendo-separator", inputs: ["orientation"] }, { 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: "component", type: SearchBarComponent, selector: "input[kendoSearchbar]", inputs: ["tagListId", "readonly", "disabled", "isRequired", "isSuggestable", "isFilterable", "userInput", "suggestedText", "inputAttributes", "id", "activeDescendant", "tabIndex", "isLoading", "ariaControls", "ariaExpanded", "placeholder"], outputs: ["valueChange", "onBlur", "onFocus", "onClick", "onNavigate"] }, { kind: "component", type: IconWrapperComponent, selector: "kendo-icon-wrapper", inputs: ["name", "svgIcon", "innerCssClass", "customFontClass", "size"], exportAs: ["kendoIconWrapper"] }, { kind: "component", type: ResizeSensorComponent, selector: "kendo-resize-sensor", inputs: ["rateLimit"], outputs: ["resize"] }, { 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: TemplateContextDirective, selector: "[templateContext]", inputs: ["templateContext"] }, { kind: "component", type: ListComponent, selector: "kendo-list", inputs: ["selected", "focused", "textField", "valueField", "height", "template", "groupTemplate", "fixedGroupTemplate", "show", "id", "optionPrefix", "multipleSelection", "virtual", "type", "checkboxes", "ariaLive", "isMultiselect", "isActionSheetExpanded", "showStickyHeader", "rowWidth", "customItemTemplate", "text", "allowCustom", "defaultItem", "data", "size", "rounded"], outputs: ["onClick", "pageChange", "listResize", "popupListScroll"] }] });
1980
2000
  }
1981
2001
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: MultiSelectComponent, decorators: [{
1982
2002
  type: Component,
@@ -2003,178 +2023,198 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImpo
2003
2023
  selector: 'kendo-multiselect',
2004
2024
  template: `
2005
2025
  <ng-container kendoMultiSelectLocalizedMessages
2006
- i18n-noDataText="kendo.multiselect.noDataText|The text displayed in the popup when there are no items"
2007
- noDataText="NO DATA FOUND"
2008
-
2009
- i18n-clearTitle="kendo.multiselect.clearTitle|The title of the clear button"
2010
- clearTitle="clear"
2011
-
2012
- i18n-popupLabel="kendo.multiselect.popupLabel|The label of the popup element that contains the list of options when its role is 'region'"
2013
- popupLabel="Options list"
2014
-
2015
- i18n-adaptiveCloseButtonTitle="kendo.multiselect.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."
2016
- adaptiveCloseButtonTitle="Close"
2017
-
2018
- i18n-useCustomValueText="kendo.multiselect.useCustomValueText|The text displayed when the user types a custom value that is not in the list of options."
2019
- useCustomValueText="{{ 'Use &quot;{customValue}&quot;' }}"
2020
- >
2026
+ i18n-noDataText="kendo.multiselect.noDataText|The text displayed in the popup when there are no items"
2027
+ noDataText="NO DATA FOUND"
2028
+
2029
+ i18n-clearTitle="kendo.multiselect.clearTitle|The title of the clear button"
2030
+ clearTitle="clear"
2031
+
2032
+ i18n-popupLabel="kendo.multiselect.popupLabel|The label of the popup element that contains the list of options when its role is 'region'"
2033
+ popupLabel="Options list"
2034
+
2035
+ i18n-adaptiveCloseButtonTitle="kendo.multiselect.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."
2036
+ adaptiveCloseButtonTitle="Close"
2037
+
2038
+ i18n-useCustomValueText="kendo.multiselect.useCustomValueText|The text displayed when the user types a custom value that is not in the list of options."
2039
+ useCustomValueText="{{ 'Use &quot;{customValue}&quot;' }}"
2040
+ >
2021
2041
  </ng-container>
2022
-
2042
+
2023
2043
  <ng-container
2024
- kendoDropDownSharedEvents
2025
- [hostElement]="hostElement"
2026
- [(isFocused)]="isFocused"
2027
- (handleBlur)="handleBlur()"
2028
- (onFocus)="handleFocus()"
2029
- >
2030
- <span *ngIf="prefixTemplate" class="k-input-prefix k-input-prefix-horizontal">
2031
- <ng-template [ngTemplateOutlet]="prefixTemplate?.templateRef">
2032
- </ng-template>
2044
+ kendoDropDownSharedEvents
2045
+ [hostElement]="hostElement"
2046
+ [(isFocused)]="isFocused"
2047
+ (handleBlur)="handleBlur()"
2048
+ (onFocus)="handleFocus()"
2049
+ >
2050
+ @if (prefixTemplate) {
2051
+ <span class="k-input-prefix k-input-prefix-horizontal">
2052
+ <ng-template [ngTemplateOutlet]="prefixTemplate?.templateRef">
2053
+ </ng-template>
2033
2054
  </span>
2034
- <kendo-separator *ngIf="prefixTemplate && prefixTemplate.showSeparator"></kendo-separator>
2035
- <div class="k-input-values">
2036
- <kendo-taglist
2037
- [size]="size"
2038
- [rounded]="rounded"
2039
- [fillMode]="fillMode"
2040
- [id]="tagListId"
2041
- [tags]="tags"
2042
- [textField]="textField"
2043
- [valueField]="valueField"
2044
- [focused]="focusedTagIndex"
2045
- [disabled]="disabled"
2046
- [template]="tagTemplate"
2047
- [groupTemplate]="groupTagTemplate"
2048
- [tagPrefix]="tagPrefix"
2049
- [disabledIndices]="disabledIndices"
2050
- (removeTag)="handleRemoveTag($event)"
2051
- >
2052
- </kendo-taglist>
2053
- <input
2054
- kendoSearchbar
2055
- [ariaControls]="ariaControls"
2056
- [ariaExpanded]="isOpen"
2057
- [id]="focusableId"
2058
- [tagListId]="tagListId"
2059
- [isLoading]="loading"
2060
- [isFilterable]="filterable"
2061
- [activeDescendant]="activeDescendant"
2062
- [userInput]="text"
2063
- [disabled]="disabled"
2064
- [readonly]="readonly || this.isAdaptive"
2065
- [tabIndex]="tabIndex"
2066
- [isRequired]="isControlRequired"
2067
- [placeholder]="placeholder"
2068
- [inputAttributes]="inputAttributes"
2069
- (onNavigate)="handleNavigate($event)"
2070
- (valueChange)="handleFilter($event)"
2071
- (onBlur)="handleInputBlur()"
2072
- (onFocus)="handleInputFocus()"
2073
- (click)="handleClick()"
2074
- />
2075
- </div>
2076
-
2055
+ }
2056
+ @if (prefixTemplate && prefixTemplate.showSeparator) {
2057
+ <kendo-separator></kendo-separator>
2058
+ }
2059
+ <div class="k-input-values">
2060
+ <kendo-taglist
2061
+ [size]="size"
2062
+ [rounded]="rounded"
2063
+ [fillMode]="fillMode"
2064
+ [id]="tagListId"
2065
+ [tags]="tags"
2066
+ [textField]="textField"
2067
+ [valueField]="valueField"
2068
+ [focused]="focusedTagIndex"
2069
+ [disabled]="disabled"
2070
+ [template]="tagTemplate"
2071
+ [groupTemplate]="groupTagTemplate"
2072
+ [tagPrefix]="tagPrefix"
2073
+ [disabledIndices]="disabledIndices"
2074
+ (removeTag)="handleRemoveTag($event)"
2075
+ >
2076
+ </kendo-taglist>
2077
+ <input
2078
+ kendoSearchbar
2079
+ [ariaControls]="ariaControls"
2080
+ [ariaExpanded]="isOpen"
2081
+ [id]="focusableId"
2082
+ [tagListId]="tagListId"
2083
+ [isLoading]="loading"
2084
+ [isFilterable]="filterable"
2085
+ [activeDescendant]="activeDescendant"
2086
+ [userInput]="text"
2087
+ [disabled]="disabled"
2088
+ [readonly]="readonly || this.isAdaptive"
2089
+ [tabIndex]="tabIndex"
2090
+ [isRequired]="isControlRequired"
2091
+ [placeholder]="placeholder"
2092
+ [inputAttributes]="inputAttributes"
2093
+ (onNavigate)="handleNavigate($event)"
2094
+ (valueChange)="handleFilter($event)"
2095
+ (onBlur)="handleInputBlur()"
2096
+ (onFocus)="handleInputFocus()"
2097
+ (click)="handleClick()"
2098
+ />
2099
+ </div>
2100
+
2101
+ @if (!loading && !readonly && clearButton && (tags?.length || text?.length)) {
2077
2102
  <span
2078
- *ngIf="!loading && !readonly && clearButton && (tags?.length || text?.length)"
2079
- class="k-clear-value"
2080
- [style.visibility]="clearButtonVisibility"
2081
- [attr.title]="messageFor('clearTitle')"
2082
- role="button"
2083
- tabindex="-1"
2084
- (mousedown)="clearAll($event)"
2085
- >
2086
- <kendo-icon-wrapper
2087
- class="k-icon"
2088
- name="x"
2089
- [svgIcon]="xIcon"
2103
+ class="k-clear-value"
2104
+ [style.visibility]="clearButtonVisibility"
2105
+ [attr.title]="messageFor('clearTitle')"
2106
+ role="button"
2107
+ tabindex="-1"
2108
+ (mousedown)="clearAll($event)"
2109
+ >
2110
+ <kendo-icon-wrapper
2111
+ class="k-icon"
2112
+ name="x"
2113
+ [svgIcon]="xIcon"
2090
2114
  >
2091
- </kendo-icon-wrapper>
2115
+ </kendo-icon-wrapper>
2092
2116
  </span>
2117
+ }
2118
+ @if (loading) {
2093
2119
  <span
2094
- *ngIf="loading"
2095
- class="k-icon k-i-loading k-input-loading-icon"
2096
- >
2120
+ class="k-icon k-i-loading k-input-loading-icon"
2121
+ >
2097
2122
  </span>
2098
- <kendo-separator *ngIf="suffixTemplate && suffixTemplate.showSeparator"></kendo-separator>
2099
- <span *ngIf="suffixTemplate" class="k-input-suffix k-input-suffix-horizontal">
2100
- <ng-template [ngTemplateOutlet]="suffixTemplate?.templateRef">
2101
- </ng-template>
2123
+ }
2124
+ @if (suffixTemplate && suffixTemplate.showSeparator) {
2125
+ <kendo-separator></kendo-separator>
2126
+ }
2127
+ @if (suffixTemplate) {
2128
+ <span class="k-input-suffix k-input-suffix-horizontal">
2129
+ <ng-template [ngTemplateOutlet]="suffixTemplate?.templateRef">
2130
+ </ng-template>
2102
2131
  </span>
2132
+ }
2103
2133
  </ng-container>
2104
-
2134
+
2105
2135
  <ng-template #popupTemplate>
2106
- <ng-container *ngTemplateOutlet="sharedPopupActionSheetTemplate"></ng-container>
2136
+ <ng-container *ngTemplateOutlet="sharedPopupActionSheetTemplate"></ng-container>
2107
2137
  </ng-template>
2108
- <kendo-resize-sensor *ngIf="isOpen || isAdaptiveModeEnabled" (resize)="onResize()"></kendo-resize-sensor>
2138
+ @if (isOpen || isAdaptiveModeEnabled) {
2139
+ <kendo-resize-sensor (resize)="onResize()"></kendo-resize-sensor>
2140
+ }
2109
2141
  <ng-container #container></ng-container>
2110
-
2142
+
2111
2143
  <kendo-adaptive-renderer
2112
- [sharedPopupActionSheetTemplate]="sharedPopupActionSheetTemplate"
2113
- [title]="adaptiveTitle"
2114
- [showTextInput]="true"
2115
- [subtitle]="adaptiveSubtitle"
2116
- (closePopup)="applyValue()"
2117
- (textInputChange)="handleFilter($event)"
2118
- [placeholder]="placeholder"
2119
- (navigate)="handleNavigate($event)"
2120
- [searchBarValue]="text">
2144
+ [sharedPopupActionSheetTemplate]="sharedPopupActionSheetTemplate"
2145
+ [title]="adaptiveTitle"
2146
+ [showTextInput]="true"
2147
+ [subtitle]="adaptiveSubtitle"
2148
+ (closePopup)="applyValue()"
2149
+ (textInputChange)="handleFilter($event)"
2150
+ [placeholder]="placeholder"
2151
+ (navigate)="handleNavigate($event)"
2152
+ [searchBarValue]="text">
2121
2153
  </kendo-adaptive-renderer>
2122
-
2154
+
2123
2155
  <ng-template #sharedPopupActionSheetTemplate>
2124
- <!--header template-->
2125
- <ng-template *ngIf="headerTemplate"
2156
+ <!--header template-->
2157
+ @if (headerTemplate) {
2158
+ <ng-template
2126
2159
  [templateContext]="{
2127
2160
  templateRef: headerTemplate.templateRef
2128
2161
  }">
2129
2162
  </ng-template>
2130
- <!--list-->
2131
- <kendo-list
2132
- #optionsList
2133
- [size]="isAdaptive ? 'large' : size"
2134
- [rounded]="rounded"
2135
- [id]="listBoxId"
2136
- [optionPrefix]="optionPrefix"
2137
- [data]="data"
2138
- [textField]="textField"
2139
- [valueField]="valueField"
2140
- [template]="template"
2141
- [groupTemplate]="groupTemplate"
2142
- [fixedGroupTemplate]="fixedGroupTemplate"
2143
- [height]="listHeight"
2144
- [show]="isOpen"
2145
- [multipleSelection]="true"
2146
- [virtual]="virtual"
2147
- (pageChange)="pageChange($event)"
2148
- [checkboxes]="checkboxes"
2149
- [isMultiselect]="true"
2150
- [isActionSheetExpanded]="isActionSheetExpanded"
2151
- [showStickyHeader]="showStickyHeader"
2152
- [customItemTemplate]="customItemTemplate"
2153
- [text]="text"
2154
- [allowCustom]="allowCustom"
2163
+ }
2164
+ <!--list-->
2165
+ <kendo-list
2166
+ #optionsList
2167
+ [size]="isAdaptive ? 'large' : size"
2168
+ [rounded]="rounded"
2169
+ [id]="listBoxId"
2170
+ [optionPrefix]="optionPrefix"
2171
+ [data]="data"
2172
+ [textField]="textField"
2173
+ [valueField]="valueField"
2174
+ [template]="template"
2175
+ [groupTemplate]="groupTemplate"
2176
+ [fixedGroupTemplate]="fixedGroupTemplate"
2177
+ [height]="listHeight"
2178
+ [show]="isOpen"
2179
+ [multipleSelection]="true"
2180
+ [virtual]="virtual"
2181
+ (pageChange)="pageChange($event)"
2182
+ [checkboxes]="checkboxes"
2183
+ [isMultiselect]="true"
2184
+ [isActionSheetExpanded]="isActionSheetExpanded"
2185
+ [showStickyHeader]="showStickyHeader"
2186
+ [customItemTemplate]="customItemTemplate"
2187
+ [text]="text"
2188
+ [allowCustom]="allowCustom"
2155
2189
  >
2156
- </kendo-list>
2157
- <!--no data template-->
2158
- <div class="k-no-data" *ngIf="data.length === 0">
2159
- <ng-template [ngIf]="noDataTemplate"
2190
+ </kendo-list>
2191
+ <!--no data template-->
2192
+ @if (data.length === 0) {
2193
+ <div class="k-no-data">
2194
+ @if (noDataTemplate) {
2195
+ <ng-template
2160
2196
  [templateContext]="{
2161
2197
  templateRef: noDataTemplate ? noDataTemplate.templateRef : undefined
2162
2198
  }">
2163
2199
  </ng-template>
2164
- <ng-template [ngIf]="!noDataTemplate">
2165
- <div>{{ messageFor('noDataText') }}</div>
2166
- </ng-template>
2200
+ }
2201
+ @if (!noDataTemplate) {
2202
+ <div>{{ messageFor('noDataText') }}</div>
2203
+ }
2167
2204
  </div>
2168
- <!--footer template-->
2169
- <ng-template *ngIf="footerTemplate"
2205
+ }
2206
+ <!--footer template-->
2207
+ @if (footerTemplate) {
2208
+ <ng-template
2170
2209
  [templateContext]="{
2171
2210
  templateRef: footerTemplate.templateRef
2172
2211
  }">
2173
2212
  </ng-template>
2213
+ }
2174
2214
  </ng-template>
2175
- `,
2215
+ `,
2176
2216
  standalone: true,
2177
- imports: [LocalizedMessagesDirective, SharedDropDownEventsDirective, NgIf, NgTemplateOutlet, SeparatorComponent, TagListComponent, SearchBarComponent, IconWrapperComponent, ResizeSensorComponent, AdaptiveRendererComponent, TemplateContextDirective, ListComponent]
2217
+ imports: [LocalizedMessagesDirective, SharedDropDownEventsDirective, NgTemplateOutlet, SeparatorComponent, TagListComponent, SearchBarComponent, IconWrapperComponent, ResizeSensorComponent, AdaptiveRendererComponent, TemplateContextDirective, ListComponent]
2178
2218
  }]
2179
2219
  }], ctorParameters: () => [{ type: i0.ElementRef }, { type: i1.LocalizationService }, { type: i2.PopupService }, { type: i3.DataService }, { type: i4.SelectionService }, { type: i5.NavigationService }, { type: i6.DisabledItemsService }, { type: i0.ChangeDetectorRef }, { type: i0.KeyValueDiffers }, { type: i0.Renderer2 }, { type: i0.NgZone }, { type: i0.Injector }, { type: i0.ElementRef }, { type: i7.AdaptiveService }], propDecorators: { adaptiveRendererComponent: [{
2180
2220
  type: ViewChild,