bfg-common 1.5.773 → 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 (322) hide show
  1. package/CODE_STYLE.md +109 -109
  2. package/assets/img/icons/icons-sprite-dark-1.svg +3 -2
  3. package/assets/img/icons/icons-sprite-dark-3.svg +227 -227
  4. package/assets/img/icons/icons-sprite-dark-5.svg +488 -488
  5. package/assets/img/icons/icons-sprite-light-1.svg +4 -3
  6. package/assets/img/icons/icons-sprite-light-3.svg +227 -227
  7. package/assets/img/icons/icons-sprite-light-5.svg +488 -488
  8. package/assets/localization/local_be.json +27 -165
  9. package/assets/localization/local_en.json +27 -165
  10. package/assets/localization/local_hy.json +26 -164
  11. package/assets/localization/local_kk.json +26 -164
  12. package/assets/localization/local_ru.json +33 -171
  13. package/assets/localization/local_zh.json +26 -164
  14. package/assets/scss/common/global.scss +5 -5
  15. package/assets/scss/common/icons/icons-1.scss +1 -1
  16. package/assets/scss/common/icons/icons-2.scss +0 -18
  17. package/assets/scss/common/theme.scss +0 -2
  18. package/assets/scss/components/auth.scss +5 -32
  19. package/components/atoms/TheIcon3.vue +50 -50
  20. package/components/atoms/collapse/CollapseNav.vue +170 -170
  21. package/components/atoms/dropdown/tree/Tree.vue +0 -2
  22. package/components/atoms/nav/NavBar.vue +0 -1
  23. package/components/atoms/perPage/PerPage.vue +58 -58
  24. package/components/atoms/switch/Switch.vue +1 -7
  25. package/components/atoms/table/dataGrid/DataGrid.vue +16 -17
  26. package/components/atoms/table/dataGrid/DataGridPagination.vue +97 -97
  27. package/components/atoms/table/dataGrid/lib/config/settingsTable.ts +94 -94
  28. package/components/atoms/table/dataGrid/lib/utils/export.ts +16 -16
  29. package/components/atoms/wizard/Wizard.vue +1 -1
  30. package/components/common/backup/storage/actions/add/Old.vue +1 -22
  31. package/components/common/backup/storage/actions/add/lib/config/createDatastore.ts +1 -1
  32. package/components/common/backup/storage/actions/add/lib/utils.ts +51 -51
  33. package/components/common/backup/storage/actions/add/steps/typeMode/TypeModeOld.vue +48 -1
  34. package/components/common/backup/storage/actions/add/steps/typeMode/lib/config/typeOptions.ts +20 -20
  35. package/components/common/backup/storage/actions/delete/Delete.vue +15 -37
  36. package/components/common/browse/blocks/contents/filesNew/Skeleton.vue +18 -18
  37. package/components/common/diagramMain/Header.vue +0 -4
  38. package/components/common/diagramMain/lib/models/interfaces.ts +0 -2
  39. package/components/common/diagramMain/modals/lib/config/vCenterModal.ts +48 -48
  40. package/components/common/diagramMain/modals/viewSettings/info/Info.vue +1 -5
  41. package/components/common/diagramMain/modals/viewSettings/info/InfoOld.vue +0 -16
  42. package/components/common/diagramMain/port/Port.vue +580 -580
  43. package/components/common/graph/graphNew/EmptyBlock.vue +1 -2
  44. package/components/common/help/navbar/left/lib/utils/constructAccordion.ts +1 -2
  45. package/components/common/help/navbar/right/Right.vue +23 -86
  46. package/components/common/layout/theHeader/TheHeader.vue +81 -44
  47. package/components/common/layout/theHeader/{New.vue → TheHeaderNew.vue} +26 -14
  48. package/components/common/layout/theHeader/{Old.vue → TheHeaderOld.vue} +21 -13
  49. package/components/common/layout/theHeader/ThemeSwitch.vue +18 -8
  50. package/components/common/layout/theHeader/feedback/new/email/Email.vue +2 -2
  51. package/components/common/layout/theHeader/helpMenu/{about/About.vue → About.vue} +22 -12
  52. package/components/common/layout/theHeader/helpMenu/HelpMenu.vue +8 -6
  53. package/components/common/layout/theHeader/helpMenu/{about/New.vue → aboutNew/AboutNew.vue} +4 -5
  54. package/components/common/layout/theHeader/helpMenu/aboutOld/AboutOld.vue +79 -0
  55. package/components/common/layout/theHeader/helpMenu/{new/New.vue → helpMenuNew/HelpMenuNew.vue} +1 -1
  56. package/components/common/layout/theHeader/helpMenu/{new → helpMenuNew}/lib/config/dropMenu.ts +1 -1
  57. package/components/common/layout/theHeader/helpMenu/{old/Old.vue → helpMenuOld/HelpMenuOld.vue} +2 -2
  58. package/components/common/layout/theHeader/helpMenu/{old → helpMenuOld}/lib/config/dropMenu.ts +1 -1
  59. package/components/common/layout/theHeader/modals/reconnect/Reconnect.vue +11 -11
  60. package/components/common/layout/theHeader/modals/reconnect/{New.vue → ReconnectNew.vue} +1 -1
  61. package/components/common/layout/theHeader/modals/reconnect/{Old.vue → ReconnectOld.vue} +0 -2
  62. package/components/common/layout/theHeader/userMenu/UserMenu.vue +28 -21
  63. package/components/common/layout/theHeader/userMenu/modals/changePassword/ChangePassword.vue +21 -12
  64. package/components/common/layout/theHeader/userMenu/modals/changePassword/New.vue +43 -36
  65. package/components/common/layout/theHeader/userMenu/modals/changePassword/Old.vue +2 -0
  66. package/components/common/layout/theHeader/userMenu/modals/changePassword/lib/utils.ts +3 -3
  67. package/components/common/layout/theHeader/userMenu/modals/preferences/Preferences.vue +44 -19
  68. package/components/common/layout/theHeader/userMenu/modals/preferences/{New.vue → PreferencesNew.vue} +16 -24
  69. package/components/common/layout/theHeader/userMenu/modals/preferences/{Old.vue → PreferencesOld.vue} +18 -10
  70. package/components/common/layout/theHeader/userMenu/modals/preferences/changeLanguage/ChangeLanguage.vue +18 -17
  71. package/components/common/layout/theHeader/userMenu/modals/preferences/changeLanguage/{New.vue → ChangeLanguageNew.vue} +30 -6
  72. package/components/common/layout/theHeader/userMenu/modals/preferences/changeLanguage/{Old.vue → ChangeLanguageOld.vue} +30 -5
  73. package/components/common/layout/theHeader/userMenu/modals/preferences/defaultConsole/DefaultConsole.vue +20 -8
  74. package/components/common/layout/theHeader/userMenu/modals/preferences/defaultConsole/{New.vue → DefaultConsoleNew.vue} +3 -3
  75. package/components/common/layout/theHeader/userMenu/modals/preferences/defaultConsole/{Old.vue → DefaultConsoleOld.vue} +2 -2
  76. package/components/common/layout/theHeader/userMenu/modals/preferences/inventory/Inventory.vue +21 -7
  77. package/components/common/layout/theHeader/userMenu/modals/preferences/inventory/{New.vue → InventoryNew.vue} +2 -3
  78. package/components/common/layout/theHeader/userMenu/modals/preferences/inventory/{Old.vue → InventoryOld.vue} +2 -2
  79. package/components/common/layout/theHeader/userMenu/modals/preferences/lib/models/types.ts +7 -7
  80. package/components/common/layout/theHeader/userMenu/modals/preferences/security/New.vue +12 -277
  81. package/components/common/layout/theHeader/userMenu/modals/preferences/security/Old.vue +56 -30
  82. package/components/common/layout/theHeader/userMenu/modals/preferences/security/Security.vue +6 -65
  83. package/components/common/layout/theHeader/userMenu/modals/preferences/timeFormat/TimeFormat.vue +22 -9
  84. package/components/common/layout/theHeader/userMenu/modals/preferences/timeFormat/{New.vue → TimeFormatNew.vue} +3 -3
  85. package/components/common/layout/theHeader/userMenu/modals/preferences/timeFormat/{Old.vue → TimeFormatOld.vue} +2 -2
  86. package/components/common/layout/theHeader/userMenu/modals/preferences/view/View.vue +22 -13
  87. package/components/common/layout/theHeader/userMenu/modals/preferences/view/{New.vue → ViewNew.vue} +3 -29
  88. package/components/common/layout/theHeader/userMenu/modals/preferences/view/{Old.vue → ViewOld.vue} +2 -21
  89. package/components/common/layout/theHeader/userMenu/{new/New.vue → userMenuNew/UserMenuNew.vue} +1 -1
  90. package/components/common/layout/theHeader/userMenu/{old/Old.vue → userMenuOld/UserMenuOld.vue} +2 -2
  91. package/components/common/layout/theHeader/userMenu/{old → userMenuOld}/lib/config/dropMenu.ts +1 -1
  92. package/components/common/monitor/advanced/graphView/GraphView.vue +0 -8
  93. package/components/common/monitor/advanced/tools/Tools.vue +1 -5
  94. package/components/common/monitor/overview/OverviewNew.vue +1 -1
  95. package/components/common/pages/backups/DetailView.vue +52 -52
  96. package/components/common/pages/backups/backupsNew/BackupsNew.vue +19 -107
  97. package/components/common/pages/backups/backupsNew/contextMenuView/ContextMenuView.vue +10 -16
  98. package/components/common/pages/backups/lib/models/interfaces.ts +36 -36
  99. package/components/common/pages/backups/modals/Modals.vue +243 -243
  100. package/components/common/pages/backups/modals/createBackup/CreateBackup.vue +10 -6
  101. package/components/common/pages/backups/modals/createBackup/New.vue +9 -22
  102. package/components/common/pages/backups/modals/createBackup/Old.vue +10 -8
  103. package/components/common/pages/backups/modals/createBackup/configuration/ConfigurationNew.vue +3 -17
  104. package/components/common/pages/backups/modals/createBackup/configuration/backupWindow/BackupWindow.vue +29 -29
  105. package/components/common/pages/backups/modals/createBackup/configuration/maxBandwidth/MaxBandwidth.vue +69 -69
  106. package/components/common/pages/backups/modals/createBackup/configuration/strategy/Strategy.vue +38 -38
  107. package/components/common/pages/backups/modals/createBackup/datastores/Datastores.vue +0 -6
  108. package/components/common/pages/backups/modals/createBackup/datastores/DatastoresOld.vue +2 -22
  109. package/components/common/pages/backups/modals/createBackup/datastores/tableView/new/lib/config/table.ts +8 -8
  110. package/components/common/pages/backups/modals/createBackup/disks/Disks.vue +0 -6
  111. package/components/common/pages/backups/modals/createBackup/disks/DisksOld.vue +1 -22
  112. package/components/common/pages/backups/modals/createBackup/disks/tableView/new/TableView.vue +1 -1
  113. package/components/common/pages/backups/modals/createBackup/disks/tableView/new/lib/config/table.ts +7 -7
  114. package/components/common/pages/backups/modals/createBackup/general/General.vue +1 -7
  115. package/components/common/pages/backups/modals/createBackup/general/GeneralNew.vue +1 -1
  116. package/components/common/pages/backups/modals/createBackup/general/GeneralOld.vue +0 -17
  117. package/components/common/pages/backups/modals/createBackup/lib/config/readyToCompleteOptions.ts +5 -5
  118. package/components/common/pages/backups/modals/createBackup/lib/config/steps.ts +1 -1
  119. package/components/common/pages/backups/modals/createBackup/lib/config/strategyOptions.ts +2 -11
  120. package/components/common/pages/backups/modals/createBackup/lib/models/interfaces.ts +8 -8
  121. package/components/common/pages/backups/modals/createBackup/lib/validation/validations.ts +14 -6
  122. package/components/common/pages/backups/modals/deleteBackup/DeleteBackup.vue +0 -1
  123. package/components/common/pages/backups/modals/lib/config/restore.ts +0 -1
  124. package/components/common/pages/backups/modals/lib/models/interfaces.ts +1 -2
  125. package/components/common/pages/backups/modals/restore/Restore.vue +26 -25
  126. package/components/common/pages/backups/modals/restore/{Old.vue → RestoreOld.vue} +0 -5
  127. package/components/common/pages/backups/modals/restore/disks/Disks.vue +8 -26
  128. package/components/common/pages/backups/modals/restore/disks/DisksNew.vue +2 -2
  129. package/components/common/pages/backups/modals/restore/disks/DisksOld.vue +2 -2
  130. package/components/common/pages/backups/modals/restore/lib/config/readyToCompleteOptions.ts +14 -46
  131. package/components/common/pages/backups/modals/restore/lib/config/restoreCodes.ts +1 -1
  132. package/components/common/pages/backups/modals/restore/lib/config/steps.ts +20 -42
  133. package/components/common/pages/backups/modals/restore/name/lib/models/interfaces.ts +6 -6
  134. package/components/common/pages/backups/modals/restore/types/Types.vue +3 -15
  135. package/components/common/pages/backups/modals/restore/types/{New.vue → TypesNew.vue} +11 -11
  136. package/components/common/pages/backups/modals/restore/types/{Old.vue → TypesOld.vue} +6 -7
  137. package/components/common/pages/backups/modals/restore/types/lib/config/descriptions.ts +0 -1
  138. package/components/common/pages/hardwareHealth/historyTestimony/tools/Tools.vue +2 -7
  139. package/components/common/pages/hardwareHealth/tableView/TableView.vue +0 -8
  140. package/components/common/pages/hardwareHealth/tableView/lib/config/sensorTable.ts +1 -13
  141. package/components/common/pages/hardwareHealth/toolsPanel/lib/config/actionsPanel.ts +4 -4
  142. package/components/common/pages/home/lib/models/interfaces.ts +48 -48
  143. package/components/common/pages/home/widgets/hosts/Hosts.vue +27 -27
  144. package/components/common/pages/home/widgets/hosts/lib/config/items.ts +23 -23
  145. package/components/common/pages/home/widgets/vms/VmsOld.vue +35 -35
  146. package/components/common/pages/home/widgets/vms/lib/config/items.ts +19 -19
  147. package/components/common/pages/home/widgets/warnings/lib/config/config.ts +2 -2
  148. package/components/common/pages/home/widgets/warnings/table/lib/config/config.ts +2 -2
  149. package/components/common/pages/home/widgets/warnings/table/lib/models/enums.ts +12 -0
  150. package/components/common/pages/scheduledTasks/lib/utils/utils.ts +84 -84
  151. package/components/common/pages/tasks/Tasks.vue +0 -3
  152. package/components/common/pages/tasks/table/Table.vue +1 -4
  153. package/components/common/pages/tasks/table/expandDetails/ExpandDetails.vue +1 -1
  154. package/components/common/pages/tasks/table/lib/config/config.ts +13 -22
  155. package/components/common/qrcode/Qrcode.vue +56 -0
  156. package/components/common/readyToComplete/ReadyToComplete.vue +17 -17
  157. package/components/common/select/radio/RadioGroup.vue +137 -137
  158. package/components/common/selectLanguage/SelectLanguage.vue +5 -5
  159. package/components/common/spiceConsole/Drawer.vue +420 -420
  160. package/components/common/spiceConsole/SpiceConsole.vue +184 -184
  161. package/components/common/spiceConsole/lib/models/interfaces.ts +5 -5
  162. package/components/common/split/horizontal/New.vue +2 -0
  163. package/components/common/split/vertical/New.vue +1 -2
  164. package/components/common/tools/Actions.vue +207 -207
  165. package/components/common/treeView/TreeView.vue +52 -52
  166. package/components/common/vm/actions/add/New.vue +11 -13
  167. package/components/common/vm/actions/add/Old.vue +1 -1
  168. package/components/common/vm/actions/clone/lib/config/steps.ts +295 -295
  169. package/components/common/vm/actions/clone/new/New.vue +438 -438
  170. package/components/common/vm/actions/clone/old/Old.vue +0 -1
  171. package/components/common/vm/actions/common/customizeHardware/virtualHardware/New.vue +36 -12
  172. package/components/common/vm/actions/common/customizeHardware/virtualHardware/Old.vue +37 -15
  173. package/components/common/vm/actions/common/customizeHardware/virtualHardware/VirtualHardware.vue +50 -50
  174. package/components/common/vm/actions/common/customizeHardware/virtualHardware/cpu/coresPerSocket/CoresPerSocket.vue +3 -3
  175. package/components/common/vm/actions/common/customizeHardware/virtualHardware/cpu/shares/lib/config/options.ts +28 -28
  176. package/components/common/vm/actions/common/customizeHardware/virtualHardware/lib/models/interfaces.ts +1 -3
  177. package/components/common/vm/actions/common/customizeHardware/virtualHardware/memory/Memory.vue +283 -283
  178. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newHardDisk/NewHardDisk.vue +7 -13
  179. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newPciDevice/New.vue +4 -7
  180. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newPciDevice/NewPciDevice.vue +45 -52
  181. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newPciDevice/Old.vue +8 -5
  182. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newPciDevice/directPathIo/DirectPathIo.vue +3 -1
  183. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newPciDevice/directPathIo/New.vue +2 -2
  184. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newPciDevice/directPathIo/Old.vue +2 -2
  185. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newPciDevice/dynamicDirectPathIo/DynamicDirectPathIo.vue +1 -1
  186. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newPciDevice/dynamicDirectPathIo/New.vue +2 -1
  187. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newPciDevice/dynamicDirectPathIo/Old.vue +2 -1
  188. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newPciDevice/nvidiaGrid/New.vue +1 -1
  189. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newPciDevice/nvidiaGrid/NvidiaGrid.vue +1 -1
  190. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newPciDevice/nvidiaGrid/Old.vue +1 -1
  191. package/components/common/vm/actions/common/customizeHardware/vmoptions/New.vue +2 -2
  192. package/components/common/vm/actions/common/customizeHardware/vmoptions/bootOptions/order/Order.vue +156 -156
  193. package/components/common/vm/actions/common/select/compatibility/New.vue +1 -0
  194. package/components/common/vm/actions/common/select/compatibility/Old.vue +107 -107
  195. package/components/common/vm/actions/common/select/createType/lib/models/interfaces.ts +5 -5
  196. package/components/common/vm/actions/common/select/options/New.vue +264 -264
  197. package/components/common/vm/actions/common/select/options/Old.vue +2 -1
  198. package/components/common/vm/actions/common/select/options/Options.vue +58 -58
  199. package/components/common/vm/actions/common/select/storage/Old.vue +125 -125
  200. package/components/common/vm/actions/common/select/storage/new/New.vue +1 -1
  201. package/components/common/vm/actions/common/select/storage/new/lib/models/interfaces.ts +5 -5
  202. package/components/common/vm/actions/common/select/storage/new/lib/utils/utils.ts +21 -21
  203. package/components/common/vm/actions/common/select/template/old/Old.vue +50 -50
  204. package/components/common/vm/actions/editSettings/new/Skeleton.vue +88 -88
  205. package/components/common/wizards/common/compatibility/Compatibility.vue +35 -35
  206. package/components/common/wizards/common/compatibility/New.vue +1 -1
  207. package/components/common/wizards/common/compatibility/Old.vue +1 -1
  208. package/components/common/wizards/common/steps/computeResource/New.vue +1 -9
  209. package/components/common/wizards/common/steps/name/Name.vue +178 -178
  210. package/components/common/wizards/common/steps/name/New.vue +221 -221
  211. package/components/common/wizards/common/steps/name/Old.vue +121 -121
  212. package/components/common/wizards/common/steps/name/lib/models/interfaces.ts +4 -4
  213. package/components/common/wizards/common/steps/name/location/New.vue +40 -40
  214. package/components/common/wizards/datastore/add/Add.vue +1 -0
  215. package/components/common/wizards/datastore/add/Old.vue +0 -16
  216. package/components/common/wizards/datastore/add/lib/config/createDatastore.ts +0 -1
  217. package/components/common/wizards/datastore/add/lib/models/interfaces.ts +0 -1
  218. package/components/common/wizards/datastore/add/lib/utils.ts +85 -85
  219. package/components/common/wizards/datastore/add/steps/nameAndDevice/NameAndDeviceNew.vue +0 -5
  220. package/components/common/wizards/datastore/add/steps/nameAndDevice/NameAndDeviceOld.vue +0 -5
  221. package/components/common/wizards/datastore/add/steps/nameAndDevice/table/old/Old.vue +3 -2
  222. package/components/common/wizards/datastore/add/steps/readyComplete/lib/config/propertiesDetails.ts +1 -8
  223. package/components/common/wizards/datastore/add/steps/typeMode/TypeModeOld.vue +48 -1
  224. package/components/common/wizards/datastore/add/steps/typeMode/lib/config/typeOptions.ts +43 -43
  225. package/components/common/wizards/network/add/Add.vue +5 -28
  226. package/components/common/wizards/network/add/lib/config/config.ts +1 -1
  227. package/components/common/wizards/network/add/lib/config/initialData.ts +3 -6
  228. package/components/common/wizards/network/add/lib/config/selectConnectionTypeStep.ts +0 -1
  229. package/components/common/wizards/network/add/steps/portProperties/PortProperties.vue +192 -192
  230. package/components/common/wizards/network/add/steps/selectTargetDevice/SelectTargetDeviceNew.vue +1 -2
  231. package/components/common/wizards/network/add/steps/selectTargetDevice/SelectTargetDeviceOld.vue +6 -18
  232. package/components/common/wizards/vm/migrate/lib/models/enums.ts +2 -2
  233. package/components/common/wizards/vm/migrate/steps/computeResource/tableView/old/lib/config/hostTable.ts +1 -1
  234. package/components/common/wizards/vm/migrate/steps/selectStorage/SelectStorage.vue +4 -4
  235. package/components/common/wizards/vm/migrate/steps/selectStorage/configure/disk/table/new/lib/config/diskTable.ts +2 -6
  236. package/components/common/wizards/vm/migrate/steps/selectStorage/configure/disk/table/old/lib/config/diskTable.ts +13 -29
  237. package/composables/deepCopy.ts +21 -0
  238. package/composables/useAppVersion.ts +21 -21
  239. package/composables/useEnvLanguage.ts +8 -7
  240. package/composables/useLocal.ts +6 -6
  241. package/composables/useLocalCommon.ts +39 -39
  242. package/composables/useUniqueId.ts +5 -0
  243. package/lib/config/regExp.ts +1 -1
  244. package/lib/models/enums.ts +0 -28
  245. package/lib/models/interfaces.ts +0 -2
  246. package/lib/models/types.ts +21 -20
  247. package/lib/utils/localizationMapper.ts +2 -1
  248. package/package.json +4 -3
  249. package/plugins/console.ts +21 -21
  250. package/plugins/date.ts +37 -14
  251. package/plugins/mouse.ts +21 -21
  252. package/plugins/panelStates.ts +70 -70
  253. package/plugins/text.ts +59 -59
  254. package/plugins/validation.ts +6 -6
  255. package/public/spice-console/application/clientgui.js +854 -854
  256. package/public/spice-console/application/packetfactory.js +211 -211
  257. package/public/spice-console/application/virtualmouse.js +147 -147
  258. package/public/spice-console/lib/images/bitmap.js +203 -203
  259. package/public/spice-console/network/spicechannel.js +440 -440
  260. package/public/spice-console/process/cursorprocess.js +128 -128
  261. package/public/spice-console/process/inputprocess.js +227 -227
  262. package/public/spice-console/process/mainprocess.js +212 -212
  263. package/public/spice-console/run.js +210 -210
  264. package/store/main/getters.ts +2 -2
  265. package/store/main/mutations.ts +7 -7
  266. package/store/main/state.ts +7 -7
  267. package/store/tasks/actions.ts +1 -1
  268. package/store/tasks/mappers/recentTasks.ts +123 -123
  269. package/store/tasks/mappers/tasks.ts +1 -8
  270. package/store/tasks/mutations.ts +82 -82
  271. package/components/common/backup/storage/actions/add/steps/typeMode/tooltip/Tooltip.vue +0 -33
  272. package/components/common/certificate/Certificate.vue +0 -27
  273. package/components/common/certificate/CertificateInfo.vue +0 -139
  274. package/components/common/certificate/Tools.vue +0 -59
  275. package/components/common/certificate/lib/config/tabsPannel.ts +0 -22
  276. package/components/common/certificate/lib/models/interfaces.ts +0 -9
  277. package/components/common/certificate/lib/models/types.ts +0 -1
  278. package/components/common/certificate/modals/renew/New.vue +0 -64
  279. package/components/common/certificate/modals/renew/Old.vue +0 -122
  280. package/components/common/certificate/modals/renew/Renew.vue +0 -67
  281. package/components/common/layout/console/Console.vue +0 -70
  282. package/components/common/layout/console/lib/models/interfaces.ts +0 -10
  283. package/components/common/layout/theHeader/helpMenu/about/Old.vue +0 -78
  284. package/components/common/pages/auth/TheFooter.vue +0 -104
  285. package/components/common/pages/backups/backupsNew/Skeleton.vue +0 -136
  286. package/components/common/pages/files/lib/models/enums.ts +0 -36
  287. package/components/common/pages/tasks/table/lib/models/interfaces.ts +0 -9
  288. package/components/common/qr/Qr.vue +0 -69
  289. package/components/common/vm/snapshots/DetailView.vue +0 -90
  290. package/components/common/vm/snapshots/Old.vue +0 -71
  291. package/components/common/vm/snapshots/Snapshots.vue +0 -82
  292. package/components/common/vm/snapshots/lib/models/interfaces.ts +0 -5
  293. package/components/common/vm/snapshots/lib/models/types.ts +0 -11
  294. package/components/common/vm/snapshots/modals/confirm/Confirm.vue +0 -48
  295. package/components/common/vm/snapshots/modals/confirm/New.vue +0 -128
  296. package/components/common/vm/snapshots/modals/confirm/Old.vue +0 -140
  297. package/components/common/vm/snapshots/modals/confirm/lib/models/enums.ts +0 -19
  298. package/components/common/vm/snapshots/modals/lib/config/modalTexts.ts +0 -30
  299. package/components/common/vm/snapshots/modals/takeOrEdit/Old.vue +0 -220
  300. package/components/common/vm/snapshots/modals/takeOrEdit/TakeOrEdit.vue +0 -51
  301. package/components/common/vm/snapshots/modals/takeOrEdit/new/New.vue +0 -184
  302. package/components/common/vm/snapshots/modals/takeOrEdit/new/lib/utils/getSnapshotsName.ts +0 -15
  303. package/components/common/vm/snapshots/new/New.vue +0 -471
  304. package/components/common/vm/snapshots/new/Skeleton.vue +0 -136
  305. package/components/common/vm/snapshots/new/contextMenuView/ContextMenuView.vue +0 -103
  306. package/components/common/vm/snapshots/new/contextMenuView/lib/config/contextMenuItems.ts +0 -34
  307. package/components/common/vm/snapshots/new/lib/models/interfaces.ts +0 -12
  308. package/components/common/vm/snapshots/new/lib/utils/contextMenu.ts +0 -29
  309. package/components/common/vm/snapshots/new/lib/utils/details.ts +0 -48
  310. package/components/common/vm/snapshots/tools/Tools.vue +0 -56
  311. package/components/common/vm/snapshots/tools/lib/config/tabsPannel.ts +0 -39
  312. package/components/common/wizards/datastore/add/steps/nameAndDevice/advancedOptions/AdvancedOptions.vue +0 -43
  313. package/components/common/wizards/datastore/add/steps/nameAndDevice/advancedOptions/New.vue +0 -114
  314. package/components/common/wizards/datastore/add/steps/nameAndDevice/advancedOptions/Old.vue +0 -114
  315. package/components/common/wizards/datastore/add/steps/typeMode/tooltip/Tooltip.vue +0 -33
  316. package/composables/useBrowse.ts +0 -24
  317. package/lib/models/composables/useBrowse/interfaces.ts +0 -4
  318. package/store/inventory/modules/snapshots/lib/models/interfaces.ts +0 -45
  319. /package/components/common/layout/theHeader/helpMenu/{old → helpMenuOld}/lib/models/types.ts +0 -0
  320. /package/components/common/layout/theHeader/userMenu/{new → userMenuNew}/lib/config/dropMenu.ts +0 -0
  321. /package/components/common/layout/theHeader/userMenu/{old → userMenuOld}/lib/models/types.ts +0 -0
  322. /package/components/common/pages/backups/modals/restore/{New.vue → RestoreNew.vue} +0 -0
