bfg-common 1.3.431 → 1.3.433

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 (25) hide show
  1. package/assets/localization/local_be.json +2 -1
  2. package/assets/localization/local_en.json +2 -1
  3. package/assets/localization/local_hy.json +2 -1
  4. package/assets/localization/local_kk.json +2 -1
  5. package/assets/localization/local_ru.json +2 -1
  6. package/assets/localization/local_zh.json +2 -1
  7. package/components/common/recursionTree/lib/models/interfaces.ts +2 -1
  8. package/components/common/vm/actions/common/customizeHardware/virtualHardware/cdDvdDrive/CdDvdDrive.vue +1 -0
  9. package/components/common/vm/actions/common/customizeHardware/virtualHardware/cpu/Cpu.vue +6 -2
  10. package/components/common/vm/actions/common/customizeHardware/virtualHardware/memory/Memory.vue +6 -2
  11. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newHardDisk/NewHardDisk.vue +1 -0
  12. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newNetwork/NewNetwork.vue +1 -0
  13. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newPciDevice/NewPciDevice.vue +1 -0
  14. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newUsbController/NewUsbController.vue +1 -1
  15. package/components/common/vm/actions/common/customizeHardware/virtualHardware/other/Other.vue +1 -1
  16. package/components/common/vm/actions/common/customizeHardware/virtualHardware/videoCard/VideoCard.vue +1 -1
  17. package/components/common/vm/actions/common/customizeHardware/vmoptions/bootOptions/BootOptions.vue +1 -1
  18. package/components/common/vm/actions/common/customizeHardware/vmoptions/generalOptions/GeneralOptions.vue +5 -1
  19. package/components/common/vm/actions/common/customizeHardware/vmoptions/remoteConsoleOptions/RemoteConsoleOptions.vue +2 -2
  20. package/components/common/vm/actions/common/customizeHardware/vmoptions/tools/Tools.vue +2 -2
  21. package/components/common/wizards/datastoreNew/add/lib/models/types.ts +1 -1
  22. package/components/common/wizards/datastoreNew/add/sharedStorm/SharedStorm.vue +3 -3
  23. package/components/common/wizards/datastoreNew/add/sharedStorm/deviceSelection/DeviceSelection.vue +25 -58
  24. package/components/common/wizards/datastoreNew/add/sharedStorm/deviceSelection/table/Table.vue +12 -1
  25. package/package.json +1 -1
@@ -2380,5 +2380,6 @@
2380
2380
  "passwordIsRequired": "Патрабуецца пароль",
2381
2381
  "source": "Крыніца",
2382
2382
  "diskIsRequired": "Патрабуецца дыск",
2383
- "datastoreIsRequired": "Патрабуецца сховішча даных"
2383
+ "datastoreIsRequired": "Патрабуецца сховішча даных",
2384
+ "noBackupAvailable": "Няма даступнай рэзервовай копіі"
2384
2385
  }
@@ -2384,5 +2384,6 @@
2384
2384
  "passwordIsRequired": "Password is required",
2385
2385
  "source": "Source",
2386
2386
  "diskIsRequired": "Disk is required",
2387
- "datastoreIsRequired": "Datastore is required"
2387
+ "datastoreIsRequired": "Datastore is required",
2388
+ "noBackupAvailable": "No backup available"
2388
2389
  }
@@ -2384,5 +2384,6 @@
2384
2384
  "passwordIsRequired": "Գաղտնաբառը պարտադիր է",
2385
2385
  "source": "Աղբյուր",
2386
2386
  "diskIsRequired": "Պահանջվում է սկավառակ",
2387
- "datastoreIsRequired": "Պահանջվում է տվյալների պահեստ"
2387
+ "datastoreIsRequired": "Պահանջվում է տվյալների պահեստ",
2388
+ "noBackupAvailable": "Պահուստավորում չկա"
2388
2389
  }
@@ -2383,5 +2383,6 @@
2383
2383
  "passwordIsRequired": "Құпия сөз қажет",
2384
2384
  "source": "Дереккөз",
2385
2385
  "diskIsRequired": "Диск қажет",
2386
- "datastoreIsRequired": "Деректер қоймасы қажет"
2386
+ "datastoreIsRequired": "Деректер қоймасы қажет",
2387
+ "noBackupAvailable": "Сақтық көшірме жоқ"
2387
2388
  }
@@ -2389,5 +2389,6 @@
2389
2389
  "passwordIsRequired": "Требуется пароль",
