bfg-common 1.4.393 → 1.4.395

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 (290) hide show
  1. package/components/common/layout/theHeader/feedback/new/New.vue +12 -12
  2. package/components/common/layout/theHeader/feedback/new/additionalDetails/Headline.vue +7 -4
  3. package/components/common/layout/theHeader/feedback/new/description/Description.vue +1 -1
  4. package/components/common/layout/theHeader/feedback/new/email/Email.vue +1 -1
  5. package/components/common/layout/theHeader/feedback/new/subtitle/Subtitle.vue +6 -3
  6. package/components/common/layout/theHeader/feedback/new/tabs/Tabs.vue +24 -8
  7. package/components/common/layout/theHeader/feedback/new/tabs/lib/config/tabs.ts +2 -2
  8. package/components/common/summary/notification/Notification.vue +28 -0
  9. package/components/common/summary/notification/NotificationNew.vue +135 -0
  10. package/components/common/summary/notification/NotificationOld.vue +46 -0
  11. package/components/common/vm/actions/common/_customizeHardware/CustomizeHardware.vue +274 -0
  12. package/components/common/vm/actions/common/_customizeHardware/lib/config/navItems.ts +21 -0
  13. package/components/common/vm/actions/common/_customizeHardware/lib/models/interfaces.ts +7 -0
  14. package/components/common/vm/actions/common/_customizeHardware/virtualHardware/VirtualHardware.vue +702 -0
  15. package/components/common/vm/actions/common/_customizeHardware/virtualHardware/browseView/BrowseView.vue +203 -0
  16. package/components/common/vm/actions/common/_customizeHardware/virtualHardware/browseView/lib/models/interfaces.ts +8 -0
  17. package/components/common/vm/actions/common/_customizeHardware/virtualHardware/bus/Bus.vue +156 -0
  18. package/components/common/vm/actions/common/_customizeHardware/virtualHardware/bus/lib/config/options.ts +20 -0
  19. package/components/common/vm/actions/common/_customizeHardware/virtualHardware/cdDvdDrive/CdDvdDrive.vue +270 -0
  20. package/components/common/vm/actions/common/_customizeHardware/virtualHardware/cdDvdDrive/lib/config/fileTypes.ts +9 -0
  21. package/components/common/vm/actions/common/_customizeHardware/virtualHardware/cdDvdDrive/lib/config/options.ts +11 -0
  22. package/components/common/vm/actions/common/_customizeHardware/virtualHardware/cdDvdDrive/lib/models/types.ts +1 -0
  23. package/components/common/vm/actions/common/_customizeHardware/virtualHardware/cdDvdDrive/media/Media.vue +57 -0
  24. package/components/common/vm/actions/common/_customizeHardware/virtualHardware/cpu/Cpu.vue +403 -0
  25. package/components/common/vm/actions/common/_customizeHardware/virtualHardware/cpu/Hv.vue +99 -0
  26. package/components/common/vm/actions/common/_customizeHardware/virtualHardware/cpu/Iommu.vue +55 -0
  27. package/components/common/vm/actions/common/_customizeHardware/virtualHardware/cpu/Pc.vue +55 -0
  28. package/components/common/vm/actions/common/_customizeHardware/virtualHardware/cpu/Sa.vue +106 -0
  29. package/components/common/vm/actions/common/_customizeHardware/virtualHardware/cpu/lib/config/cpuOptions.ts +21 -0
  30. package/components/common/vm/actions/common/_customizeHardware/virtualHardware/cpu/shares/Shares.vue +160 -0
  31. package/components/common/vm/actions/common/_customizeHardware/virtualHardware/cpu/shares/lib/config/options.ts +28 -0
  32. package/components/common/vm/actions/common/_customizeHardware/virtualHardware/cpu/tooltip/Tooltip.vue +59 -0
  33. package/components/common/vm/actions/common/_customizeHardware/virtualHardware/lib/config/binaryOptions.ts +12 -0
  34. package/components/common/vm/actions/common/_customizeHardware/virtualHardware/lib/config/dropdownItems.ts +66 -0
  35. package/components/common/vm/actions/common/_customizeHardware/virtualHardware/lib/models/interfaces.ts +118 -0
  36. package/components/common/vm/actions/common/_customizeHardware/virtualHardware/lib/models/types.ts +4 -0
  37. package/components/common/vm/actions/common/_customizeHardware/virtualHardware/limit/Limit.vue +236 -0
  38. package/components/common/vm/actions/common/_customizeHardware/virtualHardware/limit/lib/config/options.ts +28 -0
  39. package/components/common/vm/actions/common/_customizeHardware/virtualHardware/memory/Memory.vue +329 -0
  40. package/components/common/vm/actions/common/_customizeHardware/virtualHardware/memory/lib/config/memoryOptions.ts +35 -0
  41. package/components/common/vm/actions/common/_customizeHardware/virtualHardware/newHardDisk/NewHardDisk.vue +462 -0
  42. package/components/common/vm/actions/common/_customizeHardware/virtualHardware/newHardDisk/cache/Cache.vue +81 -0
  43. package/components/common/vm/actions/common/_customizeHardware/virtualHardware/newHardDisk/cache/lib/config/options.ts +7 -0
  44. package/components/common/vm/actions/common/_customizeHardware/virtualHardware/newHardDisk/limitIops/LimitIops.vue +153 -0
  45. package/components/common/vm/actions/common/_customizeHardware/virtualHardware/newHardDisk/limitIops/lib/config/options.ts +28 -0
  46. package/components/common/vm/actions/common/_customizeHardware/virtualHardware/newHardDisk/location/Location.vue +172 -0
  47. package/components/common/vm/actions/common/_customizeHardware/virtualHardware/newHardDisk/location/StorageModalOld.vue +52 -0
  48. package/components/common/vm/actions/common/_customizeHardware/virtualHardware/newHardDisk/mode/Mode.vue +88 -0
  49. package/components/common/vm/actions/common/_customizeHardware/virtualHardware/newHardDisk/mode/lib/config/options.ts +18 -0
  50. package/components/common/vm/actions/common/_customizeHardware/virtualHardware/newHardDisk/provisioning/Provisioning.vue +88 -0
  51. package/components/common/vm/actions/common/_customizeHardware/virtualHardware/newHardDisk/provisioning/lib/config/options.ts +15 -0
  52. package/components/common/vm/actions/common/_customizeHardware/virtualHardware/newHardDisk/sharing/Sharing.vue +86 -0
  53. package/components/common/vm/actions/common/_customizeHardware/virtualHardware/newHardDisk/sharing/lib/config/options.ts +12 -0
  54. package/components/common/vm/actions/common/_customizeHardware/virtualHardware/newNetwork/Location.vue +145 -0
  55. package/components/common/vm/actions/common/_customizeHardware/virtualHardware/newNetwork/NewNetwork.vue +305 -0
  56. package/components/common/vm/actions/common/_customizeHardware/virtualHardware/newNetwork/adapterType/AdapterType.vue +87 -0
  57. package/components/common/vm/actions/common/_customizeHardware/virtualHardware/newNetwork/adapterType/lib/config/options.ts +9 -0
  58. package/components/common/vm/actions/common/_customizeHardware/virtualHardware/newNetwork/macAddress/MacAddress.vue +148 -0
  59. package/components/common/vm/actions/common/_customizeHardware/virtualHardware/newNetwork/macAddress/lib/config/options.ts +11 -0
  60. package/components/common/vm/actions/common/_customizeHardware/virtualHardware/newPciDevice/NewPciDevice.vue +168 -0
  61. package/components/common/vm/actions/common/_customizeHardware/virtualHardware/newPciDevice/directPathIo/DirectPathIo.vue +48 -0
  62. package/components/common/vm/actions/common/_customizeHardware/virtualHardware/newPciDevice/dynamicDirectPathIo/DynamicDirectPathIo.vue +49 -0
  63. package/components/common/vm/actions/common/_customizeHardware/virtualHardware/newPciDevice/dynamicDirectPathIo/lib/config/options.ts +10 -0
  64. package/components/common/vm/actions/common/_customizeHardware/virtualHardware/newPciDevice/lib/config/options.ts +7 -0
  65. package/components/common/vm/actions/common/_customizeHardware/virtualHardware/newPciDevice/note/Note.vue +27 -0
  66. package/components/common/vm/actions/common/_customizeHardware/virtualHardware/newPciDevice/nvidiaGrid/NvidiaGrid.vue +42 -0
  67. package/components/common/vm/actions/common/_customizeHardware/virtualHardware/newPciDevice/typeSelection/TypeSelection.vue +57 -0
  68. package/components/common/vm/actions/common/_customizeHardware/virtualHardware/newUsbController/NewUsbController.vue +82 -0
  69. package/components/common/vm/actions/common/_customizeHardware/virtualHardware/newUsbController/lib/config/options.ts +6 -0
  70. package/components/common/vm/actions/common/_customizeHardware/virtualHardware/other/Other.vue +32 -0
  71. package/components/common/vm/actions/common/_customizeHardware/virtualHardware/reservation/Reservation.vue +237 -0
  72. package/components/common/vm/actions/common/_customizeHardware/virtualHardware/reservation/lib/config/options.ts +33 -0
  73. package/components/common/vm/actions/common/_customizeHardware/virtualHardware/videoCard/Graphics.vue +50 -0
  74. package/components/common/vm/actions/common/_customizeHardware/virtualHardware/videoCard/VideoCard.vue +182 -0
  75. package/components/common/vm/actions/common/_customizeHardware/virtualHardware/videoCard/lib/config/options.ts +11 -0
  76. package/components/common/vm/actions/common/_customizeHardware/virtualHardware/videoCard/model/Model.vue +59 -0
  77. package/components/common/vm/actions/common/_customizeHardware/virtualHardware/videoCard/model/lib/config/options.ts +10 -0
  78. package/components/common/vm/actions/common/_customizeHardware/virtualHardware/videoCard/numberDisplays/NumberDisplays.vue +83 -0
  79. package/components/common/vm/actions/common/_customizeHardware/virtualHardware/videoCard/numberDisplays/lib/config/options.ts +14 -0
  80. package/components/common/vm/actions/common/_customizeHardware/vmoptions/Vmoptions.vue +181 -0
  81. package/components/common/vm/actions/common/_customizeHardware/vmoptions/bootOptions/BootOptions.vue +114 -0
  82. package/components/common/vm/actions/common/_customizeHardware/vmoptions/bootOptions/Secure.vue +50 -0
  83. package/components/common/vm/actions/common/_customizeHardware/vmoptions/bootOptions/delay/Delay.vue +54 -0
  84. package/components/common/vm/actions/common/_customizeHardware/vmoptions/bootOptions/delay/lib/config/config.ts +14 -0
  85. package/components/common/vm/actions/common/_customizeHardware/vmoptions/bootOptions/firmware/Firmware.vue +84 -0
  86. package/components/common/vm/actions/common/_customizeHardware/vmoptions/bootOptions/firmware/lib/config/config.ts +11 -0
  87. package/components/common/vm/actions/common/_customizeHardware/vmoptions/bootOptions/order/Order.vue +201 -0
  88. package/components/common/vm/actions/common/_customizeHardware/vmoptions/bootOptions/order/lib/models/interfaces.ts +9 -0
  89. package/components/common/vm/actions/common/_customizeHardware/vmoptions/generalOptions/GeneralOptions.vue +192 -0
  90. package/components/common/vm/actions/common/_customizeHardware/vmoptions/lib/models/interfaces.ts +34 -0
  91. package/components/common/vm/actions/common/_customizeHardware/vmoptions/remoteConsoleOptions/PlaybackCompression.vue +52 -0
  92. package/components/common/vm/actions/common/_customizeHardware/vmoptions/remoteConsoleOptions/PowerControl.vue +50 -0
  93. package/components/common/vm/actions/common/_customizeHardware/vmoptions/remoteConsoleOptions/RemoteConsoleOptions.vue +254 -0
  94. package/components/common/vm/actions/common/_customizeHardware/vmoptions/remoteConsoleOptions/imgCompression/ImgCompression.vue +85 -0
  95. package/components/common/vm/actions/common/_customizeHardware/vmoptions/remoteConsoleOptions/imgCompression/lib/config/config.ts +14 -0
  96. package/components/common/vm/actions/common/_customizeHardware/vmoptions/remoteConsoleOptions/jpegCompression/JpegCompression.vue +85 -0
  97. package/components/common/vm/actions/common/_customizeHardware/vmoptions/remoteConsoleOptions/jpegCompression/lib/config/config.ts +12 -0
  98. package/components/common/vm/actions/common/_customizeHardware/vmoptions/remoteConsoleOptions/keymap/Keymap.vue +56 -0
  99. package/components/common/vm/actions/common/_customizeHardware/vmoptions/remoteConsoleOptions/keymap/lib/config/config.ts +6 -0
  100. package/components/common/vm/actions/common/_customizeHardware/vmoptions/remoteConsoleOptions/mouseMode/MouseMode.vue +57 -0
  101. package/components/common/vm/actions/common/_customizeHardware/vmoptions/remoteConsoleOptions/mouseMode/lib/config/config.ts +11 -0
  102. package/components/common/vm/actions/common/_customizeHardware/vmoptions/remoteConsoleOptions/password/Password.vue +142 -0
  103. package/components/common/vm/actions/common/_customizeHardware/vmoptions/remoteConsoleOptions/password/lib/models/interfaces.ts +5 -0
  104. package/components/common/vm/actions/common/_customizeHardware/vmoptions/remoteConsoleOptions/password/lib/utils.ts +12 -0
  105. package/components/common/vm/actions/common/_customizeHardware/vmoptions/remoteConsoleOptions/sharePolicy/SharePolicy.vue +56 -0
  106. package/components/common/vm/actions/common/_customizeHardware/vmoptions/remoteConsoleOptions/sharePolicy/lib/config/config.ts +11 -0
  107. package/components/common/vm/actions/common/_customizeHardware/vmoptions/remoteConsoleOptions/streamingMode/StreamingMode.vue +85 -0
  108. package/components/common/vm/actions/common/_customizeHardware/vmoptions/remoteConsoleOptions/streamingMode/lib/config/config.ts +12 -0
  109. package/components/common/vm/actions/common/_customizeHardware/vmoptions/remoteConsoleOptions/type/Type.vue +85 -0
  110. package/components/common/vm/actions/common/_customizeHardware/vmoptions/remoteConsoleOptions/type/lib/config/config.ts +7 -0
  111. package/components/common/vm/actions/common/_customizeHardware/vmoptions/remoteConsoleOptions/usbRedirection/UsbRedirection.vue +57 -0
  112. package/components/common/vm/actions/common/_customizeHardware/vmoptions/remoteConsoleOptions/usbRedirection/lib/config/config.ts +14 -0
  113. package/components/common/vm/actions/common/_customizeHardware/vmoptions/remoteConsoleOptions/zlibCompression/ZlibCompression.vue +85 -0
  114. package/components/common/vm/actions/common/_customizeHardware/vmoptions/remoteConsoleOptions/zlibCompression/lib/config/config.ts +12 -0
  115. package/components/common/vm/actions/common/_customizeHardware/vmoptions/tools/Tools.vue +72 -0
  116. package/components/common/vm/actions/common/customizeHardware/CustomizeHardware.vue +119 -126
  117. package/components/common/vm/actions/common/customizeHardware/CustomizeHardwareNew.vue +189 -0
  118. package/components/common/vm/actions/common/customizeHardware/CustomizeHardwareOld.vue +158 -0
  119. package/components/common/vm/actions/common/customizeHardware/lib/config/navItems.ts +17 -2
  120. package/components/common/vm/actions/common/customizeHardware/virtualHardware/VirtualHardware.vue +165 -182
  121. package/components/common/vm/actions/common/customizeHardware/virtualHardware/VirtualHardwareNew.vue +392 -0
  122. package/components/common/vm/actions/common/customizeHardware/virtualHardware/VirtualHardwareOld.vue +267 -0
  123. package/components/common/vm/actions/common/customizeHardware/virtualHardware/bus/Bus.vue +34 -93
  124. package/components/common/vm/actions/common/customizeHardware/virtualHardware/bus/BusNew.vue +118 -0
  125. package/components/common/vm/actions/common/customizeHardware/virtualHardware/bus/BusOld.vue +109 -0
  126. package/components/common/vm/actions/common/customizeHardware/virtualHardware/cdDvdDrive/CdDvdDrive.vue +69 -111
  127. package/components/common/vm/actions/common/customizeHardware/virtualHardware/cdDvdDrive/CdDvdDriveNew.vue +159 -0
  128. package/components/common/vm/actions/common/customizeHardware/virtualHardware/cdDvdDrive/CdDvdDriveOld.vue +158 -0
  129. package/components/common/vm/actions/common/customizeHardware/virtualHardware/cdDvdDrive/media/Media.vue +13 -45
  130. package/components/common/vm/actions/common/customizeHardware/virtualHardware/cdDvdDrive/media/MediaNew.vue +55 -0
  131. package/components/common/vm/actions/common/customizeHardware/virtualHardware/cdDvdDrive/media/MediaOld.vue +42 -0
  132. package/components/common/vm/actions/common/customizeHardware/virtualHardware/cpu/Cpu.vue +73 -139
  133. package/components/common/vm/actions/common/customizeHardware/virtualHardware/cpu/CpuNew.vue +185 -0
  134. package/components/common/vm/actions/common/customizeHardware/virtualHardware/cpu/CpuOld.vue +174 -0
  135. package/components/common/vm/actions/common/customizeHardware/virtualHardware/cpu/Hv.vue +90 -90
  136. package/components/common/vm/actions/common/customizeHardware/virtualHardware/cpu/Iommu.vue +50 -50
  137. package/components/common/vm/actions/common/customizeHardware/virtualHardware/cpu/Pc.vue +50 -50
  138. package/components/common/vm/actions/common/customizeHardware/virtualHardware/cpu/Sa.vue +98 -98
  139. package/components/common/vm/actions/common/customizeHardware/virtualHardware/cpu/coresPerSocket/CoresPerSocket.vue +86 -0
  140. package/components/common/vm/actions/common/customizeHardware/virtualHardware/cpu/coresPerSocket/CoresPerSocketNew.vue +68 -0
  141. package/components/common/vm/actions/common/customizeHardware/virtualHardware/cpu/coresPerSocket/CoresPerSocketOld.vue +63 -0
  142. package/components/common/vm/actions/common/customizeHardware/virtualHardware/cpu/cpuHotPlug/CpuHotPlug.vue +40 -0
  143. package/components/common/vm/actions/common/customizeHardware/virtualHardware/cpu/cpuHotPlug/CpuHotPlugNew.vue +31 -0
  144. package/components/common/vm/actions/common/customizeHardware/virtualHardware/cpu/cpuHotPlug/CpuHotPlugOld.vue +38 -0
  145. package/components/common/vm/actions/common/customizeHardware/virtualHardware/cpu/cpuModel/CpuModel.vue +121 -0
  146. package/components/common/vm/actions/common/customizeHardware/virtualHardware/cpu/cpuModel/CpuModelNew.vue +209 -0
  147. package/components/common/vm/actions/common/customizeHardware/virtualHardware/cpu/cpuModel/CpuModelOld.vue +171 -0
  148. package/components/common/vm/actions/common/customizeHardware/virtualHardware/cpu/maxCpu/MaxCpu.vue +94 -0
  149. package/components/common/vm/actions/common/customizeHardware/virtualHardware/cpu/maxCpu/MaxCpuNew.vue +40 -0
  150. package/components/common/vm/actions/common/customizeHardware/virtualHardware/cpu/maxCpu/MaxCpuOld.vue +51 -0
  151. package/components/common/vm/actions/common/customizeHardware/virtualHardware/cpu/shares/Shares.vue +29 -49
  152. package/components/common/vm/actions/common/customizeHardware/virtualHardware/cpu/shares/SharesNew.vue +58 -0
  153. package/components/common/vm/actions/common/customizeHardware/virtualHardware/cpu/shares/SharesOld.vue +76 -0
  154. package/components/common/vm/actions/common/customizeHardware/virtualHardware/cpu/tooltip/Tooltip.vue +10 -48
  155. package/components/common/vm/actions/common/customizeHardware/virtualHardware/cpu/tooltip/TooltipNew.vue +111 -0
  156. package/components/common/vm/actions/common/customizeHardware/virtualHardware/cpu/tooltip/TooltipOld.vue +59 -0
  157. package/components/common/vm/actions/common/customizeHardware/virtualHardware/lib/config/dropdownItems.ts +83 -2
  158. package/components/common/vm/actions/common/customizeHardware/virtualHardware/limit/Limit.vue +32 -52
  159. package/components/common/vm/actions/common/customizeHardware/virtualHardware/limit/LimitNew.vue +70 -0
  160. package/components/common/vm/actions/common/customizeHardware/virtualHardware/limit/LimitOld.vue +75 -0
  161. package/components/common/vm/actions/common/customizeHardware/virtualHardware/memory/Memory.vue +53 -94
  162. package/components/common/vm/actions/common/customizeHardware/virtualHardware/memory/MemoryNew.vue +151 -0
  163. package/components/common/vm/actions/common/customizeHardware/virtualHardware/memory/MemoryOld.vue +154 -0
  164. package/components/common/vm/actions/common/customizeHardware/virtualHardware/memory/hotPlug/HotPlug.vue +29 -0
  165. package/components/common/vm/actions/common/customizeHardware/virtualHardware/memory/hotPlug/HotPlugNew.vue +30 -0
  166. package/components/common/vm/actions/common/customizeHardware/virtualHardware/memory/hotPlug/HotPlugOld.vue +43 -0
  167. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newHardDisk/NewHardDisk.vue +77 -188
  168. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newHardDisk/NewHardDiskNew.vue +224 -0
  169. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newHardDisk/NewHardDiskOld.vue +240 -0
  170. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newHardDisk/cache/Cache.vue +21 -47
  171. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newHardDisk/cache/CacheNew.vue +40 -0
  172. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newHardDisk/cache/CacheOld.vue +57 -0
  173. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newHardDisk/file/File.vue +22 -0
  174. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newHardDisk/file/FileNew.vue +28 -0
  175. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newHardDisk/file/FileOld.vue +24 -0
  176. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newHardDisk/limitIops/LimitIops.vue +32 -85
  177. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newHardDisk/limitIops/LimitIopsNew.vue +63 -0
  178. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newHardDisk/limitIops/LimitIopsOld.vue +86 -0
  179. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newHardDisk/location/Location.vue +5 -16
  180. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newHardDisk/location/StorageModal.vue +52 -0
  181. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newHardDisk/location/StorageModalNew.vue +74 -0
  182. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newHardDisk/location/StorageModalOld.vue +1 -1
  183. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newHardDisk/maximumSize/MaximumSize.vue +23 -0
  184. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newHardDisk/maximumSize/MaximumSizeNew.vue +28 -0
  185. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newHardDisk/maximumSize/MaximumSizeOld.vue +25 -0
  186. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newHardDisk/mode/Mode.vue +24 -47
  187. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newHardDisk/mode/ModeNew.vue +46 -0
  188. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newHardDisk/mode/ModeOld.vue +57 -0
  189. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newHardDisk/provisioning/Provisioning.vue +24 -51
  190. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newHardDisk/provisioning/ProvisioningNew.vue +44 -0
  191. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newHardDisk/provisioning/ProvisioningOld.vue +58 -0
  192. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newHardDisk/sharing/Sharing.vue +24 -47
  193. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newHardDisk/sharing/SharingNew.vue +44 -0
  194. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newHardDisk/sharing/SharingOld.vue +58 -0
  195. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newNetwork/NewNetwork.vue +56 -89
  196. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newNetwork/NewNetworkNew.vue +124 -0
  197. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newNetwork/NewNetworkOld.vue +131 -0
  198. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newNetwork/adapterType/AdapterType.vue +22 -49
  199. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newNetwork/adapterType/AdapterTypeNew.vue +49 -0
  200. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newNetwork/adapterType/AdapterTypeOld.vue +60 -0
  201. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newNetwork/macAddress/MacAddress.vue +51 -80
  202. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newNetwork/macAddress/MacAddressNew.vue +69 -0
  203. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newNetwork/macAddress/MacAddressOld.vue +84 -0
  204. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newPciDevice/directPathIo/DirectPathIo.vue +1 -1
  205. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newUsbController/NewUsbController.vue +16 -40
  206. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newUsbController/NewUsbControllerNew.vue +53 -0
  207. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newUsbController/NewUsbControllerOld.vue +61 -0
  208. package/components/common/vm/actions/common/customizeHardware/virtualHardware/other/Other.vue +8 -24
  209. package/components/common/vm/actions/common/customizeHardware/virtualHardware/other/OtherNew.vue +27 -0
  210. package/components/common/vm/actions/common/customizeHardware/virtualHardware/other/OtherOld.vue +32 -0
  211. package/components/common/vm/actions/common/customizeHardware/virtualHardware/other/inputDevices/InputDevices.vue +15 -0
  212. package/components/common/vm/actions/common/customizeHardware/virtualHardware/other/inputDevices/InputDevicesNew.vue +33 -0
  213. package/components/common/vm/actions/common/customizeHardware/virtualHardware/other/inputDevices/InputDevicesOld.vue +21 -0
  214. package/components/common/vm/actions/common/customizeHardware/virtualHardware/reservation/Reservation.vue +30 -71
  215. package/components/common/vm/actions/common/customizeHardware/virtualHardware/reservation/ReservationNew.vue +98 -0
  216. package/components/common/vm/actions/common/customizeHardware/virtualHardware/reservation/ReservationOld.vue +96 -0
  217. package/components/common/vm/actions/common/customizeHardware/virtualHardware/videoCard/VideoCard.vue +39 -77
  218. package/components/common/vm/actions/common/customizeHardware/virtualHardware/videoCard/VideoCardNew.vue +96 -0
  219. package/components/common/vm/actions/common/customizeHardware/virtualHardware/videoCard/VideoCardOld.vue +108 -0
  220. package/components/common/vm/actions/common/customizeHardware/virtualHardware/videoCard/model/Model.vue +16 -41
  221. package/components/common/vm/actions/common/customizeHardware/virtualHardware/videoCard/model/ModelNew.vue +40 -0
  222. package/components/common/vm/actions/common/customizeHardware/virtualHardware/videoCard/model/ModelOld.vue +44 -0
  223. package/components/common/vm/actions/common/customizeHardware/virtualHardware/videoCard/numberDisplays/NumberDisplays.vue +21 -47
  224. package/components/common/vm/actions/common/customizeHardware/virtualHardware/videoCard/numberDisplays/NumberDisplaysNew.vue +45 -0
  225. package/components/common/vm/actions/common/customizeHardware/virtualHardware/videoCard/numberDisplays/NumberDisplaysOld.vue +56 -0
  226. package/components/common/vm/actions/common/customizeHardware/virtualHardware/videoCard/totalVideoMemory/TotalVideoMemory.vue +105 -0
  227. package/components/common/vm/actions/common/customizeHardware/virtualHardware/videoCard/totalVideoMemory/TotalVideoMemoryNew.vue +54 -0
  228. package/components/common/vm/actions/common/customizeHardware/virtualHardware/videoCard/totalVideoMemory/TotalVideoMemoryOld.vue +60 -0
  229. package/components/common/vm/actions/common/customizeHardware/vmoptions/Vmoptions.vue +57 -93
  230. package/components/common/vm/actions/common/customizeHardware/vmoptions/VmoptionsNew.vue +102 -0
  231. package/components/common/vm/actions/common/customizeHardware/vmoptions/VmoptionsOld.vue +96 -0
  232. package/components/common/vm/actions/common/customizeHardware/vmoptions/bootOptions/BootOptions.vue +39 -53
  233. package/components/common/vm/actions/common/customizeHardware/vmoptions/bootOptions/BootOptionsNew.vue +75 -0
  234. package/components/common/vm/actions/common/customizeHardware/vmoptions/bootOptions/BootOptionsOld.vue +80 -0
  235. package/components/common/vm/actions/common/customizeHardware/vmoptions/bootOptions/delay/Delay.vue +13 -41
  236. package/components/common/vm/actions/common/customizeHardware/vmoptions/bootOptions/delay/DelayNew.vue +35 -0
  237. package/components/common/vm/actions/common/customizeHardware/vmoptions/bootOptions/delay/DelayOld.vue +41 -0
  238. package/components/common/vm/actions/common/customizeHardware/vmoptions/bootOptions/firmware/Firmware.vue +20 -47
  239. package/components/common/vm/actions/common/customizeHardware/vmoptions/bootOptions/firmware/FirmwareNew.vue +42 -0
  240. package/components/common/vm/actions/common/customizeHardware/vmoptions/bootOptions/firmware/FirmwareOld.vue +56 -0
  241. package/components/common/vm/actions/common/customizeHardware/vmoptions/bootOptions/menu/Menu.vue +20 -0
  242. package/components/common/vm/actions/common/customizeHardware/vmoptions/bootOptions/menu/MenuNew.vue +25 -0
  243. package/components/common/vm/actions/common/customizeHardware/vmoptions/bootOptions/menu/MenuOld.vue +36 -0
  244. package/components/common/vm/actions/common/customizeHardware/vmoptions/bootOptions/order/Order.vue +13 -43
  245. package/components/common/vm/actions/common/customizeHardware/vmoptions/bootOptions/order/OrderNew.vue +50 -0
  246. package/components/common/vm/actions/common/customizeHardware/vmoptions/bootOptions/order/OrderOld.vue +60 -0
  247. package/components/common/vm/actions/common/customizeHardware/vmoptions/generalOptions/GeneralOptions.vue +40 -155
  248. package/components/common/vm/actions/common/customizeHardware/vmoptions/generalOptions/GeneralOptionsNew.vue +141 -0
  249. package/components/common/vm/actions/common/customizeHardware/vmoptions/generalOptions/GeneralOptionsOld.vue +137 -0
  250. package/components/common/vm/actions/common/customizeHardware/vmoptions/remoteConsoleOptions/New.vue +140 -0
  251. package/components/common/vm/actions/common/customizeHardware/vmoptions/remoteConsoleOptions/Old.vue +254 -0
  252. package/components/common/vm/actions/common/customizeHardware/vmoptions/remoteConsoleOptions/PowerControl.vue +1 -1
  253. package/components/common/vm/actions/common/customizeHardware/vmoptions/remoteConsoleOptions/RemoteConsoleOptions.vue +28 -110
  254. package/components/common/vm/actions/common/customizeHardware/vmoptions/remoteConsoleOptions/copyPaste/CopyPaste.vue +26 -0
  255. package/components/common/vm/actions/common/customizeHardware/vmoptions/remoteConsoleOptions/copyPaste/CopyPasteNew.vue +30 -0
  256. package/components/common/vm/actions/common/customizeHardware/vmoptions/remoteConsoleOptions/copyPaste/CopyPasteOld.vue +41 -0
  257. package/components/common/vm/actions/common/customizeHardware/vmoptions/remoteConsoleOptions/fileTransfer/FileTransfer.vue +26 -0
  258. package/components/common/vm/actions/common/customizeHardware/vmoptions/remoteConsoleOptions/fileTransfer/FileTransferNew.vue +30 -0
  259. package/components/common/vm/actions/common/customizeHardware/vmoptions/remoteConsoleOptions/fileTransfer/FileTransferOld.vue +41 -0
  260. package/components/common/vm/actions/common/customizeHardware/vmoptions/remoteConsoleOptions/folderSharing/FolderSharing.vue +20 -0
  261. package/components/common/vm/actions/common/customizeHardware/vmoptions/remoteConsoleOptions/folderSharing/FolderSharingNew.vue +30 -0
  262. package/components/common/vm/actions/common/customizeHardware/vmoptions/remoteConsoleOptions/folderSharing/FolderSharingOld.vue +37 -0
  263. package/components/common/vm/actions/common/customizeHardware/vmoptions/remoteConsoleOptions/keymap/Keymap.vue +16 -40
  264. package/components/common/vm/actions/common/customizeHardware/vmoptions/remoteConsoleOptions/keymap/KeymapNew.vue +39 -0
  265. package/components/common/vm/actions/common/customizeHardware/vmoptions/remoteConsoleOptions/keymap/KeymapOld.vue +43 -0
  266. package/components/common/vm/actions/common/customizeHardware/vmoptions/remoteConsoleOptions/password/Password.vue +32 -73
  267. package/components/common/vm/actions/common/customizeHardware/vmoptions/remoteConsoleOptions/password/PasswordNew.vue +100 -0
  268. package/components/common/vm/actions/common/customizeHardware/vmoptions/remoteConsoleOptions/password/PasswordOld.vue +92 -0
  269. package/components/common/vm/actions/common/customizeHardware/vmoptions/remoteConsoleOptions/usbRedirection/UsbRedirection.vue +13 -42
  270. package/components/common/vm/actions/common/customizeHardware/vmoptions/remoteConsoleOptions/usbRedirection/UsbRedirectionNew.vue +38 -0
  271. package/components/common/vm/actions/common/customizeHardware/vmoptions/remoteConsoleOptions/usbRedirection/UsbRedirectionOld.vue +44 -0
  272. package/components/common/vm/actions/common/customizeHardware/vmoptions/tools/Tools.vue +15 -38
  273. package/components/common/vm/actions/common/customizeHardware/vmoptions/tools/ToolsNew.vue +39 -0
  274. package/components/common/vm/actions/common/customizeHardware/vmoptions/tools/ToolsOld.vue +48 -0
  275. package/package.json +2 -2
  276. /package/components/common/vm/actions/common/{customizeHardware → _customizeHardware}/virtualHardware/cpu/CoresPerSocket.vue +0 -0
  277. /package/components/common/vm/actions/common/{customizeHardware → _customizeHardware}/virtualHardware/cpu/CpuHotPlug.vue +0 -0
  278. /package/components/common/vm/actions/common/{customizeHardware → _customizeHardware}/virtualHardware/cpu/CpuModel.vue +0 -0
  279. /package/components/common/vm/actions/common/{customizeHardware → _customizeHardware}/virtualHardware/cpu/MaxCpu.vue +0 -0
  280. /package/components/common/vm/actions/common/{customizeHardware → _customizeHardware}/virtualHardware/memory/MemoryHotPlug.vue +0 -0
  281. /package/components/common/vm/actions/common/{customizeHardware → _customizeHardware}/virtualHardware/newHardDisk/DiskFile.vue +0 -0
  282. /package/components/common/vm/actions/common/{customizeHardware → _customizeHardware}/virtualHardware/newHardDisk/MaximumSize.vue +0 -0
  283. /package/components/common/vm/actions/common/{customizeHardware → _customizeHardware}/virtualHardware/newHardDisk/location/storageModalNew/StorageModalNew.vue +0 -0
  284. /package/components/common/vm/actions/common/{customizeHardware → _customizeHardware}/virtualHardware/newHardDisk/location/storageModalNew/lib/config/table.ts +0 -0
  285. /package/components/common/vm/actions/common/{customizeHardware → _customizeHardware}/virtualHardware/other/InputDevices.vue +0 -0
  286. /package/components/common/vm/actions/common/{customizeHardware → _customizeHardware}/virtualHardware/videoCard/TotalVideoMemory.vue +0 -0
  287. /package/components/common/vm/actions/common/{customizeHardware → _customizeHardware}/vmoptions/bootOptions/Menu.vue +0 -0
  288. /package/components/common/vm/actions/common/{customizeHardware → _customizeHardware}/vmoptions/remoteConsoleOptions/CopyPaste.vue +0 -0
  289. /package/components/common/vm/actions/common/{customizeHardware → _customizeHardware}/vmoptions/remoteConsoleOptions/FileTransfer.vue +0 -0
  290. /package/components/common/vm/actions/common/{customizeHardware → _customizeHardware}/vmoptions/remoteConsoleOptions/FolderSharing.vue +0 -0
