@zohodesk/components 1.0.0-alpha-214 → 1.0.0-alpha-218

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.
Files changed (64) hide show
  1. package/README.md +21 -1
  2. package/es/Appearance/dark/mode/darkMode.module.css +3 -5
  3. package/es/Appearance/dark/themes/blue/blueDarkComponentTheme.module.css +5 -0
  4. package/es/Appearance/dark/themes/green/greenDarkCTATheme.module.css +1 -1
  5. package/es/Appearance/dark/themes/green/greenDarkComponentTheme.module.css +5 -0
  6. package/es/Appearance/dark/themes/orange/orangeDarkComponentTheme.module.css +5 -0
  7. package/es/Appearance/dark/themes/red/redDarkCTATheme.module.css +1 -1
  8. package/es/Appearance/dark/themes/red/redDarkComponentTheme.module.css +5 -0
  9. package/es/Appearance/dark/themes/yellow/yellowDarkComponentTheme.module.css +5 -0
  10. package/es/Appearance/default/mode/defaultMode.module.css +11 -11
  11. package/es/Appearance/default/themes/blue/blueDefaultComponentTheme.module.css +5 -0
  12. package/es/Appearance/default/themes/green/greenDefaultCTATheme.module.css +1 -1
  13. package/es/Appearance/default/themes/green/greenDefaultComponentTheme.module.css +5 -0
  14. package/es/Appearance/default/themes/orange/orangeDefaultCTATheme.module.css +1 -1
  15. package/es/Appearance/default/themes/orange/orangeDefaultComponentTheme.module.css +5 -0
  16. package/es/Appearance/default/themes/red/redDefaultCTATheme.module.css +1 -1
  17. package/es/Appearance/default/themes/red/redDefaultComponentTheme.module.css +5 -0
  18. package/es/Appearance/default/themes/yellow/yellowDefaultComponentTheme.module.css +5 -0
  19. package/es/ListItem/ListItemWithAvatar.js +11 -3
  20. package/es/ListItem/ListItemWithIcon.js +12 -4
  21. package/es/MultiSelect/AdvancedMultiSelect.js +21 -9
  22. package/es/MultiSelect/MultiSelect.js +1 -1
  23. package/es/MultiSelect/Suggestions.js +11 -2
  24. package/es/MultiSelect/docs/AdvancedMultiSelect__default.docs.js +18 -3
  25. package/es/Select/GroupSelect.js +4 -4
  26. package/es/Select/Select.js +37 -10
  27. package/es/Select/docs/Select__default.docs.js +79 -0
  28. package/es/Tag/Tag.module.css +1 -0
  29. package/es/TextBox/TextBox.js +7 -4
  30. package/es/TextBoxIcon/TextBoxIcon.js +13 -4
  31. package/es/utils/Common.js +1 -1
  32. package/es/utils/dropDownUtils.js +12 -5
  33. package/lib/Appearance/dark/mode/darkMode.module.css +3 -5
  34. package/lib/Appearance/dark/themes/blue/blueDarkComponentTheme.module.css +5 -0
  35. package/lib/Appearance/dark/themes/green/greenDarkCTATheme.module.css +1 -1
  36. package/lib/Appearance/dark/themes/green/greenDarkComponentTheme.module.css +5 -0
  37. package/lib/Appearance/dark/themes/orange/orangeDarkComponentTheme.module.css +5 -0
  38. package/lib/Appearance/dark/themes/red/redDarkCTATheme.module.css +1 -1
  39. package/lib/Appearance/dark/themes/red/redDarkComponentTheme.module.css +5 -0
  40. package/lib/Appearance/dark/themes/yellow/yellowDarkComponentTheme.module.css +5 -0
  41. package/lib/Appearance/default/mode/defaultMode.module.css +11 -11
  42. package/lib/Appearance/default/themes/blue/blueDefaultComponentTheme.module.css +5 -0
  43. package/lib/Appearance/default/themes/green/greenDefaultCTATheme.module.css +1 -1
  44. package/lib/Appearance/default/themes/green/greenDefaultComponentTheme.module.css +5 -0
  45. package/lib/Appearance/default/themes/orange/orangeDefaultCTATheme.module.css +1 -1
  46. package/lib/Appearance/default/themes/orange/orangeDefaultComponentTheme.module.css +5 -0
  47. package/lib/Appearance/default/themes/red/redDefaultCTATheme.module.css +1 -1
  48. package/lib/Appearance/default/themes/red/redDefaultComponentTheme.module.css +5 -0
  49. package/lib/Appearance/default/themes/yellow/yellowDefaultComponentTheme.module.css +5 -0
  50. package/lib/ListItem/ListItemWithAvatar.js +9 -3
  51. package/lib/ListItem/ListItemWithIcon.js +11 -4
  52. package/lib/MultiSelect/AdvancedMultiSelect.js +20 -8
  53. package/lib/MultiSelect/MultiSelect.js +1 -1
  54. package/lib/MultiSelect/Suggestions.js +16 -2
  55. package/lib/MultiSelect/docs/AdvancedMultiSelect__default.docs.js +18 -3
  56. package/lib/Select/GroupSelect.js +3 -3
  57. package/lib/Select/Select.js +38 -10
  58. package/lib/Select/docs/Select__default.docs.js +79 -0
  59. package/lib/Tag/Tag.module.css +1 -0
  60. package/lib/TextBox/TextBox.js +6 -4
  61. package/lib/TextBoxIcon/TextBoxIcon.js +12 -4
  62. package/lib/utils/Common.js +1 -1
  63. package/lib/utils/dropDownUtils.js +13 -4
  64. package/package.json +1 -1
