bfg-common 1.6.91 → 1.6.92

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 (186) hide show
  1. package/assets/localization/local_be.json +4637 -4365
  2. package/assets/localization/local_en.json +4642 -4369
  3. package/assets/localization/local_hy.json +4641 -4369
  4. package/assets/localization/local_kk.json +4640 -4368
  5. package/assets/localization/local_ru.json +4640 -4368
  6. package/assets/localization/local_zh.json +4638 -4366
  7. package/assets/scss/common/global.scss +11 -0
  8. package/assets/scss/common/normalize.scss +3 -0
  9. package/assets/scss/common/theme.scss +2 -2
  10. package/components/atoms/stack/StackBlock.vue +1 -1
  11. package/components/atoms/table/dataGrid/DataGridColumnSwitch.vue +2 -2
  12. package/components/atoms/tooltip/TooltipError.vue +3 -0
  13. package/components/common/adapterManager/AdapterManagerNew.vue +87 -0
  14. package/components/common/adapterManager/addAdapterModal/AddAdapterModalNew.vue +1 -1
  15. package/components/common/adapterManager/addAdapterWarningModal/AddAdapterWarningModalNew.vue +0 -1
  16. package/components/common/adapterManager/ui/actions/bar/Bar.vue +2 -0
  17. package/components/common/adapterManager/ui/actions/bar/BarNew.vue +3 -2
  18. package/components/common/adapterManager/ui/table/adapters/AdaptersNew.vue +1 -0
  19. package/components/common/configure/physicalAdapters/PhysicalAdapters.vue +6 -0
  20. package/components/common/configure/physicalAdapters/PhysicalAdaptersNew.vue +219 -192
  21. package/components/common/configure/physicalAdapters/PhysicalAdaptersOld.vue +6 -4
  22. package/components/common/configure/physicalAdapters/buttons/Buttons.vue +1 -0
  23. package/components/common/configure/physicalAdapters/modals/edit/Edit.vue +26 -1
  24. package/components/common/configure/physicalAdapters/modals/edit/EditNew.vue +30 -1
  25. package/components/common/configure/physicalAdapters/modals/edit/lib/models/interfaces.ts +5 -0
  26. package/components/common/configure/physicalAdapters/modals/edit/lib/validations/validations.ts +19 -0
  27. package/components/common/configure/physicalAdapters/tableView/TableViewNew.vue +12 -1
  28. package/components/common/configure/physicalAdapters/tableView/lib/config/physicalAdaptersTableConfigNew.ts +21 -21
  29. package/components/common/configure/physicalAdapters/tableView/lib/config/settings.ts +39 -32
  30. package/components/common/configure/physicalAdapters/tableView/lib/models/interfaces.ts +4 -1
  31. package/components/common/diagramMain/Diagram.vue +169 -85
  32. package/components/common/diagramMain/DiagramMain.vue +40 -10
  33. package/components/common/diagramMain/header/Header.vue +49 -0
  34. package/components/common/diagramMain/header/HeaderNew.vue +155 -0
  35. package/components/common/diagramMain/{Header.vue → header/HeaderOld.vue} +78 -67
  36. package/components/common/diagramMain/modals/Modals.vue +5 -5
  37. package/components/common/diagramMain/modals/UnsavedChangesModal.vue +32 -0
  38. package/components/common/diagramMain/modals/editSettings/EditSettings.vue +104 -102
  39. package/components/common/diagramMain/modals/editSettings/EditSettingsNew.vue +285 -0
  40. package/components/common/diagramMain/modals/editSettings/EditSettingsOld.vue +254 -0
  41. package/components/common/diagramMain/modals/editSettings/confirmTeamingSettingsModal/ConfirmTeamingSettingsModal.vue +31 -0
  42. package/components/common/diagramMain/modals/editSettings/confirmTeamingSettingsModal/ConfirmTeamingSettingsModalNew.vue +82 -0
  43. package/components/common/diagramMain/modals/editSettings/{ConfirmTeamingSettingsModal.vue → confirmTeamingSettingsModal/ConfirmTeamingSettingsModalOld.vue} +2 -5
  44. package/components/common/diagramMain/modals/editSettings/lib/config/config.ts +15 -0
  45. package/components/common/diagramMain/modals/editSettings/lib/models/interfaces.ts +6 -0
  46. package/components/common/diagramMain/modals/editSettings/lib/utils/utils.ts +177 -0
  47. package/components/common/diagramMain/modals/editSettings/modal/EditSettingsModal.vue +137 -0
  48. package/components/common/diagramMain/modals/editSettings/modal/EditSettingsModalNew.vue +91 -0
  49. package/components/common/diagramMain/modals/editSettings/{EditSettingsModal.vue → modal/EditSettingsModalOld.vue} +12 -51
  50. package/components/common/diagramMain/modals/editSettings/tabs/networkProperties/NetworkProperties.vue +158 -0
  51. package/components/common/diagramMain/modals/editSettings/tabs/networkProperties/NetworkPropertiesNew.vue +262 -0
  52. package/components/common/diagramMain/modals/editSettings/tabs/{NetworkProperties.vue → networkProperties/NetworkPropertiesOld.vue} +12 -113
  53. package/components/common/diagramMain/modals/editSettings/tabs/port/ipvFourSettings/IpvFourSettings.vue +192 -0
  54. package/components/common/diagramMain/modals/editSettings/tabs/port/ipvFourSettings/IpvFourSettingsNew.vue +388 -0
  55. package/components/common/diagramMain/modals/editSettings/tabs/port/{IpvFourSettings.vue → ipvFourSettings/IpvFourSettingsOld.vue} +11 -152
  56. package/components/common/diagramMain/modals/editSettings/tabs/port/portProperties/PortProperties.vue +139 -0
  57. package/components/common/diagramMain/modals/editSettings/tabs/port/portProperties/PortPropertiesNew.vue +286 -0
  58. package/components/common/diagramMain/modals/editSettings/tabs/port/{PortProperties.vue → portProperties/PortPropertiesOld.vue} +12 -103
  59. package/components/common/diagramMain/modals/editSettings/tabs/security/Security.vue +209 -0
  60. package/components/common/diagramMain/modals/editSettings/tabs/security/SecurityNew.vue +233 -0
  61. package/components/common/diagramMain/modals/editSettings/tabs/{Security.vue → security/SecurityOld.vue} +25 -48
  62. package/components/common/diagramMain/modals/editSettings/tabs/switchProperties/SwitchProperties.vue +128 -0
  63. package/components/common/diagramMain/modals/editSettings/tabs/switchProperties/SwitchPropertiesNew.vue +235 -0
  64. package/components/common/diagramMain/modals/editSettings/tabs/switchProperties/SwitchPropertiesOld.vue +87 -0
  65. package/components/common/diagramMain/modals/editSettings/tabs/teamingFailover/TeamingFailover.vue +99 -0
  66. package/components/common/diagramMain/modals/editSettings/tabs/teamingFailover/TeamingFailoverNew.vue +319 -0
  67. package/components/common/diagramMain/modals/editSettings/tabs/{TeamingFailover.vue → teamingFailover/TeamingFailoverOld.vue} +11 -48
  68. package/components/common/diagramMain/modals/editSettings/tabs/trafficShaping/TrafficShaping.vue +173 -0
  69. package/components/common/diagramMain/modals/editSettings/tabs/trafficShaping/TrafficShapingNew.vue +348 -0
  70. package/components/common/diagramMain/modals/editSettings/tabs/{TrafficShaping.vue → trafficShaping/TrafficShapingOld.vue} +12 -134
  71. package/components/common/diagramMain/modals/lib/config/adapterModal.ts +9 -9
  72. package/components/common/diagramMain/modals/lib/config/diagramConfig.ts +43 -2
  73. package/components/common/diagramMain/modals/lib/config/index.ts +2 -1
  74. package/components/common/diagramMain/modals/lib/config/networkModal.ts +15 -15
  75. package/components/common/diagramMain/modals/lib/config/portModal.ts +12 -12
  76. package/components/common/diagramMain/modals/lib/config/vCenterModal.ts +2 -2
  77. package/components/common/diagramMain/modals/lib/config/vmKernelAdapter.ts +1 -1
  78. package/components/common/diagramMain/modals/lib/utils/index.ts +34 -4
  79. package/components/common/diagramMain/modals/managePhysicalAdapters/ManagePhysicalAdapters.vue +164 -0
  80. package/components/common/diagramMain/modals/managePhysicalAdapters/ManagePhysicalAdaptersNew.vue +306 -0
  81. package/components/common/diagramMain/modals/{ManagePhysicalAdaptersModal.vue → managePhysicalAdapters/ManagePhysicalAdaptersOld.vue} +33 -119
  82. package/components/common/diagramMain/modals/migrateVmkernelAdapter/MigrateVmkernelAdapter.vue +2 -2
  83. package/components/common/diagramMain/modals/migrateVmkernelAdapter/validations/common.ts +1 -1
  84. package/components/common/diagramMain/modals/remove/RemoveModalNew.vue +67 -16
  85. package/components/common/diagramMain/modals/viewSettings/viewSettingsModal/ViewSettingsModalNew.vue +8 -0
  86. package/components/common/diagramMain/skeleton/Header.vue +31 -0
  87. package/components/common/diagramMain/skeleton/Switch.vue +75 -0
  88. package/components/common/layout/theHeader/ThemeSwitch.vue +1 -1
  89. package/components/common/layout/theHeader/modals/reconnect/New.vue +38 -30
  90. package/components/common/layout/theHeader/userMenu/modals/changePassword/New.vue +8 -9
  91. package/components/common/layout/theHeader/userMenu/modals/preferences/New.vue +4 -0
  92. package/components/common/layout/theHeader/userMenu/modals/preferences/Old.vue +9 -2
  93. package/components/common/layout/theHeader/userMenu/modals/preferences/changeLanguage/ChangeLanguage.vue +11 -7
  94. package/components/common/layout/theHeader/userMenu/modals/preferences/defaultConsole/DefaultConsole.vue +7 -1
  95. package/components/common/layout/theHeader/userMenu/modals/preferences/defaultConsole/lib/config/consoleOptions.ts +8 -5
  96. package/components/common/layout/theHeader/userMenu/modals/preferences/timeFormat/TimeFormat.vue +9 -5
  97. package/components/common/layout/theHeader/userMenu/modals/preferences/timeFormat/lib/config/formatOptions.ts +1 -1
  98. package/components/common/layout/theHeader/userMenu/modals/preferences/view/Old.vue +5 -9
  99. package/components/common/layout/theHeader/userMenu/modals/preferences/view/View.vue +9 -6
  100. package/components/common/mainNavigationPanel/MainNavigationPanelNew.vue +3 -1
  101. package/components/common/modals/Rename.vue +3 -1
  102. package/components/common/monitor/advanced/tools/chartOptionsModal/lib/utils/checkSubmit.ts +46 -46
  103. package/components/common/monitor/utilization/Utilization.vue +7 -1
  104. package/components/common/monitor/utilization/lib/utils/index.ts +24 -3
  105. package/components/common/noDataProvided/NoDataProvidedNew.vue +1 -1
  106. package/components/common/pages/backups/lib/models/interfaces.ts +1 -0
  107. package/components/common/pages/backups/modals/Modals.vue +1 -0
  108. package/components/common/pages/backups/modals/createBackup/datastores/tableView/new/lib/config/table.ts +4 -4
  109. package/components/common/pages/backups/modals/createBackup/datastores/tableView/old/lib/config/table.ts +4 -4
  110. package/components/common/pages/backups/modals/lib/config/restore.ts +1 -0
  111. package/components/common/pages/backups/modals/lib/models/interfaces.ts +1 -0
  112. package/components/common/pages/backups/modals/restore/Restore.vue +4 -2
  113. package/components/common/pages/hardwareHealth/historyTestimony/tools/chartOptionsModal/ChartOptionsModal.vue +184 -253
  114. package/components/common/pages/hardwareHealth/historyTestimony/tools/chartOptionsModal/actions/ActionsNew.vue +1 -1
  115. package/components/common/pages/scheduledTasks/table/lib/models/enums.ts +9 -0
  116. package/components/common/pages/scheduledTasks/table/new/New.vue +12 -10
  117. package/components/common/pages/tasks/Tasks.vue +4 -1
  118. package/components/common/pages/tasks/table/Table.vue +25 -23
  119. package/components/common/readyToComplete/New.vue +1 -0
  120. package/components/common/split/horizontal/New.vue +1 -1
  121. package/components/common/split/horizontal/Old.vue +1 -1
  122. package/components/common/split/vertical/New.vue +42 -8
  123. package/components/common/split/vertical/Old.vue +31 -2
  124. package/components/common/split/vertical/Vertical.vue +4 -0
  125. package/components/common/tools/Actions.vue +7 -3
  126. package/components/common/tools/lib/models/interfaces.ts +1 -0
  127. package/components/common/vm/actions/add/New.vue +21 -6
  128. package/components/common/vm/actions/common/customizeHardware/virtualHardware/cdDvdDrive/media/Media.vue +14 -1
  129. package/components/common/vm/actions/common/customizeHardware/virtualHardware/cdDvdDrive/media/New.vue +5 -0
  130. package/components/common/vm/actions/common/customizeHardware/virtualHardware/cdDvdDrive/media/Old.vue +1 -0
  131. package/components/common/vm/actions/common/customizeHardware/virtualHardware/cpu/New.vue +1 -0
  132. package/components/common/vm/actions/common/customizeHardware/virtualHardware/reservation/New.vue +2 -0
  133. package/components/common/vm/actions/common/select/options/New.vue +14 -12
  134. package/components/common/vm/actions/common/select/options/Old.vue +16 -15
  135. package/components/common/vm/actions/common/select/storage/new/lib/config/table.ts +13 -15
  136. package/components/common/vm/actions/confirm/Confirm.vue +3 -0
  137. package/components/common/vm/actions/rename/Old.vue +1 -0
  138. package/components/common/vm/snapshots/DetailView.vue +6 -6
  139. package/components/common/wizards/datastore/add/New.vue +6 -0
  140. package/components/common/wizards/datastore/add/lib/config/steps.ts +1 -1
  141. package/components/common/wizards/datastore/add/steps/nameAndDevice/NameAndDeviceNew.vue +1 -1
  142. package/components/common/wizards/datastore/add/steps/nameAndDevice/advancedOptions/New.vue +1 -1
  143. package/components/common/wizards/network/add/Add.vue +13 -2
  144. package/components/common/wizards/network/add/AddNew.vue +22 -26
  145. package/components/common/wizards/network/add/lib/config/initialData.ts +6 -4
  146. package/components/common/wizards/network/add/lib/config/steps.ts +1 -1
  147. package/components/common/wizards/network/add/lib/models/interfaces.ts +1 -0
  148. package/components/common/wizards/network/add/lib/utils/utils.ts +1 -1
  149. package/components/common/wizards/network/add/steps/connectionSettings/ConnectionSettingsOld.vue +5 -1
  150. package/components/common/wizards/network/add/steps/ipFourSettings/IpFourSettingsNew.vue +2 -8
  151. package/components/common/wizards/network/add/steps/ipFourSettings/IpFourSettingsOld.vue +3 -0
  152. package/components/common/wizards/network/add/steps/portProperties/PortPropertiesNew.vue +2 -8
  153. package/components/common/wizards/network/add/steps/portProperties/PortPropertiesOld.vue +6 -2
  154. package/components/common/wizards/network/add/steps/selectTargetDevice/SelectTargetDeviceNew.vue +10 -3
  155. package/components/common/wizards/network/add/steps/selectTargetDevice/SelectTargetDeviceOld.vue +4 -0
  156. package/components/common/wizards/network/add/steps/selectTargetDevice/modals/new/SelectNetwork.vue +5 -1
  157. package/components/common/wizards/network/add/validations/common.ts +1 -1
  158. package/components/common/wizards/vm/migrate/New.vue +13 -3
  159. package/components/common/wizards/vm/migrate/lib/config/constructDataReady.ts +5 -0
  160. package/components/common/wizards/vm/migrate/lib/config/steps.ts +3 -2
  161. package/components/common/wizards/vm/migrate/steps/computeResource/New.vue +2 -1
  162. package/components/common/wizards/vm/migrate/steps/computeResource/tableView/new/New.vue +40 -21
  163. package/components/common/wizards/vm/migrate/steps/computeResource/tableView/new/lib/config/clusterTable.ts +340 -0
  164. package/components/common/wizards/vm/migrate/steps/computeResource/tableView/new/lib/config/hostTable.ts +44 -14
  165. package/components/common/wizards/vm/migrate/steps/computeResource/tableView/new/lib/models/enums.ts +4 -0
  166. package/components/common/wizards/vm/migrate/steps/priority/New.vue +7 -2
  167. package/components/common/wizards/vm/migrate/steps/selectStorage/New.vue +22 -7
  168. package/components/common/wizards/vm/migrate/steps/selectStorage/configure/batch/New.vue +6 -0
  169. package/components/common/wizards/vm/migrate/steps/selectStorage/configure/batch/table/new/New.vue +4 -1
  170. package/components/common/wizards/vm/migrate/steps/selectStorage/configure/batch/table/new/lib/config/datastoreTable.ts +12 -16
  171. package/components/common/wizards/vm/migrate/steps/selectStorage/configure/disk/table/new/New.vue +10 -5
  172. package/components/common/wizards/vm/migrate/steps/selectStorage/configure/disk/table/new/lib/config/diskTable.ts +16 -11
  173. package/components/common/wizards/vm/migrate/steps/selectStorage/configure/disk/table/old/lib/config/diskTable.ts +7 -1
  174. package/components/common/wizards/vm/migrate/steps/selectStorage/selectedPerDisk/New.vue +17 -10
  175. package/components/common/wizards/vm/migrate/steps/type/TypeNew.vue +1 -0
  176. package/components/common/wizards/vm/migrate/vmOrigin/New.vue +35 -15
  177. package/lib/models/interfaces.ts +1 -0
  178. package/lib/models/store/tasks/enums.ts +3 -0
  179. package/lib/models/store/tasks/types.ts +7 -6
  180. package/package.json +2 -2
  181. package/plugins/directives.ts +3 -5
  182. package/public/spice-console/application/agent.js +18 -17
  183. package/store/tasks/actions.ts +26 -8
  184. package/store/tasks/mappers/recentTasks.ts +1 -0
  185. package/components/common/diagramMain/modals/editSettings/tabs/SwitchProperties.vue +0 -164
  186. package/components/common/monitor/utilization/lib/models/enums.ts +0 -4
