bfg-common 1.3.394 → 1.3.395

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 (79) hide show
  1. package/assets/img/icons/icons-sprite-dark-1-old.svg +1 -0
  2. package/assets/img/icons/icons-sprite-dark-1.svg +360 -1
  3. package/assets/img/icons/icons-sprite-dark-2-old.svg +1 -0
  4. package/assets/img/icons/icons-sprite-dark-2.svg +296 -1
  5. package/assets/img/icons/icons-sprite-dark-3-old.svg +1 -0
  6. package/assets/img/icons/icons-sprite-dark-3.svg +221 -1
  7. package/assets/img/icons/icons-sprite-dark-4-old.svg +1 -0
  8. package/assets/img/icons/icons-sprite-dark-4.svg +247 -1
  9. package/assets/img/icons/icons-sprite-dark-7.svg +8 -0
  10. package/assets/img/icons/icons-sprite-light-1-old.svg +1 -0
  11. package/assets/img/icons/icons-sprite-light-1.svg +360 -1
  12. package/assets/img/icons/icons-sprite-light-2-old.svg +1 -0
  13. package/assets/img/icons/icons-sprite-light-2.svg +296 -1
  14. package/assets/img/icons/icons-sprite-light-3-old.svg +1 -0
  15. package/assets/img/icons/icons-sprite-light-3.svg +221 -1
  16. package/assets/img/icons/icons-sprite-light-4-old.svg +1 -0
  17. package/assets/img/icons/icons-sprite-light-4.svg +247 -1
  18. package/assets/img/icons/icons-sprite-light-7.svg +8 -0
  19. package/assets/scss/common/icons/icons-7.scss +29 -0
  20. package/assets/scss/common/icons/icons.scss +1 -0
  21. package/components/atoms/loader/Loader.vue +30 -30
  22. package/components/atoms/loader/PreLoader.vue +38 -38
  23. package/components/atoms/switch/Switch.vue +111 -111
  24. package/components/atoms/table/compact/Compact.vue +526 -526
  25. package/components/common/adapterManager/ui/table/Header.vue +93 -93
  26. package/components/common/adapterManager/ui/table/Table.vue +162 -162
  27. package/components/common/context/Context.vue +99 -99
  28. package/components/common/lib/config/states.ts +126 -126
  29. package/components/common/resource/progressBlock/ProgressBlock.vue +142 -142
  30. package/components/common/split/horizontal/Horizontal.vue +70 -70
  31. package/components/common/vm/actions/add/Add.vue +602 -602
  32. package/components/common/vm/actions/clone/Clone.vue +518 -518
  33. package/components/common/vm/actions/common/customizeHardware/CustomizeHardware.vue +273 -273
  34. package/components/common/vm/actions/common/customizeHardware/virtualHardware/VirtualHardware.vue +697 -697
  35. package/components/common/vm/actions/common/customizeHardware/virtualHardware/bus/Bus.vue +9 -4
  36. package/components/common/vm/actions/common/customizeHardware/virtualHardware/cdDvdDrive/CdDvdDrive.vue +257 -256
  37. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newHardDisk/NewHardDisk.vue +459 -458
  38. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newNetwork/NewNetwork.vue +304 -304
  39. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newPciDevice/NewPciDevice.vue +167 -167
  40. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newUsbController/NewUsbController.vue +82 -82
  41. package/components/common/vm/actions/common/customizeHardware/virtualHardware/other/Other.vue +32 -32
  42. package/components/common/vm/actions/common/customizeHardware/virtualHardware/videoCard/VideoCard.vue +182 -182
  43. package/components/common/vm/actions/common/customizeHardware/vmoptions/bootOptions/BootOptions.vue +114 -114
  44. package/components/common/vm/actions/common/customizeHardware/vmoptions/generalOptions/GeneralOptions.vue +188 -188
  45. package/components/common/vm/actions/common/customizeHardware/vmoptions/tools/Tools.vue +72 -72
  46. package/components/common/vm/actions/common/select/computeResource/ComputeResource.vue +164 -164
  47. package/components/common/vm/actions/common/select/name/Name.vue +235 -235
  48. package/components/common/vm/actions/common/select/storage/Storage.vue +198 -198
  49. package/components/common/vm/actions/editSettings/EditSettings.vue +316 -316
  50. package/components/common/weekSelect/lib/config/options.ts +10 -10
  51. package/components/common/wizards/datastore/add/Add.vue +436 -436
  52. package/components/common/wizards/datastore/add/lib/config/stepItems.ts +191 -191
  53. package/components/common/wizards/datastore/add/lib/models/interfaces.ts +38 -38
  54. package/components/common/wizards/datastore/add/lib/utils.ts +70 -70
  55. package/components/common/wizards/datastore/add/local/createName/CreateName.vue +160 -160
  56. package/components/common/wizards/datastore/add/nfs/Nfs.vue +112 -112
  57. package/components/common/wizards/datastore/add/nfs/accessibility/Accessibility.vue +104 -104
  58. package/components/common/wizards/datastore/add/nfs/accessibility/tablesView/lib/config/compatibleTable.ts +62 -62
  59. package/components/common/wizards/datastore/add/nfs/accessibility/tablesView/lib/config/hostsTableItems.ts +53 -53
  60. package/components/common/wizards/datastore/add/readyComplete/ReadyComplete.vue +86 -86
  61. package/components/common/wizards/datastore/add/readyComplete/lib/config/propertiesDetails.ts +184 -184
  62. package/components/common/wizards/datastore/add/sharedStorm/deviceSelection/DeviceSelection.vue +459 -459
  63. package/components/common/wizards/datastore/add/types/Types.vue +80 -80
  64. package/components/common/wizards/datastore/add/types/lib/config/typeOptions.ts +49 -49
  65. package/composables/useAppVersion.ts +21 -21
  66. package/composables/useEnvLanguage.ts +20 -20
  67. package/lib/utils/sendTask.ts +72 -72
  68. package/minify.js +146 -146
  69. package/package.json +1 -1
  70. package/plugins/spice-console/spice.console.ts +147 -147
  71. package/public/spice-console/application/codec.js +263 -263
  72. package/public/spice-console/lib/rasterEngine.js +907 -907
  73. package/public/spice-console/network/spicechannel.js +375 -375
  74. package/store/main/lib/interfaces.ts +9 -9
  75. package/store/tasks/actions.ts +133 -133
  76. package/store/tasks/getters.ts +25 -25
  77. package/store/tasks/lib/models/interfaces.ts +18 -18
  78. package/store/tasks/mutations.ts +58 -58
  79. 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>