- Sélecteur de vue avec 5 modes: Tree, List, Details, Title, Content - Vue List: compacte (Name, Type, Size, Modified) - Vue Details: table complète (Path, Author, Tags) - Vue Title: grille de cartes avec icônes - Vue Content: liste avec aperçu inline - Preview Panel: panneau latéral avec rendu contenu + métadonnées + actions - Animation slide-in/out pour le preview panel - Tri par date (Oldest/Newest)
125 lines
5.2 KiB
Markdown
125 lines
5.2 KiB
Markdown
# Changelog — FlowDeck
|
||
|
||
## v2.3.0 (2026-07-12) — Multi-Vues Workspace & Preview Panel
|
||
|
||
### Added
|
||
- **Sélecteur de vue**: 🌳 Tree, 📋 List, 📊 Details, 🏷️ Title, 📝 Content — 5 modes d'affichage
|
||
- **Vue List**: liste compacte avec Name, Type, Size, Modified
|
||
- **Vue Details**: table complète avec Path, Author, Tags
|
||
- **Vue Title**: grille de cartes avec icônes et métadonnées
|
||
- **Vue Content**: liste avec aperçu inline (taille ou nombre d'items)
|
||
- **Preview Panel**: panneau latéral droit avec contenu du fichier sélectionné
|
||
- Header avec icône + titre + bouton fermer
|
||
- Métadonnées (type, taille, date)
|
||
- Tags affichés en chips
|
||
- Corps avec rendu du contenu (blocks JSON → HTML, texte brut)
|
||
- Actions: Open, Rename, Delete
|
||
- Animation slide-in/out
|
||
- **Tri par date**: options Oldest/Newest dans le selecteur de tri
|
||
|
||
## v2.2.0 (2026-07-12) — Tags & Recherche Avancée
|
||
|
||
### Added
|
||
- **Tags**: système complet de tags avec tables `tags` + `page_tags`, CRUD API
|
||
- **API Tags**: `GET/POST/DELETE /api/local-workspace/items/{id}/tags`, `GET /api/local-workspace/tags`, `GET /api/local-workspace/tags/search?tags=...`
|
||
- **Vue Table enrichie**: colonnes Name, Path, Size, Modified, Type, Author, Tags
|
||
- **Filtrage par tags**: barre de chips avec compteurs, clic pour filtrer
|
||
- **Ajout/retrait tags inline**: bouton + dans la table, chips avec × pour retirer
|
||
- **Tree endpoint enrichi**: chaque nœud retourne `size`, `size_display`, `created_at`, `updated_at`, `author`, `tags`
|
||
- **Filtre "Dossiers"**: nouveau chip 📁 Folders dans la barre de filtres
|
||
- **Auto-switch table**: quand recherche/filtre actif, passe en vue table automatiquement
|
||
|
||
## v2.1.1 (2026-07-12) — Fix Arborescence Workspace
|
||
|
||
### Fixed
|
||
- **Arborescence**: création fichier/dossier dans un sous-dossier met à jour l'arbre sans rechargement
|
||
- **parentFolder**: corrigé le bug où `parentFolder` était nullifié avant l'insertion dans l'arbre JS
|
||
- **displayTree**: nouvelle référence array après chaque mutation pour forcer le re-render Alpine.js
|
||
- **doSort/doFilter**: gèrent maintenant le cas où un filtre/tri est actif après création
|
||
- **_doUpload**: corrigé `this._reloadAfterAction` → `self._reloadAfterAction`
|
||
|
||
## v2.1.0 (2026-07-10) — Intégrations Avancées
|
||
|
||
### Added
|
||
- **API publique**: `/api/v1` (collections, pages, my-tasks) avec token auth
|
||
- **Token generation**: `POST /api/v1/token`
|
||
- **Webhooks sortants**: `GET/POST/DELETE /workspace/webhooks` + dispatcher
|
||
- **PWA**: `GET /manifest.json`
|
||
- **CSRF**: `/api/v1` exempté
|
||
|
||
### Tests
|
||
- 73/73 passent (+6 tests v2.1)
|
||
|
||
## v2.0.0 (2026-07-10) — Multi-User Workspaces & Editor Complete
|
||
|
||
### Added
|
||
- **Workspaces**: tables `workspaces` + `workspace_members`, CRUD API, roles admin/editor/commenter/viewer
|
||
- **Comments**: table `comments` avec thread (parent_id), resolved
|
||
- **Page History**: table `page_history`, snapshot JSON
|
||
- **Favorites**: table `favorites`, add/remove/list
|
||
- **Templates**: `database_templates` + `page_templates`, apply API
|
||
- **CSV Import/Export**: `POST .../import/csv`, `GET .../export/csv`
|
||
- **Public Sharing**: `GET /workspace/public/{id}` (read-only, no auth)
|
||
|
||
### Tests
|
||
- 67/67 passent (+7 tests v2.0)
|
||
|
||
## v1.9.0 (2026-07-10) — My Tasks Dashboard
|
||
|
||
### Added
|
||
- **My Tasks**: `GET /my-tasks` (HTML), `GET /my-tasks/api` (JSON)
|
||
- Agrégation cross-collection, vues All/Today/Overdue/Next 7 days
|
||
|
||
## v1.8.0 (2026-07-10) — Sub-items & Dependencies
|
||
|
||
### Added
|
||
- **Sub-items**: parent_id auto-référence, GET/POST sub-items
|
||
- **Status aggregate**: `GET .../status-aggregate`
|
||
- **Dependencies**: `POST .../dependencies`, `POST .../check-deps`
|
||
|
||
## v1.7.0 (2026-07-10) — Vues Améliorées
|
||
|
||
### Added
|
||
- **View config**: `PUT /db/views/{id}/config` (group_by, card_size, cover, visible)
|
||
- **Save view as**: `POST /db/{id}/views/save-as`
|
||
- **List views**: `GET /db/{id}/views/api`
|
||
|
||
## v1.6.0 (2026-07-10) — Vues Manquantes
|
||
|
||
### Added
|
||
- **Calendar**: grid mensuel, navigation mois
|
||
- **Gallery**: cartes visuelles, card_size configurable
|
||
- **List**: vue compacte avec preview
|
||
- **Timeline**: barres horizontales Gantt
|
||
- **Table**: rendu SSR avec colonnes properties
|
||
- **View tabs**: navigation Table/Board/Calendar/Gallery/List/Timeline
|
||
|
||
## v1.5.0 (2026-07-10) — Relations & Rollups
|
||
|
||
### Added
|
||
- **FormulaEngine**: 19 fonctions (prop, if, concat, round, now, today, dateAdd, replace, ...)
|
||
- **RollupEngine**: 12 agrégations (count, sum, avg, min, max, range, unique, percent_checked)
|
||
- **Relation**: lien bidirectionnel, API create/link
|
||
|
||
## v1.4.0 (2026-07-10) — Propriétés Avancées
|
||
|
||
### Added
|
||
- **Table `collection_properties`**: 21 types Notion
|
||
- **Service `property_types.py`**: validation, formatage, auto-values
|
||
|
||
## v1.3.0 (2026-07-10) — Database Concept
|
||
|
||
### Added
|
||
- **Tables**: `collections`, `collection_pages`, `collection_views`
|
||
- **Router `/db`**: CRUD collections + pages (16 endpoints)
|
||
- **GiteaBoardCompat**: adaptateur boards legacy → Collections
|
||
|
||
## v1.0.0 (2026-07-08) — Production
|
||
|
||
### Added
|
||
- FastAPI lifespan, 28 tests, CI/CD Gitea Actions, CSS 31KB, 10 templates
|
||
- 5 vues: Kanban, Table, Status Overview, Team Load, Detailed Board
|
||
- Filtres cumulables AND, tri multi-critères
|
||
- Card detail modal, checklists, commentaires Gitea
|
||
- Propriétés custom, AI keywords, sync API
|