bfg-common 1.4.399 → 1.4.401

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.
@@ -1,189 +1,204 @@
1
- <template>
2
- <div class="customize-hardware">
3
- <ui-tabs
4
- v-model="selectedNavItem"
5
- test-id="vm-wizard-tabs"
6
- :tabs="props.navItems"
7
- type="underline"
8
- class="navigation"
9
- />
10
- <ui-alert
11
- v-show="props.errors.length"
12
- status="alert-danger"
13
- :items="props.errors"
14
- test-id="customize-hardware-alert"
15
- @remove="emits('remove-validation-errors')"
16
- />
17
-
18
- <div v-show="selectedNavItem === 0">
19
- <common-vm-actions-common-customize-hardware-virtual-hardware
20
- :vm-name="vmName"
21
- :storage="props.storage"
22
- :max-cpus="props.maxCpus"
23
- :max-memory="props.maxMemory"
24
- :cpu-models="props.cpuModels"
25
- :cpu="props.cpu"
26
- :memory="props.memory"
27
- :is-edit="props.isEdit"
28
- :is-clone="props.isClone"
29
- :state="props.state"
30
- :hard-disks="props.hardDisks"
31
- :cd-dvd-drives="props.cdDvdDrives"
32
- :networks="props.networks"
33
- :networks-table="props.networksTable"
34
- :video-card="props.videoCard"
35
- :usb-controller="props.usbController"
36
- :pci-devices="props.pciDevices"
37
- :nodes="props.nodes"
38
- :files="props.files"
39
- :error-validation-fields="props.errorValidationFields"
40
- :get-datastore-table-func="props.getDatastoreTableFunc"
41
- :datastore="props.datastore"
42
- :vm-cpu-help-text-second="props.vmCpuHelpTextSecond"
43
- :passthrough-devices="props.passthroughDevices"
44
- :project="props.project"
45
- :guest-machine-type="guestMachineType"
46
- @send-data="emits('send-data-virtual-hardware-method', $event)"
47
- @get-storage="emits('get-storage', $event)"
48
- @get-folders-or-files="emits('get-folders-or-files', $event)"
49
- @get-active-device-child="emits('get-active-device-child', $event)"
50
- @show-datastore-child="emits('show-datastore-child', $event)"
51
- @remove-error-by-title="emits('remove-error-by-title', $event)"
52
- @invalid="virtualHardwareInvalid = $event"
53
- @get-networks-table="emits('get-networks-table', $event)"
54
- @get-pci-devices="emits('get-pci-devices')"
55
- />
56
- </div>
57
- <div v-show="selectedNavItem === 1">
58
- <common-vm-actions-common-customize-hardware-vmoptions
59
- v-model:vm-name="vmName"
60
- v-model:guest-machine-type="guestMachineType"
61
- v-model:guest-os-family="guestOsFamily"
62
- v-model:guest-os-version="guestOsVersion"
63
- :hard-disks="props.hardDisksForBootOptions"
64
- :cd-dvd-drives="props.cdDvdDrivesForBootOptions"
65
- :networks="props.networksForBootOptions"
66
- :options="props.options"
67
- :is-edit="props.isEdit"
68
- :is-clone="props.isClone"
69
- :error-validation-fields="props.errorValidationFields"
70
- :state="props.state"
71
- @change-boot-order="emits('change-boot-order', $event)"
72
- @send-data="emits('send-data-vm-options-method', $event)"
73
- @invalid="vmOptionsInvalid = $event"
74
- @remove-error-by-title="emits('remove-error-by-title', $event)"
75
- />
76
- </div>
77
- </div>
78
- </template>
79
-
80
- <script setup lang="ts">
81
- import type { UI_T_Project } from '~/lib/models/types'
82
- import type { UI_I_DatastoreTableItem } from '~/lib/models/store/storage/interfaces'
83
- import type { UI_I_NetworkTableItem } from '~/lib/models/store/network/interfaces'
84
- import type { UI_I_TablePayload } from '~/lib/models/table/interfaces'
85
- import type { UI_I_FolderOrFileTreePayload } from '~/lib/models/store/storage/interfaces'
86
- import type { UI_I_FileTreeNode } from '~/components/lib/models/interfaces'
87
- import type {
88
- UI_I_SendDataNewPciDevice,
89
- UI_I_SendDataNewCdDvdDrive,
90
- UI_I_SendDataNewHardDisk,
91
- UI_I_SendDataNewNetwork,
92
- UI_I_SendDataVideoCard,
93
- UI_I_SendDataVirtualHardware,
94
- } from '~/components/common/vm/actions/common/customizeHardware/virtualHardware/lib/models/interfaces'
95
- import type { UI_I_SendDataVmoptions } from '~/components/common/vm/actions/common/customizeHardware/vmoptions/lib/models/interfaces'
96
- import type { UI_T_SelectedNavItem } from '~/components/common/vm/actions/common/lib/models/types'
97
- import type { UI_I_ErrorValidationField } from '~/lib/models/store/interfaces'
98
- import type { UI_I_OptionItem } from '~/components/atoms/lib/models/interfaces'
99
- import type { UI_T_ChangeBootOrder } from '~/components/common/vm/actions/lib/models/types'
100
- import type {
101
- API_UI_I_VmEditCpu,
102
- API_UI_I_VmEditMemory,
103
- UI_I_PciDevice,
104
- } from '~/lib/models/store/vm/interfaces'
105
- import type { UI_I_TabItem } from 'bfg-uikit/components/ui/tabs/models/interfaces'
106
-
107
- const vmName = defineModel<string>('vm-name', {required: true})
108
- const guestOsFamily = defineModel<UI_I_OptionItem | null>('guest-os-family', {required: true})
109
- const guestOsVersion = defineModel<UI_I_OptionItem | null>('guest-os-version', {required: true})
110
- const selectedNavItem = defineModel<UI_T_SelectedNavItem>('selected-nav-item', {required: true})
111
- const guestMachineType = defineModel<UI_I_OptionItem | null>('guest-machine-type', {required: true})
112
- const vmOptionsInvalid = defineModel<string[]>('vm-options-invalid', {required: true})
113
- const virtualHardwareInvalid = defineModel<string[]>('virtual-hardware-invalid', {required: true})
114
-
115
- const props = defineProps<{
116
- nodes: UI_I_FileTreeNode[]
117
- files: UI_I_FileTreeNode[]
118
- errors: string[]
119
- storage: UI_I_DatastoreTableItem | null
120
- maxCpus: number
121
- navItems: UI_I_TabItem[]
122
- cpuModels: UI_I_OptionItem[]
123
- maxMemory: number
124
- datastore: UI_I_DatastoreTableItem[]
125
- networksTable: UI_I_NetworkTableItem[]
126
- errorValidationFields: UI_I_ErrorValidationField[]
127
- networksForBootOptions: UI_I_SendDataNewNetwork[] | null
128
- hardDisksForBootOptions: UI_I_SendDataNewHardDisk[] | null
129
- cdDvdDrivesForBootOptions: UI_I_SendDataNewCdDvdDrive[] | null
130
- cpu?: API_UI_I_VmEditCpu
131
- state?: string | number
132
- isEdit?: boolean
133
- memory?: API_UI_I_VmEditMemory
134
- project?: UI_T_Project
135
- isClone?: boolean
136
- options?: UI_I_SendDataVmoptions
137
- networks?: UI_I_SendDataNewNetwork[] | null
138
- videoCard?: UI_I_SendDataVideoCard
139
- hardDisks?: UI_I_SendDataNewHardDisk[] | null
140
- pciDevices?: UI_I_SendDataNewPciDevice[]
141
- cdDvdDrives?: UI_I_SendDataNewCdDvdDrive[] | null
142
- usbController?: string
143
- passthroughDevices?: UI_I_PciDevice[]
144
- vmCpuHelpTextSecond?: string
145
- getDatastoreTableFunc?: (payload: UI_I_TablePayload) => Promise<void>
146
- }>()
147
- const emits = defineEmits<{
148
- (event: 'get-storage', value: UI_I_TablePayload): void
149
- (event: 'get-pci-devices'): void
150
- (event: 'get-networks-table', value: UI_I_TablePayload): void
151
- (event: 'get-folders-or-files', value: UI_I_FolderOrFileTreePayload): void
152
- (event: 'show-datastore-child', value: UI_I_FileTreeNode): void
153
- (event: 'remove-error-by-title', value: string): void
154
- (event: 'get-active-device-child', value: UI_I_FileTreeNode): void
155
- (event: 'remove-validation-errors'): void
156
- (event: 'send-data-vm-options-method', value: UI_I_SendDataVmoptions): void
157
- (event: 'send-data-virtual-hardware-method', value: UI_I_SendDataVirtualHardware): void
158
- (
159
- event: 'change-boot-order',
160
- value: UI_T_ChangeBootOrder
161
- ): void
162
- }>()
163
-
164
- // const localization = computed<UI_I_Localization>(() => useLocal())
165
-
166
- // const navItems = computed<UI_I_TabItem[]>(() =>
167
- // navItemsNewViewFunc(localization.value)
168
- // )
169
-
170
- </script>
171
-
172
- <style lang="scss">
173
- :root {
174
- --divider-color: #e9ebed;
175
- }
176
- :root.dark-theme {
177
- --divider-color: #e9ebed1f;
178
- }
179
- </style>
180
-
181
- <style scoped lang="scss">
182
- .customize-hardware {
183
- padding: 0 32px;
184
-
185
- .navigation {
186
- border-bottom: 1px solid var(--divider-color);
187
- }
188
- }
189
- </style>
1
+ <template>
2
+ <div class="customize-hardware">
3
+ <ui-tabs
4
+ v-model="selectedNavItem"
5
+ test-id="vm-wizard-tabs"
6
+ :tabs="navItemsLocal"
7
+ type="underline"
8
+ class="navigation"
9
+ />
10
+ <ui-alert
11
+ v-show="props.errors.length"
12
+ status="alert-danger"
13
+ :items="props.errors"
14
+ test-id="customize-hardware-alert"
15
+ @remove="emits('remove-validation-errors')"
16
+ />
17
+
18
+ <div v-show="selectedNavItem === 0">
19
+ <common-vm-actions-common-customize-hardware-virtual-hardware
20
+ :vm-name="vmName"
21
+ :storage="props.storage"
22
+ :max-cpus="props.maxCpus"
23
+ :max-memory="props.maxMemory"
24
+ :cpu-models="props.cpuModels"
25
+ :cpu="props.cpu"
26
+ :memory="props.memory"
27
+ :is-edit="props.isEdit"
28
+ :is-clone="props.isClone"
29
+ :state="props.state"
30
+ :hard-disks="props.hardDisks"
31
+ :cd-dvd-drives="props.cdDvdDrives"
32
+ :networks="props.networks"
33
+ :networks-table="props.networksTable"
34
+ :video-card="props.videoCard"
35
+ :usb-controller="props.usbController"
36
+ :pci-devices="props.pciDevices"
37
+ :nodes="props.nodes"
38
+ :files="props.files"
39
+ :error-validation-fields="props.errorValidationFields"
40
+ :get-datastore-table-func="props.getDatastoreTableFunc"
41
+ :datastore="props.datastore"
42
+ :vm-cpu-help-text-second="props.vmCpuHelpTextSecond"
43
+ :passthrough-devices="props.passthroughDevices"
44
+ :project="props.project"
45
+ :guest-machine-type="guestMachineType"
46
+ @send-data="emits('send-data-virtual-hardware-method', $event)"
47
+ @get-storage="emits('get-storage', $event)"
48
+ @get-folders-or-files="emits('get-folders-or-files', $event)"
49
+ @get-active-device-child="emits('get-active-device-child', $event)"
50
+ @show-datastore-child="emits('show-datastore-child', $event)"
51
+ @remove-error-by-title="emits('remove-error-by-title', $event)"
52
+ @invalid="virtualHardwareInvalid = $event"
53
+ @get-networks-table="emits('get-networks-table', $event)"
54
+ @get-pci-devices="emits('get-pci-devices')"
55
+ />
56
+ </div>
57
+ <div v-show="selectedNavItem === 1">
58
+ <common-vm-actions-common-customize-hardware-vmoptions
59
+ v-model:vm-name="vmName"
60
+ v-model:guest-machine-type="guestMachineType"
61
+ v-model:guest-os-family="guestOsFamily"
62
+ v-model:guest-os-version="guestOsVersion"
63
+ :hard-disks="props.hardDisksForBootOptions"
64
+ :cd-dvd-drives="props.cdDvdDrivesForBootOptions"
65
+ :networks="props.networksForBootOptions"
66
+ :options="props.options"
67
+ :is-edit="props.isEdit"
68
+ :is-clone="props.isClone"
69
+ :error-validation-fields="props.errorValidationFields"
70
+ :state="props.state"
71
+ @change-boot-order="emits('change-boot-order', $event)"
72
+ @send-data="emits('send-data-vm-options-method', $event)"
73
+ @invalid="vmOptionsInvalid = $event"
74
+ @remove-error-by-title="emits('remove-error-by-title', $event)"
75
+ />
76
+ </div>
77
+ </div>
78
+ </template>
79
+
80
+ <script setup lang="ts">
81
+ import type { UI_I_TabItem } from 'bfg-uikit/components/ui/tabs/models/interfaces'
82
+ import type { UI_T_Project } from '~/lib/models/types'
83
+ import type { UI_I_DatastoreTableItem } from '~/lib/models/store/storage/interfaces'
84
+ import type { UI_I_NetworkTableItem } from '~/lib/models/store/network/interfaces'
85
+ import type { UI_I_TablePayload } from '~/lib/models/table/interfaces'
86
+ import type { UI_I_FolderOrFileTreePayload } from '~/lib/models/store/storage/interfaces'
87
+ import type { UI_I_FileTreeNode } from '~/components/lib/models/interfaces'
88
+ import type {
89
+ UI_I_SendDataNewPciDevice,
90
+ UI_I_SendDataNewCdDvdDrive,
91
+ UI_I_SendDataNewHardDisk,
92
+ UI_I_SendDataNewNetwork,
93
+ UI_I_SendDataVideoCard,
94
+ UI_I_SendDataVirtualHardware,
95
+ } from '~/components/common/vm/actions/common/customizeHardware/virtualHardware/lib/models/interfaces'
96
+ import type { UI_I_SendDataVmoptions } from '~/components/common/vm/actions/common/customizeHardware/vmoptions/lib/models/interfaces'
97
+ import type { UI_T_SelectedNavItem } from '~/components/common/vm/actions/common/lib/models/types'
98
+ import type { UI_I_ErrorValidationField } from '~/lib/models/store/interfaces'
99
+ import type { UI_I_OptionItem } from '~/components/atoms/lib/models/interfaces'
100
+ import type { UI_T_ChangeBootOrder } from '~/components/common/vm/actions/lib/models/types'
101
+ import type {
102
+ API_UI_I_VmEditCpu,
103
+ API_UI_I_VmEditMemory,
104
+ UI_I_PciDevice,
105
+ } from '~/lib/models/store/vm/interfaces'
106
+ import type { UI_I_Localization } from '~/lib/models/interfaces'
107
+ import { navItemsNewViewFunc } from '~/components/common/vm/actions/common/customizeHardware/lib/config/navItems'
108
+
109
+ const vmName = defineModel<string>('vm-name', { required: true })
110
+ const guestOsFamily = defineModel<UI_I_OptionItem | null>('guest-os-family', {
111
+ required: true,
112
+ })
113
+ const guestOsVersion = defineModel<UI_I_OptionItem | null>('guest-os-version', {
114
+ required: true,
115
+ })
116
+ const selectedNavItem = defineModel<UI_T_SelectedNavItem>('selected-nav-item', {
117
+ required: true,
118
+ })
119
+ const guestMachineType = defineModel<UI_I_OptionItem | null>(
120
+ 'guest-machine-type',
121
+ { required: true }
122
+ )
123
+ const vmOptionsInvalid = defineModel<string[]>('vm-options-invalid', {
124
+ required: true,
125
+ })
126
+ const virtualHardwareInvalid = defineModel<string[]>(
127
+ 'virtual-hardware-invalid',
128
+ { required: true }
129
+ )
130
+
131
+ const props = defineProps<{
132
+ nodes: UI_I_FileTreeNode[]
133
+ files: UI_I_FileTreeNode[]
134
+ errors: string[]
135
+ storage: UI_I_DatastoreTableItem | null
136
+ maxCpus: number
137
+ navItems: UI_I_TabItem[]
138
+ cpuModels: UI_I_OptionItem[]
139
+ maxMemory: number
140
+ datastore: UI_I_DatastoreTableItem[]
141
+ networksTable: UI_I_NetworkTableItem[]
142
+ errorValidationFields: UI_I_ErrorValidationField[]
143
+ networksForBootOptions: UI_I_SendDataNewNetwork[] | null
144
+ hardDisksForBootOptions: UI_I_SendDataNewHardDisk[] | null
145
+ cdDvdDrivesForBootOptions: UI_I_SendDataNewCdDvdDrive[] | null
146
+ cpu?: API_UI_I_VmEditCpu
147
+ state?: string | number
148
+ isEdit?: boolean
149
+ memory?: API_UI_I_VmEditMemory
150
+ project?: UI_T_Project
151
+ isClone?: boolean
152
+ options?: UI_I_SendDataVmoptions
153
+ networks?: UI_I_SendDataNewNetwork[] | null
154
+ videoCard?: UI_I_SendDataVideoCard
155
+ hardDisks?: UI_I_SendDataNewHardDisk[] | null
156
+ pciDevices?: UI_I_SendDataNewPciDevice[]
157
+ cdDvdDrives?: UI_I_SendDataNewCdDvdDrive[] | null
158
+ usbController?: string
159
+ passthroughDevices?: UI_I_PciDevice[]
160
+ vmCpuHelpTextSecond?: string
161
+ getDatastoreTableFunc?: (payload: UI_I_TablePayload) => Promise<void>
162
+ }>()
163
+ const emits = defineEmits<{
164
+ (event: 'get-storage', value: UI_I_TablePayload): void
165
+ (event: 'get-pci-devices'): void
166
+ (event: 'get-networks-table', value: UI_I_TablePayload): void
167
+ (event: 'get-folders-or-files', value: UI_I_FolderOrFileTreePayload): void
168
+ (event: 'show-datastore-child', value: UI_I_FileTreeNode): void
169
+ (event: 'remove-error-by-title', value: string): void
170
+ (event: 'get-active-device-child', value: UI_I_FileTreeNode): void
171
+ (event: 'remove-validation-errors'): void
172
+ (event: 'send-data-vm-options-method', value: UI_I_SendDataVmoptions): void
173
+ (
174
+ event: 'send-data-virtual-hardware-method',
175
+ value: UI_I_SendDataVirtualHardware
176
+ ): void
177
+ (event: 'change-boot-order', value: UI_T_ChangeBootOrder): void
178
+ }>()
179
+
180
+ const localization = computed<UI_I_Localization>(() => useLocal())
181
+
182
+ const navItemsLocal = computed<UI_I_TabItem[]>(() =>
183
+ navItemsNewViewFunc(localization.value)
184
+ )
185
+ </script>
186
+
187
+ <style lang="scss">
188
+ :root {
189
+ --divider-color: #e9ebed;
190
+ }
191
+ :root.dark-theme {
192
+ --divider-color: #e9ebed1f;
193
+ }
194
+ </style>
195
+
196
+ <style scoped lang="scss">
197
+ .customize-hardware {
198
+ padding: 0 32px;
199
+
200
+ .navigation {
201
+ border-bottom: 1px solid var(--divider-color);
202
+ }
203
+ }
204
+ </style>
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "bfg-common",
3
3
  "private": false,
4
- "version": "1.4.399",
4
+ "version": "1.4.401",
5
5
  "scripts": {
6
6
  "build": "nuxt build",
7
7
  "dev": "nuxt dev --port=3002",