@zohodesk/components 1.2.23 → 1.2.24

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 (627) hide show
  1. package/README.md +4 -0
  2. package/es/Accordion/Accordion.js +7 -3
  3. package/es/Accordion/AccordionItem.js +4 -2
  4. package/es/Animation/Animation.js +7 -89
  5. package/es/Animation/utils.js +83 -0
  6. package/es/AppContainer/AppContainer.js +14 -3
  7. package/es/AppContainer/AppContainer.module.css +2 -2
  8. package/es/Avatar/Avatar.js +23 -11
  9. package/es/Avatar/Avatar.module.css +18 -18
  10. package/es/AvatarTeam/AvatarTeam.js +3 -3
  11. package/es/AvatarTeam/AvatarTeam.module.css +35 -35
  12. package/es/AvatarTeam/__tests__/AvatarTeam.spec.js +1 -2
  13. package/es/Button/Button.js +4 -3
  14. package/es/Button/css/Button.module.css +70 -70
  15. package/es/Buttongroup/Buttongroup.js +3 -3
  16. package/es/Buttongroup/Buttongroup.module.css +13 -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 +32 -20
  21. package/es/DateTime/DateTime.js +69 -6
  22. package/es/DateTime/DateTime.module.css +40 -40
  23. package/es/DateTime/DateTimePopupFooter.js +4 -1
  24. package/es/DateTime/DateTimePopupHeader.js +8 -2
  25. package/es/DateTime/DateWidget.js +98 -35
  26. package/es/DateTime/DateWidget.module.css +5 -5
  27. package/es/DateTime/DaysRow.js +4 -1
  28. package/es/DateTime/Time.js +10 -1
  29. package/es/DateTime/YearView.js +28 -4
  30. package/es/DateTime/YearView.module.css +15 -15
  31. package/es/DateTime/common.js +3 -0
  32. package/es/DateTime/constants.js +1 -0
  33. package/es/DateTime/dateFormatUtils/dateFormat.js +65 -30
  34. package/es/DateTime/dateFormatUtils/dateFormats.js +0 -1
  35. package/es/DateTime/dateFormatUtils/dayChange.js +13 -4
  36. package/es/DateTime/dateFormatUtils/index.js +31 -1
  37. package/es/DateTime/dateFormatUtils/monthChange.js +8 -0
  38. package/es/DateTime/dateFormatUtils/timeChange.js +22 -6
  39. package/es/DateTime/dateFormatUtils/yearChange.js +11 -2
  40. package/es/DateTime/objectUtils.js +14 -20
  41. package/es/DateTime/typeChecker.js +3 -0
  42. package/es/DateTime/validator.js +58 -6
  43. package/es/DropBox/DropBox.js +6 -2
  44. package/es/DropBox/DropBoxElement/DropBoxElement.js +7 -0
  45. package/es/DropBox/DropBoxElement/css/DropBoxElement.module.css +73 -76
  46. package/es/DropBox/DropBoxElement/css/cssJSLogic.js +5 -3
  47. package/es/DropBox/DropBoxElement/useDropboxPosCalc.js +3 -0
  48. package/es/DropBox/css/DropBox.module.css +6 -6
  49. package/es/DropBox/props/defaultProps.js +1 -2
  50. package/es/DropBox/props/propTypes.js +1 -2
  51. package/es/DropDown/DropDown.js +7 -1
  52. package/es/DropDown/DropDown.module.css +2 -2
  53. package/es/DropDown/DropDownHeading.js +4 -5
  54. package/es/DropDown/DropDownHeading.module.css +6 -6
  55. package/es/DropDown/DropDownItem.js +6 -0
  56. package/es/DropDown/DropDownItem.module.css +12 -12
  57. package/es/DropDown/DropDownSearch.js +4 -0
  58. package/es/DropDown/DropDownSearch.module.css +3 -3
  59. package/es/DropDown/DropDownSeparator.js +1 -0
  60. package/es/DropDown/DropDownSeparator.module.css +2 -2
  61. package/es/DropDown/props/propTypes.js +1 -2
  62. package/es/Heading/Heading.js +2 -3
  63. package/es/Heading/Heading.module.css +2 -2
  64. package/es/Label/Label.js +2 -3
  65. package/es/Label/Label.module.css +5 -5
  66. package/es/Label/__tests__/Label.spec.js +1 -2
  67. package/es/Layout/Box.js +15 -2
  68. package/es/Layout/Container.js +14 -3
  69. package/es/Layout/Layout.module.css +15 -15
  70. package/es/Layout/index.js +1 -2
  71. package/es/Layout/utils.js +1 -0
  72. package/es/ListItem/ListContainer.js +8 -3
  73. package/es/ListItem/ListItem.js +9 -3
  74. package/es/ListItem/ListItem.module.css +27 -38
  75. package/es/ListItem/ListItemWithAvatar.js +9 -3
  76. package/es/ListItem/ListItemWithCheckBox.js +7 -2
  77. package/es/ListItem/ListItemWithIcon.js +8 -3
  78. package/es/ListItem/ListItemWithRadio.js +7 -3
  79. package/es/Modal/Modal.js +28 -11
  80. package/es/MultiSelect/AdvancedGroupMultiSelect.js +89 -13
  81. package/es/MultiSelect/AdvancedMultiSelect.js +32 -9
  82. package/es/MultiSelect/EmptyState.js +2 -0
  83. package/es/MultiSelect/MobileHeader/MobileHeader.module.css +5 -5
  84. package/es/MultiSelect/MultiSelect.js +99 -30
  85. package/es/MultiSelect/MultiSelect.module.css +31 -31
  86. package/es/MultiSelect/MultiSelectHeader.js +3 -0
  87. package/es/MultiSelect/MultiSelectWithAvatar.js +10 -3
  88. package/es/MultiSelect/SelectedOptions.js +6 -3
  89. package/es/MultiSelect/SelectedOptions.module.css +5 -5
  90. package/es/MultiSelect/Suggestions.js +7 -3
  91. package/es/MultiSelect/props/propTypes.js +2 -2
  92. package/es/PopOver/PopOver.js +16 -0
  93. package/es/Popup/Popup.js +77 -24
  94. package/es/Popup/viewPort.js +16 -4
  95. package/es/Provider/IdProvider.js +10 -5
  96. package/es/Provider/LibraryContext.js +6 -4
  97. package/es/Provider/NumberGenerator/NumberGenerator.js +21 -7
  98. package/es/Provider/ZindexProvider.js +9 -2
  99. package/es/Radio/Radio.js +3 -0
  100. package/es/Radio/Radio.module.css +9 -9
  101. package/es/Responsive/CustomResponsive.js +30 -18
  102. package/es/Responsive/RefWrapper.js +6 -7
  103. package/es/Responsive/ResizeComponent.js +35 -25
  104. package/es/Responsive/ResizeObserver.js +26 -6
  105. package/es/Responsive/Responsive.js +34 -20
  106. package/es/Responsive/index.js +1 -3
  107. package/es/Responsive/sizeObservers.js +28 -7
  108. package/es/Responsive/utils/index.js +7 -5
  109. package/es/Responsive/utils/shallowCompare.js +7 -2
  110. package/es/Responsive/windowResizeObserver.js +7 -0
  111. package/es/ResponsiveDropBox/ResponsiveDropBox.js +4 -0
  112. package/es/ResponsiveDropBox/ResponsiveDropBox.module.css +2 -2
  113. package/es/ResponsiveDropBox/props/propTypes.js +1 -2
  114. package/es/Ribbon/Ribbon.js +3 -2
  115. package/es/Ribbon/Ribbon.module.css +45 -48
  116. package/es/RippleEffect/RippleEffect.js +1 -3
  117. package/es/Select/GroupSelect.js +58 -14
  118. package/es/Select/Select.js +79 -33
  119. package/es/Select/Select.module.css +23 -23
  120. package/es/Select/SelectWithAvatar.js +17 -4
  121. package/es/Select/SelectWithIcon.js +46 -5
  122. package/es/Select/props/propTypes.js +2 -2
  123. package/es/Stencils/Stencils.js +3 -3
  124. package/es/Stencils/Stencils.module.css +11 -11
  125. package/es/Switch/Switch.js +5 -3
  126. package/es/Switch/Switch.module.css +23 -23
  127. package/es/Tab/Tab.js +4 -4
  128. package/es/Tab/Tab.module.css +14 -14
  129. package/es/Tab/TabContent.js +1 -0
  130. package/es/Tab/TabContentWrapper.js +3 -0
  131. package/es/Tab/TabWrapper.js +5 -2
  132. package/es/Tab/Tabs.js +54 -7
  133. package/es/Tab/Tabs.module.css +22 -22
  134. package/es/Tag/Tag.js +6 -3
  135. package/es/Tag/Tag.module.css +24 -25
  136. package/es/TextBox/TextBox.js +16 -3
  137. package/es/TextBox/TextBox.module.css +9 -9
  138. package/es/TextBoxIcon/TextBoxIcon.js +9 -2
  139. package/es/TextBoxIcon/TextBoxIcon.module.css +7 -7
  140. package/es/TextBoxIcon/props/propTypes.js +1 -2
  141. package/es/Textarea/Textarea.js +12 -3
  142. package/es/Textarea/Textarea.module.css +21 -21
  143. package/es/Tooltip/Tooltip.js +58 -14
  144. package/es/Tooltip/Tooltip.module.css +5 -5
  145. package/es/VelocityAnimation/VelocityAnimation/VelocityAnimation.js +3 -2
  146. package/es/VelocityAnimation/VelocityAnimationGroup/VelocityAnimationGroup.js +7 -5
  147. package/es/common/animation.module.css +8 -8
  148. package/es/common/avatarsizes.module.css +16 -16
  149. package/es/common/basicReset.module.css +3 -3
  150. package/es/common/common.module.css +24 -24
  151. package/es/common/customscroll.module.css +2 -2
  152. package/es/deprecated/PortalLayer/PortalLayer.js +25 -20
  153. package/es/semantic/Button/Button.js +3 -2
  154. package/es/semantic/Button/semanticButton.module.css +1 -1
  155. package/es/utils/Common.js +54 -9
  156. package/es/utils/ContextOptimizer.js +4 -5
  157. package/es/utils/constructFullName.js +2 -0
  158. package/es/utils/datetime/common.js +16 -5
  159. package/es/utils/debounce.js +5 -1
  160. package/es/utils/dropDownUtils.js +68 -11
  161. package/es/utils/getInitial.js +4 -0
  162. package/es/utils/shallowEqual.js +6 -0
  163. package/es/v1/Accordion/Accordion.js +4 -3
  164. package/es/v1/Accordion/AccordionItem.js +4 -2
  165. package/es/v1/Animation/Animation.js +5 -89
  166. package/es/v1/Animation/utils.js +83 -0
  167. package/es/v1/AppContainer/AppContainer.js +9 -3
  168. package/es/v1/Avatar/Avatar.js +18 -6
  169. package/es/v1/AvatarTeam/AvatarTeam.js +1 -0
  170. package/es/v1/Button/Button.js +3 -3
  171. package/es/v1/Card/Card.js +16 -8
  172. package/es/v1/CheckBox/CheckBox.js +6 -3
  173. package/es/v1/DateTime/CalendarView.js +32 -20
  174. package/es/v1/DateTime/DateTime.js +69 -6
  175. package/es/v1/DateTime/DateTimePopupFooter.js +4 -1
  176. package/es/v1/DateTime/DateTimePopupHeader.js +8 -2
  177. package/es/v1/DateTime/DateWidget.js +98 -35
  178. package/es/v1/DateTime/DaysRow.js +4 -1
  179. package/es/v1/DateTime/Time.js +10 -1
  180. package/es/v1/DateTime/YearView.js +28 -4
  181. package/es/v1/DropBox/DropBox.js +6 -2
  182. package/es/v1/DropBox/DropBoxElement/DropBoxElement.js +7 -0
  183. package/es/v1/DropBox/props/defaultProps.js +1 -2
  184. package/es/v1/DropBox/props/propTypes.js +1 -2
  185. package/es/v1/DropDown/DropDown.js +3 -0
  186. package/es/v1/DropDown/DropDownHeading.js +2 -2
  187. package/es/v1/DropDown/DropDownItem.js +5 -0
  188. package/es/v1/DropDown/DropDownSearch.js +3 -2
  189. package/es/v1/DropDown/props/propTypes.js +1 -2
  190. package/es/v1/Heading/Heading.js +1 -3
  191. package/es/v1/Layout/Box.js +15 -2
  192. package/es/v1/Layout/Container.js +14 -3
  193. package/es/v1/ListItem/ListContainer.js +8 -3
  194. package/es/v1/ListItem/ListItem.js +10 -3
  195. package/es/v1/ListItem/ListItemWithAvatar.js +9 -1
  196. package/es/v1/ListItem/ListItemWithCheckBox.js +8 -2
  197. package/es/v1/ListItem/ListItemWithIcon.js +9 -3
  198. package/es/v1/ListItem/ListItemWithRadio.js +8 -3
  199. package/es/v1/Modal/Modal.js +17 -1
  200. package/es/v1/MultiSelect/AdvancedGroupMultiSelect.js +90 -15
  201. package/es/v1/MultiSelect/AdvancedMultiSelect.js +32 -9
  202. package/es/v1/MultiSelect/EmptyState.js +2 -0
  203. package/es/v1/MultiSelect/MultiSelect.js +100 -31
  204. package/es/v1/MultiSelect/MultiSelectHeader.js +3 -0
  205. package/es/v1/MultiSelect/MultiSelectWithAvatar.js +11 -3
  206. package/es/v1/MultiSelect/SelectedOptions.js +6 -3
  207. package/es/v1/MultiSelect/Suggestions.js +7 -3
  208. package/es/v1/MultiSelect/props/propTypes.js +2 -2
  209. package/es/v1/PopOver/PopOver.js +11 -0
  210. package/es/v1/Popup/Popup.js +77 -24
  211. package/es/v1/Provider/IdProvider.js +10 -5
  212. package/es/v1/Provider/LibraryContext.js +6 -4
  213. package/es/v1/Provider/NumberGenerator/NumberGenerator.js +21 -7
  214. package/es/v1/Provider/ZindexProvider.js +9 -2
  215. package/es/v1/Radio/Radio.js +5 -2
  216. package/es/v1/Responsive/CustomResponsive.js +30 -18
  217. package/es/v1/Responsive/RefWrapper.js +6 -7
  218. package/es/v1/Responsive/ResizeComponent.js +35 -25
  219. package/es/v1/Responsive/ResizeObserver.js +26 -6
  220. package/es/v1/Responsive/Responsive.js +34 -20
  221. package/es/v1/Responsive/index.js +1 -3
  222. package/es/v1/ResponsiveDropBox/ResponsiveDropBox.js +1 -0
  223. package/es/v1/ResponsiveDropBox/props/propTypes.js +1 -2
  224. package/es/v1/Select/GroupSelect.js +58 -14
  225. package/es/v1/Select/Select.js +81 -37
  226. package/es/v1/Select/SelectWithAvatar.js +17 -4
  227. package/es/v1/Select/SelectWithIcon.js +46 -5
  228. package/es/v1/Select/props/propTypes.js +2 -2
  229. package/es/v1/Stencils/Stencils.js +2 -0
  230. package/es/v1/Switch/Switch.js +6 -3
  231. package/es/v1/Tab/Tab.js +3 -3
  232. package/es/v1/Tab/TabContent.js +1 -0
  233. package/es/v1/Tab/TabContentWrapper.js +3 -0
  234. package/es/v1/Tab/TabWrapper.js +5 -2
  235. package/es/v1/Tab/Tabs.js +54 -9
  236. package/es/v1/Tab/v1Tab.module.css +14 -14
  237. package/es/v1/Tab/v1Tabs.module.css +22 -22
  238. package/es/v1/Tag/Tag.js +5 -1
  239. package/es/v1/TextBox/TextBox.js +14 -0
  240. package/es/v1/TextBoxIcon/TextBoxIcon.js +6 -2
  241. package/es/v1/TextBoxIcon/props/propTypes.js +1 -2
  242. package/es/v1/Textarea/Textarea.js +10 -3
  243. package/es/v1/Tooltip/Tooltip.js +58 -14
  244. package/es/v1/Typography/Typography.js +2 -0
  245. package/es/v1/Typography/css/Typography.module.css +31 -31
  246. package/es/v1/Typography/css/cssJSLogic.js +3 -0
  247. package/es/v1/VelocityAnimation/VelocityAnimation/VelocityAnimation.js +1 -2
  248. package/es/v1/VelocityAnimation/VelocityAnimationGroup/VelocityAnimationGroup.js +5 -4
  249. package/es/v1/semantic/Button/Button.js +1 -2
  250. package/lib/Accordion/Accordion.js +42 -18
  251. package/lib/Accordion/AccordionItem.js +40 -18
  252. package/lib/Accordion/index.js +3 -0
  253. package/lib/Accordion/props/propTypes.js +3 -0
  254. package/lib/Animation/Animation.js +42 -104
  255. package/lib/Animation/props/propTypes.js +3 -0
  256. package/lib/Animation/utils.js +94 -0
  257. package/lib/AppContainer/AppContainer.js +58 -20
  258. package/lib/AppContainer/AppContainer.module.css +2 -2
  259. package/lib/AppContainer/props/propTypes.js +3 -0
  260. package/lib/Avatar/Avatar.js +78 -38
  261. package/lib/Avatar/Avatar.module.css +18 -18
  262. package/lib/Avatar/__tests__/Avatar.spec.js +95 -71
  263. package/lib/Avatar/props/propTypes.js +3 -0
  264. package/lib/AvatarTeam/AvatarTeam.js +52 -30
  265. package/lib/AvatarTeam/AvatarTeam.module.css +35 -35
  266. package/lib/AvatarTeam/__tests__/AvatarTeam.spec.js +77 -61
  267. package/lib/AvatarTeam/props/propTypes.js +3 -0
  268. package/lib/Button/Button.js +33 -22
  269. package/lib/Button/__tests__/Button.spec.js +65 -48
  270. package/lib/Button/css/Button.module.css +70 -70
  271. package/lib/Button/css/cssJSLogic.js +18 -17
  272. package/lib/Button/index.js +3 -0
  273. package/lib/Button/props/defaultProps.js +2 -0
  274. package/lib/Button/props/propTypes.js +3 -0
  275. package/lib/Buttongroup/Buttongroup.js +32 -12
  276. package/lib/Buttongroup/Buttongroup.module.css +13 -15
  277. package/lib/Buttongroup/__tests__/Buttongroup.spec.js +18 -10
  278. package/lib/Buttongroup/props/propTypes.js +3 -0
  279. package/lib/Card/Card.js +102 -46
  280. package/lib/Card/index.js +4 -0
  281. package/lib/Card/props/propTypes.js +3 -0
  282. package/lib/CheckBox/CheckBox.js +71 -47
  283. package/lib/CheckBox/CheckBox.module.css +15 -15
  284. package/lib/CheckBox/props/propTypes.js +3 -0
  285. package/lib/DateTime/CalendarView.js +82 -42
  286. package/lib/DateTime/DateTime.js +244 -156
  287. package/lib/DateTime/DateTime.module.css +40 -40
  288. package/lib/DateTime/DateTimePopupFooter.js +33 -8
  289. package/lib/DateTime/DateTimePopupHeader.js +49 -17
  290. package/lib/DateTime/DateWidget.js +350 -249
  291. package/lib/DateTime/DateWidget.module.css +5 -5
  292. package/lib/DateTime/DaysRow.js +28 -5
  293. package/lib/DateTime/Time.js +75 -32
  294. package/lib/DateTime/YearView.js +76 -27
  295. package/lib/DateTime/YearView.module.css +15 -15
  296. package/lib/DateTime/common.js +6 -0
  297. package/lib/DateTime/constants.js +1 -0
  298. package/lib/DateTime/dateFormatUtils/dateFormat.js +187 -122
  299. package/lib/DateTime/dateFormatUtils/dateFormats.js +0 -1
  300. package/lib/DateTime/dateFormatUtils/dayChange.js +15 -7
  301. package/lib/DateTime/dateFormatUtils/index.js +73 -16
  302. package/lib/DateTime/dateFormatUtils/monthChange.js +20 -9
  303. package/lib/DateTime/dateFormatUtils/timeChange.js +54 -22
  304. package/lib/DateTime/dateFormatUtils/yearChange.js +23 -11
  305. package/lib/DateTime/index.js +2 -0
  306. package/lib/DateTime/objectUtils.js +24 -20
  307. package/lib/DateTime/props/propTypes.js +11 -1
  308. package/lib/DateTime/typeChecker.js +4 -0
  309. package/lib/DateTime/validator.js +73 -10
  310. package/lib/DropBox/DropBox.js +45 -21
  311. package/lib/DropBox/DropBoxElement/DropBoxElement.js +59 -38
  312. package/lib/DropBox/DropBoxElement/css/DropBoxElement.module.css +73 -76
  313. package/lib/DropBox/DropBoxElement/css/cssJSLogic.js +42 -34
  314. package/lib/DropBox/DropBoxElement/props/propTypes.js +3 -0
  315. package/lib/DropBox/DropBoxElement/useDropboxPosCalc.js +14 -9
  316. package/lib/DropBox/css/DropBox.module.css +6 -6
  317. package/lib/DropBox/css/cssJSLogic.js +3 -1
  318. package/lib/DropBox/props/defaultProps.js +8 -4
  319. package/lib/DropBox/props/propTypes.js +10 -4
  320. package/lib/DropDown/DropDown.js +51 -5
  321. package/lib/DropDown/DropDown.module.css +2 -2
  322. package/lib/DropDown/DropDownHeading.js +39 -20
  323. package/lib/DropDown/DropDownHeading.module.css +6 -6
  324. package/lib/DropDown/DropDownItem.js +42 -20
  325. package/lib/DropDown/DropDownItem.module.css +12 -12
  326. package/lib/DropDown/DropDownSearch.js +40 -17
  327. package/lib/DropDown/DropDownSearch.module.css +3 -3
  328. package/lib/DropDown/DropDownSeparator.js +24 -4
  329. package/lib/DropDown/DropDownSeparator.module.css +2 -2
  330. package/lib/DropDown/index.js +9 -0
  331. package/lib/DropDown/props/propTypes.js +10 -4
  332. package/lib/Heading/Heading.js +37 -15
  333. package/lib/Heading/Heading.module.css +2 -2
  334. package/lib/Heading/props/propTypes.js +3 -0
  335. package/lib/Label/Label.js +41 -21
  336. package/lib/Label/Label.module.css +5 -5
  337. package/lib/Label/__tests__/Label.spec.js +48 -34
  338. package/lib/Label/props/propTypes.js +3 -0
  339. package/lib/Layout/Box.js +35 -15
  340. package/lib/Layout/Container.js +33 -14
  341. package/lib/Layout/Layout.module.css +15 -15
  342. package/lib/Layout/index.js +3 -0
  343. package/lib/Layout/props/propTypes.js +3 -0
  344. package/lib/Layout/utils.js +11 -0
  345. package/lib/ListItem/ListContainer.js +55 -30
  346. package/lib/ListItem/ListItem.js +74 -45
  347. package/lib/ListItem/ListItem.module.css +27 -38
  348. package/lib/ListItem/ListItemWithAvatar.js +80 -48
  349. package/lib/ListItem/ListItemWithCheckBox.js +70 -40
  350. package/lib/ListItem/ListItemWithIcon.js +73 -44
  351. package/lib/ListItem/ListItemWithRadio.js +71 -42
  352. package/lib/ListItem/index.js +7 -0
  353. package/lib/ListItem/props/propTypes.js +6 -4
  354. package/lib/Modal/Modal.js +45 -10
  355. package/lib/Modal/props/propTypes.js +3 -0
  356. package/lib/MultiSelect/AdvancedGroupMultiSelect.js +293 -166
  357. package/lib/MultiSelect/AdvancedMultiSelect.js +202 -125
  358. package/lib/MultiSelect/EmptyState.js +45 -24
  359. package/lib/MultiSelect/MobileHeader/MobileHeader.js +14 -5
  360. package/lib/MultiSelect/MobileHeader/MobileHeader.module.css +5 -5
  361. package/lib/MultiSelect/MobileHeader/props/propTypes.js +3 -0
  362. package/lib/MultiSelect/MultiSelect.js +333 -214
  363. package/lib/MultiSelect/MultiSelect.module.css +31 -31
  364. package/lib/MultiSelect/MultiSelectHeader.js +29 -7
  365. package/lib/MultiSelect/MultiSelectWithAvatar.js +85 -43
  366. package/lib/MultiSelect/SelectedOptions.js +43 -17
  367. package/lib/MultiSelect/SelectedOptions.module.css +5 -5
  368. package/lib/MultiSelect/Suggestions.js +64 -32
  369. package/lib/MultiSelect/index.js +5 -0
  370. package/lib/MultiSelect/props/defaultProps.js +2 -0
  371. package/lib/MultiSelect/props/propTypes.js +14 -4
  372. package/lib/PopOver/PopOver.js +94 -47
  373. package/lib/PopOver/index.js +4 -0
  374. package/lib/PopOver/props/propTypes.js +3 -0
  375. package/lib/Popup/Popup.js +158 -81
  376. package/lib/Popup/viewPort.js +28 -14
  377. package/lib/Provider/AvatarSize.js +4 -0
  378. package/lib/Provider/Config.js +2 -0
  379. package/lib/Provider/CssProvider.js +4 -0
  380. package/lib/Provider/IdProvider.js +17 -6
  381. package/lib/Provider/LibraryContext.js +35 -15
  382. package/lib/Provider/LibraryContextInit.js +4 -0
  383. package/lib/Provider/NumberGenerator/NumberGenerator.js +44 -15
  384. package/lib/Provider/ZindexProvider.js +15 -3
  385. package/lib/Provider/index.js +5 -0
  386. package/lib/Radio/Radio.js +60 -36
  387. package/lib/Radio/Radio.module.css +9 -9
  388. package/lib/Radio/__tests__/Radio.spec.js +134 -103
  389. package/lib/Radio/props/propTypes.js +3 -0
  390. package/lib/Responsive/CustomResponsive.js +73 -29
  391. package/lib/Responsive/RefWrapper.js +17 -11
  392. package/lib/Responsive/ResizeComponent.js +62 -36
  393. package/lib/Responsive/ResizeObserver.js +24 -10
  394. package/lib/Responsive/Responsive.js +80 -30
  395. package/lib/Responsive/index.js +4 -0
  396. package/lib/Responsive/props/propTypes.js +3 -0
  397. package/lib/Responsive/sizeObservers.js +53 -17
  398. package/lib/Responsive/utils/index.js +11 -3
  399. package/lib/Responsive/utils/shallowCompare.js +11 -2
  400. package/lib/Responsive/windowResizeObserver.js +8 -0
  401. package/lib/ResponsiveDropBox/ResponsiveDropBox.js +45 -17
  402. package/lib/ResponsiveDropBox/ResponsiveDropBox.module.css +2 -2
  403. package/lib/ResponsiveDropBox/props/propTypes.js +9 -4
  404. package/lib/Ribbon/Ribbon.js +33 -13
  405. package/lib/Ribbon/Ribbon.module.css +45 -48
  406. package/lib/Ribbon/__tests__/Ribbon.spec.js +24 -14
  407. package/lib/Ribbon/props/propTypes.js +3 -0
  408. package/lib/RippleEffect/RippleEffect.js +18 -10
  409. package/lib/RippleEffect/__tests__/RippleEffect.spec.js +34 -22
  410. package/lib/RippleEffect/props/propTypes.js +3 -0
  411. package/lib/Select/GroupSelect.js +229 -130
  412. package/lib/Select/Select.js +295 -211
  413. package/lib/Select/Select.module.css +23 -23
  414. package/lib/Select/SelectWithAvatar.js +102 -56
  415. package/lib/Select/SelectWithIcon.js +131 -76
  416. package/lib/Select/index.js +5 -0
  417. package/lib/Select/props/defaultProps.js +5 -4
  418. package/lib/Select/props/propTypes.js +10 -4
  419. package/lib/Stencils/Stencils.js +29 -10
  420. package/lib/Stencils/Stencils.module.css +11 -11
  421. package/lib/Stencils/__tests__/Stencils.spec.js +22 -13
  422. package/lib/Stencils/props/propTypes.js +3 -0
  423. package/lib/Switch/Switch.js +57 -34
  424. package/lib/Switch/Switch.module.css +23 -23
  425. package/lib/Switch/__tests__/Switch.spec.js +91 -72
  426. package/lib/Switch/props/propTypes.js +3 -0
  427. package/lib/Tab/Tab.js +40 -27
  428. package/lib/Tab/Tab.module.css +14 -14
  429. package/lib/Tab/TabContent.js +12 -5
  430. package/lib/Tab/TabContentWrapper.js +16 -8
  431. package/lib/Tab/TabWrapper.js +37 -19
  432. package/lib/Tab/Tabs.js +171 -91
  433. package/lib/Tab/Tabs.module.css +22 -22
  434. package/lib/Tab/index.js +6 -0
  435. package/lib/Tab/props/propTypes.js +3 -0
  436. package/lib/Tag/Tag.js +72 -43
  437. package/lib/Tag/Tag.module.css +24 -25
  438. package/lib/Tag/props/propTypes.js +3 -0
  439. package/lib/TextBox/TextBox.js +86 -60
  440. package/lib/TextBox/TextBox.module.css +9 -9
  441. package/lib/TextBox/props/propTypes.js +6 -4
  442. package/lib/TextBoxIcon/TextBoxIcon.js +80 -53
  443. package/lib/TextBoxIcon/TextBoxIcon.module.css +7 -7
  444. package/lib/TextBoxIcon/props/propTypes.js +9 -4
  445. package/lib/Textarea/Textarea.js +54 -29
  446. package/lib/Textarea/Textarea.module.css +21 -21
  447. package/lib/Textarea/props/propTypes.js +3 -0
  448. package/lib/Tooltip/Tooltip.js +94 -31
  449. package/lib/Tooltip/Tooltip.module.css +5 -5
  450. package/lib/Tooltip/props/propTypes.js +3 -0
  451. package/lib/VelocityAnimation/VelocityAnimation/VelocityAnimation.js +40 -16
  452. package/lib/VelocityAnimation/VelocityAnimation/props/propTypes.js +3 -0
  453. package/lib/VelocityAnimation/VelocityAnimationGroup/VelocityAnimationGroup.js +53 -25
  454. package/lib/VelocityAnimation/VelocityAnimationGroup/props/propTypes.js +3 -0
  455. package/lib/VelocityAnimation/index.js +3 -0
  456. package/lib/common/animation.module.css +8 -8
  457. package/lib/common/avatarsizes.module.css +16 -16
  458. package/lib/common/basicReset.module.css +3 -3
  459. package/lib/common/common.module.css +24 -24
  460. package/lib/common/customscroll.module.css +2 -2
  461. package/lib/css.js +40 -0
  462. package/lib/deprecated/PortalLayer/PortalLayer.js +46 -23
  463. package/lib/deprecated/PortalLayer/props/propTypes.js +3 -0
  464. package/lib/index.js +58 -0
  465. package/lib/semantic/Button/Button.js +42 -22
  466. package/lib/semantic/Button/props/propTypes.js +3 -0
  467. package/lib/semantic/Button/semanticButton.module.css +1 -1
  468. package/lib/semantic/index.js +2 -0
  469. package/lib/utils/Common.js +111 -18
  470. package/lib/utils/ContextOptimizer.js +16 -10
  471. package/lib/utils/constructFullName.js +13 -4
  472. package/lib/utils/datetime/common.js +34 -5
  473. package/lib/utils/debounce.js +6 -1
  474. package/lib/utils/dropDownUtils.js +175 -59
  475. package/lib/utils/dummyFunction.js +2 -0
  476. package/lib/utils/getHTMLFontSize.js +1 -0
  477. package/lib/utils/getInitial.js +6 -0
  478. package/lib/utils/index.js +1 -0
  479. package/lib/utils/scrollTo.js +2 -0
  480. package/lib/utils/shallowEqual.js +8 -0
  481. package/lib/v1/Accordion/Accordion.js +38 -19
  482. package/lib/v1/Accordion/AccordionItem.js +23 -13
  483. package/lib/v1/Accordion/index.js +3 -0
  484. package/lib/v1/Accordion/props/propTypes.js +3 -0
  485. package/lib/v1/Animation/Animation.js +24 -100
  486. package/lib/v1/Animation/props/propTypes.js +3 -0
  487. package/lib/v1/Animation/utils.js +94 -0
  488. package/lib/v1/AppContainer/AppContainer.js +46 -17
  489. package/lib/v1/AppContainer/props/propTypes.js +3 -0
  490. package/lib/v1/Avatar/Avatar.js +68 -32
  491. package/lib/v1/Avatar/props/propTypes.js +3 -0
  492. package/lib/v1/AvatarTeam/AvatarTeam.js +32 -24
  493. package/lib/v1/AvatarTeam/props/propTypes.js +3 -0
  494. package/lib/v1/Button/Button.js +32 -22
  495. package/lib/v1/Button/props/defaultProps.js +2 -0
  496. package/lib/v1/Button/props/propTypes.js +3 -0
  497. package/lib/v1/Buttongroup/Buttongroup.js +13 -5
  498. package/lib/v1/Buttongroup/props/propTypes.js +3 -0
  499. package/lib/v1/Card/Card.js +78 -44
  500. package/lib/v1/Card/index.js +4 -0
  501. package/lib/v1/Card/props/propTypes.js +3 -0
  502. package/lib/v1/CheckBox/CheckBox.js +52 -41
  503. package/lib/v1/CheckBox/props/propTypes.js +3 -0
  504. package/lib/v1/DateTime/CalendarView.js +89 -48
  505. package/lib/v1/DateTime/DateTime.js +246 -158
  506. package/lib/v1/DateTime/DateTimePopupFooter.js +33 -8
  507. package/lib/v1/DateTime/DateTimePopupHeader.js +49 -17
  508. package/lib/v1/DateTime/DateWidget.js +352 -251
  509. package/lib/v1/DateTime/DaysRow.js +28 -5
  510. package/lib/v1/DateTime/Time.js +75 -32
  511. package/lib/v1/DateTime/YearView.js +76 -27
  512. package/lib/v1/DateTime/index.js +2 -0
  513. package/lib/v1/DateTime/props/propTypes.js +11 -1
  514. package/lib/v1/DropBox/DropBox.js +45 -21
  515. package/lib/v1/DropBox/DropBoxElement/DropBoxElement.js +59 -38
  516. package/lib/v1/DropBox/DropBoxElement/props/propTypes.js +3 -0
  517. package/lib/v1/DropBox/props/defaultProps.js +8 -4
  518. package/lib/v1/DropBox/props/propTypes.js +10 -4
  519. package/lib/v1/DropDown/DropDown.js +23 -3
  520. package/lib/v1/DropDown/DropDownHeading.js +20 -13
  521. package/lib/v1/DropDown/DropDownItem.js +26 -11
  522. package/lib/v1/DropDown/DropDownSearch.js +28 -16
  523. package/lib/v1/DropDown/DropDownSeparator.js +7 -1
  524. package/lib/v1/DropDown/props/propTypes.js +10 -4
  525. package/lib/v1/Heading/Heading.js +19 -14
  526. package/lib/v1/Heading/props/propTypes.js +3 -0
  527. package/lib/v1/Label/Label.js +22 -14
  528. package/lib/v1/Label/props/propTypes.js +3 -0
  529. package/lib/v1/Layout/Box.js +35 -15
  530. package/lib/v1/Layout/Container.js +33 -14
  531. package/lib/v1/Layout/index.js +3 -0
  532. package/lib/v1/Layout/props/propTypes.js +3 -0
  533. package/lib/v1/ListItem/ListContainer.js +55 -30
  534. package/lib/v1/ListItem/ListItem.js +53 -38
  535. package/lib/v1/ListItem/ListItemWithAvatar.js +62 -39
  536. package/lib/v1/ListItem/ListItemWithCheckBox.js +49 -34
  537. package/lib/v1/ListItem/ListItemWithIcon.js +52 -37
  538. package/lib/v1/ListItem/ListItemWithRadio.js +49 -35
  539. package/lib/v1/ListItem/index.js +7 -0
  540. package/lib/v1/ListItem/props/propTypes.js +6 -4
  541. package/lib/v1/Modal/Modal.js +46 -9
  542. package/lib/v1/Modal/props/propTypes.js +3 -0
  543. package/lib/v1/MultiSelect/AdvancedGroupMultiSelect.js +294 -168
  544. package/lib/v1/MultiSelect/AdvancedMultiSelect.js +202 -125
  545. package/lib/v1/MultiSelect/EmptyState.js +45 -24
  546. package/lib/v1/MultiSelect/MobileHeader/MobileHeader.js +14 -5
  547. package/lib/v1/MultiSelect/MobileHeader/props/propTypes.js +3 -0
  548. package/lib/v1/MultiSelect/MultiSelect.js +335 -216
  549. package/lib/v1/MultiSelect/MultiSelectHeader.js +29 -7
  550. package/lib/v1/MultiSelect/MultiSelectWithAvatar.js +86 -43
  551. package/lib/v1/MultiSelect/SelectedOptions.js +43 -17
  552. package/lib/v1/MultiSelect/Suggestions.js +64 -32
  553. package/lib/v1/MultiSelect/index.js +5 -0
  554. package/lib/v1/MultiSelect/props/defaultProps.js +2 -0
  555. package/lib/v1/MultiSelect/props/propTypes.js +14 -4
  556. package/lib/v1/PopOver/PopOver.js +71 -40
  557. package/lib/v1/PopOver/props/propTypes.js +3 -0
  558. package/lib/v1/Popup/Popup.js +158 -81
  559. package/lib/v1/Provider/AvatarSize.js +4 -0
  560. package/lib/v1/Provider/Config.js +2 -0
  561. package/lib/v1/Provider/CssProvider.js +4 -0
  562. package/lib/v1/Provider/IdProvider.js +17 -6
  563. package/lib/v1/Provider/LibraryContext.js +35 -15
  564. package/lib/v1/Provider/LibraryContextInit.js +4 -0
  565. package/lib/v1/Provider/NumberGenerator/NumberGenerator.js +44 -15
  566. package/lib/v1/Provider/ZindexProvider.js +15 -3
  567. package/lib/v1/Provider/index.js +5 -0
  568. package/lib/v1/Radio/Radio.js +42 -32
  569. package/lib/v1/Radio/props/propTypes.js +3 -0
  570. package/lib/v1/Responsive/CustomResponsive.js +73 -29
  571. package/lib/v1/Responsive/RefWrapper.js +17 -11
  572. package/lib/v1/Responsive/ResizeComponent.js +62 -36
  573. package/lib/v1/Responsive/ResizeObserver.js +24 -10
  574. package/lib/v1/Responsive/Responsive.js +80 -30
  575. package/lib/v1/Responsive/index.js +4 -0
  576. package/lib/v1/Responsive/props/propTypes.js +3 -0
  577. package/lib/v1/ResponsiveDropBox/ResponsiveDropBox.js +27 -13
  578. package/lib/v1/ResponsiveDropBox/props/propTypes.js +9 -4
  579. package/lib/v1/Ribbon/Ribbon.js +14 -7
  580. package/lib/v1/Ribbon/props/propTypes.js +3 -0
  581. package/lib/v1/RippleEffect/RippleEffect.js +17 -7
  582. package/lib/v1/RippleEffect/props/propTypes.js +3 -0
  583. package/lib/v1/Select/GroupSelect.js +229 -130
  584. package/lib/v1/Select/Select.js +297 -214
  585. package/lib/v1/Select/SelectWithAvatar.js +102 -56
  586. package/lib/v1/Select/SelectWithIcon.js +131 -76
  587. package/lib/v1/Select/index.js +5 -0
  588. package/lib/v1/Select/props/defaultProps.js +5 -4
  589. package/lib/v1/Select/props/propTypes.js +10 -4
  590. package/lib/v1/Stencils/Stencils.js +13 -3
  591. package/lib/v1/Stencils/props/propTypes.js +3 -0
  592. package/lib/v1/Switch/Switch.js +38 -25
  593. package/lib/v1/Switch/props/propTypes.js +3 -0
  594. package/lib/v1/Tab/Tab.js +40 -27
  595. package/lib/v1/Tab/TabContent.js +12 -5
  596. package/lib/v1/Tab/TabContentWrapper.js +16 -8
  597. package/lib/v1/Tab/TabWrapper.js +37 -19
  598. package/lib/v1/Tab/Tabs.js +170 -83
  599. package/lib/v1/Tab/index.js +6 -0
  600. package/lib/v1/Tab/props/propTypes.js +3 -0
  601. package/lib/v1/Tab/v1Tab.module.css +14 -14
  602. package/lib/v1/Tab/v1Tabs.module.css +22 -22
  603. package/lib/v1/Tag/Tag.js +50 -32
  604. package/lib/v1/Tag/props/propTypes.js +3 -0
  605. package/lib/v1/TextBox/TextBox.js +70 -47
  606. package/lib/v1/TextBox/props/propTypes.js +6 -4
  607. package/lib/v1/TextBoxIcon/TextBoxIcon.js +80 -55
  608. package/lib/v1/TextBoxIcon/props/propTypes.js +9 -4
  609. package/lib/v1/Textarea/Textarea.js +45 -28
  610. package/lib/v1/Textarea/props/propTypes.js +3 -0
  611. package/lib/v1/Tooltip/Tooltip.js +94 -31
  612. package/lib/v1/Tooltip/props/propTypes.js +3 -0
  613. package/lib/v1/Typography/Typography.js +26 -15
  614. package/lib/v1/Typography/css/Typography.module.css +31 -31
  615. package/lib/v1/Typography/css/cssJSLogic.js +25 -20
  616. package/lib/v1/Typography/props/propTypes.js +3 -0
  617. package/lib/v1/Typography/utils/index.js +1 -0
  618. package/lib/v1/VelocityAnimation/VelocityAnimation/VelocityAnimation.js +25 -12
  619. package/lib/v1/VelocityAnimation/VelocityAnimation/props/propTypes.js +3 -0
  620. package/lib/v1/VelocityAnimation/VelocityAnimationGroup/VelocityAnimationGroup.js +38 -22
  621. package/lib/v1/VelocityAnimation/VelocityAnimationGroup/props/propTypes.js +3 -0
  622. package/lib/v1/semantic/Button/Button.js +24 -18
  623. package/lib/v1/semantic/Button/props/propTypes.js +3 -0
  624. package/lib/v1/semantic/index.js +2 -0
  625. package/package.json +2 -2
  626. package/result.json +1 -1
  627. package/.DS_Store +0 -0
