import {themes as prismThemes} from 'prism-react-renderer';
import type {Config} from '@docusaurus/types';
import type * as Preset from '@docusaurus/preset-classic';

const config: Config = {
  title: 'DePIN Projects',
  tagline: 'Navigate the rapidly evolving landscape of Decentralized Physical Infrastructure Networks (DePIN)',
  favicon: 'img/favicon_depin.png',

  url: 'https://info.ourworld.tf',
  baseUrl: '/depin/',

  onBrokenLinks: 'throw',
  onBrokenMarkdownLinks: 'warn',

  i18n: {
    defaultLocale: 'en',
    locales: ['en'],
  },

  presets: [
    [
      'classic',
      {
        docs: {
          sidebarPath: './sidebars.ts',
        },
        blog: {
          showReadingTime: true,
          feedOptions: {
            type: ['rss', 'atom'],
            xslt: true,
          },
          onInlineTags: 'warn',
          onInlineAuthors: 'warn',
          onUntruncatedBlogPosts: 'warn',
        },
        theme: {
          customCss: './src/css/custom.css',
        },
      } satisfies Preset.Options,
    ],
  ],

  markdown: {
    mermaid: true,
  },
  themes: ['@docusaurus/theme-mermaid'],

  scripts: [
    
    {
      src:
        '/js/crisp.js',
      async: false,
    },
  ],

  themeConfig: {

    colorMode: {
      defaultMode: 'dark',
      disableSwitch: true,
      respectPrefersColorScheme: false,
    },
    image: 'img/ourworld_depin.png',
    metadata: [
      { name: 'description', content: 'Navigate the rapidly evolving landscape of Decentralized Physical Infrastructure Networks (DePIN).' },
      { property: 'og:image', content: 'https://info.ourworld.tf/img/ourworld_depin.png' },
      { property: 'og:description', content: 'Navigate the rapidly evolving landscape of Decentralized Physical Infrastructure Networks (DePIN).' },
      { property: 'og:title', content: 'Introduction | DePIN Projects' },
    ],
    navbar: {
      title: 'DePIN Projects',
      items: [
        {
          type: 'docSidebar',
          sidebarId: 'tutorialSidebar',
          position: 'left',
          label: 'Docs',
        },
        {
          href: 'https://git.ourworld.tf/tfgrid/info_docs_depin',
          label: 'Gitea',
          position: 'right',
        },
      ],
    },
    footer: {
      style: 'dark',
      links: [
        {
          title: 'Overview',
          items: [
            {
              label: 'DePIN Boards',
              href: '/docs/depin_board',
            },
            {
              label: 'DePIN Charts',
              href: '/docs/depin_6dchart',
            }
          ],
        },
        {
          title: 'Community',
          items: [
            {
              label: 'Feedback',
              to: '/docs/feedback',
            },
            {
              label: 'Gitea Repo',
              href: 'https://git.ourworld.tf/tfgrid/info_docs_depin',
            },
          ],
        },
        {
          title: 'Links',
          items: [
            {
              label: 'ThreeFold.io',
              href: 'https://threefold.io',
            },
            {
              label: 'Dashboard',
              href: 'https://dashboard.grid.tf',
            }
          ],
        },
      ],
      copyright: `Copyright © ${new Date().getFullYear()} OurWorld`,
    },
    prism: {
      theme: prismThemes.github,
      darkTheme: prismThemes.dracula,
    },
  } satisfies Preset.ThemeConfig,
};

export default config;