@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,109 +1,109 @@
1
- .input {
2
- cursor: pointer;
3
- }
4
- .small {
5
- max-height: var(--zd_size200);
6
- }
7
- .medium {
8
- max-height: var(--zd_size350);
9
- }
10
- .large {
11
- max-height: var(--zd_size400);
12
- }
13
- .emptyState {
14
- font-size: var(--zd_font_size14);
15
- color: var(--zdt_select_emptystate_text);
16
- composes: semibold from '../common/common.module.css';
17
- }
18
- .box_small .emptyState {
19
- padding: var(--zd_size12) var(--zd_size6);
20
- }
21
- .box_medium .emptyState {
22
- padding: var(--zd_size12) var(--zd_size15);
23
- }
24
- .hide {
25
- composes: vishidden from '../common/common.module.css';
26
- }
27
- .container {
28
- position: relative;
29
- }
30
- .arrowIcon {
31
- height: var(--zd_size8);
32
- line-height: var(--zd_size8);
33
- }
34
- .small.search {
35
- padding: 0 var(--zd_size5);
36
- }
37
- .medium.search {
38
- padding: var(--zd_size3) var(--zd_size20) 0;
39
- }
40
- .title {
41
- margin-bottom: var(--zd_size6);
42
- }
43
- .groupTitle {
44
- margin: var(--zd_size6) 0;
45
- }
46
- .listItemContainer {
47
- padding: var(--zd_size10) 0;
48
- }
49
- .responsivelistItemContainer {
50
- padding: var(--zd_size10) 0 0;
51
- }
52
- .readonly {
53
- --textboxicon_icon_cursor: not-allowed;
54
- }
55
- .transparentContainer .arrowIcon {
56
- opacity: 0;
57
- visibility: hidden;
58
- }
59
- .transparentContainer:hover .arrowIcon {
60
- opacity: 1;
61
- visibility: visible;
62
- }
63
- .disable {
64
- color: var(--zdt_select_disable_text);
65
- }
66
-
67
- .leftIcon {
68
- position: absolute;
69
- top: 0;
70
- bottom: 0;
71
- width: var(--zd_size30);
72
- }
73
-
74
- [dir=ltr] .leftIcon {
75
- left: 0;
76
- }
77
-
78
- [dir=rtl] .leftIcon {
79
- right: 0;
80
- }
81
- [dir=ltr] .iconSelect {
82
- padding-left: var(--zd_size30);
83
- }
84
- [dir=rtl] .iconSelect {
85
- padding-right: var(--zd_size30);
86
- }
87
-
88
- .dropBoxList {
89
- padding: var(--zd_size10) 0;
90
- }
91
- .responsivedropBoxList{
92
- padding: var(--zd_size10) 0 0 0;
93
- }
94
- .rotate {
95
- transform: rotateX(180deg);
96
- }
97
- .iconOnHoverStyle .arrowIcon,
98
- .iconOnHoverReadonly .arrowIcon,
99
- .iconOnHoverReadonly:hover .arrowIcon {
100
- opacity: 0;
101
- visibility: hidden;
102
- }
103
- .iconOnHoverStyle:hover .arrowIcon {
104
- opacity: 1;
105
- visibility: visible;
106
- }
107
- .loader {
108
- padding: var(--zd_size10);
1
+ .input {
2
+ cursor: pointer;
3
+ }
4
+ .small {
5
+ max-height: var(--zd_size200) ;
6
+ }
7
+ .medium {
8
+ max-height: var(--zd_size350) ;
9
+ }
10
+ .large {
11
+ max-height: var(--zd_size400) ;
12
+ }
13
+ .emptyState {
14
+ font-size: var(--zd_font_size14) ;
15
+ color: var(--zdt_select_emptystate_text);
16
+ composes: semibold from '../common/common.module.css';
17
+ }
18
+ .box_small .emptyState {
19
+ padding: var(--zd_size12) var(--zd_size6) ;
20
+ }
21
+ .box_medium .emptyState {
22
+ padding: var(--zd_size12) var(--zd_size15) ;
23
+ }
24
+ .hide {
25
+ composes: vishidden from '../common/common.module.css';
26
+ }
27
+ .container {
28
+ position: relative;
29
+ }
30
+ .arrowIcon {
31
+ height: var(--zd_size8) ;
32
+ line-height: var(--zd_size8);
33
+ }
34
+ .small.search {
35
+ padding: 0 var(--zd_size5) ;
36
+ }
37
+ .medium.search {
38
+ padding: var(--zd_size3) var(--zd_size20) 0 ;
39
+ }
40
+ .title {
41
+ margin-bottom: var(--zd_size6) ;
42
+ }
43
+ .groupTitle {
44
+ margin: var(--zd_size6) 0 ;
45
+ }
46
+ .listItemContainer {
47
+ padding: var(--zd_size10) 0 ;
48
+ }
49
+ .responsivelistItemContainer {
50
+ padding: var(--zd_size10) 0 0 ;
51
+ }
52
+ .readonly {
53
+ --textboxicon_icon_cursor: not-allowed;
54
+ }
55
+ .transparentContainer .arrowIcon {
56
+ opacity: 0;
57
+ visibility: hidden;
58
+ }
59
+ .transparentContainer:hover .arrowIcon {
60
+ opacity: 1;
61
+ visibility: visible;
62
+ }
63
+ .disable {
64
+ color: var(--zdt_select_disable_text);
65
+ }
66
+
67
+ .leftIcon {
68
+ position: absolute;
69
+ top: 0 ;
70
+ bottom: 0 ;
71
+ width: var(--zd_size30) ;
72
+ }
73
+
74
+ [dir=ltr] .leftIcon {
75
+ left: 0 ;
76
+ }
77
+
78
+ [dir=rtl] .leftIcon {
79
+ right: 0 ;
80
+ }
81
+ [dir=ltr] .iconSelect {
82
+ padding-left: var(--zd_size30) ;
83
+ }
84
+ [dir=rtl] .iconSelect {
85
+ padding-right: var(--zd_size30) ;
86
+ }
87
+
88
+ .dropBoxList {
89
+ padding: var(--zd_size10) 0 ;
90
+ }
91
+ .responsivedropBoxList{
92
+ padding: var(--zd_size10) 0 0 0 ;
93
+ }
94
+ .rotate {
95
+ transform: rotateX(180deg);
96
+ }
97
+ .iconOnHoverStyle .arrowIcon,
98
+ .iconOnHoverReadonly .arrowIcon,
99
+ .iconOnHoverReadonly:hover .arrowIcon {
100
+ opacity: 0;
101
+ visibility: hidden;
102
+ }
103
+ .iconOnHoverStyle:hover .arrowIcon {
104
+ opacity: 1;
105
+ visibility: visible;
106
+ }
107
+ .loader {
108
+ padding: var(--zd_size10) ;
109
109
  }
@@ -3,6 +3,7 @@ import React from 'react';
3
3
  import { SelectWithAvatar_defaultProps } from './props/defaultProps';
4
4
  import { SelectWithAvatar_propTypes } from './props/propTypes';
5
5
  /**** Components ****/
6
+
6
7
  import { SelectComponent } from './Select';
7
8
  import Popup from '../Popup/Popup';
8
9
  import Tag from '../Tag/Tag';
@@ -17,10 +18,11 @@ import { getUniqueId } from '../Provider/IdProvider';
17
18
  import ResponsiveDropBox from '../ResponsiveDropBox/ResponsiveDropBox';
18
19
  import { ResponsiveReceiver } from '../Responsive/CustomResponsive';
19
20
  import Loader from '@zohodesk/svg/lib/Loader/Loader';
20
-
21
21
  /**** CSS ****/
22
+
22
23
  import style from '../MultiSelect/MultiSelect.module.css';
23
24
  import selectStyle from './Select.module.css';
25
+
24
26
  class SelectWithAvatarComponent extends SelectComponent {
25
27
  constructor(props) {
26
28
  super(props);
@@ -32,6 +34,7 @@ class SelectWithAvatarComponent extends SelectComponent {
32
34
  this.handleRemoveOption = this.handleRemoveOption.bind(this);
33
35
  this.getNextAriaId = getUniqueId(this);
34
36
  }
37
+
35
38
  handleFormatOptions(props) {
36
39
  let {
37
40
  options,
@@ -47,15 +50,18 @@ class SelectWithAvatarComponent extends SelectComponent {
47
50
  optionType: 'avatar'
48
51
  });
49
52
  }
53
+
50
54
  handleActive(e) {
51
55
  let {
52
56
  isActive
53
57
  } = this.state;
58
+
54
59
  if (!isActive) {
55
60
  this.setState({
56
61
  isActive: true
57
62
  });
58
63
  }
64
+
59
65
  let {
60
66
  target
61
67
  } = e || {};
@@ -65,16 +71,19 @@ class SelectWithAvatarComponent extends SelectComponent {
65
71
  } = this.props;
66
72
  onFocus && onFocus(this.state.searchStr);
67
73
  }
74
+
68
75
  handleInactive() {
69
76
  let {
70
77
  isActive
71
78
  } = this.state;
79
+
72
80
  if (isActive) {
73
81
  this.setState({
74
82
  isActive: false
75
83
  });
76
84
  }
77
85
  }
86
+
78
87
  handleSearchChange(e) {
79
88
  let {
80
89
  isPopupOpen
@@ -82,6 +91,7 @@ class SelectWithAvatarComponent extends SelectComponent {
82
91
  !isPopupOpen && this.togglePopup(e);
83
92
  this.handleSearch(e);
84
93
  }
94
+
85
95
  handleRemoveOption(e) {
86
96
  let {
87
97
  keyCode
@@ -92,12 +102,14 @@ class SelectWithAvatarComponent extends SelectComponent {
92
102
  let {
93
103
  isDefaultSelectValue
94
104
  } = this.props;
105
+
95
106
  if (keyCode === 8 && searchStr.length === 0 && !isDefaultSelectValue) {
96
107
  this.handleChange('');
97
108
  } else {
98
109
  this.handleKeyDown(e);
99
110
  }
100
111
  }
112
+
101
113
  responsiveFunc(_ref) {
102
114
  let {
103
115
  mediaQueryOR
@@ -108,6 +120,7 @@ class SelectWithAvatarComponent extends SelectComponent {
108
120
  }])
109
121
  };
110
122
  }
123
+
111
124
  render() {
112
125
  let {
113
126
  dropBoxSize,
@@ -144,7 +157,8 @@ class SelectWithAvatarComponent extends SelectComponent {
144
157
  i18nKeys,
145
158
  htmlId,
146
159
  needEffect,
147
- isLoading
160
+ isLoading,
161
+ dataSelectorId
148
162
  } = this.props;
149
163
  i18nKeys = Object.assign({}, i18nKeys, {
150
164
  emptyText: i18nKeys.emptyText || emptyMessage,
@@ -169,7 +183,9 @@ class SelectWithAvatarComponent extends SelectComponent {
169
183
  return /*#__PURE__*/React.createElement("div", {
170
184
  className: `${style.wrapper} ${isDisabled ? style.disabled : ''} ${isReadOnly ? style.readOnly : ''} ${needEffect && !(isDisabled || isReadOnly) ? style.effect : ''} ${className ? className : ''}`,
171
185
  "data-id": `${isDisabled ? `${dataId}_disabled` : isReadOnly ? `${dataId}_readOnly` : dataId}`,
172
- "data-title": isDisabled ? title : null
186
+ "data-test-id": `${isDisabled ? `${dataId}_disabled` : isReadOnly ? `${dataId}_readOnly` : dataId}`,
187
+ "data-title": isDisabled ? title : null,
188
+ "data-selector-id": dataSelectorId
173
189
  }, /*#__PURE__*/React.createElement(Container, {
174
190
  align: "vertical",
175
191
  alignBox: "row",
@@ -179,6 +195,7 @@ class SelectWithAvatarComponent extends SelectComponent {
179
195
  }, selectedId ? /*#__PURE__*/React.createElement(Box, {
180
196
  className: style.tag,
181
197
  "data-id": `${dataId}_SelectTag`,
198
+ "data-test-id": `${dataId}_SelectTag`,
182
199
  key: `${id}tag`
183
200
  }, /*#__PURE__*/React.createElement(Tag, {
184
201
  avatarPalette: avatarPalette,
@@ -307,18 +324,20 @@ class SelectWithAvatarComponent extends SelectComponent {
307
324
  }, /*#__PURE__*/React.createElement(Loader, null))))));
308
325
  }) : null);
309
326
  }
327
+
310
328
  }
329
+
311
330
  SelectWithAvatarComponent.propTypes = SelectWithAvatar_propTypes;
312
331
  SelectWithAvatarComponent.defaultProps = SelectWithAvatar_defaultProps;
313
332
  SelectWithAvatarComponent.displayName = 'SelectWithAvatar';
314
333
  let SelectWithAvatar = Popup(SelectWithAvatarComponent);
315
- SelectWithAvatar.defaultProps = SelectWithAvatarComponent.defaultProps;
316
- if (false) {
317
- SelectWithAvatar.docs = {
318
- componentGroup: 'Form Elements',
319
- folderName: 'Style Guide'
320
- };
321
- // eslint-disable-next-line react/forbid-foreign-prop-types
322
- SelectWithAvatar.propTypes = SelectWithAvatarComponent.propTypes;
323
- }
334
+ SelectWithAvatar.defaultProps = SelectWithAvatarComponent.defaultProps; // if (__DOCS__) {
335
+ // SelectWithAvatar.docs = {
336
+ // componentGroup: 'Form Elements',
337
+ // folderName: 'Style Guide'
338
+ // };
339
+ // // eslint-disable-next-line react/forbid-foreign-prop-types
340
+ // SelectWithAvatar.propTypes = SelectWithAvatarComponent.propTypes;
341
+ // }
342
+
324
343
  export default SelectWithAvatar;
@@ -2,9 +2,10 @@ import React, { Component } from 'react';
2
2
  import { SelectWithIcon_defaultProps } from './props/defaultProps';
3
3
  import { SelectWithIcon_propTypes } from './props/propTypes';
4
4
  /**** Components ****/
5
+
5
6
  import Popup from '../Popup/Popup';
6
7
  import TextBoxIcon from '../TextBoxIcon/TextBoxIcon';
7
- import Icon from '@zohodesk/icons/lib/Icon';
8
+ import { Icon } from '@zohodesk/icons';
8
9
  import ListItemWithIcon from '../ListItem/ListItemWithIcon';
9
10
  import Card, { CardHeader, CardContent } from '../Card/Card';
10
11
  import EmptyState from '../MultiSelect/EmptyState';
@@ -14,9 +15,12 @@ import ResponsiveDropBox from '../ResponsiveDropBox/ResponsiveDropBox';
14
15
  import { ResponsiveReceiver } from '../Responsive/CustomResponsive';
15
16
  import Loader from '@zohodesk/svg/lib/Loader/Loader';
16
17
  /**** Methods ****/
18
+
17
19
  import { scrollTo, findScrollEnd } from '../utils/Common.js';
18
20
  /**** CSS ****/
21
+
19
22
  import style from './Select.module.css';
23
+
20
24
  class SelectWithIcon extends Component {
21
25
  constructor(props) {
22
26
  super(props);
@@ -42,34 +46,43 @@ class SelectWithIcon extends Component {
42
46
  this.handleGetNextOptions = this.handleGetNextOptions.bind(this);
43
47
  this.handleFetchOptions = this.handleFetchOptions.bind(this);
44
48
  }
49
+
45
50
  componentDidMount() {
46
51
  this._isMounted = true;
47
52
  }
53
+
48
54
  componentWillUnmount() {
49
55
  this._isMounted = false;
50
56
  }
57
+
51
58
  inputRef(el) {
52
59
  this.input = el;
53
60
  }
61
+
54
62
  itemRef(ele, index, id) {
55
63
  this[`suggestion_${id}`] = ele;
56
64
  }
65
+
57
66
  searchInputRef(el) {
58
67
  this.searchInput = el;
59
68
  }
69
+
60
70
  scrollContentRef(el) {
61
71
  let {
62
72
  isPopupOpen
63
73
  } = this.props;
74
+
64
75
  if (isPopupOpen) {
65
76
  this.optionsContainer = el;
66
77
  }
67
78
  }
79
+
68
80
  handleMouseEnter(id, value, index, e) {
69
81
  this.setState({
70
82
  selectedIndex: index
71
83
  });
72
84
  }
85
+
73
86
  handleKeyDown(e) {
74
87
  let {
75
88
  keyCode
@@ -84,10 +97,12 @@ class SelectWithIcon extends Component {
84
97
  isPopupOpen,
85
98
  selectedId
86
99
  } = this.props;
100
+
87
101
  if (isPopupOpen && (keyCode === 38 || keyCode === 40) && e.preventDefault) {
88
102
  e.preventDefault(); //prevent body scroll
89
103
  } else if (!isPopupOpen && (keyCode === 40 || keyCode === 13)) {
90
104
  e.preventDefault(); //prevent body scroll
105
+
91
106
  this.togglePopup(e);
92
107
  options.map((list, index) => {
93
108
  if (list.id === selectedId) {
@@ -97,6 +112,7 @@ class SelectWithIcon extends Component {
97
112
  }
98
113
  });
99
114
  }
115
+
100
116
  if (isPopupOpen) {
101
117
  switch (keyCode) {
102
118
  case 40:
@@ -108,11 +124,14 @@ class SelectWithIcon extends Component {
108
124
  if (selectedIndex === options.length - 3) {
109
125
  this.handleGetNextOptions();
110
126
  }
127
+
111
128
  this.setState({
112
129
  selectedIndex: selectedIndex + 1
113
130
  });
114
131
  }
132
+
115
133
  break;
134
+
116
135
  case 38:
117
136
  if (selectedIndex === 0) {
118
137
  this.setState({
@@ -123,7 +142,9 @@ class SelectWithIcon extends Component {
123
142
  selectedIndex: selectedIndex - 1
124
143
  });
125
144
  }
145
+
126
146
  break;
147
+
127
148
  case 13:
128
149
  let option = options[selectedIndex];
129
150
  this.handleChange && this.handleChange(option[idKey], option[valueKey], selectedIndex, e);
@@ -131,6 +152,7 @@ class SelectWithIcon extends Component {
131
152
  }
132
153
  }
133
154
  }
155
+
134
156
  componentDidUpdate(prevProps) {
135
157
  let {
136
158
  idKey,
@@ -141,6 +163,7 @@ class SelectWithIcon extends Component {
141
163
  selectedIndex,
142
164
  options
143
165
  } = this.state;
166
+
144
167
  if (prevProps.isPopupOpen != isPopupOpen) {
145
168
  setTimeout(() => {
146
169
  isPopupOpen ? needSearch ? this.searchInput.focus({
@@ -152,32 +175,39 @@ class SelectWithIcon extends Component {
152
175
  });
153
176
  }, 10);
154
177
  }
178
+
155
179
  let option = options[selectedIndex];
156
180
  let id = option && option[idKey] || {};
157
181
  let selSuggestion = this[`suggestion_${id}`];
182
+
158
183
  if (isPopupOpen) {
159
184
  this.optionsContainer && scrollTo(this.optionsContainer, selSuggestion);
160
185
  }
161
186
  }
187
+
162
188
  searchList(searchValue) {
163
189
  let datas = [];
164
190
  let {
165
191
  options,
166
192
  valueKey
167
193
  } = this.props;
194
+
168
195
  if (options.length) {
169
196
  datas = options.filter(obj => obj[valueKey].toLowerCase().includes(searchValue.toLowerCase()));
170
197
  }
198
+
171
199
  return datas;
172
200
  }
201
+
173
202
  onSearchClear() {
174
- let options = this.searchList('');
175
- // this.searchInput.focus({preventScroll:false});
203
+ let options = this.searchList(''); // this.searchInput.focus({preventScroll:false});
204
+
176
205
  this.setState({
177
206
  searchValue: '',
178
207
  options
179
208
  });
180
209
  }
210
+
181
211
  onSearch(searchValue) {
182
212
  let options = this.searchList(searchValue);
183
213
  this.setState({
@@ -186,6 +216,7 @@ class SelectWithIcon extends Component {
186
216
  options
187
217
  });
188
218
  }
219
+
189
220
  togglePopup(e) {
190
221
  let {
191
222
  togglePopup,
@@ -194,6 +225,7 @@ class SelectWithIcon extends Component {
194
225
  } = this.props;
195
226
  !isReadOnly && togglePopup(e, boxPosition);
196
227
  }
228
+
197
229
  handleChange(id, value, index, e) {
198
230
  let {
199
231
  onChange,
@@ -202,11 +234,13 @@ class SelectWithIcon extends Component {
202
234
  !isReadOnly && onChange && onChange(id, value, index, e);
203
235
  this.togglePopup(e);
204
236
  }
237
+
205
238
  handleScroll(e) {
206
239
  let ele = e.target;
207
240
  let isScrollReachedBottom = findScrollEnd(ele);
208
241
  isScrollReachedBottom && this.handleGetNextOptions();
209
242
  }
243
+
210
244
  UNSAFE_componentWillReceiveProps(nextProps) {
211
245
  if (nextProps.options.length != this.props.options.length) {
212
246
  this.setState({
@@ -214,6 +248,7 @@ class SelectWithIcon extends Component {
214
248
  });
215
249
  }
216
250
  }
251
+
217
252
  handleGetNextOptions() {
218
253
  let {
219
254
  isNextOptions,
@@ -224,6 +259,7 @@ class SelectWithIcon extends Component {
224
259
  } = this.state;
225
260
  isNextOptions && getNextOptions && this.handleFetchOptions(getNextOptions, searchValue);
226
261
  }
262
+
227
263
  handleFetchOptions(APICall) {
228
264
  let searchValue = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : '';
229
265
  let {
@@ -232,10 +268,12 @@ class SelectWithIcon extends Component {
232
268
  let {
233
269
  _isMounted
234
270
  } = this;
271
+
235
272
  if (!isFetchingOptions && APICall) {
236
273
  this.setState({
237
274
  isFetchingOptions: true
238
275
  });
276
+
239
277
  try {
240
278
  return APICall(searchValue).then(() => {
241
279
  _isMounted && this.setState({
@@ -253,6 +291,7 @@ class SelectWithIcon extends Component {
253
291
  }
254
292
  }
255
293
  }
294
+
256
295
  responsiveFunc(_ref) {
257
296
  let {
258
297
  mediaQueryOR
@@ -263,6 +302,7 @@ class SelectWithIcon extends Component {
263
302
  }])
264
303
  };
265
304
  }
305
+
266
306
  render() {
267
307
  let {
268
308
  animationStyle,
@@ -304,7 +344,8 @@ class SelectWithIcon extends Component {
304
344
  iconClass,
305
345
  i18nKeys,
306
346
  htmlId,
307
- isLoading
347
+ isLoading,
348
+ dataSelectorId
308
349
  } = this.props;
309
350
  i18nKeys = Object.assign({}, i18nKeys, {
310
351
  emptyText: i18nKeys.emptyText || emptyMessage,
@@ -320,12 +361,14 @@ class SelectWithIcon extends Component {
320
361
  let ariaErrorId = this.getNextAriaId();
321
362
  return /*#__PURE__*/React.createElement("div", {
322
363
  className: `${style.container} ${style[`box_${size}`]} ${isReadOnly ? style.readonly : ''} ${borderColor === 'transparent' ? style.transparentContainer : ''}`,
323
- "data-title": isDisabled ? title : null
364
+ "data-title": isDisabled ? title : null,
365
+ "data-selector-id": dataSelectorId
324
366
  }, /*#__PURE__*/React.createElement("div", {
325
367
  className: `${className ? className : ''}`,
326
368
  onClick: isDisabled || isReadOnly ? null : this.togglePopup,
327
369
  ref: getTargetRef,
328
- "data-id": `${isDisabled ? `${dataId}_disabled` : isReadOnly ? `${dataId}_readOnly` : dataId}`
370
+ "data-id": `${isDisabled ? `${dataId}_disabled` : isReadOnly ? `${dataId}_readOnly` : dataId}`,
371
+ "data-test-id": `${isDisabled ? `${dataId}_disabled` : isReadOnly ? `${dataId}_readOnly` : dataId}`
329
372
  }, /*#__PURE__*/React.createElement(Container, {
330
373
  alignBox: "row"
331
374
  }, needIcon ? /*#__PURE__*/React.createElement(Container, {
@@ -455,7 +498,8 @@ class SelectWithIcon extends Component {
455
498
  getRef: this.itemRef,
456
499
  a11y: {
457
500
  role: 'option',
458
- ariaSelected: selectedId === options[idKey]
501
+ ariaSelected: selectedId === options[idKey],
502
+ ariaLabel: options[valueKey]
459
503
  }
460
504
  });
461
505
  })) : /*#__PURE__*/React.createElement(EmptyState, {
@@ -472,13 +516,15 @@ class SelectWithIcon extends Component {
472
516
  }, /*#__PURE__*/React.createElement(Loader, null))))));
473
517
  }) : null);
474
518
  }
519
+
475
520
  }
521
+
476
522
  SelectWithIcon.propTypes = SelectWithIcon_propTypes;
477
- SelectWithIcon.defaultProps = SelectWithIcon_defaultProps;
478
- if (false) {
479
- SelectWithIcon.docs = {
480
- componentGroup: 'Form Elements',
481
- folderName: 'Style Guide'
482
- };
483
- }
523
+ SelectWithIcon.defaultProps = SelectWithIcon_defaultProps; // if (__DOCS__) {
524
+ // SelectWithIcon.docs = {
525
+ // componentGroup: 'Form Elements',
526
+ // folderName: 'Style Guide'
527
+ // };
528
+ // }
529
+
484
530
  export default Popup(SelectWithIcon);