bfg-common 1.4.846 → 1.4.847

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 (181) hide show
  1. package/assets/img/icons/icons-sprite-dark-3.svg +227 -227
  2. package/assets/img/icons/icons-sprite-dark-5.svg +488 -488
  3. package/assets/img/icons/icons-sprite-light-3.svg +227 -227
  4. package/assets/img/icons/icons-sprite-light-5.svg +488 -488
  5. package/assets/scss/common/normalize.scss +361 -361
  6. package/components/atoms/TheIcon3.vue +50 -50
  7. package/components/atoms/autocomplete/Autocomplete.vue +300 -300
  8. package/components/atoms/collapse/CollapseNav.vue +164 -164
  9. package/components/atoms/dropdown/dropdown/Dropdown.vue +168 -168
  10. package/components/atoms/modal/bySteps/BySteps.vue +253 -253
  11. package/components/atoms/stack/StackBlock.vue +185 -185
  12. package/components/atoms/table/dataGrid/DataGrid.vue +1704 -1704
  13. package/components/atoms/table/dataGrid/DataGridColumnSwitch.vue +222 -222
  14. package/components/atoms/table/dataGrid/lib/config/settingsTable.ts +94 -94
  15. package/components/atoms/table/dataGrid/lib/utils/export.ts +16 -16
  16. package/components/common/browse/BrowseNew.vue +237 -237
  17. package/components/common/browse/BrowseOld.vue +217 -217
  18. package/components/common/browse/blocks/contents/Files.vue +37 -37
  19. package/components/common/browse/blocks/contents/FilesOld.vue +72 -72
  20. package/components/common/browse/blocks/contents/filesNew/FilesNew.vue +96 -96
  21. package/components/common/browse/blocks/contents/filesNew/Skeleton.vue +18 -18
  22. package/components/common/browse/blocks/lib/models/types.ts +1 -1
  23. package/components/common/browse/lib/models/interfaces.ts +5 -5
  24. package/components/common/context/Context.vue +111 -111
  25. package/components/common/context/lib/models/interfaces.ts +30 -30
  26. package/components/common/context/recursion/Recursion.vue +87 -87
  27. package/components/common/context/recursion/RecursionNew.vue +237 -237
  28. package/components/common/context/recursion/RecursionOld.vue +227 -227
  29. package/components/common/details/DetailsItem.vue +109 -109
  30. package/components/common/diagramMain/Header.vue +211 -211
  31. package/components/common/diagramMain/adapter/AdapterItems.vue +61 -61
  32. package/components/common/diagramMain/lib/config/initial.ts +50 -50
  33. package/components/common/diagramMain/lib/models/types.ts +21 -21
  34. package/components/common/diagramMain/lib/utils/utils.ts +331 -331
  35. package/components/common/diagramMain/modals/ManagePhysicalAdaptersModal.vue +330 -330
  36. package/components/common/diagramMain/modals/editSettings/ConfirmTeamingSettingsModal.vue +40 -40
  37. package/components/common/diagramMain/modals/editSettings/EditSettings.vue +497 -497
  38. package/components/common/diagramMain/modals/editSettings/EditSettingsModal.vue +812 -812
  39. package/components/common/diagramMain/modals/editSettings/tabs/NetworkProperties.vue +214 -214
  40. package/components/common/diagramMain/modals/editSettings/tabs/Security.vue +189 -189
  41. package/components/common/diagramMain/modals/editSettings/tabs/SwitchProperties.vue +163 -163
  42. package/components/common/diagramMain/modals/editSettings/tabs/TeamingFailover.vue +175 -175
  43. package/components/common/diagramMain/modals/editSettings/tabs/port/IpvFourSettings.vue +346 -346
  44. package/components/common/diagramMain/modals/editSettings/tabs/port/PortProperties.vue +205 -205
  45. package/components/common/diagramMain/modals/lib/config/diagramConfig.ts +23 -23
  46. package/components/common/diagramMain/modals/lib/config/initial.ts +180 -180
  47. package/components/common/diagramMain/modals/lib/config/vmKernelAdapter.ts +90 -90
  48. package/components/common/diagramMain/modals/lib/mappers/mappers.ts +87 -87
  49. package/components/common/diagramMain/modals/lib/utils/index.ts +24 -24
  50. package/components/common/diagramMain/modals/migrateVmkernelAdapter/lib/config/steps.ts +114 -114
  51. package/components/common/diagramMain/modals/migrateVmkernelAdapter/steps/ConnectionSettings.vue +169 -169
  52. package/components/common/diagramMain/modals/migrateVmkernelAdapter/steps/SelectVmkernelAdapter.vue +159 -159
  53. package/components/common/diagramMain/modals/migrateVmkernelAdapter/validations/common.ts +14 -14
  54. package/components/common/diagramMain/modals/migrateVmkernelAdapter/validations/connectionSettings.ts +137 -137
  55. package/components/common/diagramMain/modals/migrateVmkernelAdapter/validations/selectVmkernelAdapter.ts +52 -52
  56. package/components/common/diagramMain/modals/migrateVmkernelAdapter/validations/validations.ts +19 -19
  57. package/components/common/diagramMain/port/Ports.vue +47 -47
  58. package/components/common/graph/Graph.vue +104 -104
  59. package/components/common/graph/GraphOld.vue +31 -31
  60. package/components/common/layout/theHeader/helpMenu/About.vue +82 -82
  61. package/components/common/layout/theHeader/helpMenu/aboutNew/AboutNew.vue +103 -103
  62. package/components/common/modals/unsavedChanges/UnsavedChanges.vue +56 -56
  63. package/components/common/monitor/overview/Overview.vue +221 -221
  64. package/components/common/monitor/overview/OverviewNew.vue +142 -142
  65. package/components/common/monitor/overview/OverviewOld.vue +139 -139
  66. package/components/common/monitor/overview/filters/Filters.vue +166 -166
  67. package/components/common/monitor/overview/filters/FiltersNew.vue +172 -172
  68. package/components/common/monitor/overview/filters/FiltersOld.vue +151 -151
  69. package/components/common/monitor/overview/filters/customIntervalModal/CustomIntervalModal.vue +175 -175
  70. package/components/common/monitor/overview/filters/customIntervalModal/CustomIntervalModalNew.vue +181 -181
  71. package/components/common/monitor/overview/filters/customIntervalModal/CustomIntervalModalOld.vue +161 -161
  72. package/components/common/pages/home/StatusContent.vue +49 -49
  73. package/components/common/pages/home/headline/Headline.vue +45 -45
  74. package/components/common/pages/home/headline/HeadlineNew.vue +71 -71
  75. package/components/common/pages/home/headline/HeadlineOld.vue +42 -42
  76. package/components/common/pages/home/lib/models/interfaces.ts +48 -48
  77. package/components/common/pages/home/widgets/Widgets.vue +49 -49
  78. package/components/common/pages/home/widgets/WidgetsNew.vue +86 -86
  79. package/components/common/pages/home/widgets/WidgetsOld.vue +34 -34
  80. package/components/common/pages/home/widgets/hosts/Hosts.vue +27 -27
  81. package/components/common/pages/home/widgets/hosts/HostsNew.vue +100 -100
  82. package/components/common/pages/home/widgets/hosts/lib/config/items.ts +23 -23
  83. package/components/common/pages/home/widgets/services/lib/config/config.ts +108 -108
  84. package/components/common/pages/home/widgets/vms/Vms.vue +26 -26
  85. package/components/common/pages/home/widgets/vms/VmsOld.vue +35 -35
  86. package/components/common/pages/home/widgets/vms/lib/config/items.ts +19 -19
  87. package/components/common/pages/packages/Packages.vue +208 -208
  88. package/components/common/pages/tasks/table/errorInfo/ErrorInfo.vue +8 -3
  89. package/components/common/pages/tasks/table/expandDetails/ExpandDetails.vue +1 -0
  90. package/components/common/pages/tasks/table/lib/config/config.ts +1 -0
  91. package/components/common/recursionTree/RecursionTree.vue +223 -223
  92. package/components/common/select/button/ButtonDropdown.vue +108 -108
  93. package/components/common/spiceConsole/Drawer.vue +370 -370
  94. package/components/common/spiceConsole/lib/models/interfaces.ts +5 -5
  95. package/components/common/split/horizontal/HorizontalNew.vue +376 -376
  96. package/components/common/split/horizontal/HorizontalOld.vue +337 -337
  97. package/components/common/split/vertical/Vertical.vue +160 -160
  98. package/components/common/vm/actions/add/Add.vue +621 -621
  99. package/components/common/vm/actions/clone/Clone.vue +639 -639
  100. package/components/common/vm/actions/clone/lib/config/steps.ts +129 -129
  101. package/components/common/vm/actions/common/customizeHardware/CustomizeHardware.vue +271 -271
  102. package/components/common/vm/actions/common/customizeHardware/CustomizeHardwareNew.vue +271 -271
  103. package/components/common/vm/actions/common/customizeHardware/CustomizeHardwareOld.vue +174 -174
  104. package/components/common/vm/actions/common/customizeHardware/virtualHardware/VirtualHardware.vue +694 -694
  105. package/components/common/vm/actions/common/customizeHardware/virtualHardware/browseView/BrowseView.vue +219 -219
  106. package/components/common/vm/actions/common/customizeHardware/virtualHardware/bus/BusNew.vue +117 -117
  107. package/components/common/vm/actions/common/customizeHardware/virtualHardware/cdDvdDrive/CdDvdDriveNew.vue +161 -161
  108. package/components/common/vm/actions/common/customizeHardware/virtualHardware/cdDvdDrive/CdDvdDriveOld.vue +165 -165
  109. package/components/common/vm/actions/common/customizeHardware/virtualHardware/cdDvdDrive/media/Media.vue +25 -25
  110. package/components/common/vm/actions/common/customizeHardware/virtualHardware/cdDvdDrive/media/MediaNew.vue +70 -70
  111. package/components/common/vm/actions/common/customizeHardware/virtualHardware/cdDvdDrive/media/MediaOld.vue +50 -50
  112. package/components/common/vm/actions/common/customizeHardware/virtualHardware/cpu/Cpu.vue +338 -338
  113. package/components/common/vm/actions/common/customizeHardware/virtualHardware/limit/Limit.vue +220 -220
  114. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newHardDisk/NewHardDisk.vue +364 -364
  115. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newHardDisk/NewHardDiskNew.vue +229 -229
  116. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newHardDisk/NewHardDiskOld.vue +247 -247
  117. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newHardDisk/mode/ModeOld.vue +56 -56
  118. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newHardDisk/sharing/SharingNew.vue +44 -44
  119. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newNetwork/NewNetwork.vue +283 -283
  120. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newNetwork/NewNetworkNew.vue +124 -124
  121. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newNetwork/location/LocationOld.vue +134 -134
  122. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newNetwork/location/new/New.vue +63 -63
  123. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newNetwork/location/new/table/lib/config/config.ts +95 -95
  124. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newNetwork/macAddress/MacAddress.vue +119 -119
  125. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newNetwork/macAddress/MacAddressNew.vue +69 -69
  126. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newNetwork/macAddress/MacAddressOld.vue +83 -83
  127. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newPciDevice/NewPciDevice.vue +205 -205
  128. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newPciDevice/directPathIo/DirectPathIoNew.vue +66 -66
  129. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newPciDevice/directPathIo/DirectPathIoOld.vue +62 -62
  130. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newPciDevice/dynamicDirectPathIo/DynamicDirectPathIo.vue +31 -31
  131. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newPciDevice/dynamicDirectPathIo/DynamicDirectPathIoNew.vue +84 -84
  132. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newPciDevice/dynamicDirectPathIo/DynamicDirectPathIoOld.vue +76 -76
  133. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newPciDevice/note/Note.vue +15 -15
  134. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newPciDevice/note/NoteNew.vue +42 -42
  135. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newPciDevice/note/NoteOld.vue +30 -30
  136. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newPciDevice/nvidiaGrid/NvidiaGrid.vue +41 -41
  137. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newPciDevice/nvidiaGrid/NvidiaGridNew.vue +81 -81
  138. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newPciDevice/nvidiaGrid/NvidiaGridOld.vue +84 -84
  139. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newUsbController/NewUsbControllerNew.vue +56 -56
  140. package/components/common/vm/actions/common/customizeHardware/virtualHardware/other/Other.vue +16 -16
  141. package/components/common/vm/actions/common/customizeHardware/virtualHardware/other/OtherNew.vue +30 -30
  142. package/components/common/vm/actions/common/customizeHardware/virtualHardware/videoCard/VideoCardNew.vue +104 -104
  143. package/components/common/vm/actions/common/customizeHardware/virtualHardware/videoCard/VideoCardOld.vue +112 -112
  144. package/components/common/vm/actions/common/customizeHardware/virtualHardware/videoCard/totalVideoMemory/TotalVideoMemoryNew.vue +54 -54
  145. package/components/common/vm/actions/common/customizeHardware/vmoptions/Vmoptions.vue +145 -145
  146. package/components/common/vm/actions/common/customizeHardware/vmoptions/VmoptionsNew.vue +102 -102
  147. package/components/common/vm/actions/common/customizeHardware/vmoptions/bootOptions/BootOptionsNew.vue +75 -75
  148. package/components/common/vm/actions/common/customizeHardware/vmoptions/bootOptions/delay/Delay.vue +26 -26
  149. package/components/common/vm/actions/common/customizeHardware/vmoptions/bootOptions/firmware/Firmware.vue +57 -57
  150. package/components/common/vm/actions/common/customizeHardware/vmoptions/bootOptions/firmware/FirmwareNew.vue +42 -42
  151. package/components/common/vm/actions/common/customizeHardware/vmoptions/bootOptions/menu/MenuNew.vue +25 -25
  152. package/components/common/vm/actions/common/customizeHardware/vmoptions/bootOptions/order/Order.vue +171 -171
  153. package/components/common/vm/actions/common/customizeHardware/vmoptions/bootOptions/order/OrderNew.vue +50 -50
  154. package/components/common/vm/actions/common/customizeHardware/vmoptions/generalOptions/GeneralOptionsNew.vue +141 -141
  155. package/components/common/vm/actions/common/customizeHardware/vmoptions/remoteConsoleOptions/New.vue +140 -140
  156. package/components/common/vm/actions/common/customizeHardware/vmoptions/remoteConsoleOptions/copyPaste/CopyPasteNew.vue +30 -30
  157. package/components/common/vm/actions/common/customizeHardware/vmoptions/remoteConsoleOptions/fileTransfer/FileTransferNew.vue +30 -30
  158. package/components/common/vm/actions/common/customizeHardware/vmoptions/remoteConsoleOptions/folderSharing/FolderSharingNew.vue +30 -30
  159. package/components/common/vm/actions/common/customizeHardware/vmoptions/remoteConsoleOptions/keymap/Keymap.vue +32 -32
  160. package/components/common/vm/actions/common/customizeHardware/vmoptions/remoteConsoleOptions/keymap/KeymapNew.vue +39 -39
  161. package/components/common/vm/actions/common/customizeHardware/vmoptions/remoteConsoleOptions/password/Password.vue +103 -103
  162. package/components/common/vm/actions/common/customizeHardware/vmoptions/remoteConsoleOptions/password/PasswordNew.vue +102 -102
  163. package/components/common/vm/actions/common/customizeHardware/vmoptions/remoteConsoleOptions/password/PasswordOld.vue +94 -94
  164. package/components/common/vm/actions/common/customizeHardware/vmoptions/remoteConsoleOptions/usbRedirection/UsbRedirection.vue +28 -28
  165. package/components/common/vm/actions/common/customizeHardware/vmoptions/remoteConsoleOptions/usbRedirection/UsbRedirectionNew.vue +38 -38
  166. package/components/common/vm/actions/common/customizeHardware/vmoptions/remoteConsoleOptions/usbRedirection/UsbRedirectionOld.vue +44 -44
  167. package/components/common/vm/actions/common/select/storage/Storage.vue +130 -130
  168. package/components/common/vm/actions/common/select/storage/StorageOld.vue +129 -129
  169. package/components/common/vm/actions/editSettings/new/Skeleton.vue +88 -88
  170. package/components/common/wizards/datastore/add/lib/config/steps.ts +138 -138
  171. package/components/common/wizards/vm/migrate/Migrate.vue +288 -288
  172. package/composables/productNameLocal.ts +30 -30
  173. package/composables/useAppVersion.ts +21 -21
  174. package/package.json +2 -2
  175. package/plugins/date.ts +233 -233
  176. package/plugins/recursion.ts +311 -311
  177. package/public/spice-console/lib/images/bitmap.js +203 -203
  178. package/public/spice-console/network/spicechannel.js +383 -383
  179. package/store/main/mutations.ts +7 -7
  180. package/store/main/state.ts +7 -7
  181. package/store/tasks/mappers/recentTasks.ts +64 -64
