v4.0.0 — Route publique /p/<slug>, correctifs publish/share UI
- Ajout route /p/<slug> qui sert les pages publiées (no auth, rendu HTML blocks)
- Template public_page.html — design épuré Notion-style
- Fix publishPage()/unpublishPage(): vérifient d.is_published au lieu de d.status==='ok'
- Fix shareInvite(): vérifie d.status==='shared'
- Fix removeShare(): vérifie d.status==='removed'
- ROADMAP.md: toutes les sections 4.0a-4.0e cochées ✅ (déjà implémentées)
- Version bump 2.5.0 → 4.0.0
This commit is contained in:
+35
-34
@@ -172,44 +172,45 @@ Propriétés custom, AI keywords, sync API, 12 tables DB
|
||||
|
||||
---
|
||||
|
||||
## v4.0.0 — Accounts, Integrations & Sidebar (priorité haute)
|
||||
## v4.0.0 — Accounts, Integrations & Sidebar (priorité haute) ✅ COMPLETED
|
||||
|
||||
> **Rappel** : Section 6.5 de ARCHITECTURE.md documente le design complet.
|
||||
> **Complété** : 2026-07-14 (v2.7.1–v3.0.0) + route publique 2026-07-18.
|
||||
|
||||
### 4.0 Account Model
|
||||
- [ ] **`auth_method`** — colonne `users.auth_method ∈ {local, gitea, github}`
|
||||
- [ ] **Auto-détection** — migrer les comptes existants (gitea_token → gitea, sinon local)
|
||||
- [ ] **Badge OAuth** — 🦎/🐙 dans sidebar SI `auth_method` = provider
|
||||
- [ ] **Pas de badge** — un compte local avec intégration ne montre PAS de badge
|
||||
### 4.0 Account Model ✅
|
||||
- [x] **`auth_method`** — colonne `users.auth_method ∈ {local, gitea, github}`
|
||||
- [x] **Auto-détection** — migrer les comptes existants (gitea_token → gitea, sinon local)
|
||||
- [x] **Badge OAuth** — 🦎/🐙 dans sidebar SI `auth_method` = provider
|
||||
- [x] **Pas de badge** — un compte local avec intégration ne montre PAS de badge
|
||||
|
||||
### 4.0a Intégrations & Déconnexion
|
||||
- [ ] **Settings page** — montre toutes les intégrations avec bouton Connect/Disconnect
|
||||
- [ ] **Matrice déconnexion** : local→déco ok · gitea→déco github ok · github→déco gitea ok
|
||||
- [ ] **Provider principal** — pas de bouton Disconnect sur auth_method
|
||||
- [ ] **Compte local** — peut connecter Gitea + GitHub simultanément
|
||||
### 4.0a Intégrations & Déconnexion ✅
|
||||
- [x] **Settings page** — montre toutes les intégrations avec bouton Connect/Disconnect
|
||||
- [x] **Matrice déconnexion** : local→déco ok · gitea→déco github ok · github→déco gitea ok
|
||||
- [x] **Provider principal** — pas de bouton Disconnect sur auth_method
|
||||
- [x] **Compte local** — peut connecter Gitea + GitHub simultanément
|
||||
|
||||
### 4.0b Sidebar — règles par type de compte
|
||||
- [ ] **Private visible** UNIQUEMENT si workspace actif est distant (Gitea/GitHub)
|
||||
- [ ] **Private caché** pour Scénario A (local pur)
|
||||
- [ ] **Trash local-only** — caché pour compte OAuth pur, restreint au contenu local
|
||||
- [ ] **Boutons → Library** sur chaque section (recents, favorites, shared, published…)
|
||||
### 4.0b Sidebar — règles par type de compte ✅
|
||||
- [x] **Private visible** UNIQUEMENT si workspace actif est distant (Gitea/GitHub)
|
||||
- [x] **Private caché** pour Scénario A (local pur)
|
||||
- [x] **Trash local-only** — caché pour compte OAuth pur, restreint au contenu local
|
||||
- [x] **Boutons → Library** sur chaque section (recents, favorites, shared, published…)
|
||||
|
||||
### 4.0c Share & Publish
|
||||
- [ ] **Modale Share** — 2 tabs (Share + Publish) fonctionnels
|
||||
- [ ] **Share tab** — inviter email/user, général access lien
|
||||
- [ ] **Publish tab** — activer/désactiver, slug généré
|
||||
- [ ] **Page publique** — `/p/<slug>` sert le contenu publié
|
||||
- [ ] **Tables DB** — `page_shares`, colonnes `is_published`, `is_shared`, `share_mode`
|
||||
### 4.0c Share & Publish ✅
|
||||
- [x] **Modale Share** — 2 tabs (Share + Publish) fonctionnels
|
||||
- [x] **Share tab** — inviter email/user, général access lien
|
||||
- [x] **Publish tab** — activer/désactiver, slug généré
|
||||
- [x] **Page publique** — `/p/<slug>` sert le contenu publié (no auth)
|
||||
- [x] **Tables DB** — `page_shares`, colonnes `is_published`, `is_shared`, `share_mode`
|
||||
|
||||
### 4.0d Library
|
||||
- [ ] **Page `/library?tab=`** — tabs Recents, Favorites, Shared, Published, Private, Workspace
|
||||
- [ ] **Filtres source** — All | Local | Gitea | GitHub
|
||||
- [ ] **Table `recents`** — tracking automatique des documents consultés
|
||||
### 4.0d Library ✅
|
||||
- [x] **Page `/library?tab=`** — tabs Recents, Favorites, Shared, Published, Private, Workspace
|
||||
- [x] **Filtres source** — All | Local | Gitea | GitHub
|
||||
- [x] **Table `recents`** — tracking automatique des documents consultés
|
||||
|
||||
### 4.0e Édition unifiée
|
||||
- [ ] **Même UI** pour fichiers locaux ET distants
|
||||
- [ ] **Bouton Commit** — visible uniquement pour fichiers distants
|
||||
- [ ] **Champ message** — pour les commits Gitea/GitHub
|
||||
### 4.0e Édition unifiée ✅
|
||||
- [x] **Même UI** pour fichiers locaux ET distants
|
||||
- [x] **Bouton Commit** — visible uniquement pour fichiers distants
|
||||
- [x] **Champ message** — pour les commits Gitea/GitHub
|
||||
|
||||
---
|
||||
|
||||
@@ -326,9 +327,9 @@ v2.0.0 ✅ v2.1.0 ✅ v2.2.0 ✅ v2.3.0 ✅ v2.4.0 ✅ v2.5.0 ✅ v2.6.0
|
||||
Editor+ Workspace Tags Views5 Tags/user Admin Account Gitea P1
|
||||
Local Panel
|
||||
|
||||
v2.7.1 ✅ v2.8.0 ✅ v2.9.0 ✅ v3.0.0 ✅ v3.0.1 ✅ v4.0.0 ⬜ v4.1.0 ⬜
|
||||
Private Gitea P2 GitHub Pro UX Quality Notion Pro
|
||||
Pages
|
||||
v2.7.1 ✅ v2.8.0 ✅ v2.9.0 ✅ v3.0.0 ✅ v3.0.1 ✅ v4.0.0 ✅ v4.1.0 ⬜
|
||||
Private Gitea P2 GitHub Pro UX Quality Accounts+ Pro
|
||||
Pages Parité
|
||||
```
|
||||
|
||||
*Dernière mise à jour: 2026-07-14 — v4.0.0 planifié*
|
||||
*Dernière mise à jour: 2026-07-18 — v4.0.0 Accounts/Integrations complété, route publique /p/<slug> ajoutée*
|
||||
|
||||
Reference in New Issue
Block a user