@zohodesk/components 1.0.0-temp-164 → 1.0.0-temp-166

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 (478) hide show
  1. package/README.md +34 -0
  2. package/assets/Appearance/dark/mode/Component_DarkMode.module.css +151 -151
  3. package/assets/Appearance/dark/themes/blue/blue_CTA_DarkModifyCategory.module.css +450 -450
  4. package/assets/Appearance/dark/themes/blue/blue_CTA_DarkTheme.module.css +30 -30
  5. package/assets/Appearance/dark/themes/green/green_CTA_DarkModifyCategory.module.css +450 -450
  6. package/assets/Appearance/dark/themes/green/green_CTA_DarkTheme.module.css +30 -30
  7. package/assets/Appearance/dark/themes/orange/orange_CTA_DarkModifyCategory.module.css +450 -450
  8. package/assets/Appearance/dark/themes/orange/orange_CTA_DarkTheme.module.css +30 -30
  9. package/assets/Appearance/dark/themes/red/red_CTA_DarkModifyCategory.module.css +450 -450
  10. package/assets/Appearance/dark/themes/red/red_CTA_DarkTheme.module.css +30 -30
  11. package/assets/Appearance/dark/themes/yellow/yellow_CTA_DarkModifyCategory.module.css +450 -450
  12. package/assets/Appearance/dark/themes/yellow/yellow_CTA_DarkTheme.module.css +30 -30
  13. package/assets/Appearance/light/mode/Component_LightMode.module.css +148 -148
  14. package/assets/Appearance/light/themes/blue/blue_CTA_LightModifyCategory.module.css +450 -450
  15. package/assets/Appearance/light/themes/blue/blue_CTA_LightTheme.module.css +30 -30
  16. package/assets/Appearance/light/themes/green/green_CTA_LightModifyCategory.module.css +450 -450
  17. package/assets/Appearance/light/themes/green/green_CTA_LightTheme.module.css +30 -30
  18. package/assets/Appearance/light/themes/orange/orange_CTA_LightModifyCategory.module.css +450 -450
  19. package/assets/Appearance/light/themes/orange/orange_CTA_LightTheme.module.css +30 -30
  20. package/assets/Appearance/light/themes/red/red_CTA_LightModifyCategory.module.css +450 -450
  21. package/assets/Appearance/light/themes/red/red_CTA_LightTheme.module.css +30 -30
  22. package/assets/Appearance/light/themes/yellow/yellow_CTA_LightModifyCategory.module.css +450 -450
  23. package/assets/Appearance/light/themes/yellow/yellow_CTA_LightTheme.module.css +30 -30
  24. package/assets/Appearance/pureDark/mode/Component_PureDarkMode.module.css +153 -153
  25. package/assets/Appearance/pureDark/themes/blue/blue_CTA_PureDarkModifyCategory.module.css +450 -450
  26. package/assets/Appearance/pureDark/themes/blue/blue_CTA_PureDarkTheme.module.css +30 -30
  27. package/assets/Appearance/pureDark/themes/green/green_CTA_PureDarkModifyCategory.module.css +450 -450
  28. package/assets/Appearance/pureDark/themes/green/green_CTA_PureDarkTheme.module.css +30 -30
  29. package/assets/Appearance/pureDark/themes/orange/orange_CTA_PureDarkModifyCategory.module.css +450 -450
  30. package/assets/Appearance/pureDark/themes/orange/orange_CTA_PureDarkTheme.module.css +30 -30
  31. package/assets/Appearance/pureDark/themes/red/red_CTA_PureDarkModifyCategory.module.css +450 -450
  32. package/assets/Appearance/pureDark/themes/red/red_CTA_PureDarkTheme.module.css +30 -30
  33. package/assets/Appearance/pureDark/themes/yellow/yellow_CTA_PureDarkModifyCategory.module.css +450 -450
  34. package/assets/Appearance/pureDark/themes/yellow/yellow_CTA_PureDarkTheme.module.css +30 -30
  35. package/es/Accordion/Accordion.js +8 -3
  36. package/es/Accordion/AccordionItem.js +5 -2
  37. package/es/Animation/Animation.js +3 -3
  38. package/es/AppContainer/AppContainer.js +27 -10
  39. package/es/AppContainer/AppContainer.module.css +2 -2
  40. package/es/AppContainer/props/defaultProps.js +2 -1
  41. package/es/AppContainer/props/propTypes.js +1 -0
  42. package/es/Avatar/Avatar.js +26 -11
  43. package/es/Avatar/Avatar.module.css +18 -18
  44. package/es/AvatarTeam/AvatarTeam.js +4 -3
  45. package/es/AvatarTeam/AvatarTeam.module.css +35 -35
  46. package/es/Button/Button.js +5 -3
  47. package/es/Button/css/Button.module.css +70 -70
  48. package/es/Buttongroup/Buttongroup.js +4 -3
  49. package/es/Buttongroup/Buttongroup.module.css +14 -15
  50. package/es/Card/Card.js +21 -10
  51. package/es/CheckBox/CheckBox.js +5 -3
  52. package/es/CheckBox/CheckBox.module.css +15 -15
  53. package/es/DateTime/CalendarView.js +33 -20
  54. package/es/DateTime/DateTime.js +113 -12
  55. package/es/DateTime/DateTime.module.css +39 -39
  56. package/es/DateTime/DateTimePopupFooter.js +4 -2
  57. package/es/DateTime/DateTimePopupHeader.js +8 -2
  58. package/es/DateTime/DateWidget.js +100 -35
  59. package/es/DateTime/DateWidget.module.css +5 -5
  60. package/es/DateTime/DaysRow.js +4 -2
  61. package/es/DateTime/Time.js +10 -2
  62. package/es/DateTime/YearView.js +28 -4
  63. package/es/DateTime/YearView.module.css +15 -15
  64. package/es/DateTime/__tests__/CalendarView.spec.js +1 -0
  65. package/es/DateTime/__tests__/DateTime.spec.js +1 -0
  66. package/es/DateTime/__tests__/DateWidget.spec.js +2 -3
  67. package/es/DateTime/common.js +3 -0
  68. package/es/DateTime/constants.js +1 -0
  69. package/es/DateTime/dateFormatUtils/dateFormat.js +63 -30
  70. package/es/DateTime/dateFormatUtils/dateFormats.js +0 -1
  71. package/es/DateTime/dateFormatUtils/dayChange.js +13 -4
  72. package/es/DateTime/dateFormatUtils/index.js +32 -2
  73. package/es/DateTime/dateFormatUtils/monthChange.js +8 -0
  74. package/es/DateTime/dateFormatUtils/timeChange.js +22 -6
  75. package/es/DateTime/dateFormatUtils/yearChange.js +11 -2
  76. package/es/DateTime/objectUtils.js +14 -20
  77. package/es/DateTime/props/defaultProps.js +2 -1
  78. package/es/DateTime/typeChecker.js +3 -0
  79. package/es/DateTime/validator.js +58 -6
  80. package/es/DropBox/DropBox.js +9 -5
  81. package/es/DropBox/DropBoxElement/DropBoxElement.js +18 -6
  82. package/es/DropBox/DropBoxElement/css/DropBoxElement.module.css +85 -79
  83. package/es/DropBox/DropBoxElement/css/cssJSLogic.js +6 -4
  84. package/es/DropBox/DropBoxElement/props/propTypes.js +1 -1
  85. package/es/DropBox/DropBoxElement/useDropboxPosCalc.js +3 -0
  86. package/es/DropBox/__tests__/DropBox.spec.js +2 -2
  87. package/es/DropBox/css/DropBox.module.css +6 -6
  88. package/es/DropBox/props/defaultProps.js +1 -2
  89. package/es/DropBox/props/propTypes.js +1 -2
  90. package/es/DropDown/DropDown.js +10 -5
  91. package/es/DropDown/DropDown.module.css +2 -2
  92. package/es/DropDown/DropDownHeading.js +5 -5
  93. package/es/DropDown/DropDownHeading.module.css +6 -6
  94. package/es/DropDown/DropDownItem.js +8 -1
  95. package/es/DropDown/DropDownItem.module.css +12 -12
  96. package/es/DropDown/DropDownSearch.js +4 -0
  97. package/es/DropDown/DropDownSearch.module.css +3 -3
  98. package/es/DropDown/DropDownSeparator.js +1 -0
  99. package/es/DropDown/DropDownSeparator.module.css +2 -2
  100. package/es/DropDown/__tests__/DropDown.spec.js +1 -2
  101. package/es/Heading/Heading.js +3 -3
  102. package/es/Heading/Heading.module.css +2 -2
  103. package/es/Label/Label.js +3 -3
  104. package/es/Label/Label.module.css +5 -5
  105. package/es/Layout/Box.js +17 -3
  106. package/es/Layout/Container.js +16 -4
  107. package/es/Layout/Layout.module.css +15 -15
  108. package/es/Layout/index.js +1 -2
  109. package/es/Layout/props/defaultProps.js +2 -0
  110. package/es/Layout/props/propTypes.js +2 -0
  111. package/es/Layout/utils.js +5 -1
  112. package/es/ListItem/ListContainer.js +8 -3
  113. package/es/ListItem/ListItem.js +9 -3
  114. package/es/ListItem/ListItem.module.css +38 -38
  115. package/es/ListItem/ListItemWithAvatar.js +9 -3
  116. package/es/ListItem/ListItemWithCheckBox.js +7 -2
  117. package/es/ListItem/ListItemWithIcon.js +8 -3
  118. package/es/ListItem/ListItemWithRadio.js +7 -3
  119. package/es/Modal/Modal.js +28 -11
  120. package/es/MultiSelect/AdvancedGroupMultiSelect.js +90 -13
  121. package/es/MultiSelect/AdvancedMultiSelect.js +33 -9
  122. package/es/MultiSelect/EmptyState.js +6 -0
  123. package/es/MultiSelect/MultiSelect.js +100 -32
  124. package/es/MultiSelect/MultiSelect.module.css +31 -31
  125. package/es/MultiSelect/MultiSelectHeader.js +3 -0
  126. package/es/MultiSelect/MultiSelectWithAvatar.js +13 -6
  127. package/es/MultiSelect/SelectedOptions.js +6 -3
  128. package/es/MultiSelect/SelectedOptions.module.css +5 -5
  129. package/es/MultiSelect/Suggestions.js +7 -3
  130. package/es/MultiSelect/__tests__/MultiSelect.spec.js +4 -6
  131. package/es/MultiSelect/props/propTypes.js +2 -0
  132. package/es/PopOver/PopOver.js +18 -2
  133. package/es/PopOver/__tests__/PopOver.spec.js +2 -1
  134. package/es/Popup/Popup.js +77 -27
  135. package/es/Popup/__tests__/Popup.spec.js +17 -5
  136. package/es/Popup/viewPort.js +16 -4
  137. package/es/Provider/IdProvider.js +10 -5
  138. package/es/Provider/LibraryContext.js +6 -4
  139. package/es/Provider/NumberGenerator/NumberGenerator.js +21 -7
  140. package/es/Provider/ZindexProvider.js +9 -2
  141. package/es/Radio/Radio.js +4 -2
  142. package/es/Radio/Radio.module.css +9 -9
  143. package/es/Responsive/CustomResponsive.js +30 -18
  144. package/es/Responsive/RefWrapper.js +6 -7
  145. package/es/Responsive/ResizeComponent.js +35 -25
  146. package/es/Responsive/ResizeObserver.js +26 -6
  147. package/es/Responsive/Responsive.js +34 -20
  148. package/es/Responsive/index.js +1 -3
  149. package/es/Responsive/sizeObservers.js +28 -7
  150. package/es/Responsive/utils/index.js +7 -5
  151. package/es/Responsive/utils/shallowCompare.js +7 -2
  152. package/es/Responsive/windowResizeObserver.js +7 -0
  153. package/es/ResponsiveDropBox/ResponsiveDropBox.js +4 -0
  154. package/es/ResponsiveDropBox/ResponsiveDropBox.module.css +2 -2
  155. package/es/Ribbon/Ribbon.js +4 -2
  156. package/es/Ribbon/Ribbon.module.css +46 -48
  157. package/es/RippleEffect/RippleEffect.js +1 -3
  158. package/es/Select/GroupSelect.js +59 -14
  159. package/es/Select/Select.js +81 -34
  160. package/es/Select/Select.module.css +23 -23
  161. package/es/Select/SelectWithAvatar.js +19 -4
  162. package/es/Select/SelectWithIcon.js +48 -6
  163. package/es/Select/__tests__/Select.spec.js +6 -8
  164. package/es/Select/props/propTypes.js +1 -0
  165. package/es/Stencils/Stencils.js +3 -3
  166. package/es/Stencils/Stencils.module.css +11 -11
  167. package/es/Switch/Switch.js +6 -3
  168. package/es/Switch/Switch.module.css +23 -23
  169. package/es/Tab/Tab.js +4 -4
  170. package/es/Tab/Tab.module.css +14 -14
  171. package/es/Tab/TabContent.js +1 -0
  172. package/es/Tab/TabContentWrapper.js +2 -0
  173. package/es/Tab/TabWrapper.js +5 -2
  174. package/es/Tab/Tabs.js +56 -8
  175. package/es/Tab/Tabs.module.css +24 -42
  176. package/es/Tab/__tests__/Tab.spec.js +1 -3
  177. package/es/Tab/__tests__/TabWrapper.spec.js +1 -0
  178. package/es/Tag/Tag.js +7 -3
  179. package/es/Tag/Tag.module.css +25 -25
  180. package/es/TextBox/TextBox.js +16 -3
  181. package/es/TextBox/TextBox.module.css +9 -9
  182. package/es/TextBox/__tests__/TextBox.spec.js +1 -4
  183. package/es/TextBoxIcon/TextBoxIcon.js +9 -2
  184. package/es/TextBoxIcon/TextBoxIcon.module.css +7 -7
  185. package/es/TextBoxIcon/__tests__/TextBoxIcon.spec.js +2 -7
  186. package/es/Textarea/Textarea.js +13 -3
  187. package/es/Textarea/Textarea.module.css +21 -21
  188. package/es/Textarea/__tests__/Textarea.spec.js +2 -2
  189. package/es/Tooltip/Tooltip.js +60 -15
  190. package/es/Tooltip/Tooltip.module.css +5 -5
  191. package/es/Tooltip/__tests__/Tooltip.spec.js +5 -0
  192. package/es/VelocityAnimation/VelocityAnimation/VelocityAnimation.js +3 -2
  193. package/es/VelocityAnimation/VelocityAnimationGroup/VelocityAnimationGroup.js +7 -5
  194. package/es/common/animation.module.css +8 -8
  195. package/es/common/avatarsizes.module.css +16 -16
  196. package/es/common/basicReset.module.css +3 -3
  197. package/es/common/common.module.css +24 -24
  198. package/es/common/customscroll.module.css +2 -2
  199. package/es/deprecated/AdvancedMultiSelect.module.css +18 -18
  200. package/es/deprecated/PortalLayer/PortalLayer.js +25 -20
  201. package/es/semantic/Button/Button.js +4 -2
  202. package/es/semantic/Button/semanticButton.module.css +1 -1
  203. package/es/utils/Common.js +58 -9
  204. package/es/utils/ContextOptimizer.js +4 -5
  205. package/es/utils/__tests__/debounce.spec.js +2 -2
  206. package/es/utils/constructFullName.js +2 -0
  207. package/es/utils/css/compileClassNames.js +5 -0
  208. package/es/utils/css/mergeStyle.js +7 -6
  209. package/es/utils/css/utils.js +1 -0
  210. package/es/utils/datetime/GMTZones.js +48 -0
  211. package/es/utils/datetime/common.js +31 -7
  212. package/es/utils/debounce.js +5 -1
  213. package/es/utils/dropDownUtils.js +68 -11
  214. package/es/utils/getInitial.js +4 -0
  215. package/es/utils/shallowEqual.js +6 -0
  216. package/lib/Accordion/Accordion.js +43 -18
  217. package/lib/Accordion/AccordionItem.js +41 -18
  218. package/lib/Accordion/__tests__/Accordion.spec.js +3 -0
  219. package/lib/Accordion/index.js +3 -0
  220. package/lib/Accordion/props/propTypes.js +3 -0
  221. package/lib/Animation/Animation.js +38 -18
  222. package/lib/Animation/__tests__/Animation.spec.js +11 -7
  223. package/lib/Animation/props/propTypes.js +3 -0
  224. package/lib/AppContainer/AppContainer.js +66 -26
  225. package/lib/AppContainer/AppContainer.module.css +2 -2
  226. package/lib/AppContainer/props/defaultProps.js +2 -1
  227. package/lib/AppContainer/props/propTypes.js +4 -0
  228. package/lib/Avatar/Avatar.js +81 -38
  229. package/lib/Avatar/Avatar.module.css +18 -18
  230. package/lib/Avatar/__tests__/Avatar.spec.js +44 -0
  231. package/lib/Avatar/props/propTypes.js +3 -0
  232. package/lib/AvatarTeam/AvatarTeam.js +53 -30
  233. package/lib/AvatarTeam/AvatarTeam.module.css +35 -35
  234. package/lib/AvatarTeam/__tests__/AvatarTeam.spec.js +13 -0
  235. package/lib/AvatarTeam/props/propTypes.js +3 -0
  236. package/lib/Button/Button.js +32 -20
  237. package/lib/Button/css/Button.module.css +70 -70
  238. package/lib/Button/css/cssJSLogic.js +18 -17
  239. package/lib/Button/index.js +3 -0
  240. package/lib/Button/props/defaultProps.js +2 -0
  241. package/lib/Button/props/propTypes.js +3 -0
  242. package/lib/Buttongroup/Buttongroup.js +33 -12
  243. package/lib/Buttongroup/Buttongroup.module.css +14 -15
  244. package/lib/Buttongroup/__test__/Buttongroup.spec.js +10 -0
  245. package/lib/Buttongroup/props/propTypes.js +3 -0
  246. package/lib/Card/Card.js +102 -46
  247. package/lib/Card/__tests__/Card.spec.js +10 -1
  248. package/lib/Card/index.js +4 -0
  249. package/lib/Card/props/propTypes.js +3 -0
  250. package/lib/CheckBox/CheckBox.js +71 -47
  251. package/lib/CheckBox/CheckBox.module.css +15 -15
  252. package/lib/CheckBox/__tests__/CheckBox.spec.js +3 -0
  253. package/lib/CheckBox/props/propTypes.js +3 -0
  254. package/lib/DateTime/CalendarView.js +83 -42
  255. package/lib/DateTime/DateTime.js +287 -160
  256. package/lib/DateTime/DateTime.module.css +39 -39
  257. package/lib/DateTime/DateTimePopupFooter.js +31 -8
  258. package/lib/DateTime/DateTimePopupHeader.js +48 -17
  259. package/lib/DateTime/DateWidget.js +354 -250
  260. package/lib/DateTime/DateWidget.module.css +5 -5
  261. package/lib/DateTime/DaysRow.js +27 -5
  262. package/lib/DateTime/Time.js +73 -32
  263. package/lib/DateTime/YearView.js +77 -28
  264. package/lib/DateTime/YearView.module.css +15 -15
  265. package/lib/DateTime/__tests__/CalendarView.spec.js +13 -5
  266. package/lib/DateTime/__tests__/DateTime.spec.js +51 -37
  267. package/lib/DateTime/__tests__/DateWidget.spec.js +10 -8
  268. package/lib/DateTime/common.js +6 -0
  269. package/lib/DateTime/constants.js +1 -0
  270. package/lib/DateTime/dateFormatUtils/dateFormat.js +184 -122
  271. package/lib/DateTime/dateFormatUtils/dateFormats.js +0 -1
  272. package/lib/DateTime/dateFormatUtils/dayChange.js +14 -7
  273. package/lib/DateTime/dateFormatUtils/index.js +74 -16
  274. package/lib/DateTime/dateFormatUtils/monthChange.js +19 -9
  275. package/lib/DateTime/dateFormatUtils/timeChange.js +54 -22
  276. package/lib/DateTime/dateFormatUtils/yearChange.js +22 -11
  277. package/lib/DateTime/index.js +2 -0
  278. package/lib/DateTime/objectUtils.js +24 -20
  279. package/lib/DateTime/props/defaultProps.js +2 -1
  280. package/lib/DateTime/props/propTypes.js +11 -1
  281. package/lib/DateTime/typeChecker.js +4 -0
  282. package/lib/DateTime/validator.js +73 -10
  283. package/lib/DropBox/DropBox.js +36 -12
  284. package/lib/DropBox/DropBoxElement/DropBoxElement.js +68 -42
  285. package/lib/DropBox/DropBoxElement/css/DropBoxElement.module.css +85 -79
  286. package/lib/DropBox/DropBoxElement/css/cssJSLogic.js +43 -34
  287. package/lib/DropBox/DropBoxElement/props/propTypes.js +4 -1
  288. package/lib/DropBox/DropBoxElement/useDropboxPosCalc.js +14 -9
  289. package/lib/DropBox/__tests__/DropBox.spec.js +8 -4
  290. package/lib/DropBox/css/DropBox.module.css +6 -6
  291. package/lib/DropBox/css/cssJSLogic.js +3 -1
  292. package/lib/DropBox/props/defaultProps.js +8 -4
  293. package/lib/DropBox/props/propTypes.js +10 -4
  294. package/lib/DropDown/DropDown.js +54 -9
  295. package/lib/DropDown/DropDown.module.css +2 -2
  296. package/lib/DropDown/DropDownHeading.js +40 -20
  297. package/lib/DropDown/DropDownHeading.module.css +6 -6
  298. package/lib/DropDown/DropDownItem.js +44 -21
  299. package/lib/DropDown/DropDownItem.module.css +12 -12
  300. package/lib/DropDown/DropDownSearch.js +40 -17
  301. package/lib/DropDown/DropDownSearch.module.css +3 -3
  302. package/lib/DropDown/DropDownSeparator.js +24 -4
  303. package/lib/DropDown/DropDownSeparator.module.css +2 -2
  304. package/lib/DropDown/__tests__/DropDown.spec.js +15 -9
  305. package/lib/DropDown/__tests__/DropDownItem.spec.js +9 -4
  306. package/lib/DropDown/__tests__/DropDownSearch.spec.js +3 -0
  307. package/lib/DropDown/index.js +9 -0
  308. package/lib/DropDown/props/propTypes.js +6 -4
  309. package/lib/Heading/Heading.js +39 -16
  310. package/lib/Heading/Heading.module.css +2 -2
  311. package/lib/Heading/props/propTypes.js +3 -0
  312. package/lib/Label/Label.js +40 -19
  313. package/lib/Label/Label.module.css +5 -5
  314. package/lib/Label/__tests__/Label.spec.js +14 -1
  315. package/lib/Label/props/propTypes.js +3 -0
  316. package/lib/Layout/Box.js +39 -15
  317. package/lib/Layout/Container.js +37 -14
  318. package/lib/Layout/Layout.module.css +15 -15
  319. package/lib/Layout/__tests__/Box.spec.js +65 -49
  320. package/lib/Layout/__tests__/Container.spec.js +67 -50
  321. package/lib/Layout/index.js +3 -0
  322. package/lib/Layout/props/defaultProps.js +2 -0
  323. package/lib/Layout/props/propTypes.js +5 -0
  324. package/lib/Layout/utils.js +15 -1
  325. package/lib/ListItem/ListContainer.js +48 -27
  326. package/lib/ListItem/ListItem.js +69 -45
  327. package/lib/ListItem/ListItem.module.css +38 -38
  328. package/lib/ListItem/ListItemWithAvatar.js +75 -48
  329. package/lib/ListItem/ListItemWithCheckBox.js +64 -39
  330. package/lib/ListItem/ListItemWithIcon.js +68 -44
  331. package/lib/ListItem/ListItemWithRadio.js +65 -41
  332. package/lib/ListItem/index.js +7 -0
  333. package/lib/ListItem/props/propTypes.js +6 -4
  334. package/lib/Modal/Modal.js +45 -10
  335. package/lib/Modal/props/propTypes.js +3 -0
  336. package/lib/MultiSelect/AdvancedGroupMultiSelect.js +295 -166
  337. package/lib/MultiSelect/AdvancedMultiSelect.js +203 -125
  338. package/lib/MultiSelect/EmptyState.js +49 -24
  339. package/lib/MultiSelect/MultiSelect.js +324 -206
  340. package/lib/MultiSelect/MultiSelect.module.css +31 -31
  341. package/lib/MultiSelect/MultiSelectHeader.js +30 -8
  342. package/lib/MultiSelect/MultiSelectWithAvatar.js +106 -63
  343. package/lib/MultiSelect/SelectedOptions.js +43 -17
  344. package/lib/MultiSelect/SelectedOptions.module.css +5 -5
  345. package/lib/MultiSelect/Suggestions.js +64 -32
  346. package/lib/MultiSelect/__tests__/MultiSelect.spec.js +86 -75
  347. package/lib/MultiSelect/index.js +5 -0
  348. package/lib/MultiSelect/props/defaultProps.js +2 -0
  349. package/lib/MultiSelect/props/propTypes.js +5 -0
  350. package/lib/PopOver/PopOver.js +95 -49
  351. package/lib/PopOver/__tests__/PopOver.spec.js +4 -1
  352. package/lib/PopOver/index.js +4 -0
  353. package/lib/PopOver/props/propTypes.js +3 -0
  354. package/lib/Popup/Popup.js +158 -84
  355. package/lib/Popup/__tests__/Popup.spec.js +43 -8
  356. package/lib/Popup/viewPort.js +28 -14
  357. package/lib/Provider/AvatarSize.js +4 -0
  358. package/lib/Provider/Config.js +2 -0
  359. package/lib/Provider/CssProvider.js +4 -0
  360. package/lib/Provider/IdProvider.js +17 -6
  361. package/lib/Provider/LibraryContext.js +35 -15
  362. package/lib/Provider/LibraryContextInit.js +4 -0
  363. package/lib/Provider/NumberGenerator/NumberGenerator.js +44 -15
  364. package/lib/Provider/ZindexProvider.js +15 -3
  365. package/lib/Provider/index.js +5 -0
  366. package/lib/Radio/Radio.js +61 -38
  367. package/lib/Radio/Radio.module.css +9 -9
  368. package/lib/Radio/__tests__/Radiospec.js +9 -5
  369. package/lib/Radio/props/propTypes.js +3 -0
  370. package/lib/Responsive/CustomResponsive.js +73 -29
  371. package/lib/Responsive/RefWrapper.js +17 -11
  372. package/lib/Responsive/ResizeComponent.js +62 -36
  373. package/lib/Responsive/ResizeObserver.js +24 -10
  374. package/lib/Responsive/Responsive.js +80 -30
  375. package/lib/Responsive/index.js +4 -0
  376. package/lib/Responsive/props/propTypes.js +3 -0
  377. package/lib/Responsive/sizeObservers.js +53 -17
  378. package/lib/Responsive/utils/index.js +11 -3
  379. package/lib/Responsive/utils/shallowCompare.js +11 -2
  380. package/lib/Responsive/windowResizeObserver.js +8 -0
  381. package/lib/ResponsiveDropBox/ResponsiveDropBox.js +45 -17
  382. package/lib/ResponsiveDropBox/ResponsiveDropBox.module.css +2 -2
  383. package/lib/ResponsiveDropBox/props/propTypes.js +3 -0
  384. package/lib/Ribbon/Ribbon.js +34 -13
  385. package/lib/Ribbon/Ribbon.module.css +46 -48
  386. package/lib/Ribbon/__tests__/Ribbon.spec.js +22 -0
  387. package/lib/Ribbon/props/propTypes.js +3 -0
  388. package/lib/RippleEffect/RippleEffect.js +18 -10
  389. package/lib/RippleEffect/props/propTypes.js +3 -0
  390. package/lib/Select/GroupSelect.js +230 -130
  391. package/lib/Select/Select.js +292 -210
  392. package/lib/Select/Select.module.css +23 -23
  393. package/lib/Select/SelectWithAvatar.js +104 -56
  394. package/lib/Select/SelectWithIcon.js +134 -77
  395. package/lib/Select/__tests__/Select.spec.js +133 -91
  396. package/lib/Select/index.js +5 -0
  397. package/lib/Select/props/defaultProps.js +5 -4
  398. package/lib/Select/props/propTypes.js +4 -0
  399. package/lib/Stencils/Stencils.js +29 -10
  400. package/lib/Stencils/Stencils.module.css +11 -11
  401. package/lib/Stencils/__tests__/Stencils.spec.js +12 -0
  402. package/lib/Stencils/props/propTypes.js +3 -0
  403. package/lib/Switch/Switch.js +58 -34
  404. package/lib/Switch/Switch.module.css +23 -23
  405. package/lib/Switch/props/propTypes.js +3 -0
  406. package/lib/Tab/Tab.js +40 -27
  407. package/lib/Tab/Tab.module.css +14 -14
  408. package/lib/Tab/TabContent.js +12 -5
  409. package/lib/Tab/TabContentWrapper.js +13 -6
  410. package/lib/Tab/TabWrapper.js +37 -19
  411. package/lib/Tab/Tabs.js +173 -92
  412. package/lib/Tab/Tabs.module.css +24 -42
  413. package/lib/Tab/__tests__/Tab.spec.js +67 -58
  414. package/lib/Tab/__tests__/TabContent.spec.js +10 -6
  415. package/lib/Tab/__tests__/TabContentWrapper.spec.js +28 -20
  416. package/lib/Tab/__tests__/TabWrapper.spec.js +12 -0
  417. package/lib/Tab/__tests__/Tabs.spec.js +53 -39
  418. package/lib/Tab/index.js +6 -0
  419. package/lib/Tab/props/propTypes.js +3 -0
  420. package/lib/Tag/Tag.js +73 -43
  421. package/lib/Tag/Tag.module.css +25 -25
  422. package/lib/Tag/__tests__/Tag.spec.js +14 -8
  423. package/lib/Tag/props/propTypes.js +3 -0
  424. package/lib/TextBox/TextBox.js +86 -59
  425. package/lib/TextBox/TextBox.module.css +9 -9
  426. package/lib/TextBox/__tests__/TextBox.spec.js +14 -4
  427. package/lib/TextBox/props/propTypes.js +6 -4
  428. package/lib/TextBoxIcon/TextBoxIcon.js +79 -52
  429. package/lib/TextBoxIcon/TextBoxIcon.module.css +7 -7
  430. package/lib/TextBoxIcon/__tests__/TextBoxIcon.spec.js +14 -5
  431. package/lib/TextBoxIcon/props/propTypes.js +3 -0
  432. package/lib/Textarea/Textarea.js +55 -29
  433. package/lib/Textarea/Textarea.module.css +21 -21
  434. package/lib/Textarea/__tests__/Textarea.spec.js +14 -2
  435. package/lib/Textarea/props/propTypes.js +3 -0
  436. package/lib/Tooltip/Tooltip.js +96 -32
  437. package/lib/Tooltip/Tooltip.module.css +5 -5
  438. package/lib/Tooltip/__tests__/Tooltip.spec.js +24 -3
  439. package/lib/Tooltip/props/propTypes.js +3 -0
  440. package/lib/VelocityAnimation/VelocityAnimation/VelocityAnimation.js +40 -16
  441. package/lib/VelocityAnimation/VelocityAnimation/props/propTypes.js +3 -0
  442. package/lib/VelocityAnimation/VelocityAnimationGroup/VelocityAnimationGroup.js +53 -25
  443. package/lib/VelocityAnimation/VelocityAnimationGroup/props/propTypes.js +3 -0
  444. package/lib/VelocityAnimation/index.js +3 -0
  445. package/lib/common/animation.module.css +8 -8
  446. package/lib/common/avatarsizes.module.css +16 -16
  447. package/lib/common/basicReset.module.css +3 -3
  448. package/lib/common/common.module.css +24 -24
  449. package/lib/common/customscroll.module.css +2 -2
  450. package/lib/css.js +40 -0
  451. package/lib/deprecated/AdvancedMultiSelect.module.css +18 -18
  452. package/lib/deprecated/PortalLayer/PortalLayer.js +46 -23
  453. package/lib/deprecated/PortalLayer/props/propTypes.js +3 -0
  454. package/lib/index.js +57 -0
  455. package/lib/semantic/Button/Button.js +43 -22
  456. package/lib/semantic/Button/props/propTypes.js +3 -0
  457. package/lib/semantic/Button/semanticButton.module.css +1 -1
  458. package/lib/semantic/index.js +2 -0
  459. package/lib/utils/Common.js +117 -19
  460. package/lib/utils/ContextOptimizer.js +16 -10
  461. package/lib/utils/__tests__/constructFullName.spec.js +1 -0
  462. package/lib/utils/__tests__/debounce.spec.js +3 -2
  463. package/lib/utils/__tests__/getInitial.spec.js +1 -0
  464. package/lib/utils/constructFullName.js +13 -4
  465. package/lib/utils/css/compileClassNames.js +6 -0
  466. package/lib/utils/css/mergeStyle.js +10 -7
  467. package/lib/utils/css/utils.js +8 -0
  468. package/lib/utils/datetime/GMTZones.js +55 -0
  469. package/lib/utils/datetime/common.js +52 -7
  470. package/lib/utils/debounce.js +6 -1
  471. package/lib/utils/dropDownUtils.js +175 -59
  472. package/lib/utils/dummyFunction.js +2 -0
  473. package/lib/utils/getHTMLFontSize.js +1 -0
  474. package/lib/utils/getInitial.js +6 -0
  475. package/lib/utils/index.js +4 -0
  476. package/lib/utils/scrollTo.js +2 -0
  477. package/lib/utils/shallowEqual.js +8 -0
  478. package/package.json +18 -27
