bfg-common 1.6.47 → 1.6.49
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/localization/local_be.json +9 -255
- package/assets/localization/local_en.json +17 -264
- package/assets/localization/local_hy.json +11 -257
- package/assets/localization/local_kk.json +9 -255
- package/assets/localization/local_ru.json +18 -264
- package/assets/localization/local_zh.json +9 -255
- package/assets/scss/common/global.scss +0 -11
- package/assets/scss/common/theme.scss +2 -2
- package/components/atoms/stack/StackBlock.vue +1 -1
- package/components/atoms/tooltip/TooltipError.vue +0 -3
- package/components/common/adapterManager/addAdapterModal/AddAdapterModalNew.vue +1 -1
- package/components/common/adapterManager/addAdapterWarningModal/AddAdapterWarningModalNew.vue +1 -0
- package/components/common/adapterManager/ui/table/adapters/AdaptersNew.vue +0 -1
- package/components/common/certificate/CertificateInfo.vue +1 -7
- package/components/common/configure/physicalAdapters/PhysicalAdapters.vue +0 -6
- package/components/common/configure/physicalAdapters/PhysicalAdaptersNew.vue +192 -219
- package/components/common/configure/physicalAdapters/PhysicalAdaptersOld.vue +4 -6
- package/components/common/configure/physicalAdapters/buttons/Buttons.vue +0 -1
- package/components/common/configure/physicalAdapters/modals/edit/Edit.vue +1 -26
- package/components/common/configure/physicalAdapters/modals/edit/EditNew.vue +1 -30
- package/components/common/configure/physicalAdapters/modals/edit/lib/models/interfaces.ts +0 -5
- package/components/common/configure/physicalAdapters/tableView/TableViewNew.vue +1 -12
- package/components/common/configure/physicalAdapters/tableView/lib/config/physicalAdaptersTableConfigNew.ts +21 -21
- package/components/common/configure/physicalAdapters/tableView/lib/config/settings.ts +5 -12
- package/components/common/configure/physicalAdapters/tableView/lib/models/interfaces.ts +1 -4
- package/components/common/diagramMain/Diagram.vue +85 -167
- package/components/common/diagramMain/DiagramMain.vue +10 -34
- package/components/common/diagramMain/{header/HeaderOld.vue → Header.vue} +67 -78
- package/components/common/diagramMain/modals/Modals.vue +0 -4
- package/components/common/diagramMain/modals/editSettings/tabs/NetworkProperties.vue +2 -2
- package/components/common/diagramMain/modals/lib/config/diagramConfig.ts +2 -43
- package/components/common/diagramMain/modals/lib/config/index.ts +1 -2
- package/components/common/diagramMain/modals/lib/config/vmKernelAdapter.ts +1 -1
- package/components/common/diagramMain/modals/migrateVmkernelAdapter/MigrateVmkernelAdapter.vue +2 -2
- package/components/common/diagramMain/modals/migrateVmkernelAdapter/validations/common.ts +1 -1
- package/components/common/layout/theHeader/ThemeSwitch.vue +1 -1
- package/components/common/layout/theHeader/modals/reconnect/New.vue +30 -38
- package/components/common/layout/theHeader/userMenu/modals/changePassword/New.vue +9 -8
- package/components/common/layout/theHeader/userMenu/modals/preferences/New.vue +0 -4
- package/components/common/layout/theHeader/userMenu/modals/preferences/Old.vue +2 -9
- package/components/common/layout/theHeader/userMenu/modals/preferences/changeLanguage/ChangeLanguage.vue +7 -11
- package/components/common/layout/theHeader/userMenu/modals/preferences/defaultConsole/DefaultConsole.vue +1 -7
- package/components/common/layout/theHeader/userMenu/modals/preferences/defaultConsole/lib/config/consoleOptions.ts +5 -8
- package/components/common/layout/theHeader/userMenu/modals/preferences/timeFormat/TimeFormat.vue +5 -9
- package/components/common/layout/theHeader/userMenu/modals/preferences/timeFormat/lib/config/formatOptions.ts +1 -1
- package/components/common/layout/theHeader/userMenu/modals/preferences/view/Old.vue +9 -5
- package/components/common/layout/theHeader/userMenu/modals/preferences/view/View.vue +6 -9
- package/components/common/mainNavigationPanel/MainNavigationPanelNew.vue +1 -3
- package/components/common/noDataProvided/NoDataProvidedNew.vue +1 -1
- package/components/common/pages/backups/modals/createBackup/datastores/tableView/new/lib/config/table.ts +4 -4
- package/components/common/pages/backups/modals/createBackup/datastores/tableView/old/lib/config/table.ts +4 -4
- package/components/common/pages/hardwareHealth/HardwareHealthNew.vue +1 -1
- package/components/common/pages/hardwareHealth/historyTestimony/GraphNew.vue +1 -1
- package/components/common/pages/hardwareHealth/historyTestimony/tools/chartOptionsModal/actions/ActionsNew.vue +1 -1
- package/components/common/pages/scheduledTasks/table/lib/models/enums.ts +0 -9
- package/components/common/pages/scheduledTasks/table/new/New.vue +10 -12
- package/components/common/pages/tasks/Tasks.vue +1 -4
- package/components/common/pages/tasks/table/Table.vue +23 -25
- package/components/common/readyToComplete/New.vue +0 -1
- package/components/common/split/vertical/New.vue +8 -42
- package/components/common/split/vertical/Old.vue +2 -31
- package/components/common/split/vertical/Vertical.vue +0 -4
- package/components/common/vm/actions/add/New.vue +6 -21
- package/components/common/vm/actions/common/customizeHardware/virtualHardware/cdDvdDrive/media/Media.vue +1 -14
- package/components/common/vm/actions/common/customizeHardware/virtualHardware/cdDvdDrive/media/New.vue +0 -5
- package/components/common/vm/actions/common/customizeHardware/virtualHardware/cdDvdDrive/media/Old.vue +0 -1
- package/components/common/vm/actions/common/customizeHardware/virtualHardware/cpu/New.vue +0 -1
- package/components/common/vm/actions/common/customizeHardware/virtualHardware/newHardDisk/NewHardDisk.vue +2 -1
- package/components/common/vm/actions/common/customizeHardware/virtualHardware/reservation/New.vue +0 -2
- package/components/common/vm/actions/common/select/storage/new/lib/config/table.ts +15 -13
- package/components/common/vm/actions/confirm/Confirm.vue +0 -3
- package/components/common/vm/snapshots/DetailView.vue +6 -6
- package/components/common/wizards/datastore/add/New.vue +0 -6
- package/components/common/wizards/datastore/add/lib/config/steps.ts +1 -1
- package/components/common/wizards/datastore/add/steps/nameAndDevice/NameAndDeviceNew.vue +1 -1
- package/components/common/wizards/datastore/add/steps/nameAndDevice/advancedOptions/New.vue +1 -1
- package/components/common/wizards/network/add/Add.vue +2 -13
- package/components/common/wizards/network/add/AddNew.vue +26 -22
- package/components/common/wizards/network/add/lib/config/initialData.ts +4 -6
- package/components/common/wizards/network/add/lib/config/steps.ts +1 -1
- package/components/common/wizards/network/add/lib/models/interfaces.ts +0 -1
- package/components/common/wizards/network/add/lib/utils/utils.ts +1 -1
- package/components/common/wizards/network/add/steps/connectionSettings/ConnectionSettingsOld.vue +1 -5
- package/components/common/wizards/network/add/steps/ipFourSettings/IpFourSettingsNew.vue +8 -2
- package/components/common/wizards/network/add/steps/ipFourSettings/IpFourSettingsOld.vue +0 -3
- package/components/common/wizards/network/add/steps/portProperties/PortPropertiesNew.vue +8 -2
- package/components/common/wizards/network/add/steps/portProperties/PortPropertiesOld.vue +2 -6
- package/components/common/wizards/network/add/steps/selectTargetDevice/SelectTargetDeviceNew.vue +3 -10
- package/components/common/wizards/network/add/steps/selectTargetDevice/SelectTargetDeviceOld.vue +0 -4
- package/components/common/wizards/network/add/steps/selectTargetDevice/modals/new/SelectNetwork.vue +1 -5
- package/components/common/wizards/network/add/validations/common.ts +1 -1
- package/components/common/wizards/vm/migrate/New.vue +3 -13
- package/components/common/wizards/vm/migrate/lib/config/constructDataReady.ts +0 -5
- package/components/common/wizards/vm/migrate/lib/config/steps.ts +2 -3
- package/components/common/wizards/vm/migrate/steps/computeResource/New.vue +1 -2
- package/components/common/wizards/vm/migrate/steps/computeResource/tableView/new/New.vue +21 -40
- package/components/common/wizards/vm/migrate/steps/computeResource/tableView/new/lib/config/hostTable.ts +14 -44
- package/components/common/wizards/vm/migrate/steps/computeResource/tableView/new/lib/models/enums.ts +0 -4
- package/components/common/wizards/vm/migrate/steps/priority/New.vue +2 -7
- package/components/common/wizards/vm/migrate/steps/selectStorage/New.vue +7 -22
- package/components/common/wizards/vm/migrate/steps/selectStorage/configure/batch/New.vue +0 -6
- package/components/common/wizards/vm/migrate/steps/selectStorage/configure/batch/table/new/New.vue +1 -4
- package/components/common/wizards/vm/migrate/steps/selectStorage/configure/batch/table/new/lib/config/datastoreTable.ts +16 -12
- package/components/common/wizards/vm/migrate/steps/selectStorage/configure/disk/table/new/New.vue +5 -10
- package/components/common/wizards/vm/migrate/steps/selectStorage/configure/disk/table/new/lib/config/diskTable.ts +11 -16
- package/components/common/wizards/vm/migrate/steps/selectStorage/configure/disk/table/old/lib/config/diskTable.ts +1 -7
- package/components/common/wizards/vm/migrate/steps/selectStorage/selectedPerDisk/New.vue +10 -17
- package/components/common/wizards/vm/migrate/steps/type/TypeNew.vue +0 -1
- package/components/common/wizards/vm/migrate/vmOrigin/New.vue +15 -35
- package/lib/models/store/tasks/enums.ts +0 -3
- package/lib/models/store/tasks/types.ts +6 -7
- package/package.json +2 -2
- package/plugins/directives.ts +5 -3
- package/public/spice-console/application/agent.js +17 -18
- package/store/tasks/actions.ts +8 -26
- package/store/tasks/mappers/recentTasks.ts +0 -1
- package/components/common/configure/physicalAdapters/modals/edit/lib/validations/validations.ts +0 -19
- package/components/common/diagramMain/header/Header.vue +0 -49
- package/components/common/diagramMain/header/HeaderNew.vue +0 -155
- package/components/common/diagramMain/skeleton/Header.vue +0 -31
- package/components/common/diagramMain/skeleton/Switch.vue +0 -75
- package/components/common/wizards/vm/migrate/steps/computeResource/tableView/new/lib/config/clusterTable.ts +0 -340
|
@@ -55,13 +55,13 @@
|
|
|
55
55
|
<div ref="subTitleBlockName">
|
|
56
56
|
<div class="subtitle-block">
|
|
57
57
|
<div
|
|
58
|
-
|
|
59
|
-
|
|
58
|
+
id="name-alert-wrapper"
|
|
59
|
+
:class="[{ 'mb-4': !isNameAlertWrapperEmpty }]"
|
|
60
60
|
></div>
|
|
61
61
|
<ui-wizard-subtitle
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
62
|
+
:sub-title="
|
|
63
|
+
localization.vmWizard.specifyUniqueNameAndTargetLocationForVm
|
|
64
|
+
"
|
|
65
65
|
/>
|
|
66
66
|
</div>
|
|
67
67
|
</div>
|
|
@@ -153,8 +153,7 @@
|
|
|
153
153
|
:datastore="props.datastore"
|
|
154
154
|
:is-datastore-loading="props.isDatastoreLoading"
|
|
155
155
|
:get-datastore-table-func="props.getDatastoreTableFunc"
|
|
156
|
-
:storage="
|
|
157
|
-
@change-storage="setSelectedStorageIdLocal"
|
|
156
|
+
:storage="props.vmtSettings?.storage"
|
|
158
157
|
@submit="emits('change-storage', $event)"
|
|
159
158
|
@has-errors="isStorageAlertWrapperEmpty = $event"
|
|
160
159
|
/>
|
|
@@ -594,20 +593,6 @@ const isNameAlertWrapperEmpty = ref<boolean>(false)
|
|
|
594
593
|
// const isComputeResourceAlertWrapperEmpty = ref<boolean>(false)
|
|
595
594
|
const isStorageAlertWrapperEmpty = ref<boolean>(false)
|
|
596
595
|
const isCompatibilityAlertWrapperEmpty = ref<boolean>(false)
|
|
597
|
-
|
|
598
|
-
const storageLocal = computed<UI_I_DatastoreTableItem | undefined>(() => {
|
|
599
|
-
return selectedStorageLocal.value ?? props.vmtSettings?.storage
|
|
600
|
-
})
|
|
601
|
-
|
|
602
|
-
/* TODO: В дальнейшем необходимо вынести все данные наружу и передавать его через v-model */
|
|
603
|
-
// рефакторинг. При возврате на шаг выбора хранилища ранее выбранное хранилище не отображается как выбранное.
|
|
604
|
-
// Для хранилища в v-model необходимо сохранять ID хранилища, а не ключ индекса.
|
|
605
|
-
const selectedStorageLocal = ref<UI_I_DatastoreTableItem | null>(null)
|
|
606
|
-
const setSelectedStorageIdLocal = (datastore: UI_I_DatastoreTableItem) => {
|
|
607
|
-
selectedStorageLocal.value = {
|
|
608
|
-
id: datastore.id,
|
|
609
|
-
} as UI_I_DatastoreTableItem
|
|
610
|
-
}
|
|
611
596
|
</script>
|
|
612
597
|
|
|
613
598
|
<style>
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
<template>
|
|
2
2
|
<component
|
|
3
3
|
:is="currentComponent"
|
|
4
|
-
v-model:cd-dvd-media="
|
|
4
|
+
v-model:cd-dvd-media="cdDvdMedia"
|
|
5
5
|
:index="props.index"
|
|
6
6
|
@browse="emits('browse')"
|
|
7
7
|
/>
|
|
@@ -24,19 +24,6 @@ const currentComponent = computed(() =>
|
|
|
24
24
|
? defineAsyncComponent(() => import('./New.vue'))
|
|
25
25
|
: defineAsyncComponent(() => import('./Old.vue'))
|
|
26
26
|
)
|
|
27
|
-
|
|
28
|
-
const localCdDvdMedia = ref<string>('')
|
|
29
|
-
|
|
30
|
-
watch(cdDvdMedia, (newValue) => {
|
|
31
|
-
localCdDvdMedia.value = newValue.replace(/^([^:]+):\//, '[$1]:/')
|
|
32
|
-
}, { immediate: true })
|
|
33
|
-
|
|
34
|
-
watch(localCdDvdMedia, (newValue) => {
|
|
35
|
-
const cleaned = newValue.replace(/^\[([^\]]+)\]:\//, '$1:/')
|
|
36
|
-
if (cleaned !== cdDvdMedia.value) {
|
|
37
|
-
cdDvdMedia.value = cleaned
|
|
38
|
-
}
|
|
39
|
-
})
|
|
40
27
|
</script>
|
|
41
28
|
|
|
42
29
|
<style scoped></style>
|
|
@@ -56,11 +56,6 @@ const emits = defineEmits<{
|
|
|
56
56
|
}>()
|
|
57
57
|
|
|
58
58
|
const localization = computed<UI_I_Localization>(() => useLocal())
|
|
59
|
-
|
|
60
|
-
onMounted(() => {
|
|
61
|
-
const cdDvdMediaInputElement = document.getElementById('vm-wizard-dvd-media-input')
|
|
62
|
-
cdDvdMediaInputElement?.classList.remove('text-ellipsis')
|
|
63
|
-
})
|
|
64
59
|
</script>
|
|
65
60
|
|
|
66
61
|
<style>
|
|
@@ -315,7 +315,8 @@ const isDisabledMode = computed<boolean>(() => {
|
|
|
315
315
|
})
|
|
316
316
|
const isDisabledCache = computed<boolean>(() => {
|
|
317
317
|
if (isNewHardDisk.value) return false
|
|
318
|
-
return props.isEdit || isRunning.value
|
|
318
|
+
// return props.isEdit || isRunning.value
|
|
319
|
+
return isRunning.value
|
|
319
320
|
})
|
|
320
321
|
const isDisabledBus = computed<boolean>(() => {
|
|
321
322
|
return !isNewHardDisk.value && isRunning.value
|
|
@@ -9,7 +9,9 @@ import type { UI_I_StatusData } from '~/components/common/vm/actions/common/sele
|
|
|
9
9
|
import { datastoreLocalizationByState } from '~/components/common/lib/config/states'
|
|
10
10
|
import { getStatus } from '~/components/common/vm/actions/common/select/storage/new/lib/utils/utils'
|
|
11
11
|
|
|
12
|
-
export const tableDataFunc = (
|
|
12
|
+
export const tableDataFunc = (
|
|
13
|
+
localization: UI_I_Localization
|
|
14
|
+
): UI_I_DataTable => ({
|
|
13
15
|
id: 'select-storage',
|
|
14
16
|
header: [
|
|
15
17
|
{
|
|
@@ -29,7 +31,7 @@ export const tableDataFunc = (localization: UI_I_Localization): UI_I_DataTable =
|
|
|
29
31
|
text: localization.inventorySummary.state,
|
|
30
32
|
isSortable: false,
|
|
31
33
|
sort: 'asc',
|
|
32
|
-
sortColumn:
|
|
34
|
+
sortColumn: true,
|
|
33
35
|
width: '160px',
|
|
34
36
|
show: true,
|
|
35
37
|
filter: true,
|
|
@@ -40,7 +42,7 @@ export const tableDataFunc = (localization: UI_I_Localization): UI_I_DataTable =
|
|
|
40
42
|
text: localization.common.capacity,
|
|
41
43
|
isSortable: false,
|
|
42
44
|
sort: 'asc',
|
|
43
|
-
sortColumn:
|
|
45
|
+
sortColumn: true,
|
|
44
46
|
width: '150px',
|
|
45
47
|
show: true,
|
|
46
48
|
filter: true,
|
|
@@ -51,7 +53,7 @@ export const tableDataFunc = (localization: UI_I_Localization): UI_I_DataTable =
|
|
|
51
53
|
text: localization.common.provisioned,
|
|
52
54
|
isSortable: false,
|
|
53
55
|
sort: 'asc',
|
|
54
|
-
sortColumn:
|
|
56
|
+
sortColumn: true,
|
|
55
57
|
width: '150px',
|
|
56
58
|
show: true,
|
|
57
59
|
filter: true,
|
|
@@ -62,7 +64,7 @@ export const tableDataFunc = (localization: UI_I_Localization): UI_I_DataTable =
|
|
|
62
64
|
text: localization.common.free,
|
|
63
65
|
isSortable: false,
|
|
64
66
|
sort: 'asc',
|
|
65
|
-
sortColumn:
|
|
67
|
+
sortColumn: true,
|
|
66
68
|
width: '150px',
|
|
67
69
|
show: true,
|
|
68
70
|
filter: true,
|
|
@@ -73,7 +75,7 @@ export const tableDataFunc = (localization: UI_I_Localization): UI_I_DataTable =
|
|
|
73
75
|
text: localization.common.used,
|
|
74
76
|
isSortable: false,
|
|
75
77
|
sort: 'asc',
|
|
76
|
-
sortColumn:
|
|
78
|
+
sortColumn: true,
|
|
77
79
|
width: '150px',
|
|
78
80
|
show: true,
|
|
79
81
|
filter: true,
|
|
@@ -84,7 +86,7 @@ export const tableDataFunc = (localization: UI_I_Localization): UI_I_DataTable =
|
|
|
84
86
|
text: localization.common.type,
|
|
85
87
|
isSortable: false,
|
|
86
88
|
sort: 'asc',
|
|
87
|
-
sortColumn:
|
|
89
|
+
sortColumn: true,
|
|
88
90
|
width: '120px',
|
|
89
91
|
show: true,
|
|
90
92
|
filter: true,
|
|
@@ -95,7 +97,7 @@ export const tableDataFunc = (localization: UI_I_Localization): UI_I_DataTable =
|
|
|
95
97
|
text: localization.common.thinProvisioning,
|
|
96
98
|
isSortable: false,
|
|
97
99
|
sort: 'asc',
|
|
98
|
-
sortColumn:
|
|
100
|
+
sortColumn: true,
|
|
99
101
|
width: '160px',
|
|
100
102
|
show: true,
|
|
101
103
|
filter: true,
|
|
@@ -106,7 +108,7 @@ export const tableDataFunc = (localization: UI_I_Localization): UI_I_DataTable =
|
|
|
106
108
|
text: localization.common.access,
|
|
107
109
|
isSortable: false,
|
|
108
110
|
sort: 'asc',
|
|
109
|
-
sortColumn:
|
|
111
|
+
sortColumn: true,
|
|
110
112
|
width: '120px',
|
|
111
113
|
show: true,
|
|
112
114
|
filter: true,
|
|
@@ -117,7 +119,7 @@ export const tableDataFunc = (localization: UI_I_Localization): UI_I_DataTable =
|
|
|
117
119
|
text: localization.common.hardwareAcceleration,
|
|
118
120
|
isSortable: false,
|
|
119
121
|
sort: 'asc',
|
|
120
|
-
sortColumn:
|
|
122
|
+
sortColumn: true,
|
|
121
123
|
width: '200px',
|
|
122
124
|
show: true,
|
|
123
125
|
filter: true,
|
|
@@ -128,7 +130,7 @@ export const tableDataFunc = (localization: UI_I_Localization): UI_I_DataTable =
|
|
|
128
130
|
text: localization.common.driverType,
|
|
129
131
|
isSortable: false,
|
|
130
132
|
sort: 'asc',
|
|
131
|
-
sortColumn:
|
|
133
|
+
sortColumn: true,
|
|
132
134
|
width: '150px',
|
|
133
135
|
show: true,
|
|
134
136
|
filter: true,
|
|
@@ -139,7 +141,7 @@ export const tableDataFunc = (localization: UI_I_Localization): UI_I_DataTable =
|
|
|
139
141
|
text: localization.common.device,
|
|
140
142
|
isSortable: false,
|
|
141
143
|
sort: 'asc',
|
|
142
|
-
sortColumn:
|
|
144
|
+
sortColumn: true,
|
|
143
145
|
width: '150px',
|
|
144
146
|
show: true,
|
|
145
147
|
filter: true,
|
|
@@ -150,7 +152,7 @@ export const tableDataFunc = (localization: UI_I_Localization): UI_I_DataTable =
|
|
|
150
152
|
text: localization.common.storageIoControl,
|
|
151
153
|
isSortable: false,
|
|
152
154
|
sort: 'asc',
|
|
153
|
-
sortColumn:
|
|
155
|
+
sortColumn: true,
|
|
154
156
|
width: '180px',
|
|
155
157
|
show: true,
|
|
156
158
|
filter: true,
|
|
@@ -4,7 +4,6 @@
|
|
|
4
4
|
:sub-title="props.subTitle"
|
|
5
5
|
:description="props.description"
|
|
6
6
|
:modal-texts="props.modalTexts"
|
|
7
|
-
:loading="props.isLoading"
|
|
8
7
|
@hide-modal="emits('hide')"
|
|
9
8
|
@confirm="emits('confirm')"
|
|
10
9
|
>
|
|
@@ -23,11 +22,9 @@ const props = withDefaults(
|
|
|
23
22
|
subTitle: string
|
|
24
23
|
description: string
|
|
25
24
|
modalTexts?: UI_I_ModalTexts
|
|
26
|
-
isLoading?: boolean
|
|
27
25
|
}>(),
|
|
28
26
|
{
|
|
29
27
|
modalTexts: undefined,
|
|
30
|
-
isLoading: false
|
|
31
28
|
}
|
|
32
29
|
)
|
|
33
30
|
|
|
@@ -7,13 +7,13 @@
|
|
|
7
7
|
>
|
|
8
8
|
<tbody>
|
|
9
9
|
<tr>
|
|
10
|
-
<td class="left"
|
|
10
|
+
<td class="left">{{ localization.common.name }}</td>
|
|
11
11
|
<td class="left snapshot-name-label" data-id="vm-snapshot-name">
|
|
12
12
|
{{ detailData.name }}
|
|
13
13
|
</td>
|
|
14
14
|
</tr>
|
|
15
15
|
<tr>
|
|
16
|
-
<td class="left"
|
|
16
|
+
<td class="left">{{ localization.common.description }}</td>
|
|
17
17
|
<td
|
|
18
18
|
class="left snapshot-name-label"
|
|
19
19
|
data-id="vm-snapshot-description"
|
|
@@ -22,17 +22,17 @@
|
|
|
22
22
|
</td>
|
|
23
23
|
</tr>
|
|
24
24
|
<tr>
|
|
25
|
-
<td class="left"
|
|
25
|
+
<td class="left">{{ localization.snapshots.timestamp }}</td>
|
|
26
26
|
<td class="left snapshot-name-label" data-id="vm-snapshot-timestamp">
|
|
27
27
|
{{ detailData.timestamp }}
|
|
28
28
|
</td>
|
|
29
29
|
</tr>
|
|
30
30
|
<tr>
|
|
31
|
-
<td class="left"
|
|
31
|
+
<td class="left">{{ localization.common.size }}</td>
|
|
32
32
|
<td class="left snapshot-name-label">{{ detailData.size }}</td>
|
|
33
33
|
</tr>
|
|
34
34
|
<tr>
|
|
35
|
-
<td class="left"
|
|
35
|
+
<td class="left">
|
|
36
36
|
{{ localization.common.snapshotTheVirtualMachinesMemory }}
|
|
37
37
|
</td>
|
|
38
38
|
<td class="left snapshot-name-label" data-id="vm-snapshot-of-memory">
|
|
@@ -40,7 +40,7 @@
|
|
|
40
40
|
</td>
|
|
41
41
|
</tr>
|
|
42
42
|
<tr>
|
|
43
|
-
<td class="left"
|
|
43
|
+
<td class="left">
|
|
44
44
|
{{ localization.common.quiesceGuestFileSystem }}
|
|
45
45
|
</td>
|
|
46
46
|
<td
|
|
@@ -256,10 +256,4 @@ const onCreateDatastore = (): void => emits('submit')
|
|
|
256
256
|
padding: 10px 12px;
|
|
257
257
|
}
|
|
258
258
|
}
|
|
259
|
-
:deep(.ui-wizard-content-right-container) {
|
|
260
|
-
padding: 0 30px;
|
|
261
|
-
}
|
|
262
|
-
:deep(.ui-wizard-subtitle-container) + *, :deep(.ui-wizard-subtitle-container) {
|
|
263
|
-
padding-left: 2px;
|
|
264
|
-
}
|
|
265
259
|
</style>
|
|
@@ -130,7 +130,7 @@ export const stepsFunc = (
|
|
|
130
130
|
// },
|
|
131
131
|
{
|
|
132
132
|
id: dynamicSteps.readyComplete,
|
|
133
|
-
title: localization.
|
|
133
|
+
title: localization.common.readyComplete,
|
|
134
134
|
subTitle: localization.common.readyCompleteDatastoreDesc,
|
|
135
135
|
status: UI_E_WIZARD_STATUS.INACTIVE,
|
|
136
136
|
fields: {},
|
|
@@ -618,20 +618,9 @@ const finalValidationFunc = async (
|
|
|
618
618
|
const stepId = wizard.getStepIdByFieldName(fieldName)
|
|
619
619
|
|
|
620
620
|
if (stepId !== -1) {
|
|
621
|
-
let message = ''
|
|
622
|
-
|
|
623
|
-
if (validationFields[fieldName]) {
|
|
624
|
-
message = `${validationFields[
|
|
625
|
-
fieldName
|
|
626
|
-
][0].toUpperCase()}${validationFields[fieldName].substring(1)}`
|
|
627
|
-
|
|
628
|
-
message =
|
|
629
|
-
message.charAt(message.length - 1) !== '.' ? message + '.' : message
|
|
630
|
-
}
|
|
631
|
-
|
|
632
621
|
stepHasError = wizard.setValidation(stepId, fieldName, {
|
|
633
|
-
fieldMessage:
|
|
634
|
-
alertMessage:
|
|
622
|
+
fieldMessage: validationFields[fieldName],
|
|
623
|
+
alertMessage: validationFields[fieldName],
|
|
635
624
|
})
|
|
636
625
|
}
|
|
637
626
|
}
|
|
@@ -44,21 +44,22 @@
|
|
|
44
44
|
>
|
|
45
45
|
<template #subTitle>
|
|
46
46
|
<div ref="selectTargetDeviceBlock">
|
|
47
|
-
<div class="
|
|
47
|
+
<div class="subtitle-block flex flex-col">
|
|
48
48
|
<template
|
|
49
49
|
v-for="(message, field, key) in selectedStep.fields"
|
|
50
50
|
:key="key"
|
|
51
51
|
>
|
|
52
52
|
<ui-alert
|
|
53
|
-
v-if="!!message.alert"
|
|
54
53
|
:messages="[message.alert]"
|
|
55
54
|
test-id="select-target-device-alert"
|
|
55
|
+
:class="{
|
|
56
|
+
'mb-4':
|
|
57
|
+
props.alertMessages[selectedStep.id].length - 1 === key,
|
|
58
|
+
}"
|
|
56
59
|
size="md"
|
|
57
60
|
@hide="emits('hide-alert', selectedStep.id, field)"
|
|
58
61
|
/>
|
|
59
62
|
</template>
|
|
60
|
-
</div>
|
|
61
|
-
<div class="subtitle-block flex flex-col">
|
|
62
63
|
<ui-wizard-subtitle :sub-title="selectedStep.subTitle" />
|
|
63
64
|
<ui-line margin="12px 0 0" />
|
|
64
65
|
</div>
|
|
@@ -88,21 +89,22 @@
|
|
|
88
89
|
>
|
|
89
90
|
<template #subTitle>
|
|
90
91
|
<div ref="createStandardSwitchBlock">
|
|
91
|
-
<div class="
|
|
92
|
+
<div class="subtitle-block flex flex-col">
|
|
92
93
|
<template
|
|
93
94
|
v-for="(message, field, key) in selectedStep.fields"
|
|
94
95
|
:key="key"
|
|
95
96
|
>
|
|
96
97
|
<ui-alert
|
|
97
|
-
v-if="!!message.alert"
|
|
98
98
|
:messages="[message.alert]"
|
|
99
99
|
test-id="create-standard-switch-alert"
|
|
100
|
+
:class="{
|
|
101
|
+
'mb-4':
|
|
102
|
+
props.alertMessages[selectedStep.id].length - 1 === key,
|
|
103
|
+
}"
|
|
100
104
|
size="md"
|
|
101
105
|
@hide="emits('hide-alert', selectedStep.id, field)"
|
|
102
106
|
/>
|
|
103
107
|
</template>
|
|
104
|
-
</div>
|
|
105
|
-
<div class="subtitle-block flex flex-col">
|
|
106
108
|
<ui-wizard-subtitle :sub-title="selectedStep.subTitle" />
|
|
107
109
|
<ui-line margin="12px 0 0" />
|
|
108
110
|
</div>
|
|
@@ -144,21 +146,22 @@
|
|
|
144
146
|
>
|
|
145
147
|
<template #subTitle>
|
|
146
148
|
<div ref="portPropertiesBlock">
|
|
147
|
-
<div class="
|
|
149
|
+
<div class="subtitle-block flex flex-col">
|
|
148
150
|
<template
|
|
149
151
|
v-for="(message, field, key) in selectedStep.fields"
|
|
150
152
|
:key="key"
|
|
151
153
|
>
|
|
152
154
|
<ui-alert
|
|
153
|
-
v-if="!!message.alert"
|
|
154
155
|
:messages="[message.alert]"
|
|
155
156
|
test-id="port-properties-alert"
|
|
157
|
+
:class="{
|
|
158
|
+
'mb-4':
|
|
159
|
+
props.alertMessages[selectedStep.id].length - 1 === key,
|
|
160
|
+
}"
|
|
156
161
|
size="md"
|
|
157
162
|
@hide="emits('hide-alert', selectedStep.id, field)"
|
|
158
163
|
/>
|
|
159
164
|
</template>
|
|
160
|
-
</div>
|
|
161
|
-
<div class="subtitle-block flex flex-col">
|
|
162
165
|
<ui-wizard-subtitle :sub-title="selectedStep.subTitle" />
|
|
163
166
|
<ui-line margin="12px 0 0" />
|
|
164
167
|
</div>
|
|
@@ -187,21 +190,22 @@
|
|
|
187
190
|
>
|
|
188
191
|
<template #subTitle>
|
|
189
192
|
<div ref="ipFourSettingsBlock">
|
|
190
|
-
<div class="
|
|
193
|
+
<div class="subtitle-block flex flex-col">
|
|
191
194
|
<template
|
|
192
195
|
v-for="(message, field, key) in selectedStep.fields"
|
|
193
196
|
:key="key"
|
|
194
197
|
>
|
|
195
198
|
<ui-alert
|
|
196
|
-
v-if="!!message.alert"
|
|
197
199
|
:messages="[message.alert]"
|
|
198
200
|
test-id="ip-four-settings-alert"
|
|
201
|
+
:class="{
|
|
202
|
+
'mb-4':
|
|
203
|
+
props.alertMessages[selectedStep.id].length - 1 === key,
|
|
204
|
+
}"
|
|
199
205
|
size="md"
|
|
200
206
|
@hide="emits('hide-alert', selectedStep.id, field)"
|
|
201
207
|
/>
|
|
202
208
|
</template>
|
|
203
|
-
</div>
|
|
204
|
-
<div class="subtitle-block flex flex-col">
|
|
205
209
|
<ui-wizard-subtitle :sub-title="selectedStep.subTitle" />
|
|
206
210
|
<ui-line margin="12px 0 0" />
|
|
207
211
|
</div>
|
|
@@ -229,21 +233,22 @@
|
|
|
229
233
|
>
|
|
230
234
|
<template #subTitle>
|
|
231
235
|
<div ref="connectionSettingsBlock">
|
|
232
|
-
<div class="
|
|
236
|
+
<div class="subtitle-block flex flex-col">
|
|
233
237
|
<template
|
|
234
238
|
v-for="(message, field, key) in selectedStep.fields"
|
|
235
239
|
:key="key"
|
|
236
240
|
>
|
|
237
241
|
<ui-alert
|
|
238
|
-
v-if="!!message.alert"
|
|
239
242
|
:messages="[message.alert]"
|
|
240
243
|
test-id="connection-settings-alert"
|
|
244
|
+
:class="{
|
|
245
|
+
'mb-4':
|
|
246
|
+
props.alertMessages[selectedStep.id].length - 1 === key,
|
|
247
|
+
}"
|
|
241
248
|
size="md"
|
|
242
249
|
@hide="emits('hide-alert', selectedStep.id, field)"
|
|
243
250
|
/>
|
|
244
251
|
</template>
|
|
245
|
-
</div>
|
|
246
|
-
<div class="subtitle-block flex flex-col">
|
|
247
252
|
<ui-wizard-subtitle :sub-title="selectedStep.subTitle" />
|
|
248
253
|
<ui-line margin="12px 0 0" />
|
|
249
254
|
</div>
|
|
@@ -458,7 +463,6 @@ const onChangeSteps = async (value: UI_I_WizardStep[]): Promise<void> => {
|
|
|
458
463
|
}
|
|
459
464
|
:deep(.ui-wizard-content-with-subtitle) {
|
|
460
465
|
padding-right: 0;
|
|
461
|
-
scrollbar-gutter: unset;
|
|
462
466
|
}
|
|
463
467
|
}
|
|
464
468
|
|
|
@@ -473,7 +477,7 @@ const onChangeSteps = async (value: UI_I_WizardStep[]): Promise<void> => {
|
|
|
473
477
|
:deep(.ui-alert-item) {
|
|
474
478
|
margin-bottom: 12px;
|
|
475
479
|
|
|
476
|
-
|
|
480
|
+
&.mb-4 {
|
|
477
481
|
margin-bottom: 16px;
|
|
478
482
|
}
|
|
479
483
|
}
|
|
@@ -37,7 +37,7 @@ export const portPropertiesInitial = (
|
|
|
37
37
|
localization: UI_I_Localization
|
|
38
38
|
): UI_I_PortProperties => ({
|
|
39
39
|
networkLabel: '',
|
|
40
|
-
vlanId: `${localization.common.
|
|
40
|
+
vlanId: `${localization.common.none} (0)`,
|
|
41
41
|
mtu: {
|
|
42
42
|
option: '0',
|
|
43
43
|
size: 1500,
|
|
@@ -62,21 +62,19 @@ export const connectionSettingsInitial = (
|
|
|
62
62
|
localization: UI_I_Localization
|
|
63
63
|
): UI_I_ConnectionSettings => ({
|
|
64
64
|
networkLabel: 'VM Network',
|
|
65
|
-
vlanId: `${localization.common.
|
|
65
|
+
vlanId: `${localization.common.none} (0)`,
|
|
66
66
|
})
|
|
67
67
|
|
|
68
68
|
export const vlanIdSelectDataFunc = (
|
|
69
69
|
localization: UI_I_Localization
|
|
70
70
|
): UI_I_VlanIdData[] => [
|
|
71
71
|
{
|
|
72
|
-
text: `${localization.common.
|
|
73
|
-
value: `${localization.common.
|
|
74
|
-
testId: 'vlan-id-start'
|
|
72
|
+
text: `${localization.common.none} (0)`,
|
|
73
|
+
value: `${localization.common.none} (0)`,
|
|
75
74
|
},
|
|
76
75
|
{
|
|
77
76
|
text: `${localization.common.all} (4095)`,
|
|
78
77
|
value: `${localization.common.all} (4095)`,
|
|
79
|
-
testId: 'vlan-id-end'
|
|
80
78
|
},
|
|
81
79
|
]
|
|
82
80
|
|
|
@@ -145,7 +145,7 @@ export const stepsFunc = (
|
|
|
145
145
|
},
|
|
146
146
|
{
|
|
147
147
|
id: 7,
|
|
148
|
-
title: localization.
|
|
148
|
+
title: localization.common.readyComplete,
|
|
149
149
|
subTitle: localization.common.addNetworkingReadyCompleteSubtitle,
|
|
150
150
|
status: UI_E_WIZARD_STATUS.INACTIVE,
|
|
151
151
|
fields: {},
|
package/components/common/wizards/network/add/steps/connectionSettings/ConnectionSettingsOld.vue
CHANGED
|
@@ -18,7 +18,6 @@
|
|
|
18
18
|
<fieldset>
|
|
19
19
|
<atoms-tooltip-error
|
|
20
20
|
:has-error="!!props.messagesFields.name.field"
|
|
21
|
-
test-id="network-label-error"
|
|
22
21
|
>
|
|
23
22
|
<template #elem>
|
|
24
23
|
<input
|
|
@@ -73,10 +72,7 @@
|
|
|
73
72
|
class="is-error tooltip-trigger"
|
|
74
73
|
name="info"
|
|
75
74
|
/>
|
|
76
|
-
<div
|
|
77
|
-
class="tooltip-top-left tooltip-content error"
|
|
78
|
-
data-id="vlan-id-error"
|
|
79
|
-
>
|
|
75
|
+
<div class="tooltip-top-left tooltip-content error">
|
|
80
76
|
{{ props.messagesFields.vlan.field }}
|
|
81
77
|
</div>
|
|
82
78
|
</div>
|
|
@@ -281,8 +281,14 @@ const fields = computed({
|
|
|
281
281
|
}
|
|
282
282
|
}
|
|
283
283
|
:deep(.ui-checkbox-label) {
|
|
284
|
-
|
|
285
|
-
|
|
284
|
+
text-overflow: ellipsis;
|
|
285
|
+
white-space: nowrap;
|
|
286
|
+
overflow: hidden;
|
|
287
|
+
|
|
288
|
+
.ui-checkbox-label-text {
|
|
289
|
+
text-overflow: ellipsis;
|
|
290
|
+
white-space: nowrap;
|
|
291
|
+
overflow: hidden;
|
|
286
292
|
}
|
|
287
293
|
}
|
|
288
294
|
.tooltip-text {
|
|
@@ -53,7 +53,6 @@
|
|
|
53
53
|
:has-error="
|
|
54
54
|
!!props.messagesFields['ipv4_settings.ipv4'].field
|
|
55
55
|
"
|
|
56
|
-
test-id="address-error"
|
|
57
56
|
>
|
|
58
57
|
<template #elem>
|
|
59
58
|
<input
|
|
@@ -89,7 +88,6 @@
|
|
|
89
88
|
:has-error="
|
|
90
89
|
!!props.messagesFields['ipv4_settings.mask'].field
|
|
91
90
|
"
|
|
92
|
-
test-id="mask-error"
|
|
93
91
|
>
|
|
94
92
|
<template #elem>
|
|
95
93
|
<input
|
|
@@ -144,7 +142,6 @@
|
|
|
144
142
|
:has-error="
|
|
145
143
|
!!props.messagesFields['ipv4_settings.gateway'].field
|
|
146
144
|
"
|
|
147
|
-
test-id="gateway-error"
|
|
148
145
|
>
|
|
149
146
|
<template #elem>
|
|
150
147
|
<input
|