@zohodesk/components 1.0.0-temp-154 → 1.0.0-temp-156

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 (432) 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 +3 -3
  5. package/es/AppContainer/AppContainer.js +13 -5
  6. package/es/AppContainer/AppContainer.module.css +2 -2
  7. package/es/Avatar/Avatar.js +23 -11
  8. package/es/Avatar/Avatar.module.css +10 -10
  9. package/es/AvatarTeam/AvatarTeam.js +3 -3
  10. package/es/AvatarTeam/AvatarTeam.module.css +22 -21
  11. package/es/Button/Button.js +4 -3
  12. package/es/Button/css/Button.module.css +51 -50
  13. package/es/Buttongroup/Buttongroup.js +3 -3
  14. package/es/Buttongroup/Buttongroup.module.css +13 -14
  15. package/es/Card/Card.js +21 -10
  16. package/es/CheckBox/CheckBox.js +5 -3
  17. package/es/CheckBox/CheckBox.module.css +16 -16
  18. package/es/DateTime/CalendarView.js +32 -20
  19. package/es/DateTime/DateTime.js +67 -6
  20. package/es/DateTime/DateTime.module.css +39 -39
  21. package/es/DateTime/DateTimePopupFooter.js +4 -2
  22. package/es/DateTime/DateTimePopupHeader.js +8 -2
  23. package/es/DateTime/DateWidget.js +98 -35
  24. package/es/DateTime/DateWidget.module.css +5 -5
  25. package/es/DateTime/DaysRow.js +4 -2
  26. package/es/DateTime/Time.js +10 -2
  27. package/es/DateTime/YearView.js +28 -4
  28. package/es/DateTime/YearView.module.css +15 -15
  29. package/es/DateTime/__tests__/CalendarView.spec.js +1 -0
  30. package/es/DateTime/__tests__/DateTime.spec.js +1 -0
  31. package/es/DateTime/__tests__/DateWidget.spec.js +2 -3
  32. package/es/DateTime/common.js +3 -0
  33. package/es/DateTime/constants.js +1 -0
  34. package/es/DateTime/dateFormatUtils/dateFormat.js +63 -30
  35. package/es/DateTime/dateFormatUtils/dateFormats.js +0 -1
  36. package/es/DateTime/dateFormatUtils/dayChange.js +13 -4
  37. package/es/DateTime/dateFormatUtils/index.js +32 -2
  38. package/es/DateTime/dateFormatUtils/monthChange.js +8 -0
  39. package/es/DateTime/dateFormatUtils/timeChange.js +22 -6
  40. package/es/DateTime/dateFormatUtils/yearChange.js +11 -2
  41. package/es/DateTime/objectUtils.js +14 -20
  42. package/es/DateTime/typeChecker.js +3 -0
  43. package/es/DateTime/validator.js +58 -6
  44. package/es/DropBox/DropBox.js +6 -2
  45. package/es/DropBox/DropBoxElement/DropBoxElement.js +7 -0
  46. package/es/DropBox/DropBoxElement/css/DropBoxElement.module.css +74 -73
  47. package/es/DropBox/DropBoxElement/css/cssJSLogic.js +5 -3
  48. package/es/DropBox/DropBoxElement/useDropboxPosCalc.js +3 -0
  49. package/es/DropBox/css/DropBox.module.css +6 -6
  50. package/es/DropBox/props/defaultProps.js +1 -2
  51. package/es/DropBox/props/propTypes.js +1 -2
  52. package/es/DropDown/DropDown.js +8 -4
  53. package/es/DropDown/DropDown.module.css +2 -2
  54. package/es/DropDown/DropDownHeading.js +4 -5
  55. package/es/DropDown/DropDownHeading.module.css +3 -3
  56. package/es/DropDown/DropDownItem.js +6 -0
  57. package/es/DropDown/DropDownItem.module.css +9 -9
  58. package/es/DropDown/DropDownSearch.js +4 -0
  59. package/es/DropDown/DropDownSeparator.js +1 -0
  60. package/es/DropDown/DropDownSeparator.module.css +2 -2
  61. package/es/DropDown/__tests__/DropDown.spec.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 +1 -1
  66. package/es/Layout/Box.js +13 -0
  67. package/es/Layout/Container.js +12 -1
  68. package/es/Layout/Layout.module.css +15 -15
  69. package/es/Layout/index.js +1 -2
  70. package/es/ListItem/ListContainer.js +8 -3
  71. package/es/ListItem/ListItem.js +9 -3
  72. package/es/ListItem/ListItem.module.css +26 -26
  73. package/es/ListItem/ListItemWithAvatar.js +9 -3
  74. package/es/ListItem/ListItemWithCheckBox.js +7 -2
  75. package/es/ListItem/ListItemWithIcon.js +8 -3
  76. package/es/ListItem/ListItemWithRadio.js +7 -3
  77. package/es/Modal/Modal.js +28 -11
  78. package/es/MultiSelect/AdvancedGroupMultiSelect.js +89 -13
  79. package/es/MultiSelect/AdvancedMultiSelect.js +32 -9
  80. package/es/MultiSelect/EmptyState.js +2 -0
  81. package/es/MultiSelect/MultiSelect.js +99 -32
  82. package/es/MultiSelect/MultiSelect.module.css +32 -31
  83. package/es/MultiSelect/MultiSelectHeader.js +3 -0
  84. package/es/MultiSelect/MultiSelectWithAvatar.js +12 -6
  85. package/es/MultiSelect/SelectedOptions.js +6 -3
  86. package/es/MultiSelect/SelectedOptions.module.css +5 -5
  87. package/es/MultiSelect/Suggestions.js +7 -3
  88. package/es/MultiSelect/__tests__/MultiSelect.spec.js +4 -6
  89. package/es/MultiSelect/props/propTypes.js +2 -0
  90. package/es/PopOver/PopOver.js +18 -2
  91. package/es/PopOver/__tests__/PopOver.spec.js +2 -1
  92. package/es/Popup/Popup.js +77 -24
  93. package/es/Popup/__tests__/Popup.spec.js +17 -5
  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 +4 -2
  100. package/es/Radio/Radio.module.css +3 -3
  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/Ribbon/Ribbon.js +3 -2
  114. package/es/Ribbon/Ribbon.module.css +42 -42
  115. package/es/RippleEffect/RippleEffect.js +1 -3
  116. package/es/Select/GroupSelect.js +58 -14
  117. package/es/Select/Select.js +79 -33
  118. package/es/Select/Select.module.css +23 -23
  119. package/es/Select/SelectWithAvatar.js +17 -4
  120. package/es/Select/SelectWithIcon.js +46 -5
  121. package/es/Select/__tests__/Select.spec.js +6 -8
  122. package/es/Select/props/propTypes.js +1 -0
  123. package/es/Stencils/Stencils.js +3 -3
  124. package/es/Stencils/Stencils.module.css +2 -2
  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 +2 -0
  131. package/es/Tab/TabWrapper.js +5 -2
  132. package/es/Tab/Tabs.js +54 -7
  133. package/es/Tab/Tabs.module.css +23 -23
  134. package/es/Tab/__tests__/Tab.spec.js +1 -3
  135. package/es/Tab/__tests__/TabWrapper.spec.js +1 -0
  136. package/es/Tag/Tag.js +6 -3
  137. package/es/Tag/Tag.module.css +10 -10
  138. package/es/TextBox/TextBox.js +15 -3
  139. package/es/TextBox/TextBox.module.css +6 -5
  140. package/es/TextBox/__tests__/TextBox.spec.js +1 -4
  141. package/es/TextBoxIcon/TextBoxIcon.js +9 -2
  142. package/es/TextBoxIcon/TextBoxIcon.module.css +7 -6
  143. package/es/TextBoxIcon/__tests__/TextBoxIcon.spec.js +2 -7
  144. package/es/Textarea/Textarea.js +12 -3
  145. package/es/Textarea/Textarea.module.css +6 -6
  146. package/es/Textarea/__tests__/Textarea.spec.js +2 -2
  147. package/es/Tooltip/Tooltip.js +58 -14
  148. package/es/Tooltip/Tooltip.module.css +12 -5
  149. package/es/Tooltip/__tests__/Tooltip.spec.js +5 -0
  150. package/es/VelocityAnimation/VelocityAnimation/VelocityAnimation.js +3 -2
  151. package/es/VelocityAnimation/VelocityAnimationGroup/VelocityAnimationGroup.js +7 -5
  152. package/es/common/animation.module.css +8 -8
  153. package/es/common/basicReset.module.css +3 -3
  154. package/es/common/boxShadow.module.css +1 -3
  155. package/es/common/common.module.css +24 -24
  156. package/es/common/customscroll.module.css +4 -2
  157. package/es/common/reset.module.css +1 -0
  158. package/es/deprecated/AdvancedMultiSelect.module.css +18 -18
  159. package/es/deprecated/PortalLayer/PortalLayer.js +25 -20
  160. package/es/semantic/Button/Button.js +3 -2
  161. package/es/semantic/Button/semanticButton.module.css +1 -1
  162. package/es/utils/Common.js +54 -9
  163. package/es/utils/ContextOptimizer.js +4 -5
  164. package/es/utils/__tests__/debounce.spec.js +2 -2
  165. package/es/utils/constructFullName.js +2 -0
  166. package/es/utils/css/compileClassNames.js +5 -0
  167. package/es/utils/css/mergeStyle.js +7 -6
  168. package/es/utils/css/utils.js +1 -0
  169. package/es/utils/datetime/common.js +16 -5
  170. package/es/utils/debounce.js +5 -1
  171. package/es/utils/dropDownUtils.js +68 -11
  172. package/es/utils/getInitial.js +4 -0
  173. package/es/utils/shallowEqual.js +6 -0
  174. package/lib/Accordion/Accordion.js +42 -18
  175. package/lib/Accordion/AccordionItem.js +40 -18
  176. package/lib/Accordion/__tests__/Accordion.spec.js +3 -0
  177. package/lib/Accordion/index.js +3 -0
  178. package/lib/Accordion/props/propTypes.js +3 -0
  179. package/lib/Animation/Animation.js +38 -18
  180. package/lib/Animation/__tests__/Animation.spec.js +11 -7
  181. package/lib/Animation/props/propTypes.js +3 -0
  182. package/lib/AppContainer/AppContainer.js +56 -21
  183. package/lib/AppContainer/AppContainer.module.css +2 -2
  184. package/lib/AppContainer/props/propTypes.js +3 -0
  185. package/lib/Avatar/Avatar.js +78 -38
  186. package/lib/Avatar/Avatar.module.css +10 -10
  187. package/lib/Avatar/__tests__/Avatar.spec.js +44 -0
  188. package/lib/Avatar/props/propTypes.js +3 -0
  189. package/lib/AvatarTeam/AvatarTeam.js +52 -30
  190. package/lib/AvatarTeam/AvatarTeam.module.css +22 -21
  191. package/lib/AvatarTeam/__tests__/AvatarTeam.spec.js +13 -0
  192. package/lib/AvatarTeam/props/propTypes.js +3 -0
  193. package/lib/Button/Button.js +31 -20
  194. package/lib/Button/css/Button.module.css +51 -50
  195. package/lib/Button/css/cssJSLogic.js +18 -17
  196. package/lib/Button/index.js +3 -0
  197. package/lib/Button/props/defaultProps.js +2 -0
  198. package/lib/Button/props/propTypes.js +3 -0
  199. package/lib/Buttongroup/Buttongroup.js +32 -12
  200. package/lib/Buttongroup/Buttongroup.module.css +13 -14
  201. package/lib/Buttongroup/__test__/Buttongroup.spec.js +10 -0
  202. package/lib/Buttongroup/props/propTypes.js +3 -0
  203. package/lib/Card/Card.js +102 -46
  204. package/lib/Card/__tests__/Card.spec.js +10 -1
  205. package/lib/Card/index.js +4 -0
  206. package/lib/Card/props/propTypes.js +3 -0
  207. package/lib/CheckBox/CheckBox.js +71 -47
  208. package/lib/CheckBox/CheckBox.module.css +16 -16
  209. package/lib/CheckBox/__tests__/CheckBox.spec.js +3 -0
  210. package/lib/CheckBox/props/propTypes.js +3 -0
  211. package/lib/DateTime/CalendarView.js +82 -42
  212. package/lib/DateTime/DateTime.js +239 -155
  213. package/lib/DateTime/DateTime.module.css +39 -39
  214. package/lib/DateTime/DateTimePopupFooter.js +31 -8
  215. package/lib/DateTime/DateTimePopupHeader.js +48 -17
  216. package/lib/DateTime/DateWidget.js +352 -250
  217. package/lib/DateTime/DateWidget.module.css +5 -5
  218. package/lib/DateTime/DaysRow.js +27 -5
  219. package/lib/DateTime/Time.js +73 -32
  220. package/lib/DateTime/YearView.js +77 -28
  221. package/lib/DateTime/YearView.module.css +15 -15
  222. package/lib/DateTime/__tests__/CalendarView.spec.js +13 -5
  223. package/lib/DateTime/__tests__/DateTime.spec.js +51 -37
  224. package/lib/DateTime/__tests__/DateWidget.spec.js +10 -8
  225. package/lib/DateTime/common.js +6 -0
  226. package/lib/DateTime/constants.js +1 -0
  227. package/lib/DateTime/dateFormatUtils/dateFormat.js +184 -122
  228. package/lib/DateTime/dateFormatUtils/dateFormats.js +0 -1
  229. package/lib/DateTime/dateFormatUtils/dayChange.js +14 -7
  230. package/lib/DateTime/dateFormatUtils/index.js +74 -16
  231. package/lib/DateTime/dateFormatUtils/monthChange.js +19 -9
  232. package/lib/DateTime/dateFormatUtils/timeChange.js +54 -22
  233. package/lib/DateTime/dateFormatUtils/yearChange.js +22 -11
  234. package/lib/DateTime/index.js +2 -0
  235. package/lib/DateTime/objectUtils.js +24 -20
  236. package/lib/DateTime/props/propTypes.js +11 -1
  237. package/lib/DateTime/typeChecker.js +4 -0
  238. package/lib/DateTime/validator.js +73 -10
  239. package/lib/DropBox/DropBox.js +34 -10
  240. package/lib/DropBox/DropBoxElement/DropBoxElement.js +58 -37
  241. package/lib/DropBox/DropBoxElement/css/DropBoxElement.module.css +74 -73
  242. package/lib/DropBox/DropBoxElement/css/cssJSLogic.js +41 -33
  243. package/lib/DropBox/DropBoxElement/props/propTypes.js +3 -0
  244. package/lib/DropBox/DropBoxElement/useDropboxPosCalc.js +14 -9
  245. package/lib/DropBox/__tests__/DropBox.spec.js +6 -2
  246. package/lib/DropBox/css/DropBox.module.css +6 -6
  247. package/lib/DropBox/css/cssJSLogic.js +3 -1
  248. package/lib/DropBox/props/defaultProps.js +8 -4
  249. package/lib/DropBox/props/propTypes.js +10 -4
  250. package/lib/DropDown/DropDown.js +52 -8
  251. package/lib/DropDown/DropDown.module.css +2 -2
  252. package/lib/DropDown/DropDownHeading.js +39 -20
  253. package/lib/DropDown/DropDownHeading.module.css +3 -3
  254. package/lib/DropDown/DropDownItem.js +42 -20
  255. package/lib/DropDown/DropDownItem.module.css +9 -9
  256. package/lib/DropDown/DropDownSearch.js +40 -17
  257. package/lib/DropDown/DropDownSeparator.js +24 -4
  258. package/lib/DropDown/DropDownSeparator.module.css +2 -2
  259. package/lib/DropDown/__tests__/DropDown.spec.js +15 -9
  260. package/lib/DropDown/__tests__/DropDownItem.spec.js +9 -4
  261. package/lib/DropDown/__tests__/DropDownSearch.spec.js +3 -0
  262. package/lib/DropDown/index.js +9 -0
  263. package/lib/DropDown/props/propTypes.js +6 -4
  264. package/lib/Heading/Heading.js +37 -15
  265. package/lib/Heading/Heading.module.css +2 -2
  266. package/lib/Heading/props/propTypes.js +3 -0
  267. package/lib/Label/Label.js +39 -19
  268. package/lib/Label/Label.module.css +1 -1
  269. package/lib/Label/__tests__/Label.spec.js +14 -1
  270. package/lib/Label/props/propTypes.js +3 -0
  271. package/lib/Layout/Box.js +31 -11
  272. package/lib/Layout/Container.js +29 -10
  273. package/lib/Layout/Layout.module.css +15 -15
  274. package/lib/Layout/__tests__/Box.spec.js +65 -49
  275. package/lib/Layout/__tests__/Container.spec.js +67 -50
  276. package/lib/Layout/index.js +3 -0
  277. package/lib/Layout/props/propTypes.js +3 -0
  278. package/lib/Layout/utils.js +10 -0
  279. package/lib/ListItem/ListContainer.js +48 -27
  280. package/lib/ListItem/ListItem.js +69 -45
  281. package/lib/ListItem/ListItem.module.css +26 -26
  282. package/lib/ListItem/ListItemWithAvatar.js +75 -48
  283. package/lib/ListItem/ListItemWithCheckBox.js +64 -39
  284. package/lib/ListItem/ListItemWithIcon.js +68 -44
  285. package/lib/ListItem/ListItemWithRadio.js +65 -41
  286. package/lib/ListItem/index.js +7 -0
  287. package/lib/ListItem/props/propTypes.js +6 -4
  288. package/lib/Modal/Modal.js +45 -10
  289. package/lib/Modal/props/propTypes.js +3 -0
  290. package/lib/MultiSelect/AdvancedGroupMultiSelect.js +294 -166
  291. package/lib/MultiSelect/AdvancedMultiSelect.js +202 -125
  292. package/lib/MultiSelect/EmptyState.js +45 -24
  293. package/lib/MultiSelect/MultiSelect.js +323 -206
  294. package/lib/MultiSelect/MultiSelect.module.css +32 -31
  295. package/lib/MultiSelect/MultiSelectHeader.js +30 -8
  296. package/lib/MultiSelect/MultiSelectWithAvatar.js +105 -63
  297. package/lib/MultiSelect/SelectedOptions.js +43 -17
  298. package/lib/MultiSelect/SelectedOptions.module.css +5 -5
  299. package/lib/MultiSelect/Suggestions.js +64 -32
  300. package/lib/MultiSelect/__tests__/MultiSelect.spec.js +86 -75
  301. package/lib/MultiSelect/index.js +5 -0
  302. package/lib/MultiSelect/props/defaultProps.js +2 -0
  303. package/lib/MultiSelect/props/propTypes.js +5 -0
  304. package/lib/PopOver/PopOver.js +95 -49
  305. package/lib/PopOver/__tests__/PopOver.spec.js +4 -1
  306. package/lib/PopOver/index.js +4 -0
  307. package/lib/PopOver/props/propTypes.js +3 -0
  308. package/lib/Popup/Popup.js +158 -81
  309. package/lib/Popup/__tests__/Popup.spec.js +43 -8
  310. package/lib/Popup/viewPort.js +28 -14
  311. package/lib/Provider/AvatarSize.js +4 -0
  312. package/lib/Provider/Config.js +2 -0
  313. package/lib/Provider/CssProvider.js +4 -0
  314. package/lib/Provider/IdProvider.js +17 -6
  315. package/lib/Provider/LibraryContext.js +35 -15
  316. package/lib/Provider/LibraryContextInit.js +4 -0
  317. package/lib/Provider/NumberGenerator/NumberGenerator.js +44 -15
  318. package/lib/Provider/ZindexProvider.js +15 -3
  319. package/lib/Provider/index.js +5 -0
  320. package/lib/Radio/Radio.js +61 -38
  321. package/lib/Radio/Radio.module.css +3 -3
  322. package/lib/Radio/__tests__/Radiospec.js +9 -5
  323. package/lib/Radio/props/propTypes.js +3 -0
  324. package/lib/Responsive/CustomResponsive.js +73 -29
  325. package/lib/Responsive/RefWrapper.js +17 -11
  326. package/lib/Responsive/ResizeComponent.js +62 -36
  327. package/lib/Responsive/ResizeObserver.js +24 -10
  328. package/lib/Responsive/Responsive.js +80 -30
  329. package/lib/Responsive/index.js +4 -0
  330. package/lib/Responsive/props/propTypes.js +3 -0
  331. package/lib/Responsive/sizeObservers.js +53 -17
  332. package/lib/Responsive/utils/index.js +11 -3
  333. package/lib/Responsive/utils/shallowCompare.js +11 -2
  334. package/lib/Responsive/windowResizeObserver.js +8 -0
  335. package/lib/ResponsiveDropBox/ResponsiveDropBox.js +45 -17
  336. package/lib/ResponsiveDropBox/ResponsiveDropBox.module.css +2 -2
  337. package/lib/ResponsiveDropBox/props/propTypes.js +3 -0
  338. package/lib/Ribbon/Ribbon.js +33 -13
  339. package/lib/Ribbon/Ribbon.module.css +42 -42
  340. package/lib/Ribbon/__tests__/Ribbon.spec.js +22 -0
  341. package/lib/Ribbon/props/propTypes.js +3 -0
  342. package/lib/RippleEffect/RippleEffect.js +18 -10
  343. package/lib/RippleEffect/props/propTypes.js +3 -0
  344. package/lib/Select/GroupSelect.js +229 -130
  345. package/lib/Select/Select.js +290 -209
  346. package/lib/Select/Select.module.css +23 -23
  347. package/lib/Select/SelectWithAvatar.js +102 -56
  348. package/lib/Select/SelectWithIcon.js +132 -76
  349. package/lib/Select/__tests__/Select.spec.js +133 -91
  350. package/lib/Select/index.js +5 -0
  351. package/lib/Select/props/defaultProps.js +5 -4
  352. package/lib/Select/props/propTypes.js +4 -0
  353. package/lib/Stencils/Stencils.js +29 -10
  354. package/lib/Stencils/Stencils.module.css +2 -2
  355. package/lib/Stencils/__tests__/Stencils.spec.js +12 -0
  356. package/lib/Stencils/props/propTypes.js +3 -0
  357. package/lib/Switch/Switch.js +57 -34
  358. package/lib/Switch/Switch.module.css +23 -23
  359. package/lib/Switch/props/propTypes.js +3 -0
  360. package/lib/Tab/Tab.js +40 -27
  361. package/lib/Tab/Tab.module.css +14 -14
  362. package/lib/Tab/TabContent.js +12 -5
  363. package/lib/Tab/TabContentWrapper.js +13 -6
  364. package/lib/Tab/TabWrapper.js +37 -19
  365. package/lib/Tab/Tabs.js +171 -91
  366. package/lib/Tab/Tabs.module.css +23 -23
  367. package/lib/Tab/__tests__/Tab.spec.js +67 -58
  368. package/lib/Tab/__tests__/TabContent.spec.js +10 -6
  369. package/lib/Tab/__tests__/TabContentWrapper.spec.js +28 -20
  370. package/lib/Tab/__tests__/TabWrapper.spec.js +12 -0
  371. package/lib/Tab/__tests__/Tabs.spec.js +53 -39
  372. package/lib/Tab/index.js +6 -0
  373. package/lib/Tab/props/propTypes.js +3 -0
  374. package/lib/Tag/Tag.js +72 -43
  375. package/lib/Tag/Tag.module.css +10 -10
  376. package/lib/Tag/__tests__/Tag.spec.js +14 -8
  377. package/lib/Tag/props/propTypes.js +3 -0
  378. package/lib/TextBox/TextBox.js +85 -59
  379. package/lib/TextBox/TextBox.module.css +6 -5
  380. package/lib/TextBox/__tests__/TextBox.spec.js +14 -4
  381. package/lib/TextBox/props/propTypes.js +6 -4
  382. package/lib/TextBoxIcon/TextBoxIcon.js +79 -52
  383. package/lib/TextBoxIcon/TextBoxIcon.module.css +7 -6
  384. package/lib/TextBoxIcon/__tests__/TextBoxIcon.spec.js +14 -5
  385. package/lib/TextBoxIcon/props/propTypes.js +3 -0
  386. package/lib/Textarea/Textarea.js +54 -29
  387. package/lib/Textarea/Textarea.module.css +6 -6
  388. package/lib/Textarea/__tests__/Textarea.spec.js +14 -2
  389. package/lib/Textarea/props/propTypes.js +3 -0
  390. package/lib/Tooltip/Tooltip.js +94 -31
  391. package/lib/Tooltip/Tooltip.module.css +12 -5
  392. package/lib/Tooltip/__tests__/Tooltip.spec.js +24 -3
  393. package/lib/Tooltip/props/propTypes.js +3 -0
  394. package/lib/VelocityAnimation/VelocityAnimation/VelocityAnimation.js +40 -16
  395. package/lib/VelocityAnimation/VelocityAnimation/props/propTypes.js +3 -0
  396. package/lib/VelocityAnimation/VelocityAnimationGroup/VelocityAnimationGroup.js +53 -25
  397. package/lib/VelocityAnimation/VelocityAnimationGroup/props/propTypes.js +3 -0
  398. package/lib/VelocityAnimation/index.js +3 -0
  399. package/lib/common/animation.module.css +8 -8
  400. package/lib/common/basicReset.module.css +3 -3
  401. package/lib/common/boxShadow.module.css +1 -3
  402. package/lib/common/common.module.css +24 -24
  403. package/lib/common/customscroll.module.css +4 -2
  404. package/lib/common/reset.module.css +1 -0
  405. package/lib/css.js +40 -0
  406. package/lib/deprecated/AdvancedMultiSelect.module.css +18 -18
  407. package/lib/deprecated/PortalLayer/PortalLayer.js +46 -23
  408. package/lib/deprecated/PortalLayer/props/propTypes.js +3 -0
  409. package/lib/index.js +57 -0
  410. package/lib/semantic/Button/Button.js +42 -22
  411. package/lib/semantic/Button/props/propTypes.js +3 -0
  412. package/lib/semantic/Button/semanticButton.module.css +1 -1
  413. package/lib/semantic/index.js +2 -0
  414. package/lib/utils/Common.js +108 -18
  415. package/lib/utils/ContextOptimizer.js +16 -10
  416. package/lib/utils/__tests__/constructFullName.spec.js +1 -0
  417. package/lib/utils/__tests__/debounce.spec.js +3 -2
  418. package/lib/utils/__tests__/getInitial.spec.js +1 -0
  419. package/lib/utils/constructFullName.js +13 -4
  420. package/lib/utils/css/compileClassNames.js +6 -0
  421. package/lib/utils/css/mergeStyle.js +10 -7
  422. package/lib/utils/css/utils.js +8 -0
  423. package/lib/utils/datetime/common.js +32 -5
  424. package/lib/utils/debounce.js +6 -1
  425. package/lib/utils/dropDownUtils.js +175 -59
  426. package/lib/utils/dummyFunction.js +2 -0
  427. package/lib/utils/getHTMLFontSize.js +1 -0
  428. package/lib/utils/getInitial.js +6 -0
  429. package/lib/utils/index.js +4 -0
  430. package/lib/utils/scrollTo.js +2 -0
  431. package/lib/utils/shallowEqual.js +8 -0
  432. package/package.json +20 -13
