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,123 +1,123 @@
1
- import {
2
- UI_E_RecentTaskStatus,
3
- UI_E_IconNameByRecentTaskStatus,
4
- } from '~/lib/models/store/tasks/enums'
5
- import type {
6
- API_UI_I_RecentTask,
7
- UI_I_RecentTask,
8
- UI_T_TaskStatusDetails,
9
- } from '~/lib/models/store/tasks/interfaces'
10
- import { base64 } from '~/lib/utils/base64'
11
- import {
12
- UI_E_RecentTaskStatusIcon,
13
- UI_E_RecentTaskStatusIconNewView,
14
- } from '~/store/tasks/lib/models/enums'
15
-
16
- export const recentTasks = (
17
- data: API_UI_I_RecentTask<string>
18
- ): UI_I_RecentTask<string> => {
19
- const { $store }: any = useNuxtApp()
20
-
21
- const isNewView = $store.getters['main/getIsNewView']
22
-
23
- const items =
24
- data.items
25
- ?.sort((a, b) => {
26
- return b.start_time - a.start_time
27
- })
28
- .map((task) => {
29
- let args: any = {}
30
- try {
31
- args = base64.decode(task.args)
32
- } catch (error) {
33
- args = {}
34
- }
35
-
36
- let completion: string = task.completion + '' || '--'
37
- let execution: string | number = Math.abs(
38
- task.start_time - task.completion
39
- )
40
- let queuedFor: number = task.start_time - task.creation_time
41
- let startTime: string = task.start_time + '' || '--'
42
- // Обрабатываем данные когда задачка в ожидании
43
- if (task.status === 0) {
44
- completion = '--'
45
- execution = '--'
46
- queuedFor = 0
47
- startTime = Date.now() / 1000 + ''
48
- // Обрабатываем данные когда задачка в работе или когда в статусе retry
49
- } else if (task.status === 1 || task.status === 5) {
50
- completion = '--'
51
- execution = '--'
52
- }
53
-
54
- const { upd_operations } = task.extra
55
- const operations: UI_T_TaskStatusDetails[] =
56
- upd_operations?.operations?.map(
57
- (operation: UI_T_TaskStatusDetails) => {
58
- return {
59
- ...operation,
60
- iconClassName: isNewView
61
- ? UI_E_RecentTaskStatusIconNewView[operation.status]
62
- : UI_E_RecentTaskStatusIcon[operation.status],
63
- testId: operation.operation_type.replaceAll(' ', '-'),
64
- }
65
- }
66
- ) || []
67
-
68
- // TODO
69
- let statusIcon = 'help-icon'
70
- switch (task.status) {
71
- case 0:
72
- statusIcon = 'help-icon'
73
- break
74
- case 1:
75
- statusIcon = 'green-play'
76
- break
77
- case 2:
78
- statusIcon = 'success-circle'
79
- break
80
- case 3:
81
- case 4:
82
- statusIcon = 'error-outline'
83
- break
84
- case 5:
85
- statusIcon = 'warning-outline'
86
- break
87
- }
88
-
89
- const targetName = task.extra.target_name || '--'
90
- const targetType = task.extra.target_type || task.target_type
91
-
92
- return {
93
- args,
94
- completion,
95
- execution,
96
- queuedFor,
97
- startTime,
98
- statusIcon,
99
- progress: task.progress,
100
- details: task.details,
101
- error: task.error,
102
- initiator: task.initiator,
103
- server: task.server,
104
- // statusIcon: UI_E_IconNameByRecentTaskStatus[task.status],
105
- statusText: task.error || UI_E_RecentTaskStatus[task.status],
106
- status: task.status,
107
- statusDetails: operations,
108
- target: task.target,
109
- targetName,
110
- targetType,
111
- // targetType: task.target_type,
112
- taskName: task.task_name,
113
- id: task.id,
114
- zone: task.zone,
115
- extra: task.extra,
116
- isCanceled: task.status === 4
117
- }
118
- }) || []
119
- return {
120
- items,
121
- last: data.last,
122
- }
123
- }
1
+ import {
2
+ UI_E_RecentTaskStatus,
3
+ UI_E_IconNameByRecentTaskStatus,
4
+ } from '~/lib/models/store/tasks/enums'
5
+ import type {
6
+ API_UI_I_RecentTask,
7
+ UI_I_RecentTask,
8
+ UI_T_TaskStatusDetails,
9
+ } from '~/lib/models/store/tasks/interfaces'
10
+ import { base64 } from '~/lib/utils/base64'
11
+ import {
12
+ UI_E_RecentTaskStatusIcon,
13
+ UI_E_RecentTaskStatusIconNewView,
14
+ } from '~/store/tasks/lib/models/enums'
15
+
16
+ export const recentTasks = (
17
+ data: API_UI_I_RecentTask<string>
18
+ ): UI_I_RecentTask<string> => {
19
+ const { $store }: any = useNuxtApp()
20
+
21
+ const isNewView = $store.getters['main/getIsNewView']
22
+
23
+ const items =
24
+ data.items
25
+ ?.sort((a, b) => {
26
+ return b.start_time - a.start_time
27
+ })
28
+ .map((task) => {
29
+ let args: any = {}
30
+ try {
31
+ args = base64.decode(task.args)
32
+ } catch (error) {
33
+ args = {}
34
+ }
35
+
36
+ let completion: string = task.completion + '' || '--'
37
+ let execution: string | number = Math.abs(
38
+ task.start_time - task.completion
39
+ )
40
+ let queuedFor: number = task.start_time - task.creation_time
41
+ let startTime: string = task.start_time + '' || '--'
42
+ // Обрабатываем данные когда задачка в ожидании
43
+ if (task.status === 0) {
44
+ completion = '--'
45
+ execution = '--'
46
+ queuedFor = 0
47
+ startTime = Date.now() / 1000 + ''
48
+ // Обрабатываем данные когда задачка в работе или когда в статусе retry
49
+ } else if (task.status === 1 || task.status === 5) {
50
+ completion = '--'
51
+ execution = '--'
52
+ }
53
+
54
+ const { upd_operations } = task.extra
55
+ const operations: UI_T_TaskStatusDetails[] =
56
+ upd_operations?.operations?.map(
57
+ (operation: UI_T_TaskStatusDetails) => {
58
+ return {
59
+ ...operation,
60
+ iconClassName: isNewView
61
+ ? UI_E_RecentTaskStatusIconNewView[operation.status]
62
+ : UI_E_RecentTaskStatusIcon[operation.status],
63
+ testId: operation.operation_type.replaceAll(' ', '-'),
64
+ }
65
+ }
66
+ ) || []
67
+
68
+ // TODO
69
+ let statusIcon = 'help-icon'
70
+ switch (task.status) {
71
+ case 0:
72
+ statusIcon = 'help-icon'
73
+ break
74
+ case 1:
75
+ statusIcon = 'green-play'
76
+ break
77
+ case 2:
78
+ statusIcon = 'success-circle'
79
+ break
80
+ case 3:
81
+ case 4:
82
+ statusIcon = 'error-outline'
83
+ break
84
+ case 5:
85
+ statusIcon = 'warning-outline'
86
+ break
87
+ }
88
+
89
+ const targetName = task.extra.target_name || '--'
90
+ const targetType = task.extra.target_type || task.target_type
91
+
92
+ return {
93
+ args,
94
+ completion,
95
+ execution,
96
+ queuedFor,
97
+ startTime,
98
+ statusIcon,
99
+ progress: task.progress,
100
+ details: task.details,
101
+ error: task.error,
102
+ initiator: task.initiator,
103
+ server: task.server,
104
+ // statusIcon: UI_E_IconNameByRecentTaskStatus[task.status],
105
+ statusText: task.error || UI_E_RecentTaskStatus[task.status],
106
+ status: task.status,
107
+ statusDetails: operations,
108
+ target: task.target,
109
+ targetName,
110
+ targetType,
111
+ // targetType: task.target_type,
112
+ taskName: task.task_name,
113
+ id: task.id,
114
+ zone: task.zone,
115
+ extra: task.extra,
116
+ isCanceled: task.status === 4
117
+ }
118
+ }) || []
119
+ return {
120
+ items,
121
+ last: data.last,
122
+ }
123
+ }
@@ -10,15 +10,8 @@ import {
10
10
  } from '~/lib/models/store/tasks/enums'