@@ -3,7 +3,7 @@
3
3
  --ribbon_padding: 0;
4
4
  --ribbon_text_color: var(--zdt_ribbon_default_text);
5
5
  --ribbon_text_transform: none;
6
- --ribbon_font_size: 13px;
6
+ --ribbon_font_size: var(--zd_font_size13);
7
7
  --ribbon_bg_color: var(--zdt_ribbon_default_bg);
8
8
  --ribbon_box_shadow: none;
9
9
  --ribbon_border_width: 0;
@@ -13,12 +13,12 @@
13
13
  /* flag ribbon default variable */
14
14
 
15
15
  /* tag ribbon default variables */
16
- --ribbon_tag_before_top: 3px;
16
+ --ribbon_tag_before_top: var(--zd_size3);
17
17
  --ribbon_tag_before_border_style: solid;
18
18
  --ribbon_tag_before_border_color: var(--zdt_ribbon_default_tag_border);
19
- --ribbon_tag_before_width: 20px;
20
- --ribbon_tag_before_height: 20px;
21
- --ribbon_tag_before_left: -10px;
19
+ --ribbon_tag_before_width: var(--zd_size20);
20
+ --ribbon_tag_before_height: var(--zd_size20);
21
+ --ribbon_tag_before_left: calc( var(--zd_size10) * -1 );
22
22
  --ribbon_tag_before_border_radius: 3px 0 0 0;
