mirror of
https://github.com/R0m1k3/noteflow.git
synced 2026-10-20 21:59:04 +02:00
Feature: Affichage tags et icône priorité dans les cartes notes
Ajout de deux nouvelles fonctionnalités pour les notes: 1. Affichage des tags dans les cartes repliées: - Les tags sont maintenant visibles dans les cartes de notes sans avoir à les ouvrir - Badge avec icône TagIcon et nom du tag - Chargement automatique des tags depuis la base de données 2. Icône de priorité cliquable: - Bouton "!" en haut à droite de chaque carte de note - Rouge (!) quand la note est prioritaire (toujours visible) - Gris clair (!) quand non prioritaire (visible au hover) - Toggle au clic pour marquer/démarquer comme prioritaire - Les notes prioritaires sont triées en premier Backend: - Route PATCH /api/notes/:id/priority pour toggle la priorité - Modification GET /api/notes pour charger tags et priority - Tri par priority DESC, updated_at DESC - Migration automatique pour ajouter colonne priority - Index pour performance des requêtes de tri Frontend: - Interface Note étendue avec tags et priority - Méthode togglePriority dans NotesService - Affichage conditionnel de l'icône (toujours visible si prioritaire) - Empêche le clic sur l'icône d'ouvrir la note (stopPropagation) Migration: - Ajout automatique de la colonne priority (INTEGER DEFAULT 0) - Création d'index idx_notes_priority pour performance - Fichier de migration 002_add_priority.sql créé pour référence
This commit is contained in:
5 files changed
+119
-7
No files matched your search
@@ -242,6 +242,7 @@ function initDatabase() {
|
||||
|
||||
const hasImageFilename = columns.some(col => col.name === 'image_filename');
|
||||
const hasArchived = columns.some(col => col.name === 'archived');
|
||||
const hasPriority = columns.some(col => col.name === 'priority');
|
||||
|
||||
if (!hasImageFilename) {
|
||||
logger.info('Migration: Ajout de la colonne image_filename...');
|
||||
@@ -264,6 +265,25 @@ function initDatabase() {
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
if (!hasPriority) {
|
||||
logger.info('Migration: Ajout de la colonne priority...');
|
||||
db.run('ALTER TABLE notes ADD COLUMN priority INTEGER DEFAULT 0', (err) => {
|
||||
if (err) {
|
||||
logger.error('Erreur lors de l\'ajout de la colonne priority:', err);
|
||||
} else {
|
||||
logger.info('✓ Colonne priority ajoutée avec succès');
|
||||
// Créer l'index pour la performance
|
||||
db.run('CREATE INDEX IF NOT EXISTS idx_notes_priority ON notes(priority DESC, updated_at DESC)', (indexErr) => {
|
||||
if (indexErr) {
|
||||
logger.error('Erreur lors de la création de l\'index priority:', indexErr);
|
||||
} else {
|
||||
logger.info('✓ Index priority créé avec succès');
|
||||
}
|
||||
});
|
||||
}
|
||||
});
|
||||
}
|
||||
});
|
||||
|
||||
// Créer l'utilisateur admin par défaut si la table est vide
|
||||
|
||||
Reference in new issue
Block a user