bfg-common 1.6.89 → 1.6.91

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 (191) hide show
  1. package/assets/localization/local_be.json +4365 -4630
  2. package/assets/localization/local_en.json +4369 -4635
  3. package/assets/localization/local_hy.json +4369 -4634
  4. package/assets/localization/local_kk.json +4368 -4633
  5. package/assets/localization/local_ru.json +4368 -4633
  6. package/assets/localization/local_zh.json +4366 -4631
  7. package/assets/scss/common/global.scss +0 -11
  8. package/assets/scss/common/normalize.scss +0 -3
  9. package/assets/scss/common/theme.scss +2 -2
  10. package/components/atoms/stack/StackBlock.vue +1 -1
  11. package/components/atoms/table/dataGrid/DataGridColumnSwitch.vue +2 -2
  12. package/components/atoms/tooltip/TooltipError.vue +0 -3
  13. package/components/common/adapterManager/AdapterManagerNew.vue +0 -87
  14. package/components/common/adapterManager/addAdapterModal/AddAdapterModalNew.vue +1 -1
  15. package/components/common/adapterManager/addAdapterWarningModal/AddAdapterWarningModalNew.vue +1 -0
  16. package/components/common/adapterManager/ui/actions/bar/Bar.vue +0 -2
  17. package/components/common/adapterManager/ui/actions/bar/BarNew.vue +2 -3
  18. package/components/common/adapterManager/ui/table/adapters/AdaptersNew.vue +0 -1
  19. package/components/common/configure/physicalAdapters/PhysicalAdapters.vue +0 -6
  20. package/components/common/configure/physicalAdapters/PhysicalAdaptersNew.vue +192 -219
  21. package/components/common/configure/physicalAdapters/PhysicalAdaptersOld.vue +4 -6
  22. package/components/common/configure/physicalAdapters/buttons/Buttons.vue +0 -1
  23. package/components/common/configure/physicalAdapters/modals/edit/Edit.vue +1 -26
  24. package/components/common/configure/physicalAdapters/modals/edit/EditNew.vue +1 -30
  25. package/components/common/configure/physicalAdapters/modals/edit/lib/models/interfaces.ts +0 -5
  26. package/components/common/configure/physicalAdapters/tableView/TableViewNew.vue +1 -12
  27. package/components/common/configure/physicalAdapters/tableView/lib/config/physicalAdaptersTableConfigNew.ts +21 -21
  28. package/components/common/configure/physicalAdapters/tableView/lib/config/settings.ts +32 -39
  29. package/components/common/configure/physicalAdapters/tableView/lib/models/interfaces.ts +1 -4
  30. package/components/common/diagramMain/Diagram.vue +85 -169
  31. package/components/common/diagramMain/DiagramMain.vue +10 -40
  32. package/components/common/diagramMain/{header/HeaderOld.vue → Header.vue} +67 -78
  33. package/components/common/diagramMain/modals/{managePhysicalAdapters/ManagePhysicalAdaptersOld.vue → ManagePhysicalAdaptersModal.vue} +119 -33
  34. package/components/common/diagramMain/modals/Modals.vue +5 -5
  35. package/components/common/diagramMain/modals/editSettings/{confirmTeamingSettingsModal/ConfirmTeamingSettingsModalOld.vue → ConfirmTeamingSettingsModal.vue} +5 -2
  36. package/components/common/diagramMain/modals/editSettings/EditSettings.vue +102 -104
  37. package/components/common/diagramMain/modals/editSettings/{modal/EditSettingsModalOld.vue → EditSettingsModal.vue} +51 -12
  38. package/components/common/diagramMain/modals/editSettings/lib/models/interfaces.ts +0 -6
  39. package/components/common/diagramMain/modals/editSettings/tabs/{networkProperties/NetworkPropertiesOld.vue → NetworkProperties.vue} +113 -12
  40. package/components/common/diagramMain/modals/editSettings/tabs/{security/SecurityOld.vue → Security.vue} +48 -25
  41. package/components/common/diagramMain/modals/editSettings/tabs/SwitchProperties.vue +164 -0
  42. package/components/common/diagramMain/modals/editSettings/tabs/{teamingFailover/TeamingFailoverOld.vue → TeamingFailover.vue} +48 -11
  43. package/components/common/diagramMain/modals/editSettings/tabs/{trafficShaping/TrafficShapingOld.vue → TrafficShaping.vue} +134 -12
  44. package/components/common/diagramMain/modals/editSettings/tabs/port/{ipvFourSettings/IpvFourSettingsOld.vue → IpvFourSettings.vue} +152 -11
  45. package/components/common/diagramMain/modals/editSettings/tabs/port/{portProperties/PortPropertiesOld.vue → PortProperties.vue} +103 -12
  46. package/components/common/diagramMain/modals/lib/config/adapterModal.ts +9 -9
  47. package/components/common/diagramMain/modals/lib/config/diagramConfig.ts +2 -43
  48. package/components/common/diagramMain/modals/lib/config/index.ts +1 -2
  49. package/components/common/diagramMain/modals/lib/config/networkModal.ts +15 -15
  50. package/components/common/diagramMain/modals/lib/config/portModal.ts +12 -12
  51. package/components/common/diagramMain/modals/lib/config/vCenterModal.ts +2 -2
  52. package/components/common/diagramMain/modals/lib/config/vmKernelAdapter.ts +1 -1
  53. package/components/common/diagramMain/modals/lib/utils/index.ts +4 -34
  54. package/components/common/diagramMain/modals/migrateVmkernelAdapter/MigrateVmkernelAdapter.vue +2 -2
  55. package/components/common/diagramMain/modals/migrateVmkernelAdapter/validations/common.ts +1 -1
  56. package/components/common/diagramMain/modals/remove/RemoveModalNew.vue +16 -67
  57. package/components/common/diagramMain/modals/viewSettings/viewSettingsModal/ViewSettingsModalNew.vue +0 -8
  58. package/components/common/layout/theHeader/ThemeSwitch.vue +1 -1
  59. package/components/common/layout/theHeader/modals/reconnect/New.vue +30 -38
  60. package/components/common/layout/theHeader/userMenu/modals/changePassword/New.vue +9 -8
  61. package/components/common/layout/theHeader/userMenu/modals/preferences/New.vue +0 -4
  62. package/components/common/layout/theHeader/userMenu/modals/preferences/Old.vue +2 -9
  63. package/components/common/layout/theHeader/userMenu/modals/preferences/changeLanguage/ChangeLanguage.vue +7 -11
  64. package/components/common/layout/theHeader/userMenu/modals/preferences/defaultConsole/DefaultConsole.vue +1 -7
  65. package/components/common/layout/theHeader/userMenu/modals/preferences/defaultConsole/lib/config/consoleOptions.ts +5 -8
  66. package/components/common/layout/theHeader/userMenu/modals/preferences/timeFormat/TimeFormat.vue +5 -9
  67. package/components/common/layout/theHeader/userMenu/modals/preferences/timeFormat/lib/config/formatOptions.ts +1 -1
  68. package/components/common/layout/theHeader/userMenu/modals/preferences/view/Old.vue +9 -5
  69. package/components/common/layout/theHeader/userMenu/modals/preferences/view/View.vue +6 -9
  70. package/components/common/mainNavigationPanel/MainNavigationPanelNew.vue +1 -3
  71. package/components/common/modals/Rename.vue +1 -3
  72. package/components/common/monitor/advanced/tools/chartOptionsModal/counters/table/lib/config/utils.ts +2791 -2791
  73. package/components/common/monitor/advanced/tools/chartOptionsModal/counters/timespan/object/Object.vue +295 -295
  74. package/components/common/monitor/advanced/tools/chartOptionsModal/lib/config/index.ts +22 -22
  75. package/components/common/monitor/advanced/tools/chartOptionsModal/lib/utils/checkSubmit.ts +46 -46
  76. package/components/common/monitor/lib/utils/local_be.json +714 -714
  77. package/components/common/monitor/lib/utils/local_en.json +714 -714
  78. package/components/common/monitor/lib/utils/local_hy.json +714 -714
  79. package/components/common/monitor/lib/utils/local_kk.json +714 -714
  80. package/components/common/monitor/lib/utils/local_ru.json +714 -714
  81. package/components/common/monitor/lib/utils/local_zh.json +714 -714
  82. package/components/common/noDataProvided/NoDataProvidedNew.vue +1 -1
  83. package/components/common/pages/backups/lib/models/interfaces.ts +0 -1
  84. package/components/common/pages/backups/modals/Modals.vue +0 -1
  85. package/components/common/pages/backups/modals/createBackup/datastores/tableView/new/lib/config/table.ts +4 -4
  86. package/components/common/pages/backups/modals/createBackup/datastores/tableView/old/lib/config/table.ts +4 -4
  87. package/components/common/pages/backups/modals/lib/config/restore.ts +0 -1
  88. package/components/common/pages/backups/modals/lib/models/interfaces.ts +0 -1
  89. package/components/common/pages/backups/modals/restore/Restore.vue +2 -4
  90. package/components/common/pages/hardwareHealth/historyTestimony/tools/chartOptionsModal/ChartOptionsModal.vue +253 -184
  91. package/components/common/pages/hardwareHealth/historyTestimony/tools/chartOptionsModal/actions/ActionsNew.vue +1 -1
  92. package/components/common/pages/scheduledTasks/table/lib/models/enums.ts +0 -9
  93. package/components/common/pages/scheduledTasks/table/new/New.vue +10 -12
  94. package/components/common/pages/tasks/Tasks.vue +1 -4
  95. package/components/common/pages/tasks/table/Table.vue +23 -25
  96. package/components/common/readyToComplete/New.vue +0 -1
  97. package/components/common/split/horizontal/New.vue +1 -1
  98. package/components/common/split/horizontal/Old.vue +1 -1
  99. package/components/common/split/vertical/New.vue +8 -42
  100. package/components/common/split/vertical/Old.vue +2 -31
  101. package/components/common/split/vertical/Vertical.vue +0 -4
  102. package/components/common/tools/Actions.vue +3 -7
  103. package/components/common/tools/lib/models/interfaces.ts +0 -1
  104. package/components/common/vm/actions/add/New.vue +6 -21
  105. package/components/common/vm/actions/common/customizeHardware/virtualHardware/cdDvdDrive/media/Media.vue +1 -14
  106. package/components/common/vm/actions/common/customizeHardware/virtualHardware/cdDvdDrive/media/New.vue +0 -5
  107. package/components/common/vm/actions/common/customizeHardware/virtualHardware/cdDvdDrive/media/Old.vue +0 -1
  108. package/components/common/vm/actions/common/customizeHardware/virtualHardware/cpu/New.vue +0 -1
  109. package/components/common/vm/actions/common/customizeHardware/virtualHardware/reservation/New.vue +0 -2
  110. package/components/common/vm/actions/common/select/options/New.vue +12 -14
  111. package/components/common/vm/actions/common/select/options/Old.vue +15 -16
  112. package/components/common/vm/actions/common/select/storage/new/lib/config/table.ts +15 -13
  113. package/components/common/vm/actions/confirm/Confirm.vue +0 -3
  114. package/components/common/vm/actions/rename/Old.vue +0 -1
  115. package/components/common/vm/snapshots/DetailView.vue +6 -6
  116. package/components/common/wizards/datastore/add/New.vue +0 -6
  117. package/components/common/wizards/datastore/add/lib/config/steps.ts +1 -1
  118. package/components/common/wizards/datastore/add/steps/nameAndDevice/NameAndDeviceNew.vue +1 -1
  119. package/components/common/wizards/datastore/add/steps/nameAndDevice/advancedOptions/New.vue +1 -1
  120. package/components/common/wizards/network/add/Add.vue +2 -13
  121. package/components/common/wizards/network/add/AddNew.vue +26 -22
  122. package/components/common/wizards/network/add/lib/config/initialData.ts +4 -6
  123. package/components/common/wizards/network/add/lib/config/steps.ts +1 -1
  124. package/components/common/wizards/network/add/lib/models/interfaces.ts +0 -1
  125. package/components/common/wizards/network/add/lib/utils/utils.ts +1 -1
  126. package/components/common/wizards/network/add/steps/connectionSettings/ConnectionSettingsOld.vue +1 -5
  127. package/components/common/wizards/network/add/steps/ipFourSettings/IpFourSettingsNew.vue +8 -2
  128. package/components/common/wizards/network/add/steps/ipFourSettings/IpFourSettingsOld.vue +0 -3
  129. package/components/common/wizards/network/add/steps/portProperties/PortPropertiesNew.vue +8 -2
  130. package/components/common/wizards/network/add/steps/portProperties/PortPropertiesOld.vue +2 -6
  131. package/components/common/wizards/network/add/steps/selectTargetDevice/SelectTargetDeviceNew.vue +3 -10
  132. package/components/common/wizards/network/add/steps/selectTargetDevice/SelectTargetDeviceOld.vue +0 -4
  133. package/components/common/wizards/network/add/steps/selectTargetDevice/modals/new/SelectNetwork.vue +1 -5
  134. package/components/common/wizards/network/add/validations/common.ts +1 -1
  135. package/components/common/wizards/vm/migrate/New.vue +3 -13
  136. package/components/common/wizards/vm/migrate/lib/config/constructDataReady.ts +0 -5
  137. package/components/common/wizards/vm/migrate/lib/config/steps.ts +2 -3
  138. package/components/common/wizards/vm/migrate/steps/computeResource/New.vue +1 -2
  139. package/components/common/wizards/vm/migrate/steps/computeResource/tableView/new/New.vue +21 -40
  140. package/components/common/wizards/vm/migrate/steps/computeResource/tableView/new/lib/config/hostTable.ts +14 -44
  141. package/components/common/wizards/vm/migrate/steps/computeResource/tableView/new/lib/models/enums.ts +0 -4
  142. package/components/common/wizards/vm/migrate/steps/priority/New.vue +2 -7
  143. package/components/common/wizards/vm/migrate/steps/selectStorage/New.vue +7 -22
  144. package/components/common/wizards/vm/migrate/steps/selectStorage/configure/batch/New.vue +0 -6
  145. package/components/common/wizards/vm/migrate/steps/selectStorage/configure/batch/table/new/New.vue +1 -4
  146. package/components/common/wizards/vm/migrate/steps/selectStorage/configure/batch/table/new/lib/config/datastoreTable.ts +16 -12
  147. package/components/common/wizards/vm/migrate/steps/selectStorage/configure/disk/table/new/New.vue +5 -10
  148. package/components/common/wizards/vm/migrate/steps/selectStorage/configure/disk/table/new/lib/config/diskTable.ts +11 -16
  149. package/components/common/wizards/vm/migrate/steps/selectStorage/configure/disk/table/old/lib/config/diskTable.ts +1 -7
  150. package/components/common/wizards/vm/migrate/steps/selectStorage/selectedPerDisk/New.vue +10 -17
  151. package/components/common/wizards/vm/migrate/steps/type/TypeNew.vue +0 -1
  152. package/components/common/wizards/vm/migrate/vmOrigin/New.vue +15 -35
  153. package/lib/models/store/tasks/enums.ts +0 -3
  154. package/lib/models/store/tasks/types.ts +6 -7
  155. package/package.json +2 -2
  156. package/plugins/directives.ts +5 -3
  157. package/public/spice-console/application/agent.js +17 -18
  158. package/store/tasks/actions.ts +8 -26
  159. package/store/tasks/mappers/recentTasks.ts +0 -1
  160. package/components/common/configure/physicalAdapters/modals/edit/lib/validations/validations.ts +0 -19
  161. package/components/common/diagramMain/header/Header.vue +0 -49
  162. package/components/common/diagramMain/header/HeaderNew.vue +0 -155
  163. package/components/common/diagramMain/modals/UnsavedChangesModal.vue +0 -32
  164. package/components/common/diagramMain/modals/editSettings/EditSettingsNew.vue +0 -285
  165. package/components/common/diagramMain/modals/editSettings/EditSettingsOld.vue +0 -254
  166. package/components/common/diagramMain/modals/editSettings/confirmTeamingSettingsModal/ConfirmTeamingSettingsModal.vue +0 -31
  167. package/components/common/diagramMain/modals/editSettings/confirmTeamingSettingsModal/ConfirmTeamingSettingsModalNew.vue +0 -82
  168. package/components/common/diagramMain/modals/editSettings/lib/config/config.ts +0 -15
  169. package/components/common/diagramMain/modals/editSettings/lib/utils/utils.ts +0 -177
  170. package/components/common/diagramMain/modals/editSettings/modal/EditSettingsModal.vue +0 -137
  171. package/components/common/diagramMain/modals/editSettings/modal/EditSettingsModalNew.vue +0 -91
  172. package/components/common/diagramMain/modals/editSettings/tabs/networkProperties/NetworkProperties.vue +0 -158
  173. package/components/common/diagramMain/modals/editSettings/tabs/networkProperties/NetworkPropertiesNew.vue +0 -262
  174. package/components/common/diagramMain/modals/editSettings/tabs/port/ipvFourSettings/IpvFourSettings.vue +0 -192
  175. package/components/common/diagramMain/modals/editSettings/tabs/port/ipvFourSettings/IpvFourSettingsNew.vue +0 -388
  176. package/components/common/diagramMain/modals/editSettings/tabs/port/portProperties/PortProperties.vue +0 -139
  177. package/components/common/diagramMain/modals/editSettings/tabs/port/portProperties/PortPropertiesNew.vue +0 -286
  178. package/components/common/diagramMain/modals/editSettings/tabs/security/Security.vue +0 -209
  179. package/components/common/diagramMain/modals/editSettings/tabs/security/SecurityNew.vue +0 -233
  180. package/components/common/diagramMain/modals/editSettings/tabs/switchProperties/SwitchProperties.vue +0 -128
  181. package/components/common/diagramMain/modals/editSettings/tabs/switchProperties/SwitchPropertiesNew.vue +0 -235
  182. package/components/common/diagramMain/modals/editSettings/tabs/switchProperties/SwitchPropertiesOld.vue +0 -87
  183. package/components/common/diagramMain/modals/editSettings/tabs/teamingFailover/TeamingFailover.vue +0 -99
  184. package/components/common/diagramMain/modals/editSettings/tabs/teamingFailover/TeamingFailoverNew.vue +0 -319
  185. package/components/common/diagramMain/modals/editSettings/tabs/trafficShaping/TrafficShaping.vue +0 -173
  186. package/components/common/diagramMain/modals/editSettings/tabs/trafficShaping/TrafficShapingNew.vue +0 -348
  187. package/components/common/diagramMain/modals/managePhysicalAdapters/ManagePhysicalAdapters.vue +0 -164
  188. package/components/common/diagramMain/modals/managePhysicalAdapters/ManagePhysicalAdaptersNew.vue +0 -306
  189. package/components/common/diagramMain/skeleton/Header.vue +0 -31
  190. package/components/common/diagramMain/skeleton/Switch.vue +0 -75
  191. package/components/common/wizards/vm/migrate/steps/computeResource/tableView/new/lib/config/clusterTable.ts +0 -340
