Skip to content
This repository was archived by the owner on Feb 6, 2024. It is now read-only.

Commit 975cad4

Browse files
build: supported languages type declaration
1 parent 1043366 commit 975cad4

File tree

5 files changed

+7
-6
lines changed

5 files changed

+7
-6
lines changed

studio/scripts/i18n.types.js

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -16,7 +16,7 @@ const generate = async () => {
1616
};
1717
});
1818

19-
const lang = `lang: 'en' | 'es';`;
19+
const lang = `lang: Languages;`;
2020

2121
const main = `\n\ninterface I18n {${lang}${data.map((i) => `${i.key}: ${i.name};`).join('')}}`;
2222
const interfaces = data.map((i) => `\n\ninterface ${i.name} {${i.properties.join('')}}`).join('');

studio/src/app/definitions/i18.d.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -487,7 +487,7 @@ interface I18nPoll {
487487
}
488488

489489
interface I18n {
490-
lang: 'en' | 'es';
490+
lang: Languages;
491491
core: I18nCore;
492492
nav: I18nNav;
493493
menu: I18nMenu;
Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
type Languages = 'en' | 'es';

studio/src/app/services/lang/lang.service.ts

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -18,7 +18,7 @@ export class LangService {
1818

1919
async init() {
2020
try {
21-
const lang: 'en' | 'es' | null = await get<'en' | 'es'>('deckdeckgo_lang');
21+
const lang: Languages | null = await get<Languages>('deckdeckgo_lang');
2222

2323
if (lang) {
2424
i18n.state.lang = lang;
@@ -33,7 +33,7 @@ export class LangService {
3333

3434
private initDefaultLang() {
3535
const browserLang: string | undefined = this.getBrowserLang();
36-
i18n.state.lang = /(es|en)/gi.test(browserLang) ? (browserLang as 'en' | 'es') : 'en';
36+
i18n.state.lang = /(es|en)/gi.test(browserLang) ? (browserLang as Languages) : 'en';
3737
}
3838

3939
/**

studio/src/app/stores/i18n.store.ts

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -22,7 +22,7 @@ const enI18n = (): I18n => {
2222
} as I18n;
2323
};
2424

25-
onChange('lang', async (lang: 'en' | 'es') => {
25+
onChange('lang', async (lang: Languages) => {
2626
let bundle: I18n;
2727

2828
switch (lang) {
@@ -36,7 +36,7 @@ onChange('lang', async (lang: 'en' | 'es') => {
3636
Object.assign(state, bundle);
3737
});
3838

39-
onChange('lang', (lang: 'en' | 'es') => {
39+
onChange('lang', (lang: Languages) => {
4040
set('deckdeckgo_lang', lang).catch((err) => {
4141
console.error('Failed to update IDB with new language', err);
4242
});

0 commit comments

Comments
 (0)