bfg-common 1.3.595 → 1.3.597

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 (31) hide show
  1. package/assets/localization/local_be.json +49 -32
  2. package/assets/localization/local_en.json +49 -32
  3. package/assets/localization/local_hy.json +49 -32
  4. package/assets/localization/local_kk.json +50 -32
  5. package/assets/localization/local_ru.json +49 -32
  6. package/assets/localization/local_zh.json +49 -32
  7. package/components/common/adapterManager/ui/table/Header.vue +1 -1
  8. package/components/common/diagramMain/modals/editSettings/tabs/Security.vue +6 -6
  9. package/components/common/diagramMain/modals/lib/config/adapterModal.ts +1 -1
  10. package/components/common/diagramMain/modals/lib/config/networkModal.ts +4 -4
  11. package/components/common/diagramMain/modals/lib/config/switchModal.ts +4 -4
  12. package/components/common/layout/theHeader/TheHeaderNew.vue +5 -4
  13. package/components/common/layout/theHeader/helpMenu/About.vue +4 -4
  14. package/components/common/layout/theHeader/helpMenu/helpMenuNew/HelpMenuNew.vue +37 -2
  15. package/components/common/layout/theHeader/helpMenu/helpMenuNew/lib/config/dropMenu.ts +3 -0
  16. package/components/common/layout/theHeader/userMenu/userMenuNew/UserMenuNew.vue +9 -2
  17. package/components/common/monitor/advanced/Advanced.vue +7 -4
  18. package/components/common/monitor/advanced/tools/Tools.vue +7 -4
  19. package/components/common/monitor/advanced/tools/chartOptionsModal/ChartOptionsModal.vue +15 -4
  20. package/components/common/monitor/advanced/tools/chartOptionsModal/counters/Counters.vue +3 -2
  21. package/components/common/monitor/advanced/tools/chartOptionsModal/counters/timespan/Timespan.vue +3 -2
  22. package/components/common/monitor/advanced/tools/chartOptionsModal/counters/timespan/object/Object.vue +34 -12
  23. package/components/common/monitor/advanced/tools/chartOptionsModal/lib/utils/checkSubmit.ts +8 -3
  24. package/components/common/vm/actions/common/select/storage/lib/config/config.ts +1 -1
  25. package/components/common/wizards/datastore/add/nfs/configuration/Configuration.vue +2 -2
  26. package/components/common/wizards/vm/migrate/select/storage/table/datastore/lib/config/config.ts +1 -1
  27. package/composables/productNameLocal.ts +48 -40
  28. package/composables/useEnvLanguage.ts +2 -2
  29. package/lib/models/interfaces.ts +8 -0
  30. package/lib/models/types.ts +37 -29
  31. package/package.json +2 -2
@@ -106,7 +106,7 @@ export const switchViewSettingsFunc = (
106
106
  (sec: UI_I_NetworkSummaryPortletListItem<UI_E_IYNOption>) =>
107
107
  sec.id === 'promiscuous_mode'
108
108
  )?.initialValue?.value === UI_E_IYNOption.YES
109
- ? localization.accept
109
+ ? localization.common.accept
110
110
  : localization.reject,
111
111
  },
112
112
  {
@@ -118,7 +118,7 @@ export const switchViewSettingsFunc = (
118
118
  (sec: UI_I_NetworkSummaryPortletListItem<UI_E_IYNOption>) =>
119
119
  sec.id === 'mac_change'
120
120
  )?.initialValue?.value === UI_E_IYNOption.YES
121
- ? localization.accept
121
+ ? localization.common.accept
122
122
  : localization.reject,
123
123
  },
124
124
  {
@@ -130,7 +130,7 @@ export const switchViewSettingsFunc = (
130
130
  (sec: UI_I_NetworkSummaryPortletListItem<UI_E_IYNOption>) =>
131
131
  sec.id === 'forged_transmits'
132
132
  )?.initialValue?.value === UI_E_IYNOption.YES
133
- ? localization.accept
133
+ ? localization.common.accept
134
134
  : localization.reject,
135
135
  },
136
136
  ],
@@ -207,7 +207,7 @@ export const switchViewSettingsFunc = (
207
207
  : localization.no,
208
208
  },
