@seqera/docusaurus-theme-seqera 1.0.6 → 1.0.7
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/lib/index.js +1 -0
- package/lib/languages/prism-nextflow.d.ts +1 -0
- package/lib/languages/prism-nextflow.js +24 -0
- package/lib/main-styles.css +66 -42
- package/lib/styles/admonition-alerts.css +5 -1
- package/lib/styles/api.css +16 -0
- package/lib/styles/buttons.css +55 -0
- package/lib/styles/other-overrides.css +0 -5
- package/lib/styles/typography.css +25 -6
- package/lib/theme/Admonition/Layout/styles.module.css +2 -1
- package/lib/theme/BlogLayout/index.js +1 -1
- package/lib/theme/BlogPostItem/index.js +3 -1
- package/lib/theme/BlogPostPaginator/index.js +1 -1
- package/lib/theme/BlogSidebar/Content/index.js +3 -1
- package/lib/theme/BlogSidebar/Desktop/index.js +40 -4
- package/lib/theme/BlogSidebar/Desktop/rss.svg +1 -0
- package/lib/theme/BlogSidebar/Desktop/styles.module.css +11 -1
- package/lib/theme/BlogSidebar/Mobile/index.js +3 -3
- package/lib/theme/DocItem/Layout/index.js +2 -2
- package/lib/theme/DocItem/Layout/styles.module.css +1 -1
- package/lib/theme/DocRoot/Layout/Main/styles.module.css +4 -1
- package/lib/theme/DocSidebar/Desktop/Content/VersionSwitcher/index.js +11 -0
- package/lib/theme/DocSidebar/Desktop/Content/index.js +6 -2
- package/lib/theme/DocSidebar/Desktop/index.js +9 -1
- package/lib/theme/DocSidebarItem/Html/index.js +1 -1
- package/lib/theme/DocSidebarItem/Link/index.js +1 -1
- package/lib/theme/DocSidebarItem/index.js +3 -3
- package/lib/theme/Footer/Layout/index.js +1 -1
- package/lib/theme/Homepage/index.d.ts +1 -4
- package/lib/theme/Homepage/index.js +37 -43
- package/lib/theme/Navbar/Content/index.js +6 -12
- package/lib/theme/Navbar/Layout/index.js +1 -1
- package/lib/theme/Navbar/MobileSidebar/PrimaryMenu/index.js +3 -3
- package/lib/theme/Navbar/Submenu/SubmenuLinks.js +1 -2
- package/lib/theme/NavbarItem/DefaultNavbarItem/Desktop/index.js +1 -1
- package/lib/theme/NotFound/Content/index.js +1 -3
- package/lib/theme/TOCItems/index.js +1 -1
- package/lib/theme/prism-include-languages.js +13 -2
- package/package.json +1 -2
- package/package.json.bak +66 -0
- package/src/index.ts +1 -0
- package/src/languages/prism-nextflow.js +24 -0
- package/src/main-styles.css +66 -42
- package/src/styles/admonition-alerts.css +5 -1
- package/src/styles/api.css +16 -0
- package/src/styles/buttons.css +55 -0
- package/src/styles/other-overrides.css +0 -5
- package/src/styles/typography.css +25 -6
- package/src/theme/Admonition/Layout/styles.module.css +2 -1
- package/src/theme/BlogLayout/index.tsx +1 -1
- package/src/theme/BlogPostItem/index.tsx +1 -1
- package/src/theme/BlogPostPaginator/index.tsx +1 -1
- package/src/theme/BlogSidebar/Content/index.tsx +1 -1
- package/src/theme/BlogSidebar/Desktop/index.tsx +41 -8
- package/src/theme/BlogSidebar/Desktop/rss.svg +1 -0
- package/src/theme/BlogSidebar/Desktop/styles.module.css +11 -1
- package/src/theme/BlogSidebar/Mobile/index.tsx +3 -3
- package/src/theme/DocItem/Layout/index.tsx +2 -2
- package/src/theme/DocItem/Layout/styles.module.css +1 -1
- package/src/theme/DocRoot/Layout/Main/styles.module.css +4 -1
- package/src/theme/DocSidebar/Desktop/Content/VersionSwitcher/index.tsx +10 -0
- package/src/theme/DocSidebar/Desktop/Content/index.tsx +2 -2
- package/src/theme/DocSidebar/Desktop/index.tsx +8 -1
- package/src/theme/DocSidebarItem/Html/index.tsx +1 -1
- package/src/theme/DocSidebarItem/Link/index.tsx +1 -1
- package/src/theme/DocSidebarItem/index.tsx +3 -3
- package/src/theme/Footer/Layout/index.tsx +1 -1
- package/src/theme/Homepage/index.tsx +37 -47
- package/src/theme/Navbar/Content/index.tsx +6 -12
- package/src/theme/Navbar/Layout/index.tsx +1 -1
- package/src/theme/Navbar/MobileSidebar/PrimaryMenu/index.tsx +3 -3
- package/src/theme/Navbar/Submenu/SubmenuLinks.tsx +1 -2
- package/src/theme/NavbarItem/DefaultNavbarItem/Desktop/index.tsx +1 -1
- package/src/theme/NotFound/Content/index.tsx +1 -1
- package/src/theme/TOCItems/index.tsx +1 -1
- package/src/theme/prism-include-languages.ts +14 -2
package/src/main-styles.css
CHANGED
|
@@ -1,44 +1,11 @@
|
|
|
1
1
|
@import 'tailwindcss';
|
|
2
|
-
@plugin "daisyui";
|
|
3
2
|
@config "../tailwind.config.js";
|
|
4
3
|
|
|
5
4
|
/* Dark mode variant */
|
|
6
5
|
@custom-variant dark (&:is([data-theme="dark"] *));
|
|
7
6
|
|
|
8
|
-
/* Daisy UI settings */
|
|
9
|
-
@plugin "daisyui/theme" {
|
|
10
|
-
name: 'light';
|
|
11
|
-
default: true;
|
|
12
|
-
--color-primary: var(--color-nextflow-800);
|
|
13
|
-
--color-secondary: var(--color-nextflow-500);
|
|
14
|
-
--color-accent: #f59e0b;
|
|
15
|
-
--color-neutral: #3d4451;
|
|
16
|
-
--color-base-100: #ffffff;
|
|
17
|
-
--color-base-200: #f2f2f2;
|
|
18
|
-
--color-base-300: #e5e6e6;
|
|
19
|
-
--color-info: #3abff8;
|
|
20
|
-
--color-success: #36d399;
|
|
21
|
-
--color-warning: #fbbd23;
|
|
22
|
-
--color-error: #f87272;
|
|
23
|
-
}
|
|
24
|
-
|
|
25
|
-
@plugin "daisyui/theme" {
|
|
26
|
-
name: 'dark';
|
|
27
|
-
--color-primary: var(--color-nextflow-500);
|
|
28
|
-
--color-secondary: var(--color-nextflow-500);
|
|
29
|
-
--color-accent: #1fb2a5;
|
|
30
|
-
--color-neutral: #191d24;
|
|
31
|
-
--color-base-100: rgb(28, 28, 30);
|
|
32
|
-
--color-base-200: #242933;
|
|
33
|
-
--color-base-300: #20252e;
|
|
34
|
-
--color-info: #3abff8;
|
|
35
|
-
--color-success: #36d399;
|
|
36
|
-
--color-warning: #fbbd23;
|
|
37
|
-
--color-error: #f87272;
|
|
38
|
-
}
|
|
39
|
-
|
|
40
7
|
/***
|
|
41
|
-
Infima is Docusaurus's built in CSS framework.
|
|
8
|
+
Infima is Docusaurus's built in CSS framework.
|
|
42
9
|
|
|
43
10
|
- We have removed Infima using CSS Cascade Layers (https://docusaurus.io/docs/api/plugins/@docusaurus/plugin-css-cascade-layers),
|
|
44
11
|
- We do this so we can more seamless integrate Tailwind 4
|
|
@@ -47,14 +14,22 @@ Infima is Docusaurus's built in CSS framework.
|
|
|
47
14
|
**/
|
|
48
15
|
:root {
|
|
49
16
|
/* the primary color is set to nextflow-900 because it's the most web accessible */
|
|
50
|
-
--ifm-color-primary: var(--color-nextflow-900);
|
|
17
|
+
/* --ifm-color-primary: var(--color-nextflow-900);
|
|
51
18
|
--ifm-color-primary-dark: var(--color-nextflow-700);
|
|
52
19
|
--ifm-color-primary-darker: var(--color-nextflow-800);
|
|
53
20
|
--ifm-color-primary-darkest: var(--color-nextflow-900);
|
|
54
21
|
--ifm-color-primary-light: var(--color-nextflow-400);
|
|
55
22
|
--ifm-color-primary-lighter: var(--color-nextflow-300);
|
|
56
23
|
--ifm-color-primary-lightest: var(--color-nextflow-200);
|
|
57
|
-
--ifm-badge-background-color: var(--color-nextflow-300);
|
|
24
|
+
--ifm-badge-background-color: var(--color-nextflow-300); */
|
|
25
|
+
--ifm-color-primary: var(--color-blu-600);
|
|
26
|
+
--ifm-color-primary-dark: var(--color-blu-700);
|
|
27
|
+
--ifm-color-primary-darker: var(--color-blu-800);
|
|
28
|
+
--ifm-color-primary-darkest: var(--color-blu-900);
|
|
29
|
+
--ifm-color-primary-light: var(--color-blu-400);
|
|
30
|
+
--ifm-color-primary-lighter: var(--color-blu-300);
|
|
31
|
+
--ifm-color-primary-lightest: var(--color-blu-200);
|
|
32
|
+
--ifm-badge-background-color: var(--color-blu-300);
|
|
58
33
|
--ifm-navbar-sidebar-width: 100%;
|
|
59
34
|
--ifm-code-font-size: 95%;
|
|
60
35
|
--docusaurus-highlighted-code-line-bg: rgba(0, 0, 0, 0.1);
|
|
@@ -65,13 +40,11 @@ Infima is Docusaurus's built in CSS framework.
|
|
|
65
40
|
|
|
66
41
|
--ifm-color-info: var(--color-multiqc-600);
|
|
67
42
|
|
|
68
|
-
|
|
69
43
|
/* remove box shadow variables */
|
|
70
44
|
--ifm-global-shadow-lw: none;
|
|
71
45
|
--ifm-global-shadow-md: none;
|
|
72
46
|
--ifm-global-shadow-tl: none;
|
|
73
47
|
|
|
74
|
-
|
|
75
48
|
/* Nextflow (green) colors */
|
|
76
49
|
--color-nextflow-100: #e2f7f3;
|
|
77
50
|
--color-nextflow-200: #b6ece2;
|
|
@@ -177,6 +150,20 @@ Infima is Docusaurus's built in CSS framework.
|
|
|
177
150
|
--color-blu-900: #2c3999;
|
|
178
151
|
--color-blu-1000: #1e2768;
|
|
179
152
|
--color-blu: #4256e7;
|
|
153
|
+
|
|
154
|
+
/* --color-primary: var(--color-nextflow-800);
|
|
155
|
+
--color-secondary: var(--color-nextflow-500); */
|
|
156
|
+
--color-primary: var(--color-blu-800);
|
|
157
|
+
--color-secondary: var(--color-blu-600);
|
|
158
|
+
--color-accent: var(--color-blu-200);
|
|
159
|
+
--color-neutral: #3d4451;
|
|
160
|
+
--color-base-100: #ffffff;
|
|
161
|
+
--color-base-200: #f2f2f2;
|
|
162
|
+
--color-base-300: #e5e6e6;
|
|
163
|
+
--color-info: var(--color-wave-600);
|
|
164
|
+
--color-success: var(--color-nextflow-500);
|
|
165
|
+
--color-warning: var(--color-multiqc-600);
|
|
166
|
+
--color-error: var(--color-fusion-600);
|
|
180
167
|
}
|
|
181
168
|
|
|
182
169
|
/* Dark Mode Support */
|
|
@@ -189,19 +176,43 @@ Infima is Docusaurus's built in CSS framework.
|
|
|
189
176
|
/* Dark mode */
|
|
190
177
|
[data-theme='dark'] {
|
|
191
178
|
color-scheme: dark;
|
|
192
|
-
--ifm-color-primary: var(--color-nextflow-300);
|
|
179
|
+
/* --ifm-color-primary: var(--color-nextflow-300);
|
|
193
180
|
--ifm-color-primary-dark: var(--color-nextflow-400);
|
|
194
181
|
--ifm-color-primary-darker: var(--color-nextflow-500);
|
|
195
182
|
--ifm-color-primary-darkest: var(--color-nextflow-600);
|
|
196
183
|
--ifm-color-primary-light: var(--color-nextflow-300);
|
|
197
184
|
--ifm-color-primary-lighter: var(--color-nextflow-200);
|
|
198
|
-
--ifm-color-primary-lightest: var(--color-nextflow-100);
|
|
185
|
+
--ifm-color-primary-lightest: var(--color-nextflow-100); */
|
|
186
|
+
--ifm-color-primary: var(--color-blu-300);
|
|
187
|
+
--ifm-color-primary-dark: var(--color-blu-400);
|
|
188
|
+
--ifm-color-primary-darker: var(--color-blu-500);
|
|
189
|
+
--ifm-color-primary-darkest: var(--color-blu-600);
|
|
190
|
+
--ifm-color-primary-light: var(--color-blu-300);
|
|
191
|
+
--ifm-color-primary-lighter: var(--color-blu-200);
|
|
192
|
+
--ifm-color-primary-lightest: var(--color-blu-100);
|
|
199
193
|
--ifm-navbar-background-color: rgb(28, 28, 30);
|
|
200
194
|
--docusaurus-highlighted-code-line-bg: rgba(0, 0, 0, 0.3);
|
|
201
195
|
--ifm-code-color: var(--color-red-400);
|
|
202
196
|
--ifm-color-content: #e3e3e3;
|
|
203
197
|
--ifm-font-color-base: #e3e3e3;
|
|
204
198
|
--ifm-heading-color: #e3e3e3;
|
|
199
|
+
|
|
200
|
+
/* dark mode overrides */
|
|
201
|
+
/* --color-primary: var(--color-nextflow-500);
|
|
202
|
+
--color-secondary: var(--color-nextflow-500); */
|
|
203
|
+
--color-primary: var(--color-blu-500);
|
|
204
|
+
--color-secondary: var(--color-blu-500);
|
|
205
|
+
--color-accent: var(--color-blu-300);
|
|
206
|
+
/* --color-accent: #1fb2a5; */
|
|
207
|
+
--color-neutral: #191d24;
|
|
208
|
+
--color-base-100: rgb(28, 28, 30);
|
|
209
|
+
--color-base-200: #242933;
|
|
210
|
+
--color-base-300: #20252e;
|
|
211
|
+
|
|
212
|
+
--color-info: var(--color-wave-300);
|
|
213
|
+
--color-success: var(--color-nextflow-300);
|
|
214
|
+
--color-warning: var(--color-multiqc-300);
|
|
215
|
+
--color-error: var(--color-fusion-300);
|
|
205
216
|
}
|
|
206
217
|
|
|
207
218
|
/* Seqera Tailwind */
|
|
@@ -350,7 +361,7 @@ Infima is Docusaurus's built in CSS framework.
|
|
|
350
361
|
--color-product-900: #362c5d;
|
|
351
362
|
--color-product-1000: #251e3f;
|
|
352
363
|
|
|
353
|
-
/* Seqera "blue"
|
|
364
|
+
/* Seqera "blue" Colors */
|
|
354
365
|
--color-blu-100: #e8ebfc;
|
|
355
366
|
--color-blu-200: #c6ccf8;
|
|
356
367
|
--color-blu-300: #a1abf3;
|
|
@@ -363,6 +374,20 @@ Infima is Docusaurus's built in CSS framework.
|
|
|
363
374
|
--color-blu-1000: #1e2768;
|
|
364
375
|
--color-blu: #4256e7;
|
|
365
376
|
|
|
377
|
+
/* --color-primary: var(--color-nextflow-800);
|
|
378
|
+
--color-secondary: var(--color-nextflow-500); */
|
|
379
|
+
--color-primary: var(--color-blu-600);
|
|
380
|
+
--color-secondary: var(--color-blu-500);
|
|
381
|
+
--color-accent: #f59e0b;
|
|
382
|
+
--color-neutral: #3d4451;
|
|
383
|
+
--color-base-100: #ffffff;
|
|
384
|
+
--color-base-200: #f2f2f2;
|
|
385
|
+
--color-base-300: #e5e6e6;
|
|
386
|
+
--color-info: #3abff8;
|
|
387
|
+
--color-success: #36d399;
|
|
388
|
+
--color-warning: #fbbd23;
|
|
389
|
+
--color-error: #f87272;
|
|
390
|
+
|
|
366
391
|
/* Border Radius */
|
|
367
392
|
--radius-sm: 4px;
|
|
368
393
|
--radius-md: 8px;
|
|
@@ -443,7 +468,6 @@ Infima is Docusaurus's built in CSS framework.
|
|
|
443
468
|
border-radius: var(--ifm-badge-border-radius);
|
|
444
469
|
padding: var(--ifm-badge-padding-vertical) var(--ifm-badge-padding-horizontal);
|
|
445
470
|
}
|
|
446
|
-
|
|
447
471
|
.badge--primary {
|
|
448
472
|
background-color: var(--color-wave-600);
|
|
449
473
|
border-color: var(--color-wave-600);
|
|
@@ -4,12 +4,15 @@
|
|
|
4
4
|
flex-direction: column;
|
|
5
5
|
justify-content: flex-start;
|
|
6
6
|
align-items: flex-start;
|
|
7
|
+
padding: 1rem;
|
|
8
|
+
font-size: 1rem;
|
|
9
|
+
line-height: 1.6;
|
|
7
10
|
}
|
|
8
11
|
|
|
9
12
|
.theme-admonition {
|
|
10
13
|
margin: .75rem 0;
|
|
11
14
|
p {
|
|
12
|
-
line-height: 1.
|
|
15
|
+
line-height: 1.6;
|
|
13
16
|
margin-top: 0;
|
|
14
17
|
}
|
|
15
18
|
}
|
|
@@ -53,6 +56,7 @@
|
|
|
53
56
|
border-color: var(--color-multiqc-300);
|
|
54
57
|
}
|
|
55
58
|
[data-theme='dark'] {
|
|
59
|
+
.alert--warning,
|
|
56
60
|
.theme-admonition-warning {
|
|
57
61
|
background-color: var(--color-multiqc-1000);
|
|
58
62
|
border-color: var(--color-multiqc-600);
|
package/src/styles/api.css
CHANGED
|
@@ -27,6 +27,9 @@ Platform API style overrides
|
|
|
27
27
|
.openapi__method-endpoint-path {
|
|
28
28
|
margin-left: 0.5rem;
|
|
29
29
|
}
|
|
30
|
+
.openapi-tabs__schema-item {
|
|
31
|
+
border: 1px solid var(--color-gray-300);
|
|
32
|
+
}
|
|
30
33
|
|
|
31
34
|
pre,
|
|
32
35
|
summary,
|
|
@@ -140,4 +143,17 @@ Platform API style overrides
|
|
|
140
143
|
background: rgba(255, 255, 255, 0.4);
|
|
141
144
|
border-color: rgba(255, 255, 255, 0.7);
|
|
142
145
|
}
|
|
146
|
+
table,
|
|
147
|
+
code:not(pre code) {
|
|
148
|
+
background: none;
|
|
149
|
+
}
|
|
150
|
+
.alert--info {
|
|
151
|
+
background: none;
|
|
152
|
+
}
|
|
153
|
+
.openapi-tabs__schema-item {
|
|
154
|
+
border: 1px solid white;
|
|
155
|
+
}
|
|
156
|
+
.openapi-tabs__schema-item.active {
|
|
157
|
+
border: 1px solid var(--color-nextflow-200);
|
|
158
|
+
}
|
|
143
159
|
}
|
|
@@ -0,0 +1,55 @@
|
|
|
1
|
+
.btn {
|
|
2
|
+
border-radius: 4px;
|
|
3
|
+
transition: all 0.3s;
|
|
4
|
+
/* background: var(--color-nextflow-500);
|
|
5
|
+
border: 1px solid var(--color-nextflow-700); */
|
|
6
|
+
color: white;
|
|
7
|
+
background: var(--color-blu);
|
|
8
|
+
border: 1px solid var(--color-blu);
|
|
9
|
+
font-weight: 500;
|
|
10
|
+
font-size: 0.9rem;
|
|
11
|
+
text-align: center;
|
|
12
|
+
padding: 0.3rem 1rem;
|
|
13
|
+
width: auto;
|
|
14
|
+
text-decoration: none !important;
|
|
15
|
+
&:hover {
|
|
16
|
+
/* background: var(--color-nextflow-600); */
|
|
17
|
+
background: var(--color-blu-700);
|
|
18
|
+
}
|
|
19
|
+
}
|
|
20
|
+
|
|
21
|
+
.btn-outline {
|
|
22
|
+
background: transparent;
|
|
23
|
+
border: 1px solid black;
|
|
24
|
+
color: black;
|
|
25
|
+
&:hover {
|
|
26
|
+
background: black;
|
|
27
|
+
color: white;
|
|
28
|
+
}
|
|
29
|
+
}
|
|
30
|
+
|
|
31
|
+
[data-theme='dark'] {
|
|
32
|
+
.btn {
|
|
33
|
+
color: black;
|
|
34
|
+
background: var(--color-blu-400);
|
|
35
|
+
border: 1px solid var(--color-blu-400);
|
|
36
|
+
&:hover {
|
|
37
|
+
/* background: var(--color-nextflow-600); */
|
|
38
|
+
background: var(--color-blu-700);
|
|
39
|
+
border: 1px solid var(--color-blu-700);
|
|
40
|
+
}
|
|
41
|
+
}
|
|
42
|
+
.btn-outline {
|
|
43
|
+
/* background: var(--color-nextflow-900);
|
|
44
|
+
border: 1px solid var(--color-nextflow-900); */
|
|
45
|
+
background: var(--color-gray-900);
|
|
46
|
+
border: 1px solid var(--color-gray-100);
|
|
47
|
+
color: white;
|
|
48
|
+
&:hover {
|
|
49
|
+
/* background: var(--color-nextflow-800); */
|
|
50
|
+
color: black;
|
|
51
|
+
background: var(--color-gray-400);
|
|
52
|
+
border: 1px solid var(--color-gray-500);
|
|
53
|
+
}
|
|
54
|
+
}
|
|
55
|
+
}
|
|
@@ -18,7 +18,8 @@ h6 {
|
|
|
18
18
|
border-bottom: 4px solid transparent;
|
|
19
19
|
}
|
|
20
20
|
.navbar__link--active {
|
|
21
|
-
border-bottom: 4px solid var(--color-nextflow-600);
|
|
21
|
+
/* border-bottom: 4px solid var(--color-nextflow-600); */
|
|
22
|
+
border-bottom: 4px solid var(--color-blu-600);
|
|
22
23
|
padding-bottom: 0.1rem;
|
|
23
24
|
}
|
|
24
25
|
|
|
@@ -27,7 +28,7 @@ h6 {
|
|
|
27
28
|
}
|
|
28
29
|
|
|
29
30
|
/***
|
|
30
|
-
main prose styles
|
|
31
|
+
main prose styles
|
|
31
32
|
|
|
32
33
|
.prose__wrapper for main prose layout styles
|
|
33
34
|
.theme-doc-markdown specifies open-api pages
|
|
@@ -36,13 +37,13 @@ main prose styles
|
|
|
36
37
|
|
|
37
38
|
.prose__wrapper,
|
|
38
39
|
.theme-doc-markdown {
|
|
40
|
+
max-width: 100%;
|
|
39
41
|
/* H1 */
|
|
40
42
|
h1 {
|
|
41
43
|
font-size: 2rem;
|
|
42
44
|
line-height: 1.5;
|
|
43
45
|
margin-top: 0;
|
|
44
46
|
margin-bottom: 1.5rem;
|
|
45
|
-
|
|
46
47
|
@media (min-width: 997px) {
|
|
47
48
|
font-size: 2.45rem;
|
|
48
49
|
}
|
|
@@ -57,6 +58,7 @@ main prose styles
|
|
|
57
58
|
|
|
58
59
|
@media (min-width: 997px) {
|
|
59
60
|
font-size: 2.25rem;
|
|
61
|
+
line-height: 1.3;
|
|
60
62
|
}
|
|
61
63
|
}
|
|
62
64
|
|
|
@@ -195,6 +197,7 @@ main prose styles
|
|
|
195
197
|
border: 1px solid var(--color-gray-400);
|
|
196
198
|
filter: none;
|
|
197
199
|
box-shadow: none;
|
|
200
|
+
word-break: break-all;
|
|
198
201
|
&::before,
|
|
199
202
|
&::after {
|
|
200
203
|
content: none;
|
|
@@ -349,7 +352,7 @@ main prose styles
|
|
|
349
352
|
background: #0000004d;
|
|
350
353
|
}
|
|
351
354
|
table {
|
|
352
|
-
background:
|
|
355
|
+
background: transparent;
|
|
353
356
|
}
|
|
354
357
|
|
|
355
358
|
table tr:nth-child(2n) {
|
|
@@ -367,7 +370,23 @@ main prose styles
|
|
|
367
370
|
|
|
368
371
|
a {
|
|
369
372
|
&:hover {
|
|
370
|
-
color: var(--color-primary)!important;
|
|
373
|
+
color: var(--color-primary) !important;
|
|
374
|
+
}
|
|
375
|
+
}
|
|
376
|
+
}
|
|
377
|
+
|
|
378
|
+
.blog-wrapper {
|
|
379
|
+
h1,
|
|
380
|
+
h2,
|
|
381
|
+
h3,
|
|
382
|
+
h4,
|
|
383
|
+
h5,
|
|
384
|
+
h6 {
|
|
385
|
+
margin-top: 1rem;
|
|
386
|
+
margin-bottom: 0;
|
|
387
|
+
|
|
388
|
+
a {
|
|
389
|
+
text-decoration: none !important;
|
|
371
390
|
}
|
|
372
391
|
}
|
|
373
|
-
}
|
|
392
|
+
}
|
|
@@ -10,11 +10,12 @@
|
|
|
10
10
|
flex-direction: row;
|
|
11
11
|
justify-content: items-center;
|
|
12
12
|
align-items: center;
|
|
13
|
+
font-size: .875rem;
|
|
13
14
|
}
|
|
14
15
|
|
|
15
16
|
/* Heading alone without content (does not handle fragment content) */
|
|
16
17
|
.admonitionHeading:not(:last-child) {
|
|
17
|
-
margin-bottom:
|
|
18
|
+
margin-bottom: .75rem;
|
|
18
19
|
}
|
|
19
20
|
|
|
20
21
|
.admonitionHeading code {
|
|
@@ -17,7 +17,7 @@ export default function BlogLayout(props: Props): ReactNode {
|
|
|
17
17
|
<div className="row">
|
|
18
18
|
<BlogSidebar sidebar={sidebar} />
|
|
19
19
|
<main
|
|
20
|
-
className={clsx('prose__wrapper col
|
|
20
|
+
className={clsx('w-full prose__wrapper col max-w-3xl mx-auto', {
|
|
21
21
|
'col--7': hasSidebar,
|
|
22
22
|
'col--9 col--offset-1': !hasSidebar,
|
|
23
23
|
})}>
|
|
@@ -12,7 +12,7 @@ import type {Props} from '@theme/BlogPostItem';
|
|
|
12
12
|
// apply a bottom margin in list view
|
|
13
13
|
function useContainerClassName() {
|
|
14
14
|
const {isBlogPostPage} = useBlogPost();
|
|
15
|
-
return !isBlogPostPage ? 'margin-bottom--xl' : undefined;
|
|
15
|
+
return !isBlogPostPage ? 'margin-bottom--xl border-b border-black/20 dark:border-white/20 pb-4' : undefined;
|
|
16
16
|
}
|
|
17
17
|
|
|
18
18
|
export default function BlogPostItem({children, className}: Props): ReactNode {
|
|
@@ -10,7 +10,7 @@ export default function BlogPostPaginator(props: Props): ReactNode {
|
|
|
10
10
|
|
|
11
11
|
return (
|
|
12
12
|
<nav
|
|
13
|
-
className="pagination-nav docusaurus-mt-lg"
|
|
13
|
+
className="pagination-nav docusaurus-mt-lg pb-6"
|
|
14
14
|
aria-label={translate({
|
|
15
15
|
id: 'theme.blog.post.paginator.navAriaLabel',
|
|
16
16
|
message: 'Blog post page navigation',
|
|
@@ -1,5 +1,3 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
1
|
import React, {memo} from 'react';
|
|
4
2
|
import clsx from 'clsx';
|
|
5
3
|
import {translate} from '@docusaurus/Translate';
|
|
@@ -7,11 +5,13 @@ import {
|
|
|
7
5
|
useVisibleBlogSidebarItems,
|
|
8
6
|
BlogSidebarItemList,
|
|
9
7
|
} from '@docusaurus/plugin-content-blog/client';
|
|
8
|
+
import { useLocation } from '@docusaurus/router';
|
|
10
9
|
import BlogSidebarContent from '@theme/BlogSidebar/Content';
|
|
11
10
|
import type {Props as BlogSidebarContentProps} from '@theme/BlogSidebar/Content';
|
|
12
11
|
import type {Props} from '@theme/BlogSidebar/Desktop';
|
|
13
|
-
|
|
12
|
+
import RssIcon from './rss.svg';
|
|
14
13
|
import styles from './styles.module.css';
|
|
14
|
+
import Link from '@docusaurus/Link';
|
|
15
15
|
|
|
16
16
|
const ListComponent: BlogSidebarContentProps['ListComponent'] = ({items}) => {
|
|
17
17
|
return (
|
|
@@ -27,20 +27,53 @@ const ListComponent: BlogSidebarContentProps['ListComponent'] = ({items}) => {
|
|
|
27
27
|
|
|
28
28
|
function BlogSidebarDesktop({sidebar}: Props) {
|
|
29
29
|
const items = useVisibleBlogSidebarItems(sidebar.items);
|
|
30
|
+
|
|
31
|
+
// Figure out if we're looking at a product tag or changelog entry
|
|
32
|
+
const location = useLocation();
|
|
33
|
+
const pathMatch = location.pathname.match(/\/changelog\/(?:tags\/)?([^\/]+)(?:\/v[\d.]+.*)?/);
|
|
34
|
+
const product = pathMatch ? pathMatch[1] : null;
|
|
35
|
+
|
|
36
|
+
// Map product names to their correct documentation paths
|
|
37
|
+
const getProductPath = (product: string | null): string => {
|
|
38
|
+
if (!product || product === 'tags' || product === 'page') return '/';
|
|
39
|
+
const mapping: Record<string, string> = {
|
|
40
|
+
'seqera-cloud': '/platform-cloud',
|
|
41
|
+
'seqera-enterprise': '/platform-enterprise'
|
|
42
|
+
};
|
|
43
|
+
return mapping[product] || `/${product}`;
|
|
44
|
+
};
|
|
45
|
+
|
|
46
|
+
// Filter the sidebar for just this product
|
|
47
|
+
const filteredItems = product
|
|
48
|
+
? items.filter(item => item.permalink.includes(`/changelog/${product}/`))
|
|
49
|
+
: items;
|
|
50
|
+
|
|
51
|
+
|
|
30
52
|
return (
|
|
31
|
-
<aside
|
|
53
|
+
<aside
|
|
54
|
+
className={`${styles.sidebarWrapper} col col--3 border-r border-black/20 dark:border-white/20`}>
|
|
32
55
|
<nav
|
|
33
|
-
className={clsx(styles.sidebar, 'thin-scrollbar
|
|
56
|
+
className={clsx(styles.sidebar, 'thin-scrollbar ')}
|
|
34
57
|
aria-label={translate({
|
|
35
58
|
id: 'theme.blog.sidebar.navAriaLabel',
|
|
36
59
|
message: 'Blog recent posts navigation',
|
|
37
60
|
description: 'The ARIA label for recent posts in the blog sidebar',
|
|
38
61
|
})}>
|
|
39
|
-
<div className={clsx(styles.sidebarItemTitle, 'margin-bottom--md')}>
|
|
62
|
+
<div className={clsx(styles.sidebarItemTitle, 'margin-bottom--md w-full flex justify-between items-center pr-4')}>
|
|
40
63
|
{sidebar.title}
|
|
64
|
+
|
|
65
|
+
<Link
|
|
66
|
+
href="/changelog/rss.xml"
|
|
67
|
+
target="_blank"
|
|
68
|
+
rel="noopener noreferrer"
|
|
69
|
+
title="Subscribe to RSS"
|
|
70
|
+
className={styles.RssIconLink}>
|
|
71
|
+
<RssIcon />
|
|
72
|
+
</Link>
|
|
41
73
|
</div>
|
|
74
|
+
|
|
42
75
|
<BlogSidebarContent
|
|
43
|
-
items={
|
|
76
|
+
items={filteredItems}
|
|
44
77
|
ListComponent={ListComponent}
|
|
45
78
|
yearGroupHeadingClassName={styles.yearGroupHeading}
|
|
46
79
|
/>
|
|
@@ -49,4 +82,4 @@ function BlogSidebarDesktop({sidebar}: Props) {
|
|
|
49
82
|
);
|
|
50
83
|
}
|
|
51
84
|
|
|
52
|
-
export default memo(BlogSidebarDesktop);
|
|
85
|
+
export default memo(BlogSidebarDesktop);
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
<svg xmlns="http://www.w3.org/2000/svg" width="1em" height="1em" viewBox="0 0 24 24"><path fill="currentColor" d="M5 3h14a2 2 0 0 1 2 2v14a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2m2.5 12A1.5 1.5 0 0 0 6 16.5A1.5 1.5 0 0 0 7.5 18A1.5 1.5 0 0 0 9 16.5A1.5 1.5 0 0 0 7.5 15M6 10v2a6 6 0 0 1 6 6h2a8 8 0 0 0-8-8m0-4v2a10 10 0 0 1 10 10h2A12 12 0 0 0 6 6"/></svg>
|
|
@@ -9,10 +9,20 @@
|
|
|
9
9
|
}
|
|
10
10
|
|
|
11
11
|
.sidebarItemTitle {
|
|
12
|
-
font-size:
|
|
12
|
+
font-size: 1.8rem;
|
|
13
13
|
font-weight: var(--ifm-font-weight-bold);
|
|
14
14
|
}
|
|
15
15
|
|
|
16
|
+
.RssIconLink {
|
|
17
|
+
display: inline-block;
|
|
18
|
+
height: 24px;
|
|
19
|
+
& svg {
|
|
20
|
+
color: var(--color-multiqc-600);
|
|
21
|
+
width: 24px;
|
|
22
|
+
height: 24px;
|
|
23
|
+
}
|
|
24
|
+
}
|
|
25
|
+
|
|
16
26
|
.sidebarItemList {
|
|
17
27
|
font-size: 0.9rem;
|
|
18
28
|
}
|
|
@@ -16,9 +16,9 @@ const ListComponent: BlogSidebarContentProps['ListComponent'] = ({items}) => {
|
|
|
16
16
|
return (
|
|
17
17
|
<BlogSidebarItemList
|
|
18
18
|
items={items}
|
|
19
|
-
ulClassName="menu__list"
|
|
20
|
-
liClassName="menu__list-item"
|
|
21
|
-
linkClassName="menu__link"
|
|
19
|
+
ulClassName="menu__list mx-6"
|
|
20
|
+
liClassName="menu__list-item mx-6"
|
|
21
|
+
linkClassName="menu__link mx-6"
|
|
22
22
|
linkActiveClassName="menu__link--active"
|
|
23
23
|
/>
|
|
24
24
|
);
|
|
@@ -49,8 +49,8 @@ export default function DocItemLayout({children}: Props): ReactNode {
|
|
|
49
49
|
<div className={clsx('prose__wrapper mx-auto lg:pr-8', !docTOC.hidden && styles.docItemCol)}>
|
|
50
50
|
<ContentVisibility metadata={metadata} />
|
|
51
51
|
<DocVersionBanner />
|
|
52
|
-
<div className={styles.docItemContainer}>
|
|
53
|
-
<article className="max-w-3xl md:pr-4">
|
|
52
|
+
<div className={clsx(styles.docItemContainer, 'w-full')}>
|
|
53
|
+
<article className="max-w-3xl mx-auto md:pr-4">
|
|
54
54
|
<DocBreadcrumbs />
|
|
55
55
|
<DocVersionBadge />
|
|
56
56
|
{docTOC.mobile}
|
|
@@ -4,6 +4,7 @@ import {
|
|
|
4
4
|
useDocsVersion,
|
|
5
5
|
useDocsPreferredVersion,
|
|
6
6
|
} from "@docusaurus/plugin-content-docs/client";
|
|
7
|
+
import { usePluginData } from "@docusaurus/useGlobalData";
|
|
7
8
|
import { useLocation } from "@docusaurus/router";
|
|
8
9
|
import Link from "@docusaurus/Link";
|
|
9
10
|
|
|
@@ -15,6 +16,15 @@ interface VersionSwitcherProps {
|
|
|
15
16
|
const VersionSwitcher: React.FC<VersionSwitcherProps> = ({ isOpen, setIsOpen }) => {
|
|
16
17
|
const dropdownRef = useRef<HTMLDivElement>(null);
|
|
17
18
|
const location = useLocation();
|
|
19
|
+
|
|
20
|
+
// check if the plugin exists first
|
|
21
|
+
let pluginData;
|
|
22
|
+
try {
|
|
23
|
+
pluginData = usePluginData('docusaurus-plugin-content-docs', 'platform-enterprise');
|
|
24
|
+
} catch (e) {
|
|
25
|
+
return null;
|
|
26
|
+
}
|
|
27
|
+
|
|
18
28
|
const { savePreferredVersionName } = useDocsPreferredVersion("platform-enterprise");
|
|
19
29
|
const versions = useVersions("platform-enterprise");
|
|
20
30
|
const currentVersion = useDocsVersion();
|
|
@@ -43,12 +43,12 @@ export default function DocSidebarDesktopContent({
|
|
|
43
43
|
description: 'The ARIA label for the sidebar navigation',
|
|
44
44
|
})}
|
|
45
45
|
className={clsx(
|
|
46
|
-
'menu thin-scrollbar w-full block font-normal mt-2',
|
|
46
|
+
'menu thin-scrollbar w-full block font-normal mt-2 text-[.9rem]',
|
|
47
47
|
styles.menu,
|
|
48
48
|
showAnnouncementBar && styles.menuWithAnnouncementBar,
|
|
49
49
|
className,
|
|
50
50
|
)}>
|
|
51
|
-
<ul className={clsx(ThemeClassNames.docs.docSidebarMenu, 'menu__list')}>
|
|
51
|
+
<ul className={clsx(ThemeClassNames.docs.docSidebarMenu, 'menu__list px-2')}>
|
|
52
52
|
<DocSidebarItems items={sidebar} activePath={path} level={1} />
|
|
53
53
|
</ul>
|
|
54
54
|
</nav>
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import React, { useState } from 'react';
|
|
2
2
|
import clsx from 'clsx';
|
|
3
3
|
import {useThemeConfig} from '@docusaurus/theme-common';
|
|
4
|
+
import {useLocation} from '@docusaurus/router';
|
|
4
5
|
import Logo from '@theme/Logo';
|
|
5
6
|
import CollapseButton from '@theme/DocSidebar/Desktop/CollapseButton';
|
|
6
7
|
import Content from '@theme/DocSidebar/Desktop/Content';
|
|
@@ -16,8 +17,12 @@ function DocSidebarDesktop({path, sidebar, onCollapse, isHidden}: Props) {
|
|
|
16
17
|
},
|
|
17
18
|
} = useThemeConfig();
|
|
18
19
|
|
|
20
|
+
const location = useLocation();
|
|
19
21
|
const [isOpen, setIsOpen] = useState(false);
|
|
20
22
|
|
|
23
|
+
// Check if URL contains /platform-enterprise
|
|
24
|
+
const showVersionSwitcher = location.pathname.includes('/platform-enterprise');
|
|
25
|
+
|
|
21
26
|
return (
|
|
22
27
|
<div
|
|
23
28
|
className={clsx(
|
|
@@ -27,7 +32,9 @@ function DocSidebarDesktop({path, sidebar, onCollapse, isHidden}: Props) {
|
|
|
27
32
|
'h-full relative w-full'
|
|
28
33
|
)}>
|
|
29
34
|
{hideOnScroll && <Logo tabIndex={-1} className={styles.sidebarLogo} />}
|
|
30
|
-
|
|
35
|
+
{showVersionSwitcher && (
|
|
36
|
+
<VersionSwitcher isOpen={isOpen} setIsOpen={setIsOpen} />
|
|
37
|
+
)}
|
|
31
38
|
<Content path={path} sidebar={sidebar} />
|
|
32
39
|
{hideable && <div className="absolute right-0 top-[3.75rem]"><CollapseButton onClick={onCollapse} /></div>}
|
|
33
40
|
</div>
|