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

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (431) hide show
  1. package/es/Accordion/Accordion.js +7 -3
  2. package/es/Accordion/AccordionItem.js +4 -2
  3. package/es/Animation/Animation.js +3 -3
  4. package/es/AppContainer/AppContainer.js +13 -5
  5. package/es/AppContainer/AppContainer.module.css +2 -2
  6. package/es/Avatar/Avatar.js +23 -11
  7. package/es/Avatar/Avatar.module.css +18 -18
  8. package/es/AvatarTeam/AvatarTeam.js +3 -3
  9. package/es/AvatarTeam/AvatarTeam.module.css +35 -35
  10. package/es/Button/Button.js +4 -3
  11. package/es/Button/css/Button.module.css +70 -70
  12. package/es/Buttongroup/Buttongroup.js +3 -3
  13. package/es/Buttongroup/Buttongroup.module.css +14 -15
  14. package/es/Card/Card.js +21 -10
  15. package/es/CheckBox/CheckBox.js +5 -3
  16. package/es/CheckBox/CheckBox.module.css +15 -15
  17. package/es/DateTime/CalendarView.js +32 -20
  18. package/es/DateTime/DateTime.js +67 -6
  19. package/es/DateTime/DateTime.module.css +39 -39
  20. package/es/DateTime/DateTimePopupFooter.js +4 -2
  21. package/es/DateTime/DateTimePopupHeader.js +8 -2
  22. package/es/DateTime/DateWidget.js +98 -35
  23. package/es/DateTime/DateWidget.module.css +5 -5
  24. package/es/DateTime/DaysRow.js +4 -2
  25. package/es/DateTime/Time.js +10 -2
  26. package/es/DateTime/YearView.js +28 -4
  27. package/es/DateTime/YearView.module.css +15 -15
  28. package/es/DateTime/__tests__/CalendarView.spec.js +1 -0
  29. package/es/DateTime/__tests__/DateTime.spec.js +1 -0
  30. package/es/DateTime/__tests__/DateWidget.spec.js +2 -3
  31. package/es/DateTime/common.js +3 -0
  32. package/es/DateTime/constants.js +1 -0
  33. package/es/DateTime/dateFormatUtils/dateFormat.js +63 -30
  34. package/es/DateTime/dateFormatUtils/dateFormats.js +0 -1
  35. package/es/DateTime/dateFormatUtils/dayChange.js +13 -4
  36. package/es/DateTime/dateFormatUtils/index.js +32 -2
  37. package/es/DateTime/dateFormatUtils/monthChange.js +8 -0
  38. package/es/DateTime/dateFormatUtils/timeChange.js +22 -6
  39. package/es/DateTime/dateFormatUtils/yearChange.js +11 -2
  40. package/es/DateTime/objectUtils.js +14 -20
  41. package/es/DateTime/typeChecker.js +3 -0
  42. package/es/DateTime/validator.js +58 -6
  43. package/es/DropBox/DropBox.js +6 -2
  44. package/es/DropBox/DropBoxElement/DropBoxElement.js +7 -0
  45. package/es/DropBox/DropBoxElement/css/DropBoxElement.module.css +76 -76
  46. package/es/DropBox/DropBoxElement/css/cssJSLogic.js +5 -3
  47. package/es/DropBox/DropBoxElement/useDropboxPosCalc.js +3 -0
  48. package/es/DropBox/css/DropBox.module.css +6 -6
  49. package/es/DropBox/props/defaultProps.js +1 -2
  50. package/es/DropBox/props/propTypes.js +1 -2
  51. package/es/DropDown/DropDown.js +8 -4
  52. package/es/DropDown/DropDown.module.css +2 -2
  53. package/es/DropDown/DropDownHeading.js +4 -5
  54. package/es/DropDown/DropDownHeading.module.css +6 -6
  55. package/es/DropDown/DropDownItem.js +6 -0
  56. package/es/DropDown/DropDownItem.module.css +12 -12
  57. package/es/DropDown/DropDownSearch.js +4 -0
  58. package/es/DropDown/DropDownSearch.module.css +3 -3
  59. package/es/DropDown/DropDownSeparator.js +1 -0
  60. package/es/DropDown/DropDownSeparator.module.css +2 -2
  61. package/es/DropDown/__tests__/DropDown.spec.js +1 -2
  62. package/es/Heading/Heading.js +2 -3
  63. package/es/Heading/Heading.module.css +2 -2
  64. package/es/Label/Label.js +2 -3
  65. package/es/Label/Label.module.css +5 -5
  66. package/es/Layout/Box.js +13 -0
  67. package/es/Layout/Container.js +12 -1
  68. package/es/Layout/Layout.module.css +15 -15
  69. package/es/Layout/index.js +1 -2
  70. package/es/ListItem/ListContainer.js +8 -3
  71. package/es/ListItem/ListItem.js +9 -3
  72. package/es/ListItem/ListItem.module.css +38 -38
  73. package/es/ListItem/ListItemWithAvatar.js +9 -3
  74. package/es/ListItem/ListItemWithCheckBox.js +7 -2
  75. package/es/ListItem/ListItemWithIcon.js +8 -3
  76. package/es/ListItem/ListItemWithRadio.js +7 -3
  77. package/es/Modal/Modal.js +28 -11
  78. package/es/MultiSelect/AdvancedGroupMultiSelect.js +89 -13
  79. package/es/MultiSelect/AdvancedMultiSelect.js +32 -9
  80. package/es/MultiSelect/EmptyState.js +2 -0
  81. package/es/MultiSelect/MultiSelect.js +99 -32
  82. package/es/MultiSelect/MultiSelect.module.css +31 -31
  83. package/es/MultiSelect/MultiSelectHeader.js +3 -0
  84. package/es/MultiSelect/MultiSelectWithAvatar.js +12 -6
  85. package/es/MultiSelect/SelectedOptions.js +6 -3
  86. package/es/MultiSelect/SelectedOptions.module.css +5 -5
  87. package/es/MultiSelect/Suggestions.js +7 -3
  88. package/es/MultiSelect/__tests__/MultiSelect.spec.js +4 -6
  89. package/es/MultiSelect/props/propTypes.js +2 -0
  90. package/es/PopOver/PopOver.js +18 -2
  91. package/es/PopOver/__tests__/PopOver.spec.js +2 -1
  92. package/es/Popup/Popup.js +77 -24
  93. package/es/Popup/__tests__/Popup.spec.js +17 -5
  94. package/es/Popup/viewPort.js +16 -4
  95. package/es/Provider/IdProvider.js +10 -5
  96. package/es/Provider/LibraryContext.js +6 -4
  97. package/es/Provider/NumberGenerator/NumberGenerator.js +21 -7
  98. package/es/Provider/ZindexProvider.js +9 -2
  99. package/es/Radio/Radio.js +4 -2
  100. package/es/Radio/Radio.module.css +9 -9
  101. package/es/Responsive/CustomResponsive.js +30 -18
  102. package/es/Responsive/RefWrapper.js +6 -7
  103. package/es/Responsive/ResizeComponent.js +35 -25
  104. package/es/Responsive/ResizeObserver.js +26 -6
  105. package/es/Responsive/Responsive.js +34 -20
  106. package/es/Responsive/index.js +1 -3
  107. package/es/Responsive/sizeObservers.js +28 -7
  108. package/es/Responsive/utils/index.js +7 -5
  109. package/es/Responsive/utils/shallowCompare.js +7 -2
  110. package/es/Responsive/windowResizeObserver.js +7 -0
  111. package/es/ResponsiveDropBox/ResponsiveDropBox.js +4 -0
  112. package/es/ResponsiveDropBox/ResponsiveDropBox.module.css +2 -2
  113. package/es/Ribbon/Ribbon.js +3 -2
  114. package/es/Ribbon/Ribbon.module.css +46 -48
  115. package/es/RippleEffect/RippleEffect.js +1 -3
  116. package/es/Select/GroupSelect.js +58 -14
  117. package/es/Select/Select.js +79 -33
  118. package/es/Select/Select.module.css +23 -23
  119. package/es/Select/SelectWithAvatar.js +17 -4
  120. package/es/Select/SelectWithIcon.js +46 -5
  121. package/es/Select/__tests__/Select.spec.js +6 -8
  122. package/es/Select/props/propTypes.js +1 -0
  123. package/es/Stencils/Stencils.js +3 -3
  124. package/es/Stencils/Stencils.module.css +11 -11
  125. package/es/Switch/Switch.js +5 -3
  126. package/es/Switch/Switch.module.css +23 -23
  127. package/es/Tab/Tab.js +4 -4
  128. package/es/Tab/Tab.module.css +14 -14
  129. package/es/Tab/TabContent.js +1 -0
  130. package/es/Tab/TabContentWrapper.js +2 -0
  131. package/es/Tab/TabWrapper.js +5 -2
  132. package/es/Tab/Tabs.js +54 -7
  133. package/es/Tab/Tabs.module.css +22 -22
  134. package/es/Tab/__tests__/Tab.spec.js +1 -3
  135. package/es/Tab/__tests__/TabWrapper.spec.js +1 -0
  136. package/es/Tag/Tag.js +6 -3
  137. package/es/Tag/Tag.module.css +25 -25
  138. package/es/TextBox/TextBox.js +15 -3
  139. package/es/TextBox/TextBox.module.css +9 -9
  140. package/es/TextBox/__tests__/TextBox.spec.js +1 -4
  141. package/es/TextBoxIcon/TextBoxIcon.js +9 -2
  142. package/es/TextBoxIcon/TextBoxIcon.module.css +7 -7
  143. package/es/TextBoxIcon/__tests__/TextBoxIcon.spec.js +2 -7
  144. package/es/Textarea/Textarea.js +12 -3
  145. package/es/Textarea/Textarea.module.css +21 -21
  146. package/es/Textarea/__tests__/Textarea.spec.js +2 -2
  147. package/es/Tooltip/Tooltip.js +58 -14
  148. package/es/Tooltip/Tooltip.module.css +5 -5
  149. package/es/Tooltip/__tests__/Tooltip.spec.js +5 -0
  150. package/es/VelocityAnimation/VelocityAnimation/VelocityAnimation.js +3 -2
  151. package/es/VelocityAnimation/VelocityAnimationGroup/VelocityAnimationGroup.js +7 -5
  152. package/es/common/animation.module.css +8 -8
  153. package/es/common/avatarsizes.module.css +16 -16
  154. package/es/common/basicReset.module.css +3 -3
  155. package/es/common/common.module.css +24 -24
  156. package/es/common/customscroll.module.css +2 -2
  157. package/es/deprecated/AdvancedMultiSelect.module.css +18 -18
  158. package/es/deprecated/PortalLayer/PortalLayer.js +25 -20
  159. package/es/semantic/Button/Button.js +3 -2
  160. package/es/semantic/Button/semanticButton.module.css +1 -1
  161. package/es/utils/Common.js +54 -9
  162. package/es/utils/ContextOptimizer.js +4 -5
  163. package/es/utils/__tests__/debounce.spec.js +2 -2
  164. package/es/utils/constructFullName.js +2 -0
  165. package/es/utils/css/compileClassNames.js +5 -0
  166. package/es/utils/css/mergeStyle.js +7 -6
  167. package/es/utils/css/utils.js +1 -0
  168. package/es/utils/datetime/common.js +16 -5
  169. package/es/utils/debounce.js +5 -1
  170. package/es/utils/dropDownUtils.js +68 -11
  171. package/es/utils/getInitial.js +4 -0
  172. package/es/utils/shallowEqual.js +6 -0
  173. package/lib/Accordion/Accordion.js +42 -18
  174. package/lib/Accordion/AccordionItem.js +40 -18
  175. package/lib/Accordion/__tests__/Accordion.spec.js +3 -0
  176. package/lib/Accordion/index.js +3 -0
  177. package/lib/Accordion/props/propTypes.js +3 -0
  178. package/lib/Animation/Animation.js +38 -18
  179. package/lib/Animation/__tests__/Animation.spec.js +11 -7
  180. package/lib/Animation/props/propTypes.js +3 -0
  181. package/lib/AppContainer/AppContainer.js +56 -21
  182. package/lib/AppContainer/AppContainer.module.css +2 -2
  183. package/lib/AppContainer/props/propTypes.js +3 -0
  184. package/lib/Avatar/Avatar.js +78 -38
  185. package/lib/Avatar/Avatar.module.css +18 -18
  186. package/lib/Avatar/__tests__/Avatar.spec.js +44 -0
  187. package/lib/Avatar/props/propTypes.js +3 -0
  188. package/lib/AvatarTeam/AvatarTeam.js +52 -30
  189. package/lib/AvatarTeam/AvatarTeam.module.css +35 -35
  190. package/lib/AvatarTeam/__tests__/AvatarTeam.spec.js +13 -0
  191. package/lib/AvatarTeam/props/propTypes.js +3 -0
  192. package/lib/Button/Button.js +31 -20
  193. package/lib/Button/css/Button.module.css +70 -70
  194. package/lib/Button/css/cssJSLogic.js +18 -17
  195. package/lib/Button/index.js +3 -0
  196. package/lib/Button/props/defaultProps.js +2 -0
  197. package/lib/Button/props/propTypes.js +3 -0
  198. package/lib/Buttongroup/Buttongroup.js +32 -12
  199. package/lib/Buttongroup/Buttongroup.module.css +14 -15
  200. package/lib/Buttongroup/__test__/Buttongroup.spec.js +10 -0
  201. package/lib/Buttongroup/props/propTypes.js +3 -0
  202. package/lib/Card/Card.js +102 -46
  203. package/lib/Card/__tests__/Card.spec.js +10 -1
  204. package/lib/Card/index.js +4 -0
  205. package/lib/Card/props/propTypes.js +3 -0
  206. package/lib/CheckBox/CheckBox.js +71 -47
  207. package/lib/CheckBox/CheckBox.module.css +15 -15
  208. package/lib/CheckBox/__tests__/CheckBox.spec.js +3 -0
  209. package/lib/CheckBox/props/propTypes.js +3 -0
  210. package/lib/DateTime/CalendarView.js +82 -42
  211. package/lib/DateTime/DateTime.js +240 -156
  212. package/lib/DateTime/DateTime.module.css +39 -39
  213. package/lib/DateTime/DateTimePopupFooter.js +32 -9
  214. package/lib/DateTime/DateTimePopupHeader.js +49 -18
  215. package/lib/DateTime/DateWidget.js +353 -251
  216. package/lib/DateTime/DateWidget.module.css +5 -5
  217. package/lib/DateTime/DaysRow.js +28 -6
  218. package/lib/DateTime/Time.js +74 -33
  219. package/lib/DateTime/YearView.js +78 -29
  220. package/lib/DateTime/YearView.module.css +15 -15
  221. package/lib/DateTime/__tests__/CalendarView.spec.js +13 -5
  222. package/lib/DateTime/__tests__/DateTime.spec.js +51 -37
  223. package/lib/DateTime/__tests__/DateWidget.spec.js +10 -8
  224. package/lib/DateTime/common.js +6 -0
  225. package/lib/DateTime/constants.js +1 -0
  226. package/lib/DateTime/dateFormatUtils/dateFormat.js +184 -122
  227. package/lib/DateTime/dateFormatUtils/dateFormats.js +0 -1
  228. package/lib/DateTime/dateFormatUtils/dayChange.js +14 -7
  229. package/lib/DateTime/dateFormatUtils/index.js +74 -16
  230. package/lib/DateTime/dateFormatUtils/monthChange.js +19 -9
  231. package/lib/DateTime/dateFormatUtils/timeChange.js +55 -23
  232. package/lib/DateTime/dateFormatUtils/yearChange.js +22 -11
  233. package/lib/DateTime/index.js +2 -0
  234. package/lib/DateTime/objectUtils.js +24 -20
  235. package/lib/DateTime/props/propTypes.js +11 -1
  236. package/lib/DateTime/typeChecker.js +4 -0
  237. package/lib/DateTime/validator.js +73 -10
  238. package/lib/DropBox/DropBox.js +34 -10
  239. package/lib/DropBox/DropBoxElement/DropBoxElement.js +58 -37
  240. package/lib/DropBox/DropBoxElement/css/DropBoxElement.module.css +76 -76
  241. package/lib/DropBox/DropBoxElement/css/cssJSLogic.js +41 -33
  242. package/lib/DropBox/DropBoxElement/props/propTypes.js +3 -0
  243. package/lib/DropBox/DropBoxElement/useDropboxPosCalc.js +14 -9
  244. package/lib/DropBox/__tests__/DropBox.spec.js +6 -2
  245. package/lib/DropBox/css/DropBox.module.css +6 -6
  246. package/lib/DropBox/css/cssJSLogic.js +3 -1
  247. package/lib/DropBox/props/defaultProps.js +8 -4
  248. package/lib/DropBox/props/propTypes.js +10 -4
  249. package/lib/DropDown/DropDown.js +52 -8
  250. package/lib/DropDown/DropDown.module.css +2 -2
  251. package/lib/DropDown/DropDownHeading.js +39 -20
  252. package/lib/DropDown/DropDownHeading.module.css +6 -6
  253. package/lib/DropDown/DropDownItem.js +42 -20
  254. package/lib/DropDown/DropDownItem.module.css +12 -12
  255. package/lib/DropDown/DropDownSearch.js +40 -17
  256. package/lib/DropDown/DropDownSearch.module.css +3 -3
  257. package/lib/DropDown/DropDownSeparator.js +24 -4
  258. package/lib/DropDown/DropDownSeparator.module.css +2 -2
  259. package/lib/DropDown/__tests__/DropDown.spec.js +15 -9
  260. package/lib/DropDown/__tests__/DropDownItem.spec.js +9 -4
  261. package/lib/DropDown/__tests__/DropDownSearch.spec.js +3 -0
  262. package/lib/DropDown/index.js +9 -0
  263. package/lib/DropDown/props/propTypes.js +6 -4
  264. package/lib/Heading/Heading.js +37 -15
  265. package/lib/Heading/Heading.module.css +2 -2
  266. package/lib/Heading/props/propTypes.js +3 -0
  267. package/lib/Label/Label.js +40 -22
  268. package/lib/Label/Label.module.css +5 -5
  269. package/lib/Label/__tests__/Label.spec.js +14 -1
  270. package/lib/Label/props/propTypes.js +3 -0
  271. package/lib/Layout/Box.js +31 -11
  272. package/lib/Layout/Container.js +29 -10
  273. package/lib/Layout/Layout.module.css +15 -15
  274. package/lib/Layout/__tests__/Box.spec.js +65 -49
  275. package/lib/Layout/__tests__/Container.spec.js +67 -50
  276. package/lib/Layout/index.js +3 -0
  277. package/lib/Layout/props/propTypes.js +3 -0
  278. package/lib/Layout/utils.js +10 -0
  279. package/lib/ListItem/ListContainer.js +49 -28
  280. package/lib/ListItem/ListItem.js +70 -46
  281. package/lib/ListItem/ListItem.module.css +38 -38
  282. package/lib/ListItem/ListItemWithAvatar.js +76 -49
  283. package/lib/ListItem/ListItemWithCheckBox.js +64 -39
  284. package/lib/ListItem/ListItemWithIcon.js +69 -45
  285. package/lib/ListItem/ListItemWithRadio.js +65 -41
  286. package/lib/ListItem/index.js +7 -0
  287. package/lib/ListItem/props/propTypes.js +6 -4
  288. package/lib/Modal/Modal.js +46 -11
  289. package/lib/Modal/props/propTypes.js +3 -0
  290. package/lib/MultiSelect/AdvancedGroupMultiSelect.js +295 -167
  291. package/lib/MultiSelect/AdvancedMultiSelect.js +203 -125
  292. package/lib/MultiSelect/EmptyState.js +46 -25
  293. package/lib/MultiSelect/MultiSelect.js +324 -206
  294. package/lib/MultiSelect/MultiSelect.module.css +31 -31
  295. package/lib/MultiSelect/MultiSelectHeader.js +31 -9
  296. package/lib/MultiSelect/MultiSelectWithAvatar.js +106 -64
  297. package/lib/MultiSelect/SelectedOptions.js +44 -18
  298. package/lib/MultiSelect/SelectedOptions.module.css +5 -5
  299. package/lib/MultiSelect/Suggestions.js +65 -33
  300. package/lib/MultiSelect/__tests__/MultiSelect.spec.js +86 -75
  301. package/lib/MultiSelect/index.js +5 -0
  302. package/lib/MultiSelect/props/defaultProps.js +2 -0
  303. package/lib/MultiSelect/props/propTypes.js +5 -0
  304. package/lib/PopOver/PopOver.js +95 -49
  305. package/lib/PopOver/__tests__/PopOver.spec.js +4 -1
  306. package/lib/PopOver/index.js +4 -0
  307. package/lib/PopOver/props/propTypes.js +3 -0
  308. package/lib/Popup/Popup.js +159 -82
  309. package/lib/Popup/__tests__/Popup.spec.js +44 -9
  310. package/lib/Popup/viewPort.js +28 -14
  311. package/lib/Provider/AvatarSize.js +4 -0
  312. package/lib/Provider/Config.js +2 -0
  313. package/lib/Provider/CssProvider.js +4 -0
  314. package/lib/Provider/IdProvider.js +17 -6
  315. package/lib/Provider/LibraryContext.js +35 -15
  316. package/lib/Provider/LibraryContextInit.js +4 -0
  317. package/lib/Provider/NumberGenerator/NumberGenerator.js +44 -15
  318. package/lib/Provider/ZindexProvider.js +15 -3
  319. package/lib/Provider/index.js +5 -0
  320. package/lib/Radio/Radio.js +62 -39
  321. package/lib/Radio/Radio.module.css +9 -9
  322. package/lib/Radio/__tests__/Radiospec.js +9 -5
  323. package/lib/Radio/props/propTypes.js +3 -0
  324. package/lib/Responsive/CustomResponsive.js +73 -28
  325. package/lib/Responsive/RefWrapper.js +17 -11
  326. package/lib/Responsive/ResizeComponent.js +63 -39
  327. package/lib/Responsive/ResizeObserver.js +24 -10
  328. package/lib/Responsive/Responsive.js +81 -31
  329. package/lib/Responsive/index.js +4 -0
  330. package/lib/Responsive/props/propTypes.js +3 -0
  331. package/lib/Responsive/sizeObservers.js +53 -17
  332. package/lib/Responsive/utils/index.js +11 -3
  333. package/lib/Responsive/utils/shallowCompare.js +11 -2
  334. package/lib/Responsive/windowResizeObserver.js +8 -0
  335. package/lib/ResponsiveDropBox/ResponsiveDropBox.js +45 -17
  336. package/lib/ResponsiveDropBox/ResponsiveDropBox.module.css +2 -2
  337. package/lib/ResponsiveDropBox/props/propTypes.js +3 -0
  338. package/lib/Ribbon/Ribbon.js +34 -14
  339. package/lib/Ribbon/Ribbon.module.css +46 -48
  340. package/lib/Ribbon/__tests__/Ribbon.spec.js +22 -0
  341. package/lib/Ribbon/props/propTypes.js +3 -0
  342. package/lib/RippleEffect/RippleEffect.js +18 -10
  343. package/lib/RippleEffect/props/propTypes.js +3 -0
  344. package/lib/Select/GroupSelect.js +230 -131
  345. package/lib/Select/Select.js +291 -209
  346. package/lib/Select/Select.module.css +23 -23
  347. package/lib/Select/SelectWithAvatar.js +103 -57
  348. package/lib/Select/SelectWithIcon.js +133 -77
  349. package/lib/Select/__tests__/Select.spec.js +134 -92
  350. package/lib/Select/index.js +5 -0
  351. package/lib/Select/props/defaultProps.js +5 -4
  352. package/lib/Select/props/propTypes.js +4 -0
  353. package/lib/Stencils/Stencils.js +30 -11
  354. package/lib/Stencils/Stencils.module.css +11 -11
  355. package/lib/Stencils/__tests__/Stencils.spec.js +12 -0
  356. package/lib/Stencils/props/propTypes.js +3 -0
  357. package/lib/Switch/Switch.js +57 -34
  358. package/lib/Switch/Switch.module.css +23 -23
  359. package/lib/Switch/props/propTypes.js +3 -0
  360. package/lib/Tab/Tab.js +41 -28
  361. package/lib/Tab/Tab.module.css +14 -14
  362. package/lib/Tab/TabContent.js +12 -5
  363. package/lib/Tab/TabContentWrapper.js +13 -6
  364. package/lib/Tab/TabWrapper.js +37 -19
  365. package/lib/Tab/Tabs.js +172 -98
  366. package/lib/Tab/Tabs.module.css +22 -22
  367. package/lib/Tab/__tests__/Tab.spec.js +67 -58
  368. package/lib/Tab/__tests__/TabContent.spec.js +10 -6
  369. package/lib/Tab/__tests__/TabContentWrapper.spec.js +28 -20
  370. package/lib/Tab/__tests__/TabWrapper.spec.js +12 -0
  371. package/lib/Tab/__tests__/Tabs.spec.js +53 -39
  372. package/lib/Tab/index.js +6 -0
  373. package/lib/Tab/props/propTypes.js +3 -0
  374. package/lib/Tag/Tag.js +72 -43
  375. package/lib/Tag/Tag.module.css +25 -25
  376. package/lib/Tag/__tests__/Tag.spec.js +14 -8
  377. package/lib/Tag/props/propTypes.js +3 -0
  378. package/lib/TextBox/TextBox.js +86 -60
  379. package/lib/TextBox/TextBox.module.css +9 -9
  380. package/lib/TextBox/__tests__/TextBox.spec.js +14 -4
  381. package/lib/TextBox/props/propTypes.js +6 -4
  382. package/lib/TextBoxIcon/TextBoxIcon.js +79 -52
  383. package/lib/TextBoxIcon/TextBoxIcon.module.css +7 -7
  384. package/lib/TextBoxIcon/__tests__/TextBoxIcon.spec.js +14 -4
  385. package/lib/TextBoxIcon/props/propTypes.js +3 -0
  386. package/lib/Textarea/Textarea.js +55 -30
  387. package/lib/Textarea/Textarea.module.css +21 -21
  388. package/lib/Textarea/__tests__/Textarea.spec.js +14 -2
  389. package/lib/Textarea/props/propTypes.js +3 -0
  390. package/lib/Tooltip/Tooltip.js +94 -31
  391. package/lib/Tooltip/Tooltip.module.css +5 -5
  392. package/lib/Tooltip/__tests__/Tooltip.spec.js +24 -3
  393. package/lib/Tooltip/props/propTypes.js +3 -0
  394. package/lib/VelocityAnimation/VelocityAnimation/VelocityAnimation.js +40 -16
  395. package/lib/VelocityAnimation/VelocityAnimation/props/propTypes.js +3 -0
  396. package/lib/VelocityAnimation/VelocityAnimationGroup/VelocityAnimationGroup.js +53 -25
  397. package/lib/VelocityAnimation/VelocityAnimationGroup/props/propTypes.js +3 -0
  398. package/lib/VelocityAnimation/index.js +3 -0
  399. package/lib/common/animation.module.css +8 -8
  400. package/lib/common/avatarsizes.module.css +16 -16
  401. package/lib/common/basicReset.module.css +3 -3
  402. package/lib/common/common.module.css +24 -24
  403. package/lib/common/customscroll.module.css +2 -2
  404. package/lib/css.js +40 -0
  405. package/lib/deprecated/AdvancedMultiSelect.module.css +18 -18
  406. package/lib/deprecated/PortalLayer/PortalLayer.js +47 -24
  407. package/lib/deprecated/PortalLayer/props/propTypes.js +3 -0
  408. package/lib/index.js +57 -0
  409. package/lib/semantic/Button/Button.js +42 -22
  410. package/lib/semantic/Button/props/propTypes.js +3 -0
  411. package/lib/semantic/Button/semanticButton.module.css +1 -1
  412. package/lib/semantic/index.js +2 -0
  413. package/lib/utils/Common.js +108 -18
  414. package/lib/utils/ContextOptimizer.js +16 -10
  415. package/lib/utils/__tests__/constructFullName.spec.js +1 -0
  416. package/lib/utils/__tests__/debounce.spec.js +3 -2
  417. package/lib/utils/__tests__/getInitial.spec.js +1 -0
  418. package/lib/utils/constructFullName.js +13 -4
  419. package/lib/utils/css/compileClassNames.js +6 -0
  420. package/lib/utils/css/mergeStyle.js +10 -7
  421. package/lib/utils/css/utils.js +8 -0
  422. package/lib/utils/datetime/common.js +32 -5
  423. package/lib/utils/debounce.js +6 -1
  424. package/lib/utils/dropDownUtils.js +176 -60
  425. package/lib/utils/dummyFunction.js +2 -0
  426. package/lib/utils/getHTMLFontSize.js +1 -0
  427. package/lib/utils/getInitial.js +6 -0
  428. package/lib/utils/index.js +4 -0
  429. package/lib/utils/scrollTo.js +2 -0
  430. package/lib/utils/shallowEqual.js +8 -0
  431. package/package.json +1 -1
