@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,104 @@
|
|
|
1
|
+
import React, { useEffect, useState } from 'react';
|
|
2
|
+
import styled from 'styled-components';
|
|
3
|
+
|
|
4
|
+
import { highlight, addLineNumbers } from '@theme/utils';
|
|
5
|
+
import type { ReportDialogProps } from '@theme/components/Feedback';
|
|
6
|
+
import { ReportDialog, useReportDialog } from '@theme/components/Feedback';
|
|
7
|
+
import type { CodeBlockControlsProps } from '@theme/components/CodeBlock';
|
|
8
|
+
import { CodeBlockContainer, CodeBlockControls } from '@theme/components/CodeBlock';
|
|
9
|
+
|
|
10
|
+
export interface CodeBlockProps {
|
|
11
|
+
lang?: string;
|
|
12
|
+
source?: string;
|
|
13
|
+
externalSource?: ExternalSource;
|
|
14
|
+
header?: CodeBlockControlsProps;
|
|
15
|
+
dataTestId?: string;
|
|
16
|
+
className?: string;
|
|
17
|
+
|
|
18
|
+
withLineNumbers?: boolean;
|
|
19
|
+
startLineNumber?: number;
|
|
20
|
+
highlightedHtml?: string;
|
|
21
|
+
codeBlockRef?: (instance: HTMLPreElement | null) => void;
|
|
22
|
+
}
|
|
23
|
+
|
|
24
|
+
export interface Sample {
|
|
25
|
+
lang: string;
|
|
26
|
+
label?: string;
|
|
27
|
+
}
|
|
28
|
+
|
|
29
|
+
export type UnstableExternalCodeSample = Sample & {
|
|
30
|
+
get: (source: ExternalSource) => string;
|
|
31
|
+
};
|
|
32
|
+
|
|
33
|
+
export interface ExternalSource {
|
|
34
|
+
sample: UnstableExternalCodeSample;
|
|
35
|
+
exampleName?: string;
|
|
36
|
+
pathParams?: any;
|
|
37
|
+
properties?: any;
|
|
38
|
+
operation?: any;
|
|
39
|
+
}
|
|
40
|
+
|
|
41
|
+
export function CodeBlock({
|
|
42
|
+
lang,
|
|
43
|
+
source,
|
|
44
|
+
externalSource,
|
|
45
|
+
header,
|
|
46
|
+
dataTestId = 'source-code',
|
|
47
|
+
codeBlockRef,
|
|
48
|
+
highlightedHtml,
|
|
49
|
+
withLineNumbers,
|
|
50
|
+
startLineNumber,
|
|
51
|
+
className,
|
|
52
|
+
}: CodeBlockProps): JSX.Element {
|
|
53
|
+
const [sourceCode, setSourceCode] = useState<string>(source ?? '');
|
|
54
|
+
|
|
55
|
+
const highlightedCode = highlightedHtml || highlight(sourceCode, lang);
|
|
56
|
+
|
|
57
|
+
// The same initial value should be returned for ssr and frontend to avoid issues
|
|
58
|
+
// Because we don't have session storage in ssr and can't get the security details there
|
|
59
|
+
// Issue for more details https://github.com/Redocly/reference-docs/issues/888
|
|
60
|
+
useEffect(() => {
|
|
61
|
+
const _source = source || externalSource?.sample?.get?.(externalSource);
|
|
62
|
+
if (_source) {
|
|
63
|
+
setSourceCode(_source);
|
|
64
|
+
}
|
|
65
|
+
}, [source, externalSource]);
|
|
66
|
+
|
|
67
|
+
const { reportDialog, reportButton } = useReportDialog();
|
|
68
|
+
const controls = {
|
|
69
|
+
...header?.controls,
|
|
70
|
+
report: header?.controls?.report
|
|
71
|
+
? { ...header.controls.report, props: reportButton.props }
|
|
72
|
+
: { props: reportButton.props },
|
|
73
|
+
};
|
|
74
|
+
|
|
75
|
+
if (controls.copy && !controls.copy.handleOutside) {
|
|
76
|
+
controls.copy.data = sourceCode;
|
|
77
|
+
}
|
|
78
|
+
|
|
79
|
+
return (
|
|
80
|
+
<Wrapper data-component-name="CodeBlock/CodeBlock" className={className}>
|
|
81
|
+
<CodeBlockControls className={header?.className} title={header?.title} controls={controls} />
|
|
82
|
+
<CodeBlockContainer
|
|
83
|
+
ref={codeBlockRef}
|
|
84
|
+
className={withLineNumbers ? 'line-numbers' : ''}
|
|
85
|
+
dangerouslySetInnerHTML={{
|
|
86
|
+
__html: withLineNumbers
|
|
87
|
+
? addLineNumbers(highlightedCode, startLineNumber)
|
|
88
|
+
: highlightedCode,
|
|
89
|
+
}}
|
|
90
|
+
data-cy={dataTestId}
|
|
91
|
+
withControls={true}
|
|
92
|
+
/>
|
|
93
|
+
{reportDialog.visible && (
|
|
94
|
+
<ReportDialog
|
|
95
|
+
{...(reportDialog.props as ReportDialogProps)}
|
|
96
|
+
location={sourceCode}
|
|
97
|
+
lang={lang}
|
|
98
|
+
/>
|
|
99
|
+
)}
|
|
100
|
+
</Wrapper>
|
|
101
|
+
);
|
|
102
|
+
}
|
|
103
|
+
|
|
104
|
+
const Wrapper = styled.div``;
|
|
@@ -0,0 +1,124 @@
|
|
|
1
|
+
import styled, { css } from 'styled-components';
|
|
2
|
+
|
|
3
|
+
import { generateCodeBlockTokens } from '@theme/utils';
|
|
4
|
+
|
|
5
|
+
export const CodeBlockContainer = styled.pre.attrs<{ className?: string }>(({ className }) => ({
|
|
6
|
+
'data-component-name': 'CodeBlock/CodeBlockContainer',
|
|
7
|
+
className,
|
|
8
|
+
}))<{ withControls?: boolean }>`
|
|
9
|
+
&& {
|
|
10
|
+
overflow-x: auto;
|
|
11
|
+
max-height: var(--code-block-max-height);
|
|
12
|
+
font-family: var(--code-block-font-family);
|
|
13
|
+
line-height: var(--code-block-line-height);
|
|
14
|
+
font-weight: var(--code-block-font-weight);
|
|
15
|
+
padding: var(--code-block-padding);
|
|
16
|
+
margin: var(--code-block-margin);
|
|
17
|
+
background-color: var(--code-block-background-color);
|
|
18
|
+
color: var(--code-block-text-color);
|
|
19
|
+
font-size: var(--code-block-font-size);
|
|
20
|
+
white-space: var(--code-wrap, pre);
|
|
21
|
+
max-height: var(--code-block-max-height, 600px);
|
|
22
|
+
word-break: var(--code-block-word-break, initial);
|
|
23
|
+
|
|
24
|
+
${(withControls) =>
|
|
25
|
+
withControls
|
|
26
|
+
? css`
|
|
27
|
+
border-radius: 0 0 var(--code-block-border-radius) var(--code-block-border-radius);
|
|
28
|
+
border-left: 1px solid var(--code-block-border-color);
|
|
29
|
+
border-right: 1px solid var(--code-block-border-color);
|
|
30
|
+
border-bottom: 1px solid var(--code-block-border-color);
|
|
31
|
+
`
|
|
32
|
+
: css`
|
|
33
|
+
border-radius: var(--code-block-border-radius);
|
|
34
|
+
border: 1px solid var(--code-block-border-color);
|
|
35
|
+
`}
|
|
36
|
+
|
|
37
|
+
/**
|
|
38
|
+
* Based on prism-dark.css
|
|
39
|
+
*/
|
|
40
|
+
code[class*='language-'],
|
|
41
|
+
pre[class*='language-'] {
|
|
42
|
+
text-shadow: 0 -0.1em 0.2em black;
|
|
43
|
+
text-align: left;
|
|
44
|
+
word-spacing: normal;
|
|
45
|
+
word-break: normal;
|
|
46
|
+
word-wrap: normal;
|
|
47
|
+
line-height: 1.5;
|
|
48
|
+
|
|
49
|
+
-moz-tab-size: 4;
|
|
50
|
+
-o-tab-size: 4;
|
|
51
|
+
tab-size: 4;
|
|
52
|
+
|
|
53
|
+
-webkit-hyphens: none;
|
|
54
|
+
-moz-hyphens: none;
|
|
55
|
+
-ms-hyphens: none;
|
|
56
|
+
hyphens: none;
|
|
57
|
+
}
|
|
58
|
+
|
|
59
|
+
@media print {
|
|
60
|
+
code[class*='language-'],
|
|
61
|
+
pre[class*='language-'] {
|
|
62
|
+
text-shadow: none;
|
|
63
|
+
}
|
|
64
|
+
}
|
|
65
|
+
|
|
66
|
+
/* Code blocks */
|
|
67
|
+
pre[class*='language-'] {
|
|
68
|
+
padding: 1em;
|
|
69
|
+
margin: 0.5em 0;
|
|
70
|
+
overflow: auto;
|
|
71
|
+
}
|
|
72
|
+
|
|
73
|
+
.token.punctuation {
|
|
74
|
+
opacity: 1;
|
|
75
|
+
}
|
|
76
|
+
|
|
77
|
+
.namespace {
|
|
78
|
+
opacity: 0.7;
|
|
79
|
+
}
|
|
80
|
+
|
|
81
|
+
.token.selector,
|
|
82
|
+
.token.attr-name,
|
|
83
|
+
.token.string,
|
|
84
|
+
.token.char,
|
|
85
|
+
.token.builtin,
|
|
86
|
+
.token.inserted {
|
|
87
|
+
& + a,
|
|
88
|
+
& + a:visited {
|
|
89
|
+
color: var(--code-block-tokens-link-color);
|
|
90
|
+
text-decoration: underline;
|
|
91
|
+
}
|
|
92
|
+
}
|
|
93
|
+
|
|
94
|
+
.token.property.string {
|
|
95
|
+
color: var(--code-block-tokens-property-string-color);
|
|
96
|
+
}
|
|
97
|
+
|
|
98
|
+
.token.important,
|
|
99
|
+
.token.bold {
|
|
100
|
+
font-weight: bold;
|
|
101
|
+
}
|
|
102
|
+
|
|
103
|
+
.token.italic {
|
|
104
|
+
font-style: italic;
|
|
105
|
+
}
|
|
106
|
+
|
|
107
|
+
.token.entity {
|
|
108
|
+
cursor: help;
|
|
109
|
+
}
|
|
110
|
+
|
|
111
|
+
.code-line {
|
|
112
|
+
&:before {
|
|
113
|
+
content: attr(data-line-number);
|
|
114
|
+
display: inline-block;
|
|
115
|
+
min-width: 2em;
|
|
116
|
+
padding-right: 0.8em;
|
|
117
|
+
text-align: right;
|
|
118
|
+
pointer-events: none;
|
|
119
|
+
user-select: none;
|
|
120
|
+
}
|
|
121
|
+
}
|
|
122
|
+
|
|
123
|
+
${generateCodeBlockTokens()}
|
|
124
|
+
`;
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
import styled, { css } from 'styled-components';
|
|
2
|
+
|
|
3
|
+
import { Button } from '@theme/components/Button';
|
|
4
|
+
|
|
5
|
+
export const CodeBlockControlButton = styled(Button)<{ asIcon?: boolean }>`
|
|
6
|
+
color: var(--code-block-controls-text-color);
|
|
7
|
+
border: none;
|
|
8
|
+
|
|
9
|
+
${({ asIcon }) =>
|
|
10
|
+
asIcon
|
|
11
|
+
? css`
|
|
12
|
+
background-color: var(--code-block-icon-controls-background-color);
|
|
13
|
+
`
|
|
14
|
+
: css`
|
|
15
|
+
min-width: 90px;
|
|
16
|
+
background-color: var(--code-block-text-controls-background-color);
|
|
17
|
+
`}
|
|
18
|
+
|
|
19
|
+
padding: 0;
|
|
20
|
+
|
|
21
|
+
:not(:first-child) {
|
|
22
|
+
margin-left: 5px;
|
|
23
|
+
}
|
|
24
|
+
|
|
25
|
+
&:hover {
|
|
26
|
+
border: none;
|
|
27
|
+
}
|
|
28
|
+
`;
|
|
@@ -0,0 +1,188 @@
|
|
|
1
|
+
import React from 'react';
|
|
2
|
+
import styled from 'styled-components';
|
|
3
|
+
|
|
4
|
+
import { CodeBlockControlButton } from '@theme/components/CodeBlock';
|
|
5
|
+
import { CopyButton } from '@theme/components/CopyButton/CopyButton';
|
|
6
|
+
import { CollapseIcon, DeselectIcon, ExpandIcon, ReportIcon, SelectIcon } from '@theme/icons';
|
|
7
|
+
import { useThemeConfig } from '@theme/hooks';
|
|
8
|
+
import { telemetry } from '@portal/telemetry';
|
|
9
|
+
|
|
10
|
+
export interface CodeBlockControlsProps {
|
|
11
|
+
children?: React.ReactNode;
|
|
12
|
+
className?: string;
|
|
13
|
+
title?: React.ReactNode | string;
|
|
14
|
+
controls?: ControlItems;
|
|
15
|
+
}
|
|
16
|
+
|
|
17
|
+
interface ControlItems {
|
|
18
|
+
copy?: CopyControlProps;
|
|
19
|
+
expand?: ControlProps;
|
|
20
|
+
collapse?: ControlProps;
|
|
21
|
+
report?: ControlProps;
|
|
22
|
+
select?: ControlProps;
|
|
23
|
+
deselect?: ControlProps;
|
|
24
|
+
}
|
|
25
|
+
|
|
26
|
+
interface ControlProps {
|
|
27
|
+
label?: string;
|
|
28
|
+
tooltipText?: string;
|
|
29
|
+
onClick?: () => void;
|
|
30
|
+
props?: Record<string, any>;
|
|
31
|
+
}
|
|
32
|
+
|
|
33
|
+
interface CopyControlProps extends ControlProps {
|
|
34
|
+
data?: string;
|
|
35
|
+
dataSource?: string;
|
|
36
|
+
dataHash?: string;
|
|
37
|
+
toasterPlacement?: 'left' | 'right' | 'top' | 'bottom';
|
|
38
|
+
toasterText?: string;
|
|
39
|
+
toasterDuration?: number;
|
|
40
|
+
handleOutside?: boolean;
|
|
41
|
+
}
|
|
42
|
+
|
|
43
|
+
export type ControlItemType = 'text' | 'icon';
|
|
44
|
+
|
|
45
|
+
export function CodeBlockControls({
|
|
46
|
+
children,
|
|
47
|
+
className,
|
|
48
|
+
title,
|
|
49
|
+
controls,
|
|
50
|
+
}: CodeBlockControlsProps): JSX.Element | null {
|
|
51
|
+
const { codeSnippet } = useThemeConfig();
|
|
52
|
+
const controlsType = (codeSnippet?.elementFormat as ControlItemType) || 'icon';
|
|
53
|
+
const { copy, expand, collapse, select, deselect, report } = controls
|
|
54
|
+
? controls
|
|
55
|
+
: { copy: null, expand: null, collapse: null, select: null, deselect: null, report: null };
|
|
56
|
+
|
|
57
|
+
const defaultControls = controls ? (
|
|
58
|
+
<>
|
|
59
|
+
<Title>{title}</Title>
|
|
60
|
+
<ControlsWrapper>
|
|
61
|
+
{report && report?.props?.visible ? (
|
|
62
|
+
<CodeBlockControlButton
|
|
63
|
+
data-cy="report-button"
|
|
64
|
+
data-testid="report-button"
|
|
65
|
+
asIcon={controlsType === 'icon'}
|
|
66
|
+
title={report.props?.tooltip}
|
|
67
|
+
{...report.props}
|
|
68
|
+
>
|
|
69
|
+
{controlsType === 'icon' ? <ReportIcon /> : report.props?.buttonText || 'Report'}
|
|
70
|
+
</CodeBlockControlButton>
|
|
71
|
+
) : null}
|
|
72
|
+
|
|
73
|
+
{expand && !codeSnippet?.expand?.hide ? (
|
|
74
|
+
<CodeBlockControlButton
|
|
75
|
+
data-cy="expand-all"
|
|
76
|
+
data-testid="expand-all"
|
|
77
|
+
asIcon={controlsType === 'icon'}
|
|
78
|
+
onClick={expand?.onClick}
|
|
79
|
+
title={expand?.tooltipText || 'Expand all'}
|
|
80
|
+
>
|
|
81
|
+
{controlsType === 'icon' ? <ExpandIcon /> : expand?.label ? expand.label : 'Expand all'}
|
|
82
|
+
</CodeBlockControlButton>
|
|
83
|
+
) : null}
|
|
84
|
+
|
|
85
|
+
{collapse && !codeSnippet?.collapse?.hide ? (
|
|
86
|
+
<CodeBlockControlButton
|
|
87
|
+
data-cy="collapse-all"
|
|
88
|
+
data-testid="collapse-all"
|
|
89
|
+
asIcon={controlsType === 'icon'}
|
|
90
|
+
onClick={collapse?.onClick}
|
|
91
|
+
title={collapse?.tooltipText || 'Collapse all'}
|
|
92
|
+
>
|
|
93
|
+
{controlsType === 'icon' ? (
|
|
94
|
+
<CollapseIcon />
|
|
95
|
+
) : collapse?.label ? (
|
|
96
|
+
collapse.label
|
|
97
|
+
) : (
|
|
98
|
+
'Collapse all'
|
|
99
|
+
)}
|
|
100
|
+
</CodeBlockControlButton>
|
|
101
|
+
) : null}
|
|
102
|
+
|
|
103
|
+
{select ? (
|
|
104
|
+
<CodeBlockControlButton
|
|
105
|
+
data-cy="select-all"
|
|
106
|
+
data-testid="select-all"
|
|
107
|
+
asIcon={controlsType === 'icon'}
|
|
108
|
+
onClick={select?.onClick}
|
|
109
|
+
title={select?.tooltipText}
|
|
110
|
+
>
|
|
111
|
+
{controlsType === 'icon' ? <SelectIcon /> : select?.label ? select.label : 'Select all'}
|
|
112
|
+
</CodeBlockControlButton>
|
|
113
|
+
) : null}
|
|
114
|
+
|
|
115
|
+
{deselect ? (
|
|
116
|
+
<CodeBlockControlButton
|
|
117
|
+
data-cy="clear-all"
|
|
118
|
+
data-testid="clear-all"
|
|
119
|
+
asIcon={controlsType === 'icon'}
|
|
120
|
+
onClick={deselect?.onClick}
|
|
121
|
+
title={deselect?.tooltipText}
|
|
122
|
+
>
|
|
123
|
+
{controlsType === 'icon' ? (
|
|
124
|
+
<DeselectIcon />
|
|
125
|
+
) : deselect?.label ? (
|
|
126
|
+
deselect.label
|
|
127
|
+
) : (
|
|
128
|
+
'Clear all'
|
|
129
|
+
)}
|
|
130
|
+
</CodeBlockControlButton>
|
|
131
|
+
) : null}
|
|
132
|
+
|
|
133
|
+
{copy && !codeSnippet?.copy?.hide ? (
|
|
134
|
+
<CopyButton
|
|
135
|
+
data={copy.data}
|
|
136
|
+
data-source={copy.dataSource}
|
|
137
|
+
data-hash={copy.dataHash}
|
|
138
|
+
type={controlsType}
|
|
139
|
+
toasterPlacement={copy.toasterPlacement}
|
|
140
|
+
toasterDuration={copy.toasterDuration}
|
|
141
|
+
buttonText={copy.label}
|
|
142
|
+
tooltipText={copy.tooltipText}
|
|
143
|
+
onCopyClick={() => {
|
|
144
|
+
copy?.onClick;
|
|
145
|
+
telemetry.send('code_snippet_copied', {});
|
|
146
|
+
}}
|
|
147
|
+
/>
|
|
148
|
+
) : null}
|
|
149
|
+
</ControlsWrapper>
|
|
150
|
+
</>
|
|
151
|
+
) : null;
|
|
152
|
+
|
|
153
|
+
return children || controls ? (
|
|
154
|
+
<ContainerWraper data-component-name="CodeBlock/CodeBlockControls" className={className}>
|
|
155
|
+
{children ? children : defaultControls}
|
|
156
|
+
</ContainerWraper>
|
|
157
|
+
) : null;
|
|
158
|
+
}
|
|
159
|
+
|
|
160
|
+
const ContainerWraper = styled.div`
|
|
161
|
+
display: flex;
|
|
162
|
+
justify-content: space-between;
|
|
163
|
+
min-height: 30px;
|
|
164
|
+
padding: var(--code-block-controls-padding);
|
|
165
|
+
background-color: var(--code-block-controls-background-color);
|
|
166
|
+
border-top: var(--code-block-controls-border);
|
|
167
|
+
border-left: var(--code-block-controls-border);
|
|
168
|
+
border-right: var(--code-block-controls-border);
|
|
169
|
+
border-radius: var(--border-radius-md) var(--border-radius-md) 0 0;
|
|
170
|
+
margin-top: 10px;
|
|
171
|
+
`;
|
|
172
|
+
|
|
173
|
+
const Title = styled.span`
|
|
174
|
+
display: flex;
|
|
175
|
+
align-items: center;
|
|
176
|
+
color: var(--code-block-controls-text-color);
|
|
177
|
+
`;
|
|
178
|
+
|
|
179
|
+
const ControlsWrapper = styled.div`
|
|
180
|
+
display: flex;
|
|
181
|
+
opacity: 0.7;
|
|
182
|
+
transition: opacity 0.3s ease;
|
|
183
|
+
text-align: right;
|
|
184
|
+
|
|
185
|
+
&:focus-within {
|
|
186
|
+
opacity: 1;
|
|
187
|
+
}
|
|
188
|
+
`;
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
export * from '@theme/components/CodeBlock/CodeBlock';
|
|
2
|
+
export * from '@theme/components/CodeBlock/CodeBlockContainer';
|
|
3
|
+
export * from '@theme/components/CodeBlock/CodeBlockControls';
|
|
4
|
+
export * from '@theme/components/CodeBlock/CodeBlockControlButton';
|
|
5
|
+
export * from '@theme/components/CodeBlock/styledVariables';
|
|
@@ -0,0 +1,89 @@
|
|
|
1
|
+
import { css } from 'styled-components';
|
|
2
|
+
|
|
3
|
+
export const code = css`
|
|
4
|
+
/**
|
|
5
|
+
* @tokens Code base styles
|
|
6
|
+
*/
|
|
7
|
+
--code-font-size: 13px; // @presenter FontSize
|
|
8
|
+
--code-font-family: var(--font-family-monospaced); // @presenter FontFamily
|
|
9
|
+
--code-font-weight: var(--font-weight-regular); // @presenter FontWeight
|
|
10
|
+
--code-line-height: var(--line-height-xsm); // @presenter LineHeight
|
|
11
|
+
--code-wrap: pre;
|
|
12
|
+
--code-word-break: break-word;
|
|
13
|
+
|
|
14
|
+
/**
|
|
15
|
+
* @tokens Inline Code
|
|
16
|
+
*/
|
|
17
|
+
--inline-code-font-size: var(--code-font-size); // @presenter FontSize
|
|
18
|
+
--inline-code-font-family: var(--code-font-family); // @presenter FontFamily
|
|
19
|
+
--inline-code-font-weight: var(--code-font-weight); // @presenter FontWeight
|
|
20
|
+
--inline-code-line-height: var(--code-line-height); // @presenter LineHeight
|
|
21
|
+
--inline-code-text-color: var(--text-secondary); // @presenter Color
|
|
22
|
+
--inline-code-background-color: var(--bg-overlay); // @presenter Color
|
|
23
|
+
--inline-code-border-color: var(--border-primary); // @presenter Color
|
|
24
|
+
--inline-code-border-radius: var(--border-radius); // @presenter BorderRadius
|
|
25
|
+
|
|
26
|
+
/**
|
|
27
|
+
* @tokens Code Block
|
|
28
|
+
*/
|
|
29
|
+
--code-block-font-size: var(--code-font-size); // @presenter FontSize
|
|
30
|
+
--code-block-font-family: var(--code-font-family); // @presenter FontFamily
|
|
31
|
+
--code-block-line-height: var(--code-line-height); // @presenter LineHeight
|
|
32
|
+
--code-block-font-weight: var(--code-font-weight); // @presenter FontWeight
|
|
33
|
+
--code-block-text-color: var(--text-secondary); // @presenter Color
|
|
34
|
+
--code-block-background-color: var(--bg-raised); // @presenter Color
|
|
35
|
+
--code-block-border-color: var(--border-primary); // @presenter Color
|
|
36
|
+
--code-block-border-radius: var(--border-radius-lg); // @presenter BorderRadius
|
|
37
|
+
--code-block-padding: calc(var(--spacing-unit) * 2);
|
|
38
|
+
--code-block-margin: 0;
|
|
39
|
+
--code-block-max-height: 50vh;
|
|
40
|
+
--code-block-word-break: initial;
|
|
41
|
+
|
|
42
|
+
/**
|
|
43
|
+
* @tokens Code Block controls
|
|
44
|
+
*/
|
|
45
|
+
|
|
46
|
+
--code-block-controls-font-size: var(--font-size-base); // @presenter FontSize
|
|
47
|
+
--code-block-controls-font-family: var(--font-family-base); // @presenter FontFamily
|
|
48
|
+
--code-block-controls-text-color: var(--text-secondary); // @presenter Color
|
|
49
|
+
--code-block-controls-background-color: var(--bg-overlay); // @presenter Color
|
|
50
|
+
--code-block-controls-border: 1px solid var(--border-primary); // @presenter Border
|
|
51
|
+
--code-block-controls-padding: 0 var(--spacing-xs); // @presenter Spacing
|
|
52
|
+
--code-block-icon-controls-background-color: var(--code-block-controls-background-color);
|
|
53
|
+
--code-block-text-controls-background-color: var(--code-block-controls-background-color);
|
|
54
|
+
|
|
55
|
+
/**
|
|
56
|
+
* @tokens Code Block tokens
|
|
57
|
+
*/
|
|
58
|
+
--code-block-tokens-default-color: var(--text-secondary); // @presenter Color
|
|
59
|
+
--code-block-tokens-comment-color: var(--text-placeholder); // @presenter Color
|
|
60
|
+
--code-block-tokens-prolog-color: var(--code-block-tokens-comment-color); // @presenter Color
|
|
61
|
+
--code-block-tokens-doctype-color: var(--code-block-tokens-comment-color); // @presenter Color
|
|
62
|
+
--code-block-tokens-cdata-color: var(--code-block-tokens-comment-color); // @presenter Color
|
|
63
|
+
--code-block-tokens-property-color: var(--code-block-tokens-default-color); // @presenter Color
|
|
64
|
+
--code-block-tokens-tag-color: var(--code-block-tokens-default-color); // @presenter Color
|
|
65
|
+
--code-block-tokens-number-color: var(--code-block-tokens-default-color); // @presenter Color
|
|
66
|
+
--code-block-tokens-constant-color: var(--code-block-tokens-default-color); // @presenter Color
|
|
67
|
+
--code-block-tokens-symbol-color: var(--code-block-tokens-default-color); // @presenter Color
|
|
68
|
+
--code-block-tokens-boolean-color: var(--color-geekblue-7); // @presenter Color
|
|
69
|
+
--code-block-tokens-string-color: var(--color-cyan-7); // @presenter Color
|
|
70
|
+
--code-block-tokens-property-string-color: var(--text-secondary); // @presenter Color
|
|
71
|
+
--code-block-tokens-selector-color: var(--code-block-tokens-string-color); // @presenter Color
|
|
72
|
+
--code-block-tokens-attr-name-color: var(--code-block-tokens-string-color); // @presenter Color
|
|
73
|
+
--code-block-tokens-char-color: var(--code-block-tokens-string-color); // @presenter Color
|
|
74
|
+
--code-block-tokens-builtin-color: var(--code-block-tokens-string-color); // @presenter Color
|
|
75
|
+
--code-block-tokens-inserted-color: var(--code-block-tokens-string-color); // @presenter Color
|
|
76
|
+
--code-block-tokens-link-color: var(--color-blue-7); // @presenter Color
|
|
77
|
+
--code-block-tokens-operator-color: var(--color-gold-7); // @presenter Color
|
|
78
|
+
--code-block-tokens-entity-color: var(--code-block-tokens-operator-color); // @presenter Color
|
|
79
|
+
--code-block-tokens-url-color: var(--code-block-tokens-operator-color); // @presenter Color
|
|
80
|
+
--code-block-tokens-variable-color: var(--code-block-tokens-operator-color); // @presenter Color
|
|
81
|
+
--code-block-tokens-keyword-color: var(--color-magenta-7); // @presenter Color
|
|
82
|
+
--code-block-tokens-atrule-color: var(--code-block-tokens-keyword-color); // @presenter Color
|
|
83
|
+
--code-block-tokens-attr-value-color: var(--code-block-tokens-keyword-color); // @presenter Color
|
|
84
|
+
--code-block-tokens-regex-color: var(--color-yellow-7); // @presenter Color
|
|
85
|
+
--code-block-tokens-important-color: var(--code-block-tokens-regex-color); // @presenter Color
|
|
86
|
+
--code-block-tokens-deleted-color: var(--color-red-7); // @presenter Color
|
|
87
|
+
|
|
88
|
+
// @tokens End
|
|
89
|
+
`;
|
|
@@ -0,0 +1,78 @@
|
|
|
1
|
+
import React, { useState } from 'react';
|
|
2
|
+
import styled from 'styled-components';
|
|
3
|
+
|
|
4
|
+
import { ColorModeIcon } from '@theme/icons/ColorModeIcon';
|
|
5
|
+
import { useMount, useThemeConfig } from '@theme/hooks';
|
|
6
|
+
import { telemetry } from '@portal/telemetry';
|
|
7
|
+
|
|
8
|
+
interface ColorModeSwitcherProps {
|
|
9
|
+
className?: string;
|
|
10
|
+
}
|
|
11
|
+
|
|
12
|
+
export function ColorModeSwitcher(props: ColorModeSwitcherProps): JSX.Element | null {
|
|
13
|
+
const { className } = props;
|
|
14
|
+
const themeSettings = useThemeConfig();
|
|
15
|
+
const colorMode = themeSettings.colorMode;
|
|
16
|
+
const [activeColorMode, setActiveColorMode] = useState('');
|
|
17
|
+
const modes = colorMode?.modes || ['light', 'dark'];
|
|
18
|
+
const defaultColor = modes[0] || 'light';
|
|
19
|
+
|
|
20
|
+
useMount(() => {
|
|
21
|
+
setActiveColorMode(document.documentElement.className || defaultColor);
|
|
22
|
+
});
|
|
23
|
+
|
|
24
|
+
if (colorMode?.hide) {
|
|
25
|
+
return null;
|
|
26
|
+
}
|
|
27
|
+
|
|
28
|
+
const handelChangeColorMode = () => {
|
|
29
|
+
const activeIndex = modes.indexOf(activeColorMode);
|
|
30
|
+
const mode = activeIndex < modes.length - 1 ? modes[activeIndex + 1] : modes[0];
|
|
31
|
+
setActiveColorMode(mode);
|
|
32
|
+
localStorage.setItem('colorSchema', mode);
|
|
33
|
+
document.documentElement.className = `${mode} notransition`;
|
|
34
|
+
|
|
35
|
+
window.requestAnimationFrame(() => {
|
|
36
|
+
document.documentElement.classList.remove('notransition');
|
|
37
|
+
});
|
|
38
|
+
|
|
39
|
+
telemetry.send('color_mode_switched', { from: activeColorMode, to: mode });
|
|
40
|
+
};
|
|
41
|
+
|
|
42
|
+
return (
|
|
43
|
+
<Wrapper
|
|
44
|
+
data-component-name="ColorModeSwitcher/ColorModeSwitcher"
|
|
45
|
+
onClick={handelChangeColorMode}
|
|
46
|
+
modes={modes}
|
|
47
|
+
role="link"
|
|
48
|
+
className={className}
|
|
49
|
+
>
|
|
50
|
+
{modes.map((mode) => (
|
|
51
|
+
<ColorModeIcon mode={mode} key={mode} />
|
|
52
|
+
))}
|
|
53
|
+
</Wrapper>
|
|
54
|
+
);
|
|
55
|
+
}
|
|
56
|
+
|
|
57
|
+
const Wrapper = styled.div<{ modes: string[] }>`
|
|
58
|
+
display: flex;
|
|
59
|
+
align-items: center;
|
|
60
|
+
cursor: pointer;
|
|
61
|
+
user-select: none;
|
|
62
|
+
|
|
63
|
+
${ColorModeIcon} {
|
|
64
|
+
display: none;
|
|
65
|
+
}
|
|
66
|
+
|
|
67
|
+
${({ modes }: { modes: string[] }) => {
|
|
68
|
+
const items = modes.map((mode) => {
|
|
69
|
+
return `
|
|
70
|
+
html.${mode} & ${ColorModeIcon}.${mode} {
|
|
71
|
+
display: block;
|
|
72
|
+
}
|
|
73
|
+
`;
|
|
74
|
+
});
|
|
75
|
+
|
|
76
|
+
return items.join('');
|
|
77
|
+
}}
|
|
78
|
+
`;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export * from '@theme/components/ColorModeSwitcher/ColorModeSwitcher';
|