@progress/kendo-react-dropdowns 5.10.0-dev.202301091032 → 5.10.0-dev.202301111405

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.
@@ -31,7 +31,7 @@ import ListContainer from './../common/ListContainer';
31
31
  import List from './../common/List';
32
32
  import DropDownBase from '../common/DropDownBase';
33
33
  import { itemIndexStartsWith, getItemValue, areSame, getFocusedItem } from '../common/utils';
34
- import { guid, Keys, classNames, createPropsContext, withPropsContext, kendoThemeMaps } from '@progress/kendo-react-common';
34
+ import { guid, Keys, classNames, createPropsContext, withPropsContext, kendoThemeMaps, IconWrap } from '@progress/kendo-react-common';
35
35
  import { FloatingLabel } from '@progress/kendo-react-labels';
36
36
  import { validatePackage } from '@progress/kendo-react-common';
37
37
  import { packageMetadata } from '../package-metadata';
@@ -319,7 +319,7 @@ var AutoCompleteWithoutContext = /** @class */ (function (_super) {
319
319
  ? style
320
320
  : __assign(__assign({}, style), { width: undefined }), dir: dir },
321
321
  this.renderSearchBar(value || '', id),
322
- loading && React.createElement("span", { className: "k-icon k-i-loading k-input-loading-icon" }),
322
+ loading && React.createElement(IconWrap, { className: "k-input-loading-icon", name: 'loading' }),
323
323
  renderClearButton && !loading && React.createElement(ClearButton, { onClick: this.clearButtonClick, key: "clearbutton" }),
324
324
  this.renderListContainer()));
325
325
  return label
@@ -383,7 +383,7 @@ var AutoCompleteWithoutContext = /** @class */ (function (_super) {
383
383
  animate: popupSettings.animate,
384
384
  anchor: this.element,
385
385
  show: opened,
386
- popupClass: classNames(popupSettings.popupClass, 'k-list-container'),
386
+ popupClass: classNames(popupSettings.popupClass, 'k-list-container', 'k-autocomplete-popup'),
387
387
  className: popupSettings.className,
388
388
  appendTo: popupSettings.appendTo
389
389
  }, dir: dir !== undefined ? dir : this.base.dirCalculated, itemsCount: [data.length] },
@@ -34,6 +34,11 @@ export declare class ComboBoxWithoutContext extends React.Component<ComboBoxProp
34
34
  allowCustom: PropTypes.Requireable<boolean>;
35
35
  clearButton: PropTypes.Requireable<boolean>;
36
36
  iconClassName: PropTypes.Requireable<string>;
37
+ svgIcon: PropTypes.Requireable<PropTypes.InferProps<{
38
+ name: PropTypes.Validator<string>;
39
+ content: PropTypes.Validator<string>;
40
+ viewBox: PropTypes.Validator<string>;
41
+ }>>;
37
42
  validationMessage: PropTypes.Requireable<string>;
38
43
  required: PropTypes.Requireable<boolean>;
39
44
  id: PropTypes.Requireable<string>;
