bfg-common 1.3.239 → 1.3.240

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 (185) hide show
  1. package/components/atoms/switch/Switch.vue +111 -111
  2. package/components/atoms/table/compact/Compact.vue +526 -526
  3. package/components/common/BadBrowser.vue +16 -12
  4. package/components/common/accordion/Accordion.vue +1 -0
  5. package/components/common/accordion/Recursion.vue +2 -0
  6. package/components/common/accordion/lib/models/interfaces.ts +1 -0
  7. package/components/common/adapterManager/AddAdapterModal.vue +8 -5
  8. package/components/common/adapterManager/AddAdapterWarningModal.vue +1 -0
  9. package/components/common/adapterManager/ui/actions/AddAdapterButton.vue +2 -0
  10. package/components/common/adapterManager/ui/actions/MoveDownAdapterButton.vue +2 -0
  11. package/components/common/adapterManager/ui/actions/MoveUpAdapterButton.vue +2 -0
  12. package/components/common/adapterManager/ui/actions/RemoveAdapterButton.vue +2 -0
  13. package/components/common/adapterManager/ui/table/Adapters.vue +14 -13
  14. package/components/common/adapterManager/ui/table/Header.vue +6 -4
  15. package/components/common/adapterManager/ui/table/Table.vue +13 -4
  16. package/components/common/browse/Browse.vue +5 -1
  17. package/components/common/browse/blocks/Container.vue +3 -0
  18. package/components/common/browse/blocks/contents/Files.vue +1 -0
  19. package/components/common/context/ContextRecursion.vue +6 -1
  20. package/components/common/details/DetailsItem.vue +3 -0
  21. package/components/common/diagramMain/Header.vue +4 -0
  22. package/components/common/diagramMain/adapter/AdapterItem.vue +2 -0
  23. package/components/common/diagramMain/adapter/Contents.vue +2 -0
  24. package/components/common/diagramMain/lib/models/interfaces.ts +1 -0
  25. package/components/common/diagramMain/modals/editSettings/tabs/NetworkProperties.vue +1 -0
  26. package/components/common/diagramMain/modals/editSettings/tabs/Security.vue +13 -27
  27. package/components/common/diagramMain/modals/editSettings/tabs/SwitchProperties.vue +1 -0
  28. package/components/common/diagramMain/modals/editSettings/tabs/TeamingFailover.vue +3 -0
  29. package/components/common/diagramMain/modals/editSettings/tabs/TrafficShaping.vue +8 -0
  30. package/components/common/diagramMain/modals/editSettings/tabs/port/IpvFourSettings.vue +6 -0
  31. package/components/common/diagramMain/modals/editSettings/tabs/port/PortProperties.vue +2 -0
  32. package/components/common/diagramMain/modals/lib/config/networkModal.ts +4 -0
  33. package/components/common/diagramMain/modals/lib/config/portModal.ts +7 -2
  34. package/components/common/diagramMain/modals/migrateVmkernelAdapter/steps/ConnectionSettings.vue +19 -13
  35. package/components/common/diagramMain/modals/remove/RemoveModal.vue +5 -0
  36. package/components/common/diagramMain/modals/viewSettings/ViewSettings.vue +11 -7
  37. package/components/common/diagramMain/network/Contents.vue +5 -4
  38. package/components/common/diagramMain/port/Port.vue +1 -0
  39. package/components/common/feedback/Buttons.vue +2 -0
  40. package/components/common/feedback/Feedback.vue +9 -2
  41. package/components/common/feedback/Message.vue +9 -0
  42. package/components/common/feedback/VisitPortal.vue +11 -2
  43. package/components/common/help/navbar/left/Left.vue +1 -0
  44. package/components/common/help/navbar/right/Right.vue +12 -2
  45. package/components/common/help/navbar/right/lib/models/interfaces.ts +1 -0
  46. package/components/common/home/alertsTable/AlertsTable.vue +1 -0
  47. package/components/common/modals/Confirmation.vue +10 -2
  48. package/components/common/modals/Rename.vue +1 -0
  49. package/components/common/monitor/advanced/tools/Tools.vue +10 -1
  50. package/components/common/monitor/advanced/tools/chartOptionsModal/actions/Actions.vue +7 -1
  51. package/components/common/monitor/advanced/tools/chartOptionsModal/actions/saveOptionsModal/SaveOptionsModal.vue +6 -1
  52. package/components/common/monitor/advanced/tools/chartOptionsModal/counters/timespan/form/Form.vue +14 -1
  53. package/components/common/monitor/overview/filters/Filters.vue +12 -5
  54. package/components/common/monitor/overview/filters/customIntervalModal/CustomIntervalModal.vue +4 -0
  55. package/components/common/pages/Tasks.vue +120 -120
  56. package/components/common/perPage/PerPage.vue +1 -0
  57. package/components/common/recursionTree/RecursionTree.vue +205 -203
  58. package/components/common/recursionTree/lib/models/interfaces.ts +4 -2
  59. package/components/common/select/button/ButtonDropdown.vue +2 -0
  60. package/components/common/select/button/lib/models/interfaces.ts +1 -0
  61. package/components/common/select/input/Input.vue +1 -0
  62. package/components/common/select/radio/RadioGroup.vue +2 -0
  63. package/components/common/select/radio/lib/models/interfaces.ts +1 -0
  64. package/components/common/shortcuts/Block.vue +2 -0
  65. package/components/common/shortcuts/Category.vue +1 -0
  66. package/components/common/shortcuts/lib/models/interfaces.ts +1 -0
  67. package/components/common/spiceConsole/Drawer.vue +4 -0
  68. package/components/common/spiceConsole/keyboard/Keyboard.vue +1 -0
  69. package/components/common/spiceConsole/keyboard/lib/config/keyboardRows.ts +81 -6
  70. package/components/common/spiceConsole/keyboard/lib/models/interfaces.ts +1 -0
  71. package/components/common/split/horizontal/Horizontal.vue +1 -0
  72. package/components/common/vm/actions/add/Add.vue +576 -575
  73. package/components/common/vm/actions/clone/Clone.vue +518 -518
  74. package/components/common/vm/actions/clone/select/options/Options.vue +9 -3
  75. package/components/common/vm/actions/common/customizeHardware/CustomizeHardware.vue +269 -269
  76. package/components/common/vm/actions/common/customizeHardware/virtualHardware/VirtualHardware.vue +693 -693
  77. package/components/common/vm/actions/common/customizeHardware/virtualHardware/bus/Bus.vue +5 -1
  78. package/components/common/vm/actions/common/customizeHardware/virtualHardware/cdDvdDrive/CdDvdDrive.vue +7 -2
  79. package/components/common/vm/actions/common/customizeHardware/virtualHardware/cdDvdDrive/media/Media.vue +2 -0
  80. package/components/common/vm/actions/common/customizeHardware/virtualHardware/cpu/CoresPerSocket.vue +1 -0
  81. package/components/common/vm/actions/common/customizeHardware/virtualHardware/cpu/CpuHotPlug.vue +1 -0
  82. package/components/common/vm/actions/common/customizeHardware/virtualHardware/cpu/CpuModel.vue +225 -220
  83. package/components/common/vm/actions/common/customizeHardware/virtualHardware/cpu/Hv.vue +2 -0
  84. package/components/common/vm/actions/common/customizeHardware/virtualHardware/cpu/Iommu.vue +1 -0
  85. package/components/common/vm/actions/common/customizeHardware/virtualHardware/cpu/Pc.vue +1 -0
  86. package/components/common/vm/actions/common/customizeHardware/virtualHardware/cpu/Sa.vue +2 -0
  87. package/components/common/vm/actions/common/customizeHardware/virtualHardware/cpu/shares/Shares.vue +5 -1
  88. package/components/common/vm/actions/common/customizeHardware/virtualHardware/cpu/tooltip/Tooltip.vue +1 -0
  89. package/components/common/vm/actions/common/customizeHardware/virtualHardware/lib/config/dropdownItems.ts +59 -59
  90. package/components/common/vm/actions/common/customizeHardware/virtualHardware/limit/Limit.vue +2 -1
  91. package/components/common/vm/actions/common/customizeHardware/virtualHardware/memory/Memory.vue +1 -0
  92. package/components/common/vm/actions/common/customizeHardware/virtualHardware/memory/MemoryHotPlug.vue +1 -0
  93. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newHardDisk/Location.vue +6 -6
  94. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newHardDisk/NewHardDisk.vue +5 -6
  95. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newHardDisk/cache/Cache.vue +1 -0
  96. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newHardDisk/limitIops/LimitIops.vue +1 -0
  97. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newHardDisk/mode/Mode.vue +1 -0
  98. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newHardDisk/provisioning/Provisioning.vue +1 -0
  99. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newHardDisk/sharing/Sharing.vue +1 -0
  100. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newNetwork/Location.vue +2 -0
  101. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newNetwork/NewNetwork.vue +295 -294
  102. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newNetwork/adapterType/AdapterType.vue +1 -0
  103. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newNetwork/macAddress/MacAddress.vue +12 -4
  104. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newPciDevice/NewPciDevice.vue +165 -165
  105. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newPciDevice/directPathIo/DirectPathIo.vue +5 -1
  106. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newPciDevice/nvidiaGrid/NvidiaGrid.vue +2 -1
  107. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newPciDevice/typeSelection/TypeSelection.vue +2 -1
  108. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newUsbController/NewUsbController.vue +1 -0
  109. package/components/common/vm/actions/common/customizeHardware/virtualHardware/reservation/Reservation.vue +3 -1
  110. package/components/common/vm/actions/common/customizeHardware/virtualHardware/videoCard/Graphics.vue +6 -1
  111. package/components/common/vm/actions/common/customizeHardware/virtualHardware/videoCard/TotalVideoMemory.vue +2 -1
  112. package/components/common/vm/actions/common/customizeHardware/virtualHardware/videoCard/VideoCard.vue +1 -0
  113. package/components/common/vm/actions/common/customizeHardware/virtualHardware/videoCard/model/Model.vue +1 -0
  114. package/components/common/vm/actions/common/customizeHardware/virtualHardware/videoCard/numberDisplays/NumberDisplays.vue +1 -0
  115. package/components/common/vm/actions/common/customizeHardware/vmoptions/bootOptions/Menu.vue +6 -1
  116. package/components/common/vm/actions/common/customizeHardware/vmoptions/bootOptions/Secure.vue +6 -1
  117. package/components/common/vm/actions/common/customizeHardware/vmoptions/bootOptions/delay/Delay.vue +5 -1
  118. package/components/common/vm/actions/common/customizeHardware/vmoptions/bootOptions/firmware/Firmware.vue +1 -0
  119. package/components/common/vm/actions/common/customizeHardware/vmoptions/bootOptions/order/Order.vue +5 -1
  120. package/components/common/vm/actions/common/customizeHardware/vmoptions/bootOptions/order/lib/models/interfaces.ts +1 -0
  121. package/components/common/vm/actions/common/customizeHardware/vmoptions/generalOptions/GeneralOptions.vue +4 -1
  122. package/components/common/vm/actions/common/customizeHardware/vmoptions/remoteConsoleOptions/CopyPaste.vue +1 -0
  123. package/components/common/vm/actions/common/customizeHardware/vmoptions/remoteConsoleOptions/FileTransfer.vue +1 -0
  124. package/components/common/vm/actions/common/customizeHardware/vmoptions/remoteConsoleOptions/FolderSharing.vue +1 -0
  125. package/components/common/vm/actions/common/customizeHardware/vmoptions/remoteConsoleOptions/PlaybackCompression.vue +1 -0
  126. package/components/common/vm/actions/common/customizeHardware/vmoptions/remoteConsoleOptions/PowerControl.vue +1 -0
  127. package/components/common/vm/actions/common/customizeHardware/vmoptions/remoteConsoleOptions/imgCompression/ImgCompression.vue +1 -0
  128. package/components/common/vm/actions/common/customizeHardware/vmoptions/remoteConsoleOptions/jpegCompression/JpegCompression.vue +1 -0
  129. package/components/common/vm/actions/common/customizeHardware/vmoptions/remoteConsoleOptions/keymap/Keymap.vue +2 -1
  130. package/components/common/vm/actions/common/customizeHardware/vmoptions/remoteConsoleOptions/mouseMode/MouseMode.vue +6 -1
  131. package/components/common/vm/actions/common/customizeHardware/vmoptions/remoteConsoleOptions/password/Password.vue +7 -1
  132. package/components/common/vm/actions/common/customizeHardware/vmoptions/remoteConsoleOptions/sharePolicy/SharePolicy.vue +5 -1
  133. package/components/common/vm/actions/common/customizeHardware/vmoptions/remoteConsoleOptions/streamingMode/StreamingMode.vue +1 -0
  134. package/components/common/vm/actions/common/customizeHardware/vmoptions/remoteConsoleOptions/type/Type.vue +1 -0
  135. package/components/common/vm/actions/common/customizeHardware/vmoptions/remoteConsoleOptions/usbRedirection/UsbRedirection.vue +2 -1
  136. package/components/common/vm/actions/common/customizeHardware/vmoptions/remoteConsoleOptions/zlibCompression/ZlibCompression.vue +1 -0
  137. package/components/common/vm/actions/common/customizeHardware/vmoptions/tools/Tools.vue +6 -1
  138. package/components/common/vm/actions/common/select/compatibility/Compatibility.vue +31 -27
  139. package/components/common/vm/actions/common/select/name/Name.vue +7 -1
  140. package/components/common/vm/actions/common/select/os/os.vue +7 -1
  141. package/components/common/vm/actions/common/select/storage/lib/config/config.ts +166 -166
  142. package/components/common/vm/actions/editSettings/EditSettings.vue +313 -313
  143. package/components/common/weekSelect/WeekSelect.vue +143 -112
  144. package/components/common/weekSelect/lib/config/options.ts +10 -10
  145. package/components/common/weekSelect/lib/models/interfaces.ts +1 -0
  146. package/components/common/wizards/datastore/add/local/createName/CreateName.vue +1 -0
  147. package/components/common/wizards/datastore/add/nfs/accessibility/Accessibility.vue +8 -7
  148. package/components/common/wizards/datastore/add/nfs/configuration/Configuration.vue +9 -1
  149. package/components/common/wizards/datastore/add/nfs/configuration/serversList/DeletePopover.vue +6 -3
  150. package/components/common/wizards/datastore/add/nfs/kerberosAuthentication/KerberosAuthentication.vue +1 -0
  151. package/components/common/wizards/datastore/add/nfs/kerberosAuthentication/lib/config/radioOptions.ts +3 -0
  152. package/components/common/wizards/datastore/add/sharedStorm/deviceSelection/DeviceSelection.vue +2 -0
  153. package/components/common/wizards/datastore/add/sharedStorm/partitionConfiguration/PartitionConfiguration.vue +2 -0
  154. package/components/common/wizards/datastore/add/types/Types.vue +1 -0
  155. package/components/common/wizards/network/add/modals/SelectNetwork.vue +16 -3
  156. package/components/common/wizards/network/add/modals/SelectStandardSwitch.vue +10 -2
  157. package/components/common/wizards/network/add/modals/SelectSwitch.vue +10 -2
  158. package/components/common/wizards/network/add/steps/ConnectionSettings.vue +5 -1
  159. package/components/common/wizards/network/add/steps/IpFourSettings.vue +12 -2
  160. package/components/common/wizards/network/add/steps/PortProperties.vue +16 -3
  161. package/components/common/wizards/network/add/steps/SelectConnectionType.vue +6 -3
  162. package/components/common/wizards/network/add/steps/SelectedTargetDevice.vue +11 -0
  163. package/components/common/wizards/vm/common/tooltip/Tooltip.vue +2 -0
  164. package/components/common/wizards/vm/migrate/select/network/Network.vue +1 -0
  165. package/components/common/wizards/vm/migrate/select/network/table/network/Network.vue +1 -0
  166. package/components/common/wizards/vm/migrate/select/storage/Storage.vue +5 -1
  167. package/components/common/wizards/vm/migrate/select/storage/configure/disk/Disk.vue +1 -0
  168. package/components/common/wizards/vm/migrate/select/storage/diskFormat/DiskFormat.vue +1 -0
  169. package/components/common/wizards/vm/migrate/select/storage/policy/Policy.vue +1 -0
  170. package/components/common/wizards/vm/migrate/select/storage/selectedPerDisk/SelectedPerDisk.vue +1 -0
  171. package/components/common/wizards/vm/migrate/select/targetServer/new/New.vue +9 -1
  172. package/composables/useAppVersion.ts +21 -21
  173. package/composables/useEnvLanguage.ts +20 -20
  174. package/lib/utils/sendTask.ts +72 -72
  175. package/minify.js +146 -146
  176. package/package.json +1 -1
  177. package/public/spice-console/application/codec.js +257 -257
  178. package/public/spice-console/lib/rasterEngine.js +907 -907
  179. package/public/spice-console/network/spicechannel.js +369 -369
  180. package/store/main/lib/interfaces.ts +9 -9
  181. package/store/tasks/actions.ts +133 -133
  182. package/store/tasks/getters.ts +25 -25
  183. package/store/tasks/lib/models/interfaces.ts +18 -18
  184. package/store/tasks/mutations.ts +58 -58
  185. package/store/tasks/state.ts +16 -16