@@ -0,0 +1,306 @@
1
+ <template>
2
+ <div class="manage-physical-adapters">
3
+ <ui-modal
4
+ :texts="modalTextsLocal"
5
+ :title="localization.common.managePhysicalNetworkAdapters"
6
+ :subtitle="props.switchName"
7
+ test-id="manage-physical-adapters-modal"
8
+ width="880px"
9
+ size="md"
10
+ :is-loading="props.isManageAdaptersModalLoading"
11
+ @hide="emits('hide')"
12
+ @submit="emits('send-manage-adapter')"
13
+ >
14
+ <template #content>
15
+ <div class="modal-content">
16
+ <common-adapter-manager
17
+ :adapters="props.adapters"
18
+ :free-adapters="props.freeAdapters"
19
+ :added-adapters="props.addedAdapters"
20
+ :adapter-status="props.adapterStatus"
21
+ :is-dark-mode="props.isDarkMode"
22
+ test-id="manage-physical-adapter"
23
+ :is-active="true"
24
+ :full-mode="true"
25
+ :is-show-no-connected-active-adapters-modal="
26
+ props.isShowNoConnectedActiveAdaptersModal
27
+ "
28
+ :is-show-no-active-adapters-modal="
29
+ props.isShowNoActiveAdaptersModal
30
+ "
31
+ @hide-no-connected-active-adapters-modal="
32
+ emits('hide-no-connected-active-adapters-modal')
33
+ "
34
+ @hide-no-active-adapters-modal="
35
+ emits('hide-no-active-adapters-modal')
36
+ "
37
+ @submit-from-modal="emits('confirm-no-active-adapters-modal')"
38
+ @change-added-adapters="onChangeAddedAdapters"
39
+ @change-adapter-status="onChangeAdapterStatus"
40
+ @get-free-adapters="onGetFreeAdapters"
41
+ />
42
+ </div>
43
+ </template>
44
+ <template #footerLeftContent><span></span></template>
45
+ </ui-modal>
46
+ </div>
47
+ </template>
48
+
49
+ <script setup lang="ts">
50
+ import type { UI_I_ModalTexts } from '~/node_modules/bfg-uikit/components/ui/modal/models/interfaces'
51
+ import type {
52
+ UI_I_Localization,
53
+ UI_I_ItemsWithTotalCounts,
54
+ } from '~/lib/models/interfaces'
55
+ import type {
56
+ UI_I_Adapter,
57
+ UI_I_AdapterStatus,
58
+ UI_I_SwitchAdapterItem,
59
+ } from '~/components/common/diagramMain/lib/models/interfaces'
60
+
61
+ const props = defineProps<{
62
+ switchName: string
63
+ freeAdapters: UI_I_Adapter[]
64
+ adapterStatus: UI_I_AdapterStatus
65
+ adapters: UI_I_ItemsWithTotalCounts<UI_I_SwitchAdapterItem>
66
+ addedAdapters: string[]
67
+ isDarkMode: boolean
68
+ isManageAdaptersModalLoading: boolean
69
+ isShowNoConnectedActiveAdaptersModal: boolean
70
+ isShowNoActiveAdaptersModal: boolean
71
+ }>()
72
+
73
+ const emits = defineEmits<{
74
+ (event: 'get-free-adapters', showModal: () => void): void
75
+ (event: 'change-added-adapters', addedAdapters: string[]): void
76
+ (event: 'change-adapter-status', adapterStatus: UI_I_AdapterStatus): void
77
+ (event: 'hide-no-connected-active-adapters-modal'): void
78
+ (event: 'hide-no-active-adapters-modal'): void
79
+ (event: 'confirm-no-active-adapters-modal'): void
80
+ (event: 'send-manage-adapter'): void
81
+ (event: 'hide'): void
82
+ }>()
83
+
84
+ const localization = computed<UI_I_Localization>(() => useLocal())
85
+
86
+ const modalTextsLocal = computed<UI_I_ModalTexts>(() => ({
87
+ button1: localization.value.common.cancel,
88
+ button2: localization.value.common.save,
89
+ }))
90
+
91
+ const onChangeAddedAdapters = (addedAdaptersNew: string[]) => {
92
+ emits('change-added-adapters', addedAdaptersNew)
93
+ }
94
+
95
+ const onChangeAdapterStatus = (adapterStatusNew: UI_I_AdapterStatus) => {
96
+ emits('change-adapter-status', adapterStatusNew)
97
+ }
98
+
99
+ const onGetFreeAdapters = (showModal: () => void) => {
100
+ emits('get-free-adapters', showModal)
101
+ }
102
+ </script>
103
+
104
+ <style scoped lang="scss">
105
+ .modal-content {
106
+ padding: 8px 0 8px 32px;
107
+
108
+ :deep(.manager) {
109
+ height: calc(100vh - 316px - 36px);
110
+ max-height: 331px;
111
+ min-height: unset;
112
+ width: 240px !important;
113
+ }
114
+
115
+ :deep(.info-container) {
116
+ .table-fixed-height {
117
+ height: calc(100vh - 316px - 36px);
118
+ max-height: 331px;
119
+ min-height: unset;
120
+ }
121
+ }
122
+ }
123
+
124
+ :deep(.modal-body) {
125
+ overflow: hidden;
126
+ height: 100%;
127
+
128
+ .modal-content {
129
+ max-height: calc(100vh - 300px);
130
+
131
+ .edit-pg-failover-order-with-details.full-height {
132
+ max-height: calc(100vh - 316px);
133
+
134
+ .failover-order-with-details {
135
+ max-height: calc(100vh - 316px);
136
+
137
+ .flex-container.flex-row.fill-parent {
138
+ max-height: calc(100vh - 316px);
139
+
140
+ .failover-order-master.relative-container {
141
+ max-height: calc(100vh - 316px);
142
+
143
+ .manager-wrapper {
144
+ max-height: calc(100vh - 316px);
145
+ }
146
+ }
147
+ }
148
+ }
149
+ }
150
+ }
151
+
152
+ .ui-main-no-items-found {
153
+ padding-top: 8px;
154
+ padding-bottom: 8px;
155
+ }
156
+
157
+ .full-width-adapter-info.no-selected-adapter {
158
+ overflow: hidden;
159
+ }
160
+ }
161
+
162
+ :deep(.modal-footer-transparent-block) {
163
+ display: block !important;
164
+ width: calc(100% - 224px - 32px - 16px - 24px);
165
+ right: 16px;
166
+ top: -22px;
167
+ }
168
+
169
+ @media (max-width: 1084px) {
170
+ :deep(.edit-pg-failover-order-with-details:not(.add-adapter-view)) {
171
+ .failover-order-details {
172
+ width: 100%;
173
+ }
174
+ .tabs-container {
175
+ padding-right: 32px !important;
176
+ }
177
+ .manager {
178
+ height: calc(100vh - 316px - 36px) !important;
179
+ max-height: 331px !important;
180
+ min-height: unset !important;
181
+ width: 240px !important;
182
+ }
183
+
184
+ .info-container {
185
+ .table-fixed-height {
186
+ height: calc(100vh - 316px - 36px) !important;
187
+ max-height: 331px !important;
188
+ min-height: unset !important;
189
+ }
190
+ }
191
+
192
+ .table-fixed-height {
193
+ min-height: unset !important;
194
+ max-height: unset !important;
195
+
196
+ .info-block-container {
197
+ padding-right: 19px !important;
198
+ }
199
+ }
200
+ .flex-container {
201
+ flex-direction: row !important;
202
+ row-gap: 16px;
203
+
204
+ .manager-wrapper {
205
+ width: 100%;
206
+ padding-right: 0;
207
+ }
208
+ }
209
+ .no-selected-adapter {
210
+ padding-bottom: unset;
211
+ }
212
+ }
213
+ }
214
+
215
+ @media (max-width: 650px) {
216
+ :deep(.modal-body) {
217
+ overflow-y: auto !important;
218
+ scrollbar-gutter: stable;
219
+ height: 383px !important;
220
+
221
+ .modal-content {
222
+ max-height: 100% !important;
223
+ height: 100% !important;
224
+
225
+ .edit-pg-failover-order-with-details.full-height {
226
+ max-height: 100% !important;
227
+ height: 100% !important;
228
+ .failover-order-with-details {
229
+ max-height: 100% !important;
230
+ height: 100% !important;
231
+ .flex-container.flex-row.fill-parent {
232
+ max-height: 100% !important;
233
+ height: 100% !important;
234
+ .manager-wrapper {
235
+ max-height: 100% !important;
236
+ height: 100% !important;
237
+ }
238
+ .failover-order-details.relative-container {
239
+ max-height: 100% !important;
240
+ height: 100% !important;
241
+ }
242
+ }
243
+ }
244
+ }
245
+ }
246
+ }
247
+ .modal-content {
248
+ padding: 8px 0 8px 32px;
249
+ height: 100%;
250
+
251
+ :deep(.manager) {
252
+ width: 100% !important;
253
+ }
254
+ :deep(.info-container) {
255
+ .table-fixed-height {
256
+ height: unset;
257
+ }
258
+ }
259
+ }
260
+
261
+ :deep(.modal-footer-transparent-block) {
262
+ display: block !important;
263
+ width: calc(100% - 14px) !important;
264
+ right: 14px !important;
265
+ top: -16px !important;
266
+ }
267
+
268
+ :deep(.edit-pg-failover-order-with-details:not(.add-adapter-view)) {
269
+ .manager {
270
+ height: unset !important;
271
+ max-height: unset !important;
272
+ min-height: unset !important;
273
+ width: 100% !important;
274
+ }
275
+
276
+ .info-container {
277
+ .table-fixed-height {
278
+ height: unset !important;
279
+ max-height: unset !important;
280
+ min-height: unset !important;
281
+ }
282
+ }
283
+
284
+ :deep(.table-fixed-height) {
285
+ min-height: unset !important;
286
+ max-height: unset !important;
287
+
288
+ .info-block-container {
289
+ padding-right: 19px !important;
290
+ }
291
+ }
292
+ .flex-container {
293
+ flex-direction: column !important;
294
+ column-gap: 16px;
295
+
296
+ .manager-wrapper {
297
+ width: 100%;
298
+ padding-right: 18px;
299
+ }
300
+ }
301
+ .no-selected-adapter {
302
+ padding-bottom: 16px;
303
+ }
304
+ }
305
+ }
306
+ </style>
@@ -1,9 +1,9 @@
1
1
  <template>
