bfg-common 1.5.581 → 1.5.583

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (57) hide show
  1. package/components/common/vm/actions/add/Add.vue +46 -120
  2. package/components/common/vm/actions/add/New.vue +16 -54
  3. package/components/common/vm/actions/add/Old.vue +16 -55
  4. package/components/common/vm/actions/clone/Clone.vue +44 -116
  5. package/components/common/vm/actions/clone/new/New.vue +14 -50
  6. package/components/common/vm/actions/clone/old/Old.vue +16 -52
  7. package/components/common/vm/actions/common/customizeHardware/CustomizeHardware.vue +14 -81
  8. package/components/common/vm/actions/common/customizeHardware/CustomizeHardwareNew.vue +7 -56
  9. package/components/common/vm/actions/common/customizeHardware/CustomizeHardwareOld.vue +8 -56
  10. package/components/common/vm/actions/common/customizeHardware/virtualHardware/VirtualHardware.vue +211 -206
  11. package/components/common/vm/actions/common/customizeHardware/virtualHardware/VirtualHardwareNew.vue +225 -120
  12. package/components/common/vm/actions/common/customizeHardware/virtualHardware/VirtualHardwareOld.vue +220 -118
  13. package/components/common/vm/actions/common/customizeHardware/virtualHardware/cdDvdDrive/CdDvdDrive.vue +66 -53
  14. package/components/common/vm/actions/common/customizeHardware/virtualHardware/cpu/Cpu.vue +139 -159
  15. package/components/common/vm/actions/common/customizeHardware/virtualHardware/cpu/CpuNew.vue +8 -15
  16. package/components/common/vm/actions/common/customizeHardware/virtualHardware/cpu/CpuOld.vue +8 -13
  17. package/components/common/vm/actions/common/customizeHardware/virtualHardware/memory/Memory.vue +62 -75
  18. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newHardDisk/NewHardDisk.vue +241 -149
  19. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newHardDisk/NewHardDiskNew.vue +3 -4
  20. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newHardDisk/NewHardDiskOld.vue +2 -3
  21. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newNetwork/NewNetwork.vue +62 -100
  22. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newUsbController/NewUsbController.vue +6 -17
  23. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newUsbController/NewUsbControllerNew.vue +6 -3
  24. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newUsbController/NewUsbControllerOld.vue +6 -3
  25. package/components/common/vm/actions/common/customizeHardware/virtualHardware/videoCard/VideoCard.vue +17 -39
  26. package/components/common/vm/actions/common/customizeHardware/virtualHardware/videoCard/VideoCardNew.vue +6 -5
  27. package/components/common/vm/actions/common/customizeHardware/virtualHardware/videoCard/VideoCardOld.vue +6 -5
  28. package/components/common/vm/actions/common/customizeHardware/virtualHardware/videoCard/lib/config/options.ts +4 -4
  29. package/components/common/vm/actions/common/customizeHardware/vmoptions/Vmoptions.vue +6 -93
  30. package/components/common/vm/actions/common/customizeHardware/vmoptions/VmoptionsNew.vue +8 -60
  31. package/components/common/vm/actions/common/customizeHardware/vmoptions/VmoptionsOld.vue +8 -58
  32. package/components/common/vm/actions/common/customizeHardware/vmoptions/bootOptions/BootOptions.vue +5 -69
  33. package/components/common/vm/actions/common/customizeHardware/vmoptions/bootOptions/BootOptionsNew.vue +12 -32
  34. package/components/common/vm/actions/common/customizeHardware/vmoptions/bootOptions/BootOptionsOld.vue +12 -33
  35. package/components/common/vm/actions/common/customizeHardware/vmoptions/bootOptions/order/Order.vue +114 -132
  36. package/components/common/vm/actions/common/customizeHardware/vmoptions/bootOptions/order/OrderNew.vue +41 -6
  37. package/components/common/vm/actions/common/customizeHardware/vmoptions/bootOptions/order/OrderOld.vue +44 -6
  38. package/components/common/vm/actions/common/customizeHardware/vmoptions/generalOptions/GeneralOptions.vue +8 -23
  39. package/components/common/vm/actions/common/customizeHardware/vmoptions/generalOptions/GeneralOptionsNew.vue +21 -31
  40. package/components/common/vm/actions/common/customizeHardware/vmoptions/generalOptions/GeneralOptionsOld.vue +26 -34
  41. package/components/common/vm/actions/common/customizeHardware/vmoptions/remoteConsoleOptions/New.vue +28 -34
  42. package/components/common/vm/actions/common/customizeHardware/vmoptions/remoteConsoleOptions/Old.vue +24 -30
  43. package/components/common/vm/actions/common/customizeHardware/vmoptions/remoteConsoleOptions/RemoteConsoleOptions.vue +8 -112
  44. package/components/common/vm/actions/common/customizeHardware/vmoptions/remoteConsoleOptions/keymap/Keymap.vue +3 -3
  45. package/components/common/vm/actions/common/customizeHardware/vmoptions/remoteConsoleOptions/keymap/{KeymapNew.vue → New.vue} +6 -6
  46. package/components/common/vm/actions/common/customizeHardware/vmoptions/remoteConsoleOptions/keymap/{KeymapOld.vue → Old.vue} +5 -5
  47. package/components/common/vm/actions/common/customizeHardware/vmoptions/remoteConsoleOptions/password/Password.vue +6 -7
  48. package/components/common/vm/actions/common/customizeHardware/vmoptions/tools/Tools.vue +9 -27
  49. package/components/common/vm/actions/common/lib/models/interfaces.ts +58 -25
  50. package/components/common/vm/actions/editSettings/EditSettings.vue +32 -90
  51. package/components/common/vm/actions/editSettings/EditSettingsOld.vue +14 -41
  52. package/components/common/vm/actions/editSettings/new/New.vue +14 -41
  53. package/components/common/vm/actions/lib/models/interfaces.ts +4 -29
  54. package/components/common/vm/actions/lib/utils.ts +64 -36
  55. package/package.json +1 -1
  56. /package/components/common/vm/actions/common/customizeHardware/vmoptions/remoteConsoleOptions/password/{PasswordNew.vue → New.vue} +0 -0
  57. /package/components/common/vm/actions/common/customizeHardware/vmoptions/remoteConsoleOptions/password/{PasswordOld.vue → Old.vue} +0 -0
