@redocly/theme 0.18.3-patch.1 → 0.18.3-patch.5

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.
Files changed (73) hide show
  1. package/lib/I18n/LanguagePicker.js +1 -1
  2. package/lib/components/Catalog/Catalog.d.ts +5 -0
  3. package/lib/components/Catalog/Catalog.js +19 -17
  4. package/lib/components/Catalog/CatalogCard.js +22 -5
  5. package/lib/components/CodeBlock/styledVariables.js +1 -1
  6. package/lib/components/Filter/Filter.d.ts +3 -1
  7. package/lib/components/Filter/Filter.js +17 -3
  8. package/lib/components/Filter/FilterContent.d.ts +3 -1
  9. package/lib/components/Filter/FilterContent.js +6 -5
  10. package/lib/components/Filter/FilterPopover.d.ts +3 -1
  11. package/lib/components/Filter/FilterPopover.js +4 -4
  12. package/lib/components/Filter/styledVariables.js +1 -1
  13. package/lib/components/Footer/Footer.js +2 -1
  14. package/lib/components/Footer/FooterColumn.js +2 -0
  15. package/lib/components/Footer/styledVariables.js +1 -1
  16. package/lib/components/Markdown/Admonition.js +12 -9
  17. package/lib/components/Markdown/Mermaid.js +3 -0
  18. package/lib/components/Markdown/styledVariables.d.ts +1 -0
  19. package/lib/components/Markdown/styledVariables.js +16 -6
  20. package/lib/components/Panel/PanelHeader.js +1 -0
  21. package/lib/components/Panel/styledVariables.js +1 -1
  22. package/lib/components/Product/ProductPicker.js +1 -1
  23. package/lib/components/Select/Select.d.ts +1 -3
  24. package/lib/components/Select/Select.js +7 -5
  25. package/lib/components/Separator/SeparatorItem.js +1 -0
  26. package/lib/components/Sidebar/HeaderWrapper.js +2 -2
  27. package/lib/components/Tag/Tag.d.ts +2 -1
  28. package/lib/components/Tag/Tag.js +10 -4
  29. package/lib/components/Tag/styledVariables.js +14 -8
  30. package/lib/config.d.ts +31 -0
  31. package/lib/config.js +12 -2
  32. package/lib/globalStyle.js +23 -21
  33. package/lib/hooks/useMobileMenu.js +5 -6
  34. package/lib/hooks/useModalScrollLock.d.ts +1 -0
  35. package/lib/hooks/useModalScrollLock.js +16 -0
  36. package/lib/icons/AlertIcon/AlertIcon.js +0 -5
  37. package/lib/types/portal/src/shared/types/catalog.d.ts +5 -1
  38. package/lib/ui/Highlight.d.ts +1 -1
  39. package/lib/ui/Highlight.js +1 -1
  40. package/lib/ui/darkColors.js +26 -26
  41. package/lib/utils/css-variables.js +1 -1
  42. package/package.json +1 -1
  43. package/src/I18n/LanguagePicker.tsx +1 -0
  44. package/src/components/Catalog/Catalog.tsx +18 -10
  45. package/src/components/Catalog/CatalogCard.tsx +26 -3
  46. package/src/components/CodeBlock/styledVariables.ts +1 -1
  47. package/src/components/Filter/Filter.tsx +34 -3
  48. package/src/components/Filter/FilterContent.tsx +13 -4
  49. package/src/components/Filter/FilterPopover.tsx +13 -3
  50. package/src/components/Filter/styledVariables.ts +1 -1
  51. package/src/components/Footer/Footer.tsx +1 -1
  52. package/src/components/Footer/FooterColumn.tsx +2 -0
  53. package/src/components/Footer/styledVariables.ts +1 -1
  54. package/src/components/Markdown/Admonition.tsx +13 -8
  55. package/src/components/Markdown/Mermaid.tsx +3 -0
  56. package/src/components/Markdown/styledVariables.ts +17 -6
  57. package/src/components/Panel/PanelHeader.ts +1 -0
  58. package/src/components/Panel/styledVariables.ts +1 -1
  59. package/src/components/Product/ProductPicker.tsx +0 -1
  60. package/src/components/Select/Select.tsx +8 -8
  61. package/src/components/Separator/SeparatorItem.tsx +1 -0
  62. package/src/components/Sidebar/HeaderWrapper.tsx +2 -2
  63. package/src/components/Tag/Tag.tsx +12 -4
  64. package/src/components/Tag/styledVariables.ts +14 -8
  65. package/src/config.ts +11 -0
  66. package/src/globalStyle.ts +24 -22
  67. package/src/hooks/useMobileMenu.ts +3 -4
  68. package/src/hooks/useModalScrollLock.ts +12 -0
  69. package/src/icons/AlertIcon/AlertIcon.tsx +0 -5
  70. package/src/types/portal/src/shared/types/catalog.ts +7 -1
  71. package/src/ui/Highlight.tsx +2 -2
  72. package/src/ui/darkColors.tsx +26 -26
  73. package/src/utils/css-variables.ts +4 -2
