Files
kazoottt-blog/src/site.config.ts

67 lines
2.2 KiB
TypeScript
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

import type { SiteConfig } from '@/types'
import type { AstroExpressiveCodeOptions } from 'astro-expressive-code'
export const siteConfig: SiteConfig = {
// Used as both a meta property (src/components/BaseHead.astro L:31 + L:49) & the generated satori png (src/pages/og-image/[slug].png.ts)
author: 'KazooTTT',
// Meta property used to construct the meta title property, found in src/components/BaseHead.astro L:11
title: '声控烤箱的博客KazooTTT Blog',
// Meta property used as the default description meta property
description: '声控烤箱 我喜欢的烤箱是声控的 前端小透明',
// HTML lang property, found in src/layouts/Base.astro L:18
lang: 'zh-CN',
// Meta property, found in src/components/BaseHead.astro L:42
ogLocale: 'zh-CN',
// Date.prototype.toLocaleDateString() parameters, found in src/utils/date.ts.
date: {
locale: 'zh-CN',
options: {
day: 'numeric',
month: 'short',
year: 'numeric'
}
},
site: 'https://blog.kazoottt.top'
}
export const menuLinks: Array<{ title: string; path: string }> = [
{
title: 'Home',
path: '/'
},
{
title: 'Blog',
path: '/blog/'
}
]
// https://expressive-code.com/reference/configuration/
export const expressiveCodeOptions: AstroExpressiveCodeOptions = {
// One dark, one light theme => https://expressive-code.com/guides/themes/#available-themes
themes: ['dracula', 'github-light'],
themeCssSelector(theme, { styleVariants }) {
// If one dark and one light theme are available
// generate theme CSS selectors compatible with cactus-theme dark mode switch
if (styleVariants.length >= 2) {
const baseTheme = styleVariants[0]?.theme
const altTheme = styleVariants.find((v) => v.theme.type !== baseTheme?.type)?.theme
if (theme === baseTheme || theme === altTheme) return `[data-theme='${theme.type}']`
}
// return default selector
return `[data-theme="${theme.name}"]`
},
useThemedScrollbars: false,
styleOverrides: {
frames: {
frameBoxShadowCssValue: 'none'
},
uiLineHeight: 'inherit',
codeFontSize: '0.875rem',
codeLineHeight: '1.7142857rem',
borderRadius: '4px',
codePaddingInline: '1rem',
codeFontFamily:
'ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;'
}
}