bfg-common 1.3.239 → 1.3.241

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 (163) hide show
  1. package/components/common/BadBrowser.vue +16 -12
  2. package/components/common/accordion/Accordion.vue +1 -0
  3. package/components/common/accordion/Recursion.vue +2 -0
  4. package/components/common/accordion/lib/models/interfaces.ts +1 -0
  5. package/components/common/adapterManager/AddAdapterModal.vue +11 -4
  6. package/components/common/adapterManager/AddAdapterWarningModal.vue +1 -0
  7. package/components/common/adapterManager/ui/actions/AddAdapterButton.vue +2 -0
  8. package/components/common/adapterManager/ui/actions/MoveDownAdapterButton.vue +2 -0
  9. package/components/common/adapterManager/ui/actions/MoveUpAdapterButton.vue +2 -0
  10. package/components/common/adapterManager/ui/actions/RemoveAdapterButton.vue +2 -0
  11. package/components/common/adapterManager/ui/table/Adapters.vue +14 -13
  12. package/components/common/adapterManager/ui/table/Header.vue +6 -4
  13. package/components/common/adapterManager/ui/table/Table.vue +13 -4
  14. package/components/common/browse/Browse.vue +5 -1
  15. package/components/common/browse/blocks/Container.vue +3 -0
  16. package/components/common/browse/blocks/contents/Files.vue +1 -0
  17. package/components/common/context/ContextRecursion.vue +6 -1
  18. package/components/common/details/DetailsItem.vue +3 -0
  19. package/components/common/diagramMain/Header.vue +4 -0
  20. package/components/common/diagramMain/adapter/AdapterItem.vue +2 -0
  21. package/components/common/diagramMain/adapter/Contents.vue +2 -0
  22. package/components/common/diagramMain/lib/models/interfaces.ts +10 -0
  23. package/components/common/diagramMain/modals/editSettings/tabs/NetworkProperties.vue +1 -0
  24. package/components/common/diagramMain/modals/editSettings/tabs/Security.vue +13 -27
  25. package/components/common/diagramMain/modals/editSettings/tabs/SwitchProperties.vue +1 -0
  26. package/components/common/diagramMain/modals/editSettings/tabs/TeamingFailover.vue +3 -0
  27. package/components/common/diagramMain/modals/editSettings/tabs/TrafficShaping.vue +8 -0
  28. package/components/common/diagramMain/modals/editSettings/tabs/port/IpvFourSettings.vue +6 -0
  29. package/components/common/diagramMain/modals/editSettings/tabs/port/PortProperties.vue +2 -0
  30. package/components/common/diagramMain/modals/lib/config/networkModal.ts +4 -0
  31. package/components/common/diagramMain/modals/lib/config/portModal.ts +7 -2
  32. package/components/common/diagramMain/modals/lib/mappers/mappers.ts +36 -0
  33. package/components/common/diagramMain/modals/migrateVmkernelAdapter/steps/ConnectionSettings.vue +19 -13
  34. package/components/common/diagramMain/modals/remove/RemoveModal.vue +5 -0
  35. package/components/common/diagramMain/modals/viewSettings/ViewSettings.vue +11 -7
  36. package/components/common/diagramMain/network/Contents.vue +5 -4
  37. package/components/common/diagramMain/port/Port.vue +1 -0
  38. package/components/common/feedback/Buttons.vue +2 -0
  39. package/components/common/feedback/Feedback.vue +9 -2
  40. package/components/common/feedback/Message.vue +9 -0
  41. package/components/common/feedback/VisitPortal.vue +11 -2
  42. package/components/common/help/navbar/left/Left.vue +1 -0
  43. package/components/common/help/navbar/right/Right.vue +12 -2
  44. package/components/common/help/navbar/right/lib/models/interfaces.ts +1 -0
  45. package/components/common/home/alertsTable/AlertsTable.vue +1 -0
  46. package/components/common/modals/Confirmation.vue +10 -2
  47. package/components/common/modals/Rename.vue +1 -0
  48. package/components/common/monitor/advanced/tools/Tools.vue +10 -1
  49. package/components/common/monitor/advanced/tools/chartOptionsModal/actions/Actions.vue +7 -1
  50. package/components/common/monitor/advanced/tools/chartOptionsModal/actions/saveOptionsModal/SaveOptionsModal.vue +6 -1
  51. package/components/common/monitor/advanced/tools/chartOptionsModal/counters/timespan/form/Form.vue +14 -1
  52. package/components/common/monitor/overview/filters/Filters.vue +12 -5
  53. package/components/common/monitor/overview/filters/customIntervalModal/CustomIntervalModal.vue +4 -0
  54. package/components/common/pages/Tasks.vue +120 -120
  55. package/components/common/perPage/PerPage.vue +1 -0
  56. package/components/common/recursionTree/RecursionTree.vue +205 -203
  57. package/components/common/recursionTree/lib/models/interfaces.ts +4 -2
  58. package/components/common/select/button/ButtonDropdown.vue +2 -0
  59. package/components/common/select/button/lib/models/interfaces.ts +1 -0
  60. package/components/common/select/input/Input.vue +1 -0
  61. package/components/common/select/radio/RadioGroup.vue +2 -0
  62. package/components/common/select/radio/lib/models/interfaces.ts +1 -0
  63. package/components/common/shortcuts/Block.vue +2 -0
  64. package/components/common/shortcuts/Category.vue +1 -0
  65. package/components/common/shortcuts/lib/models/interfaces.ts +1 -0
  66. package/components/common/spiceConsole/Drawer.vue +4 -0
  67. package/components/common/spiceConsole/keyboard/Keyboard.vue +1 -0
  68. package/components/common/spiceConsole/keyboard/lib/config/keyboardRows.ts +81 -6
  69. package/components/common/spiceConsole/keyboard/lib/models/interfaces.ts +1 -0
  70. package/components/common/split/horizontal/Horizontal.vue +1 -0
  71. package/components/common/vm/actions/add/Add.vue +576 -575
  72. package/components/common/vm/actions/clone/select/options/Options.vue +9 -3
  73. package/components/common/vm/actions/common/customizeHardware/virtualHardware/bus/Bus.vue +5 -1
  74. package/components/common/vm/actions/common/customizeHardware/virtualHardware/cdDvdDrive/CdDvdDrive.vue +7 -2
  75. package/components/common/vm/actions/common/customizeHardware/virtualHardware/cdDvdDrive/media/Media.vue +2 -0
  76. package/components/common/vm/actions/common/customizeHardware/virtualHardware/cpu/CoresPerSocket.vue +1 -0
  77. package/components/common/vm/actions/common/customizeHardware/virtualHardware/cpu/CpuHotPlug.vue +1 -0
  78. package/components/common/vm/actions/common/customizeHardware/virtualHardware/cpu/CpuModel.vue +225 -220
  79. package/components/common/vm/actions/common/customizeHardware/virtualHardware/cpu/Hv.vue +2 -0
  80. package/components/common/vm/actions/common/customizeHardware/virtualHardware/cpu/Iommu.vue +1 -0
  81. package/components/common/vm/actions/common/customizeHardware/virtualHardware/cpu/Pc.vue +1 -0
  82. package/components/common/vm/actions/common/customizeHardware/virtualHardware/cpu/Sa.vue +2 -0
  83. package/components/common/vm/actions/common/customizeHardware/virtualHardware/cpu/shares/Shares.vue +5 -1
  84. package/components/common/vm/actions/common/customizeHardware/virtualHardware/cpu/tooltip/Tooltip.vue +1 -0
  85. package/components/common/vm/actions/common/customizeHardware/virtualHardware/limit/Limit.vue +2 -1
  86. package/components/common/vm/actions/common/customizeHardware/virtualHardware/memory/Memory.vue +1 -0
  87. package/components/common/vm/actions/common/customizeHardware/virtualHardware/memory/MemoryHotPlug.vue +1 -0
  88. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newHardDisk/Location.vue +6 -6
  89. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newHardDisk/NewHardDisk.vue +5 -6
  90. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newHardDisk/cache/Cache.vue +1 -0
  91. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newHardDisk/limitIops/LimitIops.vue +1 -0
  92. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newHardDisk/mode/Mode.vue +1 -0
  93. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newHardDisk/provisioning/Provisioning.vue +1 -0
  94. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newHardDisk/sharing/Sharing.vue +1 -0
  95. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newNetwork/Location.vue +2 -0
  96. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newNetwork/NewNetwork.vue +295 -294
  97. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newNetwork/adapterType/AdapterType.vue +1 -0
  98. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newNetwork/macAddress/MacAddress.vue +12 -4
  99. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newPciDevice/directPathIo/DirectPathIo.vue +5 -1
  100. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newPciDevice/nvidiaGrid/NvidiaGrid.vue +2 -1
  101. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newPciDevice/typeSelection/TypeSelection.vue +2 -1
  102. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newUsbController/NewUsbController.vue +1 -0
  103. package/components/common/vm/actions/common/customizeHardware/virtualHardware/reservation/Reservation.vue +3 -1
  104. package/components/common/vm/actions/common/customizeHardware/virtualHardware/videoCard/Graphics.vue +6 -1
  105. package/components/common/vm/actions/common/customizeHardware/virtualHardware/videoCard/TotalVideoMemory.vue +2 -1
  106. package/components/common/vm/actions/common/customizeHardware/virtualHardware/videoCard/VideoCard.vue +1 -0
  107. package/components/common/vm/actions/common/customizeHardware/virtualHardware/videoCard/model/Model.vue +1 -0
  108. package/components/common/vm/actions/common/customizeHardware/virtualHardware/videoCard/numberDisplays/NumberDisplays.vue +1 -0
  109. package/components/common/vm/actions/common/customizeHardware/vmoptions/bootOptions/Menu.vue +6 -1
  110. package/components/common/vm/actions/common/customizeHardware/vmoptions/bootOptions/Secure.vue +6 -1
  111. package/components/common/vm/actions/common/customizeHardware/vmoptions/bootOptions/delay/Delay.vue +5 -1
  112. package/components/common/vm/actions/common/customizeHardware/vmoptions/bootOptions/firmware/Firmware.vue +1 -0
  113. package/components/common/vm/actions/common/customizeHardware/vmoptions/bootOptions/order/Order.vue +5 -1
  114. package/components/common/vm/actions/common/customizeHardware/vmoptions/bootOptions/order/lib/models/interfaces.ts +1 -0
  115. package/components/common/vm/actions/common/customizeHardware/vmoptions/generalOptions/GeneralOptions.vue +4 -1
  116. package/components/common/vm/actions/common/customizeHardware/vmoptions/remoteConsoleOptions/CopyPaste.vue +1 -0
  117. package/components/common/vm/actions/common/customizeHardware/vmoptions/remoteConsoleOptions/FileTransfer.vue +1 -0
  118. package/components/common/vm/actions/common/customizeHardware/vmoptions/remoteConsoleOptions/FolderSharing.vue +1 -0
  119. package/components/common/vm/actions/common/customizeHardware/vmoptions/remoteConsoleOptions/PlaybackCompression.vue +1 -0
  120. package/components/common/vm/actions/common/customizeHardware/vmoptions/remoteConsoleOptions/PowerControl.vue +1 -0
  121. package/components/common/vm/actions/common/customizeHardware/vmoptions/remoteConsoleOptions/imgCompression/ImgCompression.vue +1 -0
  122. package/components/common/vm/actions/common/customizeHardware/vmoptions/remoteConsoleOptions/jpegCompression/JpegCompression.vue +1 -0
  123. package/components/common/vm/actions/common/customizeHardware/vmoptions/remoteConsoleOptions/keymap/Keymap.vue +2 -1
  124. package/components/common/vm/actions/common/customizeHardware/vmoptions/remoteConsoleOptions/mouseMode/MouseMode.vue +6 -1
  125. package/components/common/vm/actions/common/customizeHardware/vmoptions/remoteConsoleOptions/password/Password.vue +7 -1
  126. package/components/common/vm/actions/common/customizeHardware/vmoptions/remoteConsoleOptions/sharePolicy/SharePolicy.vue +5 -1
  127. package/components/common/vm/actions/common/customizeHardware/vmoptions/remoteConsoleOptions/streamingMode/StreamingMode.vue +1 -0
  128. package/components/common/vm/actions/common/customizeHardware/vmoptions/remoteConsoleOptions/type/Type.vue +1 -0
  129. package/components/common/vm/actions/common/customizeHardware/vmoptions/remoteConsoleOptions/usbRedirection/UsbRedirection.vue +2 -1
  130. package/components/common/vm/actions/common/customizeHardware/vmoptions/remoteConsoleOptions/zlibCompression/ZlibCompression.vue +1 -0
  131. package/components/common/vm/actions/common/customizeHardware/vmoptions/tools/Tools.vue +6 -1
  132. package/components/common/vm/actions/common/select/compatibility/Compatibility.vue +31 -27
  133. package/components/common/vm/actions/common/select/name/Name.vue +7 -1
  134. package/components/common/vm/actions/common/select/os/os.vue +7 -1
  135. package/components/common/weekSelect/WeekSelect.vue +143 -112
  136. package/components/common/weekSelect/lib/models/interfaces.ts +1 -0
  137. package/components/common/wizards/datastore/add/local/createName/CreateName.vue +1 -0
  138. package/components/common/wizards/datastore/add/nfs/accessibility/Accessibility.vue +8 -7
  139. package/components/common/wizards/datastore/add/nfs/configuration/Configuration.vue +9 -1
  140. package/components/common/wizards/datastore/add/nfs/configuration/serversList/DeletePopover.vue +6 -3
  141. package/components/common/wizards/datastore/add/nfs/kerberosAuthentication/KerberosAuthentication.vue +1 -0
  142. package/components/common/wizards/datastore/add/nfs/kerberosAuthentication/lib/config/radioOptions.ts +3 -0
  143. package/components/common/wizards/datastore/add/sharedStorm/deviceSelection/DeviceSelection.vue +2 -0
  144. package/components/common/wizards/datastore/add/sharedStorm/partitionConfiguration/PartitionConfiguration.vue +2 -0
  145. package/components/common/wizards/datastore/add/types/Types.vue +1 -0
  146. package/components/common/wizards/network/add/modals/SelectNetwork.vue +16 -3
  147. package/components/common/wizards/network/add/modals/SelectStandardSwitch.vue +10 -2
  148. package/components/common/wizards/network/add/modals/SelectSwitch.vue +10 -2
  149. package/components/common/wizards/network/add/steps/ConnectionSettings.vue +5 -1
  150. package/components/common/wizards/network/add/steps/IpFourSettings.vue +12 -2
  151. package/components/common/wizards/network/add/steps/PortProperties.vue +16 -3
  152. package/components/common/wizards/network/add/steps/SelectConnectionType.vue +6 -3
  153. package/components/common/wizards/network/add/steps/SelectedTargetDevice.vue +11 -0
  154. package/components/common/wizards/vm/common/tooltip/Tooltip.vue +2 -0
  155. package/components/common/wizards/vm/migrate/select/network/Network.vue +1 -0
  156. package/components/common/wizards/vm/migrate/select/network/table/network/Network.vue +1 -0
  157. package/components/common/wizards/vm/migrate/select/storage/Storage.vue +5 -1
  158. package/components/common/wizards/vm/migrate/select/storage/configure/disk/Disk.vue +1 -0
  159. package/components/common/wizards/vm/migrate/select/storage/diskFormat/DiskFormat.vue +1 -0
  160. package/components/common/wizards/vm/migrate/select/storage/policy/Policy.vue +1 -0
  161. package/components/common/wizards/vm/migrate/select/storage/selectedPerDisk/SelectedPerDisk.vue +1 -0
  162. package/components/common/wizards/vm/migrate/select/targetServer/new/New.vue +9 -1
  163. package/package.json +1 -1