23
23
  }[dir=ltr] .varClass {
24
24
  --ribbon_flag_border_width: 14px 12px 14px 0
@@ -64,26 +64,26 @@
64
64
  .default {
65
65
  composes: semibold from '../common/common.module.css';
66
66
  display: block;
67
- --ribbon_padding: 5px 20px;
67
+ --ribbon_padding: var(--zd_size5) var(--zd_size20);
68
68
  --ribbon_text_color: var(--zdt_ribbon_white_text);
69
69
  --ribbon_text_transform: uppercase;
70
70
  text-align: center;
71
71
  }
72
72
 
73
73
  .small {
74
- --ribbon_font_size: 9px;
74
+ --ribbon_font_size: var(--zd_font_size9);
75
75
  }
76
76
 
77
77
  .medium {
78
- --ribbon_font_size: 11px;
78
+ --ribbon_font_size: var(--zd_font_size11);
79
79
  }
80
80
 
81
81
  .large {
82
- --ribbon_font_size: 13px;
82
+ --ribbon_font_size: var(--zd_font_size13);
83
83
  }
84
84
 
85
85
  .xlarge {
86
- --ribbon_font_size: 14px;
86
+ --ribbon_font_size: var(--zd_font_size14);
87
87
  }
88
88
 
89
89
  .palette_default {
@@ -220,13 +220,11 @@
220
220
  }
221
221
 
222
222
  [dir=ltr] .flag {
223
- --ribbon_padding: 4px 24px 4px 6px
224
- /*rtl: 4px 6px 4px 24px*/
225
- ;
223
+ --ribbon_padding: var(--zd_size4) var(--zd_size24) var(--zd_size4) var(--zd_size6);
226
224
  }
227
225
 
228
226
  [dir=rtl] .flag {
229
- --ribbon_padding: 4px 24px 4px 6px ;
227
+ --ribbon_padding: var(--zd_size4) var(--zd_size24) var(--zd_size4) var(--zd_size6);
230
228
  }
231
229
 
232
230
  .flag.small {
@@ -253,19 +251,19 @@
253
251
  /* Variable:Ignore */
254
252
  bottom: -1px;
255
253
  content: '';
256
- width: 12px;
254
+ width: var(--zd_size12) ;
257
255
  border-style: solid;
258
256
  transform: translateZ(0);
259
257
  border-width: var(--ribbon_flag_border_width);
260
258
  }
261
259
 
262
260
  [dir=ltr] .flag::after {
263
- right: -1px;
261
+ right: calc( var(--zd_size1) * -1 ) ;
264
262
  border-color: var(--zdt_ribbon_flag_mirror_border) var(--zdt_ribbon_flag_white_border) var(--zdt_ribbon_flag_mirror_border) var(--zdt_ribbon_flag_mirror_border);
265
263
  }
266
264
 
267
265
  [dir=rtl] .flag::after {
268
- left: -1px;
266
+ left: calc( var(--zd_size1) * -1 ) ;
269
267
  border-color: var(--zdt_ribbon_flag_mirror_border) var(--zdt_ribbon_flag_mirror_border) var(--zdt_ribbon_flag_mirror_border) var(--zdt_ribbon_flag_white_border);
270
268
  }
271
269
 
@@ -279,7 +277,7 @@
279
277
  display: block;
280
278
  --ribbon_text_color: var(--zdt_ribbon_white_text);
281
279
  --ribbon_text_transform: uppercase;
282
- --ribbon_padding: 6px 10px;
280
+ --ribbon_padding: var(--zd_size6) var(--zd_size10);
283
281
  text-align: center;
284
282
  }