@@ -18,17 +18,17 @@
18
18
  --ribbon_tag_before_border_color: var(--zdt_ribbon_default_tag_border);
19
19
  --ribbon_tag_before_width: var(--zd_size20);
20
20
  --ribbon_tag_before_height: var(--zd_size20);
21
- --ribbon_tag_before_left: calc(var(--zd_size10) * -1);
21
+ --ribbon_tag_before_left: var(--zd_sizecalc(10) * -1);
22
22
  --ribbon_tag_before_border_radius: 3px 0 0 0;
23
23
  }[dir=ltr] .varClass {
24
- --ribbon_flag_border_width: var(--zd_size14) var(--zd_size12) var(--zd_size14) 0
25
- /*rtl: var(--zd_size14) 0 var(--zd_size14) var(--zd_size12)*/
24
+ --ribbon_flag_border_width: 14px 12px 14px 0
25
+ /*rtl: 14px 0 14px 12px*/
26
26
  ;
27
27
  --ribbon_tag_before_border_width: 1px 0 0 1px
28
28
  /*rtl: 1px 1px 0 0*/
29
29
  ;
30
30
  }[dir=rtl] .varClass {
31
- --ribbon_flag_border_width: var(--zd_size14) var(--zd_size12) var(--zd_size14) 0 ;
31
+ --ribbon_flag_border_width: 14px 12px 14px 0 ;
32
32
  --ribbon_tag_before_border_width: 1px 0 0 1px ;
33
33
  }