@@ -20,7 +20,7 @@ import { languagePicker } from '@theme/I18n';
20
20
  import { select } from '@theme/components/Select';
21
21
  import { userProfile, userProfileDropdown } from '@theme/components/Profile';
22
22
  import { dropdown } from '@theme/components/Dropdown';
23
- import { admonition, markdown } from '@theme/components/Markdown';
23
+ import { admonition, markdown, mermaid } from '@theme/components/Markdown';
24
24
  import { tooltip } from '@theme/components/Tooltip';
25
25
  import { lastUpdated } from '@theme/components/LastUpdated';
26
26
  import { logo } from '@theme/components/NavbarLogo';
@@ -87,16 +87,16 @@ const themeColors = css`
87
87
  --color-purple-9: #22075e;
88
88
  --color-purple-10: #120338;
89
89
 
90
- --color-magneta-1: #fff0f6;
91
- --color-magneta-2: #ffd6e7;
92
- --color-magneta-3: #ffadd2;
93
- --color-magneta-4: #ff85c0;
94
- --color-magneta-5: #f759ab;
95
- --color-magneta-6: #eb2f96;
96
- --color-magneta-7: #c41d7f;
97
- --color-magneta-8: #9e1068;
98
- --color-magneta-9: #780650;
99
- --color-magneta-10: #520339;
90
+ --color-magenta-1: #fff0f6;
91
+ --color-magenta-2: #ffd6e7;
92
+ --color-magenta-3: #ffadd2;
93
+ --color-magenta-4: #ff85c0;
94
+ --color-magenta-5: #f759ab;
95
+ --color-magenta-6: #eb2f96;
96
+ --color-magenta-7: #c41d7f;
97
+ --color-magenta-8: #9e1068;
98
+ --color-magenta-9: #780650;
99
+ --color-magenta-10: #520339;
100
100
 
101
101
  --color-cyan-1: #e6fffb;
102
102
  --color-cyan-2: #b5f5ec;
@@ -153,16 +153,16 @@ const themeColors = css`
153
153
  --color-primary-text: #161087;
154
154
  --color-primary-text-active: #0d086e;
155
155
 
156
- --color-success-bg: var(--color-green-1);
157
- --color-success-bg-hover: var(--color-green-2);
158
- --color-success-border: var(--color-green-3);
159
- --color-success-border-hover: var(--color-green-4);
160
- --color-success-hover: var(--color-green-5);
161
- --color-success-base: var(--color-green-6);
162
- --color-success-active: var(--color-green-7);
163
- --color-success-text-hover: var(--color-green-8);
164
- --color-success-text: var(--color-green-9);
165
- --color-success-text-active: var(--color-green-10);
156
+ --color-success-bg: var(--color-cyan-1);
157
+ --color-success-bg-hover: var(--color-cyan-2);
158
+ --color-success-border: var(--color-cyan-3);
159
+ --color-success-border-hover: var(--color-cyan-4);
160
+ --color-success-hover: var(--color-cyan-5);
161
+ --color-success-base: var(--color-cyan-6);
162
+ --color-success-active: var(--color-cyan-7);
163
+ --color-success-text-hover: var(--color-cyan-8);
164
+ --color-success-text: var(--color-cyan-9);
165
+ --color-success-text-active: var(--color-cyan-10);
166
166
 
167
167
  --color-warning-bg: var(--color-gold-1);
168
168
  --color-warning-bg-hover: var(--color-gold-2);
@@ -177,7 +177,7 @@ const themeColors = css`
177
177
 
178
178
  --color-error-bg: var(--color-red-1);
179
179
  --color-error-bg-hover: var(--color-red-2);
180
- --color-error-border: var(--color-red-3);
180
+ --color-error-border: var(--color-red-7);
181
181
  --color-error-border-hover: var(--color-red-4);
182
182
  --color-error-hover: var(--color-red-5);
183
183
  --color-error-base: var(--color-red-6);
@@ -216,6 +216,7 @@ const themeColors = css`
216
216
  --bg-base: #ffffff; // The default elevation is the baseline with respect to all other layers.
217
217
  --bg-sunken: #f1f1f1; // Sunken is the lowest elevation available.
