@seqera/docusaurus-theme-seqera 1.0.0

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 (327) hide show
  1. package/README.md +26 -0
  2. package/package.json +66 -0
  3. package/src/getSwizzleConfig.ts +433 -0
  4. package/src/index.ts +154 -0
  5. package/src/inlineScripts.ts +95 -0
  6. package/src/inlineSvgSprites.ts +7 -0
  7. package/src/main-styles.css +322 -0
  8. package/src/nprogress.css +36 -0
  9. package/src/nprogress.ts +27 -0
  10. package/src/options.ts +503 -0
  11. package/src/prism-include-languages.ts +6 -0
  12. package/src/styles/api.css +42 -0
  13. package/src/styles/typography.css +342 -0
  14. package/src/theme/Admonition/Icon/Danger.tsx +15 -0
  15. package/src/theme/Admonition/Icon/Info.tsx +15 -0
  16. package/src/theme/Admonition/Icon/Note.tsx +15 -0
  17. package/src/theme/Admonition/Icon/Tip.tsx +15 -0
  18. package/src/theme/Admonition/Icon/Warning.tsx +15 -0
  19. package/src/theme/Admonition/Layout/index.tsx +53 -0
  20. package/src/theme/Admonition/Layout/styles.module.css +39 -0
  21. package/src/theme/Admonition/Type/Caution.tsx +34 -0
  22. package/src/theme/Admonition/Type/Danger.tsx +32 -0
  23. package/src/theme/Admonition/Type/Info.tsx +32 -0
  24. package/src/theme/Admonition/Type/Note.tsx +32 -0
  25. package/src/theme/Admonition/Type/Tip.tsx +32 -0
  26. package/src/theme/Admonition/Type/Warning.tsx +32 -0
  27. package/src/theme/Admonition/Types.tsx +33 -0
  28. package/src/theme/Admonition/index.tsx +23 -0
  29. package/src/theme/AdmonitionVersioned/AddedInVersion.tsx +14 -0
  30. package/src/theme/AdmonitionVersioned/AdmonitionVersioned.tsx +66 -0
  31. package/src/theme/AdmonitionVersioned/ChangedInVersion.tsx +14 -0
  32. package/src/theme/AdmonitionVersioned/DeprecatedInVersion.tsx +15 -0
  33. package/src/theme/AdmonitionVersioned/getStableVersion.ts +30 -0
  34. package/src/theme/AdmonitionVersioned/index.ts +1 -0
  35. package/src/theme/AdmonitionVersioned/stableVersions.ts +119 -0
  36. package/src/theme/AnnouncementBar/CloseButton/index.tsx +24 -0
  37. package/src/theme/AnnouncementBar/CloseButton/styles.module.css +6 -0
  38. package/src/theme/AnnouncementBar/Content/index.tsx +21 -0
  39. package/src/theme/AnnouncementBar/Content/styles.module.css +12 -0
  40. package/src/theme/AnnouncementBar/index.tsx +37 -0
  41. package/src/theme/AnnouncementBar/styles.module.css +57 -0
  42. package/src/theme/BackToTopButton/index.tsx +30 -0
  43. package/src/theme/BackToTopButton/styles.module.css +39 -0
  44. package/src/theme/Blog/Components/Author/Socials/index.tsx +75 -0
  45. package/src/theme/Blog/Components/Author/Socials/styles.module.css +34 -0
  46. package/src/theme/Blog/Components/Author/index.tsx +98 -0
  47. package/src/theme/Blog/Components/Author/styles.module.css +69 -0
  48. package/src/theme/Blog/Pages/BlogAuthorsListPage/index.tsx +57 -0
  49. package/src/theme/Blog/Pages/BlogAuthorsListPage/styles.module.css +6 -0
  50. package/src/theme/Blog/Pages/BlogAuthorsPostsPage/index.tsx +77 -0
  51. package/src/theme/BlogArchivePage/index.tsx +102 -0
  52. package/src/theme/BlogLayout/index.tsx +31 -0
  53. package/src/theme/BlogListPage/StructuredData/index.tsx +17 -0
  54. package/src/theme/BlogListPage/index.tsx +57 -0
  55. package/src/theme/BlogListPaginator/index.tsx +47 -0
  56. package/src/theme/BlogPostItem/Container/index.tsx +11 -0
  57. package/src/theme/BlogPostItem/Content/index.tsx +23 -0
  58. package/src/theme/BlogPostItem/Footer/ReadMoreLink/index.tsx +39 -0
  59. package/src/theme/BlogPostItem/Footer/index.tsx +85 -0
  60. package/src/theme/BlogPostItem/Header/Authors/index.tsx +49 -0
  61. package/src/theme/BlogPostItem/Header/Authors/styles.module.css +15 -0
  62. package/src/theme/BlogPostItem/Header/Info/index.tsx +77 -0
  63. package/src/theme/BlogPostItem/Header/Info/styles.module.css +5 -0
  64. package/src/theme/BlogPostItem/Header/Title/index.tsx +20 -0
  65. package/src/theme/BlogPostItem/Header/Title/styles.module.css +14 -0
  66. package/src/theme/BlogPostItem/Header/index.tsx +16 -0
  67. package/src/theme/BlogPostItem/index.tsx +27 -0
  68. package/src/theme/BlogPostItems/index.tsx +25 -0
  69. package/src/theme/BlogPostPage/Metadata/index.tsx +39 -0
  70. package/src/theme/BlogPostPage/StructuredData/index.tsx +16 -0
  71. package/src/theme/BlogPostPage/index.tsx +74 -0
  72. package/src/theme/BlogPostPaginator/index.tsx +46 -0
  73. package/src/theme/BlogSidebar/Content/index.tsx +52 -0
  74. package/src/theme/BlogSidebar/Desktop/index.tsx +52 -0
  75. package/src/theme/BlogSidebar/Desktop/styles.module.css +46 -0
  76. package/src/theme/BlogSidebar/Mobile/index.tsx +47 -0
  77. package/src/theme/BlogSidebar/Mobile/styles.module.css +5 -0
  78. package/src/theme/BlogSidebar/index.tsx +19 -0
  79. package/src/theme/BlogTagsListPage/index.tsx +33 -0
  80. package/src/theme/BlogTagsPostsPage/index.tsx +68 -0
  81. package/src/theme/CodeBlock/Buttons/Button/index.tsx +14 -0
  82. package/src/theme/CodeBlock/Buttons/CopyButton/index.tsx +82 -0
  83. package/src/theme/CodeBlock/Buttons/CopyButton/styles.module.css +42 -0
  84. package/src/theme/CodeBlock/Buttons/WordWrapButton/index.tsx +40 -0
  85. package/src/theme/CodeBlock/Buttons/WordWrapButton/styles.module.css +10 -0
  86. package/src/theme/CodeBlock/Buttons/index.tsx +27 -0
  87. package/src/theme/CodeBlock/Buttons/styles.module.css +32 -0
  88. package/src/theme/CodeBlock/Container/index.tsx +27 -0
  89. package/src/theme/CodeBlock/Container/styles.module.css +9 -0
  90. package/src/theme/CodeBlock/Content/Element.tsx +24 -0
  91. package/src/theme/CodeBlock/Content/String.tsx +37 -0
  92. package/src/theme/CodeBlock/Content/index.tsx +79 -0
  93. package/src/theme/CodeBlock/Content/styles.module.css +30 -0
  94. package/src/theme/CodeBlock/Layout/index.tsx +29 -0
  95. package/src/theme/CodeBlock/Layout/styles.module.css +22 -0
  96. package/src/theme/CodeBlock/Line/Token/index.tsx +13 -0
  97. package/src/theme/CodeBlock/Line/index.tsx +61 -0
  98. package/src/theme/CodeBlock/Line/styles.module.css +47 -0
  99. package/src/theme/CodeBlock/Title/index.tsx +10 -0
  100. package/src/theme/CodeBlock/index.tsx +40 -0
  101. package/src/theme/CodeInline/index.tsx +11 -0
  102. package/src/theme/ColorModeToggle/index.tsx +140 -0
  103. package/src/theme/ColorModeToggle/styles.module.css +35 -0
  104. package/src/theme/ContentVisibility/Draft/index.tsx +22 -0
  105. package/src/theme/ContentVisibility/Unlisted/index.tsx +37 -0
  106. package/src/theme/ContentVisibility/index.tsx +20 -0
  107. package/src/theme/Details/index.tsx +21 -0
  108. package/src/theme/Details/styles.module.css +8 -0
  109. package/src/theme/DocBreadcrumbs/Items/Home/index.tsx +29 -0
  110. package/src/theme/DocBreadcrumbs/Items/Home/styles.module.css +9 -0
  111. package/src/theme/DocBreadcrumbs/StructuredData/index.tsx +19 -0
  112. package/src/theme/DocBreadcrumbs/index.tsx +98 -0
  113. package/src/theme/DocBreadcrumbs/styles.module.css +14 -0
  114. package/src/theme/DocCard/index.tsx +133 -0
  115. package/src/theme/DocCard/styles.module.css +29 -0
  116. package/src/theme/DocCardList/index.tsx +43 -0
  117. package/src/theme/DocCardList/styles.module.css +9 -0
  118. package/src/theme/DocCategoryGeneratedIndexPage/index.tsx +68 -0
  119. package/src/theme/DocCategoryGeneratedIndexPage/styles.module.css +13 -0
  120. package/src/theme/DocItem/Content/index.tsx +43 -0
  121. package/src/theme/DocItem/Footer/index.tsx +51 -0
  122. package/src/theme/DocItem/Layout/index.tsx +66 -0
  123. package/src/theme/DocItem/Layout/styles.module.css +12 -0
  124. package/src/theme/DocItem/Metadata/index.tsx +17 -0
  125. package/src/theme/DocItem/Paginator/index.tsx +20 -0
  126. package/src/theme/DocItem/TOC/Desktop/index.tsx +19 -0
  127. package/src/theme/DocItem/TOC/Mobile/index.tsx +22 -0
  128. package/src/theme/DocItem/TOC/Mobile/styles.module.css +26 -0
  129. package/src/theme/DocItem/index.tsx +23 -0
  130. package/src/theme/DocPaginator/index.tsx +46 -0
  131. package/src/theme/DocRoot/Layout/Main/index.tsx +31 -0
  132. package/src/theme/DocRoot/Layout/Main/styles.module.css +23 -0
  133. package/src/theme/DocRoot/Layout/Sidebar/ExpandButton/index.tsx +36 -0
  134. package/src/theme/DocRoot/Layout/Sidebar/ExpandButton/styles.module.css +29 -0
  135. package/src/theme/DocRoot/Layout/Sidebar/index.tsx +79 -0
  136. package/src/theme/DocRoot/Layout/Sidebar/styles.module.css +34 -0
  137. package/src/theme/DocRoot/Layout/index.tsx +32 -0
  138. package/src/theme/DocRoot/Layout/styles.module.css +11 -0
  139. package/src/theme/DocRoot/index.tsx +29 -0
  140. package/src/theme/DocSidebar/Desktop/CollapseButton/index.tsx +34 -0
  141. package/src/theme/DocSidebar/Desktop/CollapseButton/styles.module.css +42 -0
  142. package/src/theme/DocSidebar/Desktop/Content/index.tsx +56 -0
  143. package/src/theme/DocSidebar/Desktop/Content/styles.module.css +18 -0
  144. package/src/theme/DocSidebar/Desktop/index.tsx +36 -0
  145. package/src/theme/DocSidebar/Desktop/styles.module.css +39 -0
  146. package/src/theme/DocSidebar/Mobile/index.tsx +49 -0
  147. package/src/theme/DocSidebar/index.tsx +25 -0
  148. package/src/theme/DocSidebarItem/Category/index.tsx +309 -0
  149. package/src/theme/DocSidebarItem/Category/styles.module.css +35 -0
  150. package/src/theme/DocSidebarItem/Html/index.tsx +30 -0
  151. package/src/theme/DocSidebarItem/Html/styles.module.css +8 -0
  152. package/src/theme/DocSidebarItem/Link/index.tsx +62 -0
  153. package/src/theme/DocSidebarItem/Link/styles.module.css +13 -0
  154. package/src/theme/DocSidebarItem/index.tsx +19 -0
  155. package/src/theme/DocSidebarItems/index.tsx +24 -0
  156. package/src/theme/DocTagDocListPage/index.tsx +113 -0
  157. package/src/theme/DocTagsListPage/index.tsx +52 -0
  158. package/src/theme/DocVersionBadge/index.tsx +29 -0
  159. package/src/theme/DocVersionBanner/index.tsx +171 -0
  160. package/src/theme/DocVersionRoot/index.tsx +46 -0
  161. package/src/theme/DocsRoot/index.tsx +17 -0
  162. package/src/theme/EditMetaRow/index.tsx +31 -0
  163. package/src/theme/EditMetaRow/styles.module.css +19 -0
  164. package/src/theme/EditThisPage/index.tsx +21 -0
  165. package/src/theme/ErrorPageContent.tsx +38 -0
  166. package/src/theme/Footer/Copyright/index.tsx +15 -0
  167. package/src/theme/Footer/Layout/index.tsx +42 -0
  168. package/src/theme/Footer/LinkItem/index.tsx +31 -0
  169. package/src/theme/Footer/Links/MultiColumn/index.tsx +53 -0
  170. package/src/theme/Footer/Links/Simple/index.tsx +38 -0
  171. package/src/theme/Footer/Links/index.tsx +16 -0
  172. package/src/theme/Footer/Logo/index.tsx +41 -0
  173. package/src/theme/Footer/Logo/styles.module.css +11 -0
  174. package/src/theme/Footer/index.tsx +28 -0
  175. package/src/theme/Heading/index.tsx +50 -0
  176. package/src/theme/Heading/styles.module.css +17 -0
  177. package/src/theme/Homepage/index.tsx +178 -0
  178. package/src/theme/Icon/AI/index.tsx +21 -0
  179. package/src/theme/Icon/AWS/index.tsx +22 -0
  180. package/src/theme/Icon/Arrow/index.tsx +15 -0
  181. package/src/theme/Icon/Azure/index.tsx +28 -0
  182. package/src/theme/Icon/Changelog/index.tsx +26 -0
  183. package/src/theme/Icon/ChatBubble/index.tsx +29 -0
  184. package/src/theme/Icon/ChatBubbles/index.tsx +42 -0
  185. package/src/theme/Icon/Close/index.tsx +21 -0
  186. package/src/theme/Icon/Cog/index.tsx +45 -0
  187. package/src/theme/Icon/Copy/index.tsx +15 -0
  188. package/src/theme/Icon/DarkMode/index.tsx +15 -0
  189. package/src/theme/Icon/Edit/index.tsx +24 -0
  190. package/src/theme/Icon/Edit/styles.module.css +6 -0
  191. package/src/theme/Icon/Envelope/index.tsx +33 -0
  192. package/src/theme/Icon/ExternalLink/index.tsx +30 -0
  193. package/src/theme/Icon/ExternalLink/styles.module.css +5 -0
  194. package/src/theme/Icon/Fusion/index.tsx +32 -0
  195. package/src/theme/Icon/GoogleCloud/index.tsx +56 -0
  196. package/src/theme/Icon/Home/index.tsx +15 -0
  197. package/src/theme/Icon/Language/index.tsx +24 -0
  198. package/src/theme/Icon/LightMode/index.tsx +15 -0
  199. package/src/theme/Icon/MCP/index.tsx +84 -0
  200. package/src/theme/Icon/Menu/index.tsx +29 -0
  201. package/src/theme/Icon/MultiQC/index.tsx +25 -0
  202. package/src/theme/Icon/Nextflow/index.tsx +25 -0
  203. package/src/theme/Icon/QuestionMark/index.tsx +46 -0
  204. package/src/theme/Icon/SeqeraCloud/index.tsx +35 -0
  205. package/src/theme/Icon/SeqeraEnterprise/index.tsx +372 -0
  206. package/src/theme/Icon/SeqeraLogo/index.tsx +22 -0
  207. package/src/theme/Icon/ServiceStatus/index.tsx +101 -0
  208. package/src/theme/Icon/Sidebar/index.tsx +8 -0
  209. package/src/theme/Icon/Socials/Bluesky/index.tsx +23 -0
  210. package/src/theme/Icon/Socials/Bluesky/styles.module.css +9 -0
  211. package/src/theme/Icon/Socials/Default/index.tsx +28 -0
  212. package/src/theme/Icon/Socials/Email/index.tsx +23 -0
  213. package/src/theme/Icon/Socials/GitHub/index.tsx +24 -0
  214. package/src/theme/Icon/Socials/GitHub/styles.module.css +9 -0
  215. package/src/theme/Icon/Socials/Instagram/index.tsx +23 -0
  216. package/src/theme/Icon/Socials/Instagram/styles.module.css +9 -0
  217. package/src/theme/Icon/Socials/LinkedIn/index.tsx +23 -0
  218. package/src/theme/Icon/Socials/LinkedIn/styles.module.css +9 -0
  219. package/src/theme/Icon/Socials/Mastodon/index.tsx +40 -0
  220. package/src/theme/Icon/Socials/StackOverflow/index.tsx +25 -0
  221. package/src/theme/Icon/Socials/Threads/index.tsx +25 -0
  222. package/src/theme/Icon/Socials/Threads/styles.module.css +9 -0
  223. package/src/theme/Icon/Socials/Twitch/index.tsx +32 -0
  224. package/src/theme/Icon/Socials/Twitter/index.tsx +22 -0
  225. package/src/theme/Icon/Socials/X/index.tsx +24 -0
  226. package/src/theme/Icon/Socials/X/styles.module.css +9 -0
  227. package/src/theme/Icon/Socials/YouTube/index.tsx +22 -0
  228. package/src/theme/Icon/Success/index.tsx +15 -0
  229. package/src/theme/Icon/SystemColorMode/index.tsx +15 -0
  230. package/src/theme/Icon/Wave/index.tsx +32 -0
  231. package/src/theme/Icon/WordWrap/index.tsx +15 -0
  232. package/src/theme/LastUpdated/index.tsx +91 -0
  233. package/src/theme/Layout/Provider/index.tsx +26 -0
  234. package/src/theme/Layout/index.tsx +59 -0
  235. package/src/theme/Layout/styles.module.css +23 -0
  236. package/src/theme/Logo/index.tsx +78 -0
  237. package/src/theme/MDXComponents/A/index.tsx +16 -0
  238. package/src/theme/MDXComponents/Button/index.tsx +43 -0
  239. package/src/theme/MDXComponents/Code.tsx +26 -0
  240. package/src/theme/MDXComponents/Details.tsx +26 -0
  241. package/src/theme/MDXComponents/Heading.tsx +9 -0
  242. package/src/theme/MDXComponents/Img/index.tsx +23 -0
  243. package/src/theme/MDXComponents/Img/styles.module.css +5 -0
  244. package/src/theme/MDXComponents/Li.tsx +17 -0
  245. package/src/theme/MDXComponents/Pre.tsx +10 -0
  246. package/src/theme/MDXComponents/Ul/index.tsx +25 -0
  247. package/src/theme/MDXComponents/Ul/styles.module.css +9 -0
  248. package/src/theme/MDXComponents/index.tsx +47 -0
  249. package/src/theme/MDXContent/index.tsx +10 -0
  250. package/src/theme/MDXPage/index.tsx +87 -0
  251. package/src/theme/MDXPage/styles.module.css +5 -0
  252. package/src/theme/Mermaid.tsx +11 -0
  253. package/src/theme/Navbar/ColorModeToggle/index.tsx +29 -0
  254. package/src/theme/Navbar/ColorModeToggle/styles.module.css +5 -0
  255. package/src/theme/Navbar/Content/index.tsx +152 -0
  256. package/src/theme/Navbar/Content/styles.module.css +19 -0
  257. package/src/theme/Navbar/Layout/index.tsx +59 -0
  258. package/src/theme/Navbar/Layout/styles.module.css +9 -0
  259. package/src/theme/Navbar/Logo/index.tsx +14 -0
  260. package/src/theme/Navbar/MobileSidebar/Header/index.tsx +37 -0
  261. package/src/theme/Navbar/MobileSidebar/Layout/index.tsx +72 -0
  262. package/src/theme/Navbar/MobileSidebar/Layout/styles.module.css +11 -0
  263. package/src/theme/Navbar/MobileSidebar/PrimaryMenu/index.tsx +90 -0
  264. package/src/theme/Navbar/MobileSidebar/SecondaryMenu/index.tsx +34 -0
  265. package/src/theme/Navbar/MobileSidebar/Toggle/index.tsx +25 -0
  266. package/src/theme/Navbar/MobileSidebar/index.tsx +28 -0
  267. package/src/theme/Navbar/Search/index.tsx +15 -0
  268. package/src/theme/Navbar/Search/styles.module.css +22 -0
  269. package/src/theme/Navbar/Submenu/SubmenuLinks.tsx +136 -0
  270. package/src/theme/Navbar/Submenu/index.tsx +84 -0
  271. package/src/theme/Navbar/Submenu/styles.module.css +82 -0
  272. package/src/theme/Navbar/index.tsx +13 -0
  273. package/src/theme/NavbarItem/ComponentTypes.tsx +27 -0
  274. package/src/theme/NavbarItem/DefaultNavbarItem/Desktop/index.tsx +29 -0
  275. package/src/theme/NavbarItem/DefaultNavbarItem/Mobile/index.tsx +18 -0
  276. package/src/theme/NavbarItem/DefaultNavbarItem/index.tsx +23 -0
  277. package/src/theme/NavbarItem/DocNavbarItem.tsx +38 -0
  278. package/src/theme/NavbarItem/DocSidebarNavbarItem.tsx +33 -0
  279. package/src/theme/NavbarItem/DocsVersionDropdownNavbarItem.tsx +189 -0
  280. package/src/theme/NavbarItem/DocsVersionNavbarItem.tsx +22 -0
  281. package/src/theme/NavbarItem/DropdownNavbarItem/Desktop/index.tsx +81 -0
  282. package/src/theme/NavbarItem/DropdownNavbarItem/Mobile/index.tsx +161 -0
  283. package/src/theme/NavbarItem/DropdownNavbarItem/Mobile/styles.module.css +5 -0
  284. package/src/theme/NavbarItem/DropdownNavbarItem/index.tsx +14 -0
  285. package/src/theme/NavbarItem/HtmlNavbarItem.tsx +27 -0
  286. package/src/theme/NavbarItem/LocaleDropdownNavbarItem/index.tsx +128 -0
  287. package/src/theme/NavbarItem/LocaleDropdownNavbarItem/styles.module.css +6 -0
  288. package/src/theme/NavbarItem/NavbarNavLink.tsx +69 -0
  289. package/src/theme/NavbarItem/SearchNavbarItem.tsx +21 -0
  290. package/src/theme/NavbarItem/index.tsx +23 -0
  291. package/src/theme/NotFound/Content/index.tsx +34 -0
  292. package/src/theme/NotFound/index.tsx +22 -0
  293. package/src/theme/PaginatorNavLink/index.tsx +21 -0
  294. package/src/theme/SearchBar.tsx +8 -0
  295. package/src/theme/SearchMetadata/index.tsx +38 -0
  296. package/src/theme/SiteMetadata/index.tsx +153 -0
  297. package/src/theme/SkipToContent/index.tsx +9 -0
  298. package/src/theme/SkipToContent/styles.module.css +16 -0
  299. package/src/theme/TOC/index.tsx +26 -0
  300. package/src/theme/TOC/styles.module.css +23 -0
  301. package/src/theme/TOCCollapsible/CollapseButton/index.tsx +30 -0
  302. package/src/theme/TOCCollapsible/CollapseButton/styles.module.css +27 -0
  303. package/src/theme/TOCCollapsible/index.tsx +42 -0
  304. package/src/theme/TOCCollapsible/styles.module.css +26 -0
  305. package/src/theme/TOCInline/index.tsx +25 -0
  306. package/src/theme/TOCInline/styles.module.css +7 -0
  307. package/src/theme/TOCItems/Tree.tsx +40 -0
  308. package/src/theme/TOCItems/index.tsx +56 -0
  309. package/src/theme/TabItem/index.tsx +22 -0
  310. package/src/theme/TabItem/styles.module.css +5 -0
  311. package/src/theme/Tabs/index.tsx +167 -0
  312. package/src/theme/Tabs/styles.module.css +9 -0
  313. package/src/theme/Tag/index.tsx +30 -0
  314. package/src/theme/Tag/styles.module.css +65 -0
  315. package/src/theme/TagsListByLetter/index.tsx +40 -0
  316. package/src/theme/TagsListByLetter/styles.module.css +6 -0
  317. package/src/theme/TagsListInline/index.tsx +30 -0
  318. package/src/theme/TagsListInline/styles.module.css +10 -0
  319. package/src/theme/ThemeProvider/TitleFormatter/index.tsx +22 -0
  320. package/src/theme/ThemeProvider/index.tsx +9 -0
  321. package/src/theme/ThemedImage/index.tsx +21 -0
  322. package/src/theme/ThemedImage/styles.module.css +13 -0
  323. package/src/theme/pages/Home/index.tsx +19 -0
  324. package/src/theme/prism-include-languages.ts +39 -0
  325. package/src/theme-seqera.d.ts +2277 -0
  326. package/src/translations.ts +240 -0
  327. package/tailwind.config.js +7 -0