34
34
 
@@ -212,38 +212,40 @@
212
212
  composes: dotted from '../common/common.module.css';
213
213
  display: block;
214
214
  --ribbon_text_color: var(--zdt_ribbon_white_text);
215
- --ribbon_line_height: var(--zd_size20);
215
+ --ribbon_line_height: 20px;
216
216
  --ribbon_text_transform: uppercase;
217
217
  }
218
218
 
219
219
  [dir=ltr] .flag {
220
- --ribbon_padding: var(--zd_size4) var(--zd_size24) var(--zd_size4) var(--zd_size6)
221
- /*rtl: var(--zd_size4) var(--zd_size6) var(--zd_size4) var(--zd_size24)*/
222
- ;
220
+ --ribbon_padding: var(--zd_size4) var(--zd_size24) var(--zd_size4) var(--zd_size6
221
+ ) ;
223
222
  }
224
223
 
225
224
  [dir=rtl] .flag {
226
- --ribbon_padding: var(--zd_size4) var(--zd_size24) var(--zd_size4) var(--zd_size6) ;
225
+ --ribbon_padding: var(--zd_size4) var(--zd_size24) var(--zd_size4) var(--zd_size6);
227
226
  }
228
227
 
229
228
  .flag::after {
230
229
  position: absolute;
230
+ /* Variable:Ignore */
231
231
  top: -1px;
232
+ /* Variable:Ignore */
233
+ /* Variable:Ignore */
232
234
  bottom: -1px;
233
235
  content: '';
234
- width: var(--zd_size12);
236
+ width: var(--zd_size12) ;
235
237
  border-style: solid;
236
238
  transform: translateZ(0);
237
239
  border-width: var(--ribbon_flag_border_width);
238
240
  }
