@redocly/theme 0.2.3 → 0.4.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/Button/Button.js +3 -3
- package/CodeBlock/CodeBlock.js +1 -1
- package/ColorModeSwitcher/ColorModeSwitcher.js +4 -3
- package/CopyButton/CopyButtonWrapper.d.ts +2 -1
- package/CopyButton/CopyButtonWrapper.js +3 -2
- package/Footer/Footer.js +1 -1
- package/Footer/FooterColumn.js +4 -4
- package/Footer/FooterColumns.js +1 -1
- package/Footer/FooterCopyright.js +1 -1
- package/JsonViewer/JsonViewer.js +1 -1
- package/Markdown/Admonition.js +3 -3
- package/Markdown/CodeSample/CodeSample.js +3 -3
- package/Markdown/ContainerWrapper.d.ts +5 -0
- package/Markdown/ContainerWrapper.js +21 -0
- package/Markdown/Details.d.ts +6 -0
- package/Markdown/Details.js +22 -0
- package/Markdown/MarkdownLayout.d.ts +3 -1
- package/Markdown/MarkdownLayout.js +4 -4
- package/Markdown/MarkdownWrapper.js +3 -3
- package/Markdown/index.d.ts +1 -1
- package/Markdown/index.js +1 -1
- package/Navbar/MobileNavbarItem.js +1 -1
- package/Navbar/MobileNavbarMenu.js +6 -6
- package/Navbar/Navbar.d.ts +1 -0
- package/Navbar/Navbar.js +10 -8
- package/Navbar/NavbarDropdown.js +1 -1
- package/Navbar/NavbarItem.d.ts +3 -3
- package/Navbar/NavbarItem.js +17 -14
- package/Navbar/NavbarMenu.js +2 -2
- package/NavbarLogo/NavbarLogo.js +1 -1
- package/OperationBadge/OperationBadge.js +1 -1
- package/PageNavigation/PageNavigation.d.ts +6 -1
- package/PageNavigation/PageNavigation.js +4 -3
- package/Panel/Panel.d.ts +2 -1
- package/Panel/Panel.js +8 -3
- package/Panel/PanelBody.js +1 -1
- package/Panel/PanelComponent.d.ts +3 -2
- package/Panel/PanelComponent.js +3 -2
- package/Panel/PanelHeader.d.ts +1 -1
- package/Panel/PanelHeader.js +3 -3
- package/Panel/PanelHeaderTitle.js +1 -1
- package/Panel/index.d.ts +0 -3
- package/Panel/index.js +0 -3
- package/Profile/Profile.js +1 -1
- package/SamplesPanelControls/SamplesPanelControls.js +6 -4
- package/Search/Autocomplete.js +1 -1
- package/Search/Input.js +1 -1
- package/Search/Parameters.js +1 -1
- package/Search/Popover.js +1 -1
- package/Search/Search.js +1 -1
- package/Search/SearchItem.js +3 -3
- package/Search/utils.js +1 -1
- package/Sidebar/ApiCallItem.js +1 -1
- package/Sidebar/ArrowBack.js +1 -1
- package/Sidebar/BackButton.js +1 -1
- package/Sidebar/Drilldown.js +1 -1
- package/Sidebar/DrilldownMenu.js +2 -2
- package/Sidebar/DrilldownMenuItem.js +3 -3
- package/Sidebar/ExternalIcon.js +1 -1
- package/Sidebar/Menu.js +1 -1
- package/Sidebar/MenuContainer.js +1 -1
- package/Sidebar/MenuGroup.js +6 -2
- package/Sidebar/MenuItemLabel.js +1 -1
- package/Sidebar/MenuLink.js +1 -1
- package/Sidebar/SeparatorItem.js +1 -1
- package/Sidebar/SeparatorLine.js +1 -1
- package/Sidebar/Sidebar.js +1 -1
- package/SidebarLogo/SidebarLogo.js +1 -1
- package/SourceCode/SourceCode.js +5 -5
- package/TableOfContent/TableOfContent.js +5 -5
- package/Tooltip/Tooltip.js +1 -1
- package/Typography/H1.js +1 -1
- package/Typography/H2.js +1 -1
- package/Typography/H3.js +1 -1
- package/Typography/SectionHeader.js +1 -1
- package/Typography/Typography.js +1 -1
- package/globalStyle.d.ts +0 -1
- package/globalStyle.js +29 -28
- package/hooks/useActiveHeading.js +6 -5
- package/icons/ArrowIcon/ArrowIcon.js +1 -1
- package/package.json +1 -1
- package/src/Button/Button.tsx +14 -6
- package/src/CodeBlock/CodeBlock.ts +2 -4
- package/src/ColorModeSwitcher/ColorModeSwitcher.tsx +5 -4
- package/src/CopyButton/CopyButtonWrapper.tsx +6 -3
- package/src/Footer/Footer.tsx +3 -2
- package/src/Footer/FooterColumn.tsx +13 -9
- package/src/Footer/FooterColumns.tsx +2 -2
- package/src/Footer/FooterCopyright.tsx +1 -1
- package/src/JsonViewer/JsonViewer.tsx +5 -5
- package/src/Markdown/Admonition.tsx +3 -2
- package/src/Markdown/CodeSample/CodeSample.tsx +18 -17
- package/src/Markdown/{ContentWrapper.tsx → ContainerWrapper.tsx} +4 -4
- package/src/Markdown/Details.tsx +19 -0
- package/src/Markdown/MarkdownLayout.tsx +8 -4
- package/src/Markdown/MarkdownWrapper.tsx +87 -47
- package/src/Markdown/index.ts +1 -1
- package/src/Navbar/MobileNavbarItem.tsx +1 -3
- package/src/Navbar/MobileNavbarMenu.tsx +19 -17
- package/src/Navbar/Navbar.tsx +19 -10
- package/src/Navbar/NavbarDropdown.tsx +2 -1
- package/src/Navbar/NavbarItem.tsx +41 -24
- package/src/Navbar/NavbarMenu.tsx +3 -3
- package/src/NavbarLogo/NavbarLogo.tsx +4 -4
- package/src/OperationBadge/OperationBadge.ts +8 -9
- package/src/PageNavigation/PageNavigation.tsx +11 -3
- package/src/Panel/Panel.ts +17 -3
- package/src/Panel/PanelBody.ts +13 -5
- package/src/Panel/PanelComponent.tsx +3 -0
- package/src/Panel/PanelHeader.ts +13 -6
- package/src/Panel/PanelHeaderTitle.ts +6 -4
- package/src/Panel/index.ts +0 -3
- package/src/Profile/Profile.tsx +1 -1
- package/src/SamplesPanelControls/SamplesPanelControls.ts +9 -9
- package/src/Search/Autocomplete.tsx +1 -1
- package/src/Search/Input.tsx +7 -2
- package/src/Search/Parameters.tsx +1 -1
- package/src/Search/Popover.tsx +3 -3
- package/src/Search/Search.tsx +3 -1
- package/src/Search/SearchItem.tsx +14 -9
- package/src/Search/utils.tsx +1 -1
- package/src/Sidebar/ApiCallItem.tsx +7 -0
- package/src/Sidebar/ArrowBack.tsx +1 -1
- package/src/Sidebar/BackButton.tsx +10 -5
- package/src/Sidebar/Drilldown.tsx +1 -3
- package/src/Sidebar/DrilldownMenu.tsx +2 -2
- package/src/Sidebar/DrilldownMenuItem.tsx +12 -8
- package/src/Sidebar/ExternalIcon.tsx +1 -1
- package/src/Sidebar/Menu.tsx +1 -1
- package/src/Sidebar/MenuContainer.tsx +1 -1
- package/src/Sidebar/MenuGroup.tsx +12 -2
- package/src/Sidebar/MenuItemLabel.tsx +7 -7
- package/src/Sidebar/MenuLink.tsx +1 -1
- package/src/Sidebar/SeparatorItem.tsx +5 -1
- package/src/Sidebar/SeparatorLine.tsx +2 -2
- package/src/Sidebar/Sidebar.tsx +4 -4
- package/src/SidebarLogo/SidebarLogo.tsx +3 -3
- package/src/SourceCode/SourceCode.tsx +4 -4
- package/src/TableOfContent/TableOfContent.tsx +18 -16
- package/src/Tooltip/Tooltip.tsx +2 -2
- package/src/Typography/H1.ts +2 -2
- package/src/Typography/H2.ts +2 -2
- package/src/Typography/H3.ts +2 -1
- package/src/Typography/SectionHeader.ts +4 -4
- package/src/Typography/Typography.ts +1 -1
- package/src/globalStyle.ts +1358 -344
- package/src/hooks/useActiveHeading.ts +41 -34
- package/src/icons/ArrowIcon/ArrowIcon.tsx +3 -3
- package/src/ui/Background.tsx +1 -1
- package/src/ui/Dropdown.tsx +6 -6
- package/src/ui/Jumbotron.tsx +1 -1
- package/src/ui/Tiles/TileHeader.ts +5 -5
- package/src/ui/Tiles/TileText.tsx +1 -1
- package/src/ui/UniversalLink.tsx +1 -1
- package/src/utils/theme-helpers.ts +1 -1
- package/ui/Background.js +1 -1
- package/ui/Dropdown.js +4 -4
- package/ui/Jumbotron.js +1 -1
- package/ui/Tiles/TileHeader.js +1 -1
- package/ui/Tiles/TileText.js +1 -1
- package/ui/UniversalLink.js +1 -1
- package/utils/theme-helpers.js +1 -1
- package/Markdown/ContentWrapper.d.ts +0 -5
- package/Markdown/ContentWrapper.js +0 -21
- package/Panel/CodePanel.d.ts +0 -5
- package/Panel/CodePanel.js +0 -21
- package/Panel/ContentPanel.d.ts +0 -5
- package/Panel/ContentPanel.js +0 -20
- package/Panel/DarkHeader.d.ts +0 -1
- package/Panel/DarkHeader.js +0 -10
- package/src/Panel/CodePanel.ts +0 -34
- package/src/Panel/ContentPanel.ts +0 -44
- package/src/Panel/DarkHeader.ts +0 -8
package/src/Panel/Panel.ts
CHANGED
|
@@ -3,18 +3,32 @@ import styled from 'styled-components';
|
|
|
3
3
|
import { PanelHeader } from '@theme/Panel/PanelHeader';
|
|
4
4
|
import { PanelBody } from '@theme/Panel/PanelBody';
|
|
5
5
|
import { PanelComponent } from '@theme/Panel/PanelComponent';
|
|
6
|
+
import { ShelfIcon } from '@theme/icons/ShelfIcon';
|
|
6
7
|
|
|
7
|
-
export const Panel = styled(PanelComponent).attrs(() => ({
|
|
8
|
+
export const Panel = styled(PanelComponent).attrs(({ className }) => ({
|
|
8
9
|
'data-component-name': 'Panel/Panel',
|
|
10
|
+
className: className || 'panel-default',
|
|
9
11
|
}))`
|
|
10
|
-
|
|
12
|
+
background-color: var(--panel-background-color);
|
|
13
|
+
color: var(--panel-text-color);
|
|
14
|
+
font-family: var(--panel-font-family-local);
|
|
15
|
+
font-size: var(--panel-font-size-local);
|
|
16
|
+
font-weight: var(--panel-font-weight-local);
|
|
17
|
+
border: var(--panel-border-local);
|
|
18
|
+
border-radius: var(--panel-border-radius);
|
|
11
19
|
|
|
12
20
|
${PanelHeader} + ${PanelBody} {
|
|
13
21
|
border-top-left-radius: 0;
|
|
14
22
|
border-top-right-radius: 0;
|
|
15
23
|
}
|
|
16
24
|
|
|
25
|
+
${PanelHeader} {
|
|
26
|
+
${ShelfIcon} {
|
|
27
|
+
fill: var(--panel-chevron-icon-color); // ?????
|
|
28
|
+
}
|
|
29
|
+
}
|
|
30
|
+
|
|
17
31
|
&:not(:last-child) {
|
|
18
|
-
margin-bottom:
|
|
32
|
+
margin-bottom: var(--panel-gap-vertical);
|
|
19
33
|
}
|
|
20
34
|
`;
|
package/src/Panel/PanelBody.ts
CHANGED
|
@@ -24,9 +24,17 @@ export const PanelBody = styled.div.attrs(() => ({
|
|
|
24
24
|
${({ animate }) => animate && showPanelAnimation};
|
|
25
25
|
${({ hidden }) => hidden && 'visibility: hidden'};
|
|
26
26
|
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
27
|
+
background-color: var(--panel-body-background-color);
|
|
28
|
+
|
|
29
|
+
font-family: var(--panel-body-font-family-local);
|
|
30
|
+
font-size: var(--panel-body-font-size-local);
|
|
31
|
+
font-weight: var(--panel-body-font-weight-local);
|
|
32
|
+
border: var(--panel-body-border-local);
|
|
33
|
+
padding: var(--panel-body-padding-local);
|
|
34
|
+
color: var(--panel-body-text-color);
|
|
35
|
+
|
|
36
|
+
border-top-left-radius: var(--panel-border-radius);
|
|
37
|
+
border-top-right-radius: var(--panel-border-radius);
|
|
38
|
+
border-bottom-right-radius: var(--panel-border-radius);
|
|
39
|
+
border-bottom-left-radius: var(--panel-border-radius);
|
|
32
40
|
`;
|
|
@@ -17,6 +17,7 @@ export interface PanelComponentProps {
|
|
|
17
17
|
className?: string;
|
|
18
18
|
header?: ReactNode | ((props: PanelHeaderProps) => ReactNode);
|
|
19
19
|
onToggle?: (expanded: boolean) => void;
|
|
20
|
+
description?: React.ReactNode;
|
|
20
21
|
}
|
|
21
22
|
|
|
22
23
|
export function PanelComponent({
|
|
@@ -25,6 +26,7 @@ export function PanelComponent({
|
|
|
25
26
|
className,
|
|
26
27
|
children,
|
|
27
28
|
onToggle,
|
|
29
|
+
description,
|
|
28
30
|
}: PropsWithChildren<PanelComponentProps>): JSX.Element {
|
|
29
31
|
const [isExpanded, setExpanded] = useState(expanded);
|
|
30
32
|
const [animate, setAnimate] = useState(false);
|
|
@@ -54,6 +56,7 @@ export function PanelComponent({
|
|
|
54
56
|
<InlineBox>
|
|
55
57
|
<PanelHeaderTitle data-cy="title">{header}</PanelHeaderTitle>
|
|
56
58
|
<ShelfIcon direction={isExpanded ? 'down' : 'right'} />
|
|
59
|
+
{description}
|
|
57
60
|
</InlineBox>
|
|
58
61
|
</PanelHeader>
|
|
59
62
|
))}
|
package/src/Panel/PanelHeader.ts
CHANGED
|
@@ -2,7 +2,7 @@ import { BaseSyntheticEvent } from 'react';
|
|
|
2
2
|
import styled from 'styled-components';
|
|
3
3
|
|
|
4
4
|
export interface PanelHeaderProps {
|
|
5
|
-
expanded
|
|
5
|
+
expanded?: boolean;
|
|
6
6
|
disabled?: boolean;
|
|
7
7
|
toggle?: (e: BaseSyntheticEvent) => void;
|
|
8
8
|
}
|
|
@@ -15,13 +15,20 @@ export const PanelHeader = styled.div.attrs(() => ({
|
|
|
15
15
|
display: flex;
|
|
16
16
|
align-items: center;
|
|
17
17
|
justify-content: space-between;
|
|
18
|
-
white-space:
|
|
18
|
+
white-space: var(--panel-heading-white-space-local);
|
|
19
|
+
|
|
19
20
|
cursor: pointer;
|
|
20
21
|
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
border
|
|
22
|
+
line-height: var(--panel-heading-line-height-local);
|
|
23
|
+
font-size: var(--panel-heading-font-size-local);
|
|
24
|
+
padding: var(--panel-heading-padding-local);
|
|
25
|
+
border: var(--panel-heading-border);
|
|
26
|
+
background-color: var(--panel-heading-background-color);
|
|
27
|
+
|
|
28
|
+
border-top-left-radius: var(--panel-border-radius);
|
|
29
|
+
border-top-right-radius: var(--panel-border-radius);
|
|
30
|
+
border-bottom-right-radius: ${({ expanded }) => (expanded ? '0' : 'var(--panel-border-radius)')};
|
|
31
|
+
border-bottom-left-radius: ${({ expanded }) => (expanded ? '0' : 'var(--panel-border-radius)')};
|
|
25
32
|
|
|
26
33
|
pointer-events: ${({ disabled }) => (disabled ? 'none' : 'auto')};
|
|
27
34
|
`;
|
|
@@ -3,11 +3,13 @@ import styled from 'styled-components';
|
|
|
3
3
|
export const PanelHeaderTitle = styled.span.attrs(() => ({
|
|
4
4
|
'data-component-name': 'Panel/PanelHeaderTitle',
|
|
5
5
|
}))`
|
|
6
|
-
line-height: 1;
|
|
7
6
|
margin-right: 5px;
|
|
8
|
-
font-weight:
|
|
9
|
-
|
|
7
|
+
font-weight: var(--panel-heading-font-weight-local);
|
|
8
|
+
overflow: hidden;
|
|
9
|
+
text-overflow: ellipsis;
|
|
10
|
+
|
|
11
|
+
/* changed from var(--text-color-inverse) to var(--text-color)
|
|
10
12
|
should change several components in openapi/graphql reference-docs to use inverse color
|
|
11
13
|
*/
|
|
12
|
-
color: var(--color
|
|
14
|
+
color: var(--panel-heading-text-color);
|
|
13
15
|
`;
|
package/src/Panel/index.ts
CHANGED
package/src/Profile/Profile.tsx
CHANGED
|
@@ -5,25 +5,25 @@ import { CodeBlock } from '@theme/CodeBlock';
|
|
|
5
5
|
export const SamplesControlButton = styled.button.attrs(() => ({
|
|
6
6
|
'data-component-name': 'SamplesPanelControls/SamplesPanelControls',
|
|
7
7
|
}))`
|
|
8
|
-
background-color: var(--samples-
|
|
8
|
+
background-color: var(--panel-samples-controls-background-color);
|
|
9
9
|
border: 0;
|
|
10
10
|
outline: 0;
|
|
11
|
-
border-radius: var(--
|
|
11
|
+
border-radius: var(--border-radius);
|
|
12
12
|
height: 20px;
|
|
13
|
-
color: var(--
|
|
13
|
+
color: var(--panel-samples-controls-text-color);
|
|
14
14
|
font-size: 12px;
|
|
15
15
|
line-height: 12px;
|
|
16
16
|
cursor: pointer;
|
|
17
17
|
padding: 1px 6px;
|
|
18
18
|
min-width: 90px;
|
|
19
19
|
|
|
20
|
-
${({ theme }) => theme.mediaQueries
|
|
20
|
+
${({ theme }) => theme.mediaQueries?.small} {
|
|
21
21
|
padding: 2px 20px;
|
|
22
22
|
}
|
|
23
23
|
|
|
24
24
|
:hover,
|
|
25
25
|
:focus {
|
|
26
|
-
background-color: var(--samples-
|
|
26
|
+
background-color: var(--panel-samples-controls-hover-background-color);
|
|
27
27
|
}
|
|
28
28
|
`;
|
|
29
29
|
|
|
@@ -43,7 +43,7 @@ export const SampleControls = styled.div`
|
|
|
43
43
|
margin-top: 5px;
|
|
44
44
|
margin-left: 10px;
|
|
45
45
|
|
|
46
|
-
${({ theme }) => theme.mediaQueries
|
|
46
|
+
${({ theme }) => theme.mediaQueries?.small} {
|
|
47
47
|
margin-top: 0;
|
|
48
48
|
}
|
|
49
49
|
|
|
@@ -64,9 +64,9 @@ export const PreformattedCodeBlock = styled(CodeBlock.withComponent('pre'))`
|
|
|
64
64
|
margin: 0;
|
|
65
65
|
font-family: var(--code-font-family);
|
|
66
66
|
padding: 20px;
|
|
67
|
-
border-radius: var(--
|
|
68
|
-
background-color: var(--samples-
|
|
69
|
-
color: var(--color-
|
|
67
|
+
border-radius: var(--border-radius);
|
|
68
|
+
background-color: var(--panel-samples-controls-background-color);
|
|
69
|
+
color: var(--text-color-inverse);
|
|
70
70
|
font-size: var(--code-font-size);
|
|
71
71
|
white-space: var(--code-wrap, pre);
|
|
72
72
|
`;
|
package/src/Search/Input.tsx
CHANGED
|
@@ -6,7 +6,7 @@ export const FormInput = styled.input.attrs(() => ({
|
|
|
6
6
|
padding: 1em 2.5em 1em 1em;
|
|
7
7
|
background-color: var(--search-input-background-color);
|
|
8
8
|
border-radius: var(--search-input-border-radius);
|
|
9
|
-
border:
|
|
9
|
+
border: var(--search-input-border);
|
|
10
10
|
outline: none;
|
|
11
11
|
color: var(--search-input-text-color);
|
|
12
12
|
font-size: var(--search-input-font-size);
|
|
@@ -14,6 +14,11 @@ export const FormInput = styled.input.attrs(() => ({
|
|
|
14
14
|
line-height: var(--search-input-line-height);
|
|
15
15
|
|
|
16
16
|
::placeholder {
|
|
17
|
-
color: var(--search-input-
|
|
17
|
+
color: var(--search-input-placeholder-color);
|
|
18
|
+
}
|
|
19
|
+
|
|
20
|
+
&:hover {
|
|
21
|
+
background-color: var(--search-input-hover-background-color);
|
|
22
|
+
border: var(--search-input-hover-border);
|
|
18
23
|
}
|
|
19
24
|
`;
|
|
@@ -39,7 +39,7 @@ export function Parameters({ parameters = [] }: ParametersProps): JSX.Element {
|
|
|
39
39
|
}
|
|
40
40
|
|
|
41
41
|
const Wrapper = styled.div`
|
|
42
|
-
border-left: 1px solid var(--
|
|
42
|
+
border-left: 1px solid var(--border-color);
|
|
43
43
|
padding: 0 12px;
|
|
44
44
|
margin-top: 8px;
|
|
45
45
|
margin-bottom: 4px;
|
package/src/Search/Popover.tsx
CHANGED
|
@@ -12,9 +12,9 @@ export const Popover = styled.div.attrs(() => ({
|
|
|
12
12
|
max-width: 90vw;
|
|
13
13
|
max-height: 400px;
|
|
14
14
|
overflow-y: auto;
|
|
15
|
-
box-shadow:
|
|
16
|
-
|
|
17
|
-
background: var(--search-popover-backgrond-color);
|
|
15
|
+
box-shadow: var(--search-popover-shadow);
|
|
16
|
+
background: var(--search-popover-background-color);
|
|
18
17
|
list-style: none;
|
|
19
18
|
border-radius: var(--search-popover-border-radius);
|
|
19
|
+
border: var(--search-popover-border);
|
|
20
20
|
`;
|
package/src/Search/Search.tsx
CHANGED
|
@@ -41,18 +41,31 @@ export function SearchItem({ item }: SearchItemProps): JSX.Element {
|
|
|
41
41
|
);
|
|
42
42
|
}
|
|
43
43
|
|
|
44
|
+
const Title = styled.div`
|
|
45
|
+
font-weight: var(--font-weight-bold);
|
|
46
|
+
color: var(--search-item-title-text-color);
|
|
47
|
+
overflow: hidden;
|
|
48
|
+
text-overflow: ellipsis;
|
|
49
|
+
line-height: var(--line-height-base);
|
|
50
|
+
`;
|
|
51
|
+
|
|
44
52
|
const SearchLink = styled(Link)`
|
|
45
53
|
display: block;
|
|
46
54
|
text-decoration: none;
|
|
47
|
-
padding:
|
|
55
|
+
padding: var(--search-item-padding);
|
|
48
56
|
transition: background-color 0.3s ease;
|
|
49
57
|
outline: none;
|
|
50
58
|
white-space: nowrap;
|
|
51
59
|
color: var(--search-item-text-color);
|
|
60
|
+
background-color: var(--search-item-background-color);
|
|
52
61
|
|
|
53
62
|
&:hover,
|
|
54
63
|
&:focus {
|
|
64
|
+
color: var(--search-item-active-text-color);
|
|
55
65
|
background-color: var(--search-item-active-background-color);
|
|
66
|
+
${Title} {
|
|
67
|
+
color: var(--search-item-active-title-text-color);
|
|
68
|
+
}
|
|
56
69
|
}
|
|
57
70
|
`;
|
|
58
71
|
|
|
@@ -64,14 +77,6 @@ const Operation = styled.div`
|
|
|
64
77
|
text-overflow: ellipsis;
|
|
65
78
|
`;
|
|
66
79
|
|
|
67
|
-
const Title = styled.div`
|
|
68
|
-
font-weight: var(--font-weight-bold);
|
|
69
|
-
color: var(--search-item-title-text-color);
|
|
70
|
-
overflow: hidden;
|
|
71
|
-
text-overflow: ellipsis;
|
|
72
|
-
line-height: var(--line-height-base);
|
|
73
|
-
`;
|
|
74
|
-
|
|
75
80
|
const Description = styled.div`
|
|
76
81
|
font-size: var(--font-size-base);
|
|
77
82
|
overflow: hidden;
|
package/src/Search/utils.tsx
CHANGED
|
@@ -29,4 +29,11 @@ const Wrapper = styled.div``;
|
|
|
29
29
|
export const Badge = styled(OperationBadge)`
|
|
30
30
|
flex-shrink: 0;
|
|
31
31
|
margin-top: 0;
|
|
32
|
+
width: 36px;
|
|
33
|
+
height: 14px;
|
|
34
|
+
font-size: var(--sidebar-item-badge-http-font-size);
|
|
35
|
+
font-family: var(--sidebar-item-badge-http-font-family);
|
|
36
|
+
font-weight: var(--sidebar-item-badge-http-font-weight);
|
|
37
|
+
border-radius: var(--sidebar-item-badge-http-border-radius);
|
|
38
|
+
color: var(--sidebar-item-badge-http-text-color);
|
|
32
39
|
`;
|
|
@@ -21,24 +21,29 @@ export function BackButton({
|
|
|
21
21
|
|
|
22
22
|
const Button = styled.button`
|
|
23
23
|
width: 100%;
|
|
24
|
-
background-color:
|
|
24
|
+
background-color: var(--sidebar-back-button-background-color);
|
|
25
25
|
padding: 0;
|
|
26
26
|
border: 0;
|
|
27
27
|
outline: 0;
|
|
28
|
-
color: var(--color-content);
|
|
29
28
|
display: flex;
|
|
30
29
|
align-items: center;
|
|
31
30
|
cursor: pointer;
|
|
32
|
-
|
|
31
|
+
color: var(--sidebar-back-button-text-color);
|
|
32
|
+
font-size: var(--sidebar-back-button-font-size);
|
|
33
|
+
font-family: var(--sidebar-back-button-font-family);
|
|
34
|
+
text-transform: var(--sidebar-back-button-transform);
|
|
35
|
+
|
|
33
36
|
transition: color 0.25s ease;
|
|
34
37
|
text-align: left;
|
|
35
|
-
margin
|
|
38
|
+
margin: var(--sidebar-back-button-margin);
|
|
36
39
|
|
|
37
40
|
svg {
|
|
38
41
|
margin-right: calc(var(--sidebar-spacing-unit) * 1.5);
|
|
42
|
+
fill: var(--sidebar-back-button-icon-color);
|
|
39
43
|
}
|
|
40
44
|
|
|
41
45
|
&:hover {
|
|
42
|
-
color: var(--sidebar-
|
|
46
|
+
color: var(--sidebar-back-button-hover-text-color);
|
|
47
|
+
background: var(--sidebar-back-button-hover-background-color);
|
|
43
48
|
}
|
|
44
49
|
`;
|
|
@@ -34,9 +34,7 @@ export function Drilldown({
|
|
|
34
34
|
const Wrapper = styled.div``;
|
|
35
35
|
|
|
36
36
|
const DrilldownLabel = styled(MenuItemLabel)`
|
|
37
|
-
padding
|
|
38
|
-
padding-bottom: calc(var(--sidebar-spacing-padding-vertical) * 2);
|
|
39
|
-
padding-left: var(--sidebar-spacing-padding-horizontal);
|
|
37
|
+
padding: var(--sidebar-item-nested-offset) var(--sidebar-item-padding-horizontal);
|
|
40
38
|
font-weight: var(--font-weight-bold);
|
|
41
39
|
|
|
42
40
|
&:hover {
|
|
@@ -31,7 +31,7 @@ const MenuContainer = styled.div`
|
|
|
31
31
|
bottom: 0;
|
|
32
32
|
width: 100%;
|
|
33
33
|
z-index: 100;
|
|
34
|
-
background-color: var(--sidebar-background-color);
|
|
34
|
+
background-color: var(--sidebar-item-drilldown-background-color);
|
|
35
35
|
`;
|
|
36
36
|
|
|
37
37
|
const slideInAnimation = keyframes`
|
|
@@ -52,7 +52,7 @@ const MenuContent = styled.div`
|
|
|
52
52
|
`;
|
|
53
53
|
|
|
54
54
|
const MenuWrapper = styled.div`
|
|
55
|
-
padding: var(--sidebar-
|
|
55
|
+
padding: var(--sidebar-item-padding-vertical) var(--sidebar-item-padding-horizontal);
|
|
56
56
|
margin-bottom: calc(var(--sidebar-spacing-unit) * 3);
|
|
57
57
|
word-break: break-word;
|
|
58
58
|
`;
|
|
@@ -18,23 +18,27 @@ export function DrilldownMenuItem({ item }: MenuItemProps): JSX.Element {
|
|
|
18
18
|
const Container = styled.div`
|
|
19
19
|
display: flex;
|
|
20
20
|
align-items: center;
|
|
21
|
-
color: var(--sidebar-item-color);
|
|
22
|
-
font-size: var(--sidebar-font-size);
|
|
21
|
+
color: var(--sidebar-item-drilldown-text-color);
|
|
23
22
|
font-weight: var(--font-weight-bold);
|
|
23
|
+
font-size: var(--sidebar-item-drilldown-font-size);
|
|
24
|
+
font-family: var(--sidebar-item-drilldown-font-family);
|
|
25
|
+
text-transform: var(--sidebar-text-drilldown-transform);
|
|
26
|
+
background: var(--sidebar-item-drilldown-background-color);
|
|
24
27
|
`;
|
|
25
28
|
|
|
26
29
|
const Icon = styled.img`
|
|
27
|
-
width:
|
|
28
|
-
height:
|
|
30
|
+
width: var(--sidebar-item-icon-size);
|
|
31
|
+
height: var(--sidebar-item-icon-size);
|
|
29
32
|
margin-right: var(--sidebar-spacing-unit);
|
|
30
|
-
border-radius:
|
|
33
|
+
border-radius: var(--sidebar-item-icon-border-radius);
|
|
31
34
|
flex-shrink: 0;
|
|
32
35
|
overflow: hidden;
|
|
33
36
|
`;
|
|
34
37
|
|
|
35
38
|
const SubLabel = styled.div`
|
|
36
39
|
margin-top: 2px;
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
font-
|
|
40
|
+
color: var(--sidebar-item-sublabel-text-color);
|
|
41
|
+
font-weight: var(-sidebar-item-sublabel-font-weight);
|
|
42
|
+
font-size: var(--sidebar-item-sublabel-font-size);
|
|
43
|
+
font-family: var(--sidebar-item-sublabel-font-family);
|
|
40
44
|
`;
|
package/src/Sidebar/Menu.tsx
CHANGED
|
@@ -42,12 +42,22 @@ export function MenuGroup({
|
|
|
42
42
|
const Wrapper = styled.div``;
|
|
43
43
|
|
|
44
44
|
const MenuWrapper = styled.div`
|
|
45
|
-
padding-left: var(--sidebar-
|
|
45
|
+
padding-left: var(--sidebar-item-nested-offset);
|
|
46
46
|
`;
|
|
47
47
|
|
|
48
48
|
const MenuGroupLabel = styled(MenuItemLabel)<{ isAlwaysExpanded?: boolean }>`
|
|
49
|
-
padding-left: var(--sidebar-
|
|
49
|
+
padding-left: var(--sidebar-item-padding-horizontal);
|
|
50
50
|
cursor: ${(props) => (props.isAlwaysExpanded ? 'default' : 'pointer')};
|
|
51
|
+
font-family: var(--sidebar-item-group-font-family);
|
|
52
|
+
font-size: var(--sidebar-item-group-font-size);
|
|
53
|
+
text-transform: var(--sidebar-text-group-transform);
|
|
54
|
+
color: var(--sidebar-item-group-text-color);
|
|
55
|
+
background: var(--sidebar-item-group-background-color);
|
|
56
|
+
${(props) =>
|
|
57
|
+
props.active
|
|
58
|
+
? `color: var(--sidebar-item-group-active-text-color);
|
|
59
|
+
background-color: var(--sidebar-item-group-active-background-color);`
|
|
60
|
+
: null};
|
|
51
61
|
`;
|
|
52
62
|
|
|
53
63
|
const MenuGroupArrow = styled(ArrowIcon)`
|
|
@@ -10,17 +10,17 @@ export const MenuItemLabel = styled.li.attrs(() => ({
|
|
|
10
10
|
word-break: break-word;
|
|
11
11
|
margin-bottom: 1px;
|
|
12
12
|
|
|
13
|
-
|
|
14
|
-
font-
|
|
13
|
+
background-color: var(--sidebar-item-background-color);
|
|
14
|
+
font-family: var(--sidebar-item-font-family);
|
|
15
|
+
font-size: var(--sidebar-item-font-size);
|
|
15
16
|
font-weight: var(--font-weight-regular);
|
|
16
|
-
margin-left: var(--sidebar-
|
|
17
|
-
padding: var(--sidebar-
|
|
17
|
+
margin-left: var(--sidebar-offset-left);
|
|
18
|
+
padding: var(--sidebar-item-padding-vertical) var(--sidebar-item-padding-horizontal);
|
|
18
19
|
padding-left: calc(
|
|
19
|
-
var(--sidebar-
|
|
20
|
+
var(--sidebar-item-padding-horizontal) + var(--sidebar-group-item-chevron-size) +
|
|
20
21
|
var(--sidebar-spacing-unit) * 0.5
|
|
21
22
|
);
|
|
22
|
-
border-
|
|
23
|
-
border-bottom-left-radius: var(--sidebar-border-radius);
|
|
23
|
+
border-radius: var(--sidebar-item-border-radius);
|
|
24
24
|
|
|
25
25
|
${(props) =>
|
|
26
26
|
props.active
|
package/src/Sidebar/MenuLink.tsx
CHANGED
|
@@ -6,7 +6,7 @@ export const MenuLink = styled(UniversalLink).attrs(() => ({
|
|
|
6
6
|
'data-component-name': 'Sidebar/MenuLink',
|
|
7
7
|
}))<UniversalLinkProps>`
|
|
8
8
|
text-decoration: none;
|
|
9
|
-
color: var(--sidebar-item-color);
|
|
9
|
+
color: var(--sidebar-item-text-color);
|
|
10
10
|
|
|
11
11
|
&&.external-url:after {
|
|
12
12
|
content: none;
|
|
@@ -7,7 +7,11 @@ export const SeparatorItem = styled(MenuItemLabel).attrs(() => ({
|
|
|
7
7
|
}))`
|
|
8
8
|
cursor: default;
|
|
9
9
|
font-weight: var(--font-weight-bold);
|
|
10
|
-
color: var(--sidebar-separator-
|
|
10
|
+
color: var(--sidebar-separator-item-color);
|
|
11
|
+
font-family: var(--sidebar-item-separator-font-family);
|
|
12
|
+
font-size: var(--sidebar-item-separator-font-size);
|
|
13
|
+
text-transform: var(--sidebar-item-separator-text-transform);
|
|
14
|
+
background: var(--sidebar-item-separator-background-color);
|
|
11
15
|
|
|
12
16
|
:hover {
|
|
13
17
|
color: inherit;
|
|
@@ -4,6 +4,6 @@ export const SeparatorLine = styled.div.attrs(() => ({
|
|
|
4
4
|
'data-component-name': 'Sidebar/SeparatorLine',
|
|
5
5
|
}))`
|
|
6
6
|
height: 1px;
|
|
7
|
-
background-color: var(--sidebar-separator-line-color);
|
|
8
|
-
margin: var(--sidebar-
|
|
7
|
+
background-color: var(--sidebar-item-separator-line-color);
|
|
8
|
+
margin: var(--sidebar-item-padding-vertical) 0;
|
|
9
9
|
`;
|
package/src/Sidebar/Sidebar.tsx
CHANGED
|
@@ -8,16 +8,16 @@ interface SidebarProps {
|
|
|
8
8
|
export const Sidebar = styled.aside.attrs(() => ({
|
|
9
9
|
'data-component-name': 'Sidebar/Sidebar',
|
|
10
10
|
}))<SidebarProps>`
|
|
11
|
-
border-right: 1px solid var(--sidebar-
|
|
11
|
+
border-right: 1px solid var(--sidebar-border-color);
|
|
12
12
|
position: fixed;
|
|
13
13
|
left: 0;
|
|
14
14
|
right: 0;
|
|
15
15
|
bottom: 0;
|
|
16
16
|
z-index: 2;
|
|
17
17
|
background: var(--sidebar-background-color);
|
|
18
|
-
font-size: var(--sidebar-font-size);
|
|
19
|
-
font-family: var(--sidebar-font-family);
|
|
20
|
-
color: var(--sidebar-item-color);
|
|
18
|
+
font-size: var(--sidebar-item-font-size);
|
|
19
|
+
font-family: var(--sidebar-item-font-family);
|
|
20
|
+
color: var(--sidebar-item-text-color);
|
|
21
21
|
top: var(--navbar-height);
|
|
22
22
|
height: calc(100vh - var(--navbar-height));
|
|
23
23
|
display: flex;
|
|
@@ -34,9 +34,9 @@ export function SidebarLogo({
|
|
|
34
34
|
}
|
|
35
35
|
|
|
36
36
|
const LogoImgEl = styled.img`
|
|
37
|
-
max-height: var(--logo-max-height);
|
|
38
|
-
max-width: var(--logo-max-width);
|
|
39
|
-
padding: var(--logo-padding);
|
|
37
|
+
max-height: var(--sidebar-logo-max-height);
|
|
38
|
+
max-width: var(--sidebar-logo-max-width);
|
|
39
|
+
padding: var(--sidebar-logo-padding);
|
|
40
40
|
width: 100%;
|
|
41
41
|
display: block;
|
|
42
42
|
`;
|
|
@@ -78,11 +78,11 @@ export function SourceCode({
|
|
|
78
78
|
// Because we don't have session storage in ssr and can't get the security details there
|
|
79
79
|
// Issue for more details https://github.com/Redocly/reference-docs/issues/888
|
|
80
80
|
useEffect(() => {
|
|
81
|
-
const
|
|
82
|
-
if (
|
|
83
|
-
setSourceCode(
|
|
81
|
+
const _source = source || externalSource?.sample?.get?.(externalSource);
|
|
82
|
+
if (_source) {
|
|
83
|
+
setSourceCode(_source);
|
|
84
84
|
}
|
|
85
|
-
}, [externalSource]);
|
|
85
|
+
}, [source, externalSource]);
|
|
86
86
|
|
|
87
87
|
if (withCopyButton) {
|
|
88
88
|
return (
|