@dnanpm/styleguide 4.0.8 → 4.0.10

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 (427) hide show
  1. package/build/cjs/_virtual/_virtual_inject.js +5 -0
  2. package/build/cjs/assets/fonts/fonts.css.js +3 -1
  3. package/build/cjs/components/Accordion/Accordion.js +66 -54
  4. package/build/cjs/components/AccordionItem/AccordionItem.js +94 -73
  5. package/build/cjs/components/AmountSelector/AmountSelector.js +121 -134
  6. package/build/cjs/components/Box/Box.js +38 -13
  7. package/build/cjs/components/Breadcrumb/Breadcrumb.js +73 -71
  8. package/build/cjs/components/Button/Button.d.ts +1 -1
  9. package/build/cjs/components/Button/Button.js +131 -127
  10. package/build/cjs/components/ButtonArrow/ButtonArrow.js +47 -49
  11. package/build/cjs/components/ButtonCard/ButtonCard.d.ts +2 -2
  12. package/build/cjs/components/ButtonCard/ButtonCard.js +97 -112
  13. package/build/cjs/components/ButtonClose/ButtonClose.d.ts +1 -1
  14. package/build/cjs/components/ButtonClose/ButtonClose.js +25 -14
  15. package/build/cjs/components/ButtonIcon/ButtonIcon.d.ts +44 -3
  16. package/build/cjs/components/ButtonIcon/ButtonIcon.js +105 -67
  17. package/build/cjs/components/ButtonPrimary/ButtonPrimary.d.ts +43 -2
  18. package/build/cjs/components/ButtonPrimary/ButtonPrimary.js +7 -35
  19. package/build/cjs/components/ButtonSecondary/ButtonSecondary.d.ts +43 -2
  20. package/build/cjs/components/ButtonSecondary/ButtonSecondary.js +7 -35
  21. package/build/cjs/components/Carousel/Carousel.d.ts +8 -2
  22. package/build/cjs/components/Carousel/Carousel.js +315 -346
  23. package/build/cjs/components/Checkbox/Checkbox.js +49 -108
  24. package/build/cjs/components/Chip/Chip.js +40 -34
  25. package/build/cjs/components/DateTimePicker/DateTimePicker.js +198 -334
  26. package/build/cjs/components/Divider/Divider.js +29 -15
  27. package/build/cjs/components/DnaLogo/DnaLogo.js +87 -51
  28. package/build/cjs/components/Drawer/Drawer.js +172 -167
  29. package/build/cjs/components/EmptyState/EmptyState.js +24 -12
  30. package/build/cjs/components/EnergyLabel/EnergyLabel.js +77 -73
  31. package/build/cjs/components/Expander/Expander.js +43 -38
  32. package/build/cjs/components/Floater/Floater.js +36 -14
  33. package/build/cjs/components/Footer/Components/FooterComponents.d.ts +4 -2
  34. package/build/cjs/components/Footer/Components/FooterComponents.js +305 -346
  35. package/build/cjs/components/Footer/Footer.js +51 -80
  36. package/build/cjs/components/Footer/context/FooterContext.js +9 -9
  37. package/build/cjs/components/Hero/Hero.js +101 -149
  38. package/build/cjs/components/Icon/Icon.js +41 -22
  39. package/build/cjs/components/Icons/Small/hlArrowBackSmall.js +12 -4
  40. package/build/cjs/components/Icons/Small/hlArrowForwardSmall.js +12 -4
  41. package/build/cjs/components/Icons/Small/hlArrowUnderSmall.js +12 -4
  42. package/build/cjs/components/Icons/Small/hlCalendarSmall.js +12 -4
  43. package/build/cjs/components/Icons/Small/hlChevronDownSmall.js +12 -4
  44. package/build/cjs/components/Icons/Small/hlChevronLeftSmall.js +12 -4
  45. package/build/cjs/components/Icons/Small/hlChevronRightSmall.js +12 -4
  46. package/build/cjs/components/Icons/Small/hlChevronUpSmall.js +12 -4
  47. package/build/cjs/components/Icons/Small/hlClockSmall.js +14 -5
  48. package/build/cjs/components/Icons/Small/hlDownloadSmall.js +18 -6
  49. package/build/cjs/components/Icons/Small/hlExternalSmall.js +12 -4
  50. package/build/cjs/components/Icons/Small/hlUploadSmall.js +18 -6
  51. package/build/cjs/components/Icons/Social/facebook.js +13 -4
  52. package/build/cjs/components/Icons/Social/instagram.js +13 -4
  53. package/build/cjs/components/Icons/Social/linkedin.js +13 -4
  54. package/build/cjs/components/Icons/Social/tiktok.js +12 -4
  55. package/build/cjs/components/Icons/Social/twitter.js +13 -4
  56. package/build/cjs/components/Icons/Social/youtube.js +12 -4
  57. package/build/cjs/components/Icons/hl404.js +12 -4
  58. package/build/cjs/components/Icons/hl4gSim.js +12 -4
  59. package/build/cjs/components/Icons/hl5gSim.js +12 -4
  60. package/build/cjs/components/Icons/hlBattery.js +16 -6
  61. package/build/cjs/components/Icons/hlBell.js +12 -4
  62. package/build/cjs/components/Icons/hlCableTVCard.js +12 -4
  63. package/build/cjs/components/Icons/hlCalendar.js +56 -15
  64. package/build/cjs/components/Icons/hlCall.js +12 -4
  65. package/build/cjs/components/Icons/hlCameraBack.js +18 -6
  66. package/build/cjs/components/Icons/hlCameraFront.js +14 -5
  67. package/build/cjs/components/Icons/hlCart.js +16 -6
  68. package/build/cjs/components/Icons/hlCartEmpty.js +16 -6
  69. package/build/cjs/components/Icons/hlChat.js +24 -7
  70. package/build/cjs/components/Icons/hlCheck.js +12 -4
  71. package/build/cjs/components/Icons/hlChevronDown.js +12 -4
  72. package/build/cjs/components/Icons/hlChevronLeft.js +12 -4
  73. package/build/cjs/components/Icons/hlChevronRight.js +12 -4
  74. package/build/cjs/components/Icons/hlChevronUp.js +12 -4
  75. package/build/cjs/components/Icons/hlCompensation.js +12 -4
  76. package/build/cjs/components/Icons/hlCookie.js +12 -4
  77. package/build/cjs/components/Icons/hlCopy.js +14 -5
  78. package/build/cjs/components/Icons/hlCoupon.js +16 -6
  79. package/build/cjs/components/Icons/hlDelivery.js +14 -4
  80. package/build/cjs/components/Icons/hlDigiturva.js +14 -4
  81. package/build/cjs/components/Icons/hlDisplaySize.js +19 -6
  82. package/build/cjs/components/Icons/hlDocument.js +14 -5
  83. package/build/cjs/components/Icons/hlDownload.js +18 -6
  84. package/build/cjs/components/Icons/hlEnvelope.js +12 -4
  85. package/build/cjs/components/Icons/hlError.js +22 -6
  86. package/build/cjs/components/Icons/hlEuro.js +12 -4
  87. package/build/cjs/components/Icons/hlExclamationMark.js +12 -4
  88. package/build/cjs/components/Icons/hlExpand.js +12 -4
  89. package/build/cjs/components/Icons/hlExternal.js +12 -4
  90. package/build/cjs/components/Icons/hlEyeClosed.js +12 -4
  91. package/build/cjs/components/Icons/hlEyeOpen.js +14 -5
  92. package/build/cjs/components/Icons/hlFaceId.js +12 -4
  93. package/build/cjs/components/Icons/hlFastDelivery.js +12 -4
  94. package/build/cjs/components/Icons/hlFingerprint.js +20 -8
  95. package/build/cjs/components/Icons/hlGlobe.js +12 -4
  96. package/build/cjs/components/Icons/hlHeadphones.js +12 -4
  97. package/build/cjs/components/Icons/hlHeadset.js +18 -6
  98. package/build/cjs/components/Icons/hlHeart.js +12 -4
  99. package/build/cjs/components/Icons/hlHome.js +12 -4
  100. package/build/cjs/components/Icons/hlHub.js +14 -5
  101. package/build/cjs/components/Icons/hlImage.js +12 -4
  102. package/build/cjs/components/Icons/hlInfo.js +18 -6
  103. package/build/cjs/components/Icons/hlInstallment.js +14 -5
  104. package/build/cjs/components/Icons/hlIotSim.js +14 -5
  105. package/build/cjs/components/Icons/hlLaptop.js +13 -4
  106. package/build/cjs/components/Icons/hlLink.js +16 -5
  107. package/build/cjs/components/Icons/hlLiveVideo.js +12 -4
  108. package/build/cjs/components/Icons/hlLock.js +18 -6
  109. package/build/cjs/components/Icons/hlMagnifyingGlass.js +14 -5
  110. package/build/cjs/components/Icons/hlMarker.js +14 -5
  111. package/build/cjs/components/Icons/hlMemory.js +14 -5
  112. package/build/cjs/components/Icons/hlMenu.js +12 -4
  113. package/build/cjs/components/Icons/hlMinimize.js +12 -4
  114. package/build/cjs/components/Icons/hlMinus.js +12 -4
  115. package/build/cjs/components/Icons/hlMobileData.js +12 -4
  116. package/build/cjs/components/Icons/hlMobilePayment.js +19 -6
  117. package/build/cjs/components/Icons/hlModem.js +26 -8
  118. package/build/cjs/components/Icons/hlMore.js +22 -6
  119. package/build/cjs/components/Icons/hlOs.js +14 -5
  120. package/build/cjs/components/Icons/hlPackage.js +12 -4
  121. package/build/cjs/components/Icons/hlPaperclip.js +12 -4
  122. package/build/cjs/components/Icons/hlPaytime.js +12 -4
  123. package/build/cjs/components/Icons/hlPen.js +12 -4
  124. package/build/cjs/components/Icons/hlPerson.js +12 -4
  125. package/build/cjs/components/Icons/hlPhone.js +17 -5
  126. package/build/cjs/components/Icons/hlPlaylist.js +13 -4
  127. package/build/cjs/components/Icons/hlPlus.js +14 -5
  128. package/build/cjs/components/Icons/hlPrepaid.js +12 -4
  129. package/build/cjs/components/Icons/hlProcessor.js +14 -5
  130. package/build/cjs/components/Icons/hlServices.js +12 -4
  131. package/build/cjs/components/Icons/hlSettings.js +12 -4
  132. package/build/cjs/components/Icons/hlShield.js +14 -5
  133. package/build/cjs/components/Icons/hlSim.js +14 -5
  134. package/build/cjs/components/Icons/hlSimSimple.js +18 -6
  135. package/build/cjs/components/Icons/hlSmile.js +22 -7
  136. package/build/cjs/components/Icons/hlSpeechBubble.js +14 -5
  137. package/build/cjs/components/Icons/hlSquaretrade.js +13 -4
  138. package/build/cjs/components/Icons/hlStar.js +12 -4
  139. package/build/cjs/components/Icons/hlStarFilled.js +12 -4
  140. package/build/cjs/components/Icons/hlTrash.js +14 -5
  141. package/build/cjs/components/Icons/hlTv.js +12 -4
  142. package/build/cjs/components/Icons/hlUnlock.js +14 -6
  143. package/build/cjs/components/Icons/hlUpload.js +18 -6
  144. package/build/cjs/components/Icons/hlWarning.js +18 -6
  145. package/build/cjs/components/Icons/hlWifi.js +18 -6
  146. package/build/cjs/components/Icons/hlWrench.js +12 -4
  147. package/build/cjs/components/Icons/hlX.js +12 -4
  148. package/build/cjs/components/InfoDialog/InfoDialog.js +31 -46
  149. package/build/cjs/components/Input/Input.js +143 -159
  150. package/build/cjs/components/Label/Label.js +22 -22
  151. package/build/cjs/components/LabelText/LabelText.js +24 -17
  152. package/build/cjs/components/MainHeaderNavigation/ChildComponents/BusinessMenu.js +29 -44
  153. package/build/cjs/components/MainHeaderNavigation/ChildComponents/DesktopMenu.js +167 -153
  154. package/build/cjs/components/MainHeaderNavigation/ChildComponents/LanguageSelector.js +34 -20
  155. package/build/cjs/components/MainHeaderNavigation/ChildComponents/LinkModifier.js +50 -32
  156. package/build/cjs/components/MainHeaderNavigation/ChildComponents/LoginTooltip.js +17 -5
  157. package/build/cjs/components/MainHeaderNavigation/ChildComponents/MainNavTooltipMenu.d.ts +5 -2
  158. package/build/cjs/components/MainHeaderNavigation/ChildComponents/MainNavTooltipMenu.js +100 -95
  159. package/build/cjs/components/MainHeaderNavigation/ChildComponents/MainNavTooltipMenuExportedStyles.d.ts +6 -2
  160. package/build/cjs/components/MainHeaderNavigation/ChildComponents/MainNavTooltipMenuExportedStyles.js +4 -58
  161. package/build/cjs/components/MainHeaderNavigation/ChildComponents/MinicartTooltip.js +20 -4
  162. package/build/cjs/components/MainHeaderNavigation/ChildComponents/MobileMenu.js +187 -159
  163. package/build/cjs/components/MainHeaderNavigation/ChildComponents/PageSearch.js +16 -5
  164. package/build/cjs/components/MainHeaderNavigation/MainHeaderNavigation.js +305 -272
  165. package/build/cjs/components/MainHeaderNavigation/context/NavContext.js +61 -49
  166. package/build/cjs/components/MainHeaderNavigation/globalNavStyles.d.ts +31 -16
  167. package/build/cjs/components/MainHeaderNavigation/globalNavStyles.js +39 -172
  168. package/build/cjs/components/Modal/Modal.js +127 -145
  169. package/build/cjs/components/Notification/Notification.js +74 -54
  170. package/build/cjs/components/NotificationBadge/NotificationBadge.js +29 -32
  171. package/build/cjs/components/Overlay/Overlay.js +70 -68
  172. package/build/cjs/components/Pill/Pill.js +91 -82
  173. package/build/cjs/components/PillGroup/PillGroup.js +50 -33
  174. package/build/cjs/components/PixelLoader/PixelLoader.js +37 -34
  175. package/build/cjs/components/PriorityNavigation/PriorityNavigation.js +281 -303
  176. package/build/cjs/components/PriorityNavigationItem/PriorityNavigationItem.js +27 -49
  177. package/build/cjs/components/ProgressIndicator/ProgressIndicator.js +140 -109
  178. package/build/cjs/components/RadioButton/RadioButton.js +91 -114
  179. package/build/cjs/components/ReadMore/ReadMore.js +86 -69
  180. package/build/cjs/components/Search/Search.js +52 -64
  181. package/build/cjs/components/Selectbox/Selectbox.js +279 -94
  182. package/build/cjs/components/Skeleton/Skeleton.js +69 -56
  183. package/build/cjs/components/Switch/Switch.js +62 -76
  184. package/build/cjs/components/Tab/Tab.js +55 -53
  185. package/build/cjs/components/Tabs/Tabs.js +93 -71
  186. package/build/cjs/components/Textarea/Textarea.js +76 -73
  187. package/build/cjs/components/Toaster/Toaster.js +59 -44
  188. package/build/cjs/components/Tooltip/Tooltip.js +74 -87
  189. package/build/cjs/hooks/useCloseOutsideOrElementClicked.js +23 -21
  190. package/build/cjs/hooks/useDebounce.js +9 -9
  191. package/build/cjs/hooks/useDocHeight.js +13 -13
  192. package/build/cjs/hooks/useOutsideClick.js +10 -10
  193. package/build/cjs/hooks/useResizeObserver.js +37 -24
  194. package/build/cjs/hooks/useScrollPosition.js +55 -54
  195. package/build/cjs/hooks/useWindowSize.js +20 -20
  196. package/build/cjs/themes/globalStyles.js +4 -4
  197. package/build/cjs/themes/gridTheme.js +1 -1
  198. package/build/cjs/themes/theme.js +12 -12
  199. package/build/cjs/themes/themeComponents/base.js +9 -8
  200. package/build/cjs/themes/themeComponents/breakpoints.js +6 -6
  201. package/build/cjs/themes/themeComponents/color.js +76 -74
  202. package/build/cjs/themes/themeComponents/fontFamily.js +3 -3
  203. package/build/cjs/themes/themeComponents/fontSize.js +31 -15
  204. package/build/cjs/themes/themeComponents/fontWeight.js +16 -16
  205. package/build/cjs/themes/themeComponents/forms.js +3 -2
  206. package/build/cjs/themes/themeComponents/layout.js +27 -27
  207. package/build/cjs/themes/themeComponents/lineHeight.js +32 -16
  208. package/build/cjs/themes/themeComponents/navigation.js +13 -13
  209. package/build/cjs/themes/themeComponents/radius.js +26 -26
  210. package/build/cjs/utils/common.js +15 -19
  211. package/build/cjs/utils/createStyled.d.ts +154 -134
  212. package/build/cjs/utils/createStyled.js +16 -2
  213. package/build/cjs/utils/styledUtils.js +2 -6
  214. package/build/es/_virtual/_virtual_inject.js +3 -0
  215. package/build/es/assets/fonts/fonts.css.js +3 -1
  216. package/build/es/components/Accordion/Accordion.js +66 -54
  217. package/build/es/components/AccordionItem/AccordionItem.js +94 -73
  218. package/build/es/components/AmountSelector/AmountSelector.js +121 -134
  219. package/build/es/components/Box/Box.js +38 -13
  220. package/build/es/components/Breadcrumb/Breadcrumb.js +73 -71
  221. package/build/es/components/Button/Button.d.ts +1 -1
  222. package/build/es/components/Button/Button.js +131 -127
  223. package/build/es/components/ButtonArrow/ButtonArrow.js +47 -49
  224. package/build/es/components/ButtonCard/ButtonCard.d.ts +2 -2
  225. package/build/es/components/ButtonCard/ButtonCard.js +97 -112
  226. package/build/es/components/ButtonClose/ButtonClose.d.ts +1 -1
  227. package/build/es/components/ButtonClose/ButtonClose.js +25 -14
  228. package/build/es/components/ButtonIcon/ButtonIcon.d.ts +44 -3
  229. package/build/es/components/ButtonIcon/ButtonIcon.js +105 -67
  230. package/build/es/components/ButtonPrimary/ButtonPrimary.d.ts +43 -2
  231. package/build/es/components/ButtonPrimary/ButtonPrimary.js +7 -35
  232. package/build/es/components/ButtonSecondary/ButtonSecondary.d.ts +43 -2
  233. package/build/es/components/ButtonSecondary/ButtonSecondary.js +7 -35
  234. package/build/es/components/Carousel/Carousel.d.ts +8 -2
  235. package/build/es/components/Carousel/Carousel.js +315 -346
  236. package/build/es/components/Checkbox/Checkbox.js +49 -108
  237. package/build/es/components/Chip/Chip.js +40 -34
  238. package/build/es/components/DateTimePicker/DateTimePicker.js +198 -334
  239. package/build/es/components/Divider/Divider.js +29 -15
  240. package/build/es/components/DnaLogo/DnaLogo.js +87 -51
  241. package/build/es/components/Drawer/Drawer.js +172 -167
  242. package/build/es/components/EmptyState/EmptyState.js +24 -12
  243. package/build/es/components/EnergyLabel/EnergyLabel.js +77 -73
  244. package/build/es/components/Expander/Expander.js +43 -38
  245. package/build/es/components/Floater/Floater.js +36 -14
  246. package/build/es/components/Footer/Components/FooterComponents.d.ts +4 -2
  247. package/build/es/components/Footer/Components/FooterComponents.js +305 -346
  248. package/build/es/components/Footer/Footer.js +51 -80
  249. package/build/es/components/Footer/context/FooterContext.js +9 -9
  250. package/build/es/components/Hero/Hero.js +101 -149
  251. package/build/es/components/Icon/Icon.js +41 -22
  252. package/build/es/components/Icons/Small/hlArrowBackSmall.js +12 -4
  253. package/build/es/components/Icons/Small/hlArrowForwardSmall.js +12 -4
  254. package/build/es/components/Icons/Small/hlArrowUnderSmall.js +12 -4
  255. package/build/es/components/Icons/Small/hlCalendarSmall.js +12 -4
  256. package/build/es/components/Icons/Small/hlChevronDownSmall.js +12 -4
  257. package/build/es/components/Icons/Small/hlChevronLeftSmall.js +12 -4
  258. package/build/es/components/Icons/Small/hlChevronRightSmall.js +12 -4
  259. package/build/es/components/Icons/Small/hlChevronUpSmall.js +12 -4
  260. package/build/es/components/Icons/Small/hlClockSmall.js +14 -5
  261. package/build/es/components/Icons/Small/hlDownloadSmall.js +18 -6
  262. package/build/es/components/Icons/Small/hlExternalSmall.js +12 -4
  263. package/build/es/components/Icons/Small/hlUploadSmall.js +18 -6
  264. package/build/es/components/Icons/Social/facebook.js +13 -4
  265. package/build/es/components/Icons/Social/instagram.js +13 -4
  266. package/build/es/components/Icons/Social/linkedin.js +13 -4
  267. package/build/es/components/Icons/Social/tiktok.js +12 -4
  268. package/build/es/components/Icons/Social/twitter.js +13 -4
  269. package/build/es/components/Icons/Social/youtube.js +12 -4
  270. package/build/es/components/Icons/hl404.js +12 -4
  271. package/build/es/components/Icons/hl4gSim.js +12 -4
  272. package/build/es/components/Icons/hl5gSim.js +12 -4
  273. package/build/es/components/Icons/hlBattery.js +16 -6
  274. package/build/es/components/Icons/hlBell.js +12 -4
  275. package/build/es/components/Icons/hlCableTVCard.js +12 -4
  276. package/build/es/components/Icons/hlCalendar.js +56 -15
  277. package/build/es/components/Icons/hlCall.js +12 -4
  278. package/build/es/components/Icons/hlCameraBack.js +18 -6
  279. package/build/es/components/Icons/hlCameraFront.js +14 -5
  280. package/build/es/components/Icons/hlCart.js +16 -6
  281. package/build/es/components/Icons/hlCartEmpty.js +16 -6
  282. package/build/es/components/Icons/hlChat.js +24 -7
  283. package/build/es/components/Icons/hlCheck.js +12 -4
  284. package/build/es/components/Icons/hlChevronDown.js +12 -4
  285. package/build/es/components/Icons/hlChevronLeft.js +12 -4
  286. package/build/es/components/Icons/hlChevronRight.js +12 -4
  287. package/build/es/components/Icons/hlChevronUp.js +12 -4
  288. package/build/es/components/Icons/hlCompensation.js +12 -4
  289. package/build/es/components/Icons/hlCookie.js +12 -4
  290. package/build/es/components/Icons/hlCopy.js +14 -5
  291. package/build/es/components/Icons/hlCoupon.js +16 -6
  292. package/build/es/components/Icons/hlDelivery.js +14 -4
  293. package/build/es/components/Icons/hlDigiturva.js +14 -4
  294. package/build/es/components/Icons/hlDisplaySize.js +19 -6
  295. package/build/es/components/Icons/hlDocument.js +14 -5
  296. package/build/es/components/Icons/hlDownload.js +18 -6
  297. package/build/es/components/Icons/hlEnvelope.js +12 -4
  298. package/build/es/components/Icons/hlError.js +22 -6
  299. package/build/es/components/Icons/hlEuro.js +12 -4
  300. package/build/es/components/Icons/hlExclamationMark.js +12 -4
  301. package/build/es/components/Icons/hlExpand.js +12 -4
  302. package/build/es/components/Icons/hlExternal.js +12 -4
  303. package/build/es/components/Icons/hlEyeClosed.js +12 -4
  304. package/build/es/components/Icons/hlEyeOpen.js +14 -5
  305. package/build/es/components/Icons/hlFaceId.js +12 -4
  306. package/build/es/components/Icons/hlFastDelivery.js +12 -4
  307. package/build/es/components/Icons/hlFingerprint.js +20 -8
  308. package/build/es/components/Icons/hlGlobe.js +12 -4
  309. package/build/es/components/Icons/hlHeadphones.js +12 -4
  310. package/build/es/components/Icons/hlHeadset.js +18 -6
  311. package/build/es/components/Icons/hlHeart.js +12 -4
  312. package/build/es/components/Icons/hlHome.js +12 -4
  313. package/build/es/components/Icons/hlHub.js +14 -5
  314. package/build/es/components/Icons/hlImage.js +12 -4
  315. package/build/es/components/Icons/hlInfo.js +18 -6
  316. package/build/es/components/Icons/hlInstallment.js +14 -5
  317. package/build/es/components/Icons/hlIotSim.js +14 -5
  318. package/build/es/components/Icons/hlLaptop.js +13 -4
  319. package/build/es/components/Icons/hlLink.js +16 -5
  320. package/build/es/components/Icons/hlLiveVideo.js +12 -4
  321. package/build/es/components/Icons/hlLock.js +18 -6
  322. package/build/es/components/Icons/hlMagnifyingGlass.js +14 -5
  323. package/build/es/components/Icons/hlMarker.js +14 -5
  324. package/build/es/components/Icons/hlMemory.js +14 -5
  325. package/build/es/components/Icons/hlMenu.js +12 -4
  326. package/build/es/components/Icons/hlMinimize.js +12 -4
  327. package/build/es/components/Icons/hlMinus.js +12 -4
  328. package/build/es/components/Icons/hlMobileData.js +12 -4
  329. package/build/es/components/Icons/hlMobilePayment.js +19 -6
  330. package/build/es/components/Icons/hlModem.js +26 -8
  331. package/build/es/components/Icons/hlMore.js +22 -6
  332. package/build/es/components/Icons/hlOs.js +14 -5
  333. package/build/es/components/Icons/hlPackage.js +12 -4
  334. package/build/es/components/Icons/hlPaperclip.js +12 -4
  335. package/build/es/components/Icons/hlPaytime.js +12 -4
  336. package/build/es/components/Icons/hlPen.js +12 -4
  337. package/build/es/components/Icons/hlPerson.js +12 -4
  338. package/build/es/components/Icons/hlPhone.js +17 -5
  339. package/build/es/components/Icons/hlPlaylist.js +13 -4
  340. package/build/es/components/Icons/hlPlus.js +14 -5
  341. package/build/es/components/Icons/hlPrepaid.js +12 -4
  342. package/build/es/components/Icons/hlProcessor.js +14 -5
  343. package/build/es/components/Icons/hlServices.js +12 -4
  344. package/build/es/components/Icons/hlSettings.js +12 -4
  345. package/build/es/components/Icons/hlShield.js +14 -5
  346. package/build/es/components/Icons/hlSim.js +14 -5
  347. package/build/es/components/Icons/hlSimSimple.js +18 -6
  348. package/build/es/components/Icons/hlSmile.js +22 -7
  349. package/build/es/components/Icons/hlSpeechBubble.js +14 -5
  350. package/build/es/components/Icons/hlSquaretrade.js +13 -4
  351. package/build/es/components/Icons/hlStar.js +12 -4
  352. package/build/es/components/Icons/hlStarFilled.js +12 -4
  353. package/build/es/components/Icons/hlTrash.js +14 -5
  354. package/build/es/components/Icons/hlTv.js +12 -4
  355. package/build/es/components/Icons/hlUnlock.js +14 -6
  356. package/build/es/components/Icons/hlUpload.js +18 -6
  357. package/build/es/components/Icons/hlWarning.js +18 -6
  358. package/build/es/components/Icons/hlWifi.js +18 -6
  359. package/build/es/components/Icons/hlWrench.js +12 -4
  360. package/build/es/components/Icons/hlX.js +12 -4
  361. package/build/es/components/InfoDialog/InfoDialog.js +31 -46
  362. package/build/es/components/Input/Input.js +143 -159
  363. package/build/es/components/Label/Label.js +22 -22
  364. package/build/es/components/LabelText/LabelText.js +24 -17
  365. package/build/es/components/MainHeaderNavigation/ChildComponents/BusinessMenu.js +29 -44
  366. package/build/es/components/MainHeaderNavigation/ChildComponents/DesktopMenu.js +167 -153
  367. package/build/es/components/MainHeaderNavigation/ChildComponents/LanguageSelector.js +34 -20
  368. package/build/es/components/MainHeaderNavigation/ChildComponents/LinkModifier.js +50 -32
  369. package/build/es/components/MainHeaderNavigation/ChildComponents/LoginTooltip.js +17 -5
  370. package/build/es/components/MainHeaderNavigation/ChildComponents/MainNavTooltipMenu.d.ts +5 -2
  371. package/build/es/components/MainHeaderNavigation/ChildComponents/MainNavTooltipMenu.js +100 -95
  372. package/build/es/components/MainHeaderNavigation/ChildComponents/MainNavTooltipMenuExportedStyles.d.ts +6 -2
  373. package/build/es/components/MainHeaderNavigation/ChildComponents/MainNavTooltipMenuExportedStyles.js +4 -58
  374. package/build/es/components/MainHeaderNavigation/ChildComponents/MinicartTooltip.js +20 -4
  375. package/build/es/components/MainHeaderNavigation/ChildComponents/MobileMenu.js +187 -159
  376. package/build/es/components/MainHeaderNavigation/ChildComponents/PageSearch.js +16 -5
  377. package/build/es/components/MainHeaderNavigation/MainHeaderNavigation.js +305 -272
  378. package/build/es/components/MainHeaderNavigation/context/NavContext.js +61 -49
  379. package/build/es/components/MainHeaderNavigation/globalNavStyles.d.ts +31 -16
  380. package/build/es/components/MainHeaderNavigation/globalNavStyles.js +39 -172
  381. package/build/es/components/Modal/Modal.js +127 -145
  382. package/build/es/components/Notification/Notification.js +74 -54
  383. package/build/es/components/NotificationBadge/NotificationBadge.js +29 -32
  384. package/build/es/components/Overlay/Overlay.js +70 -68
  385. package/build/es/components/Pill/Pill.js +91 -82
  386. package/build/es/components/PillGroup/PillGroup.js +50 -33
  387. package/build/es/components/PixelLoader/PixelLoader.js +37 -34
  388. package/build/es/components/PriorityNavigation/PriorityNavigation.js +281 -303
  389. package/build/es/components/PriorityNavigationItem/PriorityNavigationItem.js +27 -49
  390. package/build/es/components/ProgressIndicator/ProgressIndicator.js +140 -109
  391. package/build/es/components/RadioButton/RadioButton.js +91 -114
  392. package/build/es/components/ReadMore/ReadMore.js +86 -69
  393. package/build/es/components/Search/Search.js +52 -64
  394. package/build/es/components/Selectbox/Selectbox.js +279 -94
  395. package/build/es/components/Skeleton/Skeleton.js +69 -56
  396. package/build/es/components/Switch/Switch.js +62 -76
  397. package/build/es/components/Tab/Tab.js +55 -53
  398. package/build/es/components/Tabs/Tabs.js +93 -71
  399. package/build/es/components/Textarea/Textarea.js +76 -73
  400. package/build/es/components/Toaster/Toaster.js +59 -44
  401. package/build/es/components/Tooltip/Tooltip.js +74 -87
  402. package/build/es/hooks/useCloseOutsideOrElementClicked.js +23 -21
  403. package/build/es/hooks/useDebounce.js +9 -9
  404. package/build/es/hooks/useDocHeight.js +13 -13
  405. package/build/es/hooks/useOutsideClick.js +10 -10
  406. package/build/es/hooks/useResizeObserver.js +37 -24
  407. package/build/es/hooks/useScrollPosition.js +55 -54
  408. package/build/es/hooks/useWindowSize.js +20 -20
  409. package/build/es/themes/globalStyles.js +4 -4
  410. package/build/es/themes/gridTheme.js +1 -1
  411. package/build/es/themes/theme.js +12 -12
  412. package/build/es/themes/themeComponents/base.js +9 -8
  413. package/build/es/themes/themeComponents/breakpoints.js +6 -6
  414. package/build/es/themes/themeComponents/color.js +76 -74
  415. package/build/es/themes/themeComponents/fontFamily.js +3 -3
  416. package/build/es/themes/themeComponents/fontSize.js +31 -15
  417. package/build/es/themes/themeComponents/fontWeight.js +16 -16
  418. package/build/es/themes/themeComponents/forms.js +3 -2
  419. package/build/es/themes/themeComponents/layout.js +27 -27
  420. package/build/es/themes/themeComponents/lineHeight.js +32 -16
  421. package/build/es/themes/themeComponents/navigation.js +13 -13
  422. package/build/es/themes/themeComponents/radius.js +26 -26
  423. package/build/es/utils/common.js +15 -19
  424. package/build/es/utils/createStyled.d.ts +154 -134
  425. package/build/es/utils/createStyled.js +16 -2
  426. package/build/es/utils/styledUtils.js +2 -6
  427. package/package.json +19 -17