@@ -5,7 +5,7 @@
5
5
  cursor: not-allowed;
6
6
  }
7
7
  .container {
8
- max-height: 120px;
8
+ max-height: var(--zd_size120) ;
9
9
  composes: oflowy from '../common/common.module.css';
10
10
  }
11
11
  .hasBorder {
@@ -42,17 +42,17 @@
42
42
  }
43
43
 
44
44
  .container.medium {
45
- padding-bottom: 8px;
45
+ padding-bottom: var(--zd_size8) ;
46
46
  }
47
47
 
48
48
  .container.xmedium {
49
- min-height: 30px;
50
- padding-bottom: 3px;
49
+ min-height: var(--zd_size30) ;
50
+ padding-bottom: var(--zd_size3) ;
51
51
  }
52
52
 
53
53
  .delete {
54
54
  font: inherit;
55
- padding: 2px 6px;
55
+ padding: var(--zd_size2) var(--zd_size6) ;
56
56
  cursor: pointer;
57
57
  border: 0;
58
58
  background-color: var(--zdt_multiselect_delete_bg);
@@ -82,26 +82,26 @@
82
82
  }
83
83
 
84
84
  .tag {
85
- max-width: 100%;
85
+ max-width: 100% ;
86
86
  }
87
87
 
88
88
  [dir=ltr] .container.xmedium .tag {
89
- margin: 2px 10px 0 0;
89
+ margin: var(--zd_size2) var(--zd_size10) 0 0 ;
90
90
  }
