@zohodesk/components 1.0.0-alpha-211 → 1.0.0-alpha-215

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 (464) hide show
  1. package/README.md +14 -0
  2. package/es/AppContainer/AppContainer.js +1 -0
  3. package/es/Appearance/dark/mode/darkMode.module.css +0 -8
  4. package/es/Appearance/dark/themes/blue/blueDarkComponentTheme.module.css +12 -0
  5. package/es/Appearance/dark/themes/green/greenDarkComponentTheme.module.css +12 -0
  6. package/es/Appearance/dark/themes/orange/orangeDarkComponentTheme.module.css +12 -0
  7. package/es/Appearance/dark/themes/red/redDarkComponentTheme.module.css +12 -0
  8. package/es/Appearance/dark/themes/yellow/yellowDarkComponentTheme.module.css +12 -0
  9. package/es/Appearance/default/mode/defaultMode.module.css +0 -8
  10. package/es/Appearance/default/themes/blue/blueDefaultComponentTheme.module.css +12 -0
  11. package/es/Appearance/default/themes/green/greenDefaultComponentTheme.module.css +12 -0
  12. package/es/Appearance/default/themes/orange/orangeDefaultComponentTheme.module.css +12 -0
  13. package/es/Appearance/default/themes/red/redDefaultComponentTheme.module.css +12 -0
  14. package/es/Appearance/default/themes/yellow/yellowDefaultComponentTheme.module.css +12 -0
  15. package/es/Avatar/Avatar.js +2 -1
  16. package/es/Avatar/Avatar.module.css +11 -9
  17. package/es/Avatar/__tests__/Avatar.spec.js +0 -1
  18. package/es/AvatarTeam/AvatarTeam.module.css +21 -7
  19. package/es/AvatarTeam/__tests__/AvatarTeam.spec.js +0 -1
  20. package/es/Button/Button.module.css +97 -24
  21. package/es/Button/__tests__/Button.spec.js +0 -1
  22. package/es/Buttongroup/Buttongroup.module.css +37 -8
  23. package/es/Buttongroup/__test__/Buttongroup.spec.js +0 -1
  24. package/es/CheckBox/CheckBox.module.css +17 -11
  25. package/es/DateTime/DateTime.js +6 -3
  26. package/es/DateTime/DateTime.module.css +39 -12
  27. package/es/DateTime/DateWidget.js +5 -2
  28. package/es/DateTime/DateWidget.module.css +9 -5
  29. package/es/DateTime/YearView.js +6 -5
  30. package/es/DateTime/YearView.module.css +16 -6
  31. package/es/DateTime/common.js +9 -2
  32. package/es/DateTime/dateFormatUtils/dateFormat.js +76 -57
  33. package/es/DateTime/dateFormatUtils/index.js +12 -7
  34. package/es/DateTime/dateFormatUtils/timeChange.js +4 -3
  35. package/es/DateTime/dateFormatUtils/yearChange.js +4 -3
  36. package/es/DateTime/validator.js +0 -1
  37. package/es/DropBox/DropBox.module.css +47 -11
  38. package/es/DropDown/DropDownHeading.module.css +7 -3
  39. package/es/DropDown/DropDownItem.module.css +32 -6
  40. package/es/Label/__tests__/Label.spec.js +0 -2
  41. package/es/Layout/utils.js +2 -1
  42. package/es/ListItem/ListItem.js +0 -2
  43. package/es/ListItem/ListItem.module.css +56 -24
  44. package/es/ListItem/ListItemWithIcon.js +0 -2
  45. package/es/MultiSelect/AdvancedGroupMultiSelect.js +11 -3
  46. package/es/MultiSelect/AdvancedMultiSelect.js +5 -5
  47. package/es/MultiSelect/AdvancedMultiSelect.module.css +21 -6
  48. package/es/MultiSelect/MultiSelect.js +12 -6
  49. package/es/MultiSelect/MultiSelect.module.css +26 -8
  50. package/es/MultiSelect/SelectedOptions.module.css +8 -2
  51. package/es/MultiSelect/docs/AdvancedGroupMultiSelect__default.docs.js +2 -1
  52. package/es/PopOver/PopOver.module.css +1 -1
  53. package/es/Popup/Popup.js +14 -8
  54. package/es/Popup/viewPort.js +14 -9
  55. package/es/Provider/IdProvider.js +5 -4
  56. package/es/Provider/LibraryContext.js +6 -5
  57. package/es/Provider/NumberGenerator/NumberGenerator.js +17 -15
  58. package/es/Provider/ZindexProvider.js +5 -4
  59. package/es/Provider.js +8 -2
  60. package/es/Radio/Radio.module.css +9 -3
  61. package/es/Responsive/CustomResponsive.js +11 -8
  62. package/es/Responsive/ResizeComponent.js +3 -1
  63. package/es/Responsive/Responsive.js +12 -9
  64. package/es/Responsive/docs/Responsive__Custom.docs.js +49 -44
  65. package/es/Responsive/docs/Responsive__default.docs.js +77 -74
  66. package/es/Responsive/docs/style.module.css +17 -8
  67. package/es/Responsive/sizeObservers.js +5 -1
  68. package/es/Ribbon/Ribbon.module.css +93 -28
  69. package/es/Ribbon/__tests__/Ribbon.spec.js +0 -1
  70. package/es/RippleEffect/RippleEffect.module.css +15 -44
  71. package/es/Select/GroupSelect.js +6 -7
  72. package/es/Select/Select.js +2 -1
  73. package/es/Select/Select.module.css +12 -2
  74. package/es/Select/docs/Select__default.docs.js +2 -1
  75. package/es/Stencils/Stencils.js +1 -1
  76. package/es/Stencils/Stencils.module.css +27 -4
  77. package/es/Stencils/__tests__/Stencils.spec.js +0 -1
  78. package/es/Switch/Switch.module.css +6 -7
  79. package/es/Tab/Tab.js +27 -26
  80. package/es/Tab/Tab.module.css +16 -7
  81. package/es/Tab/TabContent.js +17 -14
  82. package/es/Tab/TabContentWrapper.js +17 -14
  83. package/es/Tab/TabWrapper.js +15 -14
  84. package/es/Tab/Tabs.js +2 -1
  85. package/es/Tab/Tabs.module.css +41 -8
  86. package/es/Tab/docs/Tab__default.docs.js +0 -1
  87. package/es/Tab/docs/tabdocs.module.css +1 -1
  88. package/es/Tag/Tag.module.css +36 -14
  89. package/es/TextBox/TextBox.module.css +7 -11
  90. package/es/TextBox/__tests__/TextBox.spec.js +0 -1
  91. package/es/TextBoxIcon/TextBoxIcon.module.css +10 -5
  92. package/es/TextBoxIcon/__tests__/TextBoxIcon.spec.js +0 -1
  93. package/es/Textarea/Textarea.module.css +6 -7
  94. package/es/Textarea/__tests__/Textarea.spec.js +0 -1
  95. package/es/Tooltip/Tooltip.js +0 -1
  96. package/es/Tooltip/Tooltip.module.css +9 -8
  97. package/es/a11y/FocusScope/FocusScope.js +10 -4
  98. package/es/beta/FocusRing/FocusRing.js +4 -1
  99. package/es/beta/FocusRing/FocusRing.module.css +51 -26
  100. package/es/common/animation.module.css +212 -20
  101. package/es/common/basicReset.module.css +2 -12
  102. package/es/common/common.module.css +62 -18
  103. package/es/common/customscroll.module.css +17 -21
  104. package/es/common/docStyle.module.css +78 -31
  105. package/es/common/transition.module.css +50 -10
  106. package/es/deprecated/customscroll_Old.module.css +1 -1
  107. package/es/semantic/Button/semanticButton.module.css +3 -3
  108. package/es/utils/Common.js +32 -12
  109. package/es/utils/datetime/common.js +6 -3
  110. package/es/utils/dropDownUtils.js +9 -8
  111. package/es/utils/getInitial.js +3 -1
  112. package/lib/Accordion/Accordion.js +146 -0
  113. package/lib/Accordion/AccordionItem.js +124 -0
  114. package/lib/Accordion/__tests__/Accordion.spec.js +85 -0
  115. package/lib/Accordion/docs/Accordion__Demo.docs.js +126 -0
  116. package/lib/Accordion/index.js +23 -0
  117. package/lib/Animation/Animation.js +207 -0
  118. package/lib/Animation/__tests__/Animation.spec.js +23 -0
  119. package/lib/Animation/docs/Animation__default.docs.js +85 -0
  120. package/lib/Animation/docs/Animation__fadeIn.docs.js +85 -0
  121. package/lib/Animation/docs/Animation__scaleIn.docs.js +85 -0
  122. package/lib/Animation/docs/Animation__skewIn.docs.js +85 -0
  123. package/lib/Animation/docs/Animation__slideDown.docs.js +85 -0
  124. package/lib/Animation/docs/Animation__slideLeft.docs.js +85 -0
  125. package/lib/Animation/docs/Animation__zoomIn.docs.js +85 -0
  126. package/lib/AppContainer/AppContainer.js +156 -0
  127. package/lib/AppContainer/AppContainer.module.css +18 -0
  128. package/lib/AppContainer/docs/AppContainer__default.docs.js +70 -0
  129. package/lib/Appearance/dark/mode/darkMode.module.css +395 -0
  130. package/lib/Appearance/dark/themes/blue/blueDarkCTATheme.module.css +34 -0
  131. package/lib/Appearance/dark/themes/blue/blueDarkComponentTheme.module.css +43 -0
  132. package/lib/Appearance/dark/themes/green/greenDarkCTATheme.module.css +34 -0
  133. package/lib/Appearance/dark/themes/green/greenDarkComponentTheme.module.css +43 -0
  134. package/lib/Appearance/dark/themes/orange/orangeDarkCTATheme.module.css +34 -0
  135. package/lib/Appearance/dark/themes/orange/orangeDarkComponentTheme.module.css +43 -0
  136. package/lib/Appearance/dark/themes/red/redDarkCTATheme.module.css +34 -0
  137. package/lib/Appearance/dark/themes/red/redDarkComponentTheme.module.css +43 -0
  138. package/lib/Appearance/dark/themes/yellow/yellowDarkCTATheme.module.css +34 -0
  139. package/lib/Appearance/dark/themes/yellow/yellowDarkComponentTheme.module.css +43 -0
  140. package/lib/Appearance/default/mode/defaultMode.module.css +395 -0
  141. package/lib/Appearance/default/themes/blue/blueDefaultCTATheme.module.css +34 -0
  142. package/lib/Appearance/default/themes/blue/blueDefaultComponentTheme.module.css +43 -0
  143. package/lib/Appearance/default/themes/green/greenDefaultCTATheme.module.css +34 -0
  144. package/lib/Appearance/default/themes/green/greenDefaultComponentTheme.module.css +43 -0
  145. package/lib/Appearance/default/themes/orange/orangeDefaultCTATheme.module.css +34 -0
  146. package/lib/Appearance/default/themes/orange/orangeDefaultComponentTheme.module.css +43 -0
  147. package/lib/Appearance/default/themes/red/redDefaultCTATheme.module.css +34 -0
  148. package/lib/Appearance/default/themes/red/redDefaultComponentTheme.module.css +43 -0
  149. package/lib/Appearance/default/themes/yellow/yellowDefaultCTATheme.module.css +34 -0
  150. package/lib/Appearance/default/themes/yellow/yellowDefaultComponentTheme.module.css +43 -0
  151. package/lib/Avatar/Avatar.js +280 -0
  152. package/lib/Avatar/Avatar.module.css +117 -0
  153. package/lib/Avatar/__tests__/Avatar.spec.js +208 -0
  154. package/lib/Avatar/__tests__/__snapshots__/Avatar.spec.js.snap +288 -0
  155. package/lib/Avatar/docs/Avatar__custom.docs.js +87 -0
  156. package/lib/Avatar/docs/Avatar__default.docs.js +83 -0
  157. package/lib/Avatar/docs/Avatar__palette.docs.js +107 -0
  158. package/lib/Avatar/docs/Avatar__text.docs.js +86 -0
  159. package/lib/AvatarTeam/AvatarTeam.js +157 -0
  160. package/lib/AvatarTeam/AvatarTeam.module.css +161 -0
  161. package/lib/AvatarTeam/__tests__/AvatarTeam.spec.js +92 -0
  162. package/lib/AvatarTeam/__tests__/__snapshots__/AvatarTeam.spec.js.snap +226 -0
  163. package/lib/AvatarTeam/docs/AvatarTeam__custom.docs.js +124 -0
  164. package/lib/AvatarTeam/docs/AvatarTeam__default.docs.js +82 -0
  165. package/lib/AvatarTeam/docs/AvatarTeam__palette.docs.js +101 -0
  166. package/lib/AvatarTeam/docs/AvatarTeam__size.docs.js +100 -0
  167. package/lib/Button/Button.js +159 -0
  168. package/lib/Button/Button.module.css +518 -0
  169. package/lib/Button/__tests__/Button.spec.js +233 -0
  170. package/lib/Button/__tests__/__snapshots__/Button.spec.js.snap +191 -0
  171. package/lib/Button/docs/Button__custom.docs.js +826 -0
  172. package/lib/Button/docs/Button__default.docs.js +590 -0
  173. package/lib/Buttongroup/Buttongroup.js +101 -0
  174. package/lib/Buttongroup/Buttongroup.module.css +89 -0
  175. package/lib/Buttongroup/__test__/Buttongroup.spec.js +86 -0
  176. package/lib/Buttongroup/__test__/__snapshots__/Buttongroup.spec.js.snap +146 -0
  177. package/lib/Buttongroup/docs/Buttongroup__custom.docs.js +89 -0
  178. package/lib/Buttongroup/docs/Buttongroup__footer.docs.js +85 -0
  179. package/lib/Buttongroup/docs/Buttongroup__header.docs.js +98 -0
  180. package/lib/Card/Card.js +410 -0
  181. package/lib/Card/Card.module.css +20 -0
  182. package/lib/Card/__tests__/Card.spec.js +56 -0
  183. package/lib/Card/docs/Card__Custom.docs.js +90 -0
  184. package/lib/Card/docs/Card__Default.docs.js +92 -0
  185. package/lib/Card/docs/Card__Scroll.docs.js +114 -0
  186. package/lib/Card/index.js +37 -0
  187. package/lib/CheckBox/CheckBox.js +265 -0
  188. package/lib/CheckBox/CheckBox.module.css +153 -0
  189. package/lib/CheckBox/__tests__/CheckBox.spec.js +18 -0
  190. package/lib/CheckBox/docs/CheckBox__custom.docs.js +348 -0
  191. package/lib/CheckBox/docs/CheckBox__default.docs.js +273 -0
  192. package/lib/DateTime/CalendarView.js +285 -0
  193. package/lib/DateTime/DateTime.js +889 -0
  194. package/lib/DateTime/DateTime.module.css +188 -0
  195. package/lib/DateTime/DateTimePopupFooter.js +90 -0
  196. package/lib/DateTime/DateTimePopupHeader.js +149 -0
  197. package/lib/DateTime/DateWidget.js +1189 -0
  198. package/lib/DateTime/DateWidget.module.css +46 -0
  199. package/lib/DateTime/DaysRow.js +76 -0
  200. package/lib/DateTime/Time.js +248 -0
  201. package/lib/DateTime/YearView.js +324 -0
  202. package/lib/DateTime/YearView.module.css +80 -0
  203. package/lib/DateTime/__tests__/CalendarView.spec.js +45 -0
  204. package/lib/DateTime/__tests__/DateTime.spec.js +127 -0
  205. package/lib/DateTime/__tests__/DateWidget.spec.js +81 -0
  206. package/lib/DateTime/common.js +36 -0
  207. package/lib/DateTime/constants.js +77 -0
  208. package/lib/DateTime/dateFormatUtils/dateFormat.js +613 -0
  209. package/lib/DateTime/dateFormatUtils/dayChange.js +81 -0
  210. package/lib/DateTime/dateFormatUtils/index.js +274 -0
  211. package/lib/DateTime/dateFormatUtils/monthChange.js +94 -0
  212. package/lib/DateTime/dateFormatUtils/timeChange.js +240 -0
  213. package/lib/DateTime/dateFormatUtils/yearChange.js +119 -0
  214. package/lib/DateTime/docs/DateTime__default.docs.js +142 -0
  215. package/lib/DateTime/docs/DateWidget__default.docs.js +240 -0
  216. package/lib/DateTime/docs/timezonedata.json +1 -0
  217. package/lib/DateTime/index.js +15 -0
  218. package/lib/DateTime/objectUtils.js +76 -0
  219. package/lib/DateTime/typeChecker.js +26 -0
  220. package/lib/DateTime/validator.js +353 -0
  221. package/lib/DropBox/DropBox.js +389 -0
  222. package/lib/DropBox/DropBox.module.css +406 -0
  223. package/lib/DropBox/DropBoxPositionMapping.json +145 -0
  224. package/lib/DropBox/__tests__/DropBox.spec.js +87 -0
  225. package/lib/DropBox/docs/DropBox__custom.docs.js +122 -0
  226. package/lib/DropBox/docs/DropBox__customOrder.docs.js +141 -0
  227. package/lib/DropBox/docs/DropBox__fixedPosition.docs.js +140 -0
  228. package/lib/DropBox/docs/DropBox__position.docs.js +142 -0
  229. package/lib/DropBox/docs/DropBox__size.docs.js +116 -0
  230. package/lib/DropDown/DropDown.js +203 -0
  231. package/lib/DropDown/DropDown.module.css +5 -0
  232. package/lib/DropDown/DropDownHeading.js +102 -0
  233. package/lib/DropDown/DropDownHeading.module.css +53 -0
  234. package/lib/DropDown/DropDownItem.js +139 -0
  235. package/lib/DropDown/DropDownItem.module.css +94 -0
  236. package/lib/DropDown/DropDownSearch.js +132 -0
  237. package/lib/DropDown/DropDownSearch.module.css +14 -0
  238. package/lib/DropDown/DropDownSeparator.js +66 -0
  239. package/lib/DropDown/DropDownSeparator.module.css +7 -0
  240. package/lib/DropDown/__tests__/DropDown.spec.js +50 -0
  241. package/lib/DropDown/__tests__/DropDownItem.spec.js +51 -0
  242. package/lib/DropDown/__tests__/DropDownSearch.spec.js +17 -0
  243. package/lib/DropDown/docs/DropDownHeading__custom.docs.js +73 -0
  244. package/lib/DropDown/docs/DropDownHeading__default.docs.js +70 -0
  245. package/lib/Label/Label.js +109 -0
  246. package/lib/Label/Label.module.css +52 -0
  247. package/lib/Label/LabelColors.module.css +21 -0
  248. package/lib/Label/__tests__/Label.spec.js +137 -0
  249. package/lib/Label/__tests__/__snapshots__/Label.spec.js.snap +101 -0
  250. package/lib/Label/docs/Label__clipped.docs.js +81 -0
  251. package/lib/Label/docs/Label__custom.docs.js +85 -0
  252. package/lib/Label/docs/Label__palette.docs.js +96 -0
  253. package/lib/Label/docs/Label__size.docs.js +83 -0
  254. package/lib/Label/docs/Label__type.docs.js +91 -0
  255. package/lib/Layout/Box.js +138 -0
  256. package/lib/Layout/Container.js +152 -0
  257. package/lib/Layout/Layout.module.css +324 -0
  258. package/lib/Layout/__tests__/Box.spec.js +121 -0
  259. package/lib/Layout/__tests__/Container.spec.js +127 -0
  260. package/lib/Layout/docs/Layout__Hidden.docs.js +127 -0
  261. package/lib/Layout/docs/Layout__default.docs.js +98 -0
  262. package/lib/Layout/docs/Layout__four_Column.docs.js +135 -0
  263. package/lib/Layout/docs/Layout__three_Column.docs.js +126 -0
  264. package/lib/Layout/docs/Layout__two_Column.docs.js +119 -0
  265. package/lib/Layout/index.js +34 -0
  266. package/lib/Layout/utils.js +55 -0
  267. package/lib/LightNightMode/Colors.json +398 -0
  268. package/lib/LightNightMode/docs/AlternativeColors.docs.js +131 -0
  269. package/lib/ListItem/ListItem.js +234 -0
  270. package/lib/ListItem/ListItem.module.css +200 -0
  271. package/lib/ListItem/ListItemWithAvatar.js +236 -0
  272. package/lib/ListItem/ListItemWithCheckBox.js +208 -0
  273. package/lib/ListItem/ListItemWithIcon.js +221 -0
  274. package/lib/ListItem/ListItemWithRadio.js +209 -0
  275. package/lib/ListItem/docs/ListItemWithAvatar__custom.docs.js +206 -0
  276. package/lib/ListItem/docs/ListItemWithAvatar__default.docs.js +162 -0
  277. package/lib/ListItem/docs/ListItemWithCheckBox__custom.docs.js +142 -0
  278. package/lib/ListItem/docs/ListItemWithCheckBox__default.docs.js +115 -0
  279. package/lib/ListItem/docs/ListItemWithIcon__custom.docs.js +119 -0
  280. package/lib/ListItem/docs/ListItemWithIcon__default.docs.js +112 -0
  281. package/lib/ListItem/docs/ListItemWithRadio__custom.docs.js +142 -0
  282. package/lib/ListItem/docs/ListItemWithRadio__default.docs.js +115 -0
  283. package/lib/ListItem/docs/ListItem__custom.docs.js +164 -0
  284. package/lib/ListItem/docs/ListItem__default.docs.js +131 -0
  285. package/lib/Modal/Modal.js +218 -0
  286. package/lib/Modal/__docs__/Modal__default.docs.js +88 -0
  287. package/lib/MultiSelect/AdvancedGroupMultiSelect.js +1215 -0
  288. package/lib/MultiSelect/AdvancedMultiSelect.js +669 -0
  289. package/lib/MultiSelect/AdvancedMultiSelect.module.css +127 -0
  290. package/lib/MultiSelect/EmptyState.js +132 -0
  291. package/lib/MultiSelect/MultiSelect.js +1217 -0
  292. package/lib/MultiSelect/MultiSelect.module.css +198 -0
  293. package/lib/MultiSelect/MultiSelectHeader.js +86 -0
  294. package/lib/MultiSelect/MultiSelectWithAvatar.js +407 -0
  295. package/lib/MultiSelect/SelectedOptions.js +139 -0
  296. package/lib/MultiSelect/SelectedOptions.module.css +15 -0
  297. package/lib/MultiSelect/Suggestions.js +205 -0
  298. package/lib/MultiSelect/__tests__/MultiSelect.spec.js +170 -0
  299. package/lib/MultiSelect/docs/AdvancedGroupMultiSelect__default.docs.js +177 -0
  300. package/lib/MultiSelect/docs/AdvancedMultiSelect__default.docs.js +150 -0
  301. package/lib/MultiSelect/docs/MultiSelectWithAvatar__default.docs.js +191 -0
  302. package/lib/MultiSelect/docs/MultiSelect__default.docs.js +214 -0
  303. package/lib/PopOver/PopOver.js +366 -0
  304. package/lib/PopOver/PopOver.module.css +8 -0
  305. package/lib/PopOver/__tests__/PopOver.spec.js +20 -0
  306. package/lib/PopOver/docs/PopOver__default.docs.js +86 -0
  307. package/lib/Popup/Popup.js +716 -0
  308. package/lib/Popup/PositionMapping.json +74 -0
  309. package/lib/Popup/__tests__/Popup.spec.js +192 -0
  310. package/lib/Popup/viewPort.js +368 -0
  311. package/lib/Provider/AvatarSize.js +23 -0
  312. package/lib/Provider/Config.js +24 -0
  313. package/lib/Provider/CssProvider.js +27 -0
  314. package/lib/Provider/IdProvider.js +82 -0
  315. package/lib/Provider/LibraryContext.js +76 -0
  316. package/lib/Provider/LibraryContextInit.js +15 -0
  317. package/lib/Provider/NumberGenerator/NumberGenerator.js +174 -0
  318. package/lib/Provider/ZindexProvider.js +69 -0
  319. package/lib/Provider/docs/Provider_Id__Class.docs.js +77 -0
  320. package/lib/Provider/docs/Provider_Id__Function.docs.js +29 -0
  321. package/lib/Provider/docs/Provider_Zindex__Class.docs.js +80 -0
  322. package/lib/Provider/docs/Provider_Zindex__Function.docs.js +34 -0
  323. package/lib/Provider.js +241 -0
  324. package/lib/Radio/Radio.js +216 -0
  325. package/lib/Radio/Radio.module.css +110 -0
  326. package/lib/Radio/__tests__/Radiospec.js +29 -0
  327. package/lib/Radio/docs/Radio__custom.docs.js +299 -0
  328. package/lib/Radio/docs/Radio__default.docs.js +222 -0
  329. package/lib/Responsive/CustomResponsive.js +246 -0
  330. package/lib/Responsive/RefWrapper.js +55 -0
  331. package/lib/Responsive/ResizeComponent.js +268 -0
  332. package/lib/Responsive/ResizeObserver.js +168 -0
  333. package/lib/Responsive/Responsive.js +281 -0
  334. package/lib/Responsive/docs/Responsive__Custom.docs.js +272 -0
  335. package/lib/Responsive/docs/Responsive__default.docs.js +142 -0
  336. package/lib/Responsive/docs/style.module.css +56 -0
  337. package/lib/Responsive/index.js +30 -0
  338. package/lib/Responsive/sizeObservers.js +207 -0
  339. package/lib/Responsive/utils/index.js +70 -0
  340. package/lib/Responsive/utils/shallowCompare.js +38 -0
  341. package/lib/Responsive/windowResizeObserver.js +63 -0
  342. package/lib/Ribbon/Ribbon.js +115 -0
  343. package/lib/Ribbon/Ribbon.module.css +377 -0
  344. package/lib/Ribbon/__tests__/Ribbon.spec.js +193 -0
  345. package/lib/Ribbon/__tests__/__snapshots__/Ribbon.spec.js.snap +163 -0
  346. package/lib/Ribbon/docs/Ribbon__custom.docs.js +437 -0
  347. package/lib/Ribbon/docs/Ribbon__default.docs.js +392 -0
  348. package/lib/RippleEffect/RippleEffect.js +58 -0
  349. package/lib/RippleEffect/RippleEffect.module.css +67 -0
  350. package/lib/RippleEffect/docs/RippleEffect__default.docs.js +484 -0
  351. package/lib/Select/GroupSelect.js +944 -0
  352. package/lib/Select/Select.js +1036 -0
  353. package/lib/Select/Select.module.css +100 -0
  354. package/lib/Select/SelectWithAvatar.js +430 -0
  355. package/lib/Select/SelectWithIcon.js +556 -0
  356. package/lib/Select/__tests__/Select.spec.js +383 -0
  357. package/lib/Select/docs/GroupSelect__default.docs.js +199 -0
  358. package/lib/Select/docs/SelectWithAvatar__default.docs.js +152 -0
  359. package/lib/Select/docs/SelectWithIcon__default.docs.js +190 -0
  360. package/lib/Select/docs/Select__default.docs.js +261 -0
  361. package/lib/Stencils/Stencils.js +94 -0
  362. package/lib/Stencils/Stencils.module.css +106 -0
  363. package/lib/Stencils/__tests__/Stencils.spec.js +84 -0
  364. package/lib/Stencils/__tests__/__snapshots__/Stencils.spec.js.snap +49 -0
  365. package/lib/Stencils/docs/Stencils__custom.docs.js +96 -0
  366. package/lib/Stencils/docs/Stencils__default.docs.js +101 -0
  367. package/lib/Switch/Switch.js +183 -0
  368. package/lib/Switch/Switch.module.css +110 -0
  369. package/lib/Switch/docs/Switch__custom.docs.js +203 -0
  370. package/lib/Switch/docs/Switch__default.docs.js +156 -0
  371. package/lib/Tab/Tab.js +158 -0
  372. package/lib/Tab/Tab.module.css +101 -0
  373. package/lib/Tab/TabContent.js +45 -0
  374. package/lib/Tab/TabContent.module.css +4 -0
  375. package/lib/Tab/TabContentWrapper.js +47 -0
  376. package/lib/Tab/TabWrapper.js +109 -0
  377. package/lib/Tab/Tabs.js +685 -0
  378. package/lib/Tab/Tabs.module.css +140 -0
  379. package/lib/Tab/__tests__/Tab.spec.js +130 -0
  380. package/lib/Tab/__tests__/TabContent.spec.js +22 -0
  381. package/lib/Tab/__tests__/TabContentWrapper.spec.js +59 -0
  382. package/lib/Tab/__tests__/TabWrapper.spec.js +100 -0
  383. package/lib/Tab/__tests__/Tabs.spec.js +123 -0
  384. package/lib/Tab/docs/Tab__default.docs.js +308 -0
  385. package/lib/Tab/docs/tabdocs.module.css +29 -0
  386. package/lib/Tab/index.js +47 -0
  387. package/lib/Tag/Tag.js +246 -0
  388. package/lib/Tag/Tag.module.css +247 -0
  389. package/lib/Tag/__tests__/Tag.spec.js +35 -0
  390. package/lib/Tag/docs/Tag__custom.docs.js +423 -0
  391. package/lib/Tag/docs/Tag__default.docs.js +307 -0
  392. package/lib/TextBox/TextBox.js +287 -0
  393. package/lib/TextBox/TextBox.module.css +157 -0
  394. package/lib/TextBox/__tests__/TextBox.spec.js +205 -0
  395. package/lib/TextBox/__tests__/__snapshots__/TextBox.spec.js.snap +127 -0
  396. package/lib/TextBox/docs/TextBox__custom.docs.js +98 -0
  397. package/lib/TextBox/docs/TextBox__default.docs.js +95 -0
  398. package/lib/TextBox/docs/TextBox__size.docs.js +93 -0
  399. package/lib/TextBox/docs/TextBox__variant.docs.js +93 -0
  400. package/lib/TextBoxIcon/TextBoxIcon.js +276 -0
  401. package/lib/TextBoxIcon/TextBoxIcon.module.css +75 -0
  402. package/lib/TextBoxIcon/__tests__/TextBoxIcon.spec.js +228 -0
  403. package/lib/TextBoxIcon/__tests__/__snapshots__/TextBoxIcon.spec.js.snap +334 -0
  404. package/lib/TextBoxIcon/docs/TextBoxIcon__custom.docs.js +145 -0
  405. package/lib/TextBoxIcon/docs/TextBoxIcon__default.docs.js +117 -0
  406. package/lib/Textarea/Textarea.js +202 -0
  407. package/lib/Textarea/Textarea.module.css +139 -0
  408. package/lib/Textarea/__tests__/Textarea.spec.js +186 -0
  409. package/lib/Textarea/__tests__/__snapshots__/Textarea.spec.js.snap +97 -0
  410. package/lib/Textarea/docs/Textarea__animated.docs.js +95 -0
  411. package/lib/Textarea/docs/Textarea__custom.docs.js +137 -0
  412. package/lib/Textarea/docs/Textarea__default.docs.js +130 -0
  413. package/lib/Textarea/docs/Textarea__disabled.docs.js +83 -0
  414. package/lib/Tooltip/Tooltip.js +538 -0
  415. package/lib/Tooltip/Tooltip.module.css +104 -0
  416. package/lib/Tooltip/__tests__/Tooltip.spec.js +98 -0
  417. package/lib/Tooltip/docs/Tooltip__default.docs.js +391 -0
  418. package/lib/VelocityAnimation/VelocityAnimation/VelocityAnimation.js +144 -0
  419. package/lib/VelocityAnimation/VelocityAnimation/docs/VelocityAnimation__demo.docs.js +150 -0
  420. package/lib/VelocityAnimation/VelocityAnimationGroup/VelocityAnimationGroup.js +188 -0
  421. package/lib/VelocityAnimation/VelocityAnimationGroup/docs/VelocityAnimationGroup__demo.docs.js +206 -0
  422. package/lib/a11y/FocusScope/FocusScope.js +443 -0
  423. package/lib/a11y/FocusScope/docs/FocusScope__default.docs.js +191 -0
  424. package/lib/beta/FocusRing/FocusRing.js +338 -0
  425. package/lib/beta/FocusRing/FocusRing.module.css +152 -0
  426. package/lib/beta/FocusRing/docs/FocusRing__default.docs.js +101 -0
  427. package/lib/common/animation.module.css +612 -0
  428. package/lib/common/avatarsizes.module.css +45 -0
  429. package/lib/common/basic.module.css +33 -0
  430. package/lib/common/basicReset.module.css +40 -0
  431. package/lib/common/common.module.css +502 -0
  432. package/lib/common/customscroll.module.css +89 -0
  433. package/lib/common/docStyle.module.css +762 -0
  434. package/lib/common/reset.module.css +12 -0
  435. package/lib/common/transition.module.css +146 -0
  436. package/lib/css.js +83 -0
  437. package/lib/deprecated/PortalLayer/PortalLayer.js +165 -0
  438. package/lib/deprecated/PortalLayer/docs/PortalLayer__default.docs.js +145 -0
  439. package/lib/deprecated/Theme/darkTheme.module.css +393 -0
  440. package/lib/deprecated/Theme/defaultTheme.module.css +393 -0
  441. package/lib/deprecated/Theme/palette/darkCTAPalette.module.css +116 -0
  442. package/lib/deprecated/Theme/palette/darkPalette.module.css +155 -0
  443. package/lib/deprecated/Theme/palette/defaultCTAPalette.module.css +116 -0
  444. package/lib/deprecated/Theme/palette/defaultPalette.module.css +155 -0
  445. package/lib/deprecated/customscroll_Old.module.css +46 -0
  446. package/lib/index.js +1412 -0
  447. package/lib/semantic/Button/Button.js +138 -0
  448. package/lib/semantic/Button/docs/Button__default.docs.js +66 -0
  449. package/lib/semantic/Button/semanticButton.module.css +9 -0
  450. package/lib/utils/Common.js +457 -0
  451. package/lib/utils/ContextOptimizer.js +49 -0
  452. package/lib/utils/__tests__/constructFullName.spec.js +12 -0
  453. package/lib/utils/__tests__/debounce.spec.js +40 -0
  454. package/lib/utils/__tests__/getInitial.spec.js +26 -0
  455. package/lib/utils/constant.js +10 -0
  456. package/lib/utils/constructFullName.js +34 -0
  457. package/lib/utils/datetime/common.js +233 -0
  458. package/lib/utils/debounce.js +30 -0
  459. package/lib/utils/dropDownUtils.js +556 -0
  460. package/lib/utils/dummyFunction.js +10 -0
  461. package/lib/utils/getHTMLFontSize.js +11 -0
  462. package/lib/utils/getInitial.js +33 -0
  463. package/lib/utils/scrollTo.js +22 -0
  464. package/package.json +4 -4
