This commit is contained in:
wchino
2026-06-13 17:38:25 +08:00
parent e7e938f261
commit 7b33d9f9fa
190 changed files with 23222 additions and 4336 deletions

View File

@@ -104,5 +104,5 @@ function onSizeChange(size: number) {
.page-title { font-size: 20px; font-weight: 700; color: #e0e0e0; }
.page-desc { font-size: 13px; color: #3a3a3a; }
.data-card { border-radius: 12px; }
.bet-no { font-size: 12px; color: #ccc; font-family: ui-monospace, monospace; word-break: break-all; }
.bet-no { font-size: 12px; color: var(--text); font-family: ui-monospace, monospace; word-break: break-all; }
</style>

View File

@@ -86,17 +86,17 @@ const mainTrendOption = computed(() =>
[
{
name: t('dash.chart_stake'),
color: '#d4d4d4',
color: '#346538',
values: s.value?.trend7d?.map((d) => toNum(d.stake)) ?? [],
},
{
name: t('dash.chart_payout'),
color: '#60a5fa',
color: '#1f6c9f',
values: s.value?.trend7d?.map((d) => toNum(d.payout)) ?? [],
},
{
name: t('dash.chart_ggr'),
color: '#a78bfa',
color: '#956400',
values: s.value?.trend7d?.map((d) => toNum(d.ggr)) ?? [],
},
],
@@ -110,11 +110,11 @@ const distributionOption = computed(() => {
const p = s.value?.players;
const raw = s.value?.bets.todayByStatus ?? {};
const betColors: Record<string, string> = {
PENDING: '#fb923c',
WON: '#d4d4d4',
LOST: '#f87171',
VOID: '#6b7280',
REFUNDED: '#60a5fa',
PENDING: '#956400',
WON: '#346538',
LOST: '#9f2f2d',
VOID: '#8c867c',
REFUNDED: '#1f6c9f',
};
const creditSegs = c
@@ -122,12 +122,12 @@ const distributionOption = computed(() => {
{
label: t('agent_dash.credit_available'),
value: toNum(c.availableCredit),
color: '#d4d4d4',
color: '#346538',
},
{
label: t('agent_dash.credit_used'),
value: toNum(c.usedCredit),
color: '#fb923c',
color: '#956400',
},
].filter((x) => x.value > 0)
: [];
@@ -137,13 +137,13 @@ const distributionOption = computed(() => {
.map((k) => ({
label: betStatusLabel(k),
value: raw[k].count,
color: betColors[k] ?? '#888',
color: betColors[k] ?? '#8c867c',
}));
const playerSegs = p
? [
{ label: t('dash.user_active'), value: p.active, color: '#d4d4d4' },
{ label: t('dash.user_suspended'), value: p.suspended, color: '#f87171' },
{ label: t('dash.user_active'), value: p.active, color: '#346538' },
{ label: t('dash.user_suspended'), value: p.suspended, color: '#9f2f2d' },
].filter((x) => x.value > 0)
: [];
@@ -449,4 +449,78 @@ const kpiSecondary = computed(() => {
grid-template-columns: 1fr;
}
}
/* Agent dashboard light overrides */
.state-card {
border-color: var(--danger-border);
background: var(--danger-bg);
}
.state-title {
color: var(--danger-text);
}
.state-hint,
.board-hint {
color: var(--text-muted);
}
.overview-board {
border-color: var(--border);
background: #ffffff;
box-shadow: var(--shadow);
}
.dash-updated {
color: #9b9489;
letter-spacing: 0;
}
.kpi-cell {
border-color: var(--border-soft);
background: #fbfaf7;
}
.kpi-cell--link:hover,
.kpi-cell--link:focus-visible {
border-color: #d5cfc3;
background: var(--accent-hover);
}
.kpi-label {
color: var(--text-muted);
}
.kpi-value {
color: var(--text);
font-weight: 800;
letter-spacing: 0;
}
.kpi-sub {
color: #9b9489;
}
.kpi-delta {
color: var(--text-muted);
background: #f0ede6;
}
.kpi-delta.up {
color: var(--success-text);
background: var(--success-bg);
}
.kpi-delta.down {
color: var(--danger-text);
background: var(--danger-bg);
}
.charts-stack {
border-top-color: var(--border-soft);
}
.chart-main-caption {
color: #9b9489;
}
</style>

View File

@@ -1601,4 +1601,62 @@ function statusTagType(s: string) {
.empty-hint { padding: 32px 0; color: #666; font-size: 13px; }
.create-alert { margin-bottom: 16px; }
.create-form { margin-top: 4px; }
.credit-strip {
border-color: var(--border);
background: #ffffff;
box-shadow: var(--shadow);
}
.credit-label,
.expand-loading,
.expand-section-title,
.expand-readonly-hint,
.field-hint,
.empty-hint {
color: var(--text-muted);
}
.credit-value {
color: var(--text);
}
.credit-value.c-green,
.invite-code-cell {
color: var(--success-text);
}
.credit-divider {
background: var(--border);
}
.invite-prominent-btn {
box-shadow: none;
}
.expand-panel {
margin-top: 6px;
padding: 12px;
border: 1px solid var(--border);
border-radius: 8px;
background: #fbfaf7;
}
@media (max-width: 760px) {
.credit-strip {
align-items: stretch;
flex-direction: column;
gap: 10px;
}
.credit-divider {
width: 100%;
height: 1px;
}
.inner-toolbar,
.expand-pager {
justify-content: flex-start;
}
}
</style>

View File

@@ -434,4 +434,48 @@ function statusLabel(status: string) {
color: #666;
font-size: 13px;
}
.page-title {
color: var(--text);
}
.page-desc,
.credit-label,
.field-hint,
.empty-hint {
color: var(--text-muted);
}
.credit-strip,
.data-card {
border-color: var(--border);
background: #ffffff;
box-shadow: var(--shadow);
}
.credit-value {
color: var(--text);
}
.credit-value.c-green {
color: var(--success-text);
}
.credit-divider {
background: var(--border);
}
@media (max-width: 760px) {
.page-header,
.credit-strip {
align-items: flex-start;
flex-direction: column;
gap: 10px;
}
.credit-divider {
width: 100%;
height: 1px;
}
}
</style>