@stapel/workspaces-react 0.11.2 → 0.13.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +57 -0
- package/MODULE.md +5 -1
- package/README.md +22 -0
- package/dist/api/generated/schema.d.ts +13 -8
- package/dist/api/generated/schema.d.ts.map +1 -1
- package/dist/default/ErrorAlert.d.ts +8 -0
- package/dist/default/ErrorAlert.d.ts.map +1 -0
- package/dist/default/ErrorAlert.js +30 -0
- package/dist/default/ErrorAlert.js.map +1 -0
- package/dist/default/MembersManager.d.ts.map +1 -1
- package/dist/default/MembersManager.js +5 -4
- package/dist/default/MembersManager.js.map +1 -1
- package/dist/default/WorkspaceSettings.d.ts.map +1 -1
- package/dist/default/WorkspaceSettings.js +9 -5
- package/dist/default/WorkspaceSettings.js.map +1 -1
- package/dist/i18n/es.d.ts +34 -0
- package/dist/i18n/es.d.ts.map +1 -0
- package/dist/i18n/es.js +43 -0
- package/dist/i18n/es.js.map +1 -0
- package/dist/i18n/generated/errors.es.gen.d.ts +9 -0
- package/dist/i18n/generated/errors.es.gen.d.ts.map +1 -0
- package/dist/i18n/generated/errors.es.gen.js +76 -0
- package/dist/i18n/generated/errors.es.gen.js.map +1 -0
- package/dist/i18n/generated/errors.gen.d.ts +6 -0
- package/dist/i18n/generated/errors.gen.d.ts.map +1 -1
- package/dist/i18n/generated/errors.gen.js +3 -0
- package/dist/i18n/generated/errors.gen.js.map +1 -1
- package/dist/i18n/generated/errors.ru.gen.d.ts.map +1 -1
- package/dist/i18n/generated/errors.ru.gen.js +1 -0
- package/dist/i18n/generated/errors.ru.gen.js.map +1 -1
- package/llms.txt +3 -3
- package/manifest.json +8 -2
- package/package.json +13 -4
- package/src/analytics/generated/events.json +1 -1
- package/src/api/generated/schema.ts +13 -8
- package/src/default/ErrorAlert.tsx +47 -0
- package/src/default/MembersManager.tsx +5 -6
- package/src/default/WorkspaceSettings.tsx +13 -16
- package/src/i18n/es.ts +47 -0
- package/src/i18n/generated/errors.es.gen.ts +82 -0
- package/src/i18n/generated/errors.gen.ts +3 -0
- package/src/i18n/generated/errors.json +7 -0
- package/src/i18n/generated/errors.ru.gen.ts +1 -0
|
@@ -0,0 +1,82 @@
|
|
|
1
|
+
// AUTO-GENERATED by scripts/gen-errors.mjs — do not edit by hand.
|
|
2
|
+
// Source: stapel-auth canonical errors.json (backend codegen artifact).
|
|
3
|
+
// Regenerate: pnpm gen:errors · Drift gate: pnpm gen:errors:check
|
|
4
|
+
// Locale source: backend translations/errors.es.json (locale catalog
|
|
5
|
+
// beside the canonical errors.json — i18n-shipping.md §1).
|
|
6
|
+
import type { WorkspacesErrorCode } from "./errors.gen.js";
|
|
7
|
+
|
|
8
|
+
/**
|
|
9
|
+
* `es` texts for every backend error code — complete over the registry by
|
|
10
|
+
* construction (the generator fails on a gap; the Record type fails compilation
|
|
11
|
+
* on drift). Import from the pair's `./i18n/es` subpath, NOT the main
|
|
12
|
+
* entry, so the locale stays out of hosts that don't ship it.
|
|
13
|
+
*/
|
|
14
|
+
export const workspacesErrorBundleEs: Record<WorkspacesErrorCode, string> = {
|
|
15
|
+
"error.400.already_workspace_member": "El usuario ya es miembro de este espacio de trabajo",
|
|
16
|
+
"error.400.bad_request": "Solicitud incorrecta",
|
|
17
|
+
"error.400.captcha_invalid": "La verificación del captcha ha fallado. Inténtalo de nuevo.",
|
|
18
|
+
"error.400.captcha_required": "Se requiere el token del captcha.",
|
|
19
|
+
"error.400.display_name_emoji": "El nombre para mostrar no puede contener emojis",
|
|
20
|
+
"error.400.display_name_forbidden_chars": "El nombre para mostrar contiene caracteres no permitidos",
|
|
21
|
+
"error.400.display_name_invisible_chars": "El nombre para mostrar contiene caracteres invisibles",
|
|
22
|
+
"error.400.display_name_too_short": "El nombre para mostrar debe tener al menos 2 caracteres",
|
|
23
|
+
"error.400.expected_list": "Se esperaba una lista de elementos",
|
|
24
|
+
"error.400.field.blank": "{field} no puede estar vacío",
|
|
25
|
+
"error.400.field.does_not_exist": "{field} no existe",
|
|
26
|
+
"error.400.field.invalid": "{field} no es válido",
|
|
27
|
+
"error.400.field.invalid_choice": "{field} no es una opción válida",
|
|
28
|
+
"error.400.field.max_length": "{field} debe tener como máximo {max_length} caracteres",
|
|
29
|
+
"error.400.field.max_value": "{field} debe ser como máximo {max_value}",
|
|
30
|
+
"error.400.field.min_length": "{field} debe tener al menos {min_length} caracteres",
|
|
31
|
+
"error.400.field.min_value": "{field} debe ser como mínimo {min_value}",
|
|
32
|
+
"error.400.field.null": "{field} no puede ser nulo",
|
|
33
|
+
"error.400.field.required": "{field} es obligatorio",
|
|
34
|
+
"error.400.field.unique": "{field} debe ser único",
|
|
35
|
+
"error.400.invalid_ad_id": "ID de anuncio no válido",
|
|
36
|
+
"error.400.invalid_provision_username": "Nombre de usuario no válido para una cuenta aprovisionada",
|
|
37
|
+
"error.400.invalid_role": "Rol no válido",
|
|
38
|
+
"error.400.invitation_already_used": "La invitación ya se ha utilizado",
|
|
39
|
+
"error.400.invitation_declined": "La invitación ha sido rechazada",
|
|
40
|
+
"error.400.invitation_expired": "La invitación ha caducado",
|
|
41
|
+
"error.400.invitation_revoked": "La invitación ha sido revocada",
|
|
42
|
+
"error.400.validation_error": "Error de validación",
|
|
43
|
+
"error.400.verification_failed": "La verificación ha fallado",
|
|
44
|
+
"error.400.verification_invalid_factor": "Este factor de verificación no está disponible",
|
|
45
|
+
"error.400.workspace_slug_taken": "El slug del espacio de trabajo ya está en uso",
|
|
46
|
+
"error.401.unauthorized": "Se requiere autenticación",
|
|
47
|
+
"error.402.entitlement_required": "El plan del propietario del espacio de trabajo no incluye esta función",
|
|
48
|
+
"error.402.member_limit_reached": "Se ha alcanzado el límite de miembros del espacio de trabajo ({limit})",
|
|
49
|
+
"error.402.payment_required": "Se requiere pago",
|
|
50
|
+
"error.403.forbidden": "No tienes permiso para realizar esta acción",
|
|
51
|
+
"error.403.forbidden_workspace": "No tienes acceso a este espacio de trabajo",
|
|
52
|
+
"error.403.last_owner_cannot_be_removed": "El último propietario no se puede eliminar; primero transfiere la propiedad",
|
|
53
|
+
"error.403.membership_suspended": "Tu pertenencia a este espacio de trabajo está suspendida ({reason})",
|
|
54
|
+
"error.403.missing_capability": "Tu rol no incluye la capacidad {capability} en este espacio de trabajo",
|
|
55
|
+
"error.403.network_blocked": "No se permiten solicitudes desde esta red.",
|
|
56
|
+
"error.403.role_exceeds_inviter_rank": "No puedes conceder un rol superior al tuyo ({role})",
|
|
57
|
+
"error.403.verification_enrollment_required": "Es necesario registrar un factor de verificación.",
|
|
58
|
+
"error.403.verification_required": "Se requiere verificación adicional",
|
|
59
|
+
"error.404.ad_not_found": "Anuncio no encontrado",
|
|
60
|
+
"error.404.invitation_not_found": "Invitación no encontrada",
|
|
61
|
+
"error.404.member_not_found": "Miembro no encontrado en este espacio de trabajo",
|
|
62
|
+
"error.404.not_found": "Recurso solicitado no encontrado",
|
|
63
|
+
"error.404.verification_challenge_not_found": "Desafío de verificación no encontrado o caducado",
|
|
64
|
+
"error.404.workspace_not_found": "Espacio de trabajo no encontrado",
|
|
65
|
+
"error.405.method_not_allowed": "Método no permitido",
|
|
66
|
+
"error.406.not_acceptable": "No aceptable",
|
|
67
|
+
"error.408.request_timeout": "Tiempo de espera de la solicitud agotado",
|
|
68
|
+
"error.409.conflict": "El recurso ya existe",
|
|
69
|
+
"error.409.email_already_registered": "Ya existe una cuenta con este correo electrónico: inicia sesión en su lugar",
|
|
70
|
+
"error.410.gone": "El recurso se ha eliminado permanentemente",
|
|
71
|
+
"error.413.payload_too_large": "El cuerpo de la solicitud es demasiado grande",
|
|
72
|
+
"error.415.unsupported_media_type": "Tipo de contenido no compatible",
|
|
73
|
+
"error.422.unprocessable_entity": "Entidad no procesable",
|
|
74
|
+
"error.423.locked": "El recurso está bloqueado",
|
|
75
|
+
"error.423.verification_locked": "Demasiados intentos fallidos — verificación bloqueada",
|
|
76
|
+
"error.429.rate_limit": "Demasiados intentos. Inténtalo de nuevo en {retry_after_minutes} minutos.",
|
|
77
|
+
"error.429.too_many_requests": "Demasiadas solicitudes. Inténtalo de nuevo más tarde.",
|
|
78
|
+
"error.500.internal": "Algo salió mal",
|
|
79
|
+
"error.503.auth_unavailable": "El servicio de autenticación no está disponible; inténtalo de nuevo más tarde",
|
|
80
|
+
"error.503.profiles_not_configured": "Este despliegue no tiene configurado un servicio de perfiles, por lo que aquí no se puede escribir un nombre para mostrar",
|
|
81
|
+
"error.503.profiles_unavailable": "El servicio de perfiles no está disponible; inténtalo de nuevo más tarde",
|
|
82
|
+
};
|
|
@@ -100,6 +100,7 @@ export const WORKSPACES_ERRORS = {
|
|
|
100
100
|
"error.429.too_many_requests": { status: 429, params: [], remediation: "wait_and_retry", en: "Too many requests. Please try again later." },
|
|
101
101
|
"error.500.internal": { status: 500, params: [], remediation: "contact_support", en: "Something went wrong" },
|
|
102
102
|
"error.503.auth_unavailable": { status: 503, params: [], remediation: "wait_and_retry", en: "The authentication service is unavailable; try again later" },
|
|
103
|
+
"error.503.profiles_not_configured": { status: 503, params: [], remediation: "contact_support", en: "This deployment has no profiles service configured, so a display name cannot be written here" },
|
|
103
104
|
"error.503.profiles_unavailable": { status: 503, params: [], remediation: "wait_and_retry", en: "The profiles service is unavailable; try again later" },
|
|
104
105
|
} as const;
|
|
105
106
|
|
|
@@ -172,6 +173,7 @@ export const WORKSPACES_ERROR_CODES: readonly WorkspacesErrorCode[] = [
|
|
|
172
173
|
"error.429.too_many_requests",
|
|
173
174
|
"error.500.internal",
|
|
174
175
|
"error.503.auth_unavailable",
|
|
176
|
+
"error.503.profiles_not_configured",
|
|
175
177
|
"error.503.profiles_unavailable",
|
|
176
178
|
];
|
|
177
179
|
|
|
@@ -246,5 +248,6 @@ export const workspacesErrorBundleEn: Record<WorkspacesErrorCode, string> = {
|
|
|
246
248
|
"error.429.too_many_requests": "Too many requests. Please try again later.",
|
|
247
249
|
"error.500.internal": "Something went wrong",
|
|
248
250
|
"error.503.auth_unavailable": "The authentication service is unavailable; try again later",
|
|
251
|
+
"error.503.profiles_not_configured": "This deployment has no profiles service configured, so a display name cannot be written here",
|
|
249
252
|
"error.503.profiles_unavailable": "The profiles service is unavailable; try again later",
|
|
250
253
|
};
|
|
@@ -490,6 +490,13 @@
|
|
|
490
490
|
"remediation": "wait_and_retry",
|
|
491
491
|
"en": "The authentication service is unavailable; try again later"
|
|
492
492
|
},
|
|
493
|
+
{
|
|
494
|
+
"code": "error.503.profiles_not_configured",
|
|
495
|
+
"status": 503,
|
|
496
|
+
"params": [],
|
|
497
|
+
"remediation": "contact_support",
|
|
498
|
+
"en": "This deployment has no profiles service configured, so a display name cannot be written here"
|
|
499
|
+
},
|
|
493
500
|
{
|
|
494
501
|
"code": "error.503.profiles_unavailable",
|
|
495
502
|
"status": 503,
|
|
@@ -77,5 +77,6 @@ export const workspacesErrorBundleRu: Record<WorkspacesErrorCode, string> = {
|
|
|
77
77
|
"error.429.too_many_requests": "Слишком много запросов. Пожалуйста, повторите попытку позже.",
|
|
78
78
|
"error.500.internal": "Что-то пошло не так",
|
|
79
79
|
"error.503.auth_unavailable": "Сервис аутентификации недоступен; повторите попытку позже",
|
|
80
|
+
"error.503.profiles_not_configured": "В этой инсталляции не настроен сервис профилей — отображаемое имя здесь записать нельзя",
|
|
80
81
|
"error.503.profiles_unavailable": "Сервис профилей недоступен; повторите попытку позже",
|
|
81
82
|
};
|