@redocly/theme 0.0.0-react18-20231120182601
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 +1 -0
- package/README.md +1 -0
- package/lib/components/ApiOnboarding/AppCustomAttributes.d.ts +5 -0
- package/lib/components/ApiOnboarding/AppCustomAttributes.js +10 -0
- package/lib/components/Breadcrumbs/Breadcrumb.d.ts +7 -0
- package/lib/components/Breadcrumbs/Breadcrumb.js +41 -0
- package/lib/components/Breadcrumbs/Breadcrumbs.d.ts +4 -0
- package/lib/components/Breadcrumbs/Breadcrumbs.js +51 -0
- package/lib/components/Breadcrumbs/index.d.ts +3 -0
- package/lib/components/Breadcrumbs/index.js +20 -0
- package/lib/components/Breadcrumbs/styledVariables.d.ts +1 -0
- package/lib/components/Breadcrumbs/styledVariables.js +20 -0
- package/lib/components/Button/Button.d.ts +22 -0
- package/lib/components/Button/Button.js +158 -0
- package/lib/components/Button/index.d.ts +2 -0
- package/lib/components/Button/index.js +19 -0
- package/lib/components/Button/styledVariables.d.ts +1 -0
- package/lib/components/Button/styledVariables.js +118 -0
- package/lib/components/Cards/Card.d.ts +9 -0
- package/lib/components/Cards/Card.js +38 -0
- package/lib/components/Cards/CardsBlock.d.ts +1 -0
- package/lib/components/Cards/CardsBlock.js +16 -0
- package/lib/components/Cards/index.d.ts +2 -0
- package/lib/components/Cards/index.js +19 -0
- package/lib/components/Catalog/Catalog.d.ts +16 -0
- package/lib/components/Catalog/Catalog.js +178 -0
- package/lib/components/Catalog/CatalogCard.d.ts +5 -0
- package/lib/components/Catalog/CatalogCard.js +167 -0
- package/lib/components/Catalog/index.d.ts +4 -0
- package/lib/components/Catalog/index.js +21 -0
- package/lib/components/Catalog/styledVariables.d.ts +1 -0
- package/lib/components/Catalog/styledVariables.js +97 -0
- package/lib/components/Catalog/useCatalog.d.ts +4 -0
- package/lib/components/Catalog/useCatalog.js +317 -0
- package/lib/components/CodeBlock/CodeBlock.d.ts +29 -0
- package/lib/components/CodeBlock/CodeBlock.js +66 -0
- package/lib/components/CodeBlock/CodeBlockContainer.d.ts +3 -0
- package/lib/components/CodeBlock/CodeBlockContainer.js +148 -0
- package/lib/components/CodeBlock/CodeBlockControlButton.d.ts +4 -0
- package/lib/components/CodeBlock/CodeBlockControlButton.js +52 -0
- package/lib/components/CodeBlock/CodeBlockControls.d.ts +33 -0
- package/lib/components/CodeBlock/CodeBlockControls.js +63 -0
- package/lib/components/CodeBlock/index.d.ts +5 -0
- package/lib/components/CodeBlock/index.js +22 -0
- package/lib/components/CodeBlock/styledVariables.d.ts +1 -0
- package/lib/components/CodeBlock/styledVariables.js +92 -0
- package/lib/components/ColorModeSwitcher/ColorModeSwitcher.d.ts +6 -0
- package/lib/components/ColorModeSwitcher/ColorModeSwitcher.js +83 -0
- package/lib/components/ColorModeSwitcher/index.d.ts +1 -0
- package/lib/components/ColorModeSwitcher/index.js +18 -0
- package/lib/components/CopyButton/CopyButton.d.ts +15 -0
- package/lib/components/CopyButton/CopyButton.js +53 -0
- package/lib/components/CopyButton/index.d.ts +1 -0
- package/lib/components/CopyButton/index.js +18 -0
- package/lib/components/Dropdown/Dropdown.d.ts +22 -0
- package/lib/components/Dropdown/Dropdown.js +116 -0
- package/lib/components/Dropdown/index.d.ts +2 -0
- package/lib/components/Dropdown/index.js +19 -0
- package/lib/components/Dropdown/styledVariables.d.ts +1 -0
- package/lib/components/Dropdown/styledVariables.js +30 -0
- package/lib/components/EditPageButton/EditPageButton.d.ts +5 -0
- package/lib/components/EditPageButton/EditPageButton.js +43 -0
- package/lib/components/EditPageButton/index.d.ts +1 -0
- package/lib/components/EditPageButton/index.js +18 -0
- package/lib/components/Feedback/Comment.d.ts +3 -0
- package/lib/components/Feedback/Comment.js +123 -0
- package/lib/components/Feedback/Emotions.d.ts +4 -0
- package/lib/components/Feedback/Emotions.js +57 -0
- package/lib/components/Feedback/Feedback.d.ts +5 -0
- package/lib/components/Feedback/Feedback.js +88 -0
- package/lib/components/Feedback/Mood.d.ts +8 -0
- package/lib/components/Feedback/Mood.js +197 -0
- package/lib/components/Feedback/Rating.d.ts +4 -0
- package/lib/components/Feedback/Rating.js +134 -0
- package/lib/components/Feedback/Reasons.d.ts +3 -0
- package/lib/components/Feedback/Reasons.js +82 -0
- package/lib/components/Feedback/ReportDialog.d.ts +3 -0
- package/lib/components/Feedback/ReportDialog.js +77 -0
- package/lib/components/Feedback/Scale.d.ts +4 -0
- package/lib/components/Feedback/Scale.js +180 -0
- package/lib/components/Feedback/Sentiment.d.ts +3 -0
- package/lib/components/Feedback/Sentiment.js +167 -0
- package/lib/components/Feedback/Stars.d.ts +8 -0
- package/lib/components/Feedback/Stars.js +54 -0
- package/lib/components/Feedback/Thumbs.d.ts +3 -0
- package/lib/components/Feedback/Thumbs.js +49 -0
- package/lib/components/Feedback/index.d.ts +10 -0
- package/lib/components/Feedback/index.js +37 -0
- package/lib/components/Feedback/types.d.ts +128 -0
- package/lib/components/Feedback/types.js +3 -0
- package/lib/components/Feedback/useReportDialog.d.ts +13 -0
- package/lib/components/Feedback/useReportDialog.js +46 -0
- package/lib/components/Filter/Filter.d.ts +9 -0
- package/lib/components/Filter/Filter.js +199 -0
- package/lib/components/Filter/FilterContent.d.ts +13 -0
- package/lib/components/Filter/FilterContent.js +69 -0
- package/lib/components/Filter/FilterPopover.d.ts +13 -0
- package/lib/components/Filter/FilterPopover.js +106 -0
- package/lib/components/Filter/FilterTag.d.ts +7 -0
- package/lib/components/Filter/FilterTag.js +33 -0
- package/lib/components/Filter/FilterTags.d.ts +7 -0
- package/lib/components/Filter/FilterTags.js +29 -0
- package/lib/components/Filter/index.d.ts +6 -0
- package/lib/components/Filter/index.js +23 -0
- package/lib/components/Filter/styledVariables.d.ts +1 -0
- package/lib/components/Filter/styledVariables.js +111 -0
- package/lib/components/Footer/CustomFooter.d.ts +8 -0
- package/lib/components/Footer/CustomFooter.js +35 -0
- package/lib/components/Footer/CustomFooterNavItem.d.ts +8 -0
- package/lib/components/Footer/CustomFooterNavItem.js +33 -0
- package/lib/components/Footer/Footer.d.ts +11 -0
- package/lib/components/Footer/Footer.js +58 -0
- package/lib/components/Footer/FooterColumn.d.ts +12 -0
- package/lib/components/Footer/FooterColumn.js +111 -0
- package/lib/components/Footer/FooterColumns.d.ts +10 -0
- package/lib/components/Footer/FooterColumns.js +46 -0
- package/lib/components/Footer/FooterCopyright.d.ts +7 -0
- package/lib/components/Footer/FooterCopyright.js +33 -0
- package/lib/components/Footer/index.d.ts +5 -0
- package/lib/components/Footer/index.js +22 -0
- package/lib/components/Footer/styledVariables.d.ts +1 -0
- package/lib/components/Footer/styledVariables.js +61 -0
- package/lib/components/Image/Image.d.ts +9 -0
- package/lib/components/Image/Image.js +31 -0
- package/lib/components/Image/index.d.ts +1 -0
- package/lib/components/Image/index.js +18 -0
- package/lib/components/JsonViewer/JsonViewer.d.ts +14 -0
- package/lib/components/JsonViewer/JsonViewer.js +221 -0
- package/lib/components/JsonViewer/index.d.ts +1 -0
- package/lib/components/JsonViewer/index.js +18 -0
- package/lib/components/LastUpdated/LastUpdated.d.ts +15 -0
- package/lib/components/LastUpdated/LastUpdated.js +84 -0
- package/lib/components/LastUpdated/index.d.ts +2 -0
- package/lib/components/LastUpdated/index.js +19 -0
- package/lib/components/LastUpdated/styledVariables.d.ts +1 -0
- package/lib/components/LastUpdated/styledVariables.js +11 -0
- package/lib/components/Markdown/Admonition.d.ts +12 -0
- package/lib/components/Markdown/Admonition.js +59 -0
- package/lib/components/Markdown/ContainerWrapper.d.ts +3 -0
- package/lib/components/Markdown/ContainerWrapper.js +27 -0
- package/lib/components/Markdown/Details.d.ts +7 -0
- package/lib/components/Markdown/Details.js +17 -0
- package/lib/components/Markdown/Heading.d.ts +8 -0
- package/lib/components/Markdown/Heading.js +48 -0
- package/lib/components/Markdown/MarkdownLayout.d.ts +17 -0
- package/lib/components/Markdown/MarkdownLayout.js +47 -0
- package/lib/components/Markdown/MarkdownWrapper.d.ts +8 -0
- package/lib/components/Markdown/MarkdownWrapper.js +415 -0
- package/lib/components/Markdown/Mermaid.d.ts +9 -0
- package/lib/components/Markdown/Mermaid.js +23 -0
- package/lib/components/Markdown/PageWrapper.d.ts +1 -0
- package/lib/components/Markdown/PageWrapper.js +16 -0
- package/lib/components/Markdown/Sup.d.ts +4 -0
- package/lib/components/Markdown/Sup.js +14 -0
- package/lib/components/Markdown/index.d.ts +10 -0
- package/lib/components/Markdown/index.js +27 -0
- package/lib/components/Markdown/styledVariables.d.ts +3 -0
- package/lib/components/Markdown/styledVariables.js +285 -0
- package/lib/components/Menu/Menu.d.ts +12 -0
- package/lib/components/Menu/Menu.js +28 -0
- package/lib/components/Menu/MenuContainer.d.ts +6 -0
- package/lib/components/Menu/MenuContainer.js +18 -0
- package/lib/components/Menu/MenuGroup.d.ts +10 -0
- package/lib/components/Menu/MenuGroup.js +107 -0
- package/lib/components/Menu/MenuItem.d.ts +3 -0
- package/lib/components/Menu/MenuItem.js +44 -0
- package/lib/components/Menu/MenuItemLabel.d.ts +3 -0
- package/lib/components/Menu/MenuItemLabel.js +51 -0
- package/lib/components/Menu/MenuItemSwitch.d.ts +4 -0
- package/lib/components/Menu/MenuItemSwitch.js +40 -0
- package/lib/components/Menu/MenuLink.d.ts +2 -0
- package/lib/components/Menu/MenuLink.js +16 -0
- package/lib/components/Menu/MenuLinkItem.d.ts +3 -0
- package/lib/components/Menu/MenuLinkItem.js +16 -0
- package/lib/components/Menu/MobileMenu.d.ts +4 -0
- package/lib/components/Menu/MobileMenu.js +144 -0
- package/lib/components/Menu/MobileMenuGroup.d.ts +9 -0
- package/lib/components/Menu/MobileMenuGroup.js +61 -0
- package/lib/components/Menu/constants.d.ts +5 -0
- package/lib/components/Menu/constants.js +10 -0
- package/lib/components/Menu/hooks/use-mobile-menu-items.d.ts +2 -0
- package/lib/components/Menu/hooks/use-mobile-menu-items.js +80 -0
- package/lib/components/Menu/hooks/use-mobile-menu-levels.d.ts +5 -0
- package/lib/components/Menu/hooks/use-mobile-menu-levels.js +46 -0
- package/lib/components/Menu/index.d.ts +13 -0
- package/lib/components/Menu/index.js +30 -0
- package/lib/components/Menu/styledVariables.d.ts +2 -0
- package/lib/components/Menu/styledVariables.js +103 -0
- package/lib/components/Menu/types.d.ts +4 -0
- package/lib/components/Menu/types.js +3 -0
- package/lib/components/Menu/utils.d.ts +8 -0
- package/lib/components/Menu/utils.js +76 -0
- package/lib/components/Navbar/BurgerButton.d.ts +5 -0
- package/lib/components/Navbar/BurgerButton.js +29 -0
- package/lib/components/Navbar/Navbar.d.ts +16 -0
- package/lib/components/Navbar/Navbar.js +159 -0
- package/lib/components/Navbar/NavbarItem.d.ts +20 -0
- package/lib/components/Navbar/NavbarItem.js +128 -0
- package/lib/components/Navbar/NavbarMenu.d.ts +6 -0
- package/lib/components/Navbar/NavbarMenu.js +34 -0
- package/lib/components/Navbar/index.d.ts +5 -0
- package/lib/components/Navbar/index.js +22 -0
- package/lib/components/Navbar/styledVariables.d.ts +1 -0
- package/lib/components/Navbar/styledVariables.js +42 -0
- package/lib/components/NavbarLogo/NavbarLogo.d.ts +10 -0
- package/lib/components/NavbarLogo/NavbarLogo.js +34 -0
- package/lib/components/NavbarLogo/index.d.ts +2 -0
- package/lib/components/NavbarLogo/index.js +19 -0
- package/lib/components/NavbarLogo/styledVariables.d.ts +1 -0
- package/lib/components/NavbarLogo/styledVariables.js +17 -0
- package/lib/components/OpenApiDocs/ClearButton.d.ts +8 -0
- package/lib/components/OpenApiDocs/ClearButton.js +48 -0
- package/lib/components/OpenApiDocs/DevOnboardingTryItSecurity.d.ts +3 -0
- package/lib/components/OpenApiDocs/DevOnboardingTryItSecurity.js +178 -0
- package/lib/components/OpenApiDocs/Dropdown.d.ts +28 -0
- package/lib/components/OpenApiDocs/Dropdown.js +150 -0
- package/lib/components/OpenApiDocs/ScorecardBadges.d.ts +11 -0
- package/lib/components/OpenApiDocs/ScorecardBadges.js +58 -0
- package/lib/components/OpenApiDocs/TryItSecurityApps.d.ts +7 -0
- package/lib/components/OpenApiDocs/TryItSecurityApps.js +15 -0
- package/lib/components/OpenApiDocs/hooks/AfterOpenApiOperation.d.ts +1 -0
- package/lib/components/OpenApiDocs/hooks/AfterOpenApiOperation.js +11 -0
- package/lib/components/OpenApiDocs/hooks/AfterOpenApiOperationSummary.d.ts +1 -0
- package/lib/components/OpenApiDocs/hooks/AfterOpenApiOperationSummary.js +11 -0
- package/lib/components/OpenApiDocs/hooks/AfterOpenApiTitle.d.ts +1 -0
- package/lib/components/OpenApiDocs/hooks/AfterOpenApiTitle.js +11 -0
- package/lib/components/OpenApiDocs/hooks/BeforeOpenApiOperation.d.ts +1 -0
- package/lib/components/OpenApiDocs/hooks/BeforeOpenApiOperation.js +11 -0
- package/lib/components/OpenApiDocs/hooks/BeforeOpenApiOperationSummary.d.ts +1 -0
- package/lib/components/OpenApiDocs/hooks/BeforeOpenApiOperationSummary.js +11 -0
- package/lib/components/OpenApiDocs/hooks/OpenApiFooter.d.ts +1 -0
- package/lib/components/OpenApiDocs/hooks/OpenApiFooter.js +8 -0
- package/lib/components/OpenApiDocs/hooks/OpenApiHeader.d.ts +1 -0
- package/lib/components/OpenApiDocs/hooks/OpenApiHeader.js +8 -0
- package/lib/components/OpenApiDocs/hooks/OpenApiTryItSecurityPanel.d.ts +1 -0
- package/lib/components/OpenApiDocs/hooks/OpenApiTryItSecurityPanel.js +14 -0
- package/lib/components/OpenApiDocs/index.d.ts +10 -0
- package/lib/components/OpenApiDocs/index.js +27 -0
- package/lib/components/PageNavigation/NextButton.d.ts +8 -0
- package/lib/components/PageNavigation/NextButton.js +53 -0
- package/lib/components/PageNavigation/PageNavigation.d.ts +9 -0
- package/lib/components/PageNavigation/PageNavigation.js +33 -0
- package/lib/components/PageNavigation/PreviousButton.d.ts +8 -0
- package/lib/components/PageNavigation/PreviousButton.js +33 -0
- package/lib/components/PageNavigation/index.d.ts +3 -0
- package/lib/components/PageNavigation/index.js +20 -0
- package/lib/components/Panel/Panel.d.ts +5 -0
- package/lib/components/Panel/Panel.js +39 -0
- package/lib/components/Panel/PanelBody.d.ts +6 -0
- package/lib/components/Panel/PanelBody.js +62 -0
- package/lib/components/Panel/PanelComponent.d.ts +13 -0
- package/lib/components/Panel/PanelComponent.js +65 -0
- package/lib/components/Panel/PanelHeader.d.ts +7 -0
- package/lib/components/Panel/PanelHeader.js +35 -0
- package/lib/components/Panel/PanelHeaderTitle.d.ts +1 -0
- package/lib/components/Panel/PanelHeaderTitle.js +18 -0
- package/lib/components/Panel/index.d.ts +6 -0
- package/lib/components/Panel/index.js +23 -0
- package/lib/components/Panel/styledVariables.d.ts +2 -0
- package/lib/components/Panel/styledVariables.js +482 -0
- package/lib/components/Product/Product.d.ts +7 -0
- package/lib/components/Product/Product.js +23 -0
- package/lib/components/Product/ProductPicker.d.ts +2 -0
- package/lib/components/Product/ProductPicker.js +90 -0
- package/lib/components/Product/index.d.ts +3 -0
- package/lib/components/Product/index.js +20 -0
- package/lib/components/Product/styledVariables.d.ts +2 -0
- package/lib/components/Product/styledVariables.js +42 -0
- package/lib/components/Profile/AuthUserProfile.d.ts +2 -0
- package/lib/components/Profile/AuthUserProfile.js +22 -0
- package/lib/components/Profile/LoginLink.d.ts +5 -0
- package/lib/components/Profile/LoginLink.js +34 -0
- package/lib/components/Profile/MobileUserProfile.d.ts +2 -0
- package/lib/components/Profile/MobileUserProfile.js +64 -0
- package/lib/components/Profile/Profile.d.ts +15 -0
- package/lib/components/Profile/Profile.js +86 -0
- package/lib/components/Profile/UserProfile.d.ts +3 -0
- package/lib/components/Profile/UserProfile.js +107 -0
- package/lib/components/Profile/UserProfileData.d.ts +9 -0
- package/lib/components/Profile/UserProfileData.js +35 -0
- package/lib/components/Profile/index.d.ts +10 -0
- package/lib/components/Profile/index.js +28 -0
- package/lib/components/Profile/styledVariables.d.ts +2 -0
- package/lib/components/Profile/styledVariables.js +55 -0
- package/lib/components/Profile/types.d.ts +12 -0
- package/lib/components/Profile/types.js +3 -0
- package/lib/components/Scorecard/Card.d.ts +5 -0
- package/lib/components/Scorecard/Card.js +37 -0
- package/lib/components/Scorecard/Gauge.d.ts +11 -0
- package/lib/components/Scorecard/Gauge.js +61 -0
- package/lib/components/Scorecard/StatusByLevelWidget.d.ts +12 -0
- package/lib/components/Scorecard/StatusByLevelWidget.js +83 -0
- package/lib/components/Search/CancelSearch.d.ts +5 -0
- package/lib/components/Search/CancelSearch.js +48 -0
- package/lib/components/Search/ClearIcon.d.ts +3 -0
- package/lib/components/Search/ClearIcon.js +26 -0
- package/lib/components/Search/ClockBackwardsIcon.d.ts +3 -0
- package/lib/components/Search/ClockBackwardsIcon.js +26 -0
- package/lib/components/Search/Input.d.ts +1 -0
- package/lib/components/Search/Input.js +27 -0
- package/lib/components/Search/InputWrapper.d.ts +11 -0
- package/lib/components/Search/InputWrapper.js +80 -0
- package/lib/components/Search/MobileSearchTrigger.d.ts +5 -0
- package/lib/components/Search/MobileSearchTrigger.js +52 -0
- package/lib/components/Search/Popover.d.ts +1 -0
- package/lib/components/Search/Popover.js +35 -0
- package/lib/components/Search/ProductTag.d.ts +6 -0
- package/lib/components/Search/ProductTag.js +61 -0
- package/lib/components/Search/RecentSearches.d.ts +5 -0
- package/lib/components/Search/RecentSearches.js +126 -0
- package/lib/components/Search/Search.d.ts +4 -0
- package/lib/components/Search/Search.js +75 -0
- package/lib/components/Search/SearchDialog.d.ts +5 -0
- package/lib/components/Search/SearchDialog.js +146 -0
- package/lib/components/Search/SearchIcon.d.ts +3 -0
- package/lib/components/Search/SearchIcon.js +26 -0
- package/lib/components/Search/SearchItem.d.ts +10 -0
- package/lib/components/Search/SearchItem.js +130 -0
- package/lib/components/Search/SearchTrigger.d.ts +5 -0
- package/lib/components/Search/SearchTrigger.js +76 -0
- package/lib/components/Search/Shortcut.d.ts +6 -0
- package/lib/components/Search/Shortcut.js +51 -0
- package/lib/components/Search/ShortcutKey.d.ts +8 -0
- package/lib/components/Search/ShortcutKey.js +26 -0
- package/lib/components/Search/SuggestedPages.d.ts +4 -0
- package/lib/components/Search/SuggestedPages.js +104 -0
- package/lib/components/Search/index.d.ts +19 -0
- package/lib/components/Search/index.js +36 -0
- package/lib/components/Search/styledVariables.d.ts +1 -0
- package/lib/components/Search/styledVariables.js +98 -0
- package/lib/components/Search/utils.d.ts +2 -0
- package/lib/components/Search/utils.js +46 -0
- package/lib/components/Select/Select.d.ts +33 -0
- package/lib/components/Select/Select.js +139 -0
- package/lib/components/Select/index.d.ts +2 -0
- package/lib/components/Select/index.js +19 -0
- package/lib/components/Select/styledVariables.d.ts +1 -0
- package/lib/components/Select/styledVariables.js +34 -0
- package/lib/components/Separator/Separator.d.ts +3 -0
- package/lib/components/Separator/Separator.js +28 -0
- package/lib/components/Separator/SeparatorItem.d.ts +3 -0
- package/lib/components/Separator/SeparatorItem.js +31 -0
- package/lib/components/Separator/SeparatorLine.d.ts +1 -0
- package/lib/components/Separator/SeparatorLine.js +20 -0
- package/lib/components/Separator/index.d.ts +3 -0
- package/lib/components/Separator/index.js +20 -0
- package/lib/components/Sidebar/ApiCallItem.d.ts +7 -0
- package/lib/components/Sidebar/ApiCallItem.js +47 -0
- package/lib/components/Sidebar/BackButton.d.ts +7 -0
- package/lib/components/Sidebar/BackButton.js +42 -0
- package/lib/components/Sidebar/Drilldown.d.ts +9 -0
- package/lib/components/Sidebar/Drilldown.js +45 -0
- package/lib/components/Sidebar/DrilldownMenu.d.ts +3 -0
- package/lib/components/Sidebar/DrilldownMenu.js +75 -0
- package/lib/components/Sidebar/DrilldownMenuItem.d.ts +3 -0
- package/lib/components/Sidebar/DrilldownMenuItem.js +37 -0
- package/lib/components/Sidebar/FooterWrapper.d.ts +3 -0
- package/lib/components/Sidebar/FooterWrapper.js +22 -0
- package/lib/components/Sidebar/HeaderWrapper.d.ts +1 -0
- package/lib/components/Sidebar/HeaderWrapper.js +16 -0
- package/lib/components/Sidebar/MobileSidebarButton.d.ts +3 -0
- package/lib/components/Sidebar/MobileSidebarButton.js +46 -0
- package/lib/components/Sidebar/MobileSidebarIcon.d.ts +4 -0
- package/lib/components/Sidebar/MobileSidebarIcon.js +16 -0
- package/lib/components/Sidebar/Sidebar.d.ts +6 -0
- package/lib/components/Sidebar/Sidebar.js +56 -0
- package/lib/components/Sidebar/SidebarItemIcon.d.ts +1 -0
- package/lib/components/Sidebar/SidebarItemIcon.js +16 -0
- package/lib/components/Sidebar/SidebarLayout.d.ts +18 -0
- package/lib/components/Sidebar/SidebarLayout.js +82 -0
- package/lib/components/Sidebar/VersionPicker.d.ts +11 -0
- package/lib/components/Sidebar/VersionPicker.js +117 -0
- package/lib/components/Sidebar/index.d.ts +15 -0
- package/lib/components/Sidebar/index.js +32 -0
- package/lib/components/Sidebar/styledVariables.d.ts +2 -0
- package/lib/components/Sidebar/styledVariables.js +222 -0
- package/lib/components/Sidebar/types.d.ts +48 -0
- package/lib/components/Sidebar/types.js +8 -0
- package/lib/components/SidebarActions/ChangeViewButton.d.ts +8 -0
- package/lib/components/SidebarActions/ChangeViewButton.js +14 -0
- package/lib/components/SidebarActions/CollapseSidebarButton.d.ts +7 -0
- package/lib/components/SidebarActions/CollapseSidebarButton.js +53 -0
- package/lib/components/SidebarActions/SidebarActions.d.ts +21 -0
- package/lib/components/SidebarActions/SidebarActions.js +38 -0
- package/lib/components/SidebarActions/ToggleRightPanelButton.d.ts +7 -0
- package/lib/components/SidebarActions/ToggleRightPanelButton.js +13 -0
- package/lib/components/SidebarActions/index.d.ts +4 -0
- package/lib/components/SidebarActions/index.js +24 -0
- package/lib/components/SidebarActions/styled.d.ts +17 -0
- package/lib/components/SidebarActions/styled.js +132 -0
- package/lib/components/SidebarLogo/SidebarLogo.d.ts +10 -0
- package/lib/components/SidebarLogo/SidebarLogo.js +31 -0
- package/lib/components/SidebarLogo/index.d.ts +1 -0
- package/lib/components/SidebarLogo/index.js +18 -0
- package/lib/components/TableOfContent/TableOfContent.d.ts +9 -0
- package/lib/components/TableOfContent/TableOfContent.js +113 -0
- package/lib/components/TableOfContent/index.d.ts +2 -0
- package/lib/components/TableOfContent/index.js +19 -0
- package/lib/components/TableOfContent/styledVariables.d.ts +1 -0
- package/lib/components/TableOfContent/styledVariables.js +47 -0
- package/lib/components/TableOfContent/utils.d.ts +4 -0
- package/lib/components/TableOfContent/utils.js +41 -0
- package/lib/components/Tabs/Tab.d.ts +9 -0
- package/lib/components/Tabs/Tab.js +58 -0
- package/lib/components/Tabs/Tabs.d.ts +12 -0
- package/lib/components/Tabs/Tabs.js +89 -0
- package/lib/components/Tabs/index.d.ts +2 -0
- package/lib/components/Tabs/index.js +19 -0
- package/lib/components/Tag/Tag.d.ts +18 -0
- package/lib/components/Tag/Tag.js +46 -0
- package/lib/components/Tag/index.d.ts +2 -0
- package/lib/components/Tag/index.js +19 -0
- package/lib/components/Tag/styledVariables.d.ts +1 -0
- package/lib/components/Tag/styledVariables.js +148 -0
- package/lib/components/Tiles/ThinTile.d.ts +5 -0
- package/lib/components/Tiles/ThinTile.js +126 -0
- package/lib/components/Tiles/TileHeader.d.ts +3 -0
- package/lib/components/Tiles/TileHeader.js +20 -0
- package/lib/components/Tiles/TileText.d.ts +3 -0
- package/lib/components/Tiles/TileText.js +19 -0
- package/lib/components/Tiles/WideTile.d.ts +7 -0
- package/lib/components/Tiles/WideTile.js +116 -0
- package/lib/components/Tiles/index.d.ts +4 -0
- package/lib/components/Tiles/index.js +21 -0
- package/lib/components/Tiles/types.d.ts +17 -0
- package/lib/components/Tiles/types.js +3 -0
- package/lib/components/Tooltip/Tooltip.d.ts +13 -0
- package/lib/components/Tooltip/Tooltip.js +175 -0
- package/lib/components/Tooltip/index.d.ts +2 -0
- package/lib/components/Tooltip/index.js +19 -0
- package/lib/components/Tooltip/styledVariables.d.ts +1 -0
- package/lib/components/Tooltip/styledVariables.js +21 -0
- package/lib/components/Typography/CompactTypography.d.ts +5 -0
- package/lib/components/Typography/CompactTypography.js +14 -0
- package/lib/components/Typography/Emphasis.d.ts +1 -0
- package/lib/components/Typography/Emphasis.js +14 -0
- package/lib/components/Typography/H1.d.ts +1 -0
- package/lib/components/Typography/H1.js +18 -0
- package/lib/components/Typography/H2.d.ts +1 -0
- package/lib/components/Typography/H2.js +18 -0
- package/lib/components/Typography/H3.d.ts +1 -0
- package/lib/components/Typography/H3.js +18 -0
- package/lib/components/Typography/SectionHeader.d.ts +1 -0
- package/lib/components/Typography/SectionHeader.js +20 -0
- package/lib/components/Typography/Typography.d.ts +13 -0
- package/lib/components/Typography/Typography.js +23 -0
- package/lib/components/Typography/index.d.ts +7 -0
- package/lib/components/Typography/index.js +24 -0
- package/lib/components/index.d.ts +29 -0
- package/lib/components/index.js +46 -0
- package/lib/config.d.ts +2441 -0
- package/lib/config.js +614 -0
- package/lib/globalStyle.d.ts +2 -0
- package/lib/globalStyle.js +994 -0
- package/lib/hooks/__tests__/mocks/MockIntersectionObserver.d.ts +15 -0
- package/lib/hooks/__tests__/mocks/MockIntersectionObserver.js +79 -0
- package/lib/hooks/index.d.ts +9 -0
- package/lib/hooks/index.js +26 -0
- package/lib/hooks/useActiveHeading.d.ts +2 -0
- package/lib/hooks/useActiveHeading.js +80 -0
- package/lib/hooks/useActiveSectionId.d.ts +3 -0
- package/lib/hooks/useActiveSectionId.js +44 -0
- package/lib/hooks/useControl.d.ts +6 -0
- package/lib/hooks/useControl.js +16 -0
- package/lib/hooks/useDialogHotKeys.d.ts +2 -0
- package/lib/hooks/useDialogHotKeys.js +45 -0
- package/lib/hooks/useFullHeight.d.ts +2 -0
- package/lib/hooks/useFullHeight.js +48 -0
- package/lib/hooks/useMobileMenu.d.ts +2 -0
- package/lib/hooks/useMobileMenu.js +18 -0
- package/lib/hooks/useModalScrollLock.d.ts +1 -0
- package/lib/hooks/useModalScrollLock.js +16 -0
- package/lib/hooks/useMount.d.ts +1 -0
- package/lib/hooks/useMount.js +12 -0
- package/lib/hooks/useNavbarHeight.d.ts +3 -0
- package/lib/hooks/useNavbarHeight.js +21 -0
- package/lib/hooks/useOutsideClick.d.ts +2 -0
- package/lib/hooks/useOutsideClick.js +22 -0
- package/lib/hooks/useThemeConfig.d.ts +4 -0
- package/lib/hooks/useThemeConfig.js +15 -0
- package/lib/hooks/useUnmount.d.ts +1 -0
- package/lib/hooks/useUnmount.js +14 -0
- package/lib/i18n/LanguagePicker.d.ts +9 -0
- package/lib/i18n/LanguagePicker.js +99 -0
- package/lib/i18n/index.d.ts +2 -0
- package/lib/i18n/index.js +21 -0
- package/lib/i18n/styledVariables.d.ts +1 -0
- package/lib/i18n/styledVariables.js +40 -0
- package/lib/icons/AlertIcon/AlertIcon.d.ts +10 -0
- package/lib/icons/AlertIcon/AlertIcon.js +51 -0
- package/lib/icons/AlertIcon/index.d.ts +2 -0
- package/lib/icons/AlertIcon/index.js +6 -0
- package/lib/icons/AnchorIcon/AnchorIcon.d.ts +7 -0
- package/lib/icons/AnchorIcon/AnchorIcon.js +23 -0
- package/lib/icons/AnchorIcon/index.d.ts +2 -0
- package/lib/icons/AnchorIcon/index.js +6 -0
- package/lib/icons/ArrowIcon/ArrowIcon.d.ts +8 -0
- package/lib/icons/ArrowIcon/ArrowIcon.js +60 -0
- package/lib/icons/ArrowIcon/index.d.ts +2 -0
- package/lib/icons/ArrowIcon/index.js +6 -0
- package/lib/icons/BurgerIcon/BurgerIcon.d.ts +5 -0
- package/lib/icons/BurgerIcon/BurgerIcon.js +15 -0
- package/lib/icons/BurgerIcon/index.d.ts +1 -0
- package/lib/icons/BurgerIcon/index.js +6 -0
- package/lib/icons/CheckboxIcon/CheckboxIcon.d.ts +6 -0
- package/lib/icons/CheckboxIcon/CheckboxIcon.js +28 -0
- package/lib/icons/CheckboxIcon/index.d.ts +1 -0
- package/lib/icons/CheckboxIcon/index.js +6 -0
- package/lib/icons/CloseIcon/CloseIcon.d.ts +5 -0
- package/lib/icons/CloseIcon/CloseIcon.js +16 -0
- package/lib/icons/CloseIcon/index.d.ts +1 -0
- package/lib/icons/CloseIcon/index.js +6 -0
- package/lib/icons/CollapseIcon/CollapseIcon.d.ts +7 -0
- package/lib/icons/CollapseIcon/CollapseIcon.js +22 -0
- package/lib/icons/CollapseIcon/index.d.ts +1 -0
- package/lib/icons/CollapseIcon/index.js +18 -0
- package/lib/icons/ColorModeIcon/ColorModeIcon.d.ts +10 -0
- package/lib/icons/ColorModeIcon/ColorModeIcon.js +33 -0
- package/lib/icons/ColorModeIcon/index.d.ts +2 -0
- package/lib/icons/ColorModeIcon/index.js +6 -0
- package/lib/icons/CopyIcon/CopyIcon.d.ts +6 -0
- package/lib/icons/CopyIcon/CopyIcon.js +16 -0
- package/lib/icons/CopyIcon/index.d.ts +1 -0
- package/lib/icons/CopyIcon/index.js +18 -0
- package/lib/icons/DeselectIcon/DeselectIcon.d.ts +7 -0
- package/lib/icons/DeselectIcon/DeselectIcon.js +19 -0
- package/lib/icons/DeselectIcon/index.d.ts +1 -0
- package/lib/icons/DeselectIcon/index.js +18 -0
- package/lib/icons/DissatisfiedIcon/DissatisfiedIcon.d.ts +4 -0
- package/lib/icons/DissatisfiedIcon/DissatisfiedIcon.js +18 -0
- package/lib/icons/DissatisfiedIcon/index.d.ts +1 -0
- package/lib/icons/DissatisfiedIcon/index.js +18 -0
- package/lib/icons/EditIcon/EditIcon.d.ts +6 -0
- package/lib/icons/EditIcon/EditIcon.js +18 -0
- package/lib/icons/EditIcon/index.d.ts +1 -0
- package/lib/icons/EditIcon/index.js +18 -0
- package/lib/icons/ErrorIcon/ErrorIcon.d.ts +4 -0
- package/lib/icons/ErrorIcon/ErrorIcon.js +14 -0
- package/lib/icons/ErrorIcon/index.d.ts +1 -0
- package/lib/icons/ErrorIcon/index.js +18 -0
- package/lib/icons/ExpandIcon/ExpandIcon.d.ts +6 -0
- package/lib/icons/ExpandIcon/ExpandIcon.js +22 -0
- package/lib/icons/ExpandIcon/index.d.ts +1 -0
- package/lib/icons/ExpandIcon/index.js +6 -0
- package/lib/icons/ExternalIcon/ExternalIcon.d.ts +5 -0
- package/lib/icons/ExternalIcon/ExternalIcon.js +22 -0
- package/lib/icons/ExternalIcon/index.d.ts +1 -0
- package/lib/icons/ExternalIcon/index.js +18 -0
- package/lib/icons/FileIcon/FileIcon.d.ts +6 -0
- package/lib/icons/FileIcon/FileIcon.js +17 -0
- package/lib/icons/FileIcon/index.d.ts +1 -0
- package/lib/icons/FileIcon/index.js +18 -0
- package/lib/icons/LanguageIcon/LanguageIcon.d.ts +4 -0
- package/lib/icons/LanguageIcon/LanguageIcon.js +14 -0
- package/lib/icons/LanguageIcon/index.d.ts +1 -0
- package/lib/icons/LanguageIcon/index.js +18 -0
- package/lib/icons/LogoutIcon/LogoutIcon.d.ts +5 -0
- package/lib/icons/LogoutIcon/LogoutIcon.js +17 -0
- package/lib/icons/LogoutIcon/index.d.ts +1 -0
- package/lib/icons/LogoutIcon/index.js +6 -0
- package/lib/icons/NeutralIcon/NeutralIcon.d.ts +4 -0
- package/lib/icons/NeutralIcon/NeutralIcon.js +18 -0
- package/lib/icons/NeutralIcon/index.d.ts +1 -0
- package/lib/icons/NeutralIcon/index.js +18 -0
- package/lib/icons/PlusIcon/PlusIcon.d.ts +5 -0
- package/lib/icons/PlusIcon/PlusIcon.js +16 -0
- package/lib/icons/PlusIcon/index.d.ts +1 -0
- package/lib/icons/PlusIcon/index.js +18 -0
- package/lib/icons/PointingArrowIcon/PointingArrowIcon.d.ts +4 -0
- package/lib/icons/PointingArrowIcon/PointingArrowIcon.js +15 -0
- package/lib/icons/PointingArrowIcon/index.d.ts +1 -0
- package/lib/icons/PointingArrowIcon/index.js +18 -0
- package/lib/icons/RadioCheckButtonIcon/RadioCheckButtonIcon.d.ts +4 -0
- package/lib/icons/RadioCheckButtonIcon/RadioCheckButtonIcon.js +16 -0
- package/lib/icons/RadioCheckButtonIcon/index.d.ts +1 -0
- package/lib/icons/RadioCheckButtonIcon/index.js +18 -0
- package/lib/icons/ReportIcon/ReportIcon.d.ts +6 -0
- package/lib/icons/ReportIcon/ReportIcon.js +19 -0
- package/lib/icons/ReportIcon/index.d.ts +1 -0
- package/lib/icons/ReportIcon/index.js +18 -0
- package/lib/icons/RocketIcon/RocketIcon.d.ts +7 -0
- package/lib/icons/RocketIcon/RocketIcon.js +15 -0
- package/lib/icons/RocketIcon/index.d.ts +1 -0
- package/lib/icons/RocketIcon/index.js +18 -0
- package/lib/icons/SatisfiedIcon/SatisfiedIcon.d.ts +4 -0
- package/lib/icons/SatisfiedIcon/SatisfiedIcon.js +18 -0
- package/lib/icons/SatisfiedIcon/index.d.ts +1 -0
- package/lib/icons/SatisfiedIcon/index.js +18 -0
- package/lib/icons/SelectIcon/SelectIcon.d.ts +6 -0
- package/lib/icons/SelectIcon/SelectIcon.js +19 -0
- package/lib/icons/SelectIcon/index.d.ts +1 -0
- package/lib/icons/SelectIcon/index.js +18 -0
- package/lib/icons/ShelfIcon/ShelfIcon.d.ts +12 -0
- package/lib/icons/ShelfIcon/ShelfIcon.js +52 -0
- package/lib/icons/ShelfIcon/index.d.ts +2 -0
- package/lib/icons/ShelfIcon/index.js +6 -0
- package/lib/icons/SpinnerIcon/SpinnerIcon.d.ts +8 -0
- package/lib/icons/SpinnerIcon/SpinnerIcon.js +30 -0
- package/lib/icons/SpinnerIcon/index.d.ts +1 -0
- package/lib/icons/SpinnerIcon/index.js +6 -0
- package/lib/icons/ThumbDownIcon/ThumbDownIcon.d.ts +4 -0
- package/lib/icons/ThumbDownIcon/ThumbDownIcon.js +14 -0
- package/lib/icons/ThumbDownIcon/index.d.ts +1 -0
- package/lib/icons/ThumbDownIcon/index.js +18 -0
- package/lib/icons/ThumbUpIcon/ThumbUpIcon.d.ts +4 -0
- package/lib/icons/ThumbUpIcon/ThumbUpIcon.js +14 -0
- package/lib/icons/ThumbUpIcon/index.d.ts +1 -0
- package/lib/icons/ThumbUpIcon/index.js +18 -0
- package/lib/icons/index.d.ts +26 -0
- package/lib/icons/index.js +43 -0
- package/lib/index.d.ts +10 -0
- package/lib/index.js +27 -0
- package/lib/layouts/Forbidden.d.ts +2 -0
- package/lib/layouts/Forbidden.js +45 -0
- package/lib/layouts/NotFound.d.ts +2 -0
- package/lib/layouts/NotFound.js +45 -0
- package/lib/layouts/OIDCForbidden.d.ts +2 -0
- package/lib/layouts/OIDCForbidden.js +92 -0
- package/lib/layouts/PageLayout.d.ts +6 -0
- package/lib/layouts/PageLayout.js +29 -0
- package/lib/layouts/RootLayout.d.ts +6 -0
- package/lib/layouts/RootLayout.js +19 -0
- package/lib/layouts/index.d.ts +5 -0
- package/lib/layouts/index.js +22 -0
- package/lib/mocks/Feedback/useSubmitFeedback.d.ts +1 -0
- package/lib/mocks/Feedback/useSubmitFeedback.js +18 -0
- package/lib/mocks/Link.d.ts +2 -0
- package/lib/mocks/Link.js +27 -0
- package/lib/mocks/Profile/useProfileProps.d.ts +1 -0
- package/lib/mocks/Profile/useProfileProps.js +17 -0
- package/lib/mocks/Sidebar/getMenuType.d.ts +2 -0
- package/lib/mocks/Sidebar/getMenuType.js +10 -0
- package/lib/mocks/Sidebar/types.d.ts +11 -0
- package/lib/mocks/Sidebar/types.js +11 -0
- package/lib/mocks/Sidebar/useBreadcrumbs.d.ts +4 -0
- package/lib/mocks/Sidebar/useBreadcrumbs.js +8 -0
- package/lib/mocks/Sidebar/useDrilldown.d.ts +8 -0
- package/lib/mocks/Sidebar/useDrilldown.js +19 -0
- package/lib/mocks/Sidebar/useMenuGroup.d.ts +6 -0
- package/lib/mocks/Sidebar/useMenuGroup.js +17 -0
- package/lib/mocks/Sidebar/useSidebarItems.d.ts +3 -0
- package/lib/mocks/Sidebar/useSidebarItems.js +8 -0
- package/lib/mocks/constants/index.d.ts +2 -0
- package/lib/mocks/constants/index.js +6 -0
- package/lib/mocks/hooks/index.d.ts +35 -0
- package/lib/mocks/hooks/index.js +109 -0
- package/lib/mocks/hooks/usePageData.d.ts +6 -0
- package/lib/mocks/hooks/usePageData.js +11 -0
- package/lib/mocks/media-css.d.ts +5 -0
- package/lib/mocks/media-css.js +5 -0
- package/lib/mocks/search.d.ts +32 -0
- package/lib/mocks/search.js +46 -0
- package/lib/mocks/telemetry.d.ts +2 -0
- package/lib/mocks/telemetry.js +7 -0
- package/lib/mocks/types/index.d.ts +1 -0
- package/lib/mocks/types/index.js +3 -0
- package/lib/mocks/types.d.ts +3 -0
- package/lib/mocks/types.js +4 -0
- package/lib/mocks/useGlobalData.d.ts +1 -0
- package/lib/mocks/useGlobalData.js +8 -0
- package/lib/mocks/usePreloadHistory.d.ts +3 -0
- package/lib/mocks/usePreloadHistory.js +13 -0
- package/lib/mocks/utils.d.ts +7 -0
- package/lib/mocks/utils.js +22 -0
- package/lib/types/config.d.ts +5 -0
- package/lib/types/config.js +3 -0
- package/lib/types/portal/index.d.ts +3 -0
- package/lib/types/portal/index.js +19 -0
- package/lib/types/portal/src/shared/constants.d.ts +21 -0
- package/lib/types/portal/src/shared/constants.js +26 -0
- package/lib/types/portal/src/shared/types/activeItem.d.ts +3 -0
- package/lib/types/portal/src/shared/types/activeItem.js +3 -0
- package/lib/types/portal/src/shared/types/catalog.d.ts +43 -0
- package/lib/types/portal/src/shared/types/catalog.js +3 -0
- package/lib/types/portal/src/shared/types/feedback.d.ts +13 -0
- package/lib/types/portal/src/shared/types/feedback.js +3 -0
- package/lib/types/portal/src/shared/types/markdown.d.ts +5 -0
- package/lib/types/portal/src/shared/types/markdown.js +3 -0
- package/lib/types/portal/src/shared/types/nav.d.ts +173 -0
- package/lib/types/portal/src/shared/types/nav.js +8 -0
- package/lib/types/portal/src/shared/types/searchDocument.d.ts +21 -0
- package/lib/types/portal/src/shared/types/searchDocument.js +5 -0
- package/lib/ui/ArrowBack.d.ts +5 -0
- package/lib/ui/ArrowBack.js +21 -0
- package/lib/ui/Background.d.ts +7 -0
- package/lib/ui/Background.js +21 -0
- package/lib/ui/Box.d.ts +6 -0
- package/lib/ui/Box.js +22 -0
- package/lib/ui/Burger.d.ts +8 -0
- package/lib/ui/Burger.js +32 -0
- package/lib/ui/Checkbox.d.ts +1 -0
- package/lib/ui/Checkbox.js +70 -0
- package/lib/ui/Dropdown.d.ts +8 -0
- package/lib/ui/Dropdown.js +114 -0
- package/lib/ui/Flex.d.ts +10 -0
- package/lib/ui/Flex.js +21 -0
- package/lib/ui/Highlight.d.ts +5 -0
- package/lib/ui/Highlight.js +63 -0
- package/lib/ui/Jumbotron.d.ts +18 -0
- package/lib/ui/Jumbotron.js +51 -0
- package/lib/ui/darkColors.d.ts +1 -0
- package/lib/ui/darkColors.js +225 -0
- package/lib/ui/index.d.ts +9 -0
- package/lib/ui/index.js +27 -0
- package/lib/utils/ClipboardService.d.ts +4 -0
- package/lib/utils/ClipboardService.js +33 -0
- package/lib/utils/args-typecheck.d.ts +2 -0
- package/lib/utils/args-typecheck.js +14 -0
- package/lib/utils/class-names.d.ts +1 -0
- package/lib/utils/class-names.js +12 -0
- package/lib/utils/color.d.ts +1 -0
- package/lib/utils/color.js +15 -0
- package/lib/utils/css-variables.d.ts +1 -0
- package/lib/utils/css-variables.js +6 -0
- package/lib/utils/getNavbarElement.d.ts +1 -0
- package/lib/utils/getNavbarElement.js +15 -0
- package/lib/utils/highlight.d.ts +35 -0
- package/lib/utils/highlight.js +105 -0
- package/lib/utils/index.d.ts +13 -0
- package/lib/utils/index.js +30 -0
- package/lib/utils/isUrl.d.ts +12 -0
- package/lib/utils/isUrl.js +37 -0
- package/lib/utils/jsUtils.d.ts +4 -0
- package/lib/utils/jsUtils.js +21 -0
- package/lib/utils/jsonToHtml.d.ts +4 -0
- package/lib/utils/jsonToHtml.js +180 -0
- package/lib/utils/media-css.d.ts +12 -0
- package/lib/utils/media-css.js +13 -0
- package/lib/utils/replaceHashInColor.d.ts +1 -0
- package/lib/utils/replaceHashInColor.js +8 -0
- package/lib/utils/tags-parser.d.ts +1 -0
- package/lib/utils/tags-parser.js +10 -0
- package/lib/utils/text-transform.d.ts +1 -0
- package/lib/utils/text-transform.js +8 -0
- package/lib/utils/theme-helpers.d.ts +4 -0
- package/lib/utils/theme-helpers.js +75 -0
- package/lib/utils/urls.d.ts +11 -0
- package/lib/utils/urls.js +55 -0
- package/package.json +112 -0
- package/src/components/ApiOnboarding/AppCustomAttributes.tsx +9 -0
- package/src/components/Breadcrumbs/Breadcrumb.tsx +59 -0
- package/src/components/Breadcrumbs/Breadcrumbs.tsx +60 -0
- package/src/components/Breadcrumbs/index.ts +3 -0
- package/src/components/Breadcrumbs/styledVariables.ts +17 -0
- package/src/components/Button/Button.tsx +170 -0
- package/src/components/Button/index.ts +2 -0
- package/src/components/Button/styledVariables.ts +115 -0
- package/src/components/Cards/Card.tsx +54 -0
- package/src/components/Cards/CardsBlock.tsx +10 -0
- package/src/components/Cards/index.ts +2 -0
- package/src/components/Catalog/Catalog.tsx +234 -0
- package/src/components/Catalog/CatalogCard.tsx +171 -0
- package/src/components/Catalog/index.ts +4 -0
- package/src/components/Catalog/styledVariables.ts +94 -0
- package/src/components/Catalog/useCatalog.ts +373 -0
- package/src/components/CodeBlock/CodeBlock.tsx +104 -0
- package/src/components/CodeBlock/CodeBlockContainer.tsx +124 -0
- package/src/components/CodeBlock/CodeBlockControlButton.tsx +28 -0
- package/src/components/CodeBlock/CodeBlockControls.tsx +188 -0
- package/src/components/CodeBlock/index.ts +5 -0
- package/src/components/CodeBlock/styledVariables.ts +89 -0
- package/src/components/ColorModeSwitcher/ColorModeSwitcher.tsx +78 -0
- package/src/components/ColorModeSwitcher/index.ts +1 -0
- package/src/components/CopyButton/CopyButton.tsx +78 -0
- package/src/components/CopyButton/index.ts +1 -0
- package/src/components/Dropdown/Dropdown.tsx +147 -0
- package/src/components/Dropdown/index.ts +2 -0
- package/src/components/Dropdown/styledVariables.ts +27 -0
- package/src/components/EditPageButton/EditPageButton.tsx +54 -0
- package/src/components/EditPageButton/index.ts +1 -0
- package/src/components/Feedback/Comment.tsx +140 -0
- package/src/components/Feedback/Emotions.tsx +38 -0
- package/src/components/Feedback/Feedback.tsx +94 -0
- package/src/components/Feedback/Mood.tsx +236 -0
- package/src/components/Feedback/Rating.tsx +155 -0
- package/src/components/Feedback/Reasons.tsx +90 -0
- package/src/components/Feedback/ReportDialog.tsx +56 -0
- package/src/components/Feedback/Scale.tsx +225 -0
- package/src/components/Feedback/Sentiment.tsx +197 -0
- package/src/components/Feedback/Stars.tsx +51 -0
- package/src/components/Feedback/Thumbs.tsx +27 -0
- package/src/components/Feedback/index.ts +10 -0
- package/src/components/Feedback/types.ts +115 -0
- package/src/components/Feedback/useReportDialog.ts +57 -0
- package/src/components/Filter/Filter.tsx +276 -0
- package/src/components/Filter/FilterContent.tsx +105 -0
- package/src/components/Filter/FilterPopover.tsx +146 -0
- package/src/components/Filter/FilterTag.tsx +37 -0
- package/src/components/Filter/FilterTags.tsx +39 -0
- package/src/components/Filter/index.ts +6 -0
- package/src/components/Filter/styledVariables.ts +108 -0
- package/src/components/Footer/CustomFooter.tsx +46 -0
- package/src/components/Footer/CustomFooterNavItem.tsx +41 -0
- package/src/components/Footer/Footer.tsx +78 -0
- package/src/components/Footer/FooterColumn.tsx +151 -0
- package/src/components/Footer/FooterColumns.tsx +56 -0
- package/src/components/Footer/FooterCopyright.tsx +45 -0
- package/src/components/Footer/index.ts +5 -0
- package/src/components/Footer/styledVariables.ts +58 -0
- package/src/components/Image/Image.tsx +47 -0
- package/src/components/Image/index.ts +1 -0
- package/src/components/JsonViewer/JsonViewer.tsx +226 -0
- package/src/components/JsonViewer/index.ts +1 -0
- package/src/components/LastUpdated/LastUpdated.tsx +85 -0
- package/src/components/LastUpdated/index.ts +2 -0
- package/src/components/LastUpdated/styledVariables.ts +8 -0
- package/src/components/Markdown/Admonition.tsx +85 -0
- package/src/components/Markdown/ContainerWrapper.tsx +21 -0
- package/src/components/Markdown/Details.tsx +24 -0
- package/src/components/Markdown/Heading.tsx +47 -0
- package/src/components/Markdown/MarkdownLayout.tsx +75 -0
- package/src/components/Markdown/MarkdownWrapper.tsx +398 -0
- package/src/components/Markdown/Mermaid.tsx +38 -0
- package/src/components/Markdown/PageWrapper.tsx +10 -0
- package/src/components/Markdown/Sup.tsx +17 -0
- package/src/components/Markdown/index.ts +10 -0
- package/src/components/Markdown/styledVariables.ts +284 -0
- package/src/components/Menu/Menu.tsx +46 -0
- package/src/components/Menu/MenuContainer.tsx +17 -0
- package/src/components/Menu/MenuGroup.tsx +122 -0
- package/src/components/Menu/MenuItem.tsx +48 -0
- package/src/components/Menu/MenuItemLabel.tsx +46 -0
- package/src/components/Menu/MenuItemSwitch.tsx +61 -0
- package/src/components/Menu/MenuLink.tsx +11 -0
- package/src/components/Menu/MenuLinkItem.tsx +30 -0
- package/src/components/Menu/MobileMenu.tsx +151 -0
- package/src/components/Menu/MobileMenuGroup.tsx +93 -0
- package/src/components/Menu/constants.ts +5 -0
- package/src/components/Menu/hooks/use-mobile-menu-items.ts +96 -0
- package/src/components/Menu/hooks/use-mobile-menu-levels.ts +50 -0
- package/src/components/Menu/index.ts +13 -0
- package/src/components/Menu/styledVariables.ts +101 -0
- package/src/components/Menu/types.ts +4 -0
- package/src/components/Menu/utils.ts +110 -0
- package/src/components/Navbar/BurgerButton.tsx +34 -0
- package/src/components/Navbar/Navbar.tsx +178 -0
- package/src/components/Navbar/NavbarItem.tsx +148 -0
- package/src/components/Navbar/NavbarMenu.tsx +43 -0
- package/src/components/Navbar/index.ts +5 -0
- package/src/components/Navbar/styledVariables.ts +39 -0
- package/src/components/NavbarLogo/NavbarLogo.tsx +48 -0
- package/src/components/NavbarLogo/index.ts +2 -0
- package/src/components/NavbarLogo/styledVariables.ts +14 -0
- package/src/components/OpenApiDocs/ClearButton.tsx +32 -0
- package/src/components/OpenApiDocs/DevOnboardingTryItSecurity.tsx +176 -0
- package/src/components/OpenApiDocs/Dropdown.tsx +202 -0
- package/src/components/OpenApiDocs/ScorecardBadges.tsx +83 -0
- package/src/components/OpenApiDocs/TryItSecurityApps.tsx +17 -0
- package/src/components/OpenApiDocs/hooks/AfterOpenApiOperation.tsx +9 -0
- package/src/components/OpenApiDocs/hooks/AfterOpenApiOperationSummary.tsx +9 -0
- package/src/components/OpenApiDocs/hooks/AfterOpenApiTitle.tsx +9 -0
- package/src/components/OpenApiDocs/hooks/BeforeOpenApiOperation.tsx +9 -0
- package/src/components/OpenApiDocs/hooks/BeforeOpenApiOperationSummary.tsx +9 -0
- package/src/components/OpenApiDocs/hooks/OpenApiFooter.tsx +5 -0
- package/src/components/OpenApiDocs/hooks/OpenApiHeader.tsx +5 -0
- package/src/components/OpenApiDocs/hooks/OpenApiTryItSecurityPanel.tsx +12 -0
- package/src/components/OpenApiDocs/index.ts +10 -0
- package/src/components/PageNavigation/NextButton.tsx +46 -0
- package/src/components/PageNavigation/PageNavigation.tsx +46 -0
- package/src/components/PageNavigation/PreviousButton.tsx +49 -0
- package/src/components/PageNavigation/index.ts +3 -0
- package/src/components/Panel/Panel.ts +34 -0
- package/src/components/Panel/PanelBody.ts +43 -0
- package/src/components/Panel/PanelComponent.tsx +79 -0
- package/src/components/Panel/PanelHeader.ts +37 -0
- package/src/components/Panel/PanelHeaderTitle.ts +12 -0
- package/src/components/Panel/index.ts +6 -0
- package/src/components/Panel/styledVariables.ts +480 -0
- package/src/components/Product/Product.tsx +28 -0
- package/src/components/Product/ProductPicker.tsx +96 -0
- package/src/components/Product/index.ts +3 -0
- package/src/components/Product/styledVariables.ts +40 -0
- package/src/components/Profile/AuthUserProfile.tsx +25 -0
- package/src/components/Profile/LoginLink.tsx +42 -0
- package/src/components/Profile/MobileUserProfile.tsx +79 -0
- package/src/components/Profile/Profile.tsx +85 -0
- package/src/components/Profile/UserProfile.tsx +118 -0
- package/src/components/Profile/UserProfileData.tsx +40 -0
- package/src/components/Profile/index.ts +10 -0
- package/src/components/Profile/styledVariables.ts +53 -0
- package/src/components/Profile/types.ts +12 -0
- package/src/components/Scorecard/Card.tsx +33 -0
- package/src/components/Scorecard/Gauge.tsx +52 -0
- package/src/components/Scorecard/StatusByLevelWidget.tsx +71 -0
- package/src/components/Search/CancelSearch.tsx +32 -0
- package/src/components/Search/ClearIcon.tsx +34 -0
- package/src/components/Search/ClockBackwardsIcon.tsx +26 -0
- package/src/components/Search/Input.tsx +21 -0
- package/src/components/Search/InputWrapper.tsx +89 -0
- package/src/components/Search/MobileSearchTrigger.tsx +38 -0
- package/src/components/Search/Popover.tsx +29 -0
- package/src/components/Search/ProductTag.tsx +46 -0
- package/src/components/Search/RecentSearches.tsx +130 -0
- package/src/components/Search/Search.tsx +59 -0
- package/src/components/Search/SearchDialog.tsx +178 -0
- package/src/components/Search/SearchIcon.tsx +39 -0
- package/src/components/Search/SearchItem.tsx +152 -0
- package/src/components/Search/SearchTrigger.tsx +65 -0
- package/src/components/Search/Shortcut.tsx +34 -0
- package/src/components/Search/ShortcutKey.tsx +27 -0
- package/src/components/Search/SuggestedPages.tsx +96 -0
- package/src/components/Search/index.ts +19 -0
- package/src/components/Search/styledVariables.ts +95 -0
- package/src/components/Search/utils.tsx +20 -0
- package/src/components/Select/Select.tsx +189 -0
- package/src/components/Select/index.ts +2 -0
- package/src/components/Select/styledVariables.ts +31 -0
- package/src/components/Separator/Separator.tsx +34 -0
- package/src/components/Separator/SeparatorItem.tsx +28 -0
- package/src/components/Separator/SeparatorLine.tsx +14 -0
- package/src/components/Separator/index.ts +3 -0
- package/src/components/Sidebar/ApiCallItem.tsx +53 -0
- package/src/components/Sidebar/BackButton.tsx +50 -0
- package/src/components/Sidebar/Drilldown.tsx +49 -0
- package/src/components/Sidebar/DrilldownMenu.tsx +65 -0
- package/src/components/Sidebar/DrilldownMenuItem.tsx +41 -0
- package/src/components/Sidebar/FooterWrapper.tsx +16 -0
- package/src/components/Sidebar/HeaderWrapper.tsx +10 -0
- package/src/components/Sidebar/MobileSidebarButton.tsx +41 -0
- package/src/components/Sidebar/MobileSidebarIcon.tsx +18 -0
- package/src/components/Sidebar/Sidebar.tsx +55 -0
- package/src/components/Sidebar/SidebarItemIcon.tsx +10 -0
- package/src/components/Sidebar/SidebarLayout.tsx +109 -0
- package/src/components/Sidebar/VersionPicker.tsx +112 -0
- package/src/components/Sidebar/index.ts +15 -0
- package/src/components/Sidebar/styledVariables.ts +220 -0
- package/src/components/Sidebar/types.ts +52 -0
- package/src/components/SidebarActions/ChangeViewButton.tsx +24 -0
- package/src/components/SidebarActions/CollapseSidebarButton.tsx +45 -0
- package/src/components/SidebarActions/SidebarActions.tsx +89 -0
- package/src/components/SidebarActions/ToggleRightPanelButton.tsx +25 -0
- package/src/components/SidebarActions/index.tsx +4 -0
- package/src/components/SidebarActions/styled.tsx +156 -0
- package/src/components/SidebarLogo/SidebarLogo.tsx +54 -0
- package/src/components/SidebarLogo/index.ts +1 -0
- package/src/components/TableOfContent/TableOfContent.tsx +127 -0
- package/src/components/TableOfContent/index.ts +2 -0
- package/src/components/TableOfContent/styledVariables.ts +44 -0
- package/src/components/TableOfContent/utils.ts +42 -0
- package/src/components/Tabs/Tab.tsx +69 -0
- package/src/components/Tabs/Tabs.tsx +79 -0
- package/src/components/Tabs/index.ts +2 -0
- package/src/components/Tag/Tag.tsx +72 -0
- package/src/components/Tag/index.ts +2 -0
- package/src/components/Tag/styledVariables.ts +145 -0
- package/src/components/Tiles/ThinTile.tsx +136 -0
- package/src/components/Tiles/TileHeader.ts +14 -0
- package/src/components/Tiles/TileText.tsx +13 -0
- package/src/components/Tiles/WideTile.tsx +140 -0
- package/src/components/Tiles/index.ts +4 -0
- package/src/components/Tiles/types.ts +19 -0
- package/src/components/Tooltip/Tooltip.tsx +202 -0
- package/src/components/Tooltip/index.ts +2 -0
- package/src/components/Tooltip/styledVariables.ts +18 -0
- package/src/components/Typography/CompactTypography.ts +9 -0
- package/src/components/Typography/Emphasis.ts +8 -0
- package/src/components/Typography/H1.ts +13 -0
- package/src/components/Typography/H2.ts +13 -0
- package/src/components/Typography/H3.ts +13 -0
- package/src/components/Typography/SectionHeader.ts +14 -0
- package/src/components/Typography/Typography.ts +30 -0
- package/src/components/Typography/index.ts +7 -0
- package/src/components/index.ts +29 -0
- package/src/config.ts +752 -0
- package/src/globalStyle.ts +1010 -0
- package/src/hooks/__tests__/mocks/MockIntersectionObserver.ts +48 -0
- package/src/hooks/index.ts +9 -0
- package/src/hooks/useActiveHeading.ts +110 -0
- package/src/hooks/useActiveSectionId.ts +54 -0
- package/src/hooks/useControl.ts +20 -0
- package/src/hooks/useDialogHotKeys.ts +48 -0
- package/src/hooks/useFullHeight.ts +49 -0
- package/src/hooks/useMobileMenu.ts +16 -0
- package/src/hooks/useModalScrollLock.ts +12 -0
- package/src/hooks/useMount.ts +8 -0
- package/src/hooks/useNavbarHeight.ts +25 -0
- package/src/hooks/useOutsideClick.ts +23 -0
- package/src/hooks/useThemeConfig.ts +24 -0
- package/src/hooks/useUnmount.ts +10 -0
- package/src/i18n/LanguagePicker.tsx +120 -0
- package/src/i18n/index.ts +2 -0
- package/src/i18n/styledVariables.ts +37 -0
- package/src/icons/AlertIcon/AlertIcon.tsx +111 -0
- package/src/icons/AlertIcon/index.ts +2 -0
- package/src/icons/AnchorIcon/AnchorIcon.tsx +36 -0
- package/src/icons/AnchorIcon/index.ts +2 -0
- package/src/icons/ArrowIcon/ArrowIcon.tsx +61 -0
- package/src/icons/ArrowIcon/index.ts +2 -0
- package/src/icons/BurgerIcon/BurgerIcon.tsx +12 -0
- package/src/icons/BurgerIcon/index.ts +1 -0
- package/src/icons/CheckboxIcon/CheckboxIcon.tsx +64 -0
- package/src/icons/CheckboxIcon/index.ts +1 -0
- package/src/icons/CloseIcon/CloseIcon.tsx +13 -0
- package/src/icons/CloseIcon/index.ts +1 -0
- package/src/icons/CollapseIcon/CollapseIcon.tsx +40 -0
- package/src/icons/CollapseIcon/index.tsx +1 -0
- package/src/icons/ColorModeIcon/ColorModeIcon.tsx +57 -0
- package/src/icons/ColorModeIcon/index.ts +2 -0
- package/src/icons/CopyIcon/CopyIcon.tsx +32 -0
- package/src/icons/CopyIcon/index.ts +1 -0
- package/src/icons/DeselectIcon/DeselectIcon.tsx +28 -0
- package/src/icons/DeselectIcon/index.ts +1 -0
- package/src/icons/DissatisfiedIcon/DissatisfiedIcon.tsx +28 -0
- package/src/icons/DissatisfiedIcon/index.ts +1 -0
- package/src/icons/EditIcon/EditIcon.tsx +30 -0
- package/src/icons/EditIcon/index.ts +1 -0
- package/src/icons/ErrorIcon/ErrorIcon.tsx +15 -0
- package/src/icons/ErrorIcon/index.ts +1 -0
- package/src/icons/ExpandIcon/ExpandIcon.tsx +39 -0
- package/src/icons/ExpandIcon/index.ts +1 -0
- package/src/icons/ExternalIcon/ExternalIcon.tsx +44 -0
- package/src/icons/ExternalIcon/index.ts +1 -0
- package/src/icons/FileIcon/FileIcon.tsx +28 -0
- package/src/icons/FileIcon/index.ts +1 -0
- package/src/icons/LanguageIcon/LanguageIcon.tsx +15 -0
- package/src/icons/LanguageIcon/index.ts +1 -0
- package/src/icons/LogoutIcon/LogoutIcon.tsx +20 -0
- package/src/icons/LogoutIcon/index.ts +1 -0
- package/src/icons/NeutralIcon/NeutralIcon.tsx +25 -0
- package/src/icons/NeutralIcon/index.ts +1 -0
- package/src/icons/PlusIcon/PlusIcon.tsx +25 -0
- package/src/icons/PlusIcon/index.ts +1 -0
- package/src/icons/PointingArrowIcon/PointingArrowIcon.tsx +16 -0
- package/src/icons/PointingArrowIcon/index.ts +1 -0
- package/src/icons/RadioCheckButtonIcon/RadioCheckButtonIcon.tsx +19 -0
- package/src/icons/RadioCheckButtonIcon/index.ts +1 -0
- package/src/icons/ReportIcon/ReportIcon.tsx +36 -0
- package/src/icons/ReportIcon/index.ts +1 -0
- package/src/icons/RocketIcon/RocketIcon.tsx +32 -0
- package/src/icons/RocketIcon/index.tsx +1 -0
- package/src/icons/SatisfiedIcon/SatisfiedIcon.tsx +41 -0
- package/src/icons/SatisfiedIcon/index.ts +1 -0
- package/src/icons/SelectIcon/SelectIcon.tsx +30 -0
- package/src/icons/SelectIcon/index.ts +1 -0
- package/src/icons/ShelfIcon/ShelfIcon.tsx +47 -0
- package/src/icons/ShelfIcon/index.ts +2 -0
- package/src/icons/SpinnerIcon/SpinnerIcon.tsx +40 -0
- package/src/icons/SpinnerIcon/index.ts +1 -0
- package/src/icons/ThumbDownIcon/ThumbDownIcon.tsx +15 -0
- package/src/icons/ThumbDownIcon/index.ts +1 -0
- package/src/icons/ThumbUpIcon/ThumbUpIcon.tsx +15 -0
- package/src/icons/ThumbUpIcon/index.ts +1 -0
- package/src/icons/index.ts +26 -0
- package/src/index.ts +10 -0
- package/src/layouts/Forbidden.tsx +51 -0
- package/src/layouts/NotFound.tsx +51 -0
- package/src/layouts/OIDCForbidden.tsx +85 -0
- package/src/layouts/PageLayout.tsx +34 -0
- package/src/layouts/RootLayout.tsx +21 -0
- package/src/layouts/index.ts +5 -0
- package/src/mocks/Feedback/useSubmitFeedback.tsx +4 -0
- package/src/mocks/Link.tsx +17 -0
- package/src/mocks/Profile/useProfileProps.tsx +12 -0
- package/src/mocks/Sidebar/getMenuType.ts +6 -0
- package/src/mocks/Sidebar/types.ts +15 -0
- package/src/mocks/Sidebar/useBreadcrumbs.ts +3 -0
- package/src/mocks/Sidebar/useDrilldown.tsx +12 -0
- package/src/mocks/Sidebar/useMenuGroup.tsx +10 -0
- package/src/mocks/Sidebar/useSidebarItems.tsx +7 -0
- package/src/mocks/constants/index.ts +2 -0
- package/src/mocks/hooks/index.ts +118 -0
- package/src/mocks/hooks/usePageData.ts +12 -0
- package/src/mocks/media-css.ts +1 -0
- package/src/mocks/search.ts +66 -0
- package/src/mocks/telemetry.ts +5 -0
- package/src/mocks/types/index.ts +1 -0
- package/src/mocks/types.ts +5 -0
- package/src/mocks/useGlobalData.tsx +3 -0
- package/src/mocks/usePreloadHistory.ts +9 -0
- package/src/mocks/utils.ts +22 -0
- package/src/settings.yaml +29 -0
- package/src/types/config.ts +5 -0
- package/src/types/portal/index.ts +3 -0
- package/src/types/portal/src/shared/constants.ts +21 -0
- package/src/types/portal/src/shared/types/activeItem.ts +1 -0
- package/src/types/portal/src/shared/types/catalog.ts +44 -0
- package/src/types/portal/src/shared/types/feedback.ts +22 -0
- package/src/types/portal/src/shared/types/i18n.d.ts +5 -0
- package/src/types/portal/src/shared/types/markdown.ts +6 -0
- package/src/types/portal/src/shared/types/nav.ts +191 -0
- package/src/types/portal/src/shared/types/searchDocument.ts +23 -0
- package/src/ui/ArrowBack.tsx +33 -0
- package/src/ui/Background.tsx +16 -0
- package/src/ui/Box.tsx +37 -0
- package/src/ui/Burger.tsx +39 -0
- package/src/ui/Checkbox.tsx +64 -0
- package/src/ui/Dropdown.tsx +131 -0
- package/src/ui/Flex.tsx +24 -0
- package/src/ui/Highlight.tsx +48 -0
- package/src/ui/Jumbotron.tsx +57 -0
- package/src/ui/darkColors.tsx +222 -0
- package/src/ui/index.tsx +12 -0
- package/src/utils/ClipboardService.ts +25 -0
- package/src/utils/args-typecheck.ts +9 -0
- package/src/utils/class-names.ts +8 -0
- package/src/utils/color.ts +12 -0
- package/src/utils/css-variables.ts +4 -0
- package/src/utils/getNavbarElement.ts +10 -0
- package/src/utils/highlight.ts +94 -0
- package/src/utils/index.ts +13 -0
- package/src/utils/isUrl.ts +42 -0
- package/src/utils/jsUtils.ts +18 -0
- package/src/utils/jsonToHtml.ts +234 -0
- package/src/utils/media-css.ts +16 -0
- package/src/utils/replaceHashInColor.ts +3 -0
- package/src/utils/tags-parser.ts +8 -0
- package/src/utils/text-transform.ts +3 -0
- package/src/utils/theme-helpers.ts +83 -0
- package/src/utils/urls.ts +54 -0
|
@@ -0,0 +1,151 @@
|
|
|
1
|
+
import React, { useEffect, useState } from 'react';
|
|
2
|
+
import { useLocation } from 'react-router-dom';
|
|
3
|
+
import styled from 'styled-components';
|
|
4
|
+
|
|
5
|
+
import type { MobileMenuProps } from '@theme/components/Menu/types';
|
|
6
|
+
import { MenuType } from '@theme/components/Menu/constants';
|
|
7
|
+
import { Menu, MenuItemLabel } from '@theme/components/Menu/index';
|
|
8
|
+
import { MobileUserProfile } from '@theme/components/Profile/MobileUserProfile';
|
|
9
|
+
import { useCurrentProduct } from '@portal/hooks';
|
|
10
|
+
import { ArrowIcon } from '@theme/icons';
|
|
11
|
+
import { Product } from '@theme/components/Product/Product';
|
|
12
|
+
import { useMobileMenuLevels } from '@theme/components/Menu/hooks/use-mobile-menu-levels';
|
|
13
|
+
import { useMobileMenuItems } from '@theme/components/Menu/hooks/use-mobile-menu-items';
|
|
14
|
+
|
|
15
|
+
export function MobileMenu({ className, hideUserProfile }: MobileMenuProps): JSX.Element | null {
|
|
16
|
+
const location = useLocation();
|
|
17
|
+
const product = useCurrentProduct();
|
|
18
|
+
|
|
19
|
+
const menuLevels = useMobileMenuLevels();
|
|
20
|
+
|
|
21
|
+
const [menuLevel, setMenuLevel] = useState(menuLevels.length - 1);
|
|
22
|
+
|
|
23
|
+
useEffect(() => {
|
|
24
|
+
setMenuLevel(menuLevels.length - 1);
|
|
25
|
+
}, [menuLevels, location]);
|
|
26
|
+
|
|
27
|
+
const menuType = menuLevels[menuLevel]?.type || MenuType.MAIN_MENU;
|
|
28
|
+
|
|
29
|
+
const menuItems = useMobileMenuItems(menuType);
|
|
30
|
+
|
|
31
|
+
const prevLevelName = menuLevels[menuLevel - 1]?.label;
|
|
32
|
+
const nextLevelName = menuLevels[menuLevel + 1]?.label;
|
|
33
|
+
const isButtonsSectionVisible = nextLevelName || prevLevelName;
|
|
34
|
+
|
|
35
|
+
return (
|
|
36
|
+
<MobileMenuWrapper data-component-name="Menu/MobileMenu" className={className}>
|
|
37
|
+
<ScrollableArea>
|
|
38
|
+
{isButtonsSectionVisible && (
|
|
39
|
+
<ButtonsSection alignRight={!prevLevelName && !!nextLevelName}>
|
|
40
|
+
{prevLevelName && (
|
|
41
|
+
<ControlButton
|
|
42
|
+
data-component-name="Menu/ControlButton"
|
|
43
|
+
onClick={() => setMenuLevel(menuLevel - 1)}
|
|
44
|
+
>
|
|
45
|
+
<ArrowIcon direction="left" weight="thin" />
|
|
46
|
+
<ControlButtonLabel paddingDirection="left">{prevLevelName}</ControlButtonLabel>
|
|
47
|
+
</ControlButton>
|
|
48
|
+
)}
|
|
49
|
+
{nextLevelName && (
|
|
50
|
+
<ControlButton
|
|
51
|
+
data-component-name="Menu/ControlButton"
|
|
52
|
+
onClick={() => setMenuLevel(menuLevel + 1)}
|
|
53
|
+
>
|
|
54
|
+
<ControlButtonLabel paddingDirection="right">{nextLevelName}</ControlButtonLabel>
|
|
55
|
+
<ArrowIcon direction="right" weight="thin" />
|
|
56
|
+
</ControlButton>
|
|
57
|
+
)}
|
|
58
|
+
</ButtonsSection>
|
|
59
|
+
)}
|
|
60
|
+
{menuType === MenuType.PRODUCT && product ? (
|
|
61
|
+
<ProductNameWrapper>
|
|
62
|
+
<Product product={product} />
|
|
63
|
+
</ProductNameWrapper>
|
|
64
|
+
) : null}
|
|
65
|
+
<MenuWrapper>
|
|
66
|
+
<Menu items={menuItems} isMobile />
|
|
67
|
+
</MenuWrapper>
|
|
68
|
+
</ScrollableArea>
|
|
69
|
+
{hideUserProfile ? null : <MobileUserProfile />}
|
|
70
|
+
</MobileMenuWrapper>
|
|
71
|
+
);
|
|
72
|
+
}
|
|
73
|
+
const MobileMenuWrapper = styled.div`
|
|
74
|
+
height: var(--mobile-menu-wrapper-height);
|
|
75
|
+
width: var(--mobile-menu-wrapper-width);
|
|
76
|
+
position: fixed;
|
|
77
|
+
z-index: var(--mobile-menu-wrapper-z-index);
|
|
78
|
+
left: var(--mobile-menu-wrapper-left);
|
|
79
|
+
top: var(--mobile-menu-wrapper-top);
|
|
80
|
+
overflow-x: hidden;
|
|
81
|
+
transition: var(--mobile-menu-wrapper-transition);
|
|
82
|
+
display: flex;
|
|
83
|
+
flex-direction: column;
|
|
84
|
+
background: var(--mobile-menu-wrapper-background);
|
|
85
|
+
|
|
86
|
+
${({ theme }) => theme.mediaQueries.medium} {
|
|
87
|
+
display: none;
|
|
88
|
+
}
|
|
89
|
+
`;
|
|
90
|
+
|
|
91
|
+
const ButtonsSection = styled.div<{ alignRight: boolean }>`
|
|
92
|
+
align-items: center;
|
|
93
|
+
display: flex;
|
|
94
|
+
justify-content: space-between;
|
|
95
|
+
${({ alignRight }) => alignRight && 'justify-content: flex-end'};
|
|
96
|
+
`;
|
|
97
|
+
|
|
98
|
+
const ScrollableArea = styled.div`
|
|
99
|
+
padding-top: var(--mobile-menu-padding-top);
|
|
100
|
+
overflow-y: scroll;
|
|
101
|
+
flex-grow: 1;
|
|
102
|
+
`;
|
|
103
|
+
|
|
104
|
+
const MenuWrapper = styled.div`
|
|
105
|
+
margin: var(--mobile-menu-margin);
|
|
106
|
+
line-height: var(--mobile-menu-line-height);
|
|
107
|
+
background: var(--mobile-menu-background);
|
|
108
|
+
|
|
109
|
+
${MenuItemLabel} {
|
|
110
|
+
margin: var(--mobile-menu-item-margin);
|
|
111
|
+
border-radius: var(--mobile-menu-item-radius);
|
|
112
|
+
}
|
|
113
|
+
`;
|
|
114
|
+
|
|
115
|
+
export const ControlButton = styled.li`
|
|
116
|
+
display: inline-block;
|
|
117
|
+
padding: var(--mobile-menu-control-button-padding);
|
|
118
|
+
margin: var(--mobile-menu-control-button-margin);
|
|
119
|
+
text-align: var(--mobile-menu-control-button-text-align);
|
|
120
|
+
font-size: var(--mobile-menu-control-button-font-size);
|
|
121
|
+
line-height: var(--mobile-menu-control-button-line-height);
|
|
122
|
+
font-weight: var(--mobile-menu-control-button-weight);
|
|
123
|
+
color: var(--mobile-menu-control-button-color);
|
|
124
|
+
cursor: pointer;
|
|
125
|
+
|
|
126
|
+
svg {
|
|
127
|
+
fill: var(--mobile-menu-control-button-color);
|
|
128
|
+
}
|
|
129
|
+
|
|
130
|
+
&:hover {
|
|
131
|
+
color: var(--mobile-menu-control-button-hover-color);
|
|
132
|
+
|
|
133
|
+
svg {
|
|
134
|
+
fill: var(--mobile-menu-control-button-hover-color);
|
|
135
|
+
}
|
|
136
|
+
}
|
|
137
|
+
`;
|
|
138
|
+
|
|
139
|
+
const ControlButtonLabel = styled.span<{ paddingDirection: 'right' | 'left' }>`
|
|
140
|
+
vertical-align: middle;
|
|
141
|
+
${({ paddingDirection }) => paddingDirection === 'left' && 'padding-left: 8px'};
|
|
142
|
+
${({ paddingDirection }) => paddingDirection === 'right' && 'padding-right: 8px'};
|
|
143
|
+
`;
|
|
144
|
+
|
|
145
|
+
const ProductNameWrapper = styled.div`
|
|
146
|
+
color: var(--mobile-menu-product-name-color);
|
|
147
|
+
border-radius: var(--mobile-menu-product-name-border-radius);
|
|
148
|
+
border: var(--mobile-menu-product-name-border);
|
|
149
|
+
padding: var(--mobile-menu-product-name-padding);
|
|
150
|
+
margin: var(--mobile-menu-product-name-margin);
|
|
151
|
+
`;
|
|
@@ -0,0 +1,93 @@
|
|
|
1
|
+
import React from 'react';
|
|
2
|
+
import styled from 'styled-components';
|
|
3
|
+
|
|
4
|
+
import { MenuLinkItem } from '@theme/components/Menu/MenuLinkItem';
|
|
5
|
+
import { MenuItemLabel } from '@theme/components/Menu/MenuItemLabel';
|
|
6
|
+
import { SeparatorLine } from '@theme/components/Separator/SeparatorLine';
|
|
7
|
+
import type { ItemState } from '@theme/components/Sidebar/types';
|
|
8
|
+
import { useTranslate } from '@portal/hooks';
|
|
9
|
+
import { ArrowIcon } from '@theme/icons';
|
|
10
|
+
import { SidebarItemIcon } from '@theme/components/Sidebar/SidebarItemIcon';
|
|
11
|
+
|
|
12
|
+
interface MenuGroupProps {
|
|
13
|
+
item: ItemState;
|
|
14
|
+
isExpanded: boolean;
|
|
15
|
+
toggleExpanded: () => void;
|
|
16
|
+
}
|
|
17
|
+
|
|
18
|
+
export function MobileMenuGroup({
|
|
19
|
+
item,
|
|
20
|
+
isExpanded,
|
|
21
|
+
toggleExpanded,
|
|
22
|
+
children,
|
|
23
|
+
}: React.PropsWithChildren<MenuGroupProps>): JSX.Element {
|
|
24
|
+
const { translate } = useTranslate();
|
|
25
|
+
|
|
26
|
+
return (
|
|
27
|
+
<Wrapper data-component-name="Menu/MobileMenuGroup">
|
|
28
|
+
<MenuLinkItem item={item}>
|
|
29
|
+
<MenuGroupLabel
|
|
30
|
+
onClick={toggleExpanded}
|
|
31
|
+
active={item.active}
|
|
32
|
+
expanded={isExpanded}
|
|
33
|
+
withArrow={!!item.items.length}
|
|
34
|
+
>
|
|
35
|
+
{!!item.items.length && (
|
|
36
|
+
<ArrowIcon direction={isExpanded ? 'down' : 'right'} weight="thin" />
|
|
37
|
+
)}
|
|
38
|
+
<LabelContainer>
|
|
39
|
+
{item.icon ? <SidebarItemIcon src={item.icon} /> : null}
|
|
40
|
+
<Label>{translate(item.labelTranslationKey, item.label)}</Label>
|
|
41
|
+
</LabelContainer>
|
|
42
|
+
</MenuGroupLabel>
|
|
43
|
+
</MenuLinkItem>
|
|
44
|
+
<MenuWrapper isExpanded={isExpanded}>{children}</MenuWrapper>
|
|
45
|
+
{item.separatorLine ? <SeparatorLine /> : null}
|
|
46
|
+
</Wrapper>
|
|
47
|
+
);
|
|
48
|
+
}
|
|
49
|
+
|
|
50
|
+
const LabelContainer = styled.div`
|
|
51
|
+
display: flex;
|
|
52
|
+
`;
|
|
53
|
+
|
|
54
|
+
const Label = styled.div``;
|
|
55
|
+
|
|
56
|
+
const Wrapper = styled.div``;
|
|
57
|
+
|
|
58
|
+
const MenuWrapper = styled.div<{ isExpanded?: boolean }>`
|
|
59
|
+
padding-left: var(--mobile-menu-item-nested-offset);
|
|
60
|
+
overflow: hidden;
|
|
61
|
+
${(props) => !props.isExpanded && 'max-height: 0'}
|
|
62
|
+
`;
|
|
63
|
+
|
|
64
|
+
const MenuGroupLabel = styled(MenuItemLabel)<{
|
|
65
|
+
active?: boolean;
|
|
66
|
+
expanded?: boolean;
|
|
67
|
+
withArrow?: boolean;
|
|
68
|
+
}>`
|
|
69
|
+
color: var(--mobile-menu-item-text-color);
|
|
70
|
+
background: var(--mobile-menu-background);
|
|
71
|
+
display: flex;
|
|
72
|
+
justify-content: flex-start;
|
|
73
|
+
gap: var(--mobile-menu-item-group-gap);
|
|
74
|
+
|
|
75
|
+
${({ active }) =>
|
|
76
|
+
active &&
|
|
77
|
+
`
|
|
78
|
+
color: var(--mobile-menu-item-active-text-color);
|
|
79
|
+
background-color: var(--mobile-menu-item-active-background-color);
|
|
80
|
+
`}
|
|
81
|
+
|
|
82
|
+
${({ expanded }) =>
|
|
83
|
+
expanded &&
|
|
84
|
+
`
|
|
85
|
+
color: var(--mobile-menu-item-active-text-color);
|
|
86
|
+
`}
|
|
87
|
+
|
|
88
|
+
${({ withArrow }) =>
|
|
89
|
+
!withArrow &&
|
|
90
|
+
`
|
|
91
|
+
padding-left: var(--mobile-menu-item-label-padding);
|
|
92
|
+
`}
|
|
93
|
+
`;
|
|
@@ -0,0 +1,96 @@
|
|
|
1
|
+
import { useLocation } from 'react-router-dom';
|
|
2
|
+
|
|
3
|
+
import type { ResolvedNavItem } from '@theme/types/portal';
|
|
4
|
+
import { useCurrentProduct, useI18nConfig, usePageVersions, useTranslate } from '@portal/hooks';
|
|
5
|
+
import { useSidebarItems } from '@portal/Sidebar/useSidebarItems';
|
|
6
|
+
import { useThemeConfig } from '@theme/hooks';
|
|
7
|
+
|
|
8
|
+
import { MenuType } from '../constants';
|
|
9
|
+
import { buildLanguagesGroup, buildVersionSection, mapNavbarItems } from '../utils';
|
|
10
|
+
|
|
11
|
+
const MENU_SEPARATOR: ResolvedNavItem = {
|
|
12
|
+
type: 'separator',
|
|
13
|
+
separatorLine: true,
|
|
14
|
+
};
|
|
15
|
+
|
|
16
|
+
export const useMobileMenuItems = (menuType: MenuType) => {
|
|
17
|
+
const { versions = [] } = usePageVersions() || {};
|
|
18
|
+
const { defaultLocale, currentLocale, locales } = useI18nConfig();
|
|
19
|
+
const { translate } = useTranslate();
|
|
20
|
+
const activeVersion = versions.find((version) => version.active);
|
|
21
|
+
const sidebarItems = useSidebarItems(activeVersion);
|
|
22
|
+
const location = useLocation();
|
|
23
|
+
|
|
24
|
+
const currentProduct = useCurrentProduct();
|
|
25
|
+
const hasProductNavbarOverride = currentProduct?.themeOverride?.navbar;
|
|
26
|
+
|
|
27
|
+
const productThemeConfig = useThemeConfig();
|
|
28
|
+
const baseThemeConfig = useThemeConfig(false);
|
|
29
|
+
|
|
30
|
+
const baseNavItems = (baseThemeConfig.navbar?.items || []) as ResolvedNavItem[];
|
|
31
|
+
const productNavItems = (
|
|
32
|
+
hasProductNavbarOverride ? productThemeConfig.navbar?.items || [] : []
|
|
33
|
+
) as ResolvedNavItem[];
|
|
34
|
+
|
|
35
|
+
const menuItems: ResolvedNavItem[] = [];
|
|
36
|
+
|
|
37
|
+
if (menuType === MenuType.PAGE) {
|
|
38
|
+
if (activeVersion) {
|
|
39
|
+
// TODO: consider to refactor
|
|
40
|
+
const versionsSection = buildVersionSection(translate, versions, activeVersion);
|
|
41
|
+
menuItems.push(...versionsSection);
|
|
42
|
+
}
|
|
43
|
+
if (menuItems.length && sidebarItems.length) {
|
|
44
|
+
menuItems.push(MENU_SEPARATOR);
|
|
45
|
+
}
|
|
46
|
+
menuItems.push(...(sidebarItems as ResolvedNavItem[]));
|
|
47
|
+
} else if (menuType === MenuType.PRODUCT) {
|
|
48
|
+
menuItems.push(...productNavItems);
|
|
49
|
+
|
|
50
|
+
if (menuItems.length && baseNavItems.length) {
|
|
51
|
+
menuItems.push(MENU_SEPARATOR);
|
|
52
|
+
}
|
|
53
|
+
|
|
54
|
+
if (baseNavItems.length) {
|
|
55
|
+
menuItems.push(...baseNavItems);
|
|
56
|
+
}
|
|
57
|
+
} else if (menuType === MenuType.MAIN_MENU) {
|
|
58
|
+
const productMenuItems: ResolvedNavItem[] = Object.values(baseThemeConfig.products || {}).map(
|
|
59
|
+
(product) => ({
|
|
60
|
+
label: product.name,
|
|
61
|
+
link: product.link,
|
|
62
|
+
icon: product.icon,
|
|
63
|
+
type: 'link',
|
|
64
|
+
}),
|
|
65
|
+
);
|
|
66
|
+
|
|
67
|
+
if (productMenuItems.length) {
|
|
68
|
+
menuItems.push({
|
|
69
|
+
type: 'separator',
|
|
70
|
+
label: translate('theme.mobileMenu.products', 'Products'),
|
|
71
|
+
});
|
|
72
|
+
|
|
73
|
+
menuItems.push(...productMenuItems);
|
|
74
|
+
}
|
|
75
|
+
|
|
76
|
+
if (menuItems.length && baseNavItems.length) {
|
|
77
|
+
menuItems.push(MENU_SEPARATOR);
|
|
78
|
+
}
|
|
79
|
+
|
|
80
|
+
if (baseNavItems.length) {
|
|
81
|
+
menuItems.push(...baseNavItems);
|
|
82
|
+
}
|
|
83
|
+
}
|
|
84
|
+
|
|
85
|
+
const languagesMenu = buildLanguagesGroup(locales, defaultLocale, currentLocale);
|
|
86
|
+
|
|
87
|
+
if (menuItems.length && languagesMenu) {
|
|
88
|
+
menuItems.push(MENU_SEPARATOR);
|
|
89
|
+
}
|
|
90
|
+
|
|
91
|
+
if (languagesMenu) {
|
|
92
|
+
menuItems.push(languagesMenu);
|
|
93
|
+
}
|
|
94
|
+
|
|
95
|
+
return mapNavbarItems(menuItems, defaultLocale, currentLocale, locales, location);
|
|
96
|
+
};
|
|
@@ -0,0 +1,50 @@
|
|
|
1
|
+
import { useMemo } from 'react';
|
|
2
|
+
import { useLocation } from 'react-router-dom';
|
|
3
|
+
|
|
4
|
+
import { useCurrentProduct, usePageVersions, useTranslate } from '@portal/hooks';
|
|
5
|
+
import { useSidebarItems } from '@portal/Sidebar/useSidebarItems';
|
|
6
|
+
import { MenuType } from '@theme/components/Menu/constants';
|
|
7
|
+
import { useThemeConfig } from '@theme/hooks';
|
|
8
|
+
import type { ResolvedNavItem } from '@theme/types/portal';
|
|
9
|
+
|
|
10
|
+
export const useMobileMenuLevels = () => {
|
|
11
|
+
const { versions = [] } = usePageVersions() || {};
|
|
12
|
+
const activeVersion = versions.find((version) => version?.active);
|
|
13
|
+
const sidebarItems = useSidebarItems(activeVersion);
|
|
14
|
+
const { translate } = useTranslate();
|
|
15
|
+
const currentProduct = useCurrentProduct();
|
|
16
|
+
const productThemeConfig = useThemeConfig();
|
|
17
|
+
const location = useLocation();
|
|
18
|
+
|
|
19
|
+
const hasProductNavbarOverride = currentProduct?.themeOverride?.navbar;
|
|
20
|
+
const productNavItems = (
|
|
21
|
+
hasProductNavbarOverride ? productThemeConfig.navbar?.items || [] : []
|
|
22
|
+
) as ResolvedNavItem[];
|
|
23
|
+
|
|
24
|
+
const menuLevels = useMemo(() => {
|
|
25
|
+
const menuLevels = [
|
|
26
|
+
{
|
|
27
|
+
label: translate('theme.mobileMenu.mainMenu', 'Main Menu'),
|
|
28
|
+
type: MenuType.MAIN_MENU,
|
|
29
|
+
},
|
|
30
|
+
];
|
|
31
|
+
|
|
32
|
+
if (currentProduct && productNavItems.length) {
|
|
33
|
+
menuLevels.push({
|
|
34
|
+
label: currentProduct.name,
|
|
35
|
+
type: MenuType.PRODUCT,
|
|
36
|
+
});
|
|
37
|
+
}
|
|
38
|
+
|
|
39
|
+
if (sidebarItems.length || activeVersion) {
|
|
40
|
+
menuLevels.push({
|
|
41
|
+
label: translate('theme.mobileMenu.previous', 'Previous'),
|
|
42
|
+
type: MenuType.PAGE,
|
|
43
|
+
});
|
|
44
|
+
}
|
|
45
|
+
return menuLevels;
|
|
46
|
+
// eslint-disable-next-line react-hooks/exhaustive-deps
|
|
47
|
+
}, [location]);
|
|
48
|
+
|
|
49
|
+
return menuLevels;
|
|
50
|
+
};
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
export * from '@theme/components/Menu/Menu';
|
|
2
|
+
export * from '@theme/components/Menu/MenuItem';
|
|
3
|
+
export * from '@theme/components/Menu/MenuGroup';
|
|
4
|
+
export * from '@theme/components/Menu/MenuContainer';
|
|
5
|
+
export * from '@theme/components/Menu/MenuItemLabel';
|
|
6
|
+
export * from '@theme/components/Menu/MenuItemSwitch';
|
|
7
|
+
export * from '@theme/components/Menu/MenuLink';
|
|
8
|
+
export * from '@theme/components/Menu/MenuLinkItem';
|
|
9
|
+
export * from '@theme/components/Menu/MobileMenu';
|
|
10
|
+
export * from '@theme/components/Menu/MobileMenuGroup';
|
|
11
|
+
export * from '@theme/components/Menu/styledVariables';
|
|
12
|
+
export * from '@theme/components/Menu/types';
|
|
13
|
+
export * from '@theme/components/Menu/constants';
|
|
@@ -0,0 +1,101 @@
|
|
|
1
|
+
import { css } from 'styled-components';
|
|
2
|
+
|
|
3
|
+
export const mobileMenu = css`
|
|
4
|
+
/**
|
|
5
|
+
* @tokens Mobile Menu icons
|
|
6
|
+
*/
|
|
7
|
+
--mobile-menu-icons-size: var(--spacing-md); // @presenter Spacing
|
|
8
|
+
--mobile-menu-search-icon-size: var(--spacing-md); // @presenter Spacing
|
|
9
|
+
|
|
10
|
+
/**
|
|
11
|
+
* @tokens Mobile Menu wrapper
|
|
12
|
+
* */
|
|
13
|
+
--mobile-menu-wrapper-height: calc(100vh - var(--navbar-height));
|
|
14
|
+
--mobile-menu-wrapper-width: 100%;
|
|
15
|
+
--mobile-menu-wrapper-z-index: var(--z-index-raised);
|
|
16
|
+
--mobile-menu-wrapper-left: 0;
|
|
17
|
+
--mobile-menu-wrapper-top: var(--navbar-height);
|
|
18
|
+
--mobile-menu-wrapper-transition: 0.5s;
|
|
19
|
+
--mobile-menu-wrapper-background: var(--bg-base); // @presenter Color
|
|
20
|
+
|
|
21
|
+
/**
|
|
22
|
+
* @tokens Mobile Menu
|
|
23
|
+
* */
|
|
24
|
+
--mobile-menu-margin: var(--mobile-menu-items-margin-top) var(--mobile-menu-horizontal-margin) 0
|
|
25
|
+
var(--mobile-menu-horizontal-margin);
|
|
26
|
+
--mobile-menu-line-height: var(--line-height-base); // @presenter LineHeight
|
|
27
|
+
--mobile-menu-padding-top: var(--spacing-sm); // @presenter Spacing
|
|
28
|
+
--mobile-menu-items-margin-top: var(--spacing-xxs); // @presenter Spacing
|
|
29
|
+
--mobile-menu-burger-button-margin: var(--spacing-xs) var(--spacing-xs) var(--spacing-xs) 0; // @presenter Spacing
|
|
30
|
+
--mobile-menu-background: var(--bg-base); // @presenter Color
|
|
31
|
+
--mobile-menu-profile-background: var(--bg-base); // @presenter Color
|
|
32
|
+
--mobile-menu-profile-border-color: var(--border-secondary); // @presenter Color
|
|
33
|
+
--mobile-menu-group-padding-right: var(--spacing-base); // @presenter Spacing
|
|
34
|
+
--mobile-menu-horizontal-margin: var(--spacing-xs); // @presenter Spacing
|
|
35
|
+
--mobile-menu-item-margin: 0; // @presenter Spacing
|
|
36
|
+
--mobile-menu-item-nested-offset: var(--spacing-xs); // @presenter Spacing
|
|
37
|
+
--mobile-menu-item-radius: var(--border-radius-md); // @presenter Spacing
|
|
38
|
+
--mobile-menu-item-text-color: var(--text-secondary); // @presenter Color
|
|
39
|
+
--mobile-menu-item-active-background-color: var(--bg-raised); // @presenter Color
|
|
40
|
+
--mobile-menu-item-active-text-color: var(--text-primary); // @presenter Color
|
|
41
|
+
--mobile-menu-item-label-padding: var(--spacing-xl); // @presenter Spacing
|
|
42
|
+
--mobile-menu-item-group-gap: var(--spacing-xs); // @presenter Spacing
|
|
43
|
+
|
|
44
|
+
/**
|
|
45
|
+
* @tokens Mobile Menu control button
|
|
46
|
+
* */
|
|
47
|
+
--mobile-menu-control-button-padding-vertical: 0; // @presenter Spacing
|
|
48
|
+
--mobile-menu-control-button-padding-horizontal: var(--spacing-xxs); // @presenter Spacing
|
|
49
|
+
--mobile-menu-control-button-padding: var(--mobile-menu-control-button-padding-vertical) var(--mobile-menu-control-button-padding-horizontal); // @presenter Spacing
|
|
50
|
+
--mobile-menu-control-button-margin-vertical: 0; // @presenter Spacing
|
|
51
|
+
--mobile-menu-control-button-margin-horizontal: var(--spacing-xs); // @presenter Spacing
|
|
52
|
+
--mobile-menu-control-button-margin: var(--mobile-menu-control-button-margin-vertical) var(--mobile-menu-control-button-margin-horizontal); // @presenter Spacing
|
|
53
|
+
--mobile-menu-control-button-font-size: var(--font-size-base); // @presenter FontSize
|
|
54
|
+
--mobile-menu-control-button-weight: var(--font-weight-regular); // @presenter FontWeight
|
|
55
|
+
--mobile-menu-control-button-color: var(--mobile-menu-item-text-color); // @presenter Color
|
|
56
|
+
--mobile-menu-control-button-hover-color: var(--text-primary); // @presenter Color
|
|
57
|
+
--mobile-menu-control-button-text-align: center;
|
|
58
|
+
--mobile-menu-control-button-line-height: var(--line-height-base); // @presenter LineHeight
|
|
59
|
+
|
|
60
|
+
/**
|
|
61
|
+
* @tokens Mobile Menu Login button
|
|
62
|
+
* */
|
|
63
|
+
--mobile-menu-login-button-background: var(--color-primary-bg); // @presenter Color
|
|
64
|
+
--mobile-menu-login-button-color: var(--color-primary-text); // @presenter Color
|
|
65
|
+
--mobile-menu-login-button-hover-color: var(--text-primary); // @presenter Color
|
|
66
|
+
--mobile-menu-login-button-border-color: var(--color-primary-border); // @presenter Color
|
|
67
|
+
--mobile-menu-login-button-border-radius: var(--border-radius-md); // @presenter Spacing
|
|
68
|
+
--mobile-menu-login-button-font-size: var(--font-size-base); // @presenter FontSize
|
|
69
|
+
--mobile-menu-login-button-font-family: inherit; // @presenter FontFamily
|
|
70
|
+
--mobile-menu-login-button-font-weight: var(--font-weight-bold); // @presenter FontWeight
|
|
71
|
+
--mobile-menu-login-button-line-height: var(--line-height-base); // @presenter LineHeight
|
|
72
|
+
|
|
73
|
+
/**
|
|
74
|
+
* @tokens Mobile Menu Product
|
|
75
|
+
* */
|
|
76
|
+
--mobile-menu-product-name-color: var(--mobile-menu-item-text-color);
|
|
77
|
+
--mobile-menu-product-name-border-radius: var(--mobile-menu-item-radius);
|
|
78
|
+
--mobile-menu-product-name-border: 1px solid var(--border-secondary);
|
|
79
|
+
--mobile-menu-product-name-padding: var(--sidebar-item-padding-vertical) var(--sidebar-item-padding-horizontal);
|
|
80
|
+
--mobile-menu-product-name-margin: var(--spacing-sm) var(--spacing-xs) 0 var(--spacing-xs);
|
|
81
|
+
|
|
82
|
+
// @tokens End
|
|
83
|
+
`;
|
|
84
|
+
|
|
85
|
+
export const menu = css`
|
|
86
|
+
/**
|
|
87
|
+
* @tokens Menu
|
|
88
|
+
*/
|
|
89
|
+
--menu-padding: 0;
|
|
90
|
+
--menu-margin: 0;
|
|
91
|
+
--menu-list-style: none;
|
|
92
|
+
--menu-text-color: var(--sidebar-item-text-color);
|
|
93
|
+
|
|
94
|
+
--menu-item-label-align-items: center;
|
|
95
|
+
--menu-item-label-transition: background-color 0.3s, color 0.3s;
|
|
96
|
+
--menu-item-label-word-break: break-word;
|
|
97
|
+
--menu-item-label-margin: 0 var(--sidebar-margin-horizontal);
|
|
98
|
+
--menu-item-label-padding: var(--sidebar-item-padding-vertical) var(--sidebar-item-padding-horizontal);
|
|
99
|
+
|
|
100
|
+
// @tokens End
|
|
101
|
+
`;
|
|
@@ -0,0 +1,110 @@
|
|
|
1
|
+
import type { Location } from 'react-router-dom';
|
|
2
|
+
import type { TFunction } from '@redocly/portal-types';
|
|
3
|
+
|
|
4
|
+
import type { ItemState } from '@theme/components/Sidebar/types';
|
|
5
|
+
import type { Locale, ResolvedNavItem, Version } from '@theme/types/portal';
|
|
6
|
+
import { getPathnameForLocale } from '@portal/utils';
|
|
7
|
+
import { withPathPrefix } from '@theme/utils/urls';
|
|
8
|
+
|
|
9
|
+
const TRANSLATION_KEYS = {
|
|
10
|
+
version: 'theme.mobileMenu.version',
|
|
11
|
+
};
|
|
12
|
+
|
|
13
|
+
export const mapNavbarItems = (
|
|
14
|
+
items: ResolvedNavItem[],
|
|
15
|
+
defaultLocale: string,
|
|
16
|
+
currentLocale: string,
|
|
17
|
+
locales: Locale[],
|
|
18
|
+
location: Location,
|
|
19
|
+
): ItemState[] => {
|
|
20
|
+
return items.map(
|
|
21
|
+
(navItem) =>
|
|
22
|
+
({
|
|
23
|
+
...navItem,
|
|
24
|
+
...(navItem.items && {
|
|
25
|
+
items: mapNavbarItems(navItem.items, defaultLocale, currentLocale, locales, location),
|
|
26
|
+
}),
|
|
27
|
+
...('link' in navItem && { link: navItem.link || '/' }),
|
|
28
|
+
active:
|
|
29
|
+
'link' in navItem &&
|
|
30
|
+
isItemActive(navItem, defaultLocale, currentLocale, locales, location),
|
|
31
|
+
hasActiveSubItem: !!navItem.items?.find((item) =>
|
|
32
|
+
isItemActive(item, defaultLocale, currentLocale, locales, location),
|
|
33
|
+
),
|
|
34
|
+
} as ItemState),
|
|
35
|
+
);
|
|
36
|
+
};
|
|
37
|
+
|
|
38
|
+
export const isItemActive = (
|
|
39
|
+
item: ResolvedNavItem,
|
|
40
|
+
defaultLocale: string,
|
|
41
|
+
currentLocale: string,
|
|
42
|
+
locales: Locale[],
|
|
43
|
+
location: Location,
|
|
44
|
+
): boolean => {
|
|
45
|
+
const pathHash = location.pathname + location.hash;
|
|
46
|
+
const link = item.languageInsensitive
|
|
47
|
+
? item.link || ''
|
|
48
|
+
: getPathnameForLocale(item.link || '/', defaultLocale, currentLocale, locales);
|
|
49
|
+
|
|
50
|
+
return pathHash === withPathPrefix(link);
|
|
51
|
+
};
|
|
52
|
+
|
|
53
|
+
export const buildLanguagesGroup = (
|
|
54
|
+
locales: Locale[],
|
|
55
|
+
currentLocale: string,
|
|
56
|
+
defaultLocale: string,
|
|
57
|
+
): ResolvedNavItem | undefined => {
|
|
58
|
+
if (locales.length < 2) {
|
|
59
|
+
return;
|
|
60
|
+
}
|
|
61
|
+
const locale = locales.find((l) => l.code === currentLocale);
|
|
62
|
+
return {
|
|
63
|
+
type: 'group',
|
|
64
|
+
label: locale?.name || locale?.code,
|
|
65
|
+
items: locales
|
|
66
|
+
.filter((locale) => locale.code !== currentLocale)
|
|
67
|
+
.map((locale) => {
|
|
68
|
+
const newLangPathname = withPathPrefix(
|
|
69
|
+
getPathnameForLocale(location.pathname, defaultLocale, locale.code, locales),
|
|
70
|
+
);
|
|
71
|
+
const newUrlWithLanguage = `${newLangPathname}${location.search}${location.hash}`;
|
|
72
|
+
return {
|
|
73
|
+
type: 'link',
|
|
74
|
+
label: locale.name || locale.code || '',
|
|
75
|
+
link: newUrlWithLanguage,
|
|
76
|
+
active: false,
|
|
77
|
+
hasActiveSubItem: false,
|
|
78
|
+
languageInsensitive: true,
|
|
79
|
+
};
|
|
80
|
+
}),
|
|
81
|
+
};
|
|
82
|
+
};
|
|
83
|
+
|
|
84
|
+
export const buildVersionSection = (
|
|
85
|
+
translate: TFunction,
|
|
86
|
+
versions: Version[],
|
|
87
|
+
activeVersion?: Version,
|
|
88
|
+
): ResolvedNavItem[] => {
|
|
89
|
+
return [
|
|
90
|
+
{
|
|
91
|
+
type: 'separator',
|
|
92
|
+
label: translate(TRANSLATION_KEYS.version, 'Version'),
|
|
93
|
+
},
|
|
94
|
+
{
|
|
95
|
+
type: 'group',
|
|
96
|
+
label: activeVersion?.label,
|
|
97
|
+
items: versions
|
|
98
|
+
.filter((version) => !version.active)
|
|
99
|
+
.map((version) => {
|
|
100
|
+
return {
|
|
101
|
+
type: 'link',
|
|
102
|
+
label: version.label,
|
|
103
|
+
link: version.link,
|
|
104
|
+
active: false,
|
|
105
|
+
hasActiveSubItem: false,
|
|
106
|
+
};
|
|
107
|
+
}),
|
|
108
|
+
},
|
|
109
|
+
];
|
|
110
|
+
};
|
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
import React from 'react';
|
|
2
|
+
import styled from 'styled-components';
|
|
3
|
+
|
|
4
|
+
import { BurgerIcon, CloseIcon } from '@theme/icons';
|
|
5
|
+
|
|
6
|
+
export function BurgerButton({
|
|
7
|
+
isOpen,
|
|
8
|
+
onClick,
|
|
9
|
+
}: {
|
|
10
|
+
isOpen: boolean;
|
|
11
|
+
onClick: () => void;
|
|
12
|
+
}): JSX.Element | null {
|
|
13
|
+
return (
|
|
14
|
+
<Wrapper data-component-name="BurgerButton/BurgerButton" onClick={onClick}>
|
|
15
|
+
{isOpen ? <CloseIcon /> : <BurgerIcon />}
|
|
16
|
+
</Wrapper>
|
|
17
|
+
);
|
|
18
|
+
}
|
|
19
|
+
|
|
20
|
+
const Wrapper = styled.div`
|
|
21
|
+
display: flex;
|
|
22
|
+
align-items: center;
|
|
23
|
+
cursor: pointer;
|
|
24
|
+
user-select: none;
|
|
25
|
+
fill: var(--navbar-text-color);
|
|
26
|
+
|
|
27
|
+
* {
|
|
28
|
+
margin: var(--mobile-menu-burger-button-margin);
|
|
29
|
+
}
|
|
30
|
+
|
|
31
|
+
${({ theme }) => theme.mediaQueries.medium} {
|
|
32
|
+
display: none;
|
|
33
|
+
}
|
|
34
|
+
`;
|