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

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 (164) hide show
  1. package/assets/brand/csp/favicon.png +0 -0
  2. package/assets/icons/iconfont.css +4 -1
  3. package/assets/images/pl/dark/logo.png +0 -0
  4. package/assets/styles/all.scss +23 -3
  5. package/assets/styles/base/_variables.scss +2 -2
  6. package/assets/styles/fonts/_icons.scss +3 -2
  7. package/assets/styles/global/_button.scss +1 -1
  8. package/assets/styles/global/_form.scss +1 -0
  9. package/assets/styles/global/_select.scss +1 -1
  10. package/assets/styles/global/_tooltip.scss +5 -1
  11. package/assets/styles/themes/_light.scss +3 -3
  12. package/assets/styles/vendor/vue-select.scss +2 -1
  13. package/assets/translations/en-us.yaml +60 -0
  14. package/assets/translations/zh-hans.yaml +164 -21
  15. package/components/ButtonDropdown.vue +3 -1
  16. package/components/ClusterIconMenu.vue +1 -1
  17. package/components/CodeMirror.vue +6 -4
  18. package/components/ConsumptionGauge.vue +1 -1
  19. package/components/ContainerResourceLimit.vue +2 -2
  20. package/components/CruResource.vue +3 -2
  21. package/components/Drawer/ResourceDetailDrawer/ConfigTab.vue +22 -19
  22. package/components/Drawer/ResourceDetailDrawer/index.vue +3 -3
  23. package/components/ExplorerMembers.vue +10 -1
  24. package/components/GlobalRoleBindings.vue +52 -112
  25. package/components/PodSecurityAdmission.vue +1 -1
  26. package/components/PromptRemove.vue +23 -1
  27. package/components/RelatedResources.vue +3 -0
  28. package/components/Resource/Detail/TitleBar/composables.ts +16 -1
  29. package/components/Resource/Detail/TitleBar/index.vue +37 -24
  30. package/components/ResourceDetail/Masthead/index.vue +1 -1
  31. package/components/ResourceDetail/Masthead/latest.vue +1 -1
  32. package/components/ResourceDetail/Masthead/legacy.vue +8 -7
  33. package/components/ResourceDetail/legacy.vue +15 -15
  34. package/components/ResourceList/Masthead.vue +11 -15
  35. package/components/ResourceTable.vue +16 -0
  36. package/components/SideNav.vue +21 -21
  37. package/components/SingleClusterInfo.vue +2 -1
  38. package/components/SortableTable/THead.vue +46 -1
  39. package/components/SortableTable/index.vue +54 -18
  40. package/components/Tabbed/index.vue +6 -1
  41. package/components/auth/Principal.vue +16 -8
  42. package/components/auth/RoleDetailEdit.vue +11 -7
  43. package/components/breadcrumb/index.vue +13 -210
  44. package/components/form/ArrayList.vue +164 -147
  45. package/components/form/ArrayListGrouped.vue +5 -3
  46. package/components/form/ChangePassword.vue +1 -1
  47. package/components/form/ClusterAppearance.vue +4 -3
  48. package/components/form/Command.vue +4 -5
  49. package/components/form/Conditions.vue +15 -1
  50. package/components/form/Footer.vue +1 -0
  51. package/components/form/HealthCheck.vue +0 -2
  52. package/components/form/HookOption.vue +87 -58
  53. package/components/form/InputWithSelect.vue +8 -7
  54. package/components/form/KeyValue.vue +20 -2
  55. package/components/form/LabeledSelect.vue +3 -1
  56. package/components/form/Labels.vue +2 -2
  57. package/components/form/MatchExpressions.vue +4 -4
  58. package/components/form/Members/ClusterMembershipEditor.vue +1 -1
  59. package/components/form/Members/ClusterPermissionsEditor.vue +31 -28
  60. package/components/form/Members/MembershipEditor.vue +3 -3
  61. package/components/form/Members/ProjectMembershipEditor.vue +1 -1
  62. package/components/form/NameNsDescription.vue +4 -2
  63. package/components/form/Networking.vue +6 -9
  64. package/components/form/NodeAffinity.vue +29 -28
  65. package/components/form/PodAffinity.vue +23 -23
  66. package/components/form/Probe.vue +15 -11
  67. package/components/form/ProjectMemberEditor.vue +28 -25
  68. package/components/form/ResourceQuota/Namespace.vue +4 -4
  69. package/components/form/ResourceQuota/NamespaceRow.vue +11 -9
  70. package/components/form/ResourceQuota/Project.vue +4 -4
  71. package/components/form/ResourceQuota/ProjectRow.vue +36 -30
  72. package/components/form/ResourceSelector.vue +1 -1
  73. package/components/form/Security.vue +1 -3
  74. package/components/form/Select.vue +7 -1
  75. package/components/form/ServiceNameSelect.vue +2 -5
  76. package/components/form/ServicePorts.vue +149 -75
  77. package/components/form/Tolerations.vue +13 -9
  78. package/components/form/ValueFromResource.vue +110 -96
  79. package/components/formatter/WorkloadHealthScale.vue +4 -3
  80. package/components/nav/Group.vue +6 -0
  81. package/components/nav/Header.vue +17 -137
  82. package/components/nav/NamespaceFilter.vue +14 -19
  83. package/components/nav/TopLevelMenu.vue +99 -125
  84. package/components/nav/Type.vue +11 -3
  85. package/config/menuRouteMap.js +10 -0
  86. package/config/product/explorer.js +32 -10
  87. package/config/product/manager.js +28 -17
  88. package/config/router/navigation-guards/index.js +61 -3
  89. package/detail/node.vue +28 -23
  90. package/dialog/AddCustomBadgeDialog.vue +17 -9
  91. package/dialog/RollbackWorkloadDialog.vue +1 -1
  92. package/edit/autoscaling.horizontalpodautoscaler/external-metric.vue +1 -1
  93. package/edit/autoscaling.horizontalpodautoscaler/hpa-scaling-rule.vue +9 -6
  94. package/edit/autoscaling.horizontalpodautoscaler/index.vue +3 -1
  95. package/edit/autoscaling.horizontalpodautoscaler/metric-identifier.vue +2 -2
  96. package/edit/autoscaling.horizontalpodautoscaler/metric-object-reference.vue +7 -5
  97. package/edit/autoscaling.horizontalpodautoscaler/metric-target.vue +5 -3
  98. package/edit/autoscaling.horizontalpodautoscaler/metrics-row.vue +2 -2
  99. package/edit/autoscaling.horizontalpodautoscaler/object-metric.vue +2 -2
  100. package/edit/autoscaling.horizontalpodautoscaler/pod-metric.vue +1 -1
  101. package/edit/autoscaling.horizontalpodautoscaler/resource-metric.vue +2 -2
  102. package/edit/configmap.vue +4 -0
  103. package/edit/monitoring.coreos.com.alertmanagerconfig/receiverConfig.vue +32 -8
  104. package/edit/monitoring.coreos.com.alertmanagerconfig/types/dingding.vue +32 -0
  105. package/edit/monitoring.coreos.com.alertmanagerconfig/types/message.vue +52 -0
  106. package/edit/monitoring.coreos.com.alertmanagerconfig/types/snmp.vue +45 -0
  107. package/edit/monitoring.coreos.com.alertmanagerconfig/types/work.vue +31 -0
  108. package/edit/networking.k8s.io.ingress/Certificate.vue +14 -5
  109. package/edit/networking.k8s.io.ingress/DefaultBackend.vue +2 -2
  110. package/edit/networking.k8s.io.ingress/Rule.vue +5 -11
  111. package/edit/networking.k8s.io.ingress/RulePath.vue +105 -96
  112. package/edit/networking.k8s.io.networkpolicy/PolicyRule.vue +3 -3
  113. package/edit/networking.k8s.io.networkpolicy/PolicyRulePort.vue +4 -2
  114. package/edit/networking.k8s.io.networkpolicy/PolicyRuleTarget.vue +12 -11
  115. package/edit/networking.k8s.io.networkpolicy/index.vue +1 -1
  116. package/edit/persistentvolume/index.vue +3 -1
  117. package/edit/persistentvolumeclaim.vue +2 -0
  118. package/edit/provisioning.cattle.io.cluster/tabs/Basics.vue +1 -1
  119. package/edit/secret/index.vue +2 -2
  120. package/edit/service.vue +4 -1
  121. package/edit/storage.k8s.io.storageclass/index.vue +10 -8
  122. package/edit/storage.k8s.io.storageclass/provisioners/kubernetes.io/aws-ebs.vue +34 -27
  123. package/edit/storage.k8s.io.storageclass/provisioners/kubernetes.io/gce-pd.vue +15 -13
  124. package/edit/storage.k8s.io.storageclass/provisioners/kubernetes.io/vsphere-volume.vue +41 -39
  125. package/edit/workload/Job.vue +31 -34
  126. package/edit/workload/Upgrading.vue +5 -5
  127. package/edit/workload/index.vue +19 -15
  128. package/edit/workload/storage/Mount.vue +1 -0
  129. package/edit/workload/storage/awsElasticBlockStore.vue +9 -7
  130. package/edit/workload/storage/azureDisk.vue +14 -10
  131. package/edit/workload/storage/azureFile.vue +9 -7
  132. package/edit/workload/storage/csi/index.vue +6 -9
  133. package/edit/workload/storage/emptyDir.vue +7 -5
  134. package/edit/workload/storage/gcePersistentDisk.vue +9 -7
  135. package/edit/workload/storage/hostPath.vue +7 -5
  136. package/edit/workload/storage/nfs.vue +8 -6
  137. package/edit/workload/storage/persistentVolumeClaim/index.vue +12 -10
  138. package/edit/workload/storage/persistentVolumeClaim/persistentvolumeclaim.vue +20 -15
  139. package/edit/workload/storage/secret.vue +9 -6
  140. package/edit/workload/storage/vsphereVolume.vue +11 -7
  141. package/initialize/app-extended.js +7 -1
  142. package/list/management.cattle.io.podsecurityadmissionconfigurationtemplate.vue +8 -6
  143. package/mixins/create-edit-view/impl.js +10 -0
  144. package/models/provisioning.cattle.io.cluster.js +19 -18
  145. package/models/workload.js +2 -2
  146. package/package.json +1 -1
  147. package/pages/account/index.vue +93 -58
  148. package/pages/auth/login.vue +1 -1
  149. package/pages/auth/setup.vue +36 -17
  150. package/pages/c/_cluster/explorer/ConfigBadge.vue +1 -1
  151. package/pages/c/_cluster/explorer/index.vue +2 -1
  152. package/pages/c/_cluster/explorer/tools/index.vue +6 -6
  153. package/pages/home.vue +55 -13
  154. package/plugins/dashboard-store/actions.js +1 -1
  155. package/rancher-components/Banner/Banner.vue +14 -2
  156. package/rancher-components/Form/Radio/RadioGroup.vue +9 -1
  157. package/rancher-components/LabeledTooltip/LabeledTooltip.vue +31 -2
  158. package/scripts/build-pkg.sh +18 -23
  159. package/scripts/publish-shell.sh +1 -1
  160. package/store/i18n.js +1 -0
  161. package/store/type-map.js +0 -2
  162. package/utils/error.js +23 -3
  163. package/utils/errorTranslate.json +377 -8
  164. package/utils/errorTranslateNew.json +39 -0