@@ -22,6 +22,7 @@
22
22
  /* tag */
23
23
  --zdt_tag_dark_text: #d0d0d4;
24
24
  --zdt_tag_dark_bg: #42485f;
25
+ --zdt_tag_dark_hover_text: #d0d0d4;
25
26
  --zdt_tag_dark_hover_bg: #503348;
26
27
  --zdt_tag_dark_close_bg: #864654;
27
28
  --zdt_tag_dark_close_text: #de3535;
@@ -29,6 +30,7 @@
29
30
  /* multiselect */
30
31
  --zdt_multiselect_dark_border: #4b5168;
31
32
  --zdt_multiselect_darkmsg_bg: #383f57;
33
+ --zdt_multiselect_darkmsg_text: #d0d0d4;
32
34
  --zdt_multiselect_darkdelete_hover_text: var(--dot_text_white);
33
35
 
34
36
  /* avatar */
@@ -38,6 +40,9 @@
38
40
  /* label */
39
41
  --zdt_label_dark_text: #d0d0d4;
40
42
 
43
+ /* textbox */
44
+ --zdt_textbox_light_text: var(--dot_text_white);
45
+
41
46
  /* dropdown */
42
47
  --zdt_dropdown_darkheading_text: var(--dot_text_white);
43
48
  }
@@ -18,7 +18,7 @@
18
18
  --zdt_cta_alpha_hover_text: #0e7526;
19
19
  --zdt_cta_alpha_border: #26a942;
20
20
  --zdt_cta_alpha_hover_border: #0e7526;
21
- --zdt_cta_alpha_bg: #D4EED9;
21
+ --zdt_cta_alpha_bg: #d4eed9;
22
22
  --zdt_cta_beta_border: #26a942;
23
23
  --zdt_cta_grey_10_bg: #f6faf9;
24
24
  --zdt_cta_grey_10_border: #f6faf9;
@@ -22,6 +22,7 @@
22
22
  /* tag */
23
23
  --zdt_tag_dark_text: #d0d0d4;
24
24
  --zdt_tag_dark_bg: rgba(255, 255, 255, 0.07);
25
+ --zdt_tag_dark_hover_text: #d0d0d4;
25
26
  --zdt_tag_dark_hover_bg: #503348;
26
27
  --zdt_tag_dark_close_bg: #864654;
27
28
  --zdt_tag_dark_close_text: #de3535;
@@ -29,6 +30,7 @@
29
30
  /* multiselect */
30
31
  --zdt_multiselect_dark_border: rgba(255, 255, 255, 0.2);
31
32
  --zdt_multiselect_darkmsg_bg: rgba(255, 255, 255, 0.02);
33
+ --zdt_multiselect_darkmsg_text: #d0d0d4;
32
34
  --zdt_multiselect_darkdelete_hover_text: var(--dot_text_white);
33
35
 
34
36
  /* avatar */
@@ -38,6 +40,9 @@
38
40
  /* label */
39
41
  --zdt_label_dark_text: #d0d0d4;
40
42
 
43
+ /* textbox */
44
+ --zdt_textbox_light_text: var(--dot_text_white);
45
+
41
46
  /* dropdown */
42
47
  --zdt_dropdown_darkheading_text: var(--dot_text_white);
43
48
  }
@@ -18,7 +18,7 @@
18
18
  --zdt_cta_alpha_hover_text: #b25900;
19
19
  --zdt_cta_alpha_border: #e57717;
20
20
  --zdt_cta_alpha_hover_border: #b25900;
21
- --zdt_cta_alpha_bg: #FAE4D1;
21
+ --zdt_cta_alpha_bg: #fae4d1;
22
22
  --zdt_cta_beta_border: #e57717;
23
23
  --zdt_cta_grey_10_bg: #f9f7f6;
24
24
  --zdt_cta_grey_10_border: #f9f7f6;
@@ -22,6 +22,7 @@
22
22
  /* tag */
23
23
  --zdt_tag_dark_text: #d0d0d4;
24
24
  --zdt_tag_dark_bg: rgba(255, 255, 255, 0.07);
25
+ --zdt_tag_dark_hover_text: #d0d0d4;
25
26
  --zdt_tag_dark_hover_bg: #503348;
26
27
  --zdt_tag_dark_close_bg: #864654;
27
28
  --zdt_tag_dark_close_text: #de3535;
@@ -29,6 +30,7 @@
29
30
  /* multiselect */
30
31
  --zdt_multiselect_dark_border: rgba(255, 255, 255, 0.2);
31
32
  --zdt_multiselect_darkmsg_bg: rgba(255, 255, 255, 0.02);
33
+ --zdt_multiselect_darkmsg_text: #d0d0d4;
32
34
  --zdt_multiselect_darkdelete_hover_text: var(--dot_text_white);
33
35
 