@@ -27,7 +27,7 @@ var __assign = (this && this.__assign) || function () {
27
27
  import * as React from 'react';
28
28
  import * as PropTypes from 'prop-types';
29
29
  import DropDownBase from '../common/DropDownBase';
30
- import { guid, classNames, Keys, createPropsContext, withPropsContext, kendoThemeMaps } from '@progress/kendo-react-common';
30
+ import { guid, classNames, Keys, createPropsContext, withPropsContext, kendoThemeMaps, svgIconPropType } from '@progress/kendo-react-common';
31
31
  import { FloatingLabel } from '@progress/kendo-react-labels';
32
32
  import { areSame, itemIndexStartsWith, getItemIndexByText, getItemValue, isPresent, suggestValue } from '../common/utils';
33
33
  import SearchBar from '../common/SearchBar';
@@ -37,6 +37,7 @@ import { validatePackage } from '@progress/kendo-react-common';
37
37
  import { packageMetadata } from '../package-metadata';
38
38
  import ClearButton from '../common/ClearButton';
39
39
  import { Button } from '@progress/kendo-react-buttons';
40
+ import { caretAltDownIcon } from '@progress/kendo-svg-icons';
40
41
  var VALIDATION_MESSAGE = 'Please enter a valid value!';
41
42
  var sizeMap = kendoThemeMaps.sizeMap, roundedMap = kendoThemeMaps.roundedMap;
42
43
  /** @hidden */
@@ -390,7 +391,7 @@ var ComboBoxWithoutContext = /** @class */ (function (_super) {
390
391
  this.renderSearchBar(inputText || '', id),
391
392
  renderClearButton && !loading && React.createElement(ClearButton, { onClick: this.clearButtonClick, key: "clearbutton" }),
392
393
  loading && React.createElement("span", { className: "k-icon k-i-loading k-input-loading-icon", key: "loading" }),
393
- React.createElement(Button, { tabIndex: -1, type: "button", icon: !iconClassName ? 'caret-alt-down' : undefined, iconClass: iconClassName, size: size, fillMode: fillMode, rounded: null, themeColor: 'base', className: "k-input-button", onClick: this.toggleBtnClick, onMouseDown: function (e) { return e.preventDefault(); } }),
394
+ React.createElement(Button, { tabIndex: -1, type: "button", icon: !iconClassName ? 'caret-alt-down' : undefined, svgIcon: !iconClassName ? caretAltDownIcon : this.props.svgIcon, iconClass: iconClassName, size: size, fillMode: fillMode, rounded: null, themeColor: 'base', className: "k-input-button", onClick: this.toggleBtnClick, onMouseDown: function (e) { return e.preventDefault(); } }),
394
395
  this.renderListContainer()));
395
396
  return label
396
397
  ? (React.createElement(FloatingLabel, { label: label, editorId: id, editorValue: inputText, editorValid: isValid, editorDisabled: disabled, style: { width: style ? style.width : undefined }, children: combobox }))
@@ -521,7 +522,7 @@ var ComboBoxWithoutContext = /** @class */ (function (_super) {
521
522
  animate: popupSettings.animate,
522
523
  anchor: this.element,
523
524
  show: opened,
524
- popupClass: classNames(popupSettings.popupClass, 'k-list-container'),
525
+ popupClass: classNames(popupSettings.popupClass, 'k-list-container', 'k-combobox-popup'),
525
526
  className: popupSettings.className,
526
527
  appendTo: popupSettings.appendTo
527
528
  }, dir: dir !== undefined ? dir : this.base.dirCalculated, itemsCount: [data.length] },
@@ -604,7 +605,7 @@ var ComboBoxWithoutContext = /** @class */ (function (_super) {
604
605
  /**
605
606
  * @hidden
606
607
  */
607
- ComboBoxWithoutContext.propTypes = __assign(__assign({}, DropDownBase.propTypes), { size: PropTypes.oneOf([null, 'small', 'medium', 'large']), rounded: PropTypes.oneOf([null, 'small', 'medium', 'large', 'full']), fillMode: PropTypes.oneOf([null, 'solid', 'flat', 'outline']), dataItemKey: PropTypes.string, groupField: PropTypes.string, suggest: PropTypes.bool, placeholder: PropTypes.string, allowCustom: PropTypes.bool, clearButton: PropTypes.bool, iconClassName: PropTypes.string, validationMessage: PropTypes.string, required: PropTypes.bool, id: PropTypes.string, ariaLabelledBy: PropTypes.string, ariaDescribedBy: PropTypes.string, list: PropTypes.any, valueRender: PropTypes.func });
608
+ ComboBoxWithoutContext.propTypes = __assign(__assign({}, DropDownBase.propTypes), { size: PropTypes.oneOf([null, 'small', 'medium', 'large']), rounded: PropTypes.oneOf([null, 'small', 'medium', 'large', 'full']), fillMode: PropTypes.oneOf([null, 'solid', 'flat', 'outline']), dataItemKey: PropTypes.string, groupField: PropTypes.string, suggest: PropTypes.bool, placeholder: PropTypes.string, allowCustom: PropTypes.bool, clearButton: PropTypes.bool, iconClassName: PropTypes.string, svgIcon: svgIconPropType, validationMessage: PropTypes.string, required: PropTypes.bool, id: PropTypes.string, ariaLabelledBy: PropTypes.string, ariaDescribedBy: PropTypes.string, list: PropTypes.any, valueRender: PropTypes.func });
608
609
  /**
609
610
  * @hidden
610
611
  */
@@ -1,7 +1,7 @@
1
1
  /// <reference types="react" />
2
2
  import { ComboBox } from './ComboBox';
3
3
  import { FilterChangeEvent, ChangeEvent, OpenEvent, CloseEvent, FocusEvent, BlurEvent, PageChangeEvent } from './../common/events';
4
- import { FormComponentProps } from '@progress/kendo-react-common';
4
+ import { FormComponentProps, SVGIcon } from '@progress/kendo-react-common';
5
5
  import { VirtualizationSettings, DropDownsPopupSettings } from '../common/settings';
6
6
  import { ListItemProps } from '../common/ListItem';
7
7
  /**
@@ -71,6 +71,10 @@ export interface ComboBoxProps extends FormComponentProps {
71
71
  * Sets CSS classes to the expand `icon` DOM element.
72
72
  */
73
73
  iconClassName?: string;
74
+ /**
75
+ * Sets the specified SVG icon.
76
+ */
77
+ svgIcon?: SVGIcon;
74
78
  /**
75
79
  * If `clearButton` is set to `true`, the ComboBox renders a button on hovering over the component. Clicking this button resets the value of the ComboBox to `undefined` and triggers the `change` event.
76
80
  */
@@ -25,13 +25,12 @@ export declare class DropDownListWithoutContext extends React.Component<DropDown
25
25
  virtual: PropTypes.Requireable<PropTypes.InferProps<{
26
26
  pageSize: PropTypes.Validator<number>;
27
27
  skip: PropTypes.Validator<number>;
28
- /**
29
- * @hidden
30
- */
31
28
  total: PropTypes.Validator<number>;
32
29
  }>>;
33
30
  onFilterChange: PropTypes.Requireable<(...args: any[]) => any>;
34
- onPageChange: PropTypes.Requireable<(...args: any[]) => any>;
31
+ onPageChange: PropTypes.Requireable<(...args: any[]) => any>; /**
32
+ * @hidden
33
+ */
35
34
  opened: PropTypes.Requireable<boolean>;
36
35
  disabled: PropTypes.Requireable<boolean>;
37
36
  dir: PropTypes.Requireable<string>;
@@ -66,6 +65,11 @@ export declare class DropDownListWithoutContext extends React.Component<DropDown
66
65
  delay: PropTypes.Requireable<number>;
67
66
  ignoreCase: PropTypes.Requireable<boolean>;
68
67
  iconClassName: PropTypes.Requireable<string>;
68
+ svgIcon: PropTypes.Requireable<PropTypes.InferProps<{
69
+ name: PropTypes.Validator<string>;
70
+ content: PropTypes.Validator<string>;
71
+ viewBox: PropTypes.Validator<string>;
72
+ }>>;
69
73
  defaultItem: PropTypes.Requireable<any>;
70
74
  valueRender: PropTypes.Requireable<(...args: any[]) => any>;
71
75
  valueMap: PropTypes.Requireable<(...args: any[]) => any>;
@@ -26,8 +26,9 @@ var __assign = (this && this.__assign) || function () {
26
26
  };
27
27
  import * as React from 'react';
28
28
  import * as PropTypes from 'prop-types';
29
- import { classNames, Keys, getTabIndex, createPropsContext, withPropsContext, kendoThemeMaps } from '@progress/kendo-react-common';
29
+ import { classNames, Keys, getTabIndex, createPropsContext, withPropsContext, kendoThemeMaps, IconWrap, svgIconPropType } from '@progress/kendo-react-common';
30
30
  import { FloatingLabel } from '@progress/kendo-react-labels';
31
+ import { caretAltDownIcon } from '@progress/kendo-svg-icons';
31
32
  import ListContainer from '../common/ListContainer';
32
33
  import ListFilter from '../common/ListFilter';
33
34
  import ListDefaultItem from '../common/ListDefaultItem';
@@ -99,7 +100,7 @@ var DropDownListWithoutContext = /** @class */ (function (_super) {
99
100
  dir: dir !== undefined ? dir : base.dirCalculated,
100
101
  width: popupWidth,
101
102
  popupSettings: {
102
- popupClass: classNames(popupSettings.popupClass, 'k-list-container'),
103
+ popupClass: classNames(popupSettings.popupClass, 'k-list-container', 'k-dropdownlist-popup'),
103
104
  className: popupSettings.className,
104
105
  animate: popupSettings.animate,
105
106
  anchor: _this.element,
@@ -520,8 +521,8 @@ var DropDownListWithoutContext = /** @class */ (function (_super) {
520
521
  ? style
521
522
  : __assign(__assign({}, style), { width: undefined }), dir: dir, onMouseDown: opened ? preventDefaultNonInputs : undefined, onFocus: this.handleFocus, onBlur: this.handleBlur, tabIndex: getTabIndex(tabIndex, disabled), accessKey: this.props.accessKey, onKeyDown: this.handleKeyDown, onKeyPress: this.handleKeyPress, onClick: disabled ? undefined : this.handleWrapperClick, role: 'combobox', "aria-required": this.required, "aria-disabled": disabled || undefined, "aria-haspopup": 'listbox', "aria-expanded": opened || false, "aria-owns": this.base.listBoxId, "aria-activedescendant": opened ? ('option-' + this.base.guid + '-' + (selectedIndex + (virtual ? virtual.skip : 0))) : undefined, "aria-label": this.props.ariaLabel || this.props.label, "aria-labelledby": this.props.ariaLabelledBy, "aria-describedby": this.props.ariaDescribedBy, id: this.props.id, title: this.props.title },
522
523
  valueElement,
523
- loading && React.createElement("span", { className: "k-icon k-i-loading k-input-loading-icon", key: "loading" }),
524
- React.createElement(Button, { tabIndex: -1, type: "button", "aria-hidden": true, size: size, fillMode: fillMode, iconClass: iconClassName, className: "k-input-button", themeColor: 'base', icon: !iconClassName ? 'caret-alt-down' : undefined, onMouseDown: function (e) { return _this.state.focused && e.preventDefault(); } }),
524
+ loading && React.createElement(IconWrap, { className: "k-input-loading-icon", name: 'loading' }),
525
+ React.createElement(Button, { tabIndex: -1, type: "button", "aria-hidden": true, size: size, fillMode: fillMode, iconClass: iconClassName, className: "k-input-button", themeColor: 'base', icon: !iconClassName ? 'caret-alt-down' : undefined, svgIcon: !iconClassName ? caretAltDownIcon : this.props.svgIcon, onMouseDown: function (e) { return _this.state.focused && e.preventDefault(); } }),
525
526
  this.dummySelect(value),
526
527
  this.renderListContainer()));
527
528
  return label ? (React.createElement(FloatingLabel, { label: label, editorValue: text, editorValid: isValid, editorDisabled: this.props.disabled, style: { width: style ? style.width : undefined }, children: dropdownlist })) : dropdownlist;
@@ -583,7 +584,7 @@ var DropDownListWithoutContext = /** @class */ (function (_super) {
583
584
  /**
584
585
  * @hidden
585
586
  */
586
- DropDownListWithoutContext.propTypes = __assign({ delay: PropTypes.number, ignoreCase: PropTypes.bool, iconClassName: PropTypes.string, defaultItem: PropTypes.any, valueRender: PropTypes.func, valueMap: PropTypes.func, validationMessage: PropTypes.string, required: PropTypes.bool, id: PropTypes.string, ariaLabelledBy: PropTypes.string, ariaDescribedBy: PropTypes.string, ariaLabel: PropTypes.string, leftRightKeysNavigation: PropTypes.bool, title: PropTypes.string }, DropDownBase.propTypes);
587
+ DropDownListWithoutContext.propTypes = __assign({ delay: PropTypes.number, ignoreCase: PropTypes.bool, iconClassName: PropTypes.string, svgIcon: svgIconPropType, defaultItem: PropTypes.any, valueRender: PropTypes.func, valueMap: PropTypes.func, validationMessage: PropTypes.string, required: PropTypes.bool, id: PropTypes.string, ariaLabelledBy: PropTypes.string, ariaDescribedBy: PropTypes.string, ariaLabel: PropTypes.string, leftRightKeysNavigation: PropTypes.bool, title: PropTypes.string }, DropDownBase.propTypes);
587
588
  /**
588
589
  * @hidden
589
590
  */
@@ -3,7 +3,7 @@ import { DropDownList } from './DropDownList';
3
3
  import { FilterChangeEvent, ChangeEvent, OpenEvent, CloseEvent, FocusEvent, BlurEvent, PageChangeEvent } from './../common/events';
4
4
  import { VirtualizationSettings, DropDownsPopupSettings } from '../common/settings';
5
5
  import { ListItemProps } from '../common/ListItem';
6
- import { FormComponentProps } from '@progress/kendo-react-common';
6
+ import { FormComponentProps, SVGIcon } from '@progress/kendo-react-common';
7
7
  /**
8
8
  * Represents the object of the `filterChange` DropDownList event.
9
9
  */
@@ -83,6 +83,10 @@ export interface DropDownListProps extends FormComponentProps {
83
83
  * Sets CSS classes to the expand `icon` DOM element.
84
84
  */
85
85
  iconClassName?: string;
86
+ /**
87
+ * Sets the specified SVG icon.
88
+ */
89
+ svgIcon?: SVGIcon;
86
90
  /**
87
91
  * Sets the title attribute to the DropDownList DOM element.
88
92
  */
@@ -20,7 +20,7 @@ var __spreadArray = (this && this.__spreadArray) || function (to, from, pack) {
20
20
  };
21
21
  import * as React from 'react';
22
22
  import * as PropTypes from 'prop-types';
23
- import { classNames, noop, useRtl, getTabIndex, Keys, mapTree, extendDataItem, guid, createPropsContext, kendoThemeMaps, usePropsContext } from '@progress/kendo-react-common';
23
+ import { classNames, noop, useRtl, getTabIndex, Keys, mapTree, extendDataItem, guid, createPropsContext, kendoThemeMaps, usePropsContext, IconWrap } from '@progress/kendo-react-common';
24
24
  import { Popup } from '@progress/kendo-react-popup';
25
25
  import { useLocalization } from '@progress/kendo-react-intl';
26
26
  import { TreeView } from '@progress/kendo-react-treeview';
@@ -33,6 +33,7 @@ import { messages, clear, nodata } from './../messages';
33
33
  import { FloatingLabel } from '@progress/kendo-react-labels';
34
34
  import ListFilter from '../common/ListFilter';
35
35
  import { Button } from '@progress/kendo-react-buttons';
36
+ import { xIcon, caretAltDownIcon } from '@progress/kendo-svg-icons';
36
37
  var sizeMap = kendoThemeMaps.sizeMap, roundedMap = kendoThemeMaps.roundedMap;
37
38
  var VALIDATION_MESSAGE = 'Please select a value from the list!';
38
39
  var ValueHolder = function (props) {
@@ -354,13 +355,13 @@ export var DropDownTree = React.forwardRef(function (directProps, ref) {
354
355
  _a)), tabIndex: tabIndex, accessKey: props.accessKey, id: id, style: label ? __assign(__assign({}, style), { width: undefined }) : style, dir: dir, ref: elementRef, onKeyDown: disabled ? undefined : onWrapperKeyDown, onMouseDown: onWrapperMouseDown, onClick: disabled ? undefined : onWrapperClick, onFocus: onFocus, onBlur: onBlur, role: "combobox", "aria-haspopup": "tree", "aria-expanded": isOpen, "aria-disabled": disabled, "aria-label": label, "aria-labelledby": props.ariaLabelledBy, "aria-describedby": props.ariaDescribedBy },
355
356
  React.createElement("span", { className: "k-input-inner" },
356
357
  React.createElement(ValueComponent, { item: value }, currentValueText || placeholder)),
357
- props.loading && React.createElement("span", { className: "k-icon k-i-loading k-input-loading-icon" }),
358
+ props.loading && React.createElement(IconWrap, { className: "k-input-loading-icon", name: 'loading' }),
358
359
  hasValue && !disabled && (React.createElement("span", { onClick: onClear, className: "k-clear-value", title: localization.toLanguageString(clear, messages[clear]), role: "button", tabIndex: -1, onMouseDown: function (e) { return e.preventDefault(); } },
359
- React.createElement("span", { className: "k-icon k-i-x" }))),
360
- React.createElement(Button, { tabIndex: -1, type: "button", "aria-label": "select", className: "k-input-button", size: size, fillMode: fillMode, themeColor: "base", rounded: null, icon: "caret-alt-down" }),
360
+ React.createElement(IconWrap, { name: 'x', icon: xIcon }))),
361
+ React.createElement(Button, { tabIndex: -1, type: "button", "aria-label": "select", className: "k-input-button", size: size, fillMode: fillMode, themeColor: "base", rounded: null, icon: "caret-alt-down", svgIcon: caretAltDownIcon }),
361
362
  React.createElement("select", { name: name, ref: selectRef, tabIndex: -1, "aria-hidden": true, title: label, style: { opacity: 0, width: 1, border: 0, zIndex: -1, position: 'absolute', left: '50%' } },
362
363
  React.createElement("option", { value: props.valueMap ? props.valueMap.call(undefined, value) : value })),
363
- React.createElement(Popup, { className: classNames(popupSettings.className, { 'k-rtl': dir === 'rtl' }), popupClass: classNames(popupSettings.popupClass, 'k-list-container'), style: popupStyles, animate: popupSettings.animate, anchor: elementRef.current, show: isOpen, onOpen: onPopupOpened, onClose: onPopupClosed, appendTo: popupSettings.appendTo },
364
+ React.createElement(Popup, { className: classNames(popupSettings.className, { 'k-rtl': dir === 'rtl' }), popupClass: classNames(popupSettings.popupClass, 'k-list-container', 'k-dropdowntree-popup'), style: popupStyles, animate: popupSettings.animate, anchor: elementRef.current, show: isOpen, onOpen: onPopupOpened, onClose: onPopupClosed, appendTo: popupSettings.appendTo },
364
365
  props.filterable && (React.createElement(ListFilter, { value: props.filter === undefined ? filter : props.filter, inputRef: inputRef, onChange: onFilterChange, onKeyDown: onInputKeyDown, size: size, rounded: rounded, fillMode: fillMode })),
365
366
  data.length > 0 ? (React.createElement(TreeView, { ref: treeViewRef, tabIndex: tabIndex, data: treeViewData, focusIdField: dataItemKey, textField: props.textField, selectField: selectField, expandField: props.expandField, childrenField: subItemsField, expandIcons: true, onItemClick: onChange, onExpandChange: onExpand, size: size, item: props.item })) : (React.createElement(NoData, null, localization.toLanguageString(nodata, messages[nodata]))))));
366
367
  return label ? (React.createElement(FloatingLabel, { label: label, editorValue: currentValueText, editorPlaceholder: placeholder, editorValid: isValid, editorDisabled: disabled, editorId: id, style: { width: style ? style.width : undefined }, children: dropdowntree, dir: dir })) : dropdowntree;
@@ -35,7 +35,8 @@ var __spreadArray = (this && this.__spreadArray) || function (to, from, pack) {
35
35
  };
36
36
  import * as React from 'react';
37
37
  import * as PropTypes from 'prop-types';
38
- import { classNames, Keys, guid, createPropsContext, kendoThemeMaps, withPropsContext } from '@progress/kendo-react-common';
38
+ import { classNames, Keys, guid, createPropsContext, kendoThemeMaps, withPropsContext, IconWrap } from '@progress/kendo-react-common';
39
+ import { plusIcon } from '@progress/kendo-svg-icons';
39
40
  import { FloatingLabel } from '@progress/kendo-react-labels';
40
41
  import ListContainer from '../common/ListContainer';
41
42
  import List from '../common/List';
@@ -258,7 +259,7 @@ var MultiSelectWithoutContext = /** @class */ (function (_super) {
258
259
  dir: dir !== undefined ? dir : base.dirCalculated,
259
260
  width: popupWidth,
260
261
  popupSettings: {
261
- popupClass: classNames(popupSettings.popupClass, 'k-list-container'),
262
+ popupClass: classNames(popupSettings.popupClass, 'k-list-container', 'k-multiselect-popup'),
262
263
  className: popupSettings.className,
263
264
  animate: popupSettings.animate,
264
265
  anchor: _this.element,
@@ -275,7 +276,7 @@ var MultiSelectWithoutContext = /** @class */ (function (_super) {
275
276
  _a)), key: "customitem", onClick: _this.customItemSelect, onMouseDown: preventDefault },
276
277
  React.createElement("div", { className: classNames('k-list-item k-custom-item', { 'k-focus': isCustom(focusedType) }), style: { fontStyle: 'italic' } },
277
278
  text,
278
- React.createElement("span", { className: "k-icon k-i-plus", style: { position: 'absolute', right: '0.5em' } }))));
279
+ React.createElement(IconWrap, { name: 'plus', icon: plusIcon, style: { position: 'absolute', right: '0.5em' } }))));
279
280
  return (React.createElement(ListContainer, __assign({}, listContainerProps),
280
281
  header && React.createElement("div", { className: "k-list-header" }, header),
281
282
  customItem,
@@ -584,12 +585,12 @@ var MultiSelectWithoutContext = /** @class */ (function (_super) {
584
585
  _a)), style: !label
585
586
  ? style
586
587
  : __assign(__assign({}, style), { width: undefined }), dir: dir, onFocus: this.handleFocus, onBlur: this.handleBlur, onClick: this.handleWrapperClick, onMouseDown: preventDefaultNonInputs },
587
- React.createElement("div", { className: classNames('k-input-values k-chip-list k-selection-multiple', (_b = {},
588
- _b["k-chip-list-".concat(sizeMap[size] || size)] = size,
589
- _b)), role: "listbox", id: 'tagslist-' + this.base.guid },
590
- tagsToRender.length > 0 && React.createElement(TagList, { tagRender: this.props.tagRender, onTagDelete: this.onTagDelete, data: tagsToRender, guid: this.base.guid, focused: focusedTag ? tagsToRender.find(function (t) { return matchTags(t, focusedTag, dataItemKey); }) : undefined, size: size }),
588
+ React.createElement("div", { className: classNames('k-input-values') },
589
+ React.createElement("div", { className: classNames('k-chip-list', (_b = {},
590
+ _b["k-chip-list-".concat(sizeMap[size] || size)] = size,
591
+ _b)), role: "listbox", id: 'tagslist-' + this.base.guid }, tagsToRender.length > 0 && React.createElement(TagList, { tagRender: this.props.tagRender, onTagDelete: this.onTagDelete, data: tagsToRender, guid: this.base.guid, focused: focusedTag ? tagsToRender.find(function (t) { return matchTags(t, focusedTag, dataItemKey); }) : undefined, size: size })),
591
592
  this.renderSearchbar(id)),
592
- loading && React.createElement("span", { className: "k-icon k-i-loading k-input-loading-icon" }),
593
+ loading && React.createElement(IconWrap, { className: "k-input-loading-icon", name: 'loading' }),
593
594
  clearButton && React.createElement(ClearButton, { onClick: this.clearButtonClick }),
594
595
  this.renderListContainer()));
595
596
  return label ? (React.createElement(FloatingLabel, { label: label, editorId: id, editorValue: text || getItemValue(this.value[0], textField), editorValid: isValid, editorDisabled: disabled, style: { width: style ? style.width : undefined }, children: component })) : component;
@@ -20,7 +20,7 @@ var __spreadArray = (this && this.__spreadArray) || function (to, from, pack) {
20
20
  };
21
21
  import * as React from 'react';
22
22
  import * as PropTypes from 'prop-types';
23
- import { classNames, noop, useRtl, getTabIndex, Keys, guid, kendoThemeMaps, createPropsContext, usePropsContext } from '@progress/kendo-react-common';
23
+ import { classNames, noop, useRtl, getTabIndex, Keys, guid, kendoThemeMaps, createPropsContext, usePropsContext, IconWrap } from '@progress/kendo-react-common';
24
24
  import { Popup } from '@progress/kendo-react-popup';
25
25
  import { useLocalization } from '@progress/kendo-react-intl';
26
26
  import { TreeView } from '@progress/kendo-react-treeview';
@@ -405,11 +405,11 @@ export var MultiSelectTree = React.forwardRef(function (directProps, ref) {
405
405
  React.createElement(TagList, { tag: props.tag, onTagDelete: onTagDelete, data: tagsToRenderRef.current, guid: id, focused: focusedTagState ? tagsToRenderRef.current.find(function (t) { return matchTags(t, focusedTagState, dataItemKey); }) : undefined, size: size }))),
406
406
  !hasValue && React.createElement("span", { className: "k-input-inner" },
407
407
  React.createElement("span", { className: "k-input-value-text" }, "\u00A0")),
408
- props.loading && React.createElement("span", { className: "k-icon k-i-loading k-input-loading-icon" }),
408
+ props.loading && React.createElement(IconWrap, { className: "k-input-loading-icon", name: 'loading' }),
409
409
  hasValue && !disabled && React.createElement(ClearButton, { onClick: onClear }),
410
410
  React.createElement("select", { name: name, ref: selectRef, tabIndex: -1, "aria-hidden": true, title: label, style: { opacity: 0, width: 1, border: 0, zIndex: -1, position: 'absolute', left: '50%' } },
411
411
  React.createElement("option", { value: props.valueMap ? props.valueMap.call(undefined, value) : value })),
412
- React.createElement(Popup, { popupClass: classNames(popupSettings.popupClass, 'k-list-container'), className: classNames(popupSettings.className, { 'k-rtl': dir === 'rtl' }), style: popupStyles, animate: popupSettings.animate, anchor: elementRef.current, show: isOpen, onOpen: onPopupOpened, onClose: onPopupClosed, appendTo: popupSettings.appendTo, ref: popupRef },
412
+ React.createElement(Popup, { popupClass: classNames(popupSettings.popupClass, 'k-list-container', 'k-multiselecttree-popup'), className: classNames(popupSettings.className, { 'k-rtl': dir === 'rtl' }), style: popupStyles, animate: popupSettings.animate, anchor: elementRef.current, show: isOpen, onOpen: onPopupOpened, onClose: onPopupClosed, appendTo: popupSettings.appendTo, ref: popupRef },
413
413
  props.filterable && (React.createElement(ListFilter, { value: props.filter === undefined ? filterState : props.filter, inputRef: inputRef, onChange: onFilterChange, onKeyDown: onInputKeyDown, tabIndex: tabIndex, size: size, rounded: rounded, fillMode: fillMode })),
414
414
  data.length > 0 ? (React.createElement(TreeView, { ref: treeViewRef, tabIndex: tabIndex, data: data, focusIdField: dataItemKey, textField: props.textField, checkField: checkField, checkIndeterminateField: checkIndeterminateField, expandField: props.expandField, childrenField: subItemsField, expandIcons: true, onItemClick: onChange, onCheckChange: onChange, onExpandChange: onExpand, checkboxes: true, size: size, item: props.item })) : (React.createElement(NoData, null, localization.toLanguageString(nodata, messages[nodata]))))));
415
415
  return label ? (React.createElement(FloatingLabel, { label: label, editorValue: hasValue, editorPlaceholder: placeholder, editorValid: isValid, editorDisabled: disabled, editorId: id, style: { width: style ? style.width : undefined }, children: multiselecttree, dir: dir })) : multiselecttree;
@@ -16,6 +16,8 @@ var __extends = (this && this.__extends) || (function () {
16
16
  import * as React from 'react';
17
17
  import { registerForLocalization, provideLocalizationService } from '@progress/kendo-react-intl';
18
18
  import { messages, clear } from '../messages';
19
+ import { IconWrap } from '@progress/kendo-react-common';
20
+ import { xIcon } from '@progress/kendo-svg-icons';
19
21
  /**
20
22
  * @hidden
21
23
  */
@@ -29,7 +31,7 @@ var ClearButton = /** @class */ (function (_super) {
29
31
  ClearButton.prototype.render = function () {
30
32
  var title = provideLocalizationService(this).toLanguageString(clear, messages[clear]);
31
33
  return (React.createElement("span", { className: "k-clear-value", role: "button", onClick: this.props.onClick, onMouseDown: this.onMouseDown, tabIndex: -1, title: title, key: "clearbutton" },
32
- React.createElement("span", { className: "k-icon k-i-x" })));
34
+ React.createElement(IconWrap, { name: 'x', icon: xIcon })));
33
35
  };
34
36
  return ClearButton;
35
37
  }(React.Component));
@@ -14,7 +14,8 @@ var __extends = (this && this.__extends) || (function () {
14
14
  };
15
15
  })();
