@zohodesk/components 1.2.23 → 1.2.24

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 (627) hide show
  1. package/README.md +4 -0
  2. package/es/Accordion/Accordion.js +7 -3
  3. package/es/Accordion/AccordionItem.js +4 -2
  4. package/es/Animation/Animation.js +7 -89
  5. package/es/Animation/utils.js +83 -0
  6. package/es/AppContainer/AppContainer.js +14 -3
  7. package/es/AppContainer/AppContainer.module.css +2 -2
  8. package/es/Avatar/Avatar.js +23 -11
  9. package/es/Avatar/Avatar.module.css +18 -18
  10. package/es/AvatarTeam/AvatarTeam.js +3 -3
  11. package/es/AvatarTeam/AvatarTeam.module.css +35 -35
  12. package/es/AvatarTeam/__tests__/AvatarTeam.spec.js +1 -2
  13. package/es/Button/Button.js +4 -3
  14. package/es/Button/css/Button.module.css +70 -70
  15. package/es/Buttongroup/Buttongroup.js +3 -3
  16. package/es/Buttongroup/Buttongroup.module.css +13 -15
  17. package/es/Card/Card.js +21 -10
  18. package/es/CheckBox/CheckBox.js +5 -3
  19. package/es/CheckBox/CheckBox.module.css +15 -15
  20. package/es/DateTime/CalendarView.js +32 -20
  21. package/es/DateTime/DateTime.js +69 -6
  22. package/es/DateTime/DateTime.module.css +40 -40
  23. package/es/DateTime/DateTimePopupFooter.js +4 -1
  24. package/es/DateTime/DateTimePopupHeader.js +8 -2
  25. package/es/DateTime/DateWidget.js +98 -35
  26. package/es/DateTime/DateWidget.module.css +5 -5
  27. package/es/DateTime/DaysRow.js +4 -1
  28. package/es/DateTime/Time.js +10 -1
  29. package/es/DateTime/YearView.js +28 -4
  30. package/es/DateTime/YearView.module.css +15 -15
  31. package/es/DateTime/common.js +3 -0
  32. package/es/DateTime/constants.js +1 -0
  33. package/es/DateTime/dateFormatUtils/dateFormat.js +65 -30
  34. package/es/DateTime/dateFormatUtils/dateFormats.js +0 -1
  35. package/es/DateTime/dateFormatUtils/dayChange.js +13 -4
  36. package/es/DateTime/dateFormatUtils/index.js +31 -1
  37. package/es/DateTime/dateFormatUtils/monthChange.js +8 -0
  38. package/es/DateTime/dateFormatUtils/timeChange.js +22 -6
  39. package/es/DateTime/dateFormatUtils/yearChange.js +11 -2
  40. package/es/DateTime/objectUtils.js +14 -20
  41. package/es/DateTime/typeChecker.js +3 -0
  42. package/es/DateTime/validator.js +58 -6
  43. package/es/DropBox/DropBox.js +6 -2
  44. package/es/DropBox/DropBoxElement/DropBoxElement.js +7 -0
  45. package/es/DropBox/DropBoxElement/css/DropBoxElement.module.css +73 -76
  46. package/es/DropBox/DropBoxElement/css/cssJSLogic.js +5 -3
  47. package/es/DropBox/DropBoxElement/useDropboxPosCalc.js +3 -0
  48. package/es/DropBox/css/DropBox.module.css +6 -6
  49. package/es/DropBox/props/defaultProps.js +1 -2
  50. package/es/DropBox/props/propTypes.js +1 -2
  51. package/es/DropDown/DropDown.js +7 -1
  52. package/es/DropDown/DropDown.module.css +2 -2
  53. package/es/DropDown/DropDownHeading.js +4 -5
  54. package/es/DropDown/DropDownHeading.module.css +6 -6
  55. package/es/DropDown/DropDownItem.js +6 -0
  56. package/es/DropDown/DropDownItem.module.css +12 -12
  57. package/es/DropDown/DropDownSearch.js +4 -0
  58. package/es/DropDown/DropDownSearch.module.css +3 -3
  59. package/es/DropDown/DropDownSeparator.js +1 -0
  60. package/es/DropDown/DropDownSeparator.module.css +2 -2
  61. package/es/DropDown/props/propTypes.js +1 -2
  62. package/es/Heading/Heading.js +2 -3
  63. package/es/Heading/Heading.module.css +2 -2
  64. package/es/Label/Label.js +2 -3
  65. package/es/Label/Label.module.css +5 -5
  66. package/es/Label/__tests__/Label.spec.js +1 -2
  67. package/es/Layout/Box.js +15 -2
  68. package/es/Layout/Container.js +14 -3
  69. package/es/Layout/Layout.module.css +15 -15
  70. package/es/Layout/index.js +1 -2
  71. package/es/Layout/utils.js +1 -0
  72. package/es/ListItem/ListContainer.js +8 -3
  73. package/es/ListItem/ListItem.js +9 -3
  74. package/es/ListItem/ListItem.module.css +27 -38
  75. package/es/ListItem/ListItemWithAvatar.js +9 -3
  76. package/es/ListItem/ListItemWithCheckBox.js +7 -2
  77. package/es/ListItem/ListItemWithIcon.js +8 -3
  78. package/es/ListItem/ListItemWithRadio.js +7 -3
  79. package/es/Modal/Modal.js +28 -11
  80. package/es/MultiSelect/AdvancedGroupMultiSelect.js +89 -13
  81. package/es/MultiSelect/AdvancedMultiSelect.js +32 -9
  82. package/es/MultiSelect/EmptyState.js +2 -0
  83. package/es/MultiSelect/MobileHeader/MobileHeader.module.css +5 -5
  84. package/es/MultiSelect/MultiSelect.js +99 -30
  85. package/es/MultiSelect/MultiSelect.module.css +31 -31
  86. package/es/MultiSelect/MultiSelectHeader.js +3 -0
  87. package/es/MultiSelect/MultiSelectWithAvatar.js +10 -3
  88. package/es/MultiSelect/SelectedOptions.js +6 -3
  89. package/es/MultiSelect/SelectedOptions.module.css +5 -5
  90. package/es/MultiSelect/Suggestions.js +7 -3
  91. package/es/MultiSelect/props/propTypes.js +2 -2
  92. package/es/PopOver/PopOver.js +16 -0
  93. package/es/Popup/Popup.js +77 -24
  94. package/es/Popup/viewPort.js +16 -4
  95. package/es/Provider/IdProvider.js +10 -5
  96. package/es/Provider/LibraryContext.js +6 -4
  97. package/es/Provider/NumberGenerator/NumberGenerator.js +21 -7
  98. package/es/Provider/ZindexProvider.js +9 -2
  99. package/es/Radio/Radio.js +3 -0
  100. package/es/Radio/Radio.module.css +9 -9
  101. package/es/Responsive/CustomResponsive.js +30 -18
  102. package/es/Responsive/RefWrapper.js +6 -7
  103. package/es/Responsive/ResizeComponent.js +35 -25
  104. package/es/Responsive/ResizeObserver.js +26 -6
  105. package/es/Responsive/Responsive.js +34 -20
  106. package/es/Responsive/index.js +1 -3
  107. package/es/Responsive/sizeObservers.js +28 -7
  108. package/es/Responsive/utils/index.js +7 -5
  109. package/es/Responsive/utils/shallowCompare.js +7 -2
  110. package/es/Responsive/windowResizeObserver.js +7 -0
  111. package/es/ResponsiveDropBox/ResponsiveDropBox.js +4 -0
  112. package/es/ResponsiveDropBox/ResponsiveDropBox.module.css +2 -2
  113. package/es/ResponsiveDropBox/props/propTypes.js +1 -2
  114. package/es/Ribbon/Ribbon.js +3 -2
  115. package/es/Ribbon/Ribbon.module.css +45 -48
  116. package/es/RippleEffect/RippleEffect.js +1 -3
  117. package/es/Select/GroupSelect.js +58 -14
  118. package/es/Select/Select.js +79 -33
  119. package/es/Select/Select.module.css +23 -23
  120. package/es/Select/SelectWithAvatar.js +17 -4
  121. package/es/Select/SelectWithIcon.js +46 -5
  122. package/es/Select/props/propTypes.js +2 -2
  123. package/es/Stencils/Stencils.js +3 -3
  124. package/es/Stencils/Stencils.module.css +11 -11
  125. package/es/Switch/Switch.js +5 -3
  126. package/es/Switch/Switch.module.css +23 -23
  127. package/es/Tab/Tab.js +4 -4
  128. package/es/Tab/Tab.module.css +14 -14
  129. package/es/Tab/TabContent.js +1 -0
  130. package/es/Tab/TabContentWrapper.js +3 -0
  131. package/es/Tab/TabWrapper.js +5 -2
  132. package/es/Tab/Tabs.js +54 -7
  133. package/es/Tab/Tabs.module.css +22 -22
  134. package/es/Tag/Tag.js +6 -3
  135. package/es/Tag/Tag.module.css +24 -25
  136. package/es/TextBox/TextBox.js +16 -3
  137. package/es/TextBox/TextBox.module.css +9 -9
  138. package/es/TextBoxIcon/TextBoxIcon.js +9 -2
  139. package/es/TextBoxIcon/TextBoxIcon.module.css +7 -7
  140. package/es/TextBoxIcon/props/propTypes.js +1 -2
  141. package/es/Textarea/Textarea.js +12 -3
  142. package/es/Textarea/Textarea.module.css +21 -21
  143. package/es/Tooltip/Tooltip.js +58 -14
  144. package/es/Tooltip/Tooltip.module.css +5 -5
  145. package/es/VelocityAnimation/VelocityAnimation/VelocityAnimation.js +3 -2
  146. package/es/VelocityAnimation/VelocityAnimationGroup/VelocityAnimationGroup.js +7 -5
  147. package/es/common/animation.module.css +8 -8
  148. package/es/common/avatarsizes.module.css +16 -16
  149. package/es/common/basicReset.module.css +3 -3
  150. package/es/common/common.module.css +24 -24
  151. package/es/common/customscroll.module.css +2 -2
  152. package/es/deprecated/PortalLayer/PortalLayer.js +25 -20
  153. package/es/semantic/Button/Button.js +3 -2
  154. package/es/semantic/Button/semanticButton.module.css +1 -1
  155. package/es/utils/Common.js +54 -9
  156. package/es/utils/ContextOptimizer.js +4 -5
  157. package/es/utils/constructFullName.js +2 -0
  158. package/es/utils/datetime/common.js +16 -5
  159. package/es/utils/debounce.js +5 -1
  160. package/es/utils/dropDownUtils.js +68 -11
  161. package/es/utils/getInitial.js +4 -0
  162. package/es/utils/shallowEqual.js +6 -0
  163. package/es/v1/Accordion/Accordion.js +4 -3
  164. package/es/v1/Accordion/AccordionItem.js +4 -2
  165. package/es/v1/Animation/Animation.js +5 -89
  166. package/es/v1/Animation/utils.js +83 -0
  167. package/es/v1/AppContainer/AppContainer.js +9 -3
  168. package/es/v1/Avatar/Avatar.js +18 -6
  169. package/es/v1/AvatarTeam/AvatarTeam.js +1 -0
  170. package/es/v1/Button/Button.js +3 -3
  171. package/es/v1/Card/Card.js +16 -8
  172. package/es/v1/CheckBox/CheckBox.js +6 -3
  173. package/es/v1/DateTime/CalendarView.js +32 -20
  174. package/es/v1/DateTime/DateTime.js +69 -6
  175. package/es/v1/DateTime/DateTimePopupFooter.js +4 -1
  176. package/es/v1/DateTime/DateTimePopupHeader.js +8 -2
  177. package/es/v1/DateTime/DateWidget.js +98 -35
  178. package/es/v1/DateTime/DaysRow.js +4 -1
  179. package/es/v1/DateTime/Time.js +10 -1
  180. package/es/v1/DateTime/YearView.js +28 -4
  181. package/es/v1/DropBox/DropBox.js +6 -2
  182. package/es/v1/DropBox/DropBoxElement/DropBoxElement.js +7 -0
  183. package/es/v1/DropBox/props/defaultProps.js +1 -2
  184. package/es/v1/DropBox/props/propTypes.js +1 -2
  185. package/es/v1/DropDown/DropDown.js +3 -0
  186. package/es/v1/DropDown/DropDownHeading.js +2 -2
  187. package/es/v1/DropDown/DropDownItem.js +5 -0
  188. package/es/v1/DropDown/DropDownSearch.js +3 -2
  189. package/es/v1/DropDown/props/propTypes.js +1 -2
  190. package/es/v1/Heading/Heading.js +1 -3
  191. package/es/v1/Layout/Box.js +15 -2
  192. package/es/v1/Layout/Container.js +14 -3
  193. package/es/v1/ListItem/ListContainer.js +8 -3
  194. package/es/v1/ListItem/ListItem.js +10 -3
  195. package/es/v1/ListItem/ListItemWithAvatar.js +9 -1
  196. package/es/v1/ListItem/ListItemWithCheckBox.js +8 -2
  197. package/es/v1/ListItem/ListItemWithIcon.js +9 -3
  198. package/es/v1/ListItem/ListItemWithRadio.js +8 -3
  199. package/es/v1/Modal/Modal.js +17 -1
  200. package/es/v1/MultiSelect/AdvancedGroupMultiSelect.js +90 -15
  201. package/es/v1/MultiSelect/AdvancedMultiSelect.js +32 -9
  202. package/es/v1/MultiSelect/EmptyState.js +2 -0
  203. package/es/v1/MultiSelect/MultiSelect.js +100 -31
  204. package/es/v1/MultiSelect/MultiSelectHeader.js +3 -0
  205. package/es/v1/MultiSelect/MultiSelectWithAvatar.js +11 -3
  206. package/es/v1/MultiSelect/SelectedOptions.js +6 -3
  207. package/es/v1/MultiSelect/Suggestions.js +7 -3
  208. package/es/v1/MultiSelect/props/propTypes.js +2 -2
  209. package/es/v1/PopOver/PopOver.js +11 -0
  210. package/es/v1/Popup/Popup.js +77 -24
  211. package/es/v1/Provider/IdProvider.js +10 -5
  212. package/es/v1/Provider/LibraryContext.js +6 -4
  213. package/es/v1/Provider/NumberGenerator/NumberGenerator.js +21 -7
  214. package/es/v1/Provider/ZindexProvider.js +9 -2
  215. package/es/v1/Radio/Radio.js +5 -2
  216. package/es/v1/Responsive/CustomResponsive.js +30 -18
  217. package/es/v1/Responsive/RefWrapper.js +6 -7
  218. package/es/v1/Responsive/ResizeComponent.js +35 -25
  219. package/es/v1/Responsive/ResizeObserver.js +26 -6
  220. package/es/v1/Responsive/Responsive.js +34 -20
  221. package/es/v1/Responsive/index.js +1 -3
  222. package/es/v1/ResponsiveDropBox/ResponsiveDropBox.js +1 -0
  223. package/es/v1/ResponsiveDropBox/props/propTypes.js +1 -2
  224. package/es/v1/Select/GroupSelect.js +58 -14
  225. package/es/v1/Select/Select.js +81 -37
  226. package/es/v1/Select/SelectWithAvatar.js +17 -4
  227. package/es/v1/Select/SelectWithIcon.js +46 -5
  228. package/es/v1/Select/props/propTypes.js +2 -2
  229. package/es/v1/Stencils/Stencils.js +2 -0
  230. package/es/v1/Switch/Switch.js +6 -3
  231. package/es/v1/Tab/Tab.js +3 -3
  232. package/es/v1/Tab/TabContent.js +1 -0
  233. package/es/v1/Tab/TabContentWrapper.js +3 -0
  234. package/es/v1/Tab/TabWrapper.js +5 -2
  235. package/es/v1/Tab/Tabs.js +54 -9
  236. package/es/v1/Tab/v1Tab.module.css +14 -14
  237. package/es/v1/Tab/v1Tabs.module.css +22 -22
  238. package/es/v1/Tag/Tag.js +5 -1
  239. package/es/v1/TextBox/TextBox.js +14 -0
  240. package/es/v1/TextBoxIcon/TextBoxIcon.js +6 -2
  241. package/es/v1/TextBoxIcon/props/propTypes.js +1 -2
  242. package/es/v1/Textarea/Textarea.js +10 -3
  243. package/es/v1/Tooltip/Tooltip.js +58 -14
  244. package/es/v1/Typography/Typography.js +2 -0
  245. package/es/v1/Typography/css/Typography.module.css +31 -31
  246. package/es/v1/Typography/css/cssJSLogic.js +3 -0
  247. package/es/v1/VelocityAnimation/VelocityAnimation/VelocityAnimation.js +1 -2
  248. package/es/v1/VelocityAnimation/VelocityAnimationGroup/VelocityAnimationGroup.js +5 -4
  249. package/es/v1/semantic/Button/Button.js +1 -2
  250. package/lib/Accordion/Accordion.js +42 -18
  251. package/lib/Accordion/AccordionItem.js +40 -18
  252. package/lib/Accordion/index.js +3 -0
  253. package/lib/Accordion/props/propTypes.js +3 -0
  254. package/lib/Animation/Animation.js +42 -104
  255. package/lib/Animation/props/propTypes.js +3 -0
  256. package/lib/Animation/utils.js +94 -0
  257. package/lib/AppContainer/AppContainer.js +58 -20
  258. package/lib/AppContainer/AppContainer.module.css +2 -2
  259. package/lib/AppContainer/props/propTypes.js +3 -0
  260. package/lib/Avatar/Avatar.js +78 -38
  261. package/lib/Avatar/Avatar.module.css +18 -18
  262. package/lib/Avatar/__tests__/Avatar.spec.js +95 -71
  263. package/lib/Avatar/props/propTypes.js +3 -0
  264. package/lib/AvatarTeam/AvatarTeam.js +52 -30
  265. package/lib/AvatarTeam/AvatarTeam.module.css +35 -35
  266. package/lib/AvatarTeam/__tests__/AvatarTeam.spec.js +77 -61
  267. package/lib/AvatarTeam/props/propTypes.js +3 -0
  268. package/lib/Button/Button.js +33 -22
  269. package/lib/Button/__tests__/Button.spec.js +65 -48
  270. package/lib/Button/css/Button.module.css +70 -70
  271. package/lib/Button/css/cssJSLogic.js +18 -17
  272. package/lib/Button/index.js +3 -0
  273. package/lib/Button/props/defaultProps.js +2 -0
  274. package/lib/Button/props/propTypes.js +3 -0
  275. package/lib/Buttongroup/Buttongroup.js +32 -12
  276. package/lib/Buttongroup/Buttongroup.module.css +13 -15
  277. package/lib/Buttongroup/__tests__/Buttongroup.spec.js +18 -10
  278. package/lib/Buttongroup/props/propTypes.js +3 -0
  279. package/lib/Card/Card.js +102 -46
  280. package/lib/Card/index.js +4 -0
  281. package/lib/Card/props/propTypes.js +3 -0
  282. package/lib/CheckBox/CheckBox.js +71 -47
  283. package/lib/CheckBox/CheckBox.module.css +15 -15
  284. package/lib/CheckBox/props/propTypes.js +3 -0
  285. package/lib/DateTime/CalendarView.js +82 -42
  286. package/lib/DateTime/DateTime.js +244 -156
  287. package/lib/DateTime/DateTime.module.css +40 -40
  288. package/lib/DateTime/DateTimePopupFooter.js +33 -8
  289. package/lib/DateTime/DateTimePopupHeader.js +49 -17
  290. package/lib/DateTime/DateWidget.js +350 -249
  291. package/lib/DateTime/DateWidget.module.css +5 -5
  292. package/lib/DateTime/DaysRow.js +28 -5
  293. package/lib/DateTime/Time.js +75 -32
  294. package/lib/DateTime/YearView.js +76 -27
  295. package/lib/DateTime/YearView.module.css +15 -15
  296. package/lib/DateTime/common.js +6 -0
  297. package/lib/DateTime/constants.js +1 -0
  298. package/lib/DateTime/dateFormatUtils/dateFormat.js +187 -122
  299. package/lib/DateTime/dateFormatUtils/dateFormats.js +0 -1
  300. package/lib/DateTime/dateFormatUtils/dayChange.js +15 -7
  301. package/lib/DateTime/dateFormatUtils/index.js +73 -16
  302. package/lib/DateTime/dateFormatUtils/monthChange.js +20 -9
  303. package/lib/DateTime/dateFormatUtils/timeChange.js +54 -22
  304. package/lib/DateTime/dateFormatUtils/yearChange.js +23 -11
  305. package/lib/DateTime/index.js +2 -0
  306. package/lib/DateTime/objectUtils.js +24 -20
  307. package/lib/DateTime/props/propTypes.js +11 -1
  308. package/lib/DateTime/typeChecker.js +4 -0
  309. package/lib/DateTime/validator.js +73 -10
  310. package/lib/DropBox/DropBox.js +45 -21
  311. package/lib/DropBox/DropBoxElement/DropBoxElement.js +59 -38
  312. package/lib/DropBox/DropBoxElement/css/DropBoxElement.module.css +73 -76
  313. package/lib/DropBox/DropBoxElement/css/cssJSLogic.js +42 -34
  314. package/lib/DropBox/DropBoxElement/props/propTypes.js +3 -0
  315. package/lib/DropBox/DropBoxElement/useDropboxPosCalc.js +14 -9
  316. package/lib/DropBox/css/DropBox.module.css +6 -6
  317. package/lib/DropBox/css/cssJSLogic.js +3 -1
  318. package/lib/DropBox/props/defaultProps.js +8 -4
  319. package/lib/DropBox/props/propTypes.js +10 -4
  320. package/lib/DropDown/DropDown.js +51 -5
  321. package/lib/DropDown/DropDown.module.css +2 -2
  322. package/lib/DropDown/DropDownHeading.js +39 -20
  323. package/lib/DropDown/DropDownHeading.module.css +6 -6
  324. package/lib/DropDown/DropDownItem.js +42 -20
  325. package/lib/DropDown/DropDownItem.module.css +12 -12
  326. package/lib/DropDown/DropDownSearch.js +40 -17
  327. package/lib/DropDown/DropDownSearch.module.css +3 -3
  328. package/lib/DropDown/DropDownSeparator.js +24 -4
  329. package/lib/DropDown/DropDownSeparator.module.css +2 -2
  330. package/lib/DropDown/index.js +9 -0
  331. package/lib/DropDown/props/propTypes.js +10 -4
  332. package/lib/Heading/Heading.js +37 -15
  333. package/lib/Heading/Heading.module.css +2 -2
  334. package/lib/Heading/props/propTypes.js +3 -0
  335. package/lib/Label/Label.js +41 -21
  336. package/lib/Label/Label.module.css +5 -5
  337. package/lib/Label/__tests__/Label.spec.js +48 -34
  338. package/lib/Label/props/propTypes.js +3 -0
  339. package/lib/Layout/Box.js +35 -15
  340. package/lib/Layout/Container.js +33 -14
  341. package/lib/Layout/Layout.module.css +15 -15
  342. package/lib/Layout/index.js +3 -0
  343. package/lib/Layout/props/propTypes.js +3 -0
  344. package/lib/Layout/utils.js +11 -0
  345. package/lib/ListItem/ListContainer.js +55 -30
  346. package/lib/ListItem/ListItem.js +74 -45
  347. package/lib/ListItem/ListItem.module.css +27 -38
  348. package/lib/ListItem/ListItemWithAvatar.js +80 -48
  349. package/lib/ListItem/ListItemWithCheckBox.js +70 -40
  350. package/lib/ListItem/ListItemWithIcon.js +73 -44
  351. package/lib/ListItem/ListItemWithRadio.js +71 -42
  352. package/lib/ListItem/index.js +7 -0
  353. package/lib/ListItem/props/propTypes.js +6 -4
  354. package/lib/Modal/Modal.js +45 -10
  355. package/lib/Modal/props/propTypes.js +3 -0
  356. package/lib/MultiSelect/AdvancedGroupMultiSelect.js +293 -166
  357. package/lib/MultiSelect/AdvancedMultiSelect.js +202 -125
  358. package/lib/MultiSelect/EmptyState.js +45 -24
  359. package/lib/MultiSelect/MobileHeader/MobileHeader.js +14 -5
  360. package/lib/MultiSelect/MobileHeader/MobileHeader.module.css +5 -5
  361. package/lib/MultiSelect/MobileHeader/props/propTypes.js +3 -0
  362. package/lib/MultiSelect/MultiSelect.js +333 -214
  363. package/lib/MultiSelect/MultiSelect.module.css +31 -31
  364. package/lib/MultiSelect/MultiSelectHeader.js +29 -7
  365. package/lib/MultiSelect/MultiSelectWithAvatar.js +85 -43
  366. package/lib/MultiSelect/SelectedOptions.js +43 -17
  367. package/lib/MultiSelect/SelectedOptions.module.css +5 -5
  368. package/lib/MultiSelect/Suggestions.js +64 -32
  369. package/lib/MultiSelect/index.js +5 -0
  370. package/lib/MultiSelect/props/defaultProps.js +2 -0
  371. package/lib/MultiSelect/props/propTypes.js +14 -4
  372. package/lib/PopOver/PopOver.js +94 -47
  373. package/lib/PopOver/index.js +4 -0
  374. package/lib/PopOver/props/propTypes.js +3 -0
  375. package/lib/Popup/Popup.js +158 -81
  376. package/lib/Popup/viewPort.js +28 -14
  377. package/lib/Provider/AvatarSize.js +4 -0
  378. package/lib/Provider/Config.js +2 -0
  379. package/lib/Provider/CssProvider.js +4 -0
  380. package/lib/Provider/IdProvider.js +17 -6
  381. package/lib/Provider/LibraryContext.js +35 -15
  382. package/lib/Provider/LibraryContextInit.js +4 -0
  383. package/lib/Provider/NumberGenerator/NumberGenerator.js +44 -15
  384. package/lib/Provider/ZindexProvider.js +15 -3
  385. package/lib/Provider/index.js +5 -0
  386. package/lib/Radio/Radio.js +60 -36
  387. package/lib/Radio/Radio.module.css +9 -9
  388. package/lib/Radio/__tests__/Radio.spec.js +134 -103
  389. package/lib/Radio/props/propTypes.js +3 -0
  390. package/lib/Responsive/CustomResponsive.js +73 -29
  391. package/lib/Responsive/RefWrapper.js +17 -11
  392. package/lib/Responsive/ResizeComponent.js +62 -36
  393. package/lib/Responsive/ResizeObserver.js +24 -10
  394. package/lib/Responsive/Responsive.js +80 -30
  395. package/lib/Responsive/index.js +4 -0
  396. package/lib/Responsive/props/propTypes.js +3 -0
  397. package/lib/Responsive/sizeObservers.js +53 -17
  398. package/lib/Responsive/utils/index.js +11 -3
  399. package/lib/Responsive/utils/shallowCompare.js +11 -2
  400. package/lib/Responsive/windowResizeObserver.js +8 -0
  401. package/lib/ResponsiveDropBox/ResponsiveDropBox.js +45 -17
  402. package/lib/ResponsiveDropBox/ResponsiveDropBox.module.css +2 -2
  403. package/lib/ResponsiveDropBox/props/propTypes.js +9 -4
  404. package/lib/Ribbon/Ribbon.js +33 -13
  405. package/lib/Ribbon/Ribbon.module.css +45 -48
  406. package/lib/Ribbon/__tests__/Ribbon.spec.js +24 -14
  407. package/lib/Ribbon/props/propTypes.js +3 -0
  408. package/lib/RippleEffect/RippleEffect.js +18 -10
  409. package/lib/RippleEffect/__tests__/RippleEffect.spec.js +34 -22
  410. package/lib/RippleEffect/props/propTypes.js +3 -0
  411. package/lib/Select/GroupSelect.js +229 -130
  412. package/lib/Select/Select.js +295 -211
  413. package/lib/Select/Select.module.css +23 -23
  414. package/lib/Select/SelectWithAvatar.js +102 -56
  415. package/lib/Select/SelectWithIcon.js +131 -76
  416. package/lib/Select/index.js +5 -0
  417. package/lib/Select/props/defaultProps.js +5 -4
  418. package/lib/Select/props/propTypes.js +10 -4
  419. package/lib/Stencils/Stencils.js +29 -10
  420. package/lib/Stencils/Stencils.module.css +11 -11
  421. package/lib/Stencils/__tests__/Stencils.spec.js +22 -13
  422. package/lib/Stencils/props/propTypes.js +3 -0
  423. package/lib/Switch/Switch.js +57 -34
  424. package/lib/Switch/Switch.module.css +23 -23
  425. package/lib/Switch/__tests__/Switch.spec.js +91 -72
  426. package/lib/Switch/props/propTypes.js +3 -0
  427. package/lib/Tab/Tab.js +40 -27
  428. package/lib/Tab/Tab.module.css +14 -14
  429. package/lib/Tab/TabContent.js +12 -5
  430. package/lib/Tab/TabContentWrapper.js +16 -8
  431. package/lib/Tab/TabWrapper.js +37 -19
  432. package/lib/Tab/Tabs.js +171 -91
  433. package/lib/Tab/Tabs.module.css +22 -22
  434. package/lib/Tab/index.js +6 -0
  435. package/lib/Tab/props/propTypes.js +3 -0
  436. package/lib/Tag/Tag.js +72 -43
  437. package/lib/Tag/Tag.module.css +24 -25
  438. package/lib/Tag/props/propTypes.js +3 -0
  439. package/lib/TextBox/TextBox.js +86 -60
  440. package/lib/TextBox/TextBox.module.css +9 -9
  441. package/lib/TextBox/props/propTypes.js +6 -4
  442. package/lib/TextBoxIcon/TextBoxIcon.js +80 -53
  443. package/lib/TextBoxIcon/TextBoxIcon.module.css +7 -7
  444. package/lib/TextBoxIcon/props/propTypes.js +9 -4
  445. package/lib/Textarea/Textarea.js +54 -29
  446. package/lib/Textarea/Textarea.module.css +21 -21
  447. package/lib/Textarea/props/propTypes.js +3 -0
  448. package/lib/Tooltip/Tooltip.js +94 -31
  449. package/lib/Tooltip/Tooltip.module.css +5 -5
  450. package/lib/Tooltip/props/propTypes.js +3 -0
  451. package/lib/VelocityAnimation/VelocityAnimation/VelocityAnimation.js +40 -16
  452. package/lib/VelocityAnimation/VelocityAnimation/props/propTypes.js +3 -0
  453. package/lib/VelocityAnimation/VelocityAnimationGroup/VelocityAnimationGroup.js +53 -25
  454. package/lib/VelocityAnimation/VelocityAnimationGroup/props/propTypes.js +3 -0
  455. package/lib/VelocityAnimation/index.js +3 -0
  456. package/lib/common/animation.module.css +8 -8
  457. package/lib/common/avatarsizes.module.css +16 -16
  458. package/lib/common/basicReset.module.css +3 -3
  459. package/lib/common/common.module.css +24 -24
  460. package/lib/common/customscroll.module.css +2 -2
  461. package/lib/css.js +40 -0
  462. package/lib/deprecated/PortalLayer/PortalLayer.js +46 -23
  463. package/lib/deprecated/PortalLayer/props/propTypes.js +3 -0
  464. package/lib/index.js +58 -0
  465. package/lib/semantic/Button/Button.js +42 -22
  466. package/lib/semantic/Button/props/propTypes.js +3 -0
  467. package/lib/semantic/Button/semanticButton.module.css +1 -1
  468. package/lib/semantic/index.js +2 -0
  469. package/lib/utils/Common.js +111 -18
  470. package/lib/utils/ContextOptimizer.js +16 -10
  471. package/lib/utils/constructFullName.js +13 -4
  472. package/lib/utils/datetime/common.js +34 -5
  473. package/lib/utils/debounce.js +6 -1
  474. package/lib/utils/dropDownUtils.js +175 -59
  475. package/lib/utils/dummyFunction.js +2 -0
  476. package/lib/utils/getHTMLFontSize.js +1 -0
  477. package/lib/utils/getInitial.js +6 -0
  478. package/lib/utils/index.js +1 -0
  479. package/lib/utils/scrollTo.js +2 -0
  480. package/lib/utils/shallowEqual.js +8 -0
  481. package/lib/v1/Accordion/Accordion.js +38 -19
  482. package/lib/v1/Accordion/AccordionItem.js +23 -13
  483. package/lib/v1/Accordion/index.js +3 -0
  484. package/lib/v1/Accordion/props/propTypes.js +3 -0
  485. package/lib/v1/Animation/Animation.js +24 -100
  486. package/lib/v1/Animation/props/propTypes.js +3 -0
  487. package/lib/v1/Animation/utils.js +94 -0
  488. package/lib/v1/AppContainer/AppContainer.js +46 -17
  489. package/lib/v1/AppContainer/props/propTypes.js +3 -0
  490. package/lib/v1/Avatar/Avatar.js +68 -32
  491. package/lib/v1/Avatar/props/propTypes.js +3 -0
  492. package/lib/v1/AvatarTeam/AvatarTeam.js +32 -24
  493. package/lib/v1/AvatarTeam/props/propTypes.js +3 -0
  494. package/lib/v1/Button/Button.js +32 -22
  495. package/lib/v1/Button/props/defaultProps.js +2 -0
  496. package/lib/v1/Button/props/propTypes.js +3 -0
  497. package/lib/v1/Buttongroup/Buttongroup.js +13 -5
  498. package/lib/v1/Buttongroup/props/propTypes.js +3 -0
  499. package/lib/v1/Card/Card.js +78 -44
  500. package/lib/v1/Card/index.js +4 -0
  501. package/lib/v1/Card/props/propTypes.js +3 -0
  502. package/lib/v1/CheckBox/CheckBox.js +52 -41
  503. package/lib/v1/CheckBox/props/propTypes.js +3 -0
  504. package/lib/v1/DateTime/CalendarView.js +89 -48
  505. package/lib/v1/DateTime/DateTime.js +246 -158
  506. package/lib/v1/DateTime/DateTimePopupFooter.js +33 -8
  507. package/lib/v1/DateTime/DateTimePopupHeader.js +49 -17
  508. package/lib/v1/DateTime/DateWidget.js +352 -251
  509. package/lib/v1/DateTime/DaysRow.js +28 -5
  510. package/lib/v1/DateTime/Time.js +75 -32
  511. package/lib/v1/DateTime/YearView.js +76 -27
  512. package/lib/v1/DateTime/index.js +2 -0
  513. package/lib/v1/DateTime/props/propTypes.js +11 -1
  514. package/lib/v1/DropBox/DropBox.js +45 -21
  515. package/lib/v1/DropBox/DropBoxElement/DropBoxElement.js +59 -38
  516. package/lib/v1/DropBox/DropBoxElement/props/propTypes.js +3 -0
  517. package/lib/v1/DropBox/props/defaultProps.js +8 -4
  518. package/lib/v1/DropBox/props/propTypes.js +10 -4
  519. package/lib/v1/DropDown/DropDown.js +23 -3
  520. package/lib/v1/DropDown/DropDownHeading.js +20 -13
  521. package/lib/v1/DropDown/DropDownItem.js +26 -11
  522. package/lib/v1/DropDown/DropDownSearch.js +28 -16
  523. package/lib/v1/DropDown/DropDownSeparator.js +7 -1
  524. package/lib/v1/DropDown/props/propTypes.js +10 -4
  525. package/lib/v1/Heading/Heading.js +19 -14
  526. package/lib/v1/Heading/props/propTypes.js +3 -0
  527. package/lib/v1/Label/Label.js +22 -14
  528. package/lib/v1/Label/props/propTypes.js +3 -0
  529. package/lib/v1/Layout/Box.js +35 -15
  530. package/lib/v1/Layout/Container.js +33 -14
  531. package/lib/v1/Layout/index.js +3 -0
  532. package/lib/v1/Layout/props/propTypes.js +3 -0
  533. package/lib/v1/ListItem/ListContainer.js +55 -30
  534. package/lib/v1/ListItem/ListItem.js +53 -38
  535. package/lib/v1/ListItem/ListItemWithAvatar.js +62 -39
  536. package/lib/v1/ListItem/ListItemWithCheckBox.js +49 -34
  537. package/lib/v1/ListItem/ListItemWithIcon.js +52 -37
  538. package/lib/v1/ListItem/ListItemWithRadio.js +49 -35
  539. package/lib/v1/ListItem/index.js +7 -0
  540. package/lib/v1/ListItem/props/propTypes.js +6 -4
  541. package/lib/v1/Modal/Modal.js +46 -9
  542. package/lib/v1/Modal/props/propTypes.js +3 -0
  543. package/lib/v1/MultiSelect/AdvancedGroupMultiSelect.js +294 -168
  544. package/lib/v1/MultiSelect/AdvancedMultiSelect.js +202 -125
  545. package/lib/v1/MultiSelect/EmptyState.js +45 -24
  546. package/lib/v1/MultiSelect/MobileHeader/MobileHeader.js +14 -5
  547. package/lib/v1/MultiSelect/MobileHeader/props/propTypes.js +3 -0
  548. package/lib/v1/MultiSelect/MultiSelect.js +335 -216
  549. package/lib/v1/MultiSelect/MultiSelectHeader.js +29 -7
  550. package/lib/v1/MultiSelect/MultiSelectWithAvatar.js +86 -43
  551. package/lib/v1/MultiSelect/SelectedOptions.js +43 -17
  552. package/lib/v1/MultiSelect/Suggestions.js +64 -32
  553. package/lib/v1/MultiSelect/index.js +5 -0
  554. package/lib/v1/MultiSelect/props/defaultProps.js +2 -0
  555. package/lib/v1/MultiSelect/props/propTypes.js +14 -4
  556. package/lib/v1/PopOver/PopOver.js +71 -40
  557. package/lib/v1/PopOver/props/propTypes.js +3 -0
  558. package/lib/v1/Popup/Popup.js +158 -81
  559. package/lib/v1/Provider/AvatarSize.js +4 -0
  560. package/lib/v1/Provider/Config.js +2 -0
  561. package/lib/v1/Provider/CssProvider.js +4 -0
  562. package/lib/v1/Provider/IdProvider.js +17 -6
  563. package/lib/v1/Provider/LibraryContext.js +35 -15
  564. package/lib/v1/Provider/LibraryContextInit.js +4 -0
  565. package/lib/v1/Provider/NumberGenerator/NumberGenerator.js +44 -15
  566. package/lib/v1/Provider/ZindexProvider.js +15 -3
  567. package/lib/v1/Provider/index.js +5 -0
  568. package/lib/v1/Radio/Radio.js +42 -32
  569. package/lib/v1/Radio/props/propTypes.js +3 -0
  570. package/lib/v1/Responsive/CustomResponsive.js +73 -29
  571. package/lib/v1/Responsive/RefWrapper.js +17 -11
  572. package/lib/v1/Responsive/ResizeComponent.js +62 -36
  573. package/lib/v1/Responsive/ResizeObserver.js +24 -10
  574. package/lib/v1/Responsive/Responsive.js +80 -30
  575. package/lib/v1/Responsive/index.js +4 -0
  576. package/lib/v1/Responsive/props/propTypes.js +3 -0
  577. package/lib/v1/ResponsiveDropBox/ResponsiveDropBox.js +27 -13
  578. package/lib/v1/ResponsiveDropBox/props/propTypes.js +9 -4
  579. package/lib/v1/Ribbon/Ribbon.js +14 -7
  580. package/lib/v1/Ribbon/props/propTypes.js +3 -0
  581. package/lib/v1/RippleEffect/RippleEffect.js +17 -7
  582. package/lib/v1/RippleEffect/props/propTypes.js +3 -0
  583. package/lib/v1/Select/GroupSelect.js +229 -130
  584. package/lib/v1/Select/Select.js +297 -214
  585. package/lib/v1/Select/SelectWithAvatar.js +102 -56
  586. package/lib/v1/Select/SelectWithIcon.js +131 -76
  587. package/lib/v1/Select/index.js +5 -0
  588. package/lib/v1/Select/props/defaultProps.js +5 -4
  589. package/lib/v1/Select/props/propTypes.js +10 -4
  590. package/lib/v1/Stencils/Stencils.js +13 -3
  591. package/lib/v1/Stencils/props/propTypes.js +3 -0
  592. package/lib/v1/Switch/Switch.js +38 -25
  593. package/lib/v1/Switch/props/propTypes.js +3 -0
  594. package/lib/v1/Tab/Tab.js +40 -27
  595. package/lib/v1/Tab/TabContent.js +12 -5
  596. package/lib/v1/Tab/TabContentWrapper.js +16 -8
  597. package/lib/v1/Tab/TabWrapper.js +37 -19
  598. package/lib/v1/Tab/Tabs.js +170 -83
  599. package/lib/v1/Tab/index.js +6 -0
  600. package/lib/v1/Tab/props/propTypes.js +3 -0
  601. package/lib/v1/Tab/v1Tab.module.css +14 -14
  602. package/lib/v1/Tab/v1Tabs.module.css +22 -22
  603. package/lib/v1/Tag/Tag.js +50 -32
  604. package/lib/v1/Tag/props/propTypes.js +3 -0
  605. package/lib/v1/TextBox/TextBox.js +70 -47
  606. package/lib/v1/TextBox/props/propTypes.js +6 -4
  607. package/lib/v1/TextBoxIcon/TextBoxIcon.js +80 -55
  608. package/lib/v1/TextBoxIcon/props/propTypes.js +9 -4
  609. package/lib/v1/Textarea/Textarea.js +45 -28
  610. package/lib/v1/Textarea/props/propTypes.js +3 -0
  611. package/lib/v1/Tooltip/Tooltip.js +94 -31
  612. package/lib/v1/Tooltip/props/propTypes.js +3 -0
  613. package/lib/v1/Typography/Typography.js +26 -15
  614. package/lib/v1/Typography/css/Typography.module.css +31 -31
  615. package/lib/v1/Typography/css/cssJSLogic.js +25 -20
  616. package/lib/v1/Typography/props/propTypes.js +3 -0
  617. package/lib/v1/Typography/utils/index.js +1 -0
  618. package/lib/v1/VelocityAnimation/VelocityAnimation/VelocityAnimation.js +25 -12
  619. package/lib/v1/VelocityAnimation/VelocityAnimation/props/propTypes.js +3 -0
  620. package/lib/v1/VelocityAnimation/VelocityAnimationGroup/VelocityAnimationGroup.js +38 -22
  621. package/lib/v1/VelocityAnimation/VelocityAnimationGroup/props/propTypes.js +3 -0
  622. package/lib/v1/semantic/Button/Button.js +24 -18
  623. package/lib/v1/semantic/Button/props/propTypes.js +3 -0
  624. package/lib/v1/semantic/index.js +2 -0
  625. package/package.json +2 -2
  626. package/result.json +1 -1
  627. package/.DS_Store +0 -0