@@ -0,0 +1,32 @@
1
+
2
+
3
+ import React, {type ReactNode} from 'react';
4
+ import clsx from 'clsx';
5
+ import Translate from '@docusaurus/Translate';
6
+ import type {Props} from '@theme/Admonition/Type/Warning';
7
+ import AdmonitionLayout from '@theme/Admonition/Layout';
8
+ import IconWarning from '@theme/Admonition/Icon/Warning';
9
+
10
+ const infimaClassName = 'alert alert--warning';
11
+
12
+ const defaultProps = {
13
+ icon: <IconWarning />,
14
+ title: (
15
+ <Translate
16
+ id="theme.admonition.warning"
17
+ description="The default label used for the Warning admonition (:::warning)">
18
+ warning
19
+ </Translate>
20
+ ),
21
+ };
22
+
23
+ export default function AdmonitionTypeWarning(props: Props): ReactNode {
24
+ return (
25
+ <AdmonitionLayout
26
+ {...defaultProps}
27
+ {...props}
28
+ className={clsx(infimaClassName, props.className)}>
29
+ {props.children}
30
+ </AdmonitionLayout>
31
+ );
32
+ }
@@ -0,0 +1,33 @@
1
+
2
+
3
+ import React from 'react';
4
+ import AdmonitionTypeNote from '@theme/Admonition/Type/Note';
5
+ import AdmonitionTypeTip from '@theme/Admonition/Type/Tip';
6
+ import AdmonitionTypeInfo from '@theme/Admonition/Type/Info';
7
+ import AdmonitionTypeWarning from '@theme/Admonition/Type/Warning';
8
+ import AdmonitionTypeDanger from '@theme/Admonition/Type/Danger';
9
+ import AdmonitionTypeCaution from '@theme/Admonition/Type/Caution';
10
+ import type AdmonitionTypes from '@theme/Admonition/Types';
11
+
12
+ const admonitionTypes: typeof AdmonitionTypes = {
13
+ note: AdmonitionTypeNote,
14
+ tip: AdmonitionTypeTip,
15
+ info: AdmonitionTypeInfo,
16
+ warning: AdmonitionTypeWarning,
17
+ danger: AdmonitionTypeDanger,
18
+ };
19
+
20
+ // Undocumented legacy admonition type aliases
21
+ // Provide hardcoded/untranslated retrocompatible label
22
+ // See also https://github.com/facebook/docusaurus/issues/7767
23
+ const admonitionAliases: typeof AdmonitionTypes = {
24
+ secondary: (props) => <AdmonitionTypeNote title="secondary" {...props} />,
25
+ important: (props) => <AdmonitionTypeInfo title="important" {...props} />,
26
+ success: (props) => <AdmonitionTypeTip title="success" {...props} />,
27
+ caution: AdmonitionTypeCaution,
28
+ };
29
+
30
+ export default {
31
+ ...admonitionTypes,
32
+ ...admonitionAliases,
33
+ };
@@ -0,0 +1,23 @@
1
+
2
+
3
+ import React, {type ComponentType, type ReactNode} from 'react';
4
+ import {processAdmonitionProps} from '@docusaurus/theme-common';
5
+ import type {Props} from '@theme/Admonition';
6
+ import AdmonitionTypes from '@theme/Admonition/Types';
7
+
8
+ function getAdmonitionTypeComponent(type: string): ComponentType<Props> {
9
+ const component = AdmonitionTypes[type];
10
+ if (component) {
11
+ return component;
12
+ }
13
+ console.warn(
14
+ `No admonition component found for admonition type "${type}". Using Info as fallback.`,
15
+ );
16
+ return AdmonitionTypes.info!;
17
+ }
18
+
19
+ export default function Admonition(unprocessedProps: Props): ReactNode {
20
+ const props = processAdmonitionProps(unprocessedProps);
21
+ const AdmonitionTypeComponent = getAdmonitionTypeComponent(props.type);
22
+ return <AdmonitionTypeComponent {...props} />;
23
+ }
@@ -0,0 +1,14 @@
1
+ import React from "react";
2
+ import AdmonitionVersioned from "./AdmonitionVersioned";
3
+
4
+ interface Props {
5
+ tool?: "nextflow";
6
+ version?: string;
7
+ children: React.ReactNode;
8
+ }
9
+
10
+ const AddedInVersion: React.FC<Props> = (props) => (
11
+ <AdmonitionVersioned type="added" {...props} />
12
+ );
13
+
14
+ export default AddedInVersion;
@@ -0,0 +1,66 @@
1
+ import React, { ReactNode } from "react";
2
+ import Admonition from "@theme/Admonition";
3
+ import { getDisplayVersion } from "./getStableVersion";
4
+
5
+ type AdmonitionVersionedType = "added" | "changed" | "deprecated";
6
+
7
+ interface AdmonitionVersionedProps {
8
+ type: AdmonitionVersionedType;
9
+ tool?: "nextflow";
10
+ version?: string;
11
+ children: ReactNode;
12
+ }
13
+
14
+ const typeConfig = {
15
+ added: {
16
+ admonitionType: "info" as const,
17
+ prefix: "Added in version",
18
+ },
19
+ changed: {
20
+ admonitionType: "warning" as const,
21
+ prefix: "Changed in version",
22
+ },
23
+ deprecated: {
24
+ admonitionType: "danger" as const,
25
+ prefix: "Deprecated in version",
26
+ },
27
+ };
28
+
29
+ const AdmonitionVersioned: React.FC<AdmonitionVersionedProps> = ({
30
+ type,
31
+ tool = "nextflow",
32
+ version,
33
+ children,
34
+ ...props
35
+ }) => {
36
+ const config = typeConfig[type];
37
+ const displayVersion = getDisplayVersion(tool, version);
38
+ const displayTitle = `${config.prefix} ${displayVersion}`;
39
+
40
+ return (
41
+ <Admonition type={config.admonitionType} title={displayTitle} {...props}>
42
+ {children}
43
+ </Admonition>
44
+ );
45
+ };
46
+
47
+ // Convenience exports
48
+ interface Props {
49
+ tool?: "nextflow";
50
+ version?: string;
51
+ children: React.ReactNode;
52
+ }
53
+
54
+ export const AddedInVersion: React.FC<Props> = (props) => (
55
+ <AdmonitionVersioned type="added" {...props} />
56
+ );
57
+
58
+ export const ChangedInVersion: React.FC<Props> = (props) => (
59
+ <AdmonitionVersioned type="changed" {...props} />
60
+ );
61
+
62
+ export const DeprecatedInVersion: React.FC<Props> = (props) => (
63
+ <AdmonitionVersioned type="deprecated" {...props} />
64
+ );
65
+
66
+ export default AdmonitionVersioned;
@@ -0,0 +1,14 @@
1
+ import React from "react";
2
+ import AdmonitionVersioned from "./AdmonitionVersioned";
3
+
4
+ interface Props {
5
+ tool?: "nextflow";
6
+ version?: string;
7
+ children: React.ReactNode;
8
+ }
9
+
10
+ const ChangedInVersion: React.FC<Props> = (props) => (
11
+ <AdmonitionVersioned type="changed" {...props} />
12
+ );
13
+
14
+ export default ChangedInVersion;
@@ -0,0 +1,15 @@
1
+
2
+ import React from "react";
3
+ import AdmonitionVersioned from "./AdmonitionVersioned";
4
+
5
+ interface Props {
6
+ tool?: "nextflow";
7
+ version?: string;
8
+ children: React.ReactNode;
9
+ }
10
+
11
+ const DeprecatedInVersion: React.FC<Props> = (props) => (
12
+ <AdmonitionVersioned type="deprecated" {...props} />
13
+ );
14
+
15
+ export default DeprecatedInVersion;
@@ -0,0 +1,30 @@
1
+ import { stableVersions } from './stableVersions';
2
+
3
+ type Tool = keyof typeof stableVersions;
4
+
5
+ type Rule = {
6
+ stable: string;
7
+ replaces: string[];
8
+ };
9
+
10
+ export function getDisplayVersion(tool: Tool, version?: string): string {
11
+ const toolRules = stableVersions[tool] as Rule[];
12
+ if (!toolRules || toolRules.length === 0) {
13
+ return version || "unknown";
14
+ }
15
+
16
+ // If version provided, find the first rule that matches the version in replaces
17
+ if (version) {
18
+ for (const rule of toolRules) {
19
+ if (rule.replaces.includes(version)) {
20
+ return rule.stable;
21
+ }
22
+ }
23
+ // If no match found, return the original version
24
+ return version;
25
+ }
26
+
27
+ // If no version provided, return the latest stable (first in the array)
28
+ // Assuming the array is ordered with newest first
29
+ return toolRules[0]!.stable;
30
+ }
@@ -0,0 +1 @@
1
+ export { AddedInVersion, ChangedInVersion, DeprecatedInVersion } from './AdmonitionVersioned';
@@ -0,0 +1,119 @@
1
+ export interface VersionMapping {
2
+ stable: string;
3
+ replaces: string[];
4
+ }
5
+
6
+ export interface StableVersions {
7
+ nextflow: VersionMapping[];
8
+ }
9
+
10
+ export const stableVersions: StableVersions = {
11
+ nextflow: [
12
+ {
13
+ stable: "24.10.0",
14
+ replaces: [
15
+ "24.05.0-edge",
16
+ "24.06.0-edge",
17
+ "24.07.0-edge",
18
+ "24.08.0-edge",
19
+ "24.09.0-edge",
20
+ ],
21
+ },
22
+ {
23
+ stable: "24.04.0",
24
+ replaces: [
25
+ "23.11.0-edge",
26
+ "23.12.0-edge",
27
+ "24.01.0-edge",
28
+ "24.02.0-edge",
29
+ "24.03.0-edge",
30
+ ],
31
+ },
32
+ {
33
+ stable: "23.10.0",
34
+ replaces: [
35
+ "23.05.0-edge",
36
+ "23.06.0-edge",
37
+ "23.07.0-edge",
38
+ "23.08.0-edge",
39
+ "23.09.0-edge",
40
+ ],
41
+ },
42
+ {
43
+ stable: "23.04.0",
44
+ replaces: [
45
+ "22.11.0-edge",
46
+ "22.12.0-edge",
47
+ "23.01.0-edge",
48
+ "23.02.0-edge",
49
+ "23.03.0-edge",
50
+ ],
51
+ },
52
+ ],
53
+ };
54
+
55
+ /**
56
+ * Get the display version, mapping edge versions to their stable equivalents
57
+ */
58
+ export function getDisplayVersion(
59
+ tool: keyof StableVersions,
60
+ version?: string
61
+ ): string {
62
+ if (!version) {
63
+ return "latest";
64
+ }
65
+
66
+ // Check if this is an edge version that should be replaced
67
+ const toolMappings = stableVersions[tool];
68
+
69
+ for (const mapping of toolMappings) {
70
+ if (mapping.replaces.includes(version)) {
71
+ return `${mapping.stable} (stable)`;
72
+ }
73
+ }
74
+
75
+ // If version ends with -edge, show it as edge
76
+ if (version.endsWith("-edge")) {
77
+ return `${version} (edge)`;
78
+ }
79
+
80
+ // Otherwise, return as stable
81
+ return `${version} (stable)`;
82
+ }
83
+
84
+ /**
85
+ * Check if a version is an edge version
86
+ */
87
+ export function isEdgeVersion(tool: keyof StableVersions, version?: string): boolean {
88
+ if (!version) return false;
89
+
90
+ const toolMappings = stableVersions[tool];
91
+
92
+ for (const mapping of toolMappings) {
93
+ if (mapping.replaces.includes(version)) {
94
+ return true;
95
+ }
96
+ }
97
+
98
+ return version.endsWith("-edge");
99
+ }
100
+
101
+ /**
102
+ * Get the stable version for an edge version
103
+ */
104
+ export function getStableVersion(
105
+ tool: keyof StableVersions,
106
+ version?: string
107
+ ): string | null {
108
+ if (!version) return null;
109
+
110
+ const toolMappings = stableVersions[tool];
111
+
112
+ for (const mapping of toolMappings) {
113
+ if (mapping.replaces.includes(version)) {
114
+ return mapping.stable;
115
+ }
116
+ }
117
+
118
+ return null;
119
+ }
@@ -0,0 +1,24 @@
1
+
2
+
3
+ import React, {type ReactNode} from 'react';
4
+ import clsx from 'clsx';
5
+ import {translate} from '@docusaurus/Translate';
6
+ import IconClose from '@theme/Icon/Close';
7
+ import type {Props} from '@theme/AnnouncementBar/CloseButton';
8
+ import styles from './styles.module.css';
9
+
10
+ export default function AnnouncementBarCloseButton(props: Props): ReactNode {
11
+ return (
12
+ <button
13
+ type="button"
14
+ aria-label={translate({
15
+ id: 'theme.AnnouncementBar.closeButtonAriaLabel',
16
+ message: 'Close',
17
+ description: 'The ARIA label for close button of announcement bar',
18
+ })}
19
+ {...props}
20
+ className={clsx('clean-btn close', styles.closeButton, props.className)}>
21
+ <IconClose width={14} height={14} strokeWidth={3.1} />
22
+ </button>
23
+ );
24
+ }
@@ -0,0 +1,6 @@
1
+
2
+
3
+ .closeButton {
4
+ padding: 0;
5
+ line-height: 0;
6
+ }
@@ -0,0 +1,21 @@
1
+
2
+
3
+ import React, {type ReactNode} from 'react';
4
+ import clsx from 'clsx';
5
+ import {useThemeConfig} from '@docusaurus/theme-common';
6
+ import type {Props} from '@theme/AnnouncementBar/Content';
7
+ import styles from './styles.module.css';
8
+
9
+ export default function AnnouncementBarContent(props: Props): ReactNode {
10
+ const {announcementBar} = useThemeConfig();
11
+ const {content} = announcementBar!;
12
+ return (
13
+ <div
14
+ {...props}
15
+ className={clsx(styles.content, props.className)}
16
+ // Developer provided the HTML, so assume it's safe.
17
+ // eslint-disable-next-line react/no-danger
18
+ dangerouslySetInnerHTML={{__html: content}}
19
+ />
20
+ );
21
+ }
@@ -0,0 +1,12 @@
1
+
2
+
3
+ .content {
4
+ font-size: 85%;
5
+ text-align: center;
6
+ padding: 5px 0;
7
+ }
8
+
9
+ .content a {
10
+ color: inherit;
11
+ text-decoration: underline;
12
+ }
@@ -0,0 +1,37 @@
1
+
2
+
3
+ import React, {type ReactNode} from 'react';
4
+ import clsx from 'clsx';
5
+ import {ThemeClassNames, useThemeConfig} from '@docusaurus/theme-common';
6
+ import {useAnnouncementBar} from '@docusaurus/theme-common/internal';
7
+ import AnnouncementBarCloseButton from '@theme/AnnouncementBar/CloseButton';
8
+ import AnnouncementBarContent from '@theme/AnnouncementBar/Content';
9
+
10
+ import styles from './styles.module.css';
11
+
12
+ export default function AnnouncementBar(): ReactNode {
13
+ const {announcementBar} = useThemeConfig();
14
+ const {isActive, close} = useAnnouncementBar();
15
+ if (!isActive) {
16
+ return null;
17
+ }
18
+ const {backgroundColor, textColor, isCloseable} = announcementBar!;
19
+ return (
20
+ <div
21
+ className={clsx(
22
+ ThemeClassNames.announcementBar.container,
23
+ styles.announcementBar,
24
+ )}
25
+ style={{backgroundColor, color: textColor}}
26
+ role="banner">
27
+ {isCloseable && <div className={styles.announcementBarPlaceholder} />}
28
+ <AnnouncementBarContent className={styles.announcementBarContent} />
29
+ {isCloseable && (
30
+ <AnnouncementBarCloseButton
31
+ onClick={close}
32
+ className={styles.announcementBarClose}
33
+ />
34
+ )}
35
+ </div>
36
+ );
37
+ }
@@ -0,0 +1,57 @@
1
+
2
+
3
+ :root {
4
+ --docusaurus-announcement-bar-height: auto;
5
+ }
6
+
7
+ .announcementBar {
8
+ display: flex;
9
+ align-items: center;
10
+ height: var(--docusaurus-announcement-bar-height);
11
+ background-color: var(--ifm-color-white);
12
+ color: var(--ifm-color-black);
13
+
14
+ /*
15
+ Unfortunately we can't make announcement bar render above the navbar
16
+ IE need to use border-bottom instead of shadow
17
+ See https://github.com/facebookincubator/infima/issues/275
18
+
19
+ box-shadow: var(--ifm-global-shadow-lw);
20
+ z-index: calc(var(--ifm-z-index-fixed) + 1);
21
+ */
22
+ border-bottom: 1px solid var(--ifm-color-emphasis-100);
23
+ }
24
+
25
+ html[data-announcement-bar-initially-dismissed='true'] .announcementBar {
26
+ display: none;
27
+ }
28
+
29
+ .announcementBarPlaceholder {
30
+ flex: 0 0 10px;
31
+ }
32
+
33
+ .announcementBarClose {
34
+ flex: 0 0 30px;
35
+ align-self: stretch;
36
+ }
37
+
38
+ .announcementBarContent {
39
+ flex: 1 1 auto;
40
+ }
41
+
42
+ @media print {
43
+ .announcementBar {
44
+ display: none;
45
+ }
46
+ }
47
+
48
+ @media (min-width: 997px) {
49
+ :root {
50
+ --docusaurus-announcement-bar-height: 30px;
51
+ }
52
+
53
+ .announcementBarPlaceholder,
54
+ .announcementBarClose {
55
+ flex-basis: 50px;
56
+ }
57
+ }
@@ -0,0 +1,30 @@
1
+
2
+
3
+ import React, {type ReactNode} from 'react';
4
+ import clsx from 'clsx';
5
+ import {translate} from '@docusaurus/Translate';
6
+ import {ThemeClassNames} from '@docusaurus/theme-common';
7
+ import {useBackToTopButton} from '@docusaurus/theme-common/internal';
8
+
9
+ import styles from './styles.module.css';
10
+
11
+ export default function BackToTopButton(): ReactNode {
12
+ const {shown, scrollToTop} = useBackToTopButton({threshold: 300});
13
+ return (
14
+ <button
15
+ aria-label={translate({
16
+ id: 'theme.BackToTopButton.buttonAriaLabel',
17
+ message: 'Scroll back to top',
18
+ description: 'The ARIA label for the back to top button',
19
+ })}
20
+ className={clsx(
21
+ 'clean-btn',
22
+ ThemeClassNames.common.backToTopButton,
23
+ styles.backToTopButton,
24
+ shown && styles.backToTopButtonShow,
25
+ )}
26
+ type="button"
27
+ onClick={scrollToTop}
28
+ />
29
+ );
30
+ }
@@ -0,0 +1,39 @@
1
+
2
+
3
+ .backToTopButton {
4
+ position: fixed;
5
+ right: 1.3rem;
6
+ bottom: 1.3rem;
7
+ border-radius: 50%;
8
+ background-color: var(--ifm-color-emphasis-200);
9
+ width: 3rem;
10
+ height: 3rem;
11
+ z-index: calc(var(--ifm-z-index-fixed) - 1);
12
+ box-shadow: var(--ifm-global-shadow-lw);
13
+ transition: all var(--ifm-transition-fast)
14
+ var(--ifm-transition-timing-default);
15
+ opacity: 0;
16
+ transform: scale(0);
17
+ visibility: hidden;
18
+ }
19
+
20
+ .backToTopButton::after {
21
+ content: ' ';
22
+ display: inline-block;
23
+ mask: var(--ifm-menu-link-sublist-icon) 50% / 2rem 2rem no-repeat;
24
+ background-color: var(--ifm-color-emphasis-1000);
25
+ width: 100%;
26
+ height: 100%;
27
+ }
28
+
29
+ @media (hover: hover) {
30
+ .backToTopButton:hover {
31
+ background-color: var(--ifm-color-emphasis-300);
32
+ }
33
+ }
34
+
35
+ .backToTopButtonShow {
36
+ opacity: 1;
37
+ transform: scale(1);
38
+ visibility: visible;
39
+ }
@@ -0,0 +1,75 @@
1
+
2
+
3
+ import type {ComponentType, ReactNode} from 'react';
4
+ import React from 'react';
5
+ import clsx from 'clsx';
6
+ import Link from '@docusaurus/Link';
7
+ import type {Props} from '@theme/Blog/Components/Author/Socials';
8
+
9
+ import Twitter from '@theme/Icon/Socials/Twitter';
10
+ import GitHub from '@theme/Icon/Socials/GitHub';
11
+ import X from '@theme/Icon/Socials/X';
12
+ import StackOverflow from '@theme/Icon/Socials/StackOverflow';
13
+ import LinkedIn from '@theme/Icon/Socials/LinkedIn';
14
+ import DefaultSocialIcon from '@theme/Icon/Socials/Default';
15
+ import Bluesky from '@theme/Icon/Socials/Bluesky';
16
+ import Instagram from '@theme/Icon/Socials/Instagram';
17
+ import Threads from '@theme/Icon/Socials/Threads';
18
+ import Youtube from '@theme/Icon/Socials/YouTube';
19
+ import Mastodon from '@theme/Icon/Socials/Mastodon';
20
+ import Twitch from '@theme/Icon/Socials/Twitch';
21
+ import Email from '@theme/Icon/Socials/Email';
22
+
23
+ import styles from './styles.module.css';
24
+
25
+ type SocialIcon = ComponentType<{className: string}>;
26
+
27
+ type SocialPlatformConfig = {Icon: SocialIcon; label: string};
28
+
29
+ const SocialPlatformConfigs: Record<string, SocialPlatformConfig> = {
30
+ twitter: {Icon: Twitter, label: 'Twitter'},
31
+ github: {Icon: GitHub, label: 'GitHub'},
32
+ stackoverflow: {Icon: StackOverflow, label: 'Stack Overflow'},
33
+ linkedin: {Icon: LinkedIn, label: 'LinkedIn'},
34
+ x: {Icon: X, label: 'X'},
35
+ bluesky: {Icon: Bluesky, label: 'Bluesky'},
36
+ instagram: {Icon: Instagram, label: 'Instagram'},
37
+ threads: {Icon: Threads, label: 'Threads'},
38
+ mastodon: {Icon: Mastodon, label: 'Mastodon'},
39
+ youtube: {Icon: Youtube, label: 'YouTube'},
40
+ twitch: {Icon: Twitch, label: 'Twitch'},
41
+ email: {Icon: Email, label: 'Email'},
42
+ };
43
+
44
+ function getSocialPlatformConfig(platformKey: string): SocialPlatformConfig {
45
+ return (
46
+ SocialPlatformConfigs[platformKey] ?? {
47
+ Icon: DefaultSocialIcon,
48
+ label: platformKey,
49
+ }
50
+ );
51
+ }
52
+
53
+ function SocialLink({platform, link}: {platform: string; link: string}) {
54
+ const {Icon, label} = getSocialPlatformConfig(platform);
55
+ return (
56
+ <Link className={styles.authorSocialLink} href={link} title={label}>
57
+ <Icon className={clsx(styles.authorSocialIcon)} />
58
+ </Link>
59
+ );
60
+ }
61
+
62
+ export default function BlogAuthorSocials({
63
+ author,
64
+ }: {
65
+ author: Props['author'];
66
+ }): ReactNode {
67
+ const entries = Object.entries(author.socials ?? {});
68
+ return (
69
+ <div className={styles.authorSocials}>
70
+ {entries.map(([platform, linkUrl]) => {
71
+ return <SocialLink key={platform} platform={platform} link={linkUrl} />;
72
+ })}
73
+ </div>
74
+ );
75
+ }