bfg-common 1.2.187 → 1.2.188

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