@zohodesk/components 1.0.0-temp-163 → 1.0.0-temp-165

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 (446) hide show
  1. package/README.md +25 -0
  2. package/es/Accordion/Accordion.js +8 -3
  3. package/es/Accordion/AccordionItem.js +5 -2
  4. package/es/Animation/Animation.js +3 -3
  5. package/es/AppContainer/AppContainer.js +27 -10
  6. package/es/AppContainer/AppContainer.module.css +2 -2
  7. package/es/AppContainer/props/defaultProps.js +2 -1
  8. package/es/AppContainer/props/propTypes.js +1 -0
  9. package/es/Avatar/Avatar.js +26 -11
  10. package/es/Avatar/Avatar.module.css +18 -18
  11. package/es/AvatarTeam/AvatarTeam.js +4 -3
  12. package/es/AvatarTeam/AvatarTeam.module.css +35 -35
  13. package/es/Button/Button.js +5 -3
  14. package/es/Button/css/Button.module.css +70 -70
  15. package/es/Buttongroup/Buttongroup.js +4 -3
  16. package/es/Buttongroup/Buttongroup.module.css +14 -15
  17. package/es/Card/Card.js +21 -10
  18. package/es/CheckBox/CheckBox.js +5 -3
  19. package/es/CheckBox/CheckBox.module.css +15 -15
  20. package/es/DateTime/CalendarView.js +33 -20
  21. package/es/DateTime/DateTime.js +78 -11
  22. package/es/DateTime/DateTime.module.css +39 -39
  23. package/es/DateTime/DateTimePopupFooter.js +4 -2
  24. package/es/DateTime/DateTimePopupHeader.js +8 -2
  25. package/es/DateTime/DateWidget.js +100 -35
  26. package/es/DateTime/DateWidget.module.css +5 -5
  27. package/es/DateTime/DaysRow.js +4 -2
  28. package/es/DateTime/Time.js +10 -2
  29. package/es/DateTime/YearView.js +28 -4
  30. package/es/DateTime/YearView.module.css +15 -15
  31. package/es/DateTime/__tests__/CalendarView.spec.js +1 -0
  32. package/es/DateTime/__tests__/DateTime.spec.js +1 -0
  33. package/es/DateTime/__tests__/DateWidget.spec.js +2 -3
  34. package/es/DateTime/common.js +3 -0
  35. package/es/DateTime/constants.js +1 -0
  36. package/es/DateTime/dateFormatUtils/dateFormat.js +63 -30
  37. package/es/DateTime/dateFormatUtils/dateFormats.js +0 -1
  38. package/es/DateTime/dateFormatUtils/dayChange.js +13 -4
  39. package/es/DateTime/dateFormatUtils/index.js +32 -2
  40. package/es/DateTime/dateFormatUtils/monthChange.js +8 -0
  41. package/es/DateTime/dateFormatUtils/timeChange.js +22 -6
  42. package/es/DateTime/dateFormatUtils/yearChange.js +11 -2
  43. package/es/DateTime/objectUtils.js +14 -20
  44. package/es/DateTime/props/defaultProps.js +2 -1
  45. package/es/DateTime/typeChecker.js +3 -0
  46. package/es/DateTime/validator.js +58 -6
  47. package/es/DropBox/DropBox.js +9 -5
  48. package/es/DropBox/DropBoxElement/DropBoxElement.js +18 -6
  49. package/es/DropBox/DropBoxElement/css/DropBoxElement.module.css +85 -79
  50. package/es/DropBox/DropBoxElement/css/cssJSLogic.js +6 -4
  51. package/es/DropBox/DropBoxElement/props/propTypes.js +1 -1
  52. package/es/DropBox/DropBoxElement/useDropboxPosCalc.js +3 -0
  53. package/es/DropBox/__tests__/DropBox.spec.js +2 -2
  54. package/es/DropBox/css/DropBox.module.css +6 -6
  55. package/es/DropBox/props/defaultProps.js +1 -2
  56. package/es/DropBox/props/propTypes.js +1 -2
  57. package/es/DropDown/DropDown.js +10 -5
  58. package/es/DropDown/DropDown.module.css +2 -2
  59. package/es/DropDown/DropDownHeading.js +5 -5
  60. package/es/DropDown/DropDownHeading.module.css +6 -6
  61. package/es/DropDown/DropDownItem.js +8 -1
  62. package/es/DropDown/DropDownItem.module.css +12 -12
  63. package/es/DropDown/DropDownSearch.js +4 -0
  64. package/es/DropDown/DropDownSearch.module.css +3 -3
  65. package/es/DropDown/DropDownSeparator.js +1 -0
  66. package/es/DropDown/DropDownSeparator.module.css +2 -2
  67. package/es/DropDown/__tests__/DropDown.spec.js +1 -2
  68. package/es/Heading/Heading.js +3 -3
  69. package/es/Heading/Heading.module.css +2 -2
  70. package/es/Label/Label.js +10 -5
  71. package/es/Label/Label.module.css +5 -5
  72. package/es/Label/props/propTypes.js +4 -1
  73. package/es/Layout/Box.js +17 -3
  74. package/es/Layout/Container.js +16 -4
  75. package/es/Layout/Layout.module.css +15 -15
  76. package/es/Layout/index.js +1 -2
  77. package/es/Layout/props/defaultProps.js +2 -0
  78. package/es/Layout/props/propTypes.js +2 -0
  79. package/es/Layout/utils.js +5 -1
  80. package/es/ListItem/ListContainer.js +8 -3
  81. package/es/ListItem/ListItem.js +9 -3
  82. package/es/ListItem/ListItem.module.css +38 -38
  83. package/es/ListItem/ListItemWithAvatar.js +9 -3
  84. package/es/ListItem/ListItemWithCheckBox.js +7 -2
  85. package/es/ListItem/ListItemWithIcon.js +8 -3
  86. package/es/ListItem/ListItemWithRadio.js +7 -3
  87. package/es/Modal/Modal.js +28 -11
  88. package/es/MultiSelect/AdvancedGroupMultiSelect.js +90 -13
  89. package/es/MultiSelect/AdvancedMultiSelect.js +33 -9
  90. package/es/MultiSelect/EmptyState.js +6 -0
  91. package/es/MultiSelect/MultiSelect.js +100 -32
  92. package/es/MultiSelect/MultiSelect.module.css +31 -31
  93. package/es/MultiSelect/MultiSelectHeader.js +3 -0
  94. package/es/MultiSelect/MultiSelectWithAvatar.js +13 -6
  95. package/es/MultiSelect/SelectedOptions.js +6 -3
  96. package/es/MultiSelect/SelectedOptions.module.css +5 -5
  97. package/es/MultiSelect/Suggestions.js +7 -3
  98. package/es/MultiSelect/__tests__/MultiSelect.spec.js +4 -6
  99. package/es/MultiSelect/props/propTypes.js +2 -0
  100. package/es/PopOver/PopOver.js +18 -2
  101. package/es/PopOver/__tests__/PopOver.spec.js +2 -1
  102. package/es/Popup/Popup.js +77 -27
  103. package/es/Popup/__tests__/Popup.spec.js +17 -5
  104. package/es/Popup/viewPort.js +16 -4
  105. package/es/Provider/IdProvider.js +10 -5
  106. package/es/Provider/LibraryContext.js +6 -4
  107. package/es/Provider/NumberGenerator/NumberGenerator.js +21 -7
  108. package/es/Provider/ZindexProvider.js +9 -2
  109. package/es/Radio/Radio.js +4 -2
  110. package/es/Radio/Radio.module.css +9 -9
  111. package/es/Responsive/CustomResponsive.js +30 -18
  112. package/es/Responsive/RefWrapper.js +6 -7
  113. package/es/Responsive/ResizeComponent.js +37 -39
  114. package/es/Responsive/ResizeObserver.js +26 -6
  115. package/es/Responsive/Responsive.js +34 -20
  116. package/es/Responsive/index.js +1 -3
  117. package/es/Responsive/sizeObservers.js +28 -7
  118. package/es/Responsive/utils/index.js +7 -5
  119. package/es/Responsive/utils/shallowCompare.js +7 -2
  120. package/es/Responsive/windowResizeObserver.js +7 -0
  121. package/es/ResponsiveDropBox/ResponsiveDropBox.js +4 -0
  122. package/es/ResponsiveDropBox/ResponsiveDropBox.module.css +2 -2
  123. package/es/Ribbon/Ribbon.js +4 -2
  124. package/es/Ribbon/Ribbon.module.css +46 -48
  125. package/es/RippleEffect/RippleEffect.js +1 -3
  126. package/es/Select/GroupSelect.js +59 -14
  127. package/es/Select/Select.js +81 -34
  128. package/es/Select/Select.module.css +23 -23
  129. package/es/Select/SelectWithAvatar.js +19 -4
  130. package/es/Select/SelectWithIcon.js +48 -6
  131. package/es/Select/__tests__/Select.spec.js +6 -8
  132. package/es/Select/props/propTypes.js +1 -0
  133. package/es/Stencils/Stencils.js +3 -3
  134. package/es/Stencils/Stencils.module.css +11 -11
  135. package/es/Switch/Switch.js +6 -3
  136. package/es/Switch/Switch.module.css +23 -23
  137. package/es/Tab/Tab.js +4 -4
  138. package/es/Tab/Tab.module.css +14 -14
  139. package/es/Tab/TabContent.js +1 -0
  140. package/es/Tab/TabContentWrapper.js +2 -0
  141. package/es/Tab/TabWrapper.js +5 -2
  142. package/es/Tab/Tabs.js +63 -28
  143. package/es/Tab/Tabs.module.css +24 -42
  144. package/es/Tab/__tests__/Tab.spec.js +1 -3
  145. package/es/Tab/__tests__/TabWrapper.spec.js +1 -0
  146. package/es/Tag/Tag.js +7 -3
  147. package/es/Tag/Tag.module.css +25 -25
  148. package/es/TextBox/TextBox.js +16 -3
  149. package/es/TextBox/TextBox.module.css +9 -9
  150. package/es/TextBox/__tests__/TextBox.spec.js +1 -4
  151. package/es/TextBoxIcon/TextBoxIcon.js +9 -2
  152. package/es/TextBoxIcon/TextBoxIcon.module.css +7 -7
  153. package/es/TextBoxIcon/__tests__/TextBoxIcon.spec.js +2 -7
  154. package/es/Textarea/Textarea.js +13 -3
  155. package/es/Textarea/Textarea.module.css +21 -21
  156. package/es/Textarea/__tests__/Textarea.spec.js +2 -2
  157. package/es/Tooltip/Tooltip.js +60 -15
  158. package/es/Tooltip/Tooltip.module.css +5 -5
  159. package/es/Tooltip/__tests__/Tooltip.spec.js +5 -0
  160. package/es/VelocityAnimation/VelocityAnimation/VelocityAnimation.js +3 -2
  161. package/es/VelocityAnimation/VelocityAnimationGroup/VelocityAnimationGroup.js +7 -5
  162. package/es/common/animation.module.css +8 -8
  163. package/es/common/avatarsizes.module.css +16 -16
  164. package/es/common/basicReset.module.css +3 -3
  165. package/es/common/common.module.css +24 -24
  166. package/es/common/customscroll.module.css +2 -2
  167. package/es/deprecated/AdvancedMultiSelect.module.css +18 -18
  168. package/es/deprecated/PortalLayer/PortalLayer.js +25 -20
  169. package/es/semantic/Button/Button.js +4 -2
  170. package/es/semantic/Button/semanticButton.module.css +1 -1
  171. package/es/utils/Common.js +58 -9
  172. package/es/utils/ContextOptimizer.js +4 -5
  173. package/es/utils/__tests__/debounce.spec.js +2 -2
  174. package/es/utils/constructFullName.js +2 -0
  175. package/es/utils/css/compileClassNames.js +5 -0
  176. package/es/utils/css/mergeStyle.js +7 -6
  177. package/es/utils/css/utils.js +1 -0
  178. package/es/utils/datetime/GMTZones.js +48 -0
  179. package/es/utils/datetime/common.js +31 -7
  180. package/es/utils/debounce.js +5 -1
  181. package/es/utils/dropDownUtils.js +68 -11
  182. package/es/utils/getInitial.js +4 -0
  183. package/es/utils/shallowEqual.js +6 -0
  184. package/lib/Accordion/Accordion.js +43 -18
  185. package/lib/Accordion/AccordionItem.js +41 -18
  186. package/lib/Accordion/__tests__/Accordion.spec.js +3 -0
  187. package/lib/Accordion/index.js +3 -0
  188. package/lib/Accordion/props/propTypes.js +3 -0
  189. package/lib/Animation/Animation.js +38 -18
  190. package/lib/Animation/__tests__/Animation.spec.js +11 -7
  191. package/lib/Animation/props/propTypes.js +3 -0
  192. package/lib/AppContainer/AppContainer.js +66 -26
  193. package/lib/AppContainer/AppContainer.module.css +2 -2
  194. package/lib/AppContainer/props/defaultProps.js +2 -1
  195. package/lib/AppContainer/props/propTypes.js +4 -0
  196. package/lib/Avatar/Avatar.js +81 -38
  197. package/lib/Avatar/Avatar.module.css +18 -18
  198. package/lib/Avatar/__tests__/Avatar.spec.js +44 -0
  199. package/lib/Avatar/props/propTypes.js +3 -0
  200. package/lib/AvatarTeam/AvatarTeam.js +53 -30
  201. package/lib/AvatarTeam/AvatarTeam.module.css +35 -35
  202. package/lib/AvatarTeam/__tests__/AvatarTeam.spec.js +13 -0
  203. package/lib/AvatarTeam/props/propTypes.js +3 -0
  204. package/lib/Button/Button.js +32 -20
  205. package/lib/Button/css/Button.module.css +70 -70
  206. package/lib/Button/css/cssJSLogic.js +18 -17
  207. package/lib/Button/index.js +3 -0
  208. package/lib/Button/props/defaultProps.js +2 -0
  209. package/lib/Button/props/propTypes.js +3 -0
  210. package/lib/Buttongroup/Buttongroup.js +33 -12
  211. package/lib/Buttongroup/Buttongroup.module.css +14 -15
  212. package/lib/Buttongroup/__test__/Buttongroup.spec.js +10 -0
  213. package/lib/Buttongroup/props/propTypes.js +3 -0
  214. package/lib/Card/Card.js +102 -46
  215. package/lib/Card/__tests__/Card.spec.js +10 -1
  216. package/lib/Card/index.js +4 -0
  217. package/lib/Card/props/propTypes.js +3 -0
  218. package/lib/CheckBox/CheckBox.js +71 -47
  219. package/lib/CheckBox/CheckBox.module.css +15 -15
  220. package/lib/CheckBox/__tests__/CheckBox.spec.js +3 -0
  221. package/lib/CheckBox/props/propTypes.js +3 -0
  222. package/lib/DateTime/CalendarView.js +83 -42
  223. package/lib/DateTime/DateTime.js +249 -159
  224. package/lib/DateTime/DateTime.module.css +39 -39
  225. package/lib/DateTime/DateTimePopupFooter.js +31 -8
  226. package/lib/DateTime/DateTimePopupHeader.js +48 -17
  227. package/lib/DateTime/DateWidget.js +354 -250
  228. package/lib/DateTime/DateWidget.module.css +5 -5
  229. package/lib/DateTime/DaysRow.js +27 -5
  230. package/lib/DateTime/Time.js +73 -32
  231. package/lib/DateTime/YearView.js +77 -28
  232. package/lib/DateTime/YearView.module.css +15 -15
  233. package/lib/DateTime/__tests__/CalendarView.spec.js +13 -5
  234. package/lib/DateTime/__tests__/DateTime.spec.js +51 -37
  235. package/lib/DateTime/__tests__/DateWidget.spec.js +10 -8
  236. package/lib/DateTime/common.js +6 -0
  237. package/lib/DateTime/constants.js +1 -0
  238. package/lib/DateTime/dateFormatUtils/dateFormat.js +184 -122
  239. package/lib/DateTime/dateFormatUtils/dateFormats.js +0 -1
  240. package/lib/DateTime/dateFormatUtils/dayChange.js +14 -7
  241. package/lib/DateTime/dateFormatUtils/index.js +74 -16
  242. package/lib/DateTime/dateFormatUtils/monthChange.js +19 -9
  243. package/lib/DateTime/dateFormatUtils/timeChange.js +54 -22
  244. package/lib/DateTime/dateFormatUtils/yearChange.js +22 -11
  245. package/lib/DateTime/index.js +2 -0
  246. package/lib/DateTime/objectUtils.js +24 -20
  247. package/lib/DateTime/props/defaultProps.js +2 -1
  248. package/lib/DateTime/props/propTypes.js +11 -1
  249. package/lib/DateTime/typeChecker.js +4 -0
  250. package/lib/DateTime/validator.js +73 -10
  251. package/lib/DropBox/DropBox.js +36 -12
  252. package/lib/DropBox/DropBoxElement/DropBoxElement.js +68 -42
  253. package/lib/DropBox/DropBoxElement/css/DropBoxElement.module.css +85 -79
  254. package/lib/DropBox/DropBoxElement/css/cssJSLogic.js +43 -34
  255. package/lib/DropBox/DropBoxElement/props/propTypes.js +4 -1
  256. package/lib/DropBox/DropBoxElement/useDropboxPosCalc.js +14 -9
  257. package/lib/DropBox/__tests__/DropBox.spec.js +8 -4
  258. package/lib/DropBox/css/DropBox.module.css +6 -6
  259. package/lib/DropBox/css/cssJSLogic.js +3 -1
  260. package/lib/DropBox/props/defaultProps.js +8 -4
  261. package/lib/DropBox/props/propTypes.js +10 -4
  262. package/lib/DropDown/DropDown.js +54 -9
  263. package/lib/DropDown/DropDown.module.css +2 -2
  264. package/lib/DropDown/DropDownHeading.js +40 -20
  265. package/lib/DropDown/DropDownHeading.module.css +6 -6
  266. package/lib/DropDown/DropDownItem.js +44 -21
  267. package/lib/DropDown/DropDownItem.module.css +12 -12
  268. package/lib/DropDown/DropDownSearch.js +40 -17
  269. package/lib/DropDown/DropDownSearch.module.css +3 -3
  270. package/lib/DropDown/DropDownSeparator.js +24 -4
  271. package/lib/DropDown/DropDownSeparator.module.css +2 -2
  272. package/lib/DropDown/__tests__/DropDown.spec.js +15 -9
  273. package/lib/DropDown/__tests__/DropDownItem.spec.js +9 -4
  274. package/lib/DropDown/__tests__/DropDownSearch.spec.js +3 -0
  275. package/lib/DropDown/index.js +9 -0
  276. package/lib/DropDown/props/propTypes.js +6 -4
  277. package/lib/Heading/Heading.js +39 -16
  278. package/lib/Heading/Heading.module.css +2 -2
  279. package/lib/Heading/props/propTypes.js +3 -0
  280. package/lib/Label/Label.js +45 -20
  281. package/lib/Label/Label.module.css +5 -5
  282. package/lib/Label/__tests__/Label.spec.js +14 -1
  283. package/lib/Label/props/propTypes.js +7 -1
  284. package/lib/Layout/Box.js +39 -15
  285. package/lib/Layout/Container.js +37 -14
  286. package/lib/Layout/Layout.module.css +15 -15
  287. package/lib/Layout/__tests__/Box.spec.js +65 -49
  288. package/lib/Layout/__tests__/Container.spec.js +67 -50
  289. package/lib/Layout/index.js +3 -0
  290. package/lib/Layout/props/defaultProps.js +2 -0
  291. package/lib/Layout/props/propTypes.js +5 -0
  292. package/lib/Layout/utils.js +15 -1
  293. package/lib/ListItem/ListContainer.js +48 -27
  294. package/lib/ListItem/ListItem.js +69 -45
  295. package/lib/ListItem/ListItem.module.css +38 -38
  296. package/lib/ListItem/ListItemWithAvatar.js +75 -48
  297. package/lib/ListItem/ListItemWithCheckBox.js +64 -39
  298. package/lib/ListItem/ListItemWithIcon.js +68 -44
  299. package/lib/ListItem/ListItemWithRadio.js +65 -41
  300. package/lib/ListItem/index.js +7 -0
  301. package/lib/ListItem/props/propTypes.js +6 -4
  302. package/lib/Modal/Modal.js +45 -10
  303. package/lib/Modal/props/propTypes.js +3 -0
  304. package/lib/MultiSelect/AdvancedGroupMultiSelect.js +295 -166
  305. package/lib/MultiSelect/AdvancedMultiSelect.js +203 -125
  306. package/lib/MultiSelect/EmptyState.js +49 -24
  307. package/lib/MultiSelect/MultiSelect.js +324 -206
  308. package/lib/MultiSelect/MultiSelect.module.css +31 -31
  309. package/lib/MultiSelect/MultiSelectHeader.js +30 -8
  310. package/lib/MultiSelect/MultiSelectWithAvatar.js +106 -63
  311. package/lib/MultiSelect/SelectedOptions.js +43 -17
  312. package/lib/MultiSelect/SelectedOptions.module.css +5 -5
  313. package/lib/MultiSelect/Suggestions.js +64 -32
  314. package/lib/MultiSelect/__tests__/MultiSelect.spec.js +86 -75
  315. package/lib/MultiSelect/index.js +5 -0
  316. package/lib/MultiSelect/props/defaultProps.js +2 -0
  317. package/lib/MultiSelect/props/propTypes.js +5 -0
  318. package/lib/PopOver/PopOver.js +95 -49
  319. package/lib/PopOver/__tests__/PopOver.spec.js +4 -1
  320. package/lib/PopOver/index.js +4 -0
  321. package/lib/PopOver/props/propTypes.js +3 -0
  322. package/lib/Popup/Popup.js +158 -84
  323. package/lib/Popup/__tests__/Popup.spec.js +43 -8
  324. package/lib/Popup/viewPort.js +28 -14
  325. package/lib/Provider/AvatarSize.js +4 -0
  326. package/lib/Provider/Config.js +2 -0
  327. package/lib/Provider/CssProvider.js +4 -0
  328. package/lib/Provider/IdProvider.js +17 -6
  329. package/lib/Provider/LibraryContext.js +35 -15
  330. package/lib/Provider/LibraryContextInit.js +4 -0
  331. package/lib/Provider/NumberGenerator/NumberGenerator.js +44 -15
  332. package/lib/Provider/ZindexProvider.js +15 -3
  333. package/lib/Provider/index.js +5 -0
  334. package/lib/Radio/Radio.js +61 -38
  335. package/lib/Radio/Radio.module.css +9 -9
  336. package/lib/Radio/__tests__/Radiospec.js +9 -5
  337. package/lib/Radio/props/propTypes.js +3 -0
  338. package/lib/Responsive/CustomResponsive.js +73 -29
  339. package/lib/Responsive/RefWrapper.js +17 -11
  340. package/lib/Responsive/ResizeComponent.js +63 -49
  341. package/lib/Responsive/ResizeObserver.js +24 -10
  342. package/lib/Responsive/Responsive.js +80 -30
  343. package/lib/Responsive/index.js +4 -0
  344. package/lib/Responsive/props/propTypes.js +3 -0
  345. package/lib/Responsive/sizeObservers.js +53 -17
  346. package/lib/Responsive/utils/index.js +11 -3
  347. package/lib/Responsive/utils/shallowCompare.js +11 -2
  348. package/lib/Responsive/windowResizeObserver.js +8 -0
  349. package/lib/ResponsiveDropBox/ResponsiveDropBox.js +45 -17
  350. package/lib/ResponsiveDropBox/ResponsiveDropBox.module.css +2 -2
  351. package/lib/ResponsiveDropBox/props/propTypes.js +3 -0
  352. package/lib/Ribbon/Ribbon.js +34 -13
  353. package/lib/Ribbon/Ribbon.module.css +46 -48
  354. package/lib/Ribbon/__tests__/Ribbon.spec.js +22 -0
  355. package/lib/Ribbon/props/propTypes.js +3 -0
  356. package/lib/RippleEffect/RippleEffect.js +18 -10
  357. package/lib/RippleEffect/props/propTypes.js +3 -0
  358. package/lib/Select/GroupSelect.js +230 -130
  359. package/lib/Select/Select.js +292 -210
  360. package/lib/Select/Select.module.css +23 -23
  361. package/lib/Select/SelectWithAvatar.js +104 -56
  362. package/lib/Select/SelectWithIcon.js +134 -77
  363. package/lib/Select/__tests__/Select.spec.js +133 -91
  364. package/lib/Select/index.js +5 -0
  365. package/lib/Select/props/defaultProps.js +5 -4
  366. package/lib/Select/props/propTypes.js +4 -0
  367. package/lib/Stencils/Stencils.js +29 -10
  368. package/lib/Stencils/Stencils.module.css +11 -11
  369. package/lib/Stencils/__tests__/Stencils.spec.js +12 -0
  370. package/lib/Stencils/props/propTypes.js +3 -0
  371. package/lib/Switch/Switch.js +58 -34
  372. package/lib/Switch/Switch.module.css +23 -23
  373. package/lib/Switch/props/propTypes.js +3 -0
  374. package/lib/Tab/Tab.js +40 -27
  375. package/lib/Tab/Tab.module.css +14 -14
  376. package/lib/Tab/TabContent.js +12 -5
  377. package/lib/Tab/TabContentWrapper.js +13 -6
  378. package/lib/Tab/TabWrapper.js +37 -19
  379. package/lib/Tab/Tabs.js +191 -121
  380. package/lib/Tab/Tabs.module.css +24 -42
  381. package/lib/Tab/__tests__/Tab.spec.js +67 -58
  382. package/lib/Tab/__tests__/TabContent.spec.js +10 -6
  383. package/lib/Tab/__tests__/TabContentWrapper.spec.js +28 -20
  384. package/lib/Tab/__tests__/TabWrapper.spec.js +12 -0
  385. package/lib/Tab/__tests__/Tabs.spec.js +53 -39
  386. package/lib/Tab/index.js +6 -0
  387. package/lib/Tab/props/propTypes.js +3 -0
  388. package/lib/Tag/Tag.js +73 -43
  389. package/lib/Tag/Tag.module.css +25 -25
  390. package/lib/Tag/__tests__/Tag.spec.js +14 -8
  391. package/lib/Tag/props/propTypes.js +3 -0
  392. package/lib/TextBox/TextBox.js +86 -59
  393. package/lib/TextBox/TextBox.module.css +9 -9
  394. package/lib/TextBox/__tests__/TextBox.spec.js +14 -4
  395. package/lib/TextBox/props/propTypes.js +6 -4
  396. package/lib/TextBoxIcon/TextBoxIcon.js +79 -52
  397. package/lib/TextBoxIcon/TextBoxIcon.module.css +7 -7
  398. package/lib/TextBoxIcon/__tests__/TextBoxIcon.spec.js +14 -5
  399. package/lib/TextBoxIcon/props/propTypes.js +3 -0
  400. package/lib/Textarea/Textarea.js +55 -29
  401. package/lib/Textarea/Textarea.module.css +21 -21
  402. package/lib/Textarea/__tests__/Textarea.spec.js +14 -2
  403. package/lib/Textarea/props/propTypes.js +3 -0
  404. package/lib/Tooltip/Tooltip.js +96 -32
  405. package/lib/Tooltip/Tooltip.module.css +5 -5
  406. package/lib/Tooltip/__tests__/Tooltip.spec.js +24 -3
  407. package/lib/Tooltip/props/propTypes.js +3 -0
  408. package/lib/VelocityAnimation/VelocityAnimation/VelocityAnimation.js +40 -16
  409. package/lib/VelocityAnimation/VelocityAnimation/props/propTypes.js +3 -0
  410. package/lib/VelocityAnimation/VelocityAnimationGroup/VelocityAnimationGroup.js +53 -25
  411. package/lib/VelocityAnimation/VelocityAnimationGroup/props/propTypes.js +3 -0
  412. package/lib/VelocityAnimation/index.js +3 -0
  413. package/lib/common/animation.module.css +8 -8
  414. package/lib/common/avatarsizes.module.css +16 -16
  415. package/lib/common/basicReset.module.css +3 -3
  416. package/lib/common/common.module.css +24 -24
  417. package/lib/common/customscroll.module.css +2 -2
  418. package/lib/css.js +40 -0
  419. package/lib/deprecated/AdvancedMultiSelect.module.css +18 -18
  420. package/lib/deprecated/PortalLayer/PortalLayer.js +46 -23
  421. package/lib/deprecated/PortalLayer/props/propTypes.js +3 -0
  422. package/lib/index.js +57 -0
  423. package/lib/semantic/Button/Button.js +43 -22
  424. package/lib/semantic/Button/props/propTypes.js +3 -0
  425. package/lib/semantic/Button/semanticButton.module.css +1 -1
  426. package/lib/semantic/index.js +2 -0
  427. package/lib/utils/Common.js +117 -19
  428. package/lib/utils/ContextOptimizer.js +16 -10
  429. package/lib/utils/__tests__/constructFullName.spec.js +1 -0
  430. package/lib/utils/__tests__/debounce.spec.js +3 -2
  431. package/lib/utils/__tests__/getInitial.spec.js +1 -0
  432. package/lib/utils/constructFullName.js +13 -4
  433. package/lib/utils/css/compileClassNames.js +6 -0
  434. package/lib/utils/css/mergeStyle.js +10 -7
  435. package/lib/utils/css/utils.js +8 -0
  436. package/lib/utils/datetime/GMTZones.js +55 -0
  437. package/lib/utils/datetime/common.js +52 -7
  438. package/lib/utils/debounce.js +6 -1
  439. package/lib/utils/dropDownUtils.js +175 -59
  440. package/lib/utils/dummyFunction.js +2 -0
  441. package/lib/utils/getHTMLFontSize.js +1 -0
  442. package/lib/utils/getInitial.js +6 -0
  443. package/lib/utils/index.js +4 -0
  444. package/lib/utils/scrollTo.js +2 -0
  445. package/lib/utils/shallowEqual.js +8 -0
  446. package/package.json +15 -24
