feat(v1.4.0): Propriétés Avancées — collection_properties, 21 types, API CRUD
- Table collection_properties (21 types Notion: number, checkbox, url, email, phone, status, files, unique_id, ...)
- Auto-propriétés: created_time, created_by, last_edited_time, last_edited_by
- Service property_types.py: validation, formatage, auto-values
- API: GET /db/property-types/api, CRUD /db/{id}/properties/api, PUT/DELETE /db/properties/{id}/api
- 38/38 tests passent (+4 nouveaux tests v1.4)
- Version 1.3.0 → 1.4.0
- Docs: ROADMAP, CHANGELOG, WORKLOAD, README à jour
This commit is contained in:
+20
-16
@@ -78,22 +78,26 @@ Propriétés custom, AI keywords, sync API, 12 tables DB
|
||||
|
||||
## Upcoming
|
||||
|
||||
### v1.4.0 — Propriétés Avancées (Bloc 2)
|
||||
### v1.4.0 ✅ — Propriétés Avancées (Bloc 2)
|
||||
### (2026-07-10)
|
||||
|
||||
- [ ] **Table `collection_properties`** — remplace `project_properties`
|
||||
- [x] **Table `collection_properties`** — remplace `project_properties`
|
||||
- Liée à `collections` (pas à `project_owner/name`)
|
||||
- Supporte tous les types Notion
|
||||
- [ ] **Type `number`** — avec formatage (nombre, %, €, $, £, ¥)
|
||||
- [ ] **Type `checkbox`** — booléen natif
|
||||
- [ ] **Type `url`** — lien cliquable
|
||||
- [ ] **Type `email`** — email cliquable
|
||||
- [ ] **Type `phone`** — téléphone cliquable
|
||||
- [ ] **Type `status`** — select avec couleurs forcées (9 couleurs Notion)
|
||||
- [ ] **Type `files`** — uploads/images attachés aux pages
|
||||
- [ ] **Type `unique_id`** — ID auto-incrémenté par collection
|
||||
- [ ] **Type `created_time` / `created_by`** — auto-propriétés
|
||||
- [ ] **Type `last_edited_time` / `last_edited_by`** — auto-propriétés
|
||||
- [ ] **Migration** `project_properties` → `collection_properties`
|
||||
- Supporte tous les types Notion (21 types)
|
||||
- [x] **Type `number`** — avec formatage (nombre, %, €, $, £, ¥)
|
||||
- [x] **Type `checkbox`** — booléen natif
|
||||
- [x] **Type `url`** — lien cliquable
|
||||
- [x] **Type `email`** — email cliquable
|
||||
- [x] **Type `phone`** — téléphone cliquable
|
||||
- [x] **Type `status`** — select avec couleurs forcées (9 couleurs Notion)
|
||||
- [x] **Type `files`** — uploads/images attachés aux pages
|
||||
- [x] **Type `unique_id`** — ID auto-incrémenté par collection
|
||||
- [x] **Type `created_time` / `created_by`** — auto-propriétés
|
||||
- [x] **Type `last_edited_time` / `last_edited_by`** — auto-propriétés
|
||||
- [x] **Service `property_types.py`** — validation, formatage, auto-values
|
||||
- [x] **API CRUD** — `/db/property-types/api` + CRUD `/db/{id}/properties/api`
|
||||
- [x] **38/38 tests** passent (+4 nouveaux tests v1.4)
|
||||
- [ ] **Migration** `project_properties` → `collection_properties` (v1.5)
|
||||
|
||||
### v1.5.0 — Relations & Rollups (Bloc 2 suite)
|
||||
|
||||
@@ -202,13 +206,13 @@ Propriétés custom, AI keywords, sync API, 12 tables DB
|
||||
## Résumé des phases
|
||||
|
||||
```
|
||||
v1.0.0 ✅ v1.1.0 ✅ v1.2.0 ✅ v1.3.0 ✅ v1.4.0 ⬜ v1.5.0 ⬜ v1.6.0 ⬜ v1.7.0 ⬜
|
||||
v1.0.0 ✅ v1.1.0 ✅ v1.2.0 ✅ v1.3.0 ✅ v1.4.0 ✅ v1.5.0 ⬜ v1.6.0 ⬜ v1.7.0 ⬜
|
||||
Production Pages Editor DB Concept Properties Relations Views View+
|
||||
──────────────────────────────────────────────
|
||||
52 fonctionnalités identifiées dans le gap analysis
|
||||
│
|
||||
├─ Bloc 1: Database Concept (v1.3) — 6 items ✅
|
||||
├─ Bloc 2: Propriétés avancées (v1.4-1.5) — 14 items
|
||||
├─ Bloc 2: Propriétés avancées (v1.4-1.5) — 14 items (11/14 ✅)
|
||||
├─ Bloc 3: Vues manquantes (v1.6-1.7) — 10 items
|
||||
├─ Bloc 4: Sub-items & Deps (v1.8) — 7 items
|
||||
├─ Bloc 5: My Tasks (v1.9) — 7 items
|
||||
|
||||
Reference in New Issue
Block a user