purewhiter--mobilegym
43 行
1.9 KiB
TypeScript
43 行
1.9 KiB
TypeScript
const BANK_NAME_REPLACEMENTS: Array<[string, string]> = [
|
|
['\u4e2d\u56fd\u5efa\u8bbe\u94f6\u884c', 'China Construction Bank'],
|
|
['\u5efa\u8bbe\u94f6\u884c', 'China Construction Bank'],
|
|
['\u4e2d\u56fd\u5de5\u5546\u94f6\u884c', 'Industrial and Commercial Bank of China'],
|
|
['\u5de5\u5546\u94f6\u884c', 'Industrial and Commercial Bank of China'],
|
|
['\u4e2d\u56fd\u519c\u4e1a\u94f6\u884c', 'Agricultural Bank of China'],
|
|
['\u519c\u4e1a\u94f6\u884c', 'Agricultural Bank of China'],
|
|
['\u4e2d\u56fd\u94f6\u884c', 'Bank of China'],
|
|
['\u62db\u5546\u94f6\u884c', 'China Merchants Bank'],
|
|
['\u4ea4\u901a\u94f6\u884c', 'Bank of Communications'],
|
|
['\u4e2d\u56fd\u90ae\u653f\u50a8\u84c4\u94f6\u884c', 'Postal Savings Bank of China'],
|
|
['\u90ae\u653f\u50a8\u84c4\u94f6\u884c', 'Postal Savings Bank of China'],
|
|
['\u5e73\u5b89\u94f6\u884c', 'Ping An Bank'],
|
|
['\u4e2d\u4fe1\u94f6\u884c', 'China CITIC Bank'],
|
|
['\u6d66\u53d1\u94f6\u884c', 'SPD Bank'],
|
|
['\u4e2d\u56fd\u6c11\u751f\u94f6\u884c', 'China Minsheng Bank'],
|
|
['\u6c11\u751f\u94f6\u884c', 'China Minsheng Bank'],
|
|
['\u5e7f\u53d1\u94f6\u884c', 'China Guangfa Bank'],
|
|
['\u5174\u4e1a\u94f6\u884c', 'Industrial Bank'],
|
|
['\u4e2d\u56fd\u5149\u5927\u94f6\u884c', 'China Everbright Bank'],
|
|
['\u5149\u5927\u94f6\u884c', 'China Everbright Bank'],
|
|
['\u534e\u590f\u94f6\u884c', 'Huaxia Bank'],
|
|
['\u50a8\u84c4\u5361', 'Debit Card'],
|
|
['\u4fe1\u7528\u5361', 'Credit Card'],
|
|
['\u94f6\u884c\u5361', 'Bank Card'],
|
|
];
|
|
|
|
function isMostlyAscii(value: string): boolean {
|
|
return /^[\x00-\x7F\s]*$/.test(value);
|
|
}
|
|
|
|
export function localizeBankName(name: string, isEnglish: boolean): string {
|
|
const raw = String(name || '').trim();
|
|
if (!raw) return isEnglish ? 'Bank Card' : '\u94f6\u884c\u5361';
|
|
if (!isEnglish || isMostlyAscii(raw)) return raw;
|
|
|
|
let result = raw;
|
|
for (const [zh, en] of BANK_NAME_REPLACEMENTS) {
|
|
result = result.split(zh).join(en);
|
|
}
|
|
return result || 'Bank Card';
|
|
}
|