2
- <div>
2
+ <div class="manage-physical-adapters">
3
3
  <atoms-modal
4
- :width="props.width"
5
- :height="props.height"
6
- :show="props.show"
4
+ width="864px"
5
+ height="510px"
6
+ show
7
7
  :title="localization.common.managePhysicalNetworkAdapters"
8
8
  :second-title="props.switchName"
9
9
  :class="[
@@ -12,8 +12,8 @@
12
12
  'is-dark': props.isDarkMode,
13
13
  },
14
14
  ]"
15
- @hide="onHideManagePhysicalAdaptersModal"
16
- @submit="onSendManageAdapter"
15
+ @hide="emits('hide')"
16
+ @submit="emits('send-manage-adapter')"
17
17
  >
18
18
  <template #modalBody>
19
19
  <div class="wizard-content__container">
@@ -21,22 +21,25 @@
21
21
  <common-adapter-manager
22
22
  :adapters="props.adapters"
23
23
  :free-adapters="props.freeAdapters"
24
- :added-adapters="addedAdapters"
24
+ :added-adapters="props.addedAdapters"
25
25
  :adapter-status="props.adapterStatus"
26
26
  :is-dark-mode="props.isDarkMode"
27
27
  test-id="manage-physical-adapter"
28
28
  :is-active="true"
