@zohodesk/components 1.0.0-temp-46 → 1.0.0-temp-49

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 (484) hide show
  1. package/README.md +28 -0
  2. package/{es → assets}/Appearance/dark/mode/darkMode.module.css +4 -2
  3. package/assets/Appearance/dark/themes/blue/blueDarkCTATheme.module.css +34 -0
  4. package/assets/Appearance/dark/themes/blue/blueDarkComponentTheme.module.css +42 -0
  5. package/{es → assets}/Appearance/dark/themes/green/greenDarkCTATheme.module.css +10 -10
  6. package/assets/Appearance/dark/themes/green/greenDarkComponentTheme.module.css +42 -0
  7. package/{es → assets}/Appearance/dark/themes/orange/orangeDarkCTATheme.module.css +10 -10
  8. package/assets/Appearance/dark/themes/orange/orangeDarkComponentTheme.module.css +42 -0
  9. package/{es → assets}/Appearance/dark/themes/red/redDarkCTATheme.module.css +10 -10
  10. package/assets/Appearance/dark/themes/red/redDarkComponentTheme.module.css +42 -0
  11. package/{es → assets}/Appearance/dark/themes/yellow/yellowDarkCTATheme.module.css +10 -10
  12. package/assets/Appearance/dark/themes/yellow/yellowDarkComponentTheme.module.css +42 -0
  13. package/{es → assets}/Appearance/default/mode/defaultMode.module.css +4 -2
  14. package/{es → assets}/Appearance/default/themes/blue/blueDefaultCTATheme.module.css +0 -0
  15. package/{es → assets}/Appearance/default/themes/blue/blueDefaultComponentTheme.module.css +7 -7
  16. package/{es → assets}/Appearance/default/themes/green/greenDefaultCTATheme.module.css +2 -2
  17. package/{es → assets}/Appearance/default/themes/green/greenDefaultComponentTheme.module.css +4 -4
  18. package/{es → assets}/Appearance/default/themes/orange/orangeDefaultCTATheme.module.css +0 -0
  19. package/{es → assets}/Appearance/default/themes/orange/orangeDefaultComponentTheme.module.css +3 -3
  20. package/{es → assets}/Appearance/default/themes/red/redDefaultCTATheme.module.css +7 -7
  21. package/{es → assets}/Appearance/default/themes/red/redDefaultComponentTheme.module.css +3 -3
  22. package/{es → assets}/Appearance/default/themes/yellow/yellowDefaultCTATheme.module.css +0 -0
  23. package/{es → assets}/Appearance/default/themes/yellow/yellowDefaultComponentTheme.module.css +3 -3
  24. package/es/Animation/Animation.js +7 -8
  25. package/es/AppContainer/AppContainer.js +6 -6
  26. package/es/Avatar/Avatar.js +12 -11
  27. package/es/Avatar/Avatar.module.css +11 -9
  28. package/es/Avatar/__tests__/Avatar.spec.js +0 -1
  29. package/es/AvatarTeam/AvatarTeam.module.css +21 -7
  30. package/es/AvatarTeam/__tests__/AvatarTeam.spec.js +0 -1
  31. package/es/Button/Button.js +24 -20
  32. package/es/Button/Button.module.css +100 -23
  33. package/es/Button/__tests__/Button.spec.js +0 -1
  34. package/es/Buttongroup/Buttongroup.module.css +37 -8
  35. package/es/Buttongroup/__test__/Buttongroup.spec.js +0 -1
  36. package/es/Card/Card.js +4 -5
  37. package/es/CheckBox/CheckBox.module.css +17 -11
  38. package/es/DateTime/DateTime.js +6 -3
  39. package/es/DateTime/DateTime.module.css +41 -14
  40. package/es/DateTime/DateWidget.js +5 -2
  41. package/es/DateTime/DateWidget.module.css +9 -9
  42. package/es/DateTime/YearView.js +6 -5
  43. package/es/DateTime/YearView.module.css +16 -6
  44. package/es/DateTime/common.js +9 -2
  45. package/es/DateTime/dateFormatUtils/dateFormat.js +76 -57
  46. package/es/DateTime/dateFormatUtils/index.js +12 -7
  47. package/es/DateTime/dateFormatUtils/timeChange.js +4 -3
  48. package/es/DateTime/dateFormatUtils/yearChange.js +4 -3
  49. package/es/DateTime/validator.js +0 -1
  50. package/es/DropBox/DropBox.js +2 -2
  51. package/es/DropBox/DropBox.module.css +47 -11
  52. package/es/DropDown/DropDownHeading.module.css +7 -3
  53. package/es/DropDown/DropDownItem.module.css +32 -6
  54. package/es/Label/Label.module.css +1 -4
  55. package/es/Label/__tests__/Label.spec.js +0 -2
  56. package/es/Layout/utils.js +2 -1
  57. package/es/ListItem/ListContainer.js +118 -0
  58. package/es/ListItem/ListItem.js +23 -33
  59. package/es/ListItem/ListItem.module.css +56 -24
  60. package/es/ListItem/ListItemWithAvatar.js +21 -27
  61. package/es/ListItem/ListItemWithCheckBox.js +23 -29
  62. package/es/ListItem/ListItemWithIcon.js +26 -28
  63. package/es/ListItem/ListItemWithRadio.js +24 -31
  64. package/es/MultiSelect/AdvancedGroupMultiSelect.js +18 -7
  65. package/es/MultiSelect/AdvancedMultiSelect.js +24 -8
  66. package/es/MultiSelect/AdvancedMultiSelect.module.css +29 -14
  67. package/es/MultiSelect/MultiSelect.js +29 -10
  68. package/es/MultiSelect/MultiSelect.module.css +34 -21
  69. package/es/MultiSelect/MultiSelectWithAvatar.js +6 -3
  70. package/es/MultiSelect/SelectedOptions.js +3 -2
  71. package/es/MultiSelect/SelectedOptions.module.css +8 -2
  72. package/es/PopOver/PopOver.js +19 -20
  73. package/es/PopOver/PopOver.module.css +1 -1
  74. package/es/Popup/Popup.js +15 -9
  75. package/es/Popup/viewPort.js +14 -9
  76. package/es/Provider/IdProvider.js +5 -4
  77. package/es/Provider/LibraryContext.js +6 -5
  78. package/es/Provider/NumberGenerator/NumberGenerator.js +17 -15
  79. package/es/Provider/ZindexProvider.js +5 -4
  80. package/es/Provider.js +22 -22
  81. package/es/Radio/Radio.js +1 -2
  82. package/es/Radio/Radio.module.css +11 -5
  83. package/es/Responsive/CustomResponsive.js +11 -8
  84. package/es/Responsive/ResizeComponent.js +3 -1
  85. package/es/Responsive/Responsive.js +12 -9
  86. package/es/Responsive/sizeObservers.js +5 -1
  87. package/es/Ribbon/Ribbon.js +8 -8
  88. package/es/Ribbon/Ribbon.module.css +93 -28
  89. package/es/Ribbon/__tests__/Ribbon.spec.js +0 -1
  90. package/es/RippleEffect/RippleEffect.js +7 -4
  91. package/es/RippleEffect/RippleEffect.module.css +18 -44
  92. package/es/Select/GroupSelect.js +2 -1
  93. package/es/Select/Select.js +2 -1
  94. package/es/Select/Select.module.css +14 -4
  95. package/es/Select/SelectWithAvatar.js +7 -4
  96. package/es/Stencils/Stencils.js +5 -6
  97. package/es/Stencils/Stencils.module.css +21 -8
  98. package/es/Stencils/__tests__/Stencils.spec.js +0 -1
  99. package/es/Switch/Switch.module.css +6 -7
  100. package/es/Tab/Tab.js +27 -26
  101. package/es/Tab/Tab.module.css +19 -10
  102. package/es/Tab/TabContent.js +17 -14
  103. package/es/Tab/TabContentWrapper.js +17 -14
  104. package/es/Tab/TabWrapper.js +15 -14
  105. package/es/Tab/Tabs.js +2 -1
  106. package/es/Tab/Tabs.module.css +41 -8
  107. package/es/Tag/Tag.js +10 -4
  108. package/es/Tag/Tag.module.css +50 -25
  109. package/es/TextBox/TextBox.module.css +12 -16
  110. package/es/TextBox/__tests__/TextBox.spec.js +0 -1
  111. package/es/TextBoxIcon/TextBoxIcon.js +1 -1
  112. package/es/TextBoxIcon/TextBoxIcon.module.css +15 -7
  113. package/es/TextBoxIcon/__tests__/TextBoxIcon.spec.js +0 -1
  114. package/es/Textarea/Textarea.module.css +9 -10
  115. package/es/Textarea/__tests__/Textarea.spec.js +0 -1
  116. package/es/Tooltip/Tooltip.js +0 -1
  117. package/es/Tooltip/Tooltip.module.css +10 -9
  118. package/es/VelocityAnimation/VelocityAnimation/VelocityAnimation.js +1 -1
  119. package/es/VelocityAnimation/VelocityAnimationGroup/VelocityAnimationGroup.js +1 -1
  120. package/es/a11y/FocusScope/FocusScope.js +10 -4
  121. package/es/beta/FocusRing/FocusRing.js +4 -1
  122. package/es/beta/FocusRing/FocusRing.module.css +51 -26
  123. package/es/common/animation.module.css +219 -21
  124. package/es/common/basicReset.module.css +2 -12
  125. package/es/common/common.module.css +62 -18
  126. package/es/common/customscroll.module.css +17 -21
  127. package/es/common/docStyle.module.css +78 -31
  128. package/es/common/transition.module.css +50 -10
  129. package/es/semantic/Button/semanticButton.module.css +3 -3
  130. package/es/utils/Common.js +31 -11
  131. package/es/utils/datetime/common.js +6 -3
  132. package/es/utils/dropDownUtils.js +45 -6
  133. package/es/utils/getInitial.js +3 -1
  134. package/lib/Accordion/Accordion.js +146 -0
  135. package/lib/Accordion/AccordionItem.js +124 -0
  136. package/lib/Accordion/__tests__/Accordion.spec.js +85 -0
  137. package/lib/Accordion/index.js +23 -0
  138. package/lib/Animation/Animation.js +206 -0
  139. package/lib/Animation/__tests__/Animation.spec.js +23 -0
  140. package/lib/AppContainer/AppContainer.js +205 -0
  141. package/lib/AppContainer/AppContainer.module.css +18 -0
  142. package/lib/Avatar/Avatar.js +280 -0
  143. package/lib/Avatar/Avatar.module.css +117 -0
  144. package/lib/Avatar/__tests__/Avatar.spec.js +208 -0
  145. package/lib/Avatar/__tests__/__snapshots__/Avatar.spec.js.snap +288 -0
  146. package/lib/AvatarTeam/AvatarTeam.js +157 -0
  147. package/lib/AvatarTeam/AvatarTeam.module.css +161 -0
  148. package/lib/AvatarTeam/__tests__/AvatarTeam.spec.js +92 -0
  149. package/lib/AvatarTeam/__tests__/__snapshots__/AvatarTeam.spec.js.snap +226 -0
  150. package/lib/Button/Button.js +163 -0
  151. package/lib/Button/Button.module.css +522 -0
  152. package/lib/Button/__tests__/Button.spec.js +233 -0
  153. package/lib/Button/__tests__/__snapshots__/Button.spec.js.snap +191 -0
  154. package/lib/Buttongroup/Buttongroup.js +101 -0
  155. package/lib/Buttongroup/Buttongroup.module.css +89 -0
  156. package/lib/Buttongroup/__test__/Buttongroup.spec.js +86 -0
  157. package/lib/Buttongroup/__test__/__snapshots__/Buttongroup.spec.js.snap +146 -0
  158. package/lib/Card/Card.js +409 -0
  159. package/lib/Card/Card.module.css +20 -0
  160. package/lib/Card/__tests__/Card.spec.js +56 -0
  161. package/lib/Card/index.js +37 -0
  162. package/lib/CheckBox/CheckBox.js +265 -0
  163. package/lib/CheckBox/CheckBox.module.css +153 -0
  164. package/lib/CheckBox/__tests__/CheckBox.spec.js +18 -0
  165. package/lib/DateTime/CalendarView.js +285 -0
  166. package/lib/DateTime/DateTime.js +889 -0
  167. package/lib/DateTime/DateTime.module.css +188 -0
  168. package/lib/DateTime/DateTimePopupFooter.js +90 -0
  169. package/lib/DateTime/DateTimePopupHeader.js +149 -0
  170. package/lib/DateTime/DateWidget.js +1189 -0
  171. package/lib/DateTime/DateWidget.module.css +42 -0
  172. package/lib/DateTime/DaysRow.js +76 -0
  173. package/lib/DateTime/Time.js +248 -0
  174. package/lib/DateTime/YearView.js +324 -0
  175. package/lib/DateTime/YearView.module.css +80 -0
  176. package/lib/DateTime/__tests__/CalendarView.spec.js +45 -0
  177. package/lib/DateTime/__tests__/DateTime.spec.js +127 -0
  178. package/lib/DateTime/__tests__/DateWidget.spec.js +81 -0
  179. package/lib/DateTime/common.js +36 -0
  180. package/lib/DateTime/constants.js +77 -0
  181. package/lib/DateTime/dateFormatUtils/dateFormat.js +613 -0
  182. package/lib/DateTime/dateFormatUtils/dayChange.js +81 -0
  183. package/lib/DateTime/dateFormatUtils/index.js +274 -0
  184. package/lib/DateTime/dateFormatUtils/monthChange.js +94 -0
  185. package/lib/DateTime/dateFormatUtils/timeChange.js +240 -0
  186. package/lib/DateTime/dateFormatUtils/yearChange.js +119 -0
  187. package/lib/DateTime/index.js +15 -0
  188. package/lib/DateTime/objectUtils.js +76 -0
  189. package/lib/DateTime/typeChecker.js +26 -0
  190. package/lib/DateTime/validator.js +353 -0
  191. package/lib/DropBox/DropBox.js +393 -0
  192. package/lib/DropBox/DropBox.module.css +406 -0
  193. package/lib/DropBox/DropBoxPositionMapping.json +145 -0
  194. package/lib/DropBox/__tests__/DropBox.spec.js +87 -0
  195. package/lib/DropDown/DropDown.js +203 -0
  196. package/lib/DropDown/DropDown.module.css +5 -0
  197. package/lib/DropDown/DropDownHeading.js +102 -0
  198. package/lib/DropDown/DropDownHeading.module.css +53 -0
  199. package/lib/DropDown/DropDownItem.js +139 -0
  200. package/lib/DropDown/DropDownItem.module.css +94 -0
  201. package/lib/DropDown/DropDownSearch.js +132 -0
  202. package/lib/DropDown/DropDownSearch.module.css +14 -0
  203. package/lib/DropDown/DropDownSeparator.js +66 -0
  204. package/lib/DropDown/DropDownSeparator.module.css +7 -0
  205. package/lib/DropDown/__tests__/DropDown.spec.js +50 -0
  206. package/lib/DropDown/__tests__/DropDownItem.spec.js +51 -0
  207. package/lib/DropDown/__tests__/DropDownSearch.spec.js +17 -0
  208. package/lib/Label/Label.js +109 -0
  209. package/lib/Label/Label.module.css +52 -0
  210. package/lib/Label/LabelColors.module.css +21 -0
  211. package/lib/Label/__tests__/Label.spec.js +137 -0
  212. package/lib/Label/__tests__/__snapshots__/Label.spec.js.snap +101 -0
  213. package/lib/Layout/Box.js +138 -0
  214. package/lib/Layout/Container.js +152 -0
  215. package/lib/Layout/Layout.module.css +324 -0
  216. package/lib/Layout/__tests__/Box.spec.js +121 -0
  217. package/lib/Layout/__tests__/Container.spec.js +127 -0
  218. package/lib/Layout/index.js +34 -0
  219. package/lib/Layout/utils.js +55 -0
  220. package/lib/LightNightMode/Colors.json +398 -0
  221. package/lib/ListItem/ListContainer.js +127 -0
  222. package/lib/ListItem/ListItem.js +227 -0
  223. package/lib/ListItem/ListItem.module.css +200 -0
  224. package/lib/ListItem/ListItemWithAvatar.js +237 -0
  225. package/lib/ListItem/ListItemWithCheckBox.js +205 -0
  226. package/lib/ListItem/ListItemWithIcon.js +229 -0
  227. package/lib/ListItem/ListItemWithRadio.js +208 -0
  228. package/lib/Modal/Modal.js +218 -0
  229. package/lib/Modal/__docs__/Modal__default.docs.js +88 -0
  230. package/lib/MultiSelect/AdvancedGroupMultiSelect.js +1218 -0
  231. package/lib/MultiSelect/AdvancedMultiSelect.js +696 -0
  232. package/lib/MultiSelect/AdvancedMultiSelect.module.css +127 -0
  233. package/lib/MultiSelect/EmptyState.js +132 -0
  234. package/lib/MultiSelect/MultiSelect.js +1235 -0
  235. package/lib/MultiSelect/MultiSelect.module.css +193 -0
  236. package/lib/MultiSelect/MultiSelectHeader.js +86 -0
  237. package/lib/MultiSelect/MultiSelectWithAvatar.js +410 -0
  238. package/lib/MultiSelect/SelectedOptions.js +140 -0
  239. package/lib/MultiSelect/SelectedOptions.module.css +15 -0
  240. package/lib/MultiSelect/Suggestions.js +219 -0
  241. package/lib/MultiSelect/__tests__/MultiSelect.spec.js +170 -0
  242. package/lib/PopOver/PopOver.js +365 -0
  243. package/lib/PopOver/PopOver.module.css +8 -0
  244. package/lib/PopOver/__tests__/PopOver.spec.js +20 -0
  245. package/lib/Popup/Popup.js +719 -0
  246. package/lib/Popup/PositionMapping.json +74 -0
  247. package/lib/Popup/__tests__/Popup.spec.js +192 -0
  248. package/lib/Popup/viewPort.js +368 -0
  249. package/lib/Provider/AvatarSize.js +23 -0
  250. package/lib/Provider/Config.js +25 -0
  251. package/lib/Provider/CssProvider.js +27 -0
  252. package/lib/Provider/IdProvider.js +82 -0
  253. package/lib/Provider/LibraryContext.js +76 -0
  254. package/lib/Provider/LibraryContextInit.js +15 -0
  255. package/lib/Provider/NumberGenerator/NumberGenerator.js +174 -0
  256. package/lib/Provider/ZindexProvider.js +69 -0
  257. package/lib/Provider.js +241 -0
  258. package/lib/Radio/Radio.js +214 -0
  259. package/lib/Radio/Radio.module.css +110 -0
  260. package/lib/Radio/__tests__/Radiospec.js +29 -0
  261. package/lib/Responsive/CustomResponsive.js +246 -0
  262. package/lib/Responsive/RefWrapper.js +55 -0
  263. package/lib/Responsive/ResizeComponent.js +268 -0
  264. package/lib/Responsive/ResizeObserver.js +168 -0
  265. package/lib/Responsive/Responsive.js +281 -0
  266. package/lib/Responsive/index.js +30 -0
  267. package/lib/Responsive/sizeObservers.js +207 -0
  268. package/lib/Responsive/utils/index.js +70 -0
  269. package/lib/Responsive/utils/shallowCompare.js +38 -0
  270. package/lib/Responsive/windowResizeObserver.js +63 -0
  271. package/lib/Ribbon/Ribbon.js +115 -0
  272. package/lib/Ribbon/Ribbon.module.css +377 -0
  273. package/lib/Ribbon/__tests__/Ribbon.spec.js +193 -0
  274. package/lib/Ribbon/__tests__/__snapshots__/Ribbon.spec.js.snap +163 -0
  275. package/lib/RippleEffect/RippleEffect.js +61 -0
  276. package/lib/RippleEffect/RippleEffect.module.css +70 -0
  277. package/lib/Select/GroupSelect.js +944 -0
  278. package/lib/Select/Select.js +1078 -0
  279. package/lib/Select/Select.module.css +100 -0
  280. package/lib/Select/SelectWithAvatar.js +433 -0
  281. package/lib/Select/SelectWithIcon.js +556 -0
  282. package/lib/Select/__tests__/Select.spec.js +383 -0
  283. package/lib/Stencils/Stencils.js +93 -0
  284. package/lib/Stencils/Stencils.module.css +96 -0
  285. package/lib/Stencils/__tests__/Stencils.spec.js +84 -0
  286. package/lib/Stencils/__tests__/__snapshots__/Stencils.spec.js.snap +49 -0
  287. package/lib/Switch/Switch.js +183 -0
  288. package/lib/Switch/Switch.module.css +110 -0
  289. package/lib/Tab/Tab.js +158 -0
  290. package/lib/Tab/Tab.module.css +101 -0
  291. package/lib/Tab/TabContent.js +45 -0
  292. package/lib/Tab/TabContent.module.css +4 -0
  293. package/lib/Tab/TabContentWrapper.js +47 -0
  294. package/lib/Tab/TabWrapper.js +109 -0
  295. package/lib/Tab/Tabs.js +696 -0
  296. package/lib/Tab/Tabs.module.css +140 -0
  297. package/lib/Tab/__tests__/Tab.spec.js +130 -0
  298. package/lib/Tab/__tests__/TabContent.spec.js +22 -0
  299. package/lib/Tab/__tests__/TabContentWrapper.spec.js +59 -0
  300. package/lib/Tab/__tests__/TabWrapper.spec.js +100 -0
  301. package/lib/Tab/__tests__/Tabs.spec.js +123 -0
  302. package/lib/Tab/index.js +47 -0
  303. package/lib/Tag/Tag.js +252 -0
  304. package/lib/Tag/Tag.module.css +251 -0
  305. package/lib/Tag/__tests__/Tag.spec.js +35 -0
  306. package/lib/TextBox/TextBox.js +289 -0
  307. package/lib/TextBox/TextBox.module.css +157 -0
  308. package/lib/TextBox/__tests__/TextBox.spec.js +205 -0
  309. package/lib/TextBox/__tests__/__snapshots__/TextBox.spec.js.snap +127 -0
  310. package/lib/TextBoxIcon/TextBoxIcon.js +284 -0
  311. package/lib/TextBoxIcon/TextBoxIcon.module.css +78 -0
  312. package/lib/TextBoxIcon/__tests__/TextBoxIcon.spec.js +228 -0
  313. package/lib/TextBoxIcon/__tests__/__snapshots__/TextBoxIcon.spec.js.snap +334 -0
  314. package/lib/Textarea/Textarea.js +202 -0
  315. package/lib/Textarea/Textarea.module.css +139 -0
  316. package/lib/Textarea/__tests__/Textarea.spec.js +186 -0
  317. package/lib/Textarea/__tests__/__snapshots__/Textarea.spec.js.snap +97 -0
  318. package/lib/Tooltip/Tooltip.js +538 -0
  319. package/lib/Tooltip/Tooltip.module.css +104 -0
  320. package/lib/Tooltip/__tests__/Tooltip.spec.js +98 -0
  321. package/lib/VelocityAnimation/VelocityAnimation/VelocityAnimation.js +146 -0
  322. package/lib/VelocityAnimation/VelocityAnimationGroup/VelocityAnimationGroup.js +190 -0
  323. package/lib/a11y/FocusScope/FocusScope.js +443 -0
  324. package/lib/beta/FocusRing/FocusRing.js +338 -0
  325. package/lib/beta/FocusRing/FocusRing.module.css +152 -0
  326. package/lib/common/animation.module.css +624 -0
  327. package/lib/common/avatarsizes.module.css +45 -0
  328. package/lib/common/basic.module.css +33 -0
  329. package/lib/common/basicReset.module.css +40 -0
  330. package/lib/common/common.module.css +502 -0
  331. package/lib/common/customscroll.module.css +89 -0
  332. package/lib/common/docStyle.module.css +762 -0
  333. package/lib/common/reset.module.css +12 -0
  334. package/lib/common/transition.module.css +146 -0
  335. package/lib/css.js +83 -0
  336. package/lib/deprecated/PortalLayer/PortalLayer.js +165 -0
  337. package/lib/index.js +1412 -0
  338. package/lib/semantic/Button/Button.js +138 -0
  339. package/lib/semantic/Button/semanticButton.module.css +9 -0
  340. package/lib/utils/Common.js +457 -0
  341. package/lib/utils/ContextOptimizer.js +49 -0
  342. package/lib/utils/__tests__/constructFullName.spec.js +12 -0
  343. package/lib/utils/__tests__/debounce.spec.js +40 -0
  344. package/lib/utils/__tests__/getInitial.spec.js +26 -0
  345. package/lib/utils/constant.js +10 -0
  346. package/lib/utils/constructFullName.js +34 -0
  347. package/lib/utils/datetime/common.js +233 -0
  348. package/lib/utils/debounce.js +30 -0
  349. package/lib/utils/dropDownUtils.js +608 -0
  350. package/lib/utils/dummyFunction.js +10 -0
  351. package/lib/utils/getHTMLFontSize.js +11 -0
  352. package/lib/utils/getInitial.js +33 -0
  353. package/lib/utils/scrollTo.js +22 -0
  354. package/lib/utils/shallowEqual.js +41 -0
  355. package/package.json +7 -7
  356. package/README_Beta.md +0 -2
  357. package/__testUtils__/globals.js +0 -46
  358. package/__testUtils__/moduleMapKey.json +0 -138
  359. package/dubFinder.js +0 -96
  360. package/es/Accordion/docs/Accordion__Demo.docs.js +0 -80
  361. package/es/Animation/docs/Animation__default.docs.js +0 -34
  362. package/es/Animation/docs/Animation__fadeIn.docs.js +0 -34
  363. package/es/Animation/docs/Animation__scaleIn.docs.js +0 -34
  364. package/es/Animation/docs/Animation__skewIn.docs.js +0 -34
  365. package/es/Animation/docs/Animation__slideDown.docs.js +0 -34
  366. package/es/Animation/docs/Animation__slideLeft.docs.js +0 -34
  367. package/es/Animation/docs/Animation__zoomIn.docs.js +0 -34
  368. package/es/AppContainer/docs/AppContainer__default.docs.js +0 -20
  369. package/es/Appearance/dark/themes/blue/blueDarkCTATheme.module.css +0 -34
  370. package/es/Appearance/dark/themes/blue/blueDarkComponentTheme.module.css +0 -42
  371. package/es/Appearance/dark/themes/green/greenDarkComponentTheme.module.css +0 -42
  372. package/es/Appearance/dark/themes/orange/orangeDarkComponentTheme.module.css +0 -42
  373. package/es/Appearance/dark/themes/red/redDarkComponentTheme.module.css +0 -42
  374. package/es/Appearance/dark/themes/yellow/yellowDarkComponentTheme.module.css +0 -42
  375. package/es/Avatar/docs/Avatar__custom.docs.js +0 -29
  376. package/es/Avatar/docs/Avatar__default.docs.js +0 -29
  377. package/es/Avatar/docs/Avatar__palette.docs.js +0 -49
  378. package/es/Avatar/docs/Avatar__text.docs.js +0 -28
  379. package/es/AvatarTeam/docs/AvatarTeam__custom.docs.js +0 -73
  380. package/es/AvatarTeam/docs/AvatarTeam__default.docs.js +0 -31
  381. package/es/AvatarTeam/docs/AvatarTeam__palette.docs.js +0 -50
  382. package/es/AvatarTeam/docs/AvatarTeam__size.docs.js +0 -49
  383. package/es/Button/docs/Button__custom.docs.js +0 -771
  384. package/es/Button/docs/Button__default.docs.js +0 -536
  385. package/es/Buttongroup/docs/Buttongroup__custom.docs.js +0 -37
  386. package/es/Buttongroup/docs/Buttongroup__footer.docs.js +0 -33
  387. package/es/Buttongroup/docs/Buttongroup__header.docs.js +0 -42
  388. package/es/Card/docs/Card__Custom.docs.js +0 -34
  389. package/es/Card/docs/Card__Default.docs.js +0 -37
  390. package/es/Card/docs/Card__Scroll.docs.js +0 -59
  391. package/es/CheckBox/docs/CheckBox__custom.docs.js +0 -293
  392. package/es/CheckBox/docs/CheckBox__default.docs.js +0 -219
  393. package/es/DateTime/docs/DateTime__default.docs.js +0 -91
  394. package/es/DateTime/docs/DateWidget__default.docs.js +0 -183
  395. package/es/DateTime/docs/timezonedata.json +0 -1
  396. package/es/DropBox/docs/DropBox__custom.docs.js +0 -66
  397. package/es/DropBox/docs/DropBox__customOrder.docs.js +0 -92
  398. package/es/DropBox/docs/DropBox__fixedPosition.docs.js +0 -91
  399. package/es/DropBox/docs/DropBox__position.docs.js +0 -87
  400. package/es/DropBox/docs/DropBox__size.docs.js +0 -61
  401. package/es/DropDown/docs/DropDownHeading__custom.docs.js +0 -23
  402. package/es/DropDown/docs/DropDownHeading__default.docs.js +0 -21
  403. package/es/Label/docs/Label__clipped.docs.js +0 -27
  404. package/es/Label/docs/Label__custom.docs.js +0 -30
  405. package/es/Label/docs/Label__palette.docs.js +0 -42
  406. package/es/Label/docs/Label__size.docs.js +0 -29
  407. package/es/Label/docs/Label__type.docs.js +0 -37
  408. package/es/Layout/docs/Layout__Hidden.docs.js +0 -77
  409. package/es/Layout/docs/Layout__default.docs.js +0 -49
  410. package/es/Layout/docs/Layout__four_Column.docs.js +0 -85
  411. package/es/Layout/docs/Layout__three_Column.docs.js +0 -76
  412. package/es/Layout/docs/Layout__two_Column.docs.js +0 -69
  413. package/es/LightNightMode/docs/AlternativeColors.docs.js +0 -74
  414. package/es/ListItem/docs/ListItemWithAvatar__custom.docs.js +0 -155
  415. package/es/ListItem/docs/ListItemWithAvatar__default.docs.js +0 -112
  416. package/es/ListItem/docs/ListItemWithCheckBox__custom.docs.js +0 -91
  417. package/es/ListItem/docs/ListItemWithCheckBox__default.docs.js +0 -65
  418. package/es/ListItem/docs/ListItemWithIcon__custom.docs.js +0 -68
  419. package/es/ListItem/docs/ListItemWithIcon__default.docs.js +0 -62
  420. package/es/ListItem/docs/ListItemWithRadio__custom.docs.js +0 -91
  421. package/es/ListItem/docs/ListItemWithRadio__default.docs.js +0 -65
  422. package/es/ListItem/docs/ListItem__custom.docs.js +0 -114
  423. package/es/ListItem/docs/ListItem__default.docs.js +0 -82
  424. package/es/MultiSelect/docs/AdvancedGroupMultiSelect__default.docs.js +0 -124
  425. package/es/MultiSelect/docs/AdvancedMultiSelect__default.docs.js +0 -114
  426. package/es/MultiSelect/docs/MultiSelectWithAvatar__default.docs.js +0 -141
  427. package/es/MultiSelect/docs/MultiSelect__default.docs.js +0 -161
  428. package/es/PopOver/docs/PopOver__default.docs.js +0 -32
  429. package/es/Provider/docs/Provider_Id__Class.docs.js +0 -29
  430. package/es/Provider/docs/Provider_Id__Function.docs.js +0 -18
  431. package/es/Provider/docs/Provider_Zindex__Class.docs.js +0 -32
  432. package/es/Provider/docs/Provider_Zindex__Function.docs.js +0 -23
  433. package/es/Radio/docs/Radio__custom.docs.js +0 -245
  434. package/es/Radio/docs/Radio__default.docs.js +0 -169
  435. package/es/Responsive/docs/Responsive__Custom.docs.js +0 -201
  436. package/es/Responsive/docs/Responsive__default.docs.js +0 -94
  437. package/es/Responsive/docs/style.module.css +0 -47
  438. package/es/Ribbon/docs/Ribbon__custom.docs.js +0 -386
  439. package/es/Ribbon/docs/Ribbon__default.docs.js +0 -342
  440. package/es/RippleEffect/docs/RippleEffect__default.docs.js +0 -435
  441. package/es/Select/docs/GroupSelect__default.docs.js +0 -149
  442. package/es/Select/docs/SelectWithAvatar__default.docs.js +0 -97
  443. package/es/Select/docs/SelectWithIcon__default.docs.js +0 -138
  444. package/es/Select/docs/Select__default.docs.js +0 -287
  445. package/es/Stencils/docs/Stencils__custom.docs.js +0 -45
  446. package/es/Stencils/docs/Stencils__default.docs.js +0 -50
  447. package/es/Switch/docs/Switch__custom.docs.js +0 -153
  448. package/es/Switch/docs/Switch__default.docs.js +0 -107
  449. package/es/Tab/docs/Tab__default.docs.js +0 -259
  450. package/es/Tab/docs/tabdocs.module.css +0 -29
  451. package/es/Tag/docs/Tag__custom.docs.js +0 -368
  452. package/es/Tag/docs/Tag__default.docs.js +0 -253
  453. package/es/TextBox/docs/TextBox__custom.docs.js +0 -43
  454. package/es/TextBox/docs/TextBox__default.docs.js +0 -40
  455. package/es/TextBox/docs/TextBox__size.docs.js +0 -38
  456. package/es/TextBox/docs/TextBox__variant.docs.js +0 -38
  457. package/es/TextBoxIcon/docs/TextBoxIcon__custom.docs.js +0 -89
  458. package/es/TextBoxIcon/docs/TextBoxIcon__default.docs.js +0 -61
  459. package/es/Textarea/docs/Textarea__animated.docs.js +0 -41
  460. package/es/Textarea/docs/Textarea__custom.docs.js +0 -82
  461. package/es/Textarea/docs/Textarea__default.docs.js +0 -76
  462. package/es/Textarea/docs/Textarea__disabled.docs.js +0 -29
  463. package/es/Tooltip/docs/Tooltip__default.docs.js +0 -332
  464. package/es/VelocityAnimation/VelocityAnimation/docs/VelocityAnimation__demo.docs.js +0 -97
  465. package/es/VelocityAnimation/VelocityAnimationGroup/docs/VelocityAnimationGroup__demo.docs.js +0 -150
  466. package/es/a11y/FocusScope/docs/FocusScope__default.docs.js +0 -139
  467. package/es/beta/FocusRing/docs/FocusRing__default.docs.js +0 -48
  468. package/es/deprecated/PortalLayer/docs/PortalLayer__default.docs.js +0 -72
  469. package/es/deprecated/Theme/darkTheme.module.css +0 -393
  470. package/es/deprecated/Theme/defaultTheme.module.css +0 -393
  471. package/es/deprecated/Theme/palette/darkCTAPalette.module.css +0 -116
  472. package/es/deprecated/Theme/palette/darkPalette.module.css +0 -155
  473. package/es/deprecated/Theme/palette/defaultCTAPalette.module.css +0 -116
  474. package/es/deprecated/Theme/palette/defaultPalette.module.css +0 -155
  475. package/es/deprecated/customscroll_Old.module.css +0 -46
  476. package/es/semantic/Button/docs/Button__default.docs.js +0 -20
  477. package/externalDocsBuild.js +0 -21
  478. package/preprocess/componentAppearanceColors.js +0 -65
  479. package/preprocess/componentThemeColors.js +0 -119
  480. package/preprocess/ctaThemeColors.js +0 -95
  481. package/preprocess/index.js +0 -3
  482. package/preprocess/json/componentAppearanceVariableJson.js +0 -1515
  483. package/preprocess/json/componentThemeVariableJson.js +0 -259
  484. package/preprocess/json/ctaThemeVariableJson.js +0 -337