239
241
 
240
242
  [dir=ltr] .flag::after {
241
- right: -1px;
243
+ right: calc( var(--zd_size1) * -1 ) ;
242
244
  border-color: var(--zdt_ribbon_flag_mirror_border) var(--zdt_ribbon_flag_white_border) var(--zdt_ribbon_flag_mirror_border) var(--zdt_ribbon_flag_mirror_border);
243
245
  }
244
246
 
245
247
  [dir=rtl] .flag::after {
246
- left: -1px;
248
+ left: calc( var(--zd_size1) * -1 ) ;
247
249
  border-color: var(--zdt_ribbon_flag_mirror_border) var(--zdt_ribbon_flag_mirror_border) var(--zdt_ribbon_flag_mirror_border) var(--zdt_ribbon_flag_white_border);
248
250
  }
249
251
 
@@ -258,7 +260,7 @@
258
260
  --ribbon_text_color: var(--zdt_ribbon_white_text);
259
261
  --ribbon_text_transform: uppercase;
260
262
  --ribbon_padding: var(--zd_size6) var(--zd_size10);
261
- --ribbon_line_height: var(--zd_size20);
263
+ --ribbon_line_height: 20px;
262
264
  text-align: center;
263
265
  }
264
266
 
@@ -266,9 +268,9 @@
266
268
  .ribbon::before {
267
269
  position: absolute;
268
270
  content: '';
269
- top: 100%;
270
- height: var(--zd_size10);
271
- width: var(--zd_size10);
271
+ top: 100% ;
272
+ height: var(--zd_size10) ;
273
+ width: var(--zd_size10) ;
272
274
  }