@@ -26,6 +26,7 @@
26
26
  <input
27
27
  id="network-label"
28
28
  v-model="fields.networkLabel"
29
+ data-id="network-label-input"
29
30
  name="network-label"
30
31
  type="text"
31
32
  :class="[
@@ -94,7 +95,12 @@
94
95
  class="property-value-group port-properties-mtu-container tooltip-field-container"
95
96
  >
96
97
  <div class="select port-properties-mtu-selector">
97
- <select id="mtu" v-model="fields.mtu.option" name="mtu-option">
98
+ <select
99
+ id="mtu"
100
+ v-model="fields.mtu.option"
101
+ data-id="mtu-select"
102
+ name="mtu-option"
103
+ >
98
104
  <option value="0">{{ localization.getMtuFromSwitch }}</option>
99
105
  <option value="1">{{ localization.custom }}</option>
100
106
  </select>
@@ -106,6 +112,7 @@
106
112
  <input
107
113
  id="mtu"
108
114
  v-model="fields.mtu.size"
115
+ data-id="mtu-input"
109
116
  type="number"
110
117
  name="mtu"
111
118
  :class="[
@@ -132,7 +139,7 @@
132
139
  <div class="margin-left-property-value-group">
133
140
  <div class="property-value-group">
134
141
  <div class="select">
