bfg-common 1.5.229 → 1.5.231

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 (55) hide show
  1. package/assets/img/icons/icons-sprite-dark-3.svg +227 -227
  2. package/assets/img/icons/icons-sprite-dark-5.svg +488 -488
  3. package/assets/img/icons/icons-sprite-light-3.svg +227 -227
  4. package/assets/img/icons/icons-sprite-light-5.svg +488 -488
  5. package/assets/localization/local_be.json +8 -4
  6. package/assets/localization/local_en.json +15 -11
  7. package/assets/localization/local_hy.json +8 -4
  8. package/assets/localization/local_kk.json +8 -4
  9. package/assets/localization/local_ru.json +10 -6
  10. package/assets/localization/local_zh.json +8 -4
  11. package/assets/scss/common/normalize.scss +1 -0
  12. package/components/atoms/table/info/lib/models/interfaces.ts +10 -10
  13. package/components/common/browse/blocks/lib/models/types.ts +1 -1
  14. package/components/common/browse/lib/models/interfaces.ts +5 -5
  15. package/components/common/diagramMain/adapter/AdapterItems.vue +61 -61
  16. package/components/common/diagramMain/lib/config/initial.ts +50 -50
  17. package/components/common/diagramMain/lib/models/types.ts +21 -21
  18. package/components/common/diagramMain/lib/utils/utils.ts +331 -331
  19. package/components/common/diagramMain/modals/editSettings/ConfirmTeamingSettingsModal.vue +40 -40
  20. package/components/common/diagramMain/modals/editSettings/tabs/NetworkProperties.vue +214 -214
  21. package/components/common/diagramMain/modals/editSettings/tabs/Security.vue +189 -189
  22. package/components/common/diagramMain/modals/editSettings/tabs/SwitchProperties.vue +163 -163
  23. package/components/common/diagramMain/modals/editSettings/tabs/TeamingFailover.vue +175 -175
  24. package/components/common/diagramMain/modals/editSettings/tabs/port/IpvFourSettings.vue +346 -346
  25. package/components/common/diagramMain/modals/lib/config/initial.ts +180 -180
  26. package/components/common/diagramMain/modals/lib/config/vmKernelAdapter.ts +90 -90
  27. package/components/common/diagramMain/modals/lib/mappers/mappers.ts +87 -87
  28. package/components/common/diagramMain/modals/lib/utils/index.ts +24 -24
  29. package/components/common/diagramMain/modals/migrateVmkernelAdapter/lib/config/steps.ts +114 -114
  30. package/components/common/diagramMain/modals/migrateVmkernelAdapter/steps/ConnectionSettings.vue +169 -169
  31. package/components/common/diagramMain/modals/migrateVmkernelAdapter/steps/SelectVmkernelAdapter.vue +159 -159
  32. package/components/common/diagramMain/modals/migrateVmkernelAdapter/validations/common.ts +14 -14
  33. package/components/common/diagramMain/modals/migrateVmkernelAdapter/validations/connectionSettings.ts +137 -137
  34. package/components/common/diagramMain/modals/migrateVmkernelAdapter/validations/selectVmkernelAdapter.ts +52 -52
  35. package/components/common/diagramMain/modals/migrateVmkernelAdapter/validations/validations.ts +19 -19
  36. package/components/common/diagramMain/port/Ports.vue +47 -47
  37. package/components/common/readyToComplete/New.vue +16 -1
  38. package/components/common/vm/actions/add/New.vue +98 -36
  39. package/components/common/vm/actions/add/lib/config/steps.ts +1 -1
  40. package/components/common/vm/actions/common/customizeHardware/CustomizeHardwareNew.vue +14 -3
  41. package/components/common/vm/actions/common/customizeHardware/virtualHardware/VirtualHardwareNew.vue +2 -2
  42. package/components/common/vm/actions/common/customizeHardware/vmoptions/VmoptionsNew.vue +1 -1
  43. package/components/common/vm/actions/common/select/compatibility/Compatibility.vue +8 -0
  44. package/components/common/vm/actions/common/select/compatibility/New.vue +14 -7
  45. package/components/common/vm/actions/common/select/computeResource/ComputeResource.vue +8 -0
  46. package/components/common/vm/actions/common/select/computeResource/New.vue +29 -7
  47. package/components/common/vm/actions/common/select/createType/New.vue +18 -10
  48. package/components/common/vm/actions/common/select/name/Name.vue +9 -2
  49. package/components/common/vm/actions/common/select/name/New.vue +36 -8
  50. package/components/common/vm/actions/common/select/os/New.vue +16 -10
  51. package/components/common/vm/actions/common/select/storage/Storage.vue +8 -0
  52. package/components/common/vm/actions/common/select/storage/new/New.vue +27 -8
  53. package/components/common/vm/actions/common/select/storage/new/lib/config/table.ts +9 -9
  54. package/components/common/vm/actions/editSettings/new/New.vue +1 -1
  55. package/package.json +1 -1