@@ -1,58 +1,99 @@
1
1
  "use strict";
2
2
 
3
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
+
4
5
  Object.defineProperty(exports, "__esModule", {
5
6
  value: true
6
7
  });
7
8
  exports["default"] = exports.SelectComponent = void 0;
9
+
8
10
  var _react = _interopRequireWildcard(require("react"));
11
+
9
12
  var _defaultProps = require("./props/defaultProps");
13
+
10
14
  var _propTypes = require("./props/propTypes");
15
+
11
16
  var _Popup = _interopRequireDefault(require("../Popup/Popup"));
17
+
12
18
  var _TextBoxIcon = _interopRequireDefault(require("../TextBoxIcon/TextBoxIcon"));
19
+
13
20
  var _Layout = require("../Layout");
21
+
14
22
  var _TextBox = _interopRequireDefault(require("../TextBox/TextBox"));
23
+
15
24
  var _Card = _interopRequireWildcard(require("../Card/Card"));
25
+
16
26
  var _Suggestions = _interopRequireDefault(require("../MultiSelect/Suggestions"));
27
+
17
28
  var _EmptyState = _interopRequireDefault(require("../MultiSelect/EmptyState"));
29
+
18
30
  var _IdProvider = require("../../Provider/IdProvider");
31
+
19
32
  var _icons = require("@zohodesk/icons");
