fix: 베팅 후보에 종목별 핵심 능력치를 표시

전력전은 종합, 통솔전은 통솔, 일기토는 무력, 설전은 지력을 배당과 현재 투자금 옆에 표시한다. 네 종목 매핑과 desktop/mobile Chromium containment를 회귀 검사한다.
This commit is contained in:
2026-08-19 13:32:08 +00:00
parent cc1a7d8bbf
commit 8dae24a376
6 changed files with 85 additions and 4 deletions
@@ -3,6 +3,7 @@ import { computed, ref } from 'vue';
import GeneralIdentity from '../ui/GeneralIdentity.vue';
import {
buildTournamentBracket,
resolveTournamentCoreStat,
type TournamentBracketMatch,
type TournamentBracketParticipant,
} from '../../utils/tournamentBracket';
@@ -14,6 +15,7 @@ const props = defineProps<{
betTotals?: Record<number, number>;
myBetTotals?: Record<number, number>;
totalBet: number;
tournamentType?: number;
showLegend?: boolean;
}>();
@@ -68,6 +70,8 @@ const odds = (id: number | null) => {
return (props.totalBet / amount).toFixed(2);
};
const myBet = (id: number | null) => (id === null ? 0 : (props.myBetTotals?.[id] ?? 0));
const coreStat = (slot: (typeof bracket.value.top16.slots)[number]) =>
resolveTournamentCoreStat(slot, props.tournamentType ?? 0);
const mobilePairs = computed(() => {
const column = roundColumns.value[activeMobileRound.value] ?? [];
if (activeMobileRound.value === roundColumns.value.length - 1) return column.map((slot) => [slot]);
@@ -119,6 +123,9 @@ const mobilePairs = computed(() => {
>
<GeneralIdentity :name="slot.name" :picture="slot.picture" :image-server="slot.imageServer" />
<div v-if="columnIndex === 0" class="bracket-bet-summary">
<small v-if="coreStat(slot)" class="bracket-core-stat">
{{ coreStat(slot)?.label }} {{ coreStat(slot)?.value }}
</small>
<small class="bracket-odds">배당 {{ odds(slot.id) }}</small>
<small class="bracket-my-bet"> 투자 {{ myBet(slot.id) }}</small>
</div>
@@ -152,6 +159,9 @@ const mobilePairs = computed(() => {
>
<GeneralIdentity :name="slot.name" :picture="slot.picture" :image-server="slot.imageServer" />
<div v-if="activeMobileRound === 0" class="bracket-bet-summary">
<small v-if="coreStat(slot)" class="bracket-core-stat">
{{ coreStat(slot)?.label }} {{ coreStat(slot)?.value }}
</small>
<small class="bracket-odds">배당 {{ odds(slot.id) }}</small>
<small class="bracket-my-bet"> 투자 {{ myBet(slot.id) }}</small>
</div>
@@ -236,6 +246,7 @@ const mobilePairs = computed(() => {
gap: 4px;
white-space: nowrap;
}
.bracket-core-stat,
.bracket-odds,
.bracket-my-bet {
display: block;
@@ -244,6 +255,9 @@ const mobilePairs = computed(() => {
font-size: 11px;
line-height: 12px;
}
.bracket-core-stat {
color: #fff;
}
.bracket-my-bet {
overflow: hidden;
color: orange;