feat(admin,player,api): 优胜冠军通用管理与界面精简
管理端新增冠军盘列表/编辑、展开懒加载与 ECharts 修复;各列表页去掉重复标题。玩家端支持多赛事冠军盘、分批加载与语言切换刷新。API 扩展 outright CRUD 与列表性能优化。 Co-authored-by: Cursor <cursoragent@cursor.com>
This commit is contained in:
@@ -1,82 +1,162 @@
|
||||
/** 球队 code / 名称 → ISO 3166-1 alpha-2,用于 flagcdn 国旗图 */
|
||||
/** 球队 code / 名称 → ISO 3166-1(flagcdn.com),含世界杯 48 强 */
|
||||
const CODE_TO_ISO: Record<string, string> = {
|
||||
MEX: 'mx',
|
||||
USA: 'us',
|
||||
CAN: 'ca',
|
||||
BRA: 'br',
|
||||
ARG: 'ar',
|
||||
ENG: 'gb',
|
||||
MUN: 'gb',
|
||||
CHE: 'gb',
|
||||
LIV: 'gb',
|
||||
MCI: 'gb',
|
||||
CZE: 'cz',
|
||||
KOR: 'kr',
|
||||
BIH: 'ba',
|
||||
PAR: 'py',
|
||||
RSA: 'za',
|
||||
SUI: 'ch',
|
||||
SCO: 'gb-sct',
|
||||
TUR: 'tr',
|
||||
CZE: 'cz',
|
||||
BIH: 'ba',
|
||||
// 世界杯 2026 48 强
|
||||
FRA: 'fr',
|
||||
ESP: 'es',
|
||||
ENG: 'gb',
|
||||
GER: 'de',
|
||||
ENG: 'gb-eng',
|
||||
BRA: 'br',
|
||||
ARG: 'ar',
|
||||
POR: 'pt',
|
||||
GER: 'de',
|
||||
NED: 'nl',
|
||||
NOR: 'no',
|
||||
BEL: 'be',
|
||||
COL: 'co',
|
||||
JPN: 'jp',
|
||||
URU: 'uy',
|
||||
USA: 'us',
|
||||
MAR: 'ma',
|
||||
CRO: 'hr',
|
||||
MEX: 'mx',
|
||||
SUI: 'ch',
|
||||
TUR: 'tr',
|
||||
SEN: 'sn',
|
||||
KOR: 'kr',
|
||||
AUT: 'at',
|
||||
ECU: 'ec',
|
||||
SWE: 'se',
|
||||
IRN: 'ir',
|
||||
GHA: 'gh',
|
||||
ALG: 'dz',
|
||||
BIH: 'ba',
|
||||
EGY: 'eg',
|
||||
TUN: 'tn',
|
||||
CAN: 'ca',
|
||||
PAN: 'pa',
|
||||
AUS: 'au',
|
||||
CZE: 'cz',
|
||||
KSA: 'sa',
|
||||
NZL: 'nz',
|
||||
COD: 'cd',
|
||||
UZB: 'uz',
|
||||
IRQ: 'iq',
|
||||
RSA: 'za',
|
||||
CIV: 'ci',
|
||||
JOR: 'jo',
|
||||
PAR: 'py',
|
||||
HAI: 'ht',
|
||||
QAT: 'qa',
|
||||
CPV: 'cv',
|
||||
CUW: 'cw',
|
||||
SCO: 'gb-sct',
|
||||
// 俱乐部 / 演示联赛
|
||||
MUN: 'gb',
|
||||
CHE: 'gb',
|
||||
LIV: 'gb',
|
||||
MCI: 'gb',
|
||||
};
|
||||
|
||||
const NAME_TO_ISO: Record<string, string> = {
|
||||
Mexico: 'mx',
|
||||
'South Africa': 'za',
|
||||
'United States': 'us',
|
||||
USA: 'us',
|
||||
Canada: 'ca',
|
||||
France: 'fr',
|
||||
Spain: 'es',
|
||||
England: 'gb-eng',
|
||||
Brazil: 'br',
|
||||
Argentina: 'ar',
|
||||
Portugal: 'pt',
|
||||
Germany: 'de',
|
||||
Netherlands: 'nl',
|
||||
Norway: 'no',
|
||||
Belgium: 'be',
|
||||
Colombia: 'co',
|
||||
Japan: 'jp',
|
||||
Uruguay: 'uy',
|
||||
USA: 'us',
|
||||
'United States': 'us',
|
||||
Morocco: 'ma',
|
||||
Croatia: 'hr',
|
||||
Mexico: 'mx',
|
||||
Switzerland: 'ch',
|
||||
Scotland: 'gb-sct',
|
||||
Turkey: 'tr',
|
||||
Senegal: 'sn',
|
||||
'South Korea': 'kr',
|
||||
Austria: 'at',
|
||||
Ecuador: 'ec',
|
||||
Sweden: 'se',
|
||||
Iran: 'ir',
|
||||
Ghana: 'gh',
|
||||
Algeria: 'dz',
|
||||
Bosnia: 'ba',
|
||||
Egypt: 'eg',
|
||||
Tunisia: 'tn',
|
||||
Canada: 'ca',
|
||||
Panama: 'pa',
|
||||
Australia: 'au',
|
||||
Czech: 'cz',
|
||||
'Czech Republic': 'cz',
|
||||
'Saudi Arabia': 'sa',
|
||||
'New Zealand': 'nz',
|
||||
'DR Congo': 'cd',
|
||||
Uzbekistan: 'uz',
|
||||
Iraq: 'iq',
|
||||
'South Africa': 'za',
|
||||
'Ivory Coast': 'ci',
|
||||
Jordan: 'jo',
|
||||
Paraguay: 'py',
|
||||
墨西哥: 'mx',
|
||||
美国: 'us',
|
||||
加拿大: 'ca',
|
||||
曼联: 'gb',
|
||||
切尔西: 'gb',
|
||||
墨西哥: 'mx',
|
||||
南非: 'za',
|
||||
捷克: 'cz',
|
||||
韩国: 'kr',
|
||||
波黑: 'ba',
|
||||
巴拉圭: 'py',
|
||||
瑞士: 'ch',
|
||||
巴西: 'br',
|
||||
苏格兰: 'gb-sct',
|
||||
土耳其: 'tr',
|
||||
法国: 'fr',
|
||||
阿根廷: 'ar',
|
||||
Haiti: 'ht',
|
||||
Qatar: 'qa',
|
||||
'Cape Verde': 'cv',
|
||||
Curacao: 'cw',
|
||||
Scotland: 'gb-sct',
|
||||
法国: 'fr',
|
||||
西班牙: 'es',
|
||||
英格兰: 'gb',
|
||||
德国: 'de',
|
||||
英格兰: 'gb-eng',
|
||||
巴西: 'br',
|
||||
阿根廷: 'ar',
|
||||
葡萄牙: 'pt',
|
||||
德国: 'de',
|
||||
荷兰: 'nl',
|
||||
挪威: 'no',
|
||||
比利时: 'be',
|
||||
哥伦比亚: 'co',
|
||||
日本: 'jp',
|
||||
乌拉圭: 'uy',
|
||||
美国: 'us',
|
||||
摩洛哥: 'ma',
|
||||
克罗地亚: 'hr',
|
||||
墨西哥: 'mx',
|
||||
瑞士: 'ch',
|
||||
土耳其: 'tr',
|
||||
塞内加尔: 'sn',
|
||||
韩国: 'kr',
|
||||
奥地利: 'at',
|
||||
厄瓜多尔: 'ec',
|
||||
瑞典: 'se',
|
||||
伊朗: 'ir',
|
||||
加纳: 'gh',
|
||||
阿尔及利亚: 'dz',
|
||||
波黑: 'ba',
|
||||
埃及: 'eg',
|
||||
突尼斯: 'tn',
|
||||
加拿大: 'ca',
|
||||
巴拿马: 'pa',
|
||||
澳大利亚: 'au',
|
||||
捷克: 'cz',
|
||||
沙特阿拉伯: 'sa',
|
||||
新西兰: 'nz',
|
||||
'刚果(金)': 'cd',
|
||||
乌兹别克斯坦: 'uz',
|
||||
伊拉克: 'iq',
|
||||
南非: 'za',
|
||||
科特迪瓦: 'ci',
|
||||
约旦: 'jo',
|
||||
巴拉圭: 'py',
|
||||
海地: 'ht',
|
||||
卡塔尔: 'qa',
|
||||
佛得角: 'cv',
|
||||
库拉索: 'cw',
|
||||
苏格兰: 'gb-sct',
|
||||
曼联: 'gb',
|
||||
切尔西: 'gb',
|
||||
};
|
||||
|
||||
export function teamFlagUrl(code?: string, name?: string): string {
|
||||
|
||||
Reference in New Issue
Block a user