16
16
  import * as React from 'react';
17
- import { kendoThemeMaps, classNames } from '@progress/kendo-react-common';
17
+ import { searchIcon } from '@progress/kendo-svg-icons';
18
+ import { kendoThemeMaps, classNames, IconWrap } from '@progress/kendo-react-common';
18
19
  var sizeMap = kendoThemeMaps.sizeMap, roundedMap = kendoThemeMaps.roundedMap;
19
20
  /**
20
21
  * @hidden
@@ -36,7 +37,7 @@ var ListFilter = /** @class */ (function (_super) {
36
37
  _a["k-rounded-".concat(roundedMap[rounded] || rounded)] = rounded,
37
38
  _a["k-input-".concat(fillMode)] = fillMode,
38
39
  _a)) },
39
- React.createElement("span", { className: "k-input-icon k-icon k-i-search" }),
40
+ React.createElement(IconWrap, { className: "k-input-icon", name: 'search', icon: searchIcon }),
40
41
  React.createElement("input", { ref: inputRef ? inputRef : function (input) { return _this.input = input; }, value: this.props.value || '', className: "k-input-inner", onChange: this.props.onChange, onKeyDown: this.props.onKeyDown, tabIndex: this.props.tabIndex, onClick: function (e) { return e.stopPropagation(); } }))));