273
275
 
274
276
  .ribbon::after, .ribbon::before {
@@ -286,27 +288,27 @@
286
288
  }
287
289
 
288
290
  [dir=ltr] .ribbon::after {
289
- right: 0;
291
+ right: 0 ;
290
292
  }
291
293
 
292
294
  [dir=rtl] .ribbon::after {
293
- left: 0;
295
+ left: 0 ;
294
296
  }
295
297
 
296
298
  [dir=ltr] .ribbon::before {
297
- left: 0;
299
+ left: 0 ;
298
300
  transform: rotateY(180deg);
299
301
  }
300
302
 
301
303
  [dir=rtl] .ribbon::before {
302
- right: 0;
304
+ right: 0 ;
303
305
  transform: rotateY(-180deg);
304
306
  }
305
307
 
306
308
  .tag {
307
309
  composes: semibold from '../common/common.module.css';
308
310
  display: inline-block;
309
- height: var(--zd_size28);
311
+ height: var(--zd_size28) ;
310
312
  border-style: solid;
311
313
  border-color: var(--zdt_ribbon_default_tag_border);
312
314
  }
@@ -318,17 +320,15 @@
318
320
  border-radius: 0 3px 3px 0
319
321
  /*rtl: 3px 0 0 3px*/
320
322
  ;