29
29
  :full-mode="true"
30
30
  :is-show-no-connected-active-adapters-modal="
31
- isShowNoConnectedActiveAdaptersModal
31
+ props.isShowNoConnectedActiveAdaptersModal
32
+ "
33
+ :is-show-no-active-adapters-modal="
34
+ props.isShowNoActiveAdaptersModal
32
35
  "
33
- :is-show-no-active-adapters-modal="isShowNoActiveAdaptersModal"
34
-
35
36
  @hide-no-connected-active-adapters-modal="
36
- onHideNoConnectedActiveAdaptersModal
37
+ emits('hide-no-connected-active-adapters-modal')
37
38
  "
38
- @hide-no-active-adapters-modal="onHideNoActiveAdaptersModal"
39
- @submit-from-modal="onConfirmNoActiveAdaptersModal"
39
+ @hide-no-active-adapters-modal="
40
+ emits('hide-no-active-adapters-modal')
41
+ "
42
+ @submit-from-modal="emits('confirm-no-active-adapters-modal')"
40
43
  @change-added-adapters="onChangeAddedAdapters"
41
44
  @change-adapter-status="onChangeAdapterStatus"
42
45
  @get-free-adapters="onGetFreeAdapters"
@@ -60,131 +63,42 @@ import type {
60
63
  UI_I_SwitchAdapterItem,
61
64
  } from '~/components/common/diagramMain/lib/models/interfaces'
