bfg-common 1.5.774 → 1.5.775

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 (298) hide show
  1. package/assets/img/icons/icons-sprite-dark-1.svg +3 -2
  2. package/assets/img/icons/icons-sprite-light-1.svg +4 -3
  3. package/assets/localization/local_be.json +27 -165
  4. package/assets/localization/local_en.json +27 -165
  5. package/assets/localization/local_hy.json +26 -164
  6. package/assets/localization/local_kk.json +26 -164
  7. package/assets/localization/local_ru.json +33 -171
  8. package/assets/localization/local_zh.json +26 -164
  9. package/assets/scss/common/global.scss +5 -5
  10. package/assets/scss/common/icons/icons-1.scss +1 -1
  11. package/assets/scss/common/icons/icons-2.scss +0 -18
  12. package/assets/scss/common/theme.scss +0 -2
  13. package/assets/scss/components/auth.scss +5 -32
  14. package/components/atoms/dropdown/tree/Tree.vue +0 -2
  15. package/components/atoms/nav/NavBar.vue +0 -1
  16. package/components/atoms/switch/Switch.vue +1 -7
  17. package/components/atoms/table/dataGrid/DataGrid.vue +20 -36
  18. package/components/atoms/wizard/Wizard.vue +1 -1
  19. package/components/common/backup/storage/actions/add/Old.vue +1 -22
  20. package/components/common/backup/storage/actions/add/lib/config/createDatastore.ts +1 -1
  21. package/components/common/backup/storage/actions/add/steps/typeMode/TypeModeOld.vue +48 -1
  22. package/components/common/backup/storage/actions/add/steps/typeMode/lib/config/typeOptions.ts +20 -20
  23. package/components/common/backup/storage/actions/delete/Delete.vue +15 -37
  24. package/components/common/diagramMain/Header.vue +0 -4
  25. package/components/common/diagramMain/lib/models/interfaces.ts +0 -2
  26. package/components/common/diagramMain/modals/viewSettings/info/Info.vue +1 -5
  27. package/components/common/diagramMain/modals/viewSettings/info/InfoOld.vue +0 -16
  28. package/components/common/graph/graphNew/EmptyBlock.vue +1 -2
  29. package/components/common/help/navbar/left/lib/utils/constructAccordion.ts +1 -2
  30. package/components/common/help/navbar/right/Right.vue +23 -86
  31. package/components/common/layout/theHeader/TheHeader.vue +81 -44
  32. package/components/common/layout/theHeader/{New.vue → TheHeaderNew.vue} +26 -14
  33. package/components/common/layout/theHeader/{Old.vue → TheHeaderOld.vue} +21 -13
  34. package/components/common/layout/theHeader/ThemeSwitch.vue +18 -8
  35. package/components/common/layout/theHeader/feedback/new/email/Email.vue +2 -2
  36. package/components/common/layout/theHeader/helpMenu/{about/About.vue → About.vue} +22 -12
  37. package/components/common/layout/theHeader/helpMenu/HelpMenu.vue +8 -6
  38. package/components/common/layout/theHeader/helpMenu/{about/New.vue → aboutNew/AboutNew.vue} +4 -5
  39. package/components/common/layout/theHeader/helpMenu/aboutOld/AboutOld.vue +79 -0
  40. package/components/common/layout/theHeader/helpMenu/{new/New.vue → helpMenuNew/HelpMenuNew.vue} +1 -1
  41. package/components/common/layout/theHeader/helpMenu/{new → helpMenuNew}/lib/config/dropMenu.ts +1 -1
  42. package/components/common/layout/theHeader/helpMenu/{old/Old.vue → helpMenuOld/HelpMenuOld.vue} +2 -2
  43. package/components/common/layout/theHeader/helpMenu/{old → helpMenuOld}/lib/config/dropMenu.ts +1 -1
  44. package/components/common/layout/theHeader/modals/reconnect/Reconnect.vue +11 -11
  45. package/components/common/layout/theHeader/modals/reconnect/{New.vue → ReconnectNew.vue} +1 -1
  46. package/components/common/layout/theHeader/modals/reconnect/{Old.vue → ReconnectOld.vue} +0 -2
  47. package/components/common/layout/theHeader/userMenu/UserMenu.vue +28 -21
  48. package/components/common/layout/theHeader/userMenu/modals/changePassword/ChangePassword.vue +21 -12
  49. package/components/common/layout/theHeader/userMenu/modals/changePassword/New.vue +43 -36
  50. package/components/common/layout/theHeader/userMenu/modals/changePassword/Old.vue +2 -0
  51. package/components/common/layout/theHeader/userMenu/modals/changePassword/lib/utils.ts +3 -3
  52. package/components/common/layout/theHeader/userMenu/modals/preferences/Preferences.vue +44 -19
  53. package/components/common/layout/theHeader/userMenu/modals/preferences/{New.vue → PreferencesNew.vue} +16 -24
  54. package/components/common/layout/theHeader/userMenu/modals/preferences/{Old.vue → PreferencesOld.vue} +18 -10
  55. package/components/common/layout/theHeader/userMenu/modals/preferences/changeLanguage/ChangeLanguage.vue +18 -17
  56. package/components/common/layout/theHeader/userMenu/modals/preferences/changeLanguage/{New.vue → ChangeLanguageNew.vue} +30 -6
  57. package/components/common/layout/theHeader/userMenu/modals/preferences/changeLanguage/{Old.vue → ChangeLanguageOld.vue} +30 -5
  58. package/components/common/layout/theHeader/userMenu/modals/preferences/defaultConsole/DefaultConsole.vue +20 -8
  59. package/components/common/layout/theHeader/userMenu/modals/preferences/defaultConsole/{New.vue → DefaultConsoleNew.vue} +3 -3
  60. package/components/common/layout/theHeader/userMenu/modals/preferences/defaultConsole/{Old.vue → DefaultConsoleOld.vue} +2 -2
  61. package/components/common/layout/theHeader/userMenu/modals/preferences/inventory/Inventory.vue +21 -7
  62. package/components/common/layout/theHeader/userMenu/modals/preferences/inventory/{New.vue → InventoryNew.vue} +2 -3
  63. package/components/common/layout/theHeader/userMenu/modals/preferences/inventory/{Old.vue → InventoryOld.vue} +2 -2
  64. package/components/common/layout/theHeader/userMenu/modals/preferences/security/New.vue +12 -277
  65. package/components/common/layout/theHeader/userMenu/modals/preferences/security/Old.vue +56 -30
  66. package/components/common/layout/theHeader/userMenu/modals/preferences/security/Security.vue +6 -65
  67. package/components/common/layout/theHeader/userMenu/modals/preferences/timeFormat/TimeFormat.vue +22 -9
  68. package/components/common/layout/theHeader/userMenu/modals/preferences/timeFormat/{New.vue → TimeFormatNew.vue} +3 -3
  69. package/components/common/layout/theHeader/userMenu/modals/preferences/timeFormat/{Old.vue → TimeFormatOld.vue} +2 -2
  70. package/components/common/layout/theHeader/userMenu/modals/preferences/view/View.vue +22 -13
  71. package/components/common/layout/theHeader/userMenu/modals/preferences/view/{New.vue → ViewNew.vue} +38 -64
  72. package/components/common/layout/theHeader/userMenu/modals/preferences/view/{Old.vue → ViewOld.vue} +2 -21
  73. package/components/common/layout/theHeader/userMenu/{new/New.vue → userMenuNew/UserMenuNew.vue} +1 -1
  74. package/components/common/layout/theHeader/userMenu/{old/Old.vue → userMenuOld/UserMenuOld.vue} +2 -2
  75. package/components/common/layout/theHeader/userMenu/{old → userMenuOld}/lib/config/dropMenu.ts +1 -1
  76. package/components/common/monitor/advanced/graphView/GraphView.vue +0 -8
  77. package/components/common/monitor/advanced/tools/Tools.vue +1 -5
  78. package/components/common/monitor/overview/OverviewNew.vue +1 -1
  79. package/components/common/pages/backups/backupsNew/BackupsNew.vue +19 -107
  80. package/components/common/pages/backups/backupsNew/contextMenuView/ContextMenuView.vue +10 -16
  81. package/components/common/pages/backups/modals/createBackup/CreateBackup.vue +10 -6
  82. package/components/common/pages/backups/modals/createBackup/New.vue +9 -22
  83. package/components/common/pages/backups/modals/createBackup/Old.vue +10 -8
  84. package/components/common/pages/backups/modals/createBackup/configuration/ConfigurationNew.vue +3 -17
  85. package/components/common/pages/backups/modals/createBackup/datastores/Datastores.vue +0 -6
  86. package/components/common/pages/backups/modals/createBackup/datastores/DatastoresOld.vue +2 -22
  87. package/components/common/pages/backups/modals/createBackup/datastores/tableView/new/lib/config/table.ts +8 -8
  88. package/components/common/pages/backups/modals/createBackup/disks/Disks.vue +0 -6
  89. package/components/common/pages/backups/modals/createBackup/disks/DisksOld.vue +1 -22
  90. package/components/common/pages/backups/modals/createBackup/disks/tableView/new/TableView.vue +1 -1
  91. package/components/common/pages/backups/modals/createBackup/disks/tableView/new/lib/config/table.ts +7 -7
  92. package/components/common/pages/backups/modals/createBackup/general/General.vue +1 -7
  93. package/components/common/pages/backups/modals/createBackup/general/GeneralNew.vue +1 -1
  94. package/components/common/pages/backups/modals/createBackup/general/GeneralOld.vue +0 -17
  95. package/components/common/pages/backups/modals/createBackup/lib/config/readyToCompleteOptions.ts +5 -5
  96. package/components/common/pages/backups/modals/createBackup/lib/config/steps.ts +1 -1
  97. package/components/common/pages/backups/modals/createBackup/lib/config/strategyOptions.ts +2 -11
  98. package/components/common/pages/backups/modals/createBackup/lib/validation/validations.ts +14 -6
  99. package/components/common/pages/backups/modals/deleteBackup/DeleteBackup.vue +0 -1
  100. package/components/common/pages/backups/modals/lib/config/restore.ts +115 -116
  101. package/components/common/pages/backups/modals/lib/models/interfaces.ts +186 -187
  102. package/components/common/pages/backups/modals/restore/Restore.vue +303 -302
  103. package/components/common/pages/backups/modals/restore/{Old.vue → RestoreOld.vue} +0 -5
  104. package/components/common/pages/backups/modals/restore/disks/Disks.vue +32 -50
  105. package/components/common/pages/backups/modals/restore/disks/DisksNew.vue +2 -2
  106. package/components/common/pages/backups/modals/restore/disks/DisksOld.vue +2 -2
  107. package/components/common/pages/backups/modals/restore/lib/config/readyToCompleteOptions.ts +62 -94
  108. package/components/common/pages/backups/modals/restore/lib/config/restoreCodes.ts +1 -1
  109. package/components/common/pages/backups/modals/restore/lib/config/steps.ts +108 -130
  110. package/components/common/pages/backups/modals/restore/types/Types.vue +19 -31
  111. package/components/common/pages/backups/modals/restore/types/{New.vue → TypesNew.vue} +95 -95
  112. package/components/common/pages/backups/modals/restore/types/{Old.vue → TypesOld.vue} +61 -62
  113. package/components/common/pages/backups/modals/restore/types/lib/config/descriptions.ts +0 -1
  114. package/components/common/pages/hardwareHealth/historyTestimony/tools/Tools.vue +2 -7
  115. package/components/common/pages/hardwareHealth/tableView/TableView.vue +0 -8
  116. package/components/common/pages/hardwareHealth/tableView/lib/config/sensorTable.ts +1 -13
  117. package/components/common/pages/hardwareHealth/toolsPanel/lib/config/actionsPanel.ts +4 -4
  118. package/components/common/pages/home/widgets/warnings/lib/config/config.ts +2 -2
  119. package/components/common/pages/home/widgets/warnings/table/lib/config/config.ts +2 -2
  120. package/components/common/pages/home/widgets/warnings/table/lib/models/enums.ts +12 -0
  121. package/components/common/pages/scheduledTasks/table/Table.vue +11 -3
  122. package/components/common/pages/scheduledTasks/table/{expandDetails/Old.vue → detailsList/DetailsList.vue} +4 -7
  123. package/components/common/pages/scheduledTasks/table/{expandDetails/historyRun/HistoryRun.vue → detailsList/Table.vue} +5 -9
  124. package/components/common/pages/scheduledTasks/table/{expandDetails/historyRun → detailsList}/lib/config/historyRunsTable.ts +2 -4
  125. package/components/common/pages/scheduledTasks/table/{expandDetails/historyRun → detailsList}/lib/config/tableKeys.ts +1 -1
  126. package/components/common/pages/scheduledTasks/table/{expandDetails/lib/config/expandDetails.ts → detailsList/lib/config/tasksRowDetails.ts} +1 -3
  127. package/components/common/pages/scheduledTasks/table/lib/config/scheduledTasksTable.ts +0 -3
  128. package/components/common/pages/tasks/Tasks.vue +122 -125
  129. package/components/common/pages/tasks/table/Table.vue +370 -373
  130. package/components/common/pages/tasks/table/expandDetails/ExpandDetails.vue +1 -1
  131. package/components/common/pages/tasks/table/lib/config/config.ts +270 -279
  132. package/components/common/qrcode/Qrcode.vue +56 -0
  133. package/components/common/selectLanguage/SelectLanguage.vue +5 -5
  134. package/components/common/split/horizontal/New.vue +2 -0
  135. package/components/common/split/vertical/New.vue +1 -2
  136. package/components/common/vm/actions/add/New.vue +11 -13
  137. package/components/common/vm/actions/add/Old.vue +1 -1
  138. package/components/common/vm/actions/clone/old/Old.vue +0 -1
  139. package/components/common/vm/actions/common/customizeHardware/virtualHardware/New.vue +36 -12
  140. package/components/common/vm/actions/common/customizeHardware/virtualHardware/Old.vue +37 -15
  141. package/components/common/vm/actions/common/customizeHardware/virtualHardware/VirtualHardware.vue +50 -50
  142. package/components/common/vm/actions/common/customizeHardware/virtualHardware/cpu/coresPerSocket/CoresPerSocket.vue +3 -3
  143. package/components/common/vm/actions/common/customizeHardware/virtualHardware/lib/models/interfaces.ts +1 -3
  144. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newHardDisk/NewHardDisk.vue +7 -13
  145. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newPciDevice/New.vue +4 -7
  146. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newPciDevice/NewPciDevice.vue +45 -52
  147. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newPciDevice/Old.vue +8 -5
  148. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newPciDevice/directPathIo/DirectPathIo.vue +3 -1
  149. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newPciDevice/directPathIo/New.vue +2 -2
  150. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newPciDevice/directPathIo/Old.vue +2 -2
  151. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newPciDevice/dynamicDirectPathIo/DynamicDirectPathIo.vue +1 -1
  152. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newPciDevice/dynamicDirectPathIo/New.vue +2 -1
  153. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newPciDevice/dynamicDirectPathIo/Old.vue +2 -1
  154. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newPciDevice/nvidiaGrid/New.vue +1 -1
  155. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newPciDevice/nvidiaGrid/NvidiaGrid.vue +1 -1
  156. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newPciDevice/nvidiaGrid/Old.vue +1 -1
  157. package/components/common/vm/actions/common/customizeHardware/vmoptions/New.vue +2 -2
  158. package/components/common/vm/actions/common/select/compatibility/New.vue +1 -0
  159. package/components/common/vm/actions/common/select/options/Old.vue +2 -1
  160. package/components/common/vm/actions/common/select/storage/new/New.vue +1 -1
  161. package/components/common/wizards/common/compatibility/New.vue +1 -1
  162. package/components/common/wizards/common/compatibility/Old.vue +1 -1
  163. package/components/common/wizards/common/steps/computeResource/New.vue +1 -9
  164. package/components/common/wizards/datastore/add/Add.vue +228 -227
  165. package/components/common/wizards/datastore/add/Old.vue +0 -16
  166. package/components/common/wizards/datastore/add/lib/config/createDatastore.ts +0 -1
  167. package/components/common/wizards/datastore/add/lib/models/interfaces.ts +0 -1
  168. package/components/common/wizards/datastore/add/steps/nameAndDevice/NameAndDeviceNew.vue +0 -5
  169. package/components/common/wizards/datastore/add/steps/nameAndDevice/NameAndDeviceOld.vue +0 -5
  170. package/components/common/wizards/datastore/add/steps/nameAndDevice/table/old/Old.vue +3 -2
  171. package/components/common/wizards/datastore/add/steps/readyComplete/lib/config/propertiesDetails.ts +1 -8
  172. package/components/common/wizards/datastore/add/steps/typeMode/TypeModeOld.vue +48 -1
  173. package/components/common/wizards/network/add/Add.vue +5 -28
  174. package/components/common/wizards/network/add/lib/config/config.ts +1 -1
  175. package/components/common/wizards/network/add/lib/config/initialData.ts +3 -6
  176. package/components/common/wizards/network/add/lib/config/selectConnectionTypeStep.ts +0 -1
  177. package/components/common/wizards/network/add/steps/portProperties/PortProperties.vue +192 -192
  178. package/components/common/wizards/network/add/steps/selectTargetDevice/SelectTargetDeviceNew.vue +1 -2
  179. package/components/common/wizards/network/add/steps/selectTargetDevice/SelectTargetDeviceOld.vue +6 -18
  180. package/components/common/wizards/vm/migrate/lib/models/enums.ts +2 -2
  181. package/components/common/wizards/vm/migrate/steps/computeResource/tableView/old/lib/config/hostTable.ts +1 -1
  182. package/components/common/wizards/vm/migrate/steps/selectStorage/SelectStorage.vue +4 -4
  183. package/components/common/wizards/vm/migrate/steps/selectStorage/configure/disk/table/new/lib/config/diskTable.ts +2 -6
  184. package/components/common/wizards/vm/migrate/steps/selectStorage/configure/disk/table/old/lib/config/diskTable.ts +13 -29
  185. package/composables/deepCopy.ts +21 -0
  186. package/composables/useEnvLanguage.ts +8 -7
  187. package/composables/useUniqueId.ts +5 -0
  188. package/lib/config/regExp.ts +1 -1
  189. package/lib/models/enums.ts +0 -28
  190. package/lib/models/interfaces.ts +0 -2
  191. package/lib/models/types.ts +60 -59
  192. package/lib/utils/localizationMapper.ts +2 -1
  193. package/package.json +4 -3
  194. package/plugins/date.ts +37 -14
  195. package/plugins/validation.ts +6 -6
  196. package/store/main/getters.ts +2 -2
  197. package/store/tasks/actions.ts +1 -1
  198. package/store/tasks/mappers/tasks.ts +1 -8
  199. package/components/common/backup/storage/actions/add/steps/typeMode/tooltip/Tooltip.vue +0 -33
  200. package/components/common/certificate/Certificate.vue +0 -27
  201. package/components/common/certificate/CertificateInfo.vue +0 -139
  202. package/components/common/certificate/Tools.vue +0 -59
  203. package/components/common/certificate/lib/config/tabsPannel.ts +0 -22
  204. package/components/common/certificate/lib/models/interfaces.ts +0 -9
  205. package/components/common/certificate/lib/models/types.ts +0 -1
  206. package/components/common/certificate/modals/renew/New.vue +0 -64
  207. package/components/common/certificate/modals/renew/Old.vue +0 -122
  208. package/components/common/certificate/modals/renew/Renew.vue +0 -67
  209. package/components/common/configure/advancedSystemSettings/AdvancedSystemSettings.vue +0 -49
  210. package/components/common/configure/advancedSystemSettings/modals/edit/Edit.vue +0 -55
  211. package/components/common/configure/advancedSystemSettings/modals/edit/New.vue +0 -37
  212. package/components/common/configure/advancedSystemSettings/modals/edit/Old.vue +0 -46
  213. package/components/common/configure/advancedSystemSettings/tableView/TableView.vue +0 -30
  214. package/components/common/configure/advancedSystemSettings/tableView/new/New.vue +0 -193
  215. package/components/common/configure/advancedSystemSettings/tableView/new/lib/config/hostTable.ts +0 -308
  216. package/components/common/configure/advancedSystemSettings/tableView/old/Old.vue +0 -128
  217. package/components/common/configure/advancedSystemSettings/tableView/old/lib/config/table.ts +0 -93
  218. package/components/common/configure/advancedSystemSettings/tableView/old/lib/config/tableKeys.ts +0 -9
  219. package/components/common/configure/advancedSystemSettings/tableView/old/lib/models/types.ts +0 -5
  220. package/components/common/configure/advancedSystemSettings/tools/New.vue +0 -5
  221. package/components/common/configure/advancedSystemSettings/tools/Old.vue +0 -28
  222. package/components/common/configure/advancedSystemSettings/tools/Tools.vue +0 -28
  223. package/components/common/configure/securityProfile/SecurityProfile.vue +0 -28
  224. package/components/common/configure/securityProfile/lockdownMode/LockdownMode.vue +0 -112
  225. package/components/common/configure/securityProfile/lockdownMode/lib/utils/constructData.ts +0 -27
  226. package/components/common/configure/securityProfile/lockdownMode/modals/lockdownModeEdit/LockdownModeEdit.vue +0 -61
  227. package/components/common/configure/securityProfile/lockdownMode/modals/lockdownModeEdit/New.vue +0 -5
  228. package/components/common/configure/securityProfile/lockdownMode/modals/lockdownModeEdit/Old.vue +0 -109
  229. package/components/common/configure/securityProfile/lockdownMode/modals/lockdownModeEdit/exceptionUsers/ExceptionUsers.vue +0 -28
  230. package/components/common/configure/securityProfile/lockdownMode/modals/lockdownModeEdit/exceptionUsers/New.vue +0 -5
  231. package/components/common/configure/securityProfile/lockdownMode/modals/lockdownModeEdit/exceptionUsers/old/Old.vue +0 -180
  232. package/components/common/configure/securityProfile/lockdownMode/modals/lockdownModeEdit/exceptionUsers/old/lib/config/table.ts +0 -64
  233. package/components/common/configure/securityProfile/lockdownMode/modals/lockdownModeEdit/exceptionUsers/old/lib/config/tableKeys.ts +0 -6
  234. package/components/common/configure/securityProfile/lockdownMode/modals/lockdownModeEdit/exceptionUsers/old/lib/models/types.ts +0 -1
  235. package/components/common/configure/securityProfile/lockdownMode/modals/lockdownModeEdit/lib/config/tabs.ts +0 -19
  236. package/components/common/configure/securityProfile/lockdownMode/modals/lockdownModeEdit/lockdownMode/LockdownMode.vue +0 -22
  237. package/components/common/configure/securityProfile/lockdownMode/modals/lockdownModeEdit/lockdownMode/New.vue +0 -5
  238. package/components/common/configure/securityProfile/lockdownMode/modals/lockdownModeEdit/lockdownMode/Old.vue +0 -76
  239. package/components/common/configure/securityProfile/lockdownMode/tools/New.vue +0 -5
  240. package/components/common/configure/securityProfile/lockdownMode/tools/Old.vue +0 -30
  241. package/components/common/configure/securityProfile/lockdownMode/tools/Tools.vue +0 -29
  242. package/components/common/layout/console/Console.vue +0 -70
  243. package/components/common/layout/console/lib/models/interfaces.ts +0 -10
  244. package/components/common/layout/theHeader/helpMenu/about/Old.vue +0 -78
  245. package/components/common/pages/auth/TheFooter.vue +0 -104
  246. package/components/common/pages/backups/backupsNew/Skeleton.vue +0 -136
  247. package/components/common/pages/files/lib/models/enums.ts +0 -36
  248. package/components/common/pages/scheduledTasks/table/expandDetails/ExpandDetails.vue +0 -30
  249. package/components/common/pages/scheduledTasks/table/expandDetails/New.vue +0 -61
  250. package/components/common/pages/tasks/table/lib/models/interfaces.ts +0 -9
  251. package/components/common/qr/Qr.vue +0 -69
  252. package/components/common/vm/snapshots/DetailView.vue +0 -90
  253. package/components/common/vm/snapshots/Old.vue +0 -71
  254. package/components/common/vm/snapshots/Snapshots.vue +0 -82
  255. package/components/common/vm/snapshots/lib/models/interfaces.ts +0 -5
  256. package/components/common/vm/snapshots/lib/models/types.ts +0 -11
  257. package/components/common/vm/snapshots/modals/confirm/Confirm.vue +0 -48
  258. package/components/common/vm/snapshots/modals/confirm/New.vue +0 -128
  259. package/components/common/vm/snapshots/modals/confirm/Old.vue +0 -140
  260. package/components/common/vm/snapshots/modals/confirm/lib/models/enums.ts +0 -19
  261. package/components/common/vm/snapshots/modals/lib/config/modalTexts.ts +0 -30
  262. package/components/common/vm/snapshots/modals/takeOrEdit/Old.vue +0 -220
  263. package/components/common/vm/snapshots/modals/takeOrEdit/TakeOrEdit.vue +0 -51
  264. package/components/common/vm/snapshots/modals/takeOrEdit/new/New.vue +0 -184
  265. package/components/common/vm/snapshots/modals/takeOrEdit/new/lib/utils/getSnapshotsName.ts +0 -15
  266. package/components/common/vm/snapshots/new/New.vue +0 -471
  267. package/components/common/vm/snapshots/new/Skeleton.vue +0 -136
  268. package/components/common/vm/snapshots/new/contextMenuView/ContextMenuView.vue +0 -103
  269. package/components/common/vm/snapshots/new/contextMenuView/lib/config/contextMenuItems.ts +0 -34
  270. package/components/common/vm/snapshots/new/lib/models/interfaces.ts +0 -12
  271. package/components/common/vm/snapshots/new/lib/utils/contextMenu.ts +0 -29
  272. package/components/common/vm/snapshots/new/lib/utils/details.ts +0 -48
  273. package/components/common/vm/snapshots/tools/Tools.vue +0 -56
  274. package/components/common/vm/snapshots/tools/lib/config/tabsPannel.ts +0 -39
  275. package/components/common/wizards/datastore/add/steps/nameAndDevice/advancedOptions/AdvancedOptions.vue +0 -43
  276. package/components/common/wizards/datastore/add/steps/nameAndDevice/advancedOptions/New.vue +0 -114
  277. package/components/common/wizards/datastore/add/steps/nameAndDevice/advancedOptions/Old.vue +0 -114
  278. package/components/common/wizards/datastore/add/steps/typeMode/tooltip/Tooltip.vue +0 -33
  279. package/composables/useBrowse.ts +0 -24
  280. package/lib/models/composables/useBrowse/interfaces.ts +0 -4
  281. package/store/inventory/modules/configure/advancedSystemSettings/actions.ts +0 -122
  282. package/store/inventory/modules/configure/advancedSystemSettings/getters.ts +0 -9
  283. package/store/inventory/modules/configure/advancedSystemSettings/lib/models/interfaces.ts +0 -11
  284. package/store/inventory/modules/configure/advancedSystemSettings/mutations.ts +0 -12
  285. package/store/inventory/modules/configure/advancedSystemSettings/state.ts +0 -9
  286. package/store/inventory/modules/configure/advancedSystemSettings/store.ts +0 -12
  287. package/store/inventory/modules/configure/securityProfile/actions.ts +0 -58
  288. package/store/inventory/modules/configure/securityProfile/getters.ts +0 -10
  289. package/store/inventory/modules/configure/securityProfile/lib/models/interfaces.ts +0 -16
  290. package/store/inventory/modules/configure/securityProfile/mutations.ts +0 -13
  291. package/store/inventory/modules/configure/securityProfile/state.ts +0 -7
  292. package/store/inventory/modules/configure/securityProfile/store.ts +0 -12
  293. package/store/inventory/modules/snapshots/lib/models/interfaces.ts +0 -45
  294. /package/components/common/layout/theHeader/helpMenu/{old → helpMenuOld}/lib/models/types.ts +0 -0
  295. /package/components/common/layout/theHeader/userMenu/{new → userMenuNew}/lib/config/dropMenu.ts +0 -0
  296. /package/components/common/layout/theHeader/userMenu/{old → userMenuOld}/lib/models/types.ts +0 -0
  297. /package/components/common/pages/backups/modals/restore/{New.vue → RestoreNew.vue} +0 -0
  298. /package/components/common/pages/scheduledTasks/table/{expandDetails/historyRun → detailsList}/lib/models/types.ts +0 -0