@@ -24,6 +24,7 @@
24
24
  <input
25
25
  id="status"
26
26
  v-model="fieldsValues.status.checked"
27
+ data-id="status-input"
27
28
  type="checkbox"
28
29
  />
29
30
  <label for="status" class="normal-weight">
@@ -36,6 +37,7 @@
36
37
  id="traffic-shaping-select"
37
38
  v-model.number="fieldsValues.status.selected"
38
39
  :disabled="!fieldsValues.status.checked"
40
+ data-id="traffic-shaping-select"
39
41
  name="selectName"
40
42
  >
41
43
  <option :label="localization.enabled" value="1">
@@ -67,6 +69,7 @@
67
69
  >
68
70
  <input
69
71
  id="traffic-shaping-override-average-input"
72
+ data-id="traffic-shaping-override-average-input"
70
73
  type="checkbox"
71
74
  />
72
75
  <label
@@ -89,6 +92,7 @@
89
92
  !fieldsValues.status.checked ||
90
93
  fieldsValues.status.selected === '0'
91
94
  "
95
+ data-id="average-input"
92
96
  name="average"
93
97
  :class="[
94
98
  'tooltip-field',
@@ -127,6 +131,7 @@
127
131
  >
128
132
  <input
129
133
  id="traffic-shaping-override-peak-input"