62
65
 
63
- // Props from up
64
- const props = withDefaults(
65
- defineProps<{
66
- switchName: string
67
- show: boolean
68
- viewName: string
69
- width: string
70
- height: string
71
- freeAdapters: UI_I_Adapter[]
72
- adapterStatus: UI_I_AdapterStatus
73
- adapters: UI_I_ItemsWithTotalCounts<UI_I_SwitchAdapterItem>
74
- initialAdapterStatus: UI_I_AdapterStatus
75
- isDarkMode?: boolean
76
- isManageAdaptersModalLoading?: boolean
77
- }>(),
78
- {
79
- switchName: '',
80
- adapterStatus: () => ({
81
- active: [],
82
- standby: [],
83
- unused: [],
84
- }),
85
- isDarkMode: false,
86
- isManageAdaptersModalLoading: false,
87
- }
88
- )
66
+ const props = defineProps<{
67
+ switchName: string
68
+ freeAdapters: UI_I_Adapter[]
69
+ adapterStatus: UI_I_AdapterStatus
70
+ adapters: UI_I_ItemsWithTotalCounts<UI_I_SwitchAdapterItem>
71
+ addedAdapters: string[]
72
+ isDarkMode: boolean
73
+ isManageAdaptersModalLoading: boolean
74
+ isShowNoConnectedActiveAdaptersModal: boolean
75
+ isShowNoActiveAdaptersModal: boolean
76
+ }>()
89
77
 