135
- <select id="tsp" v-model="fields.tcp">
142
+ <select id="tsp" v-model="fields.tcp" data-id="tsp-select">
136
143
  <template v-for="tcp in props.tcpStacks" :key="tcp.id">
137
144
  <option :value="tcp.id">{{ localization[tcp.id] }}</option>
138
145
  </template>
@@ -161,12 +168,17 @@
161
168
  ]"
162
169
  >
163
170
  <label v-if="isSphereProject">
164
- <input v-model="fields.services.vMotion" type="checkbox" />
171
+ <input
172
+ v-model="fields.services.vMotion"
173
+ data-id="services-v-motion-checkbox"
174
+ type="checkbox"
175
+ />
165
176
  {{ localization.vMotion }}
166
177
  </label>
167
178
  <label v-else>
168
179
  <input
169
180
  v-model="fields.services.provisioning"
181
+ data-id="services-provisioning-checkbox"
170
182
  type="checkbox"
171
183
  />
172
184
  {{ localization.provisioning }}
@@ -186,6 +198,7 @@
186
198
  <label>
187
199
  <input
188
200
  v-model="fields.services[enabledService.modelValue]"
201
+ data-id="services-enabled-service-checkbox"
189
202
  type="checkbox"
190
203
  />
191
204
  {{ enabledService.label }}
