Перейти до основного вмісту

Провайдер локалізацій

інформація

Сервіс локалізації відповідає за обробку та реалізацію інтернаціоналізації та локалізації ресурсів бізнес-схеми. Він також надає методи для отримання окремих словників та кінцевих ресурсів перекладу, враховуючи підтримувальну мову перекладу.

Архітектура

Сервіс локалізації входить до загального життєвого циклу активації та вимкнення ядра обчислень. Він застосовується у бізнес-схемі та структурних модулях ядра обчислень.

У бізнес-схемі для створення локалізації спочатку потрібно здійснити наповнення окремих словників перекладів, які потім використовуються в обробниках, валідаторах та інших компонентах, щоб отримати кінцеві переклади з урахуванням мови перекладу. Ці переклади використовуються для формування відповідей на запити та здійснення логування.

У ядрі обчислень використовуються абстрактні словники перекладу, які вказують поведінку самого ядра.

localization-service-arch.svg

інформація

При описі бізнес-схеми є можливість створити власний словник перекладу для системних повідомлень.

Застосування

Сервіс використовується як у ядрі обчислення, так і бізнес-схемі:

1. Використання в ядра обчислень

2. Використання в бізнес-схемі

import {setRouter} from '@x-fiber/calculator';

export const BusUsersAggRouter = setRouter<'get-one'>({
'get-one': {
GET: {
scope: 'private:user',
params: ['userId'],
handler: async (request, agents, context) => {
const {localization} = agents.fnAgent;

const ln = localization.defaultLanguages;
console.log(ln); // 'en'
},
},
},
});

де:

  • setRouter є вбудованою функцією ядра обчислень, що відповідає за створення опису документа Маршрутизатор.
  • BusUsersAggRouter - опис документа Маршрутизатор в прикладній області BusUsersAgg.
    • localization - простір імен для доступу до методів з сервісу локалізації LocalizationService.
    • ln - мова перекладу за замовчуванням.