@zohodesk/components 1.0.0-test-252 → 1.1.0

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 (672) hide show
  1. package/README.md +1266 -1102
  2. package/assets/Appearance/dark/mode/Component_DarkMode.module.css +346 -0
  3. package/assets/Appearance/dark/themes/blue/blue_CTA_DarkModifyCategory.module.css +452 -0
  4. package/assets/Appearance/dark/themes/blue/blue_CTA_DarkTheme.module.css +35 -0
  5. package/assets/Appearance/dark/themes/blue/blue_ComponentTheme_DarkTheme.module.css +45 -0
  6. package/assets/Appearance/dark/themes/green/green_CTA_DarkModifyCategory.module.css +452 -0
  7. package/assets/Appearance/dark/themes/green/green_CTA_DarkTheme.module.css +35 -0
  8. package/assets/Appearance/dark/themes/green/green_ComponentTheme_DarkTheme.module.css +45 -0
  9. package/assets/Appearance/dark/themes/orange/orange_CTA_DarkModifyCategory.module.css +452 -0
  10. package/assets/Appearance/dark/themes/orange/orange_CTA_DarkTheme.module.css +35 -0
  11. package/assets/Appearance/dark/themes/orange/orange_ComponentTheme_DarkTheme.module.css +45 -0
  12. package/assets/Appearance/dark/themes/red/red_CTA_DarkModifyCategory.module.css +452 -0
  13. package/assets/Appearance/dark/themes/red/red_CTA_DarkTheme.module.css +35 -0
  14. package/assets/Appearance/dark/themes/red/red_ComponentTheme_DarkTheme.module.css +45 -0
  15. package/assets/Appearance/dark/themes/yellow/yellow_CTA_DarkModifyCategory.module.css +452 -0
  16. package/assets/Appearance/dark/themes/yellow/yellow_CTA_DarkTheme.module.css +35 -0
  17. package/assets/Appearance/dark/themes/yellow/yellow_ComponentTheme_DarkTheme.module.css +45 -0
  18. package/assets/Appearance/light/mode/Component_LightMode.module.css +346 -0
  19. package/assets/Appearance/light/themes/blue/blue_CTA_LightModifyCategory.module.css +452 -0
  20. package/assets/Appearance/light/themes/blue/blue_CTA_LightTheme.module.css +35 -0
  21. package/assets/Appearance/light/themes/blue/blue_ComponentTheme_LightTheme.module.css +45 -0
  22. package/assets/Appearance/light/themes/green/green_CTA_LightModifyCategory.module.css +452 -0
  23. package/assets/Appearance/light/themes/green/green_CTA_LightTheme.module.css +35 -0
  24. package/assets/Appearance/light/themes/green/green_ComponentTheme_LightTheme.module.css +45 -0
  25. package/assets/Appearance/light/themes/orange/orange_CTA_LightModifyCategory.module.css +452 -0
  26. package/assets/Appearance/light/themes/orange/orange_CTA_LightTheme.module.css +35 -0
  27. package/assets/Appearance/light/themes/orange/orange_ComponentTheme_LightTheme.module.css +45 -0
  28. package/assets/Appearance/light/themes/red/red_CTA_LightModifyCategory.module.css +452 -0
  29. package/assets/Appearance/light/themes/red/red_CTA_LightTheme.module.css +35 -0
  30. package/assets/Appearance/light/themes/red/red_ComponentTheme_LightTheme.module.css +45 -0
  31. package/assets/Appearance/light/themes/yellow/yellow_CTA_LightModifyCategory.module.css +452 -0
  32. package/assets/Appearance/light/themes/yellow/yellow_CTA_LightTheme.module.css +35 -0
  33. package/assets/Appearance/light/themes/yellow/yellow_ComponentTheme_LightTheme.module.css +45 -0
  34. package/assets/Appearance/pureDark/mode/Component_PureDarkMode.module.css +346 -0
  35. package/assets/Appearance/pureDark/themes/blue/blue_CTA_PureDarkModifyCategory.module.css +452 -0
  36. package/assets/Appearance/pureDark/themes/blue/blue_CTA_PureDarkTheme.module.css +35 -0
  37. package/assets/Appearance/pureDark/themes/blue/blue_ComponentTheme_PureDarkTheme.module.css +45 -0
  38. package/assets/Appearance/pureDark/themes/green/green_CTA_PureDarkModifyCategory.module.css +452 -0
  39. package/assets/Appearance/pureDark/themes/green/green_CTA_PureDarkTheme.module.css +35 -0
  40. package/assets/Appearance/pureDark/themes/green/green_ComponentTheme_PureDarkTheme.module.css +45 -0
  41. package/assets/Appearance/pureDark/themes/orange/orange_CTA_PureDarkModifyCategory.module.css +452 -0
  42. package/assets/Appearance/pureDark/themes/orange/orange_CTA_PureDarkTheme.module.css +35 -0
  43. package/assets/Appearance/pureDark/themes/orange/orange_ComponentTheme_PureDarkTheme.module.css +45 -0
  44. package/assets/Appearance/pureDark/themes/red/red_CTA_PureDarkModifyCategory.module.css +452 -0
  45. package/assets/Appearance/pureDark/themes/red/red_CTA_PureDarkTheme.module.css +35 -0
  46. package/assets/Appearance/pureDark/themes/red/red_ComponentTheme_PureDarkTheme.module.css +45 -0
  47. package/assets/Appearance/pureDark/themes/yellow/yellow_CTA_PureDarkModifyCategory.module.css +452 -0
  48. package/assets/Appearance/pureDark/themes/yellow/yellow_CTA_PureDarkTheme.module.css +35 -0
  49. package/assets/Appearance/pureDark/themes/yellow/yellow_ComponentTheme_PureDarkTheme.module.css +45 -0
  50. package/assets/Contrast/darkContrastLightness.module.css +39 -0
  51. package/assets/Contrast/lightContrastLightness.module.css +39 -0
  52. package/assets/Contrast/pureDarkContrastLightness.module.css +39 -0
  53. package/css_error.log +1 -0
  54. package/es/Accordion/Accordion.js +19 -9
  55. package/es/Accordion/AccordionItem.js +13 -8
  56. package/es/Accordion/props/defaultProps.js +6 -2
  57. package/es/Accordion/props/propTypes.js +3 -0
  58. package/es/Animation/Animation.js +10 -9
  59. package/es/AppContainer/AppContainer.js +38 -15
  60. package/es/AppContainer/AppContainer.module.css +18 -18
  61. package/es/AppContainer/props/defaultProps.js +3 -1
  62. package/es/AppContainer/props/propTypes.js +2 -0
  63. package/es/Avatar/Avatar.js +57 -34
  64. package/es/Avatar/Avatar.module.css +176 -135
  65. package/es/Avatar/__tests__/__snapshots__/Avatar.spec.js.snap +288 -288
  66. package/es/Avatar/props/defaultProps.js +4 -1
  67. package/es/Avatar/props/propTypes.js +5 -2
  68. package/es/AvatarTeam/AvatarTeam.js +28 -18
  69. package/es/AvatarTeam/AvatarTeam.module.css +189 -161
  70. package/es/AvatarTeam/__tests__/__snapshots__/AvatarTeam.spec.js.snap +226 -226
  71. package/es/AvatarTeam/props/defaultProps.js +5 -1
  72. package/es/AvatarTeam/props/propTypes.js +5 -1
  73. package/es/Button/Button.js +59 -55
  74. package/{lib/Button → es/Button/css}/Button.module.css +525 -521
  75. package/es/Button/css/cssJSLogic.js +53 -0
  76. package/es/Button/index.js +2 -0
  77. package/es/Button/props/defaultProps.js +3 -1
  78. package/es/Button/props/propTypes.js +6 -2
  79. package/es/Buttongroup/Buttongroup.js +25 -17
  80. package/es/Buttongroup/Buttongroup.module.css +106 -89
  81. package/es/Buttongroup/__test__/__snapshots__/Buttongroup.spec.js.snap +146 -146
  82. package/es/Buttongroup/props/defaultProps.js +3 -1
  83. package/es/Buttongroup/props/propTypes.js +3 -1
  84. package/es/Card/Card.js +52 -30
  85. package/es/Card/Card.module.css +20 -20
  86. package/es/Card/props/defaultProps.js +12 -2
  87. package/es/Card/props/propTypes.js +2 -2
  88. package/es/CheckBox/CheckBox.js +13 -9
  89. package/es/CheckBox/CheckBox.module.css +157 -157
  90. package/es/CheckBox/props/propTypes.js +1 -0
  91. package/es/DateTime/CalendarView.js +46 -19
  92. package/es/DateTime/DateTime.js +139 -77
  93. package/es/DateTime/DateTime.module.css +235 -232
  94. package/es/DateTime/DateTimePopupFooter.js +4 -2
  95. package/es/DateTime/DateTimePopupHeader.js +30 -11
  96. package/es/DateTime/DateWidget.js +122 -51
  97. package/es/DateTime/DateWidget.module.css +38 -38
  98. package/es/DateTime/DaysRow.js +6 -3
  99. package/es/DateTime/Time.js +10 -2
  100. package/es/DateTime/YearView.js +41 -9
  101. package/es/DateTime/YearView.module.css +99 -81
  102. package/es/DateTime/__tests__/CalendarView.spec.js +1 -0
  103. package/es/DateTime/__tests__/DateTime.spec.js +1 -0
  104. package/es/DateTime/__tests__/DateWidget.spec.js +2 -3
  105. package/es/DateTime/common.js +3 -0
  106. package/es/DateTime/constants.js +1 -0
  107. package/es/DateTime/dateFormatUtils/dateFormat.js +63 -30
  108. package/es/DateTime/dateFormatUtils/dateFormats.js +42 -0
  109. package/es/DateTime/dateFormatUtils/dayChange.js +13 -4
  110. package/es/DateTime/dateFormatUtils/index.js +59 -2
  111. package/es/DateTime/dateFormatUtils/monthChange.js +8 -0
  112. package/es/DateTime/dateFormatUtils/timeChange.js +22 -6
  113. package/es/DateTime/dateFormatUtils/yearChange.js +11 -2
  114. package/es/DateTime/index.js +1 -1
  115. package/es/DateTime/objectUtils.js +14 -20
  116. package/es/DateTime/props/defaultProps.js +2 -1
  117. package/es/DateTime/props/propTypes.js +5 -2
  118. package/es/DateTime/typeChecker.js +3 -0
  119. package/es/DateTime/validator.js +58 -6
  120. package/es/DropBox/DropBox.js +82 -218
  121. package/es/DropBox/DropBoxElement/DropBoxElement.js +132 -0
  122. package/es/DropBox/DropBoxElement/css/DropBoxElement.module.css +435 -0
  123. package/es/DropBox/DropBoxElement/css/cssJSLogic.js +91 -0
  124. package/es/DropBox/DropBoxElement/props/defaultProps.js +18 -0
  125. package/es/DropBox/DropBoxElement/props/propTypes.js +45 -0
  126. package/es/DropBox/DropBoxElement/useDropboxPosCalc.js +54 -0
  127. package/es/DropBox/DropBoxPositionMapping.json +144 -144
  128. package/es/DropBox/__tests__/DropBox.spec.js +2 -2
  129. package/es/DropBox/css/DropBox.module.css +59 -0
  130. package/es/DropBox/css/cssJSLogic.js +14 -0
  131. package/es/DropBox/props/defaultProps.js +9 -15
  132. package/es/DropBox/props/propTypes.js +9 -41
  133. package/es/DropDown/DropDown.js +16 -9
  134. package/es/DropDown/DropDown.module.css +5 -5
  135. package/es/DropDown/DropDownHeading.js +18 -11
  136. package/es/DropDown/DropDownHeading.module.css +53 -53
  137. package/es/DropDown/DropDownItem.js +8 -1
  138. package/es/DropDown/DropDownItem.module.css +94 -94
  139. package/es/DropDown/DropDownSearch.js +4 -0
  140. package/es/DropDown/DropDownSearch.module.css +14 -14
  141. package/es/DropDown/DropDownSeparator.js +1 -0
  142. package/es/DropDown/DropDownSeparator.module.css +7 -7
  143. package/es/DropDown/__tests__/DropDown.spec.js +1 -2
  144. package/es/DropDown/index.js +7 -0
  145. package/es/DropDown/props/defaultProps.js +3 -1
  146. package/es/DropDown/props/propTypes.js +2 -1
  147. package/es/Heading/Heading.js +8 -7
  148. package/es/Heading/Heading.module.css +4 -4
  149. package/es/Label/Label.js +16 -11
  150. package/es/Label/Label.module.css +52 -52
  151. package/es/Label/LabelColors.module.css +20 -20
  152. package/es/Label/__tests__/__snapshots__/Label.spec.js.snap +101 -101
  153. package/es/Label/props/defaultProps.js +2 -1
  154. package/es/Label/props/propTypes.js +1 -0
  155. package/es/Layout/Box.js +19 -4
  156. package/es/Layout/Container.js +18 -5
  157. package/es/Layout/Layout.module.css +335 -335
  158. package/es/Layout/index.js +9 -10
  159. package/es/Layout/props/defaultProps.js +6 -2
  160. package/es/Layout/props/propTypes.js +7 -3
  161. package/es/Layout/utils.js +5 -1
  162. package/es/ListItem/ListContainer.js +21 -9
  163. package/es/ListItem/ListItem.js +30 -14
  164. package/es/ListItem/ListItem.module.css +216 -209
  165. package/es/ListItem/ListItemWithAvatar.js +30 -15
  166. package/es/ListItem/ListItemWithCheckBox.js +22 -10
  167. package/es/ListItem/ListItemWithIcon.js +29 -14
  168. package/es/ListItem/ListItemWithRadio.js +22 -10
  169. package/es/ListItem/index.js +6 -0
  170. package/es/ListItem/props/defaultProps.js +18 -6
  171. package/es/ListItem/props/propTypes.js +13 -1
  172. package/es/Modal/Modal.js +35 -17
  173. package/es/MultiSelect/AdvancedGroupMultiSelect.js +105 -25
  174. package/es/MultiSelect/AdvancedMultiSelect.js +45 -19
  175. package/es/MultiSelect/EmptyState.js +6 -0
  176. package/es/MultiSelect/MultiSelect.js +134 -51
  177. package/es/MultiSelect/MultiSelect.module.css +206 -205
  178. package/es/MultiSelect/MultiSelectHeader.js +3 -0
  179. package/es/MultiSelect/MultiSelectWithAvatar.js +43 -19
  180. package/es/MultiSelect/SelectedOptions.js +6 -3
  181. package/es/MultiSelect/SelectedOptions.module.css +15 -15
  182. package/es/MultiSelect/Suggestions.js +13 -6
  183. package/es/MultiSelect/__tests__/MultiSelect.spec.js +4 -6
  184. package/es/MultiSelect/index.js +4 -0
  185. package/es/MultiSelect/props/defaultProps.js +11 -4
  186. package/es/MultiSelect/props/propTypes.js +17 -5
  187. package/es/PopOver/PopOver.js +25 -9
  188. package/es/PopOver/PopOver.module.css +8 -8
  189. package/es/PopOver/__tests__/PopOver.spec.js +2 -1
  190. package/es/PopOver/index.js +3 -0
  191. package/es/Popup/Popup.js +80 -31
  192. package/es/Popup/PositionMapping.json +73 -73
  193. package/es/Popup/__tests__/Popup.spec.js +17 -5
  194. package/es/Popup/viewPort.js +16 -4
  195. package/es/Provider/AvatarSize.js +1 -0
  196. package/es/Provider/IdProvider.js +16 -10
  197. package/es/Provider/LibraryContext.js +6 -4
  198. package/es/Provider/NumberGenerator/NumberGenerator.js +21 -7
  199. package/es/Provider/ZindexProvider.js +9 -2
  200. package/es/Provider/index.js +4 -0
  201. package/es/Radio/Radio.js +9 -7
  202. package/es/Radio/Radio.module.css +112 -112
  203. package/es/Responsive/CustomResponsive.js +37 -21
  204. package/es/Responsive/RefWrapper.js +6 -7
  205. package/es/Responsive/ResizeComponent.js +35 -25
  206. package/es/Responsive/ResizeObserver.js +26 -6
  207. package/es/Responsive/Responsive.js +34 -20
  208. package/es/Responsive/index.js +9 -8
  209. package/es/Responsive/sizeObservers.js +28 -7
  210. package/es/Responsive/utils/index.js +7 -5
  211. package/es/Responsive/utils/shallowCompare.js +7 -2
  212. package/es/Responsive/windowResizeObserver.js +7 -0
  213. package/es/ResponsiveDropBox/ResponsiveDropBox.js +4 -0
  214. package/es/ResponsiveDropBox/ResponsiveDropBox.module.css +6 -6
  215. package/es/Ribbon/Ribbon.js +21 -15
  216. package/es/Ribbon/Ribbon.module.css +454 -376
  217. package/es/Ribbon/__tests__/__snapshots__/Ribbon.spec.js.snap +163 -163
  218. package/es/Ribbon/props/defaultProps.js +2 -1
  219. package/es/Ribbon/props/propTypes.js +2 -1
  220. package/es/RippleEffect/RippleEffect.js +6 -7
  221. package/es/RippleEffect/RippleEffect.module.css +92 -92
  222. package/es/Select/GroupSelect.js +71 -23
  223. package/es/Select/Select.js +115 -50
  224. package/es/Select/Select.module.css +108 -108
  225. package/es/Select/SelectWithAvatar.js +31 -12
  226. package/es/Select/SelectWithIcon.js +60 -14
  227. package/es/Select/__tests__/Select.spec.js +6 -8
  228. package/es/Select/index.js +4 -0
  229. package/es/Select/props/defaultProps.js +6 -1
  230. package/es/Select/props/propTypes.js +10 -4
  231. package/es/Stencils/Stencils.js +10 -9
  232. package/es/Stencils/Stencils.module.css +96 -96
  233. package/es/Stencils/__tests__/__snapshots__/Stencils.spec.js.snap +49 -49
  234. package/es/Switch/Switch.js +14 -8
  235. package/es/Switch/Switch.module.css +127 -110
  236. package/es/Switch/props/defaultProps.js +2 -1
  237. package/es/Switch/props/propTypes.js +1 -0
  238. package/es/Tab/Tab.js +14 -11
  239. package/es/Tab/Tab.module.css +100 -101
  240. package/es/Tab/TabContent.js +6 -3
  241. package/es/Tab/TabContent.module.css +4 -4
  242. package/es/Tab/TabContentWrapper.js +6 -2
  243. package/es/Tab/TabWrapper.js +9 -4
  244. package/es/Tab/Tabs.js +100 -36
  245. package/es/Tab/Tabs.module.css +137 -141
  246. package/es/Tab/__tests__/Tab.spec.js +4 -12
  247. package/es/Tab/__tests__/TabWrapper.spec.js +1 -0
  248. package/es/Tab/props/defaultProps.js +10 -5
  249. package/es/Tab/props/propTypes.js +10 -5
  250. package/es/Tag/Tag.js +24 -18
  251. package/es/Tag/Tag.module.css +254 -254
  252. package/es/Tag/props/defaultProps.js +2 -1
  253. package/es/Tag/props/propTypes.js +2 -1
  254. package/es/TextBox/TextBox.js +26 -10
  255. package/es/TextBox/TextBox.module.css +158 -157
  256. package/es/TextBox/__tests__/TextBox.spec.js +1 -4
  257. package/es/TextBox/__tests__/__snapshots__/TextBox.spec.js.snap +127 -127
  258. package/es/TextBox/props/defaultProps.js +2 -1
  259. package/es/TextBox/props/propTypes.js +2 -1
  260. package/es/TextBoxIcon/TextBoxIcon.js +39 -13
  261. package/es/TextBoxIcon/TextBoxIcon.module.css +79 -78
  262. package/es/TextBoxIcon/__tests__/TextBoxIcon.spec.js +2 -7
  263. package/es/TextBoxIcon/__tests__/__snapshots__/TextBoxIcon.spec.js.snap +334 -334
  264. package/es/TextBoxIcon/props/defaultProps.js +2 -1
  265. package/es/TextBoxIcon/props/propTypes.js +1 -0
  266. package/es/Textarea/Textarea.js +23 -10
  267. package/es/Textarea/Textarea.module.css +139 -139
  268. package/es/Textarea/__tests__/Textarea.spec.js +2 -2
  269. package/es/Textarea/__tests__/__snapshots__/Textarea.spec.js.snap +97 -97
  270. package/es/Textarea/props/defaultProps.js +2 -1
  271. package/es/Textarea/props/propTypes.js +1 -0
  272. package/es/Tooltip/Tooltip.js +67 -21
  273. package/es/Tooltip/Tooltip.module.css +141 -109
  274. package/es/Tooltip/__tests__/Tooltip.spec.js +5 -0
  275. package/es/VelocityAnimation/VelocityAnimation/VelocityAnimation.js +7 -6
  276. package/es/VelocityAnimation/VelocityAnimationGroup/VelocityAnimationGroup.js +11 -8
  277. package/es/VelocityAnimation/index.js +2 -0
  278. package/es/common/a11y.module.css +4 -0
  279. package/es/common/animation.module.css +624 -624
  280. package/es/common/avatarsizes.module.css +48 -44
  281. package/es/common/basic.module.css +33 -33
  282. package/es/common/basicReset.module.css +40 -40
  283. package/es/common/boxShadow.module.css +34 -0
  284. package/es/common/common.module.css +524 -524
  285. package/es/common/customscroll.module.css +91 -89
  286. package/es/common/reset.module.css +13 -12
  287. package/es/common/transition.module.css +146 -146
  288. package/es/css.js +2 -1
  289. package/es/deprecated/AdvancedMultiSelect.module.css +126 -126
  290. package/es/deprecated/PortalLayer/PortalLayer.js +30 -24
  291. package/es/index.js +30 -146
  292. package/es/semantic/Button/Button.js +9 -7
  293. package/es/semantic/Button/semanticButton.module.css +9 -9
  294. package/es/semantic/index.js +1 -0
  295. package/es/utils/Common.js +74 -7
  296. package/es/utils/ContextOptimizer.js +4 -5
  297. package/es/utils/__tests__/debounce.spec.js +2 -2
  298. package/es/utils/constructFullName.js +2 -0
  299. package/es/utils/css/compileClassNames.js +28 -0
  300. package/es/utils/css/mergeStyle.js +57 -0
  301. package/es/utils/css/utils.js +24 -0
  302. package/es/utils/datetime/GMTZones.js +48 -0
  303. package/es/utils/datetime/common.js +31 -7
  304. package/es/utils/debounce.js +5 -1
  305. package/es/utils/dropDownUtils.js +71 -13
  306. package/es/utils/getInitial.js +4 -0
  307. package/es/utils/index.js +3 -0
  308. package/es/utils/shallowEqual.js +6 -0
  309. package/install.md +10 -0
  310. package/lib/Accordion/Accordion.js +50 -18
  311. package/lib/Accordion/AccordionItem.js +47 -20
  312. package/lib/Accordion/__tests__/Accordion.spec.js +3 -0
  313. package/lib/Accordion/index.js +3 -0
  314. package/lib/Accordion/props/defaultProps.js +6 -2
  315. package/lib/Accordion/props/propTypes.js +6 -0
  316. package/lib/Animation/Animation.js +44 -21
  317. package/lib/Animation/__tests__/Animation.spec.js +11 -7
  318. package/lib/Animation/props/propTypes.js +3 -0
  319. package/lib/AppContainer/AppContainer.js +75 -27
  320. package/lib/AppContainer/AppContainer.module.css +18 -18
  321. package/lib/AppContainer/props/defaultProps.js +3 -1
  322. package/lib/AppContainer/props/propTypes.js +5 -0
  323. package/lib/Avatar/Avatar.js +106 -53
  324. package/lib/Avatar/Avatar.module.css +176 -135
  325. package/lib/Avatar/__tests__/Avatar.spec.js +44 -0
  326. package/lib/Avatar/__tests__/__snapshots__/Avatar.spec.js.snap +288 -288
  327. package/lib/Avatar/props/defaultProps.js +4 -1
  328. package/lib/Avatar/props/propTypes.js +8 -2
  329. package/lib/AvatarTeam/AvatarTeam.js +70 -36
  330. package/lib/AvatarTeam/AvatarTeam.module.css +189 -161
  331. package/lib/AvatarTeam/__tests__/AvatarTeam.spec.js +13 -0
  332. package/lib/AvatarTeam/__tests__/__snapshots__/AvatarTeam.spec.js.snap +226 -226
  333. package/lib/AvatarTeam/props/defaultProps.js +5 -1
  334. package/lib/AvatarTeam/props/propTypes.js +8 -1
  335. package/lib/Button/Button.js +68 -78
  336. package/{es/Button → lib/Button/css}/Button.module.css +525 -521
  337. package/lib/Button/css/cssJSLogic.js +41 -0
  338. package/lib/Button/index.js +23 -0
  339. package/lib/Button/props/defaultProps.js +5 -1
  340. package/lib/Button/props/propTypes.js +11 -3
  341. package/lib/Buttongroup/Buttongroup.js +50 -20
  342. package/lib/Buttongroup/Buttongroup.module.css +106 -89
  343. package/lib/Buttongroup/__test__/Buttongroup.spec.js +10 -0
  344. package/lib/Buttongroup/__test__/__snapshots__/Buttongroup.spec.js.snap +146 -146
  345. package/lib/Buttongroup/props/defaultProps.js +3 -1
  346. package/lib/Buttongroup/props/propTypes.js +6 -1
  347. package/lib/Card/Card.js +123 -59
  348. package/lib/Card/Card.module.css +20 -20
  349. package/lib/Card/__tests__/Card.spec.js +10 -1
  350. package/lib/Card/index.js +4 -0
  351. package/lib/Card/props/defaultProps.js +16 -4
  352. package/lib/Card/props/propTypes.js +5 -2
  353. package/lib/CheckBox/CheckBox.js +76 -48
  354. package/lib/CheckBox/CheckBox.module.css +157 -157
  355. package/lib/CheckBox/__tests__/CheckBox.spec.js +3 -0
  356. package/lib/CheckBox/props/propTypes.js +4 -0
  357. package/lib/DateTime/CalendarView.js +95 -38
  358. package/lib/DateTime/DateTime.js +309 -216
  359. package/lib/DateTime/DateTime.module.css +235 -232
  360. package/lib/DateTime/DateTimePopupFooter.js +30 -5
  361. package/lib/DateTime/DateTimePopupHeader.js +69 -23
  362. package/lib/DateTime/DateWidget.js +370 -260
  363. package/lib/DateTime/DateWidget.module.css +38 -38
  364. package/lib/DateTime/DaysRow.js +28 -3
  365. package/lib/DateTime/Time.js +72 -29
  366. package/lib/DateTime/YearView.js +89 -30
  367. package/lib/DateTime/YearView.module.css +99 -81
  368. package/lib/DateTime/__tests__/CalendarView.spec.js +13 -5
  369. package/lib/DateTime/__tests__/DateTime.spec.js +51 -37
  370. package/lib/DateTime/__tests__/DateWidget.spec.js +10 -8
  371. package/lib/DateTime/common.js +6 -0
  372. package/lib/DateTime/constants.js +1 -0
  373. package/lib/DateTime/dateFormatUtils/dateFormat.js +184 -122
  374. package/lib/DateTime/dateFormatUtils/dateFormats.js +50 -0
  375. package/lib/DateTime/dateFormatUtils/dayChange.js +14 -7
  376. package/lib/DateTime/dateFormatUtils/index.js +99 -13
  377. package/lib/DateTime/dateFormatUtils/monthChange.js +19 -9
  378. package/lib/DateTime/dateFormatUtils/timeChange.js +52 -20
  379. package/lib/DateTime/dateFormatUtils/yearChange.js +22 -11
  380. package/lib/DateTime/index.js +3 -1
  381. package/lib/DateTime/objectUtils.js +24 -20
  382. package/lib/DateTime/props/defaultProps.js +2 -1
  383. package/lib/DateTime/props/propTypes.js +21 -2
  384. package/lib/DateTime/typeChecker.js +4 -0
  385. package/lib/DateTime/validator.js +69 -6
  386. package/lib/DropBox/DropBox.js +102 -249
  387. package/lib/DropBox/DropBoxElement/DropBoxElement.js +145 -0
  388. package/lib/DropBox/DropBoxElement/css/DropBoxElement.module.css +435 -0
  389. package/lib/DropBox/DropBoxElement/css/cssJSLogic.js +81 -0
  390. package/lib/DropBox/DropBoxElement/props/defaultProps.js +25 -0
  391. package/lib/DropBox/DropBoxElement/props/propTypes.js +56 -0
  392. package/lib/DropBox/DropBoxElement/useDropboxPosCalc.js +60 -0
  393. package/lib/DropBox/DropBoxPositionMapping.json +144 -144
  394. package/lib/DropBox/__tests__/DropBox.spec.js +8 -4
  395. package/lib/DropBox/css/DropBox.module.css +59 -0
  396. package/lib/DropBox/css/cssJSLogic.js +20 -0
  397. package/lib/DropBox/props/defaultProps.js +20 -17
  398. package/lib/DropBox/props/propTypes.js +22 -43
  399. package/lib/DropDown/DropDown.js +58 -10
  400. package/lib/DropDown/DropDown.module.css +5 -5
  401. package/lib/DropDown/DropDownHeading.js +47 -18
  402. package/lib/DropDown/DropDownHeading.module.css +53 -53
  403. package/lib/DropDown/DropDownItem.js +43 -18
  404. package/lib/DropDown/DropDownItem.module.css +94 -94
  405. package/lib/DropDown/DropDownSearch.js +39 -14
  406. package/lib/DropDown/DropDownSearch.module.css +14 -14
  407. package/lib/DropDown/DropDownSeparator.js +23 -1
  408. package/lib/DropDown/DropDownSeparator.module.css +7 -7
  409. package/lib/DropDown/__tests__/DropDown.spec.js +15 -9
  410. package/lib/DropDown/__tests__/DropDownItem.spec.js +9 -4
  411. package/lib/DropDown/__tests__/DropDownSearch.spec.js +3 -0
  412. package/lib/DropDown/index.js +65 -0
  413. package/lib/DropDown/props/defaultProps.js +3 -1
  414. package/lib/DropDown/props/propTypes.js +7 -1
  415. package/lib/Heading/Heading.js +42 -16
  416. package/lib/Heading/Heading.module.css +4 -4
  417. package/lib/Heading/props/propTypes.js +3 -0
  418. package/lib/Label/Label.js +47 -19
  419. package/lib/Label/Label.module.css +52 -52
  420. package/lib/Label/LabelColors.module.css +20 -20
  421. package/lib/Label/__tests__/Label.spec.js +14 -1
  422. package/lib/Label/__tests__/__snapshots__/Label.spec.js.snap +101 -101
  423. package/lib/Label/props/defaultProps.js +2 -1
  424. package/lib/Label/props/propTypes.js +4 -0
  425. package/lib/Layout/Box.js +41 -16
  426. package/lib/Layout/Container.js +39 -15
  427. package/lib/Layout/Layout.module.css +335 -335
  428. package/lib/Layout/__tests__/Box.spec.js +65 -49
  429. package/lib/Layout/__tests__/Container.spec.js +67 -50
  430. package/lib/Layout/index.js +4 -11
  431. package/lib/Layout/props/defaultProps.js +6 -2
  432. package/lib/Layout/props/propTypes.js +10 -3
  433. package/lib/Layout/utils.js +15 -1
  434. package/lib/ListItem/ListContainer.js +61 -34
  435. package/lib/ListItem/ListItem.js +92 -50
  436. package/lib/ListItem/ListItem.module.css +216 -209
  437. package/lib/ListItem/ListItemWithAvatar.js +98 -54
  438. package/lib/ListItem/ListItemWithCheckBox.js +82 -41
  439. package/lib/ListItem/ListItemWithIcon.js +92 -50
  440. package/lib/ListItem/ListItemWithRadio.js +83 -42
  441. package/lib/ListItem/index.js +55 -0
  442. package/lib/ListItem/props/defaultProps.js +18 -6
  443. package/lib/ListItem/props/propTypes.js +18 -3
  444. package/lib/Modal/Modal.js +51 -13
  445. package/lib/Modal/props/propTypes.js +3 -0
  446. package/lib/MultiSelect/AdvancedGroupMultiSelect.js +305 -172
  447. package/lib/MultiSelect/AdvancedMultiSelect.js +212 -130
  448. package/lib/MultiSelect/EmptyState.js +48 -21
  449. package/lib/MultiSelect/MultiSelect.js +346 -210
  450. package/lib/MultiSelect/MultiSelect.module.css +206 -205
  451. package/lib/MultiSelect/MultiSelectHeader.js +29 -5
  452. package/lib/MultiSelect/MultiSelectWithAvatar.js +126 -65
  453. package/lib/MultiSelect/SelectedOptions.js +42 -14
  454. package/lib/MultiSelect/SelectedOptions.module.css +15 -15
  455. package/lib/MultiSelect/Suggestions.js +66 -29
  456. package/lib/MultiSelect/__tests__/MultiSelect.spec.js +86 -75
  457. package/lib/MultiSelect/index.js +39 -0
  458. package/lib/MultiSelect/props/defaultProps.js +13 -4
  459. package/lib/MultiSelect/props/propTypes.js +20 -5
  460. package/lib/PopOver/PopOver.js +101 -53
  461. package/lib/PopOver/PopOver.module.css +8 -8
  462. package/lib/PopOver/__tests__/PopOver.spec.js +4 -1
  463. package/lib/PopOver/index.js +31 -0
  464. package/lib/PopOver/props/propTypes.js +3 -0
  465. package/lib/Popup/Popup.js +158 -83
  466. package/lib/Popup/PositionMapping.json +73 -73
  467. package/lib/Popup/__tests__/Popup.spec.js +42 -5
  468. package/lib/Popup/viewPort.js +28 -14
  469. package/lib/Provider/AvatarSize.js +5 -0
  470. package/lib/Provider/Config.js +2 -0
  471. package/lib/Provider/CssProvider.js +4 -0
  472. package/lib/Provider/IdProvider.js +23 -12
  473. package/lib/Provider/LibraryContext.js +32 -10
  474. package/lib/Provider/LibraryContextInit.js +4 -0
  475. package/lib/Provider/NumberGenerator/NumberGenerator.js +43 -14
  476. package/lib/Provider/ZindexProvider.js +15 -3
  477. package/lib/Provider/index.js +81 -0
  478. package/lib/Radio/Radio.js +65 -40
  479. package/lib/Radio/Radio.module.css +112 -112
  480. package/lib/Radio/__tests__/Radiospec.js +9 -5
  481. package/lib/Radio/props/propTypes.js +3 -0
  482. package/lib/Responsive/CustomResponsive.js +76 -26
  483. package/lib/Responsive/RefWrapper.js +15 -7
  484. package/lib/Responsive/ResizeComponent.js +58 -27
  485. package/lib/Responsive/ResizeObserver.js +23 -6
  486. package/lib/Responsive/Responsive.js +76 -24
  487. package/lib/Responsive/index.js +49 -22
  488. package/lib/Responsive/props/propTypes.js +3 -0
  489. package/lib/Responsive/sizeObservers.js +51 -13
  490. package/lib/Responsive/utils/index.js +11 -3
  491. package/lib/Responsive/utils/shallowCompare.js +11 -2
  492. package/lib/Responsive/windowResizeObserver.js +8 -0
  493. package/lib/ResponsiveDropBox/ResponsiveDropBox.js +44 -14
  494. package/lib/ResponsiveDropBox/ResponsiveDropBox.module.css +6 -6
  495. package/lib/ResponsiveDropBox/props/propTypes.js +3 -0
  496. package/lib/Ribbon/Ribbon.js +48 -21
  497. package/lib/Ribbon/Ribbon.module.css +454 -376
  498. package/lib/Ribbon/__tests__/Ribbon.spec.js +22 -0
  499. package/lib/Ribbon/__tests__/__snapshots__/Ribbon.spec.js.snap +163 -163
  500. package/lib/Ribbon/props/defaultProps.js +2 -1
  501. package/lib/Ribbon/props/propTypes.js +5 -1
  502. package/lib/RippleEffect/RippleEffect.js +23 -14
  503. package/lib/RippleEffect/RippleEffect.module.css +92 -92
  504. package/lib/RippleEffect/props/propTypes.js +3 -0
  505. package/lib/Select/GroupSelect.js +240 -137
  506. package/lib/Select/Select.js +320 -220
  507. package/lib/Select/Select.module.css +108 -108
  508. package/lib/Select/SelectWithAvatar.js +112 -59
  509. package/lib/Select/SelectWithIcon.js +145 -82
  510. package/lib/Select/__tests__/Select.spec.js +131 -89
  511. package/lib/Select/index.js +39 -0
  512. package/lib/Select/props/defaultProps.js +10 -2
  513. package/lib/Select/props/propTypes.js +13 -4
  514. package/lib/Stencils/Stencils.js +35 -13
  515. package/lib/Stencils/Stencils.module.css +96 -96
  516. package/lib/Stencils/__tests__/Stencils.spec.js +12 -0
  517. package/lib/Stencils/__tests__/__snapshots__/Stencils.spec.js.snap +49 -49
  518. package/lib/Stencils/props/propTypes.js +3 -0
  519. package/lib/Switch/Switch.js +64 -35
  520. package/lib/Switch/Switch.module.css +127 -110
  521. package/lib/Switch/props/defaultProps.js +2 -1
  522. package/lib/Switch/props/propTypes.js +4 -0
  523. package/lib/Tab/Tab.js +49 -33
  524. package/lib/Tab/Tab.module.css +100 -101
  525. package/lib/Tab/TabContent.js +15 -6
  526. package/lib/Tab/TabContent.module.css +4 -4
  527. package/lib/Tab/TabContentWrapper.js +15 -6
  528. package/lib/Tab/TabWrapper.js +37 -17
  529. package/lib/Tab/Tabs.js +204 -105
  530. package/lib/Tab/Tabs.module.css +137 -141
  531. package/lib/Tab/__tests__/Tab.spec.js +74 -70
  532. package/lib/Tab/__tests__/TabContent.spec.js +10 -6
  533. package/lib/Tab/__tests__/TabContentWrapper.spec.js +28 -20
  534. package/lib/Tab/__tests__/TabWrapper.spec.js +12 -0
  535. package/lib/Tab/__tests__/Tabs.spec.js +53 -39
  536. package/lib/Tab/index.js +6 -0
  537. package/lib/Tab/props/defaultProps.js +10 -5
  538. package/lib/Tab/props/propTypes.js +13 -5
  539. package/lib/Tag/Tag.js +90 -56
  540. package/lib/Tag/Tag.module.css +254 -254
  541. package/lib/Tag/__tests__/Tag.spec.js +14 -8
  542. package/lib/Tag/props/defaultProps.js +2 -1
  543. package/lib/Tag/props/propTypes.js +5 -1
  544. package/lib/TextBox/TextBox.js +93 -61
  545. package/lib/TextBox/TextBox.module.css +158 -157
  546. package/lib/TextBox/__tests__/TextBox.spec.js +14 -4
  547. package/lib/TextBox/__tests__/__snapshots__/TextBox.spec.js.snap +127 -127
  548. package/lib/TextBox/props/defaultProps.js +2 -1
  549. package/lib/TextBox/props/propTypes.js +6 -1
  550. package/lib/TextBoxIcon/TextBoxIcon.js +108 -60
  551. package/lib/TextBoxIcon/TextBoxIcon.module.css +79 -78
  552. package/lib/TextBoxIcon/__tests__/TextBoxIcon.spec.js +14 -5
  553. package/lib/TextBoxIcon/__tests__/__snapshots__/TextBoxIcon.spec.js.snap +334 -334
  554. package/lib/TextBoxIcon/props/defaultProps.js +2 -1
  555. package/lib/TextBoxIcon/props/propTypes.js +4 -0
  556. package/lib/Textarea/Textarea.js +63 -32
  557. package/lib/Textarea/Textarea.module.css +139 -139
  558. package/lib/Textarea/__tests__/Textarea.spec.js +14 -2
  559. package/lib/Textarea/__tests__/__snapshots__/Textarea.spec.js.snap +97 -97
  560. package/lib/Textarea/props/defaultProps.js +2 -1
  561. package/lib/Textarea/props/propTypes.js +4 -0
  562. package/lib/Tooltip/Tooltip.js +102 -35
  563. package/lib/Tooltip/Tooltip.module.css +141 -109
  564. package/lib/Tooltip/__tests__/Tooltip.spec.js +23 -0
  565. package/lib/Tooltip/props/propTypes.js +3 -0
  566. package/lib/VelocityAnimation/VelocityAnimation/VelocityAnimation.js +43 -17
  567. package/lib/VelocityAnimation/VelocityAnimation/props/propTypes.js +3 -0
  568. package/lib/VelocityAnimation/VelocityAnimationGroup/VelocityAnimationGroup.js +55 -24
  569. package/lib/VelocityAnimation/VelocityAnimationGroup/props/propTypes.js +3 -0
  570. package/lib/VelocityAnimation/index.js +23 -0
  571. package/lib/common/a11y.module.css +4 -0
  572. package/lib/common/animation.module.css +624 -624
  573. package/lib/common/avatarsizes.module.css +48 -44
  574. package/lib/common/basic.module.css +33 -33
  575. package/lib/common/basicReset.module.css +40 -40
  576. package/lib/common/boxShadow.module.css +34 -0
  577. package/lib/common/common.module.css +524 -524
  578. package/lib/common/customscroll.module.css +91 -89
  579. package/lib/common/reset.module.css +13 -12
  580. package/lib/common/transition.module.css +146 -146
  581. package/lib/css.js +42 -1
  582. package/lib/deprecated/AdvancedMultiSelect.module.css +126 -126
  583. package/lib/deprecated/PortalLayer/PortalLayer.js +50 -24
  584. package/lib/deprecated/PortalLayer/props/propTypes.js +3 -0
  585. package/lib/index.js +214 -210
  586. package/lib/semantic/Button/Button.js +47 -24
  587. package/lib/semantic/Button/props/propTypes.js +3 -0
  588. package/lib/semantic/Button/semanticButton.module.css +9 -9
  589. package/lib/semantic/index.js +15 -0
  590. package/lib/utils/Common.js +136 -17
  591. package/lib/utils/ContextOptimizer.js +16 -10
  592. package/lib/utils/__tests__/constructFullName.spec.js +1 -0
  593. package/lib/utils/__tests__/debounce.spec.js +3 -2
  594. package/lib/utils/__tests__/getInitial.spec.js +1 -0
  595. package/lib/utils/constructFullName.js +11 -2
  596. package/lib/utils/css/compileClassNames.js +37 -0
  597. package/lib/utils/css/mergeStyle.js +69 -0
  598. package/lib/utils/css/utils.js +41 -0
  599. package/lib/utils/datetime/GMTZones.js +55 -0
  600. package/lib/utils/datetime/common.js +52 -7
  601. package/lib/utils/debounce.js +6 -1
  602. package/lib/utils/dropDownUtils.js +177 -56
  603. package/lib/utils/dummyFunction.js +2 -0
  604. package/lib/utils/getHTMLFontSize.js +1 -0
  605. package/lib/utils/getInitial.js +6 -0
  606. package/lib/utils/index.js +121 -0
  607. package/lib/utils/scrollTo.js +2 -0
  608. package/lib/utils/shallowEqual.js +8 -0
  609. package/package.json +117 -81
  610. package/postPublish.js +8 -0
  611. package/prePublish.js +70 -0
  612. package/assets/Appearance/dark/mode/darkMode.module.css +0 -344
  613. package/assets/Appearance/dark/themes/blue/blueDarkCTATheme.module.css +0 -34
  614. package/assets/Appearance/dark/themes/blue/blueDarkComponentTheme.module.css +0 -42
  615. package/assets/Appearance/dark/themes/green/greenDarkCTATheme.module.css +0 -34
  616. package/assets/Appearance/dark/themes/green/greenDarkComponentTheme.module.css +0 -42
  617. package/assets/Appearance/dark/themes/orange/orangeDarkCTATheme.module.css +0 -34
  618. package/assets/Appearance/dark/themes/orange/orangeDarkComponentTheme.module.css +0 -42
  619. package/assets/Appearance/dark/themes/red/redDarkCTATheme.module.css +0 -34
  620. package/assets/Appearance/dark/themes/red/redDarkComponentTheme.module.css +0 -42
  621. package/assets/Appearance/dark/themes/yellow/yellowDarkCTATheme.module.css +0 -34
  622. package/assets/Appearance/dark/themes/yellow/yellowDarkComponentTheme.module.css +0 -42
  623. package/assets/Appearance/default/mode/defaultMode.module.css +0 -344
  624. package/assets/Appearance/default/themes/blue/blueDefaultCTATheme.module.css +0 -34
  625. package/assets/Appearance/default/themes/blue/blueDefaultComponentTheme.module.css +0 -42
  626. package/assets/Appearance/default/themes/green/greenDefaultCTATheme.module.css +0 -34
  627. package/assets/Appearance/default/themes/green/greenDefaultComponentTheme.module.css +0 -42
  628. package/assets/Appearance/default/themes/orange/orangeDefaultCTATheme.module.css +0 -34
  629. package/assets/Appearance/default/themes/orange/orangeDefaultComponentTheme.module.css +0 -42
  630. package/assets/Appearance/default/themes/red/redDefaultCTATheme.module.css +0 -34
  631. package/assets/Appearance/default/themes/red/redDefaultComponentTheme.module.css +0 -42
  632. package/assets/Appearance/default/themes/yellow/yellowDefaultCTATheme.module.css +0 -34
  633. package/assets/Appearance/default/themes/yellow/yellowDefaultComponentTheme.module.css +0 -42
  634. package/assets/Appearance/pureDark/mode/pureDarkMode.module.css +0 -344
  635. package/assets/Appearance/pureDark/themes/blue/bluePureDarkCTATheme.module.css +0 -34
  636. package/assets/Appearance/pureDark/themes/blue/bluePureDarkComponentTheme.module.css +0 -42
  637. package/assets/Appearance/pureDark/themes/green/greenPureDarkCTATheme.module.css +0 -34
  638. package/assets/Appearance/pureDark/themes/green/greenPureDarkComponentTheme.module.css +0 -42
  639. package/assets/Appearance/pureDark/themes/orange/orangePureDarkCTATheme.module.css +0 -34
  640. package/assets/Appearance/pureDark/themes/orange/orangePureDarkComponentTheme.module.css +0 -42
  641. package/assets/Appearance/pureDark/themes/red/redPureDarkCTATheme.module.css +0 -34
  642. package/assets/Appearance/pureDark/themes/red/redPureDarkComponentTheme.module.css +0 -42
  643. package/assets/Appearance/pureDark/themes/yellow/yellowPureDarkCTATheme.module.css +0 -34
  644. package/assets/Appearance/pureDark/themes/yellow/yellowPureDarkComponentTheme.module.css +0 -42
  645. package/docs/external/active-line.js +0 -72
  646. package/docs/external/autorefresh.js +0 -47
  647. package/docs/external/codemirror.js +0 -9681
  648. package/docs/external/css/hopscotch.css +0 -576
  649. package/docs/external/css/styleGuide.css +0 -1100
  650. package/docs/external/css.js +0 -466
  651. package/docs/external/designTokens.js +0 -1
  652. package/docs/external/foldcode.js +0 -152
  653. package/docs/external/format.js +0 -129
  654. package/docs/external/htmlmixed.js +0 -84
  655. package/docs/external/images/bottom.png +0 -0
  656. package/docs/external/images/bottombg.jpg +0 -0
  657. package/docs/external/images/desk.png +0 -0
  658. package/docs/external/images/desklogo.png +0 -0
  659. package/docs/external/images/menu.png +0 -0
  660. package/docs/external/index.html +0 -127
  661. package/docs/external/javascript.js +0 -422
  662. package/docs/external/jsx.js +0 -148
  663. package/docs/external/matchbrackets.js +0 -145
  664. package/docs/external/xml.js +0 -322
  665. package/docs/package.json +0 -41
  666. package/docs/src/index.js +0 -1311
  667. package/es/Button/__tests__/Button.spec.js +0 -190
  668. package/es/Button/__tests__/__snapshots__/Button.spec.js.snap +0 -191
  669. package/es/DropBox/DropBox.module.css +0 -406
  670. package/lib/Button/__tests__/Button.spec.js +0 -193
  671. package/lib/Button/__tests__/__snapshots__/Button.spec.js.snap +0 -191
  672. package/lib/DropBox/DropBox.module.css +0 -406
