Files
AIclinicalresearch/docs/01-平台基础层/06-前端架构/02-导航结构设计.md
HaHafeng 1b53ab9d52 feat(aia): Complete AIA V2.0 with universal streaming capabilities
Major Changes:
- Add StreamingService with OpenAI Compatible format
- Upgrade Chat component V2 with Ant Design X integration
- Implement AIA module with 12 intelligent agents
- Update API routes to unified /api/v1 prefix
- Update system documentation

Backend (~1300 lines):
- common/streaming: OpenAI Compatible adapter
- modules/aia: 12 agents, conversation service, streaming integration
- Update route versions (RVW, PKB to v1)

Frontend (~3500 lines):
- modules/aia: AgentHub + ChatWorkspace (100% prototype restoration)
- shared/Chat: AIStreamChat, ThinkingBlock, useAIStream Hook
- Update API endpoints to v1

Documentation:
- AIA module status guide
- Universal capabilities catalog
- System overview updates
- All module documentation sync

Tested: Stream response verified, authentication working
Status: AIA V2.0 core completed (85%)
2026-01-14 19:15:01 +08:00

403 lines
11 KiB
Markdown
Raw Blame History

This file contains invisible Unicode characters
This file contains invisible Unicode characters that are indistinguishable to humans but may be processed differently by a computer. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# 蟇シ闊ェ扈捺桷隶セ隶。譁<EFBDA1>。」
> **譁<>。」迚域悽<E59F9F>?* v1.0
> **蛻帛サコ譌・譛滂シ?* 2025-10-29
> **扈エ謚、閠<EFBDA4><EFBFBD>** 蜑咲ォッ蠑€蜿大屬髦?
> **譛€蜷取峩譁ー<E8AD81><EFBDB0>** 2025-10-29
---
## <20>搭 譁<>。」隸エ譏<EFBDB4>
譛ャ譁<EFBFBD>。」隸ヲ扈<EFBFBD>ッエ譏拶I遘醍<EFBFBD>泌ケウ蜿ー逧<EFBFBD>ッシ闊ェ扈捺桷隶セ隶。<EFBFBD>悟桁諡ャ鬘カ驛ィ蟇シ闊ェ蜥悟キヲ萓ァ蟇シ闊ェ逧<EFBFBD>ョセ隶。隗<EFBFBD>激縲?
> **驥崎ヲ∵署遉コ<E98189>?* 譛ャ譁<EFBDAC>。」荳ュ豸牙所逧<E68980>ィ。蝮礼沿譛ャ隕∵アゑシ<E38291>requiredVersion`<60>牙插荳?*蛻晏ァ矩<EFBDA7>鄂ョ**<2A>悟庄莉・譬ケ謐ョ荳壼苅髴€豎る囂譌カ隹<EFBDB6>紛縲ら沿譛ャ譚<EFBDAC>剞蛻<E5899E><E89BBB>螳悟<E89EB3>蜿ッ驟咲スョ<EFBDBD>梧裏髴€謾ケ蜉ィ莉」遐<EFBDA3>€サ霎代€?
---
## <20>ァュ 鬘カ驛ィ蟇シ闊ェ隶セ隶。
### 蟇シ闊ェ鬘ケ驟咲ス?
```typescript
// navigationConfig.ts
export interface NavigationItem {
id: string; // 蜚ッ荳€<C280><EFBFBD>
label: string; // 譏セ遉コ蜷咲ァー
route: string; // 霍ッ逕ア霍ッ蠕<EFBDAF>
icon?: ReactNode; // 蝗セ譬<EFBDBE>シ亥庄騾会シ<E4BC9A>
requiredVersion?: UserVersion; // 譛€菴守沿譛ャ隕∵アゑシ亥庄驟咲スョ<EFBDBD>梧髪謖∝錘譛溯ー<E6BAAF><EFBFBD>?
standalone?: boolean; // 譏ッ蜷ヲ謾ッ謖∫峡遶玖ソ占。<E58DA0>
}
/**
* 鬘カ驛ィ蟇シ闊ェ驟咲スョ
*
* 笞<><E7AC9E><EFBFBD> 驥崎ヲ∬ッエ譏趣シ?
* - requiredVersion 蟄玲ョオ荳コ蛻晏ァ矩<EFBDA7>鄂ョ<E98482>悟庄譬ケ謐ョ荳壼苅髴€豎る囂譌カ隹<EFBDB6><E99AB9>?
* - 謗ィ闕宣€夊ソ<E5A48A>錘遶ッAPI蜉ィ諤∬執蜿也沿譛ャ驟咲スョ<EFBDBD>梧髪謖∝ョ樊慮隹<E685AE>
* - 菫ョ謾ケ迚域悽隕∵アよ裏髴€謾ケ蜉ィ莉」遐<EFBDA3>€サ霎托シ悟宵髴€譖エ譁ー驟咲スョ蜊ウ蜿ッ
*/
export const TOP_NAVIGATION_ITEMS: NavigationItem[] = [
{
id: 'ai-qa',
label: 'AI髣ョ遲<EFBDAE>',
route: '/ai-qa',
requiredVersion: 'basic', // 蛻晏ァ矩<EFBDA7>鄂ョ<E98482>壼渕遑€迚亥庄逕ィ<E98095>亥庄隹<E5BA84><EFBFBD><E7B49B>
},
{
id: 'literature-platform',
label: 'AI譎コ閭ス譁<EFBDBD>鍵',
route: '/literature',
requiredVersion: 'advanced', // 蛻晏ァ矩<EFBDA7>鄂ョ<E98482>夐ォ倡コァ迚亥庄逕ィ<E98095>亥庄隹<E5BA84><EFBFBD>?
standalone: true,
},
{
id: 'knowledge-base',
label: '遏・隸<EFBDA5>コ?,
route: '/knowledge-base',
requiredVersion: 'basic', // 蛻晏ァ矩<EFBDA7>鄂ョ<E98482>壼渕遑€迚亥庄逕ィ<E98095>亥庄隹<E5BA84><EFBFBD><E7B49B>
},
{
id: 'data-cleaning',
label: '<EFBFBD><EFBFBD>',
route: '/data-cleaning',
requiredVersion: 'advanced', // 蛻晏ァ矩<EFBDA7>鄂ョ<E98482>夐ォ倡コァ迚亥庄逕ィ<E98095>亥庄隹<E5BA84><EFBFBD>?
placeholder: true, // 蜊<>菴搾シ梧仞遉?蠑€蜿台クュ"
},
{
id: 'statistical-analysis',
label: '<EFBFBD>',
route: '/intelligent-analysis',
requiredVersion: 'premium', // 蛻晏ァ矩<EFBDA7>鄂ョ<E98482>壽覧闊ー迚亥庄逕ィ<E98095>亥庄隹<E5BA84><EFBFBD>?
external: true, // 逕アJava蝗「髦溷シ€蜿托シ悟宵蛛夐。カ驛ィ蟇シ闊ェ髮<EFBDAA><E9ABAE>
},
{
id: 'statistical-tools',
label: '<EFBFBD>',
route: '/statistical-tools',
requiredVersion: 'premium', // 蛻晏ァ矩<EFBDA7>鄂ョ<E98482>壽覧闊ー迚亥庄逕ィ<E98095>亥庄隹<E5BA84><EFBFBD>?
external: true, // 逕アJava蝗「髦溷シ€蜿托シ悟宵蛛夐。カ驛ィ蟇シ闊ェ髮<EFBDAA><E9ABAE>
},
];
```
### 鬘カ驛ィ蟇シ闊ェ蟶<EFBDAA>€
```
笏娯楳笏€笏€笏€笏€笏€笏€笏€笏€笏€笏€笏€笏€笏€笏€笏€笏€笏€笏€笏€笏€笏€笏€笏€笏€笏€笏€笏€笏€笏€笏€笏€笏€笏€笏€笏€笏€笏€笏€笏€笏€笏€笏€笏€笏€笏€笏€笏€笏€笏€笏€笏€笏€笏€笏€笏€笏€笏€笏€笏€笏€笏€笏€笏€笏€笏€笏€笏€笏€笏€笏€笏€笏€笏€笏?
笏? [Logo] [AI髣ョ遲脳 [AI譎コ閭ス譁<EFBDBD>鍵] [遏・隸<EFBDA5>コ転 [譎コ閭ス謨ー謐ョ貂<EFBDAE>エ余 [譎コ閭ス扈溯ョ。蛻<EFBDA1>梵] [扈溯ョ。蛻<EFBDA1>梵蟾・蜈キ] [逕ィ謌キ蜷江 [逕ィ謌キ闖懷黒笆シ] 笏?
笏披楳笏€笏€笏€笏€笏€笏€笏€笏€笏€笏€笏€笏€笏€笏€笏€笏€笏€笏€笏€笏€笏€笏€笏€笏€笏€笏€笏€笏€笏€笏€笏€笏€笏€笏€笏€笏€笏€笏€笏€笏€笏€笏€笏€笏€笏€笏€笏€笏€笏€笏€笏€笏€笏€笏€笏€笏€笏€笏€笏€笏€笏€笏€笏€笏€笏€笏€笏€笏€笏€笏€笏€笏€笏€笏?
160px 閾ェ騾ょコ泌ョス蠎ヲ 200px
```
### 隗<>ァ芽ョセ隶。隗<EFBDA1>
#### 蟇シ闊ェ鬘ケ譬キ蠑?
- **豁」蟶ク迥カ諤?*<2A>啻color: #4b5563`, `font-weight: 500`
- **謔ャ蛛懃憾諤?*<2A>啻color: #0ea5e9`, `background: rgba(14, 165, 233, 0.1)`
- **豼€豢サ迥カ諤?*<2A>啻color: #0ea5e9`, `font-weight: 600`, `border-bottom: 2px solid #0ea5e9`
- **遖∫畑迥カ諤?*<2A>域裏譚<E8A38F><EFBFBD>会シ啻color: #9ca3af`, `cursor: not-allowed`
#### 髣エ霍晁ァ<E69981>
- 蟇シ闊ェ鬘ケ荵矩龍<E79FA9>啻16px` 豌エ蟷ウ髣エ霍<EFBDB4>
- 蟇シ闊ェ鬘ケ蜀<EFBDB9>セケ霍晢シ啻12px 16px`
- 謨エ荳ェ蟇シ闊ェ譬城ォ伜コヲ<EFBDBA>啻64px`
### 荳ェ莠コ荳ュ蠢<EFBDAD>ョセ隶。
**菴咲スョ**<EFBFBD>夐。カ驛ィ蟇シ闊ェ譛€蜿ウ萓ァ
**譏セ遉コ蜀<EFBDBA>ョケ**<EFBFBD>?
- 逕ィ謌キ蜷搾シ域焔譛コ蜿キ閼ア謨乗仞遉コ<E98189>悟ヲゑシ啻186****8738`<60>?
- 逕ィ謌キ螟エ蜒<EFBDB4>/蝗セ譬<EFBDBE>シ育せ蜃サ隗ヲ蜿台ク区級闖懷黒<E687B7><E9BB92>
**荳区級闖懷黒騾蛾。ケ**<EFBFBD>?
```
笏娯楳笏€笏€笏€笏€笏€笏€笏€笏€笏€笏€笏€笏€笏€笏€笏€笏€笏€笏€笏€笏€笏?
笏?荳ェ莠コ荳ュ蠢<EFBDAD> 笏?
笏?蜴<>彰隶ー蠖<EFBDB0> 笏?
笏?笏€笏€笏€笏€笏€笏€笏€笏€笏€笏€笏€笏€笏€笏€笏€笏€ 笏?
笏?隶「髦<EFBDA2>ョ。逅<EFBDA1> 笏?
笏?騾€蜃コ雍ヲ蜿? 笏?
笏披楳笏€笏€笏€笏€笏€笏€笏€笏€笏€笏€笏€笏€笏€笏€笏€笏€笏€笏€笏€笏€笏?
```
**霍ッ逕ア霍ウ霓ャ**<EFBFBD>?
- 荳ェ莠コ荳ュ蠢<EFBDAD> 竊?`/user/profile`
-<>彰隶ー蠖<EFBDB0> 竊?`/user/history`
- 隶「髦<EFBDA2>ョ。逅<EFBDA1> 竊?`/user/subscription`
- 騾€蜃コ雍ヲ蜿?竊?逋サ蜃コ謫堺ス<E5A0BA>
---
## <20>唐 蟾ヲ萓ァ蟇シ闊ェ隶セ隶。
### 隶セ隶。蜴溷<E89CB4>
1. **謖蛾怙譏セ遉コ**<EFBFBD>壼宵譛芽ソ帛<EFBFBD>蜈キ菴捺ィ。蝮怜錘謇肴仞遉コ蟾ヲ萓ァ蟇シ闊?
2. **讓。蝮礼峡遶<E5B3A1>**<EFBFBD>壽ッ丈クェ讓。蝮玲怏閾ェ蟾ア迢ャ遶狗噪蟾ヲ萓ァ蟇シ闊ェ驟咲ス?
3. **螻らコァ貂<EFBDA7>**<EFBFBD>壽髪謖∽ク€郤ァ蜥御コ檎コァ闖懷黒
### AI髣ョ遲疲ィ。蝮怜キヲ萓ァ蟇シ闊ェ
**蟶<>€譁ケ蠑<EFBDB9>**<EFBFBD>壼今迚<EFBFBD>シ丞ク<EFBFBD>€<EFBFBD>井ク堺スソ逕ィ蟾ヲ萓ァ蟇シ闊ェ<EFBFBD>?
```
笏娯楳笏€笏€笏€笏€笏€笏€笏€笏€笏€笏€笏€笏€笏€笏€笏€笏€笏€笏€笏€笏€笏€笏€笏€笏€笏€笏€笏€笏€笏€笏€笏€笏€笏€笏€笏€笏€笏€笏€笏€笏€笏?
笏? AI髣ョ遲比クサ逡碁<E980A1>? 笏?
笏? 笏娯楳笏€笏€笏€笏€笏€笏€笏€笏€笏€笏€笏€笏€笏€笏€笏€笏€笏€笏€笏€笏€笏€笏€笏€笏€笏€笏€笏€笏€笏€笏€笏€笏€笏€笏€笏? 笏?
笏? 笏? 謳懃エ「譯?+ 謠宣琉謖蛾聴 笏? 笏?
笏? 笏披楳笏€笏€笏€笏€笏€笏€笏€笏€笏€笏€笏€笏€笏€笏€笏€笏€笏€笏€笏€笏€笏€笏€笏€笏€笏€笏€笏€笏€笏€笏€笏€笏€笏€笏€笏? 笏?
笏? 笏?
笏? 謌夜€画叫荳€荳ェ譎コ閭ス菴灘シ€蟋? 笏?
笏? 笏娯楳笏€笏€笏€笏?笏娯楳笏€笏€笏€笏?笏娯楳笏€笏€笏€笏?笏娯楳笏€笏€笏€笏? 笏?
笏? 笏る€蛾「倪<EFBDA2>?笏ICO笏?笏ら<E7AC8F>皮ゥカ笏<EFBDB6> 笏よ婿豕補狽 ... 笏?
笏? 笏りッ<E3828A>サキ笏<EFBDB7> 笏よ「ウ逅<EFBDB3>狽 笏よ婿譯遺狽 笏ょュヲ 笏? 笏?
笏? 笏披楳笏€笏€笏€笏?笏披楳笏€笏€笏€笏?笏披楳笏€笏€笏€笏?笏披楳笏€笏€笏€笏? 笏?
笏披楳笏€笏€笏€笏€笏€笏€笏€笏€笏€笏€笏€笏€笏€笏€笏€笏€笏€笏€笏€笏€笏€笏€笏€笏€笏€笏€笏€笏€笏€笏€笏€笏€笏€笏€笏€笏€笏€笏€笏€笏€笏?
```
### AI譎コ閭ス譁<EFBDBD>鍵讓。蝮怜キヲ萓ァ蟇シ闊ェ
```typescript
const LITERATURE_SIDE_NAV = [
{
id: 'research-plan',
label: '遐皮ゥカ譁ケ譯育函謌<E587BD>',
route: '/literature/research-plan',
icon: '<27>搭',
},
{
id: 'search',
label: '譎コ閭ス譁<EFBDBD>鍵譽€邏?,
route: '/literature/search',
icon: '<EFBFBD>',
},
{
id: 'management',
label: '<EFBFBD><EFBFBD>',
route: '/literature/management',
icon: '<EFBFBD>',
},
{
id: 'screening',
label: '<EFBFBD><EFBFBD><EFBFBD>',
route: '/literature/screening',
icon: '?,
},
{
id: 'full-text',
label: '蜈ィ譁<EFBDA8>、咲ュ<E592B2>',
route: '/literature/full-text',
icon: '<27>塘',
},
{
id: 'extraction',
label: '蜈ィ譁<EFBDA8>ァ」譫蝉ク取焚謐ョ謠仙<E8ACA0>?,
route: '/literature/extraction',
icon: '<EFBFBD>',
},
{
id: 'analysis',
label: '<EFBFBD>?,
route: '/literature/analysis',
icon: '<27>投',
},
];
```
**蟶<>€譬キ蠑<EFBDB7>**<EFBFBD>?
- 螳ス蠎ヲ<E8A08E>啻200px`
- 閭梧勹濶イ<E6BFB6>#f9fafb`
-€豢サ鬘ケ<E9AC98>啻background: #e0e7ff`, `border-left: 3px solid #4f46e5`
### 遏・隸<EFBDA5>コ捺ィ。蝮怜キヲ萓ァ蟇シ闊?
```typescript
const KNOWLEDGE_BASE_SIDE_NAV = [
{
id: 'list',
label: '遏・隸<EFBDA5>コ灘<EFBDBA>陦?,
route: '/knowledge-base',
icon: '<EFBFBD>',
},
{
id: 'create',
label: '+ <EFBFBD>?,
route: '/knowledge-base/create',
icon: '+',
},
];
```
### 譎コ閭ス扈溯ョ。蛻<EFBDA1>梵讓。蝮暦シ亥、夜Κ讓。蝮苓ッエ譏趣シ<E8B6A3>
**隸エ譏趣シ?* 譎コ閭ス扈溯ョ。蛻<EFBDA1>梵讓。蝮礼<E89DAE>?*Java蝗「髦<EFBDA2>**蠑€蜿托シ碁㊦逕ィ**Java蜷守ォッ**謚€譛ッ譬医€?
**謌台サャ逧<EFBDAC>雍」<E99B8D><EFBDA3>**<>惠鬘カ驛ィ蟇シ闊ェ荳ュ髮<EFBDAD><E9ABAE>隸・讓。蝮礼噪蜈・蜿」<E89CBF>檎せ蜃サ蜷手キウ霓ャ蛻ーJava蝗「髦溷シ€蜿醍噪鬘オ髱「縲?
**隶セ隶。隗<EFBDA1><EFBFBD>?* 荳埼怙隕∵<E99A95>莉ャ隶セ隶。蟾ヲ萓ァ蟇シ闊ェ<E9978A>繰ava蝗「髦溷キイ譛芽<E8AD9B>蟾ア逧<EFBDB1>。オ髱「蟶<EFBDA2>€隶セ隶。縲?
**髮<><E9ABAE>譁ケ蠑擾シ?*
- 鬘カ驛ィ蟇シ闊ェ轤ケ蜃サ蜷趣シ檎峩謗・霍ウ霓ャ蛻?`/intelligent-analysis` 霍ッ逕ア
- 隸・霍ッ逕ア蜿ッ閭ス謖<EFBDBD>髄迢ャ遶狗噪Java蠎皮畑謌吠frame蠏悟<E8A08F>
- 蜈キ菴馴寔謌先婿蠑城怙荳捌ava蝗「髦溷刻蝠<E588BB>。ョ螳<EFBDAE>
### 扈溯ョ。蛻<EFBDA1>梵蟾・蜈キ讓。蝮暦シ亥、夜Κ讓。蝮苓ッエ譏趣シ<E8B6A3>
**隸エ譏趣シ?* 扈溯ョ。蛻<EFBDA1>梵蟾・蜈キ讓。蝮礼<E89DAE>?*Java蝗「髦<EFBDA2>**蠑€蜿托シ碁㊦逕ィ**Java蜷守ォッ**謚€譛ッ譬医€?
**謌台サャ逧<EFBDAC>雍」<E99B8D><EFBDA3>**<>惠鬘カ驛ィ蟇シ闊ェ荳ュ髮<EFBDAD><E9ABAE>隸・讓。蝮礼噪蜈・蜿」<E89CBF>檎せ蜃サ蜷手キウ霓ャ蛻ーJava蝗「髦溷シ€蜿醍噪鬘オ髱「縲?
**隶セ隶。隗<EFBDA1><EFBFBD>?* 隸・讓。蝮?*荳肴弍蟾ヲ萓ァ蟇シ闊ェ隶セ隶。**<EFBFBD>繰ava蝗「髦滓怏閾ェ蟾ア逧<EFBFBD>。オ髱「蟶<EFBFBD>€<EFBFBD>亥ヲる。カ驛ィTab蟇シ闊ェ遲会シ峨€?
**髮<><E9ABAE>譁ケ蠑擾シ?*
- 鬘カ驛ィ蟇シ闊ェ轤ケ蜃サ蜷趣シ檎峩謗・霍ウ霓ャ蛻?`/statistical-tools` 霍ッ逕ア
- 隸・霍ッ逕ア蜿ッ閭ス謖<EFBDBD>髄迢ャ遶狗噪Java蠎皮畑謌吠frame蠏悟<E8A08F>
- 蜈キ菴馴寔謌先婿蠑城怙荳捌ava蝗「髦溷刻蝠<E588BB>。ョ螳<EFBDAE>
---
## <20>売 蟇シ闊ェ莠、莠帝€サ霎<EFBDBB>
### 鬘カ驛ィ蟇シ闊ェ蛻<EFBDAA>
```typescript
// 轤ケ蜃サ鬘カ驛ィ蟇シ闊ェ鬘?
const handleNavClick = (item: NavigationItem) => {
// 1. 譽€譟・譚<EFBDA5><E8AD9A>?
if (!hasPermission(item.requiredVersion)) {
showUpgradePrompt(item);
return;
}
// 2. 譽€譟・譏ッ蜷ヲ荳コ蜊<EFBDBA>菴肴ィ。蝮<EFBDA1>
if (item.placeholder) {
showComingSoon(item);
return;
}
// 3. 蟇シ闊ェ蛻ー逶ョ譬<EFBDAE>キッ逕?
navigate(item.route);
// 4. 譖エ譁ー豼€豢サ迥カ諤?
setActiveNavItem(item.id);
};
```
### 蟾ヲ萓ァ蟇シ闊ェ蛻<EFBDAA>
```typescript
// 轤ケ蜃サ蟾ヲ萓ァ蟇シ闊ェ鬘?
const handleSideNavClick = (item: SideNavItem) => {
// 蟇シ闊ェ蛻ー逶ョ譬<EFBDAE>キッ逕ア<E98095>域ィ。蝮怜<E89DAE>驛ィ霍ッ逕ア<E98095>?
navigate(item.route);
// 譖エ譁ー豼€豢サ迥カ諤?
setActiveSideNavItem(item.id);
};
```
### 髱「蛹<EFBDA2>ア大ッシ闊ェ<E9978A>亥庄騾会シ<E4BC9A>
蟇ケ莠取キア螻らコァ鬘オ髱「<EFBFBD>悟サコ隶ョ豺サ蜉<EFBFBD>髱「蛹<EFBFBD>ア大ッシ闊ェ<EFBFBD><EFBFBD>
```
鬥夜。オ > AI譎コ閭ス譁<EFBDBD>鍵 > 譬<>「俶遭隕∝<E99A95><EFBFBD> > 螳。譬ク蟾・菴懷<E88FB4>?
```
---
## <20>導 蜩榊コ泌シ剰ョセ隶?
### 譯碁擇遶?(>1024px)
- 螳梧紛譏セ遉コ謇€譛蛾。カ驛ィ蟇シ闊ェ鬘ケ
- 譏セ遉コ螳梧紛逧<E7B49B>キヲ萓ァ蟇シ闊?
### 蟷ウ譚ソ遶?(768-1024px)
- 譏セ遉コ蜑?荳ェ鬘カ驛ィ蟇シ闊ェ鬘ケ
- 蜈カ菴吝ッシ闊ェ鬘ケ謚伜匠蛻ー"譖エ螟<EFBDB4>"闖懷黒
- 蟾ヲ萓ァ蟇シ闊ェ蜿ッ謚伜匠荳コ謚ス螻牙シ?
### 遘サ蜉ィ遶?(<768px)
- 鬘カ驛ィ蟇シ闊ェ驥<EFBDAA>畑豎牙<E8B18E>。闖懷黒<E687B7>遺于<E981BA>?
- 蟾ヲ萓ァ蟇シ闊ェ謾ケ荳コ蠎暮ΚTab蟇シ闊ェ謌匁歓螻牙シ<E78999>
---
## <20>耳 譬キ蠑剰ァ<E589B0>
### CSS蜿倬㍼螳壻ケ<E5A3BB>
```css
:root {
/* 蟇シ闊ェ鬚懆牡 */
--nav-bg-color: #ffffff;
--nav-border-color: #e5e7eb;
--nav-text-color: #4b5563;
--nav-text-hover: #0ea5e9;
--nav-text-active: #0ea5e9;
--nav-active-border: #0ea5e9;
/* 萓ァ霎ケ譬城「懆<EFBDA2>?*/
--sidebar-bg: #f9fafb;
--sidebar-active-bg: #e0e7ff;
--sidebar-active-border: #4f46e5;
--sidebar-text-color: #4338ca;
/* 蟆コ蟇ク */
--nav-height: 64px;
--sidebar-width: 200px;
--nav-item-padding: 12px 16px;
--nav-item-spacing: 16px;
}
```
---
## <20>統 螳樊命貂<E591BD>
### 扈<>サカ蠑€蜿?
- [ ] `TopNavigation.tsx` - 鬘カ驛ィ蟇シ闊ェ扈<EFBDAA>サカ
- [ ] `SideNavigation.tsx` - 蟾ヲ萓ァ蟇シ闊ェ扈<EFBDAA>サカ
- [ ] `UserMenu.tsx` - 逕ィ謌キ闖懷黒扈<E9BB92>サカ
- [ ] `NavigationGuard.tsx` - 蟇シ闊ェ譚<EFBDAA>剞螳亥梱
- [ ] `ComingSoon.tsx` - 蠑€蜿台クュ蜊<EFBDAD>菴咲サ<E592B2>サカ
### 驟咲スョ譁<EFBDAE>サカ
- [ ] `navigationConfig.ts` - 蟇シ闊ェ驟咲スョ
- [ ] `moduleNavConfig.ts` - 讓。蝮怜ッシ闊ェ驟咲スョ
- [ ] `versionConfig.ts` - 迚域悽驟咲スョ<EFBDBD>域悽蝨ー驟咲スョ<EFBDBD>御ス應クコ蜈懷コ包シ?
- [ ] `useVersionConfig.ts` - 迚域悽驟咲スョHook<6F>井サ拶PI蜉ィ諤∬執蜿厄シ<E58E84>
### 譁<>。」
- [ ] 譖エ譁ー譛ャ譁<EFBDAC>。?
- [ ] 郛門<E9839B>蟇シ闊ェ扈<EFBDAA>サカ菴ソ逕ィ譁<EFBDA8>。」
---
**譁<>。」迚域悽<E59F9F>?* v1.0
**譛€蜷取峩譁ー<E8AD81><EFBDB0>** 2025-10-29