@@ -1,192 +1,192 @@
1
- <template>
2
- <common-wizards-network-add-steps-port-properties-new
3
- v-if="isNewView"
4
- v-model="fields"
5
- :messages-fields="props.messagesFields"
6
- :tcp-stacks="props.tcpStacks"
7
- :port-properties-enabled-services="portPropertiesEnabledServices"
8
- />
9
- <common-wizards-network-add-steps-port-properties-old
10
- v-else
11
- v-model="fields"
12
- :messages-fields="props.messagesFields"
13
- :alert-messages="props.alertMessages"
14
- :tcp-stacks="props.tcpStacks"
15
- :port-properties-enabled-services="portPropertiesEnabledServices"
16
- @hide-alert="onHideAlert"
17
- />
18
- </template>
19
-
20
- <script setup lang="ts">
21
- import type { UI_I_ErrorFields } from '~/node_modules/bfg-uikit/components/ui/wizard/lib/models/interfaces'
22
- import type Wizard from '~/node_modules/bfg-uikit/components/ui/wizard/lib/utils/utils'
23
- import type {
24
- UI_I_ArbitraryObject,
25
- UI_I_Localization,
26
- } from '~/lib/models/interfaces'
27
- import type { UI_T_Project } from '~/lib/models/types'
28
- import type {
29
- UI_I_PortProperties,
30
- UI_I_TCPStack,
31
- UI_I_PortPropertiesEnabledService,
32
- } from '~/components/common/wizards/network/add/lib/models/interfaces'
33
- import type { UI_T_TCP } from '~/components/common/wizards/network/add/lib/models/types'
34
- import {
35
- servicesInitial,
36
- portPropertiesEnabledServicesFunc,
37
- } from '~/components/common/wizards/network/add/lib/config/config'
38
- import {
39
- validateMtuPortPropertiesLocal,
40
- validateNetworkPortPropertiesLocal,
41
- validateVlanIdPortPropertiesLocal,
42
- } from '~/components/common/wizards/network/add/validations/validations'
43
-
44
- const props = withDefaults(
45
- defineProps<{
46
- wizard: Wizard
47
- portProperties: UI_I_PortProperties
48
- mtuFromSwitch?: number
49
- project: UI_T_Project
50
- messagesFields: UI_I_ArbitraryObject<UI_I_ErrorFields>
51
- alertMessages: string[]
52
- tcpStacks?: UI_I_TCPStack[]
53
- }>(),
54
- {
55
- mtuFromSwitch: 1500,
56
- tcpStacks: () => [],
57
- }
58
- )
59
-
60
- const emits = defineEmits<{
61
- (event: 'change-port-properties', portProperties: UI_I_PortProperties): void
62
- (event: 'change-gateway-flag', value: boolean): void
63
- (event: 'hide-alert', stepId: 3): void
64
- }>()
65
-
66
- const localization = computed<UI_I_Localization>(() => useLocal())
67
-
68
- const { $store }: any = useNuxtApp()
69
-
70
- const isNewView = computed<boolean>(() => $store.getters['main/getIsNewView'])
71
-
72
- const portPropertiesEnabledServices = computed<
73
- UI_I_PortPropertiesEnabledService[]
74
- >(() => portPropertiesEnabledServicesFunc(localization.value))
75
-
76
- const mtuCustom = ref<number>()
77
-
78
- const fields = ref<UI_I_PortProperties>({
79
- ...props.portProperties,
80
- mtu: {
81
- ...props.portProperties.mtu,
82
- size:
83
- !mtuCustom.value && props.portProperties.mtu.option !== '1'
84
- ? props.mtuFromSwitch
85
- : props.portProperties.mtu.size,
86
- },
87
- })
88
-
89
- const setEnabledService = (
90
- tcp: UI_T_TCP,
91
- currentFields: UI_I_PortProperties,
92
- newFields?: UI_I_PortProperties
93
- ): void => {
94
- if (tcp === 'default') {
95
- fields.value = {
96
- ...currentFields,
97
- services: useDeepCopy(servicesInitial),
98
- }
99
- } else if (servicesInitial.hasOwnProperty(tcp)) {
100
- fields.value = {
101
- ...(newFields || currentFields),
102
- services: {
103
- ...useDeepCopy(servicesInitial),
104
- [tcp]: true,
105
- },
106
- }
107
- } else {
108
- fields.value = {
109
- ...(newFields || currentFields),
110
- services: useDeepCopy(servicesInitial),
111
- }
112
- }
113
- }
114
-
115
- let oldFields = useDeepCopy(fields.value)
116
-
117
- watch(
118
- fields,
119
- (newFields: UI_I_PortProperties) => {
120
- if (newFields.tcp && newFields.tcp !== oldFields.tcp) {
121
- emits('change-gateway-flag', false)
122
- setEnabledService(newFields.tcp, fields.value, newFields)
123
- }
124
-
125
- oldFields.networkLabel !== newFields.networkLabel &&
126
- validateNetworkPortPropertiesLocal(
127
- localization.value,
128
- newFields,
129
- props.wizard
130
- )
131
-
132
- oldFields.vlanId !== newFields.vlanId &&
133
- validateVlanIdPortPropertiesLocal(
134
- localization.value,
135
- newFields,
136
- props.wizard
137
- )
138
-
139
- oldFields.mtu.size !== newFields.mtu.size &&
140
- validateMtuPortPropertiesLocal(
141
- localization.value,
142
- newFields,
143
- props.wizard
144
- )
145
-
146
- oldFields = useDeepCopy(newFields)
147
-
148
- emits('change-port-properties', newFields)
149
- },
150
- { deep: true, immediate: true }
151
- )
152
-
153
- watch(
154
- () => fields.value.mtu,
155
- (newMtu: { size: number; option: string }) => {
156
- if (newMtu.option === '0') {
157
- mtuCustom.value = props.mtuFromSwitch
158
- fields.value.mtu.size = props.mtuFromSwitch
159
- return
160
- }
161
- mtuCustom.value = newMtu.size
162
- },
163
- { deep: true, immediate: true }
164
- )
165
-
166
- watch(
167
- () => fields.value.tcp,
168
- (newTcp: UI_T_TCP, oldTcp: UI_T_TCP) => {
169
- if (newTcp !== oldTcp) {
170
- setEnabledService(newTcp, fields.value)
171
- }
172
- emits('change-port-properties', fields.value)
173
- }
174
- )
175
-
176
- watch(
177
- () => props.tcpStacks,
178
- (newValue: UI_I_TCPStack[]) => {
179
- if (fields.value.tcp === '') {
180
- fields.value.tcp =
181
- newValue?.find?.((item) => item.id === 'default')?.id ||
182
- newValue?.[0]?.id ||
183
- ''
184
- }
185
- },
186
- { deep: true, immediate: true }
187
- )
188
-
189
- const onHideAlert = (): void => {
190
- emits('hide-alert', 3)
191
- }
192
- </script>
1
+ <template>
2
+ <common-wizards-network-add-steps-port-properties-new
3
+ v-if="isNewView"
4
+ v-model="fields"
5
+ :messages-fields="props.messagesFields"
6
+ :tcp-stacks="props.tcpStacks"
7
+ :port-properties-enabled-services="portPropertiesEnabledServices"
8
+ />
9
+ <common-wizards-network-add-steps-port-properties-old
10
+ v-else
11
+ v-model="fields"
12
+ :messages-fields="props.messagesFields"
13
+ :alert-messages="props.alertMessages"
14
+ :tcp-stacks="props.tcpStacks"
15
+ :port-properties-enabled-services="portPropertiesEnabledServices"
16
+ @hide-alert="onHideAlert"
17
+ />
18
+ </template>
19
+
20
+ <script setup lang="ts">
21
+ import type { UI_I_ErrorFields } from '~/node_modules/bfg-uikit/components/ui/wizard/lib/models/interfaces'
22
+ import type Wizard from '~/node_modules/bfg-uikit/components/ui/wizard/lib/utils/utils'
23
+ import type {
24
+ UI_I_ArbitraryObject,
25
+ UI_I_Localization,
26
+ } from '~/lib/models/interfaces'
27
+ import type { UI_T_Project } from '~/lib/models/types'
28
+ import type {
29
+ UI_I_PortProperties,
30
+ UI_I_TCPStack,
31
+ UI_I_PortPropertiesEnabledService,
32
+ } from '~/components/common/wizards/network/add/lib/models/interfaces'
33
+ import type { UI_T_TCP } from '~/components/common/wizards/network/add/lib/models/types'
34
+ import {
35
+ servicesInitial,
36
+ portPropertiesEnabledServicesFunc,
37
+ } from '~/components/common/wizards/network/add/lib/config/config'
38
+ import {
39
+ validateMtuPortPropertiesLocal,
40
+ validateNetworkPortPropertiesLocal,
41
+ validateVlanIdPortPropertiesLocal,
42
+ } from '~/components/common/wizards/network/add/validations/validations'
43
+
44
+ const props = withDefaults(
45
+ defineProps<{
46
+ wizard: Wizard
47
+ portProperties: UI_I_PortProperties
48
+ mtuFromSwitch?: number
49
+ project: UI_T_Project
50
+ messagesFields: UI_I_ArbitraryObject<UI_I_ErrorFields>
51
+ alertMessages: string[]
52
+ tcpStacks?: UI_I_TCPStack[]
53
+ }>(),
54
+ {
55
+ mtuFromSwitch: 1500,
56
+ tcpStacks: () => [],
57
+ }
58
+ )
59
+
60
+ const emits = defineEmits<{
61
+ (event: 'change-port-properties', portProperties: UI_I_PortProperties): void
62
+ (event: 'change-gateway-flag', value: boolean): void
63
+ (event: 'hide-alert', stepId: 3): void
64
+ }>()
65
+
66
+ const localization = computed<UI_I_Localization>(() => useLocal())
67
+
68
+ const { $store }: any = useNuxtApp()
69
+
70
+ const isNewView = computed<boolean>(() => $store.getters['main/getIsNewView'])
71
+
72
+ const portPropertiesEnabledServices = computed<
73
+ UI_I_PortPropertiesEnabledService[]
74
+ >(() => portPropertiesEnabledServicesFunc(localization.value))
75
+
76
+ const mtuCustom = ref<number>()
77
+
78
+ const fields = ref<UI_I_PortProperties>({
79
+ ...props.portProperties,
80
+ mtu: {
81
+ ...props.portProperties.mtu,
82
+ size:
83
+ !mtuCustom.value && props.portProperties.mtu.option !== '1'
84
+ ? props.mtuFromSwitch
85
+ : props.portProperties.mtu.size,
86
+ },
87
+ })
88
+
89
+ const setEnabledService = (
90
+ tcp: UI_T_TCP,
91
+ currentFields: UI_I_PortProperties,
92
+ newFields?: UI_I_PortProperties
93
+ ): void => {
94
+ if (tcp === 'default') {
95
+ fields.value = {
96
+ ...currentFields,
97
+ services: useDeepCopy(servicesInitial),
98
+ }
99
+ } else if (servicesInitial.hasOwnProperty(tcp)) {
100
+ fields.value = {
101
+ ...(newFields || currentFields),
102
+ services: {
103
+ ...useDeepCopy(servicesInitial),
104
+ [tcp]: true,
105
+ },
106
+ }
107
+ } else {
108
+ fields.value = {
109
+ ...(newFields || currentFields),
110
+ services: useDeepCopy(servicesInitial),
111
+ }
112
+ }
113
+ }
114
+
115
+ let oldFields = useDeepCopy(fields.value)
116
+
117
+ watch(
118
+ fields,
119
+ (newFields: UI_I_PortProperties) => {
120
+ if (newFields.tcp && newFields.tcp !== oldFields.tcp) {
121
+ emits('change-gateway-flag', false)
122
+ setEnabledService(newFields.tcp, fields.value, newFields)
123
+ }
124
+
125
+ oldFields.networkLabel !== newFields.networkLabel &&
126
+ validateNetworkPortPropertiesLocal(
127
+ localization.value,
128
+ newFields,
129
+ props.wizard
130
+ )
131
+
132
+ oldFields.vlanId !== newFields.vlanId &&
133
+ validateVlanIdPortPropertiesLocal(
134
+ localization.value,
135
+ newFields,
136
+ props.wizard
137
+ )
138
+
139
+ oldFields.mtu.size !== newFields.mtu.size &&
140
+ validateMtuPortPropertiesLocal(
141
+ localization.value,
142
+ newFields,
143
+ props.wizard
144
+ )
145
+
146
+ oldFields = useDeepCopy(newFields)
147
+
148
+ emits('change-port-properties', newFields)
149
+ },
150
+ { deep: true, immediate: true }
151
+ )
152
+
153
+ watch(
154
+ () => fields.value.mtu,
155
+ (newMtu: { size: number; option: string }) => {
156
+ if (newMtu.option === '0') {
157
+ mtuCustom.value = props.mtuFromSwitch
158
+ fields.value.mtu.size = props.mtuFromSwitch
159
+ return
160
+ }
161
+ mtuCustom.value = newMtu.size
162
+ },
163
+ { deep: true, immediate: true }
164
+ )
165
+
166
+ watch(
167
+ () => fields.value.tcp,
168
+ (newTcp: UI_T_TCP, oldTcp: UI_T_TCP) => {
169
+ if (newTcp !== oldTcp) {
170
+ setEnabledService(newTcp, fields.value)
171
+ }
172
+ emits('change-port-properties', fields.value)
173
+ }
174
+ )
175
+
176
+ watch(
177
+ () => props.tcpStacks,
178
+ (newValue: UI_I_TCPStack[]) => {
179
+ if (fields.value.tcp === '') {
180
+ fields.value.tcp =
181
+ newValue?.find?.((item) => item.id === 'default')?.id ||
182
+ newValue?.[0]?.id ||
183
+ ''
184
+ }
185
+ },
186
+ { deep: true, immediate: true }
187
+ )
188
+
189
+ const onHideAlert = (): void => {
190
+ emits('hide-alert', 3)
191
+ }
192
+ </script>
@@ -34,7 +34,6 @@
34
34
 