134
+ data-id="traffic-shaping-override-peak-input"
130
135
  type="checkbox"
131
136
  />
132
137
  <label
@@ -149,6 +154,7 @@
149
154
  !fieldsValues.status.checked ||
150
155
  fieldsValues.status.selected === '0'
151
156
  "
157
+ data-id="peak-input"
152
158
  name="peak"
153
159
  :class="[
154
160
  'tooltip-field',
@@ -187,6 +193,7 @@
187
193
  >
188
194
  <input
189
195
  id="traffic-shaping-override-burst-size-input"
196
+ data-id="traffic-shaping-override-burst-size-input"
190
197
  type="checkbox"
191
198
  />
192
199
  <label
@@ -209,6 +216,7 @@
209
216
  !fieldsValues.status.checked ||
210
217
  fieldsValues.status.selected === '0'
211
218
  "
219
+ data-id="burst-size-input"
212
220
  name="burst-size"
213
221
  :class="[
214
222
  'tooltip-field',
@@ -12,6 +12,7 @@
12
12
  <input
13
13
  id="Obtain"
14
14
  v-model="fieldsValues.ipv4Settings"
15
+ data-id="obtain-input"
15
16
  type="radio"
16
17
  value="0"
17
18
  name="IPv4-settings"
@@ -24,6 +25,7 @@
24
25
  <input
