bfg-common 1.5.290 → 1.5.293

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 (175) hide show
  1. package/CODE_STYLE.md +109 -109
  2. package/assets/img/icons/icons-sprite-dark-3.svg +227 -227
  3. package/assets/img/icons/icons-sprite-dark-5.svg +488 -488
  4. package/assets/img/icons/icons-sprite-light-3.svg +227 -227
  5. package/assets/img/icons/icons-sprite-light-5.svg +488 -488
  6. package/assets/localization/local_be.json +1 -0
  7. package/assets/localization/local_en.json +1 -0
  8. package/assets/localization/local_hy.json +1 -0
  9. package/assets/localization/local_kk.json +1 -0
  10. package/assets/localization/local_ru.json +1 -0
  11. package/assets/localization/local_zh.json +1 -0
  12. package/assets/scss/common/theme.scss +6 -0
  13. package/components/atoms/TheIcon3.vue +50 -50
  14. package/components/atoms/perPage/PerPage.vue +58 -58
  15. package/components/atoms/table/dataGrid/DataGrid.vue +1717 -1717
  16. package/components/atoms/table/dataGrid/lib/config/settingsTable.ts +94 -94
  17. package/components/atoms/table/dataGrid/lib/utils/export.ts +16 -16
  18. package/components/atoms/tabs/VerticalTabs.vue +105 -105
  19. package/components/common/backup/storage/actions/add/lib/config/steps.ts +168 -168
  20. package/components/common/backup/storage/actions/add/steps/hostAccessibility/HostAccessibility.vue +52 -52
  21. package/components/common/backup/storage/actions/add/steps/nameAndConfigure/NameAndConfigure.vue +42 -42
  22. package/components/common/backup/storage/actions/add/steps/readyComplete/ReadyComplete.vue +45 -45
  23. package/components/common/backup/storage/actions/add/steps/readyComplete/lib/config/propertiesDetails.ts +243 -243
  24. package/components/common/backup/storage/actions/delete/Delete.vue +65 -65
  25. package/components/common/browse/blocks/contents/filesNew/Skeleton.vue +18 -18
  26. package/components/common/browse/blocks/lib/models/types.ts +1 -1
  27. package/components/common/browse/lib/models/interfaces.ts +5 -5
  28. package/components/common/context/lib/models/interfaces.ts +31 -31
  29. package/components/common/diagramMain/DiagramMain.vue +897 -897
  30. package/components/common/diagramMain/adapter/AdapterItems.vue +61 -61
  31. package/components/common/diagramMain/lib/config/initial.ts +50 -50
  32. package/components/common/diagramMain/lib/models/types.ts +21 -21
  33. package/components/common/diagramMain/lib/utils/utils.ts +331 -331
  34. package/components/common/diagramMain/modals/editSettings/ConfirmTeamingSettingsModal.vue +40 -40
  35. package/components/common/diagramMain/modals/editSettings/tabs/NetworkProperties.vue +214 -214
  36. package/components/common/diagramMain/modals/editSettings/tabs/Security.vue +189 -189
  37. package/components/common/diagramMain/modals/editSettings/tabs/SwitchProperties.vue +163 -163
  38. package/components/common/diagramMain/modals/editSettings/tabs/TeamingFailover.vue +175 -175
  39. package/components/common/diagramMain/modals/editSettings/tabs/port/IpvFourSettings.vue +346 -346
  40. package/components/common/diagramMain/modals/lib/config/initial.ts +180 -180
  41. package/components/common/diagramMain/modals/lib/config/vmKernelAdapter.ts +90 -90
  42. package/components/common/diagramMain/modals/lib/mappers/mappers.ts +87 -87
  43. package/components/common/diagramMain/modals/lib/utils/index.ts +24 -24
  44. package/components/common/diagramMain/modals/migrateVmkernelAdapter/lib/config/steps.ts +114 -114
  45. package/components/common/diagramMain/modals/migrateVmkernelAdapter/steps/ConnectionSettings.vue +169 -169
  46. package/components/common/diagramMain/modals/migrateVmkernelAdapter/steps/SelectVmkernelAdapter.vue +159 -159
  47. package/components/common/diagramMain/modals/migrateVmkernelAdapter/validations/common.ts +14 -14
  48. package/components/common/diagramMain/modals/migrateVmkernelAdapter/validations/connectionSettings.ts +137 -137
  49. package/components/common/diagramMain/modals/migrateVmkernelAdapter/validations/selectVmkernelAdapter.ts +52 -52
  50. package/components/common/diagramMain/modals/migrateVmkernelAdapter/validations/validations.ts +19 -19
  51. package/components/common/diagramMain/port/Ports.vue +47 -47
  52. package/components/common/layout/theHeader/helpMenu/About.vue +82 -82
  53. package/components/common/layout/theHeader/userMenu/modals/preferences/view/ViewOld.vue +112 -112
  54. package/components/common/monitor/overview/OverviewOld.vue +139 -139
  55. package/components/common/pages/home/headline/Headline.vue +45 -45
  56. package/components/common/pages/home/headline/HeadlineOld.vue +42 -42
  57. package/components/common/pages/home/lib/models/interfaces.ts +48 -48
  58. package/components/common/pages/home/widgets/Widgets.vue +49 -49
  59. package/components/common/pages/home/widgets/WidgetsNew.vue +86 -86
  60. package/components/common/pages/home/widgets/WidgetsOld.vue +34 -34
  61. package/components/common/pages/home/widgets/hosts/Hosts.vue +27 -27
  62. package/components/common/pages/home/widgets/hosts/lib/config/items.ts +23 -23
  63. package/components/common/pages/home/widgets/vms/Vms.vue +26 -26
  64. package/components/common/pages/home/widgets/vms/VmsOld.vue +35 -35
  65. package/components/common/pages/home/widgets/vms/lib/config/items.ts +19 -19
  66. package/components/common/pages/packages/Packages.vue +208 -208
  67. package/components/common/pages/shortcuts/block/BlockOld.vue +68 -68
  68. package/components/common/readyToComplete/ReadyToComplete.vue +17 -17
  69. package/components/common/recursionTree/RecursionTree.vue +223 -223
  70. package/components/common/select/button/ButtonDropdown.vue +108 -108
  71. package/components/common/spiceConsole/Drawer.vue +377 -377
  72. package/components/common/spiceConsole/SpiceConsole.vue +127 -84
  73. package/components/common/spiceConsole/lib/models/interfaces.ts +5 -5
  74. package/components/common/vm/actions/add/New.vue +1 -0
  75. package/components/common/vm/actions/add/Old.vue +7 -4
  76. package/components/common/vm/actions/add/folderTreeView/FolderTreeView.vue +72 -72
  77. package/components/common/vm/actions/add/folderTreeView/New.vue +40 -40
  78. package/components/common/vm/actions/add/folderTreeView/Old.vue +50 -50
  79. package/components/common/vm/actions/clone/lib/config/steps.ts +291 -291
  80. package/components/common/vm/actions/clone/toTemplate/lib/config/steps.ts +116 -116
  81. package/components/common/vm/actions/common/customizeHardware/virtualHardware/VirtualHardwareNew.vue +6 -2
  82. package/components/common/vm/actions/common/customizeHardware/virtualHardware/VirtualHardwareOld.vue +321 -321
  83. package/components/common/vm/actions/common/customizeHardware/virtualHardware/browseView/BrowseView.vue +227 -227
  84. package/components/common/vm/actions/common/customizeHardware/virtualHardware/bus/Bus.vue +100 -100
  85. package/components/common/vm/actions/common/customizeHardware/virtualHardware/bus/BusNew.vue +10 -8
  86. package/components/common/vm/actions/common/customizeHardware/virtualHardware/cdDvdDrive/CdDvdDrive.vue +232 -232
  87. package/components/common/vm/actions/common/customizeHardware/virtualHardware/cdDvdDrive/CdDvdDriveNew.vue +23 -2
  88. package/components/common/vm/actions/common/customizeHardware/virtualHardware/cdDvdDrive/CdDvdDriveOld.vue +168 -168
  89. package/components/common/vm/actions/common/customizeHardware/virtualHardware/cdDvdDrive/media/Media.vue +25 -25
  90. package/components/common/vm/actions/common/customizeHardware/virtualHardware/cdDvdDrive/media/MediaNew.vue +78 -78
  91. package/components/common/vm/actions/common/customizeHardware/virtualHardware/cdDvdDrive/media/MediaOld.vue +50 -50
  92. package/components/common/vm/actions/common/customizeHardware/virtualHardware/cpu/coresPerSocket/CoresPerSocketNew.vue +1 -1
  93. package/components/common/vm/actions/common/customizeHardware/virtualHardware/cpu/hotPlug/HotPlugNew.vue +2 -3
  94. package/components/common/vm/actions/common/customizeHardware/virtualHardware/cpu/model/ModelNew.vue +1 -1
  95. package/components/common/vm/actions/common/customizeHardware/virtualHardware/cpu/shares/Shares.vue +140 -140
  96. package/components/common/vm/actions/common/customizeHardware/virtualHardware/cpu/shares/SharesNew.vue +1 -1
  97. package/components/common/vm/actions/common/customizeHardware/virtualHardware/cpu/shares/lib/config/options.ts +28 -28
  98. package/components/common/vm/actions/common/customizeHardware/virtualHardware/cpu/tooltip/TooltipNew.vue +154 -154
  99. package/components/common/vm/actions/common/customizeHardware/virtualHardware/limit/Limit.vue +220 -220
  100. package/components/common/vm/actions/common/customizeHardware/virtualHardware/limit/LimitNew.vue +1 -2
  101. package/components/common/vm/actions/common/customizeHardware/virtualHardware/memory/Memory.vue +307 -307
  102. package/components/common/vm/actions/common/customizeHardware/virtualHardware/memory/hotPlug/HotPlugNew.vue +1 -1
  103. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newHardDisk/NewHardDisk.vue +385 -385
  104. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newHardDisk/NewHardDiskNew.vue +23 -2
  105. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newHardDisk/cache/CacheNew.vue +3 -1
  106. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newHardDisk/file/FileNew.vue +1 -1
  107. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newHardDisk/limitIops/LimitIopsNew.vue +1 -1
  108. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newHardDisk/location/Location.vue +154 -154
  109. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newHardDisk/location/LocationOld.vue +85 -85
  110. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newHardDisk/mode/ModeNew.vue +1 -1
  111. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newHardDisk/provisioning/ProvisioningNew.vue +1 -1
  112. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newHardDisk/sharing/SharingNew.vue +1 -1
  113. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newNetwork/NewNetwork.vue +288 -288
  114. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newNetwork/adapterType/AdapterTypeNew.vue +3 -1
  115. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newNetwork/location/new/table/lib/config/config.ts +94 -94
  116. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newNetwork/macAddress/MacAddress.vue +119 -119
  117. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newPciDevice/NewPciDevice.vue +205 -205
  118. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newPciDevice/directPathIo/DirectPathIoNew.vue +66 -66
  119. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newPciDevice/directPathIo/DirectPathIoOld.vue +62 -62
  120. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newPciDevice/dynamicDirectPathIo/DynamicDirectPathIo.vue +31 -31
  121. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newPciDevice/dynamicDirectPathIo/DynamicDirectPathIoOld.vue +76 -76
  122. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newPciDevice/note/Note.vue +15 -15
  123. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newPciDevice/note/NoteNew.vue +42 -42
  124. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newPciDevice/note/NoteOld.vue +30 -30
  125. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newPciDevice/nvidiaGrid/NvidiaGridOld.vue +84 -84
  126. package/components/common/vm/actions/common/customizeHardware/virtualHardware/other/Other.vue +16 -16
  127. package/components/common/vm/actions/common/customizeHardware/virtualHardware/other/inputDevices/InputDevicesNew.vue +40 -40
  128. package/components/common/vm/actions/common/customizeHardware/virtualHardware/reservation/ReservationNew.vue +1 -1
  129. package/components/common/vm/actions/common/customizeHardware/virtualHardware/videoCard/VideoCard.vue +154 -154
  130. package/components/common/vm/actions/common/customizeHardware/virtualHardware/videoCard/numberDisplays/NumberDisplays.vue +53 -53
  131. package/components/common/vm/actions/common/customizeHardware/vmoptions/bootOptions/BootOptionsNew.vue +2 -2
  132. package/components/common/vm/actions/common/customizeHardware/vmoptions/bootOptions/delay/Delay.vue +32 -32
  133. package/components/common/vm/actions/common/customizeHardware/vmoptions/bootOptions/firmware/Firmware.vue +60 -60
  134. package/components/common/vm/actions/common/customizeHardware/vmoptions/bootOptions/order/Order.vue +174 -174
  135. package/components/common/vm/actions/common/customizeHardware/vmoptions/generalOptions/GeneralOptionsNew.vue +4 -2
  136. package/components/common/vm/actions/common/customizeHardware/vmoptions/remoteConsoleOptions/New.vue +2 -2
  137. package/components/common/vm/actions/common/customizeHardware/vmoptions/remoteConsoleOptions/copyPaste/CopyPasteNew.vue +31 -31
  138. package/components/common/vm/actions/common/customizeHardware/vmoptions/remoteConsoleOptions/fileTransfer/FileTransferNew.vue +31 -31
  139. package/components/common/vm/actions/common/customizeHardware/vmoptions/remoteConsoleOptions/keymap/Keymap.vue +32 -32
  140. package/components/common/vm/actions/common/customizeHardware/vmoptions/remoteConsoleOptions/password/Password.vue +103 -103
  141. package/components/common/vm/actions/common/customizeHardware/vmoptions/remoteConsoleOptions/password/PasswordNew.vue +128 -128
  142. package/components/common/vm/actions/common/customizeHardware/vmoptions/remoteConsoleOptions/usbRedirection/UsbRedirection.vue +28 -28
  143. package/components/common/vm/actions/common/customizeHardware/vmoptions/remoteConsoleOptions/usbRedirection/UsbRedirectionOld.vue +44 -44
  144. package/components/common/vm/actions/common/customizeHardware/vmoptions/tools/ToolsNew.vue +2 -2
  145. package/components/common/vm/actions/common/lib/utils/capabilities.ts +52 -52
  146. package/components/common/vm/actions/common/select/compatibility/Old.vue +107 -107
  147. package/components/common/vm/actions/common/select/computeResource/treeView/TreeView.vue +118 -118
  148. package/components/common/vm/actions/common/select/createType/CreateType.vue +38 -38
  149. package/components/common/vm/actions/common/select/createType/lib/models/interfaces.ts +5 -5
  150. package/components/common/vm/actions/common/select/name/Name.vue +174 -174
  151. package/components/common/vm/actions/common/select/options/Options.vue +18 -14
  152. package/components/common/vm/actions/common/select/os/Old.vue +152 -152
  153. package/components/common/vm/actions/common/select/os/Os.vue +139 -139
  154. package/components/common/vm/actions/common/select/storage/new/lib/models/interfaces.ts +5 -5
  155. package/components/common/vm/actions/common/select/storage/new/lib/utils/utils.ts +21 -21
  156. package/components/common/vm/actions/editSettings/new/Skeleton.vue +88 -88
  157. package/components/common/vmt/actions/add/Add.vue +641 -641
  158. package/components/common/vmt/actions/add/lib/config/steps.ts +107 -107
  159. package/components/common/vmt/actions/add/lib/models/interfaces.ts +23 -23
  160. package/components/common/wizards/vm/migrate/lib/config/constructDataReady.ts +220 -220
  161. package/components/common/wizards/vm/migrate/lib/config/steps.ts +157 -157
  162. package/components/common/wizards/vm/migrate/lib/validations.ts +68 -68
  163. package/components/common/wizards/vm/migrate/select/network/Network.vue +103 -103
  164. package/components/common/wizards/vm/migrate/select/network/table/network/lib/config/advancedTable.ts +91 -91
  165. package/composables/productNameLocal.ts +30 -30
  166. package/composables/useAppVersion.ts +21 -21
  167. package/package.json +2 -2
  168. package/plugins/date.ts +233 -233
  169. package/plugins/panelStates.ts +70 -70
  170. package/plugins/text.ts +59 -59
  171. package/public/spice-console/lib/images/bitmap.js +203 -203
  172. package/public/spice-console/network/spicechannel.js +387 -387
  173. package/store/main/mutations.ts +7 -7
  174. package/store/main/state.ts +7 -7
  175. package/store/tasks/mappers/recentTasks.ts +64 -64