91
91
 
92
92
  [dir=rtl] .container.xmedium .tag {
93
- margin: 2px 0 0 10px;
93
+ margin: var(--zd_size2) 0 0 var(--zd_size10) ;
94
94
  }
95
95
 
96
96
  [dir=ltr] .container.medium .tag {
97
- margin: 5px 10px 0 0;
97
+ margin: var(--zd_size5) var(--zd_size10) 0 0 ;
98
98
  }
99
99
 
100
100
  [dir=rtl] .container.medium .tag {
101
- margin: 5px 0 0 10px;
101
+ margin: var(--zd_size5) 0 0 var(--zd_size10) ;
102
102
  }
103
103
  .responsiveParent{
104
- width: 100%;
104
+ width: 100% ;
105
105
  }
106
106
  .box {
107
107
  background: var(--zdt_multiselect_box_bg);
@@ -112,21 +112,21 @@
112
112
  }
113
113
 
114
114
  .small {
115
- max-height: 200px;
115
+ max-height: var(--zd_size200) ;
116
116
  }
117
117
 
118
118
  .medium {
119
- max-height: 350px;
119
+ max-height: var(--zd_size350) ;
120
120
  }
121
121
 
122
122
  .large {
123
- max-height: 400px;
123
+ max-height: var(--zd_size400) ;
124
124
  }
