bfg-common 1.6.84 → 1.6.86

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 (125) hide show
  1. package/assets/localization/local_be.json +2 -7
  2. package/assets/localization/local_en.json +2 -7
  3. package/assets/localization/local_hy.json +2 -7
  4. package/assets/localization/local_kk.json +2 -7
  5. package/assets/localization/local_ru.json +2 -7
  6. package/assets/localization/local_zh.json +2 -7
  7. package/components/common/adapterManager/AdapterManager.vue +473 -473
  8. package/components/common/adapterManager/AdapterManagerOld.vue +498 -498
  9. package/components/common/adapterManager/addAdapterModal/AddAdapterModal.vue +70 -70
  10. package/components/common/adapterManager/addAdapterModal/AddAdapterModalNew.vue +110 -110
  11. package/components/common/adapterManager/addAdapterModal/AddAdapterModalOld.vue +531 -531
  12. package/components/common/adapterManager/addAdapterWarningModal/AddAdapterWarningModal.vue +32 -32
  13. package/components/common/adapterManager/addAdapterWarningModal/AddAdapterWarningModalNew.vue +37 -37
  14. package/components/common/adapterManager/addAdapterWarningModal/AddAdapterWarningModalOld.vue +73 -73
  15. package/components/common/adapterManager/lib/config/index.ts +19 -19
  16. package/components/common/adapterManager/noActiveAdaptersModal/NoActiveAdaptersModal.vue +31 -31
  17. package/components/common/adapterManager/noActiveAdaptersModal/NoActiveAdaptersModalNew.vue +34 -34
  18. package/components/common/adapterManager/noActiveAdaptersModal/NoActiveAdaptersModalOld.vue +57 -57
  19. package/components/common/adapterManager/noConnectedActiveAdaptersModal/NoConnectedActiveAdaptersModal.vue +31 -31
  20. package/components/common/adapterManager/noConnectedActiveAdaptersModal/NoConnectedActiveAdaptersModalNew.vue +34 -34
  21. package/components/common/adapterManager/noConnectedActiveAdaptersModal/NoConnectedActiveAdaptersModalOld.vue +57 -57
  22. package/components/common/adapterManager/ui/actions/AddAdapterButton.vue +34 -34
  23. package/components/common/adapterManager/ui/actions/RemoveAdapterButton.vue +41 -41
  24. package/components/common/adapterManager/ui/actions/VerticalSeparator.vue +10 -10
  25. package/components/common/adapterManager/ui/actions/bar/BarOld.vue +95 -95
  26. package/components/common/adapterManager/ui/actions/moveDownAdapterButton/MoveDownAdapterButton.vue +28 -28
  27. package/components/common/adapterManager/ui/actions/moveDownAdapterButton/MoveDownAdapterButtonNew.vue +76 -76
  28. package/components/common/adapterManager/ui/actions/moveDownAdapterButton/MoveDownAdapterButtonOld.vue +33 -33
  29. package/components/common/adapterManager/ui/actions/moveUpAdapterButton/MoveUpAdapterButton.vue +28 -28
  30. package/components/common/adapterManager/ui/actions/moveUpAdapterButton/MoveUpAdapterButtonNew.vue +77 -77
  31. package/components/common/adapterManager/ui/actions/moveUpAdapterButton/MoveUpAdapterButtonOld.vue +33 -33
  32. package/components/common/adapterManager/ui/noSelectedAdapter/NoSelectedAdapter.vue +24 -24
  33. package/components/common/adapterManager/ui/noSelectedAdapter/NoSelectedAdapterNew.vue +18 -18
  34. package/components/common/adapterManager/ui/noSelectedAdapter/NoSelectedAdapterOld.vue +38 -38
  35. package/components/common/adapterManager/ui/secondTitle/SecondTitle.vue +31 -31
  36. package/components/common/adapterManager/ui/secondTitle/SecondTitleNew.vue +51 -51
  37. package/components/common/adapterManager/ui/secondTitle/SecondTitleOld.vue +35 -35
  38. package/components/common/adapterManager/ui/table/Table.vue +88 -88
  39. package/components/common/adapterManager/ui/table/TableNew.vue +137 -137
  40. package/components/common/adapterManager/ui/table/TableOld.vue +141 -141
  41. package/components/common/adapterManager/ui/table/adapters/Adapters.vue +44 -44
  42. package/components/common/adapterManager/ui/table/adapters/AdaptersNew.vue +187 -187
  43. package/components/common/adapterManager/ui/table/adapters/AdaptersOld.vue +87 -87
  44. package/components/common/adapterManager/ui/table/header/Header.vue +57 -57
  45. package/components/common/adapterManager/ui/table/header/HeaderNew.vue +81 -81
  46. package/components/common/adapterManager/ui/table/header/HeaderOld.vue +79 -79
  47. package/components/common/adapterManager/ui/table/lib/models/types.ts +1 -1
  48. package/components/common/configure/vmkernelAdapters/VmkernelAdapters.vue +254 -0
  49. package/components/common/configure/vmkernelAdapters/tableView/TableView.vue +427 -0
  50. package/components/common/configure/vmkernelAdapters/tableView/lib/config/settings.ts +300 -0
  51. package/components/common/configure/vmkernelAdapters/tableView/lib/config/tableKeys.ts +12 -0
  52. package/components/common/configure/vmkernelAdapters/tableView/lib/config/vmKernelAdaptersTableConfig.ts +166 -0
  53. package/components/common/configure/vmkernelAdapters/tableView/lib/models/interfaces.ts +9 -0
  54. package/components/common/configure/vmkernelAdapters/tableView/lib/models/types.ts +9 -0
  55. package/components/common/configure/vmkernelAdapters/tableView/mappers/mappers.ts +27 -0
  56. package/components/common/diagramMain/adapter/Adapter.vue +123 -123
  57. package/components/common/diagramMain/adapter/AdapterItem.vue +438 -438
  58. package/components/common/diagramMain/adapter/AdapterItems.vue +61 -61
  59. package/components/common/diagramMain/adapter/Contents.vue +212 -212
  60. package/components/common/diagramMain/adapter/Lines.vue +81 -81
  61. package/components/common/diagramMain/adapter/block/Block.vue +27 -27
  62. package/components/common/diagramMain/adapter/block/BlockNew.vue +58 -58
  63. package/components/common/diagramMain/adapter/block/BlockOld.vue +50 -50
  64. package/components/common/diagramMain/adapter/secondBlock/SecondBlock.vue +27 -27
  65. package/components/common/diagramMain/adapter/secondBlock/SecondBlockNew.vue +60 -60
  66. package/components/common/diagramMain/adapter/secondBlock/SecondBlockOld.vue +51 -51
  67. package/components/common/diagramMain/highlights/Highlights.vue +151 -151
  68. package/components/common/diagramMain/highlights/HighlightsNew.vue +124 -124
  69. package/components/common/diagramMain/highlights/HighlightsOld.vue +107 -107
  70. package/components/common/diagramMain/lib/config/index.ts +81 -81
  71. package/components/common/diagramMain/lib/config/initial.ts +50 -50
  72. package/components/common/diagramMain/lib/config/positions.ts +194 -194
  73. package/components/common/diagramMain/lib/models/enums.ts +44 -44
  74. package/components/common/diagramMain/lib/models/interfaces.ts +760 -760
  75. package/components/common/diagramMain/lib/models/types.ts +21 -21
  76. package/components/common/diagramMain/lib/utils/utils.ts +331 -331
  77. package/components/common/diagramMain/modals/editSettings/lib/models/interfaces.ts +30 -30
  78. package/components/common/diagramMain/modals/editSettings/modal/EditSettingsModal.vue +137 -137
  79. package/components/common/diagramMain/modals/editSettings/modal/EditSettingsModalNew.vue +1 -1
  80. package/components/common/diagramMain/modals/editSettings/tabs/port/portProperties/PortPropertiesOld.vue +0 -1
  81. package/components/common/diagramMain/modals/lib/config/initial.ts +180 -180
  82. package/components/common/diagramMain/modals/lib/config/switchModal.ts +245 -245
  83. package/components/common/diagramMain/modals/lib/config/vmKernelAdapter.ts +90 -90
  84. package/components/common/diagramMain/modals/lib/mappers/mappers.ts +88 -88
  85. package/components/common/diagramMain/modals/migrateVmkernelAdapter/MigrateVmkernelAdapter.vue +541 -541
  86. package/components/common/diagramMain/modals/migrateVmkernelAdapter/lib/config/steps.ts +114 -114
  87. package/components/common/diagramMain/modals/migrateVmkernelAdapter/steps/ConnectionSettings.vue +170 -170
  88. package/components/common/diagramMain/modals/migrateVmkernelAdapter/steps/SelectVmkernelAdapter.vue +159 -159
  89. package/components/common/diagramMain/modals/migrateVmkernelAdapter/steps/VmkernelAdapterReadyComplete.vue +49 -49
  90. package/components/common/diagramMain/modals/migrateVmkernelAdapter/validations/common.ts +19 -19
  91. package/components/common/diagramMain/modals/migrateVmkernelAdapter/validations/connectionSettings.ts +137 -137
  92. package/components/common/diagramMain/modals/migrateVmkernelAdapter/validations/selectVmkernelAdapter.ts +52 -52
  93. package/components/common/diagramMain/modals/migrateVmkernelAdapter/validations/validations.ts +19 -19
  94. package/components/common/diagramMain/modals/remove/RemoveModal.vue +82 -82
  95. package/components/common/diagramMain/modals/remove/RemoveModalNew.vue +157 -157
  96. package/components/common/diagramMain/modals/remove/RemoveModalOld.vue +241 -241
  97. package/components/common/diagramMain/modals/viewSettings/info/Info.vue +57 -57
  98. package/components/common/diagramMain/modals/viewSettings/info/InfoNew.vue +174 -174
  99. package/components/common/diagramMain/modals/viewSettings/info/InfoOld.vue +141 -141
  100. package/components/common/diagramMain/modals/viewSettings/viewSettings/ViewSettings.vue +45 -45
  101. package/components/common/diagramMain/modals/viewSettings/viewSettings/ViewSettingsNew.vue +323 -323
  102. package/components/common/diagramMain/modals/viewSettings/viewSettings/ViewSettingsOld.vue +203 -203
  103. package/components/common/diagramMain/modals/viewSettings/viewSettingsModal/ViewSettingsModal.vue +60 -60
  104. package/components/common/diagramMain/modals/viewSettings/viewSettingsModal/ViewSettingsModalOld.vue +70 -70
  105. package/components/common/diagramMain/modals/viewSettings/viewSettingsModal/lib/models/interfaces.ts +48 -48
  106. package/components/common/diagramMain/network/Contents.vue +497 -497
  107. package/components/common/diagramMain/network/Lines.vue +107 -107
  108. package/components/common/diagramMain/network/Network.vue +141 -141
  109. package/components/common/diagramMain/network/block/Block.vue +37 -37
  110. package/components/common/diagramMain/network/block/BlockNew.vue +68 -68
  111. package/components/common/diagramMain/network/block/BlockOld.vue +64 -64
  112. package/components/common/diagramMain/network/noNetwork/NoNetwork.vue +12 -12
  113. package/components/common/diagramMain/network/noNetwork/NoNetworkNew.vue +89 -89
  114. package/components/common/diagramMain/network/noNetwork/NoNetworkOld.vue +61 -61
  115. package/components/common/diagramMain/network/secondBlock/SecondBlock.vue +41 -41
  116. package/components/common/diagramMain/network/secondBlock/SecondBlockNew.vue +64 -64
  117. package/components/common/diagramMain/network/secondBlock/SecondBlockOld.vue +60 -60
  118. package/components/common/diagramMain/port/Port.vue +580 -580
  119. package/components/common/diagramMain/port/Ports.vue +47 -47
  120. package/components/common/diagramMain/switch/Switch.vue +180 -180
  121. package/components/common/diagramMain/switch/SwitchSelected.vue +111 -111
  122. package/components/common/monitor/advanced/table/tableOld/TableOld.vue +93 -93
  123. package/components/common/monitor/utilization/lib/models/enums.ts +4 -4
  124. package/components/common/wizards/network/add/Add.vue +1 -0
  125. package/package.json +1 -1
