correction vite
This commit is contained in:
parent
4b7d3c11b0
commit
0401b8a1aa
@ -1,15 +1,15 @@
|
||||
{
|
||||
"scripts": {
|
||||
"dev": "vite --mode development",
|
||||
"build": "vite build",
|
||||
"watch": "vite build --watch",
|
||||
"dev": "vite build --watch --mode development"
|
||||
"watch": "vite build --watch --mode development"
|
||||
},
|
||||
"dependencies": {
|
||||
"@fullcalendar/core": "^6.1.18",
|
||||
"@fullcalendar/daygrid": "^6.1.18",
|
||||
"@fullcalendar/timegrid": "^6.1.18",
|
||||
"@fullcalendar/list": "^6.1.18",
|
||||
"@fullcalendar/interaction": "^6.1.18",
|
||||
"@fullcalendar/list": "^6.1.18",
|
||||
"@fullcalendar/timegrid": "^6.1.18",
|
||||
"bootstrap": "^5.3.7",
|
||||
"select2": "^4.0.13",
|
||||
"toastr": "^2.1.4"
|
||||
@ -18,3 +18,4 @@
|
||||
"vite": "^7.0.3"
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@ -1,89 +1,70 @@
|
||||
import { defineConfig } from 'vite';
|
||||
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',
|
||||
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: 'traduction-langue-admin.js',
|
||||
traduction_langue_admin_css: '../css/traduction-langue-admin.css',
|
||||
traduction_langue_list: 'traduction-langue-list.js',
|
||||
traduction_langue_list_css: '../css/traduction-langue-list.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', // Format ES modules
|
||||
format: 'es',
|
||||
entryFileNames: '[name].min.js',
|
||||
assetFileNames: (assetInfo) => {
|
||||
// Renommer le CSS extrait automatiquement de crvi_libraries.js
|
||||
if (assetInfo.name && (assetInfo.name.includes('crvi_libraries') && assetInfo.name.endsWith('.css'))) {
|
||||
return 'crvi_libraries.min.css';
|
||||
}
|
||||
// Renommer le CSS des libraries (si entrée séparée)
|
||||
if (assetInfo.name && assetInfo.name.includes('crvi_libraries_css')) {
|
||||
return 'crvi_libraries.min.css';
|
||||
}
|
||||
// Renommer le fichier CSS principal en crvi_main.min.css
|
||||
if (assetInfo.name && assetInfo.name.includes('crvi_main_css')) {
|
||||
return 'crvi_main.min.css';
|
||||
}
|
||||
// Renommer le CSS du profil intervenant
|
||||
if (assetInfo.name && assetInfo.name.includes('intervenant_profile_css')) {
|
||||
return 'intervenant-profile.min.css';
|
||||
}
|
||||
// Renommer le CSS de traduction-langue admin
|
||||
if (assetInfo.name && assetInfo.name.includes('traduction_langue_admin_css')) {
|
||||
return 'traduction-langue-admin.min.css';
|
||||
}
|
||||
// Renommer le CSS de traduction-langue list
|
||||
if (assetInfo.name && assetInfo.name.includes('traduction_langue_list_css')) {
|
||||
return 'traduction-langue-list.min.css';
|
||||
}
|
||||
// Pour les autres assets CSS, utiliser le pattern par défaut
|
||||
if (assetInfo.name && assetInfo.name.endsWith('.css')) {
|
||||
return '[name].min.css';
|
||||
}
|
||||
return '[name].min.[ext]';
|
||||
},
|
||||
// Séparer les librairies externes des modules locaux
|
||||
manualChunks: (id) => {
|
||||
// Si c'est le fichier crvi_libraries.js, tout va dans crvi_libraries
|
||||
if (id.includes('crvi_libraries.js')) {
|
||||
return 'crvi_libraries';
|
||||
}
|
||||
// Détecter les node_modules (librairies externes)
|
||||
if (id.includes('node_modules')) {
|
||||
// Séparer Bootstrap, Toastr, FullCalendar et leurs dépendances dans le chunk libraries
|
||||
if (id.includes('bootstrap') ||
|
||||
id.includes('toastr') ||
|
||||
id.includes('select2') ||
|
||||
id.includes('@fullcalendar') ||
|
||||
id.includes('@popperjs') ||
|
||||
id.includes('jquery')) {
|
||||
return 'crvi_libraries';
|
||||
}
|
||||
// Autres node_modules - inclure dans libraries aussi
|
||||
return 'crvi_libraries';
|
||||
}
|
||||
// Les modules locaux restent dans crvi_main
|
||||
return null;
|
||||
},
|
||||
chunkFileNames: '[name].min.js',
|
||||
globals: {
|
||||
'jquery': 'jQuery',
|
||||
'toastr': 'toastr',
|
||||
'select2': 'select2'
|
||||
|
||||
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
|
||||
}
|
||||
}
|
||||
},
|
||||
// Forcer la transpilation pour compatibilité navigateur
|
||||
target: 'es2015',
|
||||
minify: true // Utilise esbuild par défaut (plus rapide que terser)
|
||||
}
|
||||
},
|
||||
|
||||
define: {
|
||||
global: 'window'
|
||||
}
|
||||
});
|
||||
})
|
||||
|
||||
Loading…
Reference in New Issue
Block a user