@@ -5,10 +5,11 @@
5
5
  <div class="radio">
6
6
  <input
7
7
  id="vmkernel-adapter"
8
+ v-model="connectionTypeLocal"
9
+ data-id="vmkernel-adapter-radio"
8
10
  type="radio"
9
11
  value="0"
10
12
  name="connection-type"
11
- v-model="connectionTypeLocal"
12
13
  />
13
14
  <label for="vmkernel-adapter">
14
15
  {{ localization.vmKernelNetworkAdapter }}
@@ -20,10 +21,11 @@
20
21
  <div class="radio">
21
22
  <input
22
23
  id="virtual"
24
+ v-model="connectionTypeLocal"
25
+ data-id="virtual-radio"
23
26
  type="radio"
24
27
  value="1"
25
28
  name="connection-type"
26
- v-model="connectionTypeLocal"
27
29
  />
28
30
  <label for="virtual">
29
31
  {{ localization.virtualMachinePortGroupStandardSwitch }}
@@ -35,10 +37,11 @@
35
37
  <div class="radio">
36
38
  <input
37
39
  id="physical-adapter"
40
+ v-model="connectionTypeLocal"
41
+ data-id="physical-adapter-radio"
38
42
  type="radio"
39
43
  value="2"
40
44
  name="connection-type"