90
- // Modal
91
78
  const emits = defineEmits<{
92
- (event: 'hide'): void
93
79
  (event: 'get-free-adapters', showModal: () => void): void
94
80
  (event: 'change-added-adapters', addedAdapters: string[]): void
95
81
  (event: 'change-adapter-status', adapterStatus: UI_I_AdapterStatus): void
96
- (
97
- event: 'send-manage-physical-adapters-data',
98
- adapterStatus: UI_I_AdapterStatus,
99
- switchName: string,
100
- hideModal: () => void
101
- ): void
82
+ (event: 'hide-no-connected-active-adapters-modal'): void
83
+ (event: 'hide-no-active-adapters-modal'): void
84
+ (event: 'confirm-no-active-adapters-modal'): void
85
+ (event: 'send-manage-adapter'): void
86
+ (event: 'hide'): void
102
87
  }>()
103
88
 
104
- // UI_I_Localization
105
89
  const localization = computed<UI_I_Localization>(() => useLocal())
106
90
 
107
- const addedAdapters = ref<string[]>()
108
-
109
91
  const onChangeAddedAdapters = (addedAdaptersNew: string[]) => {
110
- addedAdapters.value = addedAdaptersNew
92
+ emits('change-added-adapters', addedAdaptersNew)
111
93
  }
