71 lines
2.2 KiB
JavaScript
71 lines
2.2 KiB
JavaScript
import { defineConfig } from 'vite'
|
|
|
|
export default defineConfig({
|
|
root: '.',
|
|
|
|
build: {
|
|
outDir: 'dist',
|
|
target: 'es2015',
|
|
minify: true,
|
|
|
|
rollupOptions: {
|
|
input: {
|
|
crvi_libraries: './crvi_libraries.js',
|
|
crvi_main: './crvi_main.js',
|
|
|
|
// Entrées CSS (OK avec Vite/Rollup)
|
|
crvi_main_css: '../css/crvi_main.css',
|
|
intervenant_profile_css: '../css/intervenant-profile.css',
|
|
traduction_langue_admin_css: '../css/traduction-langue-admin.css',
|
|
traduction_langue_list_css: '../css/traduction-langue-list.css',
|
|
|
|
traduction_langue_admin: './traduction-langue-admin.js',
|
|
traduction_langue_list: './traduction-langue-list.js'
|
|
},
|
|
|
|
// Important: en "es", `globals` ne sert pas.
|
|
// Si tu veux éviter de bundler jquery/toastr/select2 car chargés via <script>:
|
|
// external: ['jquery', 'toastr', 'select2'],
|
|
|
|
output: {
|
|
format: 'es',
|
|
entryFileNames: '[name].min.js',
|
|
chunkFileNames: '[name].min.js',
|
|
|
|
assetFileNames: (assetInfo) => {
|
|
const name = assetInfo.name || ''
|
|
|
|
// CSS extrait depuis une entry JS (ex: crvi_libraries.js -> crvi_libraries.css)
|
|
if (name.includes('crvi_libraries') && name.endsWith('.css')) {
|
|
return 'crvi_libraries.min.css'
|
|
}
|
|
|
|
// Entrées CSS séparées
|
|
if (name.includes('crvi_main_css')) return 'crvi_main.min.css'
|
|
if (name.includes('intervenant_profile_css')) return 'intervenant-profile.min.css'
|
|
if (name.includes('traduction_langue_admin_css')) return 'traduction-langue-admin.min.css'
|
|
if (name.includes('traduction_langue_list_css')) return 'traduction-langue-list.min.css'
|
|
|
|
// Autres CSS / assets
|
|
if (name.endsWith('.css')) return '[name].min.css'
|
|
return '[name].min.[ext]'
|
|
},
|
|
|
|
manualChunks: (id) => {
|
|
// Node_modules -> crvi_libraries (bundle commun)
|
|
if (id.includes('node_modules')) return 'crvi_libraries'
|
|
|
|
// Optionnel: forcer aussi certains fichiers locaux dans crvi_libraries
|
|
if (id.includes('crvi_libraries.js')) return 'crvi_libraries'
|
|
|
|
return null
|
|
}
|
|
}
|
|
}
|
|
},
|
|
|
|
define: {
|
|
global: 'window'
|
|
}
|
|
})
|