321
- margin-left: var(--zd_size13);
322
- padding: var(--zd_size6) var(--zd_size8) var(--zd_size6) var(--zd_size5)
323
- /*rtl: var(--zd_size6) var(--zd_size5) var(--zd_size6) var(--zd_size8)*/
324
- ;
323
+ margin-left: var(--zd_size13) ;
324
+ padding: var(--zd_size6) var(--zd_size8) var(--zd_size6) var(--zd_size5) ;
325
325
  }
326
326
 
327
327
  [dir=rtl] .tag {
328
328
  border-width: 1px 0 1px 1px ;
329
329
  border-radius: 3px 0 0 3px ;
330
- margin-right: var(--zd_size13);
331
- padding: var(--zd_size6) var(--zd_size5) var(--zd_size6) var(--zd_size8) ;
330
+ margin-right: var(--zd_size13) ;
331
+ padding: var(--zd_size6) var(--zd_size5) var(--zd_size6) var(--zd_size8) ;
332
332
  }
333
333
 
334
334
  .tag::before {
@@ -369,7 +369,7 @@
369
369
 
370
370
  .sticker {
371
371
  display: block;
372
- height: var(--zd_size18);
372
+ height: var(--zd_size18) ;
373
373
  line-height: var(--zd_size11);
374
374
  --ribbon_text_color: var(--zdt_ribbon_white_text);
375
375
  --ribbon_text_transform: uppercase;
@@ -377,31 +377,31 @@
377
377
  border-width: 1px 0;
378
378
  border-style: solid;
379
379
  border-color: var(--zdt_ribbon_flag_white_border);
380
- padding: var(--zd_size3) var(--zd_size10);
380
+ padding: var(--zd_size3) var(--zd_size10) ;
381
381
  }
382
382
 
383
383
  .after,
384
384
  .before {
385
385
  position: absolute;
386
- top: 0;
387
- bottom: 0;
388
- width: var(--zd_size10);
386
+ top: 0 ;
387
+ bottom: 0 ;
388
+ width: var(--zd_size10) ;
389
389
  }
390
390
 
391
391
  [dir=ltr] .after {
392
- right: calc(var(--zd_size2) * -1);
392
+ right: calc( var(--zd_size2) * -1 ) ;
393
393
  }
394
394
 
395
395
  [dir=rtl] .after {
396
- left: calc(var(--zd_size2) * -1);
396
+ left: calc( var(--zd_size2) * -1 ) ;
397
397
  }
398
398
 
399
399
  [dir=ltr] .before {
400
- left: calc(var(--zd_size8) * -1);
400
+ left: calc( var(--zd_size8) * -1 ) ;
401
401
  }
402
402
 
403
403
  [dir=rtl] .before {
404
- right: calc(var(--zd_size8) * -1);
404
+ right: calc( var(--zd_size8) * -1 ) ;
405
405
  }
406
406
 
407
407
  .after::after,
@@ -409,8 +409,8 @@
409
409
  .before::after,
410
410
  .before::before {
411
411
  position: absolute;
412
- height: var(--zd_size7);
413
- width: var(--zd_size7);
412
+ height: var(--zd_size7) ;
413
+ width: var(--zd_size7) ;
414
414
  content: '';
415
415
  }
416
416
 
@@ -428,12 +428,12 @@
428
428
 
429
429
  .after::after,
430
430
  .before::after {
431
- top: 0;
431
+ top: 0 ;
432
432
  }
433
433
 
434
434
  .after::before,
435
435
  .before::before {
436
- bottom: 0;
436
+ bottom: 0 ;
437
437
  }
438
438
 
439
439
  .children {
@@ -443,11 +443,11 @@
443
443
  }
444
444
 
445
445
  [dir=ltr] .children {
446
- margin-right: var(--zd_size4);
446
+ margin-right: var(--zd_size4) ;
447
447
  }
448
448
 
449
449
  [dir=rtl] .children {
450
- margin-left: var(--zd_size4);
450
+ margin-left: var(--zd_size4) ;
451
451
  }
452
452
 
453
453
  .childText {
@@ -21,9 +21,7 @@ export default function RippleEffect(props) {
21
21
  });
22
22
  }
23
23
  RippleEffect.defaultProps = defaultProps;
24
- RippleEffect.propTypes = propTypes;
25
-
26
- // if (__DOCS__) {
24
+ RippleEffect.propTypes = propTypes; // if (__DOCS__) {
27
25
  // RippleEffect.docs = {
28
26
  // componentGroup: 'RippleEffect',
29
27
  // folderName: 'Style Guide'
@@ -2,8 +2,8 @@
2
2
  import React, { PureComponent } from 'react';
3
3
  import { GroupSelect_defaultProps } from './props/defaultProps';
4
4
  import { GroupSelect_propTypes } from './props/propTypes';
5
-
6
5
  /**** Components ****/
6
+
7
7
  import Popup from '../Popup/Popup';
8
8
  import TextBoxIcon from '../TextBoxIcon/TextBoxIcon';
9
9
  import Textbox from '../TextBox/TextBox';
@@ -18,13 +18,14 @@ import { getUniqueId } from '../Provider/IdProvider';
18
18
  import ResponsiveDropBox from '../ResponsiveDropBox/ResponsiveDropBox';
19
19
  import { ResponsiveReceiver } from '../Responsive/CustomResponsive';
20
20
  import style from './Select.module.css';
21
-
22
21
  /**** Methods ****/
22
+
23
23
  import { makeGetGroupSelectOptions, optionIdGrouping, makeGetGroupSelectFilterSuggestions, extractOptionId } from '../utils/dropDownUtils';
24
24
  import { getIsEmptyValue, scrollTo, debounce, getSearchString, findScrollEnd } from '../utils/Common';
25
-
26
25
  /* eslint-disable react/no-unused-prop-types */
26
+
27
27
  /* eslint-disable react/sort-prop-types */
28
+
28
29
  /* eslint-disable react/forbid-component-props */
29
30
 
30
31
  export class GroupSelectComponent extends PureComponent {
@@ -84,9 +85,11 @@ export class GroupSelectComponent extends PureComponent {
84
85
  };
85
86
  this._isMounted = false;
86
87
  }
88
+
87
89
  componentDidMount() {
88
90
  this._isMounted = true;
89
91
  }
