@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
|
@@ -37,6 +37,8 @@ var settings_1 = require("./../common/settings");
|
|
|
37
37
|
var utils_1 = require("../common/utils");
|
|
38
38
|
var kendo_react_common_2 = require("@progress/kendo-react-common");
|
|
39
39
|
var package_metadata_1 = require("../package-metadata");
|
|
40
|
+
var ClearButton_1 = require("../common/ClearButton");
|
|
41
|
+
var sizeMap = kendo_react_common_1.kendoThemeMaps.sizeMap, roundedMap = kendo_react_common_1.kendoThemeMaps.roundedMap;
|
|
40
42
|
var VALIDATION_MESSAGE = 'Please enter a valid value!';
|
|
41
43
|
var preventDefault = function (event) { return event.preventDefault(); };
|
|
42
44
|
var isCustom = function (type) { return type === FocusedItemType.CustomItem; };
|
|
@@ -142,6 +144,10 @@ var MultiSelectWithoutContext = /** @class */ (function (_super) {
|
|
|
142
144
|
}
|
|
143
145
|
_this.base.triggerPageChangeCornerItems(nextFocusedItem, state);
|
|
144
146
|
};
|
|
147
|
+
_this.componentRef = function (element) {
|
|
148
|
+
_this._element = element;
|
|
149
|
+
_this.base.wrapper = element;
|
|
150
|
+
};
|
|
145
151
|
_this.searchbarRef = function (searchbar) {
|
|
146
152
|
var input = _this._input = searchbar && searchbar.input;
|
|
147
153
|
if (input && _this.state.focused) {
|
|
@@ -230,19 +236,22 @@ var MultiSelectWithoutContext = /** @class */ (function (_super) {
|
|
|
230
236
|
}
|
|
231
237
|
};
|
|
232
238
|
_this.renderListContainer = function () {
|
|
239
|
+
var _a, _b;
|
|
233
240
|
var base = _this.base;
|
|
234
|
-
var
|
|
241
|
+
var _c = _this.props, header = _c.header, footer = _c.footer, allowCustom = _c.allowCustom, dir = _c.dir, _d = _c.data, data = _d === void 0 ? [] : _d, size = _c.size;
|
|
235
242
|
var popupSettings = _this.base.getPopupSettings();
|
|
236
243
|
var opened = _this.props.opened !== undefined ? _this.props.opened : _this.state.opened;
|
|
237
244
|
var text = _this.props.filter !== undefined ? _this.props.filter : _this.state.text;
|
|
238
|
-
var virtual = _this.props.virtual !== undefined;
|
|
239
245
|
var popupWidth = popupSettings.width !== undefined ? popupSettings.width : base.popupWidth;
|
|
240
246
|
var listContainerProps = {
|
|
241
247
|
dir: dir !== undefined ? dir : base.dirCalculated,
|
|
242
248
|
width: popupWidth,
|
|
243
249
|
popupSettings: {
|
|
244
|
-
popupClass: popupSettings.popupClass,
|
|
245
|
-
|
|
250
|
+
popupClass: kendo_react_common_1.classNames(popupSettings.popupClass, 'k-list', (_a = {},
|
|
251
|
+
_a["k-list-" + (sizeMap[size] || size)] = size,
|
|
252
|
+
_a['k-virtual-list'] = _this.base.vs.enabled,
|
|
253
|
+
_a)),
|
|
254
|
+
className: popupSettings.className,
|
|
246
255
|
animate: popupSettings.animate,
|
|
247
256
|
anchor: _this.element,
|
|
248
257
|
show: opened,
|
|
@@ -253,19 +262,17 @@ var MultiSelectWithoutContext = /** @class */ (function (_super) {
|
|
|
253
262
|
itemsCount: [data.length, _this.value.length]
|
|
254
263
|
};
|
|
255
264
|
var focusedType = _this.getFocusedState().focusedType;
|
|
256
|
-
var customItem = allowCustom && text && (React.createElement("div", { className:
|
|
257
|
-
|
|
265
|
+
var customItem = allowCustom && text && (React.createElement("div", { className: kendo_react_common_1.classNames('k-list', (_b = {},
|
|
266
|
+
_b["k-list-" + (sizeMap[size] || size)] = size,
|
|
267
|
+
_b)), key: "customitem", onClick: _this.customItemSelect, onMouseDown: preventDefault },
|
|
268
|
+
React.createElement("div", { className: kendo_react_common_1.classNames('k-list-item k-custom-item', { 'k-focus': isCustom(focusedType) }), style: { fontStyle: 'italic' } },
|
|
258
269
|
text,
|
|
259
|
-
React.createElement("span", { className: "k-icon k-i-plus", style: {
|
|
270
|
+
React.createElement("span", { className: "k-icon k-i-plus", style: { position: 'absolute', right: '0.5em' } }))));
|
|
260
271
|
return (React.createElement(ListContainer_1.default, __assign({}, listContainerProps),
|
|
261
|
-
|
|
262
|
-
|
|
263
|
-
|
|
264
|
-
|
|
265
|
-
_this.renderList(),
|
|
266
|
-
!virtual && footer,
|
|
267
|
-
_this.base.renderScrollElement())),
|
|
268
|
-
virtual && footer));
|
|
272
|
+
header && React.createElement("div", { className: "k-list-header" }, header),
|
|
273
|
+
customItem,
|
|
274
|
+
_this.renderList(),
|
|
275
|
+
footer && React.createElement("div", { className: "k-list-footer" }, footer)));
|
|
269
276
|
};
|
|
270
277
|
_this.renderList = function () {
|
|
271
278
|
var _a = _this.props, _b = _a.data, data = _b === void 0 ? [] : _b, textField = _a.textField, listNoDataRender = _a.listNoDataRender, itemRender = _a.itemRender, dataItemKey = _a.dataItemKey, virtual = _a.virtual;
|
|
@@ -275,8 +282,9 @@ var MultiSelectWithoutContext = /** @class */ (function (_super) {
|
|
|
275
282
|
var focusedIndex = _this.getFocusedState().focusedIndex;
|
|
276
283
|
var popupSettings = _this.base.getPopupSettings();
|
|
277
284
|
var translate = "translateY(" + vs.translate + "px)";
|
|
278
|
-
return (React.createElement(List_1.default, { id: _this.base.listBoxId, show: opened, data: data.slice(), focusedIndex: focusedIndex - skip, value: _this.value, textField: textField, valueField: dataItemKey, optionsGuid: _this.base.guid, listRef: function (list) { vs.list = _this.base.list = list; }, wrapperStyle: vs.enabled ?
|
|
279
|
-
|
|
285
|
+
return (React.createElement(List_1.default, { id: _this.base.listBoxId, show: opened, data: data.slice(), focusedIndex: focusedIndex - skip, value: _this.value, textField: textField, valueField: dataItemKey, optionsGuid: _this.base.guid, listRef: function (list) { 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, onMouseDown: preventDefault, onBlur: _this.handleBlur, onScroll: function (e) {
|
|
286
|
+
vs.scrollHandler(e);
|
|
287
|
+
}, wrapperRef: vs.scrollerRef, scroller: _this.base.renderScrollElement() }));
|
|
280
288
|
};
|
|
281
289
|
_this.customItemSelect = function (event) {
|
|
282
290
|
var _a;
|
|
@@ -320,6 +328,7 @@ var MultiSelectWithoutContext = /** @class */ (function (_super) {
|
|
|
320
328
|
if (_this.props.autoClose) {
|
|
321
329
|
_this.base.togglePopup(state);
|
|
322
330
|
}
|
|
331
|
+
event.stopPropagation();
|
|
323
332
|
_this.applyState(state);
|
|
324
333
|
};
|
|
325
334
|
_this.handleBlur = function (event) {
|
|
@@ -529,9 +538,9 @@ var MultiSelectWithoutContext = /** @class */ (function (_super) {
|
|
|
529
538
|
* @hidden
|
|
530
539
|
*/
|
|
531
540
|
MultiSelectWithoutContext.prototype.render = function () {
|
|
532
|
-
var
|
|
533
|
-
var
|
|
534
|
-
var
|
|
541
|
+
var _a, _b;
|
|
542
|
+
var _c = this.props, style = _c.style, className = _c.className, label = _c.label, dir = _c.dir, disabled = _c.disabled, tags = _c.tags, textField = _c.textField, dataItemKey = _c.dataItemKey, virtual = _c.virtual, size = _c.size, rounded = _c.rounded, fillMode = _c.fillMode, loading = _c.loading, filter = _c.filter;
|
|
543
|
+
var _d = this.state, text = _d.text, focused = _d.focused, focusedTag = _d.focusedTag;
|
|
535
544
|
var vs = this.base.vs;
|
|
536
545
|
var id = this.props.id || this._inputId;
|
|
537
546
|
vs.enabled = virtual !== undefined;
|
|
@@ -551,16 +560,27 @@ var MultiSelectWithoutContext = /** @class */ (function (_super) {
|
|
|
551
560
|
}
|
|
552
561
|
this.setItems(tagsToRender, this._tags);
|
|
553
562
|
var isValid = !this.validityStyles || this.validity.valid;
|
|
554
|
-
var
|
|
555
|
-
|
|
556
|
-
|
|
557
|
-
|
|
558
|
-
|
|
563
|
+
var clearButton = Boolean(filter !== undefined ? filter : text) || this.value.length > 0;
|
|
564
|
+
var component = (React.createElement("div", { ref: this.componentRef, className: kendo_react_common_1.classNames('k-multiselect k-input', className, (_a = {},
|
|
565
|
+
_a["k-input-" + (sizeMap[size] || size)] = size,
|
|
566
|
+
_a["k-rounded-" + (roundedMap[rounded] || rounded)] = rounded,
|
|
567
|
+
_a["k-input-" + fillMode] = fillMode,
|
|
568
|
+
_a['k-focus'] = focused && !disabled,
|
|
569
|
+
_a['k-invalid'] = !isValid,
|
|
570
|
+
_a['k-valid'] = isValid,
|
|
571
|
+
_a['k-disabled'] = disabled,
|
|
572
|
+
_a['k-loading'] = loading,
|
|
573
|
+
_a['k-required'] = this.required,
|
|
574
|
+
_a)), style: !label
|
|
559
575
|
? style
|
|
560
|
-
: __assign({}, style, { width: undefined }), dir: dir, onFocus: this.handleFocus, onBlur: this.handleBlur },
|
|
561
|
-
React.createElement("div", {
|
|
562
|
-
|
|
576
|
+
: __assign({}, style, { width: undefined }), dir: dir, onFocus: this.handleFocus, onBlur: this.handleBlur, onClick: this.handleWrapperClick, onMouseDown: utils_1.preventDefaultNonInputs },
|
|
577
|
+
React.createElement("div", { className: kendo_react_common_1.classNames('k-input-values k-chip-list k-selection-multiple', (_b = {},
|
|
578
|
+
_b["k-chip-list-" + (sizeMap[size] || size)] = size,
|
|
579
|
+
_b)), role: "listbox", id: 'tagslist-' + this.base.guid },
|
|
580
|
+
tagsToRender.length > 0 && React.createElement(TagList_1.default, { tagRender: this.props.tagRender, onTagDelete: this.onTagDelete, data: tagsToRender, guid: this.base.guid, focused: focusedTag ? tagsToRender.find(function (t) { return utils_1.matchTags(t, focusedTag, dataItemKey); }) : undefined, size: size }),
|
|
563
581
|
this.renderSearchbar(id)),
|
|
582
|
+
loading && React.createElement("span", { className: "k-icon k-i-loading" }),
|
|
583
|
+
clearButton && React.createElement(ClearButton_1.default, { onClick: this.clearButtonClick }),
|
|
564
584
|
this.renderListContainer()));
|
|
565
585
|
return label ? (React.createElement(kendo_react_labels_1.FloatingLabel, { label: label, editorId: id, editorValue: text || utils_1.getItemValue(this.value[0], textField), editorValid: isValid, editorDisabled: disabled, style: { width: style ? style.width : undefined }, children: component })) : component;
|
|
566
586
|
};
|
|
@@ -570,12 +590,11 @@ var MultiSelectWithoutContext = /** @class */ (function (_super) {
|
|
|
570
590
|
var text = (this.props.filter !== undefined ? this.props.filter : this.state.text) || '';
|
|
571
591
|
var opened = this.props.opened !== undefined ? this.props.opened : this.state.opened;
|
|
572
592
|
var focusedIndex = this.getFocusedState().focusedIndex;
|
|
573
|
-
var clearButton = !!text || this.value.length > 0;
|
|
574
593
|
var placeholderToShow = this.value.length === 0 && !text ? placeholder : undefined;
|
|
575
594
|
var ariaActivedescendant = activedescendant === settings_1.ActiveDescendant.TagsList && focusedTag !== undefined ?
|
|
576
595
|
"tag-" + this.base.guid + "-" + focusedTag.text.replace(/\s+/g, '-') :
|
|
577
596
|
"option-" + this.base.guid + "-" + focusedIndex;
|
|
578
|
-
return (React.createElement(SearchBar_1.default, { id: id, size: Math.max((placeholderToShow || '').length, text.length, 1), tabIndex: this.props.tabIndex, accessKey: this.props.accessKey, placeholder: placeholderToShow, value: text, onChange: this.onChangeHandler, onKeyDown: this.onInputKeyDown, ref: this.searchbarRef, disabled: disabled, expanded: opened, owns: this.base.listBoxId, activedescendant: ariaActivedescendant, ariaDescribedBy: "tagslist-" + this.base.guid + (ariaDescribedBy ? (' ' + ariaDescribedBy) : ''),
|
|
597
|
+
return (React.createElement(SearchBar_1.default, { id: id, size: Math.max((placeholderToShow || '').length, text.length, 1), tabIndex: this.props.tabIndex, accessKey: this.props.accessKey, placeholder: placeholderToShow, value: text, onChange: this.onChangeHandler, onKeyDown: this.onInputKeyDown, ref: this.searchbarRef, disabled: disabled, expanded: opened, owns: this.base.listBoxId, activedescendant: ariaActivedescendant, ariaDescribedBy: "tagslist-" + this.base.guid + (ariaDescribedBy ? (' ' + ariaDescribedBy) : ''), ariaLabelledBy: this.props.ariaLabelledBy }));
|
|
579
598
|
};
|
|
580
599
|
MultiSelectWithoutContext.prototype.onTagsNavigate = function (event, state) {
|
|
581
600
|
var keyCode = event.keyCode;
|
|
@@ -717,7 +736,7 @@ var MultiSelectWithoutContext = /** @class */ (function (_super) {
|
|
|
717
736
|
/**
|
|
718
737
|
* @hidden
|
|
719
738
|
*/
|
|
720
|
-
MultiSelectWithoutContext.defaultProps = __assign({}, DropDownBase_1.default.defaultProps, { autoClose: true, required: false });
|
|
739
|
+
MultiSelectWithoutContext.defaultProps = __assign({}, DropDownBase_1.default.defaultProps, { autoClose: true, required: false, size: 'medium', rounded: 'medium', fillMode: 'solid' });
|
|
721
740
|
return MultiSelectWithoutContext;
|
|
722
741
|
}(React.Component));
|
|
723
742
|
exports.MultiSelectWithoutContext = MultiSelectWithoutContext;
|
|
@@ -218,7 +218,7 @@ export interface MultiSelectProps extends FormComponentProps {
|
|
|
218
218
|
/**
|
|
219
219
|
* Fires when a tag element is about to be rendered ([see example]({% slug customrendering_multiselect %}#toc-tags)). Used to override the default appearance of the element.
|
|
220
220
|
*/
|
|
221
|
-
tagRender?: (tagData: TagData,
|
|
221
|
+
tagRender?: (tagData: TagData, tag: React.ReactElement) => React.ReactElement;
|
|
222
222
|
/**
|
|
223
223
|
* Sets the header component of the MultiSelect ([see example]({% slug customrendering_multiselect %}#toc-headers-and-footers)).
|
|
224
224
|
*/
|
|
@@ -227,4 +227,41 @@ export interface MultiSelectProps extends FormComponentProps {
|
|
|
227
227
|
* Sets the footer component of the MultiSelect ([see example]({% slug customrendering_multiselect %}#toc-headers-and-footers)).
|
|
228
228
|
*/
|
|
229
229
|
footer?: React.ReactNode;
|
|
230
|
+
/**
|
|
231
|
+
* Configures the `size` of the MultiSelect.
|
|
232
|
+
*
|
|
233
|
+
* The available options are:
|
|
234
|
+
* - small
|
|
235
|
+
* - medium
|
|
236
|
+
* - large
|
|
237
|
+
* - null—Does not set a size `className`.
|
|
238
|
+
*
|
|
239
|
+
* @default `medium`
|
|
240
|
+
*/
|
|
241
|
+
size?: null | 'small' | 'medium' | 'large';
|
|
242
|
+
/**
|
|
243
|
+
* Configures the `roundness` of the MultiSelect.
|
|
244
|
+
*
|
|
245
|
+
* The available options are:
|
|
246
|
+
* - small
|
|
247
|
+
* - medium
|
|
248
|
+
* - large
|
|
249
|
+
* - full
|
|
250
|
+
* - null—Does not set a rounded `className`.
|
|
251
|
+
*
|
|
252
|
+
* @default `medium`
|
|
253
|
+
*/
|
|
254
|
+
rounded?: null | 'small' | 'medium' | 'large' | 'full';
|
|
255
|
+
/**
|
|
256
|
+
* Configures the `fillMode` of the MultiSelect.
|
|
257
|
+
*
|
|
258
|
+
* The available options are:
|
|
259
|
+
* - solid
|
|
260
|
+
* - flat
|
|
261
|
+
* - outline
|
|
262
|
+
* - null—Does not set a fillMode `className`.
|
|
263
|
+
*
|
|
264
|
+
* @default `solid`
|
|
265
|
+
*/
|
|
266
|
+
fillMode?: null | 'solid' | 'flat' | 'outline';
|
|
230
267
|
}
|
|
@@ -20,13 +20,14 @@ export interface TagListProps {
|
|
|
20
20
|
guid: string;
|
|
21
21
|
focused?: TagData;
|
|
22
22
|
onTagDelete: (items: Array<any>, event: React.MouseEvent<HTMLSpanElement>) => void;
|
|
23
|
-
tagRender?: (tagData: TagData,
|
|
23
|
+
tagRender?: (tagData: TagData, tag: React.ReactElement) => React.ReactElement;
|
|
24
24
|
tag?: React.ComponentType<{
|
|
25
25
|
tagData: TagData;
|
|
26
26
|
guid: string;
|
|
27
27
|
focusedTag?: TagData;
|
|
28
28
|
onTagDelete: (items: Array<any>, event: React.MouseEvent<HTMLSpanElement>) => void;
|
|
29
29
|
}>;
|
|
30
|
+
size?: null | 'small' | 'medium' | 'large';
|
|
30
31
|
}
|
|
31
32
|
/**
|
|
32
33
|
* @hidden
|
|
@@ -14,10 +14,9 @@ var __extends = (this && this.__extends) || (function () {
|
|
|
14
14
|
})();
|
|
15
15
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
16
16
|
var React = require("react");
|
|
17
|
-
var
|
|
18
|
-
var
|
|
19
|
-
var
|
|
20
|
-
var stopPropagation = function (event) { return event.stopPropagation(); };
|
|
17
|
+
var kendo_react_buttons_1 = require("@progress/kendo-react-buttons");
|
|
18
|
+
var preventDefault = function (event) { return event.syntheticEvent.preventDefault(); };
|
|
19
|
+
var stopPropagation = function (event) { return event.syntheticEvent.stopPropagation(); };
|
|
21
20
|
/**
|
|
22
21
|
* @hidden
|
|
23
22
|
*/
|
|
@@ -27,17 +26,13 @@ var TagList = /** @class */ (function (_super) {
|
|
|
27
26
|
return _super !== null && _super.apply(this, arguments) || this;
|
|
28
27
|
}
|
|
29
28
|
TagList.prototype.render = function () {
|
|
30
|
-
var
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
React.createElement("span", { className: "k-icon k-i-close" }))));
|
|
38
|
-
return _this.props.tagRender ?
|
|
39
|
-
_this.props.tagRender(tagData, tag) : tag;
|
|
40
|
-
})));
|
|
29
|
+
var _a = this.props, data = _a.data, guid = _a.guid, focused = _a.focused, tagRender = _a.tagRender, TagComponent = _a.tag, onTagDelete = _a.onTagDelete, size = _a.size;
|
|
30
|
+
return (React.createElement(React.Fragment, null,
|
|
31
|
+
data.map(function (tagData, index) {
|
|
32
|
+
var tag = TagComponent ? (React.createElement(TagComponent, { tagData: tagData, guid: guid, focusedTag: focused, onTagDelete: onTagDelete })) : (React.createElement(kendo_react_buttons_1.Chip, { id: "tag-" + guid + "-" + tagData.text.replace(/\s+/g, '-'), "aria-selected": true, role: "option", "aria-setsize": data.length, key: tagData.text + index, text: tagData.text, removable: true, removeIcon: 'k-i-close', onRemove: function (e) { return onTagDelete.call(undefined, tagData.data, e.syntheticEvent); }, onMouseDown: preventDefault, onClick: stopPropagation, className: tagData === focused ? 'k-focus' : undefined, size: size }));
|
|
33
|
+
return tagRender ? tagRender(tagData, tag) : tag;
|
|
34
|
+
}),
|
|
35
|
+
this.props.children));
|
|
41
36
|
};
|
|
42
37
|
return TagList;
|
|
43
38
|
}(React.Component));
|
|
@@ -25,7 +25,10 @@ var ListNoData_1 = require("./../DropDownTree/ListNoData");
|
|
|
25
25
|
var messages_1 = require("./../messages");
|
|
26
26
|
var kendo_react_labels_1 = require("@progress/kendo-react-labels");
|
|
27
27
|
var TagList_1 = require("../MultiSelect/TagList");
|
|
28
|
+
var ClearButton_1 = require("../common/ClearButton");
|
|
29
|
+
var ListFilter_1 = require("../common/ListFilter");
|
|
28
30
|
var VALIDATION_MESSAGE = 'Please select a value from the list!';
|
|
31
|
+
var sizeMap = kendo_react_common_1.kendoThemeMaps.sizeMap, roundedMap = kendo_react_common_1.kendoThemeMaps.roundedMap;
|
|
29
32
|
var toLevel = function (hierarchicalIndex) {
|
|
30
33
|
return hierarchicalIndex.split('_').map(function (i) { return parseInt(i, 10); });
|
|
31
34
|
};
|
|
@@ -46,6 +49,9 @@ var defaultProps = {
|
|
|
46
49
|
width: '200px',
|
|
47
50
|
height: '200px'
|
|
48
51
|
},
|
|
52
|
+
size: 'medium',
|
|
53
|
+
rounded: 'medium',
|
|
54
|
+
fillMode: 'solid',
|
|
49
55
|
required: false,
|
|
50
56
|
validityStyles: true
|
|
51
57
|
};
|
|
@@ -63,11 +69,12 @@ exports.MultiSelectTreePropsContext = kendo_react_common_1.createPropsContext();
|
|
|
63
69
|
* Obtaining the `ref` returns an object of type [MultiSelectTreeHandle]({% slug api_dropdowns_multiselecttreehandle %}).
|
|
64
70
|
*/
|
|
65
71
|
exports.MultiSelectTree = React.forwardRef(function (directProps, ref) {
|
|
72
|
+
var _a, _b;
|
|
66
73
|
var props = kendo_react_common_1.usePropsContext(exports.MultiSelectTreePropsContext, directProps);
|
|
67
74
|
kendo_react_common_2.validatePackage(package_metadata_1.packageMetadata);
|
|
68
75
|
var componentGuid = React.useMemo(function () { return kendo_react_common_1.guid(); }, []);
|
|
69
76
|
var id = props.id || componentGuid;
|
|
70
|
-
var
|
|
77
|
+
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 ? kendo_react_common_1.noop : _f, _g = props.onClose, onClose = _g === void 0 ? kendo_react_common_1.noop : _g, placeholder = props.placeholder, label = props.label, name = props.name, _h = props.checkField, checkField = _h === void 0 ? defaultProps.checkField : _h, _j = props.checkIndeterminateField, checkIndeterminateField = _j === void 0 ? defaultProps.checkIndeterminateField : _j, _k = props.subItemsField, subItemsField = _k === void 0 ? defaultProps.subItemsField : _k, validationMessage = props.validationMessage, valid = props.valid, tags = props.tags, value = props.value, _l = props.required, required = _l === void 0 ? defaultProps.required : _l, _m = props.validityStyles, validityStyles = _m === void 0 ? defaultProps.validityStyles : _m;
|
|
71
78
|
var tabIndex = kendo_react_common_1.getTabIndex(props.tabIndex, disabled);
|
|
72
79
|
var targetRef = React.useRef(null);
|
|
73
80
|
var elementRef = React.useRef(null);
|
|
@@ -77,10 +84,10 @@ exports.MultiSelectTree = React.forwardRef(function (directProps, ref) {
|
|
|
77
84
|
var skipFocusRef = React.useRef(false);
|
|
78
85
|
var tagsToRenderRef = React.useRef([]);
|
|
79
86
|
var popupRef = React.useRef(null);
|
|
80
|
-
var
|
|
81
|
-
var
|
|
82
|
-
var
|
|
83
|
-
var
|
|
87
|
+
var _o = React.useState(), focusedTagState = _o[0], setFocusedTagState = _o[1];
|
|
88
|
+
var _p = React.useState(false), openState = _p[0], setOpenState = _p[1];
|
|
89
|
+
var _q = React.useState(false), focusedState = _q[0], setFocusedState = _q[1];
|
|
90
|
+
var _r = React.useState(''), filterState = _r[0], setFilterState = _r[1];
|
|
84
91
|
var isOpen = opened !== undefined ? opened : openState;
|
|
85
92
|
var hasValue = Boolean(Array.isArray(value) && value.length);
|
|
86
93
|
var validity = getValidity({ validationMessage: validationMessage, valid: valid, required: required }, hasValue);
|
|
@@ -285,13 +292,13 @@ exports.MultiSelectTree = React.forwardRef(function (directProps, ref) {
|
|
|
285
292
|
if (keyCode === kendo_react_common_1.Keys.esc || (altKey && keyCode === kendo_react_common_1.Keys.up)) {
|
|
286
293
|
closePopup(ev);
|
|
287
294
|
}
|
|
288
|
-
else if (treeviewElement && treeviewElement.querySelector('.k-
|
|
295
|
+
else if (treeviewElement && treeviewElement.querySelector('.k-focus') &&
|
|
289
296
|
(keyCode === kendo_react_common_1.Keys.up || keyCode === kendo_react_common_1.Keys.down ||
|
|
290
297
|
keyCode === kendo_react_common_1.Keys.left || keyCode === kendo_react_common_1.Keys.right ||
|
|
291
298
|
keyCode === kendo_react_common_1.Keys.home || keyCode === kendo_react_common_1.Keys.end)) {
|
|
292
299
|
if (keyCode === kendo_react_common_1.Keys.up && inputRef.current) {
|
|
293
300
|
var items = Array.from(treeviewElement.querySelectorAll('.k-treeview-item'));
|
|
294
|
-
var focusedItem = items.slice().reverse().find(function (i) { return Boolean(i && i.querySelector('.k-
|
|
301
|
+
var focusedItem = items.slice().reverse().find(function (i) { return Boolean(i && i.querySelector('.k-focus')); });
|
|
295
302
|
if (focusedItem && items.indexOf(focusedItem) === 0) {
|
|
296
303
|
return switchFocus(function () { focusElement(inputRef.current); });
|
|
297
304
|
}
|
|
@@ -370,26 +377,31 @@ exports.MultiSelectTree = React.forwardRef(function (directProps, ref) {
|
|
|
370
377
|
var NoData = props.listNoData || ListNoData_1.ListNoData;
|
|
371
378
|
var localization = kendo_react_intl_1.useLocalization();
|
|
372
379
|
var isValid = !validityStyles || validity.valid;
|
|
373
|
-
var
|
|
374
|
-
|
|
375
|
-
|
|
376
|
-
|
|
377
|
-
|
|
378
|
-
|
|
379
|
-
|
|
380
|
-
|
|
381
|
-
|
|
382
|
-
|
|
383
|
-
|
|
384
|
-
props.
|
|
385
|
-
|
|
386
|
-
|
|
387
|
-
|
|
388
|
-
|
|
389
|
-
|
|
390
|
-
|
|
391
|
-
|
|
392
|
-
|
|
380
|
+
var size = props.size, rounded = props.rounded, fillMode = props.fillMode;
|
|
381
|
+
var multiselecttree = (React.createElement("span", { className: kendo_react_common_1.classNames('k-multiselect k-input', props.className, (_a = {},
|
|
382
|
+
_a["k-input-" + (sizeMap[size] || size)] = size,
|
|
383
|
+
_a["k-rounded-" + (roundedMap[rounded] || rounded)] = rounded,
|
|
384
|
+
_a["k-input-" + fillMode] = fillMode,
|
|
385
|
+
_a['k-focus'] = focusedState && !disabled,
|
|
386
|
+
_a['k-invalid'] = !isValid,
|
|
387
|
+
_a['k-valid'] = isValid,
|
|
388
|
+
_a['k-disabled'] = disabled,
|
|
389
|
+
_a['k-loading'] = props.loading,
|
|
390
|
+
_a['k-required'] = required,
|
|
391
|
+
_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, 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, onClick: disabled ? undefined : onWrapperClick },
|
|
392
|
+
tagsToRenderRef.current.length > 0 && (React.createElement("div", { className: kendo_react_common_1.classNames('k-input-values k-chip-list k-selection-multiple', (_b = {},
|
|
393
|
+
_b["k-chip-list-" + (sizeMap[size] || size)] = size,
|
|
394
|
+
_b)), role: "listbox", id: 'tagslist-' + id },
|
|
395
|
+
React.createElement(TagList_1.default, { tag: props.tag, onTagDelete: onTagDelete, data: tagsToRenderRef.current, guid: id, focused: focusedTagState ? tagsToRenderRef.current.find(function (t) { return utils_1.matchTags(t, focusedTagState, dataItemKey); }) : undefined, size: size }))),
|
|
396
|
+
!hasValue && React.createElement("span", { className: "k-input-inner" },
|
|
397
|
+
React.createElement("span", { className: "k-input-value-text" }, "\u00A0")),
|
|
398
|
+
props.loading && React.createElement("span", { className: "k-icon k-i-loading" }),
|
|
399
|
+
hasValue && !disabled && React.createElement(ClearButton_1.default, { onClick: onClear }),
|
|
400
|
+
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%' } },
|
|
401
|
+
React.createElement("option", { value: props.valueMap ? props.valueMap.call(undefined, value) : value })),
|
|
402
|
+
React.createElement(kendo_react_popup_1.Popup, { popupClass: popupSettings.popupClass, className: kendo_react_common_1.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 },
|
|
403
|
+
props.filterable && (React.createElement(ListFilter_1.default, { value: props.filter === undefined ? filterState : props.filter, inputRef: inputRef, onChange: onFilterChange, onKeyDown: onInputKeyDown, tabIndex: tabIndex, size: size, rounded: rounded, fillMode: fillMode })),
|
|
404
|
+
data.length > 0 ? (React.createElement(kendo_react_treeview_1.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(messages_1.nodata, messages_1.messages[messages_1.nodata]))))));
|
|
393
405
|
return label ? (React.createElement(kendo_react_labels_1.FloatingLabel, { label: label, editorValue: hasValue, editorPlaceholder: placeholder, editorValid: isValid, editorDisabled: disabled, editorId: id, style: { width: style ? style.width : undefined }, children: multiselecttree, dir: dir })) : multiselecttree;
|
|
394
406
|
});
|
|
395
407
|
var propTypes = {
|
|
@@ -448,4 +460,5 @@ var propTypes = {
|
|
|
448
460
|
listNoData: PropTypes.func
|
|
449
461
|
};
|
|
450
462
|
exports.MultiSelectTree.displayName = 'KendoReactMultiSelectTree';
|
|
463
|
+
exports.MultiSelectTree.defaultProps = defaultProps;
|
|
451
464
|
exports.MultiSelectTree.propTypes = propTypes;
|
|
@@ -263,4 +263,41 @@ export interface MultiSelectTreeProps extends FormComponentProps {
|
|
|
263
263
|
*/
|
|
264
264
|
listNoData?: React.ComponentType<MultiSelectTreeListNoDataProps>;
|
|
265
265
|
tag?: React.ComponentType<MultiSelectTreeTagProps>;
|
|
266
|
+
/**
|
|
267
|
+
* Configures the `size` of the MultiSelectTree.
|
|
268
|
+
*
|
|
269
|
+
* The available options are:
|
|
270
|
+
* - small
|
|
271
|
+
* - medium
|
|
272
|
+
* - large
|
|
273
|
+
* - null—Does not set a size `className`.
|
|
274
|
+
*
|
|
275
|
+
* @default `medium`
|
|
276
|
+
*/
|
|
277
|
+
size?: null | 'small' | 'medium' | 'large';
|
|
278
|
+
/**
|
|
279
|
+
* Configures the `roundness` of the MultiSelectTree.
|
|
280
|
+
*
|
|
281
|
+
* The available options are:
|
|
282
|
+
* - small
|
|
283
|
+
* - medium
|
|
284
|
+
* - large
|
|
285
|
+
* - full
|
|
286
|
+
* - null—Does not set a rounded `className`.
|
|
287
|
+
*
|
|
288
|
+
* @default `medium`
|
|
289
|
+
*/
|
|
290
|
+
rounded?: null | 'small' | 'medium' | 'large' | 'full';
|
|
291
|
+
/**
|
|
292
|
+
* Configures the `fillMode` of the MultiSelectTree.
|
|
293
|
+
*
|
|
294
|
+
* The available options are:
|
|
295
|
+
* - solid
|
|
296
|
+
* - flat
|
|
297
|
+
* - outline
|
|
298
|
+
* - null—Does not set a fillMode `className`.
|
|
299
|
+
*
|
|
300
|
+
* @default `solid`
|
|
301
|
+
*/
|
|
302
|
+
fillMode?: null | 'solid' | 'flat' | 'outline';
|
|
266
303
|
}
|
|
@@ -28,7 +28,8 @@ var ClearButton = /** @class */ (function (_super) {
|
|
|
28
28
|
}
|
|
29
29
|
ClearButton.prototype.render = function () {
|
|
30
30
|
var title = kendo_react_intl_1.provideLocalizationService(this).toLanguageString(messages_1.clear, messages_1.messages[messages_1.clear]);
|
|
31
|
-
return (React.createElement("span", { className: "k-
|
|
31
|
+
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" })));
|
|
32
33
|
};
|
|
33
34
|
return ClearButton;
|
|
34
35
|
}(React.Component));
|
|
@@ -68,7 +68,7 @@ export default class DropDownBase {
|
|
|
68
68
|
}>>;
|
|
69
69
|
popupClass: PropTypes.Requireable<string>;
|
|
70
70
|
className: PropTypes.Requireable<string>;
|
|
71
|
-
appendTo: PropTypes.Requireable<
|
|
71
|
+
appendTo: PropTypes.Requireable<PropTypes.ReactElementLike>;
|
|
72
72
|
width: PropTypes.Requireable<string | number>;
|
|
73
73
|
height: PropTypes.Requireable<string | number>;
|
|
74
74
|
}>>;
|
|
@@ -112,7 +112,7 @@ export default class DropDownBase {
|
|
|
112
112
|
}>>;
|
|
113
113
|
popupClass: PropTypes.Requireable<string>;
|
|
114
114
|
className: PropTypes.Requireable<string>;
|
|
115
|
-
appendTo: PropTypes.Requireable<
|
|
115
|
+
appendTo: PropTypes.Requireable<PropTypes.ReactElementLike>;
|
|
116
116
|
width: PropTypes.Requireable<string | number>;
|
|
117
117
|
height: PropTypes.Requireable<string | number>;
|
|
118
118
|
}>>;
|
|
@@ -158,7 +158,6 @@ export default class DropDownBase {
|
|
|
158
158
|
triggerOnPageChange(state: InternalState, skip: number, take: number): void;
|
|
159
159
|
triggerPageChangeCornerItems(item: any, state: InternalState): void;
|
|
160
160
|
scrollToVirtualItem: (virtual: VirtualizationSettings, selectedItemIndex: number) => void;
|
|
161
|
-
renderScrollWrapper: (children: React.ReactNode, onScroll?: (event: React.UIEvent<HTMLDivElement>) => void) => {};
|
|
162
161
|
renderScrollElement: () => JSX.Element;
|
|
163
162
|
getPopupSettings(): DropDownsPopupSettings;
|
|
164
163
|
}
|
|
@@ -28,6 +28,7 @@ var DropDownBase = /** @class */ (function () {
|
|
|
28
28
|
this.handleItemClick = function (index, event) {
|
|
29
29
|
var state = _this.initState();
|
|
30
30
|
state.syntheticEvent = event;
|
|
31
|
+
event.stopPropagation();
|
|
31
32
|
_this.component.handleItemSelect(index, state);
|
|
32
33
|
_this.togglePopup(state);
|
|
33
34
|
_this.applyState(state);
|
|
@@ -98,21 +99,6 @@ var DropDownBase = /** @class */ (function () {
|
|
|
98
99
|
}
|
|
99
100
|
window.setTimeout(function () { return vs.enabled = true; }, 10);
|
|
100
101
|
};
|
|
101
|
-
// Common rendering
|
|
102
|
-
this.renderScrollWrapper = function (children, onScroll) {
|
|
103
|
-
var popupSettings = _this.getPopupSettings();
|
|
104
|
-
var vs = _this.vs;
|
|
105
|
-
return vs.enabled ? (React.createElement("div", { onScroll: function (e) {
|
|
106
|
-
vs.scrollHandler(e);
|
|
107
|
-
if (onScroll) {
|
|
108
|
-
onScroll.call(undefined, e);
|
|
109
|
-
}
|
|
110
|
-
}, ref: vs.scrollerRef, style: {
|
|
111
|
-
height: popupSettings.height,
|
|
112
|
-
overflowY: 'scroll'
|
|
113
|
-
} }, children)) :
|
|
114
|
-
(children);
|
|
115
|
-
};
|
|
116
102
|
this.renderScrollElement = function () {
|
|
117
103
|
var vs = _this.vs;
|
|
118
104
|
return vs.enabled && (React.createElement("div", { ref: function (element) { return vs.scrollElement = element; }, key: 'scrollElementKey' }));
|
|
@@ -235,7 +221,7 @@ var DropDownBase = /** @class */ (function () {
|
|
|
235
221
|
})]),
|
|
236
222
|
popupClass: PropTypes.string,
|
|
237
223
|
className: PropTypes.string,
|
|
238
|
-
appendTo: PropTypes.
|
|
224
|
+
appendTo: PropTypes.element,
|
|
239
225
|
width: PropTypes.oneOfType([PropTypes.string, PropTypes.number]),
|
|
240
226
|
height: PropTypes.oneOfType([PropTypes.string, PropTypes.number])
|
|
241
227
|
}),
|
|
@@ -28,6 +28,7 @@ export interface ListProps {
|
|
|
28
28
|
onMouseDown?: (event: React.MouseEvent<HTMLDivElement>) => void;
|
|
29
29
|
onBlur?: (event: React.FocusEvent<HTMLDivElement>) => void;
|
|
30
30
|
onScroll?: (event: React.UIEvent<HTMLDivElement>) => void;
|
|
31
|
+
scroller?: any;
|
|
31
32
|
}
|
|
32
33
|
/**
|
|
33
34
|
* @hidden
|
package/dist/npm/common/List.js
CHANGED
|
@@ -56,10 +56,11 @@ var List = /** @class */ (function (_super) {
|
|
|
56
56
|
};
|
|
57
57
|
List.prototype.render = function () {
|
|
58
58
|
var localizationService = kendo_react_intl_1.provideLocalizationService(this);
|
|
59
|
-
var _a = this.props, id = _a.id, show = _a.show, wrapperCssClass = _a.wrapperCssClass, wrapperStyle = _a.wrapperStyle, listStyle = _a.listStyle, listRef = _a.listRef, wrapperRef = _a.wrapperRef, _b = _a.listClassName, listClassName = _b === void 0 ? 'k-list' : _b;
|
|
59
|
+
var _a = this.props, id = _a.id, show = _a.show, wrapperCssClass = _a.wrapperCssClass, wrapperStyle = _a.wrapperStyle, listStyle = _a.listStyle, listRef = _a.listRef, wrapperRef = _a.wrapperRef, _b = _a.listClassName, listClassName = _b === void 0 ? 'k-list-ul' : _b;
|
|
60
60
|
var items = this.renderItems();
|
|
61
61
|
return (items.length ? (React.createElement("div", { className: wrapperCssClass, style: wrapperStyle, ref: wrapperRef, onMouseDown: this.props.onMouseDown, onBlur: this.props.onBlur, onScroll: this.props.onScroll, unselectable: "on" },
|
|
62
|
-
React.createElement("ul", { id: id, role: "listbox", "aria-hidden": !show ? true : undefined, className: listClassName
|
|
62
|
+
React.createElement("ul", { id: id, role: "listbox", "aria-hidden": !show ? true : undefined, className: listClassName, ref: listRef, style: listStyle }, items),
|
|
63
|
+
this.props.scroller)) : this.renderNoValueElement(localizationService));
|
|
63
64
|
};
|
|
64
65
|
return List;
|
|
65
66
|
}(React.Component));
|
|
@@ -27,8 +27,8 @@ var ListDefaultItem = /** @class */ (function (_super) {
|
|
|
27
27
|
}
|
|
28
28
|
ListDefaultItem.prototype.render = function () {
|
|
29
29
|
var _a = this.props, selected = _a.selected, defaultItem = _a.defaultItem, textField = _a.textField;
|
|
30
|
-
return (React.createElement("div", { onClick: this.props.onClick, onMouseDown: preventDefault, className: kendo_react_common_1.classNames('k-list-optionlabel', {
|
|
31
|
-
'k-
|
|
30
|
+
return (React.createElement("div", { onClick: this.props.onClick, onMouseDown: preventDefault, style: { position: 'unset' }, className: kendo_react_common_1.classNames('k-list-optionlabel', {
|
|
31
|
+
'k-selected': selected
|
|
32
32
|
}) }, utils_1.getItemValue(defaultItem, textField) || ''));
|
|
33
33
|
};
|
|
34
34
|
return ListDefaultItem;
|
|
@@ -4,8 +4,13 @@ import * as React from 'react';
|
|
|
4
4
|
*/
|
|
5
5
|
export interface ListFilterProps {
|
|
6
6
|
value?: string;
|
|
7
|
+
inputRef?: any;
|
|
8
|
+
tabIndex?: number;
|
|
7
9
|
onChange?: React.ChangeEventHandler<HTMLInputElement>;
|
|
8
10
|
onKeyDown?: React.KeyboardEventHandler<HTMLInputElement>;
|
|
11
|
+
size?: null | 'small' | 'medium' | 'large';
|
|
12
|
+
rounded?: null | 'small' | 'medium' | 'large' | 'full';
|
|
13
|
+
fillMode?: null | 'solid' | 'flat' | 'outline';
|
|
9
14
|
}
|
|
10
15
|
/**
|
|
11
16
|
* @hidden
|