dashboard-shell-shell 3.0.5-test.9 → 3.0.5-tsh-rh02

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (213) hide show
  1. package/assets/brand/csp/favicon.png +0 -0
  2. package/assets/icons/iconfont.css +4 -1
  3. package/assets/iconsNew/demo.css +539 -0
  4. package/assets/iconsNew/demo.css:Zone.Identifier +0 -0
  5. package/assets/iconsNew/demo_index.html +303 -0
  6. package/assets/iconsNew/demo_index.html:Zone.Identifier +0 -0
  7. package/assets/iconsNew/iconfont.css +43 -0
  8. package/assets/iconsNew/iconfont.css:Zone.Identifier +0 -0
  9. package/assets/iconsNew/iconfont.js +1 -0
  10. package/assets/iconsNew/iconfont.js:Zone.Identifier +0 -0
  11. package/assets/iconsNew/iconfont.json +44 -0
  12. package/assets/iconsNew/iconfont.json:Zone.Identifier +0 -0
  13. package/assets/iconsNew/iconfont.ttf +0 -0
  14. package/assets/iconsNew/iconfont.ttf:Zone.Identifier +0 -0
  15. package/assets/iconsNew/iconfont.woff +0 -0
  16. package/assets/iconsNew/iconfont.woff2 +0 -0
  17. package/assets/iconsNew/iconfont.woff2:Zone.Identifier +0 -0
  18. package/assets/iconsNew/iconfont.woff:Zone.Identifier +0 -0
  19. package/assets/images/login-logo.svg +9 -19
  20. package/assets/images/login-logo1.svg +9 -0
  21. package/assets/images/logo.svg +11 -0
  22. package/assets/images/pl/dark/logo.png +0 -0
  23. package/assets/images/pl/logo.svg +11 -0
  24. package/assets/styles/all.scss +23 -3
  25. package/assets/styles/app.scss +1 -0
  26. package/assets/styles/base/_helpers.scss +1 -1
  27. package/assets/styles/base/_variables.scss +2 -2
  28. package/assets/styles/fonts/_icons.scss +3 -2
  29. package/assets/styles/global/_button.scss +1 -1
  30. package/assets/styles/global/_form.scss +1 -0
  31. package/assets/styles/global/_select.scss +1 -1
  32. package/assets/styles/global/_tooltip.scss +5 -1
  33. package/assets/styles/themes/_light.scss +3 -3
  34. package/assets/styles/vendor/vue-select.scss +2 -1
  35. package/assets/translations/en-us.yaml +67 -0
  36. package/assets/translations/zh-hans.yaml +226 -24
  37. package/components/ButtonDropdown.vue +3 -1
  38. package/components/ClusterIconMenu.vue +1 -1
  39. package/components/CodeMirror.vue +6 -4
  40. package/components/ConsumptionGauge.vue +1 -1
  41. package/components/ContainerResourceLimit.vue +2 -2
  42. package/components/CruResource.vue +3 -2
  43. package/components/Drawer/ResourceDetailDrawer/ConfigTab.vue +22 -19
  44. package/components/Drawer/ResourceDetailDrawer/index.vue +3 -3
  45. package/components/ExplorerMembers.vue +10 -1
  46. package/components/GlobalRoleBindings.vue +69 -114
  47. package/components/PodSecurityAdmission.vue +1 -1
  48. package/components/PromptRemove.vue +23 -1
  49. package/components/RelatedResources.vue +3 -0
  50. package/components/Resource/Detail/TitleBar/composables.ts +16 -1
  51. package/components/Resource/Detail/TitleBar/index.vue +37 -24
  52. package/components/ResourceDetail/Masthead/index.vue +1 -1
  53. package/components/ResourceDetail/Masthead/latest.vue +1 -1
  54. package/components/ResourceDetail/Masthead/legacy.vue +8 -7
  55. package/components/ResourceDetail/legacy.vue +15 -15
  56. package/components/ResourceList/Masthead.vue +16 -15
  57. package/components/ResourceTable.vue +16 -0
  58. package/components/SideNav.vue +21 -21
  59. package/components/SingleClusterInfo.vue +2 -1
  60. package/components/SortableTable/THead.vue +46 -1
  61. package/components/SortableTable/index.vue +54 -18
  62. package/components/Tabbed/index.vue +6 -1
  63. package/components/actionButton/index.vue +649 -0
  64. package/components/auth/Principal.vue +16 -8
  65. package/components/auth/RoleDetailEdit.vue +11 -7
  66. package/components/breadcrumb/index.vue +13 -210
  67. package/components/form/ArrayList.vue +164 -147
  68. package/components/form/ArrayListGrouped.vue +5 -3
  69. package/components/form/ChangePassword.vue +1 -1
  70. package/components/form/ClusterAppearance.vue +4 -3
  71. package/components/form/Command.vue +4 -5
  72. package/components/form/Conditions.vue +15 -1
  73. package/components/form/Footer.vue +1 -0
  74. package/components/form/HealthCheck.vue +0 -2
  75. package/components/form/HookOption.vue +87 -58
  76. package/components/form/InputWithSelect.vue +8 -7
  77. package/components/form/KeyValue.vue +20 -2
  78. package/components/form/LabeledSelect.vue +3 -1
  79. package/components/form/Labels.vue +2 -2
  80. package/components/form/MatchExpressions.vue +4 -4
  81. package/components/form/Members/ClusterMembershipEditor.vue +1 -1
  82. package/components/form/Members/ClusterPermissionsEditor.vue +60 -41
  83. package/components/form/Members/MembershipEditor.vue +4 -4
  84. package/components/form/Members/ProjectMembershipEditor.vue +1 -1
  85. package/components/form/NameNsDescription.vue +3 -2
  86. package/components/form/Networking.vue +6 -9
  87. package/components/form/NodeAffinity.vue +29 -28
  88. package/components/form/PodAffinity.vue +23 -23
  89. package/components/form/Probe.vue +15 -11
  90. package/components/form/ProjectMemberEditor.vue +66 -48
  91. package/components/form/ResourceQuota/Namespace.vue +4 -4
  92. package/components/form/ResourceQuota/NamespaceRow.vue +11 -9
  93. package/components/form/ResourceQuota/Project.vue +4 -4
  94. package/components/form/ResourceQuota/ProjectRow.vue +36 -30
  95. package/components/form/ResourceSelector.vue +1 -1
  96. package/components/form/SecretSelector.vue +24 -23
  97. package/components/form/Security.vue +1 -3
  98. package/components/form/Select.vue +7 -1
  99. package/components/form/ServiceNameSelect.vue +2 -5
  100. package/components/form/ServicePorts.vue +149 -75
  101. package/components/form/Tolerations.vue +13 -9
  102. package/components/form/ValueFromResource.vue +110 -96
  103. package/components/formatter/WorkloadHealthScale.vue +4 -3
  104. package/components/nav/Group.vue +8 -1
  105. package/components/nav/Header.vue +51 -174
  106. package/components/nav/NamespaceFilter.vue +14 -19
  107. package/components/nav/TopLevelMenu.vue +101 -134
  108. package/components/nav/Type.vue +11 -3
  109. package/config/menuRouteMap.js +10 -0
  110. package/config/product/explorer.js +32 -10
  111. package/config/product/manager.js +28 -17
  112. package/config/product/uiplugins.js +13 -10
  113. package/config/router/navigation-guards/index.js +61 -3
  114. package/detail/node.vue +28 -23
  115. package/dialog/AddCustomBadgeDialog.vue +17 -9
  116. package/dialog/RollbackWorkloadDialog.vue +1 -1
  117. package/edit/autoscaling.horizontalpodautoscaler/external-metric.vue +1 -1
  118. package/edit/autoscaling.horizontalpodautoscaler/hpa-scaling-rule.vue +9 -6
  119. package/edit/autoscaling.horizontalpodautoscaler/index.vue +3 -1
  120. package/edit/autoscaling.horizontalpodautoscaler/metric-identifier.vue +2 -2
  121. package/edit/autoscaling.horizontalpodautoscaler/metric-object-reference.vue +7 -5
  122. package/edit/autoscaling.horizontalpodautoscaler/metric-target.vue +5 -3
  123. package/edit/autoscaling.horizontalpodautoscaler/metrics-row.vue +2 -2
  124. package/edit/autoscaling.horizontalpodautoscaler/object-metric.vue +2 -2
  125. package/edit/autoscaling.horizontalpodautoscaler/pod-metric.vue +1 -1
  126. package/edit/autoscaling.horizontalpodautoscaler/resource-metric.vue +2 -2
  127. package/edit/configmap.vue +4 -0
  128. package/edit/logging-flow/index.vue +1 -2
  129. package/edit/logging.banzaicloud.io.output/providers/awsElasticsearch.vue +3 -3
  130. package/edit/logging.banzaicloud.io.output/providers/azurestorage.vue +19 -19
  131. package/edit/logging.banzaicloud.io.output/providers/cloudwatch.vue +23 -23
  132. package/edit/logging.banzaicloud.io.output/providers/datadog.vue +19 -19
  133. package/edit/logging.banzaicloud.io.output/providers/elasticsearch.vue +14 -14
  134. package/edit/logging.banzaicloud.io.output/providers/forward.vue +12 -12
  135. package/edit/logging.banzaicloud.io.output/providers/gcs.vue +23 -23
  136. package/edit/logging.banzaicloud.io.output/providers/gelf.vue +6 -6
  137. package/edit/logging.banzaicloud.io.output/providers/kafka.vue +10 -10
  138. package/edit/logging.banzaicloud.io.output/providers/kinesisStream.vue +8 -8
  139. package/edit/logging.banzaicloud.io.output/providers/logdna.vue +17 -17
  140. package/edit/logging.banzaicloud.io.output/providers/logz.vue +7 -7
  141. package/edit/logging.banzaicloud.io.output/providers/loki.vue +12 -12
  142. package/edit/logging.banzaicloud.io.output/providers/newrelic.vue +3 -3
  143. package/edit/logging.banzaicloud.io.output/providers/opensearch.vue +14 -14
  144. package/edit/logging.banzaicloud.io.output/providers/redis.vue +6 -6
  145. package/edit/logging.banzaicloud.io.output/providers/s3.vue +23 -23
  146. package/edit/logging.banzaicloud.io.output/providers/splunkHec.vue +13 -13
  147. package/edit/logging.banzaicloud.io.output/providers/sumologic.vue +2 -2
  148. package/edit/logging.banzaicloud.io.output/providers/syslog.vue +54 -54
  149. package/edit/monitoring.coreos.com.alertmanagerconfig/receiverConfig.vue +32 -8
  150. package/edit/monitoring.coreos.com.alertmanagerconfig/types/dingding.vue +32 -0
  151. package/edit/monitoring.coreos.com.alertmanagerconfig/types/message.vue +52 -0
  152. package/edit/monitoring.coreos.com.alertmanagerconfig/types/snmp.vue +45 -0
  153. package/edit/monitoring.coreos.com.alertmanagerconfig/types/work.vue +31 -0
  154. package/edit/networking.k8s.io.ingress/Certificate.vue +14 -5
  155. package/edit/networking.k8s.io.ingress/DefaultBackend.vue +2 -2
  156. package/edit/networking.k8s.io.ingress/Rule.vue +5 -11
  157. package/edit/networking.k8s.io.ingress/RulePath.vue +105 -96
  158. package/edit/networking.k8s.io.networkpolicy/PolicyRule.vue +3 -3
  159. package/edit/networking.k8s.io.networkpolicy/PolicyRulePort.vue +4 -2
  160. package/edit/networking.k8s.io.networkpolicy/PolicyRuleTarget.vue +12 -11
  161. package/edit/networking.k8s.io.networkpolicy/index.vue +1 -1
  162. package/edit/persistentvolume/index.vue +3 -1
  163. package/edit/persistentvolumeclaim.vue +2 -0
  164. package/edit/provisioning.cattle.io.cluster/tabs/Basics.vue +1 -1
  165. package/edit/secret/index.vue +2 -2
  166. package/edit/service.vue +4 -1
  167. package/edit/storage.k8s.io.storageclass/index.vue +10 -8
  168. package/edit/storage.k8s.io.storageclass/provisioners/kubernetes.io/aws-ebs.vue +34 -27
  169. package/edit/storage.k8s.io.storageclass/provisioners/kubernetes.io/gce-pd.vue +15 -13
  170. package/edit/storage.k8s.io.storageclass/provisioners/kubernetes.io/vsphere-volume.vue +41 -39
  171. package/edit/workload/Job.vue +31 -34
  172. package/edit/workload/Upgrading.vue +5 -5
  173. package/edit/workload/index.vue +19 -15
  174. package/edit/workload/storage/Mount.vue +1 -0
  175. package/edit/workload/storage/awsElasticBlockStore.vue +9 -7
  176. package/edit/workload/storage/azureDisk.vue +14 -10
  177. package/edit/workload/storage/azureFile.vue +9 -7
  178. package/edit/workload/storage/csi/index.vue +6 -9
  179. package/edit/workload/storage/emptyDir.vue +7 -5
  180. package/edit/workload/storage/gcePersistentDisk.vue +9 -7
  181. package/edit/workload/storage/hostPath.vue +7 -5
  182. package/edit/workload/storage/nfs.vue +8 -6
  183. package/edit/workload/storage/persistentVolumeClaim/index.vue +12 -10
  184. package/edit/workload/storage/persistentVolumeClaim/persistentvolumeclaim.vue +20 -15
  185. package/edit/workload/storage/secret.vue +9 -6
  186. package/edit/workload/storage/vsphereVolume.vue +11 -7
  187. package/initialize/app-extended.js +7 -1
  188. package/list/management.cattle.io.podsecurityadmissionconfigurationtemplate.vue +8 -6
  189. package/mixins/create-edit-view/impl.js +10 -0
  190. package/models/provisioning.cattle.io.cluster.js +19 -18
  191. package/models/workload.js +2 -2
  192. package/package.json +1 -1
  193. package/pages/account/index.vue +93 -58
  194. package/pages/auth/setup.vue +36 -17
  195. package/pages/c/_cluster/auth/roles/index.vue +27 -3
  196. package/pages/c/_cluster/explorer/ConfigBadge.vue +1 -1
  197. package/pages/c/_cluster/explorer/index.vue +2 -1
  198. package/pages/c/_cluster/explorer/tools/index.vue +6 -6
  199. package/pages/home.vue +55 -13
  200. package/plugins/dashboard-store/actions.js +1 -1
  201. package/rancher-components/Banner/Banner.vue +14 -2
  202. package/rancher-components/Form/Radio/RadioGroup.vue +9 -1
  203. package/rancher-components/LabeledTooltip/LabeledTooltip.vue +31 -2
  204. package/scripts/build-pkg.sh +18 -23
  205. package/scripts/publish-shell.sh +1 -1
  206. package/store/i18n.js +1 -0
  207. package/store/index.js +4 -4
  208. package/store/type-map.js +0 -2
  209. package/types/shell/index.d.ts +8 -0
  210. package/utils/error.js +23 -3
  211. package/utils/errorTranslate.json +402 -8
  212. package/utils/errorTranslateNew.json +39 -0
  213. package/utils/roleFiltering.js +33 -0
