♻️ Migrated to new UI

This commit is contained in:
2025-11-30 03:10:12 +08:00
parent a06e0cb76a
commit 2598f6c112
10 changed files with 349 additions and 120 deletions

View File

@@ -1,52 +1,86 @@
import tailwindcss from "@tailwindcss/vite";
import AutoImport from "unplugin-auto-import/vite";
import Components from "unplugin-vue-components/vite";
import { NaiveUiResolver } from "unplugin-vue-components/resolvers";
import { generateTailwindColorThemes } from "@bg-dev/nuxt-naiveui/utils";
// https://nuxt.com/docs/api/configuration/nuxt-config
export default defineNuxtConfig({
compatibilityDate: "2025-07-15",
devtools: { enabled: true },
ssr: false,
css: ["~/assets/css/main.css"],
app: {
pageTransition: { name: "page", mode: "out-in" },
head: {
title: "Solsynth",
titleTemplate: "%s - Solsynth",
link: [{ rel: "icon", type: "image/png", href: "/favicon.png" }],
},
},
scripts: {
globals: {
umami: {
src: "https://cloud.umami.is/script.js",
"data-website-id": "eef151fb-07e2-461b-8b7f-2547aab735d4",
defer: true,
},
},
},
nitro: {
preset: "cloudflare_module",
cloudflare: {
deployConfig: true,
wrangler: {
d1_databases: [
{
binding: "DB",
database_name: "capital-content",
database_id: "73d65123-3c42-4dc9-b540-8e89678962a2",
},
],
},
},
},
content: {
database: {
type: "d1",
bindingName: "DB",
},
},
nitro: {},
modules: [
"@nuxt/content",
"@nuxt/eslint",
"@nuxt/image",
"@nuxt/scripts",
"@nuxtjs/tailwindcss",
"nuxtjs-naive-ui",
"@vueuse/nuxt",
"@eschricht/nuxt-color-mode",
"@bg-dev/nuxt-naiveui",
],
vite: {
plugins: [
tailwindcss(),
AutoImport({
imports: [
{
"naive-ui": [
"useDialog",
"useMessage",
"useNotification",
"useLoadingBar",
],
},
],
}),
Components({
resolvers: [NaiveUiResolver()],
}),
],
},
naiveui: {
colorModePreference: "system",
colorModePreferenceCookieName: "fi-ColorMode",
themeConfig: {
...generateTailwindColorThemes(),
shared: {
common: {
fontFamily:
"Nunito Variable, v-sans, ui-system, -apple-system, sans-serif",
primaryColor: "#3F51B5FF",
primaryColorHover: "#5767C1FF",
primaryColorPressed: "#3546A4FF",
primaryColorSuppl: "#4C5EC5FF",
borderRadius: "16px",
borderRadiusSmall: "8px",
},
Input: {
borderRadius: "8px",
},
Select: {
borderRadius: "8px",
},
Dropdown: {
borderRadius: "8px",
},
Button: {
borderRadius: "8px",
borderRadiusLarge: "12px",
borderRadiusMedium: "8px",
borderRadiusSmall: "4px",
},
},
light: {},
dark: {},
},
},
});