bfg-common 1.5.19 → 1.5.21

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 (229) hide show
  1. package/CODE_STYLE.md +109 -109
  2. package/assets/img/icons/icons-sprite-dark-3.svg +227 -227
  3. package/assets/img/icons/icons-sprite-dark-5.svg +488 -488
  4. package/assets/img/icons/icons-sprite-light-3.svg +227 -227
  5. package/assets/img/icons/icons-sprite-light-5.svg +488 -488
  6. package/assets/scss/common/normalize.scss +339 -361
  7. package/assets/scss/common/utilities.scss +1 -1
  8. package/components/atoms/TheIcon3.vue +50 -50
  9. package/components/atoms/autocomplete/Autocomplete.vue +3 -3
  10. package/components/atoms/collapse/CollapseNav.vue +165 -165
  11. package/components/atoms/combobox/Combobox.vue +1 -1
  12. package/components/atoms/datepicker/Datepicker.vue +1 -1
  13. package/components/atoms/dropdown/dropdown/Dropdown.vue +168 -168
  14. package/components/atoms/list/dragDropList/DragDropList.vue +1 -1
  15. package/components/atoms/loader/Loader.vue +1 -1
  16. package/components/atoms/loader/PreLoader.vue +1 -1
  17. package/components/atoms/modal/Modal.vue +2 -2
  18. package/components/atoms/modal/bySteps/BySteps.vue +253 -253
  19. package/components/atoms/modal/byStepsSecond/ByStepsSecond.vue +1 -1
  20. package/components/atoms/perPage/PerPage.vue +58 -58
  21. package/components/atoms/popover/Popover.vue +1 -1
  22. package/components/atoms/popup/SimplePopup.vue +1 -1
  23. package/components/atoms/select/TheSelect.vue +1 -1
  24. package/components/atoms/stack/StackBlock.vue +185 -185
  25. package/components/atoms/table/compact/Compact.vue +5 -5
  26. package/components/atoms/table/dataGrid/DataGrid.vue +4 -4
  27. package/components/atoms/table/dataGrid/DataGridColumnSwitch.vue +222 -222
  28. package/components/atoms/table/dataGrid/lib/config/settingsTable.ts +94 -94
  29. package/components/atoms/table/dataGrid/lib/utils/export.ts +16 -16
  30. package/components/atoms/tabs/VerticalTabs.vue +105 -105
  31. package/components/atoms/tooltip/Signpost.vue +1 -1
  32. package/components/atoms/tooltip/Text.vue +1 -1
  33. package/components/atoms/tooltip/Tooltip.vue +1 -1
  34. package/components/atoms/tooltip/TooltipError.vue +1 -1
  35. package/components/atoms/wizard/Wizard.vue +2 -2
  36. package/components/common/accordion/Accordion.vue +1 -1
  37. package/components/common/accordion/Recursion.vue +222 -222
  38. package/components/common/adapterManager/AddAdapterModal.vue +1 -1
  39. package/components/common/browse/BrowseNew.vue +237 -237
  40. package/components/common/browse/BrowseOld.vue +217 -217
  41. package/components/common/browse/blocks/Container.vue +1 -1
  42. package/components/common/browse/blocks/contents/Files.vue +37 -37
  43. package/components/common/browse/blocks/contents/FilesOld.vue +72 -72
  44. package/components/common/browse/blocks/contents/filesNew/FilesNew.vue +96 -96
  45. package/components/common/browse/blocks/contents/filesNew/Skeleton.vue +18 -18
  46. package/components/common/browse/blocks/lib/models/types.ts +1 -1
  47. package/components/common/browse/lib/models/interfaces.ts +5 -5
  48. package/components/common/chartOptionsModal/counters/timespan/form/Form.vue +97 -97
  49. package/components/common/chartOptionsModal/counters/timespan/form/Form.vue~ +281 -0
  50. package/components/common/context/Context.vue +111 -111
  51. package/components/common/context/lib/models/interfaces.ts +31 -31
  52. package/components/common/context/recursion/Recursion.vue +87 -87
  53. package/components/common/context/recursion/RecursionNew.vue +238 -238
  54. package/components/common/context/recursion/RecursionOld.vue +228 -228
  55. package/components/common/details/DetailsItem.vue +109 -109
  56. package/components/common/diagramMain/DiagramMain.vue +897 -897
  57. package/components/common/diagramMain/Header.vue +214 -214
  58. package/components/common/diagramMain/adapter/AdapterItems.vue +61 -61
  59. package/components/common/diagramMain/lib/config/initial.ts +50 -50
  60. package/components/common/diagramMain/lib/models/types.ts +21 -21
  61. package/components/common/diagramMain/lib/utils/utils.ts +331 -331
  62. package/components/common/diagramMain/modals/ManagePhysicalAdaptersModal.vue +330 -330
  63. package/components/common/diagramMain/modals/editSettings/ConfirmTeamingSettingsModal.vue +40 -40
  64. package/components/common/diagramMain/modals/editSettings/EditSettings.vue +497 -497
  65. package/components/common/diagramMain/modals/editSettings/EditSettingsModal.vue +812 -812
  66. package/components/common/diagramMain/modals/editSettings/tabs/NetworkProperties.vue +214 -214
  67. package/components/common/diagramMain/modals/editSettings/tabs/Security.vue +189 -189
  68. package/components/common/diagramMain/modals/editSettings/tabs/SwitchProperties.vue +163 -163
  69. package/components/common/diagramMain/modals/editSettings/tabs/TeamingFailover.vue +175 -175
  70. package/components/common/diagramMain/modals/editSettings/tabs/port/IpvFourSettings.vue +346 -346
  71. package/components/common/diagramMain/modals/editSettings/tabs/port/PortProperties.vue +205 -205
  72. package/components/common/diagramMain/modals/lib/config/initial.ts +180 -180
  73. package/components/common/diagramMain/modals/lib/config/vmKernelAdapter.ts +90 -90
  74. package/components/common/diagramMain/modals/lib/mappers/mappers.ts +87 -87
  75. package/components/common/diagramMain/modals/lib/utils/index.ts +24 -24
  76. package/components/common/diagramMain/modals/migrateVmkernelAdapter/lib/config/steps.ts +114 -114
  77. package/components/common/diagramMain/modals/migrateVmkernelAdapter/steps/ConnectionSettings.vue +169 -169
  78. package/components/common/diagramMain/modals/migrateVmkernelAdapter/steps/SelectVmkernelAdapter.vue +159 -159
  79. package/components/common/diagramMain/modals/migrateVmkernelAdapter/validations/common.ts +14 -14
  80. package/components/common/diagramMain/modals/migrateVmkernelAdapter/validations/connectionSettings.ts +137 -137
  81. package/components/common/diagramMain/modals/migrateVmkernelAdapter/validations/selectVmkernelAdapter.ts +52 -52
  82. package/components/common/diagramMain/modals/migrateVmkernelAdapter/validations/validations.ts +19 -19
  83. package/components/common/diagramMain/modals/remove/RemoveModalOld.vue +1 -1
  84. package/components/common/diagramMain/port/Ports.vue +47 -47
  85. package/components/common/feedback/Buttons.vue +1 -1
  86. package/components/common/feedback/Feedback.vue +1 -1
  87. package/components/common/feedback/Message.vue +3 -3
  88. package/components/common/graph/Graph.vue +104 -104
  89. package/components/common/help/navbar/left/Left.vue +1 -1
  90. package/components/common/layout/theHeader/TheHeaderNew.vue +1 -1
  91. package/components/common/layout/theHeader/TheHeaderOld.vue +1 -1
  92. package/components/common/layout/theHeader/helpMenu/About.vue +82 -82
  93. package/components/common/layout/theHeader/helpMenu/aboutNew/AboutNew.vue +103 -103
  94. package/components/common/layout/theHeader/userMenu/modals/preferences/view/ViewOld.vue +112 -112
  95. package/components/common/mainNavigationPanel/MainNavigationPanelNew.vue +336 -336
  96. package/components/common/mainNavigationPanel/MainNavigationPanelOld.vue +311 -311
  97. package/components/common/modals/unsavedChanges/UnsavedChanges.vue +56 -56
  98. package/components/common/monitor/advanced/graphView/GraphViewOld.vue +1 -1
  99. package/components/common/monitor/advanced/tools/chartOptionsModal/counters/CountersNew.vue +1 -1
  100. package/components/common/monitor/overview/OverviewOld.vue +139 -139
  101. package/components/common/monitor/resourceAllocation/resourceAllocation.vue +1 -1
  102. package/components/common/pages/home/StatusContent.vue +49 -49
  103. package/components/common/pages/home/headline/Headline.vue +45 -45
  104. package/components/common/pages/home/headline/HeadlineOld.vue +42 -42
  105. package/components/common/pages/home/lib/models/interfaces.ts +48 -48
  106. package/components/common/pages/home/widgets/Widgets.vue +49 -49
  107. package/components/common/pages/home/widgets/WidgetsNew.vue +86 -86
  108. package/components/common/pages/home/widgets/WidgetsOld.vue +34 -34
  109. package/components/common/pages/home/widgets/hosts/Hosts.vue +27 -27
  110. package/components/common/pages/home/widgets/hosts/lib/config/items.ts +23 -23
  111. package/components/common/pages/home/widgets/vms/Vms.vue +26 -26
  112. package/components/common/pages/home/widgets/vms/VmsOld.vue +35 -35
  113. package/components/common/pages/home/widgets/vms/lib/config/items.ts +19 -19
  114. package/components/common/pages/packages/Packages.vue +208 -208
  115. package/components/common/pages/shortcuts/block/BlockNew.vue +96 -96
  116. package/components/common/pages/shortcuts/block/BlockOld.vue +68 -68
  117. package/components/common/pages/tasks/Tasks.vue +1 -1
  118. package/components/common/portlets/customAttributes/Portlet.vue +667 -667
  119. package/components/common/portlets/tag/Portlet.vue +433 -433
  120. package/components/common/recursionTree/RecursionTree.vue +223 -223
  121. package/components/common/select/button/ButtonDropdown.vue +108 -108
  122. package/components/common/spiceConsole/Drawer.vue +370 -370
  123. package/components/common/spiceConsole/lib/models/interfaces.ts +5 -5
  124. package/components/common/split/horizontal/HorizontalNew.vue +376 -376
  125. package/components/common/split/horizontal/HorizontalOld.vue +337 -337
  126. package/components/common/split/vertical/Vertical.vue +160 -160
  127. package/components/common/split/vertical/VerticalNew.vue +2 -2
  128. package/components/common/split/vertical/VerticalOld.vue +1 -1
  129. package/components/common/tools/Actions.vue +188 -188
  130. package/components/common/vm/actions/add/Add.vue +622 -622
  131. package/components/common/vm/actions/clone/Clone.vue +639 -639
  132. package/components/common/vm/actions/clone/lib/config/steps.ts +129 -129
  133. package/components/common/vm/actions/clone/toTemplate/ToTemplate.vue +634 -634
  134. package/components/common/vm/actions/clone/toTemplate/lib/config/steps.ts +116 -116
  135. package/components/common/vm/actions/common/customizeHardware/CustomizeHardware.vue +275 -275
  136. package/components/common/vm/actions/common/customizeHardware/CustomizeHardwareNew.vue +274 -274
  137. package/components/common/vm/actions/common/customizeHardware/CustomizeHardwareOld.vue +177 -177
  138. package/components/common/vm/actions/common/customizeHardware/virtualHardware/VirtualHardware.vue +698 -698
  139. package/components/common/vm/actions/common/customizeHardware/virtualHardware/VirtualHardwareNew.vue +410 -410
  140. package/components/common/vm/actions/common/customizeHardware/virtualHardware/VirtualHardwareOld.vue +319 -319
  141. package/components/common/vm/actions/common/customizeHardware/virtualHardware/browseView/BrowseView.vue +219 -219
  142. package/components/common/vm/actions/common/customizeHardware/virtualHardware/bus/Bus.vue +99 -99
  143. package/components/common/vm/actions/common/customizeHardware/virtualHardware/bus/BusNew.vue +117 -117
  144. package/components/common/vm/actions/common/customizeHardware/virtualHardware/cdDvdDrive/CdDvdDrive.vue +232 -232
  145. package/components/common/vm/actions/common/customizeHardware/virtualHardware/cdDvdDrive/CdDvdDriveNew.vue +164 -164
  146. package/components/common/vm/actions/common/customizeHardware/virtualHardware/cdDvdDrive/CdDvdDriveOld.vue +168 -168
  147. package/components/common/vm/actions/common/customizeHardware/virtualHardware/cdDvdDrive/media/Media.vue +25 -25
  148. package/components/common/vm/actions/common/customizeHardware/virtualHardware/cdDvdDrive/media/MediaNew.vue +70 -70
  149. package/components/common/vm/actions/common/customizeHardware/virtualHardware/cdDvdDrive/media/MediaOld.vue +50 -50
  150. package/components/common/vm/actions/common/customizeHardware/virtualHardware/cpu/Cpu.vue +338 -338
  151. package/components/common/vm/actions/common/customizeHardware/virtualHardware/limit/Limit.vue +220 -220
  152. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newHardDisk/NewHardDisk.vue +368 -368
  153. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newHardDisk/NewHardDiskNew.vue +232 -232
  154. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newHardDisk/NewHardDiskOld.vue +250 -250
  155. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newHardDisk/mode/ModeOld.vue +56 -56
  156. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newHardDisk/sharing/SharingNew.vue +44 -44
  157. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newNetwork/NewNetwork.vue +286 -286
  158. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newNetwork/NewNetworkNew.vue +124 -124
  159. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newNetwork/location/LocationOld.vue +134 -134
  160. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newNetwork/location/new/New.vue +63 -63
  161. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newNetwork/location/new/table/lib/config/config.ts +95 -95
  162. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newNetwork/macAddress/MacAddress.vue +119 -119
  163. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newNetwork/macAddress/MacAddressNew.vue +69 -69
  164. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newNetwork/macAddress/MacAddressOld.vue +83 -83
  165. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newPciDevice/NewPciDevice.vue +205 -205
  166. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newPciDevice/directPathIo/DirectPathIoNew.vue +66 -66
  167. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newPciDevice/directPathIo/DirectPathIoOld.vue +62 -62
  168. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newPciDevice/dynamicDirectPathIo/DynamicDirectPathIo.vue +31 -31
  169. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newPciDevice/dynamicDirectPathIo/DynamicDirectPathIoNew.vue +84 -84
  170. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newPciDevice/dynamicDirectPathIo/DynamicDirectPathIoOld.vue +76 -76
  171. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newPciDevice/note/Note.vue +15 -15
  172. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newPciDevice/note/NoteNew.vue +42 -42
  173. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newPciDevice/note/NoteOld.vue +30 -30
  174. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newPciDevice/nvidiaGrid/NvidiaGrid.vue +41 -41
  175. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newPciDevice/nvidiaGrid/NvidiaGridNew.vue +81 -81
  176. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newPciDevice/nvidiaGrid/NvidiaGridOld.vue +84 -84
  177. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newUsbController/NewUsbControllerNew.vue +56 -56
  178. package/components/common/vm/actions/common/customizeHardware/virtualHardware/other/Other.vue +16 -16
  179. package/components/common/vm/actions/common/customizeHardware/virtualHardware/other/OtherNew.vue +30 -30
  180. package/components/common/vm/actions/common/customizeHardware/virtualHardware/videoCard/VideoCardNew.vue +104 -104
  181. package/components/common/vm/actions/common/customizeHardware/virtualHardware/videoCard/VideoCardOld.vue +112 -112
  182. package/components/common/vm/actions/common/customizeHardware/virtualHardware/videoCard/totalVideoMemory/TotalVideoMemoryNew.vue +54 -54
  183. package/components/common/vm/actions/common/customizeHardware/vmoptions/Vmoptions.vue +145 -145
  184. package/components/common/vm/actions/common/customizeHardware/vmoptions/VmoptionsNew.vue +102 -102
  185. package/components/common/vm/actions/common/customizeHardware/vmoptions/bootOptions/BootOptionsNew.vue +75 -75
  186. package/components/common/vm/actions/common/customizeHardware/vmoptions/bootOptions/delay/Delay.vue +26 -26
  187. package/components/common/vm/actions/common/customizeHardware/vmoptions/bootOptions/firmware/Firmware.vue +57 -57
  188. package/components/common/vm/actions/common/customizeHardware/vmoptions/bootOptions/firmware/FirmwareNew.vue +42 -42
  189. package/components/common/vm/actions/common/customizeHardware/vmoptions/bootOptions/menu/MenuNew.vue +25 -25
  190. package/components/common/vm/actions/common/customizeHardware/vmoptions/bootOptions/order/Order.vue +171 -171
  191. package/components/common/vm/actions/common/customizeHardware/vmoptions/bootOptions/order/OrderNew.vue +50 -50
  192. package/components/common/vm/actions/common/customizeHardware/vmoptions/generalOptions/GeneralOptionsNew.vue +141 -141
  193. package/components/common/vm/actions/common/customizeHardware/vmoptions/remoteConsoleOptions/New.vue +140 -140
  194. package/components/common/vm/actions/common/customizeHardware/vmoptions/remoteConsoleOptions/copyPaste/CopyPasteNew.vue +30 -30
  195. package/components/common/vm/actions/common/customizeHardware/vmoptions/remoteConsoleOptions/fileTransfer/FileTransferNew.vue +30 -30
  196. package/components/common/vm/actions/common/customizeHardware/vmoptions/remoteConsoleOptions/folderSharing/FolderSharingNew.vue +30 -30
  197. package/components/common/vm/actions/common/customizeHardware/vmoptions/remoteConsoleOptions/keymap/Keymap.vue +32 -32
  198. package/components/common/vm/actions/common/customizeHardware/vmoptions/remoteConsoleOptions/keymap/KeymapNew.vue +39 -39
  199. package/components/common/vm/actions/common/customizeHardware/vmoptions/remoteConsoleOptions/password/Password.vue +103 -103
  200. package/components/common/vm/actions/common/customizeHardware/vmoptions/remoteConsoleOptions/password/PasswordNew.vue +102 -102
  201. package/components/common/vm/actions/common/customizeHardware/vmoptions/remoteConsoleOptions/password/PasswordOld.vue +94 -94
  202. package/components/common/vm/actions/common/customizeHardware/vmoptions/remoteConsoleOptions/usbRedirection/UsbRedirection.vue +28 -28
  203. package/components/common/vm/actions/common/customizeHardware/vmoptions/remoteConsoleOptions/usbRedirection/UsbRedirectionNew.vue +38 -38
  204. package/components/common/vm/actions/common/customizeHardware/vmoptions/remoteConsoleOptions/usbRedirection/UsbRedirectionOld.vue +44 -44
  205. package/components/common/vm/actions/common/select/storage/Storage.vue +130 -130
  206. package/components/common/vm/actions/common/select/storage/StorageOld.vue +129 -129
  207. package/components/common/vm/actions/editSettings/new/Skeleton.vue +88 -88
  208. package/components/common/wizards/datastore/add/lib/config/steps.ts +138 -138
  209. package/components/common/wizards/datastore/add/nfs/accessibility/Accessibility.vue +60 -60
  210. package/components/common/wizards/datastore/add/nfs/configuration/_serversList/DeletePopover.vue +1 -1
  211. package/components/common/wizards/datastore/add/readyComplete/ReadyComplete.vue +92 -92
  212. package/components/common/wizards/datastore/add/sharedStorm/partitionConfiguration/graphicTooltip/graphicTooltip.vue +1 -1
  213. package/components/common/wizards/network/add/steps/SelectConnectionType.vue +105 -105
  214. package/components/common/wizards/vm/migrate/Migrate.vue +302 -302
  215. package/components/common/wizards/vm/migrate/lib/config/constructDataReady.ts +220 -220
  216. package/components/common/wizards/vm/migrate/select/network/Network.vue +103 -103
  217. package/components/common/wizards/vm/migrate/select/network/table/network/Network.vue +150 -150
  218. package/components/common/wizards/vm/migrate/select/network/table/network/lib/config/advancedTable.ts +91 -91
  219. package/components/common/wizards/vm/migrate/select/priority/Priority.vue +43 -43
  220. package/composables/productNameLocal.ts +30 -30
  221. package/composables/useAppVersion.ts +21 -21
  222. package/package.json +2 -2
  223. package/plugins/date.ts +233 -233
  224. package/plugins/directives.ts +24 -24
  225. package/public/spice-console/lib/images/bitmap.js +203 -203
  226. package/public/spice-console/network/spicechannel.js +383 -383
  227. package/store/main/mutations.ts +7 -7
  228. package/store/main/state.ts +7 -7
  229. package/store/tasks/mappers/recentTasks.ts +64 -64