285
283
 
@@ -303,9 +301,9 @@
303
301
  .ribbon::before {
304
302
  position: absolute;
305
303
  content: '';
306
- top: 100%;
307
- height: 10px;
308
- width: 10px;
304
+ top: 100% ;
305
+ height: var(--zd_size10) ;
306
+ width: var(--zd_size10) ;
309
307
  }
310
308
 
311
309
  .ribbon::after, .ribbon::before {
@@ -323,27 +321,27 @@
323
321
  }
324
322
 
325
323
  [dir=ltr] .ribbon::after {
326
- right: 0;
324
+ right: 0 ;
327
325
  }
328
326
 
329
327
  [dir=rtl] .ribbon::after {
330
- left: 0;
328
+ left: 0 ;
331
329
  }
332
330
 
333
331
  [dir=ltr] .ribbon::before {
334
- left: 0;
332
+ left: 0 ;
335
333
  transform: rotateY(180deg);
336
334
  }
337
335
 
338
336
  [dir=rtl] .ribbon::before {
339
- right: 0;
337
+ right: 0 ;
340
338
  transform: rotateY(-180deg);
341
339
  }
342
340
 
343
341
  .tag {
344
342
  composes: semibold from '../common/common.module.css';
345
343
  display: inline-block;
346
- height: 28px;
344
+ height: var(--zd_size28) ;
347
345
  border-style: solid;
348
346
  border-color: var(--zdt_ribbon_default_tag_border);
349
347
  }
