@zohodesk/components 1.0.0-temp-51 → 1.0.0-temp-52

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 (297) hide show
  1. package/{assets → es}/Appearance/dark/mode/darkMode.module.css +2 -4
  2. package/es/Appearance/dark/themes/blue/blueDarkCTATheme.module.css +34 -0
  3. package/es/Appearance/dark/themes/blue/blueDarkComponentTheme.module.css +42 -0
  4. package/{assets → es}/Appearance/dark/themes/green/greenDarkCTATheme.module.css +10 -10
  5. package/es/Appearance/dark/themes/green/greenDarkComponentTheme.module.css +42 -0
  6. package/{assets → es}/Appearance/dark/themes/orange/orangeDarkCTATheme.module.css +10 -10
  7. package/es/Appearance/dark/themes/orange/orangeDarkComponentTheme.module.css +42 -0
  8. package/{assets → es}/Appearance/dark/themes/red/redDarkCTATheme.module.css +10 -10
  9. package/es/Appearance/dark/themes/red/redDarkComponentTheme.module.css +42 -0
  10. package/{assets → es}/Appearance/dark/themes/yellow/yellowDarkCTATheme.module.css +10 -10
  11. package/es/Appearance/dark/themes/yellow/yellowDarkComponentTheme.module.css +42 -0
  12. package/{assets → es}/Appearance/default/mode/defaultMode.module.css +2 -4
  13. package/{assets → es}/Appearance/default/themes/blue/blueDefaultCTATheme.module.css +0 -0
  14. package/{assets → es}/Appearance/default/themes/blue/blueDefaultComponentTheme.module.css +7 -7
  15. package/{assets → es}/Appearance/default/themes/green/greenDefaultCTATheme.module.css +2 -2
  16. package/{assets → es}/Appearance/default/themes/green/greenDefaultComponentTheme.module.css +4 -4
  17. package/{assets → es}/Appearance/default/themes/orange/orangeDefaultCTATheme.module.css +0 -0
  18. package/{assets → es}/Appearance/default/themes/orange/orangeDefaultComponentTheme.module.css +3 -3
  19. package/{assets → es}/Appearance/default/themes/red/redDefaultCTATheme.module.css +7 -7
  20. package/{assets → es}/Appearance/default/themes/red/redDefaultComponentTheme.module.css +3 -3
  21. package/{assets → es}/Appearance/default/themes/yellow/yellowDefaultCTATheme.module.css +0 -0
  22. package/{assets → es}/Appearance/default/themes/yellow/yellowDefaultComponentTheme.module.css +3 -3
  23. package/es/Avatar/Avatar.module.css +9 -11
  24. package/es/AvatarTeam/AvatarTeam.module.css +7 -21
  25. package/es/Button/Button.module.css +24 -97
  26. package/es/Buttongroup/Buttongroup.module.css +8 -37
  27. package/es/CheckBox/CheckBox.module.css +11 -17
  28. package/es/DateTime/DateTime.module.css +12 -39
  29. package/es/DateTime/DateWidget.module.css +5 -9
  30. package/es/DateTime/YearView.module.css +6 -16
  31. package/es/DropBox/DropBox.module.css +11 -47
  32. package/es/DropDown/DropDownHeading.module.css +3 -7
  33. package/es/DropDown/DropDownItem.module.css +6 -32
  34. package/es/ListItem/ListItem.module.css +25 -56
  35. package/es/MultiSelect/AdvancedMultiSelect.module.css +8 -22
  36. package/es/MultiSelect/MultiSelect.js +3 -4
  37. package/es/MultiSelect/MultiSelect.module.css +10 -27
  38. package/es/MultiSelect/SelectedOptions.module.css +2 -8
  39. package/es/PopOver/PopOver.module.css +1 -1
  40. package/es/Radio/Radio.module.css +4 -10
  41. package/es/Responsive/sizeObservers.js +1 -8
  42. package/es/Ribbon/Ribbon.module.css +28 -93
  43. package/es/RippleEffect/RippleEffect.module.css +44 -15
  44. package/es/Select/Select.js +3 -4
  45. package/es/Select/Select.module.css +2 -12
  46. package/es/Stencils/Stencils.module.css +3 -21
  47. package/es/Switch/Switch.module.css +7 -6
  48. package/es/Tab/Tab.module.css +7 -16
  49. package/es/Tab/Tabs.module.css +8 -41
  50. package/es/Tag/Tag.module.css +14 -36
  51. package/es/TextBox/TextBox.module.css +11 -7
  52. package/es/TextBoxIcon/TextBoxIcon.module.css +5 -12
  53. package/es/Textarea/Textarea.module.css +7 -6
  54. package/es/Tooltip/Tooltip.module.css +8 -9
  55. package/es/beta/FocusRing/FocusRing.module.css +26 -51
  56. package/es/common/animation.module.css +21 -219
  57. package/es/common/basicReset.module.css +12 -2
  58. package/es/common/common.module.css +18 -62
  59. package/es/common/customscroll.module.css +21 -17
  60. package/es/common/docStyle.module.css +31 -78
  61. package/es/common/transition.module.css +10 -50
  62. package/es/deprecated/Theme/darkTheme.module.css +393 -0
  63. package/es/deprecated/Theme/defaultTheme.module.css +393 -0
  64. package/es/deprecated/Theme/palette/darkCTAPalette.module.css +116 -0
  65. package/es/deprecated/Theme/palette/darkPalette.module.css +155 -0
  66. package/es/deprecated/Theme/palette/defaultCTAPalette.module.css +116 -0
  67. package/es/deprecated/Theme/palette/defaultPalette.module.css +155 -0
  68. package/es/deprecated/customscroll_Old.module.css +46 -0
  69. package/es/semantic/Button/semanticButton.module.css +3 -3
  70. package/package.json +1 -1
  71. package/assets/Appearance/dark/themes/blue/blueDarkCTATheme.module.css +0 -34
  72. package/assets/Appearance/dark/themes/blue/blueDarkComponentTheme.module.css +0 -42
  73. package/assets/Appearance/dark/themes/green/greenDarkComponentTheme.module.css +0 -42
  74. package/assets/Appearance/dark/themes/orange/orangeDarkComponentTheme.module.css +0 -42
  75. package/assets/Appearance/dark/themes/red/redDarkComponentTheme.module.css +0 -42
  76. package/assets/Appearance/dark/themes/yellow/yellowDarkComponentTheme.module.css +0 -42
  77. package/lib/Accordion/Accordion.js +0 -146
  78. package/lib/Accordion/AccordionItem.js +0 -124
  79. package/lib/Accordion/__tests__/Accordion.spec.js +0 -85
  80. package/lib/Accordion/index.js +0 -23
  81. package/lib/Animation/Animation.js +0 -206
  82. package/lib/Animation/__tests__/Animation.spec.js +0 -23
  83. package/lib/AppContainer/AppContainer.js +0 -205
  84. package/lib/AppContainer/AppContainer.module.css +0 -18
  85. package/lib/Avatar/Avatar.js +0 -280
  86. package/lib/Avatar/Avatar.module.css +0 -117
  87. package/lib/Avatar/__tests__/Avatar.spec.js +0 -208
  88. package/lib/Avatar/__tests__/__snapshots__/Avatar.spec.js.snap +0 -288
  89. package/lib/AvatarTeam/AvatarTeam.js +0 -157
  90. package/lib/AvatarTeam/AvatarTeam.module.css +0 -161
  91. package/lib/AvatarTeam/__tests__/AvatarTeam.spec.js +0 -92
  92. package/lib/AvatarTeam/__tests__/__snapshots__/AvatarTeam.spec.js.snap +0 -226
  93. package/lib/Button/Button.js +0 -158
  94. package/lib/Button/Button.module.css +0 -522
  95. package/lib/Button/__tests__/Button.spec.js +0 -233
  96. package/lib/Button/__tests__/__snapshots__/Button.spec.js.snap +0 -191
  97. package/lib/Buttongroup/Buttongroup.js +0 -101
  98. package/lib/Buttongroup/Buttongroup.module.css +0 -89
  99. package/lib/Buttongroup/__test__/Buttongroup.spec.js +0 -86
  100. package/lib/Buttongroup/__test__/__snapshots__/Buttongroup.spec.js.snap +0 -146
  101. package/lib/Card/Card.js +0 -409
  102. package/lib/Card/Card.module.css +0 -20
  103. package/lib/Card/__tests__/Card.spec.js +0 -56
  104. package/lib/Card/index.js +0 -37
  105. package/lib/CheckBox/CheckBox.js +0 -265
  106. package/lib/CheckBox/CheckBox.module.css +0 -153
  107. package/lib/CheckBox/__tests__/CheckBox.spec.js +0 -18
  108. package/lib/DateTime/CalendarView.js +0 -285
  109. package/lib/DateTime/DateTime.js +0 -889
  110. package/lib/DateTime/DateTime.module.css +0 -188
  111. package/lib/DateTime/DateTimePopupFooter.js +0 -90
  112. package/lib/DateTime/DateTimePopupHeader.js +0 -149
  113. package/lib/DateTime/DateWidget.js +0 -1189
  114. package/lib/DateTime/DateWidget.module.css +0 -42
  115. package/lib/DateTime/DaysRow.js +0 -76
  116. package/lib/DateTime/Time.js +0 -248
  117. package/lib/DateTime/YearView.js +0 -324
  118. package/lib/DateTime/YearView.module.css +0 -80
  119. package/lib/DateTime/__tests__/CalendarView.spec.js +0 -45
  120. package/lib/DateTime/__tests__/DateTime.spec.js +0 -127
  121. package/lib/DateTime/__tests__/DateWidget.spec.js +0 -81
  122. package/lib/DateTime/common.js +0 -36
  123. package/lib/DateTime/constants.js +0 -77
  124. package/lib/DateTime/dateFormatUtils/dateFormat.js +0 -613
  125. package/lib/DateTime/dateFormatUtils/dayChange.js +0 -81
  126. package/lib/DateTime/dateFormatUtils/index.js +0 -274
  127. package/lib/DateTime/dateFormatUtils/monthChange.js +0 -94
  128. package/lib/DateTime/dateFormatUtils/timeChange.js +0 -240
  129. package/lib/DateTime/dateFormatUtils/yearChange.js +0 -119
  130. package/lib/DateTime/index.js +0 -15
  131. package/lib/DateTime/objectUtils.js +0 -76
  132. package/lib/DateTime/typeChecker.js +0 -26
  133. package/lib/DateTime/validator.js +0 -353
  134. package/lib/DropBox/DropBox.js +0 -393
  135. package/lib/DropBox/DropBox.module.css +0 -406
  136. package/lib/DropBox/DropBoxPositionMapping.json +0 -145
  137. package/lib/DropBox/__tests__/DropBox.spec.js +0 -87
  138. package/lib/DropDown/DropDown.js +0 -203
  139. package/lib/DropDown/DropDown.module.css +0 -5
  140. package/lib/DropDown/DropDownHeading.js +0 -102
  141. package/lib/DropDown/DropDownHeading.module.css +0 -53
  142. package/lib/DropDown/DropDownItem.js +0 -139
  143. package/lib/DropDown/DropDownItem.module.css +0 -94
  144. package/lib/DropDown/DropDownSearch.js +0 -132
  145. package/lib/DropDown/DropDownSearch.module.css +0 -14
  146. package/lib/DropDown/DropDownSeparator.js +0 -66
  147. package/lib/DropDown/DropDownSeparator.module.css +0 -7
  148. package/lib/DropDown/__tests__/DropDown.spec.js +0 -50
  149. package/lib/DropDown/__tests__/DropDownItem.spec.js +0 -51
  150. package/lib/DropDown/__tests__/DropDownSearch.spec.js +0 -17
  151. package/lib/Label/Label.js +0 -109
  152. package/lib/Label/Label.module.css +0 -52
  153. package/lib/Label/LabelColors.module.css +0 -21
  154. package/lib/Label/__tests__/Label.spec.js +0 -137
  155. package/lib/Label/__tests__/__snapshots__/Label.spec.js.snap +0 -101
  156. package/lib/Layout/Box.js +0 -138
  157. package/lib/Layout/Container.js +0 -152
  158. package/lib/Layout/Layout.module.css +0 -324
  159. package/lib/Layout/__tests__/Box.spec.js +0 -121
  160. package/lib/Layout/__tests__/Container.spec.js +0 -127
  161. package/lib/Layout/index.js +0 -34
  162. package/lib/Layout/utils.js +0 -55
  163. package/lib/LightNightMode/Colors.json +0 -398
  164. package/lib/ListItem/ListContainer.js +0 -127
  165. package/lib/ListItem/ListItem.js +0 -227
  166. package/lib/ListItem/ListItem.module.css +0 -199
  167. package/lib/ListItem/ListItemWithAvatar.js +0 -237
  168. package/lib/ListItem/ListItemWithCheckBox.js +0 -205
  169. package/lib/ListItem/ListItemWithIcon.js +0 -229
  170. package/lib/ListItem/ListItemWithRadio.js +0 -208
  171. package/lib/Modal/Modal.js +0 -218
  172. package/lib/Modal/__docs__/Modal__default.docs.js +0 -88
  173. package/lib/MultiSelect/AdvancedGroupMultiSelect.js +0 -1218
  174. package/lib/MultiSelect/AdvancedMultiSelect.js +0 -696
  175. package/lib/MultiSelect/AdvancedMultiSelect.module.css +0 -127
  176. package/lib/MultiSelect/EmptyState.js +0 -132
  177. package/lib/MultiSelect/MultiSelect.js +0 -1235
  178. package/lib/MultiSelect/MultiSelect.module.css +0 -193
  179. package/lib/MultiSelect/MultiSelectHeader.js +0 -86
  180. package/lib/MultiSelect/MultiSelectWithAvatar.js +0 -410
  181. package/lib/MultiSelect/SelectedOptions.js +0 -140
  182. package/lib/MultiSelect/SelectedOptions.module.css +0 -15
  183. package/lib/MultiSelect/Suggestions.js +0 -219
  184. package/lib/MultiSelect/__tests__/MultiSelect.spec.js +0 -170
  185. package/lib/PopOver/PopOver.js +0 -365
  186. package/lib/PopOver/PopOver.module.css +0 -8
  187. package/lib/PopOver/__tests__/PopOver.spec.js +0 -20
  188. package/lib/Popup/Popup.js +0 -719
  189. package/lib/Popup/PositionMapping.json +0 -74
  190. package/lib/Popup/__tests__/Popup.spec.js +0 -192
  191. package/lib/Popup/viewPort.js +0 -368
  192. package/lib/Provider/AvatarSize.js +0 -23
  193. package/lib/Provider/Config.js +0 -25
  194. package/lib/Provider/CssProvider.js +0 -27
  195. package/lib/Provider/IdProvider.js +0 -82
  196. package/lib/Provider/LibraryContext.js +0 -76
  197. package/lib/Provider/LibraryContextInit.js +0 -15
  198. package/lib/Provider/NumberGenerator/NumberGenerator.js +0 -174
  199. package/lib/Provider/ZindexProvider.js +0 -69
  200. package/lib/Provider.js +0 -241
  201. package/lib/Radio/Radio.js +0 -214
  202. package/lib/Radio/Radio.module.css +0 -110
  203. package/lib/Radio/__tests__/Radiospec.js +0 -29
  204. package/lib/Responsive/CustomResponsive.js +0 -246
  205. package/lib/Responsive/RefWrapper.js +0 -55
  206. package/lib/Responsive/ResizeComponent.js +0 -268
  207. package/lib/Responsive/ResizeObserver.js +0 -168
  208. package/lib/Responsive/Responsive.js +0 -281
  209. package/lib/Responsive/index.js +0 -30
  210. package/lib/Responsive/sizeObservers.js +0 -214
  211. package/lib/Responsive/utils/index.js +0 -70
  212. package/lib/Responsive/utils/shallowCompare.js +0 -38
  213. package/lib/Responsive/windowResizeObserver.js +0 -63
  214. package/lib/Ribbon/Ribbon.js +0 -115
  215. package/lib/Ribbon/Ribbon.module.css +0 -377
  216. package/lib/Ribbon/__tests__/Ribbon.spec.js +0 -193
  217. package/lib/Ribbon/__tests__/__snapshots__/Ribbon.spec.js.snap +0 -163
  218. package/lib/RippleEffect/RippleEffect.js +0 -61
  219. package/lib/RippleEffect/RippleEffect.module.css +0 -70
  220. package/lib/Select/GroupSelect.js +0 -944
  221. package/lib/Select/Select.js +0 -1078
  222. package/lib/Select/Select.module.css +0 -100
  223. package/lib/Select/SelectWithAvatar.js +0 -433
  224. package/lib/Select/SelectWithIcon.js +0 -556
  225. package/lib/Select/__tests__/Select.spec.js +0 -383
  226. package/lib/Stencils/Stencils.js +0 -93
  227. package/lib/Stencils/Stencils.module.css +0 -96
  228. package/lib/Stencils/__tests__/Stencils.spec.js +0 -84
  229. package/lib/Stencils/__tests__/__snapshots__/Stencils.spec.js.snap +0 -49
  230. package/lib/Switch/Switch.js +0 -183
  231. package/lib/Switch/Switch.module.css +0 -110
  232. package/lib/Tab/Tab.js +0 -158
  233. package/lib/Tab/Tab.module.css +0 -101
  234. package/lib/Tab/TabContent.js +0 -45
  235. package/lib/Tab/TabContent.module.css +0 -4
  236. package/lib/Tab/TabContentWrapper.js +0 -47
  237. package/lib/Tab/TabWrapper.js +0 -109
  238. package/lib/Tab/Tabs.js +0 -696
  239. package/lib/Tab/Tabs.module.css +0 -140
  240. package/lib/Tab/__tests__/Tab.spec.js +0 -130
  241. package/lib/Tab/__tests__/TabContent.spec.js +0 -22
  242. package/lib/Tab/__tests__/TabContentWrapper.spec.js +0 -59
  243. package/lib/Tab/__tests__/TabWrapper.spec.js +0 -100
  244. package/lib/Tab/__tests__/Tabs.spec.js +0 -123
  245. package/lib/Tab/index.js +0 -47
  246. package/lib/Tag/Tag.js +0 -252
  247. package/lib/Tag/Tag.module.css +0 -251
  248. package/lib/Tag/__tests__/Tag.spec.js +0 -35
  249. package/lib/TextBox/TextBox.js +0 -289
  250. package/lib/TextBox/TextBox.module.css +0 -157
  251. package/lib/TextBox/__tests__/TextBox.spec.js +0 -205
  252. package/lib/TextBox/__tests__/__snapshots__/TextBox.spec.js.snap +0 -127
  253. package/lib/TextBoxIcon/TextBoxIcon.js +0 -284
  254. package/lib/TextBoxIcon/TextBoxIcon.module.css +0 -78
  255. package/lib/TextBoxIcon/__tests__/TextBoxIcon.spec.js +0 -228
  256. package/lib/TextBoxIcon/__tests__/__snapshots__/TextBoxIcon.spec.js.snap +0 -334
  257. package/lib/Textarea/Textarea.js +0 -202
  258. package/lib/Textarea/Textarea.module.css +0 -139
  259. package/lib/Textarea/__tests__/Textarea.spec.js +0 -186
  260. package/lib/Textarea/__tests__/__snapshots__/Textarea.spec.js.snap +0 -97
  261. package/lib/Tooltip/Tooltip.js +0 -538
  262. package/lib/Tooltip/Tooltip.module.css +0 -104
  263. package/lib/Tooltip/__tests__/Tooltip.spec.js +0 -98
  264. package/lib/VelocityAnimation/VelocityAnimation/VelocityAnimation.js +0 -146
  265. package/lib/VelocityAnimation/VelocityAnimationGroup/VelocityAnimationGroup.js +0 -190
  266. package/lib/a11y/FocusScope/FocusScope.js +0 -443
  267. package/lib/beta/FocusRing/FocusRing.js +0 -338
  268. package/lib/beta/FocusRing/FocusRing.module.css +0 -152
  269. package/lib/common/animation.module.css +0 -624
  270. package/lib/common/avatarsizes.module.css +0 -45
  271. package/lib/common/basic.module.css +0 -33
  272. package/lib/common/basicReset.module.css +0 -40
  273. package/lib/common/common.module.css +0 -502
  274. package/lib/common/customscroll.module.css +0 -89
  275. package/lib/common/docStyle.module.css +0 -762
  276. package/lib/common/reset.module.css +0 -12
  277. package/lib/common/transition.module.css +0 -146
  278. package/lib/css.js +0 -83
  279. package/lib/deprecated/PortalLayer/PortalLayer.js +0 -165
  280. package/lib/index.js +0 -1412
  281. package/lib/semantic/Button/Button.js +0 -138
  282. package/lib/semantic/Button/semanticButton.module.css +0 -9
  283. package/lib/utils/Common.js +0 -457
  284. package/lib/utils/ContextOptimizer.js +0 -49
  285. package/lib/utils/__tests__/constructFullName.spec.js +0 -12
  286. package/lib/utils/__tests__/debounce.spec.js +0 -40
  287. package/lib/utils/__tests__/getInitial.spec.js +0 -26
  288. package/lib/utils/constant.js +0 -10
  289. package/lib/utils/constructFullName.js +0 -34
  290. package/lib/utils/datetime/common.js +0 -233
  291. package/lib/utils/debounce.js +0 -30
  292. package/lib/utils/dropDownUtils.js +0 -608
  293. package/lib/utils/dummyFunction.js +0 -10
  294. package/lib/utils/getHTMLFontSize.js +0 -11
  295. package/lib/utils/getInitial.js +0 -33
  296. package/lib/utils/scrollTo.js +0 -22
  297. package/lib/utils/shallowEqual.js +0 -41
