bfg-common 1.3.403 → 1.3.404

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 (62) hide show
  1. package/assets/localization/local_be.json +3 -1
  2. package/assets/localization/local_en.json +3 -1
  3. package/assets/localization/local_hy.json +3 -1
  4. package/assets/localization/local_kk.json +3 -1
  5. package/assets/localization/local_ru.json +3 -1
  6. package/assets/localization/local_zh.json +3 -1
  7. package/components/atoms/loader/Loader.vue +30 -30
  8. package/components/atoms/loader/PreLoader.vue +38 -38
  9. package/components/atoms/switch/Switch.vue +111 -111
  10. package/components/atoms/table/compact/Compact.vue +526 -526
  11. package/components/common/adapterManager/ui/table/Header.vue +93 -93
  12. package/components/common/adapterManager/ui/table/Table.vue +162 -162
  13. package/components/common/context/Context.vue +99 -99
  14. package/components/common/lib/config/states.ts +126 -126
  15. package/components/common/resource/progressBlock/ProgressBlock.vue +142 -142
  16. package/components/common/split/horizontal/Horizontal.vue +70 -70
  17. package/components/common/vm/actions/add/Add.vue +602 -602
  18. package/components/common/vm/actions/clone/Clone.vue +518 -518
  19. package/components/common/vm/actions/common/customizeHardware/CustomizeHardware.vue +273 -273
  20. package/components/common/vm/actions/common/customizeHardware/virtualHardware/VirtualHardware.vue +697 -697
  21. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newNetwork/NewNetwork.vue +304 -304
  22. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newPciDevice/NewPciDevice.vue +167 -167
  23. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newUsbController/NewUsbController.vue +82 -82
  24. package/components/common/vm/actions/common/customizeHardware/virtualHardware/other/Other.vue +32 -32
  25. package/components/common/vm/actions/common/customizeHardware/virtualHardware/videoCard/VideoCard.vue +182 -182
  26. package/components/common/vm/actions/common/customizeHardware/vmoptions/bootOptions/BootOptions.vue +114 -114
  27. package/components/common/vm/actions/common/customizeHardware/vmoptions/generalOptions/GeneralOptions.vue +188 -188
  28. package/components/common/vm/actions/common/customizeHardware/vmoptions/tools/Tools.vue +72 -72
  29. package/components/common/vm/actions/common/select/computeResource/ComputeResource.vue +164 -164
  30. package/components/common/vm/actions/common/select/name/Name.vue +235 -235
  31. package/components/common/vm/actions/common/select/storage/Storage.vue +198 -198
  32. package/components/common/vm/actions/editSettings/EditSettings.vue +316 -316
  33. package/components/common/weekSelect/lib/config/options.ts +10 -10
  34. package/components/common/wizards/datastore/add/Add.vue +436 -436
  35. package/components/common/wizards/datastore/add/lib/config/stepItems.ts +191 -191
  36. package/components/common/wizards/datastore/add/lib/models/interfaces.ts +38 -38
  37. package/components/common/wizards/datastore/add/lib/utils.ts +70 -70
  38. package/components/common/wizards/datastore/add/local/createName/CreateName.vue +160 -160
  39. package/components/common/wizards/datastore/add/nfs/Nfs.vue +112 -112
  40. package/components/common/wizards/datastore/add/nfs/accessibility/Accessibility.vue +104 -104
  41. package/components/common/wizards/datastore/add/nfs/accessibility/tablesView/lib/config/compatibleTable.ts +62 -62
  42. package/components/common/wizards/datastore/add/nfs/accessibility/tablesView/lib/config/hostsTableItems.ts +53 -53
  43. package/components/common/wizards/datastore/add/readyComplete/ReadyComplete.vue +86 -86
  44. package/components/common/wizards/datastore/add/readyComplete/lib/config/propertiesDetails.ts +184 -184
  45. package/components/common/wizards/datastore/add/sharedStorm/deviceSelection/DeviceSelection.vue +459 -459
  46. package/components/common/wizards/datastore/add/types/Types.vue +80 -80
  47. package/components/common/wizards/datastore/add/types/lib/config/typeOptions.ts +49 -49
  48. package/composables/useAppVersion.ts +21 -21
  49. package/composables/useEnvLanguage.ts +20 -20
  50. package/lib/utils/sendTask.ts +72 -72
  51. package/minify.js +146 -146
  52. package/package.json +1 -1
  53. package/plugins/spice-console/spice.console.ts +147 -147
  54. package/public/spice-console/application/codec.js +263 -263
  55. package/public/spice-console/lib/rasterEngine.js +907 -907
  56. package/public/spice-console/network/spicechannel.js +375 -375
  57. package/store/main/lib/interfaces.ts +9 -9
  58. package/store/tasks/actions.ts +133 -133
  59. package/store/tasks/getters.ts +25 -25
  60. package/store/tasks/lib/models/interfaces.ts +18 -18
  61. package/store/tasks/mutations.ts +58 -58
  62. package/store/tasks/state.ts +16 -16
