@zohodesk/components 1.0.0-test-252 → 1.0.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 (601) hide show
  1. package/README.md +161 -1
  2. package/assets/Appearance/dark/mode/darkMode.module.css +181 -179
  3. package/assets/Appearance/dark/themes/blue/blueDarkCTAModifyCategory.module.css +452 -0
  4. package/assets/Appearance/dark/themes/blue/blueDarkCTATheme.module.css +31 -31
  5. package/assets/Appearance/dark/themes/blue/blueDarkComponentTheme.module.css +3 -0
  6. package/assets/Appearance/dark/themes/green/greenDarkCTAModifyCategory.module.css +452 -0
  7. package/assets/Appearance/dark/themes/green/greenDarkCTATheme.module.css +30 -30
  8. package/assets/Appearance/dark/themes/green/greenDarkComponentTheme.module.css +3 -0
  9. package/assets/Appearance/dark/themes/orange/orangeDarkCTAModifyCategory.module.css +452 -0
  10. package/assets/Appearance/dark/themes/orange/orangeDarkCTATheme.module.css +30 -30
  11. package/assets/Appearance/dark/themes/orange/orangeDarkComponentTheme.module.css +3 -0
  12. package/assets/Appearance/dark/themes/red/redDarkCTAModifyCategory.module.css +452 -0
  13. package/assets/Appearance/dark/themes/red/redDarkCTATheme.module.css +30 -30
  14. package/assets/Appearance/dark/themes/red/redDarkComponentTheme.module.css +3 -0
  15. package/assets/Appearance/dark/themes/yellow/yellowDarkCTAModifyCategory.module.css +452 -0
  16. package/assets/Appearance/dark/themes/yellow/yellowDarkCTATheme.module.css +30 -30
  17. package/assets/Appearance/dark/themes/yellow/yellowDarkComponentTheme.module.css +3 -0
  18. package/assets/Appearance/default/mode/defaultMode.module.css +177 -175
  19. package/assets/Appearance/default/themes/blue/blueDefaultCTAModifyCategory.module.css +452 -0
  20. package/assets/Appearance/default/themes/blue/blueDefaultCTATheme.module.css +31 -31
  21. package/assets/Appearance/default/themes/blue/blueDefaultComponentTheme.module.css +3 -0
  22. package/assets/Appearance/default/themes/green/greenDefaultCTAModifyCategory.module.css +452 -0
  23. package/assets/Appearance/default/themes/green/greenDefaultCTATheme.module.css +30 -30
  24. package/assets/Appearance/default/themes/green/greenDefaultComponentTheme.module.css +3 -0
  25. package/assets/Appearance/default/themes/orange/orangeDefaultCTAModifyCategory.module.css +452 -0
  26. package/assets/Appearance/default/themes/orange/orangeDefaultCTATheme.module.css +30 -30
  27. package/assets/Appearance/default/themes/orange/orangeDefaultComponentTheme.module.css +3 -0
  28. package/assets/Appearance/default/themes/red/redDefaultCTAModifyCategory.module.css +452 -0
  29. package/assets/Appearance/default/themes/red/redDefaultCTATheme.module.css +30 -30
  30. package/assets/Appearance/default/themes/red/redDefaultComponentTheme.module.css +3 -0
  31. package/assets/Appearance/default/themes/yellow/yellowDefaultCTAModifyCategory.module.css +452 -0
  32. package/assets/Appearance/default/themes/yellow/yellowDefaultCTATheme.module.css +30 -30
  33. package/assets/Appearance/default/themes/yellow/yellowDefaultComponentTheme.module.css +3 -0
  34. package/assets/Appearance/pureDark/mode/pureDarkMode.module.css +182 -180
  35. package/assets/Appearance/pureDark/themes/blue/bluePureDarkCTAModifyCategory.module.css +452 -0
  36. package/assets/Appearance/pureDark/themes/blue/bluePureDarkCTATheme.module.css +31 -31
  37. package/assets/Appearance/pureDark/themes/blue/bluePureDarkComponentTheme.module.css +3 -0
  38. package/assets/Appearance/pureDark/themes/green/greenPureDarkCTAModifyCategory.module.css +452 -0
  39. package/assets/Appearance/pureDark/themes/green/greenPureDarkCTATheme.module.css +30 -30
  40. package/assets/Appearance/pureDark/themes/green/greenPureDarkComponentTheme.module.css +3 -0
  41. package/assets/Appearance/pureDark/themes/orange/orangePureDarkCTAModifyCategory.module.css +452 -0
  42. package/assets/Appearance/pureDark/themes/orange/orangePureDarkCTATheme.module.css +30 -30
  43. package/assets/Appearance/pureDark/themes/orange/orangePureDarkComponentTheme.module.css +3 -0
  44. package/assets/Appearance/pureDark/themes/red/redPureDarkCTAModifyCategory.module.css +452 -0
  45. package/assets/Appearance/pureDark/themes/red/redPureDarkCTATheme.module.css +30 -30
  46. package/assets/Appearance/pureDark/themes/red/redPureDarkComponentTheme.module.css +3 -0
  47. package/assets/Appearance/pureDark/themes/yellow/yellowPureDarkCTAModifyCategory.module.css +452 -0
  48. package/assets/Appearance/pureDark/themes/yellow/yellowPureDarkCTATheme.module.css +30 -30
  49. package/assets/Appearance/pureDark/themes/yellow/yellowPureDarkComponentTheme.module.css +3 -0
  50. package/assets/Contrast/darkContrastLightness.module.css +39 -0
  51. package/assets/Contrast/defaultContrastLightness.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 +2 -2
  61. package/es/AppContainer/props/defaultProps.js +3 -1
  62. package/es/AppContainer/props/propTypes.js +2 -0
  63. package/es/Avatar/Avatar.js +48 -25
  64. package/es/Avatar/Avatar.module.css +59 -18
  65. package/es/Avatar/props/defaultProps.js +4 -1
  66. package/es/Avatar/props/propTypes.js +5 -2
  67. package/es/AvatarTeam/AvatarTeam.js +21 -11
  68. package/es/AvatarTeam/AvatarTeam.module.css +49 -21
  69. package/es/AvatarTeam/props/defaultProps.js +5 -1
  70. package/es/AvatarTeam/props/propTypes.js +5 -1
  71. package/es/Button/Button.js +55 -51
  72. package/{lib/Button → es/Button/css}/Button.module.css +62 -58
  73. package/es/Button/css/cssJSLogic.js +53 -0
  74. package/es/Button/index.js +2 -0
  75. package/es/Button/props/defaultProps.js +3 -1
  76. package/es/Button/props/propTypes.js +6 -2
  77. package/es/Buttongroup/Buttongroup.js +24 -16
  78. package/es/Buttongroup/Buttongroup.module.css +45 -28
  79. package/es/Buttongroup/props/defaultProps.js +3 -1
  80. package/es/Buttongroup/props/propTypes.js +3 -1
  81. package/es/Card/Card.js +48 -26
  82. package/es/Card/props/defaultProps.js +12 -2
  83. package/es/Card/props/propTypes.js +2 -2
  84. package/es/CheckBox/CheckBox.js +13 -9
  85. package/es/CheckBox/CheckBox.module.css +16 -16
  86. package/es/CheckBox/props/propTypes.js +1 -0
  87. package/es/DateTime/CalendarView.js +46 -19
  88. package/es/DateTime/DateTime.js +139 -77
  89. package/es/DateTime/DateTime.module.css +51 -48
  90. package/es/DateTime/DateTimePopupFooter.js +4 -2
  91. package/es/DateTime/DateTimePopupHeader.js +30 -11
  92. package/es/DateTime/DateWidget.js +122 -51
  93. package/es/DateTime/DateWidget.module.css +5 -5
  94. package/es/DateTime/DaysRow.js +6 -3
  95. package/es/DateTime/Time.js +10 -2
  96. package/es/DateTime/YearView.js +41 -9
  97. package/es/DateTime/YearView.module.css +33 -15
  98. package/es/DateTime/__tests__/CalendarView.spec.js +1 -0
  99. package/es/DateTime/__tests__/DateTime.spec.js +1 -0
  100. package/es/DateTime/__tests__/DateWidget.spec.js +2 -3
  101. package/es/DateTime/common.js +3 -0
  102. package/es/DateTime/constants.js +1 -0
  103. package/es/DateTime/dateFormatUtils/dateFormat.js +63 -30
  104. package/es/DateTime/dateFormatUtils/dateFormats.js +42 -0
  105. package/es/DateTime/dateFormatUtils/dayChange.js +13 -4
  106. package/es/DateTime/dateFormatUtils/index.js +59 -2
  107. package/es/DateTime/dateFormatUtils/monthChange.js +8 -0
  108. package/es/DateTime/dateFormatUtils/timeChange.js +22 -6
  109. package/es/DateTime/dateFormatUtils/yearChange.js +11 -2
  110. package/es/DateTime/index.js +1 -1
  111. package/es/DateTime/objectUtils.js +14 -20
  112. package/es/DateTime/props/defaultProps.js +2 -1
  113. package/es/DateTime/props/propTypes.js +5 -2
  114. package/es/DateTime/typeChecker.js +3 -0
  115. package/es/DateTime/validator.js +58 -6
  116. package/es/DropBox/DropBox.js +82 -218
  117. package/es/DropBox/DropBoxElement/DropBoxElement.js +132 -0
  118. package/es/DropBox/DropBoxElement/css/DropBoxElement.module.css +435 -0
  119. package/es/DropBox/DropBoxElement/css/cssJSLogic.js +91 -0
  120. package/es/DropBox/DropBoxElement/props/defaultProps.js +18 -0
  121. package/es/DropBox/DropBoxElement/props/propTypes.js +45 -0
  122. package/es/DropBox/DropBoxElement/useDropboxPosCalc.js +54 -0
  123. package/es/DropBox/__tests__/DropBox.spec.js +2 -2
  124. package/es/DropBox/css/DropBox.module.css +59 -0
  125. package/es/DropBox/css/cssJSLogic.js +14 -0
  126. package/es/DropBox/props/defaultProps.js +9 -15
  127. package/es/DropBox/props/propTypes.js +9 -41
  128. package/es/DropDown/DropDown.js +16 -9
  129. package/es/DropDown/DropDown.module.css +2 -2
  130. package/es/DropDown/DropDownHeading.js +18 -11
  131. package/es/DropDown/DropDownHeading.module.css +3 -3
  132. package/es/DropDown/DropDownItem.js +8 -1
  133. package/es/DropDown/DropDownItem.module.css +9 -9
  134. package/es/DropDown/DropDownSearch.js +4 -0
  135. package/es/DropDown/DropDownSeparator.js +1 -0
  136. package/es/DropDown/DropDownSeparator.module.css +2 -2
  137. package/es/DropDown/__tests__/DropDown.spec.js +1 -2
  138. package/es/DropDown/index.js +7 -0
  139. package/es/DropDown/props/defaultProps.js +3 -1
  140. package/es/DropDown/props/propTypes.js +2 -1
  141. package/es/Heading/Heading.js +8 -7
  142. package/es/Heading/Heading.module.css +2 -2
  143. package/es/Label/Label.js +14 -9
  144. package/es/Label/Label.module.css +1 -1
  145. package/es/Label/props/defaultProps.js +2 -1
  146. package/es/Label/props/propTypes.js +1 -0
  147. package/es/Layout/Box.js +19 -4
  148. package/es/Layout/Container.js +18 -5
  149. package/es/Layout/Layout.module.css +15 -15
  150. package/es/Layout/index.js +9 -10
  151. package/es/Layout/props/defaultProps.js +6 -2
  152. package/es/Layout/props/propTypes.js +7 -3
  153. package/es/Layout/utils.js +5 -1
  154. package/es/ListItem/ListContainer.js +21 -9
  155. package/es/ListItem/ListItem.js +30 -14
  156. package/es/ListItem/ListItem.module.css +37 -30
  157. package/es/ListItem/ListItemWithAvatar.js +30 -15
  158. package/es/ListItem/ListItemWithCheckBox.js +22 -10
  159. package/es/ListItem/ListItemWithIcon.js +29 -14
  160. package/es/ListItem/ListItemWithRadio.js +22 -10
  161. package/es/ListItem/index.js +6 -0
  162. package/es/ListItem/props/defaultProps.js +18 -6
  163. package/es/ListItem/props/propTypes.js +13 -1
  164. package/es/Modal/Modal.js +35 -17
  165. package/es/MultiSelect/AdvancedGroupMultiSelect.js +100 -20
  166. package/es/MultiSelect/AdvancedMultiSelect.js +45 -19
  167. package/es/MultiSelect/EmptyState.js +6 -0
  168. package/es/MultiSelect/MultiSelect.js +129 -46
  169. package/es/MultiSelect/MultiSelect.module.css +32 -31
  170. package/es/MultiSelect/MultiSelectHeader.js +3 -0
  171. package/es/MultiSelect/MultiSelectWithAvatar.js +43 -19
  172. package/es/MultiSelect/SelectedOptions.js +6 -3
  173. package/es/MultiSelect/SelectedOptions.module.css +5 -5
  174. package/es/MultiSelect/Suggestions.js +13 -6
  175. package/es/MultiSelect/__tests__/MultiSelect.spec.js +4 -6
  176. package/es/MultiSelect/index.js +4 -0
  177. package/es/MultiSelect/props/defaultProps.js +11 -4
  178. package/es/MultiSelect/props/propTypes.js +17 -5
  179. package/es/PopOver/PopOver.js +25 -9
  180. package/es/PopOver/__tests__/PopOver.spec.js +2 -1
  181. package/es/PopOver/index.js +3 -0
  182. package/es/Popup/Popup.js +80 -31
  183. package/es/Popup/__tests__/Popup.spec.js +17 -5
  184. package/es/Popup/viewPort.js +16 -4
  185. package/es/Provider/AvatarSize.js +1 -0
  186. package/es/Provider/IdProvider.js +16 -10
  187. package/es/Provider/LibraryContext.js +6 -4
  188. package/es/Provider/NumberGenerator/NumberGenerator.js +21 -7
  189. package/es/Provider/ZindexProvider.js +9 -2
  190. package/es/Provider/index.js +4 -0
  191. package/es/Radio/Radio.js +9 -7
  192. package/es/Radio/Radio.module.css +3 -3
  193. package/es/Responsive/CustomResponsive.js +37 -21
  194. package/es/Responsive/RefWrapper.js +6 -7
  195. package/es/Responsive/ResizeComponent.js +35 -25
  196. package/es/Responsive/ResizeObserver.js +26 -6
  197. package/es/Responsive/Responsive.js +34 -20
  198. package/es/Responsive/index.js +9 -8
  199. package/es/Responsive/sizeObservers.js +28 -7
  200. package/es/Responsive/utils/index.js +7 -5
  201. package/es/Responsive/utils/shallowCompare.js +7 -2
  202. package/es/Responsive/windowResizeObserver.js +7 -0
  203. package/es/ResponsiveDropBox/ResponsiveDropBox.js +4 -0
  204. package/es/ResponsiveDropBox/ResponsiveDropBox.module.css +2 -2
  205. package/es/Ribbon/Ribbon.js +21 -15
  206. package/es/Ribbon/Ribbon.module.css +133 -55
  207. package/es/Ribbon/props/defaultProps.js +2 -1
  208. package/es/Ribbon/props/propTypes.js +2 -1
  209. package/es/RippleEffect/RippleEffect.js +6 -7
  210. package/es/Select/GroupSelect.js +71 -23
  211. package/es/Select/Select.js +115 -50
  212. package/es/Select/Select.module.css +23 -23
  213. package/es/Select/SelectWithAvatar.js +31 -12
  214. package/es/Select/SelectWithIcon.js +60 -14
  215. package/es/Select/__tests__/Select.spec.js +6 -8
  216. package/es/Select/index.js +4 -0
  217. package/es/Select/props/defaultProps.js +6 -1
  218. package/es/Select/props/propTypes.js +10 -4
  219. package/es/Stencils/Stencils.js +10 -9
  220. package/es/Stencils/Stencils.module.css +2 -2
  221. package/es/Switch/Switch.js +14 -8
  222. package/es/Switch/Switch.module.css +49 -32
  223. package/es/Switch/props/defaultProps.js +2 -1
  224. package/es/Switch/props/propTypes.js +1 -0
  225. package/es/Tab/Tab.js +14 -11
  226. package/es/Tab/Tab.module.css +14 -15
  227. package/es/Tab/TabContent.js +6 -3
  228. package/es/Tab/TabContentWrapper.js +6 -2
  229. package/es/Tab/TabWrapper.js +9 -4
  230. package/es/Tab/Tabs.js +85 -21
  231. package/es/Tab/Tabs.module.css +36 -40
  232. package/es/Tab/__tests__/Tab.spec.js +4 -12
  233. package/es/Tab/__tests__/TabWrapper.spec.js +1 -0
  234. package/es/Tab/props/defaultProps.js +10 -5
  235. package/es/Tab/props/propTypes.js +10 -5
  236. package/es/Tag/Tag.js +16 -10
  237. package/es/Tag/Tag.module.css +10 -10
  238. package/es/Tag/props/defaultProps.js +2 -1
  239. package/es/Tag/props/propTypes.js +2 -1
  240. package/es/TextBox/TextBox.js +26 -10
  241. package/es/TextBox/TextBox.module.css +6 -5
  242. package/es/TextBox/__tests__/TextBox.spec.js +1 -4
  243. package/es/TextBox/props/defaultProps.js +2 -1
  244. package/es/TextBox/props/propTypes.js +2 -1
  245. package/es/TextBoxIcon/TextBoxIcon.js +39 -13
  246. package/es/TextBoxIcon/TextBoxIcon.module.css +7 -6
  247. package/es/TextBoxIcon/__tests__/TextBoxIcon.spec.js +2 -7
  248. package/es/TextBoxIcon/props/defaultProps.js +2 -1
  249. package/es/TextBoxIcon/props/propTypes.js +1 -0
  250. package/es/Textarea/Textarea.js +23 -10
  251. package/es/Textarea/Textarea.module.css +6 -6
  252. package/es/Textarea/__tests__/Textarea.spec.js +2 -2
  253. package/es/Textarea/props/defaultProps.js +2 -1
  254. package/es/Textarea/props/propTypes.js +1 -0
  255. package/es/Tooltip/Tooltip.js +67 -21
  256. package/es/Tooltip/Tooltip.module.css +40 -8
  257. package/es/Tooltip/__tests__/Tooltip.spec.js +5 -0
  258. package/es/VelocityAnimation/VelocityAnimation/VelocityAnimation.js +7 -6
  259. package/es/VelocityAnimation/VelocityAnimationGroup/VelocityAnimationGroup.js +11 -8
  260. package/es/VelocityAnimation/index.js +2 -0
  261. package/es/common/a11y.module.css +4 -0
  262. package/es/common/animation.module.css +8 -8
  263. package/es/common/avatarsizes.module.css +6 -2
  264. package/es/common/basicReset.module.css +3 -3
  265. package/es/common/boxShadow.module.css +34 -0
  266. package/es/common/common.module.css +24 -24
  267. package/es/common/customscroll.module.css +4 -2
  268. package/es/common/reset.module.css +1 -0
  269. package/es/css.js +2 -1
  270. package/es/deprecated/AdvancedMultiSelect.module.css +18 -18
  271. package/es/deprecated/PortalLayer/PortalLayer.js +30 -24
  272. package/es/index.js +30 -146
  273. package/es/semantic/Button/Button.js +9 -7
  274. package/es/semantic/Button/semanticButton.module.css +1 -1
  275. package/es/semantic/index.js +1 -0
  276. package/es/utils/Common.js +74 -7
  277. package/es/utils/ContextOptimizer.js +4 -5
  278. package/es/utils/__tests__/debounce.spec.js +2 -2
  279. package/es/utils/constructFullName.js +2 -0
  280. package/es/utils/css/compileClassNames.js +28 -0
  281. package/es/utils/css/mergeStyle.js +57 -0
  282. package/es/utils/css/utils.js +24 -0
  283. package/es/utils/datetime/GMTZones.js +48 -0
  284. package/es/utils/datetime/common.js +31 -7
  285. package/es/utils/debounce.js +5 -1
  286. package/es/utils/dropDownUtils.js +71 -13
  287. package/es/utils/getInitial.js +4 -0
  288. package/es/utils/index.js +3 -0
  289. package/es/utils/shallowEqual.js +6 -0
  290. package/install.md +10 -0
  291. package/lib/Accordion/Accordion.js +50 -18
  292. package/lib/Accordion/AccordionItem.js +47 -20
  293. package/lib/Accordion/__tests__/Accordion.spec.js +3 -0
  294. package/lib/Accordion/index.js +3 -0
  295. package/lib/Accordion/props/defaultProps.js +6 -2
  296. package/lib/Accordion/props/propTypes.js +6 -0
  297. package/lib/Animation/Animation.js +44 -21
  298. package/lib/Animation/__tests__/Animation.spec.js +11 -7
  299. package/lib/Animation/props/propTypes.js +3 -0
  300. package/lib/AppContainer/AppContainer.js +75 -27
  301. package/lib/AppContainer/AppContainer.module.css +2 -2
  302. package/lib/AppContainer/props/defaultProps.js +3 -1
  303. package/lib/AppContainer/props/propTypes.js +5 -0
  304. package/lib/Avatar/Avatar.js +97 -44
  305. package/lib/Avatar/Avatar.module.css +59 -18
  306. package/lib/Avatar/__tests__/Avatar.spec.js +44 -0
  307. package/lib/Avatar/props/defaultProps.js +4 -1
  308. package/lib/Avatar/props/propTypes.js +8 -2
  309. package/lib/AvatarTeam/AvatarTeam.js +64 -30
  310. package/lib/AvatarTeam/AvatarTeam.module.css +49 -21
  311. package/lib/AvatarTeam/__tests__/AvatarTeam.spec.js +13 -0
  312. package/lib/AvatarTeam/props/defaultProps.js +5 -1
  313. package/lib/AvatarTeam/props/propTypes.js +8 -1
  314. package/lib/Button/Button.js +64 -74
  315. package/{es/Button → lib/Button/css}/Button.module.css +62 -58
  316. package/lib/Button/css/cssJSLogic.js +41 -0
  317. package/lib/Button/index.js +23 -0
  318. package/lib/Button/props/defaultProps.js +5 -1
  319. package/lib/Button/props/propTypes.js +11 -3
  320. package/lib/Buttongroup/Buttongroup.js +49 -19
  321. package/lib/Buttongroup/Buttongroup.module.css +45 -28
  322. package/lib/Buttongroup/__test__/Buttongroup.spec.js +10 -0
  323. package/lib/Buttongroup/props/defaultProps.js +3 -1
  324. package/lib/Buttongroup/props/propTypes.js +6 -1
  325. package/lib/Card/Card.js +119 -55
  326. package/lib/Card/__tests__/Card.spec.js +10 -1
  327. package/lib/Card/index.js +4 -0
  328. package/lib/Card/props/defaultProps.js +16 -4
  329. package/lib/Card/props/propTypes.js +5 -2
  330. package/lib/CheckBox/CheckBox.js +76 -48
  331. package/lib/CheckBox/CheckBox.module.css +16 -16
  332. package/lib/CheckBox/__tests__/CheckBox.spec.js +3 -0
  333. package/lib/CheckBox/props/propTypes.js +4 -0
  334. package/lib/DateTime/CalendarView.js +95 -38
  335. package/lib/DateTime/DateTime.js +309 -216
  336. package/lib/DateTime/DateTime.module.css +51 -48
  337. package/lib/DateTime/DateTimePopupFooter.js +30 -5
  338. package/lib/DateTime/DateTimePopupHeader.js +69 -23
  339. package/lib/DateTime/DateWidget.js +370 -260
  340. package/lib/DateTime/DateWidget.module.css +5 -5
  341. package/lib/DateTime/DaysRow.js +28 -3
  342. package/lib/DateTime/Time.js +72 -29
  343. package/lib/DateTime/YearView.js +89 -30
  344. package/lib/DateTime/YearView.module.css +33 -15
  345. package/lib/DateTime/__tests__/CalendarView.spec.js +13 -5
  346. package/lib/DateTime/__tests__/DateTime.spec.js +51 -37
  347. package/lib/DateTime/__tests__/DateWidget.spec.js +10 -8
  348. package/lib/DateTime/common.js +6 -0
  349. package/lib/DateTime/constants.js +1 -0
  350. package/lib/DateTime/dateFormatUtils/dateFormat.js +184 -122
  351. package/lib/DateTime/dateFormatUtils/dateFormats.js +50 -0
  352. package/lib/DateTime/dateFormatUtils/dayChange.js +14 -7
  353. package/lib/DateTime/dateFormatUtils/index.js +99 -13
  354. package/lib/DateTime/dateFormatUtils/monthChange.js +19 -9
  355. package/lib/DateTime/dateFormatUtils/timeChange.js +52 -20
  356. package/lib/DateTime/dateFormatUtils/yearChange.js +22 -11
  357. package/lib/DateTime/index.js +3 -1
  358. package/lib/DateTime/objectUtils.js +24 -20
  359. package/lib/DateTime/props/defaultProps.js +2 -1
  360. package/lib/DateTime/props/propTypes.js +21 -2
  361. package/lib/DateTime/typeChecker.js +4 -0
  362. package/lib/DateTime/validator.js +69 -6
  363. package/lib/DropBox/DropBox.js +102 -249
  364. package/lib/DropBox/DropBoxElement/DropBoxElement.js +145 -0
  365. package/lib/DropBox/DropBoxElement/css/DropBoxElement.module.css +435 -0
  366. package/lib/DropBox/DropBoxElement/css/cssJSLogic.js +81 -0
  367. package/lib/DropBox/DropBoxElement/props/defaultProps.js +25 -0
  368. package/lib/DropBox/DropBoxElement/props/propTypes.js +56 -0
  369. package/lib/DropBox/DropBoxElement/useDropboxPosCalc.js +60 -0
  370. package/lib/DropBox/__tests__/DropBox.spec.js +8 -4
  371. package/lib/DropBox/css/DropBox.module.css +59 -0
  372. package/lib/DropBox/css/cssJSLogic.js +20 -0
  373. package/lib/DropBox/props/defaultProps.js +20 -17
  374. package/lib/DropBox/props/propTypes.js +22 -43
  375. package/lib/DropDown/DropDown.js +58 -10
  376. package/lib/DropDown/DropDown.module.css +2 -2
  377. package/lib/DropDown/DropDownHeading.js +47 -18
  378. package/lib/DropDown/DropDownHeading.module.css +3 -3
  379. package/lib/DropDown/DropDownItem.js +43 -18
  380. package/lib/DropDown/DropDownItem.module.css +9 -9
  381. package/lib/DropDown/DropDownSearch.js +39 -14
  382. package/lib/DropDown/DropDownSeparator.js +23 -1
  383. package/lib/DropDown/DropDownSeparator.module.css +2 -2
  384. package/lib/DropDown/__tests__/DropDown.spec.js +15 -9
  385. package/lib/DropDown/__tests__/DropDownItem.spec.js +9 -4
  386. package/lib/DropDown/__tests__/DropDownSearch.spec.js +3 -0
  387. package/lib/DropDown/index.js +65 -0
  388. package/lib/DropDown/props/defaultProps.js +3 -1
  389. package/lib/DropDown/props/propTypes.js +7 -1
  390. package/lib/Heading/Heading.js +42 -16
  391. package/lib/Heading/Heading.module.css +2 -2
  392. package/lib/Heading/props/propTypes.js +3 -0
  393. package/lib/Label/Label.js +47 -19
  394. package/lib/Label/Label.module.css +1 -1
  395. package/lib/Label/__tests__/Label.spec.js +14 -1
  396. package/lib/Label/props/defaultProps.js +2 -1
  397. package/lib/Label/props/propTypes.js +4 -0
  398. package/lib/Layout/Box.js +41 -16
  399. package/lib/Layout/Container.js +39 -15
  400. package/lib/Layout/Layout.module.css +15 -15
  401. package/lib/Layout/__tests__/Box.spec.js +65 -49
  402. package/lib/Layout/__tests__/Container.spec.js +67 -50
  403. package/lib/Layout/index.js +4 -11
  404. package/lib/Layout/props/defaultProps.js +6 -2
  405. package/lib/Layout/props/propTypes.js +10 -3
  406. package/lib/Layout/utils.js +15 -1
  407. package/lib/ListItem/ListContainer.js +61 -34
  408. package/lib/ListItem/ListItem.js +92 -50
  409. package/lib/ListItem/ListItem.module.css +37 -30
  410. package/lib/ListItem/ListItemWithAvatar.js +98 -54
  411. package/lib/ListItem/ListItemWithCheckBox.js +82 -41
  412. package/lib/ListItem/ListItemWithIcon.js +92 -50
  413. package/lib/ListItem/ListItemWithRadio.js +83 -42
  414. package/lib/ListItem/index.js +55 -0
  415. package/lib/ListItem/props/defaultProps.js +18 -6
  416. package/lib/ListItem/props/propTypes.js +18 -3
  417. package/lib/Modal/Modal.js +51 -13
  418. package/lib/Modal/props/propTypes.js +3 -0
  419. package/lib/MultiSelect/AdvancedGroupMultiSelect.js +300 -167
  420. package/lib/MultiSelect/AdvancedMultiSelect.js +212 -130
  421. package/lib/MultiSelect/EmptyState.js +48 -21
  422. package/lib/MultiSelect/MultiSelect.js +341 -205
  423. package/lib/MultiSelect/MultiSelect.module.css +32 -31
  424. package/lib/MultiSelect/MultiSelectHeader.js +29 -5
  425. package/lib/MultiSelect/MultiSelectWithAvatar.js +126 -65
  426. package/lib/MultiSelect/SelectedOptions.js +42 -14
  427. package/lib/MultiSelect/SelectedOptions.module.css +5 -5
  428. package/lib/MultiSelect/Suggestions.js +66 -29
  429. package/lib/MultiSelect/__tests__/MultiSelect.spec.js +86 -75
  430. package/lib/MultiSelect/index.js +39 -0
  431. package/lib/MultiSelect/props/defaultProps.js +13 -4
  432. package/lib/MultiSelect/props/propTypes.js +20 -5
  433. package/lib/PopOver/PopOver.js +101 -53
  434. package/lib/PopOver/__tests__/PopOver.spec.js +4 -1
  435. package/lib/PopOver/index.js +31 -0
  436. package/lib/PopOver/props/propTypes.js +3 -0
  437. package/lib/Popup/Popup.js +158 -83
  438. package/lib/Popup/__tests__/Popup.spec.js +42 -5
  439. package/lib/Popup/viewPort.js +28 -14
  440. package/lib/Provider/AvatarSize.js +5 -0
  441. package/lib/Provider/Config.js +2 -0
  442. package/lib/Provider/CssProvider.js +4 -0
  443. package/lib/Provider/IdProvider.js +23 -12
  444. package/lib/Provider/LibraryContext.js +32 -10
  445. package/lib/Provider/LibraryContextInit.js +4 -0
  446. package/lib/Provider/NumberGenerator/NumberGenerator.js +43 -14
  447. package/lib/Provider/ZindexProvider.js +15 -3
  448. package/lib/Provider/index.js +81 -0
  449. package/lib/Radio/Radio.js +65 -40
  450. package/lib/Radio/Radio.module.css +3 -3
  451. package/lib/Radio/__tests__/Radiospec.js +9 -5
  452. package/lib/Radio/props/propTypes.js +3 -0
  453. package/lib/Responsive/CustomResponsive.js +76 -26
  454. package/lib/Responsive/RefWrapper.js +15 -7
  455. package/lib/Responsive/ResizeComponent.js +58 -27
  456. package/lib/Responsive/ResizeObserver.js +23 -6
  457. package/lib/Responsive/Responsive.js +76 -24
  458. package/lib/Responsive/index.js +49 -22
  459. package/lib/Responsive/props/propTypes.js +3 -0
  460. package/lib/Responsive/sizeObservers.js +51 -13
  461. package/lib/Responsive/utils/index.js +11 -3
  462. package/lib/Responsive/utils/shallowCompare.js +11 -2
  463. package/lib/Responsive/windowResizeObserver.js +8 -0
  464. package/lib/ResponsiveDropBox/ResponsiveDropBox.js +44 -14
  465. package/lib/ResponsiveDropBox/ResponsiveDropBox.module.css +2 -2
  466. package/lib/ResponsiveDropBox/props/propTypes.js +3 -0
  467. package/lib/Ribbon/Ribbon.js +48 -21
  468. package/lib/Ribbon/Ribbon.module.css +133 -55
  469. package/lib/Ribbon/__tests__/Ribbon.spec.js +22 -0
  470. package/lib/Ribbon/props/defaultProps.js +2 -1
  471. package/lib/Ribbon/props/propTypes.js +5 -1
  472. package/lib/RippleEffect/RippleEffect.js +23 -14
  473. package/lib/RippleEffect/props/propTypes.js +3 -0
  474. package/lib/Select/GroupSelect.js +240 -137
  475. package/lib/Select/Select.js +320 -220
  476. package/lib/Select/Select.module.css +23 -23
  477. package/lib/Select/SelectWithAvatar.js +112 -59
  478. package/lib/Select/SelectWithIcon.js +145 -82
  479. package/lib/Select/__tests__/Select.spec.js +131 -89
  480. package/lib/Select/index.js +39 -0
  481. package/lib/Select/props/defaultProps.js +10 -2
  482. package/lib/Select/props/propTypes.js +13 -4
  483. package/lib/Stencils/Stencils.js +35 -13
  484. package/lib/Stencils/Stencils.module.css +2 -2
  485. package/lib/Stencils/__tests__/Stencils.spec.js +12 -0
  486. package/lib/Stencils/props/propTypes.js +3 -0
  487. package/lib/Switch/Switch.js +64 -35
  488. package/lib/Switch/Switch.module.css +49 -32
  489. package/lib/Switch/props/defaultProps.js +2 -1
  490. package/lib/Switch/props/propTypes.js +4 -0
  491. package/lib/Tab/Tab.js +49 -33
  492. package/lib/Tab/Tab.module.css +14 -15
  493. package/lib/Tab/TabContent.js +15 -6
  494. package/lib/Tab/TabContentWrapper.js +15 -6
  495. package/lib/Tab/TabWrapper.js +37 -17
  496. package/lib/Tab/Tabs.js +193 -94
  497. package/lib/Tab/Tabs.module.css +36 -40
  498. package/lib/Tab/__tests__/Tab.spec.js +74 -70
  499. package/lib/Tab/__tests__/TabContent.spec.js +10 -6
  500. package/lib/Tab/__tests__/TabContentWrapper.spec.js +28 -20
  501. package/lib/Tab/__tests__/TabWrapper.spec.js +12 -0
  502. package/lib/Tab/__tests__/Tabs.spec.js +53 -39
  503. package/lib/Tab/index.js +6 -0
  504. package/lib/Tab/props/defaultProps.js +10 -5
  505. package/lib/Tab/props/propTypes.js +13 -5
  506. package/lib/Tag/Tag.js +82 -48
  507. package/lib/Tag/Tag.module.css +10 -10
  508. package/lib/Tag/__tests__/Tag.spec.js +14 -8
  509. package/lib/Tag/props/defaultProps.js +2 -1
  510. package/lib/Tag/props/propTypes.js +5 -1
  511. package/lib/TextBox/TextBox.js +93 -61
  512. package/lib/TextBox/TextBox.module.css +6 -5
  513. package/lib/TextBox/__tests__/TextBox.spec.js +14 -4
  514. package/lib/TextBox/props/defaultProps.js +2 -1
  515. package/lib/TextBox/props/propTypes.js +6 -1
  516. package/lib/TextBoxIcon/TextBoxIcon.js +108 -60
  517. package/lib/TextBoxIcon/TextBoxIcon.module.css +7 -6
  518. package/lib/TextBoxIcon/__tests__/TextBoxIcon.spec.js +14 -5
  519. package/lib/TextBoxIcon/props/defaultProps.js +2 -1
  520. package/lib/TextBoxIcon/props/propTypes.js +4 -0
  521. package/lib/Textarea/Textarea.js +63 -32
  522. package/lib/Textarea/Textarea.module.css +6 -6
  523. package/lib/Textarea/__tests__/Textarea.spec.js +14 -2
  524. package/lib/Textarea/props/defaultProps.js +2 -1
  525. package/lib/Textarea/props/propTypes.js +4 -0
  526. package/lib/Tooltip/Tooltip.js +102 -35
  527. package/lib/Tooltip/Tooltip.module.css +40 -8
  528. package/lib/Tooltip/__tests__/Tooltip.spec.js +23 -0
  529. package/lib/Tooltip/props/propTypes.js +3 -0
  530. package/lib/VelocityAnimation/VelocityAnimation/VelocityAnimation.js +43 -17
  531. package/lib/VelocityAnimation/VelocityAnimation/props/propTypes.js +3 -0
  532. package/lib/VelocityAnimation/VelocityAnimationGroup/VelocityAnimationGroup.js +55 -24
  533. package/lib/VelocityAnimation/VelocityAnimationGroup/props/propTypes.js +3 -0
  534. package/lib/VelocityAnimation/index.js +23 -0
  535. package/lib/common/a11y.module.css +4 -0
  536. package/lib/common/animation.module.css +8 -8
  537. package/lib/common/avatarsizes.module.css +6 -2
  538. package/lib/common/basicReset.module.css +3 -3
  539. package/lib/common/boxShadow.module.css +34 -0
  540. package/lib/common/common.module.css +24 -24
  541. package/lib/common/customscroll.module.css +4 -2
  542. package/lib/common/reset.module.css +1 -0
  543. package/lib/css.js +42 -1
  544. package/lib/deprecated/AdvancedMultiSelect.module.css +18 -18
  545. package/lib/deprecated/PortalLayer/PortalLayer.js +50 -24
  546. package/lib/deprecated/PortalLayer/props/propTypes.js +3 -0
  547. package/lib/index.js +214 -210
  548. package/lib/semantic/Button/Button.js +47 -24
  549. package/lib/semantic/Button/props/propTypes.js +3 -0
  550. package/lib/semantic/Button/semanticButton.module.css +1 -1
  551. package/lib/semantic/index.js +15 -0
  552. package/lib/utils/Common.js +136 -17
  553. package/lib/utils/ContextOptimizer.js +16 -10
  554. package/lib/utils/__tests__/constructFullName.spec.js +1 -0
  555. package/lib/utils/__tests__/debounce.spec.js +3 -2
  556. package/lib/utils/__tests__/getInitial.spec.js +1 -0
  557. package/lib/utils/constructFullName.js +11 -2
  558. package/lib/utils/css/compileClassNames.js +37 -0
  559. package/lib/utils/css/mergeStyle.js +69 -0
  560. package/lib/utils/css/utils.js +41 -0
  561. package/lib/utils/datetime/GMTZones.js +55 -0
  562. package/lib/utils/datetime/common.js +52 -7
  563. package/lib/utils/debounce.js +6 -1
  564. package/lib/utils/dropDownUtils.js +177 -56
  565. package/lib/utils/dummyFunction.js +2 -0
  566. package/lib/utils/getHTMLFontSize.js +1 -0
  567. package/lib/utils/getInitial.js +6 -0
  568. package/lib/utils/index.js +121 -0
  569. package/lib/utils/scrollTo.js +2 -0
  570. package/lib/utils/shallowEqual.js +8 -0
  571. package/package.json +61 -26
  572. package/postPublish.js +8 -0
  573. package/prePublish.js +70 -0
  574. package/docs/external/active-line.js +0 -72
  575. package/docs/external/autorefresh.js +0 -47
  576. package/docs/external/codemirror.js +0 -9681
  577. package/docs/external/css/hopscotch.css +0 -576
  578. package/docs/external/css/styleGuide.css +0 -1100
  579. package/docs/external/css.js +0 -466
  580. package/docs/external/designTokens.js +0 -1
  581. package/docs/external/foldcode.js +0 -152
  582. package/docs/external/format.js +0 -129
  583. package/docs/external/htmlmixed.js +0 -84
  584. package/docs/external/images/bottom.png +0 -0
  585. package/docs/external/images/bottombg.jpg +0 -0
  586. package/docs/external/images/desk.png +0 -0
  587. package/docs/external/images/desklogo.png +0 -0
  588. package/docs/external/images/menu.png +0 -0
  589. package/docs/external/index.html +0 -127
  590. package/docs/external/javascript.js +0 -422
  591. package/docs/external/jsx.js +0 -148
  592. package/docs/external/matchbrackets.js +0 -145
  593. package/docs/external/xml.js +0 -322
  594. package/docs/package.json +0 -41
  595. package/docs/src/index.js +0 -1311
  596. package/es/Button/__tests__/Button.spec.js +0 -190
  597. package/es/Button/__tests__/__snapshots__/Button.spec.js.snap +0 -191
  598. package/es/DropBox/DropBox.module.css +0 -406
  599. package/lib/Button/__tests__/Button.spec.js +0 -193
  600. package/lib/Button/__tests__/__snapshots__/Button.spec.js.snap +0 -191
  601. package/lib/DropBox/DropBox.module.css +0 -406
