200 lines
5.6 KiB
JavaScript
200 lines
5.6 KiB
JavaScript
// @ts-check
|
|
// Note: type annotations allow type checking and IDEs autocompletion
|
|
|
|
const lightCodeTheme = require('prism-react-renderer/themes/github');
|
|
const darkCodeTheme = require('prism-react-renderer/themes/dracula');
|
|
const math = require('remark-math');
|
|
const katex = require('rehype-katex');
|
|
const { filterItems } = require('./sidebar-utils');
|
|
const dotenv = require('dotenv');
|
|
|
|
// load env variables (see .env file)
|
|
const env = dotenv.config();
|
|
if (env.error) {
|
|
throw env.error;
|
|
}
|
|
|
|
console.info("ENV VARIABLES:");
|
|
console.info(env.parsed);
|
|
|
|
/** @type {import('@docusaurus/types').Config} */
|
|
const config = {
|
|
title: 'OpenAIRE Documentation',
|
|
tagline: 'Open Access Infrastructure for Research in Europe',
|
|
url: process.env.URL,
|
|
baseUrl: process.env.BASE_URL, // serve the website at route
|
|
onBrokenLinks: 'throw',
|
|
onBrokenMarkdownLinks: 'warn',
|
|
favicon: 'img/favicon.ico',
|
|
|
|
// GitHub pages deployment config.
|
|
// If you aren't using GitHub pages, you don't need these.
|
|
organizationName: 'openaire', // Usually your GitHub org/user name.
|
|
projectName: 'openaire-graph-docs', // Usually your repo name.
|
|
|
|
// Even if you don't use internalization, you can use this field to set useful
|
|
// metadata like html lang. For example, if your site is Chinese, you may want
|
|
// to replace "en" with "zh-Hans".
|
|
i18n: {
|
|
defaultLocale: 'en',
|
|
locales: ['en'],
|
|
},
|
|
|
|
presets: [
|
|
[
|
|
'classic',
|
|
/** @type {import('@docusaurus/preset-classic').Options} */
|
|
({
|
|
docs: {
|
|
routeBasePath: '/', // serve the docs at the site's route
|
|
|
|
sidebarPath: require.resolve('./sidebars.js'),
|
|
async sidebarItemsGenerator({ defaultSidebarItemsGenerator, ...args }) {
|
|
const sidebarItems = await defaultSidebarItemsGenerator(args);
|
|
|
|
const itemsToFilterOut = [
|
|
'data-model/entities/entity-identifiers',
|
|
'data-model/entities/other'
|
|
];
|
|
|
|
return filterItems(sidebarItems, itemsToFilterOut);
|
|
},
|
|
// Please change this to your repo.
|
|
// Remove this to remove the "edit this page" links.
|
|
// editUrl:
|
|
// 'https://github.com/facebook/docusaurus/tree/main/packages/create-docusaurus/templates/shared/',
|
|
|
|
remarkPlugins: [ math ],
|
|
rehypePlugins: [ katex ],
|
|
},
|
|
blog: false,
|
|
// {
|
|
// showReadingTime: true,
|
|
// },
|
|
theme: {
|
|
customCss: require.resolve('./src/css/custom.css'),
|
|
},
|
|
sitemap: {
|
|
changefreq: 'monthly',
|
|
priority: 0.5,
|
|
ignorePatterns: ['/tags/**'],
|
|
filename: 'sitemap.xml',
|
|
},
|
|
}),
|
|
],
|
|
],
|
|
// required for katex styling of equations
|
|
stylesheets: [
|
|
{
|
|
href: 'https://cdn.jsdelivr.net/npm/katex@0.13.24/dist/katex.min.css',
|
|
type: 'text/css',
|
|
integrity:
|
|
'sha384-odtC+0UGzzFL/6PNoE8rX/SPcQDXBJ+uRepguP4QkPCm2LBxH3FA3y+fKSiJ+AmM',
|
|
crossorigin: 'anonymous',
|
|
},
|
|
],
|
|
themeConfig:
|
|
/** @type {import('@docusaurus/preset-classic').ThemeConfig} */
|
|
({
|
|
navbar: {
|
|
title: 'documentation',
|
|
logo: {
|
|
alt: 'OpenAIRE',
|
|
src: 'img/logo.png',
|
|
},
|
|
items: [
|
|
// {
|
|
// type: 'doc',
|
|
// docId: 'intro',
|
|
// position: 'left',
|
|
// label: 'Research graph v5.0',
|
|
// },
|
|
//
|
|
// documentation version in the navbar
|
|
{
|
|
type: 'docsVersionDropdown',
|
|
position: 'right'
|
|
},
|
|
//
|
|
// link to blog, the blog must be enabled first
|
|
// {to: '/blog', label: 'Blog', position: 'left'},
|
|
//
|
|
// link to github repo
|
|
// {
|
|
// href: 'https://github.com/facebook/docusaurus',
|
|
// label: 'GitHub',
|
|
// position: 'right',
|
|
// },
|
|
],
|
|
},
|
|
footer: {
|
|
style: 'dark',
|
|
links: [
|
|
{
|
|
title: 'Docs',
|
|
items: [
|
|
{
|
|
label: 'Research Graph',
|
|
to: '/',
|
|
},
|
|
],
|
|
},
|
|
{
|
|
title: 'Dashboards',
|
|
items: [
|
|
{
|
|
label: 'Explore',
|
|
href: 'https://explore.openaire.eu/',
|
|
},
|
|
{
|
|
label: 'Provide',
|
|
href: 'https://provide.openaire.eu/',
|
|
},
|
|
{
|
|
label: 'Connect',
|
|
href: 'https://connect.openaire.eu/',
|
|
},
|
|
{
|
|
label: 'Monitor',
|
|
href: 'https://monitor.openaire.eu/',
|
|
},
|
|
{
|
|
label: 'Develop',
|
|
href: 'https://graph.openaire.eu/',
|
|
},
|
|
],
|
|
},
|
|
{
|
|
title: 'Community',
|
|
items: [
|
|
{
|
|
label: 'Facebook',
|
|
href: 'http://www.facebook.com/groups/openaire/'
|
|
},
|
|
{
|
|
label: 'Linkedin',
|
|
href: 'https://www.linkedin.com/company/openaire-eu/',
|
|
},
|
|
{
|
|
label: 'Twitter',
|
|
href: 'https://twitter.com/OpenAIRE_eu',
|
|
},
|
|
{
|
|
label: 'Youtube',
|
|
href: 'https://www.youtube.com/channel/UChFYqizc-S6asNjQSoWuwjw',
|
|
},
|
|
],
|
|
},
|
|
|
|
],
|
|
copyright: `Copyright © ${new Date().getFullYear()} OpenAIRE`,
|
|
},
|
|
prism: {
|
|
theme: lightCodeTheme,
|
|
darkTheme: darkCodeTheme,
|
|
},
|
|
}),
|
|
};
|
|
|
|
module.exports = config;
|