41
- v-model="connectionTypeLocal"
42
45
  />
43
46
  <label for="physical-adapter">
44
47
  {{ localization.physicalNetworkAdapter }}
@@ -13,6 +13,7 @@
13
13
  <input
14
14
  id="existing-network"
15
15
  v-model="fields.selected"
16
+ data-id="existing-network-radio"
16
17
  type="radio"
17
18
  value="0"
18
19
  name="target-device"
@@ -38,6 +39,7 @@
38
39
  <div>
39
40
  <input
40
41
  v-model="fields.network"
42
+ data-id="network-input"
41
43
  type="text"
42
44
  disabled
43
45
  :class="[
@@ -52,6 +54,7 @@
52
54
  <button
53
55
  type="button"
54
56
  class="btn btn-link"
57
+ data-id="show-select-network-modal-button"
55
58
  @click="onShowModal('select-network')"
56
59
  >
57
60
  {{ localization.browseDoted }}
@@ -72,6 +75,7 @@
72
75
  <input
73
76
  id="existing-standard-switch"
74
77
  v-model="fields.selected"
78
+ data-id="existing-standard-switch-radio"
75
79
  type="radio"
76
80
  value="1"
77
81
  name="target-device"
@@ -98,6 +102,7 @@
98
102
  <div>
99
103
  <input
100
104
  v-model="fields.standardSwitch"
105
+ data-id="standard-switch-input"
101
106
  type="text"
102
107
  disabled
103
108
  :class="[
@@ -112,6 +117,7 @@
112
117
  <button
113
118
  type="button"
114
119
  class="btn btn-link"
120
+ data-id="show-select-standard-switch-button"
115
121
  @click="onShowModal('select-standard-switch')"
116
122
  >
117
123
  {{ localization.browseDoted }}