@@ -263,174 +263,180 @@ export default {
263
263
  role="group"
264
264
  :aria-label="title || t('generic.ariaLabel.arrayList')"
265
265
  >
266
- <div
267
- v-if="title"
268
- class="clearfix"
269
- role="group"
270
- >
271
- <slot name="title">
272
- <h3>
273
- {{ title }}
274
- <span
275
- v-if="required"
276
- class="required"
277
- aria-hidden="true"
278
- >*</span>
279
- <i
280
- v-if="showProtip"
281
- v-clean-tooltip="{content: protip, triggers: ['hover', 'touch', 'focus'] }"
282
- class="icon icon-info"
283
- tabindex="0"
284
- />
285
- </h3>
286
- </slot>
287
- </div>
288
266
 
289
- <div>
290
- <div
291
- v-if="showAdd && !isView"
292
- class="footer mmt-6"
293
- >
294
- <slot
295
- v-if="showAdd"
296
- name="add"
297
- :add="add"
298
- >
299
- <button
300
- type="button"
301
- class="btn role-tertiary add"
302
- :class="[addClass]"
303
- :disabled="loading || disableAdd"
304
- :data-testid="`${componentTestid}-button`"
305
- :aria-label="_addLabel"
306
- role="button"
307
- @click="add()"
308
- >
309
- <i
310
- class="mr-5 icon"
311
- :class="loading ? ['icon-lg', 'icon-spinner','icon-spin']: [addIcon]"
312
- />
313
- {{ _addLabel }}
314
- </button>
315
- </slot>
316
- </div>
317
- <template v-if="rows.length">
267
+ <div class="row">
268
+ <div v-if="title" style="width: 100%;" class="col">
318
269
  <div
319
- v-if="showHeader"
320
- class="array-list-header-group"
270
+ class="clearfix"
321
271
  role="group"
322
272
  >
323
- <slot name="column-headers">
324
- <label class="value text-label mb-10">
325
- {{ valueLabel }}
326
- </label>
273
+ <slot name="title">
274
+ <h3>
275
+ {{ title }}
276
+ <span
277
+ v-if="required"
278
+ class="required"
279
+ aria-hidden="true"
280
+ >*</span>
281
+ <i
282
+ v-if="showProtip"
283
+ v-clean-tooltip="{content: protip, triggers: ['hover', 'touch', 'focus'] }"
284
+ class="icon icon-info"
285
+ tabindex="0"
286
+ />
287
+ </h3>
327
288
  </slot>
328
289
  </div>
329
- <div
330
- v-for="(row, idx) in rows"
331
- :key="idx"
332
- :data-testid="`${componentTestid}-box${ idx }`"
333
- class="box"
334
- :class="{'hide-remove-is-view': isView}"
335
- role="group"
336
- >
337
- <slot
338
- name="columns"
339
- :queueUpdate="queueUpdate"
340
- :i="idx"
341
- :rows="rows"
342
- :row="row"
343
- :mode="mode"
344
- :isView="isView"
345
- >
346
- <div class="value">
290
+ </div>
291
+ <div style="width: 100%;" class="col">
292
+ <div>
293
+ <template v-if="rows.length">
294
+ <div
295
+ v-if="showHeader"
296
+ class="array-list-header-group"
297
+ role="group"
298
+ >
299
+ <slot name="column-headers">
300
+ <label class="value text-label mb-10">
301
+ {{ valueLabel }}
302
+ </label>
303
+ </slot>
304
+ </div>
305
+ <div
306
+ v-for="(row, idx) in rows"
307
+ :key="idx"
308
+ :data-testid="`${componentTestid}-box${ idx }`"
309
+ class="box"
310
+ :class="{'hide-remove-is-view': isView}"
311
+ role="group"
312
+ >
347
313
  <slot
348
- name="value"
314
+ name="columns"
315
+ :queueUpdate="queueUpdate"
316
+ :i="idx"
317
+ :rows="rows"
349
318
  :row="row"
350
319
  :mode="mode"
351
320
  :isView="isView"
352
- :queue-update="queueUpdate"
353
321
  >
354
- <TextAreaAutoGrow
355
- v-if="valueMultiline"
356
- ref="value"
357
- v-model:value="row.value"
358
- :data-testid="`${componentTestid}-textarea-${idx}`"
359
- :placeholder="valuePlaceholder"
360
- :mode="mode"
361
- :disabled="disabled"
362
- :aria-label="a11yLabel ? `${a11yLabel} ${t('generic.ariaLabel.genericRow', {index: idx+1})}` : undefined"
363
- @paste="onPaste(idx, $event)"
364
- @update:value="queueUpdate"
365
- />
366
- <LabeledInput
367
- v-else-if="rules.length > 0"
368
- ref="value"
369
- v-model:value="row.value"
370
- :data-testid="`${componentTestid}-labeled-input-${idx}`"
371
- :placeholder="valuePlaceholder"
372
- :disabled="isView || disabled"
373
- :rules="rules"
374
- :compact="false"
375
- :aria-label="a11yLabel ? `${a11yLabel} ${t('generic.ariaLabel.genericRow', {index: idx+1})}` : undefined"
376
- @paste="onPaste(idx, $event)"
377
- @update:value="queueUpdate"
378
- />
379
- <input
380
- v-else
381
- ref="value"
382
- v-model="row.value"
383
- :data-testid="`${componentTestid}-input-${idx}`"
384
- :placeholder="valuePlaceholder"
385
- :disabled="isView || disabled"
386
- :aria-label="a11yLabel ? `${a11yLabel} ${t('generic.ariaLabel.genericRow', {index: idx+1})}` : undefined"
387
- @paste="onPaste(idx, $event)"
388
- >
322
+ <div class="value">
323
+ <slot
324
+ name="value"
325
+ :row="row"
326
+ :mode="mode"
327
+ :isView="isView"
328
+ :queue-update="queueUpdate"
329
+ >
330
+ <TextAreaAutoGrow
331
+ v-if="valueMultiline"
332
+ ref="value"
333
+ v-model:value="row.value"
334
+ :data-testid="`${componentTestid}-textarea-${idx}`"
335
+ :placeholder="valuePlaceholder"
336
+ :mode="mode"
337
+ :disabled="disabled"
338
+ :aria-label="a11yLabel ? `${a11yLabel} ${t('generic.ariaLabel.genericRow', {index: idx+1})}` : undefined"
339
+ @paste="onPaste(idx, $event)"
340
+ @update:value="queueUpdate"
341
+ />
342
+ <LabeledInput
343
+ v-else-if="rules.length > 0"
344
+ ref="value"
345
+ v-model:value="row.value"
346
+ :data-testid="`${componentTestid}-labeled-input-${idx}`"
347
+ :placeholder="valuePlaceholder"
348
+ :disabled="isView || disabled"
349
+ :rules="rules"
350
+ :compact="false"
351
+ :aria-label="a11yLabel ? `${a11yLabel} ${t('generic.ariaLabel.genericRow', {index: idx+1})}` : undefined"
352
+ @paste="onPaste(idx, $event)"
353
+ @update:value="queueUpdate"
354
+ />
355
+ <input
356
+ v-else
357
+ ref="value"
358
+ v-model="row.value"
359
+ :data-testid="`${componentTestid}-input-${idx}`"
360
+ :placeholder="valuePlaceholder"
361
+ :disabled="isView || disabled"
362
+ :aria-label="a11yLabel ? `${a11yLabel} ${t('generic.ariaLabel.genericRow', {index: idx+1})}` : undefined"
363
+ @paste="onPaste(idx, $event)"
364
+ >
365
+ </slot>
366
+ </div>
389
367
  </slot>
368
+ <div
369
+ v-if="showRemove && !isView"
370
+ class="remove"
371
+ >
372
+ <slot
373
+ name="remove-button"
374
+ :remove="() => remove(row, idx)"
375
+ :i="idx"
376
+ :row="row"
377
+ >
378
+ <button
379
+ type="button"
380
+ :disabled="isView"
381
+ class="btn role-link"
382
+ :data-testid="`${componentTestid}-remove-item-${idx}`"
383
+ :aria-label="t('generic.ariaLabel.remove', {index: idx+1})"
384
+ role="button"
385
+ @click="remove(row, idx)"
386
+ >
387
+ {{ _removeLabel }}
388
+ </button>
389
+ </slot>
390
+ </div>
391
+ <slot
392
+ name="value-sub-row"
393
+ :row="row"
394
+ :mode="mode"
395
+ :isView="isView"
396
+ />
390
397
  </div>
391
- </slot>
398
+ </template>
399
+ <div v-else>
400
+ <slot name="empty">
401
+ <div
402
+ v-if="mode==='view'"
403
+ class="text-muted"
404
+ >
405
+ &mdash;
406
+ </div>
407
+ </slot>
408
+ </div>
392
409
  <div
393
- v-if="showRemove && !isView"
394
- class="remove"
410
+ v-if="showAdd && !isView"
411
+ class="footer"
395
412
  >
396
413
  <slot
397
- name="remove-button"
398
- :remove="() => remove(row, idx)"
399
- :i="idx"
400
- :row="row"
414
+ v-if="showAdd"
415
+ name="add"
416
+ :add="add"
401
417
  >
402
418
  <button
403
419
  type="button"
404
- :disabled="isView"
405
- class="btn role-link"
406
- :data-testid="`${componentTestid}-remove-item-${idx}`"
407
- :aria-label="t('generic.ariaLabel.remove', {index: idx+1})"
420
+ class="btn role-tertiary add"
421
+ :class="[addClass]"
422
+ :disabled="loading || disableAdd"
423
+ :data-testid="`${componentTestid}-button`"
424
+ :aria-label="_addLabel"
408
425
  role="button"
409
- @click="remove(row, idx)"
426
+ @click="add()"
410
427
  >
411
- {{ _removeLabel }}
428
+ <i
429
+ class="mr-5 icon"
430
+ :class="loading ? ['icon-lg', 'icon-spinner','icon-spin']: [addIcon]"
431
+ />
432
+ {{ _addLabel }}
412
433
  </button>
413
434
  </slot>
414
435
  </div>
415
- <slot
416
- name="value-sub-row"
417
- :row="row"
418
- :mode="mode"
419
- :isView="isView"
420
- />
421
436
  </div>
422
- </template>
423
- <div v-else>
424
- <slot name="empty">
425
- <div
426
- v-if="mode==='view'"
427
- class="text-muted"
428
- >
429
- &mdash;
430
- </div>
431
- </slot>
432
437
  </div>
433
438
  </div>
439
+
434
440
  </div>
435
441
  </template>
436
442
 
@@ -444,13 +450,15 @@ export default {
444
450
  }
445
451
 
446
452
  .box {
447
- display: grid;
448
- grid-template-columns: auto $array-list-remove-margin;
449
- align-items: center;
450
- margin-bottom: 10px;
453
+ // display: grid;
454
+ // grid-template-columns: auto $array-list-remove-margin;
455
+ // align-items: center;
456
+ // margin-bottom: 10px;
457
+ display: flex;
451
458
  .value {
452
- flex: 1;
459
+ // flex: 1;
453
460
  INPUT {
461
+ width: $input-width;
454
462
  height: $input-height;
455
463
  border: solid var(--border-width) var(--input-border);
456
464
  padding: 4px 11px;
@@ -462,9 +470,15 @@ export default {
462
470
  }
463
471
  .remove {
464
472
  text-align: right;
473
+ display: flex;
474
+ align-items: center;
475
+
476
+ button{
477
+ min-width: auto;
478
+ }
465
479
  }
466
480
  .footer {
467
- margin-bottom: 24px;
481
+ margin-bottom: 20px;
468
482
  .protip {
469
483
  float: right;
470
484
  padding: 5px 0;
@@ -481,4 +495,7 @@ export default {
481
495
  margin-bottom: 10px;
482
496
  }
483
497
 
498
+ H3{
499
+ width: 160px;
500
+ }
484
501
  </style>
@@ -120,15 +120,16 @@ export default {
120
120
 
121
121
  <style lang="scss">
122
122
  .array-list-grouped {
123
- & > .box {
123
+ .box {
124
+ border: 0px solid var(--tabbed-border) !important;
124
125
  position: relative;
125
126
  display: block;
126
127
 
127
128
  & > .remove {
128
129
  position: absolute;
129
130
 
130
- top: 10px;
131
- right: 10px;
131
+ top: 0px !important;
132
+ right: 0px !important;
132
133
  & > .close{
133
134
  width: 32px;
134
135
  min-width: 32px !important;
@@ -140,6 +141,7 @@ export default {
140
141
  }
141
142
 
142
143
  & > .info-box {
144
+ border: 1px solid var(--tabbed-border) !important;
143
145
  margin-bottom: 0;
144
146
  padding-right: 25px;
145
147
  }
@@ -432,7 +432,7 @@ export default {
432
432
  }
433
433
 
434
434
  &.create, &.edit {
435
- height: 185px;
435
+ height: 160px;
436
436
  .form {
437
437
  .fields {
438
438
  display: flex;
@@ -88,11 +88,12 @@ export default {
88
88
  <style lang="scss" scoped>
89
89
  .cluster-appearance {
90
90
  display: flex;
91
- flex-direction: column;
92
- margin: 3px 35px 0px 0px;
91
+ // flex-direction: column;
92
+ // align-items: center;
93
+ // margin: 3px 35px 0px 0px;
93
94
 
94
95
  label {
95
- margin: 6px 0 0;
96
+ margin: 10px 10px 0 0;
96
97
  }
97
98
 
98
99
  &-preview {
@@ -146,9 +146,9 @@ export default {
146
146
  </div>
147
147
  </div>
148
148
 
149
- <div class="row mt-20">
149
+ <div class="row">
150
150
  <div
151
- class="col span-6"
151
+ class="span-6"
152
152
  data-testid="input-command-workingDir"
153
153
  >
154
154
  <LabeledInput
@@ -159,13 +159,13 @@ export default {
159
159
  @update:value="update"
160
160
  />
161
161
  </div>
162
- <div class="col span-6">
162
+ <div class="span-6">
163
163
  <div
164
164
  :style="{ 'align-items': 'center' }"
165
165
  class="row"
166
166
  >
167
167
  <div
168
- class="col span-6"
168
+ class="col"
169
169
  data-testid="input-command-stdin"
170
170
  >
171
171
  <LabeledSelect
@@ -191,7 +191,6 @@ export default {
191
191
  </div>
192
192
  </div>
193
193
  </div>
194
- <div class="spacer" />
195
194
  <h3>{{ t('workload.container.titles.env') }}</h3>
196
195
  <EnvVars
197
196
  :mode="mode"
@@ -68,6 +68,20 @@ export default {
68
68
  };
69
69
  });
70
70
  },
71
+ },
72
+ methods: {
73
+ hans(row) {
74
+ const conditionMap = {
75
+ 'DiskPressure': '磁盘压力',
76
+ 'MemoryPressure': '内存压力',
77
+ 'PIDPressure': '进程数压力',
78
+ 'Ready': '就绪状态',
79
+ 'EtcdIsVoter': 'Etcd投票成员',
80
+ 'NetworkUnavailable': '网络不可用',
81
+ };
82
+
83
+ return conditionMap[row.condition] || row.condition;
84
+ }
71
85
  }
72
86
  };
73
87
  </script>
@@ -83,7 +97,7 @@ export default {
83
97
  :search="false"
84
98
  >
85
99
  <template #cell:condition="{row}">
86
- <span :class="{'text-error': row.error}">{{ row.condition }}</span>
100
+ <span :class="{'text-error': row.error}">{{ hans(row) }}</span>
87
101
  </template>
88
102
 
89
103
  <template #cell:status="{row}">
@@ -105,6 +105,7 @@ export default defineComponent({
105
105
  .left {
106
106
  grid-area: left;
107
107
  text-align: left;
108
+ margin-right: 10px;
108
109
 
109
110
  .btn, button {
110
111
  margin: 0 $column-gutter 0 0;
@@ -56,7 +56,6 @@ export default {
56
56
  />
57
57
  </div>
58
58
  </div>
59
- <div class="spacer" />
60
59
 
61
60
  <div>
62
61
  <div class="row">
@@ -70,7 +69,6 @@ export default {
70
69
  />
71
70
  </div>
72
71
  </div>
73
- <div class="spacer" />
74
72
 
75
73
  <div class="row">
76
74
  <Probe