package/es/Tag/Tag.js CHANGED
@@ -7,7 +7,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,
@@ -96,6 +99,7 @@ export default class Tag extends PureComponent {
96
99
  return /*#__PURE__*/React.createElement("div", {
97
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}`,
98
101
  "data-id": active ? `${dataId}_TagSelected` : `${dataId}_Tag`,
102
+ "data-test-id": active ? `${dataId}_TagSelected` : `${dataId}_Tag`,
99
103
  onClick: this.handleSelect,
100
104
  ref: this.getRef,
101
105
  "data-title": tooltip ? tooltip : text,
@@ -139,10 +143,10 @@ export default class Tag extends PureComponent {
139
143
  size: "8"
140
144
  }))));
141
145
  }
146
+
142
147
  }
143
148
  Tag.defaultProps = defaultProps;
144
- Tag.propTypes = propTypes;
145
- // if (__DOCS__) {
149
+ Tag.propTypes = propTypes; // if (__DOCS__) {
146
150
  // Tag.docs = {
147
151
  // componentGroup: 'Molecule',
148
152
  // folderName: 'Style Guide'
@@ -1,7 +1,7 @@
1
1
  .varClass {
2
2
  /* tag default variables */
3
3
  --tag_text_color: var(--zdt_tag_default_text);
4
- --tag_font_size: 13px;
4
+ --tag_font_size: var(--zd_font_size13);
5
5
  --tag_letter_spacing: normal;
6
6
  --tag_bg_color: var(--zdt_tag_default_bg);
7
7
  --tag_border_radius: 25px;
@@ -9,8 +9,8 @@
9
9
  --tag_border_width: 0;
10
10
  --tag_border_style: dashed;
11
11
  --tag_border_color: var(--zdt_tag_default_border);
12
- --tag_padding: 2px;
13
- --tag_inner_text_padding: 0 6px;
12
+ --tag_padding: var(--zd_size2);
13
+ --tag_inner_text_padding: 0 var(--zd_size6);
14
14
  --tag_cursor: auto;
15
15
 
16
16
  /* tag close icon default variables */
@@ -22,13 +22,13 @@
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 7px 0 6px
26
- /*rtl: 0 6px 0 7px*/;
27
- --tag_icon_margin: 0 0 0 5px /*rtl: 0 5px 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
- --tag_closeicon_padding: 0 6px 0 7px;
31
- --tag_icon_margin: 0 5px 0 0;
30
+ --tag_closeicon_padding: 0 var(--zd_size6) 0 var(--zd_size7);
31
+ --tag_icon_margin: 0 var(--zd_size5) 0 0;
32
32
  }
33
33
  .container {
34
34
  composes: varClass;
@@ -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);
@@ -76,35 +76,35 @@
76
76
  padding: var(--tag_inner_text_padding);
77
77
  }
78
78
  .small {
79
- --tag_height: 20px;
80
- --tag_padding: 1px;
81
- --tag_inner_text_padding: 0 7px;
79
+ --tag_height: var(--zd_size20);
80
+ --tag_padding: var(--zd_size1);
81
+ --tag_inner_text_padding: 0 var(--zd_size7);
82
82
  }
83
83
  [dir=ltr] .small .avatar {
84
84
  transform: scale(0.8) translateX(-2px);
85
- margin-right: -8px;
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: -8px;
89
+ margin-left: calc( var(--zd_size8) * -1 ) ;
90
90
  }
91
91
  .smalltext {
92
- --tag_font_size: 12px;
92
+ --tag_font_size: var(--zd_font_size12);
93
93
  }
94
94
  .activesmallEffect {
95
- --tag_inner_text_padding: 0 25px 0 7px;
95
+ --tag_inner_text_padding: 0 var(--zd_size25) 0 var(--zd_size7);
96
96
  }
97
97
 
98
98
  .medium {
99
- --tag_height: 26px;
100
- --tag_padding: 2px;
101
- --tag_inner_text_padding: 0 6px;
99
+ --tag_height: var(--zd_size26);
100
+ --tag_padding: var(--zd_size2);
101
+ --tag_inner_text_padding: 0 var(--zd_size6);
102
102
  }
103
103
  .mediumtext {
104
- --tag_font_size: 13px;
104
+ --tag_font_size: var(--zd_font_size13);
105
105
  }
106
106
  .activemediumEffect {
107
- --tag_inner_text_padding: 0 25px 0 6px;
107
+ --tag_inner_text_padding: 0 var(--zd_size25) 0 var(--zd_size6);
108
108
  }
109
109
 
110
110
  .selected .close {
@@ -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*/;
@@ -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,
@@ -106,18 +114,23 @@ export default class Textbox extends React.PureComponent {
106
114
  ariaMultiselectable
107
115
  } = a11y;
108
116
  let options = {};
117
+
109
118
  if (isReadOnly) {
110
119
  options.readOnly = true;
111
120
  }
121
+
112
122
  if (isDisabled) {
113
123
  options.disabled = true;
114
124
  }
125
+
115
126
  if (autofocus) {
116
127
  options.autoFocus = true;
117
128
  }
129
+
118
130
  if (!autoComplete) {
119
131
  options.autoComplete = 'off';
120
132
  }
133
+
121
134
  let classList = needAppearance ? `${style.container} ${style[size]} ${style[variant]} ${needBorder ? style.border : ''} ${isDisabled && !needEffect || isReadOnly && !needEffect ? '' : style.effect} ${isFocus ? style.focus : ''}` : `${style.basic}`;
122
135
  value = value === null || value === undefined ? '' : value;
123
136
  return /*#__PURE__*/React.createElement("input", _extends({
@@ -137,6 +150,7 @@ export default class Textbox extends React.PureComponent {
137
150
  "aria-multiselectable": ariaMultiselectable,
138
151
  className: `${isReadOnly && needReadOnlyStyle ? style.readonly : ''} ${isClickable ? style.pointer : ''} ${classList} ${style[`borderColor_${borderColor}`]} ${customClass ? customClass : ''}`,
139
152
  "data-id": `${dataId}`,
153
+ "data-test-id": `${dataId}`,
140
154
  "data-selector-id": dataSelectorId,
141
155
  id: htmlId || id,
142
156
  maxLength: maxLength,
@@ -155,11 +169,10 @@ export default class Textbox extends React.PureComponent {
155
169
  onMouseDown: onMouseDown
156
170
  }, options, customProps));
157
171
  }
172
+
158
173
  }
159
174
  Textbox.defaultProps = defaultProps;
160
- Textbox.propTypes = propTypes;
161
-
162
- // if (__DOCS__) {
175
+ Textbox.propTypes = propTypes; // if (__DOCS__) {
163
176
  // Textbox.docs = {
164
177
  // componentGroup: 'Form Elements',
165
178
  // folderName: 'Style Guide',
@@ -5,9 +5,9 @@
5
5
  --textbox_border_width: 0;
6
6
  --textbox_border_style: solid;
7
7
  --textbox_border_color: var(--zdt_textbox_default_border);
8
- --textbox_font_size: 14px;
8
+ --textbox_font_size: var(--zd_font_size14);
9
9
  --textbox_width: 100%;
10
- --textbox_height: 35px;
10
+ --textbox_height: var(--zd_size35);
11
11
  --textbox_border_radius: none;
12
12
  --textbox_font_family: var(--zd_regular);
13
13
  /* Variable:Ignore */
@@ -111,24 +111,24 @@
111
111
  /* Size */
112
112
  .xmedium,
113
113
  .medium {
114
- --textbox_font_size: 14px;
114
+ --textbox_font_size: var(--zd_font_size14);
115
115
  }
116
116
  .xmedium {
117
- --textbox_height: 28px;
117
+ --textbox_height: var(--zd_size28);
118
118
  --textbox_line_height: 28px;
119
119
  }
120
120
  .medium {
121
- --textbox_height: 35px;
121
+ --textbox_height: var(--zd_size35);
122
122
  --textbox_line_height: 35px;
123
123
  }
124
124
  .small {
125
- --textbox_font_size: 12px;
126
- --textbox_height: 28px;
125
+ --textbox_font_size: var(--zd_font_size12);
126
+ --textbox_height: var(--zd_size28);
127
127
  --textbox_line_height: 28px;
128
128
  }
129
129
  .xsmall {
130
- --textbox_font_size: 13px;
131
- --textbox_height: 25px;
130
+ --textbox_font_size: var(--zd_font_size13);
131
+ --textbox_height: var(--zd_size25);
132
132
  --textbox_line_height: 25px;
133
133
  }
134
134
  .default,
@@ -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 />
@@ -1,4 +1,5 @@
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';
@@ -20,6 +21,7 @@ export default class TextBoxIcon extends React.Component {
20
21
  this.handleRef = this.handleRef.bind(this);
21
22
  this.handleClear = this.handleClear.bind(this);
22
23
  }
24
+
23
25
  handleRef(ele) {
24
26
  let {
25
27
  inputRef
@@ -27,6 +29,7 @@ export default class TextBoxIcon extends React.Component {
27
29
  this.inputEle = ele;
28
30
  inputRef && inputRef(ele);
29
31
  }
32
+
30
33
  handleClear() {
31
34
  let {
32
35
  onClear
@@ -36,12 +39,14 @@ export default class TextBoxIcon extends React.Component {
36
39
  preventScroll: true
37
40
  });
38
41
  }
42
+
39
43
  handleFocus(e) {
40
44
  const {
41
45
  onFocus,
42
46
  needReadOnlyStyle,
43
47
  isReadOnly
44
48
  } = this.props;
49
+
45
50
  if (!needReadOnlyStyle || !isReadOnly && needReadOnlyStyle) {
46
51
  this.setState({
47
52
  isActive: true
@@ -49,6 +54,7 @@ export default class TextBoxIcon extends React.Component {
49
54
  onFocus && onFocus(e);
50
55
  }
51
56
  }
57
+
52
58
  handleBlur(e) {
53
59
  const {
54
60
  onBlur
@@ -58,6 +64,7 @@ export default class TextBoxIcon extends React.Component {
58
64
  });
59
65
  onBlur && onBlur(e);
60
66
  }
67
+
61
68
  render() {
62
69
  const {
63
70
  type,
@@ -169,10 +176,10 @@ export default class TextBoxIcon extends React.Component {
169
176
  className: `${style.line} ${style[`borderColor_${borderColor}`]} ${customTBoxLine}`
170
177
  }));
171
178
  }
179
+
172
180
  }
173
181
  TextBoxIcon.defaultProps = defaultProps;
174
- TextBoxIcon.propTypes = propTypes;
175
- // if (__DOCS__) {
182
+ TextBoxIcon.propTypes = propTypes; // if (__DOCS__) {
176
183
  // TextBoxIcon.docs = {
177
184
  // componentGroup: 'Form Elements',
178
185
  // folderName: 'Style Guide',
@@ -1,10 +1,10 @@
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 */
7
- --textboxicon_icon_margin: 0 5px;
7
+ --textboxicon_icon_margin: 0 var(--zd_size5);
8
8
  --textboxicon_icon_cursor: pointer;
9
9
  --textboxicon_icon_color: var(--zdt_textboxicon_default_icon);
10
10
  }
@@ -35,7 +35,7 @@
35
35
  }
36
36
  .line {
37
37
  position: absolute;
38
- bottom: 0;
38
+ bottom: 0 ;
39
39
  /* Variable:Ignore */
40
40
  min-height: 1px;
41
41
  transition: var(--zd_transition2);
@@ -43,12 +43,12 @@
43
43
  transform: perspective(1px);
44
44
  }
45
45
  [dir=ltr] .line {
46
- left: 0;
47
- right: 0;
46
+ left: 0 ;
47
+ right: 0 ;
48
48
  }
49
49
  [dir=rtl] .line {
50
- right: 0;
51
- left: 0;
50
+ right: 0 ;
51
+ left: 0 ;
52
52
  }
53
53
  .line, .borderColor_default {
54
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 />
@@ -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: ['resizeX', 'resizeY', 'noresize', 'resizeboth', 'xsmall', 'small', 'medium', 'large', 'xlarge', 'default', 'primary'] }] */
7
+
6
8
  import style from './Textarea.module.css';
7
9
  export default class Textarea extends React.Component {
8
10
  constructor(props) {
@@ -11,6 +13,7 @@ export default class Textarea extends React.Component {
11
13
  this.onKeyDown = this.onKeyDown.bind(this);
12
14
  this.onBlur = this.onBlur.bind(this);
13
15
  }
16
+
14
17
  onChange(e) {
15
18
  e && e.preventDefault();
16
19
  let {
@@ -18,6 +21,7 @@ export default class Textarea extends React.Component {
18
21
  } = this.props;
19
22
  onChange && onChange(e.target.value, e);
20
23
  }
24
+
21
25
  onBlur(e) {
22
26
  e && e.preventDefault();
23
27
  let {
@@ -25,12 +29,14 @@ export default class Textarea extends React.Component {
25
29
  } = this.props;
26
30
  onBlur && onBlur(e.target.value, e);
27
31
  }
32
+
28
33
  onKeyDown(e) {
29
34
  let {
30
35
  onKeyDown
31
36
  } = this.props;
32
37
  onKeyDown && onKeyDown(e);
33
38
  }
39
+
34
40
  render() {
35
41
  let {
36
42
  size,
@@ -67,15 +73,19 @@ export default class Textarea extends React.Component {
67
73
  none: 'noresize'
68
74
  };
69
75
  let options = {};
76
+
70
77
  if (isReadOnly) {
71
78
  options.readOnly = 'readOnly';
72
79
  }
80
+
73
81
  if (isDisabled) {
74
82
  options.disabled = 'disabled';
75
83
  }
84
+
76
85
  if (autoFocus) {
77
86
  options.autoFocus = true;
78
87
  }
88
+
79
89
  let classList = needAppearance ? `${style.container} ${style[size]} ${style[variant]} ${needBorder ? style.needBorder : style.noBorder} ${resize ? style[resizes[resize]] : style[resizes.none]} ${animated ? `${style[`${size}animated`]}` : ''} ${isDisabled && !needEffect || isReadOnly && !needEffect ? '' : style.effect}` : `${style.basic}`;
80
90
  return /*#__PURE__*/React.createElement("textarea", _extends({
81
91
  "aria-label": ariaLabel,
@@ -84,6 +94,7 @@ export default class Textarea extends React.Component {
84
94
  placeholder: placeHolder
85
95
  }, options, {
86
96
  "data-id": dataId,
97
+ "data-test-id": dataId,
87
98
  maxLength: maxLength,
88
99
  onChange: this.onChange,
89
100
  onKeyDown: this.onKeyDown,
@@ -95,11 +106,10 @@ export default class Textarea extends React.Component {
95
106
  "data-selector-id": dataSelectorId
96
107
  }));
97
108
  }
109
+
98
110
  }
99
111
  Textarea.defaultProps = defaultProps;
100
- Textarea.propTypes = propTypes;
101
-
102
- // if (__DOCS__) {
112
+ Textarea.propTypes = propTypes; // if (__DOCS__) {
103
113
  // Textarea.docs = {
104
114
  // componentGroup: 'Form Elements',
105
115
  // folderName: 'Style Guide',
@@ -4,10 +4,10 @@
4
4
  --textarea_border_color: none;
5
5
  --textarea_cursor: auto;
6
6
  --textarea_text_color: var(--zdt_textarea_default_text);
7
- --textarea_font_size: 14px;
7
+ --textarea_font_size: var(--zd_font_size14);
8
8
  --textarea_line_height: 22px;
9
- --textarea_padding: 2px 0;
10
- --textarea_height: 30px;
9
+ --textarea_padding: var(--zd_size2) 0;
10
+ --textarea_height: var(--zd_size30);
11
11
 
12
12
  /* textarea placeholder default variable */
13
13
  --textarea_placeholder_text_color: var(--zdt_textarea_placeholder_text);
@@ -62,9 +62,9 @@
62
62
  height var(--zd_transition2) linear 0s;
63
63
  -moz-transition: border var(--zd_transition2) linear 0s,
64
64
  height var(--zd_transition2) linear 0s;
65
- width: 100%;
66
- max-width: 100%;
67
- min-width: 100px;
65
+ width: 100% ;
66
+ max-width: 100% ;
67
+ min-width: var(--zd_size100) ;
68
68
  font-size: var(--textarea_font_size);
69
69
  line-height: var(--textarea_line_height);
70
70
  height: var(--textarea_height);
@@ -95,39 +95,39 @@
95
95
  vertical-align: middle;
96
96
  }
97
97
  .xsmall {
98
- --textarea_font_size: 14px;
99
- --textarea_padding: 4px 0 2px;
100
- --textarea_height: 28px;
98
+ --textarea_font_size: var(--zd_font_size14);
99
+ --textarea_padding: var(--zd_size4) 0 var(--zd_size2);
100
+ --textarea_height: var(--zd_size28);
101
101
  --textarea_line_height: 19px;
102
102
  }
103
103
  .xmedium {
104
- --textarea_font_size: 13px;
105
- --textarea_padding: 4px 0 2px;
106
- --textarea_height: 25px;
104
+ --textarea_font_size: var(--zd_font_size13);
105
+ --textarea_padding: var(--zd_size4) 0 var(--zd_size2);
106
+ --textarea_height: var(--zd_size25);
107
107
  --textarea_line_height: 17px;
108
108
  }
109
109
  .small {
110
- --textarea_height: 30px;
111
- --textarea_padding: 2px 0;
110
+ --textarea_height: var(--zd_size30);
111
+ --textarea_padding: var(--zd_size2) 0;
112
112
  }
113
113
  .smallanimated:focus,
114
114
  .xsmallanimated:focus,
115
115
  .xmediumanimated:focus {
116
- --textarea_height: 70px;
116
+ --textarea_height: var(--zd_size70);
117
117
  }
118
118
  .medium {
119
- --textarea_height: 88px;
120
- --textarea_padding: 2px;
119
+ --textarea_height: var(--zd_size88);
120
+ --textarea_padding: var(--zd_size2);
121
121
  }
122
122
  .large {
123
- --textarea_height: 45px;
124
- --textarea_padding: 2px;
123
+ --textarea_height: var(--zd_size45);
124
+ --textarea_padding: var(--zd_size2);
125
125
  }
126
126
  .largeanimated:focus {
127
- --textarea_height: 220px;
127
+ --textarea_height: var(--zd_size220);
128
128
  }
129
129
  .xlarge {
130
- --textarea_height: 184px;
130
+ --textarea_height: var(--zd_size184);
131
131
  }
132
132
  .default {
133
133
  font-family: var(--zd_regular);
@@ -135,8 +135,7 @@ describe('Textarea component', () => {
135
135
  needBorder: false
136
136
  }));
137
137
  expect(TestUtils.findRenderedComponentsWithTestid(renderedDOM, 'TextareaComp').className).toMatch(/noBorder/);
138
- });
139
- // it('Check disabled works', () => {
138
+ }); // it('Check disabled works', () => {
140
139
  // let renderedDOM = TestUtils.renderIntoDocument(
141
140
  // <Textarea maxLength='100' placeHolder='Text Area' resize='vertical' size='large' variant='primary' text='Text Area Working' disabled needBorder={false} />
142
141
  // );
@@ -152,6 +151,7 @@ describe('Textarea component', () => {
152
151
  // pass
153
152
  // ).toBe(true);
154
153
  // });
154
+
155
155
  it('Check check onchange works', () => {
156
156
  let mockfn = jest.fn();
157
157
  let renderedDOM = TestUtils.renderIntoDocument( /*#__PURE__*/React.createElement(Textarea, {