@tc-libs/message
v4.6.0
Published
Servizio di messaggistica applicativa e normalizzazione errori validazione.
Readme
@tc-libs/message
Servizio di messaggistica applicativa e normalizzazione errori validazione.
Il package non contiene ancora un motore i18n attivo: setMessage() al momento ritorna null, ma l'API e gia pronta e viene usata dagli altri package per costruire risposte multilingua o fallback.
Registrazione
MessageModule.register(
{
appDefaultLanguage: 'it',
availableLanguages: ['it', 'en'],
i18nEnabled: false,
},
true,
);Il modulo applica anche il middleware MessageCustomLanguageMiddleware per leggere la lingua custom dalla request.
Servizio
MessageService espone:
getAvailableLanguages()get(key, options?)getRequestErrorsMessage(validationErrors, customLanguages?)getImportErrorsMessage(importErrors, customLanguages?)
Esempio:
const msg = await this.messageService.get('user.created', {
customLanguages: ['it'],
properties: { name: 'Mario' },
});Uso con validation errors
const errors = await this.messageService.getRequestErrorsMessage(
validationErrors,
['it'],
);Questo e il punto di integrazione usato da @tc-libs/error-handler.
Export pubblici
import {
IMessage,
IMessageOptions,
MessageModule,
MessageService,
} from '@tc-libs/message';Nota importante
Lo strato di API e pronto, ma la traduzione vera e propria e da completare. Nei package che lo usano, trattalo come message resolver/pluggable facade piu che come i18n engine finito.
Sviluppo
nx build message
nx test message