bfg-common 1.5.241 → 1.5.243

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 (172) 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/scss/common/icons/icons-1.scss +2 -2
  7. package/assets/scss/common/icons/icons-5.scss +5 -5
  8. package/assets/scss/common/icons/icons-6.scss +1 -1
  9. package/assets/scss/common/theme.scss +0 -6
  10. package/components/atoms/TheIcon3.vue +50 -50
  11. package/components/atoms/perPage/PerPage.vue +58 -58
  12. package/components/atoms/table/dataGrid/DataGrid.vue +1717 -1717
  13. package/components/atoms/table/dataGrid/lib/config/settingsTable.ts +94 -94
  14. package/components/atoms/table/dataGrid/lib/utils/export.ts +16 -16
  15. package/components/atoms/tabs/VerticalTabs.vue +105 -105
  16. package/components/common/backup/storage/actions/add/Add.vue +247 -247
  17. package/components/common/backup/storage/actions/add/New.vue +292 -281
  18. package/components/common/backup/storage/actions/add/Old.vue +114 -114
  19. package/components/common/backup/storage/actions/add/lib/config/steps.ts +168 -168
  20. package/components/common/backup/storage/actions/add/steps/nameAndConfigure/NameAndConfigure.vue +41 -41
  21. package/components/common/backup/storage/actions/add/steps/nameAndConfigure/NameAndConfigureNew.vue +314 -294
  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 +242 -242
  24. package/components/common/backup/storage/actions/add/steps/typeMode/TypeModeNew.vue +18 -3
  25. package/components/common/backup/storage/actions/delete/Delete.vue +65 -65
  26. package/components/common/browse/BrowseNew.vue +2 -8
  27. package/components/common/browse/blocks/contents/filesNew/Skeleton.vue +18 -18
  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/Header.vue +214 -214
  31. package/components/common/layout/theHeader/feedback/new/additionalDetails/Headline.vue +76 -66
  32. package/components/common/layout/theHeader/feedback/new/subtitle/Subtitle.vue +80 -70
  33. package/components/common/layout/theHeader/helpMenu/About.vue +82 -82
  34. package/components/common/layout/theHeader/userMenu/modals/preferences/view/ViewOld.vue +112 -112
  35. package/components/common/monitor/overview/OverviewOld.vue +139 -139
  36. package/components/common/pages/home/headline/Headline.vue +45 -45
  37. package/components/common/pages/home/headline/HeadlineOld.vue +42 -42
  38. package/components/common/pages/home/lib/models/interfaces.ts +48 -48
  39. package/components/common/pages/home/widgets/Widgets.vue +49 -49
  40. package/components/common/pages/home/widgets/WidgetsNew.vue +86 -86
  41. package/components/common/pages/home/widgets/WidgetsOld.vue +34 -34
  42. package/components/common/pages/home/widgets/hosts/Hosts.vue +27 -27
  43. package/components/common/pages/home/widgets/hosts/lib/config/items.ts +23 -23
  44. package/components/common/pages/home/widgets/vms/Vms.vue +26 -26
  45. package/components/common/pages/home/widgets/vms/VmsOld.vue +35 -35
  46. package/components/common/pages/home/widgets/vms/lib/config/items.ts +19 -19
  47. package/components/common/pages/packages/Packages.vue +208 -208
  48. package/components/common/pages/shortcuts/block/BlockOld.vue +68 -68
  49. package/components/common/pages/tasks/table/Table.vue +25 -7
  50. package/components/common/pages/tasks/table/expandDetails/ExpandDetails.vue +27 -9
  51. package/components/common/readyToComplete/ReadyToComplete.vue +17 -17
  52. package/components/common/recursionTree/RecursionTree.vue +223 -223
  53. package/components/common/select/button/ButtonDropdown.vue +108 -108
  54. package/components/common/spiceConsole/Drawer.vue +377 -377
  55. package/components/common/spiceConsole/lib/models/interfaces.ts +5 -5
  56. package/components/common/tooltip/Help.vue +181 -0
  57. package/components/common/tooltip/lib/models/types.ts +1 -0
  58. package/components/common/vm/actions/add/folderTreeView/FolderTreeView.vue +72 -72
  59. package/components/common/vm/actions/add/folderTreeView/New.vue +40 -40
  60. package/components/common/vm/actions/add/folderTreeView/Old.vue +50 -50
  61. package/components/common/vm/actions/clone/lib/config/steps.ts +291 -291
  62. package/components/common/vm/actions/clone/toTemplate/lib/config/steps.ts +116 -116
  63. package/components/common/vm/actions/common/customizeHardware/CustomizeHardwareNew.vue +2 -5
  64. package/components/common/vm/actions/common/customizeHardware/virtualHardware/VirtualHardwareNew.vue +7 -7
  65. package/components/common/vm/actions/common/customizeHardware/virtualHardware/VirtualHardwareOld.vue +319 -319
  66. package/components/common/vm/actions/common/customizeHardware/virtualHardware/browseView/BrowseView.vue +219 -219
  67. package/components/common/vm/actions/common/customizeHardware/virtualHardware/bus/Bus.vue +100 -100
  68. package/components/common/vm/actions/common/customizeHardware/virtualHardware/bus/BusNew.vue +104 -95
  69. package/components/common/vm/actions/common/customizeHardware/virtualHardware/cdDvdDrive/CdDvdDrive.vue +232 -232
  70. package/components/common/vm/actions/common/customizeHardware/virtualHardware/cdDvdDrive/CdDvdDriveNew.vue +0 -4
  71. package/components/common/vm/actions/common/customizeHardware/virtualHardware/cdDvdDrive/CdDvdDriveOld.vue +168 -168
  72. package/components/common/vm/actions/common/customizeHardware/virtualHardware/cdDvdDrive/media/Media.vue +25 -25
  73. package/components/common/vm/actions/common/customizeHardware/virtualHardware/cdDvdDrive/media/MediaNew.vue +78 -78
  74. package/components/common/vm/actions/common/customizeHardware/virtualHardware/cdDvdDrive/media/MediaOld.vue +50 -50
  75. package/components/common/vm/actions/common/customizeHardware/virtualHardware/cpu/CpuNew.vue +59 -8
  76. package/components/common/vm/actions/common/customizeHardware/virtualHardware/cpu/model/ModelNew.vue +132 -109
  77. package/components/common/vm/actions/common/customizeHardware/virtualHardware/cpu/shares/Shares.vue +140 -140
  78. package/components/common/vm/actions/common/customizeHardware/virtualHardware/cpu/shares/SharesNew.vue +1 -6
  79. package/components/common/vm/actions/common/customizeHardware/virtualHardware/cpu/shares/lib/config/options.ts +28 -28
  80. package/components/common/vm/actions/common/customizeHardware/virtualHardware/cpu/tooltip/TooltipNew.vue +154 -154
  81. package/components/common/vm/actions/common/customizeHardware/virtualHardware/limit/Limit.vue +220 -220
  82. package/components/common/vm/actions/common/customizeHardware/virtualHardware/memory/Memory.vue +307 -307
  83. package/components/common/vm/actions/common/customizeHardware/virtualHardware/memory/MemoryNew.vue +1 -5
  84. package/components/common/vm/actions/common/customizeHardware/virtualHardware/memory/hotPlug/HotPlugNew.vue +2 -8
  85. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newHardDisk/NewHardDisk.vue +382 -382
  86. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newHardDisk/NewHardDiskNew.vue +0 -4
  87. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newHardDisk/file/FileNew.vue +3 -8
  88. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newHardDisk/location/Location.vue +151 -151
  89. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newHardDisk/location/LocationNew.vue +73 -73
  90. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newHardDisk/location/LocationOld.vue +83 -83
  91. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newHardDisk/maximumSize/MaximumSizeNew.vue +4 -8
  92. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newHardDisk/provisioning/ProvisioningNew.vue +1 -6
  93. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newHardDisk/sharing/SharingNew.vue +1 -6
  94. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newNetwork/NewNetwork.vue +288 -288
  95. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newNetwork/NewNetworkNew.vue +1 -1
  96. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newNetwork/location/new/New.vue +3 -4
  97. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newNetwork/location/new/table/Table.vue +0 -1
  98. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newNetwork/location/new/table/lib/config/config.ts +94 -94
  99. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newNetwork/macAddress/MacAddress.vue +119 -119
  100. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newPciDevice/NewPciDevice.vue +205 -205
  101. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newPciDevice/directPathIo/DirectPathIoNew.vue +66 -66
  102. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newPciDevice/directPathIo/DirectPathIoOld.vue +62 -62
  103. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newPciDevice/dynamicDirectPathIo/DynamicDirectPathIo.vue +31 -31
  104. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newPciDevice/dynamicDirectPathIo/DynamicDirectPathIoOld.vue +76 -76
  105. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newPciDevice/note/Note.vue +15 -15
  106. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newPciDevice/note/NoteNew.vue +42 -42
  107. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newPciDevice/note/NoteOld.vue +30 -30
  108. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newPciDevice/nvidiaGrid/NvidiaGridOld.vue +84 -84
  109. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newUsbController/NewUsbControllerNew.vue +0 -1
  110. package/components/common/vm/actions/common/customizeHardware/virtualHardware/other/Other.vue +16 -16
  111. package/components/common/vm/actions/common/customizeHardware/virtualHardware/other/OtherNew.vue +2 -8
  112. package/components/common/vm/actions/common/customizeHardware/virtualHardware/other/inputDevices/InputDevicesNew.vue +40 -40
  113. package/components/common/vm/actions/common/customizeHardware/virtualHardware/reservation/ReservationNew.vue +2 -5
  114. package/components/common/vm/actions/common/customizeHardware/virtualHardware/videoCard/VideoCardNew.vue +2 -5
  115. package/components/common/vm/actions/common/customizeHardware/vmoptions/Vmoptions.vue +145 -145
  116. package/components/common/vm/actions/common/customizeHardware/vmoptions/bootOptions/BootOptionsNew.vue +1 -5
  117. package/components/common/vm/actions/common/customizeHardware/vmoptions/bootOptions/delay/Delay.vue +32 -32
  118. package/components/common/vm/actions/common/customizeHardware/vmoptions/bootOptions/firmware/Firmware.vue +60 -60
  119. package/components/common/vm/actions/common/customizeHardware/vmoptions/bootOptions/order/Order.vue +174 -174
  120. package/components/common/vm/actions/common/customizeHardware/vmoptions/bootOptions/order/OrderNew.vue +0 -4
  121. package/components/common/vm/actions/common/customizeHardware/vmoptions/generalOptions/GeneralOptionsNew.vue +0 -1
  122. package/components/common/vm/actions/common/customizeHardware/vmoptions/remoteConsoleOptions/New.vue +2 -8
  123. package/components/common/vm/actions/common/customizeHardware/vmoptions/remoteConsoleOptions/copyPaste/CopyPasteNew.vue +31 -31
  124. package/components/common/vm/actions/common/customizeHardware/vmoptions/remoteConsoleOptions/fileTransfer/FileTransferNew.vue +31 -31
  125. package/components/common/vm/actions/common/customizeHardware/vmoptions/remoteConsoleOptions/keymap/Keymap.vue +32 -32
  126. package/components/common/vm/actions/common/customizeHardware/vmoptions/remoteConsoleOptions/password/Password.vue +103 -103
  127. package/components/common/vm/actions/common/customizeHardware/vmoptions/remoteConsoleOptions/password/PasswordNew.vue +128 -128
  128. package/components/common/vm/actions/common/customizeHardware/vmoptions/remoteConsoleOptions/usbRedirection/UsbRedirection.vue +28 -28
  129. package/components/common/vm/actions/common/customizeHardware/vmoptions/remoteConsoleOptions/usbRedirection/UsbRedirectionNew.vue +39 -39
  130. package/components/common/vm/actions/common/customizeHardware/vmoptions/remoteConsoleOptions/usbRedirection/UsbRedirectionOld.vue +44 -44
  131. package/components/common/vm/actions/common/customizeHardware/vmoptions/tools/ToolsNew.vue +1 -5
  132. package/components/common/vm/actions/common/lib/utils/capabilities.ts +52 -52
  133. package/components/common/vm/actions/common/select/compatibility/Old.vue +107 -107
  134. package/components/common/vm/actions/common/select/computeResource/treeView/New.vue +44 -44
  135. package/components/common/vm/actions/common/select/computeResource/treeView/TreeView.vue +118 -118
  136. package/components/common/vm/actions/common/select/createType/CreateType.vue +38 -38
  137. package/components/common/vm/actions/common/select/createType/lib/models/interfaces.ts +5 -5
  138. package/components/common/vm/actions/common/select/name/New.vue +52 -69
  139. package/components/common/vm/actions/common/select/os/Old.vue +152 -152
  140. package/components/common/vm/actions/common/select/os/Os.vue +139 -139
  141. package/components/common/vm/actions/common/select/storage/new/New.vue +1 -5
  142. package/components/common/vm/actions/common/select/storage/new/lib/config/table.ts +1 -2
  143. package/components/common/vm/actions/common/select/storage/new/lib/models/interfaces.ts +5 -5
  144. package/components/common/vm/actions/common/select/storage/new/lib/utils/utils.ts +21 -21
  145. package/components/common/vm/actions/editSettings/new/Skeleton.vue +88 -88
  146. package/components/common/wizards/datastore/add/New.vue +14 -3
  147. package/components/common/wizards/datastore/add/steps/nameAndConfigure/NameAndConfigureNew.vue +27 -6
  148. package/components/common/wizards/datastore/add/steps/nameAndDevice/NameAndDeviceNew.vue +15 -3
  149. package/components/common/wizards/datastore/add/steps/typeMode/TypeModeNew.vue +14 -3
  150. package/components/common/wizards/vm/migrate/lib/config/constructDataReady.ts +220 -220
  151. package/components/common/wizards/vm/migrate/lib/config/steps.ts +157 -157
  152. package/components/common/wizards/vm/migrate/lib/validations.ts +68 -68
  153. package/components/common/wizards/vm/migrate/select/computeResource/tableView/TableView.vue +137 -135
  154. package/components/common/wizards/vm/migrate/select/network/Network.vue +103 -103
  155. package/components/common/wizards/vm/migrate/select/network/table/network/lib/config/advancedTable.ts +91 -91
  156. package/composables/productNameLocal.ts +30 -30
  157. package/composables/useAppVersion.ts +21 -21
  158. package/package.json +2 -2
  159. package/plugins/date.ts +233 -233
  160. package/plugins/text.ts +48 -59
  161. package/public/spice-console/lib/images/bitmap.js +203 -203
  162. package/public/spice-console/network/spicechannel.js +387 -387
  163. package/store/main/mutations.ts +7 -7
  164. package/store/main/state.ts +7 -7
  165. package/store/tasks/mappers/recentTasks.ts +64 -64
  166. package/components/common/backup/actions/deleteBackup/DeleteBackup.vue +0 -38
  167. package/plugins/cron.ts +0 -75
  168. package/plugins/helpers.ts +0 -18
  169. package/plugins/number.ts +0 -18
  170. package/plugins/panelStates.ts +0 -70
  171. package/plugins/time.ts +0 -17
  172. /package/{lib/models/plugins/panelStates → components/common/split/horizontal/lib/models}/interfaces.ts +0 -0