@@ -1,330 +1,330 @@
1
- <template>
2
- <div>
3
- <atoms-modal
4
- :width="props.width"
5
- :height="props.height"
6
- :show="props.show"
7
- :title="localization.common.managePhysicalNetworkAdapters"
8
- :second-title="props.switchName"
9
- :class="[
10
- 'diagram-action__edit',
11
- {
12
- 'is-dark': props.isDarkMode,
13
- },
14
- ]"
15
- @hide="onHideManagePhysicalAdaptersModal"
16
- @submit="onSendManageAdapter"
17
- >
18
- <template #modalBody>
19
- <div class="wizard-content__container">
20
- <div class="wizard-content">
21
- <common-adapter-manager
22
- test-id="manage-physical-adapter"
23
- :is-active="true"
24
- :full-mode="true"
25
- :adapters="props.adapters"
26
- :free-adapters="props.freeAdapters"
27
- :added-adapters="addedAdapters"
28
- :adapter-status="props.adapterStatus"
29
- :is-show-no-connected-active-adapters-modal="
30
- isShowNoConnectedActiveAdaptersModal
31
- "
32
- :is-dark-mode="props.isDarkMode"
33
- :is-show-no-active-adapters-modal="isShowNoActiveAdaptersModal"
34
- @hide-no-connected-active-adapters-modal="
35
- onHideNoConnectedActiveAdaptersModal
36
- "
37
- @hide-no-active-adapters-modal="onHideNoActiveAdaptersModal"
38
- @confirm-no-active-adapters-modal="onConfirmNoActiveAdaptersModal"
39
- @change-added-adapters="onChangeAddedAdapters"
40
- @change-adapter-status="onChangeAdapterStatus"
41
- @get-free-adapters="onGetFreeAdapters"
42
- />
43
- </div>
44
- </div>
45
- <atoms-loader v-show="props.isManageAdaptersModalLoading" />
46
- </template>
47
- </atoms-modal>
48
- </div>
49
- </template>
50
-
51
- <script setup lang="ts">
52
- import type {
53
- UI_I_Localization,
54
- UI_I_ItemsWithTotalCounts,
55
- } from '~/lib/models/interfaces'
56
- import type {
57
- UI_I_Adapter,
58
- UI_I_AdapterStatus,
59
- UI_I_SwitchAdapterItem,
60
- } from '~/components/common/diagramMain/lib/models/interfaces'
61
-
62
- // Props from up
63
- const props = withDefaults(
64
- defineProps<{
65
- switchName: string
66
- show: boolean
67
- viewName: string
68
- width: string
69
- height: string
70
- freeAdapters: UI_I_Adapter[]
71
- adapterStatus: UI_I_AdapterStatus
72
- adapters: UI_I_ItemsWithTotalCounts<UI_I_SwitchAdapterItem>
73
- initialAdapterStatus: UI_I_AdapterStatus
74
- isDarkMode?: boolean
75
- isManageAdaptersModalLoading?: boolean
76
- }>(),
77
- {
78
- switchName: '',
79
- adapterStatus: () => ({
80
- active: [],
81
- standby: [],
82
- unused: [],
83
- }),
84
- isDarkMode: false,
85
- isManageAdaptersModalLoading: false,
86
- }
87
- )
88
-
89
- // UI_I_Localization
90
- const localization = computed<UI_I_Localization>(() => useLocal())
91
-
92
- const addedAdapters = ref<string[]>()
93
-
94
- const onChangeAddedAdapters = (addedAdaptersNew: string[]) => {
95
- addedAdapters.value = addedAdaptersNew
96
- }
97
-
98
- const onChangeAdapterStatus = (adapterStatusNew: UI_I_AdapterStatus) => {
99
- emits('change-adapter-status', adapterStatusNew)
100
- }
101
-
102
- const isShowNoConnectedActiveAdaptersModal = ref(false)
103
- const isShowNoActiveAdaptersModal = ref(false)
104
-
105
- const showNoConnectedActiveAdaptersModal = () => {
106
- isShowNoConnectedActiveAdaptersModal.value = true
107
- }
108
- const onHideNoConnectedActiveAdaptersModal = () => {
109
- isShowNoConnectedActiveAdaptersModal.value = false
110
- }
111
- const showNoActiveAdaptersModal = () => {
112
- isShowNoActiveAdaptersModal.value = true
113
- }
114
- const onHideNoActiveAdaptersModal = () => {
115
- isShowNoActiveAdaptersModal.value = false
116
- }
117
-
118
- const onSendManagePhysicalAdaptersData = (
119
- adapterStatus: UI_I_AdapterStatus,
120
- switchName: string,
121
- hideModal: () => void
122
- ) => {
123
- emits(
124
- 'send-manage-physical-adapters-data',
125
- adapterStatus,
126
- switchName,
127
- hideModal
128
- )
129
- }
130
- const onConfirmNoActiveAdaptersModal = () => {
131
- onSendManagePhysicalAdaptersData(
132
- props.adapterStatus,
133
- props.switchName,
134
- onHideManagePhysicalAdaptersModal
135
- )
136
- onHideNoConnectedActiveAdaptersModal()
137
- onHideNoActiveAdaptersModal()
138
- }
139
-
140
- const onSendManageAdapter = () => {
141
- if (props.adapterStatus.active.length === 0) {
142
- showNoActiveAdaptersModal()
143
- return
144
- }
145
-
146
- const activeAndConnectedAdapters = props.adapterStatus.active.filter(
147
- (adapterName: string) =>
148
- props.adapters.items.find(
149
- (ad: UI_I_SwitchAdapterItem) => ad.name === adapterName
150
- )?.carrier
151
- )
152
- if (activeAndConnectedAdapters.length === 0) {
153
- showNoConnectedActiveAdaptersModal()
154
- return
155
- }
156
-
157
- onSendManagePhysicalAdaptersData(
158
- props.adapterStatus,
159
- props.switchName,
160
- onHideManagePhysicalAdaptersModal
161
- )
162
- }
163
-
164
- // Modal
165
- const emits = defineEmits<{
166
- (event: 'hide'): void
167
- (event: 'get-free-adapters', showModal: () => void): void
168
- (event: 'change-added-adapters', addedAdapters: string[]): void
169
- (event: 'change-adapter-status', adapterStatus: UI_I_AdapterStatus): void
170
- (
171
- event: 'send-manage-physical-adapters-data',
172
- adapterStatus: UI_I_AdapterStatus,
173
- switchName: string,
174
- hideModal: () => void
175
- ): void
176
- }>()
177
-
178
- const onGetFreeAdapters = (showModal: () => void) => {
179
- emits('get-free-adapters', showModal)
180
- }
181
-
182
- const onHideManagePhysicalAdaptersModal = (): void => {
183
- addedAdapters.value = []
184
- emits('change-adapter-status', props.initialAdapterStatus)
185
- emits('hide')
186
- }
187
- </script>
188
-
189
- <style scoped lang="scss">
190
- :deep(.secondary-title) {
191
- font-size: 18px;
192
- font-weight: 200;
193
- }
194
-
195
- :deep(.modal-body-content.modal-body-content__confirmation) {
196
- display: flex;
197
-
198
- .confirm-icon-container {
199
- margin-right: 20px;
200
- }
201
-
202
- .preserve-newlines {
203
- white-space: pre-line;
204
- font-size: 15px;
205
- }
206
- }
207
-
208
- .loader {
209
- position: absolute;
210
- z-index: 1000;
211
- left: 0;
212
- right: 0;
213
- bottom: 0;
214
- top: 0;
215
- display: flex;
216
- align-items: center;
217
- justify-content: center;
218
- background-color: rgba(0, 0, 0, 0.3);
219
-
220
- .spinner {
221
- left: unset;
222
- }
223
- }
224
-
225
- :deep(.table-fixed-height) {
226
- height: 290px;
227
- max-height: 290px;
228
- }
229
-
230
- :deep(.diagram-action__edit.is-dark) {
231
- .property-label-group {
232
- color: var(--main-color-mode2);
233
- }
234
- .flex-property-label-group {
235
- color: var(--main-color-mode2);
236
- }
237
- .flex-property-value-group {
238
- select {
239
- color: #fff;
240
- }
241
- }
242
- .failover-order-master {
243
- .secondary-title label {
244
- color: #fff;
245
- }
246
- }
247
- .k-grid-content {
248
- background-color: var(--modal-bg-color);
249
- }
250
- .vui-action-bar {
251
- background-color: var(--pannel-bg-color);
252
- color: var(--title-color);
253
-
254
- .action-link-container:not(.disabled) {
255
- &:hover {
256
- background-color: #29414e;
257
- border: 1px solid #c7e9ff;
258
- }
259
- }
260
-
261
- svg {
262
- fill: #fff;
263
- }
264
- }
265
-
266
- .k-grid.k-widget .k-grid-content {
267
- border-left: 1px solid #485764;
268
- border-right: 1px solid #485764;
269
- border-top: 1px solid #ddd;
270
- border-bottom: 1px solid #ddd;
271
-
272
- tbody tr {
273
- background-color: var(--modal-bg-color);
274
-
275
- td {
276
- border-bottom: 1px solid #666666;
277
- border-color: #666666;
278
- }
279
-
280
- &:hover {
281
- background-color: #324f61;
282
- color: var(--title-color);
283
-
284
- td {
285
- border-bottom: 1px solid #ffffff;
286
- }
287
- }
288
-
289
- &.k-state-selected {
290
- background-color: #d8e3e9;
291
- box-shadow: 0 1px 1px rgba(0, 0, 0, 0.075) inset;
292
-
293
- td span {
294
- color: #000;
295
- }
296
- }
297
- }
298
- }
299
-
300
- .failover-order-details {
301
- &.relative-container .absolute-container {
302
- background-color: var(--pannel-bg-color);
303
- color: var(--main-color-mode2);
304
-
305
- &:has(.no-items-selected-container) {
306
- background-color: transparent;
307
- }
308
- }
309
-
310
- td span {
311
- color: var(--main-color-mode2);
312
- }
313
- button span {
314
- color: var(--main-color-mode2);
315
-
316
- &:hover:not(.disabled) {
317
- background-color: transparent;
318
- border: 1px solid transparent;
319
- }
320
- }
321
- button.active span {
322
- color: #fff;
323
- }
324
- }
325
-
326
- .select-adapter-info span {
327
- color: var(--main-color-mode2);
328
- }
329
- }
330
- </style>
1
+ <template>
2
+ <div>
3
+ <atoms-modal
4
+ :width="props.width"
5
+ :height="props.height"
6
+ :show="props.show"
7
+ :title="localization.common.managePhysicalNetworkAdapters"
8
+ :second-title="props.switchName"
9
+ :class="[
10
+ 'diagram-action__edit',
11
+ {
12
+ 'is-dark': props.isDarkMode,
13
+ },
14
+ ]"
15
+ @hide="onHideManagePhysicalAdaptersModal"
16
+ @submit="onSendManageAdapter"
17
+ >
18
+ <template #modalBody>
19
+ <div class="wizard-content__container">
20
+ <div class="wizard-content">
21
+ <common-adapter-manager
22
+ test-id="manage-physical-adapter"
23
+ :is-active="true"
24
+ :full-mode="true"
25
+ :adapters="props.adapters"
26
+ :free-adapters="props.freeAdapters"
27
+ :added-adapters="addedAdapters"
28
+ :adapter-status="props.adapterStatus"
29
+ :is-show-no-connected-active-adapters-modal="
30
+ isShowNoConnectedActiveAdaptersModal
31
+ "
32
+ :is-dark-mode="props.isDarkMode"
33
+ :is-show-no-active-adapters-modal="isShowNoActiveAdaptersModal"
34
+ @hide-no-connected-active-adapters-modal="
35
+ onHideNoConnectedActiveAdaptersModal
36
+ "
37
+ @hide-no-active-adapters-modal="onHideNoActiveAdaptersModal"
38
+ @confirm-no-active-adapters-modal="onConfirmNoActiveAdaptersModal"
39
+ @change-added-adapters="onChangeAddedAdapters"
40
+ @change-adapter-status="onChangeAdapterStatus"
41
+ @get-free-adapters="onGetFreeAdapters"
42
+ />
43
+ </div>
44
+ </div>
45
+ <atoms-loader v-show="props.isManageAdaptersModalLoading" />
46
+ </template>
47
+ </atoms-modal>
48
+ </div>
49
+ </template>
50
+
51
+ <script setup lang="ts">
52
+ import type {
53
+ UI_I_Localization,
54
+ UI_I_ItemsWithTotalCounts,
55
+ } from '~/lib/models/interfaces'
56
+ import type {
57
+ UI_I_Adapter,
58
+ UI_I_AdapterStatus,
59
+ UI_I_SwitchAdapterItem,
60
+ } from '~/components/common/diagramMain/lib/models/interfaces'
61
+
62
+ // Props from up
63
+ const props = withDefaults(
64
+ defineProps<{
65
+ switchName: string
66
+ show: boolean
67
+ viewName: string
68
+ width: string
69
+ height: string
70
+ freeAdapters: UI_I_Adapter[]
71
+ adapterStatus: UI_I_AdapterStatus
72
+ adapters: UI_I_ItemsWithTotalCounts<UI_I_SwitchAdapterItem>
73
+ initialAdapterStatus: UI_I_AdapterStatus
74
+ isDarkMode?: boolean
75
+ isManageAdaptersModalLoading?: boolean
76
+ }>(),
77
+ {
78
+ switchName: '',
79
+ adapterStatus: () => ({
80
+ active: [],
81
+ standby: [],
82
+ unused: [],
83
+ }),
84
+ isDarkMode: false,
85
+ isManageAdaptersModalLoading: false,
86
+ }
87
+ )
88
+
89
+ // UI_I_Localization
90
+ const localization = computed<UI_I_Localization>(() => useLocal())
91
+
92
+ const addedAdapters = ref<string[]>()
93
+
94
+ const onChangeAddedAdapters = (addedAdaptersNew: string[]) => {
95
+ addedAdapters.value = addedAdaptersNew
96
+ }
97
+
98
+ const onChangeAdapterStatus = (adapterStatusNew: UI_I_AdapterStatus) => {
99
+ emits('change-adapter-status', adapterStatusNew)
100
+ }
101
+
102
+ const isShowNoConnectedActiveAdaptersModal = ref(false)
103
+ const isShowNoActiveAdaptersModal = ref(false)
104
+
105
+ const showNoConnectedActiveAdaptersModal = () => {
106
+ isShowNoConnectedActiveAdaptersModal.value = true
107
+ }
108
+ const onHideNoConnectedActiveAdaptersModal = () => {
109
+ isShowNoConnectedActiveAdaptersModal.value = false
110
+ }
111
+ const showNoActiveAdaptersModal = () => {
112
+ isShowNoActiveAdaptersModal.value = true
113
+ }
114
+ const onHideNoActiveAdaptersModal = () => {
115
+ isShowNoActiveAdaptersModal.value = false
116
+ }
117
+
118
+ const onSendManagePhysicalAdaptersData = (
119
+ adapterStatus: UI_I_AdapterStatus,
120
+ switchName: string,
121
+ hideModal: () => void
122
+ ) => {
123
+ emits(
124
+ 'send-manage-physical-adapters-data',
125
+ adapterStatus,
126
+ switchName,
127
+ hideModal
128
+ )
129
+ }
130
+ const onConfirmNoActiveAdaptersModal = () => {
131
+ onSendManagePhysicalAdaptersData(
132
+ props.adapterStatus,
133
+ props.switchName,
134
+ onHideManagePhysicalAdaptersModal
135
+ )
136
+ onHideNoConnectedActiveAdaptersModal()
137
+ onHideNoActiveAdaptersModal()
138
+ }
139
+
140
+ const onSendManageAdapter = () => {
141
+ if (props.adapterStatus.active.length === 0) {
142
+ showNoActiveAdaptersModal()
143
+ return
144
+ }
145
+
146
+ const activeAndConnectedAdapters = props.adapterStatus.active.filter(
147
+ (adapterName: string) =>
148
+ props.adapters.items.find(
149
+ (ad: UI_I_SwitchAdapterItem) => ad.name === adapterName
150
+ )?.carrier
151
+ )
152
+ if (activeAndConnectedAdapters.length === 0) {
153
+ showNoConnectedActiveAdaptersModal()
154
+ return
155
+ }
156
+
157
+ onSendManagePhysicalAdaptersData(
158
+ props.adapterStatus,
159
+ props.switchName,
160
+ onHideManagePhysicalAdaptersModal
161
+ )
162
+ }
163
+
164
+ // Modal
165
+ const emits = defineEmits<{
166
+ (event: 'hide'): void
167
+ (event: 'get-free-adapters', showModal: () => void): void
168
+ (event: 'change-added-adapters', addedAdapters: string[]): void
169
+ (event: 'change-adapter-status', adapterStatus: UI_I_AdapterStatus): void
170
+ (
171
+ event: 'send-manage-physical-adapters-data',
172
+ adapterStatus: UI_I_AdapterStatus,
173
+ switchName: string,
174
+ hideModal: () => void
175
+ ): void
176
+ }>()
177
+
178
+ const onGetFreeAdapters = (showModal: () => void) => {
179
+ emits('get-free-adapters', showModal)
180
+ }
181
+
182
+ const onHideManagePhysicalAdaptersModal = (): void => {
183
+ addedAdapters.value = []
184
+ emits('change-adapter-status', props.initialAdapterStatus)
185
+ emits('hide')
186
+ }
187
+ </script>
188
+
189
+ <style scoped lang="scss">
190
+ :deep(.secondary-title) {
191
+ font-size: 18px;
192
+ font-weight: 200;
193
+ }
194
+
195
+ :deep(.modal-body-content.modal-body-content__confirmation) {
196
+ display: flex;
197
+
198
+ .confirm-icon-container {
199
+ margin-right: 20px;
200
+ }
201
+
202
+ .preserve-newlines {
203
+ white-space: pre-line;
204
+ font-size: 15px;
205
+ }
206
+ }
207
+
208
+ .loader {
209
+ position: absolute;
210
+ z-index: 1000;
211
+ left: 0;
212
+ right: 0;
213
+ bottom: 0;
214
+ top: 0;
215
+ display: flex;
216
+ align-items: center;
217
+ justify-content: center;
218
+ background-color: rgba(0, 0, 0, 0.3);
219
+
220
+ .spinner {
221
+ left: unset;
222
+ }
223
+ }
224
+
225
+ :deep(.table-fixed-height) {
226
+ height: 290px;
227
+ max-height: 290px;
228
+ }
229
+
230
+ :deep(.diagram-action__edit.is-dark) {
231
+ .property-label-group {
232
+ color: var(--main-color-mode2);
233
+ }
234
+ .flex-property-label-group {
235
+ color: var(--main-color-mode2);
236
+ }
237
+ .flex-property-value-group {
238
+ select {
239
+ color: #fff;
240
+ }
241
+ }
242
+ .failover-order-master {
243
+ .secondary-title label {
244
+ color: #fff;
245
+ }
246
+ }
247
+ .k-grid-content {
248
+ background-color: var(--modal-bg-color);
249
+ }
250
+ .vui-action-bar {
251
+ background-color: var(--pannel-bg-color);
252
+ color: var(--title-color);
253
+
254
+ .action-link-container:not(.disabled) {
255
+ &:hover {
256
+ background-color: #29414e;
257
+ border: 1px solid #c7e9ff;
258
+ }
259
+ }
260
+
261
+ svg {
262
+ fill: #fff;
263
+ }
264
+ }
265
+
266
+ .k-grid.k-widget .k-grid-content {
267
+ border-left: 1px solid #485764;
268
+ border-right: 1px solid #485764;
269
+ border-top: 1px solid #ddd;
270
+ border-bottom: 1px solid #ddd;
271
+
272
+ tbody tr {
273
+ background-color: var(--modal-bg-color);
274
+
275
+ td {
276
+ border-bottom: 1px solid #666666;
277
+ border-color: #666666;
278
+ }
279
+
280
+ &:hover {
281
+ background-color: #324f61;
282
+ color: var(--title-color);
283
+
284
+ td {
285
+ border-bottom: 1px solid #ffffff;
286
+ }
287
+ }
288
+
289
+ &.k-state-selected {
290
+ background-color: #d8e3e9;
291
+ box-shadow: 0 1px 1px rgba(0, 0, 0, 0.075) inset;
292
+
293
+ td span {
294
+ color: #000;
295
+ }
296
+ }
297
+ }
298
+ }
299
+
300
+ .failover-order-details {
301
+ &.relative-container .absolute-container {
302
+ background-color: var(--pannel-bg-color);
303
+ color: var(--main-color-mode2);
304
+
305
+ &:has(.no-items-selected-container) {
306
+ background-color: transparent;
307
+ }
308
+ }
309
+
310
+ td span {
311
+ color: var(--main-color-mode2);
312
+ }
313
+ button span {
314
+ color: var(--main-color-mode2);
315
+
316
+ &:hover:not(.disabled) {
317
+ background-color: transparent;
318
+ border: 1px solid transparent;
319
+ }
320
+ }
321
+ button.active span {
322
+ color: #fff;
323
+ }
324
+ }
325
+
326
+ .select-adapter-info span {
327
+ color: var(--main-color-mode2);
328
+ }
329
+ }
330
+ </style>