bfg-common 1.3.252 → 1.3.254

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 (38) hide show
  1. package/components/atoms/switch/Switch.vue +111 -111
  2. package/components/atoms/table/compact/Compact.vue +526 -526
  3. package/components/common/adapterManager/AdapterManager.vue +9 -8
  4. package/components/common/diagramMain/DiagramMain.vue +25 -21
  5. package/components/common/diagramMain/modals/ManagePhysicalAdaptersModal.vue +3 -3
  6. package/components/common/diagramMain/modals/editSettings/EditSettings.vue +14 -16
  7. package/components/common/diagramMain/modals/editSettings/EditSettingsModal.vue +15 -32
  8. package/components/common/diagramMain/modals/migrateVmkernelAdapter/MigrateVmkernelAdapter.vue +196 -186
  9. package/components/common/diagramMain/modals/migrateVmkernelAdapter/validations/connectionSettings.ts +8 -12
  10. package/components/common/vm/actions/clone/Clone.vue +518 -518
  11. package/components/common/vm/actions/common/customizeHardware/CustomizeHardware.vue +269 -269
  12. package/components/common/vm/actions/common/customizeHardware/virtualHardware/VirtualHardware.vue +693 -693
  13. package/components/common/vm/actions/common/customizeHardware/virtualHardware/lib/config/dropdownItems.ts +59 -59
  14. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newNetwork/Location.vue +1 -0
  15. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newPciDevice/NewPciDevice.vue +165 -165
  16. package/components/common/vm/actions/common/select/storage/lib/config/config.ts +166 -166
  17. package/components/common/vm/actions/editSettings/EditSettings.vue +313 -313
  18. package/components/common/weekSelect/lib/config/options.ts +10 -10
  19. package/components/common/wizards/network/add/Add.vue +3 -17
  20. package/components/common/wizards/network/add/lib/models/interfaces.ts +3 -3
  21. package/components/common/wizards/network/add/steps/CreateStandardSwitch.vue +3 -3
  22. package/components/common/wizards/network/add/validations/networkValidation.ts +14 -18
  23. package/composables/useAppVersion.ts +21 -21
  24. package/composables/useEnvLanguage.ts +20 -20
  25. package/lib/utils/sendTask.ts +72 -72
  26. package/minify.js +146 -146
  27. package/modules/fixContentBuild/index.ts +0 -1
  28. package/modules/fixContentBuild/lib/utils/methods.ts +1 -1
  29. package/package.json +1 -1
  30. package/public/spice-console/application/codec.js +257 -257
  31. package/public/spice-console/lib/rasterEngine.js +907 -907
  32. package/public/spice-console/network/spicechannel.js +369 -369
  33. package/store/main/lib/interfaces.ts +9 -9
  34. package/store/tasks/actions.ts +133 -133
  35. package/store/tasks/getters.ts +25 -25
  36. package/store/tasks/lib/models/interfaces.ts +18 -18
  37. package/store/tasks/mutations.ts +58 -58
  38. package/store/tasks/state.ts +16 -16
@@ -1,93 +1,95 @@
1
1
  <template>
2
- <atoms-wizard
3
- v-model:show="props.show"
4
- :steps="wizard.steps"
5
- :selected-scheme="selectedScheme"
6
- :is-loading="wizard.wizardLoader.status"
7
- :loader-messages="wizard.wizardLoader.messages"
8
- :title="title"
9
- :was-completed="wasCompleted"
10
- :localization="localization"
11
- :class="[
2
+ <atoms-wizard
3
+ v-model:show="props.show"
4
+ :steps="wizard.steps"
5
+ :selected-scheme="selectedScheme"
6
+ :is-loading="wizard.wizardLoader.status"
7
+ :loader-messages="wizard.wizardLoader.messages"
8
+ :title="title"
9
+ :was-completed="wasCompleted"
10
+ :localization="localization"
11
+ :class="[
12
12
  'migrate-vm-kernel-modal',
13
13
  {
14
14
  'is-dark': props.isDarkMode,
15
15
  },
16
16
  ]"
