bfg-common 1.5.122 → 1.5.124

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 (131) hide show
  1. package/CODE_STYLE.md +109 -109
  2. package/assets/localization/local_be.json +3084 -3084
  3. package/assets/localization/local_en.json +3088 -3088
  4. package/assets/localization/local_hy.json +2 -2
  5. package/assets/localization/local_kk.json +2 -2
  6. package/assets/localization/local_ru.json +2 -2
  7. package/assets/localization/local_zh.json +3085 -3085
  8. package/components/atoms/TheIcon3.vue +50 -50
  9. package/components/atoms/perPage/PerPage.vue +58 -58
  10. package/components/atoms/table/dataGrid/lib/config/settingsTable.ts +94 -94
  11. package/components/atoms/table/dataGrid/lib/utils/export.ts +16 -16
  12. package/components/atoms/tabs/VerticalTabs.vue +105 -105
  13. package/components/common/browse/blocks/contents/filesNew/Skeleton.vue +18 -18
  14. package/components/common/context/lib/models/interfaces.ts +31 -31
  15. package/components/common/context/recursion/Recursion.vue +87 -87
  16. package/components/common/context/recursion/RecursionNew.vue +238 -238
  17. package/components/common/diagramMain/DiagramMain.vue +897 -897
  18. package/components/common/diagramMain/Header.vue +214 -214
  19. package/components/common/layout/theHeader/helpMenu/About.vue +82 -82
  20. package/components/common/layout/theHeader/userMenu/modals/preferences/view/ViewOld.vue +112 -112
  21. package/components/common/monitor/advanced/tools/chartOptionsModal/counters/table/lib/config/utils.ts +1040 -1040
  22. package/components/common/monitor/overview/OverviewOld.vue +139 -139
  23. package/components/common/pages/home/headline/Headline.vue +45 -45
  24. package/components/common/pages/home/headline/HeadlineOld.vue +42 -42
  25. package/components/common/pages/home/lib/models/interfaces.ts +48 -48
  26. package/components/common/pages/home/widgets/Widgets.vue +49 -49
  27. package/components/common/pages/home/widgets/WidgetsNew.vue +86 -86
  28. package/components/common/pages/home/widgets/WidgetsOld.vue +34 -34
  29. package/components/common/pages/home/widgets/hosts/Hosts.vue +27 -27
  30. package/components/common/pages/home/widgets/hosts/lib/config/items.ts +23 -23
  31. package/components/common/pages/home/widgets/vms/Vms.vue +26 -26
  32. package/components/common/pages/home/widgets/vms/VmsOld.vue +35 -35
  33. package/components/common/pages/home/widgets/vms/lib/config/items.ts +19 -19
  34. package/components/common/pages/packages/Packages.vue +208 -208
  35. package/components/common/pages/shortcuts/block/BlockOld.vue +68 -68
  36. package/components/common/readyToComplete/New.vue +66 -66
  37. package/components/common/readyToComplete/ReadyToComplete.vue +17 -17
  38. package/components/common/recursionTree/RecursionTree.vue +223 -223
  39. package/components/common/select/button/ButtonDropdown.vue +108 -108
  40. package/components/common/spiceConsole/lib/models/interfaces.ts +5 -5
  41. package/components/common/vm/actions/add/Add.vue +785 -785
  42. package/components/common/vm/actions/add/New.vue +556 -556
  43. package/components/common/vm/actions/add/Old.vue +371 -371
  44. package/components/common/vm/actions/add/folderTreeView/FolderTreeView.vue +72 -72
  45. package/components/common/vm/actions/add/folderTreeView/New.vue +40 -40
  46. package/components/common/vm/actions/add/folderTreeView/Old.vue +50 -50
  47. package/components/common/vm/actions/add/lib/config/steps.ts +263 -263
  48. package/components/common/vm/actions/clone/Clone.vue +801 -798
  49. package/components/common/vm/actions/clone/lib/config/steps.ts +291 -291
  50. package/components/common/vm/actions/clone/toTemplate/ToTemplate.vue +626 -626
  51. package/components/common/vm/actions/clone/toTemplate/lib/config/steps.ts +116 -116
  52. package/components/common/vm/actions/common/customizeHardware/virtualHardware/VirtualHardwareOld.vue +319 -319
  53. package/components/common/vm/actions/common/customizeHardware/virtualHardware/browseView/BrowseView.vue +219 -219
  54. package/components/common/vm/actions/common/customizeHardware/virtualHardware/bus/Bus.vue +99 -99
  55. package/components/common/vm/actions/common/customizeHardware/virtualHardware/cdDvdDrive/CdDvdDrive.vue +232 -232
  56. package/components/common/vm/actions/common/customizeHardware/virtualHardware/cdDvdDrive/CdDvdDriveOld.vue +168 -168
  57. package/components/common/vm/actions/common/customizeHardware/virtualHardware/cdDvdDrive/media/Media.vue +25 -25
  58. package/components/common/vm/actions/common/customizeHardware/virtualHardware/cdDvdDrive/media/MediaNew.vue +70 -70
  59. package/components/common/vm/actions/common/customizeHardware/virtualHardware/cdDvdDrive/media/MediaOld.vue +50 -50
  60. package/components/common/vm/actions/common/customizeHardware/virtualHardware/cpu/Cpu.vue +338 -338
  61. package/components/common/vm/actions/common/customizeHardware/virtualHardware/cpu/shares/Shares.vue +140 -140
  62. package/components/common/vm/actions/common/customizeHardware/virtualHardware/cpu/shares/lib/config/options.ts +28 -28
  63. package/components/common/vm/actions/common/customizeHardware/virtualHardware/limit/Limit.vue +220 -220
  64. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newHardDisk/NewHardDisk.vue +368 -368
  65. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newHardDisk/location/Location.vue +149 -149
  66. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newHardDisk/location/LocationNew.vue +74 -74
  67. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newHardDisk/location/LocationOld.vue +83 -83
  68. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newNetwork/NewNetwork.vue +288 -288
  69. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newNetwork/location/new/table/lib/config/config.ts +94 -94
  70. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newNetwork/macAddress/MacAddress.vue +119 -119
  71. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newPciDevice/NewPciDevice.vue +205 -205
  72. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newPciDevice/directPathIo/DirectPathIoNew.vue +66 -66
  73. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newPciDevice/directPathIo/DirectPathIoOld.vue +62 -62
  74. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newPciDevice/dynamicDirectPathIo/DynamicDirectPathIo.vue +31 -31
  75. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newPciDevice/dynamicDirectPathIo/DynamicDirectPathIoOld.vue +76 -76
  76. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newPciDevice/note/Note.vue +15 -15
  77. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newPciDevice/note/NoteNew.vue +42 -42
  78. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newPciDevice/note/NoteOld.vue +30 -30
  79. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newPciDevice/nvidiaGrid/NvidiaGridOld.vue +84 -84
  80. package/components/common/vm/actions/common/customizeHardware/virtualHardware/other/Other.vue +16 -16
  81. package/components/common/vm/actions/common/customizeHardware/virtualHardware/other/OtherNew.vue +30 -30
  82. package/components/common/vm/actions/common/customizeHardware/vmoptions/Vmoptions.vue +145 -145
  83. package/components/common/vm/actions/common/customizeHardware/vmoptions/VmoptionsNew.vue +102 -102
  84. package/components/common/vm/actions/common/customizeHardware/vmoptions/bootOptions/BootOptionsNew.vue +75 -75
  85. package/components/common/vm/actions/common/customizeHardware/vmoptions/bootOptions/delay/Delay.vue +26 -26
  86. package/components/common/vm/actions/common/customizeHardware/vmoptions/bootOptions/firmware/Firmware.vue +57 -57
  87. package/components/common/vm/actions/common/customizeHardware/vmoptions/bootOptions/order/Order.vue +171 -171
  88. package/components/common/vm/actions/common/customizeHardware/vmoptions/bootOptions/order/OrderNew.vue +50 -50
  89. package/components/common/vm/actions/common/customizeHardware/vmoptions/remoteConsoleOptions/New.vue +140 -140
  90. package/components/common/vm/actions/common/customizeHardware/vmoptions/remoteConsoleOptions/copyPaste/CopyPasteNew.vue +30 -30
  91. package/components/common/vm/actions/common/customizeHardware/vmoptions/remoteConsoleOptions/fileTransfer/FileTransferNew.vue +30 -30
  92. package/components/common/vm/actions/common/customizeHardware/vmoptions/remoteConsoleOptions/keymap/Keymap.vue +32 -32
  93. package/components/common/vm/actions/common/customizeHardware/vmoptions/remoteConsoleOptions/usbRedirection/UsbRedirection.vue +28 -28
  94. package/components/common/vm/actions/common/customizeHardware/vmoptions/remoteConsoleOptions/usbRedirection/UsbRedirectionNew.vue +39 -39
  95. package/components/common/vm/actions/common/customizeHardware/vmoptions/remoteConsoleOptions/usbRedirection/UsbRedirectionOld.vue +44 -44
  96. package/components/common/vm/actions/common/lib/utils/capabilities.ts +52 -52
  97. package/components/common/vm/actions/common/select/compatibility/Compatibility.vue +100 -100
  98. package/components/common/vm/actions/common/select/compatibility/Old.vue +107 -107
  99. package/components/common/vm/actions/common/select/computeResource/ComputeResource.vue +134 -134
  100. package/components/common/vm/actions/common/select/computeResource/treeView/New.vue +44 -44
  101. package/components/common/vm/actions/common/select/computeResource/treeView/TreeView.vue +118 -118
  102. package/components/common/vm/actions/common/select/createType/CreateType.vue +38 -38
  103. package/components/common/vm/actions/common/select/createType/New.vue +84 -84
  104. package/components/common/vm/actions/common/select/createType/lib/models/interfaces.ts +5 -5
  105. package/components/common/vm/actions/common/select/name/Name.vue +167 -167
  106. package/components/common/vm/actions/common/select/os/New.vue +122 -122
  107. package/components/common/vm/actions/common/select/os/Old.vue +152 -152
  108. package/components/common/vm/actions/common/select/os/Os.vue +139 -139
  109. package/components/common/vm/actions/common/select/storage/Storage.vue +131 -131
  110. package/components/common/vm/actions/common/select/storage/new/lib/config/table.ts +326 -326
  111. package/components/common/vm/actions/common/select/storage/new/lib/models/interfaces.ts +5 -5
  112. package/components/common/vm/actions/common/select/storage/new/lib/utils/utils.ts +21 -21
  113. package/components/common/vm/actions/editSettings/new/Skeleton.vue +88 -88
  114. package/components/common/wizards/network/add/steps/SelectConnectionType.vue +105 -105
  115. package/components/common/wizards/vm/migrate/lib/config/constructDataReady.ts +220 -220
  116. package/components/common/wizards/vm/migrate/lib/config/steps.ts +157 -157
  117. package/components/common/wizards/vm/migrate/lib/validations.ts +68 -68
  118. package/components/common/wizards/vm/migrate/select/computeResource/tableView/TableView.vue +137 -137
  119. package/components/common/wizards/vm/migrate/select/network/Network.vue +103 -103
  120. package/components/common/wizards/vm/migrate/select/network/table/network/lib/config/advancedTable.ts +91 -91
  121. package/components/common/wizards/vm/migrate/vmOrigin/lib/models/interfaces.ts +1 -0
  122. package/composables/productNameLocal.ts +30 -30
  123. package/composables/useAppVersion.ts +21 -21
  124. package/package.json +1 -1
  125. package/plugins/date.ts +233 -233
  126. package/plugins/directives.ts +24 -24
  127. package/public/spice-console/lib/images/bitmap.js +203 -203
  128. package/public/spice-console/network/spicechannel.js +383 -383
  129. package/store/main/mutations.ts +7 -7
  130. package/store/main/state.ts +7 -7
  131. package/store/tasks/mappers/recentTasks.ts +64 -64
