@consta/header 1.2.0 → 2.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (330) hide show
  1. package/PopoverButton/index.d.ts +1 -0
  2. package/PopoverButton/index.js +1 -0
  3. package/README.md +15 -16
  4. package/__internal__/src/common.d.js.map +1 -1
  5. package/__internal__/src/components/ButtonMenu/ButtonMenu.css +1 -1
  6. package/__internal__/src/components/ButtonMenu/ButtonMenu.js +1 -1
  7. package/__internal__/src/components/ButtonMenu/ButtonMenu.js.map +1 -1
  8. package/__internal__/src/components/ButtonMenu/helpers.d.ts +3 -3
  9. package/__internal__/src/components/ButtonMenu/helpers.js.map +1 -1
  10. package/__internal__/src/components/ButtonMenu/types.d.ts +1 -1
  11. package/__internal__/src/components/ButtonMenu/types.js.map +1 -1
  12. package/__internal__/src/components/Layout/Layout.js.map +1 -1
  13. package/__internal__/src/components/Layout/LayoutRow/LayoutRow.css +1 -1
  14. package/__internal__/src/components/Layout/LayoutRow/LayoutRow.js +1 -1
  15. package/__internal__/src/components/Layout/LayoutRow/LayoutRow.js.map +1 -1
  16. package/__internal__/src/components/Layout/helpers.js.map +1 -1
  17. package/__internal__/src/components/MegaMenu/MegaMenu.js +1 -1
  18. package/__internal__/src/components/MegaMenu/MegaMenu.js.map +1 -1
  19. package/__internal__/src/components/MegaMenu/MegaMenuBannerBar/MegaMenuBannerBar.css +1 -0
  20. package/__internal__/src/components/MegaMenu/MegaMenuBannerBar/MegaMenuBannerBar.d.ts +3 -0
  21. package/__internal__/src/components/MegaMenu/MegaMenuBannerBar/MegaMenuBannerBar.js +2 -0
  22. package/__internal__/src/components/MegaMenu/MegaMenuBannerBar/MegaMenuBannerBar.js.map +1 -0
  23. package/__internal__/src/components/MegaMenu/MegaMenuBannerBar/MegaMenuBannerBarItem/MegaMenuBannerBarItem.css +1 -0
  24. package/__internal__/src/components/MegaMenu/MegaMenuBannerBar/MegaMenuBannerBarItem/MegaMenuBannerBarItem.d.ts +3 -0
  25. package/__internal__/src/components/MegaMenu/MegaMenuBannerBar/MegaMenuBannerBarItem/MegaMenuBannerBarItem.js +2 -0
  26. package/__internal__/src/components/MegaMenu/MegaMenuBannerBar/MegaMenuBannerBarItem/MegaMenuBannerBarItem.js.map +1 -0
  27. package/__internal__/src/components/MegaMenu/MegaMenuBannerBar/MegaMenuBannerBarItem/index.d.ts +1 -0
  28. package/__internal__/src/components/MegaMenu/MegaMenuBannerBar/MegaMenuBannerBarItem/index.js +2 -0
  29. package/__internal__/src/components/MegaMenu/MegaMenuBannerBar/MegaMenuBannerBarItem/index.js.map +1 -0
  30. package/__internal__/src/components/{BannerBar → MegaMenu/MegaMenuBannerBar}/helpers.d.ts +10 -10
  31. package/__internal__/src/components/MegaMenu/MegaMenuBannerBar/helpers.js.map +1 -0
  32. package/__internal__/src/components/MegaMenu/MegaMenuBannerBar/index.d.ts +3 -0
  33. package/__internal__/src/components/MegaMenu/MegaMenuBannerBar/index.js +2 -0
  34. package/__internal__/src/components/MegaMenu/MegaMenuBannerBar/index.js.map +1 -0
  35. package/__internal__/src/components/MegaMenu/MegaMenuBannerBar/types.d.ts +42 -0
  36. package/__internal__/src/components/MegaMenu/MegaMenuBannerBar/types.js.map +1 -0
  37. package/__internal__/src/components/MegaMenu/MegaMenuBox/MegaMenuBox.js.map +1 -1
  38. package/__internal__/src/components/MegaMenu/MegaMenuGlobal/MegaMenuGlobal.css +1 -0
  39. package/__internal__/src/components/MegaMenu/MegaMenuGlobal/MegaMenuGlobal.d.ts +3 -0
  40. package/__internal__/src/components/MegaMenu/MegaMenuGlobal/MegaMenuGlobal.js +2 -0
  41. package/__internal__/src/components/MegaMenu/MegaMenuGlobal/MegaMenuGlobal.js.map +1 -0
  42. package/__internal__/src/components/MegaMenu/MegaMenuGlobal/MegaMenuGlobalGroup/MegaMenuGlobalGroup.css +1 -0
  43. package/__internal__/src/components/MegaMenu/MegaMenuGlobal/MegaMenuGlobalGroup/MegaMenuGlobalGroup.d.ts +3 -0
  44. package/__internal__/src/components/MegaMenu/MegaMenuGlobal/MegaMenuGlobalGroup/MegaMenuGlobalGroup.js +2 -0
  45. package/__internal__/src/components/MegaMenu/MegaMenuGlobal/MegaMenuGlobalGroup/MegaMenuGlobalGroup.js.map +1 -0
  46. package/__internal__/src/components/MegaMenu/MegaMenuGlobal/MegaMenuGlobalGroup/index.d.ts +1 -0
  47. package/__internal__/src/components/MegaMenu/MegaMenuGlobal/MegaMenuGlobalGroup/index.js +2 -0
  48. package/__internal__/src/components/MegaMenu/MegaMenuGlobal/MegaMenuGlobalGroup/index.js.map +1 -0
  49. package/__internal__/src/components/{GlobalMenu → MegaMenu/MegaMenuGlobal}/helper.d.ts +14 -14
  50. package/__internal__/src/components/MegaMenu/MegaMenuGlobal/helper.js.map +1 -0
  51. package/__internal__/src/components/MegaMenu/MegaMenuGlobal/index.d.ts +2 -0
  52. package/__internal__/src/components/MegaMenu/MegaMenuGlobal/index.js +2 -0
  53. package/__internal__/src/components/MegaMenu/MegaMenuGlobal/index.js.map +1 -0
  54. package/__internal__/src/components/MegaMenu/MegaMenuGlobal/types.d.ts +75 -0
  55. package/__internal__/src/components/MegaMenu/MegaMenuGlobal/types.js.map +1 -0
  56. package/__internal__/src/components/MegaMenu/MegaMenuNavBar/MegaMenuNavBar.css +1 -0
  57. package/__internal__/src/components/MegaMenu/MegaMenuNavBar/MegaMenuNavBar.d.ts +3 -0
  58. package/__internal__/src/components/MegaMenu/MegaMenuNavBar/MegaMenuNavBar.js +2 -0
  59. package/__internal__/src/components/MegaMenu/MegaMenuNavBar/MegaMenuNavBar.js.map +1 -0
  60. package/__internal__/src/components/MegaMenu/MegaMenuNavBar/helper.d.ts +31 -0
  61. package/__internal__/src/components/MegaMenu/MegaMenuNavBar/helper.js.map +1 -0
  62. package/__internal__/src/components/MegaMenu/MegaMenuNavBar/index.d.ts +1 -0
  63. package/__internal__/src/components/MegaMenu/MegaMenuNavBar/index.js +2 -0
  64. package/__internal__/src/components/MegaMenu/MegaMenuNavBar/index.js.map +1 -0
  65. package/__internal__/src/components/MegaMenu/MegaMenuNavBar/types.d.ts +48 -0
  66. package/__internal__/src/components/MegaMenu/MegaMenuNavBar/types.js.map +1 -0
  67. package/__internal__/src/components/MegaMenu/helper.d.ts +9 -9
  68. package/__internal__/src/components/MegaMenu/helper.js.map +1 -1
  69. package/__internal__/src/components/MegaMenu/index.d.ts +3 -0
  70. package/__internal__/src/components/MegaMenu/index.js +1 -1
  71. package/__internal__/src/components/MegaMenu/index.js.map +1 -1
  72. package/__internal__/src/components/MegaMenu/types.d.ts +13 -13
  73. package/__internal__/src/components/MegaMenu/types.js.map +1 -1
  74. package/__internal__/src/components/Menu/Menu.js +1 -1
  75. package/__internal__/src/components/Menu/Menu.js.map +1 -1
  76. package/__internal__/src/components/Menu/helpers.d.ts +1 -1
  77. package/__internal__/src/components/Menu/helpers.js.map +1 -1
  78. package/__internal__/src/components/MobileMenu/MobileMenu.js +1 -1
  79. package/__internal__/src/components/MobileMenu/MobileMenu.js.map +1 -1
  80. package/__internal__/src/components/MobileMenu/types.d.ts +5 -5
  81. package/__internal__/src/components/MobileMenu/types.js.map +1 -1
  82. package/__internal__/src/components/Notifications/Notifications.js +1 -1
  83. package/__internal__/src/components/Notifications/Notifications.js.map +1 -1
  84. package/__internal__/src/components/Notifications/NotificationsActions/NotificationsActions.js +2 -0
  85. package/__internal__/src/components/Notifications/NotificationsActions/NotificationsActions.js.map +1 -0
  86. package/__internal__/src/components/{NotificationsActions → Notifications/NotificationsActions}/helpers.d.ts +5 -6
  87. package/__internal__/src/components/Notifications/NotificationsActions/helpers.js.map +1 -0
  88. package/__internal__/src/components/Notifications/NotificationsActions/index.js.map +1 -0
  89. package/__internal__/src/components/{NotificationsActions → Notifications/NotificationsActions}/types.d.ts +6 -7
  90. package/__internal__/src/components/Notifications/NotificationsActions/types.js.map +1 -0
  91. package/__internal__/src/components/Notifications/NotificationsItem/NotificationsItem.css +1 -0
  92. package/__internal__/src/components/Notifications/NotificationsItem/NotificationsItem.d.ts +6 -0
  93. package/__internal__/src/components/Notifications/NotificationsItem/NotificationsItem.js +2 -0
  94. package/__internal__/src/components/Notifications/NotificationsItem/NotificationsItem.js.map +1 -0
  95. package/__internal__/src/components/Notifications/NotificationsItem/helpers.js.map +1 -0
  96. package/__internal__/src/components/Notifications/NotificationsItem/index.d.ts +1 -0
  97. package/__internal__/src/components/Notifications/NotificationsItem/index.js +2 -0
  98. package/__internal__/src/components/Notifications/NotificationsItem/index.js.map +1 -0
  99. package/__internal__/src/components/{NotificationCard → Notifications/NotificationsItem}/types.d.ts +7 -8
  100. package/__internal__/src/components/Notifications/NotificationsItem/types.js.map +1 -0
  101. package/__internal__/src/components/Notifications/NotificationsList/NotificationsList.css +1 -0
  102. package/__internal__/src/components/Notifications/NotificationsList/NotificationsList.js +2 -0
  103. package/__internal__/src/components/Notifications/NotificationsList/NotificationsList.js.map +1 -0
  104. package/__internal__/src/components/{NotificationsList → Notifications/NotificationsList}/helpers.d.ts +17 -16
  105. package/__internal__/src/components/Notifications/NotificationsList/helpers.js.map +1 -0
  106. package/__internal__/src/components/Notifications/NotificationsList/index.js.map +1 -0
  107. package/__internal__/src/components/{NotificationsList → Notifications/NotificationsList}/types.d.ts +15 -24
  108. package/__internal__/src/components/Notifications/NotificationsList/types.js.map +1 -0
  109. package/__internal__/src/components/Notifications/index.d.ts +3 -0
  110. package/__internal__/src/components/Notifications/index.js +1 -1
  111. package/__internal__/src/components/Notifications/index.js.map +1 -1
  112. package/__internal__/src/components/Notifications/types.d.ts +4 -3
  113. package/__internal__/src/components/Notifications/types.js.map +1 -1
  114. package/__internal__/src/components/PopoverButton/PopoverButton.css +1 -0
  115. package/__internal__/src/components/PopoverButton/PopoverButton.d.ts +11 -0
  116. package/__internal__/src/components/PopoverButton/PopoverButton.js +2 -0
  117. package/__internal__/src/components/PopoverButton/PopoverButton.js.map +1 -0
  118. package/__internal__/src/components/PopoverButton/index.d.ts +1 -0
  119. package/__internal__/src/components/PopoverButton/index.js +2 -0
  120. package/__internal__/src/components/PopoverButton/index.js.map +1 -0
  121. package/__internal__/src/components/SelectMenu/SelectMenu.js +1 -1
  122. package/__internal__/src/components/SelectMenu/SelectMenu.js.map +1 -1
  123. package/__internal__/src/components/SelectMenu/helpers.d.ts +1 -1
  124. package/__internal__/src/components/SelectMenu/helpers.js.map +1 -1
  125. package/__internal__/src/components/Sidebar/Sidebar.css +1 -1
  126. package/__internal__/src/components/Sidebar/Sidebar.js +1 -1
  127. package/__internal__/src/components/Sidebar/Sidebar.js.map +1 -1
  128. package/__internal__/src/components/TileMenu/TileMenu.js +1 -1
  129. package/__internal__/src/components/TileMenu/TileMenu.js.map +1 -1
  130. package/__internal__/src/components/TileMenu/TileMenuItem/TileMenuItem.css +1 -1
  131. package/__internal__/src/components/TileMenu/TileMenuItem/TileMenuItem.d.ts +2 -10
  132. package/__internal__/src/components/TileMenu/TileMenuItem/TileMenuItem.js +1 -1
  133. package/__internal__/src/components/TileMenu/TileMenuItem/TileMenuItem.js.map +1 -1
  134. package/__internal__/src/components/TileMenu/TileMenuItem/index.d.ts +1 -0
  135. package/__internal__/src/components/TileMenu/TileMenuItem/index.js +2 -0
  136. package/__internal__/src/components/TileMenu/TileMenuItem/index.js.map +1 -0
  137. package/__internal__/src/components/TileMenu/TileMenuItem/types.d.ts +9 -0
  138. package/__internal__/src/components/TileMenu/TileMenuItem/types.js +2 -0
  139. package/__internal__/src/components/TileMenu/TileMenuItem/types.js.map +1 -0
  140. package/__internal__/src/components/TileMenu/TileMenuList/TileMenuList.d.ts +2 -1
  141. package/__internal__/src/components/TileMenu/TileMenuList/TileMenuList.js +1 -1
  142. package/__internal__/src/components/TileMenu/TileMenuList/TileMenuList.js.map +1 -1
  143. package/__internal__/src/components/TileMenu/TileMenuList/helpers.d.ts +18 -0
  144. package/__internal__/src/components/TileMenu/TileMenuList/helpers.js.map +1 -0
  145. package/__internal__/src/components/TileMenu/TileMenuList/index.d.ts +1 -0
  146. package/__internal__/src/components/TileMenu/TileMenuList/index.js +2 -0
  147. package/__internal__/src/components/TileMenu/TileMenuList/index.js.map +1 -0
  148. package/__internal__/src/components/TileMenu/TileMenuList/types.d.ts +30 -21
  149. package/__internal__/src/components/TileMenu/TileMenuList/types.js +1 -1
  150. package/__internal__/src/components/TileMenu/TileMenuList/types.js.map +1 -1
  151. package/__internal__/src/components/TileMenu/index.d.ts +2 -0
  152. package/__internal__/src/components/TileMenu/index.js +1 -1
  153. package/__internal__/src/components/TileMenu/index.js.map +1 -1
  154. package/__internal__/src/components/TileMenu/types.d.ts +7 -42
  155. package/__internal__/src/components/TileMenu/types.js +1 -1
  156. package/__internal__/src/components/TileMenu/types.js.map +1 -1
  157. package/__internal__/src/components/VerticalMenu/VerticalMenu.js +1 -1
  158. package/__internal__/src/components/VerticalMenu/VerticalMenu.js.map +1 -1
  159. package/__internal__/src/components/VerticalMenu/VerticalMenuItem/VerticalMenuItem.js +1 -1
  160. package/__internal__/src/components/VerticalMenu/VerticalMenuItem/VerticalMenuItem.js.map +1 -1
  161. package/__internal__/src/components/VerticalMenu/VerticalMenuLevel/VerticalMenuLevel.js +1 -1
  162. package/__internal__/src/components/VerticalMenu/VerticalMenuLevel/VerticalMenuLevel.js.map +1 -1
  163. package/__internal__/src/components/VerticalMenu/helpers.d.ts +16 -16
  164. package/__internal__/src/components/VerticalMenu/helpers.js.map +1 -1
  165. package/__internal__/src/components/VerticalMenu/types.d.ts +9 -9
  166. package/__internal__/src/components/VerticalMenu/types.js.map +1 -1
  167. package/__internal__/src/docs/start/start.stand.js.map +1 -1
  168. package/__internal__/src/helpers/getItemClick.js.map +1 -1
  169. package/__internal__/src/stand/standPageDecoration.d.ts +2 -0
  170. package/__internal__/src/utils/bem.js.map +1 -1
  171. package/package.json +3 -2
  172. package/Badges/index.d.ts +0 -1
  173. package/Badges/index.js +0 -1
  174. package/BannerBar/index.d.ts +0 -1
  175. package/BannerBar/index.js +0 -1
  176. package/GlobalMenu/index.d.ts +0 -1
  177. package/GlobalMenu/index.js +0 -1
  178. package/Header/index.d.ts +0 -1
  179. package/Header/index.js +0 -1
  180. package/Languages/index.d.ts +0 -1
  181. package/Languages/index.js +0 -1
  182. package/NavBar/index.d.ts +0 -1
  183. package/NavBar/index.js +0 -1
  184. package/NotificationsList/index.d.ts +0 -1
  185. package/NotificationsList/index.js +0 -1
  186. package/__internal__/src/components/Badges/Badges.css +0 -1
  187. package/__internal__/src/components/Badges/Badges.d.ts +0 -5
  188. package/__internal__/src/components/Badges/Badges.js +0 -2
  189. package/__internal__/src/components/Badges/Badges.js.map +0 -1
  190. package/__internal__/src/components/Badges/helpers.d.ts +0 -20
  191. package/__internal__/src/components/Badges/helpers.js +0 -2
  192. package/__internal__/src/components/Badges/helpers.js.map +0 -1
  193. package/__internal__/src/components/Badges/index.d.ts +0 -1
  194. package/__internal__/src/components/Badges/index.js +0 -2
  195. package/__internal__/src/components/Badges/index.js.map +0 -1
  196. package/__internal__/src/components/Badges/types.d.ts +0 -27
  197. package/__internal__/src/components/Badges/types.js.map +0 -1
  198. package/__internal__/src/components/BannerBar/BannerBar.css +0 -1
  199. package/__internal__/src/components/BannerBar/BannerBar.d.ts +0 -3
  200. package/__internal__/src/components/BannerBar/BannerBar.js +0 -2
  201. package/__internal__/src/components/BannerBar/BannerBar.js.map +0 -1
  202. package/__internal__/src/components/BannerBar/BannerBarItem/BannerBarItem.css +0 -1
  203. package/__internal__/src/components/BannerBar/BannerBarItem/BannerBarItem.d.ts +0 -3
  204. package/__internal__/src/components/BannerBar/BannerBarItem/BannerBarItem.js +0 -2
  205. package/__internal__/src/components/BannerBar/BannerBarItem/BannerBarItem.js.map +0 -1
  206. package/__internal__/src/components/BannerBar/BannerBarItem/index.d.ts +0 -1
  207. package/__internal__/src/components/BannerBar/BannerBarItem/index.js +0 -2
  208. package/__internal__/src/components/BannerBar/BannerBarItem/index.js.map +0 -1
  209. package/__internal__/src/components/BannerBar/helpers.js.map +0 -1
  210. package/__internal__/src/components/BannerBar/index.d.ts +0 -3
  211. package/__internal__/src/components/BannerBar/index.js +0 -2
  212. package/__internal__/src/components/BannerBar/index.js.map +0 -1
  213. package/__internal__/src/components/BannerBar/types.d.ts +0 -42
  214. package/__internal__/src/components/BannerBar/types.js.map +0 -1
  215. package/__internal__/src/components/GlobalMenu/GlobalMenu.css +0 -1
  216. package/__internal__/src/components/GlobalMenu/GlobalMenu.d.ts +0 -3
  217. package/__internal__/src/components/GlobalMenu/GlobalMenu.js +0 -2
  218. package/__internal__/src/components/GlobalMenu/GlobalMenu.js.map +0 -1
  219. package/__internal__/src/components/GlobalMenu/GlobalMenuGroup/GlobalMenuGroup.css +0 -1
  220. package/__internal__/src/components/GlobalMenu/GlobalMenuGroup/GlobalMenuGroup.d.ts +0 -3
  221. package/__internal__/src/components/GlobalMenu/GlobalMenuGroup/GlobalMenuGroup.js +0 -2
  222. package/__internal__/src/components/GlobalMenu/GlobalMenuGroup/GlobalMenuGroup.js.map +0 -1
  223. package/__internal__/src/components/GlobalMenu/GlobalMenuGroup/index.d.ts +0 -1
  224. package/__internal__/src/components/GlobalMenu/GlobalMenuGroup/index.js +0 -2
  225. package/__internal__/src/components/GlobalMenu/GlobalMenuGroup/index.js.map +0 -1
  226. package/__internal__/src/components/GlobalMenu/helper.js.map +0 -1
  227. package/__internal__/src/components/GlobalMenu/index.d.ts +0 -2
  228. package/__internal__/src/components/GlobalMenu/index.js +0 -2
  229. package/__internal__/src/components/GlobalMenu/index.js.map +0 -1
  230. package/__internal__/src/components/GlobalMenu/types.d.ts +0 -75
  231. package/__internal__/src/components/GlobalMenu/types.js.map +0 -1
  232. package/__internal__/src/components/Header/Header.css +0 -1
  233. package/__internal__/src/components/Header/Header.d.ts +0 -5
  234. package/__internal__/src/components/Header/Header.js +0 -2
  235. package/__internal__/src/components/Header/Header.js.map +0 -1
  236. package/__internal__/src/components/Header/HeaderLogin/HeaderLogin.d.ts +0 -15
  237. package/__internal__/src/components/Header/HeaderLogin/HeaderLogin.js +0 -2
  238. package/__internal__/src/components/Header/HeaderLogin/HeaderLogin.js.map +0 -1
  239. package/__internal__/src/components/Header/HeaderLogin/index.d.ts +0 -1
  240. package/__internal__/src/components/Header/HeaderLogin/index.js +0 -2
  241. package/__internal__/src/components/Header/HeaderLogin/index.js.map +0 -1
  242. package/__internal__/src/components/Header/HeaderLogo/HeaderLogo.d.ts +0 -9
  243. package/__internal__/src/components/Header/HeaderLogo/HeaderLogo.js +0 -2
  244. package/__internal__/src/components/Header/HeaderLogo/HeaderLogo.js.map +0 -1
  245. package/__internal__/src/components/Header/HeaderLogo/index.d.ts +0 -1
  246. package/__internal__/src/components/Header/HeaderLogo/index.js +0 -2
  247. package/__internal__/src/components/Header/HeaderLogo/index.js.map +0 -1
  248. package/__internal__/src/components/Header/HeaderSearch/HeaderSearch.css +0 -1
  249. package/__internal__/src/components/Header/HeaderSearch/HeaderSearch.d.ts +0 -15
  250. package/__internal__/src/components/Header/HeaderSearch/HeaderSearch.js +0 -2
  251. package/__internal__/src/components/Header/HeaderSearch/HeaderSearch.js.map +0 -1
  252. package/__internal__/src/components/Header/HeaderSearch/index.d.ts +0 -1
  253. package/__internal__/src/components/Header/HeaderSearch/index.js +0 -2
  254. package/__internal__/src/components/Header/HeaderSearch/index.js.map +0 -1
  255. package/__internal__/src/components/Header/helpers.d.ts +0 -9
  256. package/__internal__/src/components/Header/helpers.js +0 -2
  257. package/__internal__/src/components/Header/helpers.js.map +0 -1
  258. package/__internal__/src/components/Header/index.d.ts +0 -1
  259. package/__internal__/src/components/Header/index.js +0 -2
  260. package/__internal__/src/components/Header/index.js.map +0 -1
  261. package/__internal__/src/components/Header/types.d.ts +0 -186
  262. package/__internal__/src/components/Header/types.js.map +0 -1
  263. package/__internal__/src/components/Languages/Languages.d.ts +0 -3
  264. package/__internal__/src/components/Languages/Languages.js +0 -2
  265. package/__internal__/src/components/Languages/Languages.js.map +0 -1
  266. package/__internal__/src/components/Languages/helpers.d.ts +0 -20
  267. package/__internal__/src/components/Languages/helpers.js +0 -2
  268. package/__internal__/src/components/Languages/helpers.js.map +0 -1
  269. package/__internal__/src/components/Languages/index.d.ts +0 -1
  270. package/__internal__/src/components/Languages/index.js +0 -2
  271. package/__internal__/src/components/Languages/index.js.map +0 -1
  272. package/__internal__/src/components/Languages/types.d.ts +0 -23
  273. package/__internal__/src/components/Languages/types.js.map +0 -1
  274. package/__internal__/src/components/NavBar/NavBar.css +0 -1
  275. package/__internal__/src/components/NavBar/NavBar.d.ts +0 -3
  276. package/__internal__/src/components/NavBar/NavBar.js +0 -2
  277. package/__internal__/src/components/NavBar/NavBar.js.map +0 -1
  278. package/__internal__/src/components/NavBar/helper.d.ts +0 -31
  279. package/__internal__/src/components/NavBar/helper.js.map +0 -1
  280. package/__internal__/src/components/NavBar/index.d.ts +0 -1
  281. package/__internal__/src/components/NavBar/index.js +0 -2
  282. package/__internal__/src/components/NavBar/index.js.map +0 -1
  283. package/__internal__/src/components/NavBar/types.d.ts +0 -48
  284. package/__internal__/src/components/NavBar/types.js.map +0 -1
  285. package/__internal__/src/components/NotificationCard/NotificationCard.css +0 -1
  286. package/__internal__/src/components/NotificationCard/NotificationCard.d.ts +0 -6
  287. package/__internal__/src/components/NotificationCard/NotificationCard.js +0 -2
  288. package/__internal__/src/components/NotificationCard/NotificationCard.js.map +0 -1
  289. package/__internal__/src/components/NotificationCard/helpers.js.map +0 -1
  290. package/__internal__/src/components/NotificationCard/index.d.ts +0 -1
  291. package/__internal__/src/components/NotificationCard/index.js +0 -2
  292. package/__internal__/src/components/NotificationCard/index.js.map +0 -1
  293. package/__internal__/src/components/NotificationCard/types.js +0 -2
  294. package/__internal__/src/components/NotificationCard/types.js.map +0 -1
  295. package/__internal__/src/components/NotificationsActions/NotificationsActions.js +0 -2
  296. package/__internal__/src/components/NotificationsActions/NotificationsActions.js.map +0 -1
  297. package/__internal__/src/components/NotificationsActions/helpers.js.map +0 -1
  298. package/__internal__/src/components/NotificationsActions/index.js.map +0 -1
  299. package/__internal__/src/components/NotificationsActions/types.js +0 -2
  300. package/__internal__/src/components/NotificationsActions/types.js.map +0 -1
  301. package/__internal__/src/components/NotificationsList/NotificationsList.css +0 -1
  302. package/__internal__/src/components/NotificationsList/NotificationsList.js +0 -2
  303. package/__internal__/src/components/NotificationsList/NotificationsList.js.map +0 -1
  304. package/__internal__/src/components/NotificationsList/helpers.js.map +0 -1
  305. package/__internal__/src/components/NotificationsList/index.js.map +0 -1
  306. package/__internal__/src/components/NotificationsList/types.js +0 -2
  307. package/__internal__/src/components/NotificationsList/types.js.map +0 -1
  308. package/__internal__/src/components/TileMenu/helpers.d.ts +0 -277
  309. package/__internal__/src/components/TileMenu/helpers.js.map +0 -1
  310. package/__internal__/src/stand/components/RemadeInfo/RemadeInfo.css +0 -1
  311. /package/__internal__/src/components/{BannerBar → MegaMenu/MegaMenuBannerBar}/helpers.js +0 -0
  312. /package/__internal__/src/components/{Badges → MegaMenu/MegaMenuBannerBar}/types.js +0 -0
  313. /package/__internal__/src/components/{GlobalMenu → MegaMenu/MegaMenuGlobal}/helper.js +0 -0
  314. /package/__internal__/src/components/{BannerBar → MegaMenu/MegaMenuGlobal}/types.js +0 -0
  315. /package/__internal__/src/components/{NavBar → MegaMenu/MegaMenuNavBar}/helper.js +0 -0
  316. /package/__internal__/src/components/{GlobalMenu → MegaMenu/MegaMenuNavBar}/types.js +0 -0
  317. /package/__internal__/src/components/{NotificationsActions → Notifications/NotificationsActions}/NotificationsActions.d.ts +0 -0
  318. /package/__internal__/src/components/{NotificationsActions → Notifications/NotificationsActions}/helpers.js +0 -0
  319. /package/__internal__/src/components/{NotificationsActions → Notifications/NotificationsActions}/index.d.ts +0 -0
  320. /package/__internal__/src/components/{NotificationsActions → Notifications/NotificationsActions}/index.js +0 -0
  321. /package/__internal__/src/components/{Header → Notifications/NotificationsActions}/types.js +0 -0
  322. /package/__internal__/src/components/{NotificationCard → Notifications/NotificationsItem}/helpers.d.ts +0 -0
  323. /package/__internal__/src/components/{NotificationCard → Notifications/NotificationsItem}/helpers.js +0 -0
  324. /package/__internal__/src/components/{Languages → Notifications/NotificationsItem}/types.js +0 -0
  325. /package/__internal__/src/components/{NotificationsList → Notifications/NotificationsList}/NotificationsList.d.ts +0 -0
  326. /package/__internal__/src/components/{NotificationsList → Notifications/NotificationsList}/helpers.js +0 -0
  327. /package/__internal__/src/components/{NotificationsList → Notifications/NotificationsList}/index.d.ts +0 -0
  328. /package/__internal__/src/components/{NotificationsList → Notifications/NotificationsList}/index.js +0 -0
  329. /package/__internal__/src/components/{NavBar → Notifications/NotificationsList}/types.js +0 -0
  330. /package/__internal__/src/components/TileMenu/{helpers.js → TileMenuList/helpers.js} +0 -0