@@ -355,16 +353,15 @@
355
353
  border-radius: 0 3px 3px 0
356
354
  /*rtl: 3px 0 0 3px*/
357
355
  ;
358
- margin-left: 13px;
359
- padding: 6px 8px 6px 5px
360
- ;
356
+ margin-left: var(--zd_size13) ;
357
+ padding: var(--zd_size6) var(--zd_size8) var(--zd_size6) var(--zd_size5) ;
361
358
  }
362
359
 
363
360
  [dir=rtl] .tag {
364
361
  border-width: 1px 0 1px 1px ;
365
362
  border-radius: 3px 0 0 3px ;
366
- margin-right: 13px;
367
- padding: 6px 5px 6px 8px;
363
+ margin-right: var(--zd_size13) ;
364
+ padding: var(--zd_size6) var(--zd_size5) var(--zd_size6) var(--zd_size8) ;
368
365
  }
369
366
 
370
367
  .tag::before {
@@ -394,26 +391,26 @@
394
391
  .box {
395
392
  display: inline-block;
396
393
  --ribbon_bg_color: var(--zdt_ribbon_white_bg);
397
- --ribbon_padding: 5px 8px;
394
+ --ribbon_padding: var(--zd_size5) var(--zd_size8);
398
395
  border-radius: 3px;
399
396
  }
400
397
 
401
398
  .stamp {
402
399
  display: inline-block;
403
- --ribbon_padding: 3px 5px;
400
+ --ribbon_padding: var(--zd_size3) var(--zd_size5);
404
401
  --ribbon_text_transform: uppercase;
405
402
  }
406
403
 
407
404
  .sticker {
408
405
  display: block;
409
- height: 18px;
406
+ height: var(--zd_size18) ;
410
407
  --ribbon_text_color: var(--zdt_ribbon_white_text);
411
408
  --ribbon_text_transform: uppercase;
412
409
  text-align: center;
413
410
  border-width: 1px 0;
414
411
  border-style: solid;
415
412
  border-color: var(--zdt_ribbon_flag_white_border);
416
- padding: 3px 10px;
413
+ padding: var(--zd_size3) var(--zd_size10) ;
417
414
  }
418
415
 
419
416
  .sticker.small {
@@ -435,25 +432,25 @@
435
432
  .after,
436
433
  .before {
437
434
  position: absolute;
438
- top: 0;
439
- bottom: 0;
440
- width: 10px;
435
+ top: 0 ;
436
+ bottom: 0 ;
437
+ width: var(--zd_size10) ;
441
438
  }
442
439
 
443
440
  [dir=ltr] .after {
444
- right: -2px;
441
+ right: calc( var(--zd_size2) * -1 ) ;
445
442
  }
446
443
 
447
444
  [dir=rtl] .after {
448
- left: -2px;
445
+ left: calc( var(--zd_size2) * -1 ) ;
449
446
  }
450
447
 
451
448
  [dir=ltr] .before {
452
- left: -8px;
449
+ left: calc( var(--zd_size8) * -1 ) ;
453
450
  }
454
451
 
455
452
  [dir=rtl] .before {
456
- right: -8px;
453
+ right: calc( var(--zd_size8) * -1 ) ;
457
454
  }
458
455
 
459
456
  .after::after,
@@ -461,8 +458,8 @@
461
458
  .before::after,
462
459
  .before::before {
463
460
  position: absolute;
464
- height: 7px;
465
- width: 7px;
461
+ height: var(--zd_size7) ;
462
+ width: var(--zd_size7) ;
466
463
  content: '';
467
464
  }
468
465
 
@@ -480,12 +477,12 @@
480
477
 
481
478
  .after::after,
482
479
  .before::after {
483
- top: 0;
480
+ top: 0 ;
484
481
  }
485
482
 
486
483
  .after::before,
487
484
  .before::before {
488
- bottom: 0;
485
+ bottom: 0 ;
489
486
  }
490
487
 
491
488
  .children {
@@ -495,11 +492,11 @@
495
492
  }
496
493
 
497
494
  [dir=ltr] .children {
498
- margin-right: 4px;
495
+ margin-right: var(--zd_size4) ;
499
496
  }
500
497
 
501
498
  [dir=rtl] .children {
502
- margin-left: 4px;
499
+ margin-left: var(--zd_size4) ;
503
500
  }
504
501
 
505
502
  .childText {
@@ -21,9 +21,7 @@ export default function RippleEffect(props) {
21
21
  });
22
22
  }
23
23
  RippleEffect.defaultProps = defaultProps;
24
- RippleEffect.propTypes = propTypes;
25
-
26
- // if (__DOCS__) {
24
+ RippleEffect.propTypes = propTypes; // if (__DOCS__) {
27
25
  // RippleEffect.docs = {
28
26
  // componentGroup: 'RippleEffect',
29
27
  // folderName: 'Style Guide'
@@ -2,8 +2,8 @@
2
2
  import React, { PureComponent } from 'react';
3
3
  import { GroupSelect_defaultProps } from './props/defaultProps';
4
4
  import { GroupSelect_propTypes } from './props/propTypes';
5
-
6
5
  /**** Components ****/
6
+
7
7
  import Popup from '../Popup/Popup';
8
8
  import TextBoxIcon from '../TextBoxIcon/TextBoxIcon';
9
9
  import Textbox from '../TextBox/TextBox';
@@ -18,13 +18,14 @@ import { getUniqueId } from '../Provider/IdProvider';
18
18
  import ResponsiveDropBox from '../ResponsiveDropBox/ResponsiveDropBox';
19
19
  import { ResponsiveReceiver } from '../Responsive/CustomResponsive';
20
20
  import style from './Select.module.css';
21
-
22
21
  /**** Methods ****/
22
+
23
23
  import { makeGetGroupSelectOptions, optionIdGrouping, makeGetGroupSelectFilterSuggestions, extractOptionId } from '../utils/dropDownUtils';
24
24
  import { getIsEmptyValue, scrollTo, debounce, getSearchString, findScrollEnd, getKeyValue } from '../utils/Common';
25
-
26
25
  /* eslint-disable react/no-unused-prop-types */
26
+
27
27
  /* eslint-disable react/sort-prop-types */
28
+
28
29
  /* eslint-disable react/forbid-component-props */
29
30
 
30
31
  export class GroupSelectComponent extends PureComponent {
@@ -84,9 +85,11 @@ export class GroupSelectComponent extends PureComponent {
84
85
  };
85
86
  this._isMounted = false;
86
87
  }
88
+
87
89
  componentDidMount() {
88
90
  this._isMounted = true;
89
91
  }
92
+
90
93
  componentDidUpdate(prevProps) {
91
94
  let {
92
95
  groupedOptions,
@@ -106,6 +109,7 @@ export class GroupSelectComponent extends PureComponent {
106
109
  } = this;
107
110
  let newOptionIds = allOptionIds;
108
111
  let newSelectedId = selectedId;
112
+
109
113
  if (groupedOptions !== prevProps.groupedOptions) {
110
114
  let {
111
115
  revampedGroups,
@@ -121,6 +125,7 @@ export class GroupSelectComponent extends PureComponent {
121
125
  allOptionIds
122
126
  });
123
127
  }
128
+
124
129
  if (selectedOption !== prevProps.selectedOption) {
125
130
  let {
126
131
  selectedId,
@@ -132,12 +137,14 @@ export class GroupSelectComponent extends PureComponent {
132
137
  hoverIndex
133
138
  });
134
139
  }
140
+
135
141
  let {
136
142
  suggestionOptionIds
137
143
  } = this.handleFilterSuggestions();
138
144
  let hoverId = getIsEmptyValue(suggestionOptionIds[hoverIndex]) ? '' : suggestionOptionIds[hoverIndex];
139
145
  let selSuggestion = this[`suggestion_${hoverId}`];
140
146
  isPopupOpen && scrollTo(suggestionContainer, selSuggestion);
147
+
141
148
  if (isPopupOpen !== prevProps.isPopupOpen) {
142
149
  if (isPopupOpen) {
143
150
  setTimeout(() => {
@@ -156,9 +163,11 @@ export class GroupSelectComponent extends PureComponent {
156
163
  }
157
164
  }
158
165
  }
166
+
159
167
  componentWillUnmount() {
160
168
  this._isMounted = false;
161
169
  }
170
+
162
171
  handleGetGroupSelectOptions(props) {
163
172
  let {
164
173
  groupedOptions
@@ -167,6 +176,7 @@ export class GroupSelectComponent extends PureComponent {
167
176
  groupedOptions
168
177
  });
169
178
  }
179
+
170
180
  handleGetSelectedId(props, allOptionIds) {
171
181
  let {
172
182
  selectedOption,
@@ -178,19 +188,23 @@ export class GroupSelectComponent extends PureComponent {
178
188
  } = selectedOption;
179
189
  let selectedId = optionIdGrouping(selected, groupId);
180
190
  let selectedIdIndex = allOptionIds.indexOf(selectedId);
191
+
181
192
  if (selectedIdIndex === -1) {
182
193
  selectedIdIndex = 0;
194
+
183
195
  if (isDefaultSelectValue) {
184
196
  [selectedId] = allOptionIds;
185
197
  } else {
186
198
  selectedId = '';
187
199
  }
188
200
  }
201
+
189
202
  return {
190
203
  selectedId,
191
204
  hoverIndex: selectedIdIndex
192
205
  };
193
206
  }
207
+
194
208
  handleFilterSuggestions() {
195
209
  let {
196
210
  needSearch,
@@ -201,6 +215,7 @@ export class GroupSelectComponent extends PureComponent {
201
215
  searchStr = '',
202
216
  allOptionIds
203
217
  } = this.state;
218
+
204
219
  if (needSearch && searchStr && searchStr.trim().length) {
205
220
  searchStr = getSearchString(searchStr);
206
221
  let {
@@ -216,11 +231,13 @@ export class GroupSelectComponent extends PureComponent {
216
231
  suggestionOptionIds
217
232
  };
218
233
  }
234
+
219
235
  return {
220
236
  suggestionGroups: revampedGroups,
221
237
  suggestionOptionIds: allOptionIds
222
238
  };
223
239
  }
240
+
224
241
  handleSearchOptions() {
225
242
  let {
226
243
  onSearch
@@ -230,6 +247,7 @@ export class GroupSelectComponent extends PureComponent {
230
247
  } = this.state;
231
248
  searchStr && this.handleFetchOptions(onSearch, searchStr);
232
249
  }
250
+
233
251
  handleSearch(value) {
234
252
  // let { value = '' } = e.target;
235
253
  let {
@@ -252,6 +270,7 @@ export class GroupSelectComponent extends PureComponent {
252
270
  }
253
271
  });
254
272
  }
273
+
255
274
  handleKeyDown(e) {
256
275
  let {
257
276
  isPopupOpen,
@@ -267,33 +286,38 @@ export class GroupSelectComponent extends PureComponent {
267
286
  let {
268
287
  keyCode
269
288
  } = e;
289
+
270
290
  if (!isPopupOpen && !isPopupOpenOnEnter) {
271
291
  onKeyDown && onKeyDown(e);
272
292
  }
293
+
273
294
  if (isPopupOpen && (keyCode === 38 || keyCode === 40) && e.preventDefault) {
274
295
  e.preventDefault(); //prevent body scroll
275
296
  } else if (!isPopupOpen && keyCode === 40) {
276
297
  e.preventDefault(); //prevent body scroll
298
+
277
299
  this.togglePopup(e);
278
300
  }
301
+
279
302
  if (keyCode === 38 && isPopupOpen && suggestionOptionIds.length) {
280
- if (hoverIndex === 0) {
281
- // hoverIndex = options.length - 1;
303
+ if (hoverIndex === 0) {// hoverIndex = options.length - 1;
282
304
  } else {
283
305
  hoverIndex -= 1;
284
306
  }
307
+
285
308
  this.setState({
286
309
  hoverIndex
287
310
  });
288
311
  } else if (keyCode === 40 && isPopupOpen && suggestionOptionIds.length) {
289
- if (hoverIndex === suggestionOptionIds.length - 1) {
290
- // hoverIndex = 0;
312
+ if (hoverIndex === suggestionOptionIds.length - 1) {// hoverIndex = 0;
291
313
  } else {
292
314
  if (hoverIndex === suggestionOptionIds.length - 3) {
293
315
  this.handleGetNextOptions();
294
316
  }
317
+
295
318
  hoverIndex += 1;
296
319
  }
320
+
297
321
  this.setState({
298
322
  hoverIndex
299
323
  });
@@ -304,8 +328,7 @@ export class GroupSelectComponent extends PureComponent {
304
328
  } else if (keyCode === 27) {
305
329
  this.valueInput && this.valueInput.focus({
306
330
  preventScroll: true
307
- });
308
- // this.handlePopupClose(e);
331
+ }); // this.handlePopupClose(e);
309
332
  }
310
333
  }
311
334
 
@@ -321,6 +344,7 @@ export class GroupSelectComponent extends PureComponent {
321
344
  hoverIndex: newHoverIndex
322
345
  });
323
346
  }
347
+
324
348
  handleChange(id, value, index, e) {
325
349
  e && e.preventDefault && e.preventDefault();
326
350
  let {
@@ -334,13 +358,13 @@ export class GroupSelectComponent extends PureComponent {
334
358
  id: selected,
335
359
  groupId
336
360
  } = extractOptionId(id);
361
+
337
362
  if (!getIsEmptyValue(id) && !isReadOnly) {
338
363
  onChange && onChange({
339
364
  groupId,
340
365
  selected
341
366
  }, normalizedAllOptions[id]);
342
- this.handlePopupClose();
343
- // this.valueInput && this.valueInput.focus({preventScroll:true});
367
+ this.handlePopupClose(); // this.valueInput && this.valueInput.focus({preventScroll:true});
344
368
  }
345
369
  }
346
370
 
@@ -352,6 +376,7 @@ export class GroupSelectComponent extends PureComponent {
352
376
  } = this.props;
353
377
  !isReadOnly && togglePopup(e, defaultDropBoxPosition ? `${defaultDropBoxPosition}Center` : null);
354
378
  }
379
+
355
380
  handlePopupClose(e) {
356
381
  let {
357
382
  closePopupOnly,
@@ -362,15 +387,19 @@ export class GroupSelectComponent extends PureComponent {
362
387
  });
363
388
  isPopupOpen && closePopupOnly(e);
364
389
  }
390
+
365
391
  suggestionContainerRef(el) {
366
392
  this.suggestionContainer = el;
367
393
  }
394
+
368
395
  suggestionItemRef(el, index, id) {
369
396
  this[`suggestion_${id}`] = el;
370
397
  }
398
+
371
399
  searchInputRef(el) {
372
400
  this.searchInput = el;
373
401
  }
402
+
374
403
  valueInputRef(el) {
375
404
  let {
376
405
  getRef
@@ -378,12 +407,14 @@ export class GroupSelectComponent extends PureComponent {
378
407
  this.valueInput = el;
379
408
  getRef && getRef(el);
380
409
  }
410
+
381
411
  handleSelectFocus(e) {
382
412
  let {
383
413
  target
384
414
  } = e || {};
385
415
  target && target.setSelectionRange(target, 0);
386
416
  }
417
+
387
418
  handleClearSearch() {
388
419
  this.handleSearch('');
389
420
  setTimeout(() => {
@@ -392,28 +423,33 @@ export class GroupSelectComponent extends PureComponent {
392
423
  });
393
424
  }, 1);
394
425
  }
426
+
395
427
  handleValueInputChange(e) {
396
428
  let typeString = getKeyValue(e);
397
429
  let {
398
430
  isPopupOpen,
399
431
  autoSelectOnType
400
432
  } = this.props;
433
+
401
434
  if (!isPopupOpen && autoSelectOnType) {
402
435
  this.valueInputTypeString += (typeString || '').trim();
403
436
  this.handleChangeOnType();
404
437
  }
405
438
  }
439
+
406
440
  handleChangeOnType() {
407
441
  let {
408
442
  revampedGroups
409
443
  } = this.state;
410
444
  let typeString = this.valueInputTypeString;
411
445
  this.valueInputTypeString = '';
446
+
412
447
  let changeValue = () => {
413
448
  let id = this.autoSelectSuggestions[this.autoSelectIndex];
414
449
  let {
415
450
  suggestionOptionIds
416
451
  } = this.handleFilterSuggestions();
452
+
417
453
  if (!getIsEmptyValue(id)) {
418
454
  this.handleChange(id);
419
455
  let hoverIndex = suggestionOptionIds.indexOf(id);
@@ -422,12 +458,14 @@ export class GroupSelectComponent extends PureComponent {
422
458
  });
423
459
  }
424
460
  };
461
+
425
462
  if (typeString && typeString === this.valueInputSearchString) {
426
463
  if (this.autoSelectIndex < this.autoSelectSuggestions.length - 1) {
427
464
  this.autoSelectIndex += 1;
428
465
  } else {
429
466
  this.autoSelectIndex = 0;
430
467
  }
468
+
431
469
  changeValue();
432
470
  } else if (typeString) {
433
471
  this.valueInputSearchString = typeString;
@@ -444,11 +482,13 @@ export class GroupSelectComponent extends PureComponent {
444
482
  changeValue();
445
483
  }
446
484
  }
485
+
447
486
  handleScroll(e) {
448
487
  let ele = e.target;
449
488
  let isScrollReachedBottom = findScrollEnd(ele);
450
489
  isScrollReachedBottom && this.handleGetNextOptions();
451
490
  }
491
+
452
492
  handleFetchOptions(APICall) {
453
493
  let searchStr = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : '';
454
494
  // let funcArgs = args.slice(1, args.length);
@@ -458,10 +498,12 @@ export class GroupSelectComponent extends PureComponent {
458
498
  let {
459
499
  _isMounted
460
500
  } = this;
501
+
461
502
  if (!isFetchingOptions && APICall) {
462
503
  this.setState({
463
504
  isFetchingOptions: true
464
505
  });
506
+
465
507
  try {
466
508
  return APICall(searchStr).then(() => {
467
509
  _isMounted && this.setState({
@@ -479,6 +521,7 @@ export class GroupSelectComponent extends PureComponent {
479
521
  }
480
522
  }
481
523
  }
524
+
482
525
  handleGetNextOptions() {
483
526
  let {
484
527
  isNextOptions,
@@ -489,6 +532,7 @@ export class GroupSelectComponent extends PureComponent {
489
532
  } = this.state;
490
533
  isNextOptions && getNextOptions && this.handleFetchOptions(getNextOptions, searchStr);
491
534
  }
535
+
492
536
  responsiveFunc(_ref) {
493
537
  let {
494
538
  mediaQueryOR
@@ -499,6 +543,7 @@ export class GroupSelectComponent extends PureComponent {
499
543
  }])
500
544
  };
501
545
  }
546
+
502
547
  render() {
503
548
  let {
504
549
  isDisabled,
@@ -735,6 +780,7 @@ export class GroupSelectComponent extends PureComponent {
735
780
  }, /*#__PURE__*/React.createElement(Loader, null))), getFooter ? /*#__PURE__*/React.createElement(CardFooter, null, getFooter()) : null)));
736
781
  }) : null);
737
782
  }
783
+
738
784
  }
739
785
  GroupSelectComponent.propTypes = GroupSelect_propTypes;
740
786
  GroupSelectComponent.defaultProps = GroupSelect_defaultProps;
@@ -742,9 +788,7 @@ GroupSelectComponent.displayName = 'GroupSelect';
742
788
  let GroupSelect = Popup(GroupSelectComponent);
743
789
  GroupSelect.defaultProps = GroupSelectComponent.defaultProps;
744
790
  GroupSelect.propTypes = GroupSelectComponent.propTypes;
745
- export default GroupSelect;
746
-
747
- // if (__DOCS__) {
791
+ export default GroupSelect; // if (__DOCS__) {
748
792
  // GroupSelect.docs = {
749
793
  // componentGroup: 'Form Elements',
750
794
  // folderName: 'Style Guide'