@@ -10,7 +10,7 @@
10
10
  v-model:limit="limit"
11
11
  v-model:limit-type="limitType"
12
12
  v-model:limit-invalid="limitInvalid"
13
- v-model:memory-hot-plug="memoryHotPlug"
13
+ v-model:memory-hot-plug="model.memory.hotplug"
14
14
  :error-validation-fields="props.errorValidationFields"
15
15
  :memory-invalid="memoryInvalid"
16
16
  :error-text="memorySizeLocalAndApiErrorsTexts"
@@ -35,7 +35,7 @@
35
35
  v-model:limit="limit"
36
36
  v-model:limit-type="limitType"
37
37
  v-model:limit-invalid="limitInvalid"
38
- v-model:memory-hot-plug="memoryHotPlug"
38
+ v-model:memory-hot-plug="model.memory.hotplug"
39
39
  :error-validation-fields="props.errorValidationFields"
40
40
  :memory-invalid="memoryInvalid"
41
41
  :error-text="memorySizeLocalAndApiErrorsTexts"
@@ -52,31 +52,29 @@
52
52
  </template>
53
53
 
54
54
  <script setup lang="ts">
55
- import type { API_UI_I_VmEditMemory } from '~/lib/models/store/vm/interfaces'
56
- import type { UI_I_SendDataMemory } from '~/components/common/vm/actions/common/customizeHardware/virtualHardware/lib/models/interfaces'
57
55
  import type { UI_I_Localization } from '~/lib/models/interfaces'
58
56
  import type { UI_I_ErrorValidationField } from '~/lib/models/store/interfaces'
59
57
  import type { UI_I_OptionItem } from '~/components/atoms/lib/models/interfaces'