@@ -23,13 +23,15 @@ export const Tab_propTypes = {
23
23
  tourId: PropTypes.string,
24
24
  type: PropTypes.string,
25
25
  customProps: PropTypes.object,
26
- isVirtual: PropTypes.bool
26
+ isVirtual: PropTypes.bool,
27
+ dataSelectorId: PropTypes.string
27
28
  };
28
29
  export const TabContent_propTypes = {
29
30
  children: PropTypes.node,
30
31
  dataId: PropTypes.string,
31
32
  id: PropTypes.string,
32
- scroll: PropTypes.oneOf(['vertical', 'horizontal', 'both', 'none'])
33
+ scroll: PropTypes.oneOf(['vertical', 'horizontal', 'both', 'none']),
34
+ dataSelectorId: PropTypes.string
33
35
  };
34
36
  export const TabContentWrapper_propTypes = {
35
37
  children: PropTypes.node,
@@ -37,7 +39,8 @@ export const TabContentWrapper_propTypes = {
37
39
  dataId: PropTypes.string,
38
40
  onScroll: PropTypes.func,
39
41
  selectedTab: PropTypes.string,
40
- style: PropTypes.object
42
+ style: PropTypes.object,
43
+ dataSelectorId: PropTypes.string
41
44
  };
42
45
  export const Tabs_propTypes = {
43
46
  align: PropTypes.oneOf(['vertical', 'horizontal']),
@@ -84,7 +87,8 @@ export const Tabs_propTypes = {
84
87
  ListItemProps: PropTypes.object,
85
88
  MoreButtonProps: PropTypes.object
86
89
  }),
87
- getCustomDropBoxHeaderPlaceHolder: PropTypes.func
90
+ getCustomDropBoxHeaderPlaceHolder: PropTypes.func,
91
+ dataSelectorId: PropTypes.string
88
92
  };
