Skip to content

Commit 54c6a0a

Browse files
committed
Localization: fix ts issues
1 parent 6a90c00 commit 54c6a0a

File tree

13 files changed

+611
-555
lines changed

13 files changed

+611
-555
lines changed
Lines changed: 15 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -1,12 +1,9 @@
1-
import core from './localization/core';
2-
import message from './localization/message';
3-
import number from './localization/number';
4-
import date from './localization/date';
5-
import './localization/currency';
1+
import '@ts/core/localization/currency';
62

7-
/**
8-
* @name localization
9-
*/
3+
import core from '@ts/core/localization/core';
4+
import date from '@ts/core/localization/date';
5+
import message from '@ts/core/localization/message';
6+
import number from '@ts/core/localization/number';
107

118
export const locale = core.locale.bind(core);
129

@@ -17,16 +14,16 @@ export const parseNumber = number.parse.bind(number);
1714
export const formatDate = date.format.bind(date);
1815
export const parseDate = date.parse.bind(date);
1916
export {
20-
message,
21-
number,
22-
date
17+
date,
18+
message,
19+
number,
2320
};
2421

25-
export function disableIntl() {
26-
if(number.engine() === 'intl') {
27-
number.resetInjection();
28-
}
29-
if(date.engine() === 'intl') {
30-
date.resetInjection();
31-
}
22+
export function disableIntl(): void {
23+
if (number.engine() === 'intl') {
24+
number.resetInjection();
25+
}
26+
if (date.engine() === 'intl') {
27+
date.resetInjection();
28+
}
3229
}
Lines changed: 62 additions & 60 deletions
Original file line numberDiff line numberDiff line change
@@ -1,83 +1,85 @@
1-
import './core';
2-
3-
// eslint-disable-next-line no-restricted-imports
4-
import Globalize from 'globalize';
5-
import messageLocalization from '../message';
6-
import coreLocalization from '../core';
7-
8-
// eslint-disable-next-line no-restricted-imports, import/no-unresolved
1+
import '@ts/core/localization/globalize/core';
92
import 'globalize/message';
103

11-
if(Globalize && Globalize.formatMessage) {
4+
import coreLocalization from '@ts/core/localization/core';
5+
import type { MessageDictionary, MessageFormatter } from '@ts/core/localization/message';
6+
import messageLocalization from '@ts/core/localization/message';
7+
// eslint-disable-next-line import/no-extraneous-dependencies
8+
import Globalize from 'globalize';
129

13-
const DEFAULT_LOCALE = 'en';
10+
if (Globalize?.formatMessage) {
11+
const DEFAULT_LOCALE = 'en';
1412

15-
const originalLoadMessages = Globalize.loadMessages;
13+
const originalLoadMessages = Globalize.loadMessages;
1614

17-
Globalize.loadMessages = messages => {
18-
messageLocalization.load(messages);
19-
};
15+
Globalize.loadMessages = (messages: MessageDictionary): void => {
16+
messageLocalization.load(messages);
17+
};
2018

21-
const globalizeMessageLocalization = {
22-
engine: function() {
23-
return 'globalize';
24-
},
19+
const globalizeMessageLocalization = {
20+
engine(): string {
21+
return 'globalize';
22+
},
2523

26-
ctor: function() {
27-
this.load(this._dictionary);
28-
},
24+
ctor(): void {
25+
this.load(this._dictionary);
26+
},
2927

30-
load: function(messages) {
31-
this.callBase(messages);
32-
originalLoadMessages(messages);
33-
},
28+
load(messages: MessageDictionary): void {
29+
this.callBase(messages);
30+
originalLoadMessages(messages);
31+
},
3432

35-
getMessagesByLocales: function() {
36-
return Globalize.cldr.get('globalize-messages');
37-
},
33+
getMessagesByLocales(): MessageDictionary {
34+
return Globalize.cldr.get('globalize-messages') as MessageDictionary;
35+
},
3836

39-
getFormatter: function(key, locale) {
40-
const currentLocale = locale || coreLocalization.locale();
41-
let formatter = this._getFormatterBase(key, locale);
37+
getFormatter(key: string, locale?: string): MessageFormatter {
38+
// eslint-disable-next-line @typescript-eslint/prefer-nullish-coalescing
39+
const currentLocale = locale || coreLocalization.locale();
40+
let formatter: MessageFormatter = this._getFormatterBase(key, locale);
4241

43-
if(!formatter) {
44-
formatter = this._formatterByGlobalize(key, locale);
45-
}
42+
if (!formatter) {
43+
formatter = this._formatterByGlobalize(key, locale);
44+
}
4645

47-
if(!formatter && currentLocale !== DEFAULT_LOCALE) {
48-
formatter = this.getFormatter(key, DEFAULT_LOCALE);
49-
}
46+
if (!formatter && currentLocale !== DEFAULT_LOCALE) {
47+
formatter = this.getFormatter(key, DEFAULT_LOCALE);
48+
}
5049

51-
return formatter;
52-
},
50+
return formatter;
51+
},
5352

54-
_formatterByGlobalize: function(key, locale) {
55-
const currentGlobalize = !locale || locale === coreLocalization.locale() ? Globalize : new Globalize(locale);
56-
let result;
53+
_formatterByGlobalize(key: string, locale?: string): MessageFormatter | undefined {
54+
const currentGlobalize = !locale || locale === coreLocalization.locale()
55+
? Globalize
56+
: new Globalize(locale);
57+
// eslint-disable-next-line @typescript-eslint/init-declarations
58+
let result: MessageFormatter | undefined;
5759

58-
if(this._messageLoaded(key, locale)) {
59-
result = currentGlobalize.messageFormatter(key);
60-
}
60+
if (this._messageLoaded(key, locale)) {
61+
result = currentGlobalize.messageFormatter(key);
62+
}
6163

62-
return result;
63-
},
64+
return result;
65+
},
6466

65-
_messageLoaded: function(key, locale) {
66-
const currentCldr = locale ? new Globalize(locale).cldr : Globalize.locale();
67-
const value = currentCldr.get(['globalize-messages/{bundle}', key]);
67+
_messageLoaded(key: string, locale: string | undefined): boolean {
68+
const currentCldr = locale ? new Globalize(locale).cldr : Globalize.locale();
69+
const value = currentCldr.get(['globalize-messages/{bundle}', key]);
6870

69-
return !!value;
70-
},
71+
return !!value;
72+
},
7173

72-
_loadSingle: function(key, value, locale) {
73-
const data = {};
74+
_loadSingle(key: string, value: string, locale: string): void {
75+
const data = {};
7476

75-
data[locale] = {};
76-
data[locale][key] = value;
77+
data[locale] = {};
78+
data[locale][key] = value;
7779

78-
this.load(data);
79-
}
80-
};
80+
this.load(data);
81+
},
82+
};
8183

82-
messageLocalization.inject(globalizeMessageLocalization);
84+
messageLocalization.inject(globalizeMessageLocalization);
8385
}

0 commit comments

Comments
 (0)