2023-11-27 13:18:38 +01:00
|
|
|
import { defineConfig } from 'vite'
|
|
|
|
import laravel from 'laravel-vite-plugin'
|
|
|
|
import vue from '@vitejs/plugin-vue'
|
|
|
|
import i18n from 'laravel-vue-i18n/vite'
|
|
|
|
import AutoImport from 'unplugin-auto-import/vite'
|
|
|
|
import version from './vite.version'
|
2023-09-20 16:06:01 +02:00
|
|
|
|
2023-12-29 00:21:52 +01:00
|
|
|
const ASSET_URL = process.env.ASSET_URL || ''
|
|
|
|
|
2023-09-20 16:06:01 +02:00
|
|
|
export default defineConfig({
|
2023-12-29 00:21:52 +01:00
|
|
|
base: `${ASSET_URL}`,
|
2023-09-20 16:06:01 +02:00
|
|
|
plugins: [
|
|
|
|
laravel([
|
2023-12-01 15:29:26 +01:00
|
|
|
'resources/js/app.js',
|
2023-09-20 16:06:01 +02:00
|
|
|
]),
|
|
|
|
vue({
|
|
|
|
template: {
|
|
|
|
transformAssetUrls: {
|
|
|
|
// The Vue plugin will re-write asset URLs, when referenced
|
|
|
|
// in Single File Components, to point to the Laravel web
|
|
|
|
// server. Setting this to `null` allows the Laravel plugin
|
|
|
|
// to instead re-write asset URLs to point to the Vite
|
|
|
|
// server instead.
|
|
|
|
base: null,
|
|
|
|
|
|
|
|
// The Vue plugin will parse absolute URLs and treat them
|
|
|
|
// as absolute paths to files on disk. Setting this to
|
|
|
|
// `false` will leave absolute URLs un-touched so they can
|
|
|
|
// reference assets in the public directory as expected.
|
|
|
|
includeAbsolute: false,
|
|
|
|
},
|
|
|
|
},
|
|
|
|
}),
|
2023-09-22 12:00:16 +02:00
|
|
|
i18n('resources/lang'),
|
2023-09-27 10:44:54 +02:00
|
|
|
AutoImport({
|
|
|
|
// https://github.com/unplugin/unplugin-auto-import?tab=readme-ov-file#configuration
|
|
|
|
imports: [
|
|
|
|
'vue',
|
|
|
|
'vue-router',
|
|
|
|
'pinia',
|
|
|
|
{
|
|
|
|
'@vueuse/core': [
|
|
|
|
'useStorage',
|
2023-09-29 13:19:58 +02:00
|
|
|
'useClipboard',
|
2023-10-04 09:30:05 +02:00
|
|
|
'useNavigatorLanguage'
|
2023-09-29 13:19:58 +02:00
|
|
|
],
|
2023-09-27 10:44:54 +02:00
|
|
|
'laravel-vue-i18n': [
|
|
|
|
'i18nVue',
|
2023-10-04 09:30:05 +02:00
|
|
|
'trans',
|
|
|
|
'wTrans',
|
|
|
|
'getActiveLanguage',
|
|
|
|
'loadLanguageAsync',
|
|
|
|
'getActiveLanguage'
|
2023-09-27 10:44:54 +02:00
|
|
|
],
|
|
|
|
'@kyvg/vue3-notification': [
|
|
|
|
'useNotification'
|
|
|
|
],
|
|
|
|
},
|
|
|
|
],
|
|
|
|
// resolvers: [
|
|
|
|
// ElementPlusResolver(),
|
|
|
|
// ],
|
|
|
|
dirs: [
|
|
|
|
'@/composables/**',
|
|
|
|
],
|
|
|
|
vueTemplate: true,
|
|
|
|
}),
|
2023-09-20 16:06:01 +02:00
|
|
|
],
|
2023-09-20 17:34:33 +02:00
|
|
|
resolve: {
|
|
|
|
alias: {
|
2023-12-01 15:29:26 +01:00
|
|
|
'@': '/resources/js',
|
2023-09-20 17:34:33 +02:00
|
|
|
},
|
|
|
|
},
|
2023-11-27 13:18:38 +01:00
|
|
|
build: {
|
2024-09-27 17:06:43 +02:00
|
|
|
// sourcemap: true,
|
2023-11-27 13:18:38 +01:00
|
|
|
rollupOptions: {
|
|
|
|
output: {
|
2024-03-31 16:06:46 +02:00
|
|
|
banner: '/*! 2FAuth version ' + version + ' - Copyright (c) 2024 Bubka - https://github.com/Bubka/2FAuth */',
|
2023-11-27 13:18:38 +01:00
|
|
|
},
|
|
|
|
},
|
|
|
|
},
|
2024-04-22 14:59:20 +02:00
|
|
|
// server: {
|
|
|
|
// watch: {
|
|
|
|
// followSymlinks: false,
|
|
|
|
// }
|
|
|
|
// }
|
2023-11-27 13:18:38 +01:00
|
|
|
});
|