2390
2390
  "source": "Источник",
2391
2391
  "diskIsRequired": "Требуется диск",
2392
- "datastoreIsRequired": "Требуется хранилище данных"
2392
+ "datastoreIsRequired": "Требуется хранилище данных",
2393
+ "noBackupAvailable": "Резервная копия недоступна"
2393
2394
  }
@@ -2383,5 +2383,6 @@
2383
2383
  "passwordIsRequired": "密码是必需的",
2384
2384
  "source": "来源",
2385
2385
  "diskIsRequired": "需要磁盘",
2386
- "datastoreIsRequired": "需要数据存储"
2386
+ "datastoreIsRequired": "需要数据存储",
2387
+ "noBackupAvailable": "没有可用的备份"
2387
2388
  }
@@ -4,7 +4,7 @@ export interface UI_I_TreeNodeShort<T = string> {
4
4
  id: string | number
5
5
  type: T
6
6
  }
7
- export interface UI_I_TreeNode<N = UI_I_TreeNodeDuplicate, T = string>
7
+ export interface UI_I_TreeNode<N = UI_I_TreeNodeDuplicate, T = string, D = any>
8
8
  extends UI_I_TreeNodeShort<T> {
9
9
  state: string | number // TODO только number
10
10
  name: string
@@ -19,4 +19,5 @@ export interface UI_I_TreeNode<N = UI_I_TreeNodeDuplicate, T = string>
19
19
  modified?: number
20
20
  testId?: string
21
21
  kind?: number
22
+ data?: D
22
23
  }
@@ -4,6 +4,7 @@
4
4
  :has-children="true"
5
5
  :is-roll-back="props.type === 'removed'"
6
6
  :removable="isRemovable"
7
+ test-id="cd-dvd-drive-stack-block"
7
8
  @remove="onRemoveCdDvdDrive"
8
9
  @roll-back="onRollBackCdDvdDrive"
9
10
  >
@@ -1,8 +1,12 @@
1
1
  <template>
2
2
  <div class="hardware-cpu">
3
- <atoms-stack-block :has-children="true">
3
+ <atoms-stack-block :has-children="true" test-id="cpu-stack-block">
4
4
  <template #stackBlockKey>
5
- <div id="vm-wizard-toggle-block-cpu" data-id="vm-wizard-toggle-block-cpu" class="flex-align-center">
5
+ <div
6
+ id="vm-wizard-toggle-block-cpu"
7
+ data-id="vm-wizard-toggle-block-cpu"
8
+ class="flex-align-center"
9
+ >
6
10
  <span>{{ localization.cpu }}</span>
7
11
  <atoms-the-icon
8
12
  v-show="cpuInvalid"
@@ -1,8 +1,12 @@
1
1
  <template>
2
2
  <div class="hardware-memory">
3
- <atoms-stack-block :has-children="true">
3
+ <atoms-stack-block :has-children="true" test-id="memory-stack-block">
4
4
  <template #stackBlockKey>
5
- <div id="vm-wizard-toggle-block-memory" data-id="vm-wizard-toggle-block-memory" class="flex-align-center">
5
+ <div
6
+ id="vm-wizard-toggle-block-memory"
7
+ data-id="vm-wizard-toggle-block-memory"
8
+ class="flex-align-center"
9
+ >
6
10
  <span>{{ localization.memory }}</span>
7
11
  <atoms-the-icon
8
12
  v-show="memoryInvalid"
@@ -4,6 +4,7 @@
4
4
  :has-children="true"
5
5
  :is-roll-back="props.type === 'removed'"
6
6
  :removable="isRemovable"
7
+ test-id="hard-disk-stack-block"
7
8
  @remove="onRemoveHardDisk"
8
9
  @roll-back="onRollBackHardDisk"
9
10
  >
@@ -3,6 +3,7 @@
3
3
  <atoms-stack-block
4
4
  :has-children="true"
5
5
  :removable="isRemovable"
6
+ test-id="network-stack-block"
6
7
  @remove="removeNetwork"
7
8
  >
8
9
  <template #stackBlockKey>
@@ -3,6 +3,7 @@
3
3
  <atoms-stack-block
4
4
  :has-children="true"
5
5
  :removable="isRemovable"
6
+ test-id="pci-device-stack-block"
6
7
  @remove="onRemovePciDevice"
7
8
  >
8
9
  <template #stackBlockKey>