209
209
  {
210
- name: localization.activeAdapters,
210
+ name: localization.networks.activeAdapters,
211
211
  value: initialData.activeAdapters,
212
212
  },
213
213
  {
@@ -38,7 +38,7 @@
38
38
  name="reset"
39
39
  />
40
40
  <span v-else class="reset-loader-content">
41
- <ui-loader2 />
41
+ <ui-loader2 width="24" height="24" />
42
42
  </span>
43
43
  </button>
44
44
  <div class="divider" />
@@ -180,7 +180,8 @@ const emits = defineEmits<{
180
180
  align-items: center;
181
181
 
182
182
  .title {
183
- font-size: 14px;
183
+ font-size: 16px;
184
+ font-weight: 400;
184
185
  }
185
186
  .badge-info {
186
187
  background-color: var(--badge-info-bg-color);
@@ -223,8 +224,8 @@ const emits = defineEmits<{
223
224
  }
224
225
  }
225
226
  .reset-loader-content {
226
- width: 18px;
227
- height: 18px;
227
+ width: 24px;
228
+ height: 24px;
228
229
 
229
230
  .loader {
230
231
  padding: 2px;
@@ -35,7 +35,7 @@
35
35
  <template #modalBody>
36
36
  <div class="about-vsphere-dialog-legal-section">
37
37
  <p>{{ aboutHeadingText }}</p>
38
- <p>{{ localization.aboutSubtitle }}</p>
38
+ <p>{{ localization.layout.aboutSubtitle }}</p>
39
39
  </div>
40
40
 
41
41
  <div class="about-vsphere-dialog-legal-section description">
@@ -80,15 +80,15 @@ const companyName = computed<string>(
80
80
  () => config.public[`COMPANY_NAME_${useEnvLanguage()}`]
81
81
  )
82
82
  const aboutHeadingText = computed<string>(() =>
83
- localization.value.aboutHeading.replaceAll('{companyName}', companyName.value)
83
+ localization.value.layout.aboutHeading.replaceAll('{companyName}', companyName.value)
84
84
  )
85
85
  const aboutDesc1 = computed<string>(() =>
86
- localization.value.aboutDesc1
86
+ localization.value.layout.aboutDesc1
87
87
  .replaceAll('{companyName}', companyName.value)
88
88
  .replaceAll('{trademark}', brandName.value)
89
89
  )
90
90
  const aboutDesc2 = computed<string>(() =>
91
- localization.value.aboutDesc2
91
+ localization.value.layout.aboutDesc2
92
92
  .replaceAll('{companyName}', companyName.value)
93
93
  .replaceAll('{trademark}', brandName.value)
94
94
  )
@@ -26,7 +26,32 @@
26
26
  elem-id="help-menu-dropdown-toggle"
27
27
  @select="onSelectDropdown"
28
28
  @hide="onHideDropdown"
29
- />
29
+ >
30
+ <template #row="{ item }">
31
+ <a
32
+ :id="item.testId"
33
+ :data-id="item.testId"
34
+ class="w-full flex items-center dropdown-item"
35
+ >
36
+ <span v-if="item.iconName === 'icon-help'" class="flex ui-item-text">
37
+ <ui-icon-main-navigation-panel
38
+ :name="item.iconName"
39
+ width="16"
40
+ height="16"
41
+ />
42
+ </span>
43
+ <span v-if="item.iconName === 'info'" class="flex ui-item-text">
44
+ <ui-icon :name="item.iconName" width="16" height="16" />
45
+ </span>
46
+ <span v-if="item.iconName === 'comment'" class="flex ui-item-text">
47
+ <ui-icon :name="item.iconName" width="16" height="16" />
48
+ </span>
49
+ <p class="ui-item-text truncate text-sm font-medium mt-0 mb-0 ml-2">
50
+ {{ item.text }}
51
+ </p>
52
+ </a>
53
+ </template>
54
+ </ui-dropdown>
30
55
 
31
56
  <common-layout-the-header-feedback
32
57
  :is-show-feedback="isShowFeedback"
@@ -110,7 +135,17 @@ const onSelectDropdown = (value: string): void => {
110
135
  padding: 0 !important;
111
136
  }
112
137
  }
113
- #dropdown-help-menu-dropdown {
138
+ #ui-popup-window-help-menu-dropdown-toggle {
114
139
  margin-top: 17px;
115
140
  }
141
+ #dropdown-help-menu-dropdown {
142
+ .ui-item-text {
143
+ color: var(--dropdown-item-hover-color);
144
+ }
145
+ .ui-dropdown-menu-item:has(.logout) {
146
+ .ui-item-text {
147
+ color: #ea3223;
148
+ }
149
+ }
150
+ }
116
151
  </style>
@@ -9,17 +9,20 @@ export const helpMenuFunc = (
9
9
  text: localization.mainNavigation.help,
10
10
  value: 'help',
11
11
  testId: 'information-menu-help',
12
+ iconName: 'icon-help',
12
13
  },
13
14
  {
14
15
  text: localization.layout.about,
15
16
  value: 'about',
16
17
  testId: 'information-menu-about',
17
18
  divider: true,
19
+ iconName: 'info',
18
20
  },
19
21
  {
20
22
  text: localization.sendFeedback,
21
23
  value: 'sendFeedback',
22
24
  testId: 'information-menu-send-feedback',
25
+ iconName: 'comment',
23
26
  },
24
27
  ]
