feat(ui): Berechtigungen beim Anlegen eines API-Schlüssels wählbar
Bisher vergab die Oberfläche fest shop-sync:read. Jetzt sind alle freigegebenen Rechte ankreuzbar (Shop lesen, Shop-Buchungen, Inventar-Spiegel für ERPNext); vorausgewählt bleibt wie bisher nur Shop lesen, ohne Haken lässt sich nichts anlegen. Die Liste zeigt, was ein Schlüssel darf, und der Hinweis nach dem Anlegen nennt das Zielsystem. Co-Authored-By: Claude Opus 5.5 (1M context) <[email protected]>
This commit is contained in:
1 parent
68f81fabd4
commit
c4cdb63414
3 files changed
+178
-15
No files matched your search
@@ -1,9 +1,19 @@
|
||||
export type ApiKeyScope = "shop-sync:read";
|
||||
/** Berechtigungen, die ein API-Schlüssel tragen kann - wie API_KEY_SCOPES im Backend. */
|
||||
export const API_KEY_SCOPES = ["shop-sync:read", "shop-sync:write", "erp-inventory:read"] as const;
|
||||
|
||||
export type ApiKeyScope = (typeof API_KEY_SCOPES)[number];
|
||||
|
||||
export const API_KEY_SCOPE_LABELS: Record<ApiKeyScope, string> = {
|
||||
"shop-sync:read": "Shop-Daten lesen (Wabenhain)",
|
||||
"shop-sync:write": "Verkäufe und Rückbuchungen des Shops buchen (Wabenhain)",
|
||||
"erp-inventory:read": "Inventar-Spiegel lesen (ERPNext)",
|
||||
};
|
||||
|
||||
/** Label für die Anzeige; unbekannte Rechte (neueres Backend) unverändert. */
|
||||
export function apiKeyScopeLabel(scope: string): string {
|
||||
return (API_KEY_SCOPE_LABELS as Record<string, string>)[scope] ?? scope;
|
||||
}
|
||||
|
||||
export interface ApiKey {
|
||||
id: string;
|
||||
name: string;
|
||||
|
||||
Reference in new issue
Block a user