bfg-common 1.5.380 → 1.5.381

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 (146) hide show
  1. package/CODE_STYLE.md +109 -109
  2. package/assets/img/icons/icons-sprite-dark-3.svg +227 -227
  3. package/assets/img/icons/icons-sprite-dark-5.svg +488 -488
  4. package/assets/img/icons/icons-sprite-light-3.svg +227 -227
  5. package/assets/img/icons/icons-sprite-light-5.svg +488 -488
  6. package/assets/localization/local_be.json +4 -6
  7. package/assets/localization/local_en.json +4 -6
  8. package/assets/localization/local_hy.json +4 -6
  9. package/assets/localization/local_kk.json +4 -6
  10. package/assets/localization/local_ru.json +4 -6
  11. package/assets/localization/local_zh.json +4 -6
  12. package/components/atoms/TheIcon3.vue +50 -50
  13. package/components/atoms/collapse/CollapseNav.vue +170 -170
  14. package/components/atoms/collapse/CollapseNavItem.vue +226 -226
  15. package/components/atoms/nav/NavBar.vue +147 -147
  16. package/components/atoms/perPage/PerPage.vue +58 -58
  17. package/components/atoms/table/dataGrid/DataGrid.vue +1717 -1717
  18. package/components/atoms/table/dataGrid/lib/config/settingsTable.ts +94 -94
  19. package/components/atoms/table/dataGrid/lib/utils/export.ts +16 -16
  20. package/components/atoms/tabs/VerticalTabs.vue +105 -105
  21. package/components/common/backup/storage/actions/add/lib/config/steps.ts +168 -168
  22. package/components/common/backup/storage/actions/add/steps/hostAccessibility/HostAccessibility.vue +52 -52
  23. package/components/common/backup/storage/actions/add/steps/readyComplete/ReadyComplete.vue +45 -45
  24. package/components/common/backup/storage/actions/delete/Delete.vue +65 -65
  25. package/components/common/browse/blocks/Container.vue +234 -234
  26. package/components/common/browse/blocks/contents/filesNew/Skeleton.vue +18 -18
  27. package/components/common/context/lib/models/interfaces.ts +33 -33
  28. package/components/common/diagramMain/modals/lib/config/networkModal.ts +398 -398
  29. package/components/common/diagramMain/network/Network.vue +141 -141
  30. package/components/common/layout/theHeader/helpMenu/About.vue +82 -82
  31. package/components/common/layout/theHeader/userMenu/modals/preferences/view/ViewOld.vue +112 -112
  32. package/components/common/monitor/overview/OverviewOld.vue +139 -139
  33. package/components/common/pages/home/headline/Headline.vue +45 -45
  34. package/components/common/pages/home/headline/HeadlineOld.vue +42 -42
  35. package/components/common/pages/home/lib/models/interfaces.ts +48 -48
  36. package/components/common/pages/home/widgets/Widgets.vue +49 -49
  37. package/components/common/pages/home/widgets/WidgetsNew.vue +88 -88
  38. package/components/common/pages/home/widgets/WidgetsOld.vue +36 -36
  39. package/components/common/pages/home/widgets/hosts/Hosts.vue +27 -27
  40. package/components/common/pages/home/widgets/hosts/lib/config/items.ts +23 -23
  41. package/components/common/pages/home/widgets/vms/Vms.vue +26 -26
  42. package/components/common/pages/home/widgets/vms/VmsOld.vue +35 -35
  43. package/components/common/pages/home/widgets/vms/lib/config/items.ts +19 -19
  44. package/components/common/pages/packages/Packages.vue +208 -208
  45. package/components/common/pages/shortcuts/block/BlockOld.vue +68 -68
  46. package/components/common/readyToComplete/New.vue +129 -129
  47. package/components/common/readyToComplete/ReadyToComplete.vue +17 -17
  48. package/components/common/recursionTree/RecursionTree.vue +223 -223
  49. package/components/common/select/button/ButtonDropdown.vue +112 -112
  50. package/components/common/spiceConsole/Drawer.vue +381 -377
  51. package/components/common/spiceConsole/SpiceConsole.vue +127 -127
  52. package/components/common/spiceConsole/lib/models/interfaces.ts +5 -5
  53. package/components/common/tools/Actions.vue +207 -207
  54. package/components/common/vm/actions/add/Old.vue +388 -388
  55. package/components/common/vm/actions/add/folderTreeView/FolderTreeView.vue +72 -72
  56. package/components/common/vm/actions/add/folderTreeView/New.vue +40 -40
  57. package/components/common/vm/actions/add/folderTreeView/Old.vue +50 -50
  58. package/components/common/vm/actions/clone/Clone.vue +823 -823
  59. package/components/common/vm/actions/clone/lib/config/steps.ts +291 -291
  60. package/components/common/vm/actions/clone/toTemplate/lib/config/steps.ts +116 -116
  61. package/components/common/vm/actions/common/customizeHardware/virtualHardware/VirtualHardwareOld.vue +321 -321
  62. package/components/common/vm/actions/common/customizeHardware/virtualHardware/browseView/BrowseView.vue +227 -227
  63. package/components/common/vm/actions/common/customizeHardware/virtualHardware/bus/Bus.vue +100 -100
  64. package/components/common/vm/actions/common/customizeHardware/virtualHardware/cdDvdDrive/CdDvdDrive.vue +232 -232
  65. package/components/common/vm/actions/common/customizeHardware/virtualHardware/cdDvdDrive/CdDvdDriveOld.vue +168 -168
  66. package/components/common/vm/actions/common/customizeHardware/virtualHardware/cdDvdDrive/media/Media.vue +25 -25
  67. package/components/common/vm/actions/common/customizeHardware/virtualHardware/cdDvdDrive/media/MediaNew.vue +78 -78
  68. package/components/common/vm/actions/common/customizeHardware/virtualHardware/cdDvdDrive/media/MediaOld.vue +50 -50
  69. package/components/common/vm/actions/common/customizeHardware/virtualHardware/cpu/shares/Shares.vue +140 -140
  70. package/components/common/vm/actions/common/customizeHardware/virtualHardware/cpu/shares/lib/config/options.ts +28 -28
  71. package/components/common/vm/actions/common/customizeHardware/virtualHardware/cpu/tooltip/TooltipNew.vue +154 -154
  72. package/components/common/vm/actions/common/customizeHardware/virtualHardware/lib/config/dropdownItems.ts +155 -155
  73. package/components/common/vm/actions/common/customizeHardware/virtualHardware/limit/Limit.vue +220 -220
  74. package/components/common/vm/actions/common/customizeHardware/virtualHardware/memory/Memory.vue +307 -307
  75. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newHardDisk/NewHardDisk.vue +385 -385
  76. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newHardDisk/location/Location.vue +154 -154
  77. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newHardDisk/location/LocationOld.vue +85 -85
  78. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newNetwork/NewNetwork.vue +288 -288
  79. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newNetwork/location/new/table/lib/config/config.ts +94 -94
  80. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newNetwork/macAddress/MacAddress.vue +119 -119
  81. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newPciDevice/NewPciDevice.vue +205 -205
  82. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newPciDevice/directPathIo/DirectPathIoNew.vue +66 -66
  83. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newPciDevice/directPathIo/DirectPathIoOld.vue +62 -62
  84. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newPciDevice/dynamicDirectPathIo/DynamicDirectPathIo.vue +31 -31
  85. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newPciDevice/dynamicDirectPathIo/DynamicDirectPathIoOld.vue +76 -76
  86. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newPciDevice/note/Note.vue +15 -15
  87. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newPciDevice/note/NoteNew.vue +42 -42
  88. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newPciDevice/note/NoteOld.vue +30 -30
  89. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newPciDevice/nvidiaGrid/NvidiaGridOld.vue +84 -84
  90. package/components/common/vm/actions/common/customizeHardware/virtualHardware/other/Other.vue +16 -16
  91. package/components/common/vm/actions/common/customizeHardware/virtualHardware/videoCard/VideoCard.vue +154 -154
  92. package/components/common/vm/actions/common/customizeHardware/virtualHardware/videoCard/numberDisplays/NumberDisplays.vue +53 -53
  93. package/components/common/vm/actions/common/customizeHardware/vmoptions/Vmoptions.vue +155 -155
  94. package/components/common/vm/actions/common/customizeHardware/vmoptions/VmoptionsNew.vue +130 -130
  95. package/components/common/vm/actions/common/customizeHardware/vmoptions/VmoptionsOld.vue +113 -113
  96. package/components/common/vm/actions/common/customizeHardware/vmoptions/bootOptions/delay/Delay.vue +32 -32
  97. package/components/common/vm/actions/common/customizeHardware/vmoptions/bootOptions/firmware/Firmware.vue +60 -60
  98. package/components/common/vm/actions/common/customizeHardware/vmoptions/bootOptions/order/Order.vue +174 -174
  99. package/components/common/vm/actions/common/customizeHardware/vmoptions/generalOptions/GeneralOptions.vue +95 -95
  100. package/components/common/vm/actions/common/customizeHardware/vmoptions/generalOptions/GeneralOptionsOld.vue +155 -155
  101. package/components/common/vm/actions/common/customizeHardware/vmoptions/remoteConsoleOptions/keymap/Keymap.vue +32 -32
  102. package/components/common/vm/actions/common/customizeHardware/vmoptions/remoteConsoleOptions/keymap/KeymapOld.vue +44 -44
  103. package/components/common/vm/actions/common/customizeHardware/vmoptions/remoteConsoleOptions/password/Password.vue +103 -103
  104. package/components/common/vm/actions/common/customizeHardware/vmoptions/remoteConsoleOptions/usbRedirection/UsbRedirection.vue +28 -28
  105. package/components/common/vm/actions/common/customizeHardware/vmoptions/remoteConsoleOptions/usbRedirection/UsbRedirectionOld.vue +44 -44
  106. package/components/common/vm/actions/common/select/compatibility/Old.vue +107 -107
  107. package/components/common/vm/actions/common/select/computeResource/ComputeResource.vue +143 -143
  108. package/components/common/vm/actions/common/select/computeResource/New.vue +184 -184
  109. package/components/common/vm/actions/common/select/computeResource/treeView/TreeView.vue +131 -131
  110. package/components/common/vm/actions/common/select/createType/CreateType.vue +38 -38
  111. package/components/common/vm/actions/common/select/createType/lib/config/items.ts +48 -48
  112. package/components/common/vm/actions/common/select/createType/lib/models/interfaces.ts +5 -5
  113. package/components/common/vm/actions/common/select/name/Name.vue +174 -174
  114. package/components/common/vm/actions/common/select/os/Old.vue +152 -152
  115. package/components/common/vm/actions/common/select/os/Os.vue +139 -139
  116. package/components/common/vm/actions/common/select/storage/Storage.vue +155 -155
  117. package/components/common/vm/actions/common/select/storage/new/New.vue +300 -300
  118. package/components/common/vm/actions/common/select/storage/new/lib/models/interfaces.ts +5 -5
  119. package/components/common/vm/actions/common/select/storage/new/lib/utils/utils.ts +21 -21
  120. package/components/common/vm/actions/editSettings/EditSettings.vue +242 -242
  121. package/components/common/vm/actions/editSettings/new/Skeleton.vue +88 -88
  122. package/components/common/vmt/actions/add/lib/models/interfaces.ts +23 -23
  123. package/components/common/wizards/network/add/steps/SelectConnectionType.vue +104 -104
  124. package/components/common/wizards/network/add/steps/SelectedTargetDevice.vue +467 -467
  125. package/components/common/wizards/vm/migrate/Migrate.vue +349 -349
  126. package/components/common/wizards/vm/migrate/lib/config/constructDataReady.ts +220 -220
  127. package/components/common/wizards/vm/migrate/lib/config/steps.ts +157 -157
  128. package/components/common/wizards/vm/migrate/lib/validations.ts +68 -68
  129. package/components/common/wizards/vm/migrate/select/network/Network.vue +103 -103
  130. package/components/common/wizards/vm/migrate/select/network/table/network/lib/config/advancedTable.ts +91 -91
  131. package/components/common/wizards/vm/migrate/select/type/lib/config/typeOptions.ts +45 -45
  132. package/composables/productNameLocal.ts +30 -30
  133. package/composables/useAppVersion.ts +21 -21
  134. package/lib/models/interfaces.ts +0 -1
  135. package/lib/models/types.ts +0 -1
  136. package/package.json +1 -1
  137. package/plugins/console.ts +22 -0
  138. package/plugins/date.ts +233 -233
  139. package/plugins/panelStates.ts +70 -70
  140. package/plugins/text.ts +59 -59
  141. package/public/spice-console/lib/images/bitmap.js +203 -203
  142. package/public/spice-console/network/spicechannel.js +390 -387
  143. package/public/spice-console-minify/run.min.js +1 -1
  144. package/store/main/mutations.ts +7 -7
  145. package/store/main/state.ts +7 -7
  146. package/store/tasks/mappers/recentTasks.ts +64 -64
