xto-fronted 0.5.3 → 0.6.0
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.
- package/dist/{index-BDDza2ly.js → index-CYFcc2sd.js} +1 -1
- package/dist/{index-B6g6rfUF.js → index-DGrQCWU0.js} +1 -1
- package/dist/{index-lAMRZUaB.js → index-DIlGh6S6.js} +1 -1
- package/dist/{index-CY9LkKi6.js → index-DYmKmoMX.js} +1 -1
- package/dist/{index-DIoBRnFR.js → index-Dpv33ZXi.js} +496 -496
- package/dist/index.js +1 -1
- package/dist/style.css +1 -1
- package/package.json +10 -10
- package/src/assets/styles/_dark.scss +207 -169
- package/src/assets/styles/_root.scss +110 -116
- package/src/assets/styles/_variables.scss +23 -23
- package/src/assets/styles/index.scss +43 -65
- package/src/components/Layout/Header.vue +55 -54
- package/src/components/Layout/MixTopMenu.vue +9 -9
- package/src/components/Layout/Sidebar.vue +25 -10
- package/src/components/Layout/SidebarMenuItem.vue +2 -2
- package/src/components/Layout/Tabs.vue +31 -9
- package/src/components/Layout/TopMenu.vue +9 -9
- package/src/components/Layout/index.vue +4 -4
- package/src/style.scss +2 -2
- package/src/views/login/index.vue +25 -24
|
@@ -139,7 +139,7 @@ const showMixSidebar = computed(() => {
|
|
|
139
139
|
width: 100%;
|
|
140
140
|
height: 50px;
|
|
141
141
|
background-color: var(--xto-bg-color, #FFFFFF);
|
|
142
|
-
border-bottom: 1px solid var(--xto-border-color-lighter, #
|
|
142
|
+
border-bottom: 1px solid var(--xto-border-color-lighter, #EDF2F7);
|
|
143
143
|
flex-shrink: 0;
|
|
144
144
|
}
|
|
145
145
|
|
|
@@ -163,7 +163,7 @@ const showMixSidebar = computed(() => {
|
|
|
163
163
|
height: 50px;
|
|
164
164
|
box-sizing: border-box;
|
|
165
165
|
background-color: var(--xto-bg-color, #FFFFFF);
|
|
166
|
-
border-bottom: 1px solid var(--xto-border-color-lighter, #
|
|
166
|
+
border-bottom: 1px solid var(--xto-border-color-lighter, #EDF2F7);
|
|
167
167
|
flex-shrink: 0;
|
|
168
168
|
}
|
|
169
169
|
|
|
@@ -186,14 +186,14 @@ const showMixSidebar = computed(() => {
|
|
|
186
186
|
height: 50px;
|
|
187
187
|
box-sizing: border-box;
|
|
188
188
|
background-color: var(--xto-bg-color, #FFFFFF);
|
|
189
|
-
border-bottom: 1px solid var(--xto-border-color-lighter, #
|
|
189
|
+
border-bottom: 1px solid var(--xto-border-color-lighter, #EDF2F7);
|
|
190
190
|
flex-shrink: 0;
|
|
191
191
|
}
|
|
192
192
|
|
|
193
193
|
&__content {
|
|
194
194
|
flex: 1;
|
|
195
195
|
overflow: auto;
|
|
196
|
-
background-color: var(--xto-bg-color-page, #
|
|
196
|
+
background-color: var(--xto-bg-color-page, #F5F7FA);
|
|
197
197
|
padding: 0;
|
|
198
198
|
}
|
|
199
199
|
}
|
package/src/style.scss
CHANGED
|
@@ -252,17 +252,17 @@ const handleLogin = async () => {
|
|
|
252
252
|
width: 100%;
|
|
253
253
|
min-height: 100vh;
|
|
254
254
|
display: flex;
|
|
255
|
-
background: var(--xto-bg-color-page, #
|
|
255
|
+
background: var(--xto-bg-color-page, #F5F7FA);
|
|
256
256
|
}
|
|
257
257
|
|
|
258
|
-
//
|
|
258
|
+
// 左侧品牌区域(淡紫蓝渐变网格背景,纯 CSS 无图片资源)
|
|
259
259
|
.login-brand {
|
|
260
260
|
flex: 1;
|
|
261
261
|
position: relative;
|
|
262
262
|
display: flex;
|
|
263
263
|
align-items: center;
|
|
264
264
|
justify-content: center;
|
|
265
|
-
background: linear-gradient(135deg, #
|
|
265
|
+
background: linear-gradient(135deg, #172E6E 0%, #1E3A8A 45%, #1D4ED8 100%);
|
|
266
266
|
overflow: hidden;
|
|
267
267
|
|
|
268
268
|
@media (max-width: 992px) {
|
|
@@ -392,7 +392,7 @@ const handleLogin = async () => {
|
|
|
392
392
|
}
|
|
393
393
|
}
|
|
394
394
|
|
|
395
|
-
//
|
|
395
|
+
// 背景装饰(淡紫蓝网点 + 光斑)
|
|
396
396
|
.brand-bg {
|
|
397
397
|
position: absolute;
|
|
398
398
|
inset: 0;
|
|
@@ -403,9 +403,10 @@ const handleLogin = async () => {
|
|
|
403
403
|
position: absolute;
|
|
404
404
|
inset: 0;
|
|
405
405
|
background-image:
|
|
406
|
-
|
|
407
|
-
linear-gradient(
|
|
408
|
-
|
|
406
|
+
radial-gradient(rgba(255, 255, 255, 0.14) 1.2px, transparent 1.2px),
|
|
407
|
+
linear-gradient(rgba(255, 255, 255, 0.04) 1px, transparent 1px),
|
|
408
|
+
linear-gradient(90deg, rgba(255, 255, 255, 0.04) 1px, transparent 1px);
|
|
409
|
+
background-size: 28px 28px, 56px 56px, 56px 56px;
|
|
409
410
|
}
|
|
410
411
|
|
|
411
412
|
.bg-glow {
|
|
@@ -414,7 +415,7 @@ const handleLogin = async () => {
|
|
|
414
415
|
right: -10%;
|
|
415
416
|
width: 60%;
|
|
416
417
|
height: 60%;
|
|
417
|
-
background: radial-gradient(circle, rgba(
|
|
418
|
+
background: radial-gradient(circle, rgba(147, 197, 253, 0.35) 0%, transparent 70%);
|
|
418
419
|
animation: glow-pulse 8s ease-in-out infinite;
|
|
419
420
|
}
|
|
420
421
|
|
|
@@ -424,7 +425,7 @@ const handleLogin = async () => {
|
|
|
424
425
|
left: -10%;
|
|
425
426
|
width: 40%;
|
|
426
427
|
height: 40%;
|
|
427
|
-
background: radial-gradient(circle, rgba(
|
|
428
|
+
background: radial-gradient(circle, rgba(196, 181, 253, 0.28) 0%, transparent 60%);
|
|
428
429
|
}
|
|
429
430
|
}
|
|
430
431
|
}
|
|
@@ -461,13 +462,13 @@ const handleLogin = async () => {
|
|
|
461
462
|
h2 {
|
|
462
463
|
font-size: 28px;
|
|
463
464
|
font-weight: 600;
|
|
464
|
-
color: var(--xto-color-text-primary, #
|
|
465
|
+
color: var(--xto-color-text-primary, #0F172A);
|
|
465
466
|
margin-bottom: 8px;
|
|
466
467
|
}
|
|
467
468
|
|
|
468
469
|
p {
|
|
469
470
|
font-size: 14px;
|
|
470
|
-
color: var(--xto-color-text-secondary, #
|
|
471
|
+
color: var(--xto-color-text-secondary, #64748B);
|
|
471
472
|
}
|
|
472
473
|
}
|
|
473
474
|
|
|
@@ -480,7 +481,7 @@ const handleLogin = async () => {
|
|
|
480
481
|
display: block;
|
|
481
482
|
font-size: 14px;
|
|
482
483
|
font-weight: 500;
|
|
483
|
-
color: var(--xto-color-text-regular, #
|
|
484
|
+
color: var(--xto-color-text-regular, #334155);
|
|
484
485
|
margin-bottom: 8px;
|
|
485
486
|
}
|
|
486
487
|
|
|
@@ -494,7 +495,7 @@ const handleLogin = async () => {
|
|
|
494
495
|
|
|
495
496
|
:deep(.x-input__prefix) {
|
|
496
497
|
margin-right: 12px;
|
|
497
|
-
color: var(--xto-color-text-placeholder, #
|
|
498
|
+
color: var(--xto-color-text-placeholder, #94A3B8);
|
|
498
499
|
}
|
|
499
500
|
}
|
|
500
501
|
|
|
@@ -506,12 +507,12 @@ const handleLogin = async () => {
|
|
|
506
507
|
|
|
507
508
|
.forgot-link {
|
|
508
509
|
font-size: 14px;
|
|
509
|
-
color: var(--xto-color-primary, #
|
|
510
|
+
color: var(--xto-color-primary, #1D4ED8);
|
|
510
511
|
text-decoration: none;
|
|
511
512
|
transition: color 0.2s;
|
|
512
513
|
|
|
513
514
|
&:hover {
|
|
514
|
-
color: var(--xto-color-primary-dark-1, #
|
|
515
|
+
color: var(--xto-color-primary-dark-1, #1E40AF);
|
|
515
516
|
}
|
|
516
517
|
}
|
|
517
518
|
}
|
|
@@ -521,13 +522,13 @@ const handleLogin = async () => {
|
|
|
521
522
|
height: 44px;
|
|
522
523
|
font-size: 16px;
|
|
523
524
|
font-weight: 500;
|
|
524
|
-
border-radius: var(--xto-border-radius-large,
|
|
525
|
+
border-radius: var(--xto-border-radius-large, 10px);
|
|
525
526
|
letter-spacing: 4px;
|
|
526
527
|
transition: all 0.3s ease;
|
|
527
528
|
|
|
528
529
|
&:hover:not(:disabled) {
|
|
529
530
|
transform: translateY(-2px);
|
|
530
|
-
box-shadow: 0 4px 12px rgba(
|
|
531
|
+
box-shadow: 0 4px 12px rgba(29, 78, 216, 0.35);
|
|
531
532
|
}
|
|
532
533
|
|
|
533
534
|
&:active:not(:disabled) {
|
|
@@ -538,12 +539,12 @@ const handleLogin = async () => {
|
|
|
538
539
|
.form-footer {
|
|
539
540
|
margin-top: 32px;
|
|
540
541
|
padding-top: 24px;
|
|
541
|
-
border-top: 1px solid var(--xto-border-color-lighter, #
|
|
542
|
+
border-top: 1px solid var(--xto-border-color-lighter, #EDF2F7);
|
|
542
543
|
text-align: center;
|
|
543
544
|
|
|
544
545
|
p {
|
|
545
546
|
font-size: 13px;
|
|
546
|
-
color: var(--xto-color-text-placeholder, #
|
|
547
|
+
color: var(--xto-color-text-placeholder, #94A3B8);
|
|
547
548
|
margin-bottom: 16px;
|
|
548
549
|
}
|
|
549
550
|
|
|
@@ -559,12 +560,12 @@ const handleLogin = async () => {
|
|
|
559
560
|
display: flex;
|
|
560
561
|
align-items: center;
|
|
561
562
|
justify-content: center;
|
|
562
|
-
background: var(--xto-fill-color, #
|
|
563
|
+
background: var(--xto-fill-color, #F1F5F9);
|
|
563
564
|
border: none;
|
|
564
565
|
border-radius: 50%;
|
|
565
566
|
cursor: pointer;
|
|
566
567
|
transition: all 0.2s ease;
|
|
567
|
-
color: var(--xto-color-text-secondary, #
|
|
568
|
+
color: var(--xto-color-text-secondary, #64748B);
|
|
568
569
|
|
|
569
570
|
svg {
|
|
570
571
|
width: 20px;
|
|
@@ -572,8 +573,8 @@ const handleLogin = async () => {
|
|
|
572
573
|
}
|
|
573
574
|
|
|
574
575
|
&:hover {
|
|
575
|
-
background: var(--xto-color-primary-light-
|
|
576
|
-
color: var(--xto-color-primary, #
|
|
576
|
+
background: var(--xto-color-primary-light-8, #DBEAFE);
|
|
577
|
+
color: var(--xto-color-primary, #1D4ED8);
|
|
577
578
|
transform: translateY(-2px);
|
|
578
579
|
}
|
|
579
580
|
}
|
|
@@ -585,7 +586,7 @@ const handleLogin = async () => {
|
|
|
585
586
|
|
|
586
587
|
p {
|
|
587
588
|
font-size: 12px;
|
|
588
|
-
color: var(--xto-color-text-placeholder, #
|
|
589
|
+
color: var(--xto-color-text-placeholder, #94A3B8);
|
|
589
590
|
}
|
|
590
591
|
}
|
|
591
592
|
}
|