41
42
  };
42
43
  return ListFilter;
@@ -5,7 +5,7 @@ export var packageMetadata = {
5
5
  name: '@progress/kendo-react-dropdowns',
6
6
  productName: 'KendoReact',
7
7
  productCodes: ['KENDOUIREACT', 'KENDOUICOMPLETE'],
8
- publishDate: 1673259072,
8
+ publishDate: 1673444656,
9
9
  version: '',
10
10
  licensingDocsUrl: 'https://www.telerik.com/kendo-react-ui/my-license/?utm_medium=product&utm_source=kendoreact&utm_campaign=kendo-ui-react-purchase-license-keys-warning'
11
11
  };
@@ -322,7 +322,7 @@ var AutoCompleteWithoutContext = /** @class */ (function (_super) {
322
322
  ? style
323
323
  : __assign(__assign({}, style), { width: undefined }), dir: dir },
324
324
  this.renderSearchBar(value || '', id),
325
- loading && React.createElement("span", { className: "k-icon k-i-loading k-input-loading-icon" }),
325
+ loading && React.createElement(kendo_react_common_1.IconWrap, { className: "k-input-loading-icon", name: 'loading' }),
326
326
  renderClearButton && !loading && React.createElement(ClearButton_1.default, { onClick: this.clearButtonClick, key: "clearbutton" }),
327
327
  this.renderListContainer()));