17
- @change-steps="onChangeSteps"
18
- @hide="onHide"
19
- @submit="onSubmit"
20
- >
21
- <template #modalBody="{ selectedStep }">
22
- <common-diagram-main-modals-migrate-vmkernel-adapter-steps-select-vmkernel-adapter
23
- v-if="selectedStep.id === 0"
24
- :vmkernel-adapter="vmkernelAdapter"
25
- :table-data="filteredNetworksList"
26
- :alert-messages="alertMessages[0]"
27
- @hide-alert="onHideAlert"
28
- @change-vmkernel-adapter="onChangeMigrateVmkernelAdapter"
29
- />
30
- <common-diagram-main-modals-migrate-vmkernel-adapter-steps-connection-settings
31
- v-if="selectedStep.id === 1"
32
- :connection-settings="connectionSettings"
33
- :messages-fields="selectedStep.fields"
34
- :alert-messages="alertMessages[1]"
35
- :wizard="wizard"
36
- @hide-alert="onHideAlert"
37
- @change-connection-settings="onChangeConnectionSettings"
38
- />
39
- <common-diagram-main-modals-migrate-vmkernel-adapter-steps-vmkernel-adapter-ready-complete
40
- v-if="selectedStep.id === 2"
41
- :data="readyCompleteData"
42
- />
43
- </template>
44
- </atoms-wizard>
17
+ @change-steps="onChangeSteps"
18
+ @hide="onHide"
19
+ @submit="onSubmit"
20
+ >
21
+ <template #modalBody="{ selectedStep }">
22
+ <common-diagram-main-modals-migrate-vmkernel-adapter-steps-select-vmkernel-adapter
23
+ v-if="selectedStep.id === 0"
24
+ :vmkernel-adapter="vmkernelAdapter"
25
+ :table-data="filteredNetworksList"
26
+ :alert-messages="alertMessages[0]"
27
+ @hide-alert="onHideAlert"
28
+ @change-vmkernel-adapter="onChangeMigrateVmkernelAdapter"
29
+ />
30
+ <common-diagram-main-modals-migrate-vmkernel-adapter-steps-connection-settings
31
+ v-if="selectedStep.id === 1"
32
+ :connection-settings="connectionSettings"
33
+ :messages-fields="selectedStep.fields"
34
+ :alert-messages="alertMessages[1]"
35
+ :wizard="wizard"
36
+ @hide-alert="onHideAlert"
37
+ @change-connection-settings="onChangeConnectionSettings"
38
+ />
39
+ <common-diagram-main-modals-migrate-vmkernel-adapter-steps-vmkernel-adapter-ready-complete
40
+ v-if="selectedStep.id === 2"
41
+ :data="readyCompleteData"
42
+ />
43
+ </template>
44
+ </atoms-wizard>
45
45
  </template>
46
46
 
47
47
  <script setup lang="ts">
48
48
  import { UI_I_Localization } from '~/lib/models/interfaces'
49
49
  import {
50
- UI_I_Network,
51
- UI_I_VmkernelAdapterTableData,
50
+ UI_I_Network,
51
+ UI_I_VmkernelAdapterTableData,
52
52
  } from '~/components/common/diagramMain/lib/models/interfaces'
53
53
  import {
54
- UI_I_ConnectionSettings,
55
- UI_I_SelectVmkernelAdapter,
54
+ UI_I_ConnectionSettings,
55
+ UI_I_SelectVmkernelAdapter,
56
56
  } from '~/components/common/wizards/network/add/lib/models/interfaces'
57
57
  import {
58
- UI_I_WizardStep,
59
- UI_I_ValidationReturn,
58
+ UI_I_WizardStep,
59
+ UI_I_ValidationReturn,
60
60
  } from '~/components/atoms/wizard/lib/models/interfaces'
61
61
  import {
62
- UI_I_MigrateVmkernelAdapterEmits,
63
- UI_I_MigrationVmkernelAdapterReadyComplete,
62
+ UI_I_MigrateVmkernelAdapterEmits,
63
+ UI_I_MigrationVmkernelAdapterReadyComplete,
64
64
  } from '~/components/common/diagramMain/lib/models/interfaces'