34
36
  /* avatar */
@@ -38,6 +40,9 @@
38
40
  /* label */
39
41
  --zdt_label_dark_text: #d0d0d4;
40
42
 
43
+ /* textbox */
44
+ --zdt_textbox_light_text: var(--dot_text_white);
45
+
41
46
  /* dropdown */
42
47
  --zdt_dropdown_darkheading_text: var(--dot_text_white);
43
48
  }
@@ -18,7 +18,7 @@
18
18
  --zdt_cta_alpha_hover_text: #ab1a18;
19
19
  --zdt_cta_alpha_border: #de3535;
20
20
  --zdt_cta_alpha_hover_border: #ab1a18;
21
- --zdt_cta_alpha_bg: #F8D7D7;
21
+ --zdt_cta_alpha_bg: #f8d7d7;
22
22
  --zdt_cta_beta_border: #de3535;
23
23
  --zdt_cta_grey_10_bg: #f9f6f7;
24
24
  --zdt_cta_grey_10_border: #f9f6f7;
@@ -22,6 +22,7 @@
22
22
  /* tag */
23
23
  --zdt_tag_dark_text: #d0d0d4;
24
24
  --zdt_tag_dark_bg: rgba(255, 255, 255, 0.07);
25
+ --zdt_tag_dark_hover_text: #d0d0d4;
25
26
  --zdt_tag_dark_hover_bg: #503348;
26
27
  --zdt_tag_dark_close_bg: #864654;
27
28
  --zdt_tag_dark_close_text: #de3535;
@@ -29,6 +30,7 @@
29
30
  /* multiselect */
30
31
  --zdt_multiselect_dark_border: rgba(255, 255, 255, 0.2);
31
32
  --zdt_multiselect_darkmsg_bg: rgba(255, 255, 255, 0.02);
33
+ --zdt_multiselect_darkmsg_text: #d0d0d4;
32
34
  --zdt_multiselect_darkdelete_hover_text: var(--dot_text_white);
33
35
 
34
36
  /* avatar */
@@ -38,6 +40,9 @@
38
40
  /* label */
39
41
  --zdt_label_dark_text: #d0d0d4;
40
42
 
43
+ /* textbox */
44
+ --zdt_textbox_light_text: var(--dot_text_white);
45
+
41
46
  /* dropdown */
42
47
  --zdt_dropdown_darkheading_text: var(--dot_text_white);
43
48
  }
@@ -22,6 +22,7 @@
22
22
  /* tag */
23
23
  --zdt_tag_dark_text: #d0d0d4;
24
24
  --zdt_tag_dark_bg: rgba(255, 255, 255, 0.07);
25
+ --zdt_tag_dark_hover_text: #d0d0d4;
25
26
  --zdt_tag_dark_hover_bg: #503348;
26
27
  --zdt_tag_dark_close_bg: #864654;
27
28
  --zdt_tag_dark_close_text: #de3535;
@@ -29,6 +30,7 @@
29
30
  /* multiselect */
30
31
  --zdt_multiselect_dark_border: rgba(255, 255, 255, 0.2);
31
32
  --zdt_multiselect_darkmsg_bg: rgba(255, 255, 255, 0.02);
33
+ --zdt_multiselect_darkmsg_text: #d0d0d4;
32
34
  --zdt_multiselect_darkdelete_hover_text: var(--dot_text_white);
33
35
 
34
36
  /* avatar */
@@ -38,6 +40,9 @@
38
40
  /* label */
39
41
  --zdt_label_dark_text: #d0d0d4;
40
42
 
43
+ /* textbox */
44
+ --zdt_textbox_light_text: var(--dot_text_white);
45
+
41
46
  /* dropdown */
42
47
  --zdt_dropdown_darkheading_text: var(--dot_text_white);
43
48
  }