328
328
  return label
@@ -386,7 +386,7 @@ var AutoCompleteWithoutContext = /** @class */ (function (_super) {
386
386
  animate: popupSettings.animate,
387
387
  anchor: this.element,
388
388
  show: opened,
389
- popupClass: (0, kendo_react_common_1.classNames)(popupSettings.popupClass, 'k-list-container'),
389
+ popupClass: (0, kendo_react_common_1.classNames)(popupSettings.popupClass, 'k-list-container', 'k-autocomplete-popup'),
390
390
  className: popupSettings.className,
391
391
  appendTo: popupSettings.appendTo
392
392
  }, dir: dir !== undefined ? dir : this.base.dirCalculated, itemsCount: [data.length] },
@@ -34,6 +34,11 @@ export declare class ComboBoxWithoutContext extends React.Component<ComboBoxProp
34
34
  allowCustom: PropTypes.Requireable<boolean>;
35
35
  clearButton: PropTypes.Requireable<boolean>;
36
36
  iconClassName: PropTypes.Requireable<string>;
37
+ svgIcon: PropTypes.Requireable<PropTypes.InferProps<{
38
+ name: PropTypes.Validator<string>;
39
+ content: PropTypes.Validator<string>;
40
+ viewBox: PropTypes.Validator<string>;
41
+ }>>;
37
42
  validationMessage: PropTypes.Requireable<string>;