112
94
 
113
95
  const onChangeAdapterStatus = (adapterStatusNew: UI_I_AdapterStatus) => {
114
96
  emits('change-adapter-status', adapterStatusNew)
115
97
  }
116
98
 
117
- const isShowNoConnectedActiveAdaptersModal = ref(false)
118
- const isShowNoActiveAdaptersModal = ref(false)
119
-
120
- const showNoConnectedActiveAdaptersModal = () => {
121
- isShowNoConnectedActiveAdaptersModal.value = true
122
- }
123
- const onHideNoConnectedActiveAdaptersModal = () => {
124
- isShowNoConnectedActiveAdaptersModal.value = false
125
- }
126
- const showNoActiveAdaptersModal = () => {
127
- isShowNoActiveAdaptersModal.value = true
128
- }
129
- const onHideNoActiveAdaptersModal = () => {
130
- isShowNoActiveAdaptersModal.value = false
131
- }
132
-
133
- const onSendManagePhysicalAdaptersData = (
134
- adapterStatus: UI_I_AdapterStatus,
135
- switchName: string,
136
- hideModal: () => void
137
- ) => {
138
- emits(
139
- 'send-manage-physical-adapters-data',
140
- adapterStatus,
141
- switchName,
142
- hideModal
143
- )
144
- }
145
- const onConfirmNoActiveAdaptersModal = () => {
146
- onSendManagePhysicalAdaptersData(
147
- props.adapterStatus,
148
- props.switchName,
149
- onHideManagePhysicalAdaptersModal
150
- )
151
- onHideNoConnectedActiveAdaptersModal()
152
- onHideNoActiveAdaptersModal()
153
- }
154
-
155
- const onSendManageAdapter = () => {
156
- if (props.adapterStatus.active.length === 0) {
157
- showNoActiveAdaptersModal()
158
- return
159
- }
160
-
161
- const activeAndConnectedAdapters = props.adapterStatus.active.filter(
162
- (adapterName: string) =>
163
- props.adapters.items.find(
164
- (ad: UI_I_SwitchAdapterItem) => ad.name === adapterName
165
- )?.carrier
166
- )
167
- if (activeAndConnectedAdapters.length === 0) {
168
- showNoConnectedActiveAdaptersModal()
169
- return
170
- }
171
-
172
- onSendManagePhysicalAdaptersData(
173
- props.adapterStatus,
174
- props.switchName,
175
- onHideManagePhysicalAdaptersModal
176
- )
177
- }
178
-
179
99
  const onGetFreeAdapters = (showModal: () => void) => {
180
100
  emits('get-free-adapters', showModal)
181
101
  }
182
-
183
- const onHideManagePhysicalAdaptersModal = (): void => {
184
- addedAdapters.value = []
185
- emits('change-adapter-status', props.initialAdapterStatus)
186
- emits('hide')
187
- }
188
102
  </script>
189
103
 
190
104
  <style scoped lang="scss">
