@zohodesk/components 1.0.0-alpha-269 → 1.0.0-alpha-271

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 (434) hide show
  1. package/README.md +16 -0
  2. package/es/Accordion/Accordion.js +3 -7
  3. package/es/Accordion/AccordionItem.js +2 -4
  4. package/es/Animation/Animation.js +3 -3
  5. package/es/AppContainer/AppContainer.js +5 -13
  6. package/es/AppContainer/AppContainer.module.css +2 -2
  7. package/es/Avatar/Avatar.js +11 -23
  8. package/es/Avatar/Avatar.module.css +18 -18
  9. package/es/AvatarTeam/AvatarTeam.js +3 -3
  10. package/es/AvatarTeam/AvatarTeam.module.css +35 -35
  11. package/es/Button/Button.js +3 -4
  12. package/es/Button/css/Button.module.css +70 -70
  13. package/es/Buttongroup/Buttongroup.js +3 -3
  14. package/es/Buttongroup/Buttongroup.module.css +15 -14
  15. package/es/Card/Card.js +10 -21
  16. package/es/CheckBox/CheckBox.js +3 -5
  17. package/es/CheckBox/CheckBox.module.css +15 -15
  18. package/es/DateTime/CalendarView.js +20 -32
  19. package/es/DateTime/DateTime.js +6 -67
  20. package/es/DateTime/DateTime.module.css +39 -39
  21. package/es/DateTime/DateTimePopupFooter.js +2 -4
  22. package/es/DateTime/DateTimePopupHeader.js +2 -8
  23. package/es/DateTime/DateWidget.js +35 -98
  24. package/es/DateTime/DateWidget.module.css +5 -5
  25. package/es/DateTime/DaysRow.js +2 -4
  26. package/es/DateTime/Time.js +2 -10
  27. package/es/DateTime/YearView.js +4 -28
  28. package/es/DateTime/YearView.module.css +15 -15
  29. package/es/DateTime/__tests__/CalendarView.spec.js +0 -1
  30. package/es/DateTime/__tests__/DateTime.spec.js +0 -1
  31. package/es/DateTime/__tests__/DateWidget.spec.js +3 -2
  32. package/es/DateTime/common.js +0 -3
  33. package/es/DateTime/constants.js +0 -1
  34. package/es/DateTime/dateFormatUtils/dateFormat.js +30 -63
  35. package/es/DateTime/dateFormatUtils/dateFormats.js +1 -0
  36. package/es/DateTime/dateFormatUtils/dayChange.js +4 -13
  37. package/es/DateTime/dateFormatUtils/index.js +2 -32
  38. package/es/DateTime/dateFormatUtils/monthChange.js +0 -8
  39. package/es/DateTime/dateFormatUtils/timeChange.js +6 -22
  40. package/es/DateTime/dateFormatUtils/yearChange.js +2 -11
  41. package/es/DateTime/objectUtils.js +20 -14
  42. package/es/DateTime/typeChecker.js +0 -3
  43. package/es/DateTime/validator.js +6 -58
  44. package/es/DropBox/DropBox.js +5 -9
  45. package/es/DropBox/DropBoxElement/DropBoxElement.js +8 -13
  46. package/es/DropBox/DropBoxElement/css/DropBoxElement.module.css +85 -79
  47. package/es/DropBox/DropBoxElement/css/cssJSLogic.js +5 -7
  48. package/es/DropBox/DropBoxElement/props/propTypes.js +1 -1
  49. package/es/DropBox/DropBoxElement/useDropboxPosCalc.js +0 -3
  50. package/es/DropBox/__tests__/DropBox.spec.js +2 -2
  51. package/es/DropBox/css/DropBox.module.css +6 -6
  52. package/es/DropBox/props/defaultProps.js +2 -1
  53. package/es/DropBox/props/propTypes.js +2 -1
  54. package/es/DropDown/DropDown.js +4 -8
  55. package/es/DropDown/DropDown.module.css +2 -2
  56. package/es/DropDown/DropDownHeading.js +5 -4
  57. package/es/DropDown/DropDownHeading.module.css +6 -6
  58. package/es/DropDown/DropDownItem.js +0 -6
  59. package/es/DropDown/DropDownItem.module.css +12 -12
  60. package/es/DropDown/DropDownSearch.js +0 -4
  61. package/es/DropDown/DropDownSearch.module.css +3 -3
  62. package/es/DropDown/DropDownSeparator.js +0 -1
  63. package/es/DropDown/DropDownSeparator.module.css +2 -2
  64. package/es/DropDown/__tests__/DropDown.spec.js +2 -1
  65. package/es/Heading/Heading.js +3 -2
  66. package/es/Heading/Heading.module.css +2 -2
  67. package/es/Label/Label.js +3 -2
  68. package/es/Label/Label.module.css +5 -5
  69. package/es/Layout/Box.js +0 -13
  70. package/es/Layout/Container.js +1 -12
  71. package/es/Layout/Layout.module.css +15 -15
  72. package/es/Layout/index.js +2 -1
  73. package/es/ListItem/ListContainer.js +3 -8
  74. package/es/ListItem/ListItem.js +3 -9
  75. package/es/ListItem/ListItem.module.css +38 -38
  76. package/es/ListItem/ListItemWithAvatar.js +3 -9
  77. package/es/ListItem/ListItemWithCheckBox.js +2 -7
  78. package/es/ListItem/ListItemWithIcon.js +3 -8
  79. package/es/ListItem/ListItemWithRadio.js +3 -7
  80. package/es/Modal/Modal.js +11 -28
  81. package/es/MultiSelect/AdvancedGroupMultiSelect.js +13 -89
  82. package/es/MultiSelect/AdvancedMultiSelect.js +9 -32
  83. package/es/MultiSelect/EmptyState.js +0 -2
  84. package/es/MultiSelect/MultiSelect.js +32 -99
  85. package/es/MultiSelect/MultiSelect.module.css +31 -31
  86. package/es/MultiSelect/MultiSelectHeader.js +0 -3
  87. package/es/MultiSelect/MultiSelectWithAvatar.js +6 -12
  88. package/es/MultiSelect/SelectedOptions.js +3 -6
  89. package/es/MultiSelect/SelectedOptions.module.css +5 -5
  90. package/es/MultiSelect/Suggestions.js +3 -7
  91. package/es/MultiSelect/__tests__/MultiSelect.spec.js +6 -4
  92. package/es/MultiSelect/props/propTypes.js +0 -2
  93. package/es/PopOver/PopOver.js +2 -18
  94. package/es/PopOver/__tests__/PopOver.spec.js +1 -2
  95. package/es/Popup/Popup.js +24 -77
  96. package/es/Popup/__tests__/Popup.spec.js +5 -17
  97. package/es/Popup/viewPort.js +4 -16
  98. package/es/Provider/IdProvider.js +5 -10
  99. package/es/Provider/LibraryContext.js +4 -6
  100. package/es/Provider/NumberGenerator/NumberGenerator.js +7 -21
  101. package/es/Provider/ZindexProvider.js +2 -9
  102. package/es/Radio/Radio.js +2 -4
  103. package/es/Radio/Radio.module.css +9 -9
  104. package/es/Responsive/CustomResponsive.js +18 -30
  105. package/es/Responsive/RefWrapper.js +7 -6
  106. package/es/Responsive/ResizeComponent.js +25 -35
  107. package/es/Responsive/ResizeObserver.js +6 -26
  108. package/es/Responsive/Responsive.js +20 -34
  109. package/es/Responsive/index.js +3 -1
  110. package/es/Responsive/sizeObservers.js +7 -28
  111. package/es/Responsive/utils/index.js +5 -7
  112. package/es/Responsive/utils/shallowCompare.js +2 -7
  113. package/es/Responsive/windowResizeObserver.js +0 -7
  114. package/es/ResponsiveDropBox/ResponsiveDropBox.js +0 -4
  115. package/es/ResponsiveDropBox/ResponsiveDropBox.module.css +2 -2
  116. package/es/Ribbon/Ribbon.js +2 -3
  117. package/es/Ribbon/Ribbon.module.css +48 -46
  118. package/es/RippleEffect/RippleEffect.js +3 -1
  119. package/es/Select/GroupSelect.js +14 -58
  120. package/es/Select/Select.js +33 -79
  121. package/es/Select/Select.module.css +23 -23
  122. package/es/Select/SelectWithAvatar.js +4 -17
  123. package/es/Select/SelectWithIcon.js +5 -46
  124. package/es/Select/__tests__/Select.spec.js +8 -6
  125. package/es/Select/props/propTypes.js +0 -1
  126. package/es/Stencils/Stencils.js +3 -3
  127. package/es/Stencils/Stencils.module.css +11 -11
  128. package/es/Switch/Switch.js +3 -5
  129. package/es/Switch/Switch.module.css +23 -23
  130. package/es/Tab/Tab.js +4 -4
  131. package/es/Tab/Tab.module.css +14 -14
  132. package/es/Tab/TabContent.js +0 -1
  133. package/es/Tab/TabContentWrapper.js +0 -2
  134. package/es/Tab/TabWrapper.js +2 -5
  135. package/es/Tab/Tabs.js +7 -54
  136. package/es/Tab/Tabs.module.css +30 -37
  137. package/es/Tab/__tests__/Tab.spec.js +3 -1
  138. package/es/Tab/__tests__/TabWrapper.spec.js +0 -1
  139. package/es/Tag/Tag.js +3 -6
  140. package/es/Tag/Tag.module.css +25 -25
  141. package/es/TextBox/TextBox.js +3 -15
  142. package/es/TextBox/TextBox.module.css +9 -9
  143. package/es/TextBox/__tests__/TextBox.spec.js +4 -1
  144. package/es/TextBoxIcon/TextBoxIcon.js +2 -9
  145. package/es/TextBoxIcon/TextBoxIcon.module.css +7 -7
  146. package/es/TextBoxIcon/__tests__/TextBoxIcon.spec.js +7 -2
  147. package/es/Textarea/Textarea.js +3 -12
  148. package/es/Textarea/Textarea.module.css +21 -21
  149. package/es/Textarea/__tests__/Textarea.spec.js +2 -2
  150. package/es/Tooltip/Tooltip.js +14 -58
  151. package/es/Tooltip/Tooltip.module.css +5 -5
  152. package/es/Tooltip/__tests__/Tooltip.spec.js +0 -5
  153. package/es/VelocityAnimation/VelocityAnimation/VelocityAnimation.js +2 -3
  154. package/es/VelocityAnimation/VelocityAnimationGroup/VelocityAnimationGroup.js +5 -7
  155. package/es/common/animation.module.css +8 -8
  156. package/es/common/avatarsizes.module.css +16 -16
  157. package/es/common/basicReset.module.css +3 -3
  158. package/es/common/common.module.css +24 -24
  159. package/es/common/customscroll.module.css +2 -2
  160. package/es/deprecated/AdvancedMultiSelect.module.css +18 -18
  161. package/es/deprecated/PortalLayer/PortalLayer.js +20 -25
  162. package/es/semantic/Button/Button.js +2 -3
  163. package/es/semantic/Button/semanticButton.module.css +1 -1
  164. package/es/utils/Common.js +13 -54
  165. package/es/utils/ContextOptimizer.js +5 -4
  166. package/es/utils/__tests__/debounce.spec.js +2 -2
  167. package/es/utils/constructFullName.js +0 -2
  168. package/es/utils/css/compileClassNames.js +0 -5
  169. package/es/utils/css/mergeStyle.js +7 -8
  170. package/es/utils/css/utils.js +0 -1
  171. package/es/utils/datetime/common.js +5 -16
  172. package/es/utils/debounce.js +1 -5
  173. package/es/utils/dropDownUtils.js +11 -68
  174. package/es/utils/getInitial.js +0 -4
  175. package/es/utils/shallowEqual.js +0 -6
  176. package/lib/Accordion/Accordion.js +18 -42
  177. package/lib/Accordion/AccordionItem.js +18 -40
  178. package/lib/Accordion/__tests__/Accordion.spec.js +0 -3
  179. package/lib/Accordion/index.js +0 -3
  180. package/lib/Accordion/props/propTypes.js +0 -3
  181. package/lib/Animation/Animation.js +18 -38
  182. package/lib/Animation/__tests__/Animation.spec.js +7 -11
  183. package/lib/Animation/props/propTypes.js +0 -3
  184. package/lib/AppContainer/AppContainer.js +21 -56
  185. package/lib/AppContainer/AppContainer.module.css +2 -2
  186. package/lib/AppContainer/props/propTypes.js +0 -3
  187. package/lib/Avatar/Avatar.js +38 -78
  188. package/lib/Avatar/Avatar.module.css +18 -18
  189. package/lib/Avatar/__tests__/Avatar.spec.js +0 -44
  190. package/lib/Avatar/props/propTypes.js +0 -3
  191. package/lib/AvatarTeam/AvatarTeam.js +30 -52
  192. package/lib/AvatarTeam/AvatarTeam.module.css +35 -35
  193. package/lib/AvatarTeam/__tests__/AvatarTeam.spec.js +0 -13
  194. package/lib/AvatarTeam/props/propTypes.js +0 -3
  195. package/lib/Button/Button.js +20 -31
  196. package/lib/Button/css/Button.module.css +70 -70
  197. package/lib/Button/css/cssJSLogic.js +17 -18
  198. package/lib/Button/index.js +0 -3
  199. package/lib/Button/props/defaultProps.js +0 -2
  200. package/lib/Button/props/propTypes.js +0 -3
  201. package/lib/Buttongroup/Buttongroup.js +12 -32
  202. package/lib/Buttongroup/Buttongroup.module.css +15 -14
  203. package/lib/Buttongroup/__test__/Buttongroup.spec.js +0 -10
  204. package/lib/Buttongroup/props/propTypes.js +0 -3
  205. package/lib/Card/Card.js +46 -102
  206. package/lib/Card/__tests__/Card.spec.js +1 -10
  207. package/lib/Card/index.js +0 -4
  208. package/lib/Card/props/propTypes.js +0 -3
  209. package/lib/CheckBox/CheckBox.js +47 -71
  210. package/lib/CheckBox/CheckBox.module.css +15 -15
  211. package/lib/CheckBox/__tests__/CheckBox.spec.js +0 -3
  212. package/lib/CheckBox/props/propTypes.js +0 -3
  213. package/lib/DateTime/CalendarView.js +42 -82
  214. package/lib/DateTime/DateTime.js +155 -239
  215. package/lib/DateTime/DateTime.module.css +39 -39
  216. package/lib/DateTime/DateTimePopupFooter.js +8 -31
  217. package/lib/DateTime/DateTimePopupHeader.js +17 -48
  218. package/lib/DateTime/DateWidget.js +250 -352
  219. package/lib/DateTime/DateWidget.module.css +5 -5
  220. package/lib/DateTime/DaysRow.js +5 -27
  221. package/lib/DateTime/Time.js +32 -73
  222. package/lib/DateTime/YearView.js +28 -77
  223. package/lib/DateTime/YearView.module.css +15 -15
  224. package/lib/DateTime/__tests__/CalendarView.spec.js +5 -13
  225. package/lib/DateTime/__tests__/DateTime.spec.js +37 -51
  226. package/lib/DateTime/__tests__/DateWidget.spec.js +8 -10
  227. package/lib/DateTime/common.js +0 -6
  228. package/lib/DateTime/constants.js +0 -1
  229. package/lib/DateTime/dateFormatUtils/dateFormat.js +122 -184
  230. package/lib/DateTime/dateFormatUtils/dateFormats.js +1 -0
  231. package/lib/DateTime/dateFormatUtils/dayChange.js +7 -14
  232. package/lib/DateTime/dateFormatUtils/index.js +16 -74
  233. package/lib/DateTime/dateFormatUtils/monthChange.js +9 -19
  234. package/lib/DateTime/dateFormatUtils/timeChange.js +22 -54
  235. package/lib/DateTime/dateFormatUtils/yearChange.js +11 -22
  236. package/lib/DateTime/index.js +0 -2
  237. package/lib/DateTime/objectUtils.js +20 -24
  238. package/lib/DateTime/props/propTypes.js +1 -11
  239. package/lib/DateTime/typeChecker.js +0 -4
  240. package/lib/DateTime/validator.js +10 -73
  241. package/lib/DropBox/DropBox.js +12 -36
  242. package/lib/DropBox/DropBoxElement/DropBoxElement.js +44 -63
  243. package/lib/DropBox/DropBoxElement/css/DropBoxElement.module.css +85 -79
  244. package/lib/DropBox/DropBoxElement/css/cssJSLogic.js +35 -42
  245. package/lib/DropBox/DropBoxElement/props/propTypes.js +1 -4
  246. package/lib/DropBox/DropBoxElement/useDropboxPosCalc.js +9 -14
  247. package/lib/DropBox/__tests__/DropBox.spec.js +4 -8
  248. package/lib/DropBox/css/DropBox.module.css +6 -6
  249. package/lib/DropBox/css/cssJSLogic.js +1 -3
  250. package/lib/DropBox/props/defaultProps.js +4 -8
  251. package/lib/DropBox/props/propTypes.js +4 -10
  252. package/lib/DropDown/DropDown.js +8 -52
  253. package/lib/DropDown/DropDown.module.css +2 -2
  254. package/lib/DropDown/DropDownHeading.js +20 -39
  255. package/lib/DropDown/DropDownHeading.module.css +6 -6
  256. package/lib/DropDown/DropDownItem.js +20 -42
  257. package/lib/DropDown/DropDownItem.module.css +12 -12
  258. package/lib/DropDown/DropDownSearch.js +17 -40
  259. package/lib/DropDown/DropDownSearch.module.css +3 -3
  260. package/lib/DropDown/DropDownSeparator.js +4 -24
  261. package/lib/DropDown/DropDownSeparator.module.css +2 -2
  262. package/lib/DropDown/__tests__/DropDown.spec.js +9 -15
  263. package/lib/DropDown/__tests__/DropDownItem.spec.js +4 -9
  264. package/lib/DropDown/__tests__/DropDownSearch.spec.js +0 -3
  265. package/lib/DropDown/index.js +0 -9
  266. package/lib/DropDown/props/propTypes.js +4 -6
  267. package/lib/Heading/Heading.js +15 -37
  268. package/lib/Heading/Heading.module.css +2 -2
  269. package/lib/Heading/props/propTypes.js +0 -3
  270. package/lib/Label/Label.js +19 -39
  271. package/lib/Label/Label.module.css +5 -5
  272. package/lib/Label/__tests__/Label.spec.js +1 -14
  273. package/lib/Label/props/propTypes.js +0 -3
  274. package/lib/Layout/Box.js +11 -31
  275. package/lib/Layout/Container.js +10 -29
  276. package/lib/Layout/Layout.module.css +15 -15
  277. package/lib/Layout/__tests__/Box.spec.js +49 -65
  278. package/lib/Layout/__tests__/Container.spec.js +50 -67
  279. package/lib/Layout/index.js +0 -3
  280. package/lib/Layout/props/propTypes.js +0 -3
  281. package/lib/Layout/utils.js +0 -10
  282. package/lib/ListItem/ListContainer.js +27 -48
  283. package/lib/ListItem/ListItem.js +45 -69
  284. package/lib/ListItem/ListItem.module.css +38 -38
  285. package/lib/ListItem/ListItemWithAvatar.js +48 -75
  286. package/lib/ListItem/ListItemWithCheckBox.js +39 -64
  287. package/lib/ListItem/ListItemWithIcon.js +44 -68
  288. package/lib/ListItem/ListItemWithRadio.js +41 -65
  289. package/lib/ListItem/index.js +0 -7
  290. package/lib/ListItem/props/propTypes.js +4 -6
  291. package/lib/Modal/Modal.js +10 -45
  292. package/lib/Modal/props/propTypes.js +0 -3
  293. package/lib/MultiSelect/AdvancedGroupMultiSelect.js +166 -294
  294. package/lib/MultiSelect/AdvancedMultiSelect.js +125 -202
  295. package/lib/MultiSelect/EmptyState.js +24 -45
  296. package/lib/MultiSelect/MultiSelect.js +206 -323
  297. package/lib/MultiSelect/MultiSelect.module.css +31 -31
  298. package/lib/MultiSelect/MultiSelectHeader.js +8 -30
  299. package/lib/MultiSelect/MultiSelectWithAvatar.js +63 -105
  300. package/lib/MultiSelect/SelectedOptions.js +17 -43
  301. package/lib/MultiSelect/SelectedOptions.module.css +5 -5
  302. package/lib/MultiSelect/Suggestions.js +32 -64
  303. package/lib/MultiSelect/__tests__/MultiSelect.spec.js +75 -86
  304. package/lib/MultiSelect/index.js +0 -5
  305. package/lib/MultiSelect/props/defaultProps.js +0 -2
  306. package/lib/MultiSelect/props/propTypes.js +0 -5
  307. package/lib/PopOver/PopOver.js +49 -95
  308. package/lib/PopOver/__tests__/PopOver.spec.js +1 -4
  309. package/lib/PopOver/index.js +0 -4
  310. package/lib/PopOver/props/propTypes.js +0 -3
  311. package/lib/Popup/Popup.js +81 -158
  312. package/lib/Popup/__tests__/Popup.spec.js +8 -43
  313. package/lib/Popup/viewPort.js +14 -28
  314. package/lib/Provider/AvatarSize.js +0 -4
  315. package/lib/Provider/Config.js +0 -2
  316. package/lib/Provider/CssProvider.js +0 -4
  317. package/lib/Provider/IdProvider.js +6 -17
  318. package/lib/Provider/LibraryContext.js +15 -35
  319. package/lib/Provider/LibraryContextInit.js +0 -4
  320. package/lib/Provider/NumberGenerator/NumberGenerator.js +15 -44
  321. package/lib/Provider/ZindexProvider.js +3 -15
  322. package/lib/Provider/index.js +0 -5
  323. package/lib/Radio/Radio.js +38 -61
  324. package/lib/Radio/Radio.module.css +9 -9
  325. package/lib/Radio/__tests__/Radiospec.js +5 -9
  326. package/lib/Radio/props/propTypes.js +0 -3
  327. package/lib/Responsive/CustomResponsive.js +29 -73
  328. package/lib/Responsive/RefWrapper.js +11 -17
  329. package/lib/Responsive/ResizeComponent.js +36 -62
  330. package/lib/Responsive/ResizeObserver.js +10 -24
  331. package/lib/Responsive/Responsive.js +30 -80
  332. package/lib/Responsive/index.js +0 -4
  333. package/lib/Responsive/props/propTypes.js +0 -3
  334. package/lib/Responsive/sizeObservers.js +17 -53
  335. package/lib/Responsive/utils/index.js +3 -11
  336. package/lib/Responsive/utils/shallowCompare.js +2 -11
  337. package/lib/Responsive/windowResizeObserver.js +0 -8
  338. package/lib/ResponsiveDropBox/ResponsiveDropBox.js +17 -45
  339. package/lib/ResponsiveDropBox/ResponsiveDropBox.module.css +2 -2
  340. package/lib/ResponsiveDropBox/props/propTypes.js +0 -3
  341. package/lib/Ribbon/Ribbon.js +13 -33
  342. package/lib/Ribbon/Ribbon.module.css +48 -46
  343. package/lib/Ribbon/__tests__/Ribbon.spec.js +0 -22
  344. package/lib/Ribbon/props/propTypes.js +0 -3
  345. package/lib/RippleEffect/RippleEffect.js +10 -18
  346. package/lib/RippleEffect/props/propTypes.js +0 -3
  347. package/lib/Select/GroupSelect.js +130 -229
  348. package/lib/Select/Select.js +209 -290
  349. package/lib/Select/Select.module.css +23 -23
  350. package/lib/Select/SelectWithAvatar.js +56 -102
  351. package/lib/Select/SelectWithIcon.js +76 -132
  352. package/lib/Select/__tests__/Select.spec.js +91 -133
  353. package/lib/Select/index.js +0 -5
  354. package/lib/Select/props/defaultProps.js +4 -5
  355. package/lib/Select/props/propTypes.js +0 -4
  356. package/lib/Stencils/Stencils.js +10 -29
  357. package/lib/Stencils/Stencils.module.css +11 -11
  358. package/lib/Stencils/__tests__/Stencils.spec.js +0 -12
  359. package/lib/Stencils/props/propTypes.js +0 -3
  360. package/lib/Switch/Switch.js +34 -57
  361. package/lib/Switch/Switch.module.css +23 -23
  362. package/lib/Switch/props/propTypes.js +0 -3
  363. package/lib/Tab/Tab.js +27 -40
  364. package/lib/Tab/Tab.module.css +14 -14
  365. package/lib/Tab/TabContent.js +5 -12
  366. package/lib/Tab/TabContentWrapper.js +6 -13
  367. package/lib/Tab/TabWrapper.js +19 -37
  368. package/lib/Tab/Tabs.js +91 -171
  369. package/lib/Tab/Tabs.module.css +30 -37
  370. package/lib/Tab/__tests__/Tab.spec.js +58 -67
  371. package/lib/Tab/__tests__/TabContent.spec.js +6 -10
  372. package/lib/Tab/__tests__/TabContentWrapper.spec.js +20 -28
  373. package/lib/Tab/__tests__/TabWrapper.spec.js +0 -12
  374. package/lib/Tab/__tests__/Tabs.spec.js +39 -53
  375. package/lib/Tab/index.js +0 -6
  376. package/lib/Tab/props/propTypes.js +0 -3
  377. package/lib/Tag/Tag.js +43 -72
  378. package/lib/Tag/Tag.module.css +25 -25
  379. package/lib/Tag/__tests__/Tag.spec.js +8 -14
  380. package/lib/Tag/props/propTypes.js +0 -3
  381. package/lib/TextBox/TextBox.js +59 -85
  382. package/lib/TextBox/TextBox.module.css +9 -9
  383. package/lib/TextBox/__tests__/TextBox.spec.js +4 -14
  384. package/lib/TextBox/props/propTypes.js +4 -6
  385. package/lib/TextBoxIcon/TextBoxIcon.js +52 -79
  386. package/lib/TextBoxIcon/TextBoxIcon.module.css +7 -7
  387. package/lib/TextBoxIcon/__tests__/TextBoxIcon.spec.js +5 -14
  388. package/lib/TextBoxIcon/props/propTypes.js +0 -3
  389. package/lib/Textarea/Textarea.js +29 -54
  390. package/lib/Textarea/Textarea.module.css +21 -21
  391. package/lib/Textarea/__tests__/Textarea.spec.js +2 -14
  392. package/lib/Textarea/props/propTypes.js +0 -3
  393. package/lib/Tooltip/Tooltip.js +31 -94
  394. package/lib/Tooltip/Tooltip.module.css +5 -5
  395. package/lib/Tooltip/__tests__/Tooltip.spec.js +3 -24
  396. package/lib/Tooltip/props/propTypes.js +0 -3
  397. package/lib/VelocityAnimation/VelocityAnimation/VelocityAnimation.js +16 -40
  398. package/lib/VelocityAnimation/VelocityAnimation/props/propTypes.js +0 -3
  399. package/lib/VelocityAnimation/VelocityAnimationGroup/VelocityAnimationGroup.js +25 -53
  400. package/lib/VelocityAnimation/VelocityAnimationGroup/props/propTypes.js +0 -3
  401. package/lib/VelocityAnimation/index.js +0 -3
  402. package/lib/common/animation.module.css +8 -8
  403. package/lib/common/avatarsizes.module.css +16 -16
  404. package/lib/common/basicReset.module.css +3 -3
  405. package/lib/common/common.module.css +24 -24
  406. package/lib/common/customscroll.module.css +2 -2
  407. package/lib/css.js +0 -40
  408. package/lib/deprecated/AdvancedMultiSelect.module.css +18 -18
  409. package/lib/deprecated/PortalLayer/PortalLayer.js +23 -46
  410. package/lib/deprecated/PortalLayer/props/propTypes.js +0 -3
  411. package/lib/index.js +0 -57
  412. package/lib/semantic/Button/Button.js +22 -42
  413. package/lib/semantic/Button/props/propTypes.js +0 -3
  414. package/lib/semantic/Button/semanticButton.module.css +1 -1
  415. package/lib/semantic/index.js +0 -2
  416. package/lib/utils/Common.js +25 -109
  417. package/lib/utils/ContextOptimizer.js +10 -16
  418. package/lib/utils/__tests__/constructFullName.spec.js +0 -1
  419. package/lib/utils/__tests__/debounce.spec.js +2 -3
  420. package/lib/utils/__tests__/getInitial.spec.js +0 -1
  421. package/lib/utils/constructFullName.js +4 -13
  422. package/lib/utils/css/compileClassNames.js +0 -6
  423. package/lib/utils/css/mergeStyle.js +8 -11
  424. package/lib/utils/css/utils.js +0 -8
  425. package/lib/utils/datetime/common.js +5 -32
  426. package/lib/utils/debounce.js +1 -6
  427. package/lib/utils/dropDownUtils.js +59 -175
  428. package/lib/utils/dummyFunction.js +0 -2
  429. package/lib/utils/getHTMLFontSize.js +0 -1
  430. package/lib/utils/getInitial.js +0 -6
  431. package/lib/utils/index.js +0 -4
  432. package/lib/utils/scrollTo.js +0 -2
  433. package/lib/utils/shallowEqual.js +0 -8
  434. package/package.json +1 -1
