bfg-common 1.5.323 → 1.5.325

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 (143) 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 +1 -0
  7. package/assets/localization/local_en.json +1 -0
  8. package/assets/localization/local_hy.json +1 -0
  9. package/assets/localization/local_kk.json +1 -0
  10. package/assets/localization/local_ru.json +1 -0
  11. package/assets/localization/local_zh.json +1 -0
  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/contents/filesNew/Skeleton.vue +18 -18
  26. package/components/common/context/lib/models/interfaces.ts +33 -33
  27. package/components/common/diagramMain/DiagramMain.vue +897 -897
  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/monitor/overview/filters/lib/config/filterOptions.ts +100 -100
  34. package/components/common/pages/home/headline/Headline.vue +45 -45
  35. package/components/common/pages/home/headline/HeadlineOld.vue +42 -42
  36. package/components/common/pages/home/lib/models/interfaces.ts +48 -48
  37. package/components/common/pages/home/widgets/Widgets.vue +49 -49
  38. package/components/common/pages/home/widgets/WidgetsNew.vue +86 -86
  39. package/components/common/pages/home/widgets/WidgetsOld.vue +34 -34
  40. package/components/common/pages/home/widgets/hosts/Hosts.vue +27 -27
  41. package/components/common/pages/home/widgets/hosts/lib/config/items.ts +23 -23
  42. package/components/common/pages/home/widgets/vms/Vms.vue +26 -26
  43. package/components/common/pages/home/widgets/vms/VmsOld.vue +35 -35
  44. package/components/common/pages/home/widgets/vms/lib/config/items.ts +19 -19
  45. package/components/common/pages/packages/Packages.vue +208 -208
  46. package/components/common/pages/shortcuts/block/BlockOld.vue +68 -68
  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 +377 -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/folderTreeView/FolderTreeView.vue +72 -72
  55. package/components/common/vm/actions/add/folderTreeView/New.vue +40 -40
  56. package/components/common/vm/actions/add/folderTreeView/Old.vue +50 -50
  57. package/components/common/vm/actions/clone/Clone.vue +823 -823
  58. package/components/common/vm/actions/clone/lib/config/steps.ts +291 -291
  59. package/components/common/vm/actions/clone/toTemplate/lib/config/steps.ts +116 -116
  60. package/components/common/vm/actions/common/customizeHardware/CustomizeHardware.vue +3 -0
  61. package/components/common/vm/actions/common/customizeHardware/CustomizeHardwareNew.vue +2 -0
  62. package/components/common/vm/actions/common/customizeHardware/CustomizeHardwareOld.vue +2 -0
  63. package/components/common/vm/actions/common/customizeHardware/virtualHardware/VirtualHardwareOld.vue +321 -321
  64. package/components/common/vm/actions/common/customizeHardware/virtualHardware/browseView/BrowseView.vue +227 -227
  65. package/components/common/vm/actions/common/customizeHardware/virtualHardware/bus/Bus.vue +100 -100
  66. package/components/common/vm/actions/common/customizeHardware/virtualHardware/cdDvdDrive/CdDvdDrive.vue +232 -232
  67. package/components/common/vm/actions/common/customizeHardware/virtualHardware/cdDvdDrive/CdDvdDriveOld.vue +168 -168
  68. package/components/common/vm/actions/common/customizeHardware/virtualHardware/cdDvdDrive/media/Media.vue +25 -25
  69. package/components/common/vm/actions/common/customizeHardware/virtualHardware/cdDvdDrive/media/MediaNew.vue +78 -78
  70. package/components/common/vm/actions/common/customizeHardware/virtualHardware/cdDvdDrive/media/MediaOld.vue +50 -50
  71. package/components/common/vm/actions/common/customizeHardware/virtualHardware/cpu/shares/Shares.vue +140 -140
  72. package/components/common/vm/actions/common/customizeHardware/virtualHardware/cpu/shares/lib/config/options.ts +28 -28
  73. package/components/common/vm/actions/common/customizeHardware/virtualHardware/cpu/tooltip/TooltipNew.vue +154 -154
  74. package/components/common/vm/actions/common/customizeHardware/virtualHardware/limit/Limit.vue +220 -220
  75. package/components/common/vm/actions/common/customizeHardware/virtualHardware/memory/Memory.vue +307 -307
  76. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newHardDisk/NewHardDisk.vue +385 -385
  77. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newHardDisk/location/Location.vue +154 -154
  78. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newHardDisk/location/LocationOld.vue +85 -85
  79. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newNetwork/NewNetwork.vue +288 -288
  80. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newNetwork/location/new/table/lib/config/config.ts +94 -94
  81. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newNetwork/macAddress/MacAddress.vue +119 -119
  82. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newPciDevice/NewPciDevice.vue +205 -205
  83. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newPciDevice/directPathIo/DirectPathIoNew.vue +66 -66
  84. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newPciDevice/directPathIo/DirectPathIoOld.vue +62 -62
  85. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newPciDevice/dynamicDirectPathIo/DynamicDirectPathIo.vue +31 -31
  86. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newPciDevice/dynamicDirectPathIo/DynamicDirectPathIoOld.vue +76 -76
  87. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newPciDevice/note/Note.vue +15 -15
  88. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newPciDevice/note/NoteNew.vue +42 -42
  89. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newPciDevice/note/NoteOld.vue +30 -30
  90. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newPciDevice/nvidiaGrid/NvidiaGridOld.vue +84 -84
  91. package/components/common/vm/actions/common/customizeHardware/virtualHardware/other/Other.vue +16 -16
  92. package/components/common/vm/actions/common/customizeHardware/virtualHardware/videoCard/VideoCard.vue +154 -154
  93. package/components/common/vm/actions/common/customizeHardware/virtualHardware/videoCard/numberDisplays/NumberDisplays.vue +53 -53
  94. package/components/common/vm/actions/common/customizeHardware/vmoptions/Vmoptions.vue +155 -152
  95. package/components/common/vm/actions/common/customizeHardware/vmoptions/VmoptionsNew.vue +130 -128
  96. package/components/common/vm/actions/common/customizeHardware/vmoptions/VmoptionsOld.vue +113 -111
  97. package/components/common/vm/actions/common/customizeHardware/vmoptions/bootOptions/delay/Delay.vue +32 -32
  98. package/components/common/vm/actions/common/customizeHardware/vmoptions/bootOptions/firmware/Firmware.vue +60 -60
  99. package/components/common/vm/actions/common/customizeHardware/vmoptions/bootOptions/order/Order.vue +174 -174
  100. package/components/common/vm/actions/common/customizeHardware/vmoptions/generalOptions/GeneralOptions.vue +95 -83
  101. package/components/common/vm/actions/common/customizeHardware/vmoptions/generalOptions/GeneralOptionsNew.vue +2 -1
  102. package/components/common/vm/actions/common/customizeHardware/vmoptions/generalOptions/GeneralOptionsOld.vue +155 -154
  103. package/components/common/vm/actions/common/customizeHardware/vmoptions/remoteConsoleOptions/keymap/Keymap.vue +32 -32
  104. package/components/common/vm/actions/common/customizeHardware/vmoptions/remoteConsoleOptions/keymap/KeymapOld.vue +44 -44
  105. package/components/common/vm/actions/common/customizeHardware/vmoptions/remoteConsoleOptions/password/Password.vue +103 -103
  106. package/components/common/vm/actions/common/customizeHardware/vmoptions/remoteConsoleOptions/usbRedirection/UsbRedirection.vue +28 -28
  107. package/components/common/vm/actions/common/customizeHardware/vmoptions/remoteConsoleOptions/usbRedirection/UsbRedirectionOld.vue +44 -44
  108. package/components/common/vm/actions/common/select/compatibility/Old.vue +107 -107
  109. package/components/common/vm/actions/common/select/computeResource/treeView/TreeView.vue +118 -118
  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/new/lib/models/interfaces.ts +5 -5
  117. package/components/common/vm/actions/common/select/storage/new/lib/utils/utils.ts +21 -21
  118. package/components/common/vm/actions/editSettings/EditSettings.vue +242 -239
  119. package/components/common/vm/actions/editSettings/EditSettingsOld.vue +2 -0
  120. package/components/common/vm/actions/editSettings/new/New.vue +2 -0
  121. package/components/common/vm/actions/editSettings/new/Skeleton.vue +88 -88
  122. package/components/common/vmt/actions/add/Add.vue +641 -641
  123. package/components/common/vmt/actions/add/lib/config/steps.ts +107 -107
  124. package/components/common/vmt/actions/add/lib/models/interfaces.ts +23 -23
  125. package/components/common/wizards/network/add/steps/SelectConnectionType.vue +104 -104
  126. package/components/common/wizards/network/add/steps/SelectedTargetDevice.vue +467 -467
  127. package/components/common/wizards/vm/migrate/Migrate.vue +349 -349
  128. package/components/common/wizards/vm/migrate/lib/config/constructDataReady.ts +220 -220
  129. package/components/common/wizards/vm/migrate/lib/config/steps.ts +157 -157
  130. package/components/common/wizards/vm/migrate/lib/validations.ts +68 -68
  131. package/components/common/wizards/vm/migrate/select/network/Network.vue +103 -103
  132. package/components/common/wizards/vm/migrate/select/network/table/network/lib/config/advancedTable.ts +91 -91
  133. package/composables/productNameLocal.ts +30 -30
  134. package/composables/useAppVersion.ts +21 -21
  135. package/package.json +1 -1
  136. package/plugins/date.ts +233 -233
  137. package/plugins/panelStates.ts +70 -70
  138. package/plugins/text.ts +59 -59
  139. package/public/spice-console/lib/images/bitmap.js +203 -203
  140. package/public/spice-console/network/spicechannel.js +387 -387
  141. package/store/main/mutations.ts +7 -7
  142. package/store/main/state.ts +7 -7
  143. 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
+ ]