@@ -0,0 +1 @@
1
+ export * from "../__internal__/src/components/PopoverButton";
@@ -0,0 +1 @@
1
+ export * from "../__internal__/src/components/PopoverButton";
package/README.md CHANGED
@@ -15,7 +15,7 @@ $ yarn add @consta/header
15
15
 
16
16
  ## Подключите зависимости
17
17
 
18
- Чтобы начать работу, установите библиотеку [`@consta/uikit`](https://www.npmjs.com/package/@consta/uikit) и [настройте тему](http://portal.consta.design/libs/portal/theme-themeabout).
18
+ Чтобы начать работу, установите библиотеку [`@consta/uikit`](https://www.npmjs.com/package/@consta/uikit) и [настройте тему](http://consta.design/libs/portal/theme-themeabout).
19
19
 
20
20
  ### Можно использовать компоненты
21
21
 
@@ -33,11 +33,15 @@ const App = () => {
33
33
  };
34
34
  ```
35
35
 
36
+ ## Документация
37
+
38
+ [Посмотреть документацию и примеры](http://consta.design/libs/header)
39
+
36
40
  ## Разработка
37
41
 
38
42
  ### Подготовка окружения
39
43
 
40
- Рабочее окружение должно содержать NodeJS и Yarn, необходимые версии можно узнать в файле [package.json](./package.json) в блоке **engines**.
44
+ Рабочее окружение должно содержать NodeJS и Yarn.
41
45
 
42
46
  Чтобы установить зависимости, выполните команду:
43
47
 
@@ -48,27 +52,22 @@ $ yarn install
48
52
  ### Основные команды
49
53
 
50
54
  ```sh
51
- # Сборка и старт
55
+ # Запуск локального сервера для разработки
52
56
  $ yarn start
53
- # Сборка для production
57
+
58
+ # Сборка пакета
54
59
  $ yarn build
55
- # Линтинг всех файлов
56
- $ yarn lint
57
- # Форматирование всех файлов prettier
58
- $ yarn format
59
- # Запуск юнит-тестов
60
- $ yarn unit
61
- # Запуск юнит-тестов, тестирование TS, линтинг файлов
62
- $ yarn test
63
- ```
64
60
 
65
- ## Документация
61
+ # Сборка стенда
62
+ $ yarn stand:build
66
63
 
67
- [Посмотреть документацию и примеры](http://header.consta.design/)
64
+ # Запуск тестов
65
+ $ yarn test
66
+ ```
68
67
 
69
68
  ## Контрибьюторам
70
69
 
71
- Будем рады, если вы захотите принять участие в разработке дизайн-системы =) Но сначала прочитайте [инструкцию для контрибьюторов](http://portal.consta.design/libs/portal/custom-contribute).
70
+ Будем рады, если вы захотите принять участие в разработке дизайн-системы =) Но сначала прочитайте [инструкцию для контрибьюторов](https://consta.design/libs/portal/contributers-code).
72
71
 
73
72
  ## Лицензия
74
73
 
@@ -1 +1 @@
1
- {"version":3,"file":"common.d.js","names":[],"sources":["../../../src/common.d.ts"],"sourcesContent":["declare module '*.docs.mdx' {\n const MDXComponent: (props: any) => JSX.Element;\n\n export default MDXComponent;\n}\n\ndeclare module '*.stand.mdx' {\n const MDXComponent: (props: any) => JSX.Element;\n\n export default MDXComponent;\n}\n\ndeclare module '*.jpeg' {\n const content: string;\n\n export default content;\n}\n\ndeclare module '*.jpg' {\n const content: string;\n\n export default content;\n}\n\ndeclare module '*.png' {\n const content: string;\n export default content;\n}\n\ndeclare module '*.image.svg' {\n import * as React from 'react';\n\n export const ReactComponent: React.FunctionComponent<\n React.SVGProps<SVGSVGElement>\n >;\n\n const src: React.FunctionComponent<React.SVGProps<SVGSVGElement>>;\n export default src;\n}\n\ndeclare module '*.icon.svg' {\n import { IconProps } from '@consta/uikit/Icon';\n\n export const ReactComponent: React.FC<IconProps>;\n\n const src: React.FC<IconProps>;\n export default src;\n}\n"],"mappings":""}
1
+ {"version":3,"file":"common.d.js","names":[],"sources":["../../../src/common.d.ts"],"sourcesContent":["declare module '*.docs.mdx' {\n const MDXComponent: (props: any) => JSX.Element;\n\n export default MDXComponent;\n}\n\ndeclare module '*.stand.mdx' {\n const MDXComponent: (props: any) => JSX.Element;\n\n export default MDXComponent;\n}\n\ndeclare module '*.jpeg' {\n const content: string;\n\n export default content;\n}\n\ndeclare module '*.jpg' {\n const content: string;\n\n export default content;\n}\n\ndeclare module '*.png' {\n const content: string;\n export default content;\n}\n\ndeclare module '*.image.svg' {\n import * as React from 'react';\n\n export const ReactComponent: React.FunctionComponent<\n React.SVGProps<SVGSVGElement>\n >;\n\n const src: React.FunctionComponent<React.SVGProps<SVGSVGElement>>;\n export default src;\n}\n\ndeclare module '*.icon.svg' {\n import { IconProps } from '@consta/icons/Icon';\n\n export const ReactComponent: React.FC<IconProps>;\n\n const src: React.FC<IconProps>;\n export default src;\n}\n"],"mappings":""}
@@ -1 +1 @@
1
- .che--ButtonMenu{display:flex;gap:var(--button-menu-gap)}
1
+ .che--ButtonMenu{display:flex;gap:var(--button-menu-gap)}.che--ButtonMenu_size_l{--button-menu-gap:var(--space-m)}.che--ButtonMenu_size_m{--button-menu-gap:var(--space-s)}.che--ButtonMenu_size_s{--button-menu-gap:var(--space-xs)}.che--ButtonMenu_size_xs{--button-menu-gap:var(--space-2xs)}
@@ -1,2 +1,2 @@
1
- import _defineProperty from"@babel/runtime/helpers/defineProperty";import _objectWithoutProperties from"@babel/runtime/helpers/objectWithoutProperties";const _excluded=["items","className","getItemHref","getItemLabel","getItemOnClick","getItemTarget","onItemClick","getItemIcon","form","size","view","onlyIcon","style"];function ownKeys(a,b){var c=Object.keys(a);if(Object.getOwnPropertySymbols){var d=Object.getOwnPropertySymbols(a);b&&(d=d.filter(function(b){return Object.getOwnPropertyDescriptor(a,b).enumerable})),c.push.apply(c,d)}return c}function _objectSpread(a){for(var b,c=1;c<arguments.length;c++)b=null==arguments[c]?{}:arguments[c],c%2?ownKeys(Object(b),!0).forEach(function(c){_defineProperty(a,c,b[c])}):Object.getOwnPropertyDescriptors?Object.defineProperties(a,Object.getOwnPropertyDescriptors(b)):ownKeys(Object(b)).forEach(function(c){Object.defineProperty(a,c,Object.getOwnPropertyDescriptor(b,c))});return a}import"./ButtonMenu.css";import{Button,buttonPropSizeDefault}from"@consta/uikit/Button";import React,{forwardRef}from"react";import{getItemClick}from"../../helpers/getItemClick";import{cn}from"../../utils/bem";import{withDefaultGetters}from"./helpers";export const cnButtonMenu=cn("ButtonMenu");const gapMap={xs:"2xs",s:"xs",m:"s",l:"m"},ButtonMenuRender=(a,b)=>{const c=withDefaultGetters(a),{items:d,className:e,getItemHref:f,getItemLabel:g,getItemOnClick:h,getItemTarget:i,onItemClick:j,getItemIcon:k,form:l,size:p=buttonPropSizeDefault,view:m,onlyIcon:n,style:o}=c,q=_objectWithoutProperties(c,_excluded);return React.createElement("div",Object.assign({},q,{className:cnButtonMenu(null,[e]),ref:b,style:_objectSpread(_objectSpread({},o),{},{"--button-menu-gap":`var(--space-${gapMap[p]})`})}),d.map((a,b)=>{const c=i(a),d=f(a);return React.createElement(Button,Object.assign({},(c||d)&&{as:"a",target:c,href:d},{key:b,form:l,size:p,view:m,onlyIcon:n,iconLeft:k(a),label:g(a),onClick:getItemClick(a,h,j)}))}))};export const ButtonMenu=forwardRef(ButtonMenuRender);export*from"./types";
1
+ import _objectWithoutProperties from"@babel/runtime/helpers/objectWithoutProperties";const _excluded=["items","className","getItemHref","getItemLabel","getItemOnClick","getItemTarget","onItemClick","getItemIcon","form","size","view","onlyIcon"];import"./ButtonMenu.css";import{Button,buttonPropSizeDefault}from"@consta/uikit/Button";import React,{forwardRef}from"react";import{getItemClick}from"../../helpers/getItemClick";import{cn}from"../../utils/bem";import{withDefaultGetters}from"./helpers";export const cnButtonMenu=cn("ButtonMenu");const ButtonMenuRender=(a,b)=>{const c=withDefaultGetters(a),{items:d,className:e,getItemHref:f,getItemLabel:g,getItemOnClick:h,getItemTarget:i,onItemClick:j,getItemIcon:k,form:l,size:o=buttonPropSizeDefault,view:m,onlyIcon:n}=c,p=_objectWithoutProperties(c,_excluded);return React.createElement("div",Object.assign({className:cnButtonMenu({size:o},[e]),ref:b},p),d.map((a,b)=>{const c=i(a),d=f(a);return React.createElement(Button,Object.assign({},(c||d)&&{as:"a",target:c,href:d},{key:b,form:l,size:o,view:m,onlyIcon:n,iconLeft:k(a),label:g(a),onClick:getItemClick(a,h,j)}))}))};export const ButtonMenu=forwardRef(ButtonMenuRender);export*from"./types";
2
2
  //# sourceMappingURL=ButtonMenu.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"ButtonMenu.js","names":["Button","buttonPropSizeDefault","React","forwardRef","getItemClick","cn","withDefaultGetters","cnButtonMenu","gapMap","xs","s","m","l","ButtonMenuRender","props","ref","items","className","getItemHref","getItemLabel","getItemOnClick","getItemTarget","onItemClick","getItemIcon","form","size","view","onlyIcon","style","otherProps","map","item","index","target","href","as","ButtonMenu"],"sources":["../../../../../src/components/ButtonMenu/ButtonMenu.tsx"],"sourcesContent":["import './ButtonMenu.css';\n\nimport { Button, buttonPropSizeDefault } from '@consta/uikit/Button';\nimport React, { forwardRef } from 'react';\n\nimport { getItemClick } from '##/helpers/getItemClick';\nimport { cn } from '##/utils/bem';\n\nimport { withDefaultGetters } from './helpers';\nimport { ButtonMenuComponent, ButtonMenuProps } from './types';\n\nexport const cnButtonMenu = cn('ButtonMenu');\n\nconst gapMap = {\n xs: '2xs',\n s: 'xs',\n m: 's',\n l: 'm',\n} as const;\n\nconst ButtonMenuRender = (\n props: ButtonMenuProps,\n ref: React.Ref<HTMLDivElement>,\n) => {\n const {\n items,\n className,\n getItemHref,\n getItemLabel,\n getItemOnClick,\n getItemTarget,\n onItemClick,\n getItemIcon,\n form,\n size = buttonPropSizeDefault,\n view,\n onlyIcon,\n style,\n ...otherProps\n } = withDefaultGetters(props);\n\n return (\n <div\n {...otherProps}\n className={cnButtonMenu(null, [className])}\n ref={ref}\n style={{\n ...style,\n ['--button-menu-gap' as string]: `var(--space-${gapMap[size]})`,\n }}\n >\n {items.map((item, index) => {\n const target = getItemTarget(item);\n const href = getItemHref(item);\n\n const linkProps =\n (target || href) &&\n ({\n as: 'a',\n target,\n href,\n } as const);\n\n return (\n <Button\n {...linkProps}\n key={index}\n form={form}\n size={size}\n view={view}\n onlyIcon={onlyIcon}\n iconLeft={getItemIcon(item)}\n label={getItemLabel(item)}\n onClick={getItemClick(item, getItemOnClick, onItemClick)}\n />\n );\n })}\n </div>\n );\n};\n\nexport const ButtonMenu = forwardRef(ButtonMenuRender) as ButtonMenuComponent;\n\nexport * from './types';\n"],"mappings":"k6BAAA,yBAEA,OAASA,MAAM,CAAEC,qBAAqB,KAAQ,sBAAsB,CACpE,MAAOC,MAAK,EAAIC,UAAU,KAAQ,OAAO,CAEzC,OAASC,YAAY,kCACrB,OAASC,EAAE,uBAEX,OAASC,kBAAkB,iBAG3B,MAAO,MAAMC,aAAY,CAAGF,EAAE,CAAC,YAAY,CAAC,CAAC,KAEvCG,OAAM,CAAG,CACbC,EAAE,CAAE,KAAK,CACTC,CAAC,CAAE,IAAI,CACPC,CAAC,CAAE,GAAG,CACNC,CAAC,CAAE,GACL,CAAU,CAEJC,gBAAgB,CAAG,CACvBC,CAAsB,CACtBC,CAA8B,GAC3B,CACH,QAeIT,kBAAkB,CAACQ,CAAK,CAAC,CAfvB,CACJE,KAAK,CAALA,CAAK,CACLC,SAAS,CAATA,CAAS,CACTC,WAAW,CAAXA,CAAW,CACXC,YAAY,CAAZA,CAAY,CACZC,cAAc,CAAdA,CAAc,CACdC,aAAa,CAAbA,CAAa,CACbC,WAAW,CAAXA,CAAW,CACXC,WAAW,CAAXA,CAAW,CACXC,IAAI,CAAJA,CAAI,CACJC,IAAI,CAAJA,CAAI,CAAGxB,qBAAqB,CAC5ByB,IAAI,CAAJA,CAAI,CACJC,QAAQ,CAARA,CAAQ,CACRC,KAAK,CAALA,CAEF,CAAC,GADIC,CAAU,uCAGf,MACE,4CACMA,CAAU,EACd,SAAS,CAAEtB,YAAY,CAAC,IAAI,CAAE,CAACU,CAAS,CAAC,CAAE,CAC3C,GAAG,CAAEF,CAAI,CACT,KAAK,gCACAa,CAAK,MACR,oBAAkC,eAAcpB,MAAM,CAACiB,CAAI,CAAE,GAAE,EAC/D,GAEDT,CAAK,CAACc,GAAG,CAAC,CAACC,CAAI,CAAEC,CAAK,GAAK,MACpBC,EAAM,CAAGZ,CAAa,CAACU,CAAI,CAAC,CAC5BG,CAAI,CAAGhB,CAAW,CAACa,CAAI,CAAC,CAU9B,MACE,qBAAC,MAAM,kBARP,CAACE,CAAM,EAAIC,CAAI,GACd,CACCC,EAAE,CAAE,GAAG,CACPF,MAAM,CAANA,CAAM,CACNC,IAAI,CAAJA,CACF,CAAW,EAKT,GAAG,CAAEF,CAAM,CACX,IAAI,CAAER,CAAK,CACX,IAAI,CAAEC,CAAK,CACX,IAAI,CAAEC,CAAK,CACX,QAAQ,CAAEC,CAAS,CACnB,QAAQ,CAAEJ,CAAW,CAACQ,CAAI,CAAE,CAC5B,KAAK,CAAEZ,CAAY,CAACY,CAAI,CAAE,CAC1B,OAAO,CAAE3B,YAAY,CAAC2B,CAAI,CAAEX,CAAc,CAAEE,CAAW,CAAE,GAG/D,CAAC,CAAC,CAGR,CAAC,CAED,MAAO,MAAMc,WAAU,CAAGjC,UAAU,CAACU,gBAAgB,CAAwB,CAE7E"}
1
+ {"version":3,"file":"ButtonMenu.js","names":["Button","buttonPropSizeDefault","React","forwardRef","getItemClick","cn","withDefaultGetters","cnButtonMenu","ButtonMenuRender","props","ref","c","items","className","getItemHref","getItemLabel","getItemOnClick","getItemTarget","onItemClick","getItemIcon","form","size","view","onlyIcon","otherProps","_objectWithoutProperties","_excluded","createElement","Object","assign","map","item","index","target","href","as","key","iconLeft","label","onClick","ButtonMenu"],"sources":["../../../../../src/components/ButtonMenu/ButtonMenu.tsx"],"sourcesContent":["import './ButtonMenu.css';\n\nimport { Button, buttonPropSizeDefault } from '@consta/uikit/Button';\nimport React, { forwardRef } from 'react';\n\nimport { getItemClick } from '##/helpers/getItemClick';\nimport { cn } from '##/utils/bem';\n\nimport { withDefaultGetters } from './helpers';\nimport { ButtonMenuComponent, ButtonMenuProps } from './types';\n\nexport const cnButtonMenu = cn('ButtonMenu');\n\nconst ButtonMenuRender = (\n props: ButtonMenuProps,\n ref: React.Ref<HTMLDivElement>,\n) => {\n const {\n items,\n className,\n getItemHref,\n getItemLabel,\n getItemOnClick,\n getItemTarget,\n onItemClick,\n getItemIcon,\n form,\n size = buttonPropSizeDefault,\n view,\n onlyIcon,\n ...otherProps\n } = withDefaultGetters(props);\n\n return (\n <div\n className={cnButtonMenu({ size }, [className])}\n ref={ref}\n {...otherProps}\n >\n {items.map((item, index) => {\n const target = getItemTarget(item);\n const href = getItemHref(item);\n\n const linkProps =\n (target || href) &&\n ({\n as: 'a',\n target,\n href,\n } as const);\n\n return (\n <Button\n {...linkProps}\n key={index}\n form={form}\n size={size}\n view={view}\n onlyIcon={onlyIcon}\n iconLeft={getItemIcon(item)}\n label={getItemLabel(item)}\n onClick={getItemClick(item, getItemOnClick, onItemClick)}\n />\n );\n })}\n </div>\n );\n};\n\nexport const ButtonMenu = forwardRef(ButtonMenuRender) as ButtonMenuComponent;\n\nexport * from './types';\n"],"mappings":"qPAAA,yBAEA,OAASA,MAAM,CAAEC,qBAAqB,KAAQ,sBAAsB,CACpE,MAAO,CAAAC,KAAK,EAAIC,UAAU,KAAQ,OAAO,CAEzC,OAASC,YAAY,kCACrB,OAASC,EAAE,uBAEX,OAASC,kBAAkB,iBAG3B,MAAO,MAAM,CAAAC,YAAY,CAAGF,EAAE,CAAC,YAAY,CAAC,CAE5C,KAAM,CAAAG,gBAAgB,CAAGA,CACvBC,CAAsB,CACtBC,CAA8B,GAC3B,CACH,MAAAC,CAAA,CAcIL,kBAAkB,CAACG,CAAK,CAAC,CAdvB,CACJG,KAAK,CAALA,CAAK,CACLC,SAAS,CAATA,CAAS,CACTC,WAAW,CAAXA,CAAW,CACXC,YAAY,CAAZA,CAAY,CACZC,cAAc,CAAdA,CAAc,CACdC,aAAa,CAAbA,CAAa,CACbC,WAAW,CAAXA,CAAW,CACXC,WAAW,CAAXA,CAAW,CACXC,IAAI,CAAJA,CAAI,CACJC,IAAI,CAAJA,CAAI,CAAGpB,qBAAqB,CAC5BqB,IAAI,CAAJA,CAAI,CACJC,QAAQ,CAARA,CAEF,CAAC,CAAAZ,CAAA,CADIa,CAAU,CAAAC,wBAAA,CAAAd,CAAA,CAAAe,SAAA,EAGf,MACE,CAAAxB,KAAA,CAAAyB,aAAA,OAAAC,MAAA,CAAAC,MAAA,EACEhB,SAAS,CAAEN,YAAY,CAAC,CAAEc,IAAI,CAAJA,CAAK,CAAC,CAAE,CAACR,CAAS,CAAC,CAAE,CAC/CH,GAAG,CAAEA,CAAI,EACLc,CAAU,EAEbZ,CAAK,CAACkB,GAAG,CAAC,CAACC,CAAI,CAAEC,CAAK,GAAK,MACpB,CAAAC,CAAM,CAAGhB,CAAa,CAACc,CAAI,CAAC,CAC5BG,CAAI,CAAGpB,CAAW,CAACiB,CAAI,CAAC,CAU9B,MACE,CAAA7B,KAAA,CAAAyB,aAAA,CAAC3B,MAAM,CAAA4B,MAAA,CAAAC,MAAA,IARP,CAACI,CAAM,EAAIC,CAAI,GACd,CACCC,EAAE,CAAE,GAAG,CACPF,MAAM,CAANA,CAAM,CACNC,IAAI,CAAJA,CACF,CAAW,EAKTE,GAAG,CAAEJ,CAAM,CACXZ,IAAI,CAAEA,CAAK,CACXC,IAAI,CAAEA,CAAK,CACXC,IAAI,CAAEA,CAAK,CACXC,QAAQ,CAAEA,CAAS,CACnBc,QAAQ,CAAElB,CAAW,CAACY,CAAI,CAAE,CAC5BO,KAAK,CAAEvB,CAAY,CAACgB,CAAI,CAAE,CAC1BQ,OAAO,CAAEnC,YAAY,CAAC2B,CAAI,CAAEf,CAAc,CAAEE,CAAW,CAAE,EAC1D,CAEL,CAAC,CACE,CAET,CAAC,CAED,MAAO,MAAM,CAAAsB,UAAU,CAAGrC,UAAU,CAACK,gBAAgB,CAAwB,CAE7E"}
@@ -26,11 +26,11 @@ export declare function withDefaultGetters<ITEM>(props: ButtonMenuProps<ITEM>):
26
26
  getItemTarget?: ButtonMenuPropGetItemTarget<ITEM> | undefined;
27
27
  getItemOnClick?: ButtonMenuPropGetItemOnClick<ITEM> | undefined;
28
28
  getItemIcon?: ButtonMenuPropGetItemIcon<ITEM> | undefined;
29
- form?: "default" | "round" | "brick" | "brickRound" | "roundBrick" | "brickDefault" | "defaultBrick" | undefined;
29
+ form?: "default" | "brick" | "round" | "brickRound" | "roundBrick" | "brickDefault" | "defaultBrick" | undefined;
30
30
  size?: "m" | "xs" | "s" | "l" | undefined;
31
- view?: "primary" | "ghost" | "secondary" | "clear" | undefined;
31
+ view?: "primary" | "clear" | "ghost" | "secondary" | undefined;
32
32
  onlyIcon?: boolean | undefined;
33
- } & Omit<import("react").HTMLAttributes<HTMLDivElement>, "css" | "view" | "size" | "items" | "form" | "getItemLabel" | "getItemIcon" | "getItemOnClick" | "onItemClick" | "onlyIcon" | "getItemHref" | "getItemTarget"> & import("react").RefAttributes<HTMLDivElement> & (ITEM extends {
33
+ } & Omit<import("react").HTMLAttributes<HTMLDivElement>, "css" | "items" | "onItemClick" | "getItemHref" | "getItemLabel" | "getItemTarget" | "getItemOnClick" | "getItemIcon" | "form" | "size" | "view" | "onlyIcon"> & import("react").RefAttributes<HTMLDivElement> & (ITEM extends {
34
34
  label: string;
35
35
  } ? {} : {
36
36
  getItemLabel: ButtonMenuPropGetItemLabel<ITEM>;
@@ -1 +1 @@
1
- {"version":3,"file":"helpers.js","names":["defaultGetItemLabel","item","label","defaultGetItemHref","href","defaultGetItemOnClick","onClick","defaultGetItemTarget","target","defaultGetItemIcon","icon","getGetters","props","getItemLabel","getItemHref","getItemOnClick","getItemTarget","getItemIcon","withDefaultGetters"],"sources":["../../../../../src/components/ButtonMenu/helpers.ts"],"sourcesContent":["import {\n ButtonMenuDefaultItem,\n ButtonMenuPropGetItemHref,\n ButtonMenuPropGetItemIcon,\n ButtonMenuPropGetItemLabel,\n ButtonMenuPropGetItemOnClick,\n ButtonMenuPropGetItemTarget,\n ButtonMenuProps,\n} from './types';\n\nexport const defaultGetItemLabel: ButtonMenuPropGetItemLabel<\n ButtonMenuDefaultItem\n> = (item) => item.label;\nexport const defaultGetItemHref: ButtonMenuPropGetItemHref<\n ButtonMenuDefaultItem\n> = (item) => item.href;\nexport const defaultGetItemOnClick: ButtonMenuPropGetItemOnClick<\n ButtonMenuDefaultItem\n> = (item) => item.onClick;\nexport const defaultGetItemTarget: ButtonMenuPropGetItemTarget<\n ButtonMenuDefaultItem\n> = (item) => item.target;\nexport const defaultGetItemIcon: ButtonMenuPropGetItemIcon<\n ButtonMenuDefaultItem\n> = (item) => item.icon;\n\nexport const getGetters = <ITEM>(props: {\n getItemLabel?: ButtonMenuPropGetItemLabel<ITEM>;\n getItemHref?: ButtonMenuPropGetItemHref<ITEM>;\n getItemOnClick?: ButtonMenuPropGetItemOnClick<ITEM>;\n getItemTarget?: ButtonMenuPropGetItemTarget<ITEM>;\n getItemIcon?: ButtonMenuPropGetItemIcon<ITEM>;\n}) => {\n return {\n getItemLabel: props.getItemLabel || defaultGetItemLabel,\n getItemHref: props.getItemHref || defaultGetItemHref,\n getItemOnClick: props.getItemOnClick || defaultGetItemOnClick,\n getItemTarget: props.getItemTarget || defaultGetItemTarget,\n getItemIcon: props.getItemIcon || defaultGetItemIcon,\n };\n};\n\nexport function withDefaultGetters<ITEM>(props: ButtonMenuProps<ITEM>) {\n return {\n ...props,\n ...getGetters(props),\n };\n}\n"],"mappings":"qqBAUA,MAAO,MAAMA,oBAEZ,CAAIC,CAAI,EAAKA,CAAI,CAACC,KAAK,CACxB,MAAO,MAAMC,mBAEZ,CAAIF,CAAI,EAAKA,CAAI,CAACG,IAAI,CACvB,MAAO,MAAMC,sBAEZ,CAAIJ,CAAI,EAAKA,CAAI,CAACK,OAAO,CAC1B,MAAO,MAAMC,qBAEZ,CAAIN,CAAI,EAAKA,CAAI,CAACO,MAAM,CACzB,MAAO,MAAMC,mBAEZ,CAAIR,CAAI,EAAKA,CAAI,CAACS,IAAI,CAEvB,MAAO,MAAMC,WAAU,CAAUC,CAMhC,GACQ,CACLC,YAAY,CAAED,CAAK,CAACC,YAAY,EAAIb,mBAAmB,CACvDc,WAAW,CAAEF,CAAK,CAACE,WAAW,EAAIX,kBAAkB,CACpDY,cAAc,CAAEH,CAAK,CAACG,cAAc,EAAIV,qBAAqB,CAC7DW,aAAa,CAAEJ,CAAK,CAACI,aAAa,EAAIT,oBAAoB,CAC1DU,WAAW,CAAEL,CAAK,CAACK,WAAW,EAAIR,kBACpC,CAAC,CACF,CAED,MAAO,SAASS,mBAAkB,CAAON,CAA4B,CAAE,CACrE,sCACKA,CAAK,EACLD,UAAU,CAACC,CAAK,CAAC,CAExB"}
1
+ {"version":3,"file":"helpers.js","names":["defaultGetItemLabel","item","label","defaultGetItemHref","href","defaultGetItemOnClick","onClick","defaultGetItemTarget","target","defaultGetItemIcon","icon","getGetters","props","getItemLabel","getItemHref","getItemOnClick","getItemTarget","getItemIcon","withDefaultGetters","_objectSpread"],"sources":["../../../../../src/components/ButtonMenu/helpers.ts"],"sourcesContent":["import {\n ButtonMenuDefaultItem,\n ButtonMenuPropGetItemHref,\n ButtonMenuPropGetItemIcon,\n ButtonMenuPropGetItemLabel,\n ButtonMenuPropGetItemOnClick,\n ButtonMenuPropGetItemTarget,\n ButtonMenuProps,\n} from './types';\n\nexport const defaultGetItemLabel: ButtonMenuPropGetItemLabel<\n ButtonMenuDefaultItem\n> = (item) => item.label;\nexport const defaultGetItemHref: ButtonMenuPropGetItemHref<\n ButtonMenuDefaultItem\n> = (item) => item.href;\nexport const defaultGetItemOnClick: ButtonMenuPropGetItemOnClick<\n ButtonMenuDefaultItem\n> = (item) => item.onClick;\nexport const defaultGetItemTarget: ButtonMenuPropGetItemTarget<\n ButtonMenuDefaultItem\n> = (item) => item.target;\nexport const defaultGetItemIcon: ButtonMenuPropGetItemIcon<\n ButtonMenuDefaultItem\n> = (item) => item.icon;\n\nexport const getGetters = <ITEM>(props: {\n getItemLabel?: ButtonMenuPropGetItemLabel<ITEM>;\n getItemHref?: ButtonMenuPropGetItemHref<ITEM>;\n getItemOnClick?: ButtonMenuPropGetItemOnClick<ITEM>;\n getItemTarget?: ButtonMenuPropGetItemTarget<ITEM>;\n getItemIcon?: ButtonMenuPropGetItemIcon<ITEM>;\n}) => {\n return {\n getItemLabel: props.getItemLabel || defaultGetItemLabel,\n getItemHref: props.getItemHref || defaultGetItemHref,\n getItemOnClick: props.getItemOnClick || defaultGetItemOnClick,\n getItemTarget: props.getItemTarget || defaultGetItemTarget,\n getItemIcon: props.getItemIcon || defaultGetItemIcon,\n };\n};\n\nexport function withDefaultGetters<ITEM>(props: ButtonMenuProps<ITEM>) {\n return {\n ...props,\n ...getGetters(props),\n };\n}\n"],"mappings":"qqBAUA,MAAO,MAAM,CAAAA,mBAEZ,CAAIC,CAAI,EAAKA,CAAI,CAACC,KAAK,CACxB,MAAO,MAAM,CAAAC,kBAEZ,CAAIF,CAAI,EAAKA,CAAI,CAACG,IAAI,CACvB,MAAO,MAAM,CAAAC,qBAEZ,CAAIJ,CAAI,EAAKA,CAAI,CAACK,OAAO,CAC1B,MAAO,MAAM,CAAAC,oBAEZ,CAAIN,CAAI,EAAKA,CAAI,CAACO,MAAM,CACzB,MAAO,MAAM,CAAAC,kBAEZ,CAAIR,CAAI,EAAKA,CAAI,CAACS,IAAI,CAEvB,MAAO,MAAM,CAAAC,UAAU,CAAUC,CAMhC,GACQ,CACLC,YAAY,CAAED,CAAK,CAACC,YAAY,EAAIb,mBAAmB,CACvDc,WAAW,CAAEF,CAAK,CAACE,WAAW,EAAIX,kBAAkB,CACpDY,cAAc,CAAEH,CAAK,CAACG,cAAc,EAAIV,qBAAqB,CAC7DW,aAAa,CAAEJ,CAAK,CAACI,aAAa,EAAIT,oBAAoB,CAC1DU,WAAW,CAAEL,CAAK,CAACK,WAAW,EAAIR,kBACpC,CAAC,CACF,CAED,MAAO,SAAS,CAAAS,kBAAkBA,CAAON,CAA4B,CAAE,CACrE,OAAAO,aAAA,CAAAA,aAAA,IACKP,CAAK,EACLD,UAAU,CAACC,CAAK,CAAC,CAExB"}
@@ -1,6 +1,6 @@
1
1
  /// <reference types="react" />
2
+ import { IconComponent } from '@consta/icons/Icon';
2
3
  import { ButtonPropForm, ButtonPropSize, ButtonPropView } from '@consta/uikit/Button';
3
- import { IconComponent } from '@consta/uikit/Icon';
4
4
  import { PropsWithHTMLAttributesAndRef } from "../../utils/types/PropsWithHTMLAttributes";
5
5
  export type ButtonMenuDefaultItem = {
6
6
  label: string;
@@ -1 +1 @@
1
- {"version":3,"file":"types.js","names":[],"sources":["../../../../../src/components/ButtonMenu/types.ts"],"sourcesContent":["import {\n ButtonPropForm,\n ButtonPropSize,\n ButtonPropView,\n} from '@consta/uikit/Button';\nimport { IconComponent } from '@consta/uikit/Icon';\n\nimport { PropsWithHTMLAttributesAndRef } from '##/utils/types/PropsWithHTMLAttributes';\n\nexport type ButtonMenuDefaultItem = {\n label: string;\n href?: string;\n target?: string;\n icon?: IconComponent;\n onClick?: React.EventHandler<React.MouseEvent>;\n};\n\nexport type ButtonMenuPropGetItemLabel<ITEM> = (item: ITEM) => string;\nexport type ButtonMenuPropGetItemHref<ITEM> = (\n item: ITEM,\n) => string | undefined;\nexport type ButtonMenuPropGetItemTarget<ITEM> = (\n item: ITEM,\n) => string | undefined;\nexport type ButtonMenuPropGetItemIcon<ITEM> = (\n item: ITEM,\n) => IconComponent | undefined;\nexport type ButtonMenuPropGetItemOnClick<ITEM> = (\n item: ITEM,\n) => React.EventHandler<React.MouseEvent> | undefined;\nexport type ButtonMenuPropOnItemClick<ITEM> = (props: {\n e: React.MouseEvent;\n item: ITEM;\n}) => void;\n\nexport type ButtonMenuProps<ITEM = ButtonMenuDefaultItem> =\n PropsWithHTMLAttributesAndRef<\n {\n items: ITEM[];\n onItemClick?: ButtonMenuPropOnItemClick<ITEM>;\n getItemHref?: ButtonMenuPropGetItemHref<ITEM>;\n getItemLabel?: ButtonMenuPropGetItemLabel<ITEM>;\n getItemTarget?: ButtonMenuPropGetItemTarget<ITEM>;\n getItemOnClick?: ButtonMenuPropGetItemOnClick<ITEM>;\n getItemIcon?: ButtonMenuPropGetItemIcon<ITEM>;\n form?: ButtonPropForm;\n size?: ButtonPropSize;\n view?: ButtonPropView;\n onlyIcon?: boolean;\n },\n HTMLDivElement\n > &\n (ITEM extends { label: ButtonMenuDefaultItem['label'] }\n ? {}\n : { getItemLabel: ButtonMenuPropGetItemLabel<ITEM> });\n\nexport type ButtonMenuComponent = <ITEM = ButtonMenuDefaultItem>(\n props: ButtonMenuProps<ITEM>,\n) => React.ReactElement | null;\n"],"mappings":""}
1
+ {"version":3,"file":"types.js","names":[],"sources":["../../../../../src/components/ButtonMenu/types.ts"],"sourcesContent":["import { IconComponent } from '@consta/icons/Icon';\nimport {\n ButtonPropForm,\n ButtonPropSize,\n ButtonPropView,\n} from '@consta/uikit/Button';\n\nimport { PropsWithHTMLAttributesAndRef } from '##/utils/types/PropsWithHTMLAttributes';\n\nexport type ButtonMenuDefaultItem = {\n label: string;\n href?: string;\n target?: string;\n icon?: IconComponent;\n onClick?: React.EventHandler<React.MouseEvent>;\n};\n\nexport type ButtonMenuPropGetItemLabel<ITEM> = (item: ITEM) => string;\nexport type ButtonMenuPropGetItemHref<ITEM> = (\n item: ITEM,\n) => string | undefined;\nexport type ButtonMenuPropGetItemTarget<ITEM> = (\n item: ITEM,\n) => string | undefined;\nexport type ButtonMenuPropGetItemIcon<ITEM> = (\n item: ITEM,\n) => IconComponent | undefined;\nexport type ButtonMenuPropGetItemOnClick<ITEM> = (\n item: ITEM,\n) => React.EventHandler<React.MouseEvent> | undefined;\nexport type ButtonMenuPropOnItemClick<ITEM> = (props: {\n e: React.MouseEvent;\n item: ITEM;\n}) => void;\n\nexport type ButtonMenuProps<ITEM = ButtonMenuDefaultItem> =\n PropsWithHTMLAttributesAndRef<\n {\n items: ITEM[];\n onItemClick?: ButtonMenuPropOnItemClick<ITEM>;\n getItemHref?: ButtonMenuPropGetItemHref<ITEM>;\n getItemLabel?: ButtonMenuPropGetItemLabel<ITEM>;\n getItemTarget?: ButtonMenuPropGetItemTarget<ITEM>;\n getItemOnClick?: ButtonMenuPropGetItemOnClick<ITEM>;\n getItemIcon?: ButtonMenuPropGetItemIcon<ITEM>;\n form?: ButtonPropForm;\n size?: ButtonPropSize;\n view?: ButtonPropView;\n onlyIcon?: boolean;\n },\n HTMLDivElement\n > &\n (ITEM extends { label: ButtonMenuDefaultItem['label'] }\n ? {}\n : { getItemLabel: ButtonMenuPropGetItemLabel<ITEM> });\n\nexport type ButtonMenuComponent = <ITEM = ButtonMenuDefaultItem>(\n props: ButtonMenuProps<ITEM>,\n) => React.ReactElement | null;\n"],"mappings":""}
@@ -1 +1 @@
1
- {"version":3,"file":"Layout.js","names":["React","forwardRef","cn","LayoutRowIsObject","LayoutRow","cnLayout","Layout","props","ref","className","rowTop","rowBottom","rowCenter","children","otherProps","top","center","height","botton"],"sources":["../../../../../src/components/Layout/Layout.tsx"],"sourcesContent":["import './Layout.css';\n\nimport React, { forwardRef } from 'react';\n\nimport { cn } from '##/utils/bem';\n\nimport { LayoutRowIsObject } from './helpers';\nimport { LayoutRow } from './LayoutRow/LayoutRow';\nimport { LayoutProps } from './types';\n\nconst cnLayout = cn('Layout');\n\nexport const Layout = forwardRef(\n (props: LayoutProps, ref: React.Ref<HTMLDivElement>) => {\n const { className, rowTop, rowBottom, rowCenter, children, ...otherProps } =\n props;\n\n return (\n <div {...otherProps} className={cnLayout(null, [className])} ref={ref}>\n {rowTop && (\n <LayoutRow\n className={cnLayout('Row', { top: true })}\n content={rowTop}\n height=\"s\"\n />\n )}\n {(rowCenter || children) && (\n <LayoutRow\n className={cnLayout('Row', { center: true })}\n content={rowCenter || children}\n height={LayoutRowIsObject(rowCenter) ? rowCenter.height : undefined}\n />\n )}\n {rowBottom && (\n <LayoutRow\n className={cnLayout('Row', { botton: true })}\n content={rowBottom}\n height=\"s\"\n />\n )}\n </div>\n );\n },\n);\n\nexport * from './types';\n"],"mappings":"+JAAA,qBAEA,MAAOA,MAAK,EAAIC,UAAU,KAAQ,OAAO,CAEzC,OAASC,EAAE,uBAEX,OAASC,iBAAiB,iBAC1B,OAASC,SAAS,6BAGlB,KAAMC,SAAQ,CAAGH,EAAE,CAAC,QAAQ,CAAC,CAE7B,MAAO,MAAMI,OAAM,CAAGL,UAAU,CAC9B,CAACM,CAAkB,CAAEC,CAA8B,GAAK,CACtD,KAAM,CAAEC,SAAS,CAATA,CAAS,CAAEC,MAAM,CAANA,CAAM,CAAEC,SAAS,CAATA,CAAS,CAAEC,SAAS,CAATA,CAAS,CAAEC,QAAQ,CAARA,CAAwB,CAAC,CACxEN,CAAK,CADuDO,CAAU,0BACtEP,CAAK,YAEP,MACE,4CAASO,CAAU,EAAE,SAAS,CAAET,QAAQ,CAAC,IAAI,CAAE,CAACI,CAAS,CAAC,CAAE,CAAC,GAAG,CAAED,CAAI,GACnEE,CAAM,EACL,oBAAC,SAAS,EACR,SAAS,CAAEL,QAAQ,CAAC,KAAK,CAAE,CAAEU,GAAG,GAAO,CAAC,CAAE,CAC1C,OAAO,CAAEL,CAAO,CAChB,MAAM,CAAC,GAAG,EAEb,CACA,CAACE,CAAS,EAAIC,CAAQ,GACrB,oBAAC,SAAS,EACR,SAAS,CAAER,QAAQ,CAAC,KAAK,CAAE,CAAEW,MAAM,GAAO,CAAC,CAAE,CAC7C,OAAO,CAAEJ,CAAS,EAAIC,CAAS,CAC/B,MAAM,CAAEV,iBAAiB,CAACS,CAAS,CAAC,CAAGA,CAAS,CAACK,MAAM,OAAa,EAEvE,CACAN,CAAS,EACR,oBAAC,SAAS,EACR,SAAS,CAAEN,QAAQ,CAAC,KAAK,CAAE,CAAEa,MAAM,GAAO,CAAC,CAAE,CAC7C,OAAO,CAAEP,CAAU,CACnB,MAAM,CAAC,GAAG,EAEb,CAGP,CAAC,CACF,CAED"}
1
+ {"version":3,"file":"Layout.js","names":["React","forwardRef","cn","LayoutRowIsObject","LayoutRow","cnLayout","Layout","props","ref","className","rowTop","rowBottom","rowCenter","children","otherProps","_objectWithoutProperties","_excluded","createElement","Object","assign","top","content","height","center","botton"],"sources":["../../../../../src/components/Layout/Layout.tsx"],"sourcesContent":["import './Layout.css';\n\nimport React, { forwardRef } from 'react';\n\nimport { cn } from '##/utils/bem';\n\nimport { LayoutRowIsObject } from './helpers';\nimport { LayoutRow } from './LayoutRow/LayoutRow';\nimport { LayoutProps } from './types';\n\nconst cnLayout = cn('Layout');\n\nexport const Layout = forwardRef(\n (props: LayoutProps, ref: React.Ref<HTMLDivElement>) => {\n const { className, rowTop, rowBottom, rowCenter, children, ...otherProps } =\n props;\n\n return (\n <div {...otherProps} className={cnLayout(null, [className])} ref={ref}>\n {rowTop && (\n <LayoutRow\n className={cnLayout('Row', { top: true })}\n content={rowTop}\n height=\"s\"\n />\n )}\n {(rowCenter || children) && (\n <LayoutRow\n className={cnLayout('Row', { center: true })}\n content={rowCenter || children}\n height={LayoutRowIsObject(rowCenter) ? rowCenter.height : undefined}\n />\n )}\n {rowBottom && (\n <LayoutRow\n className={cnLayout('Row', { botton: true })}\n content={rowBottom}\n height=\"s\"\n />\n )}\n </div>\n );\n },\n);\n\nexport * from './types';\n"],"mappings":"+JAAA,qBAEA,MAAO,CAAAA,KAAK,EAAIC,UAAU,KAAQ,OAAO,CAEzC,OAASC,EAAE,uBAEX,OAASC,iBAAiB,iBAC1B,OAASC,SAAS,6BAGlB,KAAM,CAAAC,QAAQ,CAAGH,EAAE,CAAC,QAAQ,CAAC,CAE7B,MAAO,MAAM,CAAAI,MAAM,CAAGL,UAAU,CAC9B,CAACM,CAAkB,CAAEC,CAA8B,GAAK,CACtD,KAAM,CAAEC,SAAS,CAATA,CAAS,CAAEC,MAAM,CAANA,CAAM,CAAEC,SAAS,CAATA,CAAS,CAAEC,SAAS,CAATA,CAAS,CAAEC,QAAQ,CAARA,CAAwB,CAAC,CACxEN,CAAK,CADuDO,CAAU,CAAAC,wBAAA,CACtER,CAAK,CAAAS,SAAA,EAEP,MACE,CAAAhB,KAAA,CAAAiB,aAAA,OAAAC,MAAA,CAAAC,MAAA,IAASL,CAAU,EAAEL,SAAS,CAAEJ,QAAQ,CAAC,IAAI,CAAE,CAACI,CAAS,CAAC,CAAE,CAACD,GAAG,CAAEA,CAAI,GACnEE,CAAM,EACLV,KAAA,CAAAiB,aAAA,CAACb,SAAS,EACRK,SAAS,CAAEJ,QAAQ,CAAC,KAAK,CAAE,CAAEe,GAAG,GAAO,CAAC,CAAE,CAC1CC,OAAO,CAAEX,CAAO,CAChBY,MAAM,CAAC,GAAG,CACX,CACF,CACA,CAACV,CAAS,EAAIC,CAAQ,GACrBb,KAAA,CAAAiB,aAAA,CAACb,SAAS,EACRK,SAAS,CAAEJ,QAAQ,CAAC,KAAK,CAAE,CAAEkB,MAAM,GAAO,CAAC,CAAE,CAC7CF,OAAO,CAAET,CAAS,EAAIC,CAAS,CAC/BS,MAAM,CAAEnB,iBAAiB,CAACS,CAAS,CAAC,CAAGA,CAAS,CAACU,MAAM,OAAa,CACrE,CACF,CACAX,CAAS,EACRX,KAAA,CAAAiB,aAAA,CAACb,SAAS,EACRK,SAAS,CAAEJ,QAAQ,CAAC,KAAK,CAAE,CAAEmB,MAAM,GAAO,CAAC,CAAE,CAC7CH,OAAO,CAAEV,CAAU,CACnBW,MAAM,CAAC,GAAG,CACX,CAEA,CAET,CACF,CAAC,CAED"}
@@ -1 +1 @@
1
- .che--LayoutRow{background-color:var(--color-bg-default);border-bottom:1px solid var(--color-bg-border);box-sizing:border-box;display:flex;height:var(--header-height);padding:0 var(--space-xl);width:100%}.che--LayoutRow_height_m{--header-height:60px}.che--LayoutRow_height_s{--header-height:40px}.che--LayoutRow-Side{align-items:center;display:flex;flex:1 1 auto}.che--LayoutRow-Side_position_left{justify-content:flex-start}.che--LayoutRow-Side_position_right{justify-content:flex-end}.che--LayoutRow-Side_position_center{justify-content:center}
1
+ .che--LayoutRow{background-color:var(--color-bg-default);border-bottom:1px solid var(--color-bg-border);box-sizing:border-box;display:flex;height:var(--header-height);width:100%}.che--LayoutRow_height_m{--header-height:60px}.che--LayoutRow_height_s{--header-height:40px}.che--LayoutRow-Side{align-items:center;display:flex;flex:1 1 auto}.che--LayoutRow-Side_position_left{justify-content:flex-start}.che--LayoutRow-Side_position_right{justify-content:flex-end}.che--LayoutRow-Side_position_center{justify-content:center}
@@ -1,2 +1,2 @@
1
- import"./LayoutRow.css";import React from"react";import{cn}from"../../../utils/bem";import{LayoutRowIsObject}from"../helpers";const cnLayoutRow=cn("LayoutRow");export const LayoutRow=a=>{const{className:b,content:c,height:d="m"}=a;if(!c)return null;if(LayoutRowIsObject(c)){const{left:a,center:e,right:f}=c;return React.createElement("div",{className:cnLayoutRow({height:d},[b])},a&&React.createElement("div",{className:cnLayoutRow("Side",{position:"left"})},a),e&&React.createElement("div",{className:cnLayoutRow("Side",{position:"center"})},e),f&&React.createElement("div",{className:cnLayoutRow("Side",{position:"right"})},f))}return React.createElement("div",{className:cnLayoutRow({height:d},[b])},React.createElement("div",{className:cnLayoutRow("Side",{position:"left"})},c))};
1
+ import"./LayoutRow.css";import{cnMixSpace}from"@consta/uikit/MixSpace";import React from"react";import{cn}from"../../../utils/bem";import{LayoutRowIsObject}from"../helpers";const cnLayoutRow=cn("LayoutRow");export const LayoutRow=a=>{const{className:b,content:c,height:d="m"}=a;if(!c)return null;if(LayoutRowIsObject(c)){const{left:a,center:e,right:f}=c;return React.createElement("div",{className:cnLayoutRow({height:d},[b,cnMixSpace({pH:"xl"})])},a&&React.createElement("div",{className:cnLayoutRow("Side",{position:"left"})},a),e&&React.createElement("div",{className:cnLayoutRow("Side",{position:"center"})},e),f&&React.createElement("div",{className:cnLayoutRow("Side",{position:"right"})},f))}return React.createElement("div",{className:cnLayoutRow({height:d},[b])},React.createElement("div",{className:cnLayoutRow("Side",{position:"left"})},c))};
2
2
  //# sourceMappingURL=LayoutRow.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"LayoutRow.js","names":["React","cn","LayoutRowIsObject","cnLayoutRow","LayoutRow","props","className","content","height","left","center","right","position"],"sources":["../../../../../../src/components/Layout/LayoutRow/LayoutRow.tsx"],"sourcesContent":["import './LayoutRow.css';\n\nimport React from 'react';\n\nimport { cn } from '##/utils/bem';\nimport { PropsWithHTMLAttributes } from '##/utils/types/PropsWithHTMLAttributes';\n\nimport { LayoutRowIsObject } from '../helpers';\nimport { LayoutRow as LayoutRowType, LayoutSlotHeight } from '../types';\n\nconst cnLayoutRow = cn('LayoutRow');\n\ntype LayoutRowProps = PropsWithHTMLAttributes<\n {\n content?: React.ReactNode | LayoutRowType;\n children?: never;\n height?: LayoutSlotHeight;\n },\n HTMLDivElement\n>;\n\nexport const LayoutRow: React.FC<LayoutRowProps> = (props) => {\n const { className, content, height = 'm' } = props;\n if (!content) {\n return null;\n }\n if (LayoutRowIsObject(content)) {\n const { left, center, right } = content;\n return (\n <div className={cnLayoutRow({ height }, [className])}>\n {left && (\n <div className={cnLayoutRow('Side', { position: 'left' })}>\n {left}\n </div>\n )}\n {center && (\n <div className={cnLayoutRow('Side', { position: 'center' })}>\n {center}\n </div>\n )}\n {right && (\n <div className={cnLayoutRow('Side', { position: 'right' })}>\n {right}\n </div>\n )}\n </div>\n );\n }\n return (\n <div className={cnLayoutRow({ height }, [className])}>\n <div className={cnLayoutRow('Side', { position: 'left' })}>{content}</div>\n </div>\n );\n};\n"],"mappings":"AAAA,wBAEA,MAAOA,MAAK,KAAM,OAAO,CAEzB,OAASC,EAAE,0BAGX,OAASC,iBAAiB,kBAG1B,KAAMC,YAAW,CAAGF,EAAE,CAAC,WAAW,CAAC,CAWnC,MAAO,MAAMG,UAAmC,CAAIC,CAAK,EAAK,CAC5D,KAAM,CAAEC,SAAS,CAATA,CAAS,CAAEC,OAAO,CAAPA,CAAO,CAAEC,MAAM,CAANA,CAAM,CAAG,GAAI,CAAC,CAAGH,CAAK,CAClD,GAAI,CAACE,CAAO,CACV,MAAO,KAAI,CAEb,GAAIL,iBAAiB,CAACK,CAAO,CAAC,CAAE,CAC9B,KAAM,CAAEE,IAAI,CAAJA,CAAI,CAAEC,MAAM,CAANA,CAAM,CAAEC,KAAK,CAALA,CAAM,CAAC,CAAGJ,CAAO,CACvC,MACE,4BAAK,SAAS,CAAEJ,WAAW,CAAC,CAAEK,MAAM,CAANA,CAAO,CAAC,CAAE,CAACF,CAAS,CAAC,CAAE,EAClDG,CAAI,EACH,2BAAK,SAAS,CAAEN,WAAW,CAAC,MAAM,CAAE,CAAES,QAAQ,CAAE,MAAO,CAAC,CAAE,EACvDH,CAAI,CAER,CACAC,CAAM,EACL,2BAAK,SAAS,CAAEP,WAAW,CAAC,MAAM,CAAE,CAAES,QAAQ,CAAE,QAAS,CAAC,CAAE,EACzDF,CAAM,CAEV,CACAC,CAAK,EACJ,2BAAK,SAAS,CAAER,WAAW,CAAC,MAAM,CAAE,CAAES,QAAQ,CAAE,OAAQ,CAAC,CAAE,EACxDD,CAAK,CAET,CAGP,CACA,MACE,4BAAK,SAAS,CAAER,WAAW,CAAC,CAAEK,MAAM,CAANA,CAAO,CAAC,CAAE,CAACF,CAAS,CAAC,CAAE,EACnD,2BAAK,SAAS,CAAEH,WAAW,CAAC,MAAM,CAAE,CAAES,QAAQ,CAAE,MAAO,CAAC,CAAE,EAAEL,CAAO,CAAO,CAGhF,CAAC"}
1
+ {"version":3,"file":"LayoutRow.js","names":["cnMixSpace","React","cn","LayoutRowIsObject","cnLayoutRow","LayoutRow","props","className","content","height","left","center","right","createElement","pH","position"],"sources":["../../../../../../src/components/Layout/LayoutRow/LayoutRow.tsx"],"sourcesContent":["import './LayoutRow.css';\n\nimport { cnMixSpace } from '@consta/uikit/MixSpace';\nimport React from 'react';\n\nimport { cn } from '##/utils/bem';\nimport { PropsWithHTMLAttributes } from '##/utils/types/PropsWithHTMLAttributes';\n\nimport { LayoutRowIsObject } from '../helpers';\nimport { LayoutRow as LayoutRowType, LayoutSlotHeight } from '../types';\n\nconst cnLayoutRow = cn('LayoutRow');\n\ntype LayoutRowProps = PropsWithHTMLAttributes<\n {\n content?: React.ReactNode | LayoutRowType;\n children?: never;\n height?: LayoutSlotHeight;\n },\n HTMLDivElement\n>;\n\nexport const LayoutRow: React.FC<LayoutRowProps> = (props) => {\n const { className, content, height = 'm' } = props;\n if (!content) {\n return null;\n }\n if (LayoutRowIsObject(content)) {\n const { left, center, right } = content;\n return (\n <div\n className={cnLayoutRow({ height }, [\n className,\n cnMixSpace({ pH: 'xl' }),\n ])}\n >\n {left && (\n <div className={cnLayoutRow('Side', { position: 'left' })}>\n {left}\n </div>\n )}\n {center && (\n <div className={cnLayoutRow('Side', { position: 'center' })}>\n {center}\n </div>\n )}\n {right && (\n <div className={cnLayoutRow('Side', { position: 'right' })}>\n {right}\n </div>\n )}\n </div>\n );\n }\n return (\n <div className={cnLayoutRow({ height }, [className])}>\n <div className={cnLayoutRow('Side', { position: 'left' })}>{content}</div>\n </div>\n );\n};\n"],"mappings":"AAAA,wBAEA,OAASA,UAAU,KAAQ,wBAAwB,CACnD,MAAO,CAAAC,KAAK,KAAM,OAAO,CAEzB,OAASC,EAAE,0BAGX,OAASC,iBAAiB,kBAG1B,KAAM,CAAAC,WAAW,CAAGF,EAAE,CAAC,WAAW,CAAC,CAWnC,MAAO,MAAM,CAAAG,SAAmC,CAAIC,CAAK,EAAK,CAC5D,KAAM,CAAEC,SAAS,CAATA,CAAS,CAAEC,OAAO,CAAPA,CAAO,CAAEC,MAAM,CAANA,CAAM,CAAG,GAAI,CAAC,CAAGH,CAAK,CAClD,GAAI,CAACE,CAAO,CACV,MAAO,KAAI,CAEb,GAAIL,iBAAiB,CAACK,CAAO,CAAC,CAAE,CAC9B,KAAM,CAAEE,IAAI,CAAJA,CAAI,CAAEC,MAAM,CAANA,CAAM,CAAEC,KAAK,CAALA,CAAM,CAAC,CAAGJ,CAAO,CACvC,MACE,CAAAP,KAAA,CAAAY,aAAA,QACEN,SAAS,CAAEH,WAAW,CAAC,CAAEK,MAAM,CAANA,CAAO,CAAC,CAAE,CACjCF,CAAS,CACTP,UAAU,CAAC,CAAEc,EAAE,CAAE,IAAK,CAAC,CAAC,CACzB,CAAE,EAEFJ,CAAI,EACHT,KAAA,CAAAY,aAAA,QAAKN,SAAS,CAAEH,WAAW,CAAC,MAAM,CAAE,CAAEW,QAAQ,CAAE,MAAO,CAAC,CAAE,EACvDL,CACE,CACN,CACAC,CAAM,EACLV,KAAA,CAAAY,aAAA,QAAKN,SAAS,CAAEH,WAAW,CAAC,MAAM,CAAE,CAAEW,QAAQ,CAAE,QAAS,CAAC,CAAE,EACzDJ,CACE,CACN,CACAC,CAAK,EACJX,KAAA,CAAAY,aAAA,QAAKN,SAAS,CAAEH,WAAW,CAAC,MAAM,CAAE,CAAEW,QAAQ,CAAE,OAAQ,CAAC,CAAE,EACxDH,CACE,CAEJ,CAET,CACA,MACE,CAAAX,KAAA,CAAAY,aAAA,QAAKN,SAAS,CAAEH,WAAW,CAAC,CAAEK,MAAM,CAANA,CAAO,CAAC,CAAE,CAACF,CAAS,CAAC,CAAE,EACnDN,KAAA,CAAAY,aAAA,QAAKN,SAAS,CAAEH,WAAW,CAAC,MAAM,CAAE,CAAEW,QAAQ,CAAE,MAAO,CAAC,CAAE,EAAEP,CAAa,CACtE,CAET,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"helpers.js","names":["hasProperty","Object","prototype","hasOwnProperty","LayoutRowIsObject","content","call"],"sources":["../../../../../src/components/Layout/helpers.tsx"],"sourcesContent":["import { LayoutRow } from './types';\n\nconst hasProperty = Object.prototype.hasOwnProperty;\n\nexport const LayoutRowIsObject = (\n content: React.ReactNode | LayoutRow,\n): content is LayoutRow => {\n if (\n content &&\n typeof content === 'object' &&\n (hasProperty.call(content, 'left') ||\n hasProperty.call(content, 'right') ||\n hasProperty.call(content, 'center'))\n ) {\n return true;\n }\n return false;\n};\n"],"mappings":"AAEA,KAAMA,YAAW,CAAGC,MAAM,CAACC,SAAS,CAACC,cAAc,CAEnD,MAAO,MAAMC,kBAAiB,CAC5BC,CAAoC,KAGlCA,CAAO,EACY,QAAQ,EAA3B,MAAOA,EAAoB,GAC1BL,WAAW,CAACM,IAAI,CAACD,CAAO,CAAE,MAAM,CAAC,EAChCL,WAAW,CAACM,IAAI,CAACD,CAAO,CAAE,OAAO,CAAC,EAClCL,WAAW,CAACM,IAAI,CAACD,CAAO,CAAE,QAAQ,CAAC,CAAC,CAKzC"}
1
+ {"version":3,"file":"helpers.js","names":["hasProperty","Object","prototype","hasOwnProperty","LayoutRowIsObject","content","call"],"sources":["../../../../../src/components/Layout/helpers.tsx"],"sourcesContent":["import { LayoutRow } from './types';\n\nconst hasProperty = Object.prototype.hasOwnProperty;\n\nexport const LayoutRowIsObject = (\n content: React.ReactNode | LayoutRow,\n): content is LayoutRow => {\n if (\n content &&\n typeof content === 'object' &&\n (hasProperty.call(content, 'left') ||\n hasProperty.call(content, 'right') ||\n hasProperty.call(content, 'center'))\n ) {\n return true;\n }\n return false;\n};\n"],"mappings":"AAEA,KAAM,CAAAA,WAAW,CAAGC,MAAM,CAACC,SAAS,CAACC,cAAc,CAEnD,MAAO,MAAM,CAAAC,iBAAiB,CAC5BC,CAAoC,KAGlCA,CAAO,EACY,QAAQ,EAA3B,MAAO,CAAAA,CAAoB,GAC1BL,WAAW,CAACM,IAAI,CAACD,CAAO,CAAE,MAAM,CAAC,EAChCL,WAAW,CAACM,IAAI,CAACD,CAAO,CAAE,OAAO,CAAC,EAClCL,WAAW,CAACM,IAAI,CAACD,CAAO,CAAE,QAAQ,CAAC,CAAC,CAKzC"}
@@ -1,2 +1,2 @@
1
- import _defineProperty from"@babel/runtime/helpers/defineProperty";import _objectWithoutProperties from"@babel/runtime/helpers/objectWithoutProperties";const _excluded=["items","menuHideButtonText","menuMaxElements","menuShowButtonText","menuTitle","onItemClick","getItemAs","getItemKey","getItemAttributes","getItemSubMenu","getItemIconLeft","getItemLabel","getItemOnClick","banners","bannerPosition","onBannerClick","getBannerAs","getBannerAttributes","getBannerDescription","getBannerImage","getBannerLabel","getBannerOnClick","className"];function ownKeys(a,b){var c=Object.keys(a);if(Object.getOwnPropertySymbols){var d=Object.getOwnPropertySymbols(a);b&&(d=d.filter(function(b){return Object.getOwnPropertyDescriptor(a,b).enumerable})),c.push.apply(c,d)}return c}function _objectSpread(a){for(var b,c=1;c<arguments.length;c++)b=null==arguments[c]?{}:arguments[c],c%2?ownKeys(Object(b),!0).forEach(function(c){_defineProperty(a,c,b[c])}):Object.getOwnPropertyDescriptors?Object.defineProperties(a,Object.getOwnPropertyDescriptors(b)):ownKeys(Object(b)).forEach(function(c){Object.defineProperty(a,c,Object.getOwnPropertyDescriptor(b,c))});return a}import"./MegaMenu.css";import{IconArrowRight}from"@consta/uikit/IconArrowRight";import React,{useEffect,useMemo,useState}from"react";import{cn}from"../../utils/bem";import{BannerBar}from"../BannerBar";import{GlobalMenu}from"../GlobalMenu";import{NavBar}from"../NavBar";import{getItemsDepth,separateItemsByDepth,withDefaultGetters}from"./helper";const cnMegaMenu=cn("MegaMenu");export const MegaMenu=a=>{const b=withDefaultGetters(a),{items:c,menuHideButtonText:w="\u0421\u043A\u0440\u044B\u0442\u044C",menuMaxElements:d,menuShowButtonText:x="\u0415\u0449\u0451",menuTitle:e,onItemClick:f,getItemAs:g,getItemKey:h,getItemAttributes:i,getItemSubMenu:j,getItemIconLeft:k,getItemLabel:l,getItemOnClick:m,banners:n,bannerPosition:y="right",onBannerClick:o,getBannerAs:p,getBannerAttributes:q,getBannerDescription:r,getBannerImage:s,getBannerLabel:t,getBannerOnClick:u,className:v}=b,z=_objectWithoutProperties(b,_excluded),[A,B]=useState(),C=a=>!!A&&h(A)===h(a),D=useMemo(()=>getItemsDepth(c,j),[c]),[E,F,G]=useMemo(()=>separateItemsByDepth({items:c,getItemKey:h,getItemSubMenu:j,getItemActive:C,depth:D}),[c,A]),{navItems:H,items:I,groups:J}=useMemo(()=>({navItems:2>D||2<D?E:void 0,groups:3>D?E:F,items:3>D?F:G}),[D,E,F,G]);useEffect(()=>{2<D&&j(c[0])&&B(c[0])},[D]);const K=(a,b)=>{null===f||void 0===f?void 0:f({e:a,item:b}),j(b)&&B(b)},L=(a,b)=>{var c;const d=null===(c=i(b))||void 0===c?void 0:c.onMouseEnter;null===d||void 0===d?void 0:d(a),j(b)&&B(b)};return React.createElement("div",Object.assign({className:cnMegaMenu({withGlobalMenu:1<D,withBannersBar:0<(null!==n&&void 0!==n?n:[]).length,withNavBar:2!==D,bannerPosition:y},[v])},z),H&&React.createElement(NavBar,{items:H,className:cnMegaMenu("NavBar"),getItemActive:({item:a})=>C(a),getItemAs:({item:a})=>g(a),getItemAttributes:({item:a})=>_objectSpread(_objectSpread({},i(a)),{},{onMouseEnter:b=>L(b,a)}),getItemIconLeft:({item:a})=>k(a),getItemLabel:({item:a})=>l(a),getItemOnClick:({item:a})=>m(a),onItemClick:({e:a,item:{item:b}})=>K(a,b),getItemIconRight:({item:a})=>j(a)?IconArrowRight:void 0}),React.createElement("div",{className:cnMegaMenu("Wrapper")},2<=D&&React.createElement(GlobalMenu,{className:cnMegaMenu("GlobalMenu"),items:I,groups:J,title:null!==e&&void 0!==e?e:A?l(A):void 0,getGroupKey:({item:a})=>h(a),getGroupLabel:({item:a})=>l(a),getItemAs:({item:a})=>g(a),getItemAttributes:({item:a})=>i(a),getItemGroupId:({groupId:a})=>a,getItemLabel:({item:a})=>l(a),getItemOnClick:({item:a})=>m(a),getGroupOnClick:({item:a})=>m(a),onGroupClick:f?({e:a,group:{item:b}})=>{null===f||void 0===f?void 0:f({e:a,item:b})}:void 0,onItemClick:f?({e:a,item:{item:b}})=>null===f||void 0===f?void 0:f({e:a,item:b}):void 0,maxElements:d,showButtonText:x,hideButtonText:w}),n&&React.createElement(BannerBar,{className:cnMegaMenu("BannerBar"),items:n,view:"right"===y?"vertical":"horizontal",onItemClick:o,getItemAs:p,getItemAttributes:q,getItemDescription:r,getItemImage:s,getItemLabel:t,getItemOnClick:u})))};export*from"./types";
1
+ import _defineProperty from"@babel/runtime/helpers/defineProperty";import _objectWithoutProperties from"@babel/runtime/helpers/objectWithoutProperties";const _excluded=["items","menuHideButtonText","menuMaxElements","menuShowButtonText","menuTitle","onItemClick","getItemAs","getItemKey","getItemAttributes","getItemSubMenu","getItemIconLeft","getItemLabel","getItemOnClick","banners","bannerPosition","onBannerClick","getBannerAs","getBannerAttributes","getBannerDescription","getBannerImage","getBannerLabel","getBannerOnClick","className"];function ownKeys(a,b){var c=Object.keys(a);if(Object.getOwnPropertySymbols){var d=Object.getOwnPropertySymbols(a);b&&(d=d.filter(function(b){return Object.getOwnPropertyDescriptor(a,b).enumerable})),c.push.apply(c,d)}return c}function _objectSpread(a){for(var b,c=1;c<arguments.length;c++)b=null==arguments[c]?{}:arguments[c],c%2?ownKeys(Object(b),!0).forEach(function(c){_defineProperty(a,c,b[c])}):Object.getOwnPropertyDescriptors?Object.defineProperties(a,Object.getOwnPropertyDescriptors(b)):ownKeys(Object(b)).forEach(function(c){Object.defineProperty(a,c,Object.getOwnPropertyDescriptor(b,c))});return a}import"./MegaMenu.css";import{IconArrowRight}from"@consta/icons/IconArrowRight";import React,{useCallback,useEffect,useMemo,useState}from"react";import{cn}from"../../utils/bem";import{getItemsDepth,separateItemsByDepth,withDefaultGetters}from"./helper";import{MegaMenuBannerBar}from"./MegaMenuBannerBar";import{MegaMenuGlobal}from"./MegaMenuGlobal";import{MegaMenuNavBar}from"./MegaMenuNavBar";const cnMegaMenu=cn("MegaMenu");export const MegaMenu=a=>{const b=withDefaultGetters(a),{items:c,menuHideButtonText:w="\u0421\u043A\u0440\u044B\u0442\u044C",menuMaxElements:d,menuShowButtonText:x="\u0415\u0449\u0451",menuTitle:e,onItemClick:f,getItemAs:g,getItemKey:h,getItemAttributes:i,getItemSubMenu:j,getItemIconLeft:k,getItemLabel:l,getItemOnClick:m,banners:n,bannerPosition:y="right",onBannerClick:o,getBannerAs:p,getBannerAttributes:q,getBannerDescription:r,getBannerImage:s,getBannerLabel:t,getBannerOnClick:u,className:v}=b,z=_objectWithoutProperties(b,_excluded),[A,B]=useState(),C=useCallback(a=>!!A&&h(A)===h(a),[A]),D=useMemo(()=>getItemsDepth(c,j),[c]),[E,F,G]=useMemo(()=>separateItemsByDepth({items:c,getItemKey:h,getItemSubMenu:j,getItemActive:C,depth:D}),[c,A]),{navItems:H,items:I,groups:J}=useMemo(()=>({navItems:2>D||2<D?E:void 0,groups:3>D?E:F,items:3>D?F:G}),[D,E,F,G]),K=(a,b)=>{null===f||void 0===f?void 0:f({e:a,item:b}),j(b)&&B(b)},L=(a,b)=>{var c;const d=null===(c=i(b))||void 0===c?void 0:c.onMouseEnter;null===d||void 0===d?void 0:d(a),j(b)&&B(b)};return useEffect(()=>{2<D&&j(c[0])&&B(c[0])},[D]),React.createElement("div",Object.assign({className:cnMegaMenu({withGlobalMenu:1<D,withBannersBar:0<(null!==n&&void 0!==n?n:[]).length,withNavBar:2!==D,bannerPosition:y},[v])},z),H&&React.createElement(MegaMenuNavBar,{items:H,className:cnMegaMenu("NavBar"),getItemActive:({item:a})=>C(a),getItemAs:({item:a})=>g(a),getItemAttributes:({item:a})=>_objectSpread(_objectSpread({},i(a)),{},{onMouseEnter:b=>L(b,a)}),getItemIconLeft:({item:a})=>k(a),getItemLabel:({item:a})=>l(a),getItemOnClick:({item:a})=>m(a),onItemClick:({e:a,item:{item:b}})=>K(a,b),getItemIconRight:({item:a})=>j(a)?IconArrowRight:void 0}),React.createElement("div",{className:cnMegaMenu("Wrapper")},2<=D&&React.createElement(MegaMenuGlobal,{className:cnMegaMenu("GlobalMenu"),items:I,groups:J,title:null!==e&&void 0!==e?e:A?l(A):void 0,getGroupKey:({item:a})=>h(a),getGroupLabel:({item:a})=>l(a),getItemAs:({item:a})=>g(a),getItemAttributes:({item:a})=>i(a),getItemGroupId:({groupId:a})=>a,getItemLabel:({item:a})=>l(a),getItemOnClick:({item:a})=>m(a),getGroupOnClick:({item:a})=>m(a),onGroupClick:f?({e:a,group:{item:b}})=>{null===f||void 0===f?void 0:f({e:a,item:b})}:void 0,onItemClick:f?({e:a,item:{item:b}})=>null===f||void 0===f?void 0:f({e:a,item:b}):void 0,maxElements:d,showButtonText:x,hideButtonText:w}),n&&React.createElement(MegaMenuBannerBar,{className:cnMegaMenu("BannerBar"),items:n,view:"right"===y?"vertical":"horizontal",onItemClick:o,getItemAs:p,getItemAttributes:q,getItemDescription:r,getItemImage:s,getItemLabel:t,getItemOnClick:u})))};export*from"./types";
2
2
  //# sourceMappingURL=MegaMenu.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"MegaMenu.js","names":["IconArrowRight","React","useEffect","useMemo","useState","cn","BannerBar","GlobalMenu","NavBar","getItemsDepth","separateItemsByDepth","withDefaultGetters","cnMegaMenu","MegaMenu","props","items","itemsProp","menuHideButtonText","menuMaxElements","menuShowButtonText","menuTitle","onItemClick","onItemClickProp","getItemAs","getItemKey","getItemAttributes","getItemSubMenu","getItemIconLeft","getItemLabel","getItemOnClick","banners","bannerPosition","onBannerClick","getBannerAs","getBannerAttributes","getBannerDescription","getBannerImage","getBannerLabel","getBannerOnClick","className","otherProps","activeItem","setActiveItem","getItemActive","item","depth","firstLevel","secondLevel","thirdLevel","navItems","groups","handleNavBarClick","e","handleNavBarMouseEnter","onMouseEnter","withGlobalMenu","withBannersBar","length","withNavBar","groupId","group"],"sources":["../../../../../src/components/MegaMenu/MegaMenu.tsx"],"sourcesContent":["import './MegaMenu.css';\n\nimport { IconArrowRight } from '@consta/uikit/IconArrowRight';\nimport React, { useEffect, useMemo, useState } from 'react';\n\nimport { cn } from '##/utils/bem';\n\nimport { BannerBar } from '../BannerBar';\nimport { GlobalMenu } from '../GlobalMenu';\nimport { NavBar } from '../NavBar';\nimport {\n getItemsDepth,\n separateItemsByDepth,\n withDefaultGetters,\n} from './helper';\nimport { MegaMenuProps } from './types';\n\nconst cnMegaMenu = cn('MegaMenu');\n\nexport const MegaMenu = (props: MegaMenuProps) => {\n const {\n // GlobalMenu\n items: itemsProp,\n menuHideButtonText = 'Скрыть',\n menuMaxElements,\n menuShowButtonText = 'Ещё',\n menuTitle,\n onItemClick: onItemClickProp,\n getItemAs,\n getItemKey,\n getItemAttributes,\n getItemSubMenu,\n getItemIconLeft,\n getItemLabel,\n getItemOnClick,\n // BannerBar\n banners,\n bannerPosition = 'right',\n onBannerClick,\n getBannerAs,\n getBannerAttributes,\n getBannerDescription,\n getBannerImage,\n getBannerLabel,\n getBannerOnClick,\n // Others\n className,\n ...otherProps\n } = withDefaultGetters(props);\n type ITEM = (typeof itemsProp)[number];\n\n const [activeItem, setActiveItem] = useState<ITEM | undefined>();\n\n const getItemActive = (item: ITEM) => {\n if (activeItem) {\n return getItemKey(activeItem) === getItemKey(item);\n }\n return false;\n };\n\n const depth = useMemo(\n () => getItemsDepth(itemsProp, getItemSubMenu),\n [itemsProp],\n );\n\n const [firstLevel, secondLevel, thirdLevel] = useMemo(\n () =>\n separateItemsByDepth({\n items: itemsProp,\n getItemKey,\n getItemSubMenu,\n getItemActive,\n depth,\n }),\n [itemsProp, activeItem],\n );\n\n const { navItems, items, groups } = useMemo(() => {\n return {\n navItems: depth < 2 || depth > 2 ? firstLevel : undefined,\n groups: depth < 3 ? firstLevel : secondLevel,\n items: depth < 3 ? secondLevel : thirdLevel,\n };\n }, [depth, firstLevel, secondLevel, thirdLevel]);\n\n useEffect(() => {\n if (depth > 2 && getItemSubMenu(itemsProp[0])) {\n setActiveItem(itemsProp[0]);\n }\n }, [depth]);\n\n const handleNavBarClick = (e: React.MouseEvent, item: ITEM) => {\n onItemClickProp?.({ e, item });\n if (getItemSubMenu(item)) {\n setActiveItem(item);\n }\n };\n\n const handleNavBarMouseEnter = (\n e: React.MouseEvent<HTMLDivElement>,\n item: ITEM,\n ) => {\n const onMouseEnter = getItemAttributes(item)\n ?.onMouseEnter as JSX.IntrinsicElements['div']['onMouseEnter'];\n onMouseEnter?.(e);\n if (getItemSubMenu(item)) {\n setActiveItem(item);\n }\n };\n\n return (\n <div\n className={cnMegaMenu(\n {\n withGlobalMenu: depth > 1,\n withBannersBar: (banners ?? []).length > 0,\n withNavBar: depth !== 2,\n bannerPosition,\n },\n [className],\n )}\n {...otherProps}\n >\n {navItems && (\n <NavBar\n items={navItems}\n className={cnMegaMenu('NavBar')}\n getItemActive={({ item }) => getItemActive(item)}\n getItemAs={({ item }) => getItemAs(item)}\n getItemAttributes={({ item }) =>\n ({\n ...getItemAttributes(item),\n onMouseEnter: (e: React.MouseEvent<HTMLDivElement>) =>\n handleNavBarMouseEnter(e, item),\n } as JSX.IntrinsicElements['div'])\n }\n getItemIconLeft={({ item }) => getItemIconLeft(item)}\n getItemLabel={({ item }) => getItemLabel(item)}\n getItemOnClick={({ item }) => getItemOnClick(item)}\n onItemClick={({ e, item: { item } }) => handleNavBarClick(e, item)}\n getItemIconRight={({ item }) =>\n getItemSubMenu(item) ? IconArrowRight : undefined\n }\n />\n )}\n <div className={cnMegaMenu('Wrapper')}>\n {depth >= 2 && (\n <GlobalMenu\n className={cnMegaMenu('GlobalMenu')}\n items={items}\n groups={groups}\n title={\n menuTitle ?? (activeItem ? getItemLabel(activeItem) : undefined)\n }\n getGroupKey={({ item }) => getItemKey(item)}\n getGroupLabel={({ item }) => getItemLabel(item)}\n getItemAs={({ item }) => getItemAs(item)}\n getItemAttributes={({ item }) => getItemAttributes(item)}\n getItemGroupId={({ groupId }) => groupId}\n getItemLabel={({ item }) => getItemLabel(item)}\n getItemOnClick={({ item }) => getItemOnClick(item)}\n getGroupOnClick={({ item }) => getItemOnClick(item)}\n onGroupClick={\n onItemClickProp\n ? ({ e, group: { item } }) => {\n onItemClickProp?.({ e, item });\n }\n : undefined\n }\n onItemClick={\n onItemClickProp\n ? ({ e, item: { item } }) => onItemClickProp?.({ e, item })\n : undefined\n }\n maxElements={menuMaxElements}\n showButtonText={menuShowButtonText}\n hideButtonText={menuHideButtonText}\n />\n )}\n {banners && (\n <BannerBar\n className={cnMegaMenu('BannerBar')}\n items={banners}\n view={bannerPosition === 'right' ? 'vertical' : 'horizontal'}\n onItemClick={onBannerClick}\n getItemAs={getBannerAs}\n getItemAttributes={getBannerAttributes}\n getItemDescription={getBannerDescription}\n getItemImage={getBannerImage}\n getItemLabel={getBannerLabel}\n getItemOnClick={getBannerOnClick}\n />\n )}\n </div>\n </div>\n );\n};\n\nexport * from './types';\n"],"mappings":"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"}
1
+ {"version":3,"file":"MegaMenu.js","names":["IconArrowRight","React","useCallback","useEffect","useMemo","useState","cn","getItemsDepth","separateItemsByDepth","withDefaultGetters","MegaMenuBannerBar","MegaMenuGlobal","MegaMenuNavBar","cnMegaMenu","MegaMenu","props","b","items","itemsProp","menuHideButtonText","menuMaxElements","menuShowButtonText","menuTitle","onItemClick","onItemClickProp","getItemAs","getItemKey","getItemAttributes","getItemSubMenu","getItemIconLeft","getItemLabel","getItemOnClick","banners","bannerPosition","onBannerClick","getBannerAs","getBannerAttributes","getBannerDescription","getBannerImage","getBannerLabel","getBannerOnClick","className","otherProps","_objectWithoutProperties","_excluded","activeItem","setActiveItem","getItemActive","item","depth","firstLevel","secondLevel","thirdLevel","navItems","groups","handleNavBarClick","e","handleNavBarMouseEnter","c","onMouseEnter","createElement","Object","assign","withGlobalMenu","withBannersBar","length","withNavBar","_objectSpread","getItemIconRight","title","getGroupKey","getGroupLabel","getItemGroupId","groupId","getGroupOnClick","onGroupClick","group","maxElements","showButtonText","hideButtonText","view","getItemDescription","getItemImage"],"sources":["../../../../../src/components/MegaMenu/MegaMenu.tsx"],"sourcesContent":["import './MegaMenu.css';\n\nimport { IconArrowRight } from '@consta/icons/IconArrowRight';\nimport React, { useCallback, useEffect, useMemo, useState } from 'react';\n\nimport { cn } from '##/utils/bem';\n\nimport {\n getItemsDepth,\n separateItemsByDepth,\n withDefaultGetters,\n} from './helper';\nimport { MegaMenuBannerBar } from './MegaMenuBannerBar';\nimport { MegaMenuGlobal } from './MegaMenuGlobal';\nimport { MegaMenuNavBar } from './MegaMenuNavBar';\nimport { MegaMenuProps } from './types';\n\nconst cnMegaMenu = cn('MegaMenu');\n\nexport const MegaMenu = (props: MegaMenuProps) => {\n const {\n // GlobalMenu\n items: itemsProp,\n menuHideButtonText = 'Скрыть',\n menuMaxElements,\n menuShowButtonText = 'Ещё',\n menuTitle,\n onItemClick: onItemClickProp,\n getItemAs,\n getItemKey,\n getItemAttributes,\n getItemSubMenu,\n getItemIconLeft,\n getItemLabel,\n getItemOnClick,\n // BannerBar\n banners,\n bannerPosition = 'right',\n onBannerClick,\n getBannerAs,\n getBannerAttributes,\n getBannerDescription,\n getBannerImage,\n getBannerLabel,\n getBannerOnClick,\n // Others\n className,\n ...otherProps\n } = withDefaultGetters(props);\n type ITEM = (typeof itemsProp)[number];\n\n const [activeItem, setActiveItem] = useState<ITEM | undefined>();\n\n const getItemActive = useCallback(\n (item: ITEM) =>\n activeItem ? getItemKey(activeItem) === getItemKey(item) : false,\n [activeItem],\n );\n\n const depth = useMemo(\n () => getItemsDepth(itemsProp, getItemSubMenu),\n [itemsProp],\n );\n\n const [firstLevel, secondLevel, thirdLevel] = useMemo(\n () =>\n separateItemsByDepth({\n items: itemsProp,\n getItemKey,\n getItemSubMenu,\n getItemActive,\n depth,\n }),\n [itemsProp, activeItem],\n );\n\n const { navItems, items, groups } = useMemo(() => {\n return {\n navItems: depth < 2 || depth > 2 ? firstLevel : undefined,\n groups: depth < 3 ? firstLevel : secondLevel,\n items: depth < 3 ? secondLevel : thirdLevel,\n };\n }, [depth, firstLevel, secondLevel, thirdLevel]);\n\n const handleNavBarClick = (e: React.MouseEvent, item: ITEM) => {\n onItemClickProp?.({ e, item });\n if (getItemSubMenu(item)) {\n setActiveItem(item);\n }\n };\n\n const handleNavBarMouseEnter = (\n e: React.MouseEvent<HTMLDivElement>,\n item: ITEM,\n ) => {\n const onMouseEnter = getItemAttributes(item)\n ?.onMouseEnter as JSX.IntrinsicElements['div']['onMouseEnter'];\n onMouseEnter?.(e);\n if (getItemSubMenu(item)) {\n setActiveItem(item);\n }\n };\n\n useEffect(() => {\n if (depth > 2 && getItemSubMenu(itemsProp[0])) {\n setActiveItem(itemsProp[0]);\n }\n }, [depth]);\n\n return (\n <div\n className={cnMegaMenu(\n {\n withGlobalMenu: depth > 1,\n withBannersBar: (banners ?? []).length > 0,\n withNavBar: depth !== 2,\n bannerPosition,\n },\n [className],\n )}\n {...otherProps}\n >\n {navItems && (\n <MegaMenuNavBar\n items={navItems}\n className={cnMegaMenu('NavBar')}\n getItemActive={({ item }) => getItemActive(item)}\n getItemAs={({ item }) => getItemAs(item)}\n getItemAttributes={({ item }) =>\n ({\n ...getItemAttributes(item),\n onMouseEnter: (e: React.MouseEvent<HTMLDivElement>) =>\n handleNavBarMouseEnter(e, item),\n } as JSX.IntrinsicElements['div'])\n }\n getItemIconLeft={({ item }) => getItemIconLeft(item)}\n getItemLabel={({ item }) => getItemLabel(item)}\n getItemOnClick={({ item }) => getItemOnClick(item)}\n onItemClick={({ e, item: { item } }) => handleNavBarClick(e, item)}\n getItemIconRight={({ item }) =>\n getItemSubMenu(item) ? IconArrowRight : undefined\n }\n />\n )}\n <div className={cnMegaMenu('Wrapper')}>\n {depth >= 2 && (\n <MegaMenuGlobal\n className={cnMegaMenu('GlobalMenu')}\n items={items}\n groups={groups}\n title={\n menuTitle ?? (activeItem ? getItemLabel(activeItem) : undefined)\n }\n getGroupKey={({ item }) => getItemKey(item)}\n getGroupLabel={({ item }) => getItemLabel(item)}\n getItemAs={({ item }) => getItemAs(item)}\n getItemAttributes={({ item }) => getItemAttributes(item)}\n getItemGroupId={({ groupId }) => groupId}\n getItemLabel={({ item }) => getItemLabel(item)}\n getItemOnClick={({ item }) => getItemOnClick(item)}\n getGroupOnClick={({ item }) => getItemOnClick(item)}\n onGroupClick={\n onItemClickProp\n ? ({ e, group: { item } }) => {\n onItemClickProp?.({ e, item });\n }\n : undefined\n }\n onItemClick={\n onItemClickProp\n ? ({ e, item: { item } }) => onItemClickProp?.({ e, item })\n : undefined\n }\n maxElements={menuMaxElements}\n showButtonText={menuShowButtonText}\n hideButtonText={menuHideButtonText}\n />\n )}\n {banners && (\n <MegaMenuBannerBar\n className={cnMegaMenu('BannerBar')}\n items={banners}\n view={bannerPosition === 'right' ? 'vertical' : 'horizontal'}\n onItemClick={onBannerClick}\n getItemAs={getBannerAs}\n getItemAttributes={getBannerAttributes}\n getItemDescription={getBannerDescription}\n getItemImage={getBannerImage}\n getItemLabel={getBannerLabel}\n getItemOnClick={getBannerOnClick}\n />\n )}\n </div>\n </div>\n );\n};\n\nexport * from './types';\n"],"mappings":"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"}
@@ -0,0 +1 @@
1
+ .che--MegaMenuBannerBar{align-items:flex-start;background:var(--color-bg-secondary);box-sizing:border-box;display:flex;flex-direction:var(--banner-bar-direction);gap:var(--space-m);justify-content:flex-start;overflow:auto}.che--MegaMenuBannerBar_view_horizontal{--banner-bar-direction:row}.che--MegaMenuBannerBar_view_vertical{--banner-bar-direction:column}
@@ -0,0 +1,3 @@
1
+ import './MegaMenuBannerBar.css';
2
+ import { MegaMenuBannerBarComponent } from './types';
3
+ export declare const MegaMenuBannerBar: MegaMenuBannerBarComponent;
@@ -0,0 +1,2 @@
1
+ import _objectWithoutProperties from"@babel/runtime/helpers/objectWithoutProperties";const _excluded=["items","getItemAs","getItemAttributes","getItemDescription","getItemImage","getItemLabel","getItemOnClick","onItemClick","className","view"];import"./MegaMenuBannerBar.css";import{cnMixSpace}from"@consta/uikit/MixSpace";import React,{forwardRef}from"react";import{getItemClick}from"../../../helpers/getItemClick";import{cn}from"../../../utils/bem";import{withDefaultGetters}from"./helpers";import{MegaMenuBannerBarItem}from"./MegaMenuBannerBarItem";const cnMegaMenuBannerBar=cn("MegaMenuBannerBar"),MegaMenuBannerBarRender=(a,b)=>{const c=withDefaultGetters(a),{items:d,getItemAs:e,getItemAttributes:f,getItemDescription:g,getItemImage:h,getItemLabel:i,getItemOnClick:j,onItemClick:k,className:l,view:m="vertical"}=c,n=_objectWithoutProperties(c,_excluded);return React.createElement("div",Object.assign({className:cnMegaMenuBannerBar({view:m},[l,cnMixSpace({pV:"horizontal"===m?"xl":"2xl",pH:"horizontal"===m?"2xl":"xl"})])},n,{ref:b}),d.map((a,b)=>{var c;return React.createElement(MegaMenuBannerBarItem,Object.assign({key:cnMegaMenuBannerBar("Item",{index:b}),label:i(a),description:g(a),image:h(a),as:e(a),onClick:getItemClick(a,j,k),view:m},null!==(c=f(a))&&void 0!==c?c:{}))}))};export const MegaMenuBannerBar=forwardRef(MegaMenuBannerBarRender);
2
+ //# sourceMappingURL=MegaMenuBannerBar.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"MegaMenuBannerBar.js","names":["cnMixSpace","React","forwardRef","getItemClick","cn","withDefaultGetters","MegaMenuBannerBarItem","cnMegaMenuBannerBar","MegaMenuBannerBarRender","props","ref","c","items","getItemAs","getItemAttributes","getItemDescription","getItemImage","getItemLabel","getItemOnClick","onItemClick","className","view","otherProps","_objectWithoutProperties","_excluded","createElement","Object","assign","pV","pH","map","item","index","key","label","description","image","as","onClick","MegaMenuBannerBar"],"sources":["../../../../../../src/components/MegaMenu/MegaMenuBannerBar/MegaMenuBannerBar.tsx"],"sourcesContent":["import './MegaMenuBannerBar.css';\n\nimport { cnMixSpace } from '@consta/uikit/MixSpace';\nimport React, { forwardRef } from 'react';\n\nimport { getItemClick } from '##/helpers/getItemClick';\nimport { cn } from '##/utils/bem';\n\nimport { withDefaultGetters } from './helpers';\nimport { MegaMenuBannerBarItem } from './MegaMenuBannerBarItem';\nimport { MegaMenuBannerBarComponent, MegaMenuBannerBarProps } from './types';\n\nconst cnMegaMenuBannerBar = cn('MegaMenuBannerBar');\n\nconst MegaMenuBannerBarRender = (\n props: MegaMenuBannerBarProps,\n ref: React.Ref<HTMLDivElement>,\n) => {\n const {\n items,\n getItemAs,\n getItemAttributes,\n getItemDescription,\n getItemImage,\n getItemLabel,\n getItemOnClick,\n onItemClick,\n className,\n view = 'vertical',\n ...otherProps\n } = withDefaultGetters(props);\n\n return (\n <div\n className={cnMegaMenuBannerBar({ view }, [\n className,\n cnMixSpace({\n pV: view === 'horizontal' ? 'xl' : '2xl',\n pH: view === 'horizontal' ? '2xl' : 'xl',\n }),\n ])}\n {...otherProps}\n ref={ref}\n >\n {items.map((item, index) => (\n <MegaMenuBannerBarItem\n key={cnMegaMenuBannerBar('Item', { index })}\n label={getItemLabel(item)}\n description={getItemDescription(item)}\n image={getItemImage(item)}\n as={getItemAs(item)}\n onClick={getItemClick(item, getItemOnClick, onItemClick)}\n view={view}\n {...(getItemAttributes(item) ?? {})}\n />\n ))}\n </div>\n );\n};\n\nexport const MegaMenuBannerBar = forwardRef(\n MegaMenuBannerBarRender,\n) as MegaMenuBannerBarComponent;\n"],"mappings":"oPAAA,gCAEA,OAASA,UAAU,KAAQ,wBAAwB,CACnD,MAAO,CAAAC,KAAK,EAAIC,UAAU,KAAQ,OAAO,CAEzC,OAASC,YAAY,qCACrB,OAASC,EAAE,0BAEX,OAASC,kBAAkB,iBAC3B,OAASC,qBAAqB,+BAAkC,KAG1D,CAAAC,mBAAmB,CAAGH,EAAE,CAAC,mBAAmB,CAAC,CAE7CI,uBAAuB,CAAGA,CAC9BC,CAA6B,CAC7BC,CAA8B,GAC3B,CACH,MAAAC,CAAA,CAYIN,kBAAkB,CAACI,CAAK,CAAC,CAZvB,CACJG,KAAK,CAALA,CAAK,CACLC,SAAS,CAATA,CAAS,CACTC,iBAAiB,CAAjBA,CAAiB,CACjBC,kBAAkB,CAAlBA,CAAkB,CAClBC,YAAY,CAAZA,CAAY,CACZC,YAAY,CAAZA,CAAY,CACZC,cAAc,CAAdA,CAAc,CACdC,WAAW,CAAXA,CAAW,CACXC,SAAS,CAATA,CAAS,CACTC,IAAI,CAAJA,CAAI,CAAG,UAET,CAAC,CAAAV,CAAA,CADIW,CAAU,CAAAC,wBAAA,CAAAZ,CAAA,CAAAa,SAAA,EAGf,MACE,CAAAvB,KAAA,CAAAwB,aAAA,OAAAC,MAAA,CAAAC,MAAA,EACEP,SAAS,CAAEb,mBAAmB,CAAC,CAAEc,IAAI,CAAJA,CAAK,CAAC,CAAE,CACvCD,CAAS,CACTpB,UAAU,CAAC,CACT4B,EAAE,CAAW,YAAY,GAArBP,CAAqB,CAAG,IAAI,CAAG,KAAK,CACxCQ,EAAE,CAAW,YAAY,GAArBR,CAAqB,CAAG,KAAK,CAAG,IACtC,CAAC,CAAC,CACH,CAAE,EACCC,CAAU,EACdZ,GAAG,CAAEA,CAAI,GAERE,CAAK,CAACkB,GAAG,CAAC,CAACC,CAAI,CAAEC,CAAK,QAAArB,CAAA,OACrB,CAAAV,KAAA,CAAAwB,aAAA,CAACnB,qBAAqB,CAAAoB,MAAA,CAAAC,MAAA,EACpBM,GAAG,CAAE1B,mBAAmB,CAAC,MAAM,CAAE,CAAEyB,KAAK,CAALA,CAAM,CAAC,CAAE,CAC5CE,KAAK,CAAEjB,CAAY,CAACc,CAAI,CAAE,CAC1BI,WAAW,CAAEpB,CAAkB,CAACgB,CAAI,CAAE,CACtCK,KAAK,CAAEpB,CAAY,CAACe,CAAI,CAAE,CAC1BM,EAAE,CAAExB,CAAS,CAACkB,CAAI,CAAE,CACpBO,OAAO,CAAEnC,YAAY,CAAC4B,CAAI,CAAEb,CAAc,CAAEC,CAAW,CAAE,CACzDE,IAAI,CAAEA,CAAK,UAAAV,CAAA,CACNG,CAAiB,CAACiB,CAAI,CAAC,YAAApB,CAAA,CAAAA,CAAA,CAAI,CAAC,CAAC,CACnC,CAAC,CACH,CACE,CAET,CAAC,CAED,MAAO,MAAM,CAAA4B,iBAAiB,CAAGrC,UAAU,CACzCM,uBACF,CAA+B"}
@@ -0,0 +1 @@
1
+ .che--MegaMenuBannerBarItem{align-items:flex-start;background:var(--color-bg-default);display:flex;flex-direction:var(--banner-bar-item-direction);gap:var(--space-m);justify-content:flex-start}.che--MegaMenuBannerBarItem_view_vertical{--banner-bar-item-direction:column;width:100%}.che--MegaMenuBannerBarItem_view_horizontal{--banner-bar-item-direction:row;height:100%}.che--MegaMenuBannerBarItem-Image{height:100%;max-height:195px;max-width:256px;object-fit:cover;overflow:hidden;width:100%}.che--MegaMenuBannerBarItem-ImageContainer{border-radius:var(--control-radius);max-height:100%;max-width:100%;overflow:hidden}.che--MegaMenuBannerBarItem-Content{align-items:flex-start;display:flex;flex-direction:column;gap:var(--space-xs);justify-content:flex-start;max-width:260px;width:100%}.che--MegaMenuBannerBarItem-Description{word-wrap:break-word;-webkit-line-clamp:2;-webkit-box-orient:vertical;display:block;display:-webkit-box;max-height:3em;overflow:hidden;text-overflow:ellipsis}.che--MegaMenuBannerBarItem-Button.Button{margin-top:var(--space-xs);padding:0}.che--MegaMenuBannerBarItem-Button.Button:hover{background-color:transparent;color:var(--color-control-bg-primary)}
@@ -0,0 +1,3 @@
1
+ import './MegaMenuBannerBarItem.css';
2
+ import { MegaMenuBannerBarItemComponent } from '../types';
3
+ export declare const MegaMenuBannerBarItem: MegaMenuBannerBarItemComponent;
@@ -0,0 +1,2 @@
1
+ import _objectWithoutProperties from"@babel/runtime/helpers/objectWithoutProperties";const _excluded=["label","description","image","onClick","as","className","view"];import"./MegaMenuBannerBarItem.css";import{IconForward}from"@consta/icons/IconForward";import{Button}from"@consta/uikit/Button";import{cnMixCard}from"@consta/uikit/MixCard";import{Text}from"@consta/uikit/Text";import React,{forwardRef}from"react";import{cn}from"../../../../utils/bem";const cnMegaMenuBannerBarItem=cn("MegaMenuBannerBarItem"),MegaMenuBannerBarItemRender=(a,b)=>{const{label:c,description:d,image:e,onClick:f,as:h="div",className:g,view:i="vertical"}=a,j=_objectWithoutProperties(a,_excluded);return React.createElement(h,Object.assign({className:cnMegaMenuBannerBarItem({view:i},[g,cnMixCard({verticalSpace:"l",horizontalSpace:"l",shadow:!0,form:"round"})]),ref:b},j),e&&React.createElement("div",{className:cnMegaMenuBannerBarItem("ImageContainer")},React.createElement("img",{className:cnMegaMenuBannerBarItem("Image"),alt:c,src:e})),React.createElement("div",{className:cnMegaMenuBannerBarItem("Content")},React.createElement(Text,{weight:"semibold",size:"m",lineHeight:"m",className:cnMegaMenuBannerBarItem("Title")},c),d&&React.createElement(Text,{className:cnMegaMenuBannerBarItem("Description"),size:"m",lineHeight:"m"},d),React.createElement(Button,{className:cnMegaMenuBannerBarItem("Button"),label:"\u041F\u043E\u0434\u0440\u043E\u0431\u043D\u0435\u0435",iconRight:IconForward,size:"s",view:"clear",onClick:f})))};export const MegaMenuBannerBarItem=forwardRef(MegaMenuBannerBarItemRender);
2
+ //# sourceMappingURL=MegaMenuBannerBarItem.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"MegaMenuBannerBarItem.js","names":["IconForward","Button","cnMixCard","Text","React","forwardRef","cn","cnMegaMenuBannerBarItem","MegaMenuBannerBarItemRender","props","ref","label","description","image","onClick","as","Tag","className","view","otherProps","_objectWithoutProperties","_excluded","createElement","h","Object","assign","verticalSpace","horizontalSpace","shadow","form","alt","src","weight","size","lineHeight","iconRight","MegaMenuBannerBarItem"],"sources":["../../../../../../../src/components/MegaMenu/MegaMenuBannerBar/MegaMenuBannerBarItem/MegaMenuBannerBarItem.tsx"],"sourcesContent":["import './MegaMenuBannerBarItem.css';\n\nimport { IconForward } from '@consta/icons/IconForward';\nimport { Button } from '@consta/uikit/Button';\nimport { cnMixCard } from '@consta/uikit/MixCard';\nimport { Text } from '@consta/uikit/Text';\nimport React, { forwardRef } from 'react';\n\nimport { cn } from '##/utils/bem';\n\nimport {\n MegaMenuBannerBarItemComponent,\n MegaMenuBannerBarItemProps,\n} from '../types';\n\nconst cnMegaMenuBannerBarItem = cn('MegaMenuBannerBarItem');\n\nconst MegaMenuBannerBarItemRender = (\n props: MegaMenuBannerBarItemProps,\n ref: React.Ref<HTMLDivElement>,\n) => {\n const {\n label,\n description,\n image,\n onClick,\n as: Tag = 'div',\n className,\n view = 'vertical',\n ...otherProps\n } = props;\n\n return (\n <Tag\n className={cnMegaMenuBannerBarItem({ view }, [\n className,\n cnMixCard({\n verticalSpace: 'l',\n horizontalSpace: 'l',\n shadow: true,\n form: 'round',\n }),\n ])}\n ref={ref}\n {...otherProps}\n >\n {image && (\n <div className={cnMegaMenuBannerBarItem('ImageContainer')}>\n <img\n className={cnMegaMenuBannerBarItem('Image')}\n alt={label}\n src={image}\n />\n </div>\n )}\n <div className={cnMegaMenuBannerBarItem('Content')}>\n <Text\n weight=\"semibold\"\n size=\"m\"\n lineHeight=\"m\"\n className={cnMegaMenuBannerBarItem('Title')}\n >\n {label}\n </Text>\n {description && (\n <Text\n className={cnMegaMenuBannerBarItem('Description')}\n size=\"m\"\n lineHeight=\"m\"\n >\n {description}\n </Text>\n )}\n <Button\n className={cnMegaMenuBannerBarItem('Button')}\n label=\"Подробнее\"\n iconRight={IconForward}\n size=\"s\"\n view=\"clear\"\n onClick={onClick}\n />\n </div>\n </Tag>\n );\n};\n\nexport const MegaMenuBannerBarItem = forwardRef(\n MegaMenuBannerBarItemRender,\n) as MegaMenuBannerBarItemComponent;\n"],"mappings":"uKAAA,oCAEA,OAASA,WAAW,KAAQ,2BAA2B,CACvD,OAASC,MAAM,KAAQ,sBAAsB,CAC7C,OAASC,SAAS,KAAQ,uBAAuB,CACjD,OAASC,IAAI,KAAQ,oBAAoB,CACzC,MAAO,CAAAC,KAAK,EAAIC,UAAU,KAAQ,OAAO,CAEzC,OAASC,EAAE,6BAAuB,KAO5B,CAAAC,uBAAuB,CAAGD,EAAE,CAAC,uBAAuB,CAAC,CAErDE,2BAA2B,CAAGA,CAClCC,CAAiC,CACjCC,CAA8B,GAC3B,CACH,KAAM,CACJC,KAAK,CAALA,CAAK,CACLC,WAAW,CAAXA,CAAW,CACXC,KAAK,CAALA,CAAK,CACLC,OAAO,CAAPA,CAAO,CACPC,EAAE,CAAEC,CAAG,CAAG,KAAK,CACfC,SAAS,CAATA,CAAS,CACTC,IAAI,CAAJA,CAAI,CAAG,UAET,CAAC,CAAGT,CAAK,CADJU,CAAU,CAAAC,wBAAA,CACXX,CAAK,CAAAY,SAAA,EAET,MACE,CAAAjB,KAAA,CAAAkB,aAAA,CAACC,CAAG,CAAAC,MAAA,CAAAC,MAAA,EACFR,SAAS,CAAEV,uBAAuB,CAAC,CAAEW,IAAI,CAAJA,CAAK,CAAC,CAAE,CAC3CD,CAAS,CACTf,SAAS,CAAC,CACRwB,aAAa,CAAE,GAAG,CAClBC,eAAe,CAAE,GAAG,CACpBC,MAAM,GAAM,CACZC,IAAI,CAAE,OACR,CAAC,CAAC,CACH,CAAE,CACHnB,GAAG,CAAEA,CAAI,EACLS,CAAU,EAEbN,CAAK,EACJT,KAAA,CAAAkB,aAAA,QAAKL,SAAS,CAAEV,uBAAuB,CAAC,gBAAgB,CAAE,EACxDH,KAAA,CAAAkB,aAAA,QACEL,SAAS,CAAEV,uBAAuB,CAAC,OAAO,CAAE,CAC5CuB,GAAG,CAAEnB,CAAM,CACXoB,GAAG,CAAElB,CAAM,CACZ,CACE,CACN,CACDT,KAAA,CAAAkB,aAAA,QAAKL,SAAS,CAAEV,uBAAuB,CAAC,SAAS,CAAE,EACjDH,KAAA,CAAAkB,aAAA,CAACnB,IAAI,EACH6B,MAAM,CAAC,UAAU,CACjBC,IAAI,CAAC,GAAG,CACRC,UAAU,CAAC,GAAG,CACdjB,SAAS,CAAEV,uBAAuB,CAAC,OAAO,CAAE,EAE3CI,CACG,CAAC,CACNC,CAAW,EACVR,KAAA,CAAAkB,aAAA,CAACnB,IAAI,EACHc,SAAS,CAAEV,uBAAuB,CAAC,aAAa,CAAE,CAClD0B,IAAI,CAAC,GAAG,CACRC,UAAU,CAAC,GAAG,EAEbtB,CACG,CACP,CACDR,KAAA,CAAAkB,aAAA,CAACrB,MAAM,EACLgB,SAAS,CAAEV,uBAAuB,CAAC,QAAQ,CAAE,CAC7CI,KAAK,CAAC,wDAAW,CACjBwB,SAAS,CAAEnC,WAAY,CACvBiC,IAAI,CAAC,GAAG,CACRf,IAAI,CAAC,OAAO,CACZJ,OAAO,CAAEA,CAAQ,CAClB,CACE,CACF,CAET,CAAC,CAED,MAAO,MAAM,CAAAsB,qBAAqB,CAAG/B,UAAU,CAC7CG,2BACF,CAAmC"}
@@ -0,0 +1 @@
1
+ export * from './MegaMenuBannerBarItem';
@@ -0,0 +1,2 @@
1
+ export*from"./MegaMenuBannerBarItem";
2
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","names":[],"sources":["../../../../../../../src/components/MegaMenu/MegaMenuBannerBar/MegaMenuBannerBarItem/index.ts"],"sourcesContent":["export * from './MegaMenuBannerBarItem';\n"],"mappings":"AAAA"}
@@ -1,15 +1,15 @@
1
1
  /// <reference types="react" />
2
- import { BannerBarDefaultItem, BannerBarPropGetItemAs, BannerBarPropGetItemAttributes, BannerBarPropGetItemDescription, BannerBarPropGetItemImage, BannerBarPropGetItemLabel, BannerBarPropGetItemOnClick, BannerBarProps } from './types';
3
- export declare const withDefaultGetters: <ITEM>(props: BannerBarProps<ITEM>) => {
4
- getItemLabel: BannerBarPropGetItemLabel<BannerBarDefaultItem> | BannerBarPropGetItemLabel<ITEM>;
5
- getItemDescription: BannerBarPropGetItemDescription<BannerBarDefaultItem> | BannerBarPropGetItemDescription<ITEM>;
6
- getItemOnClick: BannerBarPropGetItemOnClick<BannerBarDefaultItem> | BannerBarPropGetItemOnClick<ITEM>;
7
- getItemImage: BannerBarPropGetItemImage<BannerBarDefaultItem> | BannerBarPropGetItemImage<ITEM>;
8
- getItemAs: BannerBarPropGetItemAs<BannerBarDefaultItem> | BannerBarPropGetItemAs<ITEM>;
9
- getItemAttributes: BannerBarPropGetItemAttributes<BannerBarDefaultItem> | BannerBarPropGetItemAttributes<ITEM>;
2
+ import { MegaMenuBannerBarDefaultItem, MegaMenuBannerBarPropGetItemAs, MegaMenuBannerBarPropGetItemAttributes, MegaMenuBannerBarPropGetItemDescription, MegaMenuBannerBarPropGetItemImage, MegaMenuBannerBarPropGetItemLabel, MegaMenuBannerBarPropGetItemOnClick, MegaMenuBannerBarProps } from './types';
3
+ export declare const withDefaultGetters: <ITEM>(props: MegaMenuBannerBarProps<ITEM>) => {
4
+ getItemLabel: MegaMenuBannerBarPropGetItemLabel<MegaMenuBannerBarDefaultItem> | MegaMenuBannerBarPropGetItemLabel<ITEM>;
5
+ getItemDescription: MegaMenuBannerBarPropGetItemDescription<MegaMenuBannerBarDefaultItem> | MegaMenuBannerBarPropGetItemDescription<ITEM>;
6
+ getItemOnClick: MegaMenuBannerBarPropGetItemOnClick<MegaMenuBannerBarDefaultItem> | MegaMenuBannerBarPropGetItemOnClick<ITEM>;
7
+ getItemImage: MegaMenuBannerBarPropGetItemImage<MegaMenuBannerBarDefaultItem> | MegaMenuBannerBarPropGetItemImage<ITEM>;
8
+ getItemAs: MegaMenuBannerBarPropGetItemAs<MegaMenuBannerBarDefaultItem> | MegaMenuBannerBarPropGetItemAs<ITEM>;
9
+ getItemAttributes: MegaMenuBannerBarPropGetItemAttributes<MegaMenuBannerBarDefaultItem> | MegaMenuBannerBarPropGetItemAttributes<ITEM>;
10
10
  items: ITEM[];
11
- onItemClick?: import("./types").BannerBarPropOnItemClick<ITEM> | undefined;
12
- view?: import("./types").BannerBarPropView | undefined;
11
+ onItemClick?: import("./types").MegaMenuBannerBarPropOnItemClick<ITEM> | undefined;
12
+ view?: import("./types").MegaMenuBannerBarPropView | undefined;
13
13
  defaultChecked?: boolean | undefined;
14
14
  defaultValue?: string | number | readonly string[] | undefined;
15
15
  suppressContentEditableWarning?: boolean | undefined;
@@ -0,0 +1 @@
1
+ {"version":3,"file":"helpers.js","names":["defaultGetItemLabel","item","label","defaultGetItemDescription","description","defaultGetItemOnClick","onClick","defaultGetItemImage","image","defaultGetItemAs","as","defaultGetItemAttributes","attributes","withDefaultGetters","props","_objectSpread","getItemLabel","getItemDescription","getItemOnClick","getItemImage","getItemAs","getItemAttributes"],"sources":["../../../../../../src/components/MegaMenu/MegaMenuBannerBar/helpers.ts"],"sourcesContent":["import {\n MegaMenuBannerBarDefaultItem,\n MegaMenuBannerBarPropGetItemAs,\n MegaMenuBannerBarPropGetItemAttributes,\n MegaMenuBannerBarPropGetItemDescription,\n MegaMenuBannerBarPropGetItemImage,\n MegaMenuBannerBarPropGetItemLabel,\n MegaMenuBannerBarPropGetItemOnClick,\n MegaMenuBannerBarProps,\n} from './types';\n\nconst defaultGetItemLabel: MegaMenuBannerBarPropGetItemLabel<\n MegaMenuBannerBarDefaultItem\n> = (item) => item.label;\nconst defaultGetItemDescription: MegaMenuBannerBarPropGetItemDescription<\n MegaMenuBannerBarDefaultItem\n> = (item) => item.description;\nconst defaultGetItemOnClick: MegaMenuBannerBarPropGetItemOnClick<\n MegaMenuBannerBarDefaultItem\n> = (item) => item.onClick;\nconst defaultGetItemImage: MegaMenuBannerBarPropGetItemImage<\n MegaMenuBannerBarDefaultItem\n> = (item) => item.image;\nconst defaultGetItemAs: MegaMenuBannerBarPropGetItemAs<\n MegaMenuBannerBarDefaultItem\n> = (item) => item.as;\nconst defaultGetItemAttributes: MegaMenuBannerBarPropGetItemAttributes<\n MegaMenuBannerBarDefaultItem\n> = (item) => item.attributes;\n\nexport const withDefaultGetters = <ITEM>(\n props: MegaMenuBannerBarProps<ITEM>,\n) => {\n return {\n ...props,\n getItemLabel: props.getItemLabel || defaultGetItemLabel,\n getItemDescription: props.getItemDescription || defaultGetItemDescription,\n getItemOnClick: props.getItemOnClick || defaultGetItemOnClick,\n getItemImage: props.getItemImage || defaultGetItemImage,\n getItemAs: props.getItemAs || defaultGetItemAs,\n getItemAttributes: props.getItemAttributes || defaultGetItemAttributes,\n };\n};\n"],"mappings":"0qBAWM,CAAAA,mBAEL,CAAIC,CAAI,EAAKA,CAAI,CAACC,KAAK,CAClBC,yBAEL,CAAIF,CAAI,EAAKA,CAAI,CAACG,WAAW,CACxBC,qBAEL,CAAIJ,CAAI,EAAKA,CAAI,CAACK,OAAO,CACpBC,mBAEL,CAAIN,CAAI,EAAKA,CAAI,CAACO,KAAK,CAClBC,gBAEL,CAAIR,CAAI,EAAKA,CAAI,CAACS,EAAE,CACfC,wBAEL,CAAIV,CAAI,EAAKA,CAAI,CAACW,UAAU,CAE7B,MAAO,MAAM,CAAAC,kBAAkB,CAC7BC,CAAmC,EAAAC,aAAA,CAAAA,aAAA,IAG9BD,CAAK,MACRE,YAAY,CAAEF,CAAK,CAACE,YAAY,EAAIhB,mBAAmB,CACvDiB,kBAAkB,CAAEH,CAAK,CAACG,kBAAkB,EAAId,yBAAyB,CACzEe,cAAc,CAAEJ,CAAK,CAACI,cAAc,EAAIb,qBAAqB,CAC7Dc,YAAY,CAAEL,CAAK,CAACK,YAAY,EAAIZ,mBAAmB,CACvDa,SAAS,CAAEN,CAAK,CAACM,SAAS,EAAIX,gBAAgB,CAC9CY,iBAAiB,CAAEP,CAAK,CAACO,iBAAiB,EAAIV,wBAAwB,EAEzE"}
@@ -0,0 +1,3 @@
1
+ export * from './MegaMenuBannerBar';
2
+ export * from './MegaMenuBannerBar';
3
+ export * from './types';
@@ -0,0 +1,2 @@
1
+ export*from"./MegaMenuBannerBar";export*from"./MegaMenuBannerBar";export*from"./types";
2
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","names":[],"sources":["../../../../../../src/components/MegaMenu/MegaMenuBannerBar/index.ts"],"sourcesContent":["export * from './MegaMenuBannerBar';\nexport * from './MegaMenuBannerBar';\nexport * from './types';\n"],"mappings":"AAAA,iCACA,iCACA"}
@@ -0,0 +1,42 @@
1
+ import { PropsWithAsAttributes } from '@consta/uikit/__internal__/src/utils/types/PropsWithAsAttributes';
2
+ import React from 'react';
3
+ import { PropsWithHTMLAttributesAndRef } from "../../../utils/types/PropsWithHTMLAttributes";
4
+ export type MegaMenuBannerBarDefaultItem = {
5
+ onClick?: React.MouseEventHandler;
6
+ label: string;
7
+ description?: string;
8
+ image?: string;
9
+ as?: keyof JSX.IntrinsicElements;
10
+ attributes?: JSX.IntrinsicElements[keyof JSX.IntrinsicElements];
11
+ };
12
+ export type MegaMenuBannerBarPropView = 'vertical' | 'horizontal';
13
+ export type MegaMenuBannerBarPropGetItemLabel<ITEM> = (item: ITEM) => string;
14
+ export type MegaMenuBannerBarPropGetItemDescription<ITEM> = (item: ITEM) => string | undefined;
15
+ export type MegaMenuBannerBarPropGetItemImage<ITEM> = (item: ITEM) => string | undefined;
16
+ export type MegaMenuBannerBarPropGetItemOnClick<ITEM> = (item: ITEM) => React.MouseEventHandler | undefined;
17
+ export type MegaMenuBannerBarPropGetItemAs<ITEM> = (item: ITEM) => keyof JSX.IntrinsicElements | undefined;
18
+ export type MegaMenuBannerBarPropGetItemAttributes<ITEM> = (item: ITEM) => JSX.IntrinsicElements[keyof JSX.IntrinsicElements] | undefined;
19
+ export type MegaMenuBannerBarPropOnItemClick<ITEM> = (params: {
20
+ e: React.MouseEvent;
21
+ item: ITEM;
22
+ }) => void;
23
+ export type MegaMenuBannerBarProps<ITEM = MegaMenuBannerBarDefaultItem> = PropsWithHTMLAttributesAndRef<{
24
+ items: ITEM[];
25
+ getItemLabel?: MegaMenuBannerBarPropGetItemLabel<ITEM>;
26
+ getItemDescription?: MegaMenuBannerBarPropGetItemDescription<ITEM>;
27
+ getItemImage?: MegaMenuBannerBarPropGetItemImage<ITEM>;
28
+ getItemOnClick?: MegaMenuBannerBarPropGetItemOnClick<ITEM>;
29
+ getItemAs?: MegaMenuBannerBarPropGetItemAs<ITEM>;
30
+ getItemAttributes?: MegaMenuBannerBarPropGetItemAttributes<ITEM>;
31
+ onItemClick?: MegaMenuBannerBarPropOnItemClick<ITEM>;
32
+ view?: MegaMenuBannerBarPropView;
33
+ }, HTMLDivElement>;
34
+ export type MegaMenuBannerBarComponent = <ITEM = MegaMenuBannerBarDefaultItem>(props: MegaMenuBannerBarProps<ITEM>, ref: React.Ref<HTMLDivElement>) => React.ReactElement | null;
35
+ export type MegaMenuBannerBarItemProps<AS extends keyof JSX.IntrinsicElements = 'div'> = PropsWithAsAttributes<{
36
+ label: string;
37
+ description?: string;
38
+ image?: string;
39
+ onClick?: React.MouseEventHandler;
40
+ view?: MegaMenuBannerBarPropView;
41
+ }, AS>;
42
+ export type MegaMenuBannerBarItemComponent = <AS extends keyof JSX.IntrinsicElements = 'div'>(props: MegaMenuBannerBarItemProps<AS>, ref: React.Ref<HTMLElement>) => React.ReactElement | null;
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.js","names":[],"sources":["../../../../../../src/components/MegaMenu/MegaMenuBannerBar/types.ts"],"sourcesContent":["import { PropsWithAsAttributes } from '@consta/uikit/__internal__/src/utils/types/PropsWithAsAttributes';\nimport React from 'react';\n\nimport { PropsWithHTMLAttributesAndRef } from '##/utils/types/PropsWithHTMLAttributes';\n\nexport type MegaMenuBannerBarDefaultItem = {\n onClick?: React.MouseEventHandler;\n label: string;\n description?: string;\n image?: string;\n as?: keyof JSX.IntrinsicElements;\n attributes?: JSX.IntrinsicElements[keyof JSX.IntrinsicElements];\n};\n\nexport type MegaMenuBannerBarPropView = 'vertical' | 'horizontal';\n\nexport type MegaMenuBannerBarPropGetItemLabel<ITEM> = (item: ITEM) => string;\nexport type MegaMenuBannerBarPropGetItemDescription<ITEM> = (\n item: ITEM,\n) => string | undefined;\nexport type MegaMenuBannerBarPropGetItemImage<ITEM> = (\n item: ITEM,\n) => string | undefined;\nexport type MegaMenuBannerBarPropGetItemOnClick<ITEM> = (\n item: ITEM,\n) => React.MouseEventHandler | undefined;\nexport type MegaMenuBannerBarPropGetItemAs<ITEM> = (\n item: ITEM,\n) => keyof JSX.IntrinsicElements | undefined;\nexport type MegaMenuBannerBarPropGetItemAttributes<ITEM> = (\n item: ITEM,\n) => JSX.IntrinsicElements[keyof JSX.IntrinsicElements] | undefined;\n\nexport type MegaMenuBannerBarPropOnItemClick<ITEM> = (params: {\n e: React.MouseEvent;\n item: ITEM;\n}) => void;\n\nexport type MegaMenuBannerBarProps<ITEM = MegaMenuBannerBarDefaultItem> =\n PropsWithHTMLAttributesAndRef<\n {\n items: ITEM[];\n getItemLabel?: MegaMenuBannerBarPropGetItemLabel<ITEM>;\n getItemDescription?: MegaMenuBannerBarPropGetItemDescription<ITEM>;\n getItemImage?: MegaMenuBannerBarPropGetItemImage<ITEM>;\n getItemOnClick?: MegaMenuBannerBarPropGetItemOnClick<ITEM>;\n getItemAs?: MegaMenuBannerBarPropGetItemAs<ITEM>;\n getItemAttributes?: MegaMenuBannerBarPropGetItemAttributes<ITEM>;\n onItemClick?: MegaMenuBannerBarPropOnItemClick<ITEM>;\n view?: MegaMenuBannerBarPropView;\n },\n HTMLDivElement\n >;\n\nexport type MegaMenuBannerBarComponent = <ITEM = MegaMenuBannerBarDefaultItem>(\n props: MegaMenuBannerBarProps<ITEM>,\n ref: React.Ref<HTMLDivElement>,\n) => React.ReactElement | null;\n\nexport type MegaMenuBannerBarItemProps<\n AS extends keyof JSX.IntrinsicElements = 'div',\n> = PropsWithAsAttributes<\n {\n label: string;\n description?: string;\n image?: string;\n onClick?: React.MouseEventHandler;\n view?: MegaMenuBannerBarPropView;\n },\n AS\n>;\n\nexport type MegaMenuBannerBarItemComponent = <\n AS extends keyof JSX.IntrinsicElements = 'div',\n>(\n props: MegaMenuBannerBarItemProps<AS>,\n ref: React.Ref<HTMLElement>,\n) => React.ReactElement | null;\n"],"mappings":""}
@@ -1 +1 @@
1
- {"version":3,"file":"MegaMenuBox.js","names":["PortalWithTheme","usePortalContext","useTheme","useClickOutside","React","useMemo","useRef","Transition","cn","cnMegaMenuBox","ContextConsumer","onClickOutside","children","ignoreClicksInsideRefs","refs","isActive","handler","MegaMenuBox","props","isOpen","onEsc","offset","offsetProp","style","anchorRef","className","maxContentWidth","otherProps","containerRef","menuRef","theme","current","offsetTop","offsetHeight","animate"],"sources":["../../../../../../src/components/MegaMenu/MegaMenuBox/MegaMenuBox.tsx"],"sourcesContent":["import './MegaMenuBox.css';\n\nimport {\n PortalWithTheme,\n usePortalContext,\n} from '@consta/uikit/PortalWithTheme';\nimport { useTheme } from '@consta/uikit/Theme';\nimport { useClickOutside } from '@consta/uikit/useClickOutside';\nimport React, { useMemo, useRef } from 'react';\nimport { Transition } from 'react-transition-group';\n\nimport { cn } from '##/utils/bem';\n\nimport { MegaMenuBoxProps } from './types';\n\nconst cnMegaMenuBox = cn('MegaMenuBox');\n\nconst ContextConsumer: React.FC<{\n onClickOutside?: (event: MouseEvent) => void;\n ignoreClicksInsideRefs?: ReadonlyArray<React.RefObject<HTMLElement>>;\n children: React.ReactNode;\n}> = ({ onClickOutside, children, ignoreClicksInsideRefs }) => {\n const { refs } = usePortalContext();\n\n useClickOutside({\n isActive: !!onClickOutside,\n ignoreClicksInsideRefs: [\n ...(ignoreClicksInsideRefs || []),\n ...(refs || []),\n ],\n handler: onClickOutside,\n });\n\n return children as React.ReactElement;\n};\n\nexport const MegaMenuBox = (props: MegaMenuBoxProps) => {\n const {\n isOpen,\n onClickOutside,\n onEsc,\n offset: offsetProp = 0,\n style,\n anchorRef,\n className,\n children,\n maxContentWidth,\n ...otherProps\n } = props;\n\n const containerRef = useRef<HTMLDivElement>(null);\n const menuRef = useRef<HTMLDivElement>(null);\n\n const { theme } = useTheme();\n\n const offset = useMemo(() => {\n return (\n (anchorRef?.current?.offsetTop ?? 0) +\n (anchorRef?.current?.offsetHeight ?? 0) +\n offsetProp\n );\n }, [offsetProp, anchorRef?.current]);\n\n return (\n <Transition in={isOpen} unmountOnExit timeout={240} nodeRef={containerRef}>\n {(animate) => (\n <PortalWithTheme\n preset={theme}\n style={{\n ['--mega-menu-offset' as string]: `${offset}px`,\n ...style,\n }}\n className={cnMegaMenuBox(null, [className])}\n ref={containerRef}\n {...otherProps}\n >\n <div className={cnMegaMenuBox('Overlay', { animate })} />\n <ContextConsumer\n onClickOutside={onClickOutside}\n ignoreClicksInsideRefs={[menuRef]}\n >\n <div ref={menuRef} className={cnMegaMenuBox('Window', { animate })}>\n <div\n className={cnMegaMenuBox('Wrapper')}\n style={{\n ['--mega-menu-content-width' as string]: maxContentWidth\n ? `${maxContentWidth}px`\n : '100%',\n }}\n >\n {children}\n </div>\n </div>\n </ContextConsumer>\n </PortalWithTheme>\n )}\n </Transition>\n );\n};\n"],"mappings":"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"}
1
+ {"version":3,"file":"MegaMenuBox.js","names":["PortalWithTheme","usePortalContext","useTheme","useClickOutside","React","useMemo","useRef","Transition","cn","cnMegaMenuBox","ContextConsumer","onClickOutside","children","ignoreClicksInsideRefs","refs","isActive","handler","MegaMenuBox","props","isOpen","onEsc","offset","offsetProp","style","anchorRef","className","maxContentWidth","otherProps","_objectWithoutProperties","_excluded","containerRef","menuRef","theme","a","b","c","d","current","offsetTop","offsetHeight","createElement","in","unmountOnExit","timeout","nodeRef","animate","Object","assign","preset","_objectSpread","\"--mega-menu-offset\"","ref","\"--mega-menu-content-width\""],"sources":["../../../../../../src/components/MegaMenu/MegaMenuBox/MegaMenuBox.tsx"],"sourcesContent":["import './MegaMenuBox.css';\n\nimport {\n PortalWithTheme,\n usePortalContext,\n} from '@consta/uikit/PortalWithTheme';\nimport { useTheme } from '@consta/uikit/Theme';\nimport { useClickOutside } from '@consta/uikit/useClickOutside';\nimport React, { useMemo, useRef } from 'react';\nimport { Transition } from 'react-transition-group';\n\nimport { cn } from '##/utils/bem';\n\nimport { MegaMenuBoxProps } from './types';\n\nconst cnMegaMenuBox = cn('MegaMenuBox');\n\nconst ContextConsumer: React.FC<{\n onClickOutside?: (event: MouseEvent) => void;\n ignoreClicksInsideRefs?: ReadonlyArray<React.RefObject<HTMLElement>>;\n children: React.ReactNode;\n}> = ({ onClickOutside, children, ignoreClicksInsideRefs }) => {\n const { refs } = usePortalContext();\n\n useClickOutside({\n isActive: !!onClickOutside,\n ignoreClicksInsideRefs: [\n ...(ignoreClicksInsideRefs || []),\n ...(refs || []),\n ],\n handler: onClickOutside,\n });\n\n return children as React.ReactElement;\n};\n\nexport const MegaMenuBox = (props: MegaMenuBoxProps) => {\n const {\n isOpen,\n onClickOutside,\n onEsc,\n offset: offsetProp = 0,\n style,\n anchorRef,\n className,\n children,\n maxContentWidth,\n ...otherProps\n } = props;\n\n const containerRef = useRef<HTMLDivElement>(null);\n const menuRef = useRef<HTMLDivElement>(null);\n\n const { theme } = useTheme();\n\n const offset = useMemo(() => {\n return (\n (anchorRef?.current?.offsetTop ?? 0) +\n (anchorRef?.current?.offsetHeight ?? 0) +\n offsetProp\n );\n }, [offsetProp, anchorRef?.current]);\n\n return (\n <Transition in={isOpen} unmountOnExit timeout={240} nodeRef={containerRef}>\n {(animate) => (\n <PortalWithTheme\n preset={theme}\n style={{\n ['--mega-menu-offset' as string]: `${offset}px`,\n ...style,\n }}\n className={cnMegaMenuBox(null, [className])}\n ref={containerRef}\n {...otherProps}\n >\n <div className={cnMegaMenuBox('Overlay', { animate })} />\n <ContextConsumer\n onClickOutside={onClickOutside}\n ignoreClicksInsideRefs={[menuRef]}\n >\n <div ref={menuRef} className={cnMegaMenuBox('Window', { animate })}>\n <div\n className={cnMegaMenuBox('Wrapper')}\n style={{\n ['--mega-menu-content-width' as string]: maxContentWidth\n ? `${maxContentWidth}px`\n : '100%',\n }}\n >\n {children}\n </div>\n </div>\n </ContextConsumer>\n </PortalWithTheme>\n )}\n </Transition>\n );\n};\n"],"mappings":"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"}
@@ -0,0 +1 @@
1
+ .che--MegaMenuGlobal{background:var(--color-bg-default);box-sizing:border-box;padding:var(--space-2xl) calc(var(--space-3xl)*1.5);width:100%}.che--MegaMenuGlobal-Content{display:grid;gap:var(--space-3xl);grid-template-columns:repeat(var(--global-menu-columns),1fr)}.che--MegaMenuGlobal-Column{display:flex;flex:1;flex-direction:column;gap:var(--space-3xl)}
@@ -0,0 +1,3 @@
1
+ import './MegaMenuGlobal.css';
2
+ import { MegaMenuGlobalComponent } from './types';
3
+ export declare const MegaMenuGlobal: MegaMenuGlobalComponent;