@@ -1,6 +1,6 @@
1
1
  <template>
2
2
  <div class="hardware-usb-controller">
3
- <atoms-stack-block :has-children="false">
3
+ <atoms-stack-block :has-children="false" test-id="usb-controller-stack-block">
4
4
  <template #stackBlockKey>
5
5
  <div
6
6
  id="vm-wizard-toggle-block-usb-controller"
@@ -1,6 +1,6 @@
1
1
  <template>
2
2
  <div class="hardware-other">
3
- <atoms-stack-block :has-children="true">
3
+ <atoms-stack-block :has-children="true" test-id="other-stack-block">
4
4
  <template #stackBlockKey>
5
5
  <div
6
6
  id="vm-wizard-toggle-block-other"
@@ -1,6 +1,6 @@
1
1
  <template>
2
2
  <div class="hardware-video-card">
3
- <atoms-stack-block :has-children="true">
3
+ <atoms-stack-block :has-children="true" test-id="video-card-stack-block">
4
4
  <template #stackBlockKey>
5
5
  <div
6
6
  id="vm-wizard-toggle-block-video-card"
@@ -1,6 +1,6 @@
1
1
  <template>
2
2
  <div class="boot-options">
3
- <atoms-stack-block :has-children="true">
3
+ <atoms-stack-block :has-children="true" test-id="boot-options-stack-block">
4
4
  <template #stackBlockKey>
5
5
  <div
6
6
  id="vm-wizard-toggle-block-boot-option"
@@ -1,6 +1,10 @@
1
1
  <template>
2
2
  <div class="general-options">
3
- <atoms-stack-block :has-children="true" @toggle="blockIsOpen = $event">
3
+ <atoms-stack-block
4
+ :has-children="true"
5
+ test-id="general-options-stack-block"
6
+ @toggle="blockIsOpen = $event"
7
+ >
4
8
  <template #stackBlockKey>
5
9
  <div
6
10
  id="vm-wizard-toggle-block-general-options"
@@ -1,6 +1,6 @@
1
1
  <template>
2
- <div class="hardware-cpu">
3
- <atoms-stack-block :has-children="true">
2
+ <div class="hardware-remote-console">
3
+ <atoms-stack-block :has-children="true" test-id="remote-console-stack-block">
4
4
  <template #stackBlockKey>
5
5
  <div
6
6
  id="vm-wizard-toggle-block-remote-console"
@@ -1,6 +1,6 @@
1
1
  <template>
2
- <div class="hardware-cpu">
3
- <atoms-stack-block :has-children="true">
2
+ <div class="hardware-tools">
3
+ <atoms-stack-block :has-children="true" test-id="tools-stack-block">
4
4
  <template #stackBlockKey>
5
5
  <div
6
6
  id="vm-wizard-toggle-block-tools"
@@ -6,7 +6,7 @@ export type UI_T_KerberosAuthentication =
6
6
  | 'use-only-krb5'
7
7
  | 'use-integrity'
8
8
 
9
- export type UI_T_WizardDatastoreMode = 'procurator' | 'sphere'
9
+ // export type UI_T_WizardDatastoreMode = 'procurator' | 'sphere'
10
10
 
11
11
  // export interface UI_I_DatastoreValidityName {
12
12
  // valid: boolean
@@ -4,10 +4,10 @@
4
4
  v-show="props.stepId === 2"
5
5
  v-model="model"
6
6
  v-model:lun-disk="selectedLunDisk"
7
+ :step-id="props.stepId"
7
8
  :device-selection-submit="0"
8
- :step-position="1"
9
9
  :datastore-type="props.datastoreType"
10
- :mode="props.project"
10
+ :project="props.project"
11
11
  :datacenter-hosts="props.datacenterHosts"
12
12
  :is-main-filter="props.isMainFilter"
13
13
  :host-id="props.hostId"
@@ -63,7 +63,7 @@ const selectedLunDisk = ref<UI_I_CreateStorageLunDiskItem[]>([])
63
63
 