@@ -17,52 +17,67 @@ function _interopDefaultCompat (e) { return e && typeof e === 'object' && 'defau
17
17
  var React__default = /*#__PURE__*/_interopDefaultCompat(React);
18
18
 
19
19
  const iconsMap = {
20
- info: icons.Info,
21
- success: icons.Check,
22
- warning: icons.Warning,
23
- error: icons.Error,
20
+ info: icons.Info,
21
+ success: icons.Check,
22
+ warning: icons.Warning,
23
+ error: icons.Error
24
24
  };
25
- const ToasterWrapper = styledComponents.styled.div `
26
- width: 300px;
27
- `;
28
- const StyledBox = styledComponents.styled(Box.default) `
29
- position: relative;
30
- font-size: ${theme.default.fontSize.s};
31
- font-weight: ${theme.default.fontWeight.medium};
32
- line-height: ${theme.default.lineHeight.default};
33
- border-left: 5px solid ${({ type }) => theme.default.color.notification[type]};
34
- display: flex;
35
- align-items: center;
36
- padding-right: ${styledUtils.getMultipliedSize(theme.default.base.baseWidth, 4.5)};
37
- `;
38
- const IconWrapper = styledComponents.styled.div `
39
- display: none;
40
- align-items: center;
41
- width: ${styledUtils.getMultipliedSize(theme.default.base.baseWidth, 4)};
42
- overflow: hidden;
43
-
44
- ${styledUtils.media.xs `
25
+ const ToasterWrapper = styledComponents.styled.div.withConfig({
26
+ displayName: "Toaster__ToasterWrapper",
27
+ componentId: "sc-1q29lby-0"
28
+ })(["width:300px;"]);
29
+ const StyledBox = styledComponents.styled(Box.default).withConfig({
30
+ displayName: "Toaster__StyledBox",
31
+ componentId: "sc-1q29lby-1"
32
+ })(["position:relative;font-size:", ";font-weight:", ";line-height:", ";border-left:5px solid ", ";display:flex;align-items:center;padding-right:", ";"], theme.default.fontSize.s, theme.default.fontWeight.medium, theme.default.lineHeight.default, ({
33
+ type
34
+ }) => theme.default.color.notification[type], styledUtils.getMultipliedSize(theme.default.base.baseWidth, 4.5));
35
+ const IconWrapper = styledComponents.styled.div.withConfig({
36
+ displayName: "Toaster__IconWrapper",
37
+ componentId: "sc-1q29lby-2"
38
+ })(["display:none;align-items:center;width:", ";overflow:hidden;", ""], styledUtils.getMultipliedSize(theme.default.base.baseWidth, 4), styledUtils.media.xs`
45
39
  display: flex;
46
- `}
47
- `;
48
- const ContentWrapper = styledComponents.styled.div `
49
- flex: 1;
50
- `;
51
- const ButtonCloseStyled = styledComponents.styled(ButtonClose.default) `
52
- display: flex;
53
- top: auto;
54
- `;
55
- const Toaster = (_a) => {
56
- var { type = 'info', 'data-testid': dataTestId, closeLabel } = _a, props = tslib.__rest(_a, ["type", 'data-testid', "closeLabel"]);
57
- if (props.dismissed)
58
- return null;
59
- return (React__default.default.createElement(ToasterWrapper, { className: props.className, "data-testid": dataTestId, role: "alert", "aria-live": "assertive", "aria-atomic": "true" },
60
- React__default.default.createElement(StyledBox, { type: type, padding: styledUtils.getMultipliedSize(theme.default.base.baseWidth, 1), elevation: "extraHigh" },
61
- React__default.default.createElement(IconWrapper, null,
62
- React__default.default.createElement(Icon.default, { icon: iconsMap[type], size: "2rem", color: theme.default.color.notification[type], "aria-hidden": true, "data-testid": "toaster-icon" })),
63
- React__default.default.createElement(ContentWrapper, null, props.children),
64
- React__default.default.createElement(ButtonCloseStyled, { "aria-label": closeLabel, onClick: props.onClickCloseButton },
65
- React__default.default.createElement(Icon.default, { icon: icons.Close, color: theme.default.color.text.black, "aria-hidden": true })))));
40
+ `);
41
+ const ContentWrapper = styledComponents.styled.div.withConfig({
42
+ displayName: "Toaster__ContentWrapper",
43
+ componentId: "sc-1q29lby-3"
44
+ })(["flex:1;"]);
45
+ const ButtonCloseStyled = styledComponents.styled(ButtonClose.default).withConfig({
46
+ displayName: "Toaster__ButtonCloseStyled",
47
+ componentId: "sc-1q29lby-4"
48
+ })(["display:flex;top:auto;"]);
49
+ const Toaster = _a => {
50
+ var {
51
+ type = 'info',
52
+ 'data-testid': dataTestId,
53
+ closeLabel
54
+ } = _a,
55
+ props = tslib.__rest(_a, ["type", 'data-testid', "closeLabel"]);
56
+ if (props.dismissed) return null;
57
+ return /*#__PURE__*/React__default.default.createElement(ToasterWrapper, {
58
+ className: props.className,
59
+ "data-testid": dataTestId,
60
+ role: "alert",
61
+ "aria-live": "assertive",
62
+ "aria-atomic": "true"
63
+ }, /*#__PURE__*/React__default.default.createElement(StyledBox, {
64
+ type: type,
65
+ padding: styledUtils.getMultipliedSize(theme.default.base.baseWidth, 1),
66
+ elevation: "extraHigh"
67
+ }, /*#__PURE__*/React__default.default.createElement(IconWrapper, null, /*#__PURE__*/React__default.default.createElement(Icon.default, {
68
+ icon: iconsMap[type],
69
+ size: "2rem",
70
+ color: theme.default.color.notification[type],
71
+ "aria-hidden": true,
72
+ "data-testid": "toaster-icon"
73
+ })), /*#__PURE__*/React__default.default.createElement(ContentWrapper, null, props.children), /*#__PURE__*/React__default.default.createElement(ButtonCloseStyled, {
74
+ "aria-label": closeLabel,
75
+ onClick: props.onClickCloseButton
76
+ }, /*#__PURE__*/React__default.default.createElement(Icon.default, {
77
+ icon: icons.Close,
78
+ color: theme.default.color.text.black,
79
+ "aria-hidden": true
80
+ }))));
66
81
  };