@@ -0,0 +1,83 @@
1
+ "use strict";
2
+
3
+ function _typeof(obj) { "@babel/helpers - typeof"; if (typeof Symbol === "function" && typeof Symbol.iterator === "symbol") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === "function" && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }; } return _typeof(obj); }
4
+
5
+ Object.defineProperty(exports, "__esModule", {
6
+ value: true
7
+ });
8
+ exports["default"] = void 0;
9
+
10
+ var _react = _interopRequireWildcard(require("react"));
11
+
12
+ var _Textarea = _interopRequireDefault(require("../Textarea"));
13
+
14
+ var _CodeExtractor = _interopRequireDefault(require("@zohodesk/docstool/lib/CodeExtractor/CodeExtractor"));
15
+
16
+ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; }
17
+
18
+ function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
19
+
20
+ function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || _typeof(obj) !== "object" && typeof obj !== "function") { return { "default": obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj["default"] = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
21
+
22
+ function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
23
+
24
+ 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); } }
25
+
26
+ function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; }
27
+
28
+ 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 } }); if (superClass) _setPrototypeOf(subClass, superClass); }
29
+
30
+ function _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }
31
+
32
+ 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); }; }
33
+
34
+ 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); }
35
+
36
+ function _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return self; }
37
+
38
+ 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; } }
39
+
40
+ function _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); }
41
+
42
+ var Textarea__disabled = /*#__PURE__*/function (_Component) {
43
+ _inherits(Textarea__disabled, _Component);
44
+
45
+ var _super = _createSuper(Textarea__disabled);
46
+
47
+ function Textarea__disabled() {
48
+ _classCallCheck(this, Textarea__disabled);
49
+
50
+ return _super.apply(this, arguments);
51
+ }
52
+
53
+ _createClass(Textarea__disabled, [{
54
+ key: "render",
55
+ value: function render() {
56
+ var style = {
57
+ marginBottom: '20px',
58
+ width: '350px'
59
+ };
60
+ return /*#__PURE__*/_react["default"].createElement("div", {
61
+ style: style
62
+ }, /*#__PURE__*/_react["default"].createElement(_CodeExtractor["default"], null, /*#__PURE__*/_react["default"].createElement(_Textarea["default"], {
63
+ value: "TextArea component description",
64
+ id: "textarea",
65
+ maxLength: 100,
66
+ onChange: function onChange() {},
67
+ isDisabled: true
68
+ })));
69
+ }
70
+ }]);
71
+
72
+ return Textarea__disabled;
73
+ }(_react.Component);
74
+
75
+ exports["default"] = Textarea__disabled;
76
+
77
+ if (false) {
78
+ Textarea__disabled.docs = {
79
+ componentGroup: 'Form Elements',
80
+ folderName: 'Style Guide',
81
+ description: ' '
82
+ };
83
+ }
@@ -0,0 +1,538 @@
1
+ "use strict";
2
+
3
+ function _typeof(obj) { "@babel/helpers - typeof"; if (typeof Symbol === "function" && typeof Symbol.iterator === "symbol") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === "function" && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }; } return _typeof(obj); }
4
+
5
+ Object.defineProperty(exports, "__esModule", {
6
+ value: true
7
+ });
8
+ exports["default"] = void 0;
9
+
10
+ var _react = _interopRequireDefault(require("react"));
11
+
12
+ var _propTypes = _interopRequireDefault(require("prop-types"));
13
+
14
+ var _TooltipModule = _interopRequireDefault(require("./Tooltip.module.css"));
15
+
16
+ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; }
17
+
18
+ function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
19
+
20
+ 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); } }
21
+
22
+ function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; }
23
+
24
+ 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 } }); if (superClass) _setPrototypeOf(subClass, superClass); }
25
+
26
+ function _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }
27
+
28
+ 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); }; }
29
+
30
+ 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); }
31
+
32
+ function _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return self; }
33
+
34
+ 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; } }
35
+
36
+ function _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); }
37
+
38
+ var Tooltip = /*#__PURE__*/function (_React$Component) {
39
+ _inherits(Tooltip, _React$Component);
40
+
41
+ var _super = _createSuper(Tooltip);
42
+
43
+ function Tooltip(props) {
44
+ var _this;
45
+
46
+ _classCallCheck(this, Tooltip);
47
+
48
+ _this = _super.call(this, props);
49
+ _this.state = {
50
+ title: null,
51
+ left: 0,
52
+ top: 0,
53
+ arrowLeft: 0,
54
+ isArrowRight: null,
55
+ isHtml: false
56
+ };
57
+ _this.handleOver = _this.handleOver.bind(_assertThisInitialized(_this));
58
+ _this.getToolTipDOM = _this.getToolTipDOM.bind(_assertThisInitialized(_this));
59
+ _this.reset = _this.reset.bind(_assertThisInitialized(_this));
60
+ _this.getDirection = document.getElementsByTagName('html')[0];
61
+ _this.leftRightScreenEdge = _this.leftRightScreenEdge.bind(_assertThisInitialized(_this));
62
+ _this.topBottomScreenEdge = _this.topBottomScreenEdge.bind(_assertThisInitialized(_this));
63
+ return _this;
64
+ }
65
+
66
+ _createClass(Tooltip, [{
67
+ key: "getToolTipDOM",
68
+ value: function getToolTipDOM(el) {
69
+ this.toolTip = el;
70
+ }
71
+ }, {
72
+ key: "reset",
73
+ value: function reset() {
74
+ var title = this.state.title;
75
+
76
+ if (title !== null) {
77
+ this.setState({
78
+ title: null,
79
+ top: 0,
80
+ left: 0
81
+ });
82
+ }
83
+ }
84
+ /* left and right screen edge check for top and bottom tooltip position */
85
+
86
+ }, {
87
+ key: "leftRightScreenEdge",
88
+ value: function leftRightScreenEdge(tLeft, toolTipArrowLeft, thisLeft, thisWidth, tooltipoffsetWidth, bodyWidth, rightEdge, bodyLeft) {
89
+ if (tLeft - bodyLeft <= 1) {
90
+ // top & bottom position left side screen edge case
91
+ tLeft = bodyLeft + 2;
92
+ toolTipArrowLeft = parseInt(thisLeft - bodyLeft + thisWidth / 2 - 6);
93
+ } else if (tLeft - bodyLeft + tooltipoffsetWidth > bodyWidth) {
94
+ // top & bottom position right side screen edge case
95
+ rightEdge = tLeft + tooltipoffsetWidth - bodyWidth + 2;
96
+ tLeft = tLeft + bodyLeft - rightEdge;
97
+ toolTipArrowLeft = toolTipArrowLeft - bodyLeft + rightEdge;
98
+ } else if (tLeft + tooltipoffsetWidth + tooltipoffsetWidth >= bodyWidth - 2) {
99
+ // top & bottom center screen tooltip collide with right edge screen
100
+ tLeft = parseInt(thisLeft - (tooltipoffsetWidth - thisWidth) / 2);
101
+ toolTipArrowLeft = parseInt(tooltipoffsetWidth / 2 - 4);
102
+ }
103
+
104
+ return {
105
+ tLeft: tLeft,
106
+ toolTipArrowLeft: toolTipArrowLeft,
107
+ thisLeft: thisLeft,
108
+ thisWidth: thisWidth,
109
+ tooltipoffsetWidth: tooltipoffsetWidth,
110
+ bodyWidth: bodyWidth,
111
+ rightEdge: rightEdge
112
+ };
113
+ }
114
+ /* top and bottom screen edge check for left and right tooltip position */
115
+
116
+ }, {
117
+ key: "topBottomScreenEdge",
118
+ value: function topBottomScreenEdge(tTop, toolTipArrowTop, thisTop, thisHeight, tooltipoffsetHeight, bodyHeight, bottomEdge) {
119
+ if (tTop <= 1) {
120
+ tTop = 2;
121
+ toolTipArrowTop = parseInt(thisTop + thisHeight / 2);
122
+ } else if (tTop + tooltipoffsetHeight > bodyHeight) {
123
+ bottomEdge = tTop + tooltipoffsetHeight - bodyHeight + 2;
124
+ tTop -= bottomEdge;
125
+ toolTipArrowTop += bottomEdge;
126
+ }
127
+
128
+ return {
129
+ tTop: tTop,
130
+ toolTipArrowTop: toolTipArrowTop,
131
+ thisTop: thisTop,
132
+ thisHeight: thisHeight,
133
+ tooltipoffsetHeight: tooltipoffsetHeight,
134
+ bodyHeight: bodyHeight,
135
+ bottomEdge: bottomEdge
136
+ };
137
+ }
138
+ }, {
139
+ key: "handleOver",
140
+ value: function handleOver(e) {
141
+ var _this2 = this;
142
+
143
+ var element = e.target;
144
+ var titleDiv = element.hasAttribute('data-title') || element.hasAttribute('title') ? element : element.closest('[data-title]') || element.closest('[title]');
145
+
146
+ if (titleDiv) {
147
+ var title = titleDiv.getAttribute('data-title') || titleDiv.getAttribute('title');
148
+ /* if data-title-position is left or right change right and left in rtl case */
149
+
150
+ var isPosition = titleDiv.getAttribute('data-title-position');
151
+ var elem = this.getDirection;
152
+
153
+ if (elem.getAttribute('dir') == 'rtl') {
154
+ if (isPosition == 'left') {
155
+ isPosition = 'right';
156
+ } else if (isPosition == 'right') {
157
+ isPosition = 'left';
158
+ }
159
+ }
160
+
161
+ if (title !== '' && title) {
162
+ titleDiv.setAttribute('data-title', title);
163
+ titleDiv.removeAttribute('title');
164
+
165
+ if (element.nodeName !== 'I' && element.innerText && element.innerText.trim() !== '') {
166
+ var isContentDotted = '';
167
+
168
+ if (element.scrollWidth !== 0) {
169
+ isContentDotted = element.offsetWidth < element.scrollWidth;
170
+
171
+ if (!isContentDotted) {
172
+ isContentDotted = element.offsetHeight < element.scrollHeight;
173
+ } // if (!isContentDotted) {Need to check the code Sivanesh
174
+ // isContentDotted = element.offsetHeight < element.scrollHeight;
175
+ // }
176
+
177
+ } else {
178
+ isContentDotted = element.parentElement.offsetWidth < element.parentElement.scrollWidth;
179
+ }
180
+
181
+ var originText = element.innerText.replace(/\s/g, '').toLowerCase();
182
+ var tooltipText = title.replace(/\s/g, '').toLowerCase();
183
+ var isDefaultTooltip = element.hasAttribute('data-istitle') || element.hasAttribute('istitle') ? element.getAttribute('data-istitle') || element.getAttribute('istitle') : 'false';
184
+ isDefaultTooltip = isDefaultTooltip === 'true';
185
+ var isSameText = originText.indexOf(tooltipText) !== -1 ? true : false;
186
+
187
+ if (!isContentDotted && isSameText && !isDefaultTooltip) {
188
+ return false;
189
+ }
190
+
191
+ if (isContentDotted && titleDiv.getAttribute('data-dottedTitle')) {
192
+ title = titleDiv.getAttribute('data-dottedTitle');
193
+ }
194
+ }
195
+
196
+ var isHtml = titleDiv.getAttribute('data-ishtml');
197
+ var dataTooltipnoArrow = titleDiv.getAttribute('data-tooltip-noarrow') === 'true' ? true : false;
198
+ var clientRect = titleDiv.getBoundingClientRect();
199
+ var boxLayout = document.body.getBoundingClientRect();
200
+ this.setState({
201
+ title: title,
202
+ isHtml: isHtml,
203
+ dataTooltipnoArrow: dataTooltipnoArrow
204
+ }, function () {
205
+ var tooltip = _this2.toolTip;
206
+
207
+ if (tooltip) {
208
+ /* element top, left, height, width */
209
+ var thisTop = clientRect.top;
210
+ var thisLeft = clientRect.left;
211
+ var thisHeight = clientRect.height;
212
+ var thisWidth = clientRect.width;
213
+ /* box layout left spacing */
214
+
215
+ var bodyLeft = boxLayout.left; // let checkTop = thisTop + thisHeight;
216
+
217
+ /* element left plus element width */
218
+
219
+ var checkLeft = thisLeft + thisWidth;
220
+ var tTop;
221
+ var tLeft;
222
+ var toolTipArrowTop;
223
+ var toolTipArrowLeft;
224
+ var rightEdge;
225
+ var bottomEdge;
226
+ var tooltipLeft;
227
+ /* offset width, height of body */
228
+
229
+ var bodyWidth = document.body.offsetWidth;
230
+ var bodyHeight = document.body.offsetHeight;
231
+ var isArrowHorizontal = false;
232
+ var isArrowDown = false;
233
+ var isArrowRight = false;
234
+ var tWidth = '';
235
+ /* overall body height minus element top + element height */
236
+
237
+ var thisBottom = bodyHeight - (thisTop + thisHeight);
238
+ /* overall body width minus element left + element width */
239
+
240
+ var thisRight = bodyWidth - (thisLeft + thisWidth);
241
+ /* tooltip width and height */
242
+
243
+ var tooltipoffsetWidth = tooltip.offsetWidth;
244
+ var tooltipoffsetHeight = tooltip.offsetHeight;
245
+
246
+ if (isPosition) {
247
+ if (isPosition == 'top') {
248
+ /* if top does not have enough space show tooltip in bottom area */
249
+ if (thisTop <= tooltipoffsetHeight + 5) {
250
+ /* if top space is larger than bottom space show tooltip in top area */
251
+ if (thisTop > thisBottom) {
252
+ tTop = parseInt(thisTop - (tooltipoffsetHeight + 10));
253
+ tLeft = parseInt(thisLeft - (tooltipoffsetWidth - thisWidth) / 2 + 2);
254
+ toolTipArrowTop = parseInt(tooltipoffsetHeight - 4);
255
+ toolTipArrowLeft = parseInt(tooltipoffsetWidth / 2 - 6);
256
+ isArrowDown = true;
257
+ } else {
258
+ /* bottom position */
259
+ tTop = parseInt(thisTop + (thisHeight + 10));
260
+ tLeft = parseInt(thisLeft - (tooltipoffsetWidth - thisWidth) / 2 + 2);
261
+ toolTipArrowTop = -4;
262
+ toolTipArrowLeft = parseInt(tooltipoffsetWidth / 2 - 6);
263
+ isArrowDown = false;
264
+ }
265
+ } else {
266
+ /* if top have enough space show tooltip in top area */
267
+ tTop = parseInt(thisTop - (tooltipoffsetHeight + 10));
268
+ tLeft = parseInt(thisLeft - (tooltipoffsetWidth - thisWidth) / 2 + 2);
269
+ toolTipArrowTop = parseInt(tooltipoffsetHeight - 4);
270
+ toolTipArrowLeft = parseInt(tooltipoffsetWidth / 2 - 6);
271
+ isArrowDown = true;
272
+ }
273
+ /* top tooltip left and right corner edge case */
274
+
275
+
276
+ var values = _this2.leftRightScreenEdge(tLeft, toolTipArrowLeft, thisLeft, thisWidth, tooltipoffsetWidth, bodyWidth, rightEdge, bodyLeft);
277
+
278
+ tLeft = values.tLeft, toolTipArrowLeft = values.toolTipArrowLeft, thisLeft = values.thisLeft, thisWidth = values.thisWidth, tooltipoffsetWidth = values.tooltipoffsetWidth, bodyWidth = values.bodyWidth, rightEdge = values.rightEdge;
279
+ } else if (isPosition == 'bottom') {
280
+ /* if bottom does not have enough space show tooltip in top area */
281
+ if (thisBottom <= tooltipoffsetHeight + 5) {
282
+ /* if bottom space is larger than top space show tooltip in bottom area */
283
+ if (thisTop > thisBottom) {
284
+ tTop = parseInt(thisTop - (tooltipoffsetHeight + 10));
285
+ tLeft = parseInt(thisLeft - (tooltipoffsetWidth - thisWidth) / 2 + 2);
286
+ toolTipArrowTop = parseInt(tooltipoffsetHeight - 4);
287
+ toolTipArrowLeft = parseInt(tooltipoffsetWidth / 2 - 6);
288
+ isArrowDown = true;
289
+ } else {
290
+ /* top position */
291
+ tTop = parseInt(thisTop + (thisHeight + 10));
292
+ tLeft = parseInt(thisLeft - (tooltipoffsetWidth - thisWidth) / 2 + 2);
293
+ toolTipArrowTop = -4;
294
+ toolTipArrowLeft = parseInt(tooltipoffsetWidth / 2 - 6);
295
+ isArrowDown = false;
296
+ }
297
+ } else {
298
+ /* if bottom have enough space show tooltip in bottom area */
299
+ tTop = parseInt(thisTop + (thisHeight + 10));
300
+ tLeft = parseInt(thisLeft - (tooltipoffsetWidth - thisWidth) / 2 + 2);
301
+ toolTipArrowTop = -4;
302
+ toolTipArrowLeft = parseInt(tooltipoffsetWidth / 2 - 6);
303
+ isArrowDown = false;
304
+ }
305
+ /* bottom tooltip left and right corner edge case */
306
+
307
+
308
+ var _values = _this2.leftRightScreenEdge(tLeft, toolTipArrowLeft, thisLeft, thisWidth, tooltipoffsetWidth, bodyWidth, rightEdge, bodyLeft);
309
+
310
+ tLeft = _values.tLeft, toolTipArrowLeft = _values.toolTipArrowLeft, thisLeft = _values.thisLeft, thisWidth = _values.thisWidth, tooltipoffsetWidth = _values.tooltipoffsetWidth, bodyWidth = _values.bodyWidth, rightEdge = _values.rightEdge;
311
+ } else if (isPosition == 'left') {
312
+ isArrowHorizontal = true;
313
+
314
+ if (thisLeft - bodyLeft <= tooltipoffsetWidth) {
315
+ if (thisLeft - bodyLeft <= thisRight) {
316
+ /* if left does not have enough space show tooltip in right area */
317
+ tTop = parseInt(thisTop + (thisHeight / 2 - tooltipoffsetHeight / 2));
318
+ tLeft = parseInt(thisLeft + thisWidth + 10);
319
+ toolTipArrowTop = parseInt(tooltipoffsetHeight / 2 - 1);
320
+ toolTipArrowLeft = -1;
321
+ isArrowRight = false;
322
+ } else {
323
+ /* if left space is larger than right space show tooltip in left (default) area */
324
+ if (bodyLeft + tooltipoffsetWidth >= thisLeft) {
325
+ /* if tooltip width is greater than left space, set left space width to tooltip */
326
+ tWidth = thisLeft;
327
+ tTop = parseInt(thisTop + (thisHeight / 2 - tooltipoffsetHeight / 2));
328
+ tLeft = parseInt(thisLeft - tWidth - 7);
329
+ toolTipArrowTop = parseInt(tooltipoffsetHeight / 2 - 1);
330
+ toolTipArrowLeft = parseInt(tWidth - 2);
331
+ isArrowRight = true;
332
+ }
333
+ }
334
+ } else {
335
+ /* if left have enough space show tooltip in left area */
336
+ tTop = parseInt(thisTop + (thisHeight / 2 - tooltipoffsetHeight / 2));
337
+ tLeft = parseInt(thisLeft - tooltipoffsetWidth - 7);
338
+ toolTipArrowTop = parseInt(tooltipoffsetHeight / 2 - 1);
339
+ toolTipArrowLeft = parseInt(tooltipoffsetWidth - 2);
340
+ isArrowRight = true;
341
+ }
342
+ /* left tooltip top and bottom corner edge case */
343
+
344
+
345
+ var _values2 = _this2.topBottomScreenEdge(tTop, toolTipArrowTop, thisTop, thisHeight, tooltipoffsetHeight, bodyHeight, bottomEdge);
346
+
347
+ tTop = _values2.tTop, toolTipArrowTop = _values2.toolTipArrowTop, thisTop = _values2.thisTop, thisHeight = _values2.thisHeight, tooltipoffsetHeight = _values2.tooltipoffsetHeight, bodyHeight = _values2.bodyHeight, bottomEdge = _values2.bottomEdge;
348
+ } else if (isPosition == 'right') {
349
+ isArrowHorizontal = true;
350
+
351
+ if (thisRight + bodyLeft <= tooltipoffsetWidth) {
352
+ if (thisLeft + bodyLeft <= thisRight) {
353
+ /* if right space is larger than left space show tooltip in right (default) area */
354
+ tTop = parseInt(thisTop + (thisHeight / 2 - tooltipoffsetHeight / 2));
355
+ tLeft = parseInt(thisLeft + thisWidth + 7);
356
+ toolTipArrowTop = parseInt(tooltipoffsetHeight / 2 - 1);
357
+ toolTipArrowLeft = -1;
358
+ isArrowRight = false;
359
+ } else {
360
+ /* if right does not have enough space show tooltip in left area */
361
+ if (tooltipoffsetWidth >= thisLeft) {
362
+ /* if tooltip width is greater than left space, set left space width to tooltip */
363
+ tWidth = thisLeft;
364
+ tTop = parseInt(thisTop + (thisHeight / 2 - tooltipoffsetHeight / 2));
365
+ tLeft = parseInt(thisLeft - tWidth - 7);
366
+ toolTipArrowTop = parseInt(tooltipoffsetHeight / 2 - 1);
367
+ toolTipArrowLeft = parseInt(tWidth - 2);
368
+ isArrowRight = true;
369
+ } else {
370
+ /* show tooltip in left area without setting left space width to tooltip */
371
+ tTop = parseInt(thisTop + (thisHeight / 2 - tooltipoffsetHeight / 2));
372
+ tLeft = parseInt(thisLeft - tooltipoffsetWidth - 7);
373
+ toolTipArrowTop = parseInt(tooltipoffsetHeight / 2 - 1);
374
+ toolTipArrowLeft = parseInt(tooltipoffsetWidth - 2);
375
+ isArrowRight = true;
376
+ }
377
+ }
378
+ } else {
379
+ /* if right have enough space show tooltip in right area */
380
+ tTop = parseInt(thisTop + (thisHeight / 2 - tooltipoffsetHeight / 2));
381
+ tLeft = parseInt(thisLeft + thisWidth + 7);
382
+ toolTipArrowTop = parseInt(tooltipoffsetHeight / 2 - 1);
383
+ toolTipArrowLeft = -1;
384
+ isArrowRight = false;
385
+ }
386
+ /* right tooltip left and right corner edge case */
387
+
388
+
389
+ var _values3 = _this2.topBottomScreenEdge(tTop, toolTipArrowTop, thisTop, thisHeight, tooltipoffsetHeight, bodyHeight, bottomEdge);
390
+
391
+ tTop = _values3.tTop, toolTipArrowTop = _values3.toolTipArrowTop, thisTop = _values3.thisTop, thisHeight = _values3.thisHeight, tooltipoffsetHeight = _values3.tooltipoffsetHeight, bodyHeight = _values3.bodyHeight, bottomEdge = _values3.bottomEdge;
392
+ }
393
+
394
+ _this2.setState({
395
+ top: tTop,
396
+ left: tLeft,
397
+ arrowTop: toolTipArrowTop,
398
+ arrowLeft: toolTipArrowLeft,
399
+ isArrowHorizontal: isArrowHorizontal,
400
+ isArrowDown: isArrowDown,
401
+ isArrowRight: isArrowRight,
402
+ width: tWidth
403
+ });
404
+ } else {
405
+ _this2.setState({
406
+ isArrowRight: null
407
+ });
408
+
409
+ tTop = parseInt(thisTop + thisHeight + 10);
410
+ tLeft = parseInt(thisLeft - (tooltipoffsetWidth / 2 - thisWidth / 2) + 2);
411
+ tooltipLeft = parseInt(tooltipoffsetWidth / 2 - 6);
412
+
413
+ if (tLeft - bodyLeft <= 1) {
414
+ // default left side screen edge case
415
+ tooltipLeft = parseInt(thisLeft - bodyLeft + thisWidth / 2 - 6);
416
+ tLeft = bodyLeft + 2;
417
+ } else if (tLeft - bodyLeft + tooltipoffsetWidth > bodyWidth) {
418
+ checkLeft = tLeft + tooltipoffsetWidth - bodyWidth + 2;
419
+ tooltipLeft = tooltipLeft - bodyLeft + checkLeft;
420
+ tLeft = tLeft + bodyLeft - checkLeft;
421
+ } else if (tLeft + tooltipoffsetWidth >= bodyWidth - 2) {
422
+ // default center screen tooltip collide with right edge screen
423
+ tLeft = parseInt(thisLeft - (tooltipoffsetWidth - thisWidth) / 2);
424
+ tooltipLeft = parseInt(tooltipoffsetWidth / 2 - 4);
425
+ }
426
+
427
+ isArrowDown = false;
428
+
429
+ if (tTop + tooltipoffsetHeight > bodyHeight) {
430
+ /* if bottom does not have enough space show tooltip in top area */
431
+ if (thisTop > thisBottom) {
432
+ isArrowDown = true;
433
+ tTop -= tooltipoffsetHeight + thisHeight + 20;
434
+ }
435
+ }
436
+
437
+ if (isArrowDown) {
438
+ var arrowTop = tooltipoffsetHeight - 4;
439
+
440
+ _this2.setState({
441
+ top: tTop,
442
+ left: tLeft,
443
+ arrowLeft: tooltipLeft,
444
+ arrowTop: arrowTop,
445
+ isArrowDown: true,
446
+ isArrowHorizontal: isArrowHorizontal
447
+ });
448
+ } else {
449
+ _this2.setState({
450
+ top: tTop,
451
+ left: tLeft,
452
+ arrowLeft: tooltipLeft,
453
+ arrowTop: -4,
454
+ isArrowDown: false,
455
+ isArrowHorizontal: isArrowHorizontal
456
+ });
457
+ }
458
+ }
459
+ }
460
+ });
461
+ titleDiv.addEventListener('click', this.reset);
462
+ titleDiv.addEventListener('mouseup', this.reset);
463
+ titleDiv.addEventListener('mouseleave', this.reset);
464
+ }
465
+ } else {
466
+ this.reset();
467
+ }
468
+ }
469
+ }, {
470
+ key: "render",
471
+ value: function render() {
472
+ var _this$state = this.state,
473
+ title = _this$state.title,
474
+ left = _this$state.left,
475
+ top = _this$state.top,
476
+ arrowLeft = _this$state.arrowLeft,
477
+ arrowTop = _this$state.arrowTop,
478
+ isArrowDown = _this$state.isArrowDown,
479
+ isArrowRight = _this$state.isArrowRight,
480
+ isArrowHorizontal = _this$state.isArrowHorizontal,
481
+ width = _this$state.width,
482
+ isHtml = _this$state.isHtml,
483
+ dataTooltipnoArrow = _this$state.dataTooltipnoArrow;
484
+ var _this$props = this.props,
485
+ dataId = _this$props.dataId,
486
+ customClass = _this$props.customClass;
487
+ var arrowStyle = isArrowHorizontal ? isArrowRight ? _TooltipModule["default"].arrowRight : _TooltipModule["default"].arrowLeft : isArrowDown ? _TooltipModule["default"].arrowDown : _TooltipModule["default"].arrowUp;
488
+ title = title ? title.trim() : null;
489
+ return title ? /*#__PURE__*/_react["default"].createElement("div", {
490
+ className: "".concat(customClass, " ").concat(_TooltipModule["default"].tooltiptext),
491
+ style: {
492
+ left: left,
493
+ top: top,
494
+ width: width
495
+ },
496
+ ref: this.getToolTipDOM,
497
+ "data-id": dataId
498
+ }, !dataTooltipnoArrow ? /*#__PURE__*/_react["default"].createElement("span", {
499
+ className: "".concat(_TooltipModule["default"].tooltiparrow, " ").concat(arrowStyle),
500
+ style: {
501
+ left: arrowLeft,
502
+ top: arrowTop
503
+ }
504
+ }) : null, isHtml ? /*#__PURE__*/_react["default"].createElement("div", {
505
+ className: _TooltipModule["default"].tooltipcont,
506
+ dangerouslySetInnerHTML: {
507
+ __html: title
508
+ }
509
+ }) : /*#__PURE__*/_react["default"].createElement("div", {
510
+ className: _TooltipModule["default"].tooltipcont
511
+ }, title)) : null;
512
+ }
513
+ }]);
514
+
515
+ return Tooltip;
516
+ }(_react["default"].Component);
517
+
518
+ exports["default"] = Tooltip;
519
+ Tooltip.propTypes = {
520
+ dataId: _propTypes["default"].string,
521
+ isHtml: _propTypes["default"].string,
522
+ isPosition: _propTypes["default"].oneOf(['top', 'bottom', 'left', 'right']),
523
+ title: _propTypes["default"].string,
524
+ customClass: _propTypes["default"].string
525
+ };
526
+ Tooltip.defaultProps = {
527
+ dataId: 'toolTip',
528
+ customClass: ''
529
+ };
530
+
531
+ if (false) {
532
+ Tooltip.docs = {
533
+ componentGroup: 'Atom',
534
+ folderName: 'Style Guide',
535
+ description: ' ',
536
+ external: true
537
+ };
538
+ }