@@ -112,7 +112,7 @@ const title = computed<string>(
112
112
 
113
113
  const connectionSettings = ref<UI_I_ConnectionSettings>({
114
114
  networkLabel: 'VM Network',
115
- vlanId: `${localization.value.common.none} (0)`,
115
+ vlanId: `${localization.value.common.none2} (0)`,
116
116
  })
117
117
 
118
118
  const vmkernelAdapter = ref<UI_I_SelectVmkernelAdapter>({
@@ -262,7 +262,7 @@ const reset = (): void => {
262
262
  wizard.reset()
263
263
  connectionSettings.value = {
264
264
  networkLabel: 'VM Network',
265
- vlanId: `${localization.value.common.none} (0)`,
265
+ vlanId: `${localization.value.common.none2} (0)`,
266
266
  }
267
267
  vmkernelAdapter.value = {
268
268
  vm: '',
@@ -14,6 +14,6 @@ export const checkVlanId = (
14
14
  vlanId: string,
15
15
  localization: UI_I_Localization
16
16
  ): boolean =>
17
- vlanId !== `${localization.common.none} (0)` &&
17
+ vlanId !== `${localization.common.none2} (0)` &&
18
18
  vlanId !== `${localization.common.all} (4095)` &&
19
19
  (isIntegerNumberInRange(vlanId, 0, 4095) || vlanId === '')
@@ -1,14 +1,24 @@
1
1
  <template>
2
- <ui-popup
3
- :v-if="props.show"
4
- :title="title"
5
- :message="text"
6
- :texts="buttons"
7
- icon-name="info-status"
8
- size="sm"
9
- @hide="onHideModal"
10
- @submit="onRemove"
11
- />
2
+ <div>
3
+ <ui-popup
4
+ :v-if="props.show"
5
+ :title="title"
6
+ :message="text"
7
+ :texts="buttons"
8
+ icon-name="circle-warning"
9
+ size="sm"
10
+ @hide="onHideModal"
11
+ @submit="onRemove"
12
+ >
13
+ <template #content>
14
+ <div v-if="props.type === 'port'" class="message">
15
+ <span class="message-title">{{ title }}</span>
16
+ <span class="message-item">{{ text[0] }}</span>
17
+ <span class="message-item">{{ text[1] }}</span>
18
+ </div>
19
+ </template>
20
+ </ui-popup>
21
+ </div>
12
22
  </template>
13
23
 
14
24
  <script setup lang="ts">
@@ -63,16 +73,19 @@ const title = computed<string>(() => {
63
73
  }
64
74
  })
65
75
 
66
- const text = computed<string>(() => {
76
+ const text = computed<string | string[]>(() => {
67
77
  switch (props.type) {
68
78
  case 'network':
69
79
  return localization.value.common.confirmNetworkRemovalMessage
70
80
  .replace('{networkName}', props.label)
71
81
  .replace('{switchName}', props.switchName)
72
82
  case 'port':
73
- return localization.value.common.confirmPortRemovalMessage
74
- .replace('{portName}', props.id)
75
- .replace('{switchName}', props.switchName)
83
+ return [
84
+ localization.value.common.confirmPortRemovalMessage1,
85
+ localization.value.common.confirmPortRemovalMessage2
86
+ .replace('{portName}', props.id)
87
+ .replace('{switchName}', props.switchName),
88
+ ]
76
89
  case 'switch':
77
90
  return localization.value.common.confirmSwitchRemovalMessage
78
91
  .replace('{switchName}', props.switchName)
@@ -84,7 +97,7 @@ const text = computed<string>(() => {
84
97
 
85
98
  const buttons = computed<UI_I_ModalTexts>(() => ({
86
99
  button1: localization.value.common.cancel,
87
- button2: localization.value.common.confirm,
100
+ button2: localization.value.common.remove,
88
101
  }))
89
102
 
90
103
  const isSphereProject = computed<boolean>(() => props.project === 'sphere')
@@ -103,4 +116,42 @@ const onHideModal = (): void => {
103
116
  }
104
117
  </script>
105
118
 
106
- <style scoped lang="scss"></style>
119
+ <style scoped lang="scss">
120
+ :deep(svg) {
121
+ path {
122
+ fill: #ea3223;
123
+ }
124
+ }
125
+
126
+ .message {
127
+ padding: 16px 32px;
128
+
129
+ &-title {
130
+ display: block;
131
+ font-weight: 500;
132
+ font-size: 20px;
133
+ line-height: 24px;
134
+ letter-spacing: 0;
135
+ text-align: center;
136
+ vertical-align: middle;
137
+ margin-bottom: 8px;
138
+ color: var(--title-form-first-color);
139
+ }
140
+
141
+ &-item {
142
+ display: block;
143
+ font-weight: 400;
144
+ font-size: 14px;
145
+ line-height: 18px;
146
+ letter-spacing: 0;
147
+ text-align: center;
148
+ vertical-align: middle;
149
+ color: #9da6ad;
150
+ margin-bottom: 12px;
151
+ }
152
+
153
+ span:last-of-type {
154
+ margin-bottom: 0;
155
+ }
156
+ }
157
+ </style>
@@ -46,5 +46,13 @@ const emits = defineEmits<{
46
46
  :deep(.modal-body) {
47
47
  max-height: unset;
48
48
  overflow-y: unset;
49
+
50
+ .info-container {
51
+ padding-top: 0;
52
+ }
53
+ .table-fixed-height {
54
+ scrollbar-gutter: stable;
55
+ padding-right: 18px;
56
+ }
49
57
  }
50
58
  </style>
@@ -0,0 +1,31 @@
1
+ <template>
2
+ <div class="diagram-header-skeleton">
3
+ <div class="diagram-header-skeleton-title">
4
+ <ui-skeleton-item width="160" height="22" />
5
+ </div>
6
+ <div class="diagram-header-skeleton-buttons">
7
+ <ui-skeleton-item width="112" height="36" border-radius="8" />
8
+ <ui-skeleton-item width="160" height="36" border-radius="8" />
9
+ </div>
10
+ </div>
11
+ </template>
12
+
13
+ <script setup lang="ts"></script>
14
+
15
+ <style scoped lang="scss">
16
+ .diagram-header-skeleton {
17
+ padding: 16px;
18
+ display: flex;
19
+ align-items: flex-start;
20
+ justify-content: space-between;
21
+ flex-wrap: wrap;
22
+ row-gap: 24px;
23
+ column-gap: 24px;
24
+
25
+ &-buttons {
26
+ display: flex;
27
+ column-gap: 16px;
28
+ margin-left: auto;
29
+ }
30
+ }
31
+ </style>