@gravity-ui/blog-constructor 6.5.1-beta.0 → 6.6.1
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.
- package/build/cjs/blocks/Author/Author.d.ts +3 -2
- package/build/cjs/blocks/Author/Author.js +13 -13
- package/build/cjs/blocks/Author/schema.js +3 -4
- package/build/cjs/blocks/Banner/Banner.d.ts +3 -2
- package/build/cjs/blocks/Banner/Banner.js +15 -11
- package/build/cjs/blocks/Banner/schema.js +3 -4
- package/build/cjs/blocks/CTA/CTA.d.ts +3 -2
- package/build/cjs/blocks/CTA/CTA.js +20 -19
- package/build/cjs/blocks/CTA/schema.js +3 -4
- package/build/cjs/blocks/ColoredText/ColoredText.d.ts +3 -2
- package/build/cjs/blocks/ColoredText/ColoredText.js +12 -9
- package/build/cjs/blocks/ColoredText/schema.js +3 -4
- package/build/cjs/blocks/Feed/Feed.d.ts +3 -2
- package/build/cjs/blocks/Feed/Feed.js +31 -31
- package/build/cjs/blocks/Feed/reducer.d.ts +1 -1
- package/build/cjs/blocks/Feed/reducer.js +2 -3
- package/build/cjs/blocks/Feed/schema.js +2 -3
- package/build/cjs/blocks/Form/Form.d.ts +3 -2
- package/build/cjs/blocks/Form/Form.js +10 -10
- package/build/cjs/blocks/Form/schema.js +3 -4
- package/build/cjs/blocks/Header/Header.d.ts +3 -2
- package/build/cjs/blocks/Header/Header.js +18 -18
- package/build/cjs/blocks/Header/schema.d.ts +0 -3
- package/build/cjs/blocks/Header/schema.js +3 -4
- package/build/cjs/blocks/Layout/Layout.d.ts +3 -3
- package/build/cjs/blocks/Layout/Layout.js +13 -12
- package/build/cjs/blocks/Layout/schema.js +3 -4
- package/build/cjs/blocks/Media/Media.d.ts +3 -2
- package/build/cjs/blocks/Media/Media.js +15 -12
- package/build/cjs/blocks/Media/schema.d.ts +0 -3
- package/build/cjs/blocks/Media/schema.js +3 -4
- package/build/cjs/blocks/Meta/Meta.d.ts +3 -2
- package/build/cjs/blocks/Meta/Meta.js +23 -22
- package/build/cjs/blocks/Meta/schema.js +3 -4
- package/build/cjs/blocks/Suggest/Suggest.d.ts +3 -2
- package/build/cjs/blocks/Suggest/Suggest.js +14 -15
- package/build/cjs/blocks/Suggest/schema.js +3 -4
- package/build/cjs/blocks/YFM/YFM.d.ts +3 -2
- package/build/cjs/blocks/YFM/YFM.js +11 -10
- package/build/cjs/blocks/YFM/schema.js +3 -4
- package/build/cjs/blocks/constants.js +1 -2
- package/build/cjs/components/FeedHeader/FeedHeader.d.ts +4 -3
- package/build/cjs/components/FeedHeader/FeedHeader.js +14 -10
- package/build/cjs/components/FeedHeader/components/Controls/Controls.d.ts +4 -4
- package/build/cjs/components/FeedHeader/components/Controls/Controls.js +40 -30
- package/build/cjs/components/FeedHeader/components/Controls/customRenders.d.ts +3 -2
- package/build/cjs/components/FeedHeader/components/Controls/customRenders.js +9 -13
- package/build/cjs/components/FeedHeader/components/CustomSelectOption/CustomSelectOption.d.ts +2 -2
- package/build/cjs/components/FeedHeader/components/CustomSelectOption/CustomSelectOption.js +7 -5
- package/build/cjs/components/FeedHeader/components/CustomSwitcher/CustomSwitcher.css +1 -1
- package/build/cjs/components/FeedHeader/components/CustomSwitcher/CustomSwitcher.d.ts +3 -2
- package/build/cjs/components/FeedHeader/components/CustomSwitcher/CustomSwitcher.js +17 -13
- package/build/cjs/components/MetaWrapper/MetaWrapper.d.ts +1 -1
- package/build/cjs/components/MetaWrapper/MetaWrapper.js +4 -4
- package/build/cjs/components/Paginator/Paginator.d.ts +3 -2
- package/build/cjs/components/Paginator/Paginator.js +29 -25
- package/build/cjs/components/Paginator/components/NavigationButton.d.ts +3 -2
- package/build/cjs/components/Paginator/components/NavigationButton.js +7 -7
- package/build/cjs/components/Paginator/components/PaginatorItem.d.ts +3 -2
- package/build/cjs/components/Paginator/components/PaginatorItem.js +11 -13
- package/build/cjs/components/Paginator/types.d.ts +3 -3
- package/build/cjs/components/Paginator/types.js +1 -2
- package/build/cjs/components/Paginator/utils.d.ts +2 -2
- package/build/cjs/components/Paginator/utils.js +1 -2
- package/build/cjs/components/PostCard/PostCard.d.ts +3 -2
- package/build/cjs/components/PostCard/PostCard.js +23 -16
- package/build/cjs/components/PostInfo/PostInfo.d.ts +3 -2
- package/build/cjs/components/PostInfo/PostInfo.js +15 -13
- package/build/cjs/components/PostInfo/SuggestPostInfo.d.ts +3 -2
- package/build/cjs/components/PostInfo/SuggestPostInfo.js +16 -12
- package/build/cjs/components/PostInfo/components/Date.d.ts +3 -2
- package/build/cjs/components/PostInfo/components/Date.js +8 -10
- package/build/cjs/components/PostInfo/components/ReadingTime.d.ts +3 -2
- package/build/cjs/components/PostInfo/components/ReadingTime.js +10 -7
- package/build/cjs/components/PostInfo/components/Save.d.ts +3 -2
- package/build/cjs/components/PostInfo/components/Save.js +16 -14
- package/build/cjs/components/PostInfo/components/Sharing.d.ts +2 -1
- package/build/cjs/components/PostInfo/components/Sharing.js +17 -17
- package/build/cjs/components/Posts/Posts.d.ts +4 -4
- package/build/cjs/components/Posts/Posts.js +28 -16
- package/build/cjs/components/PostsEmpty/PostsEmpty.d.ts +2 -1
- package/build/cjs/components/PostsEmpty/PostsEmpty.js +8 -6
- package/build/cjs/components/PostsError/PostsError.d.ts +2 -1
- package/build/cjs/components/PostsError/PostsError.js +10 -6
- package/build/cjs/components/Prompt/Prompt.d.ts +2 -1
- package/build/cjs/components/Prompt/Prompt.js +12 -10
- package/build/cjs/components/PromptSignIn/PromptSignIn.d.ts +4 -4
- package/build/cjs/components/PromptSignIn/PromptSignIn.js +5 -6
- package/build/cjs/components/PromptSignIn/hooks/usePromptSignInProps.d.ts +2 -2
- package/build/cjs/components/PromptSignIn/hooks/usePromptSignInProps.js +5 -6
- package/build/cjs/components/Search/Search.d.ts +3 -2
- package/build/cjs/components/Search/Search.js +17 -17
- package/build/cjs/components/Wrapper/Wrapper.d.ts +3 -3
- package/build/cjs/components/Wrapper/Wrapper.js +7 -7
- package/build/cjs/constants.d.ts +2 -2
- package/build/cjs/constants.js +3 -4
- package/build/cjs/constructor/BlogConstructorProvider.d.ts +7 -7
- package/build/cjs/constructor/BlogConstructorProvider.js +19 -21
- package/build/cjs/constructor/blocksMap.d.ts +12 -12
- package/build/cjs/constructor/blocksMap.js +14 -15
- package/build/cjs/containers/BlogPage/BlogPage.d.ts +4 -4
- package/build/cjs/containers/BlogPage/BlogPage.js +25 -22
- package/build/cjs/containers/BlogPostPage/BlogPostPage.d.ts +4 -4
- package/build/cjs/containers/BlogPostPage/BlogPostPage.js +30 -27
- package/build/cjs/contexts/DeviceContext.d.ts +2 -2
- package/build/cjs/contexts/DeviceContext.js +2 -3
- package/build/cjs/contexts/FeedContext.d.ts +2 -2
- package/build/cjs/contexts/FeedContext.js +2 -3
- package/build/cjs/contexts/LikesContext.d.ts +2 -2
- package/build/cjs/contexts/LikesContext.js +2 -3
- package/build/cjs/contexts/LocaleContext.d.ts +2 -2
- package/build/cjs/contexts/LocaleContext.js +3 -4
- package/build/cjs/contexts/MobileContext.d.ts +1 -1
- package/build/cjs/contexts/MobileContext.js +2 -3
- package/build/cjs/contexts/PostPageContext.d.ts +2 -2
- package/build/cjs/contexts/PostPageContext.js +2 -3
- package/build/cjs/contexts/RouterContext.d.ts +2 -2
- package/build/cjs/contexts/RouterContext.js +2 -3
- package/build/cjs/contexts/SettingsContext.d.ts +1 -1
- package/build/cjs/contexts/SettingsContext.js +2 -3
- package/build/cjs/contexts/theme/ThemeContext.d.ts +2 -2
- package/build/cjs/contexts/theme/ThemeContext.js +3 -4
- package/build/cjs/contexts/theme/ThemeProvider.d.ts +4 -4
- package/build/cjs/contexts/theme/ThemeProvider.js +8 -9
- package/build/cjs/contexts/theme/ThemeValueContext.d.ts +1 -1
- package/build/cjs/contexts/theme/ThemeValueContext.js +2 -3
- package/build/cjs/contexts/theme/index.d.ts +6 -6
- package/build/cjs/contexts/theme/index.js +6 -7
- package/build/cjs/contexts/theme/useTheme.d.ts +1 -1
- package/build/cjs/contexts/theme/useTheme.js +5 -5
- package/build/cjs/contexts/theme/useThemeValue.d.ts +1 -1
- package/build/cjs/contexts/theme/useThemeValue.js +5 -5
- package/build/cjs/contexts/theme/withTheme.d.ts +2 -2
- package/build/cjs/contexts/theme/withTheme.js +6 -7
- package/build/cjs/contexts/theme/withThemeValue.d.ts +2 -2
- package/build/cjs/contexts/theme/withThemeValue.js +6 -7
- package/build/cjs/counters/metrika.js +3 -3
- package/build/cjs/counters/utils.js +1 -2
- package/build/cjs/hooks/useAriaAttributes.js +4 -6
- package/build/cjs/hooks/useExtendedComponentMap.d.ts +17 -18
- package/build/cjs/hooks/useExtendedComponentMap.js +4 -5
- package/build/cjs/hooks/useHover.d.ts +1 -1
- package/build/cjs/hooks/useHover.js +6 -6
- package/build/cjs/hooks/useIsIPhone.js +4 -6
- package/build/cjs/hooks/useLikes.d.ts +1 -1
- package/build/cjs/hooks/useLikes.js +6 -8
- package/build/cjs/hooks/useOpenCloseTimer.js +5 -6
- package/build/cjs/i18n/index.d.ts +1 -5
- package/build/cjs/i18n/index.js +2 -3
- package/build/cjs/icons/Close.d.ts +2 -2
- package/build/cjs/icons/Close.js +6 -5
- package/build/cjs/icons/DropdownArrow.d.ts +2 -2
- package/build/cjs/icons/DropdownArrow.js +6 -5
- package/build/cjs/icons/Save.d.ts +2 -2
- package/build/cjs/icons/Save.js +6 -5
- package/build/cjs/icons/SaveFilled.d.ts +2 -2
- package/build/cjs/icons/SaveFilled.js +6 -5
- package/build/cjs/icons/SearchIcon.d.ts +2 -2
- package/build/cjs/icons/SearchIcon.js +6 -5
- package/build/cjs/icons/ShareArrowUp.d.ts +2 -2
- package/build/cjs/icons/ShareArrowUp.js +6 -5
- package/build/cjs/icons/Time.d.ts +2 -2
- package/build/cjs/icons/Time.js +6 -5
- package/build/cjs/index.d.ts +8 -8
- package/build/cjs/index.js +8 -9
- package/build/cjs/models/blocks.d.ts +4 -4
- package/build/cjs/models/blocks.js +1 -2
- package/build/cjs/models/common.d.ts +3 -3
- package/build/cjs/models/common.js +5 -6
- package/build/cjs/models/locale.js +1 -2
- package/build/cjs/models/paddings.js +1 -2
- package/build/cjs/schema/blocks.d.ts +10 -10
- package/build/cjs/schema/blocks.js +10 -11
- package/build/cjs/schema/common.js +1 -2
- package/build/cjs/schema/headers.d.ts +1 -1
- package/build/cjs/schema/headers.js +1 -2
- package/build/cjs/schema/index.d.ts +2 -8
- package/build/cjs/schema/index.js +4 -5
- package/build/cjs/schema/utils.d.ts +1 -1
- package/build/cjs/schema/utils.js +1 -2
- package/build/cjs/utils/cn.js +1 -2
- package/build/cjs/utils/common.d.ts +19 -18
- package/build/cjs/utils/common.js +8 -9
- package/build/cjs/utils/date.js +1 -2
- package/build/cjs/utils/index.d.ts +1 -1
- package/build/cjs/utils/index.js +2 -3
- package/build/cjs/utils/svg.js +1 -2
- package/build/esm/blocks/Author/Author.d.ts +3 -2
- package/build/esm/blocks/Author/Author.js +13 -13
- package/build/esm/blocks/Author/schema.js +3 -4
- package/build/esm/blocks/Banner/Banner.d.ts +3 -2
- package/build/esm/blocks/Banner/Banner.js +15 -11
- package/build/esm/blocks/Banner/schema.js +3 -4
- package/build/esm/blocks/CTA/CTA.d.ts +3 -2
- package/build/esm/blocks/CTA/CTA.js +19 -19
- package/build/esm/blocks/CTA/schema.js +3 -4
- package/build/esm/blocks/ColoredText/ColoredText.d.ts +3 -2
- package/build/esm/blocks/ColoredText/ColoredText.js +12 -9
- package/build/esm/blocks/ColoredText/schema.js +3 -4
- package/build/esm/blocks/Feed/Feed.d.ts +3 -2
- package/build/esm/blocks/Feed/Feed.js +31 -31
- package/build/esm/blocks/Feed/reducer.d.ts +1 -1
- package/build/esm/blocks/Feed/reducer.js +1 -2
- package/build/esm/blocks/Feed/schema.js +2 -3
- package/build/esm/blocks/Form/Form.d.ts +3 -2
- package/build/esm/blocks/Form/Form.js +10 -10
- package/build/esm/blocks/Form/schema.js +3 -4
- package/build/esm/blocks/Header/Header.d.ts +3 -2
- package/build/esm/blocks/Header/Header.js +18 -18
- package/build/esm/blocks/Header/schema.d.ts +0 -3
- package/build/esm/blocks/Header/schema.js +3 -4
- package/build/esm/blocks/Layout/Layout.d.ts +3 -3
- package/build/esm/blocks/Layout/Layout.js +13 -12
- package/build/esm/blocks/Layout/schema.js +3 -4
- package/build/esm/blocks/Media/Media.d.ts +3 -2
- package/build/esm/blocks/Media/Media.js +15 -12
- package/build/esm/blocks/Media/schema.d.ts +0 -3
- package/build/esm/blocks/Media/schema.js +3 -4
- package/build/esm/blocks/Meta/Meta.d.ts +3 -2
- package/build/esm/blocks/Meta/Meta.js +23 -22
- package/build/esm/blocks/Meta/schema.js +3 -4
- package/build/esm/blocks/Suggest/Suggest.d.ts +3 -2
- package/build/esm/blocks/Suggest/Suggest.js +14 -15
- package/build/esm/blocks/Suggest/schema.js +3 -4
- package/build/esm/blocks/YFM/YFM.d.ts +3 -2
- package/build/esm/blocks/YFM/YFM.js +10 -10
- package/build/esm/blocks/YFM/schema.js +3 -4
- package/build/esm/blocks/constants.js +1 -2
- package/build/esm/components/FeedHeader/FeedHeader.d.ts +4 -3
- package/build/esm/components/FeedHeader/FeedHeader.js +13 -10
- package/build/esm/components/FeedHeader/components/Controls/Controls.d.ts +4 -4
- package/build/esm/components/FeedHeader/components/Controls/Controls.js +40 -30
- package/build/esm/components/FeedHeader/components/Controls/customRenders.d.ts +3 -2
- package/build/esm/components/FeedHeader/components/Controls/customRenders.js +8 -12
- package/build/esm/components/FeedHeader/components/CustomSelectOption/CustomSelectOption.d.ts +2 -2
- package/build/esm/components/FeedHeader/components/CustomSelectOption/CustomSelectOption.js +5 -4
- package/build/esm/components/FeedHeader/components/CustomSwitcher/CustomSwitcher.css +1 -1
- package/build/esm/components/FeedHeader/components/CustomSwitcher/CustomSwitcher.d.ts +3 -2
- package/build/esm/components/FeedHeader/components/CustomSwitcher/CustomSwitcher.js +17 -13
- package/build/esm/components/MetaWrapper/MetaWrapper.d.ts +1 -1
- package/build/esm/components/MetaWrapper/MetaWrapper.js +2 -3
- package/build/esm/components/Paginator/Paginator.d.ts +3 -2
- package/build/esm/components/Paginator/Paginator.js +29 -25
- package/build/esm/components/Paginator/components/NavigationButton.d.ts +3 -2
- package/build/esm/components/Paginator/components/NavigationButton.js +5 -6
- package/build/esm/components/Paginator/components/PaginatorItem.d.ts +3 -2
- package/build/esm/components/Paginator/components/PaginatorItem.js +11 -13
- package/build/esm/components/Paginator/types.d.ts +3 -3
- package/build/esm/components/Paginator/types.js +1 -2
- package/build/esm/components/Paginator/utils.d.ts +2 -2
- package/build/esm/components/Paginator/utils.js +1 -2
- package/build/esm/components/PostCard/PostCard.d.ts +3 -2
- package/build/esm/components/PostCard/PostCard.js +23 -16
- package/build/esm/components/PostInfo/PostInfo.d.ts +3 -2
- package/build/esm/components/PostInfo/PostInfo.js +15 -13
- package/build/esm/components/PostInfo/SuggestPostInfo.d.ts +3 -2
- package/build/esm/components/PostInfo/SuggestPostInfo.js +15 -12
- package/build/esm/components/PostInfo/components/Date.d.ts +3 -2
- package/build/esm/components/PostInfo/components/Date.js +8 -10
- package/build/esm/components/PostInfo/components/ReadingTime.d.ts +3 -2
- package/build/esm/components/PostInfo/components/ReadingTime.js +8 -6
- package/build/esm/components/PostInfo/components/Save.d.ts +3 -2
- package/build/esm/components/PostInfo/components/Save.js +16 -14
- package/build/esm/components/PostInfo/components/Sharing.d.ts +2 -1
- package/build/esm/components/PostInfo/components/Sharing.js +17 -17
- package/build/esm/components/Posts/Posts.d.ts +4 -4
- package/build/esm/components/Posts/Posts.js +26 -15
- package/build/esm/components/PostsEmpty/PostsEmpty.d.ts +2 -1
- package/build/esm/components/PostsEmpty/PostsEmpty.js +6 -5
- package/build/esm/components/PostsError/PostsError.d.ts +2 -1
- package/build/esm/components/PostsError/PostsError.js +9 -6
- package/build/esm/components/Prompt/Prompt.d.ts +2 -1
- package/build/esm/components/Prompt/Prompt.js +12 -10
- package/build/esm/components/PromptSignIn/PromptSignIn.d.ts +4 -4
- package/build/esm/components/PromptSignIn/PromptSignIn.js +5 -6
- package/build/esm/components/PromptSignIn/hooks/usePromptSignInProps.d.ts +2 -2
- package/build/esm/components/PromptSignIn/hooks/usePromptSignInProps.js +4 -5
- package/build/esm/components/Search/Search.d.ts +3 -2
- package/build/esm/components/Search/Search.js +17 -17
- package/build/esm/components/Wrapper/Wrapper.d.ts +3 -3
- package/build/esm/components/Wrapper/Wrapper.js +5 -6
- package/build/esm/constants.d.ts +2 -2
- package/build/esm/constants.js +2 -3
- package/build/esm/constructor/BlogConstructorProvider.d.ts +7 -7
- package/build/esm/constructor/BlogConstructorProvider.js +18 -20
- package/build/esm/constructor/blocksMap.d.ts +12 -12
- package/build/esm/constructor/blocksMap.js +14 -15
- package/build/esm/containers/BlogPage/BlogPage.d.ts +4 -4
- package/build/esm/containers/BlogPage/BlogPage.js +25 -22
- package/build/esm/containers/BlogPostPage/BlogPostPage.d.ts +4 -4
- package/build/esm/containers/BlogPostPage/BlogPostPage.js +30 -27
- package/build/esm/contexts/DeviceContext.d.ts +2 -2
- package/build/esm/contexts/DeviceContext.js +2 -3
- package/build/esm/contexts/FeedContext.d.ts +2 -2
- package/build/esm/contexts/FeedContext.js +2 -3
- package/build/esm/contexts/LikesContext.d.ts +2 -2
- package/build/esm/contexts/LikesContext.js +2 -3
- package/build/esm/contexts/LocaleContext.d.ts +2 -2
- package/build/esm/contexts/LocaleContext.js +2 -3
- package/build/esm/contexts/MobileContext.d.ts +1 -1
- package/build/esm/contexts/MobileContext.js +2 -3
- package/build/esm/contexts/PostPageContext.d.ts +2 -2
- package/build/esm/contexts/PostPageContext.js +2 -3
- package/build/esm/contexts/RouterContext.d.ts +2 -2
- package/build/esm/contexts/RouterContext.js +2 -3
- package/build/esm/contexts/SettingsContext.d.ts +1 -1
- package/build/esm/contexts/SettingsContext.js +2 -3
- package/build/esm/contexts/theme/ThemeContext.d.ts +2 -2
- package/build/esm/contexts/theme/ThemeContext.js +3 -4
- package/build/esm/contexts/theme/ThemeProvider.d.ts +4 -4
- package/build/esm/contexts/theme/ThemeProvider.js +7 -8
- package/build/esm/contexts/theme/ThemeValueContext.d.ts +1 -1
- package/build/esm/contexts/theme/ThemeValueContext.js +2 -3
- package/build/esm/contexts/theme/index.d.ts +6 -6
- package/build/esm/contexts/theme/index.js +6 -7
- package/build/esm/contexts/theme/useTheme.d.ts +1 -1
- package/build/esm/contexts/theme/useTheme.js +3 -4
- package/build/esm/contexts/theme/useThemeValue.d.ts +1 -1
- package/build/esm/contexts/theme/useThemeValue.js +3 -4
- package/build/esm/contexts/theme/withTheme.d.ts +2 -2
- package/build/esm/contexts/theme/withTheme.js +4 -6
- package/build/esm/contexts/theme/withThemeValue.d.ts +2 -2
- package/build/esm/contexts/theme/withThemeValue.js +4 -6
- package/build/esm/counters/metrika.js +1 -2
- package/build/esm/counters/utils.js +1 -2
- package/build/esm/hooks/useAriaAttributes.js +4 -5
- package/build/esm/hooks/useExtendedComponentMap.d.ts +17 -18
- package/build/esm/hooks/useExtendedComponentMap.js +3 -4
- package/build/esm/hooks/useHover.d.ts +1 -1
- package/build/esm/hooks/useHover.js +2 -3
- package/build/esm/hooks/useIsIPhone.js +4 -5
- package/build/esm/hooks/useLikes.d.ts +1 -1
- package/build/esm/hooks/useLikes.js +6 -7
- package/build/esm/hooks/useOpenCloseTimer.js +4 -5
- package/build/esm/i18n/index.d.ts +1 -5
- package/build/esm/i18n/index.js +1 -2
- package/build/esm/icons/Close.d.ts +2 -2
- package/build/esm/icons/Close.js +4 -4
- package/build/esm/icons/DropdownArrow.d.ts +2 -2
- package/build/esm/icons/DropdownArrow.js +4 -4
- package/build/esm/icons/Save.d.ts +2 -2
- package/build/esm/icons/Save.js +4 -4
- package/build/esm/icons/SaveFilled.d.ts +2 -2
- package/build/esm/icons/SaveFilled.js +4 -4
- package/build/esm/icons/SearchIcon.d.ts +2 -2
- package/build/esm/icons/SearchIcon.js +4 -4
- package/build/esm/icons/ShareArrowUp.d.ts +2 -2
- package/build/esm/icons/ShareArrowUp.js +4 -4
- package/build/esm/icons/Time.d.ts +2 -2
- package/build/esm/icons/Time.js +4 -4
- package/build/esm/index.d.ts +8 -8
- package/build/esm/index.js +8 -9
- package/build/esm/models/blocks.d.ts +4 -4
- package/build/esm/models/blocks.js +1 -2
- package/build/esm/models/common.d.ts +3 -3
- package/build/esm/models/common.js +1 -2
- package/build/esm/models/locale.js +1 -2
- package/build/esm/models/paddings.js +1 -2
- package/build/esm/schema/blocks.d.ts +10 -10
- package/build/esm/schema/blocks.js +10 -11
- package/build/esm/schema/common.js +1 -2
- package/build/esm/schema/headers.d.ts +1 -1
- package/build/esm/schema/headers.js +1 -2
- package/build/esm/schema/index.d.ts +2 -8
- package/build/esm/schema/index.js +4 -5
- package/build/esm/schema/utils.d.ts +1 -1
- package/build/esm/schema/utils.js +1 -2
- package/build/esm/utils/cn.js +1 -2
- package/build/esm/utils/common.d.ts +19 -18
- package/build/esm/utils/common.js +6 -7
- package/build/esm/utils/date.js +1 -2
- package/build/esm/utils/index.d.ts +1 -1
- package/build/esm/utils/index.js +1 -2
- package/build/esm/utils/svg.js +1 -2
- package/package.json +24 -37
- package/server/data/config.js +1 -1
- package/server/data/contentFilter.js +3 -5
- package/server/data/createReadableContent.js +1 -1
- package/server/data/sanitizeMeta.d.ts +5 -5
- package/server/data/sanitizeMeta.js +1 -1
- package/server/data/transformPageContent.js +3 -5
- package/server/data/transformPost.js +3 -13
- package/server/index.d.ts +4 -4
- package/server/models/blocks.d.ts +2 -2
- package/server/models/blocks.js +1 -1
- package/server/models/common.d.ts +2 -2
- package/server/models/common.js +5 -5
- package/server/models/locale.js +1 -1
- package/server/models/paddings.js +1 -1
- package/styles/storybook/common.scss +0 -7
- package/build/cjs/blocks/Author/Author.js.map +0 -1
- package/build/cjs/blocks/Author/schema.js.map +0 -1
- package/build/cjs/blocks/Banner/Banner.js.map +0 -1
- package/build/cjs/blocks/Banner/schema.js.map +0 -1
- package/build/cjs/blocks/CTA/CTA.js.map +0 -1
- package/build/cjs/blocks/CTA/schema.js.map +0 -1
- package/build/cjs/blocks/ColoredText/ColoredText.js.map +0 -1
- package/build/cjs/blocks/ColoredText/schema.js.map +0 -1
- package/build/cjs/blocks/Feed/Feed.js.map +0 -1
- package/build/cjs/blocks/Feed/reducer.js.map +0 -1
- package/build/cjs/blocks/Feed/schema.js.map +0 -1
- package/build/cjs/blocks/Form/Form.js.map +0 -1
- package/build/cjs/blocks/Form/schema.js.map +0 -1
- package/build/cjs/blocks/Header/Header.js.map +0 -1
- package/build/cjs/blocks/Header/schema.js.map +0 -1
- package/build/cjs/blocks/Layout/Layout.js.map +0 -1
- package/build/cjs/blocks/Layout/schema.js.map +0 -1
- package/build/cjs/blocks/Media/Media.js.map +0 -1
- package/build/cjs/blocks/Media/schema.js.map +0 -1
- package/build/cjs/blocks/Meta/Meta.js.map +0 -1
- package/build/cjs/blocks/Meta/schema.js.map +0 -1
- package/build/cjs/blocks/Suggest/Suggest.js.map +0 -1
- package/build/cjs/blocks/Suggest/schema.js.map +0 -1
- package/build/cjs/blocks/YFM/YFM.js.map +0 -1
- package/build/cjs/blocks/YFM/schema.js.map +0 -1
- package/build/cjs/blocks/constants.js.map +0 -1
- package/build/cjs/components/FeedHeader/FeedHeader.js.map +0 -1
- package/build/cjs/components/FeedHeader/components/Controls/Controls.js.map +0 -1
- package/build/cjs/components/FeedHeader/components/Controls/customRenders.js.map +0 -1
- package/build/cjs/components/FeedHeader/components/CustomSelectOption/CustomSelectOption.js.map +0 -1
- package/build/cjs/components/FeedHeader/components/CustomSwitcher/CustomSwitcher.js.map +0 -1
- package/build/cjs/components/MetaWrapper/MetaWrapper.js.map +0 -1
- package/build/cjs/components/Paginator/Paginator.js.map +0 -1
- package/build/cjs/components/Paginator/components/NavigationButton.js.map +0 -1
- package/build/cjs/components/Paginator/components/PaginatorItem.js.map +0 -1
- package/build/cjs/components/Paginator/types.js.map +0 -1
- package/build/cjs/components/Paginator/utils.js.map +0 -1
- package/build/cjs/components/PostCard/PostCard.js.map +0 -1
- package/build/cjs/components/PostInfo/PostInfo.js.map +0 -1
- package/build/cjs/components/PostInfo/SuggestPostInfo.js.map +0 -1
- package/build/cjs/components/PostInfo/components/Date.js.map +0 -1
- package/build/cjs/components/PostInfo/components/ReadingTime.js.map +0 -1
- package/build/cjs/components/PostInfo/components/Save.js.map +0 -1
- package/build/cjs/components/PostInfo/components/Sharing.js.map +0 -1
- package/build/cjs/components/Posts/Posts.js.map +0 -1
- package/build/cjs/components/PostsEmpty/PostsEmpty.js.map +0 -1
- package/build/cjs/components/PostsError/PostsError.js.map +0 -1
- package/build/cjs/components/Prompt/Prompt.js.map +0 -1
- package/build/cjs/components/PromptSignIn/PromptSignIn.js.map +0 -1
- package/build/cjs/components/PromptSignIn/hooks/usePromptSignInProps.js.map +0 -1
- package/build/cjs/components/Search/Search.js.map +0 -1
- package/build/cjs/components/Wrapper/Wrapper.js.map +0 -1
- package/build/cjs/constants.js.map +0 -1
- package/build/cjs/constructor/BlogConstructorProvider.js.map +0 -1
- package/build/cjs/constructor/blocksMap.js.map +0 -1
- package/build/cjs/containers/BlogPage/BlogPage.js.map +0 -1
- package/build/cjs/containers/BlogPostPage/BlogPostPage.js.map +0 -1
- package/build/cjs/contexts/DeviceContext.js.map +0 -1
- package/build/cjs/contexts/FeedContext.js.map +0 -1
- package/build/cjs/contexts/LikesContext.js.map +0 -1
- package/build/cjs/contexts/LocaleContext.js.map +0 -1
- package/build/cjs/contexts/MobileContext.js.map +0 -1
- package/build/cjs/contexts/PostPageContext.js.map +0 -1
- package/build/cjs/contexts/RouterContext.js.map +0 -1
- package/build/cjs/contexts/SettingsContext.js.map +0 -1
- package/build/cjs/contexts/theme/ThemeContext.js.map +0 -1
- package/build/cjs/contexts/theme/ThemeProvider.js.map +0 -1
- package/build/cjs/contexts/theme/ThemeValueContext.js.map +0 -1
- package/build/cjs/contexts/theme/index.js.map +0 -1
- package/build/cjs/contexts/theme/useTheme.js.map +0 -1
- package/build/cjs/contexts/theme/useThemeValue.js.map +0 -1
- package/build/cjs/contexts/theme/withTheme.js.map +0 -1
- package/build/cjs/contexts/theme/withThemeValue.js.map +0 -1
- package/build/cjs/counters/metrika.js.map +0 -1
- package/build/cjs/counters/utils.js.map +0 -1
- package/build/cjs/hooks/useAriaAttributes.js.map +0 -1
- package/build/cjs/hooks/useExtendedComponentMap.js.map +0 -1
- package/build/cjs/hooks/useHover.js.map +0 -1
- package/build/cjs/hooks/useIsIPhone.js.map +0 -1
- package/build/cjs/hooks/useLikes.js.map +0 -1
- package/build/cjs/hooks/useOpenCloseTimer.js.map +0 -1
- package/build/cjs/i18n/index.js.map +0 -1
- package/build/cjs/icons/Close.js.map +0 -1
- package/build/cjs/icons/DropdownArrow.js.map +0 -1
- package/build/cjs/icons/Save.js.map +0 -1
- package/build/cjs/icons/SaveFilled.js.map +0 -1
- package/build/cjs/icons/SearchIcon.js.map +0 -1
- package/build/cjs/icons/ShareArrowUp.js.map +0 -1
- package/build/cjs/icons/Time.js.map +0 -1
- package/build/cjs/index.js.map +0 -1
- package/build/cjs/models/blocks.js.map +0 -1
- package/build/cjs/models/common.js.map +0 -1
- package/build/cjs/models/locale.js.map +0 -1
- package/build/cjs/models/paddings.js.map +0 -1
- package/build/cjs/package.json +0 -1
- package/build/cjs/schema/blocks.js.map +0 -1
- package/build/cjs/schema/common.js.map +0 -1
- package/build/cjs/schema/headers.js.map +0 -1
- package/build/cjs/schema/index.js.map +0 -1
- package/build/cjs/schema/utils.js.map +0 -1
- package/build/cjs/utils/cn.js.map +0 -1
- package/build/cjs/utils/common.js.map +0 -1
- package/build/cjs/utils/date.js.map +0 -1
- package/build/cjs/utils/index.js.map +0 -1
- package/build/cjs/utils/svg.js.map +0 -1
- package/build/esm/blocks/Author/Author.js.map +0 -1
- package/build/esm/blocks/Author/schema.js.map +0 -1
- package/build/esm/blocks/Banner/Banner.js.map +0 -1
- package/build/esm/blocks/Banner/schema.js.map +0 -1
- package/build/esm/blocks/CTA/CTA.js.map +0 -1
- package/build/esm/blocks/CTA/schema.js.map +0 -1
- package/build/esm/blocks/ColoredText/ColoredText.js.map +0 -1
- package/build/esm/blocks/ColoredText/schema.js.map +0 -1
- package/build/esm/blocks/Feed/Feed.js.map +0 -1
- package/build/esm/blocks/Feed/reducer.js.map +0 -1
- package/build/esm/blocks/Feed/schema.js.map +0 -1
- package/build/esm/blocks/Form/Form.js.map +0 -1
- package/build/esm/blocks/Form/schema.js.map +0 -1
- package/build/esm/blocks/Header/Header.js.map +0 -1
- package/build/esm/blocks/Header/schema.js.map +0 -1
- package/build/esm/blocks/Layout/Layout.js.map +0 -1
- package/build/esm/blocks/Layout/schema.js.map +0 -1
- package/build/esm/blocks/Media/Media.js.map +0 -1
- package/build/esm/blocks/Media/schema.js.map +0 -1
- package/build/esm/blocks/Meta/Meta.js.map +0 -1
- package/build/esm/blocks/Meta/schema.js.map +0 -1
- package/build/esm/blocks/Suggest/Suggest.js.map +0 -1
- package/build/esm/blocks/Suggest/schema.js.map +0 -1
- package/build/esm/blocks/YFM/YFM.js.map +0 -1
- package/build/esm/blocks/YFM/schema.js.map +0 -1
- package/build/esm/blocks/constants.js.map +0 -1
- package/build/esm/components/FeedHeader/FeedHeader.js.map +0 -1
- package/build/esm/components/FeedHeader/components/Controls/Controls.js.map +0 -1
- package/build/esm/components/FeedHeader/components/Controls/customRenders.js.map +0 -1
- package/build/esm/components/FeedHeader/components/CustomSelectOption/CustomSelectOption.js.map +0 -1
- package/build/esm/components/FeedHeader/components/CustomSwitcher/CustomSwitcher.js.map +0 -1
- package/build/esm/components/MetaWrapper/MetaWrapper.js.map +0 -1
- package/build/esm/components/Paginator/Paginator.js.map +0 -1
- package/build/esm/components/Paginator/components/NavigationButton.js.map +0 -1
- package/build/esm/components/Paginator/components/PaginatorItem.js.map +0 -1
- package/build/esm/components/Paginator/types.js.map +0 -1
- package/build/esm/components/Paginator/utils.js.map +0 -1
- package/build/esm/components/PostCard/PostCard.js.map +0 -1
- package/build/esm/components/PostInfo/PostInfo.js.map +0 -1
- package/build/esm/components/PostInfo/SuggestPostInfo.js.map +0 -1
- package/build/esm/components/PostInfo/components/Date.js.map +0 -1
- package/build/esm/components/PostInfo/components/ReadingTime.js.map +0 -1
- package/build/esm/components/PostInfo/components/Save.js.map +0 -1
- package/build/esm/components/PostInfo/components/Sharing.js.map +0 -1
- package/build/esm/components/Posts/Posts.js.map +0 -1
- package/build/esm/components/PostsEmpty/PostsEmpty.js.map +0 -1
- package/build/esm/components/PostsError/PostsError.js.map +0 -1
- package/build/esm/components/Prompt/Prompt.js.map +0 -1
- package/build/esm/components/PromptSignIn/PromptSignIn.js.map +0 -1
- package/build/esm/components/PromptSignIn/hooks/usePromptSignInProps.js.map +0 -1
- package/build/esm/components/Search/Search.js.map +0 -1
- package/build/esm/components/Wrapper/Wrapper.js.map +0 -1
- package/build/esm/constants.js.map +0 -1
- package/build/esm/constructor/BlogConstructorProvider.js.map +0 -1
- package/build/esm/constructor/blocksMap.js.map +0 -1
- package/build/esm/containers/BlogPage/BlogPage.js.map +0 -1
- package/build/esm/containers/BlogPostPage/BlogPostPage.js.map +0 -1
- package/build/esm/contexts/DeviceContext.js.map +0 -1
- package/build/esm/contexts/FeedContext.js.map +0 -1
- package/build/esm/contexts/LikesContext.js.map +0 -1
- package/build/esm/contexts/LocaleContext.js.map +0 -1
- package/build/esm/contexts/MobileContext.js.map +0 -1
- package/build/esm/contexts/PostPageContext.js.map +0 -1
- package/build/esm/contexts/RouterContext.js.map +0 -1
- package/build/esm/contexts/SettingsContext.js.map +0 -1
- package/build/esm/contexts/theme/ThemeContext.js.map +0 -1
- package/build/esm/contexts/theme/ThemeProvider.js.map +0 -1
- package/build/esm/contexts/theme/ThemeValueContext.js.map +0 -1
- package/build/esm/contexts/theme/index.js.map +0 -1
- package/build/esm/contexts/theme/useTheme.js.map +0 -1
- package/build/esm/contexts/theme/useThemeValue.js.map +0 -1
- package/build/esm/contexts/theme/withTheme.js.map +0 -1
- package/build/esm/contexts/theme/withThemeValue.js.map +0 -1
- package/build/esm/counters/metrika.js.map +0 -1
- package/build/esm/counters/utils.js.map +0 -1
- package/build/esm/hooks/useAriaAttributes.js.map +0 -1
- package/build/esm/hooks/useExtendedComponentMap.js.map +0 -1
- package/build/esm/hooks/useHover.js.map +0 -1
- package/build/esm/hooks/useIsIPhone.js.map +0 -1
- package/build/esm/hooks/useLikes.js.map +0 -1
- package/build/esm/hooks/useOpenCloseTimer.js.map +0 -1
- package/build/esm/i18n/index.js.map +0 -1
- package/build/esm/icons/Close.js.map +0 -1
- package/build/esm/icons/DropdownArrow.js.map +0 -1
- package/build/esm/icons/Save.js.map +0 -1
- package/build/esm/icons/SaveFilled.js.map +0 -1
- package/build/esm/icons/SearchIcon.js.map +0 -1
- package/build/esm/icons/ShareArrowUp.js.map +0 -1
- package/build/esm/icons/Time.js.map +0 -1
- package/build/esm/index.js.map +0 -1
- package/build/esm/models/blocks.js.map +0 -1
- package/build/esm/models/common.js.map +0 -1
- package/build/esm/models/locale.js.map +0 -1
- package/build/esm/models/paddings.js.map +0 -1
- package/build/esm/package.json +0 -1
- package/build/esm/schema/blocks.js.map +0 -1
- package/build/esm/schema/common.js.map +0 -1
- package/build/esm/schema/headers.js.map +0 -1
- package/build/esm/schema/index.js.map +0 -1
- package/build/esm/schema/utils.js.map +0 -1
- package/build/esm/utils/cn.js.map +0 -1
- package/build/esm/utils/common.js.map +0 -1
- package/build/esm/utils/date.js.map +0 -1
- package/build/esm/utils/index.js.map +0 -1
- package/build/esm/utils/svg.js.map +0 -1
@@ -1,8 +1,9 @@
|
|
1
|
-
import
|
1
|
+
import React from 'react';
|
2
|
+
import { PostCardSize, QAProps } from '../../../models/common';
|
2
3
|
type DateProps = QAProps & {
|
3
4
|
date: string | number;
|
4
5
|
size?: PostCardSize;
|
5
6
|
id?: string;
|
6
7
|
};
|
7
|
-
export declare const Date: ({ date, size, id, qa }: DateProps) =>
|
8
|
+
export declare const Date: ({ date, size, id, qa }: DateProps) => React.JSX.Element;
|
8
9
|
export {};
|
@@ -2,16 +2,14 @@
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
3
3
|
exports.Date = void 0;
|
4
4
|
const tslib_1 = require("tslib");
|
5
|
-
const
|
6
|
-
const
|
7
|
-
const
|
8
|
-
const
|
9
|
-
const
|
10
|
-
const date_1 = require("../../../utils/date.js");
|
5
|
+
const react_1 = tslib_1.__importStar(require("react"));
|
6
|
+
const LocaleContext_1 = require("../../../contexts/LocaleContext");
|
7
|
+
const common_1 = require("../../../models/common");
|
8
|
+
const cn_1 = require("../../../utils/cn");
|
9
|
+
const date_1 = require("../../../utils/date");
|
11
10
|
const b = (0, cn_1.block)('post-info');
|
12
11
|
const Date = ({ date, size = common_1.PostCardSize.SMALL, id, qa }) => {
|
13
|
-
const { locale } =
|
14
|
-
return (
|
12
|
+
const { locale } = (0, react_1.useContext)(LocaleContext_1.LocaleContext);
|
13
|
+
return (react_1.default.createElement("div", { className: b('item', { size }), id: id, "data-qa": qa }, (0, date_1.format)(date, 'longDate', locale === null || locale === void 0 ? void 0 : locale.code)));
|
15
14
|
};
|
16
|
-
exports.Date = Date;
|
17
|
-
//# sourceMappingURL=Date.js.map
|
15
|
+
exports.Date = Date;
|
@@ -1,8 +1,9 @@
|
|
1
|
-
import
|
1
|
+
import React from 'react';
|
2
|
+
import { QAProps } from '../../../models/common';
|
2
3
|
type ReadingTimeProps = QAProps & {
|
3
4
|
readingTime: number;
|
4
5
|
size?: 's' | 'm';
|
5
6
|
id?: string;
|
6
7
|
};
|
7
|
-
export declare const ReadingTime: ({ readingTime, size, id, qa }: ReadingTimeProps) =>
|
8
|
+
export declare const ReadingTime: ({ readingTime, size, id, qa }: ReadingTimeProps) => React.JSX.Element;
|
8
9
|
export {};
|
@@ -1,13 +1,16 @@
|
|
1
1
|
"use strict";
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
3
3
|
exports.ReadingTime = void 0;
|
4
|
-
const
|
4
|
+
const tslib_1 = require("tslib");
|
5
|
+
const react_1 = tslib_1.__importDefault(require("react"));
|
5
6
|
const uikit_1 = require("@gravity-ui/uikit");
|
6
|
-
const i18n_1 = require("../../../i18n
|
7
|
-
const Time_1 = require("../../../icons/Time
|
8
|
-
const cn_1 = require("../../../utils/cn
|
7
|
+
const i18n_1 = require("../../../i18n");
|
8
|
+
const Time_1 = require("../../../icons/Time");
|
9
|
+
const cn_1 = require("../../../utils/cn");
|
9
10
|
const b = (0, cn_1.block)('post-info');
|
10
11
|
const ICON_SIZE = 16;
|
11
|
-
const ReadingTime = ({ readingTime, size = 's', id, qa }) => (
|
12
|
-
|
13
|
-
|
12
|
+
const ReadingTime = ({ readingTime, size = 's', id, qa }) => (react_1.default.createElement("div", { className: b('item', { size }), id: id, "data-qa": qa },
|
13
|
+
react_1.default.createElement("span", { className: b('icon') },
|
14
|
+
react_1.default.createElement(uikit_1.Icon, { data: Time_1.Time, size: ICON_SIZE, className: b('icon-color') })),
|
15
|
+
(0, i18n_1.i18n)(i18n_1.Keyset.ContextReadingTime, { count: readingTime })));
|
16
|
+
exports.ReadingTime = ReadingTime;
|
@@ -1,5 +1,6 @@
|
|
1
|
+
import React from 'react';
|
1
2
|
import { AnalyticsEventsProp } from '@gravity-ui/page-constructor';
|
2
|
-
import { QAProps } from
|
3
|
+
import { QAProps } from '../../../models/common';
|
3
4
|
type SaveProps = QAProps & {
|
4
5
|
title: string | number;
|
5
6
|
postId: number | string;
|
@@ -21,5 +22,5 @@ type SaveProps = QAProps & {
|
|
21
22
|
*
|
22
23
|
* @returns jsx
|
23
24
|
*/
|
24
|
-
export declare const Save: ({ title, postId, hasUserLike, handleUserLike, size, theme, qa, analyticsEvents, }: SaveProps) =>
|
25
|
+
export declare const Save: ({ title, postId, hasUserLike, handleUserLike, size, theme, qa, analyticsEvents, }: SaveProps) => React.JSX.Element;
|
25
26
|
export {};
|
@@ -2,17 +2,16 @@
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
3
3
|
exports.Save = void 0;
|
4
4
|
const tslib_1 = require("tslib");
|
5
|
-
const
|
6
|
-
const React = tslib_1.__importStar(require("react"));
|
5
|
+
const react_1 = tslib_1.__importStar(require("react"));
|
7
6
|
const page_constructor_1 = require("@gravity-ui/page-constructor");
|
8
7
|
const uikit_1 = require("@gravity-ui/uikit");
|
9
|
-
const LikesContext_1 = require("../../../contexts/LikesContext
|
10
|
-
const Save_1 = require("../../../icons/Save
|
11
|
-
const SaveFilled_1 = require("../../../icons/SaveFilled
|
12
|
-
const common_1 = require("../../../models/common
|
13
|
-
const cn_1 = require("../../../utils/cn
|
14
|
-
const common_2 = require("../../../utils/common
|
15
|
-
const i18n_1 = require("../../../i18n
|
8
|
+
const LikesContext_1 = require("../../../contexts/LikesContext");
|
9
|
+
const Save_1 = require("../../../icons/Save");
|
10
|
+
const SaveFilled_1 = require("../../../icons/SaveFilled");
|
11
|
+
const common_1 = require("../../../models/common");
|
12
|
+
const cn_1 = require("../../../utils/cn");
|
13
|
+
const common_2 = require("../../../utils/common");
|
14
|
+
const i18n_1 = require("../../../i18n");
|
16
15
|
const ICON_SIZE = 16;
|
17
16
|
const b = (0, cn_1.block)('post-info');
|
18
17
|
/**
|
@@ -28,12 +27,12 @@ const b = (0, cn_1.block)('post-info');
|
|
28
27
|
* @returns jsx
|
29
28
|
*/
|
30
29
|
const Save = ({ title, postId, hasUserLike, handleUserLike, size, theme, qa, analyticsEvents, }) => {
|
31
|
-
const { toggleLike, isSignedInUser, requireSignIn } =
|
30
|
+
const { toggleLike, isSignedInUser, requireSignIn } = (0, react_1.useContext)(LikesContext_1.LikesContext);
|
32
31
|
const handleAnalytics = (0, page_constructor_1.useAnalytics)(common_1.DefaultEventNames.SaveButton);
|
33
32
|
const isLikeable = Boolean(toggleLike);
|
34
33
|
const titleElementId = (0, uikit_1.useUniqId)();
|
35
34
|
const isNumericTitle = typeof title === 'number';
|
36
|
-
return (
|
35
|
+
return (react_1.default.createElement("button", { className: b('item', { size, save: true }), onClick: (event) => {
|
37
36
|
// both preventDefault and stopImmediatePropagation required to work properly
|
38
37
|
// https://stackoverflow.com/questions/24415631/reactjs-syntheticevent-stoppropagation-only-works-with-react-events
|
39
38
|
event.preventDefault();
|
@@ -49,7 +48,10 @@ const Save = ({ title, postId, hasUserLike, handleUserLike, size, theme, qa, ana
|
|
49
48
|
(0, common_2.postLikeStatus)(postId, Boolean(hasUserLike));
|
50
49
|
handleUserLike();
|
51
50
|
handleAnalytics(analyticsEvents);
|
52
|
-
}, "data-qa": qa, "aria-pressed": hasUserLike, "aria-label": isNumericTitle ? (0, i18n_1.i18n)(i18n_1.Keyset.Save) : undefined, "aria-describedby": isNumericTitle ? titleElementId : undefined
|
51
|
+
}, "data-qa": qa, "aria-pressed": hasUserLike, "aria-label": isNumericTitle ? (0, i18n_1.i18n)(i18n_1.Keyset.Save) : undefined, "aria-describedby": isNumericTitle ? titleElementId : undefined },
|
52
|
+
react_1.default.createElement("div", { className: b('content', { cursor: isLikeable, theme }) },
|
53
|
+
react_1.default.createElement("span", { className: b('icon') },
|
54
|
+
react_1.default.createElement(uikit_1.Icon, { data: hasUserLike ? SaveFilled_1.SaveFilled : Save_1.Save, size: ICON_SIZE, className: b({ filled: Boolean(hasUserLike) }) })),
|
55
|
+
react_1.default.createElement("span", { id: titleElementId, className: b('title', { cursor: isLikeable }) }, title))));
|
53
56
|
};
|
54
|
-
exports.Save = Save;
|
55
|
-
//# sourceMappingURL=Save.js.map
|
57
|
+
exports.Save = Save;
|
@@ -1,7 +1,8 @@
|
|
1
|
+
import React from 'react';
|
1
2
|
import { AnalyticsEventsProp } from '@gravity-ui/page-constructor';
|
2
3
|
type SharingProps = {
|
3
4
|
theme?: 'light' | 'dark';
|
4
5
|
analyticsEvents?: AnalyticsEventsProp;
|
5
6
|
};
|
6
|
-
export declare const Sharing: ({ theme, analyticsEvents }: SharingProps) =>
|
7
|
+
export declare const Sharing: ({ theme, analyticsEvents }: SharingProps) => React.JSX.Element;
|
7
8
|
export {};
|
@@ -2,28 +2,28 @@
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
3
3
|
exports.Sharing = void 0;
|
4
4
|
const tslib_1 = require("tslib");
|
5
|
-
const
|
6
|
-
const React = tslib_1.__importStar(require("react"));
|
5
|
+
const react_1 = tslib_1.__importStar(require("react"));
|
7
6
|
const components_1 = require("@gravity-ui/components");
|
8
7
|
const page_constructor_1 = require("@gravity-ui/page-constructor");
|
9
|
-
const MobileContext_1 = require("../../../contexts/MobileContext
|
10
|
-
const PostPageContext_1 = require("../../../contexts/PostPageContext
|
11
|
-
const RouterContext_1 = require("../../../contexts/RouterContext
|
12
|
-
const i18n_1 = require("../../../i18n
|
13
|
-
const ShareArrowUp_1 = require("../../../icons/ShareArrowUp
|
14
|
-
const common_1 = require("../../../models/common
|
15
|
-
const cn_1 = require("../../../utils/cn
|
16
|
-
const common_2 = require("../../../utils/common
|
8
|
+
const MobileContext_1 = require("../../../contexts/MobileContext");
|
9
|
+
const PostPageContext_1 = require("../../../contexts/PostPageContext");
|
10
|
+
const RouterContext_1 = require("../../../contexts/RouterContext");
|
11
|
+
const i18n_1 = require("../../../i18n");
|
12
|
+
const ShareArrowUp_1 = require("../../../icons/ShareArrowUp");
|
13
|
+
const common_1 = require("../../../models/common");
|
14
|
+
const cn_1 = require("../../../utils/cn");
|
15
|
+
const common_2 = require("../../../utils/common");
|
17
16
|
const b = (0, cn_1.block)('post-info');
|
18
17
|
const Sharing = ({ theme, analyticsEvents }) => {
|
19
|
-
const router =
|
20
|
-
const isMobile =
|
21
|
-
const { shareOptions } =
|
18
|
+
const router = (0, react_1.useContext)(RouterContext_1.RouterContext);
|
19
|
+
const isMobile = (0, react_1.useContext)(MobileContext_1.MobileContext);
|
20
|
+
const { shareOptions } = (0, react_1.useContext)(PostPageContext_1.PostPageContext);
|
22
21
|
const handleAnalyticsGlobal = (0, page_constructor_1.useAnalytics)(common_1.DefaultEventNames.ShareButton);
|
23
|
-
const handleAnalytics =
|
22
|
+
const handleAnalytics = (0, react_1.useCallback)(() => {
|
24
23
|
handleAnalyticsGlobal(analyticsEvents);
|
25
24
|
}, [analyticsEvents, handleAnalyticsGlobal]);
|
26
|
-
return (
|
25
|
+
return (react_1.default.createElement("div", { className: b('item') },
|
26
|
+
react_1.default.createElement("div", { className: b('icon') },
|
27
|
+
react_1.default.createElement(components_1.SharePopover, { url: (0, common_2.getAbsolutePath)(router), className: b('share'), iconClass: b('share-icon'), switcherClassName: b('switcher', { theme }), tooltipClassName: b('popup'), useWebShareApi: isMobile, direction: components_1.ShareLayoutDirection.Column, buttonTitle: (0, i18n_1.i18n)(i18n_1.Keyset.ActionShare), customIcon: ShareArrowUp_1.ShareArrowUp, placement: "bottom", openByHover: false, shareOptions: shareOptions, onClick: handleAnalytics }))));
|
27
28
|
};
|
28
|
-
exports.Sharing = Sharing;
|
29
|
-
//# sourceMappingURL=Sharing.js.map
|
29
|
+
exports.Sharing = Sharing;
|
@@ -1,5 +1,5 @@
|
|
1
|
-
import
|
2
|
-
import { PostData, Query } from
|
1
|
+
import React, { MouseEvent } from 'react';
|
2
|
+
import { PostData, Query } from '../../models/common';
|
3
3
|
type PostCardProps = {
|
4
4
|
containerId: string;
|
5
5
|
currentPage: number;
|
@@ -8,12 +8,12 @@ type PostCardProps = {
|
|
8
8
|
postCountOnPage: number;
|
9
9
|
perPageInQuery: number;
|
10
10
|
isFetching: boolean;
|
11
|
-
handleShowMore: (value?:
|
11
|
+
handleShowMore: (value?: MouseEvent<HTMLButtonElement | HTMLAnchorElement>) => Promise<void> | void;
|
12
12
|
handlePageChange: (value: number) => Promise<void> | void;
|
13
13
|
postsOnPage?: PostData[];
|
14
14
|
pinnedPostOnPage?: PostData;
|
15
15
|
pageCountForShowSupportButtons?: number;
|
16
16
|
queryParams: Query;
|
17
17
|
};
|
18
|
-
export declare const Posts: ({ containerId, pinnedPostOnPage, currentPage, postsOnPage, isShowMoreVisible, errorShowMore, postCountOnPage, perPageInQuery, isFetching, handleShowMore, handlePageChange, pageCountForShowSupportButtons, queryParams, }: PostCardProps) =>
|
18
|
+
export declare const Posts: ({ containerId, pinnedPostOnPage, currentPage, postsOnPage, isShowMoreVisible, errorShowMore, postCountOnPage, perPageInQuery, isFetching, handleShowMore, handlePageChange, pageCountForShowSupportButtons, queryParams, }: PostCardProps) => React.JSX.Element;
|
19
19
|
export {};
|
@@ -1,22 +1,34 @@
|
|
1
1
|
"use strict";
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
3
3
|
exports.Posts = void 0;
|
4
|
-
const
|
4
|
+
const tslib_1 = require("tslib");
|
5
|
+
const react_1 = tslib_1.__importDefault(require("react"));
|
5
6
|
const page_constructor_1 = require("@gravity-ui/page-constructor");
|
6
7
|
const uikit_1 = require("@gravity-ui/uikit");
|
7
|
-
const i18n_1 = require("../../i18n
|
8
|
-
const common_1 = require("../../models/common
|
9
|
-
const cn_1 = require("../../utils/cn
|
10
|
-
const Paginator_1 = require("../Paginator/Paginator
|
11
|
-
const PostCard_1 = require("../PostCard/PostCard
|
12
|
-
const PostsEmpty_1 = require("../PostsEmpty/PostsEmpty
|
8
|
+
const i18n_1 = require("../../i18n");
|
9
|
+
const common_1 = require("../../models/common");
|
10
|
+
const cn_1 = require("../../utils/cn");
|
11
|
+
const Paginator_1 = require("../Paginator/Paginator");
|
12
|
+
const PostCard_1 = require("../PostCard/PostCard");
|
13
|
+
const PostsEmpty_1 = require("../PostsEmpty/PostsEmpty");
|
13
14
|
const b = (0, cn_1.block)('posts');
|
14
|
-
const Posts = ({ containerId, pinnedPostOnPage, currentPage, postsOnPage, isShowMoreVisible, errorShowMore, postCountOnPage, perPageInQuery, isFetching, handleShowMore, handlePageChange, pageCountForShowSupportButtons, queryParams, }) => (
|
15
|
-
|
16
|
-
|
17
|
-
|
18
|
-
|
19
|
-
|
20
|
-
|
21
|
-
|
22
|
-
|
15
|
+
const Posts = ({ containerId, pinnedPostOnPage, currentPage, postsOnPage, isShowMoreVisible, errorShowMore, postCountOnPage, perPageInQuery, isFetching, handleShowMore, handlePageChange, pageCountForShowSupportButtons, queryParams, }) => (react_1.default.createElement("div", { className: b() },
|
16
|
+
isFetching && react_1.default.createElement("div", { className: b('loaderContainer') }),
|
17
|
+
react_1.default.createElement("div", { id: containerId, className: b('cards-container', { isLoading: isFetching }) },
|
18
|
+
pinnedPostOnPage && currentPage === 1 && (react_1.default.createElement("div", { className: b('pinned-container') },
|
19
|
+
react_1.default.createElement(PostCard_1.PostCard, { post: pinnedPostOnPage, size: common_1.PostCardSize.MEDIUM, fullWidth: true, showTag: true, titleHeadingLevel: common_1.PostCardTitleHeadingLevel.H2 }))),
|
20
|
+
(postsOnPage === null || postsOnPage === void 0 ? void 0 : postsOnPage.length) ? (react_1.default.createElement(page_constructor_1.CardLayoutBlock, { title: '', colSizes: {
|
21
|
+
all: 12,
|
22
|
+
lg: 4,
|
23
|
+
md: 6,
|
24
|
+
} }, postsOnPage === null || postsOnPage === void 0 ? void 0 : postsOnPage.map((post) => (react_1.default.createElement(PostCard_1.PostCard, { key: post.id, post: post, showTag: true, titleHeadingLevel: pinnedPostOnPage
|
25
|
+
? common_1.PostCardTitleHeadingLevel.H3
|
26
|
+
: common_1.PostCardTitleHeadingLevel.H2 }))))) : (react_1.default.createElement(PostsEmpty_1.PostsEmpty, null))),
|
27
|
+
react_1.default.createElement("div", { className: b('pagination') },
|
28
|
+
Boolean(isShowMoreVisible && (postsOnPage === null || postsOnPage === void 0 ? void 0 : postsOnPage.length)) && (react_1.default.createElement(uikit_1.Button, { view: "outlined", size: "xl", className: b('more-button'), onClick: handleShowMore }, (0, i18n_1.i18n)(i18n_1.Keyset.ActionLoadMore))),
|
29
|
+
errorShowMore && (react_1.default.createElement("div", { className: b('error-show-more') },
|
30
|
+
react_1.default.createElement("div", null, (0, i18n_1.i18n)(i18n_1.Keyset.ErrorTitle)),
|
31
|
+
react_1.default.createElement("div", null, (0, i18n_1.i18n)(i18n_1.Keyset.PostLoadError)))),
|
32
|
+
Boolean(currentPage && postCountOnPage) && (react_1.default.createElement("div", { className: b('paginator') },
|
33
|
+
react_1.default.createElement(Paginator_1.Paginator, { onPageChange: handlePageChange, page: currentPage, totalItems: postCountOnPage, itemsPerPage: perPageInQuery, maxPages: Infinity, pageCountForShowSupportButtons: pageCountForShowSupportButtons, queryParams: queryParams }))))));
|
34
|
+
exports.Posts = Posts;
|
@@ -1 +1,2 @@
|
|
1
|
-
|
1
|
+
import React from 'react';
|
2
|
+
export declare const PostsEmpty: () => React.JSX.Element;
|
@@ -1,10 +1,12 @@
|
|
1
1
|
"use strict";
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
3
3
|
exports.PostsEmpty = void 0;
|
4
|
-
const
|
5
|
-
const
|
6
|
-
const
|
4
|
+
const tslib_1 = require("tslib");
|
5
|
+
const react_1 = tslib_1.__importDefault(require("react"));
|
6
|
+
const i18n_1 = require("../../i18n");
|
7
|
+
const cn_1 = require("../../utils/cn");
|
7
8
|
const b = (0, cn_1.block)('posts-empty');
|
8
|
-
const PostsEmpty = () => (
|
9
|
-
|
10
|
-
|
9
|
+
const PostsEmpty = () => (react_1.default.createElement("div", { className: b('container') },
|
10
|
+
react_1.default.createElement("div", { className: b('title') }, (0, i18n_1.i18n)(i18n_1.Keyset.TitleEmptyContainer)),
|
11
|
+
react_1.default.createElement("div", { className: b('subtitle') }, (0, i18n_1.i18n)(i18n_1.Keyset.ContextEmptyContainer))));
|
12
|
+
exports.PostsEmpty = PostsEmpty;
|
@@ -1,5 +1,6 @@
|
|
1
|
+
import React from 'react';
|
1
2
|
type PostsErrorContainerProps = {
|
2
3
|
onButtonClick?: () => void | Promise<void>;
|
3
4
|
};
|
4
|
-
export declare const PostsError: ({ onButtonClick }: PostsErrorContainerProps) =>
|
5
|
+
export declare const PostsError: ({ onButtonClick }: PostsErrorContainerProps) => React.JSX.Element;
|
5
6
|
export {};
|
@@ -1,14 +1,18 @@
|
|
1
1
|
"use strict";
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
3
3
|
exports.PostsError = void 0;
|
4
|
-
const
|
4
|
+
const tslib_1 = require("tslib");
|
5
|
+
const react_1 = tslib_1.__importDefault(require("react"));
|
5
6
|
const uikit_1 = require("@gravity-ui/uikit");
|
6
|
-
const i18n_1 = require("../../i18n
|
7
|
-
const cn_1 = require("../../utils/cn
|
7
|
+
const i18n_1 = require("../../i18n");
|
8
|
+
const cn_1 = require("../../utils/cn");
|
8
9
|
const b = (0, cn_1.block)('posts-error');
|
9
10
|
const PostsError = ({ onButtonClick }) => {
|
10
11
|
const handleClick = () => (onButtonClick ? onButtonClick() : window.location.reload());
|
11
|
-
return (
|
12
|
+
return (react_1.default.createElement("div", { className: b('container') },
|
13
|
+
react_1.default.createElement("div", { className: b('title') }, (0, i18n_1.i18n)(i18n_1.Keyset.ErrorTitle)),
|
14
|
+
react_1.default.createElement("div", { className: b('subtitle') }, (0, i18n_1.i18n)(i18n_1.Keyset.PostLoadError)),
|
15
|
+
react_1.default.createElement("div", { className: b('button') },
|
16
|
+
react_1.default.createElement(uikit_1.Button, { size: "xl", view: "outlined", onClick: handleClick }, (0, i18n_1.i18n)(i18n_1.Keyset.ActionTryAgain)))));
|
12
17
|
};
|
13
|
-
exports.PostsError = PostsError;
|
14
|
-
//# sourceMappingURL=PostsError.js.map
|
18
|
+
exports.PostsError = PostsError;
|
@@ -1,3 +1,4 @@
|
|
1
|
+
import React from 'react';
|
1
2
|
import { ButtonProps } from '@gravity-ui/uikit';
|
2
3
|
export interface PromptProps {
|
3
4
|
text: string;
|
@@ -14,4 +15,4 @@ export interface PromptProps {
|
|
14
15
|
* - `openTimestamp` (`Date.now()`) resets the visible duration
|
15
16
|
* @returns {JSX|null}
|
16
17
|
*/
|
17
|
-
export declare const Prompt: ({ text, actions, className, openTimestamp, openDuration, theme, }: PromptProps) =>
|
18
|
+
export declare const Prompt: ({ text, actions, className, openTimestamp, openDuration, theme, }: PromptProps) => React.JSX.Element;
|
@@ -2,11 +2,11 @@
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
3
3
|
exports.Prompt = void 0;
|
4
4
|
const tslib_1 = require("tslib");
|
5
|
-
const
|
5
|
+
const react_1 = tslib_1.__importDefault(require("react"));
|
6
6
|
const uikit_1 = require("@gravity-ui/uikit");
|
7
|
-
const useHover_1 = require("../../hooks/useHover
|
8
|
-
const useOpenCloseTimer_1 = require("../../hooks/useOpenCloseTimer
|
9
|
-
const cn_1 = require("../../utils/cn
|
7
|
+
const useHover_1 = require("../../hooks/useHover");
|
8
|
+
const useOpenCloseTimer_1 = require("../../hooks/useOpenCloseTimer");
|
9
|
+
const cn_1 = require("../../utils/cn");
|
10
10
|
const b = (0, cn_1.block)('prompt');
|
11
11
|
/**
|
12
12
|
* Popup that appears with text message and button(s) for given `actions`.
|
@@ -20,10 +20,12 @@ const Prompt = ({ text, actions, className, openTimestamp = 0, openDuration, the
|
|
20
20
|
const { open: isOpen } = (0, useOpenCloseTimer_1.useOpenCloseTimer)(openTimestamp, openDuration);
|
21
21
|
const open = isOpen || hovering;
|
22
22
|
const mounted = openTimestamp > 0;
|
23
|
-
return (
|
24
|
-
|
25
|
-
|
26
|
-
|
23
|
+
return (react_1.default.createElement("div", { className: b({ theme, open, close: !open, mounted }, className) },
|
24
|
+
react_1.default.createElement("div", { className: b('content'), ref: ref },
|
25
|
+
react_1.default.createElement("span", { className: b('text') }, text),
|
26
|
+
react_1.default.createElement("div", { className: b('actions') }, actions.map((_a, i) => {
|
27
|
+
var { view = 'action', className: btnClass } = _a, btnProps = tslib_1.__rest(_a, ["view", "className"]);
|
28
|
+
return (react_1.default.createElement(uikit_1.Button, Object.assign({ key: i, className: b('action', btnClass), view: view }, btnProps)));
|
29
|
+
})))));
|
27
30
|
};
|
28
|
-
exports.Prompt = Prompt;
|
29
|
-
//# sourceMappingURL=Prompt.js.map
|
31
|
+
exports.Prompt = Prompt;
|
@@ -1,10 +1,10 @@
|
|
1
|
-
import
|
2
|
-
import { PromptProps } from
|
1
|
+
import React, { SyntheticEvent } from 'react';
|
2
|
+
import { PromptProps } from '../Prompt/Prompt';
|
3
3
|
export interface PromptSignInProps extends Partial<PromptProps> {
|
4
|
-
onClickSignIn?: React.EventHandler<
|
4
|
+
onClickSignIn?: React.EventHandler<SyntheticEvent>;
|
5
5
|
}
|
6
6
|
/**
|
7
7
|
* Authentication Popup that appears when user action requires login
|
8
8
|
* @returns {JSX|null}
|
9
9
|
*/
|
10
|
-
export declare const PromptSignIn: ({ text, onClickSignIn, actions, ...props }: PromptSignInProps) =>
|
10
|
+
export declare const PromptSignIn: ({ text, onClickSignIn, actions, ...props }: PromptSignInProps) => React.JSX.Element;
|
@@ -2,9 +2,9 @@
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
3
3
|
exports.PromptSignIn = void 0;
|
4
4
|
const tslib_1 = require("tslib");
|
5
|
-
const
|
6
|
-
const i18n_1 = require("../../i18n
|
7
|
-
const Prompt_1 = require("../Prompt/Prompt
|
5
|
+
const react_1 = tslib_1.__importDefault(require("react"));
|
6
|
+
const i18n_1 = require("../../i18n");
|
7
|
+
const Prompt_1 = require("../Prompt/Prompt");
|
8
8
|
/**
|
9
9
|
* Authentication Popup that appears when user action requires login
|
10
10
|
* @returns {JSX|null}
|
@@ -17,7 +17,6 @@ const PromptSignIn = (_a) => {
|
|
17
17
|
size: 'l',
|
18
18
|
},
|
19
19
|
] } = _a, props = tslib_1.__rest(_a, ["text", "onClickSignIn", "actions"]);
|
20
|
-
return
|
20
|
+
return react_1.default.createElement(Prompt_1.Prompt, Object.assign({}, { text, actions }, props));
|
21
21
|
};
|
22
|
-
exports.PromptSignIn = PromptSignIn;
|
23
|
-
//# sourceMappingURL=PromptSignIn.js.map
|
22
|
+
exports.PromptSignIn = PromptSignIn;
|
@@ -1,5 +1,5 @@
|
|
1
|
-
import
|
2
|
-
export declare function usePromptSignInProps(onClickSignIn?: React.EventHandler<
|
1
|
+
import React, { SyntheticEvent } from 'react';
|
2
|
+
export declare function usePromptSignInProps(onClickSignIn?: React.EventHandler<SyntheticEvent>): {
|
3
3
|
onClickSignIn: ((event: React.SyntheticEvent<Element, Event>) => void) | undefined;
|
4
4
|
openTimestamp: number;
|
5
5
|
requireSignIn: (() => void) | undefined;
|
@@ -1,11 +1,10 @@
|
|
1
1
|
"use strict";
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
3
|
-
exports.usePromptSignInProps =
|
4
|
-
const
|
5
|
-
const React = tslib_1.__importStar(require("react"));
|
3
|
+
exports.usePromptSignInProps = void 0;
|
4
|
+
const react_1 = require("react");
|
6
5
|
function usePromptSignInProps(onClickSignIn) {
|
7
|
-
const [openTimestamp, setTime] =
|
8
|
-
const requireSignIn =
|
6
|
+
const [openTimestamp, setTime] = (0, react_1.useState)(0);
|
7
|
+
const requireSignIn = (0, react_1.useMemo)(() => {
|
9
8
|
return onClickSignIn
|
10
9
|
? () => {
|
11
10
|
setTime(Date.now());
|
@@ -14,4 +13,4 @@ function usePromptSignInProps(onClickSignIn) {
|
|
14
13
|
}, [onClickSignIn, setTime]);
|
15
14
|
return { onClickSignIn, openTimestamp, requireSignIn };
|
16
15
|
}
|
17
|
-
|
16
|
+
exports.usePromptSignInProps = usePromptSignInProps;
|
@@ -1,4 +1,5 @@
|
|
1
|
-
import
|
1
|
+
import React from 'react';
|
2
|
+
import { ClassNameProps } from '../../models/common';
|
2
3
|
export type SearchSize = 's' | 'm';
|
3
4
|
interface SearchProps extends ClassNameProps {
|
4
5
|
value?: string;
|
@@ -16,5 +17,5 @@ interface SearchProps extends ClassNameProps {
|
|
16
17
|
*
|
17
18
|
* @returns {JSX|null}
|
18
19
|
*/
|
19
|
-
export declare const Search: ({ className, initialValue, onSubmit, debounce, placeholder, size, autoFocus, value: externalValue, }: SearchProps) =>
|
20
|
+
export declare const Search: ({ className, initialValue, onSubmit, debounce, placeholder, size, autoFocus, value: externalValue, }: SearchProps) => React.JSX.Element;
|
20
21
|
export {};
|
@@ -2,15 +2,14 @@
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
3
3
|
exports.Search = void 0;
|
4
4
|
const tslib_1 = require("tslib");
|
5
|
-
const
|
6
|
-
const React = tslib_1.__importStar(require("react"));
|
5
|
+
const react_1 = tslib_1.__importStar(require("react"));
|
7
6
|
const uikit_1 = require("@gravity-ui/uikit");
|
8
7
|
const debounce_1 = tslib_1.__importDefault(require("lodash/debounce"));
|
9
|
-
const useIsIPhone_1 = require("../../hooks/useIsIPhone
|
10
|
-
const i18n_1 = require("../../i18n
|
11
|
-
const Close_1 = require("../../icons/Close
|
12
|
-
const SearchIcon_1 = require("../../icons/SearchIcon
|
13
|
-
const cn_1 = require("../../utils/cn
|
8
|
+
const useIsIPhone_1 = require("../../hooks/useIsIPhone");
|
9
|
+
const i18n_1 = require("../../i18n");
|
10
|
+
const Close_1 = require("../../icons/Close");
|
11
|
+
const SearchIcon_1 = require("../../icons/SearchIcon");
|
12
|
+
const cn_1 = require("../../utils/cn");
|
14
13
|
const b = (0, cn_1.block)('search');
|
15
14
|
const SEARCH_ICON_SIZE = 16;
|
16
15
|
const CLOSE_ICON_SIZE = 12;
|
@@ -23,20 +22,20 @@ const AUTOFOCUS_TIMEOUT = 0;
|
|
23
22
|
*/
|
24
23
|
const Search = ({ className, initialValue, onSubmit, debounce = 300, placeholder = (0, i18n_1.i18n)(i18n_1.Keyset.Search), size = 'm', autoFocus = false, value: externalValue, }) => {
|
25
24
|
const handleChange = (0, debounce_1.default)(onSubmit, debounce);
|
26
|
-
const [value, setValue] =
|
27
|
-
const inputRef =
|
25
|
+
const [value, setValue] = (0, react_1.useState)(initialValue);
|
26
|
+
const inputRef = (0, react_1.useRef)(null);
|
28
27
|
const isIPhone = (0, useIsIPhone_1.useIsIPhone)();
|
29
|
-
|
28
|
+
(0, react_1.useEffect)(() => {
|
30
29
|
if (externalValue !== undefined) {
|
31
30
|
setValue(externalValue);
|
32
31
|
}
|
33
32
|
}, [externalValue]);
|
34
|
-
|
33
|
+
(0, react_1.useEffect)(() => {
|
35
34
|
if (autoFocus && !isIPhone) {
|
36
35
|
setTimeout(() => { var _a; return (_a = inputRef === null || inputRef === void 0 ? void 0 : inputRef.current) === null || _a === void 0 ? void 0 : _a.focus({ preventScroll: true }); }, AUTOFOCUS_TIMEOUT);
|
37
36
|
}
|
38
37
|
}, [autoFocus, inputRef, isIPhone]);
|
39
|
-
const rightContent =
|
38
|
+
const rightContent = (0, react_1.useMemo)(() => {
|
40
39
|
const iconData = value ? Close_1.Close : SearchIcon_1.SearchIcon;
|
41
40
|
const iconSize = value ? CLOSE_ICON_SIZE : SEARCH_ICON_SIZE;
|
42
41
|
const handleClick = () => {
|
@@ -48,14 +47,15 @@ const Search = ({ className, initialValue, onSubmit, debounce = 300, placeholder
|
|
48
47
|
(_a = inputRef.current) === null || _a === void 0 ? void 0 : _a.focus();
|
49
48
|
}
|
50
49
|
};
|
51
|
-
return (
|
50
|
+
return (react_1.default.createElement("button", { className: b('input-icon'), onClick: handleClick, "aria-label": value ? (0, i18n_1.i18n)(i18n_1.Keyset.ClearAction) : undefined, "aria-hidden": !value },
|
51
|
+
react_1.default.createElement(uikit_1.Icon, { size: iconSize, data: iconData })));
|
52
52
|
}, [handleChange, onSubmit, value]);
|
53
|
-
return (
|
53
|
+
return (react_1.default.createElement("div", { className: b({ size }, className) },
|
54
|
+
react_1.default.createElement(uikit_1.TextInput, { className: b('search-suggest'), value: value, onUpdate: (query) => {
|
54
55
|
setValue(query);
|
55
56
|
handleChange(query);
|
56
57
|
}, placeholder: placeholder, size: size === 'm' ? 'xl' : 'l', controlRef: inputRef, view: "clear", controlProps: {
|
57
58
|
className: b('search-suggest-control'),
|
58
|
-
},
|
59
|
+
}, rightContent: rightContent })));
|
59
60
|
};
|
60
|
-
exports.Search = Search;
|
61
|
-
//# sourceMappingURL=Search.js.map
|
61
|
+
exports.Search = Search;
|
@@ -1,6 +1,6 @@
|
|
1
|
-
import
|
2
|
-
import { ClassNameProps, QAProps } from
|
3
|
-
import { Paddings } from
|
1
|
+
import React from 'react';
|
2
|
+
import { ClassNameProps, QAProps } from '../../models/common';
|
3
|
+
import { Paddings } from '../../models/paddings';
|
4
4
|
type WrapperProps = ClassNameProps & QAProps & {
|
5
5
|
paddings?: Paddings;
|
6
6
|
children?: React.ReactNode;
|
@@ -1,15 +1,15 @@
|
|
1
1
|
"use strict";
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
3
3
|
exports.Wrapper = void 0;
|
4
|
-
const
|
5
|
-
const
|
6
|
-
const
|
4
|
+
const tslib_1 = require("tslib");
|
5
|
+
const react_1 = tslib_1.__importDefault(require("react"));
|
6
|
+
const constants_1 = require("../../constants");
|
7
|
+
const cn_1 = require("../../utils/cn");
|
7
8
|
const b = (0, cn_1.block)('wrapper');
|
8
|
-
const Wrapper = ({ children, paddings = constants_1.DEFAULT_PADDINGS, className, qa, }) => (
|
9
|
+
const Wrapper = ({ children, paddings = constants_1.DEFAULT_PADDINGS, className, qa, }) => (react_1.default.createElement("section", { className: b({
|
9
10
|
['padding-top']: (paddings === null || paddings === void 0 ? void 0 : paddings.top) || 'xs',
|
10
11
|
['padding-bottom']: (paddings === null || paddings === void 0 ? void 0 : paddings.bottom) || 'l',
|
11
12
|
['padding-left']: (paddings === null || paddings === void 0 ? void 0 : paddings.left) || '',
|
12
13
|
['padding-right']: (paddings === null || paddings === void 0 ? void 0 : paddings.right) || '',
|
13
|
-
}, className), "data-qa": qa, children
|
14
|
-
exports.Wrapper = Wrapper;
|
15
|
-
//# sourceMappingURL=Wrapper.js.map
|
14
|
+
}, className), "data-qa": qa }, children));
|
15
|
+
exports.Wrapper = Wrapper;
|