@zohodesk/components 1.0.0-test-252 → 1.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (601) hide show
  1. package/README.md +161 -1
  2. package/assets/Appearance/dark/mode/darkMode.module.css +181 -179
  3. package/assets/Appearance/dark/themes/blue/blueDarkCTAModifyCategory.module.css +452 -0
  4. package/assets/Appearance/dark/themes/blue/blueDarkCTATheme.module.css +31 -31
  5. package/assets/Appearance/dark/themes/blue/blueDarkComponentTheme.module.css +3 -0
  6. package/assets/Appearance/dark/themes/green/greenDarkCTAModifyCategory.module.css +452 -0
  7. package/assets/Appearance/dark/themes/green/greenDarkCTATheme.module.css +30 -30
  8. package/assets/Appearance/dark/themes/green/greenDarkComponentTheme.module.css +3 -0
  9. package/assets/Appearance/dark/themes/orange/orangeDarkCTAModifyCategory.module.css +452 -0
  10. package/assets/Appearance/dark/themes/orange/orangeDarkCTATheme.module.css +30 -30
  11. package/assets/Appearance/dark/themes/orange/orangeDarkComponentTheme.module.css +3 -0
  12. package/assets/Appearance/dark/themes/red/redDarkCTAModifyCategory.module.css +452 -0
  13. package/assets/Appearance/dark/themes/red/redDarkCTATheme.module.css +30 -30
  14. package/assets/Appearance/dark/themes/red/redDarkComponentTheme.module.css +3 -0
  15. package/assets/Appearance/dark/themes/yellow/yellowDarkCTAModifyCategory.module.css +452 -0
  16. package/assets/Appearance/dark/themes/yellow/yellowDarkCTATheme.module.css +30 -30
  17. package/assets/Appearance/dark/themes/yellow/yellowDarkComponentTheme.module.css +3 -0
  18. package/assets/Appearance/default/mode/defaultMode.module.css +177 -175
  19. package/assets/Appearance/default/themes/blue/blueDefaultCTAModifyCategory.module.css +452 -0
  20. package/assets/Appearance/default/themes/blue/blueDefaultCTATheme.module.css +31 -31
  21. package/assets/Appearance/default/themes/blue/blueDefaultComponentTheme.module.css +3 -0
  22. package/assets/Appearance/default/themes/green/greenDefaultCTAModifyCategory.module.css +452 -0
  23. package/assets/Appearance/default/themes/green/greenDefaultCTATheme.module.css +30 -30
  24. package/assets/Appearance/default/themes/green/greenDefaultComponentTheme.module.css +3 -0
  25. package/assets/Appearance/default/themes/orange/orangeDefaultCTAModifyCategory.module.css +452 -0
  26. package/assets/Appearance/default/themes/orange/orangeDefaultCTATheme.module.css +30 -30
  27. package/assets/Appearance/default/themes/orange/orangeDefaultComponentTheme.module.css +3 -0
  28. package/assets/Appearance/default/themes/red/redDefaultCTAModifyCategory.module.css +452 -0
  29. package/assets/Appearance/default/themes/red/redDefaultCTATheme.module.css +30 -30
  30. package/assets/Appearance/default/themes/red/redDefaultComponentTheme.module.css +3 -0
  31. package/assets/Appearance/default/themes/yellow/yellowDefaultCTAModifyCategory.module.css +452 -0
  32. package/assets/Appearance/default/themes/yellow/yellowDefaultCTATheme.module.css +30 -30
  33. package/assets/Appearance/default/themes/yellow/yellowDefaultComponentTheme.module.css +3 -0
  34. package/assets/Appearance/pureDark/mode/pureDarkMode.module.css +182 -180
  35. package/assets/Appearance/pureDark/themes/blue/bluePureDarkCTAModifyCategory.module.css +452 -0
  36. package/assets/Appearance/pureDark/themes/blue/bluePureDarkCTATheme.module.css +31 -31
  37. package/assets/Appearance/pureDark/themes/blue/bluePureDarkComponentTheme.module.css +3 -0
  38. package/assets/Appearance/pureDark/themes/green/greenPureDarkCTAModifyCategory.module.css +452 -0
  39. package/assets/Appearance/pureDark/themes/green/greenPureDarkCTATheme.module.css +30 -30
  40. package/assets/Appearance/pureDark/themes/green/greenPureDarkComponentTheme.module.css +3 -0
  41. package/assets/Appearance/pureDark/themes/orange/orangePureDarkCTAModifyCategory.module.css +452 -0
  42. package/assets/Appearance/pureDark/themes/orange/orangePureDarkCTATheme.module.css +30 -30
  43. package/assets/Appearance/pureDark/themes/orange/orangePureDarkComponentTheme.module.css +3 -0
  44. package/assets/Appearance/pureDark/themes/red/redPureDarkCTAModifyCategory.module.css +452 -0
  45. package/assets/Appearance/pureDark/themes/red/redPureDarkCTATheme.module.css +30 -30
  46. package/assets/Appearance/pureDark/themes/red/redPureDarkComponentTheme.module.css +3 -0
  47. package/assets/Appearance/pureDark/themes/yellow/yellowPureDarkCTAModifyCategory.module.css +452 -0
  48. package/assets/Appearance/pureDark/themes/yellow/yellowPureDarkCTATheme.module.css +30 -30
  49. package/assets/Appearance/pureDark/themes/yellow/yellowPureDarkComponentTheme.module.css +3 -0
  50. package/assets/Contrast/darkContrastLightness.module.css +39 -0
  51. package/assets/Contrast/defaultContrastLightness.module.css +39 -0
  52. package/assets/Contrast/pureDarkContrastLightness.module.css +39 -0
  53. package/css_error.log +1 -0
  54. package/es/Accordion/Accordion.js +19 -9
  55. package/es/Accordion/AccordionItem.js +13 -8
  56. package/es/Accordion/props/defaultProps.js +6 -2
  57. package/es/Accordion/props/propTypes.js +3 -0
  58. package/es/Animation/Animation.js +10 -9
  59. package/es/AppContainer/AppContainer.js +38 -15
  60. package/es/AppContainer/AppContainer.module.css +2 -2
  61. package/es/AppContainer/props/defaultProps.js +3 -1
  62. package/es/AppContainer/props/propTypes.js +2 -0
  63. package/es/Avatar/Avatar.js +48 -25
  64. package/es/Avatar/Avatar.module.css +59 -18
  65. package/es/Avatar/props/defaultProps.js +4 -1
  66. package/es/Avatar/props/propTypes.js +5 -2
  67. package/es/AvatarTeam/AvatarTeam.js +21 -11
  68. package/es/AvatarTeam/AvatarTeam.module.css +49 -21
  69. package/es/AvatarTeam/props/defaultProps.js +5 -1
  70. package/es/AvatarTeam/props/propTypes.js +5 -1
  71. package/es/Button/Button.js +55 -51
  72. package/{lib/Button → es/Button/css}/Button.module.css +62 -58
  73. package/es/Button/css/cssJSLogic.js +53 -0
  74. package/es/Button/index.js +2 -0
  75. package/es/Button/props/defaultProps.js +3 -1
  76. package/es/Button/props/propTypes.js +6 -2
  77. package/es/Buttongroup/Buttongroup.js +24 -16
  78. package/es/Buttongroup/Buttongroup.module.css +45 -28
  79. package/es/Buttongroup/props/defaultProps.js +3 -1
  80. package/es/Buttongroup/props/propTypes.js +3 -1
  81. package/es/Card/Card.js +48 -26
  82. package/es/Card/props/defaultProps.js +12 -2
  83. package/es/Card/props/propTypes.js +2 -2
  84. package/es/CheckBox/CheckBox.js +13 -9
  85. package/es/CheckBox/CheckBox.module.css +16 -16
  86. package/es/CheckBox/props/propTypes.js +1 -0
  87. package/es/DateTime/CalendarView.js +46 -19
  88. package/es/DateTime/DateTime.js +139 -77
  89. package/es/DateTime/DateTime.module.css +51 -48
  90. package/es/DateTime/DateTimePopupFooter.js +4 -2
  91. package/es/DateTime/DateTimePopupHeader.js +30 -11
  92. package/es/DateTime/DateWidget.js +122 -51
  93. package/es/DateTime/DateWidget.module.css +5 -5
  94. package/es/DateTime/DaysRow.js +6 -3
  95. package/es/DateTime/Time.js +10 -2
  96. package/es/DateTime/YearView.js +41 -9
  97. package/es/DateTime/YearView.module.css +33 -15
  98. package/es/DateTime/__tests__/CalendarView.spec.js +1 -0
  99. package/es/DateTime/__tests__/DateTime.spec.js +1 -0
  100. package/es/DateTime/__tests__/DateWidget.spec.js +2 -3
  101. package/es/DateTime/common.js +3 -0
  102. package/es/DateTime/constants.js +1 -0
  103. package/es/DateTime/dateFormatUtils/dateFormat.js +63 -30
  104. package/es/DateTime/dateFormatUtils/dateFormats.js +42 -0
  105. package/es/DateTime/dateFormatUtils/dayChange.js +13 -4
  106. package/es/DateTime/dateFormatUtils/index.js +59 -2
  107. package/es/DateTime/dateFormatUtils/monthChange.js +8 -0
  108. package/es/DateTime/dateFormatUtils/timeChange.js +22 -6
  109. package/es/DateTime/dateFormatUtils/yearChange.js +11 -2
  110. package/es/DateTime/index.js +1 -1
  111. package/es/DateTime/objectUtils.js +14 -20
  112. package/es/DateTime/props/defaultProps.js +2 -1
  113. package/es/DateTime/props/propTypes.js +5 -2
  114. package/es/DateTime/typeChecker.js +3 -0
  115. package/es/DateTime/validator.js +58 -6
  116. package/es/DropBox/DropBox.js +82 -218
  117. package/es/DropBox/DropBoxElement/DropBoxElement.js +132 -0
  118. package/es/DropBox/DropBoxElement/css/DropBoxElement.module.css +435 -0
  119. package/es/DropBox/DropBoxElement/css/cssJSLogic.js +91 -0
  120. package/es/DropBox/DropBoxElement/props/defaultProps.js +18 -0
  121. package/es/DropBox/DropBoxElement/props/propTypes.js +45 -0
  122. package/es/DropBox/DropBoxElement/useDropboxPosCalc.js +54 -0
  123. package/es/DropBox/__tests__/DropBox.spec.js +2 -2
  124. package/es/DropBox/css/DropBox.module.css +59 -0
  125. package/es/DropBox/css/cssJSLogic.js +14 -0
  126. package/es/DropBox/props/defaultProps.js +9 -15
  127. package/es/DropBox/props/propTypes.js +9 -41
  128. package/es/DropDown/DropDown.js +16 -9
  129. package/es/DropDown/DropDown.module.css +2 -2
  130. package/es/DropDown/DropDownHeading.js +18 -11
  131. package/es/DropDown/DropDownHeading.module.css +3 -3
  132. package/es/DropDown/DropDownItem.js +8 -1
  133. package/es/DropDown/DropDownItem.module.css +9 -9
  134. package/es/DropDown/DropDownSearch.js +4 -0
  135. package/es/DropDown/DropDownSeparator.js +1 -0
  136. package/es/DropDown/DropDownSeparator.module.css +2 -2
  137. package/es/DropDown/__tests__/DropDown.spec.js +1 -2
  138. package/es/DropDown/index.js +7 -0
  139. package/es/DropDown/props/defaultProps.js +3 -1
  140. package/es/DropDown/props/propTypes.js +2 -1
  141. package/es/Heading/Heading.js +8 -7
  142. package/es/Heading/Heading.module.css +2 -2
  143. package/es/Label/Label.js +14 -9
  144. package/es/Label/Label.module.css +1 -1
  145. package/es/Label/props/defaultProps.js +2 -1
  146. package/es/Label/props/propTypes.js +1 -0
  147. package/es/Layout/Box.js +19 -4
  148. package/es/Layout/Container.js +18 -5
  149. package/es/Layout/Layout.module.css +15 -15
  150. package/es/Layout/index.js +9 -10
  151. package/es/Layout/props/defaultProps.js +6 -2
  152. package/es/Layout/props/propTypes.js +7 -3
  153. package/es/Layout/utils.js +5 -1
  154. package/es/ListItem/ListContainer.js +21 -9
  155. package/es/ListItem/ListItem.js +30 -14
  156. package/es/ListItem/ListItem.module.css +37 -30
  157. package/es/ListItem/ListItemWithAvatar.js +30 -15
  158. package/es/ListItem/ListItemWithCheckBox.js +22 -10
  159. package/es/ListItem/ListItemWithIcon.js +29 -14
  160. package/es/ListItem/ListItemWithRadio.js +22 -10
  161. package/es/ListItem/index.js +6 -0
  162. package/es/ListItem/props/defaultProps.js +18 -6
  163. package/es/ListItem/props/propTypes.js +13 -1
  164. package/es/Modal/Modal.js +35 -17
  165. package/es/MultiSelect/AdvancedGroupMultiSelect.js +100 -20
  166. package/es/MultiSelect/AdvancedMultiSelect.js +45 -19
  167. package/es/MultiSelect/EmptyState.js +6 -0
  168. package/es/MultiSelect/MultiSelect.js +129 -46
  169. package/es/MultiSelect/MultiSelect.module.css +32 -31
  170. package/es/MultiSelect/MultiSelectHeader.js +3 -0
  171. package/es/MultiSelect/MultiSelectWithAvatar.js +43 -19
  172. package/es/MultiSelect/SelectedOptions.js +6 -3
  173. package/es/MultiSelect/SelectedOptions.module.css +5 -5
  174. package/es/MultiSelect/Suggestions.js +13 -6
  175. package/es/MultiSelect/__tests__/MultiSelect.spec.js +4 -6
  176. package/es/MultiSelect/index.js +4 -0
  177. package/es/MultiSelect/props/defaultProps.js +11 -4
  178. package/es/MultiSelect/props/propTypes.js +17 -5
  179. package/es/PopOver/PopOver.js +25 -9
  180. package/es/PopOver/__tests__/PopOver.spec.js +2 -1
  181. package/es/PopOver/index.js +3 -0
  182. package/es/Popup/Popup.js +80 -31
  183. package/es/Popup/__tests__/Popup.spec.js +17 -5
  184. package/es/Popup/viewPort.js +16 -4
  185. package/es/Provider/AvatarSize.js +1 -0
  186. package/es/Provider/IdProvider.js +16 -10
  187. package/es/Provider/LibraryContext.js +6 -4
  188. package/es/Provider/NumberGenerator/NumberGenerator.js +21 -7
  189. package/es/Provider/ZindexProvider.js +9 -2
  190. package/es/Provider/index.js +4 -0
  191. package/es/Radio/Radio.js +9 -7
  192. package/es/Radio/Radio.module.css +3 -3
  193. package/es/Responsive/CustomResponsive.js +37 -21
  194. package/es/Responsive/RefWrapper.js +6 -7
  195. package/es/Responsive/ResizeComponent.js +35 -25
  196. package/es/Responsive/ResizeObserver.js +26 -6
  197. package/es/Responsive/Responsive.js +34 -20
  198. package/es/Responsive/index.js +9 -8
  199. package/es/Responsive/sizeObservers.js +28 -7
  200. package/es/Responsive/utils/index.js +7 -5
  201. package/es/Responsive/utils/shallowCompare.js +7 -2
  202. package/es/Responsive/windowResizeObserver.js +7 -0
  203. package/es/ResponsiveDropBox/ResponsiveDropBox.js +4 -0
  204. package/es/ResponsiveDropBox/ResponsiveDropBox.module.css +2 -2
  205. package/es/Ribbon/Ribbon.js +21 -15
  206. package/es/Ribbon/Ribbon.module.css +133 -55
  207. package/es/Ribbon/props/defaultProps.js +2 -1
  208. package/es/Ribbon/props/propTypes.js +2 -1
  209. package/es/RippleEffect/RippleEffect.js +6 -7
  210. package/es/Select/GroupSelect.js +71 -23
  211. package/es/Select/Select.js +115 -50
  212. package/es/Select/Select.module.css +23 -23
  213. package/es/Select/SelectWithAvatar.js +31 -12
  214. package/es/Select/SelectWithIcon.js +60 -14
  215. package/es/Select/__tests__/Select.spec.js +6 -8
  216. package/es/Select/index.js +4 -0
  217. package/es/Select/props/defaultProps.js +6 -1
  218. package/es/Select/props/propTypes.js +10 -4
  219. package/es/Stencils/Stencils.js +10 -9
  220. package/es/Stencils/Stencils.module.css +2 -2
  221. package/es/Switch/Switch.js +14 -8
  222. package/es/Switch/Switch.module.css +49 -32
  223. package/es/Switch/props/defaultProps.js +2 -1
  224. package/es/Switch/props/propTypes.js +1 -0
  225. package/es/Tab/Tab.js +14 -11
  226. package/es/Tab/Tab.module.css +14 -15
  227. package/es/Tab/TabContent.js +6 -3
  228. package/es/Tab/TabContentWrapper.js +6 -2
  229. package/es/Tab/TabWrapper.js +9 -4
  230. package/es/Tab/Tabs.js +85 -21
  231. package/es/Tab/Tabs.module.css +36 -40
  232. package/es/Tab/__tests__/Tab.spec.js +4 -12
  233. package/es/Tab/__tests__/TabWrapper.spec.js +1 -0
  234. package/es/Tab/props/defaultProps.js +10 -5
  235. package/es/Tab/props/propTypes.js +10 -5
  236. package/es/Tag/Tag.js +16 -10
  237. package/es/Tag/Tag.module.css +10 -10
  238. package/es/Tag/props/defaultProps.js +2 -1
  239. package/es/Tag/props/propTypes.js +2 -1
  240. package/es/TextBox/TextBox.js +26 -10
  241. package/es/TextBox/TextBox.module.css +6 -5
  242. package/es/TextBox/__tests__/TextBox.spec.js +1 -4
  243. package/es/TextBox/props/defaultProps.js +2 -1
  244. package/es/TextBox/props/propTypes.js +2 -1
  245. package/es/TextBoxIcon/TextBoxIcon.js +39 -13
  246. package/es/TextBoxIcon/TextBoxIcon.module.css +7 -6
  247. package/es/TextBoxIcon/__tests__/TextBoxIcon.spec.js +2 -7
  248. package/es/TextBoxIcon/props/defaultProps.js +2 -1
  249. package/es/TextBoxIcon/props/propTypes.js +1 -0
  250. package/es/Textarea/Textarea.js +23 -10
  251. package/es/Textarea/Textarea.module.css +6 -6
  252. package/es/Textarea/__tests__/Textarea.spec.js +2 -2
  253. package/es/Textarea/props/defaultProps.js +2 -1
  254. package/es/Textarea/props/propTypes.js +1 -0
  255. package/es/Tooltip/Tooltip.js +67 -21
  256. package/es/Tooltip/Tooltip.module.css +40 -8
  257. package/es/Tooltip/__tests__/Tooltip.spec.js +5 -0
  258. package/es/VelocityAnimation/VelocityAnimation/VelocityAnimation.js +7 -6
  259. package/es/VelocityAnimation/VelocityAnimationGroup/VelocityAnimationGroup.js +11 -8
  260. package/es/VelocityAnimation/index.js +2 -0
  261. package/es/common/a11y.module.css +4 -0
  262. package/es/common/animation.module.css +8 -8
  263. package/es/common/avatarsizes.module.css +6 -2
  264. package/es/common/basicReset.module.css +3 -3
  265. package/es/common/boxShadow.module.css +34 -0
  266. package/es/common/common.module.css +24 -24
  267. package/es/common/customscroll.module.css +4 -2
  268. package/es/common/reset.module.css +1 -0
  269. package/es/css.js +2 -1
  270. package/es/deprecated/AdvancedMultiSelect.module.css +18 -18
  271. package/es/deprecated/PortalLayer/PortalLayer.js +30 -24
  272. package/es/index.js +30 -146
  273. package/es/semantic/Button/Button.js +9 -7
  274. package/es/semantic/Button/semanticButton.module.css +1 -1
  275. package/es/semantic/index.js +1 -0
  276. package/es/utils/Common.js +74 -7
  277. package/es/utils/ContextOptimizer.js +4 -5
  278. package/es/utils/__tests__/debounce.spec.js +2 -2
  279. package/es/utils/constructFullName.js +2 -0
  280. package/es/utils/css/compileClassNames.js +28 -0
  281. package/es/utils/css/mergeStyle.js +57 -0
  282. package/es/utils/css/utils.js +24 -0
  283. package/es/utils/datetime/GMTZones.js +48 -0
  284. package/es/utils/datetime/common.js +31 -7
  285. package/es/utils/debounce.js +5 -1
  286. package/es/utils/dropDownUtils.js +71 -13
  287. package/es/utils/getInitial.js +4 -0
  288. package/es/utils/index.js +3 -0
  289. package/es/utils/shallowEqual.js +6 -0
  290. package/install.md +10 -0
  291. package/lib/Accordion/Accordion.js +50 -18
  292. package/lib/Accordion/AccordionItem.js +47 -20
  293. package/lib/Accordion/__tests__/Accordion.spec.js +3 -0
  294. package/lib/Accordion/index.js +3 -0
  295. package/lib/Accordion/props/defaultProps.js +6 -2
  296. package/lib/Accordion/props/propTypes.js +6 -0
  297. package/lib/Animation/Animation.js +44 -21
  298. package/lib/Animation/__tests__/Animation.spec.js +11 -7
  299. package/lib/Animation/props/propTypes.js +3 -0
  300. package/lib/AppContainer/AppContainer.js +75 -27
  301. package/lib/AppContainer/AppContainer.module.css +2 -2
  302. package/lib/AppContainer/props/defaultProps.js +3 -1
  303. package/lib/AppContainer/props/propTypes.js +5 -0
  304. package/lib/Avatar/Avatar.js +97 -44
  305. package/lib/Avatar/Avatar.module.css +59 -18
  306. package/lib/Avatar/__tests__/Avatar.spec.js +44 -0
  307. package/lib/Avatar/props/defaultProps.js +4 -1
  308. package/lib/Avatar/props/propTypes.js +8 -2
  309. package/lib/AvatarTeam/AvatarTeam.js +64 -30
  310. package/lib/AvatarTeam/AvatarTeam.module.css +49 -21
  311. package/lib/AvatarTeam/__tests__/AvatarTeam.spec.js +13 -0
  312. package/lib/AvatarTeam/props/defaultProps.js +5 -1
  313. package/lib/AvatarTeam/props/propTypes.js +8 -1
  314. package/lib/Button/Button.js +64 -74
  315. package/{es/Button → lib/Button/css}/Button.module.css +62 -58
  316. package/lib/Button/css/cssJSLogic.js +41 -0
  317. package/lib/Button/index.js +23 -0
  318. package/lib/Button/props/defaultProps.js +5 -1
  319. package/lib/Button/props/propTypes.js +11 -3
  320. package/lib/Buttongroup/Buttongroup.js +49 -19
  321. package/lib/Buttongroup/Buttongroup.module.css +45 -28
  322. package/lib/Buttongroup/__test__/Buttongroup.spec.js +10 -0
  323. package/lib/Buttongroup/props/defaultProps.js +3 -1
  324. package/lib/Buttongroup/props/propTypes.js +6 -1
  325. package/lib/Card/Card.js +119 -55
  326. package/lib/Card/__tests__/Card.spec.js +10 -1
  327. package/lib/Card/index.js +4 -0
  328. package/lib/Card/props/defaultProps.js +16 -4
  329. package/lib/Card/props/propTypes.js +5 -2
  330. package/lib/CheckBox/CheckBox.js +76 -48
  331. package/lib/CheckBox/CheckBox.module.css +16 -16
  332. package/lib/CheckBox/__tests__/CheckBox.spec.js +3 -0
  333. package/lib/CheckBox/props/propTypes.js +4 -0
  334. package/lib/DateTime/CalendarView.js +95 -38
  335. package/lib/DateTime/DateTime.js +309 -216
  336. package/lib/DateTime/DateTime.module.css +51 -48
  337. package/lib/DateTime/DateTimePopupFooter.js +30 -5
  338. package/lib/DateTime/DateTimePopupHeader.js +69 -23
  339. package/lib/DateTime/DateWidget.js +370 -260
  340. package/lib/DateTime/DateWidget.module.css +5 -5
  341. package/lib/DateTime/DaysRow.js +28 -3
  342. package/lib/DateTime/Time.js +72 -29
  343. package/lib/DateTime/YearView.js +89 -30
  344. package/lib/DateTime/YearView.module.css +33 -15
  345. package/lib/DateTime/__tests__/CalendarView.spec.js +13 -5
  346. package/lib/DateTime/__tests__/DateTime.spec.js +51 -37
  347. package/lib/DateTime/__tests__/DateWidget.spec.js +10 -8
  348. package/lib/DateTime/common.js +6 -0
  349. package/lib/DateTime/constants.js +1 -0
  350. package/lib/DateTime/dateFormatUtils/dateFormat.js +184 -122
  351. package/lib/DateTime/dateFormatUtils/dateFormats.js +50 -0
  352. package/lib/DateTime/dateFormatUtils/dayChange.js +14 -7
  353. package/lib/DateTime/dateFormatUtils/index.js +99 -13
  354. package/lib/DateTime/dateFormatUtils/monthChange.js +19 -9
  355. package/lib/DateTime/dateFormatUtils/timeChange.js +52 -20
  356. package/lib/DateTime/dateFormatUtils/yearChange.js +22 -11
  357. package/lib/DateTime/index.js +3 -1
  358. package/lib/DateTime/objectUtils.js +24 -20
  359. package/lib/DateTime/props/defaultProps.js +2 -1
  360. package/lib/DateTime/props/propTypes.js +21 -2
  361. package/lib/DateTime/typeChecker.js +4 -0
  362. package/lib/DateTime/validator.js +69 -6
  363. package/lib/DropBox/DropBox.js +102 -249
  364. package/lib/DropBox/DropBoxElement/DropBoxElement.js +145 -0
  365. package/lib/DropBox/DropBoxElement/css/DropBoxElement.module.css +435 -0
  366. package/lib/DropBox/DropBoxElement/css/cssJSLogic.js +81 -0
  367. package/lib/DropBox/DropBoxElement/props/defaultProps.js +25 -0
  368. package/lib/DropBox/DropBoxElement/props/propTypes.js +56 -0
  369. package/lib/DropBox/DropBoxElement/useDropboxPosCalc.js +60 -0
  370. package/lib/DropBox/__tests__/DropBox.spec.js +8 -4
  371. package/lib/DropBox/css/DropBox.module.css +59 -0
  372. package/lib/DropBox/css/cssJSLogic.js +20 -0
  373. package/lib/DropBox/props/defaultProps.js +20 -17
  374. package/lib/DropBox/props/propTypes.js +22 -43
  375. package/lib/DropDown/DropDown.js +58 -10
  376. package/lib/DropDown/DropDown.module.css +2 -2
  377. package/lib/DropDown/DropDownHeading.js +47 -18
  378. package/lib/DropDown/DropDownHeading.module.css +3 -3
  379. package/lib/DropDown/DropDownItem.js +43 -18
  380. package/lib/DropDown/DropDownItem.module.css +9 -9
  381. package/lib/DropDown/DropDownSearch.js +39 -14
  382. package/lib/DropDown/DropDownSeparator.js +23 -1
  383. package/lib/DropDown/DropDownSeparator.module.css +2 -2
  384. package/lib/DropDown/__tests__/DropDown.spec.js +15 -9
  385. package/lib/DropDown/__tests__/DropDownItem.spec.js +9 -4
  386. package/lib/DropDown/__tests__/DropDownSearch.spec.js +3 -0
  387. package/lib/DropDown/index.js +65 -0
  388. package/lib/DropDown/props/defaultProps.js +3 -1
  389. package/lib/DropDown/props/propTypes.js +7 -1
  390. package/lib/Heading/Heading.js +42 -16
  391. package/lib/Heading/Heading.module.css +2 -2
  392. package/lib/Heading/props/propTypes.js +3 -0
  393. package/lib/Label/Label.js +47 -19
  394. package/lib/Label/Label.module.css +1 -1
  395. package/lib/Label/__tests__/Label.spec.js +14 -1
  396. package/lib/Label/props/defaultProps.js +2 -1
  397. package/lib/Label/props/propTypes.js +4 -0
  398. package/lib/Layout/Box.js +41 -16
  399. package/lib/Layout/Container.js +39 -15
  400. package/lib/Layout/Layout.module.css +15 -15
  401. package/lib/Layout/__tests__/Box.spec.js +65 -49
  402. package/lib/Layout/__tests__/Container.spec.js +67 -50
  403. package/lib/Layout/index.js +4 -11
  404. package/lib/Layout/props/defaultProps.js +6 -2
  405. package/lib/Layout/props/propTypes.js +10 -3
  406. package/lib/Layout/utils.js +15 -1
  407. package/lib/ListItem/ListContainer.js +61 -34
  408. package/lib/ListItem/ListItem.js +92 -50
  409. package/lib/ListItem/ListItem.module.css +37 -30
  410. package/lib/ListItem/ListItemWithAvatar.js +98 -54
  411. package/lib/ListItem/ListItemWithCheckBox.js +82 -41
  412. package/lib/ListItem/ListItemWithIcon.js +92 -50
  413. package/lib/ListItem/ListItemWithRadio.js +83 -42
  414. package/lib/ListItem/index.js +55 -0
  415. package/lib/ListItem/props/defaultProps.js +18 -6
  416. package/lib/ListItem/props/propTypes.js +18 -3
  417. package/lib/Modal/Modal.js +51 -13
  418. package/lib/Modal/props/propTypes.js +3 -0
  419. package/lib/MultiSelect/AdvancedGroupMultiSelect.js +300 -167
  420. package/lib/MultiSelect/AdvancedMultiSelect.js +212 -130
  421. package/lib/MultiSelect/EmptyState.js +48 -21
  422. package/lib/MultiSelect/MultiSelect.js +341 -205
  423. package/lib/MultiSelect/MultiSelect.module.css +32 -31
  424. package/lib/MultiSelect/MultiSelectHeader.js +29 -5
  425. package/lib/MultiSelect/MultiSelectWithAvatar.js +126 -65
  426. package/lib/MultiSelect/SelectedOptions.js +42 -14
  427. package/lib/MultiSelect/SelectedOptions.module.css +5 -5
  428. package/lib/MultiSelect/Suggestions.js +66 -29
  429. package/lib/MultiSelect/__tests__/MultiSelect.spec.js +86 -75
  430. package/lib/MultiSelect/index.js +39 -0
  431. package/lib/MultiSelect/props/defaultProps.js +13 -4
  432. package/lib/MultiSelect/props/propTypes.js +20 -5
  433. package/lib/PopOver/PopOver.js +101 -53
  434. package/lib/PopOver/__tests__/PopOver.spec.js +4 -1
  435. package/lib/PopOver/index.js +31 -0
  436. package/lib/PopOver/props/propTypes.js +3 -0
  437. package/lib/Popup/Popup.js +158 -83
  438. package/lib/Popup/__tests__/Popup.spec.js +42 -5
  439. package/lib/Popup/viewPort.js +28 -14
  440. package/lib/Provider/AvatarSize.js +5 -0
  441. package/lib/Provider/Config.js +2 -0
  442. package/lib/Provider/CssProvider.js +4 -0
  443. package/lib/Provider/IdProvider.js +23 -12
  444. package/lib/Provider/LibraryContext.js +32 -10
  445. package/lib/Provider/LibraryContextInit.js +4 -0
  446. package/lib/Provider/NumberGenerator/NumberGenerator.js +43 -14
  447. package/lib/Provider/ZindexProvider.js +15 -3
  448. package/lib/Provider/index.js +81 -0
  449. package/lib/Radio/Radio.js +65 -40
  450. package/lib/Radio/Radio.module.css +3 -3
  451. package/lib/Radio/__tests__/Radiospec.js +9 -5
  452. package/lib/Radio/props/propTypes.js +3 -0
  453. package/lib/Responsive/CustomResponsive.js +76 -26
  454. package/lib/Responsive/RefWrapper.js +15 -7
  455. package/lib/Responsive/ResizeComponent.js +58 -27
  456. package/lib/Responsive/ResizeObserver.js +23 -6
  457. package/lib/Responsive/Responsive.js +76 -24
  458. package/lib/Responsive/index.js +49 -22
  459. package/lib/Responsive/props/propTypes.js +3 -0
  460. package/lib/Responsive/sizeObservers.js +51 -13
  461. package/lib/Responsive/utils/index.js +11 -3
  462. package/lib/Responsive/utils/shallowCompare.js +11 -2
  463. package/lib/Responsive/windowResizeObserver.js +8 -0
  464. package/lib/ResponsiveDropBox/ResponsiveDropBox.js +44 -14
  465. package/lib/ResponsiveDropBox/ResponsiveDropBox.module.css +2 -2
  466. package/lib/ResponsiveDropBox/props/propTypes.js +3 -0
  467. package/lib/Ribbon/Ribbon.js +48 -21
  468. package/lib/Ribbon/Ribbon.module.css +133 -55
  469. package/lib/Ribbon/__tests__/Ribbon.spec.js +22 -0
  470. package/lib/Ribbon/props/defaultProps.js +2 -1
  471. package/lib/Ribbon/props/propTypes.js +5 -1
  472. package/lib/RippleEffect/RippleEffect.js +23 -14
  473. package/lib/RippleEffect/props/propTypes.js +3 -0
  474. package/lib/Select/GroupSelect.js +240 -137
  475. package/lib/Select/Select.js +320 -220
  476. package/lib/Select/Select.module.css +23 -23
  477. package/lib/Select/SelectWithAvatar.js +112 -59
  478. package/lib/Select/SelectWithIcon.js +145 -82
  479. package/lib/Select/__tests__/Select.spec.js +131 -89
  480. package/lib/Select/index.js +39 -0
  481. package/lib/Select/props/defaultProps.js +10 -2
  482. package/lib/Select/props/propTypes.js +13 -4
  483. package/lib/Stencils/Stencils.js +35 -13
  484. package/lib/Stencils/Stencils.module.css +2 -2
  485. package/lib/Stencils/__tests__/Stencils.spec.js +12 -0
  486. package/lib/Stencils/props/propTypes.js +3 -0
  487. package/lib/Switch/Switch.js +64 -35
  488. package/lib/Switch/Switch.module.css +49 -32
  489. package/lib/Switch/props/defaultProps.js +2 -1
  490. package/lib/Switch/props/propTypes.js +4 -0
  491. package/lib/Tab/Tab.js +49 -33
  492. package/lib/Tab/Tab.module.css +14 -15
  493. package/lib/Tab/TabContent.js +15 -6
  494. package/lib/Tab/TabContentWrapper.js +15 -6
  495. package/lib/Tab/TabWrapper.js +37 -17
  496. package/lib/Tab/Tabs.js +193 -94
  497. package/lib/Tab/Tabs.module.css +36 -40
  498. package/lib/Tab/__tests__/Tab.spec.js +74 -70
  499. package/lib/Tab/__tests__/TabContent.spec.js +10 -6
  500. package/lib/Tab/__tests__/TabContentWrapper.spec.js +28 -20
  501. package/lib/Tab/__tests__/TabWrapper.spec.js +12 -0
  502. package/lib/Tab/__tests__/Tabs.spec.js +53 -39
  503. package/lib/Tab/index.js +6 -0
  504. package/lib/Tab/props/defaultProps.js +10 -5
  505. package/lib/Tab/props/propTypes.js +13 -5
  506. package/lib/Tag/Tag.js +82 -48
  507. package/lib/Tag/Tag.module.css +10 -10
  508. package/lib/Tag/__tests__/Tag.spec.js +14 -8
  509. package/lib/Tag/props/defaultProps.js +2 -1
  510. package/lib/Tag/props/propTypes.js +5 -1
  511. package/lib/TextBox/TextBox.js +93 -61
  512. package/lib/TextBox/TextBox.module.css +6 -5
  513. package/lib/TextBox/__tests__/TextBox.spec.js +14 -4
  514. package/lib/TextBox/props/defaultProps.js +2 -1
  515. package/lib/TextBox/props/propTypes.js +6 -1
  516. package/lib/TextBoxIcon/TextBoxIcon.js +108 -60
  517. package/lib/TextBoxIcon/TextBoxIcon.module.css +7 -6
  518. package/lib/TextBoxIcon/__tests__/TextBoxIcon.spec.js +14 -5
  519. package/lib/TextBoxIcon/props/defaultProps.js +2 -1
  520. package/lib/TextBoxIcon/props/propTypes.js +4 -0
  521. package/lib/Textarea/Textarea.js +63 -32
  522. package/lib/Textarea/Textarea.module.css +6 -6
  523. package/lib/Textarea/__tests__/Textarea.spec.js +14 -2
  524. package/lib/Textarea/props/defaultProps.js +2 -1
  525. package/lib/Textarea/props/propTypes.js +4 -0
  526. package/lib/Tooltip/Tooltip.js +102 -35
  527. package/lib/Tooltip/Tooltip.module.css +40 -8
  528. package/lib/Tooltip/__tests__/Tooltip.spec.js +23 -0
  529. package/lib/Tooltip/props/propTypes.js +3 -0
  530. package/lib/VelocityAnimation/VelocityAnimation/VelocityAnimation.js +43 -17
  531. package/lib/VelocityAnimation/VelocityAnimation/props/propTypes.js +3 -0
  532. package/lib/VelocityAnimation/VelocityAnimationGroup/VelocityAnimationGroup.js +55 -24
  533. package/lib/VelocityAnimation/VelocityAnimationGroup/props/propTypes.js +3 -0
  534. package/lib/VelocityAnimation/index.js +23 -0
  535. package/lib/common/a11y.module.css +4 -0
  536. package/lib/common/animation.module.css +8 -8
  537. package/lib/common/avatarsizes.module.css +6 -2
  538. package/lib/common/basicReset.module.css +3 -3
  539. package/lib/common/boxShadow.module.css +34 -0
  540. package/lib/common/common.module.css +24 -24
  541. package/lib/common/customscroll.module.css +4 -2
  542. package/lib/common/reset.module.css +1 -0
  543. package/lib/css.js +42 -1
  544. package/lib/deprecated/AdvancedMultiSelect.module.css +18 -18
  545. package/lib/deprecated/PortalLayer/PortalLayer.js +50 -24
  546. package/lib/deprecated/PortalLayer/props/propTypes.js +3 -0
  547. package/lib/index.js +214 -210
  548. package/lib/semantic/Button/Button.js +47 -24
  549. package/lib/semantic/Button/props/propTypes.js +3 -0
  550. package/lib/semantic/Button/semanticButton.module.css +1 -1
  551. package/lib/semantic/index.js +15 -0
  552. package/lib/utils/Common.js +136 -17
  553. package/lib/utils/ContextOptimizer.js +16 -10
  554. package/lib/utils/__tests__/constructFullName.spec.js +1 -0
  555. package/lib/utils/__tests__/debounce.spec.js +3 -2
  556. package/lib/utils/__tests__/getInitial.spec.js +1 -0
  557. package/lib/utils/constructFullName.js +11 -2
  558. package/lib/utils/css/compileClassNames.js +37 -0
  559. package/lib/utils/css/mergeStyle.js +69 -0
  560. package/lib/utils/css/utils.js +41 -0
  561. package/lib/utils/datetime/GMTZones.js +55 -0
  562. package/lib/utils/datetime/common.js +52 -7
  563. package/lib/utils/debounce.js +6 -1
  564. package/lib/utils/dropDownUtils.js +177 -56
  565. package/lib/utils/dummyFunction.js +2 -0
  566. package/lib/utils/getHTMLFontSize.js +1 -0
  567. package/lib/utils/getInitial.js +6 -0
  568. package/lib/utils/index.js +121 -0
  569. package/lib/utils/scrollTo.js +2 -0
  570. package/lib/utils/shallowEqual.js +8 -0
  571. package/package.json +61 -26
  572. package/postPublish.js +8 -0
  573. package/prePublish.js +70 -0
  574. package/docs/external/active-line.js +0 -72
  575. package/docs/external/autorefresh.js +0 -47
  576. package/docs/external/codemirror.js +0 -9681
  577. package/docs/external/css/hopscotch.css +0 -576
  578. package/docs/external/css/styleGuide.css +0 -1100
  579. package/docs/external/css.js +0 -466
  580. package/docs/external/designTokens.js +0 -1
  581. package/docs/external/foldcode.js +0 -152
  582. package/docs/external/format.js +0 -129
  583. package/docs/external/htmlmixed.js +0 -84
  584. package/docs/external/images/bottom.png +0 -0
  585. package/docs/external/images/bottombg.jpg +0 -0
  586. package/docs/external/images/desk.png +0 -0
  587. package/docs/external/images/desklogo.png +0 -0
  588. package/docs/external/images/menu.png +0 -0
  589. package/docs/external/index.html +0 -127
  590. package/docs/external/javascript.js +0 -422
  591. package/docs/external/jsx.js +0 -148
  592. package/docs/external/matchbrackets.js +0 -145
  593. package/docs/external/xml.js +0 -322
  594. package/docs/package.json +0 -41
  595. package/docs/src/index.js +0 -1311
  596. package/es/Button/__tests__/Button.spec.js +0 -190
  597. package/es/Button/__tests__/__snapshots__/Button.spec.js.snap +0 -191
  598. package/es/DropBox/DropBox.module.css +0 -406
  599. package/lib/Button/__tests__/Button.spec.js +0 -193
  600. package/lib/Button/__tests__/__snapshots__/Button.spec.js.snap +0 -191
  601. package/lib/DropBox/DropBox.module.css +0 -406