@@ -1,198 +1,198 @@
1
- <template>
2
- <div class="select-storage">
3
- <atoms-alert
4
- v-show="errors.length"
5
- status="alert-danger"
6
- test-id="storage-alert"
7
- :items="errors"
8
- @remove="onRemoveValidationErrors"
9
- />
10
- <div class="table-wrap">
11
- <atoms-table-data-grid
12
- v-model:selected-row="selectedRow"
13
- v-model:column-keys="columnKeys"
14
- v-model:page-size="pagination.pageSize"
15
- v-model:page="pagination.page"
16
- type="radio"
17
- test-id="storage-table"
18
- :head-items="headItems"
19
- :body-items="bodyItems"
20
- :total-items="bodyItems.length"
21
- :total-pages="1"
22
- server-off
23
- hide-page-size
24
- @change="changeStorage"
25
- >
26
- <template #icon="{ item }">
27
- <span :class="['datagrid-cell-icon', item.data]" />
28
- <span class="text-ellipsis">
29
- {{ item.text }}
30
- </span>
31
- </template>
32
- </atoms-table-data-grid>
33
- </div>
34
-
35
- <div v-if="!hideCompatibility" class="compatibility-wrap">
36
- <p class="compatibility">
37
- {{ localization.compatibility }}
38
- </p>
39
- <div class="compatibility-message flex-align-center">
40
- <template v-if="selectedStorage">
41
- <div class="icon-status-ok" />
42
- <span>{{ localization.compatibilityChecksSucceeded }}</span>
43
- </template>
44
- <div v-else>
45
- <br />
46
- </div>
47
- </div>
48
- </div>
49
- </div>
50
- </template>
51
-
52
- <script setup lang="ts">
53
- import {
54
- UI_I_Pagination,
55
- UI_I_TablePayload,
56
- } from '~/lib/models/table/interfaces'
57
- import { UI_I_DatastoreTableItem } from '~/lib/models/store/storage/interfaces'
58
- import { UI_I_Localization } from '~/lib/models/interfaces'
59
- import {
60
- UI_I_ColumnKey,
61
- UI_I_HeadItem,
62
- UI_I_BodyItem,
63
- } from '~/components/atoms/table/dataGrid/lib/models/interfaces'
64
- import * as table from '~/components/common/vm/actions/common/select/storage/lib/config/config'
65
-
66
- const props = defineProps<{
67
- storageSubmit: null | Function
68
- datastore: UI_I_DatastoreTableItem[]
69
- storage: UI_I_DatastoreTableItem
70
- hideCompatibility?: boolean
71
- getDatastoreTableFunc: (payload: UI_I_TablePayload) => Promise<void>
72
- }>()
73
- const emits = defineEmits<{
74
- (event: 'submit', value: UI_I_DatastoreTableItem): void
75
- }>()
76
-
77
- const localization = computed<UI_I_Localization>(() => useLocal())
78
-
79
- const headItems = ref<UI_I_HeadItem[]>(table.headItems(localization.value))
80
- const columnKeys = ref<UI_I_ColumnKey[]>(table.columnKeys(localization.value))
81
- watch(localization, () => {
82
- columnKeys.value = table.columnKeys(localization.value)
83
- })
84
-
85
- const bodyItems = computed<UI_I_BodyItem[][]>(() => {
86
- return table.bodyItems(props.datastore || [], localization.value)
87
- })
88
-
89
- const pagination = ref<UI_I_Pagination>({
90
- page: 1,
91
- pageSize: 100,
92
- })
93
-
94
- const getStorage = async (): Promise<void> => {
95
- const payload: UI_I_TablePayload = {
96
- pagination: pagination.value,
97
- sortBy: null,
98
- type: 'datastore',
99
- schema: 'full',
100
- }
101
-
102
- props.getDatastoreTableFunc(payload).then(() => {
103
- selectedRow.value = null
104
- setStorageFromProps()
105
- })
106
- }
107
- getStorage()
108
-
109
- const selectedStorage = ref<UI_I_DatastoreTableItem | null>(null)
110
- const selectedRow = ref<number | null>(null)
111
- const changeStorage = (index: number): void => {
112
- if (!props.datastore) return
113
- selectedStorage.value = props.datastore[index]
114
- selectedRow.value = index
115
- }
116
-
117
- const setStorageFromProps = (): void => {
118
- if (!props.storage) return
119
- props.datastore.forEach((item, index) => {
120
- if (item.id === props.storage.id) changeStorage(index)
121
- })
122
- }
123
- watch(
124
- () => props.storage,
125
- () => {
126
- setStorageFromProps()
127
- },
128
- { immediate: true }
129
- )
130
- watch(
131
- () => props.datastore,
132
- () => {
133
- selectedRow.value = null
134
- selectedStorage.value = null
135
- },
136
- { immediate: true }
137
- )
138
-
139
- watch(
140
- () => props.storageSubmit,
141
- (newValue) => {
142
- newValue && submit(newValue)
143
- }
144
- )
145
- const submit = (cb: Function): void => {
146
- if (!selectedStorage.value) {
147
- showValidationErrors([localization.value.selectValidDestinationStorage])
148
- cb(false)
149
- return
150
- }
151
-
152
- emits('submit', selectedStorage.value)
153
- cb(true)
154
- }
155
-
156
- const errors = ref<string[]>([])
157
- const showValidationErrors = (arr: string[]): void => {
158
- errors.value = arr
159
- }
160
- const onRemoveValidationErrors = (): void => {
161
- errors.value = []
162
- }
163
- </script>
164
-
165
- <style scoped lang="scss">
166
- .select-storage {
167
- flex: 1;
168
- display: flex;
169
- flex-direction: column;
170
-
171
- .table-wrap {
172
- flex: 1;
173
-
174
- .datagrid-cell-icon {
175
- margin-right: 6px;
176
- }
177
-
178
- :deep(.relative) {
179
- height: 100%;
180
-
181
- .datagrid-outer-wrapper {
182
- height: 100%;
183
- }
184
- }
185
- }
186
-
187
- .compatibility-wrap {
188
- padding-top: 10px;
189
-
190
- .compatibility-message {
191
- border: 1px solid #000;
192
- padding-top: 5px;
193
- padding-left: 5px;
194
- overflow: auto;
195
- }
196
- }
197
- }
198
- </style>
1
+ <template>
2
+ <div class="select-storage">
3
+ <atoms-alert
4
+ v-show="errors.length"
5
+ status="alert-danger"
6
+ test-id="storage-alert"
7
+ :items="errors"
8
+ @remove="onRemoveValidationErrors"
9
+ />
10
+ <div class="table-wrap">
11
+ <atoms-table-data-grid
12
+ v-model:selected-row="selectedRow"
13
+ v-model:column-keys="columnKeys"
14
+ v-model:page-size="pagination.pageSize"
15
+ v-model:page="pagination.page"
16
+ type="radio"
17
+ test-id="storage-table"
18
+ :head-items="headItems"
19
+ :body-items="bodyItems"
20
+ :total-items="bodyItems.length"
21
+ :total-pages="1"
22
+ server-off
23
+ hide-page-size
24
+ @change="changeStorage"
25
+ >
26
+ <template #icon="{ item }">
27
+ <span :class="['datagrid-cell-icon', item.data]" />
28
+ <span class="text-ellipsis">
29
+ {{ item.text }}
30
+ </span>
31
+ </template>
32
+ </atoms-table-data-grid>
33
+ </div>
34
+
35
+ <div v-if="!hideCompatibility" class="compatibility-wrap">
36
+ <p class="compatibility">
37
+ {{ localization.compatibility }}
38
+ </p>
39
+ <div class="compatibility-message flex-align-center">
40
+ <template v-if="selectedStorage">
41
+ <div class="icon-status-ok" />
42
+ <span>{{ localization.compatibilityChecksSucceeded }}</span>
43
+ </template>
44
+ <div v-else>
45
+ <br />
46
+ </div>
47
+ </div>
48
+ </div>
49
+ </div>
50
+ </template>
51
+
52
+ <script setup lang="ts">
53
+ import {
54
+ UI_I_Pagination,
55
+ UI_I_TablePayload,
56
+ } from '~/lib/models/table/interfaces'
57
+ import { UI_I_DatastoreTableItem } from '~/lib/models/store/storage/interfaces'
58
+ import { UI_I_Localization } from '~/lib/models/interfaces'
59
+ import {
60
+ UI_I_ColumnKey,
61
+ UI_I_HeadItem,
62
+ UI_I_BodyItem,
63
+ } from '~/components/atoms/table/dataGrid/lib/models/interfaces'
64
+ import * as table from '~/components/common/vm/actions/common/select/storage/lib/config/config'
65
+
66
+ const props = defineProps<{
67
+ storageSubmit: null | Function
68
+ datastore: UI_I_DatastoreTableItem[]
69
+ storage: UI_I_DatastoreTableItem
70
+ hideCompatibility?: boolean
71
+ getDatastoreTableFunc: (payload: UI_I_TablePayload) => Promise<void>
72
+ }>()
73
+ const emits = defineEmits<{
74
+ (event: 'submit', value: UI_I_DatastoreTableItem): void
75
+ }>()
76
+
77
+ const localization = computed<UI_I_Localization>(() => useLocal())
78
+
79
+ const headItems = ref<UI_I_HeadItem[]>(table.headItems(localization.value))
80
+ const columnKeys = ref<UI_I_ColumnKey[]>(table.columnKeys(localization.value))
81
+ watch(localization, () => {
82
+ columnKeys.value = table.columnKeys(localization.value)
83
+ })
84
+
85
+ const bodyItems = computed<UI_I_BodyItem[][]>(() => {
86
+ return table.bodyItems(props.datastore || [], localization.value)
87
+ })
88
+
89
+ const pagination = ref<UI_I_Pagination>({
90
+ page: 1,
91
+ pageSize: 100,
92
+ })
93
+
94
+ const getStorage = async (): Promise<void> => {
95
+ const payload: UI_I_TablePayload = {
96
+ pagination: pagination.value,
97
+ sortBy: null,
98
+ type: 'datastore',
99
+ schema: 'full',
100
+ }
101
+
102
+ props.getDatastoreTableFunc(payload).then(() => {
103
+ selectedRow.value = null
104
+ setStorageFromProps()
105
+ })
106
+ }
107
+ getStorage()
108
+
109
+ const selectedStorage = ref<UI_I_DatastoreTableItem | null>(null)
110
+ const selectedRow = ref<number | null>(null)
111
+ const changeStorage = (index: number): void => {
112
+ if (!props.datastore) return
113
+ selectedStorage.value = props.datastore[index]
114
+ selectedRow.value = index
115
+ }
116
+
117
+ const setStorageFromProps = (): void => {
118
+ if (!props.storage) return
119
+ props.datastore.forEach((item, index) => {
120
+ if (item.id === props.storage.id) changeStorage(index)
121
+ })
122
+ }
123
+ watch(
124
+ () => props.storage,
125
+ () => {
126
+ setStorageFromProps()
127
+ },
128
+ { immediate: true }
129
+ )
130
+ watch(
131
+ () => props.datastore,
132
+ () => {
133
+ selectedRow.value = null
134
+ selectedStorage.value = null
135
+ },
136
+ { immediate: true }
137
+ )
138
+
139
+ watch(
140
+ () => props.storageSubmit,
141
+ (newValue) => {
142
+ newValue && submit(newValue)
143
+ }
144
+ )
145
+ const submit = (cb: Function): void => {
146
+ if (!selectedStorage.value) {
147
+ showValidationErrors([localization.value.selectValidDestinationStorage])
148
+ cb(false)
149
+ return
150
+ }
151
+
152
+ emits('submit', selectedStorage.value)
153
+ cb(true)
154
+ }
155
+
156
+ const errors = ref<string[]>([])
157
+ const showValidationErrors = (arr: string[]): void => {
158
+ errors.value = arr
159
+ }
160
+ const onRemoveValidationErrors = (): void => {
161
+ errors.value = []
162
+ }
163
+ </script>
164
+
165
+ <style scoped lang="scss">
166
+ .select-storage {
167
+ flex: 1;
168
+ display: flex;
169
+ flex-direction: column;
170
+
171
+ .table-wrap {
172
+ flex: 1;
173
+
174
+ .datagrid-cell-icon {
175
+ margin-right: 6px;
176
+ }
177
+
178
+ :deep(.relative) {
179
+ height: 100%;
180
+
181
+ .datagrid-outer-wrapper {
182
+ height: 100%;
183
+ }
184
+ }
185
+ }
186
+
187
+ .compatibility-wrap {
188
+ padding-top: 10px;
189
+
190
+ .compatibility-message {
191
+ border: 1px solid #000;
192
+ padding-top: 5px;
193
+ padding-left: 5px;
194
+ overflow: auto;
195
+ }
196
+ }
197
+ }
198
+ </style>