@@ -1,22 +1,24 @@
1
1
  function _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }
2
+
2
3
  import React from 'react';
3
4
  import { defaultProps } from './props/defaultProps';
4
5
  import { propTypes } from './props/propTypes';
5
6
  import { getInitial } from '../utils/getInitial';
6
7
  import AvatarSize from '../Provider/AvatarSize';
7
8
  import style from './Avatar.module.css';
8
- /*
9
- 1. need to change name into firstName lastName
10
- 2. pattern support via context as well as props
11
- 3. prop high priority to arrange firstName lastName
12
- 4. team pass name as lastName and pass pattern via prop
9
+ /*
10
+ 1. need to change name into firstName lastName
11
+ 2. pattern support via context as well as props
12
+ 3. prop high priority to arrange firstName lastName
13
+ 4. team pass name as lastName and pass pattern via prop
13
14
  */
14
15
 
15
- /*
16
- eslint css-modules/no-unused-class: [2, { markAsUsed: ['circle', 'square',
17
- 'small','medium','xmedium',"xsmall", "large", "xlarge", "primary", "secondary",
18
- "info","default"] }]
16
+ /*
17
+ eslint css-modules/no-unused-class: [2, { markAsUsed: ['circle', 'square',
18
+ 'small','medium','xmedium',"xsmall", "large", "xlarge", "primary", "secondary",
19
+ "info","default"] }]
19
20
  */