@@ -1,243 +1,243 @@
1
- import type { UI_I_Localization } from '~/lib/models/interfaces'
2
- import type { UI_I_DetailsItem } from '~/components/common/details/lib/models/interfaces'
3
- import type { UI_T_Project } from '~/lib/models/types'
4
- import type { UI_I_CreateDatastoreForm } from '~/components/common/backup/storage/actions/add/lib/models/interfaces'
5
- import type { UI_I_CompatibleHosts } from '~/components/common/backup/storage/actions/add/steps/hostAccessibility/table/lib/models/interfaces'
6
-
7
- const getSelectedHosts = (
8
- allHosts: UI_I_CompatibleHosts,
9
- selectedHosts: string[],
10
- localization: UI_I_Localization
11
- ) => {
12
- const hostsData = selectedHosts
13
- ? allHosts.items
14
- .filter((host) => selectedHosts.includes(host.id))
15
- .map((host) => ({
16
- label: host.name,
17
- iconClassName: 'vsphere-icon-host',
18
- }))
19
- : []
20
-
21
- return {
22
- label: localization.common.hostsAccessibility,
23
- value: '',
24
- items: [
25
- {
26
- label: localization.common.hosts,
27
- value: hostsData as any,
28
- items: [],
29
- testId: 'view-hosts-name-in-complete',
30
- iconClassName: 'vsphere-icon-host',
31
- },
32
- ],
33
- actions: [],
34
- }
35
- }
36
-
37
- const localDetailsFunc = (
38
- localization: UI_I_Localization,
39
- data: UI_I_CreateDatastoreForm,
40
- project: UI_T_Project,
41
- allHosts: UI_I_CompatibleHosts
42
- ): UI_I_DetailsItem[] => {
43
- const { name, hosts } = data
44
-
45
- const details: UI_I_DetailsItem[] = [
46
- {
47
- label: localization.common.name,
48
- value: '',
49
- items: [
50
- {
51
- label: localization.common.name,
52
- value: name,
53
- items: [],
54
- testId: 'view-selected-name-in-complete',
55
- iconClassName: 'vsphere-icon-datastore',
56
- },
57
- ],
58
- actions: [],
59
- testId: 'view-selected-name',
60
- },
61
- ]
62
-
63
- if (project === 'sphere') {
64
- details.push(getSelectedHosts(allHosts, hosts, localization))
65
- }
66
-
67
- return details
68
- }
69
- const nfsDetailsFunc = (
70
- localization: UI_I_Localization,
71
- data: UI_I_CreateDatastoreForm,
72
- project: UI_T_Project,
73
- allHosts: UI_I_CompatibleHosts
74
- ): UI_I_DetailsItem[] => {
75
- const { name, server, folder, version, hosts } = data
76
- // const accessMode = readonly ? 'Read-only' : 'Read-write'
77
-
78
- const details: UI_I_DetailsItem[] = [
79
- {
80
- label: localization.common.nfsVersion,
81
- value: '',
82
- items: [
83
- {
84
- label: localization.common.version,
85
- value: version + '',
86
- items: [],
87
- testId: 'view-selected-nfs-version-in-complete',
88
- },
89
- ],
90
- actions: [],
91
- testId: 'view-selected-nfs-version',
92
- },
93
- {
94
- label: localization.common.nameAndConfiguration,
95
- value: '',
96
- items: [
97
- {
98
- label: localization.common.name,
99
- value: name,
100
- items: [],
101
- testId: 'view-storage-name-in-complete',
102
- iconClassName: 'vsphere-icon-datastore',
103
- },
104
- {
105
- label: localization.common.server,
106
- value: server,
107
- items: [],
108
- testId: 'view-server-name-in-complete',
109
- iconClassName: 'icon-server',
110
- },
111
- {
112
- label: localization.common.folder,
113
- value: folder,
114
- items: [],
115
- testId: 'view-folder-name-in-complete',
116
- iconClassName: 'vsphere-icon-folder',
117
- }
118
- ],
119
- actions: [],
120
- testId: 'view-selected-name-configuration',
121
- },
122
- ]
123
-
124
- if (project === 'sphere') {
125
- details.push(getSelectedHosts(allHosts, hosts, localization))
126
- }
127
-
128
- return details
129
- }
130
- const sambaDetailsFunc = (
131
- localization: UI_I_Localization,
132
- data: UI_I_CreateDatastoreForm,
133
- project: UI_T_Project,
134
- allHosts: UI_I_CompatibleHosts
135
- ): UI_I_DetailsItem[] => {
136
- const { name, server, folder, hosts } = data
137
-
138
- const details: UI_I_DetailsItem[] = [
139
- {
140
- label: localization.common.nameAndConfiguration,
141
- value: '',
142
- items: [
143
- {
144
- label: localization.common.name,
145
- value: name,
146
- items: [],
147
- testId: 'view-storage-name-in-complete',
148
- iconClassName: 'vsphere-icon-datastore',
149
- },
150
- {
151
- label: localization.common.server,
152
- value: server,
153
- items: [],
154
- testId: 'view-server-name-in-complete',
155
- iconClassName: 'icon-server',
156
- },
157
- {
158
- label: localization.common.folder,
159
- value: folder,
160
- items: [],
161
- testId: 'view-folder-name-in-complete',
162
- iconClassName: 'vsphere-icon-folder',
163
- }
164
- ],
165
- actions: [],
166
- testId: 'view-selected-name-configuration',
167
- },
168
- ]
169
-
170
- if (project === 'sphere') {
171
- details.push(getSelectedHosts(allHosts, hosts, localization))
172
- }
173
-
174
- return details
175
- }
176
- const sharedStormDetailsFunc = (
177
- localization: UI_I_Localization,
178
- data: UI_I_CreateDatastoreForm,
179
- project: UI_T_Project,
180
- allHosts: UI_I_CompatibleHosts,
181
- allDatastore: any
182
- ): UI_I_DetailsItem[] => {
183
- const { name, hosts, storm_id } = data
184
- const datastore = allDatastore.find(storage => storage.id === storm_id)
185
- const details: UI_I_DetailsItem[] = [
186
- {
187
- label: localization.common.name,
188
- value: '',
189
- items: [
190
- {
191
- label: localization.common.name,
192
- value: name,
193
- items: [],
194
- testId: 'view-storage-name-in-complete',
195
- iconClassName: 'vsphere-icon-datastore',
196
- },
197
- ],
198
- actions: [],
199
- },
200
- {
201
- label: localization.common.datastore,
202
- value: '',
203
- items: [
204
- {
205
- label: localization.common.name,
206
- value: datastore.name,
207
- items: [],
208
- testId: 'view-storage-name-in-complete',
209
- iconClassName: 'vsphere-icon-datastore',
210
- },
211
- ],
212
- actions: [],
213
- },
214
- ]
215
- if (project === 'sphere') {
216
- details.push(getSelectedHosts(allHosts, hosts, localization))
217
- }
218
-
219
- return details
220
- }
221
-
222
- export const constructDataReadyViewFunc = (
223
- localization: UI_I_Localization,
224
- data: UI_I_CreateDatastoreForm,
225
- project: UI_T_Project,
226
- allHosts: UI_I_CompatibleHosts,
227
- allDatastore: any
228
- ): UI_I_DetailsItem[] => {
229
- const details = {
230
- 1: localDetailsFunc,
231
- 2: nfsDetailsFunc,
232
- 3: sambaDetailsFunc,
233
- 4: sharedStormDetailsFunc,
234
- }
235
-
236
- return details[data.type_code as 1 | 2 | 3 | 4](
237
- localization,
238
- data,
239
- project,
240
- allHosts,
241
- allDatastore
242
- )
243
- }
1
+ import type { UI_I_Localization } from '~/lib/models/interfaces'
2
+ import type { UI_I_DetailsItem } from '~/components/common/details/lib/models/interfaces'
3
+ import type { UI_T_Project } from '~/lib/models/types'
4
+ import type { UI_I_CreateDatastoreForm } from '~/components/common/backup/storage/actions/add/lib/models/interfaces'
5
+ import type { UI_I_CompatibleHosts } from '~/components/common/backup/storage/actions/add/steps/hostAccessibility/table/lib/models/interfaces'
6
+
7
+ const getSelectedHosts = (
8
+ allHosts: UI_I_CompatibleHosts,
9
+ selectedHosts: string[],
10
+ localization: UI_I_Localization
11
+ ) => {
12
+ const hostsData = selectedHosts
13
+ ? allHosts.items
14
+ .filter((host) => selectedHosts.includes(host.id))
15
+ .map((host) => ({
16
+ label: host.name,
17
+ iconClassName: 'vsphere-icon-host',
18
+ }))
19
+ : []
20
+
21
+ return {
22
+ label: localization.common.hostsAccessibility,
23
+ value: '',
24
+ items: [
25
+ {
26
+ label: localization.common.hosts,
27
+ value: hostsData as any,
28
+ items: [],
29
+ testId: 'view-hosts-name-in-complete',
30
+ iconClassName: 'vsphere-icon-host',
31
+ },
32
+ ],
33
+ actions: [],
34
+ }
35
+ }
36
+
37
+ const localDetailsFunc = (
38
+ localization: UI_I_Localization,
39
+ data: UI_I_CreateDatastoreForm,
40
+ project: UI_T_Project,
41
+ allHosts: UI_I_CompatibleHosts
42
+ ): UI_I_DetailsItem[] => {
43
+ const { name, hosts } = data
44
+
45
+ const details: UI_I_DetailsItem[] = [
46
+ {
47
+ label: localization.common.name,
48
+ value: '',
49
+ items: [
50
+ {
51
+ label: localization.common.name,
52
+ value: name,
53
+ items: [],
54
+ testId: 'view-selected-name-in-complete',
55
+ iconClassName: 'vsphere-icon-datastore',
56
+ },
57
+ ],
58
+ actions: [],
59
+ testId: 'view-selected-name',
60
+ },
61
+ ]
62
+
63
+ if (project === 'sphere') {
64
+ details.push(getSelectedHosts(allHosts, hosts, localization))
65
+ }
66
+
67
+ return details
68
+ }
69
+ const nfsDetailsFunc = (
70
+ localization: UI_I_Localization,
71
+ data: UI_I_CreateDatastoreForm,
72
+ project: UI_T_Project,
73
+ allHosts: UI_I_CompatibleHosts
74
+ ): UI_I_DetailsItem[] => {
75
+ const { name, server, folder, version, hosts } = data
76
+ // const accessMode = readonly ? 'Read-only' : 'Read-write'
77
+
78
+ const details: UI_I_DetailsItem[] = [
79
+ {
80
+ label: localization.common.nfsVersion,
81
+ value: '',
82
+ items: [
83
+ {
84
+ label: localization.common.version,
85
+ value: version + '',
86
+ items: [],
87
+ testId: 'view-selected-nfs-version-in-complete',
88
+ },
89
+ ],
90
+ actions: [],
91
+ testId: 'view-selected-nfs-version',
92
+ },
93
+ {
94
+ label: localization.common.nameAndConfiguration,
95
+ value: '',
96
+ items: [
97
+ {
98
+ label: localization.common.name,
99
+ value: name,
100
+ items: [],
101
+ testId: 'view-storage-name-in-complete',
102
+ iconClassName: 'vsphere-icon-datastore',
103
+ },
104
+ {
105
+ label: localization.common.server,
106
+ value: server,
107
+ items: [],
108
+ testId: 'view-server-name-in-complete',
109
+ iconClassName: 'icon-server',
110
+ },
111
+ {
112
+ label: localization.common.folder,
113
+ value: folder,
114
+ items: [],
115
+ testId: 'view-folder-name-in-complete',
116
+ iconClassName: 'vsphere-icon-folder',
117
+ }
118
+ ],
119
+ actions: [],
120
+ testId: 'view-selected-name-configuration',
121
+ },
122
+ ]
123
+
124
+ if (project === 'sphere') {
125
+ details.push(getSelectedHosts(allHosts, hosts, localization))
126
+ }
127
+
128
+ return details
129
+ }
130
+ const sambaDetailsFunc = (
131
+ localization: UI_I_Localization,
132
+ data: UI_I_CreateDatastoreForm,
133
+ project: UI_T_Project,
134
+ allHosts: UI_I_CompatibleHosts
135
+ ): UI_I_DetailsItem[] => {
136
+ const { name, server, folder, hosts } = data
137
+
138
+ const details: UI_I_DetailsItem[] = [
139
+ {
140
+ label: localization.common.nameAndConfiguration,
141
+ value: '',
142
+ items: [
143
+ {
144
+ label: localization.common.name,
145
+ value: name,
146
+ items: [],
147
+ testId: 'view-storage-name-in-complete',
148
+ iconClassName: 'vsphere-icon-datastore',
149
+ },
150
+ {
151
+ label: localization.common.server,
152
+ value: server,
153
+ items: [],
154
+ testId: 'view-server-name-in-complete',
155
+ iconClassName: 'icon-server',
156
+ },
157
+ {
158
+ label: localization.common.folder,
159
+ value: folder,
160
+ items: [],
161
+ testId: 'view-folder-name-in-complete',
162
+ iconClassName: 'vsphere-icon-folder',
163
+ }
164
+ ],
165
+ actions: [],
166
+ testId: 'view-selected-name-configuration',
167
+ },
168
+ ]
169
+
170
+ if (project === 'sphere') {
171
+ details.push(getSelectedHosts(allHosts, hosts, localization))
172
+ }
173
+
174
+ return details
175
+ }
176
+ const sharedStormDetailsFunc = (
177
+ localization: UI_I_Localization,
178
+ data: UI_I_CreateDatastoreForm,
179
+ project: UI_T_Project,
180
+ allHosts: UI_I_CompatibleHosts,
181
+ allDatastore: any
182
+ ): UI_I_DetailsItem[] => {
183
+ const { name, hosts, storm_id } = data
184
+ const datastore = allDatastore.find(storage => storage.id === storm_id)
185
+ const details: UI_I_DetailsItem[] = [
186
+ {
187
+ label: localization.common.name,
188
+ value: '',
189
+ items: [
190
+ {
191
+ label: localization.common.name,
192
+ value: name,
193
+ items: [],
194
+ testId: 'view-storage-name-in-complete',
195
+ iconClassName: 'vsphere-icon-datastore',
196
+ },
197
+ ],
198
+ actions: [],
199
+ },
200
+ {
201
+ label: localization.common.datastore,
202
+ value: '',
203
+ items: [
204
+ {
205
+ label: localization.common.name,
206
+ value: datastore.name,
207
+ items: [],
208
+ testId: 'view-storage-name-in-complete',
209
+ iconClassName: 'vsphere-icon-datastore',
210
+ },
211
+ ],
212
+ actions: [],
213
+ },
214
+ ]
215
+ if (project === 'sphere') {
216
+ details.push(getSelectedHosts(allHosts, hosts, localization))
217
+ }
218
+
219
+ return details
220
+ }
221
+
222
+ export const constructDataReadyViewFunc = (
223
+ localization: UI_I_Localization,
224
+ data: UI_I_CreateDatastoreForm,
225
+ project: UI_T_Project,
226
+ allHosts: UI_I_CompatibleHosts,
227
+ allDatastore: any
228
+ ): UI_I_DetailsItem[] => {
229
+ const details = {
230
+ 1: localDetailsFunc,
231
+ 2: nfsDetailsFunc,
232
+ 3: sambaDetailsFunc,
233
+ 4: sharedStormDetailsFunc,
234
+ }
235
+
236
+ return details[data.type_code as 1 | 2 | 3 | 4](
237
+ localization,
238
+ data,
239
+ project,
240
+ allHosts,
241
+ allDatastore
242
+ )
243
+ }
@@ -1,65 +1,65 @@
1
- <template>
2
- <common-modals-confirm-by-input
3
- :title="localization.common.confirmDeletionDatastoreTitle"
4
- :sub-title="props.datastore?.name || ''"
5
- test-id="datastore-delete"
6
- width="576px"
7
- @hide="onHide"
8
- @confirm="onDelete"
9
- >
10
- <template #content>
11
- <p class="delete-group__text">
12
- {{ localization.common.confirmDeletionDatastoreBodyFirst }}
13
- </p>
14
-
15
- <p class="delete-group__text">
16
- {{ localization.common.confirmDeletionDatastoreBodySecond }}
17
- </p>
18
-
19
- <p class="delete-group__text">
20
- {{ localization.common.confirmDeletionDatastoreBodyThird }}
21
- </p>
22
- </template>
23
- </common-modals-confirm-by-input>
24
- </template>
25
-
26
- <script setup lang="ts">
27
- import type { UI_I_Localization } from '~/lib/models/interfaces'
28
- import type { UI_I_DeleteItem } from '~/components/common/backup/storage/actions/delete/lib/models/interfaces'
29
- import { sendTask } from '~/lib/utils/sendTask'
30
- import { getBackupTreeNodeIdByTypeFromRoute } from '~/components/common/backup/lib/utils/getBackupOrBackupStorageId'
31
-
32
- const props = defineProps<{
33
- datastore: UI_I_DeleteItem | null
34
- }>()
35
- const emits = defineEmits<{
36
- (event: 'delete', value: string): void
37
- (event: 'hide'): void
38
- }>()
39
-
40
- const localization = computed<UI_I_Localization>(() => useLocal())
41
-
42
- const targetId = computed<string>(() =>
43
- getBackupTreeNodeIdByTypeFromRoute('last')
44
- )
45
- const onDelete = (): void => {
46
- emits('delete', targetId.value)
47
- }
48
- const onHide = (): void => {
49
- emits('hide')
50
- }
51
- </script>
52
-
53
- <style lang="scss" scoped>
54
- @import 'bfg-common/assets/scss/common/mixins.scss';
55
- .delete-group__text {
56
- @include text($fs: 0.6rem);
57
- font-size: 0.6rem;
58
- letter-spacing: normal;
59
- line-height: 1rem;
60
-
61
- &:first-child {
62
- margin-bottom: 1.2em;
63
- }
64
- }
65
- </style>
1
+ <template>
2
+ <common-modals-confirm-by-input
3
+ :title="localization.common.confirmDeletionDatastoreTitle"
4
+ :sub-title="props.datastore?.name || ''"
5
+ test-id="datastore-delete"
6
+ width="576px"
7
+ @hide="onHide"
8
+ @confirm="onDelete"
9
+ >
10
+ <template #content>
11
+ <p class="delete-group__text">
12
+ {{ localization.common.confirmDeletionDatastoreBodyFirst }}
13
+ </p>
14
+
15
+ <p class="delete-group__text">
16
+ {{ localization.common.confirmDeletionDatastoreBodySecond }}
17
+ </p>
18
+
19
+ <p class="delete-group__text">
20
+ {{ localization.common.confirmDeletionDatastoreBodyThird }}
21
+ </p>
22
+ </template>
23
+ </common-modals-confirm-by-input>
24
+ </template>
25
+
26
+ <script setup lang="ts">
27
+ import type { UI_I_Localization } from '~/lib/models/interfaces'
28
+ import type { UI_I_DeleteItem } from '~/components/common/backup/storage/actions/delete/lib/models/interfaces'
29
+ import { sendTask } from '~/lib/utils/sendTask'
30
+ import { getBackupTreeNodeIdByTypeFromRoute } from '~/components/common/backup/lib/utils/getBackupOrBackupStorageId'
31
+
32
+ const props = defineProps<{
33
+ datastore: UI_I_DeleteItem | null
34
+ }>()
35
+ const emits = defineEmits<{
36
+ (event: 'delete', value: string): void
37
+ (event: 'hide'): void
38
+ }>()
39
+
40
+ const localization = computed<UI_I_Localization>(() => useLocal())
41
+
42
+ const targetId = computed<string>(() =>
43
+ getBackupTreeNodeIdByTypeFromRoute('last')
44
+ )
45
+ const onDelete = (): void => {
46
+ emits('delete', targetId.value)
47
+ }
48
+ const onHide = (): void => {
49
+ emits('hide')
50
+ }
51
+ </script>
52
+
53
+ <style lang="scss" scoped>
54
+ @import 'bfg-common/assets/scss/common/mixins.scss';
55
+ .delete-group__text {
56
+ @include text($fs: 0.6rem);
57
+ font-size: 0.6rem;
58
+ letter-spacing: normal;
59
+ line-height: 1rem;
60
+
61
+ &:first-child {
62
+ margin-bottom: 1.2em;
63
+ }
64
+ }
65
+ </style>
@@ -1,18 +1,18 @@
1
- <template>
2
- <div class="skeleton-wrap">
3
- <ui-skeleton-item height="18px" />
4
- <ui-skeleton-item height="18px" />
5
- <ui-skeleton-item height="18px" />
6
- <ui-skeleton-item height="18px" />
7
- <ui-skeleton-item height="18px" />
8
- </div>
9
- </template>
10
-
11
- <script setup lang="ts"></script>
12
-
13
- <style scoped lang="scss">
14
- .skeleton-wrap {
15
- display: grid;
16
- grid-gap: 12px;
17
- }
18
- </style>
1
+ <template>
2
+ <div class="skeleton-wrap">
3
+ <ui-skeleton-item height="18px" />
4
+ <ui-skeleton-item height="18px" />
5
+ <ui-skeleton-item height="18px" />
6
+ <ui-skeleton-item height="18px" />
7
+ <ui-skeleton-item height="18px" />
8
+ </div>
9
+ </template>
10
+
11
+ <script setup lang="ts"></script>
12
+
13
+ <style scoped lang="scss">
14
+ .skeleton-wrap {
15
+ display: grid;
16
+ grid-gap: 12px;
17
+ }
18
+ </style>
@@ -1 +1 @@
1
- export type UI_T_BlocksWidth = [number, number, number]
1
+ export type UI_T_BlocksWidth = [number, number, number]
@@ -1,5 +1,5 @@
1
- export interface UI_I_FileInfo {
2
- type: string
3
- title: string
4
- value: string | number
5
- }
1
+ export interface UI_I_FileInfo {
2
+ type: string
3
+ title: string
4
+ value: string | number
5
+ }