( error: unknown, translate: AppErrorTranslator )
| 118 | * translator throws (e.g. unknown key in a different translator's namespace). |
| 119 | */ |
| 120 | export function toLocalizedErrorMessage( |
| 121 | error: unknown, |
| 122 | translate: AppErrorTranslator |
| 123 | ): string { |
| 124 | const appError = extractAppCommandError(error) |
| 125 | if (appError?.i18n_key) { |
| 126 | try { |
| 127 | const params = appError.i18n_params ?? undefined |
| 128 | const localized = translate(appError.i18n_key, params) |
| 129 | const trimmed = localized.trim() |
| 130 | if (trimmed && trimmed !== appError.i18n_key) { |
| 131 | return trimmed |
| 132 | } |
| 133 | } catch { |
| 134 | // fall through to non-localized path |
| 135 | } |
| 136 | } |
| 137 | return toErrorMessage(error) |
| 138 | } |
no test coverage detected