bfg-common 1.5.752 → 1.5.753
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 +19 -15
- package/assets/localization/local_en.json +19 -15
- package/assets/localization/local_hy.json +18 -14
- package/assets/localization/local_kk.json +18 -14
- package/assets/localization/local_ru.json +19 -15
- package/assets/localization/local_zh.json +19 -15
- package/components/atoms/table/dataGrid/DataGrid.vue +8 -8
- 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/Header.vue +4 -0
- package/components/common/diagramMain/modals/lib/config/vCenterModal.ts +48 -48
- package/components/common/diagramMain/network/Contents.vue +497 -497
- package/components/common/diagramMain/port/Port.vue +580 -580
- package/components/common/layout/theHeader/feedback/new/email/Email.vue +2 -2
- package/components/common/layout/theHeader/userMenu/modals/changePassword/lib/utils.ts +2 -2
- package/components/common/pages/backups/modals/createBackup/configuration/backupWindow/BackupWindow.vue +29 -29
- package/components/common/pages/backups/modals/createBackup/configuration/maxBandwidth/MaxBandwidth.vue +69 -69
- package/components/common/pages/backups/modals/createBackup/configuration/maxBandwidth/lib/config/options.ts +6 -6
- package/components/common/pages/backups/modals/createBackup/configuration/strategy/Strategy.vue +38 -38
- package/components/common/pages/backups/modals/createBackup/lib/models/interfaces.ts +8 -8
- package/components/common/vm/actions/common/customizeHardware/virtualHardware/New.vue +1 -1
- package/components/common/vm/actions/common/customizeHardware/virtualHardware/VirtualHardware.vue +1 -0
- package/components/common/vm/actions/common/customizeHardware/vmoptions/New.vue +2 -2
- package/components/common/vm/snapshots/modals/confirm/New.vue +5 -0
- package/components/common/vm/snapshots/modals/confirm/lib/models/enums.ts +2 -2
- package/components/common/vm/snapshots/modals/takeOrEdit/new/New.vue +23 -7
- package/components/common/vm/snapshots/new/New.vue +96 -13
- package/components/common/vm/snapshots/new/Skeleton.vue +112 -0
- package/components/common/vm/snapshots/new/contextMenuView/ContextMenuView.vue +17 -10
- package/components/common/vm/snapshots/new/lib/utils/details.ts +1 -1
- package/components/common/wizards/network/add/Add.vue +25 -5
- package/components/common/wizards/network/add/lib/config/config.ts +1 -1
- package/components/common/wizards/network/add/lib/config/initialData.ts +5 -3
- package/components/common/wizards/network/add/lib/config/selectConnectionTypeStep.ts +1 -0
- package/components/common/wizards/network/add/steps/selectTargetDevice/SelectTargetDeviceNew.vue +2 -1
- package/components/common/wizards/network/add/steps/selectTargetDevice/SelectTargetDeviceOld.vue +18 -6
- package/components/common/wizards/vm/migrate/steps/computeResource/tableView/old/lib/config/hostTable.ts +1 -1
- package/components/common/wizards/vm/migrate/steps/selectStorage/configure/disk/table/old/lib/config/diskTable.ts +11 -1
- package/lib/config/regExp.ts +1 -1
- package/package.json +2 -2
- package/plugins/time.ts +58 -58
- package/plugins/validation.ts +6 -6
|
@@ -13,7 +13,7 @@
|
|
|
13
13
|
</template>
|
|
14
14
|
|
|
15
15
|
<script setup lang="ts">
|
|
16
|
-
import {
|
|
16
|
+
import { allRegExp } from '~/lib/config/regExp'
|
|
17
17
|
import type { UI_I_Localization } from '~/lib/models/interfaces'
|
|
18
18
|
|
|
19
19
|
const emailModelLocal = defineModel<string>({ required: true })
|
|
@@ -23,7 +23,7 @@ const localization = computed<UI_I_Localization>(() => useLocal())
|
|
|
23
23
|
const emailErrorText = computed<string>(() => {
|
|
24
24
|
if (!emailModelLocal.value) return ''
|
|
25
25
|
|
|
26
|
-
return
|
|
26
|
+
return allRegExp.email.test(emailModelLocal.value)
|
|
27
27
|
? ''
|
|
28
28
|
: localization.value.common.emailErrorText
|
|
29
29
|
})
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import type { UI_I_Localization } from '~/lib/models/interfaces'
|
|
2
|
-
import {
|
|
2
|
+
import { allRegExp } from '~/lib/config/regExp'
|
|
3
3
|
|
|
4
4
|
export const getPasswordMismatchError = (
|
|
5
5
|
localization: UI_I_Localization,
|
|
@@ -16,7 +16,7 @@ export const validateField = (
|
|
|
16
16
|
password: string,
|
|
17
17
|
newPassword: string
|
|
18
18
|
): string => {
|
|
19
|
-
if (!
|
|
19
|
+
if (!allRegExp.password.test(newPassword)) {
|
|
20
20
|
return localization.common.currentPasswordIncorrect
|
|
21
21
|
}
|
|
22
22
|
|
|
@@ -1,29 +1,29 @@
|
|
|
1
|
-
<template>
|
|
2
|
-
<atoms-stack-block
|
|
3
|
-
:has-children="false"
|
|
4
|
-
test-id="backup-window-stack-block"
|
|
5
|
-
>
|
|
6
|
-
<template #stackBlockKey>
|
|
7
|
-
<span>{{ localization.common.backupWindow }}</span>
|
|
8
|
-
</template>
|
|
9
|
-
<template #stackBlockContent>
|
|
10
|
-
<input
|
|
11
|
-
v-model="model.start_window_min"
|
|
12
|
-
data-id="hours-input"
|
|
13
|
-
type="number"
|
|
14
|
-
class="hrs"
|
|
15
|
-
/>
|
|
16
|
-
</template>
|
|
17
|
-
</atoms-stack-block>
|
|
18
|
-
</template>
|
|
19
|
-
|
|
20
|
-
<script lang="ts" setup>
|
|
21
|
-
import type { UI_I_Localization } from '~/lib/models/interfaces'
|
|
22
|
-
import type { UI_I_CreateBackupForm } from '~/components/common/pages/backups/modals/lib/models/interfaces'
|
|
23
|
-
|
|
24
|
-
const model = defineModel<UI_I_CreateBackupForm>({ required: true })
|
|
25
|
-
|
|
26
|
-
const localization = computed<UI_I_Localization>(() => useLocal())
|
|
27
|
-
</script>
|
|
28
|
-
|
|
29
|
-
<style lang="scss" scoped></style>
|
|
1
|
+
<template>
|
|
2
|
+
<atoms-stack-block
|
|
3
|
+
:has-children="false"
|
|
4
|
+
test-id="backup-window-stack-block"
|
|
5
|
+
>
|
|
6
|
+
<template #stackBlockKey>
|
|
7
|
+
<span>{{ localization.common.backupWindow }}</span>
|
|
8
|
+
</template>
|
|
9
|
+
<template #stackBlockContent>
|
|
10
|
+
<input
|
|
11
|
+
v-model="model.start_window_min"
|
|
12
|
+
data-id="hours-input"
|
|
13
|
+
type="number"
|
|
14
|
+
class="hrs"
|
|
15
|
+
/>
|
|
16
|
+
</template>
|
|
17
|
+
</atoms-stack-block>
|
|
18
|
+
</template>
|
|
19
|
+
|
|
20
|
+
<script lang="ts" setup>
|
|
21
|
+
import type { UI_I_Localization } from '~/lib/models/interfaces'
|
|
22
|
+
import type { UI_I_CreateBackupForm } from '~/components/common/pages/backups/modals/lib/models/interfaces'
|
|
23
|
+
|
|
24
|
+
const model = defineModel<UI_I_CreateBackupForm>({ required: true })
|
|
25
|
+
|
|
26
|
+
const localization = computed<UI_I_Localization>(() => useLocal())
|
|
27
|
+
</script>
|
|
28
|
+
|
|
29
|
+
<style lang="scss" scoped></style>
|
|
@@ -1,69 +1,69 @@
|
|
|
1
|
-
<template>
|
|
2
|
-
<atoms-stack-block
|
|
3
|
-
:has-children="false"
|
|
4
|
-
test-id="backup-max-bandwidth-stack-block"
|
|
5
|
-
>
|
|
6
|
-
<template #stackBlockKey>
|
|
7
|
-
<span>{{ localization.common.maxBandwidth }}</span>
|
|
8
|
-
</template>
|
|
9
|
-
<template #stackBlockContent>
|
|
10
|
-
<div class="flex-align-center">
|
|
11
|
-
<input
|
|
12
|
-
v-model="maxBindwidthLocal"
|
|
13
|
-
data-id="mbps-input"
|
|
14
|
-
type="number"
|
|
15
|
-
class="mbps"
|
|
16
|
-
/>
|
|
17
|
-
|
|
18
|
-
<common-select-input
|
|
19
|
-
v-model="selectedType"
|
|
20
|
-
:data="maxBandwidthOptionsLocal"
|
|
21
|
-
test-id="backup-max-bandwidth-type"
|
|
22
|
-
class="ml-1"
|
|
23
|
-
/>
|
|
24
|
-
</div>
|
|
25
|
-
</template>
|
|
26
|
-
</atoms-stack-block>
|
|
27
|
-
</template>
|
|
28
|
-
|
|
29
|
-
<script lang="ts" setup>
|
|
30
|
-
import type { UI_I_Localization } from '~/lib/models/interfaces'
|
|
31
|
-
import type { UI_I_CreateBackupForm } from '~/components/common/pages/backups/modals/lib/models/interfaces'
|
|
32
|
-
import type { UI_T_BandwidthOption } from '~/components/common/pages/backups/modals/createBackup/configuration/maxBandwidth/lib/models/types'
|
|
33
|
-
import type { UI_I_SelectInputItem } from '~/components/common/select/input/lib/models/interfaces'
|
|
34
|
-
import { maxBandwidthOptions } from '~/components/common/pages/backups/modals/createBackup/configuration/maxBandwidth/lib/config/options'
|
|
35
|
-
|
|
36
|
-
const model = defineModel<UI_I_CreateBackupForm>({ required: true })
|
|
37
|
-
|
|
38
|
-
const localization = computed<UI_I_Localization>(() => useLocal())
|
|
39
|
-
const { $binary }: any = useNuxtApp()
|
|
40
|
-
|
|
41
|
-
const maxBandwidthOptionsLocal =
|
|
42
|
-
ref<UI_I_SelectInputItem[]>(maxBandwidthOptions)
|
|
43
|
-
|
|
44
|
-
const maxBindwidthLocal = computed<number>({
|
|
45
|
-
get() {
|
|
46
|
-
return selectedType.value === 1
|
|
47
|
-
? $binary.bToGb(model.value.bandwidth_limit)
|
|
48
|
-
: $binary.bToMb(model.value.bandwidth_limit)
|
|
49
|
-
},
|
|
50
|
-
set(newValue: number) {
|
|
51
|
-
model.value.bandwidth_limit =
|
|
52
|
-
selectedType.value === 1
|
|
53
|
-
? $binary.gbToB(newValue)
|
|
54
|
-
: $binary.mbToB(newValue)
|
|
55
|
-
},
|
|
56
|
-
})
|
|
57
|
-
|
|
58
|
-
const selectedType = ref<UI_T_BandwidthOption>(0)
|
|
59
|
-
watch(selectedType, (newValue) => {
|
|
60
|
-
if (newValue === 1) model.value.bandwidth_limit *= 1_024
|
|
61
|
-
else model.value.bandwidth_limit /= 1_024
|
|
62
|
-
})
|
|
63
|
-
</script>
|
|
64
|
-
|
|
65
|
-
<style lang="scss" scoped>
|
|
66
|
-
#backup-transaction-logs {
|
|
67
|
-
margin: 4px 4px 0 0;
|
|
68
|
-
}
|
|
69
|
-
</style>
|
|
1
|
+
<template>
|
|
2
|
+
<atoms-stack-block
|
|
3
|
+
:has-children="false"
|
|
4
|
+
test-id="backup-max-bandwidth-stack-block"
|
|
5
|
+
>
|
|
6
|
+
<template #stackBlockKey>
|
|
7
|
+
<span>{{ localization.common.maxBandwidth }}</span>
|
|
8
|
+
</template>
|
|
9
|
+
<template #stackBlockContent>
|
|
10
|
+
<div class="flex-align-center">
|
|
11
|
+
<input
|
|
12
|
+
v-model="maxBindwidthLocal"
|
|
13
|
+
data-id="mbps-input"
|
|
14
|
+
type="number"
|
|
15
|
+
class="mbps"
|
|
16
|
+
/>
|
|
17
|
+
|
|
18
|
+
<common-select-input
|
|
19
|
+
v-model="selectedType"
|
|
20
|
+
:data="maxBandwidthOptionsLocal"
|
|
21
|
+
test-id="backup-max-bandwidth-type"
|
|
22
|
+
class="ml-1"
|
|
23
|
+
/>
|
|
24
|
+
</div>
|
|
25
|
+
</template>
|
|
26
|
+
</atoms-stack-block>
|
|
27
|
+
</template>
|
|
28
|
+
|
|
29
|
+
<script lang="ts" setup>
|
|
30
|
+
import type { UI_I_Localization } from '~/lib/models/interfaces'
|
|
31
|
+
import type { UI_I_CreateBackupForm } from '~/components/common/pages/backups/modals/lib/models/interfaces'
|
|
32
|
+
import type { UI_T_BandwidthOption } from '~/components/common/pages/backups/modals/createBackup/configuration/maxBandwidth/lib/models/types'
|
|
33
|
+
import type { UI_I_SelectInputItem } from '~/components/common/select/input/lib/models/interfaces'
|
|
34
|
+
import { maxBandwidthOptions } from '~/components/common/pages/backups/modals/createBackup/configuration/maxBandwidth/lib/config/options'
|
|
35
|
+
|
|
36
|
+
const model = defineModel<UI_I_CreateBackupForm>({ required: true })
|
|
37
|
+
|
|
38
|
+
const localization = computed<UI_I_Localization>(() => useLocal())
|
|
39
|
+
const { $binary }: any = useNuxtApp()
|
|
40
|
+
|
|
41
|
+
const maxBandwidthOptionsLocal =
|
|
42
|
+
ref<UI_I_SelectInputItem[]>(maxBandwidthOptions)
|
|
43
|
+
|
|
44
|
+
const maxBindwidthLocal = computed<number>({
|
|
45
|
+
get() {
|
|
46
|
+
return selectedType.value === 1
|
|
47
|
+
? $binary.bToGb(model.value.bandwidth_limit)
|
|
48
|
+
: $binary.bToMb(model.value.bandwidth_limit)
|
|
49
|
+
},
|
|
50
|
+
set(newValue: number) {
|
|
51
|
+
model.value.bandwidth_limit =
|
|
52
|
+
selectedType.value === 1
|
|
53
|
+
? $binary.gbToB(newValue)
|
|
54
|
+
: $binary.mbToB(newValue)
|
|
55
|
+
},
|
|
56
|
+
})
|
|
57
|
+
|
|
58
|
+
const selectedType = ref<UI_T_BandwidthOption>(0)
|
|
59
|
+
watch(selectedType, (newValue) => {
|
|
60
|
+
if (newValue === 1) model.value.bandwidth_limit *= 1_024
|
|
61
|
+
else model.value.bandwidth_limit /= 1_024
|
|
62
|
+
})
|
|
63
|
+
</script>
|
|
64
|
+
|
|
65
|
+
<style lang="scss" scoped>
|
|
66
|
+
#backup-transaction-logs {
|
|
67
|
+
margin: 4px 4px 0 0;
|
|
68
|
+
}
|
|
69
|
+
</style>
|
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
import type {UI_I_SelectInputItem} from "~/components/common/select/input/lib/models/interfaces";
|
|
2
|
-
|
|
3
|
-
export const maxBandwidthOptions: UI_I_SelectInputItem[] = [
|
|
4
|
-
{ label: 'Mbps', value: 0 },
|
|
5
|
-
{ label: 'Gbps', value: 1 },
|
|
6
|
-
]
|
|
1
|
+
import type {UI_I_SelectInputItem} from "~/components/common/select/input/lib/models/interfaces";
|
|
2
|
+
|
|
3
|
+
export const maxBandwidthOptions: UI_I_SelectInputItem[] = [
|
|
4
|
+
{ label: 'Mbps', value: 0 },
|
|
5
|
+
{ label: 'Gbps', value: 1 },
|
|
6
|
+
]
|
package/components/common/pages/backups/modals/createBackup/configuration/strategy/Strategy.vue
CHANGED
|
@@ -1,38 +1,38 @@
|
|
|
1
|
-
<template>
|
|
2
|
-
<atoms-stack-block
|
|
3
|
-
:has-children="false"
|
|
4
|
-
test-id="backup-strategy-stack-block"
|
|
5
|
-
>
|
|
6
|
-
<template #stackBlockKey>
|
|
7
|
-
<span>{{ localization.common.strategy }}</span>
|
|
8
|
-
</template>
|
|
9
|
-
<template #stackBlockContent>
|
|
10
|
-
<common-select-input
|
|
11
|
-
v-model="model.strategy"
|
|
12
|
-
:data="strategyOptions"
|
|
13
|
-
test-id="backup-strategy"
|
|
14
|
-
/>
|
|
15
|
-
</template>
|
|
16
|
-
</atoms-stack-block>
|
|
17
|
-
</template>
|
|
18
|
-
|
|
19
|
-
<script lang="ts" setup>
|
|
20
|
-
import type { UI_I_Localization } from '~/lib/models/interfaces'
|
|
21
|
-
import type { UI_I_CreateBackupForm } from '~/components/common/pages/backups/modals/lib/models/interfaces'
|
|
22
|
-
import type { UI_I_SelectInputItem } from '~/components/common/select/input/lib/models/interfaces'
|
|
23
|
-
import { strategyOptionsFunc } from '~/components/common/pages/backups/modals/createBackup/lib/config/strategyOptions'
|
|
24
|
-
|
|
25
|
-
const model = defineModel<UI_I_CreateBackupForm>({ required: true })
|
|
26
|
-
|
|
27
|
-
const localization = computed<UI_I_Localization>(() => useLocal())
|
|
28
|
-
|
|
29
|
-
const strategyOptions = ref<UI_I_SelectInputItem[]>(
|
|
30
|
-
strategyOptionsFunc(localization.value)
|
|
31
|
-
)
|
|
32
|
-
</script>
|
|
33
|
-
|
|
34
|
-
<style lang="scss" scoped>
|
|
35
|
-
#backup-transaction-logs {
|
|
36
|
-
margin: 4px 4px 0 0;
|
|
37
|
-
}
|
|
38
|
-
</style>
|
|
1
|
+
<template>
|
|
2
|
+
<atoms-stack-block
|
|
3
|
+
:has-children="false"
|
|
4
|
+
test-id="backup-strategy-stack-block"
|
|
5
|
+
>
|
|
6
|
+
<template #stackBlockKey>
|
|
7
|
+
<span>{{ localization.common.strategy }}</span>
|
|
8
|
+
</template>
|
|
9
|
+
<template #stackBlockContent>
|
|
10
|
+
<common-select-input
|
|
11
|
+
v-model="model.strategy"
|
|
12
|
+
:data="strategyOptions"
|
|
13
|
+
test-id="backup-strategy"
|
|
14
|
+
/>
|
|
15
|
+
</template>
|
|
16
|
+
</atoms-stack-block>
|
|
17
|
+
</template>
|
|
18
|
+
|
|
19
|
+
<script lang="ts" setup>
|
|
20
|
+
import type { UI_I_Localization } from '~/lib/models/interfaces'
|
|
21
|
+
import type { UI_I_CreateBackupForm } from '~/components/common/pages/backups/modals/lib/models/interfaces'
|
|
22
|
+
import type { UI_I_SelectInputItem } from '~/components/common/select/input/lib/models/interfaces'
|
|
23
|
+
import { strategyOptionsFunc } from '~/components/common/pages/backups/modals/createBackup/lib/config/strategyOptions'
|
|
24
|
+
|
|
25
|
+
const model = defineModel<UI_I_CreateBackupForm>({ required: true })
|
|
26
|
+
|
|
27
|
+
const localization = computed<UI_I_Localization>(() => useLocal())
|
|
28
|
+
|
|
29
|
+
const strategyOptions = ref<UI_I_SelectInputItem[]>(
|
|
30
|
+
strategyOptionsFunc(localization.value)
|
|
31
|
+
)
|
|
32
|
+
</script>
|
|
33
|
+
|
|
34
|
+
<style lang="scss" scoped>
|
|
35
|
+
#backup-transaction-logs {
|
|
36
|
+
margin: 4px 4px 0 0;
|
|
37
|
+
}
|
|
38
|
+
</style>
|
|
@@ -1,8 +1,8 @@
|
|
|
1
|
-
export interface UI_I_DynamicSteps {
|
|
2
|
-
general: number
|
|
3
|
-
disks: number
|
|
4
|
-
datastores: number
|
|
5
|
-
configuration: number
|
|
6
|
-
readyComplete: number
|
|
7
|
-
schedulingOptions: number
|
|
8
|
-
}
|
|
1
|
+
export interface UI_I_DynamicSteps {
|
|
2
|
+
general: number
|
|
3
|
+
disks: number
|
|
4
|
+
datastores: number
|
|
5
|
+
configuration: number
|
|
6
|
+
readyComplete: number
|
|
7
|
+
schedulingOptions: number
|
|
8
|
+
}
|
|
@@ -290,7 +290,7 @@
|
|
|
290
290
|
<common-vm-actions-common-customize-hardware-virtual-hardware-other />
|
|
291
291
|
<div
|
|
292
292
|
v-if="props.compatibilityInfo"
|
|
293
|
-
class="vm-hardware-version-wrap justify-end flex flex-1 mt-
|
|
293
|
+
class="vm-hardware-version-wrap justify-end flex flex-1 mt-1"
|
|
294
294
|
>
|
|
295
295
|
<span class="vm-hardware-version">
|
|
296
296
|
{{ props.compatibilityInfo }}
|
package/components/common/vm/actions/common/customizeHardware/virtualHardware/VirtualHardware.vue
CHANGED
|
@@ -557,6 +557,7 @@ const addPciDevice = (): void => {
|
|
|
557
557
|
pciDevicesType.value.push('new')
|
|
558
558
|
|
|
559
559
|
// pciDevicesLocal.value.push(useDeepCopy(defaultPciDevice))
|
|
560
|
+
if (!model.value.passthrough_pci_devices) model.value.passthrough_pci_devices = []
|
|
560
561
|
model.value.passthrough_pci_devices.push(useDeepCopy(defaultPciDevice))
|
|
561
562
|
}
|
|
562
563
|
const onRemovePciDevice = (index: number): void => {
|
|
@@ -27,7 +27,7 @@
|
|
|
27
27
|
:state="props.state"
|
|
28
28
|
@remove-error-by-title="emits('remove-error-by-title', $event)"
|
|
29
29
|
/>
|
|
30
|
-
<div class="vm-hardware-version-wrap justify-end flex flex-1 mt-
|
|
30
|
+
<div class="vm-hardware-version-wrap justify-end flex flex-1 mt-1">
|
|
31
31
|
<span class="vm-hardware-version">
|
|
32
32
|
{{ props.compatibilityInfo }}
|
|
33
33
|
</span>
|
|
@@ -73,7 +73,7 @@ const emits = defineEmits<{
|
|
|
73
73
|
flex-direction: column;
|
|
74
74
|
gap: 12px;
|
|
75
75
|
margin-top: 20px;
|
|
76
|
-
padding: 0 0
|
|
76
|
+
padding: 0 0 16px;
|
|
77
77
|
overflow: auto;
|
|
78
78
|
|
|
79
79
|
.vm-hardware-version-wrap {
|
|
@@ -11,8 +11,8 @@ export enum UI_E_TitleConfirmModal {
|
|
|
11
11
|
export enum UI_E_TitleModal {
|
|
12
12
|
'take' = '',
|
|
13
13
|
'edit' = '',
|
|
14
|
-
'revert' = '
|
|
15
|
-
'delete' = '
|
|
14
|
+
'revert' = 'revertToSnapshot',
|
|
15
|
+
'delete' = 'deleteSnapshot',
|
|
16
16
|
'delete_all' = 'deleteAllSnapshots',
|
|
17
17
|
'group_delete_all' = 'deleteAllSnapshots',
|
|
18
18
|
'group_take' = '',
|
|
@@ -45,7 +45,7 @@
|
|
|
45
45
|
:label="localization.common.name"
|
|
46
46
|
:error="nameError"
|
|
47
47
|
test-id="vm-take-edit-snapshot-modal-name-input"
|
|
48
|
-
class="
|
|
48
|
+
class="mb-6"
|
|
49
49
|
input-style="rounded"
|
|
50
50
|
size="md"
|
|
51
51
|
@change="onCheckNameValidation"
|
|
@@ -57,6 +57,7 @@
|
|
|
57
57
|
test-id="vm-take-edit-snapshot-modal-name-input"
|
|
58
58
|
height="84"
|
|
59
59
|
size="sm"
|
|
60
|
+
class="vm-take-edit-textarea"
|
|
60
61
|
/>
|
|
61
62
|
|
|
62
63
|
<div v-if="props.type === 'take'" class="mt-6">
|
|
@@ -64,7 +65,7 @@
|
|
|
64
65
|
v-model="isIncludeVirtualMachinesMemory"
|
|
65
66
|
:label-text="localization.snapshots.saveVirtualMachineMemory"
|
|
66
67
|
:disabled="props.isDisabledSaveVm"
|
|
67
|
-
class="mb-3 flex items-start"
|
|
68
|
+
class="mb-3 flex items-start bottom-checkbox"
|
|
68
69
|
test-id="vm-take-edit-snapshot-modal-save-memory-checkbox"
|
|
69
70
|
size="md"
|
|
70
71
|
/>
|
|
@@ -73,7 +74,7 @@
|
|
|
73
74
|
:label-text="
|
|
74
75
|
localization.common.quiesceGuestFileSystemRequiresVMTools
|
|
75
76
|
"
|
|
76
|
-
class="flex items-start"
|
|
77
|
+
class="flex items-start bottom-checkbox"
|
|
77
78
|
test-id="vm-take-edit-snapshot-modal-quiesce-guest-file-system-checkbox"
|
|
78
79
|
size="md"
|
|
79
80
|
disabled
|
|
@@ -129,8 +130,8 @@ const alertMessages = ref<string[]>([])
|
|
|
129
130
|
const title = computed<string>(() => {
|
|
130
131
|
let titleType =
|
|
131
132
|
props.type === 'take'
|
|
132
|
-
? localization.value.
|
|
133
|
-
: localization.value.
|
|
133
|
+
? localization.value.snapshots.newSnapshot
|
|
134
|
+
: localization.value.snapshots.editSnapshot
|
|
134
135
|
|
|
135
136
|
titleType = titleType.replace('snapshot', 'Snapshot')
|
|
136
137
|
|
|
@@ -158,11 +159,26 @@ const onSubmit = (): void => {
|
|
|
158
159
|
alertMessages.value = [
|
|
159
160
|
localization.value.common.nameAlreadyExists.replace('{0}', name),
|
|
160
161
|
]
|
|
161
|
-
nameError.value = ' '
|
|
162
|
+
nameError.value = ' '
|
|
162
163
|
return
|
|
163
164
|
}
|
|
164
165
|
emits('submit')
|
|
165
166
|
}
|
|
166
167
|
</script>
|
|
167
168
|
|
|
168
|
-
<style scoped lang="scss"
|
|
169
|
+
<style scoped lang="scss">
|
|
170
|
+
.vm-take-edit-textarea {
|
|
171
|
+
:deep(.ui-main .ui-main-textarea) {
|
|
172
|
+
line-height: 18px;
|
|
173
|
+
height: 72px !important;
|
|
174
|
+
}
|
|
175
|
+
}
|
|
176
|
+
.bottom-checkbox {
|
|
177
|
+
height: unset !important;
|
|
178
|
+
|
|
179
|
+
:deep(.ui-checkbox-label-text) {
|
|
180
|
+
line-height: 18px;
|
|
181
|
+
margin-top: 1px;
|
|
182
|
+
}
|
|
183
|
+
}
|
|
184
|
+
</style>
|