@@ -121,7 +121,10 @@ var ListItemWithAvatar = /*#__PURE__*/function (_React$PureComponent) {
121
121
  needAvatarTitle = _this$props4.needAvatarTitle,
122
122
  avatarPalette = _this$props4.avatarPalette,
123
123
  a11y = _this$props4.a11y,
124
- customClass = _this$props4.customClass;
124
+ customClass = _this$props4.customClass,
125
+ customProps = _this$props4.customProps;
126
+ var _customProps$ListItem = customProps.ListItemProps,
127
+ ListItemProps = _customProps$ListItem === void 0 ? {} : _customProps$ListItem;
125
128
  var _customClass$customLi = customClass.customListItem,
126
129
  customListItem = _customClass$customLi === void 0 ? '' : _customClass$customLi,
127
130
  _customClass$customAv = customClass.customAvatar,
@@ -157,7 +160,7 @@ var ListItemWithAvatar = /*#__PURE__*/function (_React$PureComponent) {
157
160
  tagName: "li",
158
161
  dataId: "".concat(dataIdString, "_ListItemWithAvatar"),
159
162
  "data-title": isDisabled ? disableTitle : null
160
- }, options), name || imgSrc ? /*#__PURE__*/_react["default"].createElement(_Layout.Box, {
163
+ }, options, ListItemProps), name || imgSrc ? /*#__PURE__*/_react["default"].createElement(_Layout.Box, {
161
164
  className: _ListItemModule["default"].leftAvatar
162
165
  }, isTeam ? /*#__PURE__*/_react["default"].createElement(_AvatarTeam["default"], {
163
166
  name: name,
@@ -212,7 +215,8 @@ ListItemWithAvatar.defaultProps = {
212
215
  needBorder: true,
213
216
  needAvatarTitle: true,
214
217
  a11y: {},
215
- customClass: {}
218
+ customClass: {},
219
+ customProps: {}
216
220
  };
217
221
  ListItemWithAvatar.propTypes = (_ListItemWithAvatar$p = {
218
222
  active: _propTypes["default"].bool,
@@ -226,6 +230,8 @@ ListItemWithAvatar.propTypes = (_ListItemWithAvatar$p = {
226
230
  customListItem: _propTypes["default"].string,
227
231
  customAvatar: _propTypes["default"].string,
228
232
  customAvatarTeam: _propTypes["default"].string
233
+ })), _defineProperty(_ListItemWithAvatar$p, "customProps", _propTypes["default"].shape({
234
+ ListItemProps: _propTypes["default"].object
229
235
  })), _ListItemWithAvatar$p);
230
236
 
231
237
  if (false) {
@@ -110,7 +110,10 @@ var ListItemWithIcon = /*#__PURE__*/function (_React$Component) {
110
110
  isDisabled = _this$props4.isDisabled,
111
111
  disableTitle = _this$props4.disableTitle,
112
112
  a11y = _this$props4.a11y,
113
- customClass = _this$props4.customClass;
113
+ customClass = _this$props4.customClass,
114
+ customProps = _this$props4.customProps;
115
+ var _customProps$ListItem = customProps.ListItemProps,
116
+ ListItemProps = _customProps$ListItem === void 0 ? {} : _customProps$ListItem;
114
117
  var role = a11y.role,
115
118
  ariaSelected = a11y.ariaSelected,
116
119
  _a11y$ariaHidden = a11y.ariaHidden,
@@ -139,7 +142,7 @@ var ListItemWithIcon = /*#__PURE__*/function (_React$Component) {
139
142
  eleRef: this.getRef,
140
143
  tagName: "li",
141
144
  "data-title": isDisabled ? disableTitle : null
142
- }, options), iconName && /*#__PURE__*/_react["default"].createElement(_Layout.Box, {
145
+ }, options, ListItemProps), iconName && /*#__PURE__*/_react["default"].createElement(_Layout.Box, {
143
146
  "aria-hidden": true,
144
147
  className: _ListItemModule["default"].iconBox,
145
148
  dataId: dataId ? "".concat(dataId, "_Icon") : "".concat(value.toLowerCase().replace("'", '_'), "_Icon")
@@ -182,7 +185,8 @@ ListItemWithIcon.defaultProps = {
182
185
  value: 'List',
183
186
  needBorder: true,
184
187
  a11y: {},
185
- customClass: ''
188
+ customClass: '',
189
+ customProps: {}
186
190
  };
187
191
  ListItemWithIcon.propTypes = {
188
192
  active: _propTypes["default"].bool,
@@ -210,7 +214,10 @@ ListItemWithIcon.propTypes = {
210
214
  ariaSelected: _propTypes["default"].bool,
211
215
  ariaHidden: _propTypes["default"].bool
212
216
  }),
213
- customClass: _propTypes["default"].string
217
+ customClass: _propTypes["default"].string,
218
+ customProps: _propTypes["default"].shape({
219
+ ListItemProps: _propTypes["default"].object
220
+ })
214
221
  };
215
222
 
216
223
  if (false) {
@@ -47,6 +47,8 @@ function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj &&
47
47
 
48
48
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; }
49
49
 
50
+ function _extends() { _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }
51
+
50
52
  function _toConsumableArray(arr) { return _arrayWithoutHoles(arr) || _iterableToArray(arr) || _unsupportedIterableToArray(arr) || _nonIterableSpread(); }
51
53
 
52
54
  function _nonIterableSpread() { throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
@@ -131,7 +133,7 @@ var AdvancedMultiSelectComponent = /*#__PURE__*/function (_MultiSelectComponent)
131
133
  var _this$getFilterSugges = this.getFilterSuggestions({
132
134
  options: options,
133
135
  selectedOptions: dummyArray,
134
- searchStr: searchStr.replace(/\s+/g, '').toLowerCase(),
136
+ searchStr: (0, _Common.getSearchString)(searchStr),
135
137
  needSearch: needLocalSearch
136
138
  }),
137
139
  suggestions = _this$getFilterSugges.suggestions,
@@ -408,7 +410,12 @@ var AdvancedMultiSelectComponent = /*#__PURE__*/function (_MultiSelectComponent)
408
410
  a11y = _this$props5.a11y,
409
411
  borderColor = _this$props5.borderColor,
410
412
  isBoxPaddingNeed = _this$props5.isBoxPaddingNeed,
411
- getFooter = _this$props5.getFooter;
413
+ getFooter = _this$props5.getFooter,
414
+ customProps = _this$props5.customProps;
415
+ var _customProps$Suggesti = customProps.SuggestionsProps,
416
+ SuggestionsProps = _customProps$Suggesti === void 0 ? {} : _customProps$Suggesti,
417
+ _customProps$DropBoxP = customProps.DropBoxProps,
418
+ DropBoxProps = _customProps$DropBoxP === void 0 ? {} : _customProps$DropBoxP;
412
419
  var _i18nKeys = i18nKeys,
413
420
  _i18nKeys$clearText = _i18nKeys.clearText,
414
421
  clearText = _i18nKeys$clearText === void 0 ? 'Clear all' : _i18nKeys$clearText;
@@ -492,7 +499,7 @@ var AdvancedMultiSelectComponent = /*#__PURE__*/function (_MultiSelectComponent)
492
499
  }, /*#__PURE__*/_react["default"].createElement(_Icon["default"], {
493
500
  name: "ZD-delete",
494
501
  size: "15"
495
- })) : null), !isReadOnly && !isDisabled && isPopupOpen ? /*#__PURE__*/_react["default"].createElement(_DropBox["default"], {
502
+ })) : null), !isReadOnly && !isDisabled && isPopupOpen ? /*#__PURE__*/_react["default"].createElement(_DropBox["default"], _extends({
496
503
  animationStyle: animationStyle,
497
504
  boxPosition: position || "".concat(defaultDropBoxPosition, "Center"),
498
505
  getRef: getContainerRef,
@@ -507,7 +514,7 @@ var AdvancedMultiSelectComponent = /*#__PURE__*/function (_MultiSelectComponent)
507
514
  role: 'listbox',
508
515
  ariaMultiselectable: true
509
516
  }
510
- }, /*#__PURE__*/_react["default"].createElement(_Card["default"], {
517
+ }, DropBoxProps), /*#__PURE__*/_react["default"].createElement(_Card["default"], {
511
518
  customClass: _AdvancedMultiSelectModule["default"].box,
512
519
  onScroll: this.handleScroll
513
520
  }, /*#__PURE__*/_react["default"].createElement(_Card.CardHeader, null, /*#__PURE__*/_react["default"].createElement(_MultiSelectHeader["default"], {
@@ -519,7 +526,7 @@ var AdvancedMultiSelectComponent = /*#__PURE__*/function (_MultiSelectComponent)
519
526
  })), /*#__PURE__*/_react["default"].createElement(_Card.CardContent, {
520
527
  customClass: dropBoxSize ? _AdvancedMultiSelectModule["default"][dropBoxSize] : '',
521
528
  eleRef: this.suggestionContainerRef
522
- }, suggestions.length ? /*#__PURE__*/_react["default"].createElement(_Suggestions["default"], {
529
+ }, suggestions.length ? /*#__PURE__*/_react["default"].createElement(_Suggestions["default"], _extends({
523
530
  suggestions: suggestions,
524
531
  selectedOptions: allselectedOptionIds,
525
532
  getRef: this.suggestionItemRef,
@@ -531,7 +538,7 @@ var AdvancedMultiSelectComponent = /*#__PURE__*/function (_MultiSelectComponent)
531
538
  a11y: {
532
539
  role: 'option'
533
540
  }
534
- }) : /*#__PURE__*/_react["default"].createElement(_EmptyState["default"], {
541
+ }, SuggestionsProps)) : /*#__PURE__*/_react["default"].createElement(_EmptyState["default"], {
535
542
  isLoading: isFetchingOptions,
536
543
  options: options,
537
544
  searchString: searchStr,
@@ -623,7 +630,11 @@ AdvancedMultiSelectComponent.propTypes = {
623
630
  isBoxPaddingNeed: _propTypes["default"].bool,
624
631
  isSearchClearOnSelect: _propTypes["default"].bool,
625
632
  disabledOptions: _propTypes["default"].arrayOf(_propTypes["default"].string),
626
- getFooter: _propTypes["default"].func
633
+ getFooter: _propTypes["default"].func,
634
+ customProps: _propTypes["default"].shape({
635
+ SuggestionsProps: _propTypes["default"].object,
636
+ DropBoxProps: _propTypes["default"].object
637
+ })
627
638
  };
628
639
  AdvancedMultiSelectComponent.defaultProps = {
629
640
  animationStyle: 'bounce',
@@ -650,7 +661,8 @@ AdvancedMultiSelectComponent.defaultProps = {
650
661
  a11y: {},
651
662
  borderColor: 'default',
652
663
  isBoxPaddingNeed: true,
653
- isSearchClearOnSelect: true
664
+ isSearchClearOnSelect: true,
665
+ customProps: {}
654
666
  };
655
667
  AdvancedMultiSelectComponent.displayName = 'AdvancedMultiSelect';
656
668
  var AdvancedMultiSelect = (0, _Popup["default"])(AdvancedMultiSelectComponent);
@@ -335,7 +335,7 @@ var MultiSelectComponent = /*#__PURE__*/function (_React$Component) {
335
335
  var _this$getFilterSugges = this.getFilterSuggestions({
336
336
  options: options,
337
337
  selectedOptions: selectedOptions,
338
- searchStr: searchStr.replace(/\s+/g, '').toLowerCase(),
338
+ searchStr: (0, _Common.getSearchString)(searchStr),
339
339
  needSearch: needLocalSearch
340
340
  }),
341
341
  suggestions = _this$getFilterSugges.suggestions,
@@ -23,6 +23,12 @@ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "d
23
23
 
24
24
  function _extends() { _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }
25
25
 
26
+ function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) { symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); } keys.push.apply(keys, symbols); } return keys; }
27
+
28
+ function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys(Object(source), true).forEach(function (key) { _defineProperty(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }
29
+
30
+ function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
31
+
26
32
  function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
27
33
 
28
34
  function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } }
@@ -94,7 +100,8 @@ var Suggestions = /*#__PURE__*/function (_React$PureComponent) {
94
100
  icon = suggestion.icon,
95
101
  optionType = suggestion.optionType,
96
102
  iconSize = suggestion.iconSize,
97
- isDisabled = suggestion.isDisabled;
103
+ isDisabled = suggestion.isDisabled,
104
+ listItemProps = suggestion.listItemProps;
98
105
  var isActive = activeId === id || selectedOptions.indexOf(id) >= 0;
99
106
  var isHighlight = hoverOption === index || id === hoverId ? true : false;
100
107
  var list_a11y = Object.assign({}, a11y, {
@@ -104,6 +111,12 @@ var Suggestions = /*#__PURE__*/function (_React$PureComponent) {
104
111
  isDisabled: isDisabled
105
112
  };
106
113
 
114
+ if (listItemProps) {
115
+ commonProps.customProps = {
116
+ 'ListItemProps': _objectSpread({}, listItemProps)
117
+ };
118
+ }
119
+
107
120
  if (optionType === 'avatar') {
108
121
  return /*#__PURE__*/_react["default"].createElement(_ListItemWithAvatar["default"], _extends({}, commonProps, {
109
122
  autoHover: false,
@@ -197,7 +210,8 @@ Suggestions.propTypes = {
197
210
  value: _propTypes["default"].oneOfType([_propTypes["default"].string, _propTypes["default"].number]),
198
211
  photoURL: _propTypes["default"].string,
199
212
  logo: _propTypes["default"].string,
200
- optionType: _propTypes["default"].string
213
+ optionType: _propTypes["default"].string,
214
+ listItemProps: _propTypes["default"].object
201
215
  }))
202
216
  };
203
217
  Suggestions.defaultProps = {
@@ -51,10 +51,20 @@ var AdvancedMultiSelect__default = /*#__PURE__*/function (_Component) {
51
51
  _this.state = {
52
52
  options: [{
53
53
  id: 2,
54
- text: 'text2'
54
+ text: 'text2',
55
+ listItemProps: {
56
+ style: {
57
+ color: 'red'
58
+ }
59
+ }
55
60
  }, {
56
61
  id: 3,
57
- text: 'text3'
62
+ text: 'text3',
63
+ listItemProps: {
64
+ style: {
65
+ color: 'blue'
66
+ }
67
+ }
58
68
  }, {
59
69
  id: 4,
60
70
  text: 'text4'
@@ -132,7 +142,12 @@ var AdvancedMultiSelect__default = /*#__PURE__*/function (_Component) {
132
142
  noMoreText: 'No More Options .',
133
143
  searchEmptyText: 'No Matches Found .'
134
144
  },
135
- getFooter: this.getFooter
145
+ getFooter: this.getFooter,
146
+ customProps: {
147
+ SuggestionsProps: {
148
+ needBorder: false
149
+ }
150
+ }
136
151
  });
137
152
  }
138
153
  }]);
@@ -283,7 +283,7 @@ var GroupSelectComponent = /*#__PURE__*/function (_PureComponent) {
283
283
  allOptionIds = _this$state2.allOptionIds;
284
284
 
285
285
  if (needSearch && searchStr && searchStr.trim().length) {
286
- searchStr = searchStr.toLowerCase().replace(/\s+/g, '');
286
+ searchStr = (0, _Common.getSearchString)(searchStr);
287
287
 
288
288
  var _this$getFilterSugges = this.getFilterSuggestions({
289
289
  revampedGroups: revampedGroups,
@@ -320,8 +320,8 @@ var GroupSelectComponent = /*#__PURE__*/function (_PureComponent) {
320
320
  var _this$state$searchStr = this.state.searchStr,
321
321
  searchStr = _this$state$searchStr === void 0 ? '' : _this$state$searchStr;
322
322
  var onSearch = this.props.onSearch;
323
- var searchStrRegex = searchStr.toLowerCase().replace(/\s+/g, '');
324
- var valueStrRegex = value.toLowerCase().replace(/\s+/g, '');
323
+ var searchStrRegex = (0, _Common.getSearchString)(searchStr);
324
+ var valueStrRegex = (0, _Common.getSearchString)(value);
325
325
  var isSearch = searchStrRegex !== valueStrRegex ? true : false;
326
326
  this.setState({
327
327
  searchStr: value,
@@ -43,6 +43,8 @@ function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "functio
43
43
 
44
44
  function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || _typeof(obj) !== "object" && typeof obj !== "function") { return { "default": obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj["default"] = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
45
45
 
46
+ function _extends() { _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }
47
+
46
48
  function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
47
49
 
48
50
  function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } }
@@ -292,11 +294,16 @@ var SelectComponent = /*#__PURE__*/function (_Component) {
292
294
  value: function handleFormatOptions(props) {
293
295
  var options = props.options,
294
296
  valueField = props.valueField,
295
- textField = props.textField;
297
+ textField = props.textField,
298
+ _props$customProps = props.customProps,
299
+ customProps = _props$customProps === void 0 ? {} : _props$customProps;
300
+ var _customProps$listItem = customProps.listItemProps,
301
+ listItemProps = _customProps$listItem === void 0 ? {} : _customProps$listItem;
296
302
  return this.formatOptions({
297
303
  options: options,
298
304
  valueField: valueField,
299
- textField: textField
305
+ textField: textField,
306
+ listItemProps: listItemProps
300
307
  });
301
308
  }
302
309
  }, {
@@ -729,7 +736,8 @@ var SelectComponent = /*#__PURE__*/function (_Component) {
729
736
  i18nKeys = _this$props11.i18nKeys,
730
737
  htmlId = _this$props11.htmlId,
731
738
  children = _this$props11.children,
732
- iconOnHover = _this$props11.iconOnHover;
739
+ iconOnHover = _this$props11.iconOnHover,
740
+ customProps = _this$props11.customProps;
733
741
  var _i18nKeys = i18nKeys,
734
742
  TextBoxIcon_i18n = _i18nKeys.TextBoxIcon_i18n,
735
743
  _i18nKeys$TextBox_all = _i18nKeys.TextBox_ally_label,
@@ -748,6 +756,12 @@ var SelectComponent = /*#__PURE__*/function (_Component) {
748
756
  var suggestions = this.handleFilterSuggestions();
749
757
  var setAriaId = this.getNextAriaId();
750
758
  var ariaErrorId = this.getNextAriaId();
759
+ var _customProps$TextBoxP = customProps.TextBoxProps,
760
+ TextBoxProps = _customProps$TextBoxP === void 0 ? {} : _customProps$TextBoxP,
761
+ _customProps$Dropdown = customProps.DropdownSearchTextBoxProps,
762
+ DropdownSearchTextBoxProps = _customProps$Dropdown === void 0 ? {} : _customProps$Dropdown,
763
+ _customProps$Suggesti = customProps.SuggestionsProps,
764
+ SuggestionsProps = _customProps$Suggesti === void 0 ? {} : _customProps$Suggesti;
751
765
  return /*#__PURE__*/_react["default"].createElement("div", {
752
766
  className: "".concat(isParentBased || isReadOnly || isDisabled ? _SelectModule["default"].container : '', " ").concat(_SelectModule["default"]["box_".concat(size)], " ").concat(isReadOnly ? _SelectModule["default"].readonly : '', " ").concat(borderColor === 'transparent' ? _SelectModule["default"].transparentContainer : '', " ").concat(iconOnHover && (isReadOnly || isDisabled) ? _SelectModule["default"].iconOnHoverReadonly : iconOnHover && !(isReadOnly || isDisabled) ? _SelectModule["default"].iconOnHoverStyle : ''),
753
767
  "data-title": isDisabled ? title : ''
@@ -790,7 +804,10 @@ var SelectComponent = /*#__PURE__*/function (_Component) {
790
804
  borderColor: borderColor,
791
805
  htmlId: htmlId,
792
806
  isFocus: isPopupReady,
793
- autoComplete: false
807
+ autoComplete: false,
808
+ customProps: {
809
+ TextBoxProps: TextBoxProps
810
+ }
794
811
  }, /*#__PURE__*/_react["default"].createElement(_Layout.Container, {
795
812
  alignBox: "row",
796
813
  align: "both"
@@ -835,7 +852,8 @@ var SelectComponent = /*#__PURE__*/function (_Component) {
835
852
  borderColor: borderColor,
836
853
  htmlId: htmlId,
837
854
  autoComplete: false,
838
- isFocus: isPopupReady
855
+ isFocus: isPopupReady,
856
+ customProps: TextBoxProps
839
857
  })), !isReadOnly && !isDisabled && isPopupOpen ? /*#__PURE__*/_react["default"].createElement(_DropBox["default"], {
840
858
  animationStyle: animationStyle,
841
859
  boxPosition: position || "".concat(defaultDropBoxPosition, "Center"),
@@ -868,11 +886,14 @@ var SelectComponent = /*#__PURE__*/function (_Component) {
868
886
  onClear: this.handleClearSearch,
869
887
  dataId: "".concat(dataId, "_search"),
870
888
  i18nKeys: TextBoxIcon_i18n,
871
- autoComplete: false
889
+ autoComplete: false,
890
+ customProps: {
891
+ TextBoxProps: DropdownSearchTextBoxProps
892
+ }
872
893
  }))) : null, /*#__PURE__*/_react["default"].createElement(_Card.CardContent, {
873
894
  customClass: dropBoxSize ? _SelectModule["default"][dropBoxSize] : '',
874
895
  eleRef: this.suggestionContainerRef
875
- }, suggestions.length ? /*#__PURE__*/_react["default"].createElement(_Suggestions["default"], {
896
+ }, suggestions.length ? /*#__PURE__*/_react["default"].createElement(_Suggestions["default"], _extends({
876
897
  activeId: selectedId,
877
898
  suggestions: suggestions,
878
899
  getRef: this.suggestionItemRef,
@@ -890,7 +911,7 @@ var SelectComponent = /*#__PURE__*/function (_Component) {
890
911
  ariaParentRole: 'listbox',
891
912
  role: 'option'
892
913
  }
893
- }) : /*#__PURE__*/_react["default"].createElement(_EmptyState["default"], {
914
+ }, SuggestionsProps)) : /*#__PURE__*/_react["default"].createElement(_EmptyState["default"], {
894
915
  isLoading: isFetchingOptions,
895
916
  options: options,
896
917
  searchString: searchStr,
@@ -984,7 +1005,13 @@ SelectComponent.propTypes = {
984
1005
  htmlId: _propTypes["default"].string,
985
1006
  children: _propTypes["default"].node,
986
1007
  onFocus: _propTypes["default"].func,
987
- iconOnHover: _propTypes["default"].bool
1008
+ iconOnHover: _propTypes["default"].bool,
1009
+ customProps: _propTypes["default"].shape({
1010
+ TextBoxProps: _propTypes["default"].object,
1011
+ DropdownSearchTextBoxProps: _propTypes["default"].object,
1012
+ listItemProps: _propTypes["default"].object,
1013
+ SuggestionsProps: _propTypes["default"].object
1014
+ })
988
1015
  };
989
1016
  SelectComponent.defaultProps = {
990
1017
  animationStyle: 'bounce',
@@ -1016,7 +1043,8 @@ SelectComponent.defaultProps = {
1016
1043
  isParentBased: true,
1017
1044
  isSearchClearOnClose: true,
1018
1045
  i18nKeys: {},
1019
- iconOnHover: false
1046
+ iconOnHover: false,
1047
+ customProps: {}
1020
1048
  };
1021
1049
  SelectComponent.displayName = 'Select';
1022
1050
  var Select = (0, _Popup["default"])(SelectComponent);
@@ -73,6 +73,40 @@ var option = [{
73
73
  text: 'Pineapple',
74
74
  id: '10'
75
75
  }];
76
+ var customOption = [{
77
+ text: 'Apple',
78
+ id: 0,
79
+ listItemProps: {
80
+ style: {
81
+ 'color': 'red'
82
+ }
83
+ }
84
+ }, {
85
+ text: 'Banana',
86
+ id: '1',
87
+ listItemProps: {
88
+ style: {
89
+ 'color': 'orange'
90
+ }
91
+ }
92
+ }, {
93
+ text: 'Blackberries',
94
+ id: '2',
95
+ listItemProps: {
96
+ style: {
97
+ 'color': 'blue'
98
+ }
99
+ }
100
+ }, {
101
+ text: 'Guava',
102
+ id: '3'
103
+ }, {
104
+ text: 'Grapes',
105
+ id: '4'
106
+ }, {
107
+ text: 'Jackfruit',
108
+ id: '5'
109
+ }];
76
110
 
77
111
  var Select__default = /*#__PURE__*/function (_React$Component) {
78
112
  _inherits(Select__default, _React$Component);
@@ -142,6 +176,51 @@ var Select__default = /*#__PURE__*/function (_React$Component) {
142
176
  searchBoxPlaceHolder: "Search",
143
177
  isDefaultSelectValue: false,
144
178
  isDisabled: true
179
+ }), /*#__PURE__*/_react["default"].createElement("div", null, "Custom Props"), /*#__PURE__*/_react["default"].createElement(_Select["default"], {
180
+ options: customOption,
181
+ onChange: this.handleChange,
182
+ selectedValue: value,
183
+ needSearch: true,
184
+ emptyMessage: "No matches found",
185
+ placeHolder: "PlaceHolder",
186
+ searchBoxPlaceHolder: "Search",
187
+ isDefaultSelectValue: false,
188
+ i18nKeys: {
189
+ loadingText: 'Loading',
190
+ emptyText: 'emptyText',
191
+ noMoreText: 'noMoreText',
192
+ searchEmptyText: 'searchEmptyText',
193
+ TextBoxIcon_i18n: {
194
+ clearText: 'Clear Data'
195
+ }
196
+ },
197
+ customProps: {
198
+ listItemProps: {
199
+ style: {
200
+ 'color': 'green'
201
+ }
202
+ },
203
+ TextBoxProps: {
204
+ style: {
205
+ 'color': 'brown'
206
+ }
207
+ },
208
+ DropdownSearchTextBoxProps: {
209
+ style: {
210
+ 'color': 'purple'
211
+ }
212
+ }
213
+ }
214
+ }), /*#__PURE__*/_react["default"].createElement("div", null, "Disabled"), /*#__PURE__*/_react["default"].createElement(_Select["default"], {
215
+ options: option,
216
+ onChange: this.handleChange,
217
+ selectedValue: value,
218
+ needSearch: true,
219
+ emptyMessage: "No matches found",
220
+ placeHolder: "isDisabled",
221
+ searchBoxPlaceHolder: "Search",
222
+ isDefaultSelectValue: false,
223
+ isDisabled: true
145
224
  }), /*#__PURE__*/_react["default"].createElement("div", null, "Readonly"), /*#__PURE__*/_react["default"].createElement(_Select["default"], {
146
225
  options: option,
147
226
  onChange: this.handleChange,