33
+
20
34
  var _ResponsiveDropBox = _interopRequireDefault(require("../ResponsiveDropBox/ResponsiveDropBox"));
35
+
21
36
  var _CustomResponsive = require("../Responsive/CustomResponsive");
37
+
22
38
  var _Loader = _interopRequireDefault(require("@zohodesk/svg/lib/Loader/Loader"));
39
+
23
40
  var _dropDownUtils = require("../../utils/dropDownUtils");
41
+
24
42
  var _Common = require("../../utils/Common.js");
43
+
25
44
  var _SelectModule = _interopRequireDefault(require("../../Select/Select.module.css"));
45
+
26
46
  var _Config = require("../../Provider/Config");
47
+
27
48
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; }
49
+
28
50
  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); }
51
+
29
52
  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; }
53
+
30
54
  function _extends() { _extends = Object.assign ? Object.assign.bind() : 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); }
55
+
31
56
  function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
57
+
32
58
  function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
33
- function _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
59
+
60
+ 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; }
61
+
34
62
  function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
35
- 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, _toPropertyKey(descriptor.key), descriptor); } }
63
+
64
+ 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); } }
65
+
36
66
  function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); Object.defineProperty(Constructor, "prototype", { writable: false }); return Constructor; }
37
- function _toPropertyKey(arg) { var key = _toPrimitive(arg, "string"); return _typeof(key) === "symbol" ? key : String(key); }
38
- function _toPrimitive(input, hint) { if (_typeof(input) !== "object" || input === null) return input; var prim = input[Symbol.toPrimitive]; if (prim !== undefined) { var res = prim.call(input, hint || "default"); if (_typeof(res) !== "object") return res; throw new TypeError("@@toPrimitive must return a primitive value."); } return (hint === "string" ? String : Number)(input); }
67
+
39
68
  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); }