65
65
  import { UI_E_MigrationValidationFields } from '~/components/common/diagramMain/lib/models/enums'
66
66
  import {
67
- stepsFunc,
68
- stepsSchemeInitial,
67
+ stepsFunc,
68
+ stepsSchemeInitial,
69
69
  } from '~/components/common/diagramMain/modals/migrateVmkernelAdapter/lib/config/steps'
70
70
  import {
71
- checkNetworkAsync,
72
- checkConnectionSettingsSync,
73
- checkSelectedVmSync,
71
+ checkNetworkAsync,
72
+ checkConnectionSettingsSync,
73
+ checkSelectedVmSync,
74
74
  } from '~/components/common/diagramMain/modals/migrateVmkernelAdapter/validations/validations'
75
75
  import Wizard from '~/components/atoms/wizard/lib/utils/utils'
76
76
  import { readyCompleteInitial } from '~/components/common/diagramMain/modals/migrateVmkernelAdapter/lib/config/steps'
77
77
 
78
78
  const props = withDefaults(
79
- defineProps<{
80
- show: boolean
81
- switchName?: string
82
- networksList?: UI_I_Network[]
83
- switchNetworks?: UI_I_Network[]
84
- isDarkMode: boolean
85
- }>(),
86
- {
87
- switchName: '',
88
- networksList: () => [],
89
- switchNetworks: () => [],
90
- }
79
+ defineProps<{
80
+ show: boolean
81
+ switchName?: string
82
+ networksList?: UI_I_Network[]
83
+ switchNetworks?: UI_I_Network[]
84
+ isDarkMode: boolean
85
+ isMigrateAdapterLoading?: boolean
86
+ }>(),
87
+ {
88
+ switchName: '',
89
+ networksList: () => [],
90
+ switchNetworks: () => [],
91
+ isMigrateAdapterLoading: false,
92
+ }
91
93
  )
92
94
 
93
95
  const emits = defineEmits<UI_I_MigrateVmkernelAdapterEmits>()
@@ -95,8 +97,8 @@ const emits = defineEmits<UI_I_MigrateVmkernelAdapterEmits>()
95
97
  const localization = computed<UI_I_Localization>(() => useLocal())
96
98
 
97
99
  const wizard: Wizard = new Wizard(
98
- stepsFunc(localization.value),
99
- stepsSchemeInitial
100
+ stepsFunc(localization.value),
101
+ stepsSchemeInitial
100
102
  )
101
103
  const wasCompleted = computed<boolean>(() => wizard.wasCompleted())
102
104
  const selectedScheme = computed<number[]>(() => wizard.selectedScheme.value)
@@ -104,184 +106,192 @@ const alertMessages = computed<string[][]>(() => wizard.alertMessages.value)
104
106
 
105
107
  const hostname = ref<string>('')
106
108
  const title = computed<string>(
107
- () =>
108
- `${hostname.value} - ${localization.value.migrateVmKernelNetworkAdapterTo} ${props.switchName}`
109
+ () =>
110
+ `${hostname.value} - ${localization.value.migrateVmKernelNetworkAdapterTo} ${props.switchName}`
109
111
  )
110
112
 
111
113
  const connectionSettings = ref<UI_I_ConnectionSettings>({
112
- networkLabel: 'VM Network',
113
- vlanId: 'None (0)',
114
+ networkLabel: 'VM Network',
115
+ vlanId: 'None (0)',
114
116
  })
115
117
 
116
118
  const vmkernelAdapter = ref<UI_I_SelectVmkernelAdapter>({
117
- vm: '',
119
+ vm: '',
118
120
  })
119
121
 
120
122
  const readyCompleteData =
121
- ref<UI_I_MigrationVmkernelAdapterReadyComplete>(readyCompleteInitial)
123
+ ref<UI_I_MigrationVmkernelAdapterReadyComplete>(readyCompleteInitial)
122
124
 
