bfg-common 1.4.158 → 1.4.160

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 (48) hide show
  1. package/components/common/mainNavigationPanel/MainNavigationPanelNew.vue +307 -307
  2. package/components/common/monitor/advanced/tools/chartOptionsModal/counters/timespan/object/Object.vue +1 -4
  3. package/components/common/select/input/lib/models/interfaces.ts +1 -0
  4. package/components/common/wizards/vm/common/computeResource/TreeView.vue +3 -6
  5. package/components/common/wizards/vm/common/tooltip/Tooltip.vue +5 -5
  6. package/components/common/wizards/vm/migrate/Migrate.vue +161 -188
  7. package/components/common/wizards/vm/migrate/lib/config/constructDataReady.ts +166 -53
  8. package/components/common/wizards/vm/migrate/lib/config/steps.ts +93 -0
  9. package/components/common/wizards/vm/migrate/lib/models/interfaces.ts +26 -19
  10. package/components/common/wizards/vm/migrate/lib/utils.ts +0 -80
  11. package/components/common/wizards/vm/migrate/lib/validations.ts +57 -0
  12. package/components/common/wizards/vm/migrate/select/computeResource/ComputeResource.vue +18 -52
  13. package/components/common/wizards/vm/migrate/select/computeResource/lib/config/tabsPannel.ts +1 -1
  14. package/components/common/wizards/vm/migrate/select/computeResource/lib/models/interfaces.ts +2 -1
  15. package/components/common/wizards/vm/migrate/select/computeResource/tableView/TableView.vue +9 -18
  16. package/components/common/wizards/vm/migrate/select/computeResource/tableView/lib/config/clusterTable.ts +1 -1
  17. package/components/common/wizards/vm/migrate/select/computeResource/tableView/lib/config/resourcePoolTable.ts +1 -1
  18. package/components/common/wizards/vm/migrate/select/computeResource/tableView/lib/config/vappsTable.ts +20 -18
  19. package/components/common/wizards/vm/migrate/select/network/Network.vue +16 -11
  20. package/components/common/wizards/vm/migrate/select/network/lib/models/interfaces.ts +4 -0
  21. package/components/common/wizards/vm/migrate/select/network/table/network/Network.vue +16 -17
  22. package/components/common/wizards/vm/migrate/select/priority/Priority.vue +2 -16
  23. package/components/common/wizards/vm/migrate/select/storage/Storage.vue +29 -61
  24. package/components/common/wizards/vm/migrate/select/storage/configure/batch/Batch.vue +28 -33
  25. package/components/common/wizards/vm/migrate/select/storage/configure/batch/config/virtualDiskFormat.ts +30 -0
  26. package/components/common/wizards/vm/migrate/select/storage/{table/datastore/Datastore.vue → configure/batch/table/Table.vue} +48 -34
  27. package/components/common/wizards/vm/migrate/select/storage/configure/batch/table/lib/config/datastoreTable.ts +177 -0
  28. package/components/common/wizards/vm/migrate/select/storage/{table/datastore → configure/batch/table}/lib/models/types.ts +2 -2
  29. package/components/common/wizards/vm/migrate/select/storage/configure/disk/Disk.vue +11 -30
  30. package/components/common/wizards/vm/migrate/select/storage/{table/disk/Disk.vue → configure/disk/table/Table.vue} +5 -17
  31. package/components/common/wizards/vm/migrate/select/storage/{table/disk/lib/config/config.ts → configure/disk/table/lib/config/diskTable.ts} +36 -23
  32. package/components/common/wizards/vm/migrate/select/storage/{table/disk → configure/disk/table}/lib/config/tableKeys.ts +1 -1
  33. package/components/common/wizards/vm/migrate/select/storage/{table/disk → configure/disk/table}/lib/models/interfaces.ts +5 -0
  34. package/components/common/wizards/vm/migrate/select/storage/lib/models/interfaces.ts +0 -14
  35. package/components/common/wizards/vm/migrate/select/storage/selectedPerDisk/SelectedPerDisk.vue +14 -22
  36. package/components/common/wizards/vm/migrate/select/targetServer/new/New.vue +111 -144
  37. package/components/common/wizards/vm/migrate/select/targetServer/new/lib/models/interfaces.ts +8 -10
  38. package/components/common/wizards/vm/migrate/select/targetServer/targetServer.vue +11 -1
  39. package/components/common/wizards/vm/migrate/select/type/Type.vue +8 -19
  40. package/package.json +1 -1
  41. package/components/common/wizards/vm/migrate/contentHeading/ContentHeading.vue +0 -106
  42. package/components/common/wizards/vm/migrate/contentHeading/lib/models/interfaces.ts +0 -7
  43. package/components/common/wizards/vm/migrate/select/storage/diskFormat/DiskFormat.vue +0 -69
  44. package/components/common/wizards/vm/migrate/select/storage/diskFormat/lib/config/formatOptions.ts +0 -26
  45. package/components/common/wizards/vm/migrate/select/storage/table/datastore/lib/config/config.ts +0 -179
  46. package/components/common/wizards/vm/migrate/select/targetServer/new/lib/config/defaultForm.ts +0 -36
  47. /package/components/common/wizards/vm/migrate/select/storage/{table/disk → configure/disk/table}/lib/models/types.ts +0 -0
  48. /package/components/common/wizards/vm/migrate/{lib → select/type/lib}/models/types.ts +0 -0
