feat: streamline mobile discovery focus

This commit is contained in:
kris
2026-03-30 01:13:39 +08:00
parent 62caaa0ab0
commit d7c25d1627
3 changed files with 14 additions and 3 deletions

View File

@@ -5400,7 +5400,7 @@ function renderDiscoveryScreen() {
];
const activeTab = getActiveDetailTab("discoveryDetailTab", detailTabs);
const selectedSummaryHtml = `
<div class="hero-card discovery-selected-hero" style="padding:18px;">
<div class="hero-card discovery-selected-hero mobile-secondary-card" style="padding:18px;">
<div class="entity-cell">
<div class="avatar-lg">${escapeHtml(initials(getAccountName(selected) || "SF"))}</div>
<div>
@@ -5449,7 +5449,7 @@ function renderDiscoveryScreen() {
<span></span>
<input data-action="discovery-query" value="${escapeHtml(appState.discoveryQuery)}" placeholder="搜账号名、账号标识、主页链接、关键词" />
</label>
<div class="filters">
<div class="filters mobile-priority-filters">
<div class="filter">平台${escapeHtml(currentPlatformLabel)}</div>
<div class="filter">账号数${escapeHtml(formatNumber(accounts.length))}</div>
<div class="filter">报告${escapeHtml(formatNumber(reports.length))}</div>

View File

@@ -2287,6 +2287,10 @@ tbody tr:hover {
flex: 1 1 calc(50% - 4px);
}
.mobile-priority-filters .filter:nth-child(n+3) {
display: none;
}
.workspace-switch span {
display: none;
}
@@ -2315,6 +2319,10 @@ tbody tr:hover {
display: none;
}
.mobile-secondary-card {
display: none;
}
.mobile-flow-focus-card {
display: grid;
gap: 10px;

View File

@@ -198,6 +198,7 @@ test("discovery and production screens expose mobile focus cards with next-step
const cssMobile = extractBetween(CSS, "@media (max-width: 760px) {", "@media (max-width: 560px) {");
assert.match(discovery, /mobile-only mobile-flow-focus-card/);
assert.match(discovery, /class="filters mobile-priority-filters"/);
assert.match(discovery, /下一步先做/);
assert.match(discovery, /导入当前对标/);
assert.match(discovery, /查相似/);
@@ -212,10 +213,12 @@ test("mobile heavy screens mark redundant desktop metric blocks for compact hidi
const production = extractBetween(APP, "function renderProductionScreen()", "function renderReviewScreen()");
const cssMobile = extractBetween(CSS, "@media (max-width: 760px) {", "@media (max-width: 560px) {");
assert.match(discovery, /discovery-selected-hero/);
assert.match(discovery, /discovery-selected-hero mobile-secondary-card/);
assert.match(production, /production-queue-grid/);
assert.match(cssMobile, /\.discovery-selected-hero \.mini-grid/);
assert.match(cssMobile, /\.production-queue-grid/);
assert.match(cssMobile, /\.mobile-priority-filters \.filter:nth-child\(n\+3\)/);
assert.match(cssMobile, /\.mobile-secondary-card/);
});
test("projects screen uses an adaptive project grid instead of a fixed three-column squeeze", () => {