From 0a3b293c625ced59656fa42b53452a4b1f971f2a Mon Sep 17 00:00:00 2001 From: "Dennis (via Claude+Gemma)" Date: Sat, 23 May 2026 05:17:26 +0200 Subject: [PATCH] =?UTF-8?q?feat(api-client-phase4):=20API-Client=20um=20Ad?= =?UTF-8?q?min-User=20+=20Export-URL=20erg=C3=A4nzt=20[tsc:ok]?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .phase4-state.json | 5 +++-- GENERATION_LOG.md | 10 ++++++++++ apps/web/src/lib/api.ts | 24 ++++++++++++++++++++++++ 3 files changed, 37 insertions(+), 2 deletions(-) diff --git a/.phase4-state.json b/.phase4-state.json index 0a3c95f..e926df6 100644 --- a/.phase4-state.json +++ b/.phase4-state.json @@ -2,8 +2,9 @@ "completed_features": [ "admin-user-management", "csv-export-time-entries", - "error-boundary" + "error-boundary", + "dashboard-charts" ], - "current_feature": "dashboard-charts", + "current_feature": "api-client-phase4", "started_at": "2026-05-23T05:10:51.482879" } \ No newline at end of file diff --git a/GENERATION_LOG.md b/GENERATION_LOG.md index 4cd826c..a7f7317 100644 --- a/GENERATION_LOG.md +++ b/GENERATION_LOG.md @@ -505,3 +505,13 @@ undefined - `05:16:48` **INFO** wrote 7018 chars in 61.7s (attempt 1) - `05:16:48` **INFO** Running tsc --noEmit on api… - `05:16:50` **INFO** tsc clean ✓ +- `05:16:50` **INFO** Committed feature dashboard-charts +- `05:16:50` **INFO** Pushed: rc=0 + +## Phase-3 Feature: api-client-phase4 (2026-05-23 05:16:50) + +- `05:16:50` **INFO** Description: API-Client um Admin-User + Export-URL ergänzt +- `05:16:50` **INFO** Generating apps/web/src/lib/api.ts (FINAL+ - behalte ALLES aus vorher. Füge hinzu: listUsers(), createUser…) +- `05:17:24` **INFO** wrote 3845 chars in 34.1s (attempt 1) +- `05:17:24` **INFO** Running tsc --noEmit on api… +- `05:17:26` **INFO** tsc clean ✓ diff --git a/apps/web/src/lib/api.ts b/apps/web/src/lib/api.ts index a7422df..2b3f54e 100644 --- a/apps/web/src/lib/api.ts +++ b/apps/web/src/lib/api.ts @@ -129,5 +129,29 @@ export const api = { return request(`/projects/${id}`, { method: "DELETE" }) + }, + + async listUsers() { + return request("/users") + }, + + async createUser(data: { email: string; name: string; role: "admin" | "user"; password: string }) { + return request("/users", { + method: "POST", + body: JSON.stringify(data) + }) + }, + + async updateUser(id: string, data: { name?: string; role?: "admin" | "user" }) { + return request(`/users/${id}`, { + method: "PATCH", + body: JSON.stringify(data) + }) + }, + + async deleteUser(id: string) { + return request(`/users/${id}`, { + method: "DELETE" + }) } } \ No newline at end of file