25
28
  }
@@ -95,6 +95,12 @@ const onSelectDropdown = (value: string): void => {
95
95
  color: #ffffff;
96
96
  }
97
97
 
98
+ .title {
99
+ font-size: 14px;
100
+ font-weight: 400;
101
+ font-family: 'Inter';
102
+ }
103
+
98
104
  .arrow-icon-container {
99
105
  display: flex;
100
106
  transform: rotate(90deg);
@@ -102,9 +108,10 @@ const onSelectDropdown = (value: string): void => {
102
108
  }
103
109
  }
104
110
 
105
- #dropdown-user-menu-dropdown {
111
+ #ui-popup-window-user-menu-dropdown-toggle {
106
112
  margin-top: 17px;
107
-
113
+ }
114
+ #dropdown-user-menu-dropdown {
108
115
  .ui-item-text {
109
116
  color: var(--dropdown-item-hover-color);
110
117
  }
@@ -19,6 +19,7 @@
19
19
  :language="props.language"
20
20
  :selected-counters-keys="props.selectedCountersKeys"
21
21
  :selected-metric="props.selectedMetric"
22
+ :selected-metric-local="props.selectedMetricLocal"
22
23
  :disabled-period="props.disabledPeriod"
23
24
  :disabled-view="props.disabledView"
24
25
  :selected-chart-type="props.selectedChartType"
@@ -35,11 +36,12 @@
35
36
  :selected-objects="props.selectedObjects"
36
37
  :project="props.project"
37
38
  :objects-loading="props.objectsLoading"
39
+ :objects-data="props.objectsData"
38
40
  @update-tools="emits('update-tools', $event)"
39
41
  @exporting="onExporting"
40
42
  @open-advanced-page="onGetEmptyPage"
41
43
  @select-row="emits('select-row', $event)"
42
- @select-metric="emits('select-metric', $event)"
44
+ @select-metric-local="emits('select-metric-local', $event)"
43
45
  @update-chart-type="emits('update-chart-type', $event)"
44
46
  @update-timespan-type="emits('update-timespan-type', $event)"
45
47
  @update-unit-count="emits('update-unit-count', $event)"
@@ -51,7 +53,6 @@
51
53
  @update-custom-time-from="emits('update-custom-time-from', $event)"
52
54
  @update-custom-time-to="emits('update-custom-time-to', $event)"
53
55
  @submit-options="emits('submit-options', $event)"
54
- @update-cores="emits('update-cores')"
55
56
  />
56
57
 
57
58
  <div v-show="!props.data" class="empty-container">
@@ -100,6 +101,7 @@ import type {
100
101
  } from '~/components/common/monitor/advanced/tools/chartOptionsModal/lib/models/types'
101
102
  import type { UI_I_OptionsForm } from '~/components/common/monitor/advanced/tools/chartOptionsModal/lib/models/interfaces'
102
103
  import type { UI_I_AdvancedCounterItem } from '~/components/common/monitor/advanced/tools/chartOptionsModal/counters/table/lib/models/interfaces'
104
+ import type { UI_I_ObjectItem } from '~/components/common/monitor/advanced/tools/chartOptionsModal/counters/timespan/object/lib/models/interfaces'
103
105
  import type { UI_T_Project } from '~/lib/models/types'