@@ -0,0 +1,300 @@
1
+ import type { UI_I_Localization } from '~/lib/models/interfaces'
2
+ import type { UI_I_CollapseNavItem } from '~/components/atoms/collapse/lib/models/interfaces'
3
+ import type {
4
+ UI_I_Network,
5
+ UI_I_NetworkSummaryPortletListItem,
6
+ } from '~/components/common/diagramMain/lib/models/interfaces'
7
+ import {
8
+ UI_E_IYNOption,
9
+ UI_E_IBSTLoadBalancingMode,
10
+ UI_E_ICBLinkDetectionMode,
11
+ } from '~/components/common/diagramMain/lib/models/enums'
12
+ export const portViewSettingsModalTabsFunc = (
13
+ localization: UI_I_Localization
14
+ ): UI_I_CollapseNavItem[] => [
15
+ {
16
+ text: localization.common.properties,
17
+ value: 1,
18
+ testId: 'vm-kernel-adapter-view-properties-settings',
19
+ },
20
+ {
21
+ text: localization.common.ipSettings,
22
+ value: 2,
23
+ testId: 'vm-kernel-adapter-view-ip-settings',
24
+ },
25
+ {
26
+ text: localization.common.policies,
27
+ value: 3,
28
+ testId: 'vm-kernel-adapter-view-policies-settings',
29
+ },
30
+ ]
31
+
32
+ export const portViewSettingsFunc = (
33
+ localization: UI_I_Localization,
34
+ initialData: UI_I_Network
35
+ ): any => {
36
+ let enabledServices = ''
37
+ initialData.sysx?.services.Management &&
38
+ (enabledServices += localization.common.management + '\n')
39
+ initialData.sysx?.services.VMotion &&
40
+ (enabledServices += localization.common.vMotion + '\n')
41
+ initialData.sysx?.services.Provisioning &&
42
+ (enabledServices += localization.common.provisioning + '\n')
43
+ initialData.sysx?.services.VSAN &&
44
+ (enabledServices += localization.common.vSAN + '\n')
45
+ initialData.sysx?.services.FaultToleranceLogging &&
46
+ (enabledServices += localization.common.faultToleranceLogging + '\n')
47
+ initialData.sysx?.services.VSphereReplication &&
48
+ (enabledServices += localization.common.procuratorReplication + '\n')
49
+ initialData.sysx?.services.VSphereReplicationNFC &&
50
+ (enabledServices += localization.common.procuratorReplicationNFC + '\n')
51
+ initialData.sysx?.services.VSphereBackupNFC &&
52
+ (enabledServices += localization.common.procuratorBackupNFC + '\n')
53
+ initialData.sysx?.services.NVMeOverTCP &&
54
+ (enabledServices += localization.common.nvmEOverTCP + '\n')
55
+ initialData.sysx?.services.NVMeOverRDMA &&
56
+ (enabledServices += localization.common.nvmEOverRDMA + '\n')
57
+
58
+ const loadBalancing =
59
+ (
60
+ initialData.nicTeamingPolicy as UI_I_NetworkSummaryPortletListItem<UI_E_IBSTLoadBalancingMode>[]
61
+ )?.find(
62
+ (
63
+ teaming: UI_I_NetworkSummaryPortletListItem<UI_E_IBSTLoadBalancingMode>
64
+ ) => teaming.id === 'mode'
65
+ )?.initialValue?.value || UI_E_IBSTLoadBalancingMode.BACKUP
66
+
67
+ let loadBalancingValue: string
68
+
69
+ switch (loadBalancing) {
70
+ case UI_E_IBSTLoadBalancingMode.BACKUP:
71
+ loadBalancingValue = localization.common.useExplicitFailoverOrder
72
+ break
73
+ case UI_E_IBSTLoadBalancingMode.SLB:
74
+ loadBalancingValue = localization.common.routeBasedSourceMacHash
75
+ break
76
+ case UI_E_IBSTLoadBalancingMode.TCP:
77
+ loadBalancingValue = localization.common.routeBasedIpHash
78
+ break
79
+ default:
80
+ loadBalancingValue = '--'
81
+ }
82
+
83
+ return [
84
+ {
85
+ title: localization.common.portProperties,
86
+ id: 1,
87
+ type: 1,
88
+ rows: [
89
+ {
90
+ name: localization.common.networkLabel + ':',
91
+ value: initialData.title,
92
+ },
93
+ {
94
+ name: localization.common.vlanId + ':',
95
+ value: initialData.vlanId,
96
+ },
97
+ {
98
+ name: localization.common.tcpIpStack + ':',
99
+ value: localization.common[initialData.sysx?.tcp_stack || 'default'],
100
+ },
101
+ {
102
+ name: localization.common.enabledServices + ':',
103
+ value: enabledServices,
104
+ },
105
+ ],
106
+ },
107
+ {
108
+ title: localization.common.ipV4Settings,
109
+ id: 2,
110
+ type: 2,
111
+ rows: initialData.sysx?.ipv4_settings.auto
112
+ ? [
113
+ {
114
+ name: localization.common.dhcp + ':',
115
+ value: localization.common.enabled,
116
+ },
117
+ ]
118
+ : [
119
+ {
120
+ name: localization.common.dhcp + ':',
121
+ value: localization.common.disabled,
122
+ },
123
+ {
124
+ name: localization.common.ipv4address + ':',
125
+ value: initialData.sysx?.ipv4_settings.ipv4,
126
+ // (${localization.static})
127
+ },
128
+ {
129
+ name: localization.common.subnetMask + ':',
130
+ value: initialData.sysx?.ipv4_settings.mask,
131
+ },
132
+ {
133
+ name: localization.common.defaultGateway + ':',
134
+ value: initialData.sysx?.ipv4_settings.gateway,
135
+ },
136
+ {
137
+ name: localization.common.dnsServerAddresses + ':',
138
+ value: ['--'],
139
+ },
140
+ ],
141
+ },
142
+ {
143
+ title: localization.common.nicSettings,
144
+ id: 3,
145
+ type: 1,
146
+ rows: [
147
+ {
148
+ name: localization.common.macAddress + ':',
149
+ // value: '02:00:2f:fb:9a:6b',
150
+ },
151
+ {
152
+ name: localization.common.mtu + ':',
153
+ value: initialData.sysx?.mtu,
154
+ },
155
+ ],
156
+ },
157
+
158
+ {
159
+ title: localization.common.security,
160
+ id: 4,
161
+ type: 3,
162
+ rows: [
163
+ {
164
+ name: localization.common.promiscuousMode + ':',
165
+ value:
166
+ (
167
+ initialData.securityPolicy as UI_I_NetworkSummaryPortletListItem<UI_E_IYNOption>[]
168
+ )?.find(
169
+ (sec: UI_I_NetworkSummaryPortletListItem<UI_E_IYNOption>) =>
170
+ sec.id === 'promiscuous_mode'
171
+ )?.initialValue?.value === UI_E_IYNOption.YES
172
+ ? localization.common.accept
173
+ : localization.common.reject,
174
+ },
175
+ {
176
+ name: localization.common.macAddressChanges + ':',
177
+ value:
178
+ (
179
+ initialData.securityPolicy as UI_I_NetworkSummaryPortletListItem<UI_E_IYNOption>[]
180
+ )?.find(
181
+ (sec: UI_I_NetworkSummaryPortletListItem<UI_E_IYNOption>) =>
182
+ sec.id === 'mac_change'
183
+ )?.initialValue?.value === UI_E_IYNOption.YES
184
+ ? localization.common.accept
185
+ : localization.common.reject,
186
+ },
187
+ {
188
+ name: localization.common.forgedTransmits + ':',
189
+ value:
190
+ (
191
+ initialData.securityPolicy as UI_I_NetworkSummaryPortletListItem<UI_E_IYNOption>[]
192
+ )?.find(
193
+ (sec: UI_I_NetworkSummaryPortletListItem<UI_E_IYNOption>) =>
194
+ sec.id === 'forged_transmits'
195
+ )?.initialValue?.value === UI_E_IYNOption.YES
196
+ ? localization.common.accept
197
+ : localization.common.reject,
198
+ },
199
+ ],
200
+ },
201
+ {
202
+ title: localization.common.trafficShaping,
203
+ id: 5,
204
+ type: 3,
205
+ rows: [
206
+ {
207
+ name: localization.common.averageBandwidth + ':',
208
+ value: initialData.shapingPolicy?.[0].initialValue.value
209
+ ? `${initialData.average_bw} ${localization.common.kbitS}`
210
+ : '--',
211
+ },
212
+ {
213
+ name: localization.common.peakBandwidth + ':',
214
+ value: initialData.shapingPolicy?.[0].initialValue.value
215
+ ? `${initialData.peak_bw} ${localization.common.kbitS}`
216
+ : '--',
217
+ },
218
+ {
219
+ name: localization.common.burstSize + ':',
220
+ value: initialData.shapingPolicy?.[0].initialValue.value
221
+ ? `${initialData.burst_size} ${localization.common.kb}`
222
+ : '--',
223
+ },
224
+ ],
225
+ },
226
+ {
227
+ title: localization.common.teamingAndFailover,
228
+ id: 6,
229
+ type: 3,
230
+ rows: [
231
+ {
232
+ name: localization.common.loadBalancing + ':',
233
+ value: loadBalancingValue,
234
+ },
235
+ {
236
+ name: localization.common.networkFailureDetection + ':',
237
+ value:
238
+ (
239
+ initialData.nicTeamingPolicy as UI_I_NetworkSummaryPortletListItem<UI_E_ICBLinkDetectionMode>[]
240
+ )?.find(
241
+ (
242
+ teaming: UI_I_NetworkSummaryPortletListItem<UI_E_ICBLinkDetectionMode>
243
+ ) => teaming.id === 'link_detect'
244
+ )?.initialValue?.value === 1
245
+ ? localization.common.linkStatusOnly
246
+ : localization.common.beaconProbing,
247
+ },
248
+ {
249
+ name: localization.common.notifySwitches + ':',
250
+ value:
251
+ (
252
+ initialData.nicTeamingPolicy as UI_I_NetworkSummaryPortletListItem<UI_E_IYNOption>[]
253
+ )?.find(
254
+ (teaming: UI_I_NetworkSummaryPortletListItem<UI_E_IYNOption>) =>
255
+ teaming.id === 'notify_switches'
256
+ )?.initialValue?.value === UI_E_IYNOption.YES
257
+ ? localization.common.yes
258
+ : localization.common.no,
259
+ },
260
+ {
261
+ name: localization.common.failback + ':',
262
+ value:
263
+ (
264
+ initialData.nicTeamingPolicy as UI_I_NetworkSummaryPortletListItem<UI_E_IYNOption>[]
265
+ )?.find(
266
+ (teaming: UI_I_NetworkSummaryPortletListItem<UI_E_IYNOption>) =>
267
+ teaming.id === 'failback'
268
+ )?.initialValue?.value === UI_E_IYNOption.YES
269
+ ? localization.common.yes
270
+ : localization.common.no,
271
+ },
272
+ {
273
+ name: localization.networks.activeAdapters + ':',
274
+ value: initialData.activeAdapters,
275
+ },
276
+ {
277
+ name: localization.common.standbyAdapters + ':',
278
+ value: initialData.standbyAdapters,
279
+ },
280
+ {
281
+ name: localization.common.unusedAdapters + ':',
282
+ value: initialData.unusedAdapters,
283
+ },
284
+ ],
285
+ },
286
+ ]
287
+ }
288
+
289
+ export const portEditSettingsTabsFunc = (
290
+ localization: UI_I_Localization
291
+ ): any[] => [
292
+ {
293
+ value: '1',
294
+ text: localization.common.portProperties,
295
+ },
296
+ {
297
+ value: '2',
298
+ text: localization.common.ipV4Settings,
299
+ },
300
+ ]
@@ -0,0 +1,12 @@
1
+ import type { T_VmKernelAdaptersTableItemsTuple } from '~/components/common/configure/vmkernelAdapters/tableView/lib/models/types'
2
+
3
+ export const vmKernelAdaptersTableItemsTuple: T_VmKernelAdaptersTableItemsTuple =
4
+ [
5
+ '',
6
+ 'device',
7
+ 'networkLabel',
8
+ 'switch',
9
+ 'ipAddress',
10
+ 'tcpStack',
11
+ 'enabledServices',
12
+ ]
@@ -0,0 +1,166 @@
1
+ import type {
2
+ UI_I_HeadItem,
3
+ UI_I_ColumnKey,
4
+ UI_I_BodyItem,
5
+ } from '~/components/atoms/table/dataGrid/lib/models/interfaces'
6
+ import type { UI_I_Localization } from '~/lib/models/interfaces'
7
+ import { base64 } from '~/lib/utils/base64'
8
+ import {
9
+ constructHeadItem,
10
+ constructColumnKey,
11
+ } from '~/components/atoms/table/dataGrid/lib/utils/constructDataTable'
12
+ import type { I_VmKernelAdapter } from '~/components/common/configure/vmkernelAdapters/tableView/lib/models/interfaces'
13
+ import { vmKernelAdaptersTableItemsTuple } from '~/components/common/configure/vmkernelAdapters/tableView/lib/config/tableKeys'
14
+
15
+ const getItems = (
16
+ localization: UI_I_Localization
17
+ ): [string, boolean, string, string, boolean][] => {
18
+ return [
19
+ ['', true, '38px', vmKernelAdaptersTableItemsTuple[0], false],
20
+ [
21
+ localization.common.device,
22
+ true,
23
+ '110px',
24
+ vmKernelAdaptersTableItemsTuple[1],
25
+ true,
26
+ ],
27
+ [
28
+ localization.common.networkLabel,
29
+ true,
30
+ '140px',
31
+ vmKernelAdaptersTableItemsTuple[2],
32
+ true,
33
+ ],
34
+ [
35
+ localization.common.switch,
36
+ true,
37
+ '120px',
38
+ vmKernelAdaptersTableItemsTuple[3],
39
+ true,
40
+ ],
41
+ [
42
+ localization.common.ipAddress,
43
+ true,
44
+ '130px',
45
+ vmKernelAdaptersTableItemsTuple[4],
46
+ true,
47
+ ],
48
+ [
49
+ localization.common.tcpIpStack,
50
+ true,
51
+ '135px',
52
+ vmKernelAdaptersTableItemsTuple[5],
53
+ true,
54
+ ],
55
+ [
56
+ localization.common.enabledServices,
57
+ true,
58
+ '160px',
59
+ vmKernelAdaptersTableItemsTuple[6],
60
+ true,
61
+ ],
62
+ ]
63
+ }
64
+ export const columnKeys = (
65
+ localization: UI_I_Localization
66
+ ): UI_I_ColumnKey[] => {
67
+ const result: UI_I_ColumnKey[] = []
68
+ getItems(localization).forEach((item, i) => {
69
+ const col = i === 0 || i === 1 ? 'icon' : `col${i}`
70
+ result.push(
71
+ constructColumnKey(col, item[0], item[1], `show-column-${item[3]}`)
72
+ )
73
+ })
74
+ return result
75
+ }
76
+ export const headItems = (localization: UI_I_Localization): UI_I_HeadItem[] => {
77
+ const result: UI_I_HeadItem[] = []
78
+ getItems(localization).forEach((item, i) => {
79
+ const col = i === 0 || i === 1 ? 'icon' : `col${i}`
80
+ result.push(
81
+ constructHeadItem(
82
+ col,
83
+ item[0],
84
+ item[3],
85
+ item[4],
86
+ item[2],
87
+ undefined,
88
+ `show-column-${item[3]}`
89
+ )
90
+ )
91
+ })
92
+ return result
93
+ }
94
+
95
+ export const bodyItems = (data: I_VmKernelAdapter[]): UI_I_BodyItem[][] => {
96
+ const bodyItems: UI_I_BodyItem[][] = []
97
+ data.forEach((vmKernelAdapter: I_VmKernelAdapter, key) => {
98
+ const networkId = base64
99
+ .encode(vmKernelAdapter[vmKernelAdaptersTableItemsTuple[2]])
100
+ .replace(/=/g, '')
101
+ const sysx = vmKernelAdapter[vmKernelAdaptersTableItemsTuple[1]]
102
+ const testId = `${sysx}-${
103
+ vmKernelAdapter[vmKernelAdaptersTableItemsTuple[2]]
104
+ }`
105
+
106
+ const hiddenTextIcon: any = {
107
+ name: 'doubleArrows',
108
+ text: '',
109
+ iconClassName: '',
110
+ id: `${sysx}-${networkId}`,
111
+ }
112
+
113
+ bodyItems.push([
114
+ {
115
+ key: 'icon',
116
+ text: '',
117
+ data: hiddenTextIcon,
118
+ id: key,
119
+ testId: `${testId}`,
120
+ },
121
+ {
122
+ key: 'icon',
123
+ text: sysx,
124
+ data: {
125
+ name: 'hidden-text-triangle',
126
+ iconClassName: 'network-lib-ui-icon-virtualAdapter',
127
+ },
128
+ id: key,
129
+ testId: `vm-kernel-table-${testId}-row-item`,
130
+ },
131
+ {
132
+ key: 'icon',
133
+ text: vmKernelAdapter[vmKernelAdaptersTableItemsTuple[2]],
134
+ data: { iconClassName: 'vsphere-icon-network', id: networkId },
135
+ id: key,
136
+ testId: `vm-kernel-table-${testId}-row-item`,
137
+ },
138
+ {
139
+ key: 'icon',
140
+ text: vmKernelAdapter[vmKernelAdaptersTableItemsTuple[3]],
141
+ data: { iconClassName: 'network-lib-ui-icon-vswitch' },
142
+ id: key,
143
+ testId: `vm-kernel-table-${testId}-row-item`,
144
+ },
145
+ {
146
+ key: 'col4',
147
+ text: vmKernelAdapter[vmKernelAdaptersTableItemsTuple[4]],
148
+ id: key,
149
+ testId: `vm-kernel-table-${testId}-row-item`,
150
+ },
151
+ {
152
+ key: 'col5',
153
+ text: vmKernelAdapter[vmKernelAdaptersTableItemsTuple[5]],
154
+ id: key,
155
+ testId: `vm-kernel-table-${testId}-row-item`,
156
+ },
157
+ {
158
+ key: 'col6',
159
+ text: vmKernelAdapter[vmKernelAdaptersTableItemsTuple[6]].join(', '),
160
+ id: key,
161
+ testId: `vm-kernel-table-${testId}-row-item`,
162
+ },
163
+ ])
164
+ })
165
+ return bodyItems
166
+ }
@@ -0,0 +1,9 @@
1
+ export interface I_VmKernelAdapter {
2
+ id: string
3
+ device: string
4
+ networkLabel: string
5
+ switch: string
6
+ ipAddress: string
7
+ tcpStack: string
8
+ enabledServices: string[]
9
+ }
@@ -0,0 +1,9 @@
1
+ export type T_VmKernelAdaptersTableItemsTuple = [
2
+ '',
3
+ 'device',
4
+ 'networkLabel',
5
+ 'switch',
6
+ 'ipAddress',
7
+ 'tcpStack',
8
+ 'enabledServices'
9
+ ]
@@ -0,0 +1,27 @@
1
+ import type { UI_I_Localization } from '~/lib/models/interfaces'
2
+ import type { UI_I_Network } from '~/components/common/diagramMain/lib/models/interfaces'
3
+ import type { I_VmKernelAdapter } from '~/components/common/configure/vmkernelAdapters/tableView/lib/models/interfaces'
4
+
5
+ export const constructNetworkTableFunc = (
6
+ networks: UI_I_Network[] = [],
7
+ localization: UI_I_Localization
8
+ ): Partial<I_VmKernelAdapter>[] => {
9
+ return networks
10
+ .filter((network: UI_I_Network) => network.sysx)
11
+ .map((network: UI_I_Network) => {
12
+ const enabledServices: string[] = []
13
+
14
+ for (const [key, value] of Object.entries(network.sysx?.services || {})) {
15
+ value && enabledServices.push(key)
16
+ }
17
+
18
+ return {
19
+ device: network.sysx?.id || '--',
20
+ networkLabel: network.title || '--',
21
+ switch: network.switchName || '--',
22
+ ipAddress: (network.sysx!.ipv4_settings?.ipv4 as string) || '--',
23
+ tcpStack: localization.common[network.sysx!.tcp_stack],
24
+ enabledServices,
25
+ }
26
+ })
27
+ }