@@ -73,8 +73,7 @@ const props = defineProps<{
73
73
  .gutter-vertical {
74
74
  position: relative;
75
75
  min-height: 4px;
76
- //background-color: var(--gutter-bg-color);
77
- background-color: var(--new-gutter-bg-color);
76
+ background-color: var(--gutter-bg-color);
78
77
  transition-delay: 0.25s;
79
78
  transition-duration: 0.25s;
80
79
  user-select: none;
@@ -52,18 +52,16 @@
52
52
  :sub-title-height="heightName"
53
53
  >
54
54
  <template #subTitle>
55
- <div ref="subTitleBlockName">
56
- <div class="subtitle-block">
57
- <div
58
- id="name-alert-wrapper"
59
- :class="[{ 'mb-4': !isNameAlertWrapperEmpty }]"
60
- ></div>
61
- <ui-wizard-subtitle
62
- :sub-title="
55
+ <div ref="subTitleBlockName" class="subtitle-block">
56
+ <div
57
+ id="name-alert-wrapper"
58
+ :class="[{ 'mb-4': !isNameAlertWrapperEmpty }]"
59
+ ></div>
60
+ <ui-wizard-subtitle
61
+ :sub-title="
63
62
  localization.vmWizard.specifyUniqueNameAndTargetLocationForVm
64
63
  "
65
- />
66
- </div>
64
+ />
67
65
  </div>
68
66
  </template>
69
67
  <template #content>
@@ -105,7 +103,7 @@
105
103
  test-id="computed-resource-alert"
106
104
  type="error"
107
105
  size="md"
108
- class="subtitle-block__alert mb-4"
106
+ class="subtitle-block__alert"
109
107
  />
110
108
  <ui-wizard-subtitle
111
109
  :sub-title="
@@ -177,7 +175,7 @@
177
175
  </template>
178
176
  <template #content>
179
177
  <common-vm-actions-common-select-options
180
- :is-new-vm-from-template="selectedCreateType === '1'"
178
+ :is-create-template="selectedCreateType === '1'"
181
179
  @change="emits('change-select-options', $event)"
182
180
  @change-count="emits('change-clone-count', $event)"
183
181
  />
@@ -239,7 +237,7 @@
239
237
  :error-validation-fields="props.errorValidationFields"
240
238
  @remove-error-by-title="emits('remove-error-by-title', $event)"
241
239
  />
242
- <div class="vm-hardware-version-wrap justify-end flex flex-1 mt-6">
240
+ <div class="vm-hardware-version-wrap justify-end flex flex-1 mt-7">
243
241
  <span class="vm-hardware-version">{{
244
242
  props.compatibilityInfo
245
243
  }}</span>
@@ -75,7 +75,7 @@
75
75
  selectedStep.id === dynamicSteps.selectOptions ||
76
76
  selectedStep.id === dynamicSteps.selectOptionsForDeployment
77
77
  "
78
- :is-new-vm-from-template="selectedCreateType === '1'"
78
+ :is-create-template="selectedCreateType === '1'"
79
79
  @change="emits('change-select-options', $event)"
80
80
  @change-count="emits('change-clone-count', $event)"
81
81
  />
@@ -5,7 +5,6 @@
5
5
  :selected-scheme="props.selectedScheme"
6
6
  :title="props.title"
7
7
  :localization="localization"
8
- test-id="clone-exist-vm"
9
8
  show
10
9
  @change-steps="emits('change-steps', $event)"
11
10
  @hide="emits('hide')"
@@ -105,7 +105,6 @@
105
105
  :index="props.hardDisksIndex[key]"
106
106
  :type="props.hardDisksType[key]"
107
107
  :main-storage="props.storage"
108
- :main-storage-free="props.storageFree"
109
108
  :error-validation-fields="props.errorValidationFields"
110
109
  :get-datastore-table-func="props.getDatastoreTableFunc"
111
110
  :datastore="props.datastore"
@@ -118,6 +117,12 @@
118
117
  emits('remove-hard-disk', [props.hardDisksIndex[key], item])
119
118
  "
120
119
  @roll-back="emits('roll-back-hard-disk', props.hardDisksIndex[key])"
120
+ @send-data="
121
+ emits('send-data-new-hard-disk-method', [
122
+ $event,
123
+ props.hardDisksIndex[key],
124
+ ])
125
+ "
121
126
  @invalid="
122
127
  emits('set-invalid-hard-disk', [
123
128
  $event,
@@ -261,21 +266,30 @@
261
266
  </div>
262
267
  <template v-if="props.passthroughDevices || props.mediatedDevices">
263
268
  <common-vm-actions-common-customize-hardware-virtual-hardware-new-pci-device
264
- v-for="(item, key) in model.passthrough_pci_devices"
265
- v-model:address="item.address"
266
- v-model:vendor_name="item.vendor_name"
267
- v-model:class_name="item.class_name"
268
- v-model:device_name="item.device_name"
269
- v-model:mediated_device="item.mediated_device"
270
- v-model:mediated_device_uuid="item.mediated_device_uuid"
269
+ v-for="(item, key) in props.pciDevices"
271
270
  :key="props.pciDevicesIndex[key]"
272
271
  :index="props.pciDevicesIndex[key]"
272
+ :pci-device="item"
273
+ :error-validation-fields="props.errorValidationFields"
273
274
  :passthrough-devices="props.passthroughDevices"
274
275
  :mediated-devices="props.mediatedDevices"
275
276
  :type="props.pciDevicesType[key]"
276
277
  :is-edit="props.isEdit"
277
278
  :state="props.state"
278
279
  @remove="emits('remove-pci-device', props.pciDevicesIndex[key])"
280
+ @send-data="
281
+ emits('send-data-pci-devices-method', [
282
+ $event,
283
+ props.pciDevicesIndex[key],
284
+ ])
285
+ "
286
+ @invalid="
287
+ emits('set-invalid-pci-device', [
288
+ $event,
289
+ props.pciDevicesIndex[key],
290
+ ])
291
+ "
292
+ @remove-error-by-title="emits('remove-error-by-title', $event)"
279
293
  />
280
294
  </template>
281
295
  <common-vm-actions-common-customize-hardware-virtual-hardware-video-card
@@ -290,7 +304,7 @@
290
304
  <common-vm-actions-common-customize-hardware-virtual-hardware-other />
291
305
  <div
292
306
  v-if="props.compatibilityInfo"
293
- class="vm-hardware-version-wrap justify-end flex flex-1 mt-1"
307
+ class="vm-hardware-version-wrap justify-end flex flex-1 mt-4"
294
308
  >
295
309
  <span class="vm-hardware-version">
296
310
  {{ props.compatibilityInfo }}
@@ -360,7 +374,6 @@ const props = withDefaults(
360
374
  files: UI_I_FileTreeNode[]
361
375
  isEdit: boolean
362
376
  storage: UI_I_DatastoreTableItem | null
363
- storageFree: number
364
377
  project: UI_T_Project
365
378
  maxMemory: number
366
379
  cpuModels: UI_I_OptionItem[]
@@ -384,6 +397,7 @@ const props = withDefaults(
384
397
  state?: string | number
385
398
  // hardDisks?: UI_I_SendDataNewHardDisk[] | null
386
399
  videoCard?: UI_I_SendDataVideoCard
400
+ pciDevices?: UI_I_SendDataNewPciDevice[]
387
401
  // cdDvdDrives?: UI_I_SendDataNewCdDvdDrive[] | null
388
402
  guestMachineType?: UI_I_OptionItem | null
389
403
  passthroughDevices?: UI_I_PciDevice[]
@@ -396,6 +410,7 @@ const props = withDefaults(
396
410
  cpu: undefined,
397
411
  state: undefined,
398
412
  videoCard: undefined,
413
+ pciDevices: undefined,
399
414
  guestMachineType: undefined,
400
415
  passthroughDevices: undefined,
401
416
  mediatedDevices: undefined,
@@ -424,7 +439,16 @@ const emits = defineEmits<{
424
439
  (event: 'set-invalid-hard-disk', value: [boolean, number]): void
425
440
  (event: 'remove-error-by-title', value: string): void
426
441
  (event: 'roll-back-cd-dvd-drive', value: number): void
442
+ (event: 'set-invalid-pci-device', value: [boolean, number]): void
427
443
  (event: 'get-active-device-child', value: UI_I_FileTreeNode): void
444
+ (
445
+ event: 'send-data-pci-devices-method',
446
+ value: [UI_I_SendDataNewPciDevice, number]
447
+ ): void
448
+ (
449
+ event: 'send-data-new-hard-disk-method',
450
+ value: [UI_I_SendDataNewHardDisk, number]
451
+ ): void
428
452
  (
429
453
  event: 'send-data-new-cd-dvd-drive-method',
430
454
  value: [UI_I_SendDataNewCdDvdDrive, number]
@@ -449,7 +473,7 @@ const deviceCount = computed<number>(
449
473
  // (props.pciDevices?.length || 0) +
450
474
  (model.value.disk_devices?.length || 0) +
451
475
  (model.value.network_devices?.length || 0) +
452
- (model.value.passthrough_pci_devices?.length || 0) +
476
+ (props.pciDevices?.length || 0) +
453
477
  6
454
478
  )
455
479
  const deviceCountText = computed<string>(() =>
@@ -588,7 +612,7 @@ const onAddDevice = (data: number): void => {
588
612
  display: flex;
589
613
  flex-direction: column;
590
614
  gap: 12px;
591
- padding-bottom: 16px;
615
+ padding-bottom: 12px;
592
616
  background-color: var(--vm-wizard-block-view-bg-color);
593
617
 
594
618
  .vm-hardware-version-wrap {
@@ -85,7 +85,6 @@
85
85
  :index="props.hardDisksIndex[key]"
86
86
  :type="props.hardDisksType[key]"
87
87
  :main-storage="props.storage"
88
- :main-storage-free="props.storageFree"
89
88
  :error-validation-fields="props.errorValidationFields"
90
89
  :get-datastore-table-func="props.getDatastoreTableFunc"
91
90
  :datastore="props.datastore"
@@ -98,6 +97,12 @@
98
97
  emits('remove-hard-disk', [props.hardDisksIndex[key], item])
99
98
  "
100
99
  @roll-back="emits('roll-back-hard-disk', props.hardDisksIndex[key])"
100
+ @send-data="
101
+ emits('send-data-new-hard-disk-method', [
102
+ $event,
103
+ props.hardDisksIndex[key],
104
+ ])
105
+ "
101
106
  @invalid="
102
107
  emits('set-invalid-hard-disk', [
103
108
  $event,
@@ -241,21 +246,30 @@
241
246
  </div>
242
247
  <template v-if="props.passthroughDevices || props.mediatedDevices">
243
248
  <common-vm-actions-common-customize-hardware-virtual-hardware-new-pci-device
244
- v-for="(item, key) in model.passthrough_pci_devices"
245
- v-model:address="item.address"
246
- v-model:vendor-name="item.vendor_name"
247
- v-model:class-name="item.class_name"
248
- v-model:device-name="item.device_name"
249
- v-model:mediated-device="item.mediated_device"
250
- v-model:mediated-device-uuid="item.mediated_device_uuid"
249
+ v-for="(item, key) in props.pciDevices"
251
250
  :key="props.pciDevicesIndex[key]"
252
251
  :index="props.pciDevicesIndex[key]"
252
+ :pci-device="item"
253
+ :error-validation-fields="props.errorValidationFields"
253
254
  :passthrough-devices="props.passthroughDevices"
254
255
  :mediated-devices="props.mediatedDevices"
255
256
  :type="props.pciDevicesType[key]"
256
257
  :is-edit="props.isEdit"
257
258
  :state="props.state"
258
259
  @remove="emits('remove-pci-device', props.pciDevicesIndex[key])"
260
+ @send-data="
261
+ emits('send-data-pci-devices-method', [
262
+ $event,
263
+ props.pciDevicesIndex[key],
264
+ ])
265
+ "
266
+ @invalid="
267
+ emits('set-invalid-pci-device', [
268
+ $event,
269
+ props.pciDevicesIndex[key],
270
+ ])
271
+ "
272
+ @remove-error-by-title="emits('remove-error-by-title', $event)"
259
273
  />
260
274
  </template>
261
275
  <common-vm-actions-common-customize-hardware-virtual-hardware-video-card
@@ -304,10 +318,8 @@ import type {
304
318
  } from '~/components/common/vm/actions/common/customizeHardware/virtualHardware/lib/models/interfaces'
305
319
  import type { UI_I_ErrorValidationField } from '~/lib/models/store/interfaces'
306
320
  import type {
307
- UI_T_CdDvdType,
308
321
  UI_T_HardDiskType,
309
322
  UI_T_NetworkType,
310
- UI_T_PciDeviceType,
311
323
  } from '~/components/common/vm/actions/common/customizeHardware/virtualHardware/lib/models/types'
312
324
  import type { UI_I_OptionItem } from '~/components/atoms/lib/models/interfaces'
313
325
  import type {
@@ -337,7 +349,6 @@ const props = withDefaults(
337
349
  files: UI_I_FileTreeNode[]
338
350
  isEdit: boolean
339
351
  storage: UI_I_DatastoreTableItem | null
340
- storageFree: number
341
352
  project: UI_T_Project
342
353
  maxMemory: number
343
354
  cpuModels: UI_I_OptionItem[]
@@ -349,10 +360,10 @@ const props = withDefaults(
349
360
  hardDisksType: UI_T_HardDiskType[]
350
361
  networksIndex: number[]
351
362
  hardDisksIndex: number[]
352
- pciDevicesType: UI_T_PciDeviceType[]
363
+ pciDevicesType: UI_T_NetworkType[]
353
364
  isShowFileModal: boolean
354
365
  pciDevicesIndex: number[]
355
- cdDvdDrivesType: UI_T_CdDvdType[]
366
+ cdDvdDrivesType: UI_T_NetworkType[]
356
367
  cdDvdDrivesIndex: number[]
357
368
  errorValidationFields: UI_I_ErrorValidationField[]
358
369
  getDatastoreTableFunc: (payload: UI_I_TablePayload) => Promise<void>
@@ -360,6 +371,7 @@ const props = withDefaults(
360
371
  cpu?: API_UI_I_VmEditCpu
361
372
  state?: string | number
362
373
  videoCard?: UI_I_SendDataVideoCard
374
+ pciDevices?: UI_I_SendDataNewPciDevice[]
363
375
  guestMachineType?: UI_I_OptionItem | null
364
376
  passthroughDevices?: UI_I_PciDevice[]
365
377
  mediatedDevices?: UI_I_MediatedDevice[]
@@ -370,9 +382,10 @@ const props = withDefaults(
370
382
  cpu: undefined,
371
383
  state: undefined,
372
384
  videoCard: undefined,
385
+ pciDevices: undefined,
373
386
  guestMachineType: undefined,
374
- passthroughDevices: () => [],
375
- mediatedDevices: () => [],
387
+ passthroughDevices: undefined,
388
+ mediatedDevices: undefined,
376
389
  vmCpuHelpTextSecond: undefined,
377
390
  computeResource: undefined,
378
391
  }
@@ -397,7 +410,16 @@ const emits = defineEmits<{
397
410
  (event: 'set-invalid-hard-disk', value: [boolean, number]): void
398
411
  (event: 'remove-error-by-title', value: string): void
399
412
  (event: 'roll-back-cd-dvd-drive', value: number): void
413
+ (event: 'set-invalid-pci-device', value: [boolean, number]): void
400
414
  (event: 'get-active-device-child', value: UI_I_FileTreeNode): void
415
+ (
416
+ event: 'send-data-pci-devices-method',
417
+ value: [UI_I_SendDataNewPciDevice, number]
418
+ ): void
419
+ (
420
+ event: 'send-data-new-hard-disk-method',
421
+ value: [UI_I_SendDataNewHardDisk, number]
422
+ ): void
401
423
  (
402
424
  event: 'send-data-new-cd-dvd-drive-method',
403
425
  value: [UI_I_SendDataNewCdDvdDrive, number]
@@ -9,7 +9,6 @@
9
9
  :files="props.files"
10
10
  :is-edit="props.isEdit"
11
11
  :storage="props.storage"
12
- :storage-free="storageFree"
13
12
  :project="props.project"
14
13
  :max-memory="props.maxMemory"
15
14
  :cpu-models="props.cpuModels"
@@ -30,6 +29,7 @@
30
29
  :get-datastore-table-func="getDatastoreTableFunc"
31
30
  :state="state"
32
31
  :video-card="videoCard"
32
+ :pci-devices="pciDevicesLocal"
33
33
  :guest-machine-type="guestMachineType"
34
34
  :passthrough-devices="passthroughDevices"
35
35
  :mediated-devices="mediatedDevices"
@@ -53,7 +53,9 @@
53
53
  @set-invalid-hard-disk="onSetInvalidHardDisk(...$event)"
54
54
  @remove-error-by-title="emits('remove-error-by-title', $event)"
55
55
  @roll-back-cd-dvd-drive="onRollBackCdDvdDrive"
56
+ @set-invalid-pci-device="onSetInvalidPciDevice(...$event)"
56
57
  @get-active-device-child="emits('get-active-device-child', $event)"
58
+ @send-data-pci-devices-method="onSendDataPciDevicesMethod(...$event)"
57
59
  @send-data-new-hard-disk-method="onSendDataNewHardDiskMethod(...$event)"
58
60
  @send-data-new-cd-dvd-drive-method="sendDataNewCdDvdDriveMethod(...$event)"
59
61
  />
@@ -116,7 +118,7 @@ const props = withDefaults(
116
118
  hardDisks?: UI_I_SendDataNewHardDisk[] | null
117
119
  cdDvdDrives?: UI_I_SendDataNewCdDvdDrive[] | null
118
120
  videoCard?: UI_I_SendDataVideoCard
119
- // pciDevices?: UI_I_SendDataNewPciDevice[]
121
+ pciDevices?: UI_I_SendDataNewPciDevice[]
120
122
  passthroughDevices?: UI_I_PciDevice[]
121
123
  mediatedDevices?: UI_I_MediatedDevice[]
122
124
  guestMachineType?: UI_I_OptionItem | null
@@ -129,7 +131,7 @@ const props = withDefaults(
129
131
  hardDisks: undefined,
130
132
  cdDvdDrives: undefined,
131
133
  videoCard: undefined,
132
- // pciDevices: undefined,
134
+ pciDevices: undefined,
133
135
  passthroughDevices: undefined,
134
136
  mediatedDevices: undefined,
135
137
  guestMachineType: undefined,
@@ -217,24 +219,6 @@ if (!model.value.disk_devices?.length) {
217
219
  // { immediate: true }
218
220
  // )
219
221
 
220
- const getDisksSize = (): number => {
221
- return (
222
- model.value.disk_devices.reduce(
223
- (acum, disk) => (acum += disk.size || 0),
224
- 0
225
- ) || 0
226
- )
227
- }
228
- const initialDisksSize = getDisksSize()
229
- const storageFree = computed<number>(() => {
230
- if (!props.storage) return 0
231
- const free = (props.storage.capacity.free_mb || props.storage.free) as number // TODO fix
232
-
233
- const disksSize = getDisksSize()
234
-
235
- return free + initialDisksSize - (disksSize - initialDisksSize)
236
- })
237
-
238
222
  const addHardDisk = (
239
223
  create = true,
240
224
  size = 92_160, // 90GB
@@ -517,47 +501,30 @@ const defaultPciDevice: UI_I_SendDataNewPciDevice = {
517
501
  }
518
502
  const pciDevicesIndex = ref<number[]>([0])
519
503
  const pciDevicesType = ref<('new' | 'edit' | 'removed')[]>(['new'])
520
- // const pciDevicesLocal = ref<UI_I_SendDataNewPciDevice[]>([])
521
- if (!model.value.passthrough_pci_devices?.length) {
522
- pciDevicesIndex.value = []
523
- pciDevicesType.value = []
524
- } else {
525
- model.value.passthrough_pci_devices.forEach((_disk, _index, array) => {
526
- if (!props.isEdit && !props.isClone) return
504
+ const pciDevicesLocal = ref<UI_I_SendDataNewPciDevice[]>([])
505
+ watch(
506
+ () => props.pciDevices,
507
+ (newValue) => {
508
+ if ((!props.isEdit && !props.isClone) || !newValue) return
527
509
 
528
- const count = array.length
510
+ const count = newValue?.length || 0
529
511
  pciDevicesIndex.value = [...Array(count).keys()]
512
+ pciDevicesLocal.value = newValue || []
530
513
  if (props.isEdit) {
531
514
  pciDevicesType.value = Array(count).fill('edit')
532
515
  } else if (props.isClone) {
533
- pciDevicesType.value = Array(count).fill('clone') // before been new
516
+ pciDevicesType.value = Array(count).fill('new')
534
517
  }
535
- })
536
- }
537
- // watch(
538
- // () => props.pciDevices,
539
- // (newValue) => {
540
- // if ((!props.isEdit && !props.isClone) || !newValue) return
541
- //
542
- // const count = newValue?.length || 0
543
- // pciDevicesIndex.value = [...Array(count).keys()]
544
- // pciDevicesLocal.value = newValue || []
545
- // if (props.isEdit) {
546
- // pciDevicesType.value = Array(count).fill('edit')
547
- // } else if (props.isClone) {
548
- // pciDevicesType.value = Array(count).fill('new')
549
- // }
550
- // },
551
- // { immediate: true }
552
- // )
518
+ },
519
+ { immediate: true }
520
+ )
553
521
 
554
522
  const addPciDevice = (): void => {
555
523
  const newIndex = (pciDevicesIndex.value.at(-1) ?? -1) + 1
556
524
  pciDevicesIndex.value.push(newIndex)
557
525
  pciDevicesType.value.push('new')
558
526
 
559
- // pciDevicesLocal.value.push(useDeepCopy(defaultPciDevice))
560
- if (!model.value.passthrough_pci_devices) model.value.passthrough_pci_devices = []
527
+ pciDevicesLocal.value.push(useDeepCopy(defaultPciDevice))
561
528
  model.value.passthrough_pci_devices.push(useDeepCopy(defaultPciDevice))
562
529
  }
563
530
  const onRemovePciDevice = (index: number): void => {
@@ -571,6 +538,13 @@ const onRemovePciDevice = (index: number): void => {
571
538
  model.value.passthrough_pci_devices.filter((_pciDevice, key: number) => {
572
539
  return removeIndex !== key
573
540
  })
541
+ pciDevicesLocal.value = pciDevicesLocal.value.filter(
542
+ (_pciDevice, key: number) => {
543
+ return removeIndex !== key
544
+ }
545
+ )
546
+
547
+ delete newPciDeviceInvalidKeys.value[index]
574
548
  }
575
549
 
576
550
  const isShowFileModal = ref<boolean>(false)
@@ -617,6 +591,14 @@ const sendDataNewCdDvdDriveMethod = (
617
591
  model.value.disk_devices[cdromIndexStart + index]?.boot_order || 0,
618
592
  }
619
593
  }
594
+ const onSendDataPciDevicesMethod = (
595
+ data: UI_I_SendDataNewPciDevice,
596
+ index: number
597
+ ): void => {
598
+ model.value.passthrough_pci_devices[index] = {
599
+ ...data,
600
+ }
601
+ }
620
602
 
621
603
  const onSetInvalidHardDisk = (invalid: boolean, index: number): void => {
622
604
  newHardDiskInvalidKeys.value[index] = invalid
@@ -626,10 +608,15 @@ const onSetInvalidNetwork = (invalid: boolean, key: number): void => {
626
608
  newNetworkInvalidKeys.value[key] = invalid
627
609
  }
628
610
 
611
+ const onSetInvalidPciDevice = (invalid: boolean, key: number): void => {
612
+ newPciDeviceInvalidKeys.value[key] = invalid
613
+ }
614
+
629
615
  const memoryInvalid = ref<boolean>(false)
630
616
  const videoCardInvalid = ref<boolean>(false)
631
617
  const newHardDiskInvalidKeys = ref<UI_I_InvalidKeys>({})
632
618
  const newNetworkInvalidKeys = ref<UI_I_InvalidKeys>({})
619
+ const newPciDeviceInvalidKeys = ref<UI_I_InvalidKeys>({})
633
620
 
634
621
  watch(
635
622
  [
@@ -637,6 +624,7 @@ watch(
637
624
  memoryInvalid,
638
625
  newHardDiskInvalidKeys,
639
626
  newNetworkInvalidKeys,
627
+ newPciDeviceInvalidKeys,
640
628
  videoCardInvalid,
641
629
  ],
642
630
  () => {
@@ -669,6 +657,18 @@ watch(
669
657
  ' ' +
670
658
  (+key + 1)
671
659
  })
660
+ // let pciDevice = ''
661
+ // Object.keys(newPciDeviceInvalidKeys.value).forEach((key) => {
662
+ // if (!newPciDeviceInvalidKeys.value[+key]) {
663
+ // return
664
+ // }
665
+ //
666
+ // pciDevice +=
667
+ // (pciDevice ? ', ' : '') +
668
+ // localization.value.common.pciDevice +
669
+ // ' ' +
670
+ // (+key + 1)
671
+ // })
672
672
 
673
673
  emits('invalid', [cpu, memory, newHardDisk, newNetwork, videoCard])
674
674
  },
@@ -59,9 +59,9 @@ const socketOptions = computed<number[]>(() => {
59
59
  watch(
60
60
  socketOptions,
61
61
  () => {
62
- // !socketOptions.value.includes(selectedCorePerSocketLocal.value) &&
63
- !props.disabled &&
64
- (selectedCorePerSocketLocal.value = socketOptions.value.at(-1) || 1)
62
+ !socketOptions.value.includes(selectedCorePerSocketLocal.value) &&
63
+ !props.disabled &&
64
+ (selectedCorePerSocketLocal.value = 1)
65
65
  },
66
66
  { deep: true }
67
67
  )
@@ -105,11 +105,9 @@ export interface UI_I_SendDataNewCdDvdDrive {
105
105
  }
106
106
  export interface UI_I_SendDataNewPciDevice {
107
107
  address: string
108
- vendor_name: string
109
108
  class_name: string
110
109
  device_name: string
111
- mediated_device: boolean
112
- mediated_device_uuid?: string
110
+ vendor_name: string
113
111
  }
114
112
 
115
113
  export interface UI_I_HardDisk {
@@ -115,7 +115,6 @@ const detach = defineModel<boolean>('detach', { required: true })
115
115
  const props = withDefaults(
116
116
  defineProps<{
117
117
  mainStorage: UI_I_DatastoreTableItem | null
118
- mainStorageFree: number
119
118
  // hardDisk: UI_I_SendDataNewHardDisk
120
119
  type: UI_T_HardDiskType
121
120
  index: number
@@ -197,22 +196,17 @@ const label = computed<string>(() => {
197
196
  })
198
197
 
199
198
  const maxHardDisk = computed<number>(() => {
200
- // // const hardDiskSizeMb = $binary.gbToMb(props.hardDisk.size)
201
- //
202
- // if (props.type === 'exist') return initialSize
203
- //
204
- // if (!storageLocal.value) return 0
205
- // const free = (storageLocal.value.capacity.free_mb ||
206
- // storageLocal.value.free) as number // TODO fix
207
- //
208
- // if (props.type === 'edit') return free + initialSize
209
- //
210
- // return free
199
+ // const hardDiskSizeMb = $binary.gbToMb(props.hardDisk.size)
200
+
211
201
  if (props.type === 'exist') return initialSize
212
202
 
213
203
  if (!storageLocal.value) return 0
204
+ const free = (storageLocal.value.capacity.free_mb ||
205
+ storageLocal.value.capacity) as number // TODO fix
206
+
207
+ if (props.isEdit) return free + initialSize
214
208
 
215
- return props.mainStorageFree + size.value
209
+ return free
216
210
  })
217
211
  const hardDiskTypeErrorLocalText = computed<string>(() => {
218
212
  if (size.value > maxHardDisk.value) {
@@ -46,15 +46,12 @@
46
46
  />
47
47
  </template>
48
48
 
49
- <common-vm-actions-common-customize-hardware-virtual-hardware-new-pci-device-note
50
- :pci-device-index="props.index"
51
- />
49
+ <common-vm-actions-common-customize-hardware-virtual-hardware-new-pci-device-note />
52
50
  </template>
53
51
  </ui-stack-block>
54
52
  </template>
55
53
 
56
54
  <script setup lang="ts">
57
- import type { UI_I_Option } from '~/components/atoms/select/lib/models/interfaces'
58
55
  import type { UI_I_OptionItem } from '~/components/atoms/lib/models/interfaces'
59
56
  import type { UI_T_PciDeviceType } from '~/components/common/vm/actions/common/customizeHardware/virtualHardware/lib/models/types'
60
57
  import type {
@@ -65,13 +62,13 @@ import type {
65
62
  const selectedType = defineModel<UI_I_OptionItem>('selectedType', {
66
63
  required: true,
67
64
  })
68
- const directPathIo = defineModel<string>('directPathIo', {
65
+ const directPathIo = defineModel<UI_I_PciDevice>('directPathIo', {
69
66
  required: true,
70
67
  })
71
- const dynamicDirectPathIo = defineModel<UI_I_PciDevice>('dynamicDirectPathIo', {
68
+ const dynamicDirectPathIo = defineModel<string>('dynamicDirectPathIo', {
72
69
  required: true,
73
70
  })
74
- const nvidiaGridProfile = defineModel<UI_I_Option | null>('nvidiaGridProfile', {
71
+ const nvidiaGridProfile = defineModel<string>('nvidiaGridProfile', {
75
72
  required: true,
76
73
  })
77
74