21
+
20
22
  export default class Avatar extends React.Component {
21
23
  constructor(props) {
22
24
  super(props);
@@ -27,6 +29,7 @@ export default class Avatar extends React.Component {
27
29
  this.putValidImageURLJSON = this.putValidImageURLJSON.bind(this);
28
30
  this.getInitialByFullName = this.getInitialByFullName.bind(this);
29
31
  }
32
+
30
33
  componentDidUpdate(prevProps, prevState) {
31
34
  let {
32
35
  src
@@ -34,12 +37,14 @@ export default class Avatar extends React.Component {
34
37
  let {
35
38
  isLoaded
36
39
  } = this.state;
40
+
37
41
  if (prevProps.src !== src) {
38
42
  this.setState({
39
43
  isLoaded: !isLoaded
40
44
  });
41
45
  }
42
46
  }
47
+
43
48
  putInvalidImageURLJSON() {
44
49
  const {
45
50
  src,
@@ -49,23 +54,25 @@ export default class Avatar extends React.Component {
49
54
  isLoaded
50
55
  } = this.state;
51
56
  let _validImgArr = [...Avatar.validImageURLs];
52
- let _invalidImgArr = [...Avatar.invalidImageURLs];
53
-
54
- // if (alternateSrc) {
57
+ let _invalidImgArr = [...Avatar.invalidImageURLs]; // if (alternateSrc) {
55
58
  // _validImgArr.push(alternateSrc);
56
59
  // }
57
60
 
58
61
  const validIndex = _validImgArr.indexOf(src);
62
+
59
63
  if (validIndex !== -1) {
60
64
  _validImgArr.splice(validIndex, 1);
61
65
  }
66
+
62
67
  _invalidImgArr.push(src);
68
+
63
69
  Avatar.invalidImageURLs = _invalidImgArr;
64
70
  Avatar.validImageURLs = _validImgArr;
65
71
  this.setState({
66
72
  isLoaded: !isLoaded
67
73
  });
68
74
  }
75
+
69
76
  putValidImageURLJSON() {
70
77
  const {
71
78
  src
@@ -75,28 +82,32 @@ export default class Avatar extends React.Component {
75
82
  } = this.state;
76
83
  const validImgArr = Avatar.validImageURLs;
77
84
  const invalidImgArr = Avatar.invalidImageURLs;
85
+
78
86
  if (src && validImgArr.indexOf(src) === -1 && invalidImgArr.indexOf(src) === -1) {
79
87
  let _validImgArr = [...validImgArr];
88
+
80
89
  _validImgArr.push(src);
90
+
81
91
  Avatar.validImageURLs = _validImgArr;
82
92
  this.setState({
83
93
  isLoaded: !isLoaded
84
94
  });
85
95
  }
86
96
  }
87
-
88
97
  /* this will cause error if user name already have some space need to move firstName lastName user preference pattern*/
98
+
99
+
89
100
  getInitialByFullName() {
90
101
  let fullName = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : '';
91
102
  fullName = (fullName || '').trim();
92
103
  let nameList = fullName.split(' ');
104
+
93
105
  if (nameList.length === 1) {
94
106
  return getInitial('', nameList[0]);
95
107
  }
96
- return getInitial(nameList[0], nameList[1]);
97
- }
98
108
 
99
- // componentDidMount() {
109
+ return getInitial(nameList[0], nameList[1]);
110
+ } // componentDidMount() {
100
111
  // const { src } = this.props;
101
112
  // const validImgArr = Avatar.validImageURLs;
102
113
  // if (validImgArr.indexOf(src) === -1) {
@@ -105,6 +116,7 @@ export default class Avatar extends React.Component {
105
116
  // }
106
117
  // }
107
118
 
119
+
108
120
  render() {
109
121
  let {
110
122
  src,
@@ -124,7 +136,10 @@ export default class Avatar extends React.Component {
124
136
  customClass,
125
137
  alternateSrc,
126
138
  isAnimate,
127
- customProps
139
+ dataSelectorId,
140
+ customProps,
141
+ needInnerBorder,
142
+ needDefaultBorder
128
143
  } = this.props;
129
144
  let {
130
145
  AvatarProps = {}
@@ -132,41 +147,49 @@ export default class Avatar extends React.Component {
132
147
  let textStyle = textPalette ? style[textPalette] : palette === 'secondary' ? style.white : style.black;
133
148
  let shapeStyle = shape === 'circle' ? 'circle' : `square_${size}`;
134
149
  initial = initial || this.getInitialByFullName(name);
135
- let isInvalidImageList = Avatar.invalidImageURLs.indexOf(src) !== -1;
136
- let isValidImageList = Avatar.validImageURLs.indexOf(src) !== -1;
137
- let border = borderOnHover || onClick;
138
- let borderStyle = (!src || src && isInvalidImageList || !isValidImageList) && needBorder ? `${style.border} ${borderOnActive ? style.borderOnActive : border ? style.borderOnHover : ''} ` : '';
150
+ let isInvalidImageList = Avatar.invalidImageURLs.indexOf(src) !== -1; //let isValidImageList = Avatar.validImageURLs.indexOf(src) !== -1;
151
+
139
152
  let showAvatar = src && !isInvalidImageList;
140
- let showInitial = !showAvatar || showAvatar && !isValidImageList;
153
+ let showInitial = !showAvatar || showAvatar && isInvalidImageList;
141
154
  const showAlternateAvatar = alternateSrc ? showInitial : false;
155
+ let border = borderOnHover || onClick;
156
+ let showDefaultBorder = src && !isInvalidImageList && needDefaultBorder;
157
+ let borderStyle = (showDefaultBorder || !src || !showAvatar || showInitial) && needBorder ? `${style.border} ${borderOnActive ? style.borderOnActive : border ? style.borderOnHover : ''} ` : '';
142
158
  borderStyle = showAlternateAvatar ? '' : borderStyle;
143
159
  return /*#__PURE__*/React.createElement("div", _extends({
144
160
  className: `${style.avatar} ${style[size]} ${AvatarSize(size)} ${style[shapeStyle]} ${style[palette]} ${textStyle} ${borderStyle} ${customClass ? customClass : ''}`,
145
161
  "data-title": needTitle ? title ? title : name : null,
146
162
  "data-id": dataId,
147
- onClick: onClick
163
+ "data-test-id": dataId,
164
+ onClick: onClick,
165
+ "data-selector-id": dataSelectorId
148
166
  }, AvatarProps), showInitial && !showAlternateAvatar && /*#__PURE__*/React.createElement("span", {
149
167
  className: `${style.initial}`,
150
- "data-id": `${dataId}_AvatarInitial`
168
+ "data-id": `${dataId}_AvatarInitial`,
169
+ "data-test-id": `${dataId}_AvatarInitial`,
170
+ "data-selector-id": `${dataSelectorId}_AvatarInitial`
151
171
  }, initial), (showAvatar || showAlternateAvatar) && /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement("img", {
152
- className: `${style.image} ${isAnimate ? style.animate : ''}`,
172
+ className: `${style.image} ${isAnimate ? style.animate : ''} ${needInnerBorder ? style.innerBorder : ''}`,
153
173
  "data-id": `${dataId}_AvatarImg`,
174
+ "data-test-id": `${dataId}_AvatarImg`,
175
+ "data-selector-id": `${dataSelectorId}_AvatarImg`,
154
176
  name: name,
155
177
  onError: this.putInvalidImageURLJSON,
156
178
  onLoad: this.putValidImageURLJSON,
157
- src: showAlternateAvatar ? alternateSrc : src
158
- }), !isValidImageList && !showAlternateAvatar ? null : /*#__PURE__*/React.createElement("span", {
179
+ src: showAlternateAvatar ? alternateSrc : src,
180
+ alt: name
181
+ }), showDefaultBorder ? null : /*#__PURE__*/React.createElement("span", {
159
182
  className: `${style.shadow} ${textStyle} `
160
183
  })));
161
184
  }
185
+
162
186
  }
163
187
  Avatar.defaultProps = defaultProps;
164
188
  Avatar.propTypes = propTypes;
165
189
  Avatar.invalidImageURLs = [];
166
- Avatar.validImageURLs = [];
167
- if (false) {
168
- Avatar.docs = {
169
- componentGroup: 'Avatar Group',
170
- folderName: 'Style Guide'
171
- };
172
- }
190
+ Avatar.validImageURLs = []; // if (__DOCS__) {
191
+ // Avatar.docs = {
192
+ // componentGroup: 'Avatar Group',
193
+ // folderName: 'Style Guide'
194
+ // };
195
+ // }
@@ -1,135 +1,176 @@
1
- .varClass {
2
- /* avatar default variables */
3
- --avatar_text_color: var(--zdt_avatar_default_text);
4
- --avatar_font_size: var(--zd_font_size14);
5
- --avatar_bg_color: var(--zdt_avatar_default_bg);
6
- --avatar_border_radius: 50%;
7
- --avatar_border_width: 0;
8
- --avatar_border_style: solid;
9
- --avatar_border_color: var(--zdt_avatar_default_border);
10
- --avatar_border_hoverColor: var(--zdt_avatar_default_borderHover);
11
- --avatar_boxshadow: var(--zdt_avatar_default_boxshadow);
12
- --avatar_text_transform: uppercase;
13
- }
14
- .avatar {
15
- composes: varClass;
16
- position: relative;
17
- composes: dInflex alignVertical alignHorizontal from '../common/common.module.css';
18
- vertical-align: middle;
19
- font-size: var(--avatar_font_size);
20
- color: var(--avatar_text_color);
21
- border-width: var(--avatar_border_width);
22
- border-style: var(--avatar_border_style);
23
- }
24
- .border {
25
- border-color: var(--avatar_border_color);
26
- }
27
- .borderOnHover:hover, .borderOnActive {
28
- border-color: var(--avatar_border_hoverColor);
29
- }
30
- .avatar, .primary {
31
- background-color: var(--avatar_bg_color);
32
- }
33
- .shadow {
34
- position: absolute;
35
- height: 100%;
36
- width: 100%;
37
- top: 0;
38
- pointer-events: none;
39
- border-radius: var(--avatar_border_radius);
40
- }
41
- [dir=ltr] .shadow {
42
- left: 0;
43
- }
44
- [dir=rtl] .shadow {
45
- right: 0;
46
- }
47
- .shadow.black {
48
- box-shadow: inset 0px 0px 5px var(--avatar_boxshadow);
49
- }
50
- .shadow.white {
51
- box-shadow: inset 0px 0px 11px var(--avatar_boxshadow);
52
- }
53
- .avatar, .circle {
54
- border-radius: var(--avatar_border_radius);
55
- }
56
- .border {
57
- --avatar_border_width: 1px;
58
- }
59
- .image {
60
- width: 100%;
61
- height: 100%;
62
- position: absolute;
63
- top:0;
64
- z-index: 0;
65
- border-radius: var(--avatar_border_radius);
66
- }
67
- [dir=ltr] .image {
68
- left:0;
69
- }
70
- [dir=rtl] .image {
71
- right:0;
72
- }
73
- .animate{
74
- composes:fadeIn modeForward from './../common/animation.module.css';
75
- }
76
- [dir=ltr] .animate{
77
- animation-duration: var(--zd_transition2);
78
- }
79
- [dir=rtl] .animate{
80
- animation-duration: var(--zd_transition2);
81
- }
82
- .square_small {
83
- --avatar_border_radius: 4px;
84
- }
85
- .square_xsmall {
86
- --avatar_border_radius: 6px;
87
- }
88
- .square_medium,
89
- .square_xmedium {
90
- --avatar_border_radius: 8px;
91
- }
92
- .square_large,
93
- .square_xlarge {
94
- --avatar_border_radius: 10px;
95
- }
96
- .none {
97
- display: none;
98
- }
99
- .default {
100
- --avatar_border_width: 0;
101
- }
102
- .secondary {
103
- --avatar_bg_color: var(--zdt_avatar_secondary_bg);
104
- }
105
- .info {
106
- --avatar_bg_color: var(--zdt_avatar_info_bg);
107
- }
108
- .initial {
109
- text-transform: var(--avatar_text_transform);
110
- display: inline-block;
111
- }
112
- .small {
113
- --avatar_font_size: var(--zd_font_size9);
114
- }
115
- .xsmall {
116
- --avatar_font_size: var(--zd_font_size12);
117
- }
118
- .medium {
119
- --avatar_font_size: var(--zd_font_size14);
120
- }
121
- .xmedium {
122
- --avatar_font_size: var(--zd_font_size14);
123
- }
124
- .large {
125
- --avatar_font_size: var(--zd_font_size18);
126
- }
127
- .xlarge {
128
- --avatar_font_size: var(--zd_font_size28);
129
- }
130
- .white {
131
- --avatar_text_color: var(--zdt_avatar_white_text);
132
- --avatar_border_color: var(--zdt_avatar_white_border);
133
- --avatar_border_hoverColor: var(--zdt_avatar_white_borderHover);
134
- --avatar_boxshadow: var(--zdt_avatar_white_boxshadow);
135
- }
1
+ .varClass {
2
+ /* avatar default variables */
3
+ --avatar_text_color: var(--zdt_avatar_default_text);
4
+ --avatar_font_size: var(--zd_font_size14);
5
+ --avatar_bg_color: var(--zdt_avatar_default_bg);
6
+ --avatar_border_radius: 50%;
7
+ --avatar_border_width: 0;
8
+ --avatar_border_style: solid;
9
+ --avatar_border_color: var(--zdt_avatar_default_border);
10
+ --avatar_border_hoverColor: var(--zdt_avatar_default_borderHover);
11
+ --avatar_boxshadow: var(--zdt_avatar_default_boxshadow);
12
+ --avatar_text_transform: uppercase;
13
+ }
14
+
15
+ .avatar {
16
+ composes: varClass;
17
+ position: relative;
18
+ composes: dInflex alignVertical alignHorizontal from '../common/common.module.css';
19
+ vertical-align: middle;
20
+ font-size: var(--avatar_font_size);
21
+ color: var(--avatar_text_color);
22
+ border-width: var(--avatar_border_width);
23
+ border-style: var(--avatar_border_style);
24
+ }
25
+
26
+ .border {
27
+ border-color: var(--avatar_border_color);
28
+ }
29
+
30
+ .borderOnHover:hover, .borderOnActive {
31
+ border-color: var(--avatar_border_hoverColor);
32
+ }
33
+
34
+ .avatar, .primary {
35
+ background-color: var(--avatar_bg_color);
36
+ }
37
+
38
+ .shadow {
39
+ position: absolute;
40
+ height: 100% ;
41
+ width: 100% ;
42
+ top: 0 ;
43
+ pointer-events: none;
44
+ border-radius: var(--avatar_border_radius);
45
+ }
46
+
47
+ [dir=ltr] .shadow {
48
+ left: 0 ;
49
+ }
50
+
51
+ [dir=rtl] .shadow {
52
+ right: 0 ;
53
+ }
54
+
55
+ .shadow.black {
56
+ box-shadow: var(--zd_bs_avatar_black);
57
+ }
58
+
59
+ .shadow.white {
60
+ box-shadow: var(--zd_bs_avatar_white);
61
+ }
62
+
63
+ .avatar, .circle {
64
+ border-radius: var(--avatar_border_radius);
65
+ }
66
+
67
+ .border {
68
+ --avatar_border_width: 1px;
69
+ }
70
+
71
+ .image {
72
+ width: 100% ;
73
+ height: 100% ;
74
+ position: absolute;
75
+ top: 0 ;
76
+ z-index: 0;
77
+ border-radius: var(--avatar_border_radius);
78
+ }
79
+
80
+ [dir=ltr] .image {
81
+ left: 0 ;
82
+ }
83
+
84
+ [dir=rtl] .image {
85
+ right: 0 ;
86
+ }
87
+
88
+ .animate {
89
+ composes: fadeIn modeForward from './../common/animation.module.css';
90
+ }
91
+
92
+ [dir=ltr] .animate {
93
+ animation-duration: var(--zd_transition2);
94
+ }
95
+
96
+ [dir=rtl] .animate {
97
+ animation-duration: var(--zd_transition2);
98
+ }
99
+
100
+ .innerBorder {
101
+ border: 1px solid var(--zdt_avatarteam_innerCircle);
102
+ }
103
+
104
+ .square_small {
105
+ --avatar_border_radius: 4px;
106
+ }
107
+
108
+ .square_xsmall {
109
+ --avatar_border_radius: 6px;
110
+ }
111
+
112
+ .square_medium,
113
+ .square_xmedium {
114
+ --avatar_border_radius: 8px;
115
+ }
116
+
117
+ .square_large,
118
+ .square_xlarge {
119
+ --avatar_border_radius: 10px;
120
+ }
121
+
122
+ .none {
123
+ display: none;
124
+ }
125
+
126
+ .default {
127
+ --avatar_border_width: 0;
128
+ }
129
+
130
+ .secondary {
131
+ --avatar_bg_color: var(--zdt_avatar_secondary_bg);
132
+ }
133
+
134
+ .info {
135
+ --avatar_bg_color: var(--zdt_avatar_info_bg);
136
+ }
137
+
138
+ .initial {
139
+ text-transform: var(--avatar_text_transform);
140
+ display: inline-block;
141
+ }
142
+
143
+ .xxsmall {
144
+ --avatar_font_size: var(--zd_font_size8);
145
+ }
146
+
147
+ .small {
148
+ --avatar_font_size: var(--zd_font_size9);
149
+ }
150
+
151
+ .xsmall {
152
+ --avatar_font_size: var(--zd_font_size12);
153
+ }
154
+
155
+ .medium {
156
+ --avatar_font_size: var(--zd_font_size14);
157
+ }
158
+
159
+ .xmedium {
160
+ --avatar_font_size: var(--zd_font_size14);
161
+ }
162
+
163
+ .large {
164
+ --avatar_font_size: var(--zd_font_size18);
165
+ }
166
+
167
+ .xlarge {
168
+ --avatar_font_size: var(--zd_font_size28);
169
+ }
170
+
171
+ .white {
172
+ --avatar_text_color: var(--zdt_avatar_white_text);
173
+ --avatar_border_color: var(--zdt_avatar_white_border);
174
+ --avatar_border_hoverColor: var(--zdt_avatar_white_borderHover);
175
+ --avatar_boxshadow: var(--zdt_avatar_white_boxshadow);
176
+ }