@@ -1,398 +1,398 @@
1
- import type { UI_I_Localization } from '~/lib/models/interfaces'
2
- import type {
3
- UI_I_ModalsInitialData,
4
- UI_I_NetworkSummaryPortletListItem,
5
- UI_I_OverrideValue,
6
- UI_I_TeamingAndFailoverTemplate,
7
- } from '~/components/common/diagramMain/lib/models/interfaces'
8
- import {
9
- UI_E_IYNOption,
10
- UI_E_IBSTLoadBalancingMode,
11
- UI_E_ICBLinkDetectionMode,
12
- } from '~/components/common/diagramMain/lib/models/enums'
13
-
14
- export const networkViewSettingsModalTabsFunc = (
15
- localization: UI_I_Localization
16
- ) => [
17
- {
18
- text: localization.common.all,
19
- value: 0,
20
- },
21
- {
22
- text: localization.common.properties,
23
- value: 1,
24
- },
25
- {
26
- text: localization.common.policies,
27
- value: 2,
28
- },
29
- ]
30
-
31
- const findInitialValue = (
32
- source: UI_I_NetworkSummaryPortletListItem[] | undefined,
33
- id: string
34
- ): UI_I_OverrideValue =>
35
- source?.find(
36
- (sourceItem: UI_I_NetworkSummaryPortletListItem) => sourceItem.id === id
37
- )?.initialValue as UI_I_OverrideValue
38
-
39
- export const networkViewSettingsFunc = (
40
- localization: UI_I_Localization,
41
- initialData: UI_I_ModalsInitialData
42
- ) => {
43
- const loadBalancing =
44
- (
45
- initialData.nicTeamingPolicy as UI_I_NetworkSummaryPortletListItem<UI_E_IBSTLoadBalancingMode>[]
46
- )?.find(
47
- (
48
- teaming: UI_I_NetworkSummaryPortletListItem<UI_E_IBSTLoadBalancingMode>
49
- ) => teaming.id === 'mode'
50
- )?.initialValue?.value || UI_E_IBSTLoadBalancingMode.BACKUP
51
-
52
- let loadBalancingValue: string
53
-
54
- switch (loadBalancing) {
55
- case UI_E_IBSTLoadBalancingMode.BACKUP:
56
- loadBalancingValue = localization.common.useExplicitFailoverOrder
57
- break
58
- case UI_E_IBSTLoadBalancingMode.SLB:
59
- loadBalancingValue = localization.common.routeBasedSourceMacHash
60
- break
61
- case UI_E_IBSTLoadBalancingMode.TCP:
62
- loadBalancingValue = localization.common.routeBasedIpHash
63
- break
64
- default:
65
- loadBalancingValue = '--'
66
- }
67
-
68
- const promiscuousModeFlag: boolean =
69
- (
70
- initialData.securityPolicy as UI_I_NetworkSummaryPortletListItem<UI_E_IYNOption>[]
71
- )?.find(
72
- (sec: UI_I_NetworkSummaryPortletListItem<UI_E_IYNOption>) =>
73
- sec.id === 'promiscuous_mode'
74
- )?.initialValue?.value === UI_E_IYNOption.YES
75
-
76
- const macAddressChanges: boolean =
77
- (
78
- initialData.securityPolicy as UI_I_NetworkSummaryPortletListItem<UI_E_IYNOption>[]
79
- )?.find(
80
- (sec: UI_I_NetworkSummaryPortletListItem<UI_E_IYNOption>) =>
81
- sec.id === 'mac_change'
82
- )?.initialValue?.value === UI_E_IYNOption.YES
83
-
84
- const forgedTransmits: boolean =
85
- (
86
- initialData.securityPolicy as UI_I_NetworkSummaryPortletListItem<UI_E_IYNOption>[]
87
- )?.find(
88
- (sec: UI_I_NetworkSummaryPortletListItem<UI_E_IYNOption>) =>
89
- sec.id === 'forged_transmits'
90
- )?.initialValue?.value === UI_E_IYNOption.YES
91
-
92
- const notifySwitches: boolean =
93
- (
94
- initialData.nicTeamingPolicy as UI_I_NetworkSummaryPortletListItem<UI_E_IYNOption>[]
95
- )?.find(
96
- (teaming: UI_I_NetworkSummaryPortletListItem<UI_E_IYNOption>) =>
97
- teaming.id === 'notify_switches'
98
- )?.initialValue?.value === UI_E_IYNOption.YES
99
-
100
- const failback: boolean =
101
- (
102
- initialData.nicTeamingPolicy as UI_I_NetworkSummaryPortletListItem<UI_E_IYNOption>[]
103
- )?.find(
104
- (teaming: UI_I_NetworkSummaryPortletListItem<UI_E_IYNOption>) =>
105
- teaming.id === 'failback'
106
- )?.initialValue?.value === UI_E_IYNOption.YES
107
-
108
- return [
109
- {
110
- title: localization.common.properties,
111
- id: 1,
112
- type: 1,
113
- rows: [
114
- {
115
- name: localization.common.networkLabel,
116
- value: initialData.networkLabel,
117
- },
118
- {
119
- name: localization.common.vlanId,
120
- value: initialData.vlanId,
121
- },
122
- ],
123
- },
124
- {
125
- title: localization.common.security,
126
- id: 2,
127
- type: 2,
128
- rows: [
129
- {
130
- name: localization.common.promiscuousMode,
131
- value: promiscuousModeFlag
132
- ? localization.common.accept
133
- : localization.common.reject,
134
- color: promiscuousModeFlag,
135
- status: true,
136
- },
137
- {
138
- name: localization.common.macAddressChanges,
139
- value: macAddressChanges
140
- ? localization.common.accept
141
- : localization.common.reject,
142
- color: macAddressChanges,
143
- status: true,
144
- },
145
- {
146
- name: localization.common.forgedTransmits,
147
- value: forgedTransmits
148
- ? localization.common.accept
149
- : localization.common.reject,
150
- color: forgedTransmits,
151
- status: true,
152
- },
153
- ],
154
- },
155
- {
156
- title: localization.common.trafficShaping,
157
- id: 3,
158
- type: 2,
159
- rows: [
160
- {
161
- name: localization.common.averageBandwidth,
162
- value: initialData.shapingPolicy?.[0].initialValue.value
163
- ? `${initialData.average_bw} ${localization.common.kbitS}`
164
- : '--',
165
- },
166
- {
167
- name: localization.common.peakBandwidth,
168
- value: initialData.shapingPolicy?.[0].initialValue.value
169
- ? `${initialData.peak_bw} ${localization.common.kbitS}`
170
- : '--',
171
- },
172
- {
173
- name: localization.common.burstSize,
174
- value: initialData.shapingPolicy?.[0].initialValue.value
175
- ? `${initialData.burst_size} ${localization.common.kb}`
176
- : '--',
177
- },
178
- ],
179
- },
180
- {
181
- title: localization.common.teamingAndFailover,
182
- id: 4,
183
- type: 2,
184
- rows: [
185
- {
186
- name: localization.common.loadBalancing,
187
- value: loadBalancingValue,
188
- },
189
- {
190
- name: localization.common.networkFailureDetection,
191
- value:
192
- (
193
- initialData.nicTeamingPolicy as UI_I_NetworkSummaryPortletListItem<UI_E_ICBLinkDetectionMode>[]
194
- )?.find(
195
- (
196
- teaming: UI_I_NetworkSummaryPortletListItem<UI_E_ICBLinkDetectionMode>
197
- ) => teaming.id === 'link_detect'
198
- )?.initialValue?.value === 1
199
- ? localization.common.linkStatusOnly
200
- : localization.common.beaconProbing,
201
- },
202
- {
203
- name: localization.common.notifySwitches,
204
- value: notifySwitches
205
- ? localization.common.yes
206
- : localization.common.no,
207
- color: notifySwitches,
208
- status: true,
209
- },
210
- {
211
- name: localization.common.failback,
212
- value: failback ? localization.common.yes : localization.common.no,
213
- color: failback,
214
- status: true,
215
- },
216
- {
217
- name: localization.networks.activeAdapters,
218
- value: initialData.activeAdapters,
219
- },
220
- {
221
- name: localization.common.standbyAdapters,
222
- value: initialData.standbyAdapters,
223
- },
224
- {
225
- name: localization.common.unusedAdapters,
226
- value: initialData.unusedAdapters,
227
- },
228
- ],
229
- },
230
- ]
231
- }
232
-
233
- export const networkEditSettingsTabsFunc = (
234
- localization: UI_I_Localization
235
- ) => [
236
- {
237
- value: '1',
238
- text: localization.common.properties,
239
- },
240
- {
241
- value: '2',
242
- text: localization.common.security,
243
- },
244
- {
245
- value: '3',
246
- text: localization.common.trafficShaping,
247
- },
248
- {
249
- value: '4',
250
- text: localization.common.teamingAndFailover,
251
- },
252
- ]
253
-
254
- export const networkPopupFieldsFunc = (
255
- localization: UI_I_Localization,
256
- networkType: string,
257
- testId: string,
258
- state: number,
259
- inPortlet = false
260
- ) => {
261
- const view = {
262
- text: localization.common.viewSettings,
263
- value: 'network-view-settings',
264
- testId: `${testId}-view`,
265
- }
266
- const edit = {
267
- text: localization.common.editSettings,
268
- value: 'network-edit-settings',
269
- testId: `${testId}-edit`,
270
- permission:
271
- networkType === '1' ? 'Networks.UpdateSysx' : 'Networks.UpdatePortGroup',
272
- }
273
- const remove = {
274
- text: localization.common.remove,
275
- value: 'network-port-remove',
276
- testId: `${testId}-remove`,
277
- permission:
278
- networkType === '1' ? 'Networks.RemoveSysx' : 'Networks.RemovePortGroup',
279
- // networkType === '1' ? 'network-vkernel-remove' : 'network-port-remove',
280
- }
281
-
282
- const inPortletConfig = [view]
283
-
284
- const notInPortletConfig = [view, edit, { separate: true }, remove]
285
- const notInPortletErrorConfig = [remove]
286
-
287
- if (inPortlet) {
288
- return state === 3 ? [] : inPortletConfig
289
- } else {
290
- return state === 3 ? notInPortletErrorConfig : notInPortletConfig
291
- }
292
- }
293
-
294
- export const networkPopupFieldsNewFunc = (
295
- localization: UI_I_Localization,
296
- networkType: string,
297
- testId: string,
298
- state: number,
299
- inPortlet = false
300
- ) => {
301
- const view = {
302
- text: localization.common.viewSettings,
303
- value: 'network-view-settings',
304
- iconName: 'password-hide',
305
- testId: `${testId}-view`,
306
- }
307
- const edit = {
308
- text: localization.common.editSettings,
309
- value: 'network-edit-settings',
310
- iconName: 'edit',
311
- testId: `${testId}-edit`,
312
- permission:
313
- networkType === '1' ? 'Networks.UpdateSysx' : 'Networks.UpdatePortGroup',
314
- }
315
- const remove = {
316
- text: localization.common.remove,
317
- value: 'network-port-remove',
318
- iconName: 'delete',
319
- iconColor: '#ea3223',
320
- textColor: '#ea3223',
321
- testId: `${testId}-remove`,
322
- permission:
323
- networkType === '1' ? 'Networks.RemoveSysx' : 'Networks.RemovePortGroup',
324
- // networkType === '1' ? 'network-vkernel-remove' : 'network-port-remove',
325
- }
326
-
327
- const inPortletConfig = [view]
328
-
329
- const notInPortletConfig = [view, edit, remove]
330
- const notInPortletErrorConfig = [remove]
331
-
332
- if (inPortlet) {
333
- return state === 3 ? [] : inPortletConfig
334
- } else {
335
- return state === 3 ? notInPortletErrorConfig : notInPortletConfig
336
- }
337
- }
338
-
339
- export const teamingAndFailoverTemplateMakerFunc = (
340
- localization: UI_I_Localization
341
- ): UI_I_TeamingAndFailoverTemplate[] => [
342
- {
343
- key: 'loadBalancing',
344
- testId: 'loadBalancing',
345
- options: [
346
- {
347
- value: 3,
348
- text: localization.common.routeBasedIpHash,
349
- },
350
- {
351
- value: 2,
352
- text: localization.common.routeBasedSourceMacHash,
353
- },
354
- {
355
- value: 1,
356
- text: localization.common.useExplicitFailoverOrder,
357
- },
358
- ],
359
- },
360
- {
361
- key: 'networkFailureDetection',
362
- testId: 'networkFailureDetection',
363
- options: [
364
- {
365
- value: 1,
366
- text: localization.common.linkStatusOnly,
367
- },
368
- ],
369
- },
370
- {
371
- key: 'notifySwitches',
372
- testId: 'notifySwitches',
373
- options: [
374
- {
375
- value: 2,
376
- text: localization.common.no,
377
- },
378
- {
379
- value: 1,
380
- text: localization.common.yes,
381
- },
382
- ],
383
- },
384
- {
385
- key: 'failback',
386
- testId: 'failback',
387
- options: [
388
- {
389
- value: 2,
390
- text: localization.common.no,
391
- },
392
- {
393
- value: 1,
394
- text: localization.common.yes,
395
- },
396
- ],
397
- },
398
- ]
1
+ import type { UI_I_Localization } from '~/lib/models/interfaces'
2
+ import type {
3
+ UI_I_ModalsInitialData,
4
+ UI_I_NetworkSummaryPortletListItem,
5
+ UI_I_OverrideValue,
6
+ UI_I_TeamingAndFailoverTemplate,
7
+ } from '~/components/common/diagramMain/lib/models/interfaces'
8
+ import {
9
+ UI_E_IYNOption,
10
+ UI_E_IBSTLoadBalancingMode,
11
+ UI_E_ICBLinkDetectionMode,
12
+ } from '~/components/common/diagramMain/lib/models/enums'
13
+
14
+ export const networkViewSettingsModalTabsFunc = (
15
+ localization: UI_I_Localization
16
+ ) => [
17
+ {
18
+ text: localization.common.all,
19
+ value: 0,
20
+ },
21
+ {
22
+ text: localization.common.properties,
23
+ value: 1,
24
+ },
25
+ {
26
+ text: localization.common.policies,
27
+ value: 2,
28
+ },
29
+ ]
30
+
31
+ const findInitialValue = (
32
+ source: UI_I_NetworkSummaryPortletListItem[] | undefined,
33
+ id: string
34
+ ): UI_I_OverrideValue =>
35
+ source?.find(
36
+ (sourceItem: UI_I_NetworkSummaryPortletListItem) => sourceItem.id === id
37
+ )?.initialValue as UI_I_OverrideValue
38
+
39
+ export const networkViewSettingsFunc = (
40
+ localization: UI_I_Localization,
41
+ initialData: UI_I_ModalsInitialData
42
+ ) => {
43
+ const loadBalancing =
44
+ (
45
+ initialData.nicTeamingPolicy as UI_I_NetworkSummaryPortletListItem<UI_E_IBSTLoadBalancingMode>[]
46
+ )?.find(
47
+ (
48
+ teaming: UI_I_NetworkSummaryPortletListItem<UI_E_IBSTLoadBalancingMode>
49
+ ) => teaming.id === 'mode'
50
+ )?.initialValue?.value || UI_E_IBSTLoadBalancingMode.BACKUP
51
+
52
+ let loadBalancingValue: string
53
+
54
+ switch (loadBalancing) {
55
+ case UI_E_IBSTLoadBalancingMode.BACKUP:
56
+ loadBalancingValue = localization.common.useExplicitFailoverOrder
57
+ break
58
+ case UI_E_IBSTLoadBalancingMode.SLB:
59
+ loadBalancingValue = localization.common.routeBasedSourceMacHash
60
+ break
61
+ case UI_E_IBSTLoadBalancingMode.TCP:
62
+ loadBalancingValue = localization.common.routeBasedIpHash
63
+ break
64
+ default:
65
+ loadBalancingValue = '--'
66
+ }
67
+
68
+ const promiscuousModeFlag: boolean =
69
+ (
70
+ initialData.securityPolicy as UI_I_NetworkSummaryPortletListItem<UI_E_IYNOption>[]
71
+ )?.find(
72
+ (sec: UI_I_NetworkSummaryPortletListItem<UI_E_IYNOption>) =>
73
+ sec.id === 'promiscuous_mode'
74
+ )?.initialValue?.value === UI_E_IYNOption.YES
75
+
76
+ const macAddressChanges: boolean =
77
+ (
78
+ initialData.securityPolicy as UI_I_NetworkSummaryPortletListItem<UI_E_IYNOption>[]
79
+ )?.find(
80
+ (sec: UI_I_NetworkSummaryPortletListItem<UI_E_IYNOption>) =>
81
+ sec.id === 'mac_change'
82
+ )?.initialValue?.value === UI_E_IYNOption.YES
83
+
84
+ const forgedTransmits: boolean =
85
+ (
86
+ initialData.securityPolicy as UI_I_NetworkSummaryPortletListItem<UI_E_IYNOption>[]
87
+ )?.find(
88
+ (sec: UI_I_NetworkSummaryPortletListItem<UI_E_IYNOption>) =>
89
+ sec.id === 'forged_transmits'
90
+ )?.initialValue?.value === UI_E_IYNOption.YES
91
+
92
+ const notifySwitches: boolean =
93
+ (
94
+ initialData.nicTeamingPolicy as UI_I_NetworkSummaryPortletListItem<UI_E_IYNOption>[]
95
+ )?.find(
96
+ (teaming: UI_I_NetworkSummaryPortletListItem<UI_E_IYNOption>) =>
97
+ teaming.id === 'notify_switches'
98
+ )?.initialValue?.value === UI_E_IYNOption.YES
99
+
100
+ const failback: boolean =
101
+ (
102
+ initialData.nicTeamingPolicy as UI_I_NetworkSummaryPortletListItem<UI_E_IYNOption>[]
103
+ )?.find(
104
+ (teaming: UI_I_NetworkSummaryPortletListItem<UI_E_IYNOption>) =>
105
+ teaming.id === 'failback'
106
+ )?.initialValue?.value === UI_E_IYNOption.YES
107
+
108
+ return [
109
+ {
110
+ title: localization.common.properties,
111
+ id: 1,
112
+ type: 1,
113
+ rows: [
114
+ {
115
+ name: localization.common.networkLabel,
116
+ value: initialData.networkLabel,
117
+ },
118
+ {
119
+ name: localization.common.vlanId,
120
+ value: initialData.vlanId,
121
+ },
122
+ ],
123
+ },
124
+ {
125
+ title: localization.common.security,
126
+ id: 2,
127
+ type: 2,
128
+ rows: [
129
+ {
130
+ name: localization.common.promiscuousMode,
131
+ value: promiscuousModeFlag
132
+ ? localization.common.accept
133
+ : localization.common.reject,
134
+ color: promiscuousModeFlag,
135
+ status: true,
136
+ },
137
+ {
138
+ name: localization.common.macAddressChanges,
139
+ value: macAddressChanges
140
+ ? localization.common.accept
141
+ : localization.common.reject,
142
+ color: macAddressChanges,
143
+ status: true,
144
+ },
145
+ {
146
+ name: localization.common.forgedTransmits,
147
+ value: forgedTransmits
148
+ ? localization.common.accept
149
+ : localization.common.reject,
150
+ color: forgedTransmits,
151
+ status: true,
152
+ },
153
+ ],
154
+ },
155
+ {
156
+ title: localization.common.trafficShaping,
157
+ id: 3,
158
+ type: 2,
159
+ rows: [
160
+ {
161
+ name: localization.common.averageBandwidth,
162
+ value: initialData.shapingPolicy?.[0].initialValue.value
163
+ ? `${initialData.average_bw} ${localization.common.kbitS}`
164
+ : '--',
165
+ },
166
+ {
167
+ name: localization.common.peakBandwidth,
168
+ value: initialData.shapingPolicy?.[0].initialValue.value
169
+ ? `${initialData.peak_bw} ${localization.common.kbitS}`
170
+ : '--',
171
+ },
172
+ {
173
+ name: localization.common.burstSize,
174
+ value: initialData.shapingPolicy?.[0].initialValue.value
175
+ ? `${initialData.burst_size} ${localization.common.kb}`
176
+ : '--',
177
+ },
178
+ ],
179
+ },
180
+ {
181
+ title: localization.common.teamingAndFailover,
182
+ id: 4,
183
+ type: 2,
184
+ rows: [
185
+ {
186
+ name: localization.common.loadBalancing,
187
+ value: loadBalancingValue,
188
+ },
189
+ {
190
+ name: localization.common.networkFailureDetection,
191
+ value:
192
+ (
193
+ initialData.nicTeamingPolicy as UI_I_NetworkSummaryPortletListItem<UI_E_ICBLinkDetectionMode>[]
194
+ )?.find(
195
+ (
196
+ teaming: UI_I_NetworkSummaryPortletListItem<UI_E_ICBLinkDetectionMode>
197
+ ) => teaming.id === 'link_detect'
198
+ )?.initialValue?.value === 1
199
+ ? localization.common.linkStatusOnly
200
+ : localization.common.beaconProbing,
201
+ },
202
+ {
203
+ name: localization.common.notifySwitches,
204
+ value: notifySwitches
205
+ ? localization.common.yes
206
+ : localization.common.no,
207
+ color: notifySwitches,
208
+ status: true,
209
+ },
210
+ {
211
+ name: localization.common.failback,
212
+ value: failback ? localization.common.yes : localization.common.no,
213
+ color: failback,
214
+ status: true,
215
+ },
216
+ {
217
+ name: localization.networks.activeAdapters,
218
+ value: initialData.activeAdapters,
219
+ },
220
+ {
221
+ name: localization.common.standbyAdapters,
222
+ value: initialData.standbyAdapters,
223
+ },
224
+ {
225
+ name: localization.common.unusedAdapters,
226
+ value: initialData.unusedAdapters,
227
+ },
228
+ ],
229
+ },
230
+ ]
231
+ }
232
+
233
+ export const networkEditSettingsTabsFunc = (
234
+ localization: UI_I_Localization
235
+ ) => [
236
+ {
237
+ value: '1',
238
+ text: localization.common.properties,
239
+ },
240
+ {
241
+ value: '2',
242
+ text: localization.common.security,
243
+ },
244
+ {
245
+ value: '3',
246
+ text: localization.common.trafficShaping,
247
+ },
248
+ {
249
+ value: '4',
250
+ text: localization.common.teamingAndFailover,
251
+ },
252
+ ]
253
+
254
+ export const networkPopupFieldsFunc = (
255
+ localization: UI_I_Localization,
256
+ networkType: string,
257
+ testId: string,
258
+ state: number,
259
+ inPortlet = false
260
+ ) => {
261
+ const view = {
262
+ text: localization.common.viewSettings,
263
+ value: 'network-view-settings',
264
+ testId: `${testId}-view`,
265
+ }
266
+ const edit = {
267
+ text: localization.common.editSettings,
268
+ value: 'network-edit-settings',
269
+ testId: `${testId}-edit`,
270
+ permission:
271
+ networkType === '1' ? 'Networks.UpdateSysx' : 'Networks.UpdatePortGroup',
272
+ }
273
+ const remove = {
274
+ text: localization.common.remove,
275
+ value: 'network-port-remove',
276
+ testId: `${testId}-remove`,
277
+ permission:
278
+ networkType === '1' ? 'Networks.RemoveSysx' : 'Networks.RemovePortGroup',
279
+ // networkType === '1' ? 'network-vkernel-remove' : 'network-port-remove',
280
+ }
281
+
282
+ const inPortletConfig = [view]
283
+
284
+ const notInPortletConfig = [view, edit, { separate: true }, remove]
285
+ const notInPortletErrorConfig = [remove]
286
+
287
+ if (inPortlet) {
288
+ return state === 3 ? [] : inPortletConfig
289
+ } else {
290
+ return state === 3 ? notInPortletErrorConfig : notInPortletConfig
291
+ }
292
+ }
293
+
294
+ export const networkPopupFieldsNewFunc = (
295
+ localization: UI_I_Localization,
296
+ networkType: string,
297
+ testId: string,
298
+ state: number,
299
+ inPortlet = false
300
+ ) => {
301
+ const view = {
302
+ text: localization.common.viewSettings,
303
+ value: 'network-view-settings',
304
+ iconName: 'password-hide',
305
+ testId: `${testId}-view`,
306
+ }
307
+ const edit = {
308
+ text: localization.common.editSettings,
309
+ value: 'network-edit-settings',
310
+ iconName: 'edit',
311
+ testId: `${testId}-edit`,
312
+ permission:
313
+ networkType === '1' ? 'Networks.UpdateSysx' : 'Networks.UpdatePortGroup',
314
+ }
315
+ const remove = {
316
+ text: localization.common.remove,
317
+ value: 'network-port-remove',
318
+ iconName: 'delete',
319
+ iconColor: '#ea3223',
320
+ textColor: '#ea3223',
321
+ testId: `${testId}-remove`,
322
+ permission:
323
+ networkType === '1' ? 'Networks.RemoveSysx' : 'Networks.RemovePortGroup',
324
+ // networkType === '1' ? 'network-vkernel-remove' : 'network-port-remove',
325
+ }
326
+
327
+ const inPortletConfig = [view]
328
+
329
+ const notInPortletConfig = [view, edit, remove]
330
+ const notInPortletErrorConfig = [remove]
331
+
332
+ if (inPortlet) {
333
+ return state === 3 ? [] : inPortletConfig
334
+ } else {
335
+ return state === 3 ? notInPortletErrorConfig : notInPortletConfig
336
+ }
337
+ }
338
+
339
+ export const teamingAndFailoverTemplateMakerFunc = (
340
+ localization: UI_I_Localization
341
+ ): UI_I_TeamingAndFailoverTemplate[] => [
342
+ {
343
+ key: 'loadBalancing',
344
+ testId: 'loadBalancing',
345
+ options: [
346
+ {
347
+ value: 3,
348
+ text: localization.common.routeBasedIpHash,
349
+ },
350
+ {
351
+ value: 2,
352
+ text: localization.common.routeBasedSourceMacHash,
353
+ },
354
+ {
355
+ value: 1,
356
+ text: localization.common.useExplicitFailoverOrder,
357
+ },
358
+ ],
359
+ },
360
+ {
361
+ key: 'networkFailureDetection',
362
+ testId: 'networkFailureDetection',
363
+ options: [
364
+ {
365
+ value: 1,
366
+ text: localization.common.linkStatusOnly,
367
+ },
368
+ ],
369
+ },
370
+ {
371
+ key: 'notifySwitches',
372
+ testId: 'notifySwitches',
373
+ options: [
374
+ {
375
+ value: 2,
376
+ text: localization.common.no,
377
+ },
378
+ {
379
+ value: 1,
380
+ text: localization.common.yes,
381
+ },
382
+ ],
383
+ },
384
+ {
385
+ key: 'failback',
386
+ testId: 'failback',
387
+ options: [
388
+ {
389
+ value: 2,
390
+ text: localization.common.no,
391
+ },
392
+ {
393
+ value: 1,
394
+ text: localization.common.yes,
395
+ },
396
+ ],
397
+ },
398
+ ]