• Home
  • Features
  • Pricing
  • Docs
  • Announcements
  • Sign In

atinc / ngx-tethys / 68ef226c-f83e-44c1-b8ed-e420a83c5d84

28 May 2025 10:31AM UTC coverage: 10.352% (-80.0%) from 90.316%
68ef226c-f83e-44c1-b8ed-e420a83c5d84

Pull #3460

circleci

pubuzhixing8
chore: xxx
Pull Request #3460: refactor(icon): migrate signal input #TINFR-1476

132 of 6823 branches covered (1.93%)

Branch coverage included in aggregate %.

10 of 14 new or added lines in 1 file covered. (71.43%)

11648 existing lines in 344 files now uncovered.

2078 of 14525 relevant lines covered (14.31%)

6.69 hits per line

Source File
Press 'n' to go to next uncovered line, 'b' for previous

6.67
/src/i18n/i18n.service.ts
1
import { inject, Injectable, signal, Signal, WritableSignal } from '@angular/core';
2
import { THY_I18N_LOCALE_ID, THY_I18N_ZH_HANS, THY_I18N_ZH_HANT, THY_I18N_EN_US, THY_I18N_JA_JP, THY_I18N_DE_DE } from './i18n.token';
3
import { ThyLocaleType, ThyI18nLocale } from './i18n';
4
import { normalizeLocale, getDefaultLocaleId } from './util';
5
import { zhHansLocale, zhHantLocale, enUsLocale, jaJpLocale, deDeLocale } from './locales';
6

7
@Injectable({
1✔
8
    providedIn: 'root'
UNCOV
9
})
×
10
export class ThyI18nService {
×
11
    private locales: { [key in ThyLocaleType]: ThyI18nLocale } = {
×
12
        [ThyLocaleType.zhHans]: inject(THY_I18N_ZH_HANS, { optional: true }) || zhHansLocale,
×
13
        [ThyLocaleType.zhHant]: inject(THY_I18N_ZH_HANT, { optional: true }) || zhHantLocale,
×
14
        [ThyLocaleType.enUs]: inject(THY_I18N_EN_US, { optional: true }) || enUsLocale,
×
15
        [ThyLocaleType.jaJp]: inject(THY_I18N_JA_JP, { optional: true }) || jaJpLocale,
UNCOV
16
        [ThyLocaleType.deDe]: inject(THY_I18N_DE_DE, { optional: true }) || deDeLocale
×
UNCOV
17
    };
×
18

19
    private defaultLocaleId: ThyLocaleType = normalizeLocale(inject(THY_I18N_LOCALE_ID, { optional: true })) || getDefaultLocaleId();
20

21
    private locale: WritableSignal<ThyI18nLocale> = signal(this.locales[this.defaultLocaleId]);
22

23
    /**
UNCOV
24
     * 设置语言
×
UNCOV
25
     * @param id
×
UNCOV
26
     */
×
27
    setLocale(id: string) {
UNCOV
28
        let localeId: ThyLocaleType = normalizeLocale(id);
×
29

30
        if (localeId.includes('zh') && localeId !== ThyLocaleType.zhHans && localeId !== ThyLocaleType.zhHant) {
31
            localeId = ThyLocaleType.zhHans;
32
        }
33

UNCOV
34
        this.locale.set(this.locales[localeId] || this.locales[this.defaultLocaleId] || ({} as ThyI18nLocale));
×
35
    }
36

37
    /**
1✔
38
     * 获取当前语言
39
     */
40
    getLocale(): Signal<ThyI18nLocale> {
41
        return this.locale;
42
    }
43
}
STATUS · Troubleshooting · Open an Issue · Sales · Support · CAREERS · ENTERPRISE · START FREE · SCHEDULE DEMO
ANNOUNCEMENTS · TWITTER · TOS & SLA · Supported CI Services · What's a CI service? · Automated Testing

© 2025 Coveralls, Inc