bfg-common 1.5.446 → 1.5.448

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 (129) 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/components/atoms/TheIcon3.vue +50 -50
  7. package/components/atoms/collapse/CollapseNav.vue +170 -170
  8. package/components/atoms/perPage/PerPage.vue +58 -58
  9. package/components/atoms/table/dataGrid/DataGrid.vue +1694 -1694
  10. package/components/atoms/table/dataGrid/DataGridPagination.vue +97 -97
  11. package/components/atoms/table/dataGrid/lib/config/settingsTable.ts +94 -94
  12. package/components/atoms/table/dataGrid/lib/utils/export.ts +16 -16
  13. package/components/common/browse/blocks/Container.vue +235 -235
  14. package/components/common/browse/blocks/contents/filesNew/Skeleton.vue +18 -18
  15. package/components/common/context/lib/models/interfaces.ts +33 -33
  16. package/components/common/diagramMain/modals/lib/config/networkModal.ts +398 -398
  17. package/components/common/diagramMain/modals/lib/config/portModal.ts +251 -251
  18. package/components/common/diagramMain/modals/lib/config/vCenterModal.ts +48 -48
  19. package/components/common/diagramMain/port/Port.vue +580 -580
  20. package/components/common/feedback/Buttons.vue +2 -1
  21. package/components/common/layout/theHeader/helpMenu/About.vue +82 -82
  22. package/components/common/layout/theHeader/modals/reconnect/Reconnect.vue +2 -4
  23. package/components/common/layout/theHeader/modals/reconnect/ReconnectNew.vue +1 -2
  24. package/components/common/layout/theHeader/modals/reconnect/ReconnectOld.vue +1 -2
  25. package/components/common/layout/theHeader/userMenu/UserMenu.vue +1 -1
  26. package/components/common/layout/theHeader/userMenu/modals/preferences/Preferences.vue +1 -1
  27. package/components/common/layout/theHeader/userMenu/modals/preferences/PreferencesOld.vue +1 -0
  28. package/components/common/layout/theHeader/userMenu/modals/preferences/changeLanguage/ChangeLanguage.vue +4 -2
  29. package/components/common/layout/theHeader/userMenu/modals/preferences/changeLanguage/ChangeLanguageOld.vue +5 -4
  30. package/components/common/pages/backups/Backups.vue +102 -102
  31. package/components/common/pages/backups/DetailView.vue +52 -52
  32. package/components/common/pages/backups/lib/models/interfaces.ts +36 -36
  33. package/components/common/pages/backups/modals/createBackup/configuration/Configuration.vue +29 -29
  34. package/components/common/pages/backups/modals/createBackup/configuration/backupWindow/BackupWindow.vue +26 -26
  35. package/components/common/pages/backups/modals/createBackup/configuration/maxBandwidth/MaxBandwidth.vue +66 -66
  36. package/components/common/pages/backups/modals/createBackup/configuration/maxBandwidth/lib/config/options.ts +6 -6
  37. package/components/common/pages/backups/modals/createBackup/configuration/strategy/Strategy.vue +35 -35
  38. package/components/common/pages/backups/modals/createBackup/datastores/Datastores.vue +59 -59
  39. package/components/common/pages/backups/modals/createBackup/datastores/tableView/TableView.vue +95 -95
  40. package/components/common/pages/backups/modals/createBackup/disks/tableView/lib/config/table.ts +117 -117
  41. package/components/common/pages/backups/modals/createBackup/general/General.vue +135 -135
  42. package/components/common/pages/backups/modals/createBackup/lib/config/strategyOptions.ts +12 -12
  43. package/components/common/pages/backups/modals/lib/config/restore.ts +115 -115
  44. package/components/common/pages/backups/modals/lib/models/interfaces.ts +186 -186
  45. package/components/common/pages/backups/modals/restore/disks/Disks.vue +27 -27
  46. package/components/common/pages/backups/modals/restore/disks/tableView/TableView.vue +102 -102
  47. package/components/common/pages/backups/modals/restore/disks/tableView/lib/config/table.ts +117 -117
  48. package/components/common/pages/backups/modals/restore/name/Name.vue +160 -160
  49. package/components/common/pages/backups/modals/restore/name/lib/models/interfaces.ts +6 -6
  50. package/components/common/pages/backups/modals/restore/networks/Networks.vue +67 -67
  51. package/components/common/pages/backups/modals/restore/networks/table/Table.vue +214 -214
  52. package/components/common/pages/backups/modals/restore/types/lib/config/typeOptions.ts +25 -25
  53. package/components/common/pages/backups/tools/Tools.vue +75 -75
  54. package/components/common/pages/backups/tools/lib/config/tabs.ts +36 -36
  55. package/components/common/pages/home/headline/Headline.vue +9 -4
  56. package/components/common/pages/home/headline/HeadlineNew.vue +9 -4
  57. package/components/common/pages/home/headline/HeadlineOld.vue +47 -42
  58. package/components/common/pages/home/lib/models/interfaces.ts +48 -48
  59. package/components/common/pages/home/widgets/Widgets.vue +1 -0
  60. package/components/common/pages/home/widgets/WidgetsOld.vue +7 -1
  61. package/components/common/pages/home/widgets/hosts/Hosts.vue +27 -27
  62. package/components/common/pages/home/widgets/hosts/lib/config/items.ts +23 -23
  63. package/components/common/pages/home/widgets/vms/VmsOld.vue +35 -35
  64. package/components/common/pages/home/widgets/vms/lib/config/items.ts +19 -19
  65. package/components/common/pages/scheduledTasks/lib/utils/utils.ts +84 -84
  66. package/components/common/readyToComplete/ReadyToComplete.vue +17 -17
  67. package/components/common/select/radio/RadioGroup.vue +137 -137
  68. package/components/common/spiceConsole/Drawer.vue +381 -381
  69. package/components/common/spiceConsole/SpiceConsole.vue +127 -127
  70. package/components/common/spiceConsole/lib/models/interfaces.ts +5 -5
  71. package/components/common/split/vertical/VerticalOld.vue +6 -4
  72. package/components/common/tools/Actions.vue +207 -207
  73. package/components/common/treeView/TreeView.vue +52 -52
  74. package/components/common/vm/actions/add/folderTreeView/FolderTreeView.vue +72 -72
  75. package/components/common/vm/actions/add/folderTreeView/New.vue +40 -40
  76. package/components/common/vm/actions/common/customizeHardware/virtualHardware/cdDvdDrive/media/Media.vue +25 -25
  77. package/components/common/vm/actions/common/customizeHardware/virtualHardware/cdDvdDrive/media/MediaNew.vue +78 -78
  78. package/components/common/vm/actions/common/customizeHardware/virtualHardware/cdDvdDrive/media/MediaOld.vue +50 -50
  79. package/components/common/vm/actions/common/customizeHardware/virtualHardware/cpu/shares/Shares.vue +140 -140
  80. package/components/common/vm/actions/common/customizeHardware/virtualHardware/cpu/shares/lib/config/options.ts +28 -28
  81. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newHardDisk/location/Location.vue +154 -154
  82. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newHardDisk/location/LocationOld.vue +85 -85
  83. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newHardDisk/maximumSize/MaximumSize.vue +23 -23
  84. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newNetwork/location/new/table/Table.vue +99 -99
  85. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newNetwork/macAddress/MacAddress.vue +119 -119
  86. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newPciDevice/directPathIo/DirectPathIoNew.vue +66 -66
  87. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newPciDevice/directPathIo/DirectPathIoOld.vue +62 -62
  88. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newPciDevice/dynamicDirectPathIo/DynamicDirectPathIo.vue +31 -31
  89. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newPciDevice/dynamicDirectPathIo/DynamicDirectPathIoOld.vue +76 -76
  90. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newPciDevice/note/Note.vue +15 -15
  91. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newPciDevice/note/NoteNew.vue +42 -42
  92. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newPciDevice/note/NoteOld.vue +30 -30
  93. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newPciDevice/nvidiaGrid/NvidiaGridOld.vue +84 -84
  94. package/components/common/vm/actions/common/customizeHardware/virtualHardware/other/Other.vue +16 -16
  95. package/components/common/vm/actions/common/customizeHardware/virtualHardware/videoCard/numberDisplays/NumberDisplays.vue +53 -53
  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/remoteConsoleOptions/keymap/Keymap.vue +32 -32
  100. package/components/common/vm/actions/common/customizeHardware/vmoptions/remoteConsoleOptions/keymap/KeymapOld.vue +44 -44
  101. package/components/common/vm/actions/common/customizeHardware/vmoptions/remoteConsoleOptions/password/Password.vue +103 -103
  102. package/components/common/vm/actions/common/customizeHardware/vmoptions/remoteConsoleOptions/usbRedirection/UsbRedirection.vue +28 -28
  103. package/components/common/vm/actions/common/customizeHardware/vmoptions/remoteConsoleOptions/usbRedirection/UsbRedirectionOld.vue +44 -44
  104. package/components/common/vm/actions/common/select/compatibility/Old.vue +107 -107
  105. package/components/common/vm/actions/common/select/computeResource/ComputeResource.vue +143 -143
  106. package/components/common/vm/actions/common/select/computeResource/New.vue +184 -184
  107. package/components/common/vm/actions/common/select/computeResource/treeView/TreeView.vue +131 -131
  108. package/components/common/vm/actions/common/select/createType/CreateType.vue +38 -38
  109. package/components/common/vm/actions/common/select/createType/lib/models/interfaces.ts +5 -5
  110. package/components/common/vm/actions/common/select/os/Old.vue +152 -152
  111. package/components/common/vm/actions/common/select/os/Os.vue +139 -139
  112. package/components/common/vm/actions/common/select/storage/new/New.vue +320 -320
  113. package/components/common/vm/actions/common/select/storage/new/lib/models/interfaces.ts +5 -5
  114. package/components/common/vm/actions/common/select/storage/new/lib/utils/utils.ts +21 -21
  115. package/components/common/vm/actions/common/select/template/old/Old.vue +50 -50
  116. package/components/common/vm/actions/editSettings/new/Skeleton.vue +88 -88
  117. package/components/common/wizards/datastore/add/steps/typeMode/lib/config/typeOptions.ts +43 -43
  118. package/components/common/wizards/vm/migrate/select/network/Network.vue +103 -103
  119. package/components/common/wizards/vm/migrate/select/type/lib/config/typeOptions.ts +45 -45
  120. package/composables/productNameLocal.ts +30 -30
  121. package/composables/useAppVersion.ts +21 -21
  122. package/package.json +2 -2
  123. package/plugins/date.ts +233 -233
  124. package/plugins/panelStates.ts +70 -70
  125. package/plugins/text.ts +59 -59
  126. package/public/spice-console/lib/images/bitmap.js +203 -203
  127. package/public/spice-console/network/spicechannel.js +390 -390
  128. package/store/main/mutations.ts +7 -7
  129. package/store/main/state.ts +7 -7
@@ -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
+ ]