125
125
 
126
126
  .commonMessage {
127
- font-size: 14px;
127
+ font-size: var(--zd_font_size14) ;
128
128
  composes: semibold from '../common/common.module.css';
129
- padding: 12px 15px;
129
+ padding: var(--zd_size12) var(--zd_size15) ;
130
130
  }
131
131
  .default,
132
132
  .dark {
@@ -154,54 +154,54 @@
154
154
  overflow: hidden;
155
155
  text-overflow: ellipsis;
156
156
  white-space: nowrap;
157
- max-width: 100%;
157
+ max-width: 100% ;
158
158
  visibility: hidden;
159
159
  }
160
160
  .custmSpanMedium {
161
- height: 35px;
161
+ height: var(--zd_size35) ;
162
162
  }
163
163
  .custmSpanXmedium {
164
- height: 28px;
164
+ height: var(--zd_size28) ;
165
165
  }
166
166
  .custmInputWrapper {
167
167
  position: absolute;
168
- top: 0;
169
- width: 100%;
168
+ top: 0 ;
169
+ width: 100% ;
170
170
  }
171
171
  [dir=ltr] .custmInputWrapper {
172
- left: 0;
172
+ left: 0 ;
173
173
  }
174
174
  [dir=rtl] .custmInputWrapper {
175
- right: 0;
175
+ right: 0 ;
176
176
  }