@@ -1,1235 +0,0 @@
1
- "use strict";
2
-
3
- function _typeof(obj) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (obj) { return typeof obj; } : function (obj) { return obj && "function" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }, _typeof(obj); }
4
-
5
- Object.defineProperty(exports, "__esModule", {
6
- value: true
7
- });
8
- exports["default"] = exports.MultiSelectComponent = void 0;
9
-
10
- var _react = _interopRequireDefault(require("react"));
11
-
12
- var _propTypes = _interopRequireDefault(require("prop-types"));
13
-
14
- var _Popup = _interopRequireDefault(require("../Popup/Popup"));
15
-
16
- var _DropBox = _interopRequireDefault(require("../DropBox/DropBox"));
17
-
18
- var _TextBoxIcon = _interopRequireDefault(require("../TextBoxIcon/TextBoxIcon"));
19
-
20
- var _Layout = require("../Layout");
21
-
22
- var _Card = _interopRequireWildcard(require("../Card/Card"));
23
-
24
- var _SelectedOptions = _interopRequireDefault(require("./SelectedOptions"));
25
-
26
- var _Suggestions = _interopRequireDefault(require("./Suggestions"));
27
-
28
- var _EmptyState = _interopRequireDefault(require("./EmptyState"));
29
-
30
- var _MultiSelectHeader = _interopRequireDefault(require("./MultiSelectHeader"));
31
-
32
- var _CssProvider = _interopRequireDefault(require("../Provider/CssProvider"));
33
-
34
- var _IdProvider = require("../Provider/IdProvider");
35
-
36
- var _Icon = _interopRequireDefault(require("@zohodesk/icons/lib/Icon"));
37
-
38
- var _MultiSelectModule = _interopRequireDefault(require("./MultiSelect.module.css"));
39
-
40
- var _Common = require("../utils/Common.js");
41
-
42
- var _dropDownUtils = require("../utils/dropDownUtils");
43
-
44
- 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); }
45
-
46
- 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; }
47
-
48
- function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; }
49
-
50
- function _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest(); }
51
-
52
- function _nonIterableRest() { throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
53
-
54
- function _iterableToArrayLimit(arr, i) { var _i = arr == null ? null : typeof Symbol !== "undefined" && arr[Symbol.iterator] || arr["@@iterator"]; if (_i == null) return; var _arr = []; var _n = true; var _d = false; var _s, _e; try { for (_i = _i.call(arr); !(_n = (_s = _i.next()).done); _n = true) { _arr.push(_s.value); if (i && _arr.length === i) break; } } catch (err) { _d = true; _e = err; } finally { try { if (!_n && _i["return"] != null) _i["return"](); } finally { if (_d) throw _e; } } return _arr; }
55
-
56
- function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }
57
-
58
- function _toConsumableArray(arr) { return _arrayWithoutHoles(arr) || _iterableToArray(arr) || _unsupportedIterableToArray(arr) || _nonIterableSpread(); }
59
-
60
- 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."); }
61
-
62
- function _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === "string") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return Array.from(o); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }
63
-
64
- function _iterableToArray(iter) { if (typeof Symbol !== "undefined" && iter[Symbol.iterator] != null || iter["@@iterator"] != null) return Array.from(iter); }
65
-
66
- function _arrayWithoutHoles(arr) { if (Array.isArray(arr)) return _arrayLikeToArray(arr); }
67
-
68
- function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) { arr2[i] = arr[i]; } return arr2; }
69
-
70
- function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
71
-
72
- 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); } }
73
-
74
- function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); Object.defineProperty(Constructor, "prototype", { writable: false }); return Constructor; }
75
-
76
- function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function"); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, writable: true, configurable: true } }); Object.defineProperty(subClass, "prototype", { writable: false }); if (superClass) _setPrototypeOf(subClass, superClass); }
77
-
78
- function _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }
79
-
80
- function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = _getPrototypeOf(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }
81
-
82
- function _possibleConstructorReturn(self, call) { if (call && (_typeof(call) === "object" || typeof call === "function")) { return call; } else if (call !== void 0) { throw new TypeError("Derived constructors may only return object or undefined"); } return _assertThisInitialized(self); }
83
-
84
- function _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return self; }
85
-
86
- function _isNativeReflectConstruct() { if (typeof Reflect === "undefined" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === "function") return true; try { Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); return true; } catch (e) { return false; } }
87
-
88
- function _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); }
89
-
90
- /* eslint-disable react/forbid-component-props */
91
-
92
- /* eslint-disable react/no-unused-prop-types */
93
- var dummyArray = [];
94
-
95
- var MultiSelectComponent = /*#__PURE__*/function (_React$Component) {
96
- _inherits(MultiSelectComponent, _React$Component);
97
-
98
- var _super = _createSuper(MultiSelectComponent);
99
-
100
- function MultiSelectComponent(props) {
101
- var _this;
102
-
103
- _classCallCheck(this, MultiSelectComponent);
104
-
105
- _this = _super.call(this, props);
106
- _this.getNextAriaId = (0, _IdProvider.getUniqueId)(_assertThisInitialized(_this));
107
- _this.getFilterSuggestions = (0, _dropDownUtils.makeGetMultiSelectFilterSuggestions)();
108
- _this.formatOptions = (0, _dropDownUtils.makeFormatOptions)();
109
- _this.getSelectedOptions = (0, _dropDownUtils.makeGetMultiSelectSelectedOptions)();
110
- _this.getIsShowClearIcon = (0, _dropDownUtils.makeGetIsShowClearIcon)(); //Use in AdvancedMultiSelect component
111
-
112
- _this.objectConcat = (0, _dropDownUtils.makeObjectConcat)();
113
- _this.formatSelectedOptions = (0, _dropDownUtils.makeFormatOptions)();
114
- var _this$props = _this.props,
115
- selectedOptions = _this$props.selectedOptions,
116
- _this$props$searchDeb = _this$props.searchDebounceTime,
117
- searchDebounceTime = _this$props$searchDeb === void 0 ? 500 : _this$props$searchDeb;
118
-
119
- var _this$handleFormatOpt = _this.handleFormatOptions(_this.props),
120
- allOptions = _this$handleFormatOpt.allOptions,
121
- normalizedAllOptions = _this$handleFormatOpt.normalizedAllOptions,
122
- normalizedFormatOptions = _this$handleFormatOpt.normalizedFormatOptions;
123
-
124
- var _this$handleGetSelect = _this.handleGetSelectedOptions(selectedOptions, normalizedFormatOptions, _this.props),
125
- formatSelectedOptions = _this$handleGetSelect.formatSelectedOptions,
126
- normalizedSelectedOptions = _this$handleGetSelect.normalizedSelectedOptions,
127
- selectedOptionIds = _this$handleGetSelect.selectedOptionIds;
128
-
129
- _this.state = {
130
- options: allOptions,
131
- optionsNormalize: normalizedAllOptions,
132
- selectedOptions: formatSelectedOptions,
133
- selectedOptionIds: selectedOptionIds,
134
- searchStr: '',
135
- hoverOption: 0,
136
- isFetchingOptions: false,
137
- highLightedSelectOptions: [],
138
- lastHighLightedSelectOption: '',
139
- shiftKeyPressHighLighted: 0,
140
- isActive: false
141
- };
142
- _this.allSelectedOptionsDetails = normalizedSelectedOptions;
143
- _this.suggestionsOrder = [];
144
- _this._isMounted = false;
145
-
146
- _Common.bind.apply(_assertThisInitialized(_this), ['handleInputCick', 'handleFilterSuggestions', 'handleKeyDown', 'handleSelectAll', 'handleDeselectAll', 'handleSelectOption', 'handleRemoveOption', 'handleSearch', 'handleClickSelectedOption', 'handleChange', 'handlePopupClose', 'togglePopup', 'selectedOptionRef', 'searchInputRef', 'suggestionContainerRef', 'suggestionItemRef', 'selectedOptionContainerRef', 'handleActive', 'handleInactive', 'handleMouseEnter', 'handleFetchOptions', 'handleFormatOptions', 'handleGetSelectedOptions', 'handleComponentDidUpdate', 'handleInputFocus', 'handleExposedPublicMethods']);
147
-
148
- _this.handleSearchOptions = (0, _Common.debounce)(_this.handleSearchOptions.bind(_assertThisInitialized(_this)), searchDebounceTime);
149
- _this.handleScroll = _this.handleScroll.bind(_assertThisInitialized(_this));
150
- _this.handleScrollFuncCall = (0, _Common.debounce)(_this.handleScrollFuncCall.bind(_assertThisInitialized(_this)), 500);
151
- return _this;
152
- }
153
-
154
- _createClass(MultiSelectComponent, [{
155
- key: "componentDidMount",
156
- value: function componentDidMount() {
157
- // let { suggestionContainer } = this;
158
- this._isMounted = true;
159
- this.handleExposedPublicMethods(); // suggestionContainer &&
160
- // suggestionContainer.addEventListener('scroll', this.handleScroll);
161
- }
162
- }, {
163
- key: "componentWillReceiveProps",
164
- value: function componentWillReceiveProps(nextProps) {
165
- var _this2 = this;
166
-
167
- var selectedOptions = nextProps.selectedOptions,
168
- options = nextProps.options,
169
- valueField = nextProps.valueField,
170
- textField = nextProps.textField,
171
- prefixText = nextProps.prefixText;
172
- var oldProps = this.props;
173
-
174
- if (selectedOptions !== oldProps.selectedOptions || options !== oldProps.options || valueField !== oldProps.valueField || textField !== oldProps.textField || prefixText !== oldProps.prefixText //For GroupMultiSelect component
175
- ) {
176
- var _this$handleFormatOpt2 = this.handleFormatOptions(nextProps),
177
- allOptions = _this$handleFormatOpt2.allOptions,
178
- normalizedAllOptions = _this$handleFormatOpt2.normalizedAllOptions,
179
- normalizedFormatOptions = _this$handleFormatOpt2.normalizedFormatOptions;
180
-
181
- var oldAllSelectedOptionsDetails = this.allSelectedOptionsDetails;
182
- var optionsDetails = Object.assign({}, oldAllSelectedOptionsDetails, normalizedFormatOptions);
183
-
184
- var _this$handleGetSelect2 = this.handleGetSelectedOptions(selectedOptions, optionsDetails, nextProps),
185
- formatSelectedOptions = _this$handleGetSelect2.formatSelectedOptions,
186
- normalizedSelectedOptions = _this$handleGetSelect2.normalizedSelectedOptions,
187
- selectedOptionIds = _this$handleGetSelect2.selectedOptionIds;
188
-
189
- this.allSelectedOptionsDetails = Object.assign(oldAllSelectedOptionsDetails, normalizedSelectedOptions);
190
- this.setState({
191
- options: allOptions,
192
- optionsNormalize: normalizedAllOptions,
193
- selectedOptions: formatSelectedOptions,
194
- selectedOptionIds: selectedOptionIds
195
- }, function () {
196
- var hoverOption = _this2.state.hoverOption;
197
-
198
- var suggestions = _this2.handleFilterSuggestions();
199
-
200
- var suggestionsLen = suggestions.length;
201
-
202
- var _ref = suggestions[hoverOption] || {},
203
- id = _ref.id;
204
-
205
- var newHoverOption = !(0, _Common.getIsEmptyValue)(id) ? hoverOption : suggestionsLen ? suggestionsLen - 1 : 0;
206
-
207
- _this2.setState({
208
- hoverOption: newHoverOption
209
- });
210
- });
211
- }
212
- }
213
- }, {
214
- key: "componentDidUpdate",
215
- value: function componentDidUpdate(prevProps, prevState) {
216
- var suggestionContainer = this.suggestionContainer,
217
- selectedOptionContainer = this.selectedOptionContainer,
218
- suggestionsOrder = this.suggestionsOrder;
219
- var _this$state = this.state,
220
- hoverOption = _this$state.hoverOption,
221
- highLightedSelectOptions = _this$state.highLightedSelectOptions,
222
- selectedOptions = _this$state.selectedOptions,
223
- searchStr = _this$state.searchStr;
224
- var _this$props2 = this.props,
225
- needLocalSearch = _this$props2.needLocalSearch,
226
- isPopupOpen = _this$props2.isPopupOpen,
227
- onDropBoxClose = _this$props2.onDropBoxClose,
228
- onDropBoxOpen = _this$props2.onDropBoxOpen,
229
- isSearchClearOnClose = _this$props2.isSearchClearOnClose; //handle dropbox open & close
230
-
231
- if (prevProps.isPopupOpen !== isPopupOpen) {
232
- isPopupOpen && onDropBoxOpen && this.handleFetchOptions(onDropBoxOpen, searchStr);
233
-
234
- if (!isPopupOpen) {
235
- this.setState({
236
- hoverOption: 0
237
- });
238
- isSearchClearOnClose && searchStr && this.handleSearch('');
239
- onDropBoxClose && onDropBoxClose();
240
- }
241
- } //scrollTo handling
242
-
243
-
244
- var hoverId = suggestionsOrder[hoverOption] || '';
245
- var selectedSuggestion = this["suggestion_".concat(hoverId)];
246
- var lastHighLightedSelectOption = highLightedSelectOptions.slice(-1).length ? highLightedSelectOptions.slice(-1)[0] : null;
247
- var selectedOption = this["selectedOption_".concat(lastHighLightedSelectOption)];
248
- isPopupOpen && (0, _Common.scrollTo)(suggestionContainer, selectedSuggestion);
249
- selectedOptions.length && selectedOption && (0, _Common.scrollTo)(selectedOptionContainer, selectedOption); //When suggestions length less than 5, getNextOptions function call
250
-
251
- var _this$props3 = this.props,
252
- isNextOptions = _this$props3.isNextOptions,
253
- getNextOptions = _this$props3.getNextOptions; // let { searchStr } = this.state;
254
-
255
- var suggestions = this.handleFilterSuggestions();
256
- var suggestionsLen = suggestions.length;
257
-
258
- if (isPopupOpen && suggestionsLen <= 5 && isNextOptions && getNextOptions && !needLocalSearch) {
259
- this.handleFetchOptions(getNextOptions, searchStr);
260
- } //Need To MultiselectNew Component
261
-
262
-
263
- this.handleComponentDidUpdate(prevProps, prevState);
264
- }
265
- }, {
266
- key: "componentWillUnmount",
267
- value: function componentWillUnmount() {
268
- // let { suggestionContainer } = this;
269
- this._isMounted = false; // suggestionContainer &&
270
- // suggestionContainer.removeEventListener('scroll', this.handleScroll);
271
- }
272
- }, {
273
- key: "handleComponentDidUpdate",
274
- value: function handleComponentDidUpdate() {
275
- return;
276
- }
277
- }, {
278
- key: "handleFormatOptions",
279
- value: function handleFormatOptions(props) {
280
- var options = props.options,
281
- valueField = props.valueField,
282
- textField = props.textField,
283
- prefixText = props.prefixText,
284
- disabledOptions = props.disabledOptions;
285
- return this.formatOptions({
286
- options: options,
287
- valueField: valueField,
288
- textField: textField,
289
- prefixText: prefixText,
290
- optionType: 'default',
291
- disabledOptions: disabledOptions
292
- });
293
- }
294
- }, {
295
- key: "handleGetSelectedOptions",
296
- value: function handleGetSelectedOptions(selectedOptions, normalizedFormatOptions) {
297
- return this.getSelectedOptions({
298
- selectedOptions: selectedOptions,
299
- normalizedFormatOptions: normalizedFormatOptions
300
- });
301
- }
302
- }, {
303
- key: "handleInputCick",
304
- value: function handleInputCick(e) {
305
- var removeClose = this.props.removeClose;
306
- var _this$state2 = this.state,
307
- highLightedSelectOptions = _this$state2.highLightedSelectOptions,
308
- _this$state2$searchSt = _this$state2.searchStr,
309
- searchStr = _this$state2$searchSt === void 0 ? '' : _this$state2$searchSt;
310
-
311
- if (highLightedSelectOptions.length) {
312
- this.setState({
313
- highLightedSelectOptions: [],
314
- shiftKeyPressHighLighted: 0,
315
- lastHighLightedSelectOption: ''
316
- });
317
- removeClose(e);
318
- } else if (searchStr.length) {
319
- removeClose(e);
320
- } else {
321
- this.togglePopup(e);
322
- }
323
- }
324
- }, {
325
- key: "handleFilterSuggestions",
326
- value: function handleFilterSuggestions() {
327
- var _this$state3 = this.state,
328
- _this$state3$options = _this$state3.options,
329
- options = _this$state3$options === void 0 ? dummyArray : _this$state3$options,
330
- _this$state3$searchSt = _this$state3.searchStr,
331
- searchStr = _this$state3$searchSt === void 0 ? '' : _this$state3$searchSt;
332
- var _this$props4 = this.props,
333
- selectedOptions = _this$props4.selectedOptions,
334
- needLocalSearch = _this$props4.needLocalSearch;
335
-
336
- var _this$getFilterSugges = this.getFilterSuggestions({
337
- options: options,
338
- selectedOptions: selectedOptions,
339
- searchStr: (0, _Common.getSearchString)(searchStr),
340
- needSearch: needLocalSearch
341
- }),
342
- suggestions = _this$getFilterSugges.suggestions,
343
- suggestionIds = _this$getFilterSugges.suggestionIds;
344
-
345
- this.suggestionsOrder = suggestionIds;
346
- return suggestions;
347
- }
348
- }, {
349
- key: "handleKeyDown",
350
- value: function handleKeyDown(e) {
351
- var keyCode = e.keyCode,
352
- ctrlKey = e.ctrlKey,
353
- metaKey = e.metaKey,
354
- shiftKey = e.shiftKey;
355
- var suggestions = [];
356
- var _this$state4 = this.state,
357
- hoverOption = _this$state4.hoverOption,
358
- searchStr = _this$state4.searchStr,
359
- highLightedSelectOptions = _this$state4.highLightedSelectOptions,
360
- lastHighLightedSelectOption = _this$state4.lastHighLightedSelectOption,
361
- shiftKeyPressHighLighted = _this$state4.shiftKeyPressHighLighted,
362
- selectedOptions = _this$state4.selectedOptionIds;
363
- var _this$props5 = this.props,
364
- isNextOptions = _this$props5.isNextOptions,
365
- getNextOptions = _this$props5.getNextOptions,
366
- isPopupOpen = _this$props5.isPopupOpen,
367
- isPopupOpenOnEnter = _this$props5.isPopupOpenOnEnter,
368
- onKeyDown = _this$props5.onKeyDown;
369
- var highLightedSelectOptionsLen = highLightedSelectOptions.length;
370
-
371
- if (isPopupOpen && (keyCode === 38 || keyCode === 40 || keyCode === 13 || keyCode === 27 || keyCode === 9)) {
372
- suggestions = this.handleFilterSuggestions();
373
- }
374
-
375
- if (!isPopupOpen && !isPopupOpenOnEnter) {
376
- onKeyDown && onKeyDown(e);
377
- }
378
-
379
- if (!isPopupOpen && keyCode === 40) {
380
- //down arrow press popup open
381
- e.preventDefault(); //prevent body scroll
382
-
383
- this.togglePopup(e);
384
- }
385
-
386
- var suggestionsLen = suggestions.length;
387
-
388
- if (suggestionsLen && isPopupOpen && keyCode === 38) {
389
- //up arrow
390
-
391
- /*if (hoverOption === 0) { //disable first to last option higlight
392
- !isNextOptions && this.setState({ hoverOption: suggestionsLen - 1 });
393
- }*/
394
- if (hoverOption) {
395
- this.setState({
396
- hoverOption: hoverOption - 1
397
- });
398
- }
399
- } else if (suggestionsLen && isPopupOpen && keyCode === 40) {
400
- //down arrow
401
-
402
- /*else if (hoverOption === suggestionsLen - 1 || hoverOption === null) {
403
- //disable last to first option higlight
404
- !isNextOptions && this.setState({ hoverOption: 0 });
405
- }*/
406
- if (isNextOptions && suggestionsLen >= 5 && hoverOption === suggestionsLen - 3) {
407
- getNextOptions && this.handleFetchOptions(getNextOptions, searchStr);
408
- this.setState({
409
- hoverOption: hoverOption + 1
410
- });
411
- } else if (suggestionsLen - 1 > hoverOption) {
412
- this.setState({
413
- hoverOption: hoverOption + 1
414
- });
415
- }
416
- } else if (keyCode === 13) {
417
- //enter key
418
- var selectedOption = suggestions[hoverOption] || {};
419
- var id = selectedOption.id;
420
- isPopupOpen && !(0, _Common.getIsEmptyValue)(id) && this.handleSelectOption(id, e);
421
- !isPopupOpen && isPopupOpenOnEnter && this.togglePopup(e);
422
- } else if (selectedOptions.length && keyCode === 8 && !searchStr.length) {
423
- //backspace key
424
- if (highLightedSelectOptionsLen) {
425
- this.handleRemoveOption(highLightedSelectOptions);
426
- } else {
427
- this.handleRemoveOption(selectedOptions.slice(-1)); // this.setState({
428
- // highLightedSelectOptions: selectedOptions.slice(-1)
429
- // });
430
- }
431
- } else if (selectedOptions && keyCode === 65 && (ctrlKey || metaKey) && !searchStr.length) {
432
- //ctrl+a key
433
- this.setState({
434
- highLightedSelectOptions: selectedOptions,
435
- shiftKeyPressHighLighted: 0
436
- });
437
- } else if (keyCode === 39 && shiftKey && selectedOptions.length && !searchStr.length) {
438
- //shift+right arrow=39
439
- var lastHighLightedSelectOptionIndex = lastHighLightedSelectOption && selectedOptions.indexOf(lastHighLightedSelectOption) >= 0 ? selectedOptions.indexOf(lastHighLightedSelectOption) : 0;
440
- var newShiftKeyPressHighLighted = shiftKeyPressHighLighted ? shiftKeyPressHighLighted : shiftKeyPressHighLighted + 1;
441
- var newHighLightedSelectOption = lastHighLightedSelectOptionIndex !== null ? selectedOptions[lastHighLightedSelectOptionIndex + newShiftKeyPressHighLighted] : selectedOptions[0];
442
-
443
- if (!(0, _Common.getIsEmptyValue)(newHighLightedSelectOption)) {
444
- var newLastHighLightedSelectOption = lastHighLightedSelectOption ? lastHighLightedSelectOption : selectedOptions[0];
445
- highLightedSelectOptions = !shiftKeyPressHighLighted ? [newLastHighLightedSelectOption] : highLightedSelectOptions;
446
- var isRemove = highLightedSelectOptions.indexOf(newHighLightedSelectOption) >= 0 && newHighLightedSelectOption !== lastHighLightedSelectOption ? true : false;
447
- var newHighLightedSelectOptions = isRemove ? highLightedSelectOptions.filter(function (option) {
448
- return option !== newHighLightedSelectOption;
449
- }) : [].concat(_toConsumableArray(highLightedSelectOptions), [newHighLightedSelectOption]);
450
- this.setState({
451
- highLightedSelectOptions: newHighLightedSelectOptions,
452
- shiftKeyPressHighLighted: newShiftKeyPressHighLighted + 1,
453
- lastHighLightedSelectOption: newLastHighLightedSelectOption
454
- });
455
- }
456
- } else if (keyCode === 37 && shiftKey && selectedOptions.length && !searchStr.length) {
457
- // shift+left arrow=37
458
- var _lastHighLightedSelectOptionIndex = lastHighLightedSelectOption ? selectedOptions.indexOf(lastHighLightedSelectOption) : selectedOptions.length - 1;
459
-
460
- var _newShiftKeyPressHighLighted = shiftKeyPressHighLighted !== 1 ? shiftKeyPressHighLighted : shiftKeyPressHighLighted - 1;
461
-
462
- var _newHighLightedSelectOption = selectedOptions[_lastHighLightedSelectOptionIndex + _newShiftKeyPressHighLighted - 1];
463
-
464
- if (!(0, _Common.getIsEmptyValue)(_newHighLightedSelectOption)) {
465
- var _newLastHighLightedSelectOption = lastHighLightedSelectOption ? lastHighLightedSelectOption : selectedOptions.slice(-1)[0];
466
-
467
- highLightedSelectOptions = !shiftKeyPressHighLighted ? [_newLastHighLightedSelectOption] : highLightedSelectOptions;
468
-
469
- var _isRemove = highLightedSelectOptions.indexOf(_newHighLightedSelectOption) >= 0 && _newHighLightedSelectOption !== lastHighLightedSelectOption ? true : false;
470
-
471
- var _newHighLightedSelectOptions = _isRemove ? highLightedSelectOptions.filter(function (option) {
472
- return option !== _newHighLightedSelectOption;
473
- }) : [].concat(_toConsumableArray(highLightedSelectOptions), [_newHighLightedSelectOption]);
474
-
475
- this.setState({
476
- highLightedSelectOptions: _newHighLightedSelectOptions,
477
- shiftKeyPressHighLighted: _newShiftKeyPressHighLighted - 1,
478
- lastHighLightedSelectOption: _newLastHighLightedSelectOption
479
- });
480
- }
481
- } else if ((keyCode === 39 || keyCode === 37) && selectedOptions.length && !searchStr.length) {
482
- var isRightArrow = keyCode === 39 ? true : false; // let isLefttArrow = keyCode === 37 ? true : false;
483
-
484
- if (highLightedSelectOptions.length) {
485
- var _highLightedSelectOpt = highLightedSelectOptions.slice(-1),
486
- _highLightedSelectOpt2 = _slicedToArray(_highLightedSelectOpt, 1),
487
- _lastHighLightedSelectOption = _highLightedSelectOpt2[0];
488
-
489
- var _lastHighLightedSelectOptionIndex2 = selectedOptions.indexOf(_lastHighLightedSelectOption);
490
-
491
- var newLastHighLightedSelectOptionIndex = isRightArrow ? _lastHighLightedSelectOptionIndex2 === selectedOptions.length - 1 ? _lastHighLightedSelectOptionIndex2 : _lastHighLightedSelectOptionIndex2 + 1 : _lastHighLightedSelectOptionIndex2 - 1;
492
- var _newLastHighLightedSelectOption2 = selectedOptions[newLastHighLightedSelectOptionIndex];
493
- var isEmptyHighlighted = isRightArrow && highLightedSelectOptions.length === 1 && selectedOptions.slice(-1)[0] === _lastHighLightedSelectOption ? true : false;
494
-
495
- if (!(0, _Common.getIsEmptyValue)(_newLastHighLightedSelectOption2)) {
496
- this.setState({
497
- lastHighLightedSelectOption: isEmptyHighlighted ? '' : _newLastHighLightedSelectOption2,
498
- highLightedSelectOptions: isEmptyHighlighted ? [] : [_newLastHighLightedSelectOption2],
499
- shiftKeyPressHighLighted: 0
500
- });
501
- }
502
- } else {
503
- var _ref2 = isRightArrow ? selectedOptions : selectedOptions.slice(-1),
504
- _ref3 = _slicedToArray(_ref2, 1),
505
- _newLastHighLightedSelectOption3 = _ref3[0];
506
-
507
- this.setState({
508
- lastHighLightedSelectOption: _newLastHighLightedSelectOption3,
509
- highLightedSelectOptions: [_newLastHighLightedSelectOption3],
510
- shiftKeyPressHighLighted: 0
511
- });
512
- }
513
- } else if (keyCode === 27) {// this.handlePopupClose(e);
514
- } else if (keyCode === 9) {
515
- var _selectedOption = suggestions[hoverOption] || {};
516
-
517
- var _id = _selectedOption.id;
518
- isPopupOpen && !(0, _Common.getIsEmptyValue)(_id) && this.handleSelectOption(_id, e);
519
- this.handlePopupClose(e);
520
- }
521
- }
522
- }, {
523
- key: "handleSelectAll",
524
- value: function handleSelectAll(e) {
525
- e && e.preventDefault();
526
- var suggestions = this.handleFilterSuggestions();
527
- var selectedOptions = this.props.selectedOptions;
528
- var newSelectedOptions = [];
529
- suggestions.forEach(function (option) {
530
- var id = option.id;
531
-
532
- if (selectedOptions.indexOf(id) === -1) {
533
- newSelectedOptions.push(id);
534
- }
535
- });
536
- this.handleChange([].concat(_toConsumableArray(selectedOptions), newSelectedOptions)); // this.handlePopupClose(e);
537
- }
538
- }, {
539
- key: "handleDeselectAll",
540
- value: function handleDeselectAll(e) {
541
- e && e.preventDefault();
542
- var removeClose = this.props.removeClose;
543
- var highLightedSelectOptions = this.state.highLightedSelectOptions;
544
-
545
- if (highLightedSelectOptions.length) {
546
- this.setState({
547
- highLightedSelectOptions: [],
548
- lastHighLightedSelectOption: ''
549
- });
550
- }
551
-
552
- removeClose(e);
553
- this.handleChange([]);
554
- }
555
- }, {
556
- key: "handleSelectOption",
557
- value: function handleSelectOption(option, value, index, e) {
558
- var _this$props6 = this.props,
559
- selectedOptions = _this$props6.selectedOptions,
560
- isSearchClearOnSelect = _this$props6.isSearchClearOnSelect;
561
- var searchStr = this.state.searchStr;
562
-
563
- if (searchStr.trim() != '' && isSearchClearOnSelect) {
564
- this.handleSearch('');
565
- }
566
-
567
- this.handleChange([].concat(_toConsumableArray(selectedOptions), [option]), e); // e && e.stopPropagation && this.handlePopupClose(e);
568
- }
569
- }, {
570
- key: "handleRemoveOption",
571
- value: function handleRemoveOption(options) {
572
- var newOptions = !(0, _Common.getIsEmptyValue)(options) && !Array.isArray(options) ? [options] : options;
573
- var _this$props7 = this.props,
574
- selectedOptions = _this$props7.selectedOptions,
575
- isReadOnly = _this$props7.isReadOnly;
576
- var _this$state5 = this.state,
577
- highLightedSelectOptions = _this$state5.highLightedSelectOptions,
578
- lastHighLightedSelectOption = _this$state5.lastHighLightedSelectOption,
579
- shiftKeyPressHighLighted = _this$state5.shiftKeyPressHighLighted;
580
-
581
- if (newOptions.length && !isReadOnly) {
582
- var newSelectedOptions = selectedOptions.filter(function (option) {
583
- return newOptions.indexOf(option) === -1;
584
- });
585
- var newHighLightedSelectOptions = highLightedSelectOptions.filter(function (option) {
586
- return newSelectedOptions.indexOf(option) >= 0;
587
- });
588
- var isHighlightedRemoved = false;
589
- var newOptionsLen = newOptions.length;
590
-
591
- for (var i = 0; i < newOptionsLen; i++) {
592
- var removedOption = newOptions[i];
593
-
594
- if (highLightedSelectOptions.indexOf(removedOption) >= 0) {
595
- isHighlightedRemoved = true;
596
- break;
597
- }
598
- }
599
-
600
- this.setState({
601
- lastHighLightedSelectOption: newSelectedOptions.indexOf(lastHighLightedSelectOption) >= 0 && !isHighlightedRemoved ? lastHighLightedSelectOption : '',
602
- highLightedSelectOptions: isHighlightedRemoved ? [] : newHighLightedSelectOptions,
603
- shiftKeyPressHighLighted: isHighlightedRemoved ? 0 : shiftKeyPressHighLighted
604
- });
605
- this.handleChange(newSelectedOptions);
606
- }
607
-
608
- this.searchInput && this.searchInput.focus({
609
- preventScroll: true
610
- });
611
- }
612
- }, {
613
- key: "handleMouseEnter",
614
- value: function handleMouseEnter(id, val, hoverOptionIndex, e) {
615
- e && e.preventDefault();
616
- var hoverOption = this.state.hoverOption;
617
- var suggestionsOrder = this.suggestionsOrder;
618
- var newHoverIndex = suggestionsOrder.indexOf(id);
619
-
620
- if (newHoverIndex !== hoverOption) {
621
- this.setState({
622
- hoverOption: newHoverIndex
623
- });
624
- }
625
- }
626
- }, {
627
- key: "handleFetchOptions",
628
- value: function handleFetchOptions() {
629
- var _this3 = this;
630
-
631
- for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
632
- args[_key] = arguments[_key];
633
- }
634
-
635
- var APICall = args[0],
636
- searchStr = args[1];
637
- var isFetchingOptions = this.state.isFetchingOptions;
638
- var _isMounted = this._isMounted;
639
- var isForce = isFetchingOptions && searchStr ? true : false;
640
-
641
- if (!isFetchingOptions && APICall || isForce) {
642
- this.setState({
643
- isFetchingOptions: true
644
- });
645
-
646
- try {
647
- return APICall(searchStr).then(function () {
648
- _isMounted && _this3.setState({
649
- isFetchingOptions: false
650
- });
651
- }, function () {
652
- _isMounted && _this3.setState({
653
- isFetchingOptions: false
654
- });
655
- });
656
- } catch (e) {
657
- _isMounted && this.setState({
658
- isFetchingOptions: false
659
- });
660
- }
661
- }
662
- }
663
- }, {
664
- key: "handleSearchOptions",
665
- value: function handleSearchOptions() {
666
- var onSearch = this.props.onSearch;
667
- var searchStr = this.state.searchStr;
668
- searchStr && this.handleFetchOptions(onSearch, searchStr);
669
- }
670
- }, {
671
- key: "handleSearch",
672
- value: function handleSearch(value, e) {
673
- var _this4 = this;
674
-
675
- var _this$props8 = this.props,
676
- onSearch = _this$props8.onSearch,
677
- isPopupOpen = _this$props8.isPopupOpen;
678
- !isPopupOpen && e && this.togglePopup(e);
679
- var _this$state$searchStr = this.state.searchStr,
680
- searchStr = _this$state$searchStr === void 0 ? '' : _this$state$searchStr;
681
- var searchStrRegex = (0, _Common.getSearchString)(searchStr);
682
- var valueStrRegex = (0, _Common.getSearchString)(value);
683
- var isSearch = searchStrRegex !== valueStrRegex ? true : false;
684
- this.setState({
685
- searchStr: value
686
- }, function () {
687
- if (!value) {
688
- onSearch && onSearch('');
689
- } else if (isSearch && onSearch) {
690
- _this4.handleSearchOptions();
691
- }
692
- });
693
- }
694
- }, {
695
- key: "handleClickSelectedOption",
696
- value: function handleClickSelectedOption() {
697
- var id = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : '';
698
- var e = arguments.length > 1 ? arguments[1] : undefined;
699
- var selectedOptions = this.props.selectedOptions;
700
- var _this$state6 = this.state,
701
- highLightedSelectOptions = _this$state6.highLightedSelectOptions,
702
- lastHighLightedSelectOption = _this$state6.lastHighLightedSelectOption;
703
- var metaKey = e.metaKey,
704
- ctrlKey = e.ctrlKey,
705
- shiftKey = e.shiftKey;
706
-
707
- if (e && shiftKey) {
708
- //shift+click
709
- var from = selectedOptions.indexOf(lastHighLightedSelectOption) >= 0 ? selectedOptions.indexOf(lastHighLightedSelectOption) : 0;
710
- var to = id && selectedOptions.indexOf(id) >= 0 ? selectedOptions.indexOf(id) : null;
711
-
712
- if (to >= 0 && to < from) {
713
- var _ref4 = [from, from = to];
714
- to = _ref4[0];
715
- }
716
-
717
- to += 1;
718
- var newSelectedHighlights = to ? selectedOptions.slice(from, to) : [];
719
- to && this.setState({
720
- highLightedSelectOptions: newSelectedHighlights,
721
- lastHighLightedSelectOption: id
722
- });
723
- } else if (e && (ctrlKey || metaKey)) {
724
- //ctrl+click
725
- var isRemove = highLightedSelectOptions.indexOf(id) >= 0;
726
- var _newSelectedHighlights = [];
727
-
728
- if (isRemove) {
729
- lastHighLightedSelectOption = id === lastHighLightedSelectOption ? '' : lastHighLightedSelectOption;
730
- _newSelectedHighlights = highLightedSelectOptions.filter(function (option) {
731
- return option !== id;
732
- });
733
- } else {
734
- lastHighLightedSelectOption = id;
735
- _newSelectedHighlights = [].concat(_toConsumableArray(highLightedSelectOptions), [id]);
736
- }
737
-
738
- this.setState({
739
- highLightedSelectOptions: _newSelectedHighlights,
740
- lastHighLightedSelectOption: lastHighLightedSelectOption
741
- });
742
- } else {
743
- this.setState({
744
- highLightedSelectOptions: [id],
745
- lastHighLightedSelectOption: id
746
- });
747
- }
748
-
749
- this.setState({
750
- shiftKeyPressHighLighted: 0
751
- });
752
- this.searchInput && this.searchInput.focus({
753
- preventScroll: true
754
- });
755
- }
756
- }, {
757
- key: "handleScroll",
758
- value: function handleScroll(e) {
759
- var isNextOptions = this.props.isNextOptions;
760
-
761
- if (e.target.scrollTop + e.target.offsetHeight > e.target.scrollHeight - 1 && isNextOptions) {
762
- this.handleScrollFuncCall();
763
- }
764
- }
765
- }, {
766
- key: "handleScrollFuncCall",
767
- value: function handleScrollFuncCall() {
768
- var getNextOptions = this.props.getNextOptions;
769
- var searchStr = this.state.searchStr;
770
- getNextOptions && getNextOptions(searchStr);
771
- }
772
- }, {
773
- key: "handleChange",
774
- value: function handleChange() {
775
- var selectedOptions = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : [];
776
- var e = arguments.length > 1 ? arguments[1] : undefined;
777
- var optionsNormalize = this.state.optionsNormalize;
778
- var _this$props9 = this.props,
779
- onChange = _this$props9.onChange,
780
- needToCloseOnSelect = _this$props9.needToCloseOnSelect,
781
- togglePopup = _this$props9.togglePopup,
782
- propSelectedOptions = _this$props9.selectedOptions,
783
- _this$props9$disabled = _this$props9.disabledOptions,
784
- disabledOptions = _this$props9$disabled === void 0 ? dummyArray : _this$props9$disabled;
785
-
786
- var _filterSelectedOption = (0, _dropDownUtils.filterSelectedOptions)({
787
- selectedOptions: selectedOptions,
788
- propSelectedOptions: propSelectedOptions,
789
- disabledOptions: disabledOptions
790
- }),
791
- newSelectedOptions = _filterSelectedOption.newSelectedOptions;
792
-
793
- var selectedOptionsLen = newSelectedOptions.length;
794
- var allSelectedOptionsDetails = [];
795
-
796
- for (var i = 0; i < selectedOptionsLen; i++) {
797
- var id = newSelectedOptions[i];
798
- allSelectedOptionsDetails.push(optionsNormalize[id]);
799
- }
800
-
801
- onChange && onChange(newSelectedOptions, allSelectedOptionsDetails); // this.setState({ searchStr: '' });
802
-
803
- this.searchInput && this.searchInput.focus({
804
- preventScroll: true
805
- });
806
-
807
- if (needToCloseOnSelect) {
808
- togglePopup(e);
809
- }
810
- }
811
- }, {
812
- key: "togglePopup",
813
- value: function togglePopup(e) {
814
- var _this$props10 = this.props,
815
- togglePopup = _this$props10.togglePopup,
816
- defaultDropBoxPosition = _this$props10.defaultDropBoxPosition,
817
- isReadOnly = _this$props10.isReadOnly;
818
- !isReadOnly && togglePopup(e, defaultDropBoxPosition ? "".concat(defaultDropBoxPosition, "Center") : null);
819
- }
820
- }, {
821
- key: "handlePopupClose",
822
- value: function handlePopupClose(e) {
823
- var closePopupOnly = this.props.closePopupOnly;
824
- closePopupOnly(e);
825
- }
826
- }, {
827
- key: "searchInputRef",
828
- value: function searchInputRef(el) {
829
- var getRef = this.props.getRef;
830
- this.searchInput = el;
831
- getRef && getRef(el);
832
- }
833
- }, {
834
- key: "selectedOptionContainerRef",
835
- value: function selectedOptionContainerRef(el) {
836
- var getTargetRef = this.props.getTargetRef;
837
- this.selectedOptionContainer = el;
838
- getTargetRef(el);
839
- }
840
- }, {
841
- key: "selectedOptionRef",
842
- value: function selectedOptionRef(el, id) {
843
- this["selectedOption_".concat(id)] = el;
844
- }
845
- }, {
846
- key: "suggestionContainerRef",
847
- value: function suggestionContainerRef(el) {
848
- this.suggestionContainer = el;
849
- }
850
- }, {
851
- key: "suggestionItemRef",
852
- value: function suggestionItemRef(el, index, id) {
853
- this["suggestion_".concat(id)] = el;
854
- }
855
- }, {
856
- key: "handleActive",
857
- value: function handleActive(e) {
858
- var _this$state7 = this.state,
859
- searchStr = _this$state7.searchStr,
860
- isActive = _this$state7.isActive;
861
-
862
- if (!isActive) {
863
- this.setState({
864
- isActive: true
865
- });
866
- }
867
-
868
- var _ref5 = e || {},
869
- target = _ref5.target;
870
-
871
- target && target.setSelectionRange(target, 0);
872
- var onFocus = this.props.onFocus;
873
- onFocus && onFocus(searchStr);
874
- }
875
- }, {
876
- key: "handleInactive",
877
- value: function handleInactive() {
878
- var isActive = this.state.isActive;
879
-
880
- if (isActive) {
881
- this.setState({
882
- isActive: false
883
- });
884
- }
885
- }
886
- }, {
887
- key: "handleInputFocus",
888
- value: function handleInputFocus() {
889
- var _this$props11 = this.props,
890
- isDisabled = _this$props11.isDisabled,
891
- isReadOnly = _this$props11.isReadOnly;
892
- this.searchInput && !isDisabled && !isReadOnly && this.searchInput.focus({
893
- preventScroll: true
894
- });
895
- }
896
- }, {
897
- key: "handleExposedPublicMethods",
898
- value: function handleExposedPublicMethods() {
899
- var _this$props12 = this.props,
900
- getPublicMethods = _this$props12.getPublicMethods,
901
- openPopupOnly = _this$props12.openPopupOnly;
902
- getPublicMethods && getPublicMethods({
903
- openPopupOnly: openPopupOnly
904
- });
905
- }
906
- }, {
907
- key: "render",
908
- value: function render() {
909
- var _this$props13 = this.props,
910
- isReadOnly = _this$props13.isReadOnly,
911
- needSelectAll = _this$props13.needSelectAll,
912
- searchEmptyMessage = _this$props13.searchEmptyMessage,
913
- emptyMessage = _this$props13.emptyMessage,
914
- noMoreOptionsMessage = _this$props13.noMoreOptionsMessage,
915
- dropBoxSize = _this$props13.dropBoxSize,
916
- placeHolder = _this$props13.placeHolder,
917
- isPopupOpen = _this$props13.isPopupOpen,
918
- isPopupReady = _this$props13.isPopupReady,
919
- position = _this$props13.position,
920
- defaultDropBoxPosition = _this$props13.defaultDropBoxPosition,
921
- selectAllText = _this$props13.selectAllText,
922
- getContainerRef = _this$props13.getContainerRef,
923
- removeClose = _this$props13.removeClose,
924
- isAnimate = _this$props13.isAnimate,
925
- animationStyle = _this$props13.animationStyle,
926
- textBoxSize = _this$props13.textBoxSize,
927
- variant = _this$props13.variant,
928
- size = _this$props13.size,
929
- isDisabled = _this$props13.isDisabled,
930
- title = _this$props13.title,
931
- needResponsive = _this$props13.needResponsive,
932
- dataId = _this$props13.dataId,
933
- isSearching = _this$props13.isSearching,
934
- borderColor = _this$props13.borderColor,
935
- textBoxClass = _this$props13.textBoxClass,
936
- needBorder = _this$props13.needBorder,
937
- disableAction = _this$props13.disableAction,
938
- isBoxPaddingNeed = _this$props13.isBoxPaddingNeed,
939
- palette = _this$props13.palette,
940
- needAutoFocus = _this$props13.needAutoFocus,
941
- htmlId = _this$props13.htmlId,
942
- i18nKeys = _this$props13.i18nKeys,
943
- a11y = _this$props13.a11y,
944
- children = _this$props13.children,
945
- customChildrenClass = _this$props13.customChildrenClass,
946
- getFooter = _this$props13.getFooter,
947
- needEffect = _this$props13.needEffect,
948
- disabledOptions = _this$props13.disabledOptions;
949
- var _i18nKeys = i18nKeys,
950
- _i18nKeys$clearText = _i18nKeys.clearText,
951
- clearText = _i18nKeys$clearText === void 0 ? 'Clear all' : _i18nKeys$clearText,
952
- _i18nKeys$searchText = _i18nKeys.searchText,
953
- searchText = _i18nKeys$searchText === void 0 ? 'Searching...' : _i18nKeys$searchText;
954
- var _a11y$clearLabel = a11y.clearLabel,
955
- clearLabel = _a11y$clearLabel === void 0 ? 'Clear all' : _a11y$clearLabel;
956
- i18nKeys = Object.assign({}, i18nKeys, {
957
- emptyText: i18nKeys.emptyText || emptyMessage,
958
- searchEmptyText: i18nKeys.searchEmptyText || searchEmptyMessage,
959
- noMoreText: i18nKeys.noMoreText || noMoreOptionsMessage
960
- });
961
- var _this$state8 = this.state,
962
- selectedOptions = _this$state8.selectedOptions,
963
- searchStr = _this$state8.searchStr,
964
- hoverOption = _this$state8.hoverOption,
965
- highLightedSelectOptions = _this$state8.highLightedSelectOptions,
966
- options = _this$state8.options,
967
- isFetchingOptions = _this$state8.isFetchingOptions,
968
- isActive = _this$state8.isActive;
969
- var suggestions = this.handleFilterSuggestions();
970
- var setAriaId = this.getNextAriaId();
971
- var ariaErrorId = this.getNextAriaId();
972
-
973
- var _this$getIsShowClearI = this.getIsShowClearIcon({
974
- selectedOptions: selectedOptions,
975
- disabledOptions: disabledOptions
976
- }),
977
- isShowClear = _this$getIsShowClearI.isShowClearIcon;
978
-
979
- var isShowClearIcon = !isReadOnly && !isDisabled && !disableAction && isShowClear;
980
- return /*#__PURE__*/_react["default"].createElement("div", {
981
- className: "".concat(_MultiSelectModule["default"].wrapper, " ").concat(isDisabled ? _MultiSelectModule["default"].disabled : '', " ").concat(isReadOnly ? _MultiSelectModule["default"].readOnly : '', " ").concat(disableAction ? (0, _CssProvider["default"])('isBlock') : '', " ").concat(borderColor === 'transparent' ? _MultiSelectModule["default"].transparentContainer : '', " ").concat(needEffect && !(isDisabled || isReadOnly) ? _MultiSelectModule["default"].effect : ''),
982
- "data-id": "".concat(isDisabled ? "".concat(dataId, "_disabled") : isReadOnly ? "".concat(dataId, "_readOnly") : dataId),
983
- "data-title": isDisabled ? title : null,
984
- onClick: this.handleInputFocus
985
- }, /*#__PURE__*/_react["default"].createElement(_Layout.Container, {
986
- align: "vertical",
987
- alignBox: "row",
988
- className: "".concat(_MultiSelectModule["default"].container, " ").concat(_MultiSelectModule["default"][size], " ").concat(needBorder ? !disableAction ? _MultiSelectModule["default"]["borderColor_".concat(borderColor)] : _MultiSelectModule["default"].borderColor_transparent : '', " ").concat(isActive && needBorder ? _MultiSelectModule["default"].active : '', " ").concat(textBoxClass, " ").concat(needBorder ? _MultiSelectModule["default"].hasBorder : ''),
989
- eleRef: this.selectedOptionContainerRef,
990
- wrap: "wrap"
991
- }, /*#__PURE__*/_react["default"].createElement(_SelectedOptions["default"], {
992
- selectedOptions: selectedOptions,
993
- highLightedSelectOptions: highLightedSelectOptions,
994
- isReadOnly: isReadOnly,
995
- getRef: this.selectedOptionRef,
996
- onRemove: this.handleRemoveOption,
997
- onSelect: this.handleClickSelectedOption,
998
- size: size,
999
- palette: palette
1000
- }), /*#__PURE__*/_react["default"].createElement(_Layout.Box, {
1001
- flexible: true,
1002
- className: _MultiSelectModule["default"].wrapper,
1003
- adjust: true,
1004
- shrink: true
1005
- }, /*#__PURE__*/_react["default"].createElement("span", {
1006
- className: " ".concat(_MultiSelectModule["default"].custmSpan, " ").concat(textBoxSize === 'xmedium' ? _MultiSelectModule["default"].custmSpanXmedium : _MultiSelectModule["default"].custmSpanMedium, " ").concat(isShowClearIcon ? _MultiSelectModule["default"].clearIconSpace : '', "\n ").concat(customChildrenClass ? customChildrenClass : '')
1007
- }, searchStr), /*#__PURE__*/_react["default"].createElement(_TextBoxIcon["default"], {
1008
- isDisabled: isDisabled,
1009
- inputRef: this.searchInputRef,
1010
- needBorder: false,
1011
- onBlur: this.handleInactive,
1012
- onChange: this.handleSearch,
1013
- onClick: this.handleInputCick,
1014
- onFocus: this.handleActive,
1015
- onKeyDown: this.handleKeyDown,
1016
- autofocus: needAutoFocus,
1017
- placeHolder: selectedOptions.length >= 1 ? '' : placeHolder,
1018
- size: textBoxSize,
1019
- value: searchStr,
1020
- variant: variant,
1021
- dataId: "".concat(dataId, "_textBox"),
1022
- isReadOnly: isReadOnly,
1023
- tabindex: isDisabled && '-1',
1024
- customClass: {
1025
- customTBoxWrap: _MultiSelectModule["default"].custmInputWrapper
1026
- },
1027
- htmlId: htmlId,
1028
- a11y: {
1029
- role: 'combobox',
1030
- ariaOwns: setAriaId,
1031
- ariaControls: setAriaId,
1032
- ariaExpanded: !isReadOnly && !isDisabled && !disableAction && isPopupOpen ? true : false,
1033
- ariaHaspopup: true,
1034
- ariaRequired: true,
1035
- ariaDescribedby: ariaErrorId
1036
- },
1037
- autoComplete: false
1038
- }, /*#__PURE__*/_react["default"].createElement(_Layout.Container, {
1039
- alignBox: "row",
1040
- align: "vertical"
1041
- }, isShowClearIcon ? /*#__PURE__*/_react["default"].createElement(_Layout.Box, {
1042
- className: "".concat(_MultiSelectModule["default"]["delete"], " ").concat(_MultiSelectModule["default"]["".concat(palette, "Delete")]),
1043
- dataId: "".concat(dataId, "_clearIcon"),
1044
- "data-title": clearText,
1045
- onClick: this.handleDeselectAll,
1046
- tagName: "button",
1047
- "aria-label": clearLabel
1048
- }, /*#__PURE__*/_react["default"].createElement(_Icon["default"], {
1049
- name: "ZD-delete",
1050
- size: "15"
1051
- })) : null, children ? /*#__PURE__*/_react["default"].createElement(_Layout.Box, {
1052
- dataId: "".concat(dataId, "_children")
1053
- }, children) : null)))), !isReadOnly && !isDisabled && !disableAction && isPopupOpen ? /*#__PURE__*/_react["default"].createElement(_DropBox["default"], {
1054
- animationStyle: animationStyle,
1055
- boxPosition: position || "".concat(defaultDropBoxPosition, "Center"),
1056
- getRef: getContainerRef,
1057
- isActive: isPopupReady,
1058
- isAnimate: isAnimate,
1059
- isArrow: false,
1060
- onClick: removeClose,
1061
- needResponsive: needResponsive,
1062
- isPadding: false,
1063
- isBoxPaddingNeed: isBoxPaddingNeed,
1064
- palette: palette,
1065
- htmlId: setAriaId,
1066
- a11y: {
1067
- role: 'listbox',
1068
- ariaMultiselectable: true
1069
- }
1070
- }, /*#__PURE__*/_react["default"].createElement(_Card["default"], {
1071
- customClass: "".concat(_MultiSelectModule["default"].box, " ").concat(_MultiSelectModule["default"]["".concat(palette, "Box")]),
1072
- onScroll: this.handleScroll
1073
- }, /*#__PURE__*/_react["default"].createElement(_Card.CardHeader, null, /*#__PURE__*/_react["default"].createElement(_MultiSelectHeader["default"], {
1074
- needSelectAll: needSelectAll,
1075
- onSelect: this.handleSelectAll,
1076
- selectAllText: selectAllText,
1077
- suggestions: suggestions,
1078
- dataId: dataId
1079
- })), /*#__PURE__*/_react["default"].createElement(_Card.CardContent, {
1080
- customClass: dropBoxSize ? _MultiSelectModule["default"][dropBoxSize] : '',
1081
- eleRef: this.suggestionContainerRef
1082
- }, isSearching ? /*#__PURE__*/_react["default"].createElement("div", {
1083
- className: _MultiSelectModule["default"][palette]
1084
- }, searchText) : suggestions.length ? /*#__PURE__*/_react["default"].createElement(_Suggestions["default"], {
1085
- suggestions: suggestions,
1086
- getRef: this.suggestionItemRef,
1087
- hoverOption: hoverOption,
1088
- onClick: this.handleSelectOption,
1089
- onMouseEnter: this.handleMouseEnter,
1090
- needBorder: false,
1091
- dataId: "".concat(dataId, "_Options"),
1092
- palette: palette,
1093
- a11y: {
1094
- role: 'option'
1095
- }
1096
- }) : /*#__PURE__*/_react["default"].createElement(_EmptyState["default"], {
1097
- isLoading: isFetchingOptions,
1098
- options: options,
1099
- searchString: searchStr,
1100
- suggestions: suggestions,
1101
- dataId: dataId,
1102
- palette: palette,
1103
- i18nKeys: i18nKeys,
1104
- htmlId: ariaErrorId
1105
- })), getFooter ? /*#__PURE__*/_react["default"].createElement(_Card.CardFooter, null, getFooter()) : null)) : null);
1106
- }
1107
- }]);
1108
-
1109
- return MultiSelectComponent;
1110
- }(_react["default"].Component);
1111
-
1112
- exports.MultiSelectComponent = MultiSelectComponent;
1113
- MultiSelectComponent.propTypes = {
1114
- animationStyle: _propTypes["default"].string,
1115
- borderColor: _propTypes["default"].oneOf(['transparent', 'default', 'dark']),
1116
- closePopupOnly: _propTypes["default"].func,
1117
- dataId: _propTypes["default"].string,
1118
- defaultDropBoxPosition: _propTypes["default"].oneOf(['bottom', 'top', 'left', 'right']),
1119
- disableAction: _propTypes["default"].bool,
1120
- dropBoxSize: _propTypes["default"].oneOf(['small', 'medium', 'large']),
1121
- emptyMessage: _propTypes["default"].string.isRequired,
1122
- getContainerRef: _propTypes["default"].func,
1123
- getNextOptions: _propTypes["default"].func,
1124
- getPublicMethods: _propTypes["default"].func,
1125
- getRef: _propTypes["default"].func,
1126
- getTargetRef: _propTypes["default"].func,
1127
- i18nKeys: _propTypes["default"].shape({
1128
- clearText: _propTypes["default"].string,
1129
- loadingText: _propTypes["default"].string,
1130
- emptyText: _propTypes["default"].string,
1131
- noMoreText: _propTypes["default"].string,
1132
- searchEmptyText: _propTypes["default"].string
1133
- }),
1134
- a11y: _propTypes["default"].shape({
1135
- clearLabel: _propTypes["default"].string
1136
- }),
1137
- isAnimate: _propTypes["default"].bool,
1138
- isBoxPaddingNeed: _propTypes["default"].bool,
1139
- isDisabled: _propTypes["default"].bool,
1140
- isNextOptions: _propTypes["default"].bool,
1141
- isPopupOpen: _propTypes["default"].bool,
1142
- isPopupOpenOnEnter: _propTypes["default"].bool,
1143
- isPopupReady: _propTypes["default"].bool,
1144
- isReadOnly: _propTypes["default"].bool,
1145
- isSearchClearOnClose: _propTypes["default"].bool,
1146
- isSearching: _propTypes["default"].bool,
1147
- needAutoFocus: _propTypes["default"].bool,
1148
- needBorder: _propTypes["default"].bool,
1149
- needLocalSearch: _propTypes["default"].bool,
1150
- needResponsive: _propTypes["default"].bool,
1151
- needSelectAll: _propTypes["default"].bool,
1152
- needToCloseOnSelect: _propTypes["default"].bool,
1153
- //For Group multiSelect
1154
- noMoreOptionsMessage: _propTypes["default"].string,
1155
- onChange: _propTypes["default"].func.isRequired,
1156
- onDropBoxClose: _propTypes["default"].func,
1157
- onDropBoxOpen: _propTypes["default"].func,
1158
- onFocus: _propTypes["default"].func,
1159
- onKeyDown: _propTypes["default"].func,
1160
- onSearch: _propTypes["default"].func,
1161
- openPopupOnly: _propTypes["default"].func,
1162
- options: _propTypes["default"].oneOfType([_propTypes["default"].arrayOf(_propTypes["default"].oneOfType([_propTypes["default"].string, _propTypes["default"].number])), _propTypes["default"].arrayOf(_propTypes["default"].shape({
1163
- id: _propTypes["default"].oneOfType([_propTypes["default"].string, _propTypes["default"].number]),
1164
- text: _propTypes["default"].oneOfType([_propTypes["default"].string, _propTypes["default"].number])
1165
- }))]).isRequired,
1166
- palette: _propTypes["default"].oneOf(['default', 'dark']),
1167
- placeHolder: _propTypes["default"].string,
1168
- position: _propTypes["default"].string,
1169
- prefixText: _propTypes["default"].string,
1170
- removeClose: _propTypes["default"].func,
1171
- searchDebounceTime: _propTypes["default"].number,
1172
- searchEmptyMessage: _propTypes["default"].string,
1173
- selectAllText: _propTypes["default"].string,
1174
- selectedOptions: _propTypes["default"].arrayOf(_propTypes["default"].oneOfType([_propTypes["default"].string, _propTypes["default"].number])).isRequired,
1175
- size: _propTypes["default"].oneOf(['medium', 'xmedium']),
1176
- textBoxClass: _propTypes["default"].string,
1177
- textBoxSize: _propTypes["default"].oneOf(['small', 'medium', 'xmedium']),
1178
- textField: _propTypes["default"].string,
1179
- title: _propTypes["default"].string,
1180
- togglePopup: _propTypes["default"].func,
1181
- valueField: _propTypes["default"].string,
1182
- variant: _propTypes["default"].string,
1183
- htmlId: _propTypes["default"].string,
1184
- isSearchClearOnSelect: _propTypes["default"].bool,
1185
- children: _propTypes["default"].node,
1186
- customChildrenClass: _propTypes["default"].string,
1187
- disabledOptions: _propTypes["default"].arrayOf(_propTypes["default"].string),
1188
- getFooter: _propTypes["default"].func,
1189
- needEffect: _propTypes["default"].bool
1190
- };
1191
- MultiSelectComponent.defaultProps = {
1192
- animationStyle: 'bounce',
1193
- dataId: 'multiSelect',
1194
- defaultDropBoxPosition: 'bottom',
1195
- dropBoxSize: 'small',
1196
- isAnimate: true,
1197
- isDisabled: false,
1198
- isPopupOpenOnEnter: false,
1199
- isReadOnly: false,
1200
- needLocalSearch: true,
1201
- needSelectAll: false,
1202
- needToCloseOnSelect: false,
1203
- size: 'medium',
1204
- textBoxSize: 'medium',
1205
- textField: 'text',
1206
- valueField: 'id',
1207
- variant: 'default',
1208
- isSearching: false,
1209
- borderColor: 'default',
1210
- needBorder: true,
1211
- disableAction: false,
1212
- isSearchClearOnClose: true,
1213
- isBoxPaddingNeed: true,
1214
- needAutoFocus: false,
1215
- i18nKeys: {},
1216
- a11y: {},
1217
- textBoxClass: '',
1218
- palette: 'default',
1219
- isSearchClearOnSelect: true,
1220
- needEffect: true
1221
- };
1222
-
1223
- if (false) {
1224
- MultiSelectComponent.docs = {
1225
- componentGroup: 'Form Elements',
1226
- folderName: 'Style Guide'
1227
- };
1228
- }
1229
-
1230
- MultiSelectComponent.displayName = 'MultiSelect';
1231
- var MultiSelect = (0, _Popup["default"])(MultiSelectComponent);
1232
- MultiSelect.propTypes = MultiSelectComponent.propTypes;
1233
- MultiSelect.defaultProps = MultiSelectComponent.defaultProps;
1234
- var _default = MultiSelect;
1235
- exports["default"] = _default;