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

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 (477) hide show
  1. package/README.md +1208 -1204
  2. package/es/Accordion/Accordion.js +7 -3
  3. package/es/Accordion/AccordionItem.js +4 -2
  4. package/es/Animation/Animation.js +3 -3
  5. package/es/AppContainer/AppContainer.js +13 -5
  6. package/es/AppContainer/AppContainer.module.css +18 -18
  7. package/es/Avatar/Avatar.js +32 -20
  8. package/es/Avatar/Avatar.module.css +175 -175
  9. package/es/Avatar/__tests__/__snapshots__/Avatar.spec.js.snap +288 -288
  10. package/es/AvatarTeam/AvatarTeam.js +10 -10
  11. package/es/AvatarTeam/AvatarTeam.module.css +189 -188
  12. package/es/AvatarTeam/__tests__/__snapshots__/AvatarTeam.spec.js.snap +226 -226
  13. package/es/Button/Button.js +8 -7
  14. package/es/Button/css/Button.module.css +525 -524
  15. package/es/Buttongroup/Buttongroup.js +4 -4
  16. package/es/Buttongroup/Buttongroup.module.css +105 -106
  17. package/es/Buttongroup/__test__/__snapshots__/Buttongroup.spec.js.snap +146 -146
  18. package/es/Card/Card.js +25 -14
  19. package/es/Card/Card.module.css +20 -20
  20. package/es/CheckBox/CheckBox.js +5 -3
  21. package/es/CheckBox/CheckBox.module.css +157 -157
  22. package/es/DateTime/CalendarView.js +32 -20
  23. package/es/DateTime/DateTime.js +68 -7
  24. package/es/DateTime/DateTime.module.css +235 -235
  25. package/es/DateTime/DateTimePopupFooter.js +4 -2
  26. package/es/DateTime/DateTimePopupHeader.js +8 -2
  27. package/es/DateTime/DateWidget.js +98 -35
  28. package/es/DateTime/DateWidget.module.css +38 -38
  29. package/es/DateTime/DaysRow.js +4 -2
  30. package/es/DateTime/Time.js +10 -2
  31. package/es/DateTime/YearView.js +28 -4
  32. package/es/DateTime/YearView.module.css +98 -98
  33. package/es/DateTime/__tests__/CalendarView.spec.js +1 -0
  34. package/es/DateTime/__tests__/DateTime.spec.js +1 -0
  35. package/es/DateTime/__tests__/DateWidget.spec.js +2 -3
  36. package/es/DateTime/common.js +3 -0
  37. package/es/DateTime/constants.js +1 -0
  38. package/es/DateTime/dateFormatUtils/dateFormat.js +63 -30
  39. package/es/DateTime/dateFormatUtils/dateFormats.js +0 -1
  40. package/es/DateTime/dateFormatUtils/dayChange.js +13 -4
  41. package/es/DateTime/dateFormatUtils/index.js +32 -2
  42. package/es/DateTime/dateFormatUtils/monthChange.js +8 -0
  43. package/es/DateTime/dateFormatUtils/timeChange.js +22 -6
  44. package/es/DateTime/dateFormatUtils/yearChange.js +11 -2
  45. package/es/DateTime/index.js +0 -0
  46. package/es/DateTime/objectUtils.js +14 -20
  47. package/es/DateTime/typeChecker.js +3 -0
  48. package/es/DateTime/validator.js +58 -6
  49. package/es/DropBox/DropBox.js +6 -2
  50. package/es/DropBox/DropBoxElement/DropBoxElement.js +7 -0
  51. package/es/DropBox/DropBoxElement/css/DropBoxElement.module.css +428 -427
  52. package/es/DropBox/DropBoxElement/css/cssJSLogic.js +5 -3
  53. package/es/DropBox/DropBoxElement/useDropboxPosCalc.js +3 -0
  54. package/es/DropBox/DropBoxPositionMapping.json +144 -144
  55. package/es/DropBox/css/DropBox.module.css +58 -58
  56. package/es/DropBox/props/defaultProps.js +1 -2
  57. package/es/DropBox/props/propTypes.js +1 -2
  58. package/es/DropDown/DropDown.js +8 -4
  59. package/es/DropDown/DropDown.module.css +5 -5
  60. package/es/DropDown/DropDownHeading.js +4 -5
  61. package/es/DropDown/DropDownHeading.module.css +53 -53
  62. package/es/DropDown/DropDownItem.js +6 -0
  63. package/es/DropDown/DropDownItem.module.css +94 -94
  64. package/es/DropDown/DropDownSearch.js +4 -0
  65. package/es/DropDown/DropDownSearch.module.css +14 -14
  66. package/es/DropDown/DropDownSeparator.js +1 -0
  67. package/es/DropDown/DropDownSeparator.module.css +7 -7
  68. package/es/DropDown/__tests__/DropDown.spec.js +1 -2
  69. package/es/Heading/Heading.js +2 -3
  70. package/es/Heading/Heading.module.css +4 -4
  71. package/es/Label/Label.js +4 -5
  72. package/es/Label/Label.module.css +52 -52
  73. package/es/Label/LabelColors.module.css +20 -20
  74. package/es/Label/__tests__/__snapshots__/Label.spec.js.snap +101 -101
  75. package/es/Layout/Box.js +13 -0
  76. package/es/Layout/Container.js +12 -1
  77. package/es/Layout/Layout.module.css +335 -335
  78. package/es/Layout/index.js +1 -2
  79. package/es/Layout/utils.js +0 -0
  80. package/es/ListItem/ListContainer.js +8 -3
  81. package/es/ListItem/ListItem.js +9 -3
  82. package/es/ListItem/ListItem.module.css +216 -216
  83. package/es/ListItem/ListItemWithAvatar.js +9 -3
  84. package/es/ListItem/ListItemWithCheckBox.js +7 -2
  85. package/es/ListItem/ListItemWithIcon.js +8 -3
  86. package/es/ListItem/ListItemWithRadio.js +7 -3
  87. package/es/Modal/Modal.js +28 -11
  88. package/es/MultiSelect/AdvancedGroupMultiSelect.js +94 -18
  89. package/es/MultiSelect/AdvancedMultiSelect.js +32 -9
  90. package/es/MultiSelect/EmptyState.js +2 -0
  91. package/es/MultiSelect/MultiSelect.js +104 -37
  92. package/es/MultiSelect/MultiSelect.module.css +206 -205
  93. package/es/MultiSelect/MultiSelectHeader.js +3 -0
  94. package/es/MultiSelect/MultiSelectWithAvatar.js +12 -6
  95. package/es/MultiSelect/SelectedOptions.js +6 -3
  96. package/es/MultiSelect/SelectedOptions.module.css +15 -15
  97. package/es/MultiSelect/Suggestions.js +7 -3
  98. package/es/MultiSelect/__tests__/MultiSelect.spec.js +4 -6
  99. package/es/MultiSelect/props/propTypes.js +2 -0
  100. package/es/PopOver/PopOver.js +18 -2
  101. package/es/PopOver/PopOver.module.css +8 -8
  102. package/es/PopOver/__tests__/PopOver.spec.js +2 -1
  103. package/es/Popup/Popup.js +77 -24
  104. package/es/Popup/PositionMapping.json +73 -73
  105. package/es/Popup/__tests__/Popup.spec.js +17 -5
  106. package/es/Popup/viewPort.js +16 -4
  107. package/es/Provider/IdProvider.js +10 -5
  108. package/es/Provider/LibraryContext.js +6 -4
  109. package/es/Provider/NumberGenerator/NumberGenerator.js +21 -7
  110. package/es/Provider/ZindexProvider.js +9 -2
  111. package/es/Radio/Radio.js +4 -2
  112. package/es/Radio/Radio.module.css +112 -112
  113. package/es/Responsive/CustomResponsive.js +30 -18
  114. package/es/Responsive/RefWrapper.js +6 -7
  115. package/es/Responsive/ResizeComponent.js +35 -25
  116. package/es/Responsive/ResizeObserver.js +26 -6
  117. package/es/Responsive/Responsive.js +34 -20
  118. package/es/Responsive/index.js +1 -3
  119. package/es/Responsive/sizeObservers.js +28 -7
  120. package/es/Responsive/utils/index.js +7 -5
  121. package/es/Responsive/utils/shallowCompare.js +7 -2
  122. package/es/Responsive/windowResizeObserver.js +7 -0
  123. package/es/ResponsiveDropBox/ResponsiveDropBox.js +4 -0
  124. package/es/ResponsiveDropBox/ResponsiveDropBox.module.css +6 -6
  125. package/es/Ribbon/Ribbon.js +3 -2
  126. package/es/Ribbon/Ribbon.module.css +454 -454
  127. package/es/Ribbon/__tests__/__snapshots__/Ribbon.spec.js.snap +163 -163
  128. package/es/RippleEffect/RippleEffect.js +1 -3
  129. package/es/RippleEffect/RippleEffect.module.css +92 -92
  130. package/es/Select/GroupSelect.js +58 -14
  131. package/es/Select/Select.js +79 -33
  132. package/es/Select/Select.module.css +108 -108
  133. package/es/Select/SelectWithAvatar.js +17 -4
  134. package/es/Select/SelectWithIcon.js +46 -5
  135. package/es/Select/__tests__/Select.spec.js +6 -8
  136. package/es/Select/props/propTypes.js +1 -0
  137. package/es/Stencils/Stencils.js +3 -3
  138. package/es/Stencils/Stencils.module.css +96 -96
  139. package/es/Stencils/__tests__/__snapshots__/Stencils.spec.js.snap +49 -49
  140. package/es/Switch/Switch.js +5 -3
  141. package/es/Switch/Switch.module.css +127 -127
  142. package/es/Tab/Tab.js +4 -4
  143. package/es/Tab/Tab.module.css +100 -100
  144. package/es/Tab/TabContent.js +1 -0
  145. package/es/Tab/TabContent.module.css +4 -4
  146. package/es/Tab/TabContentWrapper.js +2 -0
  147. package/es/Tab/TabWrapper.js +5 -2
  148. package/es/Tab/Tabs.js +71 -24
  149. package/es/Tab/Tabs.module.css +143 -143
  150. package/es/Tab/__tests__/Tab.spec.js +1 -3
  151. package/es/Tab/__tests__/TabWrapper.spec.js +1 -0
  152. package/es/Tag/Tag.js +14 -11
  153. package/es/Tag/Tag.module.css +254 -254
  154. package/es/TextBox/TextBox.js +15 -3
  155. package/es/TextBox/TextBox.module.css +158 -157
  156. package/es/TextBox/__tests__/TextBox.spec.js +1 -4
  157. package/es/TextBox/__tests__/__snapshots__/TextBox.spec.js.snap +127 -127
  158. package/es/TextBoxIcon/TextBoxIcon.js +9 -2
  159. package/es/TextBoxIcon/TextBoxIcon.module.css +79 -78
  160. package/es/TextBoxIcon/__tests__/TextBoxIcon.spec.js +2 -7
  161. package/es/TextBoxIcon/__tests__/__snapshots__/TextBoxIcon.spec.js.snap +334 -334
  162. package/es/Textarea/Textarea.js +12 -3
  163. package/es/Textarea/Textarea.module.css +139 -139
  164. package/es/Textarea/__tests__/Textarea.spec.js +2 -2
  165. package/es/Textarea/__tests__/__snapshots__/Textarea.spec.js.snap +97 -97
  166. package/es/Tooltip/Tooltip.js +58 -14
  167. package/es/Tooltip/Tooltip.module.css +140 -133
  168. package/es/Tooltip/__tests__/Tooltip.spec.js +5 -0
  169. package/es/VelocityAnimation/VelocityAnimation/VelocityAnimation.js +3 -2
  170. package/es/VelocityAnimation/VelocityAnimationGroup/VelocityAnimationGroup.js +7 -5
  171. package/es/common/a11y.module.css +3 -3
  172. package/es/common/animation.module.css +624 -624
  173. package/es/common/avatarsizes.module.css +48 -48
  174. package/es/common/basic.module.css +33 -33
  175. package/es/common/basicReset.module.css +40 -40
  176. package/es/common/boxShadow.module.css +33 -33
  177. package/es/common/common.module.css +524 -524
  178. package/es/common/customscroll.module.css +91 -89
  179. package/es/common/reset.module.css +13 -12
  180. package/es/common/transition.module.css +146 -146
  181. package/es/deprecated/AdvancedMultiSelect.module.css +126 -126
  182. package/es/deprecated/PortalLayer/PortalLayer.js +25 -20
  183. package/es/semantic/Button/Button.js +3 -2
  184. package/es/semantic/Button/semanticButton.module.css +9 -9
  185. package/es/utils/Common.js +54 -9
  186. package/es/utils/ContextOptimizer.js +4 -5
  187. package/es/utils/__tests__/debounce.spec.js +2 -2
  188. package/es/utils/constructFullName.js +2 -0
  189. package/es/utils/css/compileClassNames.js +5 -0
  190. package/es/utils/css/mergeStyle.js +7 -6
  191. package/es/utils/css/utils.js +1 -0
  192. package/es/utils/datetime/common.js +16 -5
  193. package/es/utils/debounce.js +5 -1
  194. package/es/utils/dropDownUtils.js +68 -11
  195. package/es/utils/getInitial.js +4 -0
  196. package/es/utils/shallowEqual.js +6 -0
  197. package/install.md +10 -10
  198. package/lib/Accordion/Accordion.js +42 -18
  199. package/lib/Accordion/AccordionItem.js +40 -18
  200. package/lib/Accordion/__tests__/Accordion.spec.js +3 -0
  201. package/lib/Accordion/index.js +3 -0
  202. package/lib/Accordion/props/propTypes.js +3 -0
  203. package/lib/Animation/Animation.js +38 -18
  204. package/lib/Animation/__tests__/Animation.spec.js +11 -7
  205. package/lib/Animation/props/propTypes.js +3 -0
  206. package/lib/AppContainer/AppContainer.js +56 -21
  207. package/lib/AppContainer/AppContainer.module.css +18 -18
  208. package/lib/AppContainer/props/propTypes.js +3 -0
  209. package/lib/Avatar/Avatar.js +87 -47
  210. package/lib/Avatar/Avatar.module.css +175 -175
  211. package/lib/Avatar/__tests__/Avatar.spec.js +44 -0
  212. package/lib/Avatar/__tests__/__snapshots__/Avatar.spec.js.snap +288 -288
  213. package/lib/Avatar/props/propTypes.js +3 -0
  214. package/lib/AvatarTeam/AvatarTeam.js +59 -37
  215. package/lib/AvatarTeam/AvatarTeam.module.css +189 -188
  216. package/lib/AvatarTeam/__tests__/AvatarTeam.spec.js +13 -0
  217. package/lib/AvatarTeam/__tests__/__snapshots__/AvatarTeam.spec.js.snap +226 -226
  218. package/lib/AvatarTeam/props/propTypes.js +3 -0
  219. package/lib/Button/Button.js +35 -24
  220. package/lib/Button/css/Button.module.css +525 -524
  221. package/lib/Button/css/cssJSLogic.js +18 -17
  222. package/lib/Button/index.js +3 -0
  223. package/lib/Button/props/defaultProps.js +2 -0
  224. package/lib/Button/props/propTypes.js +3 -0
  225. package/lib/Buttongroup/Buttongroup.js +33 -13
  226. package/lib/Buttongroup/Buttongroup.module.css +105 -106
  227. package/lib/Buttongroup/__test__/Buttongroup.spec.js +10 -0
  228. package/lib/Buttongroup/__test__/__snapshots__/Buttongroup.spec.js.snap +146 -146
  229. package/lib/Buttongroup/props/propTypes.js +3 -0
  230. package/lib/Card/Card.js +106 -50
  231. package/lib/Card/Card.module.css +20 -20
  232. package/lib/Card/__tests__/Card.spec.js +10 -1
  233. package/lib/Card/index.js +4 -0
  234. package/lib/Card/props/propTypes.js +3 -0
  235. package/lib/CheckBox/CheckBox.js +71 -47
  236. package/lib/CheckBox/CheckBox.module.css +157 -157
  237. package/lib/CheckBox/__tests__/CheckBox.spec.js +3 -0
  238. package/lib/CheckBox/props/propTypes.js +3 -0
  239. package/lib/DateTime/CalendarView.js +82 -42
  240. package/lib/DateTime/DateTime.js +240 -156
  241. package/lib/DateTime/DateTime.module.css +235 -235
  242. package/lib/DateTime/DateTimePopupFooter.js +31 -8
  243. package/lib/DateTime/DateTimePopupHeader.js +48 -17
  244. package/lib/DateTime/DateWidget.js +352 -250
  245. package/lib/DateTime/DateWidget.module.css +38 -38
  246. package/lib/DateTime/DaysRow.js +27 -5
  247. package/lib/DateTime/Time.js +73 -32
  248. package/lib/DateTime/YearView.js +77 -28
  249. package/lib/DateTime/YearView.module.css +98 -98
  250. package/lib/DateTime/__tests__/CalendarView.spec.js +13 -5
  251. package/lib/DateTime/__tests__/DateTime.spec.js +51 -37
  252. package/lib/DateTime/__tests__/DateWidget.spec.js +10 -8
  253. package/lib/DateTime/common.js +6 -0
  254. package/lib/DateTime/constants.js +1 -0
  255. package/lib/DateTime/dateFormatUtils/dateFormat.js +184 -122
  256. package/lib/DateTime/dateFormatUtils/dateFormats.js +0 -1
  257. package/lib/DateTime/dateFormatUtils/dayChange.js +14 -7
  258. package/lib/DateTime/dateFormatUtils/index.js +74 -16
  259. package/lib/DateTime/dateFormatUtils/monthChange.js +19 -9
  260. package/lib/DateTime/dateFormatUtils/timeChange.js +54 -22
  261. package/lib/DateTime/dateFormatUtils/yearChange.js +22 -11
  262. package/lib/DateTime/index.js +2 -0
  263. package/lib/DateTime/objectUtils.js +24 -20
  264. package/lib/DateTime/props/propTypes.js +11 -1
  265. package/lib/DateTime/typeChecker.js +4 -0
  266. package/lib/DateTime/validator.js +73 -10
  267. package/lib/DropBox/DropBox.js +34 -10
  268. package/lib/DropBox/DropBoxElement/DropBoxElement.js +58 -37
  269. package/lib/DropBox/DropBoxElement/css/DropBoxElement.module.css +428 -427
  270. package/lib/DropBox/DropBoxElement/css/cssJSLogic.js +41 -33
  271. package/lib/DropBox/DropBoxElement/props/propTypes.js +3 -0
  272. package/lib/DropBox/DropBoxElement/useDropboxPosCalc.js +14 -9
  273. package/lib/DropBox/DropBoxPositionMapping.json +144 -144
  274. package/lib/DropBox/__tests__/DropBox.spec.js +6 -2
  275. package/lib/DropBox/css/DropBox.module.css +58 -58
  276. package/lib/DropBox/css/cssJSLogic.js +3 -1
  277. package/lib/DropBox/props/defaultProps.js +8 -4
  278. package/lib/DropBox/props/propTypes.js +10 -4
  279. package/lib/DropDown/DropDown.js +52 -8
  280. package/lib/DropDown/DropDown.module.css +5 -5
  281. package/lib/DropDown/DropDownHeading.js +39 -20
  282. package/lib/DropDown/DropDownHeading.module.css +53 -53
  283. package/lib/DropDown/DropDownItem.js +42 -20
  284. package/lib/DropDown/DropDownItem.module.css +94 -94
  285. package/lib/DropDown/DropDownSearch.js +40 -17
  286. package/lib/DropDown/DropDownSearch.module.css +14 -14
  287. package/lib/DropDown/DropDownSeparator.js +24 -4
  288. package/lib/DropDown/DropDownSeparator.module.css +7 -7
  289. package/lib/DropDown/__tests__/DropDown.spec.js +15 -9
  290. package/lib/DropDown/__tests__/DropDownItem.spec.js +9 -4
  291. package/lib/DropDown/__tests__/DropDownSearch.spec.js +3 -0
  292. package/lib/DropDown/index.js +9 -0
  293. package/lib/DropDown/props/propTypes.js +6 -4
  294. package/lib/Heading/Heading.js +37 -15
  295. package/lib/Heading/Heading.module.css +4 -4
  296. package/lib/Heading/props/propTypes.js +3 -0
  297. package/lib/Label/Label.js +39 -19
  298. package/lib/Label/Label.module.css +52 -52
  299. package/lib/Label/LabelColors.module.css +20 -20
  300. package/lib/Label/__tests__/Label.spec.js +14 -1
  301. package/lib/Label/__tests__/__snapshots__/Label.spec.js.snap +101 -101
  302. package/lib/Label/props/propTypes.js +3 -0
  303. package/lib/Layout/Box.js +31 -11
  304. package/lib/Layout/Container.js +29 -10
  305. package/lib/Layout/Layout.module.css +335 -335
  306. package/lib/Layout/__tests__/Box.spec.js +65 -49
  307. package/lib/Layout/__tests__/Container.spec.js +67 -50
  308. package/lib/Layout/index.js +3 -0
  309. package/lib/Layout/props/propTypes.js +3 -0
  310. package/lib/Layout/utils.js +10 -0
  311. package/lib/ListItem/ListContainer.js +48 -27
  312. package/lib/ListItem/ListItem.js +69 -45
  313. package/lib/ListItem/ListItem.module.css +216 -216
  314. package/lib/ListItem/ListItemWithAvatar.js +75 -48
  315. package/lib/ListItem/ListItemWithCheckBox.js +64 -39
  316. package/lib/ListItem/ListItemWithIcon.js +68 -44
  317. package/lib/ListItem/ListItemWithRadio.js +65 -41
  318. package/lib/ListItem/index.js +7 -0
  319. package/lib/ListItem/props/propTypes.js +6 -4
  320. package/lib/Modal/Modal.js +45 -10
  321. package/lib/Modal/props/propTypes.js +3 -0
  322. package/lib/MultiSelect/AdvancedGroupMultiSelect.js +299 -171
  323. package/lib/MultiSelect/AdvancedMultiSelect.js +202 -125
  324. package/lib/MultiSelect/EmptyState.js +45 -24
  325. package/lib/MultiSelect/MultiSelect.js +328 -211
  326. package/lib/MultiSelect/MultiSelect.module.css +206 -205
  327. package/lib/MultiSelect/MultiSelectHeader.js +30 -8
  328. package/lib/MultiSelect/MultiSelectWithAvatar.js +105 -63
  329. package/lib/MultiSelect/SelectedOptions.js +43 -17
  330. package/lib/MultiSelect/SelectedOptions.module.css +15 -15
  331. package/lib/MultiSelect/Suggestions.js +64 -32
  332. package/lib/MultiSelect/__tests__/MultiSelect.spec.js +86 -75
  333. package/lib/MultiSelect/index.js +5 -0
  334. package/lib/MultiSelect/props/defaultProps.js +2 -0
  335. package/lib/MultiSelect/props/propTypes.js +5 -0
  336. package/lib/PopOver/PopOver.js +95 -49
  337. package/lib/PopOver/PopOver.module.css +8 -8
  338. package/lib/PopOver/__tests__/PopOver.spec.js +4 -1
  339. package/lib/PopOver/index.js +4 -0
  340. package/lib/PopOver/props/propTypes.js +3 -0
  341. package/lib/Popup/Popup.js +158 -81
  342. package/lib/Popup/PositionMapping.json +73 -73
  343. package/lib/Popup/__tests__/Popup.spec.js +43 -8
  344. package/lib/Popup/viewPort.js +28 -14
  345. package/lib/Provider/AvatarSize.js +4 -0
  346. package/lib/Provider/Config.js +2 -0
  347. package/lib/Provider/CssProvider.js +4 -0
  348. package/lib/Provider/IdProvider.js +17 -6
  349. package/lib/Provider/LibraryContext.js +35 -15
  350. package/lib/Provider/LibraryContextInit.js +4 -0
  351. package/lib/Provider/NumberGenerator/NumberGenerator.js +44 -15
  352. package/lib/Provider/ZindexProvider.js +15 -3
  353. package/lib/Provider/index.js +5 -0
  354. package/lib/Radio/Radio.js +61 -38
  355. package/lib/Radio/Radio.module.css +112 -112
  356. package/lib/Radio/__tests__/Radiospec.js +9 -5
  357. package/lib/Radio/props/propTypes.js +3 -0
  358. package/lib/Responsive/CustomResponsive.js +73 -29
  359. package/lib/Responsive/RefWrapper.js +17 -11
  360. package/lib/Responsive/ResizeComponent.js +62 -36
  361. package/lib/Responsive/ResizeObserver.js +24 -10
  362. package/lib/Responsive/Responsive.js +80 -30
  363. package/lib/Responsive/index.js +4 -0
  364. package/lib/Responsive/props/propTypes.js +3 -0
  365. package/lib/Responsive/sizeObservers.js +53 -17
  366. package/lib/Responsive/utils/index.js +11 -3
  367. package/lib/Responsive/utils/shallowCompare.js +11 -2
  368. package/lib/Responsive/windowResizeObserver.js +8 -0
  369. package/lib/ResponsiveDropBox/ResponsiveDropBox.js +45 -17
  370. package/lib/ResponsiveDropBox/ResponsiveDropBox.module.css +6 -6
  371. package/lib/ResponsiveDropBox/props/propTypes.js +3 -0
  372. package/lib/Ribbon/Ribbon.js +33 -13
  373. package/lib/Ribbon/Ribbon.module.css +454 -454
  374. package/lib/Ribbon/__tests__/Ribbon.spec.js +22 -0
  375. package/lib/Ribbon/__tests__/__snapshots__/Ribbon.spec.js.snap +163 -163
  376. package/lib/Ribbon/props/propTypes.js +3 -0
  377. package/lib/RippleEffect/RippleEffect.js +18 -10
  378. package/lib/RippleEffect/RippleEffect.module.css +92 -92
  379. package/lib/RippleEffect/props/propTypes.js +3 -0
  380. package/lib/Select/GroupSelect.js +229 -130
  381. package/lib/Select/Select.js +290 -209
  382. package/lib/Select/Select.module.css +108 -108
  383. package/lib/Select/SelectWithAvatar.js +102 -56
  384. package/lib/Select/SelectWithIcon.js +132 -76
  385. package/lib/Select/__tests__/Select.spec.js +133 -91
  386. package/lib/Select/index.js +5 -0
  387. package/lib/Select/props/defaultProps.js +5 -4
  388. package/lib/Select/props/propTypes.js +4 -0
  389. package/lib/Stencils/Stencils.js +29 -10
  390. package/lib/Stencils/Stencils.module.css +96 -96
  391. package/lib/Stencils/__tests__/Stencils.spec.js +12 -0
  392. package/lib/Stencils/__tests__/__snapshots__/Stencils.spec.js.snap +49 -49
  393. package/lib/Stencils/props/propTypes.js +3 -0
  394. package/lib/Switch/Switch.js +57 -34
  395. package/lib/Switch/Switch.module.css +127 -127
  396. package/lib/Switch/props/propTypes.js +3 -0
  397. package/lib/Tab/Tab.js +40 -27
  398. package/lib/Tab/Tab.module.css +100 -100
  399. package/lib/Tab/TabContent.js +12 -5
  400. package/lib/Tab/TabContent.module.css +4 -4
  401. package/lib/Tab/TabContentWrapper.js +13 -6
  402. package/lib/Tab/TabWrapper.js +37 -19
  403. package/lib/Tab/Tabs.js +182 -102
  404. package/lib/Tab/Tabs.module.css +143 -143
  405. package/lib/Tab/__tests__/Tab.spec.js +67 -58
  406. package/lib/Tab/__tests__/TabContent.spec.js +10 -6
  407. package/lib/Tab/__tests__/TabContentWrapper.spec.js +28 -20
  408. package/lib/Tab/__tests__/TabWrapper.spec.js +12 -0
  409. package/lib/Tab/__tests__/Tabs.spec.js +53 -39
  410. package/lib/Tab/index.js +6 -0
  411. package/lib/Tab/props/propTypes.js +3 -0
  412. package/lib/Tag/Tag.js +80 -51
  413. package/lib/Tag/Tag.module.css +254 -254
  414. package/lib/Tag/__tests__/Tag.spec.js +14 -8
  415. package/lib/Tag/props/propTypes.js +3 -0
  416. package/lib/TextBox/TextBox.js +85 -59
  417. package/lib/TextBox/TextBox.module.css +158 -157
  418. package/lib/TextBox/__tests__/TextBox.spec.js +14 -4
  419. package/lib/TextBox/__tests__/__snapshots__/TextBox.spec.js.snap +127 -127
  420. package/lib/TextBox/props/propTypes.js +6 -4
  421. package/lib/TextBoxIcon/TextBoxIcon.js +79 -52
  422. package/lib/TextBoxIcon/TextBoxIcon.module.css +79 -78
  423. package/lib/TextBoxIcon/__tests__/TextBoxIcon.spec.js +14 -5
  424. package/lib/TextBoxIcon/__tests__/__snapshots__/TextBoxIcon.spec.js.snap +334 -334
  425. package/lib/TextBoxIcon/props/propTypes.js +3 -0
  426. package/lib/Textarea/Textarea.js +54 -29
  427. package/lib/Textarea/Textarea.module.css +139 -139
  428. package/lib/Textarea/__tests__/Textarea.spec.js +14 -2
  429. package/lib/Textarea/__tests__/__snapshots__/Textarea.spec.js.snap +97 -97
  430. package/lib/Textarea/props/propTypes.js +3 -0
  431. package/lib/Tooltip/Tooltip.js +94 -31
  432. package/lib/Tooltip/Tooltip.module.css +140 -133
  433. package/lib/Tooltip/__tests__/Tooltip.spec.js +24 -3
  434. package/lib/Tooltip/props/propTypes.js +3 -0
  435. package/lib/VelocityAnimation/VelocityAnimation/VelocityAnimation.js +40 -16
  436. package/lib/VelocityAnimation/VelocityAnimation/props/propTypes.js +3 -0
  437. package/lib/VelocityAnimation/VelocityAnimationGroup/VelocityAnimationGroup.js +53 -25
  438. package/lib/VelocityAnimation/VelocityAnimationGroup/props/propTypes.js +3 -0
  439. package/lib/VelocityAnimation/index.js +3 -0
  440. package/lib/common/a11y.module.css +3 -3
  441. package/lib/common/animation.module.css +624 -624
  442. package/lib/common/avatarsizes.module.css +48 -48
  443. package/lib/common/basic.module.css +33 -33
  444. package/lib/common/basicReset.module.css +40 -40
  445. package/lib/common/boxShadow.module.css +33 -33
  446. package/lib/common/common.module.css +524 -524
  447. package/lib/common/customscroll.module.css +91 -89
  448. package/lib/common/reset.module.css +13 -12
  449. package/lib/common/transition.module.css +146 -146
  450. package/lib/css.js +40 -0
  451. package/lib/deprecated/AdvancedMultiSelect.module.css +126 -126
  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 +42 -22
  456. package/lib/semantic/Button/props/propTypes.js +3 -0
  457. package/lib/semantic/Button/semanticButton.module.css +9 -9
  458. package/lib/semantic/index.js +2 -0
  459. package/lib/utils/Common.js +108 -18
  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/common.js +32 -5
  469. package/lib/utils/debounce.js +6 -1
  470. package/lib/utils/dropDownUtils.js +175 -59
  471. package/lib/utils/dummyFunction.js +2 -0
  472. package/lib/utils/getHTMLFontSize.js +1 -0
  473. package/lib/utils/getInitial.js +6 -0
  474. package/lib/utils/index.js +4 -0
  475. package/lib/utils/scrollTo.js +2 -0
  476. package/lib/utils/shallowEqual.js +8 -0
  477. package/package.json +123 -116