@@ -52,8 +52,8 @@
52
52
  .cboth::after {
53
53
  content: '.';
54
54
  display: block;
55
- font-size: 0;
56
- height: 0;
55
+ font-size: 0 ;
56
+ height: 0 ;
57
57
  line-height: 0;
58
58
  visibility: hidden;
59
59
  clear: both;
@@ -81,21 +81,21 @@
81
81
  .disabled::after,
82
82
  .readonly::after {
83
83
  position: absolute;
84
- top: 0;
85
- bottom: 0;
84
+ top: 0 ;
85
+ bottom: 0 ;
86
86
  z-index: 2;
87
87
  content: '';
88
88
  user-select: none;
89
89
  }
90
90
 
91
91
  [dir=ltr] .disable::after, [dir=ltr] .disabled::after, [dir=ltr] .readonly::after {
92
- left: 0;
93
- right: 0;
92
+ left: 0 ;
93
+ right: 0 ;
94
94
  }
95
95
 
96
96
  [dir=rtl] .disable::after, [dir=rtl] .disabled::after, [dir=rtl] .readonly::after {
97
- right: 0;
98
- left: 0;
97
+ right: 0 ;
98
+ left: 0 ;
99
99
  }
100
100
 
101
101
  .disabled, .readonly {
@@ -201,8 +201,8 @@
201
201
  -webkit-box-flex: 1;
202
202
  -ms-flex-positive: 1;
203
203
  flex-grow: 1;
204
- min-height: 0;
205
- min-width: 0;
204
+ min-height: 0 ;
205
+ min-width: 0 ;
206
206
  }
207
207
 
208
208
  .flexshrink {
@@ -213,7 +213,7 @@
213
213
  }
214
214
 
215
215
  .flexbasis {
216
- flex-basis: 0%;
216
+ flex-basis: 0% ;
217
217
  -webkit-flex-basis: 0%;
218
218
  -moz-flex-basis: 0%;
219
219
  -ms-flex-basis: 0%;
@@ -331,11 +331,11 @@
331
331
 
332
332
  /* --Width Props-- */
333
333
  .w100 {
334
- width: 100%;
334
+ width: 100% ;
335
335
  }
336
336
 
337
337
  .h100 {
338
- height: 100%;
338
+ height: 100% ;
339
339
  }
340
340
 
341
341
  .rounded {
@@ -378,15 +378,15 @@
378
378
  }
379
379
 
380
380
  .t50 {
381
- top: 50%;
381
+ top: 50% ;
382
382
  }
383
383
 
384
384
  [dir=ltr] .l50 {
385
- left: 50%;
385
+ left: 50% ;
386
386
  }
387
387
 
388
388
  [dir=rtl] .l50 {
389
- right: 50%;
389
+ right: 50% ;
390
390
  }
391
391
 
392
392
  [dir=ltr] .middle {
@@ -405,15 +405,15 @@
405
405
 
406
406
  .middleBoth {
407
407
  composes: middle;
408
- top: 50%;
408
+ top: 50% ;
409
409
  }
410
410
 
411
411
  [dir=ltr] .middleBoth {
412
- left: 50%;
412
+ left: 50% ;
413
413
  }
414
414
 
415
415
  [dir=rtl] .middleBoth {
416
- right: 50%;
416
+ right: 50% ;
417
417
  }
418
418
 
419
419
  .middleY {
@@ -466,7 +466,7 @@
466
466
  content: '';
467
467
  vertical-align: middle;
468
468
  display: inline-block;
469
- height: 100%;
469
+ height: 100% ;
470
470
  }
471
471
 
472
472
  .wbreak {
@@ -515,11 +515,11 @@
515
515
  }
516
516
 
517
517
  .fitContWidth {
518
- width: fit-content;
519
- width: -moz-fit-content;
518
+ width: fit-content ;
519
+ width: undefined ;
520
520
  }
521
521
 
522
522
  .fitContHeight {
523
- height: fit-content;
524
- height: -moz-fit-content;
523
+ height: fit-content ;
524
+ height: undefined ;
525
525
  }
@@ -40,8 +40,8 @@
40
40
  .scroll::-webkit-scrollbar-button,
41
41
  .scroll ::-webkit-scrollbar-button {
42
42
  display: none;
43
- width: 0;
44
- height: 0;
43
+ width: 0 ;
44
+ height: 0 ;
45
45
  }
46
46
  [dir=ltr] .scroll::-webkit-scrollbar-track:vertical, [dir=ltr] .scroll ::-webkit-scrollbar-track:vertical {
47
47
  border-left: 1px solid transparent;
@@ -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 {
@@ -41,37 +41,37 @@
41
41
  border-bottom-color: var(--zdt_advancedmultiselect_dark_active_border);
42
42
  }
43
43
  [dir=ltr] .container.medium {
44
- padding: 0 34px 7px 0;
44
+ padding: 0 var(--zd_size34) var(--zd_size7) 0 ;
45
45
  }
46
46
  [dir=rtl] .container.medium {
47
- padding: 0 0 7px 34px;
47
+ padding: 0 0 var(--zd_size7) var(--zd_size34) ;
48
48
  }
49
49
  .container.xmedium {
50
- min-height: 30px;
50
+ min-height: var(--zd_size30) ;
51
51
  }
52
52
  [dir=ltr] .container.xmedium {
53
- padding: 0 34px 1px 0;
53
+ padding: 0 var(--zd_size34) var(--zd_size1) 0 ;
54
54
  }
55
55
  [dir=rtl] .container.xmedium {
56
- padding: 0 0 1px 34px;
56
+ padding: 0 0 var(--zd_size1) var(--zd_size34) ;
57
57
  }
58
58
 
59
59
  .delete {
60
60
  position: absolute;
61
- bottom: 0;
61
+ bottom: 0 ;
62
62
  color: var(--zdt_advancedmultiselect_delete_text);
63
- padding-bottom: 10px;
63
+ padding-bottom: var(--zd_size10) ;
64
64
  cursor: pointer;
65
65
  background-color: var(--zdt_advancedmultiselect_delete_bg);
66
66
  border: 0;
67
67
  }
68
68
 
69
69
  [dir=ltr] .delete {
70
- right: 15px;
70
+ right: var(--zd_size15) ;
71
71
  }
72
72
 
73
73
  [dir=rtl] .delete {
74
- left: 15px;
74
+ left: var(--zd_size15) ;
75
75
  }
76
76
 
77
77
  .delete:hover {
@@ -91,25 +91,25 @@
91
91
  }
92
92
 
93
93
  .small {
94
- max-height: 200px;
94
+ max-height: var(--zd_size200) ;
95
95
  }
96
96
 
97
97
  .medium {
98
- max-height: 350px;
98
+ max-height: var(--zd_size350) ;
99
99
  }
100
100
 
101
101
  .large {
102
- max-height: 400px;
102
+ max-height: var(--zd_size400) ;
103
103
  }
104
104
 
105
105
  .dropContainer {
106
106
  display: inline-block;
107
- max-width: 100%;
108
- margin-bottom: 5px;
107
+ max-width: 100% ;
108
+ margin-bottom: var(--zd_size5) ;
109
109
  }
110
110
 
111
111
  .dropPopup {
112
- font-size: 13px;
112
+ font-size: var(--zd_font_size13) ;
113
113
  }
114
114
 
115
115
  .dropPopup :global .toggleDropIcon {
@@ -117,11 +117,11 @@
117
117
  }
118
118
 
119
119
  .more {
120
- font-size: 14px;
120
+ font-size: var(--zd_font_size14) ;
121
121
  color: var(--zdt_advancedmultiselect_more_text);
122
122
  font-family: inherit;
123
123
  cursor: pointer;
124
- margin-top: 5px;
124
+ margin-top: var(--zd_size5) ;
125
125
  background-color: var(--zdt_advancedmultiselect_delete_bg);
126
126
  border: 0;
127
127
  }
@@ -1,7 +1,7 @@
1
1
  import React from 'react';
2
2
  import { propTypes } from './props/propTypes';
3
- import { defaultProps } from './props/defaultProps';
4
- //Components
3
+ import { defaultProps } from './props/defaultProps'; //Components
4
+
5
5
  import Modal from '../../Modal/Modal';
6
6
  let RefElement = /*#__PURE__*/React.forwardRef((props, ref) => {
7
7
  let {
@@ -28,20 +28,23 @@ export default class PortalLayer extends React.Component {
28
28
  this.updateState = this.updateState.bind(this);
29
29
  this.getState = this.getState.bind(this);
30
30
  }
31
+
31
32
  componentDidUpdate(prevProps) {
32
33
  let {
33
- isActive
34
- } = this.props,
35
- {
36
- isActive: prevActive
37
- } = prevProps;
34
+ isActive
35
+ } = this.props,
36
+ {
37
+ isActive: prevActive
38
+ } = prevProps;
38
39
  isActive = Boolean(isActive), prevActive = Boolean(prevActive);
40
+
39
41
  if (typeof isActive !== 'undefined' && isActive != prevActive && Boolean(this.state.isOpen) != isActive) {
40
42
  this.setState({
41
43
  isOpen: isActive
42
44
  });
43
45
  }
44
46
  }
47
+
45
48
  updateState(alertState) {
46
49
  if (typeof alertState === 'boolean') {
47
50
  this.setState({
@@ -51,9 +54,11 @@ export default class PortalLayer extends React.Component {
51
54
  this.setState(alertState);
52
55
  }
53
56
  }
57
+
54
58
  getState() {
55
59
  return Object.keys(this.state).length == 1 ? this.state.isOpen : this.state;
56
60
  }
61
+
57
62
  componentDidMount() {
58
63
  let {
59
64
  saveUpdateFunction,
@@ -63,19 +68,20 @@ export default class PortalLayer extends React.Component {
63
68
  saveUpdateFunction && saveUpdateFunction(this.updateState, name);
64
69
  saveGetFunction && saveGetFunction(this.getState, name);
65
70
  }
71
+
66
72
  render() {
67
73
  let {
68
- children,
69
- renderChildren,
70
- portalId,
71
- autoZIndexNeeded,
72
- isChildrenRestrictionNeeded
73
- } = this.props,
74
- {
75
- isOpen = false
76
- } = this.state;
74
+ children,
75
+ renderChildren,
76
+ portalId,
77
+ autoZIndexNeeded,
78
+ isChildrenRestrictionNeeded
79
+ } = this.props,
80
+ {
81
+ isOpen = false
82
+ } = this.state;
77
83
  let Element = children && children.type,
78
- elementProps = children && children.props;
84
+ elementProps = children && children.props;
79
85
  return /*#__PURE__*/React.createElement(Modal, {
80
86
  autoZIndexNeeded: autoZIndexNeeded,
81
87
  portalId: portalId,
@@ -88,11 +94,10 @@ export default class PortalLayer extends React.Component {
88
94
  isActive: isOpen
89
95
  }));
90
96
  }
97
+
91
98
  }
92
99
  PortalLayer.defaultProps = defaultProps;
93
- PortalLayer.propTypes = propTypes;
94
-
95
- // if (__DOCS__) {
100
+ PortalLayer.propTypes = propTypes; // if (__DOCS__) {
96
101
  // PortalLayer.docs = {
97
102
  // componentGroup: 'Atom',
98
103
  // folderName: 'Style Guide'
@@ -6,6 +6,7 @@ export default class Button extends React.Component {
6
6
  constructor(props) {
7
7
  super(props);
8
8
  }
9
+
9
10
  render() {
10
11
  const {
11
12
  value,
@@ -47,10 +48,10 @@ export default class Button extends React.Component {
47
48
  "data-title": title
48
49
  }, children ? children : text);
49
50
  }
51
+
50
52
  }
51
53
  Button.defaultProps = defaultProps;
52
- Button.propTypes = propTypes;
53
- // if (__DOCS__) {
54
+ Button.propTypes = propTypes; // if (__DOCS__) {
54
55
  // Button.docs = {
55
56
  // componentGroup: 'semantic',
56
57
  // folderName: 'DefaultComponents'
@@ -4,6 +4,6 @@
4
4
  color: inherit;
5
5
  border: inherit;
6
6
  background-color: inherit;
7
- padding: 0;
7
+ padding: 0 ;
8
8
  text-align: inherit;
9
9
  }
@@ -16,9 +16,7 @@ export const stopAllEventPropagation = e => {
16
16
  export function cancelBubblingEffect(e) {
17
17
  e && e.stopPropagation && e.stopPropagation();
18
18
  e && e.nativeEvent && e.nativeEvent.stopImmediatePropagation && e.nativeEvent.stopImmediatePropagation();
19
- }
20
-
21
- // export function getCommentsDetails(
19
+ } // export function getCommentsDetails(
22
20
  // commentIds = [],
23
21
  // comments = {},
24
22
  // agents = {}
@@ -41,6 +39,7 @@ export function encodeForHtml(str) {
41
39
  str = str.replace(/\\/g, '\');
42
40
  str = str.replace(/'/g, ''');
43
41
  }
42
+
44
43
  return str;
45
44
  }
46
45
  export function getListOfDetails() {
@@ -52,6 +51,7 @@ export function getListOfDetails() {
52
51
  export function capitalize() {
53
52
  let value = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : '';
54
53
  let newValue = '';
54
+
55
55
  for (let i = 0; i < value.length; i++) {
56
56
  if (i == 0) {
57
57
  newValue += value[i].toUpperCase();
@@ -59,12 +59,14 @@ export function capitalize() {
59
59
  newValue += value[i].toLowerCase();
60
60
  }
61
61
  }
62
+
62
63
  return newValue;
63
64
  }
64
65
  export function bind() {
65
66
  for (var _len = arguments.length, handlers = new Array(_len), _key = 0; _key < _len; _key++) {
66
67
  handlers[_key] = arguments[_key];
67
68
  }
69
+
68
70
  handlers.forEach(handler => {
69
71
  this[handler] = this[handler].bind(this);
70
72
  });
@@ -73,12 +75,15 @@ export function getFullName() {
73
75
  let firstName = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : '';
74
76
  let lastName = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : '';
75
77
  let fullName = '';
78
+
76
79
  if (firstName !== null && firstName !== '') {
77
80
  fullName = firstName;
78
81
  }
82
+
79
83
  if (lastName !== null && lastName !== '') {
80
84
  fullName = `${fullName}${lastName}`;
81
85
  }
86
+
82
87
  return fullName;
83
88
  }
84
89
  export function getStringifiedOutputForJson() {
@@ -86,6 +91,7 @@ export function getStringifiedOutputForJson() {
86
91
  const keys = Object.keys(input);
87
92
  const modifiedInput = keys.reduce((curr, next) => {
88
93
  const values = input[next] || [];
94
+
89
95
  if (values.length) {
90
96
  const valueList = values.reduce((curr, next) => {
91
97
  curr.push(next.id);
@@ -94,6 +100,7 @@ export function getStringifiedOutputForJson() {
94
100
  curr[next] = valueList;
95
101
  return curr;
96
102
  }
103
+
97
104
  return curr;
98
105
  }, {});
99
106
  return JSON.stringify(modifiedInput);
@@ -109,6 +116,7 @@ export function filterValue(obj, val) {
109
116
  const ids = obj ? Object.keys(obj) : [];
110
117
  ids.forEach(key => {
111
118
  const value = obj[key] || {};
119
+
112
120
  if (value.name === val && !value.isCustomField) {
113
121
  result = value.id;
114
122
  }
@@ -130,34 +138,42 @@ export function formatValue() {
130
138
  let textField = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : 'name';
131
139
  return values && values.map(value => {
132
140
  let formattedValue = value;
141
+
133
142
  if (typeof value === 'string' || typeof value === 'number') {
134
143
  formattedValue = {};
135
144
  formattedValue[valueField] = value;
136
145
  formattedValue[textField] = value;
137
146
  }
147
+
138
148
  return formattedValue;
139
149
  }) || [];
140
150
  }
141
151
  export function bytesToSize(bytes) {
142
152
  bytes = parseInt(bytes, 10);
143
153
  const sizes = ['B', 'KB', 'MB', 'GB', 'TB'];
154
+
144
155
  if (bytes === 0) {
145
156
  return '0 Byte';
146
157
  }
158
+
147
159
  const i = parseInt(Math.floor(Math.log(bytes) / Math.log(1024)), 10);
148
160
  return `${Math.round(bytes / Math.pow(1024, i), 2)} ${sizes[i]}`;
149
161
  }
150
162
  export function getMemSize(bytes) {
151
163
  let size = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : !0;
152
164
  const thresh = size ? 1000 : 1024;
165
+
153
166
  if (Math.abs(bytes) < thresh) {
154
167
  return `${bytes} B`;
155
168
  }
169
+
156
170
  let units = size ? ['kB', 'MB', 'GB', 'TB', 'PB', 'EB', 'ZB', 'YB'] : ['KiB', 'MiB', 'GiB', 'TiB', 'PiB', 'EiB', 'ZiB', 'YiB'],
157
- i = -1;
171
+ i = -1;
172
+
158
173
  do {
159
174
  bytes /= thresh, ++i;
160
175
  } while (Math.abs(bytes) >= thresh && i < units.length - 1);
176
+
161
177
  {
162
178
  return `${bytes.toFixed(1)} ${units[i]}`;
163
179
  }
@@ -166,18 +182,24 @@ export function checkIsImageFile(fileName) {
166
182
  fileName = fileName || '';
167
183
  return /jpeg|jpg|png|gif|bmp|tiff|tif|ico/gi.test(fileName.substr(fileName.lastIndexOf('.') + 1));
168
184
  }
185
+
169
186
  function getI18NValue(key, values) {
170
187
  if (typeof i18n === 'undefined' || key === '' || typeof key === 'undefined') {
171
188
  return key;
172
189
  }
190
+
173
191
  let i18nStr = i18n[key];
192
+
174
193
  if (i18nStr === undefined) {
175
194
  return key;
176
195
  }
196
+
177
197
  i18nStr = replaceI18NValuesWithRegex(i18nStr, values);
178
198
  return unescapeUnicode(i18nStr);
179
199
  }
200
+
180
201
  global.getI18NValue = getI18NValue;
202
+
181
203
  function replaceI18NValuesWithRegex(i18nStr, values) {
182
204
  if (typeof values !== 'undefined') {
183
205
  if (Array.isArray(values)) {
@@ -188,22 +210,27 @@ function replaceI18NValuesWithRegex(i18nStr, values) {
188
210
  i18nStr = i18nStr.replace(new RegExp('\\{0\\}', 'g'), values);
189
211
  }
190
212
  }
213
+
191
214
  return i18nStr;
192
215
  }
216
+
193
217
  function unescapeUnicode(str) {
194
218
  return str.replace(/\\u([a-fA-F0-9]{4})/g, (g, m1) => String.fromCharCode(parseInt(m1, 16)));
195
219
  }
220
+
196
221
  export function getPortalName(portalList, portalId) {
197
222
  return portalList && portalList.reduce((res, portal) => {
198
223
  if (portal.orgId === portalId) {
199
224
  return portal.orgName;
200
225
  }
226
+
201
227
  return res;
202
228
  }, null);
203
229
  }
204
230
  export function getFullDateString(fullDateObj) {
205
231
  let dateStr = '';
206
232
  const monthArr = ['Jan', 'Feb', 'Mar', 'Apr', 'May', 'Jun', 'Jul', 'Aug', 'Sep', 'Oct', 'Nov', 'Dec'];
233
+
207
234
  if (fullDateObj.toDateString() == new Date().toDateString()) {
208
235
  dateStr = format12Hour(fullDateObj);
209
236
  } else {
@@ -213,6 +240,7 @@ export function getFullDateString(fullDateObj) {
213
240
  const time = format12Hour(fullDateObj);
214
241
  dateStr = `${month} ${date} ${year} ${time}`;
215
242
  }
243
+
216
244
  return dateStr;
217
245
  }
218
246
  export function format12Hour(date) {
@@ -221,6 +249,7 @@ export function format12Hour(date) {
221
249
  const ampm = hours >= 12 ? 'pm' : 'am';
222
250
  hours %= 12;
223
251
  hours = hours ? hours : 12; // the hour '0' should be '12'
252
+
224
253
  minutes = minutes < 10 ? `0${minutes}` : minutes;
225
254
  const strTime = `${hours}:${minutes} ${ampm}`;
226
255
  return strTime;
@@ -228,6 +257,7 @@ export function format12Hour(date) {
228
257
  export function getDateOnly(fullDateObj) {
229
258
  let dateStr = '';
230
259
  const monthArr = ['Jan', 'Feb', 'Mar', 'Apr', 'May', 'Jun', 'Jul', 'Aug', 'Sep', 'Oct', 'Nov', 'Dec'];
260
+
231
261
  if (fullDateObj.toDateString() == new Date().toDateString()) {
232
262
  dateStr = 'Today';
233
263
  } else {
@@ -236,6 +266,7 @@ export function getDateOnly(fullDateObj) {
236
266
  const date = fullDateObj.getDate();
237
267
  dateStr = `${month} ${date} ${year}`;
238
268
  }
269
+
239
270
  return dateStr;
240
271
  }
241
272
  export function doAfterScrollEnd(element, callback) {
@@ -249,6 +280,7 @@ export function doAfterScrollEnd(element, callback) {
249
280
  scrollHeight
250
281
  } = element;
251
282
  const scrollPercent = scrollTop / (scrollHeight - clientHeight) * 100;
283
+
252
284
  if (scrollPercent > 80) {
253
285
  callback && callback();
254
286
  }
@@ -265,9 +297,11 @@ export const throttle = function (func, wait) {
265
297
  for (var _len2 = arguments.length, args = new Array(_len2 > 2 ? _len2 - 2 : 0), _key2 = 2; _key2 < _len2; _key2++) {
266
298
  args[_key2 - 2] = arguments[_key2];
267
299
  }
300
+
268
301
  if (timerId) {
269
302
  return;
270
303
  }
304
+
271
305
  timerId = setTimeout(() => {
272
306
  try {
273
307
  func(...args);
@@ -280,6 +314,7 @@ export const scrollTo = function (suggestionContainer, selSuggestion) {
280
314
  if (!suggestionContainer || !selSuggestion) {
281
315
  return;
282
316
  }
317
+
283
318
  const {
284
319
  rectGap
285
320
  } = frameRelativeRects(selSuggestion, suggestionContainer) || {};
@@ -287,9 +322,11 @@ export const scrollTo = function (suggestionContainer, selSuggestion) {
287
322
  top = 0,
288
323
  bottom = 0
289
324
  } = rectGap || {};
325
+
290
326
  if (top < 0 && bottom < 0) {
291
327
  return;
292
328
  }
329
+
293
330
  const isElementInViewPort = top < 0 || bottom < 0 ? false : true;
294
331
  const suggestionContainerScrollTop = suggestionContainer.scrollTop;
295
332
  suggestionContainer.scrollTop = !isElementInViewPort ? bottom < 0 ? suggestionContainer.scrollTop + Math.abs(bottom) : top < 0 ? suggestionContainer.scrollTop - Math.abs(top) : suggestionContainerScrollTop : suggestionContainerScrollTop;
@@ -301,17 +338,21 @@ export function remConvert(val) {
301
338
  }
302
339
  export function isDescendant(parent, child) {
303
340
  let node = child.parentNode;
341
+
304
342
  while (node !== null) {
305
343
  if (node === parent) {
306
344
  return true;
307
345
  }
346
+
308
347
  node = node.parentNode;
309
348
  }
349
+
310
350
  return false;
311
351
  }
312
352
  export function getElementSpace(elementRef) {
313
353
  let neededSpace = 0,
314
- availableInsideSpace = 0;
354
+ availableInsideSpace = 0;
355
+
315
356
  if (elementRef) {
316
357
  let getStyle = window.getComputedStyle(elementRef);
317
358
  let margin = parseFloat(getStyle.marginLeft) + parseFloat(getStyle.marginRight);
@@ -320,6 +361,7 @@ export function getElementSpace(elementRef) {
320
361
  neededSpace = width + margin;
321
362
  availableInsideSpace = width - padding;
322
363
  }
364
+
323
365
  return {
324
366
  neededSpace: neededSpace,
325
367
  availableInsideSpace: availableInsideSpace
@@ -329,7 +371,6 @@ export function getSearchString() {
329
371
  let charachers = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : '';
330
372
  return (charachers || '').toString().toLowerCase(); //.replace(/\s+/g, '');
331
373
  }
332
-
333
374
  export function findScrollEnd(element) {
334
375
  let {
335
376
  scrollHeight,
@@ -338,26 +379,30 @@ export function findScrollEnd(element) {
338
379
  clientHeight
339
380
  } = element || {};
340
381
  let isElementScrollable = scrollHeight > clientHeight;
382
+
341
383
  if (isElementScrollable) {
342
384
  if (scrollHeight <= Math.ceil(scrollTop + offsetHeight)) {
343
385
  return true;
344
386
  }
345
- }
346
- // else {
347
-
387
+ } // else {
348
388
  // throw 'Is scroll not present in this element';
349
389
  // }
390
+
391
+
350
392
  return false;
351
393
  }
352
394
  export function isTextSelected() {
353
395
  let selectedText = '';
396
+
354
397
  if (window.getSelection) {
355
398
  selectedText = window.getSelection().toString();
356
399
  } else if (document.getSelection) {
357
400
  selectedText = document.getSelection().toString();
358
401
  }
402
+
359
403
  if (selectedText !== '') {
360
404
  return true;
361
405
  }
406
+
362
407
  return false;
363
408
  }