schon/storefront/astro.config.mjs

50 lines
No EOL
1.4 KiB
JavaScript

import { defineConfig } from 'astro/config';
import node from '@astrojs/node';
import vue from '@astrojs/vue';
import {fileURLToPath, URL} from "node:url";
import {DEFAULT_LOCALE, SUPPORTED_LOCALES} from "/src/config/index.js";
// https://astro.build/config
export default defineConfig({
integrations: [
vue({
appEntrypoint: '/src/plugins/index.js',
devtools: { launchEditor: "webstorm" }
}),
],
i18n: {
defaultLocale: DEFAULT_LOCALE,
locales: SUPPORTED_LOCALES.map(locale => locale.code),
routing: {
prefixDefaultLocale: true
}
},
output: 'server',
adapter: node({
mode: 'standalone'
}),
vite: {
// envDir: './',
envPrefix: 'EVIBES_',
resolve: {
alias: {
'@': fileURLToPath(new URL('./src', import.meta.url)),
'@core': fileURLToPath(new URL('./src/core', import.meta.url)),
'@graphql': fileURLToPath(new URL('./src/graphql', import.meta.url)),
'@styles': fileURLToPath(new URL('./src/assets/styles', import.meta.url)),
'@icons': fileURLToPath(new URL('./src/assets/icons', import.meta.url)),
'@images': fileURLToPath(new URL('./src/assets/images', import.meta.url)),
}
},
css: {
preprocessorOptions: {
scss: {
additionalData: `
@use "@/assets/styles/global/variables.scss" as *;
@use "@/assets/styles/global/mixins.scss" as *;
`
}
}
},
}
});