@@ -132,6 +138,7 @@
132
138
  <input
133
139
  id="existing-switch"
134
140
  v-model="fields.selected"
141
+ data-id="existing-switch-radio"
135
142
  type="radio"
136
143
  value="2"
137
144
  name="target-device"
@@ -158,6 +165,7 @@
158
165
  <div>
159
166
  <input
160
167
  v-model="fields.switch"
168
+ data-id="switch-input"
161
169
  type="text"
162
170
  disabled
163
171
  :class="[
@@ -171,6 +179,7 @@
171
179
  />
172
180
  <button
173
181
  type="button"
182
+ data-id="show-select-switch-modal-button"
174
183
  class="btn btn-link"
175
184
  @click="onShowModal('select-switch')"
176
185
  >
@@ -199,6 +208,7 @@
199
208
  <input
200
209
  id="standard-switch"
201
210
  v-model="fields.selected"
211
+ data-id="standard-switch-radio"
202
212
  type="radio"
203
213
  value="3"
204
214
  name="target-device"
@@ -229,6 +239,7 @@
229
239
  <input
230
240
  id="mtu"
231
241
  v-model="fields.mtu"
242
+ data-id="mtu-input"
232
243
  type="number"
233
244
  name="mtu"
234
245
  :class="[
@@ -3,11 +3,13 @@
3
3
  <a
4
4
  v-if="props.isShowElement"
5
5
  href="javascript:void(0)"
6
+ data-id="show-find-help-button"
6
7
  @click.stop="isShowFindHelp = !isShowFindHelp"
7
8
  >{{ localization.vmOrigin }}
8
9
  </a>
9
10
  <atoms-the-icon
10
11
  id="help-tooltip-icon"
12
+ data-id="show-help-tooltip-icon"
11
13
  class="info-icon"
12
14
  name="info-circle"
13
15
  @click.stop="isShowFindHelp = !isShowFindHelp"
@@ -26,6 +26,7 @@
26
26
  <div class="vm-migrate-advanced-view-button">
27
27
  <button
28
28
  class="btn btn-sm migrate-network-advanced-btn"
29
+ data-id="migrate-network-advanced-button"
29
30
  @click="onClickSelectNetworkMode"
30
31
  >
31
32
  <span v-if="!isShowNetworkBasic"> &#x226A; </span>
@@ -20,6 +20,7 @@
20
20
  <select
21
21
  :id="item.data.id"
22
22
  v-model="item.data.value"
23
+ data-id="network-select"
23
24
  :disabled="item.data.disabled"
24
25
  @change="onSelect(item.data)"
25
26
  >
@@ -36,7 +36,11 @@
36
36
  @update-selected-datastore="selectStorageDataLocal.storage = $event"
37
37
  >
38
38
  <template v-if="isShowSelectedPerDisks" #buttonConfirm>
39
- <button class="btn btn-sm btn-primary" @click="onApplyChanges">
39
+ <button
40
+ class="btn btn-sm btn-primary"
41
+ data-id="apply-selected-per-disks-button"
42
+ @click="onApplyChanges"
43
+ >
40
44
  {{ localization.confirm }}
41
45
  </button>
42
46
  </template>
@@ -3,6 +3,7 @@
3
3
  <div class="btn-group">
4
4
  <button
5
5
  id="vm-migrate-configure"
6
+ data-id="vm-migrate-configure-button"
6
7
  class="btn btn-link btn-sm"
7
8
  :disabled="!selectedDisksFromTable.length"
8
9
  @click="onConfigure"
@@ -10,6 +10,7 @@
10
10
  <select
11
11
  id="storage-locator-disk-format-label"
12
12
  v-model="selectedVirtualDiskFormat"
13
+ data-id="storage-locator-disk-format-select"
13
14
  class="storage-locator-disk-format-label"
14
15
  >
15
16
  <option
@@ -12,6 +12,7 @@
12
12
  <select
13
13
  id="storage-locator-disk-policy-label"
14
14
  v-model="selectedVmStoragePolicy"
15
+ data-id="storage-locator-disk-policy-select"
15
16
  class="storage-locator-disk-format-label"
16
17
  >
17
18
  <option
@@ -1,6 +1,7 @@
1
1
  <template>
2
2
  <div class="selected-per-disk">
3
3
  <atoms-the-icon
4
+ data-id="go-back-icon"
4
5
  class="icon-arrow"
5
6
  name="arrow"
6
7
  @click="onGoBack"
@@ -14,6 +14,7 @@
14
14
  <input
15
15
  id="configuration-name-input"
16
16
  v-model="form.name.value"
17
+ data-id="configuration-name-input"
17
18
  type="text"