89
93
  export const TabWrapper_propTypes = {
90
94
  align: PropTypes.oneOf(['vertical', 'horizontal']),
@@ -98,5 +102,6 @@ export const TabWrapper_propTypes = {
98
102
  needPadding: PropTypes.bool,
99
103
  needTabBorder: PropTypes.bool,
100
104
  onSelect: PropTypes.func,
101
- type: PropTypes.oneOf(['alpha', 'beta', 'zeta'])
105
+ type: PropTypes.oneOf(['alpha', 'beta', 'delta']),
106
+ dataSelectorId: PropTypes.string
102
107
  };
package/es/Tag/Tag.js CHANGED
@@ -1,13 +1,12 @@
1
1
  import React, { PureComponent } from 'react';
2
2
  import { defaultProps } from './props/defaultProps';
3
3
  import { propTypes } from './props/propTypes';
4
- import Icon from '@zohodesk/icons/lib/Icon';
4
+ import { Icon } from '@zohodesk/icons';
5
5
  import Avatar from '../Avatar/Avatar';
6
6
  import { Container } from '../Layout';
7
7
  import Button from '../semantic/Button/Button';
8
8
  import { getUniqueId } from '../Provider/IdProvider';
9
9
  import style from './Tag.module.css';
10
-
11
10
  /*
12
11
  * eslint css-modules/no-unused-class: [2, { markAsUsed: ['small', 'medium',
13
12
  * 'closedanger', 'closeprimary', 'default', 'danger', 'secondary',
@@ -28,6 +27,7 @@ export default class Tag extends PureComponent {
28
27
  this.getRef = this.getRef.bind(this);
29
28
  this.getNextAriaId = getUniqueId(this);
30
29
  }
30
+
31
31
  handleSelect(e) {
32
32
  let {
33
33
  id,
@@ -38,6 +38,7 @@ export default class Tag extends PureComponent {
38
38
  e.nativeEvent.stopImmediatePropagation && e.nativeEvent.stopImmediatePropagation();
39
39
  onSelectTag && onSelectTag(id, e);
40
40
  }
41
+
41
42
  handleRemove(e) {
42
43
  let {
43
44
  onRemove,
@@ -48,6 +49,7 @@ export default class Tag extends PureComponent {
48
49
  e.nativeEvent.stopImmediatePropagation && e.nativeEvent.stopImmediatePropagation();
49
50
  onRemove && onRemove(id);
50
51
  }
52
+
51
53
  getRef(el) {
52
54
  let {
53
55
  getRef,
@@ -55,6 +57,7 @@ export default class Tag extends PureComponent {
55
57
  } = this.props;
56
58
  getRef && getRef(el, id);
57
59
  }
60
+
58
61
  render() {
59
62
  let {
60
63
  imageURL,
@@ -71,6 +74,7 @@ export default class Tag extends PureComponent {
71
74
  onSelectTag,
72
75
  closeTitle,
73
76
  dataId,
77
+ dataSelectorId,
74
78
  iconName,
75
79
  iconSize,
76
80
  tooltip,
@@ -95,11 +99,13 @@ export default class Tag extends PureComponent {
95
99
  return /*#__PURE__*/React.createElement("div", {
96
100
  className: `${style.container} ${needEffect && !isReadOnly ? style.effect : style.readonly} ${active ? `${style.selected} ${style[`active${palette}`]}` : ''} ${onRemove ? active ? `${style[`active${size}Effect`]}` : '' : ''} ${style[size]} ${rounded ? style.lgRadius : style.smRadius} ${style[palette]} ${disabled ? style.disabled : ''} ${onSelectTag ? style.pointer : ''} ${customTag}`,
97
101
  "data-id": active ? `${dataId}_TagSelected` : `${dataId}_Tag`,
102
+ "data-test-id": active ? `${dataId}_TagSelected` : `${dataId}_Tag`,
98
103
  onClick: this.handleSelect,
99
104
  ref: this.getRef,
100
105
  "data-title": tooltip ? tooltip : text,
101
106
  tabIndex: disabled ? '-1' : '0',
102
- "aria-labelledby": getAriaId
107
+ "aria-labelledby": getAriaId,
108
+ "data-selector-id": dataSelectorId
103
109
  }, hasAvatar ? /*#__PURE__*/React.createElement("div", {
104
110
  className: style.avatar
105
111
  }, /*#__PURE__*/React.createElement(Avatar, {
@@ -137,12 +143,12 @@ export default class Tag extends PureComponent {
137
143
  size: "8"
138
144
  }))));
139
145
  }