35
35
  <div
36
36
  v-show="props.connectionType === '2'"
37
- v-permission="'Networks.UpdateSwitch'"
38
37
  :class="['radio-block', { selected: fieldsLocal.selected === '2' }]"
39
38
  @click="fieldsLocal.selected = '2'"
40
39
  >
@@ -47,8 +46,8 @@
47
46
  />
48
47
  </div>
49
48
 
49
+ <!-- v-permission="'Networks.CreateSwitch'" -->
50
50
  <div
51
- v-permission="'Networks.CreateSwitch'"
52
51
  :class="['radio-block', { selected: fieldsLocal.selected === '3' }]"
53
52
  @click="fieldsLocal.selected = '3'"
54
53
  >
@@ -135,7 +135,7 @@
135
135
  </div>
136
136
 
137
137
  <div v-show="props.connectionType === '2'">
138
- <div v-permission="'Networks.UpdateSwitch'" class="radio">
138
+ <div class="radio">
139
139
  <input
140
140
  id="existing-switch"
141
141
  v-model="fieldsLocal.selected"
@@ -149,7 +149,6 @@
149
149
  </label>
150
150
  </div>
151
151
  <fieldset
152
- v-permission="'Networks.UpdateSwitch'"
153
152
  :class="{
154
153
  disabled: fieldsLocal.selected !== '2',