18
19
  class="clr-input"
19
20
  @blur="onBlurInputName"
@@ -41,6 +42,7 @@
41
42
  <input
42
43
  id="configuration-folder-input"
43
44
  v-model="form.folder.value"
45
+ data-id="configuration-folder-input"
44
46
  type="text"
45
47
  class="clr-input"
46
48
  @blur="onBlurInputFolder"
@@ -69,6 +71,7 @@
69
71
  <input
70
72
  id="configuration-folder-input"
71
73
  v-model="form.server.value"
74
+ data-id="configuration-folder-input"
72
75
  type="text"
73
76
  class="clr-input"
74
77
  @blur="onBlurInputServer"
@@ -89,12 +92,17 @@
89
92
  {{ localization.saveVCenterServerAddress }}
90
93
  </label>
91
94
 
92
- <input v-model="accessMode" type="checkbox" />
95
+ <input
96
+ v-model="accessMode"
97
+ data-id="access-mode-checkbox"
98
+ type="checkbox"
99
+ />
93
100
  </div>
94
101
 
95
102
  <button
96
103
  class="btn btn-primary btn-sm mt-2 clr-col-md-2"
97
104
  :disabled="true"
105
+ data-id="sign-in-button"
98
106
  @click="onSignIn"
99
107
  >
100
108
  {{ localization.login }}