146
+
140
147
  }
141
148
  Tag.defaultProps = defaultProps;
142
- Tag.propTypes = propTypes;
143
- if (false) {
144
- Tag.docs = {
145
- componentGroup: 'Molecule',
146
- folderName: 'Style Guide'
147
- };
148
- }
149
+ Tag.propTypes = propTypes; // if (__DOCS__) {
150
+ // Tag.docs = {
151
+ // componentGroup: 'Molecule',
152
+ // folderName: 'Style Guide'
153
+ // };
154
+ // }
@@ -22,9 +22,9 @@
22
22
  --tag_icon_bg_color: var(--zdt_tag_icon_bg);
23
23
  }[dir=ltr] .varClass {
24
24
  --tag_closeicon_border_radius: 0 12px 12px 0 /*rtl: 12px 0 0 12px*/;
25
- --tag_closeicon_padding: 0 var(--zd_size7) 0 var(--zd_size6)
26
- /*rtl: 0 var(--zd_size6) 0 var(--zd_size7)*/;
27
- --tag_icon_margin: 0 0 0 var(--zd_size5) /*rtl: 0 var(--zd_size5) 0 0*/;
25
+ --tag_closeicon_padding: 0 var(--zd_size7) 0 var(--zd_size6
26
+ ) ;
27
+ --tag_icon_margin: 0 0 0 var(--zd_size5) ;
28
28
  }[dir=rtl] .varClass {
29
29
  --tag_closeicon_border_radius: 12px 0 0 12px;
30
30
  --tag_closeicon_padding: 0 var(--zd_size6) 0 var(--zd_size7);
@@ -39,7 +39,7 @@
39
39
  font-size: var(--tag_font_size);
40
40
  letter-spacing: var(--tag_letter_spacing);
41
41
  height: var(--tag_height);
42
- max-width: 100%;
42
+ max-width: 100% ;
43
43
  background-color: var(--tag_bg_color);
44
44
  border-radius: var(--tag_border_radius);
45
45
  border-width: var(--tag_border_width);
@@ -82,11 +82,11 @@
82
82
  }