@@ -1,220 +1,220 @@
1
- import type { UI_I_Localization } from '~/lib/models/interfaces'
2
- import type { UI_I_MigrateReadyBlockData } from '~/components/common/wizards/vm/migrate/lib/models/interfaces'
3
- import type { UI_I_MigrateFormLocal } from '~/components/common/wizards/vm/migrate/lib/models/interfaces'
4
- import {
5
- UI_E_VmMigrationStrategy,
6
- UI_E_VmMigrationType,
7
- } from '~/components/common/wizards/vm/migrate/lib/models/enums'
8
- import { UI_E_SelectStorageDiskFormat } from '~/components/common/wizards/vm/migrate/select/storage/lib/models/enums'
9
- import { virtualDiskFormatOptionsFunc } from '~/components/common/wizards/vm/migrate/select/storage/configure/batch/config/virtualDiskFormat'
10
- const migrateOnlyStorageDataView = (
11
- localization: UI_I_Localization,
12
- form: UI_I_MigrateFormLocal,
13
- vmName: string
14
- ): UI_I_MigrateReadyBlockData[] => {
15
- const { disk_format, configure, storage } = form
16
-
17
- const isActivePerDiskTab: boolean = configure.type === 'configure-disk'
18
-
19
- const diskFormat = virtualDiskFormatOptionsFunc().find(
20
- (file) => file.value === disk_format
21
- )!
22
-
23
- let storageResult: UI_I_MigrateReadyBlockData[] = [
24
- {
25
- label: localization.common.storage,
26
- value: storage?.name,
27
- permissions: ['batch-configure'],
28
- },
29
- {
30
- label: localization.common.diskFormat,
31
- value: diskFormat.label,
32
- permissions: ['batch-configure'],
33
- },
34
- {
35
- label: vmName,
36
- value: '',
37
- permissions: ['configure-disk'],
38
- },
39
- ]
40
-
41
- if (isActivePerDiskTab && configure.disks) {
42
- const perDiskItems: UI_I_MigrateReadyBlockData[] = configure.disks.map(
43
- (disk) => {
44
- const isConfigurationFile = disk.file === 'Configuration file'
45
- const diskFormat = UI_E_SelectStorageDiskFormat[disk.disk_format]
46
-
47
- const text = isConfigurationFile
48
- ? disk.storage
49
- : `${disk.storage} (${diskFormat})`
50
-
51
- return {
52
- label: disk.file,
53
- value: text,
54
- permissions: ['configure-disk'],
55
- isProperty: true,
56
- }
57
- }
58
- )
59
- storageResult = [...storageResult, ...perDiskItems]
60
- }
61
-
62
- return storageResult.filter(
63
- (option) =>
64
- !option.permissions.length || option.permissions.includes(configure.type)
65
- )
66
- }
67
-
68
- const setSelectNetworkDataView = (
69
- _localization: UI_I_Localization,
70
- from: UI_I_MigrateFormLocal
71
- ): string => {
72
- const result = []
73
- for (const key in from.network) {
74
- result.push(`${key}: ${from.network[key]}`)
75
- }
76
- return result.join(', ')
77
- // const {
78
- // noNetworkReassignments,
79
- // // networkAdapterReassignedNewDestination,
80
- // networkAdapterWillBeReassignedTo,
81
- // } = localization.common
82
- //
83
- // const { data } = from.network
84
- // const { sourceNetwork, value } = data
85
- //
86
- // if (sourceNetwork === value) {
87
- // return noNetworkReassignments
88
- // }
89
- //
90
- // type Replacements = {
91
- // lan: string
92
- // network: string
93
- // }
94
- //
95
- // const replacements: Replacements = {
96
- // lan: sourceNetwork,
97
- // network: value,
98
- // }
99
- // return networkAdapterWillBeReassignedTo.replace(
100
- // /{(\w+)}/g,
101
- // (_, key: keyof Replacements) => replacements[key]
102
- // )
103
-
104
- // return networkAdapterReassignedNewDestination.replace('{number}', '1')
105
- }
106
-
107
- const storageDetailsFunc = (
108
- localization: UI_I_Localization,
109
- name: string,
110
- form: UI_I_MigrateFormLocal
111
- ): UI_I_MigrateReadyBlockData[] => {
112
- const { migrate_type, vMotion_priority, resource } = form
113
-
114
- const migrationType = localization.common[UI_E_VmMigrationType[migrate_type]]
115
-
116
- let result: UI_I_MigrateReadyBlockData[] = [
117
- {
118
- label: localization.common.migrationType,
119
- value: migrationType,
120
- permissions: ['batch-configure', 'configure-disk'],
121
- },
122
- {
123
- label: localization.common.virtualMachine,
124
- value: name,
125
- permissions: ['batch-configure', 'configure-disk'],
126
- },
127
- ]
128
-
129
- if (migrate_type === 'resource') {
130
- const resourceResult = [
131
- {
132
- label: localization.common.networks,
133
- value: setSelectNetworkDataView(localization, form),
134
- permissions: [],
135
- },
136
- {
137
- label: localization.migrateVm.migrationStrategy,
138
- value:
139
- localization.migrateVm[UI_E_VmMigrationStrategy[vMotion_priority]],
140
- permissions: [],
141
- },
142
- ]
143
- Object.entries(resource).forEach(([key, value]) => {
144
- if (value !== null) {
145
- resourceResult.unshift({
146
- label: localization.common[key],
147
- value: value.name,
148
- permissions: [],
149
- })
150
- }
151
- })
152
- result = [...result, ...resourceResult]
153
- }
154
-
155
- if (migrate_type === 'storage') {
156
- const storageData = migrateOnlyStorageDataView(localization, form, name)
157
- result = [...result, ...storageData]
158
- }
159
-
160
- if (migrate_type === 'resource-storage') {
161
- const resourceStorageResult = [
162
- {
163
- label: localization.common.host,
164
- value: '', //selectedComputeResource.selectedNode.name,
165
- permissions: [],
166
- },
167
- {
168
- label: localization.migrateVm.migrationStrategy,
169
- value: localization.migrateVm[UI_E_VmMigrationStrategy[vMotion_priority]],
170
- permissions: [],
171
- },
172
- {
173
- label: localization.common.networks,
174
- value: setSelectNetworkDataView(localization, form),
175
- permissions: [],
176
- },
177
- ]
178
- const storageResult = migrateOnlyStorageDataView(localization, form, name)
179
-
180
- result = [...result, ...resourceStorageResult, ...storageResult]
181
- }
182
-
183
- if (migrate_type === 'server') {
184
- const serverResult = [
185
- {
186
- label: localization.migrateVm.migrationStrategy,
187
- value: localization.migrateVm[UI_E_VmMigrationStrategy[vMotion_priority]],
188
- permissions: [],
189
- },
190
- {
191
- label: localization.common.networks,
192
- value: setSelectNetworkDataView(localization, form),
193
- permissions: [],
194
- },
195
- ]
196
- Object.entries(resource).forEach(([key, value]) => {
197
- if (value !== null) {
198
- serverResult.unshift({
199
- label: localization.common[key],
200
- value: value.name,
201
- permissions: [],
202
- })
203
- }
204
- })
205
-
206
- const storageResult = migrateOnlyStorageDataView(localization, form, name)
207
-
208
- result = [...result, ...serverResult, ...storageResult]
209
- }
210
-
211
- return result
212
- }
213
- export const constructDataReadyViewFunc = (
214
- name: string,
215
- data: UI_I_MigrateFormLocal
216
- ): UI_I_MigrateReadyBlockData[] => {
217
- const localization: UI_I_Localization = useLocal()
218
-
219
- return storageDetailsFunc(localization, name, data)
220
- }
1
+ import type { UI_I_Localization } from '~/lib/models/interfaces'
2
+ import type { UI_I_MigrateReadyBlockData } from '~/components/common/wizards/vm/migrate/lib/models/interfaces'
3
+ import type { UI_I_MigrateFormLocal } from '~/components/common/wizards/vm/migrate/lib/models/interfaces'
4
+ import {
5
+ UI_E_VmMigrationStrategy,
6
+ UI_E_VmMigrationType,
7
+ } from '~/components/common/wizards/vm/migrate/lib/models/enums'
8
+ import { UI_E_SelectStorageDiskFormat } from '~/components/common/wizards/vm/migrate/select/storage/lib/models/enums'
9
+ import { virtualDiskFormatOptionsFunc } from '~/components/common/wizards/vm/migrate/select/storage/configure/batch/config/virtualDiskFormat'
10
+ const migrateOnlyStorageDataView = (
11
+ localization: UI_I_Localization,
12
+ form: UI_I_MigrateFormLocal,
13
+ vmName: string
14
+ ): UI_I_MigrateReadyBlockData[] => {
15
+ const { disk_format, configure, storage } = form
16
+
17
+ const isActivePerDiskTab: boolean = configure.type === 'configure-disk'
18
+
19
+ const diskFormat = virtualDiskFormatOptionsFunc().find(
20
+ (file) => file.value === disk_format
21
+ )!
22
+
23
+ let storageResult: UI_I_MigrateReadyBlockData[] = [
24
+ {
25
+ label: localization.common.storage,
26
+ value: storage?.name,
27
+ permissions: ['batch-configure'],
28
+ },
29
+ {
30
+ label: localization.common.diskFormat,
31
+ value: diskFormat.label,
32
+ permissions: ['batch-configure'],
33
+ },
34
+ {
35
+ label: vmName,
36
+ value: '',
37
+ permissions: ['configure-disk'],
38
+ },
39
+ ]
40
+
41
+ if (isActivePerDiskTab && configure.disks) {
42
+ const perDiskItems: UI_I_MigrateReadyBlockData[] = configure.disks.map(
43
+ (disk) => {
44
+ const isConfigurationFile = disk.file === 'Configuration file'
45
+ const diskFormat = UI_E_SelectStorageDiskFormat[disk.disk_format]
46
+
47
+ const text = isConfigurationFile
48
+ ? disk.storage
49
+ : `${disk.storage} (${diskFormat})`
50
+
51
+ return {
52
+ label: disk.file,
53
+ value: text,
54
+ permissions: ['configure-disk'],
55
+ isProperty: true,
56
+ }
57
+ }
58
+ )
59
+ storageResult = [...storageResult, ...perDiskItems]
60
+ }
61
+
62
+ return storageResult.filter(
63
+ (option) =>
64
+ !option.permissions.length || option.permissions.includes(configure.type)
65
+ )
66
+ }
67
+
68
+ const setSelectNetworkDataView = (
69
+ _localization: UI_I_Localization,
70
+ from: UI_I_MigrateFormLocal
71
+ ): string => {
72
+ const result = []
73
+ for (const key in from.network) {
74
+ result.push(`${key}: ${from.network[key]}`)
75
+ }
76
+ return result.join(', ')
77
+ // const {
78
+ // noNetworkReassignments,
79
+ // // networkAdapterReassignedNewDestination,
80
+ // networkAdapterWillBeReassignedTo,
81
+ // } = localization.common
82
+ //
83
+ // const { data } = from.network
84
+ // const { sourceNetwork, value } = data
85
+ //
86
+ // if (sourceNetwork === value) {
87
+ // return noNetworkReassignments
88
+ // }
89
+ //
90
+ // type Replacements = {
91
+ // lan: string
92
+ // network: string
93
+ // }
94
+ //
95
+ // const replacements: Replacements = {
96
+ // lan: sourceNetwork,
97
+ // network: value,
98
+ // }
99
+ // return networkAdapterWillBeReassignedTo.replace(
100
+ // /{(\w+)}/g,
101
+ // (_, key: keyof Replacements) => replacements[key]
102
+ // )
103
+
104
+ // return networkAdapterReassignedNewDestination.replace('{number}', '1')
105
+ }
106
+
107
+ const storageDetailsFunc = (
108
+ localization: UI_I_Localization,
109
+ name: string,
110
+ form: UI_I_MigrateFormLocal
111
+ ): UI_I_MigrateReadyBlockData[] => {
112
+ const { migrate_type, vMotion_priority, resource } = form
113
+
114
+ const migrationType = localization.common[UI_E_VmMigrationType[migrate_type]]
115
+
116
+ let result: UI_I_MigrateReadyBlockData[] = [
117
+ {
118
+ label: localization.common.migrationType,
119
+ value: migrationType,
120
+ permissions: ['batch-configure', 'configure-disk'],
121
+ },
122
+ {
123
+ label: localization.common.virtualMachine,
124
+ value: name,
125
+ permissions: ['batch-configure', 'configure-disk'],
126
+ },
127
+ ]
128
+
129
+ if (migrate_type === 'resource') {
130
+ const resourceResult = [
131
+ {
132
+ label: localization.common.networks,
133
+ value: setSelectNetworkDataView(localization, form),
134
+ permissions: [],
135
+ },
136
+ {
137
+ label: localization.migrateVm.migrationStrategy,
138
+ value:
139
+ localization.migrateVm[UI_E_VmMigrationStrategy[vMotion_priority]],
140
+ permissions: [],
141
+ },
142
+ ]
143
+ Object.entries(resource).forEach(([key, value]) => {
144
+ if (value !== null) {
145
+ resourceResult.unshift({
146
+ label: localization.common[key],
147
+ value: value.name,
148
+ permissions: [],
149
+ })
150
+ }
151
+ })
152
+ result = [...result, ...resourceResult]
153
+ }
154
+
155
+ if (migrate_type === 'storage') {
156
+ const storageData = migrateOnlyStorageDataView(localization, form, name)
157
+ result = [...result, ...storageData]
158
+ }
159
+
160
+ if (migrate_type === 'resource-storage') {
161
+ const resourceStorageResult = [
162
+ {
163
+ label: localization.common.host,
164
+ value: '', //selectedComputeResource.selectedNode.name,
165
+ permissions: [],
166
+ },
167
+ {
168
+ label: localization.migrateVm.migrationStrategy,
169
+ value: localization.migrateVm[UI_E_VmMigrationStrategy[vMotion_priority]],
170
+ permissions: [],
171
+ },
172
+ {
173
+ label: localization.common.networks,
174
+ value: setSelectNetworkDataView(localization, form),
175
+ permissions: [],
176
+ },
177
+ ]
178
+ const storageResult = migrateOnlyStorageDataView(localization, form, name)
179
+
180
+ result = [...result, ...resourceStorageResult, ...storageResult]
181
+ }
182
+
183
+ if (migrate_type === 'server') {
184
+ const serverResult = [
185
+ {
186
+ label: localization.migrateVm.migrationStrategy,
187
+ value: localization.migrateVm[UI_E_VmMigrationStrategy[vMotion_priority]],
188
+ permissions: [],
189
+ },
190
+ {
191
+ label: localization.common.networks,
192
+ value: setSelectNetworkDataView(localization, form),
193
+ permissions: [],
194
+ },
195
+ ]
196
+ Object.entries(resource).forEach(([key, value]) => {
197
+ if (value !== null) {
198
+ serverResult.unshift({
199
+ label: localization.common[key],
200
+ value: value.name,
201
+ permissions: [],
202
+ })
203
+ }
204
+ })
205
+
206
+ const storageResult = migrateOnlyStorageDataView(localization, form, name)
207
+
208
+ result = [...result, ...serverResult, ...storageResult]
209
+ }
210
+
211
+ return result
212
+ }
213
+ export const constructDataReadyViewFunc = (
214
+ name: string,
215
+ data: UI_I_MigrateFormLocal
216
+ ): UI_I_MigrateReadyBlockData[] => {
217
+ const localization: UI_I_Localization = useLocal()
218
+
219
+ return storageDetailsFunc(localization, name, data)
220
+ }
@@ -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>