bfg-common 1.3.237 → 1.3.239

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 (804) hide show
  1. package/.eslintrc.js +21 -21
  2. package/.idea/inspectionProfiles/Project_Default.xml +50 -50
  3. package/.idea/modules.xml +7 -7
  4. package/.idea/prettier.xml +5 -5
  5. package/.idea/uikit.iml +11 -11
  6. package/.idea/vcs.xml +5 -5
  7. package/.prettierrc +4 -4
  8. package/PROJECT_STRUCTURE.md +42 -42
  9. package/README.md +42 -42
  10. package/assets/img/icons/icon-hcs.svg +3 -3
  11. package/assets/img/icons/icon-life-m-dark.svg +3 -3
  12. package/assets/img/icons/icon-life-m-light.svg +3 -3
  13. package/assets/img/icons/icon-ro-dark.svg +1 -1
  14. package/assets/img/icons/icon-ro-light.svg +2 -2
  15. package/assets/img/icons/icons-sprite-dark-6.svg +1 -1
  16. package/assets/img/icons/icons-sprite-light-6.svg +1 -1
  17. package/assets/img/icons/info.svg +8 -8
  18. package/assets/img/icons/vc.svg +52 -52
  19. package/assets/img/logo copy.svg +50 -50
  20. package/assets/img/logo.svg +51 -51
  21. package/assets/localization/local_be.json +2348 -2348
  22. package/assets/localization/local_en.json +2352 -2352
  23. package/assets/localization/local_hy.json +2352 -2352
  24. package/assets/localization/local_kk.json +2351 -2351
  25. package/assets/localization/local_ru.json +2357 -2357
  26. package/assets/localization/local_zh.json +2351 -2351
  27. package/assets/scss/clarity/clr-ui.min.css +8 -8
  28. package/assets/scss/common/animations.scss +28 -28
  29. package/assets/scss/common/global.scss +195 -195
  30. package/assets/scss/common/icons/icons-1.scss +236 -236
  31. package/assets/scss/common/icons/icons-2.scss +240 -240
  32. package/assets/scss/common/icons/icons-3.scss +245 -245
  33. package/assets/scss/common/icons/icons-4.scss +266 -266
  34. package/assets/scss/common/icons/icons-5.scss +59 -59
  35. package/assets/scss/common/icons/icons-6.scss +29 -29
  36. package/assets/scss/common/icons/icons.scss +16 -16
  37. package/assets/scss/common/icons/lib-icons.scss +32 -32
  38. package/assets/scss/common/mixins.scss +39 -39
  39. package/assets/scss/common/normalize.scss +329 -329
  40. package/assets/scss/common/theme.scss +238 -238
  41. package/assets/scss/common/utilities.scss +20 -20
  42. package/assets/scss/common/variables.scss +44 -44
  43. package/assets/scss/main.scss +13 -13
  44. package/components/atoms/DiagramIcon.vue +371 -371
  45. package/components/atoms/TheIcon.vue +2444 -2444
  46. package/components/atoms/TheIcon2.vue +1136 -1136
  47. package/components/atoms/alert/Alert.vue +96 -96
  48. package/components/atoms/alert/Notification.vue +171 -171
  49. package/components/atoms/alert/lib/Alert.spec.ts +38 -38
  50. package/components/atoms/alert/lib/Notification.spec.ts +34 -34
  51. package/components/atoms/alert/lib/models/enums.ts +12 -12
  52. package/components/atoms/alert/lib/models/interfaces.ts +27 -27
  53. package/components/atoms/alert/lib/models/types.ts +11 -11
  54. package/components/atoms/autocomplete/Autocomplete.vue +239 -239
  55. package/components/atoms/collapse/CollapseNav.vue +164 -164
  56. package/components/atoms/collapse/CollapseNavItem.vue +194 -194
  57. package/components/atoms/collapse/lib/models/interfaces.ts +10 -10
  58. package/components/atoms/combobox/Combobox.vue +152 -152
  59. package/components/atoms/datepicker/Datepicker.vue +630 -630
  60. package/components/atoms/datepicker/lib/config/allShortMonths.ts +103 -103
  61. package/components/atoms/datepicker/lib/config/datapicker.ts +43 -43
  62. package/components/atoms/datepicker/lib/models/interfaces.ts +9 -9
  63. package/components/atoms/dropdown/Portlet.vue +114 -114
  64. package/components/atoms/dropdown/dropdown/Dropdown.vue +156 -156
  65. package/components/atoms/dropdown/dropdown/lib/models/interfaces.ts +9 -9
  66. package/components/atoms/dropdown/lib/Portlet.spec.ts +26 -26
  67. package/components/atoms/dropdown/tree/Tree.vue +137 -137
  68. package/components/atoms/dropdown/tree/lib/models/interfaces.ts +11 -11
  69. package/components/atoms/input/Search.vue +16 -16
  70. package/components/atoms/lib/models/interfaces.ts +14 -14
  71. package/components/atoms/list/SelectList.vue +63 -63
  72. package/components/atoms/list/SimpleList.vue +29 -29
  73. package/components/atoms/list/dragDropList/DragDropList.vue +139 -139
  74. package/components/atoms/list/dragDropList/lib/config/events.ts +4 -4
  75. package/components/atoms/loader/BarLoader.vue +27 -27
  76. package/components/atoms/loader/Loader.vue +26 -26
  77. package/components/atoms/loader/PreLoader.vue +35 -35
  78. package/components/atoms/loader/lib/Preloader.spec.ts +24 -24
  79. package/components/atoms/modal/Modal.vue +247 -247
  80. package/components/atoms/modal/bySteps/BySteps.vue +252 -252
  81. package/components/atoms/modal/bySteps/lib/BySteps.spec.ts +66 -66
  82. package/components/atoms/modal/byStepsSecond/ByStepsSecond.vue +184 -184
  83. package/components/atoms/modal/lib/Modal.spec.ts +55 -55
  84. package/components/atoms/nav/NavBar.vue +140 -140
  85. package/components/atoms/nav/VerticalNavBar.vue +90 -90
  86. package/components/atoms/nav/lib/NavBar.spec.ts +34 -34
  87. package/components/atoms/nav/lib/models/interfaces.ts +6 -6
  88. package/components/atoms/notificationBar/NotificationBar.vue +178 -178
  89. package/components/atoms/notificationBar/lib/models/enums.ts +13 -13
  90. package/components/atoms/notificationBar/lib/models/interfaces.ts +6 -6
  91. package/components/atoms/notificationBar/lib/models/types.ts +1 -1
  92. package/components/atoms/perPage/PerPage.vue +53 -53
  93. package/components/atoms/popover/Popover.vue +65 -65
  94. package/components/atoms/popup/SimplePopup.vue +91 -91
  95. package/components/atoms/select/TheSelect.vue +177 -177
  96. package/components/atoms/select/lib/models/interfaces.ts +5 -5
  97. package/components/atoms/stack/StackBlock.vue +182 -182
  98. package/components/atoms/stack/StackContent.vue +63 -63
  99. package/components/atoms/step/VerticalStep.vue +105 -105
  100. package/components/atoms/step/lib/VerticalStep.spec.ts +68 -68
  101. package/components/atoms/step/lib/models/verticalStepItem.ts +7 -7
  102. package/components/atoms/table/compact/lib/models/interfaces.ts +10 -10
  103. package/components/atoms/table/dataGrid/DataGrid.vue +1591 -1591
  104. package/components/atoms/table/dataGrid/DataGridColumnSwitch.vue +214 -214
  105. package/components/atoms/table/dataGrid/DataGridPage.vue +196 -196
  106. package/components/atoms/table/dataGrid/DataGridPagination.vue +89 -89
  107. package/components/atoms/table/dataGrid/lib/DataGrid.spec.ts +61 -61
  108. package/components/atoms/table/dataGrid/lib/config/itemsPerPage.ts +20 -20
  109. package/components/atoms/table/dataGrid/lib/config/settingsTable.ts +28 -28
  110. package/components/atoms/table/dataGrid/lib/models/interfaces.ts +35 -35
  111. package/components/atoms/table/dataGrid/lib/models/types.ts +5 -5
  112. package/components/atoms/table/dataGrid/lib/utils/constructDataTable.ts +32 -32
  113. package/components/atoms/table/info/Info.vue +60 -60
  114. package/components/atoms/table/info/lib/models/interfaces.ts +9 -9
  115. package/components/atoms/table/simpleEvent/SimpleEvent.vue +98 -98
  116. package/components/atoms/table/simpleEvent/lib/models/interfaces.ts +9 -9
  117. package/components/atoms/table/simpleInfo/SimpleInfo.vue +73 -73
  118. package/components/atoms/table/simpleInfo/lib/models/interfaces.ts +5 -5
  119. package/components/atoms/table/simpleTable/SimpleTable.vue +300 -300
  120. package/components/atoms/table/simpleTable/lib/models/interfaces.ts +12 -12
  121. package/components/atoms/tabs/Tabs.vue +215 -215
  122. package/components/atoms/tabs/VerticalTabs.vue +88 -88
  123. package/components/atoms/tabs/lib/models/interfaces.ts +5 -5
  124. package/components/atoms/tabs/lib/models/types.ts +1 -1
  125. package/components/atoms/tooltip/Signpost.vue +226 -226
  126. package/components/atoms/tooltip/Text.vue +37 -37
  127. package/components/atoms/tooltip/Tooltip.vue +57 -57
  128. package/components/atoms/tooltip/TooltipError.vue +113 -113
  129. package/components/atoms/tooltip/lib/models/interfaces.ts +4 -4
  130. package/components/atoms/wizard/Wizard.vue +453 -453
  131. package/components/atoms/wizard/lib/models/enums.ts +8 -8
  132. package/components/atoms/wizard/lib/models/interfaces.ts +48 -48
  133. package/components/atoms/wizard/lib/utils/utils.ts +568 -568
  134. package/components/atoms/wizard/step/Step.vue +113 -113
  135. package/components/common/BadBrowser.vue +114 -114
  136. package/components/common/accordion/Accordion.vue +176 -176
  137. package/components/common/accordion/Recursion.vue +216 -216
  138. package/components/common/accordion/lib/models/enums.ts +5 -5
  139. package/components/common/accordion/lib/models/interfaces.ts +15 -15
  140. package/components/common/accordion/lib/models/types.ts +1 -1
  141. package/components/common/accordion/lib/utils/accordion.ts +31 -31
  142. package/components/common/adapterManager/AdapterManager.vue +827 -827
  143. package/components/common/adapterManager/AddAdapterModal.vue +554 -554
  144. package/components/common/adapterManager/AddAdapterWarningModal.vue +82 -82
  145. package/components/common/adapterManager/NoActiveAdaptersModal.vue +62 -62
  146. package/components/common/adapterManager/NoConnectedActiveAdaptersModal.vue +62 -62
  147. package/components/common/adapterManager/lib/config/index.ts +19 -19
  148. package/components/common/adapterManager/ui/NoSelectedAdapter.vue +39 -39
  149. package/components/common/adapterManager/ui/SecondTitle.vue +37 -37
  150. package/components/common/adapterManager/ui/actions/ActionsBar.vue +95 -95
  151. package/components/common/adapterManager/ui/actions/AddAdapterButton.vue +28 -28
  152. package/components/common/adapterManager/ui/actions/MoveDownAdapterButton.vue +33 -33
  153. package/components/common/adapterManager/ui/actions/MoveUpAdapterButton.vue +33 -33
  154. package/components/common/adapterManager/ui/actions/RemoveAdapterButton.vue +35 -35
  155. package/components/common/adapterManager/ui/actions/VerticalSeparator.vue +10 -10
  156. package/components/common/adapterManager/ui/table/Adapters.vue +91 -91
  157. package/components/common/adapterManager/ui/table/Header.vue +89 -89
  158. package/components/common/adapterManager/ui/table/Table.vue +153 -153
  159. package/components/common/browse/Browse.vue +182 -182
  160. package/components/common/browse/blocks/Container.vue +102 -102
  161. package/components/common/browse/blocks/Title.vue +66 -66
  162. package/components/common/browse/blocks/contents/Files.vue +71 -71
  163. package/components/common/browse/blocks/info/Date.vue +21 -21
  164. package/components/common/browse/blocks/info/Size.vue +17 -17
  165. package/components/common/browse/blocks/info/Text.vue +16 -16
  166. package/components/common/browse/blocks/lib/models/types.ts +1 -1
  167. package/components/common/browse/lib/models/interfaces.ts +5 -5
  168. package/components/common/context/Context.vue +97 -97
  169. package/components/common/context/ContextRecursion.vue +251 -251
  170. package/components/common/context/lib/Context.spec.ts +20 -20
  171. package/components/common/context/lib/ContextRecursion.spec.ts +55 -55
  172. package/components/common/context/lib/models/interfaces.ts +26 -26
  173. package/components/common/details/DetailsItem.vue +106 -106
  174. package/components/common/details/DetailsList.vue +23 -23
  175. package/components/common/details/lib/models/interfaces.ts +9 -9
  176. package/components/common/diagramMain/Diagram.vue +193 -193
  177. package/components/common/diagramMain/DiagramMain.vue +1013 -1013
  178. package/components/common/diagramMain/Header.vue +205 -205
  179. package/components/common/diagramMain/Highlights.vue +124 -124
  180. package/components/common/diagramMain/adapter/Adapter.vue +114 -114
  181. package/components/common/diagramMain/adapter/AdapterItem.vue +246 -246
  182. package/components/common/diagramMain/adapter/AdapterItems.vue +59 -59
  183. package/components/common/diagramMain/adapter/Block.vue +48 -48
  184. package/components/common/diagramMain/adapter/Contents.vue +110 -110
  185. package/components/common/diagramMain/adapter/Lines.vue +58 -58
  186. package/components/common/diagramMain/adapter/SecondBlock.vue +49 -49
  187. package/components/common/diagramMain/lib/config/index.ts +77 -77
  188. package/components/common/diagramMain/lib/config/initial.ts +38 -38
  189. package/components/common/diagramMain/lib/models/enums.ts +44 -44
  190. package/components/common/diagramMain/lib/models/interfaces.ts +678 -650
  191. package/components/common/diagramMain/lib/models/types.ts +16 -16
  192. package/components/common/diagramMain/lib/utils/utils.ts +251 -251
  193. package/components/common/diagramMain/modals/ManagePhysicalAdaptersModal.vue +347 -347
  194. package/components/common/diagramMain/modals/editSettings/ConfirmTeamingSettingsModal.vue +41 -41
  195. package/components/common/diagramMain/modals/editSettings/EditSettings.vue +495 -495
  196. package/components/common/diagramMain/modals/editSettings/EditSettingsModal.vue +829 -829
  197. package/components/common/diagramMain/modals/editSettings/tabs/NetworkProperties.vue +211 -211
  198. package/components/common/diagramMain/modals/editSettings/tabs/Security.vue +203 -203
  199. package/components/common/diagramMain/modals/editSettings/tabs/SwitchProperties.vue +161 -161
  200. package/components/common/diagramMain/modals/editSettings/tabs/TeamingFailover.vue +172 -172
  201. package/components/common/diagramMain/modals/editSettings/tabs/TrafficShaping.vue +389 -389
  202. package/components/common/diagramMain/modals/editSettings/tabs/port/IpvFourSettings.vue +339 -339
  203. package/components/common/diagramMain/modals/editSettings/tabs/port/PortProperties.vue +202 -202
  204. package/components/common/diagramMain/modals/lib/config/adapterModal.ts +122 -117
  205. package/components/common/diagramMain/modals/lib/config/diagramConfig.ts +17 -17
  206. package/components/common/diagramMain/modals/lib/config/index.ts +49 -49
  207. package/components/common/diagramMain/modals/lib/config/initial.ts +180 -180
  208. package/components/common/diagramMain/modals/lib/config/networkModal.ts +329 -329
  209. package/components/common/diagramMain/modals/lib/config/portModal.ts +209 -209
  210. package/components/common/diagramMain/modals/lib/config/switchModal.ts +224 -224
  211. package/components/common/diagramMain/modals/lib/config/vCenterModal.ts +34 -34
  212. package/components/common/diagramMain/modals/lib/config/vmKernelAdapter.ts +90 -90
  213. package/components/common/diagramMain/modals/lib/mappers/mappers.ts +51 -0
  214. package/components/common/diagramMain/modals/lib/utils/index.ts +24 -9
  215. package/components/common/diagramMain/modals/migrateVmkernelAdapter/MigrateVmkernelAdapter.vue +531 -531
  216. package/components/common/diagramMain/modals/migrateVmkernelAdapter/lib/config/steps.ts +114 -114
  217. package/components/common/diagramMain/modals/migrateVmkernelAdapter/steps/ConnectionSettings.vue +161 -161
  218. package/components/common/diagramMain/modals/migrateVmkernelAdapter/steps/SelectVmkernelAdapter.vue +158 -158
  219. package/components/common/diagramMain/modals/migrateVmkernelAdapter/steps/VmkernelAdapterReadyComplete.vue +49 -49
  220. package/components/common/diagramMain/modals/migrateVmkernelAdapter/validations/common.ts +14 -14
  221. package/components/common/diagramMain/modals/migrateVmkernelAdapter/validations/connectionSettings.ts +141 -141
  222. package/components/common/diagramMain/modals/migrateVmkernelAdapter/validations/selectVmkernelAdapter.ts +52 -52
  223. package/components/common/diagramMain/modals/migrateVmkernelAdapter/validations/validations.ts +19 -19
  224. package/components/common/diagramMain/modals/remove/RemoveModal.vue +226 -226
  225. package/components/common/diagramMain/modals/viewSettings/Info.vue +123 -123
  226. package/components/common/diagramMain/modals/viewSettings/ViewSettings.vue +171 -171
  227. package/components/common/diagramMain/modals/viewSettings/ViewSettingsModal.vue +93 -93
  228. package/components/common/diagramMain/network/Block.vue +62 -62
  229. package/components/common/diagramMain/network/Contents.vue +289 -289
  230. package/components/common/diagramMain/network/Lines.vue +71 -71
  231. package/components/common/diagramMain/network/Network.vue +126 -126
  232. package/components/common/diagramMain/network/NoNetwork.vue +53 -53
  233. package/components/common/diagramMain/network/SecondBlock.vue +58 -58
  234. package/components/common/diagramMain/port/Port.vue +386 -386
  235. package/components/common/diagramMain/port/Ports.vue +47 -47
  236. package/components/common/diagramMain/switch/Switch.vue +82 -82
  237. package/components/common/diagramMain/switch/SwitchSelected.vue +35 -35
  238. package/components/common/feedback/Buttons.vue +227 -227
  239. package/components/common/feedback/Feedback.vue +261 -261
  240. package/components/common/feedback/Message.vue +509 -509
  241. package/components/common/feedback/VisitPortal.vue +53 -53
  242. package/components/common/feedback/lib/config/drawingPanel.ts +31 -31
  243. package/components/common/feedback/lib/config/feedbackTabs.ts +24 -24
  244. package/components/common/feedback/lib/models/interfaces.ts +19 -19
  245. package/components/common/feedback/lib/models/types.ts +1 -1
  246. package/components/common/graph/Graph.vue +109 -109
  247. package/components/common/graph/lib/utils/renderGraph.ts +389 -389
  248. package/components/common/headline/Headline.vue +32 -32
  249. package/components/common/help/navbar/left/Left.vue +164 -164
  250. package/components/common/help/navbar/left/lib/models/interfaces.ts +6 -6
  251. package/components/common/help/navbar/left/lib/utils/constructAccordion.ts +27 -27
  252. package/components/common/help/navbar/right/Right.vue +139 -139
  253. package/components/common/help/navbar/right/lib/models/interfaces.ts +4 -4
  254. package/components/common/home/Card.vue +63 -63
  255. package/components/common/home/ResourceBlock.vue +117 -117
  256. package/components/common/home/StatusContent.vue +47 -47
  257. package/components/common/home/alertsTable/AlertsTable.vue +105 -105
  258. package/components/common/home/alertsTable/lib/config/config.ts +61 -61
  259. package/components/common/home/alertsTable/lib/models/enums.ts +11 -11
  260. package/components/common/home/alertsTable/lib/models/interfaces.ts +19 -19
  261. package/components/common/home/alertsTable/lib/models/types.ts +18 -18
  262. package/components/common/home/lib/config/configResourceMeterBlock.ts +25 -25
  263. package/components/common/home/lib/models/interfaces.ts +59 -59
  264. package/components/common/home/lib/models/types.ts +18 -18
  265. package/components/common/home/servicesTable/ServicesTable.vue +79 -79
  266. package/components/common/home/servicesTable/lib/config/config.ts +62 -62
  267. package/components/common/lib/config/states.ts +111 -111
  268. package/components/common/mainNavigationPanel/MainNavigationPanel.vue +362 -362
  269. package/components/common/mainNavigationPanel/lib/models/interfaces.ts +7 -7
  270. package/components/common/mainNavigationPanel/lib/models/types.ts +1 -1
  271. package/components/common/modals/Confirmation.vue +99 -99
  272. package/components/common/modals/Rename.vue +165 -165
  273. package/components/common/modals/lib/config/defaultForm.ts +18 -18
  274. package/components/common/modals/lib/config/renameLabelWidth.ts +3 -3
  275. package/components/common/modals/lib/models/interfaces.ts +5 -5
  276. package/components/common/monitor/advanced/Advanced.vue +243 -243
  277. package/components/common/monitor/advanced/GraphView.vue +180 -180
  278. package/components/common/monitor/advanced/lib/models/interfaces.ts +9 -9
  279. package/components/common/monitor/advanced/lib/models/types.ts +1 -1
  280. package/components/common/monitor/advanced/table/Table.vue +90 -90
  281. package/components/common/monitor/advanced/table/lib/config/performanceDatatable.ts +116 -116
  282. package/components/common/monitor/advanced/table/lib/models/interfaces.ts +12 -12
  283. package/components/common/monitor/advanced/table/lib/models/types.ts +10 -10
  284. package/components/common/monitor/advanced/tools/Tools.vue +436 -436
  285. package/components/common/monitor/advanced/tools/chartOptionsModal/ChartOptionsModal.vue +504 -504
  286. package/components/common/monitor/advanced/tools/chartOptionsModal/Notification.vue +33 -33
  287. package/components/common/monitor/advanced/tools/chartOptionsModal/actions/Actions.vue +150 -150
  288. package/components/common/monitor/advanced/tools/chartOptionsModal/actions/lib/utils/optionsActions.ts +25 -25
  289. package/components/common/monitor/advanced/tools/chartOptionsModal/actions/saveOptionsModal/SaveOptionsModal.vue +76 -76
  290. package/components/common/monitor/advanced/tools/chartOptionsModal/counters/Counters.vue +105 -105
  291. package/components/common/monitor/advanced/tools/chartOptionsModal/counters/table/Table.vue +143 -143
  292. package/components/common/monitor/advanced/tools/chartOptionsModal/counters/table/lib/config/tableConfig.ts +71 -71
  293. package/components/common/monitor/advanced/tools/chartOptionsModal/counters/table/lib/config/utils.ts +716 -716
  294. package/components/common/monitor/advanced/tools/chartOptionsModal/counters/table/lib/models/interfaces.ts +28 -28
  295. package/components/common/monitor/advanced/tools/chartOptionsModal/counters/table/lib/models/types.ts +5 -5
  296. package/components/common/monitor/advanced/tools/chartOptionsModal/counters/timespan/Timespan.vue +93 -93
  297. package/components/common/monitor/advanced/tools/chartOptionsModal/counters/timespan/form/Form.vue +501 -501
  298. package/components/common/monitor/advanced/tools/chartOptionsModal/counters/timespan/form/lib/config/dateForm.ts +59 -59
  299. package/components/common/monitor/advanced/tools/chartOptionsModal/counters/timespan/object/Object.vue +220 -220
  300. package/components/common/monitor/advanced/tools/chartOptionsModal/counters/timespan/object/lib/config/objectTable.ts +54 -54
  301. package/components/common/monitor/advanced/tools/chartOptionsModal/counters/timespan/object/lib/models/interfaces.ts +4 -4
  302. package/components/common/monitor/advanced/tools/chartOptionsModal/counters/timespan/object/lib/models/types.ts +1 -1
  303. package/components/common/monitor/advanced/tools/chartOptionsModal/lib/models/interfaces.ts +19 -19
  304. package/components/common/monitor/advanced/tools/chartOptionsModal/lib/models/types.ts +3 -3
  305. package/components/common/monitor/advanced/tools/chartOptionsModal/lib/utils/checkSubmit.ts +12 -12
  306. package/components/common/monitor/advanced/tools/chartOptionsModal/metrics/Metrics.vue +42 -42
  307. package/components/common/monitor/advanced/tools/chartOptionsModal/metrics/lib/config/optionsMetrics.ts +152 -152
  308. package/components/common/monitor/advanced/tools/lib/config/advancedToolbar.ts +130 -130
  309. package/components/common/monitor/advanced/tools/lib/models/interfaces.ts +4 -4
  310. package/components/common/monitor/advanced/tools/lib/utils/countCores.ts +7 -7
  311. package/components/common/monitor/lib/config/getValidDateByOption.ts +76 -76
  312. package/components/common/monitor/lib/models/interfaces.ts +23 -23
  313. package/components/common/monitor/overview/Overview.vue +228 -228
  314. package/components/common/monitor/overview/filters/Filters.vue +221 -221
  315. package/components/common/monitor/overview/filters/customIntervalModal/CustomIntervalModal.vue +241 -241
  316. package/components/common/monitor/overview/filters/customIntervalModal/lib/config/dateChecker.ts +52 -52
  317. package/components/common/monitor/overview/filters/lib/config/filterOptions.ts +83 -83
  318. package/components/common/monitor/overview/filters/lib/models/interfaces.ts +9 -9
  319. package/components/common/monitor/overview/filters/lib/models/types.ts +13 -13
  320. package/components/common/perPage/PerPage.vue +51 -51
  321. package/components/common/recursionTree/lib/models/interfaces.ts +19 -19
  322. package/components/common/resource/lib/models/interfaces.ts +9 -9
  323. package/components/common/resource/lib/models/types.ts +1 -1
  324. package/components/common/resource/lib/utils.ts +44 -44
  325. package/components/common/resource/progressBlock/ProgressBlock.vue +105 -105
  326. package/components/common/resource/simple/Simple.vue +58 -58
  327. package/components/common/resource/simple/lib/models/enums.ts +5 -5
  328. package/components/common/select/button/ButtonDropdown.vue +100 -100
  329. package/components/common/select/button/lib/models/interfaces.ts +6 -6
  330. package/components/common/select/input/Input.vue +90 -90
  331. package/components/common/select/input/lib/models/interfaces.ts +5 -5
  332. package/components/common/select/radio/RadioGroup.vue +125 -125
  333. package/components/common/select/radio/lib/models/interfaces.ts +8 -8
  334. package/components/common/shortcuts/Block.vue +84 -84
  335. package/components/common/shortcuts/Category.vue +40 -40
  336. package/components/common/shortcuts/Shortcuts.vue +44 -44
  337. package/components/common/shortcuts/lib/models/interfaces.ts +10 -10
  338. package/components/common/spiceConsole/Drawer.vue +241 -241
  339. package/components/common/spiceConsole/SpiceConsole.vue +83 -83
  340. package/components/common/spiceConsole/keyboard/Keyboard.vue +402 -402
  341. package/components/common/spiceConsole/keyboard/lib/config/keyboardRows.ts +891 -891
  342. package/components/common/spiceConsole/keyboard/lib/models/interfaces.ts +17 -17
  343. package/components/common/spiceConsole/lib/models/types.ts +1 -1
  344. package/components/common/split/horizontal/Horizontal.vue +306 -306
  345. package/components/common/split/horizontal/lib/models/interfaces.ts +5 -5
  346. package/components/common/split/vertical/Vertical.vue +213 -213
  347. package/components/common/split/vertical/lib/models/interfaces.ts +3 -3
  348. package/components/common/tools/Actions.vue +168 -168
  349. package/components/common/tools/lib/models/interfaces.ts +7 -7
  350. package/components/common/tools/viewSettings/ViewSettings.vue +86 -86
  351. package/components/common/tools/viewSettings/lib/models/interfaces.ts +9 -9
  352. package/components/common/vm/actions/add/FolderTreeView.vue +83 -83
  353. package/components/common/vm/actions/add/lib/config/steps.ts +130 -130
  354. package/components/common/vm/actions/add/lib/utils.ts +102 -102
  355. package/components/common/vm/actions/clone/CloneOld.vue +547 -547
  356. package/components/common/vm/actions/clone/lib/config/steps.ts +74 -74
  357. package/components/common/vm/actions/clone/lib/models/interfaces.ts +7 -7
  358. package/components/common/vm/actions/clone/lib/utils.ts +43 -43
  359. package/components/common/vm/actions/clone/select/options/Options.vue +65 -65
  360. package/components/common/vm/actions/common/customizeHardware/CustomizeHardwareOld.vue +267 -267
  361. package/components/common/vm/actions/common/customizeHardware/lib/config/navItems.ts +19 -19
  362. package/components/common/vm/actions/common/customizeHardware/lib/models/interfaces.ts +7 -7
  363. package/components/common/vm/actions/common/customizeHardware/virtualHardware/browseView/BrowseView.vue +203 -203
  364. package/components/common/vm/actions/common/customizeHardware/virtualHardware/browseView/lib/models/interfaces.ts +8 -8
  365. package/components/common/vm/actions/common/customizeHardware/virtualHardware/bus/Bus.vue +130 -130
  366. package/components/common/vm/actions/common/customizeHardware/virtualHardware/bus/lib/config/options.ts +20 -20
  367. package/components/common/vm/actions/common/customizeHardware/virtualHardware/cdDvdDrive/CdDvdDrive.vue +247 -247
  368. package/components/common/vm/actions/common/customizeHardware/virtualHardware/cdDvdDrive/lib/config/fileTypes.ts +9 -9
  369. package/components/common/vm/actions/common/customizeHardware/virtualHardware/cdDvdDrive/lib/config/options.ts +11 -11
  370. package/components/common/vm/actions/common/customizeHardware/virtualHardware/cdDvdDrive/lib/models/types.ts +1 -1
  371. package/components/common/vm/actions/common/customizeHardware/virtualHardware/cdDvdDrive/media/Media.vue +55 -55
  372. package/components/common/vm/actions/common/customizeHardware/virtualHardware/cpu/CoresPerSocket.vue +109 -109
  373. package/components/common/vm/actions/common/customizeHardware/virtualHardware/cpu/Cpu.vue +394 -394
  374. package/components/common/vm/actions/common/customizeHardware/virtualHardware/cpu/CpuHotPlug.vue +49 -49
  375. package/components/common/vm/actions/common/customizeHardware/virtualHardware/cpu/Hv.vue +93 -93
  376. package/components/common/vm/actions/common/customizeHardware/virtualHardware/cpu/Iommu.vue +54 -54
  377. package/components/common/vm/actions/common/customizeHardware/virtualHardware/cpu/MaxCpu.vue +105 -105
  378. package/components/common/vm/actions/common/customizeHardware/virtualHardware/cpu/Pc.vue +54 -54
  379. package/components/common/vm/actions/common/customizeHardware/virtualHardware/cpu/Sa.vue +104 -104
  380. package/components/common/vm/actions/common/customizeHardware/virtualHardware/cpu/lib/config/cpuOptions.ts +19 -19
  381. package/components/common/vm/actions/common/customizeHardware/virtualHardware/cpu/shares/Shares.vue +155 -155
  382. package/components/common/vm/actions/common/customizeHardware/virtualHardware/cpu/shares/lib/config/options.ts +28 -28
  383. package/components/common/vm/actions/common/customizeHardware/virtualHardware/cpu/tooltip/Tooltip.vue +58 -58
  384. package/components/common/vm/actions/common/customizeHardware/virtualHardware/lib/config/binaryOptions.ts +12 -12
  385. package/components/common/vm/actions/common/customizeHardware/virtualHardware/lib/models/interfaces.ts +118 -118
  386. package/components/common/vm/actions/common/customizeHardware/virtualHardware/lib/models/types.ts +4 -4
  387. package/components/common/vm/actions/common/customizeHardware/virtualHardware/limit/Limit.vue +234 -234
  388. package/components/common/vm/actions/common/customizeHardware/virtualHardware/limit/lib/config/options.ts +28 -28
  389. package/components/common/vm/actions/common/customizeHardware/virtualHardware/memory/Memory.vue +316 -316
  390. package/components/common/vm/actions/common/customizeHardware/virtualHardware/memory/MemoryHotPlug.vue +53 -53
  391. package/components/common/vm/actions/common/customizeHardware/virtualHardware/memory/lib/config/memoryOptions.ts +35 -35
  392. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newHardDisk/DiskFile.vue +24 -24
  393. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newHardDisk/Location.vue +173 -173
  394. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newHardDisk/MaximumSize.vue +27 -27
  395. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newHardDisk/NewHardDisk.vue +454 -454
  396. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newHardDisk/cache/Cache.vue +80 -80
  397. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newHardDisk/cache/lib/config/options.ts +7 -7
  398. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newHardDisk/limitIops/LimitIops.vue +151 -151
  399. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newHardDisk/limitIops/lib/config/options.ts +28 -28
  400. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newHardDisk/mode/Mode.vue +87 -87
  401. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newHardDisk/mode/lib/config/options.ts +18 -18
  402. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newHardDisk/provisioning/Provisioning.vue +87 -87
  403. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newHardDisk/provisioning/lib/config/options.ts +15 -15
  404. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newHardDisk/sharing/Sharing.vue +85 -85
  405. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newHardDisk/sharing/lib/config/options.ts +12 -12
  406. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newNetwork/Location.vue +141 -141
  407. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newNetwork/adapterType/AdapterType.vue +86 -86
  408. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newNetwork/adapterType/lib/config/options.ts +9 -9
  409. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newNetwork/macAddress/MacAddress.vue +140 -140
  410. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newNetwork/macAddress/lib/config/options.ts +11 -11
  411. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newPciDevice/directPathIo/DirectPathIo.vue +44 -44
  412. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newPciDevice/dynamicDirectPathIo/DynamicDirectPathIo.vue +49 -49
  413. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newPciDevice/dynamicDirectPathIo/lib/config/options.ts +10 -10
  414. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newPciDevice/lib/config/options.ts +7 -7
  415. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newPciDevice/note/Note.vue +27 -27
  416. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newPciDevice/nvidiaGrid/NvidiaGrid.vue +41 -41
  417. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newPciDevice/typeSelection/TypeSelection.vue +56 -56
  418. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newUsbController/NewUsbController.vue +77 -77
  419. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newUsbController/lib/config/options.ts +6 -6
  420. package/components/common/vm/actions/common/customizeHardware/virtualHardware/other/InputDevices.vue +21 -21
  421. package/components/common/vm/actions/common/customizeHardware/virtualHardware/other/Other.vue +27 -27
  422. package/components/common/vm/actions/common/customizeHardware/virtualHardware/reservation/Reservation.vue +235 -235
  423. package/components/common/vm/actions/common/customizeHardware/virtualHardware/reservation/lib/config/options.ts +33 -33
  424. package/components/common/vm/actions/common/customizeHardware/virtualHardware/videoCard/Graphics.vue +45 -45
  425. package/components/common/vm/actions/common/customizeHardware/virtualHardware/videoCard/TotalVideoMemory.vue +120 -120
  426. package/components/common/vm/actions/common/customizeHardware/virtualHardware/videoCard/VideoCard.vue +177 -177
  427. package/components/common/vm/actions/common/customizeHardware/virtualHardware/videoCard/lib/config/options.ts +11 -11
  428. package/components/common/vm/actions/common/customizeHardware/virtualHardware/videoCard/model/Model.vue +57 -57
  429. package/components/common/vm/actions/common/customizeHardware/virtualHardware/videoCard/model/lib/config/options.ts +10 -10
  430. package/components/common/vm/actions/common/customizeHardware/virtualHardware/videoCard/numberDisplays/NumberDisplays.vue +82 -82
  431. package/components/common/vm/actions/common/customizeHardware/virtualHardware/videoCard/numberDisplays/lib/config/options.ts +14 -14
  432. package/components/common/vm/actions/common/customizeHardware/vmoptions/Vmoptions.vue +181 -181
  433. package/components/common/vm/actions/common/customizeHardware/vmoptions/bootOptions/BootOptions.vue +110 -110
  434. package/components/common/vm/actions/common/customizeHardware/vmoptions/bootOptions/Menu.vue +45 -45
  435. package/components/common/vm/actions/common/customizeHardware/vmoptions/bootOptions/Secure.vue +45 -45
  436. package/components/common/vm/actions/common/customizeHardware/vmoptions/bootOptions/delay/Delay.vue +50 -50
  437. package/components/common/vm/actions/common/customizeHardware/vmoptions/bootOptions/delay/lib/config/config.ts +14 -14
  438. package/components/common/vm/actions/common/customizeHardware/vmoptions/bootOptions/firmware/Firmware.vue +83 -83
  439. package/components/common/vm/actions/common/customizeHardware/vmoptions/bootOptions/firmware/lib/config/config.ts +11 -11
  440. package/components/common/vm/actions/common/customizeHardware/vmoptions/bootOptions/order/Order.vue +197 -197
  441. package/components/common/vm/actions/common/customizeHardware/vmoptions/bootOptions/order/lib/models/interfaces.ts +8 -8
  442. package/components/common/vm/actions/common/customizeHardware/vmoptions/generalOptions/GeneralOptions.vue +181 -181
  443. package/components/common/vm/actions/common/customizeHardware/vmoptions/lib/models/interfaces.ts +34 -34
  444. package/components/common/vm/actions/common/customizeHardware/vmoptions/remoteConsoleOptions/CopyPaste.vue +51 -51
  445. package/components/common/vm/actions/common/customizeHardware/vmoptions/remoteConsoleOptions/FileTransfer.vue +51 -51
  446. package/components/common/vm/actions/common/customizeHardware/vmoptions/remoteConsoleOptions/FolderSharing.vue +50 -50
  447. package/components/common/vm/actions/common/customizeHardware/vmoptions/remoteConsoleOptions/PlaybackCompression.vue +51 -51
  448. package/components/common/vm/actions/common/customizeHardware/vmoptions/remoteConsoleOptions/PowerControl.vue +49 -49
  449. package/components/common/vm/actions/common/customizeHardware/vmoptions/remoteConsoleOptions/RemoteConsoleOptions.vue +253 -253
  450. package/components/common/vm/actions/common/customizeHardware/vmoptions/remoteConsoleOptions/imgCompression/ImgCompression.vue +84 -84
  451. package/components/common/vm/actions/common/customizeHardware/vmoptions/remoteConsoleOptions/imgCompression/lib/config/config.ts +14 -14
  452. package/components/common/vm/actions/common/customizeHardware/vmoptions/remoteConsoleOptions/jpegCompression/JpegCompression.vue +84 -84
  453. package/components/common/vm/actions/common/customizeHardware/vmoptions/remoteConsoleOptions/jpegCompression/lib/config/config.ts +12 -12
  454. package/components/common/vm/actions/common/customizeHardware/vmoptions/remoteConsoleOptions/keymap/Keymap.vue +55 -55
  455. package/components/common/vm/actions/common/customizeHardware/vmoptions/remoteConsoleOptions/keymap/lib/config/config.ts +6 -6
  456. package/components/common/vm/actions/common/customizeHardware/vmoptions/remoteConsoleOptions/mouseMode/MouseMode.vue +52 -52
  457. package/components/common/vm/actions/common/customizeHardware/vmoptions/remoteConsoleOptions/mouseMode/lib/config/config.ts +11 -11
  458. package/components/common/vm/actions/common/customizeHardware/vmoptions/remoteConsoleOptions/password/Password.vue +136 -136
  459. package/components/common/vm/actions/common/customizeHardware/vmoptions/remoteConsoleOptions/password/lib/models/interfaces.ts +5 -5
  460. package/components/common/vm/actions/common/customizeHardware/vmoptions/remoteConsoleOptions/password/lib/utils.ts +12 -12
  461. package/components/common/vm/actions/common/customizeHardware/vmoptions/remoteConsoleOptions/sharePolicy/SharePolicy.vue +52 -52
  462. package/components/common/vm/actions/common/customizeHardware/vmoptions/remoteConsoleOptions/sharePolicy/lib/config/config.ts +11 -11
  463. package/components/common/vm/actions/common/customizeHardware/vmoptions/remoteConsoleOptions/streamingMode/StreamingMode.vue +84 -84
  464. package/components/common/vm/actions/common/customizeHardware/vmoptions/remoteConsoleOptions/streamingMode/lib/config/config.ts +12 -12
  465. package/components/common/vm/actions/common/customizeHardware/vmoptions/remoteConsoleOptions/type/Type.vue +84 -84
  466. package/components/common/vm/actions/common/customizeHardware/vmoptions/remoteConsoleOptions/type/lib/config/config.ts +7 -7
  467. package/components/common/vm/actions/common/customizeHardware/vmoptions/remoteConsoleOptions/usbRedirection/UsbRedirection.vue +56 -56
  468. package/components/common/vm/actions/common/customizeHardware/vmoptions/remoteConsoleOptions/usbRedirection/lib/config/config.ts +14 -14
  469. package/components/common/vm/actions/common/customizeHardware/vmoptions/remoteConsoleOptions/zlibCompression/ZlibCompression.vue +84 -84
  470. package/components/common/vm/actions/common/customizeHardware/vmoptions/remoteConsoleOptions/zlibCompression/lib/config/config.ts +12 -12
  471. package/components/common/vm/actions/common/customizeHardware/vmoptions/tools/Tools.vue +63 -63
  472. package/components/common/vm/actions/common/lib/config/capabilities.ts +339 -339
  473. package/components/common/vm/actions/common/lib/models/enums.ts +89 -89
  474. package/components/common/vm/actions/common/lib/models/interfaces.ts +139 -139
  475. package/components/common/vm/actions/common/lib/models/types.ts +65 -65
  476. package/components/common/vm/actions/common/readyToComplete/ReadyToComplete.vue +15 -15
  477. package/components/common/vm/actions/common/select/compatibility/Compatibility.vue +151 -151
  478. package/components/common/vm/actions/common/select/computeResource/ComputeResource.vue +170 -170
  479. package/components/common/vm/actions/common/select/computeResource/TreeView.vue +126 -126
  480. package/components/common/vm/actions/common/select/computeResource/lib/ComputeResource.spec.ts +479 -479
  481. package/components/common/vm/actions/common/select/createType/CreateType.vue +61 -61
  482. package/components/common/vm/actions/common/select/createType/lib/config/items.ts +26 -26
  483. package/components/common/vm/actions/common/select/lib/models/interfaces.ts +32 -32
  484. package/components/common/vm/actions/common/select/lib/models/types.ts +47 -47
  485. package/components/common/vm/actions/common/select/name/Name.vue +220 -220
  486. package/components/common/vm/actions/common/select/name/NameOld.vue +215 -215
  487. package/components/common/vm/actions/common/select/os/os.vue +221 -221
  488. package/components/common/vm/actions/common/select/storage/Storage.vue +185 -185
  489. package/components/common/vm/actions/common/select/storage/StorageOld.vue +193 -193
  490. package/components/common/vm/actions/common/select/storage/lib/models/types.ts +15 -15
  491. package/components/common/vm/actions/editSettings/lib/models/types.ts +23 -23
  492. package/components/common/vm/actions/editSettings/lib/utils.ts +45 -45
  493. package/components/common/vm/actions/lib/models/interfaces.ts +6 -6
  494. package/components/common/vm/actions/lib/models/types.ts +11 -11
  495. package/components/common/vm/actions/lib/utils.ts +244 -244
  496. package/components/common/vm/lib/models/interfaces.ts +9 -9
  497. package/components/common/vm/lib/utils/powerActions.ts +55 -55
  498. package/components/common/weekSelect/lib/models/interfaces.ts +5 -5
  499. package/components/common/wizards/datastore/add/Add.vue +389 -389
  500. package/components/common/wizards/datastore/add/lib/config/stepItems.ts +160 -160
  501. package/components/common/wizards/datastore/add/lib/models/interfaces.ts +35 -35
  502. package/components/common/wizards/datastore/add/lib/models/types.ts +14 -14
  503. package/components/common/wizards/datastore/add/lib/utils.ts +67 -67
  504. package/components/common/wizards/datastore/add/local/Local.vue +71 -71
  505. package/components/common/wizards/datastore/add/local/createName/CreateName.vue +159 -159
  506. package/components/common/wizards/datastore/add/local/createName/lib/config/defaultForm.ts +15 -15
  507. package/components/common/wizards/datastore/add/nfs/Nfs.vue +94 -94
  508. package/components/common/wizards/datastore/add/nfs/accessibility/Accessibility.vue +97 -97
  509. package/components/common/wizards/datastore/add/nfs/accessibility/lib/config/tabsPannel.ts +24 -24
  510. package/components/common/wizards/datastore/add/nfs/accessibility/lib/models/interfaces.ts +9 -9
  511. package/components/common/wizards/datastore/add/nfs/accessibility/lib/models/types.ts +5 -5
  512. package/components/common/wizards/datastore/add/nfs/accessibility/tablesView/TablesView.vue +142 -142
  513. package/components/common/wizards/datastore/add/nfs/accessibility/tablesView/lib/config/compatibleTable.ts +54 -54
  514. package/components/common/wizards/datastore/add/nfs/accessibility/tablesView/lib/config/hostsTableItems.ts +75 -75
  515. package/components/common/wizards/datastore/add/nfs/accessibility/tablesView/lib/config/incompatibleTable.ts +68 -68
  516. package/components/common/wizards/datastore/add/nfs/accessibility/tablesView/lib/config/tableKeys.ts +15 -15
  517. package/components/common/wizards/datastore/add/nfs/configuration/Configuration.vue +377 -377
  518. package/components/common/wizards/datastore/add/nfs/configuration/lib/config/defaultForm.ts +33 -33
  519. package/components/common/wizards/datastore/add/nfs/configuration/lib/models/interfaces.ts +12 -12
  520. package/components/common/wizards/datastore/add/nfs/configuration/serversList/DeletePopover.vue +97 -97
  521. package/components/common/wizards/datastore/add/nfs/configuration/serversList/ServersList.vue +124 -124
  522. package/components/common/wizards/datastore/add/nfs/configuration/serversList/lib/config/serversListConfig.ts +41 -41
  523. package/components/common/wizards/datastore/add/nfs/configuration/serversList/lib/config/tableKeys.ts +3 -3
  524. package/components/common/wizards/datastore/add/nfs/configuration/serversList/lib/models/interfaces.ts +11 -11
  525. package/components/common/wizards/datastore/add/nfs/configuration/serversList/lib/models/types.ts +1 -1
  526. package/components/common/wizards/datastore/add/nfs/kerberosAuthentication/KerberosAuthentication.vue +54 -54
  527. package/components/common/wizards/datastore/add/nfs/kerberosAuthentication/lib/config/radioOptions.ts +24 -24
  528. package/components/common/wizards/datastore/add/nfs/version/Version.vue +42 -42
  529. package/components/common/wizards/datastore/add/nfs/version/lib/config/versionOptions.ts +20 -20
  530. package/components/common/wizards/datastore/add/readyComplete/ReadyComplete.vue +78 -78
  531. package/components/common/wizards/datastore/add/readyComplete/lib/config/propertiesDetails.ts +165 -165
  532. package/components/common/wizards/datastore/add/readyComplete/lib/models/interfaces.ts +4 -4
  533. package/components/common/wizards/datastore/add/sharedStorm/SharedStorm.vue +89 -89
  534. package/components/common/wizards/datastore/add/sharedStorm/deviceSelection/DeviceSelection.vue +450 -450
  535. package/components/common/wizards/datastore/add/sharedStorm/deviceSelection/hostTable/HostTable.vue +144 -144
  536. package/components/common/wizards/datastore/add/sharedStorm/deviceSelection/hostTable/lib/config/hostsTable.ts +87 -87
  537. package/components/common/wizards/datastore/add/sharedStorm/deviceSelection/hostTable/lib/config/tableKeys.ts +11 -11
  538. package/components/common/wizards/datastore/add/sharedStorm/deviceSelection/lib/config/defaultForm.ts +18 -18
  539. package/components/common/wizards/datastore/add/sharedStorm/deviceSelection/lib/config/selectOptions.ts +14 -14
  540. package/components/common/wizards/datastore/add/sharedStorm/deviceSelection/lib/models/interfaces.ts +55 -55
  541. package/components/common/wizards/datastore/add/sharedStorm/deviceSelection/lib/models/types.ts +14 -14
  542. package/components/common/wizards/datastore/add/sharedStorm/partitionConfiguration/PartitionConfiguration.vue +230 -230
  543. package/components/common/wizards/datastore/add/sharedStorm/partitionConfiguration/graphicTooltip/graphicTooltip.vue +64 -64
  544. package/components/common/wizards/datastore/add/sharedStorm/partitionConfiguration/lib/config/selectOptions.ts +46 -46
  545. package/components/common/wizards/datastore/add/sharedStorm/partitionConfiguration/sizeGraphic/sizeGraphic.vue +225 -225
  546. package/components/common/wizards/datastore/add/sharedStorm/version/Version.vue +39 -39
  547. package/components/common/wizards/datastore/add/sharedStorm/version/lib/config/versionOptions.ts +21 -21
  548. package/components/common/wizards/datastore/add/types/Types.vue +77 -77
  549. package/components/common/wizards/datastore/add/types/lib/config/typeOptions.ts +39 -39
  550. package/components/common/wizards/network/add/Add.vue +1020 -1020
  551. package/components/common/wizards/network/add/lib/config/index.ts +35 -35
  552. package/components/common/wizards/network/add/lib/config/initialData.ts +63 -63
  553. package/components/common/wizards/network/add/lib/config/portPropertiesStep.ts +31 -31
  554. package/components/common/wizards/network/add/lib/config/selectSwitch.ts +19 -19
  555. package/components/common/wizards/network/add/lib/config/sendData.ts +141 -141
  556. package/components/common/wizards/network/add/lib/config/steps.ts +448 -448
  557. package/components/common/wizards/network/add/lib/models/enums.ts +17 -17
  558. package/components/common/wizards/network/add/lib/models/interfaces.ts +242 -242
  559. package/components/common/wizards/network/add/lib/models/types.ts +2 -2
  560. package/components/common/wizards/network/add/lib/utils/index.ts +4 -4
  561. package/components/common/wizards/network/add/mappers/mappers.ts +192 -194
  562. package/components/common/wizards/network/add/modals/SelectNetwork.vue +158 -158
  563. package/components/common/wizards/network/add/modals/SelectStandardSwitch.vue +129 -129
  564. package/components/common/wizards/network/add/modals/SelectSwitch.vue +122 -122
  565. package/components/common/wizards/network/add/steps/ConnectionSettings.vue +148 -148
  566. package/components/common/wizards/network/add/steps/CreateStandardSwitch.vue +91 -91
  567. package/components/common/wizards/network/add/steps/IpFourSettings.vue +294 -294
  568. package/components/common/wizards/network/add/steps/PhysicalAdapter.vue +13 -13
  569. package/components/common/wizards/network/add/steps/PortProperties.vue +392 -392
  570. package/components/common/wizards/network/add/steps/ReadyComplete.vue +20 -20
  571. package/components/common/wizards/network/add/steps/SelectConnectionType.vue +99 -99
  572. package/components/common/wizards/network/add/steps/SelectedTargetDevice.vue +462 -462
  573. package/components/common/wizards/network/add/validations/common.ts +26 -26
  574. package/components/common/wizards/network/add/validations/connectionSettings.ts +70 -70
  575. package/components/common/wizards/network/add/validations/createStandardSwitch.ts +58 -58
  576. package/components/common/wizards/network/add/validations/ipFourSettings.ts +182 -182
  577. package/components/common/wizards/network/add/validations/networkValidation.ts +81 -81
  578. package/components/common/wizards/network/add/validations/physicalAdapter.ts +70 -70
  579. package/components/common/wizards/network/add/validations/portProperties.ts +83 -83
  580. package/components/common/wizards/network/add/validations/targetDevice.ts +109 -109
  581. package/components/common/wizards/network/add/validations/validations.ts +43 -43
  582. package/components/common/wizards/vm/common/computeResource/TreeView.vue +61 -61
  583. package/components/common/wizards/vm/common/readyComplete/ReadyComplete.vue +15 -15
  584. package/components/common/wizards/vm/common/tooltip/Tooltip.vue +82 -82
  585. package/components/common/wizards/vm/common/validation/compatibility/Compatibility.vue +62 -62
  586. package/components/common/wizards/vm/common/validation/lib/models/enums.ts +5 -5
  587. package/components/common/wizards/vm/migrate/Migrate.vue +278 -278
  588. package/components/common/wizards/vm/migrate/contentHeading/ContentHeading.vue +106 -106
  589. package/components/common/wizards/vm/migrate/contentHeading/lib/models/interfaces.ts +7 -7
  590. package/components/common/wizards/vm/migrate/lib/config/constructDataReady.ts +100 -100
  591. package/components/common/wizards/vm/migrate/lib/models/enums.ts +6 -6
  592. package/components/common/wizards/vm/migrate/lib/models/interfaces.ts +28 -28
  593. package/components/common/wizards/vm/migrate/lib/models/types.ts +5 -5
  594. package/components/common/wizards/vm/migrate/lib/utils.ts +80 -80
  595. package/components/common/wizards/vm/migrate/select/computeResource/ComputeResource.vue +219 -219
  596. package/components/common/wizards/vm/migrate/select/computeResource/lib/config/tabsPannel.ts +28 -28
  597. package/components/common/wizards/vm/migrate/select/computeResource/lib/models/enums.ts +6 -6
  598. package/components/common/wizards/vm/migrate/select/computeResource/lib/models/interfaces.ts +30 -30
  599. package/components/common/wizards/vm/migrate/select/computeResource/lib/models/types.ts +12 -12
  600. package/components/common/wizards/vm/migrate/select/computeResource/tableView/TableView.vue +142 -142
  601. package/components/common/wizards/vm/migrate/select/computeResource/tableView/lib/config/clusterTable.ts +113 -113
  602. package/components/common/wizards/vm/migrate/select/computeResource/tableView/lib/config/hostTable.ts +124 -124
  603. package/components/common/wizards/vm/migrate/select/computeResource/tableView/lib/config/resourcePoolTable.ts +115 -115
  604. package/components/common/wizards/vm/migrate/select/computeResource/tableView/lib/config/tableKeys.ts +65 -65
  605. package/components/common/wizards/vm/migrate/select/computeResource/tableView/lib/config/vappsTable.ts +66 -66
  606. package/components/common/wizards/vm/migrate/select/computeResource/tableView/lib/models/interfaces.ts +50 -50
  607. package/components/common/wizards/vm/migrate/select/computeResource/tableView/lib/models/types.ts +60 -60
  608. package/components/common/wizards/vm/migrate/select/network/Network.vue +124 -124
  609. package/components/common/wizards/vm/migrate/select/network/table/network/Network.vue +112 -112
  610. package/components/common/wizards/vm/migrate/select/network/table/network/lib/config/advancedTable.ts +78 -78
  611. package/components/common/wizards/vm/migrate/select/network/table/network/lib/config/basicTable.ts +70 -70
  612. package/components/common/wizards/vm/migrate/select/network/table/network/lib/config/tableKeys.ts +13 -13
  613. package/components/common/wizards/vm/migrate/select/network/table/network/lib/models/interfaces.ts +12 -12
  614. package/components/common/wizards/vm/migrate/select/network/table/network/lib/models/types.ts +21 -21
  615. package/components/common/wizards/vm/migrate/select/network/table/useAt/UseAt.vue +53 -53
  616. package/components/common/wizards/vm/migrate/select/network/table/useAt/lib/config/tableKeys.ts +7 -7
  617. package/components/common/wizards/vm/migrate/select/network/table/useAt/lib/config/useAtTable.ts +47 -47
  618. package/components/common/wizards/vm/migrate/select/network/table/useAt/lib/models/interfaces.ts +1 -1
  619. package/components/common/wizards/vm/migrate/select/network/table/useAt/lib/models/types.ts +5 -5
  620. package/components/common/wizards/vm/migrate/select/priority/Priority.vue +39 -39
  621. package/components/common/wizards/vm/migrate/select/priority/lib/config/typeOptions.ts +21 -21
  622. package/components/common/wizards/vm/migrate/select/priority/lib/models/types.ts +1 -1
  623. package/components/common/wizards/vm/migrate/select/storage/Storage.vue +202 -202
  624. package/components/common/wizards/vm/migrate/select/storage/configure/batch/Batch.vue +76 -76
  625. package/components/common/wizards/vm/migrate/select/storage/configure/disk/Disk.vue +86 -86
  626. package/components/common/wizards/vm/migrate/select/storage/diskFormat/DiskFormat.vue +68 -68
  627. package/components/common/wizards/vm/migrate/select/storage/diskFormat/lib/config/formatOptions.ts +26 -26
  628. package/components/common/wizards/vm/migrate/select/storage/lib/config/tabsPannel.ts +18 -18
  629. package/components/common/wizards/vm/migrate/select/storage/lib/models/enums.ts +6 -6
  630. package/components/common/wizards/vm/migrate/select/storage/lib/models/interfaces.ts +14 -14
  631. package/components/common/wizards/vm/migrate/select/storage/lib/models/types.ts +9 -9
  632. package/components/common/wizards/vm/migrate/select/storage/policy/Policy.vue +83 -83
  633. package/components/common/wizards/vm/migrate/select/storage/selectedPerDisk/SelectedPerDisk.vue +87 -87
  634. package/components/common/wizards/vm/migrate/select/storage/table/datastore/Datastore.vue +113 -113
  635. package/components/common/wizards/vm/migrate/select/storage/table/datastore/lib/config/config.ts +154 -154
  636. package/components/common/wizards/vm/migrate/select/storage/table/datastore/lib/models/types.ts +15 -15
  637. package/components/common/wizards/vm/migrate/select/storage/table/disk/Disk.vue +85 -85
  638. package/components/common/wizards/vm/migrate/select/storage/table/disk/lib/config/config.ts +123 -123
  639. package/components/common/wizards/vm/migrate/select/storage/table/disk/lib/config/tableKeys.ts +15 -15
  640. package/components/common/wizards/vm/migrate/select/storage/table/disk/lib/models/interfaces.ts +24 -24
  641. package/components/common/wizards/vm/migrate/select/storage/table/disk/lib/models/types.ts +13 -13
  642. package/components/common/wizards/vm/migrate/select/targetServer/lib/config/tabsPannel.ts +18 -18
  643. package/components/common/wizards/vm/migrate/select/targetServer/lib/models/types.ts +1 -1
  644. package/components/common/wizards/vm/migrate/select/targetServer/new/New.vue +287 -287
  645. package/components/common/wizards/vm/migrate/select/targetServer/new/lib/config/defaultForm.ts +33 -33
  646. package/components/common/wizards/vm/migrate/select/targetServer/saved/Saved.vue +27 -27
  647. package/components/common/wizards/vm/migrate/select/targetServer/targetServer.vue +41 -41
  648. package/components/common/wizards/vm/migrate/select/type/Type.vue +38 -38
  649. package/components/common/wizards/vm/migrate/select/type/lib/config/typeOptions.ts +41 -41
  650. package/components/common/wizards/vm/migrate/select/type/lib/models/interfaces.ts +5 -5
  651. package/components/content/Hint.vue +24 -24
  652. package/components/layout/theHeader/lib/models/enums.ts +9 -9
  653. package/components/layout/theHeader/lib/utils/localization.ts +32 -32
  654. package/components/lib/models/interfaces.ts +14 -14
  655. package/composables/deepCopy.ts +21 -21
  656. package/composables/productNameLocal.ts +22 -22
  657. package/composables/useDiff.ts +15 -15
  658. package/composables/useLocal.ts +44 -44
  659. package/composables/useLocalStorage.ts +45 -45
  660. package/composables/useThrottle.ts +32 -32
  661. package/composables/useUniqueId.ts +5 -5
  662. package/eslint/index.js +15 -15
  663. package/eslint/no-import-type.js +17 -17
  664. package/eslint/no-invalid-type-prefix.js +32 -32
  665. package/layouts/auth.vue +31 -31
  666. package/lib/config/regExp.ts +13 -13
  667. package/lib/models/composables/useAppVersion/interfaces.ts +5 -5
  668. package/lib/models/composables/useMyFetch/interfaces.ts +25 -25
  669. package/lib/models/composables/useMyFetch/types.ts +1 -1
  670. package/lib/models/enums.ts +34 -34
  671. package/lib/models/interfaces.ts +43 -43
  672. package/lib/models/plugins/date/interfaces.ts +5 -5
  673. package/lib/models/plugins/date/types.ts +1 -1
  674. package/lib/models/plugins/validation/interfaces.ts +21 -21
  675. package/lib/models/plugins/validation/types.ts +1 -1
  676. package/lib/models/store/host/interfaces.ts +38 -38
  677. package/lib/models/store/interfaces.ts +41 -41
  678. package/lib/models/store/network/interfaces.ts +13 -13
  679. package/lib/models/store/storage/interfaces.ts +32 -32
  680. package/lib/models/store/tasks/enums.ts +27 -27
  681. package/lib/models/store/tasks/interfaces.ts +115 -115
  682. package/lib/models/store/tasks/types.ts +2 -2
  683. package/lib/models/store/types.ts +43 -43
  684. package/lib/models/store/vm/interfaces.ts +234 -234
  685. package/lib/models/table/interfaces.ts +38 -38
  686. package/lib/models/table/types.ts +1 -1
  687. package/lib/models/types.ts +13 -13
  688. package/lib/utils/base64.ts +34 -34
  689. package/lib/utils/contentBuild.ts +34 -34
  690. package/lib/utils/notification.ts +22 -22
  691. package/modules/fixContentBuild/index.ts +92 -92
  692. package/modules/fixContentBuild/lib/utils/methods.ts +114 -114
  693. package/modules/fixSpiceConsoleBuild/index.ts +28 -28
  694. package/modules/replaceEnv/index.ts +40 -40
  695. package/nuxt.config.ts +8 -8
  696. package/package.json +41 -41
  697. package/plugins/binary.ts +133 -133
  698. package/plugins/date.ts +179 -179
  699. package/plugins/recursion.ts +252 -252
  700. package/plugins/spice-console/spice.console.ts +18 -18
  701. package/plugins/text.ts +48 -48
  702. package/plugins/validation.ts +172 -172
  703. package/public/spice-console/application/WorkerProcess.js +3350 -3350
  704. package/public/spice-console/application/WorkerProcess_back.js +3144 -3144
  705. package/public/spice-console/application/WorkerProcess_meta.js +3103 -3103
  706. package/public/spice-console/application/WorkerProcess_reverse.js +3214 -3214
  707. package/public/spice-console/application/agent.js +175 -175
  708. package/public/spice-console/application/application.js +641 -641
  709. package/public/spice-console/application/checkActivity.js +50 -50
  710. package/public/spice-console/application/clientgui.js +842 -842
  711. package/public/spice-console/application/clipboard/clipboarddataparser.js +92 -92
  712. package/public/spice-console/application/clipboard/local/localClipboard.js +110 -110
  713. package/public/spice-console/application/clipboard.js +82 -82
  714. package/public/spice-console/application/imagecache.js +81 -81
  715. package/public/spice-console/application/inputmanager.js +270 -270
  716. package/public/spice-console/application/packetfactory.js +202 -202
  717. package/public/spice-console/application/packetfilter.js +103 -103
  718. package/public/spice-console/application/packetprocess.js +75 -75
  719. package/public/spice-console/application/rasteroperation.js +118 -118
  720. package/public/spice-console/application/spiceconnection.js +197 -197
  721. package/public/spice-console/application/stream.js +67 -67
  722. package/public/spice-console/application/virtualmouse.js +109 -109
  723. package/public/spice-console/keymaps/keyevent.js +36 -36
  724. package/public/spice-console/keymaps/keymap.js +229 -229
  725. package/public/spice-console/keymaps/keymapes.js +375 -375
  726. package/public/spice-console/keymaps/keymapesObj.js +317 -317
  727. package/public/spice-console/keymaps/keymapus.js +317 -317
  728. package/public/spice-console/keymaps/scanCodeObjModifier.js +65 -65
  729. package/public/spice-console/keymaps/scanCodeObjProvider.js +60 -60
  730. package/public/spice-console/lib/AsyncConsumer.js +204 -204
  731. package/public/spice-console/lib/AsyncWorker.js +60 -60
  732. package/public/spice-console/lib/CollisionDetector.js +27 -27
  733. package/public/spice-console/lib/DataLogger.js +197 -197
  734. package/public/spice-console/lib/GenericObjectPool.js +152 -152
  735. package/public/spice-console/lib/GlobalPool.js +114 -114
  736. package/public/spice-console/lib/ImageUncompressor.js +138 -138
  737. package/public/spice-console/lib/IntegrationBenchmark.js +64 -64
  738. package/public/spice-console/lib/PacketWorkerIdentifier.js +107 -107
  739. package/public/spice-console/lib/SyncAsyncHandler.js +46 -46
  740. package/public/spice-console/lib/base64.js +298 -298
  741. package/public/spice-console/lib/biginteger.js +1640 -1640
  742. package/public/spice-console/lib/bowser.js +276 -276
  743. package/public/spice-console/lib/decoder/dixie.js +7930 -7930
  744. package/public/spice-console/lib/decoder/jmuxer.js +2815 -2815
  745. package/public/spice-console/lib/displayRouter.js +83 -83
  746. package/public/spice-console/lib/encrypt.js +191 -191
  747. package/public/spice-console/lib/flipper.js +39 -39
  748. package/public/spice-console/lib/graphic.js +1230 -1230
  749. package/public/spice-console/lib/graphicdebug.js +223 -223
  750. package/public/spice-console/lib/images/bitmap.js +194 -194
  751. package/public/spice-console/lib/images/jsquic_family.js +83 -83
  752. package/public/spice-console/lib/images/jsquic_rgba.js +342 -342
  753. package/public/spice-console/lib/images/jsquic_uncompress.js +529 -529
  754. package/public/spice-console/lib/images/lz.js +717 -717
  755. package/public/spice-console/lib/images/png.js +275 -275
  756. package/public/spice-console/lib/jgestures.min.js +43 -43
  757. package/public/spice-console/lib/jquery-2.0.3.js +8829 -8829
  758. package/public/spice-console/lib/jquery-mousewheel.js +83 -83
  759. package/public/spice-console/lib/jquery-visibility.min.js +1 -1
  760. package/public/spice-console/lib/jsbn.js +578 -578
  761. package/public/spice-console/lib/jsbn2.js +675 -675
  762. package/public/spice-console/lib/lodash.4.0.0.min.js +136 -136
  763. package/public/spice-console/lib/modernizr.js +39 -39
  764. package/public/spice-console/lib/pixastic.js +3244 -3244
  765. package/public/spice-console/lib/prettyprint.js +794 -794
  766. package/public/spice-console/lib/prng4.js +64 -64
  767. package/public/spice-console/lib/queue.js +259 -259
  768. package/public/spice-console/lib/rng.js +87 -87
  769. package/public/spice-console/lib/runqueue.js +103 -103
  770. package/public/spice-console/lib/sha1.js +124 -124
  771. package/public/spice-console/lib/stuckkeyshandler.js +122 -122
  772. package/public/spice-console/lib/timelapsedetector.js +62 -62
  773. package/public/spice-console/lib/utils.js +327 -327
  774. package/public/spice-console/lib/virtualjoystick.js +370 -370
  775. package/public/spice-console/network/busconnection.js +195 -195
  776. package/public/spice-console/network/clusternodechooser.js +49 -49
  777. package/public/spice-console/network/connectioncontrol.js +60 -60
  778. package/public/spice-console/network/packetcontroller.js +62 -62
  779. package/public/spice-console/network/packetextractor.js +73 -73
  780. package/public/spice-console/network/packetlinkfactory.js +64 -64
  781. package/public/spice-console/network/packetreassembler.js +77 -77
  782. package/public/spice-console/network/reassemblerfactory.js +39 -39
  783. package/public/spice-console/network/sizedefiner.js +86 -86
  784. package/public/spice-console/network/socket.js +120 -120
  785. package/public/spice-console/network/socketqueue.js +95 -95
  786. package/public/spice-console/network/websocketwrapper.js +75 -75
  787. package/public/spice-console/process/busprocess.js +309 -309
  788. package/public/spice-console/process/cursorprocess.js +110 -110
  789. package/public/spice-console/process/displaypreprocess.js +152 -152
  790. package/public/spice-console/process/displayprocess.js +210 -210
  791. package/public/spice-console/process/inputprocess.js +203 -203
  792. package/public/spice-console/process/mainprocess.js +78 -78
  793. package/public/spice-console/process/playbackprocess.js +233 -233
  794. package/public/spice-console/run.js +180 -180
  795. package/public/spice-console/spiceobjects/generated/protocol.js +537 -537
  796. package/public/spice-console/spiceobjects/spiceobjects.js +3474 -3474
  797. package/public/spice-console/swcanvas/swcanvas.js +82 -82
  798. package/public/spice-console/tools/generate.php +269 -269
  799. package/public/spice-console/tools/generateKeyboardLayout.php +63 -63
  800. package/public/spice-console/tools/generateSpiceObject.php +81 -81
  801. package/store/tasks/mappers/recentTasks.ts +43 -43
  802. package/store/tasks/mappers/tasks.ts +42 -42
  803. package/store/tasks/store.ts +12 -12
  804. package/tsconfig.json +4 -4
