refactor: introduce trString for frontend (#38741)

Co-authored-by: silverwind <me@silverwind.io>
Co-authored-by: delvh <dev.lh@web.de>
This commit is contained in:
wxiaoguang
2026-08-03 12:40:02 +08:00
committed by GitHub
parent cb4c65f035
commit c2ebe3724f
12 changed files with 51 additions and 21 deletions
+8 -1
View File
@@ -1,4 +1,4 @@
import {trN} from './i18n.ts';
import {trN, trString} from './i18n.ts';
test('trN', () => {
expect(trN(0, '%d job', '%d jobs', {lang: 'en-US'})).toEqual('0 jobs');
@@ -8,3 +8,10 @@ test('trN', () => {
// languages without a distinct singular always use the plural form
expect(trN(1, '%d job', '%d jobs', {lang: 'zh-CN'})).toEqual('1 jobs');
});
test('trString', () => {
expect(trString('from %s to %d', 'main', 12)).toBe('from main to 12');
expect(trString('from %[1]s to %[2]d', 'main', 12)).toBe('from main to 12');
expect(trString('from %s to %[2]d', 'main', 12)).toBe('from main to 12');
expect(trString('from %s to %[3]d', 'main', 12)).toBe('from main to %[3]d');
});