bfg-common 1.5.448 → 1.5.449

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 (115) 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/layout/theHeader/helpMenu/About.vue +82 -82
  21. package/components/common/pages/backups/Backups.vue +102 -102
  22. package/components/common/pages/backups/DetailView.vue +52 -52
  23. package/components/common/pages/backups/lib/models/interfaces.ts +36 -36
  24. package/components/common/pages/backups/modals/createBackup/configuration/Configuration.vue +29 -29
  25. package/components/common/pages/backups/modals/createBackup/configuration/backupWindow/BackupWindow.vue +26 -26
  26. package/components/common/pages/backups/modals/createBackup/configuration/maxBandwidth/MaxBandwidth.vue +66 -66
  27. package/components/common/pages/backups/modals/createBackup/configuration/maxBandwidth/lib/config/options.ts +6 -6
  28. package/components/common/pages/backups/modals/createBackup/configuration/strategy/Strategy.vue +35 -35
  29. package/components/common/pages/backups/modals/createBackup/datastores/Datastores.vue +59 -59
  30. package/components/common/pages/backups/modals/createBackup/datastores/tableView/TableView.vue +95 -95
  31. package/components/common/pages/backups/modals/createBackup/disks/tableView/lib/config/table.ts +117 -117
  32. package/components/common/pages/backups/modals/createBackup/general/General.vue +135 -135
  33. package/components/common/pages/backups/modals/createBackup/lib/config/strategyOptions.ts +12 -12
  34. package/components/common/pages/backups/modals/lib/config/restore.ts +115 -115
  35. package/components/common/pages/backups/modals/lib/models/interfaces.ts +186 -186
  36. package/components/common/pages/backups/modals/restore/disks/Disks.vue +27 -27
  37. package/components/common/pages/backups/modals/restore/disks/tableView/TableView.vue +102 -102
  38. package/components/common/pages/backups/modals/restore/disks/tableView/lib/config/table.ts +117 -117
  39. package/components/common/pages/backups/modals/restore/name/Name.vue +160 -160
  40. package/components/common/pages/backups/modals/restore/name/lib/models/interfaces.ts +6 -6
  41. package/components/common/pages/backups/modals/restore/networks/Networks.vue +67 -67
  42. package/components/common/pages/backups/modals/restore/networks/table/Table.vue +214 -214
  43. package/components/common/pages/backups/modals/restore/types/lib/config/typeOptions.ts +25 -25
  44. package/components/common/pages/backups/tools/Tools.vue +75 -75
  45. package/components/common/pages/backups/tools/lib/config/tabs.ts +36 -36
  46. package/components/common/pages/home/lib/models/interfaces.ts +48 -48
  47. package/components/common/pages/home/widgets/hosts/Hosts.vue +27 -27
  48. package/components/common/pages/home/widgets/hosts/lib/config/items.ts +23 -23
  49. package/components/common/pages/home/widgets/vms/VmsOld.vue +35 -35
  50. package/components/common/pages/home/widgets/vms/lib/config/items.ts +19 -19
  51. package/components/common/pages/scheduledTasks/lib/utils/utils.ts +84 -84
  52. package/components/common/readyToComplete/ReadyToComplete.vue +17 -17
  53. package/components/common/select/radio/RadioGroup.vue +137 -137
  54. package/components/common/spiceConsole/Drawer.vue +381 -381
  55. package/components/common/spiceConsole/SpiceConsole.vue +127 -127
  56. package/components/common/spiceConsole/lib/models/interfaces.ts +5 -5
  57. package/components/common/tools/Actions.vue +207 -207
  58. package/components/common/treeView/TreeView.vue +52 -52
  59. package/components/common/vm/actions/add/folderTreeView/FolderTreeView.vue +72 -72
  60. package/components/common/vm/actions/add/folderTreeView/New.vue +40 -40
  61. package/components/common/vm/actions/common/customizeHardware/virtualHardware/VirtualHardware.vue +7 -1
  62. package/components/common/vm/actions/common/customizeHardware/virtualHardware/cdDvdDrive/media/Media.vue +25 -25
  63. package/components/common/vm/actions/common/customizeHardware/virtualHardware/cdDvdDrive/media/MediaNew.vue +78 -78
  64. package/components/common/vm/actions/common/customizeHardware/virtualHardware/cdDvdDrive/media/MediaOld.vue +50 -50
  65. package/components/common/vm/actions/common/customizeHardware/virtualHardware/cpu/shares/Shares.vue +140 -140
  66. package/components/common/vm/actions/common/customizeHardware/virtualHardware/cpu/shares/lib/config/options.ts +28 -28
  67. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newHardDisk/location/Location.vue +154 -154
  68. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newHardDisk/location/LocationOld.vue +85 -85
  69. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newHardDisk/maximumSize/MaximumSize.vue +23 -23
  70. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newNetwork/location/new/table/Table.vue +99 -99
  71. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newNetwork/macAddress/MacAddress.vue +119 -119
  72. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newPciDevice/directPathIo/DirectPathIoNew.vue +66 -66
  73. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newPciDevice/directPathIo/DirectPathIoOld.vue +62 -62
  74. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newPciDevice/dynamicDirectPathIo/DynamicDirectPathIo.vue +31 -31
  75. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newPciDevice/dynamicDirectPathIo/DynamicDirectPathIoOld.vue +76 -76
  76. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newPciDevice/note/Note.vue +15 -15
  77. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newPciDevice/note/NoteNew.vue +42 -42
  78. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newPciDevice/note/NoteOld.vue +30 -30
  79. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newPciDevice/nvidiaGrid/NvidiaGridOld.vue +84 -84
  80. package/components/common/vm/actions/common/customizeHardware/virtualHardware/other/Other.vue +16 -16
  81. package/components/common/vm/actions/common/customizeHardware/virtualHardware/videoCard/numberDisplays/NumberDisplays.vue +53 -53
  82. package/components/common/vm/actions/common/customizeHardware/vmoptions/bootOptions/delay/Delay.vue +32 -32
  83. package/components/common/vm/actions/common/customizeHardware/vmoptions/bootOptions/firmware/Firmware.vue +60 -60
  84. package/components/common/vm/actions/common/customizeHardware/vmoptions/bootOptions/order/Order.vue +174 -174
  85. package/components/common/vm/actions/common/customizeHardware/vmoptions/remoteConsoleOptions/keymap/Keymap.vue +32 -32
  86. package/components/common/vm/actions/common/customizeHardware/vmoptions/remoteConsoleOptions/keymap/KeymapOld.vue +44 -44
  87. package/components/common/vm/actions/common/customizeHardware/vmoptions/remoteConsoleOptions/password/Password.vue +103 -103
  88. package/components/common/vm/actions/common/customizeHardware/vmoptions/remoteConsoleOptions/usbRedirection/UsbRedirection.vue +28 -28
  89. package/components/common/vm/actions/common/customizeHardware/vmoptions/remoteConsoleOptions/usbRedirection/UsbRedirectionOld.vue +44 -44
  90. package/components/common/vm/actions/common/select/compatibility/Old.vue +107 -107
  91. package/components/common/vm/actions/common/select/computeResource/ComputeResource.vue +143 -143
  92. package/components/common/vm/actions/common/select/computeResource/New.vue +184 -184
  93. package/components/common/vm/actions/common/select/computeResource/treeView/TreeView.vue +131 -131
  94. package/components/common/vm/actions/common/select/createType/CreateType.vue +38 -38
  95. package/components/common/vm/actions/common/select/createType/lib/models/interfaces.ts +5 -5
  96. package/components/common/vm/actions/common/select/os/Old.vue +152 -152
  97. package/components/common/vm/actions/common/select/os/Os.vue +139 -139
  98. package/components/common/vm/actions/common/select/storage/new/New.vue +320 -320
  99. package/components/common/vm/actions/common/select/storage/new/lib/models/interfaces.ts +5 -5
  100. package/components/common/vm/actions/common/select/storage/new/lib/utils/utils.ts +21 -21
  101. package/components/common/vm/actions/common/select/template/old/Old.vue +50 -50
  102. package/components/common/vm/actions/editSettings/new/Skeleton.vue +88 -88
  103. package/components/common/wizards/datastore/add/steps/typeMode/lib/config/typeOptions.ts +43 -43
  104. package/components/common/wizards/vm/migrate/select/network/Network.vue +103 -103
  105. package/components/common/wizards/vm/migrate/select/type/lib/config/typeOptions.ts +45 -45
  106. package/composables/productNameLocal.ts +30 -30
  107. package/composables/useAppVersion.ts +21 -21
  108. package/package.json +1 -1
  109. package/plugins/date.ts +233 -233
  110. package/plugins/panelStates.ts +70 -70
  111. package/plugins/text.ts +59 -59
  112. package/public/spice-console/lib/images/bitmap.js +203 -203
  113. package/public/spice-console/network/spicechannel.js +390 -390
  114. package/store/main/mutations.ts +7 -7
  115. 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
+ ]