25
26
  id="static"
26
27
  v-model="fieldsValues.ipv4Settings"
28
+ data-id="static-input"
27
29
  type="radio"
28
30
  value="1"
29
31
  name="IPv4-settings"
@@ -51,6 +53,7 @@
51
53
  <input
52
54
  id="port-properties-network"
53
55
  v-model="fieldsValues.ipv4Address"
56
+ data-id="port-properties-network"
54
57
  type="text"
55
58
  placeholder="e.g. 192.168.1.1"
56
59
  :class="[
@@ -84,6 +87,7 @@
84
87
  <input
85
88
  id="subnet-mask"
86
89
  v-model="fieldsValues.subnetMask"
90
+ data-id="subnet-mask"
87
91
  type="text"
88
92
  placeholder="e.g. 255.255.255.0"
89
93
  :class="[
@@ -114,6 +118,7 @@
114
118
  <input
115
119
  id="default-gateway"
116
120
  v-model="fieldsValues.defaultGateway.checked"
121
+ data-id="default-gateway-checkbox"
117
122
  type="checkbox"
118
123
  />
119
124
  <label
@@ -132,6 +137,7 @@
132
137
  <input
133
138
  id="default-gateway"
134
139
  v-model="fieldsValues.defaultGateway.value"
140
+ data-id="default-gateway-tooltip-field"
135
141
  type="text"
136
142
  :disabled="!fieldsValues.defaultGateway.checked"
137
143
  placeholder="10.10.101.1"
@@ -32,6 +32,7 @@
32
32
  <input
33
33
  id="mtu"
34
34
  v-model="fieldsValues.mtu"
35
+ data-id="mtu-input"
35
36
  type="number"
36
37
  name="mtu"
37
38
  :class="[
@@ -69,6 +70,7 @@
69
70
  <input
70
71
  :id="`property-value-group-${key}`"
71
72
  v-model="fieldsValues.services[enabledService.modelValue]"
73
+ :data-id="enabledService.testId"
72
74
  type="checkbox"
73
75
  />
74
76
  {{ enabledService.label }}