@@ -0,0 +1,538 @@
1
+ "use strict";
2
+
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
+
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); Object.defineProperty(Constructor, "prototype", { writable: false }); 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 } }); Object.defineProperty(subClass, "prototype", { writable: false }); 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
+ }
@@ -0,0 +1,104 @@
1
+ .tooltiptext {
2
+ position: fixed;
3
+ z-index: 9999999; /*Hook for editor alert*/
4
+ pointer-events: none;
5
+ box-shadow: 0 4px 12px 0 var(--zdt_tooltip_default_box_shadow);
6
+ border-radius: var(--zd_size4);
7
+ }[dir=ltr] .tooltiptext {
8
+ animation: tooltip-grow var(--zd_transition7) cubic-bezier(0.175, 0.885, 0.32, 1.15);
9
+ }[dir=rtl] .tooltiptext {
10
+ animation: tooltip-grow var(--zd_transition7) cubic-bezier(0.175, 0.885, 0.32, 1.15);
11
+ }
12
+ .tooltipcont {
13
+ color: var(--zdt_tooltip_default_text);
14
+ font-size: var(--zd_font_size13);
15
+ font-family: var(--zd_semibold);
16
+ word-break: break-word;
17
+ max-width: 420px;
18
+ line-height: var(--zd_size20);
19
+ min-height: var(--zd_size24);
20
+ white-space: normal;
21
+ overflow: hidden;
22
+ background-color: var(--zdt_tooltip_default_bg);
23
+ padding: 0 var(--zd_size10);
24
+ border-style: solid;
25
+ border-color: transparent;
26
+ border-radius: var(--zd_size4);
27
+ }
28
+ .tooltiparrow {
29
+ content: '';
30
+ position: absolute;
31
+ top: 0;
32
+ border-top-left-radius: 3px;
33
+ }
34
+ .arrowUp,
35
+ .arrowDown {
36
+ width: 11px;
37
+ height: 11px;
38
+ border-top: solid 6px var(--zdt_tooltip_default_bg);
39
+ border-left: solid 6px var(--zdt_tooltip_default_bg);
40
+ border-right: solid 6px transparent;
41
+ border-bottom: solid 6px transparent;
42
+ }
43
+ .arrowDown {
44
+ margin-top: -4px !important; /* put important because of '.wms-mainui *' have margin: 0; */
45
+ }
46
+ .arrowLeft,
47
+ .arrowRight {
48
+ width: 11px;
49
+ height: 11px;
50
+ border-top: solid 6px var(--zdt_tooltip_default_bg);
51
+ border-left: solid 6px var(--zdt_tooltip_default_bg);
52
+ border-right: solid 6px transparent;
53
+ border-bottom: solid 6px transparent;
54
+ }
55
+ .arrowRight {
56
+ margin-left: -2px;
57
+ }
58
+ .arrowLeft {
59
+ margin-left: 1px;
60
+ }
61
+ .arrowUp {
62
+ transform: rotate(45deg);
63
+ }
64
+ .arrowDown {
65
+ transform: rotate(225deg);
66
+ }
67
+ .arrowLeft {
68
+ transform: rotate(315deg) translateY(-50%);
69
+ }
70
+ .arrowRight {
71
+ transform: rotate(135deg) translateY(50%);
72
+ }
73
+ @keyframes tooltip-grow {
74
+ from {
75
+ opacity: 0;
76
+ }
77
+ to {
78
+ opacity: 1;
79
+ }
80
+ }
81
+ @-webkit-keyframes tooltip-grow {
82
+ from {
83
+ opacity: 0;
84
+ }
85
+ to {
86
+ opacity: 1;
87
+ }
88
+ }
89
+ @-moz-keyframes tooltip-grow {
90
+ from {
91
+ opacity: 0;
92
+ }
93
+ to {
94
+ opacity: 1;
95
+ }
96
+ }
97
+ @-ms-keyframes tooltip-grow {
98
+ from {
99
+ opacity: 0;
100
+ }
101
+ to {
102
+ opacity: 1;
103
+ }
104
+ }