@@ -32,47 +32,44 @@ exports.mapValues = mapValues;
32
32
  exports.merge = merge;
33
33
  exports.parseDecimal = void 0;
34
34
  exports.remConvert = remConvert;
35
- exports.throttle = exports.stopAllEventPropagation = exports.scrollTo = void 0;
36
-
35
+ exports.stopAllEventPropagation = exports.scrollTo = void 0;
36
+ exports.stopPropagation = stopPropagation;
37
+ exports.throttle = void 0;
37
38
  var _viewPort = _interopRequireDefault(require("../Popup/viewPort"));
38
-
39
39
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; }
40
-
41
40
  //$Id$//
42
- var frameRelativeRects = _viewPort["default"].frameRelativeRects;
43
41
 
42
+ var frameRelativeRects = _viewPort["default"].frameRelativeRects;
44
43
  var cs = function cs(classArr) {
45
44
  return classArr.filter(function (name) {
46
45
  return name;
47
46
  }).join(' ');
48
47
  };
49
-
50
48
  exports.cs = cs;
51
-
52
49
  var parseDecimal = function parseDecimal(val) {
53
50
  return val ? parseFloat(val) : 0;
54
51
  };
55
-
56
52
  exports.parseDecimal = parseDecimal;
57
-
58
53
  var getTotalDimension = function getTotalDimension(elem, align) {
59
54
  var style = window.getComputedStyle(elem);
60
55
  return align === 'vertical' ? elem.offsetWidth + parseDecimal(style.marginLeft) + parseDecimal(style.marginRight) : elem.offsetHeight + parseDecimal(style.marginTop) + parseDecimal(style.marginBottom);
61
56
  };