38
43
  required: PropTypes.Requireable<boolean>;
39
44
  id: PropTypes.Requireable<string>;
@@ -40,6 +40,7 @@ var kendo_react_common_2 = require("@progress/kendo-react-common");
40
40
  var package_metadata_1 = require("../package-metadata");
41
41
  var ClearButton_1 = require("../common/ClearButton");
42
42
  var kendo_react_buttons_1 = require("@progress/kendo-react-buttons");
43
+ var kendo_svg_icons_1 = require("@progress/kendo-svg-icons");
43
44
  var VALIDATION_MESSAGE = 'Please enter a valid value!';
44
45
  var sizeMap = kendo_react_common_1.kendoThemeMaps.sizeMap, roundedMap = kendo_react_common_1.kendoThemeMaps.roundedMap;
45
46
  /** @hidden */
@@ -393,7 +394,7 @@ var ComboBoxWithoutContext = /** @class */ (function (_super) {
393
394
  this.renderSearchBar(inputText || '', id),
394
395
  renderClearButton && !loading && React.createElement(ClearButton_1.default, { onClick: this.clearButtonClick, key: "clearbutton" }),
395
396
  loading && React.createElement("span", { className: "k-icon k-i-loading k-input-loading-icon", key: "loading" }),
396
- React.createElement(kendo_react_buttons_1.Button, { tabIndex: -1, type: "button", icon: !iconClassName ? 'caret-alt-down' : undefined, iconClass: iconClassName, size: size, fillMode: fillMode, rounded: null, themeColor: 'base', className: "k-input-button", onClick: this.toggleBtnClick, onMouseDown: function (e) { return e.preventDefault(); } }),
397
+ React.createElement(kendo_react_buttons_1.Button, { tabIndex: -1, type: "button", icon: !iconClassName ? 'caret-alt-down' : undefined, svgIcon: !iconClassName ? kendo_svg_icons_1.caretAltDownIcon : this.props.svgIcon, iconClass: iconClassName, size: size, fillMode: fillMode, rounded: null, themeColor: 'base', className: "k-input-button", onClick: this.toggleBtnClick, onMouseDown: function (e) { return e.preventDefault(); } }),
397
398
  this.renderListContainer()));
398
399
  return label
399
400
  ? (React.createElement(kendo_react_labels_1.FloatingLabel, { label: label, editorId: id, editorValue: inputText, editorValid: isValid, editorDisabled: disabled, style: { width: style ? style.width : undefined }, children: combobox }))
@@ -524,7 +525,7 @@ var ComboBoxWithoutContext = /** @class */ (function (_super) {
524
525
  animate: popupSettings.animate,
525
526
  anchor: this.element,
526
527
  show: opened,
527
- popupClass: (0, kendo_react_common_1.classNames)(popupSettings.popupClass, 'k-list-container'),
528
+ popupClass: (0, kendo_react_common_1.classNames)(popupSettings.popupClass, 'k-list-container', 'k-combobox-popup'),
528
529
  className: popupSettings.className,
529
530
  appendTo: popupSettings.appendTo
530
531
  }, dir: dir !== undefined ? dir : this.base.dirCalculated, itemsCount: [data.length] },
