@progress/kendo-angular-dropdowns 21.1.1-develop.1 → 21.2.0-develop.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/esm2022/autocomplete/autocomplete.component.mjs +259 -217
- package/esm2022/comboboxes/combobox.component.mjs +295 -253
- package/esm2022/comboboxes/multicolumncombobox.component.mjs +429 -383
- package/esm2022/common/adaptive-renderer.component.mjs +123 -107
- package/esm2022/common/list.component.mjs +295 -217
- package/esm2022/common/taglist.component.mjs +73 -59
- package/esm2022/dropdownlist/dropdownlist.component.mjs +259 -231
- package/esm2022/dropdowntrees/dropdowntree.component.mjs +298 -258
- package/esm2022/dropdowntrees/multiselecttree.component.mjs +359 -331
- package/esm2022/multiselect/multiselect.component.mjs +321 -281
- package/esm2022/package-metadata.mjs +2 -2
- package/fesm2022/progress-kendo-angular-dropdowns.mjs +2705 -2331
- package/package.json +10 -10
- package/schematics/ngAdd/index.js +6 -2
|
@@ -33,7 +33,7 @@ import { normalizeVirtualizationSettings } from '../common/models/virtualization
|
|
|
33
33
|
import { pointers, touchEnabled } from '@progress/kendo-common';
|
|
34
34
|
import { caretAltDownIcon, xIcon } from '@progress/kendo-svg-icons';
|
|
35
35
|
import { AdaptiveRendererComponent } from '../common/adaptive-renderer.component';
|
|
36
|
-
import {
|
|
36
|
+
import { NgTemplateOutlet, NgClass } from '@angular/common';
|
|
37
37
|
import { SharedDropDownEventsDirective } from '../common/shared-events.directive';
|
|
38
38
|
import { LocalizedMessagesDirective } from '../common/localization/localized-messages.directive';
|
|
39
39
|
import { IconWrapperComponent } from '@progress/kendo-angular-icons';
|
|
@@ -1576,7 +1576,7 @@ export class ComboBoxComponent extends MultiTabStop {
|
|
|
1576
1576
|
}
|
|
1577
1577
|
}
|
|
1578
1578
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: ComboBoxComponent, deps: [{ token: i0.ElementRef }, { token: i1.LocalizationService }, { token: i2.PopupService }, { token: i3.SelectionService }, { token: i4.NavigationService }, { token: i5.DisabledItemsService }, { token: i6.DataService }, { token: i0.NgZone }, { token: i0.ChangeDetectorRef }, { token: i0.Renderer2 }, { token: i0.Injector }, { token: i0.ElementRef }, { token: i7.AdaptiveService }], target: i0.ɵɵFactoryTarget.Component });
|
|
1579
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "
|
|
1579
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.14", type: ComboBoxComponent, isStandalone: true, selector: "kendo-combobox", inputs: { icon: "icon", svgIcon: "svgIcon", inputAttributes: "inputAttributes", showStickyHeader: "showStickyHeader", focusableId: "focusableId", allowCustom: "allowCustom", data: "data", value: "value", textField: "textField", valueField: "valueField", valuePrimitive: "valuePrimitive", valueNormalizer: "valueNormalizer", placeholder: "placeholder", adaptiveMode: "adaptiveMode", adaptiveTitle: "adaptiveTitle", adaptiveSubtitle: "adaptiveSubtitle", popupSettings: "popupSettings", listHeight: "listHeight", loading: "loading", suggest: "suggest", clearButton: "clearButton", disabled: "disabled", itemDisabled: "itemDisabled", readonly: "readonly", tabindex: "tabindex", tabIndex: "tabIndex", filterable: "filterable", virtual: "virtual", size: "size", rounded: "rounded", fillMode: "fillMode" }, outputs: { valueChange: "valueChange", selectionChange: "selectionChange", filterChange: "filterChange", open: "open", opened: "opened", close: "close", closed: "closed", onFocus: "focus", onBlur: "blur", inputFocus: "inputFocus", inputBlur: "inputBlur", escape: "escape" }, host: { properties: { "class.k-readonly": "this.readonly", "class.k-combobox": "this.widgetClasses", "class.k-input": "this.widgetClasses", "class.k-disabled": "this.isDisabled", "class.k-loading": "this.isLoading", "attr.dir": "this.dir" } }, providers: [
|
|
1580
1580
|
COMBOBOX_VALUE_ACCESSOR,
|
|
1581
1581
|
DataService,
|
|
1582
1582
|
SelectionService,
|
|
@@ -1598,168 +1598,189 @@ export class ComboBoxComponent extends MultiTabStop {
|
|
|
1598
1598
|
}
|
|
1599
1599
|
], queries: [{ propertyName: "template", first: true, predicate: ItemTemplateDirective, descendants: true }, { propertyName: "headerTemplate", first: true, predicate: HeaderTemplateDirective, descendants: true }, { propertyName: "footerTemplate", first: true, predicate: FooterTemplateDirective, descendants: true }, { propertyName: "noDataTemplate", first: true, predicate: NoDataTemplateDirective, descendants: true }, { propertyName: "groupTemplate", first: true, predicate: GroupTemplateDirective, descendants: true }, { propertyName: "fixedGroupTemplate", first: true, predicate: FixedGroupTemplateDirective, 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: "popupTemplate", first: true, predicate: ["popupTemplate"], descendants: true, static: true }, { propertyName: "searchbar", first: true, predicate: SearchBarComponent, descendants: true, static: true }, { propertyName: "optionsList", first: true, predicate: ["optionsList"], descendants: true }, { propertyName: "select", first: true, predicate: ["select"], descendants: true, static: true }], exportAs: ["kendoComboBox"], usesInheritance: true, usesOnChanges: true, ngImport: i0, template: `
|
|
1600
1600
|
<ng-container kendoComboBoxLocalizedMessages
|
|
1601
|
-
|
|
1602
|
-
|
|
1603
|
-
|
|
1604
|
-
|
|
1605
|
-
|
|
1606
|
-
|
|
1607
|
-
|
|
1608
|
-
|
|
1609
|
-
|
|
1610
|
-
|
|
1611
|
-
|
|
1612
|
-
|
|
1613
|
-
|
|
1614
|
-
|
|
1615
|
-
|
|
1601
|
+
i18n-noDataText="kendo.combobox.noDataText|The text displayed in the popup when there are no items"
|
|
1602
|
+
noDataText="NO DATA FOUND"
|
|
1603
|
+
|
|
1604
|
+
i18n-clearTitle="kendo.combobox.clearTitle|The title of the clear button"
|
|
1605
|
+
clearTitle="clear"
|
|
1606
|
+
|
|
1607
|
+
i18n-selectButtonText="kendo.combobox.selectButtonText|The text set as aria-label on the select button"
|
|
1608
|
+
selectButtonText="Select"
|
|
1609
|
+
|
|
1610
|
+
i18n-popupLabel="kendo.combobox.popupLabel|The label of the popup element that contains the list of options when its role is 'region'"
|
|
1611
|
+
popupLabel="Options list"
|
|
1612
|
+
|
|
1613
|
+
i18n-adaptiveCloseButtonTitle="kendo.combobox.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"
|
|
1614
|
+
adaptiveCloseButtonTitle="Close"
|
|
1615
|
+
>
|
|
1616
1616
|
</ng-container>
|
|
1617
|
-
|
|
1617
|
+
|
|
1618
1618
|
<ng-container
|
|
1619
|
-
|
|
1620
|
-
|
|
1621
|
-
|
|
1622
|
-
|
|
1623
|
-
|
|
1624
|
-
|
|
1625
|
-
|
|
1626
|
-
|
|
1627
|
-
|
|
1619
|
+
kendoDropDownSharedEvents
|
|
1620
|
+
[hostElement]="hostElement"
|
|
1621
|
+
[(isFocused)]="isFocused"
|
|
1622
|
+
(handleBlur)="handleBlur()"
|
|
1623
|
+
(onFocus)="handleFocus()"
|
|
1624
|
+
>
|
|
1625
|
+
@if (prefixTemplate) {
|
|
1626
|
+
<span class="k-input-prefix k-input-prefix-horizontal">
|
|
1627
|
+
<ng-template [ngTemplateOutlet]="prefixTemplate?.templateRef">
|
|
1628
|
+
</ng-template>
|
|
1628
1629
|
</span>
|
|
1629
|
-
|
|
1630
|
-
|
|
1631
|
-
|
|
1632
|
-
|
|
1633
|
-
|
|
1634
|
-
|
|
1635
|
-
|
|
1636
|
-
|
|
1637
|
-
|
|
1638
|
-
|
|
1639
|
-
|
|
1640
|
-
|
|
1641
|
-
|
|
1642
|
-
|
|
1643
|
-
|
|
1644
|
-
|
|
1645
|
-
|
|
1646
|
-
|
|
1647
|
-
|
|
1648
|
-
|
|
1649
|
-
|
|
1650
|
-
|
|
1651
|
-
|
|
1630
|
+
}
|
|
1631
|
+
@if (prefixTemplate && prefixTemplate.showSeparator) {
|
|
1632
|
+
<kendo-separator></kendo-separator>
|
|
1633
|
+
}
|
|
1634
|
+
<input
|
|
1635
|
+
kendoSearchbar
|
|
1636
|
+
[ariaExpanded]="isOpen"
|
|
1637
|
+
[ariaControls]="ariaControls"
|
|
1638
|
+
[id]="focusableId"
|
|
1639
|
+
[isLoading]="loading"
|
|
1640
|
+
[isSuggestable]="suggest"
|
|
1641
|
+
[isFilterable]="filterable"
|
|
1642
|
+
[activeDescendant]="activeDescendant"
|
|
1643
|
+
[userInput]="text"
|
|
1644
|
+
[suggestedText]="getSuggestion()"
|
|
1645
|
+
[disabled]="disabled"
|
|
1646
|
+
[readonly]="readonly || isAdaptive"
|
|
1647
|
+
[tabIndex]="tabIndex"
|
|
1648
|
+
[isRequired]="isControlRequired"
|
|
1649
|
+
[placeholder]="placeholder"
|
|
1650
|
+
[inputAttributes]="inputAttributes"
|
|
1651
|
+
(onNavigate)="handleNavigate($event)"
|
|
1652
|
+
(valueChange)="searchBarChange($event)"
|
|
1653
|
+
(onBlur)="handleInputBlur()"
|
|
1654
|
+
(onFocus)="handleInputFocus()"
|
|
1655
|
+
(click)="handleClick()"
|
|
1652
1656
|
/>
|
|
1657
|
+
@if (clearButton && !loading && !disabled && !readonly && text?.length) {
|
|
1653
1658
|
<span
|
|
1654
|
-
|
|
1655
|
-
|
|
1656
|
-
|
|
1657
|
-
|
|
1658
|
-
|
|
1659
|
-
(click)="clearValue($event)"
|
|
1659
|
+
class="k-clear-value"
|
|
1660
|
+
[style.visibility]="clearButtonVisibility"
|
|
1661
|
+
aria-hidden="true"
|
|
1662
|
+
[attr.title]="messageFor('clearTitle')"
|
|
1663
|
+
(click)="clearValue($event)"
|
|
1660
1664
|
[kendoEventsOutsideAngular]="{
|
|
1661
1665
|
mousedown: preventEventDefault
|
|
1662
1666
|
}"
|
|
1663
|
-
|
|
1664
|
-
|
|
1665
|
-
|
|
1666
|
-
|
|
1667
|
+
>
|
|
1668
|
+
<kendo-icon-wrapper
|
|
1669
|
+
name="x"
|
|
1670
|
+
[svgIcon]="xIcon"
|
|
1667
1671
|
>
|
|
1668
|
-
|
|
1672
|
+
</kendo-icon-wrapper>
|
|
1669
1673
|
</span>
|
|
1670
|
-
|
|
1671
|
-
|
|
1672
|
-
<span
|
|
1673
|
-
|
|
1674
|
-
|
|
1674
|
+
}
|
|
1675
|
+
@if (loading) {
|
|
1676
|
+
<span class="k-i-loading k-input-loading-icon k-icon"></span>
|
|
1677
|
+
}
|
|
1678
|
+
@if (suffixTemplate && suffixTemplate.showSeparator) {
|
|
1679
|
+
<kendo-separator></kendo-separator>
|
|
1680
|
+
}
|
|
1681
|
+
@if (suffixTemplate) {
|
|
1682
|
+
<span class="k-input-suffix k-input-suffix-horizontal">
|
|
1683
|
+
<ng-template [ngTemplateOutlet]="suffixTemplate?.templateRef">
|
|
1684
|
+
</ng-template>
|
|
1675
1685
|
</span>
|
|
1676
|
-
|
|
1677
|
-
|
|
1678
|
-
|
|
1679
|
-
|
|
1680
|
-
|
|
1681
|
-
|
|
1682
|
-
|
|
1683
|
-
|
|
1684
|
-
|
|
1685
|
-
|
|
1686
|
+
}
|
|
1687
|
+
<button
|
|
1688
|
+
#select
|
|
1689
|
+
tabindex="-1"
|
|
1690
|
+
unselectable="on"
|
|
1691
|
+
type="button"
|
|
1692
|
+
class="k-input-button k-button k-icon-button"
|
|
1693
|
+
[ngClass]="selectButtonClasses"
|
|
1694
|
+
[attr.aria-label]="messageFor('selectButtonText')"
|
|
1695
|
+
[attr.disabled]="disabled ? '' : null"
|
|
1696
|
+
(keydown.enter)="$event.stopImmediatePropagation();"
|
|
1686
1697
|
[kendoEventsOutsideAngular]="{
|
|
1687
1698
|
mousedown: preventEventDefault
|
|
1688
1699
|
}"
|
|
1689
1700
|
>
|
|
1690
|
-
|
|
1691
|
-
|
|
1692
|
-
|
|
1693
|
-
|
|
1694
|
-
|
|
1695
|
-
|
|
1696
|
-
|
|
1701
|
+
<kendo-icon-wrapper
|
|
1702
|
+
[name]="icon || 'caret-alt-down'"
|
|
1703
|
+
innerCssClass="k-button-icon"
|
|
1704
|
+
[svgIcon]="svgIcon || caretAltDownIcon"
|
|
1705
|
+
>
|
|
1706
|
+
</kendo-icon-wrapper>
|
|
1707
|
+
</button>
|
|
1697
1708
|
</ng-container>
|
|
1698
|
-
|
|
1709
|
+
|
|
1699
1710
|
<ng-template #popupTemplate>
|
|
1700
|
-
|
|
1711
|
+
<ng-container *ngTemplateOutlet="sharedPopupActionSheetTemplate"></ng-container>
|
|
1701
1712
|
</ng-template>
|
|
1702
|
-
|
|
1713
|
+
@if (isOpen || isAdaptiveModeEnabled) {
|
|
1714
|
+
<kendo-resize-sensor (resize)="onResize()"></kendo-resize-sensor>
|
|
1715
|
+
}
|
|
1703
1716
|
<ng-container #container></ng-container>
|
|
1704
|
-
|
|
1717
|
+
|
|
1705
1718
|
<kendo-adaptive-renderer
|
|
1706
|
-
|
|
1707
|
-
|
|
1708
|
-
|
|
1709
|
-
|
|
1710
|
-
|
|
1711
|
-
|
|
1712
|
-
|
|
1713
|
-
|
|
1714
|
-
|
|
1715
|
-
|
|
1719
|
+
[sharedPopupActionSheetTemplate]="sharedPopupActionSheetTemplate"
|
|
1720
|
+
[title]="adaptiveTitle"
|
|
1721
|
+
[showTextInput]="true"
|
|
1722
|
+
[subtitle]="adaptiveSubtitle"
|
|
1723
|
+
(closePopup)="closeActionSheet()"
|
|
1724
|
+
(textInputChange)="searchBarChange($event)"
|
|
1725
|
+
(navigate)="handleNavigate($event)"
|
|
1726
|
+
[placeholder]="placeholder"
|
|
1727
|
+
[searchBarValue]="text"
|
|
1728
|
+
>
|
|
1716
1729
|
</kendo-adaptive-renderer>
|
|
1717
1730
|
<ng-template #sharedPopupActionSheetTemplate>
|
|
1718
|
-
|
|
1719
|
-
|
|
1731
|
+
<!--header template-->
|
|
1732
|
+
@if (headerTemplate) {
|
|
1733
|
+
<ng-template
|
|
1720
1734
|
[templateContext]="{
|
|
1721
1735
|
templateRef: headerTemplate.templateRef
|
|
1722
1736
|
}">
|
|
1723
1737
|
</ng-template>
|
|
1724
|
-
|
|
1725
|
-
|
|
1726
|
-
|
|
1727
|
-
|
|
1728
|
-
|
|
1729
|
-
|
|
1730
|
-
|
|
1731
|
-
|
|
1732
|
-
|
|
1733
|
-
|
|
1734
|
-
|
|
1735
|
-
|
|
1736
|
-
|
|
1737
|
-
|
|
1738
|
-
|
|
1739
|
-
|
|
1740
|
-
|
|
1741
|
-
|
|
1738
|
+
}
|
|
1739
|
+
<!--list-->
|
|
1740
|
+
<kendo-list
|
|
1741
|
+
#optionsList
|
|
1742
|
+
[size]="isAdaptive ? 'large' : size"
|
|
1743
|
+
[rounded]="rounded"
|
|
1744
|
+
[id]="listBoxId"
|
|
1745
|
+
[optionPrefix]="optionPrefix"
|
|
1746
|
+
[data]="data"
|
|
1747
|
+
[textField]="textField"
|
|
1748
|
+
[valueField]="valueField"
|
|
1749
|
+
[template]="template"
|
|
1750
|
+
[groupTemplate]="groupTemplate"
|
|
1751
|
+
[fixedGroupTemplate]="fixedGroupTemplate"
|
|
1752
|
+
[height]="listHeight"
|
|
1753
|
+
[show]="isOpen"
|
|
1754
|
+
[virtual]="virtual"
|
|
1755
|
+
[showStickyHeader]="showStickyHeader"
|
|
1756
|
+
(pageChange)="pageChange($event)"
|
|
1742
1757
|
>
|
|
1743
|
-
|
|
1744
|
-
|
|
1745
|
-
|
|
1746
|
-
|
|
1758
|
+
</kendo-list>
|
|
1759
|
+
<!--no-data template-->
|
|
1760
|
+
@if (data.length === 0) {
|
|
1761
|
+
<div class="k-no-data">
|
|
1762
|
+
@if (noDataTemplate) {
|
|
1763
|
+
<ng-template
|
|
1747
1764
|
[templateContext]="{
|
|
1748
1765
|
templateRef: noDataTemplate ? noDataTemplate.templateRef : undefined
|
|
1749
1766
|
}">
|
|
1750
1767
|
</ng-template>
|
|
1751
|
-
|
|
1752
|
-
|
|
1753
|
-
</
|
|
1768
|
+
}
|
|
1769
|
+
@if (!noDataTemplate) {
|
|
1770
|
+
<div>{{ messageFor('noDataText') }}</div>
|
|
1771
|
+
}
|
|
1754
1772
|
</div>
|
|
1755
|
-
|
|
1756
|
-
|
|
1773
|
+
}
|
|
1774
|
+
<!--footer template-->
|
|
1775
|
+
@if (footerTemplate) {
|
|
1776
|
+
<ng-template
|
|
1757
1777
|
[templateContext]="{
|
|
1758
1778
|
templateRef: footerTemplate.templateRef
|
|
1759
1779
|
}">
|
|
1760
1780
|
</ng-template>
|
|
1781
|
+
}
|
|
1761
1782
|
</ng-template>
|
|
1762
|
-
|
|
1783
|
+
`, 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: 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: "directive", type: EventsOutsideAngularDirective, selector: "[kendoEventsOutsideAngular]", inputs: ["kendoEventsOutsideAngular", "scope"] }, { kind: "component", type: IconWrapperComponent, selector: "kendo-icon-wrapper", inputs: ["name", "svgIcon", "innerCssClass", "customFontClass", "size"], exportAs: ["kendoIconWrapper"] }, { kind: "directive", type: NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { 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"] }] });
|
|
1763
1784
|
}
|
|
1764
1785
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: ComboBoxComponent, decorators: [{
|
|
1765
1786
|
type: Component,
|
|
@@ -1789,170 +1810,191 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImpo
|
|
|
1789
1810
|
selector: 'kendo-combobox',
|
|
1790
1811
|
template: `
|
|
1791
1812
|
<ng-container kendoComboBoxLocalizedMessages
|
|
1792
|
-
|
|
1793
|
-
|
|
1794
|
-
|
|
1795
|
-
|
|
1796
|
-
|
|
1797
|
-
|
|
1798
|
-
|
|
1799
|
-
|
|
1800
|
-
|
|
1801
|
-
|
|
1802
|
-
|
|
1803
|
-
|
|
1804
|
-
|
|
1805
|
-
|
|
1806
|
-
|
|
1813
|
+
i18n-noDataText="kendo.combobox.noDataText|The text displayed in the popup when there are no items"
|
|
1814
|
+
noDataText="NO DATA FOUND"
|
|
1815
|
+
|
|
1816
|
+
i18n-clearTitle="kendo.combobox.clearTitle|The title of the clear button"
|
|
1817
|
+
clearTitle="clear"
|
|
1818
|
+
|
|
1819
|
+
i18n-selectButtonText="kendo.combobox.selectButtonText|The text set as aria-label on the select button"
|
|
1820
|
+
selectButtonText="Select"
|
|
1821
|
+
|
|
1822
|
+
i18n-popupLabel="kendo.combobox.popupLabel|The label of the popup element that contains the list of options when its role is 'region'"
|
|
1823
|
+
popupLabel="Options list"
|
|
1824
|
+
|
|
1825
|
+
i18n-adaptiveCloseButtonTitle="kendo.combobox.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"
|
|
1826
|
+
adaptiveCloseButtonTitle="Close"
|
|
1827
|
+
>
|
|
1807
1828
|
</ng-container>
|
|
1808
|
-
|
|
1829
|
+
|
|
1809
1830
|
<ng-container
|
|
1810
|
-
|
|
1811
|
-
|
|
1812
|
-
|
|
1813
|
-
|
|
1814
|
-
|
|
1815
|
-
|
|
1816
|
-
|
|
1817
|
-
|
|
1818
|
-
|
|
1831
|
+
kendoDropDownSharedEvents
|
|
1832
|
+
[hostElement]="hostElement"
|
|
1833
|
+
[(isFocused)]="isFocused"
|
|
1834
|
+
(handleBlur)="handleBlur()"
|
|
1835
|
+
(onFocus)="handleFocus()"
|
|
1836
|
+
>
|
|
1837
|
+
@if (prefixTemplate) {
|
|
1838
|
+
<span class="k-input-prefix k-input-prefix-horizontal">
|
|
1839
|
+
<ng-template [ngTemplateOutlet]="prefixTemplate?.templateRef">
|
|
1840
|
+
</ng-template>
|
|
1819
1841
|
</span>
|
|
1820
|
-
|
|
1821
|
-
|
|
1822
|
-
|
|
1823
|
-
|
|
1824
|
-
|
|
1825
|
-
|
|
1826
|
-
|
|
1827
|
-
|
|
1828
|
-
|
|
1829
|
-
|
|
1830
|
-
|
|
1831
|
-
|
|
1832
|
-
|
|
1833
|
-
|
|
1834
|
-
|
|
1835
|
-
|
|
1836
|
-
|
|
1837
|
-
|
|
1838
|
-
|
|
1839
|
-
|
|
1840
|
-
|
|
1841
|
-
|
|
1842
|
-
|
|
1842
|
+
}
|
|
1843
|
+
@if (prefixTemplate && prefixTemplate.showSeparator) {
|
|
1844
|
+
<kendo-separator></kendo-separator>
|
|
1845
|
+
}
|
|
1846
|
+
<input
|
|
1847
|
+
kendoSearchbar
|
|
1848
|
+
[ariaExpanded]="isOpen"
|
|
1849
|
+
[ariaControls]="ariaControls"
|
|
1850
|
+
[id]="focusableId"
|
|
1851
|
+
[isLoading]="loading"
|
|
1852
|
+
[isSuggestable]="suggest"
|
|
1853
|
+
[isFilterable]="filterable"
|
|
1854
|
+
[activeDescendant]="activeDescendant"
|
|
1855
|
+
[userInput]="text"
|
|
1856
|
+
[suggestedText]="getSuggestion()"
|
|
1857
|
+
[disabled]="disabled"
|
|
1858
|
+
[readonly]="readonly || isAdaptive"
|
|
1859
|
+
[tabIndex]="tabIndex"
|
|
1860
|
+
[isRequired]="isControlRequired"
|
|
1861
|
+
[placeholder]="placeholder"
|
|
1862
|
+
[inputAttributes]="inputAttributes"
|
|
1863
|
+
(onNavigate)="handleNavigate($event)"
|
|
1864
|
+
(valueChange)="searchBarChange($event)"
|
|
1865
|
+
(onBlur)="handleInputBlur()"
|
|
1866
|
+
(onFocus)="handleInputFocus()"
|
|
1867
|
+
(click)="handleClick()"
|
|
1843
1868
|
/>
|
|
1869
|
+
@if (clearButton && !loading && !disabled && !readonly && text?.length) {
|
|
1844
1870
|
<span
|
|
1845
|
-
|
|
1846
|
-
|
|
1847
|
-
|
|
1848
|
-
|
|
1849
|
-
|
|
1850
|
-
(click)="clearValue($event)"
|
|
1871
|
+
class="k-clear-value"
|
|
1872
|
+
[style.visibility]="clearButtonVisibility"
|
|
1873
|
+
aria-hidden="true"
|
|
1874
|
+
[attr.title]="messageFor('clearTitle')"
|
|
1875
|
+
(click)="clearValue($event)"
|
|
1851
1876
|
[kendoEventsOutsideAngular]="{
|
|
1852
1877
|
mousedown: preventEventDefault
|
|
1853
1878
|
}"
|
|
1854
|
-
|
|
1855
|
-
|
|
1856
|
-
|
|
1857
|
-
|
|
1879
|
+
>
|
|
1880
|
+
<kendo-icon-wrapper
|
|
1881
|
+
name="x"
|
|
1882
|
+
[svgIcon]="xIcon"
|
|
1858
1883
|
>
|
|
1859
|
-
|
|
1884
|
+
</kendo-icon-wrapper>
|
|
1860
1885
|
</span>
|
|
1861
|
-
|
|
1862
|
-
|
|
1863
|
-
<span
|
|
1864
|
-
|
|
1865
|
-
|
|
1886
|
+
}
|
|
1887
|
+
@if (loading) {
|
|
1888
|
+
<span class="k-i-loading k-input-loading-icon k-icon"></span>
|
|
1889
|
+
}
|
|
1890
|
+
@if (suffixTemplate && suffixTemplate.showSeparator) {
|
|
1891
|
+
<kendo-separator></kendo-separator>
|
|
1892
|
+
}
|
|
1893
|
+
@if (suffixTemplate) {
|
|
1894
|
+
<span class="k-input-suffix k-input-suffix-horizontal">
|
|
1895
|
+
<ng-template [ngTemplateOutlet]="suffixTemplate?.templateRef">
|
|
1896
|
+
</ng-template>
|
|
1866
1897
|
</span>
|
|
1867
|
-
|
|
1868
|
-
|
|
1869
|
-
|
|
1870
|
-
|
|
1871
|
-
|
|
1872
|
-
|
|
1873
|
-
|
|
1874
|
-
|
|
1875
|
-
|
|
1876
|
-
|
|
1898
|
+
}
|
|
1899
|
+
<button
|
|
1900
|
+
#select
|
|
1901
|
+
tabindex="-1"
|
|
1902
|
+
unselectable="on"
|
|
1903
|
+
type="button"
|
|
1904
|
+
class="k-input-button k-button k-icon-button"
|
|
1905
|
+
[ngClass]="selectButtonClasses"
|
|
1906
|
+
[attr.aria-label]="messageFor('selectButtonText')"
|
|
1907
|
+
[attr.disabled]="disabled ? '' : null"
|
|
1908
|
+
(keydown.enter)="$event.stopImmediatePropagation();"
|
|
1877
1909
|
[kendoEventsOutsideAngular]="{
|
|
1878
1910
|
mousedown: preventEventDefault
|
|
1879
1911
|
}"
|
|
1880
1912
|
>
|
|
1881
|
-
|
|
1882
|
-
|
|
1883
|
-
|
|
1884
|
-
|
|
1885
|
-
|
|
1886
|
-
|
|
1887
|
-
|
|
1913
|
+
<kendo-icon-wrapper
|
|
1914
|
+
[name]="icon || 'caret-alt-down'"
|
|
1915
|
+
innerCssClass="k-button-icon"
|
|
1916
|
+
[svgIcon]="svgIcon || caretAltDownIcon"
|
|
1917
|
+
>
|
|
1918
|
+
</kendo-icon-wrapper>
|
|
1919
|
+
</button>
|
|
1888
1920
|
</ng-container>
|
|
1889
|
-
|
|
1921
|
+
|
|
1890
1922
|
<ng-template #popupTemplate>
|
|
1891
|
-
|
|
1923
|
+
<ng-container *ngTemplateOutlet="sharedPopupActionSheetTemplate"></ng-container>
|
|
1892
1924
|
</ng-template>
|
|
1893
|
-
|
|
1925
|
+
@if (isOpen || isAdaptiveModeEnabled) {
|
|
1926
|
+
<kendo-resize-sensor (resize)="onResize()"></kendo-resize-sensor>
|
|
1927
|
+
}
|
|
1894
1928
|
<ng-container #container></ng-container>
|
|
1895
|
-
|
|
1929
|
+
|
|
1896
1930
|
<kendo-adaptive-renderer
|
|
1897
|
-
|
|
1898
|
-
|
|
1899
|
-
|
|
1900
|
-
|
|
1901
|
-
|
|
1902
|
-
|
|
1903
|
-
|
|
1904
|
-
|
|
1905
|
-
|
|
1906
|
-
|
|
1931
|
+
[sharedPopupActionSheetTemplate]="sharedPopupActionSheetTemplate"
|
|
1932
|
+
[title]="adaptiveTitle"
|
|
1933
|
+
[showTextInput]="true"
|
|
1934
|
+
[subtitle]="adaptiveSubtitle"
|
|
1935
|
+
(closePopup)="closeActionSheet()"
|
|
1936
|
+
(textInputChange)="searchBarChange($event)"
|
|
1937
|
+
(navigate)="handleNavigate($event)"
|
|
1938
|
+
[placeholder]="placeholder"
|
|
1939
|
+
[searchBarValue]="text"
|
|
1940
|
+
>
|
|
1907
1941
|
</kendo-adaptive-renderer>
|
|
1908
1942
|
<ng-template #sharedPopupActionSheetTemplate>
|
|
1909
|
-
|
|
1910
|
-
|
|
1943
|
+
<!--header template-->
|
|
1944
|
+
@if (headerTemplate) {
|
|
1945
|
+
<ng-template
|
|
1911
1946
|
[templateContext]="{
|
|
1912
1947
|
templateRef: headerTemplate.templateRef
|
|
1913
1948
|
}">
|
|
1914
1949
|
</ng-template>
|
|
1915
|
-
|
|
1916
|
-
|
|
1917
|
-
|
|
1918
|
-
|
|
1919
|
-
|
|
1920
|
-
|
|
1921
|
-
|
|
1922
|
-
|
|
1923
|
-
|
|
1924
|
-
|
|
1925
|
-
|
|
1926
|
-
|
|
1927
|
-
|
|
1928
|
-
|
|
1929
|
-
|
|
1930
|
-
|
|
1931
|
-
|
|
1932
|
-
|
|
1950
|
+
}
|
|
1951
|
+
<!--list-->
|
|
1952
|
+
<kendo-list
|
|
1953
|
+
#optionsList
|
|
1954
|
+
[size]="isAdaptive ? 'large' : size"
|
|
1955
|
+
[rounded]="rounded"
|
|
1956
|
+
[id]="listBoxId"
|
|
1957
|
+
[optionPrefix]="optionPrefix"
|
|
1958
|
+
[data]="data"
|
|
1959
|
+
[textField]="textField"
|
|
1960
|
+
[valueField]="valueField"
|
|
1961
|
+
[template]="template"
|
|
1962
|
+
[groupTemplate]="groupTemplate"
|
|
1963
|
+
[fixedGroupTemplate]="fixedGroupTemplate"
|
|
1964
|
+
[height]="listHeight"
|
|
1965
|
+
[show]="isOpen"
|
|
1966
|
+
[virtual]="virtual"
|
|
1967
|
+
[showStickyHeader]="showStickyHeader"
|
|
1968
|
+
(pageChange)="pageChange($event)"
|
|
1933
1969
|
>
|
|
1934
|
-
|
|
1935
|
-
|
|
1936
|
-
|
|
1937
|
-
|
|
1970
|
+
</kendo-list>
|
|
1971
|
+
<!--no-data template-->
|
|
1972
|
+
@if (data.length === 0) {
|
|
1973
|
+
<div class="k-no-data">
|
|
1974
|
+
@if (noDataTemplate) {
|
|
1975
|
+
<ng-template
|
|
1938
1976
|
[templateContext]="{
|
|
1939
1977
|
templateRef: noDataTemplate ? noDataTemplate.templateRef : undefined
|
|
1940
1978
|
}">
|
|
1941
1979
|
</ng-template>
|
|
1942
|
-
|
|
1943
|
-
|
|
1944
|
-
</
|
|
1980
|
+
}
|
|
1981
|
+
@if (!noDataTemplate) {
|
|
1982
|
+
<div>{{ messageFor('noDataText') }}</div>
|
|
1983
|
+
}
|
|
1945
1984
|
</div>
|
|
1946
|
-
|
|
1947
|
-
|
|
1985
|
+
}
|
|
1986
|
+
<!--footer template-->
|
|
1987
|
+
@if (footerTemplate) {
|
|
1988
|
+
<ng-template
|
|
1948
1989
|
[templateContext]="{
|
|
1949
1990
|
templateRef: footerTemplate.templateRef
|
|
1950
1991
|
}">
|
|
1951
1992
|
</ng-template>
|
|
1993
|
+
}
|
|
1952
1994
|
</ng-template>
|
|
1953
|
-
|
|
1995
|
+
`,
|
|
1954
1996
|
standalone: true,
|
|
1955
|
-
imports: [LocalizedMessagesDirective, SharedDropDownEventsDirective,
|
|
1997
|
+
imports: [LocalizedMessagesDirective, SharedDropDownEventsDirective, NgTemplateOutlet, SeparatorComponent, SearchBarComponent, EventsOutsideAngularDirective, IconWrapperComponent, NgClass, ResizeSensorComponent, AdaptiveRendererComponent, TemplateContextDirective, ListComponent]
|
|
1956
1998
|
}]
|
|
1957
1999
|
}], ctorParameters: () => [{ type: i0.ElementRef }, { type: i1.LocalizationService }, { type: i2.PopupService }, { type: i3.SelectionService }, { type: i4.NavigationService }, { type: i5.DisabledItemsService }, { type: i6.DataService }, { type: i0.NgZone }, { type: i0.ChangeDetectorRef }, { type: i0.Renderer2 }, { type: i0.Injector }, { type: i0.ElementRef }, { type: i7.AdaptiveService }], propDecorators: { icon: [{
|
|
1958
2000
|
type: Input
|