package/lib/Tab/Tabs.js CHANGED
@@ -1,44 +1,80 @@
1
1
  "use strict";
2
2
 
3
3
  function _typeof(obj) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (obj) { return typeof obj; } : function (obj) { return obj && "function" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }, _typeof(obj); }
4
+
4
5
  Object.defineProperty(exports, "__esModule", {
5
6
  value: true
6
7
  });
7
8
  exports["default"] = void 0;
9
+
8
10
  var _react = _interopRequireDefault(require("react"));
11
+
9
12
  var _Tab = _interopRequireDefault(require("./Tab"));
13
+
10
14
  var _defaultProps = require("./props/defaultProps");
15
+
11
16
  var _propTypes = require("./props/propTypes");
17
+
12
18
  var _Common = require("../utils/Common");
19
+
13
20
  var _Layout = require("../Layout");
21
+
14
22
  var _ResizeObserver = _interopRequireDefault(require("../Responsive/ResizeObserver"));
23
+
15
24
  var _ListItem = _interopRequireDefault(require("../ListItem/ListItem"));
16
- var _Icon = _interopRequireDefault(require("@zohodesk/icons/lib/Icon"));
25
+
26
+ var _icons = require("@zohodesk/icons");
27
+
17
28
  var _TabsModule = _interopRequireDefault(require("./Tabs.module.css"));