123
125
  const validationFunc = async (
124
- value: UI_I_WizardStep[],
125
- currentStep: UI_I_WizardStep,
126
- nextStep: UI_I_WizardStep
126
+ value: UI_I_WizardStep[],
127
+ currentStep: UI_I_WizardStep,
128
+ nextStep: UI_I_WizardStep
127
129
  ): Promise<UI_I_ValidationReturn> => {
128
- let stepHasError = false
130
+ let stepHasError = false
129
131
 
130
- if (wizard.isValidateForStep(0, currentStep.id, nextStep.id)) {
131
- const selectVmkernelAdapterValidation = checkSelectedVmSync(
132
- localization.value,
133
- vmkernelAdapter.value,
134
- wizard,
135
- value
136
- )
132
+ if (wizard.isValidateForStep(0, currentStep.id, nextStep.id)) {
133
+ const selectVmkernelAdapterValidation = checkSelectedVmSync(
134
+ localization.value,
135
+ vmkernelAdapter.value,
136
+ wizard,
137
+ value
138
+ )
137
139
 
138
- value = selectVmkernelAdapterValidation.newValue
140
+ value = selectVmkernelAdapterValidation.newValue
139
141
 
140
- stepHasError = stepHasError || selectVmkernelAdapterValidation.stepHasError
141
- }
142
+ stepHasError = stepHasError || selectVmkernelAdapterValidation.stepHasError
143
+ }
142
144
 
143
- if (wizard.isValidateForStep(1, currentStep.id, nextStep.id)) {
144
- const labelValidation = await checkNetworkAsync(
145
- value,
146
- connectionSettings.value.networkLabel,
147
- 1,
148
- UI_E_MigrationValidationFields.CONNECTION_SETTINGS_NETWORK,
149
- emits,
150
- localization.value,
151
- wizard
152
- )
153
-
154
- value = labelValidation.newValue
155
-
156
- const connectionSettingsValidation = checkConnectionSettingsSync(
157
- localization.value,
158
- connectionSettings.value,
159
- wizard,
160
- value
161
- )
162
-
163
- value = connectionSettingsValidation.newValue
164
-
165
- stepHasError =
166
- stepHasError ||
167
- labelValidation.stepHasError ||
168
- connectionSettingsValidation.stepHasError
169
- }
145
+ if (wizard.isValidateForStep(1, currentStep.id, nextStep.id)) {
146
+ const labelValidation = await checkNetworkAsync(
147
+ value,
148
+ connectionSettings.value.networkLabel,
149
+ 1,
150
+ UI_E_MigrationValidationFields.CONNECTION_SETTINGS_NETWORK,
151
+ emits,
152
+ localization.value,
153
+ wizard
154
+ )
155
+
156
+ value = labelValidation.newValue
157
+
158
+ const connectionSettingsValidation = checkConnectionSettingsSync(
159
+ localization.value,
160
+ connectionSettings.value,
161
+ wizard,
162
+ value
163
+ )
164
+
165
+ value = connectionSettingsValidation.newValue
166
+
167
+ stepHasError =
168
+ stepHasError ||
169
+ labelValidation.stepHasError ||
170
+ connectionSettingsValidation.stepHasError
171
+ }
170
172
 
171
- return {
172
- newValue: value,
173
- stepHasError,
174
- }
173
+ return {
174
+ newValue: value,
175
+ stepHasError,
176
+ }
175
177
  }
176
178
 
177
179
  const finalValidationFunc = async (
178
- value: UI_I_WizardStep[]
180
+ value: UI_I_WizardStep[]
179
181
  ): Promise<UI_I_ValidationReturn> => {
180
- let stepHasError = false
182
+ let stepHasError = false
181
183
 
182
- // wizard.setLoader(true)
184
+ // wizard.setLoader(true)
183
185
 
184
- // wizard.setLoader(false)
185
- return {
186
- stepHasError,
187
- newValue: value,
188
- }
186
+ // wizard.setLoader(false)
187
+ return {
188
+ stepHasError,
189
+ newValue: value,
190
+ }
189
191
  }
190
192
 
191
193
  const onChangeSteps = async (value: UI_I_WizardStep[]): Promise<void> =>
192
- wizard.changeSteps(value, validationFunc, finalValidationFunc)
194
+ wizard.changeSteps(value, validationFunc, finalValidationFunc)
193
195
 