@@ -1,137 +1,137 @@
1
- <template>
2
- <div class="data-table-view">
3
- <atoms-table-data-grid
4
- v-model:selected-row="selectedDataLocal"
5
- v-model:column-keys="columnKeys"
6
- v-model:page-size="pagination.pageSize"
7
- v-model:page="pagination.page"
8
- :head-items="headItems"
9
- :body-items="bodyItems"
10
- :total-items="props.totalItems"
11
- :total-pages="props.totalPages"
12
- :loading="loading"
13
- class="data-table"
14
- test-id="compute-resource-table"
15
- server-off
16
- hide-page-size
17
- hide-pagination
18
- >
19
- <template #icon="{ item }">
20
- <span :class="['datagrid-cell-icon', item.data.iconClassName]" />
21
-
22
- <span class="text-ellipsis">
23
- {{ item.text }}
24
- </span>
25
- </template>
26
- <template #progress="{ item }">
27
- <div class="flex-align-center w-100">
28
- <div class="progress flex-1">
29
- <progress :max="100" :value="item.data" class="progress-block" />
30
- </div>
31
- <span :title="item.text" class="text-ellipsis ml-1">
32
- {{ item.text }}
33
- </span>
34
- </div>
35
- </template>
36
- </atoms-table-data-grid>
37
- </div>
38
- </template>
39
-
40
- <script lang="ts" setup>
41
- import type { UI_I_Localization } from '~/lib/models/interfaces'
42
- import type {
43
- UI_I_ColumnKey,
44
- UI_I_HeadItem,
45
- UI_I_BodyItem,
46
- } from '~/components/atoms/table/dataGrid/lib/models/interfaces'
47
- import type { UI_T_SelectComputeResourceTabType } from '~/components/common/wizards/vm/migrate/select/storage/lib/models/types'
48
- import type {
49
- UI_I_TablePayload,
50
- UI_I_Pagination,
51
- } from '~/lib/models/table/interfaces'
52
- import type { UI_T_ComputeResourceTableItem } from '~/components/common/wizards/vm/migrate/select/computeResource/lib/models/types'
53
- import * as hostTable from '~/components/common/wizards/vm/migrate/select/computeResource/tableView/lib/config/hostTable'
54
- import * as clusterTable from '~/components/common/wizards/vm/migrate/select/computeResource/tableView/lib/config/clusterTable'
55
- import * as resourcePoolTable from '~/components/common/wizards/vm/migrate/select/computeResource/tableView/lib/config/resourcePoolTable'
56
- import * as vAppsTable from '~/components/common/wizards/vm/migrate/select/computeResource/tableView/lib/config/vappsTable'
57
-
58
- const props = defineProps<{
59
- getComputeResourceData: (payload: UI_I_TablePayload) => Promise<void>
60
- dataTable: UI_T_ComputeResourceTableItem[]
61
- totalItems: number
62
- totalPages: number
63
- type: UI_T_SelectComputeResourceTabType
64
- }>()
65
- const selectedDataLocal = defineModel<number | null>({ required: true })
66
-
67
- const localization = computed<UI_I_Localization>(() => useLocal())
68
-
69
- const loading = ref<boolean>(false)
70
- const pagination = ref<UI_I_Pagination>({
71
- page: 1,
72
- pageSize: 100,
73
- })
74
-
75
- const table: any = {
76
- host: hostTable,
77
- cluster: clusterTable,
78
- 'resource-pool': resourcePoolTable,
79
- 'v-apps': vAppsTable,
80
- }
81
-
82
- const getData = async (
83
- type: UI_T_SelectComputeResourceTabType
84
- ): Promise<void> => {
85
- loading.value = true
86
- const payload: UI_I_TablePayload = {
87
- pagination: pagination.value,
88
- sortBy: null,
89
- schema: 'full',
90
- type,
91
- }
92
-
93
- props.getComputeResourceData(payload).then(() => {
94
- loading.value = false
95
- })
96
- }
97
- watch(
98
- () => props.type,
99
- (newValue: UI_T_SelectComputeResourceTabType) => {
100
- getData(newValue)
101
- },
102
- { deep: true, immediate: true }
103
- )
104
-
105
- const headItems = computed<UI_I_HeadItem[]>(() =>
106
- table[props.type].headItems(localization.value)
107
- )
108
- const columnKeys = computed<UI_I_ColumnKey[]>(() =>
109
- table[props.type].columnKeys(localization.value)
110
- )
111
- watch(localization, () => {
112
- columnKeys.value = table[props.type].columnKeys(localization.value)
113
- })
114
-
115
- const bodyItems = computed<UI_I_BodyItem[][]>(() => {
116
- return table[props.type].bodyItems(props.dataTable, localization.value)
117
- })
118
- </script>
119
-
120
- <style lang="scss" scoped>
121
- @import 'assets/scss/common/mixins.scss';
122
- .data-table-view {
123
- @include flex($dir: column);
124
- overflow: hidden;
125
- height: inherit;
126
- max-height: 250px;
127
- .data-table {
128
- @include flex($dir: column);
129
- flex-direction: column;
130
- overflow: hidden;
131
- height: inherit;
132
- :deep(.datagrid-outer-wrapper) {
133
- height: inherit;
134
- }
135
- }
136
- }
137
- </style>
1
+ <template>
2
+ <div class="data-table-view">
3
+ <atoms-table-data-grid
4
+ v-model:selected-row="selectedDataLocal"
5
+ v-model:column-keys="columnKeys"
6
+ v-model:page-size="pagination.pageSize"
7
+ v-model:page="pagination.page"
8
+ :head-items="headItems"
9
+ :body-items="bodyItems"
10
+ :total-items="props.totalItems"
11
+ :total-pages="props.totalPages"
12
+ :loading="loading"
13
+ class="data-table"
14
+ test-id="compute-resource-table"
15
+ server-off
16
+ hide-page-size
17
+ hide-pagination
18
+ >
19
+ <template #icon="{ item }">
20
+ <span :class="['datagrid-cell-icon', item.data.iconClassName]" />
21
+
22
+ <span class="text-ellipsis">
23
+ {{ item.text }}
24
+ </span>
25
+ </template>
26
+ <template #progress="{ item }">
27
+ <div class="flex-align-center w-100">
28
+ <div class="progress flex-1">
29
+ <progress :max="100" :value="item.data" class="progress-block" />
30
+ </div>
31
+ <span :title="item.text" class="text-ellipsis ml-1">
32
+ {{ item.text }}
33
+ </span>
34
+ </div>
35
+ </template>
36
+ </atoms-table-data-grid>
37
+ </div>
38
+ </template>
39
+
40
+ <script lang="ts" setup>
41
+ import type { UI_I_Localization } from '~/lib/models/interfaces'
42
+ import type {
43
+ UI_I_ColumnKey,
44
+ UI_I_HeadItem,
45
+ UI_I_BodyItem,
46
+ } from '~/components/atoms/table/dataGrid/lib/models/interfaces'
47
+ import type { UI_T_SelectComputeResourceTabType } from '~/components/common/wizards/vm/migrate/select/storage/lib/models/types'
48
+ import type {
49
+ UI_I_TablePayload,
50
+ UI_I_Pagination,
51
+ } from '~/lib/models/table/interfaces'
52
+ import type { UI_T_ComputeResourceTableItem } from '~/components/common/wizards/vm/migrate/select/computeResource/lib/models/types'
53
+ import * as hostTable from '~/components/common/wizards/vm/migrate/select/computeResource/tableView/lib/config/hostTable'
54
+ import * as clusterTable from '~/components/common/wizards/vm/migrate/select/computeResource/tableView/lib/config/clusterTable'
55
+ import * as resourcePoolTable from '~/components/common/wizards/vm/migrate/select/computeResource/tableView/lib/config/resourcePoolTable'
56
+ import * as vAppsTable from '~/components/common/wizards/vm/migrate/select/computeResource/tableView/lib/config/vappsTable'
57
+
58
+ const props = defineProps<{
59
+ getComputeResourceData: (payload: UI_I_TablePayload) => Promise<void>
60
+ dataTable: UI_T_ComputeResourceTableItem[]
61
+ totalItems: number
62
+ totalPages: number
63
+ type: UI_T_SelectComputeResourceTabType
64
+ }>()
65
+ const selectedDataLocal = defineModel<number | null>({ required: true })
66
+
67
+ const localization = computed<UI_I_Localization>(() => useLocal())
68
+
69
+ const loading = ref<boolean>(false)
70
+ const pagination = ref<UI_I_Pagination>({
71
+ page: 1,
72
+ pageSize: 100,
73
+ })
74
+
75
+ const table: any = {
76
+ host: hostTable,
77
+ cluster: clusterTable,
78
+ 'resource-pool': resourcePoolTable,
79
+ 'v-apps': vAppsTable,
80
+ }
81
+
82
+ const getData = async (
83
+ type: UI_T_SelectComputeResourceTabType
84
+ ): Promise<void> => {
85
+ loading.value = true
86
+ const payload: UI_I_TablePayload = {
87
+ pagination: pagination.value,
88
+ sortBy: null,
89
+ schema: 'full',
90
+ type,
91
+ }
92
+
93
+ props.getComputeResourceData(payload).then(() => {
94
+ loading.value = false
95
+ })
96
+ }
97
+ watch(
98
+ () => props.type,
99
+ (newValue: UI_T_SelectComputeResourceTabType) => {
100
+ getData(newValue)
101
+ },
102
+ { deep: true, immediate: true }
103
+ )
104
+
105
+ const headItems = computed<UI_I_HeadItem[]>(() =>
106
+ table[props.type].headItems(localization.value)
107
+ )
108
+ const columnKeys = computed<UI_I_ColumnKey[]>(() =>
109
+ table[props.type].columnKeys(localization.value)
110
+ )
111
+ watch(localization, () => {
112
+ columnKeys.value = table[props.type].columnKeys(localization.value)
113
+ })
114
+
115
+ const bodyItems = computed<UI_I_BodyItem[][]>(() => {
116
+ return table[props.type].bodyItems(props.dataTable, localization.value)
117
+ })
118
+ </script>
119
+
120
+ <style lang="scss" scoped>
121
+ @import 'assets/scss/common/mixins.scss';
122
+ .data-table-view {
123
+ @include flex($dir: column);
124
+ overflow: hidden;
125
+ height: inherit;
126
+ max-height: 250px;
127
+ .data-table {
128
+ @include flex($dir: column);
129
+ flex-direction: column;
130
+ overflow: hidden;
131
+ height: inherit;
132
+ :deep(.datagrid-outer-wrapper) {
133
+ height: inherit;
134
+ }
135
+ }
136
+ }
137
+ </style>
@@ -1,103 +1,103 @@
1
- <template>
2
- <div class="select-network">
3
- <div class="select-network__text">
4
- {{ selectNetworkHeadline }}
5
- </div>
6
-
7
- <common-wizards-vm-migrate-select-network-table-network
8
- v-model="model"
9
- :networks="dataNetwork"
10
- :source-networks="sourceNetworks"
11
- />
12
-
13
- <common-wizards-vm-common-validation-compatibility
14
- :loading="false"
15
- status="Success"
16
- text="compatibilityChecksSucceeded"
17
- />
18
- </div>
19
- </template>
20
-
21
- <script lang="ts" setup>
22
- import type { UI_I_Localization } from '~/lib/models/interfaces'
23
- import type { UI_I_NetworkTableItem } from '~/lib/models/store/network/interfaces'
24
-
25
- const model = defineModel<any>({ required: true })
26
-
27
- const props = defineProps<{
28
- vmInfo: any | null
29
- networks: any
30
- }>()
31
-
32
- const localization = computed<UI_I_Localization>(() => useLocal())
33
-
34
- const selectNetworkHeadline = computed<string>(() => {
35
- const { migrateNetworkingForAllAdapters, migrateNetworkingForEachAdapters } =
36
- localization.value.common
37
-
38
- return model.value.isBasicNetworkMode
39
- ? migrateNetworkingForAllAdapters
40
- : migrateNetworkingForEachAdapters
41
- })
42
-
43
- const sourceNetworks = computed<UI_I_NetworkTableItem[]>(() => {
44
- return props.networks?.items.map((network) => {
45
- return {
46
- id: network.id,
47
- name: network.name,
48
- net_bridge: '',
49
- }
50
- })
51
- })
52
-
53
- const dataNetwork = computed(() => {
54
- return (
55
- props.vmInfo?.network_devices?.map((network) => {
56
- const destinationNetwork =
57
- sourceNetworks.value?.map((src) => {
58
- return { text: src.name, value: src.name }
59
- }) || []
60
- return {
61
- mac: network.mac,
62
- network_adapter: network.model,
63
- source_network: network.network,
64
- value: destinationNetwork[0]?.value || '',
65
- destination_network: [
66
- ...destinationNetwork,
67
- { text: `${localization.value.common.browse}...`, value: 'browser' },
68
- ],
69
- }
70
- }) || []
71
- )
72
- })
73
- watch(
74
- dataNetwork,
75
- (newValue) => {
76
- model.value = {}
77
- const newModel = {}
78
- newValue.forEach((item: any) => {
79
- newModel[item.mac] = item.value
80
- })
81
- model.value = newModel
82
- },
83
- { deep: true }
84
- )
85
- </script>
86
-
87
- <style lang="scss" scoped>
88
- @import 'assets/scss/common/mixins';
89
- .select-network {
90
- @include flex($dir: column);
91
- height: inherit;
92
- margin-top: 10px;
93
- &__text {
94
- font-size: 12px;
95
- }
96
- &__matcher-details {
97
- margin-top: 10px;
98
- }
99
- .vm-migrate-advanced-view-button {
100
- text-align: end;
101
- }
102
- }
103
- </style>
1
+ <template>
2
+ <div class="select-network">
3
+ <div class="select-network__text">
4
+ {{ selectNetworkHeadline }}
5
+ </div>
6
+
7
+ <common-wizards-vm-migrate-select-network-table-network
8
+ v-model="model"
9
+ :networks="dataNetwork"
10
+ :source-networks="sourceNetworks"
11
+ />
12
+
13
+ <common-wizards-vm-common-validation-compatibility
14
+ :loading="false"
15
+ status="Success"
16
+ text="compatibilityChecksSucceeded"
17
+ />
18
+ </div>
19
+ </template>
20
+
21
+ <script lang="ts" setup>
22
+ import type { UI_I_Localization } from '~/lib/models/interfaces'
23
+ import type { UI_I_NetworkTableItem } from '~/lib/models/store/network/interfaces'
24
+
25
+ const model = defineModel<any>({ required: true })
26
+
27
+ const props = defineProps<{
28
+ vmInfo: any | null
29
+ networks: any
30
+ }>()
31
+
32
+ const localization = computed<UI_I_Localization>(() => useLocal())
33
+
34
+ const selectNetworkHeadline = computed<string>(() => {
35
+ const { migrateNetworkingForAllAdapters, migrateNetworkingForEachAdapters } =
36
+ localization.value.common
37
+
38
+ return model.value.isBasicNetworkMode
39
+ ? migrateNetworkingForAllAdapters
40
+ : migrateNetworkingForEachAdapters
41
+ })
42
+
43
+ const sourceNetworks = computed<UI_I_NetworkTableItem[]>(() => {
44
+ return props.networks?.items.map((network) => {
45
+ return {
46
+ id: network.id,
47
+ name: network.name,
48
+ net_bridge: '',
49
+ }
50
+ })
51
+ })
52
+
53
+ const dataNetwork = computed(() => {
54
+ return (
55
+ props.vmInfo?.network_devices?.map((network) => {
56
+ const destinationNetwork =
57
+ sourceNetworks.value?.map((src) => {
58
+ return { text: src.name, value: src.name }
59
+ }) || []
60
+ return {
61
+ mac: network.mac,
62
+ network_adapter: network.model,
63
+ source_network: network.network,
64
+ value: destinationNetwork[0]?.value || '',
65
+ destination_network: [
66
+ ...destinationNetwork,
67
+ { text: `${localization.value.common.browse}...`, value: 'browser' },
68
+ ],
69
+ }
70
+ }) || []
71
+ )
72
+ })
73
+ watch(
74
+ dataNetwork,
75
+ (newValue) => {
76
+ model.value = {}
77
+ const newModel = {}
78
+ newValue.forEach((item: any) => {
79
+ newModel[item.mac] = item.value
80
+ })
81
+ model.value = newModel
82
+ },
83
+ { deep: true }
84
+ )
85
+ </script>
86
+
87
+ <style lang="scss" scoped>
88
+ @import 'assets/scss/common/mixins';
89
+ .select-network {
90
+ @include flex($dir: column);
91
+ height: inherit;
92
+ margin-top: 10px;
93
+ &__text {
94
+ font-size: 12px;
95
+ }
96
+ &__matcher-details {
97
+ margin-top: 10px;
98
+ }
99
+ .vm-migrate-advanced-view-button {
100
+ text-align: end;
101
+ }
102
+ }
103
+ </style>
@@ -1,91 +1,91 @@
1
- import type {
2
- UI_I_HeadItem,
3
- UI_I_BodyItem,
4
- } from '~/components/atoms/table/dataGrid/lib/models/interfaces'
5
- import type { UI_I_Localization } from '~/lib/models/interfaces'
6
- import { constructHeadItem } from '~/components/atoms/table/dataGrid/lib/utils/constructDataTable'
7
- import type { UI_I_MigrateSelectNetworkAdvancedItem } from '~/components/common/wizards/vm/migrate/select/network/table/network/lib/models/interfaces'
8
- import { networkAdvancedTableItemKeys } from '~/components/common/wizards/vm/migrate/select/network/table/network/lib/config/tableKeys'
9
-
10
- const getItems = (
11
- localization: UI_I_Localization
12
- ): [string, boolean, string, string][] => {
13
- return [
14
- [
15
- localization.common.sourceNetwork,
16
- true,
17
- '25%',
18
- networkAdvancedTableItemKeys[0],
19
- ],
20
- [
21
- localization.common.macAddress,
22
- true,
23
- '25%',
24
- networkAdvancedTableItemKeys[1],
25
- ],
26
- [
27
- localization.common.networkAdapter,
28
- true,
29
- '25%',
30
- networkAdvancedTableItemKeys[2],
31
- ],
32
- [
33
- localization.common.destinationNetwork,
34
- true,
35
- '25%',
36
- networkAdvancedTableItemKeys[3],
37
- ],
38
- ]
39
- }
40
-
41
- export const headItems = (localization: UI_I_Localization): UI_I_HeadItem[] => {
42
- const result: UI_I_HeadItem[] = []
43
- getItems(localization).forEach((item, i) => {
44
- const col = i === 3 ? 'select' : `col${i}`
45
- result.push(constructHeadItem(col, item[0], item[3], false, item[2]))
46
- })
47
- return result
48
- }
49
-
50
- export const bodyItems = (
51
- data: UI_I_MigrateSelectNetworkAdvancedItem[]
52
- ): UI_I_BodyItem[][] => {
53
- const bodyItems: UI_I_BodyItem[][] = []
54
-
55
- data?.forEach(
56
- (network: UI_I_MigrateSelectNetworkAdvancedItem, key: number) => {
57
- const data = {
58
- id: `${network.source_network}-select`,
59
- sourceNetwork: network.source_network,
60
- disabled: false,
61
- value: network.destination_network[0]?.text || '',
62
- option: network.destination_network,
63
- }
64
-
65
- bodyItems.push([
66
- {
67
- key: 'col0',
68
- text: network[networkAdvancedTableItemKeys[0]],
69
- id: key,
70
- },
71
- {
72
- key: 'col1',
73
- text: network[networkAdvancedTableItemKeys[1]],
74
- id: key,
75
- },
76
- {
77
- key: 'col2',
78
- text: network[networkAdvancedTableItemKeys[2]],
79
- id: key,
80
- },
81
- {
82
- key: 'select',
83
- text: network[networkAdvancedTableItemKeys[3]],
84
- data,
85
- id: key,
86
- },
87
- ])
88
- }
89
- )
90
- return bodyItems
91
- }
1
+ import type {
2
+ UI_I_HeadItem,
3
+ UI_I_BodyItem,
4
+ } from '~/components/atoms/table/dataGrid/lib/models/interfaces'
5
+ import type { UI_I_Localization } from '~/lib/models/interfaces'
6
+ import { constructHeadItem } from '~/components/atoms/table/dataGrid/lib/utils/constructDataTable'
7
+ import type { UI_I_MigrateSelectNetworkAdvancedItem } from '~/components/common/wizards/vm/migrate/select/network/table/network/lib/models/interfaces'
8
+ import { networkAdvancedTableItemKeys } from '~/components/common/wizards/vm/migrate/select/network/table/network/lib/config/tableKeys'
9
+
10
+ const getItems = (
11
+ localization: UI_I_Localization
12
+ ): [string, boolean, string, string][] => {
13
+ return [
14
+ [
15
+ localization.common.sourceNetwork,
16
+ true,
17
+ '25%',
18
+ networkAdvancedTableItemKeys[0],
19
+ ],
20
+ [
21
+ localization.common.macAddress,
22
+ true,
23
+ '25%',
24
+ networkAdvancedTableItemKeys[1],
25
+ ],
26
+ [
27
+ localization.common.networkAdapter,
28
+ true,
29
+ '25%',
30
+ networkAdvancedTableItemKeys[2],
31
+ ],
32
+ [
33
+ localization.common.destinationNetwork,
34
+ true,
35
+ '25%',
36
+ networkAdvancedTableItemKeys[3],
37
+ ],
38
+ ]
39
+ }
40
+
41
+ export const headItems = (localization: UI_I_Localization): UI_I_HeadItem[] => {
42
+ const result: UI_I_HeadItem[] = []
43
+ getItems(localization).forEach((item, i) => {
44
+ const col = i === 3 ? 'select' : `col${i}`
45
+ result.push(constructHeadItem(col, item[0], item[3], false, item[2]))
46
+ })
47
+ return result
48
+ }
49
+
50
+ export const bodyItems = (
51
+ data: UI_I_MigrateSelectNetworkAdvancedItem[]
52
+ ): UI_I_BodyItem[][] => {
53
+ const bodyItems: UI_I_BodyItem[][] = []
54
+
55
+ data?.forEach(
56
+ (network: UI_I_MigrateSelectNetworkAdvancedItem, key: number) => {
57
+ const data = {
58
+ id: `${network.source_network}-select`,
59
+ sourceNetwork: network.source_network,
60
+ disabled: false,
61
+ value: network.destination_network[0]?.text || '',
62
+ option: network.destination_network,
63
+ }
64
+
65
+ bodyItems.push([
66
+ {
67
+ key: 'col0',
68
+ text: network[networkAdvancedTableItemKeys[0]],
69
+ id: key,
70
+ },
71
+ {
72
+ key: 'col1',
73
+ text: network[networkAdvancedTableItemKeys[1]],
74
+ id: key,
75
+ },
76
+ {
77
+ key: 'col2',
78
+ text: network[networkAdvancedTableItemKeys[2]],
79
+ id: key,
80
+ },
81
+ {
82
+ key: 'select',
83
+ text: network[networkAdvancedTableItemKeys[3]],
84
+ data,
85
+ id: key,
86
+ },
87
+ ])
88
+ }
89
+ )
90
+ return bodyItems
91
+ }
@@ -1,6 +1,7 @@
1
1
  export interface API_UI_I_VmOriginItem {
2
2
  name: string
3
3
  state: number
4
+ id?: string
4
5
  }
5
6
  export interface UI_I_VmOriginItem extends API_UI_I_VmOriginItem {}
6
7
  export interface API_UI_I_VmOrigin {