ObsiViewer/docs/CORRECTIONS_SUMMARY.md

109 lines
2.4 KiB
Markdown

# Résumé des corrections - Bookmarks
## 🔍 Tests échoués (3/18)
-**Test 3**: Drag vers la racine
-**Test 4**: Drag entre groupes
-**Test 5**: Détection de cycles
## ✅ Corrections appliquées
### 1. Logique de déplacement corrigée
**Fichier**: `src/core/bookmarks/bookmarks.utils.ts`
**Problème**: L'index n'était pas ajusté lors du réordonnancement dans le même conteneur.
**Fix**: Ajout de la logique d'ajustement d'index:
```typescript
if (oldParentCtime === newParentCtime && oldIndex < newIndex) {
adjustedIndex = newIndex - 1;
}
```
### 2. Logs de debug ajoutés
**Fichiers**:
- `src/components/bookmarks-panel/bookmarks-panel.component.ts`
- `src/components/bookmark-item/bookmark-item.component.ts`
**Utilité**: Permet de voir exactement ce qui se passe lors du drag & drop dans la console.
### 3. JSON invalide corrigé
**Fichier**: `vault/.obsidian/bookmarks.json`
**Problème**: Path sans extension `.md`
```json
"path": "groupeC" // ❌
```
**Fix**:
```json
"path": "groupeC.md" // ✅
```
## 🧪 Pour tester
```bash
# 1. Rebuild
npm run build
# 2. Relancer le serveur
node server/index.mjs
# 3. Ouvrir http://localhost:3000
# 4. Ouvrir DevTools (F12) - Console
```
### Test 3: Drag vers racine
1. Créer un groupe avec un bookmark
2. Drag le bookmark vers "Drop here to move to root"
3. **Observer les logs dans la console**
4. Vérifier que le bookmark est à la racine
### Test 4: Drag entre groupes
1. Créer 2 groupes (A et B)
2. Ajouter un bookmark dans A
3. Drag vers B
4. **Observer les logs**
5. Vérifier que le bookmark est dans B
### Test 5: Détection de cycles
1. Créer Groupe A contenant Groupe B
2. Tenter de drag A dans B
3. **Observer le warning**: "Cannot move a parent into its own descendant"
4. Vérifier que rien n'a changé
## 📝 Notes importantes
### Problème de titre avec path complet
Dans votre JSON ligne 48:
```json
"title": "folder/test2.md" // ❌ Path complet
```
**Solution**: Supprimer le champ `title` pour utiliser le basename automatique:
```json
{
"type": "file",
"path": "folder/test2.md"
// Pas de title → affichera "test2.md"
}
```
## 📊 Résultats attendus
Après corrections:
- ✅ Test 3: PASS
- ✅ Test 4: PASS
- ✅ Test 5: PASS
**Total**: 15/18 PASS (les 3 tests corrigés + les 12 autres déjà passés)
---
Consultez `docs/BOOKMARKS_FIXES.md` pour plus de détails et diagnostics.