1 | import * as di from '@akala/core';
|
2 | import * as path from 'path';
|
3 | import * as fs from 'fs';
|
4 |
|
5 | di.registerFactory('$translator', function (): di.Translator
|
6 | {
|
7 | var language = di.resolve('$language');
|
8 | if (language)
|
9 | var translations = require(path.join(__dirname, 'i18n.' + di.resolve('$language') + '.json'));
|
10 | else
|
11 | translations = {};
|
12 |
|
13 | return function (key: string, ...parameters: any[])
|
14 | {
|
15 | if (!parameters)
|
16 | return translations[key] || key;
|
17 | return (translations[key] || key).replace(/\{\d+\}/g, function (m)
|
18 | {
|
19 | return parameters[m];
|
20 | })
|
21 | }
|
22 | }, true); |
\ | No newline at end of file |