dashboard-shell-shell 1.0.1000000117 → 1.0.1000000118
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/styles/base/_functions.scss +0 -0
- package/assets/styles/base/_mixins.scss +1 -1
- package/assets/styles/global/_button.scss +10 -17
- package/assets/styles/global/_form.scss +2 -2
- package/assets/styles/global/_labeled-input.scss +2 -6
- package/assets/styles/global/_select.scss +7 -6
- package/assets/styles/global/_table.scss +2 -3
- package/assets/styles/global/_tooltip.scss +1 -8
- package/assets/styles/themes/_dark.scss +0 -2
- package/assets/styles/themes/_light.scss +2 -5
- package/assets/styles/vendor/vue-select.scss +1 -2
- package/assets/translations/en-us.yaml +3 -1
- package/assets/translations/zh-hans.yaml +28 -51
- package/components/ActionDropdown.vue +0 -1
- package/components/ActionMenuShell.vue +3 -6
- package/components/BrandImage.vue +0 -22
- package/components/ClusterIconMenu.vue +1 -1
- package/components/CodeMirror.vue +0 -1
- package/components/CruResource.vue +1 -1
- package/components/CruResourceFooter.vue +1 -1
- package/components/ExplorerProjectsNamespaces.vue +24 -4
- package/components/GlobalRoleBindings.vue +48 -112
- package/components/IndentedPanel.vue +10 -4
- package/components/PromptRemove.vue +3 -3
- package/components/ResourceDetail/Masthead.vue +242 -190
- package/components/ResourceDetail/index.vue +5 -20
- package/components/ResourceList/Masthead.vue +84 -146
- package/components/ResourceList/ResourceLoadingIndicator.vue +2 -5
- package/components/ResourceTable.vue +1 -76
- package/components/SideNav.vue +29 -66
- package/components/SortableTable/THead.vue +0 -6
- package/components/SortableTable/index.vue +388 -481
- package/components/Tabbed/index.vue +5 -4
- package/components/auth/Principal.vue +2 -3
- package/components/auth/RoleDetailEdit.vue +5 -58
- package/components/auth/SelectPrincipal.vue +0 -1
- package/components/form/BannerSettings.vue +16 -18
- package/components/form/ChangePassword.vue +4 -4
- package/components/form/ColorInput.vue +8 -32
- package/components/form/Footer.vue +1 -1
- package/components/form/InputWithSelect.vue +0 -2
- package/components/form/KeyValue.vue +7 -31
- package/components/form/LabeledSelect.vue +178 -178
- package/components/form/Members/ClusterPermissionsEditor.vue +2 -1
- package/components/form/Members/MembershipEditor.vue +1 -1
- package/components/form/NameNsDescription.vue +11 -24
- package/components/form/Password.vue +2 -6
- package/components/form/ResourceQuota/Namespace.vue +1 -1
- package/components/form/ResourceQuota/NamespaceRow.vue +10 -13
- package/components/form/ResourceQuota/ProjectRow.vue +1 -0
- package/components/form/Select.vue +2 -2
- package/components/nav/Favorite.vue +1 -5
- package/components/nav/Group.vue +23 -69
- package/components/nav/Header.vue +17 -82
- package/components/nav/HeaderPageActionMenu.vue +0 -1
- package/components/nav/NamespaceFilter.vue +3 -0
- package/components/nav/TopLevelMenu.vue +119 -182
- package/components/nav/Type.vue +11 -48
- package/components/rancherResourceDetail/Masthead.vue +769 -0
- package/components/rancherResourceDetail/__tests__/Masthead.test.ts +65 -0
- package/components/rancherResourceDetail/index.vue +591 -0
- package/components/rancherResourceList/Masthead.vue +375 -0
- package/components/rancherResourceList/ResourceLoadingIndicator.vue +140 -0
- package/components/rancherResourceList/index.vue +307 -0
- package/components/rancherResourceList/resource-list.config.js +7 -0
- package/components/rancherResourceTable.vue +783 -0
- package/components/rancherSortableTable/THead.vue +561 -0
- package/components/rancherSortableTable/actions.js +153 -0
- package/components/rancherSortableTable/advanced-filtering.js +272 -0
- package/components/rancherSortableTable/debug.js +117 -0
- package/components/rancherSortableTable/filtering.js +290 -0
- package/components/rancherSortableTable/grouping.js +48 -0
- package/components/rancherSortableTable/index.vue +2712 -0
- package/components/rancherSortableTable/paging.js +155 -0
- package/components/rancherSortableTable/selection.js +629 -0
- package/components/rancherSortableTable/sortable-config.ts +4 -0
- package/components/rancherSortableTable/sorting.js +129 -0
- package/composables/useClickOutside.ts +1 -1
- package/config/product/auth.js +7 -16
- package/config/product/explorer.js +1 -1
- package/config/product/settings.js +8 -17
- package/config/settings.ts +0 -28
- package/edit/management.cattle.io.user.vue +4 -17
- package/edit/networking.k8s.io.ingress/RulePath.vue +1 -1
- package/edit/token.vue +1 -1
- package/list/harvesterhci.io.management.cluster.vue +0 -17
- package/list/management.cattle.io.setting.vue +13 -22
- package/list/management.cattle.io.user.vue +14 -25
- package/list/provisioning.cattle.io.cluster.vue +7 -6
- package/mixins/brand.js +0 -17
- package/package.json +1 -1
- package/pages/auth/login.vue +29 -84
- package/pages/c/_cluster/auth/roles/index.vue +14 -61
- package/pages/c/_cluster/settings/banners.vue +101 -174
- package/pages/c/_cluster/settings/brand.vue +301 -348
- package/pages/c/_cluster/settings/performance.vue +38 -61
- package/pages/home.vue +21 -70
- package/pages/prefs.vue +23 -25
- package/pkg/tsconfig.json +9 -9
- package/pkg/vue.config.js +1 -1
- package/promptRemove/mixin/roleDeletionCheck.js +2 -2
- package/scripts/clean +0 -0
- package/scripts/extension/bundle +0 -0
- package/scripts/extension/helm/scripts/package +0 -0
- package/scripts/extension/helm/scripts/patch +0 -0
- package/scripts/extension/helm/scripts/version +0 -0
- package/scripts/extension/helmpatch +0 -0
- package/scripts/extension/parse-tag-name +0 -0
- package/scripts/extension/publish +0 -0
- package/scripts/publish-shell.sh +60 -86
- package/scripts/serve-pkgs +0 -0
- package/scripts/sync-shell-deps +0 -0
- package/scripts/typegen.sh +28 -44
- package/store/i18n.js +5 -5
- package/store/prefs.js +5 -17
- package/store/type-map.js +1 -2
- package/types/cloud-shell/index.d.ts +11014 -0
- package/types/shell/index.d.ts +1 -1
- package/utils/error.js +0 -4
- package/utils/router.js +3 -3
- package/vue.config.js +6 -1
- package/assets/images/action.svg +0 -6
- package/assets/images/pl/logo.png +0 -0
- /package/components/{ResourceList → rancherResourceList}/Masthead-btn.vue +0 -0
|
@@ -204,16 +204,14 @@ export default {
|
|
|
204
204
|
<template>
|
|
205
205
|
<Loading v-if="$fetchState.pending" />
|
|
206
206
|
<div v-else>
|
|
207
|
-
<!-- 面包屑 -->
|
|
208
|
-
<div class="excram-list">全局设置 / <span style="color: #1890FF;">性能</span></div>
|
|
209
207
|
<h1 class="mb-20">
|
|
210
208
|
{{ t('performance.label') }}
|
|
211
209
|
</h1>
|
|
212
210
|
<div>
|
|
213
|
-
<div class="ui-perf-setting
|
|
214
|
-
<!--
|
|
215
|
-
<div class="
|
|
216
|
-
<h2
|
|
211
|
+
<div class="ui-perf-setting">
|
|
212
|
+
<!-- Inactivity -->
|
|
213
|
+
<div class="mt-20">
|
|
214
|
+
<h2>{{ t('performance.inactivity.title') }}</h2>
|
|
217
215
|
<p>{{ t('performance.inactivity.description') }}</p>
|
|
218
216
|
<Checkbox
|
|
219
217
|
v-model:value="value.inactivity.enabled"
|
|
@@ -240,21 +238,21 @@ export default {
|
|
|
240
238
|
/>
|
|
241
239
|
</div>
|
|
242
240
|
</div>
|
|
243
|
-
<!--
|
|
244
|
-
<div class="
|
|
245
|
-
<h2
|
|
241
|
+
<!-- Websocket Notifications -->
|
|
242
|
+
<div class="mt-40">
|
|
243
|
+
<h2>{{ t('performance.websocketNotification.label') }}</h2>
|
|
246
244
|
<p>{{ t('performance.websocketNotification.description') }}</p>
|
|
247
245
|
<Checkbox
|
|
248
246
|
v-model:value="value.disableWebsocketNotification"
|
|
249
247
|
:mode="mode"
|
|
250
248
|
:label="t('performance.websocketNotification.checkboxLabel')"
|
|
251
|
-
class="mt-10"
|
|
249
|
+
class="mt-10 mb-20"
|
|
252
250
|
:primary="true"
|
|
253
251
|
/>
|
|
254
252
|
</div>
|
|
255
253
|
<!-- Server Side Pagination -->
|
|
256
|
-
<div class="
|
|
257
|
-
<h2
|
|
254
|
+
<div class="mt-20">
|
|
255
|
+
<h2 id="ssp-setting">
|
|
258
256
|
{{ t('performance.serverPagination.label') }}
|
|
259
257
|
</h2>
|
|
260
258
|
<p>{{ t('performance.serverPagination.description') }}</p>
|
|
@@ -288,9 +286,9 @@ export default {
|
|
|
288
286
|
/>
|
|
289
287
|
</Collapse>
|
|
290
288
|
</div>
|
|
291
|
-
<!--
|
|
292
|
-
<div class="
|
|
293
|
-
<h2
|
|
289
|
+
<!-- Incremental Loading -->
|
|
290
|
+
<div class="mt-20">
|
|
291
|
+
<h2>{{ t('performance.incrementalLoad.label') }}</h2>
|
|
294
292
|
<Banner
|
|
295
293
|
color="warning"
|
|
296
294
|
>
|
|
@@ -320,9 +318,9 @@ export default {
|
|
|
320
318
|
/>
|
|
321
319
|
</div>
|
|
322
320
|
</div>
|
|
323
|
-
<!--
|
|
324
|
-
<div class="
|
|
325
|
-
<h2
|
|
321
|
+
<!-- Enable manual refresh list views -->
|
|
322
|
+
<div class="mt-40">
|
|
323
|
+
<h2 v-t="'performance.manualRefresh.label'" />
|
|
326
324
|
<Banner
|
|
327
325
|
color="warning"
|
|
328
326
|
>
|
|
@@ -352,9 +350,9 @@ export default {
|
|
|
352
350
|
/>
|
|
353
351
|
</div>
|
|
354
352
|
</div>
|
|
355
|
-
<!--
|
|
356
|
-
<div class="
|
|
357
|
-
<h2
|
|
353
|
+
<!-- Enable GC of resources from store -->
|
|
354
|
+
<div class="mt-40">
|
|
355
|
+
<h2 v-t="'performance.gc.label'" />
|
|
358
356
|
<Banner
|
|
359
357
|
color="warning"
|
|
360
358
|
>
|
|
@@ -433,9 +431,9 @@ export default {
|
|
|
433
431
|
</div>
|
|
434
432
|
</div>
|
|
435
433
|
</div>
|
|
436
|
-
<!--
|
|
437
|
-
<div class="
|
|
438
|
-
<h2
|
|
434
|
+
<!-- Force NS filter -->
|
|
435
|
+
<div class="mt-40">
|
|
436
|
+
<h2>{{ t('performance.nsFiltering.label') }}</h2>
|
|
439
437
|
<Banner
|
|
440
438
|
color="warning"
|
|
441
439
|
>
|
|
@@ -451,9 +449,9 @@ export default {
|
|
|
451
449
|
@update:value="compatibleWarning('forceNsFilterV2', $event)"
|
|
452
450
|
/>
|
|
453
451
|
</div>
|
|
454
|
-
<!-- Websocket
|
|
455
|
-
<div class="
|
|
456
|
-
<h2
|
|
452
|
+
<!-- Advanced Websocket Worker -->
|
|
453
|
+
<div class="mt-20">
|
|
454
|
+
<h2>{{ t('performance.advancedWorker.label') }}</h2>
|
|
457
455
|
<Banner
|
|
458
456
|
color="warning"
|
|
459
457
|
>
|
|
@@ -479,10 +477,10 @@ export default {
|
|
|
479
477
|
:label="err"
|
|
480
478
|
/>
|
|
481
479
|
</template>
|
|
482
|
-
<div
|
|
480
|
+
<div v-if="mode === 'edit'">
|
|
483
481
|
<AsyncButton
|
|
484
482
|
data-testid="performance__save-btn"
|
|
485
|
-
class="pull-right"
|
|
483
|
+
class="pull-right mt-20"
|
|
486
484
|
mode="apply"
|
|
487
485
|
:disabled="!canSave"
|
|
488
486
|
@click="save"
|
|
@@ -492,17 +490,6 @@ export default {
|
|
|
492
490
|
</template>
|
|
493
491
|
|
|
494
492
|
<style scoped lang='scss'>
|
|
495
|
-
.action-btn {
|
|
496
|
-
padding: 10px 30px;
|
|
497
|
-
position: fixed;
|
|
498
|
-
bottom: 0;
|
|
499
|
-
left: 0;
|
|
500
|
-
width: 100%;
|
|
501
|
-
background: var(--body-bg);
|
|
502
|
-
border-top: 1px solid var(--nav-border);
|
|
503
|
-
}
|
|
504
|
-
|
|
505
|
-
|
|
506
493
|
.overlay {
|
|
507
494
|
width: 100%;
|
|
508
495
|
height: 100%;
|
|
@@ -512,27 +499,17 @@ export default {
|
|
|
512
499
|
background-color: var(--overlay-bg);
|
|
513
500
|
z-index: 1;
|
|
514
501
|
}
|
|
515
|
-
.ui-perf-setting {
|
|
516
|
-
|
|
517
|
-
|
|
518
|
-
|
|
519
|
-
|
|
502
|
+
.ui-perf-setting {
|
|
503
|
+
P {
|
|
504
|
+
line-height: 1.25;
|
|
505
|
+
margin-bottom: 10px;
|
|
506
|
+
}
|
|
520
507
|
|
|
521
|
-
|
|
522
|
-
|
|
508
|
+
.underline {
|
|
509
|
+
text-decoration: underline;
|
|
510
|
+
}
|
|
511
|
+
}
|
|
512
|
+
.input {
|
|
513
|
+
max-width: 25%;
|
|
523
514
|
}
|
|
524
|
-
}
|
|
525
|
-
.input {
|
|
526
|
-
max-width: 25%;
|
|
527
|
-
}
|
|
528
|
-
h2{
|
|
529
|
-
font-size: 14px;
|
|
530
|
-
}
|
|
531
|
-
|
|
532
|
-
.excram-list{
|
|
533
|
-
font-size: 14px;
|
|
534
|
-
line-height: 22px;
|
|
535
|
-
margin-bottom: 20px;
|
|
536
|
-
font-family: 'Microsoft YaHei';
|
|
537
|
-
}
|
|
538
515
|
</style>
|
package/pages/home.vue
CHANGED
|
@@ -64,12 +64,7 @@ export default defineComponent({
|
|
|
64
64
|
query: { [MODE]: _IMPORT }
|
|
65
65
|
};
|
|
66
66
|
|
|
67
|
-
const topLevelPermissions = sessionStorage.getItem('TOPLEVELPERMISSIONS') || ''
|
|
68
|
-
|
|
69
|
-
const topLevelPermissionsVis = topLevelPermissions && topLevelPermissions === 'superadmin'
|
|
70
|
-
|
|
71
67
|
return {
|
|
72
|
-
topLevelPermissionsVis,
|
|
73
68
|
HIDE_HOME_PAGE_CARDS,
|
|
74
69
|
fullVersion: getVersionInfo(this.$store).fullVersion,
|
|
75
70
|
// Page actions don't change on the Home Page
|
|
@@ -509,26 +504,17 @@ export default defineComponent({
|
|
|
509
504
|
</script>
|
|
510
505
|
|
|
511
506
|
<template>
|
|
512
|
-
<!-- 当 managementReady 为 true 时才显示首页内容 -->
|
|
513
507
|
<div
|
|
514
508
|
v-if="managementReady"
|
|
515
509
|
class="home-page"
|
|
516
510
|
>
|
|
517
|
-
|
|
518
|
-
<!-- 页签标题组件,不显示子页面标题和面包屑 -->
|
|
519
511
|
<TabTitle
|
|
520
|
-
v-if="topLevelPermissionsVis"
|
|
521
512
|
:show-child="false"
|
|
522
513
|
:breadcrumb="false"
|
|
523
514
|
>
|
|
524
|
-
|
|
525
|
-
<!-- 页面标题:{vendor} - 首页 -->
|
|
526
515
|
{{ `${vendor} - ${t('landing.homepage')}` }}
|
|
527
516
|
</TabTitle>
|
|
528
|
-
|
|
529
|
-
<!-- 首页欢迎横幅 -->
|
|
530
517
|
<BannerGraphic
|
|
531
|
-
v-if="topLevelPermissionsVis"
|
|
532
518
|
:small="true"
|
|
533
519
|
:title="t('landing.welcomeToRancher', {vendor})"
|
|
534
520
|
:pref="HIDE_HOME_PAGE_CARDS"
|
|
@@ -536,28 +522,18 @@ export default defineComponent({
|
|
|
536
522
|
data-testid="home-banner-graphic"
|
|
537
523
|
/>
|
|
538
524
|
<IndentedPanel class="mt-20 mb-20">
|
|
539
|
-
|
|
540
|
-
|
|
541
|
-
|
|
542
|
-
<!-- 如果用户还没看过“新功能”提示 -->
|
|
543
525
|
<div
|
|
544
|
-
v-if="!readWhatsNewAlready
|
|
526
|
+
v-if="!readWhatsNewAlready"
|
|
545
527
|
class="row"
|
|
546
528
|
>
|
|
547
529
|
<div class="col span-12">
|
|
548
|
-
<!-- 信息提示横幅,颜色类型 info whats-new -->
|
|
549
530
|
<Banner
|
|
550
531
|
data-testid="changelog-banner"
|
|
551
532
|
color="info whats-new"
|
|
552
533
|
>
|
|
553
534
|
<div>
|
|
554
|
-
|
|
555
|
-
<!-- 显示版本更新提示 -->
|
|
556
535
|
{{ t('landing.seeWhatsNew', { version: CURRENT_RANCHER_VERSION }) }}
|
|
557
536
|
</div>
|
|
558
|
-
|
|
559
|
-
<!-- 跳转到更新日志链接 -->
|
|
560
|
-
<!-- 链接文本,支持 HTML 清理 -->
|
|
561
537
|
<a
|
|
562
538
|
class="hand banner-link"
|
|
563
539
|
:href="releaseNotesUrl"
|
|
@@ -571,21 +547,13 @@ export default defineComponent({
|
|
|
571
547
|
</Banner>
|
|
572
548
|
</div>
|
|
573
549
|
</div>
|
|
574
|
-
|
|
575
|
-
<!-- 主面板布局 -->
|
|
576
550
|
<div class="row home-panels">
|
|
577
551
|
<div class="col main-panel">
|
|
578
|
-
<h2 class="mb-20">
|
|
579
|
-
{{ t('landing.clusters.title') }}
|
|
580
|
-
</h2>
|
|
581
|
-
<!-- 如果不需要显示“设置登录页提示” -->
|
|
582
552
|
<div
|
|
583
|
-
v-if="!showSetLoginBanner
|
|
553
|
+
v-if="!showSetLoginBanner"
|
|
584
554
|
class="mb-10 row"
|
|
585
555
|
>
|
|
586
556
|
<div class="col span-12">
|
|
587
|
-
|
|
588
|
-
<!-- 可关闭的提示横幅 -->
|
|
589
557
|
<Banner
|
|
590
558
|
color="set-login-page mt-0"
|
|
591
559
|
data-testid="set-login-page-banner"
|
|
@@ -595,8 +563,6 @@ export default defineComponent({
|
|
|
595
563
|
<div>
|
|
596
564
|
{{ t('landing.landingPrefs.title') }}
|
|
597
565
|
</div>
|
|
598
|
-
|
|
599
|
-
<!-- 用户点击后进入偏好设置 -->
|
|
600
566
|
<a
|
|
601
567
|
class="hand mr-20"
|
|
602
568
|
tabindex="0"
|
|
@@ -608,17 +574,11 @@ export default defineComponent({
|
|
|
608
574
|
</Banner>
|
|
609
575
|
</div>
|
|
610
576
|
</div>
|
|
611
|
-
|
|
612
|
-
<!-- 集群列表面板 -->
|
|
613
577
|
<div class="row panel">
|
|
614
|
-
|
|
615
|
-
<!-- 如果是多集群模式(mcm = multi-cluster management) -->
|
|
616
578
|
<div
|
|
617
579
|
v-if="mcm"
|
|
618
580
|
class="col span-12"
|
|
619
581
|
>
|
|
620
|
-
|
|
621
|
-
<!-- 分页资源表格 -->
|
|
622
582
|
<PaginatedResourceTable
|
|
623
583
|
v-if="provClusterSchema"
|
|
624
584
|
:schema="provClusterSchema"
|
|
@@ -638,17 +598,27 @@ export default defineComponent({
|
|
|
638
598
|
:fetchSecondaryResources="fetchSecondaryResources"
|
|
639
599
|
:fetchPageSecondaryResources="fetchPageSecondaryResources"
|
|
640
600
|
>
|
|
641
|
-
|
|
642
|
-
|
|
601
|
+
<template #header-left>
|
|
602
|
+
<div class="row table-heading">
|
|
603
|
+
<h2 class="mb-0">
|
|
604
|
+
{{ t('landing.clusters.title') }}
|
|
605
|
+
</h2>
|
|
606
|
+
<BadgeState
|
|
607
|
+
v-if="clusterCount"
|
|
608
|
+
:label="clusterCount.toString()"
|
|
609
|
+
color="role-tertiary ml-20 mr-20"
|
|
610
|
+
/>
|
|
611
|
+
</div>
|
|
612
|
+
</template>
|
|
643
613
|
<template
|
|
644
614
|
v-if="canCreateCluster || !!provClusterSchema"
|
|
645
|
-
#header-
|
|
615
|
+
#header-middle
|
|
646
616
|
>
|
|
647
|
-
<div
|
|
617
|
+
<div class="table-heading">
|
|
648
618
|
<router-link
|
|
649
619
|
v-if="!!provClusterSchema"
|
|
650
620
|
:to="manageLocation"
|
|
651
|
-
class="btn btn-sm role-
|
|
621
|
+
class="btn btn-sm role-secondary"
|
|
652
622
|
data-testid="cluster-management-manage-button"
|
|
653
623
|
role="button"
|
|
654
624
|
:aria-label="t('cluster.manageAction')"
|
|
@@ -680,8 +650,6 @@ export default defineComponent({
|
|
|
680
650
|
</router-link>
|
|
681
651
|
</div>
|
|
682
652
|
</template>
|
|
683
|
-
|
|
684
|
-
<!-- 列渲染:集群名称 -->
|
|
685
653
|
<template #col:name="{row}">
|
|
686
654
|
<td class="col-name">
|
|
687
655
|
<div class="list-cluster-name">
|
|
@@ -689,8 +657,6 @@ export default defineComponent({
|
|
|
689
657
|
v-if="row.mgmt"
|
|
690
658
|
class="cluster-name"
|
|
691
659
|
>
|
|
692
|
-
|
|
693
|
-
<!-- 如果集群就绪且无错误,跳转到集群 Explorer 页面 -->
|
|
694
660
|
<router-link
|
|
695
661
|
v-if="row.mgmt.isReady && !row.hasError"
|
|
696
662
|
:to="{ name: 'c-cluster-explorer', params: { cluster: row.mgmt.id }}"
|
|
@@ -699,8 +665,6 @@ export default defineComponent({
|
|
|
699
665
|
>
|
|
700
666
|
{{ row.nameDisplay }}
|
|
701
667
|
</router-link>
|
|
702
|
-
|
|
703
|
-
<!-- 否则只显示名称 -->
|
|
704
668
|
<span v-else>{{ row.nameDisplay }}</span>
|
|
705
669
|
<i
|
|
706
670
|
v-if="row.unavailableMachines"
|
|
@@ -708,8 +672,6 @@ export default defineComponent({
|
|
|
708
672
|
class="conditions-alert-icon icon-alert icon"
|
|
709
673
|
/>
|
|
710
674
|
</p>
|
|
711
|
-
|
|
712
|
-
<!-- 集群描述 -->
|
|
713
675
|
<p
|
|
714
676
|
v-if="row.description"
|
|
715
677
|
class="cluster-description"
|
|
@@ -719,8 +681,6 @@ export default defineComponent({
|
|
|
719
681
|
</div>
|
|
720
682
|
</td>
|
|
721
683
|
</template>
|
|
722
|
-
|
|
723
|
-
<!-- 列渲染:Kubernetes 版本 + 架构 -->
|
|
724
684
|
<template #col:kubernetesVersion="{row}">
|
|
725
685
|
<td class="col-name">
|
|
726
686
|
<span>
|
|
@@ -734,8 +694,6 @@ export default defineComponent({
|
|
|
734
694
|
</div>
|
|
735
695
|
</td>
|
|
736
696
|
</template>
|
|
737
|
-
|
|
738
|
-
<!-- 列渲染:CPU 核数 -->
|
|
739
697
|
<template #col:cpu="{row}">
|
|
740
698
|
<td v-if="row.mgmt && cpuAllocatable(row.mgmt)">
|
|
741
699
|
{{ `${cpuAllocatable(row.mgmt)} ${t('landing.clusters.cores', {count:cpuAllocatable(row.mgmt) })}` }}
|
|
@@ -744,8 +702,6 @@ export default defineComponent({
|
|
|
744
702
|
—
|
|
745
703
|
</td>
|
|
746
704
|
</template>
|
|
747
|
-
|
|
748
|
-
<!-- 列渲染:内存 -->
|
|
749
705
|
<template #col:memory="{row}">
|
|
750
706
|
<td v-if="row.mgmt && memoryAllocatable(row.mgmt) && !memoryAllocatable(row.mgmt).match(/^0 [a-zA-z]/)">
|
|
751
707
|
{{ memoryAllocatable(row.mgmt) }}
|
|
@@ -754,20 +710,16 @@ export default defineComponent({
|
|
|
754
710
|
—
|
|
755
711
|
</td>
|
|
756
712
|
</template>
|
|
757
|
-
|
|
758
|
-
<!-- 列渲染:探索按钮 -->
|
|
759
|
-
<template #cell:explorer="{row}">
|
|
713
|
+
<!-- <template #cell:explorer="{row}">
|
|
760
714
|
<router-link v-if="row && row.isReady" class="btn btn-sm role-primary" :to="{name: 'c-cluster', params: {cluster: row.id}}">
|
|
761
715
|
{{ t('landing.clusters.explore') }}
|
|
762
716
|
</router-link>
|
|
763
717
|
<button v-else :disabled="true" class="btn btn-sm role-primary">
|
|
764
718
|
{{ t('landing.clusters.explore') }}
|
|
765
719
|
</button>
|
|
766
|
-
</template>
|
|
720
|
+
</template> -->
|
|
767
721
|
</PaginatedResourceTable>
|
|
768
722
|
</div>
|
|
769
|
-
|
|
770
|
-
<!-- 单集群模式 -->
|
|
771
723
|
<div
|
|
772
724
|
v-else
|
|
773
725
|
class="col span-12"
|
|
@@ -776,8 +728,7 @@ export default defineComponent({
|
|
|
776
728
|
</div>
|
|
777
729
|
</div>
|
|
778
730
|
</div>
|
|
779
|
-
|
|
780
|
-
<!-- <CommunityLinks class="col span-3 side-panel" /> -->
|
|
731
|
+
<CommunityLinks class="col span-3 side-panel" />
|
|
781
732
|
</div>
|
|
782
733
|
</IndentedPanel>
|
|
783
734
|
</div>
|
|
@@ -825,7 +776,7 @@ export default defineComponent({
|
|
|
825
776
|
height: 39px;
|
|
826
777
|
|
|
827
778
|
& > a {
|
|
828
|
-
margin-
|
|
779
|
+
margin-left: 10px;
|
|
829
780
|
}
|
|
830
781
|
}
|
|
831
782
|
.panel:not(:first-child) {
|
package/pages/prefs.vue
CHANGED
|
@@ -191,13 +191,11 @@ export default {
|
|
|
191
191
|
<!-- Language -->
|
|
192
192
|
<div
|
|
193
193
|
v-if="hasMultipleLocales && !isHarvester"
|
|
194
|
-
class="
|
|
195
|
-
style="border: 1px solid var(--nav-border);"
|
|
194
|
+
class="mt-10 mb-10"
|
|
196
195
|
>
|
|
197
196
|
<h4
|
|
198
197
|
id="prefs-language"
|
|
199
198
|
v-t="'prefs.language'"
|
|
200
|
-
class="pb-20"
|
|
201
199
|
/>
|
|
202
200
|
<div class="row">
|
|
203
201
|
<div class="col span-4">
|
|
@@ -209,35 +207,36 @@ export default {
|
|
|
209
207
|
</div>
|
|
210
208
|
</div>
|
|
211
209
|
<!-- Theme -->
|
|
212
|
-
<div class="
|
|
213
|
-
<h4 v-t="'prefs.theme.label'"
|
|
210
|
+
<div class="mt-10 mb-10">
|
|
211
|
+
<h4 v-t="'prefs.theme.label'" />
|
|
214
212
|
<ButtonGroup
|
|
215
213
|
v-model:value="theme"
|
|
216
214
|
data-testid="prefs__themeOptions"
|
|
217
215
|
:options="themeOptions"
|
|
218
216
|
/>
|
|
219
|
-
|
|
217
|
+
<div class="mt-10">
|
|
220
218
|
<t
|
|
221
219
|
k="prefs.theme.autoDetail"
|
|
222
220
|
:pm="pm"
|
|
223
221
|
:am="am"
|
|
224
222
|
/>
|
|
225
|
-
</div>
|
|
223
|
+
</div>
|
|
226
224
|
</div>
|
|
227
225
|
<!-- Login landing page -->
|
|
228
226
|
<div
|
|
229
227
|
v-if="!isSingleProduct"
|
|
230
|
-
class="
|
|
231
|
-
style="border: 1px solid var(--nav-border);"
|
|
228
|
+
class="mt-10 mb-10"
|
|
232
229
|
>
|
|
233
|
-
<
|
|
230
|
+
<hr role="none">
|
|
231
|
+
<h4 v-t="'prefs.landing.label'" />
|
|
234
232
|
<LandingPagePreference
|
|
235
233
|
data-testid="prefs__landingPagePreference"
|
|
236
234
|
/>
|
|
237
235
|
</div>
|
|
238
236
|
<!-- Display Settings -->
|
|
239
|
-
<div class="
|
|
240
|
-
<
|
|
237
|
+
<div class="mt-10 mb-10">
|
|
238
|
+
<hr role="none">
|
|
239
|
+
<h4 v-t="'prefs.displaySettings.title'" />
|
|
241
240
|
<p class="set-landing-leadin">
|
|
242
241
|
{{ t('prefs.displaySettings.detail', {}, raw=true) }}
|
|
243
242
|
</p>
|
|
@@ -278,10 +277,10 @@ export default {
|
|
|
278
277
|
<!-- Confirmation setting -->
|
|
279
278
|
<div
|
|
280
279
|
v-if="!isSingleProduct"
|
|
281
|
-
class="col adv-features
|
|
282
|
-
style="border: 1px solid var(--nav-border);"
|
|
280
|
+
class="col adv-features mt-10 mb-10"
|
|
283
281
|
>
|
|
284
|
-
<
|
|
282
|
+
<hr role="none">
|
|
283
|
+
<h4 v-t="'prefs.confirmationSetting.title'" />
|
|
285
284
|
<Checkbox
|
|
286
285
|
v-model:value="scalingDownPrompt"
|
|
287
286
|
data-testid="prefs__scalingDownPrompt"
|
|
@@ -290,8 +289,9 @@ export default {
|
|
|
290
289
|
/>
|
|
291
290
|
</div>
|
|
292
291
|
<!-- Advanced Features -->
|
|
293
|
-
<div class="col adv-features
|
|
294
|
-
<
|
|
292
|
+
<div class="col adv-features mt-10 mb-10">
|
|
293
|
+
<hr role="none">
|
|
294
|
+
<h4 v-t="'prefs.advFeatures.title'" />
|
|
295
295
|
<Checkbox
|
|
296
296
|
v-model:value="viewInApi"
|
|
297
297
|
data-testid="prefs__viewInApi"
|
|
@@ -332,8 +332,9 @@ export default {
|
|
|
332
332
|
</template>
|
|
333
333
|
</div>
|
|
334
334
|
<!-- YAML editor key mapping -->
|
|
335
|
-
<div class="col
|
|
336
|
-
<
|
|
335
|
+
<div class="col mt-10 mb-10">
|
|
336
|
+
<hr role="none">
|
|
337
|
+
<h4 v-t="'prefs.keymap.label'" />
|
|
337
338
|
<ButtonGroup
|
|
338
339
|
v-model:value="keymap"
|
|
339
340
|
data-testid="prefs__keymapOptions"
|
|
@@ -343,10 +344,10 @@ export default {
|
|
|
343
344
|
<!-- Helm Charts -->
|
|
344
345
|
<div
|
|
345
346
|
v-if="!isSingleProduct"
|
|
346
|
-
class="col mb-40
|
|
347
|
-
style="border: 1px solid var(--nav-border);"
|
|
347
|
+
class="col mt-10 mb-40"
|
|
348
348
|
>
|
|
349
|
-
<
|
|
349
|
+
<hr role="none">
|
|
350
|
+
<h4 v-t="'prefs.helm.label'" />
|
|
350
351
|
<ButtonGroup
|
|
351
352
|
v-model:value="showPreRelease"
|
|
352
353
|
data-testid="prefs__helmOptions"
|
|
@@ -365,7 +366,4 @@ export default {
|
|
|
365
366
|
max-width: 80vw;
|
|
366
367
|
color: var(--input-label);
|
|
367
368
|
}
|
|
368
|
-
h4{
|
|
369
|
-
font-size: 14px;
|
|
370
|
-
}
|
|
371
369
|
</style>
|
package/pkg/tsconfig.json
CHANGED
|
@@ -27,25 +27,25 @@
|
|
|
27
27
|
],
|
|
28
28
|
"paths": {
|
|
29
29
|
"@shell/core/*": [
|
|
30
|
-
"../../node_modules
|
|
30
|
+
"../../node_modules/dashboard-shell-shell/core/*"
|
|
31
31
|
],
|
|
32
32
|
"@shell/config/*": [
|
|
33
|
-
"../../node_modules
|
|
33
|
+
"../../node_modules/dashboard-shell-shell/config/*"
|
|
34
34
|
],
|
|
35
35
|
"@shell/store/*": [
|
|
36
|
-
"../../node_modules
|
|
36
|
+
"../../node_modules/dashboard-shell-shell/store/*"
|
|
37
37
|
],
|
|
38
38
|
"@shell/plugins/*": [
|
|
39
|
-
"../../node_modules
|
|
39
|
+
"../../node_modules/dashboard-shell-shell/plugins/*"
|
|
40
40
|
],
|
|
41
41
|
"@shell/utils/*": [
|
|
42
|
-
"../../node_modules
|
|
42
|
+
"../../node_modules/dashboard-shell-shell/utils/*"
|
|
43
43
|
],
|
|
44
44
|
"@shell/models/*": [
|
|
45
|
-
"../../node_modules
|
|
45
|
+
"../../node_modules/dashboard-shell-shell/models/*"
|
|
46
46
|
],
|
|
47
47
|
"@shell/mixins/*": [
|
|
48
|
-
"../../node_modules
|
|
48
|
+
"../../node_modules/dashboard-shell-shell/mixins/*"
|
|
49
49
|
],
|
|
50
50
|
"@pkg/*": [
|
|
51
51
|
"./*"
|
|
@@ -56,8 +56,8 @@
|
|
|
56
56
|
"**/*.ts",
|
|
57
57
|
"**/*.tsx",
|
|
58
58
|
"**/*.vue",
|
|
59
|
-
"../../node_modules
|
|
60
|
-
"../../node_modules
|
|
59
|
+
"../../node_modules/dashboard-shell-shell/types/*.d.ts",
|
|
60
|
+
"../../node_modules/dashboard-shell-shell/core/types.ts"
|
|
61
61
|
],
|
|
62
62
|
"exclude": [
|
|
63
63
|
"node_modules"
|
package/pkg/vue.config.js
CHANGED
|
@@ -117,7 +117,7 @@ module.exports = function(dir) {
|
|
|
117
117
|
if (p.use) {
|
|
118
118
|
p.use.forEach((u) => {
|
|
119
119
|
if (u.loader.includes('babel-loader')) {
|
|
120
|
-
p.exclude = /node_modules\/(
|
|
120
|
+
p.exclude = /node_modules\/(?!dashboard-shell-shell\/).*/;
|
|
121
121
|
}
|
|
122
122
|
});
|
|
123
123
|
}
|
|
@@ -92,10 +92,10 @@ export default {
|
|
|
92
92
|
this.info = '';
|
|
93
93
|
this.warning = this.t('rbac.globalRoles.usersBound', { count: uniqueUsersWithBinds.size });
|
|
94
94
|
} else {
|
|
95
|
-
this.info = this.t('rbac.globalRoles.notBound');
|
|
95
|
+
this.info = this.t('rbac.globalRoles.notBound', null, true);
|
|
96
96
|
}
|
|
97
97
|
} else {
|
|
98
|
-
this.info = this.t('rbac.globalRoles.notBound');
|
|
98
|
+
this.info = this.t('rbac.globalRoles.notBound', null, true);
|
|
99
99
|
}
|
|
100
100
|
} catch (e) {
|
|
101
101
|
this.info = this.t('rbac.globalRoles.unableToCheck');
|
package/scripts/clean
CHANGED
|
File without changes
|
package/scripts/extension/bundle
CHANGED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|