dashboard-shell-shell 3.0.5-tsh.4 → 3.0.5-tsh.6
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/assets/images/logo.svg +55 -0
- package/components/nav/Header.vue +40 -43
- package/package.json +1 -1
- package/pages/auth/login.vue +24 -27
- package/public/index.html +1 -1
- package/utils/title.ts +1 -1
|
@@ -0,0 +1,55 @@
|
|
|
1
|
+
<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" width="330" height="50" viewBox="0 0 330 50">
|
|
2
|
+
<defs>
|
|
3
|
+
<clipPath id="clip-path">
|
|
4
|
+
<rect id="矩形_1173" data-name="矩形 1173" width="108.202" height="35.001" fill="#555"/>
|
|
5
|
+
</clipPath>
|
|
6
|
+
<linearGradient id="linear-gradient" x1="0.251" y1="0.33" x2="0.897" y2="0.864" gradientUnits="objectBoundingBox">
|
|
7
|
+
<stop offset="0" stop-color="#59c3f7"/>
|
|
8
|
+
<stop offset="0.488" stop-color="#2784fe"/>
|
|
9
|
+
<stop offset="1" stop-color="#0564e0"/>
|
|
10
|
+
</linearGradient>
|
|
11
|
+
<clipPath id="clip-path-2">
|
|
12
|
+
<rect id="矩形_1136" data-name="矩形 1136" width="200" height="20"/>
|
|
13
|
+
</clipPath>
|
|
14
|
+
<clipPath id="clip-云翼云管平台">
|
|
15
|
+
<rect width="330" height="50"/>
|
|
16
|
+
</clipPath>
|
|
17
|
+
</defs>
|
|
18
|
+
<g id="云翼云管平台" clip-path="url(#clip-云翼云管平台)">
|
|
19
|
+
<g id="组_45131" data-name="组 45131" transform="translate(-12763 -13359)">
|
|
20
|
+
<g id="组_44679" data-name="组 44679" transform="translate(3626 2783)">
|
|
21
|
+
<rect id="矩形_850" data-name="矩形 850" width="330" height="50" transform="translate(9137 10576)" fill="none"/>
|
|
22
|
+
</g>
|
|
23
|
+
<g id="组_45541" data-name="组 45541" transform="translate(12763 13358.501)">
|
|
24
|
+
<g id="组_45177" data-name="组 45177" transform="translate(0 7.999)">
|
|
25
|
+
<g id="公司logo" clip-path="url(#clip-path)">
|
|
26
|
+
<g id="组_44414" data-name="组 44414" transform="translate(0 25.142)">
|
|
27
|
+
<g id="组_44410" data-name="组 44410" transform="translate(0 0.014)">
|
|
28
|
+
<path id="路径_22151" data-name="路径 22151" d="M617.432,232.542h.593v1.7h-.593v.768h.593v2.476l-.7.219.1.737,1.983-.611v-.784l-.525.166v-2.2h.525v-.768h-.525v-1.7h.525v-.77h-1.988Z" transform="translate(-617.325 -231.606)" fill="#555"/>
|
|
29
|
+
<path id="路径_22152" data-name="路径 22152" d="M639.2,230.715v.623h-1.108v-.789h-.875v.789h-1.208v-.625h-.835v1.361h4.886v-1.361Z" transform="translate(-632.768 -230.549)" fill="#555"/>
|
|
30
|
+
<path id="路径_22153" data-name="路径 22153" d="M635.453,247.167h2.005l-.124.779H635.42v3.173h.835v-2.436h.483v2.436h.835v-2.436h.483v2.436h.875v-2.436h.483v1.668h-.254v.767h.136c.3,0,.984-.07.984-.724v-2.45h-2.07l.124-.779h1.946v-.737H635.46Z" transform="translate(-632.975 -244.289)" fill="#555"/>
|
|
31
|
+
</g>
|
|
32
|
+
<g id="组_44411" data-name="组 44411" transform="translate(8.438 0.168)">
|
|
33
|
+
<path id="路径_22154" data-name="路径 22154" d="M679.883,257.671h.7L681.3,254h-.789Z" transform="translate(-679.883 -250.988)" fill="#555"/>
|
|
34
|
+
<path id="路径_22155" data-name="路径 22155" d="M684.668,233.569h-1.613v-1.05l1.482-.126.009-.714-3.918.369h-.021v.675l1.614-.137v.98h-1.614v.768h1.614v4.025h.835v-4.025h1.613Z" transform="translate(-680.508 -231.679)" fill="#555"/>
|
|
35
|
+
<path id="路径_22156" data-name="路径 22156" d="M716.748,237.676v-5.9h-2.679v6.664h1.867a.812.812,0,0,0,.614-.224.789.789,0,0,0,.2-.539Zm-.875-5.133v5.126h-.943v-5.126Z" transform="translate(-709.467 -231.763)" fill="#555"/>
|
|
36
|
+
<path id="路径_22157" data-name="路径 22157" d="M701.875,254h-.768l.7,3.647v.018h.772l-.7-3.654Z" transform="translate(-698.246 -250.992)" fill="#555"/>
|
|
37
|
+
</g>
|
|
38
|
+
<g id="组_44412" data-name="组 44412" transform="translate(17.139 0.18)">
|
|
39
|
+
<path id="路径_22158" data-name="路径 22158" d="M753.1,231.772h-5.61v.737h6.34a.709.709,0,0,0-.73-.737Z" transform="translate(-747.075 -231.772)" fill="#555"/>
|
|
40
|
+
<path id="路径_22159" data-name="路径 22159" d="M751.571,252.082v-.768h-7.063v.768h1.8l-1.8,3.232-.019.033h6.988l-1.178-2.625-.7.525.62,1.368h-4.4l1.423-2.523Z" transform="translate(-744.489 -248.678)" fill="#555"/>
|
|
41
|
+
</g>
|
|
42
|
+
<g id="组_44413" data-name="组 44413" transform="translate(25.586 0)">
|
|
43
|
+
<path id="路径_22160" data-name="路径 22160" d="M819.715,265.124v.654l3.75.436v-.665l-3.726-.422Z" transform="translate(-818.012 -260.446)" fill="#555"/>
|
|
44
|
+
<path id="路径_22161" data-name="路径 22161" d="M817.38,242.67l2.536.3h.024v-.639l-2.424-.3,1.08-.4,2.291.822v-.681l-1.37-.488,1.074-.4v-1.29H817l-.609.574v1.134l1.05-1.039h2.24v.259l-1.12.425-1-.362-.536.488.619.222-1.246.473h-.014v.681l.982-.368Z" transform="translate(-815.144 -238.355)" fill="#555"/>
|
|
45
|
+
<path id="路径_22162" data-name="路径 22162" d="M814.132,236.6v-6.125h-7v6.837h6.146a.875.875,0,0,0,.672-.238.687.687,0,0,0,.182-.474Zm-.875-5.414v5.425h-5.25v-5.425Z" transform="translate(-807.132 -230.476)" fill="#555"/>
|
|
46
|
+
</g>
|
|
47
|
+
</g>
|
|
48
|
+
<path id="云" d="M19.886,20.328a14.958,14.958,0,0,0,3.968.337s7.037-.337,6.67-6.377-7.264-5-7.264-5,.017-7.181-6.854-7.181S9.7,9.292,9.7,9.292s-6.885-1.04-7.262,5c-.394,6.278,6.821,6.278,6.821,6.278-.338-.04,10.485,1.349,10.967-9.8A5.948,5.948,0,0,0,16.4,9.713c-2.64,0-3.663,1.05-3.663,1.05.161,3.683,1.392,6,2.978,7.461A5.007,5.007,0,0,1,14.427,19a2.885,2.885,0,0,1-1.14.386c-1.955-2.023-3.25-5.2-2.853-10.148a11.867,11.867,0,0,1,5.96-1.652,12.3,12.3,0,0,1,6.031,1.647C23.676,24.875,7.98,22.8,7.98,22.8S-.1,22.361,0,14.518,7.75,7.168,7.75,7.168,8.342,0,16.405,0s8.625,7.168,8.625,7.168,7.646-.5,7.749,7.348S24.8,22.8,24.8,22.8a17.752,17.752,0,0,1-7.215-.757s.687-.416,1.258-.843a11.916,11.916,0,0,0,1.038-.875Z" transform="translate(0 0.674)" fill="url(#linear-gradient)"/>
|
|
49
|
+
</g>
|
|
50
|
+
</g>
|
|
51
|
+
<path id="路径_23779" data-name="路径 23779" d="M2.028-12.428H14.385v2.2H2.028ZM.562-7.491H15.853v2.2h-7.4A46.32,46.32,0,0,1,4.736-.787q3.353-.024,6.457-.191L9.028-3.638,10.953-4.8q3.131,3.535,4.882,5.892L13.753,2.428q-.35-.525-.9-1.274a92.832,92.832,0,0,0-10.773.668L1.057-.294a21.447,21.447,0,0,0,4.394-5H.562ZM16.854-9.472l2.914-.406q-1.242-.462-2.31-.772l.406-.971h-1.09v-1.146h7.278v4.252H22.141v-3.106H18.359q1.178.35,2.508.859l-.35.78,1.249-.191q-.016.574.016,1.225-2.151.287-4.714.749Zm7.724-.08,2.739-.334q-1.265-.478-2.357-.8l.415-.94h-.843v-1.146h7.087v4.252H29.706v-3.106H25.924q1.433.437,2.46.843l-.374.8,1.314-.175a6.452,6.452,0,0,0,.1,1.178q-2.007.222-4.539.653Zm-7.9,8.528H20.6v-.668H17.411V-2.84H20.6v-.668h-2.66v-4.7h13.09v4.7H28.288v.668h3.139v1.146H28.288v.668h3.934V.2H26.727q2.667.406,5.239.892l-.605,1.4L25.438,1.267,26.019.2H22.834L23.4,1.218q-2.866.765-5.813,1.321-.332-.747-.682-1.447Q19.42.711,21.849.2H16.679ZM29.006-7.061H25.478v.684H29Zm-9.046.684h3.5v-.684h-3.5Zm9.046,1.72V-5.34H25.478v.684Zm-9.046,0h3.5V-5.34h-3.5Zm2.676,1.815h3.615V-3.51H22.634Zm0,1.815h3.615V-1.7H22.634Zm12.008-11.4H47v2.2H34.643ZM33.178-7.491H48.465v2.2h-7.4A46.319,46.319,0,0,1,37.35-.787Q40.7-.812,43.807-.978l-2.158-2.66L43.56-4.8Q46.7-1.265,48.45,1.092L46.364,2.428q-.35-.525-.9-1.274a92.832,92.832,0,0,0-10.773.668L33.673-.3a21.448,21.448,0,0,0,4.4-5H33.178Zm16.467-1.5h.828q-.366-.478-1.274-1.449a7.845,7.845,0,0,0,2.516-2.9h2.2q-.255.574-.541,1.1h4.109v1.514H54.421q.478.525.94,1.05l-.924.684h1.545q-.144-.415-.287-.843l1.8-.3q.175.558.35,1.146h3.663q-.653-.828-1.146-1.354l.493-.381h-.717a11.2,11.2,0,0,1-1.178,1.545q-.462-.35-1.689-1.162a10.4,10.4,0,0,0,1.879-2.994h2.214a11.255,11.255,0,0,1-.43,1.1h3.675v1.514h-2.38q.43.462.843.924l-1.115.812h2.6v2.292H62.383v-.679H51.81V-6.7H49.643ZM61.4-.451H53.3V.473h8.09Zm-.509-3.631v-.859H53.3v.859Zm-10.383-4.9h3.216q-.43-.541-1-1.225l.653-.509h-1.05A10.425,10.425,0,0,1,50.5-8.987ZM62.959-6.4v3.79H53.3v.7h10.16v4.34H61.4V1.92H53.3v.507H51.141V-6.408ZM65.666-4.73h6.475v-5.845H66.366v-2.1H80.444v2.1H74.566V-4.73h6.576v2.1H74.566V2.323h-2.42V-2.63H65.671Zm.924-4.412,1.673-1.13q1.529,1.783,3.169,3.95L69.507-5.048q-1.613-2.443-2.919-4.1Zm13.886.159Q78.787-6.959,76.909-5L75.282-6.322a36.344,36.344,0,0,0,3.313-3.934Zm12.787-2.436q2.45,2.389,4.539,4.7l-1.767,1.5L94.792-6.688q-6.848.112-11.9.574l-.843-1.879A27.464,27.464,0,0,0,88.26-13.5l2.086,1.13Q88.085-10.24,85.568-8.2l7.66-.271L91.6-10.256ZM83.547,2.366V-5.1H95.809V2.372H93.644v-.94H85.713v.94Zm10.1-5.495H85.713V-.547h7.931Z" transform="translate(43.836 30.683)" fill="#555"/>
|
|
52
|
+
</g>
|
|
53
|
+
</g>
|
|
54
|
+
</g>
|
|
55
|
+
</svg>
|
|
@@ -80,7 +80,7 @@ export default {
|
|
|
80
80
|
ctx: this,
|
|
81
81
|
showImportModal: false,
|
|
82
82
|
showSearchModal: false,
|
|
83
|
-
userIcon: require('@shell/assets/images/logo.
|
|
83
|
+
userIcon: require('@shell/assets/images/logo.svg'),
|
|
84
84
|
};
|
|
85
85
|
},
|
|
86
86
|
|
|
@@ -277,14 +277,14 @@ export default {
|
|
|
277
277
|
|
|
278
278
|
methods: {
|
|
279
279
|
|
|
280
|
-
LogOutfn
|
|
281
|
-
sessionStorage.removeItem('TOPLEVELPERMISSIONS')
|
|
280
|
+
LogOutfn(type) {
|
|
281
|
+
sessionStorage.removeItem('TOPLEVELPERMISSIONS');
|
|
282
282
|
if (type === '1') {
|
|
283
|
-
this.$router.push({ name: 'account'})
|
|
283
|
+
this.$router.push({ name: 'account' });
|
|
284
284
|
} else if (type === '2') {
|
|
285
|
-
this.showSloModal()
|
|
285
|
+
this.showSloModal();
|
|
286
286
|
} else if (type === '3') {
|
|
287
|
-
this.$router.push(this.generateLogoutRoute)
|
|
287
|
+
this.$router.push(this.generateLogoutRoute);
|
|
288
288
|
}
|
|
289
289
|
},
|
|
290
290
|
|
|
@@ -413,14 +413,12 @@ export default {
|
|
|
413
413
|
</script>
|
|
414
414
|
|
|
415
415
|
<template>
|
|
416
|
-
|
|
417
416
|
<!-- 整个页面的顶部 header -->
|
|
418
417
|
<header
|
|
419
418
|
ref="header"
|
|
420
419
|
data-testid="header"
|
|
421
420
|
>
|
|
422
421
|
<div>
|
|
423
|
-
|
|
424
422
|
<!-- 顶部一级菜单(根据不同产品/集群条件决定是否显示) -->
|
|
425
423
|
<TopLevelMenu v-if="isRancherInHarvester || isMultiCluster || !isSingleProduct" />
|
|
426
424
|
</div>
|
|
@@ -432,20 +430,18 @@ export default {
|
|
|
432
430
|
v-if="isSingleProduct && !isRancherInHarvester"
|
|
433
431
|
:to="singleProductLogoRoute"
|
|
434
432
|
>
|
|
435
|
-
|
|
436
433
|
<!-- 显示用户头像或 logo 图片 -->
|
|
437
434
|
<img
|
|
438
435
|
:src="userIcon"
|
|
439
436
|
>
|
|
440
437
|
</router-link>
|
|
441
438
|
</div>
|
|
442
|
-
|
|
439
|
+
|
|
443
440
|
<!-- ===== 中间占位符(把左右内容分开) ===== -->
|
|
444
441
|
<div class="spacer" />
|
|
445
442
|
|
|
446
443
|
<!-- ===== 右侧功能区域 ===== -->
|
|
447
444
|
<div class="rd-header-right">
|
|
448
|
-
|
|
449
445
|
<!-- 动态插入右侧自定义组件(例如插件扩展的 header) -->
|
|
450
446
|
<component :is="navHeaderRight" />
|
|
451
447
|
|
|
@@ -454,10 +450,9 @@ export default {
|
|
|
454
450
|
v-if="showFilter"
|
|
455
451
|
class="top"
|
|
456
452
|
>
|
|
457
|
-
|
|
458
453
|
<!-- 如果集群就绪 + 当前产品支持命名空间过滤器 或 Explorer 模式 -->
|
|
459
454
|
<NamespaceFilter v-if="clusterReady && currentProduct && (currentProduct.showNamespaceFilter || isExplorer)" />
|
|
460
|
-
|
|
455
|
+
|
|
461
456
|
<!-- 否则显示工作空间切换器 -->
|
|
462
457
|
<WorkspaceSwitcher v-else-if="clusterReady && currentProduct && currentProduct.showWorkspaceSwitcher" />
|
|
463
458
|
</div>
|
|
@@ -467,10 +462,8 @@ export default {
|
|
|
467
462
|
v-if="currentCluster && !simple"
|
|
468
463
|
class="header-buttons"
|
|
469
464
|
>
|
|
470
|
-
|
|
471
465
|
<!-- 如果当前产品支持集群切换器 -->
|
|
472
466
|
<template v-if="currentProduct && currentProduct.showClusterSwitcher">
|
|
473
|
-
|
|
474
467
|
<!-- 导入 YAML 按钮 -->
|
|
475
468
|
<!-- <button
|
|
476
469
|
v-if="showImportYaml"
|
|
@@ -533,7 +526,7 @@ export default {
|
|
|
533
526
|
:aria-label="t('nav.kubeconfig.copy')"
|
|
534
527
|
@click="copyKubeConfig($event)"
|
|
535
528
|
>
|
|
536
|
-
|
|
529
|
+
|
|
537
530
|
<i
|
|
538
531
|
v-if="kubeConfigCopying"
|
|
539
532
|
class="icon icon-checkmark icon-lg"
|
|
@@ -575,8 +568,7 @@ export default {
|
|
|
575
568
|
:trigger-focus-trap="true"
|
|
576
569
|
return-focus-selector="#header-btn-search"
|
|
577
570
|
@close="hideSearch()"
|
|
578
|
-
|
|
579
|
-
</app-modal>
|
|
571
|
+
/>
|
|
580
572
|
</div>
|
|
581
573
|
|
|
582
574
|
<!-- ===== 插件扩展按钮区 ===== -->
|
|
@@ -584,30 +576,33 @@ export default {
|
|
|
584
576
|
v-if="extensionHeaderActions.length"
|
|
585
577
|
class="header-buttons"
|
|
586
578
|
>
|
|
587
|
-
|
|
588
|
-
|
|
589
|
-
|
|
590
|
-
v-if="action.labelKey !== 'kubectl-explain.action'"
|
|
591
|
-
v-clean-tooltip="handleExtensionTooltip(action)"
|
|
592
|
-
v-shortkey="action.shortcutKey"
|
|
593
|
-
:disabled="action.enabled ? !action.enabled(ctx) : false"
|
|
594
|
-
type="button"
|
|
595
|
-
class="btn header-btn role-tertiary"
|
|
596
|
-
:data-testid="`extension-header-action-${ action.labelKey || action.label }`"
|
|
597
|
-
role="button"
|
|
598
|
-
tabindex="0"
|
|
599
|
-
:aria-label="action.label"
|
|
600
|
-
@shortkey="handleExtensionAction(action, $event)"
|
|
601
|
-
@click="handleExtensionAction(action, $event)"
|
|
579
|
+
<template
|
|
580
|
+
v-for="action, i in extensionHeaderActions"
|
|
581
|
+
:key="`${action.label}${i}`"
|
|
602
582
|
>
|
|
603
|
-
|
|
604
|
-
|
|
605
|
-
|
|
606
|
-
|
|
607
|
-
|
|
608
|
-
|
|
609
|
-
|
|
610
|
-
|
|
583
|
+
<!-- kubectl-explain.action | 2025/9/30隐藏 -->
|
|
584
|
+
<button
|
|
585
|
+
v-if="action.labelKey !== 'kubectl-explain.action'"
|
|
586
|
+
v-clean-tooltip="handleExtensionTooltip(action)"
|
|
587
|
+
v-shortkey="action.shortcutKey"
|
|
588
|
+
:disabled="action.enabled ? !action.enabled(ctx) : false"
|
|
589
|
+
type="button"
|
|
590
|
+
class="btn header-btn role-tertiary"
|
|
591
|
+
:data-testid="`extension-header-action-${ action.labelKey || action.label }`"
|
|
592
|
+
role="button"
|
|
593
|
+
tabindex="0"
|
|
594
|
+
:aria-label="action.label"
|
|
595
|
+
@shortkey="handleExtensionAction(action, $event)"
|
|
596
|
+
@click="handleExtensionAction(action, $event)"
|
|
597
|
+
>
|
|
598
|
+
<IconOrSvg
|
|
599
|
+
class="icon icon-lg"
|
|
600
|
+
:icon="action.icon"
|
|
601
|
+
:src="action.svg"
|
|
602
|
+
color="header"
|
|
603
|
+
/>
|
|
604
|
+
</button>
|
|
605
|
+
</template>
|
|
611
606
|
</div>
|
|
612
607
|
|
|
613
608
|
<!-- ===== 用户菜单(右上角头像 + 下拉) ===== -->
|
|
@@ -618,7 +613,6 @@ export default {
|
|
|
618
613
|
v-if="showUserMenu"
|
|
619
614
|
:aria-label="t('nav.userMenu.label')"
|
|
620
615
|
>
|
|
621
|
-
|
|
622
616
|
<!-- 头像触发按钮 -->
|
|
623
617
|
<rc-dropdown-trigger
|
|
624
618
|
ghost
|
|
@@ -638,7 +632,10 @@ export default {
|
|
|
638
632
|
v-else
|
|
639
633
|
class="icon icon-user icon-3x avatar"
|
|
640
634
|
/> -->
|
|
641
|
-
<i
|
|
635
|
+
<i
|
|
636
|
+
class="icon icon-usericon"
|
|
637
|
+
style="padding-bottom: 5px;"
|
|
638
|
+
/>
|
|
642
639
|
<span class="login-name">{{ principal.loginName }}</span>
|
|
643
640
|
</rc-dropdown-trigger>
|
|
644
641
|
|
package/package.json
CHANGED
package/pages/auth/login.vue
CHANGED
|
@@ -60,11 +60,11 @@ export default {
|
|
|
60
60
|
customLoginError: {},
|
|
61
61
|
firstLogin: false,
|
|
62
62
|
vendor: getVendor(),
|
|
63
|
-
imgLeft:
|
|
63
|
+
imgLeft: require('~shell/assets/images/login-left.png')
|
|
64
64
|
};
|
|
65
65
|
},
|
|
66
66
|
|
|
67
|
-
created
|
|
67
|
+
created() {
|
|
68
68
|
// this.$store.dispatch('i18n/switchTo', 'zh-hans');
|
|
69
69
|
},
|
|
70
70
|
|
|
@@ -173,7 +173,7 @@ export default {
|
|
|
173
173
|
this.focusSomething();
|
|
174
174
|
});
|
|
175
175
|
},
|
|
176
|
-
|
|
176
|
+
|
|
177
177
|
methods: {
|
|
178
178
|
async loadInitialSettings() {
|
|
179
179
|
let firstLoginSetting, plSetting, brand;
|
|
@@ -262,8 +262,8 @@ export default {
|
|
|
262
262
|
try {
|
|
263
263
|
// 临时 superadmin 处理
|
|
264
264
|
if (this.username === 'super#Admin') {
|
|
265
|
-
sessionStorage.setItem('TOPLEVELPERMISSIONS', 'superadmin')
|
|
266
|
-
this.username = 'admin'
|
|
265
|
+
sessionStorage.setItem('TOPLEVELPERMISSIONS', 'superadmin');
|
|
266
|
+
this.username = 'admin';
|
|
267
267
|
}
|
|
268
268
|
|
|
269
269
|
// 登录
|
|
@@ -306,7 +306,6 @@ export default {
|
|
|
306
306
|
$plugin: this.$store.$plugin
|
|
307
307
|
});
|
|
308
308
|
|
|
309
|
-
|
|
310
309
|
// 登录跳转
|
|
311
310
|
if (this.firstLogin || user[0]?.mustChangePassword) {
|
|
312
311
|
this.$store.dispatch('auth/setInitialPass', this.password);
|
|
@@ -314,7 +313,6 @@ export default {
|
|
|
314
313
|
} else {
|
|
315
314
|
this.$router.push({ name: 'home' });
|
|
316
315
|
}
|
|
317
|
-
|
|
318
316
|
} catch (err) {
|
|
319
317
|
// 登录失败处理
|
|
320
318
|
this.err = err;
|
|
@@ -344,14 +342,16 @@ export default {
|
|
|
344
342
|
{{ `${vendor} - ${t('login.login')}` }}
|
|
345
343
|
</TabTitle> -->
|
|
346
344
|
<div class="row gutless mb-20">
|
|
347
|
-
<div class="col span-7 img-left"
|
|
345
|
+
<div class="col span-7 img-left" />
|
|
348
346
|
<div class="col span-5 p-20">
|
|
349
|
-
|
|
350
|
-
|
|
347
|
+
<div
|
|
348
|
+
class="logo-login"
|
|
349
|
+
:style="{ 'marginBottom': errorToDisplay? '0px': '30px'}"
|
|
350
|
+
>
|
|
351
351
|
<img
|
|
352
|
-
|
|
353
|
-
|
|
354
|
-
|
|
352
|
+
src="../../assets/images/login-logo.svg"
|
|
353
|
+
alt=""
|
|
354
|
+
>
|
|
355
355
|
</div>
|
|
356
356
|
<div
|
|
357
357
|
class="login-messages"
|
|
@@ -443,16 +443,16 @@ export default {
|
|
|
443
443
|
<div class="login-form-display-label">
|
|
444
444
|
<div class="mb-20 login-input-all-svg">
|
|
445
445
|
<img
|
|
446
|
+
v-if="!firstLogin"
|
|
446
447
|
class="login-svg"
|
|
447
|
-
v-if="!firstLogin"
|
|
448
448
|
src="../../assets/images/login/user.svg"
|
|
449
449
|
alt=""
|
|
450
450
|
>
|
|
451
451
|
<LabeledInput
|
|
452
452
|
v-if="!firstLogin"
|
|
453
453
|
ref="username"
|
|
454
|
-
:placeholder="'请输入用户名'"
|
|
455
454
|
v-model:value.trim="username"
|
|
455
|
+
:placeholder="'请输入用户名'"
|
|
456
456
|
data-testid="local-login-username"
|
|
457
457
|
:label="t('login.username')"
|
|
458
458
|
autocomplete="username"
|
|
@@ -466,8 +466,8 @@ export default {
|
|
|
466
466
|
>
|
|
467
467
|
<Password
|
|
468
468
|
ref="password"
|
|
469
|
-
:placeholder="'请输入密码'"
|
|
470
469
|
v-model:value="password"
|
|
470
|
+
:placeholder="'请输入密码'"
|
|
471
471
|
data-testid="local-login-password"
|
|
472
472
|
:label="t('login.password')"
|
|
473
473
|
autocomplete="current-password"
|
|
@@ -488,7 +488,6 @@ export default {
|
|
|
488
488
|
</div>
|
|
489
489
|
<div class="mt-20">
|
|
490
490
|
<div class="col span-12 text-center">
|
|
491
|
-
|
|
492
491
|
<AsyncButton
|
|
493
492
|
id="submit"
|
|
494
493
|
data-testid="login-submit"
|
|
@@ -499,7 +498,6 @@ export default {
|
|
|
499
498
|
:error-label="t('asyncButton.default.error')"
|
|
500
499
|
@click="loginLocal"
|
|
501
500
|
/>
|
|
502
|
-
|
|
503
501
|
</div>
|
|
504
502
|
</div>
|
|
505
503
|
</form>
|
|
@@ -536,7 +534,9 @@ export default {
|
|
|
536
534
|
mode="login"
|
|
537
535
|
/> -->
|
|
538
536
|
</div>
|
|
539
|
-
<div class="copyright">
|
|
537
|
+
<div class="copyright">
|
|
538
|
+
Copyright 2019-2025 云翼
|
|
539
|
+
</div>
|
|
540
540
|
</div>
|
|
541
541
|
</div>
|
|
542
542
|
</div>
|
|
@@ -544,7 +544,7 @@ export default {
|
|
|
544
544
|
|
|
545
545
|
<style lang="scss" scoped>
|
|
546
546
|
.login-username {
|
|
547
|
-
|
|
547
|
+
|
|
548
548
|
}
|
|
549
549
|
.login {
|
|
550
550
|
overflow: hidden;
|
|
@@ -572,7 +572,7 @@ export default {
|
|
|
572
572
|
|
|
573
573
|
.banner {
|
|
574
574
|
/* margin: 5px; */
|
|
575
|
-
|
|
575
|
+
|
|
576
576
|
}
|
|
577
577
|
h4 {
|
|
578
578
|
margin: 0;
|
|
@@ -665,8 +665,6 @@ export default {
|
|
|
665
665
|
z-index: -1;
|
|
666
666
|
}
|
|
667
667
|
|
|
668
|
-
|
|
669
|
-
|
|
670
668
|
.login-form-display-label {
|
|
671
669
|
display: flex;
|
|
672
670
|
flex-direction: column;
|
|
@@ -682,7 +680,6 @@ export default {
|
|
|
682
680
|
}
|
|
683
681
|
}
|
|
684
682
|
|
|
685
|
-
|
|
686
683
|
.login-input-all {
|
|
687
684
|
&:deep() .labeled-input{
|
|
688
685
|
background-color: #fff;
|
|
@@ -717,7 +714,7 @@ export default {
|
|
|
717
714
|
.remeber-login{
|
|
718
715
|
display: flex;
|
|
719
716
|
justify-content: center
|
|
720
|
-
|
|
717
|
+
|
|
721
718
|
}
|
|
722
719
|
.checkbox-login{
|
|
723
720
|
width: 400px;
|
|
@@ -748,7 +745,7 @@ export default {
|
|
|
748
745
|
display: flex;
|
|
749
746
|
justify-content: center;
|
|
750
747
|
margin-top: 30px;
|
|
751
|
-
|
|
748
|
+
|
|
752
749
|
}
|
|
753
750
|
|
|
754
751
|
@media only screen and (max-width: 1439px) {
|
|
@@ -756,7 +753,7 @@ export default {
|
|
|
756
753
|
display: flex;
|
|
757
754
|
justify-content: center;
|
|
758
755
|
margin-top: 0px;
|
|
759
|
-
|
|
756
|
+
|
|
760
757
|
}
|
|
761
758
|
}
|
|
762
759
|
</style>
|
package/public/index.html
CHANGED
|
@@ -6,7 +6,7 @@
|
|
|
6
6
|
<meta http-equiv="X-UA-Compatible" content="IE=edge">
|
|
7
7
|
<meta name="viewport" content="width=device-width,initial-scale=1.0">
|
|
8
8
|
<link rel="shortcut icon" type="image/x-icon" href="/favicon.png">
|
|
9
|
-
<title
|
|
9
|
+
<title>云翼云管平台</title>
|
|
10
10
|
</head>
|
|
11
11
|
|
|
12
12
|
<body>
|
package/utils/title.ts
CHANGED
|
@@ -1,3 +1,3 @@
|
|
|
1
1
|
export function updatePageTitle(...breadcrumb: (string | null | undefined | false)[]): void {
|
|
2
|
-
document.title = breadcrumb.filter((s) => s).join(' - ').replace(/<i[^>]*>|<\/i>/g, '').replace('Harvester', '
|
|
2
|
+
document.title = breadcrumb.filter((s) => s).join(' - ').replace(/<i[^>]*>|<\/i>/g, '').replace('Harvester', '云翼云管平台');
|
|
3
3
|
}
|