dashboard-shell-shell 1.0.111 → 1.0.113
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/.DS_Store +0 -0
- package/assets/icons/demo.css +539 -0
- package/assets/icons/demo_index.html +1131 -0
- package/assets/icons/iconfont.css +200 -0
- package/assets/icons/iconfont.js +1 -0
- package/assets/icons/iconfont.json +296 -0
- package/assets/icons/iconfont.ttf +0 -0
- package/assets/icons/iconfont.woff +0 -0
- package/assets/icons/iconfont.woff2 +0 -0
- package/assets/images/API.svg +3 -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/harvester.png +0 -0
- package/assets/images/promp-yellow.svg +5 -0
- package/assets/images/user.png +0 -0
- package/assets/styles/all.scss +63 -0
- package/assets/styles/app.scss +2 -0
- package/assets/styles/base/_basic.scss +8 -2
- package/assets/styles/base/_helpers.scss +4 -0
- package/assets/styles/base/_typography.scss +2 -1
- package/assets/styles/base/_variables.scss +10 -2
- package/assets/styles/global/_button.scss +37 -25
- package/assets/styles/global/_columns.scss +3 -1
- package/assets/styles/global/_form.scss +45 -13
- package/assets/styles/global/_labeled-input.scss +50 -25
- package/assets/styles/global/_layout.scss +9 -3
- package/assets/styles/global/_select.scss +20 -13
- package/assets/styles/global/_table.scss +1 -1
- package/assets/styles/global/_tooltip.scss +47 -6
- package/assets/styles/themes/_dark.scss +1 -0
- package/assets/styles/themes/_light.scss +59 -46
- package/assets/styles/themes/_suse.scss +1 -0
- package/assets/styles/vendor/vue-select.scss +18 -7
- package/assets/translations/en-us.yaml +93 -12
- package/assets/translations/zh-hans.yaml +278 -141
- package/components/ActionDropdown.vue +1 -1
- package/components/ActionDropdownShell.vue +71 -0
- package/components/ActionMenu.vue +2 -2
- package/components/ActionMenuShell.vue +1 -0
- package/components/AppModal.vue +78 -6
- package/components/AssignTo.vue +25 -11
- package/components/AsyncButton.vue +24 -7
- package/components/BannerGraphic.vue +1 -0
- package/components/ButtonDropdown.vue +26 -4
- package/components/ButtonGroup.vue +4 -0
- package/components/ButtonMultiAction.vue +1 -0
- package/components/CommunityLinks.vue +3 -3
- package/components/ConsumptionGauge.vue +24 -5
- package/components/CopyToClipboardText.vue +2 -1
- package/components/CruResource.vue +12 -7
- package/components/CruResourceFooter.vue +2 -2
- package/components/DashboardOptions.vue +21 -15
- package/components/DetailText.vue +5 -0
- package/components/DisableAuthProviderModal.vue +1 -0
- package/components/DotState.vue +84 -0
- package/components/ExplorerMembers.vue +1 -1
- package/components/ExplorerProjectsNamespaces.vue +56 -14
- package/components/FixedBanner.vue +19 -12
- package/components/GlobalRoleBindings.vue +5 -1
- package/components/GrafanaDashboard.vue +4 -4
- package/components/GrowlManager.vue +4 -1
- package/components/HardwareResourceGauge.vue +39 -3
- package/components/InfoBox.vue +3 -3
- package/components/InputOrDisplay.vue +28 -2
- package/components/LabelValue.vue +16 -1
- package/components/LandingPagePreference.vue +5 -3
- package/components/LocaleSelector.vue +39 -93
- package/components/ModalManager.vue +55 -0
- package/components/ModalWithCard.vue +2 -0
- package/components/MoveModal.vue +1 -0
- package/components/PromptChangePassword.vue +1 -1
- package/components/PromptModal.vue +15 -2
- package/components/PromptRemove.vue +28 -8
- package/components/PromptRestore.vue +1 -0
- package/components/ResourceCancelModal.vue +1 -0
- package/components/ResourceDetail/Masthead.vue +188 -43
- package/components/ResourceDetail/__tests__/Masthead.test.ts +5 -1
- package/components/ResourceDetail/index.vue +49 -14
- package/components/ResourceList/Masthead.vue +80 -18
- package/components/ResourceTable.vue +60 -19
- package/components/SideNav.vue +32 -12
- package/components/SlideInPanelManager.vue +126 -0
- package/components/SortableTable/THead.vue +34 -5
- package/components/SortableTable/actions.js +1 -1
- package/components/SortableTable/index.vue +649 -142
- package/components/SortableTable/paging.js +36 -28
- package/components/SortableTable/selection.js +0 -11
- package/components/StatusBadge.vue +77 -0
- package/components/Tabbed/Tab.vue +3 -3
- package/components/Tabbed/index.vue +44 -26
- package/components/Wizard.vue +2 -2
- package/components/__tests__/AsyncButton.test.ts +2 -2
- package/components/__tests__/FixedBanner.test.ts +3 -3
- package/components/__tests__/ModalManager.spec.ts +176 -0
- package/components/__tests__/SlideInPanelManager.spec.ts +166 -0
- package/components/auth/Principal.vue +10 -3
- package/components/auth/__tests__/RoleDetailEdit.test.ts +3 -2
- package/components/form/ArrayList.vue +123 -85
- package/components/form/ArrayListGrouped.vue +10 -2
- package/components/form/Command.vue +6 -15
- package/components/form/EnvVars.vue +16 -8
- package/components/form/Footer.vue +8 -5
- package/components/form/HealthCheck.vue +3 -3
- package/components/form/HookOption.vue +11 -16
- package/components/form/KeyValue.vue +16 -7
- package/components/form/LabeledSelect.vue +59 -76
- package/components/form/LifecycleHooks.vue +3 -3
- package/components/form/MatchExpressions.vue +35 -12
- package/components/form/NameNsDescription.vue +147 -115
- package/components/form/Networking.vue +20 -12
- package/components/form/NodeAffinity.vue +31 -23
- package/components/form/NodeScheduling.vue +13 -3
- package/components/form/Password.vue +11 -5
- package/components/form/PodAffinity.vue +43 -44
- package/components/form/Probe.vue +68 -66
- package/components/form/ResourceQuota/Project.vue +5 -1
- package/components/form/ResourceSelector.vue +7 -9
- package/components/form/SSHKnownHosts/KnownHostsEditDialog.vue +6 -3
- package/components/form/SSHKnownHosts/__tests__/KnownHostsEditDialog.test.ts +12 -1
- package/components/form/SSHKnownHosts/index.vue +16 -2
- package/components/form/Security.vue +54 -56
- package/components/form/Select.vue +41 -7
- package/components/form/ShellInput.vue +5 -1
- package/components/form/Tolerations.vue +5 -1
- package/components/form/UnitInput.vue +2 -2
- package/components/form/ValueFromResource.vue +134 -121
- package/components/form/WorkloadPorts.vue +18 -18
- package/components/form/__tests__/ArrayList.test.ts +5 -2
- package/components/form/__tests__/MatchExpressions.test.ts +12 -12
- package/components/form/__tests__/NameNsDescription.test.ts +115 -14
- package/components/form/__tests__/Probe.test.ts +12 -8
- package/components/form/__tests__/SSHKnownHosts.test.ts +11 -0
- package/components/form/__tests__/Select.test.ts +37 -0
- package/components/form/__tests__/UnitInput.test.ts +4 -5
- package/components/formatter/BadgeStateFormatter.vue +8 -5
- package/components/formatter/InternalExternalIP.vue +2 -0
- package/components/formatter/SecretData.vue +20 -7
- package/components/nav/Favorite.vue +5 -1
- package/components/nav/Group.vue +60 -27
- package/components/nav/Header.vue +39 -13
- package/components/nav/Jump.vue +7 -0
- package/components/nav/NamespaceFilter.vue +14 -8
- package/components/nav/Pinned.vue +1 -1
- package/components/nav/TopLevelMenu.vue +5 -17
- package/components/nav/Type.vue +32 -35
- package/components/nav/__tests__/TopLevelMenu.test.ts +0 -40
- package/components/templates/blank.vue +4 -1
- package/components/templates/default.vue +8 -0
- package/components/templates/home.vue +10 -1
- package/components/templates/plain.vue +10 -1
- package/package.json +1 -1
- package/rancher-components/Banner/Banner.vue +6 -4
- package/rancher-components/Card/Card.vue +6 -4
- package/rancher-components/Form/Checkbox/Checkbox.vue +20 -1
- package/rancher-components/Form/LabeledInput/LabeledInput.vue +46 -5
- package/rancher-components/Form/Radio/RadioButton.vue +32 -8
- package/rancher-components/Form/Radio/RadioGroup.vue +31 -24
- package/rancher-components/Form/ToggleSwitch/ToggleSwitch.test.ts +17 -0
- package/rancher-components/Form/ToggleSwitch/ToggleSwitch.vue +8 -3
- package/rancher-components/LabeledTooltip/LabeledTooltip.vue +15 -3
- package/rancher-components/RcButton/RcButton.vue +1 -0
- package/rancher-components/RcButton/types.ts +1 -0
- package/rancher-components/RcDropdown/RcDropdown.vue +54 -15
- package/rancher-components/RcDropdown/RcDropdownItem.vue +5 -4
- package/rancher-components/RcDropdown/RcDropdownMenu.vue +11 -7
- package/rancher-components/RcDropdown/RcDropdownTrigger.vue +12 -2
- package/rancher-components/RcDropdown/useDropdownCollection.ts +8 -0
- package/rancher-components/RcDropdown/useDropdownContext.ts +9 -3
- package/rancher-components/StringList/StringList.vue +1 -1
- package/store/type-map.js +29 -2
- package/utils/error.js +30 -8
- package/utils/errorTranslate.json +916 -0
- package/vue.config.js +1 -1
- package/components/formatter/ExtensionCache.vue +0 -74
- package/components/formatter/Port.vue +0 -24
- package/components/formatter/SecretType.vue +0 -41
|
@@ -28,23 +28,18 @@ export default {
|
|
|
28
28
|
},
|
|
29
29
|
|
|
30
30
|
data() {
|
|
31
|
-
const selectHook = null;
|
|
32
|
-
|
|
33
|
-
const defaultExec = { exec: { command: [] } };
|
|
34
|
-
const defaultHttpGet = {
|
|
35
|
-
httpGet: {
|
|
36
|
-
host: '',
|
|
37
|
-
path: '',
|
|
38
|
-
port: null,
|
|
39
|
-
scheme: '',
|
|
40
|
-
httpHeaders: null
|
|
41
|
-
}
|
|
42
|
-
};
|
|
43
|
-
|
|
44
31
|
return {
|
|
45
|
-
selectHook,
|
|
46
|
-
defaultExec,
|
|
47
|
-
defaultHttpGet
|
|
32
|
+
selectHook: null,
|
|
33
|
+
defaultExec: { exec: { command: [] } },
|
|
34
|
+
defaultHttpGet: {
|
|
35
|
+
httpGet: {
|
|
36
|
+
host: '',
|
|
37
|
+
path: '',
|
|
38
|
+
port: null,
|
|
39
|
+
scheme: '',
|
|
40
|
+
httpHeaders: null
|
|
41
|
+
}
|
|
42
|
+
},
|
|
48
43
|
schemeOptions: ['HTTP', 'HTTPS']
|
|
49
44
|
};
|
|
50
45
|
},
|
|
@@ -277,7 +277,7 @@ export default {
|
|
|
277
277
|
const gap = this.canRemove ? ' 50px' : '';
|
|
278
278
|
const size = 2 + this.extraColumns.length;
|
|
279
279
|
|
|
280
|
-
return `grid-template-columns: repeat(${ size },
|
|
280
|
+
return `grid-template-columns: repeat(${ size }, 400px)${ gap };`;
|
|
281
281
|
},
|
|
282
282
|
usedKeyOptions() {
|
|
283
283
|
return this.rows.map((row) => row[this.keyName]);
|
|
@@ -760,7 +760,7 @@ export default {
|
|
|
760
760
|
:disabled="disabled || isProtected(row.key)"
|
|
761
761
|
:mode="mode"
|
|
762
762
|
:placeholder="_valuePlaceholder"
|
|
763
|
-
:min-height="
|
|
763
|
+
:min-height="32"
|
|
764
764
|
:spellcheck="false"
|
|
765
765
|
:aria-label="t('generic.ariaLabel.value', {index: i})"
|
|
766
766
|
@update:value="queueUpdate"
|
|
@@ -823,7 +823,7 @@ export default {
|
|
|
823
823
|
type="button"
|
|
824
824
|
role="button"
|
|
825
825
|
:disabled="isView || isProtected(row.key) || disabled"
|
|
826
|
-
:aria-label="removeLabel || t('generic.remove')"
|
|
826
|
+
:aria-label="`${removeLabel || t('generic.remove')} ${ i+1 }`"
|
|
827
827
|
class="btn role-link"
|
|
828
828
|
@click="remove(i)"
|
|
829
829
|
>
|
|
@@ -837,7 +837,7 @@ export default {
|
|
|
837
837
|
</div>
|
|
838
838
|
<div
|
|
839
839
|
v-if="(addAllowed || readAllowed) && !isView"
|
|
840
|
-
class="footer mt-
|
|
840
|
+
class="footer mt-10"
|
|
841
841
|
>
|
|
842
842
|
<slot
|
|
843
843
|
name="add"
|
|
@@ -880,8 +880,8 @@ export default {
|
|
|
880
880
|
}
|
|
881
881
|
.kv-container {
|
|
882
882
|
display: grid;
|
|
883
|
-
align-items: center;
|
|
884
|
-
column-gap:
|
|
883
|
+
/* align-items: center; */
|
|
884
|
+
column-gap: 10px;
|
|
885
885
|
label {
|
|
886
886
|
margin-bottom: 0;
|
|
887
887
|
}
|
|
@@ -905,6 +905,9 @@ export default {
|
|
|
905
905
|
}
|
|
906
906
|
&.value textarea {
|
|
907
907
|
padding: 10px 10px 10px 10px;
|
|
908
|
+
min-height:32px;
|
|
909
|
+
line-height: 12px;
|
|
910
|
+
border: solid var(--border-width) var(--input-border);
|
|
908
911
|
}
|
|
909
912
|
|
|
910
913
|
.text-monospace:not(.conceal) {
|
|
@@ -943,8 +946,14 @@ export default {
|
|
|
943
946
|
}
|
|
944
947
|
}
|
|
945
948
|
input {
|
|
946
|
-
height:
|
|
949
|
+
height: 32px;
|
|
947
950
|
line-height: 1;
|
|
951
|
+
border: solid var(--border-width) var(--input-border);
|
|
952
|
+
padding: 4px 11px;
|
|
953
|
+
&:hover{
|
|
954
|
+
border: solid var(--border-width) var(--input-border);
|
|
955
|
+
box-shadow: 0 4px 6px 0 var(--input-border-box-shadow);
|
|
956
|
+
}
|
|
948
957
|
}
|
|
949
958
|
.footer {
|
|
950
959
|
.protip {
|
|
@@ -50,6 +50,10 @@ export default {
|
|
|
50
50
|
default: false,
|
|
51
51
|
type: Boolean
|
|
52
52
|
},
|
|
53
|
+
isLabel: {
|
|
54
|
+
default: false,
|
|
55
|
+
type: Boolean
|
|
56
|
+
},
|
|
53
57
|
localizedLabel: {
|
|
54
58
|
default: false,
|
|
55
59
|
type: Boolean
|
|
@@ -227,7 +231,7 @@ export default {
|
|
|
227
231
|
},
|
|
228
232
|
|
|
229
233
|
positionDropdown(dropdownList, component, { width }) {
|
|
230
|
-
calculatePosition(dropdownList, component, width, this.placement);
|
|
234
|
+
calculatePosition(dropdownList, component, width, this.placement, 'label', this.isLabel);
|
|
231
235
|
},
|
|
232
236
|
|
|
233
237
|
get,
|
|
@@ -278,6 +282,25 @@ export default {
|
|
|
278
282
|
</script>
|
|
279
283
|
|
|
280
284
|
<template>
|
|
285
|
+
<div style="display: flex;">
|
|
286
|
+
<div
|
|
287
|
+
:class="{ 'labeled-container': true, raised, empty, [mode]: true, 'is-lable': isLabel }"
|
|
288
|
+
:style="{ border: 'none', width: '160px',lineHeight: '32px' }"
|
|
289
|
+
>
|
|
290
|
+
<label v-if="hasLabel" :id="`labeled-select-uid-${uid}`">
|
|
291
|
+
<t
|
|
292
|
+
v-if="labelKey"
|
|
293
|
+
:k="labelKey"
|
|
294
|
+
/>
|
|
295
|
+
<template v-else-if="label">{{ label }}</template>
|
|
296
|
+
|
|
297
|
+
<span
|
|
298
|
+
v-if="requiredField"
|
|
299
|
+
class="required"
|
|
300
|
+
>*</span>
|
|
301
|
+
</label>
|
|
302
|
+
</div>
|
|
303
|
+
<!-- label -->
|
|
281
304
|
<div
|
|
282
305
|
ref="select"
|
|
283
306
|
class="labeled-select"
|
|
@@ -296,12 +319,13 @@ export default {
|
|
|
296
319
|
}
|
|
297
320
|
]"
|
|
298
321
|
:tabindex="isView || disabled ? -1 : 0"
|
|
322
|
+
role="listbox"
|
|
299
323
|
@click="focusSearch"
|
|
300
324
|
@keydown.enter="focusSearch"
|
|
301
325
|
@keydown.down.prevent="focusSearch"
|
|
302
326
|
@keydown.space.prevent="focusSearch"
|
|
303
327
|
>
|
|
304
|
-
<div
|
|
328
|
+
<!-- <div
|
|
305
329
|
:class="{ 'labeled-container': true, raised, empty, [mode]: true }"
|
|
306
330
|
:style="{ border: 'none' }"
|
|
307
331
|
>
|
|
@@ -320,7 +344,7 @@ export default {
|
|
|
320
344
|
class="required"
|
|
321
345
|
>*</span>
|
|
322
346
|
</label>
|
|
323
|
-
</div>
|
|
347
|
+
</div> -->
|
|
324
348
|
<v-select
|
|
325
349
|
ref="select-input"
|
|
326
350
|
:aria-labelledby="hasLabel ? `labeled-select-uid-${uid}` : ''"
|
|
@@ -344,7 +368,7 @@ export default {
|
|
|
344
368
|
:modelValue="value != null && !loading ? value : ''"
|
|
345
369
|
:dropdown-should-open="dropdownShouldOpen"
|
|
346
370
|
:tabindex="-1"
|
|
347
|
-
role="
|
|
371
|
+
role="listitem"
|
|
348
372
|
@update:modelValue="$emit('selecting', $event); $emit('update:value', $event)"
|
|
349
373
|
@search:blur="onBlur"
|
|
350
374
|
@search:focus="onFocus"
|
|
@@ -354,6 +378,7 @@ export default {
|
|
|
354
378
|
@option:selecting="$emit('selecting', $event)"
|
|
355
379
|
@option:deselecting="$emit('deselecting', $event)"
|
|
356
380
|
>
|
|
381
|
+
|
|
357
382
|
<template #option="option">
|
|
358
383
|
<template v-if="showTagPrompts">
|
|
359
384
|
<div class="only-user-opts">
|
|
@@ -373,9 +398,9 @@ export default {
|
|
|
373
398
|
</div>
|
|
374
399
|
</div>
|
|
375
400
|
</template>
|
|
376
|
-
<template v-else-if="option.kind === 'divider'">
|
|
377
|
-
<hr>
|
|
378
|
-
</template>
|
|
401
|
+
<!-- <template v-else-if="option.kind === 'divider'">
|
|
402
|
+
<hr role="none">
|
|
403
|
+
</template> -->
|
|
379
404
|
<template v-else-if="option.kind === 'highlighted'">
|
|
380
405
|
<div class="option-kind-highlighted">
|
|
381
406
|
{{ option.label }}
|
|
@@ -466,6 +491,7 @@ export default {
|
|
|
466
491
|
:value="validationMessage"
|
|
467
492
|
/>
|
|
468
493
|
</div>
|
|
494
|
+
</div>
|
|
469
495
|
</template>
|
|
470
496
|
|
|
471
497
|
<style lang='scss' scoped>
|
|
@@ -475,7 +501,11 @@ export default {
|
|
|
475
501
|
// Prevent namespace field from wiggling or changing
|
|
476
502
|
// height when it is toggled from a LabeledInput to a
|
|
477
503
|
// LabeledSelect.
|
|
504
|
+
&:deep() .vs__actions:after {
|
|
505
|
+
padding-top: 10px;
|
|
506
|
+
}
|
|
478
507
|
padding-bottom: 1px;
|
|
508
|
+
/* flex: 1; */
|
|
479
509
|
|
|
480
510
|
&.no-label.compact-input {
|
|
481
511
|
:deep() .vs__actions:after {
|
|
@@ -489,7 +519,7 @@ export default {
|
|
|
489
519
|
|
|
490
520
|
&.no-label:not(.compact-input) {
|
|
491
521
|
height: $input-height;
|
|
492
|
-
padding-top:
|
|
522
|
+
padding-top: 0px;
|
|
493
523
|
|
|
494
524
|
:deep() .vs__actions:after {
|
|
495
525
|
top: 0;
|
|
@@ -551,6 +581,7 @@ export default {
|
|
|
551
581
|
|
|
552
582
|
&.taggable {
|
|
553
583
|
:deep() .vs__selected-options {
|
|
584
|
+
|
|
554
585
|
padding: 3px 0;
|
|
555
586
|
.vs__selected {
|
|
556
587
|
border-color: var(--accent-btn);
|
|
@@ -576,7 +607,7 @@ export default {
|
|
|
576
607
|
}
|
|
577
608
|
|
|
578
609
|
:deep() .vs__selected-options {
|
|
579
|
-
margin-top:
|
|
610
|
+
margin-top: 0px;
|
|
580
611
|
}
|
|
581
612
|
|
|
582
613
|
:deep() .v-select:not(.vs--single) {
|
|
@@ -588,7 +619,7 @@ export default {
|
|
|
588
619
|
:deep() .vs__actions {
|
|
589
620
|
&:after {
|
|
590
621
|
position: relative;
|
|
591
|
-
top:
|
|
622
|
+
top: 0px;
|
|
592
623
|
}
|
|
593
624
|
}
|
|
594
625
|
|
|
@@ -626,73 +657,21 @@ export default {
|
|
|
626
657
|
}
|
|
627
658
|
}
|
|
628
659
|
|
|
629
|
-
|
|
630
|
-
|
|
631
|
-
|
|
632
|
-
|
|
633
|
-
|
|
634
|
-
// Styling for individual options
|
|
635
|
-
.vs__dropdown-option .vs__option-kind {
|
|
636
|
-
&-group {
|
|
637
|
-
display: flex;
|
|
638
|
-
align-items: center;
|
|
639
|
-
|
|
640
|
-
i { // icon
|
|
641
|
-
width: $icon-size;
|
|
642
|
-
}
|
|
643
|
-
|
|
644
|
-
> b { // group label
|
|
645
|
-
flex: 1;
|
|
646
|
-
}
|
|
647
|
-
|
|
648
|
-
> div { // badge
|
|
649
|
-
background-color: var(--primary);
|
|
650
|
-
border-radius: 4px;
|
|
651
|
-
color: var(--primary-text);
|
|
652
|
-
font-size: 12px;
|
|
653
|
-
height: 18px;
|
|
654
|
-
line-height: 18px;
|
|
655
|
-
margin-top: 1px;
|
|
656
|
-
padding: 0 10px;
|
|
657
|
-
}
|
|
658
|
-
}
|
|
659
|
-
|
|
660
|
-
&.has-icon {
|
|
661
|
-
padding-left: $icon-size;
|
|
662
|
-
}
|
|
660
|
+
// Styling for option group badge
|
|
661
|
+
.vs__dropdown-menu .vs__dropdown-option .vs__option-kind-group {
|
|
662
|
+
display: flex;
|
|
663
|
+
> b {
|
|
664
|
+
flex: 1;
|
|
663
665
|
}
|
|
664
|
-
|
|
665
|
-
|
|
666
|
-
|
|
667
|
-
|
|
668
|
-
|
|
669
|
-
|
|
670
|
-
|
|
671
|
-
|
|
672
|
-
|
|
673
|
-
position: relative;
|
|
674
|
-
margin-top: 5px;
|
|
675
|
-
|
|
676
|
-
.load-more {
|
|
677
|
-
display: flex;
|
|
678
|
-
align-items: center;
|
|
679
|
-
height: 19px;
|
|
680
|
-
|
|
681
|
-
a {
|
|
682
|
-
cursor: pointer;
|
|
683
|
-
}
|
|
684
|
-
}
|
|
685
|
-
|
|
686
|
-
.count {
|
|
687
|
-
position: absolute;
|
|
688
|
-
right: 10px;
|
|
689
|
-
}
|
|
690
|
-
}
|
|
691
|
-
|
|
692
|
-
.no-options-slot .paginating {
|
|
693
|
-
display: flex;
|
|
694
|
-
align-items: center;
|
|
695
|
-
justify-content: center;
|
|
666
|
+
> div {
|
|
667
|
+
background-color: var(--primary);
|
|
668
|
+
border-radius: 4px;
|
|
669
|
+
color: var(--primary-text);
|
|
670
|
+
font-size: 12px;
|
|
671
|
+
height: 18px;
|
|
672
|
+
line-height: 18px;
|
|
673
|
+
margin-top: 1px;
|
|
674
|
+
padding: 0 10px;
|
|
696
675
|
}
|
|
697
676
|
}
|
|
698
677
|
|
|
@@ -720,4 +699,8 @@ $icon-size: 18px;
|
|
|
720
699
|
margin: 0px calc(-#{$input-padding-sm}/2);
|
|
721
700
|
padding: 3px 20px;
|
|
722
701
|
}
|
|
702
|
+
|
|
703
|
+
.is-lable{
|
|
704
|
+
width: 0px !important;
|
|
705
|
+
}
|
|
723
706
|
</style>
|
|
@@ -24,10 +24,10 @@ export default {
|
|
|
24
24
|
},
|
|
25
25
|
|
|
26
26
|
data() {
|
|
27
|
-
const { postStart, preStop } = this.value;
|
|
28
|
-
|
|
29
27
|
return {
|
|
30
|
-
postStart
|
|
28
|
+
postStart: this.value.postStart,
|
|
29
|
+
preStop: this.value.preStop,
|
|
30
|
+
hookOptions: ['postStart', 'preStop']
|
|
31
31
|
};
|
|
32
32
|
},
|
|
33
33
|
|
|
@@ -70,6 +70,14 @@ export default {
|
|
|
70
70
|
},
|
|
71
71
|
|
|
72
72
|
data() {
|
|
73
|
+
return {
|
|
74
|
+
ops: [],
|
|
75
|
+
rules: [],
|
|
76
|
+
custom: []
|
|
77
|
+
};
|
|
78
|
+
},
|
|
79
|
+
|
|
80
|
+
created() {
|
|
73
81
|
const t = this.$store.getters['i18n/t'];
|
|
74
82
|
|
|
75
83
|
const podOptions = [
|
|
@@ -88,8 +96,6 @@ export default {
|
|
|
88
96
|
{ label: t('workload.scheduling.affinity.matchExpressions.greaterThan'), value: 'Gt' },
|
|
89
97
|
];
|
|
90
98
|
|
|
91
|
-
const ops = this.type === NODE ? nodeOptions : podOptions;
|
|
92
|
-
|
|
93
99
|
let rules;
|
|
94
100
|
|
|
95
101
|
// special case for matchFields and matchExpressions
|
|
@@ -127,11 +133,8 @@ export default {
|
|
|
127
133
|
rules.push(newRule);
|
|
128
134
|
}
|
|
129
135
|
|
|
130
|
-
|
|
131
|
-
|
|
132
|
-
rules,
|
|
133
|
-
custom: []
|
|
134
|
-
};
|
|
136
|
+
this.rules = rules;
|
|
137
|
+
this.ops = this.type === NODE ? nodeOptions : podOptions;
|
|
135
138
|
},
|
|
136
139
|
|
|
137
140
|
computed: {
|
|
@@ -242,6 +245,10 @@ export default {
|
|
|
242
245
|
|
|
243
246
|
<template>
|
|
244
247
|
<div>
|
|
248
|
+
<slot
|
|
249
|
+
v-if="rules.length"
|
|
250
|
+
name="header"
|
|
251
|
+
/>
|
|
245
252
|
<button
|
|
246
253
|
v-if="showRemove && !isView"
|
|
247
254
|
type="button"
|
|
@@ -418,14 +425,20 @@ export default {
|
|
|
418
425
|
justify-content: center;
|
|
419
426
|
}
|
|
420
427
|
|
|
428
|
+
.match-expression-header{
|
|
429
|
+
margin-top: 24px;
|
|
430
|
+
}
|
|
421
431
|
.match-expression-row, .match-expression-header {
|
|
422
|
-
display: grid;
|
|
423
|
-
|
|
432
|
+
/* display: grid; */
|
|
433
|
+
display: flex;
|
|
434
|
+
/* grid-template-columns: 1fr 1fr 1fr; */
|
|
424
435
|
margin: 5px 0;
|
|
425
|
-
grid-gap: $column-gutter;
|
|
436
|
+
/* grid-gap: $column-gutter; */
|
|
437
|
+
grid-gap: 10px;
|
|
426
438
|
|
|
427
439
|
& > LABEL {
|
|
428
440
|
margin: 0;
|
|
441
|
+
width: 400px;
|
|
429
442
|
}
|
|
430
443
|
|
|
431
444
|
&:not(.view){
|
|
@@ -434,7 +447,13 @@ export default {
|
|
|
434
447
|
}
|
|
435
448
|
|
|
436
449
|
.match-expression-row > div > input {
|
|
437
|
-
min-height:
|
|
450
|
+
min-height: 32px !important;
|
|
451
|
+
border: solid var(--border-width) var(--input-border);
|
|
452
|
+
padding: 4px 11px;
|
|
453
|
+
width: 400px;
|
|
454
|
+
&:hover{
|
|
455
|
+
box-shadow: 0 4px 6px 0 var(--input-border-box-shadow);
|
|
456
|
+
}
|
|
438
457
|
}
|
|
439
458
|
.match-expression-row-matching, .match-expression-header-matching {
|
|
440
459
|
grid-template-columns: 1fr 1fr 1fr 1fr;
|
|
@@ -443,4 +462,8 @@ export default {
|
|
|
443
462
|
grid-template-columns: 1fr 1fr 1fr 1fr 100px;
|
|
444
463
|
}
|
|
445
464
|
}
|
|
446
|
-
|
|
465
|
+
|
|
466
|
+
.view-item-value{
|
|
467
|
+
width: 400px;
|
|
468
|
+
}
|
|
469
|
+
</style>
|