diff --git a/vite.config.mts b/vite.config.mts index 6e5b61a..e284a81 100644 --- a/vite.config.mts +++ b/vite.config.mts @@ -1,10 +1,30 @@ import { URL, fileURLToPath } from 'node:url'; -import { defineConfig } from 'vite'; +import { defineConfig, normalizePath } from 'vite'; + import vue from '@vitejs/plugin-vue'; +import { viteStaticCopy } from 'vite-plugin-static-copy'; + +const { getAbsoluteFSPath } = await import('swagger-ui-dist'); +const swaggerUiPath = getAbsoluteFSPath(); // eslint-disable-next-line prefer-const const config = defineConfig({ - plugins: [vue()], + plugins: [ + vue(), + viteStaticCopy({ + targets: [ + { + src: [ + `${normalizePath(swaggerUiPath)}/*.{js,css,html,png}`, + `!${normalizePath(swaggerUiPath)}/**/index.html`, + normalizePath(fileURLToPath(new URL('./dist/axios.min.js', import.meta.resolve('axios/package.json')))), + normalizePath(fileURLToPath(new URL('./src/main/webapp/swagger-ui/index.html', import.meta.url))), + ], + dest: 'swagger-ui', + }, + ], + }), + ], root: fileURLToPath(new URL('./src/main/webapp/', import.meta.url)), publicDir: fileURLToPath(new URL('./target/classes/static/public', import.meta.url)), cacheDir: fileURLToPath(new URL('./target/.vite-cache', import.meta.url)),