dashboard-shell-shell 3.0.5-test.6 → 3.0.5-test.60
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/brand/csp/favicon.png +0 -0
- package/assets/brand/harvester/favicon.png +0 -0
- package/assets/brand/suse/favicon.png +0 -0
- package/assets/icons/demo.css +539 -0
- package/assets/icons/demo.css:Zone.Identifier +0 -0
- package/assets/icons/demo_index.html +1131 -0
- package/assets/icons/demo_index.html:Zone.Identifier +0 -0
- package/assets/icons/iconfont.css +219 -0
- package/assets/icons/iconfont.css:Zone.Identifier +0 -0
- package/assets/icons/iconfont.js +1 -0
- package/assets/icons/iconfont.js:Zone.Identifier +0 -0
- package/assets/icons/iconfont.json +324 -0
- package/assets/icons/iconfont.json:Zone.Identifier +0 -0
- package/assets/icons/iconfont.ttf +0 -0
- package/assets/icons/iconfont.ttf:Zone.Identifier +0 -0
- package/assets/icons/iconfont.woff +0 -0
- package/assets/icons/iconfont.woff2 +0 -0
- package/assets/icons/iconfont.woff2:Zone.Identifier +0 -0
- package/assets/icons/iconfont.woff:Zone.Identifier +0 -0
- package/assets/iconsNew/demo.css +539 -0
- package/assets/iconsNew/demo.css:Zone.Identifier +0 -0
- package/assets/iconsNew/demo_index.html +303 -0
- package/assets/iconsNew/demo_index.html:Zone.Identifier +0 -0
- package/assets/iconsNew/iconfont.css +43 -0
- package/assets/iconsNew/iconfont.css:Zone.Identifier +0 -0
- package/assets/iconsNew/iconfont.js +1 -0
- package/assets/iconsNew/iconfont.js:Zone.Identifier +0 -0
- package/assets/iconsNew/iconfont.json +44 -0
- package/assets/iconsNew/iconfont.json:Zone.Identifier +0 -0
- package/assets/iconsNew/iconfont.ttf +0 -0
- package/assets/iconsNew/iconfont.ttf:Zone.Identifier +0 -0
- package/assets/iconsNew/iconfont.woff +0 -0
- package/assets/iconsNew/iconfont.woff2 +0 -0
- package/assets/iconsNew/iconfont.woff2:Zone.Identifier +0 -0
- package/assets/iconsNew/iconfont.woff:Zone.Identifier +0 -0
- package/assets/images/API.svg +3 -0
- package/assets/images/action.svg +6 -0
- package/assets/images/login/password.svg +20 -0
- package/assets/images/login/user.svg +6 -0
- package/assets/images/login-bg.png +0 -0
- package/assets/images/login-left.png +0 -0
- package/assets/images/login-logo.svg +19 -0
- package/assets/images/logo.png +0 -0
- package/assets/images/pl/dark/logo.png +0 -0
- package/assets/images/pl/half-logo.svg +2 -23
- package/assets/images/pl/harvester.png +0 -0
- package/assets/images/pl/logo.png +0 -0
- package/assets/images/promp-yellow.svg +5 -0
- package/assets/images/user.png +0 -0
- package/assets/styles/all.scss +83 -0
- package/assets/styles/app.scss +5 -0
- package/assets/styles/base/_basic.scss +2 -2
- package/assets/styles/base/_helpers.scss +1 -1
- package/assets/styles/base/_mixins.scss +1 -1
- package/assets/styles/base/_typography.scss +2 -1
- package/assets/styles/base/_variables.scss +14 -7
- package/assets/styles/fonts/_icons.scss +3 -2
- package/assets/styles/global/_button.scss +44 -26
- package/assets/styles/global/_columns.scss +3 -1
- package/assets/styles/global/_form.scss +46 -13
- package/assets/styles/global/_labeled-input.scss +54 -26
- package/assets/styles/global/_layout.scss +8 -3
- package/assets/styles/global/_select.scss +25 -17
- package/assets/styles/global/_table.scss +7 -1
- package/assets/styles/global/_tooltip.scss +60 -8
- package/assets/styles/themes/_dark.scss +3 -0
- package/assets/styles/themes/_light.scss +69 -46
- package/assets/styles/vendor/vue-select.scss +24 -10
- package/assets/translations/en-us.yaml +92 -4
- package/assets/translations/zh-hans.yaml +656 -206
- package/components/ActionDropdown.vue +2 -1
- package/components/ActionMenu.vue +2 -2
- package/components/ActionMenuShell.vue +2 -0
- package/components/AppModal.vue +46 -5
- package/components/BrandImage.vue +1 -0
- package/components/ButtonDropdown.vue +28 -4
- package/components/ButtonMultiAction.vue +1 -0
- package/components/ClusterIconMenu.vue +2 -2
- package/components/CodeMirror.vue +26 -10
- package/components/ConsumptionGauge.vue +24 -5
- package/components/ContainerResourceLimit.vue +2 -2
- package/components/CopyToClipboard.vue +15 -0
- package/components/CruResource.vue +12 -10
- package/components/CruResourceFooter.vue +2 -2
- package/components/DashboardOptions.vue +29 -17
- package/components/DotState.vue +84 -0
- package/components/Drawer/Chrome.vue +2 -2
- package/components/Drawer/ResourceDetailDrawer/ConfigTab.vue +30 -27
- package/components/Drawer/ResourceDetailDrawer/YamlTab.vue +1 -1
- package/components/Drawer/ResourceDetailDrawer/index.vue +5 -4
- package/components/ExplorerMembers.vue +28 -4
- package/components/ExplorerProjectsNamespaces.vue +19 -5
- package/components/GlobalRoleBindings.vue +23 -4
- package/components/GrafanaDashboard.vue +4 -4
- package/components/GrowlManager.vue +3 -1
- package/components/HardwareResourceGauge.vue +39 -3
- package/components/IndentedPanel.vue +4 -10
- package/components/InfoBox.vue +3 -3
- package/components/InputOrDisplay.vue +28 -2
- package/components/LabelValue.vue +20 -1
- package/components/ModalWithCard.vue +12 -3
- package/components/PodSecurityAdmission.vue +2 -2
- package/components/PromptModal.vue +1 -1
- package/components/PromptRemove.vue +53 -12
- package/components/RelatedResources.vue +3 -0
- package/components/Resource/Detail/Metadata/IdentifyingInformation/index.vue +1 -3
- package/components/Resource/Detail/Metadata/KeyValue.vue +8 -4
- package/components/Resource/Detail/Metadata/index.vue +3 -1
- package/components/Resource/Detail/TitleBar/Title.vue +4 -3
- package/components/Resource/Detail/TitleBar/Top.vue +2 -0
- package/components/Resource/Detail/TitleBar/composables.ts +16 -1
- package/components/Resource/Detail/TitleBar/index.vue +125 -27
- package/components/ResourceDetail/Masthead/index.vue +1 -1
- package/components/ResourceDetail/Masthead/latest.vue +1 -1
- package/components/ResourceDetail/Masthead/legacy.vue +183 -39
- package/components/ResourceDetail/legacy.vue +47 -29
- package/components/ResourceList/Masthead.vue +222 -54
- package/components/ResourceList/ResourceLoadingIndicator.vue +5 -2
- package/components/ResourceTable.vue +40 -2
- package/components/SideNav.vue +74 -20
- package/components/SingleClusterInfo.vue +2 -1
- package/components/SortableTable/THead.vue +79 -4
- package/components/SortableTable/index.vue +1053 -464
- package/components/SortableTable/paging.js +26 -16
- package/components/SortableTable/selection.js +2 -2
- package/components/Tabbed/Tab.vue +3 -3
- package/components/Tabbed/index.vue +53 -30
- package/components/YamlEditor.vue +0 -1
- package/components/auth/Principal.vue +51 -19
- package/components/auth/RoleDetailEdit.vue +69 -14
- package/components/auth/SelectPrincipal.vue +1 -0
- package/components/breadcrumb/index.vue +119 -0
- package/components/form/ArrayList.vue +177 -152
- package/components/form/ArrayListGrouped.vue +13 -3
- package/components/form/ArrayListSelect.vue +1 -1
- package/components/form/BannerSettings.vue +64 -59
- package/components/form/ChangePassword.vue +5 -5
- package/components/form/ClusterAppearance.vue +4 -3
- package/components/form/ColorInput.vue +32 -8
- package/components/form/Command.vue +4 -5
- package/components/form/Conditions.vue +15 -1
- package/components/form/Footer.vue +12 -8
- package/components/form/HealthCheck.vue +0 -2
- package/components/form/HookOption.vue +87 -58
- package/components/form/InputWithSelect.vue +8 -4
- package/components/form/KeyValue.vue +66 -8
- package/components/form/LabeledSelect.vue +216 -242
- package/components/form/Labels.vue +4 -4
- package/components/form/MatchExpressions.vue +28 -11
- package/components/form/Members/ClusterMembershipEditor.vue +1 -1
- package/components/form/Members/ClusterPermissionsEditor.vue +61 -43
- package/components/form/Members/MembershipEditor.vue +4 -4
- package/components/form/Members/ProjectMembershipEditor.vue +1 -1
- package/components/form/NameNsDescription.vue +76 -21
- package/components/form/Networking.vue +6 -9
- package/components/form/NodeAffinity.vue +29 -28
- package/components/form/Password.vue +16 -7
- package/components/form/PodAffinity.vue +24 -25
- package/components/form/Probe.vue +15 -11
- package/components/form/ProjectMemberEditor.vue +66 -48
- package/components/form/ResourceQuota/Namespace.vue +4 -4
- package/components/form/ResourceQuota/NamespaceRow.vue +26 -23
- package/components/form/ResourceQuota/Project.vue +4 -4
- package/components/form/ResourceQuota/ProjectRow.vue +38 -35
- package/components/form/ResourceSelector.vue +1 -1
- package/components/form/SecretSelector.vue +24 -23
- package/components/form/Security.vue +1 -3
- package/components/form/Select.vue +12 -3
- package/components/form/ServiceNameSelect.vue +2 -5
- package/components/form/ServicePorts.vue +149 -75
- package/components/form/SimpleSecretSelector.vue +29 -9
- package/components/form/Taints.vue +2 -1
- package/components/form/Tolerations.vue +13 -9
- package/components/form/UnitInput.vue +8 -3
- package/components/form/ValueFromResource.vue +110 -96
- package/components/form/WorkloadPorts.vue +143 -123
- package/components/formatter/BadgeStateFormatter.vue +8 -5
- package/components/formatter/LiveDate.vue +3 -3
- package/components/formatter/WorkloadHealthScale.vue +4 -3
- package/components/nav/Favorite.vue +5 -1
- package/components/nav/Group.vue +139 -99
- package/components/nav/Header.vue +127 -150
- package/components/nav/HeaderPageActionMenu.vue +1 -0
- package/components/nav/NamespaceFilter.vue +34 -36
- package/components/nav/TopLevelMenu.vue +62 -25
- package/components/nav/Type.vue +73 -43
- package/composables/useClickOutside.ts +1 -1
- package/config/menuRouteMap.js +10 -0
- package/config/private-label.js +15 -11
- package/config/product/auth.js +17 -7
- package/config/product/explorer.js +32 -10
- package/config/product/manager.js +28 -17
- package/config/product/settings.js +19 -9
- package/config/product/uiplugins.js +13 -10
- package/config/router/navigation-guards/index.js +61 -3
- package/config/settings.ts +28 -0
- package/config/table-headers.js +3 -2
- package/detail/node.vue +28 -23
- package/dialog/AddCustomBadgeDialog.vue +17 -9
- package/dialog/ForceMachineRemoveDialog.vue +2 -2
- package/dialog/RollbackWorkloadDialog.vue +1 -1
- package/dialog/ScalePoolDownDialog.vue +2 -2
- package/edit/autoscaling.horizontalpodautoscaler/external-metric.vue +1 -1
- package/edit/autoscaling.horizontalpodautoscaler/hpa-scaling-rule.vue +9 -6
- package/edit/autoscaling.horizontalpodautoscaler/index.vue +3 -1
- package/edit/autoscaling.horizontalpodautoscaler/metric-identifier.vue +2 -2
- package/edit/autoscaling.horizontalpodautoscaler/metric-object-reference.vue +7 -5
- package/edit/autoscaling.horizontalpodautoscaler/metric-target.vue +5 -3
- package/edit/autoscaling.horizontalpodautoscaler/metrics-row.vue +2 -2
- package/edit/autoscaling.horizontalpodautoscaler/object-metric.vue +2 -2
- package/edit/autoscaling.horizontalpodautoscaler/pod-metric.vue +1 -1
- package/edit/autoscaling.horizontalpodautoscaler/resource-metric.vue +2 -2
- package/edit/configmap.vue +4 -0
- package/edit/logging-flow/index.vue +1 -2
- package/edit/logging.banzaicloud.io.output/providers/awsElasticsearch.vue +3 -3
- package/edit/logging.banzaicloud.io.output/providers/azurestorage.vue +19 -19
- package/edit/logging.banzaicloud.io.output/providers/cloudwatch.vue +23 -23
- package/edit/logging.banzaicloud.io.output/providers/datadog.vue +19 -19
- package/edit/logging.banzaicloud.io.output/providers/elasticsearch.vue +14 -14
- package/edit/logging.banzaicloud.io.output/providers/forward.vue +12 -12
- package/edit/logging.banzaicloud.io.output/providers/gcs.vue +23 -23
- package/edit/logging.banzaicloud.io.output/providers/gelf.vue +6 -6
- package/edit/logging.banzaicloud.io.output/providers/kafka.vue +10 -10
- package/edit/logging.banzaicloud.io.output/providers/kinesisStream.vue +8 -8
- package/edit/logging.banzaicloud.io.output/providers/logdna.vue +17 -17
- package/edit/logging.banzaicloud.io.output/providers/logz.vue +7 -7
- package/edit/logging.banzaicloud.io.output/providers/loki.vue +12 -12
- package/edit/logging.banzaicloud.io.output/providers/newrelic.vue +3 -3
- package/edit/logging.banzaicloud.io.output/providers/opensearch.vue +14 -14
- package/edit/logging.banzaicloud.io.output/providers/redis.vue +6 -6
- package/edit/logging.banzaicloud.io.output/providers/s3.vue +23 -23
- package/edit/logging.banzaicloud.io.output/providers/splunkHec.vue +13 -13
- package/edit/logging.banzaicloud.io.output/providers/sumologic.vue +2 -2
- package/edit/logging.banzaicloud.io.output/providers/syslog.vue +54 -54
- package/edit/management.cattle.io.user.vue +17 -4
- package/edit/monitoring.coreos.com.alertmanagerconfig/auth.vue +19 -19
- package/edit/monitoring.coreos.com.alertmanagerconfig/receiverConfig.vue +31 -31
- package/edit/monitoring.coreos.com.alertmanagerconfig/routeConfig.vue +36 -12
- package/edit/monitoring.coreos.com.alertmanagerconfig/types/email.vue +6 -6
- package/edit/monitoring.coreos.com.alertmanagerconfig/types/opsgenie.vue +10 -10
- package/edit/monitoring.coreos.com.alertmanagerconfig/types/pagerduty.vue +4 -4
- package/edit/monitoring.coreos.com.alertmanagerconfig/types/slack.vue +4 -4
- package/edit/monitoring.coreos.com.alertmanagerconfig/types/webhook.vue +1 -1
- package/edit/monitoring.coreos.com.receiver/types/email.vue +6 -6
- package/edit/monitoring.coreos.com.receiver/types/opsgenie.vue +10 -10
- package/edit/monitoring.coreos.com.receiver/types/pagerduty.vue +5 -5
- package/edit/monitoring.coreos.com.receiver/types/slack.vue +4 -4
- package/edit/namespace.vue +1 -2
- package/edit/networking.k8s.io.ingress/Certificate.vue +14 -5
- package/edit/networking.k8s.io.ingress/DefaultBackend.vue +2 -2
- package/edit/networking.k8s.io.ingress/Rule.vue +5 -11
- package/edit/networking.k8s.io.ingress/RulePath.vue +105 -96
- package/edit/networking.k8s.io.networkpolicy/PolicyRule.vue +3 -3
- package/edit/networking.k8s.io.networkpolicy/PolicyRulePort.vue +4 -2
- package/edit/networking.k8s.io.networkpolicy/PolicyRuleTarget.vue +12 -11
- package/edit/networking.k8s.io.networkpolicy/index.vue +1 -1
- package/edit/persistentvolume/index.vue +3 -1
- package/edit/persistentvolumeclaim.vue +2 -0
- package/edit/provisioning.cattle.io.cluster/tabs/Basics.vue +1 -1
- package/edit/secret/index.vue +2 -2
- package/edit/service.vue +4 -1
- package/edit/storage.k8s.io.storageclass/index.vue +10 -8
- package/edit/storage.k8s.io.storageclass/provisioners/kubernetes.io/aws-ebs.vue +34 -27
- package/edit/storage.k8s.io.storageclass/provisioners/kubernetes.io/gce-pd.vue +15 -13
- package/edit/storage.k8s.io.storageclass/provisioners/kubernetes.io/vsphere-volume.vue +41 -39
- package/edit/token.vue +31 -12
- package/edit/workload/Job.vue +31 -34
- package/edit/workload/Upgrading.vue +5 -5
- package/edit/workload/index.vue +22 -18
- package/edit/workload/storage/Mount.vue +1 -0
- package/edit/workload/storage/awsElasticBlockStore.vue +9 -7
- package/edit/workload/storage/azureDisk.vue +14 -10
- package/edit/workload/storage/azureFile.vue +9 -7
- package/edit/workload/storage/csi/index.vue +6 -9
- package/edit/workload/storage/emptyDir.vue +7 -5
- package/edit/workload/storage/gcePersistentDisk.vue +9 -7
- package/edit/workload/storage/hostPath.vue +7 -5
- package/edit/workload/storage/nfs.vue +8 -6
- package/edit/workload/storage/persistentVolumeClaim/index.vue +12 -10
- package/edit/workload/storage/persistentVolumeClaim/persistentvolumeclaim.vue +20 -15
- package/edit/workload/storage/secret.vue +9 -6
- package/edit/workload/storage/vsphereVolume.vue +11 -7
- package/initialize/app-extended.js +7 -1
- package/list/management.cattle.io.podsecurityadmissionconfigurationtemplate.vue +8 -6
- package/list/management.cattle.io.setting.vue +22 -13
- package/list/management.cattle.io.user.vue +7 -3
- package/list/namespace.vue +3 -0
- package/list/provisioning.cattle.io.cluster.vue +6 -7
- package/mixins/brand.js +17 -0
- package/mixins/create-edit-view/impl.js +10 -0
- package/models/provisioning.cattle.io.cluster.js +19 -18
- package/models/workload.js +2 -2
- package/package.json +1 -1
- package/pages/account/index.vue +93 -58
- package/pages/account/pri.vue +229 -0
- package/pages/auth/login.vue +220 -52
- package/pages/auth/setup.vue +175 -33
- package/pages/c/_cluster/_product/namespaces.vue +5 -5
- package/pages/c/_cluster/auth/roles/index.vue +83 -8
- package/pages/c/_cluster/explorer/ConfigBadge.vue +1 -1
- package/pages/c/_cluster/explorer/index.vue +2 -1
- package/pages/c/_cluster/explorer/tools/index.vue +6 -6
- package/pages/c/_cluster/monitoring/monitor/index.vue +2 -2
- package/pages/c/_cluster/settings/banners.vue +174 -102
- package/pages/c/_cluster/settings/brand.vue +350 -302
- package/pages/c/_cluster/settings/performance.vue +61 -38
- package/pages/home.vue +119 -37
- package/pages/prefs.vue +27 -25
- package/pkg/tsconfig.json +9 -9
- package/pkg/vue.config.js +1 -1
- package/plugins/dashboard-store/actions.js +1 -1
- package/plugins/dashboard-store/resource-class.js +28 -27
- package/promptRemove/mixin/roleDeletionCheck.js +2 -2
- package/public/index.html +4 -4
- package/rancher-components/BadgeState/BadgeState.vue +38 -55
- package/rancher-components/Banner/Banner.vue +25 -9
- package/rancher-components/Card/Card.vue +7 -8
- package/rancher-components/Form/Checkbox/Checkbox.vue +4 -0
- package/rancher-components/Form/LabeledInput/LabeledInput.vue +42 -3
- package/rancher-components/Form/Radio/RadioButton.vue +35 -11
- package/rancher-components/Form/Radio/RadioGroup.vue +22 -6
- package/rancher-components/Form/TextArea/TextAreaAutoGrow.vue +3 -3
- package/rancher-components/Form/ToggleSwitch/ToggleSwitch.vue +1 -0
- package/rancher-components/LabeledTooltip/LabeledTooltip.vue +41 -4
- package/rancher-components/RcDropdown/RcDropdown.vue +35 -7
- package/rancher-components/RcDropdown/RcDropdownItem.vue +2 -2
- package/rancher-components/RcDropdown/RcDropdownMenu.vue +12 -6
- package/rancher-components/RcDropdown/types.ts +1 -0
- package/rancher-components/StringList/StringList.vue +1 -1
- package/scripts/build-pkg.sh +18 -23
- package/scripts/publish-shell.sh +1 -1
- package/static/favicon.ico +0 -0
- package/static/favicon.png +0 -0
- package/static/loading-indicator.html +3 -3
- package/store/i18n.js +6 -2
- package/store/modal.ts +3 -3
- package/store/prefs.js +11 -4
- package/store/type-map.js +30 -2
- package/types/shell/index.d.ts +86 -97
- package/utils/error.js +109 -8
- package/utils/errorTranslate.json +1740 -0
- package/utils/errorTranslateNew.json +39 -0
- package/utils/roleFiltering.js +33 -0
- package/utils/router.js +21 -0
- package/utils/select.js +26 -3
- package/utils/string.js +8 -5
- package/utils/title.ts +1 -1
- package/vue.config.js +1 -1
|
@@ -198,14 +198,16 @@ export default {
|
|
|
198
198
|
<template>
|
|
199
199
|
<Loading v-if="$fetchState.pending" />
|
|
200
200
|
<div v-else>
|
|
201
|
+
<!-- 面包屑 -->
|
|
202
|
+
<div class="excram-list">全局设置 / <span style="color: #1890FF;">性能</span></div>
|
|
201
203
|
<h1 class="mb-20">
|
|
202
204
|
{{ t('performance.label') }}
|
|
203
205
|
</h1>
|
|
204
206
|
<div>
|
|
205
|
-
<div class="ui-perf-setting">
|
|
206
|
-
<!--
|
|
207
|
-
<div class="
|
|
208
|
-
<h2>{{ t('performance.inactivity.title') }}</h2>
|
|
207
|
+
<div class="ui-perf-setting pb-40">
|
|
208
|
+
<!-- 闲置状态 -->
|
|
209
|
+
<div class="mb-20 p-20" style="border: 1px solid var(--nav-border);">
|
|
210
|
+
<h2 class="mb-20">{{ t('performance.inactivity.title') }}</h2>
|
|
209
211
|
<p>{{ t('performance.inactivity.description') }}</p>
|
|
210
212
|
<Checkbox
|
|
211
213
|
v-model:value="value.inactivity.enabled"
|
|
@@ -232,21 +234,21 @@ export default {
|
|
|
232
234
|
/>
|
|
233
235
|
</div>
|
|
234
236
|
</div>
|
|
235
|
-
<!--
|
|
236
|
-
<div class="
|
|
237
|
-
<h2>{{ t('performance.websocketNotification.label') }}</h2>
|
|
237
|
+
<!-- WebSocket 通知 -->
|
|
238
|
+
<div class="mb-40 p-20" style="border: 1px solid var(--nav-border);">
|
|
239
|
+
<h2 class="mb-20">{{ t('performance.websocketNotification.label') }}</h2>
|
|
238
240
|
<p>{{ t('performance.websocketNotification.description') }}</p>
|
|
239
241
|
<Checkbox
|
|
240
242
|
v-model:value="value.disableWebsocketNotification"
|
|
241
243
|
:mode="mode"
|
|
242
244
|
:label="t('performance.websocketNotification.checkboxLabel')"
|
|
243
|
-
class="mt-10
|
|
245
|
+
class="mt-10"
|
|
244
246
|
:primary="true"
|
|
245
247
|
/>
|
|
246
248
|
</div>
|
|
247
249
|
<!-- Server Side Pagination -->
|
|
248
|
-
<div class="
|
|
249
|
-
<h2 id="ssp-setting">
|
|
250
|
+
<div class="mb-20 p-20" style="border: 1px solid var(--nav-border);">
|
|
251
|
+
<h2 class="mb-20" id="ssp-setting">
|
|
250
252
|
{{ t('performance.serverPagination.label') }}
|
|
251
253
|
</h2>
|
|
252
254
|
<p>{{ t('performance.serverPagination.description') }}</p>
|
|
@@ -267,9 +269,9 @@ export default {
|
|
|
267
269
|
/>
|
|
268
270
|
</Collapse>
|
|
269
271
|
</div>
|
|
270
|
-
<!--
|
|
271
|
-
<div class="
|
|
272
|
-
<h2>{{ t('performance.incrementalLoad.label') }}</h2>
|
|
272
|
+
<!-- 增量加载 -->
|
|
273
|
+
<div class="mb-20 p-20" style="border: 1px solid var(--nav-border);">
|
|
274
|
+
<h2 class="mb-20">{{ t('performance.incrementalLoad.label') }}</h2>
|
|
273
275
|
<Banner
|
|
274
276
|
color="warning"
|
|
275
277
|
>
|
|
@@ -299,9 +301,9 @@ export default {
|
|
|
299
301
|
/>
|
|
300
302
|
</div>
|
|
301
303
|
</div>
|
|
302
|
-
<!--
|
|
303
|
-
<div class="
|
|
304
|
-
<h2 v-t="'performance.manualRefresh.label'" />
|
|
304
|
+
<!-- 手动刷新 -->
|
|
305
|
+
<div class="mb-20 p-20" style="border: 1px solid var(--nav-border);">
|
|
306
|
+
<h2 class="mb-20" v-t="'performance.manualRefresh.label'" />
|
|
305
307
|
<Banner
|
|
306
308
|
color="warning"
|
|
307
309
|
>
|
|
@@ -331,9 +333,9 @@ export default {
|
|
|
331
333
|
/>
|
|
332
334
|
</div>
|
|
333
335
|
</div>
|
|
334
|
-
<!--
|
|
335
|
-
<div class="
|
|
336
|
-
<h2 v-t="'performance.gc.label'" />
|
|
336
|
+
<!-- 资源垃圾回收 -->
|
|
337
|
+
<div class="mb-20 p-20" style="border: 1px solid var(--nav-border);">
|
|
338
|
+
<h2 class="mb-20" v-t="'performance.gc.label'" />
|
|
337
339
|
<Banner
|
|
338
340
|
color="warning"
|
|
339
341
|
>
|
|
@@ -412,9 +414,9 @@ export default {
|
|
|
412
414
|
</div>
|
|
413
415
|
</div>
|
|
414
416
|
</div>
|
|
415
|
-
<!--
|
|
416
|
-
<div class="
|
|
417
|
-
<h2>{{ t('performance.nsFiltering.label') }}</h2>
|
|
417
|
+
<!-- 要求资源组/项目过滤 -->
|
|
418
|
+
<div class="mb-20 p-20" style="border: 1px solid var(--nav-border);">
|
|
419
|
+
<h2 class="mb-20">{{ t('performance.nsFiltering.label') }}</h2>
|
|
418
420
|
<Banner
|
|
419
421
|
color="warning"
|
|
420
422
|
>
|
|
@@ -430,9 +432,9 @@ export default {
|
|
|
430
432
|
@update:value="compatibleWarning('forceNsFilterV2', $event)"
|
|
431
433
|
/>
|
|
432
434
|
</div>
|
|
433
|
-
<!--
|
|
434
|
-
<div class="
|
|
435
|
-
<h2>{{ t('performance.advancedWorker.label') }}</h2>
|
|
435
|
+
<!-- Websocket Web Worker -->
|
|
436
|
+
<div class="mb-20 p-20" style="border: 1px solid var(--nav-border);">
|
|
437
|
+
<h2 class="mb-20">{{ t('performance.advancedWorker.label') }}</h2>
|
|
436
438
|
<Banner
|
|
437
439
|
color="warning"
|
|
438
440
|
>
|
|
@@ -458,10 +460,10 @@ export default {
|
|
|
458
460
|
:label="err"
|
|
459
461
|
/>
|
|
460
462
|
</template>
|
|
461
|
-
<div v-if="mode === 'edit'">
|
|
463
|
+
<div class="action-btn" v-if="mode === 'edit'">
|
|
462
464
|
<AsyncButton
|
|
463
465
|
data-testid="performance__save-btn"
|
|
464
|
-
class="pull-right
|
|
466
|
+
class="pull-right"
|
|
465
467
|
mode="apply"
|
|
466
468
|
:disabled="!canSave"
|
|
467
469
|
@click="save"
|
|
@@ -471,6 +473,17 @@ export default {
|
|
|
471
473
|
</template>
|
|
472
474
|
|
|
473
475
|
<style scoped lang='scss'>
|
|
476
|
+
.action-btn {
|
|
477
|
+
padding: 10px 30px;
|
|
478
|
+
position: fixed;
|
|
479
|
+
bottom: 0;
|
|
480
|
+
left: 0;
|
|
481
|
+
width: 100%;
|
|
482
|
+
background: var(--body-bg);
|
|
483
|
+
border-top: 1px solid var(--nav-border);
|
|
484
|
+
}
|
|
485
|
+
|
|
486
|
+
|
|
474
487
|
.overlay {
|
|
475
488
|
width: 100%;
|
|
476
489
|
height: 100%;
|
|
@@ -480,17 +493,27 @@ export default {
|
|
|
480
493
|
background-color: var(--overlay-bg);
|
|
481
494
|
z-index: 1;
|
|
482
495
|
}
|
|
483
|
-
|
|
484
|
-
|
|
485
|
-
|
|
486
|
-
|
|
487
|
-
}
|
|
488
|
-
|
|
489
|
-
.underline {
|
|
490
|
-
text-decoration: underline;
|
|
491
|
-
}
|
|
496
|
+
.ui-perf-setting {
|
|
497
|
+
P {
|
|
498
|
+
line-height: 1.25;
|
|
499
|
+
margin-bottom: 10px;
|
|
492
500
|
}
|
|
493
|
-
|
|
494
|
-
|
|
501
|
+
|
|
502
|
+
.underline {
|
|
503
|
+
text-decoration: underline;
|
|
495
504
|
}
|
|
505
|
+
}
|
|
506
|
+
.input {
|
|
507
|
+
max-width: 25%;
|
|
508
|
+
}
|
|
509
|
+
h2{
|
|
510
|
+
font-size: 14px;
|
|
511
|
+
}
|
|
512
|
+
|
|
513
|
+
.excram-list{
|
|
514
|
+
font-size: 14px;
|
|
515
|
+
line-height: 22px;
|
|
516
|
+
margin-bottom: 20px;
|
|
517
|
+
font-family: 'Microsoft YaHei';
|
|
518
|
+
}
|
|
496
519
|
</style>
|
package/pages/home.vue
CHANGED
|
@@ -62,7 +62,12 @@ export default defineComponent({
|
|
|
62
62
|
query: { [MODE]: _IMPORT }
|
|
63
63
|
};
|
|
64
64
|
|
|
65
|
+
const topLevelPermissions = sessionStorage.getItem('TOPLEVELPERMISSIONS') || ''
|
|
66
|
+
|
|
67
|
+
const topLevelPermissionsVis = topLevelPermissions && topLevelPermissions === 'superadmin'
|
|
68
|
+
|
|
65
69
|
return {
|
|
70
|
+
topLevelPermissionsVis,
|
|
66
71
|
HIDE_HOME_PAGE_CARDS,
|
|
67
72
|
// Page actions don't change on the Home Page
|
|
68
73
|
pageActions: [
|
|
@@ -473,31 +478,43 @@ export default defineComponent({
|
|
|
473
478
|
</script>
|
|
474
479
|
|
|
475
480
|
<template>
|
|
481
|
+
<!-- 当 managementReady 为 true 时才显示首页内容 -->
|
|
476
482
|
<div
|
|
477
483
|
v-if="managementReady"
|
|
478
484
|
class="home-page"
|
|
479
485
|
>
|
|
480
|
-
|
|
481
|
-
|
|
482
|
-
|
|
483
|
-
|
|
484
|
-
|
|
485
|
-
|
|
486
|
-
<BannerGraphic
|
|
486
|
+
|
|
487
|
+
<!-- 页签标题组件,不显示子页面标题和面包屑 -->
|
|
488
|
+
|
|
489
|
+
<!-- 首页欢迎横幅 -->
|
|
490
|
+
<!-- <BannerGraphic
|
|
491
|
+
v-if="topLevelPermissionsVis"
|
|
487
492
|
:small="true"
|
|
488
493
|
:title="t('landing.welcomeToRancher', {vendor})"
|
|
489
494
|
:pref="HIDE_HOME_PAGE_CARDS"
|
|
490
495
|
pref-key="welcomeBanner"
|
|
491
496
|
data-testid="home-banner-graphic"
|
|
492
|
-
/>
|
|
497
|
+
/> -->
|
|
493
498
|
<IndentedPanel class="mt-20 mb-20">
|
|
499
|
+
|
|
500
|
+
<!-- 主面板布局 -->
|
|
494
501
|
<div class="row home-panels">
|
|
495
502
|
<div class="col main-panel">
|
|
503
|
+
<h2 class="mb-20">
|
|
504
|
+
<!-- {{ t('landing.clusters.title') }} -->
|
|
505
|
+
首页
|
|
506
|
+
</h2>
|
|
507
|
+
|
|
508
|
+
<!-- 集群列表面板 -->
|
|
496
509
|
<div class="row panel">
|
|
510
|
+
|
|
511
|
+
<!-- 如果是多集群模式(mcm = multi-cluster management) -->
|
|
497
512
|
<div
|
|
498
513
|
v-if="mcm"
|
|
499
514
|
class="col span-12"
|
|
500
515
|
>
|
|
516
|
+
|
|
517
|
+
<!-- 分页资源表格 -->
|
|
501
518
|
<PaginatedResourceTable
|
|
502
519
|
v-if="provClusterSchema"
|
|
503
520
|
:schema="provClusterSchema"
|
|
@@ -517,27 +534,17 @@ export default defineComponent({
|
|
|
517
534
|
:fetchSecondaryResources="fetchSecondaryResources"
|
|
518
535
|
:fetchPageSecondaryResources="fetchPageSecondaryResources"
|
|
519
536
|
>
|
|
520
|
-
|
|
521
|
-
|
|
522
|
-
<h2 class="mb-0">
|
|
523
|
-
{{ t('landing.clusters.title') }}
|
|
524
|
-
</h2>
|
|
525
|
-
<BadgeState
|
|
526
|
-
v-if="clusterCount"
|
|
527
|
-
:label="clusterCount.toString()"
|
|
528
|
-
color="role-tertiary ml-20 mr-20"
|
|
529
|
-
/>
|
|
530
|
-
</div>
|
|
531
|
-
</template>
|
|
537
|
+
|
|
538
|
+
<!-- 表头中间:管理、导入、创建按钮 -->
|
|
532
539
|
<template
|
|
533
540
|
v-if="canCreateCluster || !!provClusterSchema"
|
|
534
|
-
#header-
|
|
541
|
+
#header-right
|
|
535
542
|
>
|
|
536
543
|
<div class="table-heading">
|
|
537
544
|
<router-link
|
|
538
545
|
v-if="!!provClusterSchema"
|
|
539
546
|
:to="manageLocation"
|
|
540
|
-
class="btn btn-sm role-
|
|
547
|
+
class="btn btn-sm role-primary"
|
|
541
548
|
data-testid="cluster-management-manage-button"
|
|
542
549
|
role="button"
|
|
543
550
|
:aria-label="t('cluster.manageAction')"
|
|
@@ -569,6 +576,8 @@ export default defineComponent({
|
|
|
569
576
|
</router-link>
|
|
570
577
|
</div>
|
|
571
578
|
</template>
|
|
579
|
+
|
|
580
|
+
<!-- 列渲染:集群名称 -->
|
|
572
581
|
<template #col:name="{row}">
|
|
573
582
|
<td class="col-name">
|
|
574
583
|
<div class="list-cluster-name">
|
|
@@ -576,6 +585,8 @@ export default defineComponent({
|
|
|
576
585
|
v-if="row.mgmt"
|
|
577
586
|
class="cluster-name"
|
|
578
587
|
>
|
|
588
|
+
|
|
589
|
+
<!-- 如果集群就绪且无错误,跳转到集群 Explorer 页面 -->
|
|
579
590
|
<router-link
|
|
580
591
|
v-if="row.mgmt.isReady && !row.hasError"
|
|
581
592
|
:to="{ name: 'c-cluster-explorer', params: { cluster: row.mgmt.id }}"
|
|
@@ -584,18 +595,17 @@ export default defineComponent({
|
|
|
584
595
|
>
|
|
585
596
|
{{ row.nameDisplay }}
|
|
586
597
|
</router-link>
|
|
598
|
+
|
|
599
|
+
<!-- 否则只显示名称 -->
|
|
587
600
|
<span v-else>{{ row.nameDisplay }}</span>
|
|
588
601
|
<i
|
|
589
602
|
v-if="row.unavailableMachines"
|
|
590
603
|
v-clean-tooltip="row.unavailableMachines"
|
|
591
604
|
class="conditions-alert-icon icon-alert icon"
|
|
592
605
|
/>
|
|
593
|
-
<i
|
|
594
|
-
v-if="row.isRke1"
|
|
595
|
-
v-clean-tooltip="t('cluster.rke1Unsupported')"
|
|
596
|
-
class="rke1-unsupported-icon icon-warning icon"
|
|
597
|
-
/>
|
|
598
606
|
</p>
|
|
607
|
+
|
|
608
|
+
<!-- 集群描述 -->
|
|
599
609
|
<p
|
|
600
610
|
v-if="row.description"
|
|
601
611
|
class="cluster-description"
|
|
@@ -605,6 +615,8 @@ export default defineComponent({
|
|
|
605
615
|
</div>
|
|
606
616
|
</td>
|
|
607
617
|
</template>
|
|
618
|
+
|
|
619
|
+
<!-- 列渲染:Kubernetes 版本 + 架构 -->
|
|
608
620
|
<template #col:kubernetesVersion="{row}">
|
|
609
621
|
<td class="col-name">
|
|
610
622
|
<span>
|
|
@@ -618,6 +630,8 @@ export default defineComponent({
|
|
|
618
630
|
</div>
|
|
619
631
|
</td>
|
|
620
632
|
</template>
|
|
633
|
+
|
|
634
|
+
<!-- 列渲染:CPU 核数 -->
|
|
621
635
|
<template #col:cpu="{row}">
|
|
622
636
|
<td v-if="row.mgmt && cpuAllocatable(row.mgmt)">
|
|
623
637
|
{{ `${cpuAllocatable(row.mgmt)} ${t('landing.clusters.cores', {count:cpuAllocatable(row.mgmt) })}` }}
|
|
@@ -626,6 +640,8 @@ export default defineComponent({
|
|
|
626
640
|
—
|
|
627
641
|
</td>
|
|
628
642
|
</template>
|
|
643
|
+
|
|
644
|
+
<!-- 列渲染:内存 -->
|
|
629
645
|
<template #col:memory="{row}">
|
|
630
646
|
<td v-if="row.mgmt && memoryAllocatable(row.mgmt) && !memoryAllocatable(row.mgmt).match(/^0 [a-zA-z]/)">
|
|
631
647
|
{{ memoryAllocatable(row.mgmt) }}
|
|
@@ -634,16 +650,28 @@ export default defineComponent({
|
|
|
634
650
|
—
|
|
635
651
|
</td>
|
|
636
652
|
</template>
|
|
637
|
-
|
|
653
|
+
|
|
654
|
+
<!-- 列渲染:探索按钮 -->
|
|
655
|
+
<template #cell:explorer="{row}">
|
|
638
656
|
<router-link v-if="row && row.isReady" class="btn btn-sm role-primary" :to="{name: 'c-cluster', params: {cluster: row.id}}">
|
|
639
657
|
{{ t('landing.clusters.explore') }}
|
|
640
658
|
</router-link>
|
|
641
659
|
<button v-else :disabled="true" class="btn btn-sm role-primary">
|
|
642
660
|
{{ t('landing.clusters.explore') }}
|
|
643
661
|
</button>
|
|
644
|
-
</template>
|
|
662
|
+
</template>
|
|
645
663
|
</PaginatedResourceTable>
|
|
664
|
+
<div v-else class="home-prompt">
|
|
665
|
+
<div style="text-align: center;position: relative;">
|
|
666
|
+
<div class="left-border"></div>
|
|
667
|
+
<!-- <div class="right-border"></div> -->
|
|
668
|
+
<div class="home-prompt-title">欢 迎 登 录</div>
|
|
669
|
+
<div class="home-prompt-subtitle">企业级容器编排与管理解决方案,提供强大的Kubernetes集群管理、应用部署和服务治理能力。</div>
|
|
670
|
+
</div>
|
|
671
|
+
</div>
|
|
646
672
|
</div>
|
|
673
|
+
|
|
674
|
+
<!-- 单集群模式 -->
|
|
647
675
|
<div
|
|
648
676
|
v-else
|
|
649
677
|
class="col span-12"
|
|
@@ -652,13 +680,56 @@ export default defineComponent({
|
|
|
652
680
|
</div>
|
|
653
681
|
</div>
|
|
654
682
|
</div>
|
|
655
|
-
|
|
683
|
+
<!-- 右侧社区链接面板 -->
|
|
684
|
+
<!-- <CommunityLinks class="col span-3 side-panel" /> -->
|
|
656
685
|
</div>
|
|
657
686
|
</IndentedPanel>
|
|
658
687
|
</div>
|
|
659
688
|
</template>
|
|
660
689
|
|
|
661
690
|
<style lang='scss' scoped>
|
|
691
|
+
.home-prompt {
|
|
692
|
+
width: 100%;
|
|
693
|
+
height: 500px;
|
|
694
|
+
display: flex;
|
|
695
|
+
align-items: center;
|
|
696
|
+
justify-content: center;
|
|
697
|
+
.left-border,
|
|
698
|
+
.right-border {
|
|
699
|
+
position: absolute;
|
|
700
|
+
height: 1px;
|
|
701
|
+
width: 120px;
|
|
702
|
+
background: linear-gradient(90deg, transparent, #00a8ff, transparent);
|
|
703
|
+
bottom: 0px;
|
|
704
|
+
}
|
|
705
|
+
.left-border {
|
|
706
|
+
left: calc(50% - 60px);
|
|
707
|
+
}
|
|
708
|
+
.right-border {
|
|
709
|
+
right: 0;
|
|
710
|
+
}
|
|
711
|
+
.home-prompt-title {
|
|
712
|
+
font-size: 32px;
|
|
713
|
+
color: #1a1a1a;
|
|
714
|
+
font-weight: 700;
|
|
715
|
+
letter-spacing: -0.5px;
|
|
716
|
+
margin-bottom: 15px;
|
|
717
|
+
background: linear-gradient(135deg, #00a8ff, #0050b3);
|
|
718
|
+
-webkit-background-clip: text;
|
|
719
|
+
-webkit-text-fill-color: transparent;
|
|
720
|
+
background-clip: text;
|
|
721
|
+
display: inline-block;
|
|
722
|
+
}
|
|
723
|
+
|
|
724
|
+
.home-prompt-subtitle {
|
|
725
|
+
font-size: 18px;
|
|
726
|
+
color: #666666;
|
|
727
|
+
margin-bottom: 20px;
|
|
728
|
+
max-width: 800px;
|
|
729
|
+
margin-left: auto;
|
|
730
|
+
margin-right: auto;
|
|
731
|
+
}
|
|
732
|
+
}
|
|
662
733
|
.banner-link:focus-visible {
|
|
663
734
|
@include focus-outline;
|
|
664
735
|
}
|
|
@@ -678,13 +749,29 @@ export default defineComponent({
|
|
|
678
749
|
}
|
|
679
750
|
}
|
|
680
751
|
|
|
752
|
+
.set-login-page, .whats-new {
|
|
753
|
+
> :deep() .banner__content {
|
|
754
|
+
display: flex;
|
|
755
|
+
|
|
756
|
+
> div {
|
|
757
|
+
flex: 1;
|
|
758
|
+
}
|
|
759
|
+
> a {
|
|
760
|
+
align-self: flex-end;
|
|
761
|
+
}
|
|
762
|
+
}
|
|
763
|
+
}
|
|
764
|
+
|
|
765
|
+
.banner.set-login-page {
|
|
766
|
+
border: 1px solid var(--border);
|
|
767
|
+
}
|
|
681
768
|
.table-heading {
|
|
682
769
|
align-items: center;
|
|
683
770
|
display: flex;
|
|
684
771
|
height: 39px;
|
|
685
772
|
|
|
686
773
|
& > a {
|
|
687
|
-
margin-
|
|
774
|
+
margin-right: 10px;
|
|
688
775
|
}
|
|
689
776
|
}
|
|
690
777
|
.panel:not(:first-child) {
|
|
@@ -715,7 +802,7 @@ export default defineComponent({
|
|
|
715
802
|
align-items: center;
|
|
716
803
|
|
|
717
804
|
// Ensure long cluster names truncate with ellipsis
|
|
718
|
-
> A
|
|
805
|
+
> A {
|
|
719
806
|
overflow: hidden;
|
|
720
807
|
text-overflow: ellipsis;
|
|
721
808
|
}
|
|
@@ -732,11 +819,6 @@ export default defineComponent({
|
|
|
732
819
|
color: var(--error);
|
|
733
820
|
margin-left: 4px;
|
|
734
821
|
}
|
|
735
|
-
|
|
736
|
-
.rke1-unsupported-icon {
|
|
737
|
-
color: var(--warning);
|
|
738
|
-
margin-left: 4px;
|
|
739
|
-
}
|
|
740
822
|
}
|
|
741
823
|
|
|
742
824
|
// Hide the side-panel showing links when the screen is small
|
package/pages/prefs.vue
CHANGED
|
@@ -17,6 +17,7 @@ import LabeledSelect from '@shell/components/form/LabeledSelect';
|
|
|
17
17
|
import { addObject } from '@shell/utils/array';
|
|
18
18
|
import LocaleSelector from '@shell/components/LocaleSelector';
|
|
19
19
|
import TabTitle from '@shell/components/TabTitle';
|
|
20
|
+
import { HARVESTER_NAME as HARVESTER } from '@shell/config/features';
|
|
20
21
|
|
|
21
22
|
export default {
|
|
22
23
|
components: {
|
|
@@ -43,7 +44,7 @@ export default {
|
|
|
43
44
|
...mapGetters({ hasMultipleLocales: 'i18n/hasMultipleLocales' }),
|
|
44
45
|
|
|
45
46
|
isHarvester() {
|
|
46
|
-
return this.isSingleProduct?.productName ===
|
|
47
|
+
return this.isSingleProduct?.productName === HARVESTER;
|
|
47
48
|
},
|
|
48
49
|
|
|
49
50
|
theme: {
|
|
@@ -189,11 +190,13 @@ export default {
|
|
|
189
190
|
<!-- Language -->
|
|
190
191
|
<div
|
|
191
192
|
v-if="hasMultipleLocales && !isHarvester"
|
|
192
|
-
class="
|
|
193
|
+
class="mb-20 p-20 pb-0"
|
|
194
|
+
style="border: 1px solid var(--nav-border);"
|
|
193
195
|
>
|
|
194
196
|
<h4
|
|
195
197
|
id="prefs-language"
|
|
196
198
|
v-t="'prefs.language'"
|
|
199
|
+
class="pb-20"
|
|
197
200
|
/>
|
|
198
201
|
<div class="row">
|
|
199
202
|
<div class="col span-4">
|
|
@@ -205,36 +208,35 @@ export default {
|
|
|
205
208
|
</div>
|
|
206
209
|
</div>
|
|
207
210
|
<!-- Theme -->
|
|
208
|
-
<div class="
|
|
209
|
-
<h4 v-t="'prefs.theme.label'" />
|
|
211
|
+
<div class="mb-20 p-20" style="border: 1px solid var(--nav-border);">
|
|
212
|
+
<h4 v-t="'prefs.theme.label'" class="mb-20" />
|
|
210
213
|
<ButtonGroup
|
|
211
214
|
v-model:value="theme"
|
|
212
215
|
data-testid="prefs__themeOptions"
|
|
213
216
|
:options="themeOptions"
|
|
214
217
|
/>
|
|
215
|
-
<div class="mt-10">
|
|
218
|
+
<!-- <div class="mt-10">
|
|
216
219
|
<t
|
|
217
220
|
k="prefs.theme.autoDetail"
|
|
218
221
|
:pm="pm"
|
|
219
222
|
:am="am"
|
|
220
223
|
/>
|
|
221
|
-
</div>
|
|
224
|
+
</div> -->
|
|
222
225
|
</div>
|
|
223
226
|
<!-- Login landing page -->
|
|
224
227
|
<div
|
|
225
228
|
v-if="!isSingleProduct"
|
|
226
|
-
class="
|
|
229
|
+
class="mb-20 p-20"
|
|
230
|
+
style="border: 1px solid var(--nav-border);"
|
|
227
231
|
>
|
|
228
|
-
<
|
|
229
|
-
<h4 v-t="'prefs.landing.label'" />
|
|
232
|
+
<h4 v-t="'prefs.landing.label'" class="mb-20" />
|
|
230
233
|
<LandingPagePreference
|
|
231
234
|
data-testid="prefs__landingPagePreference"
|
|
232
235
|
/>
|
|
233
236
|
</div>
|
|
234
237
|
<!-- Display Settings -->
|
|
235
|
-
<div class="
|
|
236
|
-
<
|
|
237
|
-
<h4 v-t="'prefs.displaySettings.title'" />
|
|
238
|
+
<div class="mb-20 p-20" style="border: 1px solid var(--nav-border);">
|
|
239
|
+
<h4 v-t="'prefs.displaySettings.title'" class="mb-20" />
|
|
238
240
|
<p class="set-landing-leadin">
|
|
239
241
|
{{ t('prefs.displaySettings.detail', {}, raw=true) }}
|
|
240
242
|
</p>
|
|
@@ -275,10 +277,10 @@ export default {
|
|
|
275
277
|
<!-- Confirmation setting -->
|
|
276
278
|
<div
|
|
277
279
|
v-if="!isSingleProduct"
|
|
278
|
-
class="col adv-features
|
|
280
|
+
class="col adv-features mb-20 p-20"
|
|
281
|
+
style="border: 1px solid var(--nav-border);"
|
|
279
282
|
>
|
|
280
|
-
<
|
|
281
|
-
<h4 v-t="'prefs.confirmationSetting.title'" />
|
|
283
|
+
<h4 v-t="'prefs.confirmationSetting.title'" class="mb-20" />
|
|
282
284
|
<Checkbox
|
|
283
285
|
v-model:value="scalingDownPrompt"
|
|
284
286
|
data-testid="prefs__scalingDownPrompt"
|
|
@@ -287,9 +289,8 @@ export default {
|
|
|
287
289
|
/>
|
|
288
290
|
</div>
|
|
289
291
|
<!-- Advanced Features -->
|
|
290
|
-
<div class="col adv-features
|
|
291
|
-
<
|
|
292
|
-
<h4 v-t="'prefs.advFeatures.title'" />
|
|
292
|
+
<div class="col adv-features mb-20 p-20" style="border: 1px solid var(--nav-border);">
|
|
293
|
+
<h4 v-t="'prefs.advFeatures.title'" class="mb-20" />
|
|
293
294
|
<Checkbox
|
|
294
295
|
v-model:value="viewInApi"
|
|
295
296
|
data-testid="prefs__viewInApi"
|
|
@@ -325,15 +326,13 @@ export default {
|
|
|
325
326
|
<Checkbox
|
|
326
327
|
v-model:value="pluginDeveloper"
|
|
327
328
|
:label="t('prefs.advFeatures.pluginDeveloper', {}, true)"
|
|
328
|
-
:tooltip="t('prefs.advFeatures.pluginDeveloperTooltip')"
|
|
329
329
|
class="mt-20"
|
|
330
330
|
/>
|
|
331
331
|
</template>
|
|
332
332
|
</div>
|
|
333
333
|
<!-- YAML editor key mapping -->
|
|
334
|
-
<div class="col
|
|
335
|
-
<
|
|
336
|
-
<h4 v-t="'prefs.keymap.label'" />
|
|
334
|
+
<div class="col mb-20 p-20" style="border: 1px solid var(--nav-border);">
|
|
335
|
+
<h4 v-t="'prefs.keymap.label'" class="mb-20" />
|
|
337
336
|
<ButtonGroup
|
|
338
337
|
v-model:value="keymap"
|
|
339
338
|
data-testid="prefs__keymapOptions"
|
|
@@ -343,10 +342,10 @@ export default {
|
|
|
343
342
|
<!-- Helm Charts -->
|
|
344
343
|
<div
|
|
345
344
|
v-if="!isSingleProduct"
|
|
346
|
-
class="col
|
|
345
|
+
class="col mb-40 p-20"
|
|
346
|
+
style="border: 1px solid var(--nav-border);"
|
|
347
347
|
>
|
|
348
|
-
<
|
|
349
|
-
<h4 v-t="'prefs.helm.label'" />
|
|
348
|
+
<h4 v-t="'prefs.helm.label'" class="mb-20" />
|
|
350
349
|
<ButtonGroup
|
|
351
350
|
v-model:value="showPreRelease"
|
|
352
351
|
data-testid="prefs__helmOptions"
|
|
@@ -365,4 +364,7 @@ export default {
|
|
|
365
364
|
max-width: 80vw;
|
|
366
365
|
color: var(--input-label);
|
|
367
366
|
}
|
|
367
|
+
h4{
|
|
368
|
+
font-size: 14px;
|
|
369
|
+
}
|
|
368
370
|
</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
|
}
|