104
106
  import { getCountCores } from '~/components/common/monitor/advanced/tools/lib/utils/countCores'
105
107
 
@@ -115,6 +117,7 @@ const props = defineProps<{
115
117
  getDateFormat: any
116
118
  selectedCountersKeys: number[]
117
119
  selectedMetric: UI_T_ChartHost | UI_T_ChartVm
120
+ selectedMetricLocal: UI_T_ChartHost | UI_T_ChartVm
118
121
  selectedChartType: string
119
122
  selectedTimespanType: string
120
123
  unitsCount: number
@@ -129,6 +132,7 @@ const props = defineProps<{
129
132
  selectedObjects: string
130
133
  project: UI_T_Project
131
134
  objectsLoading: boolean
135
+ objectsData: UI_I_ObjectItem[]
132
136
  disabledPeriod?: boolean
133
137
  disabledView?: boolean
134
138
  isEmpty?: boolean
@@ -139,7 +143,7 @@ const emits = defineEmits<{
139
143
  (event: 'open-advanced-page'): void
140
144
  (event: 'update-selected-row', value: number[]): void
141
145
  (event: 'select-row', value: UI_I_AdvancedCounterItem[]): void
142
- (event: 'select-metric', value: string): void
146
+ (event: 'select-metric-local', value: string): void
143
147
  (event: 'update-chart-type', value: string): void
144
148
  (event: 'update-timespan-type', value: string): void
145
149
  (event: 'update-unit-count', value: number): void
@@ -152,7 +156,6 @@ const emits = defineEmits<{
152
156
  (event: 'update-custom-time-to', value: string): void
153
157
  (event: 'submit-options', value: UI_I_OptionsForm): void
154
158
  (event: 'update:selected-timespan-type', value: string): void
155
- (event: 'update-cores'): void
156
159
  }>()
157
160
 
158
161
  const localization = computed<UI_I_Localization>(() => useLocal())
@@ -97,6 +97,7 @@
97
97
  :language="props.language"
98
98
  :selected-counters-keys="props.selectedCountersKeys"
99
99
  :selected-metric="props.selectedMetric"
100
+ :selected-metric-local="props.selectedMetricLocal"
100
101
  :selected-chart-type="props.selectedChartType"
101
102
  :selected-timespan-type="props.selectedTimespanType"
102
103
  :units-count="props.unitsCount"
@@ -112,9 +113,10 @@
112
113
  :selected-objects="props.selectedObjects"
113
114
  :project="props.project"
114
115
  :objects-loading="props.objectsLoading"
116
+ :objects-data="props.objectsData"
115
117
  @hide="isShowModal = false"
116
118
  @select-row="emits('select-row', $event)"
117
- @select-metric="emits('select-metric', $event)"
119
+ @select-metric-local="emits('select-metric-local', $event)"
118
120
  @update-chart-type="emits('update-chart-type', $event)"
119
121
  @update-timespan-type="emits('update-timespan-type', $event)"
120
122
  @update-unit-count="emits('update-unit-count', $event)"
@@ -127,7 +129,6 @@
127
129
  @update-custom-time-from="emits('update-custom-time-from', $event)"
128
130
  @update-custom-time-to="emits('update-custom-time-to', $event)"
129
131
  @submit-options="emits('submit-options', $event)"
130
- @update-cores="emits('update-cores')"
131
132
  />
132
133
  </template>
133
134
 
@@ -143,6 +144,7 @@ import type {
143
144
  } from '~/components/common/monitor/advanced/tools/chartOptionsModal/lib/models/types'
144
145
  import type { UI_I_OptionsForm } from '~/components/common/monitor/advanced/tools/chartOptionsModal/lib/models/interfaces'
145
146
  import type { UI_I_AdvancedCounterItem } from '~/components/common/monitor/advanced/tools/chartOptionsModal/counters/table/lib/models/interfaces'
147
+ import type { UI_I_ObjectItem } from '~/components/common/monitor/advanced/tools/chartOptionsModal/counters/timespan/object/lib/models/interfaces'
146
148
  import type { UI_T_Project } from '~/lib/models/types'
147
149
  import { getValidDateByOptionFunc } from '~/components/common/monitor/lib/config/getValidDateByOption'
148
150
  import {
@@ -160,6 +162,7 @@ const props = defineProps<{
160
162
  language: string
161
163
  selectedCountersKeys: number[]
162
164
  selectedMetric: UI_T_ChartHost | UI_T_ChartVm
165
+ selectedMetricLocal: UI_T_ChartHost | UI_T_ChartVm
163
166
  selectedChartType: string
164
167
  selectedTimespanType: string
165
168
  unitsCount: number
@@ -175,6 +178,7 @@ const props = defineProps<{
175
178
  selectedObjects: string
176
179
  project: UI_T_Project
177
180
  objectsLoading: boolean
181
+ objectsData: UI_I_ObjectItem[]
178
182
  disabledPeriod?: boolean
179
183
  disabledView?: boolean
180
184
  }>()
@@ -184,7 +188,7 @@ const emits = defineEmits<{
184
188
  (event: 'exporting', value: string): void
185
189
  (event: 'open-advanced-page'): void
186
190
  (event: 'select-row', value: UI_I_AdvancedCounterItem[]): void
187
- (event: 'select-metric', value: string): void
191
+ (event: 'select-metric-local', value: string): void
188
192
  (event: 'update-chart-type', value: string): void
189
193
  (event: 'update-timespan-type', value: string): void
190
194
  (event: 'update-unit-count', value: number): void
@@ -197,7 +201,6 @@ const emits = defineEmits<{
197
201
  (event: 'update-custom-time-to', value: string): void
198
202
  (event: 'submit-options', value: UI_I_OptionsForm): void
199
203
  (event: 'update:selected-timespan-type', value: string): void
200
- (event: 'update-cores'): void
201
204
  }>()
202
205
 
203
206
  const routeType = '' + useRoute().params.type
@@ -49,6 +49,7 @@
49
49
  :selected-metrics-keys="selectedMetricsKeys"
50
50
  :selected-objects="props.selectedObjects"
51
51
  :objects-loading="props.objectsLoading"
52
+ :objects-data="props.objectsData"
52
53
  @select-row="selectedRows = $event"
53
54
  @update-chart-type="selectedChartTypeLocal = $event"
54
55
  @update-custom-time="localCustomTime = $event"
@@ -60,7 +61,6 @@
60
61
  @update-custom-time-from="onUpdateCustomTimeFrom"
61
62
  @update-custom-time-to="onUpdateCustomTimeTo"
62
63
  @select-objects="localSelectedObjects = $event"
63
- @update-cores="emits('update-cores')"
64
64
  />
65
65
  </div>
66
66
  </div>
@@ -79,6 +79,7 @@ import type {
79
79
  UI_T_ChartVm,
80
80
  } from '~/components/common/monitor/advanced/tools/chartOptionsModal/lib/models/types'
81
81
  import type { UI_I_OptionsForm } from '~/components/common/monitor/advanced/tools/chartOptionsModal/lib/models/interfaces'
82
+ import type { UI_I_ObjectItem } from '~/components/common/monitor/advanced/tools/chartOptionsModal/counters/timespan/object/lib/models/interfaces'
82
83
  import type { UI_T_Project } from '~/lib/models/types'
83
84
  import { metricsFunc } from '~/components/common/monitor/advanced/tools/chartOptionsModal/metrics/lib/config/optionsMetrics'
84
85
  import { getCurrentOptionsStorageFunc } from '~/components/common/monitor/advanced/tools/lib/config/advancedToolbar'
@@ -91,6 +92,7 @@ const props = defineProps<{
91
92
  language: string
92
93
  selectedCountersKeys: number[]
93
94
  selectedMetric: UI_T_ChartHost | UI_T_ChartVm
95
+ selectedMetricLocal: UI_T_ChartHost | UI_T_ChartVm
94
96
  selectedChartType: string
95
97
  selectedTimespanType: string
96
98
  unitsCount: number
@@ -106,12 +108,13 @@ const props = defineProps<{
106
108
  selectedObjects: string
107
109
  project: UI_T_Project
108
110
  objectsLoading: boolean
111
+ objectsData: UI_I_ObjectItem[]
109
112
  }>()
110
113
 
111
114
  const emits = defineEmits<{
112
115
  (event: 'hide'): void
113
116
  (event: 'select-row', value: UI_I_AdvancedCounterItem[]): void
114
- (event: 'select-metric', value: string): void
117
+ (event: 'select-metric-local', value: string): void
115
118
  (event: 'update-chart-type', value: string): void
116
119
  (event: 'update-timespan-type', value: string): void
117
120
  (event: 'update-unit-count', value: number): void
@@ -125,7 +128,6 @@ const emits = defineEmits<{
125
128
  (event: 'update-custom-time-to', value: string): void
126
129
  (event: 'submit-options', value: UI_I_OptionsForm): void
127
130
  (event: 'select-objects', value: string): void
128
- (event: 'update-cores'): void
129
131
  }>()
130
132
 
131
133
  const routeType = '' + useRoute().params.type
@@ -237,7 +239,7 @@ const checkValidations = (): boolean => {
237
239
  localCustomTimeTo.value
238
240
  )
239
241
 
240
- if (!selectedRows.value.length) {
242
+ if (isDisabledSubmit.value) {
241
243
  alerts.value = [localization.value.noCountersSelected]
242
244
  isShowAlerts.value = true
243
245
  return false
@@ -464,10 +466,19 @@ const isDisabledSubmit = computed<boolean>(() =>
464
466
  checkIsDisabledSubmit(
465
467
  props.type,
466
468
  selectedMetric.value,
469
+ selectedRows.value.length,
467
470
  localSelectedObjects.value
468
471
  )
469
472
  )
470
473
 
474
+ watch(
475
+ selectedMetric,
476
+ (newValue) => {
477
+ emits('select-metric-local', newValue)
478
+ },
479
+ { immediate: true }
480
+ )
481
+
471
482
  onMounted(() => {
472
483
  optionsNames.value = getCurrentOptionsStorageFunc(routeType, props.project)
473
484
  })
@@ -27,6 +27,7 @@
27
27
  :total-metric-items="totalMetricItems"
28
28
  :selected-objects="props.selectedObjects"
29
29
  :objects-loading="props.objectsLoading"
30
+ :objects-data="props.objectsData"
30
31
  @update-chart-type="emits('update-chart-type', $event)"
31
32
  @update-custom-time="emits('update-custom-time', $event)"
32
33
  @update-timespan-type="emits('update-timespan-type', $event)"
@@ -37,7 +38,6 @@
37
38
  @update-custom-time-from="emits('update-custom-time-from', $event)"
38
39
  @update-custom-time-to="emits('update-custom-time-to', $event)"
39
40
  @select-objects="emits('select-objects', $event)"
40
- @update-cores="emits('update-cores')"
41
41
  />
42
42
  </div>
43
43
  </template>
@@ -49,6 +49,7 @@ import type {
49
49
  } from '~/components/common/monitor/advanced/tools/chartOptionsModal/lib/models/types'
50
50
  import type { UI_T_AdvancedType } from '~/components/common/monitor/advanced/lib/models/types'
51
51
  import type { UI_I_AdvancedCounterItem } from '~/components/common/monitor/advanced/tools/chartOptionsModal/counters/table/lib/models/interfaces'
52
+ import type { UI_I_ObjectItem } from '~/components/common/monitor/advanced/tools/chartOptionsModal/counters/timespan/object/lib/models/interfaces'
52
53
 
53
54
  const props = defineProps<{
54
55
  language: string
@@ -69,6 +70,7 @@ const props = defineProps<{
69
70
  selectedMetricsKeys: number[]
70
71
  selectedObjects: string
71
72
  objectsLoading: boolean
73
+ objectsData: UI_I_ObjectItem[]
72
74
  }>()
73
75
 
74
76
  const emits = defineEmits<{
@@ -83,7 +85,6 @@ const emits = defineEmits<{
83
85
  (event: 'update-custom-time-from', value: string): void
84
86
  (event: 'update-custom-time-to', value: string): void
85
87
  (event: 'select-objects', value: string): void
86
- (event: 'update-cores'): void
87
88
  }>()
88
89
 
89
90
  const totalMetricItems = ref<number>(0)
@@ -30,8 +30,8 @@
30
30
  :total-metric-items="props.totalMetricItems"
31
31
  :selected-objects="props.selectedObjects"
32
32
  :loading="props.objectsLoading"
33
+ :current-items="props.objectsData"
33
34
  @select-objects="emits('select-objects', $event)"
34
- @update-cores="emits('update-cores')"
35
35
  />
36
36
  </div>
37
37
  </template>
@@ -42,6 +42,7 @@ import type {
42
42
  UI_T_ChartHost,
43
43
  UI_T_ChartVm,
44
44
  } from '~/components/common/monitor/advanced/tools/chartOptionsModal/lib/models/types'
45
+ import type { UI_I_ObjectItem } from '~/components/common/monitor/advanced/tools/chartOptionsModal/counters/timespan/object/lib/models/interfaces'
45
46
 
46
47
  const props = defineProps<{
47
48
  type: UI_T_AdvancedType
@@ -62,6 +63,7 @@ const props = defineProps<{
62
63
  totalMetricItems: number
63
64
  selectedObjects: string
64
65
  objectsLoading: boolean
66
+ objectsData: UI_I_ObjectItem[]
65
67
  }>()
66
68
 
67
69
  const emits = defineEmits<{
@@ -76,7 +78,6 @@ const emits = defineEmits<{
76
78
  (event: 'update-custom-time-from', value: string): void
77
79
  (event: 'update-custom-time-to', value: string): void
78
80
  (event: 'select-objects', value: string): void
79
- (event: 'update-cores'): void
80
81
  }>()
81
82
  </script>
82
83
 
@@ -10,7 +10,7 @@
10
10
  v-model:column-keys="columnItems"
11
11
  v-model:page-size="pagination.pageSize"
12
12
  v-model:page="pagination.page"
13
- type="checkbox"
13
+ :type="tableType"
14
14
  class="data-table"
15
15
  test-id="object-table"
16
16
  :loading="props.loading"
@@ -35,7 +35,9 @@ import type {
35
35
  } from '~/components/atoms/table/dataGrid/lib/models/interfaces'
36
36
  import type { UI_I_Localization } from '~/lib/models/interfaces'
37
37
  import type { UI_I_Pagination } from '~/lib/models/table/interfaces'
38
+ import type { UI_T_DataGridType } from '~/components/atoms/table/dataGrid/lib/models/types'
38
39
  import type { UI_I_AdvancedTargetObject } from '~/components/common/monitor/advanced/tools/chartOptionsModal/counters/table/lib/models/interfaces'
40
+ import type { UI_I_ObjectItem } from '~/components/common/monitor/advanced/tools/chartOptionsModal/counters/timespan/object/lib/models/interfaces'
39
41
  import * as table from '~/components/common/monitor/advanced/tools/chartOptionsModal/counters/timespan/object/lib/config/objectTable'
40
42
  import type { UI_T_AdvancedType } from '~/components/common/monitor/advanced/lib/models/types'
41
43
  import type {
@@ -52,16 +54,20 @@ const props = defineProps<{
52
54
  totalMetricItems: number
53
55
  selectedObjects: string
54
56
  loading: boolean
57
+ currentItems: UI_I_ObjectItem[]
55
58
  }>()
56
59
 
57
60
  const emits = defineEmits<{
58
61
  (event: 'select-objects', value: string): void
59
- (event: 'update-cores'): void
60
62
  }>()
61
63
 
62
64
  const localization = computed<UI_I_Localization>(() => useLocal())
63
65
 
64
- const selectedRow = ref<number[]>([])
66
+ const tableType = computed<UI_T_DataGridType>(() =>
67
+ ['disk', 'network'].includes(props.chart) ? 'radio' : 'checkbox'
68
+ )
69
+
70
+ const selectedRow = ref<number[] | number>([])
65
71
  const pagination = ref<UI_I_Pagination>({
66
72
  page: 1,
67
73
  pageSize: 35,
@@ -101,6 +107,7 @@ watch(
101
107
  props.totalCores,
102
108
  props.hostId,
103
109
  props.selectedMetricsKeys,
110
+ props.currentItems,
104
111
  ],
105
112
  (newValue) => {
106
113
  items = []
@@ -141,10 +148,16 @@ watch(
141
148
  target_object: 'averageMHz',
142
149
  })
143
150
  }
144
- bodyItems.value = table.bodyItems(items)
145
- } else bodyItems.value = []
151
+ } else if (
152
+ newValue[0] === 'host' &&
153
+ ['disk', 'network'].includes(newValue[1])
154
+ ) {
155
+ items = props.currentItems
156
+ }
157
+
158
+ bodyItems.value = table.bodyItems(items)
146
159
  },
147
- { immediate: true }
160
+ { immediate: true, deep: true }
148
161
  )
149
162
 
150
163
  watch(
@@ -152,9 +165,12 @@ watch(
152
165
  (newValue) => {
153
166
  const selectedItems: string[] = []
154
167
 
155
- newValue.forEach((key) => {
156
- selectedItems.push(items[key].id)
157
- })
168
+ if (['disk', 'network'].includes(props.chart)) {
169
+ selectedItems.push(items[newValue]?.target_object)
170
+ } else
171
+ newValue.forEach((key) => {
172
+ selectedItems.push(items[key].id)
173
+ })
158
174
 
159
175
  const selectedNames =
160
176
  items.length === newValue.length &&
@@ -185,13 +201,19 @@ watch(
185
201
  })
186
202
  selectedRow.value = selectedKeys
187
203
  }
204
+ } else if (
205
+ props.type === 'host' &&
206
+ ['disk', 'network'].includes(props.chart)
207
+ ) {
208
+ if (selected) {
209
+ const selectedId = all.find((item) => item[0].text === selected)?.[0]
210
+ ?.id
211
+ typeof selectedId === 'number' && (selectedRow.value = selectedId)
212
+ }
188
213
  }
189
214
  },
190
215
  { immediate: true }
191
216
  )
192
- onMounted(() => {
193
- emits('update-cores')
194
- })
195
217
  </script>
196
218
 
197
219
  <style scoped lang="scss">
@@ -1,12 +1,17 @@
1
1
  export const checkIsDisabledSubmit = (
2
2
  type: string,
3
3
  selectedMetric: string,
4
+ selectedRowsLength: number,
4
5
  localSelectedObjects: string
5
6
  ): boolean => {
6
- let result = false
7
+ let result = !selectedRowsLength
7
8
 
8
- if (type === 'host' && selectedMetric === 'cpu' && !localSelectedObjects)
9
- result = true
9
+ if (type === 'host') {
10
+ if (selectedMetric === 'cpu' && !localSelectedObjects) result = true
11
+ else if (selectedMetric === 'disk') {
12
+ result = !localSelectedObjects
13
+ }
14
+ }
10
15
 
11
16
  return result
12
17
  }
@@ -43,7 +43,7 @@ const getItems = (
43
43
  [localization.used, true, '110px', storageTableKeys[5]],
44
44
  [localization.type, true, '110px', storageTableKeys[6]],
45
45
  [localization.thinProvisioning, true, '132px', storageTableKeys[7]],
46
- [localization.access, true, '110px', storageTableKeys[8]],
46
+ [localization.common.access, true, '110px', storageTableKeys[8]],
47
47
  [localization.hardwareAcceleration, true, '134px', storageTableKeys[9]],
48
48
  [localization.driverType, true, '110px', storageTableKeys[10]],
49
49
  [localization.device, true, '110px', storageTableKeys[11]],
@@ -90,9 +90,9 @@
90
90
  >
91
91
  <div class="flex-align-center input-action-wrapper">
92
92
  <input
93
- id="configuration-folder-input"
93
+ id="configuration-server-input"
94
94
  v-model="form.server.value"
95
- data-id="configuration-folder-input"
95
+ data-id="configuration-server-input"
96
96
  type="text"
97
97
  class="clr-input"
98
98
  @blur="onBlurInputServer"
@@ -43,7 +43,7 @@ const getItems = (
43
43
  [localization.used, true, '110px', storageTableKeys[5]],
44
44
  [localization.type, true, '110px', storageTableKeys[6]],
45
45
  [localization.thinProvisioning, true, '132px', storageTableKeys[7]],
46
- [localization.access, true, '110px', storageTableKeys[8]],
46
+ [localization.common.access, true, '110px', storageTableKeys[8]],
47
47
  [localization.hardwareAcceleration, true, '134px', storageTableKeys[9]],
48
48
  [localization.driverType, true, '110px', storageTableKeys[10]],
49
49
  [localization.device, true, '110px', storageTableKeys[11]],