@@ -1,5 +1,5 @@
1
1
  <template>
2
- <div class="select-name">
2
+ <div :class="['select-name', { 'pb-6': props.project === 'sphere' }]">
3
3
  <Teleport to="#name-alert-wrapper">
4
4
  <ui-alert
5
5
  v-show="props.errors.length"
@@ -7,7 +7,8 @@
7
7
  status="alert-danger"
8
8
  test-id="name-alert"
9
9
  class="errors-alert"
10
- @remove="emits('remove-validation-errors')"
10
+ size="md"
11
+ @hide="emits('remove-validation-errors')"
11
12
  />
12
13
  </Teleport>
13
14
 
@@ -31,9 +32,8 @@
31
32
  :show="isShowHelp"
32
33
  :items="[]"
33
34
  elem-id="virtual-machine-name-icon"
34
- test-id=""
35
+ test-id="virtual-machine-name"
35
36
  width="320px"
36
- top
37
37
  left
38
38
  @hide="isShowHelp = false"
39
39
  >
@@ -64,7 +64,7 @@
64
64
  <div class="flex-2">
65
65
  <ui-input
66
66
  v-model="vmName"
67
- :placeholder="localization.common.name"
67
+ :placeholder="`${localization.common.name} (${localization.common.optional})`"
68
68
  type="text"
69
69
  maxlength="54"
70
70
  test-id="virtual-machine-name"
@@ -133,7 +133,7 @@ const onSelectNode = (node: UI_I_TreeNode) => {
133
133
  --select-name-help-icon-hover-color: #4d5d69;
134
134
  --select-name-help-icon-active-color: #008fd6;
135
135
  --select-name-help-hide-icon-color: #213444;
136
- --select-name-border-color: #e9ebed;
136
+ --select-name-border-color: #e9ebeda3;
137
137
  --select-name-location-node-color: #182531;
138
138
  --select-name-location-bg-color: #ffffff;
139
139
  }
@@ -144,7 +144,7 @@ const onSelectNode = (node: UI_I_TreeNode) => {
144
144
  --select-name-help-hide-icon-color: #e9eaec;
145
145
  --select-name-border-color: #e9ebed1f;
146
146
  --select-name-location-node-color: #e9eaec;
147
- --select-name-location-bg-color: transparent;
147
+ --select-name-location-bg-color: #1b2a371f;
148
148
  }
149
149
  </style>
150
150
  <style scoped lang="scss">
