Files
gitea-docs/docusaurus.config.js
HesterG b27f00bd97 Sort usage directory by type first (#8)
1. Change name of "usage/actions", "usage/packages" to "usage/Actions" and "usage/Packages".
2. Sort usage directory by type first, so type "category" goes before "docs"

Reference from [customize-the-sidebar-items-generator](https://docusaurus.io/docs/sidebar/autogenerated#customize-the-sidebar-items-generator) and [document](https://docusaurus.io/docs/cli#docusaurus-write-translations-sitedir)

![Screen Shot 2023-05-22 at 16.22.33](/attachments/5bbc88c9-9eca-4697-84b4-b8b3c2804eb0)

Reviewed-on: https://gitea.com/gitea/gitea-docusaurus/pulls/8
Reviewed-by: Lunny Xiao <xiaolunwen@gmail.com>
Co-authored-by: HesterG <hestergong@gmail.com>
Co-committed-by: HesterG <hestergong@gmail.com>
2023-05-22 16:31:34 +08:00

181 lines
4.9 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');
// order usage directory by type first
function sortItemsByCategory(items) {
// type with "category" (directory) first
const sortedItems = items.sort(function(a, b) {
return a.type.localeCompare(b.type);
})
return sortedItems;
}
/** @type {import('@docusaurus/types').Config} */
const config = {
title: 'Gitea Documentation',
tagline: 'Git with a cup of tea',
url: 'https://docs.gitea.com',
baseUrl: '/',
onBrokenLinks: 'warn',
onBrokenMarkdownLinks: 'warn',
favicon: 'img/favicon.png',
i18n: {
defaultLocale: 'en',
locales: ['en'/*, 'zh-cn', 'fr-fr', 'zh-tw'*/], // temporarily disable other locales
},
presets: [
[
'@docusaurus/preset-classic',
//'classic',
/** @type {import('@docusaurus/preset-classic').Options} */
({
docs: {
sidebarPath: require.resolve('./sidebars.js'),
routeBasePath: '/', // Serve the docs at the site's root
editUrl: ({locale, versionDocsDirPath, docPath}) => {
return `https://github.com/go-gitea/gitea/tree/main/docs/content/doc/${docPath}`
},
versions: {
current: {
label: '1.20-dev', // path is kept as next for dev (so users can always find "nightly" docs)
},
1.19 : {
label: '1.19.3'
}
},
async sidebarItemsGenerator({defaultSidebarItemsGenerator, ...args}) {
const {item} = args;
// Use the provided data to generate a custom sidebar slice
const sidebarItems = await defaultSidebarItemsGenerator(args);
if (item.dirName !== 'usage') {
return sidebarItems;
} else {
return sortItemsByCategory(sidebarItems);
}
},
},
blog: false,
theme: {
customCss: require.resolve('./src/css/custom.css'),
},
}),
],
],
themes: [
[
"@easyops-cn/docusaurus-search-local",
{
hashed: false,
language: ["en"],
highlightSearchTermsOnTargetPage: true,
explicitSearchResultPath: true,
indexBlog: false,
docsRouteBasePath: "/"
}
]
],
themeConfig:
/** @type {import('@docusaurus/preset-classic').ThemeConfig} */
({
colorMode: {
defaultMode: 'light',
disableSwitch: true,
respectPrefersColorScheme: true,
},
announcementBar: {
id: 'announcementBar-2', // Increment on change
content: `The updated documentation site is a work in progress. If you find any issues, please <a target="_blank" rel="noopener noreferrer" href="https://gitea.com/gitea/gitea-docusaurus/issues">let us know</a>. Translated documentation is also a work in progress.`,
},
navbar: {
title: 'Gitea',
logo: {
alt: 'Gitea Logo',
src: 'img/gitea.svg',
},
items: [
{
to: '/',
position: 'left',
label: 'Docs',
},
{
href: 'https://github.com/go-gitea/gitea',
label: 'Code',
position: 'left',
},
{
type: 'search',
position: 'right',
},
{
type: 'localeDropdown',
position: 'right',
},
{
type: 'docsVersionDropdown',
position: 'right',
dropdownActiveClassDisabled: true,
},
{
to: 'help/seek-help',
position: 'right',
label: 'Support',
activeBaseRegex: 'help/seek-help',
}
],
},
footer: {
style: 'dark',
links: [
{
title: 'Docs',
items: [
{
label: 'Tutorial',
to: '/',
},
],
},
{
title: 'Community',
items: [
{
label: 'Stack Overflow',
href: 'https://stackoverflow.com/questions/tagged/gitea',
},
{
label: 'Discord',
href: 'https://discord.gg/gitea',
},
{
label: 'Twitter',
href: 'https://twitter.com/giteaio',
},
],
},
{
title: 'More',
items: [
{
label: 'Code',
href: 'https://github.com/go-gitea/gitea',
},
],
},
],
},
prism: {
theme: lightCodeTheme,
darkTheme: darkCodeTheme,
},
}),
};
module.exports = config;