@@ -1,295 +1,295 @@
1
- <template>
2
- <common-monitor-advanced-tools-chart-options-modal-counters-timespan-object-object-new
3
- v-if="isNewView"
4
- v-model:selected-row="selectedRow"
5
- :table-type="tableType"
6
- :loading="props.loading"
7
- :body-items="bodyItems"
8
- />
9
- <common-monitor-advanced-tools-chart-options-modal-counters-timespan-object-object-old
10
- v-else
11
- v-model:selected-row="selectedRow"
12
- v-model:column-items="columnItems"
13
- v-model:pagination="pagination"
14
- :table-type="tableType"
15
- :loading="props.loading"
16
- :head-items="headItems"
17
- :body-items="bodyItems"
18
- />
19
- </template>
20
-
21
- <script setup lang="ts">
22
- import type {
23
- UI_I_HeadItem,
24
- UI_I_BodyItem,
25
- UI_I_ColumnKey,
26
- } from '~/components/atoms/table/dataGrid/lib/models/interfaces'
27
- import type { UI_I_Localization } from '~/lib/models/interfaces'
28
- import type { UI_I_Pagination } from '~/lib/models/table/interfaces'
29
- import type { UI_I_AdvancedTargetObject } from '~/components/common/monitor/advanced/tools/chartOptionsModal/counters/table/lib/models/interfaces'
30
- import type { UI_I_ObjectItem } from '~/components/common/monitor/advanced/tools/chartOptionsModal/counters/timespan/object/lib/models/interfaces'
31
- import type { UI_T_DataGridType } from '~/components/atoms/table/dataGrid/lib/models/types'
32
- import type { UI_T_AdvancedType } from '~/components/common/monitor/advanced/lib/models/types'
33
- import type {
34
- UI_T_ChartHost,
35
- UI_T_ChartVm,
36
- } from '~/components/common/monitor/advanced/tools/chartOptionsModal/lib/models/types'
37
- import * as table from '~/components/common/monitor/advanced/tools/chartOptionsModal/counters/timespan/object/lib/config/objectTable'
38
-
39
- const props = defineProps<{
40
- type: UI_T_AdvancedType
41
- chart: UI_T_ChartHost | UI_T_ChartVm
42
- totalCores: number
43
- hostId: string
44
- selectedMetricsKeys: number[]
45
- totalMetricItems: number
46
- currentSelectedObjects: string
47
- loading: boolean
48
- currentItems: UI_I_ObjectItem[]
49
- }>()
50
-
51
- const emits = defineEmits<{
52
- (event: 'select-objects', value: string): void
53
- }>()
54
-
55
- const { $store }: any = useNuxtApp()
56
-
57
- const isNewView = computed<boolean>(() => $store.getters['main/getIsNewView'])
58
-
59
- const localization = computed<UI_I_Localization>(() => useLocal())
60
-
61
- const tableType = computed<UI_T_DataGridType>(() => {
62
- let result = 'checkbox'
63
-
64
- if (props.type === 'host') {
65
- result = ['disk', 'network'].includes(props.chart) ? 'radio' : 'checkbox'
66
- }
67
-
68
- return result
69
- })
70
-
71
- const selectedRow = ref<number[] | number>([])
72
- const pagination = ref<UI_I_Pagination>({
73
- page: 1,
74
- pageSize: 35,
75
- })
76
-
77
- const headItems = computed<UI_I_HeadItem[]>(() =>
78
- table.headItems(localization.value)
79
- )
80
- const columnItems = computed<UI_I_ColumnKey[]>(() =>
81
- table.columnKeys(localization.value)
82
- )
83
-
84
- const bodyItems = ref<UI_I_BodyItem[][]>([])
85
-
86
- let items: UI_I_AdvancedTargetObject[] = []
87
- let firstRequest = false
88
- const getTotalCores = (): void => {
89
- if (
90
- props.selectedMetricsKeys.includes(1) &&
91
- !props.totalCores &&
92
- !firstRequest
93
- ) {
94
- firstRequest = true
95
- }
96
- }
97
- const updateSelectedRow = (): void => {
98
- if (selectedRow.value.length) return
99
-
100
- if (props.type === 'vm' && props.chart === 'network') {
101
- selectedRow.value = []
102
-
103
- if (props.currentItems.length === 1) selectedRow.value.push(0)
104
- else if (props.currentItems.length > 1) {
105
- const totalIndex = props.currentItems.findIndex(
106
- (item) => item.target_object.toLowerCase() === 'total'
107
- )
108
-
109
- totalIndex >= 0 && selectedRow.value.push(totalIndex)
110
- }
111
- }
112
- }
113
- watch(
114
- () => props.selectedMetricsKeys,
115
- () => {
116
- getTotalCores()
117
- },
118
- { deep: true }
119
- )
120
- watch(
121
- () => [
122
- props.type,
123
- props.chart,
124
- props.totalCores,
125
- props.hostId,
126
- props.selectedMetricsKeys,
127
- props.currentItems,
128
- ],
129
- (newValue) => {
130
- items = []
131
- selectedRow.value = []
132
-
133
- if (newValue[0] === 'host' && newValue[1] === 'cpu') {
134
- if (newValue[4].includes(0)) {
135
- items.push({
136
- id: 'total',
137
- target_object: newValue[3],
138
- })
139
- }
140
- if (newValue[4].includes(1)) {
141
- for (let i = 0; i < newValue[2]; i++) {
142
- items.push({
143
- id: 'core' + i,
144
- target_object: 'core' + i,
145
- })
146
- }
147
- }
148
- if (newValue[4].includes(2)) {
149
- for (let i = 0; i < newValue[2]; i++) {
150
- items.push({
151
- id: 'core' + i + 'MHz',
152
- target_object: 'core' + i + 'MHz',
153
- })
154
- }
155
- }
156
- // if (newValue[4].includes(3)) {
157
- // items.push({
158
- // id: 'totalMHz',
159
- // target_object: 'totalMHz',
160
- // })
161
- // }
162
- // if (newValue[4].includes(4)) {
163
- // items.push({
164
- // id: 'averageMHz',
165
- // target_object: 'averageMHz',
166
- // })
167
- // }
168
- } else if (
169
- newValue[0] === 'host' &&
170
- ['disk', 'network'].includes(newValue[1])
171
- ) {
172
- let newItems = []
173
-
174
- if (newValue[1] === 'network')
175
- newItems.push({
176
- id: 'total',
177
- // target_object: localization.value.common.total.toLowerCase(),
178
- target_object: 'total',
179
- })
180
-
181
- newItems = [...newItems, ...props.currentItems]
182
-
183
- items = newItems
184
- } else if (newValue[0] === 'vm' && newValue[1] === 'network') {
185
- items = [...props.currentItems]
186
- }
187
-
188
- bodyItems.value = table.bodyItems(items)
189
- updateSelectedRow()
190
- },
191
- { immediate: true, deep: true }
192
- )
193
-
194
- watch(
195
- selectedRow,
196
- (newValue) => {
197
- const selectedItems: string[] = []
198
-
199
- if (props.type === 'host' && ['disk', 'network'].includes(props.chart)) {
200
- selectedItems.push(items[newValue]?.target_object)
201
- } else if (props.type === 'vm' && ['network'].includes(props.chart)) {
202
- newValue.forEach((key) => {
203
- const newItem = items[key]?.target_object
204
- newItem && selectedItems.push(newItem)
205
- })
206
- } else
207
- newValue.forEach((key) => {
208
- selectedItems.push(items[key].id)
209
- })
210
-
211
- let selectedNames = ''
212
-
213
- if (
214
- items.length === newValue.length &&
215
- props.selectedMetricsKeys.length === props.totalMetricItems
216
- ) {
217
- selectedNames = '*'
218
-
219
- if (props.type === 'vm') selectedNames = 'total'
220
- } else selectedNames = selectedItems.join(', ')
221
-
222
- /* if (props.type === 'vm' && ['network'].includes(props.chart)) {
223
- if (
224
- selectedItems.includes('total') ||
225
- (!selectedItems.includes('total') &&
226
- items.length === newValue.length + 1)
227
- )
228
- selectedNames = 'total'
229
- } */
230
-
231
- if (!props.currentSelectedObjects) emits('select-objects', selectedNames)
232
- },
233
- { deep: true }
234
- )
235
-
236
- watch(
237
- () => [props.currentSelectedObjects, bodyItems.value],
238
- ([selectedObjects, all]) => {
239
- if (!all.length) return
240
-
241
- if (props.type === 'host' && props.chart === 'cpu') {
242
- if (selectedObjects === '*') {
243
- selectedRow.value = all.map((item) => item[0].id)
244
- } else {
245
- const selectedNames = selectedObjects.split(', ')
246
- const selectedKeys: number[] = []
247
- all.forEach((item) => {
248
- if (selectedNames.includes('total') && !selectedKeys.includes(0))
249
- selectedKeys.push(0)
250
- if (selectedNames.includes(item[0].text))
251
- selectedKeys.push(item[0].id)
252
- })
253
- selectedRow.value = selectedKeys
254
- }
255
- } else if (
256
- props.type === 'host' &&
257
- ['disk', 'network'].includes(props.chart)
258
- ) {
259
- if (selectedObjects) {
260
- const selectedId = all.find(
261
- (item) => item[0].text === selectedObjects
262
- )?.[0]?.id
263
- typeof selectedId === 'number' && (selectedRow.value = selectedId)
264
- }
265
- }
266
- },
267
- { immediate: true }
268
- )
269
- </script>
270
-
271
- <style scoped lang="scss">
272
- .chart-option-objects-split {
273
- flex: 1;
274
-
275
- .chart-options-grid-title {
276
- display: block;
277
- margin-bottom: -20px;
278
- }
279
- .flex-to-absolute-positioning-container {
280
- height: 100%;
281
- max-height: 204px;
282
- .flex-to-absolute-positioning-container-inner {
283
- height: inherit;
284
-
285
- .data-table {
286
- height: inherit;
287
-
288
- :deep(.datagrid-outer-wrapper) {
289
- height: inherit;
290
- }
291
- }
292
- }
293
- }
294
- }
295
- </style>
1
+ <template>
2
+ <common-monitor-advanced-tools-chart-options-modal-counters-timespan-object-object-new
3
+ v-if="isNewView"
4
+ v-model:selected-row="selectedRow"
5
+ :table-type="tableType"
6
+ :loading="props.loading"
7
+ :body-items="bodyItems"
8
+ />
9
+ <common-monitor-advanced-tools-chart-options-modal-counters-timespan-object-object-old
10
+ v-else
11
+ v-model:selected-row="selectedRow"
12
+ v-model:column-items="columnItems"
13
+ v-model:pagination="pagination"
14
+ :table-type="tableType"
15
+ :loading="props.loading"
16
+ :head-items="headItems"
17
+ :body-items="bodyItems"
18
+ />
19
+ </template>
20
+
21
+ <script setup lang="ts">
22
+ import type {
23
+ UI_I_HeadItem,
24
+ UI_I_BodyItem,
25
+ UI_I_ColumnKey,
26
+ } from '~/components/atoms/table/dataGrid/lib/models/interfaces'
27
+ import type { UI_I_Localization } from '~/lib/models/interfaces'
28
+ import type { UI_I_Pagination } from '~/lib/models/table/interfaces'
29
+ import type { UI_I_AdvancedTargetObject } from '~/components/common/monitor/advanced/tools/chartOptionsModal/counters/table/lib/models/interfaces'
30
+ import type { UI_I_ObjectItem } from '~/components/common/monitor/advanced/tools/chartOptionsModal/counters/timespan/object/lib/models/interfaces'
31
+ import type { UI_T_DataGridType } from '~/components/atoms/table/dataGrid/lib/models/types'
32
+ import type { UI_T_AdvancedType } from '~/components/common/monitor/advanced/lib/models/types'
33
+ import type {
34
+ UI_T_ChartHost,
35
+ UI_T_ChartVm,
36
+ } from '~/components/common/monitor/advanced/tools/chartOptionsModal/lib/models/types'
37
+ import * as table from '~/components/common/monitor/advanced/tools/chartOptionsModal/counters/timespan/object/lib/config/objectTable'
38
+
39
+ const props = defineProps<{
40
+ type: UI_T_AdvancedType
41
+ chart: UI_T_ChartHost | UI_T_ChartVm
42
+ totalCores: number
43
+ hostId: string
44
+ selectedMetricsKeys: number[]
45
+ totalMetricItems: number
46
+ currentSelectedObjects: string
47
+ loading: boolean
48
+ currentItems: UI_I_ObjectItem[]
49
+ }>()
50
+
51
+ const emits = defineEmits<{
52
+ (event: 'select-objects', value: string): void
53
+ }>()
54
+
55
+ const { $store }: any = useNuxtApp()
56
+
57
+ const isNewView = computed<boolean>(() => $store.getters['main/getIsNewView'])
58
+
59
+ const localization = computed<UI_I_Localization>(() => useLocal())
60
+
61
+ const tableType = computed<UI_T_DataGridType>(() => {
62
+ let result = 'checkbox'
63
+
64
+ if (props.type === 'host') {
65
+ result = ['disk', 'network'].includes(props.chart) ? 'radio' : 'checkbox'
66
+ }
67
+
68
+ return result
69
+ })
70
+
71
+ const selectedRow = ref<number[] | number>([])
72
+ const pagination = ref<UI_I_Pagination>({
73
+ page: 1,
74
+ pageSize: 35,
75
+ })
76
+
77
+ const headItems = computed<UI_I_HeadItem[]>(() =>
78
+ table.headItems(localization.value)
79
+ )
80
+ const columnItems = computed<UI_I_ColumnKey[]>(() =>
81
+ table.columnKeys(localization.value)
82
+ )
83
+
84
+ const bodyItems = ref<UI_I_BodyItem[][]>([])
85
+
86
+ let items: UI_I_AdvancedTargetObject[] = []
87
+ let firstRequest = false
88
+ const getTotalCores = (): void => {
89
+ if (
90
+ props.selectedMetricsKeys.includes(1) &&
91
+ !props.totalCores &&
92
+ !firstRequest
93
+ ) {
94
+ firstRequest = true
95
+ }
96
+ }
97
+ const updateSelectedRow = (): void => {
98
+ if (selectedRow.value.length) return
99
+
100
+ if (props.type === 'vm' && props.chart === 'network') {
101
+ selectedRow.value = []
102
+
103
+ if (props.currentItems.length === 1) selectedRow.value.push(0)
104
+ else if (props.currentItems.length > 1) {
105
+ const totalIndex = props.currentItems.findIndex(
106
+ (item) => item.target_object.toLowerCase() === 'total'
107
+ )
108
+
109
+ totalIndex >= 0 && selectedRow.value.push(totalIndex)
110
+ }
111
+ }
112
+ }
113
+ watch(
114
+ () => props.selectedMetricsKeys,
115
+ () => {
116
+ getTotalCores()
117
+ },
118
+ { deep: true }
119
+ )
120
+ watch(
121
+ () => [
122
+ props.type,
123
+ props.chart,
124
+ props.totalCores,
125
+ props.hostId,
126
+ props.selectedMetricsKeys,
127
+ props.currentItems,
128
+ ],
129
+ (newValue) => {
130
+ items = []
131
+ selectedRow.value = []
132
+
133
+ if (newValue[0] === 'host' && newValue[1] === 'cpu') {
134
+ if (newValue[4].includes(0)) {
135
+ items.push({
136
+ id: 'total',
137
+ target_object: newValue[3],
138
+ })
139
+ }
140
+ if (newValue[4].includes(1)) {
141
+ for (let i = 0; i < newValue[2]; i++) {
142
+ items.push({
143
+ id: 'core' + i,
144
+ target_object: 'core' + i,
145
+ })
146
+ }
147
+ }
148
+ if (newValue[4].includes(2)) {
149
+ for (let i = 0; i < newValue[2]; i++) {
150
+ items.push({
151
+ id: 'core' + i + 'MHz',
152
+ target_object: 'core' + i + 'MHz',
153
+ })
154
+ }
155
+ }
156
+ // if (newValue[4].includes(3)) {
157
+ // items.push({
158
+ // id: 'totalMHz',
159
+ // target_object: 'totalMHz',
160
+ // })
161
+ // }
162
+ // if (newValue[4].includes(4)) {
163
+ // items.push({
164
+ // id: 'averageMHz',
165
+ // target_object: 'averageMHz',
166
+ // })
167
+ // }
168
+ } else if (
169
+ newValue[0] === 'host' &&
170
+ ['disk', 'network'].includes(newValue[1])
171
+ ) {
172
+ let newItems = []
173
+
174
+ if (newValue[1] === 'network')
175
+ newItems.push({
176
+ id: 'total',
177
+ // target_object: localization.value.common.total.toLowerCase(),
178
+ target_object: 'total',
179
+ })
180
+
181
+ newItems = [...newItems, ...props.currentItems]
182
+
183
+ items = newItems
184
+ } else if (newValue[0] === 'vm' && newValue[1] === 'network') {
185
+ items = [...props.currentItems]
186
+ }
187
+
188
+ bodyItems.value = table.bodyItems(items)
189
+ updateSelectedRow()
190
+ },
191
+ { immediate: true, deep: true }
192
+ )
193
+
194
+ watch(
195
+ selectedRow,
196
+ (newValue) => {
197
+ const selectedItems: string[] = []
198
+
199
+ if (props.type === 'host' && ['disk', 'network'].includes(props.chart)) {
200
+ selectedItems.push(items[newValue]?.target_object)
201
+ } else if (props.type === 'vm' && ['network'].includes(props.chart)) {
202
+ newValue.forEach((key) => {
203
+ const newItem = items[key]?.target_object
204
+ newItem && selectedItems.push(newItem)
205
+ })
206
+ } else
207
+ newValue.forEach((key) => {
208
+ selectedItems.push(items[key].id)
209
+ })
210
+
211
+ let selectedNames = ''
212
+
213
+ if (
214
+ items.length === newValue.length &&
215
+ props.selectedMetricsKeys.length === props.totalMetricItems
216
+ ) {
217
+ selectedNames = '*'
218
+
219
+ if (props.type === 'vm') selectedNames = 'total'
220
+ } else selectedNames = selectedItems.join(', ')
221
+
222
+ /* if (props.type === 'vm' && ['network'].includes(props.chart)) {
223
+ if (
224
+ selectedItems.includes('total') ||
225
+ (!selectedItems.includes('total') &&
226
+ items.length === newValue.length + 1)
227
+ )
228
+ selectedNames = 'total'
229
+ } */
230
+
231
+ if (!props.currentSelectedObjects) emits('select-objects', selectedNames)
232
+ },
233
+ { deep: true }
234
+ )
235
+
236
+ watch(
237
+ () => [props.currentSelectedObjects, bodyItems.value],
238
+ ([selectedObjects, all]) => {
239
+ if (!all.length) return
240
+
241
+ if (props.type === 'host' && props.chart === 'cpu') {
242
+ if (selectedObjects === '*') {
243
+ selectedRow.value = all.map((item) => item[0].id)
244
+ } else {
245
+ const selectedNames = selectedObjects.split(', ')
246
+ const selectedKeys: number[] = []
247
+ all.forEach((item) => {
248
+ if (selectedNames.includes('total') && !selectedKeys.includes(0))
249
+ selectedKeys.push(0)
250
+ if (selectedNames.includes(item[0].text))
251
+ selectedKeys.push(item[0].id)
252
+ })
253
+ selectedRow.value = selectedKeys
254
+ }
255
+ } else if (
256
+ props.type === 'host' &&
257
+ ['disk', 'network'].includes(props.chart)
258
+ ) {
259
+ if (selectedObjects) {
260
+ const selectedId = all.find(
261
+ (item) => item[0].text === selectedObjects
262
+ )?.[0]?.id
263
+ typeof selectedId === 'number' && (selectedRow.value = selectedId)
264
+ }
265
+ }
266
+ },
267
+ { immediate: true }
268
+ )
269
+ </script>
270
+
271
+ <style scoped lang="scss">
272
+ .chart-option-objects-split {
273
+ flex: 1;
274
+
275
+ .chart-options-grid-title {
276
+ display: block;
277
+ margin-bottom: -20px;
278
+ }
279
+ .flex-to-absolute-positioning-container {
280
+ height: 100%;
281
+ max-height: 204px;
282
+ .flex-to-absolute-positioning-container-inner {
283
+ height: inherit;
284
+
285
+ .data-table {
286
+ height: inherit;
287
+
288
+ :deep(.datagrid-outer-wrapper) {
289
+ height: inherit;
290
+ }
291
+ }
292
+ }
293
+ }
294
+ }
295
+ </style>
@@ -1,22 +1,22 @@
1
- export const allowedHostCpuFieldNotObject = [
2
- 'totalMHz',
3
- 'averageMHz',
4
- 'cpu ready',
5
- 'cpu demand',
6
- 'cpu contention avg10',
7
- 'cpu contention avg60',
8
- 'cpu contention avg300',
9
- 'cpu co-stop avg10',
10
- 'cpu co-stop avg60',
11
- 'cpu co-stop avg300',
12
- ]
13
-
14
- export const allowedHostNetworkFieldNotObject = [
15
- 'total link speed',
16
- 'total utilization percent',
17
- ]
18
-
19
- export const allowedHostNetworkFieldBeforeObject = [
20
- '{iface} link speed',
21
- '{iface} utilization percent',
22
- ]
1
+ export const allowedHostCpuFieldNotObject = [
2
+ 'totalMHz',
3
+ 'averageMHz',
4
+ 'cpu ready',
5
+ 'cpu demand',
6
+ 'cpu contention avg10',
7
+ 'cpu contention avg60',
8
+ 'cpu contention avg300',
9
+ 'cpu co-stop avg10',
10
+ 'cpu co-stop avg60',
11
+ 'cpu co-stop avg300',
12
+ ]
13
+
14
+ export const allowedHostNetworkFieldNotObject = [
15
+ 'total link speed',
16
+ 'total utilization percent',
17
+ ]
18
+
19
+ export const allowedHostNetworkFieldBeforeObject = [
20
+ '{iface} link speed',
21
+ '{iface} utilization percent',
22
+ ]