@@ -157,11 +157,16 @@ const onSelectNode = (node: UI_I_TreeNode) => {
157
157
  .name-field {
158
158
  display: flex;
159
159
  align-items: center;
160
+ column-gap: 16px;
160
161
 
161
162
  .name-label {
162
163
  font-size: 13px;
163
164
  color: var(--select-name-text-color);
164
165
  margin-right: 8px;
166
+ overflow: hidden;
167
+ text-overflow: ellipsis;
168
+ white-space: nowrap;
169
+ max-width: 204px;
165
170
  }
166
171
  #virtual-machine-name-icon {
167
172
  color: #9da6ad; // equal in dark and white modes
@@ -182,10 +187,15 @@ const onSelectNode = (node: UI_I_TreeNode) => {
182
187
  margin-top: 16px;
183
188
  padding: 16px 0;
184
189
  border-top: 1px solid var(--select-name-border-color);
190
+ column-gap: 16px;
185
191
 
186
192
  .location-label {
187
193
  font-size: 13px;
188
194
  color: var(--select-name-text-color);
195
+ overflow: hidden;
196
+ text-overflow: ellipsis;
197
+ white-space: nowrap;
198
+ max-width: 204px;
189
199
  }
190
200
 
191
201
  .selected-location {
@@ -193,6 +203,10 @@ const onSelectNode = (node: UI_I_TreeNode) => {
193
203
  align-items: center;
194
204
  gap: 8px;
195
205
 
206
+ .node-icon {
207
+ width: 20px;
208
+ height: 20px;
209
+ }
196
210
  .text {
197
211
  font-size: 13px;
198
212
  color: var(--select-name-location-node-color);
@@ -207,11 +221,25 @@ const onSelectNode = (node: UI_I_TreeNode) => {
207
221
  flex: 1;
208
222
  border-radius: 8px;
209
223
  border: 1px solid var(--select-name-border-color);
210
- padding: 12px;
224
+ padding: 8px;
211
225
  background-color: var(--select-name-location-bg-color);
226
+ max-height: 240px;
227
+ overflow: auto;
212
228
 
213
229
  :deep(.tree-content) {
214
230
  padding: 0 !important;
231
+
232
+ .node-wrapper {
233
+ border-radius: 4px;
234
+
235
+ .node-name {
236
+ font-size: 12px;
237
+ margin-left: 8px;
238
+ overflow: hidden;
239
+ text-overflow: ellipsis;
240
+ white-space: nowrap;
241
+ }
242
+ }
215
243
  }
216
244
  }
217
245
  }
@@ -5,9 +5,9 @@
5
5
  </p>
6
6
 
7
7
  <div class="select-wrap mb-4 pb-4">
8
- <label for="machine-type-select" class="select-label"
9
- >{{ localization.common.machineType }}:</label
10
- >
8
+ <label for="machine-type-select" class="select-label">{{
9
+ localization.common.machineType
10
+ }}</label>
11
11
 
12
12
  <ui-select
13
13
  v-model="machineType"
@@ -18,9 +18,9 @@
18
18
  />
19
19
  </div>
20
20
  <div class="select-wrap mb-4 pb-4">
21
- <label for="os-select" class="select-label"
22
- >{{ localization.common.guestOsFamily }}:</label
23
- >
21
+ <label for="os-select" class="select-label">{{
22
+ localization.common.guestOsFamily
23
+ }}</label>
24
24
 
25
25
  <ui-select
26
26
  v-model="guestOsFamily"
@@ -31,15 +31,16 @@
31
31
  />
32
32
  </div>
33
33
  <div class="select-wrap mb-4">
34
- <label for="os-version-select" class="select-label"
35
- >{{ localization.common.guestOsVersion }}:</label
36
- >
34
+ <label for="os-version-select" class="select-label">{{
35
+ localization.common.guestOsVersion
36
+ }}</label>
37
37
 
38
38
  <ui-select
39
39
  v-model="guestOsVersion"
40
40
  :items="props.versionsOptions"
41
41
  :error-text="props.apiErrorGuestOsVersion"
42
42
  test-id="vm-wizard-os-version-select"
43
+ width="max-content"
43
44
  @change="emits('remove-error-by-title', 'guest_os_version')"
44
45
  />
45
46
  </div>
@@ -97,11 +98,12 @@ const onChangeOsFamily = (): void => {
97
98
  .select-os-description {
98
99
  font-size: 13px;
99
100
  color: var(--select-os-color);
101
+ line-height: 18px;
100
102
  }
101
103
 
102
104
  .select-wrap {
103
105
  display: grid;
104
- grid-template-columns: 1fr 2fr;
106
+ grid-template-columns: 30% 67%;
105
107
  grid-gap: 16px;
106
108
  align-items: center;
107
109
 
@@ -112,6 +114,10 @@ const onChangeOsFamily = (): void => {
112
114
  .select-label {
113
115
  font-size: 13px;
114
116
  color: var(--select-os-color);
117
+ text-overflow: ellipsis;
118
+ overflow: hidden;
119
+ white-space: nowrap;
120
+ min-width: 80px;
115
121
  }
116
122
 
117
123
  :deep(.ui-select-toggle-button) {
@@ -44,6 +44,7 @@ const emits = defineEmits<{
44
44
  (event: 'submit', value: UI_I_DatastoreTableItem): void
45
45
  (event: 'change-storage', value: UI_I_DatastoreTableItem): void
46
46
  (event: 'is-selected-row', value: boolean): void
47
+ (event: 'has-errors', value: boolean): void
47
48
  }>()
48
49
 
49
50
  const { $store }: any = useNuxtApp()
@@ -134,6 +135,13 @@ const showValidationErrors = (arr: string[]): void => {
134
135
  const onRemoveValidationErrors = (): void => {
135
136
  errors.value = []
136
137
  }
138
+ watch(
139
+ errors,
140
+ (newValue) => {
141
+ emits('has-errors', !newValue.length)
142
+ },
143
+ { immediate: true, deep: true }
144
+ )
137
145
  </script>
138
146
 
139
147
  <style scoped lang="scss"></style>
@@ -7,7 +7,8 @@
7
7
  :items="props.errors"
8
8
  status="alert-danger"
9
9
  test-id="storage-alert"
10
- @remove="emits('remove-error')"
10
+ size="md"
11
+ @hide="emits('remove-error')"
11
12
  />
12
13
  </Teleport>
13
14
 
@@ -41,18 +42,23 @@
41
42
  <p class="compatibility">
42
43
  {{ localization.inventorySummary.compatibility }}
43
44
  </p>
44
- <div class="compatibility-message flex-align-center">
45
+ <div class="compatibility-message flex-align-start">
45
46
  <ui-skeleton-item v-if="loading" width="160px" height="16px" />
46
47
  <template v-else>
47
48
  <template v-if="props.selectedStorage">
48
- <ui-icon name="success-fill" width="16" height="16" />
49
+ <ui-icon
50
+ name="success-fill"
51
+ width="16"
52
+ height="16"
53
+ class="icon-compatibility-alert"
54
+ />
49
55
  <span class="compatibility-message-description">{{
50
56
  localization.common.compatibilityChecksSucceeded
51
57
  }}</span>
52
58
  </template>
53
59
  <template v-else>
54
60
  <!-- <ui-icon name="error" width="16" height="16" />-->
55
- <span class="compatibility-message-description">{{
61
+ <span class="compatibility-message-description empty">{{
56
62
  localization.vmWizard.noStorageSelected
57
63
  }}</span>
58
64
  </template>
@@ -139,18 +145,23 @@ const onSelectRow = (selectedData: UI_I_DataTable): void => {
139
145
  --select-storage-border-color: #e9ebed;
140
146
  --select-storage-bg-color: #ffffff;
141
147
  --select-storage-title-color: #4d5d69;
148
+ --select-storage-compatibility-bg-color: #ffffff;
142
149
  --select-storage-compatibility-description-color: #4d5d69;
150
+ --select-storage-compatibility-empty-description-color: #9da6ad;
143
151
  }
144
152
  :root.dark-theme {
145
153
  --select-storage-border-color: #e9ebed1f;
146
154
  --select-storage-bg-color: var(--wizard-right-bg);
147
155
  --select-storage-title-color: #e9eaec;
148
- --select-storage-compatibility-description-color: #9da6ad;
156
+ --select-storage-compatibility-bg-color: #1b2a371f;
157
+ --select-storage-compatibility-description-color: #e9eaec;
158
+ --select-storage-compatibility-empty-description-color: #9da6ad;
149
159
  }
150
160
  </style>
151
161
  <style scoped lang="scss">
152
162
  .select-storage {
153
- padding-top: 16px;
163
+ padding-top: 12px;
164
+ padding-bottom: 16px;
154
165
 
155
166
  .storage-count {
156
167
  font-size: 16px;
@@ -187,12 +198,20 @@ const onSelectRow = (selectedData: UI_I_DataTable): void => {
187
198
  border-radius: 8px;
188
199
  border: 1px solid var(--select-storage-border-color);
189
200
  padding: 12px;
190
- background-color: var(--select-storage-bg-color);
191
- gap: 12px;
201
+ background-color: var(--select-storage-compatibility-bg-color);
202
+ gap: 10px;
192
203
 
204
+ .icon-compatibility-alert {
205
+ min-width: 16px;
206
+ min-height: 16px;
207
+ }
193
208
  .compatibility-message-description {
194
209
  font-size: 13px;
195
210
  color: var(--select-storage-compatibility-description-color);
211
+
212
+ &.empty {
213
+ color: var(--select-storage-compatibility-empty-description-color);
214
+ }
196
215
  }
197
216
  }
198
217
  }
@@ -98,7 +98,7 @@ export const tableDataFunc = (
98
98
  isSortable: false,
99
99
  sort: 'asc',
100
100
  sortColumn: true,
101
- width: '150px',
101
+ width: '190px',
102
102
  show: true,
103
103
  filter: true,
104
104
  },
@@ -120,7 +120,7 @@ export const tableDataFunc = (
120
120
  isSortable: false,
121
121
  sort: 'asc',
122
122
  sortColumn: true,
123
- width: '150px',
123
+ width: '190px',
124
124
  show: true,
125
125
  filter: true,
126
126
  },
@@ -153,16 +153,16 @@ export const tableDataFunc = (
153
153
  isSortable: false,
154
154
  sort: 'asc',
155
155
  sortColumn: true,
156
- width: '150px',
156
+ width: '190px',
157
157
  show: true,
158
158
  filter: true,
159
159
  },
160
- {
161
- col: 13,
162
- colName: 'default-actions',
163
- text: '',
164
- show: true,
165
- },
160
+ // {
161
+ // col: 13,
162
+ // colName: 'default-actions',
163
+ // text: '',
164
+ // show: true,
165
+ // },
166
166
  ],
167
167
 
168
168
  body: [],
@@ -18,7 +18,7 @@
18
18
  v-if="!vmSettings || props.loading"
19
19
  />
20
20
 
21
- <div v-else class="vm-context">
21
+ <div v-else class="vm-context px-8">
22
22
  <common-vm-actions-common-customize-hardware
23
23
  v-model:vm-name="vmName"
24
24
  v-model:guest-machine-type="vmSettings.guestMachineType"
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "bfg-common",
3
3
  "private": false,
4
- "version": "1.5.229",
4
+ "version": "1.5.231",
5
5
  "scripts": {
6
6
  "build": "nuxt build",
7
7
  "dev": "nuxt dev --port=3002",