92
+
90
93
  componentDidUpdate(prevProps) {
91
94
  let {
92
95
  groupedOptions,
@@ -106,6 +109,7 @@ export class GroupSelectComponent extends PureComponent {
106
109
  } = this;
107
110
  let newOptionIds = allOptionIds;
108
111
  let newSelectedId = selectedId;
112
+
109
113
  if (groupedOptions !== prevProps.groupedOptions) {
110
114
  let {
111
115
  revampedGroups,
@@ -121,6 +125,7 @@ export class GroupSelectComponent extends PureComponent {
121
125
  allOptionIds
122
126
  });
123
127
  }
128
+
124
129
  if (selectedOption !== prevProps.selectedOption) {
125
130
  let {
126
131
  selectedId,
@@ -132,12 +137,14 @@ export class GroupSelectComponent extends PureComponent {
132
137
  hoverIndex
133
138
  });
134
139
  }
140
+
135
141
  let {
136
142
  suggestionOptionIds
137
143
  } = this.handleFilterSuggestions();
138
144
  let hoverId = getIsEmptyValue(suggestionOptionIds[hoverIndex]) ? '' : suggestionOptionIds[hoverIndex];
139
145
  let selSuggestion = this[`suggestion_${hoverId}`];
140
146
  isPopupOpen && scrollTo(suggestionContainer, selSuggestion);
147
+
141
148
  if (isPopupOpen !== prevProps.isPopupOpen) {
142
149
  if (isPopupOpen) {
143
150
  setTimeout(() => {
@@ -156,9 +163,11 @@ export class GroupSelectComponent extends PureComponent {
156
163
  }
157
164
  }
158
165
  }
166
+
159
167
  componentWillUnmount() {
160
168
  this._isMounted = false;
161
169
  }
170
+
162
171
  handleGetGroupSelectOptions(props) {
163
172
  let {
164
173
  groupedOptions
@@ -167,6 +176,7 @@ export class GroupSelectComponent extends PureComponent {
167
176
  groupedOptions
168
177
  });
169
178
  }
179
+
170
180
  handleGetSelectedId(props, allOptionIds) {
171
181
  let {
172
182
  selectedOption,
@@ -178,19 +188,23 @@ export class GroupSelectComponent extends PureComponent {
178
188
  } = selectedOption;
179
189
  let selectedId = optionIdGrouping(selected, groupId);
180
190
  let selectedIdIndex = allOptionIds.indexOf(selectedId);
191
+
181
192
  if (selectedIdIndex === -1) {
182
193
  selectedIdIndex = 0;
194
+
183
195
  if (isDefaultSelectValue) {
184
196
  [selectedId] = allOptionIds;
185
197
  } else {
186
198
  selectedId = '';
187
199
  }
188
200
  }
201
+
189
202
  return {
190
203
  selectedId,
191
204
  hoverIndex: selectedIdIndex
192
205
  };
193
206
  }
207
+
194
208
  handleFilterSuggestions() {
195
209
  let {
196
210
  needSearch,
@@ -201,6 +215,7 @@ export class GroupSelectComponent extends PureComponent {
201
215
  searchStr = '',
202
216
  allOptionIds
203
217
  } = this.state;
218
+
204
219
  if (needSearch && searchStr && searchStr.trim().length) {
205
220
  searchStr = getSearchString(searchStr);
206
221
  let {
@@ -216,11 +231,13 @@ export class GroupSelectComponent extends PureComponent {
216
231
  suggestionOptionIds
217
232
  };
218
233
  }
234
+
219
235
  return {
220
236
  suggestionGroups: revampedGroups,
221
237
  suggestionOptionIds: allOptionIds
222
238
  };
223
239
  }
240
+
224
241
  handleSearchOptions() {
225
242
  let {
226
243
  onSearch
@@ -230,6 +247,7 @@ export class GroupSelectComponent extends PureComponent {
230
247
  } = this.state;
231
248
  searchStr && this.handleFetchOptions(onSearch, searchStr);
232
249
  }
250
+
233
251
  handleSearch(value) {
234
252
  // let { value = '' } = e.target;
235
253
  let {
@@ -252,6 +270,7 @@ export class GroupSelectComponent extends PureComponent {
252
270
  }
253
271
  });
254
272
  }
273
+
255
274
  handleKeyDown(e) {
256
275
  let {
257
276
  isPopupOpen,
@@ -267,33 +286,38 @@ export class GroupSelectComponent extends PureComponent {
267
286
  let {
268
287
  keyCode
269
288
  } = e;
289
+
270
290
  if (!isPopupOpen && !isPopupOpenOnEnter) {
271
291
  onKeyDown && onKeyDown(e);
272
292
  }
293
+
273
294
  if (isPopupOpen && (keyCode === 38 || keyCode === 40) && e.preventDefault) {
274
295
  e.preventDefault(); //prevent body scroll
275
296
  } else if (!isPopupOpen && keyCode === 40) {
276
297
  e.preventDefault(); //prevent body scroll
298
+
277
299
  this.togglePopup(e);
278
300
  }
301
+
279
302
  if (keyCode === 38 && isPopupOpen && suggestionOptionIds.length) {
280
- if (hoverIndex === 0) {
281
- // hoverIndex = options.length - 1;
303
+ if (hoverIndex === 0) {// hoverIndex = options.length - 1;
282
304
  } else {
283
305
  hoverIndex -= 1;
284
306
  }
307
+
285
308
  this.setState({
286
309
  hoverIndex
287
310
  });
288
311
  } else if (keyCode === 40 && isPopupOpen && suggestionOptionIds.length) {
289
- if (hoverIndex === suggestionOptionIds.length - 1) {
290
- // hoverIndex = 0;
312
+ if (hoverIndex === suggestionOptionIds.length - 1) {// hoverIndex = 0;
291
313
  } else {
292
314
  if (hoverIndex === suggestionOptionIds.length - 3) {
293
315
  this.handleGetNextOptions();
294
316
  }
317
+
295
318
  hoverIndex += 1;
296
319
  }
320
+
297
321
  this.setState({
298
322
  hoverIndex
299
323
  });
@@ -304,8 +328,7 @@ export class GroupSelectComponent extends PureComponent {
304
328
  } else if (keyCode === 27) {
305
329
  this.valueInput && this.valueInput.focus({
306
330
  preventScroll: true
307
- });
308
- // this.handlePopupClose(e);
331
+ }); // this.handlePopupClose(e);
309
332
  }
310
333
  }
311
334
 
@@ -321,6 +344,7 @@ export class GroupSelectComponent extends PureComponent {
321
344
  hoverIndex: newHoverIndex
322
345
  });
323
346
  }
347
+
324
348
  handleChange(id, value, index, e) {
325
349
  e && e.preventDefault && e.preventDefault();
326
350
  let {
@@ -334,13 +358,13 @@ export class GroupSelectComponent extends PureComponent {
334
358
  id: selected,
335
359
  groupId
336
360
  } = extractOptionId(id);
361
+
337
362
  if (!getIsEmptyValue(id) && !isReadOnly) {
338
363
  onChange && onChange({
339
364
  groupId,
340
365
  selected
341
366
  }, normalizedAllOptions[id]);
342
- this.handlePopupClose();
343
- // this.valueInput && this.valueInput.focus({preventScroll:true});
367
+ this.handlePopupClose(); // this.valueInput && this.valueInput.focus({preventScroll:true});
344
368
  }
345
369
  }
346
370
 
@@ -352,6 +376,7 @@ export class GroupSelectComponent extends PureComponent {
352
376
  } = this.props;
353
377
  !isReadOnly && togglePopup(e, defaultDropBoxPosition ? `${defaultDropBoxPosition}Center` : null);
354
378
  }
379
+
355
380
  handlePopupClose(e) {
356
381
  let {
357
382
  closePopupOnly,
@@ -362,15 +387,19 @@ export class GroupSelectComponent extends PureComponent {
362
387
  });
363
388
  isPopupOpen && closePopupOnly(e);
364
389
  }
390
+
365
391
  suggestionContainerRef(el) {
366
392
  this.suggestionContainer = el;
367
393
  }
394
+
368
395
  suggestionItemRef(el, index, id) {
369
396
  this[`suggestion_${id}`] = el;
370
397
  }
398
+
371
399
  searchInputRef(el) {
372
400
  this.searchInput = el;
373
401
  }
402
+
374
403
  valueInputRef(el) {
375
404
  let {
376
405
  getRef
@@ -378,12 +407,14 @@ export class GroupSelectComponent extends PureComponent {
378
407
  this.valueInput = el;
379
408
  getRef && getRef(el);
380
409
  }
410
+
381
411
  handleSelectFocus(e) {
382
412
  let {
383
413
  target
384
414
  } = e || {};
385
415
  target && target.setSelectionRange(target, 0);
386
416
  }
417
+
387
418
  handleClearSearch() {
388
419
  this.handleSearch('');
389
420
  setTimeout(() => {
@@ -392,6 +423,7 @@ export class GroupSelectComponent extends PureComponent {
392
423
  });
393
424
  }, 1);
394
425
  }
426
+
395
427
  handleValueInputChange(e) {
396
428
  let {
397
429
  which
@@ -401,22 +433,26 @@ export class GroupSelectComponent extends PureComponent {
401
433
  isPopupOpen,
402
434
  autoSelectOnType
403
435
  } = this.props;
436
+
404
437
  if (!isPopupOpen && autoSelectOnType) {
405
438
  this.valueInputTypeString += (typeString || '').trim();
406
439
  this.handleChangeOnType();
407
440
  }
408
441
  }
442
+
409
443
  handleChangeOnType() {
410
444
  let {
411
445
  revampedGroups
412
446
  } = this.state;
413
447
  let typeString = this.valueInputTypeString;
414
448
  this.valueInputTypeString = '';
449
+
415
450
  let changeValue = () => {
416
451
  let id = this.autoSelectSuggestions[this.autoSelectIndex];
417
452
  let {
418
453
  suggestionOptionIds
419
454
  } = this.handleFilterSuggestions();
455
+
420
456
  if (!getIsEmptyValue(id)) {
421
457
  this.handleChange(id);
422
458
  let hoverIndex = suggestionOptionIds.indexOf(id);
@@ -425,12 +461,14 @@ export class GroupSelectComponent extends PureComponent {
425
461
  });
426
462
  }
427
463
  };
464
+
428
465
  if (typeString && typeString === this.valueInputSearchString) {
429
466
  if (this.autoSelectIndex < this.autoSelectSuggestions.length - 1) {
430
467
  this.autoSelectIndex += 1;
431
468
  } else {
432
469
  this.autoSelectIndex = 0;
433
470
  }
471
+
434
472
  changeValue();
435
473
  } else if (typeString) {
436
474
  this.valueInputSearchString = typeString;
@@ -447,11 +485,13 @@ export class GroupSelectComponent extends PureComponent {
447
485
  changeValue();
448
486
  }
449
487
  }
488
+
450
489
  handleScroll(e) {
451
490
  let ele = e.target;
452
491
  let isScrollReachedBottom = findScrollEnd(ele);
453
492
  isScrollReachedBottom && this.handleGetNextOptions();
454
493
  }
494
+
455
495
  handleFetchOptions(APICall) {
456
496
  let searchStr = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : '';
457
497
  // let funcArgs = args.slice(1, args.length);
@@ -461,10 +501,12 @@ export class GroupSelectComponent extends PureComponent {
461
501
  let {
462
502
  _isMounted
463
503
  } = this;
504
+
464
505
  if (!isFetchingOptions && APICall) {
465
506
  this.setState({
466
507
  isFetchingOptions: true
467
508
  });
509
+
468
510
  try {
469
511
  return APICall(searchStr).then(() => {
470
512
  _isMounted && this.setState({
@@ -482,6 +524,7 @@ export class GroupSelectComponent extends PureComponent {
482
524
  }
483
525
  }
484
526
  }
527
+
485
528
  handleGetNextOptions() {
486
529
  let {
487
530
  isNextOptions,
@@ -492,6 +535,7 @@ export class GroupSelectComponent extends PureComponent {
492
535
  } = this.state;
493
536
  isNextOptions && getNextOptions && this.handleFetchOptions(getNextOptions, searchStr);
494
537
  }
538
+
495
539
  responsiveFunc(_ref) {
496
540
  let {
497
541
  mediaQueryOR
@@ -502,6 +546,7 @@ export class GroupSelectComponent extends PureComponent {
502
546
  }])
503
547
  };
504
548
  }
549
+
505
550
  render() {
506
551
  let {
507
552
  isDisabled,
@@ -737,15 +782,14 @@ export class GroupSelectComponent extends PureComponent {
737
782
  }, /*#__PURE__*/React.createElement(Loader, null))), getFooter ? /*#__PURE__*/React.createElement(CardFooter, null, getFooter()) : null)));
738
783
  }) : null);
739
784
  }
785
+
740
786
  }
741
787
  GroupSelectComponent.propTypes = GroupSelect_propTypes;
742
788
  GroupSelectComponent.defaultProps = GroupSelect_defaultProps;
743
789
  GroupSelectComponent.displayName = 'GroupSelect';
744
790
  let GroupSelect = Popup(GroupSelectComponent);
745
791
  GroupSelect.defaultProps = GroupSelectComponent.defaultProps;
746
- export default GroupSelect;
747
-
748
- // if (__DOCS__) {
792
+ export default GroupSelect; // if (__DOCS__) {
749
793
  // GroupSelect.docs = {
750
794
  // componentGroup: 'Form Elements',
751
795
  // folderName: 'Style Guide'