Total Complexity | 8 |
Complexity/F | 0 |
Lines of Code | 34 |
Function Count | 0 |
Duplicated Lines | 0 |
Ratio | 0 % |
Changes | 0 |
1 | import {defineConfig} from 'vite' |
||
2 | import {sitemap, Url as SitemapUrl} from '@aminnairi/rollup-plugin-sitemap' |
||
3 | import VitePressConfig from './.vitepress/config' |
||
4 | import {DefaultTheme} from "vitepress/types/default-theme"; |
||
5 | |||
6 | const docsSiteBaseUrl = 'https://nystudio107.com' |
||
7 | const docsBaseUrl = new URL(VitePressConfig.base!, docsSiteBaseUrl).href.replace(/\/$/, '') + '/'; |
||
8 | let siteMapUrls: SitemapUrl[] = []; |
||
9 | if (Array.isArray(VitePressConfig.themeConfig?.sidebar)) { |
||
10 | siteMapUrls = VitePressConfig.themeConfig?.sidebar?.map((group: DefaultTheme.SidebarItem) => { |
||
11 | return group.items!.map((items: DefaultTheme.SidebarItem) => (<SitemapUrl>{ |
||
12 | location: items.link!.replace(/^\/+/, '') ?? '', |
||
13 | lastModified: new Date(), |
||
14 | })); |
||
15 | }).reduce((prev: SitemapUrl[], curr: SitemapUrl[]) => { |
||
16 | return prev!.concat(curr!); |
||
17 | }); |
||
18 | } |
||
19 | |||
20 | // https://vitejs.dev/config/ |
||
21 | export default defineConfig({ |
||
22 | plugins: [ |
||
23 | sitemap({ |
||
24 | baseUrl: docsBaseUrl, |
||
25 | urls: siteMapUrls, |
||
26 | }) |
||
27 | ], |
||
28 | server: { |
||
29 | host: '0.0.0.0', |
||
30 | port: parseInt(process.env.DOCS_DEV_PORT ?? '4000'), |
||
31 | strictPort: true, |
||
32 | } |
||
33 | }); |
||
34 |