feat: 增强结果展示与用户交互

- 在 PlayerBottomNav 中新增注单导航选项
- 在 DrawResultDetailScreen 中添加高亮显示用户命中号码的功能,并显示个人派彩信息
- 在 DrawResultsListScreen 中引入 JackpotResultsStrip 组件以展示奖池信息
- 在 TwentyThreeResultsGrid 中实现命中号码的高亮效果,提升用户体验
This commit is contained in:
2026-05-11 15:40:42 +08:00
parent 1922a29f49
commit 377e03e167
16 changed files with 922 additions and 17 deletions

7
src/lib/norm-4d.ts Normal file
View File

@@ -0,0 +1,7 @@
/** 与后端结算口径一致:仅数字,固定 4 位左侧补零。 */
export function norm4d(raw: string): string {
const digits = raw.replace(/\D/g, "");
const tail = digits.slice(-4);
return tail.padStart(4, "0");
}

34
src/lib/play-labels.ts Normal file
View File

@@ -0,0 +1,34 @@
/** 玩法展示名(与种子 play_types 对齐;无映射时回退 play_code */
const LABELS: Record<string, string> = {
big: "Big",
small: "Small",
pos_4a: "4A",
pos_4b: "4B",
pos_4c: "4C",
pos_4d: "4D",
pos_4e: "4E",
pos_3a: "3A",
pos_3b: "3B",
pos_3c: "3C",
pos_3abc: "3ABC",
pos_2a: "2A",
pos_2b: "2B",
pos_2c: "2C",
pos_2abc: "2ABC",
straight: "Straight",
box: "Box",
ibox: "iBox",
mbox: "mBox",
roll: "Roll",
half_box: "Half Box",
head: "Head",
tail: "Tail",
odd: "Odd",
even: "Even",
digit_big: "Big Digit",
digit_small: "Small Digit",
};
export function playLabelZh(playCode: string): string {
return LABELS[playCode] ?? playCode;
}