Skip to content

Commit

Permalink
improve i18n
Browse files Browse the repository at this point in the history
  • Loading branch information
mebtte committed Aug 1, 2023
1 parent d81bd15 commit 78d04be
Show file tree
Hide file tree
Showing 4 changed files with 39 additions and 19 deletions.
10 changes: 10 additions & 0 deletions apps/pwa/src/i18n/en_us.ts
Original file line number Diff line number Diff line change
Expand Up @@ -69,4 +69,14 @@ export default {
year_of_issue: 'year of issue',
edit_year_of_issue: 'edit year of issue',
year_of_issue_limit: 'year of issue should be between %s1 and %s2',
edit_avatar: 'edit avatar',
please_select_an_avatar: 'please select an avatar',
reset_avatar: 'reset avatar',
reset_avatar_question: 'Are you sure to reset avatar ?',
edit_name: 'edit name',
name: 'name',
please_enter_the_name: 'please enter the name',
edit_alias: 'edit alias',
alias: 'alias',
view_modify_record: 'view modify record',
};
10 changes: 10 additions & 0 deletions apps/pwa/src/i18n/zh_hans.ts
Original file line number Diff line number Diff line change
Expand Up @@ -68,6 +68,16 @@ const zhCN: {
year_of_issue: '发行年份',
edit_year_of_issue: '编辑发行年份',
year_of_issue_limit: '发行年份应在 %s1 - %s2 之间',
edit_avatar: '编辑头像',
please_select_an_avatar: '请选择一个头像',
reset_avatar: '重置头像',
reset_avatar_question: '确定重置头像吗?',
edit_name: '编辑名字',
name: '名字',
please_enter_the_name: '请输入名字',
edit_alias: '编辑别名',
alias: '别名',
view_modify_record: '查看修改记录',
};

export default zhCN;
36 changes: 18 additions & 18 deletions apps/pwa/src/pages/player/singer_drawer/edit_menu.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -20,6 +20,7 @@ import stringArrayEqual from '#/utils/string_array_equal';
import dialog from '@/utils/dialog';
import logger from '@/utils/logger';
import notice from '@/utils/notice';
import { t } from '@/i18n';
import { ZIndex } from '../constants';
import e, { EventType } from './eventemitter';
import { Singer } from './constants';
Expand Down Expand Up @@ -65,13 +66,13 @@ function EditMenu({ singer }: { singer: Singer }) {
<MenuItem
style={itemStyle}
icon={<MdImage />}
label="编辑头像"
label={t('edit_avatar')}
onClick={() =>
dialog.imageCut({
title: '编辑头像',
title: t('edit_avatar'),
onConfirm: async (blob) => {
if (!blob) {
notice.error('请选择头像');
notice.error(t('please_select_an_avatar'));
return false;
}
try {
Expand All @@ -88,7 +89,7 @@ function EditMenu({ singer }: { singer: Singer }) {
id: singer.id,
});
} catch (error) {
logger.error(error, "Updating singer's avatar fail");
logger.error(error, "Failed to update singers'avatar");
notice.error(error.message);
return false;
}
Expand All @@ -100,11 +101,10 @@ function EditMenu({ singer }: { singer: Singer }) {
<MenuItem
style={itemStyle}
icon={<MdImage />}
label="重置头像"
label={t('reset_avatar')}
onClick={() =>
dialog.confirm({
title: '确定重置头像吗?',
content: '重置后歌手将使用默认头像',
title: t('reset_avatar_question'),
onConfirm: async () => {
try {
await updateSinger({
Expand All @@ -116,7 +116,7 @@ function EditMenu({ singer }: { singer: Singer }) {
id: singer.id,
});
} catch (error) {
logger.error(error, '重置歌手头像失败');
logger.error(error, "Failed to reset singer's avatar");
dialog.alert({
content: error.message,
});
Expand All @@ -130,17 +130,17 @@ function EditMenu({ singer }: { singer: Singer }) {
<MenuItem
style={itemStyle}
icon={<MdTitle />}
label="编辑名字"
label={t('edit_name')}
onClick={() =>
dialog.input({
title: '编辑名字',
label: '名字',
title: t('edit_name'),
label: t('name'),
initialValue: singer.name,
maxLength: NAME_MAX_LENGTH,
onConfirm: async (name: string) => {
const trimmedName = name.replace(/\s+/g, ' ').trim();
if (!trimmedName) {
notice.error('请输入名字');
notice.error(t('please_enter_the_name'));
return false;
}
if (singer.name !== trimmedName) {
Expand All @@ -154,7 +154,7 @@ function EditMenu({ singer }: { singer: Singer }) {
id: singer.id,
});
} catch (error) {
logger.error(error, '更新歌手名字失败');
logger.error(error, "Failed to update singer's name");
notice.error(error.message);
return false;
}
Expand All @@ -166,11 +166,11 @@ function EditMenu({ singer }: { singer: Singer }) {
<MenuItem
style={itemStyle}
icon={<MdTextFields />}
label="编辑别名"
label={t('edit_alias')}
onClick={() =>
dialog.inputList({
title: '编辑别名',
label: '别名',
title: t('edit_alias'),
label: t('alias'),
initialValue: singer.aliases,
maxLength: ALIAS_MAX_LENGTH,
onConfirm: async (aliases: string[]) => {
Expand All @@ -189,7 +189,7 @@ function EditMenu({ singer }: { singer: Singer }) {
id: singer.id,
});
} catch (error) {
logger.error(error, "Updating singer's aliases fail");
logger.error(error, "Failed to update singer's alias");
notice.error(error.message);
return false;
}
Expand All @@ -201,7 +201,7 @@ function EditMenu({ singer }: { singer: Singer }) {
<MenuItem
style={itemStyle}
icon={<MdOutlineHistory />}
label="查看修改记录"
label={t('view_modify_record')}
onClick={() =>
playerEventemitter.emit(
PlayerEventType.OPEN_SINGER_MODIFY_RECORD_DRAWER,
Expand Down
2 changes: 1 addition & 1 deletion shared/constants/index.ts
Original file line number Diff line number Diff line change
Expand Up @@ -92,8 +92,8 @@ export const SHARED_MUSICBILL_INVITATION_MINIMAL_TTL = 1000 * 60 * 60 * 24 * 3;
export const SINGER_MODIFY_RECORD_TTL = 1000 * 60 * 60 * 24 * 180;

export enum Language {
EN_US = 'en-us',
ZH_HANS = 'zh-hans',
EN_US = 'en-us',
JA = 'ja',
}
export const LANGUAGES = Object.values(Language);
Expand Down

0 comments on commit 78d04be

Please sign in to comment.