@@ -1,281 +1,292 @@
1
- <template>
2
- <ui-wizard
3
- show
4
- :steps="props.wizard.steps"
5
- :selected-scheme="props.selectedScheme"
6
- :is-loading="props.wizard.wizardLoader.status"
7
- :title="props.title"
8
- :texts="texts"
9
- test-id="add-datastore-wizard"
10
- @change-steps="onChangeSteps"
11
- @hide="onHideModal"
12
- @submit="onCreateDatastore"
13
- >
14
- <template #content="{ selectedStep }">
15
- <ui-wizard-block
16
- v-if="selectedStep.id === dynamicSteps.type"
17
- :sub-title-height="height0"
18
- >
19
- <template #subTitle>
20
- <div ref="subTitleBlock0">
21
- <div class="subtitle-block flex-row">
22
- <ui-wizard-subtitle :sub-title="selectedStep.subTitle" />
23
-
24
- <common-wizards-datastore-add-steps-common-tooltip-info
25
- id="datastore-type-subtitle-tooltip"
26
- :description="localization.common.datastoreTypeHelpDesc"
27
- />
28
- </div>
29
- </div>
30
- </template>
31
- <template #content>
32
- <common-backup-storage-actions-add-steps-type-mode
33
- v-if="selectedStep.id === dynamicSteps.type"
34
- v-model="formModelLocal.type_code"
35
- />
36
- </template>
37
- </ui-wizard-block>
38
-
39
- <ui-wizard-block
40
- v-if="selectedStep.id === dynamicSteps.name"
41
- :sub-title-height="height1"
42
- >
43
- <template #subTitle>
44
- <div ref="subTitleBlock1">
45
- <div class="subtitle-block">
46
- <ui-alert
47
- v-if="props.alertMessages[dynamicSteps.name].length"
48
- test-id="add-host-connection-settings-error-alert"
49
- type="error"
50
- size="md"
51
- :messages="props.alertMessages[dynamicSteps.name]"
52
- class="subtitle-block__alert"
53
- />
54
-
55
- <ui-wizard-subtitle :sub-title="selectedStep.subTitle" />
56
- </div>
57
- </div>
58
- </template>
59
- <template #content>
60
- <common-backup-storage-actions-add-steps-name
61
- v-if="selectedStep.id === dynamicSteps.name"
62
- v-model="formModelLocal"
63
- :project="props.project"
64
- :messages-fields="selectedStep.fields"
65
- />
66
- </template>
67
- </ui-wizard-block>
68
-
69
- <ui-wizard-block
70
- v-if="selectedStep.id === dynamicSteps.nameAndConfigure"
71
- :sub-title-height="height2"
72
- >
73
- <template #subTitle>
74
- <div ref="subTitleBlock2">
75
- <div class="subtitle-block">
76
- <ui-alert
77
- v-if="props.alertMessages[dynamicSteps.nameAndConfigure].length"
78
- test-id="add-host-connection-settings-error-alert"
79
- type="error"
80
- size="md"
81
- :messages="props.alertMessages[dynamicSteps.nameAndConfigure]"
82
- class="subtitle-block__alert"
83
- />
84
-
85
- <ui-wizard-subtitle :sub-title="selectedStep.subTitle" />
86
- </div>
87
- </div>
88
- </template>
89
- <template #content>
90
- <common-backup-storage-actions-add-steps-name-and-configure
91
- v-if="selectedStep.id === dynamicSteps.nameAndConfigure"
92
- v-model="formModelLocal"
93
- :project="props.project"
94
- :messages-fields="selectedStep.fields"
95
- />
96
- </template>
97
- </ui-wizard-block>
98
-
99
- <ui-wizard-block
100
- v-if="selectedStep.id === dynamicSteps.storage"
101
- :sub-title-height="height3"
102
- >
103
- <template #subTitle>
104
- <div ref="subTitleBlock3">
105
- <div class="subtitle-block">
106
- <ui-alert
107
- v-if="props.alertMessages[dynamicSteps.storage].length"
108
- test-id="add-host-accessibility-error-alert"
109
- type="error"
110
- size="md"
111
- :messages="props.alertMessages[dynamicSteps.storage]"
112
- class="subtitle-block__alert"
113
- />
114
-
115
- <ui-wizard-subtitle :sub-title="selectedStep.subTitle" />
116
- </div>
117
- </div>
118
- </template>
119
- <template #content>
120
- <common-vm-actions-common-select-storage
121
- :datastore="props.datastore"
122
- :get-datastore-table-func="props.getDatastoreTableFunc"
123
- hide-compatibility
124
- hide-alert
125
- class="storage-datatable h-full"
126
- @change-storage="onChangeStorage"
127
- />
128
- </template>
129
- </ui-wizard-block>
130
-
131
- <ui-wizard-block
132
- v-if="selectedStep.id === dynamicSteps.hostAccessibility"
133
- :sub-title-height="height4"
134
- >
135
- <template #subTitle>
136
- <div ref="subTitleBlock4">
137
- <div class="subtitle-block">
138
- <ui-alert
139
- v-if="
140
- props.alertMessages[dynamicSteps.hostAccessibility].length
141
- "
142
- test-id="add-host-accessibility-error-alert"
143
- type="error"
144
- size="md"
145
- :messages="props.alertMessages[dynamicSteps.hostAccessibility]"
146
- class="subtitle-block__alert"
147
- />
148
-
149
- <ui-wizard-subtitle :sub-title="selectedStep.subTitle" />
150
- </div>
151
- </div>
152
- </template>
153
- <template #content>
154
- <common-backup-storage-actions-add-steps-host-accessibility
155
- v-if="selectedStep.id === dynamicSteps.hostAccessibility"
156
- v-model="formModelLocal.hosts"
157
- :alert-messages="
158
- props.alertMessages[dynamicSteps.hostAccessibility]
159
- "
160
- :hosts="props.hosts"
161
- />
162
- </template>
163
- </ui-wizard-block>
164
-
165
- <ui-wizard-block
166
- v-if="selectedStep.id === dynamicSteps.readyComplete"
167
- :sub-title-height="height5"
168
- >
169
- <template #subTitle>
170
- <div ref="subTitleBlock5">
171
- <div class="subtitle-block">
172
- <ui-wizard-subtitle :sub-title="selectedStep.subTitle" />
173
- </div>
174
- </div>
175
- </template>
176
- <template #content>
177
- <common-backup-storage-actions-add-steps-ready-complete
178
- v-if="selectedStep.id === dynamicSteps.readyComplete"
179
- :form="formModelLocal"
180
- :project="props.project"
181
- :hosts="props.hosts"
182
- :datastore="props.datastore"
183
- />
184
- </template>
185
- </ui-wizard-block>
186
- </template>
187
- </ui-wizard>
188
- </template>
189
-
190
- <script setup lang="ts">
191
- import { useElementSize } from '@vueuse/core'
192
- import type {
193
- UI_I_WizardStep,
194
- UI_I_WizardTexts,
195
- } from '~/node_modules/bfg-uikit/components/ui/wizard/lib/models/interfaces'
196
- import type Wizard from '~/node_modules/bfg-uikit/components/ui/wizard/lib/utils/utils'
197
- import type { UI_I_Localization } from '~/lib/models/interfaces'
198
- import type { UI_T_Project } from '~/lib/models/types'
199
- import type { UI_I_TablePayload } from '~/lib/models/table/interfaces'
200
- import type { UI_I_DatastoreTableItem } from '~/lib/models/store/storage/interfaces'
201
- import type { UI_I_CreateDatastoreForm } from '~/components/common/backup/storage/actions/add/lib/models/interfaces'
202
- import { dynamicSteps } from '~/components/common/backup/storage/actions/add/lib/config/steps'
203
-
204
- const formModelLocal = defineModel<UI_I_CreateDatastoreForm>({ required: true })
205
- const props = defineProps<{
206
- project: UI_T_Project
207
- wizard: Wizard
208
- selectedScheme: number[]
209
- alertMessages: string[][]
210
- title: string
211
- datastore: UI_I_DatastoreTableItem[]
212
- getDatastoreTableFunc: (payload: UI_I_TablePayload) => Promise<void>
213
- hosts?: any[]
214
- }>()
215
- const emits = defineEmits<{
216
- (event: 'change-steps', value: UI_I_WizardStep[]): void
217
- (event: 'change-storage', value: UI_I_WizardStep[]): void
218
- (event: 'hide'): void
219
- (event: 'submit', value: any): void
220
- }>()
221
-
222
- const localization = computed<UI_I_Localization>(() => useLocal())
223
-
224
- const texts = computed<UI_I_WizardTexts>(() => ({
225
- cancel: localization.value.common.cancel,
226
- back: localization.value.common.backCap,
227
- processing: localization.value.common.processing,
228
- next: localization.value.common.next,
229
- finish: localization.value.common.add,
230
- incompleteTitle: localization.value.common.incompleteProcess,
231
- incompleteMessage: localization.value.common.incompleteProcessMessage,
232
- incompleteCancel: localization.value.common.cancel,
233
- incompleteLeave: localization.value.common.leave,
234
- step: localization.value.common.step,
235
- of: localization.value.common.of2,
236
- }))
237
-
238
- const subTitleBlock0 = ref<HTMLElement | null>(null)
239
- const { height: height0 } = useElementSize(subTitleBlock0)
240
-
241
- const subTitleBlock1 = ref<HTMLElement | null>(null)
242
- const { height: height1 } = useElementSize(subTitleBlock1)
243
-
244
- const subTitleBlock2 = ref<HTMLElement | null>(null)
245
- const { height: height2 } = useElementSize(subTitleBlock2)
246
-
247
- const subTitleBlock3 = ref<HTMLElement | null>(null)
248
- const { height: height3 } = useElementSize(subTitleBlock3)
249
-
250
- const subTitleBlock4 = ref<HTMLElement | null>(null)
251
- const { height: height4 } = useElementSize(subTitleBlock4)
252
-
253
- const subTitleBlock5 = ref<HTMLElement | null>(null)
254
- const { height: height5 } = useElementSize(subTitleBlock5)
255
-
256
- const onChangeSteps = async (value: UI_I_WizardStep[]): Promise<void> =>
257
- emits('change-steps', value)
258
- const onChangeStorage = async (value: UI_I_WizardStep[]): Promise<void> =>
259
- emits('change-storage', value)
260
-
261
- const onHideModal = (): void => emits('hide')
262
- const onCreateDatastore = (): void => emits('submit')
263
- </script>
264
-
265
- <style scoped lang="scss">
266
- .subtitle-block {
267
- display: flex;
268
- flex-direction: column;
269
- row-gap: 16px;
270
- border-bottom: 1px solid var(--wizard-line);
271
- padding-bottom: 12px;
272
-
273
- &.flex-row {
274
- flex-direction: row;
275
- }
276
-
277
- :deep(&__alert) {
278
- padding: 10px 12px;
279
- }
280
- }
281
- </style>
1
+ <template>
2
+ <ui-wizard
3
+ show
4
+ :steps="props.wizard.steps"
5
+ :selected-scheme="props.selectedScheme"
6
+ :is-loading="props.wizard.wizardLoader.status"
7
+ :title="props.title"
8
+ :texts="texts"
9
+ test-id="add-datastore-wizard"
10
+ @change-steps="onChangeSteps"
11
+ @hide="onHideModal"
12
+ @submit="onCreateDatastore"
13
+ >
14
+ <template #content="{ selectedStep }">
15
+ <ui-wizard-block
16
+ v-if="selectedStep.id === dynamicSteps.type"
17
+ :sub-title-height="height0"
18
+ >
19
+ <template #subTitle>
20
+ <div ref="subTitleBlock0">
21
+ <div class="subtitle-block flex-row">
22
+ <ui-wizard-subtitle :sub-title="selectedStep.subTitle" />
23
+
24
+ <common-tooltip-help
25
+ test-id="datastore-type-subtitle"
26
+ help-id="datastore-type-subtitle-icon"
27
+ :title="localization.common.information"
28
+ :help-text="localization.common.datastoreTypeHelpDesc"
29
+ dropdown-width="272px"
30
+ dropdown-left
31
+ dropdown-top
32
+ />
33
+ <!-- // TODO Удалить компонент если не используется? -->
34
+
35
+ <!-- <common-wizards-datastore-add-steps-common-tooltip-info-->
36
+ <!-- id="datastore-type-subtitle-tooltip"-->
37
+ <!-- :description="localization.common.datastoreTypeHelpDesc"-->
38
+ <!-- />-->
39
+ </div>
40
+ </div>
41
+ </template>
42
+ <template #content>
43
+ <common-backup-storage-actions-add-steps-type-mode
44
+ v-if="selectedStep.id === dynamicSteps.type"
45
+ v-model="formModelLocal.type_code"
46
+ />
47
+ </template>
48
+ </ui-wizard-block>
49
+
50
+ <ui-wizard-block
51
+ v-if="selectedStep.id === dynamicSteps.name"
52
+ :sub-title-height="height1"
53
+ >
54
+ <template #subTitle>
55
+ <div ref="subTitleBlock1">
56
+ <div class="subtitle-block">
57
+ <ui-alert
58
+ v-if="props.alertMessages[dynamicSteps.name].length"
59
+ test-id="add-host-connection-settings-error-alert"
60
+ type="error"
61
+ size="md"
62
+ :messages="props.alertMessages[dynamicSteps.name]"
63
+ class="subtitle-block__alert"
64
+ />
65
+
66
+ <ui-wizard-subtitle :sub-title="selectedStep.subTitle" />
67
+ </div>
68
+ </div>
69
+ </template>
70
+ <template #content>
71
+ <common-backup-storage-actions-add-steps-name
72
+ v-if="selectedStep.id === dynamicSteps.name"
73
+ v-model="formModelLocal"
74
+ :project="props.project"
75
+ :messages-fields="selectedStep.fields"
76
+ />
77
+ </template>
78
+ </ui-wizard-block>
79
+
80
+ <ui-wizard-block
81
+ v-if="selectedStep.id === dynamicSteps.nameAndConfigure"
82
+ :sub-title-height="height2"
83
+ >
84
+ <template #subTitle>
85
+ <div ref="subTitleBlock2">
86
+ <div class="subtitle-block">
87
+ <ui-alert
88
+ v-if="props.alertMessages[dynamicSteps.nameAndConfigure].length"
89
+ test-id="add-host-connection-settings-error-alert"
90
+ type="error"
91
+ size="md"
92
+ :messages="props.alertMessages[dynamicSteps.nameAndConfigure]"
93
+ class="subtitle-block__alert"
94
+ />
95
+
96
+ <ui-wizard-subtitle :sub-title="selectedStep.subTitle" />
97
+ </div>
98
+ </div>
99
+ </template>
100
+ <template #content>
101
+ <common-backup-storage-actions-add-steps-name-and-configure
102
+ v-if="selectedStep.id === dynamicSteps.nameAndConfigure"
103
+ v-model="formModelLocal"
104
+ :project="props.project"
105
+ :messages-fields="selectedStep.fields"
106
+ />
107
+ </template>
108
+ </ui-wizard-block>
109
+
110
+ <ui-wizard-block
111
+ v-if="selectedStep.id === dynamicSteps.storage"
112
+ :sub-title-height="height3"
113
+ >
114
+ <template #subTitle>
115
+ <div ref="subTitleBlock3">
116
+ <div class="subtitle-block">
117
+ <ui-alert
118
+ v-if="props.alertMessages[dynamicSteps.storage].length"
119
+ test-id="add-host-accessibility-error-alert"
120
+ type="error"
121
+ size="md"
122
+ :messages="props.alertMessages[dynamicSteps.storage]"
123
+ class="subtitle-block__alert"
124
+ />
125
+
126
+ <ui-wizard-subtitle :sub-title="selectedStep.subTitle" />
127
+ </div>
128
+ </div>
129
+ </template>
130
+ <template #content>
131
+ <common-vm-actions-common-select-storage
132
+ :datastore="props.datastore"
133
+ :get-datastore-table-func="props.getDatastoreTableFunc"
134
+ hide-compatibility
135
+ hide-alert
136
+ class="storage-datatable h-full"
137
+ @change-storage="onChangeStorage"
138
+ />
139
+ </template>
140
+ </ui-wizard-block>
141
+
142
+ <ui-wizard-block
143
+ v-if="selectedStep.id === dynamicSteps.hostAccessibility"
144
+ :sub-title-height="height4"
145
+ >
146
+ <template #subTitle>
147
+ <div ref="subTitleBlock4">
148
+ <div class="subtitle-block">
149
+ <ui-alert
150
+ v-if="
151
+ props.alertMessages[dynamicSteps.hostAccessibility].length
152
+ "
153
+ test-id="add-host-accessibility-error-alert"
154
+ type="error"
155
+ size="md"
156
+ :messages="props.alertMessages[dynamicSteps.hostAccessibility]"
157
+ class="subtitle-block__alert"
158
+ />
159
+
160
+ <ui-wizard-subtitle :sub-title="selectedStep.subTitle" />
161
+ </div>
162
+ </div>
163
+ </template>
164
+ <template #content>
165
+ <common-backup-storage-actions-add-steps-host-accessibility
166
+ v-if="selectedStep.id === dynamicSteps.hostAccessibility"
167
+ v-model="formModelLocal.hosts"
168
+ :alert-messages="
169
+ props.alertMessages[dynamicSteps.hostAccessibility]
170
+ "
171
+ :hosts="props.hosts"
172
+ />
173
+ </template>
174
+ </ui-wizard-block>
175
+
176
+ <ui-wizard-block
177
+ v-if="selectedStep.id === dynamicSteps.readyComplete"
178
+ :sub-title-height="height5"
179
+ >
180
+ <template #subTitle>
181
+ <div ref="subTitleBlock5">
182
+ <div class="subtitle-block">
183
+ <ui-wizard-subtitle :sub-title="selectedStep.subTitle" />
184
+ </div>
185
+ </div>
186
+ </template>
187
+ <template #content>
188
+ <common-backup-storage-actions-add-steps-ready-complete
189
+ v-if="selectedStep.id === dynamicSteps.readyComplete"
190
+ :form="formModelLocal"
191
+ :project="props.project"
192
+ :hosts="props.hosts"
193
+ :datastore="props.datastore"
194
+ />
195
+ </template>
196
+ </ui-wizard-block>
197
+ </template>
198
+ </ui-wizard>
199
+ </template>
200
+
201
+ <script setup lang="ts">
202
+ import { useElementSize } from '@vueuse/core'
203
+ import type {
204
+ UI_I_WizardStep,
205
+ UI_I_WizardTexts,
206
+ } from '~/node_modules/bfg-uikit/components/ui/wizard/lib/models/interfaces'
207
+ import type Wizard from '~/node_modules/bfg-uikit/components/ui/wizard/lib/utils/utils'
208
+ import type { UI_I_Localization } from '~/lib/models/interfaces'
209
+ import type { UI_T_Project } from '~/lib/models/types'
210
+ import type { UI_I_TablePayload } from '~/lib/models/table/interfaces'
211
+ import type { UI_I_DatastoreTableItem } from '~/lib/models/store/storage/interfaces'
212
+ import type { UI_I_CreateDatastoreForm } from '~/components/common/backup/storage/actions/add/lib/models/interfaces'
213
+ import { dynamicSteps } from '~/components/common/backup/storage/actions/add/lib/config/steps'
214
+
215
+ const formModelLocal = defineModel<UI_I_CreateDatastoreForm>({ required: true })
216
+ const props = defineProps<{
217
+ project: UI_T_Project
218
+ wizard: Wizard
219
+ selectedScheme: number[]
220
+ alertMessages: string[][]
221
+ title: string
222
+ datastore: UI_I_DatastoreTableItem[]
223
+ getDatastoreTableFunc: (payload: UI_I_TablePayload) => Promise<void>
224
+ hosts?: any[]
225
+ }>()
226
+ const emits = defineEmits<{
227
+ (event: 'change-steps', value: UI_I_WizardStep[]): void
228
+ (event: 'change-storage', value: UI_I_WizardStep[]): void
229
+ (event: 'hide'): void
230
+ (event: 'submit', value: any): void
231
+ }>()
232
+
233
+ const localization = computed<UI_I_Localization>(() => useLocal())
234
+
235
+ const texts = computed<UI_I_WizardTexts>(() => ({
236
+ cancel: localization.value.common.cancel,
237
+ back: localization.value.common.backCap,
238
+ processing: localization.value.common.processing,
239
+ next: localization.value.common.next,
240
+ finish: localization.value.common.add,
241
+ incompleteTitle: localization.value.common.incompleteProcess,
242
+ incompleteMessage: localization.value.common.incompleteProcessMessage,
243
+ incompleteCancel: localization.value.common.cancel,
244
+ incompleteLeave: localization.value.common.leave,
245
+ step: localization.value.common.step,
246
+ of: localization.value.common.of2,
247
+ }))
248
+
249
+ const subTitleBlock0 = ref<HTMLElement | null>(null)
250
+ const { height: height0 } = useElementSize(subTitleBlock0)
251
+
252
+ const subTitleBlock1 = ref<HTMLElement | null>(null)
253
+ const { height: height1 } = useElementSize(subTitleBlock1)
254
+
255
+ const subTitleBlock2 = ref<HTMLElement | null>(null)
256
+ const { height: height2 } = useElementSize(subTitleBlock2)
257
+
258
+ const subTitleBlock3 = ref<HTMLElement | null>(null)
259
+ const { height: height3 } = useElementSize(subTitleBlock3)
260
+
261
+ const subTitleBlock4 = ref<HTMLElement | null>(null)
262
+ const { height: height4 } = useElementSize(subTitleBlock4)
263
+
264
+ const subTitleBlock5 = ref<HTMLElement | null>(null)
265
+ const { height: height5 } = useElementSize(subTitleBlock5)
266
+
267
+ const onChangeSteps = async (value: UI_I_WizardStep[]): Promise<void> =>
268
+ emits('change-steps', value)
269
+ const onChangeStorage = async (value: UI_I_WizardStep[]): Promise<void> =>
270
+ emits('change-storage', value)
271
+
272
+ const onHideModal = (): void => emits('hide')
273
+ const onCreateDatastore = (): void => emits('submit')
274
+ </script>
275
+
276
+ <style scoped lang="scss">
277
+ .subtitle-block {
278
+ display: flex;
279
+ flex-direction: column;
280
+ row-gap: 16px;
281
+ border-bottom: 1px solid var(--wizard-line);
282
+ padding-bottom: 12px;
283
+
284
+ &.flex-row {
285
+ flex-direction: row;
286
+ }
287
+
288
+ :deep(&__alert) {
289
+ padding: 10px 12px;
290
+ }
291
+ }
292
+ </style>