Manage the Slack digest in the admin

New settings area: the webhook lives in the database and is only shown
shortened afterwards, the environment variable stays as a fallback. A switch
decides whether internal entries travel, a button sends the digest right
away, and every run is recorded with period, count, projects, result and
who triggered it.
This commit is contained in:
Matthias G
2026-08-03 12:13:57 +02:00
parent 65346d0c09
commit 0fd6da62d1
19 changed files with 2663 additions and 31 deletions
+1
View File
@@ -10,6 +10,7 @@ export const adminNewBrandPath = '/admin/brands/new' as Route
export const adminUsersPath = '/admin/users' as Route
export const adminClientsPath = '/admin/clients' as Route
export const adminPostTypesPath = '/admin/post-types' as Route
export const adminSettingsPath = '/admin/settings' as Route
export const adminNewPostTypePath = '/admin/post-types/new' as Route
export function adminApiFilePath(file: 'openapi' | 'style-guide' | 'skill'): Route {