58
+ import type { UI_I_CreateVmData } from '~/components/common/vm/actions/common/lib/models/interfaces'
60
59
  import {
61
60
  memoryOptionsFunc,
62
61
  memoryTypeOptionsFunc,
63
62
  } from '~/components/common/vm/actions/common/customizeHardware/virtualHardware/memory/lib/config/memoryOptions'
64
63
 
64
+ const model = defineModel<UI_I_CreateVmData>({ required: true })
65
+
65
66
  const props = withDefaults(
66
67
  defineProps<{
67
68
  maxMemory: number
68
69
  isEdit: boolean
69
70
  errorValidationFields: UI_I_ErrorValidationField[]
70
71
  state?: string | number
71
- memory?: API_UI_I_VmEditMemory
72
72
  }>(),
73
73
  {
74
74
  state: undefined,
75
- memory: undefined,
76
75
  }
77
76
  )
78
77
  const emits = defineEmits<{
79
- (event: 'send-data', value: UI_I_SendDataMemory): void
80
78
  (event: 'invalid', value: boolean): void
81
79
  (event: 'remove-error-by-title', value: string): void
82
80
  }>()
@@ -103,7 +101,7 @@ const isDisabled = computed<boolean>(() => {
103
101
  })
104
102
 
105
103
  const isMemoryDisabled = computed<boolean>(
106
- () => isDisabled.value && !memoryHotPlug.value
104
+ () => isDisabled.value && !model.value.memory.hotplug
107
105
  )
108
106
 
109
107
  const selectedMemory = ref<number>(4)
@@ -122,6 +120,18 @@ const memoryInMb = computed<number>(() => {
122
120
 
123
121
  return $binary.universalFromTo(+selectedMemory.value, memoryType.value, 'mb')
124
122
  })
123
+ watch(memoryInMb, (newValue) => {
124
+ model.value.memory.size_mb = newValue
125
+ })
126
+ if (model.value.memory.size_mb !== 4096) {
127
+ const sizeInGb = $binary.mbToGb(model.value.memory.size_mb)
128
+ if (sizeInGb < 1) {
129
+ selectedMemory.value = model.value.memory.size_mb
130
+ memoryType.value = 'mb'
131
+ } else {
132
+ selectedMemory.value = sizeInGb
133
+ }
134
+ }
125
135
 
