2021-06-15 22:38:40 +02:00
/ * *
* Copyright ( c ) Facebook , Inc . and its affiliates .
*
* This source code is licensed under the MIT license found in the
* LICENSE file in the root directory of this source tree .
* /
const path = require ( 'path' ) ;
const versions = require ( './versions.json' ) ;
// This probably only makes sense for the beta phase, temporary
function getNextBetaVersionName ( ) {
const expectedPrefix = '' ;
const lastReleasedVersion = versions [ 0 ] ;
if ( ! lastReleasedVersion . includes ( expectedPrefix ) ) {
throw new Error (
2021-06-16 14:17:07 +02:00
'this code is only meant to be used during the 2.0 beta phase.'
2021-06-15 22:38:40 +02:00
) ;
}
const version = parseInt ( lastReleasedVersion . replace ( expectedPrefix , '' ) , 10 ) ;
return ` ${ expectedPrefix } ${ version + 1 } ` ;
}
const allDocHomesPaths = [
'/docs/' ,
'/docs/next/' ,
2021-06-16 14:17:07 +02:00
... versions . slice ( 1 ) . map ( version => ` /docs/ ${ version } / ` ) ,
2021-06-15 22:38:40 +02:00
] ;
const isDev = process . env . NODE _ENV === 'development' ;
const isDeployPreview =
process . env . NETLIFY && process . env . CONTEXT === 'deploy-preview' ;
2021-06-16 14:30:10 +02:00
const baseUrl = process . env . BASE _URL || '/' ;
2021-06-15 22:38:40 +02:00
const isBootstrapPreset = process . env . DOCUSAURUS _PRESET === 'bootstrap' ;
// Special deployment for staging locales until they get enough translations
// https://app.netlify.com/sites/docusaurus-i18n-staging
// https://docusaurus-i18n-staging.netlify.app/
const isI18nStaging = process . env . I18N _STAGING === 'true' ;
2021-06-16 01:11:09 +02:00
// const isVersioningDisabled = !!process.env.DISABLE_VERSIONING || isI18nStaging;
2021-06-15 22:38:40 +02:00
2021-06-15 17:50:38 +02:00
/** @type {import('@docusaurus/types').DocusaurusConfig} */
2021-06-15 22:38:40 +02:00
( module . exports = {
2021-06-16 05:32:37 +02:00
title : 'OHIF' ,
2021-06-15 22:38:40 +02:00
tagline : 'Build optimized websites quickly, focus on your content' ,
organizationName : 'facebook' ,
2021-06-16 05:32:37 +02:00
projectName : 'OHIF' ,
2021-06-15 22:38:40 +02:00
baseUrl ,
baseUrlIssueBanner : true ,
2021-06-16 05:32:37 +02:00
url : 'https://ohif.org' ,
2021-06-15 22:38:40 +02:00
i18n : {
defaultLocale : 'en' ,
locales : isDeployPreview
? // Deploy preview: keep it fast!
2021-06-16 14:17:07 +02:00
[ 'en' ]
2021-06-15 22:38:40 +02:00
: isI18nStaging
2021-06-16 14:17:07 +02:00
? // Staging locales: https://docusaurus-i18n-staging.netlify.app/
2021-06-16 14:30:10 +02:00
[ 'en' ]
2021-06-16 14:17:07 +02:00
: // Production locales
2021-06-16 14:30:10 +02:00
[ 'en' ] ,
2021-06-15 22:38:40 +02:00
} ,
onBrokenLinks : 'warn' ,
2021-06-15 17:50:38 +02:00
onBrokenMarkdownLinks : 'warn' ,
2021-06-22 23:12:00 +02:00
favicon : 'img/favicon.ico' ,
2021-06-15 22:38:40 +02:00
// customFields: {
// description:
// 'An optimized site generator in React. Docusaurus helps you to move fast and write content. Build documentation websites, blogs, marketing pages, and more.',
// },
themes : [ '@docusaurus/theme-live-codeblock' ] ,
plugins : [
[
'@docusaurus/plugin-client-redirects' ,
{
fromExtensions : [ 'html' ] ,
2021-06-16 14:17:07 +02:00
createRedirects : function ( path ) {
2021-06-15 22:38:40 +02:00
// redirect to /docs from /docs/introduction,
// as introduction has been made the home doc
if ( allDocHomesPaths . includes ( path ) ) {
return [ ` ${ path } /introduction ` ] ;
}
} ,
// redirects: [
// {
// from: ['/'],
// to: '/docs',
// },
// {
// from: ['/docs/support', '/docs/next/support'],
// to: '/community/support',
// },
// {
// from: ['/docs/team', '/docs/next/team'],
// to: '/community/team',
// },
// {
// from: ['/docs/resources', '/docs/next/resources'],
// to: '/community/resources',
// },
// ],
} ,
] ,
[
'@docusaurus/plugin-ideal-image' ,
{
quality : 70 ,
max : 1030 , // max resized image's size.
min : 640 , // min resized image's size. if original is lower, use that size.
steps : 2 , // the max number of images generated between min and max (inclusive)
} ,
] ,
[
'@docusaurus/plugin-pwa' ,
{
debug : isDeployPreview ,
offlineModeActivationStrategies : [
'appInstalled' ,
'standalone' ,
'queryString' ,
] ,
// swRegister: false,
2021-06-16 14:30:10 +02:00
// swCustom: path.resolve(__dirname, 'src/sw.js'),
2021-06-15 22:38:40 +02:00
pwaHead : [
{
tagName : 'link' ,
rel : 'icon' ,
href : 'img/docusaurus.png' ,
} ,
{
tagName : 'link' ,
rel : 'manifest' ,
href : ` ${ baseUrl } manifest.json ` ,
} ,
{
tagName : 'meta' ,
name : 'theme-color' ,
content : 'rgb(37, 194, 160)' ,
} ,
{
tagName : 'meta' ,
name : 'apple-mobile-web-app-capable' ,
content : 'yes' ,
} ,
{
tagName : 'meta' ,
name : 'apple-mobile-web-app-status-bar-style' ,
content : '#000' ,
} ,
{
tagName : 'link' ,
rel : 'apple-touch-icon' ,
href : 'img/docusaurus.png' ,
} ,
{
tagName : 'link' ,
rel : 'mask-icon' ,
href : 'img/docusaurus.svg' ,
color : 'rgb(62, 204, 94)' ,
} ,
{
tagName : 'meta' ,
name : 'msapplication-TileImage' ,
content : 'img/docusaurus.png' ,
} ,
{
tagName : 'meta' ,
name : 'msapplication-TileColor' ,
content : '#000' ,
} ,
] ,
} ,
] ,
] ,
presets : [
[
isBootstrapPreset
? '@docusaurus/preset-bootstrap'
: '@docusaurus/preset-classic' ,
{
debug : true , // force debug plugin usage
docs : {
routeBasePath : '/' ,
path : 'docs' ,
sidebarPath : require . resolve ( './sidebars.js' ) ,
editUrl : ( { locale , docPath } ) => {
if ( locale !== 'en' ) {
return ` https://crowdin.com/project/docusaurus-v2/ ${ locale } ` ;
}
// We want users to submit doc updates to the upstream/next version!
// Otherwise we risk losing the update on the next release.
const nextVersionDocsDirPath = 'docs' ;
2021-06-16 01:11:09 +02:00
return ` https://github.com/OHIF/Viewers/edit/master/website/ ${ nextVersionDocsDirPath } / ${ docPath } ` ;
2021-06-15 22:38:40 +02:00
} ,
showLastUpdateAuthor : true ,
showLastUpdateTime : true ,
// remarkPlugins: [
// [require('@docusaurus/remark-plugin-npm2yarn'), { sync: true }],
// ],
2021-06-16 01:11:09 +02:00
// disableVersioning: isVersioningDisabled,
// lastVersion: 'current',
// onlyIncludeVersions:
// !isVersioningDisabled && (isDev || isDeployPreview)
// ? ['current', ...versions.slice(0, 2)]
// : undefined,
// versions: {
// current: {
// // label: `${getNextBetaVersionName()} 🚧`,
// // label: `2.0 🎉`,
// label: `2.0`,
// // path: `2.0`,
// },
// },
2021-06-15 22:38:40 +02:00
} ,
theme : {
customCss : [ require . resolve ( './src/css/custom.css' ) ] ,
} ,
} ,
] ,
] ,
2021-06-15 17:50:38 +02:00
themeConfig : {
2021-06-15 22:38:40 +02:00
liveCodeBlock : {
playgroundPosition : 'bottom' ,
} ,
2021-06-22 01:35:41 +02:00
hideableSidebar : false ,
2021-06-15 22:38:40 +02:00
colorMode : {
2021-06-22 01:35:41 +02:00
defaultMode : 'dark' ,
2021-06-15 22:38:40 +02:00
disableSwitch : false ,
2021-06-22 01:35:41 +02:00
// respectPrefersColorScheme: true,
2021-06-15 22:38:40 +02:00
} ,
// announcementBar: {
// id: 'v1-new-domain',
// content:
// '➡️ Docusaurus v1 documentation has moved to <a target="_blank" rel="noopener noreferrer" href="https://v1.docusaurus.io/">v1.docusaurus.io</a>! 🔄',
// },
/ *
announcementBar : {
id : 'supportus' ,
content :
2021-06-16 01:11:09 +02:00
'⭐️ If you like Docusaurus, give it a star on <a target="_blank" rel="noopener noreferrer" href="https://github.com/OHIF/Viewers">GitHub</a>! ⭐️' ,
2021-06-15 22:38:40 +02:00
} ,
* /
prism : {
theme : require ( 'prism-react-renderer/themes/github' ) ,
darkTheme : require ( 'prism-react-renderer/themes/dracula' ) ,
} ,
image : 'img/docusaurus-soc.png' ,
// metadatas: [{name: 'twitter:card', content: 'summary'}],
gtag : {
2021-06-16 14:17:07 +02:00
trackingID : 'UA-110573590-2' ,
2021-06-15 22:38:40 +02:00
} ,
algolia : {
apiKey : '47ecd3b21be71c5822571b9f59e52544' ,
indexName : 'docusaurus-2' ,
contextualSearch : true ,
} ,
2021-06-15 17:50:38 +02:00
navbar : {
2021-06-22 23:12:00 +02:00
hideOnScroll : false ,
2021-06-15 17:50:38 +02:00
logo : {
2021-06-15 22:38:40 +02:00
alt : 'OHIF Logo' ,
2021-06-22 23:12:00 +02:00
src : 'img/ohif-logo-light.svg' ,
srcDark : 'img/ohif-logo.svg' ,
2021-06-15 17:50:38 +02:00
} ,
items : [
{
type : 'doc' ,
position : 'left' ,
2021-06-16 01:11:09 +02:00
docId : 'Introduction' ,
2021-06-15 22:38:40 +02:00
label : 'Docs' ,
2021-06-15 17:50:38 +02:00
} ,
2021-06-15 22:38:40 +02:00
// {to: 'blog', label: 'Blog', position: 'left'},
// {to: 'showcase', label: 'Showcase', position: 'left'},
// right
2021-06-15 17:50:38 +02:00
{
2021-06-15 22:38:40 +02:00
type : 'docsVersionDropdown' ,
2021-06-15 17:50:38 +02:00
position : 'right' ,
2021-06-15 22:38:40 +02:00
dropdownActiveClassDisabled : true ,
2021-06-15 17:50:38 +02:00
} ,
{
2021-06-15 22:38:40 +02:00
type : 'localeDropdown' ,
position : 'right' ,
dropdownItemsAfter : [
2021-06-15 17:50:38 +02:00
{
2021-06-23 03:02:14 +02:00
to : 'next/viewer/internationalization#contributing-with-new-languages' ,
2021-06-15 22:38:40 +02:00
label : 'Help Us Translate' ,
2021-06-15 17:50:38 +02:00
} ,
] ,
} ,
{
2021-06-16 01:11:09 +02:00
href : 'https://github.com/OHIF/Viewers' ,
2021-06-15 22:38:40 +02:00
position : 'right' ,
className : 'header-github-link' ,
2021-06-23 03:02:14 +02:00
'aria-label' : 'GitHub Repository'
2021-06-15 17:50:38 +02:00
} ,
] ,
} ,
2021-06-15 22:38:40 +02:00
footer : {
2021-06-23 03:02:14 +02:00
2021-06-15 22:38:40 +02:00
style : 'dark' ,
2021-06-22 01:35:41 +02:00
links : [
2021-06-23 03:02:14 +02:00
{
title : 'Open Health Imaging Foundation' ,
items : [
{
html : `
< a href = "https://viewer.ohif.org/" target = "_blank" rel = "noreferrer noopener" aria - label = "Deploys by Netlify" >
< img src = 'https://rally.partners.org/study/image/A3C43B37-4BE8-4950-AB00-42B19677D9D2' style = "margin-right: 100px;" alt = "MGH" / >
< / a >
` ,
} ,
] ,
} ,
2021-06-22 01:35:41 +02:00
{
title : 'Learn' ,
items : [
{
label : 'Introduction' ,
to : '/' ,
} ,
{
label : 'Installation' ,
to : 'development/getting-started' ,
} ,
] ,
} ,
{
title : 'Community' ,
items : [
{
label : 'Feedback' ,
to : 'https://community.ohif.com/' ,
} ,
{
2021-06-23 03:02:14 +02:00
label : 'Discussion board' ,
2021-06-22 01:35:41 +02:00
href : 'https://community.ohif.com/' ,
} ,
{
label : 'Help' ,
to : '/help' ,
} ,
] ,
} ,
{
title : 'More' ,
items : [
{
label : 'GitHub' ,
href : 'https://github.com/OHIF/Viewers' ,
} ,
{
label : 'Twitter' ,
href : 'https://twitter.com/OHIFviewer' ,
} ,
2021-06-23 03:02:14 +02:00
// {
// html: `
// <a href="https://viewer.ohif.org/" target="_blank" rel="noreferrer noopener" aria-label="Deploys by Netlify">
// <img src="https://www.netlify.com/img/global/badges/netlify-color-accent.svg" alt="Deploys by Netlify" />
// </a>
// `,
// },
2021-06-22 01:35:41 +02:00
] ,
} ,
] ,
2021-06-15 22:38:40 +02:00
logo : {
alt : 'OHIF ' ,
2021-06-23 03:02:14 +02:00
src : 'img/ohif-logo.svg' ,
2021-06-15 22:38:40 +02:00
href : 'https://ohif.org' ,
2021-06-15 17:50:38 +02:00
} ,
2021-06-23 03:02:14 +02:00
copyright : ` OHIF is open source software released under the MIT license. ` ,
2021-06-15 22:38:40 +02:00
} ,
} ,
} ) ;