64
64
  const lunDiskTotalCapacity = computed<number>(() => {
65
65
  console.log(model.value, 'model.value')
66
-
66
+ console.log(selectedLunDisk.value, 'selectedLunDisk.value')
67
67
 
68
68
  if (!selectedLunDisk.value.length) return 0
69
69
 
@@ -46,7 +46,7 @@
46
46
  />
47
47
 
48
48
  <div
49
- v-if="props.mode === 'sphere' && !props.hostId"
49
+ v-if="props.project === 'sphere' && !props.hostId"
50
50
  class="clr-form-control clr-row"
51
51
  >
52
52
  <label class="clr-control-label clr-col-12 clr-col-md-2">{{
@@ -96,6 +96,7 @@
96
96
  </template>
97
97
 
98
98
  <script lang="ts" setup>
99
+ import { UI_T_Project } from '~/lib/models/types'
99
100
  import { UI_I_ValidationTouchResult } from '~/lib/models/plugins/validation/interfaces'
100
101
  // import { UI_I_SchemaTablePayload } from '~/lib/models/store/interfaces'
101
102
  import { UI_I_Localization } from '~/lib/models/interfaces'
@@ -112,16 +113,14 @@ import {
112
113
  UI_I_SelectHostOptions,
113
114
  } from '~/components/common/wizards/datastore/add/sharedStorm/deviceSelection/lib/models/interfaces'
114
115
  // import { Ui_T_HostSelectedType } from '~/components/common/wizards/datastore/add/sharedStorm/deviceSelection/lib/models/types'
115
- import {
116
- UI_T_DatastoreType,
117
- UI_T_WizardDatastoreMode,
118
- } from '~/components/common/wizards/datastore/add/lib/models/types'
116
+ import { UI_T_DatastoreType } from '~/components/common/wizards/datastoreNew/add/lib/models/types'
119
117
  import { defaultFormFunc } from '~/components/common/wizards/datastore/add/sharedStorm/deviceSelection/lib/config/defaultForm'
120
118
  import { hostsOptionsFunc } from '~/components/common/wizards/datastore/add/sharedStorm/deviceSelection/lib/config/selectOptions'
121
119
  import { checkValidityName } from '~/components/common/wizards/datastore/add/lib/utils'
122
120
 
123
121
  const props = defineProps<{
124
- mode: UI_T_WizardDatastoreMode
122
+ project: UI_T_Project
123
+ stepId: number
125
124
  deviceSelectionSubmit: number
126
125
  lunDisk: UI_I_CreateStorageLunDiskItem[]
127
126
  stepPosition: number
@@ -187,20 +186,6 @@ const sort = ref<string | null>(null)
187
186
 
188
187
  const selectedLunDisk = ref<number[]>([])
189
188
 
190
- watch(
191
- selectedLunDisk,
192
- (newValue: number[] | null) => {
193
- if (newValue === null || !dataTable.value) return null
194
-
195
- const lunDisk = dataTable.value.items.filter((_: any, key: number) =>
196
- newValue.includes(key)
197
- )
198
-
199
- emits('update:lun-disk', lunDisk)
200
- },
201
- { deep: true }
202
- )
203
-
204
189
  const updatePagination = (event: UI_I_Pagination): void => {
205
190
  pagination.value = event
206
191
  }
@@ -215,7 +200,7 @@ const loading = computed<boolean>(() =>
215
200
  const dataTable = computed<API_UI_I_DataTable<
216
201
  UI_I_CreateStorageLunDiskItem[]
217
202
  > | null>(() => {
218
- // if (props.mode === 'procurator')
203
+ // if (props.project === 'procurator')
219
204
  return $store.getters['storage/getNewDatastoreHosts']
220
205
 
221
206
  // if (props.datastoreType === 'local') return []
@@ -263,7 +248,7 @@ const validatePropertiesForSphere = (): boolean => {
263
248
  }
264
249
 
265
250
  if (props.datastoreType === 'shared-storm') {
266
- return !selectedHost.value || !selectedLunDisk.value.length
251
+ return !selectedHost.value || !model.value.lunDisk.length
267
252
  }
268
253
 
269
254
  return false
@@ -284,17 +269,17 @@ const validationTextForSphere = (): string => {
284
269
 
285
270
  const collectDataForReview = (
286
271
  name: string,
287
- mode: UI_T_WizardDatastoreMode
272
+ mode: UI_T_Project
288
273
  ): UI_I_DeviceSelectionSendData => {
289
274
  const data: UI_I_DeviceSelectionSendData = {
290
275
  name,
291
276
  }
292
277
 
293
- if (mode === 'procurator') {
294
- data.lunDisk = props.lunDisk.map((lun) => {
295
- return { name: lun.name, capacity: lun.capacity_mb }
296
- })
297
- }
278
+ // if (mode === 'procurator') {
279
+ // data.lunDisk = props.lunDisk.map((lun) => {
280
+ // return { name: lun.name, capacity: lun.capacity_mb }
281
+ // })
282
+ // }
298
283
 
299
284
  if (mode === 'sphere') {
300
285
  if (props.datastoreType === 'local') {
@@ -314,16 +299,16 @@ const collectDataForReview = (
314
299
 
315
300
  const submit = async (): Promise<void> => {
316
301
  const name = form.value.name.value
317
- const { mode } = props
302
+ const { project } = props
318
303
 
319
304
  const valid = validation.touch()
320
305
  const isShowAlertDanger =
321
- mode === 'procurator'
322
- ? !selectedLunDisk.value.length
306
+ project === 'procurator'
307
+ ? !model.value.lunDisk.length
323
308
  : validatePropertiesForSphere()
324
309
 
325
310
  if (!valid.isValid || isShowAlertDanger) {
326
- const isModeSphere = mode === 'sphere' && props.datastoreType === 'local'
311
+ const isModeSphere = project === 'sphere' && props.datastoreType === 'local'
327
312
 
328
313
  const errorText =
329
314
  localization.value[
@@ -337,7 +322,10 @@ const submit = async (): Promise<void> => {
337
322
  if (!isShowAlertDanger) {
338
323
  emits('loading', true)
339
324
 
340
- const { valid: validName, msg } = await checkValidityName(name, props.mode)
325
+ const { valid: validName, msg } = await checkValidityName(
326
+ name,
327
+ props.project
328
+ )
341
329
 
342
330
  emits('loading', false)
343
331
 
@@ -349,7 +337,7 @@ const submit = async (): Promise<void> => {
349
337
 
350
338
  resetValidation()
351
339
 
352
- const eventData = collectDataForReview(name, mode)
340
+ const eventData = collectDataForReview(name, project)
353
341
  emits('submit', eventData)
354
342
  }
355
343
 
@@ -382,30 +370,9 @@ const initLunDisksDataTable = async (): Promise<void> => {
382
370
  } as UI_I_DataTableQuery)
383
371
  }
384
372
 
385
- watch(
386
- () => props.stepPosition,
387
- () => {
388
- const { stepPosition, datastoreType, mode } = props
389
- // const hostsDataForProcurator =
390
- // $store.getters['storage/getNewDatastoreHosts']
391
-
392
- // if (
393
- // mode === 'sphere' &&
394
- // stepPosition === 1 &&
395
- // datastoreType === 'local' &&
396
- // !hostData.value
397
- // ) {
398
- // initHostData()
399
- // }
400
- if (
401
- mode === 'procurator' &&
402
- stepPosition === 1 &&
403
- datastoreType === 'shared-storm'
404
- ) {
405
- initLunDisksDataTable()
406
- }
407
- }
408
- )
373
+ if (props.project === 'procurator' && props.stepId === 2) {
374
+ initLunDisksDataTable()
375
+ }
409
376
  </script>
410
377
 
411
378
  <style lang="scss" scoped>
@@ -50,7 +50,7 @@ const props = defineProps<{
50
50
  pagination: UI_I_Pagination
51
51
  isMainFilter?: boolean
52
52
  }>()
53
- const selectedLunDiskLocal = defineModel<number[]>()
53
+ const modelLunDisk = defineModel<UI_I_CreateStorageLunDiskItem[]>()
54
54
  const emits = defineEmits<{
55
55
  (event: 'pagination', value: UI_I_Pagination): void
56
56
  (event: 'sort', value: string): void
@@ -107,6 +107,17 @@ const bodyItems = computed<UI_I_BodyItem[][]>(() => {
107
107
 
108
108
  return result
109
109
  })
110
+
111
+ const selectedLunDiskLocal = ref<number[]>()
112
+ watch(
113
+ selectedLunDiskLocal,
114
+ (newValue: number[]) => {
115
+ modelLunDisk.value = props.dataTable.filter((_: any, key: number) =>
116
+ newValue.includes(key)
117
+ )
118
+ },
119
+ { deep: true, immediate: true }
120
+ )
110
121
  </script>
111
122
 
112
123
  <style lang="scss" scoped>
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "bfg-common",
3
3
  "private": false,
4
- "version": "1.3.431",
4
+ "version": "1.3.433",
5
5
  "scripts": {
6
6
  "build": "nuxt build",
7
7
  "dev": "nuxt dev --port=3002",