@@ -276,6 +276,7 @@ export const teamingAndFailoverTemplateMakerFunc = (
276
276
  ): UI_I_TeamingAndFailoverTemplate[] => [
277
277
  {
278
278
  key: 'loadBalancing',
279
+ testId: 'loadBalancing',
279
280
  options: [
280
281
  {
281
282
  value: 3,
@@ -293,6 +294,7 @@ export const teamingAndFailoverTemplateMakerFunc = (
293
294
  },
294
295
  {
295
296
  key: 'networkFailureDetection',
297
+ testId: 'networkFailureDetection',
296
298
  options: [
297
299
  {
298
300
  value: 1,
@@ -302,6 +304,7 @@ export const teamingAndFailoverTemplateMakerFunc = (
302
304
  },
303
305
  {
304
306
  key: 'notifySwitches',
307
+ testId: 'notifySwitches',
305
308
  options: [
306
309
  {
307
310
  value: 2,
@@ -315,6 +318,7 @@ export const teamingAndFailoverTemplateMakerFunc = (
315
318
  },
316
319
  {
317
320
  key: 'failback',
321
+ testId: 'failback',
318
322
  options: [
319
323
  {
320
324
  value: 2,
@@ -191,18 +191,23 @@ export const portPropertiesEnabledServicesFunc = (
191
191
  mainLabel: localization.enabledServices,
192
192
  label: localization.provisioning,
193
193
  modelValue: 'provisioning',
194
+ testId: 'provisioning',
194
195
  },
195
196
  // {
196
197
  // label: localization.faultToleranceLogging,
197
198
  // modelValue: 'faultToleranceLogging',
198
199
  // },
199
- { label: localization.management, modelValue: 'management' },
200
+ {
201
+ label: localization.management,
202
+ modelValue: 'management',
203
+ testId: 'management',
204
+ },
200
205
  // { label: localization.procuratorReplication, modelValue: 'replication' },
201
206
  // {
202
207
  // label: localization.procuratorReplicationNFC,
203
208
  // modelValue: 'replicationNFC',
204
209
  // },
205
- { label: localization.vSAN, modelValue: 'vSAN' },
210
+ { label: localization.vSAN, modelValue: 'vSAN', testId: 'vSAN' },
206
211
  // { label: localization.procuratorBackupNFC, modelValue: 'backupNFC' },
207
212
  // { label: localization.nvmEOverTCP, modelValue: 'nVMeOverTCP' },
208
213
  // { label: localization.nvmEOverRDMA, modelValue: 'nVMeOverRDMA' },
@@ -3,6 +3,7 @@ import {
3
3
  UI_I_PortEditSendData,
4
4
  UI_I_PortPropertiesFields,
5
5
  UI_I_IpvFourSettingsFields,
6
+ UI_I_SwitchEditSendData,
6
7
  } from '~/components/common/diagramMain/lib/models/interfaces'
7
8
 
8
9
  export const portEditDataFunc = (
@@ -49,3 +50,38 @@ export const portEditDataFunc = (
49
50
 
50
51
  return body
51
52
  }
53
+
54
+ export const switchEditDataFunc = (
55
+ editFieldsData: UI_I_EditFieldsData,
56
+ id: string
57
+ ): UI_I_SwitchEditSendData => {
58
+ const body: UI_I_SwitchEditSendData = {
59
+ id,
60
+ mtu: editFieldsData.properties?.mtu,
61
+ nics: editFieldsData.teamingFailover?.adapters || {},
62
+ security: {
63
+ forged_transmits: editFieldsData.security?.forgedTransmits.selected,
64
+ mac_change: editFieldsData.security?.macAddressChanges.selected,
65
+ promiscuous: editFieldsData.security?.promiscuousMode.selected,
66
+ },
67
+ shaping: {},
68
+ teaming: {
69
+ mode: editFieldsData.teamingFailover?.loadBalancing.selected,
70
+ link_detection_mode:
71
+ editFieldsData.teamingFailover?.networkFailureDetection.selected,
72
+ notify_switches: editFieldsData.teamingFailover?.notifySwitches.selected,
73
+ failback: editFieldsData.teamingFailover?.failback.selected,
74
+ },
75
+ }
76
+
77
+ if (editFieldsData.trafficShaping?.status?.selected) {
78
+ body.shaping = {
79
+ enabled: true,
80
+ average_bw: editFieldsData.trafficShaping?.average,
81
+ peak_bw: editFieldsData.trafficShaping?.peak,
82
+ burst_size: editFieldsData.trafficShaping?.burstSize,
83
+ }
84
+ }
85
+
86
+ return body
87
+ }
@@ -23,6 +23,7 @@
23
23
  id="network-label"
24
24
  v-model="fields.networkLabel"
25
25
  name="network-label"
26
+ data-id="network-label-input"
26
27
  type="text"
27
28
  :class="[
28
29
  'tooltip-field port-properties-network-label',
@@ -85,11 +86,14 @@
85
86
  </template>
86
87
 
87
88
  <script setup lang="ts">
88
- import { UI_I_ArbitraryObject, UI_I_Localization } from '~/lib/models/interfaces'
89
+ import {
90
+ UI_I_ArbitraryObject,
91
+ UI_I_Localization,
92
+ } from '~/lib/models/interfaces'
89
93
  import { UI_I_ConnectionSettings } from '~/components/common/wizards/network/add/lib/models/interfaces'
90
94
  import { vlanIdSelectData } from '~/components/common/wizards/network/add/lib/config'
91
95
  import { UI_I_ErrorFields } from '~/components/atoms/wizard/lib/models/interfaces'
92
- import type Wizard from '~/components/atoms/wizard/lib/utils/utils';
96
+ import type Wizard from '~/components/atoms/wizard/lib/utils/utils'
93
97
  import {
94
98
  validateNetworkConnectionSettingsLocal,
95
99
  validateVlanIdConnectionSettingsLocal,
@@ -112,7 +116,9 @@ const emits = defineEmits<{
112
116
  (event: 'hide-alert', stepId: 1): void
113
117
  }>()
114
118
 
115
- const fields = ref<UI_I_ConnectionSettings>(useDeepCopy(props.connectionSettings))
119
+ const fields = ref<UI_I_ConnectionSettings>(
120
+ useDeepCopy(props.connectionSettings)
121
+ )
116
122
 
117
123
  let oldFields = useDeepCopy(fields.value)
118
124
 
@@ -120,18 +126,18 @@ watch(
120
126
  fields,
121
127
  (newFields: UI_I_ConnectionSettings) => {
122
128
  oldFields.vlanId !== newFields.vlanId &&
123
- validateVlanIdConnectionSettingsLocal(
124
- localization.value,
125
- newFields,
126
- props.wizard
127
- )
129
+ validateVlanIdConnectionSettingsLocal(
130
+ localization.value,
131
+ newFields,
132
+ props.wizard
133
+ )
128
134
 
129
135
  oldFields.networkLabel !== newFields.networkLabel &&
130
- validateNetworkConnectionSettingsLocal(
131
- localization.value,
132
- newFields,
133
- props.wizard
134
- )
136
+ validateNetworkConnectionSettingsLocal(
137
+ localization.value,
138
+ newFields,
139
+ props.wizard
140
+ )
135
141
 
136
142
  oldFields = useDeepCopy(fields.value)
137
143
 
@@ -66,6 +66,7 @@
66
66
  <button
67
67
  id="diagram-remove-modal-ok-button"
68
68
  type="button"
69
+ data-id="diagram-remove-modal-ok-button"
69
70
  class="btn btn-primary"
70
71
  @click="onHideModal"
71
72
  >
@@ -78,6 +79,7 @@
78
79
  <button
79
80
  id="diagram-remove-modal-no-button"
80
81
  type="button"
82
+ data-id="diagram-remove-modal-no-button"
81
83
  class="btn btn-outline"
82
84
  @click="onHideModal"
83
85
  >
@@ -86,6 +88,7 @@
86
88
  <button
87
89
  id="diagram-remove-modal-yes-button"
88
90
  type="button"
91
+ data-id="diagram-remove-modal-yes-button"
89
92
  class="btn btn-primary"
90
93
  @click="onRemove(props.id)"
91
94
  >
@@ -98,6 +101,7 @@
98
101
  <button
99
102
  id="diagram-remove-modal-cancel-button"
100
103
  type="button"
104
+ data-id="diagram-remove-modal-cancel-button"
101
105
  class="btn btn-outline"
102
106
  @click="onHideModal"
103
107
  >
@@ -106,6 +110,7 @@
106
110
  <button
107
111
  id="diagram-remove-modal-remove-button"
108
112
  type="button"
113
+ data-id="diagram-remove-modal-remove-button"
109
114
  class="btn btn-primary"
110
115
  @click="onRemove(props.id)"
111
116
  >
@@ -14,6 +14,7 @@
14
14
  open: isOpen,
15
15
  },
16
16
  ]"
17
+ data-id="virtual-switch-toggle-icon"
17
18
  @click="onToggle"
18
19
  />
19
20
  <span :class="{ 'title-with-collapse': props.withCollapse }">
@@ -81,13 +82,16 @@ import { UI_I_Localization } from '~/lib/models/interfaces'
81
82
  import { UI_I_ViewSettingsFields } from '~/components/common/diagramMain/lib/models/interfaces'
82
83
 
83
84
  // Props from up
84
- const props = withDefaults(defineProps<{
85
- viewSettingsField: UI_I_ViewSettingsFields
86
- viewName?: string
87
- withCollapse?: boolean
88
- }>(), {
89
- viewName: ''
90
- })
85
+ const props = withDefaults(
86
+ defineProps<{
87
+ viewSettingsField: UI_I_ViewSettingsFields
88
+ viewName?: string
89
+ withCollapse?: boolean
90
+ }>(),
91
+ {
92
+ viewName: '',
93
+ }
94
+ )
91
95
 
92
96
  // UI_I_Localization
93
97
  const localization = computed<UI_I_Localization>(() => useLocal())
@@ -11,7 +11,8 @@
11
11
  </foreignObject>
12
12
 
13
13
  <a
14
- :id="`network-${testId}`"
14
+ :id="`network-${props.network.id}`"
15
+ :data-id="`${props.testId}-link`"
15
16
  style="text-decoration: none"
16
17
  cursor="pointer"
17
18
  data-title="network-name-link"
@@ -51,7 +52,7 @@
51
52
  popup-class="diagram-actions__popup"
52
53
  :close-after-click="true"
53
54
  :items="networkPopupFields"
54
- :test-id="`network-${testId}-toggle`"
55
+ :test-id="`network-${props.network.id}-toggle`"
55
56
  @change="(value: string) => onShowModal(value, dataForSelectedNetwork)"
56
57
  />
57
58
  </div>
@@ -87,6 +88,7 @@
87
88
  x="24"
88
89
  :y="portsArrowPosition"
89
90
  cursor="pointer"
91
+ :data-id="`${props.testId}-toggle-ports`"
90
92
  @click="
91
93
  onTogglePorts(props.network.id, !props.network.toggle, props.diagramId)
92
94
  "
@@ -142,6 +144,7 @@ const props = defineProps<{
142
144
  inPortlet: boolean
143
145
  isNetworkSelectedWithClosedPorts: boolean
144
146
  diagramId: string
147
+ testId?: string
145
148
  }>()
146
149
 
147
150
  const emits = defineEmits<{
@@ -161,8 +164,6 @@ const emits = defineEmits<{
161
164
 
162
165
  const localization = computed<UI_I_Localization>(() => useLocal())
163
166
 
164
- const testId = computed<string>(() => props.network.id.replaceAll('=', '_'))
165
-
166
167
  const networkPopupFields = computed(() =>
167
168
  networkPopupFieldsFunc(
168
169
  localization.value,
@@ -22,6 +22,7 @@
22
22
  <a
23
23
  :id="testId"
24
24
  data-title="port-vm-name"
25
+ data-id="port-vm-name-select"
25
26
  cursor="pointer"
26
27
  @click="onSelectPort(props.network.id, props.port.id)"
27
28
  >
@@ -4,6 +4,7 @@
4
4
  <div class="icon-wrap">
5
5
  <atoms-the-icon
6
6
  id="showHelpInfo"
7
+ data-id="toggle-help-info-icon"
7
8
  fill="#0072a3"
8
9
  width="24px"
9
10
  height="24px"
@@ -36,6 +37,7 @@
36
37
  'btn btn-outline feedback-button',
37
38
  { active: item.key === props.select },
38
39
  ]"
40
+ data-id="feedback-button"
39
41
  @click="onSelect(item.key)"
40
42
  >
41
43
  <atoms-the-icon2
@@ -19,6 +19,7 @@
19
19
  v-if="!props.isHideCloseIcon"
20
20
  id="feedback-modal-close-icon"
21
21
  class="close"
22
+ data-id="feedback-modal-close-button"
22
23
  @click="hide"
23
24
  >
24
25
  <atoms-the-icon class="close-icon" name="close" />
@@ -45,6 +46,7 @@
45
46
  <button
46
47
  id="feedback-modal-cancel-button"
47
48
  class="btn btn-outline"
49
+ data-id="feedback-modal-cancel-button"
48
50
  @click="hide"
49
51
  >
50
52
  {{ localization.cancel }}
@@ -53,6 +55,7 @@
53
55
  class="btn btn-outline"
54
56
  :class="props.loading && 'modal-dialog__loader'"
55
57
  :disabled="!description"
58
+ data-id="submit-button"
56
59
  @click="submit"
57
60
  >
58
61
  <atoms-loader-pre-loader
@@ -115,8 +118,12 @@ const hide = (): void => {
115
118
  const submit = (): void => {
116
119
  if (type.value !== 0 && type.value !== 1) return
117
120
 
118
- const canvasData = (document.getElementById('feedbackImg') as HTMLCanvasElement).toDataURL()
119
- const canvasBlankData = (document.getElementById('feedbackImgBlank') as HTMLCanvasElement).toDataURL()
121
+ const canvasData = (
122
+ document.getElementById('feedbackImg') as HTMLCanvasElement
123
+ ).toDataURL()
124
+ const canvasBlankData = (
125
+ document.getElementById('feedbackImgBlank') as HTMLCanvasElement
126
+ ).toDataURL()
120
127
 
121
128
  const image = canvasData.match(/base64,(.+)/)?.[1] || ''
122
129
  emits('submit', {
@@ -8,6 +8,7 @@
8
8
  :disabled="props.type === undefined"
9
9
  class="clr-textarea ng-pristine ng-invalid ng-touched textarea"
10
10
  :placeholder="descriptionTextPlaceholder"
11
+ data-id="message-textarea"
11
12
  ></textarea>
12
13
  </div>
13
14
  <div class="main-block">
@@ -24,6 +25,7 @@
24
25
  type="email"
25
26
  :class="['email', { 'has-error': isInvalidEmail }]"
26
27
  :placeholder="localization.optionalInCaseWeNeed"
28
+ data-id="email-input"
27
29
  @blur="isStartEmailValidation = true"
28
30
  />
29
31
  </template>
@@ -36,6 +38,7 @@
36
38
  v-if="!hasTakeScreenshot"
37
39
  id="feedback-take-screenshot-button"
38
40
  class="btn btn-sm ng-star-inserted"
41
+ data-id="take-screenshot-input"
39
42
  @click="takeScreenshot"
40
43
  >
41
44
  {{ localization.takeScreenshot }}
@@ -45,6 +48,7 @@
45
48
  v-else
46
49
  id="feedback-remove-button"
47
50
  class="btn btn-sm btn-warning-outline ng-star-inserted"
51
+ data-id="remove-button"
48
52
  @click="removeScreenshot"
49
53
  >
50
54
  {{ localization.remove }}
@@ -69,6 +73,7 @@
69
73
  href="javascript:void(0)"
70
74
  role="button"
71
75
  class="content-padding"
76
+ data-id="use-red-marker-button"
72
77
  @click="useRedMarker"
73
78
  >
74
79
  {{ localization.useRedMarker }}</a
@@ -78,6 +83,7 @@
78
83
  href="javascript:void(0)"
79
84
  role="button"
80
85
  class="content-padding"
86
+ data-id="use-grey-marker-button"
81
87
  @click="useGrayEraser"
82
88
  >
83
89
  {{ localization.useGrayEraser }}</a
@@ -87,6 +93,7 @@
87
93
  href="javascript:void(0)"
88
94
  role="button"
89
95
  class="content-padding"
96
+ data-id="undo-button"
90
97
  @click="undoLast"
91
98
  >
92
99
  {{ localization.undo }}</a
@@ -96,6 +103,7 @@
96
103
  href="javascript:void(0)"
97
104
  role="button"
98
105
  class="content-padding"
106
+ data-id="clear-all-button"
99
107
  @click="clearAll"
100
108
  >
101
109
  {{ localization.clearAll }}</a
@@ -123,6 +131,7 @@
123
131
  ref="isFileLoad"
124
132
  type="file"
125
133
  accept=".png, .jpeg"
134
+ data-id="file-load-input"
126
135
  @change="onChangeImgLoad"
127
136
  />
128
137
  </div>
@@ -4,8 +4,17 @@
4
4
  <div>
5
5
  {{ localization.useOurExternalIdeasPortal }}
6
6
  </div>
7
- <a id="portal-link" href="https://customer.aobfg.ru/" target="_blank">
8
- <button id="visit-ideas-portal-button" class="btn btn-outline wrap">
7
+ <a
8
+ id="portal-link"
9
+ href="https://customer.aobfg.ru/"
10
+ data-id="portal-link"
11
+ target="_blank"
12
+ >
13
+ <button
14
+ id="visit-ideas-portal-button"
15
+ data-id="visit-ideas-portal-button"
16
+ class="btn btn-outline wrap"
17
+ >
9
18
  <span class="text"> {{ localization.visitIdeasPortal }} </span>
10
19
  <atoms-the-icon2 class="btn-icon" name="pop-out" />
11
20
  </button>
@@ -2,6 +2,7 @@
2
2
  <div class="left-navbar">
3
3
  <div class="header-content">
4
4
  <button
5
+ data-id="collapsed-all-button"
5
6
  class="btn-trigger-collapsed-all"
6
7
  @click="onToggleAccordionShowType"
7
8
  >
@@ -1,12 +1,21 @@
1
1
  <template>
2
2
  <div :class="['navbar', { open: isShow }]">
3
- <button v-if="!isShow" class="open-icon-button" @click="isShow = !isShow">
3
+ <button
4
+ v-if="!isShow"
5
+ data-id="open-icon-button"
6
+ class="open-button"
7
+ @click="isShow = !isShow"
8
+ >
4
9
  <atoms-the-icon name="arrow" />
5
10
  </button>
6
11
  <div v-else class="height-100">
7
12
  <div class="navbar__header">
8
13
  <p class="title">{{ props.title }}</p>
9
- <button class="close-icon-button" @click="isShow = !isShow">
14
+ <button
15
+ data-id="close-button"
16
+ class="close-icon-button"
17
+ @click="isShow = !isShow"
18
+ >
10
19
  <atoms-the-icon name="close" />
11
20
  </button>
12
21
  </div>
@@ -14,6 +23,7 @@
14
23
  <a
15
24
  v-for="item in props.items"
16
25
  :key="item.text"
26
+ :data-id="item.testId"
17
27
  :href="item.to"
18
28
  :class="['link-item', { active: route.hash === item.to }]"
19
29
  >{{ item.text }}</a
@@ -1,4 +1,5 @@
1
1
  export interface UI_I_ContentNavbarItem {
2
2
  text: string
3
3
  to: string
4
+ testId?: string
4
5
  }
@@ -30,6 +30,7 @@
30
30
  href="javascript:void(0)"
31
31
  class="text-ellipsis"
32
32
  :title="item.text"
33
+ data-id="select-node-of-tree"
33
34
  @click="selectNodeOfTree(item.data)"
34
35
  >{{ item.text }}</a
35
36
  >
@@ -23,10 +23,18 @@
23
23
  </template>
24
24
 
25
25
  <template #modalFooter>
26
- <button class="btn btn-outline" @click="onHideModal">
26
+ <button
27
+ :data-id="`${props.testId}-hide-button`"
28
+ class="btn btn-outline"
29
+ @click="onHideModal"
30
+ >
27
31
  {{ localization.cancel }}
28
32
  </button>
29
- <button :class="currentClasses" @click="onApply">
33
+ <button
34
+ :data-id="`${props.testId}-apply-button`"
35
+ :class="currentClasses"
36
+ @click="onApply"
37
+ >
30
38
  {{ currentText }}
31
39
  </button>
32
40
  </template>
@@ -29,6 +29,7 @@
29
29
  <input
30
30
  id="rename"
31
31
  v-model="form.name.value"
32
+ :data-id="`${props.testId}-rename-input`"
32
33
  type="text"
33
34
  :class="nameErrorText && 'clr-input'"
34
35
  @blur="initValidation"