Files
pc_builder/MIGRATION_CHECKLIST.md
T
2026-06-28 10:41:51 +02:00

157 lines
5.0 KiB
Markdown

# ✅ Checklist de Migration - Pages Inertia
## 📦 Fichiers Migrés
### Pages d'Authentification
- [x] `pages/auth/login.vue` - Page de connexion
- [x] `pages/auth/signup.vue` - Page d'inscription
- [x] `pages/account/signup.vue` - Création de compte
### Pages de Gestion des Composants
- [x] `pages/components/index.vue` - Liste
- [x] `pages/components/create.vue` - Création
- [x] `pages/components/edit.vue` - Édition
- [x] `pages/components/show.vue` - Détails
### Pages de Gestion des Ordinateurs
- [x] `pages/computers/index.vue` - Liste
- [x] `pages/computers/create.vue` - Création
- [x] `pages/computers/edit.vue` - Édition
- [x] `pages/computers/show.vue` - Détails
### Pages d'Erreur
- [x] `pages/errors/not_found.vue` - 404
- [x] `pages/errors/server_error.vue` - 500
### Layouts
- [x] `pages/layout/defaultLayout.vue` - Layout principal
- [x] `pages/layout/emptyLayout.vue` - Layout vide
- [x] `pages/layout/sidebar.vue` - Navigation
- [x] `pages/layout/header.vue` - En-tête
### Composants Réutilisables
- [x] `pages/widgets/AuthErrorAlert.vue`
- [x] `pages/widgets/ComponentEditor.vue`
- [x] `pages/widgets/ComponentsViewer.vue`
- [x] `pages/widgets/ComputerCard.vue`
- [x] `pages/widgets/ComputerComponentsTable.vue`
- [x] `pages/widgets/ComputersViewer.vue`
- [x] `pages/widgets/DeleteConfirmationModal.vue`
- [x] `pages/widgets/SimpleGallery.vue`
- [x] `pages/widgets/TableComponent.vue`
- [x] `pages/widgets/ValidationError.vue`
### Assets & Resources
- [x] `assets/icons/` - 18 fichiers SVG
- [x] `assets/images/` - Placeholders
- [x] `composables/isAdminMode.ts` - Gestion admin
- [x] `composables/useSidebar.ts` - Gestion sidebar
- [x] `directives/v_validation_error.ts` - Validation
- [x] `directives/v-delete-confirm.ts` - Confirmation
- [x] `directives/v-price.ts` - Formatage prix
- [x] `pages/types/UITypes.ts` - Types TypeScript
- [x] `app.ts` - Configuration Inertia (mise à jour)
## 📋 Étapes de Validation
### 1. Vérification des Imports
- [ ] Vérifier que tous les chemins d'import utilisent l'alias `~/`
- [ ] Vérifier que les imports de composants existent
- [ ] Vérifier que les imports d'icônes fonctionnent
### 2. Configuration du Routage
- [ ] Vérifier que les routes AdonisJS retournent les bonnes pages Inertia
- [ ] Tester la navigation entre les pages
- [ ] Vérifier les redirections de layout (auth vs. default)
### 3. Styles et CSS
- [ ] Vérifier que Tailwind CSS est chargé
- [ ] Tester le design responsive
- [ ] Vérifier l'apparence du sidebار et de l'en-tête
### 4. Composants & Directives
- [ ] Vérifier que VueDatePicker fonctionne
- [ ] Tester la directive v-validation-error
- [ ] Tester la directive v-price
- [ ] Tester la directive v-delete-confirm
- [ ] Vérifier les composants Carousel
### 5. Fonctionnalités
- [ ] Tester le toggle admin/classic mode
- [ ] Tester la barre latérale responsive
- [ ] Vérifier l'affichage du profil utilisateur
- [ ] Tester la déconnexion
### 6. Pages Critiques
- [ ] Page de connexion - formulaire et validation
- [ ] Page de création de composant - formulaire complet
- [ ] Page de liste des ordinateurs - grille responsive
- [ ] Page de détails - affichage corrects des données
- [ ] Pages d'erreur - design cohérent
## 🔧 Configuration Requise
### Dependencies Vérifiées
```json
{
"@adonisjs/inertia": "^1.0",
"@inertiajs/vue3": "^1.0",
"@adonisjs/core": "^6.0",
"vue": "^3.0",
"tailwindcss": "^3.0",
"@vuepic/vue-datepicker": "latest",
"vue3-carousel": "latest",
"vue-sonner": "latest"
}
```
## 🚨 Points d'Attention
1. **Base Données**: Assurez-vous que les modèles AdonisJS correspondent aux types TypeScript
2. **Authentification**: Vérifier que les guards et middlewares d'auth sont correctement configurés
3. **CSRF**: Vérifier que les tokens CSRF sont transmis correctement
4. **Permissions**: Vérifier que le mode admin accès les bonnes données
5. **Fichiers**: Adapter les chemins de fichiers uploadés si nécessaire
## 📝 Notes de Développement
### Modèles AdonisJS (À adapter)
Les pages supposent les modèles suivants dans `app/models/`:
- `Component` - Modèle de composant
- `Computer` - Modèle d'ordinateur
- `ComponentType` - Type de composant
- `ComputerState` - État d'ordinateur
- `User` - Utilisateur authentifié
### Types TypeScript
Les types sont définis dans `inertia/pages/types/UITypes.ts` - adapter selon vos modèles réels
### Chemins d'Import
L'alias `~/` est configuré pour pointer vers `inertia/`:
- `~/pages/``inertia/pages/`
- `~/composables/``inertia/composables/`
- `~/directives/``inertia/directives/`
- `~/assets/``inertia/assets/`
## 🎯 Résumé de la Migration
**Tous les fichiers Inertia ont été migrés de pc-builder vers pc-builderV2**
### Fichiers Créés: 45+
- 11 Pages Inertia
- 4 Layouts
- 10 Composants widgets
- 18 Icônes SVG
- 2 Composables
- 3 Directives
- 1 Fichier de types
### Fichiers Modifiés: 1
- `inertia/app.ts` - Configuration complète pour AdonisJS V7
---
**Date:** Juin 2026
**Status:** ✅ Terminé
**Prochaine Étape:** Adapter les controllers et routes AdonisJS