83
83
  [dir=ltr] .small .avatar {
84
84
  transform: scale(0.8) translateX(-2px);
85
- margin-right: calc(var(--zd_size8) * -1);
85
+ margin-right: calc( var(--zd_size8) * -1 ) ;
86
86
  }
87
87
  [dir=rtl] .small .avatar {
88
88
  transform: scale(0.8) translateX(2px);
89
- margin-left: calc(var(--zd_size8) * -1);
89
+ margin-left: calc( var(--zd_size8) * -1 ) ;
90
90
  }
91
91
  .smalltext {
92
92
  --tag_font_size: var(--zd_font_size12);
@@ -126,18 +126,18 @@
126
126
  color: var(--tag_closeicon_color);
127
127
  display: none;
128
128
  position: absolute;
129
- top: 0;
130
- bottom: 0;
129
+ top: 0 ;
130
+ bottom: 0 ;
131
131
  padding: var(--tag_closeicon_padding);
132
132
  cursor: var(--tag_closeicon_cursor);
133
133
  border-radius: var(--tag_closeicon_border_radius);
134
134
  background: var(--tag_closeicon_bg_color);
135
135
  }
136
136
  [dir=ltr] .close {
137
- right: 0;
137
+ right: 0 ;
138
138
  }
139
139
  [dir=rtl] .close {
140
- left: 0;
140
+ left: 0 ;
141
141
  }
