Capital/nuxt.config.ts

131 lines
3.0 KiB
TypeScript
Raw Normal View History

2024-07-02 15:07:22 +00:00
import vuetify, { transformAssetUrls } from "vite-plugin-vuetify"
export default defineNuxtConfig({
devtools: { enabled: true },
site: {
url: "https://solsynth.dev",
name: "Solsynth LLC",
},
sitemap: {
2024-08-17 02:32:24 +00:00
strictNuxtContentPaths: true,
2024-08-16 08:53:23 +00:00
cacheMaxAgeSeconds: 3600,
sitemapsPathPrefix: "/sitemap",
sitemaps: {
2024-08-17 02:32:24 +00:00
pages: {
includeAppSources: true,
exclude: ["/flow/**"],
defaults: { priority: 0.8 },
},
2024-08-16 08:53:23 +00:00
posts: {
2024-08-17 02:32:24 +00:00
includeAppSources: false,
2024-08-16 08:53:23 +00:00
sources: [
"/api/sitemap/posts",
],
},
2024-08-16 16:04:21 +00:00
},
},
i18n: {
strategy: "no_prefix",
detectBrowserLanguage: {
useCookie: true,
cookieCrossOrigin: true,
cookieKey: "__capital_i18n",
redirectOn: "no prefix",
},
locales: [
{ code: "en", name: "English", file: "en-US.json" },
{ code: "zh-CN", name: "简体中文", file: "zh-CN.json" },
2024-08-13 15:49:54 +00:00
{ code: "tb-SG", name: "音调羊文", file: "tb-SG.json" },
],
lazy: true,
langDir: "lang",
defaultLocale: "en",
},
2024-08-14 07:20:37 +00:00
css: ["~/assets/index.css"],
2024-08-10 05:47:34 +00:00
runtimeConfig: {
public: {
siteUrl: "https://solsynth.dev",
2024-08-18 16:44:35 +00:00
solarRealm: "solar-network",
solarNetworkApi: "https://api.sn.solsynth.dev",
solianUrl: "https://sn.solsynth.dev",
},
},
routeRules: {
"/.well-known/openid-configuration": {
proxy: "/api/well-known/openid-configuration",
},
},
2024-07-02 15:07:22 +00:00
app: {
2024-10-03 18:35:02 +00:00
pageTransition: { name: "page", mode: "out-in" },
2024-07-02 15:07:22 +00:00
head: {
title: "Solsynth LLC",
titleTemplate: "%s | Solsynth",
meta: [],
link: [
2024-08-19 10:59:20 +00:00
{ rel: "icon", type: "image/png", href: "/icon.png" },
],
2024-07-02 15:07:22 +00:00
},
},
2024-07-02 15:07:22 +00:00
content: {
api: {
baseURL: "/api/content",
},
highlight: {
2024-08-20 02:05:59 +00:00
theme: { default: "github-light", dark: "github-dark" },
2024-08-16 16:04:21 +00:00
langs: ["json", "yaml", "toml", "java", "javascript", "astro", "css", "scss", "dart", "go", "typescript", "c", "csharp",
2024-08-16 17:33:16 +00:00
"cpp", "bat", "bash", "sh", "dockerfile", "erlang", "fsharp", "markdown", "log",
2024-08-16 16:04:21 +00:00
"lua", "objc", "swift", "regex", "ruby", "rust", "postcss", "blade", "asciidoc", "cmake", "cobol", "pascal",
"nginx", "angular-html", "angular-ts", "gdscript", "gdshader", "gdresource", "groovy", "gql", "python",
"crystal", "sql", "plsql", "kotlin", "html", "vue", "gleam", "julia", "lisp", "xml", "csv"],
2024-07-02 15:07:22 +00:00
},
2024-08-13 14:44:36 +00:00
locales: ["en", "zh-CN"],
defaultLocale: "en",
2024-07-02 15:07:22 +00:00
},
pinia: {
storesDirs: ["./stores/**"],
},
2024-07-02 15:07:22 +00:00
build: {
transpile: ["vuetify"],
},
2024-07-02 15:07:22 +00:00
modules: [
"@unocss/nuxt",
"@nuxt/content",
"@nuxt/image",
"@nuxtjs/sitemap",
"@pinia/nuxt",
"@nuxtjs/i18n",
2024-08-16 08:53:23 +00:00
"nuxt-schema-org",
2024-08-20 01:43:21 +00:00
"nuxt-gtag",
2024-07-02 15:07:22 +00:00
(_options, nuxt) => {
nuxt.hooks.hook("vite:extendConfig", (config) => {
// @ts-expect-error
config.plugins.push(vuetify({ autoImport: true }))
})
},
],
2024-08-20 01:43:21 +00:00
gtag: {
2024-08-20 02:05:59 +00:00
id: "G-ZFJ7RX0JXF",
2024-08-20 01:43:21 +00:00
},
2024-07-02 15:07:22 +00:00
vite: {
vue: {
template: {
transformAssetUrls,
},
},
},
compatibilityDate: "2024-08-10",
2024-08-10 05:47:34 +00:00
})