11
11
 
12
12
  export const tasksConstructor = (
13
- data: API_UI_I_Task<string> | null
13
+ data: API_UI_I_Task<string>
14
14
  ): UI_I_Task<string> => {
15
- if (!data) {
16
- return {
17
- total_items: 1,
18
- total_pages: 1,
19
- items: []
20
- }
21
- }
22
15
  const items: UI_I_TaskItem<string>[] =
23
16
  data.items?.map((task: API_UI_I_TaskItem<string>) => {
24
17
  return {
@@ -1,82 +1,82 @@
1
- import type {
2
- UI_I_RawRecentTask,
3
- UI_I_TasksLoadingPayload,
4
- UI_I_RecentTask,
5
- UI_I_Task,
6
- } from '~/lib/models/store/tasks/interfaces'
7
- import type { UI_I_TasksState } from '~/store/tasks/lib/models/interfaces'
8
-
9
- export default {
10
- M_SET_RECENT_TASKS_LIST(
11
- state: UI_I_TasksState,
12
- payload: UI_I_RecentTask<string>
13
- ): void {
14
- if (state.recentTaskList) {
15
- state.recentTaskList.last = payload.last
16
-
17
- // Заменяем которые уже имеются и удаляем их из payload.items
18
- state.recentTaskList.items = state.recentTaskList.items.map((task) => {
19
- let changedTask = null
20
- payload.items = payload.items.filter((task2) => {
21
- if (task2.id === task.id) changedTask = task2
22
- return task2.id !== task.id
23
- })
24
-
25
- return changedTask || task
26
- })
27
-
28
- // Делаем слияние новых и старых tasks
29
- state.recentTaskList.items = [
30
- ...payload.items,
31
- ...state.recentTaskList.items,
32
- ]
33
- return
34
- }
35
-
36
- state.recentTaskList = payload
37
- },
38
- M_SET_ABORT_CONTROLLER(
39
- state: UI_I_TasksState,
40
- payload: AbortController
41
- ): void {
42
- state.abortController = payload
43
- },
44
- M_CANCEL_RECENT_TASKS(state: UI_I_TasksState): void {
45
- state.abortController && state.abortController.abort()
46
- },
47
- M_HIDE_CANCEL_RECENT_TASK_BY_ID(
48
- state: UI_I_TasksState,
49
- payload: string
50
- ): void {
51
- if (!state.recentTaskList) return
52
- state.recentTaskList.items = state.recentTaskList.items.map((task) => {
53
- if (task.id === payload) {
54
- task.isCanceled = true
55
- }
56
- return task
57
- })
58
- },
59
- M_SET_TASKS_LAST_QUERY(state: UI_I_TasksState, payload: string): void {
60
- state.taskLastRequestType = payload
61
- },
62
- M_SET_TASKS_LIST(state: UI_I_TasksState, payload: UI_I_Task<string>): void {
63
- state.taskList = payload
64
- },
65
- M_SET_UPDATED_RECENT_TASKS_LIST(
66
- state: UI_I_TasksState,
67
- payload: UI_I_RawRecentTask<string>
68
- ): void {
69
- state.updatedTaskList = payload.items
70
- },
71
- M_SET_FIRST_TASK(state: UI_I_TasksState): void {
72
- state.hasFirstTask = true
73
- },
74
-
75
- M_SET_LOADING(
76
- state: UI_I_TasksState,
77
- payload: UI_I_TasksLoadingPayload
78
- ): void {
79
- const { prop, value } = payload
80
- state.loading[prop] = value
81
- },
82
- }
1
+ import type {
2
+ UI_I_RawRecentTask,
3
+ UI_I_TasksLoadingPayload,
4
+ UI_I_RecentTask,
5
+ UI_I_Task,
6
+ } from '~/lib/models/store/tasks/interfaces'
7
+ import type { UI_I_TasksState } from '~/store/tasks/lib/models/interfaces'
8
+
9
+ export default {
10
+ M_SET_RECENT_TASKS_LIST(
11
+ state: UI_I_TasksState,
12
+ payload: UI_I_RecentTask<string>
13
+ ): void {
14
+ if (state.recentTaskList) {
15
+ state.recentTaskList.last = payload.last
16
+
17
+ // Заменяем которые уже имеются и удаляем их из payload.items
18
+ state.recentTaskList.items = state.recentTaskList.items.map((task) => {
19
+ let changedTask = null
20
+ payload.items = payload.items.filter((task2) => {
21
+ if (task2.id === task.id) changedTask = task2
22
+ return task2.id !== task.id
23
+ })
24
+
25
+ return changedTask || task
26
+ })
27
+
28
+ // Делаем слияние новых и старых tasks
29
+ state.recentTaskList.items = [
30
+ ...payload.items,
31
+ ...state.recentTaskList.items,
32
+ ]
33
+ return
34
+ }
35
+
36
+ state.recentTaskList = payload
37
+ },
38
+ M_SET_ABORT_CONTROLLER(
39
+ state: UI_I_TasksState,
40
+ payload: AbortController
41
+ ): void {
42
+ state.abortController = payload
43
+ },
44
+ M_CANCEL_RECENT_TASKS(state: UI_I_TasksState): void {
45
+ state.abortController && state.abortController.abort()
46
+ },
47
+ M_HIDE_CANCEL_RECENT_TASK_BY_ID(
48
+ state: UI_I_TasksState,
49
+ payload: string
50
+ ): void {
51
+ if (!state.recentTaskList) return
52
+ state.recentTaskList.items = state.recentTaskList.items.map((task) => {
53
+ if (task.id === payload) {
54
+ task.isCanceled = true
55
+ }
56
+ return task
57
+ })
58
+ },
59
+ M_SET_TASKS_LAST_QUERY(state: UI_I_TasksState, payload: string): void {
60
+ state.taskLastRequestType = payload
61
+ },
62
+ M_SET_TASKS_LIST(state: UI_I_TasksState, payload: UI_I_Task<string>): void {
63
+ state.taskList = payload
64
+ },
65
+ M_SET_UPDATED_RECENT_TASKS_LIST(
66
+ state: UI_I_TasksState,
67
+ payload: UI_I_RawRecentTask<string>
68
+ ): void {
69
+ state.updatedTaskList = payload.items
70
+ },
71
+ M_SET_FIRST_TASK(state: UI_I_TasksState): void {
72
+ state.hasFirstTask = true
73
+ },
74
+
75
+ M_SET_LOADING(
76
+ state: UI_I_TasksState,
77
+ payload: UI_I_TasksLoadingPayload
78
+ ): void {
79
+ const { prop, value } = payload
80
+ state.loading[prop] = value
81
+ },
82
+ }
@@ -1,33 +0,0 @@
1
- <template>
2
- <div
3
- id="type-select-help-icon"
4
- class="signpost-container relative flex cursor-pointer"
5
- >
6
- <atoms-the-icon
7
- data-id="toggle-type-select-help-icon"
8
- fill="#0072a3"
9
- width="24px"
10
- height="24px"
11
- name="info-circle"
12
- @click="isShowTypeHelp = !isShowTypeHelp"
13
- />
14
- <atoms-tooltip-signpost
15
- v-if="isShowTypeHelp"
16
- elem-id="type-select-help-icon"
17
- test-id="select-datastore-type"
18
- @hide="isShowTypeHelp = false"
19
- >
20
- <p class="help-desc">
21
- {{ localization.common.datastoreTypeHelpDesc }}
22
- </p>
23
- </atoms-tooltip-signpost>
24
- </div>
25
- </template>
26
- <script setup lang="ts">
27
- import type { UI_I_Localization } from '~/lib/models/interfaces'
28
-
29
- const localization = computed<UI_I_Localization>(() => useLocal())
30
-
31
- const isShowTypeHelp = ref<boolean>(false)
32
- </script>
33
- <style scoped lang="scss"></style>
@@ -1,27 +0,0 @@
1
- <template>
2
- <atoms-loader v-show="props.loading" test-id="certificate-spinner" />
3
- <div class="certificate flex flex-col h-full">
4
- <common-certificate-tools @renew-certificate="emits('renew-certificate')" />
5
-
6
- <common-certificate-info :certificate-data="props.certificateData" />
7
- </div>
8
- </template>
9
-
10
- <script lang="ts" setup>
11
- import type { UI_I_Certificate } from '~/components/common/certificate/lib/models/interfaces'
12
-
13
- const props = defineProps<{
14
- loading: boolean
15
- certificateData: UI_I_Certificate | {}
16
- }>()
17
-
18
- const emits = defineEmits<{
19
- (event: 'renew-certificate'): void
20
- }>()
21
- </script>
22
-
23
- <style lang="scss" scoped>
24
- .certificate {
25
- padding-left: 10px;
26
- }
27
- </style>
@@ -1,139 +0,0 @@
1
- <template>
2
- <div class="stack-view">
3
- <atoms-stack-block
4
- :has-children="false"
5
- test-id="certificate-subject-stack-block"
6
- >
7
- <template #stackBlockKey>
8
- <div class="flex-align-center">
9
- <span data-id="certificate-subject">{{
10
- localization.common.subject
11
- }}</span>
12
- </div>
13
- </template>
14
- <template #stackBlockContent
15
- ><span data-id="certificate-subject-value">{{
16
- props.certificateData.subject
17
- }}</span></template
18
- >
19
- </atoms-stack-block>
20
- <atoms-stack-block
21
- :has-children="false"
22
- test-id="certificate-issuer-stack-block"
23
- >
24
- <template #stackBlockKey>
25
- <div class="flex-align-center">
26
- <span data-id="certificate-issuer">{{
27
- localization.common.issuer
28
- }}</span>
29
- </div>
30
- </template>
31
- <template #stackBlockContent
32
- ><span data-id="certificate-issuer-value">{{
33
- props.certificateData.issuer
34
- }}</span></template
35
- >
36
- </atoms-stack-block>
37
- <atoms-stack-block
38
- :has-children="false"
39
- test-id="certificate-valid-from-stack-block"
40
- >
41
- <template #stackBlockKey>
42
- <div class="flex-align-center">
43
- <span data-id="certificate-valid-from">{{
44
- localization.common.validFrom
45
- }}</span>
46
- </div>
47
- </template>
48
- <template #stackBlockContent
49
- ><span data-id="certificate-valid-from-value">{{
50
- validFrom
51
- }}</span></template
52
- >
53
- </atoms-stack-block>
54
- <atoms-stack-block
55
- :has-children="false"
56
- test-id="certificate-valid-to-stack-block"
57
- >
58
- <template #stackBlockKey>
59
- <div class="flex-align-center">
60
- <span data-id="certificate-valid-to">{{
61
- localization.common.validTo
62
- }}</span>
63
- </div>
64
- </template>
65
- <template #stackBlockContent
66
- ><span data-id="certificate-valid-to-value">{{
67
- validTo
68
- }}</span></template
69
- >
70
- </atoms-stack-block>
71
- <atoms-stack-block
72
- :has-children="false"
73
- test-id="certificate-status-stack-block"
74
- >
75
- <template #stackBlockKey>
76
- <div class="flex-align-center">
77
- <span data-id="certificate-status">{{
78
- localization.common.status
79
- }}</span>
80
- </div>
81
- </template>
82
- <template #stackBlockContent
83
- ><span data-id="certificate-status-value">{{
84
- props.certificateData.status
85
- }}</span></template
86
- >
87
- </atoms-stack-block>
88
- </div>
89
- </template>
90
-
91
- <script lang="ts" setup>
92
- import type { UI_I_Localization } from '~/lib/models/interfaces'
93
- import type { UI_I_Certificate } from '~/components/common/certificate/lib/models/interfaces'
94
-
95
- const props = defineProps<{
96
- certificateData: UI_I_Certificate | {}
97
- }>()
98
-
99
- const { $store, $formattedDatetime }: any = useNuxtApp()
100
-
101
- const localization = computed<UI_I_Localization>(() => useLocal())
102
-
103
- const updateTimeFormatAndInterfaceLang = computed<number>(
104
- () => $store.getters['main/getUpdateTimeFormatAndInterfaceLang']
105
- )
106
-
107
- const validFrom = computed<string>(() =>
108
- updateTimeFormatAndInterfaceLang.value
109
- ? $formattedDatetime(props.certificateData.valid_from, {
110
- hasSeconds: true,
111
- })
112
- : ''
113
- )
114
- const validTo = computed<string>(() =>
115
- updateTimeFormatAndInterfaceLang.value
116
- ? $formattedDatetime(props.certificateData.valid_to, {
117
- hasSeconds: true,
118
- })
119
- : ''
120
- )
121
-
122
- onUnmounted(() => {
123
- $store.dispatch('main/A_PAUSE_GLOBAL_REFRESH', 'hostCertificate')
124
- })
125
- </script>
126
-
127
- <style lang="scss" scoped>
128
- :deep(.stack-block:hover) {
129
- border-bottom: 1px solid #ddd;
130
-
131
- &:last-child {
132
- border-bottom: unset;
133
- }
134
-
135
- .stack-block-label {
136
- background-color: unset;
137
- }
138
- }
139
- </style>