177
177
  .title {
178
- margin-bottom: 6px;
178
+ margin-bottom: var(--zd_size6) ;
179
179
  }
180
180
  .groupTitle {
181
- margin: 6px 0;
181
+ margin: var(--zd_size6) 0 ;
182
182
  }
183
183
  .loader {
184
- padding: 10px;
184
+ padding: var(--zd_size10) ;
185
185
  }
186
186
  .iconContainer {
187
- padding-top: 3px
187
+ padding-top: var(--zd_size3)
188
188
  }
189
189
  [dir=ltr] .clearIconSpace {
190
- padding-right: 37px
190
+ padding-right: var(--zd_size37)
191
191
  }
192
192
  [dir=rtl] .clearIconSpace {
193
- padding-left: 37px
193
+ padding-left: var(--zd_size37)
194
194
  }
195
195
  .search{
196
196
  /* Variable:Ignore */
197
197
  padding: 0px 20px;
198
198
  }
199
199
  .more {
200
- font-size: 14px;
200
+ font-size: var(--zd_font_size14) ;
201
201
  color: var(--zdt_multiselect_more_text);
202
202
  font-family: inherit;
203
203
  cursor: pointer;
204
- margin-top: 5px;
204
+ margin-top: var(--zd_size5) ;
205
205
  background-color: var(--zdt_multiselect_delete_bg);
206
206
  border: 0;
207
207
  }
