bfg-common 1.5.228 → 1.5.229
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/img/icons/icons-sprite-dark-3.svg +227 -227
- package/assets/img/icons/icons-sprite-dark-5.svg +488 -488
- package/assets/img/icons/icons-sprite-light-3.svg +227 -227
- package/assets/img/icons/icons-sprite-light-5.svg +488 -488
- package/assets/localization/local_be.json +3 -4
- package/assets/localization/local_en.json +10 -11
- package/assets/localization/local_hy.json +3 -4
- package/assets/localization/local_kk.json +3 -4
- package/assets/localization/local_ru.json +5 -6
- package/assets/localization/local_zh.json +3 -4
- package/assets/scss/common/normalize.scss +0 -1
- package/components/atoms/table/info/lib/models/interfaces.ts +10 -10
- package/components/common/browse/blocks/lib/models/types.ts +1 -1
- package/components/common/browse/lib/models/interfaces.ts +5 -5
- package/components/common/diagramMain/adapter/AdapterItems.vue +61 -61
- package/components/common/diagramMain/lib/config/initial.ts +50 -50
- package/components/common/diagramMain/lib/models/types.ts +21 -21
- package/components/common/diagramMain/lib/utils/utils.ts +331 -331
- package/components/common/diagramMain/modals/editSettings/ConfirmTeamingSettingsModal.vue +40 -40
- package/components/common/diagramMain/modals/editSettings/tabs/NetworkProperties.vue +214 -214
- package/components/common/diagramMain/modals/editSettings/tabs/Security.vue +189 -189
- package/components/common/diagramMain/modals/editSettings/tabs/SwitchProperties.vue +163 -163
- package/components/common/diagramMain/modals/editSettings/tabs/TeamingFailover.vue +175 -175
- package/components/common/diagramMain/modals/editSettings/tabs/port/IpvFourSettings.vue +346 -346
- package/components/common/diagramMain/modals/lib/config/initial.ts +180 -180
- package/components/common/diagramMain/modals/lib/config/vmKernelAdapter.ts +90 -90
- package/components/common/diagramMain/modals/lib/mappers/mappers.ts +87 -87
- package/components/common/diagramMain/modals/lib/utils/index.ts +24 -24
- package/components/common/diagramMain/modals/migrateVmkernelAdapter/lib/config/steps.ts +114 -114
- package/components/common/diagramMain/modals/migrateVmkernelAdapter/steps/ConnectionSettings.vue +169 -169
- package/components/common/diagramMain/modals/migrateVmkernelAdapter/steps/SelectVmkernelAdapter.vue +159 -159
- package/components/common/diagramMain/modals/migrateVmkernelAdapter/validations/common.ts +14 -14
- package/components/common/diagramMain/modals/migrateVmkernelAdapter/validations/connectionSettings.ts +137 -137
- package/components/common/diagramMain/modals/migrateVmkernelAdapter/validations/selectVmkernelAdapter.ts +52 -52
- package/components/common/diagramMain/modals/migrateVmkernelAdapter/validations/validations.ts +19 -19
- package/components/common/diagramMain/port/Ports.vue +47 -47
- package/components/common/readyToComplete/New.vue +1 -16
- package/components/common/split/horizontal/HorizontalNew.vue +9 -1
- package/components/common/vm/actions/add/New.vue +36 -98
- package/components/common/vm/actions/add/lib/config/steps.ts +1 -1
- package/components/common/vm/actions/common/customizeHardware/CustomizeHardwareNew.vue +3 -14
- package/components/common/vm/actions/common/customizeHardware/virtualHardware/VirtualHardwareNew.vue +2 -2
- package/components/common/vm/actions/common/customizeHardware/vmoptions/VmoptionsNew.vue +1 -1
- package/components/common/vm/actions/common/select/compatibility/Compatibility.vue +0 -8
- package/components/common/vm/actions/common/select/compatibility/New.vue +7 -14
- package/components/common/vm/actions/common/select/computeResource/ComputeResource.vue +0 -8
- package/components/common/vm/actions/common/select/computeResource/New.vue +7 -29
- package/components/common/vm/actions/common/select/createType/New.vue +10 -18
- package/components/common/vm/actions/common/select/name/Name.vue +2 -9
- package/components/common/vm/actions/common/select/name/New.vue +8 -36
- package/components/common/vm/actions/common/select/os/New.vue +10 -16
- package/components/common/vm/actions/common/select/storage/Storage.vue +0 -8
- package/components/common/vm/actions/common/select/storage/new/New.vue +8 -27
- package/components/common/vm/actions/common/select/storage/new/lib/config/table.ts +9 -9
- package/components/common/vm/actions/editSettings/new/New.vue +1 -1
- package/package.json +2 -2
|
@@ -49,10 +49,7 @@
|
|
|
49
49
|
>
|
|
50
50
|
<template #subTitle>
|
|
51
51
|
<div ref="subTitleBlockName" class="subtitle-block">
|
|
52
|
-
<div
|
|
53
|
-
id="name-alert-wrapper"
|
|
54
|
-
:class="[{ 'mb-4': !isNameAlertWrapperEmpty }]"
|
|
55
|
-
></div>
|
|
52
|
+
<div id="name-alert-wrapper"></div>
|
|
56
53
|
<ui-wizard-subtitle
|
|
57
54
|
:sub-title="
|
|
58
55
|
localization.vmWizard.specifyUniqueNameAndTargetLocationForVm
|
|
@@ -71,7 +68,6 @@
|
|
|
71
68
|
:data-center="props.dataCenter"
|
|
72
69
|
@submit="emits('change-name', $event)"
|
|
73
70
|
@check-name="emits('check-name', $event)"
|
|
74
|
-
@has-errors="isNameAlertWrapperEmpty = $event"
|
|
75
71
|
/>
|
|
76
72
|
</template>
|
|
77
73
|
</ui-wizard-block>
|
|
@@ -83,19 +79,14 @@
|
|
|
83
79
|
:sub-title-height="heightComputeResource"
|
|
84
80
|
>
|
|
85
81
|
<template #subTitle>
|
|
86
|
-
<div ref="subTitleBlockComputeResource">
|
|
87
|
-
<div
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
localization.vmWizard
|
|
95
|
-
.selectDestinationComputeResourceForThisOperation
|
|
96
|
-
"
|
|
97
|
-
/>
|
|
98
|
-
</div>
|
|
82
|
+
<div ref="subTitleBlockComputeResource" class="subtitle-block">
|
|
83
|
+
<div id="compute-resource-alert-wrapper"></div>
|
|
84
|
+
<ui-wizard-subtitle
|
|
85
|
+
:sub-title="
|
|
86
|
+
localization.vmWizard
|
|
87
|
+
.selectDestinationComputeResourceForThisOperation
|
|
88
|
+
"
|
|
89
|
+
/>
|
|
99
90
|
</div>
|
|
100
91
|
</template>
|
|
101
92
|
<template #content>
|
|
@@ -116,7 +107,6 @@
|
|
|
116
107
|
emits('show-compute-resource-tree', $event)
|
|
117
108
|
"
|
|
118
109
|
@clear-compute-resource-tree="emits('clear-compute-resource-tree')"
|
|
119
|
-
@has-errors="isComputeResourceAlertWrapperEmpty = $event"
|
|
120
110
|
/>
|
|
121
111
|
</template>
|
|
122
112
|
</ui-wizard-block>
|
|
@@ -125,18 +115,13 @@
|
|
|
125
115
|
:sub-title-height="heightStorage"
|
|
126
116
|
>
|
|
127
117
|
<template #subTitle>
|
|
128
|
-
<div ref="subTitleBlockStorage">
|
|
129
|
-
<div
|
|
130
|
-
|
|
131
|
-
|
|
132
|
-
|
|
133
|
-
|
|
134
|
-
|
|
135
|
-
:sub-title="
|
|
136
|
-
localization.vmWizard.selectStorageForConfigurationDiskFiles
|
|
137
|
-
"
|
|
138
|
-
/>
|
|
139
|
-
</div>
|
|
118
|
+
<div ref="subTitleBlockStorage" class="subtitle-block">
|
|
119
|
+
<div id="storage-alert-wrapper"></div>
|
|
120
|
+
<ui-wizard-subtitle
|
|
121
|
+
:sub-title="
|
|
122
|
+
localization.vmWizard.selectStorageForConfigurationDiskFiles
|
|
123
|
+
"
|
|
124
|
+
/>
|
|
140
125
|
</div>
|
|
141
126
|
</template>
|
|
142
127
|
<template #content>
|
|
@@ -146,7 +131,6 @@
|
|
|
146
131
|
:get-datastore-table-func="props.getDatastoreTableFunc"
|
|
147
132
|
:storage="props.vmtSettings?.storage"
|
|
148
133
|
@submit="emits('change-storage', $event)"
|
|
149
|
-
@has-errors="isStorageAlertWrapperEmpty = $event"
|
|
150
134
|
/>
|
|
151
135
|
</template>
|
|
152
136
|
</ui-wizard-block>
|
|
@@ -162,16 +146,11 @@
|
|
|
162
146
|
:sub-title-height="heightCompatibility"
|
|
163
147
|
>
|
|
164
148
|
<template #subTitle>
|
|
165
|
-
<div ref="subTitleBlockCompatibility">
|
|
166
|
-
<div
|
|
167
|
-
|
|
168
|
-
|
|
169
|
-
|
|
170
|
-
></div>
|
|
171
|
-
<ui-wizard-subtitle
|
|
172
|
-
:sub-title="localization.vmWizard.compatibilitySubTitle"
|
|
173
|
-
/>
|
|
174
|
-
</div>
|
|
149
|
+
<div ref="subTitleBlockCompatibility" class="subtitle-block">
|
|
150
|
+
<div id="compatibility-alert-wrapper"></div>
|
|
151
|
+
<ui-wizard-subtitle
|
|
152
|
+
:sub-title="localization.vmWizard.compatibilitySubTitle"
|
|
153
|
+
/>
|
|
175
154
|
</div>
|
|
176
155
|
</template>
|
|
177
156
|
<template #content>
|
|
@@ -180,7 +159,6 @@
|
|
|
180
159
|
:error-validation-fields="props.errorValidationFields"
|
|
181
160
|
@change="emits('change-compatibility', $event)"
|
|
182
161
|
@remove-error-by-title="emits('remove-error-by-title', $event)"
|
|
183
|
-
@has-errors="isCompatibilityAlertWrapperEmpty = $event"
|
|
184
162
|
/>
|
|
185
163
|
</template>
|
|
186
164
|
</ui-wizard-block>
|
|
@@ -192,19 +170,15 @@
|
|
|
192
170
|
:sub-title-height="heightOs"
|
|
193
171
|
>
|
|
194
172
|
<template #subTitle>
|
|
195
|
-
<div ref="subTitleBlockOs">
|
|
196
|
-
<div
|
|
197
|
-
|
|
198
|
-
|
|
199
|
-
|
|
200
|
-
/>
|
|
201
|
-
</div>
|
|
173
|
+
<div ref="subTitleBlockOs" class="subtitle-block">
|
|
174
|
+
<div id="compatibility-alert-wrapper"></div>
|
|
175
|
+
<ui-wizard-subtitle
|
|
176
|
+
:sub-title="localization.common.chooseGuestOSInstalledVM"
|
|
177
|
+
/>
|
|
202
178
|
</div>
|
|
203
179
|
</template>
|
|
204
180
|
<template #content>
|
|
205
|
-
<div
|
|
206
|
-
class="select-block-wrap overflow-auto h-full flex flex-col pb-4"
|
|
207
|
-
>
|
|
181
|
+
<div class="select-block-wrap overflow-auto h-full flex flex-col">
|
|
208
182
|
<common-vm-actions-common-select-os
|
|
209
183
|
v-model:machine-type="vmForm.guestMachineType"
|
|
210
184
|
v-model:guest-os-family="vmForm.guestOsFamily"
|
|
@@ -227,7 +201,9 @@
|
|
|
227
201
|
v-if="selectedStep.id === dynamicSteps.customizeHardware"
|
|
228
202
|
>
|
|
229
203
|
<template #content>
|
|
230
|
-
<div
|
|
204
|
+
<div
|
|
205
|
+
class="select-block-wrap overflow-auto h-full flex flex-col pr-8"
|
|
206
|
+
>
|
|
231
207
|
<common-vm-actions-common-customize-hardware
|
|
232
208
|
:project="props.project"
|
|
233
209
|
:vm-name="vmForm.name"
|
|
@@ -268,9 +244,7 @@
|
|
|
268
244
|
@get-networks-table="emits('get-networks-table', $event)"
|
|
269
245
|
@get-pci-devices="emits('get-pci-devices')"
|
|
270
246
|
/>
|
|
271
|
-
<div
|
|
272
|
-
class="vm-hardware-version-wrap justify-end flex flex-1 mt-4 mr-8"
|
|
273
|
-
>
|
|
247
|
+
<div class="vm-hardware-version-wrap justify-end flex flex-1 mt-4">
|
|
274
248
|
<span class="vm-hardware-version">{{
|
|
275
249
|
props.compatibilityInfo
|
|
276
250
|
}}</span>
|
|
@@ -346,29 +320,16 @@
|
|
|
346
320
|
</div>
|
|
347
321
|
</template>
|
|
348
322
|
</ui-wizard-block>
|
|
349
|
-
<ui-wizard-block
|
|
350
|
-
v-if="selectedStep.id === dynamicSteps.readyComplete"
|
|
351
|
-
:sub-title-height="heightReadyComplete"
|
|
352
|
-
>
|
|
353
|
-
<template #subTitle>
|
|
354
|
-
<div ref="subTitleBlockReadyComplete">
|
|
355
|
-
<div class="subtitle-block">
|
|
356
|
-
<ui-wizard-subtitle
|
|
357
|
-
:sub-title="localization.vmWizard.lastCreateSubtitle"
|
|
358
|
-
/>
|
|
359
|
-
</div>
|
|
360
|
-
</div>
|
|
361
|
-
</template>
|
|
323
|
+
<ui-wizard-block v-if="selectedStep.id === dynamicSteps.readyComplete">
|
|
362
324
|
<template #content>
|
|
363
325
|
<div
|
|
364
|
-
class="select-block-wrap h-full flex flex-col
|
|
326
|
+
class="select-block-wrap overflow-auto h-full flex flex-col pr-8"
|
|
365
327
|
>
|
|
366
328
|
<div v-if="props.isShowPowerOn" class="power-on-by-default-wrap">
|
|
367
329
|
<ui-checkbox
|
|
368
330
|
v-model="isPowerOnByDefault"
|
|
369
331
|
test-id="power-on-by-default"
|
|
370
332
|
:label-text="localization.common.powerOnByDefault"
|
|
371
|
-
size="md"
|
|
372
333
|
/>
|
|
373
334
|
</div>
|
|
374
335
|
|
|
@@ -378,7 +339,7 @@
|
|
|
378
339
|
v-if="selectedStep.id === dynamicSteps.readyComplete"
|
|
379
340
|
:data="props.readyCompleteTableInfo"
|
|
380
341
|
/>
|
|
381
|
-
<div class="vm-hardware-version-wrap justify-end flex flex-1 mt-4
|
|
342
|
+
<div class="vm-hardware-version-wrap justify-end flex flex-1 mt-4">
|
|
382
343
|
<span class="vm-hardware-version">{{
|
|
383
344
|
props.compatibilityInfo
|
|
384
345
|
}}</span>
|
|
@@ -554,15 +515,6 @@ const { height: heightCompatibility } = useElementSize(
|
|
|
554
515
|
)
|
|
555
516
|
const subTitleBlockOs = ref<HTMLElement | null>(null)
|
|
556
517
|
const { height: heightOs } = useElementSize(subTitleBlockOs)
|
|
557
|
-
const subTitleBlockReadyComplete = ref<HTMLElement | null>(null)
|
|
558
|
-
const { height: heightReadyComplete } = useElementSize(
|
|
559
|
-
subTitleBlockReadyComplete
|
|
560
|
-
)
|
|
561
|
-
|
|
562
|
-
const isNameAlertWrapperEmpty = ref<boolean>(false)
|
|
563
|
-
const isComputeResourceAlertWrapperEmpty = ref<boolean>(false)
|
|
564
|
-
const isStorageAlertWrapperEmpty = ref<boolean>(false)
|
|
565
|
-
const isCompatibilityAlertWrapperEmpty = ref<boolean>(false)
|
|
566
518
|
</script>
|
|
567
519
|
|
|
568
520
|
<style>
|
|
@@ -579,28 +531,14 @@ const isCompatibilityAlertWrapperEmpty = ref<boolean>(false)
|
|
|
579
531
|
.subtitle-block {
|
|
580
532
|
display: flex;
|
|
581
533
|
flex-direction: column;
|
|
534
|
+
row-gap: 16px;
|
|
582
535
|
border-bottom: 1px solid var(--wizard-line);
|
|
583
536
|
padding-bottom: 12px;
|
|
537
|
+
//margin-bottom: 16px;
|
|
584
538
|
}
|
|
585
539
|
.select-block-wrap {
|
|
586
|
-
&.customize-hardware {
|
|
587
|
-
height: inherit;
|
|
588
|
-
max-height: 100%;
|
|
589
|
-
padding-bottom: 40px;
|
|
590
|
-
|
|
591
|
-
:deep(.tabs-wrapper),
|
|
592
|
-
:deep(.errors-alert),
|
|
593
|
-
:deep(.action-wrap) {
|
|
594
|
-
margin-right: 32px;
|
|
595
|
-
}
|
|
596
|
-
:deep(.virtual-hardware-content-block),
|
|
597
|
-
:deep(.vm-options) {
|
|
598
|
-
padding-right: 18px;
|
|
599
|
-
}
|
|
600
|
-
}
|
|
601
540
|
.vm-hardware-version-wrap {
|
|
602
541
|
align-items: flex-end;
|
|
603
|
-
text-align: right;
|
|
604
542
|
|
|
605
543
|
.vm-hardware-version {
|
|
606
544
|
font-size: 13px;
|
|
@@ -189,7 +189,7 @@ export const stepsFunc = (
|
|
|
189
189
|
id: dynamicSteps.readyComplete,
|
|
190
190
|
stepName: '',
|
|
191
191
|
title: localization.common.readyComplete,
|
|
192
|
-
subTitle: localization.
|
|
192
|
+
subTitle: localization.common.clickFinishStartCreation,
|
|
193
193
|
status: UI_E_WIZARD_STATUS.INACTIVE,
|
|
194
194
|
isValid: true,
|
|
195
195
|
testId: 'vm-ready-complete',
|
|
@@ -1,17 +1,11 @@
|
|
|
1
1
|
<template>
|
|
2
|
-
<div
|
|
3
|
-
:class="[
|
|
4
|
-
'customize-hardware',
|
|
5
|
-
themeMode,
|
|
6
|
-
{ 'alert-show': props.errors.length },
|
|
7
|
-
]"
|
|
8
|
-
>
|
|
2
|
+
<div :class="['customize-hardware', themeMode]">
|
|
9
3
|
<ui-tabs
|
|
10
4
|
v-model="selectedNavItem"
|
|
11
5
|
:tabs="navItemsLocal"
|
|
12
6
|
test-id="vm-wizard-tabs"
|
|
13
7
|
type="underline"
|
|
14
|
-
class="navigation"
|
|
8
|
+
class="navigation mx-8"
|
|
15
9
|
/>
|
|
16
10
|
<ui-alert
|
|
17
11
|
v-show="props.errors.length"
|
|
@@ -19,8 +13,7 @@
|
|
|
19
13
|
status="alert-danger"
|
|
20
14
|
test-id="customize-hardware-alert"
|
|
21
15
|
class="errors-alert"
|
|
22
|
-
|
|
23
|
-
@hide="emits('remove-validation-errors')"
|
|
16
|
+
@remove="emits('remove-validation-errors')"
|
|
24
17
|
/>
|
|
25
18
|
|
|
26
19
|
<div v-show="selectedNavItem === 0">
|
|
@@ -214,10 +207,6 @@ const themeMode = useLocalStorage('themeMode')
|
|
|
214
207
|
display: grid;
|
|
215
208
|
grid-template-rows: auto minmax(0, 1fr);
|
|
216
209
|
|
|
217
|
-
&.alert-show {
|
|
218
|
-
grid-template-rows: auto auto minmax(0, 1fr);
|
|
219
|
-
}
|
|
220
|
-
|
|
221
210
|
.errors-alert {
|
|
222
211
|
margin-top: 12px;
|
|
223
212
|
}
|
package/components/common/vm/actions/common/customizeHardware/virtualHardware/VirtualHardwareNew.vue
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
<template>
|
|
2
2
|
<div class="virtual-hardware">
|
|
3
|
-
<div class="action-wrap py-3">
|
|
3
|
+
<div class="action-wrap py-3 px-8">
|
|
4
4
|
<span class="device-count">{{ deviceCountText }}</span>
|
|
5
5
|
|
|
6
6
|
<div class="add-device-dropdown-wrap">
|
|
@@ -31,7 +31,7 @@
|
|
|
31
31
|
</div>
|
|
32
32
|
</div>
|
|
33
33
|
|
|
34
|
-
<div class="overflow-auto
|
|
34
|
+
<div class="overflow-auto px-8">
|
|
35
35
|
<div class="stack-view">
|
|
36
36
|
<common-vm-actions-common-customize-hardware-virtual-hardware-cpu
|
|
37
37
|
:max-cpus="props.maxCpus"
|
|
@@ -30,7 +30,6 @@ const props = defineProps<{
|
|
|
30
30
|
const emits = defineEmits<{
|
|
31
31
|
(event: 'change', value: UI_I_OptionItem): void
|
|
32
32
|
(event: 'remove-error-by-title', value: string): void
|
|
33
|
-
(event: 'has-errors', value: boolean): void
|
|
34
33
|
}>()
|
|
35
34
|
|
|
36
35
|
const { $store }: any = useNuxtApp()
|
|
@@ -91,13 +90,6 @@ const apiError = computed<string>(() => {
|
|
|
91
90
|
)?.error_message || ''
|
|
92
91
|
)
|
|
93
92
|
})
|
|
94
|
-
watch(
|
|
95
|
-
apiError,
|
|
96
|
-
(newValue) => {
|
|
97
|
-
emits('has-errors', !newValue.length)
|
|
98
|
-
},
|
|
99
|
-
{ immediate: true, deep: true }
|
|
100
|
-
)
|
|
101
93
|
|
|
102
94
|
const onRemoveValidationError = (): void => {
|
|
103
95
|
emits('remove-error-by-title', 'compatibility')
|
|
@@ -13,7 +13,7 @@
|
|
|
13
13
|
<h3 class="select-compatibility-description pb-4">
|
|
14
14
|
{{ props.description }}
|
|
15
15
|
</h3>
|
|
16
|
-
<div class="version-select-wrap">
|
|
16
|
+
<div class="version-select-wrap flex">
|
|
17
17
|
<div
|
|
18
18
|
v-for="item in versionsLocal"
|
|
19
19
|
:key="item.value"
|
|
@@ -106,7 +106,7 @@ const versionsLocal = computed(() => {
|
|
|
106
106
|
--select-compatibility-description-color: #4d5d69;
|
|
107
107
|
}
|
|
108
108
|
:root.dark-theme {
|
|
109
|
-
--select-compatibility-bg-color:
|
|
109
|
+
--select-compatibility-bg-color: transparent;
|
|
110
110
|
--select-compatibility-border-color: #e9ebed1f;
|
|
111
111
|
--select-compatibility-border-hover-color: #e9ebed3d;
|
|
112
112
|
--select-compatibility-selected-bg-color: #2ba2de14;
|
|
@@ -121,39 +121,33 @@ const versionsLocal = computed(() => {
|
|
|
121
121
|
.select-compatibility-description {
|
|
122
122
|
font-size: 13px;
|
|
123
123
|
color: var(--select-compatibility-description-color);
|
|
124
|
-
line-height: 18px;
|
|
125
124
|
}
|
|
126
125
|
|
|
127
126
|
.version-select-wrap {
|
|
128
|
-
display: grid;
|
|
129
|
-
grid-template-columns: repeat(3, 32.3%);
|
|
130
127
|
gap: 12px;
|
|
131
128
|
|
|
132
129
|
.version-select {
|
|
133
130
|
background-color: var(--select-compatibility-bg-color);
|
|
134
|
-
|
|
131
|
+
border: 1px solid var(--select-compatibility-border-color);
|
|
135
132
|
padding: 12px;
|
|
136
133
|
border-radius: 8px;
|
|
137
134
|
|
|
138
135
|
&:not(.selected):not(.disabled) {
|
|
139
136
|
cursor: pointer;
|
|
140
137
|
&:hover {
|
|
141
|
-
|
|
142
|
-
var(--select-compatibility-border-hover-color);
|
|
138
|
+
border-color: var(--select-compatibility-border-hover-color);
|
|
143
139
|
}
|
|
144
140
|
}
|
|
145
141
|
|
|
146
142
|
&.selected {
|
|
147
143
|
background-color: var(--select-compatibility-selected-bg-color);
|
|
148
|
-
|
|
149
|
-
var(--select-compatibility-selected-border-color);
|
|
144
|
+
border: 1.5px solid var(--select-compatibility-selected-border-color);
|
|
150
145
|
}
|
|
151
146
|
|
|
152
147
|
.description {
|
|
153
148
|
font-size: 13px;
|
|
154
|
-
color: #9da6ad
|
|
149
|
+
color: #9da6ad;
|
|
155
150
|
margin: 8px 0 0 28px;
|
|
156
|
-
line-height: 18px;
|
|
157
151
|
}
|
|
158
152
|
|
|
159
153
|
:deep(.radio-label) {
|
|
@@ -164,8 +158,7 @@ const versionsLocal = computed(() => {
|
|
|
164
158
|
|
|
165
159
|
@container (max-width: 600px) {
|
|
166
160
|
.version-select-wrap {
|
|
167
|
-
|
|
168
|
-
padding-bottom: 22px;
|
|
161
|
+
flex-direction: column;
|
|
169
162
|
}
|
|
170
163
|
}
|
|
171
164
|
}
|
|
@@ -53,7 +53,6 @@ const emits = defineEmits<{
|
|
|
53
53
|
(event: 'show-compute-resource-tree', value: UI_I_TreeNode): void
|
|
54
54
|
(event: 'select-compute-resource-tree', value: UI_I_TreeNode): void
|
|
55
55
|
(event: 'clear-compute-resource-tree'): void
|
|
56
|
-
(event: 'has-errors', value: boolean): void
|
|
57
56
|
}>()
|
|
58
57
|
|
|
59
58
|
const { $store }: any = useNuxtApp()
|
|
@@ -95,13 +94,6 @@ const showValidationErrors = (text: string): void => {
|
|
|
95
94
|
const onRemoveValidationErrors = (): void => {
|
|
96
95
|
errors.value = []
|
|
97
96
|
}
|
|
98
|
-
watch(
|
|
99
|
-
errors,
|
|
100
|
-
(newValue) => {
|
|
101
|
-
emits('has-errors', !newValue.length)
|
|
102
|
-
},
|
|
103
|
-
{ immediate: true, deep: true }
|
|
104
|
-
)
|
|
105
97
|
|
|
106
98
|
const selectedNode = defineModel<UI_I_TreeNode | null>('modelValue')
|
|
107
99
|
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
<template>
|
|
2
|
-
<div class="select-compute-resource
|
|
2
|
+
<div class="select-compute-resource">
|
|
3
3
|
<Teleport to="#compute-resource-alert-wrapper">
|
|
4
4
|
<ui-alert
|
|
5
5
|
v-show="props.errors.length"
|
|
@@ -7,8 +7,7 @@
|
|
|
7
7
|
status="alert-danger"
|
|
8
8
|
test-id="computed-resource-alert"
|
|
9
9
|
class="errors-alert"
|
|
10
|
-
|
|
11
|
-
@hide="emits('remove-validation-errors')"
|
|
10
|
+
@remove="emits('remove-validation-errors')"
|
|
12
11
|
/>
|
|
13
12
|
</Teleport>
|
|
14
13
|
|
|
@@ -33,7 +32,7 @@
|
|
|
33
32
|
<p class="compatibility">
|
|
34
33
|
{{ localization.inventorySummary.compatibility }}
|
|
35
34
|
</p>
|
|
36
|
-
<div class="compatibility-message flex-align-
|
|
35
|
+
<div class="compatibility-message flex-align-center">
|
|
37
36
|
<ui-skeleton-item v-if="!selectedNode" width="160px" height="16px" />
|
|
38
37
|
<template v-else-if="props.compatibilityText[1]">
|
|
39
38
|
<ui-icon
|
|
@@ -41,7 +40,6 @@
|
|
|
41
40
|
name="error"
|
|
42
41
|
width="16"
|
|
43
42
|
height="16"
|
|
44
|
-
class="icon-compatibility-alert"
|
|
45
43
|
/>
|
|
46
44
|
|
|
47
45
|
<ui-icon
|
|
@@ -49,7 +47,6 @@
|
|
|
49
47
|
name="success-fill"
|
|
50
48
|
width="16"
|
|
51
49
|
height="16"
|
|
52
|
-
class="icon-compatibility-alert"
|
|
53
50
|
/>
|
|
54
51
|
<span class="compatibility-message-description">{{
|
|
55
52
|
props.compatibilityText[1]
|
|
@@ -95,43 +92,28 @@ const localization = computed<UI_I_Localization>(() => useLocal())
|
|
|
95
92
|
--select-compute-resource-border-color: #e9ebed;
|
|
96
93
|
--select-compute-resource-location-bg-color: #ffffff;
|
|
97
94
|
--select-compute-resource-compatibility-title-color: #4d5d69;
|
|
98
|
-
--select-compute-resource-compatibilityd-empty-escription-color: #4d5d69;
|
|
99
95
|
--select-compute-resource-compatibility-description-color: #4d5d69;
|
|
100
96
|
}
|
|
101
97
|
:root.dark-theme {
|
|
102
98
|
--select-compute-resource-border-color: #e9ebed1f;
|
|
103
|
-
--select-compute-resource-location-bg-color:
|
|
99
|
+
--select-compute-resource-location-bg-color: transparent;
|
|
104
100
|
--select-compute-resource-compatibility-title-color: #e9eaec;
|
|
105
|
-
--select-compute-resource-
|
|
106
|
-
--select-compute-resource-compatibility-description-color: #e9eaec;
|
|
101
|
+
--select-compute-resource-compatibility-description-color: #9da6ad;
|
|
107
102
|
}
|
|
108
103
|
</style>
|
|
109
104
|
<style scoped lang="scss">
|
|
110
105
|
.select-compute-resource {
|
|
111
106
|
.tree-view-wrap {
|
|
112
107
|
height: 170px;
|
|
113
|
-
max-height: 240px;
|
|
114
108
|
border-radius: 8px;
|
|
115
109
|
border: 1px solid var(--select-compute-resource-border-color);
|
|
116
|
-
padding:
|
|
110
|
+
padding: 12px;
|
|
117
111
|
background-color: var(--select-compute-resource-location-bg-color);
|
|
118
112
|
margin: 16px 0 24px;
|
|
119
113
|
overflow: auto;
|
|
120
114
|
|
|
121
115
|
:deep(.tree-content) {
|
|
122
116
|
padding: 0 !important;
|
|
123
|
-
|
|
124
|
-
.node-wrapper {
|
|
125
|
-
border-radius: 4px;
|
|
126
|
-
|
|
127
|
-
.node-name {
|
|
128
|
-
font-size: 12px;
|
|
129
|
-
margin-left: 8px;
|
|
130
|
-
overflow: hidden;
|
|
131
|
-
text-overflow: ellipsis;
|
|
132
|
-
white-space: nowrap;
|
|
133
|
-
}
|
|
134
|
-
}
|
|
135
117
|
}
|
|
136
118
|
}
|
|
137
119
|
|
|
@@ -147,12 +129,8 @@ const localization = computed<UI_I_Localization>(() => useLocal())
|
|
|
147
129
|
border: 1px solid var(--select-compute-resource-border-color);
|
|
148
130
|
padding: 12px;
|
|
149
131
|
background-color: var(--select-compute-resource-location-bg-color);
|
|
150
|
-
gap:
|
|
132
|
+
gap: 12px;
|
|
151
133
|
|
|
152
|
-
.icon-compatibility-alert {
|
|
153
|
-
min-width: 16px;
|
|
154
|
-
min-height: 16px;
|
|
155
|
-
}
|
|
156
134
|
.compatibility-message-description {
|
|
157
135
|
font-size: 13px;
|
|
158
136
|
color: var(--select-compute-resource-compatibility-description-color);
|
|
@@ -17,13 +17,11 @@
|
|
|
17
17
|
:test-id="item.testId"
|
|
18
18
|
:disabled="item.disabled"
|
|
19
19
|
size="md"
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
>
|
|
26
|
-
</ui-radio>
|
|
20
|
+
/>
|
|
21
|
+
|
|
22
|
+
<p class="description">
|
|
23
|
+
{{ item.description }}
|
|
24
|
+
</p>
|
|
27
25
|
</div>
|
|
28
26
|
</div>
|
|
29
27
|
</template>
|
|
@@ -57,25 +55,20 @@ const props = defineProps<{
|
|
|
57
55
|
<style scoped lang="scss">
|
|
58
56
|
.select-create-type-block {
|
|
59
57
|
background-color: var(--select-create-type-block-bg-color);
|
|
60
|
-
|
|
61
|
-
box-shadow: inset 0 0 0 1px var(--select-create-type-block-border-color);
|
|
58
|
+
border: 1px solid var(--select-create-type-block-border-color);
|
|
62
59
|
padding: 12px;
|
|
63
60
|
border-radius: 8px;
|
|
64
61
|
|
|
65
62
|
&:not(.selected):not(.disabled) {
|
|
66
63
|
cursor: pointer;
|
|
67
64
|
&:hover {
|
|
68
|
-
|
|
69
|
-
box-shadow: inset 0 0 0 1px
|
|
70
|
-
var(--select-create-type-block-border-hover-color);
|
|
65
|
+
border-color: var(--select-create-type-block-border-hover-color);
|
|
71
66
|
}
|
|
72
67
|
}
|
|
73
68
|
|
|
74
69
|
&.selected {
|
|
75
70
|
background-color: var(--select-create-type-block-selected-bg-color);
|
|
76
|
-
|
|
77
|
-
box-shadow: inset 0 0 0 1.5px
|
|
78
|
-
var(--select-create-type-block-selected-border-color);
|
|
71
|
+
border: 1.5px solid var(--select-create-type-block-selected-border-color);
|
|
79
72
|
}
|
|
80
73
|
|
|
81
74
|
&:not(:last-child) {
|
|
@@ -84,9 +77,8 @@ const props = defineProps<{
|
|
|
84
77
|
|
|
85
78
|
.description {
|
|
86
79
|
font-size: 13px;
|
|
87
|
-
color: #9da6ad
|
|
88
|
-
|
|
89
|
-
line-height: 18px;
|
|
80
|
+
color: #9da6ad;
|
|
81
|
+
margin: 8px 0 0 28px;
|
|
90
82
|
}
|
|
91
83
|
}
|
|
92
84
|
</style>
|
|
@@ -40,7 +40,6 @@ const emits = defineEmits<{
|
|
|
40
40
|
event: 'check-name',
|
|
41
41
|
value: [[string, UI_I_TreeNode | null], (error: any) => void]
|
|
42
42
|
): void
|
|
43
|
-
(event: 'has-errors', value: boolean): void
|
|
44
43
|
}>()
|
|
45
44
|
|
|
46
45
|
const { $store }: any = useNuxtApp()
|
|
@@ -146,13 +145,6 @@ const showValidationErrors = (data: string[]): void => {
|
|
|
146
145
|
const onRemoveValidationErrors = (): void => {
|
|
147
146
|
errors.value = []
|
|
148
147
|
}
|
|
149
|
-
watch(
|
|
150
|
-
errors,
|
|
151
|
-
(newValue) => {
|
|
152
|
-
emits('has-errors', !newValue.length)
|
|
153
|
-
},
|
|
154
|
-
{ immediate: true, deep: true }
|
|
155
|
-
)
|
|
156
148
|
|
|
157
149
|
watch(
|
|
158
150
|
() => props.show,
|
|
@@ -171,4 +163,5 @@ watch(
|
|
|
171
163
|
const isShowHelp = ref<boolean>(false)
|
|
172
164
|
</script>
|
|
173
165
|
|
|
174
|
-
<style scoped lang="scss"
|
|
166
|
+
<style scoped lang="scss">
|
|
167
|
+
</style>
|