@@ -104,34 +104,34 @@ export default {
104
104
  </script>
105
105
  <template>
106
106
  <div>
107
- <div class="row mb-20">
108
- <div class="col span-6">
107
+ <div class="row">
108
+ <div class="col">
109
109
  <RadioGroup
110
110
  v-model:value="value.parameters.type"
111
111
  name="volumeType"
112
112
  :label="t('storageClass.aws-ebs.volumeType.label')"
113
113
  :mode="mode"
114
114
  :options="volumeTypeOptions"
115
+ class="mb-20"
115
116
  />
116
117
  <UnitInput
117
118
  v-if="value.parameters.type === 'io1' || value.parameters.type === 'gp3'"
118
119
  v-model:value="iopsPerGB"
119
- class="mt-10"
120
120
  :label="t('storageClass.aws-ebs.volumeType.provisionedIops.label')"
121
121
  :suffix="t('storageClass.aws-ebs.volumeType.provisionedIops.suffix')"
122
122
  :mode="mode"
123
123
  />
124
- <LabeledInput
125
- v-model:value="value.parameters.fsType"
126
- class="mt-10"
127
- :placeholder="t('storageClass.aws-ebs.filesystemType.placeholder')"
128
- :label="t('storageClass.aws-ebs.filesystemType.label')"
129
- :mode="mode"
124
+ <div v-if="value.parameters.type === 'io1' || value.parameters.type === 'gp3'" style="height: 24px;"></div>
125
+ <LabeledInput
126
+ v-model:value="value.parameters.fsType"
127
+ :placeholder="t('storageClass.aws-ebs.filesystemType.placeholder')"
128
+ :label="t('storageClass.aws-ebs.filesystemType.label')"
129
+ :mode="mode"
130
130
  />
131
131
  </div>
132
132
  </div>
133
- <div class="row mb-20">
134
- <div class="col span-6">
133
+ <div class="row">
134
+ <div class="col">
135
135
  <RadioGroup
136
136
  v-model:value="availabilityZone"
137
137
  name="availabilityZone"
@@ -139,17 +139,20 @@ export default {
139
139
  :mode="mode"
140
140
  :options="availabilityZoneOptions"
141
141
  />
142
- <LabeledInput
143
- v-if="availabilityZone === 'manual'"
144
- v-model:value="value.parameters.zones"
145
- class="mt-10"
146
- :placeholder="t('storageClass.aws-ebs.availabilityZone.placeholder')"
147
- :mode="mode"
148
- />
142
+ <div style="display: flex;">
143
+ <div style="width: 160px;"></div>
144
+ <LabeledInput
145
+ v-if="availabilityZone === 'manual'"
146
+ v-model:value="value.parameters.zones"
147
+ class="mt-10"
148
+ :placeholder="t('storageClass.aws-ebs.availabilityZone.placeholder')"
149
+ :mode="mode"
150
+ />
151
+ </div>
149
152
  </div>
150
153
  </div>
151
154
  <div class="row">
152
- <div class="col span-6">
155
+ <div class="col">
153
156
  <RadioGroup
154
157
  v-model:value="value.parameters.encrypted"
155
158
  name="encryption"
@@ -158,22 +161,26 @@ export default {
158
161
  :options="encryptionOptions"
159
162
  />
160
163
  </div>
161
- <div class="col span-6">
164
+ </div>
165
+ <div class="row">
166
+ <div class="col">
162
167
  <RadioGroup
163
168
  v-if="value.parameters.encrypted === 'true'"
164
169
  v-model:value="keyId"
165
- class="mt-10"
166
170
  name="keyId"
167
171
  :label="t('storageClass.aws-ebs.keyId.label')"
168
172
  :mode="mode"
169
173
  :options="keyIdOptions"
170
174
  />
171
- <LabeledInput
172
- v-if="keyId === 'manual'"
173
- v-model:value="value.parameters.kmsKeyId"
174
- class="mt-10"
175
- :mode="mode"
176
- />
175
+ <div class="row">
176
+ <div v-if="keyId === 'manual'" style="min-width: 160px;"></div>
177
+ <LabeledInput
178
+ v-if="keyId === 'manual'"
179
+ v-model:value="value.parameters.kmsKeyId"
180
+ class="mt-10"
181
+ :mode="mode"
182
+ />
183
+ </div>
177
184
  </div>
178
185
  </div>
179
186
  </div>
@@ -68,7 +68,7 @@ export default {
68
68
  </script>
69
69
  <template>
70
70
  <div>
71
- <div class="row mb-20">
71
+ <div class="row">
72
72
  <div class="col span-6">
73
73
  <RadioGroup
74
74
  v-model:value="value.parameters.type"
@@ -77,14 +77,16 @@ export default {
77
77
  :mode="mode"
78
78
  :options="volumeTypeOptions"
79
79
  />
80
- <LabeledInput
81
- v-model:value="value.parameters.fsType"
82
- class="mt-10"
83
- :placeholder="t('storageClass.gce-pd.filesystemType.placeholder')"
84
- :label="t('storageClass.gce-pd.filesystemType.label')"
85
- :mode="mode"
80
+ <div style="height: 24px;"></div>
81
+ <LabeledInput
82
+ v-model:value="value.parameters.fsType"
83
+ :placeholder="t('storageClass.gce-pd.filesystemType.placeholder')"
84
+ :label="t('storageClass.gce-pd.filesystemType.label')"
85
+ :mode="mode"
86
86
  />
87
87
  </div>
88
+ </div>
89
+ <div class="row">
88
90
  <div class="col span-6">
89
91
  <RadioGroup
90
92
  v-model:value="availabilityZone"
@@ -93,12 +95,12 @@ export default {
93
95
  :mode="mode"
94
96
  :options="availabilityZoneOptions"
95
97
  />
96
- <LabeledInput
97
- v-if="availabilityZone === 'manual'"
98
- v-model:value="value.parameters.zones"
99
- class="mt-10"
100
- :placeholder="t('storageClass.gce-pd.availabilityZone.placeholder')"
101
- :mode="mode"
98
+ <LabeledInput
99
+ v-if="availabilityZone === 'manual'"
100
+ v-model:value="value.parameters.zones"
101
+ class="mt-10"
102
+ :placeholder="t('storageClass.gce-pd.availabilityZone.placeholder')"
103
+ :mode="mode"
102
104
  />
103
105
  </div>
104
106
  </div>
@@ -41,55 +41,57 @@ export default {
41
41
  </script>
42
42
  <template>
43
43
  <div>
44
- <div class="row mb-10">
45
- <div class="col span-4">
46
- <LabeledSelect
47
- v-model:value="value.parameters.diskformat"
48
- :options="diskFormatOptions"
49
- :label="t('storageClass.vsphere-volume.diskFormat.label')"
50
- :mode="mode"
51
- />
52
- </div>
53
- <div class="col span-4">
54
- <LabeledInput
55
- v-model:value="value.parameters.storagePolicyName"
56
- :placeholder="t('storageClass.vsphere-volume.storagePolicyName.placeholder')"
57
- :label="t('storageClass.vsphere-volume.storagePolicyName.label')"
58
- :mode="mode"
44
+ <div class="row">
45
+ <div class="col span-6">
46
+ <LabeledSelect
47
+ v-model:value="value.parameters.diskformat"
48
+ :options="diskFormatOptions"
49
+ :label="t('storageClass.vsphere-volume.diskFormat.label')"
50
+ :mode="mode"
59
51
  />
60
52
  </div>
61
- <div class="col span-4">
62
- <LabeledInput
63
- v-model:value="value.parameters.datastore"
64
- :placeholder="t('storageClass.vsphere-volume.datastore.placeholder')"
65
- :label="t('storageClass.vsphere-volume.datastore.label')"
66
- :mode="mode"
53
+ <div class="col span-6">
54
+ <LabeledInput
55
+ v-model:value="value.parameters.storagePolicyName"
56
+ :placeholder="t('storageClass.vsphere-volume.storagePolicyName.placeholder')"
57
+ :label="t('storageClass.vsphere-volume.storagePolicyName.label')"
58
+ :mode="mode"
67
59
  />
68
60
  </div>
69
61
  </div>
70
62
  <div class="row">
71
- <div class="col span-4">
72
- <LabeledInput
73
- v-model:value="value.parameters.hostFailuresToTolerate"
74
- :placeholder="t('storageClass.vsphere-volume.hostFailuresToTolerate.placeholder')"
75
- :label="t('storageClass.vsphere-volume.hostFailuresToTolerate.label')"
76
- :mode="mode"
63
+ <div class="col span-6">
64
+ <LabeledInput
65
+ v-model:value="value.parameters.datastore"
66
+ :placeholder="t('storageClass.vsphere-volume.datastore.placeholder')"
67
+ :label="t('storageClass.vsphere-volume.datastore.label')"
68
+ :mode="mode"
77
69
  />
78
70
  </div>
79
- <div class="col span-4">
80
- <LabeledInput
81
- v-model:value="value.parameters.cachereservation"
82
- :placeholder="t('storageClass.vsphere-volume.cacheReservation.placeholder')"
83
- :label="t('storageClass.vsphere-volume.cacheReservation.label')"
84
- :mode="mode"
71
+ <div class="col span-6">
72
+ <LabeledInput
73
+ v-model:value="value.parameters.hostFailuresToTolerate"
74
+ :placeholder="t('storageClass.vsphere-volume.hostFailuresToTolerate.placeholder')"
75
+ :label="t('storageClass.vsphere-volume.hostFailuresToTolerate.label')"
76
+ :mode="mode"
77
+ />
78
+ </div>
79
+ </div>
80
+ <div class="row">
81
+ <div class="col span-6">
82
+ <LabeledInput
83
+ v-model:value="value.parameters.cachereservation"
84
+ :placeholder="t('storageClass.vsphere-volume.cacheReservation.placeholder')"
85
+ :label="t('storageClass.vsphere-volume.cacheReservation.label')"
86
+ :mode="mode"
85
87
  />
86
88
  </div>
87
- <div class="col span-4">
88
- <LabeledInput
89
- v-model:value="value.parameters.fstype"
90
- :placeholder="t('storageClass.vsphere-volume.filesystemType.placeholder')"
91
- :label="t('storageClass.vsphere-volume.filesystemType.label')"
92
- :mode="mode"
89
+ <div class="col span-6">
90
+ <LabeledInput
91
+ v-model:value="value.parameters.fstype"
92
+ :placeholder="t('storageClass.vsphere-volume.filesystemType.placeholder')"
93
+ :label="t('storageClass.vsphere-volume.filesystemType.label')"
94
+ :mode="mode"
93
95
  />
94
96
  </div>
95
97
  </div>
@@ -150,7 +150,7 @@ export default {
150
150
 
151
151
  <template>
152
152
  <form>
153
- <div class="row mb-20">
153
+ <div class="row">
154
154
  <div
155
155
  data-testid="input-job-completions"
156
156
  class="col span-6"
@@ -178,7 +178,7 @@ export default {
178
178
  />
179
179
  </div>
180
180
  </div>
181
- <div class="row mb-20">
181
+ <div class="row">
182
182
  <div
183
183
  data-testid="input-job-backoffLimit"
184
184
  class="col span-6"
@@ -208,7 +208,7 @@ export default {
208
208
  </div>
209
209
 
210
210
  <template v-if="isCronJob">
211
- <div class="row mb-20">
211
+ <div class="row ">
212
212
  <div
213
213
  data-testid="input-job-successful"
214
214
  class="col span-6"
@@ -234,7 +234,7 @@ export default {
234
234
  />
235
235
  </div>
236
236
  </div>
237
- <div class="row mb-20">
237
+ <div class="row">
238
238
  <div
239
239
  data-testid="input-job-startingDeadlineSeconds"
240
240
  class="col span-6"
@@ -274,36 +274,33 @@ export default {
274
274
  </UnitInput>
275
275
  </div>
276
276
  </div>
277
- <div class="row">
278
- <div
279
- data-testid="input-job-concurrencyPolicy"
280
-
281
- class="col span-6"
282
- >
283
- <RadioGroup
284
- v-model:value="concurrencyPolicy"
285
- :mode="mode"
286
- :label="t('workload.upgrading.concurrencyPolicy.label')"
287
- name="concurrency"
288
- :options="['Allow', 'Forbid', 'Replace']"
289
- :labels="[t('workload.upgrading.concurrencyPolicy.options.allow'), t('workload.upgrading.concurrencyPolicy.options.forbid'), t('workload.upgrading.concurrencyPolicy.options.replace')]"
290
- @update:value="update"
291
- />
292
- </div>
293
- <div
294
- data-testid="input-job-suspend"
295
- class="col span-6"
296
- >
297
- <RadioGroup
298
- v-model:value="suspend"
299
- :mode="mode"
300
- :label="t('workload.job.suspend')"
301
- name="suspend"
302
- :options="[true, false]"
303
- :labels="['Yes', 'No']"
304
- @update:value="update"
305
- />
306
- </div>
277
+ <div
278
+ data-testid="input-job-concurrencyPolicy"
279
+ class="col span-8"
280
+ >
281
+ <RadioGroup
282
+ v-model:value="concurrencyPolicy"
283
+ :mode="mode"
284
+ :label="t('workload.upgrading.concurrencyPolicy.label')"
285
+ name="concurrency"
286
+ :options="['Allow', 'Forbid', 'Replace']"
287
+ :labels="[t('workload.upgrading.concurrencyPolicy.options.allow'), t('workload.upgrading.concurrencyPolicy.options.forbid'), t('workload.upgrading.concurrencyPolicy.options.replace')]"
288
+ @update:value="update"
289
+ />
290
+ </div>
291
+ <div
292
+ data-testid="input-job-suspend"
293
+ class="col span-8"
294
+ >
295
+ <RadioGroup
296
+ v-model:value="suspend"
297
+ :mode="mode"
298
+ :label="t('workload.job.suspend')"
299
+ name="suspend"
300
+ :options="[true, false]"
301
+ :labels="['Yes', 'No']"
302
+ @update:value="update"
303
+ />
307
304
  </div>
308
305
  </template>
309
306
  <div
@@ -223,7 +223,7 @@ export default {
223
223
  <!--workload spec.upgradeStrategy -->
224
224
  <div
225
225
  v-if="strategyOptions && !noDeploymentSpec"
226
- class="row mb-20"
226
+ class="row"
227
227
  >
228
228
  <div
229
229
  class="col"
@@ -241,7 +241,7 @@ export default {
241
241
  </div>
242
242
  <div
243
243
  v-if="isStatefulSet && !noDeploymentSpec"
244
- class="row mb-20"
244
+ class="row"
245
245
  >
246
246
  <div
247
247
  class="col span-6"
@@ -252,7 +252,7 @@ export default {
252
252
  name="podManagement"
253
253
  :mode="mode"
254
254
  :label="t('workload.upgrading.podManagementPolicy.label')"
255
- :options="['OrderedReady', 'Parallel']"
255
+ :options="['OrderedReady (顺序就绪模式)', 'Parallel (并行模式)']"
256
256
  @update:value="update"
257
257
  />
258
258
  </div>
@@ -260,7 +260,7 @@ export default {
260
260
  <template v-if="strategy === 'RollingUpdate' && !noDeploymentSpec">
261
261
  <div
262
262
  v-if="isDeployment || isDaemonSet"
263
- class="row mb-20"
263
+ class="row"
264
264
  data-testid="input-policy-surge"
265
265
  >
266
266
  <div
@@ -299,7 +299,7 @@ export default {
299
299
  <!-- workload spec -->
300
300
  <div
301
301
  v-if="!noDeploymentSpec"
302
- class="row mb-20"
302
+ class="row"
303
303
  >
304
304
  <div
305
305
  v-if="!isStatefulSet"
@@ -186,6 +186,7 @@ export default {
186
186
  type="button"
187
187
  class="btn-sm role-link"
188
188
  @click="removeContainer(tab)"
189
+ style="min-width: auto;padding-left: 0;"
189
190
  >
190
191
  {{ t('workload.container.removeContainer') }}
191
192
  </button>
@@ -193,7 +194,7 @@ export default {
193
194
  <div>
194
195
  <div
195
196
  :style="{'align-items':'center'}"
196
- class="row mb-20"
197
+ class="row"
197
198
  >
198
199
  <div class="col span-6">
199
200
  <LabeledInput
@@ -213,8 +214,8 @@ export default {
213
214
  />
214
215
  </div>
215
216
  </div>
216
- <h3>{{ t('workload.container.titles.image') }}</h3>
217
- <div class="row mb-20">
217
+ <h3 class="mt-20">{{ t('workload.container.titles.image') }}</h3>
218
+ <div class="row">
218
219
  <div class="col span-6">
219
220
  <LabeledInput
220
221
  v-model:value.trim="allContainers[i].image"
@@ -250,9 +251,8 @@ export default {
250
251
  </div>
251
252
  </div>
252
253
  </div>
253
- <div class="spacer" />
254
254
  <div>
255
- <h3>
255
+ <h3 class="mt-20">
256
256
  {{ t('workload.container.ports.expose') }}
257
257
  <i
258
258
  v-clean-tooltip="{content: t('workload.container.ports.toolTip'), triggers: ['hover', 'touch', 'focus'] }"
@@ -274,8 +274,7 @@ export default {
274
274
  />
275
275
  </div>
276
276
  </div>
277
- <div class="spacer" />
278
- <div>
277
+ <div class="mt-40">
279
278
  <h3>{{ t('workload.container.titles.command') }}</h3>
280
279
  <Command
281
280
  v-model:value="allContainers[i]"
@@ -295,8 +294,7 @@ export default {
295
294
  :loading="isLoadingSecondaryResources"
296
295
  @update:value="updateServiceAccount"
297
296
  />
298
- <div class="spacer" />
299
- <div>
297
+ <div class="mt-40">
300
298
  <h3>{{ t('workload.container.titles.lifecycle') }}</h3>
301
299
  <LifecycleHooks
302
300
  v-model:value="allContainers[i].lifecycle"
@@ -449,8 +447,7 @@ export default {
449
447
  </div>
450
448
  </div>
451
449
 
452
- <div>
453
- <div class="spacer" />
450
+ <div class="mt-40">
454
451
  <h3 class="mb-10">
455
452
  <t k="workload.scheduling.titles.priority" />
456
453
  </h3>
@@ -563,7 +560,7 @@ export default {
563
560
  >
564
561
  <div>
565
562
  <h3>{{ t('workload.container.titles.podLabels') }}</h3>
566
- <div class="row mb-20">
563
+ <div class="row">
567
564
  <KeyValue
568
565
  key="labels"
569
566
  v-model:value="podLabels"
@@ -573,8 +570,7 @@ export default {
573
570
  :protip="false"
574
571
  />
575
572
  </div>
576
- <div class="spacer" />
577
- <h3>{{ t('workload.container.titles.podAnnotations') }}</h3>
573
+ <h3 class="mt-40">{{ t('workload.container.titles.podAnnotations') }}</h3>
578
574
  <div class="row">
579
575
  <KeyValue
580
576
  key="annotations"
@@ -664,10 +660,18 @@ export default {
664
660
  .deployment-tabs {
665
661
  > .tabs.horizontal {
666
662
  border-bottom: 1px solid var(--border);
667
- margin-bottom: 20px;
663
+ }
664
+
665
+ > .tab-container{
666
+ padding: 20px 20px 0;
667
+ // border: none !important;
668
668
  }
669
669
  }
670
670
  .padded {
671
671
  padding-bottom: 10px;
672
672
  }
673
+
674
+ H3{
675
+ font-size: 14px;
676
+ }
673
677
  </style>
@@ -148,6 +148,7 @@ export default {
148
148
 
149
149
  .remove BUTTON {
150
150
  padding: 0px;
151
+ min-width: auto;
151
152
  }
152
153
  }
153
154
 
@@ -26,8 +26,8 @@ export default {
26
26
 
27
27
  <template>
28
28
  <div>
29
- <div class="row mb-10">
30
- <div class="col span-6">
29
+ <div class="row">
30
+ <div class="col mr-10">
31
31
  <LabeledInput
32
32
  v-model:value="value.name"
33
33
  :required="true"
@@ -35,7 +35,7 @@ export default {
35
35
  :label="t('workload.storage.volumeName')"
36
36
  />
37
37
  </div>
38
- <div class="col span-6">
38
+ <div class="col" style="display: flex;align-items: center;">
39
39
  <Checkbox
40
40
  v-model:value="value.awsElasticBlockStore.readOnly"
41
41
  :mode="mode"
@@ -43,8 +43,8 @@ export default {
43
43
  />
44
44
  </div>
45
45
  </div>
46
- <div class="row mb-10">
47
- <div class="col span-6">
46
+ <div class="row">
47
+ <div class="col">
48
48
  <LabeledInput
49
49
  v-model:value="value.awsElasticBlockStore.volumeID"
50
50
  :required="true"
@@ -52,7 +52,9 @@ export default {
52
52
  :label="t('workload.storage.csi.volumeID')"
53
53
  />
54
54
  </div>
55
- <div class="col span-6">
55
+ </div>
56
+ <div class="row">
57
+ <div class="col">
56
58
  <LabeledInput
57
59
  v-model:value.number="value.awsElasticBlockStore.partition"
58
60
  :mode="mode"
@@ -61,7 +63,7 @@ export default {
61
63
  </div>
62
64
  </div>
63
65
  <div class="row">
64
- <div class="col span-6">
66
+ <div class="col">
65
67
  <LabeledInput
66
68
  v-model:value="value.awsElasticBlockStore.fsType"
67
69
  :mode="mode"
@@ -34,8 +34,8 @@ export default {
34
34
 
35
35
  <template>
36
36
  <div>
37
- <div class="row mb-10">
38
- <div class="col span-6">
37
+ <div class="row">
38
+ <div class="col mr-10">
39
39
  <LabeledInput
40
40
  v-model:value="value.name"
41
41
  :required="true"
@@ -43,7 +43,7 @@ export default {
43
43
  :label="t('workload.storage.volumeName')"
44
44
  />
45
45
  </div>
46
- <div class="col span-6">
46
+ <div class="col" style="display: flex;align-items: center;">
47
47
  <Checkbox
48
48
  v-model:value="value.azureDisk.readOnly"
49
49
  :mode="mode"
@@ -51,8 +51,8 @@ export default {
51
51
  />
52
52
  </div>
53
53
  </div>
54
- <div class="row mb-10">
55
- <div class="col span-6">
54
+ <div class="row">
55
+ <div class="col">
56
56
  <LabeledInput
57
57
  v-model:value="value.azureDisk.diskName"
58
58
  :mode="mode"
@@ -60,7 +60,9 @@ export default {
60
60
  :label="t('workload.storage.csi.diskName')"
61
61
  />
62
62
  </div>
63
- <div class="col span-6">
63
+ </div>
64
+ <div class="row">
65
+ <div class="col">
64
66
  <LabeledInput
65
67
  v-model:value.number="value.azureDisk.diskURI"
66
68
  :mode="mode"
@@ -69,8 +71,8 @@ export default {
69
71
  />
70
72
  </div>
71
73
  </div>
72
- <div class="row mb-10">
73
- <div class="col span-6">
74
+ <div class="row">
75
+ <div class="col">
74
76
  <RadioGroup
75
77
  v-model:value="value.azureDisk.kind"
76
78
  :mode="mode"
@@ -80,7 +82,9 @@ export default {
80
82
  :labels="[t('workload.storage.csi.kind.options.dedicated'), t('workload.storage.csi.kind.options.managed'), t('workload.storage.csi.kind.options.shared')]"
81
83
  />
82
84
  </div>
83
- <div class="col span-6">
85
+ </div>
86
+ <div class="row">
87
+ <div class="col">
84
88
  <RadioGroup
85
89
  v-model:value="value.azureDisk.cachingMode"
86
90
  name="cachingMode"
@@ -92,7 +96,7 @@ export default {
92
96
  </div>
93
97
  </div>
94
98
  <div class="row">
95
- <div class="col span-6">
99
+ <div class="col">
96
100
  <LabeledInput
97
101
  v-model:value="value.azureDisk.fsType"
98
102
  :mode="mode"