126
136
  const memoryOptions = ref<UI_I_OptionItem[]>(
127
137
  memoryOptionsFunc(localization.value, minMemoryInMb, props.maxMemory)
@@ -211,6 +221,26 @@ watch(reservation, (newValue) => {
211
221
  })
212
222
  const reservationType = ref<string>('mb')
213
223
  const reserveGuestMemory = ref<boolean>(false)
224
+ if (model.value.memory.reservation_mb !== 2) {
225
+ const reservationInGb = $binary.mbToGb(model.value.memory.reservation_mb)
226
+ if (reservationInGb < 1) {
227
+ reservation.value = model.value.memory.reservation_mb.toString()
228
+ reservationType.value = 'mb'
229
+ } else {
230
+ reservation.value = reservationInGb
231
+ reservationType.value = 'gb'
232
+ }
233
+ }
234
+ watch(
235
+ [reservation, reservationType],
236
+ () => {
237
+ model.value.memory.reservation_mb =
238
+ reservationType.value === 'gb'
239
+ ? $binary.gbToMb(+reservation.value)
240
+ : +reservation.value
241
+ },
242
+ { deep: true, immediate: true }
243
+ )
214
244
 
215
245
  const limit = ref<string>('Unlimited')
216
246
  watch(limit, (newValue) => {
@@ -220,90 +250,47 @@ watch(limit, (newValue) => {
220
250
  })
221
251
  const limitType = ref<string>('mb')
222
252
  const limitOptions = computed<UI_I_OptionItem[] | undefined>(() => {
223
- if (memoryHotPlug.value)
253
+ if (model.value.memory.hotplug)
224
254
  return memoryOptionsFunc(
225
255
  localization.value,
226
256
  memoryInMb.value,
227
257
  props.maxMemory
228
258
  )
229
259
  })
230
-
231
- const memoryHotPlug = ref<boolean>(false)
232
- const isDisabledMemoryHotPlug = computed<boolean>(
233
- () => memoryInMb.value >= props.maxMemory || isDisabled.value
234
- )
235
- watch(isDisabledMemoryHotPlug, (newValue) => {
236
- if (newValue) memoryHotPlug.value = false
237
- })
238
-
260
+ if (model.value.memory.limit_mb !== null) {
261
+ if (typeof model.value.memory.limit_mb === 'string')
262
+ limit.value = model.value.memory.limit_mb
263
+ else {
264
+ const limitInGb = $binary.mbToGb(model.value.memory.limit_mb)
265
+ if (limitInGb < 1) {
266
+ limit.value = model.value.memory.limit_mb.toString()
267
+ limitType.value = 'mb'
268
+ } else {
269
+ limit.value = limitInGb
270
+ limitType.value = 'gb'
271
+ }
272
+ }
273
+ }
239
274
  watch(
240
- [memoryInMb, memoryHotPlug, reservation, reservationType, limit, limitType],
275
+ [limit, limitType],
241
276
  () => {
242
- const reservationInMb =
243
- reservationType.value === 'mb'
244
- ? reservation.value
245
- : '' +
246
- $binary.universalFromTo(
247
- reservation.value,
248
- reservationType.value,
249
- 'mb',
250
- 12
251
- )
252
- const limitInMb =
277
+ model.value.memory.limit_mb =
253
278
  limit.value === 'Unlimited'
254
279
  ? limit.value
255
280
  : limitType.value === 'gb'
256
281
  ? $binary.gbToMb(+limit.value)
257
282
  : +limit.value
258
- emits('send-data', {
259
- memory: '' + memoryInMb.value,
260
- hotplug: memoryHotPlug.value,
261
- reservation_mb: reservationInMb,
262
- limit_mb: limitInMb,
263
- })
264
283
  },
265
- { immediate: true }
284
+ { deep: true, immediate: true }
266
285
  )
267
286
 
268
- // Добавляем данные для редактирования
269
- watch(
270
- () => props.memory,
271
- (newValue) => {
272
- if (!newValue) return
273
-
274
- const sizeInGb = $binary.mbToGb(newValue.size_mb)
275
- if (sizeInGb < 1) {
276
- selectedMemory.value = newValue.size_mb
277
- memoryType.value = 'mb'
278
- } else {
279
- selectedMemory.value = sizeInGb
280
- }
281
-
282
- const reservationInGb = $binary.mbToGb(newValue.reservation_mb)
283
- if (reservationInGb < 1) {
284
- reservation.value = newValue.reservation_mb
285
- reservationType.value = 'mb'
286
- } else {
287
- reservation.value = reservationInGb
288
- reservationType.value = 'gb'
289
- }
290
-
291
- if (typeof newValue.limit_mb === 'string') limit.value = newValue.limit_mb
292
- else {
293
- const limitInGb = $binary.mbToGb(newValue.limit_mb)
294
- if (limitInGb < 1) {
295
- limit.value = newValue.limit_mb
296
- limitType.value = 'mb'
297
- } else {
298
- limit.value = limitInGb
299
- limitType.value = 'gb'
300
- }
301
- }
302
-
303
- memoryHotPlug.value = newValue.hotplug
304
- },
305
- { immediate: true }
287
+ // const memoryHotPlug = ref<boolean>(false)
288
+ const isDisabledMemoryHotPlug = computed<boolean>(
289
+ () => memoryInMb.value >= props.maxMemory || isDisabled.value
306
290
  )
291
+ watch(isDisabledMemoryHotPlug, (newValue) => {
292
+ if (newValue) model.value.memory.hotplug = false
293
+ })
307
294
 
308
295
  const onRemoveValidationError = (): void => {
309
296
  emits('remove-error-by-title', 'memory.size_mb')