@@ -0,0 +1,145 @@
1
+ <template>
2
+ <div>
3
+ <Teleport to="body">
4
+ <atoms-modal
5
+ class="network-modal"
6
+ :show="props.locationModalIsShow"
7
+ :title="localization.common.selectNetwork"
8
+ test-id="select-network-modal"
9
+ @submit="onSubmitLocationModal"
10
+ @hide="onHideLocationModal"
11
+ >
12
+ <template #modalBody>
13
+ <atoms-alert
14
+ v-show="errors.length"
15
+ status="alert-danger"
16
+ :items="errors"
17
+ test-id="location-alert"
18
+ @remove="onRemoveValidationErrors"
19
+ />
20
+ <div class="network-select-dialog-content">
21
+ <div class="k-header k-grid-toolbar flex-justify-end">
22
+ <div class="filter-input pull-right flex">
23
+ <button
24
+ id="location-filter-button"
25
+ data-id="location-filter-button"
26
+ class="nav-icon fa fa-filter filter-button"
27
+ >
28
+ <atoms-the-icon
29
+ class="filter-icon"
30
+ fill="#4c5356"
31
+ name="filter"
32
+ />
33
+ </button>
34
+ <input
35
+ id="location-filter"
36
+ v-model="locationFilter"
37
+ data-id="location-filter-input"
38
+ type="text"
39
+ :placeholder="localization.common.filter"
40
+ />
41
+ </div>
42
+ </div>
43
+ <atoms-table-simple-table
44
+ :head-items="tagsHeadItems"
45
+ :body-items="tagsBodyItems"
46
+ editable
47
+ @select="onSelectLocation"
48
+ />
49
+ </div>
50
+ </template>
51
+ </atoms-modal>
52
+ </Teleport>
53
+ </div>
54
+ </template>
55
+
56
+ <script setup lang="ts">
57
+ import type { UI_I_NetworkTableItem } from '~/lib/models/store/network/interfaces'
58
+ import type { UI_I_Localization } from '~/lib/models/interfaces'
59
+ import type {
60
+ UI_I_TableHeadItem,
61
+ UI_I_TableBodyItem,
62
+ } from '~/components/atoms/table/simpleTable/lib/models/interfaces'
63
+
64
+ const localization = computed<UI_I_Localization>(() => useLocal())
65
+
66
+ const props = defineProps<{
67
+ locationModalIsShow: boolean
68
+ networksTable: UI_I_NetworkTableItem[]
69
+ }>()
70
+ const emits = defineEmits<{
71
+ (event: 'hide'): void
72
+ (event: 'select', value: UI_I_NetworkTableItem): void
73
+ }>()
74
+
75
+ const onSubmitLocationModal = (): void => {
76
+ if (selectedLocation.value === null) {
77
+ errors.value = [localization.value.common.noNetworkSelected]
78
+ return
79
+ }
80
+ emits('select', selectedLocation.value)
81
+ }
82
+ const onHideLocationModal = (): void => {
83
+ emits('hide')
84
+ }
85
+
86
+ const locationFilter = ref<string>('')
87
+ const tagsHeadItems = ref<UI_I_TableHeadItem[]>([
88
+ { text: localization.value.common.name },
89
+ { text: localization.value.common.nsxPortGroupId },
90
+ { text: localization.value.common.distributedSwitch },
91
+ ])
92
+ const tagsBodyItemsDefault = ref<UI_I_TableBodyItem[][]>([])
93
+ const tagsBodyItems = computed<UI_I_TableBodyItem[][]>(() => {
94
+ const term = locationFilter.value.trim().toLowerCase()
95
+ return tagsBodyItemsDefault.value.filter((row) => {
96
+ return row.some((item) => item.text.trim().toLowerCase().includes(term))
97
+ })
98
+ })
99
+ watch(
100
+ () => props.networksTable,
101
+ (newValue) => {
102
+ tagsBodyItemsDefault.value = []
103
+ newValue?.forEach((network) => {
104
+ tagsBodyItemsDefault.value.push([
105
+ { text: network.name, editable: false, testId: `network-${network.name}` },
106
+ { text: '--', editable: false },
107
+ { text: '--', editable: false },
108
+ ])
109
+ })
110
+ },
111
+ { immediate: true }
112
+ )
113
+
114
+ const selectedLocation = ref<UI_I_NetworkTableItem | null>(null)
115
+ const getNetworkByName = (name: string): UI_I_NetworkTableItem | null => {
116
+ return props.networksTable?.find((network) => network.name === name) || null
117
+ }
118
+ const onSelectLocation = (_key: number, value: UI_I_TableBodyItem[]): void => {
119
+ const networkName = value[0].text
120
+ selectedLocation.value = getNetworkByName(networkName)
121
+ }
122
+
123
+ const errors = ref<string[]>([])
124
+ const onRemoveValidationErrors = (): void => {
125
+ errors.value = []
126
+ }
127
+ </script>
128
+
129
+ <style scoped lang="scss">
130
+ .network-select-dialog-content {
131
+ min-height: 300px;
132
+ margin-top: 10px;
133
+
134
+ .filter-button {
135
+ border-style: none;
136
+ background-color: transparent;
137
+ padding: 0;
138
+
139
+ .filter-icon {
140
+ width: 18px;
141
+ height: 18px;
142
+ }
143
+ }
144
+ }
145
+ </style>
@@ -0,0 +1,305 @@
1
+ <template>
2
+ <div class="hardware-network">
3
+ <atoms-stack-block
4
+ :has-children="true"
5
+ :removable="isRemovable"
6
+ :test-id="`network-stack-block-${props.index}`"
7
+ @remove="removeNetwork"
8
+ >
9
+ <template #stackBlockKey>
10
+ <div
11
+ :id="`vm-wizard-toggle-block-network-${props.index}`"
12
+ :data-id="`vm-wizard-toggle-block-network-${props.index}`"
13
+ class="vm-wizard-toggle-block-network flex-align-center"
14
+ >
15
+ <span>{{ label }}</span>
16
+ <atoms-the-icon
17
+ v-show="newNetworkInvalid"
18
+ width="24px"
19
+ height="24px"
20
+ class="is-error tooltip-trigger"
21
+ name="info"
22
+ />
23
+ </div>
24
+ </template>
25
+ <template #stackBlockContent>
26
+ <div class="flex-align-center flex-space-between">
27
+ <atoms-tooltip-error
28
+ :has-error="!!apiError"
29
+ :selector="`.vm-wizard-network-field-${props.index}`"
30
+ @remove="onRemoveValidationError"
31
+ >
32
+ <template #elem>
33
+ <div class="select">
34
+ <select
35
+ :id="`vm-wizard-network-field-${props.index}`"
36
+ v-model="selectedLocation"
37
+ :data-id="`vm-wizard-network-field-${props.index}`"
38
+ :class="`vm-wizard-network-field-${props.index} input-text-color`"
39
+ :disabled="props.type === 'edit' && state !== 1"
40
+ @click.stop
41
+ @change="changeLocation"
42
+ >
43
+ <option
44
+ v-for="(item, key) in locationOptions"
45
+ :key="key"
46
+ :value="item.value"
47
+ >
48
+ {{ item.text }}
49
+ </option>
50
+ </select>
51
+ </div>
52
+ </template>
53
+ <template #content>{{ apiError }}</template>
54
+ </atoms-tooltip-error>
55
+ </div>
56
+ </template>
57
+ <template #stackChildren>
58
+ <common-vm-actions-common-customize-hardware-virtual-hardware-new-network-adapter-type
59
+ v-model:adapter-type="adapterType"
60
+ :index="props.index"
61
+ :disabled="props.type === 'edit' || isRunning"
62
+ :error-validation-fields="props.errorValidationFields"
63
+ @remove-error-by-title="emits('remove-error-by-title', $event)"
64
+ />
65
+ <common-vm-actions-common-customize-hardware-virtual-hardware-new-network-mac-address
66
+ v-model:mac-address="macAddress"
67
+ v-model:mac-address-type="macAddressType"
68
+ :index="props.index"
69
+ :disabled="props.type === 'edit'"
70
+ :error-validation-fields="props.errorValidationFields"
71
+ @invalid="newNetworkInvalid = $event"
72
+ @remove-error-by-title="emits('remove-error-by-title', $event)"
73
+ />
74
+ </template>
75
+ </atoms-stack-block>
76
+
77
+ <common-vm-actions-common-customize-hardware-virtual-hardware-new-network-location
78
+ :location-modal-is-show="locationModalIsShow"
79
+ :networks-table="networksTable"
80
+ @hide="onHideLocationModal"
81
+ @select="onSelectLocation"
82
+ />
83
+ </div>
84
+ </template>
85
+
86
+ <script setup lang="ts">
87
+ import type { UI_T_Project } from '~/lib/models/types'
88
+ import type { UI_I_TablePayload } from '~/lib/models/table/interfaces'
89
+ import type { UI_I_NetworkTableItem } from '~/lib/models/store/network/interfaces'
90
+ import type { UI_I_ErrorValidationField } from '~/lib/models/store/interfaces'
91
+ import type { UI_I_SendDataNewNetwork } from '~/components/common/vm/actions/common/customizeHardware/virtualHardware/lib/models/interfaces'
92
+ import type { UI_T_NetworkType } from '~/components/common/vm/actions/common/customizeHardware/virtualHardware/lib/models/types'
93
+ import type {
94
+ UI_I_Localization,
95
+ UI_I_HTMLSelectElement,
96
+ } from '~/lib/models/interfaces'
97
+ import type { UI_I_OptionItem } from '~/components/atoms/lib/models/interfaces'
98
+
99
+ const props = defineProps<{
100
+ project: UI_T_Project
101
+ index: number
102
+ type: UI_T_NetworkType
103
+ network: UI_I_SendDataNewNetwork
104
+ networksTable: UI_I_NetworkTableItem[]
105
+ errorValidationFields: UI_I_ErrorValidationField[]
106
+ isEdit: boolean
107
+ state?: string | number
108
+ }>()
109
+
110
+ const emits = defineEmits<{
111
+ (event: 'send-data', value: UI_I_SendDataNewNetwork): void
112
+ (event: 'invalid', value: boolean): void
113
+ (event: 'remove'): void
114
+ (event: 'remove-error-by-title', value: string): void
115
+ (event: 'get-networks-table', value: UI_I_TablePayload): void
116
+ }>()
117
+
118
+ const localization = computed<UI_I_Localization>(() => useLocal())
119
+
120
+ const isRunning = computed<boolean>(() => {
121
+ return props.state === 2
122
+ })
123
+
124
+ const isRemovable = computed<boolean>(() => {
125
+ return (
126
+ !props.isEdit ||
127
+ !isRunning.value ||
128
+ (isRunning.value && adapterType.value === 'virtio')
129
+ )
130
+ })
131
+
132
+ const label = computed<string>(() => {
133
+ if (props.type === 'edit')
134
+ return `${localization.value.common.networkAdapter} ${props.index + 1}`
135
+
136
+ return `${localization.value.common.newNetwork} *`
137
+ })
138
+
139
+ const removeNetwork = (): void => {
140
+ emits('remove')
141
+ }
142
+
143
+ const selectedLocationOld = ref<string>('')
144
+ const selectedLocation = ref<string>('')
145
+ const locationOptions = ref<UI_I_OptionItem[]>([])
146
+
147
+ const getNetworks = (): void => {
148
+ // if (props.networksTable.length) return // Из-за этого кода был баг. Открыть визард вм -> создать сеть -> открыть визард вм и в списке сетей нету новой сети
149
+
150
+ const payload: UI_I_TablePayload = {
151
+ pagination: {
152
+ page: 1,
153
+ pageSize: 100,
154
+ },
155
+ schema: 'full',
156
+ type: 'network',
157
+ sortBy: null,
158
+ }
159
+ emits('get-networks-table', payload)
160
+ }
161
+ getNetworks()
162
+
163
+ const valueProp: 'net_bridge' | 'id' =
164
+ props.project === 'procurator' ? 'net_bridge' : 'id'
165
+ watch(
166
+ () => props.networksTable,
167
+ (newValue) => {
168
+ const isExistValue = newValue.some(
169
+ (network) => network[valueProp] === selectedLocation.value
170
+ )
171
+ if (!newValue.length || props.type === 'edit' || isExistValue) return
172
+
173
+ selectedLocationOld.value = newValue[0][valueProp]
174
+ selectedLocation.value = newValue[0][valueProp]
175
+
176
+ locationOptions.value = [
177
+ { text: newValue[0].name, value: newValue[0][valueProp] },
178
+ { text: `${localization.value.common.browse}...`, value: '' },
179
+ ]
180
+ },
181
+ { immediate: true }
182
+ )
183
+
184
+ const locationModalIsShow = ref<boolean>(false)
185
+ const onHideLocationModal = (): void => {
186
+ locationModalIsShow.value = false
187
+ selectedLocation.value = selectedLocationOld.value
188
+ }
189
+ const changeLocation = (event: UI_I_HTMLSelectElement): void => {
190
+ const value = event.target.value
191
+ if (value === '') {
192
+ locationModalIsShow.value = true
193
+ return
194
+ }
195
+
196
+ selectedLocationOld.value = value
197
+ selectedLocation.value = value
198
+ // netBridge.value = value
199
+ }
200
+ const onSelectLocation = (network: UI_I_NetworkTableItem): void => {
201
+ locationModalIsShow.value = false
202
+
203
+ selectedLocationOld.value = network[valueProp]
204
+ selectedLocation.value = network[valueProp]
205
+
206
+ const hasNetwork = locationOptions.value.some(
207
+ (option) => option.value === network[valueProp]
208
+ )
209
+ if (hasNetwork) {
210
+ return
211
+ }
212
+
213
+ locationOptions.value = [
214
+ ...locationOptions.value.slice(0, -1),
215
+ { text: network.name, value: network[valueProp] },
216
+ locationOptions.value[locationOptions.value.length - 1],
217
+ ]
218
+ }
219
+
220
+ const adapterType = ref<string>('rtl8139')
221
+
222
+ const target = ref<string>('')
223
+
224
+ const macAddress = ref<string>('')
225
+ const macAddressType = ref<string>('automatic')
226
+ const newNetworkInvalid = ref<boolean>(false)
227
+ watch(
228
+ newNetworkInvalid,
229
+ (newValue) => {
230
+ emits('invalid', newValue)
231
+ },
232
+ { immediate: true }
233
+ )
234
+
235
+ watch(
236
+ [selectedLocation, adapterType, macAddress, macAddressType, locationOptions],
237
+ () => {
238
+ const option = locationOptions.value.find(
239
+ (option) => option.value === selectedLocation.value
240
+ )
241
+ if (!option) return
242
+
243
+ emits('send-data', {
244
+ network: option.text,
245
+ net_bridge: props.project === 'procurator' ? option.value : '',
246
+ target: target.value,
247
+ model: adapterType.value,
248
+ mac: macAddress.value,
249
+ boot_order: props.network.boot_order,
250
+ })
251
+ },
252
+ { immediate: true }
253
+ )
254
+
255
+ // Добавляем данные для редактирования
256
+ watch(
257
+ () => props.network,
258
+ (newValue) => {
259
+ if (props.type !== 'edit') return
260
+
261
+ locationOptions.value = [
262
+ { text: newValue.network, value: newValue[valueProp] },
263
+ { text: `${localization.value.common.browse}...`, value: '' },
264
+ ]
265
+ selectedLocation.value = newValue[valueProp]
266
+
267
+ adapterType.value = newValue.model
268
+ macAddress.value = newValue.mac
269
+ target.value = newValue.target
270
+ },
271
+ { immediate: true }
272
+ )
273
+
274
+ watch(
275
+ isRunning,
276
+ (newValue) => {
277
+ if (newValue && props.type === 'new') {
278
+ adapterType.value = 'virtio'
279
+ }
280
+ },
281
+ { immediate: true }
282
+ )
283
+
284
+ const typeError = computed<string>(
285
+ () => `network_devices[${props.index}].network`
286
+ )
287
+
288
+ const apiError = computed<string>(() => {
289
+ return (
290
+ props.errorValidationFields?.find(
291
+ (message) => message.field === typeError.value
292
+ )?.error_message || ''
293
+ )
294
+ })
295
+
296
+ const onRemoveValidationError = (): void => {
297
+ emits('remove-error-by-title', typeError.value)
298
+ }
299
+ </script>
300
+
301
+ <style scoped lang="scss">
302
+ #network-connect {
303
+ margin-right: 4px;
304
+ }
305
+ </style>
@@ -0,0 +1,87 @@
1
+ <template>
2
+ <div class="">
3
+ <atoms-stack-block :has-children="false">
4
+ <template #stackBlockKey>
5
+ {{ localization.common.adapterType }}
6
+ </template>
7
+ <template #stackBlockContent>
8
+ <atoms-tooltip-error
9
+ :has-error="!!apiError"
10
+ :selector="`.vm-wizard-network-model-field-${props.index}`"
11
+ @remove="onRemoveValidationError"
12
+ >
13
+ <template #elem>
14
+ <div class="select">
15
+ <select
16
+ :id="`vm-wizard-network-model-field-${props.index}`"
17
+ v-model="adapterTypeLocal"
18
+ :data-id="`vm-wizard-network-model-field-${props.index}`"
19
+ :class="`vm-wizard-network-model-field-${props.index}`"
20
+ :disabled="props.disabled"
21
+ >
22
+ <option
23
+ v-for="(item, key) in adapterTypeOptions"
24
+ :key="key"
25
+ :value="item.value"
26
+ :disabled="item.disabled"
27
+ >
28
+ {{ item.text }}
29
+ </option>
30
+ </select>
31
+ </div>
32
+ </template>
33
+ <template #content>{{ apiError }}</template>
34
+ </atoms-tooltip-error>
35
+ </template>
36
+ </atoms-stack-block>
37
+ </div>
38
+ </template>
39
+
40
+ <script setup lang="ts">
41
+ import type { UI_I_ErrorValidationField } from '~/lib/models/store/interfaces'
42
+ import type { UI_I_Localization } from '~/lib/models/interfaces'
43
+ import type { UI_I_OptionItem } from '~/components/atoms/lib/models/interfaces'
44
+ import { adapterTypeOptionsConfig } from '~/components/common/vm/actions/common/customizeHardware/virtualHardware/newNetwork/adapterType/lib/config/options'
45
+
46
+ const localization = computed<UI_I_Localization>(() => useLocal())
47
+
48
+ const props = defineProps<{
49
+ adapterType: string
50
+ index: number
51
+ disabled: boolean
52
+ errorValidationFields: UI_I_ErrorValidationField[]
53
+ }>()
54
+ const emits = defineEmits<{
55
+ (event: 'update:adapter-type', value: string): void
56
+ (event: 'remove-error-by-title', value: string): void
57
+ }>()
58
+
59
+ const adapterTypeOptions = ref<UI_I_OptionItem[]>(adapterTypeOptionsConfig)
60
+
61
+ const adapterTypeLocal = computed<string>({
62
+ get() {
63
+ return props.adapterType
64
+ },
65
+ set(newValue) {
66
+ emits('update:adapter-type', newValue)
67
+ },
68
+ })
69
+
70
+ const typeError = computed<string>(
71
+ () => `network_devices[${props.index}].model`
72
+ )
73
+
74
+ const apiError = computed<string>(() => {
75
+ return (
76
+ props.errorValidationFields?.find(
77
+ (message) => message.field === typeError.value
78
+ )?.error_message || ''
79
+ )
80
+ })
81
+
82
+ const onRemoveValidationError = (): void => {
83
+ emits('remove-error-by-title', typeError.value)
84
+ }
85
+ </script>
86
+
87
+ <style scoped></style>
@@ -0,0 +1,9 @@
1
+ import type { UI_I_OptionItem } from '~/components/atoms/lib/models/interfaces'
2
+
3
+ export const adapterTypeOptionsConfig: UI_I_OptionItem[] = [
4
+ { text: 'Paravirtual', value: 'virtio' },
5
+ { text: 'E1000', value: 'e1000' },
6
+ { text: 'RTL8139', value: 'rtl8139' },
7
+ { text: 'VMXNET 3', value: 'vmxnet3' },
8
+ { text: 'SR-IOV passthrough', value: '', disabled: true },
9
+ ]
@@ -0,0 +1,148 @@
1
+ <template>
2
+ <div>
3
+ <atoms-stack-block :has-children="false">
4
+ <template #stackBlockKey>
5
+ {{ localization.common.macAddress }}
6
+ </template>
7
+ <template #stackBlockContent>
8
+ <div class="flex-align-center">
9
+ <atoms-tooltip-error
10
+ :has-error="!!macAddressLocalAndApiErrorsTexts"
11
+ :selector="`.vm-wizard-network-mac-address-field-${props.index}`"
12
+ @remove="onRemoveValidationError"
13
+ >
14
+ <template #elem>
15
+ <input
16
+ :id="`vm-wizard-network-mac-address-field-${props.index}`"
17
+ type="text"
18
+ :value="props.macAddress"
19
+ :data-id="`vm-wizard-network-mac-address-field-${props.index}`"
20
+ :disabled="
21
+ props.macAddressType === 'automatic' || props.disabled
22
+ "
23
+ :class="[
24
+ `vm-wizard-network-mac-address-field-${props.index}`,
25
+ { 'has-error': macAddressLocalErrorText },
26
+ ]"
27
+ @input="onChangeMacAddress"
28
+ />
29
+ </template>
30
+ <template #content>
31
+ {{ macAddressLocalAndApiErrorsTexts }}
32
+ </template>
33
+ </atoms-tooltip-error>
34
+
35
+ <div class="select">
36
+ <select
37
+ :id="`mac-address-select-${props.index}`"
38
+ :value="props.macAddressType"
39
+ :data-id="`mac-address-select-${props.index}`"
40
+ :disabled="props.disabled"
41
+ @change="onChangeMacAddressType"
42
+ >
43
+ <option
44
+ v-for="(item, key) in macAddressOptions"
45
+ :key="key"
46
+ :value="item.value"
47
+ >
48
+ {{ item.text }}
49
+ </option>
50
+ </select>
51
+ </div>
52
+ </div>
53
+ </template>
54
+ </atoms-stack-block>
55
+ </div>
56
+ </template>
57
+
58
+ <script setup lang="ts">
59
+ import type {
60
+ UI_I_Localization,
61
+ UI_I_HTMLSelectElement,
62
+ } from '~/lib/models/interfaces'
63
+ import type { UI_I_OptionItem } from '~/components/atoms/lib/models/interfaces'
64
+ import type { UI_I_ErrorValidationField } from '~/lib/models/store/interfaces'
65
+ import { macAddressOptionsFunc } from '~/components/common/vm/actions/common/customizeHardware/virtualHardware/newNetwork/macAddress/lib/config/options'
66
+
67
+ const localization = computed<UI_I_Localization>(() => useLocal())
68
+
69
+ const props = defineProps<{
70
+ macAddressType: string
71
+ macAddress: string
72
+ index: number
73
+ disabled: boolean
74
+ errorValidationFields: UI_I_ErrorValidationField[]
75
+ }>()
76
+ const emits = defineEmits<{
77
+ (event: 'update:mac-address', value: string): void
78
+ (event: 'update:mac-address-type', value: string): void
79
+ (event: 'invalid', value: boolean): void
80
+ (event: 'remove-error-by-title', value: string): void
81
+ }>()
82
+
83
+ const macAddressOptions = ref<UI_I_OptionItem[]>(
84
+ macAddressOptionsFunc(localization.value)
85
+ )
86
+
87
+ const onChangeMacAddressType = (event: UI_I_HTMLSelectElement): void => {
88
+ emits('update:mac-address-type', event.target.value)
89
+ emits(
90
+ 'update:mac-address',
91
+ event.target.value === 'manual' ? '00:50:56:' : ''
92
+ )
93
+ }
94
+ const onChangeMacAddress = (event: Event): void => {
95
+ const target = event.target as HTMLInputElement
96
+ emits('update:mac-address', target.value)
97
+ }
98
+
99
+ const macAddressLocalErrorText = computed<string>(() => {
100
+ /* eslint-disable no-useless-escape */
101
+ const isValidMacAddress =
102
+ /^[0-9a-f]{1,2}([\.:-])(?:[0-9a-f]{1,2}\1){4}[0-9a-f]{1,2}$/.test(
103
+ props.macAddress
104
+ )
105
+
106
+ return props.macAddressType === 'manual' && !isValidMacAddress
107
+ ? localization.value.common.invalidMacAddress
108
+ : ''
109
+ })
110
+ watch(macAddressLocalErrorText, (text) => {
111
+ emits('invalid', !!text.length)
112
+ })
113
+
114
+ const typeError = computed<string>(
115
+ () => `network_devices[${props.index}].mac_address`
116
+ )
117
+
118
+ const apiErrorLocal = computed<string>(() => {
119
+ return (
120
+ props.errorValidationFields?.find(
121
+ (message) => message.field === typeError.value
122
+ )?.error_message || ''
123
+ )
124
+ })
125
+
126
+ const macAddressLocalAndApiErrorsTexts = computed<string>(() => {
127
+ const localError = macAddressLocalErrorText.value
128
+ const apiError = apiErrorLocal.value
129
+
130
+ let result = ''
131
+ if (localError && !apiError) result = localError
132
+ if (!localError && apiError) result = apiError
133
+ if (localError && apiError) result = localError + ', ' + apiError
134
+ if (!localError && apiError) result = apiError
135
+
136
+ return result
137
+ })
138
+
139
+ const onRemoveValidationError = (): void => {
140
+ emits('remove-error-by-title', typeError.value)
141
+ }
142
+ </script>
143
+
144
+ <style scoped lang="scss">
145
+ .has-error {
146
+ border: 1px solid #db2100;
147
+ }
148
+ </style>