@progress/kendo-react-dropdowns 4.14.0 → 5.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/cdn/js/kendo-react-dropdowns.js +1 -1
- package/dist/es/AutoComplete/AutoComplete.d.ts +7 -4
- package/dist/es/AutoComplete/AutoComplete.js +30 -19
- package/dist/es/AutoComplete/AutoCompleteProps.d.ts +37 -0
- package/dist/es/ComboBox/ComboBox.d.ts +8 -1
- package/dist/es/ComboBox/ComboBox.js +46 -33
- package/dist/es/ComboBox/ComboBoxProps.d.ts +37 -0
- package/dist/es/DropDownList/DropDownList.d.ts +6 -8
- package/dist/es/DropDownList/DropDownList.js +56 -48
- package/dist/es/DropDownList/DropDownListProps.d.ts +37 -0
- package/dist/es/DropDownTree/DropDownTree.js +44 -24
- package/dist/es/DropDownTree/DropDownTreeProps.d.ts +37 -0
- package/dist/es/MultiColumnComboBox/MultiColumnComboBox.d.ts +37 -0
- package/dist/es/MultiColumnComboBox/MultiColumnComboBox.js +23 -12
- package/dist/es/MultiSelect/MultiSelect.d.ts +8 -5
- package/dist/es/MultiSelect/MultiSelect.js +51 -32
- package/dist/es/MultiSelect/MultiSelectProps.d.ts +38 -1
- package/dist/es/MultiSelect/TagList.d.ts +2 -1
- package/dist/es/MultiSelect/TagList.js +10 -15
- package/dist/es/MultiSelectTree/MultiSelectTree.js +42 -29
- package/dist/es/MultiSelectTree/MultiSelectTreeProps.d.ts +37 -0
- package/dist/es/common/ClearButton.js +2 -1
- package/dist/es/common/DropDownBase.d.ts +2 -3
- package/dist/es/common/DropDownBase.js +2 -16
- package/dist/es/common/List.d.ts +1 -0
- package/dist/es/common/List.js +3 -2
- package/dist/es/common/ListDefaultItem.js +2 -2
- package/dist/es/common/ListFilter.d.ts +5 -0
- package/dist/es/common/ListFilter.js +12 -3
- package/dist/es/common/ListItem.js +5 -5
- package/dist/es/common/MultiColumnList.js +1 -1
- package/dist/es/common/SearchBar.d.ts +1 -4
- package/dist/es/common/SearchBar.js +2 -8
- package/dist/es/common/VirtualScroll.js +3 -2
- package/dist/es/package-metadata.js +1 -1
- package/dist/npm/AutoComplete/AutoComplete.d.ts +7 -4
- package/dist/npm/AutoComplete/AutoComplete.js +29 -18
- package/dist/npm/AutoComplete/AutoCompleteProps.d.ts +37 -0
- package/dist/npm/ComboBox/ComboBox.d.ts +8 -1
- package/dist/npm/ComboBox/ComboBox.js +45 -32
- package/dist/npm/ComboBox/ComboBoxProps.d.ts +37 -0
- package/dist/npm/DropDownList/DropDownList.d.ts +6 -8
- package/dist/npm/DropDownList/DropDownList.js +55 -47
- package/dist/npm/DropDownList/DropDownListProps.d.ts +37 -0
- package/dist/npm/DropDownTree/DropDownTree.js +43 -23
- package/dist/npm/DropDownTree/DropDownTreeProps.d.ts +37 -0
- package/dist/npm/MultiColumnComboBox/MultiColumnComboBox.d.ts +37 -0
- package/dist/npm/MultiColumnComboBox/MultiColumnComboBox.js +22 -11
- package/dist/npm/MultiSelect/MultiSelect.d.ts +8 -5
- package/dist/npm/MultiSelect/MultiSelect.js +50 -31
- package/dist/npm/MultiSelect/MultiSelectProps.d.ts +38 -1
- package/dist/npm/MultiSelect/TagList.d.ts +2 -1
- package/dist/npm/MultiSelect/TagList.js +10 -15
- package/dist/npm/MultiSelectTree/MultiSelectTree.js +40 -27
- package/dist/npm/MultiSelectTree/MultiSelectTreeProps.d.ts +37 -0
- package/dist/npm/common/ClearButton.js +2 -1
- package/dist/npm/common/DropDownBase.d.ts +2 -3
- package/dist/npm/common/DropDownBase.js +2 -16
- package/dist/npm/common/List.d.ts +1 -0
- package/dist/npm/common/List.js +3 -2
- package/dist/npm/common/ListDefaultItem.js +2 -2
- package/dist/npm/common/ListFilter.d.ts +5 -0
- package/dist/npm/common/ListFilter.js +12 -3
- package/dist/npm/common/ListItem.js +5 -5
- package/dist/npm/common/MultiColumnList.js +1 -1
- package/dist/npm/common/SearchBar.d.ts +1 -4
- package/dist/npm/common/SearchBar.js +2 -8
- package/dist/npm/common/VirtualScroll.js +3 -2
- package/dist/npm/package-metadata.js +1 -1
- package/dist/systemjs/kendo-react-dropdowns.js +1 -1
- package/package.json +19 -13
|
@@ -24,7 +24,7 @@ var __assign = (this && this.__assign) || function () {
|
|
|
24
24
|
};
|
|
25
25
|
import * as React from 'react';
|
|
26
26
|
import * as PropTypes from 'prop-types';
|
|
27
|
-
import { classNames, Keys, getTabIndex, createPropsContext, withPropsContext } from '@progress/kendo-react-common';
|
|
27
|
+
import { classNames, Keys, getTabIndex, createPropsContext, withPropsContext, kendoThemeMaps } from '@progress/kendo-react-common';
|
|
28
28
|
import { FloatingLabel } from '@progress/kendo-react-labels';
|
|
29
29
|
import ListContainer from '../common/ListContainer';
|
|
30
30
|
import ListFilter from '../common/ListFilter';
|
|
@@ -35,6 +35,7 @@ import { isPresent, getItemValue, sameCharsOnly, shuffleData, matchText, areSame
|
|
|
35
35
|
import { validatePackage } from '@progress/kendo-react-common';
|
|
36
36
|
import { packageMetadata } from '../package-metadata';
|
|
37
37
|
var VALIDATION_MESSAGE = 'Please select a value from the list!';
|
|
38
|
+
var sizeMap = kendoThemeMaps.sizeMap, roundedMap = kendoThemeMaps.roundedMap;
|
|
38
39
|
/**
|
|
39
40
|
* @hidden
|
|
40
41
|
*/
|
|
@@ -73,27 +74,9 @@ var DropDownListWithoutContext = /** @class */ (function (_super) {
|
|
|
73
74
|
_this.base.triggerPageChangeCornerItems(item, state);
|
|
74
75
|
}
|
|
75
76
|
};
|
|
76
|
-
_this.
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
var opened = _this.props.opened !== undefined ? _this.props.opened : _this.state.opened;
|
|
80
|
-
var value = _this.value;
|
|
81
|
-
var selectedIndex = data.findIndex(function (i) { return areSame(i, value, dataItemKey); });
|
|
82
|
-
var text = getItemValue(value, textField);
|
|
83
|
-
var valueDefaultRendering = (React.createElement("span", { className: "k-input" }, text));
|
|
84
|
-
var valueElement = valueRender !== undefined ?
|
|
85
|
-
valueRender.call(undefined, valueDefaultRendering, value) : valueDefaultRendering;
|
|
86
|
-
return (React.createElement("span", { ref: function (el) { return _this.base.wrapper = el; }, role: 'listbox', tabIndex: getTabIndex(tabIndex, disabled), accessKey: _this.props.accessKey, className: classNames('k-dropdown-wrap', {
|
|
87
|
-
'k-state-focused': focused,
|
|
88
|
-
'k-state-disabled': disabled
|
|
89
|
-
}), onKeyDown: _this.handleKeyDown, onKeyPress: _this.handleKeyPress, onClick: disabled ? undefined : _this.handleWrapperClick, "aria-disabled": disabled || undefined, "aria-haspopup": true, "aria-expanded": opened || false, "aria-owns": _this.base.listBoxId, "aria-activedescendant": opened ? ('option-' + _this.base.guid + '-' + (selectedIndex + virtual.skip)) : undefined, "aria-label": _this.props.label, "aria-labelledby": _this.props.ariaLabelledBy, "aria-describedby": _this.props.ariaDescribedBy, id: _this.props.id, title: _this.props.title },
|
|
90
|
-
valueElement,
|
|
91
|
-
React.createElement("span", { className: "k-select" },
|
|
92
|
-
React.createElement("span", { className: classNames('k-icon', iconClassName, {
|
|
93
|
-
'k-i-arrow-s': !loading && !iconClassName,
|
|
94
|
-
'k-i-loading': loading && !iconClassName
|
|
95
|
-
}) })),
|
|
96
|
-
_this.dummySelect(value)));
|
|
77
|
+
_this.componentRef = function (element) {
|
|
78
|
+
_this._element = element;
|
|
79
|
+
_this.base.wrapper = element;
|
|
97
80
|
};
|
|
98
81
|
_this.dummySelect = function (value) {
|
|
99
82
|
/* Dummy component to support forms */
|
|
@@ -101,18 +84,21 @@ var DropDownListWithoutContext = /** @class */ (function (_super) {
|
|
|
101
84
|
React.createElement("option", { value: _this.props.valueMap ? _this.props.valueMap.call(undefined, value) : value })));
|
|
102
85
|
};
|
|
103
86
|
_this.renderListContainer = function () {
|
|
104
|
-
var _a
|
|
87
|
+
var _a;
|
|
88
|
+
var _b = _this.props, header = _b.header, footer = _b.footer, dir = _b.dir, _c = _b.data, data = _c === void 0 ? [] : _c, size = _b.size;
|
|
105
89
|
var base = _this.base;
|
|
106
90
|
var popupSettings = base.getPopupSettings();
|
|
107
91
|
var opened = _this.props.opened !== undefined ? _this.props.opened : _this.state.opened;
|
|
108
|
-
var virtual = _this.props.virtual !== undefined;
|
|
109
92
|
var popupWidth = popupSettings.width !== undefined ? popupSettings.width : base.popupWidth;
|
|
110
93
|
var listContainerProps = {
|
|
111
94
|
dir: dir !== undefined ? dir : base.dirCalculated,
|
|
112
95
|
width: popupWidth,
|
|
113
96
|
popupSettings: {
|
|
114
|
-
popupClass: popupSettings.popupClass,
|
|
115
|
-
|
|
97
|
+
popupClass: classNames(popupSettings.popupClass, 'k-list', (_a = {},
|
|
98
|
+
_a["k-list-" + (sizeMap[size] || size)] = size,
|
|
99
|
+
_a['k-virtual-list'] = _this.base.vs.enabled,
|
|
100
|
+
_a)),
|
|
101
|
+
className: popupSettings.className,
|
|
116
102
|
animate: popupSettings.animate,
|
|
117
103
|
anchor: _this.element,
|
|
118
104
|
show: opened,
|
|
@@ -124,15 +110,10 @@ var DropDownListWithoutContext = /** @class */ (function (_super) {
|
|
|
124
110
|
};
|
|
125
111
|
return (React.createElement(ListContainer, __assign({}, listContainerProps),
|
|
126
112
|
_this.renderListFilter(),
|
|
127
|
-
|
|
128
|
-
|
|
129
|
-
_this.
|
|
130
|
-
|
|
131
|
-
!virtual && header,
|
|
132
|
-
_this.renderList(),
|
|
133
|
-
!virtual && footer,
|
|
134
|
-
_this.base.renderScrollElement())),
|
|
135
|
-
virtual && footer));
|
|
113
|
+
_this.renderDefaultItem(),
|
|
114
|
+
header && React.createElement("div", { className: "k-list-header" }, header),
|
|
115
|
+
_this.renderList(),
|
|
116
|
+
footer && React.createElement("div", { className: "k-list-footer" }, footer)));
|
|
136
117
|
};
|
|
137
118
|
_this.renderList = function () {
|
|
138
119
|
var _a = _this.props, _b = _a.data, data = _b === void 0 ? [] : _b, textField = _a.textField, dataItemKey = _a.dataItemKey, _c = _a.virtual, virtual = _c === void 0 ? { skip: 0 } : _c, listNoDataRender = _a.listNoDataRender, itemRender = _a.itemRender;
|
|
@@ -141,13 +122,13 @@ var DropDownListWithoutContext = /** @class */ (function (_super) {
|
|
|
141
122
|
var opened = _this.props.opened !== undefined ? _this.props.opened : _this.state.opened;
|
|
142
123
|
var popupSettings = _this.base.getPopupSettings();
|
|
143
124
|
var translate = "translateY(" + vs.translate + "px)";
|
|
144
|
-
return (React.createElement(List, { id: _this.base.listBoxId, show: opened, data: data.slice(), focusedIndex: _this.focusedIndex(), value: _this.value, textField: textField, valueField: dataItemKey, optionsGuid: _this.base.guid, listRef: function (list) { return vs.list = _this.base.list = list; }, wrapperStyle:
|
|
145
|
-
|
|
146
|
-
|
|
125
|
+
return (React.createElement(List, { id: _this.base.listBoxId, show: opened, data: data.slice(), focusedIndex: _this.focusedIndex(), value: _this.value, textField: textField, valueField: dataItemKey, optionsGuid: _this.base.guid, listRef: function (list) { return vs.list = _this.base.list = list; }, wrapperStyle: { maxHeight: popupSettings.height }, wrapperCssClass: "k-list-content", listStyle: vs.enabled ? { transform: translate } : undefined, key: "listkey", skip: skip, onClick: _this.handleItemClick, itemRender: itemRender, noDataRender: listNoDataRender, onScroll: function (e) {
|
|
126
|
+
vs.scrollHandler(e);
|
|
127
|
+
}, wrapperRef: vs.scrollerRef, scroller: _this.base.renderScrollElement() }));
|
|
147
128
|
};
|
|
148
129
|
_this.renderListFilter = function () {
|
|
149
130
|
var filterText = _this.props.filter !== undefined ? _this.props.filter : _this.state.text;
|
|
150
|
-
return _this.props.filterable && (React.createElement(ListFilter, { value: filterText, ref: function (filter) { return _this._filterInput = filter && filter.input; }, onChange: _this.handleListFilterChange, onKeyDown: _this.handleKeyDown }));
|
|
131
|
+
return _this.props.filterable && (React.createElement(ListFilter, { value: filterText, ref: function (filter) { return _this._filterInput = filter && filter.input; }, onChange: _this.handleListFilterChange, onKeyDown: _this.handleKeyDown, size: _this.props.size, rounded: _this.props.rounded, fillMode: _this.props.fillMode }));
|
|
151
132
|
};
|
|
152
133
|
_this.renderDefaultItem = function () {
|
|
153
134
|
var _a = _this.props, textField = _a.textField, defaultItem = _a.defaultItem, dataItemKey = _a.dataItemKey;
|
|
@@ -283,6 +264,9 @@ var DropDownListWithoutContext = /** @class */ (function (_super) {
|
|
|
283
264
|
_this.applyState(state);
|
|
284
265
|
};
|
|
285
266
|
_this.handleWrapperClick = function (event) {
|
|
267
|
+
if (event.isPropagationStopped()) {
|
|
268
|
+
return;
|
|
269
|
+
}
|
|
286
270
|
var state = _this.base.initState();
|
|
287
271
|
state.syntheticEvent = event;
|
|
288
272
|
if (!_this.state.focused) {
|
|
@@ -508,10 +492,11 @@ var DropDownListWithoutContext = /** @class */ (function (_super) {
|
|
|
508
492
|
* @hidden
|
|
509
493
|
*/
|
|
510
494
|
DropDownListWithoutContext.prototype.render = function () {
|
|
511
|
-
var
|
|
512
|
-
var
|
|
495
|
+
var _a, _b;
|
|
496
|
+
var _c = this.props, style = _c.style, className = _c.className, label = _c.label, dir = _c.dir, virtual = _c.virtual, size = _c.size, rounded = _c.rounded, fillMode = _c.fillMode;
|
|
513
497
|
var opened = this.props.opened !== undefined ? this.props.opened : this.state.opened;
|
|
514
|
-
var
|
|
498
|
+
var value = this.value;
|
|
499
|
+
var text = getItemValue(value, this.props.textField);
|
|
515
500
|
var isValid = !this.validityStyles || this.validity.valid;
|
|
516
501
|
var base = this.base;
|
|
517
502
|
var vs = base.vs;
|
|
@@ -521,12 +506,35 @@ var DropDownListWithoutContext = /** @class */ (function (_super) {
|
|
|
521
506
|
base.vs.total = virtual.total;
|
|
522
507
|
base.vs.pageSize = virtual.pageSize;
|
|
523
508
|
}
|
|
524
|
-
var
|
|
525
|
-
|
|
526
|
-
|
|
509
|
+
var _d = this.props, dataItemKey = _d.dataItemKey, _e = _d.data, data = _e === void 0 ? [] : _e, disabled = _d.disabled, tabIndex = _d.tabIndex, loading = _d.loading, iconClassName = _d.iconClassName, valueRender = _d.valueRender;
|
|
510
|
+
var focused = this.state.focused;
|
|
511
|
+
var selectedIndex = data.findIndex(function (i) { return areSame(i, value, dataItemKey); });
|
|
512
|
+
var valueDefaultRendering = (React.createElement("span", { className: "k-input-inner" },
|
|
513
|
+
React.createElement("span", { className: "k-input-value-text" }, text)));
|
|
514
|
+
var valueElement = valueRender !== undefined ?
|
|
515
|
+
valueRender.call(undefined, valueDefaultRendering, value) : valueDefaultRendering;
|
|
516
|
+
var dropdownlist = (React.createElement("span", { ref: this.componentRef, className: classNames('k-dropdownlist k-picker', className, (_a = {},
|
|
517
|
+
_a["k-picker-" + (sizeMap[size] || size)] = size,
|
|
518
|
+
_a["k-rounded-" + (roundedMap[rounded] || rounded)] = rounded,
|
|
519
|
+
_a["k-picker-" + fillMode] = fillMode,
|
|
520
|
+
_a['k-focused'] = focused,
|
|
521
|
+
_a['k-disabled'] = disabled,
|
|
522
|
+
_a['k-invalid'] = !isValid,
|
|
523
|
+
_a['k-valid'] = isValid,
|
|
524
|
+
_a['k-loading'] = loading,
|
|
525
|
+
_a['k-required'] = this.required,
|
|
526
|
+
_a)), style: !label
|
|
527
527
|
? style
|
|
528
|
-
: __assign({}, style, { width: undefined }), dir: dir, onMouseDown: opened ? preventDefaultNonInputs : undefined, onFocus: this.handleFocus, onBlur: this.handleBlur },
|
|
529
|
-
|
|
528
|
+
: __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: 'listbox', "aria-disabled": disabled || undefined, "aria-haspopup": true, "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.label, "aria-labelledby": this.props.ariaLabelledBy, "aria-describedby": this.props.ariaDescribedBy, id: this.props.id, title: this.props.title },
|
|
529
|
+
valueElement,
|
|
530
|
+
loading && React.createElement("span", { className: "k-icon k-i-loading", key: "loading" }),
|
|
531
|
+
React.createElement("button", { type: "button", className: classNames('k-input-button k-button k-icon-button', (_b = {},
|
|
532
|
+
_b["k-button-" + (sizeMap[size] || size)] = size,
|
|
533
|
+
_b["k-button-" + fillMode] = fillMode,
|
|
534
|
+
_b["k-button-" + fillMode + "-base"] = fillMode,
|
|
535
|
+
_b)), onMouseDown: function (e) { return e.preventDefault(); } },
|
|
536
|
+
React.createElement("span", { className: classNames('k-button-icon k-icon k-i-arrow-s', iconClassName) })),
|
|
537
|
+
this.dummySelect(value),
|
|
530
538
|
this.renderListContainer()));
|
|
531
539
|
return label ? (React.createElement(FloatingLabel, { label: label, editorValue: text, editorValid: isValid, editorDisabled: this.props.disabled, style: { width: style ? style.width : undefined }, children: dropdownlist })) : dropdownlist;
|
|
532
540
|
};
|
|
@@ -591,7 +599,7 @@ var DropDownListWithoutContext = /** @class */ (function (_super) {
|
|
|
591
599
|
/**
|
|
592
600
|
* @hidden
|
|
593
601
|
*/
|
|
594
|
-
DropDownListWithoutContext.defaultProps = __assign({ delay: 500, tabIndex: 0, ignoreCase: true }, DropDownBase.defaultProps, { required: false });
|
|
602
|
+
DropDownListWithoutContext.defaultProps = __assign({ delay: 500, tabIndex: 0, ignoreCase: true }, DropDownBase.defaultProps, { required: false, size: 'medium', rounded: 'medium', fillMode: 'solid' });
|
|
595
603
|
return DropDownListWithoutContext;
|
|
596
604
|
}(React.Component));
|
|
597
605
|
export { DropDownListWithoutContext };
|
|
@@ -244,4 +244,41 @@ export interface DropDownListProps extends FormComponentProps {
|
|
|
244
244
|
* Useful when the DropDownList is placed inside a toolbar which needs to handle left and right keys.
|
|
245
245
|
*/
|
|
246
246
|
leftRightKeysNavigation?: boolean;
|
|
247
|
+
/**
|
|
248
|
+
* Configures the `size` of the DropDownList.
|
|
249
|
+
*
|
|
250
|
+
* The available options are:
|
|
251
|
+
* - small
|
|
252
|
+
* - medium
|
|
253
|
+
* - large
|
|
254
|
+
* - null—Does not set a size `className`.
|
|
255
|
+
*
|
|
256
|
+
* @default `medium`
|
|
257
|
+
*/
|
|
258
|
+
size?: null | 'small' | 'medium' | 'large';
|
|
259
|
+
/**
|
|
260
|
+
* Configures the `roundness` of the DropDownList.
|
|
261
|
+
*
|
|
262
|
+
* The available options are:
|
|
263
|
+
* - small
|
|
264
|
+
* - medium
|
|
265
|
+
* - large
|
|
266
|
+
* - full
|
|
267
|
+
* - null—Does not set a rounded `className`.
|
|
268
|
+
*
|
|
269
|
+
* @default `medium`
|
|
270
|
+
*/
|
|
271
|
+
rounded?: null | 'small' | 'medium' | 'large' | 'full';
|
|
272
|
+
/**
|
|
273
|
+
* Configures the `fillMode` of the DropDownList.
|
|
274
|
+
*
|
|
275
|
+
* The available options are:
|
|
276
|
+
* - solid
|
|
277
|
+
* - flat
|
|
278
|
+
* - outline
|
|
279
|
+
* - null—Does not set a fillMode `className`.
|
|
280
|
+
*
|
|
281
|
+
* @default `solid`
|
|
282
|
+
*/
|
|
283
|
+
fillMode?: null | 'solid' | 'flat' | 'outline';
|
|
247
284
|
}
|
|
@@ -11,7 +11,7 @@ var __assign = (this && this.__assign) || function () {
|
|
|
11
11
|
};
|
|
12
12
|
import * as React from 'react';
|
|
13
13
|
import * as PropTypes from 'prop-types';
|
|
14
|
-
import { classNames, noop, useRtl, getTabIndex, Keys, mapTree, extendDataItem, guid, createPropsContext, usePropsContext } from '@progress/kendo-react-common';
|
|
14
|
+
import { classNames, noop, useRtl, getTabIndex, Keys, mapTree, extendDataItem, guid, createPropsContext, kendoThemeMaps, usePropsContext } from '@progress/kendo-react-common';
|
|
15
15
|
import { Popup } from '@progress/kendo-react-popup';
|
|
16
16
|
import { useLocalization } from '@progress/kendo-react-intl';
|
|
17
17
|
import { TreeView } from '@progress/kendo-react-treeview';
|
|
@@ -22,8 +22,12 @@ import { useDropdownWidth } from './useDropdownWidth';
|
|
|
22
22
|
import { ListNoData } from './ListNoData';
|
|
23
23
|
import { messages, clear, nodata } from './../messages';
|
|
24
24
|
import { FloatingLabel } from '@progress/kendo-react-labels';
|
|
25
|
+
import ListFilter from '../common/ListFilter';
|
|
26
|
+
var sizeMap = kendoThemeMaps.sizeMap, roundedMap = kendoThemeMaps.roundedMap;
|
|
25
27
|
var VALIDATION_MESSAGE = 'Please select a value from the list!';
|
|
26
|
-
var ValueHolder = function (props) {
|
|
28
|
+
var ValueHolder = function (props) {
|
|
29
|
+
return React.createElement("span", { className: "k-input-value-text" }, props.children);
|
|
30
|
+
};
|
|
27
31
|
var toLevel = function (hierarchicalIndex) {
|
|
28
32
|
return hierarchicalIndex.split('_').map(function (i) { return parseInt(i, 10); });
|
|
29
33
|
};
|
|
@@ -44,7 +48,10 @@ var defaultProps = {
|
|
|
44
48
|
height: '200px'
|
|
45
49
|
},
|
|
46
50
|
required: false,
|
|
47
|
-
validityStyles: true
|
|
51
|
+
validityStyles: true,
|
|
52
|
+
size: 'medium',
|
|
53
|
+
rounded: 'medium',
|
|
54
|
+
fillMode: 'solid'
|
|
48
55
|
};
|
|
49
56
|
/**
|
|
50
57
|
* Represents the PropsContext of the `DropDownTree` component.
|
|
@@ -60,11 +67,12 @@ export var DropDownTreePropsContext = createPropsContext();
|
|
|
60
67
|
* Obtaining the `ref` returns an object of type [DropDownTreeHandle]({% slug api_dropdowns_dropdowntreehandle %}).
|
|
61
68
|
*/
|
|
62
69
|
export var DropDownTree = React.forwardRef(function (directProps, ref) {
|
|
70
|
+
var _a, _b;
|
|
63
71
|
validatePackage(packageMetadata);
|
|
64
72
|
var props = usePropsContext(DropDownTreePropsContext, directProps);
|
|
65
73
|
var calculatedId = React.useMemo(function () { return guid(); }, []);
|
|
66
74
|
var id = props.id || calculatedId;
|
|
67
|
-
var
|
|
75
|
+
var _c = props.data, data = _c === void 0 ? [] : _c, dataItemKey = props.dataItemKey, _d = props.popupSettings, popupSettings = _d === void 0 ? {} : _d, _e = props.style, style = _e === void 0 ? {} : _e, opened = props.opened, disabled = props.disabled, _f = props.onOpen, onOpen = _f === void 0 ? noop : _f, _g = props.onClose, onClose = _g === void 0 ? noop : _g, placeholder = props.placeholder, label = props.label, name = props.name, _h = props.selectField, selectField = _h === void 0 ? defaultProps.selectField : _h, _j = props.subItemsField, subItemsField = _j === void 0 ? defaultProps.subItemsField : _j, validationMessage = props.validationMessage, valid = props.valid, required = props.required, validityStyles = props.validityStyles;
|
|
68
76
|
var tabIndex = getTabIndex(props.tabIndex, disabled);
|
|
69
77
|
var target = React.useRef(null);
|
|
70
78
|
var elementRef = React.useRef(null);
|
|
@@ -156,13 +164,13 @@ export var DropDownTree = React.forwardRef(function (directProps, ref) {
|
|
|
156
164
|
if (keyCode === Keys.esc || (altKey && keyCode === Keys.up)) {
|
|
157
165
|
closePopup(ev);
|
|
158
166
|
}
|
|
159
|
-
else if (treeview && treeview.querySelector('.k-
|
|
167
|
+
else if (treeview && treeview.querySelector('.k-focus') &&
|
|
160
168
|
(keyCode === Keys.up || keyCode === Keys.down ||
|
|
161
169
|
keyCode === Keys.left || keyCode === Keys.right ||
|
|
162
170
|
keyCode === Keys.home || keyCode === Keys.end)) {
|
|
163
171
|
if (keyCode === Keys.up && inputRef.current) {
|
|
164
172
|
var items = Array.from(treeview.querySelectorAll('.k-treeview-item'));
|
|
165
|
-
var focusedItem = items.slice().reverse().find(function (i) { return Boolean(i && i.querySelector('.k-
|
|
173
|
+
var focusedItem = items.slice().reverse().find(function (i) { return Boolean(i && i.querySelector('.k-focus')); });
|
|
166
174
|
if (focusedItem && items.indexOf(focusedItem) === 0) {
|
|
167
175
|
return switchFocus(function () { focusElement(inputRef.current); });
|
|
168
176
|
}
|
|
@@ -289,6 +297,7 @@ export var DropDownTree = React.forwardRef(function (directProps, ref) {
|
|
|
289
297
|
level: toLevel(itemHierarchicalIndex),
|
|
290
298
|
item: item, nativeEvent: nativeEvent, syntheticEvent: syntheticEvent, target: target.current
|
|
291
299
|
};
|
|
300
|
+
syntheticEvent.stopPropagation();
|
|
292
301
|
props.onExpandChange.call(undefined, expandEvent);
|
|
293
302
|
}
|
|
294
303
|
}, [props.onExpandChange]);
|
|
@@ -318,24 +327,34 @@ export var DropDownTree = React.forwardRef(function (directProps, ref) {
|
|
|
318
327
|
var ValueComponent = props.valueHolder || ValueHolder;
|
|
319
328
|
var localization = useLocalization();
|
|
320
329
|
var isValid = !validityStyles || validity.valid;
|
|
321
|
-
var
|
|
322
|
-
|
|
323
|
-
|
|
324
|
-
|
|
325
|
-
|
|
326
|
-
|
|
327
|
-
|
|
328
|
-
|
|
329
|
-
|
|
330
|
-
|
|
331
|
-
|
|
332
|
-
|
|
333
|
-
|
|
334
|
-
|
|
335
|
-
|
|
336
|
-
|
|
337
|
-
|
|
338
|
-
|
|
330
|
+
var size = props.size, rounded = props.rounded, fillMode = props.fillMode;
|
|
331
|
+
var dropdowntree = (React.createElement("span", { className: classNames('k-dropdowntree k-picker', props.className, (_a = {},
|
|
332
|
+
_a["k-picker-" + (sizeMap[size] || size)] = size,
|
|
333
|
+
_a["k-rounded-" + (roundedMap[rounded] || rounded)] = rounded,
|
|
334
|
+
_a["k-picker-" + fillMode] = fillMode,
|
|
335
|
+
_a['k-focus'] = focused,
|
|
336
|
+
_a['k-valid'] = isValid,
|
|
337
|
+
_a['k-invalid'] = !isValid,
|
|
338
|
+
_a['k-loading'] = props.loading,
|
|
339
|
+
_a['k-required'] = required,
|
|
340
|
+
_a['k-disabled'] = props.disabled,
|
|
341
|
+
_a)), tabIndex: tabIndex, accessKey: props.accessKey, id: id, style: label ? __assign({}, style, { width: undefined }) : style, dir: dir, ref: elementRef, onKeyDown: disabled ? undefined : onWrapperKeyDown, onMouseDown: onWrapperMouseDown, onClick: disabled ? undefined : onWrapperClick, onFocus: onFocus, onBlur: onBlur, role: "listbox", "aria-haspopup": "true", "aria-expanded": isOpen, "aria-disabled": disabled, "aria-label": label, "aria-labelledby": props.ariaLabelledBy, "aria-describedby": props.ariaDescribedBy },
|
|
342
|
+
React.createElement("span", { className: "k-input-inner" },
|
|
343
|
+
React.createElement(ValueComponent, { item: value }, currentValueText || placeholder)),
|
|
344
|
+
props.loading && React.createElement("span", { className: "k-icon k-i-loading" }),
|
|
345
|
+
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(); } },
|
|
346
|
+
React.createElement("span", { className: "k-icon k-i-x" }))),
|
|
347
|
+
React.createElement("button", { type: "button", "aria-label": "select", className: classNames('k-input-button k-button k-icon-button', (_b = {},
|
|
348
|
+
_b["k-button-" + (sizeMap[size] || size)] = size,
|
|
349
|
+
_b["k-button-" + fillMode] = fillMode,
|
|
350
|
+
_b["k-button-" + fillMode + "-base"] = fillMode,
|
|
351
|
+
_b)) },
|
|
352
|
+
React.createElement("span", { className: "k-button-icon k-icon k-i-arrow-s" })),
|
|
353
|
+
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%' } },
|
|
354
|
+
React.createElement("option", { value: props.valueMap ? props.valueMap.call(undefined, value) : value })),
|
|
355
|
+
React.createElement(Popup, { className: classNames(popupSettings.className, { 'k-rtl': dir === 'rtl' }), popupClass: popupSettings.popupClass, style: popupStyles, animate: popupSettings.animate, anchor: elementRef.current, show: isOpen, onOpen: onPopupOpened, onClose: onPopupClosed, appendTo: popupSettings.appendTo },
|
|
356
|
+
props.filterable && (React.createElement(ListFilter, { value: props.filter === undefined ? filter : props.filter, inputRef: inputRef, onChange: onFilterChange, onKeyDown: onInputKeyDown, size: size, rounded: rounded, fillMode: fillMode })),
|
|
357
|
+
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]))))));
|
|
339
358
|
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;
|
|
340
359
|
});
|
|
341
360
|
var propTypes = {
|
|
@@ -390,4 +409,5 @@ var propTypes = {
|
|
|
390
409
|
listNoData: PropTypes.func
|
|
391
410
|
};
|
|
392
411
|
DropDownTree.displayName = 'KendoReactDropDownTree';
|
|
412
|
+
DropDownTree.defaultProps = defaultProps;
|
|
393
413
|
DropDownTree.propTypes = propTypes;
|
|
@@ -246,4 +246,41 @@ export interface DropDownTreeProps extends FormComponentProps {
|
|
|
246
246
|
* ([see example]({% slug customrendering_dropdowntree %}#toc-no-data)).
|
|
247
247
|
*/
|
|
248
248
|
listNoData?: React.ComponentType<ListNoDataProps>;
|
|
249
|
+
/**
|
|
250
|
+
* Configures the `size` of the DropDownTree.
|
|
251
|
+
*
|
|
252
|
+
* The available options are:
|
|
253
|
+
* - small
|
|
254
|
+
* - medium
|
|
255
|
+
* - large
|
|
256
|
+
* - null—Does not set a size `className`.
|
|
257
|
+
*
|
|
258
|
+
* @default `medium`
|
|
259
|
+
*/
|
|
260
|
+
size?: null | 'small' | 'medium' | 'large';
|
|
261
|
+
/**
|
|
262
|
+
* Configures the `roundness` of the DropDownTree.
|
|
263
|
+
*
|
|
264
|
+
* The available options are:
|
|
265
|
+
* - small
|
|
266
|
+
* - medium
|
|
267
|
+
* - large
|
|
268
|
+
* - full
|
|
269
|
+
* - null—Does not set a rounded `className`.
|
|
270
|
+
*
|
|
271
|
+
* @default `medium`
|
|
272
|
+
*/
|
|
273
|
+
rounded?: null | 'small' | 'medium' | 'large' | 'full';
|
|
274
|
+
/**
|
|
275
|
+
* Configures the `fillMode` of the DropDownTree.
|
|
276
|
+
*
|
|
277
|
+
* The available options are:
|
|
278
|
+
* - solid
|
|
279
|
+
* - flat
|
|
280
|
+
* - outline
|
|
281
|
+
* - null—Does not set a fillMode `className`.
|
|
282
|
+
*
|
|
283
|
+
* @default `solid`
|
|
284
|
+
*/
|
|
285
|
+
fillMode?: null | 'solid' | 'flat' | 'outline';
|
|
249
286
|
}
|
|
@@ -151,6 +151,43 @@ export interface MultiColumnComboBoxProps extends ComboBoxProps {
|
|
|
151
151
|
* Sets the footer component of the MultiColumnComboBox.
|
|
152
152
|
*/
|
|
153
153
|
footer?: React.ReactNode;
|
|
154
|
+
/**
|
|
155
|
+
* Configures the `size` of the MultiColumnComboBox.
|
|
156
|
+
*
|
|
157
|
+
* The available options are:
|
|
158
|
+
* - small
|
|
159
|
+
* - medium
|
|
160
|
+
* - large
|
|
161
|
+
* - null—Does not set a size `className`.
|
|
162
|
+
*
|
|
163
|
+
* @default `medium`
|
|
164
|
+
*/
|
|
165
|
+
size?: null | 'small' | 'medium' | 'large';
|
|
166
|
+
/**
|
|
167
|
+
* Configures the `roundness` of the MultiColumnComboBox.
|
|
168
|
+
*
|
|
169
|
+
* The available options are:
|
|
170
|
+
* - small
|
|
171
|
+
* - medium
|
|
172
|
+
* - large
|
|
173
|
+
* - full
|
|
174
|
+
* - null—Does not set a rounded `className`.
|
|
175
|
+
*
|
|
176
|
+
* @default `medium`
|
|
177
|
+
*/
|
|
178
|
+
rounded?: null | 'small' | 'medium' | 'large' | 'full';
|
|
179
|
+
/**
|
|
180
|
+
* Configures the `fillMode` of the MultiColumnComboBox.
|
|
181
|
+
*
|
|
182
|
+
* The available options are:
|
|
183
|
+
* - solid
|
|
184
|
+
* - flat
|
|
185
|
+
* - outline
|
|
186
|
+
* - null—Does not set a fillMode `className`.
|
|
187
|
+
*
|
|
188
|
+
* @default `solid`
|
|
189
|
+
*/
|
|
190
|
+
fillMode?: null | 'solid' | 'flat' | 'outline';
|
|
154
191
|
}
|
|
155
192
|
/**
|
|
156
193
|
* Represents the target(element and props) of the MultiColumnComboBoxChangeEvent.
|
|
@@ -21,8 +21,9 @@ var __rest = (this && this.__rest) || function (s, e) {
|
|
|
21
21
|
import * as React from 'react';
|
|
22
22
|
import * as PropTypes from 'prop-types';
|
|
23
23
|
import { MultiColumnList } from './../common/MultiColumnList';
|
|
24
|
-
import { classNames, getScrollbarWidth, setScrollbarWidth, getter, usePropsContext, createPropsContext } from '@progress/kendo-react-common';
|
|
24
|
+
import { classNames, getScrollbarWidth, setScrollbarWidth, kendoThemeMaps, getter, usePropsContext, createPropsContext } from '@progress/kendo-react-common';
|
|
25
25
|
import { ComboBox, ComboBoxWithoutContext } from '../ComboBox/ComboBox';
|
|
26
|
+
var sizeMap = kendoThemeMaps.sizeMap;
|
|
26
27
|
var columnWidth = function (width, defaultWidth) {
|
|
27
28
|
if (width) {
|
|
28
29
|
return typeof width === 'number' ? width + 'px' : width;
|
|
@@ -44,11 +45,12 @@ export var MultiColumnComboBoxPropsContext = createPropsContext();
|
|
|
44
45
|
*
|
|
45
46
|
*/
|
|
46
47
|
export var MultiColumnComboBox = React.forwardRef(function (directProps, ref) {
|
|
48
|
+
var _a;
|
|
47
49
|
var props = usePropsContext(MultiColumnComboBoxPropsContext, directProps);
|
|
48
50
|
var target = React.useRef(null);
|
|
49
51
|
var comboBoxRef = React.useRef(null);
|
|
50
52
|
var scrollbarWidth = getScrollbarWidth();
|
|
51
|
-
var
|
|
53
|
+
var _b = props.columns, columns = _b === void 0 ? defaultProps.columns : _b, _c = props.popupSettings, popupSettings = _c === void 0 ? defaultProps.popupSettings : _c, size = props.size, onOpen = props.onOpen, onClose = props.onClose, onFocus = props.onFocus, onBlur = props.onBlur, onChange = props.onChange, onFilterChange = props.onFilterChange, onPageChange = props.onPageChange, other = __rest(props, ["columns", "popupSettings", "size", "onOpen", "onClose", "onFocus", "onBlur", "onChange", "onFilterChange", "onPageChange"]);
|
|
52
54
|
React.useImperativeHandle(target, function () {
|
|
53
55
|
return ({
|
|
54
56
|
element: comboBoxRef.current && comboBoxRef.current.element,
|
|
@@ -68,19 +70,19 @@ export var MultiColumnComboBox = React.forwardRef(function (directProps, ref) {
|
|
|
68
70
|
}, [columns, scrollbarWidth]);
|
|
69
71
|
var header = React.useMemo(function () { return (React.createElement(React.Fragment, null,
|
|
70
72
|
props.header,
|
|
71
|
-
React.createElement("div", { className: "k-
|
|
72
|
-
React.createElement("div", { className: "k-
|
|
73
|
-
React.createElement("table", { role: "presentation" },
|
|
73
|
+
React.createElement("div", { className: "k-table-header" },
|
|
74
|
+
React.createElement("div", { className: "k-table-header-wrap" },
|
|
75
|
+
React.createElement("table", { className: "k-table", role: "presentation" },
|
|
74
76
|
React.createElement("colgroup", null, columns.map(function (column, i) {
|
|
75
77
|
return (React.createElement("col", { key: column.uniqueKey ? column.uniqueKey : i, style: { width: column.width ? column.width : defaultProps.width } }));
|
|
76
78
|
})),
|
|
77
|
-
React.createElement("
|
|
78
|
-
React.createElement("tr",
|
|
79
|
-
return (React.createElement("th", { key: column.uniqueKey ? column.uniqueKey : i
|
|
79
|
+
React.createElement("thead", { className: 'k-table-thead' },
|
|
80
|
+
React.createElement("tr", { className: 'k-table-row' }, columns.map(function (column, i) {
|
|
81
|
+
return (React.createElement("th", { className: "k-table-th", key: column.uniqueKey ? column.uniqueKey : i }, column.header || '\u00A0'));
|
|
80
82
|
})))))))); }, [props.header, columns]);
|
|
81
83
|
var skip = props.virtual ? props.virtual.skip : 0;
|
|
82
84
|
var itemRender = React.useCallback(function (li, liProps) {
|
|
83
|
-
var children = columns.map(function (column, i) { return (React.createElement("span", { className: "k-
|
|
85
|
+
var children = columns.map(function (column, i) { return (React.createElement("span", { className: "k-table-td", style: { width: column.width ? column.width : defaultProps.width }, key: column.uniqueKey ? column.uniqueKey : i }, column.field ? getter(column.field)(liProps.dataItem) : '')); });
|
|
84
86
|
var group = undefined;
|
|
85
87
|
var curGroup, prevGroup, groupGetter, data = props.data || [];
|
|
86
88
|
var index = liProps.index - skip;
|
|
@@ -96,7 +98,11 @@ export var MultiColumnComboBox = React.forwardRef(function (directProps, ref) {
|
|
|
96
98
|
children.push(React.createElement("div", { key: "group", className: "k-cell k-group-cell" },
|
|
97
99
|
React.createElement("span", null, group)));
|
|
98
100
|
}
|
|
99
|
-
var rendering = React.cloneElement(li, __assign({}, li.props
|
|
101
|
+
var rendering = React.cloneElement(li, __assign({}, li.props, { className: classNames('k-table-row', {
|
|
102
|
+
'k-table-alt-row': liProps.index % 2 !== 0,
|
|
103
|
+
'k-focus': liProps.focused,
|
|
104
|
+
'k-selected': liProps.selected
|
|
105
|
+
}) }), children);
|
|
100
106
|
return props.itemRender ? props.itemRender.call(undefined, rendering, liProps) : rendering;
|
|
101
107
|
}, [columns, props.groupField, props.itemRender, props.data, skip]);
|
|
102
108
|
var handleEvent = React.useCallback(function (handler, event) {
|
|
@@ -113,13 +119,18 @@ export var MultiColumnComboBox = React.forwardRef(function (directProps, ref) {
|
|
|
113
119
|
var onPageChangeHandler = React.useCallback(function (event) { return handleEvent(onPageChange, event); }, [onPageChange]);
|
|
114
120
|
React.useEffect(function () { setScrollbarWidth(); });
|
|
115
121
|
var List = React.useCallback(function (listProps) { return React.createElement(MultiColumnList, __assign({}, listProps)); }, []);
|
|
116
|
-
return (React.createElement(ComboBox, __assign({}, other, { list: List, popupSettings: __assign({ width: popupWidth }, popupSettings, { popupClass: 'k-dropdowngrid-popup
|
|
122
|
+
return (React.createElement(ComboBox, __assign({}, other, { list: List, popupSettings: __assign({ width: popupWidth }, popupSettings, { popupClass: classNames('k-dropdowngrid-popup k-data-table', (_a = {},
|
|
123
|
+
_a["k-table-" + (sizeMap[size] || size)] = size,
|
|
124
|
+
_a)), className: popupSettings.className }), ref: comboBoxRef, header: header, itemRender: itemRender, size: props.size, rounded: props.rounded, fillMode: props.fillMode, onOpen: onOpenHandler, onClose: onCloseHandler, onFocus: onFocusHandler, onBlur: onBlurHandler, onChange: onChangeHandler, onFilterChange: onFilterChangeHandler, onPageChange: onPageChangeHandler })));
|
|
117
125
|
});
|
|
118
126
|
var propTypes = __assign({}, ComboBoxWithoutContext.propTypes, { columns: PropTypes.any.isRequired });
|
|
119
127
|
var defaultProps = {
|
|
120
128
|
columns: [],
|
|
121
129
|
popupSettings: {},
|
|
122
|
-
width: '200px'
|
|
130
|
+
width: '200px',
|
|
131
|
+
size: 'medium',
|
|
132
|
+
rounded: 'medium',
|
|
133
|
+
fillMode: 'solid'
|
|
123
134
|
};
|
|
124
135
|
MultiColumnComboBox.displayName = 'KendoMultiColumnComboBox';
|
|
125
136
|
// TODO: delete casting when @types/react is updated!
|
|
@@ -48,9 +48,6 @@ export declare class MultiSelectWithoutContext extends React.Component<MultiSele
|
|
|
48
48
|
skip: PropTypes.Validator<number>;
|
|
49
49
|
total: PropTypes.Validator<number>;
|
|
50
50
|
}>>;
|
|
51
|
-
/**
|
|
52
|
-
* @hidden
|
|
53
|
-
*/
|
|
54
51
|
onFilterChange: PropTypes.Requireable<(...args: any[]) => any>;
|
|
55
52
|
onPageChange: PropTypes.Requireable<(...args: any[]) => any>;
|
|
56
53
|
opened: PropTypes.Requireable<boolean>;
|
|
@@ -70,12 +67,14 @@ export declare class MultiSelectWithoutContext extends React.Component<MultiSele
|
|
|
70
67
|
}>>;
|
|
71
68
|
popupClass: PropTypes.Requireable<string>;
|
|
72
69
|
className: PropTypes.Requireable<string>;
|
|
73
|
-
appendTo: PropTypes.Requireable<
|
|
70
|
+
appendTo: PropTypes.Requireable<PropTypes.ReactElementLike>;
|
|
74
71
|
width: PropTypes.Requireable<string | number>;
|
|
75
72
|
height: PropTypes.Requireable<string | number>;
|
|
76
73
|
}>>;
|
|
77
74
|
onOpen: PropTypes.Requireable<(...args: any[]) => any>;
|
|
78
|
-
onClose: PropTypes.Requireable<(...args: any[]) => any>;
|
|
75
|
+
onClose: PropTypes.Requireable<(...args: any[]) => any>; /**
|
|
76
|
+
* @hidden
|
|
77
|
+
*/
|
|
79
78
|
onFocus: PropTypes.Requireable<(...args: any[]) => any>;
|
|
80
79
|
onBlur: PropTypes.Requireable<(...args: any[]) => any>;
|
|
81
80
|
onChange: PropTypes.Requireable<(...args: any[]) => any>;
|
|
@@ -91,6 +90,9 @@ export declare class MultiSelectWithoutContext extends React.Component<MultiSele
|
|
|
91
90
|
static defaultProps: {
|
|
92
91
|
autoClose: boolean;
|
|
93
92
|
required: boolean;
|
|
93
|
+
size: "small" | "medium" | "large";
|
|
94
|
+
rounded: "small" | "medium" | "large" | "full";
|
|
95
|
+
fillMode: "solid" | "flat" | "outline";
|
|
94
96
|
popupSettings: {
|
|
95
97
|
height: string;
|
|
96
98
|
};
|
|
@@ -162,6 +164,7 @@ export declare class MultiSelectWithoutContext extends React.Component<MultiSele
|
|
|
162
164
|
* @hidden
|
|
163
165
|
*/
|
|
164
166
|
render(): JSX.Element;
|
|
167
|
+
private componentRef;
|
|
165
168
|
private renderSearchbar;
|
|
166
169
|
private searchbarRef;
|
|
167
170
|
private onChangeHandler;
|