67
82
 
68
83
  exports.default = Toaster;
@@ -16,101 +16,88 @@ function _interopDefaultCompat (e) { return e && typeof e === 'object' && 'defau
16
16
 
17
17
  var React__default = /*#__PURE__*/_interopDefaultCompat(React);
18
18
 
19
- const Helper = styledComponents.styled.button `
20
- display: inline-block;
21
- vertical-align: middle;
22
- background: transparent;
23
- border: none;
24
- padding: 0;
25
- margin: 0;
26
- color: inherit;
27
- font: inherit;
28
- text-align: inherit;
29
- text-decoration: none;
30
- outline: inherit;
31
- pointer-events: auto;
32
- height: 1rem;
33
-
34
- &:focus-visible {
35
- outline: none;
36
- box-shadow:
37
- 0px 0px 0px 2px ${theme.default.color.focus.light},
38
- 0px 0px 0px 4px ${theme.default.color.focus.dark};
39
- border-radius: 100%;
40
- }
41
-
42
- ${({ $isClickable }) => $isClickable && `cursor: pointer`};
43
- `;
19
+ const Helper = styledComponents.styled.button.withConfig({
20
+ displayName: "Tooltip__Helper",
21
+ componentId: "sc-1yyn2pp-0"
22
+ })(["display:inline-block;vertical-align:middle;background:transparent;border:none;padding:0;margin:0;color:inherit;font:inherit;text-align:inherit;text-decoration:none;outline:inherit;pointer-events:auto;height:1rem;&:focus-visible{outline:none;box-shadow:0px 0px 0px 2px ", ",0px 0px 0px 4px ", ";border-radius:100%;}", ";"], theme.default.color.focus.light, theme.default.color.focus.dark, ({
23
+ $isClickable
24
+ }) => $isClickable && `cursor: pointer`);
44
25
  const getArrowOverrides = () => {
45
- const arrowConfig = {
46
- top: ['bottom', '45deg'],
47
- right: ['left', '135deg'],
48
- bottom: ['top', '225deg'],
49
- left: ['right', '315deg'],
50
- };
51
- return Object.entries(arrowConfig)
52
- .map(([placement, value]) => `
26
+ const arrowConfig = {
27
+ top: ['bottom', '45deg'],
28
+ right: ['left', '135deg'],
29
+ bottom: ['top', '225deg'],
30
+ left: ['right', '315deg']
31
+ };
32
+ return Object.entries(arrowConfig).map(([placement, value]) => `
53
33
  &.react-tooltip__place-${placement} {
54
34
  & .react-tooltip-arrow {
55
35
  ${value[0]}: -${styledUtils.getMultipliedSize(theme.default.base.baseWidth, 0.6)} !important;
56
36
  transform: rotate(${value[1]});
57
37
  }
58
38
  }
59
- `)
60
- .join('');
39
+ `).join('');
61
40
  };
62
- const StyledReactTooltip = styledComponents.styled(reactTooltip.Tooltip) `
63
- --rt-opacity: 1;
64
-
65
- border: 1px solid ${theme.default.color.line.L02};
66
- padding: ${styledUtils.getMultipliedSize(theme.default.base.baseWidth, 1.5)};
67
- text-align: left;
68
- font-size: ${theme.default.fontSize.default};
69
- line-height: ${theme.default.lineHeight.default};
70
- width: max-content;
71
- max-width: ${styledUtils.getMultipliedSize(theme.default.base.baseWidth, 25)};
72
- color: ${theme.default.color.text.black};
73
- background-color: ${theme.default.color.background.white.default};
74
- border-radius: ${theme.default.radius.s};
75
-
76
- ${common.default({ elevation: 'low' })}
77
-
78
- & .react-tooltip-arrow {
79
- width: ${styledUtils.getMultipliedSize(theme.default.base.baseWidth, 1.2)};
80
- height: ${styledUtils.getMultipliedSize(theme.default.base.baseHeight, 1.2)};
81
- border-bottom: 1px solid ${theme.default.color.line.L02};
82
- border-right: 1px solid ${theme.default.color.line.L02};
83
- }
84
-
85
- ${getArrowOverrides()}
86
- `;
87
- const Tooltip = (_a) => {
88
- var { 'data-testid': dataTestId, closeWithEsc = true, isClickable = false, isHoverable = false } = _a, props = tslib.__rest(_a, ['data-testid', "closeWithEsc", "isClickable", "isHoverable"]);
89
- const handleReactTooltipOpenEvents = {
90
- mouseover: !isClickable,
91
- focus: !isClickable,
92
- mouseenter: !isClickable,
93
- mousedown: !isClickable && !isHoverable,
94
- click: isClickable,
95
- dblclick: isClickable,
96
- };
97
- const handleReactTooltipCloseEvents = {
98
- mouseout: !isClickable && !isHoverable,
99
- blur: !isClickable && !isHoverable,
100
- mouseleave: !isClickable,
101
- mouseup: !isClickable,
102
- click: isClickable,
103
- dblclick: isClickable,
104
- };
105
- const handleReactTooltipGlobalCloseEvents = {
106
- escape: closeWithEsc,
107
- clickOutsideAnchor: true,
108
- scroll: true,
109
- };
110
- return (React__default.default.createElement(React__default.default.Fragment, null,
111
- !props.hideTriggerElement && (React__default.default.createElement(Helper, { "data-tooltip-id": props.id, "$isClickable": isClickable, className: props.className, "data-testid": dataTestId, type: "button", "data-tooltip-delay-hide": 500 },
112
- React__default.default.createElement(Icon.default, { icon: icons.Info, size: "1rem", position: props.position, "aria-hidden": true }))),
113
- React__default.default.createElement(StyledReactTooltip, { id: props.id, place: props.placement, openOnClick: isClickable, clickable: isHoverable, "$isMultiline": props.isMultiline, disableStyleInjection: true, role: isHoverable ? 'dialog' : 'tooltip', openEvents: handleReactTooltipOpenEvents, globalCloseEvents: handleReactTooltipGlobalCloseEvents, closeEvents: handleReactTooltipCloseEvents, "data-testid": dataTestId && `${dataTestId}-content` }, props.children)));
41
+ const StyledReactTooltip = styledComponents.styled(reactTooltip.Tooltip).withConfig({
42
+ displayName: "Tooltip__StyledReactTooltip",
43
+ componentId: "sc-1yyn2pp-1"
44
+ })(["--rt-opacity:1;border:1px solid ", ";padding:", ";text-align:left;font-size:", ";line-height:", ";width:max-content;max-width:", ";color:", ";background-color:", ";border-radius:", ";", " & .react-tooltip-arrow{width:", ";height:", ";border-bottom:1px solid ", ";border-right:1px solid ", ";}", ""], theme.default.color.line.L02, styledUtils.getMultipliedSize(theme.default.base.baseWidth, 1.5), theme.default.fontSize.default, theme.default.lineHeight.default, styledUtils.getMultipliedSize(theme.default.base.baseWidth, 25), theme.default.color.text.black, theme.default.color.background.white.default, theme.default.radius.s, common.default({
45
+ elevation: 'low'
46
+ }), styledUtils.getMultipliedSize(theme.default.base.baseWidth, 1.2), styledUtils.getMultipliedSize(theme.default.base.baseHeight, 1.2), theme.default.color.line.L02, theme.default.color.line.L02, getArrowOverrides());
47
+ const Tooltip = _a => {
48
+ var {
49
+ 'data-testid': dataTestId,
50
+ closeWithEsc = true,
51
+ isClickable = false,
52
+ isHoverable = false
53
+ } = _a,
54
+ props = tslib.__rest(_a, ['data-testid', "closeWithEsc", "isClickable", "isHoverable"]);
55
+ const handleReactTooltipOpenEvents = {
56
+ mouseover: !isClickable,
57
+ focus: !isClickable,
58
+ mouseenter: !isClickable,
59
+ mousedown: !isClickable && !isHoverable,
60
+ click: isClickable,
61
+ dblclick: isClickable
62
+ };
63
+ const handleReactTooltipCloseEvents = {
64
+ mouseout: !isClickable && !isHoverable,
65
+ blur: !isClickable && !isHoverable,
66
+ mouseleave: !isClickable,
67
+ mouseup: !isClickable,
68
+ click: isClickable,
69
+ dblclick: isClickable
70
+ };
71
+ const handleReactTooltipGlobalCloseEvents = {
72
+ escape: closeWithEsc,
73
+ clickOutsideAnchor: true,
74
+ scroll: true
75
+ };
76
+ return /*#__PURE__*/React__default.default.createElement(React__default.default.Fragment, null, !props.hideTriggerElement && (/*#__PURE__*/React__default.default.createElement(Helper, {
77
+ "data-tooltip-id": props.id,
78
+ "$isClickable": isClickable,
79
+ className: props.className,
80
+ "data-testid": dataTestId,
81
+ type: "button",
82
+ "data-tooltip-delay-hide": 500
83
+ }, /*#__PURE__*/React__default.default.createElement(Icon.default, {
84
+ icon: icons.Info,
85
+ size: "1rem",
86
+ position: props.position,
87
+ "aria-hidden": true
88
+ }))), /*#__PURE__*/React__default.default.createElement(StyledReactTooltip, {
89
+ id: props.id,
90
+ place: props.placement,
91
+ openOnClick: isClickable,
92
+ clickable: isHoverable,
93
+ "$isMultiline": props.isMultiline,
94
+ disableStyleInjection: true,
95
+ role: isHoverable ? 'dialog' : 'tooltip',
96
+ openEvents: handleReactTooltipOpenEvents,
97
+ globalCloseEvents: handleReactTooltipGlobalCloseEvents,
98
+ closeEvents: handleReactTooltipCloseEvents,
99
+ "data-testid": dataTestId && `${dataTestId}-content`
100
+ }, props.children));
114
101
  };
115
102
 
116
103
  exports.default = Tooltip;
@@ -11,28 +11,30 @@ var React = require('react');
11
11
  * @param closeWhenTagClicked - provided array of tag names in lowercase which will also close dropdown. Works if tag or first parent is clicked.
12
12
  * @param callback - callback
13
13
  */
14
- const useCloseOutsideOrElementClicked = ({ ref, closeWhenTagClicked }, callback) => {
15
- const handleClick = (e) => {
16
- const target = e.target;
17
- const parent = target.parentNode;
18
- const isElementInList = closeWhenTagClicked.some(tag => {
19
- var _a, _b, _c;
20
- if (!target.parentNode) {
21
- return tag === ((_a = target.tagName) === null || _a === void 0 ? void 0 : _a.toLowerCase());
22
- }
23
- return tag === ((_b = target.tagName) === null || _b === void 0 ? void 0 : _b.toLowerCase()) || tag === ((_c = parent.tagName) === null || _c === void 0 ? void 0 : _c.toLowerCase());
24
- });
25
- if ((ref.current && !ref.current.contains(target)) ||
26
- (isElementInList && !target.closest('.no-close'))) {
27
- callback();
28
- }
29
- };
30
- React.useEffect(() => {
31
- document.addEventListener('click', handleClick);
32
- return () => {
33
- document.removeEventListener('click', handleClick);
34
- };
14
+ const useCloseOutsideOrElementClicked = ({
15
+ ref,
16
+ closeWhenTagClicked
17
+ }, callback) => {
18
+ const handleClick = e => {
19
+ const target = e.target;
20
+ const parent = target.parentNode;
21
+ const isElementInList = closeWhenTagClicked.some(tag => {
22
+ var _a, _b, _c;
23
+ if (!target.parentNode) {
24
+ return tag === ((_a = target.tagName) === null || _a === void 0 ? void 0 : _a.toLowerCase());
25
+ }
26
+ return tag === ((_b = target.tagName) === null || _b === void 0 ? void 0 : _b.toLowerCase()) || tag === ((_c = parent.tagName) === null || _c === void 0 ? void 0 : _c.toLowerCase());
35
27
  });
28
+ if (ref.current && !ref.current.contains(target) || isElementInList && !target.closest('.no-close')) {
29
+ callback();
30
+ }
31
+ };
32
+ React.useEffect(() => {
33
+ document.addEventListener('click', handleClick);
34
+ return () => {
35
+ document.removeEventListener('click', handleClick);
36
+ };
37
+ });
36
38
  };
37
39
 
38
40
  exports.default = useCloseOutsideOrElementClicked;
@@ -9,15 +9,15 @@ const useDebounce = (
9
9
  // TODO: Eventually define generic type for function arguments if needed
10
10
  // callback: <T extends (...args: Parameters<T>) => void>(...args: T[]) => void,
11
11
  callback, delay = DEFAULT_DELAY) => {
12
- const debounce = React.useRef();
13
- return React.useCallback(() => {
14
- if (debounce.current) {
15
- clearTimeout(debounce.current);
16
- }
17
- debounce.current = setTimeout(() => {
18
- callback();
19
- }, delay);
20
- }, [callback, delay]);
12
+ const debounce = React.useRef();
13
+ return React.useCallback(() => {
14
+ if (debounce.current) {
15
+ clearTimeout(debounce.current);
16
+ }
17
+ debounce.current = setTimeout(() => {
18
+ callback();
19
+ }, delay);
20
+ }, [callback, delay]);
21
21
  };
22
22
 
23
23
  exports.default = useDebounce;
@@ -7,19 +7,19 @@ var useDebounce = require('./useDebounce.js');
7
7
 
8
8
  const DEBOUNCE_DELAY = 100;
9
9
  const useDocHeight = () => {
10
- const setDocHeight = React.useCallback(() => {
11
- document.documentElement.style.setProperty('--vh100', `${window.innerHeight}px`);
12
- }, []);
13
- const debounceSetDocHeight = useDebounce.default(setDocHeight, DEBOUNCE_DELAY);
14
- React.useEffect(() => {
15
- setDocHeight();
16
- window.addEventListener('resize', debounceSetDocHeight);
17
- window.addEventListener('orientationchange', debounceSetDocHeight);
18
- return () => {
19
- window.removeEventListener('resize', debounceSetDocHeight);
20
- window.removeEventListener('orientationchange', debounceSetDocHeight);
21
- };
22
- }, [debounceSetDocHeight, setDocHeight]);
10
+ const setDocHeight = React.useCallback(() => {
11
+ document.documentElement.style.setProperty('--vh100', `${window.innerHeight}px`);
12
+ }, []);
13
+ const debounceSetDocHeight = useDebounce.default(setDocHeight, DEBOUNCE_DELAY);
14
+ React.useEffect(() => {
15
+ setDocHeight();
16
+ window.addEventListener('resize', debounceSetDocHeight);
17
+ window.addEventListener('orientationchange', debounceSetDocHeight);
18
+ return () => {
19
+ window.removeEventListener('resize', debounceSetDocHeight);
20
+ window.removeEventListener('orientationchange', debounceSetDocHeight);
21
+ };
22
+ }, [debounceSetDocHeight, setDocHeight]);
23
23
  };
24
24
 
25
25
  exports.default = useDocHeight;
@@ -11,17 +11,17 @@ var React = require('react');
11
11
  * @param {Function} callback - callback
12
12
  */
13
13
  const useOutsideClick = (ref, callback) => {
14
- const handleClick = (e) => {
15
- if (ref.current && !ref.current.contains(e.target)) {
16
- callback();
17
- }
14
+ const handleClick = e => {
15
+ if (ref.current && !ref.current.contains(e.target)) {
16
+ callback();
17
+ }
18
+ };
19
+ React.useEffect(() => {
20
+ document.addEventListener('click', handleClick);
21
+ return () => {
22
+ document.removeEventListener('click', handleClick);
18
23
  };
19
- React.useEffect(() => {
20
- document.addEventListener('click', handleClick);
21
- return () => {
22
- document.removeEventListener('click', handleClick);
23
- };
24
- });
24
+ });
25
25
  };
26
26
 
27
27
  exports.default = useOutsideClick;
@@ -8,30 +8,43 @@ var React = require('react');
8
8
  * Hook to get element dimensions when layout changes
9
9
  */
10
10
  const ResizeObserver = typeof window !== 'undefined' && window.ResizeObserver;
11
- const useResizeObserver = (ref) => {
12
- const [size, setSize] = React.useState({ width: 0, height: 0 });
13
- const resizeObserver = React.useRef(null);
14
- const onResize = React.useCallback(entries => {
15
- const { inlineSize, blockSize } = entries[0].borderBoxSize[0];
16
- setSize({ width: inlineSize, height: blockSize });
17
- }, []);
18
- React.useEffect(() => {
19
- if ((ref === null || ref === void 0 ? void 0 : ref.current) && ResizeObserver) {
20
- if (resizeObserver.current) {
21
- resizeObserver.current.disconnect();
22
- }
23
- resizeObserver.current = new ResizeObserver(onResize);
24
- if (resizeObserver.current) {
25
- resizeObserver.current.observe(ref.current);
26
- }
27
- }
28
- }, [ref, onResize]);
29
- React.useEffect(() => () => {
30
- if (resizeObserver.current) {
31
- resizeObserver.current.disconnect();
32
- }
33
- }, []);
34
- return { ref, width: size.width, height: size.height };
11
+ const useResizeObserver = ref => {
12
+ const [size, setSize] = React.useState({
13
+ width: 0,
14
+ height: 0
15
+ });
16
+ const resizeObserver = React.useRef(null);
17
+ const onResize = React.useCallback(entries => {
18
+ const {
19
+ inlineSize,
20
+ blockSize
21
+ } = entries[0].borderBoxSize[0];
22
+ setSize({
23
+ width: inlineSize,
24
+ height: blockSize
25
+ });
26
+ }, []);
27
+ React.useEffect(() => {
28
+ if ((ref === null || ref === void 0 ? void 0 : ref.current) && ResizeObserver) {
29
+ if (resizeObserver.current) {
30
+ resizeObserver.current.disconnect();
31
+ }
32
+ resizeObserver.current = new ResizeObserver(onResize);
33
+ if (resizeObserver.current) {
34
+ resizeObserver.current.observe(ref.current);
35
+ }
36
+ }
37
+ }, [ref, onResize]);
38
+ React.useEffect(() => () => {
39
+ if (resizeObserver.current) {
40
+ resizeObserver.current.disconnect();
41
+ }
42
+ }, []);
43
+ return {
44
+ ref,
45
+ width: size.width,
46
+ height: size.height
47
+ };
35
48
  };
36
49
 
37
50
  exports.default = useResizeObserver;
@@ -5,66 +5,67 @@ Object.defineProperty(exports, '__esModule', { value: true });
5
5
  var React = require('react');
6
6
 
7
7
  const isBrowser = typeof window !== 'undefined';
8
- const getScrollPosition = (ref) => {
9
- const { element } = ref;
10
- const { useWindow } = ref;
8
+ const getScrollPosition = ref => {
9
+ const {
10
+ element
11
+ } = ref;
12
+ const {
13
+ useWindow
14
+ } = ref;
15
+ if (!isBrowser) {
16
+ return {
17
+ x: 0,
18
+ y: 0
19
+ };
20
+ }
21
+ const target = element ? element.current : document.body;
22
+ const position = target.getBoundingClientRect();
23
+ return useWindow ? {
24
+ x: window.scrollX,
25
+ y: window.scrollY
26
+ } : {
27
+ x: position.left,
28
+ y: position.top
29
+ };
30
+ };
31
+ const useScrollPosition = (effect, element, useWindow, wait) => {
32
+ const position = React.useRef(getScrollPosition({
33
+ useWindow
34
+ }));
35
+ const throttleTimeout = React.useRef(null);
36
+ const callBack = () => {
37
+ const currPos = getScrollPosition({
38
+ element,
39
+ useWindow
40
+ });
41
+ effect({
42
+ prevPos: position.current,
43
+ currPos
44
+ });
45
+ position.current = currPos;
46
+ throttleTimeout.current = null;
47
+ };
48
+ React.useEffect(() => {
11
49
  if (!isBrowser) {
12
- return {
13
- x: 0,
14
- y: 0,
15
- };
50
+ return undefined;
16
51
  }
17
- const target = element ? element.current : document.body;
18
- const position = target.getBoundingClientRect();
19
- return useWindow
20
- ? {
21
- x: window.scrollX,
22
- y: window.scrollY,
52
+ const handleScroll = () => {
53
+ if (wait) {
54
+ if (throttleTimeout.current === null) {
55
+ throttleTimeout.current = setTimeout(callBack, wait);
23
56
  }
24
- : {
25
- x: position.left,
26
- y: position.top,
27
- };
28
- };
29
- const useScrollPosition = (effect, element, useWindow, wait) => {
30
- const position = React.useRef(getScrollPosition({
31
- useWindow,
32
- }));
33
- const throttleTimeout = React.useRef(null);
34
- const callBack = () => {
35
- const currPos = getScrollPosition({
36
- element,
37
- useWindow,
38
- });
39
- effect({
40
- prevPos: position.current,
41
- currPos,
42
- });
43
- position.current = currPos;
44
- throttleTimeout.current = null;
57
+ } else {
58
+ callBack();
59
+ }
45
60
  };
46
- React.useEffect(() => {
47
- if (!isBrowser) {
48
- return undefined;
49
- }
50
- const handleScroll = () => {
51
- if (wait) {
52
- if (throttleTimeout.current === null) {
53
- throttleTimeout.current = setTimeout(callBack, wait);
54
- }
55
- }
56
- else {
57
- callBack();
58
- }
59
- };
60
- window.addEventListener('scroll', handleScroll);
61
- return () => window.removeEventListener('scroll', handleScroll);
62
- });
61
+ window.addEventListener('scroll', handleScroll);
62
+ return () => window.removeEventListener('scroll', handleScroll);
63
+ });
63
64
  };
64
65
  useScrollPosition.defaultProps = {
65
- element: false,
66
- useWindow: false,
67
- wait: null,
66
+ element: false,
67
+ useWindow: false,
68
+ wait: null
68
69
  };
69
70
 
70
71
  exports.default = useScrollPosition;