29
+
18
30
  var _Popup = _interopRequireDefault(require("../Popup/Popup"));
31
+
19
32
  var _ResponsiveDropBox = _interopRequireDefault(require("../ResponsiveDropBox/ResponsiveDropBox"));
33
+
20
34
  var _CustomResponsive = require("../Responsive/CustomResponsive");
35
+
36
+ var _semanticButtonModule = _interopRequireDefault(require("../semantic/Button/semanticButton.module.css"));
37
+
21
38
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; }
39
+
22
40
  function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
41
+
23
42
  function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
43
+
24
44
  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); }
45
+
25
46
  function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
47
+
26
48
  function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
49
+
27
50
  function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } }
51
+
28
52
  function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); Object.defineProperty(Constructor, "prototype", { writable: false }); return Constructor; }
53
+
29
54
  function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function"); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, writable: true, configurable: true } }); Object.defineProperty(subClass, "prototype", { writable: false }); if (superClass) _setPrototypeOf(subClass, superClass); }
55
+
30
56
  function _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf ? Object.setPrototypeOf.bind() : function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }
57
+
31
58
  function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = _getPrototypeOf(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }
59
+
32
60
  function _possibleConstructorReturn(self, call) { if (call && (_typeof(call) === "object" || typeof call === "function")) { return call; } else if (call !== void 0) { throw new TypeError("Derived constructors may only return object or undefined"); } return _assertThisInitialized(self); }