@@ -1,21 +1,21 @@
1
- import type { UI_I_UseAppVersionReturnType } from '~/lib/models/composables/useAppVersion/interfaces'
2
-
3
- export function useAppVersion(): UI_I_UseAppVersionReturnType {
4
- const config = useRuntimeConfig()
5
- const version = config.public.APP_VERSION
6
-
7
- const regexHasDot = /\./
8
- const regexHasDotAndB = /\..*b/
9
- const regexHasDotAndD = /\..*d/
10
-
11
- const isBeta = regexHasDotAndB.test(version)
12
- const isDev =
13
- regexHasDotAndD.test(version) ||
14
- (!regexHasDot.test(version) && version.length < 8)
15
-
16
- return {
17
- version,
18
- isBeta,
19
- isDev,
20
- }
21
- }
1
+ import type { UI_I_UseAppVersionReturnType } from '~/lib/models/composables/useAppVersion/interfaces'
2
+
3
+ export function useAppVersion(): UI_I_UseAppVersionReturnType {
4
+ const config = useRuntimeConfig()
5
+ const version = config.public.APP_VERSION
6
+
7
+ const regexHasDot = /\./
8
+ const regexHasDotAndB = /\..*b/
9
+ const regexHasDotAndD = /\..*d/
10
+
11
+ const isBeta = regexHasDotAndB.test(version)
12
+ const isDev =
13
+ regexHasDotAndD.test(version) ||
14
+ (!regexHasDot.test(version) && version.length < 8)
15
+
16
+ return {
17
+ version,
18
+ isBeta,
19
+ isDev,
20
+ }
21
+ }
@@ -1,20 +1,20 @@
1
- export function useEnvLanguage(): string {
2
- const { $store }: any = useNuxtApp()
3
-
4
- let localizationCode = 'en_US'
5
- const langFromLocalStorage =
6
- useLocalStorage('lang') || $store.getters['main/getInterfaceLang'] // Из $store для Сферы, но думаю нужно сделать одинаково из localStorage
7
- if (langFromLocalStorage) {
8
- if (
9
- langFromLocalStorage === 'en_US' ||
10
- langFromLocalStorage === 'ru_RU' ||
11
- langFromLocalStorage === 'hy_AM'
12
- ) {
13
- localizationCode = langFromLocalStorage
14
- }
15
- }
16
-
17
- localizationCode = localizationCode.slice(0, 2).toUpperCase()
18
-
19
- return localizationCode
20
- }
1
+ export function useEnvLanguage(): string {
2
+ const { $store }: any = useNuxtApp()
3
+
4
+ let localizationCode = 'en_US'
5
+ const langFromLocalStorage =
6
+ useLocalStorage('lang') || $store.getters['main/getInterfaceLang'] // Из $store для Сферы, но думаю нужно сделать одинаково из localStorage
7
+ if (langFromLocalStorage) {
8
+ if (
9
+ langFromLocalStorage === 'en_US' ||
10
+ langFromLocalStorage === 'ru_RU' ||
11
+ langFromLocalStorage === 'hy_AM'
12
+ ) {
13
+ localizationCode = langFromLocalStorage
14
+ }
15
+ }
16
+
17
+ localizationCode = localizationCode.slice(0, 2).toUpperCase()
18
+
19
+ return localizationCode
20
+ }
@@ -1,72 +1,72 @@
1
- import type { UI_I_Localization } from '~/lib/models/interfaces'
2
- import type {
3
- API_UI_I_Error,
4
- UI_I_RequestBody,
5
- } from '~/lib/models/store/interfaces'
6
- import type {
7
- UI_I_NotifyBodyMessage,
8
- UI_I_SendTaskParams,
9
- } from '~/lib/models/interfaces'
10
- import { base64 } from './base64'
11
-
12
- const localization = computed<UI_I_Localization>(() => useLocal())
13
-
14
- const showNotification = (message: UI_I_NotifyBodyMessage): void => {
15
- const { title, desc, status } = message
16
- const { $store } = useNuxtApp()
17
-
18
- // @ts-ignore
19
- $store.dispatch('main/A_SHOW_NOTIFICATION', {
20
- status,
21
- messages: [
22
- {
23
- title,
24
- descriptions: [desc],
25
- },
26
- ],
27
- headline: '',
28
- timeout: status === 'success' ? 3000 : '',
29
- })
30
- }
31
- const msgError: UI_I_NotifyBodyMessage = {
32
- status: 'error',
33
- title: localization.value.error,
34
- desc: '',
35
- }
36
- const handleErrors = (error: Ref<API_UI_I_Error>): void => {
37
- if (error.value.data?.error_message) {
38
- msgError.desc = error.value.data?.error_message
39
- showNotification(msgError)
40
- }
41
- }
42
-
43
- export const handleRequest = async (
44
- url: string,
45
- body: UI_I_RequestBody
46
- ): Promise<void> => {
47
- // @ts-ignore
48
- const { error } = await useMyFetch<never, API_UI_I_Error>(url, {
49
- body,
50
- method: 'POST',
51
- key: Date.now().toString(),
52
- })
53
-
54
- if (error.value && error.value.data.error_code !== 0) {
55
- handleErrors(error)
56
- }
57
- }
58
-
59
- export async function sendTask({
60
- method,
61
- target,
62
- args,
63
- }: UI_I_SendTaskParams): Promise<void> {
64
- const argsToBase64 = args ? base64.encode(args) : ''
65
- await handleRequest('/ui/tasks', {
66
- method,
67
- params: {
68
- target,
69
- args: argsToBase64,
70
- },
71
- })
72
- }
1
+ import type { UI_I_Localization } from '~/lib/models/interfaces'
2
+ import type {
3
+ API_UI_I_Error,
4
+ UI_I_RequestBody,
5
+ } from '~/lib/models/store/interfaces'
6
+ import type {
7
+ UI_I_NotifyBodyMessage,
8
+ UI_I_SendTaskParams,
9
+ } from '~/lib/models/interfaces'
10
+ import { base64 } from './base64'
11
+
12
+ const localization = computed<UI_I_Localization>(() => useLocal())
13
+
14
+ const showNotification = (message: UI_I_NotifyBodyMessage): void => {
15
+ const { title, desc, status } = message
16
+ const { $store } = useNuxtApp()
17
+
18
+ // @ts-ignore
19
+ $store.dispatch('main/A_SHOW_NOTIFICATION', {
20
+ status,
21
+ messages: [
22
+ {
23
+ title,
24
+ descriptions: [desc],
25
+ },
26
+ ],
27
+ headline: '',
28
+ timeout: status === 'success' ? 3000 : '',
29
+ })
30
+ }
31
+ const msgError: UI_I_NotifyBodyMessage = {
32
+ status: 'error',
33
+ title: localization.value.error,
34
+ desc: '',
35
+ }
36
+ const handleErrors = (error: Ref<API_UI_I_Error>): void => {
37
+ if (error.value.data?.error_message) {
38
+ msgError.desc = error.value.data?.error_message
39
+ showNotification(msgError)
40
+ }
41
+ }
42
+
43
+ export const handleRequest = async (
44
+ url: string,
45
+ body: UI_I_RequestBody
46
+ ): Promise<void> => {
47
+ // @ts-ignore
48
+ const { error } = await useMyFetch<never, API_UI_I_Error>(url, {
49
+ body,
50
+ method: 'POST',
51
+ key: Date.now().toString(),
52
+ })
53
+
54
+ if (error.value && error.value.data.error_code !== 0) {
55
+ handleErrors(error)
56
+ }
57
+ }
58
+
59
+ export async function sendTask({
60
+ method,
61
+ target,
62
+ args,
63
+ }: UI_I_SendTaskParams): Promise<void> {
64
+ const argsToBase64 = args ? base64.encode(args) : ''
65
+ await handleRequest('/ui/tasks', {
66
+ method,
67
+ params: {
68
+ target,
69
+ args: argsToBase64,
70
+ },
71
+ })
72
+ }