feat(web): add storage dashboard and team retention settings

Add per-team storage breakdown table to the usage section (from
GET /api/v1/admin/usage teamStorage data). Add storage quota (MB)
and retention (hours) inline fields to the teams section, saving
via PUT /api/v1/teams/:id. Add i18n keys to all 21 locale files.
This commit is contained in:
SnapOtter
2026-06-13 21:20:12 +08:00
parent dd2a50799a
commit c7e9b1ddc6
23 changed files with 372 additions and 1 deletions
+10
View File
@@ -2791,6 +2791,12 @@ export const ar: TranslationKeys = {
nameRequired: "اسم الفريق مطلوب",
nameTooLong: "يجب ألا يتجاوز اسم الفريق 50 حرفًا",
duplicateName: "يوجد فريق بهذا الاسم بالفعل",
teamStorageQuota: "Storage Quota (MB)",
teamStorageQuotaDesc: "Maximum storage for this team in MB. Leave empty for no limit.",
teamRetentionHours: "Retention (hours)",
teamRetentionHoursDesc:
"Processing file retention for this team. Leave empty to use global default.",
quotaSaved: "Team settings saved",
},
roles: {
heading: "الأدوار",
@@ -2872,6 +2878,10 @@ export const ar: TranslationKeys = {
storageHeading: "Library storage",
storageFiles: "{count} files",
unknownUser: "(unknown)",
storageByTeam: "Storage by Team",
teamColumn: "Team",
storageColumn: "Storage",
usersColumn: "Users",
},
apiKeys: {
heading: "مفاتيح API",