194
196
  const filteredNetworksList = ref<UI_I_VmkernelAdapterTableData[]>([])
195
197
 
196
198
  watch(
197
- () => wizard.selectedStepId,
198
- (newSelectedStepId: number) => {
199
- if (newSelectedStepId !== 2) return
200
-
201
- const from = filteredNetworksList.value.find(
202
- (network) => network.name === vmkernelAdapter.value.vm
203
- )
204
-
205
- readyCompleteData.value = {
206
- vm: vmkernelAdapter.value.vm,
207
- currentSettings: {
208
- switch: from?.switch || '',
209
- network: from?.networkLabel || '',
210
- },
211
- newSettings: {
212
- switch: props.switchName,
213
- network: connectionSettings.value.networkLabel,
214
- },
215
- vlanId: connectionSettings.value.vlanId,
199
+ () => wizard.selectedStepId,
200
+ (newSelectedStepId: number) => {
201
+ if (newSelectedStepId !== 2) return
202
+
203
+ const from = filteredNetworksList.value.find(
204
+ (network) => network.name === vmkernelAdapter.value.vm
205
+ )
206
+
207
+ readyCompleteData.value = {
208
+ vm: vmkernelAdapter.value.vm,
209
+ currentSettings: {
210
+ switch: from?.switch || '',
211
+ network: from?.networkLabel || '',
212
+ },
213
+ newSettings: {
214
+ switch: props.switchName,
215
+ network: connectionSettings.value.networkLabel,
216
+ },
217
+ vlanId: connectionSettings.value.vlanId,
218
+ }
216
219
  }
217
- }
218
220
  )
219
221
 
220
222
  watch(
221
- () => props.switchNetworks,
222
- (netsOnSwitch: UI_I_Network[]) => {
223
- const vmKernelNetworksIdOnSwitch = netsOnSwitch
224
- .filter((net: UI_I_Network) => net.networkType === '1')
225
- .map((net: UI_I_Network) => net.id)
226
-
227
- filteredNetworksList.value = props.networksList
228
- .filter(
229
- (net: UI_I_Network) =>
230
- net.networkType === '1' &&
231
- !vmKernelNetworksIdOnSwitch.includes(net.id)
232
- )
233
- .map((net: UI_I_Network, index: number) => ({
234
- name: net.sysx?.id || '',
235
- networkLabel: net.title,
236
- switch: net.switchName || '',
237
- ipAddress: net.sysx?.ipv4_settings.ipv4 || '--',
238
- tcp: net.sysx?.tcp_stack
239
- ? localization.value[net.sysx?.tcp_stack]
240
- : '--',
241
- id: `${net.sysx?.id || ''}-${index}`,
242
- }))
243
- },
244
- { deep: true, immediate: true }
223
+ () => props.switchNetworks,
224
+ (netsOnSwitch: UI_I_Network[]) => {
225
+ const vmKernelNetworksIdOnSwitch = netsOnSwitch
226
+ .filter((net: UI_I_Network) => net.networkType === '1')
227
+ .map((net: UI_I_Network) => net.id)
228
+
229
+ filteredNetworksList.value = props.networksList
230
+ .filter(
231
+ (net: UI_I_Network) =>
232
+ net.networkType === '1' &&
233
+ !vmKernelNetworksIdOnSwitch.includes(net.id)
234
+ )
235
+ .map((net: UI_I_Network, index: number) => ({
236
+ name: net.sysx?.id || '',
237
+ networkLabel: net.title,
238
+ switch: net.switchName || '',
239
+ ipAddress: net.sysx?.ipv4_settings.ipv4 || '--',
240
+ tcp: net.sysx?.tcp_stack
241
+ ? localization.value[net.sysx?.tcp_stack]
242
+ : '--',
243
+ id: `${net.sysx?.id || ''}-${index}`,
244
+ }))
245
+ },
246
+ { deep: true, immediate: true }
245
247
  )
246
248
 
247
249
  const onChangeConnectionSettings = (
248
- newFields: UI_I_ConnectionSettings
250
+ newFields: UI_I_ConnectionSettings
249
251
  ): void => {
250
- connectionSettings.value = newFields
252
+ connectionSettings.value = newFields
251
253
  }
252
254
 
253
255
  const onChangeMigrateVmkernelAdapter = (
254
- newFields: UI_I_SelectVmkernelAdapter
256
+ newFields: UI_I_SelectVmkernelAdapter
255
257
  ): void => {
256
- vmkernelAdapter.value = newFields
258
+ vmkernelAdapter.value = newFields
257
259
  }
258
260
 
259
261
  const reset = (): void => {
260
- wizard.reset()
261
- connectionSettings.value = {
262
- networkLabel: 'VM Network',
263
- vlanId: 'None (0)',
264
- }
265
- vmkernelAdapter.value = {
266
- vm: '',
267
- }
262
+ wizard.reset()
263
+ connectionSettings.value = {
264
+ networkLabel: 'VM Network',
265
+ vlanId: 'None (0)',
266
+ }
267
+ vmkernelAdapter.value = {
268
+ vm: '',
269
+ }
268
270
  }
269
271
 
270
272
  const onHideAlert = (stepId: number): void => {
271
- wizard.hideAlertMessagesByStepId(stepId)
273
+ wizard.hideAlertMessagesByStepId(stepId)
272
274
  }
273
275
 
274
276
  const onHide = (): void => {
275
- emits('hide')
276
- reset()
277
+ emits('hide')
278
+ reset()
277
279
  }
278
280
 
279
281
  const onSubmit = (): void => {
280
- onHide()
282
+ onHide()
281
283
  }
282
284
 
285
+ watch(
286
+ () => props.isMigrateAdapterLoading,
287
+ (newValue: boolean) => {
288
+ wizard.setLoader(newValue)
289
+ },
290
+ { immediate: true }
291
+ )
292
+
283
293
  onMounted(() => {
284
- hostname.value = location.hostname
294
+ hostname.value = location.hostname
285
295
  })
286
296
  </script>
287
297
 
@@ -75,24 +75,24 @@ export const checkConnectionSettingsSync = (
75
75
  }
76
76
 
77
77
  const checkNetwork = async (
78
- networkLabel: string,
78
+ label: string,
79
79
  localization: UI_I_Localization,
80
80
  emits: UI_I_MigrateVmkernelAdapterEmits
81
81
  ): Promise<UI_I_AsyncCheckReturn> => {
82
- if (networkLabel) {
82
+ if (label) {
83
83
  return new Promise((resolve, _reject) =>
84
- emits('check-network-label', networkLabel, (error_message: string) => {
85
- if (error_message === '') {
84
+ emits('check-network-label', label, (message: string) => {
85
+ if (message === '') {
86
86
  resolve({
87
87
  isValid: true,
88
88
  message: '',
89
89
  })
90
90
  }
91
91
 
92
- if (error_message !== '') {
92
+ if (message !== '') {
93
93
  resolve({
94
94
  isValid: false,
95
- message: error_message,
95
+ message,
96
96
  })
97
97
  }
98
98
  })
@@ -107,7 +107,7 @@ const checkNetwork = async (
107
107
 
108
108
  export const checkNetworkAsync = async (
109
109
  value: UI_I_WizardStep[],
110
- networkLabel: string,
110
+ label: string,
111
111
  stepId: number,
112
112
  fieldName: string,
113
113
  emits: UI_I_MigrateVmkernelAdapterEmits,
@@ -116,14 +116,10 @@ export const checkNetworkAsync = async (
116
116
  ): Promise<UI_I_ValidationReturn> => {
117
117
  let stepHasError = false
118
118
 
119
- wizard.setLoader(true)
120
-
121
119
  const labelValidation: {
122
120
  isValid: boolean
123
121
  message: string
124
- } = await checkNetwork(networkLabel, localization, emits)
125
-
126
- wizard.setLoader(false)
122
+ } = await checkNetwork(label, localization, emits)
127
123
 
128
124
  if (!labelValidation.isValid) {
129
125
  stepHasError = wizard.setValidation(stepId, fieldName, {