@@ -3,8 +3,10 @@ import React from 'react';
3
3
  import { MultiSelectHeader_propTypes } from './props/propTypes';
4
4
  import { MultiSelectHeader_defaultProps } from './props/defaultProps';
5
5
  /**** Icons ****/
6
+
6
7
  import ListItemWithIcon from '../ListItem/ListItemWithIcon';
7
8
  /**** CSS ****/
9
+
8
10
  import style from './MultiSelect.module.css';
9
11
  export default class MultiSelectHeader extends React.PureComponent {
10
12
  render() {
@@ -25,6 +27,7 @@ export default class MultiSelectHeader extends React.PureComponent {
25
27
  customClass: style.selectAll
26
28
  }) : null);
27
29
  }
30
+
28
31
  }
29
32
  MultiSelectHeader.propTypes = MultiSelectHeader_propTypes;
30
33
  MultiSelectHeader.defaultProps = MultiSelectHeader_defaultProps;
@@ -1,10 +1,11 @@
1
1
  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); }
2
+
2
3
  /**** Libraries ****/
3
4
  import React from 'react';
4
5
  import { MultiSelectWithAvatar_propTypes } from './props/propTypes';
5
6
  import { MultiSelectWithAvatar_defaultProps } from './props/defaultProps';
6
-
7
7
  /**** Components ****/
8
+
8
9
  import { MultiSelectComponent } from './MultiSelect';
9
10
  import Popup from '../Popup/Popup';
10
11
  import TextBoxIcon from '../TextBoxIcon/TextBoxIcon';
@@ -19,14 +20,16 @@ import { getUniqueId } from '../Provider/IdProvider';
19
20
  import ResponsiveDropBox from '../ResponsiveDropBox/ResponsiveDropBox';
20
21
  import { ResponsiveReceiver } from '../Responsive/CustomResponsive';
21
22
  import Loader from '@zohodesk/svg/lib/Loader/Loader';
22
-
23
23
  /**** Icons ****/
24
+
24
25
  import { Icon } from '@zohodesk/icons';
25
26
  /**** CSS ****/
26
- import style from './MultiSelect.module.css';
27
27
 
28
+ import style from './MultiSelect.module.css';
28
29
  /*eslint-disable react/sort-prop-types*/
30
+
29
31
  /* eslint-disable react/forbid-component-props */
32
+
30
33
  /* eslint-disable react/no-unused-prop-types */
31
34
 
32
35
  class MultiSelectWithAvatarComponent extends MultiSelectComponent {
@@ -35,6 +38,7 @@ class MultiSelectWithAvatarComponent extends MultiSelectComponent {
35
38
  this.handleFormatOptions = this.handleFormatOptions.bind(this);
36
39
  this.getNextAriaId = getUniqueId(this);
37
40
  }
41
+
38
42
  handleFormatOptions(props) {
39
43
  const {
40
44
  options,
@@ -52,6 +56,7 @@ class MultiSelectWithAvatarComponent extends MultiSelectComponent {
52
56
  disabledOptions
53
57
  });
54
58
  }
59
+
55
60
  responsiveFunc(_ref) {
56
61
  let {
57
62
  mediaQueryOR
@@ -62,6 +67,7 @@ class MultiSelectWithAvatarComponent extends MultiSelectComponent {
62
67
  }])
63
68
  };
