|
10 | 10 | <lineup-member :member="member" :lineup_id="lineup.id"></lineup-member> |
11 | 11 | </TableCell> |
12 | 12 | <TableCell> |
13 | | - <span class="tabular-nums"><AnimatedStat :value="attempts" /></span> |
14 | | - <span class="text-muted-foreground"> · </span> |
15 | | - <span class="tabular-nums"><AnimatedStat :value="attemptsPct + '%'" /></span> |
16 | | - <StatChevron :level="attemptsLevel" class="ml-0.5" /> |
| 13 | + <span class="inline-flex items-baseline gap-1"> |
| 14 | + <span class="tabular-nums"><AnimatedStat :value="attempts" /></span> |
| 15 | + <span class="tabular-nums text-xs text-muted-foreground leading-none" |
| 16 | + >(<StatLabel stat="opening_attempts_pct" |
| 17 | + ><AnimatedStat :value="attemptsPct + '%'" /></StatLabel |
| 18 | + >)</span |
| 19 | + > |
| 20 | + <StatChevron :level="attemptsLevel" class="self-center ml-0.5" /> |
| 21 | + </span> |
17 | 22 | </TableCell> |
18 | 23 | <TableCell> |
19 | | - <span class="tabular-nums"><AnimatedStat :value="success" /></span> |
20 | | - <span class="text-muted-foreground"> · </span> |
21 | | - <span class="tabular-nums"><AnimatedStat :value="successPct + '%'" /></span> |
22 | | - <StatChevron :level="successLevel" class="ml-0.5" /> |
| 24 | + <span class="inline-flex items-baseline gap-1"> |
| 25 | + <span class="tabular-nums"><AnimatedStat :value="success" /></span> |
| 26 | + <span class="tabular-nums text-xs text-muted-foreground leading-none" |
| 27 | + >(<StatLabel stat="opening_success_pct" |
| 28 | + ><AnimatedStat :value="successPct + '%'" /></StatLabel |
| 29 | + >)</span |
| 30 | + > |
| 31 | + <StatChevron :level="successLevel" class="self-center ml-0.5" /> |
| 32 | + </span> |
23 | 33 | </TableCell> |
24 | 34 | <TableCell v-if="duelsVis.traded !== false"> |
25 | | - <span class="tabular-nums"><AnimatedStat :value="traded" /></span> |
26 | | - <span class="text-muted-foreground"> · </span> |
27 | | - <span class="tabular-nums"><AnimatedStat :value="tradedPct + '%'" /></span> |
28 | | - <StatChevron :level="tradedLevel" class="ml-0.5" /> |
| 35 | + <span class="inline-flex items-baseline gap-1"> |
| 36 | + <span class="tabular-nums"><AnimatedStat :value="traded" /></span> |
| 37 | + <span class="tabular-nums text-xs text-muted-foreground leading-none" |
| 38 | + >(<StatLabel stat="opening_traded_pct" |
| 39 | + ><AnimatedStat :value="tradedPct + '%'" /></StatLabel |
| 40 | + >)</span |
| 41 | + > |
| 42 | + <StatChevron :level="tradedLevel" class="self-center ml-0.5" /> |
| 43 | + </span> |
29 | 44 | </TableCell> |
30 | 45 | <TableCell |
31 | 46 | v-if="duelsVis.most_killed !== false" |
@@ -101,14 +116,21 @@ import LineupMember from "~/components/match/LineupMember.vue"; |
101 | 116 | import PlayerDisplay from "~/components/PlayerDisplay.vue"; |
102 | 117 | import AnimatedStat from "~/components/AnimatedStat.vue"; |
103 | 118 | import StatChevron from "~/components/StatChevron.vue"; |
| 119 | +import StatLabel from "~/components/common/StatLabel.vue"; |
104 | 120 | import { statLevelFor, type StatLevel } from "~/utils/statTiers"; |
105 | 121 | import { resolveWeapon } from "~/utilities/weaponIcon"; |
106 | 122 | import { useMatchSide } from "~/composables/useMatchSide"; |
107 | 123 | import { useOpeningDuelsColumns } from "~/composables/useMatchTableColumns"; |
108 | 124 | import { useCurrentUserRow } from "~/composables/useCurrentUserRow"; |
109 | 125 |
|
110 | 126 | export default { |
111 | | - components: { LineupMember, PlayerDisplay, AnimatedStat, StatChevron }, |
| 127 | + components: { |
| 128 | + LineupMember, |
| 129 | + PlayerDisplay, |
| 130 | + AnimatedStat, |
| 131 | + StatChevron, |
| 132 | + StatLabel, |
| 133 | + }, |
112 | 134 | setup() { |
113 | 135 | const { visibility: duelsVis } = useOpeningDuelsColumns(); |
114 | 136 | const { rowClass, stickyCellClass } = useCurrentUserRow(); |
|
0 commit comments