@jx3box/jx3box-vue3-ui 0.0.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (284) hide show
  1. package/.editorconfig +13 -0
  2. package/.env +1 -0
  3. package/.eslintrc +9 -0
  4. package/.prettierrc +21 -0
  5. package/README.md +1 -0
  6. package/assets/css/admin.less +83 -0
  7. package/assets/css/author.less +86 -0
  8. package/assets/css/bottom.less +21 -0
  9. package/assets/css/box.less +180 -0
  10. package/assets/css/box2.less +150 -0
  11. package/assets/css/breadcrumb.less +155 -0
  12. package/assets/css/client-by.less +33 -0
  13. package/assets/css/cms-single.less +55 -0
  14. package/assets/css/crumb.less +17 -0
  15. package/assets/css/down.less +16 -0
  16. package/assets/css/footer.less +72 -0
  17. package/assets/css/github-repo.less +87 -0
  18. package/assets/css/header.less +532 -0
  19. package/assets/css/icon.less +10 -0
  20. package/assets/css/left-sidebar.less +137 -0
  21. package/assets/css/like.less +80 -0
  22. package/assets/css/like2.less +19 -0
  23. package/assets/css/main.less +67 -0
  24. package/assets/css/mark-by.less +97 -0
  25. package/assets/css/mark.less +34 -0
  26. package/assets/css/menu-by.less +9 -0
  27. package/assets/css/mixin.less +62 -0
  28. package/assets/css/order-by.less +86 -0
  29. package/assets/css/print.less +26 -0
  30. package/assets/css/qrcode.less +70 -0
  31. package/assets/css/right-msg.less +26 -0
  32. package/assets/css/right-sidebar.less +106 -0
  33. package/assets/css/share2.less +99 -0
  34. package/assets/css/sharing.less +26 -0
  35. package/assets/css/tag-by.less +86 -0
  36. package/assets/css/thx.less +213 -0
  37. package/assets/css/var.less +4 -0
  38. package/assets/css/wiki-comments.less +150 -0
  39. package/assets/css/wiki-panel.less +175 -0
  40. package/assets/css/wiki-revisions.less +62 -0
  41. package/assets/data/box.json +184 -0
  42. package/assets/data/box2.json +606 -0
  43. package/assets/data/game_font.json +242 -0
  44. package/assets/data/nav.json +12 -0
  45. package/assets/data/panel.json +27 -0
  46. package/assets/data/zlp.json +5 -0
  47. package/assets/img/author/bilibili.png +0 -0
  48. package/assets/img/author/bilibili.svg +1 -0
  49. package/assets/img/author/chat.png +0 -0
  50. package/assets/img/author/douyu.png +0 -0
  51. package/assets/img/author/douyu.svg +1 -0
  52. package/assets/img/author/github.svg +1 -0
  53. package/assets/img/author/huya.png +0 -0
  54. package/assets/img/author/huya.svg +1 -0
  55. package/assets/img/author/msg.svg +55 -0
  56. package/assets/img/author/tuilan.png +0 -0
  57. package/assets/img/author/weibo.svg +70 -0
  58. package/assets/img/bread/menu.svg +1 -0
  59. package/assets/img/footer/china.svg +1 -0
  60. package/assets/img/header/add.svg +1 -0
  61. package/assets/img/header/bell.svg +1 -0
  62. package/assets/img/header/coin.svg +15 -0
  63. package/assets/img/header/edit.svg +1 -0
  64. package/assets/img/header/logo.svg +5 -0
  65. package/assets/img/header/manage.svg +1 -0
  66. package/assets/img/header/msg.svg +1 -0
  67. package/assets/img/header/search-key-slash.svg +5 -0
  68. package/assets/img/header/send.svg +56 -0
  69. package/assets/img/header/vip.svg +1 -0
  70. package/assets/img/jx3.svg +11 -0
  71. package/assets/img/leftsidebar/arrow.svg +64 -0
  72. package/assets/img/leftsidebar/close.svg +49 -0
  73. package/assets/img/leftsidebar/fans.svg +1 -0
  74. package/assets/img/leftsidebar/medal.svg +1 -0
  75. package/assets/img/leftsidebar/more.svg +50 -0
  76. package/assets/img/leftsidebar/open.svg +51 -0
  77. package/assets/img/leftsidebar/post.svg +46 -0
  78. package/assets/img/leftsidebar/team.svg +1 -0
  79. package/assets/img/leftsidebar/united.svg +1 -0
  80. package/assets/img/list/post.svg +1 -0
  81. package/assets/img/price/jin.png +0 -0
  82. package/assets/img/price/tong.png +0 -0
  83. package/assets/img/price/yin.png +0 -0
  84. package/assets/img/price/zhuan.png +0 -0
  85. package/assets/img/rightsidebar/ac.svg +1 -0
  86. package/assets/img/rightsidebar/github.svg +1 -0
  87. package/assets/img/rightsidebar/repo.svg +1 -0
  88. package/assets/img/single/author.svg +1 -0
  89. package/assets/img/single/lock.svg +1 -0
  90. package/assets/img/single/modate.svg +24 -0
  91. package/assets/img/single/podate.svg +23 -0
  92. package/assets/img/widget/admin_gift.svg +10 -0
  93. package/assets/img/widget/gift.svg +1 -0
  94. package/assets/img/widget/heart.svg +17 -0
  95. package/assets/img/widget/heart1.svg +1 -0
  96. package/assets/img/widget/heart2.svg +11 -0
  97. package/assets/img/widget/heart3.svg +37 -0
  98. package/assets/img/widget/like.svg +1 -0
  99. package/assets/img/widget/like2.svg +1 -0
  100. package/assets/img/widget/like3.svg +14 -0
  101. package/assets/img/widget/qq.svg +1 -0
  102. package/assets/img/widget/qr-code.svg +1 -0
  103. package/assets/img/widget/qzone.svg +1 -0
  104. package/assets/img/widget/share-link.png +0 -0
  105. package/assets/img/widget/share.svg +13 -0
  106. package/assets/img/widget/share2.svg +19 -0
  107. package/assets/img/widget/star.svg +9 -0
  108. package/assets/img/widget/tieba.svg +1 -0
  109. package/assets/img/widget/unstar.svg +21 -0
  110. package/assets/img/widget/web_heart_animation.png +0 -0
  111. package/assets/img/widget/weibo.svg +1 -0
  112. package/assets/img/widget/weixin.svg +1 -0
  113. package/assets/js/app.js +7 -0
  114. package/babel.config.js +3 -0
  115. package/jsconfig.json +17 -0
  116. package/package.json +71 -0
  117. package/public/favicon.ico +0 -0
  118. package/public/image/box/bbs.svg +87 -0
  119. package/public/image/box/bbs__.svg +101 -0
  120. package/public/image/box/bbs_on.svg +88 -0
  121. package/public/image/box/bps.svg +10 -0
  122. package/public/image/box/bps_on.svg +10 -0
  123. package/public/image/box/cj.svg +1 -0
  124. package/public/image/box/cj_on.svg +1 -0
  125. package/public/image/box/collection.svg +1 -0
  126. package/public/image/box/collection_on.svg +1 -0
  127. package/public/image/box/database.svg +22 -0
  128. package/public/image/box/database_on.svg +22 -0
  129. package/public/image/box/dbm.svg +21 -0
  130. package/public/image/box/dbm_on.svg +21 -0
  131. package/public/image/box/exam.svg +35 -0
  132. package/public/image/box/exam_on.svg +35 -0
  133. package/public/image/box/facedata.svg +21 -0
  134. package/public/image/box/facedata_on.svg +21 -0
  135. package/public/image/box/fb.svg +18 -0
  136. package/public/image/box/fb_on.svg +18 -0
  137. package/public/image/box/fbdata.svg +15 -0
  138. package/public/image/box/fbdata_on.svg +15 -0
  139. package/public/image/box/fbdrop.svg +26 -0
  140. package/public/image/box/fbdrop_on.svg +26 -0
  141. package/public/image/box/fbgem.svg +39 -0
  142. package/public/image/box/fbgem_on.svg +39 -0
  143. package/public/image/box/flower.svg +28 -0
  144. package/public/image/box/flower_on.svg +28 -0
  145. package/public/image/box/furniture.svg +32 -0
  146. package/public/image/box/furniture_on.svg +32 -0
  147. package/public/image/box/haste.svg +8 -0
  148. package/public/image/box/haste_on.svg +8 -0
  149. package/public/image/box/home.svg +47 -0
  150. package/public/image/box/home_on.svg +47 -0
  151. package/public/image/box/house.svg +1 -0
  152. package/public/image/box/house_on.svg +1 -0
  153. package/public/image/box/icons.svg +15 -0
  154. package/public/image/box/icons_on.svg +15 -0
  155. package/public/image/box/item.svg +1 -0
  156. package/public/image/box/item_on.svg +1 -0
  157. package/public/image/box/j3dps.svg +28 -0
  158. package/public/image/box/j3dps_on.svg +28 -0
  159. package/public/image/box/j3pz.svg +36 -0
  160. package/public/image/box/j3pz_on.svg +36 -0
  161. package/public/image/box/jx3dat.svg +27 -0
  162. package/public/image/box/jx3dat_on.svg +27 -0
  163. package/public/image/box/keju.svg +30 -0
  164. package/public/image/box/keju_on.svg +30 -0
  165. package/public/image/box/knowledge.svg +52 -0
  166. package/public/image/box/knowledge_on.svg +52 -0
  167. package/public/image/box/macro.svg +15 -0
  168. package/public/image/box/macro_on.svg +18 -0
  169. package/public/image/box/macroeditor.svg +38 -0
  170. package/public/image/box/macroeditor_on.svg +38 -0
  171. package/public/image/box/png/100.png +0 -0
  172. package/public/image/box/png/bbs.png +0 -0
  173. package/public/image/box/png/bbs1.png +0 -0
  174. package/public/image/box/png/bbs2.png +0 -0
  175. package/public/image/box/png/bps.png +0 -0
  176. package/public/image/box/png/cj.png +0 -0
  177. package/public/image/box/png/database.png +0 -0
  178. package/public/image/box/png/drop.png +0 -0
  179. package/public/image/box/png/emotion.png +0 -0
  180. package/public/image/box/png/face.png +0 -0
  181. package/public/image/box/png/fb.png +0 -0
  182. package/public/image/box/png/flog.png +0 -0
  183. package/public/image/box/png/flower.png +0 -0
  184. package/public/image/box/png/furniture.png +0 -0
  185. package/public/image/box/png/gem.png +0 -0
  186. package/public/image/box/png/guishi.png +0 -0
  187. package/public/image/box/png/home.png +0 -0
  188. package/public/image/box/png/house.png +0 -0
  189. package/public/image/box/png/icons.png +0 -0
  190. package/public/image/box/png/item.png +0 -0
  191. package/public/image/box/png/j3pz.png +0 -0
  192. package/public/image/box/png/joker.png +0 -0
  193. package/public/image/box/png/jx3dat.png +0 -0
  194. package/public/image/box/png/jx3datbuilder.png +0 -0
  195. package/public/image/box/png/keju.png +0 -0
  196. package/public/image/box/png/macro.png +0 -0
  197. package/public/image/box/png/macroeditor.png +0 -0
  198. package/public/image/box/png/macroeditor2.png +0 -0
  199. package/public/image/box/png/minami.png +0 -0
  200. package/public/image/box/png/mirror.png +0 -0
  201. package/public/image/box/png/oa.png +0 -0
  202. package/public/image/box/png/pig.png +0 -0
  203. package/public/image/box/png/price.png +0 -0
  204. package/public/image/box/png/qiyu.png +0 -0
  205. package/public/image/box/png/rank2_on.png +0 -0
  206. package/public/image/box/png/role.png +0 -0
  207. package/public/image/box/png/servers.png +0 -0
  208. package/public/image/box/png/share.png +0 -0
  209. package/public/image/box/png/shop.png +0 -0
  210. package/public/image/box/png/skull.png +0 -0
  211. package/public/image/box/png/speed.png +0 -0
  212. package/public/image/box/png/talent.png +0 -0
  213. package/public/image/box/png/team.png +0 -0
  214. package/public/image/box/png/team_on.png +0 -0
  215. package/public/image/box/png/tool.png +0 -0
  216. package/public/image/box/png/translator.png +0 -0
  217. package/public/image/box/png/trophy.png +0 -0
  218. package/public/image/box/png/trophy2.png +0 -0
  219. package/public/image/box/png/wiki.png +0 -0
  220. package/public/image/box/price.svg +19 -0
  221. package/public/image/box/price_on.svg +19 -0
  222. package/public/image/box/qiyu.svg +1 -0
  223. package/public/image/box/qiyu_on.svg +1 -0
  224. package/public/image/box/quest.svg +52 -0
  225. package/public/image/box/quest_on.svg +57 -0
  226. package/public/image/box/rank.svg +36 -0
  227. package/public/image/box/rank_on.svg +36 -0
  228. package/public/image/box/servers.svg +31 -0
  229. package/public/image/box/servers_on.svg +31 -0
  230. package/public/image/box/share.svg +24 -0
  231. package/public/image/box/share_on.svg +24 -0
  232. package/public/image/box/shop.svg +52 -0
  233. package/public/image/box/talent.svg +19 -0
  234. package/public/image/box/talent_on.svg +19 -0
  235. package/public/image/box/team.svg +15 -0
  236. package/public/image/box/team_on.svg +18 -0
  237. package/public/image/box/tool.svg +23 -0
  238. package/public/image/box/tool_on.svg +31 -0
  239. package/public/image/box/translator.svg +55 -0
  240. package/public/image/box/translator_on.svg +55 -0
  241. package/public/image/box/wbl.png +0 -0
  242. package/public/image/box/wbl_on.png +0 -0
  243. package/public/image/box/xls.svg +74 -0
  244. package/public/image/box/xls_on.svg +74 -0
  245. package/public/index.html +24 -0
  246. package/service/admin.js +15 -0
  247. package/service/author.js +79 -0
  248. package/service/breadcrumb.js +13 -0
  249. package/service/cms.js +35 -0
  250. package/service/fav.js +17 -0
  251. package/service/follow.js +55 -0
  252. package/service/github.js +15 -0
  253. package/service/header.js +31 -0
  254. package/service/helper.js +7 -0
  255. package/service/thx.js +60 -0
  256. package/src/App.vue +52 -0
  257. package/src/Bottom.vue +23 -0
  258. package/src/Box.vue +149 -0
  259. package/src/Breadcrumb.vue +118 -0
  260. package/src/Footer.vue +45 -0
  261. package/src/Header.vue +95 -0
  262. package/src/LeftSideToggle.vue +64 -0
  263. package/src/LeftSidebar.vue +123 -0
  264. package/src/Main.vue +48 -0
  265. package/src/RightSidebar.vue +25 -0
  266. package/src/bread/Admin.vue +308 -0
  267. package/src/bread/AdminButton.vue +31 -0
  268. package/src/bread/Crumb.vue +27 -0
  269. package/src/header/Asset.vue +180 -0
  270. package/src/header/ClientSwitch.vue +115 -0
  271. package/src/header/GameSwitch.vue +210 -0
  272. package/src/header/Logo.vue +82 -0
  273. package/src/header/Manage.vue +125 -0
  274. package/src/header/Message.vue +89 -0
  275. package/src/header/Nav.vue +287 -0
  276. package/src/header/Publish.vue +21 -0
  277. package/src/header/Search.vue +81 -0
  278. package/src/header/User.vue +141 -0
  279. package/src/header/UserInfo.vue +175 -0
  280. package/src/header/Vip.vue +27 -0
  281. package/src/main.js +30 -0
  282. package/utils/bus.js +5 -0
  283. package/utils/index.js +31 -0
  284. package/vue.config.js +103 -0
