@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.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,35 +101,38 @@ 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
- if (isSelfValueChanged) {
90
- // 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;
132
+
133
+ if (isSelfValueChanged) {// onChange && onChange(selectedId, normalizedAllOptions[selectedId]);
91
134
  }
135
+
92
136
  _this.state = {
93
137
  selected: selected,
94
138
  options: allOptions,
@@ -132,12 +176,12 @@ var SelectComponent = /*#__PURE__*/function (_Component) {
132
176
  _this.autoSelectIndex = 0;
133
177
  return _this;
134
178
  }
179
+
135
180
  _createClass(SelectComponent, [{
136
181
  key: "componentDidMount",
137
182
  value: function componentDidMount() {
138
183
  this._isMounted = true;
139
- this.handleExposePopupHandlers();
140
- // let { suggestionContainer } = this;
184
+ this.handleExposePopupHandlers(); // let { suggestionContainer } = this;
141
185
  // suggestionContainer &&
142
186
  // suggestionContainer.addEventListener('scroll', this.handleScroll);
143
187
  }
@@ -145,34 +189,39 @@ var SelectComponent = /*#__PURE__*/function (_Component) {
145
189
  key: "componentWillReceiveProps",
146
190
  value: function componentWillReceiveProps(nextProps) {
147
191
  var selectedValue = nextProps.selectedValue,
148
- isDefaultSelectValue = nextProps.isDefaultSelectValue,
149
- valueField = nextProps.valueField,
150
- textField = nextProps.textField;
192
+ isDefaultSelectValue = nextProps.isDefaultSelectValue,
193
+ valueField = nextProps.valueField,
194
+ textField = nextProps.textField;
151
195
  var oldHoverIndex = this.state.hoverIndex;
196
+
152
197
  var _this$handleFormatOpt2 = this.handleFormatOptions(nextProps),
153
- allOptions = _this$handleFormatOpt2.allOptions,
154
- normalizedAllOptions = _this$handleFormatOpt2.normalizedAllOptions,
155
- optionsOrder = _this$handleFormatOpt2.optionsOrder,
156
- normalizedFormatOptions = _this$handleFormatOpt2.normalizedFormatOptions;
198
+ allOptions = _this$handleFormatOpt2.allOptions,
199
+ normalizedAllOptions = _this$handleFormatOpt2.normalizedAllOptions,
200
+ optionsOrder = _this$handleFormatOpt2.optionsOrder,
201
+ normalizedFormatOptions = _this$handleFormatOpt2.normalizedFormatOptions;
202
+
157
203
  var oldSelectedFormatOptions = this.selectedFormatOptions;
204
+
158
205
  var _this$getSelectedValu2 = this.getSelectedValue({
159
- optionsOrder: optionsOrder,
160
- selectedValue: selectedValue,
161
- normalizedFormatOptions: normalizedFormatOptions,
162
- selectedFormatOptions: oldSelectedFormatOptions,
163
- isDefaultSelectValue: isDefaultSelectValue,
164
- valueField: valueField,
165
- textField: textField
166
- }),
167
- selected = _this$getSelectedValu2.selected,
168
- hoverIndex = _this$getSelectedValu2.hoverIndex,
169
- selectedValueDetails = _this$getSelectedValu2.selectedValueDetails,
170
- selectedId = _this$getSelectedValu2.selectedId,
171
- isSelfValueChanged = _this$getSelectedValu2.isSelfValueChanged;
206
+ optionsOrder: optionsOrder,
207
+ selectedValue: selectedValue,
208
+ normalizedFormatOptions: normalizedFormatOptions,
209
+ selectedFormatOptions: oldSelectedFormatOptions,
210
+ isDefaultSelectValue: isDefaultSelectValue,
211
+ valueField: valueField,
212
+ textField: textField
213
+ }),
214
+ selected = _this$getSelectedValu2.selected,
215
+ hoverIndex = _this$getSelectedValu2.hoverIndex,
216
+ selectedValueDetails = _this$getSelectedValu2.selectedValueDetails,
217
+ selectedId = _this$getSelectedValu2.selectedId,
218
+ isSelfValueChanged = _this$getSelectedValu2.isSelfValueChanged;
219
+
172
220
  var oldSelectedValue = this.props.selectedValue;
173
- if (isSelfValueChanged && oldSelectedValue !== selectedValue) {
174
- // onChange && onChange(selectedId, normalizedAllOptions[selectedId]);
221
+
222
+ if (isSelfValueChanged && oldSelectedValue !== selectedValue) {// onChange && onChange(selectedId, normalizedAllOptions[selectedId]);
175
223
  }
224
+
176
225
  this.selectedFormatOptions = Object.assign(oldSelectedFormatOptions, selectedValueDetails);
177
226
  this.normalizedFormatOptions = normalizedFormatOptions;
178
227
  this.optionsOrder = optionsOrder;
@@ -189,23 +238,25 @@ var SelectComponent = /*#__PURE__*/function (_Component) {
189
238
  key: "componentDidUpdate",
190
239
  value: function componentDidUpdate(prevProps) {
191
240
  var _this2 = this;
241
+
192
242
  var suggestionContainer = this.suggestionContainer,
193
- optionsOrder = this.optionsOrder;
243
+ optionsOrder = this.optionsOrder;
194
244
  var _this$state = this.state,
195
- hoverIndex = _this$state.hoverIndex,
196
- searchStr = _this$state.searchStr,
197
- selectedValueIndex = _this$state.selectedValueIndex;
245
+ hoverIndex = _this$state.hoverIndex,
246
+ searchStr = _this$state.searchStr,
247
+ selectedValueIndex = _this$state.selectedValueIndex;
198
248
  var _this$props = this.props,
199
- needLocalSearch = _this$props.needLocalSearch,
200
- onDropBoxClose = _this$props.onDropBoxClose,
201
- onDropBoxOpen = _this$props.onDropBoxOpen,
202
- needSearch = _this$props.needSearch,
203
- onSearch = _this$props.onSearch,
204
- isPopupOpen = _this$props.isPopupOpen,
205
- isSearchClearOnClose = _this$props.isSearchClearOnClose;
249
+ needLocalSearch = _this$props.needLocalSearch,
250
+ onDropBoxClose = _this$props.onDropBoxClose,
251
+ onDropBoxOpen = _this$props.onDropBoxOpen,
252
+ needSearch = _this$props.needSearch,
253
+ onSearch = _this$props.onSearch,
254
+ isPopupOpen = _this$props.isPopupOpen,
255
+ isSearchClearOnClose = _this$props.isSearchClearOnClose;
206
256
  var hoverId = (0, _Common.getIsEmptyValue)(optionsOrder[hoverIndex]) ? '' : optionsOrder[hoverIndex];
207
257
  var selSuggestion = this["suggestion_".concat(hoverId)];
208
258
  isPopupOpen && (0, _Common.scrollTo)(suggestionContainer, selSuggestion);
259
+
209
260
  if (prevProps.isPopupOpen !== isPopupOpen) {
210
261
  if (isPopupOpen) {
211
262
  onDropBoxOpen && this.handleFetchOptions(onDropBoxOpen, searchStr);
@@ -223,15 +274,16 @@ var SelectComponent = /*#__PURE__*/function (_Component) {
223
274
  hoverIndex: selectedValueIndex
224
275
  });
225
276
  }
226
- }
277
+ } //When suggestions length less than 5, getNextOptions function call
278
+
227
279
 
228
- //When suggestions length less than 5, getNextOptions function call
229
280
  var _this$props2 = this.props,
230
- isNextOptions = _this$props2.isNextOptions,
231
- getNextOptions = _this$props2.getNextOptions;
232
- // let { searchStr } = this.state;
281
+ isNextOptions = _this$props2.isNextOptions,
282
+ getNextOptions = _this$props2.getNextOptions; // let { searchStr } = this.state;
283
+
233
284
  var suggestions = isPopupOpen ? this.handleFilterSuggestions() : [];
234
285
  var suggestionsLen = suggestions.length;
286
+
235
287
  if (isPopupOpen && suggestionsLen <= 5 && isNextOptions && getNextOptions && !needLocalSearch) {
236
288
  this.handleFetchOptions(getNextOptions, searchStr);
237
289
  }
@@ -247,8 +299,7 @@ var SelectComponent = /*#__PURE__*/function (_Component) {
247
299
  closePopup: null,
248
300
  togglePopup: null
249
301
  };
250
- getPopupHandlers && getPopupHandlers(methods);
251
- // let { suggestionContainer } = this;
302
+ getPopupHandlers && getPopupHandlers(methods); // let { suggestionContainer } = this;
252
303
  // suggestionContainer &&
253
304
  // suggestionContainer.removeEventListener('scroll', this.handleScroll);
254
305
  }
@@ -256,12 +307,12 @@ var SelectComponent = /*#__PURE__*/function (_Component) {
256
307
  key: "handleFormatOptions",
257
308
  value: function handleFormatOptions(props) {
258
309
  var options = props.options,
259
- valueField = props.valueField,
260
- textField = props.textField,
261
- _props$customProps = props.customProps,
262
- customProps = _props$customProps === void 0 ? {} : _props$customProps;
310
+ valueField = props.valueField,
311
+ textField = props.textField,
312
+ _props$customProps = props.customProps,
313
+ customProps = _props$customProps === void 0 ? {} : _props$customProps;
263
314
  var _customProps$listItem = customProps.listItemProps,
264
- listItemProps = _customProps$listItem === void 0 ? {} : _customProps$listItem;
315
+ listItemProps = _customProps$listItem === void 0 ? {} : _customProps$listItem;
265
316
  return this.formatOptions({
266
317
  options: options,
267
318
  valueField: valueField,
@@ -274,12 +325,12 @@ var SelectComponent = /*#__PURE__*/function (_Component) {
274
325
  value: function handleChange(id, value, index, e) {
275
326
  e && e.preventDefault && e.preventDefault();
276
327
  var _this$props3 = this.props,
277
- onChange = _this$props3.onChange,
278
- isReadOnly = _this$props3.isReadOnly,
279
- needCloseOnSelect = _this$props3.needCloseOnSelect;
328
+ onChange = _this$props3.onChange,
329
+ isReadOnly = _this$props3.isReadOnly,
330
+ needCloseOnSelect = _this$props3.needCloseOnSelect;
280
331
  var optionsNormalize = this.state.optionsNormalize;
281
- !isReadOnly && onChange && onChange(id, optionsNormalize[id]);
282
- // this.valueInput && this.valueInput.focus({preventScroll:true});
332
+ !isReadOnly && onChange && onChange(id, optionsNormalize[id]); // this.valueInput && this.valueInput.focus({preventScroll:true});
333
+
283
334
  needCloseOnSelect && this.handlePopupClose(e);
284
335
  }
285
336
  }, {
@@ -296,71 +347,81 @@ var SelectComponent = /*#__PURE__*/function (_Component) {
296
347
  key: "handleKeyDown",
297
348
  value: function handleKeyDown(e) {
298
349
  var _this$props4 = this.props,
299
- onChange = _this$props4.onChange,
300
- isPopupOpen = _this$props4.isPopupOpen,
301
- onKeyDown = _this$props4.onKeyDown,
302
- isPopupOpenOnEnter = _this$props4.isPopupOpenOnEnter,
303
- needCloseOnSelect = _this$props4.needCloseOnSelect,
304
- isPopupReady = _this$props4.isPopupReady;
350
+ onChange = _this$props4.onChange,
351
+ isPopupOpen = _this$props4.isPopupOpen,
352
+ onKeyDown = _this$props4.onKeyDown,
353
+ isPopupOpenOnEnter = _this$props4.isPopupOpenOnEnter,
354
+ needCloseOnSelect = _this$props4.needCloseOnSelect,
355
+ isPopupReady = _this$props4.isPopupReady;
305
356
  var _this$state2 = this.state,
306
- hoverIndex = _this$state2.hoverIndex,
307
- optionsNormalize = _this$state2.optionsNormalize;
357
+ hoverIndex = _this$state2.hoverIndex,
358
+ optionsNormalize = _this$state2.optionsNormalize;
308
359
  var options = this.handleFilterSuggestions();
309
360
  var keyCode = e.keyCode;
361
+
310
362
  if (!isPopupOpen && !isPopupOpenOnEnter) {
311
363
  onKeyDown && onKeyDown(e);
312
364
  }
365
+
313
366
  if (isPopupOpen && (keyCode === 38 || keyCode === 40 || keyCode === 13) && e.preventDefault) {
314
367
  e.preventDefault(); //prevent body scroll and enter key prevent
315
368
  } else if (!isPopupOpen && keyCode === 40) {
316
369
  e.preventDefault(); //prevent body scroll
370
+
317
371
  this.togglePopup(e);
318
372
  }
373
+
319
374
  if (keyCode === 38 && isPopupOpen && options.length) {
320
- if (hoverIndex === 0) {
321
- // hoverIndex = options.length - 1;
375
+ if (hoverIndex === 0) {// hoverIndex = options.length - 1;
322
376
  } else {
323
377
  hoverIndex -= 1;
324
378
  }
379
+
325
380
  this.setState({
326
381
  hoverIndex: hoverIndex
327
382
  });
328
383
  } else if (keyCode === 40 && isPopupOpen && options.length) {
329
- if (hoverIndex === options.length - 1) {
330
- // hoverIndex = 0;
384
+ if (hoverIndex === options.length - 1) {// hoverIndex = 0;
331
385
  } else {
332
386
  if (hoverIndex === options.length - 3) {
333
387
  this.handleGetNextOptions();
334
388
  }
389
+
335
390
  hoverIndex += 1;
336
391
  }
392
+
337
393
  this.setState({
338
394
  hoverIndex: hoverIndex
339
395
  });
340
396
  } else if (keyCode === 13) {
341
397
  var option = options[hoverIndex];
398
+
342
399
  var _ref2 = option || {},
343
- id = _ref2.id;
400
+ id = _ref2.id;
401
+
344
402
  if (isPopupReady && !(0, _Common.getIsEmptyValue)(id) && onChange) {
345
403
  onChange(id, optionsNormalize[id]);
346
404
  needCloseOnSelect && this.handlePopupClose(e);
347
405
  }
406
+
348
407
  if (!isPopupReady && isPopupOpenOnEnter) {
349
408
  this.togglePopup(e);
350
409
  }
351
410
  } else if (keyCode === 27) {
352
411
  this.valueInput && this.valueInput.focus({
353
412
  preventScroll: true
354
- });
355
- //this.handlePopupClose(e);
413
+ }); //this.handlePopupClose(e);
356
414
  } else if (keyCode === 9) {
357
415
  var _option = options[hoverIndex];
416
+
358
417
  var _ref3 = _option || {},
359
- _id = _ref3.id;
418
+ _id = _ref3.id;
419
+
360
420
  if (isPopupOpen && !(0, _Common.getIsEmptyValue)(_id)) {
361
421
  onChange && onChange(_id, optionsNormalize[_id]);
362
422
  needCloseOnSelect && this.handlePopupClose(e);
363
423
  }
424
+
364
425
  if (!isPopupOpen && isPopupOpenOnEnter) {
365
426
  this.togglePopup(e);
366
427
  }
@@ -377,9 +438,10 @@ var SelectComponent = /*#__PURE__*/function (_Component) {
377
438
  key: "handleSearch",
378
439
  value: function handleSearch(value) {
379
440
  var _this3 = this;
441
+
380
442
  // let { value = '' } = e.target;
381
443
  var _this$state$searchStr = this.state.searchStr,
382
- searchStr = _this$state$searchStr === void 0 ? '' : _this$state$searchStr;
444
+ searchStr = _this$state$searchStr === void 0 ? '' : _this$state$searchStr;
383
445
  var onSearch = this.props.onSearch;
384
446
  var searchStrRegex = (0, _Common.getSearchString)(searchStr);
385
447
  var valueStrRegex = (0, _Common.getSearchString)(value);
@@ -397,7 +459,9 @@ var SelectComponent = /*#__PURE__*/function (_Component) {
397
459
  }
398
460
  }, {
399
461
  key: "handleMouseEnter",
400
- value: function handleMouseEnter(id /*val, index*/) {
462
+ value: function handleMouseEnter(id
463
+ /*val, index*/
464
+ ) {
401
465
  var hoverIndex = this.state.hoverIndex;
402
466
  var optionsOrder = this.optionsOrder;
403
467
  var newHoverIndex = optionsOrder.indexOf(id);
@@ -409,31 +473,31 @@ var SelectComponent = /*#__PURE__*/function (_Component) {
409
473
  key: "handleFilterSuggestions",
410
474
  value: function handleFilterSuggestions() {
411
475
  var _this$props5 = this.props,
412
- needLocalSearch = _this$props5.needLocalSearch,
413
- _this$props5$excludeO = _this$props5.excludeOptions,
414
- excludeOptions = _this$props5$excludeO === void 0 ? dummyArray : _this$props5$excludeO;
476
+ needLocalSearch = _this$props5.needLocalSearch,
477
+ _this$props5$excludeO = _this$props5.excludeOptions,
478
+ excludeOptions = _this$props5$excludeO === void 0 ? dummyArray : _this$props5$excludeO;
415
479
  var _this$state3 = this.state,
416
- _this$state3$options = _this$state3.options,
417
- options = _this$state3$options === void 0 ? dummyArray : _this$state3$options,
418
- _this$state3$searchSt = _this$state3.searchStr,
419
- searchStr = _this$state3$searchSt === void 0 ? '' : _this$state3$searchSt;
420
-
421
- // if (
480
+ _this$state3$options = _this$state3.options,
481
+ options = _this$state3$options === void 0 ? dummyArray : _this$state3$options,
482
+ _this$state3$searchSt = _this$state3.searchStr,
483
+ searchStr = _this$state3$searchSt === void 0 ? '' : _this$state3$searchSt; // if (
422
484
  // (needSearch && searchStr && searchStr.trim().length) ||
423
485
  // (excludeOptions && excludeOptions.length)
424
486
  // ) {
487
+
425
488
  searchStr = (0, _Common.getSearchString)(searchStr);
489
+
426
490
  var _this$getFilterSugges = this.getFilterSuggestions({
427
- options: options,
428
- selectedOptions: excludeOptions,
429
- searchStr: searchStr,
430
- needSearch: needLocalSearch
431
- }),
432
- suggestions = _this$getFilterSugges.suggestions,
433
- suggestionIds = _this$getFilterSugges.suggestionIds;
491
+ options: options,
492
+ selectedOptions: excludeOptions,
493
+ searchStr: searchStr,
494
+ needSearch: needLocalSearch
495
+ }),
496
+ suggestions = _this$getFilterSugges.suggestions,
497
+ suggestionIds = _this$getFilterSugges.suggestionIds;
498
+
434
499
  this.optionsOrder = suggestionIds;
435
- return suggestions;
436
- // }
500
+ return suggestions; // }
437
501
  // return options;
438
502
  }
439
503
  }, {
@@ -447,15 +511,18 @@ var SelectComponent = /*#__PURE__*/function (_Component) {
447
511
  key: "handleFetchOptions",
448
512
  value: function handleFetchOptions(APICall) {
449
513
  var _this4 = this;
514
+
450
515
  var searchStr = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : '';
451
516
  // let funcArgs = args.slice(1, args.length);
452
517
  var _this$state$isFetchin = this.state.isFetchingOptions,
453
- isFetchingOptions = _this$state$isFetchin === void 0 ? false : _this$state$isFetchin;
518
+ isFetchingOptions = _this$state$isFetchin === void 0 ? false : _this$state$isFetchin;
454
519
  var _isMounted = this._isMounted;
520
+
455
521
  if (!isFetchingOptions && APICall) {
456
522
  this.setState({
457
523
  isFetchingOptions: true
458
524
  });
525
+
459
526
  try {
460
527
  return APICall(searchStr).then(function () {
461
528
  _isMounted && _this4.setState({
@@ -477,8 +544,8 @@ var SelectComponent = /*#__PURE__*/function (_Component) {
477
544
  key: "handleGetNextOptions",
478
545
  value: function handleGetNextOptions() {
479
546
  var _this$props6 = this.props,
480
- isNextOptions = _this$props6.isNextOptions,
481
- getNextOptions = _this$props6.getNextOptions;
547
+ isNextOptions = _this$props6.isNextOptions,
548
+ getNextOptions = _this$props6.getNextOptions;
482
549
  var searchStr = this.state.searchStr;
483
550
  isNextOptions && getNextOptions && this.handleFetchOptions(getNextOptions, searchStr);
484
551
  }
@@ -486,11 +553,11 @@ var SelectComponent = /*#__PURE__*/function (_Component) {
486
553
  key: "togglePopup",
487
554
  value: function togglePopup(e) {
488
555
  var _this$props7 = this.props,
489
- togglePopup = _this$props7.togglePopup,
490
- isReadOnly = _this$props7.isReadOnly,
491
- defaultDropBoxPosition = _this$props7.defaultDropBoxPosition,
492
- onFocus = _this$props7.onFocus,
493
- isPopupOpen = _this$props7.isPopupOpen;
556
+ togglePopup = _this$props7.togglePopup,
557
+ isReadOnly = _this$props7.isReadOnly,
558
+ defaultDropBoxPosition = _this$props7.defaultDropBoxPosition,
559
+ onFocus = _this$props7.onFocus,
560
+ isPopupOpen = _this$props7.isPopupOpen;
494
561
  !isReadOnly && togglePopup(e, defaultDropBoxPosition ? "".concat(defaultDropBoxPosition) : null);
495
562
  !isPopupOpen && typeof onFocus === 'function' && onFocus(e);
496
563
  }
@@ -535,6 +602,7 @@ var SelectComponent = /*#__PURE__*/function (_Component) {
535
602
  key: "handleClearSearch",
536
603
  value: function handleClearSearch() {
537
604
  var _this5 = this;
605
+
538
606
  this.handleSearch('');
539
607
  setTimeout(function () {
540
608
  _this5.searchInput && _this5.searchInput.focus({
@@ -547,8 +615,9 @@ var SelectComponent = /*#__PURE__*/function (_Component) {
547
615
  value: function handleValueInputChange(e) {
548
616
  var typeString = (0, _Common.getKeyValue)(e);
549
617
  var _this$props8 = this.props,
550
- isPopupOpen = _this$props8.isPopupOpen,
551
- autoSelectOnType = _this$props8.autoSelectOnType;
618
+ isPopupOpen = _this$props8.isPopupOpen,
619
+ autoSelectOnType = _this$props8.autoSelectOnType;
620
+
552
621
  if (!isPopupOpen && autoSelectOnType) {
553
622
  this.valueInputTypeString += (typeString || '').trim();
554
623
  this.handleChangeOnType();
@@ -558,43 +627,53 @@ var SelectComponent = /*#__PURE__*/function (_Component) {
558
627
  key: "handleChangeOnType",
559
628
  value: function handleChangeOnType() {
560
629
  var _this6 = this;
630
+
561
631
  var _this$props$excludeOp = this.props.excludeOptions,
562
- excludeOptions = _this$props$excludeOp === void 0 ? dummyArray : _this$props$excludeOp;
632
+ excludeOptions = _this$props$excludeOp === void 0 ? dummyArray : _this$props$excludeOp;
563
633
  var _this$state$options = this.state.options,
564
- options = _this$state$options === void 0 ? dummyArray : _this$state$options;
634
+ options = _this$state$options === void 0 ? dummyArray : _this$state$options;
565
635
  var optionsOrder = this.optionsOrder;
566
636
  var typeString = this.valueInputTypeString;
567
637
  this.valueInputTypeString = '';
638
+
568
639
  var changeValue = function changeValue() {
569
640
  var optionDetails = _this6.autoSelectSuggestions[_this6.autoSelectIndex];
641
+
570
642
  var _ref4 = optionDetails || {},
571
- id = _ref4.id;
643
+ id = _ref4.id;
644
+
572
645
  if (!(0, _Common.getIsEmptyValue)(id)) {
573
646
  _this6.handleChange(id);
647
+
574
648
  var hoverIndex = optionsOrder.indexOf(id);
649
+
575
650
  _this6.setState({
576
651
  hoverIndex: hoverIndex
577
652
  });
578
653
  }
579
654
  };
655
+
580
656
  if (typeString && typeString === this.valueInputSearchString) {
581
657
  if (this.autoSelectIndex < this.autoSelectSuggestions.length - 1) {
582
658
  this.autoSelectIndex += 1;
583
659
  } else {
584
660
  this.autoSelectIndex = 0;
585
661
  }
662
+
586
663
  changeValue();
587
664
  } else if (typeString) {
588
665
  this.valueInputSearchString = typeString;
666
+
589
667
  var _this$getFilterSugges2 = this.getFilterSuggestions({
590
- options: options,
591
- selectedOptions: excludeOptions,
592
- searchStr: typeString,
593
- needSearch: true,
594
- isStartsWithSearch: true
595
- }),
596
- _this$getFilterSugges3 = _this$getFilterSugges2.suggestions,
597
- suggestions = _this$getFilterSugges3 === void 0 ? [] : _this$getFilterSugges3;
668
+ options: options,
669
+ selectedOptions: excludeOptions,
670
+ searchStr: typeString,
671
+ needSearch: true,
672
+ isStartsWithSearch: true
673
+ }),
674
+ _this$getFilterSugges3 = _this$getFilterSugges2.suggestions,
675
+ suggestions = _this$getFilterSugges3 === void 0 ? [] : _this$getFilterSugges3;
676
+
598
677
  this.autoSelectIndex = 0;
599
678
  this.autoSelectSuggestions = suggestions;
600
679
  changeValue();
@@ -605,8 +684,9 @@ var SelectComponent = /*#__PURE__*/function (_Component) {
605
684
  value: function handleAddNewOption() {
606
685
  var searchStr = this.state.searchStr;
607
686
  var _this$props9 = this.props,
608
- onAddNewOption = _this$props9.onAddNewOption,
609
- getCustomEmptyState = _this$props9.getCustomEmptyState;
687
+ onAddNewOption = _this$props9.onAddNewOption,
688
+ getCustomEmptyState = _this$props9.getCustomEmptyState;
689
+
610
690
  if (getCustomEmptyState) {
611
691
  this.setState({
612
692
  searchStr: ''
@@ -618,11 +698,11 @@ var SelectComponent = /*#__PURE__*/function (_Component) {
618
698
  key: "handleExposePopupHandlers",
619
699
  value: function handleExposePopupHandlers() {
620
700
  var _this$props10 = this.props,
621
- removeClose = _this$props10.removeClose,
622
- openPopupOnly = _this$props10.openPopupOnly,
623
- closePopupOnly = _this$props10.closePopupOnly,
624
- togglePopup = _this$props10.togglePopup,
625
- getPopupHandlers = _this$props10.getPopupHandlers;
701
+ removeClose = _this$props10.removeClose,
702
+ openPopupOnly = _this$props10.openPopupOnly,
703
+ closePopupOnly = _this$props10.closePopupOnly,
704
+ togglePopup = _this$props10.togglePopup,
705
+ getPopupHandlers = _this$props10.getPopupHandlers;
626
706
  var methods = {
627
707
  removeClose: removeClose,
628
708
  openPopup: openPopupOnly,
@@ -645,81 +725,82 @@ var SelectComponent = /*#__PURE__*/function (_Component) {
645
725
  key: "render",
646
726
  value: function render() {
647
727
  var _this7 = this;
728
+
648
729
  var _this$props11 = this.props,
649
- needSearch = _this$props11.needSearch,
650
- dropBoxSize = _this$props11.dropBoxSize,
651
- emptyMessage = _this$props11.emptyMessage,
652
- searchEmptyMessage = _this$props11.searchEmptyMessage,
653
- needBorder = _this$props11.needBorder,
654
- needSelectDownIcon = _this$props11.needSelectDownIcon,
655
- position = _this$props11.position,
656
- defaultDropBoxPosition = _this$props11.defaultDropBoxPosition,
657
- getTargetRef = _this$props11.getTargetRef,
658
- getContainerRef = _this$props11.getContainerRef,
659
- removeClose = _this$props11.removeClose,
660
- isPopupOpen = _this$props11.isPopupOpen,
661
- isPopupReady = _this$props11.isPopupReady,
662
- animationStyle = _this$props11.animationStyle,
663
- textBoxSize = _this$props11.textBoxSize,
664
- textBoxVariant = _this$props11.textBoxVariant,
665
- searchBoxSize = _this$props11.searchBoxSize,
666
- searchBoxPlaceHolder = _this$props11.searchBoxPlaceHolder,
667
- maxLength = _this$props11.maxLength,
668
- isDisabled = _this$props11.isDisabled,
669
- title = _this$props11.title,
670
- size = _this$props11.size,
671
- placeHolder = _this$props11.placeHolder,
672
- className = _this$props11.className,
673
- isReadOnly = _this$props11.isReadOnly,
674
- dataId = _this$props11.dataId,
675
- needResponsive = _this$props11.needResponsive,
676
- borderColor = _this$props11.borderColor,
677
- needTick = _this$props11.needTick,
678
- listItemSize = _this$props11.listItemSize,
679
- boxSize = _this$props11.boxSize,
680
- needListBorder = _this$props11.needListBorder,
681
- getFooter = _this$props11.getFooter,
682
- getChildren = _this$props11.getChildren,
683
- getCustomEmptyState = _this$props11.getCustomEmptyState,
684
- isParentBased = _this$props11.isParentBased,
685
- i18nKeys = _this$props11.i18nKeys,
686
- htmlId = _this$props11.htmlId,
687
- children = _this$props11.children,
688
- iconOnHover = _this$props11.iconOnHover,
689
- customProps = _this$props11.customProps,
690
- autoComplete = _this$props11.autoComplete,
691
- ariaLabelledby = _this$props11.ariaLabelledby,
692
- isLoading = _this$props11.isLoading,
693
- dataSelectorId = _this$props11.dataSelectorId,
694
- isAbsolutePositioningNeeded = _this$props11.isAbsolutePositioningNeeded,
695
- positionsOffset = _this$props11.positionsOffset,
696
- targetOffset = _this$props11.targetOffset,
697
- isRestrictScroll = _this$props11.isRestrictScroll,
698
- dropBoxPortalId = _this$props11.dropBoxPortalId;
730
+ needSearch = _this$props11.needSearch,
731
+ dropBoxSize = _this$props11.dropBoxSize,
732
+ emptyMessage = _this$props11.emptyMessage,
733
+ searchEmptyMessage = _this$props11.searchEmptyMessage,
734
+ needBorder = _this$props11.needBorder,
735
+ needSelectDownIcon = _this$props11.needSelectDownIcon,
736
+ position = _this$props11.position,
737
+ defaultDropBoxPosition = _this$props11.defaultDropBoxPosition,
738
+ getTargetRef = _this$props11.getTargetRef,
739
+ getContainerRef = _this$props11.getContainerRef,
740
+ removeClose = _this$props11.removeClose,
741
+ isPopupOpen = _this$props11.isPopupOpen,
742
+ isPopupReady = _this$props11.isPopupReady,
743
+ animationStyle = _this$props11.animationStyle,
744
+ textBoxSize = _this$props11.textBoxSize,
745
+ textBoxVariant = _this$props11.textBoxVariant,
746
+ searchBoxSize = _this$props11.searchBoxSize,
747
+ searchBoxPlaceHolder = _this$props11.searchBoxPlaceHolder,
748
+ maxLength = _this$props11.maxLength,
749
+ isDisabled = _this$props11.isDisabled,
750
+ title = _this$props11.title,
751
+ size = _this$props11.size,
752
+ placeHolder = _this$props11.placeHolder,
753
+ className = _this$props11.className,
754
+ isReadOnly = _this$props11.isReadOnly,
755
+ dataId = _this$props11.dataId,
756
+ needResponsive = _this$props11.needResponsive,
757
+ borderColor = _this$props11.borderColor,
758
+ needTick = _this$props11.needTick,
759
+ listItemSize = _this$props11.listItemSize,
760
+ boxSize = _this$props11.boxSize,
761
+ needListBorder = _this$props11.needListBorder,
762
+ getFooter = _this$props11.getFooter,
763
+ getChildren = _this$props11.getChildren,
764
+ getCustomEmptyState = _this$props11.getCustomEmptyState,
765
+ isParentBased = _this$props11.isParentBased,
766
+ i18nKeys = _this$props11.i18nKeys,
767
+ htmlId = _this$props11.htmlId,
768
+ children = _this$props11.children,
769
+ iconOnHover = _this$props11.iconOnHover,
770
+ customProps = _this$props11.customProps,
771
+ autoComplete = _this$props11.autoComplete,
772
+ ariaLabelledby = _this$props11.ariaLabelledby,
773
+ isLoading = _this$props11.isLoading,
774
+ dataSelectorId = _this$props11.dataSelectorId,
775
+ isAbsolutePositioningNeeded = _this$props11.isAbsolutePositioningNeeded,
776
+ positionsOffset = _this$props11.positionsOffset,
777
+ targetOffset = _this$props11.targetOffset,
778
+ isRestrictScroll = _this$props11.isRestrictScroll,
779
+ dropBoxPortalId = _this$props11.dropBoxPortalId;
699
780
  var _i18nKeys = i18nKeys,
700
- TextBoxIcon_i18n = _i18nKeys.TextBoxIcon_i18n,
701
- _i18nKeys$TextBox_all = _i18nKeys.TextBox_ally_label,
702
- TextBox_ally_label = _i18nKeys$TextBox_all === void 0 ? 'click to select options' : _i18nKeys$TextBox_all;
781
+ TextBoxIcon_i18n = _i18nKeys.TextBoxIcon_i18n,
782
+ _i18nKeys$TextBox_all = _i18nKeys.TextBox_ally_label,
783
+ TextBox_ally_label = _i18nKeys$TextBox_all === void 0 ? 'click to select options' : _i18nKeys$TextBox_all;
703
784
  i18nKeys = Object.assign({}, i18nKeys, {
704
785
  emptyText: i18nKeys.emptyText || emptyMessage,
705
786
  searchEmptyText: i18nKeys.searchEmptyText || searchEmptyMessage
706
787
  });
707
788
  var _this$state4 = this.state,
708
- hoverIndex = _this$state4.hoverIndex,
709
- selected = _this$state4.selected,
710
- searchStr = _this$state4.searchStr,
711
- isFetchingOptions = _this$state4.isFetchingOptions,
712
- selectedId = _this$state4.selectedId,
713
- options = _this$state4.options;
789
+ hoverIndex = _this$state4.hoverIndex,
790
+ selected = _this$state4.selected,
791
+ searchStr = _this$state4.searchStr,
792
+ isFetchingOptions = _this$state4.isFetchingOptions,
793
+ selectedId = _this$state4.selectedId,
794
+ options = _this$state4.options;
714
795
  var suggestions = this.handleFilterSuggestions();
715
796
  var setAriaId = this.getNextAriaId();
716
797
  var ariaErrorId = this.getNextAriaId();
717
798
  var _customProps$TextBoxP = customProps.TextBoxProps,
718
- TextBoxProps = _customProps$TextBoxP === void 0 ? {} : _customProps$TextBoxP,
719
- _customProps$Dropdown = customProps.DropdownSearchTextBoxProps,
720
- DropdownSearchTextBoxProps = _customProps$Dropdown === void 0 ? {} : _customProps$Dropdown,
721
- _customProps$Suggesti = customProps.SuggestionsProps,
722
- SuggestionsProps = _customProps$Suggesti === void 0 ? {} : _customProps$Suggesti;
799
+ TextBoxProps = _customProps$TextBoxP === void 0 ? {} : _customProps$TextBoxP,
800
+ _customProps$Dropdown = customProps.DropdownSearchTextBoxProps,
801
+ DropdownSearchTextBoxProps = _customProps$Dropdown === void 0 ? {} : _customProps$Dropdown,
802
+ _customProps$Suggesti = customProps.SuggestionsProps,
803
+ SuggestionsProps = _customProps$Suggesti === void 0 ? {} : _customProps$Suggesti;
723
804
  return /*#__PURE__*/_react["default"].createElement("div", {
724
805
  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 : ''),
725
806
  "data-title": isDisabled ? title : null,
@@ -915,8 +996,10 @@ var SelectComponent = /*#__PURE__*/function (_Component) {
915
996
  }) : null);
916
997
  }
917
998
  }]);
999
+
918
1000
  return SelectComponent;
919
1001
  }(_react.Component);
1002
+
920
1003
  exports.SelectComponent = SelectComponent;
921
1004
  SelectComponent.propTypes = _propTypes.Select_propTypes;
922
1005
  SelectComponent.defaultProps = _defaultProps.Select_defaultProps;
@@ -935,4 +1018,5 @@ var _default = Select; // if (__DOCS__) {
935
1018
  // // eslint-disable-next-line react/forbid-foreign-prop-types
936
1019
  // Select.propTypes = SelectComponent.propTypes;
937
1020
  // }
1021
+
938
1022
  exports["default"] = _default;