@zohodesk/components 1.4.21 → 1.4.22
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/README.md +29 -0
- package/assets/Appearance/dark/mode/Component_DarkMode.module.css +15 -0
- package/assets/Appearance/light/mode/Component_LightMode.module.css +15 -0
- package/assets/Appearance/pureDark/mode/Component_PureDarkMode.module.css +15 -0
- package/es/ColorSelect/ColorMultiSelect.js +38 -0
- package/es/ColorSelect/ColorSelect.module.css +3 -0
- package/es/ColorSelect/ColorSingleSelect.js +83 -0
- package/es/ColorSelect/__tests__/ColorMultiSelect.spec.js +71 -0
- package/es/ColorSelect/__tests__/ColorSingleSelect.spec.js +80 -0
- package/es/ColorSelect/__tests__/__snapshots__/ColorMultiSelect.spec.js.snap +536 -0
- package/es/ColorSelect/__tests__/__snapshots__/ColorSingleSelect.spec.js.snap +422 -0
- package/es/ColorSelect/_shared/ColorIndicator/ColorIndicator.js +33 -0
- package/es/ColorSelect/_shared/ColorIndicator/ColorIndicator.module.css +19 -0
- package/es/ColorSelect/_shared/ColorIndicator/__tests__/ColorIndicator.spec.js +79 -0
- package/es/ColorSelect/_shared/ColorIndicator/__tests__/__snapshots__/ColorIndicator.spec.js.snap +106 -0
- package/es/ColorSelect/_shared/ColorIndicator/props/defaultProps.js +8 -0
- package/es/ColorSelect/_shared/ColorIndicator/props/propTypes.js +10 -0
- package/es/ColorSelect/_shared/ColoredTag/ColoredTag.js +33 -0
- package/es/ColorSelect/_shared/ColoredTag/__tests__/ColoredTag.spec.js +50 -0
- package/es/ColorSelect/_shared/ColoredTag/__tests__/__snapshots__/ColoredTag.spec.js.snap +101 -0
- package/es/ColorSelect/_shared/ColoredTag/props/propTypes.js +10 -0
- package/es/ColorSelect/_shared/helpers/renderHelpers.js +43 -0
- package/es/ColorSelect/props/defaultProps.js +12 -0
- package/es/ColorSelect/props/propTypes.js +17 -0
- package/es/DateTime/__tests__/__snapshots__/DateTime.spec.js.snap +3 -18
- package/es/DateTime/__tests__/__snapshots__/DateWidget.spec.js.snap +1 -6
- package/es/DateTime/__tests__/__snapshots__/Time.spec.js.snap +3 -18
- package/es/ListItem/ListItem.js +6 -1
- package/es/ListItem/ListItem.module.css +6 -0
- package/es/ListItem/__tests__/ListItem.spec.js +8 -0
- package/es/ListItem/__tests__/__snapshots__/ListItem.spec.js.snap +47 -0
- package/es/ListItem/props/propTypes.js +1 -0
- package/es/MultiSelect/MultiSelect.js +11 -5
- package/es/MultiSelect/SelectedOptions.js +24 -1
- package/es/MultiSelect/Suggestions.js +4 -1
- package/es/MultiSelect/__tests__/MultiSelect.spec.js +38 -0
- package/es/MultiSelect/__tests__/SelectedOptions.spec.js +13 -0
- package/es/MultiSelect/__tests__/Suggestions.spec.js +12 -0
- package/es/MultiSelect/__tests__/__snapshots__/AdvancedGroupMultiSelect.spec.js.snap +1 -3
- package/es/MultiSelect/__tests__/__snapshots__/AdvancedMultiSelect.spec.js.snap +3 -9
- package/es/MultiSelect/__tests__/__snapshots__/MultiSelect.spec.js.snap +91 -12
- package/es/MultiSelect/__tests__/__snapshots__/MultiSelectWithAvatar.spec.js.snap +1 -3
- package/es/MultiSelect/__tests__/__snapshots__/SelectedOptions.spec.js.snap +15 -0
- package/es/MultiSelect/__tests__/__snapshots__/Suggestions.spec.js.snap +66 -0
- package/es/MultiSelect/props/propTypes.js +6 -0
- package/es/Select/Select.js +67 -5
- package/es/Select/__tests__/Select.spec.js +10 -0
- package/es/Select/__tests__/__snapshots__/GroupSelect.spec.js.snap +1 -6
- package/es/Select/__tests__/__snapshots__/Select.spec.js.snap +111 -441
- package/es/Select/__tests__/__snapshots__/SelectWithIcon.spec.js.snap +1 -6
- package/es/Select/props/defaultProps.js +2 -1
- package/es/Select/props/propTypes.js +3 -1
- package/es/TextBox/__tests__/TextBox.spec.js +1 -1
- package/es/TextBoxIcon/TextBoxIcon.js +17 -12
- package/es/TextBoxIcon/TextBoxIcon.module.css +3 -38
- package/es/TextBoxIcon/__tests__/TextBoxIcon.spec.js +9 -2
- package/es/TextBoxIcon/__tests__/__snapshots__/TextBoxIcon.spec.js.snap +78 -224
- package/es/TextBoxIcon/props/propTypes.js +1 -2
- package/es/shared/ArrowIcon/ArrowIcon.js +51 -0
- package/es/shared/ArrowIcon/ArrowIcon.module.css +43 -0
- package/es/shared/ArrowIcon/__tests__/ArrowIcon.spec.js +100 -0
- package/es/shared/ArrowIcon/__tests__/__snapshots__/ArrowIcon.spec.js.snap +221 -0
- package/es/shared/ArrowIcon/props/defaultProps.js +11 -0
- package/es/shared/ArrowIcon/props/propTypes.js +17 -0
- package/es/shared/InputFieldLine/InputFieldLine.js +45 -0
- package/es/shared/InputFieldLine/InputFieldLine.module.css +88 -0
- package/es/shared/InputFieldLine/__tests__/InputFieldLine.spec.js +114 -0
- package/es/shared/InputFieldLine/__tests__/__snapshots__/InputFieldLine.spec.js.snap +194 -0
- package/es/shared/InputFieldLine/props/defaultProps.js +16 -0
- package/es/shared/InputFieldLine/props/propTypes.js +22 -0
- package/es/utils/Common.js +3 -2
- package/es/utils/dropDownUtils.js +7 -1
- package/lib/ColorSelect/ColorMultiSelect.js +71 -0
- package/lib/ColorSelect/ColorSelect.module.css +3 -0
- package/lib/ColorSelect/ColorSingleSelect.js +111 -0
- package/lib/ColorSelect/__tests__/ColorMultiSelect.spec.js +82 -0
- package/lib/ColorSelect/__tests__/ColorSingleSelect.spec.js +91 -0
- package/lib/ColorSelect/__tests__/__snapshots__/ColorMultiSelect.spec.js.snap +536 -0
- package/lib/ColorSelect/__tests__/__snapshots__/ColorSingleSelect.spec.js.snap +422 -0
- package/lib/ColorSelect/_shared/ColorIndicator/ColorIndicator.js +47 -0
- package/lib/ColorSelect/_shared/ColorIndicator/ColorIndicator.module.css +19 -0
- package/lib/ColorSelect/_shared/ColorIndicator/__tests__/ColorIndicator.spec.js +86 -0
- package/lib/ColorSelect/_shared/ColorIndicator/__tests__/__snapshots__/ColorIndicator.spec.js.snap +106 -0
- package/lib/ColorSelect/_shared/ColorIndicator/props/defaultProps.js +15 -0
- package/lib/ColorSelect/_shared/ColorIndicator/props/propTypes.js +21 -0
- package/lib/ColorSelect/_shared/ColoredTag/ColoredTag.js +69 -0
- package/lib/ColorSelect/_shared/ColoredTag/__tests__/ColoredTag.spec.js +58 -0
- package/lib/ColorSelect/_shared/ColoredTag/__tests__/__snapshots__/ColoredTag.spec.js.snap +101 -0
- package/lib/ColorSelect/_shared/ColoredTag/props/propTypes.js +29 -0
- package/lib/ColorSelect/_shared/helpers/renderHelpers.js +63 -0
- package/lib/ColorSelect/props/defaultProps.js +32 -0
- package/lib/ColorSelect/props/propTypes.js +39 -0
- package/lib/DateTime/__tests__/__snapshots__/DateTime.spec.js.snap +3 -18
- package/lib/DateTime/__tests__/__snapshots__/DateWidget.spec.js.snap +1 -6
- package/lib/DateTime/__tests__/__snapshots__/Time.spec.js.snap +3 -18
- package/lib/ListItem/ListItem.js +6 -1
- package/lib/ListItem/ListItem.module.css +6 -0
- package/lib/ListItem/__tests__/ListItem.spec.js +12 -4
- package/lib/ListItem/__tests__/__snapshots__/ListItem.spec.js.snap +47 -0
- package/lib/ListItem/props/propTypes.js +1 -0
- package/lib/MultiSelect/MultiSelect.js +11 -5
- package/lib/MultiSelect/SelectedOptions.js +24 -1
- package/lib/MultiSelect/Suggestions.js +5 -1
- package/lib/MultiSelect/__tests__/MultiSelect.spec.js +42 -2
- package/lib/MultiSelect/__tests__/SelectedOptions.spec.js +15 -0
- package/lib/MultiSelect/__tests__/Suggestions.spec.js +16 -2
- package/lib/MultiSelect/__tests__/__snapshots__/AdvancedGroupMultiSelect.spec.js.snap +1 -3
- package/lib/MultiSelect/__tests__/__snapshots__/AdvancedMultiSelect.spec.js.snap +3 -9
- package/lib/MultiSelect/__tests__/__snapshots__/MultiSelect.spec.js.snap +91 -12
- package/lib/MultiSelect/__tests__/__snapshots__/MultiSelectWithAvatar.spec.js.snap +1 -3
- package/lib/MultiSelect/__tests__/__snapshots__/SelectedOptions.spec.js.snap +15 -0
- package/lib/MultiSelect/__tests__/__snapshots__/Suggestions.spec.js.snap +66 -0
- package/lib/MultiSelect/props/propTypes.js +6 -0
- package/lib/Select/Select.js +67 -4
- package/lib/Select/__tests__/Select.spec.js +12 -0
- package/lib/Select/__tests__/__snapshots__/GroupSelect.spec.js.snap +1 -6
- package/lib/Select/__tests__/__snapshots__/Select.spec.js.snap +111 -441
- package/lib/Select/__tests__/__snapshots__/SelectWithIcon.spec.js.snap +1 -6
- package/lib/Select/props/defaultProps.js +2 -1
- package/lib/Select/props/propTypes.js +3 -1
- package/lib/TextBox/__tests__/TextBox.spec.js +36 -36
- package/lib/TextBoxIcon/TextBoxIcon.js +18 -13
- package/lib/TextBoxIcon/TextBoxIcon.module.css +3 -38
- package/lib/TextBoxIcon/__tests__/TextBoxIcon.spec.js +9 -2
- package/lib/TextBoxIcon/__tests__/__snapshots__/TextBoxIcon.spec.js.snap +78 -224
- package/lib/TextBoxIcon/props/propTypes.js +1 -2
- package/lib/shared/ArrowIcon/ArrowIcon.js +65 -0
- package/lib/shared/ArrowIcon/ArrowIcon.module.css +43 -0
- package/lib/shared/ArrowIcon/__tests__/ArrowIcon.spec.js +107 -0
- package/lib/shared/ArrowIcon/__tests__/__snapshots__/ArrowIcon.spec.js.snap +221 -0
- package/lib/shared/ArrowIcon/props/defaultProps.js +18 -0
- package/lib/shared/ArrowIcon/props/propTypes.js +28 -0
- package/lib/shared/InputFieldLine/InputFieldLine.js +57 -0
- package/lib/shared/InputFieldLine/InputFieldLine.module.css +88 -0
- package/lib/shared/InputFieldLine/__tests__/InputFieldLine.spec.js +122 -0
- package/lib/shared/InputFieldLine/__tests__/__snapshots__/InputFieldLine.spec.js.snap +194 -0
- package/lib/shared/InputFieldLine/props/defaultProps.js +23 -0
- package/lib/shared/InputFieldLine/props/propTypes.js +39 -0
- package/lib/utils/Common.js +8 -4
- package/lib/utils/dropDownUtils.js +10 -1
- package/package.json +9 -7
|
@@ -78,6 +78,53 @@ exports[`ListItem ListItem with renderValueRightPlaceholderNode 1`] = `
|
|
|
78
78
|
</DocumentFragment>
|
|
79
79
|
`;
|
|
80
80
|
|
|
81
|
+
exports[`ListItem Should render with renderBeforeChildren 1`] = `
|
|
82
|
+
<DocumentFragment>
|
|
83
|
+
<li
|
|
84
|
+
class="list medium default withBorder flex rowdir vCenter"
|
|
85
|
+
data-a11y-inset-focus="true"
|
|
86
|
+
data-id="listItem"
|
|
87
|
+
data-selector-id="listItem"
|
|
88
|
+
data-test-id="listItem"
|
|
89
|
+
role="option"
|
|
90
|
+
tabindex="0"
|
|
91
|
+
>
|
|
92
|
+
<div
|
|
93
|
+
class="leftBox grow basis shrinkOff"
|
|
94
|
+
data-id="boxComponent"
|
|
95
|
+
data-selector-id="box"
|
|
96
|
+
data-test-id="boxComponent"
|
|
97
|
+
>
|
|
98
|
+
<div
|
|
99
|
+
class="titleBox shrinkOff"
|
|
100
|
+
data-id="boxComponent"
|
|
101
|
+
data-selector-id="box"
|
|
102
|
+
data-test-id="boxComponent"
|
|
103
|
+
>
|
|
104
|
+
<div
|
|
105
|
+
class="beforeChild basisAuto shrinkOn"
|
|
106
|
+
data-id="boxComponent"
|
|
107
|
+
data-selector-id="box"
|
|
108
|
+
data-test-id="boxComponent"
|
|
109
|
+
>
|
|
110
|
+
<span>
|
|
111
|
+
Before children
|
|
112
|
+
</span>
|
|
113
|
+
</div>
|
|
114
|
+
<div
|
|
115
|
+
class="children basisAuto shrinkOn"
|
|
116
|
+
data-id="boxComponent"
|
|
117
|
+
data-selector-id="box"
|
|
118
|
+
data-test-id="boxComponent"
|
|
119
|
+
>
|
|
120
|
+
Content
|
|
121
|
+
</div>
|
|
122
|
+
</div>
|
|
123
|
+
</div>
|
|
124
|
+
</li>
|
|
125
|
+
</DocumentFragment>
|
|
126
|
+
`;
|
|
127
|
+
|
|
81
128
|
exports[`ListItem rendering the defult props 1`] = `
|
|
82
129
|
<DocumentFragment>
|
|
83
130
|
<li
|
|
@@ -84,6 +84,7 @@ var ListItem_Props = {
|
|
|
84
84
|
ListItemProps: _propTypes["default"].object
|
|
85
85
|
}),
|
|
86
86
|
secondaryValue: _propTypes["default"].string,
|
|
87
|
+
renderBeforeChildren: _propTypes["default"].oneOfType([_propTypes["default"].node, _propTypes["default"].func]),
|
|
87
88
|
renderValueRightPlaceholderNode: _propTypes["default"].oneOfType([_propTypes["default"].node, _propTypes["default"].func])
|
|
88
89
|
};
|
|
89
90
|
exports.ListItem_Props = ListItem_Props;
|
|
@@ -105,6 +105,9 @@ function _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.g
|
|
|
105
105
|
|
|
106
106
|
/* eslint-disable react/no-unused-prop-types */
|
|
107
107
|
var dummyArray = [];
|
|
108
|
+
var a11yProps = {
|
|
109
|
+
role: 'option'
|
|
110
|
+
};
|
|
108
111
|
|
|
109
112
|
var MultiSelectComponent = /*#__PURE__*/function (_React$Component) {
|
|
110
113
|
_inherits(MultiSelectComponent, _React$Component);
|
|
@@ -1015,6 +1018,7 @@ var MultiSelectComponent = /*#__PURE__*/function (_React$Component) {
|
|
|
1015
1018
|
isPopupOpen = _this$props14.isPopupOpen,
|
|
1016
1019
|
ariaErrorId = _this$props14.ariaErrorId,
|
|
1017
1020
|
customProps = _this$props14.customProps,
|
|
1021
|
+
renderCustomSelectedValue = _this$props14.renderCustomSelectedValue,
|
|
1018
1022
|
isFocus = _this$props14.isFocus,
|
|
1019
1023
|
isPopupReady = _this$props14.isPopupReady,
|
|
1020
1024
|
renderCustomClearComponent = _this$props14.renderCustomClearComponent,
|
|
@@ -1055,7 +1059,11 @@ var MultiSelectComponent = /*#__PURE__*/function (_React$Component) {
|
|
|
1055
1059
|
onSelect: this.handleClickSelectedOption,
|
|
1056
1060
|
size: size,
|
|
1057
1061
|
palette: palette,
|
|
1058
|
-
dataId: "".concat(dataId, "_selectedOptions")
|
|
1062
|
+
dataId: "".concat(dataId, "_selectedOptions"),
|
|
1063
|
+
renderCustomSelectedValue: renderCustomSelectedValue,
|
|
1064
|
+
isPopupReady: isPopupReady,
|
|
1065
|
+
isPopupOpen: isPopupOpen,
|
|
1066
|
+
isDisabled: isDisabled
|
|
1059
1067
|
}), /*#__PURE__*/_react["default"].createElement(_Layout.Box, {
|
|
1060
1068
|
flexible: true,
|
|
1061
1069
|
className: _MultiSelectModule["default"].wrapper,
|
|
@@ -1247,6 +1255,8 @@ var MultiSelectComponent = /*#__PURE__*/function (_React$Component) {
|
|
|
1247
1255
|
}, isSearching ? /*#__PURE__*/_react["default"].createElement("div", {
|
|
1248
1256
|
className: _MultiSelectModule["default"][palette]
|
|
1249
1257
|
}, searchText) : suggestions.length ? /*#__PURE__*/_react["default"].createElement(_Suggestions["default"], _extends({
|
|
1258
|
+
a11y: a11yProps,
|
|
1259
|
+
needBorder: false,
|
|
1250
1260
|
key: searchStr.trim(),
|
|
1251
1261
|
suggestions: suggestions,
|
|
1252
1262
|
isVirtualizerEnabled: isVirtualizerEnabled,
|
|
@@ -1256,13 +1266,9 @@ var MultiSelectComponent = /*#__PURE__*/function (_React$Component) {
|
|
|
1256
1266
|
hoverOption: hoverOption,
|
|
1257
1267
|
onClick: this.handleSelectOption,
|
|
1258
1268
|
onMouseEnter: this.handleMouseEnter,
|
|
1259
|
-
needBorder: false,
|
|
1260
1269
|
dataId: "".concat(dataId, "_Options"),
|
|
1261
1270
|
palette: palette,
|
|
1262
1271
|
selectedOptions: selectedOptionIds,
|
|
1263
|
-
a11y: {
|
|
1264
|
-
role: 'option'
|
|
1265
|
-
},
|
|
1266
1272
|
limit: limit,
|
|
1267
1273
|
limitReachedMessage: limitReachedMessage
|
|
1268
1274
|
}, SuggestionsProps)) : /*#__PURE__*/_react["default"].createElement(_EmptyState["default"], {
|
|
@@ -68,7 +68,11 @@ var SelectedOptions = /*#__PURE__*/function (_React$PureComponent) {
|
|
|
68
68
|
size = _this$props.size,
|
|
69
69
|
palette = _this$props.palette,
|
|
70
70
|
dataId = _this$props.dataId,
|
|
71
|
-
limit = _this$props.limit
|
|
71
|
+
limit = _this$props.limit,
|
|
72
|
+
renderCustomSelectedValue = _this$props.renderCustomSelectedValue,
|
|
73
|
+
isPopupOpen = _this$props.isPopupOpen,
|
|
74
|
+
isPopupReady = _this$props.isPopupReady,
|
|
75
|
+
isInputDisabled = _this$props.isDisabled;
|
|
72
76
|
var isDarkPalette = palette === 'dark' ? 'dark' : 'danger';
|
|
73
77
|
var selectedData = limit && limit > 0 ? selectedOptions.slice(0, limit) : selectedOptions;
|
|
74
78
|
return /*#__PURE__*/_react["default"].createElement(_react["default"].Fragment, null, selectedData.map(function (option) {
|
|
@@ -111,6 +115,25 @@ var SelectedOptions = /*#__PURE__*/function (_React$PureComponent) {
|
|
|
111
115
|
iconName: icon,
|
|
112
116
|
iconSize: iconSize
|
|
113
117
|
})));
|
|
118
|
+
} else if (optionType === 'custom') {
|
|
119
|
+
return /*#__PURE__*/_react["default"].createElement(_Layout.Box, {
|
|
120
|
+
className: "".concat(_SelectedOptionsModule["default"].tag, " ").concat(_SelectedOptionsModule["default"][size]),
|
|
121
|
+
key: "".concat(id, "customTag"),
|
|
122
|
+
dataId: dataId
|
|
123
|
+
}, typeof renderCustomSelectedValue == 'function' ? renderCustomSelectedValue({
|
|
124
|
+
onRemove: isDisabled || isReadOnly ? null : onRemove,
|
|
125
|
+
palette: isDarkPalette,
|
|
126
|
+
onSelectTag: isReadOnly ? null : onSelect,
|
|
127
|
+
getRef: getRef,
|
|
128
|
+
isReadOnly: isReadOnly,
|
|
129
|
+
isPopupReady: isPopupReady,
|
|
130
|
+
isPopupOpen: isPopupOpen,
|
|
131
|
+
isDisabled: isInputDisabled,
|
|
132
|
+
size: size,
|
|
133
|
+
highLightedSelectOptions: highLightedSelectOptions,
|
|
134
|
+
isActive: highLightedSelectOptions.indexOf(id) >= 0,
|
|
135
|
+
option: option
|
|
136
|
+
}) : renderCustomSelectedValue);
|
|
114
137
|
}
|
|
115
138
|
|
|
116
139
|
return /*#__PURE__*/_react["default"].createElement(_Layout.Box, {
|
|
@@ -25,6 +25,8 @@ var _Layout = require("../Layout");
|
|
|
25
25
|
|
|
26
26
|
var _Common = require("../utils/Common");
|
|
27
27
|
|
|
28
|
+
var _utils = require("@zohodesk/utils");
|
|
29
|
+
|
|
28
30
|
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; }
|
|
29
31
|
|
|
30
32
|
function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
|
|
@@ -100,6 +102,7 @@ var Suggestions = /*#__PURE__*/function (_React$PureComponent) {
|
|
|
100
102
|
needBorder = _this$props.needBorder,
|
|
101
103
|
_this$props$selectedO = _this$props.selectedOptions,
|
|
102
104
|
selectedOptions = _this$props$selectedO === void 0 ? _Common.DUMMY_ARRAY : _this$props$selectedO,
|
|
105
|
+
renderBeforeChildren = _this$props.renderBeforeChildren,
|
|
103
106
|
activeId = _this$props.activeId,
|
|
104
107
|
hoverId = _this$props.hoverId,
|
|
105
108
|
listItemSize = _this$props.listItemSize,
|
|
@@ -214,7 +217,8 @@ var Suggestions = /*#__PURE__*/function (_React$PureComponent) {
|
|
|
214
217
|
size: listItemSize,
|
|
215
218
|
palette: palette,
|
|
216
219
|
a11y: list_a11y,
|
|
217
|
-
secondaryValue: secondaryValue
|
|
220
|
+
secondaryValue: secondaryValue,
|
|
221
|
+
renderBeforeChildren: (0, _utils.renderNode)(renderBeforeChildren, suggestion)
|
|
218
222
|
}));
|
|
219
223
|
}
|
|
220
224
|
}, {
|
|
@@ -8,6 +8,35 @@ var _MultiSelect = _interopRequireDefault(require("../MultiSelect"));
|
|
|
8
8
|
|
|
9
9
|
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; }
|
|
10
10
|
|
|
11
|
+
var options = [{
|
|
12
|
+
id: 1,
|
|
13
|
+
text: 'custom 1',
|
|
14
|
+
optionType: 'custom'
|
|
15
|
+
}, {
|
|
16
|
+
id: 2,
|
|
17
|
+
text: 'custom 2',
|
|
18
|
+
optionType: 'custom'
|
|
19
|
+
}, {
|
|
20
|
+
id: 3,
|
|
21
|
+
text: 'custom 3',
|
|
22
|
+
optionType: 'custom'
|
|
23
|
+
}, {
|
|
24
|
+
id: 4,
|
|
25
|
+
text: 'custom 4',
|
|
26
|
+
optionType: 'custom'
|
|
27
|
+
}, {
|
|
28
|
+
id: 5,
|
|
29
|
+
text: 'custom 5',
|
|
30
|
+
optionType: 'custom'
|
|
31
|
+
}, {
|
|
32
|
+
id: 6,
|
|
33
|
+
text: 'custom 6',
|
|
34
|
+
optionType: 'custom'
|
|
35
|
+
}, {
|
|
36
|
+
id: 7,
|
|
37
|
+
text: 'custom 7',
|
|
38
|
+
optionType: 'custom'
|
|
39
|
+
}];
|
|
11
40
|
var testData = ['text1', 'text2', 'text3', 'text4', 'text5', 'text6', 'text7', 'text8', 'text9', 'text10'];
|
|
12
41
|
var testSelectedData = ['text1', 'text2', 'text3'];
|
|
13
42
|
describe('MultiSelect', function () {
|
|
@@ -17,8 +46,19 @@ describe('MultiSelect', function () {
|
|
|
17
46
|
|
|
18
47
|
expect(asFragment()).toMatchSnapshot();
|
|
19
48
|
});
|
|
20
|
-
test('
|
|
49
|
+
test('Should render with renderCustomSelectedValue', function () {
|
|
21
50
|
var _render2 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_MultiSelect["default"], {
|
|
51
|
+
options: options,
|
|
52
|
+
renderCustomSelectedValue: function renderCustomSelectedValue() {
|
|
53
|
+
return /*#__PURE__*/_react["default"].createElement("span", null, "MultiSelect Custom Value");
|
|
54
|
+
}
|
|
55
|
+
})),
|
|
56
|
+
asFragment = _render2.asFragment;
|
|
57
|
+
|
|
58
|
+
expect(asFragment()).toMatchSnapshot();
|
|
59
|
+
});
|
|
60
|
+
test('rendering with limit feature', function () {
|
|
61
|
+
var _render3 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_MultiSelect["default"], {
|
|
22
62
|
valueField: "id",
|
|
23
63
|
textField: "text",
|
|
24
64
|
options: testData,
|
|
@@ -36,7 +76,7 @@ describe('MultiSelect', function () {
|
|
|
36
76
|
needResponsive: true,
|
|
37
77
|
limit: 3
|
|
38
78
|
})),
|
|
39
|
-
asFragment =
|
|
79
|
+
asFragment = _render3.asFragment;
|
|
40
80
|
|
|
41
81
|
expect(asFragment()).toMatchSnapshot();
|
|
42
82
|
});
|
|
@@ -32,4 +32,19 @@ describe('SelectedOptions', function () {
|
|
|
32
32
|
|
|
33
33
|
expect(asFragment()).toMatchSnapshot();
|
|
34
34
|
});
|
|
35
|
+
test('Should render with renderCustomSelectedValue', function () {
|
|
36
|
+
var _render3 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_SelectedOptions["default"], {
|
|
37
|
+
highLightedSelectOptions: [],
|
|
38
|
+
selectedOptions: [{
|
|
39
|
+
value: 'SelectedObject1',
|
|
40
|
+
optionType: 'custom'
|
|
41
|
+
}],
|
|
42
|
+
renderCustomSelectedValue: function renderCustomSelectedValue() {
|
|
43
|
+
return /*#__PURE__*/_react["default"].createElement("span", null, " SelectedOptions Custom Value");
|
|
44
|
+
}
|
|
45
|
+
})),
|
|
46
|
+
asFragment = _render3.asFragment;
|
|
47
|
+
|
|
48
|
+
expect(asFragment()).toMatchSnapshot();
|
|
49
|
+
});
|
|
35
50
|
});
|
|
@@ -64,14 +64,28 @@ describe('Suggestions', function () {
|
|
|
64
64
|
|
|
65
65
|
expect(asFragment()).toMatchSnapshot();
|
|
66
66
|
});
|
|
67
|
-
test('
|
|
67
|
+
test('Should render with renderBeforeChildren', function () {
|
|
68
68
|
var _render2 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Suggestions["default"], {
|
|
69
|
+
suggestions: [{
|
|
70
|
+
value: 'Suggestions Option 1',
|
|
71
|
+
id: '1'
|
|
72
|
+
}],
|
|
73
|
+
renderBeforeChildren: function renderBeforeChildren() {
|
|
74
|
+
return /*#__PURE__*/_react["default"].createElement("span", null, "Suggestions Before Children");
|
|
75
|
+
}
|
|
76
|
+
})),
|
|
77
|
+
asFragment = _render2.asFragment;
|
|
78
|
+
|
|
79
|
+
expect(asFragment()).toMatchSnapshot();
|
|
80
|
+
});
|
|
81
|
+
test('rendering with limit props', function () {
|
|
82
|
+
var _render3 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Suggestions["default"], {
|
|
69
83
|
selectedOptions: [1, 2, 3, 4],
|
|
70
84
|
suggestions: sampleData,
|
|
71
85
|
limit: 3,
|
|
72
86
|
limitReachedMessage: "Limit Reached"
|
|
73
87
|
})),
|
|
74
|
-
asFragment =
|
|
88
|
+
asFragment = _render3.asFragment;
|
|
75
89
|
|
|
76
90
|
expect(asFragment()).toMatchSnapshot();
|
|
77
91
|
});
|
|
@@ -25,10 +25,8 @@ exports[`AdvancedGroupMultiSelect rendering the defult props 1`] = `
|
|
|
25
25
|
"
|
|
26
26
|
/>
|
|
27
27
|
<div
|
|
28
|
-
class="container
|
|
29
|
-
data-id="containerComponent"
|
|
28
|
+
class="varClass customContainer effect container custmInputWrapper flex rowdir"
|
|
30
29
|
data-selector-id="textBoxIcon"
|
|
31
|
-
data-test-id="containerComponent"
|
|
32
30
|
>
|
|
33
31
|
<div
|
|
34
32
|
class="grow basis shrinkOff"
|
|
@@ -25,10 +25,8 @@ exports[`AdvancedMultiSelect rendering the defult props 1`] = `
|
|
|
25
25
|
"
|
|
26
26
|
/>
|
|
27
27
|
<div
|
|
28
|
-
class="container
|
|
29
|
-
data-id="containerComponent"
|
|
28
|
+
class="varClass customContainer effect container custmInputWrapper flex rowdir"
|
|
30
29
|
data-selector-id="textBoxIcon"
|
|
31
|
-
data-test-id="containerComponent"
|
|
32
30
|
>
|
|
33
31
|
<div
|
|
34
32
|
class="grow basis shrinkOff"
|
|
@@ -98,10 +96,8 @@ exports[`AdvancedMultiSelect rendering the options array with objects and string
|
|
|
98
96
|
"
|
|
99
97
|
/>
|
|
100
98
|
<div
|
|
101
|
-
class="container
|
|
102
|
-
data-id="containerComponent"
|
|
99
|
+
class="varClass customContainer effect container custmInputWrapper flex rowdir"
|
|
103
100
|
data-selector-id="textBoxIcon"
|
|
104
|
-
data-test-id="containerComponent"
|
|
105
101
|
>
|
|
106
102
|
<div
|
|
107
103
|
class="grow basis shrinkOff"
|
|
@@ -346,10 +342,8 @@ exports[`AdvancedMultiSelect rendering the options array with only objects using
|
|
|
346
342
|
"
|
|
347
343
|
/>
|
|
348
344
|
<div
|
|
349
|
-
class="container
|
|
350
|
-
data-id="containerComponent"
|
|
345
|
+
class="varClass customContainer effect container custmInputWrapper flex rowdir"
|
|
351
346
|
data-selector-id="textBoxIcon"
|
|
352
|
-
data-test-id="containerComponent"
|
|
353
347
|
>
|
|
354
348
|
<div
|
|
355
349
|
class="grow basis shrinkOff"
|
|
@@ -1,5 +1,88 @@
|
|
|
1
1
|
// Jest Snapshot v1, https://goo.gl/fbAQLP
|
|
2
2
|
|
|
3
|
+
exports[`MultiSelect Should render with renderCustomSelectedValue 1`] = `
|
|
4
|
+
<DocumentFragment>
|
|
5
|
+
<div
|
|
6
|
+
class="wrapper effect"
|
|
7
|
+
data-id="multiSelect"
|
|
8
|
+
data-selector-id="multiSelect"
|
|
9
|
+
data-test-id="multiSelect"
|
|
10
|
+
>
|
|
11
|
+
<div
|
|
12
|
+
class="container medium borderColor_default hasBorder flex cover rowdir wrap vCenter"
|
|
13
|
+
data-id="containerComponent"
|
|
14
|
+
data-selector-id="container"
|
|
15
|
+
data-test-id="containerComponent"
|
|
16
|
+
>
|
|
17
|
+
<div
|
|
18
|
+
class="wrapper grow basisAuto shrinkOn"
|
|
19
|
+
data-id="boxComponent"
|
|
20
|
+
data-selector-id="box"
|
|
21
|
+
data-test-id="boxComponent"
|
|
22
|
+
>
|
|
23
|
+
<span
|
|
24
|
+
class=" custmSpan custmSpanMedium
|
|
25
|
+
"
|
|
26
|
+
/>
|
|
27
|
+
<div
|
|
28
|
+
class="varClass customContainer effect container custmInputWrapper flex rowdir"
|
|
29
|
+
data-selector-id="textBoxIcon"
|
|
30
|
+
>
|
|
31
|
+
<div
|
|
32
|
+
class="grow basis shrinkOff"
|
|
33
|
+
data-id="boxComponent"
|
|
34
|
+
data-selector-id="box"
|
|
35
|
+
data-test-id="boxComponent"
|
|
36
|
+
>
|
|
37
|
+
<input
|
|
38
|
+
aria-expanded="false"
|
|
39
|
+
aria-haspopup="true"
|
|
40
|
+
aria-required="true"
|
|
41
|
+
autocomplete="off"
|
|
42
|
+
class=" container medium default effect borderColor_default "
|
|
43
|
+
data-id="multiSelect_textBox"
|
|
44
|
+
data-selector-id="textBoxIcon"
|
|
45
|
+
data-test-id="multiSelect_textBox"
|
|
46
|
+
maxlength="250"
|
|
47
|
+
role="combobox"
|
|
48
|
+
type="text"
|
|
49
|
+
value=""
|
|
50
|
+
/>
|
|
51
|
+
</div>
|
|
52
|
+
<div
|
|
53
|
+
class="iconContainer shrinkOff"
|
|
54
|
+
data-id="boxComponent"
|
|
55
|
+
data-selector-id="box"
|
|
56
|
+
data-test-id="boxComponent"
|
|
57
|
+
>
|
|
58
|
+
<div
|
|
59
|
+
class="flex cover rowdir"
|
|
60
|
+
data-id="containerComponent"
|
|
61
|
+
data-selector-id="container"
|
|
62
|
+
data-test-id="containerComponent"
|
|
63
|
+
>
|
|
64
|
+
<div
|
|
65
|
+
class="icon shrinkOff"
|
|
66
|
+
data-id="boxComponent"
|
|
67
|
+
data-selector-id="box"
|
|
68
|
+
data-test-id="boxComponent"
|
|
69
|
+
>
|
|
70
|
+
<div
|
|
71
|
+
class="rightPlaceholder inflex rowdir vCenter"
|
|
72
|
+
data-id="containerComponent"
|
|
73
|
+
data-selector-id="container"
|
|
74
|
+
data-test-id="containerComponent"
|
|
75
|
+
/>
|
|
76
|
+
</div>
|
|
77
|
+
</div>
|
|
78
|
+
</div>
|
|
79
|
+
</div>
|
|
80
|
+
</div>
|
|
81
|
+
</div>
|
|
82
|
+
</div>
|
|
83
|
+
</DocumentFragment>
|
|
84
|
+
`;
|
|
85
|
+
|
|
3
86
|
exports[`MultiSelect rendering the defult props 1`] = `
|
|
4
87
|
<DocumentFragment>
|
|
5
88
|
<div
|
|
@@ -25,10 +108,8 @@ exports[`MultiSelect rendering the defult props 1`] = `
|
|
|
25
108
|
"
|
|
26
109
|
/>
|
|
27
110
|
<div
|
|
28
|
-
class="container
|
|
29
|
-
data-id="containerComponent"
|
|
111
|
+
class="varClass customContainer effect container custmInputWrapper flex rowdir"
|
|
30
112
|
data-selector-id="textBoxIcon"
|
|
31
|
-
data-test-id="containerComponent"
|
|
32
113
|
>
|
|
33
114
|
<div
|
|
34
115
|
class="grow basis shrinkOff"
|
|
@@ -106,7 +187,7 @@ exports[`MultiSelect rendering with limit feature 1`] = `
|
|
|
106
187
|
data-test-id="multiSelect_selectedOptions"
|
|
107
188
|
>
|
|
108
189
|
<div
|
|
109
|
-
aria-labelledby="
|
|
190
|
+
aria-labelledby="7"
|
|
110
191
|
class="container effect medium lgRadius danger pointer "
|
|
111
192
|
data-id="tag_Tag"
|
|
112
193
|
data-selector-id="tag"
|
|
@@ -117,7 +198,7 @@ exports[`MultiSelect rendering with limit feature 1`] = `
|
|
|
117
198
|
<div
|
|
118
199
|
aria-hidden="true"
|
|
119
200
|
class="text mediumtext"
|
|
120
|
-
id="
|
|
201
|
+
id="7"
|
|
121
202
|
>
|
|
122
203
|
text1
|
|
123
204
|
</div>
|
|
@@ -156,7 +237,7 @@ exports[`MultiSelect rendering with limit feature 1`] = `
|
|
|
156
237
|
data-test-id="multiSelect_selectedOptions"
|
|
157
238
|
>
|
|
158
239
|
<div
|
|
159
|
-
aria-labelledby="
|
|
240
|
+
aria-labelledby="8"
|
|
160
241
|
class="container effect medium lgRadius danger pointer "
|
|
161
242
|
data-id="tag_Tag"
|
|
162
243
|
data-selector-id="tag"
|
|
@@ -167,7 +248,7 @@ exports[`MultiSelect rendering with limit feature 1`] = `
|
|
|
167
248
|
<div
|
|
168
249
|
aria-hidden="true"
|
|
169
250
|
class="text mediumtext"
|
|
170
|
-
id="
|
|
251
|
+
id="8"
|
|
171
252
|
>
|
|
172
253
|
text2
|
|
173
254
|
</div>
|
|
@@ -206,7 +287,7 @@ exports[`MultiSelect rendering with limit feature 1`] = `
|
|
|
206
287
|
data-test-id="multiSelect_selectedOptions"
|
|
207
288
|
>
|
|
208
289
|
<div
|
|
209
|
-
aria-labelledby="
|
|
290
|
+
aria-labelledby="9"
|
|
210
291
|
class="container effect medium lgRadius danger pointer "
|
|
211
292
|
data-id="tag_Tag"
|
|
212
293
|
data-selector-id="tag"
|
|
@@ -217,7 +298,7 @@ exports[`MultiSelect rendering with limit feature 1`] = `
|
|
|
217
298
|
<div
|
|
218
299
|
aria-hidden="true"
|
|
219
300
|
class="text mediumtext"
|
|
220
|
-
id="
|
|
301
|
+
id="9"
|
|
221
302
|
>
|
|
222
303
|
text3
|
|
223
304
|
</div>
|
|
@@ -260,10 +341,8 @@ exports[`MultiSelect rendering with limit feature 1`] = `
|
|
|
260
341
|
"
|
|
261
342
|
/>
|
|
262
343
|
<div
|
|
263
|
-
class="container
|
|
264
|
-
data-id="containerComponent"
|
|
344
|
+
class="varClass customContainer effect container custmInputWrapper flex rowdir"
|
|
265
345
|
data-selector-id="textBoxIcon"
|
|
266
|
-
data-test-id="containerComponent"
|
|
267
346
|
>
|
|
268
347
|
<div
|
|
269
348
|
class="grow basis shrinkOff"
|
|
@@ -25,10 +25,8 @@ exports[`MultiSelectWithAvatar rendering the defult props 1`] = `
|
|
|
25
25
|
"
|
|
26
26
|
/>
|
|
27
27
|
<div
|
|
28
|
-
class="container
|
|
29
|
-
data-id="containerComponent"
|
|
28
|
+
class="varClass customContainer effect container custmInputWrapper flex rowdir"
|
|
30
29
|
data-selector-id="textBoxIcon"
|
|
31
|
-
data-test-id="containerComponent"
|
|
32
30
|
>
|
|
33
31
|
<div
|
|
34
32
|
class="grow basis shrinkOff"
|
|
@@ -1,5 +1,20 @@
|
|
|
1
1
|
// Jest Snapshot v1, https://goo.gl/fbAQLP
|
|
2
2
|
|
|
3
|
+
exports[`SelectedOptions Should render with renderCustomSelectedValue 1`] = `
|
|
4
|
+
<DocumentFragment>
|
|
5
|
+
<div
|
|
6
|
+
class="tag medium shrinkOff"
|
|
7
|
+
data-id="selectedOptions"
|
|
8
|
+
data-selector-id="box"
|
|
9
|
+
data-test-id="selectedOptions"
|
|
10
|
+
>
|
|
11
|
+
<span>
|
|
12
|
+
SelectedOptions Custom Value
|
|
13
|
+
</span>
|
|
14
|
+
</div>
|
|
15
|
+
</DocumentFragment>
|
|
16
|
+
`;
|
|
17
|
+
|
|
3
18
|
exports[`SelectedOptions rendering the basic select options 1`] = `
|
|
4
19
|
<DocumentFragment>
|
|
5
20
|
<div
|
|
@@ -1,5 +1,71 @@
|
|
|
1
1
|
// Jest Snapshot v1, https://goo.gl/fbAQLP
|
|
2
2
|
|
|
3
|
+
exports[`Suggestions Should render with renderBeforeChildren 1`] = `
|
|
4
|
+
<DocumentFragment>
|
|
5
|
+
<div
|
|
6
|
+
class="flex coldir"
|
|
7
|
+
data-id="containerComponent"
|
|
8
|
+
data-selector-id="container"
|
|
9
|
+
data-test-id="containerComponent"
|
|
10
|
+
tabindex="0"
|
|
11
|
+
>
|
|
12
|
+
<div
|
|
13
|
+
class="shrinkOff"
|
|
14
|
+
data-id="undefined"
|
|
15
|
+
data-selector-id="box"
|
|
16
|
+
data-test-id="undefined"
|
|
17
|
+
>
|
|
18
|
+
<li
|
|
19
|
+
aria-label="Suggestions Option 1"
|
|
20
|
+
aria-selected="false"
|
|
21
|
+
class="list medium default withBorder flex rowdir vCenter"
|
|
22
|
+
data-a11y-inset-focus="true"
|
|
23
|
+
data-a11y-list-active="false"
|
|
24
|
+
data-id="Suggestions Option 1"
|
|
25
|
+
data-selector-id="listItem"
|
|
26
|
+
data-test-id="Suggestions Option 1"
|
|
27
|
+
data-title="Suggestions Option 1"
|
|
28
|
+
role="option"
|
|
29
|
+
tabindex="0"
|
|
30
|
+
>
|
|
31
|
+
<div
|
|
32
|
+
class="leftBox grow basis shrinkOff"
|
|
33
|
+
data-id="boxComponent"
|
|
34
|
+
data-selector-id="box"
|
|
35
|
+
data-test-id="boxComponent"
|
|
36
|
+
>
|
|
37
|
+
<div
|
|
38
|
+
class="titleBox shrinkOff"
|
|
39
|
+
data-id="boxComponent"
|
|
40
|
+
data-selector-id="box"
|
|
41
|
+
data-test-id="boxComponent"
|
|
42
|
+
>
|
|
43
|
+
<div
|
|
44
|
+
class="beforeChild basisAuto shrinkOn"
|
|
45
|
+
data-id="boxComponent"
|
|
46
|
+
data-selector-id="box"
|
|
47
|
+
data-test-id="boxComponent"
|
|
48
|
+
>
|
|
49
|
+
<span>
|
|
50
|
+
Suggestions Before Children
|
|
51
|
+
</span>
|
|
52
|
+
</div>
|
|
53
|
+
<div
|
|
54
|
+
class="value basisAuto shrinkOn"
|
|
55
|
+
data-id="boxComponent"
|
|
56
|
+
data-selector-id="box"
|
|
57
|
+
data-test-id="boxComponent"
|
|
58
|
+
>
|
|
59
|
+
Suggestions Option 1
|
|
60
|
+
</div>
|
|
61
|
+
</div>
|
|
62
|
+
</div>
|
|
63
|
+
</li>
|
|
64
|
+
</div>
|
|
65
|
+
</div>
|
|
66
|
+
</DocumentFragment>
|
|
67
|
+
`;
|
|
68
|
+
|
|
3
69
|
exports[`Suggestions rendering the defult props 1`] = `
|
|
4
70
|
<DocumentFragment>
|
|
5
71
|
<div
|
|
@@ -139,6 +139,7 @@ var MultiSelect_propTypes = {
|
|
|
139
139
|
allowValueFallback: _propTypes["default"].bool,
|
|
140
140
|
renderCustomClearComponent: _propTypes["default"].func,
|
|
141
141
|
renderCustomToggleIndicator: _propTypes["default"].oneOfType([_propTypes["default"].func, _propTypes["default"].node]),
|
|
142
|
+
renderCustomSelectedValue: _propTypes["default"].oneOfType([_propTypes["default"].func, _propTypes["default"].node]),
|
|
142
143
|
limit: _propTypes["default"].number,
|
|
143
144
|
secondaryField: _propTypes["default"].string
|
|
144
145
|
};
|
|
@@ -181,6 +182,10 @@ var SelectedOptions_propTypes = {
|
|
|
181
182
|
size: _propTypes["default"].oneOf(['medium', 'xmedium']),
|
|
182
183
|
palette: _propTypes["default"].string,
|
|
183
184
|
dataId: _propTypes["default"].string,
|
|
185
|
+
isDisabled: _propTypes["default"].bool,
|
|
186
|
+
isPopupReady: _propTypes["default"].bool,
|
|
187
|
+
isPopupOpen: _propTypes["default"].bool,
|
|
188
|
+
renderCustomSelectedValue: _propTypes["default"].oneOfType([_propTypes["default"].func, _propTypes["default"].node]),
|
|
184
189
|
limit: _propTypes["default"].number
|
|
185
190
|
};
|
|
186
191
|
exports.SelectedOptions_propTypes = SelectedOptions_propTypes;
|
|
@@ -216,6 +221,7 @@ var Suggestions_propTypes = {
|
|
|
216
221
|
optionType: _propTypes["default"].string,
|
|
217
222
|
listItemProps: _propTypes["default"].object
|
|
218
223
|
})),
|
|
224
|
+
renderBeforeChildren: _propTypes["default"].oneOfType([_propTypes["default"].func, _propTypes["default"].node]),
|
|
219
225
|
limit: _propTypes["default"].number,
|
|
220
226
|
limitReachedMessage: _propTypes["default"].string
|
|
221
227
|
};
|