@@ -0,0 +1,532 @@
1
+ @import "./icon.less";
2
+
3
+ body {
4
+ padding-top: @header-height;
5
+ color: @color;
6
+ }
7
+
8
+ // 三角
9
+ .u-delta {
10
+ .pa;
11
+ background-clip: padding-box;
12
+ background-color: #fff;
13
+ color: @color;
14
+ border: 1px solid rgba(27, 31, 35, 0.15);
15
+ border-radius: 4px;
16
+ box-shadow: 0 3px 12px rgba(0, 0, 0, 0.1);
17
+ right: -5px;
18
+ list-style: none;
19
+ margin: -6px 0 0 0;
20
+ position: absolute;
21
+ z-index: 820;
22
+ top: 100%;
23
+
24
+ &:before {
25
+ content: "";
26
+ display: inline-block;
27
+ position: absolute;
28
+ left: auto;
29
+ right: 14px;
30
+ top: -16px;
31
+ border: 8px solid transparent;
32
+ border-bottom-color: rgba(27, 31, 35, 0.15);
33
+ }
34
+
35
+ &:after {
36
+ content: "";
37
+ display: inline-block;
38
+ position: absolute;
39
+ left: auto;
40
+ right: 15px;
41
+ top: -14px;
42
+ border: 7px solid transparent;
43
+ border-bottom-color: #fff;
44
+ }
45
+ }
46
+
47
+ .c-header {
48
+ position: fixed;
49
+ left: 0;
50
+ top: 0;
51
+ z-index: 601;
52
+ width: 100%;
53
+ height: @header-height;
54
+ background-color: @bg-black;
55
+ color: #fff;
56
+ transition: 0.5s ease-in-out;
57
+ // overflow: hidden;
58
+ }
59
+ .c-header.isOverlay {
60
+ background-color: rgba(0, 0, 0, 0.85);
61
+ }
62
+
63
+ .c-header-inner {
64
+ // padding: 16px;
65
+ // *zoom: 1;
66
+ // height:@header-height;
67
+ &:after {
68
+ content: "";
69
+ display: table;
70
+ clear: both;
71
+ }
72
+ .flex;
73
+ }
74
+
75
+ //用户相关
76
+ .c-header-user {
77
+ font-size: 14px;
78
+ position: absolute;
79
+ right: 10px;
80
+ top: 0;
81
+ display: flex;
82
+ align-items: center;
83
+ height: 100%;
84
+
85
+ .u-dropdown {
86
+ border-bottom: 0 solid transparent;
87
+ border-left: 4px solid transparent;
88
+ border-right: 4px solid transparent;
89
+ border-top-style: solid;
90
+ border-top-width: 4px;
91
+ content: "";
92
+ display: inline-block;
93
+ height: 0;
94
+ vertical-align: middle;
95
+ width: 0;
96
+ }
97
+
98
+ .u-avatar {
99
+ width: 24px;
100
+ height: 24px;
101
+ border-radius: 50%;
102
+ }
103
+
104
+ .u-menu {
105
+ .u-delta;
106
+ padding: 5px 0;
107
+ width: 160px;
108
+
109
+ a {
110
+ display: block;
111
+ line-height: 21px;
112
+ color: #454545;
113
+ &:hover {
114
+ color: #fff;
115
+ }
116
+ outline: none;
117
+ text-decoration: none;
118
+ overflow: hidden;
119
+ padding: 5px 10px 5px 16px;
120
+ text-overflow: ellipsis;
121
+ white-space: nowrap;
122
+
123
+ &:hover {
124
+ background-color: @color-link;
125
+ }
126
+ }
127
+
128
+ hr {
129
+ .mt(2px);
130
+ .mb(2px);
131
+ }
132
+ }
133
+
134
+ .i-icon-vip {
135
+ .dbi;
136
+ vertical-align: baseline;
137
+ padding: 2px 5px;
138
+ .fz(12px, 14px);
139
+ font-style: normal;
140
+ border-radius: 2px;
141
+ background-color: #ddd;
142
+ color: #fff;
143
+ &.on {
144
+ background-color: #6f42c1;
145
+ }
146
+ }
147
+ .u-expire,
148
+ .u-vip-type {
149
+ .fz(12px);
150
+ // color:#999;
151
+ .ml(5px);
152
+ }
153
+ .u-vip-left {
154
+ color: #999;
155
+ .ml(5px);
156
+ }
157
+
158
+ .u-superauthor-profile {
159
+ width: 16px;
160
+ vertical-align: -2px;
161
+ display: inline-block;
162
+ margin-right: 3px;
163
+ }
164
+
165
+ .off {
166
+ filter: grayscale(100%);
167
+ }
168
+ }
169
+
170
+ //操作面板
171
+ .c-header-panel {
172
+ position: relative;
173
+ height: 100%;
174
+ user-select: none;
175
+ cursor: pointer;
176
+ box-sizing: border-box;
177
+
178
+ .u-pop-content {
179
+ visibility: hidden;
180
+ opacity: 0;
181
+ transition: visibility 0.15s, opacity 0.15s linear;
182
+
183
+ .el-icon {
184
+ .pr;
185
+ top: 2px;
186
+ }
187
+ }
188
+
189
+ &:hover {
190
+ .u-pop-content {
191
+ opacity: 1;
192
+ visibility: visible;
193
+ }
194
+ }
195
+
196
+ .u-post {
197
+ padding: 0 10px;
198
+ height: 100%;
199
+ .flex;
200
+ align-items: center;
201
+ }
202
+
203
+ .u-add {
204
+ fill: #fff;
205
+ vertical-align: middle;
206
+ // margin-right: 4px;
207
+ }
208
+
209
+ &.on {
210
+ .u-menu {
211
+ display: block;
212
+ }
213
+ }
214
+
215
+ &:hover {
216
+ .u-add,
217
+ .u-dropdown {
218
+ opacity: 0.7;
219
+ }
220
+ }
221
+ }
222
+
223
+ @media screen and (max-width: @phone) {
224
+ .c-header-panel {
225
+ &:not(&.c-header-info) {
226
+ display: none;
227
+ }
228
+ }
229
+ }
230
+
231
+ //登录、注册
232
+ .c-header-login {
233
+ margin: 16px 5px 16px 0;
234
+
235
+ transition: 0.4s;
236
+ *zoom: 1;
237
+ &:after {
238
+ content: "";
239
+ display: table;
240
+ clear: both;
241
+ }
242
+ border: 1px solid @border-hr;
243
+ border-radius: 3px;
244
+
245
+ .u-default,
246
+ .u-extend {
247
+ float: left;
248
+ }
249
+
250
+ .u-default {
251
+ display: block;
252
+ line-height: @logo-size - 2px;
253
+ padding: 0 8px;
254
+ color: #fff;
255
+
256
+ &:hover {
257
+ color: hsla(0, 0%, 100%, 0.75);
258
+ }
259
+ }
260
+
261
+ em {
262
+ color: #a4acb5;
263
+ .fl;
264
+ font-style: normal;
265
+ .lh(30px);
266
+ }
267
+
268
+ .u-extend {
269
+ //background-color: hsla(0,0%,100%,.125);
270
+ background-color: #fafafa;
271
+ height: @logo-size - 2px;
272
+ padding-left: 5px;
273
+
274
+ .c-passport {
275
+ *zoom: 1;
276
+ &:after {
277
+ content: "";
278
+ display: table;
279
+ clear: both;
280
+ }
281
+ padding: (@logo-size - 24px - 2px) / 2 0;
282
+ }
283
+
284
+ a {
285
+ float: left;
286
+ display: block;
287
+ margin-right: 5px;
288
+ }
289
+
290
+ img {
291
+ vertical-align: middle;
292
+ width: 24px !important;
293
+ height: auto;
294
+ }
295
+
296
+ display: none;
297
+ }
298
+ }
299
+
300
+ .c-header-info {
301
+ height: 100%;
302
+ .flex;
303
+ align-items: center;
304
+ }
305
+
306
+ .c-header-userdata {
307
+ .u-delta;
308
+ &:after {
309
+ border-bottom-color: #f4f6f7;
310
+ right: 20px;
311
+ }
312
+
313
+ top: calc(100% + 17px);
314
+ // padding: 5px 0;
315
+ width: 400px;
316
+ }
317
+
318
+ // 用户信息
319
+ .c-header-profile {
320
+ cursor: pointer;
321
+ position: relative;
322
+ padding: 4px 5px 2px 6px;
323
+
324
+ .u-menu {
325
+ margin-top: 8px;
326
+ }
327
+ .u-me {
328
+ .nobreak;
329
+ em {
330
+ font-style: normal;
331
+ color: #999;
332
+ font-size: 12px;
333
+ }
334
+ b {
335
+ .mr(3px);
336
+ }
337
+ }
338
+ .u-vip {
339
+ .u-icon-vip {
340
+ .y(-2px);
341
+ }
342
+ }
343
+ .u-name {
344
+ line-height: 30px;
345
+ padding: 0 16px;
346
+ white-space: nowrap;
347
+ word-wrap: normal;
348
+ word-break: keep-all;
349
+ text-overflow: ellipsis;
350
+ overflow: hidden;
351
+ b {
352
+ font-weight: bold;
353
+ display: block;
354
+ float: left;
355
+
356
+ white-space: nowrap;
357
+ word-wrap: normal;
358
+ word-break: keep-all;
359
+ text-overflow: ellipsis;
360
+ overflow: hidden;
361
+
362
+ max-width: 60px;
363
+ }
364
+ span {
365
+ color: #666;
366
+ letter-spacing: 0.5px;
367
+ margin-left: 3px;
368
+ }
369
+ cursor: default;
370
+ }
371
+ .u-avatar {
372
+ vertical-align: middle;
373
+ margin-right: 2px;
374
+ }
375
+
376
+ hr {
377
+ margin: 8px 0;
378
+ border-top: 1px solid @border-hr;
379
+ }
380
+
381
+ &.on {
382
+ .u-menu {
383
+ display: block;
384
+ }
385
+ }
386
+ .u-hr {
387
+ border-top: 1px solid @border-hr;
388
+ }
389
+
390
+ &:hover {
391
+ .u-dropdown {
392
+ opacity: 0.7;
393
+ }
394
+ }
395
+ }
396
+
397
+ .c-header-userdata {
398
+ background-clip: padding-box;
399
+ // background-color: #fff;
400
+ color: #3d454d;
401
+ border: 1px solid rgba(27, 31, 35, 0.15);
402
+ border-radius: 4px;
403
+ box-shadow: 0 3px 12px rgba(0, 0, 0, 0.1);
404
+ right: 0;
405
+ list-style: none;
406
+ position: absolute;
407
+ z-index: 820;
408
+ top: 100%;
409
+ width: 400px;
410
+ margin-top: 10px;
411
+ margin-right: -10px;
412
+
413
+ .u-profile {
414
+ background-color: #f4f6f7;
415
+ padding: 12px;
416
+ border-top-left-radius: 4px;
417
+ border-top-right-radius: 4px;
418
+ }
419
+
420
+ .u-basic {
421
+ .flex;
422
+ align-items: center;
423
+ gap: 3px;
424
+ }
425
+
426
+ .u-displayname {
427
+ .fz(15px);
428
+ .nobreak;
429
+ max-width: 200px;
430
+ color: @color;
431
+ .bold;
432
+ &:hover {
433
+ color: @color-link;
434
+ }
435
+ }
436
+
437
+ .u-id {
438
+ font-size: 12px;
439
+ color: #999;
440
+ margin-top: 6px;
441
+ b {
442
+ color: @color;
443
+ margin-right: 5px;
444
+ }
445
+ .el-icon {
446
+ .pr;
447
+ top: 1px;
448
+ &:hover {
449
+ color: var(--el-color-primary);
450
+ }
451
+ }
452
+ }
453
+ .u-copy {
454
+ margin-left: 5px;
455
+ .pointer;
456
+
457
+ &:hover {
458
+ color: @primary;
459
+ }
460
+ }
461
+
462
+ .u-actions {
463
+ width: 100%;
464
+ .flex;
465
+
466
+ .el-button {
467
+ border-radius: 0;
468
+ flex: 1;
469
+
470
+ &:first-of-type {
471
+ border-left-width: 0;
472
+ }
473
+ &:last-of-type {
474
+ border-right-width: 0;
475
+ }
476
+ }
477
+ }
478
+
479
+ .u-other {
480
+ padding: 10px 5px;
481
+ .u-item {
482
+ display: block;
483
+ padding: 5px 10px;
484
+ color: #454545;
485
+
486
+ &:hover {
487
+ background: @primary;
488
+ color: #fff;
489
+ }
490
+
491
+ i {
492
+ .mr(5px);
493
+ }
494
+ }
495
+ }
496
+
497
+ .u-logout {
498
+ padding: 0 10px 10px 10px;
499
+ .mt(10px);
500
+
501
+ .el-button {
502
+ width: 100%;
503
+ }
504
+ }
505
+ }
506
+
507
+ @media print {
508
+ .c-header {
509
+ .none;
510
+ }
511
+ }
512
+
513
+ @media screen and (max-width: @phone) {
514
+ .env-app {
515
+ .c-header {
516
+ .none;
517
+ }
518
+ body {
519
+ padding-top: 0;
520
+ }
521
+ }
522
+ }
523
+
524
+ .c-header-jx3box {
525
+ top: @header-height;
526
+ left: 0;
527
+ }
528
+
529
+ // tooltip
530
+ .c-header-tooltip {
531
+ margin-top: -5px !important;
532
+ }
@@ -0,0 +1,10 @@
1
+ .u-icon-vip {
2
+ content: "";
3
+ display: inline-block;
4
+ width: 14px;
5
+ height: 14px;
6
+ background: url(data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMTQiIGhlaWdodD0iMTQiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PGcgZmlsbD0ibm9uZSIgZmlsbC1ydWxlPSJldmVub2RkIj48cGF0aCBmaWxsPSIjRkE4QzAwIiBkPSJNMS41MjYgMTAuNzY5aDExLjIxOHYyLjYwM0gxLjUyNnoiLz48cGF0aCBmaWxsPSIjRkY4QzAwIiBkPSJNMS4zNzcgOC43MDVMNy4wMTYuMDYxbDUuNzQxIDguNjQ0eiIvPjxwYXRoIGZpbGw9IiNFREE1MDAiIGQ9Ik0xMi42NzQgMTAuMTA0bDEuMzEzLTcuNjM0TDIuODIyIDkuODAyeiIvPjxwYXRoIGZpbGw9IiNGRUM0MDAiIGQ9Ik0xLjMzNSAxMC4wNThMLjA3NSAyLjQzM2wxMC40MjggNy42MjV6Ii8+PC9nPjwvc3ZnPg==)
7
+ 50% no-repeat;
8
+ background-size: 100%;
9
+ vertical-align: center;
10
+ }
@@ -0,0 +1,137 @@
1
+ .c-sidebar-left {
2
+ .w(@aside-left - 40px);
3
+ box-sizing: border-box;
4
+ padding: 10px;
5
+ .pf;
6
+ .z(600);
7
+ left: 0;
8
+ top: @header-height + @bread-height;
9
+ bottom: 0;
10
+ background-color: @bg-light;
11
+ border-right: 1px solid #eee;
12
+ }
13
+
14
+ .c-sidebar-left.without-bread {
15
+ top: @header-height;
16
+ }
17
+
18
+ .c-sidebar-left-inner {
19
+ .size(100%);
20
+ overflow-y: auto;
21
+
22
+ &::-webkit-scrollbar {
23
+ width: 4px;
24
+ }
25
+
26
+ &::-webkit-scrollbar-track,
27
+ &::-webkit-scrollbar-track-piece {
28
+ background-color: #fafafa;
29
+ border-radius: 6px;
30
+ }
31
+
32
+ &::-webkit-scrollbar-thumb {
33
+ background-color: #eee;
34
+ border-radius: 6px;
35
+ }
36
+
37
+ &::-webkit-scrollbar-button,
38
+ &::-webkit-scrollbar-corner,
39
+ &::-webkit-resizer {
40
+ display: none;
41
+ }
42
+ }
43
+
44
+ // 笔记本<1440 缩小双边栏
45
+ @media screen and (max-width: @smallpc) {
46
+ .c-sidebar-left {
47
+ .w(@aside-left - 40px);
48
+ }
49
+ }
50
+
51
+ // 平板横屏
52
+ @media screen and (max-width: @notebook) {
53
+ .c-sidebar-left {
54
+ .w(@aside-left - 60px);
55
+ }
56
+ }
57
+
58
+ @media screen and (max-width: @phone) {
59
+ .c-sidebar-left-inner {
60
+ overflow-y: auto;
61
+ }
62
+ }
63
+
64
+ // 折叠相关逻辑
65
+ .c-sidebar-left-toggle {
66
+ display: block;
67
+ .pa;
68
+ .rb(-21px, calc(50% - 20px));
69
+ width: 20px;
70
+ height: 40px;
71
+ line-height: 40px;
72
+ .pointer;
73
+ text-align: center;
74
+ background-color: @bg-light;
75
+ border-right: 1px solid #eee;
76
+ border-top: 1px solid #eee;
77
+ border-bottom: 1px solid #eee;
78
+ border-radius: 0px 2px 2px 0px;
79
+ font-size: 16px;
80
+ color: #999;
81
+
82
+ &:hover {
83
+ color: #222;
84
+ }
85
+
86
+ &.close-sidebar-left {
87
+ right: 0;
88
+ }
89
+
90
+ svg {
91
+ fill: @color;
92
+ }
93
+ }
94
+
95
+ .closeLeftSidebar() {
96
+ transition: 0.2s ease-in-out;
97
+ transform: translateX(-100%);
98
+ }
99
+
100
+ .openLeftSidebar() {
101
+ transition: 0.2s ease-in-out;
102
+ transform: translateX(0);
103
+ }
104
+
105
+ .c-sidebar-left.isclose {
106
+ .closeLeftSidebar();
107
+
108
+ .c-sidebar-left-toggle {
109
+ transition: 0.2s ease-in-out;
110
+ transform: translateX(100%);
111
+ }
112
+ }
113
+
114
+ .c-sidebar-left.isopen {
115
+ .openLeftSidebar();
116
+
117
+ .c-sidebar-left-toggle {
118
+ transition: 0.2s ease-in-out;
119
+ transform: translateX(0);
120
+ }
121
+ }
122
+
123
+ @media screen and (max-width: @ipad) {
124
+ .c-sidebar-left-toggle {
125
+ .none;
126
+ }
127
+
128
+ .c-sidebar-left.isopen {
129
+ box-shadow: 2px 0 3px rgba(0, 0, 0, 0.1);
130
+ }
131
+ }
132
+
133
+ @media print {
134
+ .c-sidebar-left {
135
+ .none;
136
+ }
137
+ }