1
1
import { FC , memo } from 'react'
2
2
3
3
import { Br } from '@/widgets/Common'
4
+ import Sticky from '@/widgets/Sticky'
4
5
5
6
import { TAB } from './constant'
6
7
import type { TTab } from './spec'
@@ -15,93 +16,104 @@ type TProps = {
15
16
const Sidebar : FC < TProps > = ( { curTab } ) => {
16
17
return (
17
18
< Wrapper >
18
- < Folder >
19
- < Icon . Basic />
20
- < Title > 基础设置</ Title >
21
- </ Folder >
22
- < Item
23
- $active = { TAB . BASIC_INFO === curTab }
24
- onClick = { ( ) => tabOnChange ( TAB . BASIC_INFO ) }
25
- >
26
- 关于社区
27
- </ Item >
28
- < Item $active = { TAB . UI === curTab } onClick = { ( ) => tabOnChange ( TAB . UI ) } >
29
- 外观布局
30
- </ Item >
31
- < Item
32
- $active = { TAB . THREADS === curTab }
33
- onClick = { ( ) => tabOnChange ( TAB . THREADS ) }
34
- >
35
- 社区板块
36
- </ Item >
37
- < Item
38
- $active = { TAB . ADMINS === curTab }
39
- onClick = { ( ) => tabOnChange ( TAB . ADMINS ) }
40
- >
41
- 管理员
42
- </ Item >
19
+ < Sticky offsetTop = { 30 } >
20
+ < Folder >
21
+ < Icon . Basic />
22
+ < Title > 基础设置</ Title >
23
+ </ Folder >
24
+ < Item
25
+ $active = { TAB . BASIC_INFO === curTab }
26
+ onClick = { ( ) => tabOnChange ( TAB . BASIC_INFO ) }
27
+ >
28
+ 关于社区
29
+ </ Item >
30
+ < Item $active = { TAB . UI === curTab } onClick = { ( ) => tabOnChange ( TAB . UI ) } >
31
+ 外观布局
32
+ </ Item >
33
+ < Item
34
+ $active = { TAB . THREADS === curTab }
35
+ onClick = { ( ) => tabOnChange ( TAB . THREADS ) }
36
+ >
37
+ 社区板块
38
+ </ Item >
39
+ < Item
40
+ $active = { TAB . ADMINS === curTab }
41
+ onClick = { ( ) => tabOnChange ( TAB . ADMINS ) }
42
+ >
43
+ 管理员
44
+ </ Item >
43
45
44
- < Br top = { 30 } />
45
- < Folder >
46
- < Icon . Analysis />
47
- < Title > 统计分析</ Title >
48
- </ Folder >
49
- < Item > --</ Item >
50
- < Br top = { 30 } />
51
- < Folder >
52
- < Icon . Management />
53
- < Title > 内容管理</ Title >
54
- </ Folder >
55
- < Item $active = { TAB . TAGS === curTab } onClick = { ( ) => tabOnChange ( TAB . TAGS ) } >
56
- 标签
57
- </ Item >
58
- < Item $active = { TAB . POST === curTab } onClick = { ( ) => tabOnChange ( TAB . POST ) } >
59
- 帖子
60
- </ Item >
61
- < Item
62
- $active = { TAB . KANBAN === curTab }
63
- onClick = { ( ) => tabOnChange ( TAB . KANBAN ) }
64
- >
65
- 看板
66
- </ Item >
67
- < Item
68
- $active = { TAB . CHANGELOG === curTab }
69
- onClick = { ( ) => tabOnChange ( TAB . CHANGELOG ) }
70
- >
71
- 更新日志
72
- </ Item >
73
- < Item $active = { TAB . HELP === curTab } onClick = { ( ) => tabOnChange ( TAB . HELP ) } >
74
- 帮助台
75
- </ Item >
76
- < Item
77
- $active = { TAB . BLACKHOUSE === curTab }
78
- onClick = { ( ) => tabOnChange ( TAB . BLACKHOUSE ) }
79
- >
80
- 小黑屋
81
- </ Item >
82
- < Br top = { 30 } />
83
- < Folder >
84
- < Icon . Bind />
85
- < Title > 绑定集成</ Title >
86
- </ Folder >
87
- < Item
88
- $active = { TAB . DOMAIN === curTab }
89
- onClick = { ( ) => tabOnChange ( TAB . DOMAIN ) }
90
- >
91
- 域名
92
- </ Item >
93
- < Item
94
- $active = { TAB . THIRD_PART === curTab }
95
- onClick = { ( ) => tabOnChange ( TAB . THIRD_PART ) }
96
- >
97
- 外部应用
98
- </ Item >
99
- < Item
100
- $active = { TAB . WIDGETS === curTab }
101
- onClick = { ( ) => tabOnChange ( TAB . WIDGETS ) }
102
- >
103
- 网站组件
104
- </ Item >
46
+ < Br top = { 30 } />
47
+ < Folder >
48
+ < Icon . Analysis />
49
+ < Title > 统计分析</ Title >
50
+ </ Folder >
51
+ < Item > --</ Item >
52
+ < Br top = { 30 } />
53
+ < Folder >
54
+ < Icon . Management />
55
+ < Title > 内容管理</ Title >
56
+ </ Folder >
57
+ < Item
58
+ $active = { TAB . TAGS === curTab }
59
+ onClick = { ( ) => tabOnChange ( TAB . TAGS ) }
60
+ >
61
+ 标签
62
+ </ Item >
63
+ < Item
64
+ $active = { TAB . POST === curTab }
65
+ onClick = { ( ) => tabOnChange ( TAB . POST ) }
66
+ >
67
+ 帖子
68
+ </ Item >
69
+ < Item
70
+ $active = { TAB . KANBAN === curTab }
71
+ onClick = { ( ) => tabOnChange ( TAB . KANBAN ) }
72
+ >
73
+ 看板
74
+ </ Item >
75
+ < Item
76
+ $active = { TAB . CHANGELOG === curTab }
77
+ onClick = { ( ) => tabOnChange ( TAB . CHANGELOG ) }
78
+ >
79
+ 更新日志
80
+ </ Item >
81
+ < Item
82
+ $active = { TAB . HELP === curTab }
83
+ onClick = { ( ) => tabOnChange ( TAB . HELP ) }
84
+ >
85
+ 帮助台
86
+ </ Item >
87
+ < Item
88
+ $active = { TAB . BLACKHOUSE === curTab }
89
+ onClick = { ( ) => tabOnChange ( TAB . BLACKHOUSE ) }
90
+ >
91
+ 小黑屋
92
+ </ Item >
93
+ < Br top = { 30 } />
94
+ < Folder >
95
+ < Icon . Bind />
96
+ < Title > 绑定集成</ Title >
97
+ </ Folder >
98
+ < Item
99
+ $active = { TAB . DOMAIN === curTab }
100
+ onClick = { ( ) => tabOnChange ( TAB . DOMAIN ) }
101
+ >
102
+ 域名
103
+ </ Item >
104
+ < Item
105
+ $active = { TAB . THIRD_PART === curTab }
106
+ onClick = { ( ) => tabOnChange ( TAB . THIRD_PART ) }
107
+ >
108
+ 外部应用
109
+ </ Item >
110
+ < Item
111
+ $active = { TAB . WIDGETS === curTab }
112
+ onClick = { ( ) => tabOnChange ( TAB . WIDGETS ) }
113
+ >
114
+ 网站组件
115
+ </ Item >
116
+ </ Sticky >
105
117
</ Wrapper >
106
118
)
107
119
}
0 commit comments