@@ -1,307 +1,307 @@
1
- <template>
2
- <div
3
- :class="['main-navigation-panel', { pinned: menuPined }]"
4
- @mouseenter="mainMenuHovered = true"
5
- @mouseleave="mainMenuHovered = false"
6
- >
7
- <div
8
- v-show="props.showMenu"
9
- :class="['nav-context', { collapsed: props.menuCollapsed }]"
10
- >
11
- <div class="tools">
12
- <div v-show="!props.menuCollapsed" class="pin-wrap">
13
- <input
14
- id="pin-menu-control"
15
- v-model="menuPined"
16
- data-id="navigation-panel-pin-menu-control"
17
- type="checkbox"
18
- :disabled="props.disabledPin"
19
- @change="emits('change-menu-pin')"
20
- />
21
- <label
22
- for="pin-menu-control"
23
- class="pointer flex-align-center pin-unpin-label"
24
- >
25
- <ui-icon-main-navigation-panel
26
- :name="menuPined ? 'unpin' : 'pin'"
27
- width="16px"
28
- height="16px"
29
- />
30
- <span v-if="!menuPined" class="pin-unpin-text">{{
31
- localization.common.pinMenu
32
- }}</span>
33
- <span v-else class="pin-unpin-text">{{
34
- localization.common.unpinMenu
35
- }}</span>
36
- </label>
37
- </div>
38
-
39
- <button
40
- v-if="menuPined"
41
- id="nav-trigger"
42
- data-id="navigation-panel-trigger"
43
- class="nav-trigger"
44
- @click="emits('collapse-menu')"
45
- >
46
- <span class="nav-trigger-icon flex">
47
- <ui-icon-main-navigation-panel
48
- name="doubleArrow"
49
- width="16px"
50
- height="16px"
51
- />
52
- </span>
53
- </button>
54
- </div>
55
-
56
- <div class="nav-content">
57
- <template v-for="(item, key) in props.navigationItems" :key="key">
58
- <ui-tooltip
59
- v-for="(item2, key2) in item"
60
- :id="`tooltip-nav-${key}-${key2}`"
61
- :key="item2.id"
62
- :test-id="`tooltip-nav-${key}-${key2}`"
63
- size="md"
64
- menu
65
- >
66
- <template #target>
67
- <div
68
- :id="`tooltip-nav-${key}-${key2}`"
69
- class="popped tooltip inline-block content-toggle-tooltip"
70
- >
71
- <nuxt-link
72
- :id="`nav-item-${key}-${key2}`"
73
- :data-id="item2.testId"
74
- class="nav-link"
75
- active-class="active"
76
- :to="item2.to"
77
- @click="emits('hide-main-menu')"
78
- >
79
- <ui-icon-main-navigation-panel
80
- :name="item2.iconName"
81
- width="20px"
82
- height="20px"
83
- />
84
- <span class="nav-text">{{ item2.title }}</span>
85
- </nuxt-link>
86
- </div>
87
- </template>
88
- <template #content>
89
- {{ item2.title }}
90
- </template>
91
- </ui-tooltip>
92
- <div
93
- v-show="key !== props.navigationItems.length - 1"
94
- class="nav-divider"
95
- />
96
- </template>
97
- </div>
98
- </div>
99
- </div>
100
- </template>
101
-
102
- <script setup lang="ts">
103
- import type { UI_I_Localization } from '~/lib/models/interfaces'
104
- import type { UI_I_NavigationItem } from '~/components/common/mainNavigationPanel/lib/models/interfaces'
105
- import type { UI_T_ParentStatus } from '~/components/common/mainNavigationPanel/lib/models/types'
106
-
107
- const props = defineProps<{
108
- mainMenuStatus: boolean
109
- navigationItems: UI_I_NavigationItem[][]
110
- parentStatus: UI_T_ParentStatus
111
- disabledPin: boolean
112
- menuCollapsed: boolean
113
- showMenu: boolean
114
- }>()
115
- const emits = defineEmits<{
116
- (event: 'toggle', value: boolean): void
117
- (event: 'collapse-menu'): void
118
- (event: 'change-menu-pin'): void
119
- (event: 'hide-main-menu'): void
120
- }>()
121
-
122
- const mainMenuHovered = defineModel<boolean>('mainMenuHovered', {
123
- required: true,
124
- })
125
- const menuPined = defineModel<boolean>('menuPined', {
126
- required: true,
127
- })
128
-
129
- const localization = computed<UI_I_Localization>(() => useLocal())
130
- </script>
131
-
132
- <style scoped lang="scss">
133
- .main-navigation-panel {
134
- display: flex;
135
- flex: 1 1 auto;
136
-
137
- &.pinned {
138
- .nav-context {
139
- position: relative;
140
- }
141
- }
142
- &:not(.pinned) {
143
- .nav-context {
144
- backdrop-filter: blur(12px);
145
- box-shadow: 0 0 8px 0 rgba(0, 0, 0, 0.08);
146
- }
147
- }
148
-
149
- .nav-context {
150
- position: absolute;
151
- z-index: 1001;
152
- height: 100%;
153
- display: flex;
154
- flex-direction: column;
155
- background-color: var(--vertical-nav-bg-color);
156
-
157
- &.collapsed {
158
- .tools {
159
- justify-content: center;
160
-
161
- button {
162
- transform: rotate(180deg);
163
- }
164
- }
165
-
166
- .nav-link {
167
- .nav-text {
168
- display: none;
169
- }
170
- }
171
- }
172
- &:not(.collapsed) {
173
- :deep(.tooltip-container-hover) {
174
- display: none;
175
- }
176
- }
177
-
178
- .tools {
179
- display: flex;
180
- align-items: center;
181
- justify-content: space-between;
182
- padding: 12px;
183
-
184
- .pin-wrap {
185
- padding: 4px;
186
- border-radius: 4px;
187
-
188
- &:hover {
189
- //background-color: var(--vertical-nav-hover-bg-color);
190
-
191
- .pin-unpin-label {
192
- color: var(--pin-unpin-label-hover-color);
193
- }
194
- }
195
-
196
- input {
197
- display: none;
198
- }
199
- .pin-unpin-label {
200
- color: var(--vertical-nav-item-color);
201
- font-size: 12px;
202
- font-weight: 500;
203
-
204
- .pin-unpin-text {
205
- font-size: 12px;
206
- font-weight: 500;
207
- margin-left: 6px;
208
- }
209
- }
210
- }
211
-
212
- #nav-trigger {
213
- padding: 4px;
214
- margin: 0;
215
- border-radius: 4px;
216
- border: none;
217
- background-color: transparent;
218
- cursor: pointer;
219
- color: var(--vertical-nav-item-color);
220
-
221
- &:hover {
222
- //background-color: var(--vertical-nav-hover-bg-color);
223
- color: var(--pin-unpin-label-hover-color);
224
- }
225
- }
226
- }
227
-
228
- .nav-content {
229
- overflow: auto;
230
- padding: 0 12px 12px;
231
- height: inherit;
232
-
233
- &::-webkit-scrollbar-thumb {
234
- background: var(--nav-content-scrollbar-thumb-bg);
235
- }
236
-
237
- .content-toggle-tooltip {
238
- width: 100%;
239
-
240
- .nav-link {
241
- display: flex;
242
- align-items: center;
243
- padding: 10px 12px;
244
- border-radius: 8px;
245
- color: var(--vertical-nav-item-color);
246
- font-size: 12px;
247
- font-weight: 500;
248
- white-space: nowrap;
249
- text-decoration: none;
250
-
251
- &.active {
252
- background-color: var(--vertical-active-nav-bg-color);
253
- color: var(--vertical-active-nav-color);
254
-
255
- .nav-text {
256
- color: var(--vertical-active-nav-color);
257
- }
258
- }
259
-
260
- &:not(.active):hover {
261
- background-color: var(--vertical-nav-hover-bg-color);
262
- }
263
-
264
- .nav-text {
265
- margin-left: 12px;
266
- font-size: 14px;
267
- font-weight: 400;
268
- }
269
- }
270
- .nav-link + .nav-link {
271
- margin-top: 4px;
272
- }
273
- }
274
-
275
- .nav-divider {
276
- width: 100%;
277
- height: 1px;
278
- background-color: var(--nav-content-divider-bg);
279
- margin: 12px 0;
280
- }
281
- }
282
- }
283
- }
284
- </style>
285
-
286
- <style>
287
- :root.is-new-view {
288
- --vertical-nav-bg-color: rgba(233, 235, 237, 0.92);
289
- --vertical-nav-item-color: #4d5d69;
290
- --vertical-nav-hover-bg-color: rgba(211, 214, 218, 0.48);
291
- --vertical-active-nav-bg-color: #213444;
292
- --vertical-active-nav-color: #ffffff;
293
- --pin-unpin-label-hover-color: #008fd6;
294
- --nav-content-scrollbar-thumb-bg: #9da6ad;
295
- --nav-content-divider-bg: #d3d6da;
296
- }
297
- :root.is-new-view.dark-theme {
298
- --vertical-nav-bg-color: rgba(51, 68, 83, 0.92);
299
- --vertical-nav-item-color: #e9eaec;
300
- --vertical-nav-hover-bg-color: rgba(233, 234, 236, 0.12);
301
- --vertical-active-nav-bg-color: rgba(233, 235, 237, 0.96);
302
- --vertical-active-nav-color: #213444;
303
- --pin-unpin-label-hover-color: #2ba2de;
304
- --nav-content-scrollbar-thumb-bg: rgba(157, 166, 173, 0.32);
305
- --nav-content-divider-bg: rgba(211, 214, 218, 0.12);
306
- }
307
- </style>
1
+ <template>
2
+ <div
3
+ :class="['main-navigation-panel', { pinned: menuPined }]"
4
+ @mouseenter="mainMenuHovered = true"
5
+ @mouseleave="mainMenuHovered = false"
6
+ >
7
+ <div
8
+ v-show="props.showMenu"
9
+ :class="['nav-context', { collapsed: props.menuCollapsed }]"
10
+ >
11
+ <div class="tools">
12
+ <div v-show="!props.menuCollapsed" class="pin-wrap">
13
+ <input
14
+ id="pin-menu-control"
15
+ v-model="menuPined"
16
+ data-id="navigation-panel-pin-menu-control"
17
+ type="checkbox"
18
+ :disabled="props.disabledPin"
19
+ @change="emits('change-menu-pin')"
20
+ />
21
+ <label
22
+ for="pin-menu-control"
23
+ class="pointer flex-align-center pin-unpin-label"
24
+ >
25
+ <ui-icon-main-navigation-panel
26
+ :name="menuPined ? 'unpin' : 'pin'"
27
+ width="16px"
28
+ height="16px"
29
+ />
30
+ <span v-if="!menuPined" class="pin-unpin-text">{{
31
+ localization.common.pinMenu
32
+ }}</span>
33
+ <span v-else class="pin-unpin-text">{{
34
+ localization.common.unpinMenu
35
+ }}</span>
36
+ </label>
37
+ </div>
38
+
39
+ <button
40
+ v-if="menuPined"
41
+ id="nav-trigger"
42
+ data-id="navigation-panel-trigger"
43
+ class="nav-trigger"
44
+ @click="emits('collapse-menu')"
45
+ >
46
+ <span class="nav-trigger-icon flex">
47
+ <ui-icon-main-navigation-panel
48
+ name="doubleArrow"
49
+ width="16px"
50
+ height="16px"
51
+ />
52
+ </span>
53
+ </button>
54
+ </div>
55
+
56
+ <div class="nav-content">
57
+ <template v-for="(item, key) in props.navigationItems" :key="key">
58
+ <ui-tooltip
59
+ v-for="(item2, key2) in item"
60
+ :id="`tooltip-nav-${key}-${key2}`"
61
+ :key="item2.id"
62
+ :test-id="`tooltip-nav-${key}-${key2}`"
63
+ size="md"
64
+ menu
65
+ >
66
+ <template #target>
67
+ <div
68
+ :id="`tooltip-nav-${key}-${key2}`"
69
+ class="popped tooltip inline-block content-toggle-tooltip"
70
+ >
71
+ <nuxt-link
72
+ :id="`nav-item-${key}-${key2}`"
73
+ :data-id="item2.testId"
74
+ class="nav-link"
75
+ active-class="active"
76
+ :to="item2.to"
77
+ @click="emits('hide-main-menu')"
78
+ >
79
+ <ui-icon-main-navigation-panel
80
+ :name="item2.iconName"
81
+ width="20px"
82
+ height="20px"
83
+ />
84
+ <span class="nav-text">{{ item2.title }}</span>
85
+ </nuxt-link>
86
+ </div>
87
+ </template>
88
+ <template #content>
89
+ {{ item2.title }}
90
+ </template>
91
+ </ui-tooltip>
92
+ <div
93
+ v-show="key !== props.navigationItems.length - 1"
94
+ class="nav-divider"
95
+ />
96
+ </template>
97
+ </div>
98
+ </div>
99
+ </div>
100
+ </template>
101
+
102
+ <script setup lang="ts">
103
+ import type { UI_I_Localization } from '~/lib/models/interfaces'
104
+ import type { UI_I_NavigationItem } from '~/components/common/mainNavigationPanel/lib/models/interfaces'
105
+ import type { UI_T_ParentStatus } from '~/components/common/mainNavigationPanel/lib/models/types'
106
+
107
+ const props = defineProps<{
108
+ mainMenuStatus: boolean
109
+ navigationItems: UI_I_NavigationItem[][]
110
+ parentStatus: UI_T_ParentStatus
111
+ disabledPin: boolean
112
+ menuCollapsed: boolean
113
+ showMenu: boolean
114
+ }>()
115
+ const emits = defineEmits<{
116
+ (event: 'toggle', value: boolean): void
117
+ (event: 'collapse-menu'): void
118
+ (event: 'change-menu-pin'): void
119
+ (event: 'hide-main-menu'): void
120
+ }>()
121
+
122
+ const mainMenuHovered = defineModel<boolean>('mainMenuHovered', {
123
+ required: true,
124
+ })
125
+ const menuPined = defineModel<boolean>('menuPined', {
126
+ required: true,
127
+ })
128
+
129
+ const localization = computed<UI_I_Localization>(() => useLocal())
130
+ </script>
131
+
132
+ <style scoped lang="scss">
133
+ .main-navigation-panel {
134
+ display: flex;
135
+ flex: 1 1 auto;
136
+
137
+ &.pinned {
138
+ .nav-context {
139
+ position: relative;
140
+ }
141
+ }
142
+ &:not(.pinned) {
143
+ .nav-context {
144
+ backdrop-filter: blur(12px);
145
+ box-shadow: 0 0 8px 0 rgba(0, 0, 0, 0.08);
146
+ }
147
+ }
148
+
149
+ .nav-context {
150
+ position: absolute;
151
+ z-index: 1001;
152
+ height: 100%;
153
+ display: flex;
154
+ flex-direction: column;
155
+ background-color: var(--vertical-nav-bg-color);
156
+
157
+ &.collapsed {
158
+ .tools {
159
+ justify-content: center;
160
+
161
+ button {
162
+ transform: rotate(180deg);
163
+ }
164
+ }
165
+
166
+ .nav-link {
167
+ .nav-text {
168
+ display: none;
169
+ }
170
+ }
171
+ }
172
+ &:not(.collapsed) {
173
+ :deep(.tooltip-container-hover) {
174
+ display: none;
175
+ }
176
+ }
177
+
178
+ .tools {
179
+ display: flex;
180
+ align-items: center;
181
+ justify-content: space-between;
182
+ padding: 12px;
183
+
184
+ .pin-wrap {
185
+ padding: 4px;
186
+ border-radius: 4px;
187
+
188
+ &:hover {
189
+ //background-color: var(--vertical-nav-hover-bg-color);
190
+
191
+ .pin-unpin-label {
192
+ color: var(--pin-unpin-label-hover-color);
193
+ }
194
+ }
195
+
196
+ input {
197
+ display: none;
198
+ }
199
+ .pin-unpin-label {
200
+ color: var(--vertical-nav-item-color);
201
+ font-size: 12px;
202
+ font-weight: 500;
203
+
204
+ .pin-unpin-text {
205
+ font-size: 12px;
206
+ font-weight: 500;
207
+ margin-left: 6px;
208
+ }
209
+ }
210
+ }
211
+
212
+ #nav-trigger {
213
+ padding: 4px;
214
+ margin: 0;
215
+ border-radius: 4px;
216
+ border: none;
217
+ background-color: transparent;
218
+ cursor: pointer;
219
+ color: var(--vertical-nav-item-color);
220
+
221
+ &:hover {
222
+ //background-color: var(--vertical-nav-hover-bg-color);
223
+ color: var(--pin-unpin-label-hover-color);
224
+ }
225
+ }
226
+ }
227
+
228
+ .nav-content {
229
+ overflow: auto;
230
+ padding: 0 12px 12px;
231
+ height: inherit;
232
+
233
+ &::-webkit-scrollbar-thumb {
234
+ background: var(--nav-content-scrollbar-thumb-bg);
235
+ }
236
+
237
+ .content-toggle-tooltip {
238
+ width: 100%;
239
+
240
+ .nav-link {
241
+ display: flex;
242
+ align-items: center;
243
+ padding: 10px 12px;
244
+ border-radius: 8px;
245
+ color: var(--vertical-nav-item-color);
246
+ font-size: 12px;
247
+ font-weight: 500;
248
+ white-space: nowrap;
249
+ text-decoration: none;
250
+
251
+ &.active {
252
+ background-color: var(--vertical-active-nav-bg-color);
253
+ color: var(--vertical-active-nav-color);
254
+
255
+ .nav-text {
256
+ color: var(--vertical-active-nav-color);
257
+ }
258
+ }
259
+
260
+ &:not(.active):hover {
261
+ background-color: var(--vertical-nav-hover-bg-color);
262
+ }
263
+
264
+ .nav-text {
265
+ margin-left: 12px;
266
+ font-size: 14px;
267
+ font-weight: 400;
268
+ }
269
+ }
270
+ .nav-link + .nav-link {
271
+ margin-top: 4px;
272
+ }
273
+ }
274
+
275
+ .nav-divider {
276
+ width: 100%;
277
+ height: 1px;
278
+ background-color: var(--nav-content-divider-bg);
279
+ margin: 12px 0;
280
+ }
281
+ }
282
+ }
283
+ }
284
+ </style>
285
+
286
+ <style>
287
+ :root.is-new-view {
288
+ --vertical-nav-bg-color: rgba(233, 235, 237, 0.92);
289
+ --vertical-nav-item-color: #4d5d69;
290
+ --vertical-nav-hover-bg-color: rgba(211, 214, 218, 0.48);
291
+ --vertical-active-nav-bg-color: #213444;
292
+ --vertical-active-nav-color: #ffffff;
293
+ --pin-unpin-label-hover-color: #008fd6;
294
+ --nav-content-scrollbar-thumb-bg: #9da6ad;
295
+ --nav-content-divider-bg: #d3d6da;
296
+ }
297
+ :root.is-new-view.dark-theme {
298
+ --vertical-nav-bg-color: rgba(51, 68, 83, 0.92);
299
+ --vertical-nav-item-color: #e9eaec;
300
+ --vertical-nav-hover-bg-color: rgba(233, 234, 236, 0.12);
301
+ --vertical-active-nav-bg-color: rgba(233, 235, 237, 0.96);
302
+ --vertical-active-nav-color: #213444;
303
+ --pin-unpin-label-hover-color: #2ba2de;
304
+ --nav-content-scrollbar-thumb-bg: rgba(157, 166, 173, 0.32);
305
+ --nav-content-divider-bg: rgba(211, 214, 218, 0.12);
306
+ }
307
+ </style>
@@ -148,10 +148,7 @@ watch(
148
148
  target_object: 'averageMHz',
149
149
  })