64
69
  }
70
+
65
71
  render() {
66
72
  let {
67
73
  isReadOnly,
@@ -137,6 +143,7 @@ class MultiSelectWithAvatarComponent extends MultiSelectComponent {
137
143
  return /*#__PURE__*/React.createElement("div", {
138
144
  className: ` ${style.wrapper} ${isDisabled ? style.disabled : ''} ${isReadOnly ? style.readOnly : ''} ${disableAction ? CssProvider('isBlock') : ''} ${borderColor === 'transparent' ? style.transparentContainer : ''} ${needEffect && !(isDisabled || isReadOnly) ? style.effect : ''}`,
139
145
  "data-id": `${isDisabled ? `${dataId}_disabled` : isReadOnly ? `${dataId}_readOnly` : dataId}`,
146
+ "data-test-id": `${isDisabled ? `${dataId}_disabled` : isReadOnly ? `${dataId}_readOnly` : dataId}`,
140
147
  "data-title": isDisabled ? title : null,
141
148
  onClick: this.handleInputFocus,
142
149
  "data-selector-id": dataSelectorId
@@ -285,14 +292,14 @@ class MultiSelectWithAvatarComponent extends MultiSelectComponent {
285
292
  }, /*#__PURE__*/React.createElement(Loader, null))))));
286
293
  }) : null);
287
294
  }
295
+
288
296
  }
297
+
289
298
  MultiSelectWithAvatarComponent.propTypes = MultiSelectWithAvatar_propTypes;
290
299
  MultiSelectWithAvatarComponent.defaultProps = MultiSelectWithAvatar_defaultProps;
291
300
  MultiSelectWithAvatarComponent.displayName = 'MultiSelectWithAvatar';
292
301
  const MultiSelectWithAvatar = Popup(MultiSelectWithAvatarComponent);
293
- MultiSelectWithAvatar.defaultProps = MultiSelectWithAvatarComponent.defaultProps;
294
-
295
- // if (__DOCS__) {
302
+ MultiSelectWithAvatar.defaultProps = MultiSelectWithAvatarComponent.defaultProps; // if (__DOCS__) {
296
303
  // MultiSelectWithAvatarComponent.docs = {
297
304
  // componentGroup: 'Form Elements',
298
305
  // folderName: 'Style Guide'
@@ -1,16 +1,16 @@
1
1
  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); }
2
+
2
3
  /**** Libraries ****/
3
4
  import React from 'react';
4
5
  import { SelectedOptions_propTypes } from './props/propTypes';
5
6
  import { SelectedOptions_defaultProps } from './props/defaultProps';
6
-
7
7
  /**** Components ****/
8
+
8
9
  import Tag from '../Tag/Tag';
9
10
  import { Box } from '../Layout';
10
-
11
11
  /**** Style ****/
12
- import style from './SelectedOptions.module.css';
13
12
 
13
+ import style from './SelectedOptions.module.css';
14
14
  /* eslint-disable react/forbid-component-props */
15
15
 
16
16
  export default class SelectedOptions extends React.PureComponent {
@@ -47,6 +47,7 @@ export default class SelectedOptions extends React.PureComponent {
47
47
  id: id,
48
48
  isReadOnly: isReadOnly
49
49
  };
50
+
50
51
  if (optionType === 'avatar') {
51
52
  return /*#__PURE__*/React.createElement(Box, {
52
53
  className: `${style.tag} ${style[size]}`,
@@ -66,6 +67,7 @@ export default class SelectedOptions extends React.PureComponent {
66
67
  iconSize: iconSize
67
68
  })));
68
69
  }
70
+
69
71
  return /*#__PURE__*/React.createElement(Box, {
70
72
  className: `${style.tag} ${style[size]}`,
71
73
  key: `${id}tag`
@@ -74,6 +76,7 @@ export default class SelectedOptions extends React.PureComponent {
74
76
  })));
75
77
  }));
76
78
  }
79
+
77
80
  }
78
81
  SelectedOptions.propTypes = SelectedOptions_propTypes;
79
82
  SelectedOptions.defaultProps = SelectedOptions_defaultProps;
@@ -1,15 +1,15 @@
1
1
  .tag {
2
- max-width: 100%;
2
+ max-width: 100% ;
3
3
  }
4
4
  [dir=ltr] .xmedium {
5
- margin: 0 10px 2px 0;
5
+ margin: 0 var(--zd_size10) var(--zd_size2) 0 ;
6
6
  }
7
7
  [dir=rtl] .xmedium {
8
- margin: 0 0 2px 10px;
8
+ margin: 0 0 var(--zd_size2) var(--zd_size10) ;
9
9
  }
10
10
  [dir=ltr] .medium {
11
- margin: 5px 10px 0 0;
11
+ margin: var(--zd_size5) var(--zd_size10) 0 0 ;
12
12
  }
13
13
  [dir=rtl] .medium {
14
- margin: 5px 0 0 10px;
14
+ margin: var(--zd_size5) 0 0 var(--zd_size10) ;
15
15
  }
@@ -1,10 +1,11 @@
1
1
  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); }
2
+
2
3
  /**** Libraries ****/
3
4
  import React from 'react';
4
5
  import { Suggestions_propTypes } from './props/propTypes';
5
6
  import { Suggestions_defaultProps } from './props/defaultProps';
6
-
7
7
  /**** Components ****/
8
+
8
9
  import ListItem from '../ListItem/ListItem';
9
10
  import ListItemWithAvatar from '../ListItem/ListItemWithAvatar';
10
11
  import ListItemWithIcon from '../ListItem/ListItemWithIcon';
@@ -65,13 +66,14 @@ export default class Suggestions extends React.PureComponent {
65
66
  isDisabled,
66
67
  ...listItemCustomProps
67
68
  };
69
+
68
70
  if (listItemProps) {
69
71
  commonProps.customProps = {
70
- ListItemProps: {
71
- ...listItemProps
72
+ ListItemProps: { ...listItemProps
72
73
  }
73
74
  };
74
75
  }
76
+
75
77
  if (optionType === 'avatar') {
76
78
  return /*#__PURE__*/React.createElement(ListItemWithAvatar, _extends({}, commonProps, {
77
79
  autoHover: false,
@@ -114,6 +116,7 @@ export default class Suggestions extends React.PureComponent {
114
116
  a11y: list_a11y
115
117
  }));
116
118
  }
119
+
117
120
  return /*#__PURE__*/React.createElement(ListItem, _extends({}, commonProps, {
118
121
  autoHover: false,
119
122
  getRef: getRef,
@@ -133,6 +136,7 @@ export default class Suggestions extends React.PureComponent {
133
136
  }));
134
137
  })));
135
138
  }
139
+
136
140
  }
137
141
  Suggestions.propTypes = Suggestions_propTypes;
