feat(lotto): 분석탭 → 자료실 라벨 + 첫 진입 모든 패널 접힘

This commit is contained in:
2026-05-11 09:03:10 +09:00
parent ff7ac48c6b
commit 0bf1233e96
3 changed files with 55 additions and 26 deletions

View File

@@ -7,7 +7,7 @@ import SwipeableView from '../../components/SwipeableView';
const TABS = [ const TABS = [
{ id: 'briefing', label: '🗓 이번 주 브리핑' }, { id: 'briefing', label: '🗓 이번 주 브리핑' },
{ id: 'analysis', label: '📊 분석·통계' }, { id: 'analysis', label: '📚 자료실 / Deep Dive' },
{ id: 'purchase', label: '💰 구매·성과' }, { id: 'purchase', label: '💰 구매·성과' },
]; ];

View File

@@ -1526,3 +1526,8 @@
font-size: 13px; font-size: 13px;
} }
} }
.lotto-section-fold { margin-bottom: 14px; }
.lotto-section-fold > summary { cursor: pointer; padding: 12px 16px; background: rgba(255,255,255,0.03);
border-radius: 10px; font-weight: 600; font-size: 14px; opacity: 0.85; }
.lotto-section-fold[open] > summary { margin-bottom: 12px; opacity: 1; }

View File

@@ -40,18 +40,21 @@ export default function AnalysisTab() {
<PerformanceBanner perf={ld.perfStats} /> <PerformanceBanner perf={ld.perfStats} />
{/* 종합 추론 번호 추천 */} {/* 종합 추론 번호 추천 */}
<CombinedRecommendPanel <details className="lotto-section-fold">
combined={ld.combined} <summary>종합 추론 추천</summary>
history={ld.combinedHistory} <CombinedRecommendPanel
loading={ld.combinedLoading} combined={ld.combined}
histLoading={ld.combinedHistLoading} history={ld.combinedHistory}
onRun={ld.runCombinedRecommend} loading={ld.combinedLoading}
onCopy={copyNumbers} histLoading={ld.combinedHistLoading}
/> onRun={ld.runCombinedRecommend}
onCopy={copyNumbers}
/>
</details>
{/* 최신 회차 + 시뮬레이션 추천 */} {/* 최신 회차 */}
<div className="lotto-grid"> <details className="lotto-section-fold">
{/* Latest Draw */} <summary>최신 회차</summary>
<section className="lotto-panel"> <section className="lotto-panel">
<div className="lotto-panel__head"> <div className="lotto-panel__head">
<div> <div>
@@ -87,8 +90,11 @@ export default function AnalysisTab() {
<p className="lotto-empty">최신 회차 데이터가 없습니다.</p> <p className="lotto-empty">최신 회차 데이터가 없습니다.</p>
)} )}
</section> </section>
</details>
{/* Simulation Picks */} {/* Simulation Picks */}
<details className="lotto-section-fold">
<summary>시뮬레이션 추천</summary>
<section className="lotto-panel"> <section className="lotto-panel">
<div className="lotto-panel__head"> <div className="lotto-panel__head">
<div> <div>
@@ -163,19 +169,24 @@ export default function AnalysisTab() {
</> </>
)} )}
</section> </section>
</div> </details>
{/* 이번 주 공략 리포트 */} {/* 이번 주 공략 리포트 */}
<ReportPanel <details className="lotto-section-fold">
report={ld.report} <summary>이번 공략 리포트</summary>
history={ld.reportHistory} <ReportPanel
loading={ld.reportLoading} report={ld.report}
onRefresh={ld.refreshReport} history={ld.reportHistory}
onSelectDrw={ld.loadSpecificReport} loading={ld.reportLoading}
/> onRefresh={ld.refreshReport}
onSelectDrw={ld.loadSpecificReport}
/>
</details>
{/* 통계 분석 */} {/* 통계 분석 */}
<section className="lotto-panel lotto-panel--wide"> <details className="lotto-section-fold">
<summary>통계 분석</summary>
<section className="lotto-panel lotto-panel--wide">
<div className="lotto-panel__head"> <div className="lotto-panel__head">
<div> <div>
<p className="lotto-panel__eyebrow">Analysis</p> <p className="lotto-panel__eyebrow">Analysis</p>
@@ -237,9 +248,12 @@ export default function AnalysisTab() {
</p> </p>
)} )}
</section> </section>
</details>
{/* 전체 번호 분포 */} {/* 전체 번호 분포 */}
<section className="lotto-panel lotto-panel--wide"> <details className="lotto-section-fold">
<summary>전체 회차 번호 분포</summary>
<section className="lotto-panel lotto-panel--wide">
<div className="lotto-panel__head"> <div className="lotto-panel__head">
<div> <div>
<p className="lotto-panel__eyebrow">Distribution</p> <p className="lotto-panel__eyebrow">Distribution</p>
@@ -263,12 +277,18 @@ export default function AnalysisTab() {
<p className="lotto-empty">통계 데이터를 불러오지 못했습니다.</p> <p className="lotto-empty">통계 데이터를 불러오지 못했습니다.</p>
)} )}
</section> </section>
</details>
{/* 내 번호 패턴 */} {/* 내 번호 패턴 */}
<PersonalAnalysisPanel data={ld.personalAnalysis} loading={ld.personalLoading} /> <details className="lotto-section-fold">
<summary> 번호 패턴</summary>
<PersonalAnalysisPanel data={ld.personalAnalysis} loading={ld.personalLoading} />
</details>
{/* 수동 추천 */} {/* 수동 추천 */}
<section className="lotto-panel"> <details className="lotto-section-fold">
<summary>수동 추천</summary>
<section className="lotto-panel">
<div className="lotto-panel__head"> <div className="lotto-panel__head">
<div> <div>
<p className="lotto-panel__eyebrow">Manual Recommendation</p> <p className="lotto-panel__eyebrow">Manual Recommendation</p>
@@ -365,9 +385,12 @@ export default function AnalysisTab() {
<p className="lotto-empty">아직 추천 결과가 없습니다.</p> <p className="lotto-empty">아직 추천 결과가 없습니다.</p>
)} )}
</section> </section>
</details>
{/* 추천 히스토리 */} {/* 추천 히스토리 */}
<section className="lotto-panel"> <details className="lotto-section-fold">
<summary>추천 히스토리</summary>
<section className="lotto-panel">
<div className="lotto-panel__head"> <div className="lotto-panel__head">
<div> <div>
<p className="lotto-panel__eyebrow">History</p> <p className="lotto-panel__eyebrow">History</p>
@@ -423,6 +446,7 @@ export default function AnalysisTab() {
</div> </div>
)} )}
</section> </section>
</details>
</> </>
); );
} }