@@ -1,1021 +1,1021 @@
1
- <template>
2
- <atoms-wizard
3
- v-model:show="props.show"
4
- :steps="wizard.steps"
5
- :selected-scheme="selectedScheme"
6
- :is-loading="wizard.wizardLoader.status"
7
- :loader-messages="wizard.wizardLoader.messages"
8
- :title="title"
9
- max-height="551px"
10
- :was-completed="wasCompleted"
11
- :localization="localization"
12
- :class="[
13
- 'add-networking-wizard',
14
- {
15
- 'is-dark': props.isDarkMode,
16
- },
17
- ]"
18
- @change-steps="onChangeSteps"
19
- @hide="onHideAddNetworkingModal"
20
- @submit="onSubmit"
21
- >
22
- <template #modalBody="{ selectedStep }">
23
- <common-wizards-network-add-steps-select-connection-type
24
- v-if="selectedStep.id === 0"
25
- v-model="connectionTypeLocal"
26
- />
27
- <common-wizards-network-add-steps-selected-target-device
28
- v-if="selectedStep.id === 1"
29
- :wizard="wizard"
30
- :target-device="targetDevice"
31
- :connection-type="connectionTypeLocal"
32
- :standard-switches-initial="props.standardSwitchesInitial"
33
- :messages-fields="selectedStep.fields"
34
- :alert-messages="alertMessages[1]"
35
- :selected-standard-switch-id="props.selectedStandardSwitchId"
36
- :selected-switch-id="props.selectedSwitchId"
37
- @hide-alert="onHideAlert"
38
- @change-target-device="onChangeTargetDevice"
39
- />
40
- <common-wizards-network-add-steps-create-standard-switch
41
- v-if="selectedStep.id === 2 || selectedStep.id === 6"
42
- :free-adapters="props.freeAdapters"
43
- :added-adapters="addedAdapters"
44
- :core-adapters="coreAdapters"
45
- :adapter-status="adapterStatus"
46
- :adapters="props.adapters"
47
- :is-show-no-connected-active-adapters-modal="
48
- isShowNoConnectedActiveAdaptersModal
49
- "
50
- :is-show-no-active-adapters-modal="isShowNoActiveAdaptersModal"
51
- :is-dark-mode="props.isDarkMode"
52
- @get-free-adapters="onGetFreeAdapters"
53
- @change-added-adapters="onChangeAddedAdapters"
54
- @change-adapter-status="onChangeAdapterStatus"
55
- @confirm-no-active-adapters-modal="onConfirmNoActiveAdaptersModal"
56
- @hide-no-connected-active-adapters-modal="
57
- onHideNoConnectedActiveAdaptersModal
58
- "
59
- @hide-no-active-adapters-modal="onHideNoActiveAdaptersModal"
60
- />
61
- <common-wizards-network-add-steps-port-properties
62
- v-if="selectedStep.id === 3"
63
- :wizard="wizard"
64
- :port-properties="portProperties"
65
- :mtu-from-switch="mtuFromSwitch"
66
- :project="props.project"
67
- :messages-fields="selectedStep.fields"
68
- :alert-messages="alertMessages[3]"
69
- :tcp-stacks="props.tcpStacks"
70
- @change-gateway-flag="onChangeGatewayFlag"
71
- @change-port-properties="onChangePortProperties"
72
- @hide-alert="onHideAlert"
73
- />
74
- <common-wizards-network-add-steps-ip-four-settings
75
- v-if="selectedStep.id === 4"
76
- :wizard="wizard"
77
- :ip-four-settings="ipFourSettings"
78
- :messages-fields="selectedStep.fields"
79
- :alert-messages="alertMessages[4]"
80
- :tcp-stacks="props.tcpStacks"
81
- :tcp="portProperties.tcp"
82
- :gateway-flag="gatewayFlag"
83
- @change-gateway-flag="onChangeGatewayFlag"
84
- @change-ip-four-settings="onChangeIpFourSettings"
85
- @hide-alert="onHideAlert"
86
- />
87
- <common-wizards-network-add-steps-connection-settings
88
- v-if="selectedStep.id === 5"
89
- :wizard="wizard"
90
- :connection-settings="connectionSettings"
91
- :messages-fields="selectedStep.fields"
92
- :alert-messages="alertMessages[5]"
93
- @change-connection-settings="onChangeConnectionSettings"
94
- @hide-alert="onHideAlert"
95
- />
96
- <!-- <common-wizards-network-add-steps-physical-adapter-->
97
- <!-- v-if="selectedStep.id === 6"-->
98
- <!-- />-->
99
- <common-wizards-network-add-steps-ready-complete
100
- v-if="selectedStep.id === 7"
101
- :ready-complete-fields="readyCompleteFields"
102
- />
103
- </template>
104
- </atoms-wizard>
105
- </template>
106
-
107
- <script setup lang="ts">
108
- import {
109
- UI_I_ArbitraryObject,
110
- UI_I_Localization,
111
- UI_I_ItemsWithTotalCounts,
112
- } from '~/lib/models/interfaces'
113
- import { UI_T_Project } from '~/lib/models/types'
114
- import {
115
- UI_I_PortProperties,
116
- UI_I_IpFourSettings,
117
- UI_I_ConnectionSettings,
118
- UI_I_TargetDevice,
119
- UI_I_Switch,
120
- UI_I_ReadyCompleteFields,
121
- UI_I_AddNetworkingSecondOrThirdSchemeDataSend,
122
- UI_I_AddNetworkingZeroOrFirstSchemeDataSend,
123
- UI_I_AddNetworkingFourthOrFifthSchemeDataSend,
124
- UI_I_AddNetworkingEmits,
125
- UI_I_TCPStack,
126
- } from '~/components/common/wizards/network/add/lib/models/interfaces'
127
- import {
128
- UI_I_Adapter,
129
- UI_I_AdapterStatus,
130
- UI_I_SwitchAdapterItem,
131
- UI_I_DiagramData,
132
- } from '~/components/common/diagramMain/lib/models/interfaces'
133
- import {
134
- UI_I_ValidationReturn,
135
- UI_I_WizardStep,
136
- } from '~/components/atoms/wizard/lib/models/interfaces'
137
- import { UI_E_ValidationFields } from '~/components/common/wizards/network/add/lib/models/enums'
138
- import { getVlanId } from '~/components/common/wizards/network/add/lib/utils'
139
- import Wizard from '~/components/atoms/wizard/lib/utils/utils'
140
- import {
141
- createZeroSchemeReadyCompleteFunc,
142
- createFirstSchemeReadyCompleteFunc,
143
- createSecondSchemeReadyCompleteFunc,
144
- createThirdSchemeReadyCompleteFunc,
145
- createFourthSchemeReadyCompleteFunc,
146
- stepsSchemeInitial,
147
- stepsFunc,
148
- connectionSettingsInitial,
149
- portPropertiesInitial,
150
- ipFourSettingsInitial,
151
- targetDeviceInitial,
152
- addNetworkingZeroOrFirstSchemeDataFunc,
153
- addNetworkingSecondOrThirdSchemeDataFunc,
154
- addNetworkingFourthOrFifthSchemeDataFunc,
155
- } from '~/components/common/wizards/network/add/lib/config'
156
- import {
157
- checkTargetDeviceSync,
158
- checkAdaptersSync,
159
- checkPortPropertiesSync,
160
- checkIpFourSettingsSync,
161
- checkConnectionSettingsSync,
162
- checkNetworkAsync,
163
- } from '~/components/common/wizards/network/add/validations/validations'
164
-
165
- const props = withDefaults(
166
- defineProps<{
167
- show: boolean
168
- adapters: UI_I_ItemsWithTotalCounts<UI_I_SwitchAdapterItem>
169
- standardSwitchesInitial: UI_I_Switch[]
170
- freeAdapters: UI_I_Adapter[]
171
- project?: UI_T_Project
172
- isDarkMode?: boolean
173
- selectedStandardSwitchId?: string
174
- selectedSwitchId?: string
175
- tcpStacks?: UI_I_TCPStack[]
176
- tcpStackLoading?: boolean
177
- diagramsData?: UI_I_DiagramData[]
178
- }>(),
179
- {
180
- standardSwitchesInitial: () => [],
181
- freeAdapters: () => [],
182
- project: 'procurator',
183
- isDarkMode: false,
184
- selectedStandardSwitchId: '',
185
- selectedSwitchId: '',
186
- tcpStacks: () => [],
187
- tcpStackLoading: false,
188
- diagramsData: [],
189
- }
190
- )
191
-
192
- const emits = defineEmits<UI_I_AddNetworkingEmits>()
193
-
194
- const localization = computed<UI_I_Localization>(() => useLocal())
195
-
196
- const hostname = ref<string>('')
197
- const title = computed<string>(
198
- () => `${hostname.value} - ${localization.value.addNetworking}`
199
- )
200
-
201
- const wizard: Wizard = new Wizard(
202
- stepsFunc(localization.value),
203
- stepsSchemeInitial
204
- )
205
- const wasCompleted = computed<boolean>(() => wizard.wasCompleted())
206
- const selectedScheme = computed<number[]>(() => wizard.selectedScheme.value)
207
- const alertMessages = computed<string[][]>(() => wizard.alertMessages.value)
208
-
209
- const readyCompleteFields = ref<UI_I_ReadyCompleteFields[]>([])
210
-
211
- // Step's content data (connectionType)
212
- const connectionType = ref<string>('0')
213
-
214
- const connectionTypeLocal = computed<string>({
215
- get() {
216
- return connectionType.value
217
- },
218
- set(newValue: string) {
219
- wizard.resetAfterSelected()
220
- connectionType.value = newValue
221
- targetDevice.value.standardSwitch = props.selectedStandardSwitchId
222
- targetDevice.value.switch = props.selectedSwitchId
223
- },
224
- })
225
-
226
- // Step's content data (createStandardSwitch)
227
- const addedAdapters = ref<string[]>([])
228
- const coreAdapters = ref<string[]>([])
229
-
230
- const onChangeAddedAdapters = (addedAdaptersNew: string[]): void => {
231
- addedAdapters.value = addedAdaptersNew
232
- }
233
-
234
- const adapterStatus = ref<UI_I_AdapterStatus>({
235
- active: [],
236
- standby: [],
237
- unused: [],
238
- })
239
- const onChangeAdapterStatus = (adapterStatusNew: UI_I_AdapterStatus): void => {
240
- adapterStatus.value = adapterStatusNew
241
- }
242
-
243
- // Step's content data and changers (targetDevice)
244
- const targetDevice = ref<UI_I_TargetDevice>(useDeepCopy(targetDeviceInitial))
245
- const mtuFromSwitch = ref<number>(1500)
246
-
247
- const onChangeTargetDevice = (newTargetDevice: UI_I_TargetDevice): void => {
248
- const oldTargetDeviceSelected = useDeepCopy(targetDevice.value).selected
249
- const newTargetDeviceSelected = newTargetDevice.selected
250
-
251
- if (oldTargetDeviceSelected !== newTargetDeviceSelected) {
252
- wizard.resetAfterSelected()
253
- }
254
-
255
- const selectedSwitch = props.standardSwitchesInitial.find(
256
- (sw) => newTargetDevice.standardSwitch === sw.name
257
- )
258
-
259
- if (newTargetDeviceSelected === '1' && selectedSwitch) {
260
- mtuFromSwitch.value = selectedSwitch?.mtu || 1500
261
- }
262
- if (newTargetDeviceSelected === '3') {
263
- mtuFromSwitch.value = newTargetDevice.mtu || 1500
264
- }
265
-
266
- targetDevice.value = useDeepCopy(newTargetDevice)
267
- }
268
-
269
- // Step's content data and changers (portProperties)
270
- const portProperties = ref<UI_I_PortProperties>(
271
- useDeepCopy(portPropertiesInitial)
272
- )
273
- const onChangePortProperties = (newFields: UI_I_PortProperties): void => {
274
- if (portProperties.value.tcp !== newFields.tcp) {
275
- ipFourSettings.value.static.defaultGateway.value =
276
- props.tcpStacks?.find((tcp: UI_I_TCPStack) => tcp.id === newFields.tcp)
277
- .gateway || ''
278
- }
279
- portProperties.value = newFields
280
- }
281
-
282
- // Step's content data and changers (ipFourSettings)
283
- const ipFourSettings = ref<UI_I_IpFourSettings>(ipFourSettingsInitial)
284
- const onChangeIpFourSettings = (newFields: UI_I_IpFourSettings): void => {
285
- ipFourSettings.value = newFields
286
- }
287
-
288
- const gatewayFlag = ref<boolean>(false)
289
- const onChangeGatewayFlag = (newValue: boolean) => {
290
- gatewayFlag.value = newValue
291
- }
292
-
293
- // Step's content data and changers (connectionSettings)
294
- const connectionSettings = ref<UI_I_ConnectionSettings>(
295
- connectionSettingsInitial
296
- )
297
- const onChangeConnectionSettings = (
298
- newFields: UI_I_ConnectionSettings
299
- ): void => {
300
- connectionSettings.value = newFields
301
- }
302
-
303
- const onHideAlert = (stepId: number): void => {
304
- wizard.hideAlertMessagesByStepId(stepId)
305
- }
306
-
307
- let flagSwitch = ''
308
-
309
- // Choosing Scheme
310
- watch(
311
- [connectionTypeLocal, targetDevice],
312
- (newValues, oldValues) => {
313
- const newCT = newValues[0] // -> newConnectionType
314
- const oldCT = oldValues[0] // -> oldConnectionType
315
- const newTD = newValues[1] // -> newTargetDevice
316
- const oldTD = oldValues[1] // -> oldTargetDevice
317
- if (!oldTD || oldTD.selected !== newTD.selected) {
318
- flagSwitch = ''
319
- addedAdapters.value = []
320
- adapterStatus.value = {
321
- active: [],
322
- standby: [],
323
- unused: [],
324
- }
325
- }
326
- if (newCT !== oldCT) {
327
- newCT === '0' && props.selectedStandardSwitchId
328
- ? (targetDevice.value.selected = '1')
329
- : (targetDevice.value.selected = '0')
330
- newCT === '1' && (targetDevice.value.selected = '1')
331
- newCT === '2' && (targetDevice.value.selected = '2')
332
- }
333
- if (newCT === '0') {
334
- ;(newTD.selected === '0' || newTD.selected === '1') &&
335
- wizard.changeScheme(0)
336
- newTD.selected === '3' && wizard.changeScheme(1)
337
- }
338
- if (newCT === '1') {
339
- newTD.selected === '1' && wizard.changeScheme(2)
340
- newTD.selected === '3' && wizard.changeScheme(3)
341
- }
342
- if (newCT === '2') {
343
- newTD.selected === '2' && wizard.changeScheme(4)
344
- newTD.selected === '3' && wizard.changeScheme(5)
345
- }
346
- },
347
- { deep: true, immediate: true }
348
- )
349
-
350
- const onGetExistingStandardSwitches = (): void => {
351
- wizard.setLoader(true)
352
- emits('get-existing-standard-switches', () => wizard.setLoader(false))
353
- }
354
-
355
- const onGetTcpStacks = (): void => {
356
- emits('get-tcp-stacks')
357
- }
358
-
359
- watch(
360
- () => props.tcpStackLoading,
361
- (newValue: boolean) => {
362
- wizard.setLoader(newValue)
363
- }
364
- )
365
-
366
- watch(
367
- () => wizard.selectedStepId,
368
- (newSelectedStep: number) => {
369
- if (newSelectedStep === 1) {
370
- onGetExistingStandardSwitches()
371
- }
372
- if (newSelectedStep === 3) {
373
- onGetTcpStacks()
374
- }
375
- if (newSelectedStep === 6 && flagSwitch !== targetDevice.value.switch) {
376
- const nics = props.standardSwitchesInitial.find(
377
- (sw) => sw.id === targetDevice.value.switch
378
- ).nics
379
- adapterStatus.value = {
380
- active: nics.active || [],
381
- standby: nics.standby || [],
382
- unused: nics.unused || [],
383
- }
384
- coreAdapters.value = [
385
- ...adapterStatus.value.active,
386
- ...adapterStatus.value.standby,
387
- ...adapterStatus.value.unused,
388
- ]
389
- flagSwitch = targetDevice.value.switch
390
- }
391
-
392
- if (newSelectedStep !== 7) return // If last step
393
- if (wizard.isSelectedScheme(0)) {
394
- readyCompleteFields.value = createZeroSchemeReadyCompleteFunc(
395
- targetDevice.value,
396
- portProperties.value,
397
- ipFourSettings.value,
398
- localization.value
399
- )
400
- return
401
- }
402
-
403
- if (wizard.isSelectedScheme(1)) {
404
- readyCompleteFields.value = createFirstSchemeReadyCompleteFunc(
405
- targetDevice.value,
406
- portProperties.value,
407
- ipFourSettings.value,
408
- addedAdapters.value,
409
- localization.value
410
- )
411
- return
412
- }
413
- if (wizard.isSelectedScheme(2)) {
414
- readyCompleteFields.value = createSecondSchemeReadyCompleteFunc(
415
- connectionSettings.value,
416
- targetDevice.value,
417
- localization.value
418
- )
419
- return
420
- }
421
- if (wizard.isSelectedScheme(3)) {
422
- readyCompleteFields.value = createThirdSchemeReadyCompleteFunc(
423
- connectionSettings.value,
424
- targetDevice.value,
425
- addedAdapters.value,
426
- localization.value
427
- )
428
- return
429
- }
430
- if (wizard.isSelectedScheme(4)) {
431
- readyCompleteFields.value = createFourthSchemeReadyCompleteFunc(
432
- targetDevice.value.switch,
433
- props.diagramsData,
434
- adapterStatus.value,
435
- localization.value
436
- )
437
- }
438
- }
439
- )
440
-
441
- // Reset data
442
- const reset = (): void => {
443
- wizard.reset()
444
- connectionTypeLocal.value = '0'
445
- targetDevice.value = useDeepCopy(targetDeviceInitial)
446
- connectionSettings.value = useDeepCopy(connectionSettingsInitial)
447
- portProperties.value = useDeepCopy(portPropertiesInitial)
448
- ipFourSettings.value = useDeepCopy(ipFourSettingsInitial)
449
- coreAdapters.value = []
450
- addedAdapters.value = []
451
- adapterStatus.value = {
452
- active: [],
453
- standby: [],
454
- unused: [],
455
- }
456
- }
457
-
458
- const isShowNoConnectedActiveAdaptersModal = ref(false)
459
- const isShowNoActiveAdaptersModal = ref(false)
460
-
461
- const showNoConnectedActiveAdaptersModal = (): void => {
462
- isShowNoConnectedActiveAdaptersModal.value = true
463
- }
464
- const onHideNoConnectedActiveAdaptersModal = (): void => {
465
- isShowNoConnectedActiveAdaptersModal.value = false
466
- }
467
- const showNoActiveAdaptersModal = (): void => {
468
- isShowNoActiveAdaptersModal.value = true
469
- }
470
- const onHideNoActiveAdaptersModal = (): void => {
471
- isShowNoActiveAdaptersModal.value = false
472
- }
473
-
474
- const onConfirmNoActiveAdaptersModal = (): void => {
475
- onHideNoConnectedActiveAdaptersModal()
476
- onHideNoActiveAdaptersModal()
477
- wizard.selectStepHard(wizard.waitingStepId)
478
- }
479
-
480
- const onGetFreeAdapters = (showAddAdapterModal: () => void): void => {
481
- wizard.setLoader(true)
482
- emits('get-free-adapters', () => {
483
- wizard.setLoader(false)
484
- showAddAdapterModal()
485
- })
486
- }
487
-
488
- const checkFinal = async (): Promise<UI_I_ArbitraryObject<string>> => {
489
- let sendData:
490
- | UI_I_AddNetworkingZeroOrFirstSchemeDataSend
491
- | UI_I_AddNetworkingSecondOrThirdSchemeDataSend
492
- | UI_I_AddNetworkingFourthOrFifthSchemeDataSend
493
-
494
- let type: 'network' | 'vmkernel' | 'adapter'
495
-
496
- if (wizard.isSelectedScheme(0) || wizard.isSelectedScheme(1)) {
497
- const vlan = getVlanId(portProperties.value.vlanId)
498
-
499
- sendData = addNetworkingZeroOrFirstSchemeDataFunc(
500
- targetDevice.value,
501
- Number(vlan),
502
- portProperties.value,
503
- ipFourSettings.value,
504
- wizard.isSelectedScheme(1),
505
- adapterStatus.value
506
- )
507
-
508
- type = 'vmkernel'
509
- }
510
-
511
- if (wizard.isSelectedScheme(2) || wizard.isSelectedScheme(3)) {
512
- const vlan = getVlanId(connectionSettings.value.vlanId)
513
-
514
- sendData = addNetworkingSecondOrThirdSchemeDataFunc(
515
- connectionSettings.value,
516
- targetDevice.value,
517
- Number(vlan),
518
- wizard.isSelectedScheme(2),
519
- adapterStatus.value
520
- )
521
-
522
- type = 'network'
523
- }
524
-
525
- if (wizard.isSelectedScheme(4) || wizard.isSelectedScheme(5)) {
526
- sendData = addNetworkingFourthOrFifthSchemeDataFunc(
527
- targetDevice.value.switch,
528
- wizard.isSelectedScheme(4),
529
- adapterStatus.value,
530
- props.diagramsData,
531
- targetDevice.value.mtu
532
- )
533
-
534
- type = 'adapter'
535
- }
536
-
537
- return new Promise((resolve, _reject) =>
538
- emits(
539
- 'add-networking-data-validate',
540
- sendData,
541
- type,
542
- (err_arg: UI_I_ArbitraryObject<string>): void => {
543
- resolve(err_arg)
544
- }
545
- )
546
- )
547
- }
548
-
549
- const finalValidationFunc = async (
550
- value: UI_I_WizardStep[]
551
- ): Promise<UI_I_ValidationReturn> => {
552
- let stepHasError = false
553
-
554
- wizard.setLoader(true)
555
-
556
- const validationFields: {
557
- [key: string]: string
558
- } = await checkFinal()
559
-
560
- wizard.setLoader(false)
561
-
562
- for (const fieldName in validationFields) {
563
- const stepId = wizard.getStepIdByFieldName(fieldName)
564
-
565
- if (stepId !== -1) {
566
- stepHasError = wizard.setValidation(stepId, fieldName, {
567
- fieldMessage: validationFields[fieldName],
568
- alertMessage: validationFields[fieldName],
569
- })
570
- }
571
- }
572
-
573
- return {
574
- stepHasError,
575
- newValue: value,
576
- }
577
- }
578
-
579
- const validationFunc = async (
580
- value: UI_I_WizardStep[],
581
- currentStep: UI_I_WizardStep,
582
- nextStep: UI_I_WizardStep
583
- ): Promise<UI_I_ValidationReturn> => {
584
- let stepHasError = false
585
- let stepShouldStop = {
586
- ifOnCurrentStep: false,
587
- ifFromAnyStep: false,
588
- stoppageStepId: -1,
589
- }
590
-
591
- if (wizard.isValidateForStep(1, currentStep.id, nextStep.id)) {
592
- const targetDeviceValidation = checkTargetDeviceSync(
593
- localization.value,
594
- targetDevice.value,
595
- wizard,
596
- value
597
- )
598
-
599
- value = targetDeviceValidation.newValue
600
-
601
- stepHasError = stepHasError || targetDeviceValidation.stepHasError
602
- }
603
-
604
- if (wizard.isValidateForStep(2, currentStep.id, nextStep.id)) {
605
- wizard.waitingStepId = nextStep.id
606
-
607
- const adapterValidation = checkAdaptersSync(
608
- localization.value,
609
- adapterStatus.value,
610
- value,
611
- currentStep.id,
612
- nextStep.id,
613
- props.freeAdapters,
614
- showNoActiveAdaptersModal,
615
- showNoConnectedActiveAdaptersModal
616
- )
617
-
618
- value = adapterValidation.newValue
619
-
620
- stepShouldStop = adapterValidation.stepShouldStop || stepShouldStop
621
-
622
- stepHasError = stepHasError || adapterValidation.stepHasError
623
- }
624
-
625
- if (wizard.isValidateForStep(3, currentStep.id, nextStep.id)) {
626
- const labelValidation = await checkNetworkAsync(
627
- value,
628
- portProperties.value.networkLabel,
629
- 3,
630
- UI_E_ValidationFields.PORT_PROPERTIES_NETWORK,
631
- emits,
632
- localization.value,
633
- wizard
634
- )
635
-
636
- value = labelValidation.newValue
637
-
638
- const portPropertiesValidation = checkPortPropertiesSync(
639
- localization.value,
640
- portProperties.value,
641
- wizard,
642
- value
643
- )
644
-
645
- value = portPropertiesValidation.newValue
646
-
647
- stepHasError =
648
- stepHasError ||
649
- labelValidation.stepHasError ||
650
- portPropertiesValidation.stepHasError
651
- }
652
-
653
- if (wizard.isValidateForStep(4, currentStep.id, nextStep.id)) {
654
- const ipValidation = checkIpFourSettingsSync(
655
- localization.value,
656
- ipFourSettings.value,
657
- wizard,
658
- value
659
- )
660
-
661
- value = ipValidation.newValue
662
-
663
- stepHasError = stepHasError || ipValidation.stepHasError
664
- }
665
-
666
- if (wizard.isValidateForStep(5, currentStep.id, nextStep.id)) {
667
- const labelValidation = await checkNetworkAsync(
668
- value,
669
- connectionSettings.value.networkLabel,
670
- 5,
671
- UI_E_ValidationFields.CONNECTION_SETTINGS_NETWORK,
672
- emits,
673
- localization.value,
674
- wizard
675
- )
676
-
677
- value = labelValidation.newValue
678
-
679
- const connectionSettingsValidation = checkConnectionSettingsSync(
680
- localization.value,
681
- connectionSettings.value,
682
- wizard,
683
- value
684
- )
685
-
686
- value = connectionSettingsValidation.newValue
687
-
688
- stepHasError =
689
- stepHasError ||
690
- labelValidation.stepHasError ||
691
- connectionSettingsValidation.stepHasError
692
- }
693
-
694
- // if (wizard.isValidateForStep(6, currentStep.id, nextStep.id)) {
695
- // const connectionSettingsValidation = checkConnectionSettingsSync(
696
- // localization.value,
697
- // connectionSettings.value,
698
- // wizard,
699
- // value
700
- // )
701
- //
702
- // value = connectionSettingsValidation.newValue
703
- //
704
- // stepHasError =
705
- // stepHasError ||
706
- // labelValidation.stepHasError ||
707
- // connectionSettingsValidation.stepHasError
708
- // }
709
-
710
- return {
711
- newValue: value,
712
- stepHasError,
713
- stepShouldStop,
714
- }
715
- }
716
-
717
- const onChangeSteps = async (value: UI_I_WizardStep[]): Promise<void> =>
718
- wizard.changeSteps(value, validationFunc, finalValidationFunc)
719
-
720
- const onHideAddNetworkingModal = (): void => {
721
- emits('hide')
722
- reset()
723
- }
724
-
725
- const onSubmit = async (): Promise<void> => {
726
- wizard.setLoader(true)
727
- let sendData:
728
- | UI_I_AddNetworkingZeroOrFirstSchemeDataSend
729
- | UI_I_AddNetworkingSecondOrThirdSchemeDataSend
730
- | null = null
731
- let type: 'network' | 'vmkernel' | 'adapter' = 'network'
732
-
733
- if (wizard.isSelectedScheme(0) || wizard.isSelectedScheme(1)) {
734
- const vlan = getVlanId(portProperties.value.vlanId)
735
- type = 'vmkernel'
736
- sendData = addNetworkingZeroOrFirstSchemeDataFunc(
737
- targetDevice.value,
738
- Number(vlan),
739
- portProperties.value,
740
- ipFourSettings.value,
741
- wizard.isSelectedScheme(1),
742
- adapterStatus.value
743
- )
744
- }
745
-
746
- if (wizard.isSelectedScheme(2) || wizard.isSelectedScheme(3)) {
747
- const vlan = getVlanId(connectionSettings.value.vlanId)
748
- type = 'network'
749
- sendData = addNetworkingSecondOrThirdSchemeDataFunc(
750
- connectionSettings.value,
751
- targetDevice.value,
752
- Number(vlan),
753
- wizard.isSelectedScheme(2),
754
- adapterStatus.value
755
- )
756
- }
757
-
758
- if (wizard.isSelectedScheme(4) || wizard.isSelectedScheme(5)) {
759
- type = 'adapter'
760
- sendData = addNetworkingFourthOrFifthSchemeDataFunc(
761
- targetDevice.value.switch,
762
- wizard.isSelectedScheme(4),
763
- adapterStatus.value,
764
- props.diagramsData,
765
- targetDevice.value.mtu
766
- )
767
- }
768
-
769
- sendData &&
770
- emits(
771
- 'send-add-networking-data',
772
- sendData,
773
- type,
774
- () => wizard.setLoader(false),
775
- onHideAddNetworkingModal
776
- )
777
- }
778
-
779
- onMounted(() => {
780
- hostname.value = location.hostname
781
- })
782
-
783
- watch(
784
- props.tcpStacks,
785
- (newValue: UI_I_TCPStack[]) => {
786
- portProperties.value.tcp = newValue?.[0]?.id || ''
787
- ipFourSettings.value.static.defaultGateway.value =
788
- newValue?.[0]?.gateway || ''
789
- },
790
- { deep: true }
791
- )
792
- </script>
793
-
794
- <style scoped lang="scss">
795
- :deep(.modal) {
796
- & > .modal-dialog > .modal-content > .modal-body {
797
- height: calc(100% - 110px);
798
- .disabled-on-time {
799
- opacity: 0.4;
800
- pointer-events: none;
801
- }
802
- }
803
- }
804
- :deep(.disabled-on-time) {
805
- opacity: 0.4;
806
- pointer-events: none;
807
- }
808
- :deep(.wizard-content-container.add-networking-step) {
809
- padding: 0px 15px 10px 10px;
810
-
811
- .danger-not-valid {
812
- border: 2px solid red;
813
- border-bottom: 1px solid #db2100;
814
- }
815
- .tooltip-field {
816
- margin-right: 12px;
817
- }
818
-
819
- .horizontal-flex-container {
820
- margin-bottom: 5px;
821
- min-height: 36px;
822
- display: flex;
823
- flex-direction: row;
824
- }
825
- .property-label-group {
826
- width: 140px;
827
- }
828
- .disabled {
829
- opacity: 0.4;
830
- pointer-events: none;
831
- }
832
- .wizard-content-port {
833
- .margin-left-property-value-group {
834
- margin-left: 10px;
835
- }
836
-
837
- .property-value-group {
838
- padding-left: 23px;
839
- }
840
- .horizontal-flex-container {
841
- min-height: 24px;
842
- margin-bottom: 0;
843
- }
844
- .radio {
845
- min-height: 39px;
846
- margin: 10px 0;
847
- }
848
- .form-block {
849
- margin: 12px 0 24px 0;
850
- padding-left: 23px;
851
-
852
- &.form-block-ipv {
853
- input[type='text'] {
854
- width: 143px;
855
- }
856
- .horizontal-flex-container > label {
857
- margin-right: 50px;
858
- }
859
- }
860
- }
861
- .edit-vmkernel-adapter-section {
862
- padding-top: 12px;
863
-
864
- label {
865
- input[type='checkbox'] {
866
- margin-right: 4px;
867
- transform: translateY(1px);
868
- }
869
- }
870
- .horizontal-flex-container {
871
- margin-bottom: 5px;
872
- }
873
- }
874
- .port-properties-network-label {
875
- width: 280px;
876
- }
877
- .port-properties-padding {
878
- padding-top: 8px;
879
- }
880
- .port-properties-mtu-selector {
881
- margin-right: 12px;
882
- }
883
- .port-properties-mtu-container {
884
- display: flex;
885
- }
886
- select {
887
- height: 24px;
888
- }
889
- }
890
- .nw-property-value-group {
891
- display: inline;
892
- }
893
- }
894
-
895
- :deep(.modal-body-content.modal-body-content__confirmation) {
896
- display: flex;
897
- .confirm-icon-container {
898
- margin-right: 20px;
899
- }
900
- .preserve-newlines {
901
- white-space: pre-line;
902
- font-size: 15px;
903
- }
904
- }
905
-
906
- .add-networking-wizard.is-dark {
907
- :deep(.wizard-content-container.add-networking-step) {
908
- .ready-complete-container {
909
- background-color: var(--pannel-bg-color);
910
- margin-top: 12px;
911
-
912
- span {
913
- color: var(--description-color);
914
- }
915
- }
916
-
917
- .add-networking-radio-button-description {
918
- color: var(--description-color);
919
- }
920
-
921
- .property-label-group {
922
- color: var(--main-color-mode2);
923
- }
924
- .flex-property-label-group {
925
- color: var(--main-color-mode2);
926
- }
927
- .flex-property-value-group {
928
- select {
929
- color: #fff;
930
- }
931
- }
932
- .failover-order-master {
933
- .secondary-title label {
934
- color: #fff;
935
- }
936
- }
937
- .k-grid-content {
938
- background-color: var(--modal-bg-color);
939
- }
940
- .vui-action-bar {
941
- background-color: var(--pannel-bg-color);
942
- color: var(--title-color);
943
- padding: 8px 0 3px;
944
-
945
- .action-link-container:not(.disabled) {
946
- &:hover {
947
- background-color: #29414e;
948
- border: 1px solid #c7e9ff;
949
- }
950
- }
951
-
952
- svg {
953
- fill: #fff;
954
- }
955
- }
956
-
957
- .k-grid.k-widget .k-grid-content {
958
- border-left: 1px solid #485764;
959
- border-right: 1px solid #485764;
960
- border-top: 1px solid #ddd;
961
- border-bottom: 1px solid #ddd;
962
-
963
- tbody tr {
964
- background-color: var(--modal-bg-color);
965
-
966
- td {
967
- border-bottom: 1px solid #666666;
968
- border-color: #666666;
969
- }
970
-
971
- &:hover {
972
- background-color: #324f61;
973
- color: var(--title-color);
974
-
975
- td {
976
- border-bottom: 1px solid #ffffff;
977
- }
978
- }
979
-
980
- &.k-state-selected {
981
- background-color: #d8e3e9;
982
- box-shadow: 0 1px 1px rgba(0, 0, 0, 0.075) inset;
983
-
984
- td span {
985
- color: #000;
986
- }
987
- }
988
- }
989
- }
990
-
991
- .failover-order-details {
992
- &.relative-container .absolute-container {
993
- background-color: var(--pannel-bg-color);
994
- color: var(--main-color-mode2);
995
-
996
- &:has(.no-items-selected-container) {
997
- background-color: transparent;
998
- }
999
- }
1000
-
1001
- td span {
1002
- color: var(--main-color-mode2);
1003
- }
1004
- button span {
1005
- color: var(--main-color-mode2);
1006
-
1007
- &:hover:not(.disabled) {
1008
- background-color: transparent;
1009
- }
1010
- }
1011
- button.active span {
1012
- color: #fff;
1013
- }
1014
- }
1015
- }
1016
-
1017
- .select-adapter-info span {
1018
- color: var(--main-color-mode2);
1019
- }
1020
- }
1
+ <template>
2
+ <atoms-wizard
3
+ v-model:show="props.show"
4
+ :steps="wizard.steps"
5
+ :selected-scheme="selectedScheme"
6
+ :is-loading="wizard.wizardLoader.status"
7
+ :loader-messages="wizard.wizardLoader.messages"
8
+ :title="title"
9
+ max-height="551px"
10
+ :was-completed="wasCompleted"
11
+ :localization="localization"
12
+ :class="[
13
+ 'add-networking-wizard',
14
+ {
15
+ 'is-dark': props.isDarkMode,
16
+ },
17
+ ]"
18
+ @change-steps="onChangeSteps"
19
+ @hide="onHideAddNetworkingModal"
20
+ @submit="onSubmit"
21
+ >
22
+ <template #modalBody="{ selectedStep }">
23
+ <common-wizards-network-add-steps-select-connection-type
24
+ v-if="selectedStep.id === 0"
25
+ v-model="connectionTypeLocal"
26
+ />
27
+ <common-wizards-network-add-steps-selected-target-device
28
+ v-if="selectedStep.id === 1"
29
+ :wizard="wizard"
30
+ :target-device="targetDevice"
31
+ :connection-type="connectionTypeLocal"
32
+ :standard-switches-initial="props.standardSwitchesInitial"
33
+ :messages-fields="selectedStep.fields"
34
+ :alert-messages="alertMessages[1]"
35
+ :selected-standard-switch-id="props.selectedStandardSwitchId"
36
+ :selected-switch-id="props.selectedSwitchId"
37
+ @hide-alert="onHideAlert"
38
+ @change-target-device="onChangeTargetDevice"
39
+ />
40
+ <common-wizards-network-add-steps-create-standard-switch
41
+ v-if="selectedStep.id === 2 || selectedStep.id === 6"
42
+ :free-adapters="props.freeAdapters"
43
+ :added-adapters="addedAdapters"
44
+ :core-adapters="coreAdapters"
45
+ :adapter-status="adapterStatus"
46
+ :adapters="props.adapters"
47
+ :is-show-no-connected-active-adapters-modal="
48
+ isShowNoConnectedActiveAdaptersModal
49
+ "
50
+ :is-show-no-active-adapters-modal="isShowNoActiveAdaptersModal"
51
+ :is-dark-mode="props.isDarkMode"
52
+ @get-free-adapters="onGetFreeAdapters"
53
+ @change-added-adapters="onChangeAddedAdapters"
54
+ @change-adapter-status="onChangeAdapterStatus"
55
+ @confirm-no-active-adapters-modal="onConfirmNoActiveAdaptersModal"
56
+ @hide-no-connected-active-adapters-modal="
57
+ onHideNoConnectedActiveAdaptersModal
58
+ "
59
+ @hide-no-active-adapters-modal="onHideNoActiveAdaptersModal"
60
+ />
61
+ <common-wizards-network-add-steps-port-properties
62
+ v-if="selectedStep.id === 3"
63
+ :wizard="wizard"
64
+ :port-properties="portProperties"
65
+ :mtu-from-switch="mtuFromSwitch"
66
+ :project="props.project"
67
+ :messages-fields="selectedStep.fields"
68
+ :alert-messages="alertMessages[3]"
69
+ :tcp-stacks="props.tcpStacks"
70
+ @change-gateway-flag="onChangeGatewayFlag"
71
+ @change-port-properties="onChangePortProperties"
72
+ @hide-alert="onHideAlert"
73
+ />
74
+ <common-wizards-network-add-steps-ip-four-settings
75
+ v-if="selectedStep.id === 4"
76
+ :wizard="wizard"
77
+ :ip-four-settings="ipFourSettings"
78
+ :messages-fields="selectedStep.fields"
79
+ :alert-messages="alertMessages[4]"
80
+ :tcp-stacks="props.tcpStacks"
81
+ :tcp="portProperties.tcp"
82
+ :gateway-flag="gatewayFlag"
83
+ @change-gateway-flag="onChangeGatewayFlag"
84
+ @change-ip-four-settings="onChangeIpFourSettings"
85
+ @hide-alert="onHideAlert"
86
+ />
87
+ <common-wizards-network-add-steps-connection-settings
88
+ v-if="selectedStep.id === 5"
89
+ :wizard="wizard"
90
+ :connection-settings="connectionSettings"
91
+ :messages-fields="selectedStep.fields"
92
+ :alert-messages="alertMessages[5]"
93
+ @change-connection-settings="onChangeConnectionSettings"
94
+ @hide-alert="onHideAlert"
95
+ />
96
+ <!-- <common-wizards-network-add-steps-physical-adapter-->
97
+ <!-- v-if="selectedStep.id === 6"-->
98
+ <!-- />-->
99
+ <common-wizards-network-add-steps-ready-complete
100
+ v-if="selectedStep.id === 7"
101
+ :ready-complete-fields="readyCompleteFields"
102
+ />
103
+ </template>
104
+ </atoms-wizard>
105
+ </template>
106
+
107
+ <script setup lang="ts">
108
+ import {
109
+ UI_I_ArbitraryObject,
110
+ UI_I_Localization,
111
+ UI_I_ItemsWithTotalCounts,
112
+ } from '~/lib/models/interfaces'
113
+ import { UI_T_Project } from '~/lib/models/types'
114
+ import {
115
+ UI_I_PortProperties,
116
+ UI_I_IpFourSettings,
117
+ UI_I_ConnectionSettings,
118
+ UI_I_TargetDevice,
119
+ UI_I_Switch,
120
+ UI_I_ReadyCompleteFields,
121
+ UI_I_AddNetworkingSecondOrThirdSchemeDataSend,
122
+ UI_I_AddNetworkingZeroOrFirstSchemeDataSend,
123
+ UI_I_AddNetworkingFourthOrFifthSchemeDataSend,
124
+ UI_I_AddNetworkingEmits,
125
+ UI_I_TCPStack,
126
+ } from '~/components/common/wizards/network/add/lib/models/interfaces'
127
+ import {
128
+ UI_I_Adapter,
129
+ UI_I_AdapterStatus,
130
+ UI_I_SwitchAdapterItem,
131
+ UI_I_DiagramData,
132
+ } from '~/components/common/diagramMain/lib/models/interfaces'
133
+ import {
134
+ UI_I_ValidationReturn,
135
+ UI_I_WizardStep,
136
+ } from '~/components/atoms/wizard/lib/models/interfaces'
137
+ import { UI_E_ValidationFields } from '~/components/common/wizards/network/add/lib/models/enums'
138
+ import { getVlanId } from '~/components/common/wizards/network/add/lib/utils'
139
+ import Wizard from '~/components/atoms/wizard/lib/utils/utils'
140
+ import {
141
+ createZeroSchemeReadyCompleteFunc,
142
+ createFirstSchemeReadyCompleteFunc,
143
+ createSecondSchemeReadyCompleteFunc,
144
+ createThirdSchemeReadyCompleteFunc,
145
+ createFourthSchemeReadyCompleteFunc,
146
+ stepsSchemeInitial,
147
+ stepsFunc,
148
+ connectionSettingsInitial,
149
+ portPropertiesInitial,
150
+ ipFourSettingsInitial,
151
+ targetDeviceInitial,
152
+ addNetworkingZeroOrFirstSchemeDataFunc,
153
+ addNetworkingSecondOrThirdSchemeDataFunc,
154
+ addNetworkingFourthOrFifthSchemeDataFunc,
155
+ } from '~/components/common/wizards/network/add/lib/config'
156
+ import {
157
+ checkTargetDeviceSync,
158
+ checkAdaptersSync,
159
+ checkPortPropertiesSync,
160
+ checkIpFourSettingsSync,
161
+ checkConnectionSettingsSync,
162
+ checkNetworkAsync,
163
+ } from '~/components/common/wizards/network/add/validations/validations'
164
+
165
+ const props = withDefaults(
166
+ defineProps<{
167
+ show: boolean
168
+ adapters: UI_I_ItemsWithTotalCounts<UI_I_SwitchAdapterItem>
169
+ standardSwitchesInitial: UI_I_Switch[]
170
+ freeAdapters: UI_I_Adapter[]
171
+ project?: UI_T_Project
172
+ isDarkMode?: boolean
173
+ selectedStandardSwitchId?: string
174
+ selectedSwitchId?: string
175
+ tcpStacks?: UI_I_TCPStack[]
176
+ tcpStackLoading?: boolean
177
+ diagramsData?: UI_I_DiagramData[]
178
+ }>(),
179
+ {
180
+ standardSwitchesInitial: () => [],
181
+ freeAdapters: () => [],
182
+ project: 'procurator',
183
+ isDarkMode: false,
184
+ selectedStandardSwitchId: '',
185
+ selectedSwitchId: '',
186
+ tcpStacks: () => [],
187
+ tcpStackLoading: false,
188
+ diagramsData: [],
189
+ }
190
+ )
191
+
192
+ const emits = defineEmits<UI_I_AddNetworkingEmits>()
193
+
194
+ const localization = computed<UI_I_Localization>(() => useLocal())
195
+
196
+ const hostname = ref<string>('')
197
+ const title = computed<string>(
198
+ () => `${hostname.value} - ${localization.value.addNetworking}`
199
+ )
200
+
201
+ const wizard: Wizard = new Wizard(
202
+ stepsFunc(localization.value),
203
+ stepsSchemeInitial
204
+ )
205
+ const wasCompleted = computed<boolean>(() => wizard.wasCompleted())
206
+ const selectedScheme = computed<number[]>(() => wizard.selectedScheme.value)
207
+ const alertMessages = computed<string[][]>(() => wizard.alertMessages.value)
208
+
209
+ const readyCompleteFields = ref<UI_I_ReadyCompleteFields[]>([])
210
+
211
+ // Step's content data (connectionType)
212
+ const connectionType = ref<string>('0')
213
+
214
+ const connectionTypeLocal = computed<string>({
215
+ get() {
216
+ return connectionType.value
217
+ },
218
+ set(newValue: string) {
219
+ wizard.resetAfterSelected()
220
+ connectionType.value = newValue
221
+ targetDevice.value.standardSwitch = props.selectedStandardSwitchId
222
+ targetDevice.value.switch = props.selectedSwitchId
223
+ },
224
+ })
225
+
226
+ // Step's content data (createStandardSwitch)
227
+ const addedAdapters = ref<string[]>([])
228
+ const coreAdapters = ref<string[]>([])
229
+
230
+ const onChangeAddedAdapters = (addedAdaptersNew: string[]): void => {
231
+ addedAdapters.value = addedAdaptersNew
232
+ }
233
+
234
+ const adapterStatus = ref<UI_I_AdapterStatus>({
235
+ active: [],
236
+ standby: [],
237
+ unused: [],
238
+ })
239
+ const onChangeAdapterStatus = (adapterStatusNew: UI_I_AdapterStatus): void => {
240
+ adapterStatus.value = adapterStatusNew
241
+ }
242
+
243
+ // Step's content data and changers (targetDevice)
244
+ const targetDevice = ref<UI_I_TargetDevice>(useDeepCopy(targetDeviceInitial))
245
+ const mtuFromSwitch = ref<number>(1500)
246
+
247
+ const onChangeTargetDevice = (newTargetDevice: UI_I_TargetDevice): void => {
248
+ const oldTargetDeviceSelected = useDeepCopy(targetDevice.value).selected
249
+ const newTargetDeviceSelected = newTargetDevice.selected
250
+
251
+ if (oldTargetDeviceSelected !== newTargetDeviceSelected) {
252
+ wizard.resetAfterSelected()
253
+ }
254
+
255
+ const selectedSwitch = props.standardSwitchesInitial.find(
256
+ (sw) => newTargetDevice.standardSwitch === sw.name
257
+ )
258
+
259
+ if (newTargetDeviceSelected === '1' && selectedSwitch) {
260
+ mtuFromSwitch.value = selectedSwitch?.mtu || 1500
261
+ }
262
+ if (newTargetDeviceSelected === '3') {
263
+ mtuFromSwitch.value = newTargetDevice.mtu || 1500
264
+ }
265
+
266
+ targetDevice.value = useDeepCopy(newTargetDevice)
267
+ }
268
+
269
+ // Step's content data and changers (portProperties)
270
+ const portProperties = ref<UI_I_PortProperties>(
271
+ useDeepCopy(portPropertiesInitial)
272
+ )
273
+ const onChangePortProperties = (newFields: UI_I_PortProperties): void => {
274
+ if (portProperties.value.tcp !== newFields.tcp) {
275
+ ipFourSettings.value.static.defaultGateway.value =
276
+ props.tcpStacks?.find((tcp: UI_I_TCPStack) => tcp.id === newFields.tcp)
277
+ .gateway || ''
278
+ }
279
+ portProperties.value = newFields
280
+ }
281
+
282
+ // Step's content data and changers (ipFourSettings)
283
+ const ipFourSettings = ref<UI_I_IpFourSettings>(ipFourSettingsInitial)
284
+ const onChangeIpFourSettings = (newFields: UI_I_IpFourSettings): void => {
285
+ ipFourSettings.value = newFields
286
+ }
287
+
288
+ const gatewayFlag = ref<boolean>(false)
289
+ const onChangeGatewayFlag = (newValue: boolean) => {
290
+ gatewayFlag.value = newValue
291
+ }
292
+
293
+ // Step's content data and changers (connectionSettings)
294
+ const connectionSettings = ref<UI_I_ConnectionSettings>(
295
+ connectionSettingsInitial
296
+ )
297
+ const onChangeConnectionSettings = (
298
+ newFields: UI_I_ConnectionSettings
299
+ ): void => {
300
+ connectionSettings.value = newFields
301
+ }
302
+
303
+ const onHideAlert = (stepId: number): void => {
304
+ wizard.hideAlertMessagesByStepId(stepId)
305
+ }
306
+
307
+ let flagSwitch = ''
308
+
309
+ // Choosing Scheme
310
+ watch(
311
+ [connectionTypeLocal, targetDevice],
312
+ (newValues, oldValues) => {
313
+ const newCT = newValues[0] // -> newConnectionType
314
+ const oldCT = oldValues[0] // -> oldConnectionType
315
+ const newTD = newValues[1] // -> newTargetDevice
316
+ const oldTD = oldValues[1] // -> oldTargetDevice
317
+ if (!oldTD || oldTD.selected !== newTD.selected) {
318
+ flagSwitch = ''
319
+ addedAdapters.value = []
320
+ adapterStatus.value = {
321
+ active: [],
322
+ standby: [],
323
+ unused: [],
324
+ }
325
+ }
326
+ if (newCT !== oldCT) {
327
+ newCT === '0' && props.selectedStandardSwitchId
328
+ ? (targetDevice.value.selected = '1')
329
+ : (targetDevice.value.selected = '0')
330
+ newCT === '1' && (targetDevice.value.selected = '1')
331
+ newCT === '2' && (targetDevice.value.selected = '2')
332
+ }
333
+ if (newCT === '0') {
334
+ ;(newTD.selected === '0' || newTD.selected === '1') &&
335
+ wizard.changeScheme(0)
336
+ newTD.selected === '3' && wizard.changeScheme(1)
337
+ }
338
+ if (newCT === '1') {
339
+ newTD.selected === '1' && wizard.changeScheme(2)
340
+ newTD.selected === '3' && wizard.changeScheme(3)
341
+ }
342
+ if (newCT === '2') {
343
+ newTD.selected === '2' && wizard.changeScheme(4)
344
+ newTD.selected === '3' && wizard.changeScheme(5)
345
+ }
346
+ },
347
+ { deep: true, immediate: true }
348
+ )
349
+
350
+ const onGetExistingStandardSwitches = (): void => {
351
+ wizard.setLoader(true)
352
+ emits('get-existing-standard-switches', () => wizard.setLoader(false))
353
+ }
354
+
355
+ const onGetTcpStacks = (): void => {
356
+ emits('get-tcp-stacks')
357
+ }
358
+
359
+ watch(
360
+ () => props.tcpStackLoading,
361
+ (newValue: boolean) => {
362
+ wizard.setLoader(newValue)
363
+ }
364
+ )
365
+
366
+ watch(
367
+ () => wizard.selectedStepId,
368
+ (newSelectedStep: number) => {
369
+ if (newSelectedStep === 1) {
370
+ onGetExistingStandardSwitches()
371
+ }
372
+ if (newSelectedStep === 3) {
373
+ onGetTcpStacks()
374
+ }
375
+ if (newSelectedStep === 6 && flagSwitch !== targetDevice.value.switch) {
376
+ const nics = props.standardSwitchesInitial.find(
377
+ (sw) => sw.id === targetDevice.value.switch
378
+ ).nics
379
+ adapterStatus.value = {
380
+ active: nics.active || [],
381
+ standby: nics.standby || [],
382
+ unused: nics.unused || [],
383
+ }
384
+ coreAdapters.value = [
385
+ ...adapterStatus.value.active,
386
+ ...adapterStatus.value.standby,
387
+ ...adapterStatus.value.unused,
388
+ ]
389
+ flagSwitch = targetDevice.value.switch
390
+ }
391
+
392
+ if (newSelectedStep !== 7) return // If last step
393
+ if (wizard.isSelectedScheme(0)) {
394
+ readyCompleteFields.value = createZeroSchemeReadyCompleteFunc(
395
+ targetDevice.value,
396
+ portProperties.value,
397
+ ipFourSettings.value,
398
+ localization.value
399
+ )
400
+ return
401
+ }
402
+
403
+ if (wizard.isSelectedScheme(1)) {
404
+ readyCompleteFields.value = createFirstSchemeReadyCompleteFunc(
405
+ targetDevice.value,
406
+ portProperties.value,
407
+ ipFourSettings.value,
408
+ addedAdapters.value,
409
+ localization.value
410
+ )
411
+ return
412
+ }
413
+ if (wizard.isSelectedScheme(2)) {
414
+ readyCompleteFields.value = createSecondSchemeReadyCompleteFunc(
415
+ connectionSettings.value,
416
+ targetDevice.value,
417
+ localization.value
418
+ )
419
+ return
420
+ }
421
+ if (wizard.isSelectedScheme(3)) {
422
+ readyCompleteFields.value = createThirdSchemeReadyCompleteFunc(
423
+ connectionSettings.value,
424
+ targetDevice.value,
425
+ addedAdapters.value,
426
+ localization.value
427
+ )
428
+ return
429
+ }
430
+ if (wizard.isSelectedScheme(4)) {
431
+ readyCompleteFields.value = createFourthSchemeReadyCompleteFunc(
432
+ targetDevice.value.switch,
433
+ props.diagramsData,
434
+ adapterStatus.value,
435
+ localization.value
436
+ )
437
+ }
438
+ }
439
+ )
440
+
441
+ // Reset data
442
+ const reset = (): void => {
443
+ wizard.reset()
444
+ connectionTypeLocal.value = '0'
445
+ targetDevice.value = useDeepCopy(targetDeviceInitial)
446
+ connectionSettings.value = useDeepCopy(connectionSettingsInitial)
447
+ portProperties.value = useDeepCopy(portPropertiesInitial)
448
+ ipFourSettings.value = useDeepCopy(ipFourSettingsInitial)
449
+ coreAdapters.value = []
450
+ addedAdapters.value = []
451
+ adapterStatus.value = {
452
+ active: [],
453
+ standby: [],
454
+ unused: [],
455
+ }
456
+ }
457
+
458
+ const isShowNoConnectedActiveAdaptersModal = ref(false)
459
+ const isShowNoActiveAdaptersModal = ref(false)
460
+
461
+ const showNoConnectedActiveAdaptersModal = (): void => {
462
+ isShowNoConnectedActiveAdaptersModal.value = true
463
+ }
464
+ const onHideNoConnectedActiveAdaptersModal = (): void => {
465
+ isShowNoConnectedActiveAdaptersModal.value = false
466
+ }
467
+ const showNoActiveAdaptersModal = (): void => {
468
+ isShowNoActiveAdaptersModal.value = true
469
+ }
470
+ const onHideNoActiveAdaptersModal = (): void => {
471
+ isShowNoActiveAdaptersModal.value = false
472
+ }
473
+
474
+ const onConfirmNoActiveAdaptersModal = (): void => {
475
+ onHideNoConnectedActiveAdaptersModal()
476
+ onHideNoActiveAdaptersModal()
477
+ wizard.selectStepHard(wizard.waitingStepId)
478
+ }
479
+
480
+ const onGetFreeAdapters = (showAddAdapterModal: () => void): void => {
481
+ wizard.setLoader(true)
482
+ emits('get-free-adapters', () => {
483
+ wizard.setLoader(false)
484
+ showAddAdapterModal()
485
+ })
486
+ }
487
+
488
+ const checkFinal = async (): Promise<UI_I_ArbitraryObject<string>> => {
489
+ let sendData:
490
+ | UI_I_AddNetworkingZeroOrFirstSchemeDataSend
491
+ | UI_I_AddNetworkingSecondOrThirdSchemeDataSend
492
+ | UI_I_AddNetworkingFourthOrFifthSchemeDataSend
493
+
494
+ let type: 'network' | 'vmkernel' | 'adapter'
495
+
496
+ if (wizard.isSelectedScheme(0) || wizard.isSelectedScheme(1)) {
497
+ const vlan = getVlanId(portProperties.value.vlanId)
498
+
499
+ sendData = addNetworkingZeroOrFirstSchemeDataFunc(
500
+ targetDevice.value,
501
+ Number(vlan),
502
+ portProperties.value,
503
+ ipFourSettings.value,
504
+ wizard.isSelectedScheme(1),
505
+ adapterStatus.value
506
+ )
507
+
508
+ type = 'vmkernel'
509
+ }
510
+
511
+ if (wizard.isSelectedScheme(2) || wizard.isSelectedScheme(3)) {
512
+ const vlan = getVlanId(connectionSettings.value.vlanId)
513
+
514
+ sendData = addNetworkingSecondOrThirdSchemeDataFunc(
515
+ connectionSettings.value,
516
+ targetDevice.value,
517
+ Number(vlan),
518
+ wizard.isSelectedScheme(2),
519
+ adapterStatus.value
520
+ )
521
+
522
+ type = 'network'
523
+ }
524
+
525
+ if (wizard.isSelectedScheme(4) || wizard.isSelectedScheme(5)) {
526
+ sendData = addNetworkingFourthOrFifthSchemeDataFunc(
527
+ targetDevice.value.switch,
528
+ wizard.isSelectedScheme(4),
529
+ adapterStatus.value,
530
+ props.diagramsData,
531
+ targetDevice.value.mtu
532
+ )
533
+
534
+ type = 'adapter'
535
+ }
536
+
537
+ return new Promise((resolve, _reject) =>
538
+ emits(
539
+ 'add-networking-data-validate',
540
+ sendData,
541
+ type,
542
+ (err_arg: UI_I_ArbitraryObject<string>): void => {
543
+ resolve(err_arg)
544
+ }
545
+ )
546
+ )
547
+ }
548
+
549
+ const finalValidationFunc = async (
550
+ value: UI_I_WizardStep[]
551
+ ): Promise<UI_I_ValidationReturn> => {
552
+ let stepHasError = false
553
+
554
+ wizard.setLoader(true)
555
+
556
+ const validationFields: {
557
+ [key: string]: string
558
+ } = await checkFinal()
559
+
560
+ wizard.setLoader(false)
561
+
562
+ for (const fieldName in validationFields) {
563
+ const stepId = wizard.getStepIdByFieldName(fieldName)
564
+
565
+ if (stepId !== -1) {
566
+ stepHasError = wizard.setValidation(stepId, fieldName, {
567
+ fieldMessage: validationFields[fieldName],
568
+ alertMessage: validationFields[fieldName],
569
+ })
570
+ }
571
+ }
572
+
573
+ return {
574
+ stepHasError,
575
+ newValue: value,
576
+ }
577
+ }
578
+
579
+ const validationFunc = async (
580
+ value: UI_I_WizardStep[],
581
+ currentStep: UI_I_WizardStep,
582
+ nextStep: UI_I_WizardStep
583
+ ): Promise<UI_I_ValidationReturn> => {
584
+ let stepHasError = false
585
+ let stepShouldStop = {
586
+ ifOnCurrentStep: false,
587
+ ifFromAnyStep: false,
588
+ stoppageStepId: -1,
589
+ }
590
+
591
+ if (wizard.isValidateForStep(1, currentStep.id, nextStep.id)) {
592
+ const targetDeviceValidation = checkTargetDeviceSync(
593
+ localization.value,
594
+ targetDevice.value,
595
+ wizard,
596
+ value
597
+ )
598
+
599
+ value = targetDeviceValidation.newValue
600
+
601
+ stepHasError = stepHasError || targetDeviceValidation.stepHasError
602
+ }
603
+
604
+ if (wizard.isValidateForStep(2, currentStep.id, nextStep.id)) {
605
+ wizard.waitingStepId = nextStep.id
606
+
607
+ const adapterValidation = checkAdaptersSync(
608
+ localization.value,
609
+ adapterStatus.value,
610
+ value,
611
+ currentStep.id,
612
+ nextStep.id,
613
+ props.freeAdapters,
614
+ showNoActiveAdaptersModal,
615
+ showNoConnectedActiveAdaptersModal
616
+ )
617
+
618
+ value = adapterValidation.newValue
619
+
620
+ stepShouldStop = adapterValidation.stepShouldStop || stepShouldStop
621
+
622
+ stepHasError = stepHasError || adapterValidation.stepHasError
623
+ }
624
+
625
+ if (wizard.isValidateForStep(3, currentStep.id, nextStep.id)) {
626
+ const labelValidation = await checkNetworkAsync(
627
+ value,
628
+ portProperties.value.networkLabel,
629
+ 3,
630
+ UI_E_ValidationFields.PORT_PROPERTIES_NETWORK,
631
+ emits,
632
+ localization.value,
633
+ wizard
634
+ )
635
+
636
+ value = labelValidation.newValue
637
+
638
+ const portPropertiesValidation = checkPortPropertiesSync(
639
+ localization.value,
640
+ portProperties.value,
641
+ wizard,
642
+ value
643
+ )
644
+
645
+ value = portPropertiesValidation.newValue
646
+
647
+ stepHasError =
648
+ stepHasError ||
649
+ labelValidation.stepHasError ||
650
+ portPropertiesValidation.stepHasError
651
+ }
652
+
653
+ if (wizard.isValidateForStep(4, currentStep.id, nextStep.id)) {
654
+ const ipValidation = checkIpFourSettingsSync(
655
+ localization.value,
656
+ ipFourSettings.value,
657
+ wizard,
658
+ value
659
+ )
660
+
661
+ value = ipValidation.newValue
662
+
663
+ stepHasError = stepHasError || ipValidation.stepHasError
664
+ }
665
+
666
+ if (wizard.isValidateForStep(5, currentStep.id, nextStep.id)) {
667
+ const labelValidation = await checkNetworkAsync(
668
+ value,
669
+ connectionSettings.value.networkLabel,
670
+ 5,
671
+ UI_E_ValidationFields.CONNECTION_SETTINGS_NETWORK,
672
+ emits,
673
+ localization.value,
674
+ wizard
675
+ )
676
+
677
+ value = labelValidation.newValue
678
+
679
+ const connectionSettingsValidation = checkConnectionSettingsSync(
680
+ localization.value,
681
+ connectionSettings.value,
682
+ wizard,
683
+ value
684
+ )
685
+
686
+ value = connectionSettingsValidation.newValue
687
+
688
+ stepHasError =
689
+ stepHasError ||
690
+ labelValidation.stepHasError ||
691
+ connectionSettingsValidation.stepHasError
692
+ }
693
+
694
+ // if (wizard.isValidateForStep(6, currentStep.id, nextStep.id)) {
695
+ // const connectionSettingsValidation = checkConnectionSettingsSync(
696
+ // localization.value,
697
+ // connectionSettings.value,
698
+ // wizard,
699
+ // value
700
+ // )
701
+ //
702
+ // value = connectionSettingsValidation.newValue
703
+ //
704
+ // stepHasError =
705
+ // stepHasError ||
706
+ // labelValidation.stepHasError ||
707
+ // connectionSettingsValidation.stepHasError
708
+ // }
709
+
710
+ return {
711
+ newValue: value,
712
+ stepHasError,
713
+ stepShouldStop,
714
+ }
715
+ }
716
+
717
+ const onChangeSteps = async (value: UI_I_WizardStep[]): Promise<void> =>
718
+ wizard.changeSteps(value, validationFunc, finalValidationFunc)
719
+
720
+ const onHideAddNetworkingModal = (): void => {
721
+ emits('hide')
722
+ reset()
723
+ }
724
+
725
+ const onSubmit = async (): Promise<void> => {
726
+ wizard.setLoader(true)
727
+ let sendData:
728
+ | UI_I_AddNetworkingZeroOrFirstSchemeDataSend
729
+ | UI_I_AddNetworkingSecondOrThirdSchemeDataSend
730
+ | null = null
731
+ let type: 'network' | 'vmkernel' | 'adapter' = 'network'
732
+
733
+ if (wizard.isSelectedScheme(0) || wizard.isSelectedScheme(1)) {
734
+ const vlan = getVlanId(portProperties.value.vlanId)
735
+ type = 'vmkernel'
736
+ sendData = addNetworkingZeroOrFirstSchemeDataFunc(
737
+ targetDevice.value,
738
+ Number(vlan),
739
+ portProperties.value,
740
+ ipFourSettings.value,
741
+ wizard.isSelectedScheme(1),
742
+ adapterStatus.value
743
+ )
744
+ }
745
+
746
+ if (wizard.isSelectedScheme(2) || wizard.isSelectedScheme(3)) {
747
+ const vlan = getVlanId(connectionSettings.value.vlanId)
748
+ type = 'network'
749
+ sendData = addNetworkingSecondOrThirdSchemeDataFunc(
750
+ connectionSettings.value,
751
+ targetDevice.value,
752
+ Number(vlan),
753
+ wizard.isSelectedScheme(2),
754
+ adapterStatus.value
755
+ )
756
+ }
757
+
758
+ if (wizard.isSelectedScheme(4) || wizard.isSelectedScheme(5)) {
759
+ type = 'adapter'
760
+ sendData = addNetworkingFourthOrFifthSchemeDataFunc(
761
+ targetDevice.value.switch,
762
+ wizard.isSelectedScheme(4),
763
+ adapterStatus.value,
764
+ props.diagramsData,
765
+ targetDevice.value.mtu
766
+ )
767
+ }
768
+
769
+ sendData &&
770
+ emits(
771
+ 'send-add-networking-data',
772
+ sendData,
773
+ type,
774
+ () => wizard.setLoader(false),
775
+ onHideAddNetworkingModal
776
+ )
777
+ }
778
+
779
+ onMounted(() => {
780
+ hostname.value = location.hostname
781
+ })
782
+
783
+ watch(
784
+ props.tcpStacks,
785
+ (newValue: UI_I_TCPStack[]) => {
786
+ portProperties.value.tcp = newValue?.[0]?.id || ''
787
+ ipFourSettings.value.static.defaultGateway.value =
788
+ newValue?.[0]?.gateway || ''
789
+ },
790
+ { deep: true }
791
+ )
792
+ </script>
793
+
794
+ <style scoped lang="scss">
795
+ :deep(.modal) {
796
+ & > .modal-dialog > .modal-content > .modal-body {
797
+ height: calc(100% - 110px);
798
+ .disabled-on-time {
799
+ opacity: 0.4;
800
+ pointer-events: none;
801
+ }
802
+ }
803
+ }
804
+ :deep(.disabled-on-time) {
805
+ opacity: 0.4;
806
+ pointer-events: none;
807
+ }
808
+ :deep(.wizard-content-container.add-networking-step) {
809
+ padding: 0px 15px 10px 10px;
810
+
811
+ .danger-not-valid {
812
+ border: 2px solid red;
813
+ border-bottom: 1px solid #db2100;
814
+ }
815
+ .tooltip-field {
816
+ margin-right: 12px;
817
+ }
818
+
819
+ .horizontal-flex-container {
820
+ margin-bottom: 5px;
821
+ min-height: 36px;
822
+ display: flex;
823
+ flex-direction: row;
824
+ }
825
+ .property-label-group {
826
+ width: 140px;
827
+ }
828
+ .disabled {
829
+ opacity: 0.4;
830
+ pointer-events: none;
831
+ }
832
+ .wizard-content-port {
833
+ .margin-left-property-value-group {
834
+ margin-left: 10px;
835
+ }
836
+
837
+ .property-value-group {
838
+ padding-left: 23px;
839
+ }
840
+ .horizontal-flex-container {
841
+ min-height: 24px;
842
+ margin-bottom: 0;
843
+ }
844
+ .radio {
845
+ min-height: 39px;
846
+ margin: 10px 0;
847
+ }
848
+ .form-block {
849
+ margin: 12px 0 24px 0;
850
+ padding-left: 23px;
851
+
852
+ &.form-block-ipv {
853
+ input[type='text'] {
854
+ width: 143px;
855
+ }
856
+ .horizontal-flex-container > label {
857
+ margin-right: 50px;
858
+ }
859
+ }
860
+ }
861
+ .edit-vmkernel-adapter-section {
862
+ padding-top: 12px;
863
+
864
+ label {
865
+ input[type='checkbox'] {
866
+ margin-right: 4px;
867
+ transform: translateY(1px);
868
+ }
869
+ }
870
+ .horizontal-flex-container {
871
+ margin-bottom: 5px;
872
+ }
873
+ }
874
+ .port-properties-network-label {
875
+ width: 280px;
876
+ }
877
+ .port-properties-padding {
878
+ padding-top: 8px;
879
+ }
880
+ .port-properties-mtu-selector {
881
+ margin-right: 12px;
882
+ }
883
+ .port-properties-mtu-container {
884
+ display: flex;
885
+ }
886
+ select {
887
+ height: 24px;
888
+ }
889
+ }
890
+ .nw-property-value-group {
891
+ display: inline;
892
+ }
893
+ }
894
+
895
+ :deep(.modal-body-content.modal-body-content__confirmation) {
896
+ display: flex;
897
+ .confirm-icon-container {
898
+ margin-right: 20px;
899
+ }
900
+ .preserve-newlines {
901
+ white-space: pre-line;
902
+ font-size: 15px;
903
+ }
904
+ }
905
+
906
+ .add-networking-wizard.is-dark {
907
+ :deep(.wizard-content-container.add-networking-step) {
908
+ .ready-complete-container {
909
+ background-color: var(--pannel-bg-color);
910
+ margin-top: 12px;
911
+
912
+ span {
913
+ color: var(--description-color);
914
+ }
915
+ }
916
+
917
+ .add-networking-radio-button-description {
918
+ color: var(--description-color);
919
+ }
920
+
921
+ .property-label-group {
922
+ color: var(--main-color-mode2);
923
+ }
924
+ .flex-property-label-group {
925
+ color: var(--main-color-mode2);
926
+ }
927
+ .flex-property-value-group {
928
+ select {
929
+ color: #fff;
930
+ }
931
+ }
932
+ .failover-order-master {
933
+ .secondary-title label {
934
+ color: #fff;
935
+ }
936
+ }
937
+ .k-grid-content {
938
+ background-color: var(--modal-bg-color);
939
+ }
940
+ .vui-action-bar {
941
+ background-color: var(--pannel-bg-color);
942
+ color: var(--title-color);
943
+ padding: 8px 0 3px;
944
+
945
+ .action-link-container:not(.disabled) {
946
+ &:hover {
947
+ background-color: #29414e;
948
+ border: 1px solid #c7e9ff;
949
+ }
950
+ }
951
+
952
+ svg {
953
+ fill: #fff;
954
+ }
955
+ }
956
+
957
+ .k-grid.k-widget .k-grid-content {
958
+ border-left: 1px solid #485764;
959
+ border-right: 1px solid #485764;
960
+ border-top: 1px solid #ddd;
961
+ border-bottom: 1px solid #ddd;
962
+
963
+ tbody tr {
964
+ background-color: var(--modal-bg-color);
965
+
966
+ td {
967
+ border-bottom: 1px solid #666666;
968
+ border-color: #666666;
969
+ }
970
+
971
+ &:hover {
972
+ background-color: #324f61;
973
+ color: var(--title-color);
974
+
975
+ td {
976
+ border-bottom: 1px solid #ffffff;
977
+ }
978
+ }
979
+
980
+ &.k-state-selected {
981
+ background-color: #d8e3e9;
982
+ box-shadow: 0 1px 1px rgba(0, 0, 0, 0.075) inset;
983
+
984
+ td span {
985
+ color: #000;
986
+ }
987
+ }
988
+ }
989
+ }
990
+
991
+ .failover-order-details {
992
+ &.relative-container .absolute-container {
993
+ background-color: var(--pannel-bg-color);
994
+ color: var(--main-color-mode2);
995
+
996
+ &:has(.no-items-selected-container) {
997
+ background-color: transparent;
998
+ }
999
+ }
1000
+
1001
+ td span {
1002
+ color: var(--main-color-mode2);
1003
+ }
1004
+ button span {
1005
+ color: var(--main-color-mode2);
1006
+
1007
+ &:hover:not(.disabled) {
1008
+ background-color: transparent;
1009
+ }
1010
+ }
1011
+ button.active span {
1012
+ color: #fff;
1013
+ }
1014
+ }
1015
+ }
1016
+
1017
+ .select-adapter-info span {
1018
+ color: var(--main-color-mode2);
1019
+ }
1020
+ }
1021
1021
  </style>