49 lines
1.2 KiB
JavaScript
Executable File
49 lines
1.2 KiB
JavaScript
Executable File
import { createApp, nextTick } from 'vue'
|
|
import { createPinia } from 'pinia'
|
|
import Toast from 'vue-toastification'
|
|
import 'vue-toastification/dist/index.css'
|
|
|
|
import App from './App.vue'
|
|
import router from './router'
|
|
import './style.css'
|
|
|
|
// Créer l'application
|
|
const app = createApp(App)
|
|
|
|
// Créer et configurer Pinia
|
|
const pinia = createPinia()
|
|
|
|
// Toast configuration
|
|
const toastOptions = {
|
|
position: 'top-right',
|
|
timeout: 3000,
|
|
closeOnClick: true,
|
|
pauseOnFocusLoss: true,
|
|
pauseOnHover: true,
|
|
draggable: true,
|
|
draggablePercent: 0.6,
|
|
showCloseButtonOnHover: false,
|
|
hideProgressBar: false,
|
|
closeButton: 'button',
|
|
icon: true,
|
|
rtl: false
|
|
}
|
|
|
|
// Installer les plugins dans l'ordre correct
|
|
// IMPORTANT: Pinia doit être installé AVANT le router
|
|
app.use(pinia)
|
|
app.use(Toast, toastOptions)
|
|
|
|
// Maintenant installer le router
|
|
app.use(router)
|
|
|
|
// Attendre que le router soit prêt avant de monter l'app
|
|
router.isReady().then(() => {
|
|
app.mount('#app')
|
|
console.log('🚀 Application montée avec succès')
|
|
}).catch((error) => {
|
|
console.error('❌ Erreur lors du montage de l\'application:', error)
|
|
// Fallback: monter l'app même en cas d'erreur
|
|
app.mount('#app')
|
|
})
|