155
154
  }"
@@ -198,7 +197,8 @@
198
197
  </div>
199
198
 
200
199
  <div>
201
- <div v-permission="'Networks.CreateSwitch'" class="radio">
200
+ <!-- v-permission="'Networks.CreateSwitch'"-->
201
+ <div class="radio">
202
202
  <input
203
203
  id="standard-switch"
204
204
  v-model="fieldsLocal.selected"
@@ -213,7 +213,6 @@
213
213
  </label>
214
214
  </div>
215
215
  <fieldset
216
- v-permission="'Networks.CreateSwitch'"
217
216
  :class="{
218
217
  disabled: fieldsLocal.selected !== '3',
219
218
  }"
@@ -268,7 +267,9 @@ import type {
268
267
  UI_I_ArbitraryObject,
269
268
  UI_I_Localization,
270
269
  } from '~/lib/models/interfaces'
271
- import type { UI_I_TargetDevice } from '~/components/common/wizards/network/add/lib/models/interfaces'
270
+ import type {
271
+ UI_I_TargetDevice,
272
+ } from '~/components/common/wizards/network/add/lib/models/interfaces'
272
273
 
273
274
  const props = defineProps<{
274
275
  fields: UI_I_TargetDevice
@@ -287,19 +288,6 @@ const emits = defineEmits<{
287
288
 
288
289
  const localization = computed<UI_I_Localization>(() => useLocal())
289
290
 
290
- const existingStandardSwitchPermission = computed<string>(() => {
291
- switch (props.connectionType) {
292
- case '0':
293
- return 'Networks.CreateSysx'
294
- case '1':
295
- return 'Networks.CreatePortGroup'
296
- case '2':
297
- return 'Networks.UpdateSwitch'
298
- default:
299
- return ''
300
- }
301
- })
302
-
303
291
  const fieldsLocal = computed({
304
292
  get() {
305
293
  return props.fields
@@ -1,6 +1,6 @@
1
1
  export enum UI_E_VmMigrationType {
2
- resource = 'changeComputeResourceOnly',
3
- storage = 'changeStorageOnly',
2
+ resource = 'changeComputeResourceOriginalStorage',
3
+ storage = 'changeStorageComputeResource',
4
4
  'resource-storage' = 'changeComputeResourceAndStorage',
5
5
  server = '',
6
6
  }
@@ -159,7 +159,7 @@ export const bodyItems = (
159
159
  testId: `migrate-host-table-item-${key}`
160
160
  },
161
161
  {
162
- key: 'col13',
162
+ key: 'col14',
163
163
  text: host[hostTableItemKeys[13]],
164
164
  id: key,
165
165
  testId: `migrate-host-table-item-${key}`
@@ -80,10 +80,10 @@ const onApplyChanges = (): void => {
80
80
  /* TODO сделать рефакторинг потом */
81
81
  model.value.configure.disks.forEach((disk) => {
82
82
  const selectedDisk = selectedPerDisks.value.find(
83
- (selectedDisk) =>
84
- selectedDisk.virtual_machine === disk.virtual_machine &&
85
- selectedDisk.extra.disk_source === disk.extra.disk_source &&
86
- selectedDisk.extra.datastore_id === disk.extra.datastore_id
83
+ (selected) =>
84
+ selected.virtual_machine === disk.virtual_machine &&
85
+ selected.file === disk.file &&
86
+ selected.extra.datastore_id === disk.extra.datastore_id
87
87
  )!
88
88
 
89
89
  if (selectedDisk) {
@@ -158,16 +158,12 @@ export const getBodyDataFunc = (
158
158
  bodyData: UI_I_StorageConfigurePerDiskItem[],
159
159
  localization: UI_I_Localization
160
160
  ): UI_I_DataTableBody[] => {
161
+ const { $binary }: any = useNuxtApp()
161
162
 
162
163
  return bodyData.map((disk, index: number) => {
163
164
  const diskFormat =
164
165
  index === 0 ? 'N/A' : UI_E_SelectStorageDiskFormat[disk.disk_format]
165
166
 
166
- const file =
167
- disk.extra.disk_source === 'meta'
168
- ? disk.file
169
- : `${disk.extra.disk_source} (${disk.extra.disk_size} ${localization.common.mb} )`
170
-
171
167
  const diskSharingKey = disk.extra.sharing
172
168
  ? E_DiskSharing.Active
173
169
  : E_DiskSharing.Inactive
@@ -202,7 +198,7 @@ export const getBodyDataFunc = (
202
198
  },
203
199
  {
204
200
  col: 'col2',
205
- text: file,
201
+ text: disk.file,
206
202
  },
207
203
  {
208
204
  col: 'col3',
@@ -66,85 +66,69 @@ export const bodyItems = (
66
66
  data: UI_I_StorageConfigurePerDiskItem[]
67
67
  ): UI_I_BodyItem[][] => {
68
68
  const bodyItems: UI_I_BodyItem[][] = []
69
- const localization = useLocal()
70
69
 
71
- data.forEach((disk: UI_I_StorageConfigurePerDiskItem, key: number) => {
70
+ data.forEach((storage: UI_I_StorageConfigurePerDiskItem, key: number) => {
72
71
  const diskFormat =
73
72
  key === 0
74
73
  ? 'N/A'
75
- : UI_E_SelectStorageDiskFormat[disk[vmMigrateDiskTableItemKeys[4]]]
76
-
77
- const file =
78
- disk.extra.disk_source === 'meta'
79
- ? disk[vmMigrateDiskTableItemKeys[2]]
80
- : `${disk.extra.disk_source} (${disk.extra.disk_size} ${localization.common.mb} )`
74
+ : UI_E_SelectStorageDiskFormat[storage[vmMigrateDiskTableItemKeys[4]]]
81
75
 
82
76
  bodyItems.push([
83
77
  {
84
78
  key: 'col0',
85
- text: disk[vmMigrateDiskTableItemKeys[0]],
79
+ text: storage[vmMigrateDiskTableItemKeys[0]],
86
80
  id: key,
87
- testId: `disk-table-${key}`,
88
81
  },
89
82
  {
90
83
  key: 'col1',
91
- text: disk[vmMigrateDiskTableItemKeys[1]],
84
+ text: storage[vmMigrateDiskTableItemKeys[1]],
92
85
  id: key,
93
- testId: `disk-table-${key}`,
94
86
  },
95
87
  {
96
88
  key: 'col2',
97
- text: file,
89
+ text: storage[vmMigrateDiskTableItemKeys[2]],
98
90
  id: key,
99
- testId: `disk-table-${key}`,
100
91
  },
101
92
  {
102
93
  key: 'col3',
103
- text: disk[vmMigrateDiskTableItemKeys[3]],
94
+ text: storage[vmMigrateDiskTableItemKeys[3]],
104
95
  id: key,
105
- testId: `disk-table-${key}`,
106
96
  },
107
97
  {
108
98
  key: 'col4',
109
99
  text: diskFormat,
110
100
  id: key,
111
- testId: `disk-table-${key}`,
112
101
  },
113
102
  {
114
103
  key: 'col5',
115
- text: disk.extra[vmMigrateDiskTableItemKeys[5]],
104
+ text: storage.extra[vmMigrateDiskTableItemKeys[5]],
116
105
  id: key,
117
- testId: `disk-table-${key}`,
118
106
  },
107
+
119
108
  {
120
109
  key: 'col6',
121
- text: disk.extra[vmMigrateDiskTableItemKeys[6]],
110
+ text: storage.extra[vmMigrateDiskTableItemKeys[6]],
122
111
  id: key,
123
- testId: `disk-table-${key}`,
124
112
  },
125
113
  {
126
114
  key: 'col7',
127
- text: disk.extra[vmMigrateDiskTableItemKeys[7]],
115
+ text: storage.extra[vmMigrateDiskTableItemKeys[7]],
128
116
  id: key,
129
- testId: `disk-table-${key}`,
130
117
  },
131
118
  {
132
119
  key: 'col8',
133
- text: disk.extra[vmMigrateDiskTableItemKeys[8]],
120
+ text: storage.extra[vmMigrateDiskTableItemKeys[8]],
134
121
  id: key,
135
- testId: `disk-table-${key}`,
136
122
  },
137
123
  {
138
124
  key: 'col9',
139
- text: disk.extra[vmMigrateDiskTableItemKeys[9]],
125
+ text: storage.extra[vmMigrateDiskTableItemKeys[9]],
140
126
  id: key,
141
- testId: `disk-table-${key}`,
142
127
  },
143
128
  {
144
129
  key: 'col10',
145
- text: disk.extra[vmMigrateDiskTableItemKeys[10]],
130
+ text: storage.extra[vmMigrateDiskTableItemKeys[10]],
146
131
  id: key,
147
- testId: `disk-table-${key}`,
148
132
  },
149
133
  ])
150
134
  })
@@ -0,0 +1,21 @@
1
+ let exists: any = []
2
+ export const useDeepCopy = (obj: any, is = false) => {
3
+ if (!is) exists = []
4
+ if (typeof obj !== 'object' || obj === null) {
5
+ return obj
6
+ }
7
+
8
+ const res: any = Array.isArray(obj) ? [] : {}
9
+ for (const i in obj) {
10
+ const item = obj[i]
11
+ if (exists.includes(item)) {
12
+ res[i] = item
13
+ continue
14
+ }
15
+ exists.push(item)
16
+
17
+ res[i] = useDeepCopy(item, true)
18
+ }
19
+
20
+ return res
21
+ }