@diplodoc/components 3.0.0-alpha-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/LICENSE +21 -0
- package/README.md +67 -0
- package/assets/icons/link.svg +3 -0
- package/assets/icons/pdf.svg +6 -0
- package/build/cjs/components/BookmarkButton/BookmarkButton.css +12 -0
- package/build/cjs/components/BookmarkButton/BookmarkButton.css.map +7 -0
- package/build/cjs/components/BookmarkButton/BookmarkButton.d.ts +8 -0
- package/build/cjs/components/BookmarkButton/BookmarkButton.js +56 -0
- package/build/cjs/components/BookmarkButton/BookmarkButton.js.map +7 -0
- package/build/cjs/components/BookmarkButton/index.d.ts +1 -0
- package/build/cjs/components/BookmarkButton/index.js +21 -0
- package/build/cjs/components/BookmarkButton/index.js.map +7 -0
- package/build/cjs/components/Breadcrumbs/Breadcrumbs.css +35 -0
- package/build/cjs/components/Breadcrumbs/Breadcrumbs.css.map +7 -0
- package/build/cjs/components/Breadcrumbs/Breadcrumbs.d.ts +8 -0
- package/build/cjs/components/Breadcrumbs/Breadcrumbs.js +58 -0
- package/build/cjs/components/Breadcrumbs/Breadcrumbs.js.map +7 -0
- package/build/cjs/components/Breadcrumbs/index.d.ts +1 -0
- package/build/cjs/components/Breadcrumbs/index.js +21 -0
- package/build/cjs/components/Breadcrumbs/index.js.map +7 -0
- package/build/cjs/components/ContributorAvatars/Avatars/Avatar.d.ts +10 -0
- package/build/cjs/components/ContributorAvatars/Avatars/Avatar.js +89 -0
- package/build/cjs/components/ContributorAvatars/Avatars/Avatar.js.map +7 -0
- package/build/cjs/components/ContributorAvatars/Avatars/AvatarWithDescription.d.ts +9 -0
- package/build/cjs/components/ContributorAvatars/Avatars/AvatarWithDescription.js +63 -0
- package/build/cjs/components/ContributorAvatars/Avatars/AvatarWithDescription.js.map +7 -0
- package/build/cjs/components/ContributorAvatars/Avatars/Details.d.ts +10 -0
- package/build/cjs/components/ContributorAvatars/Avatars/Details.js +77 -0
- package/build/cjs/components/ContributorAvatars/Avatars/Details.js.map +7 -0
- package/build/cjs/components/ContributorAvatars/Avatars/HiddenAvatars.d.ts +10 -0
- package/build/cjs/components/ContributorAvatars/Avatars/HiddenAvatars.js +70 -0
- package/build/cjs/components/ContributorAvatars/Avatars/HiddenAvatars.js.map +7 -0
- package/build/cjs/components/ContributorAvatars/ContributorAvatars.css +135 -0
- package/build/cjs/components/ContributorAvatars/ContributorAvatars.css.map +7 -0
- package/build/cjs/components/ContributorAvatars/ContributorAvatars.d.ts +10 -0
- package/build/cjs/components/ContributorAvatars/ContributorAvatars.js +84 -0
- package/build/cjs/components/ContributorAvatars/ContributorAvatars.js.map +7 -0
- package/build/cjs/components/ContributorAvatars/index.d.ts +2 -0
- package/build/cjs/components/ContributorAvatars/index.js +39 -0
- package/build/cjs/components/ContributorAvatars/index.js.map +7 -0
- package/build/cjs/components/ContributorAvatars/models.d.ts +16 -0
- package/build/cjs/components/ContributorAvatars/models.js +31 -0
- package/build/cjs/components/ContributorAvatars/models.js.map +7 -0
- package/build/cjs/components/ContributorAvatars/utils.d.ts +3 -0
- package/build/cjs/components/ContributorAvatars/utils.js +39 -0
- package/build/cjs/components/ContributorAvatars/utils.js.map +7 -0
- package/build/cjs/components/Contributors/Contributors.css +12 -0
- package/build/cjs/components/Contributors/Contributors.css.map +7 -0
- package/build/cjs/components/Contributors/Contributors.d.ts +11 -0
- package/build/cjs/components/Contributors/Contributors.js +48 -0
- package/build/cjs/components/Contributors/Contributors.js.map +7 -0
- package/build/cjs/components/Contributors/index.d.ts +2 -0
- package/build/cjs/components/Control/Control.css +15 -0
- package/build/cjs/components/Control/Control.css.map +7 -0
- package/build/cjs/components/Control/Control.d.ts +20 -0
- package/build/cjs/components/Control/Control.js +95 -0
- package/build/cjs/components/Control/Control.js.map +7 -0
- package/build/cjs/components/Control/index.d.ts +2 -0
- package/build/cjs/components/Control/index.js +39 -0
- package/build/cjs/components/Control/index.js.map +7 -0
- package/build/cjs/components/Controls/Controls.css +50 -0
- package/build/cjs/components/Controls/Controls.css.map +7 -0
- package/build/cjs/components/Controls/Controls.d.ts +32 -0
- package/build/cjs/components/Controls/Controls.js +169 -0
- package/build/cjs/components/Controls/Controls.js.map +7 -0
- package/build/cjs/components/Controls/ControlsLayout.d.ts +12 -0
- package/build/cjs/components/Controls/ControlsLayout.js +68 -0
- package/build/cjs/components/Controls/ControlsLayout.js.map +7 -0
- package/build/cjs/components/Controls/index.d.ts +4 -0
- package/build/cjs/components/Controls/index.js +42 -0
- package/build/cjs/components/Controls/index.js.map +7 -0
- package/build/cjs/components/Controls/single-controls/DividerControl/DividerControl.css +21 -0
- package/build/cjs/components/Controls/single-controls/DividerControl/DividerControl.css.map +7 -0
- package/build/cjs/components/Controls/single-controls/DividerControl/DividerControl.d.ts +7 -0
- package/build/cjs/components/Controls/single-controls/DividerControl/DividerControl.js +46 -0
- package/build/cjs/components/Controls/single-controls/DividerControl/DividerControl.js.map +7 -0
- package/build/cjs/components/Controls/single-controls/EditControl.d.ts +9 -0
- package/build/cjs/components/Controls/single-controls/EditControl.js +73 -0
- package/build/cjs/components/Controls/single-controls/EditControl.js.map +7 -0
- package/build/cjs/components/Controls/single-controls/FullScreenControl.d.ts +7 -0
- package/build/cjs/components/Controls/single-controls/FullScreenControl.js +82 -0
- package/build/cjs/components/Controls/single-controls/FullScreenControl.js.map +7 -0
- package/build/cjs/components/Controls/single-controls/LangControl.d.ts +10 -0
- package/build/cjs/components/Controls/single-controls/LangControl.js +122 -0
- package/build/cjs/components/Controls/single-controls/LangControl.js.map +7 -0
- package/build/cjs/components/Controls/single-controls/PdfControl.d.ts +6 -0
- package/build/cjs/components/Controls/single-controls/PdfControl.js +60 -0
- package/build/cjs/components/Controls/single-controls/PdfControl.js.map +7 -0
- package/build/cjs/components/Controls/single-controls/SettingsControl/SettingsControl.css +49 -0
- package/build/cjs/components/Controls/single-controls/SettingsControl/SettingsControl.css.map +7 -0
- package/build/cjs/components/Controls/single-controls/SettingsControl/SettingsControl.d.ts +17 -0
- package/build/cjs/components/Controls/single-controls/SettingsControl/SettingsControl.js +198 -0
- package/build/cjs/components/Controls/single-controls/SettingsControl/SettingsControl.js.map +7 -0
- package/build/cjs/components/Controls/single-controls/SinglePageControl.d.ts +7 -0
- package/build/cjs/components/Controls/single-controls/SinglePageControl.js +67 -0
- package/build/cjs/components/Controls/single-controls/SinglePageControl.js.map +7 -0
- package/build/cjs/components/Controls/single-controls/index.d.ts +7 -0
- package/build/cjs/components/Controls/single-controls/index.js +49 -0
- package/build/cjs/components/Controls/single-controls/index.js.map +7 -0
- package/build/cjs/components/Controls/single-controls/utils.d.ts +2 -0
- package/build/cjs/components/Controls/single-controls/utils.js +30 -0
- package/build/cjs/components/Controls/single-controls/utils.js.map +7 -0
- package/build/cjs/components/DocLayout/DocLayout.css +102 -0
- package/build/cjs/components/DocLayout/DocLayout.css.map +7 -0
- package/build/cjs/components/DocLayout/DocLayout.d.ts +34 -0
- package/build/cjs/components/DocLayout/DocLayout.js +117 -0
- package/build/cjs/components/DocLayout/DocLayout.js.map +7 -0
- package/build/cjs/components/DocLayout/index.d.ts +1 -0
- package/build/cjs/components/DocLayout/index.js +21 -0
- package/build/cjs/components/DocLayout/index.js.map +7 -0
- package/build/cjs/components/DocLeadingPage/DocLeadingPage.css +93 -0
- package/build/cjs/components/DocLeadingPage/DocLeadingPage.css.map +7 -0
- package/build/cjs/components/DocLeadingPage/DocLeadingPage.d.ts +22 -0
- package/build/cjs/components/DocLeadingPage/DocLeadingPage.js +109 -0
- package/build/cjs/components/DocLeadingPage/DocLeadingPage.js.map +7 -0
- package/build/cjs/components/DocLeadingPage/index.d.ts +1 -0
- package/build/cjs/components/DocLeadingPage/index.js +21 -0
- package/build/cjs/components/DocLeadingPage/index.js.map +7 -0
- package/build/cjs/components/DocPage/DocPage.css +231 -0
- package/build/cjs/components/DocPage/DocPage.css.map +7 -0
- package/build/cjs/components/DocPage/DocPage.d.ts +41 -0
- package/build/cjs/components/DocPage/DocPage.js +460 -0
- package/build/cjs/components/DocPage/DocPage.js.map +7 -0
- package/build/cjs/components/DocPage/index.d.ts +2 -0
- package/build/cjs/components/DocPage/index.js +39 -0
- package/build/cjs/components/DocPage/index.js.map +7 -0
- package/build/cjs/components/DocPageTitle/DocPageTitle.css +10 -0
- package/build/cjs/components/DocPageTitle/DocPageTitle.css.map +7 -0
- package/build/cjs/components/DocPageTitle/DocPageTitle.d.ts +7 -0
- package/build/cjs/components/DocPageTitle/DocPageTitle.js +50 -0
- package/build/cjs/components/DocPageTitle/DocPageTitle.js.map +7 -0
- package/build/cjs/components/DocPageTitle/index.d.ts +1 -0
- package/build/cjs/components/DocPageTitle/index.js +21 -0
- package/build/cjs/components/DocPageTitle/index.js.map +7 -0
- package/build/cjs/components/ErrorBoundary/ErrorBoundary.d.ts +12 -0
- package/build/cjs/components/ErrorBoundary/ErrorBoundary.js +56 -0
- package/build/cjs/components/ErrorBoundary/ErrorBoundary.js.map +7 -0
- package/build/cjs/components/ErrorBoundary/index.d.ts +2 -0
- package/build/cjs/components/ErrorBoundary/index.js +39 -0
- package/build/cjs/components/ErrorBoundary/index.js.map +7 -0
- package/build/cjs/components/ErrorPage/ErrorPage.css +65 -0
- package/build/cjs/components/ErrorPage/ErrorPage.css.map +7 -0
- package/build/cjs/components/ErrorPage/ErrorPage.d.ts +10 -0
- package/build/cjs/components/ErrorPage/ErrorPage.js +83 -0
- package/build/cjs/components/ErrorPage/ErrorPage.js.map +7 -0
- package/build/cjs/components/ErrorPage/index.d.ts +2 -0
- package/build/cjs/components/ErrorPage/index.js +39 -0
- package/build/cjs/components/ErrorPage/index.js.map +7 -0
- package/build/cjs/components/Feedback/Feedback.css +109 -0
- package/build/cjs/components/Feedback/Feedback.css.map +7 -0
- package/build/cjs/components/Feedback/Feedback.d.ts +15 -0
- package/build/cjs/components/Feedback/Feedback.js +163 -0
- package/build/cjs/components/Feedback/Feedback.js.map +7 -0
- package/build/cjs/components/Feedback/controls/DislikeControl.d.ts +11 -0
- package/build/cjs/components/Feedback/controls/DislikeControl.js +69 -0
- package/build/cjs/components/Feedback/controls/DislikeControl.js.map +7 -0
- package/build/cjs/components/Feedback/controls/DislikeVariantsPopup.d.ts +18 -0
- package/build/cjs/components/Feedback/controls/DislikeVariantsPopup.js +150 -0
- package/build/cjs/components/Feedback/controls/DislikeVariantsPopup.js.map +7 -0
- package/build/cjs/components/Feedback/controls/LikeControl.d.ts +13 -0
- package/build/cjs/components/Feedback/controls/LikeControl.js +81 -0
- package/build/cjs/components/Feedback/controls/LikeControl.js.map +7 -0
- package/build/cjs/components/Feedback/controls/SuccessPopup.d.ts +10 -0
- package/build/cjs/components/Feedback/controls/SuccessPopup.js +67 -0
- package/build/cjs/components/Feedback/controls/SuccessPopup.js.map +7 -0
- package/build/cjs/components/Feedback/index.d.ts +2 -0
- package/build/cjs/components/Feedback/index.js +39 -0
- package/build/cjs/components/Feedback/index.js.map +7 -0
- package/build/cjs/components/HTML/HTML.d.ts +7 -0
- package/build/cjs/components/HTML/HTML.js +46 -0
- package/build/cjs/components/HTML/HTML.js.map +7 -0
- package/build/cjs/components/HTML/index.d.ts +1 -0
- package/build/cjs/components/HTML/index.js +21 -0
- package/build/cjs/components/HTML/index.js.map +7 -0
- package/build/cjs/components/Link.d.ts +6 -0
- package/build/cjs/components/Link.js +41 -0
- package/build/cjs/components/Link.js.map +7 -0
- package/build/cjs/components/Mark/Mark.css +22 -0
- package/build/cjs/components/Mark/Mark.css.map +7 -0
- package/build/cjs/components/Mark/Mark.d.ts +10 -0
- package/build/cjs/components/Mark/Mark.js +43 -0
- package/build/cjs/components/Mark/Mark.js.map +7 -0
- package/build/cjs/components/Mark/index.d.ts +1 -0
- package/build/cjs/components/Mark/index.js +21 -0
- package/build/cjs/components/Mark/index.js.map +7 -0
- package/build/cjs/components/MiniToc/MiniToc.css +44 -0
- package/build/cjs/components/MiniToc/MiniToc.css.map +7 -0
- package/build/cjs/components/MiniToc/MiniToc.d.ts +15 -0
- package/build/cjs/components/MiniToc/MiniToc.js +71 -0
- package/build/cjs/components/MiniToc/MiniToc.js.map +7 -0
- package/build/cjs/components/MiniToc/index.d.ts +2 -0
- package/build/cjs/components/MiniToc/index.js +39 -0
- package/build/cjs/components/MiniToc/index.js.map +7 -0
- package/build/cjs/components/OutsideClick/OutsideClick.d.ts +12 -0
- package/build/cjs/components/OutsideClick/OutsideClick.js +56 -0
- package/build/cjs/components/OutsideClick/OutsideClick.js.map +7 -0
- package/build/cjs/components/OutsideClick/index.d.ts +2 -0
- package/build/cjs/components/OutsideClick/index.js +39 -0
- package/build/cjs/components/OutsideClick/index.js.map +7 -0
- package/build/cjs/components/Paginator/Paginator.css +45 -0
- package/build/cjs/components/Paginator/Paginator.css.map +7 -0
- package/build/cjs/components/Paginator/Paginator.d.ts +22 -0
- package/build/cjs/components/Paginator/Paginator.js +132 -0
- package/build/cjs/components/Paginator/Paginator.js.map +7 -0
- package/build/cjs/components/Paginator/index.d.ts +2 -0
- package/build/cjs/components/Paginator/index.js +39 -0
- package/build/cjs/components/Paginator/index.js.map +7 -0
- package/build/cjs/components/Scrollspy/Scrollspy.d.ts +48 -0
- package/build/cjs/components/Scrollspy/Scrollspy.js +259 -0
- package/build/cjs/components/Scrollspy/Scrollspy.js.map +7 -0
- package/build/cjs/components/Scrollspy/index.d.ts +1 -0
- package/build/cjs/components/Scrollspy/index.js +21 -0
- package/build/cjs/components/Scrollspy/index.js.map +7 -0
- package/build/cjs/components/SearchBar/SearchBar.css +59 -0
- package/build/cjs/components/SearchBar/SearchBar.css.map +7 -0
- package/build/cjs/components/SearchBar/SearchBar.d.ts +12 -0
- package/build/cjs/components/SearchBar/SearchBar.js +88 -0
- package/build/cjs/components/SearchBar/SearchBar.js.map +7 -0
- package/build/cjs/components/SearchBar/constants.d.ts +7 -0
- package/build/cjs/components/SearchBar/constants.js +39 -0
- package/build/cjs/components/SearchBar/constants.js.map +7 -0
- package/build/cjs/components/SearchBar/hooks.d.ts +55 -0
- package/build/cjs/components/SearchBar/hooks.js +292 -0
- package/build/cjs/components/SearchBar/hooks.js.map +7 -0
- package/build/cjs/components/SearchBar/index.d.ts +4 -0
- package/build/cjs/components/SearchBar/index.js +42 -0
- package/build/cjs/components/SearchBar/index.js.map +7 -0
- package/build/cjs/components/SearchBar/utils.d.ts +26 -0
- package/build/cjs/components/SearchBar/utils.js +108 -0
- package/build/cjs/components/SearchBar/utils.js.map +7 -0
- package/build/cjs/components/SearchBar/withHighlightedSearchWords.d.ts +16 -0
- package/build/cjs/components/SearchBar/withHighlightedSearchWords.js +123 -0
- package/build/cjs/components/SearchBar/withHighlightedSearchWords.js.map +7 -0
- package/build/cjs/components/SearchItem/SearchItem.css +88 -0
- package/build/cjs/components/SearchItem/SearchItem.css.map +7 -0
- package/build/cjs/components/SearchItem/SearchItem.d.ts +19 -0
- package/build/cjs/components/SearchItem/SearchItem.js +91 -0
- package/build/cjs/components/SearchItem/SearchItem.js.map +7 -0
- package/build/cjs/components/SearchItem/index.d.ts +2 -0
- package/build/cjs/components/SearchItem/index.js +39 -0
- package/build/cjs/components/SearchItem/index.js.map +7 -0
- package/build/cjs/components/SearchPage/SearchPage.css +43 -0
- package/build/cjs/components/SearchPage/SearchPage.css.map +7 -0
- package/build/cjs/components/SearchPage/SearchPage.d.ts +20 -0
- package/build/cjs/components/SearchPage/SearchPage.js +165 -0
- package/build/cjs/components/SearchPage/SearchPage.js.map +7 -0
- package/build/cjs/components/SearchPage/index.d.ts +2 -0
- package/build/cjs/components/SearchPage/index.js +39 -0
- package/build/cjs/components/SearchPage/index.js.map +7 -0
- package/build/cjs/components/StageLabel/StageLabel.d.ts +8 -0
- package/build/cjs/components/StageLabel/StageLabel.js +50 -0
- package/build/cjs/components/StageLabel/StageLabel.js.map +7 -0
- package/build/cjs/components/StageLabel/index.d.ts +1 -0
- package/build/cjs/components/StageLabel/index.js +21 -0
- package/build/cjs/components/StageLabel/index.js.map +7 -0
- package/build/cjs/components/Subscribe/Subscribe.css +98 -0
- package/build/cjs/components/Subscribe/Subscribe.css.map +7 -0
- package/build/cjs/components/Subscribe/Subscribe.d.ts +13 -0
- package/build/cjs/components/Subscribe/Subscribe.js +136 -0
- package/build/cjs/components/Subscribe/Subscribe.js.map +7 -0
- package/build/cjs/components/Subscribe/SubscribeSuccessPopup/SubscribeSuccessPopup.d.ts +8 -0
- package/build/cjs/components/Subscribe/SubscribeSuccessPopup/SubscribeSuccessPopup.js +61 -0
- package/build/cjs/components/Subscribe/SubscribeSuccessPopup/SubscribeSuccessPopup.js.map +7 -0
- package/build/cjs/components/Subscribe/SubscribeSuccessPopup/index.d.ts +1 -0
- package/build/cjs/components/Subscribe/SubscribeSuccessPopup/index.js +37 -0
- package/build/cjs/components/Subscribe/SubscribeSuccessPopup/index.js.map +7 -0
- package/build/cjs/components/Subscribe/SubscribeVariantsPopup/SubscribeVariantsPopup.d.ts +11 -0
- package/build/cjs/components/Subscribe/SubscribeVariantsPopup/SubscribeVariantsPopup.js +126 -0
- package/build/cjs/components/Subscribe/SubscribeVariantsPopup/SubscribeVariantsPopup.js.map +7 -0
- package/build/cjs/components/Subscribe/SubscribeVariantsPopup/index.d.ts +1 -0
- package/build/cjs/components/Subscribe/SubscribeVariantsPopup/index.js +37 -0
- package/build/cjs/components/Subscribe/SubscribeVariantsPopup/index.js.map +7 -0
- package/build/cjs/components/Subscribe/index.d.ts +2 -0
- package/build/cjs/components/Subscribe/index.js +39 -0
- package/build/cjs/components/Subscribe/index.js.map +7 -0
- package/build/cjs/components/Subscribe/utils.d.ts +3 -0
- package/build/cjs/components/Subscribe/utils.js +34 -0
- package/build/cjs/components/Subscribe/utils.js.map +7 -0
- package/build/cjs/components/Text/Text.d.ts +7 -0
- package/build/cjs/components/Text/Text.js +54 -0
- package/build/cjs/components/Text/Text.js.map +7 -0
- package/build/cjs/components/Text/index.d.ts +1 -0
- package/build/cjs/components/Text/index.js +21 -0
- package/build/cjs/components/Text/index.js.map +7 -0
- package/build/cjs/components/TextInput/TextInput.d.ts +0 -0
- package/build/cjs/components/Toc/Toc.css +102 -0
- package/build/cjs/components/Toc/Toc.css.map +7 -0
- package/build/cjs/components/Toc/Toc.d.ts +58 -0
- package/build/cjs/components/Toc/Toc.js +275 -0
- package/build/cjs/components/Toc/Toc.js.map +7 -0
- package/build/cjs/components/Toc/TocItemRegistry.d.ts +16 -0
- package/build/cjs/components/Toc/TocItemRegistry.js +81 -0
- package/build/cjs/components/Toc/TocItemRegistry.js.map +7 -0
- package/build/cjs/components/Toc/index.d.ts +2 -0
- package/build/cjs/components/Toc/index.js +39 -0
- package/build/cjs/components/Toc/index.js.map +7 -0
- package/build/cjs/components/TocItem/TocItem.css +39 -0
- package/build/cjs/components/TocItem/TocItem.css.map +7 -0
- package/build/cjs/components/TocItem/TocItem.d.ts +20 -0
- package/build/cjs/components/TocItem/TocItem.js +105 -0
- package/build/cjs/components/TocItem/TocItem.js.map +7 -0
- package/build/cjs/components/TocItem/index.d.ts +2 -0
- package/build/cjs/components/TocItem/index.js +39 -0
- package/build/cjs/components/TocItem/index.js.map +7 -0
- package/build/cjs/components/TocNavPanel/TocNavPanel.css +64 -0
- package/build/cjs/components/TocNavPanel/TocNavPanel.css.map +7 -0
- package/build/cjs/components/TocNavPanel/TocNavPanel.d.ts +10 -0
- package/build/cjs/components/TocNavPanel/TocNavPanel.js +94 -0
- package/build/cjs/components/TocNavPanel/TocNavPanel.js.map +7 -0
- package/build/cjs/components/TocNavPanel/index.d.ts +2 -0
- package/build/cjs/components/TocNavPanel/index.js +39 -0
- package/build/cjs/components/TocNavPanel/index.js.map +7 -0
- package/build/cjs/components/ToggleArrow/ToggleArrow.css +24 -0
- package/build/cjs/components/ToggleArrow/ToggleArrow.css.map +7 -0
- package/build/cjs/components/ToggleArrow/ToggleArrow.d.ts +11 -0
- package/build/cjs/components/ToggleArrow/ToggleArrow.js +49 -0
- package/build/cjs/components/ToggleArrow/ToggleArrow.js.map +7 -0
- package/build/cjs/components/ToggleArrow/index.d.ts +1 -0
- package/build/cjs/components/ToggleArrow/index.js +21 -0
- package/build/cjs/components/ToggleArrow/index.js.map +7 -0
- package/build/cjs/config/i18n.d.ts +7 -0
- package/build/cjs/config/i18n.js +68 -0
- package/build/cjs/config/i18n.js.map +7 -0
- package/build/cjs/config/index.d.ts +6 -0
- package/build/cjs/config/index.js +51 -0
- package/build/cjs/config/index.js.map +7 -0
- package/build/cjs/constants.d.ts +19 -0
- package/build/cjs/constants.js +46 -0
- package/build/cjs/constants.js.map +7 -0
- package/build/cjs/hooks/index.d.ts +4 -0
- package/build/cjs/hooks/index.js +24 -0
- package/build/cjs/hooks/index.js.map +7 -0
- package/build/cjs/hooks/usePopper.d.ts +33 -0
- package/build/cjs/hooks/usePopper.js +93 -0
- package/build/cjs/hooks/usePopper.js.map +7 -0
- package/build/cjs/hooks/usePopupState.d.ts +8 -0
- package/build/cjs/hooks/usePopupState.js +62 -0
- package/build/cjs/hooks/usePopupState.js.map +7 -0
- package/build/cjs/hooks/useTimer.d.ts +1 -0
- package/build/cjs/hooks/useTimer.js +44 -0
- package/build/cjs/hooks/useTimer.js.map +7 -0
- package/build/cjs/hooks/useTranslation.d.ts +2 -0
- package/build/cjs/hooks/useTranslation.js +32 -0
- package/build/cjs/hooks/useTranslation.js.map +7 -0
- package/build/cjs/i18n/en.js +124 -0
- package/build/cjs/i18n/en.js.map +7 -0
- package/build/cjs/i18n/ru.js +124 -0
- package/build/cjs/i18n/ru.js.map +7 -0
- package/build/cjs/index.d.ts +28 -0
- package/build/cjs/index.js +48 -0
- package/build/cjs/index.js.map +7 -0
- package/build/cjs/models/index.d.ts +139 -0
- package/build/cjs/models/index.js +69 -0
- package/build/cjs/models/index.js.map +7 -0
- package/build/cjs/utils/index.d.ts +14 -0
- package/build/cjs/utils/index.js +109 -0
- package/build/cjs/utils/index.js.map +7 -0
- package/build/esm/components/BookmarkButton/BookmarkButton.css +12 -0
- package/build/esm/components/BookmarkButton/BookmarkButton.css.map +7 -0
- package/build/esm/components/BookmarkButton/BookmarkButton.js +25 -0
- package/build/esm/components/BookmarkButton/BookmarkButton.js.map +7 -0
- package/build/esm/components/BookmarkButton/index.js +3 -0
- package/build/esm/components/BookmarkButton/index.js.map +7 -0
- package/build/esm/components/Breadcrumbs/Breadcrumbs.css +35 -0
- package/build/esm/components/Breadcrumbs/Breadcrumbs.css.map +7 -0
- package/build/esm/components/Breadcrumbs/Breadcrumbs.js +27 -0
- package/build/esm/components/Breadcrumbs/Breadcrumbs.js.map +7 -0
- package/build/esm/components/Breadcrumbs/index.js +3 -0
- package/build/esm/components/Breadcrumbs/index.js.map +7 -0
- package/build/esm/components/ContributorAvatars/Avatars/Avatar.js +58 -0
- package/build/esm/components/ContributorAvatars/Avatars/Avatar.js.map +7 -0
- package/build/esm/components/ContributorAvatars/Avatars/AvatarWithDescription.js +32 -0
- package/build/esm/components/ContributorAvatars/Avatars/AvatarWithDescription.js.map +7 -0
- package/build/esm/components/ContributorAvatars/Avatars/Details.js +46 -0
- package/build/esm/components/ContributorAvatars/Avatars/Details.js.map +7 -0
- package/build/esm/components/ContributorAvatars/Avatars/HiddenAvatars.js +39 -0
- package/build/esm/components/ContributorAvatars/Avatars/HiddenAvatars.js.map +7 -0
- package/build/esm/components/ContributorAvatars/ContributorAvatars.css +135 -0
- package/build/esm/components/ContributorAvatars/ContributorAvatars.css.map +7 -0
- package/build/esm/components/ContributorAvatars/ContributorAvatars.js +53 -0
- package/build/esm/components/ContributorAvatars/ContributorAvatars.js.map +7 -0
- package/build/esm/components/ContributorAvatars/index.js +7 -0
- package/build/esm/components/ContributorAvatars/index.js.map +7 -0
- package/build/esm/components/ContributorAvatars/models.js +10 -0
- package/build/esm/components/ContributorAvatars/models.js.map +7 -0
- package/build/esm/components/ContributorAvatars/utils.js +18 -0
- package/build/esm/components/ContributorAvatars/utils.js.map +7 -0
- package/build/esm/components/Contributors/Contributors.css +12 -0
- package/build/esm/components/Contributors/Contributors.css.map +7 -0
- package/build/esm/components/Contributors/Contributors.js +17 -0
- package/build/esm/components/Contributors/Contributors.js.map +7 -0
- package/build/esm/components/Control/Control.css +15 -0
- package/build/esm/components/Control/Control.css.map +7 -0
- package/build/esm/components/Control/Control.js +64 -0
- package/build/esm/components/Control/Control.js.map +7 -0
- package/build/esm/components/Control/index.js +7 -0
- package/build/esm/components/Control/index.js.map +7 -0
- package/build/esm/components/Controls/Controls.css +50 -0
- package/build/esm/components/Controls/Controls.css.map +7 -0
- package/build/esm/components/Controls/Controls.js +146 -0
- package/build/esm/components/Controls/Controls.js.map +7 -0
- package/build/esm/components/Controls/ControlsLayout.js +37 -0
- package/build/esm/components/Controls/ControlsLayout.js.map +7 -0
- package/build/esm/components/Controls/index.js +10 -0
- package/build/esm/components/Controls/index.js.map +7 -0
- package/build/esm/components/Controls/single-controls/DividerControl/DividerControl.css +21 -0
- package/build/esm/components/Controls/single-controls/DividerControl/DividerControl.css.map +7 -0
- package/build/esm/components/Controls/single-controls/DividerControl/DividerControl.js +15 -0
- package/build/esm/components/Controls/single-controls/DividerControl/DividerControl.js.map +7 -0
- package/build/esm/components/Controls/single-controls/EditControl.js +42 -0
- package/build/esm/components/Controls/single-controls/EditControl.js.map +7 -0
- package/build/esm/components/Controls/single-controls/FullScreenControl.js +51 -0
- package/build/esm/components/Controls/single-controls/FullScreenControl.js.map +7 -0
- package/build/esm/components/Controls/single-controls/LangControl.js +91 -0
- package/build/esm/components/Controls/single-controls/LangControl.js.map +7 -0
- package/build/esm/components/Controls/single-controls/PdfControl.js +29 -0
- package/build/esm/components/Controls/single-controls/PdfControl.js.map +7 -0
- package/build/esm/components/Controls/single-controls/SettingsControl/SettingsControl.css +49 -0
- package/build/esm/components/Controls/single-controls/SettingsControl/SettingsControl.css.map +7 -0
- package/build/esm/components/Controls/single-controls/SettingsControl/SettingsControl.js +167 -0
- package/build/esm/components/Controls/single-controls/SettingsControl/SettingsControl.js.map +7 -0
- package/build/esm/components/Controls/single-controls/SinglePageControl.js +36 -0
- package/build/esm/components/Controls/single-controls/SinglePageControl.js.map +7 -0
- package/build/esm/components/Controls/single-controls/index.js +18 -0
- package/build/esm/components/Controls/single-controls/index.js.map +7 -0
- package/build/esm/components/Controls/single-controls/utils.js +9 -0
- package/build/esm/components/Controls/single-controls/utils.js.map +7 -0
- package/build/esm/components/DocLayout/DocLayout.css +102 -0
- package/build/esm/components/DocLayout/DocLayout.css.map +7 -0
- package/build/esm/components/DocLayout/DocLayout.js +86 -0
- package/build/esm/components/DocLayout/DocLayout.js.map +7 -0
- package/build/esm/components/DocLayout/index.js +3 -0
- package/build/esm/components/DocLayout/index.js.map +7 -0
- package/build/esm/components/DocLeadingPage/DocLeadingPage.css +93 -0
- package/build/esm/components/DocLeadingPage/DocLeadingPage.css.map +7 -0
- package/build/esm/components/DocLeadingPage/DocLeadingPage.js +78 -0
- package/build/esm/components/DocLeadingPage/DocLeadingPage.js.map +7 -0
- package/build/esm/components/DocLeadingPage/index.js +3 -0
- package/build/esm/components/DocLeadingPage/index.js.map +7 -0
- package/build/esm/components/DocPage/DocPage.css +231 -0
- package/build/esm/components/DocPage/DocPage.css.map +7 -0
- package/build/esm/components/DocPage/DocPage.js +436 -0
- package/build/esm/components/DocPage/DocPage.js.map +7 -0
- package/build/esm/components/DocPage/index.js +7 -0
- package/build/esm/components/DocPage/index.js.map +7 -0
- package/build/esm/components/DocPageTitle/DocPageTitle.css +10 -0
- package/build/esm/components/DocPageTitle/DocPageTitle.css.map +7 -0
- package/build/esm/components/DocPageTitle/DocPageTitle.js +19 -0
- package/build/esm/components/DocPageTitle/DocPageTitle.js.map +7 -0
- package/build/esm/components/DocPageTitle/index.js +3 -0
- package/build/esm/components/DocPageTitle/index.js.map +7 -0
- package/build/esm/components/ErrorBoundary/ErrorBoundary.js +25 -0
- package/build/esm/components/ErrorBoundary/ErrorBoundary.js.map +7 -0
- package/build/esm/components/ErrorBoundary/index.js +7 -0
- package/build/esm/components/ErrorBoundary/index.js.map +7 -0
- package/build/esm/components/ErrorPage/ErrorPage.css +65 -0
- package/build/esm/components/ErrorPage/ErrorPage.css.map +7 -0
- package/build/esm/components/ErrorPage/ErrorPage.js +52 -0
- package/build/esm/components/ErrorPage/ErrorPage.js.map +7 -0
- package/build/esm/components/ErrorPage/index.js +7 -0
- package/build/esm/components/ErrorPage/index.js.map +7 -0
- package/build/esm/components/Feedback/Feedback.css +109 -0
- package/build/esm/components/Feedback/Feedback.css.map +7 -0
- package/build/esm/components/Feedback/Feedback.js +132 -0
- package/build/esm/components/Feedback/Feedback.js.map +7 -0
- package/build/esm/components/Feedback/controls/DislikeControl.js +38 -0
- package/build/esm/components/Feedback/controls/DislikeControl.js.map +7 -0
- package/build/esm/components/Feedback/controls/DislikeVariantsPopup.js +128 -0
- package/build/esm/components/Feedback/controls/DislikeVariantsPopup.js.map +7 -0
- package/build/esm/components/Feedback/controls/LikeControl.js +50 -0
- package/build/esm/components/Feedback/controls/LikeControl.js.map +7 -0
- package/build/esm/components/Feedback/controls/SuccessPopup.js +36 -0
- package/build/esm/components/Feedback/controls/SuccessPopup.js.map +7 -0
- package/build/esm/components/Feedback/index.js +7 -0
- package/build/esm/components/Feedback/index.js.map +7 -0
- package/build/esm/components/HTML/HTML.js +15 -0
- package/build/esm/components/HTML/HTML.js.map +7 -0
- package/build/esm/components/HTML/index.js +3 -0
- package/build/esm/components/HTML/index.js.map +7 -0
- package/build/esm/components/Link.js +10 -0
- package/build/esm/components/Link.js.map +7 -0
- package/build/esm/components/Mark/Mark.css +22 -0
- package/build/esm/components/Mark/Mark.css.map +7 -0
- package/build/esm/components/Mark/Mark.js +12 -0
- package/build/esm/components/Mark/Mark.js.map +7 -0
- package/build/esm/components/Mark/index.js +3 -0
- package/build/esm/components/Mark/index.js.map +7 -0
- package/build/esm/components/MiniToc/MiniToc.css +44 -0
- package/build/esm/components/MiniToc/MiniToc.css.map +7 -0
- package/build/esm/components/MiniToc/MiniToc.js +40 -0
- package/build/esm/components/MiniToc/MiniToc.js.map +7 -0
- package/build/esm/components/MiniToc/index.js +7 -0
- package/build/esm/components/MiniToc/index.js.map +7 -0
- package/build/esm/components/OutsideClick/OutsideClick.js +25 -0
- package/build/esm/components/OutsideClick/OutsideClick.js.map +7 -0
- package/build/esm/components/OutsideClick/index.js +7 -0
- package/build/esm/components/OutsideClick/index.js.map +7 -0
- package/build/esm/components/Paginator/Paginator.css +45 -0
- package/build/esm/components/Paginator/Paginator.css.map +7 -0
- package/build/esm/components/Paginator/Paginator.js +101 -0
- package/build/esm/components/Paginator/Paginator.js.map +7 -0
- package/build/esm/components/Paginator/index.js +7 -0
- package/build/esm/components/Paginator/index.js.map +7 -0
- package/build/esm/components/Scrollspy/Scrollspy.js +228 -0
- package/build/esm/components/Scrollspy/Scrollspy.js.map +7 -0
- package/build/esm/components/Scrollspy/index.js +3 -0
- package/build/esm/components/Scrollspy/index.js.map +7 -0
- package/build/esm/components/SearchBar/SearchBar.css +59 -0
- package/build/esm/components/SearchBar/SearchBar.css.map +7 -0
- package/build/esm/components/SearchBar/SearchBar.js +57 -0
- package/build/esm/components/SearchBar/SearchBar.js.map +7 -0
- package/build/esm/components/SearchBar/constants.js +18 -0
- package/build/esm/components/SearchBar/constants.js.map +7 -0
- package/build/esm/components/SearchBar/hooks.js +271 -0
- package/build/esm/components/SearchBar/hooks.js.map +7 -0
- package/build/esm/components/SearchBar/index.js +10 -0
- package/build/esm/components/SearchBar/index.js.map +7 -0
- package/build/esm/components/SearchBar/utils.js +77 -0
- package/build/esm/components/SearchBar/utils.js.map +7 -0
- package/build/esm/components/SearchBar/withHighlightedSearchWords.js +97 -0
- package/build/esm/components/SearchBar/withHighlightedSearchWords.js.map +7 -0
- package/build/esm/components/SearchItem/SearchItem.css +88 -0
- package/build/esm/components/SearchItem/SearchItem.css.map +7 -0
- package/build/esm/components/SearchItem/SearchItem.js +60 -0
- package/build/esm/components/SearchItem/SearchItem.js.map +7 -0
- package/build/esm/components/SearchItem/index.js +7 -0
- package/build/esm/components/SearchItem/index.js.map +7 -0
- package/build/esm/components/SearchPage/SearchPage.css +43 -0
- package/build/esm/components/SearchPage/SearchPage.css.map +7 -0
- package/build/esm/components/SearchPage/SearchPage.js +134 -0
- package/build/esm/components/SearchPage/SearchPage.js.map +7 -0
- package/build/esm/components/SearchPage/index.js +7 -0
- package/build/esm/components/SearchPage/index.js.map +7 -0
- package/build/esm/components/StageLabel/StageLabel.js +19 -0
- package/build/esm/components/StageLabel/StageLabel.js.map +7 -0
- package/build/esm/components/StageLabel/index.js +3 -0
- package/build/esm/components/StageLabel/index.js.map +7 -0
- package/build/esm/components/Subscribe/Subscribe.css +98 -0
- package/build/esm/components/Subscribe/Subscribe.css.map +7 -0
- package/build/esm/components/Subscribe/Subscribe.js +105 -0
- package/build/esm/components/Subscribe/Subscribe.js.map +7 -0
- package/build/esm/components/Subscribe/SubscribeSuccessPopup/SubscribeSuccessPopup.js +30 -0
- package/build/esm/components/Subscribe/SubscribeSuccessPopup/SubscribeSuccessPopup.js.map +7 -0
- package/build/esm/components/Subscribe/SubscribeSuccessPopup/index.js +6 -0
- package/build/esm/components/Subscribe/SubscribeSuccessPopup/index.js.map +7 -0
- package/build/esm/components/Subscribe/SubscribeVariantsPopup/SubscribeVariantsPopup.js +95 -0
- package/build/esm/components/Subscribe/SubscribeVariantsPopup/SubscribeVariantsPopup.js.map +7 -0
- package/build/esm/components/Subscribe/SubscribeVariantsPopup/index.js +6 -0
- package/build/esm/components/Subscribe/SubscribeVariantsPopup/index.js.map +7 -0
- package/build/esm/components/Subscribe/index.js +7 -0
- package/build/esm/components/Subscribe/index.js.map +7 -0
- package/build/esm/components/Subscribe/utils.js +13 -0
- package/build/esm/components/Subscribe/utils.js.map +7 -0
- package/build/esm/components/Text/Text.js +23 -0
- package/build/esm/components/Text/Text.js.map +7 -0
- package/build/esm/components/Text/index.js +3 -0
- package/build/esm/components/Text/index.js.map +7 -0
- package/build/esm/components/Toc/Toc.css +102 -0
- package/build/esm/components/Toc/Toc.css.map +7 -0
- package/build/esm/components/Toc/Toc.js +244 -0
- package/build/esm/components/Toc/Toc.js.map +7 -0
- package/build/esm/components/Toc/TocItemRegistry.js +60 -0
- package/build/esm/components/Toc/TocItemRegistry.js.map +7 -0
- package/build/esm/components/Toc/index.js +7 -0
- package/build/esm/components/Toc/index.js.map +7 -0
- package/build/esm/components/TocItem/TocItem.css +39 -0
- package/build/esm/components/TocItem/TocItem.css.map +7 -0
- package/build/esm/components/TocItem/TocItem.js +74 -0
- package/build/esm/components/TocItem/TocItem.js.map +7 -0
- package/build/esm/components/TocItem/index.js +7 -0
- package/build/esm/components/TocItem/index.js.map +7 -0
- package/build/esm/components/TocNavPanel/TocNavPanel.css +64 -0
- package/build/esm/components/TocNavPanel/TocNavPanel.css.map +7 -0
- package/build/esm/components/TocNavPanel/TocNavPanel.js +63 -0
- package/build/esm/components/TocNavPanel/TocNavPanel.js.map +7 -0
- package/build/esm/components/TocNavPanel/index.js +7 -0
- package/build/esm/components/TocNavPanel/index.js.map +7 -0
- package/build/esm/components/ToggleArrow/ToggleArrow.css +24 -0
- package/build/esm/components/ToggleArrow/ToggleArrow.css.map +7 -0
- package/build/esm/components/ToggleArrow/ToggleArrow.js +18 -0
- package/build/esm/components/ToggleArrow/ToggleArrow.js.map +7 -0
- package/build/esm/components/ToggleArrow/index.js +3 -0
- package/build/esm/components/ToggleArrow/index.js.map +7 -0
- package/build/esm/config/i18n.js +37 -0
- package/build/esm/config/i18n.js.map +7 -0
- package/build/esm/config/index.js +30 -0
- package/build/esm/config/index.js.map +7 -0
- package/build/esm/constants.js +25 -0
- package/build/esm/constants.js.map +7 -0
- package/build/esm/hooks/index.js +6 -0
- package/build/esm/hooks/index.js.map +7 -0
- package/build/esm/hooks/usePopper.js +62 -0
- package/build/esm/hooks/usePopper.js.map +7 -0
- package/build/esm/hooks/usePopupState.js +41 -0
- package/build/esm/hooks/usePopupState.js.map +7 -0
- package/build/esm/hooks/useTimer.js +23 -0
- package/build/esm/hooks/useTimer.js.map +7 -0
- package/build/esm/hooks/useTranslation.js +11 -0
- package/build/esm/hooks/useTranslation.js.map +7 -0
- package/build/esm/i18n/en.js +137 -0
- package/build/esm/i18n/en.js.map +7 -0
- package/build/esm/i18n/ru.js +137 -0
- package/build/esm/i18n/ru.js.map +7 -0
- package/build/esm/index.js +30 -0
- package/build/esm/index.js.map +7 -0
- package/build/esm/models/index.js +48 -0
- package/build/esm/models/index.js.map +7 -0
- package/build/esm/utils/index.js +88 -0
- package/build/esm/utils/index.js.map +7 -0
- package/build/index.css +197 -0
- package/build/index.css.map +7 -0
- package/build/themes/common/index.css +1170 -0
- package/build/themes/common/index.css.map +7 -0
- package/package.json +145 -0
|
@@ -0,0 +1,163 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __create = Object.create;
|
|
3
|
+
var __defProp = Object.defineProperty;
|
|
4
|
+
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
5
|
+
var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
6
|
+
var __getProtoOf = Object.getPrototypeOf;
|
|
7
|
+
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
8
|
+
var __export = (target, all) => {
|
|
9
|
+
for (var name in all)
|
|
10
|
+
__defProp(target, name, { get: all[name], enumerable: true });
|
|
11
|
+
};
|
|
12
|
+
var __copyProps = (to, from, except, desc) => {
|
|
13
|
+
if (from && typeof from === "object" || typeof from === "function") {
|
|
14
|
+
for (let key of __getOwnPropNames(from))
|
|
15
|
+
if (!__hasOwnProp.call(to, key) && key !== except)
|
|
16
|
+
__defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
|
|
17
|
+
}
|
|
18
|
+
return to;
|
|
19
|
+
};
|
|
20
|
+
var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
|
|
21
|
+
// If the importer is in node compatibility mode or this is not an ESM
|
|
22
|
+
// file that has been converted to a CommonJS file using a Babel-
|
|
23
|
+
// compatible transform (i.e. "__esModule" has not been set), then set
|
|
24
|
+
// "default" to the CommonJS "module.exports" for node compatibility.
|
|
25
|
+
isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target,
|
|
26
|
+
mod
|
|
27
|
+
));
|
|
28
|
+
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
|
|
29
|
+
|
|
30
|
+
// src/components/Feedback/Feedback.tsx
|
|
31
|
+
var Feedback_exports = {};
|
|
32
|
+
__export(Feedback_exports, {
|
|
33
|
+
FeedbackView: () => FeedbackView,
|
|
34
|
+
default: () => Feedback_default
|
|
35
|
+
});
|
|
36
|
+
module.exports = __toCommonJS(Feedback_exports);
|
|
37
|
+
var import_react = __toESM(require("react"));
|
|
38
|
+
var import_bem_cn_lite = __toESM(require("bem-cn-lite"));
|
|
39
|
+
var import_hooks = require("../../hooks");
|
|
40
|
+
var import_models = require("../../models");
|
|
41
|
+
var import_DislikeControl = __toESM(require("./controls/DislikeControl"));
|
|
42
|
+
var import_DislikeVariantsPopup = __toESM(require("./controls/DislikeVariantsPopup"));
|
|
43
|
+
var import_LikeControl = __toESM(require("./controls/LikeControl"));
|
|
44
|
+
var import_SuccessPopup = __toESM(require("./controls/SuccessPopup"));
|
|
45
|
+
var import_Feedback = require("./Feedback.css");
|
|
46
|
+
var b = (0, import_bem_cn_lite.default)("dc-feedback");
|
|
47
|
+
var FeedbackView = /* @__PURE__ */ ((FeedbackView2) => {
|
|
48
|
+
FeedbackView2["Wide"] = "wide";
|
|
49
|
+
FeedbackView2["Regular"] = "regular";
|
|
50
|
+
return FeedbackView2;
|
|
51
|
+
})(FeedbackView || {});
|
|
52
|
+
var getInnerState = (isLiked, isDisliked) => {
|
|
53
|
+
switch (true) {
|
|
54
|
+
case Boolean(isDisliked):
|
|
55
|
+
return import_models.FeedbackType.dislike;
|
|
56
|
+
case Boolean(isLiked):
|
|
57
|
+
return import_models.FeedbackType.like;
|
|
58
|
+
default:
|
|
59
|
+
return import_models.FeedbackType.indeterminate;
|
|
60
|
+
}
|
|
61
|
+
};
|
|
62
|
+
var ControlsLayout = ({ view, children }) => {
|
|
63
|
+
const { t } = (0, import_hooks.useTranslation)("feedback");
|
|
64
|
+
if (view === "regular" /* Regular */) {
|
|
65
|
+
return /* @__PURE__ */ import_react.default.createElement(import_react.default.Fragment, null, children);
|
|
66
|
+
}
|
|
67
|
+
return /* @__PURE__ */ import_react.default.createElement("div", { className: b("container", { view }) }, /* @__PURE__ */ import_react.default.createElement("div", { className: b("container-row", { view }) }, /* @__PURE__ */ import_react.default.createElement("h3", { className: b("title", { view }) }, t("main-question")), /* @__PURE__ */ import_react.default.createElement("div", { className: b("controls", { view }) }, children)));
|
|
68
|
+
};
|
|
69
|
+
var Feedback = (props) => {
|
|
70
|
+
const {
|
|
71
|
+
isLiked = false,
|
|
72
|
+
isDisliked = false,
|
|
73
|
+
onSendFeedback,
|
|
74
|
+
view = "regular" /* Regular */
|
|
75
|
+
} = props;
|
|
76
|
+
const likeControlRef = (0, import_react.useRef)(null);
|
|
77
|
+
const dislikeControlRef = (0, import_react.useRef)(null);
|
|
78
|
+
const [innerState, setInnerState] = (0, import_react.useState)(getInnerState(isLiked, isDisliked));
|
|
79
|
+
(0, import_react.useEffect)(() => {
|
|
80
|
+
setInnerState(getInnerState(isLiked, isDisliked));
|
|
81
|
+
}, [isLiked, isDisliked, setInnerState]);
|
|
82
|
+
const likeSuccessPopup = (0, import_hooks.usePopupState)({ autoclose: 3e3 });
|
|
83
|
+
const dislikeSuccessPopup = (0, import_hooks.usePopupState)({ autoclose: 3e3 });
|
|
84
|
+
const dislikeVariantsPopup = (0, import_hooks.usePopupState)();
|
|
85
|
+
const hideFeedbackPopups = (0, import_react.useCallback)(() => {
|
|
86
|
+
likeSuccessPopup.close();
|
|
87
|
+
dislikeSuccessPopup.close();
|
|
88
|
+
dislikeVariantsPopup.close();
|
|
89
|
+
}, [likeSuccessPopup, dislikeSuccessPopup, dislikeVariantsPopup]);
|
|
90
|
+
const onChangeLike = (0, import_react.useCallback)(() => {
|
|
91
|
+
hideFeedbackPopups();
|
|
92
|
+
if (innerState === import_models.FeedbackType.like) {
|
|
93
|
+
setInnerState(import_models.FeedbackType.indeterminate);
|
|
94
|
+
onSendFeedback({ type: import_models.FeedbackType.indeterminate });
|
|
95
|
+
} else {
|
|
96
|
+
setInnerState(import_models.FeedbackType.like);
|
|
97
|
+
onSendFeedback({ type: import_models.FeedbackType.like });
|
|
98
|
+
likeSuccessPopup.open();
|
|
99
|
+
}
|
|
100
|
+
}, [onSendFeedback, setInnerState, innerState, likeSuccessPopup, hideFeedbackPopups]);
|
|
101
|
+
const onChangeDislike = (0, import_react.useCallback)(() => {
|
|
102
|
+
hideFeedbackPopups();
|
|
103
|
+
if (innerState === import_models.FeedbackType.dislike) {
|
|
104
|
+
setInnerState(import_models.FeedbackType.indeterminate);
|
|
105
|
+
onSendFeedback({ type: import_models.FeedbackType.indeterminate });
|
|
106
|
+
} else {
|
|
107
|
+
dislikeVariantsPopup.open();
|
|
108
|
+
}
|
|
109
|
+
}, [onSendFeedback, setInnerState, innerState, dislikeVariantsPopup, hideFeedbackPopups]);
|
|
110
|
+
const onSendDislikeInformation = (0, import_react.useCallback)(
|
|
111
|
+
(data) => {
|
|
112
|
+
hideFeedbackPopups();
|
|
113
|
+
dislikeSuccessPopup.open();
|
|
114
|
+
setInnerState(import_models.FeedbackType.dislike);
|
|
115
|
+
onSendFeedback({ type: import_models.FeedbackType.dislike, ...data });
|
|
116
|
+
},
|
|
117
|
+
[onSendFeedback, setInnerState, dislikeSuccessPopup, hideFeedbackPopups]
|
|
118
|
+
);
|
|
119
|
+
return /* @__PURE__ */ import_react.default.createElement(import_react.default.Fragment, null, /* @__PURE__ */ import_react.default.createElement(ControlsLayout, { view }, /* @__PURE__ */ import_react.default.createElement(
|
|
120
|
+
import_LikeControl.default,
|
|
121
|
+
{
|
|
122
|
+
ref: likeControlRef,
|
|
123
|
+
view,
|
|
124
|
+
onClick: onChangeLike,
|
|
125
|
+
isLiked: innerState === import_models.FeedbackType.like
|
|
126
|
+
}
|
|
127
|
+
), /* @__PURE__ */ import_react.default.createElement(
|
|
128
|
+
import_DislikeControl.default,
|
|
129
|
+
{
|
|
130
|
+
ref: dislikeControlRef,
|
|
131
|
+
view,
|
|
132
|
+
onClick: onChangeDislike,
|
|
133
|
+
isDisliked: innerState === import_models.FeedbackType.dislike
|
|
134
|
+
}
|
|
135
|
+
)), likeControlRef.current && /* @__PURE__ */ import_react.default.createElement(
|
|
136
|
+
import_SuccessPopup.default,
|
|
137
|
+
{
|
|
138
|
+
visible: likeSuccessPopup.visible,
|
|
139
|
+
anchor: likeControlRef,
|
|
140
|
+
view,
|
|
141
|
+
onOutsideClick: hideFeedbackPopups
|
|
142
|
+
}
|
|
143
|
+
), dislikeControlRef.current && /* @__PURE__ */ import_react.default.createElement(
|
|
144
|
+
import_SuccessPopup.default,
|
|
145
|
+
{
|
|
146
|
+
visible: dislikeSuccessPopup.visible,
|
|
147
|
+
anchor: dislikeControlRef,
|
|
148
|
+
view,
|
|
149
|
+
onOutsideClick: hideFeedbackPopups
|
|
150
|
+
}
|
|
151
|
+
), dislikeControlRef.current && /* @__PURE__ */ import_react.default.createElement(
|
|
152
|
+
import_DislikeVariantsPopup.default,
|
|
153
|
+
{
|
|
154
|
+
visible: dislikeVariantsPopup.visible,
|
|
155
|
+
anchor: dislikeControlRef,
|
|
156
|
+
view,
|
|
157
|
+
onSubmit: onSendDislikeInformation,
|
|
158
|
+
onOutsideClick: hideFeedbackPopups
|
|
159
|
+
}
|
|
160
|
+
));
|
|
161
|
+
};
|
|
162
|
+
var Feedback_default = Feedback;
|
|
163
|
+
//# sourceMappingURL=Feedback.js.map
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../../../../src/components/Feedback/Feedback.tsx"],
|
|
4
|
+
"sourcesContent": ["import React, {PropsWithChildren, useCallback, useEffect, useRef, useState} from 'react';\n\nimport block from 'bem-cn-lite';\n\nimport {usePopupState, useTranslation} from '../../hooks';\nimport {FeedbackSendData, FeedbackType} from '../../models';\n\nimport DislikeControl from './controls/DislikeControl';\nimport DislikeVariantsPopup, {FormData} from './controls/DislikeVariantsPopup';\nimport LikeControl from './controls/LikeControl';\nimport SuccessPopup from './controls/SuccessPopup';\n\nimport './Feedback.scss';\n\nconst b = block('dc-feedback');\n\nexport enum FeedbackView {\n Wide = 'wide',\n Regular = 'regular',\n}\n\nexport interface FeedbackProps {\n isLiked?: boolean;\n isDisliked?: boolean;\n onSendFeedback: (data: FeedbackSendData) => void;\n view?: FeedbackView;\n}\n\nconst getInnerState = (isLiked: boolean, isDisliked: boolean) => {\n switch (true) {\n case Boolean(isDisliked):\n return FeedbackType.dislike;\n case Boolean(isLiked):\n return FeedbackType.like;\n default:\n return FeedbackType.indeterminate;\n }\n};\n\nconst ControlsLayout: React.FC<PropsWithChildren<{view: FeedbackView}>> = ({view, children}) => {\n const {t} = useTranslation('feedback');\n\n if (view === FeedbackView.Regular) {\n return <React.Fragment>{children}</React.Fragment>;\n }\n\n return (\n <div className={b('container', {view})}>\n <div className={b('container-row', {view})}>\n <h3 className={b('title', {view})}>{t<string>('main-question')}</h3>\n <div className={b('controls', {view})}>{children}</div>\n </div>\n </div>\n );\n};\n\nconst Feedback: React.FC<FeedbackProps> = (props) => {\n const {\n isLiked = false,\n isDisliked = false,\n onSendFeedback,\n view = FeedbackView.Regular,\n } = props;\n\n const likeControlRef = useRef<HTMLButtonElement | null>(null);\n const dislikeControlRef = useRef<HTMLButtonElement | null>(null);\n\n const [innerState, setInnerState] = useState<FeedbackType>(getInnerState(isLiked, isDisliked));\n useEffect(() => {\n setInnerState(getInnerState(isLiked, isDisliked));\n }, [isLiked, isDisliked, setInnerState]);\n\n const likeSuccessPopup = usePopupState({autoclose: 3000});\n const dislikeSuccessPopup = usePopupState({autoclose: 3000});\n const dislikeVariantsPopup = usePopupState();\n\n const hideFeedbackPopups = useCallback(() => {\n likeSuccessPopup.close();\n dislikeSuccessPopup.close();\n dislikeVariantsPopup.close();\n }, [likeSuccessPopup, dislikeSuccessPopup, dislikeVariantsPopup]);\n\n const onChangeLike = useCallback(() => {\n hideFeedbackPopups();\n\n if (innerState === FeedbackType.like) {\n setInnerState(FeedbackType.indeterminate);\n onSendFeedback({type: FeedbackType.indeterminate});\n } else {\n setInnerState(FeedbackType.like);\n onSendFeedback({type: FeedbackType.like});\n likeSuccessPopup.open();\n }\n }, [onSendFeedback, setInnerState, innerState, likeSuccessPopup, hideFeedbackPopups]);\n\n const onChangeDislike = useCallback(() => {\n hideFeedbackPopups();\n\n if (innerState === FeedbackType.dislike) {\n setInnerState(FeedbackType.indeterminate);\n onSendFeedback({type: FeedbackType.indeterminate});\n } else {\n dislikeVariantsPopup.open();\n }\n }, [onSendFeedback, setInnerState, innerState, dislikeVariantsPopup, hideFeedbackPopups]);\n\n const onSendDislikeInformation = useCallback(\n (data: FormData) => {\n hideFeedbackPopups();\n dislikeSuccessPopup.open();\n setInnerState(FeedbackType.dislike);\n onSendFeedback({type: FeedbackType.dislike, ...data});\n },\n [onSendFeedback, setInnerState, dislikeSuccessPopup, hideFeedbackPopups],\n );\n\n return (\n <React.Fragment>\n <ControlsLayout view={view}>\n <LikeControl\n ref={likeControlRef}\n view={view}\n onClick={onChangeLike}\n isLiked={innerState === FeedbackType.like}\n />\n <DislikeControl\n ref={dislikeControlRef}\n view={view}\n onClick={onChangeDislike}\n isDisliked={innerState === FeedbackType.dislike}\n />\n </ControlsLayout>\n {likeControlRef.current && (\n <SuccessPopup\n visible={likeSuccessPopup.visible}\n anchor={likeControlRef}\n view={view}\n onOutsideClick={hideFeedbackPopups}\n />\n )}\n {dislikeControlRef.current && (\n <SuccessPopup\n visible={dislikeSuccessPopup.visible}\n anchor={dislikeControlRef}\n view={view}\n onOutsideClick={hideFeedbackPopups}\n />\n )}\n {dislikeControlRef.current && (\n <DislikeVariantsPopup\n visible={dislikeVariantsPopup.visible}\n anchor={dislikeControlRef}\n view={view}\n onSubmit={onSendDislikeInformation}\n onOutsideClick={hideFeedbackPopups}\n />\n )}\n </React.Fragment>\n );\n};\n\nexport default Feedback;\n"],
|
|
5
|
+
"mappings": "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",
|
|
6
|
+
"names": ["block", "FeedbackView", "React", "LikeControl", "DislikeControl", "SuccessPopup", "DislikeVariantsPopup"]
|
|
7
|
+
}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import React from 'react';
|
|
2
|
+
import { FeedbackView } from '../Feedback';
|
|
3
|
+
type DislikeControlProps = {
|
|
4
|
+
isVerticalView?: boolean | undefined;
|
|
5
|
+
isDisliked: boolean | undefined;
|
|
6
|
+
className?: string | undefined;
|
|
7
|
+
view: FeedbackView | undefined;
|
|
8
|
+
onClick: () => void;
|
|
9
|
+
};
|
|
10
|
+
declare const DislikeControl: React.MemoExoticComponent<React.ForwardRefExoticComponent<DislikeControlProps & React.RefAttributes<HTMLButtonElement>>>;
|
|
11
|
+
export default DislikeControl;
|
|
@@ -0,0 +1,69 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __create = Object.create;
|
|
3
|
+
var __defProp = Object.defineProperty;
|
|
4
|
+
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
5
|
+
var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
6
|
+
var __getProtoOf = Object.getPrototypeOf;
|
|
7
|
+
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
8
|
+
var __export = (target, all) => {
|
|
9
|
+
for (var name in all)
|
|
10
|
+
__defProp(target, name, { get: all[name], enumerable: true });
|
|
11
|
+
};
|
|
12
|
+
var __copyProps = (to, from, except, desc) => {
|
|
13
|
+
if (from && typeof from === "object" || typeof from === "function") {
|
|
14
|
+
for (let key of __getOwnPropNames(from))
|
|
15
|
+
if (!__hasOwnProp.call(to, key) && key !== except)
|
|
16
|
+
__defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
|
|
17
|
+
}
|
|
18
|
+
return to;
|
|
19
|
+
};
|
|
20
|
+
var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
|
|
21
|
+
// If the importer is in node compatibility mode or this is not an ESM
|
|
22
|
+
// file that has been converted to a CommonJS file using a Babel-
|
|
23
|
+
// compatible transform (i.e. "__esModule" has not been set), then set
|
|
24
|
+
// "default" to the CommonJS "module.exports" for node compatibility.
|
|
25
|
+
isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target,
|
|
26
|
+
mod
|
|
27
|
+
));
|
|
28
|
+
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
|
|
29
|
+
|
|
30
|
+
// src/components/Feedback/controls/DislikeControl.tsx
|
|
31
|
+
var DislikeControl_exports = {};
|
|
32
|
+
__export(DislikeControl_exports, {
|
|
33
|
+
default: () => DislikeControl_default
|
|
34
|
+
});
|
|
35
|
+
module.exports = __toCommonJS(DislikeControl_exports);
|
|
36
|
+
var import_react = __toESM(require("react"));
|
|
37
|
+
var import_uikit = require("@gravity-ui/uikit");
|
|
38
|
+
var import_bem_cn_lite = __toESM(require("bem-cn-lite"));
|
|
39
|
+
var import_hooks = require("../../../hooks");
|
|
40
|
+
var import_Control = require("../../Control");
|
|
41
|
+
var import_ControlsLayout = require("../../Controls/ControlsLayout");
|
|
42
|
+
var import_Feedback = require("../Feedback");
|
|
43
|
+
var import_thumbs_down_fill = __toESM(require("@gravity-ui/icons/svgs/thumbs-down-fill.svg"));
|
|
44
|
+
var import_thumbs_down = __toESM(require("@gravity-ui/icons/svgs/thumbs-down.svg"));
|
|
45
|
+
var b = (0, import_bem_cn_lite.default)("dc-feedback");
|
|
46
|
+
var DislikeControl = (0, import_react.memo)(
|
|
47
|
+
(0, import_react.forwardRef)(({ isDisliked, view, onClick }, ref) => {
|
|
48
|
+
const { t } = (0, import_hooks.useTranslation)("feedback");
|
|
49
|
+
const { isVerticalView, controlClassName } = (0, import_react.useContext)(import_ControlsLayout.ControlsLayoutContext);
|
|
50
|
+
const tooltipText = isDisliked ? t("cancel-dislike-text") : t("dislike-text");
|
|
51
|
+
if (view === import_Feedback.FeedbackView.Wide) {
|
|
52
|
+
return /* @__PURE__ */ import_react.default.createElement(import_uikit.Button, { view: "normal", ref, onClick, className: b("control", { view }) }, /* @__PURE__ */ import_react.default.createElement(import_uikit.Button.Icon, null, /* @__PURE__ */ import_react.default.createElement(import_uikit.Icon, { data: isDisliked ? import_thumbs_down_fill.default : import_thumbs_down.default, size: 14 })), t("button-dislike-text"));
|
|
53
|
+
}
|
|
54
|
+
return /* @__PURE__ */ import_react.default.createElement(
|
|
55
|
+
import_Control.Control,
|
|
56
|
+
{
|
|
57
|
+
onClick,
|
|
58
|
+
className: b("control", { view }, controlClassName),
|
|
59
|
+
isVerticalView,
|
|
60
|
+
tooltipText,
|
|
61
|
+
ref,
|
|
62
|
+
icon: (args) => /* @__PURE__ */ import_react.default.createElement(import_uikit.Icon, { data: isDisliked ? import_thumbs_down_fill.default : import_thumbs_down.default, ...args })
|
|
63
|
+
}
|
|
64
|
+
);
|
|
65
|
+
})
|
|
66
|
+
);
|
|
67
|
+
DislikeControl.displayName = "DislikeControl";
|
|
68
|
+
var DislikeControl_default = DislikeControl;
|
|
69
|
+
//# sourceMappingURL=DislikeControl.js.map
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../../../../../src/components/Feedback/controls/DislikeControl.tsx"],
|
|
4
|
+
"sourcesContent": ["import React, {forwardRef, memo, useContext} from 'react';\n\nimport {Button, Icon} from '@gravity-ui/uikit';\nimport block from 'bem-cn-lite';\n\nimport {useTranslation} from '../../../hooks';\nimport {Control} from '../../Control';\nimport {ControlsLayoutContext} from '../../Controls/ControlsLayout';\nimport {FeedbackView} from '../Feedback';\n\nimport DislikeActiveIcon from '@gravity-ui/icons/svgs/thumbs-down-fill.svg';\nimport DislikeIcon from '@gravity-ui/icons/svgs/thumbs-down.svg';\n\ntype DislikeControlProps = {\n isVerticalView?: boolean | undefined;\n isDisliked: boolean | undefined;\n className?: string | undefined;\n view: FeedbackView | undefined;\n onClick: () => void;\n};\n\nconst b = block('dc-feedback');\n\nconst DislikeControl = memo(\n forwardRef<HTMLButtonElement, DislikeControlProps>(({isDisliked, view, onClick}, ref) => {\n const {t} = useTranslation('feedback');\n const {isVerticalView, controlClassName} = useContext(ControlsLayoutContext);\n const tooltipText = isDisliked ? t('cancel-dislike-text') : t('dislike-text');\n\n if (view === FeedbackView.Wide) {\n return (\n <Button view=\"normal\" ref={ref} onClick={onClick} className={b('control', {view})}>\n <Button.Icon>\n <Icon data={isDisliked ? DislikeActiveIcon : DislikeIcon} size={14} />\n </Button.Icon>\n {t<string>('button-dislike-text')}\n </Button>\n );\n }\n\n return (\n <Control\n onClick={onClick}\n className={b('control', {view}, controlClassName)}\n isVerticalView={isVerticalView}\n tooltipText={tooltipText}\n ref={ref}\n icon={(args) => (\n <Icon data={isDisliked ? DislikeActiveIcon : DislikeIcon} {...args} />\n )}\n />\n );\n }),\n);\n\nDislikeControl.displayName = 'DislikeControl';\n\nexport default DislikeControl;\n"],
|
|
5
|
+
"mappings": ";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,mBAAkD;AAElD,mBAA2B;AAC3B,yBAAkB;AAElB,mBAA6B;AAC7B,qBAAsB;AACtB,4BAAoC;AACpC,sBAA2B;AAE3B,8BAA8B;AAC9B,yBAAwB;AAUxB,IAAM,QAAI,mBAAAA,SAAM,aAAa;AAE7B,IAAM,qBAAiB;AAAA,MACnB,yBAAmD,CAAC,EAAC,YAAY,MAAM,QAAO,GAAG,QAAQ;AACrF,UAAM,EAAC,EAAC,QAAI,6BAAe,UAAU;AACrC,UAAM,EAAC,gBAAgB,iBAAgB,QAAI,yBAAW,2CAAqB;AAC3E,UAAM,cAAc,aAAa,EAAE,qBAAqB,IAAI,EAAE,cAAc;AAE5E,QAAI,SAAS,6BAAa,MAAM;AAC5B,aACI,6BAAAC,QAAA,cAAC,uBAAO,MAAK,UAAS,KAAU,SAAkB,WAAW,EAAE,WAAW,EAAC,KAAI,CAAC,KAC5E,6BAAAA,QAAA,cAAC,oBAAO,MAAP,MACG,6BAAAA,QAAA,cAAC,qBAAK,MAAM,aAAa,wBAAAC,UAAoB,mBAAAC,SAAa,MAAM,IAAI,CACxE,GACC,EAAU,qBAAqB,CACpC;AAAA,IAER;AAEA,WACI,6BAAAF,QAAA;AAAA,MAAC;AAAA;AAAA,QACG;AAAA,QACA,WAAW,EAAE,WAAW,EAAC,KAAI,GAAG,gBAAgB;AAAA,QAChD;AAAA,QACA;AAAA,QACA;AAAA,QACA,MAAM,CAAC,SACH,6BAAAA,QAAA,cAAC,qBAAK,MAAM,aAAa,wBAAAC,UAAoB,mBAAAC,SAAc,GAAG,MAAM;AAAA;AAAA,IAE5E;AAAA,EAER,CAAC;AACL;AAEA,eAAe,cAAc;AAE7B,IAAO,yBAAQ;",
|
|
6
|
+
"names": ["block", "React", "DislikeActiveIcon", "DislikeIcon"]
|
|
7
|
+
}
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
import React, { RefObject } from 'react';
|
|
2
|
+
import { FeedbackView } from '../Feedback';
|
|
3
|
+
export interface FeedbackCheckboxes {
|
|
4
|
+
[key: string]: boolean;
|
|
5
|
+
}
|
|
6
|
+
export type FormData = {
|
|
7
|
+
comment: string;
|
|
8
|
+
answers: string[];
|
|
9
|
+
};
|
|
10
|
+
type DislikeVariantsPopupProps = {
|
|
11
|
+
view: FeedbackView;
|
|
12
|
+
visible: boolean;
|
|
13
|
+
anchor: RefObject<HTMLButtonElement>;
|
|
14
|
+
onOutsideClick: () => void;
|
|
15
|
+
onSubmit: (data: FormData) => void;
|
|
16
|
+
};
|
|
17
|
+
declare const DislikeVariantsPopup: React.FC<DislikeVariantsPopupProps>;
|
|
18
|
+
export default DislikeVariantsPopup;
|
|
@@ -0,0 +1,150 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __create = Object.create;
|
|
3
|
+
var __defProp = Object.defineProperty;
|
|
4
|
+
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
5
|
+
var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
6
|
+
var __getProtoOf = Object.getPrototypeOf;
|
|
7
|
+
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
8
|
+
var __export = (target, all) => {
|
|
9
|
+
for (var name in all)
|
|
10
|
+
__defProp(target, name, { get: all[name], enumerable: true });
|
|
11
|
+
};
|
|
12
|
+
var __copyProps = (to, from, except, desc) => {
|
|
13
|
+
if (from && typeof from === "object" || typeof from === "function") {
|
|
14
|
+
for (let key of __getOwnPropNames(from))
|
|
15
|
+
if (!__hasOwnProp.call(to, key) && key !== except)
|
|
16
|
+
__defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
|
|
17
|
+
}
|
|
18
|
+
return to;
|
|
19
|
+
};
|
|
20
|
+
var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
|
|
21
|
+
// If the importer is in node compatibility mode or this is not an ESM
|
|
22
|
+
// file that has been converted to a CommonJS file using a Babel-
|
|
23
|
+
// compatible transform (i.e. "__esModule" has not been set), then set
|
|
24
|
+
// "default" to the CommonJS "module.exports" for node compatibility.
|
|
25
|
+
isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target,
|
|
26
|
+
mod
|
|
27
|
+
));
|
|
28
|
+
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
|
|
29
|
+
|
|
30
|
+
// src/components/Feedback/controls/DislikeVariantsPopup.tsx
|
|
31
|
+
var DislikeVariantsPopup_exports = {};
|
|
32
|
+
__export(DislikeVariantsPopup_exports, {
|
|
33
|
+
default: () => DislikeVariantsPopup_default
|
|
34
|
+
});
|
|
35
|
+
module.exports = __toCommonJS(DislikeVariantsPopup_exports);
|
|
36
|
+
var import_react = __toESM(require("react"));
|
|
37
|
+
var import_uikit = require("@gravity-ui/uikit");
|
|
38
|
+
var import_bem_cn_lite = __toESM(require("bem-cn-lite"));
|
|
39
|
+
var import_hooks = require("../../../hooks");
|
|
40
|
+
var import_ControlsLayout = require("../../Controls/ControlsLayout");
|
|
41
|
+
var import_Feedback = require("../Feedback");
|
|
42
|
+
var b = (0, import_bem_cn_lite.default)("dc-feedback");
|
|
43
|
+
var DislikeVariantsList = (0, import_react.memo)(
|
|
44
|
+
(0, import_react.forwardRef)((_props, ref) => {
|
|
45
|
+
const { t, i18n } = (0, import_hooks.useTranslation)("feedback-variants");
|
|
46
|
+
const variants = i18n.getResourceBundle(i18n.language, "feedback-variants");
|
|
47
|
+
const [checked, setChecked] = (0, import_react.useState)({});
|
|
48
|
+
(0, import_react.useImperativeHandle)(ref, () => {
|
|
49
|
+
return {
|
|
50
|
+
data() {
|
|
51
|
+
return Object.keys(checked).filter((key) => Boolean(checked[key])).map((key) => variants[key]);
|
|
52
|
+
},
|
|
53
|
+
clean() {
|
|
54
|
+
setChecked({});
|
|
55
|
+
}
|
|
56
|
+
};
|
|
57
|
+
});
|
|
58
|
+
if (!Object.keys(variants).length) {
|
|
59
|
+
return null;
|
|
60
|
+
}
|
|
61
|
+
return /* @__PURE__ */ import_react.default.createElement("div", { className: b("variants") }, Object.keys(variants).map((variant) => /* @__PURE__ */ import_react.default.createElement(
|
|
62
|
+
import_uikit.Checkbox,
|
|
63
|
+
{
|
|
64
|
+
key: variant,
|
|
65
|
+
className: b("variant"),
|
|
66
|
+
checked: checked[variant],
|
|
67
|
+
onUpdate: (state) => {
|
|
68
|
+
setChecked({
|
|
69
|
+
...checked,
|
|
70
|
+
[variant]: state
|
|
71
|
+
});
|
|
72
|
+
},
|
|
73
|
+
content: t(variant)
|
|
74
|
+
}
|
|
75
|
+
)));
|
|
76
|
+
})
|
|
77
|
+
);
|
|
78
|
+
DislikeVariantsList.displayName = "DislikeVariantsList";
|
|
79
|
+
var DislikeVariantsInput = (0, import_react.memo)(
|
|
80
|
+
(0, import_react.forwardRef)((_props, ref) => {
|
|
81
|
+
const { t } = (0, import_hooks.useTranslation)("feedback");
|
|
82
|
+
const [feedbackComment, setFeedbackComment] = (0, import_react.useState)("");
|
|
83
|
+
const onChange = (0, import_react.useCallback)((event) => {
|
|
84
|
+
setFeedbackComment(event.target.value);
|
|
85
|
+
}, []);
|
|
86
|
+
(0, import_react.useImperativeHandle)(ref, () => {
|
|
87
|
+
return {
|
|
88
|
+
data() {
|
|
89
|
+
return feedbackComment;
|
|
90
|
+
},
|
|
91
|
+
clean() {
|
|
92
|
+
setFeedbackComment("");
|
|
93
|
+
}
|
|
94
|
+
};
|
|
95
|
+
});
|
|
96
|
+
return /* @__PURE__ */ import_react.default.createElement("div", { className: b("textarea") }, /* @__PURE__ */ import_react.default.createElement(
|
|
97
|
+
import_uikit.TextArea,
|
|
98
|
+
{
|
|
99
|
+
size: "m",
|
|
100
|
+
rows: 6,
|
|
101
|
+
placeholder: t("comment-placeholder"),
|
|
102
|
+
hasClear: true,
|
|
103
|
+
value: feedbackComment,
|
|
104
|
+
onChange
|
|
105
|
+
}
|
|
106
|
+
));
|
|
107
|
+
})
|
|
108
|
+
);
|
|
109
|
+
DislikeVariantsInput.displayName = "DislikeVariantsInput";
|
|
110
|
+
var DislikeVariantsPopup = (0, import_react.memo)(
|
|
111
|
+
({ anchor, visible, view, onOutsideClick, onSubmit }) => {
|
|
112
|
+
const { t } = (0, import_hooks.useTranslation)("feedback");
|
|
113
|
+
const { isVerticalView } = (0, import_react.useContext)(import_ControlsLayout.ControlsLayoutContext);
|
|
114
|
+
const position = (0, import_react.useMemo)(() => {
|
|
115
|
+
if (!view || view === import_Feedback.FeedbackView.Regular) {
|
|
116
|
+
return isVerticalView ? import_hooks.PopperPosition.LEFT_START : import_hooks.PopperPosition.BOTTOM_END;
|
|
117
|
+
}
|
|
118
|
+
return import_hooks.PopperPosition.RIGHT;
|
|
119
|
+
}, [isVerticalView, view]);
|
|
120
|
+
const feedbackComment = (0, import_react.useRef)(null);
|
|
121
|
+
const feedbackCheckboxes = (0, import_react.useRef)(null);
|
|
122
|
+
const onFormSubmit = (0, import_react.useCallback)(
|
|
123
|
+
(event) => {
|
|
124
|
+
event.preventDefault();
|
|
125
|
+
onSubmit({
|
|
126
|
+
comment: feedbackComment.current?.data() || "",
|
|
127
|
+
answers: feedbackCheckboxes.current?.data() || []
|
|
128
|
+
});
|
|
129
|
+
feedbackComment.current?.clean();
|
|
130
|
+
feedbackCheckboxes.current?.clean();
|
|
131
|
+
},
|
|
132
|
+
[onSubmit]
|
|
133
|
+
);
|
|
134
|
+
return /* @__PURE__ */ import_react.default.createElement(
|
|
135
|
+
import_uikit.Popup,
|
|
136
|
+
{
|
|
137
|
+
anchorRef: anchor,
|
|
138
|
+
open: visible,
|
|
139
|
+
onOutsideClick,
|
|
140
|
+
contentClassName: b("variants-popup", { view }),
|
|
141
|
+
placement: position
|
|
142
|
+
},
|
|
143
|
+
/* @__PURE__ */ import_react.default.createElement("h3", { className: b("popup-title") }, t("dislike-variants-title")),
|
|
144
|
+
/* @__PURE__ */ import_react.default.createElement("form", { onSubmit: onFormSubmit }, /* @__PURE__ */ import_react.default.createElement(DislikeVariantsList, { ref: feedbackCheckboxes }), /* @__PURE__ */ import_react.default.createElement(DislikeVariantsInput, { ref: feedbackComment }), /* @__PURE__ */ import_react.default.createElement("div", { className: b("variants-actions") }, /* @__PURE__ */ import_react.default.createElement(import_uikit.Button, { view: "action", className: b("variants-action"), type: "submit" }, t("send-action-text"))))
|
|
145
|
+
);
|
|
146
|
+
}
|
|
147
|
+
);
|
|
148
|
+
DislikeVariantsPopup.displayName = "FeedbackDislikeVariantsPopup";
|
|
149
|
+
var DislikeVariantsPopup_default = DislikeVariantsPopup;
|
|
150
|
+
//# sourceMappingURL=DislikeVariantsPopup.js.map
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../../../../../src/components/Feedback/controls/DislikeVariantsPopup.tsx"],
|
|
4
|
+
"sourcesContent": ["import React, {\n RefObject,\n SyntheticEvent,\n forwardRef,\n memo,\n useCallback,\n useContext,\n useImperativeHandle,\n useMemo,\n useRef,\n useState,\n} from 'react';\n\nimport {Button, Checkbox, Popup, TextArea} from '@gravity-ui/uikit';\nimport block from 'bem-cn-lite';\n\nimport {PopperPosition, useTranslation} from '../../../hooks';\nimport {ControlsLayoutContext} from '../../Controls/ControlsLayout';\nimport {FeedbackView} from '../Feedback';\n\nexport interface FeedbackCheckboxes {\n [key: string]: boolean;\n}\n\nconst b = block('dc-feedback');\n\nconst DislikeVariantsList = memo(\n forwardRef<FormPart<string[]>>((_props, ref) => {\n const {t, i18n} = useTranslation('feedback-variants');\n const variants = i18n.getResourceBundle(i18n.language, 'feedback-variants');\n const [checked, setChecked] = useState({} as FeedbackCheckboxes);\n\n useImperativeHandle(ref, () => {\n return {\n data() {\n return Object.keys(checked)\n .filter((key) => Boolean(checked[key]))\n .map((key) => variants[key]);\n },\n\n clean() {\n setChecked({});\n },\n };\n });\n\n if (!Object.keys(variants).length) {\n return null;\n }\n\n return (\n <div className={b('variants')}>\n {Object.keys(variants).map((variant) => (\n <Checkbox\n key={variant}\n className={b('variant')}\n checked={checked[variant]}\n // TODO: fix uikit API - onUpdate(value, key)\n onUpdate={(state) => {\n setChecked({\n ...checked,\n [variant]: state,\n });\n }}\n content={t<string>(variant)}\n />\n ))}\n </div>\n );\n }),\n);\n\nDislikeVariantsList.displayName = 'DislikeVariantsList';\n\nconst DislikeVariantsInput = memo(\n forwardRef<FormPart<string>>((_props, ref) => {\n const {t} = useTranslation('feedback');\n const [feedbackComment, setFeedbackComment] = useState('');\n const onChange = useCallback((event: SyntheticEvent) => {\n setFeedbackComment((event.target as HTMLTextAreaElement).value);\n }, []);\n\n useImperativeHandle(ref, () => {\n return {\n data() {\n return feedbackComment;\n },\n\n clean() {\n setFeedbackComment('');\n },\n };\n });\n\n return (\n <div className={b('textarea')}>\n <TextArea\n size=\"m\"\n rows={6}\n placeholder={t('comment-placeholder')}\n hasClear\n value={feedbackComment}\n onChange={onChange}\n />\n </div>\n );\n }),\n);\n\nDislikeVariantsInput.displayName = 'DislikeVariantsInput';\n\ntype FormPart<T> = {\n data(): T;\n clean(): void;\n};\n\nexport type FormData = {\n comment: string;\n answers: string[];\n};\n\ntype DislikeVariantsPopupProps = {\n view: FeedbackView;\n visible: boolean;\n anchor: RefObject<HTMLButtonElement>;\n onOutsideClick: () => void;\n onSubmit: (data: FormData) => void;\n};\n\nconst DislikeVariantsPopup: React.FC<DislikeVariantsPopupProps> = memo(\n ({anchor, visible, view, onOutsideClick, onSubmit}) => {\n const {t} = useTranslation('feedback');\n const {isVerticalView} = useContext(ControlsLayoutContext);\n const position = useMemo(() => {\n if (!view || view === FeedbackView.Regular) {\n return isVerticalView ? PopperPosition.LEFT_START : PopperPosition.BOTTOM_END;\n }\n\n return PopperPosition.RIGHT;\n }, [isVerticalView, view]);\n\n const feedbackComment = useRef<FormPart<string> | null>(null);\n const feedbackCheckboxes = useRef<FormPart<string[]> | null>(null);\n\n const onFormSubmit = useCallback(\n (event: SyntheticEvent) => {\n event.preventDefault();\n\n onSubmit({\n comment: feedbackComment.current?.data() || '',\n answers: feedbackCheckboxes.current?.data() || [],\n });\n\n feedbackComment.current?.clean();\n feedbackCheckboxes.current?.clean();\n },\n [onSubmit],\n );\n\n return (\n <Popup\n anchorRef={anchor}\n open={visible}\n onOutsideClick={onOutsideClick}\n contentClassName={b('variants-popup', {view})}\n placement={position}\n >\n <h3 className={b('popup-title')}>{t<string>('dislike-variants-title')}</h3>\n <form onSubmit={onFormSubmit}>\n <DislikeVariantsList ref={feedbackCheckboxes} />\n <DislikeVariantsInput ref={feedbackComment} />\n <div className={b('variants-actions')}>\n <Button view=\"action\" className={b('variants-action')} type={'submit'}>\n {t<string>('send-action-text')}\n </Button>\n </div>\n </form>\n </Popup>\n );\n },\n);\n\nDislikeVariantsPopup.displayName = 'FeedbackDislikeVariantsPopup';\n\nexport default DislikeVariantsPopup;\n"],
|
|
5
|
+
"mappings": "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",
|
|
6
|
+
"names": ["block", "React"]
|
|
7
|
+
}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import React from 'react';
|
|
2
|
+
import type { PopperPosition } from '../../../hooks';
|
|
3
|
+
import { FeedbackView } from '../Feedback';
|
|
4
|
+
type LikeControlProps = {
|
|
5
|
+
isVerticalView?: boolean | undefined;
|
|
6
|
+
isLiked: boolean | undefined;
|
|
7
|
+
className?: string | undefined;
|
|
8
|
+
view: FeedbackView | undefined;
|
|
9
|
+
onClick: () => void;
|
|
10
|
+
popupPosition?: PopperPosition | undefined;
|
|
11
|
+
};
|
|
12
|
+
declare const LikeControl: React.MemoExoticComponent<React.ForwardRefExoticComponent<LikeControlProps & React.RefAttributes<HTMLButtonElement>>>;
|
|
13
|
+
export default LikeControl;
|
|
@@ -0,0 +1,81 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __create = Object.create;
|
|
3
|
+
var __defProp = Object.defineProperty;
|
|
4
|
+
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
5
|
+
var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
6
|
+
var __getProtoOf = Object.getPrototypeOf;
|
|
7
|
+
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
8
|
+
var __export = (target, all) => {
|
|
9
|
+
for (var name in all)
|
|
10
|
+
__defProp(target, name, { get: all[name], enumerable: true });
|
|
11
|
+
};
|
|
12
|
+
var __copyProps = (to, from, except, desc) => {
|
|
13
|
+
if (from && typeof from === "object" || typeof from === "function") {
|
|
14
|
+
for (let key of __getOwnPropNames(from))
|
|
15
|
+
if (!__hasOwnProp.call(to, key) && key !== except)
|
|
16
|
+
__defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
|
|
17
|
+
}
|
|
18
|
+
return to;
|
|
19
|
+
};
|
|
20
|
+
var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
|
|
21
|
+
// If the importer is in node compatibility mode or this is not an ESM
|
|
22
|
+
// file that has been converted to a CommonJS file using a Babel-
|
|
23
|
+
// compatible transform (i.e. "__esModule" has not been set), then set
|
|
24
|
+
// "default" to the CommonJS "module.exports" for node compatibility.
|
|
25
|
+
isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target,
|
|
26
|
+
mod
|
|
27
|
+
));
|
|
28
|
+
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
|
|
29
|
+
|
|
30
|
+
// src/components/Feedback/controls/LikeControl.tsx
|
|
31
|
+
var LikeControl_exports = {};
|
|
32
|
+
__export(LikeControl_exports, {
|
|
33
|
+
default: () => LikeControl_default
|
|
34
|
+
});
|
|
35
|
+
module.exports = __toCommonJS(LikeControl_exports);
|
|
36
|
+
var import_react = __toESM(require("react"));
|
|
37
|
+
var import_uikit = require("@gravity-ui/uikit");
|
|
38
|
+
var import_bem_cn_lite = __toESM(require("bem-cn-lite"));
|
|
39
|
+
var import_hooks = require("../../../hooks");
|
|
40
|
+
var import_Control = require("../../Control");
|
|
41
|
+
var import_ControlsLayout = require("../../Controls/ControlsLayout");
|
|
42
|
+
var import_Feedback = require("../Feedback");
|
|
43
|
+
var import_thumbs_up_fill = __toESM(require("@gravity-ui/icons/svgs/thumbs-up-fill.svg"));
|
|
44
|
+
var import_thumbs_up = __toESM(require("@gravity-ui/icons/svgs/thumbs-up.svg"));
|
|
45
|
+
var b = (0, import_bem_cn_lite.default)("dc-feedback");
|
|
46
|
+
var LikeControl = (0, import_react.memo)(
|
|
47
|
+
(0, import_react.forwardRef)(({ isLiked, view, onClick }, ref) => {
|
|
48
|
+
const { t } = (0, import_hooks.useTranslation)("feedback");
|
|
49
|
+
const { isVerticalView, popupPosition, controlClassName } = (0, import_react.useContext)(import_ControlsLayout.ControlsLayoutContext);
|
|
50
|
+
const tooltipText = isLiked ? t("cancel-like-text") : t("like-text");
|
|
51
|
+
if (view === import_Feedback.FeedbackView.Wide) {
|
|
52
|
+
return /* @__PURE__ */ import_react.default.createElement(
|
|
53
|
+
import_uikit.Button,
|
|
54
|
+
{
|
|
55
|
+
size: "m",
|
|
56
|
+
view: "normal",
|
|
57
|
+
ref,
|
|
58
|
+
onClick,
|
|
59
|
+
className: b("control", { view })
|
|
60
|
+
},
|
|
61
|
+
/* @__PURE__ */ import_react.default.createElement(import_uikit.Button.Icon, null, /* @__PURE__ */ import_react.default.createElement(import_uikit.Icon, { data: isLiked ? import_thumbs_up_fill.default : import_thumbs_up.default, size: 14 })),
|
|
62
|
+
t("button-like-text")
|
|
63
|
+
);
|
|
64
|
+
}
|
|
65
|
+
return /* @__PURE__ */ import_react.default.createElement(
|
|
66
|
+
import_Control.Control,
|
|
67
|
+
{
|
|
68
|
+
onClick,
|
|
69
|
+
className: b("control", { view }, controlClassName),
|
|
70
|
+
isVerticalView,
|
|
71
|
+
tooltipText,
|
|
72
|
+
ref,
|
|
73
|
+
icon: (args) => /* @__PURE__ */ import_react.default.createElement(import_uikit.Icon, { data: isLiked ? import_thumbs_up_fill.default : import_thumbs_up.default, ...args }),
|
|
74
|
+
popupPosition
|
|
75
|
+
}
|
|
76
|
+
);
|
|
77
|
+
})
|
|
78
|
+
);
|
|
79
|
+
LikeControl.displayName = "LikeControl";
|
|
80
|
+
var LikeControl_default = LikeControl;
|
|
81
|
+
//# sourceMappingURL=LikeControl.js.map
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../../../../../src/components/Feedback/controls/LikeControl.tsx"],
|
|
4
|
+
"sourcesContent": ["import React, {forwardRef, memo, useContext} from 'react';\n\nimport {Button, Icon} from '@gravity-ui/uikit';\nimport block from 'bem-cn-lite';\n\nimport type {PopperPosition} from '../../../hooks';\nimport {useTranslation} from '../../../hooks';\nimport {Control} from '../../Control';\nimport {ControlsLayoutContext} from '../../Controls/ControlsLayout';\nimport {FeedbackView} from '../Feedback';\n\nimport LikeActiveIcon from '@gravity-ui/icons/svgs/thumbs-up-fill.svg';\nimport LikeIcon from '@gravity-ui/icons/svgs/thumbs-up.svg';\n\ntype LikeControlProps = {\n isVerticalView?: boolean | undefined;\n isLiked: boolean | undefined;\n className?: string | undefined;\n view: FeedbackView | undefined;\n onClick: () => void;\n popupPosition?: PopperPosition | undefined;\n};\n\nconst b = block('dc-feedback');\n\nconst LikeControl = memo(\n forwardRef<HTMLButtonElement, LikeControlProps>(({isLiked, view, onClick}, ref) => {\n const {t} = useTranslation('feedback');\n const {isVerticalView, popupPosition, controlClassName} = useContext(ControlsLayoutContext);\n const tooltipText = isLiked ? t('cancel-like-text') : t('like-text');\n\n if (view === FeedbackView.Wide) {\n return (\n <Button\n size=\"m\"\n view=\"normal\"\n ref={ref}\n onClick={onClick}\n className={b('control', {view})}\n >\n <Button.Icon>\n <Icon data={isLiked ? LikeActiveIcon : LikeIcon} size={14} />\n </Button.Icon>\n {t<string>('button-like-text')}\n </Button>\n );\n }\n\n return (\n <Control\n onClick={onClick}\n className={b('control', {view}, controlClassName)}\n isVerticalView={isVerticalView}\n tooltipText={tooltipText}\n ref={ref}\n icon={(args) => <Icon data={isLiked ? LikeActiveIcon : LikeIcon} {...args} />}\n popupPosition={popupPosition}\n />\n );\n }),\n);\n\nLikeControl.displayName = 'LikeControl';\n\nexport default LikeControl;\n"],
|
|
5
|
+
"mappings": ";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,mBAAkD;AAElD,mBAA2B;AAC3B,yBAAkB;AAGlB,mBAA6B;AAC7B,qBAAsB;AACtB,4BAAoC;AACpC,sBAA2B;AAE3B,4BAA2B;AAC3B,uBAAqB;AAWrB,IAAM,QAAI,mBAAAA,SAAM,aAAa;AAE7B,IAAM,kBAAc;AAAA,MAChB,yBAAgD,CAAC,EAAC,SAAS,MAAM,QAAO,GAAG,QAAQ;AAC/E,UAAM,EAAC,EAAC,QAAI,6BAAe,UAAU;AACrC,UAAM,EAAC,gBAAgB,eAAe,iBAAgB,QAAI,yBAAW,2CAAqB;AAC1F,UAAM,cAAc,UAAU,EAAE,kBAAkB,IAAI,EAAE,WAAW;AAEnE,QAAI,SAAS,6BAAa,MAAM;AAC5B,aACI,6BAAAC,QAAA;AAAA,QAAC;AAAA;AAAA,UACG,MAAK;AAAA,UACL,MAAK;AAAA,UACL;AAAA,UACA;AAAA,UACA,WAAW,EAAE,WAAW,EAAC,KAAI,CAAC;AAAA;AAAA,QAE9B,6BAAAA,QAAA,cAAC,oBAAO,MAAP,MACG,6BAAAA,QAAA,cAAC,qBAAK,MAAM,UAAU,sBAAAC,UAAiB,iBAAAC,SAAU,MAAM,IAAI,CAC/D;AAAA,QACC,EAAU,kBAAkB;AAAA,MACjC;AAAA,IAER;AAEA,WACI,6BAAAF,QAAA;AAAA,MAAC;AAAA;AAAA,QACG;AAAA,QACA,WAAW,EAAE,WAAW,EAAC,KAAI,GAAG,gBAAgB;AAAA,QAChD;AAAA,QACA;AAAA,QACA;AAAA,QACA,MAAM,CAAC,SAAS,6BAAAA,QAAA,cAAC,qBAAK,MAAM,UAAU,sBAAAC,UAAiB,iBAAAC,SAAW,GAAG,MAAM;AAAA,QAC3E;AAAA;AAAA,IACJ;AAAA,EAER,CAAC;AACL;AAEA,YAAY,cAAc;AAE1B,IAAO,sBAAQ;",
|
|
6
|
+
"names": ["block", "React", "LikeActiveIcon", "LikeIcon"]
|
|
7
|
+
}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import React, { RefObject } from 'react';
|
|
2
|
+
import { FeedbackView } from '../Feedback';
|
|
3
|
+
type SuccessPopupProps = {
|
|
4
|
+
view: FeedbackView;
|
|
5
|
+
visible: boolean;
|
|
6
|
+
anchor: RefObject<HTMLButtonElement>;
|
|
7
|
+
onOutsideClick: () => void;
|
|
8
|
+
};
|
|
9
|
+
declare const SuccessPopup: React.NamedExoticComponent<SuccessPopupProps>;
|
|
10
|
+
export default SuccessPopup;
|