@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
@@ -1 +1 @@
1
- {"version":3,"file":"Menu.js","names":["Button","ContextMenu","IconMeatball","IconSelect","animateTimeout","useDebounce","useFlag","useHideElementsInLine","useMutableRef","React","forwardRef","useCallback","useEffect","useRef","useState","getItemClick","cn","withDefaultGetters","cnMenu","MenuRender","props","ref","items","className","width","getItemActive","getItemHref","getItemLabel","getItemOnClick","getItemTarget","getItemSubMenu","onItemClick","otherProps","openedSubMenu","setOpenedSubMenu","mouseOnMenu","setMouseOnMenu","visibleItems","itemsRefs","wrapperRef","hiddenItems","moreRef","moreButtonRef","getItemHrefRef","getItemTargetRef","getItemAs","item","current","getItemHTMLAttributes","href","target","elementZIndex","style","zIndex","off","on","map","index","label","active","Tag","subItems","opened","hidden","length","e","more","Menu"],"sources":["../../../../../src/components/Menu/Menu.tsx"],"sourcesContent":["import './Menu.css';\n\nimport { Button } from '@consta/uikit/Button';\nimport { ContextMenu } from '@consta/uikit/ContextMenu';\nimport { IconMeatball } from '@consta/uikit/IconMeatball';\nimport { IconSelect } from '@consta/uikit/IconSelect';\nimport { animateTimeout } from '@consta/uikit/MixPopoverAnimate';\nimport { useDebounce } from '@consta/uikit/useDebounce';\nimport { useFlag } from '@consta/uikit/useFlag';\nimport { useHideElementsInLine } from '@consta/uikit/useHideElementsInLine';\nimport { useMutableRef } from '@consta/uikit/useMutableRef';\nimport React, {\n forwardRef,\n useCallback,\n useEffect,\n useRef,\n useState,\n} from 'react';\n\nimport { getItemClick } from '##/helpers/getItemClick';\nimport { cn } from '##/utils/bem';\n\nimport { withDefaultGetters } from './helpers';\nimport { MenuComponent, MenuProps } from './types';\n\nexport const cnMenu = cn('Menu');\n\nconst MenuRender = (props: MenuProps, ref: React.Ref<HTMLDivElement>) => {\n const {\n items,\n className,\n width,\n getItemActive,\n getItemHref,\n getItemLabel,\n getItemOnClick,\n getItemTarget,\n getItemSubMenu,\n onItemClick,\n ...otherProps\n } = withDefaultGetters(props);\n\n const [openedSubMenu, setOpenedSubMenu] = useState<\n number | 'more' | undefined\n >();\n const [mouseOnMenu, setMouseOnMenu] = useFlag();\n\n const { visibleItems, itemsRefs, wrapperRef, hiddenItems, moreRef } =\n useHideElementsInLine<\n typeof items[number],\n HTMLLIElement,\n HTMLUListElement\n >(items);\n\n const moreButtonRef = useRef<HTMLButtonElement>(null);\n\n const getItemHrefRef = useMutableRef(getItemHref);\n const getItemTargetRef = useMutableRef(getItemTarget);\n\n const getItemAs = useCallback((item: typeof items[number]) => {\n if (getItemHrefRef.current(item)) {\n return 'a';\n }\n return 'span';\n }, []);\n\n const getItemHTMLAttributes = useCallback((item: typeof items[number]) => {\n const href = getItemHrefRef.current(item);\n const target = getItemTargetRef.current(item);\n\n return {\n ...(href && { href: getItemHrefRef.current(item) }),\n ...(target && { href: getItemTargetRef.current(item) }),\n };\n }, []);\n\n const elementZIndex =\n typeof props.style?.zIndex === 'number'\n ? props.style.zIndex + 1\n : undefined;\n\n useEffect(\n useDebounce(() => {\n if (!mouseOnMenu) {\n setOpenedSubMenu(undefined);\n }\n }, animateTimeout),\n [mouseOnMenu],\n );\n\n return (\n <nav\n {...otherProps}\n className={cnMenu({ width }, [className])}\n onMouseLeave={setMouseOnMenu.off}\n onMouseEnter={setMouseOnMenu.on}\n ref={ref}\n >\n <ul className={cnMenu('List')} ref={wrapperRef}>\n {items.map((item, index) => {\n const label = getItemLabel(item);\n const href = getItemHref(item);\n const target = href ? getItemTarget(item) : undefined;\n const active = getItemActive(item);\n const Tag = href ? 'a' : 'span';\n const subItems = getItemSubMenu(item);\n const opened = openedSubMenu === index;\n const hidden = !visibleItems[index];\n return (\n <li\n className={cnMenu('Item', { hidden, active, opened })}\n key={cnMenu('Item', { index })}\n ref={itemsRefs[index]}\n onMouseEnter={() => setOpenedSubMenu(index)}\n >\n <Tag\n className={cnMenu('Link')}\n href={href}\n target={target}\n onClick={getItemClick(item, getItemOnClick, onItemClick)}\n >\n {label}\n </Tag>\n {subItems && <IconSelect size=\"s\" className={cnMenu('Arrow')} />}\n <ContextMenu\n isOpen={subItems && subItems.length > 0 && opened}\n items={subItems || []}\n getItemLabel={getItemLabel}\n getItemSubMenu={getItemSubMenu}\n anchorRef={itemsRefs[index]}\n onItemClick={({ e, item }) =>\n getItemClick(item, getItemOnClick, onItemClick)(e)\n }\n direction=\"downStartLeft\"\n possibleDirections={[\n 'upStartLeft',\n 'downStartRight',\n 'downStartLeft',\n 'upStartRight',\n ]}\n spareDirection=\"downStartLeft\"\n getItemAs={getItemAs}\n getItemAttributes={getItemHTMLAttributes}\n style={{ zIndex: elementZIndex }}\n />\n </li>\n );\n })}\n {hiddenItems.length > 0 && (\n <li\n className={cnMenu('Item')}\n key={cnMenu('Item', { more: true })}\n ref={moreRef}\n onMouseEnter={() => setOpenedSubMenu('more')}\n >\n <Button\n iconLeft={IconMeatball}\n ref={moreButtonRef}\n size=\"xs\"\n view=\"clear\"\n />\n <ContextMenu\n isOpen={openedSubMenu === 'more'}\n items={hiddenItems}\n getItemLabel={getItemLabel}\n getItemSubMenu={getItemSubMenu}\n anchorRef={moreButtonRef}\n onItemClick={({ e, item }) =>\n getItemClick(item, getItemOnClick, onItemClick)(e)\n }\n direction=\"downStartLeft\"\n possibleDirections={[\n 'upStartLeft',\n 'downStartRight',\n 'downStartLeft',\n 'upStartRight',\n ]}\n spareDirection=\"downStartRight\"\n getItemAs={getItemAs}\n getItemAttributes={getItemHTMLAttributes}\n style={{ zIndex: elementZIndex }}\n offset={8}\n />\n </li>\n )}\n </ul>\n </nav>\n );\n};\n\nexport const Menu = forwardRef(MenuRender) as MenuComponent;\n\nexport * from './types';\n"],"mappings":"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"}
1
+ {"version":3,"file":"Menu.js","names":["IconMeatball","IconSelect","Button","ContextMenu","animateTimeout","useDebounce","useFlag","useHideElementsInLine","useMutableRef","React","forwardRef","useCallback","useEffect","useRef","useState","getItemClick","cn","withDefaultGetters","cnMenu","MenuRender","props","ref","c","d","items","className","width","getItemActive","getItemHref","getItemLabel","getItemOnClick","getItemTarget","getItemSubMenu","onItemClick","otherProps","_objectWithoutProperties","_excluded","openedSubMenu","setOpenedSubMenu","mouseOnMenu","setMouseOnMenu","visibleItems","itemsRefs","wrapperRef","hiddenItems","moreRef","moreButtonRef","getItemHrefRef","getItemTargetRef","getItemAs","item","current","getItemHTMLAttributes","href","target","_objectSpread","elementZIndex","style","zIndex","createElement","Object","assign","onMouseLeave","off","onMouseEnter","on","map","index","label","active","Tag","subItems","opened","hidden","key","g","onClick","size","isOpen","length","anchorRef","e","direction","possibleDirections","spareDirection","getItemAttributes","more","iconLeft","view","offset","Menu"],"sources":["../../../../../src/components/Menu/Menu.tsx"],"sourcesContent":["import './Menu.css';\n\nimport { IconMeatball } from '@consta/icons/IconMeatball';\nimport { IconSelect } from '@consta/icons/IconSelect';\nimport { Button } from '@consta/uikit/Button';\nimport { ContextMenu } from '@consta/uikit/ContextMenu';\nimport { animateTimeout } from '@consta/uikit/MixPopoverAnimate';\nimport { useDebounce } from '@consta/uikit/useDebounce';\nimport { useFlag } from '@consta/uikit/useFlag';\nimport { useHideElementsInLine } from '@consta/uikit/useHideElementsInLine';\nimport { useMutableRef } from '@consta/uikit/useMutableRef';\nimport React, {\n forwardRef,\n useCallback,\n useEffect,\n useRef,\n useState,\n} from 'react';\n\nimport { getItemClick } from '##/helpers/getItemClick';\nimport { cn } from '##/utils/bem';\n\nimport { withDefaultGetters } from './helpers';\nimport { MenuComponent, MenuProps } from './types';\n\nexport const cnMenu = cn('Menu');\n\nconst MenuRender = (props: MenuProps, ref: React.Ref<HTMLDivElement>) => {\n const {\n items,\n className,\n width,\n getItemActive,\n getItemHref,\n getItemLabel,\n getItemOnClick,\n getItemTarget,\n getItemSubMenu,\n onItemClick,\n ...otherProps\n } = withDefaultGetters(props);\n\n const [openedSubMenu, setOpenedSubMenu] = useState<\n number | 'more' | undefined\n >();\n const [mouseOnMenu, setMouseOnMenu] = useFlag();\n\n const { visibleItems, itemsRefs, wrapperRef, hiddenItems, moreRef } =\n useHideElementsInLine<\n (typeof items)[number],\n HTMLLIElement,\n HTMLUListElement\n >(items);\n\n const moreButtonRef = useRef<HTMLButtonElement>(null);\n\n const getItemHrefRef = useMutableRef(getItemHref);\n const getItemTargetRef = useMutableRef(getItemTarget);\n\n const getItemAs = useCallback((item: (typeof items)[number]) => {\n if (getItemHrefRef.current(item)) {\n return 'a';\n }\n return 'span';\n }, []);\n\n const getItemHTMLAttributes = useCallback((item: (typeof items)[number]) => {\n const href = getItemHrefRef.current(item);\n const target = getItemTargetRef.current(item);\n\n return {\n ...(href && { href: getItemHrefRef.current(item) }),\n ...(target && { href: getItemTargetRef.current(item) }),\n };\n }, []);\n\n const elementZIndex =\n typeof props.style?.zIndex === 'number'\n ? props.style.zIndex + 1\n : undefined;\n\n useEffect(\n useDebounce(() => {\n if (!mouseOnMenu) {\n setOpenedSubMenu(undefined);\n }\n }, animateTimeout),\n [mouseOnMenu],\n );\n\n return (\n <nav\n {...otherProps}\n className={cnMenu({ width }, [className])}\n onMouseLeave={setMouseOnMenu.off}\n onMouseEnter={setMouseOnMenu.on}\n ref={ref}\n >\n <ul className={cnMenu('List')} ref={wrapperRef}>\n {items.map((item, index) => {\n const label = getItemLabel(item);\n const href = getItemHref(item);\n const target = href ? getItemTarget(item) : undefined;\n const active = getItemActive(item);\n const Tag = href ? 'a' : 'span';\n const subItems = getItemSubMenu(item);\n const opened = openedSubMenu === index;\n const hidden = !visibleItems[index];\n return (\n <li\n className={cnMenu('Item', { hidden, active, opened })}\n key={cnMenu('Item', { index })}\n ref={itemsRefs[index]}\n onMouseEnter={() => setOpenedSubMenu(index)}\n >\n <Tag\n className={cnMenu('Link')}\n href={href}\n target={target}\n onClick={getItemClick(item, getItemOnClick, onItemClick)}\n >\n {label}\n </Tag>\n {subItems && <IconSelect size=\"s\" className={cnMenu('Arrow')} />}\n <ContextMenu\n isOpen={subItems && subItems.length > 0 && opened}\n items={subItems || []}\n getItemLabel={getItemLabel}\n getItemSubMenu={getItemSubMenu}\n anchorRef={itemsRefs[index]}\n onItemClick={({ e, item }) =>\n getItemClick(item, getItemOnClick, onItemClick)(e)\n }\n direction=\"downStartLeft\"\n possibleDirections={[\n 'upStartLeft',\n 'downStartRight',\n 'downStartLeft',\n 'upStartRight',\n ]}\n spareDirection=\"downStartLeft\"\n getItemAs={getItemAs}\n getItemAttributes={getItemHTMLAttributes}\n style={{ zIndex: elementZIndex }}\n />\n </li>\n );\n })}\n {hiddenItems.length > 0 && (\n <li\n className={cnMenu('Item')}\n key={cnMenu('Item', { more: true })}\n ref={moreRef}\n onMouseEnter={() => setOpenedSubMenu('more')}\n >\n <Button\n iconLeft={IconMeatball}\n ref={moreButtonRef}\n size=\"xs\"\n view=\"clear\"\n />\n <ContextMenu\n isOpen={openedSubMenu === 'more'}\n items={hiddenItems}\n getItemLabel={getItemLabel}\n getItemSubMenu={getItemSubMenu}\n anchorRef={moreButtonRef}\n onItemClick={({ e, item }) =>\n getItemClick(item, getItemOnClick, onItemClick)(e)\n }\n direction=\"downStartLeft\"\n possibleDirections={[\n 'upStartLeft',\n 'downStartRight',\n 'downStartLeft',\n 'upStartRight',\n ]}\n spareDirection=\"downStartRight\"\n getItemAs={getItemAs}\n getItemAttributes={getItemHTMLAttributes}\n style={{ zIndex: elementZIndex }}\n offset={8}\n />\n </li>\n )}\n </ul>\n </nav>\n );\n};\n\nexport const Menu = forwardRef(MenuRender) as MenuComponent;\n\nexport * from './types';\n"],"mappings":"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"}
@@ -31,7 +31,7 @@ export declare function withDefaultGetters<ITEM>(props: MenuProps<ITEM>): {
31
31
  getItemActive?: MenuPropGetItemActive<ITEM> | undefined;
32
32
  getItemOnClick?: MenuPropGetItemOnClick<ITEM> | undefined;
33
33
  getItemSubMenu?: MenuPropGetItemSubMenu<ITEM> | undefined;
34
- } & Omit<import("react").HTMLAttributes<HTMLDivElement>, "css" | "items" | "getItemLabel" | "width" | "getItemOnClick" | "onItemClick" | "getItemHref" | "getItemTarget" | "getItemActive" | "getItemSubMenu"> & import("react").RefAttributes<HTMLDivElement> & (ITEM extends {
34
+ } & Omit<import("react").HTMLAttributes<HTMLDivElement>, "css" | "items" | "onItemClick" | "getItemHref" | "getItemLabel" | "getItemTarget" | "getItemOnClick" | "width" | "getItemSubMenu" | "getItemActive"> & import("react").RefAttributes<HTMLDivElement> & (ITEM extends {
35
35
  label: string;
36
36
  } ? {} : {
37
37
  getItemLabel: MenuPropGetItemLabel<ITEM>;
@@ -1 +1 @@
1
- {"version":3,"file":"helpers.js","names":["defaultGetItemLabel","item","label","defaultGetItemActive","active","defaultGetItemHref","href","defaultGetItemOnClick","onClick","defaultGetItemTarget","target","defaultGetItemSubMenu","subMenu","getGetters","props","getItemLabel","getItemActive","getItemHref","getItemOnClick","getItemTarget","getItemSubMenu","withDefaultGetters"],"sources":["../../../../../src/components/Menu/helpers.ts"],"sourcesContent":["import {\n MenuDefaultItem,\n MenuPropGetItemActive,\n MenuPropGetItemHref,\n MenuPropGetItemLabel,\n MenuPropGetItemOnClick,\n MenuPropGetItemSubMenu,\n MenuPropGetItemTarget,\n MenuProps,\n} from './types';\n\nexport const defaultGetItemLabel: MenuPropGetItemLabel<MenuDefaultItem> = (\n item,\n) => item.label;\nexport const defaultGetItemActive: MenuPropGetItemActive<MenuDefaultItem> = (\n item,\n) => item.active;\nexport const defaultGetItemHref: MenuPropGetItemHref<MenuDefaultItem> = (\n item,\n) => item.href;\nexport const defaultGetItemOnClick: MenuPropGetItemOnClick<MenuDefaultItem> = (\n item,\n) => item.onClick;\nexport const defaultGetItemTarget: MenuPropGetItemTarget<MenuDefaultItem> = (\n item,\n) => item.target;\nexport const defaultGetItemSubMenu: MenuPropGetItemSubMenu<MenuDefaultItem> = (\n item,\n) => item.subMenu;\n\nexport const getGetters = <ITEM>(props: {\n getItemLabel?: MenuPropGetItemLabel<ITEM>;\n getItemActive?: MenuPropGetItemActive<ITEM>;\n getItemHref?: MenuPropGetItemHref<ITEM>;\n getItemOnClick?: MenuPropGetItemOnClick<ITEM>;\n getItemTarget?: MenuPropGetItemTarget<ITEM>;\n getItemSubMenu?: MenuPropGetItemSubMenu<ITEM>;\n}) => {\n return {\n getItemLabel: props?.getItemLabel || defaultGetItemLabel,\n getItemActive: props?.getItemActive || defaultGetItemActive,\n getItemHref: props?.getItemHref || defaultGetItemHref,\n getItemOnClick: props?.getItemOnClick || defaultGetItemOnClick,\n getItemTarget: props?.getItemTarget || defaultGetItemTarget,\n getItemSubMenu: props?.getItemSubMenu || defaultGetItemSubMenu,\n };\n};\n\nexport function withDefaultGetters<ITEM>(props: MenuProps<ITEM>) {\n return {\n ...props,\n ...getGetters(props),\n };\n}\n"],"mappings":"qqBAWA,MAAO,MAAMA,oBAA0D,CACrEC,CAAI,EACDA,CAAI,CAACC,KAAK,CACf,MAAO,MAAMC,qBAA4D,CACvEF,CAAI,EACDA,CAAI,CAACG,MAAM,CAChB,MAAO,MAAMC,mBAAwD,CACnEJ,CAAI,EACDA,CAAI,CAACK,IAAI,CACd,MAAO,MAAMC,sBAA8D,CACzEN,CAAI,EACDA,CAAI,CAACO,OAAO,CACjB,MAAO,MAAMC,qBAA4D,CACvER,CAAI,EACDA,CAAI,CAACS,MAAM,CAChB,MAAO,MAAMC,sBAA8D,CACzEV,CAAI,EACDA,CAAI,CAACW,OAAO,CAEjB,MAAO,MAAMC,WAAU,CAAUC,CAOhC,GACQ,CACLC,YAAY,CAAE,QAAAD,CAAK,WAALA,CAAK,QAALA,CAAK,CAAEC,YAAY,GAAIf,mBAAmB,CACxDgB,aAAa,CAAE,QAAAF,CAAK,WAALA,CAAK,QAALA,CAAK,CAAEE,aAAa,GAAIb,oBAAoB,CAC3Dc,WAAW,CAAE,QAAAH,CAAK,WAALA,CAAK,QAALA,CAAK,CAAEG,WAAW,GAAIZ,kBAAkB,CACrDa,cAAc,CAAE,QAAAJ,CAAK,WAALA,CAAK,QAALA,CAAK,CAAEI,cAAc,GAAIX,qBAAqB,CAC9DY,aAAa,CAAE,QAAAL,CAAK,WAALA,CAAK,QAALA,CAAK,CAAEK,aAAa,GAAIV,oBAAoB,CAC3DW,cAAc,CAAE,QAAAN,CAAK,WAALA,CAAK,QAALA,CAAK,CAAEM,cAAc,GAAIT,qBAC3C,CAAC,CACF,CAED,MAAO,SAASU,mBAAkB,CAAOP,CAAsB,CAAE,CAC/D,sCACKA,CAAK,EACLD,UAAU,CAACC,CAAK,CAAC,CAExB"}
1
+ {"version":3,"file":"helpers.js","names":["defaultGetItemLabel","item","label","defaultGetItemActive","active","defaultGetItemHref","href","defaultGetItemOnClick","onClick","defaultGetItemTarget","target","defaultGetItemSubMenu","subMenu","getGetters","props","getItemLabel","getItemActive","getItemHref","getItemOnClick","getItemTarget","getItemSubMenu","withDefaultGetters","_objectSpread"],"sources":["../../../../../src/components/Menu/helpers.ts"],"sourcesContent":["import {\n MenuDefaultItem,\n MenuPropGetItemActive,\n MenuPropGetItemHref,\n MenuPropGetItemLabel,\n MenuPropGetItemOnClick,\n MenuPropGetItemSubMenu,\n MenuPropGetItemTarget,\n MenuProps,\n} from './types';\n\nexport const defaultGetItemLabel: MenuPropGetItemLabel<MenuDefaultItem> = (\n item,\n) => item.label;\nexport const defaultGetItemActive: MenuPropGetItemActive<MenuDefaultItem> = (\n item,\n) => item.active;\nexport const defaultGetItemHref: MenuPropGetItemHref<MenuDefaultItem> = (\n item,\n) => item.href;\nexport const defaultGetItemOnClick: MenuPropGetItemOnClick<MenuDefaultItem> = (\n item,\n) => item.onClick;\nexport const defaultGetItemTarget: MenuPropGetItemTarget<MenuDefaultItem> = (\n item,\n) => item.target;\nexport const defaultGetItemSubMenu: MenuPropGetItemSubMenu<MenuDefaultItem> = (\n item,\n) => item.subMenu;\n\nexport const getGetters = <ITEM>(props: {\n getItemLabel?: MenuPropGetItemLabel<ITEM>;\n getItemActive?: MenuPropGetItemActive<ITEM>;\n getItemHref?: MenuPropGetItemHref<ITEM>;\n getItemOnClick?: MenuPropGetItemOnClick<ITEM>;\n getItemTarget?: MenuPropGetItemTarget<ITEM>;\n getItemSubMenu?: MenuPropGetItemSubMenu<ITEM>;\n}) => {\n return {\n getItemLabel: props?.getItemLabel || defaultGetItemLabel,\n getItemActive: props?.getItemActive || defaultGetItemActive,\n getItemHref: props?.getItemHref || defaultGetItemHref,\n getItemOnClick: props?.getItemOnClick || defaultGetItemOnClick,\n getItemTarget: props?.getItemTarget || defaultGetItemTarget,\n getItemSubMenu: props?.getItemSubMenu || defaultGetItemSubMenu,\n };\n};\n\nexport function withDefaultGetters<ITEM>(props: MenuProps<ITEM>) {\n return {\n ...props,\n ...getGetters(props),\n };\n}\n"],"mappings":"qqBAWA,MAAO,MAAM,CAAAA,mBAA0D,CACrEC,CAAI,EACDA,CAAI,CAACC,KAAK,CACf,MAAO,MAAM,CAAAC,oBAA4D,CACvEF,CAAI,EACDA,CAAI,CAACG,MAAM,CAChB,MAAO,MAAM,CAAAC,kBAAwD,CACnEJ,CAAI,EACDA,CAAI,CAACK,IAAI,CACd,MAAO,MAAM,CAAAC,qBAA8D,CACzEN,CAAI,EACDA,CAAI,CAACO,OAAO,CACjB,MAAO,MAAM,CAAAC,oBAA4D,CACvER,CAAI,EACDA,CAAI,CAACS,MAAM,CAChB,MAAO,MAAM,CAAAC,qBAA8D,CACzEV,CAAI,EACDA,CAAI,CAACW,OAAO,CAEjB,MAAO,MAAM,CAAAC,UAAU,CAAUC,CAOhC,GACQ,CACLC,YAAY,CAAE,QAAAD,CAAK,WAALA,CAAK,QAALA,CAAK,CAAEC,YAAY,GAAIf,mBAAmB,CACxDgB,aAAa,CAAE,QAAAF,CAAK,WAALA,CAAK,QAALA,CAAK,CAAEE,aAAa,GAAIb,oBAAoB,CAC3Dc,WAAW,CAAE,QAAAH,CAAK,WAALA,CAAK,QAALA,CAAK,CAAEG,WAAW,GAAIZ,kBAAkB,CACrDa,cAAc,CAAE,QAAAJ,CAAK,WAALA,CAAK,QAALA,CAAK,CAAEI,cAAc,GAAIX,qBAAqB,CAC9DY,aAAa,CAAE,QAAAL,CAAK,WAALA,CAAK,QAALA,CAAK,CAAEK,aAAa,GAAIV,oBAAoB,CAC3DW,cAAc,CAAE,QAAAN,CAAK,WAALA,CAAK,QAALA,CAAK,CAAEM,cAAc,GAAIT,qBAC3C,CAAC,CACF,CAED,MAAO,SAAS,CAAAU,kBAAkBA,CAAOP,CAAsB,CAAE,CAC/D,OAAAQ,aAAA,CAAAA,aAAA,IACKR,CAAK,EACLD,UAAU,CAACC,CAAK,CAAC,CAExB"}
@@ -1,2 +1,2 @@
1
- import _objectWithoutProperties from"@babel/runtime/helpers/objectWithoutProperties";const _excluded=["items","className","getItemActive","getItemHref","getItemLabel","getItemOnClick","getItemTarget","getItemSubMenu","header","onItemClick","sidebarClassName","footer"];import"./MobileMenu.css";import{Button}from"@consta/uikit/Button";import{IconHamburger}from"@consta/uikit/IconHamburger";import{Sidebar}from"@consta/uikit/Sidebar";import{useFlag}from"@consta/uikit/useFlag";import React,{forwardRef}from"react";import{VerticalMenu}from"../VerticalMenu";import{cn}from"../../utils/bem";export const cnMobileMenu=cn("MobileMenu");const MobileMenuRender=(a,b)=>{var c;const{items:d,className:e,getItemActive:f,getItemHref:g,getItemLabel:h,getItemOnClick:i,getItemTarget:j,getItemSubMenu:k,header:l,onItemClick:m,sidebarClassName:n,footer:o}=a,p=_objectWithoutProperties(a,_excluded),[q,{toogle:r,off:s}]=useFlag(),t="number"==typeof(null===(c=a.style)||void 0===c?void 0:c.zIndex)?a.style.zIndex+1:void 0;return React.createElement(React.Fragment,null,React.createElement(Button,Object.assign({},p,{size:"s",view:"clear",className:cnMobileMenu(null,[e]),iconLeft:IconHamburger,ref:b,onClick:r})),React.createElement(Sidebar,{className:cnMobileMenu("Sidebar",[n]),position:"left",isOpen:q,onClickOutside:s,size:"m",style:{zIndex:t}},React.createElement(VerticalMenu,{className:cnMobileMenu("Menu"),items:d,getItemActive:f,getItemHref:g,getItemLabel:h,getItemOnClick:i,getItemTarget:j,getItemSubMenu:k,onItemClick:m,header:l,footer:o})))};export const MobileMenu=forwardRef(MobileMenuRender);export*from"./types";
1
+ import _objectWithoutProperties from"@babel/runtime/helpers/objectWithoutProperties";const _excluded=["items","className","getItemActive","getItemHref","getItemLabel","getItemOnClick","getItemTarget","getItemSubMenu","header","onItemClick","sidebarClassName","footer"];import"./MobileMenu.css";import{IconHamburger}from"@consta/icons/IconHamburger";import{Button}from"@consta/uikit/Button";import{Sidebar}from"@consta/uikit/Sidebar";import{useFlag}from"@consta/uikit/useFlag";import React,{forwardRef}from"react";import{VerticalMenu}from"../VerticalMenu";import{cn}from"../../utils/bem";export const cnMobileMenu=cn("MobileMenu");const MobileMenuRender=(a,b)=>{var c;const{items:d,className:e,getItemActive:f,getItemHref:g,getItemLabel:h,getItemOnClick:i,getItemTarget:j,getItemSubMenu:k,header:l,onItemClick:m,sidebarClassName:n,footer:o}=a,p=_objectWithoutProperties(a,_excluded),[q,r]=useFlag(),s="number"==typeof(null===(c=a.style)||void 0===c?void 0:c.zIndex)?a.style.zIndex+1:void 0;return React.createElement(React.Fragment,null,React.createElement(Button,Object.assign({},p,{size:"s",view:"clear",className:cnMobileMenu(null,[e]),iconLeft:IconHamburger,ref:b,onClick:r.toggle})),React.createElement(Sidebar,{className:cnMobileMenu("Sidebar",[n]),position:"left",isOpen:q,onClickOutside:r.off,size:"m",style:{zIndex:s}},React.createElement(VerticalMenu,{className:cnMobileMenu("Menu"),items:d,getItemActive:f,getItemHref:g,getItemLabel:h,getItemOnClick:i,getItemTarget:j,getItemSubMenu:k,onItemClick:m,header:l,footer:o})))};export const MobileMenu=forwardRef(MobileMenuRender);export*from"./types";
2
2
  //# sourceMappingURL=MobileMenu.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"MobileMenu.js","names":["Button","IconHamburger","Sidebar","useFlag","React","forwardRef","VerticalMenu","cn","cnMobileMenu","MobileMenuRender","props","ref","items","className","getItemActive","getItemHref","getItemLabel","getItemOnClick","getItemTarget","getItemSubMenu","header","onItemClick","sidebarClassName","footer","otherProps","visibleMenu","toogle","off","elementZIndex","style","zIndex","MobileMenu"],"sources":["../../../../../src/components/MobileMenu/MobileMenu.tsx"],"sourcesContent":["import './MobileMenu.css';\n\nimport { Button } from '@consta/uikit/Button';\nimport { IconHamburger } from '@consta/uikit/IconHamburger';\nimport { Sidebar } from '@consta/uikit/Sidebar';\nimport { useFlag } from '@consta/uikit/useFlag';\nimport React, { forwardRef } from 'react';\n\nimport { VerticalMenu } from '##/components/VerticalMenu';\nimport { cn } from '##/utils/bem';\n\nimport { MobileMenuComponent, MobileMenuProps } from './types';\n\nexport const cnMobileMenu = cn('MobileMenu');\n\nconst MobileMenuRender = (\n props: MobileMenuProps,\n ref: React.Ref<HTMLButtonElement>,\n) => {\n const {\n items,\n className,\n getItemActive,\n getItemHref,\n getItemLabel,\n getItemOnClick,\n getItemTarget,\n getItemSubMenu,\n header,\n onItemClick,\n sidebarClassName,\n footer,\n ...otherProps\n } = props;\n\n const [visibleMenu, { toogle, off }] = useFlag();\n\n const elementZIndex =\n typeof props.style?.zIndex === 'number'\n ? props.style.zIndex + 1\n : undefined;\n\n return (\n <>\n <Button\n {...otherProps}\n size=\"s\"\n view=\"clear\"\n className={cnMobileMenu(null, [className])}\n iconLeft={IconHamburger}\n ref={ref}\n onClick={toogle}\n />\n <Sidebar\n className={cnMobileMenu('Sidebar', [sidebarClassName])}\n position=\"left\"\n isOpen={visibleMenu}\n onClickOutside={off}\n size=\"m\"\n style={{ zIndex: elementZIndex }}\n >\n <VerticalMenu\n className={cnMobileMenu('Menu')}\n items={items}\n getItemActive={getItemActive}\n getItemHref={getItemHref}\n getItemLabel={getItemLabel}\n getItemOnClick={getItemOnClick}\n getItemTarget={getItemTarget}\n getItemSubMenu={getItemSubMenu}\n onItemClick={onItemClick}\n header={header}\n footer={footer}\n />\n </Sidebar>\n </>\n );\n};\n\nexport const MobileMenu = forwardRef(MobileMenuRender) as MobileMenuComponent;\n\nexport * from './types';\n"],"mappings":"6QAAA,yBAEA,OAASA,MAAM,KAAQ,sBAAsB,CAC7C,OAASC,aAAa,KAAQ,6BAA6B,CAC3D,OAASC,OAAO,KAAQ,uBAAuB,CAC/C,OAASC,OAAO,KAAQ,uBAAuB,CAC/C,MAAOC,MAAK,EAAIC,UAAU,KAAQ,OAAO,CAEzC,OAASC,YAAY,uBACrB,OAASC,EAAE,uBAIX,MAAO,MAAMC,aAAY,CAAGD,EAAE,CAAC,YAAY,CAAC,CAE5C,KAAME,iBAAgB,CAAG,CACvBC,CAAsB,CACtBC,CAAiC,GAC9B,YACG,CACJC,KAAK,CAALA,CAAK,CACLC,SAAS,CAATA,CAAS,CACTC,aAAa,CAAbA,CAAa,CACbC,WAAW,CAAXA,CAAW,CACXC,YAAY,CAAZA,CAAY,CACZC,cAAc,CAAdA,CAAc,CACdC,aAAa,CAAbA,CAAa,CACbC,cAAc,CAAdA,CAAc,CACdC,MAAM,CAANA,CAAM,CACNC,WAAW,CAAXA,CAAW,CACXC,gBAAgB,CAAhBA,CAAgB,CAChBC,MAAM,CAANA,CAEF,CAAC,CAAGb,CAAK,CADJc,CAAU,0BACXd,CAAK,YAEH,CAACe,CAAW,CAAE,CAAEC,MAAM,CAANA,CAAM,CAAEC,GAAG,CAAHA,CAAI,CAAC,CAAC,CAAGxB,OAAO,EAAE,CAE1CyB,CAAa,CACc,QAAQ,EAAvC,iBAAOlB,CAAK,CAACmB,KAAK,qBAAX,EAAaC,MAAM,CAAa,CACnCpB,CAAK,CAACmB,KAAK,CAACC,MAAM,CAAG,CAAC,OACb,CAEf,MACE,yCACE,oBAAC,MAAM,kBACDN,CAAU,EACd,IAAI,CAAC,GAAG,CACR,IAAI,CAAC,OAAO,CACZ,SAAS,CAAEhB,YAAY,CAAC,IAAI,CAAE,CAACK,CAAS,CAAC,CAAE,CAC3C,QAAQ,CAAEZ,aAAc,CACxB,GAAG,CAAEU,CAAI,CACT,OAAO,CAAEe,CAAO,GAChB,CACF,oBAAC,OAAO,EACN,SAAS,CAAElB,YAAY,CAAC,SAAS,CAAE,CAACc,CAAgB,CAAC,CAAE,CACvD,QAAQ,CAAC,MAAM,CACf,MAAM,CAAEG,CAAY,CACpB,cAAc,CAAEE,CAAI,CACpB,IAAI,CAAC,GAAG,CACR,KAAK,CAAE,CAAEG,MAAM,CAAEF,CAAc,CAAE,EAEjC,oBAAC,YAAY,EACX,SAAS,CAAEpB,YAAY,CAAC,MAAM,CAAE,CAChC,KAAK,CAAEI,CAAM,CACb,aAAa,CAAEE,CAAc,CAC7B,WAAW,CAAEC,CAAY,CACzB,YAAY,CAAEC,CAAa,CAC3B,cAAc,CAAEC,CAAe,CAC/B,aAAa,CAAEC,CAAc,CAC7B,cAAc,CAAEC,CAAe,CAC/B,WAAW,CAAEE,CAAY,CACzB,MAAM,CAAED,CAAO,CACf,MAAM,CAAEG,CAAO,EACf,CACM,CAGhB,CAAC,CAED,MAAO,MAAMQ,WAAU,CAAG1B,UAAU,CAACI,gBAAgB,CAAwB,CAE7E"}
1
+ {"version":3,"file":"MobileMenu.js","names":["IconHamburger","Button","Sidebar","useFlag","React","forwardRef","VerticalMenu","cn","cnMobileMenu","MobileMenuRender","props","ref","c","items","className","getItemActive","getItemHref","getItemLabel","getItemOnClick","getItemTarget","getItemSubMenu","header","onItemClick","sidebarClassName","footer","otherProps","_objectWithoutProperties","_excluded","visibleMenu","setVisibleMenu","elementZIndex","style","zIndex","createElement","Fragment","Object","assign","size","view","iconLeft","onClick","toggle","position","isOpen","onClickOutside","off","MobileMenu"],"sources":["../../../../../src/components/MobileMenu/MobileMenu.tsx"],"sourcesContent":["import './MobileMenu.css';\n\nimport { IconHamburger } from '@consta/icons/IconHamburger';\nimport { Button } from '@consta/uikit/Button';\nimport { Sidebar } from '@consta/uikit/Sidebar';\nimport { useFlag } from '@consta/uikit/useFlag';\nimport React, { forwardRef } from 'react';\n\nimport { VerticalMenu } from '##/components/VerticalMenu';\nimport { cn } from '##/utils/bem';\n\nimport { MobileMenuComponent, MobileMenuProps } from './types';\n\nexport const cnMobileMenu = cn('MobileMenu');\n\nconst MobileMenuRender = (\n props: MobileMenuProps,\n ref: React.Ref<HTMLButtonElement>,\n) => {\n const {\n items,\n className,\n getItemActive,\n getItemHref,\n getItemLabel,\n getItemOnClick,\n getItemTarget,\n getItemSubMenu,\n header,\n onItemClick,\n sidebarClassName,\n footer,\n ...otherProps\n } = props;\n\n const [visibleMenu, setVisibleMenu] = useFlag();\n\n const elementZIndex =\n typeof props.style?.zIndex === 'number'\n ? props.style.zIndex + 1\n : undefined;\n\n return (\n <>\n <Button\n {...otherProps}\n size=\"s\"\n view=\"clear\"\n className={cnMobileMenu(null, [className])}\n iconLeft={IconHamburger}\n ref={ref}\n onClick={setVisibleMenu.toggle}\n />\n <Sidebar\n className={cnMobileMenu('Sidebar', [sidebarClassName])}\n position=\"left\"\n isOpen={visibleMenu}\n onClickOutside={setVisibleMenu.off}\n size=\"m\"\n style={{ zIndex: elementZIndex }}\n >\n <VerticalMenu\n className={cnMobileMenu('Menu')}\n items={items}\n getItemActive={getItemActive}\n getItemHref={getItemHref}\n getItemLabel={getItemLabel}\n getItemOnClick={getItemOnClick}\n getItemTarget={getItemTarget}\n getItemSubMenu={getItemSubMenu}\n onItemClick={onItemClick}\n header={header}\n footer={footer}\n />\n </Sidebar>\n </>\n );\n};\n\nexport const MobileMenu = forwardRef(MobileMenuRender) as MobileMenuComponent;\n\nexport * from './types';\n"],"mappings":"6QAAA,yBAEA,OAASA,aAAa,KAAQ,6BAA6B,CAC3D,OAASC,MAAM,KAAQ,sBAAsB,CAC7C,OAASC,OAAO,KAAQ,uBAAuB,CAC/C,OAASC,OAAO,KAAQ,uBAAuB,CAC/C,MAAO,CAAAC,KAAK,EAAIC,UAAU,KAAQ,OAAO,CAEzC,OAASC,YAAY,uBACrB,OAASC,EAAE,uBAIX,MAAO,MAAM,CAAAC,YAAY,CAAGD,EAAE,CAAC,YAAY,CAAC,CAE5C,KAAM,CAAAE,gBAAgB,CAAGA,CACvBC,CAAsB,CACtBC,CAAiC,GAC9B,KAAAC,CAAA,MACG,CACJC,KAAK,CAALA,CAAK,CACLC,SAAS,CAATA,CAAS,CACTC,aAAa,CAAbA,CAAa,CACbC,WAAW,CAAXA,CAAW,CACXC,YAAY,CAAZA,CAAY,CACZC,cAAc,CAAdA,CAAc,CACdC,aAAa,CAAbA,CAAa,CACbC,cAAc,CAAdA,CAAc,CACdC,MAAM,CAANA,CAAM,CACNC,WAAW,CAAXA,CAAW,CACXC,gBAAgB,CAAhBA,CAAgB,CAChBC,MAAM,CAANA,CAEF,CAAC,CAAGd,CAAK,CADJe,CAAU,CAAAC,wBAAA,CACXhB,CAAK,CAAAiB,SAAA,EAEH,CAACC,CAAW,CAAEC,CAAc,CAAC,CAAG1B,OAAO,CAAC,CAAC,CAEzC2B,CAAa,CACc,QAAQ,EAAvC,eAAAlB,CAAA,CAAOF,CAAK,CAACqB,KAAK,YAAAnB,CAAA,QAAXA,CAAA,CAAaoB,MAAM,CAAa,CACnCtB,CAAK,CAACqB,KAAK,CAACC,MAAM,CAAG,CAAC,OACb,CAEf,MACE,CAAA5B,KAAA,CAAA6B,aAAA,CAAA7B,KAAA,CAAA8B,QAAA,MACE9B,KAAA,CAAA6B,aAAA,CAAChC,MAAM,CAAAkC,MAAA,CAAAC,MAAA,IACDX,CAAU,EACdY,IAAI,CAAC,GAAG,CACRC,IAAI,CAAC,OAAO,CACZxB,SAAS,CAAEN,YAAY,CAAC,IAAI,CAAE,CAACM,CAAS,CAAC,CAAE,CAC3CyB,QAAQ,CAAEvC,aAAc,CACxBW,GAAG,CAAEA,CAAI,CACT6B,OAAO,CAAEX,CAAc,CAACY,MAAO,EAChC,CAAC,CACFrC,KAAA,CAAA6B,aAAA,CAAC/B,OAAO,EACNY,SAAS,CAAEN,YAAY,CAAC,SAAS,CAAE,CAACe,CAAgB,CAAC,CAAE,CACvDmB,QAAQ,CAAC,MAAM,CACfC,MAAM,CAAEf,CAAY,CACpBgB,cAAc,CAAEf,CAAc,CAACgB,GAAI,CACnCR,IAAI,CAAC,GAAG,CACRN,KAAK,CAAE,CAAEC,MAAM,CAAEF,CAAc,CAAE,EAEjC1B,KAAA,CAAA6B,aAAA,CAAC3B,YAAY,EACXQ,SAAS,CAAEN,YAAY,CAAC,MAAM,CAAE,CAChCK,KAAK,CAAEA,CAAM,CACbE,aAAa,CAAEA,CAAc,CAC7BC,WAAW,CAAEA,CAAY,CACzBC,YAAY,CAAEA,CAAa,CAC3BC,cAAc,CAAEA,CAAe,CAC/BC,aAAa,CAAEA,CAAc,CAC7BC,cAAc,CAAEA,CAAe,CAC/BE,WAAW,CAAEA,CAAY,CACzBD,MAAM,CAAEA,CAAO,CACfG,MAAM,CAAEA,CAAO,CAChB,CACM,CACT,CAEN,CAAC,CAED,MAAO,MAAM,CAAAsB,UAAU,CAAGzC,UAAU,CAACI,gBAAgB,CAAwB,CAE7E"}
@@ -1,7 +1,7 @@
1
1
  import React from 'react';
2
- import { DefaultItem, VerticalMenuPropGetItemActive, VerticalMenuPropGetItemGroup, VerticalMenuPropGetItemHref, VerticalMenuPropGetItemLabel, VerticalMenuPropGetItemOnClick, VerticalMenuPropGetItemSubMenu, VerticalMenuPropGetItemTarget, VerticalMenuPropOnItemClick } from "../VerticalMenu";
2
+ import { VerticalMenuDefaultItem, VerticalMenuPropGetItemActive, VerticalMenuPropGetItemGroup, VerticalMenuPropGetItemHref, VerticalMenuPropGetItemLabel, VerticalMenuPropGetItemOnClick, VerticalMenuPropGetItemSubMenu, VerticalMenuPropGetItemTarget, VerticalMenuPropOnItemClick } from "../VerticalMenu";
3
3
  import { PropsWithHTMLAttributesAndRef } from "../../utils/types/PropsWithHTMLAttributes";
4
- export type MobileMenuProps<ITEM = DefaultItem> = PropsWithHTMLAttributesAndRef<{
4
+ export type MobileMenuProps<ITEM = VerticalMenuDefaultItem> = PropsWithHTMLAttributesAndRef<{
5
5
  items: ITEM[];
6
6
  getItemHref?: VerticalMenuPropGetItemHref<ITEM>;
7
7
  getItemLabel?: VerticalMenuPropGetItemLabel<ITEM>;
@@ -16,9 +16,9 @@ export type MobileMenuProps<ITEM = DefaultItem> = PropsWithHTMLAttributesAndRef<
16
16
  children?: never;
17
17
  footer?: React.ReactNode;
18
18
  }, HTMLButtonElement> & (ITEM extends {
19
- label: DefaultItem['label'];
19
+ label: VerticalMenuDefaultItem['label'];
20
20
  } ? {} : {
21
21
  getItemLabel: VerticalMenuPropGetItemLabel<ITEM>;
22
22
  });
23
- export type MobileMenuComponent = <ITEM = DefaultItem>(props: MobileMenuProps<ITEM>) => React.ReactElement | null;
24
- export type { DefaultItem };
23
+ export type MobileMenuComponent = <ITEM = VerticalMenuDefaultItem>(props: MobileMenuProps<ITEM>) => React.ReactElement | null;
24
+ export type { VerticalMenuDefaultItem };
@@ -1 +1 @@
1
- {"version":3,"file":"types.js","names":[],"sources":["../../../../../src/components/MobileMenu/types.ts"],"sourcesContent":["import React from 'react';\n\nimport {\n DefaultItem,\n VerticalMenuPropGetItemActive,\n VerticalMenuPropGetItemGroup,\n VerticalMenuPropGetItemHref,\n VerticalMenuPropGetItemLabel,\n VerticalMenuPropGetItemOnClick,\n VerticalMenuPropGetItemSubMenu,\n VerticalMenuPropGetItemTarget,\n VerticalMenuPropOnItemClick,\n} from '##/components/VerticalMenu';\nimport { PropsWithHTMLAttributesAndRef } from '##/utils/types/PropsWithHTMLAttributes';\n\nexport type MobileMenuProps<ITEM = DefaultItem> = PropsWithHTMLAttributesAndRef<\n {\n items: ITEM[];\n getItemHref?: VerticalMenuPropGetItemHref<ITEM>;\n getItemLabel?: VerticalMenuPropGetItemLabel<ITEM>;\n getItemTarget?: VerticalMenuPropGetItemTarget<ITEM>;\n getItemActive?: VerticalMenuPropGetItemActive<ITEM>;\n getItemOnClick?: VerticalMenuPropGetItemOnClick<ITEM>;\n getItemSubMenu?: VerticalMenuPropGetItemSubMenu<ITEM>;\n getItemGroup?: VerticalMenuPropGetItemGroup<ITEM>;\n onItemClick?: VerticalMenuPropOnItemClick<ITEM>;\n header?: React.ReactNode;\n sidebarClassName?: string;\n children?: never;\n footer?: React.ReactNode;\n },\n HTMLButtonElement\n> &\n (ITEM extends { label: DefaultItem['label'] }\n ? {}\n : { getItemLabel: VerticalMenuPropGetItemLabel<ITEM> });\n\nexport type MobileMenuComponent = <ITEM = DefaultItem>(\n props: MobileMenuProps<ITEM>,\n) => React.ReactElement | null;\n\nexport type { DefaultItem };\n"],"mappings":""}
1
+ {"version":3,"file":"types.js","names":[],"sources":["../../../../../src/components/MobileMenu/types.ts"],"sourcesContent":["import React from 'react';\n\nimport {\n VerticalMenuDefaultItem,\n VerticalMenuPropGetItemActive,\n VerticalMenuPropGetItemGroup,\n VerticalMenuPropGetItemHref,\n VerticalMenuPropGetItemLabel,\n VerticalMenuPropGetItemOnClick,\n VerticalMenuPropGetItemSubMenu,\n VerticalMenuPropGetItemTarget,\n VerticalMenuPropOnItemClick,\n} from '##/components/VerticalMenu';\nimport { PropsWithHTMLAttributesAndRef } from '##/utils/types/PropsWithHTMLAttributes';\n\nexport type MobileMenuProps<ITEM = VerticalMenuDefaultItem> =\n PropsWithHTMLAttributesAndRef<\n {\n items: ITEM[];\n getItemHref?: VerticalMenuPropGetItemHref<ITEM>;\n getItemLabel?: VerticalMenuPropGetItemLabel<ITEM>;\n getItemTarget?: VerticalMenuPropGetItemTarget<ITEM>;\n getItemActive?: VerticalMenuPropGetItemActive<ITEM>;\n getItemOnClick?: VerticalMenuPropGetItemOnClick<ITEM>;\n getItemSubMenu?: VerticalMenuPropGetItemSubMenu<ITEM>;\n getItemGroup?: VerticalMenuPropGetItemGroup<ITEM>;\n onItemClick?: VerticalMenuPropOnItemClick<ITEM>;\n header?: React.ReactNode;\n sidebarClassName?: string;\n children?: never;\n footer?: React.ReactNode;\n },\n HTMLButtonElement\n > &\n (ITEM extends { label: VerticalMenuDefaultItem['label'] }\n ? {}\n : { getItemLabel: VerticalMenuPropGetItemLabel<ITEM> });\n\nexport type MobileMenuComponent = <ITEM = VerticalMenuDefaultItem>(\n props: MobileMenuProps<ITEM>,\n) => React.ReactElement | null;\n\nexport type { VerticalMenuDefaultItem };\n"],"mappings":""}
@@ -1,2 +1,2 @@
1
- import _objectWithoutProperties from"@babel/runtime/helpers/objectWithoutProperties";const _excluded=["className","items","groupByDay","groups","groupLabelFormat","itemDateFormat","title","actions","getActionIcon","getActionLabel","getActionOnClick","getGroupId","getGroupLabel","getItemActions","getItemBadges","getItemDate","getItemDescription","getItemGroup","getItemImage","getItemLabel","getItemRead","getItemView","listClassName","isMobile"];import"./Notifications.css";import{Button}from"@consta/uikit/Button";import{IconRing}from"@consta/uikit/IconRing";import{animateTimeout,cnMixPopoverAnimate}from"@consta/uikit/MixPopoverAnimate";import{cnMixPopoverArrow}from"@consta/uikit/MixPopoverArrow";import{Popover}from"@consta/uikit/Popover";import{useFlag}from"@consta/uikit/useFlag";import{useForkRef}from"@consta/uikit/useForkRef";import React,{forwardRef,useRef,useState}from"react";import{Transition}from"react-transition-group";import{NotificationsList}from"../NotificationsList";import{Sidebar}from"../Sidebar";import{cn}from"../../utils/bem";const ARROW_SIZE=6,ARROW_OFFSET=10;export const cnNotifications=cn("Notifications");const NotificationsRender=(a,b)=>{var c;const{className:d,items:e,groupByDay:f,groups:g,groupLabelFormat:h,itemDateFormat:i,title:j,actions:k,getActionIcon:l,getActionLabel:m,getActionOnClick:n,getGroupId:o,getGroupLabel:p,getItemActions:q,getItemBadges:r,getItemDate:s,getItemDescription:t,getItemGroup:u,getItemImage:v,getItemLabel:w,getItemRead:x,getItemView:y,listClassName:z,isMobile:A}=a,B=_objectWithoutProperties(a,_excluded),C=useRef(null),[D,E]=useState(void 0),[F,{toogle:G,off:H}]=useFlag(),I={className:cnNotifications("List",[z]),items:e,groupByDay:f,groups:g,groupLabelFormat:h,title:j,actions:k,getActionIcon:l,getActionLabel:m,getActionOnClick:n,getGroupId:o,getGroupLabel:p,getItemActions:q,getItemBadges:r,getItemDate:s,getItemDescription:t,getItemGroup:u,getItemImage:v,getItemLabel:w,getItemRead:x,getItemView:y},J="number"==typeof(null===(c=a.style)||void 0===c?void 0:c.zIndex)?a.style.zIndex+1:void 0;return React.createElement(React.Fragment,null,React.createElement(Button,Object.assign({},B,{size:"s",view:"clear",className:cnNotifications(null,[d]),iconLeft:IconRing,ref:useForkRef([b,C]),onClick:G})),A?React.createElement(Sidebar,{isOpen:F,onClickOutside:H,style:{zIndex:J}},React.createElement(NotificationsList,Object.assign({},I,{onClose:H,style:{zIndex:J}}))):React.createElement(Transition,{timeout:animateTimeout,unmountOnExit:!0,in:F},a=>React.createElement(Popover,{className:cnNotifications("Popover",[cnMixPopoverAnimate({animate:a,direction:D})]),anchorRef:C,arrowOffset:ARROW_OFFSET+ARROW_SIZE,offset:10,onSetDirection:E,style:{"--popover-arrow-size":`${ARROW_SIZE}px`,"--popover-arrow-offset":`${ARROW_OFFSET}px`,zIndex:J},onClickOutside:H},React.createElement("div",{className:cnMixPopoverArrow({direction:D})}),React.createElement(NotificationsList,Object.assign({},I,{style:{zIndex:J}})))))};export const Notifications=forwardRef(NotificationsRender);
1
+ import _objectWithoutProperties from"@babel/runtime/helpers/objectWithoutProperties";const _excluded=["className","items","groupByDay","groups","groupLabelFormat","itemDateFormat","title","actions","getActionIcon","getActionLabel","getActionOnClick","getGroupId","getGroupLabel","getItemActions","getItemBadges","getItemDate","getItemDescription","getItemGroup","getItemImage","getItemLabel","getItemRead","getItemView","listClassName","isMobile"];import"./Notifications.css";import{IconRing}from"@consta/icons/IconRing";import React,{forwardRef}from"react";import{cn}from"../../utils/bem";import{PopoverButton}from"../PopoverButton";import{NotificationsList}from"./NotificationsList";export const cnNotifications=cn("Notifications");const NotificationsRender=(a,b)=>{var c;const{className:d,items:e,groupByDay:f,groups:g,groupLabelFormat:h,itemDateFormat:i,title:j,actions:k,getActionIcon:l,getActionLabel:m,getActionOnClick:n,getGroupId:o,getGroupLabel:p,getItemActions:q,getItemBadges:r,getItemDate:s,getItemDescription:t,getItemGroup:u,getItemImage:v,getItemLabel:w,getItemRead:x,getItemView:y,listClassName:z,isMobile:A}=a,B=_objectWithoutProperties(a,_excluded),C={className:cnNotifications("List",[z]),items:e,groupByDay:f,groups:g,groupLabelFormat:h,title:j,actions:k,getActionIcon:l,getActionLabel:m,getActionOnClick:n,getGroupId:o,getGroupLabel:p,getItemActions:q,getItemBadges:r,getItemDate:s,getItemDescription:t,getItemGroup:u,getItemImage:v,getItemLabel:w,getItemRead:x,getItemView:y},D="number"==typeof(null===(c=a.style)||void 0===c?void 0:c.zIndex)?a.style.zIndex+1:void 0;return React.createElement(PopoverButton,Object.assign({size:"s",view:"clear",iconLeft:IconRing,ref:b,isMobile:A,withCloseButton:!1,className:cnNotifications(null,[d]),popoverClassName:cnNotifications("Popover")},B),a=>React.createElement(NotificationsList,Object.assign({},C,{onClose:A?a:void 0,style:{zIndex:D}})))};export const Notifications=forwardRef(NotificationsRender);
2
2
  //# sourceMappingURL=Notifications.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"Notifications.js","names":["Button","IconRing","animateTimeout","cnMixPopoverAnimate","cnMixPopoverArrow","Popover","useFlag","useForkRef","React","forwardRef","useRef","useState","Transition","NotificationsList","Sidebar","cn","ARROW_SIZE","ARROW_OFFSET","cnNotifications","NotificationsRender","props","ref","className","items","groupByDay","groups","groupLabelFormat","itemDateFormat","title","actions","getActionIcon","getActionLabel","getActionOnClick","getGroupId","getGroupLabel","getItemActions","getItemBadges","getItemDate","getItemDescription","getItemGroup","getItemImage","getItemLabel","getItemRead","getItemView","listClassName","isMobile","otherProps","buttonRef","direction","setDirection","visibleMenu","toogle","off","listProps","elementZIndex","style","zIndex","animate","Notifications"],"sources":["../../../../../src/components/Notifications/Notifications.tsx"],"sourcesContent":["import './Notifications.css';\n\nimport { Button } from '@consta/uikit/Button';\nimport { IconRing } from '@consta/uikit/IconRing';\nimport {\n animateTimeout,\n cnMixPopoverAnimate,\n} from '@consta/uikit/MixPopoverAnimate';\nimport { cnMixPopoverArrow } from '@consta/uikit/MixPopoverArrow';\nimport { Direction, Popover } from '@consta/uikit/Popover';\nimport { useFlag } from '@consta/uikit/useFlag';\nimport { useForkRef } from '@consta/uikit/useForkRef';\nimport React, { forwardRef, useRef, useState } from 'react';\nimport { Transition } from 'react-transition-group';\n\nimport { NotificationsList } from '##/components/NotificationsList';\nimport { Sidebar } from '##/components/Sidebar';\nimport { cn } from '##/utils/bem';\n\nimport { NotificationsComponent, NotificationsProps } from './types';\n\nconst ARROW_SIZE = 6;\nconst ARROW_OFFSET = 10;\n\nexport const cnNotifications = cn('Notifications');\n\nconst NotificationsRender = (\n props: NotificationsProps,\n ref: React.Ref<HTMLButtonElement>,\n) => {\n const {\n className,\n items,\n groupByDay,\n groups,\n groupLabelFormat,\n itemDateFormat,\n title,\n actions,\n getActionIcon,\n getActionLabel,\n getActionOnClick,\n getGroupId,\n getGroupLabel,\n getItemActions,\n getItemBadges,\n getItemDate,\n getItemDescription,\n getItemGroup,\n getItemImage,\n getItemLabel,\n getItemRead,\n getItemView,\n listClassName,\n isMobile,\n ...otherProps\n } = props;\n\n const buttonRef = useRef<HTMLButtonElement>(null);\n const [direction, setDirection] = useState<Direction | undefined>(undefined);\n\n const [visibleMenu, { toogle, off }] = useFlag();\n\n const listProps = {\n className: cnNotifications('List', [listClassName]),\n items,\n groupByDay,\n groups,\n groupLabelFormat,\n title,\n actions,\n getActionIcon,\n getActionLabel,\n getActionOnClick,\n getGroupId,\n getGroupLabel,\n getItemActions,\n getItemBadges,\n getItemDate,\n getItemDescription,\n getItemGroup,\n getItemImage,\n getItemLabel,\n getItemRead,\n getItemView,\n };\n\n const elementZIndex =\n typeof props.style?.zIndex === 'number'\n ? props.style.zIndex + 1\n : undefined;\n\n return (\n <>\n <Button\n {...otherProps}\n size=\"s\"\n view=\"clear\"\n className={cnNotifications(null, [className])}\n iconLeft={IconRing}\n ref={useForkRef([ref, buttonRef])}\n onClick={toogle}\n />\n {isMobile ? (\n <Sidebar\n isOpen={visibleMenu}\n onClickOutside={off}\n style={{ zIndex: elementZIndex }}\n >\n <NotificationsList\n {...listProps}\n onClose={off}\n style={{ zIndex: elementZIndex }}\n />\n </Sidebar>\n ) : (\n <Transition timeout={animateTimeout} unmountOnExit in={visibleMenu}>\n {(animate) => (\n <Popover\n className={cnNotifications('Popover', [\n cnMixPopoverAnimate({ animate, direction }),\n ])}\n anchorRef={buttonRef}\n arrowOffset={ARROW_OFFSET + ARROW_SIZE}\n offset={ARROW_SIZE + 4}\n onSetDirection={setDirection}\n style={{\n ['--popover-arrow-size' as string]: `${ARROW_SIZE}px`,\n ['--popover-arrow-offset' as string]: `${ARROW_OFFSET}px`,\n zIndex: elementZIndex,\n }}\n onClickOutside={off}\n >\n <div className={cnMixPopoverArrow({ direction })} />\n <NotificationsList\n {...listProps}\n style={{ zIndex: elementZIndex }}\n />\n </Popover>\n )}\n </Transition>\n )}\n </>\n );\n};\n\nexport const Notifications = forwardRef(\n NotificationsRender,\n) as NotificationsComponent;\n"],"mappings":"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"}
1
+ {"version":3,"file":"Notifications.js","names":["IconRing","React","forwardRef","cn","PopoverButton","NotificationsList","cnNotifications","NotificationsRender","props","ref","c","className","items","groupByDay","groups","groupLabelFormat","itemDateFormat","title","actions","getActionIcon","getActionLabel","getActionOnClick","getGroupId","getGroupLabel","getItemActions","getItemBadges","getItemDate","getItemDescription","getItemGroup","getItemImage","getItemLabel","getItemRead","getItemView","listClassName","isMobile","otherProps","_objectWithoutProperties","_excluded","listProps","elementZIndex","style","zIndex","createElement","Object","assign","size","view","iconLeft","withCloseButton","popoverClassName","onClose","Notifications"],"sources":["../../../../../src/components/Notifications/Notifications.tsx"],"sourcesContent":["import './Notifications.css';\n\nimport { IconRing } from '@consta/icons/IconRing';\nimport React, { forwardRef } from 'react';\n\nimport { cn } from '##/utils/bem';\n\nimport { PopoverButton } from '../PopoverButton';\nimport { NotificationsList } from './NotificationsList';\nimport { NotificationsComponent, NotificationsProps } from './types';\n\nexport const cnNotifications = cn('Notifications');\n\nconst NotificationsRender = (\n props: NotificationsProps,\n ref: React.Ref<HTMLButtonElement>,\n) => {\n const {\n className,\n items,\n groupByDay,\n groups,\n groupLabelFormat,\n itemDateFormat,\n title,\n actions,\n getActionIcon,\n getActionLabel,\n getActionOnClick,\n getGroupId,\n getGroupLabel,\n getItemActions,\n getItemBadges,\n getItemDate,\n getItemDescription,\n getItemGroup,\n getItemImage,\n getItemLabel,\n getItemRead,\n getItemView,\n listClassName,\n isMobile,\n ...otherProps\n } = props;\n\n const listProps = {\n className: cnNotifications('List', [listClassName]),\n items,\n groupByDay,\n groups,\n groupLabelFormat,\n title,\n actions,\n getActionIcon,\n getActionLabel,\n getActionOnClick,\n getGroupId,\n getGroupLabel,\n getItemActions,\n getItemBadges,\n getItemDate,\n getItemDescription,\n getItemGroup,\n getItemImage,\n getItemLabel,\n getItemRead,\n getItemView,\n };\n\n const elementZIndex =\n typeof props.style?.zIndex === 'number'\n ? props.style.zIndex + 1\n : undefined;\n\n return (\n <PopoverButton\n size=\"s\"\n view=\"clear\"\n iconLeft={IconRing}\n ref={ref}\n isMobile={isMobile}\n withCloseButton={false}\n className={cnNotifications(null, [className])}\n popoverClassName={cnNotifications('Popover')}\n {...otherProps}\n >\n {(onClose) => (\n <NotificationsList\n {...listProps}\n onClose={isMobile ? onClose : undefined}\n style={{ zIndex: elementZIndex }}\n />\n )}\n </PopoverButton>\n );\n};\n\nexport const Notifications = forwardRef(\n NotificationsRender,\n) as NotificationsComponent;\n"],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ import _objectWithoutProperties from"@babel/runtime/helpers/objectWithoutProperties";const _excluded=["items","className","children","mainButtonOnlyIcon","opened","onOpen","getItemIcon","getItemLabel","getItemOnClick","onItemClick"];import{IconMeatball}from"@consta/icons/IconMeatball";import{Button}from"@consta/uikit/Button";import{ContextMenu}from"@consta/uikit/ContextMenu";import{useFlag}from"@consta/uikit/useFlag";import{useForkRef}from"@consta/uikit/useForkRef";import{useMutableRef}from"@consta/uikit/useMutableRef";import{withTooltip}from"@consta/uikit/withTooltip";import React,{forwardRef,useEffect,useRef}from"react";import{getItemClick}from"../../../helpers/getItemClick";import{withDefaultGetters}from"./helpers";const ButtonWithTooltip=withTooltip()(Button),NotificationsActionsRender=(a,b)=>{var c;const d=withDefaultGetters(a),{items:m=[],className:e,children:f,mainButtonOnlyIcon:g,opened:n=!1,onOpen:h,getItemIcon:i,getItemLabel:j,getItemOnClick:k,onItemClick:l}=d,o=_objectWithoutProperties(d,_excluded),p=useRef(null),[q,r]=useFlag(n),s=useMutableRef(h),t=useForkRef([p,b]),u="number"==typeof(null===(c=a.style)||void 0===c?void 0:c.zIndex)?a.style.zIndex+1:void 0;return useEffect(()=>{r[n?"on":"off"]()},[n]),useEffect(()=>{var a;null===(a=s.current)||void 0===a?void 0:a.call(s,q)},[q,s]),1!==m.length||g?1===m.length&&i(m[0])&&g?React.createElement(ButtonWithTooltip,Object.assign({},o,{className:e,size:"xs",view:"clear",iconLeft:i(m[0]),onClick:getItemClick(m[0],k,l),tooltipProps:{content:j(m[0])},ref:b})):React.createElement(React.Fragment,null,React.createElement(Button,Object.assign({},o,{className:e,size:"xs",view:"clear",iconLeft:IconMeatball,ref:t,onClick:r.toggle})),React.createElement(ContextMenu,{isOpen:q,items:m,getItemLabel:j,onItemClick:({e:a,item:b})=>getItemClick(b,k,l)(a),getItemKey:j,getItemLeftIcon:i,anchorRef:p,onClickOutside:r.off,possibleDirections:["downStartRight","upStartRight"],direction:"downStartRight",style:{width:280,zIndex:u}})):React.createElement(Button,Object.assign({},o,{className:e,size:"xs",view:"clear",iconLeft:i(m[0]),onClick:getItemClick(m[0],k,l),label:j(m[0]),ref:b}))};export const NotificationsActions=forwardRef(NotificationsActionsRender);
2
+ //# sourceMappingURL=NotificationsActions.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"NotificationsActions.js","names":["IconMeatball","Button","ContextMenu","useFlag","useForkRef","useMutableRef","withTooltip","React","forwardRef","useEffect","useRef","getItemClick","withDefaultGetters","ButtonWithTooltip","NotificationsActionsRender","props","ref","c","d","items","className","children","mainButtonOnlyIcon","opened","onOpen","onOpenProp","getItemIcon","getItemLabel","getItemOnClick","onItemClick","otherProps","_objectWithoutProperties","_excluded","buttonRef","visibleMenu","setVisibleMenu","menuRef","elementZIndex","style","zIndex","a","current","call","length","createElement","Object","assign","size","view","iconLeft","onClick","tooltipProps","content","Fragment","toggle","isOpen","e","item","getItemKey","getItemLeftIcon","anchorRef","onClickOutside","off","possibleDirections","direction","width","label","NotificationsActions"],"sources":["../../../../../../src/components/Notifications/NotificationsActions/NotificationsActions.tsx"],"sourcesContent":["import { IconMeatball } from '@consta/icons/IconMeatball';\nimport { Button } from '@consta/uikit/Button';\nimport { ContextMenu } from '@consta/uikit/ContextMenu';\nimport { useFlag } from '@consta/uikit/useFlag';\nimport { useForkRef } from '@consta/uikit/useForkRef';\nimport { useMutableRef } from '@consta/uikit/useMutableRef';\nimport { withTooltip } from '@consta/uikit/withTooltip';\nimport React, { forwardRef, useEffect, useRef } from 'react';\n\nimport { getItemClick } from '##/helpers/getItemClick';\n\nimport { withDefaultGetters } from './helpers';\nimport {\n NotificationsActionsComponent,\n NotificationsActionsProps,\n} from './types';\n\nconst ButtonWithTooltip = withTooltip()(Button);\n\nconst NotificationsActionsRender = (\n props: NotificationsActionsProps,\n ref: React.Ref<HTMLButtonElement>,\n) => {\n const {\n items = [],\n className,\n children,\n mainButtonOnlyIcon,\n opened = false,\n onOpen: onOpenProp,\n getItemIcon,\n getItemLabel,\n getItemOnClick,\n onItemClick,\n ...otherProps\n } = withDefaultGetters(props);\n const buttonRef = useRef(null);\n\n const [visibleMenu, setVisibleMenu] = useFlag(opened);\n\n const onOpen = useMutableRef(onOpenProp);\n const menuRef = useForkRef([buttonRef, ref]);\n\n const elementZIndex =\n typeof props.style?.zIndex === 'number'\n ? props.style.zIndex + 1\n : undefined;\n\n useEffect(() => {\n setVisibleMenu[opened ? 'on' : 'off']();\n }, [opened]);\n\n useEffect(() => {\n onOpen.current?.(visibleMenu);\n }, [visibleMenu, onOpen]);\n\n if (items.length === 1 && !mainButtonOnlyIcon) {\n return (\n <Button\n {...otherProps}\n className={className}\n size=\"xs\"\n view=\"clear\"\n iconLeft={getItemIcon(items[0])}\n onClick={getItemClick(items[0], getItemOnClick, onItemClick)}\n label={getItemLabel(items[0])}\n ref={ref}\n />\n );\n }\n\n if (items.length === 1 && getItemIcon(items[0]) && mainButtonOnlyIcon) {\n return (\n <ButtonWithTooltip\n {...otherProps}\n className={className}\n size=\"xs\"\n view=\"clear\"\n iconLeft={getItemIcon(items[0])}\n onClick={getItemClick(items[0], getItemOnClick, onItemClick)}\n tooltipProps={{\n content: getItemLabel(items[0]),\n }}\n ref={ref}\n />\n );\n }\n\n return (\n <>\n <Button\n {...otherProps}\n className={className}\n size=\"xs\"\n view=\"clear\"\n iconLeft={IconMeatball}\n ref={menuRef}\n onClick={setVisibleMenu.toggle}\n />\n <ContextMenu\n isOpen={visibleMenu}\n items={items}\n getItemLabel={getItemLabel}\n onItemClick={({ e, item }) =>\n getItemClick(item, getItemOnClick, onItemClick)(e)\n }\n getItemKey={getItemLabel}\n getItemLeftIcon={getItemIcon}\n anchorRef={buttonRef}\n onClickOutside={setVisibleMenu.off}\n possibleDirections={['downStartRight', 'upStartRight']}\n direction=\"downStartRight\"\n style={{ width: 280, zIndex: elementZIndex }}\n />\n </>\n );\n};\n\nexport const NotificationsActions = forwardRef(\n NotificationsActionsRender,\n) as NotificationsActionsComponent;\n"],"mappings":"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"}
@@ -1,13 +1,12 @@
1
1
  /// <reference types="react" />
2
- import { DefaultItem, NotificationsActionsPropGetItemIcon, NotificationsActionsPropGetItemLabel, NotificationsActionsPropGetItemOnClick, NotificationsActionsProps } from './types';
2
+ import { ButtonMenuDefaultItem, NotificationsActionsPropGetItemIcon, NotificationsActionsPropGetItemLabel, NotificationsActionsPropGetItemOnClick, NotificationsActionsProps } from './types';
3
3
  export declare function withDefaultGetters<ITEM>(props: NotificationsActionsProps<ITEM>): {
4
4
  items?: ITEM[] | undefined;
5
5
  mainButtonOnlyIcon?: boolean | undefined;
6
6
  opened?: boolean | undefined;
7
7
  onOpen?: ((value: boolean) => void) | undefined;
8
- setVisibleMenu?: ((setVisibleMenu: import("react").Dispatch<import("react").SetStateAction<boolean>>) => void) | undefined;
9
8
  onItemClick?: import("./types").NotificationsActionsOnItemClick<ITEM> | undefined;
10
- } & Omit<import("react").HTMLAttributes<HTMLButtonElement>, "css" | "items" | "onItemClick" | "opened" | "onOpen" | "mainButtonOnlyIcon" | "setVisibleMenu"> & {
9
+ } & Omit<import("react").HTMLAttributes<HTMLButtonElement>, "css" | "items" | "onItemClick" | "opened" | "onOpen" | "mainButtonOnlyIcon"> & {
11
10
  getItemLabel?: NotificationsActionsPropGetItemLabel<ITEM> | undefined;
12
11
  getItemOnClick?: NotificationsActionsPropGetItemOnClick<ITEM> | undefined;
13
12
  getItemIcon?: NotificationsActionsPropGetItemIcon<ITEM> | undefined;
@@ -16,7 +15,7 @@ export declare function withDefaultGetters<ITEM>(props: NotificationsActionsProp
16
15
  } ? {} : {
17
16
  getItemLabel: NotificationsActionsPropGetItemLabel<ITEM>;
18
17
  }) & {
19
- getItemIcon: NotificationsActionsPropGetItemIcon<DefaultItem> | NotificationsActionsPropGetItemIcon<ITEM>;
20
- getItemLabel: NotificationsActionsPropGetItemLabel<DefaultItem> | NotificationsActionsPropGetItemLabel<ITEM>;
21
- getItemOnClick: NotificationsActionsPropGetItemOnClick<DefaultItem> | NotificationsActionsPropGetItemOnClick<ITEM>;
18
+ getItemIcon: NotificationsActionsPropGetItemIcon<ButtonMenuDefaultItem> | NotificationsActionsPropGetItemIcon<ITEM>;
19
+ getItemLabel: NotificationsActionsPropGetItemLabel<ButtonMenuDefaultItem> | NotificationsActionsPropGetItemLabel<ITEM>;
20
+ getItemOnClick: NotificationsActionsPropGetItemOnClick<ButtonMenuDefaultItem> | NotificationsActionsPropGetItemOnClick<ITEM>;
22
21
  };
@@ -0,0 +1 @@
1
+ {"version":3,"file":"helpers.js","names":["defaultGetItemIcon","item","icon","defaultGetItemLabel","label","defaultGetItemOnClick","onClick","withDefaultGetters","props","_objectSpread","getItemIcon","getItemLabel","getItemOnClick"],"sources":["../../../../../../src/components/Notifications/NotificationsActions/helpers.tsx"],"sourcesContent":["import {\n ButtonMenuDefaultItem,\n NotificationsActionsPropGetItemIcon,\n NotificationsActionsPropGetItemLabel,\n NotificationsActionsPropGetItemOnClick,\n NotificationsActionsProps,\n} from './types';\n\nconst defaultGetItemIcon: NotificationsActionsPropGetItemIcon<\n ButtonMenuDefaultItem\n> = (item) => item.icon;\nconst defaultGetItemLabel: NotificationsActionsPropGetItemLabel<\n ButtonMenuDefaultItem\n> = (item) => item.label;\nconst defaultGetItemOnClick: NotificationsActionsPropGetItemOnClick<\n ButtonMenuDefaultItem\n> = (item) => item.onClick;\n\nexport function withDefaultGetters<ITEM>(\n props: NotificationsActionsProps<ITEM>,\n) {\n return {\n ...props,\n getItemIcon: props.getItemIcon || defaultGetItemIcon,\n getItemLabel: props.getItemLabel || defaultGetItemLabel,\n getItemOnClick: props.getItemOnClick || defaultGetItemOnClick,\n };\n}\n"],"mappings":"0qBAQM,CAAAA,kBAEL,CAAIC,CAAI,EAAKA,CAAI,CAACC,IAAI,CACjBC,mBAEL,CAAIF,CAAI,EAAKA,CAAI,CAACG,KAAK,CAClBC,qBAEL,CAAIJ,CAAI,EAAKA,CAAI,CAACK,OAAO,CAE1B,MAAO,SAAS,CAAAC,kBAAkBA,CAChCC,CAAsC,CACtC,CACA,OAAAC,aAAA,CAAAA,aAAA,IACKD,CAAK,MACRE,WAAW,CAAEF,CAAK,CAACE,WAAW,EAAIV,kBAAkB,CACpDW,YAAY,CAAEH,CAAK,CAACG,YAAY,EAAIR,mBAAmB,CACvDS,cAAc,CAAEJ,CAAK,CAACI,cAAc,EAAIP,qBAAqB,EAEjE"}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","names":[],"sources":["../../../../../../src/components/Notifications/NotificationsActions/index.ts"],"sourcesContent":["export * from './NotificationsActions';\n"],"mappings":"AAAA"}
@@ -1,7 +1,7 @@
1
1
  /// <reference types="react" />
2
- import { IconComponent } from '@consta/uikit/Icon';
3
- import { PropsWithHTMLAttributes } from "../../utils/types/PropsWithHTMLAttributes";
4
- export type DefaultItem = {
2
+ import { IconComponent } from '@consta/icons/Icon';
3
+ import { PropsWithHTMLAttributes } from "../../../utils/types/PropsWithHTMLAttributes";
4
+ export type ButtonMenuDefaultItem = {
5
5
  label: string;
6
6
  onClick?: React.EventHandler<React.MouseEvent>;
7
7
  icon?: IconComponent;
@@ -13,20 +13,19 @@ export type NotificationsActionsOnItemClick<ITEM> = (props: {
13
13
  e: React.MouseEvent;
14
14
  item: ITEM;
15
15
  }) => void;
16
- export type NotificationsActionsProps<ITEM = DefaultItem> = PropsWithHTMLAttributes<{
16
+ export type NotificationsActionsProps<ITEM = ButtonMenuDefaultItem> = PropsWithHTMLAttributes<{
17
17
  items?: ITEM[];
18
18
  mainButtonOnlyIcon?: boolean;
19
19
  opened?: boolean;
20
20
  onOpen?: (value: boolean) => void;
21
- setVisibleMenu?: (setVisibleMenu: React.Dispatch<React.SetStateAction<boolean>>) => void;
22
21
  onItemClick?: NotificationsActionsOnItemClick<ITEM>;
23
22
  }, HTMLButtonElement> & {
24
23
  getItemLabel?: NotificationsActionsPropGetItemLabel<ITEM>;
25
24
  getItemOnClick?: NotificationsActionsPropGetItemOnClick<ITEM>;
26
25
  getItemIcon?: NotificationsActionsPropGetItemIcon<ITEM>;
27
26
  } & (ITEM extends {
28
- label: DefaultItem['label'];
27
+ label: ButtonMenuDefaultItem['label'];
29
28
  } ? {} : {
30
29
  getItemLabel: NotificationsActionsPropGetItemLabel<ITEM>;
31
30
  });
32
- export type NotificationsActionsComponent = <ITEM = DefaultItem>(props: NotificationsActionsProps<ITEM>) => React.ReactElement | null;
31
+ export type NotificationsActionsComponent = <ITEM = ButtonMenuDefaultItem>(props: NotificationsActionsProps<ITEM>) => React.ReactElement | null;
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.js","names":[],"sources":["../../../../../../src/components/Notifications/NotificationsActions/types.ts"],"sourcesContent":["import { IconComponent } from '@consta/icons/Icon';\n\nimport { PropsWithHTMLAttributes } from '##/utils/types/PropsWithHTMLAttributes';\n\nexport type ButtonMenuDefaultItem = {\n label: string;\n onClick?: React.EventHandler<React.MouseEvent>;\n icon?: IconComponent;\n};\n\nexport type NotificationsActionsPropGetItemLabel<ITEM> = (item: ITEM) => string;\nexport type NotificationsActionsPropGetItemIcon<ITEM> = (\n item: ITEM,\n) => IconComponent | undefined;\nexport type NotificationsActionsPropGetItemOnClick<ITEM> = (\n item: ITEM,\n) => React.EventHandler<React.MouseEvent> | undefined;\n\nexport type NotificationsActionsOnItemClick<ITEM> = (props: {\n e: React.MouseEvent;\n item: ITEM;\n}) => void;\n\nexport type NotificationsActionsProps<ITEM = ButtonMenuDefaultItem> =\n PropsWithHTMLAttributes<\n {\n items?: ITEM[];\n mainButtonOnlyIcon?: boolean;\n opened?: boolean;\n onOpen?: (value: boolean) => void;\n onItemClick?: NotificationsActionsOnItemClick<ITEM>;\n },\n HTMLButtonElement\n > & {\n getItemLabel?: NotificationsActionsPropGetItemLabel<ITEM>;\n getItemOnClick?: NotificationsActionsPropGetItemOnClick<ITEM>;\n getItemIcon?: NotificationsActionsPropGetItemIcon<ITEM>;\n } & (ITEM extends { label: ButtonMenuDefaultItem['label'] }\n ? {}\n : { getItemLabel: NotificationsActionsPropGetItemLabel<ITEM> });\n\nexport type NotificationsActionsComponent = <ITEM = ButtonMenuDefaultItem>(\n props: NotificationsActionsProps<ITEM>,\n) => React.ReactElement | null;\n"],"mappings":""}
@@ -0,0 +1 @@
1
+ .che--NotificationsItem{display:flex}.che--NotificationsItem-Image{flex:none}.che--NotificationsItem-Content{flex:1;max-width:calc(100% - var(--space-3xl) - var(--space-m));position:relative}.che--NotificationsItem-Text{margin-bottom:var(--space-m)}.che--NotificationsItem-Text:last-child{margin-bottom:0}.che--NotificationsItem-Title{margin-bottom:var(--space-2xs)}.che--NotificationsItem-Title_cardWithActions{margin-right:calc(var(--control-height-xs) + var(--space-2xs))}.che--NotificationsItem-Title:last-child{margin-bottom:0}.che--NotificationsItem-Time{white-space:nowrap}.che--NotificationsItem-Footer{align-items:flex-end;display:flex;gap:var(--space-3xl);justify-content:space-between;max-width:100%}.che--NotificationsItem-Badges{flex:1;position:relative}.che--NotificationsItem-Actions,.che--NotificationsItem-Button{position:absolute;right:0;top:0}
@@ -0,0 +1,6 @@
1
+ import './NotificationsItem.css';
2
+ import React from 'react';
3
+ import { NotificationsItemProps } from './types';
4
+ export declare const cnNotificationsItem: import("@bem-react/classname").ClassNameFormatter;
5
+ export declare const NotificationsItem: React.ForwardRefExoticComponent<Pick<NotificationsItemProps, "defaultChecked" | "defaultValue" | "suppressContentEditableWarning" | "suppressHydrationWarning" | "accessKey" | "className" | "contentEditable" | "contextMenu" | "dir" | "draggable" | "hidden" | "id" | "lang" | "nonce" | "placeholder" | "slot" | "spellCheck" | "style" | "tabIndex" | "title" | "translate" | "radioGroup" | "role" | "about" | "datatype" | "inlist" | "prefix" | "property" | "resource" | "typeof" | "vocab" | "autoCapitalize" | "autoCorrect" | "autoSave" | "color" | "itemProp" | "itemScope" | "itemType" | "itemID" | "itemRef" | "results" | "security" | "unselectable" | "inputMode" | "is" | "aria-activedescendant" | "aria-atomic" | "aria-autocomplete" | "aria-busy" | "aria-checked" | "aria-colcount" | "aria-colindex" | "aria-colspan" | "aria-controls" | "aria-current" | "aria-describedby" | "aria-details" | "aria-disabled" | "aria-dropeffect" | "aria-errormessage" | "aria-expanded" | "aria-flowto" | "aria-grabbed" | "aria-haspopup" | "aria-hidden" | "aria-invalid" | "aria-keyshortcuts" | "aria-label" | "aria-labelledby" | "aria-level" | "aria-live" | "aria-modal" | "aria-multiline" | "aria-multiselectable" | "aria-orientation" | "aria-owns" | "aria-placeholder" | "aria-posinset" | "aria-pressed" | "aria-readonly" | "aria-relevant" | "aria-required" | "aria-roledescription" | "aria-rowcount" | "aria-rowindex" | "aria-rowspan" | "aria-selected" | "aria-setsize" | "aria-sort" | "aria-valuemax" | "aria-valuemin" | "aria-valuenow" | "aria-valuetext" | "children" | "dangerouslySetInnerHTML" | "onCopy" | "onCopyCapture" | "onCut" | "onCutCapture" | "onPaste" | "onPasteCapture" | "onCompositionEnd" | "onCompositionEndCapture" | "onCompositionStart" | "onCompositionStartCapture" | "onCompositionUpdate" | "onCompositionUpdateCapture" | "onFocus" | "onFocusCapture" | "onBlur" | "onBlurCapture" | "onChange" | "onChangeCapture" | "onBeforeInput" | "onBeforeInputCapture" | "onInput" | "onInputCapture" | "onReset" | "onResetCapture" | "onSubmit" | "onSubmitCapture" | "onInvalid" | "onInvalidCapture" | "onLoad" | "onLoadCapture" | "onError" | "onErrorCapture" | "onKeyDown" | "onKeyDownCapture" | "onKeyPress" | "onKeyPressCapture" | "onKeyUp" | "onKeyUpCapture" | "onAbort" | "onAbortCapture" | "onCanPlay" | "onCanPlayCapture" | "onCanPlayThrough" | "onCanPlayThroughCapture" | "onDurationChange" | "onDurationChangeCapture" | "onEmptied" | "onEmptiedCapture" | "onEncrypted" | "onEncryptedCapture" | "onEnded" | "onEndedCapture" | "onLoadedData" | "onLoadedDataCapture" | "onLoadedMetadata" | "onLoadedMetadataCapture" | "onLoadStart" | "onLoadStartCapture" | "onPause" | "onPauseCapture" | "onPlay" | "onPlayCapture" | "onPlaying" | "onPlayingCapture" | "onProgress" | "onProgressCapture" | "onRateChange" | "onRateChangeCapture" | "onResize" | "onResizeCapture" | "onSeeked" | "onSeekedCapture" | "onSeeking" | "onSeekingCapture" | "onStalled" | "onStalledCapture" | "onSuspend" | "onSuspendCapture" | "onTimeUpdate" | "onTimeUpdateCapture" | "onVolumeChange" | "onVolumeChangeCapture" | "onWaiting" | "onWaitingCapture" | "onAuxClick" | "onAuxClickCapture" | "onClick" | "onClickCapture" | "onContextMenu" | "onContextMenuCapture" | "onDoubleClick" | "onDoubleClickCapture" | "onDrag" | "onDragCapture" | "onDragEnd" | "onDragEndCapture" | "onDragEnter" | "onDragEnterCapture" | "onDragExit" | "onDragExitCapture" | "onDragLeave" | "onDragLeaveCapture" | "onDragOver" | "onDragOverCapture" | "onDragStart" | "onDragStartCapture" | "onDrop" | "onDropCapture" | "onMouseDown" | "onMouseDownCapture" | "onMouseEnter" | "onMouseLeave" | "onMouseMove" | "onMouseMoveCapture" | "onMouseOut" | "onMouseOutCapture" | "onMouseOver" | "onMouseOverCapture" | "onMouseUp" | "onMouseUpCapture" | "onSelect" | "onSelectCapture" | "onTouchCancel" | "onTouchCancelCapture" | "onTouchEnd" | "onTouchEndCapture" | "onTouchMove" | "onTouchMoveCapture" | "onTouchStart" | "onTouchStartCapture" | "onPointerDown" | "onPointerDownCapture" | "onPointerMove" | "onPointerMoveCapture" | "onPointerUp" | "onPointerUpCapture" | "onPointerCancel" | "onPointerCancelCapture" | "onPointerEnter" | "onPointerEnterCapture" | "onPointerLeave" | "onPointerLeaveCapture" | "onPointerOver" | "onPointerOverCapture" | "onPointerOut" | "onPointerOutCapture" | "onGotPointerCapture" | "onGotPointerCaptureCapture" | "onLostPointerCapture" | "onLostPointerCaptureCapture" | "onScroll" | "onScrollCapture" | "onWheel" | "onWheelCapture" | "onAnimationStart" | "onAnimationStartCapture" | "onAnimationEnd" | "onAnimationEndCapture" | "onAnimationIteration" | "onAnimationIterationCapture" | "onTransitionEnd" | "onTransitionEndCapture" | "view" | "key" | "date" | "description" | "imageUrl" | "read" | "dateFormat" | "badges" | "actions" | "actionsMenuOpened"> & React.RefAttributes<HTMLDivElement>>;
6
+ export * from './types';
@@ -0,0 +1,2 @@
1
+ import _objectWithoutProperties from"@babel/runtime/helpers/objectWithoutProperties";const _excluded=["title","className","description","imageUrl","view","read","date","dateFormat","badges","actions","actionsMenuOpened"];import"./NotificationsItem.css";import{Avatar}from"@consta/uikit/Avatar";import{BadgeGroup}from"@consta/uikit/BadgeGroup";import{cnMixSpace}from"@consta/uikit/MixSpace";import{Text}from"@consta/uikit/Text";import React,{forwardRef}from"react";import{cn}from"../../../utils/bem";import{NotificationsActions}from"../NotificationsActions";import{defaultDateFormat}from"./helpers";export const cnNotificationsItem=cn("NotificationsItem");const getItemView=()=>"stroked";export const NotificationsItem=forwardRef((a,b)=>{var c;const{title:d,className:e,description:f,imageUrl:g,view:l="default",read:h,date:i,dateFormat:m=defaultDateFormat,badges:n=[],actions:j,actionsMenuOpened:k}=a,o=_objectWithoutProperties(a,_excluded);return React.createElement("div",Object.assign({},o,{ref:b,className:cnNotificationsItem(null,[e])}),(g||"user"===l)&&React.createElement(Avatar,{size:"l",name:d,url:g,className:cnNotificationsItem("Image",[cnMixSpace({mR:"m"})])}),React.createElement("div",{className:cnNotificationsItem("Content")},React.createElement("div",{className:cnNotificationsItem("Text")},React.createElement(Text,{weight:h?void 0:"bold",className:cnNotificationsItem("Title",{cardWithActions:!!(null!==j&&void 0!==j&&j.length)})},d),f&&React.createElement(Text,{size:"s"},f)),(n||i)&&React.createElement("div",{className:cnNotificationsItem("Footer")},React.createElement(BadgeGroup,{className:cnNotificationsItem("Badges",[cnMixSpace({mR:"xl"})]),items:n,size:"s",fitMode:"reduction",getItemKey:a=>a.label,getItemView:getItemView}),i&&React.createElement(Text,{className:cnNotificationsItem("Time"),size:"xs",view:"secondary"},m(i))),(null===j||void 0===j?void 0:j.length)&&React.createElement(NotificationsActions,{className:cnNotificationsItem("Actions"),items:j,mainButtonOnlyIcon:!0,opened:k,style:{zIndex:null===(c=a.style)||void 0===c?void 0:c.zIndex}})))});export*from"./types";
2
+ //# sourceMappingURL=NotificationsItem.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"NotificationsItem.js","names":["Avatar","BadgeGroup","cnMixSpace","Text","React","forwardRef","cn","NotificationsActions","defaultDateFormat","cnNotificationsItem","getItemView","NotificationsItem","props","ref","c","title","className","description","imageUrl","view","read","date","dateFormat","badges","actions","actionsMenuOpened","otherProps","_objectWithoutProperties","_excluded","createElement","Object","assign","size","name","url","mR","weight","cardWithActions","length","items","fitMode","getItemKey","item","label","mainButtonOnlyIcon","opened","style","zIndex"],"sources":["../../../../../../src/components/Notifications/NotificationsItem/NotificationsItem.tsx"],"sourcesContent":["import './NotificationsItem.css';\n\nimport { Avatar } from '@consta/uikit/Avatar';\nimport { BadgePropView } from '@consta/uikit/Badge';\nimport { BadgeGroup } from '@consta/uikit/BadgeGroup';\nimport { cnMixSpace } from '@consta/uikit/MixSpace';\nimport { Text } from '@consta/uikit/Text';\nimport React, { forwardRef } from 'react';\n\nimport { cn } from '##/utils/bem';\n\nimport { NotificationsActions } from '../NotificationsActions';\nimport { defaultDateFormat } from './helpers';\nimport { NotificationsItemProps } from './types';\n\nexport const cnNotificationsItem = cn('NotificationsItem');\n\nconst getItemView = (): BadgePropView => 'stroked';\n\nexport const NotificationsItem = forwardRef(\n (props: NotificationsItemProps, ref: React.Ref<HTMLDivElement>) => {\n const {\n title,\n className,\n description,\n imageUrl,\n view = 'default',\n read,\n date,\n dateFormat = defaultDateFormat,\n badges = [],\n actions,\n actionsMenuOpened,\n ...otherProps\n } = props;\n\n return (\n <div\n {...otherProps}\n ref={ref}\n className={cnNotificationsItem(null, [className])}\n >\n {(imageUrl || view === 'user') && (\n <Avatar\n size=\"l\"\n name={title}\n url={imageUrl}\n className={cnNotificationsItem('Image', [cnMixSpace({ mR: 'm' })])}\n />\n )}\n <div className={cnNotificationsItem('Content')}>\n <div className={cnNotificationsItem('Text')}>\n <Text\n weight={!read ? 'bold' : undefined}\n className={cnNotificationsItem('Title', {\n cardWithActions: !!actions?.length,\n })}\n >\n {title}\n </Text>\n {description && <Text size=\"s\">{description}</Text>}\n </div>\n {(badges || date) && (\n <div className={cnNotificationsItem('Footer')}>\n <BadgeGroup\n className={cnNotificationsItem('Badges', [\n cnMixSpace({ mR: 'xl' }),\n ])}\n items={badges}\n size=\"s\"\n fitMode=\"reduction\"\n getItemKey={(item) => item.label}\n getItemView={getItemView}\n />\n {date && (\n <Text\n className={cnNotificationsItem('Time')}\n size=\"xs\"\n view=\"secondary\"\n >\n {dateFormat(date)}\n </Text>\n )}\n </div>\n )}\n {actions?.length && (\n <NotificationsActions\n className={cnNotificationsItem('Actions')}\n items={actions}\n mainButtonOnlyIcon\n opened={actionsMenuOpened}\n style={{ zIndex: props.style?.zIndex }}\n />\n )}\n </div>\n </div>\n );\n },\n);\n\nexport * from './types';\n"],"mappings":"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"}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"helpers.js","names":["format","formatDistanceToNow","ruLocale","defaultDateFormat","date","currentDate","Date","getTime","locale","addSuffix"],"sources":["../../../../../../src/components/Notifications/NotificationsItem/helpers.ts"],"sourcesContent":["import format from 'date-fns/format';\nimport formatDistanceToNow from 'date-fns/formatDistanceToNow';\nimport ruLocale from 'date-fns/locale/ru';\n\nexport const defaultDateFormat = (date: Date): string => {\n const currentDate = new Date();\n\n if (currentDate.getTime() - date.getTime() < 3600000) {\n return formatDistanceToNow(date, { locale: ruLocale, addSuffix: true });\n }\n\n if (format(currentDate, 'dd.MM.yyyy') === format(date, 'dd.MM.yyyy')) {\n return format(date, 'HH:mm');\n }\n\n return format(date, 'dd.MM.yyyy HH:mm');\n};\n"],"mappings":"AAAA,MAAO,CAAAA,MAAM,KAAM,iBAAiB,CACpC,MAAO,CAAAC,mBAAmB,KAAM,8BAA8B,CAC9D,MAAO,CAAAC,QAAQ,KAAM,oBAAoB,CAEzC,MAAO,MAAM,CAAAC,iBAAiB,CAAIC,CAAU,EAAa,CACvD,KAAM,CAAAC,CAAW,CAAG,GAAI,CAAAC,IAAM,CAAC,MAEc,KAAO,CAAhDD,CAAW,CAACE,OAAO,CAAC,CAAC,CAAGH,CAAI,CAACG,OAAO,CAAC,CAAW,CAC3CN,mBAAmB,CAACG,CAAI,CAAE,CAAEI,MAAM,CAAEN,QAAQ,CAAEO,SAAS,GAAO,CAAC,CAAC,CAGrET,MAAM,CAACK,CAAW,CAAE,YAAY,CAAC,GAAKL,MAAM,CAACI,CAAI,CAAE,YAAY,CAAC,CAC3DJ,MAAM,CAACI,CAAI,CAAE,OAAO,CAAC,CAGvBJ,MAAM,CAACI,CAAI,CAAE,kBAAkB,CACxC,CAAC"}
@@ -0,0 +1 @@
1
+ export * from './NotificationsItem';
@@ -0,0 +1,2 @@
1
+ export*from"./NotificationsItem";
2
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","names":[],"sources":["../../../../../../src/components/Notifications/NotificationsItem/index.ts"],"sourcesContent":["export * from './NotificationsItem';\n"],"mappings":"AAAA"}
@@ -1,28 +1,27 @@
1
+ import { IconProps } from '@consta/icons/Icon';
1
2
  import { BadgePropStatus } from '@consta/uikit/Badge';
2
- import { IconProps } from '@consta/uikit/Icon';
3
3
  import React from 'react';
4
- import { PropsWithHTMLAttributesAndRef } from "../../utils/types/PropsWithHTMLAttributes";
5
- export type NotificationCardAction = {
4
+ import { PropsWithHTMLAttributesAndRef } from "../../../utils/types/PropsWithHTMLAttributes";
5
+ export type NotificationsItemAction = {
6
6
  label: string;
7
7
  onClick?: React.EventHandler<React.MouseEvent>;
8
8
  icon?: React.FC<IconProps>;
9
9
  };
10
- export type NotificationCardBadge = {
10
+ export type NotificationsItemBadge = {
11
11
  label: string;
12
12
  status?: BadgePropStatus;
13
13
  };
14
- export type NotificationCardProps = PropsWithHTMLAttributesAndRef<{
14
+ export type NotificationsItemProps = PropsWithHTMLAttributesAndRef<{
15
15
  title: string;
16
16
  description?: string;
17
17
  imageUrl?: string;
18
18
  read?: boolean;
19
19
  date?: Date;
20
20
  dateFormat?: (date: Date) => string;
21
- badges?: NotificationCardBadge[];
22
- actions?: NotificationCardAction[];
21
+ badges?: NotificationsItemBadge[];
22
+ actions?: NotificationsItemAction[];
23
23
  onClick?: React.EventHandler<React.MouseEvent>;
24
24
  children?: never;
25
25
  view?: 'user' | 'default';
26
26
  actionsMenuOpened?: boolean;
27
- setVisibleMenu?: (setVisibleMenu: React.Dispatch<React.SetStateAction<boolean>>) => void;
28
27
  }, HTMLDivElement>;
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.js","names":[],"sources":["../../../../../../src/components/Notifications/NotificationsItem/types.ts"],"sourcesContent":["import { IconProps } from '@consta/icons/Icon';\nimport { BadgePropStatus } from '@consta/uikit/Badge';\nimport React from 'react';\n\nimport { PropsWithHTMLAttributesAndRef } from '##/utils/types/PropsWithHTMLAttributes';\n\nexport type NotificationsItemAction = {\n label: string;\n onClick?: React.EventHandler<React.MouseEvent>;\n icon?: React.FC<IconProps>;\n};\n\nexport type NotificationsItemBadge = {\n label: string;\n status?: BadgePropStatus;\n};\n\nexport type NotificationsItemProps = PropsWithHTMLAttributesAndRef<\n {\n title: string;\n description?: string;\n imageUrl?: string;\n read?: boolean;\n date?: Date;\n dateFormat?: (date: Date) => string;\n badges?: NotificationsItemBadge[];\n actions?: NotificationsItemAction[];\n onClick?: React.EventHandler<React.MouseEvent>;\n children?: never;\n view?: 'user' | 'default';\n actionsMenuOpened?: boolean;\n },\n HTMLDivElement\n>;\n"],"mappings":""}
@@ -0,0 +1 @@
1
+ .che--NotificationsList{display:flex;flex-direction:column}.che--NotificationsList-GroupLabel{background:var(--color-bg-secondary)}.che--NotificationsList-Header{align-items:center;border-bottom:1px solid var(--color-bg-border);display:flex;flex:none}.che--NotificationsList-HeaderItem{flex:none;margin-right:var(--space-xs)}.che--NotificationsList-HeaderItem:last-child{margin-right:0}.che--NotificationsList-HeaderItem:first-child{flex:1}.che--NotificationsList-List{height:100%;overflow:auto}
@@ -0,0 +1,2 @@
1
+ import _objectWithoutProperties from"@babel/runtime/helpers/objectWithoutProperties";const _excluded=["className","items","groupByDay","groups","groupLabelFormat","itemDateFormat","title","actions","getItemLabel","getActionIcon","getActionLabel","getActionOnClick","getGroupId","getGroupLabel","getItemActions","getItemBadges","getItemDate","getItemDescription","getItemGroup","getItemImage","getItemRead","getItemView","onClose"];import"./NotificationsList.css";import{IconClose}from"@consta/icons/IconClose";import{Button}from"@consta/uikit/Button";import{cnMixSpace}from"@consta/uikit/MixSpace";import{Text}from"@consta/uikit/Text";import React,{forwardRef,Fragment}from"react";import{cn}from"../../../utils/bem";import{NotificationsActions}from"../NotificationsActions";import{NotificationsItem}from"../NotificationsItem";import{defaultGroupLabelFormat,getGroups,withDefaultGetters}from"./helpers";export const cnNotificationsList=cn("NotificationsList");function NotificationsListRender(a,b){var c;const d=withDefaultGetters(a),{className:e,items:f,groupByDay:z=!1,groups:g,groupLabelFormat:A=defaultGroupLabelFormat,itemDateFormat:h,title:i,actions:j,getItemLabel:k,getActionIcon:l,getActionLabel:m,getActionOnClick:n,getGroupId:o,getGroupLabel:p,getItemActions:q,getItemBadges:r,getItemDate:s,getItemDescription:t,getItemGroup:u,getItemImage:v,getItemRead:w,getItemView:x,onClose:y}=d,B=_objectWithoutProperties(d,_excluded),C=getGroups(f,g,z,u,s,o),D="number"==typeof(null===(c=a.style)||void 0===c?void 0:c.zIndex)?a.style.zIndex+1:void 0;return React.createElement("div",Object.assign({},B,{ref:b,className:cnNotificationsList(null,[e])}),(i||j)&&React.createElement("div",{className:cnNotificationsList("Header",[cnMixSpace({pV:"l",pH:"xl"})])},React.createElement(Text,{className:cnNotificationsList("HeaderItem"),size:"xl",truncate:!0},i),(null===j||void 0===j?void 0:j.length)&&React.createElement(NotificationsActions,{className:cnNotificationsList("HeaderItem"),items:j,getItemIcon:l,getItemOnClick:n,getItemLabel:m,style:{zIndex:D}}),y&&React.createElement(Button,{className:cnNotificationsList("HeaderItem"),size:"s",view:"clear",iconLeft:IconClose,onClick:y})),React.createElement("div",{className:cnNotificationsList("List")},C.map((a,b)=>{const c=z?A(+a.key):a.group&&p(a.group);return React.createElement(Fragment,{key:cnNotificationsList("Group",{groupIndex:b})},c&&React.createElement(Text,{className:cnNotificationsList("GroupLabel",[cnMixSpace({pV:"2xs",pH:"xl"})]),key:cnNotificationsList("GroupLabel",{groupIndex:b}),view:"secondary",transform:"uppercase",weight:"bold",size:"2xs"},c),a.items.map((a,c)=>React.createElement(NotificationsItem,{className:cnNotificationsList("Item",[cnMixSpace({pV:"l",pH:"xl"})]),key:cnNotificationsList("Item",{groupIndex:b,itemIndex:c}),title:k(a),description:t(a),imageUrl:v(a),read:w(a),date:s(a),dateFormat:h,badges:r(a),actions:q(a),view:x(a),style:{zIndex:D}})))})))}export const NotificationsList=forwardRef(NotificationsListRender);export*from"./types";
2
+ //# sourceMappingURL=NotificationsList.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"NotificationsList.js","names":["IconClose","Button","cnMixSpace","Text","React","forwardRef","Fragment","cn","NotificationsActions","NotificationsItem","defaultGroupLabelFormat","getGroups","withDefaultGetters","cnNotificationsList","NotificationsListRender","props","ref","c","d","className","items","groupByDay","groups","groupLabelFormat","itemDateFormat","title","actions","getItemLabel","getActionIcon","getActionLabel","getActionOnClick","getGroupId","getGroupLabel","getItemActions","getItemBadges","getItemDate","getItemDescription","getItemGroup","getItemImage","getItemRead","getItemView","onClose","otherProps","_objectWithoutProperties","_excluded","resultGroups","elementZIndex","style","zIndex","createElement","Object","assign","pV","pH","size","truncate","length","getItemIcon","getItemOnClick","view","iconLeft","onClick","map","group","groupIndex","groupLabel","key","transform","weight","item","itemIndex","description","imageUrl","read","date","dateFormat","badges","NotificationsList"],"sources":["../../../../../../src/components/Notifications/NotificationsList/NotificationsList.tsx"],"sourcesContent":["import './NotificationsList.css';\n\nimport { IconClose } from '@consta/icons/IconClose';\nimport { Button } from '@consta/uikit/Button';\nimport { cnMixSpace } from '@consta/uikit/MixSpace';\nimport { Text } from '@consta/uikit/Text';\nimport React, { forwardRef, Fragment } from 'react';\n\nimport { cn } from '##/utils/bem';\n\nimport { NotificationsActions } from '../NotificationsActions';\nimport { NotificationsItem } from '../NotificationsItem';\nimport {\n defaultGroupLabelFormat,\n getGroups,\n withDefaultGetters,\n} from './helpers';\nimport { NotificationsListComponent, NotificationsListProps } from './types';\n\nexport const cnNotificationsList = cn('NotificationsList');\n\nfunction NotificationsListRender(\n props: NotificationsListProps,\n ref: React.Ref<HTMLDivElement>,\n) {\n const {\n className,\n items,\n groupByDay = false,\n groups,\n groupLabelFormat = defaultGroupLabelFormat,\n itemDateFormat,\n title,\n actions,\n getItemLabel,\n getActionIcon,\n getActionLabel,\n getActionOnClick,\n getGroupId,\n getGroupLabel,\n getItemActions,\n getItemBadges,\n getItemDate,\n getItemDescription,\n getItemGroup,\n getItemImage,\n getItemRead,\n getItemView,\n onClose,\n ...otherProps\n } = withDefaultGetters(props);\n\n const resultGroups = getGroups(\n items,\n groups,\n groupByDay,\n getItemGroup,\n getItemDate,\n getGroupId,\n );\n\n const elementZIndex =\n typeof props.style?.zIndex === 'number'\n ? props.style.zIndex + 1\n : undefined;\n\n return (\n <div\n {...otherProps}\n ref={ref}\n className={cnNotificationsList(null, [className])}\n >\n {(title || actions) && (\n <div\n className={cnNotificationsList('Header', [\n cnMixSpace({ pV: 'l', pH: 'xl' }),\n ])}\n >\n <Text\n className={cnNotificationsList('HeaderItem')}\n size=\"xl\"\n truncate\n >\n {title}\n </Text>\n {actions?.length && (\n <NotificationsActions\n className={cnNotificationsList('HeaderItem')}\n items={actions}\n getItemIcon={getActionIcon}\n getItemOnClick={getActionOnClick}\n getItemLabel={getActionLabel}\n style={{ zIndex: elementZIndex }}\n />\n )}\n {onClose && (\n <Button\n className={cnNotificationsList('HeaderItem')}\n size=\"s\"\n view=\"clear\"\n iconLeft={IconClose}\n onClick={onClose}\n />\n )}\n </div>\n )}\n <div className={cnNotificationsList('List')}>\n {resultGroups.map((group, groupIndex) => {\n const groupLabel = groupByDay\n ? groupLabelFormat(Number(group.key))\n : group.group && getGroupLabel(group.group);\n return (\n <Fragment key={cnNotificationsList('Group', { groupIndex })}>\n {groupLabel && (\n <Text\n className={cnNotificationsList('GroupLabel', [\n cnMixSpace({\n pV: '2xs',\n pH: 'xl',\n }),\n ])}\n key={cnNotificationsList('GroupLabel', { groupIndex })}\n view=\"secondary\"\n transform=\"uppercase\"\n weight=\"bold\"\n size=\"2xs\"\n >\n {groupLabel}\n </Text>\n )}\n {group.items.map((item, itemIndex) => {\n return (\n <NotificationsItem\n className={cnNotificationsList('Item', [\n cnMixSpace({ pV: 'l', pH: 'xl' }),\n ])}\n key={cnNotificationsList('Item', { groupIndex, itemIndex })}\n title={getItemLabel(item)}\n description={getItemDescription(item)}\n imageUrl={getItemImage(item)}\n read={getItemRead(item)}\n date={getItemDate(item)}\n dateFormat={itemDateFormat}\n badges={getItemBadges(item)}\n actions={getItemActions(item)}\n view={getItemView(item)}\n style={{ zIndex: elementZIndex }}\n />\n );\n })}\n </Fragment>\n );\n })}\n </div>\n </div>\n );\n}\n\nexport const NotificationsList = forwardRef(\n NotificationsListRender,\n) as NotificationsListComponent;\n\nexport * from './types';\n"],"mappings":"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"}