@gravity-ui/blog-constructor 7.0.0-alpha.2 → 7.0.0-beta.2

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 (607) hide show
  1. package/build/cjs/blocks/Author/Author.d.ts +2 -3
  2. package/build/cjs/blocks/Author/Author.js +13 -13
  3. package/build/cjs/blocks/Author/Author.js.map +1 -0
  4. package/build/cjs/blocks/Author/schema.js +4 -3
  5. package/build/cjs/blocks/Author/schema.js.map +1 -0
  6. package/build/cjs/blocks/Banner/Banner.d.ts +2 -3
  7. package/build/cjs/blocks/Banner/Banner.js +11 -15
  8. package/build/cjs/blocks/Banner/Banner.js.map +1 -0
  9. package/build/cjs/blocks/Banner/schema.js +4 -3
  10. package/build/cjs/blocks/Banner/schema.js.map +1 -0
  11. package/build/cjs/blocks/CTA/CTA.d.ts +2 -3
  12. package/build/cjs/blocks/CTA/CTA.js +19 -20
  13. package/build/cjs/blocks/CTA/CTA.js.map +1 -0
  14. package/build/cjs/blocks/CTA/schema.js +4 -3
  15. package/build/cjs/blocks/CTA/schema.js.map +1 -0
  16. package/build/cjs/blocks/ColoredText/ColoredText.d.ts +2 -3
  17. package/build/cjs/blocks/ColoredText/ColoredText.js +9 -12
  18. package/build/cjs/blocks/ColoredText/ColoredText.js.map +1 -0
  19. package/build/cjs/blocks/ColoredText/schema.js +4 -3
  20. package/build/cjs/blocks/ColoredText/schema.js.map +1 -0
  21. package/build/cjs/blocks/Feed/Feed.d.ts +2 -3
  22. package/build/cjs/blocks/Feed/Feed.js +31 -31
  23. package/build/cjs/blocks/Feed/Feed.js.map +1 -0
  24. package/build/cjs/blocks/Feed/reducer.d.ts +1 -1
  25. package/build/cjs/blocks/Feed/reducer.js +3 -2
  26. package/build/cjs/blocks/Feed/reducer.js.map +1 -0
  27. package/build/cjs/blocks/Feed/schema.js +3 -2
  28. package/build/cjs/blocks/Feed/schema.js.map +1 -0
  29. package/build/cjs/blocks/Form/Form.d.ts +2 -3
  30. package/build/cjs/blocks/Form/Form.js +10 -10
  31. package/build/cjs/blocks/Form/Form.js.map +1 -0
  32. package/build/cjs/blocks/Form/schema.js +4 -3
  33. package/build/cjs/blocks/Form/schema.js.map +1 -0
  34. package/build/cjs/blocks/Header/Header.d.ts +2 -3
  35. package/build/cjs/blocks/Header/Header.js +18 -18
  36. package/build/cjs/blocks/Header/Header.js.map +1 -0
  37. package/build/cjs/blocks/Header/schema.d.ts +3 -0
  38. package/build/cjs/blocks/Header/schema.js +4 -3
  39. package/build/cjs/blocks/Header/schema.js.map +1 -0
  40. package/build/cjs/blocks/Layout/Layout.d.ts +3 -3
  41. package/build/cjs/blocks/Layout/Layout.js +12 -13
  42. package/build/cjs/blocks/Layout/Layout.js.map +1 -0
  43. package/build/cjs/blocks/Layout/schema.js +4 -3
  44. package/build/cjs/blocks/Layout/schema.js.map +1 -0
  45. package/build/cjs/blocks/Media/Media.d.ts +2 -3
  46. package/build/cjs/blocks/Media/Media.js +12 -15
  47. package/build/cjs/blocks/Media/Media.js.map +1 -0
  48. package/build/cjs/blocks/Media/schema.d.ts +3 -0
  49. package/build/cjs/blocks/Media/schema.js +4 -3
  50. package/build/cjs/blocks/Media/schema.js.map +1 -0
  51. package/build/cjs/blocks/Meta/Meta.d.ts +2 -3
  52. package/build/cjs/blocks/Meta/Meta.js +22 -23
  53. package/build/cjs/blocks/Meta/Meta.js.map +1 -0
  54. package/build/cjs/blocks/Meta/schema.js +4 -3
  55. package/build/cjs/blocks/Meta/schema.js.map +1 -0
  56. package/build/cjs/blocks/Suggest/Suggest.d.ts +2 -3
  57. package/build/cjs/blocks/Suggest/Suggest.js +15 -14
  58. package/build/cjs/blocks/Suggest/Suggest.js.map +1 -0
  59. package/build/cjs/blocks/Suggest/schema.js +4 -3
  60. package/build/cjs/blocks/Suggest/schema.js.map +1 -0
  61. package/build/cjs/blocks/YFM/YFM.d.ts +2 -3
  62. package/build/cjs/blocks/YFM/YFM.js +10 -11
  63. package/build/cjs/blocks/YFM/YFM.js.map +1 -0
  64. package/build/cjs/blocks/YFM/schema.js +4 -3
  65. package/build/cjs/blocks/YFM/schema.js.map +1 -0
  66. package/build/cjs/blocks/constants.js +2 -1
  67. package/build/cjs/blocks/constants.js.map +1 -0
  68. package/build/cjs/components/FeedHeader/FeedHeader.d.ts +3 -4
  69. package/build/cjs/components/FeedHeader/FeedHeader.js +10 -14
  70. package/build/cjs/components/FeedHeader/FeedHeader.js.map +1 -0
  71. package/build/cjs/components/FeedHeader/components/Controls/Controls.d.ts +4 -4
  72. package/build/cjs/components/FeedHeader/components/Controls/Controls.js +30 -40
  73. package/build/cjs/components/FeedHeader/components/Controls/Controls.js.map +1 -0
  74. package/build/cjs/components/FeedHeader/components/Controls/customRenders.d.ts +2 -3
  75. package/build/cjs/components/FeedHeader/components/Controls/customRenders.js +13 -9
  76. package/build/cjs/components/FeedHeader/components/Controls/customRenders.js.map +1 -0
  77. package/build/cjs/components/FeedHeader/components/CustomSelectOption/CustomSelectOption.d.ts +2 -2
  78. package/build/cjs/components/FeedHeader/components/CustomSelectOption/CustomSelectOption.js +5 -7
  79. package/build/cjs/components/FeedHeader/components/CustomSelectOption/CustomSelectOption.js.map +1 -0
  80. package/build/cjs/components/FeedHeader/components/CustomSwitcher/CustomSwitcher.css +1 -1
  81. package/build/cjs/components/FeedHeader/components/CustomSwitcher/CustomSwitcher.d.ts +2 -3
  82. package/build/cjs/components/FeedHeader/components/CustomSwitcher/CustomSwitcher.js +13 -17
  83. package/build/cjs/components/FeedHeader/components/CustomSwitcher/CustomSwitcher.js.map +1 -0
  84. package/build/cjs/components/MetaWrapper/MetaWrapper.d.ts +1 -1
  85. package/build/cjs/components/MetaWrapper/MetaWrapper.js +4 -4
  86. package/build/cjs/components/MetaWrapper/MetaWrapper.js.map +1 -0
  87. package/build/cjs/components/Paginator/Paginator.d.ts +2 -3
  88. package/build/cjs/components/Paginator/Paginator.js +25 -29
  89. package/build/cjs/components/Paginator/Paginator.js.map +1 -0
  90. package/build/cjs/components/Paginator/components/NavigationButton.d.ts +2 -3
  91. package/build/cjs/components/Paginator/components/NavigationButton.js +7 -7
  92. package/build/cjs/components/Paginator/components/NavigationButton.js.map +1 -0
  93. package/build/cjs/components/Paginator/components/PaginatorItem.d.ts +2 -3
  94. package/build/cjs/components/Paginator/components/PaginatorItem.js +13 -11
  95. package/build/cjs/components/Paginator/components/PaginatorItem.js.map +1 -0
  96. package/build/cjs/components/Paginator/types.d.ts +3 -3
  97. package/build/cjs/components/Paginator/types.js +2 -1
  98. package/build/cjs/components/Paginator/types.js.map +1 -0
  99. package/build/cjs/components/Paginator/utils.d.ts +2 -2
  100. package/build/cjs/components/Paginator/utils.js +2 -1
  101. package/build/cjs/components/Paginator/utils.js.map +1 -0
  102. package/build/cjs/components/PostCard/PostCard.css +7 -8
  103. package/build/cjs/components/PostCard/PostCard.d.ts +2 -3
  104. package/build/cjs/components/PostCard/PostCard.js +16 -24
  105. package/build/cjs/components/PostCard/PostCard.js.map +1 -0
  106. package/build/cjs/components/PostInfo/PostInfo.d.ts +2 -3
  107. package/build/cjs/components/PostInfo/PostInfo.js +13 -15
  108. package/build/cjs/components/PostInfo/PostInfo.js.map +1 -0
  109. package/build/cjs/components/PostInfo/SuggestPostInfo.d.ts +2 -3
  110. package/build/cjs/components/PostInfo/SuggestPostInfo.js +12 -16
  111. package/build/cjs/components/PostInfo/SuggestPostInfo.js.map +1 -0
  112. package/build/cjs/components/PostInfo/components/Date.d.ts +2 -3
  113. package/build/cjs/components/PostInfo/components/Date.js +10 -8
  114. package/build/cjs/components/PostInfo/components/Date.js.map +1 -0
  115. package/build/cjs/components/PostInfo/components/ReadingTime.d.ts +2 -3
  116. package/build/cjs/components/PostInfo/components/ReadingTime.js +7 -10
  117. package/build/cjs/components/PostInfo/components/ReadingTime.js.map +1 -0
  118. package/build/cjs/components/PostInfo/components/Save.d.ts +2 -3
  119. package/build/cjs/components/PostInfo/components/Save.js +14 -16
  120. package/build/cjs/components/PostInfo/components/Save.js.map +1 -0
  121. package/build/cjs/components/PostInfo/components/Sharing.d.ts +1 -2
  122. package/build/cjs/components/PostInfo/components/Sharing.js +17 -17
  123. package/build/cjs/components/PostInfo/components/Sharing.js.map +1 -0
  124. package/build/cjs/components/Posts/Posts.d.ts +4 -4
  125. package/build/cjs/components/Posts/Posts.js +16 -28
  126. package/build/cjs/components/Posts/Posts.js.map +1 -0
  127. package/build/cjs/components/PostsEmpty/PostsEmpty.d.ts +1 -2
  128. package/build/cjs/components/PostsEmpty/PostsEmpty.js +6 -8
  129. package/build/cjs/components/PostsEmpty/PostsEmpty.js.map +1 -0
  130. package/build/cjs/components/PostsError/PostsError.d.ts +1 -2
  131. package/build/cjs/components/PostsError/PostsError.js +6 -10
  132. package/build/cjs/components/PostsError/PostsError.js.map +1 -0
  133. package/build/cjs/components/Prompt/Prompt.d.ts +1 -2
  134. package/build/cjs/components/Prompt/Prompt.js +10 -12
  135. package/build/cjs/components/Prompt/Prompt.js.map +1 -0
  136. package/build/cjs/components/PromptSignIn/PromptSignIn.d.ts +4 -4
  137. package/build/cjs/components/PromptSignIn/PromptSignIn.js +6 -5
  138. package/build/cjs/components/PromptSignIn/PromptSignIn.js.map +1 -0
  139. package/build/cjs/components/PromptSignIn/hooks/usePromptSignInProps.d.ts +2 -2
  140. package/build/cjs/components/PromptSignIn/hooks/usePromptSignInProps.js +6 -5
  141. package/build/cjs/components/PromptSignIn/hooks/usePromptSignInProps.js.map +1 -0
  142. package/build/cjs/components/Search/Search.d.ts +2 -3
  143. package/build/cjs/components/Search/Search.js +17 -17
  144. package/build/cjs/components/Search/Search.js.map +1 -0
  145. package/build/cjs/components/Wrapper/Wrapper.d.ts +3 -3
  146. package/build/cjs/components/Wrapper/Wrapper.js +7 -7
  147. package/build/cjs/components/Wrapper/Wrapper.js.map +1 -0
  148. package/build/cjs/constants.d.ts +2 -2
  149. package/build/cjs/constants.js +4 -3
  150. package/build/cjs/constants.js.map +1 -0
  151. package/build/cjs/constructor/BlogConstructorProvider.d.ts +7 -7
  152. package/build/cjs/constructor/BlogConstructorProvider.js +21 -19
  153. package/build/cjs/constructor/BlogConstructorProvider.js.map +1 -0
  154. package/build/cjs/constructor/blocksMap.d.ts +12 -12
  155. package/build/cjs/constructor/blocksMap.js +15 -14
  156. package/build/cjs/constructor/blocksMap.js.map +1 -0
  157. package/build/cjs/containers/BlogPage/BlogPage.d.ts +4 -4
  158. package/build/cjs/containers/BlogPage/BlogPage.js +22 -25
  159. package/build/cjs/containers/BlogPage/BlogPage.js.map +1 -0
  160. package/build/cjs/containers/BlogPostPage/BlogPostPage.css +18 -18
  161. package/build/cjs/containers/BlogPostPage/BlogPostPage.d.ts +6 -5
  162. package/build/cjs/containers/BlogPostPage/BlogPostPage.js +28 -30
  163. package/build/cjs/containers/BlogPostPage/BlogPostPage.js.map +1 -0
  164. package/build/cjs/contexts/DeviceContext.d.ts +2 -2
  165. package/build/cjs/contexts/DeviceContext.js +3 -2
  166. package/build/cjs/contexts/DeviceContext.js.map +1 -0
  167. package/build/cjs/contexts/FeedContext.d.ts +2 -2
  168. package/build/cjs/contexts/FeedContext.js +3 -2
  169. package/build/cjs/contexts/FeedContext.js.map +1 -0
  170. package/build/cjs/contexts/LikesContext.d.ts +2 -2
  171. package/build/cjs/contexts/LikesContext.js +3 -2
  172. package/build/cjs/contexts/LikesContext.js.map +1 -0
  173. package/build/cjs/contexts/LocaleContext.d.ts +2 -2
  174. package/build/cjs/contexts/LocaleContext.js +4 -3
  175. package/build/cjs/contexts/LocaleContext.js.map +1 -0
  176. package/build/cjs/contexts/MobileContext.d.ts +1 -1
  177. package/build/cjs/contexts/MobileContext.js +3 -2
  178. package/build/cjs/contexts/MobileContext.js.map +1 -0
  179. package/build/cjs/contexts/PostPageContext.d.ts +4 -2
  180. package/build/cjs/contexts/PostPageContext.js +3 -2
  181. package/build/cjs/contexts/PostPageContext.js.map +1 -0
  182. package/build/cjs/contexts/RouterContext.d.ts +2 -2
  183. package/build/cjs/contexts/RouterContext.js +3 -2
  184. package/build/cjs/contexts/RouterContext.js.map +1 -0
  185. package/build/cjs/contexts/SettingsContext.d.ts +1 -1
  186. package/build/cjs/contexts/SettingsContext.js +3 -2
  187. package/build/cjs/contexts/SettingsContext.js.map +1 -0
  188. package/build/cjs/contexts/theme/ThemeContext.d.ts +2 -2
  189. package/build/cjs/contexts/theme/ThemeContext.js +4 -3
  190. package/build/cjs/contexts/theme/ThemeContext.js.map +1 -0
  191. package/build/cjs/contexts/theme/ThemeProvider.d.ts +4 -4
  192. package/build/cjs/contexts/theme/ThemeProvider.js +9 -8
  193. package/build/cjs/contexts/theme/ThemeProvider.js.map +1 -0
  194. package/build/cjs/contexts/theme/ThemeValueContext.d.ts +1 -1
  195. package/build/cjs/contexts/theme/ThemeValueContext.js +3 -2
  196. package/build/cjs/contexts/theme/ThemeValueContext.js.map +1 -0
  197. package/build/cjs/contexts/theme/index.d.ts +6 -6
  198. package/build/cjs/contexts/theme/index.js +7 -6
  199. package/build/cjs/contexts/theme/index.js.map +1 -0
  200. package/build/cjs/contexts/theme/useTheme.d.ts +1 -1
  201. package/build/cjs/contexts/theme/useTheme.js +5 -5
  202. package/build/cjs/contexts/theme/useTheme.js.map +1 -0
  203. package/build/cjs/contexts/theme/useThemeValue.d.ts +1 -1
  204. package/build/cjs/contexts/theme/useThemeValue.js +5 -5
  205. package/build/cjs/contexts/theme/useThemeValue.js.map +1 -0
  206. package/build/cjs/contexts/theme/withTheme.d.ts +2 -2
  207. package/build/cjs/contexts/theme/withTheme.js +7 -6
  208. package/build/cjs/contexts/theme/withTheme.js.map +1 -0
  209. package/build/cjs/contexts/theme/withThemeValue.d.ts +2 -2
  210. package/build/cjs/contexts/theme/withThemeValue.js +7 -6
  211. package/build/cjs/contexts/theme/withThemeValue.js.map +1 -0
  212. package/build/cjs/counters/metrika.js +3 -3
  213. package/build/cjs/counters/metrika.js.map +1 -0
  214. package/build/cjs/counters/utils.js +2 -1
  215. package/build/cjs/counters/utils.js.map +1 -0
  216. package/build/cjs/hooks/useAriaAttributes.js +6 -4
  217. package/build/cjs/hooks/useAriaAttributes.js.map +1 -0
  218. package/build/cjs/hooks/useExtendedComponentMap.d.ts +18 -17
  219. package/build/cjs/hooks/useExtendedComponentMap.js +5 -4
  220. package/build/cjs/hooks/useExtendedComponentMap.js.map +1 -0
  221. package/build/cjs/hooks/useHover.d.ts +1 -1
  222. package/build/cjs/hooks/useHover.js +6 -6
  223. package/build/cjs/hooks/useHover.js.map +1 -0
  224. package/build/cjs/hooks/useIsIPhone.js +6 -4
  225. package/build/cjs/hooks/useIsIPhone.js.map +1 -0
  226. package/build/cjs/hooks/useLikes.d.ts +1 -1
  227. package/build/cjs/hooks/useLikes.js +8 -6
  228. package/build/cjs/hooks/useLikes.js.map +1 -0
  229. package/build/cjs/hooks/useOpenCloseTimer.js +6 -5
  230. package/build/cjs/hooks/useOpenCloseTimer.js.map +1 -0
  231. package/build/cjs/i18n/index.d.ts +5 -1
  232. package/build/cjs/i18n/index.js +3 -2
  233. package/build/cjs/i18n/index.js.map +1 -0
  234. package/build/cjs/icons/Close.d.ts +2 -2
  235. package/build/cjs/icons/Close.js +5 -6
  236. package/build/cjs/icons/Close.js.map +1 -0
  237. package/build/cjs/icons/DropdownArrow.d.ts +2 -2
  238. package/build/cjs/icons/DropdownArrow.js +5 -6
  239. package/build/cjs/icons/DropdownArrow.js.map +1 -0
  240. package/build/cjs/icons/Save.d.ts +2 -2
  241. package/build/cjs/icons/Save.js +5 -6
  242. package/build/cjs/icons/Save.js.map +1 -0
  243. package/build/cjs/icons/SaveFilled.d.ts +2 -2
  244. package/build/cjs/icons/SaveFilled.js +5 -6
  245. package/build/cjs/icons/SaveFilled.js.map +1 -0
  246. package/build/cjs/icons/SearchIcon.d.ts +2 -2
  247. package/build/cjs/icons/SearchIcon.js +5 -6
  248. package/build/cjs/icons/SearchIcon.js.map +1 -0
  249. package/build/cjs/icons/ShareArrowUp.d.ts +2 -2
  250. package/build/cjs/icons/ShareArrowUp.js +5 -6
  251. package/build/cjs/icons/ShareArrowUp.js.map +1 -0
  252. package/build/cjs/icons/Time.d.ts +2 -2
  253. package/build/cjs/icons/Time.js +5 -6
  254. package/build/cjs/icons/Time.js.map +1 -0
  255. package/build/cjs/index.d.ts +8 -7
  256. package/build/cjs/index.js +10 -8
  257. package/build/cjs/index.js.map +1 -0
  258. package/build/cjs/models/blocks.d.ts +4 -4
  259. package/build/cjs/models/blocks.js +2 -1
  260. package/build/cjs/models/blocks.js.map +1 -0
  261. package/build/cjs/models/common.d.ts +3 -3
  262. package/build/cjs/models/common.js +6 -5
  263. package/build/cjs/models/common.js.map +1 -0
  264. package/build/cjs/models/locale.js +2 -1
  265. package/build/cjs/models/locale.js.map +1 -0
  266. package/build/cjs/models/paddings.js +2 -1
  267. package/build/cjs/models/paddings.js.map +1 -0
  268. package/build/cjs/package.json +1 -0
  269. package/build/cjs/schema/blocks.d.ts +10 -10
  270. package/build/cjs/schema/blocks.js +11 -10
  271. package/build/cjs/schema/blocks.js.map +1 -0
  272. package/build/cjs/schema/common.js +2 -1
  273. package/build/cjs/schema/common.js.map +1 -0
  274. package/build/cjs/schema/headers.d.ts +1 -1
  275. package/build/cjs/schema/headers.js +2 -1
  276. package/build/cjs/schema/headers.js.map +1 -0
  277. package/build/cjs/schema/index.d.ts +8 -2
  278. package/build/cjs/schema/index.js +5 -4
  279. package/build/cjs/schema/index.js.map +1 -0
  280. package/build/cjs/schema/utils.d.ts +1 -1
  281. package/build/cjs/schema/utils.js +2 -1
  282. package/build/cjs/schema/utils.js.map +1 -0
  283. package/build/cjs/utils/cn.js +2 -1
  284. package/build/cjs/utils/cn.js.map +1 -0
  285. package/build/cjs/utils/common.d.ts +17 -18
  286. package/build/cjs/utils/common.js +7 -6
  287. package/build/cjs/utils/common.js.map +1 -0
  288. package/build/cjs/utils/date.js +2 -1
  289. package/build/cjs/utils/date.js.map +1 -0
  290. package/build/cjs/utils/index.d.ts +1 -0
  291. package/build/cjs/utils/index.js +6 -0
  292. package/build/cjs/utils/index.js.map +1 -0
  293. package/build/cjs/utils/svg.js +2 -1
  294. package/build/cjs/utils/svg.js.map +1 -0
  295. package/build/esm/blocks/Author/Author.d.ts +2 -3
  296. package/build/esm/blocks/Author/Author.js +13 -13
  297. package/build/esm/blocks/Author/Author.js.map +1 -0
  298. package/build/esm/blocks/Author/schema.js +4 -3
  299. package/build/esm/blocks/Author/schema.js.map +1 -0
  300. package/build/esm/blocks/Banner/Banner.d.ts +2 -3
  301. package/build/esm/blocks/Banner/Banner.js +11 -15
  302. package/build/esm/blocks/Banner/Banner.js.map +1 -0
  303. package/build/esm/blocks/Banner/schema.js +4 -3
  304. package/build/esm/blocks/Banner/schema.js.map +1 -0
  305. package/build/esm/blocks/CTA/CTA.d.ts +2 -3
  306. package/build/esm/blocks/CTA/CTA.js +19 -19
  307. package/build/esm/blocks/CTA/CTA.js.map +1 -0
  308. package/build/esm/blocks/CTA/schema.js +4 -3
  309. package/build/esm/blocks/CTA/schema.js.map +1 -0
  310. package/build/esm/blocks/ColoredText/ColoredText.d.ts +2 -3
  311. package/build/esm/blocks/ColoredText/ColoredText.js +9 -12
  312. package/build/esm/blocks/ColoredText/ColoredText.js.map +1 -0
  313. package/build/esm/blocks/ColoredText/schema.js +4 -3
  314. package/build/esm/blocks/ColoredText/schema.js.map +1 -0
  315. package/build/esm/blocks/Feed/Feed.d.ts +2 -3
  316. package/build/esm/blocks/Feed/Feed.js +31 -31
  317. package/build/esm/blocks/Feed/Feed.js.map +1 -0
  318. package/build/esm/blocks/Feed/reducer.d.ts +1 -1
  319. package/build/esm/blocks/Feed/reducer.js +2 -1
  320. package/build/esm/blocks/Feed/reducer.js.map +1 -0
  321. package/build/esm/blocks/Feed/schema.js +3 -2
  322. package/build/esm/blocks/Feed/schema.js.map +1 -0
  323. package/build/esm/blocks/Form/Form.d.ts +2 -3
  324. package/build/esm/blocks/Form/Form.js +10 -10
  325. package/build/esm/blocks/Form/Form.js.map +1 -0
  326. package/build/esm/blocks/Form/schema.js +4 -3
  327. package/build/esm/blocks/Form/schema.js.map +1 -0
  328. package/build/esm/blocks/Header/Header.d.ts +2 -3
  329. package/build/esm/blocks/Header/Header.js +18 -18
  330. package/build/esm/blocks/Header/Header.js.map +1 -0
  331. package/build/esm/blocks/Header/schema.d.ts +3 -0
  332. package/build/esm/blocks/Header/schema.js +4 -3
  333. package/build/esm/blocks/Header/schema.js.map +1 -0
  334. package/build/esm/blocks/Layout/Layout.d.ts +3 -3
  335. package/build/esm/blocks/Layout/Layout.js +12 -13
  336. package/build/esm/blocks/Layout/Layout.js.map +1 -0
  337. package/build/esm/blocks/Layout/schema.js +4 -3
  338. package/build/esm/blocks/Layout/schema.js.map +1 -0
  339. package/build/esm/blocks/Media/Media.d.ts +2 -3
  340. package/build/esm/blocks/Media/Media.js +12 -15
  341. package/build/esm/blocks/Media/Media.js.map +1 -0
  342. package/build/esm/blocks/Media/schema.d.ts +3 -0
  343. package/build/esm/blocks/Media/schema.js +4 -3
  344. package/build/esm/blocks/Media/schema.js.map +1 -0
  345. package/build/esm/blocks/Meta/Meta.d.ts +2 -3
  346. package/build/esm/blocks/Meta/Meta.js +22 -23
  347. package/build/esm/blocks/Meta/Meta.js.map +1 -0
  348. package/build/esm/blocks/Meta/schema.js +4 -3
  349. package/build/esm/blocks/Meta/schema.js.map +1 -0
  350. package/build/esm/blocks/Suggest/Suggest.d.ts +2 -3
  351. package/build/esm/blocks/Suggest/Suggest.js +15 -14
  352. package/build/esm/blocks/Suggest/Suggest.js.map +1 -0
  353. package/build/esm/blocks/Suggest/schema.js +4 -3
  354. package/build/esm/blocks/Suggest/schema.js.map +1 -0
  355. package/build/esm/blocks/YFM/YFM.d.ts +2 -3
  356. package/build/esm/blocks/YFM/YFM.js +10 -10
  357. package/build/esm/blocks/YFM/YFM.js.map +1 -0
  358. package/build/esm/blocks/YFM/schema.js +4 -3
  359. package/build/esm/blocks/YFM/schema.js.map +1 -0
  360. package/build/esm/blocks/constants.js +2 -1
  361. package/build/esm/blocks/constants.js.map +1 -0
  362. package/build/esm/components/FeedHeader/FeedHeader.d.ts +3 -4
  363. package/build/esm/components/FeedHeader/FeedHeader.js +10 -13
  364. package/build/esm/components/FeedHeader/FeedHeader.js.map +1 -0
  365. package/build/esm/components/FeedHeader/components/Controls/Controls.d.ts +4 -4
  366. package/build/esm/components/FeedHeader/components/Controls/Controls.js +30 -40
  367. package/build/esm/components/FeedHeader/components/Controls/Controls.js.map +1 -0
  368. package/build/esm/components/FeedHeader/components/Controls/customRenders.d.ts +2 -3
  369. package/build/esm/components/FeedHeader/components/Controls/customRenders.js +12 -8
  370. package/build/esm/components/FeedHeader/components/Controls/customRenders.js.map +1 -0
  371. package/build/esm/components/FeedHeader/components/CustomSelectOption/CustomSelectOption.d.ts +2 -2
  372. package/build/esm/components/FeedHeader/components/CustomSelectOption/CustomSelectOption.js +4 -5
  373. package/build/esm/components/FeedHeader/components/CustomSelectOption/CustomSelectOption.js.map +1 -0
  374. package/build/esm/components/FeedHeader/components/CustomSwitcher/CustomSwitcher.css +1 -1
  375. package/build/esm/components/FeedHeader/components/CustomSwitcher/CustomSwitcher.d.ts +2 -3
  376. package/build/esm/components/FeedHeader/components/CustomSwitcher/CustomSwitcher.js +13 -17
  377. package/build/esm/components/FeedHeader/components/CustomSwitcher/CustomSwitcher.js.map +1 -0
  378. package/build/esm/components/MetaWrapper/MetaWrapper.d.ts +1 -1
  379. package/build/esm/components/MetaWrapper/MetaWrapper.js +3 -2
  380. package/build/esm/components/MetaWrapper/MetaWrapper.js.map +1 -0
  381. package/build/esm/components/Paginator/Paginator.d.ts +2 -3
  382. package/build/esm/components/Paginator/Paginator.js +25 -29
  383. package/build/esm/components/Paginator/Paginator.js.map +1 -0
  384. package/build/esm/components/Paginator/components/NavigationButton.d.ts +2 -3
  385. package/build/esm/components/Paginator/components/NavigationButton.js +6 -5
  386. package/build/esm/components/Paginator/components/NavigationButton.js.map +1 -0
  387. package/build/esm/components/Paginator/components/PaginatorItem.d.ts +2 -3
  388. package/build/esm/components/Paginator/components/PaginatorItem.js +13 -11
  389. package/build/esm/components/Paginator/components/PaginatorItem.js.map +1 -0
  390. package/build/esm/components/Paginator/types.d.ts +3 -3
  391. package/build/esm/components/Paginator/types.js +2 -1
  392. package/build/esm/components/Paginator/types.js.map +1 -0
  393. package/build/esm/components/Paginator/utils.d.ts +2 -2
  394. package/build/esm/components/Paginator/utils.js +2 -1
  395. package/build/esm/components/Paginator/utils.js.map +1 -0
  396. package/build/esm/components/PostCard/PostCard.css +7 -8
  397. package/build/esm/components/PostCard/PostCard.d.ts +2 -3
  398. package/build/esm/components/PostCard/PostCard.js +17 -25
  399. package/build/esm/components/PostCard/PostCard.js.map +1 -0
  400. package/build/esm/components/PostInfo/PostInfo.d.ts +2 -3
  401. package/build/esm/components/PostInfo/PostInfo.js +13 -15
  402. package/build/esm/components/PostInfo/PostInfo.js.map +1 -0
  403. package/build/esm/components/PostInfo/SuggestPostInfo.d.ts +2 -3
  404. package/build/esm/components/PostInfo/SuggestPostInfo.js +12 -15
  405. package/build/esm/components/PostInfo/SuggestPostInfo.js.map +1 -0
  406. package/build/esm/components/PostInfo/components/Date.d.ts +2 -3
  407. package/build/esm/components/PostInfo/components/Date.js +10 -8
  408. package/build/esm/components/PostInfo/components/Date.js.map +1 -0
  409. package/build/esm/components/PostInfo/components/ReadingTime.d.ts +2 -3
  410. package/build/esm/components/PostInfo/components/ReadingTime.js +6 -8
  411. package/build/esm/components/PostInfo/components/ReadingTime.js.map +1 -0
  412. package/build/esm/components/PostInfo/components/Save.d.ts +2 -3
  413. package/build/esm/components/PostInfo/components/Save.js +14 -16
  414. package/build/esm/components/PostInfo/components/Save.js.map +1 -0
  415. package/build/esm/components/PostInfo/components/Sharing.d.ts +1 -2
  416. package/build/esm/components/PostInfo/components/Sharing.js +17 -17
  417. package/build/esm/components/PostInfo/components/Sharing.js.map +1 -0
  418. package/build/esm/components/Posts/Posts.d.ts +4 -4
  419. package/build/esm/components/Posts/Posts.js +15 -26
  420. package/build/esm/components/Posts/Posts.js.map +1 -0
  421. package/build/esm/components/PostsEmpty/PostsEmpty.d.ts +1 -2
  422. package/build/esm/components/PostsEmpty/PostsEmpty.js +5 -6
  423. package/build/esm/components/PostsEmpty/PostsEmpty.js.map +1 -0
  424. package/build/esm/components/PostsError/PostsError.d.ts +1 -2
  425. package/build/esm/components/PostsError/PostsError.js +6 -9
  426. package/build/esm/components/PostsError/PostsError.js.map +1 -0
  427. package/build/esm/components/Prompt/Prompt.d.ts +1 -2
  428. package/build/esm/components/Prompt/Prompt.js +10 -12
  429. package/build/esm/components/Prompt/Prompt.js.map +1 -0
  430. package/build/esm/components/PromptSignIn/PromptSignIn.d.ts +4 -4
  431. package/build/esm/components/PromptSignIn/PromptSignIn.js +6 -5
  432. package/build/esm/components/PromptSignIn/PromptSignIn.js.map +1 -0
  433. package/build/esm/components/PromptSignIn/hooks/usePromptSignInProps.d.ts +2 -2
  434. package/build/esm/components/PromptSignIn/hooks/usePromptSignInProps.js +5 -4
  435. package/build/esm/components/PromptSignIn/hooks/usePromptSignInProps.js.map +1 -0
  436. package/build/esm/components/Search/Search.d.ts +2 -3
  437. package/build/esm/components/Search/Search.js +17 -17
  438. package/build/esm/components/Search/Search.js.map +1 -0
  439. package/build/esm/components/Wrapper/Wrapper.d.ts +3 -3
  440. package/build/esm/components/Wrapper/Wrapper.js +6 -5
  441. package/build/esm/components/Wrapper/Wrapper.js.map +1 -0
  442. package/build/esm/constants.d.ts +2 -2
  443. package/build/esm/constants.js +3 -2
  444. package/build/esm/constants.js.map +1 -0
  445. package/build/esm/constructor/BlogConstructorProvider.d.ts +7 -7
  446. package/build/esm/constructor/BlogConstructorProvider.js +20 -18
  447. package/build/esm/constructor/BlogConstructorProvider.js.map +1 -0
  448. package/build/esm/constructor/blocksMap.d.ts +12 -12
  449. package/build/esm/constructor/blocksMap.js +15 -14
  450. package/build/esm/constructor/blocksMap.js.map +1 -0
  451. package/build/esm/containers/BlogPage/BlogPage.d.ts +4 -4
  452. package/build/esm/containers/BlogPage/BlogPage.js +22 -25
  453. package/build/esm/containers/BlogPage/BlogPage.js.map +1 -0
  454. package/build/esm/containers/BlogPostPage/BlogPostPage.css +18 -18
  455. package/build/esm/containers/BlogPostPage/BlogPostPage.d.ts +6 -5
  456. package/build/esm/containers/BlogPostPage/BlogPostPage.js +28 -30
  457. package/build/esm/containers/BlogPostPage/BlogPostPage.js.map +1 -0
  458. package/build/esm/contexts/DeviceContext.d.ts +2 -2
  459. package/build/esm/contexts/DeviceContext.js +3 -2
  460. package/build/esm/contexts/DeviceContext.js.map +1 -0
  461. package/build/esm/contexts/FeedContext.d.ts +2 -2
  462. package/build/esm/contexts/FeedContext.js +3 -2
  463. package/build/esm/contexts/FeedContext.js.map +1 -0
  464. package/build/esm/contexts/LikesContext.d.ts +2 -2
  465. package/build/esm/contexts/LikesContext.js +3 -2
  466. package/build/esm/contexts/LikesContext.js.map +1 -0
  467. package/build/esm/contexts/LocaleContext.d.ts +2 -2
  468. package/build/esm/contexts/LocaleContext.js +3 -2
  469. package/build/esm/contexts/LocaleContext.js.map +1 -0
  470. package/build/esm/contexts/MobileContext.d.ts +1 -1
  471. package/build/esm/contexts/MobileContext.js +3 -2
  472. package/build/esm/contexts/MobileContext.js.map +1 -0
  473. package/build/esm/contexts/PostPageContext.d.ts +4 -2
  474. package/build/esm/contexts/PostPageContext.js +3 -2
  475. package/build/esm/contexts/PostPageContext.js.map +1 -0
  476. package/build/esm/contexts/RouterContext.d.ts +2 -2
  477. package/build/esm/contexts/RouterContext.js +3 -2
  478. package/build/esm/contexts/RouterContext.js.map +1 -0
  479. package/build/esm/contexts/SettingsContext.d.ts +1 -1
  480. package/build/esm/contexts/SettingsContext.js +3 -2
  481. package/build/esm/contexts/SettingsContext.js.map +1 -0
  482. package/build/esm/contexts/theme/ThemeContext.d.ts +2 -2
  483. package/build/esm/contexts/theme/ThemeContext.js +4 -3
  484. package/build/esm/contexts/theme/ThemeContext.js.map +1 -0
  485. package/build/esm/contexts/theme/ThemeProvider.d.ts +4 -4
  486. package/build/esm/contexts/theme/ThemeProvider.js +8 -7
  487. package/build/esm/contexts/theme/ThemeProvider.js.map +1 -0
  488. package/build/esm/contexts/theme/ThemeValueContext.d.ts +1 -1
  489. package/build/esm/contexts/theme/ThemeValueContext.js +3 -2
  490. package/build/esm/contexts/theme/ThemeValueContext.js.map +1 -0
  491. package/build/esm/contexts/theme/index.d.ts +6 -6
  492. package/build/esm/contexts/theme/index.js +7 -6
  493. package/build/esm/contexts/theme/index.js.map +1 -0
  494. package/build/esm/contexts/theme/useTheme.d.ts +1 -1
  495. package/build/esm/contexts/theme/useTheme.js +4 -3
  496. package/build/esm/contexts/theme/useTheme.js.map +1 -0
  497. package/build/esm/contexts/theme/useThemeValue.d.ts +1 -1
  498. package/build/esm/contexts/theme/useThemeValue.js +4 -3
  499. package/build/esm/contexts/theme/useThemeValue.js.map +1 -0
  500. package/build/esm/contexts/theme/withTheme.d.ts +2 -2
  501. package/build/esm/contexts/theme/withTheme.js +6 -4
  502. package/build/esm/contexts/theme/withTheme.js.map +1 -0
  503. package/build/esm/contexts/theme/withThemeValue.d.ts +2 -2
  504. package/build/esm/contexts/theme/withThemeValue.js +6 -4
  505. package/build/esm/contexts/theme/withThemeValue.js.map +1 -0
  506. package/build/esm/counters/metrika.js +2 -1
  507. package/build/esm/counters/metrika.js.map +1 -0
  508. package/build/esm/counters/utils.js +2 -1
  509. package/build/esm/counters/utils.js.map +1 -0
  510. package/build/esm/hooks/useAriaAttributes.js +5 -4
  511. package/build/esm/hooks/useAriaAttributes.js.map +1 -0
  512. package/build/esm/hooks/useExtendedComponentMap.d.ts +18 -17
  513. package/build/esm/hooks/useExtendedComponentMap.js +4 -3
  514. package/build/esm/hooks/useExtendedComponentMap.js.map +1 -0
  515. package/build/esm/hooks/useHover.d.ts +1 -1
  516. package/build/esm/hooks/useHover.js +3 -2
  517. package/build/esm/hooks/useHover.js.map +1 -0
  518. package/build/esm/hooks/useIsIPhone.js +5 -4
  519. package/build/esm/hooks/useIsIPhone.js.map +1 -0
  520. package/build/esm/hooks/useLikes.d.ts +1 -1
  521. package/build/esm/hooks/useLikes.js +7 -6
  522. package/build/esm/hooks/useLikes.js.map +1 -0
  523. package/build/esm/hooks/useOpenCloseTimer.js +5 -4
  524. package/build/esm/hooks/useOpenCloseTimer.js.map +1 -0
  525. package/build/esm/i18n/index.d.ts +5 -1
  526. package/build/esm/i18n/index.js +2 -1
  527. package/build/esm/i18n/index.js.map +1 -0
  528. package/build/esm/icons/Close.d.ts +2 -2
  529. package/build/esm/icons/Close.js +4 -4
  530. package/build/esm/icons/Close.js.map +1 -0
  531. package/build/esm/icons/DropdownArrow.d.ts +2 -2
  532. package/build/esm/icons/DropdownArrow.js +4 -4
  533. package/build/esm/icons/DropdownArrow.js.map +1 -0
  534. package/build/esm/icons/Save.d.ts +2 -2
  535. package/build/esm/icons/Save.js +4 -4
  536. package/build/esm/icons/Save.js.map +1 -0
  537. package/build/esm/icons/SaveFilled.d.ts +2 -2
  538. package/build/esm/icons/SaveFilled.js +4 -4
  539. package/build/esm/icons/SaveFilled.js.map +1 -0
  540. package/build/esm/icons/SearchIcon.d.ts +2 -2
  541. package/build/esm/icons/SearchIcon.js +4 -4
  542. package/build/esm/icons/SearchIcon.js.map +1 -0
  543. package/build/esm/icons/ShareArrowUp.d.ts +2 -2
  544. package/build/esm/icons/ShareArrowUp.js +4 -4
  545. package/build/esm/icons/ShareArrowUp.js.map +1 -0
  546. package/build/esm/icons/Time.d.ts +2 -2
  547. package/build/esm/icons/Time.js +4 -4
  548. package/build/esm/icons/Time.js.map +1 -0
  549. package/build/esm/index.d.ts +8 -7
  550. package/build/esm/index.js +9 -7
  551. package/build/esm/index.js.map +1 -0
  552. package/build/esm/models/blocks.d.ts +4 -4
  553. package/build/esm/models/blocks.js +2 -1
  554. package/build/esm/models/blocks.js.map +1 -0
  555. package/build/esm/models/common.d.ts +3 -3
  556. package/build/esm/models/common.js +2 -1
  557. package/build/esm/models/common.js.map +1 -0
  558. package/build/esm/models/locale.js +2 -1
  559. package/build/esm/models/locale.js.map +1 -0
  560. package/build/esm/models/paddings.js +2 -1
  561. package/build/esm/models/paddings.js.map +1 -0
  562. package/build/esm/package.json +1 -0
  563. package/build/esm/schema/blocks.d.ts +10 -10
  564. package/build/esm/schema/blocks.js +11 -10
  565. package/build/esm/schema/blocks.js.map +1 -0
  566. package/build/esm/schema/common.js +2 -1
  567. package/build/esm/schema/common.js.map +1 -0
  568. package/build/esm/schema/headers.d.ts +1 -1
  569. package/build/esm/schema/headers.js +2 -1
  570. package/build/esm/schema/headers.js.map +1 -0
  571. package/build/esm/schema/index.d.ts +8 -2
  572. package/build/esm/schema/index.js +5 -4
  573. package/build/esm/schema/index.js.map +1 -0
  574. package/build/esm/schema/utils.d.ts +1 -1
  575. package/build/esm/schema/utils.js +2 -1
  576. package/build/esm/schema/utils.js.map +1 -0
  577. package/build/esm/utils/cn.js +2 -1
  578. package/build/esm/utils/cn.js.map +1 -0
  579. package/build/esm/utils/common.d.ts +17 -18
  580. package/build/esm/utils/common.js +5 -4
  581. package/build/esm/utils/common.js.map +1 -0
  582. package/build/esm/utils/date.js +2 -1
  583. package/build/esm/utils/date.js.map +1 -0
  584. package/build/esm/utils/index.d.ts +1 -0
  585. package/build/esm/utils/index.js +2 -0
  586. package/build/esm/utils/index.js.map +1 -0
  587. package/build/esm/utils/svg.js +2 -1
  588. package/build/esm/utils/svg.js.map +1 -0
  589. package/package.json +37 -24
  590. package/server/data/config.js +1 -1
  591. package/server/data/contentFilter.js +5 -3
  592. package/server/data/createReadableContent.js +1 -1
  593. package/server/data/sanitizeMeta.d.ts +5 -5
  594. package/server/data/sanitizeMeta.js +1 -1
  595. package/server/data/transformPageContent.js +5 -3
  596. package/server/data/transformPost.js +15 -4
  597. package/server/index.d.ts +4 -4
  598. package/server/models/blocks.d.ts +2 -2
  599. package/server/models/blocks.js +1 -1
  600. package/server/models/common.d.ts +2 -2
  601. package/server/models/common.js +5 -5
  602. package/server/models/locale.js +1 -1
  603. package/server/models/paddings.js +1 -1
  604. package/styles/storybook/common.scss +7 -0
  605. package/styles/styles.css +18 -18
  606. package/styles/yfm.css +18 -18
  607. package/styles/yfm.scss +21 -21