69
+
40
70
  function _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf ? Object.setPrototypeOf.bind() : function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }
71
+
41
72
  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); }; }
73
+
42
74
  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); }
75
+
43
76
  function _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return self; }
77
+
44
78
  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; } }
79
+
45
80
  function _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf.bind() : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); }
81
+
46
82
  /* eslint-disable react/no-deprecated */
47
- /* eslint-disable react/no-unused-prop-types */
48
83
 
84
+ /* eslint-disable react/no-unused-prop-types */
49
85
  var dummyArray = [];
86
+
50
87
  var SelectComponent = /*#__PURE__*/function (_Component) {
51
88
  _inherits(SelectComponent, _Component);
89
+
52
90
  var _super = _createSuper(SelectComponent);
91
+
53
92
  function SelectComponent(props) {
54
93
  var _this;
94
+
55
95
  _classCallCheck(this, SelectComponent);
96
+
56
97
  _this = _super.call(this, props);
57
98
  _this.getNextAriaId = (0, _IdProvider.getUniqueId)(_assertThisInitialized(_this));
58
99
  _this.getFilterSuggestions = (0, _dropDownUtils.makeGetMultiSelectFilterSuggestions)();
@@ -60,36 +101,39 @@ var SelectComponent = /*#__PURE__*/function (_Component) {
60
101
  _this.getSelectedValue = (0, _dropDownUtils.makeGetSelectedValueText)();
61
102
  _this.selectedFormatOptions = {};
62
103
  var selectedValue = props.selectedValue,
63
- _props$searchDebounce = props.searchDebounceTime,
64
- searchDebounceTime = _props$searchDebounce === void 0 ? 500 : _props$searchDebounce,
65
- isDefaultSelectValue = props.isDefaultSelectValue,
66
- _props$autoSelectDebo = props.autoSelectDebouneTime,
67
- autoSelectDebouneTime = _props$autoSelectDebo === void 0 ? 350 : _props$autoSelectDebo,
68
- valueField = props.valueField,
69
- textField = props.textField;
104
+ _props$searchDebounce = props.searchDebounceTime,
105
+ searchDebounceTime = _props$searchDebounce === void 0 ? 500 : _props$searchDebounce,
106
+ isDefaultSelectValue = props.isDefaultSelectValue,
107
+ _props$autoSelectDebo = props.autoSelectDebouneTime,
108
+ autoSelectDebouneTime = _props$autoSelectDebo === void 0 ? 350 : _props$autoSelectDebo,
109
+ valueField = props.valueField,
110
+ textField = props.textField;
111
+
70
112
  var _this$handleFormatOpt = _this.handleFormatOptions(_this.props),
71
- allOptions = _this$handleFormatOpt.allOptions,
72
- normalizedAllOptions = _this$handleFormatOpt.normalizedAllOptions,
73
- optionsOrder = _this$handleFormatOpt.optionsOrder,
74
- normalizedFormatOptions = _this$handleFormatOpt.normalizedFormatOptions;
113
+ allOptions = _this$handleFormatOpt.allOptions,
114
+ normalizedAllOptions = _this$handleFormatOpt.normalizedAllOptions,
115
+ optionsOrder = _this$handleFormatOpt.optionsOrder,
116
+ normalizedFormatOptions = _this$handleFormatOpt.normalizedFormatOptions;
117
+
75
118
  var _this$getSelectedValu = _this.getSelectedValue({
76
- optionsOrder: optionsOrder,
77
- selectedValue: selectedValue,
78
- normalizedFormatOptions: normalizedFormatOptions,
79
- selectedFormatOptions: _this.selectedFormatOptions,
80
- isDefaultSelectValue: isDefaultSelectValue,
81
- valueField: valueField,
82
- textField: textField
83
- }),
84
- selected = _this$getSelectedValu.selected,
85
- hoverIndex = _this$getSelectedValu.hoverIndex,
86
- selectedValueDetails = _this$getSelectedValu.selectedValueDetails,
87
- selectedId = _this$getSelectedValu.selectedId,
88
- isSelfValueChanged = _this$getSelectedValu.isSelfValueChanged;
89
- // eslint-disable-next-line
90
- if (isSelfValueChanged) {
91
- // onChange && onChange(selectedId, normalizedAllOptions[selectedId]);
119
+ optionsOrder: optionsOrder,
120
+ selectedValue: selectedValue,
121
+ normalizedFormatOptions: normalizedFormatOptions,
122
+ selectedFormatOptions: _this.selectedFormatOptions,
123
+ isDefaultSelectValue: isDefaultSelectValue,
124
+ valueField: valueField,
125
+ textField: textField
126
+ }),
127
+ selected = _this$getSelectedValu.selected,
128
+ hoverIndex = _this$getSelectedValu.hoverIndex,
129
+ selectedValueDetails = _this$getSelectedValu.selectedValueDetails,
130
+ selectedId = _this$getSelectedValu.selectedId,
131
+ isSelfValueChanged = _this$getSelectedValu.isSelfValueChanged; // eslint-disable-next-line
132
+
133
+
134
+ if (isSelfValueChanged) {// onChange && onChange(selectedId, normalizedAllOptions[selectedId]);
92
135
  }
136
+
93
137
  _this.state = {
94
138
  selected: selected,
95
139
  options: allOptions,
@@ -133,12 +177,12 @@ var SelectComponent = /*#__PURE__*/function (_Component) {
133
177
  _this.autoSelectIndex = 0;
134
178
  return _this;
135
179
  }
180
+
136
181
  _createClass(SelectComponent, [{
137
182
  key: "componentDidMount",
138
183
  value: function componentDidMount() {
139
184
  this._isMounted = true;
140
- this.handleExposePopupHandlers();
141
- // let { suggestionContainer } = this;
185
+ this.handleExposePopupHandlers(); // let { suggestionContainer } = this;
142
186
  // suggestionContainer &&
143
187
  // suggestionContainer.addEventListener('scroll', this.handleScroll);
144
188
  }
@@ -146,35 +190,39 @@ var SelectComponent = /*#__PURE__*/function (_Component) {
146
190
  key: "componentWillReceiveProps",
147
191
  value: function componentWillReceiveProps(nextProps) {
148
192
  var selectedValue = nextProps.selectedValue,
149
- isDefaultSelectValue = nextProps.isDefaultSelectValue,
150
- valueField = nextProps.valueField,
151
- textField = nextProps.textField;
193
+ isDefaultSelectValue = nextProps.isDefaultSelectValue,
194
+ valueField = nextProps.valueField,
195
+ textField = nextProps.textField;
152
196
  var oldHoverIndex = this.state.hoverIndex;
197
+
153
198
  var _this$handleFormatOpt2 = this.handleFormatOptions(nextProps),
154
- allOptions = _this$handleFormatOpt2.allOptions,
155
- normalizedAllOptions = _this$handleFormatOpt2.normalizedAllOptions,
156
- optionsOrder = _this$handleFormatOpt2.optionsOrder,
157
- normalizedFormatOptions = _this$handleFormatOpt2.normalizedFormatOptions;
199
+ allOptions = _this$handleFormatOpt2.allOptions,
200
+ normalizedAllOptions = _this$handleFormatOpt2.normalizedAllOptions,
201
+ optionsOrder = _this$handleFormatOpt2.optionsOrder,
202
+ normalizedFormatOptions = _this$handleFormatOpt2.normalizedFormatOptions;
203
+
158
204
  var oldSelectedFormatOptions = this.selectedFormatOptions;
205
+
159
206
  var _this$getSelectedValu2 = this.getSelectedValue({
160
- optionsOrder: optionsOrder,
161
- selectedValue: selectedValue,
162
- normalizedFormatOptions: normalizedFormatOptions,
163
- selectedFormatOptions: oldSelectedFormatOptions,
164
- isDefaultSelectValue: isDefaultSelectValue,
165
- valueField: valueField,
166
- textField: textField
167
- }),
168
- selected = _this$getSelectedValu2.selected,
169
- hoverIndex = _this$getSelectedValu2.hoverIndex,
170
- selectedValueDetails = _this$getSelectedValu2.selectedValueDetails,
171
- selectedId = _this$getSelectedValu2.selectedId,
172
- isSelfValueChanged = _this$getSelectedValu2.isSelfValueChanged;
173
- var oldSelectedValue = this.props.selectedValue;
174
- // eslint-disable-next-line
175
- if (isSelfValueChanged && oldSelectedValue !== selectedValue) {
176
- // onChange && onChange(selectedId, normalizedAllOptions[selectedId]);
207
+ optionsOrder: optionsOrder,
208
+ selectedValue: selectedValue,
209
+ normalizedFormatOptions: normalizedFormatOptions,
210
+ selectedFormatOptions: oldSelectedFormatOptions,
211
+ isDefaultSelectValue: isDefaultSelectValue,
212
+ valueField: valueField,
213
+ textField: textField
214
+ }),
215
+ selected = _this$getSelectedValu2.selected,
216
+ hoverIndex = _this$getSelectedValu2.hoverIndex,
217
+ selectedValueDetails = _this$getSelectedValu2.selectedValueDetails,
218
+ selectedId = _this$getSelectedValu2.selectedId,
219
+ isSelfValueChanged = _this$getSelectedValu2.isSelfValueChanged;
220
+
221
+ var oldSelectedValue = this.props.selectedValue; // eslint-disable-next-line
222
+
223
+ if (isSelfValueChanged && oldSelectedValue !== selectedValue) {// onChange && onChange(selectedId, normalizedAllOptions[selectedId]);
177
224
  }
225
+
178
226
  this.selectedFormatOptions = Object.assign(oldSelectedFormatOptions, selectedValueDetails);
179
227
  this.normalizedFormatOptions = normalizedFormatOptions;
180
228
  this.optionsOrder = optionsOrder;
@@ -191,23 +239,25 @@ var SelectComponent = /*#__PURE__*/function (_Component) {
191
239
  key: "componentDidUpdate",
192
240
  value: function componentDidUpdate(prevProps) {
193
241
  var _this2 = this;
242
+
194
243
  var suggestionContainer = this.suggestionContainer,
195
- optionsOrder = this.optionsOrder;
244
+ optionsOrder = this.optionsOrder;
196
245
  var _this$state = this.state,
197
- hoverIndex = _this$state.hoverIndex,
198
- searchStr = _this$state.searchStr,
199
- selectedValueIndex = _this$state.selectedValueIndex;
246
+ hoverIndex = _this$state.hoverIndex,
247
+ searchStr = _this$state.searchStr,
248
+ selectedValueIndex = _this$state.selectedValueIndex;
200
249
  var _this$props = this.props,
201
- needLocalSearch = _this$props.needLocalSearch,
202
- onDropBoxClose = _this$props.onDropBoxClose,
203
- onDropBoxOpen = _this$props.onDropBoxOpen,
204
- needSearch = _this$props.needSearch,
205
- onSearch = _this$props.onSearch,
206
- isPopupOpen = _this$props.isPopupOpen,
207
- isSearchClearOnClose = _this$props.isSearchClearOnClose;
250
+ needLocalSearch = _this$props.needLocalSearch,
251
+ onDropBoxClose = _this$props.onDropBoxClose,
252
+ onDropBoxOpen = _this$props.onDropBoxOpen,
253
+ needSearch = _this$props.needSearch,
254
+ onSearch = _this$props.onSearch,
255
+ isPopupOpen = _this$props.isPopupOpen,
256
+ isSearchClearOnClose = _this$props.isSearchClearOnClose;
208
257
  var hoverId = (0, _Common.getIsEmptyValue)(optionsOrder[hoverIndex]) ? '' : optionsOrder[hoverIndex];
209
258
  var selSuggestion = this["suggestion_".concat(hoverId)];
210
259
  isPopupOpen && (0, _Common.scrollTo)(suggestionContainer, selSuggestion);
260
+
211
261
  if (prevProps.isPopupOpen !== isPopupOpen) {
212
262
  if (isPopupOpen) {
213
263
  onDropBoxOpen && this.handleFetchOptions(onDropBoxOpen, searchStr);
@@ -225,15 +275,16 @@ var SelectComponent = /*#__PURE__*/function (_Component) {
225
275
  hoverIndex: selectedValueIndex
226
276
  });
227
277
  }
228
- }
278
+ } //When suggestions length less than 5, getNextOptions function call
279
+
229
280
 
230
- //When suggestions length less than 5, getNextOptions function call
231
281
  var _this$props2 = this.props,
232
- isNextOptions = _this$props2.isNextOptions,
233
- getNextOptions = _this$props2.getNextOptions;
234
- // let { searchStr } = this.state;
282
+ isNextOptions = _this$props2.isNextOptions,
283
+ getNextOptions = _this$props2.getNextOptions; // let { searchStr } = this.state;
284
+
235
285
  var suggestions = isPopupOpen ? this.handleFilterSuggestions() : [];
236
286
  var suggestionsLen = suggestions.length;
287
+
237
288
  if (isPopupOpen && suggestionsLen <= 5 && isNextOptions && getNextOptions && !needLocalSearch) {
238
289
  this.handleFetchOptions(getNextOptions, searchStr);
239
290
  }
@@ -249,8 +300,7 @@ var SelectComponent = /*#__PURE__*/function (_Component) {
249
300
  closePopup: null,
250
301
  togglePopup: null
251
302
  };
252
- getPopupHandlers && getPopupHandlers(methods);
253
- // let { suggestionContainer } = this;
303
+ getPopupHandlers && getPopupHandlers(methods); // let { suggestionContainer } = this;
254
304
  // suggestionContainer &&
255
305
  // suggestionContainer.removeEventListener('scroll', this.handleScroll);
256
306
  }
@@ -258,12 +308,12 @@ var SelectComponent = /*#__PURE__*/function (_Component) {
258
308
  key: "handleFormatOptions",
259
309
  value: function handleFormatOptions(props) {
260
310
  var options = props.options,
261
- valueField = props.valueField,
262
- textField = props.textField,
263
- _props$customProps = props.customProps,
264
- customProps = _props$customProps === void 0 ? {} : _props$customProps;
311
+ valueField = props.valueField,
312
+ textField = props.textField,
313
+ _props$customProps = props.customProps,
314
+ customProps = _props$customProps === void 0 ? {} : _props$customProps;
265
315
  var _customProps$listItem = customProps.listItemProps,
266
- listItemProps = _customProps$listItem === void 0 ? {} : _customProps$listItem;
316
+ listItemProps = _customProps$listItem === void 0 ? {} : _customProps$listItem;
267
317
  return this.formatOptions({
268
318
  options: options,
269
319
  valueField: valueField,
@@ -276,12 +326,12 @@ var SelectComponent = /*#__PURE__*/function (_Component) {
276
326
  value: function handleChange(id, value, index, e) {
277
327
  e && e.preventDefault && e.preventDefault();
278
328
  var _this$props3 = this.props,
279
- onChange = _this$props3.onChange,
280
- isReadOnly = _this$props3.isReadOnly,
281
- needCloseOnSelect = _this$props3.needCloseOnSelect;
329
+ onChange = _this$props3.onChange,
330
+ isReadOnly = _this$props3.isReadOnly,
331
+ needCloseOnSelect = _this$props3.needCloseOnSelect;
282
332
  var optionsNormalize = this.state.optionsNormalize;
283
- !isReadOnly && onChange && onChange(id, optionsNormalize[id]);
284
- // this.valueInput && this.valueInput.focus({preventScroll:true});
333
+ !isReadOnly && onChange && onChange(id, optionsNormalize[id]); // this.valueInput && this.valueInput.focus({preventScroll:true});
334
+
285
335
  needCloseOnSelect && this.handlePopupClose(e);
286
336
  }
287
337
  }, {
@@ -298,73 +348,83 @@ var SelectComponent = /*#__PURE__*/function (_Component) {
298
348
  key: "handleKeyDown",
299
349
  value: function handleKeyDown(e) {
300
350
  var _this$props4 = this.props,
301
- onChange = _this$props4.onChange,
302
- isPopupOpen = _this$props4.isPopupOpen,
303
- onKeyDown = _this$props4.onKeyDown,
304
- isPopupOpenOnEnter = _this$props4.isPopupOpenOnEnter,
305
- needCloseOnSelect = _this$props4.needCloseOnSelect,
306
- isPopupReady = _this$props4.isPopupReady;
351
+ onChange = _this$props4.onChange,
352
+ isPopupOpen = _this$props4.isPopupOpen,
353
+ onKeyDown = _this$props4.onKeyDown,
354
+ isPopupOpenOnEnter = _this$props4.isPopupOpenOnEnter,
355
+ needCloseOnSelect = _this$props4.needCloseOnSelect,
356
+ isPopupReady = _this$props4.isPopupReady;
307
357
  var _this$state2 = this.state,
308
- hoverIndex = _this$state2.hoverIndex,
309
- optionsNormalize = _this$state2.optionsNormalize;
358
+ hoverIndex = _this$state2.hoverIndex,
359
+ optionsNormalize = _this$state2.optionsNormalize;
310
360
  var options = this.handleFilterSuggestions();
311
361
  var keyCode = e.keyCode;
362
+
312
363
  if (!isPopupOpen && !isPopupOpenOnEnter) {
313
364
  onKeyDown && onKeyDown(e);
314
365
  }
366
+
315
367
  if (isPopupOpen && (keyCode === 38 || keyCode === 40 || keyCode === 13) && e.preventDefault) {
316
368
  e.preventDefault(); //prevent body scroll and enter key prevent
317
369
  } else if (!isPopupOpen && keyCode === 40) {
318
370
  e.preventDefault(); //prevent body scroll
371
+
319
372
  this.togglePopup(e);
320
373
  }
374
+
321
375
  if (keyCode === 38 && isPopupOpen && options.length) {
322
376
  // eslint-disable-next-line
323
- if (hoverIndex === 0) {
324
- // hoverIndex = options.length - 1;
377
+ if (hoverIndex === 0) {// hoverIndex = options.length - 1;
325
378
  } else {
326
379
  hoverIndex -= 1;
327
380
  }
381
+
328
382
  this.setState({
329
383
  hoverIndex: hoverIndex
330
384
  });
331
385
  } else if (keyCode === 40 && isPopupOpen && options.length) {
332
386
  // eslint-disable-next-line
333
- if (hoverIndex === options.length - 1) {
334
- // hoverIndex = 0;
387
+ if (hoverIndex === options.length - 1) {// hoverIndex = 0;
335
388
  } else {
336
389
  if (hoverIndex === options.length - 3) {
337
390
  this.handleGetNextOptions();
338
391
  }
392
+
339
393
  hoverIndex += 1;
340
394
  }
395
+
341
396
  this.setState({
342
397
  hoverIndex: hoverIndex
343
398
  });
344
399
  } else if (keyCode === 13) {
345
400
  var option = options[hoverIndex];
401
+
346
402
  var _ref2 = option || {},
347
- id = _ref2.id;
403
+ id = _ref2.id;
404
+
348
405
  if (isPopupReady && !(0, _Common.getIsEmptyValue)(id) && onChange) {
349
406
  onChange(id, optionsNormalize[id]);
350
407
  needCloseOnSelect && this.handlePopupClose(e);
351
408
  }
409
+
352
410
  if (!isPopupReady && isPopupOpenOnEnter) {
353
411
  this.togglePopup(e);
354
412
  }
355
413
  } else if (keyCode === 27) {
356
414
  this.valueInput && this.valueInput.focus({
357
415
  preventScroll: true
358
- });
359
- //this.handlePopupClose(e);
416
+ }); //this.handlePopupClose(e);
360
417
  } else if (keyCode === 9) {
361
418
  var _option = options[hoverIndex];
419
+
362
420
  var _ref3 = _option || {},
363
- _id = _ref3.id;
421
+ _id = _ref3.id;
422
+
364
423
  if (isPopupOpen && !(0, _Common.getIsEmptyValue)(_id)) {
365
424
  onChange && onChange(_id, optionsNormalize[_id]);
366
425
  needCloseOnSelect && this.handlePopupClose(e);
367
426
  }
427
+
368
428
  if (!isPopupOpen && isPopupOpenOnEnter) {
369
429
  this.togglePopup(e);
370
430
  }
@@ -381,9 +441,10 @@ var SelectComponent = /*#__PURE__*/function (_Component) {
381
441
  key: "handleSearch",
382
442
  value: function handleSearch(value) {
383
443
  var _this3 = this;
444
+
384
445
  // let { value = '' } = e.target;
385
446
  var _this$state$searchStr = this.state.searchStr,
386
- searchStr = _this$state$searchStr === void 0 ? '' : _this$state$searchStr;
447
+ searchStr = _this$state$searchStr === void 0 ? '' : _this$state$searchStr;
387
448
  var onSearch = this.props.onSearch;
388
449
  var searchStrRegex = (0, _Common.getSearchString)(searchStr);
389
450
  var valueStrRegex = (0, _Common.getSearchString)(value);
@@ -401,7 +462,9 @@ var SelectComponent = /*#__PURE__*/function (_Component) {
401
462
  }
402
463
  }, {
403
464
  key: "handleMouseEnter",
404
- value: function handleMouseEnter(id /*val, index*/) {
465
+ value: function handleMouseEnter(id
466
+ /*val, index*/
467
+ ) {
405
468
  var hoverIndex = this.state.hoverIndex;
406
469
  var optionsOrder = this.optionsOrder;
407
470
  var newHoverIndex = optionsOrder.indexOf(id);
@@ -413,31 +476,31 @@ var SelectComponent = /*#__PURE__*/function (_Component) {
413
476
  key: "handleFilterSuggestions",
414
477
  value: function handleFilterSuggestions() {
415
478
  var _this$props5 = this.props,
416
- needLocalSearch = _this$props5.needLocalSearch,
417
- _this$props5$excludeO = _this$props5.excludeOptions,
418
- excludeOptions = _this$props5$excludeO === void 0 ? dummyArray : _this$props5$excludeO;
479
+ needLocalSearch = _this$props5.needLocalSearch,
480
+ _this$props5$excludeO = _this$props5.excludeOptions,
481
+ excludeOptions = _this$props5$excludeO === void 0 ? dummyArray : _this$props5$excludeO;
419
482
  var _this$state3 = this.state,
420
- _this$state3$options = _this$state3.options,
421
- options = _this$state3$options === void 0 ? dummyArray : _this$state3$options,
422
- _this$state3$searchSt = _this$state3.searchStr,
423
- searchStr = _this$state3$searchSt === void 0 ? '' : _this$state3$searchSt;
424
-
425
- // if (
483
+ _this$state3$options = _this$state3.options,
484
+ options = _this$state3$options === void 0 ? dummyArray : _this$state3$options,
485
+ _this$state3$searchSt = _this$state3.searchStr,
486
+ searchStr = _this$state3$searchSt === void 0 ? '' : _this$state3$searchSt; // if (
426
487
  // (needSearch && searchStr && searchStr.trim().length) ||
427
488
  // (excludeOptions && excludeOptions.length)
428
489
  // ) {
490
+
429
491
  searchStr = (0, _Common.getSearchString)(searchStr);
492
+
430
493
  var _this$getFilterSugges = this.getFilterSuggestions({
431
- options: options,
432
- selectedOptions: excludeOptions,
433
- searchStr: searchStr,
434
- needSearch: needLocalSearch
435
- }),
436
- suggestions = _this$getFilterSugges.suggestions,
437
- suggestionIds = _this$getFilterSugges.suggestionIds;
494
+ options: options,
495
+ selectedOptions: excludeOptions,
496
+ searchStr: searchStr,
497
+ needSearch: needLocalSearch
498
+ }),
499
+ suggestions = _this$getFilterSugges.suggestions,
500
+ suggestionIds = _this$getFilterSugges.suggestionIds;
501
+
438
502
  this.optionsOrder = suggestionIds;
439
- return suggestions;
440
- // }
503
+ return suggestions; // }
441
504
  // return options;
442
505
  }
443
506
  }, {
@@ -451,15 +514,18 @@ var SelectComponent = /*#__PURE__*/function (_Component) {
451
514
  key: "handleFetchOptions",
452
515
  value: function handleFetchOptions(APICall) {
453
516
  var _this4 = this;
517
+
454
518
  var searchStr = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : '';
455
519
  // let funcArgs = args.slice(1, args.length);
456
520
  var _this$state$isFetchin = this.state.isFetchingOptions,
457
- isFetchingOptions = _this$state$isFetchin === void 0 ? false : _this$state$isFetchin;
521
+ isFetchingOptions = _this$state$isFetchin === void 0 ? false : _this$state$isFetchin;
458
522
  var _isMounted = this._isMounted;
523
+
459
524
  if (!isFetchingOptions && APICall) {
460
525
  this.setState({
461
526
  isFetchingOptions: true
462
527
  });
528
+
463
529
  try {
464
530
  return APICall(searchStr).then(function () {
465
531
  _isMounted && _this4.setState({
@@ -481,8 +547,8 @@ var SelectComponent = /*#__PURE__*/function (_Component) {
481
547
  key: "handleGetNextOptions",
482
548
  value: function handleGetNextOptions() {
483
549
  var _this$props6 = this.props,
484
- isNextOptions = _this$props6.isNextOptions,
485
- getNextOptions = _this$props6.getNextOptions;
550
+ isNextOptions = _this$props6.isNextOptions,
551
+ getNextOptions = _this$props6.getNextOptions;
486
552
  var searchStr = this.state.searchStr;
487
553
  isNextOptions && getNextOptions && this.handleFetchOptions(getNextOptions, searchStr);
488
554
  }
@@ -490,11 +556,11 @@ var SelectComponent = /*#__PURE__*/function (_Component) {
490
556
  key: "togglePopup",
491
557
  value: function togglePopup(e) {
492
558
  var _this$props7 = this.props,
493
- togglePopup = _this$props7.togglePopup,
494
- isReadOnly = _this$props7.isReadOnly,
495
- defaultDropBoxPosition = _this$props7.defaultDropBoxPosition,
496
- onFocus = _this$props7.onFocus,
497
- isPopupOpen = _this$props7.isPopupOpen;
559
+ togglePopup = _this$props7.togglePopup,
560
+ isReadOnly = _this$props7.isReadOnly,
561
+ defaultDropBoxPosition = _this$props7.defaultDropBoxPosition,
562
+ onFocus = _this$props7.onFocus,
563
+ isPopupOpen = _this$props7.isPopupOpen;
498
564
  !isReadOnly && togglePopup(e, defaultDropBoxPosition ? "".concat(defaultDropBoxPosition) : null);
499
565
  !isPopupOpen && typeof onFocus === 'function' && onFocus(e);
500
566
  }
@@ -539,6 +605,7 @@ var SelectComponent = /*#__PURE__*/function (_Component) {
539
605
  key: "handleClearSearch",
540
606
  value: function handleClearSearch() {
541
607
  var _this5 = this;
608
+
542
609
  this.handleSearch('');
543
610
  setTimeout(function () {
544
611
  _this5.searchInput && _this5.searchInput.focus({
@@ -551,8 +618,9 @@ var SelectComponent = /*#__PURE__*/function (_Component) {
551
618
  value: function handleValueInputChange(e) {
552
619
  var typeString = (0, _Common.getKeyValue)(e);
553
620
  var _this$props8 = this.props,
554
- isPopupOpen = _this$props8.isPopupOpen,
555
- autoSelectOnType = _this$props8.autoSelectOnType;
621
+ isPopupOpen = _this$props8.isPopupOpen,
622
+ autoSelectOnType = _this$props8.autoSelectOnType;
623
+
556
624
  if (!isPopupOpen && autoSelectOnType) {
557
625
  this.valueInputTypeString += (typeString || '').trim();
558
626
  this.handleChangeOnType();
@@ -562,43 +630,53 @@ var SelectComponent = /*#__PURE__*/function (_Component) {
562
630
  key: "handleChangeOnType",
563
631
  value: function handleChangeOnType() {
564
632
  var _this6 = this;
633
+
565
634
  var _this$props$excludeOp = this.props.excludeOptions,
566
- excludeOptions = _this$props$excludeOp === void 0 ? dummyArray : _this$props$excludeOp;
635
+ excludeOptions = _this$props$excludeOp === void 0 ? dummyArray : _this$props$excludeOp;
567
636
  var _this$state$options = this.state.options,
568
- options = _this$state$options === void 0 ? dummyArray : _this$state$options;
637
+ options = _this$state$options === void 0 ? dummyArray : _this$state$options;
569
638
  var optionsOrder = this.optionsOrder;
570
639
  var typeString = this.valueInputTypeString;
571
640
  this.valueInputTypeString = '';
641
+
572
642
  var changeValue = function changeValue() {
573
643
  var optionDetails = _this6.autoSelectSuggestions[_this6.autoSelectIndex];
644
+
574
645
  var _ref4 = optionDetails || {},
575
- id = _ref4.id;
646
+ id = _ref4.id;
647
+
576
648
  if (!(0, _Common.getIsEmptyValue)(id)) {
577
649
  _this6.handleChange(id);
650
+
578
651
  var hoverIndex = optionsOrder.indexOf(id);
652
+
579
653
  _this6.setState({
580
654
  hoverIndex: hoverIndex
581
655
  });
582
656
  }
583
657
  };
658
+
584
659
  if (typeString && typeString === this.valueInputSearchString) {
585
660
  if (this.autoSelectIndex < this.autoSelectSuggestions.length - 1) {
586
661
  this.autoSelectIndex += 1;
587
662
  } else {
588
663
  this.autoSelectIndex = 0;
589
664
  }
665
+
590
666
  changeValue();
591
667
  } else if (typeString) {
592
668
  this.valueInputSearchString = typeString;
669
+
593
670
  var _this$getFilterSugges2 = this.getFilterSuggestions({
594
- options: options,
595
- selectedOptions: excludeOptions,
596
- searchStr: typeString,
597
- needSearch: true,
598
- isStartsWithSearch: true
599
- }),
600
- _this$getFilterSugges3 = _this$getFilterSugges2.suggestions,
601
- suggestions = _this$getFilterSugges3 === void 0 ? [] : _this$getFilterSugges3;
671
+ options: options,
672
+ selectedOptions: excludeOptions,
673
+ searchStr: typeString,
674
+ needSearch: true,
675
+ isStartsWithSearch: true
676
+ }),
677
+ _this$getFilterSugges3 = _this$getFilterSugges2.suggestions,
678
+ suggestions = _this$getFilterSugges3 === void 0 ? [] : _this$getFilterSugges3;
679
+
602
680
  this.autoSelectIndex = 0;
603
681
  this.autoSelectSuggestions = suggestions;
604
682
  changeValue();
@@ -609,8 +687,9 @@ var SelectComponent = /*#__PURE__*/function (_Component) {
609
687
  value: function handleAddNewOption() {
610
688
  var searchStr = this.state.searchStr;
611
689
  var _this$props9 = this.props,
612
- onAddNewOption = _this$props9.onAddNewOption,
613
- getCustomEmptyState = _this$props9.getCustomEmptyState;
690
+ onAddNewOption = _this$props9.onAddNewOption,
691
+ getCustomEmptyState = _this$props9.getCustomEmptyState;
692
+
614
693
  if (getCustomEmptyState) {
615
694
  this.setState({
616
695
  searchStr: ''
@@ -622,11 +701,11 @@ var SelectComponent = /*#__PURE__*/function (_Component) {
622
701
  key: "handleExposePopupHandlers",
623
702
  value: function handleExposePopupHandlers() {
624
703
  var _this$props10 = this.props,
625
- removeClose = _this$props10.removeClose,
626
- openPopupOnly = _this$props10.openPopupOnly,
627
- closePopupOnly = _this$props10.closePopupOnly,
628
- togglePopup = _this$props10.togglePopup,
629
- getPopupHandlers = _this$props10.getPopupHandlers;
704
+ removeClose = _this$props10.removeClose,
705
+ openPopupOnly = _this$props10.openPopupOnly,
706
+ closePopupOnly = _this$props10.closePopupOnly,
707
+ togglePopup = _this$props10.togglePopup,
708
+ getPopupHandlers = _this$props10.getPopupHandlers;
630
709
  var methods = {
631
710
  removeClose: removeClose,
632
711
  openPopup: openPopupOnly,
@@ -649,81 +728,82 @@ var SelectComponent = /*#__PURE__*/function (_Component) {
649
728
  key: "render",
650
729
  value: function render() {
651
730
  var _this7 = this;
731
+
652
732
  var _this$props11 = this.props,
653
- needSearch = _this$props11.needSearch,
654
- dropBoxSize = _this$props11.dropBoxSize,
655
- emptyMessage = _this$props11.emptyMessage,
656
- searchEmptyMessage = _this$props11.searchEmptyMessage,
657
- needBorder = _this$props11.needBorder,
658
- needSelectDownIcon = _this$props11.needSelectDownIcon,
659
- position = _this$props11.position,
660
- defaultDropBoxPosition = _this$props11.defaultDropBoxPosition,
661
- getTargetRef = _this$props11.getTargetRef,
662
- getContainerRef = _this$props11.getContainerRef,
663
- removeClose = _this$props11.removeClose,
664
- isPopupOpen = _this$props11.isPopupOpen,
665
- isPopupReady = _this$props11.isPopupReady,
666
- animationStyle = _this$props11.animationStyle,
667
- textBoxSize = _this$props11.textBoxSize,
668
- textBoxVariant = _this$props11.textBoxVariant,
669
- searchBoxSize = _this$props11.searchBoxSize,
670
- searchBoxPlaceHolder = _this$props11.searchBoxPlaceHolder,
671
- maxLength = _this$props11.maxLength,
672
- isDisabled = _this$props11.isDisabled,
673
- title = _this$props11.title,
674
- size = _this$props11.size,
675
- placeHolder = _this$props11.placeHolder,
676
- className = _this$props11.className,
677
- isReadOnly = _this$props11.isReadOnly,
678
- dataId = _this$props11.dataId,
679
- needResponsive = _this$props11.needResponsive,
680
- borderColor = _this$props11.borderColor,
681
- needTick = _this$props11.needTick,
682
- listItemSize = _this$props11.listItemSize,
683
- boxSize = _this$props11.boxSize,
684
- needListBorder = _this$props11.needListBorder,
685
- getFooter = _this$props11.getFooter,
686
- getChildren = _this$props11.getChildren,
687
- getCustomEmptyState = _this$props11.getCustomEmptyState,
688
- isParentBased = _this$props11.isParentBased,
689
- i18nKeys = _this$props11.i18nKeys,
690
- htmlId = _this$props11.htmlId,
691
- children = _this$props11.children,
692
- iconOnHover = _this$props11.iconOnHover,
693
- customProps = _this$props11.customProps,
694
- autoComplete = _this$props11.autoComplete,
695
- ariaLabelledby = _this$props11.ariaLabelledby,
696
- isLoading = _this$props11.isLoading,
697
- dataSelectorId = _this$props11.dataSelectorId,
698
- isAbsolutePositioningNeeded = _this$props11.isAbsolutePositioningNeeded,
699
- positionsOffset = _this$props11.positionsOffset,
700
- targetOffset = _this$props11.targetOffset,
701
- isRestrictScroll = _this$props11.isRestrictScroll,
702
- dropBoxPortalId = _this$props11.dropBoxPortalId;
733
+ needSearch = _this$props11.needSearch,
734
+ dropBoxSize = _this$props11.dropBoxSize,
735
+ emptyMessage = _this$props11.emptyMessage,
736
+ searchEmptyMessage = _this$props11.searchEmptyMessage,
737
+ needBorder = _this$props11.needBorder,
738
+ needSelectDownIcon = _this$props11.needSelectDownIcon,
739
+ position = _this$props11.position,
740
+ defaultDropBoxPosition = _this$props11.defaultDropBoxPosition,
741
+ getTargetRef = _this$props11.getTargetRef,
742
+ getContainerRef = _this$props11.getContainerRef,
743
+ removeClose = _this$props11.removeClose,
744
+ isPopupOpen = _this$props11.isPopupOpen,
745
+ isPopupReady = _this$props11.isPopupReady,
746
+ animationStyle = _this$props11.animationStyle,
747
+ textBoxSize = _this$props11.textBoxSize,
748
+ textBoxVariant = _this$props11.textBoxVariant,
749
+ searchBoxSize = _this$props11.searchBoxSize,
750
+ searchBoxPlaceHolder = _this$props11.searchBoxPlaceHolder,
751
+ maxLength = _this$props11.maxLength,
752
+ isDisabled = _this$props11.isDisabled,
753
+ title = _this$props11.title,
754
+ size = _this$props11.size,
755
+ placeHolder = _this$props11.placeHolder,
756
+ className = _this$props11.className,
757
+ isReadOnly = _this$props11.isReadOnly,
758
+ dataId = _this$props11.dataId,
759
+ needResponsive = _this$props11.needResponsive,
760
+ borderColor = _this$props11.borderColor,
761
+ needTick = _this$props11.needTick,
762
+ listItemSize = _this$props11.listItemSize,
763
+ boxSize = _this$props11.boxSize,
764
+ needListBorder = _this$props11.needListBorder,
765
+ getFooter = _this$props11.getFooter,
766
+ getChildren = _this$props11.getChildren,
767
+ getCustomEmptyState = _this$props11.getCustomEmptyState,
768
+ isParentBased = _this$props11.isParentBased,
769
+ i18nKeys = _this$props11.i18nKeys,
770
+ htmlId = _this$props11.htmlId,
771
+ children = _this$props11.children,
772
+ iconOnHover = _this$props11.iconOnHover,
773
+ customProps = _this$props11.customProps,
774
+ autoComplete = _this$props11.autoComplete,
775
+ ariaLabelledby = _this$props11.ariaLabelledby,
776
+ isLoading = _this$props11.isLoading,
777
+ dataSelectorId = _this$props11.dataSelectorId,
778
+ isAbsolutePositioningNeeded = _this$props11.isAbsolutePositioningNeeded,
779
+ positionsOffset = _this$props11.positionsOffset,
780
+ targetOffset = _this$props11.targetOffset,
781
+ isRestrictScroll = _this$props11.isRestrictScroll,
782
+ dropBoxPortalId = _this$props11.dropBoxPortalId;
703
783
  var _i18nKeys = i18nKeys,
704
- TextBoxIcon_i18n = _i18nKeys.TextBoxIcon_i18n,
705
- _i18nKeys$TextBox_all = _i18nKeys.TextBox_ally_label,
706
- TextBox_ally_label = _i18nKeys$TextBox_all === void 0 ? 'click to select options' : _i18nKeys$TextBox_all;
784
+ TextBoxIcon_i18n = _i18nKeys.TextBoxIcon_i18n,
785
+ _i18nKeys$TextBox_all = _i18nKeys.TextBox_ally_label,
786
+ TextBox_ally_label = _i18nKeys$TextBox_all === void 0 ? 'click to select options' : _i18nKeys$TextBox_all;
707
787
  i18nKeys = Object.assign({}, i18nKeys, {
708
788
  emptyText: i18nKeys.emptyText || emptyMessage,
709
789
  searchEmptyText: i18nKeys.searchEmptyText || searchEmptyMessage
710
790
  });
711
791
  var _this$state4 = this.state,
712
- hoverIndex = _this$state4.hoverIndex,
713
- selected = _this$state4.selected,
714
- searchStr = _this$state4.searchStr,
715
- isFetchingOptions = _this$state4.isFetchingOptions,
716
- selectedId = _this$state4.selectedId,
717
- options = _this$state4.options;
792
+ hoverIndex = _this$state4.hoverIndex,
793
+ selected = _this$state4.selected,
794
+ searchStr = _this$state4.searchStr,
795
+ isFetchingOptions = _this$state4.isFetchingOptions,
796
+ selectedId = _this$state4.selectedId,
797
+ options = _this$state4.options;
718
798
  var suggestions = this.handleFilterSuggestions();
719
799
  var setAriaId = this.getNextAriaId();
720
800
  var ariaErrorId = this.getNextAriaId();
721
801
  var _customProps$TextBoxP = customProps.TextBoxProps,
722
- TextBoxProps = _customProps$TextBoxP === void 0 ? {} : _customProps$TextBoxP,
723
- _customProps$Dropdown = customProps.DropdownSearchTextBoxProps,
724
- DropdownSearchTextBoxProps = _customProps$Dropdown === void 0 ? {} : _customProps$Dropdown,
725
- _customProps$Suggesti = customProps.SuggestionsProps,
726
- SuggestionsProps = _customProps$Suggesti === void 0 ? {} : _customProps$Suggesti;
802
+ TextBoxProps = _customProps$TextBoxP === void 0 ? {} : _customProps$TextBoxP,
803
+ _customProps$Dropdown = customProps.DropdownSearchTextBoxProps,
804
+ DropdownSearchTextBoxProps = _customProps$Dropdown === void 0 ? {} : _customProps$Dropdown,
805
+ _customProps$Suggesti = customProps.SuggestionsProps,
806
+ SuggestionsProps = _customProps$Suggesti === void 0 ? {} : _customProps$Suggesti;
727
807
  return /*#__PURE__*/_react["default"].createElement("div", {
728
808
  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 : ''),
729
809
  "data-title": isDisabled ? title : null,
@@ -919,8 +999,10 @@ var SelectComponent = /*#__PURE__*/function (_Component) {
919
999
  }) : null);
920
1000
  }
921
1001
  }]);
1002
+
922
1003
  return SelectComponent;
923
1004
  }(_react.Component);
1005
+
924
1006
  exports.SelectComponent = SelectComponent;
925
1007
  SelectComponent.propTypes = _propTypes.Select_propTypes;
926
1008
  SelectComponent.defaultProps = _defaultProps.Select_defaultProps;
@@ -939,4 +1021,5 @@ var _default = Select; // if (__DOCS__) {
939
1021
  // // eslint-disable-next-line react/forbid-foreign-prop-types
940
1022
  // Select.propTypes = SelectComponent.propTypes;
941
1023
  // }
1024
+
942
1025
  exports["default"] = _default;