150
150
  }
151
- } else if (
152
- newValue[0] === 'host' &&
153
- ['disk', 'network'].includes(newValue[1])
154
- ) {
151
+ } else if (newValue[0] === 'host' && ['network'].includes(newValue[1])) {
155
152
  let newItems = [
156
153
  {
157
154
  id: 'total',
@@ -2,4 +2,5 @@ export interface UI_I_SelectInputItem {
2
2
  label: string
3
3
  value: string | number
4
4
  disabled?: boolean
5
+ testId?: string
5
6
  }
@@ -2,9 +2,9 @@
2
2
  <div class="tree-view">
3
3
  <atoms-loader-pre-loader
4
4
  v-show="loading"
5
+ show
5
6
  id="loader"
6
7
  class="absolute-center tree-view__loading"
7
- :show="true"
8
8
  />
9
9
  <common-recursion-tree
10
10
  :nodes="props.computeResourceTree"
@@ -20,19 +20,16 @@
20
20
  import type { UI_I_TreeNode } from '~/components/common/recursionTree/lib/models/interfaces'
21
21
 
22
22
  const props = defineProps<{
23
- modelValue: UI_I_TreeNode | null
24
23
  computeResourceTree: UI_I_TreeNode[]
25
24
  }>()
26
-
25
+ const modelNode = defineModel<UI_I_TreeNode>()
27
26
  const emits = defineEmits<{
28
- (event: 'update:modelValue', value: UI_I_TreeNode): void
29
27
  (
30
28
  event: 'get-compute-resource-tree',
31
29
  value: { id: string | number; cb: () => void }
32
30
  ): void
33
31
  (event: 'show-compute-resource-tree', value: UI_I_TreeNode): void
34
32
  (event: 'select-compute-resource-tree', value: UI_I_TreeNode): void
35
- (event: 'clear-compute-resource-tree'): void
36
33
  }>()
37
34
 
38
35
  const loading = ref<boolean>(false)
@@ -42,7 +39,7 @@ const onShowNodes = (event: any): void => {
42
39
  const onSelectNode = (node: UI_I_TreeNode): void => {
43
40
  emits('select-compute-resource-tree', node)
44
41
 
45
- emits('update:modelValue', node)
42
+ modelNode.value = node
46
43
  }
47
44
  </script>
48
45