@@ -1,27 +1,29 @@
1
- import React, { useCallback, useContext, useMemo } from 'react';
1
+ import { jsx as _jsx } from "react/jsx-runtime";
2
+ import * as React from 'react';
2
3
  import { Button } from '@gravity-ui/uikit';
3
- import { LocaleContext } from '../../../contexts/LocaleContext';
4
- import { SettingsContext } from '../../../contexts/SettingsContext';
5
- import { block } from '../../../utils/cn';
6
- import { getBlogPath as getDefaultBlogPath } from '../../../utils/common';
4
+ import { LocaleContext } from "../../../contexts/LocaleContext.js";
5
+ import { SettingsContext } from "../../../contexts/SettingsContext.js";
6
+ import { block } from "../../../utils/cn.js";
7
+ import { getBlogPath as getDefaultBlogPath } from "../../../utils/common.js";
7
8
  import '../Paginator.css';
8
9
  const b = block('paginator');
9
10
  export const PaginatorItem = ({ dataKey, mods, content, queryParams, onClick, loading = false, index, }) => {
10
- const { locale } = useContext(LocaleContext);
11
- const { addNavigationLinkForPages, getBlogPath = getDefaultBlogPath } = useContext(SettingsContext);
11
+ const { locale } = React.useContext(LocaleContext);
12
+ const { addNavigationLinkForPages, getBlogPath = getDefaultBlogPath } = React.useContext(SettingsContext);
12
13
  const urlPath = getBlogPath((locale === null || locale === void 0 ? void 0 : locale.pathPrefix) || '');
13
14
  const itemKey = Number(dataKey) > 0 ? Number(dataKey) : dataKey;
14
- const navigationLink = useMemo(() => {
15
+ const navigationLink = React.useMemo(() => {
15
16
  const queryString = Object.entries(Object.assign(Object.assign({}, (index > 1 ? { page: index } : undefined)), queryParams))
16
17
  .map(([param, value]) => `${param}=${value}`)
17
18
  .join('&');
18
19
  return queryString ? `${urlPath}?${queryString}` : urlPath;
19
20
  }, [queryParams, index, urlPath]);
20
- const handleClick = useCallback((event) => {
21
+ const handleClick = React.useCallback((event) => {
21
22
  if (addNavigationLinkForPages && (event.metaKey || event.ctrlKey)) {
22
23
  return;
23
24
  }
24
25
  onClick === null || onClick === void 0 ? void 0 : onClick(itemKey);
25
26
  }, [addNavigationLinkForPages, itemKey, onClick]);
26
- return (React.createElement(Button, { view: "flat", size: "xl", className: b('item', mods), onClick: handleClick, href: addNavigationLinkForPages ? navigationLink : undefined, loading: loading && Boolean(mods.active) }, content));
27
- };
27
+ return (_jsx(Button, { view: "flat", size: "xl", className: b('item', mods), onClick: handleClick, href: addNavigationLinkForPages ? navigationLink : undefined, loading: loading && Boolean(mods.active), children: content }));
28
+ };
29
+ //# sourceMappingURL=PaginatorItem.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"PaginatorItem.js","sourceRoot":"../../../../../src","sources":["components/Paginator/components/PaginatorItem.tsx"],"names":[],"mappings":";AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAE/B,OAAO,EAAC,MAAM,EAAC,MAAM,mBAAmB,CAAC;AAEzC,OAAO,EAAC,aAAa,EAAC,2CAAwC;AAC9D,OAAO,EAAC,eAAe,EAAC,6CAA0C;AAClE,OAAO,EAAC,KAAK,EAAC,6BAA0B;AACxC,OAAO,EAAC,WAAW,IAAI,kBAAkB,EAAC,iCAA8B;AAGxE,OAAO,kBAAkB,CAAC;AAE1B,MAAM,CAAC,GAAG,KAAK,CAAC,WAAW,CAAC,CAAC;AAE7B,MAAM,CAAC,MAAM,aAAa,GAAG,CAAC,EAC1B,OAAO,EACP,IAAI,EACJ,OAAO,EACP,WAAW,EACX,OAAO,EACP,OAAO,GAAG,KAAK,EACf,KAAK,GACY,EAAE,EAAE;IACrB,MAAM,EAAC,MAAM,EAAC,GAAG,KAAK,CAAC,UAAU,CAAC,aAAa,CAAC,CAAC;IACjD,MAAM,EAAC,yBAAyB,EAAE,WAAW,GAAG,kBAAkB,EAAC,GAC/D,KAAK,CAAC,UAAU,CAAC,eAAe,CAAC,CAAC;IACtC,MAAM,OAAO,GAAG,WAAW,CAAC,CAAA,MAAM,aAAN,MAAM,uBAAN,MAAM,CAAE,UAAU,KAAI,EAAE,CAAC,CAAC;IAEtD,MAAM,OAAO,GAAG,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,CAAE,OAAqB,CAAC;IAC/E,MAAM,cAAc,GAAG,KAAK,CAAC,OAAO,CAAC,GAAG,EAAE;QACtC,MAAM,WAAW,GAAG,MAAM,CAAC,OAAO,iCAC3B,CAAC,KAAK,GAAG,CAAC,CAAC,CAAC,CAAC,EAAC,IAAI,EAAE,KAAK,EAAC,CAAC,CAAC,CAAC,SAAS,CAAC,GACvC,WAAW,EAChB;aACG,GAAG,CAAC,CAAC,CAAC,KAAK,EAAE,KAAK,CAAC,EAAE,EAAE,CAAC,GAAG,KAAK,IAAI,KAAK,EAAE,CAAC;aAC5C,IAAI,CAAC,GAAG,CAAC,CAAC;QACf,OAAO,WAAW,CAAC,CAAC,CAAC,GAAG,OAAO,IAAI,WAAW,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC;IAC/D,CAAC,EAAE,CAAC,WAAW,EAAE,KAAK,EAAE,OAAO,CAAC,CAAC,CAAC;IAElC,MAAM,WAAW,GAAG,KAAK,CAAC,WAAW,CAGjC,CAAC,KAAK,EAAE,EAAE;QACN,IAAI,yBAAyB,IAAI,CAAC,KAAK,CAAC,OAAO,IAAI,KAAK,CAAC,OAAO,CAAC,EAAE,CAAC;YAChE,OAAO;QACX,CAAC;QAED,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAG,OAAO,CAAC,CAAC;IACvB,CAAC,EACD,CAAC,yBAAyB,EAAE,OAAO,EAAE,OAAO,CAAC,CAChD,CAAC;IAEF,OAAO,CACH,KAAC,MAAM,IACH,IAAI,EAAC,MAAM,EACX,IAAI,EAAC,IAAI,EACT,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE,IAAI,CAAC,EAC1B,OAAO,EAAE,WAAW,EACpB,IAAI,EAAE,yBAAyB,CAAC,CAAC,CAAC,cAAc,CAAC,CAAC,CAAC,SAAS,EAC5D,OAAO,EAAE,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,YAEvC,OAAO,GACH,CACZ,CAAC;AACN,CAAC,CAAC","sourcesContent":["import * as React from 'react';\n\nimport {Button} from '@gravity-ui/uikit';\n\nimport {LocaleContext} from '../../../contexts/LocaleContext';\nimport {SettingsContext} from '../../../contexts/SettingsContext';\nimport {block} from '../../../utils/cn';\nimport {getBlogPath as getDefaultBlogPath} from '../../../utils/common';\nimport {ArrowType, PaginatorItemProps} from '../types';\n\nimport '../Paginator.scss';\n\nconst b = block('paginator');\n\nexport const PaginatorItem = ({\n dataKey,\n mods,\n content,\n queryParams,\n onClick,\n loading = false,\n index,\n}: PaginatorItemProps) => {\n const {locale} = React.useContext(LocaleContext);\n const {addNavigationLinkForPages, getBlogPath = getDefaultBlogPath} =\n React.useContext(SettingsContext);\n const urlPath = getBlogPath(locale?.pathPrefix || '');\n\n const itemKey = Number(dataKey) > 0 ? Number(dataKey) : (dataKey as ArrowType);\n const navigationLink = React.useMemo(() => {\n const queryString = Object.entries({\n ...(index > 1 ? {page: index} : undefined),\n ...queryParams,\n })\n .map(([param, value]) => `${param}=${value}`)\n .join('&');\n return queryString ? `${urlPath}?${queryString}` : urlPath;\n }, [queryParams, index, urlPath]);\n\n const handleClick = React.useCallback<\n (event: React.MouseEvent<HTMLButtonElement | HTMLAnchorElement, MouseEvent>) => void\n >(\n (event) => {\n if (addNavigationLinkForPages && (event.metaKey || event.ctrlKey)) {\n return;\n }\n\n onClick?.(itemKey);\n },\n [addNavigationLinkForPages, itemKey, onClick],\n );\n\n return (\n <Button\n view=\"flat\"\n size=\"xl\"\n className={b('item', mods)}\n onClick={handleClick}\n href={addNavigationLinkForPages ? navigationLink : undefined}\n loading={loading && Boolean(mods.active)}\n >\n {content}\n </Button>\n );\n};\n"]}
@@ -1,11 +1,11 @@
1
- import type { ReactNode } from 'react';
1
+ import * as React from 'react';
2
2
  import type { NoStrictEntityMods } from '@bem-react/classname';
3
- import type { ClassNameProps, Query } from '../../models/common';
3
+ import type { ClassNameProps, Query } from "../../models/common.js";
4
4
  export interface PaginatorItemProps {
5
5
  key: string | ArrowType;
6
6
  dataKey: string | ArrowType;
7
7
  mods: NoStrictEntityMods;
8
- content: ReactNode;
8
+ content: React.ReactNode;
9
9
  queryParams: Query;
10
10
  onClick?: (key: number | ArrowType) => void;
11
11
  loading?: boolean;
@@ -2,4 +2,5 @@ export var ArrowType;
2
2
  (function (ArrowType) {
3
3
  ArrowType["Prev"] = "prev";
4
4
  ArrowType["Next"] = "next";
5
- })(ArrowType || (ArrowType = {}));
5
+ })(ArrowType || (ArrowType = {}));
6
+ //# sourceMappingURL=types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.js","sourceRoot":"../../../../src","sources":["components/Paginator/types.ts"],"names":[],"mappings":"AA2BA,MAAM,CAAN,IAAY,SAGX;AAHD,WAAY,SAAS;IACjB,0BAAa,CAAA;IACb,0BAAa,CAAA;AACjB,CAAC,EAHW,SAAS,KAAT,SAAS,QAGpB","sourcesContent":["import * as React from 'react';\n\nimport type {NoStrictEntityMods} from '@bem-react/classname';\n\nimport type {ClassNameProps, Query} from '../../models/common';\n\nexport interface PaginatorItemProps {\n key: string | ArrowType;\n dataKey: string | ArrowType;\n mods: NoStrictEntityMods;\n content: React.ReactNode;\n queryParams: Query;\n onClick?: (key: number | ArrowType) => void;\n loading?: boolean;\n index: number;\n}\n\nexport type PaginatorProps = {\n page: number;\n totalItems: number;\n itemsPerPage: number;\n maxPages: number;\n onPageChange: (page: number) => void;\n pageCountForShowSupportButtons?: number;\n queryParams: Query;\n} & ClassNameProps;\n\nexport enum ArrowType {\n Prev = 'prev',\n Next = 'next',\n}\n\nexport type GetPageConfigParams = {\n page: number;\n pagesCount: number;\n queryParams: Query;\n handlePageClick: (key: number | ArrowType) => void;\n};\n"]}
@@ -1,3 +1,3 @@
1
- import { GetPageConfigParams, PaginatorItemProps, PaginatorProps } from './types';
1
+ import { GetPageConfigParams, PaginatorItemProps, PaginatorProps } from "./types.js";
2
2
  export declare const getPageConfigs: ({ page, queryParams, pagesCount, handlePageClick, }: GetPageConfigParams) => PaginatorItemProps[];
3
- export declare const getPagesCount: (props: Pick<PaginatorProps, 'totalItems' | 'itemsPerPage' | 'maxPages'>) => number;
3
+ export declare const getPagesCount: (props: Pick<PaginatorProps, "totalItems" | "itemsPerPage" | "maxPages">) => number;
@@ -26,4 +26,5 @@ export const getPageConfigs = ({ page, queryParams, pagesCount, handlePageClick,
26
26
  export const getPagesCount = (props) => {
27
27
  const totalPages = Math.ceil(props.totalItems / props.itemsPerPage);
28
28
  return Math.min(totalPages, props.maxPages);
29
- };
29
+ };
30
+ //# sourceMappingURL=utils.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"utils.js","sourceRoot":"../../../../src","sources":["components/Paginator/utils.ts"],"names":[],"mappings":"AAEA,MAAM,iBAAiB,GAAG,CAAC,CAAC;AAE5B,MAAM,CAAC,MAAM,cAAc,GAAG,CAAC,EAC3B,IAAI,EACJ,WAAW,EACX,UAAU,EACV,eAAe,GACG,EAAE,EAAE;IACtB,MAAM,cAAc,GAA8B,EAAE,CAAC;IACrD,sDAAsD;IACtD,MAAM,UAAU,GAAG,CAAC,iBAAiB,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC;IAC/C,IAAI,SAAS,GAAG,IAAI,GAAG,UAAU,CAAC;IAClC,IAAI,OAAO,GAAG,IAAI,GAAG,UAAU,CAAC;IAEhC,IAAI,SAAS,GAAG,CAAC,EAAE,CAAC;QAChB,OAAO,GAAG,IAAI,GAAG,UAAU,GAAG,SAAS,GAAG,CAAC,CAAC;QAC5C,SAAS,GAAG,CAAC,CAAC;IAClB,CAAC;IAED,OAAO,GAAG,IAAI,CAAC,GAAG,CAAC,OAAO,EAAE,UAAU,CAAC,CAAC;IAExC,KAAK,IAAI,CAAC,GAAG,SAAS,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,EAAE,CAAC;QACxC,cAAc,CAAC,IAAI,CAAC;YAChB,GAAG,EAAE,MAAM,CAAC,CAAC,CAAC;YACd,OAAO,EAAE,MAAM,CAAC,CAAC,CAAC;YAClB,KAAK,EAAE,CAAC;YACR,IAAI,EAAE,EAAC,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,IAAI,KAAK,CAAC,EAAC;YACxC,WAAW;YACX,OAAO,EAAE,eAAe;YACxB,OAAO,EAAE,CAAC;SACb,CAAC,CAAC;IACP,CAAC;IAED,OAAO,cAAc,CAAC;AAC1B,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,aAAa,GAAG,CACzB,KAAuE,EACzE,EAAE;IACA,MAAM,UAAU,GAAG,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,UAAU,GAAG,KAAK,CAAC,YAAY,CAAC,CAAC;IAEpE,OAAO,IAAI,CAAC,GAAG,CAAC,UAAU,EAAE,KAAK,CAAC,QAAQ,CAAC,CAAC;AAChD,CAAC,CAAC","sourcesContent":["import {GetPageConfigParams, PaginatorItemProps, PaginatorProps} from './types';\n\nconst MAX_VISIBLE_PAGES = 5;\n\nexport const getPageConfigs = ({\n page,\n queryParams,\n pagesCount,\n handlePageClick,\n}: GetPageConfigParams) => {\n const paginatorItems: Array<PaginatorItemProps> = [];\n // it is calculating the middle of visible pages below\n const pageOffset = (MAX_VISIBLE_PAGES - 1) / 2;\n let startPage = page - pageOffset;\n let endPage = page + pageOffset;\n\n if (startPage < 1) {\n endPage = page + pageOffset - startPage + 1;\n startPage = 1;\n }\n\n endPage = Math.min(endPage, pagesCount);\n\n for (let i = startPage; i <= endPage; i++) {\n paginatorItems.push({\n key: String(i),\n dataKey: String(i),\n index: i,\n mods: {type: 'page', active: page === i},\n queryParams,\n onClick: handlePageClick,\n content: i,\n });\n }\n\n return paginatorItems;\n};\n\nexport const getPagesCount = (\n props: Pick<PaginatorProps, 'totalItems' | 'itemsPerPage' | 'maxPages'>,\n) => {\n const totalPages = Math.ceil(props.totalItems / props.itemsPerPage);\n\n return Math.min(totalPages, props.maxPages);\n};\n"]}
@@ -1,4 +1,4 @@
1
- .bc-post-card__title_size_m.bc-post-card__title_size_m, .bc-post-card__title_size_s.bc-post-card__title_size_s {
1
+ .bc-post-card__title_size_m, .bc-post-card__title_size_s {
2
2
  margin: 0;
3
3
  }
4
4
 
@@ -27,28 +27,27 @@ unpredictable css rules order in build */
27
27
  min-height: 480px;
28
28
  }
29
29
  }
30
- .bc-post-card__title_size_s.bc-post-card__title_size_s {
30
+ .bc-post-card__title {
31
+ margin-bottom: 8px;
32
+ }
33
+ .bc-post-card__title_size_s {
31
34
  font-size: var(--g-text-header-1-font-size);
32
35
  line-height: var(--g-text-header-1-line-height);
33
36
  color: var(--pc-text-header-color);
34
37
  font-weight: var(--g-text-accent-font-weight);
35
- margin-bottom: 8px;
36
38
  }
37
-
38
- .bc-post-card__title_size_m.bc-post-card__title_size_m {
39
+ .bc-post-card__title_size_m {
39
40
  font-size: var(--g-text-display-2-font-size);
40
41
  line-height: var(--g-text-display-2-line-height);
41
42
  color: var(--pc-text-header-color);
42
43
  font-weight: var(--g-text-accent-font-weight);
43
- margin-bottom: 8px;
44
44
  }
45
45
  @media (max-width: 576px) {
46
- .bc-post-card__title_size_m.bc-post-card__title_size_m {
46
+ .bc-post-card__title_size_m {
47
47
  font-size: var(--g-text-display-1-font-size);
48
48
  line-height: var(--g-text-display-1-line-height);
49
49
  }
50
50
  }
51
-
52
51
  .bc-post-card__image-container {
53
52
  height: 156px;
54
53
  }
@@ -1,6 +1,5 @@
1
- import React from 'react';
2
1
  import { AnalyticsEventsProp } from '@gravity-ui/page-constructor';
3
- import { PostCardSize, PostCardTitleHeadingLevel, PostData } from '../../models/common';
2
+ import { PostCardSize, PostCardTitleHeadingLevel, PostData } from "../../models/common.js";
4
3
  import './PostCard.css';
5
4
  type PostCardProps = {
6
5
  post: PostData;
@@ -10,5 +9,5 @@ type PostCardProps = {
10
9
  titleHeadingLevel?: PostCardTitleHeadingLevel;
11
10
  analyticsEvents?: AnalyticsEventsProp;
12
11
  };
13
- export declare const PostCard: ({ post, fullWidth, size, showTag, titleHeadingLevel, analyticsEvents, }: PostCardProps) => React.JSX.Element;
12
+ export declare const PostCard: ({ post, fullWidth, size, showTag, titleHeadingLevel, analyticsEvents, }: PostCardProps) => import("react/jsx-runtime").JSX.Element;
14
13
  export {};
@@ -1,19 +1,20 @@
1
- import React, { useContext, useMemo } from 'react';
2
- import { CardBase, YFMWrapper } from '@gravity-ui/page-constructor';
1
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
+ import * as React from 'react';
3
+ import { CardBase, HTML, YFMWrapper } from '@gravity-ui/page-constructor';
3
4
  import { useUniqId } from '@gravity-ui/uikit';
4
- import { LikesContext } from '../../contexts/LikesContext';
5
- import { PostCardSize, PostCardTitleHeadingLevel } from '../../models/common';
6
- import { block } from '../../utils/cn';
7
- import { SuggestPostInfo } from '../PostInfo/SuggestPostInfo';
8
- import { useAriaAttributes } from '../../hooks/useAriaAttributes';
5
+ import { LikesContext } from "../../contexts/LikesContext.js";
6
+ import { PostCardSize, PostCardTitleHeadingLevel } from "../../models/common.js";
7
+ import { block } from "../../utils/cn.js";
8
+ import { SuggestPostInfo } from "../PostInfo/SuggestPostInfo.js";
9
+ import { useAriaAttributes } from "../../hooks/useAriaAttributes.js";
9
10
  import './PostCard.css';
10
11
  const b = block('post-card');
11
12
  export const PostCard = ({ post, fullWidth = false, size = PostCardSize.SMALL, showTag = false, titleHeadingLevel = PostCardTitleHeadingLevel.H3, analyticsEvents, }) => {
12
13
  var _a;
13
14
  const { title: postTitle, htmlTitle, textTitle, blogPostId, id, date, readingTime, hasUserLike, likes, image, description, tags, url, } = post;
14
15
  const title = postTitle || textTitle || htmlTitle;
15
- const { toggleLike, hasLikes } = useContext(LikesContext);
16
- const likesProps = useMemo(() => hasLikes
16
+ const { toggleLike, hasLikes } = React.useContext(LikesContext);
17
+ const likesProps = React.useMemo(() => hasLikes
17
18
  ? {
18
19
  hasUserLike,
19
20
  likesCount: likes,
@@ -34,19 +35,10 @@ export const PostCard = ({ post, fullWidth = false, size = PostCardSize.SMALL, s
34
35
  readingTime && readingTimeId,
35
36
  ],
36
37
  });
37
- return (React.createElement(CardBase, { url: url, analyticsEvents: analyticsEvents, className: b('card', { fullWidth }), extraProps: ariaAttributes },
38
- React.createElement(CardBase.Header, { image: image, className: b('header', { fullWidth }) },
39
- React.createElement("div", { className: b('image-container'), "data-qa": "blog-suggest-header" })),
40
- React.createElement(CardBase.Content, null,
41
- isTagVisible && (React.createElement("div", { id: tagId, className: b('tag', { size }) }, tags[0].name)),
42
- title && (React.createElement(YFMWrapper, { contentClassName: b('title', { size }), content: title, modifiers: {
43
- blog: true,
44
- blogCard: true,
45
- }, id: titleId, tagName: titleHeadingLevel })),
46
- description && (React.createElement(YFMWrapper, { contentClassName: b('description'), content: description, modifiers: {
47
- blog: size === 'm',
48
- blogCard: true,
49
- }, id: descriptionId }))),
50
- React.createElement(CardBase.Footer, null,
51
- React.createElement(SuggestPostInfo, { postId: blogPostId || id, date: date, readingTime: readingTime, hasUserLike: hasUserLike, likes: likesProps, size: size, qa: "blog-suggest-block", dateId: dateId, readingTimeId: readingTimeId }))));
52
- };
38
+ return (_jsxs(CardBase, { url: url, analyticsEvents: analyticsEvents, className: b('card', { fullWidth }), extraProps: ariaAttributes, children: [_jsx(CardBase.Header, { image: image, className: b('header', { fullWidth }), children: _jsx("div", { className: b('image-container'), "data-qa": "blog-suggest-header" }) }), _jsxs(CardBase.Content, { children: [isTagVisible && (_jsx("div", { id: tagId, className: b('tag', { size }), children: tags[0].name })), title &&
39
+ React.createElement(titleHeadingLevel, { className: b('title', { size }) }, _jsx("span", { children: _jsx(HTML, { id: titleId, children: title }) })), description && (_jsx(YFMWrapper, { className: b('description'), content: description, modifiers: {
40
+ blog: size === 'm',
41
+ blogCard: true,
42
+ }, id: descriptionId }))] }), _jsx(CardBase.Footer, { children: _jsx(SuggestPostInfo, { postId: blogPostId || id, date: date, readingTime: readingTime, hasUserLike: hasUserLike, likes: likesProps, size: size, qa: "blog-suggest-block", dateId: dateId, readingTimeId: readingTimeId }) })] }));
43
+ };
44
+ //# sourceMappingURL=PostCard.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"PostCard.js","sourceRoot":"../../../../src","sources":["components/PostCard/PostCard.tsx"],"names":[],"mappings":"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","sourcesContent":["import * as React from 'react';\nimport {AnalyticsEventsProp, CardBase, HTML, YFMWrapper} from '@gravity-ui/page-constructor';\nimport {useUniqId} from '@gravity-ui/uikit';\n\nimport {LikesContext} from '../../contexts/LikesContext';\nimport {PostCardSize, PostCardTitleHeadingLevel, PostData} from '../../models/common';\nimport {block} from '../../utils/cn';\nimport {SuggestPostInfo} from '../PostInfo/SuggestPostInfo';\nimport {useAriaAttributes} from '../../hooks/useAriaAttributes';\n\nimport './PostCard.scss';\n\ntype PostCardProps = {\n post: PostData;\n fullWidth?: boolean;\n showTag?: boolean;\n size?: PostCardSize;\n titleHeadingLevel?: PostCardTitleHeadingLevel;\n analyticsEvents?: AnalyticsEventsProp;\n};\n\nconst b = block('post-card');\n\nexport const PostCard = ({\n post,\n fullWidth = false,\n size = PostCardSize.SMALL,\n showTag = false,\n titleHeadingLevel = PostCardTitleHeadingLevel.H3,\n analyticsEvents,\n}: PostCardProps) => {\n const {\n title: postTitle,\n htmlTitle,\n textTitle,\n blogPostId,\n id,\n date,\n readingTime,\n hasUserLike,\n likes,\n image,\n description,\n tags,\n url,\n } = post;\n\n const title = postTitle || textTitle || htmlTitle;\n\n const {toggleLike, hasLikes} = React.useContext(LikesContext);\n\n const likesProps = React.useMemo(\n () =>\n hasLikes\n ? {\n hasUserLike,\n likesCount: likes,\n toggleLike,\n }\n : undefined,\n [hasUserLike, likes, toggleLike, hasLikes],\n );\n const titleId = useUniqId();\n const descriptionId = useUniqId();\n const dateId = useUniqId();\n const tagId = useUniqId();\n const readingTimeId = useUniqId();\n const isTagVisible = showTag && tags?.[0]?.name;\n const ariaAttributes = useAriaAttributes({\n labelIds: [isTagVisible && tagId, title && titleId],\n descriptionIds: [\n description && descriptionId,\n date && dateId,\n readingTime && readingTimeId,\n ],\n });\n\n return (\n <CardBase\n url={url}\n analyticsEvents={analyticsEvents}\n className={b('card', {fullWidth})}\n extraProps={ariaAttributes}\n >\n <CardBase.Header image={image} className={b('header', {fullWidth})}>\n <div className={b('image-container')} data-qa=\"blog-suggest-header\" />\n </CardBase.Header>\n <CardBase.Content>\n {isTagVisible && (\n <div id={tagId} className={b('tag', {size})}>\n {tags[0].name}\n </div>\n )}\n {title &&\n React.createElement(\n titleHeadingLevel,\n {className: b('title', {size})},\n <span>\n <HTML id={titleId}>{title}</HTML>\n </span>,\n )}\n {description && (\n <YFMWrapper\n className={b('description')}\n content={description}\n modifiers={{\n blog: size === 'm',\n blogCard: true,\n }}\n id={descriptionId}\n />\n )}\n </CardBase.Content>\n <CardBase.Footer>\n <SuggestPostInfo\n postId={blogPostId || id}\n date={date}\n readingTime={readingTime}\n hasUserLike={hasUserLike}\n likes={likesProps}\n size={size}\n qa=\"blog-suggest-block\"\n dateId={dateId}\n readingTimeId={readingTimeId}\n />\n </CardBase.Footer>\n </CardBase>\n );\n};\n"]}
@@ -1,6 +1,5 @@
1
- import React from 'react';
2
1
  import { AnalyticsEventsProp } from '@gravity-ui/page-constructor';
3
- import { PostData, QAProps } from '../../models/common';
2
+ import { PostData, QAProps } from "../../models/common.js";
4
3
  import './PostInfo.css';
5
4
  type PostInfoProps = QAProps & {
6
5
  postId: PostData['id'];
@@ -21,5 +20,5 @@ type PostInfoProps = QAProps & {
21
20
  *
22
21
  * @returns jsx
23
22
  */
24
- export declare const PostInfo: ({ date, readingTime, postId, theme, qa, analyticsEventsContainer, }: PostInfoProps) => React.JSX.Element;
23
+ export declare const PostInfo: ({ date, readingTime, postId, theme, qa, analyticsEventsContainer, }: PostInfoProps) => import("react/jsx-runtime").JSX.Element;
25
24
  export {};
@@ -1,11 +1,12 @@
1
- import React, { useContext } from 'react';
2
- import { PostPageContext } from '../../contexts/PostPageContext';
3
- import { block } from '../../utils/cn';
4
- import { Date } from './components/Date';
5
- import { ReadingTime } from './components/ReadingTime';
6
- import { Save } from './components/Save';
7
- import { Sharing } from './components/Sharing';
8
- import { getQaAttributes } from '../../utils/common';
1
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
+ import * as React from 'react';
3
+ import { PostPageContext } from "../../contexts/PostPageContext.js";
4
+ import { block } from "../../utils/cn.js";
5
+ import { Date } from "./components/Date.js";
6
+ import { ReadingTime } from "./components/ReadingTime.js";
7
+ import { Save } from "./components/Save.js";
8
+ import { Sharing } from "./components/Sharing.js";
9
+ import { getQaAttributes } from "../../utils/common.js";
9
10
  import './PostInfo.css';
10
11
  const b = block('post-info');
11
12
  /**
@@ -21,11 +22,8 @@ const b = block('post-info');
21
22
  * @returns jsx
22
23
  */
23
24
  export const PostInfo = ({ date, readingTime, postId, theme = 'light', qa, analyticsEventsContainer, }) => {
24
- const { likes } = useContext(PostPageContext);
25
+ const { likes } = React.useContext(PostPageContext);
25
26
  const qaAttributes = getQaAttributes(qa, 'date', 'reading-time', 'save');
26
- return (React.createElement("div", { className: b('container', { theme }) },
27
- date && React.createElement(Date, { date: date, qa: qaAttributes.date }),
28
- readingTime && React.createElement(ReadingTime, { readingTime: readingTime, qa: qaAttributes.readingTime }),
29
- React.createElement(Sharing, { theme: theme, analyticsEvents: analyticsEventsContainer === null || analyticsEventsContainer === void 0 ? void 0 : analyticsEventsContainer.sharing }),
30
- likes && (React.createElement(Save, { postId: postId, title: likes.likesCount, hasUserLike: likes.hasUserLike, handleUserLike: likes.handleUserLike, analyticsEvents: analyticsEventsContainer === null || analyticsEventsContainer === void 0 ? void 0 : analyticsEventsContainer.save, theme: theme, qa: qaAttributes.save }))));
31
- };
27
+ return (_jsxs("div", { className: b('container', { theme }), children: [date && _jsx(Date, { date: date, qa: qaAttributes.date }), readingTime && _jsx(ReadingTime, { readingTime: readingTime, qa: qaAttributes.readingTime }), _jsx(Sharing, { theme: theme, analyticsEvents: analyticsEventsContainer === null || analyticsEventsContainer === void 0 ? void 0 : analyticsEventsContainer.sharing }), likes && (_jsx(Save, { postId: postId, title: likes.likesCount, hasUserLike: likes.hasUserLike, handleUserLike: likes.handleUserLike, analyticsEvents: analyticsEventsContainer === null || analyticsEventsContainer === void 0 ? void 0 : analyticsEventsContainer.save, theme: theme, qa: qaAttributes.save }))] }));
28
+ };
29
+ //# sourceMappingURL=PostInfo.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"PostInfo.js","sourceRoot":"../../../../src","sources":["components/PostInfo/PostInfo.tsx"],"names":[],"mappings":";AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAG/B,OAAO,EAAC,eAAe,EAAC,0CAAuC;AAE/D,OAAO,EAAC,KAAK,EAAC,0BAAuB;AAErC,OAAO,EAAC,IAAI,EAAC,6BAA0B;AACvC,OAAO,EAAC,WAAW,EAAC,oCAAiC;AACrD,OAAO,EAAC,IAAI,EAAC,6BAA0B;AACvC,OAAO,EAAC,OAAO,EAAC,gCAA6B;AAC7C,OAAO,EAAC,eAAe,EAAC,8BAA2B;AAEnD,OAAO,gBAAgB,CAAC;AAExB,MAAM,CAAC,GAAG,KAAK,CAAC,WAAW,CAAC,CAAC;AAU7B;;;;;;;;;;;GAWG;AACH,MAAM,CAAC,MAAM,QAAQ,GAAG,CAAC,EACrB,IAAI,EACJ,WAAW,EACX,MAAM,EACN,KAAK,GAAG,OAAO,EACf,EAAE,EACF,wBAAwB,GACZ,EAAE,EAAE;IAChB,MAAM,EAAC,KAAK,EAAC,GAAG,KAAK,CAAC,UAAU,CAAC,eAAe,CAAC,CAAC;IAClD,MAAM,YAAY,GAAG,eAAe,CAAC,EAAE,EAAE,MAAM,EAAE,cAAc,EAAE,MAAM,CAAC,CAAC;IAEzE,OAAO,CACH,eAAK,SAAS,EAAE,CAAC,CAAC,WAAW,EAAE,EAAC,KAAK,EAAC,CAAC,aAClC,IAAI,IAAI,KAAC,IAAI,IAAC,IAAI,EAAE,IAAI,EAAE,EAAE,EAAE,YAAY,CAAC,IAAI,GAAI,EACnD,WAAW,IAAI,KAAC,WAAW,IAAC,WAAW,EAAE,WAAW,EAAE,EAAE,EAAE,YAAY,CAAC,WAAW,GAAI,EACvF,KAAC,OAAO,IAAC,KAAK,EAAE,KAAK,EAAE,eAAe,EAAE,wBAAwB,aAAxB,wBAAwB,uBAAxB,wBAAwB,CAAE,OAAO,GAAI,EAC5E,KAAK,IAAI,CACN,KAAC,IAAI,IACD,MAAM,EAAE,MAAM,EACd,KAAK,EAAE,KAAK,CAAC,UAAU,EACvB,WAAW,EAAE,KAAK,CAAC,WAAW,EAC9B,cAAc,EAAE,KAAK,CAAC,cAAc,EACpC,eAAe,EAAE,wBAAwB,aAAxB,wBAAwB,uBAAxB,wBAAwB,CAAE,IAAI,EAC/C,KAAK,EAAE,KAAK,EACZ,EAAE,EAAE,YAAY,CAAC,IAAI,GACvB,CACL,IACC,CACT,CAAC;AACN,CAAC,CAAC","sourcesContent":["import * as React from 'react';\n\nimport {AnalyticsEventsProp} from '@gravity-ui/page-constructor';\nimport {PostPageContext} from '../../contexts/PostPageContext';\nimport {PostData, QAProps} from '../../models/common';\nimport {block} from '../../utils/cn';\n\nimport {Date} from './components/Date';\nimport {ReadingTime} from './components/ReadingTime';\nimport {Save} from './components/Save';\nimport {Sharing} from './components/Sharing';\nimport {getQaAttributes} from '../../utils/common';\n\nimport './PostInfo.scss';\n\nconst b = block('post-info');\n\ntype PostInfoProps = QAProps & {\n postId: PostData['id'];\n readingTime: PostData['readingTime'];\n date: PostData['date'];\n theme?: 'light' | 'dark';\n analyticsEventsContainer?: Record<string, AnalyticsEventsProp>;\n};\n\n/**\n * Blog post info panel component\n *\n * @param postId - post id\n * @param readingTime - post reading time\n * @param date - post create date\n * @param theme - theme name\n * @param qa - test-attr\n * @param analyticsEventsContainer - a map of records with a single or collection of objects detailing analytics events\n *\n * @returns jsx\n */\nexport const PostInfo = ({\n date,\n readingTime,\n postId,\n theme = 'light',\n qa,\n analyticsEventsContainer,\n}: PostInfoProps) => {\n const {likes} = React.useContext(PostPageContext);\n const qaAttributes = getQaAttributes(qa, 'date', 'reading-time', 'save');\n\n return (\n <div className={b('container', {theme})}>\n {date && <Date date={date} qa={qaAttributes.date} />}\n {readingTime && <ReadingTime readingTime={readingTime} qa={qaAttributes.readingTime} />}\n <Sharing theme={theme} analyticsEvents={analyticsEventsContainer?.sharing} />\n {likes && (\n <Save\n postId={postId}\n title={likes.likesCount}\n hasUserLike={likes.hasUserLike}\n handleUserLike={likes.handleUserLike}\n analyticsEvents={analyticsEventsContainer?.save}\n theme={theme}\n qa={qaAttributes.save}\n />\n )}\n </div>\n );\n};\n"]}
@@ -1,5 +1,4 @@
1
- import React from 'react';
2
- import { PostCardSize, PostData, QAProps, ToggleLikeCallbackType } from '../../models/common';
1
+ import { PostCardSize, PostData, QAProps, ToggleLikeCallbackType } from "../../models/common.js";
3
2
  import './PostInfo.css';
4
3
  export interface SuggestPostInfoProps extends Pick<PostData, 'date' | 'readingTime' | 'hasUserLike'>, QAProps {
5
4
  postId: PostData['blogPostId'];
@@ -28,4 +27,4 @@ export interface SuggestPostInfoProps extends Pick<PostData, 'date' | 'readingTi
28
27
  *
29
28
  * @returns jsx
30
29
  */
31
- export declare const SuggestPostInfo: ({ postId, date, readingTime, likes, size, qa, dateId, readingTimeId, }: SuggestPostInfoProps) => React.JSX.Element;
30
+ export declare const SuggestPostInfo: ({ postId, date, readingTime, likes, size, qa, dateId, readingTimeId, }: SuggestPostInfoProps) => import("react/jsx-runtime").JSX.Element;
@@ -1,12 +1,12 @@
1
- import React from 'react';
2
- import { useLikes } from '../../hooks/useLikes';
3
- import { PostCardSize } from '../../models/common';
4
- import { block } from '../../utils/cn';
5
- import { Date } from './components/Date';
6
- import { ReadingTime } from './components/ReadingTime';
7
- import { Save } from './components/Save';
8
- import { prepareAnalyticsEvent } from '../../utils/common';
9
- import { DefaultGoalIds } from '../../constants';
1
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
+ import { useLikes } from "../../hooks/useLikes.js";
3
+ import { PostCardSize } from "../../models/common.js";
4
+ import { block } from "../../utils/cn.js";
5
+ import { Date } from "./components/Date.js";
6
+ import { ReadingTime } from "./components/ReadingTime.js";
7
+ import { Save } from "./components/Save.js";
8
+ import { prepareAnalyticsEvent } from "../../utils/common.js";
9
+ import { DefaultGoalIds } from "../../constants.js";
10
10
  import './PostInfo.css';
11
11
  const b = block('post-info');
12
12
  const saveEvents = prepareAnalyticsEvent({ name: DefaultGoalIds.saveSuggest });
@@ -33,9 +33,6 @@ export const SuggestPostInfo = ({ postId, date, readingTime, likes, size = PostC
33
33
  toggleLikeCallback: likes === null || likes === void 0 ? void 0 : likes.toggleLike,
34
34
  postId: postId,
35
35
  });
36
- return (React.createElement("div", { className: b('container') },
37
- React.createElement("div", { className: b('suggest-container') },
38
- date && React.createElement(Date, { date: date, size: size, id: dateId }),
39
- readingTime && (React.createElement(ReadingTime, { readingTime: readingTime, size: size, id: readingTimeId }))),
40
- likes && postId && (React.createElement(Save, { postId: postId, title: likesCount, analyticsEvents: saveEvents, hasUserLike: hasUserLike, handleUserLike: handleLike, size: size, qa: qa }))));
41
- };
36
+ return (_jsxs("div", { className: b('container'), children: [_jsxs("div", { className: b('suggest-container'), children: [date && _jsx(Date, { date: date, size: size, id: dateId }), readingTime && (_jsx(ReadingTime, { readingTime: readingTime, size: size, id: readingTimeId }))] }), likes && postId && (_jsx(Save, { postId: postId, title: likesCount, analyticsEvents: saveEvents, hasUserLike: hasUserLike, handleUserLike: handleLike, size: size, qa: qa }))] }));
37
+ };
38
+ //# sourceMappingURL=SuggestPostInfo.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"SuggestPostInfo.js","sourceRoot":"../../../../src","sources":["components/PostInfo/SuggestPostInfo.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAC,QAAQ,EAAC,gCAA6B;AAC9C,OAAO,EAAC,YAAY,EAA4C,+BAA4B;AAC5F,OAAO,EAAC,KAAK,EAAC,0BAAuB;AAErC,OAAO,EAAC,IAAI,EAAC,6BAA0B;AACvC,OAAO,EAAC,WAAW,EAAC,oCAAiC;AACrD,OAAO,EAAC,IAAI,EAAC,6BAA0B;AACvC,OAAO,EAAC,qBAAqB,EAAC,8BAA2B;AACzD,OAAO,EAAC,cAAc,EAAC,2BAAwB;AAE/C,OAAO,gBAAgB,CAAC;AAExB,MAAM,CAAC,GAAG,KAAK,CAAC,WAAW,CAAC,CAAC;AAE7B,MAAM,UAAU,GAAG,qBAAqB,CAAC,EAAC,IAAI,EAAE,cAAc,CAAC,WAAW,EAAC,CAAC,CAAC;AAgB7E;;;;;;;;;;;;;;;GAeG;AACH,MAAM,CAAC,MAAM,eAAe,GAAG,CAAC,EAC5B,MAAM,EACN,IAAI,EACJ,WAAW,EACX,KAAK,EACL,IAAI,GAAG,YAAY,CAAC,KAAK,EACzB,EAAE,EACF,MAAM,EACN,aAAa,GACM,EAAE,EAAE;IACvB,MAAM,EAAC,WAAW,EAAE,UAAU,EAAE,UAAU,EAAC,GAAG,QAAQ,CAAC;QACnD,OAAO,EAAE,KAAK,aAAL,KAAK,uBAAL,KAAK,CAAE,WAAW;QAC3B,KAAK,EAAE,KAAK,aAAL,KAAK,uBAAL,KAAK,CAAE,UAAU;QACxB,kBAAkB,EAAE,KAAK,aAAL,KAAK,uBAAL,KAAK,CAAE,UAAU;QACrC,MAAM,EAAE,MAAM;KACjB,CAAC,CAAC;IAEH,OAAO,CACH,eAAK,SAAS,EAAE,CAAC,CAAC,WAAW,CAAC,aAC1B,eAAK,SAAS,EAAE,CAAC,CAAC,mBAAmB,CAAC,aACjC,IAAI,IAAI,KAAC,IAAI,IAAC,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,EAAE,EAAE,MAAM,GAAI,EACpD,WAAW,IAAI,CACZ,KAAC,WAAW,IAAC,WAAW,EAAE,WAAW,EAAE,IAAI,EAAE,IAAI,EAAE,EAAE,EAAE,aAAa,GAAI,CAC3E,IACC,EACL,KAAK,IAAI,MAAM,IAAI,CAChB,KAAC,IAAI,IACD,MAAM,EAAE,MAAM,EACd,KAAK,EAAE,UAAU,EACjB,eAAe,EAAE,UAAU,EAC3B,WAAW,EAAE,WAAW,EACxB,cAAc,EAAE,UAAU,EAC1B,IAAI,EAAE,IAAI,EACV,EAAE,EAAE,EAAE,GACR,CACL,IACC,CACT,CAAC;AACN,CAAC,CAAC","sourcesContent":["import {useLikes} from '../../hooks/useLikes';\nimport {PostCardSize, PostData, QAProps, ToggleLikeCallbackType} from '../../models/common';\nimport {block} from '../../utils/cn';\n\nimport {Date} from './components/Date';\nimport {ReadingTime} from './components/ReadingTime';\nimport {Save} from './components/Save';\nimport {prepareAnalyticsEvent} from '../../utils/common';\nimport {DefaultGoalIds} from '../../constants';\n\nimport './PostInfo.scss';\n\nconst b = block('post-info');\n\nconst saveEvents = prepareAnalyticsEvent({name: DefaultGoalIds.saveSuggest});\n\nexport interface SuggestPostInfoProps\n extends Pick<PostData, 'date' | 'readingTime' | 'hasUserLike'>,\n QAProps {\n postId: PostData['blogPostId'];\n size?: PostCardSize;\n likes?: {\n likesCount?: number;\n hasUserLike?: boolean;\n toggleLike?: ToggleLikeCallbackType;\n };\n dateId?: string;\n readingTimeId?: string;\n}\n\n/**\n * Suggest blog card info component\n *\n * @param postId - post id\n * @param date - post create date\n * @param readingTime - post reading time\n * @param hasUserLike - flag that the user liked the post\n * @param likes - likes count\n * @param qa - test-attr\n * @param size - text size\n * @param isModernIcon - flag what we need render 'bookmark' icon\n * @param dateId - id value for element with post date. Useful when providing accessible description\n * @param readingTimeId - id value for element with reading time. Useful when providing accessible description\n *\n * @returns jsx\n */\nexport const SuggestPostInfo = ({\n postId,\n date,\n readingTime,\n likes,\n size = PostCardSize.SMALL,\n qa,\n dateId,\n readingTimeId,\n}: SuggestPostInfoProps) => {\n const {hasUserLike, likesCount, handleLike} = useLikes({\n hasLike: likes?.hasUserLike,\n count: likes?.likesCount,\n toggleLikeCallback: likes?.toggleLike,\n postId: postId,\n });\n\n return (\n <div className={b('container')}>\n <div className={b('suggest-container')}>\n {date && <Date date={date} size={size} id={dateId} />}\n {readingTime && (\n <ReadingTime readingTime={readingTime} size={size} id={readingTimeId} />\n )}\n </div>\n {likes && postId && (\n <Save\n postId={postId}\n title={likesCount}\n analyticsEvents={saveEvents}\n hasUserLike={hasUserLike}\n handleUserLike={handleLike}\n size={size}\n qa={qa}\n />\n )}\n </div>\n );\n};\n"]}
@@ -1,10 +1,9 @@
1
- import React from 'react';
2
- import { PostCardSize, QAProps } from '../../../models/common';
1
+ import { PostCardSize, QAProps } from "../../../models/common.js";
3
2
  import '../PostInfo.css';
4
3
  type DateProps = QAProps & {
5
4
  date: string | number;
6
5
  size?: PostCardSize;
7
6
  id?: string;
8
7
  };
9
- export declare const Date: ({ date, size, id, qa }: DateProps) => React.JSX.Element;
8
+ export declare const Date: ({ date, size, id, qa }: DateProps) => import("react/jsx-runtime").JSX.Element;
10
9
  export {};
@@ -1,11 +1,13 @@
1
- import React, { useContext } from 'react';
2
- import { LocaleContext } from '../../../contexts/LocaleContext';
3
- import { PostCardSize } from '../../../models/common';
4
- import { block } from '../../../utils/cn';
5
- import { format } from '../../../utils/date';
1
+ import { jsx as _jsx } from "react/jsx-runtime";
2
+ import * as React from 'react';
3
+ import { LocaleContext } from "../../../contexts/LocaleContext.js";
4
+ import { PostCardSize } from "../../../models/common.js";
5
+ import { block } from "../../../utils/cn.js";
6
+ import { format } from "../../../utils/date.js";
6
7
  import '../PostInfo.css';
7
8
  const b = block('post-info');
8
9
  export const Date = ({ date, size = PostCardSize.SMALL, id, qa }) => {
9
- const { locale } = useContext(LocaleContext);
10
- return (React.createElement("div", { className: b('item', { size }), id: id, "data-qa": qa }, format(date, 'longDate', locale === null || locale === void 0 ? void 0 : locale.code)));
11
- };
10
+ const { locale } = React.useContext(LocaleContext);
11
+ return (_jsx("div", { className: b('item', { size }), id: id, "data-qa": qa, children: format(date, 'longDate', locale === null || locale === void 0 ? void 0 : locale.code) }));
12
+ };
13
+ //# sourceMappingURL=Date.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Date.js","sourceRoot":"../../../../../src","sources":["components/PostInfo/components/Date.tsx"],"names":[],"mappings":";AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAE/B,OAAO,EAAC,aAAa,EAAC,2CAAwC;AAC9D,OAAO,EAAC,YAAY,EAAU,kCAA+B;AAC7D,OAAO,EAAC,KAAK,EAAC,6BAA0B;AACxC,OAAO,EAAC,MAAM,EAAC,+BAA4B;AAE3C,OAAO,iBAAiB,CAAC;AAEzB,MAAM,CAAC,GAAG,KAAK,CAAC,WAAW,CAAC,CAAC;AAQ7B,MAAM,CAAC,MAAM,IAAI,GAAG,CAAC,EAAC,IAAI,EAAE,IAAI,GAAG,YAAY,CAAC,KAAK,EAAE,EAAE,EAAE,EAAE,EAAY,EAAE,EAAE;IACzE,MAAM,EAAC,MAAM,EAAC,GAAG,KAAK,CAAC,UAAU,CAAC,aAAa,CAAC,CAAC;IAEjD,OAAO,CACH,cAAK,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE,EAAC,IAAI,EAAC,CAAC,EAAE,EAAE,EAAE,EAAE,aAAW,EAAE,YACjD,MAAM,CAAC,IAAI,EAAE,UAAU,EAAE,MAAM,aAAN,MAAM,uBAAN,MAAM,CAAE,IAAI,CAAC,GACrC,CACT,CAAC;AACN,CAAC,CAAC","sourcesContent":["import * as React from 'react';\n\nimport {LocaleContext} from '../../../contexts/LocaleContext';\nimport {PostCardSize, QAProps} from '../../../models/common';\nimport {block} from '../../../utils/cn';\nimport {format} from '../../../utils/date';\n\nimport '../PostInfo.scss';\n\nconst b = block('post-info');\n\ntype DateProps = QAProps & {\n date: string | number;\n size?: PostCardSize;\n id?: string;\n};\n\nexport const Date = ({date, size = PostCardSize.SMALL, id, qa}: DateProps) => {\n const {locale} = React.useContext(LocaleContext);\n\n return (\n <div className={b('item', {size})} id={id} data-qa={qa}>\n {format(date, 'longDate', locale?.code)}\n </div>\n );\n};\n"]}
@@ -1,10 +1,9 @@
1
- import React from 'react';
2
- import { QAProps } from '../../../models/common';
1
+ import { QAProps } from "../../../models/common.js";
3
2
  import '../PostInfo.css';
4
3
  type ReadingTimeProps = QAProps & {
5
4
  readingTime: number;
6
5
  size?: 's' | 'm';
7
6
  id?: string;
8
7
  };
9
- export declare const ReadingTime: ({ readingTime, size, id, qa }: ReadingTimeProps) => React.JSX.Element;
8
+ export declare const ReadingTime: ({ readingTime, size, id, qa }: ReadingTimeProps) => import("react/jsx-runtime").JSX.Element;
10
9
  export {};
@@ -1,12 +1,10 @@
1
- import React from 'react';
1
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
2
  import { Icon } from '@gravity-ui/uikit';
3
- import { Keyset, i18n } from '../../../i18n';
4
- import { Time } from '../../../icons/Time';
5
- import { block } from '../../../utils/cn';
3
+ import { Keyset, i18n } from "../../../i18n/index.js";
4
+ import { Time } from "../../../icons/Time.js";
5
+ import { block } from "../../../utils/cn.js";
6
6
  import '../PostInfo.css';
7
7
  const b = block('post-info');
8
8
  const ICON_SIZE = 16;
9
- export const ReadingTime = ({ readingTime, size = 's', id, qa }) => (React.createElement("div", { className: b('item', { size }), id: id, "data-qa": qa },
10
- React.createElement("span", { className: b('icon') },
11
- React.createElement(Icon, { data: Time, size: ICON_SIZE, className: b('icon-color') })),
12
- i18n(Keyset.ContextReadingTime, { count: readingTime })));
9
+ export const ReadingTime = ({ readingTime, size = 's', id, qa }) => (_jsxs("div", { className: b('item', { size }), id: id, "data-qa": qa, children: [_jsx("span", { className: b('icon'), children: _jsx(Icon, { data: Time, size: ICON_SIZE, className: b('icon-color') }) }), i18n(Keyset.ContextReadingTime, { count: readingTime })] }));
10
+ //# sourceMappingURL=ReadingTime.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ReadingTime.js","sourceRoot":"../../../../../src","sources":["components/PostInfo/components/ReadingTime.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAC,IAAI,EAAC,MAAM,mBAAmB,CAAC;AAEvC,OAAO,EAAC,MAAM,EAAE,IAAI,EAAC,+BAAsB;AAC3C,OAAO,EAAC,IAAI,EAAC,+BAA4B;AACzC,OAAO,EAAC,KAAK,EAAC,6BAA0B;AAGxC,OAAO,iBAAiB,CAAC;AAEzB,MAAM,CAAC,GAAG,KAAK,CAAC,WAAW,CAAC,CAAC;AAE7B,MAAM,SAAS,GAAG,EAAE,CAAC;AAQrB,MAAM,CAAC,MAAM,WAAW,GAAG,CAAC,EAAC,WAAW,EAAE,IAAI,GAAG,GAAG,EAAE,EAAE,EAAE,EAAE,EAAmB,EAAE,EAAE,CAAC,CAChF,eAAK,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE,EAAC,IAAI,EAAC,CAAC,EAAE,EAAE,EAAE,EAAE,aAAW,EAAE,aAClD,eAAM,SAAS,EAAE,CAAC,CAAC,MAAM,CAAC,YACtB,KAAC,IAAI,IAAC,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,SAAS,EAAE,SAAS,EAAE,CAAC,CAAC,YAAY,CAAC,GAAI,GAC9D,EACN,IAAI,CAAC,MAAM,CAAC,kBAAkB,EAAE,EAAC,KAAK,EAAE,WAAW,EAAC,CAAC,IACpD,CACT,CAAC","sourcesContent":["import {Icon} from '@gravity-ui/uikit';\n\nimport {Keyset, i18n} from '../../../i18n';\nimport {Time} from '../../../icons/Time';\nimport {block} from '../../../utils/cn';\n\nimport {QAProps} from '../../../models/common';\nimport '../PostInfo.scss';\n\nconst b = block('post-info');\n\nconst ICON_SIZE = 16;\n\ntype ReadingTimeProps = QAProps & {\n readingTime: number;\n size?: 's' | 'm';\n id?: string;\n};\n\nexport const ReadingTime = ({readingTime, size = 's', id, qa}: ReadingTimeProps) => (\n <div className={b('item', {size})} id={id} data-qa={qa}>\n <span className={b('icon')}>\n <Icon data={Time} size={ICON_SIZE} className={b('icon-color')} />\n </span>\n {i18n(Keyset.ContextReadingTime, {count: readingTime})}\n </div>\n);\n"]}
@@ -1,6 +1,5 @@
1
- import React from 'react';
2
1
  import { AnalyticsEventsProp } from '@gravity-ui/page-constructor';
3
- import { QAProps } from '../../../models/common';
2
+ import { QAProps } from "../../../models/common.js";
4
3
  import '../PostInfo.css';
5
4
  type SaveProps = QAProps & {
6
5
  title: string | number;
@@ -23,5 +22,5 @@ type SaveProps = QAProps & {
23
22
  *
24
23
  * @returns jsx
25
24
  */
26
- export declare const Save: ({ title, postId, hasUserLike, handleUserLike, size, theme, qa, analyticsEvents, }: SaveProps) => React.JSX.Element;
25
+ export declare const Save: ({ title, postId, hasUserLike, handleUserLike, size, theme, qa, analyticsEvents, }: SaveProps) => import("react/jsx-runtime").JSX.Element;
27
26
  export {};
@@ -1,14 +1,15 @@
1
- import React, { useContext } from 'react';
1
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
+ import * as React from 'react';
2
3
  import { useAnalytics } from '@gravity-ui/page-constructor';
3
4
  import { Icon, useUniqId } from '@gravity-ui/uikit';
4
- import { LikesContext } from '../../../contexts/LikesContext';
5
- import { Save as SaveIcon } from '../../../icons/Save';
6
- import { SaveFilled } from '../../../icons/SaveFilled';
7
- import { DefaultEventNames } from '../../../models/common';
8
- import { block } from '../../../utils/cn';
9
- import { postLikeStatus } from '../../../utils/common';
5
+ import { LikesContext } from "../../../contexts/LikesContext.js";
6
+ import { Save as SaveIcon } from "../../../icons/Save.js";
7
+ import { SaveFilled } from "../../../icons/SaveFilled.js";
8
+ import { DefaultEventNames } from "../../../models/common.js";
9
+ import { block } from "../../../utils/cn.js";
10
+ import { postLikeStatus } from "../../../utils/common.js";
10
11
  import '../PostInfo.css';
11
- import { Keyset, i18n } from '../../../i18n';
12
+ import { Keyset, i18n } from "../../../i18n/index.js";
12
13
  const ICON_SIZE = 16;
13
14
  const b = block('post-info');
14
15
  /**
@@ -24,12 +25,12 @@ const b = block('post-info');
24
25
  * @returns jsx
25
26
  */
26
27
  export const Save = ({ title, postId, hasUserLike, handleUserLike, size, theme, qa, analyticsEvents, }) => {
27
- const { toggleLike, isSignedInUser, requireSignIn } = useContext(LikesContext);
28
+ const { toggleLike, isSignedInUser, requireSignIn } = React.useContext(LikesContext);
28
29
  const handleAnalytics = useAnalytics(DefaultEventNames.SaveButton);
29
30
  const isLikeable = Boolean(toggleLike);
30
31
  const titleElementId = useUniqId();
31
32
  const isNumericTitle = typeof title === 'number';
32
- return (React.createElement("button", { className: b('item', { size, save: true }), onClick: (event) => {
33
+ return (_jsx("button", { className: b('item', { size, save: true }), onClick: (event) => {
33
34
  // both preventDefault and stopImmediatePropagation required to work properly
34
35
  // https://stackoverflow.com/questions/24415631/reactjs-syntheticevent-stoppropagation-only-works-with-react-events
35
36
  event.preventDefault();
@@ -45,9 +46,6 @@ export const Save = ({ title, postId, hasUserLike, handleUserLike, size, theme,
45
46
  postLikeStatus(postId, Boolean(hasUserLike));
46
47
  handleUserLike();
47
48
  handleAnalytics(analyticsEvents);
48
- }, "data-qa": qa, "aria-pressed": hasUserLike, "aria-label": isNumericTitle ? i18n(Keyset.Save) : undefined, "aria-describedby": isNumericTitle ? titleElementId : undefined },
49
- React.createElement("div", { className: b('content', { cursor: isLikeable, theme }) },
50
- React.createElement("span", { className: b('icon') },
51
- React.createElement(Icon, { data: hasUserLike ? SaveFilled : SaveIcon, size: ICON_SIZE, className: b({ filled: Boolean(hasUserLike) }) })),
52
- React.createElement("span", { id: titleElementId, className: b('title', { cursor: isLikeable }) }, title))));
53
- };
49
+ }, "data-qa": qa, "aria-pressed": hasUserLike, "aria-label": isNumericTitle ? i18n(Keyset.Save) : undefined, "aria-describedby": isNumericTitle ? titleElementId : undefined, children: _jsxs("div", { className: b('content', { cursor: isLikeable, theme }), children: [_jsx("span", { className: b('icon'), children: _jsx(Icon, { data: hasUserLike ? SaveFilled : SaveIcon, size: ICON_SIZE, className: b({ filled: Boolean(hasUserLike) }) }) }), _jsx("span", { id: titleElementId, className: b('title', { cursor: isLikeable }), children: title })] }) }));
50
+ };
51
+ //# sourceMappingURL=Save.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Save.js","sourceRoot":"../../../../../src","sources":["components/PostInfo/components/Save.tsx"],"names":[],"mappings":"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","sourcesContent":["import * as React from 'react';\n\nimport {AnalyticsEventsProp, useAnalytics} from '@gravity-ui/page-constructor';\nimport {Icon, useUniqId} from '@gravity-ui/uikit';\n\nimport {LikesContext} from '../../../contexts/LikesContext';\nimport {Save as SaveIcon} from '../../../icons/Save';\nimport {SaveFilled} from '../../../icons/SaveFilled';\nimport {DefaultEventNames, QAProps} from '../../../models/common';\nimport {block} from '../../../utils/cn';\nimport {postLikeStatus} from '../../../utils/common';\n\nimport '../PostInfo.scss';\nimport {Keyset, i18n} from '../../../i18n';\n\nconst ICON_SIZE = 16;\n\nconst b = block('post-info');\n\ntype SaveProps = QAProps & {\n title: string | number;\n postId: number | string;\n hasUserLike: boolean;\n handleUserLike: () => void;\n theme?: 'light' | 'dark';\n size?: 's' | 'm';\n analyticsEvents?: AnalyticsEventsProp;\n};\n\n/**\n * Components for 'save' blog UI-component\n *\n * @param title - post title\n * @param postId - post id\n * @param hasUserLike - flag what blog has like from current user\n * @param qa - test-attr\n * @param size - text size\n * @param analyticsEvents - a single or collection of objects detailing analytics events\n *\n * @returns jsx\n */\nexport const Save = ({\n title,\n postId,\n hasUserLike,\n handleUserLike,\n size,\n theme,\n qa,\n analyticsEvents,\n}: SaveProps) => {\n const {toggleLike, isSignedInUser, requireSignIn} = React.useContext(LikesContext);\n const handleAnalytics = useAnalytics(DefaultEventNames.SaveButton);\n const isLikeable = Boolean(toggleLike);\n\n const titleElementId = useUniqId();\n const isNumericTitle = typeof title === 'number';\n\n return (\n <button\n className={b('item', {size, save: true})}\n onClick={(event) => {\n // both preventDefault and stopImmediatePropagation required to work properly\n // https://stackoverflow.com/questions/24415631/reactjs-syntheticevent-stoppropagation-only-works-with-react-events\n event.preventDefault();\n event.nativeEvent.stopImmediatePropagation();\n\n if (!isLikeable) {\n return;\n }\n\n // Open Popup to ask the User to sign in first\n if (!isSignedInUser && requireSignIn) {\n requireSignIn(event);\n return;\n }\n\n postLikeStatus(postId, Boolean(hasUserLike));\n handleUserLike();\n handleAnalytics(analyticsEvents);\n }}\n data-qa={qa}\n aria-pressed={hasUserLike}\n aria-label={isNumericTitle ? i18n(Keyset.Save) : undefined}\n aria-describedby={isNumericTitle ? titleElementId : undefined}\n >\n <div className={b('content', {cursor: isLikeable, theme})}>\n <span className={b('icon')}>\n <Icon\n data={hasUserLike ? SaveFilled : SaveIcon}\n size={ICON_SIZE}\n className={b({filled: Boolean(hasUserLike)})}\n />\n </span>\n <span id={titleElementId} className={b('title', {cursor: isLikeable})}>\n {title}\n </span>\n </div>\n </button>\n );\n};\n"]}
@@ -1,9 +1,8 @@
1
- import React from 'react';
2
1
  import { AnalyticsEventsProp } from '@gravity-ui/page-constructor';
3
2
  import '../PostInfo.css';
4
3
  type SharingProps = {
5
4
  theme?: 'light' | 'dark';
6
5
  analyticsEvents?: AnalyticsEventsProp;
7
6
  };
8
- export declare const Sharing: ({ theme, analyticsEvents }: SharingProps) => React.JSX.Element;
7
+ export declare const Sharing: ({ theme, analyticsEvents }: SharingProps) => import("react/jsx-runtime").JSX.Element;
9
8
  export {};