61
+
33
62
  function _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return self; }
63
+
34
64
  function _isNativeReflectConstruct() { if (typeof Reflect === "undefined" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === "function") return true; try { Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); return true; } catch (e) { return false; } }
65
+
35
66
  function _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf.bind() : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); }
67
+
36
68
  var Tabs = /*#__PURE__*/function (_React$Component) {
37
69
  _inherits(Tabs, _React$Component);
70
+
38
71
  var _super = _createSuper(Tabs);
72
+
39
73
  function Tabs(props) {
40
74
  var _this;
75
+
41
76
  _classCallCheck(this, Tabs);
77
+
42
78
  _this = _super.call(this, props);
43
79
  _this.state = {
44
80
  totalDimension: null,
@@ -47,11 +83,14 @@ var Tabs = /*#__PURE__*/function (_React$Component) {
47
83
  renderVirtualTabs: true,
48
84
  tabKeys: []
49
85
  };
86
+
50
87
  _Common.bind.apply(_assertThisInitialized(_this), ['moreTabSelect', 'onResize', 'onTabResize', 'getHighlightRef', 'getTabsRef', 'getTabRef', 'getHighlightDim', 'onSizeChange', 'onScroll', 'togglePopup', 'setMaxDim']);
88
+
51
89
  _this.tabsObserver = new _ResizeObserver["default"](_this.onResize);
52
90
  _this.tabObserver = {};
53
91
  return _this;
54
92
  }
93
+
55
94
  _createClass(Tabs, [{
56
95
  key: "onTabResize",
57
96
  value: function onTabResize(size, target) {
@@ -59,9 +98,11 @@ var Tabs = /*#__PURE__*/function (_React$Component) {
59
98
  var tabDimensions = this.state.tabDimensions;
60
99
  var newDim = Object.assign({}, tabDimensions);
61
100
  var elemDim = (0, _Common.getTotalDimension)(target, align);
101
+
62
102
  if (elemDim !== 0) {
63
103
  newDim[target.dataset.key] = elemDim;
64
104
  }
105
+
65
106
  this.setState({
66
107
  tabDimensions: newDim
67
108
  });
@@ -70,17 +111,25 @@ var Tabs = /*#__PURE__*/function (_React$Component) {
70
111
  key: "componentDidMount",
71
112
  value: function componentDidMount() {
72
113
  var _this2 = this;
114
+
73
115
  var _this$props = this.props,
74
- children = _this$props.children,
75
- childType = _this$props.childType;
116
+ children = _this$props.children,
117
+ childType = _this$props.childType;
76
118
  var totalDimension = this.getTotalDimension();
77
119
  var tabDimensions = this.getTabDimensions();
78
120
  var tabKeys = [];
121
+ var restrictedKeys = ['state', 'props', 'refs', 'context'];
122
+
79
123
  _react["default"].Children.toArray(children).forEach(function (child) {
80
124
  if (child && child.props.id && child.type === childType) {
81
- tabKeys.push(child.props.id);
125
+ if (restrictedKeys.includes(child.props.id)) {
126
+ throw new Error('Restricted id name found in Tabs, Please avoid these names => ' + restrictedKeys.toString());
127
+ } else {
128
+ tabKeys.push(child.props.id);
129
+ }
82
130
  }
83
131
  });
132
+
84
133
  this.setState({
85
134
  totalDimension: totalDimension,
86
135
  tabDimensions: tabDimensions,
@@ -97,10 +146,12 @@ var Tabs = /*#__PURE__*/function (_React$Component) {
97
146
  key: "componentWillUnmount",
98
147
  value: function componentWillUnmount() {
99
148
  var _this3 = this;
149
+
100
150
  if (this.tabsObserver) {
101
151
  this.tabsObserver.disconnect();
102
152
  this.tabsObserver = null;
103
153
  }
154
+
104
155
  if (this.tabObserver) {
105
156
  Object.keys(this.tabObserver).forEach(function (observer) {
106
157
  _this3.tabObserver[observer] && _this3.tabObserver[observer].disconnect();
@@ -112,11 +163,11 @@ var Tabs = /*#__PURE__*/function (_React$Component) {
112
163
  key: "setMaxDim",
113
164
  value: function setMaxDim() {
114
165
  var totalDimension = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : 0;
115
- var selectedTab = this.props.selectedTab;
116
- // let actual = Object.keys(tabDimensions).reduce(
166
+ var selectedTab = this.props.selectedTab; // let actual = Object.keys(tabDimensions).reduce(
117
167
  // (sum, tab) => sum + (tabDimensions[tab] || 0),
118
168
  // 0
119
169
  // );
170
+
120
171
  if (totalDimension && this[selectedTab]) {
121
172
  var align = this.props.align;
122
173
  var newDim = "".concat((0, _Common.remConvert)(totalDimension), "rem");
@@ -133,29 +184,33 @@ var Tabs = /*#__PURE__*/function (_React$Component) {
133
184
  key: "componentDidUpdate",
134
185
  value: function componentDidUpdate(prevProps) {
135
186
  var _this4 = this;
187
+
136
188
  var _this$props2 = this.props,
137
- children = _this$props2.children,
138
- selectedTab = _this$props2.selectedTab,
139
- childType = _this$props2.childType;
189
+ children = _this$props2.children,
190
+ selectedTab = _this$props2.selectedTab,
191
+ childType = _this$props2.childType;
140
192
  var _this$state = this.state,
141
- tabDimensions = _this$state.tabDimensions,
142
- totalDimension = _this$state.totalDimension,
143
- tabKeys = _this$state.tabKeys;
193
+ tabDimensions = _this$state.tabDimensions,
194
+ totalDimension = _this$state.totalDimension,
195
+ tabKeys = _this$state.tabKeys;
196
+
144
197
  if (prevProps.children && children) {
145
198
  /**
146
199
  * To recalculate the dimensions of tabs we are checking the children length.
147
200
  * and also checking the tab id and their order.
148
201
  */
149
-
150
202
  var newTabKeys = [];
203
+
151
204
  _react["default"].Children.toArray(children).forEach(function (child) {
152
205
  if (child && child.props.id && child.type === childType) {
153
206
  newTabKeys.push(child.props.id);
154
207
  }
155
208
  });
209
+
156
210
  var isSameTabKeys = newTabKeys.every(function (current, index) {
157
211
  return tabKeys[index] === current;
158
212
  });
213
+
159
214
  if (newTabKeys.length !== tabKeys.length || !isSameTabKeys) {
160
215
  this.setState({
161
216
  renderVirtualTabs: true,
@@ -163,6 +218,7 @@ var Tabs = /*#__PURE__*/function (_React$Component) {
163
218
  }, function () {
164
219
  totalDimension = _this4.getTotalDimension();
165
220
  tabDimensions = _this4.getTabDimensions();
221
+
166
222
  _this4.setState({
167
223
  tabDimensions: tabDimensions,
168
224
  totalDimension: totalDimension,
@@ -170,6 +226,7 @@ var Tabs = /*#__PURE__*/function (_React$Component) {
170
226
  });
171
227
  });
172
228
  }
229
+
173
230
  if (prevProps.selectedTab !== selectedTab || newTabKeys.length === 1) {
174
231
  this.moveHighlight();
175
232
  }
@@ -179,16 +236,19 @@ var Tabs = /*#__PURE__*/function (_React$Component) {
179
236
  key: "moveHighlight",
180
237
  value: function moveHighlight() {
181
238
  var _this$props3 = this.props,
182
- isAnimate = _this$props3.isAnimate,
183
- needTabBorder = _this$props3.needTabBorder,
184
- selectedTab = _this$props3.selectedTab,
185
- align = _this$props3.align;
239
+ isAnimate = _this$props3.isAnimate,
240
+ needTabBorder = _this$props3.needTabBorder,
241
+ selectedTab = _this$props3.selectedTab,
242
+ align = _this$props3.align;
186
243
  var highlightInitialDimension = this.state.highlightInitialDimension;
187
244
  var node = this.highlight;
245
+
188
246
  if (isAnimate && needTabBorder && node) {
189
247
  var tabActive = this[selectedTab];
248
+
190
249
  if (tabActive) {
191
250
  var position, dimension;
251
+
192
252
  if (align === 'vertical') {
193
253
  position = tabActive.offsetLeft;
194
254
  dimension = tabActive.offsetWidth;
@@ -212,6 +272,7 @@ var Tabs = /*#__PURE__*/function (_React$Component) {
212
272
  key: "getTabsRef",
213
273
  value: function getTabsRef(ele) {
214
274
  this.tabsEle = ele;
275
+
215
276
  if (ele) {
216
277
  this.tabsObserver.observe(ele);
217
278
  } else {
@@ -222,6 +283,7 @@ var Tabs = /*#__PURE__*/function (_React$Component) {
222
283
  key: "onSizeChange",
223
284
  value: function onSizeChange() {
224
285
  var _this5 = this;
286
+
225
287
  var totalDimension = this.getTotalDimension();
226
288
  this.setState({
227
289
  totalDimension: totalDimension
@@ -236,7 +298,9 @@ var Tabs = /*#__PURE__*/function (_React$Component) {
236
298
  key: "onResize",
237
299
  value: function onResize(timer) {
238
300
  var _this6 = this;
301
+
239
302
  var isResponsive = this.props.isResponsive;
303
+
240
304
  if (this.tabsEle && isResponsive) {
241
305
  if (!timer) {
242
306
  this.onSizeChange();
@@ -258,40 +322,46 @@ var Tabs = /*#__PURE__*/function (_React$Component) {
258
322
  key: "getTabDimensions",
259
323
  value: function getTabDimensions() {
260
324
  var _this7 = this;
325
+
261
326
  var _this$props4 = this.props,
262
- children = _this$props4.children,
263
- align = _this$props4.align,
264
- childType = _this$props4.childType;
327
+ children = _this$props4.children,
328
+ align = _this$props4.align,
329
+ childType = _this$props4.childType;
265
330
  var tabDimensions = {};
331
+
266
332
  _react["default"].Children.forEach(children, function (child) {
267
333
  return /*#__PURE__*/_react["default"].isValidElement(child) && child.type === childType && _this7[child.props.id] && Object.assign(tabDimensions, _defineProperty({}, child.props.id, _this7[child.props.id] && (0, _Common.getTotalDimension)(_this7[child.props.id], align)));
268
334
  });
335
+
269
336
  return tabDimensions;
270
337
  }
271
338
  }, {
272
339
  key: "responsiveTab",
273
340
  value: function responsiveTab(totalDimension, tabDimensions) {
274
341
  var _this$props5 = this.props,
275
- children = _this$props5.children,
276
- maxTabsCount = _this$props5.maxTabsCount,
277
- minTabsCount = _this$props5.minTabsCount,
278
- isResponsive = _this$props5.isResponsive;
342
+ children = _this$props5.children,
343
+ maxTabsCount = _this$props5.maxTabsCount,
344
+ minTabsCount = _this$props5.minTabsCount,
345
+ isResponsive = _this$props5.isResponsive;
279
346
  var mainTabs = [],
280
- moreTabs = [],
281
- otherTabs = [];
347
+ moreTabs = [],
348
+ otherTabs = [];
349
+
282
350
  if (totalDimension && isResponsive) {
283
351
  var _this$props6 = this.props,
284
- childType = _this$props6.childType,
285
- selectedTab = _this$props6.selectedTab;
352
+ childType = _this$props6.childType,
353
+ selectedTab = _this$props6.selectedTab;
286
354
  var selectedTabDimension = tabDimensions[selectedTab] || 0;
287
355
  var remainingDimension = totalDimension - selectedTabDimension;
288
356
  var maxTabsTobeVisible = maxTabsCount - 1;
289
357
  var minTabsToBeVisible = 1;
358
+
290
359
  _react["default"].Children.forEach(children, function (child) {
291
360
  if (child && child.type === childType && child.props.id) {
292
361
  var elemDimension = tabDimensions[child.props.id];
293
362
  var isMaxCountExceeded = maxTabsTobeVisible <= 0 ? true : false;
294
363
  var isMinCountNotExceeded = minTabsToBeVisible < minTabsCount ? true : false;
364
+
295
365
  if (child.props.id === selectedTab) {
296
366
  mainTabs.push(child);
297
367
  } else if (isMinCountNotExceeded) {
@@ -310,6 +380,7 @@ var Tabs = /*#__PURE__*/function (_React$Component) {
310
380
  otherTabs.push(child);
311
381
  }
312
382
  });
383
+
313
384
  if (selectedTabDimension > totalDimension) {
314
385
  /* let { align } = this.props;
315
386
  let newDim = `${remConvert(totalDimension)}rem`;
@@ -324,6 +395,7 @@ var Tabs = /*#__PURE__*/function (_React$Component) {
324
395
  }
325
396
  } else if (!isResponsive) {
326
397
  var _childType = this.props.childType;
398
+
327
399
  _react["default"].Children.forEach(children, function (child) {
328
400
  if (child && child.type === _childType && child.props.id) {
329
401
  mainTabs.push(child);
@@ -334,6 +406,7 @@ var Tabs = /*#__PURE__*/function (_React$Component) {
334
406
  } else {
335
407
  moreTabs = children;
336
408
  }
409
+
337
410
  return {
338
411
  mainTabs: mainTabs,
339
412
  moreTabs: moreTabs,
@@ -345,6 +418,7 @@ var Tabs = /*#__PURE__*/function (_React$Component) {
345
418
  value: function getTabRef(refName, ele, isVirtual) {
346
419
  this[refName] = ele;
347
420
  var key = isVirtual ? "virtual_".concat(refName) : refName;
421
+
348
422
  if (ele) {
349
423
  this.tabObserver[key] = new _ResizeObserver["default"](this.onTabResize);
350
424
  this.tabObserver[key].observe(ele);
@@ -358,10 +432,12 @@ var Tabs = /*#__PURE__*/function (_React$Component) {
358
432
  key: "moreTabSelect",
359
433
  value: function moreTabSelect(tab, value, index, e) {
360
434
  var onSelect = this.props.onSelect;
435
+
361
436
  if (e && e.target && e.target.parentElement.tagName === 'A' && (e.metaKey || e.altKey || e.ctrlKey || e.shiftKey)) {
362
- e && e.stopPropagation();
437
+ (0, _Common.cancelBubblingEffect)(e);
363
438
  return;
364
439
  }
440
+
365
441
  e.preventDefault();
366
442
  onSelect(tab);
367
443
  }
@@ -376,10 +452,10 @@ var Tabs = /*#__PURE__*/function (_React$Component) {
376
452
  key: "togglePopup",
377
453
  value: function togglePopup(e) {
378
454
  var _this$props7 = this.props,
379
- boxPosition = _this$props7.boxPosition,
380
- togglePopup = _this$props7.togglePopup,
381
- align = _this$props7.align,
382
- removeClose = _this$props7.removeClose;
455
+ boxPosition = _this$props7.boxPosition,
456
+ togglePopup = _this$props7.togglePopup,
457
+ align = _this$props7.align,
458
+ removeClose = _this$props7.removeClose;
383
459
  removeClose && removeClose(e);
384
460
  var popupPosition = align === 'vertical' ? 'bottomLeft' : 'rightTop';
385
461
  boxPosition = boxPosition ? boxPosition : popupPosition;
@@ -399,50 +475,56 @@ var Tabs = /*#__PURE__*/function (_React$Component) {
399
475
  key: "renderTabs",
400
476
  value: function renderTabs(mainTabs, moreTabs, isVirtual) {
401
477
  var _this8 = this;
478
+
402
479
  var _this$props8 = this.props,
403
- selectedTab = _this$props8.selectedTab,
404
- moreButtonClass = _this$props8.moreButtonClass,
405
- moreButtonActiveClass = _this$props8.moreButtonActiveClass,
406
- moreBoxClass = _this$props8.moreBoxClass,
407
- menuItemClass = _this$props8.menuItemClass,
408
- itemClass = _this$props8.itemClass,
409
- itemActiveClass = _this$props8.itemActiveClass,
410
- iconName = _this$props8.iconName,
411
- isPopupReady = _this$props8.isPopupReady,
412
- isPopupOpen = _this$props8.isPopupOpen,
413
- getContainerRef = _this$props8.getContainerRef,
414
- showTitleInMoreOptions = _this$props8.showTitleInMoreOptions,
415
- onSelect = _this$props8.onSelect,
416
- moreContainerClass = _this$props8.moreContainerClass,
417
- align = _this$props8.align,
418
- type = _this$props8.type,
419
- isAnimate = _this$props8.isAnimate,
420
- needTabBorder = _this$props8.needTabBorder,
421
- needAppearance = _this$props8.needAppearance,
422
- iconSize = _this$props8.iconSize,
423
- getTargetRef = _this$props8.getTargetRef,
424
- position = _this$props8.position,
425
- customProps = _this$props8.customProps,
426
- getCustomDropBoxHeaderPlaceHolder = _this$props8.getCustomDropBoxHeaderPlaceHolder;
480
+ selectedTab = _this$props8.selectedTab,
481
+ moreButtonClass = _this$props8.moreButtonClass,
482
+ moreButtonActiveClass = _this$props8.moreButtonActiveClass,
483
+ moreBoxClass = _this$props8.moreBoxClass,
484
+ menuItemClass = _this$props8.menuItemClass,
485
+ itemClass = _this$props8.itemClass,
486
+ itemActiveClass = _this$props8.itemActiveClass,
487
+ iconName = _this$props8.iconName,
488
+ isPopupReady = _this$props8.isPopupReady,
489
+ isPopupOpen = _this$props8.isPopupOpen,
490
+ getContainerRef = _this$props8.getContainerRef,
491
+ showTitleInMoreOptions = _this$props8.showTitleInMoreOptions,
492
+ onSelect = _this$props8.onSelect,
493
+ moreContainerClass = _this$props8.moreContainerClass,
494
+ align = _this$props8.align,
495
+ type = _this$props8.type,
496
+ isAnimate = _this$props8.isAnimate,
497
+ needTabBorder = _this$props8.needTabBorder,
498
+ needAppearance = _this$props8.needAppearance,
499
+ iconSize = _this$props8.iconSize,
500
+ getTargetRef = _this$props8.getTargetRef,
501
+ position = _this$props8.position,
502
+ customProps = _this$props8.customProps,
503
+ getCustomDropBoxHeaderPlaceHolder = _this$props8.getCustomDropBoxHeaderPlaceHolder,
504
+ dataSelectorId = _this$props8.dataSelectorId;
427
505
  var _customProps$DropBoxP = customProps.DropBoxProps,
428
- DropBoxProps = _customProps$DropBoxP === void 0 ? {} : _customProps$DropBoxP,
429
- _customProps$ListItem = customProps.ListItemProps,
430
- ListItemProps = _customProps$ListItem === void 0 ? {} : _customProps$ListItem,
431
- _customProps$MoreButt = customProps.MoreButtonProps,
432
- MoreButtonProps = _customProps$MoreButt === void 0 ? {} : _customProps$MoreButt;
506
+ DropBoxProps = _customProps$DropBoxP === void 0 ? {} : _customProps$DropBoxP,
507
+ _customProps$ListItem = customProps.ListItemProps,
508
+ ListItemProps = _customProps$ListItem === void 0 ? {} : _customProps$ListItem,
509
+ _customProps$MoreButt = customProps.MoreButtonProps,
510
+ MoreButtonProps = _customProps$MoreButt === void 0 ? {} : _customProps$MoreButt;
433
511
  var popupClass = align === 'vertical' ? _TabsModule["default"][position] ? _TabsModule["default"][position] : '' : '';
434
512
  return /*#__PURE__*/_react["default"].createElement(_react["default"].Fragment, null, _react["default"].Children.map(mainTabs, function (child) {
435
513
  if (!child) {
436
514
  return null;
437
515
  }
516
+
438
517
  var MainTab = child.type;
439
518
  var classProps = {};
519
+
440
520
  if (itemActiveClass) {
441
521
  classProps.activeClass = itemActiveClass;
442
522
  }
523
+
443
524
  if (itemClass) {
444
525
  classProps.className = itemClass;
445
526
  }
527
+
446
528
  return /*#__PURE__*/_react["default"].isValidElement(child) && /*#__PURE__*/_react["default"].createElement(MainTab, _extends({}, child.props, {
447
529
  key: child.props.id,
448
530
  getTabRef: _this8.getTabRef,
@@ -457,14 +539,19 @@ var Tabs = /*#__PURE__*/function (_React$Component) {
457
539
  isVirtual: isVirtual
458
540
  }, classProps));
459
541
  }), _react["default"].Children.count(moreTabs) ? /*#__PURE__*/_react["default"].createElement(_Layout.Box, {
460
- className: "".concat(_TabsModule["default"].menu, " ")
542
+ className: "".concat(_TabsModule["default"].menu, " "),
543
+ dataSelectorId: "".concat(dataSelectorId, "_moreIcon")
461
544
  }, /*#__PURE__*/_react["default"].createElement(_Layout.Container, _extends({
462
- className: "".concat(moreButtonClass, " ").concat(isPopupOpen ? moreButtonActiveClass : ''),
545
+ className: "".concat(_semanticButtonModule["default"].buttonReset, " ").concat(moreButtonClass, " ").concat(isPopupOpen ? moreButtonActiveClass : ''),
463
546
  align: "both",
464
547
  onClick: this.togglePopup,
465
548
  dataId: "moreTabs",
466
549
  eleRef: getTargetRef
467
- }, MoreButtonProps), /*#__PURE__*/_react["default"].createElement(_Icon["default"], {
550
+ }, MoreButtonProps, {
551
+ "aria-label": "MoreTabs",
552
+ role: "link",
553
+ tagName: "button"
554
+ }), /*#__PURE__*/_react["default"].createElement(_icons.Icon, {
468
555
  name: iconName,
469
556
  size: iconSize
470
557
  })), isPopupOpen && /*#__PURE__*/_react["default"].createElement(_CustomResponsive.ResponsiveReceiver, {
@@ -484,7 +571,9 @@ var Tabs = /*#__PURE__*/function (_React$Component) {
484
571
  isBoxPaddingNeed: true,
485
572
  isArrow: false
486
573
  }, DropBoxProps, {
487
- isResponsivePadding: true
574
+ isResponsivePadding: true,
575
+ needFocusScope: true,
576
+ onClose: _this8.togglePopup
488
577
  }), getCustomDropBoxHeaderPlaceHolder && getCustomDropBoxHeaderPlaceHolder(_this8.props), /*#__PURE__*/_react["default"].createElement(_Layout.Box, {
489
578
  flexible: true,
490
579
  shrink: true,
@@ -495,14 +584,15 @@ var Tabs = /*#__PURE__*/function (_React$Component) {
495
584
  if (!child) {
496
585
  return null;
497
586
  }
587
+
498
588
  var _child$props = child.props,
499
- text = _child$props.text,
500
- id = _child$props.id,
501
- title = _child$props.title,
502
- isLink = _child$props.isLink,
503
- href = _child$props.href,
504
- children = _child$props.children,
505
- dataId = _child$props.dataId;
589
+ text = _child$props.text,
590
+ id = _child$props.id,
591
+ title = _child$props.title,
592
+ isLink = _child$props.isLink,
593
+ href = _child$props.href,
594
+ children = _child$props.children,
595
+ dataId = _child$props.dataId;
506
596
  var value = text ? text : showTitleInMoreOptions ? title : null;
507
597
  return /*#__PURE__*/_react["default"].isValidElement(child) && /*#__PURE__*/_react["default"].createElement(_ListItem["default"], _extends({
508
598
  key: id,
@@ -526,32 +616,36 @@ var Tabs = /*#__PURE__*/function (_React$Component) {
526
616
  key: "render",
527
617
  value: function render() {
528
618
  var _this$props9 = this.props,
529
- style = _this$props9.style,
530
- className = _this$props9.className,
531
- dataId = _this$props9.dataId,
532
- highlightClass = _this$props9.highlightClass,
533
- type = _this$props9.type,
534
- isAnimate = _this$props9.isAnimate,
535
- needTabBorder = _this$props9.needTabBorder,
536
- needBorder = _this$props9.needBorder,
537
- needPadding = _this$props9.needPadding,
538
- align = _this$props9.align,
539
- needAppearance = _this$props9.needAppearance,
540
- children = _this$props9.children,
541
- containerClass = _this$props9.containerClass;
619
+ style = _this$props9.style,
620
+ className = _this$props9.className,
621
+ dataId = _this$props9.dataId,
622
+ highlightClass = _this$props9.highlightClass,
623
+ type = _this$props9.type,
624
+ isAnimate = _this$props9.isAnimate,
625
+ needTabBorder = _this$props9.needTabBorder,
626
+ needBorder = _this$props9.needBorder,
627
+ needPadding = _this$props9.needPadding,
628
+ align = _this$props9.align,
629
+ needAppearance = _this$props9.needAppearance,
630
+ children = _this$props9.children,
631
+ containerClass = _this$props9.containerClass,
632
+ dataSelectorId = _this$props9.dataSelectorId;
542
633
  var _this$state2 = this.state,
543
- totalDimension = _this$state2.totalDimension,
544
- tabDimensions = _this$state2.tabDimensions,
545
- renderVirtualTabs = _this$state2.renderVirtualTabs;
634
+ totalDimension = _this$state2.totalDimension,
635
+ tabDimensions = _this$state2.tabDimensions,
636
+ renderVirtualTabs = _this$state2.renderVirtualTabs;
637
+
546
638
  var _this$responsiveTab = this.responsiveTab(totalDimension, tabDimensions),
547
- mainTabs = _this$responsiveTab.mainTabs,
548
- moreTabs = _this$responsiveTab.moreTabs,
549
- otherTabs = _this$responsiveTab.otherTabs;
639
+ mainTabs = _this$responsiveTab.mainTabs,
640
+ moreTabs = _this$responsiveTab.moreTabs,
641
+ otherTabs = _this$responsiveTab.otherTabs;
642
+
550
643
  var appearanceClass = (0, _Common.cs)([_TabsModule["default"][type], needBorder && _TabsModule["default"]["".concat(type, "_border")], needPadding && _TabsModule["default"]["".concat(type, "_padding")]]);
551
644
  var tabsClass = (0, _Common.cs)([_TabsModule["default"].tab, className, needAppearance && appearanceClass]);
552
645
  var hlClass = (0, _Common.cs)([_TabsModule["default"].highlight, highlightClass, isAnimate && _TabsModule["default"].lineAnimate]);
553
646
  return /*#__PURE__*/_react["default"].createElement(_Layout.Box, {
554
- className: containerClass
647
+ className: containerClass,
648
+ dataSelectorId: dataSelectorId
555
649
  }, /*#__PURE__*/_react["default"].createElement(_Layout.Container, {
556
650
  alignBox: align === 'vertical' ? 'row' : 'column',
557
651
  className: tabsClass,
@@ -567,15 +661,20 @@ var Tabs = /*#__PURE__*/function (_React$Component) {
567
661
  }, this.renderTabs(mainTabs, moreTabs, false))), otherTabs.length ? /*#__PURE__*/_react["default"].createElement(_Layout.Box, null, otherTabs) : null, isAnimate && needTabBorder && needAppearance && /*#__PURE__*/_react["default"].createElement("div", {
568
662
  className: hlClass,
569
663
  ref: this.getHighlightRef,
570
- "data-id": dataId
664
+ "data-id": dataId,
665
+ "data-test-id": dataId
571
666
  })));
572
667
  }
573
668
  }]);
669
+
574
670
  return Tabs;
575
671
  }(_react["default"].Component);
672
+
576
673
  Tabs.propTypes = _propTypes.Tabs_propTypes;
577
674
  Tabs.defaultProps = _objectSpread(_objectSpread({}, _defaultProps.Tabs_defaultProps), {}, {
578
675
  childType: _Tab["default"]
579
676
  });
677
+
580
678
  var _default = (0, _Popup["default"])(Tabs);
679
+
581
680
  exports["default"] = _default;