142
142
  [dir=ltr] .lgRadiusClose {
143
143
  --tag_closeicon_border_radius: 0 12px 12px 0 /*rtl: 12px 0 0 12px*/;
@@ -9,5 +9,6 @@ export const defaultProps = {
9
9
  customClass: {},
10
10
  a11y: {},
11
11
  needEffect: true,
12
- isReadOnly: false
12
+ isReadOnly: false,
13
+ dataSelectorId: 'tag'
13
14
  };
@@ -30,5 +30,6 @@ export const propTypes = {
30
30
  clearLabel: PropTypes.string
31
31
  }),
32
32
  needEffect: PropTypes.bool,
33
- isReadOnly: PropTypes.bool
33
+ isReadOnly: PropTypes.bool,
34
+ dataSelectorId: PropTypes.string
34
35
  };
@@ -1,8 +1,10 @@
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
  /* eslint css-modules/no-unused-class: [2, { markAsUsed: ['xmedium', 'medium', 'small', 'default', 'primary', 'secondary'] }] */
7
+
6
8
  import style from './TextBox.module.css';
7
9
  export default class Textbox extends React.PureComponent {
8
10
  constructor(props) {
@@ -13,6 +15,7 @@ export default class Textbox extends React.PureComponent {
13
15
  this.handleFocus = this.handleFocus.bind(this);
14
16
  this.handleBlur = this.handleBlur.bind(this);
15
17
  }
18
+
16
19
  handleFocus() {
17
20
  let {
18
21
  id,
@@ -22,6 +25,7 @@ export default class Textbox extends React.PureComponent {
22
25
  } = this.props;
23
26
  onFocus && onFocus(id, value, name);
24
27
  }
28
+
25
29
  handleBlur() {
26
30
  let {
27
31
  id,
@@ -31,6 +35,7 @@ export default class Textbox extends React.PureComponent {
31
35
  } = this.props;
32
36
  onBlur && onBlur(id, value, name);
33
37
  }
38
+
34
39
  inputRef(ref) {
35
40
  let {
36
41
  inputRef
@@ -38,6 +43,7 @@ export default class Textbox extends React.PureComponent {
38
43
  this.inputEle = ref;
39
44
  inputRef && inputRef(ref);
40
45
  }
46
+
41
47
  setFocus() {
42
48
  if (this.inputEle) {
43
49
  this.inputEle.focus({
@@ -45,6 +51,7 @@ export default class Textbox extends React.PureComponent {
45
51
  });
46
52
  }
47
53
  }
54
+
48
55
  onChange(e) {
49
56
  e.preventDefault();
50
57
  let {
@@ -56,6 +63,7 @@ export default class Textbox extends React.PureComponent {
56
63
  } = this.props;
57
64
  onChange && !isReadOnly && onChange(value, e);
58
65
  }
66
+
59
67
  render() {
60
68
  let {
61
69
  type,
@@ -86,7 +94,8 @@ export default class Textbox extends React.PureComponent {
86
94
  a11y,
87
95
  customClass,
88
96
  isFocus,
89
- customProps
97
+ customProps,
98
+ dataSelectorId
90
99
  } = this.props;
91
100
  let {
92
101
  ariaLabel,
@@ -105,18 +114,23 @@ export default class Textbox extends React.PureComponent {
105
114
  ariaMultiselectable
106
115
  } = a11y;
107
116
  let options = {};
117
+
108
118
  if (isReadOnly) {
109
119
  options.readOnly = true;
110
120
  }
121
+
111
122
  if (isDisabled) {
112
123
  options.disabled = true;
113
124
  }
125
+
114
126
  if (autofocus) {
115
127
  options.autoFocus = true;
116
128
  }
129
+
117
130
  if (!autoComplete) {
118
131
  options.autoComplete = 'off';
119
132
  }
133
+
120
134
  let classList = needAppearance ? `${style.container} ${style[size]} ${style[variant]} ${needBorder ? style.border : ''} ${isDisabled && !needEffect || isReadOnly && !needEffect ? '' : style.effect} ${isFocus ? style.focus : ''}` : `${style.basic}`;
121
135
  value = value === null || value === undefined ? '' : value;
122
136
  return /*#__PURE__*/React.createElement("input", _extends({
@@ -136,6 +150,8 @@ export default class Textbox extends React.PureComponent {
136
150
  "aria-multiselectable": ariaMultiselectable,
137
151
  className: `${isReadOnly && needReadOnlyStyle ? style.readonly : ''} ${isClickable ? style.pointer : ''} ${classList} ${style[`borderColor_${borderColor}`]} ${customClass ? customClass : ''}`,
138
152
  "data-id": `${dataId}`,
153
+ "data-test-id": `${dataId}`,
154
+ "data-selector-id": dataSelectorId,
139
155
  id: htmlId || id,
140
156
  maxLength: maxLength,
141
157
  name: name,
@@ -153,14 +169,14 @@ export default class Textbox extends React.PureComponent {
153
169
  onMouseDown: onMouseDown
154
170
  }, options, customProps));
155
171
  }
172
+
156
173
  }
157
174
  Textbox.defaultProps = defaultProps;
158
- Textbox.propTypes = propTypes;
159
- if (false) {
160
- Textbox.docs = {
161
- componentGroup: 'Form Elements',
162
- folderName: 'Style Guide',
163
- external: true,
164
- description: ' '
165
- };
166
- }
175
+ Textbox.propTypes = propTypes; // if (__DOCS__) {
176
+ // Textbox.docs = {
177
+ // componentGroup: 'Form Elements',
178
+ // folderName: 'Style Guide',
179
+ // external: true,
180
+ // description: ' '
181
+ // };
182
+ // }
@@ -10,10 +10,11 @@
10
10
  --textbox_height: var(--zd_size35);
11
11
  --textbox_border_radius: none;
12
12
  --textbox_font_family: var(--zd_regular);
13
+ /* Variable:Ignore */
13
14
  --textbox_letter_spacing: 0.1px;
14
15
  --textbox_padding: 0;
15
16
  --textbox_cursor: auto;
16
- --textbox_line_height: var(--zd_size35);
17
+ --textbox_line_height: 35px;
17
18
 
18
19
  /* textbox placeholder default variable */
19
20
  --textbox_placeholder_text_color: var(--zdt_textbox_placeholder_text);
@@ -114,21 +115,21 @@
114
115
  }
115
116
  .xmedium {
116
117
  --textbox_height: var(--zd_size28);
117
- --textbox_line_height: var(--zd_size28);
118
+ --textbox_line_height: 28px;
118
119
  }
119
120
  .medium {
120
121
  --textbox_height: var(--zd_size35);
121
- --textbox_line_height: var(--zd_size35);
122
+ --textbox_line_height: 35px;
122
123
  }
123
124
  .small {
124
125
  --textbox_font_size: var(--zd_font_size12);
125
126
  --textbox_height: var(--zd_size28);
126
- --textbox_line_height: var(--zd_size28);
127
+ --textbox_line_height: 28px;
127
128
  }
128
129
  .xsmall {
129
130
  --textbox_font_size: var(--zd_font_size13);
130
131
  --textbox_height: var(--zd_size25);
131
- --textbox_line_height: var(--zd_size25);
132
+ --textbox_line_height: 25px;
132
133
  }
133
134
  .default,
134
135
  .primary,
@@ -111,9 +111,7 @@ describe('TextBox component', () => {
111
111
  text: "Text Box Working"
112
112
  }));
113
113
  expect(TestUtils.findRenderedComponentsWithTestid(renderedDOM, 'textBox').getAttribute('placeholder')).toMatch(/Text Box/);
114
- });
115
-
116
- // it('Check disabled works', () => {
114
+ }); // it('Check disabled works', () => {
117
115
  // let renderedDOM = TestUtils.renderIntoDocument(
118
116
  // <TextBox maxLength='100' placeHolder='Text Box' size='medium' variant='primary' value='Text Box Working' disabled />
119
117
  // );
@@ -129,7 +127,6 @@ describe('TextBox component', () => {
129
127
  // pass
130
128
  // ).toBe(true);
131
129
  // });
132
-
133
130
  // it('Check readOnly works', () => {
134
131
  // let renderedDOM = TestUtils.renderIntoDocument(
135
132
  // <TextBox maxLength='100' placeHolder='Text Box' size='medium' variant='primary' value='Text Box Working' readOnly />
@@ -15,5 +15,6 @@ export const defaultProps = {
15
15
  borderColor: 'default',
16
16
  a11y: {},
17
17
  isFocus: false,
18
- customProps: {}
18
+ customProps: {},
19
+ dataSelectorId: 'textBox'
19
20
  };
@@ -49,5 +49,6 @@ export const propTypes = {
49
49
  ariaMultiselectable: PropTypes.bool
50
50
  }),
51
51
  isFocus: PropTypes.bool,
52
- customProps: PropTypes.object
52
+ customProps: PropTypes.object,
53
+ dataSelectorId: PropTypes.string
53
54
  };
@@ -1,10 +1,11 @@
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 TextBox from '../TextBox/TextBox';
6
7
  import { Container, Box } from '../Layout';
7
- import Icon from '@zohodesk/icons/lib/Icon';
8
+ import { Icon } from '@zohodesk/icons';
8
9
  import btnStyle from '../semantic/Button/semanticButton.module.css';
9
10
  import style from './TextBoxIcon.module.css';
10
11
  /* eslint-disable react/forbid-component-props */
@@ -17,13 +18,35 @@ export default class TextBoxIcon extends React.Component {
17
18
  };
18
19
  this.handleFocus = this.handleFocus.bind(this);
19
20
  this.handleBlur = this.handleBlur.bind(this);
21
+ this.handleRef = this.handleRef.bind(this);
22
+ this.handleClear = this.handleClear.bind(this);
23
+ }
24
+
25
+ handleRef(ele) {
26
+ let {
27
+ inputRef
28
+ } = this.props;
29
+ this.inputEle = ele;
30
+ inputRef && inputRef(ele);
20
31
  }
32
+
33
+ handleClear() {
34
+ let {
35
+ onClear
36
+ } = this.props;
37
+ onClear && onClear();
38
+ this.inputEle && this.inputEle.focus({
39
+ preventScroll: true
40
+ });
41
+ }
42
+
21
43
  handleFocus(e) {
22
44
  const {
23
45
  onFocus,
24
46
  needReadOnlyStyle,
25
47
  isReadOnly
26
48
  } = this.props;
49
+
27
50
  if (!needReadOnlyStyle || !isReadOnly && needReadOnlyStyle) {
28
51
  this.setState({
29
52
  isActive: true
@@ -31,6 +54,7 @@ export default class TextBoxIcon extends React.Component {
31
54
  onFocus && onFocus(e);
32
55
  }
33
56
  }
57
+
34
58
  handleBlur(e) {
35
59
  const {
36
60
  onBlur
@@ -40,6 +64,7 @@ export default class TextBoxIcon extends React.Component {
40
64
  });
41
65
  onBlur && onBlur(e);
42
66
  }
67
+
43
68
  render() {
44
69
  const {
45
70
  type,
@@ -49,7 +74,6 @@ export default class TextBoxIcon extends React.Component {
49
74
  placeHolder,
50
75
  size,
51
76
  onKeyUp,
52
- inputRef,
53
77
  isReadOnly,
54
78
  isDisabled,
55
79
  children,
@@ -63,6 +87,7 @@ export default class TextBoxIcon extends React.Component {
63
87
  onChange,
64
88
  title,
65
89
  dataId,
90
+ dataSelectorId,
66
91
  needReadOnlyStyle,
67
92
  isClickable,
68
93
  needEffect,
@@ -97,6 +122,7 @@ export default class TextBoxIcon extends React.Component {
97
122
  alignBox: "row",
98
123
  isCover: false,
99
124
  className: `${style.container} ${isDisabled ? style.disabled : isReadOnly ? needEffect ? style.effect : style.readonly : style.effect} ${isActive || isFocus ? style.effectFocused : ''} ${customTBoxWrap} ${iconOnHover && (isReadOnly || isDisabled) ? style.iconOnHoverReadonly : iconOnHover && !(isReadOnly || isDisabled) ? style.iconOnHoverStyle : ''}`,
125
+ dataSelectorId: dataSelectorId,
100
126
  "data-title": isDisabled ? title : null
101
127
  }, /*#__PURE__*/React.createElement(Box, {
102
128
  flexible: true
@@ -119,7 +145,7 @@ export default class TextBoxIcon extends React.Component {
119
145
  onClick: onClick,
120
146
  isReadOnly: isReadOnly,
121
147
  isDisabled: isDisabled,
122
- inputRef: inputRef,
148
+ inputRef: this.handleRef,
123
149
  needReadOnlyStyle: needReadOnlyStyle,
124
150
  isClickable: isClickable,
125
151
  onKeyPress: onKeyPress,
@@ -133,7 +159,7 @@ export default class TextBoxIcon extends React.Component {
133
159
  alignBox: "row"
134
160
  }, value && onClear && value.length > 1 && !isDisabled && !isReadOnly || showClearIcon ? /*#__PURE__*/React.createElement(Box, {
135
161
  className: `${btnStyle.buttonReset} ${style.icon}`,
136
- onClick: onClear,
162
+ onClick: this.handleClear,
137
163
  dataId: `${dataId}_ClearIcon`,
138
164
  "data-title": clearText,
139
165
  tagName: "button"
@@ -150,14 +176,14 @@ export default class TextBoxIcon extends React.Component {
150
176
  className: `${style.line} ${style[`borderColor_${borderColor}`]} ${customTBoxLine}`
151
177
  }));
152
178
  }
179
+
153
180
  }
154
181
  TextBoxIcon.defaultProps = defaultProps;
155
- TextBoxIcon.propTypes = propTypes;
156
- if (false) {
157
- TextBoxIcon.docs = {
158
- componentGroup: 'Form Elements',
159
- folderName: 'Style Guide',
160
- external: true,
161
- description: ' '
162
- };
163
- }
182
+ TextBoxIcon.propTypes = propTypes; // if (__DOCS__) {
183
+ // TextBoxIcon.docs = {
184
+ // componentGroup: 'Form Elements',
185
+ // folderName: 'Style Guide',
186
+ // external: true,
187
+ // description: ' '
188
+ // };
189
+ // }
@@ -1,6 +1,6 @@
1
1
  .varClass {
2
2
  /* textboxicon default variables */
3
- --textboxicon_line_height: 1px;
3
+ --textboxicon_line_height: var(--zd_size1);
4
4
  --textboxicon_line_color: var(--zdt_textboxicon_default_line_bg);
5
5
 
6
6
  /* textboxicon icon default variables */
@@ -35,19 +35,20 @@
35
35
  }
36
36
  .line {
37
37
  position: absolute;
38
- bottom: 0;
38
+ bottom: 0 ;
39
+ /* Variable:Ignore */
39
40
  min-height: 1px;
40
41
  transition: var(--zd_transition2);
41
42
  height: var(--textboxicon_line_height);
42
43
  transform: perspective(1px);
43
44
  }
44
45
  [dir=ltr] .line {
45
- left: 0;
46
- right: 0;
46
+ left: 0 ;
47
+ right: 0 ;
47
48
  }
48
49
  [dir=rtl] .line {
49
- right: 0;
50
- left: 0;
50
+ right: 0 ;
51
+ left: 0 ;
51
52
  }
52
53
  .line, .borderColor_default {
53
54
  background-color: var(--textboxicon_line_color);
@@ -1,8 +1,6 @@
1
1
  import React from 'react';
2
2
  import TextBoxIcon from '../TextBoxIcon';
3
- import renderer from 'react-test-renderer';
4
-
5
- // children: PropTypes.node,
3
+ import renderer from 'react-test-renderer'; // children: PropTypes.node,
6
4
  // disabled: PropTypes.bool,
7
5
  // iconRotated: PropTypes.bool,
8
6
  // id: PropTypes.string,
@@ -136,9 +134,7 @@ describe('TextBoxIcon component', () => {
136
134
  text: "Text Box Working"
137
135
  }));
138
136
  expect(TestUtils.findRenderedComponentsWithTestid(renderedDOM, 'textBoxIcon').getAttribute('placeholder')).toMatch(/Text Box/);
139
- });
140
-
141
- // it('Check disabled works', () => {
137
+ }); // it('Check disabled works', () => {
142
138
  // let renderedDOM = TestUtils.renderIntoDocument(
143
139
  // <TextBoxIcon maxLength='100' placeHolder='Text Box' size='medium' variant='primary' value='Text Box Working' disabled />
144
140
  // );
@@ -154,7 +150,6 @@ describe('TextBoxIcon component', () => {
154
150
  // pass
155
151
  // ).toBe(true);
156
152
  // });
157
-
158
153
  // it('Check readOnly works', () => {
159
154
  // let renderedDOM = TestUtils.renderIntoDocument(
160
155
  // <TextBoxIcon maxLength='100' placeHolder='Text Box' size='medium' variant='primary' value='Text Box Working' readOnly />
@@ -17,5 +17,6 @@ export const defaultProps = {
17
17
  customClass: {},
18
18
  iconOnHover: false,
19
19
  isFocus: false,
20
- customProps: {}
20
+ customProps: {},
21
+ dataSelectorId: 'textBoxIcon'
21
22
  };
@@ -3,6 +3,7 @@ export const propTypes = {
3
3
  borderColor: PropTypes.oneOf(['transparent', 'default', 'error']),
4
4
  children: PropTypes.node,
5
5
  dataId: PropTypes.string,
6
+ dataSelectorId: PropTypes.string,
6
7
  htmlId: PropTypes.string,
7
8
  i18nKeys: PropTypes.shape({
8
9
  clearText: PropTypes.string