@@ -2,8 +2,9 @@ import React from 'react';
2
2
  import { defaultProps } from './props/defaultProps';
3
3
  import { propTypes } from './props/propTypes';
4
4
  import style from './Buttongroup.module.css';
5
- /* eslint css-modules/no-unused-class: [2, { markAsUsed: ['footer','header',
5
+ /* eslint css-modules/no-unused-class: [2, { markAsUsed: ['footer','header',
6
6
  'tab','alignleft','alignright','aligncenter' ] }] */
7
+
7
8
  export default class Buttongroup extends React.Component {
8
9
  render() {
9
10
  let {
@@ -29,11 +30,10 @@ export default class Buttongroup extends React.Component {
29
30
  className: style[`align${buttonPosition}`]
30
31
  }, children));
31
32
  }
33
+
32
34
  }
33
35
  Buttongroup.defaultProps = defaultProps;
34
- Buttongroup.propTypes = propTypes;
35
-
36
- // if (__DOCS__) {
36
+ Buttongroup.propTypes = propTypes; // if (__DOCS__) {
37
37
  // Buttongroup.docs = {
38
38
  // componentGroup: 'Molecule',
39
39
  // folderName: 'Style Guide',
@@ -1,107 +1,106 @@
1
- .varClass {
2
- /* button group default variables */
3
- --buttongroup_bg_color: var(--zdt_buttongroup_default_bg);
4
- --buttongroup_box_shadow: none;
5
- --buttongroup_padding: 0;
6
- --buttongroup_border_width: 0;
7
- --buttongroup_border_style: solid;
8
- --buttongroup_border_color: var(--zdt_buttongroup_default_border);
9
- }
10
-
11
- .buttonGroup {
12
- composes: varClass;
13
- composes: cboth from '../common/common.module.css';
14
- background-color: var(--buttongroup_bg_color);
15
- box-shadow: var(--buttongroup_box_shadow);
16
- padding: var(--buttongroup_padding);
17
- border-width: var(--buttongroup_border_width);
18
- border-style: var(--buttongroup_border_style);
19
- border-color: var(--buttongroup_border_color);
20
- }
21
-
22
- .footer {
23
- --buttongroup_box_shadow: var(--zd_bs_buttongroup_footer);
24
- }
25
-
26
- [dir=ltr] .footer {
27
- --buttongroup_padding: var(--zd_size20) 0 var(--zd_size20) var(--zd_size60)
28
- /*rtl: var(--zd_size20) var(--zd_size60) var(--zd_size20) 0*/
29
- ;
30
- }
31
-
32
- [dir=rtl] .footer {
33
- --buttongroup_padding: var(--zd_size20) 0 var(--zd_size20) var(--zd_size60) ;
34
- }
35
-
36
- .header {
37
- --buttongroup_padding: var(--zd_size12) var(--zd_size20);
38
- --buttongroup_border_width: 0 0 1px 0;
39
- }
40
-
41
- [dir=ltr] .tab>div button:first-child {
42
- border-radius: 5px 0 0 5px;
43
- }
44
-
45
- [dir=rtl] .tab>div button:first-child {
46
- border-radius: 0 5px 5px 0;
47
- }
48
-
49
- [dir=ltr] .tab>div button:last-child {
50
- border-radius: 0 5px 5px 0;
51
- }
52
-
53
- [dir=rtl] .tab>div button:last-child {
54
- border-radius: 5px 0 0 5px;
55
- }
56
-
57
- .alignleft {
58
- composes: fleft from '../common/common.module.css';
59
- }
60
-
61
- .alignright {
62
- composes: fright from '../common/common.module.css';
63
- }
64
-
65
- .aligncenter {
66
- composes: tcenter from '../common/common.module.css';
67
- }
68
-
69
- [dir=ltr] .alignleft>button:first-child {
70
- margin-left: 0;
71
- }
72
-
73
- [dir=rtl] .alignleft>button:first-child {
74
- margin-right: 0;
75
- }
76
-
77
- [dir=ltr] .alignleft>button {
78
- margin-left: var(--zd_size15);
79
- }
80
-
81
- [dir=rtl] .alignleft>button {
82
- margin-right: var(--zd_size15);
83
- }
84
-
85
- [dir=ltr] .alignright>button:last-child {
86
- margin-right: 0;
87
- }
88
-
89
- [dir=rtl] .alignright>button:last-child {
90
- margin-left: 0;
91
- }
92
-
93
- [dir=ltr] .alignright>button {
94
- margin-right: var(--zd_size15);
95
- }
96
-
97
- [dir=rtl] .alignright>button {
98
- margin-left: var(--zd_size15);
99
- }
100
-
101
- [dir=ltr] .aligncenter>button {
102
- margin-right: var(--zd_size15);
103
- }
104
-
105
- [dir=rtl] .aligncenter>button {
106
- margin-left: var(--zd_size15);
1
+ .varClass {
2
+ /* button group default variables */
3
+ --buttongroup_bg_color: var(--zdt_buttongroup_default_bg);
4
+ --buttongroup_box_shadow: none;
5
+ --buttongroup_padding: 0;
6
+ --buttongroup_border_width: 0;
7
+ --buttongroup_border_style: solid;
8
+ --buttongroup_border_color: var(--zdt_buttongroup_default_border);
9
+ }
10
+
11
+ .buttonGroup {
12
+ composes: varClass;
13
+ composes: cboth from '../common/common.module.css';
14
+ background-color: var(--buttongroup_bg_color);
15
+ box-shadow: var(--buttongroup_box_shadow);
16
+ padding: var(--buttongroup_padding);
17
+ border-width: var(--buttongroup_border_width);
18
+ border-style: var(--buttongroup_border_style);
19
+ border-color: var(--buttongroup_border_color);
20
+ }
21
+
22
+ .footer {
23
+ --buttongroup_box_shadow: var(--zd_bs_buttongroup_footer);
24
+ }
25
+
26
+ [dir=ltr] .footer {
27
+ --buttongroup_padding: var(--zd_size20) 0 var(--zd_size20) var(--zd_size60
28
+ ) ;
29
+ }
30
+
31
+ [dir=rtl] .footer {
32
+ --buttongroup_padding: var(--zd_size20) 0 var(--zd_size20) var(--zd_size60);
33
+ }
34
+
35
+ .header {
36
+ --buttongroup_padding: var(--zd_size12) var(--zd_size20);
37
+ --buttongroup_border_width: 0 0 1px 0;
38
+ }
39
+
40
+ [dir=ltr] .tab>div button:first-child {
41
+ border-radius: 5px 0 0 5px;
42
+ }
43
+
44
+ [dir=rtl] .tab>div button:first-child {
45
+ border-radius: 0 5px 5px 0;
46
+ }
47
+
48
+ [dir=ltr] .tab>div button:last-child {
49
+ border-radius: 0 5px 5px 0;
50
+ }
51
+
52
+ [dir=rtl] .tab>div button:last-child {
53
+ border-radius: 5px 0 0 5px;
54
+ }
55
+
56
+ .alignleft {
57
+ composes: fleft from '../common/common.module.css';
58
+ }
59
+
60
+ .alignright {
61
+ composes: fright from '../common/common.module.css';
62
+ }
63
+
64
+ .aligncenter {
65
+ composes: tcenter from '../common/common.module.css';
66
+ }
67
+
68
+ [dir=ltr] .alignleft>button:first-child {
69
+ margin-left: 0 ;
70
+ }
71
+
72
+ [dir=rtl] .alignleft>button:first-child {
73
+ margin-right: 0 ;
74
+ }
75
+
76
+ [dir=ltr] .alignleft>button {
77
+ margin-left: var(--zd_size15) ;
78
+ }
79
+
80
+ [dir=rtl] .alignleft>button {
81
+ margin-right: var(--zd_size15) ;
82
+ }
83
+
84
+ [dir=ltr] .alignright>button:last-child {
85
+ margin-right: 0 ;
86
+ }
87
+
88
+ [dir=rtl] .alignright>button:last-child {
89
+ margin-left: 0 ;
90
+ }
91
+
92
+ [dir=ltr] .alignright>button {
93
+ margin-right: var(--zd_size15) ;
94
+ }
95
+
96
+ [dir=rtl] .alignright>button {
97
+ margin-left: var(--zd_size15) ;
98
+ }
99
+
100
+ [dir=ltr] .aligncenter>button {
101
+ margin-right: var(--zd_size15) ;
102
+ }
103
+
104
+ [dir=rtl] .aligncenter>button {
105
+ margin-left: var(--zd_size15) ;
107
106
  }
@@ -1,146 +1,146 @@
1
- // Jest Snapshot v1, https://goo.gl/fbAQLP
2
-
3
- exports[`Button component should the button position is center 1`] = `
4
- <div
5
- className="buttonGroup footer"
6
- >
7
- <div
8
- className="aligncenter"
9
- >
10
- <button
11
- className=" primaryfilled medium bold "
12
- data-id="buttonComp"
13
- disabled={false}
14
- onClick={[Function]}
15
- type="button"
16
- >
17
- Submit
18
- </button>
19
- <button
20
- className=" secondary medium bold "
21
- data-id="buttonComp"
22
- disabled={false}
23
- onClick={[Function]}
24
- type="button"
25
- >
26
- Cancel
27
- </button>
28
- </div>
29
- </div>
30
- `;
31
-
32
- exports[`Button component should the button position is left 1`] = `
33
- <div
34
- className="buttonGroup footer"
35
- >
36
- <div
37
- className="alignleft"
38
- >
39
- <button
40
- className=" primaryfilled medium bold "
41
- data-id="buttonComp"
42
- disabled={false}
43
- onClick={[Function]}
44
- type="button"
45
- >
46
- Submit
47
- </button>
48
- <button
49
- className=" secondary medium bold "
50
- data-id="buttonComp"
51
- disabled={false}
52
- onClick={[Function]}
53
- type="button"
54
- >
55
- Cancel
56
- </button>
57
- </div>
58
- </div>
59
- `;
60
-
61
- exports[`Button component should the button position is right 1`] = `
62
- <div
63
- className="buttonGroup footer"
64
- >
65
- <div
66
- className="alignright"
67
- >
68
- <button
69
- className=" primaryfilled medium bold "
70
- data-id="buttonComp"
71
- disabled={false}
72
- onClick={[Function]}
73
- type="button"
74
- >
75
- Submit
76
- </button>
77
- <button
78
- className=" secondary medium bold "
79
- data-id="buttonComp"
80
- disabled={false}
81
- onClick={[Function]}
82
- type="button"
83
- >
84
- Cancel
85
- </button>
86
- </div>
87
- </div>
88
- `;
89
-
90
- exports[`Button component should the type is footer 1`] = `
91
- <div
92
- className="buttonGroup footer"
93
- >
94
- <div
95
- className="alignleft"
96
- >
97
- <button
98
- className=" primaryfilled medium bold "
99
- data-id="buttonComp"
100
- disabled={false}
101
- onClick={[Function]}
102
- type="button"
103
- >
104
- Submit
105
- </button>
106
- <button
107
- className=" secondary medium bold "
108
- data-id="buttonComp"
109
- disabled={false}
110
- onClick={[Function]}
111
- type="button"
112
- >
113
- Cancel
114
- </button>
115
- </div>
116
- </div>
117
- `;
118
-
119
- exports[`Button component should the type is header 1`] = `
120
- <div
121
- className="buttonGroup header"
122
- >
123
- <div
124
- className="alignleft"
125
- >
126
- <button
127
- className=" primaryfilled medium bold "
128
- data-id="buttonComp"
129
- disabled={false}
130
- onClick={[Function]}
131
- type="button"
132
- >
133
- Submit
134
- </button>
135
- <button
136
- className=" secondary medium bold "
137
- data-id="buttonComp"
138
- disabled={false}
139
- onClick={[Function]}
140
- type="button"
141
- >
142
- Cancel
143
- </button>
144
- </div>
145
- </div>
146
- `;
1
+ // Jest Snapshot v1, https://goo.gl/fbAQLP
2
+
3
+ exports[`Button component should the button position is center 1`] = `
4
+ <div
5
+ className="buttonGroup footer"
6
+ >
7
+ <div
8
+ className="aligncenter"
9
+ >
10
+ <button
11
+ className=" primaryfilled medium bold "
12
+ data-id="buttonComp"
13
+ disabled={false}
14
+ onClick={[Function]}
15
+ type="button"
16
+ >
17
+ Submit
18
+ </button>
19
+ <button
20
+ className=" secondary medium bold "
21
+ data-id="buttonComp"
22
+ disabled={false}
23
+ onClick={[Function]}
24
+ type="button"
25
+ >
26
+ Cancel
27
+ </button>
28
+ </div>
29
+ </div>
30
+ `;
31
+
32
+ exports[`Button component should the button position is left 1`] = `
33
+ <div
34
+ className="buttonGroup footer"
35
+ >
36
+ <div
37
+ className="alignleft"
38
+ >
39
+ <button
40
+ className=" primaryfilled medium bold "
41
+ data-id="buttonComp"
42
+ disabled={false}
43
+ onClick={[Function]}
44
+ type="button"
45
+ >
46
+ Submit
47
+ </button>
48
+ <button
49
+ className=" secondary medium bold "
50
+ data-id="buttonComp"
51
+ disabled={false}
52
+ onClick={[Function]}
53
+ type="button"
54
+ >
55
+ Cancel
56
+ </button>
57
+ </div>
58
+ </div>
59
+ `;
60
+
61
+ exports[`Button component should the button position is right 1`] = `
62
+ <div
63
+ className="buttonGroup footer"
64
+ >
65
+ <div
66
+ className="alignright"
67
+ >
68
+ <button
69
+ className=" primaryfilled medium bold "
70
+ data-id="buttonComp"
71
+ disabled={false}
72
+ onClick={[Function]}
73
+ type="button"
74
+ >
75
+ Submit
76
+ </button>
77
+ <button
78
+ className=" secondary medium bold "
79
+ data-id="buttonComp"
80
+ disabled={false}
81
+ onClick={[Function]}
82
+ type="button"
83
+ >
84
+ Cancel
85
+ </button>
86
+ </div>
87
+ </div>
88
+ `;
89
+
90
+ exports[`Button component should the type is footer 1`] = `
91
+ <div
92
+ className="buttonGroup footer"
93
+ >
94
+ <div
95
+ className="alignleft"
96
+ >
97
+ <button
98
+ className=" primaryfilled medium bold "
99
+ data-id="buttonComp"
100
+ disabled={false}
101
+ onClick={[Function]}
102
+ type="button"
103
+ >
104
+ Submit
105
+ </button>
106
+ <button
107
+ className=" secondary medium bold "
108
+ data-id="buttonComp"
109
+ disabled={false}
110
+ onClick={[Function]}
111
+ type="button"
112
+ >
113
+ Cancel
114
+ </button>
115
+ </div>
116
+ </div>
117
+ `;
118
+
119
+ exports[`Button component should the type is header 1`] = `
120
+ <div
121
+ className="buttonGroup header"
122
+ >
123
+ <div
124
+ className="alignleft"
125
+ >
126
+ <button
127
+ className=" primaryfilled medium bold "
128
+ data-id="buttonComp"
129
+ disabled={false}
130
+ onClick={[Function]}
131
+ type="button"
132
+ >
133
+ Submit
134
+ </button>
135
+ <button
136
+ className=" secondary medium bold "
137
+ data-id="buttonComp"
138
+ disabled={false}
139
+ onClick={[Function]}
140
+ type="button"
141
+ >
142
+ Cancel
143
+ </button>
144
+ </div>
145
+ </div>
146
+ `;
package/es/Card/Card.js CHANGED
@@ -4,30 +4,33 @@ import { Card_defaultProps, CardHeader_defaultProps, CardContent_defaultProps, C
4
4
  import { Container, Box } from '../Layout';
5
5
  import { getLibraryConfig } from '../Provider/Config';
6
6
  import style from './Card.module.css';
7
-
8
7
  /* eslint-disable react/forbid-component-props */
9
8
 
10
- /*
11
- isscroll header border change use ref
12
- scroll logic remove from here
13
- scroll logic move to virtualizer list
9
+ /*
10
+ isscroll header border change use ref
11
+ scroll logic remove from here
12
+ scroll logic move to virtualizer list
14
13
  */
15
14
 
16
15
  /* performance handling pending in card component moving to ref instead of setState */
16
+
17
17
  export class CardHeader extends Component {
18
18
  constructor(props) {
19
19
  super(props);
20
20
  this.getCardHeaderDom = this.getCardHeaderDom.bind(this);
21
21
  this.cardHeader = null;
22
22
  }
23
+
23
24
  getCardHeaderDom(ele) {
24
25
  this.cardHeader = ele;
25
26
  }
27
+
26
28
  setScrollClassName() {
27
29
  if (!this.cardHeader) {
28
30
  return null;
29
31
  }
30
32
  }
33
+
31
34
  render() {
32
35
  let {
33
36
  isScroll,
@@ -43,6 +46,7 @@ export class CardHeader extends Component {
43
46
  dataSelectorId: dataSelectorId
44
47
  }, children);
45
48
  }
49
+
46
50
  }
47
51
  CardHeader.propTypes = CardHeader_propTypes;
48
52
  CardHeader.defaultProps = CardHeader_defaultProps;
@@ -73,6 +77,7 @@ export class CardContent extends Component {
73
77
  dataSelectorId: dataSelectorId
74
78
  }, children);
75
79
  }