218
218
  --bg-raised: #fafafa; // Cards, elements, inputs
219
+ --bg-raised-light: #fafafa; // Always light
219
220
  --bg-overlay: #f2f2f2; // Overlay is the highest elevation available. Use for hovers
220
221
  --bg-modal-overlay: #f2f2f2c2; // Overlay is the highest elevation available. Use for hovers
221
222
 
@@ -949,6 +950,7 @@ export const styles = css`
949
950
  ${loadProgressBar}
950
951
  ${logo}
951
952
  ${markdown}
953
+ ${mermaid}
952
954
  ${menu}
953
955
  ${mobileMenu}
954
956
  ${modal}
@@ -3,15 +3,14 @@ import { useLocation } from 'react-router-dom';
3
3
 
4
4
  import type { Dispatch, SetStateAction } from 'react';
5
5
 
6
+ import useModalScrollLock from '@theme/hooks/useModalScrollLock';
7
+
6
8
  export function useMobileMenu(initialState = false): [boolean, Dispatch<SetStateAction<boolean>>] {
7
9
  const location = useLocation();
8
10
  const [isOpen, setIsOpen] = useState(initialState);
9
11
 
10
12
  useEffect(() => setIsOpen(false), [location.pathname, location.hash]);
11
- useEffect(() => {
12
- if (isOpen) document.body.classList.add('overflow-hidden');
13
- else document.body.classList.remove('overflow-hidden');
14
- }, [isOpen]);
13
+ useModalScrollLock(isOpen);
15
14
 
16
15
  return [isOpen, setIsOpen];
17
16
  }
@@ -0,0 +1,12 @@
1
+ import { useEffect } from 'react';
2
+
3
+ export default function useModalScrollLock(isOpen: boolean) {
4
+ useEffect(() => {
5
+ if (isOpen) document.body.classList.add('overflow-hidden');
6
+ else document.body.classList.remove('overflow-hidden');
7
+ }, [isOpen]);
8
+
9
+ return () => {
10
+ document.body.classList.remove('overflow-hidden');
11
+ };
12
+ }
@@ -98,13 +98,8 @@ function Icon({ type, className }: AlertIconProps) {
98
98
  export const AlertIcon = styled(Icon).attrs(() => ({
99
99
  'data-component-name': 'icons/AlertIcon/AlertIcon',
100
100
  }))`
101
- position: absolute;
102
- left: var(--admonition-padding-horizontal);
103
- top: 50%;
104
- transform: translateY(-50%);
105
101
  width: var(--admonition-icon-size);
106
102
  height: var(--admonition-icon-size);
107
- margin-right: var(--admonition-padding-horizontal);
108
103
  flex-shrink: 0;
109
104
 
110
105
  fill: ${({ type }) => `var(--admonition-${type}-icon-color)`};
@@ -1,4 +1,4 @@
1
- import { CatalogFilterConfig } from "@theme/config";
1
+ import { CatalogFilterConfig, ScorecardStatus } from '@theme';
2
2
 