138
142
  Suggestions.defaultProps = Suggestions_defaultProps;
@@ -1,8 +1,9 @@
1
1
  /* eslint-disable no-undef */
2
+
2
3
  /**** Libraries ****/
3
4
  import expect from 'expect';
4
-
5
5
  /**** Components ****/
6
+
6
7
  import MultiSelect from '../MultiSelect';
7
8
  import Tag from '../../Tag/Tag';
8
9
  describe('MultiSelect component conditions', () => {
@@ -30,9 +31,8 @@ describe('MultiSelect component conditions', () => {
30
31
  target: {
31
32
  value: 'value changed'
32
33
  }
33
- });
34
+ }); //
34
35
 
35
- //
36
36
  setTimeout(() => {
37
37
  expect(props.onSearch).toHaveBeenCalled();
38
38
  expect(props.onSearch.mock.calls[0][0]).toEqual('value changed');
@@ -44,10 +44,8 @@ describe('MultiSelect component conditions', () => {
44
44
  expect(loadingEleArr.length).toBe(0);
45
45
  cb();
46
46
  });
47
- }, searchDebounceTime);
48
- //
47
+ }, searchDebounceTime); //
49
48
  });
50
-
51
49
  it('Should display searchEmptyMessage', () => {
52
50
  let {
53
51
  renderedDOM
@@ -103,6 +103,7 @@ export const AdvancedMultiSelect_propTypes = {
103
103
  dataIdNoMreOptionMsg: PropTypes.string,
104
104
  dataIdSelectAllEle: PropTypes.string,
105
105
  isSearchClearOnClose: PropTypes.bool,
106
+
106
107
  /**** Popup Props ****/
107
108
  isPopupOpen: PropTypes.bool,
108
109
  isPopupReady: PropTypes.bool,
@@ -300,6 +301,7 @@ export const MultiSelectWithAvatar_propTypes = {
300
301
  SuggestionsProps: PropTypes.object,
301
302
  DropBoxProps: PropTypes.object
302
303
  }),
304
+
303
305
  /**** Popup props ****/
304
306
  isPopupOpen: PropTypes.bool,
305
307
  isPopupReady: PropTypes.bool,
@@ -5,6 +5,7 @@ import Popup from '../Popup/Popup';
5
5
  import { Box } from '../Layout';
6
6
  import ResponsiveDropBox from '../ResponsiveDropBox/ResponsiveDropBox';
7
7
  import style from './PopOver.module.css';
8
+
8
9
  class PopOver extends React.Component {
9
10
  constructor(props) {
10
11
  super(props);
@@ -12,17 +13,20 @@ class PopOver extends React.Component {
12
13
  this.popOverContainerRef = this.popOverContainerRef.bind(this);
13
14
  this.togglePopup = this.togglePopup.bind(this);
14
15
  }
16
+
15
17
  componentDidUpdate(prevProps) {
16
18
  let {
17
19
  isPopupOpen,
18
20
  onPopupOpen,
19
21
  onPopupClose
20
22
  } = this.props;
23
+
21
24
  if (prevProps.isPopupOpen !== isPopupOpen) {
22
25
  isPopupOpen && onPopupOpen && onPopupOpen();
23
26
  !isPopupOpen && onPopupClose && onPopupClose();
24
27
  }
25
28
  }
29
+
26
30
  popOverTargetRef(el) {
27
31
  this.popOverTarget = el;
28
32
  let {
@@ -30,6 +34,7 @@ class PopOver extends React.Component {
30
34
  } = this.props;
31
35
  getTargetRef(el);
32
36
  }
37
+
33
38
  popOverContainerRef(el) {
34
39
  this.popOverContainer = el;
35
40
  let {
@@ -37,6 +42,7 @@ class PopOver extends React.Component {
37
42
  } = this.props;
38
43
  getContainerRef(el);
39
44
  }
45
+
40
46
  togglePopup(e) {
41
47
  let {
42
48
  togglePopup,
@@ -44,6 +50,7 @@ class PopOver extends React.Component {
44
50
  } = this.props;
45
51
  togglePopup(e, boxPosition);
46
52
  }
53
+
47
54
  render() {
48
55
  let {
49
56
  children,
@@ -98,10 +105,11 @@ class PopOver extends React.Component {
98
105
  className: style.popup
99
106
  }, childrens);
100
107
  }
108
+
101
109
  }
110
+
102
111
  PopOver.defaultProps = PopOver_defaultProps;
103
- PopOver.propTypes = PopOver_propTypes;
104
- // if (__DOCS__) {
112
+ PopOver.propTypes = PopOver_propTypes; // if (__DOCS__) {
105
113
  // PopOver.docs = {
106
114
  // componentGroup: 'Form Elements',
107
115
  // folderName: 'Style Guide',
@@ -109,18 +117,21 @@ PopOver.propTypes = PopOver_propTypes;
109
117
  // external: true
110
118
  // };
111
119
  // }
120
+
112
121
  export default Popup(PopOver);
113
122
  export class PopOverTarget extends React.Component {
114
123
  constructor(props) {
115
124
  super(props);
116
125
  this.getRef = this.getRef.bind(this);
117
126
  }
127
+
118
128
  getRef(el) {
119
129
  let {
120
130
  getRef
121
131
  } = this.props;
122
132
  getRef(el);
123
133
  }
134
+
124
135
  render() {
125
136
  let {
126
137
  children,
@@ -132,6 +143,7 @@ export class PopOverTarget extends React.Component {
132
143
  ref: this.getRef
133
144
  }, children);
134
145
  }
146
+
135
147
  }
136
148
  PopOverTarget.propTypes = PopOverTarget_propTypes;
137
149
  export class PopOverContainer extends React.Component {
@@ -140,12 +152,14 @@ export class PopOverContainer extends React.Component {
140
152
  this.handleClick = this.handleClick.bind(this);
141
153
  this.getRef = this.getRef.bind(this);
142
154
  }
155
+
143
156
  getRef(el) {
144
157
  let {
145
158
  getRef
146
159
  } = this.props;
147
160
  getRef && getRef(el);
148
161
  }
162
+
149
163
  handleClick(e) {
150
164
  let {
151
165
  onClick,
@@ -154,6 +168,7 @@ export class PopOverContainer extends React.Component {
154
168
  removeClose && removeClose(e);
155
169
  onClick && onClick();
156
170
  }
171
+
157
172
  render() {
158
173
  let {
159
174
  children,
@@ -198,6 +213,7 @@ export class PopOverContainer extends React.Component {
198
213
  scroll: "vertical"
199
214
  }, children));
200
215
  }
216
+
201
217
  }
202
218
  PopOverContainer.defaultProps = PopOverContainer_defaultProps;
203
219
  PopOverContainer.propTypes = PopOverContainer_propTypes;
@@ -1,8 +1,9 @@
1
1
  /* eslint-disable no-undef */
2
+
2
3
  /**** Libraries ****/
3
4
  import React from 'react';
4
-
5
5
  /**** Components ****/
6
+
6
7
  import PopOver from '../PopOver';
7
8
  describe('PopOver component conditions', () => {
8
9
  xit('should open popup', () => {