62
-
63
57
  exports.getTotalDimension = getTotalDimension;
64
-
58
+ function stopPropagation(e) {
59
+ e && e.stopPropagation && e.stopPropagation();
60
+ }
61
+ ;
65
62
  var stopAllEventPropagation = function stopAllEventPropagation(e) {
66
63
  e.stopPropagation && e.stopPropagation();
67
64
  e.nativeEvent && e.nativeEvent.stopImmediatePropagation && e.nativeEvent.stopImmediatePropagation();
68
65
  };
69
-
70
66
  exports.stopAllEventPropagation = stopAllEventPropagation;
71
-
72
67
  function cancelBubblingEffect(e) {
73
68
  e && e.stopPropagation && e.stopPropagation();
74
69
  e && e.nativeEvent && e.nativeEvent.stopImmediatePropagation && e.nativeEvent.stopImmediatePropagation();
75
- } // export function getCommentsDetails(
70
+ }
71
+
72
+ // export function getCommentsDetails(
76
73
  // commentIds = [],
77
74
  // comments = {},
78
75
  // agents = {}
@@ -86,7 +83,6 @@ function cancelBubblingEffect(e) {
86
83
  // );
87
84
  // }
88
85
 
89
-
90
86
  function encodeForHtml(str) {
91
87
  if (/<|>|&|"|'|\\/g.test(str) == true) {
92
88
  str = str.replace(/&/g, '&amp;');
@@ -96,10 +92,8 @@ function encodeForHtml(str) {
96
92
  str = str.replace(/\\/g, '&#x5c;');
97
93
  str = str.replace(/'/g, '&#39;');
98
94
  }
99
-
100
95
  return str;
101
96
  }
102
-
103
97
  function getListOfDetails() {
104
98
  var Obj = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
105
99
  var fn = arguments.length > 1 ? arguments[1] : undefined;
@@ -108,11 +102,9 @@ function getListOfDetails() {
108
102
  return fn(Obj[id]);
109
103
  });
110
104
  }
111
-
112
105
  function capitalize() {
113
106
  var value = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : '';
114
107
  var newValue = '';
115
-
116
108
  for (var i = 0; i < value.length; i++) {
117
109
  if (i == 0) {
118
110
  newValue += value[i].toUpperCase();
@@ -120,44 +112,34 @@ function capitalize() {
120
112
  newValue += value[i].toLowerCase();
121
113
  }
122
114
  }
123
-
124
115
  return newValue;
125
116
  }
126
-
127
117
  function bind() {
128
118
  var _this = this;
129
-
130
119
  for (var _len = arguments.length, handlers = new Array(_len), _key = 0; _key < _len; _key++) {
131
120
  handlers[_key] = arguments[_key];
132
121
  }
133
-
134
122
  handlers.forEach(function (handler) {
135
123
  _this[handler] = _this[handler].bind(_this);
136
124
  });
137
125
  }
138
-
139
126
  function getFullName() {
140
127
  var firstName = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : '';
141
128
  var lastName = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : '';
142
129
  var fullName = '';
143
-
144
130
  if (firstName !== null && firstName !== '') {
145
131
  fullName = firstName;
146
132
  }
147
-
148
133
  if (lastName !== null && lastName !== '') {
149
134
  fullName = "".concat(fullName).concat(lastName);
150
135
  }
151
-
152
136
  return fullName;
153
137
  }
154
-
155
138
  function getStringifiedOutputForJson() {
156
139
  var input = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
157
140
  var keys = Object.keys(input);
158
141
  var modifiedInput = keys.reduce(function (curr, next) {
159
142
  var values = input[next] || [];
160
-
161
143
  if (values.length) {
162
144
  var valueList = values.reduce(function (curr, next) {
163
145
  curr.push(next.id);
@@ -166,32 +148,27 @@ function getStringifiedOutputForJson() {
166
148
  curr[next] = valueList;
167
149
  return curr;
168
150
  }
169
-
170
151
  return curr;
171
152
  }, {});
172
153
  return JSON.stringify(modifiedInput);
173
154
  }
174
-
175
155
  function mapValues(obj, fn) {
176
156
  return obj && Object.keys(obj).reduce(function (res, key) {
177
157
  res[key] = fn(key, obj[key]);
178
158
  return res;
179
159
  }, {}) || obj;
180
160
  }
181
-
182
161
  function filterValue(obj, val) {
183
162
  var result;
184
163
  var ids = obj ? Object.keys(obj) : [];
185
164
  ids.forEach(function (key) {
186
165
  var value = obj[key] || {};
187
-
188
166
  if (value.name === val && !value.isCustomField) {
189
167
  result = value.id;
190
168
  }
191
169
  });
192
170
  return result;
193
171
  }
194
-
195
172
  function merge() {
196
173
  var oldObj = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
197
174
  var newObj = arguments.length > 1 ? arguments[1] : undefined;
@@ -201,78 +178,60 @@ function merge() {
201
178
  return res;
202
179
  }, copyOfOld);
203
180
  }
204
-
205
181
  function formatValue() {
206
182
  var values = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : [];
207
183
  var valueField = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 'id';
208
184
  var textField = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : 'name';
209
185
  return values && values.map(function (value) {
210
186
  var formattedValue = value;
211
-
212
187
  if (typeof value === 'string' || typeof value === 'number') {
213
188
  formattedValue = {};
214
189
  formattedValue[valueField] = value;
215
190
  formattedValue[textField] = value;
216
191
  }
217
-
218
192
  return formattedValue;
219
193
  }) || [];
220
194
  }
221
-
222
195
  function bytesToSize(bytes) {
223
196
  bytes = parseInt(bytes, 10);
224
197
  var sizes = ['B', 'KB', 'MB', 'GB', 'TB'];
225
-
226
198
  if (bytes === 0) {
227
199
  return '0 Byte';
228
200
  }
229
-
230
201
  var i = parseInt(Math.floor(Math.log(bytes) / Math.log(1024)), 10);
231
202
  return "".concat(Math.round(bytes / Math.pow(1024, i), 2), " ").concat(sizes[i]);
232
203
  }
233
-
234
204
  function getMemSize(bytes) {
235
205
  var size = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : !0;
236
206
  var thresh = size ? 1000 : 1024;
237
-
238
207
  if (Math.abs(bytes) < thresh) {
239
208
  return "".concat(bytes, " B");
240
209
  }
241
-
242
210
  var units = size ? ['kB', 'MB', 'GB', 'TB', 'PB', 'EB', 'ZB', 'YB'] : ['KiB', 'MiB', 'GiB', 'TiB', 'PiB', 'EiB', 'ZiB', 'YiB'],
243
- i = -1;
244
-
211
+ i = -1;
245
212
  do {
246
213
  bytes /= thresh, ++i;
247
214
  } while (Math.abs(bytes) >= thresh && i < units.length - 1);
248
-
249
215
  {
250
216
  return "".concat(bytes.toFixed(1), " ").concat(units[i]);
251
217
  }
252
218
  }
253
-
254
219
  function checkIsImageFile(fileName) {
255
220
  fileName = fileName || '';
256
221
  return /jpeg|jpg|png|gif|bmp|tiff|tif|ico/gi.test(fileName.substr(fileName.lastIndexOf('.') + 1));
257
222
  }
258
-
259
223
  function getI18NValue(key, values) {
260
224
  if (typeof i18n === 'undefined' || key === '' || typeof key === 'undefined') {
261
225
  return key;
262
226
  }
263
-
264
227
  var i18nStr = i18n[key];
265
-
266
228
  if (i18nStr === undefined) {
267
229
  return key;
268
230
  }
269
-
270
231
  i18nStr = replaceI18NValuesWithRegex(i18nStr, values);
271
232
  return unescapeUnicode(i18nStr);
272
233
  }
273
-
274
234
  global.getI18NValue = getI18NValue;
275
-
276
235
  function replaceI18NValuesWithRegex(i18nStr, values) {
277
236
  if (typeof values !== 'undefined') {
278
237
  if (Array.isArray(values)) {
@@ -283,30 +242,24 @@ function replaceI18NValuesWithRegex(i18nStr, values) {
283
242
  i18nStr = i18nStr.replace(new RegExp('\\{0\\}', 'g'), values);
284
243
  }
285
244
  }
286
-
287
245
  return i18nStr;
288
246
  }
289
-
290
247
  function unescapeUnicode(str) {
291
248
  return str.replace(/\\u([a-fA-F0-9]{4})/g, function (g, m1) {
292
249
  return String.fromCharCode(parseInt(m1, 16));
293
250
  });
294
251
  }
295
-
296
252
  function getPortalName(portalList, portalId) {
297
253
  return portalList && portalList.reduce(function (res, portal) {
298
254
  if (portal.orgId === portalId) {
299
255
  return portal.orgName;
300
256
  }
301
-
302
257
  return res;
303
258
  }, null);
304
259
  }
305
-
306
260
  function getFullDateString(fullDateObj) {
307
261
  var dateStr = '';
308
262
  var monthArr = ['Jan', 'Feb', 'Mar', 'Apr', 'May', 'Jun', 'Jul', 'Aug', 'Sep', 'Oct', 'Nov', 'Dec'];
309
-
310
263
  if (fullDateObj.toDateString() == new Date().toDateString()) {
311
264
  dateStr = format12Hour(fullDateObj);
312
265
  } else {
@@ -316,26 +269,21 @@ function getFullDateString(fullDateObj) {
316
269
  var time = format12Hour(fullDateObj);
317
270
  dateStr = "".concat(month, " ").concat(date, " ").concat(year, " ").concat(time);
318
271
  }
319
-
320
272
  return dateStr;
321
273
  }
322
-
323
274
  function format12Hour(date) {
324
275
  var hours = date.getHours();
325
276
  var minutes = date.getMinutes();
326
277
  var ampm = hours >= 12 ? 'pm' : 'am';
327
278
  hours %= 12;
328
279
  hours = hours ? hours : 12; // the hour '0' should be '12'
329
-
330
280
  minutes = minutes < 10 ? "0".concat(minutes) : minutes;
331
281
  var strTime = "".concat(hours, ":").concat(minutes, " ").concat(ampm);
332
282
  return strTime;
333
283
  }
334
-
335
284
  function getDateOnly(fullDateObj) {
336
285
  var dateStr = '';
337
286
  var monthArr = ['Jan', 'Feb', 'Mar', 'Apr', 'May', 'Jun', 'Jul', 'Aug', 'Sep', 'Oct', 'Nov', 'Dec'];
338
-
339
287
  if (fullDateObj.toDateString() == new Date().toDateString()) {
340
288
  dateStr = 'Today';
341
289
  } else {
@@ -344,21 +292,17 @@ function getDateOnly(fullDateObj) {
344
292
  var date = fullDateObj.getDate();
345
293
  dateStr = "".concat(month, " ").concat(date, " ").concat(year);
346
294
  }
347
-
348
295
  return dateStr;
349
296
  }
350
-
351
297
  function doAfterScrollEnd(element, callback) {
352
298
  var scrollTop = element.scrollTop;
353
299
  var clientHeight = element.clientHeight;
354
300
  var scrollHeight = element.scrollHeight;
355
301
  var scrollPercent = scrollTop / (scrollHeight - clientHeight) * 100;
356
-
357
302
  if (scrollPercent > 80) {
358
303
  callback && callback();
359
304
  }
360
305
  }
361
-
362
306
  var debounce = function debounce(func, wait) {
363
307
  var interval;
364
308
  return function (e) {
@@ -366,19 +310,15 @@ var debounce = function debounce(func, wait) {
366
310
  interval = setTimeout(func.bind(undefined, e), wait);
367
311
  };
368
312
  };
369
-
370
313
  exports.debounce = debounce;
371
314
  var timerId;
372
-
373
315
  var throttle = function throttle(func, wait) {
374
316
  for (var _len2 = arguments.length, args = new Array(_len2 > 2 ? _len2 - 2 : 0), _key2 = 2; _key2 < _len2; _key2++) {
375
317
  args[_key2 - 2] = arguments[_key2];
376
318
  }
377
-
378
319
  if (timerId) {
379
320
  return;
380
321
  }
381
-
382
322
  timerId = setTimeout(function () {
383
323
  try {
384
324
  func.apply(void 0, args);
@@ -387,63 +327,47 @@ var throttle = function throttle(func, wait) {
387
327
  }
388
328
  }, wait);
389
329
  };
390
-
391
330
  exports.throttle = throttle;
392
-
393
331
  var scrollTo = function scrollTo(suggestionContainer, selSuggestion) {
394
332
  if (!suggestionContainer || !selSuggestion) {
395
333
  return;
396
334
  }
397
-
398
335
  var _ref = frameRelativeRects(selSuggestion, suggestionContainer) || {},
399
- rectGap = _ref.rectGap;
400
-
336
+ rectGap = _ref.rectGap;
401
337
  var _ref2 = rectGap || {},
402
- _ref2$top = _ref2.top,
403
- top = _ref2$top === void 0 ? 0 : _ref2$top,
404
- _ref2$bottom = _ref2.bottom,
405
- bottom = _ref2$bottom === void 0 ? 0 : _ref2$bottom;
406
-
338
+ _ref2$top = _ref2.top,
339
+ top = _ref2$top === void 0 ? 0 : _ref2$top,
340
+ _ref2$bottom = _ref2.bottom,
341
+ bottom = _ref2$bottom === void 0 ? 0 : _ref2$bottom;
407
342
  if (top < 0 && bottom < 0) {
408
343
  return;
409
344
  }
410
-
411
345
  var isElementInViewPort = top < 0 || bottom < 0 ? false : true;
412
346
  var suggestionContainerScrollTop = suggestionContainer.scrollTop;
413
347
  suggestionContainer.scrollTop = !isElementInViewPort ? bottom < 0 ? suggestionContainer.scrollTop + Math.abs(bottom) : top < 0 ? suggestionContainer.scrollTop - Math.abs(top) : suggestionContainerScrollTop : suggestionContainerScrollTop;
414
348
  };
415
-
416
349
  exports.scrollTo = scrollTo;
417
-
418
350
  var getIsEmptyValue = function getIsEmptyValue(value) {
419
351
  return typeof value === 'string' ? value.trim() ? false : true : value === 0 || value ? false : true;
420
352
  };
421
-
422
353
  exports.getIsEmptyValue = getIsEmptyValue;
423
-
424
354
  function remConvert(val) {
425
355
  var baseValue = parseFloat(window.getComputedStyle(document.body).getPropertyValue('font-size')).toFixed(4);
426
356
  return (val / baseValue).toPrecision(4);
427
357
  }
428
-
429
358
  function isDescendant(parent, child) {
430
359
  var node = child.parentNode;
431
-
432
360
  while (node !== null) {
433
361
  if (node === parent) {
434
362
  return true;
435
363
  }
436
-
437
364
  node = node.parentNode;
438
365
  }
439
-
440
366
  return false;
441
367
  }
442
-
443
368
  function getElementSpace(elementRef) {
444
369
  var neededSpace = 0,
445
- availableInsideSpace = 0;
446
-
370
+ availableInsideSpace = 0;
447
371
  if (elementRef) {
448
372
  var getStyle = window.getComputedStyle(elementRef);
449
373
  var margin = parseFloat(getStyle.marginLeft) + parseFloat(getStyle.marginRight);
@@ -452,13 +376,11 @@ function getElementSpace(elementRef) {
452
376
  neededSpace = width + margin;
453
377
  availableInsideSpace = width - padding;
454
378
  }
455
-
456
379
  return {
457
380
  neededSpace: neededSpace,
458
381
  availableInsideSpace: availableInsideSpace
459
382
  };
460
383
  }
461
-
462
384
  function getSearchString() {
463
385
  var charachers = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : '';
464
386
  return (charachers || '').toString().toLowerCase(); //.replace(/\s+/g, '');
@@ -466,37 +388,31 @@ function getSearchString() {
466
388
 
467
389
  function findScrollEnd(element) {
468
390
  var _ref3 = element || {},
469
- scrollHeight = _ref3.scrollHeight,
470
- scrollTop = _ref3.scrollTop,
471
- offsetHeight = _ref3.offsetHeight,
472
- clientHeight = _ref3.clientHeight;
473
-
391
+ scrollHeight = _ref3.scrollHeight,
392
+ scrollTop = _ref3.scrollTop,
393
+ offsetHeight = _ref3.offsetHeight,
394
+ clientHeight = _ref3.clientHeight;
474
395
  var isElementScrollable = scrollHeight > clientHeight;
475
-
476
396
  if (isElementScrollable) {
477
397
  if (scrollHeight <= Math.ceil(scrollTop + offsetHeight)) {
478
398
  return true;
479
399
  }
480
- } // else {
400
+ }
401
+ // else {
402
+
481
403
  // throw 'Is scroll not present in this element';
482
404
  // }
483
-
484
-
485
405
  return false;
486
406
  }
487
-
488
407
  function isTextSelected() {
489
408
  var selectedText = '';
490
-
491
409
  if (window.getSelection) {
492
410
  selectedText = window.getSelection().toString();
493
411
  } else if (document.getSelection) {
494
412
  selectedText = document.getSelection().toString();
495
413
  }
496
-
497
414
  if (selectedText !== '') {
498
415
  return true;
499
416
  }
500
-
501
417
  return false;
502
418
  }
@@ -4,44 +4,38 @@ Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
6
  exports.ContextOptimizer = ContextOptimizer;
7
-
8
7
  var _react = require("react");
9
-
10
8
  var _propTypes = _interopRequireDefault(require("prop-types"));
11
-
12
9
  var _shallowEqual = _interopRequireDefault(require("./shallowEqual"));
13
-
14
10
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; }
15
-
16
11
  /** ** Libraries *** */
12
+
17
13
  // Please use this component with children as inline function for force this components rerender when parent rerender regardless of reason
18
14
  // Because below componends only rerender when children or calculation are changed, unless no changes will update below
15
+
19
16
  // this component logic based on return same children reference to stop rerender.
20
17
  // Think before change logic
18
+
21
19
  // eslint-disable-next-line import/prefer-default-export
22
20
  function ContextOptimizer(props) {
23
21
  var Context = props.Context,
24
- renderF = props.children,
25
- calculation = props.calculation;
22
+ renderF = props.children,
23
+ calculation = props.calculation;
26
24
  var contextData = (0, _react.useContext)(Context);
27
25
  var data = calculation(contextData);
28
-
29
26
  var _useRef = (0, _react.useRef)({
30
- children: null,
31
- data: null,
32
- renderF: null
33
- }),
34
- local = _useRef.current;
35
-
27
+ children: null,
28
+ data: null,
29
+ renderF: null
30
+ }),
31
+ local = _useRef.current;
36
32
  if (!(0, _shallowEqual["default"])(data, local.data) || local.renderF !== renderF) {
37
33
  local.children = renderF(data);
38
34
  local.data = data;
39
35
  local.renderF = renderF;
40
36
  }
41
-
42
37
  return local.children;
43
38
  }
44
-
45
39
  ContextOptimizer.propTypes = {
46
40
  calculation: _propTypes["default"].func.isRequired,
47
41
  children: _propTypes["default"].func.isRequired,
@@ -1,7 +1,6 @@
1
1
  "use strict";
2
2
 
3
3
  var _constructFullName = require("../constructFullName");
4
-
5
4
  describe('constructFullName specification', function () {
6
5
  it('firstname, lastname pattern', function () {
7
6
  expect((0, _constructFullName.constructFullNameByPattern)('A', 'Vimalesan', ['FIRST_NAME', 'LAST_NAME'])).toEqual('A Vimalesan');
@@ -1,7 +1,6 @@
1
1
  "use strict";
2
2
 
3
3
  var _debounce = require("../debounce");
4
-
5
4
  describe('debounce specification', function () {
6
5
  beforeEach(function () {
7
6
  jest.useFakeTimers();
@@ -9,8 +8,8 @@ describe('debounce specification', function () {
9
8
  it('should call immediate', function () {
10
9
  var mockfn = jest.fn();
11
10
  var dMockfn = (0, _debounce.debounce)(mockfn, 1000, true);
12
- dMockfn(); //expect(setTimeout).toHaveBeenCalledTimes(1);
13
-
11
+ dMockfn();
12
+ //expect(setTimeout).toHaveBeenCalledTimes(1);
14
13
  expect(mockfn.mock.calls.length).toBe(1);
15
14
  });
16
15
  it('should call two times but it invoke multiple times', function () {
@@ -1,7 +1,6 @@
1
1
  "use strict";
2
2
 
3
3
  var _getInitial = require("../getInitial");
4
-
5
4
  describe('getInitial specification', function () {
6
5
  it('first name alone', function () {
7
6
  expect((0, _getInitial.getInitial)('vimalesan')).toEqual('V');
@@ -4,28 +4,19 @@ Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
6
  exports.constructFullNameByPattern = constructFullNameByPattern;
7
-
8
7
  function _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest(); }
9
-
10
8
  function _nonIterableRest() { throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
11
-
12
9
  function _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === "string") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return Array.from(o); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }
13
-
14
- function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) { arr2[i] = arr[i]; } return arr2; }
15
-
16
- function _iterableToArrayLimit(arr, i) { var _i = arr == null ? null : typeof Symbol !== "undefined" && arr[Symbol.iterator] || arr["@@iterator"]; if (_i == null) return; var _arr = []; var _n = true; var _d = false; var _s, _e; try { for (_i = _i.call(arr); !(_n = (_s = _i.next()).done); _n = true) { _arr.push(_s.value); if (i && _arr.length === i) break; } } catch (err) { _d = true; _e = err; } finally { try { if (!_n && _i["return"] != null) _i["return"](); } finally { if (_d) throw _e; } } return _arr; }
17
-
10
+ function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) arr2[i] = arr[i]; return arr2; }
11
+ function _iterableToArrayLimit(arr, i) { var _i = null == arr ? null : "undefined" != typeof Symbol && arr[Symbol.iterator] || arr["@@iterator"]; if (null != _i) { var _s, _e, _x, _r, _arr = [], _n = !0, _d = !1; try { if (_x = (_i = _i.call(arr)).next, 0 === i) { if (Object(_i) !== _i) return; _n = !1; } else for (; !(_n = (_s = _x.call(_i)).done) && (_arr.push(_s.value), _arr.length !== i); _n = !0); } catch (err) { _d = !0, _e = err; } finally { try { if (!_n && null != _i["return"] && (_r = _i["return"](), Object(_r) !== _r)) return; } finally { if (_d) throw _e; } } return _arr; } }
18
12
  function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }
19
-
20
13
  function constructFullName(firstName, lastName) {
21
14
  return "".concat(firstName ? "".concat(firstName).concat(lastName ? ' ' : '') : '').concat(lastName ? lastName : '');
22
15
  }
23
-
24
16
  function constructFullNameByPattern(firstName, lastName, namePattern) {
25
17
  var _namePattern = _slicedToArray(namePattern, 2),
26
- name0 = _namePattern[0],
27
- name1 = _namePattern[1];
28
-
18
+ name0 = _namePattern[0],
19
+ name1 = _namePattern[1];
29
20
  if (name0 === 'FIRST_NAME' && name1 === 'LAST_NAME') {
30
21
  return constructFullName(firstName, lastName);
31
22
  } else if (name0 === 'LAST_NAME' && name1 === 'FIRST_NAME') {
@@ -4,13 +4,10 @@ Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
6
  exports["default"] = compileClassNames;
7
-
8
7
  var _utils = require("./utils");
9
-
10
8
  var collectClassNames = function collectClassNames(processedClassNameList) {
11
9
  for (var index = 0; index < (arguments.length <= 1 ? 0 : arguments.length - 1); index++) {
12
10
  var classInfo = index + 1 < 1 || arguments.length <= index + 1 ? undefined : arguments[index + 1];
13
-
14
11
  if (!classInfo) {
15
12
  continue;
16
13
  } else if ((0, _utils.isDataTypeOf)(classInfo, _utils.dataTypes.object)) {
@@ -22,14 +19,11 @@ var collectClassNames = function collectClassNames(processedClassNameList) {
22
19
  }
23
20
  }
24
21
  };
25
-
26
22
  function compileClassNames() {
27
23
  var resultClassNameList = [];
28
-
29
24
  for (var _len = arguments.length, classinfoList = new Array(_len), _key = 0; _key < _len; _key++) {
30
25
  classinfoList[_key] = arguments[_key];
31
26
  }
32
-
33
27
  collectClassNames.apply(void 0, [resultClassNameList].concat(classinfoList));
34
28
  return resultClassNameList.filter(function (a) {
35
29
  return a !== '';