3
3
  export type FilteredCatalog = {
4
4
  groups: { title: string; items: CatalogItem[] }[];
@@ -33,5 +33,11 @@ export type CatalogItem = {
33
33
  description?: string;
34
34
  image?: string;
35
35
  docsLink?: string;
36
+
37
+ scorecardStatus?: ScorecardStatus;
38
+ scorecardLevel?: string;
39
+ scoreCardSlug?: string;
40
+ tags?: unknown[];
41
+
36
42
  [k: string]: unknown;
37
43
  };
@@ -3,12 +3,12 @@ import { findAll } from 'highlight-words-core';
3
3
 
4
4
  export const HighlightContext = React.createContext<string[]>([]);
5
5
 
6
- export function Highlight(props: { children: React.ReactChildren | string }): JSX.Element {
6
+ export function Highlight(props: { children: React.ReactChildren | string }): JSX.Element | null {
7
7
  const { children } = props;
8
8
  const searchWords = React.useContext(HighlightContext);
9
9
 
10
10
  if (!searchWords.length) {
11
- return <>children</> || null;
11
+ return children ? <>{children}</> : null;
12
12
  }
13
13
 
14
14
  function highlight(str: string, childIdx: number = 0) {
@@ -63,16 +63,16 @@ export const darkMode = css`
63
63
  --color-purple-9: #cda8f0;
64
64
  --color-purple-10: #ebd7fa;
65
65
 
66
- --color-magneta-1: #291321;
67
- --color-magneta-2: #40162f;
68
- --color-magneta-3: #551c3b;
69
- --color-magneta-4: #75204f;
70
- --color-magneta-5: #a02669;
71
- --color-magneta-6: #cb2b83;
72
- --color-magneta-7: #e0529c;
73
- --color-magneta-8: #f37fb7;
74
- --color-magneta-9: #f8a8cc;
75
- --color-magneta-10: #fad2e3;
66
+ --color-magenta-1: #291321;
67
+ --color-magenta-2: #40162f;
68
+ --color-magenta-3: #551c3b;
69
+ --color-magenta-4: #75204f;
70
+ --color-magenta-5: #a02669;
71
+ --color-magenta-6: #cb2b83;
72
+ --color-magenta-7: #e0529c;
73
+ --color-magenta-8: #f37fb7;
74
+ --color-magenta-9: #f8a8cc;
75
+ --color-magenta-10: #fad2e3;
76
76
 
77
77
  --color-cyan-1: #112123;
78
78
  --color-cyan-2: #113536;
@@ -129,35 +129,35 @@ export const darkMode = css`
129
129
  --color-primary-text: #d6dfff;
130
130
  --color-primary-text-active: #ebf0ff;
131
131
 
132
- --color-success-bg: var(--color-green-1);
133
- --color-success-bg-hover: var(--color-green-2);
134
- --color-success-border: var(--color-green-3);
135
- --color-success-border-hover: var(--color-green-4);
136
- --color-success-hover: var(--color-green-7);
137
- --color-success-base: var(--color-green-6);
138
- --color-success-active: var(--color-green-5);
139
- --color-success-text-hover: var(--color-green-8);
140
- --color-success-text: var(--color-green-9);
141
- --color-success-text-active: var(--color-green-10);
142
-
143
- --color-warning-bg: var(--color-gold-1);
132
+ --color-success-bg: var(--color-cyan-3);
133
+ --color-success-bg-hover: var(--color-cyan-2);
134
+ --color-success-border: var(--color-cyan-3);
135
+ --color-success-border-hover: var(--color-cyan-4);
136
+ --color-success-hover: var(--color-cyan-7);
137
+ --color-success-base: var(--color-cyan-6);
138
+ --color-success-active: var(--color-cyan-7);
139
+ --color-success-text-hover: var(--color-cyan-8);
140
+ --color-success-text: var(--color-cyan-9);
141
+ --color-success-text-active: var(--color-cyan-10);
142
+
143
+ --color-warning-bg: var(--color-gold-3);
144
144
  --color-warning-bg-hover: var(--color-gold-2);
145
145
  --color-warning-border: var(--color-gold-3);
146
146
  --color-warning-border-hover: var(--color-gold-4);
147
147
  --color-warning-hover: var(--color-gold-7);
148
148
  --color-warning-base: var(--color-gold-6);
149
- --color-warning-active: var(--color-gold-5);
149
+ --color-warning-active: var(--color-gold-7);
150
150
  --color-warning-text-hover: var(--color-gold-8);
151
151
  --color-warning-text: var(--color-gold-9);
152
152
  --color-warning-text-active: var(--color-gold-10);
153
153
 
154
- --color-error-bg: var(--color-red-1);
154
+ --color-error-bg: var(--color-red-3);
155
155
  --color-error-bg-hover: var(--color-red-2);
156
156
  --color-error-border: var(--color-red-3);
157
157
  --color-error-border-hover: var(--color-red-4);
158
158
  --color-error-hover: var(--color-red-7);
159
159
  --color-error-base: var(--color-red-6);
160
- --color-error-active: var(--color-red-5);
160
+ --color-error-active: var(--color-red-7);
161
161
  --color-error-text-hover: var(--color-red-8);
162
162
  --color-error-text: var(--color-red-9);
163
163
  --color-error-text-active: var(--color-red-10);
@@ -168,7 +168,7 @@ export const darkMode = css`
168
168
  --color-info-border-hover: var(--color-blue-4);
169
169
  --color-info-hover: var(--color-blue-7);
170
170
  --color-info-base: var(--color-blue-6);
171
- --color-info-active: var(--color-blue-5);
171
+ --color-info-active: var(--color-blue-7);
172
172
  --color-info-text-hover: var(--color-blue-8);
173
173
  --color-info-text: var(--color-blue-9);
174
174
  --color-info-text-active: var(--color-blue-10);
@@ -1,2 +1,4 @@
1
- export const getCssColorVariable = (color: string | undefined, defaultValue = 'inherit'): string =>
2
- color?.startsWith('--') ? `var(${color})` : color || defaultValue;
1
+ export const getCssColorVariable = (
2
+ color: string | undefined,
3
+ defaultValue = 'currentColor',
4
+ ): string => (color?.startsWith('--') ? `var(${color})` : color || defaultValue);