@@ -607,7 +608,7 @@ var ComboBoxWithoutContext = /** @class */ (function (_super) {
607
608
  /**
608
609
  * @hidden
609
610
  */
610
- ComboBoxWithoutContext.propTypes = __assign(__assign({}, DropDownBase_1.default.propTypes), { size: PropTypes.oneOf([null, 'small', 'medium', 'large']), rounded: PropTypes.oneOf([null, 'small', 'medium', 'large', 'full']), fillMode: PropTypes.oneOf([null, 'solid', 'flat', 'outline']), dataItemKey: PropTypes.string, groupField: PropTypes.string, suggest: PropTypes.bool, placeholder: PropTypes.string, allowCustom: PropTypes.bool, clearButton: PropTypes.bool, iconClassName: PropTypes.string, validationMessage: PropTypes.string, required: PropTypes.bool, id: PropTypes.string, ariaLabelledBy: PropTypes.string, ariaDescribedBy: PropTypes.string, list: PropTypes.any, valueRender: PropTypes.func });
611
+ ComboBoxWithoutContext.propTypes = __assign(__assign({}, DropDownBase_1.default.propTypes), { size: PropTypes.oneOf([null, 'small', 'medium', 'large']), rounded: PropTypes.oneOf([null, 'small', 'medium', 'large', 'full']), fillMode: PropTypes.oneOf([null, 'solid', 'flat', 'outline']), dataItemKey: PropTypes.string, groupField: PropTypes.string, suggest: PropTypes.bool, placeholder: PropTypes.string, allowCustom: PropTypes.bool, clearButton: PropTypes.bool, iconClassName: PropTypes.string, svgIcon: kendo_react_common_1.svgIconPropType, validationMessage: PropTypes.string, required: PropTypes.bool, id: PropTypes.string, ariaLabelledBy: PropTypes.string, ariaDescribedBy: PropTypes.string, list: PropTypes.any, valueRender: PropTypes.func });
611
612
  /**
612
613
  * @hidden
613
614
  */
@@ -1,7 +1,7 @@
1
1
  /// <reference types="react" />
2
2
  import { ComboBox } from './ComboBox';
3
3
  import { FilterChangeEvent, ChangeEvent, OpenEvent, CloseEvent, FocusEvent, BlurEvent, PageChangeEvent } from './../common/events';
4
- import { FormComponentProps } from '@progress/kendo-react-common';
4
+ import { FormComponentProps, SVGIcon } from '@progress/kendo-react-common';
5
5
  import { VirtualizationSettings, DropDownsPopupSettings } from '../common/settings';
6
6
  import { ListItemProps } from '../common/ListItem';
7
7
  /**
@@ -71,6 +71,10 @@ export interface ComboBoxProps extends FormComponentProps {
71
71
  * Sets CSS classes to the expand `icon` DOM element.
72
72
  */
73
73
  iconClassName?: string;
74
+ /**
75
+ * Sets the specified SVG icon.
76
+ */
77
+ svgIcon?: SVGIcon;
74
78
  /**
75
79
  * If `clearButton` is set to `true`, the ComboBox renders a button on hovering over the component. Clicking this button resets the value of the ComboBox to `undefined` and triggers the `change` event.
76
80
  */
@@ -25,13 +25,12 @@ export declare class DropDownListWithoutContext extends React.Component<DropDown
25
25
  virtual: PropTypes.Requireable<PropTypes.InferProps<{
26
26
  pageSize: PropTypes.Validator<number>;
27
27
  skip: PropTypes.Validator<number>;
28
- /**
29
- * @hidden
30
- */
31
28
  total: PropTypes.Validator<number>;
32
29
  }>>;
33
30
  onFilterChange: PropTypes.Requireable<(...args: any[]) => any>;
34
- onPageChange: PropTypes.Requireable<(...args: any[]) => any>;
31
+ onPageChange: PropTypes.Requireable<(...args: any[]) => any>; /**
32
+ * @hidden
33
+ */
35
34
  opened: PropTypes.Requireable<boolean>;
36
35
  disabled: PropTypes.Requireable<boolean>;
37
36
  dir: PropTypes.Requireable<string>;
@@ -66,6 +65,11 @@ export declare class DropDownListWithoutContext extends React.Component<DropDown
66
65
  delay: PropTypes.Requireable<number>;
67
66
  ignoreCase: PropTypes.Requireable<boolean>;
68
67
  iconClassName: PropTypes.Requireable<string>;
68
+ svgIcon: PropTypes.Requireable<PropTypes.InferProps<{
69
+ name: PropTypes.Validator<string>;
70
+ content: PropTypes.Validator<string>;
71
+ viewBox: PropTypes.Validator<string>;
72
+ }>>;
69
73
  defaultItem: PropTypes.Requireable<any>;
70
74
  valueRender: PropTypes.Requireable<(...args: any[]) => any>;
71
75
  valueMap: PropTypes.Requireable<(...args: any[]) => any>;
@@ -31,6 +31,7 @@ var React = require("react");
31
31
  var PropTypes = require("prop-types");
32
32
  var kendo_react_common_1 = require("@progress/kendo-react-common");
33
33
  var kendo_react_labels_1 = require("@progress/kendo-react-labels");
34
+ var kendo_svg_icons_1 = require("@progress/kendo-svg-icons");
34
35
  var ListContainer_1 = require("../common/ListContainer");
35
36
  var ListFilter_1 = require("../common/ListFilter");
36
37
  var ListDefaultItem_1 = require("../common/ListDefaultItem");
@@ -102,7 +103,7 @@ var DropDownListWithoutContext = /** @class */ (function (_super) {
102
103
  dir: dir !== undefined ? dir : base.dirCalculated,
103
104
  width: popupWidth,
104
105
  popupSettings: {
105
- popupClass: (0, kendo_react_common_1.classNames)(popupSettings.popupClass, 'k-list-container'),
106
+ popupClass: (0, kendo_react_common_1.classNames)(popupSettings.popupClass, 'k-list-container', 'k-dropdownlist-popup'),
106
107
  className: popupSettings.className,
107
108
  animate: popupSettings.animate,
108
109
  anchor: _this.element,
@@ -523,8 +524,8 @@ var DropDownListWithoutContext = /** @class */ (function (_super) {
523
524
  ? style
524
525
  : __assign(__assign({}, style), { width: undefined }), dir: dir, onMouseDown: opened ? utils_1.preventDefaultNonInputs : undefined, onFocus: this.handleFocus, onBlur: this.handleBlur, tabIndex: (0, kendo_react_common_1.getTabIndex)(tabIndex, disabled), accessKey: this.props.accessKey, onKeyDown: this.handleKeyDown, onKeyPress: this.handleKeyPress, onClick: disabled ? undefined : this.handleWrapperClick, role: 'combobox', "aria-required": this.required, "aria-disabled": disabled || undefined, "aria-haspopup": 'listbox', "aria-expanded": opened || false, "aria-owns": this.base.listBoxId, "aria-activedescendant": opened ? ('option-' + this.base.guid + '-' + (selectedIndex + (virtual ? virtual.skip : 0))) : undefined, "aria-label": this.props.ariaLabel || this.props.label, "aria-labelledby": this.props.ariaLabelledBy, "aria-describedby": this.props.ariaDescribedBy, id: this.props.id, title: this.props.title },
525
526
  valueElement,
526
- loading && React.createElement("span", { className: "k-icon k-i-loading k-input-loading-icon", key: "loading" }),
527
- React.createElement(kendo_react_buttons_1.Button, { tabIndex: -1, type: "button", "aria-hidden": true, size: size, fillMode: fillMode, iconClass: iconClassName, className: "k-input-button", themeColor: 'base', icon: !iconClassName ? 'caret-alt-down' : undefined, onMouseDown: function (e) { return _this.state.focused && e.preventDefault(); } }),
527
+ loading && React.createElement(kendo_react_common_1.IconWrap, { className: "k-input-loading-icon", name: 'loading' }),
528
+ React.createElement(kendo_react_buttons_1.Button, { tabIndex: -1, type: "button", "aria-hidden": true, size: size, fillMode: fillMode, iconClass: iconClassName, className: "k-input-button", themeColor: 'base', icon: !iconClassName ? 'caret-alt-down' : undefined, svgIcon: !iconClassName ? kendo_svg_icons_1.caretAltDownIcon : this.props.svgIcon, onMouseDown: function (e) { return _this.state.focused && e.preventDefault(); } }),
528
529
  this.dummySelect(value),
529
530
  this.renderListContainer()));
530
531
  return label ? (React.createElement(kendo_react_labels_1.FloatingLabel, { label: label, editorValue: text, editorValid: isValid, editorDisabled: this.props.disabled, style: { width: style ? style.width : undefined }, children: dropdownlist })) : dropdownlist;
@@ -586,7 +587,7 @@ var DropDownListWithoutContext = /** @class */ (function (_super) {
586
587
  /**
587
588
  * @hidden
588
589
  */
589
- DropDownListWithoutContext.propTypes = __assign({ delay: PropTypes.number, ignoreCase: PropTypes.bool, iconClassName: PropTypes.string, defaultItem: PropTypes.any, valueRender: PropTypes.func, valueMap: PropTypes.func, validationMessage: PropTypes.string, required: PropTypes.bool, id: PropTypes.string, ariaLabelledBy: PropTypes.string, ariaDescribedBy: PropTypes.string, ariaLabel: PropTypes.string, leftRightKeysNavigation: PropTypes.bool, title: PropTypes.string }, DropDownBase_1.default.propTypes);
590
+ DropDownListWithoutContext.propTypes = __assign({ delay: PropTypes.number, ignoreCase: PropTypes.bool, iconClassName: PropTypes.string, svgIcon: kendo_react_common_1.svgIconPropType, defaultItem: PropTypes.any, valueRender: PropTypes.func, valueMap: PropTypes.func, validationMessage: PropTypes.string, required: PropTypes.bool, id: PropTypes.string, ariaLabelledBy: PropTypes.string, ariaDescribedBy: PropTypes.string, ariaLabel: PropTypes.string, leftRightKeysNavigation: PropTypes.bool, title: PropTypes.string }, DropDownBase_1.default.propTypes);
590
591
  /**
591
592
  * @hidden
592
593
  */
@@ -3,7 +3,7 @@ import { DropDownList } from './DropDownList';
3
3
  import { FilterChangeEvent, ChangeEvent, OpenEvent, CloseEvent, FocusEvent, BlurEvent, PageChangeEvent } from './../common/events';
4
4
  import { VirtualizationSettings, DropDownsPopupSettings } from '../common/settings';
5
5
  import { ListItemProps } from '../common/ListItem';
6
- import { FormComponentProps } from '@progress/kendo-react-common';
6
+ import { FormComponentProps, SVGIcon } from '@progress/kendo-react-common';
7
7
  /**
8
8
  * Represents the object of the `filterChange` DropDownList event.
9
9
  */
@@ -83,6 +83,10 @@ export interface DropDownListProps extends FormComponentProps {
83
83
  * Sets CSS classes to the expand `icon` DOM element.
84
84
  */
85
85
  iconClassName?: string;
86
+ /**
87
+ * Sets the specified SVG icon.
88
+ */
89
+ svgIcon?: SVGIcon;
86
90
  /**
87
91
  * Sets the title attribute to the DropDownList DOM element.
88
92
  */
@@ -36,6 +36,7 @@ var messages_1 = require("./../messages");
36
36
  var kendo_react_labels_1 = require("@progress/kendo-react-labels");
37
37
  var ListFilter_1 = require("../common/ListFilter");
38
38
  var kendo_react_buttons_1 = require("@progress/kendo-react-buttons");
39
+ var kendo_svg_icons_1 = require("@progress/kendo-svg-icons");
39
40
  var sizeMap = kendo_react_common_1.kendoThemeMaps.sizeMap, roundedMap = kendo_react_common_1.kendoThemeMaps.roundedMap;
40
41
  var VALIDATION_MESSAGE = 'Please select a value from the list!';
41
42
  var ValueHolder = function (props) {
@@ -357,13 +358,13 @@ exports.DropDownTree = React.forwardRef(function (directProps, ref) {
357
358
  _a)), tabIndex: tabIndex, accessKey: props.accessKey, id: id, style: label ? __assign(__assign({}, style), { width: undefined }) : style, dir: dir, ref: elementRef, onKeyDown: disabled ? undefined : onWrapperKeyDown, onMouseDown: onWrapperMouseDown, onClick: disabled ? undefined : onWrapperClick, onFocus: onFocus, onBlur: onBlur, role: "combobox", "aria-haspopup": "tree", "aria-expanded": isOpen, "aria-disabled": disabled, "aria-label": label, "aria-labelledby": props.ariaLabelledBy, "aria-describedby": props.ariaDescribedBy },
358
359
  React.createElement("span", { className: "k-input-inner" },
359
360
  React.createElement(ValueComponent, { item: value }, currentValueText || placeholder)),
360
- props.loading && React.createElement("span", { className: "k-icon k-i-loading k-input-loading-icon" }),
361
+ props.loading && React.createElement(kendo_react_common_1.IconWrap, { className: "k-input-loading-icon", name: 'loading' }),
361
362
  hasValue && !disabled && (React.createElement("span", { onClick: onClear, className: "k-clear-value", title: localization.toLanguageString(messages_1.clear, messages_1.messages[messages_1.clear]), role: "button", tabIndex: -1, onMouseDown: function (e) { return e.preventDefault(); } },
362
- React.createElement("span", { className: "k-icon k-i-x" }))),
363
- React.createElement(kendo_react_buttons_1.Button, { tabIndex: -1, type: "button", "aria-label": "select", className: "k-input-button", size: size, fillMode: fillMode, themeColor: "base", rounded: null, icon: "caret-alt-down" }),
363
+ React.createElement(kendo_react_common_1.IconWrap, { name: 'x', icon: kendo_svg_icons_1.xIcon }))),
364
+ React.createElement(kendo_react_buttons_1.Button, { tabIndex: -1, type: "button", "aria-label": "select", className: "k-input-button", size: size, fillMode: fillMode, themeColor: "base", rounded: null, icon: "caret-alt-down", svgIcon: kendo_svg_icons_1.caretAltDownIcon }),
364
365
  React.createElement("select", { name: name, ref: selectRef, tabIndex: -1, "aria-hidden": true, title: label, style: { opacity: 0, width: 1, border: 0, zIndex: -1, position: 'absolute', left: '50%' } },
365
366
  React.createElement("option", { value: props.valueMap ? props.valueMap.call(undefined, value) : value })),
366
- React.createElement(kendo_react_popup_1.Popup, { className: (0, kendo_react_common_1.classNames)(popupSettings.className, { 'k-rtl': dir === 'rtl' }), popupClass: (0, kendo_react_common_1.classNames)(popupSettings.popupClass, 'k-list-container'), style: popupStyles, animate: popupSettings.animate, anchor: elementRef.current, show: isOpen, onOpen: onPopupOpened, onClose: onPopupClosed, appendTo: popupSettings.appendTo },
367
+ React.createElement(kendo_react_popup_1.Popup, { className: (0, kendo_react_common_1.classNames)(popupSettings.className, { 'k-rtl': dir === 'rtl' }), popupClass: (0, kendo_react_common_1.classNames)(popupSettings.popupClass, 'k-list-container', 'k-dropdowntree-popup'), style: popupStyles, animate: popupSettings.animate, anchor: elementRef.current, show: isOpen, onOpen: onPopupOpened, onClose: onPopupClosed, appendTo: popupSettings.appendTo },
367
368
  props.filterable && (React.createElement(ListFilter_1.default, { value: props.filter === undefined ? filter : props.filter, inputRef: inputRef, onChange: onFilterChange, onKeyDown: onInputKeyDown, size: size, rounded: rounded, fillMode: fillMode })),
368
369
  data.length > 0 ? (React.createElement(kendo_react_treeview_1.TreeView, { ref: treeViewRef, tabIndex: tabIndex, data: treeViewData, focusIdField: dataItemKey, textField: props.textField, selectField: selectField, expandField: props.expandField, childrenField: subItemsField, expandIcons: true, onItemClick: onChange, onExpandChange: onExpand, size: size, item: props.item })) : (React.createElement(NoData, null, localization.toLanguageString(messages_1.nodata, messages_1.messages[messages_1.nodata]))))));
369
370
  return label ? (React.createElement(kendo_react_labels_1.FloatingLabel, { label: label, editorValue: currentValueText, editorPlaceholder: placeholder, editorValid: isValid, editorDisabled: disabled, editorId: id, style: { width: style ? style.width : undefined }, children: dropdowntree, dir: dir })) : dropdowntree;