80
+
76
81
  }
77
82
  CardContent.propTypes = CardContent_propTypes;
78
83
  CardContent.defaultProps = CardContent_defaultProps;
@@ -91,8 +96,7 @@ export default class Card extends Component {
91
96
  this.to = from + 3 * limit;
92
97
  this.isFetching = false;
93
98
  this.lastScrollTop = 0;
94
- this.onScroll = this.onScroll.bind(this);
95
- //this.onSetScroll = debounce(this.setScroll.bind(this, true), 10, true);
99
+ this.onScroll = this.onScroll.bind(this); //this.onSetScroll = debounce(this.setScroll.bind(this, true), 10, true);
96
100
  //this.onClearScroll = debounce(this.setScroll.bind(this, false), 500);
97
101
  }
98
102
 
@@ -101,6 +105,7 @@ export default class Card extends Component {
101
105
  this.from = nextProps.from;
102
106
  }
103
107
  }
108
+
104
109
  onScroll(e) {
105
110
  let scrollContainerObj = e.currentTarget;
106
111
  let {
@@ -124,16 +129,20 @@ export default class Card extends Component {
124
129
  // isScrollShadow,
125
130
  isPercentageScroll
126
131
  } = this.props;
132
+
127
133
  if (scrollTop > this.lastScrollTop) {
128
134
  this.scrollDirection = 'down';
129
135
  } else {
130
136
  this.scrollDirection = 'up';
131
137
  }
138
+
132
139
  this.lastScrollTop = scrollTop;
140
+
133
141
  if (fetchData && !this.isFetching) {
134
142
  if (this.scrollDirection === 'down' && !noMoreData) {
135
143
  const scrollingPercentage = (scrollTop + offsetHeight) / (scrollHeight - scrollAt) * 100;
136
144
  const prefetch = isPercentageScroll ? scrollingPercentage >= getLibraryConfig('scrollFetchLimit') : scrollHeight - scrollAt <= scrollTop + offsetHeight;
145
+
137
146
  if (prefetch) {
138
147
  this.isFetching = true;
139
148
  fetchData(this.from + this.limit, this.limit + this.to, this.scrollDirection).then(() => {
@@ -155,19 +164,18 @@ export default class Card extends Component {
155
164
  }
156
165
  }
157
166
  }
167
+
158
168
  if (fetchData && !noNeedUpScroll) {
159
169
  if (this.from !== 0 && scrollTop === 0 && !noNeedUpScroll) {
160
170
  scrollContainerObj.scrollTop = scrollTop + offsetHeight / 3;
161
171
  } else if (scrollHeight === scrollTop + offsetHeight && !noMoreData) {
162
172
  scrollContainerObj.scrollTop = scrollTop - offsetHeight / 2;
163
173
  }
164
- }
165
- // if (isScrollShadow) {
174
+ } // if (isScrollShadow) {
166
175
  // this.onSetScroll();
167
176
  // }
168
- }
169
177
 
170
- // setScroll(isScroll) {
178
+ } // setScroll(isScroll) {
171
179
  // let { isScroll: stateIsScroll } = this.state;
172
180
  // if (isScroll && !stateIsScroll) {
173
181
  // this.setState({ isScroll: true }, () => {
@@ -178,6 +186,7 @@ export default class Card extends Component {
178
186
  // }
179
187
  // }
180
188
 
189
+
181
190
  render() {
182
191
  let {
183
192
  onClick,
@@ -205,6 +214,7 @@ export default class Card extends Component {
205
214
  if (!child) {
206
215
  return child;
207
216
  }
217
+
208
218
  if (child.type === CardHeader || this.props.childTypes && child.type === this.props.childTypes.cardHeader) {
209
219
  return /*#__PURE__*/React.cloneElement(child, {
210
220
  isScroll
@@ -225,14 +235,14 @@ export default class Card extends Component {
225
235
  dataSelectorId: child.props.dataSelectorId
226
236
  }, child.props.children);
227
237
  }
238
+
228
239
  return child;
229
240
  }));
230
241
  }
242
+
231
243
  }
232
244
  Card.propTypes = Card_propTypes;
233
- Card.defaultProps = Card_defaultProps;
234
-
235
- // if (__DOCS__) {
245
+ Card.defaultProps = Card_defaultProps; // if (__DOCS__) {
236
246
  // Card.docs = {
237
247
  // componentGroup: 'Template',
238
248
  // folderName: 'Style Guide',
@@ -255,6 +265,7 @@ export class CardFooter extends Component {
255
265
  dataSelectorId: dataSelectorId
256
266
  }, children);
257
267
  }
268
+
258
269
  }
259
270
  CardFooter.propTypes = CardFooter_propTypes;
260
271
  CardFooter.defaultProps = CardFooter_defaultProps;