bfg-common 1.2.92 → 1.2.94
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.
- package/assets/localization/local_be.json +3 -1
- package/assets/localization/local_hy.json +3 -1
- package/assets/localization/local_kk.json +3 -1
- package/assets/localization/local_ru.json +3 -1
- package/assets/localization/local_zh.json +3 -1
- package/components/common/browse/Browse.vue +1 -1
- package/components/common/context/Context.vue +5 -5
- package/components/common/diagramMain/DiagramMain.vue +2 -1
- package/components/common/diagramMain/Header.vue +79 -53
- package/components/common/diagramMain/port/Port.vue +0 -7
- package/components/common/diagramMain/switch/Switch.vue +11 -0
- package/components/common/diagramMain/switch/SwitchSelected.vue +6 -0
- package/components/common/feedback/Buttons.vue +1 -1
- package/components/common/feedback/Message.vue +10 -10
- package/components/common/modals/Rename.vue +1 -1
- package/components/common/monitor/advanced/tools/Tools.vue +2 -2
- package/components/common/monitor/advanced/tools/chartOptionsModal/counters/table/Table.vue +2 -2
- package/components/common/monitor/advanced/tools/chartOptionsModal/counters/timespan/object/Object.vue +2 -2
- package/components/common/monitor/overview/Overview.vue +1 -1
- package/components/common/monitor/overview/filters/customIntervalModal/CustomIntervalModal.vue +1 -1
- package/components/common/perPage/PerPage.vue +1 -1
- package/components/common/select/button/ButtonDropdown.vue +2 -2
- package/components/common/spiceConsole/Drawer.vue +3 -3
- package/components/common/spiceConsole/SpiceConsole.vue +8 -12
- package/components/common/split/horizontal/Horizontal.vue +12 -12
- package/components/common/split/vertical/Vertical.vue +8 -8
- package/components/common/tools/Actions.vue +1 -1
- package/components/common/vm/actions/common/config/capabilities.ts +5 -4
- package/components/common/vm/actions/common/customizeHardware/virtualHardware/cpu/CpuHotPlug.vue +1 -1
- package/components/common/vm/actions/common/customizeHardware/virtualHardware/cpu/Iommu.vue +3 -1
- package/components/common/vm/actions/common/customizeHardware/virtualHardware/cpu/Sa.vue +3 -1
- package/components/common/vm/actions/common/customizeHardware/virtualHardware/cpu/shares/Shares.vue +1 -1
- package/components/common/vm/actions/common/customizeHardware/virtualHardware/memory/MemoryHotPlug.vue +1 -1
- package/components/common/vm/actions/common/customizeHardware/virtualHardware/newHardDisk/Location.vue +1 -1
- package/components/common/vm/actions/common/customizeHardware/virtualHardware/newNetwork/Location.vue +2 -2
- package/components/common/vm/actions/common/customizeHardware/virtualHardware/newNetwork/NewNetwork.vue +5 -5
- package/components/common/vm/actions/common/customizeHardware/virtualHardware/newUsbController/NewUsbController.vue +2 -1
- package/components/common/vm/actions/common/customizeHardware/virtualHardware/videoCard/TotalVideoMemory.vue +2 -2
- package/components/common/wizards/datastore/add/nfs/Nfs.vue +2 -2
- package/components/common/wizards/datastore/add/nfs/accessibility/tablesView/TablesView.vue +10 -10
- package/components/common/wizards/datastore/add/nfs/configuration/Configuration.vue +3 -3
- package/components/common/wizards/datastore/add/nfs/configuration/serversList/ServersList.vue +3 -3
- package/components/common/wizards/datastore/add/readyComplete/ReadyComplete.vue +2 -1
- package/components/common/wizards/datastore/add/sharedStorm/deviceSelection/DeviceSelection.vue +6 -6
- package/components/common/wizards/datastore/add/sharedStorm/deviceSelection/hostTable/HostTable.vue +8 -8
- package/components/common/wizards/datastore/add/sharedStorm/partitionConfiguration/PartitionConfiguration.vue +5 -5
- package/components/common/wizards/datastore/add/sharedStorm/partitionConfiguration/sizeGraphic/sizeGraphic.vue +1 -1
- package/package.json +1 -1
|
@@ -2097,5 +2097,7 @@
|
|
|
2097
2097
|
"diskGroup": "Група дыскаў",
|
|
2098
2098
|
"file": "Файл",
|
|
2099
2099
|
"diskFormat": "Фармат дыска",
|
|
2100
|
-
"replicationGroup": "Група рэплікацыі"
|
|
2100
|
+
"replicationGroup": "Група рэплікацыі",
|
|
2101
|
+
"allSelectedObjects": "Усе выбраныя аб'екты",
|
|
2102
|
+
"selectVirtualDiskFormat": "Выберыце фармат віртуальнага дыска"
|
|
2101
2103
|
}
|
|
@@ -2100,5 +2100,7 @@
|
|
|
2100
2100
|
"diskGroup": "Սկավառակի խումբ",
|
|
2101
2101
|
"file": "Ֆայլ",
|
|
2102
2102
|
"diskFormat": "Սկավառակի ձևաչափ",
|
|
2103
|
-
"replicationGroup": "Replication Group"
|
|
2103
|
+
"replicationGroup": "Replication Group",
|
|
2104
|
+
"allSelectedObjects": "Բոլոր ընտրված օբյեկտները",
|
|
2105
|
+
"selectVirtualDiskFormat": "Ընտրեք վիրտուալ սկավառակի ձևաչափը"
|
|
2104
2106
|
}
|
|
@@ -2100,5 +2100,7 @@
|
|
|
2100
2100
|
"diskGroup": "Диск тобы",
|
|
2101
2101
|
"file": "Файл",
|
|
2102
2102
|
"diskFormat": "Диск пішімі",
|
|
2103
|
-
"replicationGroup": "Репликация тобы"
|
|
2103
|
+
"replicationGroup": "Репликация тобы",
|
|
2104
|
+
"allSelectedObjects": "Барлық таңдалған нысандар",
|
|
2105
|
+
"selectVirtualDiskFormat": "Виртуалды диск пішімін таңдаңыз"
|
|
2104
2106
|
}
|
|
@@ -2100,5 +2100,7 @@
|
|
|
2100
2100
|
"diskGroup": "Группа дисков",
|
|
2101
2101
|
"file": "Файл",
|
|
2102
2102
|
"diskFormat": "Формат диска",
|
|
2103
|
-
"replicationGroup": "Группа репликации"
|
|
2103
|
+
"replicationGroup": "Группа репликации",
|
|
2104
|
+
"allSelectedObjects": "Все выбранные объекты",
|
|
2105
|
+
"selectVirtualDiskFormat": "Выберите формат виртуального диска"
|
|
2104
2106
|
}
|
|
@@ -126,7 +126,7 @@ const blocksWidth = ref<UI_T_BlocksWidth>([272, 272, 256])
|
|
|
126
126
|
const onChangeWidths = (width: number, index: number) => {
|
|
127
127
|
blocksWidth.value[index] = width
|
|
128
128
|
}
|
|
129
|
-
const onSelectFile = (file: any) => {
|
|
129
|
+
const onSelectFile = (file: any): void => {
|
|
130
130
|
emits('update:selected-file', file)
|
|
131
131
|
}
|
|
132
132
|
const onSelectNode = (node: any): void => {
|
|
@@ -32,7 +32,7 @@ const selectItem = (item: UI_I_ContextMenuItem): void => {
|
|
|
32
32
|
emits('select-item', item)
|
|
33
33
|
}
|
|
34
34
|
|
|
35
|
-
const windowMousedown = () => {
|
|
35
|
+
const windowMousedown = (): void => {
|
|
36
36
|
emits('hide')
|
|
37
37
|
}
|
|
38
38
|
onMounted(() => {
|
|
@@ -42,8 +42,8 @@ onUnmounted(() => {
|
|
|
42
42
|
window.removeEventListener('mousedown', windowMousedown)
|
|
43
43
|
})
|
|
44
44
|
|
|
45
|
-
const currentContextMenuY = ref('')
|
|
46
|
-
const currentContextMenuX = ref('')
|
|
45
|
+
const currentContextMenuY = ref<string>('')
|
|
46
|
+
const currentContextMenuX = ref<string>('')
|
|
47
47
|
const setCurrentPositionsPopup = (): void => {
|
|
48
48
|
const contextMenuY = props.contextMenu.y
|
|
49
49
|
const contextMenuX = props.contextMenu.x
|
|
@@ -72,8 +72,8 @@ const setCurrentPositionsPopup = (): void => {
|
|
|
72
72
|
|
|
73
73
|
watch(
|
|
74
74
|
() => props.contextMenu.y,
|
|
75
|
-
(
|
|
76
|
-
if (!
|
|
75
|
+
(newValue) => {
|
|
76
|
+
if (!newValue) return
|
|
77
77
|
|
|
78
78
|
setTimeout(() => {
|
|
79
79
|
setCurrentPositionsPopup()
|
|
@@ -563,8 +563,9 @@ const onRemoveNetwork = (id: string) => {
|
|
|
563
563
|
isShowRemoveModalLoader.value = true
|
|
564
564
|
emits('remove-network', { id, hideModalCB: onHideNetworkRemoveModal })
|
|
565
565
|
}
|
|
566
|
-
const onRemoveSwitch = (
|
|
566
|
+
const onRemoveSwitch = (label: string) => {
|
|
567
567
|
isShowRemoveModalLoader.value = true
|
|
568
|
+
const id = props.networksList.find((network) => network.title === label)!.id
|
|
568
569
|
emits('remove-switch', { id, hideModalCB: onHideSwitchRemoveModal })
|
|
569
570
|
}
|
|
570
571
|
const onRemovePort = (id: string) => {
|
|
@@ -1,59 +1,59 @@
|
|
|
1
1
|
<template>
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
2
|
+
<template v-if="!props.inPortlet">
|
|
3
|
+
<div class="diagram-header">
|
|
4
|
+
<div class="diagram-header-left">
|
|
5
|
+
<atoms-the-icon
|
|
6
|
+
name="angle"
|
|
7
|
+
:class="[
|
|
8
8
|
'diagram-header__arrow-icon',
|
|
9
9
|
{
|
|
10
10
|
open: props.isShowDiagram,
|
|
11
11
|
},
|
|
12
12
|
]"
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
13
|
+
@click="onToggleDiagram"
|
|
14
|
+
/>
|
|
15
|
+
<a>
|
|
16
16
|
<span>
|
|
17
17
|
{{ localization.standardSwitch }}:
|
|
18
18
|
{{ props.diagramName }}
|
|
19
19
|
</span>
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
20
|
+
</a>
|
|
21
|
+
</div>
|
|
22
|
+
<div v-if="props.isShowDiagram" class="diagram-header__btn-container">
|
|
23
|
+
<span class="vertical-separator"></span>
|
|
24
|
+
<button
|
|
25
|
+
id="add-networking-button"
|
|
26
|
+
type="button"
|
|
27
|
+
@click="onShowModal('add-networking')"
|
|
28
|
+
>
|
|
29
|
+
{{ localization.addNetworking }}
|
|
30
|
+
</button>
|
|
31
|
+
<button
|
|
32
|
+
id="switch-edit-button"
|
|
33
|
+
type="button"
|
|
34
|
+
@click="onShowModal('switch-edit')"
|
|
35
|
+
>
|
|
36
|
+
{{ localization.edit }}
|
|
37
|
+
</button>
|
|
38
|
+
<button
|
|
39
|
+
id="switch-manage-physical-adapters-button"
|
|
40
|
+
type="button"
|
|
41
|
+
@click="onShowModal('switch-manage-physical-adapters')"
|
|
42
|
+
>
|
|
43
|
+
{{ localization.managePhysicalAdapters }}
|
|
44
|
+
</button>
|
|
45
|
+
<div style="position: relative; transform: translate(62px, -11px)">
|
|
46
|
+
<atoms-collapse-nav
|
|
47
|
+
popup-class="diagram-main-actions__popup"
|
|
48
|
+
:close-after-click="true"
|
|
49
|
+
:items="switchMainNavigation"
|
|
50
|
+
@change="onShowModal"
|
|
51
|
+
/>
|
|
52
|
+
</div>
|
|
53
|
+
</div>
|
|
52
54
|
</div>
|
|
53
|
-
|
|
54
|
-
</
|
|
55
|
-
<hr class="horizontal-separator" />
|
|
56
|
-
</template>
|
|
55
|
+
<hr class="horizontal-separator" />
|
|
56
|
+
</template>
|
|
57
57
|
</template>
|
|
58
58
|
|
|
59
59
|
<script setup lang="ts">
|
|
@@ -62,20 +62,20 @@ import { UI_I_NavigationItem } from '~/components/common/diagramMain/models/inte
|
|
|
62
62
|
import { switchMainNavigationFunc } from '~/components/common/diagramMain/modals/config'
|
|
63
63
|
|
|
64
64
|
const props = defineProps<{
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
65
|
+
inPortlet: boolean
|
|
66
|
+
isShowDiagram: boolean
|
|
67
|
+
diagramName: string
|
|
68
68
|
}>()
|
|
69
69
|
|
|
70
70
|
const emits = defineEmits<{
|
|
71
|
-
|
|
72
|
-
|
|
71
|
+
(event: 'toggle-diagram'): void
|
|
72
|
+
(event: 'show-modal', modalName: string): void
|
|
73
73
|
}>()
|
|
74
74
|
|
|
75
75
|
const localization = computed<UI_I_Localization>(() => useLocal())
|
|
76
76
|
|
|
77
77
|
const switchMainNavigation = computed<UI_I_NavigationItem[]>(() =>
|
|
78
|
-
|
|
78
|
+
switchMainNavigationFunc(localization.value)
|
|
79
79
|
)
|
|
80
80
|
|
|
81
81
|
const onToggleDiagram = () => emits('toggle-diagram')
|
|
@@ -84,6 +84,32 @@ const onShowModal = (modalName: string) => emits('show-modal', modalName)
|
|
|
84
84
|
</script>
|
|
85
85
|
|
|
86
86
|
<style scoped lang="scss">
|
|
87
|
+
:root.dark-theme {
|
|
88
|
+
.diagram-header {
|
|
89
|
+
&-left {
|
|
90
|
+
a {
|
|
91
|
+
span {
|
|
92
|
+
color: #79c6e6;
|
|
93
|
+
|
|
94
|
+
&:hover {
|
|
95
|
+
color: #49afd9;
|
|
96
|
+
}
|
|
97
|
+
}
|
|
98
|
+
}
|
|
99
|
+
}
|
|
100
|
+
|
|
101
|
+
&__btn-container {
|
|
102
|
+
button {
|
|
103
|
+
color: #89cbdf;
|
|
104
|
+
|
|
105
|
+
&:hover {
|
|
106
|
+
color: #57c8ea;
|
|
107
|
+
}
|
|
108
|
+
}
|
|
109
|
+
}
|
|
110
|
+
}
|
|
111
|
+
}
|
|
112
|
+
|
|
87
113
|
.diagram-header {
|
|
88
114
|
display: flex;
|
|
89
115
|
padding-left: 8px;
|
|
@@ -101,7 +127,7 @@ const onShowModal = (modalName: string) => emits('show-modal', modalName)
|
|
|
101
127
|
&-left {
|
|
102
128
|
display: flex;
|
|
103
129
|
flex-wrap: nowrap;
|
|
104
|
-
color: #
|
|
130
|
+
color: #49afd9;
|
|
105
131
|
}
|
|
106
132
|
|
|
107
133
|
&__arrow-icon {
|
|
@@ -131,7 +157,7 @@ const onShowModal = (modalName: string) => emits('show-modal', modalName)
|
|
|
131
157
|
white-space: nowrap;
|
|
132
158
|
text-align: center;
|
|
133
159
|
text-transform: uppercase;
|
|
134
|
-
color: #
|
|
160
|
+
color: #49afd9;
|
|
135
161
|
line-height: 20px;
|
|
136
162
|
max-height: 16.8px;
|
|
137
163
|
padding: 0 14px;
|
|
@@ -263,13 +263,6 @@ const onShowModalWithTypeCheck = (value: string) => {
|
|
|
263
263
|
const onSelectPort = (networkId: string, portId: string): void => {
|
|
264
264
|
emits('select-port', networkId, portId)
|
|
265
265
|
}
|
|
266
|
-
|
|
267
|
-
watch(
|
|
268
|
-
() => props.port,
|
|
269
|
-
(newValue) => {
|
|
270
|
-
console.log('port', newValue)
|
|
271
|
-
}
|
|
272
|
-
)
|
|
273
266
|
</script>
|
|
274
267
|
|
|
275
268
|
<style scoped lang="scss">
|
|
@@ -55,6 +55,17 @@ const props = defineProps<{
|
|
|
55
55
|
</script>
|
|
56
56
|
|
|
57
57
|
<style scoped lang="scss">
|
|
58
|
+
:root.dark-theme {
|
|
59
|
+
.central-panel {
|
|
60
|
+
fill: #314351;
|
|
61
|
+
stroke: #adbbc4;
|
|
62
|
+
}
|
|
63
|
+
|
|
64
|
+
.connection-line {
|
|
65
|
+
stroke: #adbbc4;
|
|
66
|
+
}
|
|
67
|
+
}
|
|
68
|
+
|
|
58
69
|
.central-panel {
|
|
59
70
|
fill: #f2f2f2;
|
|
60
71
|
stroke: #888;
|
|
@@ -66,7 +66,7 @@ const localization = computed<UI_I_Localization>(() => useLocal())
|
|
|
66
66
|
const onSelect = (value: number): void => {
|
|
67
67
|
emits('update:select', value)
|
|
68
68
|
}
|
|
69
|
-
const isShowHelpInfo = ref(false)
|
|
69
|
+
const isShowHelpInfo = ref<boolean>(false)
|
|
70
70
|
</script>
|
|
71
71
|
|
|
72
72
|
<style scoped lang="scss">
|
|
@@ -193,7 +193,7 @@ const isFileLoad = ref(null)
|
|
|
193
193
|
const memoryParentMain = ref<string>('')
|
|
194
194
|
const memoryParentModalDialog = ref<string>('')
|
|
195
195
|
|
|
196
|
-
const takeScreenshot = () => {
|
|
196
|
+
const takeScreenshot = (): void => {
|
|
197
197
|
hasTakeScreenshot.value = true
|
|
198
198
|
const value = {
|
|
199
199
|
hasTakeScreenshot: true,
|
|
@@ -237,7 +237,7 @@ const takeScreenshot = () => {
|
|
|
237
237
|
)
|
|
238
238
|
})
|
|
239
239
|
}
|
|
240
|
-
const removeScreenshot = () => {
|
|
240
|
+
const removeScreenshot = (): void => {
|
|
241
241
|
hasTakeScreenshot.value = false
|
|
242
242
|
const parentMain = document.getElementById('feedbackId')
|
|
243
243
|
const parentModalDialog = document.getElementById('feedback-modal-dialog-Id')
|
|
@@ -260,7 +260,7 @@ const removeScreenshot = () => {
|
|
|
260
260
|
clearAll()
|
|
261
261
|
}
|
|
262
262
|
|
|
263
|
-
const onChangeImgLoad = () => {
|
|
263
|
+
const onChangeImgLoad = (): void => {
|
|
264
264
|
hasTakeScreenshot.value = true
|
|
265
265
|
if (!isFileLoad.value) return
|
|
266
266
|
|
|
@@ -313,15 +313,15 @@ let startDrawingY: number | null = null
|
|
|
313
313
|
let drawColor = ''
|
|
314
314
|
let drawWidth = ''
|
|
315
315
|
|
|
316
|
-
const useRedMarker = () => {
|
|
316
|
+
const useRedMarker = (): void => {
|
|
317
317
|
drawColor = '#f76945'
|
|
318
318
|
drawWidth = '5'
|
|
319
319
|
}
|
|
320
|
-
const useGrayEraser = () => {
|
|
320
|
+
const useGrayEraser = (): void => {
|
|
321
321
|
drawColor = 'lightgray'
|
|
322
322
|
drawWidth = '14'
|
|
323
323
|
}
|
|
324
|
-
const undoLast = () => {
|
|
324
|
+
const undoLast = (): void => {
|
|
325
325
|
drawColor = ''
|
|
326
326
|
drawWidth = ''
|
|
327
327
|
const context = feedbackImg.value.getContext('2d')
|
|
@@ -331,7 +331,7 @@ const undoLast = () => {
|
|
|
331
331
|
context.putImageData(drawingArray[indexArray], 0, 0)
|
|
332
332
|
}
|
|
333
333
|
}
|
|
334
|
-
const clearAll = () => {
|
|
334
|
+
const clearAll = (): void => {
|
|
335
335
|
const context = feedbackImg.value.getContext('2d')
|
|
336
336
|
drawColor = ''
|
|
337
337
|
drawWidth = ''
|
|
@@ -342,7 +342,7 @@ const clearAll = () => {
|
|
|
342
342
|
context.putImageData(drawingArray[indexArray], 0, 0)
|
|
343
343
|
}
|
|
344
344
|
}
|
|
345
|
-
const start = (event: MouseEvent) => {
|
|
345
|
+
const start = (event: MouseEvent): void => {
|
|
346
346
|
if (!drawColor) return
|
|
347
347
|
const context = feedbackImg.value.getContext('2d')
|
|
348
348
|
const canvasCoordinates = feedbackImg.value.getBoundingClientRect()
|
|
@@ -356,7 +356,7 @@ const start = (event: MouseEvent) => {
|
|
|
356
356
|
)
|
|
357
357
|
event.preventDefault()
|
|
358
358
|
}
|
|
359
|
-
const draw = (event: MouseEvent) => {
|
|
359
|
+
const draw = (event: MouseEvent): void => {
|
|
360
360
|
if (!drawColor) return
|
|
361
361
|
const context = feedbackImg.value.getContext('2d')
|
|
362
362
|
const canvasCoordinates = feedbackImg.value.getBoundingClientRect()
|
|
@@ -373,7 +373,7 @@ const draw = (event: MouseEvent) => {
|
|
|
373
373
|
event.preventDefault()
|
|
374
374
|
}
|
|
375
375
|
|
|
376
|
-
const stop = (event: MouseEvent) => {
|
|
376
|
+
const stop = (event: MouseEvent): void => {
|
|
377
377
|
if (!drawColor) return
|
|
378
378
|
|
|
379
379
|
const context = feedbackImg.value.getContext('2d')
|
|
@@ -98,7 +98,7 @@ const validForm = ref<UI_I_ValidationTouchResult | null>(null)
|
|
|
98
98
|
const labelName = computed<string>(() => localization.value[props.label])
|
|
99
99
|
|
|
100
100
|
/* Validation for Name input */
|
|
101
|
-
const initValidation = () => {
|
|
101
|
+
const initValidation = (): void => {
|
|
102
102
|
validForm.value = validation.touch()
|
|
103
103
|
}
|
|
104
104
|
|
|
@@ -165,8 +165,8 @@ const props = defineProps<{
|
|
|
165
165
|
}>()
|
|
166
166
|
|
|
167
167
|
const emits = defineEmits<{
|
|
168
|
-
(event: 'update-tools',
|
|
169
|
-
(event: 'exporting',
|
|
168
|
+
(event: 'update-tools', value: UI_I_MonitorGraphPayload): void
|
|
169
|
+
(event: 'exporting', value: string): void
|
|
170
170
|
(event: 'open-advanced-page'): void
|
|
171
171
|
(event: 'select-row', value: UI_I_AdvancedCounterItem[]): void
|
|
172
172
|
(event: 'select-metric', value: string): void
|
|
@@ -28,7 +28,7 @@ import {
|
|
|
28
28
|
UI_I_BodyItem,
|
|
29
29
|
UI_I_ColumnKey,
|
|
30
30
|
} from '~/components/atoms/table/dataGrid/models/interfaces'
|
|
31
|
-
import {
|
|
31
|
+
import {UI_I_Localization, UI_I_Pagination} from '~/models/interfaces'
|
|
32
32
|
import * as table from '~/components/common/monitor/advanced/tools/chartOptionsModal/counters/table/config/tableConfig'
|
|
33
33
|
import { UI_I_AdvancedCounterItem } from '~/components/common/monitor/advanced/tools/chartOptionsModal/counters/table/models/interfaces'
|
|
34
34
|
import {
|
|
@@ -80,7 +80,7 @@ watch(
|
|
|
80
80
|
selectedCounters.value = []
|
|
81
81
|
}
|
|
82
82
|
)
|
|
83
|
-
const pagination = ref<
|
|
83
|
+
const pagination = ref<UI_I_Pagination>({
|
|
84
84
|
page: 1,
|
|
85
85
|
pageSize: 35,
|
|
86
86
|
})
|
|
@@ -31,7 +31,7 @@ import {
|
|
|
31
31
|
UI_I_BodyItem,
|
|
32
32
|
UI_I_ColumnKey,
|
|
33
33
|
} from '~/components/atoms/table/dataGrid/models/interfaces'
|
|
34
|
-
import { UI_I_Localization } from '~/models/interfaces'
|
|
34
|
+
import { UI_I_Localization, UI_I_Pagination } from '~/models/interfaces'
|
|
35
35
|
import { UI_I_AdvancedTargetObject } from '~/components/common/monitor/advanced/tools/chartOptionsModal/counters/table/models/interfaces'
|
|
36
36
|
import * as table from '~/components/common/monitor/advanced/tools/chartOptionsModal/counters/timespan/object/config/objectTable'
|
|
37
37
|
import { UI_T_AdvancedType } from '~/components/common/monitor/advanced/models/types'
|
|
@@ -57,7 +57,7 @@ const emits = defineEmits<{
|
|
|
57
57
|
const localization = computed<UI_I_Localization>(() => useLocal())
|
|
58
58
|
|
|
59
59
|
const selectedRow = ref<number[]>([])
|
|
60
|
-
const pagination = ref<
|
|
60
|
+
const pagination = ref<UI_I_Pagination>({
|
|
61
61
|
page: 1,
|
|
62
62
|
pageSize: 35,
|
|
63
63
|
})
|
|
@@ -134,7 +134,7 @@ const chartFour = ref<any>(null)
|
|
|
134
134
|
|
|
135
135
|
const currentChartName = ref<string>('')
|
|
136
136
|
|
|
137
|
-
const getCurrentChart = (chart: any):
|
|
137
|
+
const getCurrentChart = (chart: any): void => {
|
|
138
138
|
switch (currentChartName.value) {
|
|
139
139
|
case 'one':
|
|
140
140
|
chartOne.value = chart
|
package/components/common/monitor/overview/filters/customIntervalModal/CustomIntervalModal.vue
CHANGED
|
@@ -112,7 +112,7 @@ const props = defineProps<{
|
|
|
112
112
|
|
|
113
113
|
const emits = defineEmits<{
|
|
114
114
|
(event: 'hide'): void
|
|
115
|
-
(event: 'submit',
|
|
115
|
+
(event: 'submit', value: number[]): void
|
|
116
116
|
}>()
|
|
117
117
|
|
|
118
118
|
const { $store, $formattedDate, $formattedTime, $isDate, $getUnixByDate } =
|
|
@@ -37,7 +37,7 @@ const props = withDefaults(
|
|
|
37
37
|
{ testId: 'select-dropdown-button' }
|
|
38
38
|
)
|
|
39
39
|
const emits = defineEmits<{
|
|
40
|
-
(event: 'click',
|
|
40
|
+
(event: 'click', value: string): void
|
|
41
41
|
}>()
|
|
42
42
|
const hide = (): void => {
|
|
43
43
|
open.value = false
|
|
@@ -47,7 +47,7 @@ const open = ref<boolean>(false)
|
|
|
47
47
|
const click = (type: string): void => {
|
|
48
48
|
emits('click', type)
|
|
49
49
|
}
|
|
50
|
-
const windowClick = () => {
|
|
50
|
+
const windowClick = (): void => {
|
|
51
51
|
hide()
|
|
52
52
|
}
|
|
53
53
|
onMounted(() => {
|
|
@@ -78,7 +78,7 @@ const emits = defineEmits<{
|
|
|
78
78
|
}>()
|
|
79
79
|
|
|
80
80
|
const codec = ref<UI_T_CODEC>(1)
|
|
81
|
-
const onChangeCodec = () => {
|
|
81
|
+
const onChangeCodec = (): void => {
|
|
82
82
|
// @ts-ignore
|
|
83
83
|
if (!window.app) return
|
|
84
84
|
// @ts-ignore
|
|
@@ -93,7 +93,7 @@ const onChangeCodec = () => {
|
|
|
93
93
|
}
|
|
94
94
|
|
|
95
95
|
const isKeyboardShown = ref<boolean>(false)
|
|
96
|
-
const onToggleKeyboard = () => {
|
|
96
|
+
const onToggleKeyboard = (): void => {
|
|
97
97
|
isKeyboardShown.value = !isKeyboardShown.value
|
|
98
98
|
}
|
|
99
99
|
|
|
@@ -125,7 +125,7 @@ const toggleDrawer = () => {
|
|
|
125
125
|
}
|
|
126
126
|
|
|
127
127
|
const hover = ref<boolean>(false)
|
|
128
|
-
const onInputManagerFocus = () => {
|
|
128
|
+
const onInputManagerFocus = (): void => {
|
|
129
129
|
if (hover.value) return
|
|
130
130
|
document.getElementById('inputmanager')?.focus()
|
|
131
131
|
}
|
|
@@ -2,8 +2,8 @@
|
|
|
2
2
|
<div ref="fullScreen" class="spice-console">
|
|
3
3
|
<div id="vmw" ref="vmScreen" @scroll="onConsoleScroll"></div>
|
|
4
4
|
<common-spice-console-drawer
|
|
5
|
-
|
|
6
|
-
|
|
5
|
+
@toggle-fullscreen="toggle"
|
|
6
|
+
@send-alt-command="onSendAltCommand"
|
|
7
7
|
/>
|
|
8
8
|
</div>
|
|
9
9
|
</template>
|
|
@@ -20,14 +20,12 @@ const props = defineProps<{
|
|
|
20
20
|
port: number
|
|
21
21
|
}>()
|
|
22
22
|
|
|
23
|
-
|
|
24
|
-
|
|
25
23
|
let rfb: any
|
|
26
24
|
const vmScreen = ref(null)
|
|
27
25
|
const fullScreen = ref(null)
|
|
28
26
|
const { toggle } = useFullscreen(fullScreen)
|
|
29
27
|
|
|
30
|
-
const connectWS = () => {
|
|
28
|
+
const connectWS = (): void => {
|
|
31
29
|
if (props.vmType === 'VNC') {
|
|
32
30
|
connectVNC()
|
|
33
31
|
} else if (props.vmType === 'SPICE') {
|
|
@@ -35,13 +33,13 @@ const connectWS = () => {
|
|
|
35
33
|
}
|
|
36
34
|
}
|
|
37
35
|
|
|
38
|
-
const connectVNC = () => {
|
|
36
|
+
const connectVNC = (): void => {
|
|
39
37
|
rfb = new RFB(vmScreen.value, props.wsUrl, {
|
|
40
38
|
protocols: {},
|
|
41
39
|
})
|
|
42
40
|
}
|
|
43
41
|
|
|
44
|
-
const vmDisconnect = () => {
|
|
42
|
+
const vmDisconnect = (): void => {
|
|
45
43
|
if (props.vmType === 'VNC') {
|
|
46
44
|
if (rfb) {
|
|
47
45
|
rfb.disconnect()
|
|
@@ -49,17 +47,15 @@ const vmDisconnect = () => {
|
|
|
49
47
|
}
|
|
50
48
|
}
|
|
51
49
|
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
const onSendAltCommand = () => {
|
|
50
|
+
const onSendAltCommand = (): void => {
|
|
55
51
|
// @ts-ignore
|
|
56
52
|
window.app.sendCtrlAltDelete()
|
|
57
53
|
}
|
|
58
54
|
|
|
59
55
|
const onConsoleScroll = (event): void => {
|
|
60
56
|
app.clientGui.setClientOffset(
|
|
61
|
-
|
|
62
|
-
|
|
57
|
+
app.clientGui.clientOffsetX,
|
|
58
|
+
event.target.scrollTop
|
|
63
59
|
)
|
|
64
60
|
}
|
|
65
61
|
|
|
@@ -84,19 +84,19 @@ const rightPanelStyle = computed(() => {
|
|
|
84
84
|
return { width }
|
|
85
85
|
})
|
|
86
86
|
const leftPanelCollapsed = ref<boolean>(false)
|
|
87
|
-
const collapseLeftPanel = () => {
|
|
87
|
+
const collapseLeftPanel = (): void => {
|
|
88
88
|
leftPanelCollapsed.value = !leftPanelCollapsed.value
|
|
89
89
|
}
|
|
90
90
|
|
|
91
|
-
const isGrab = ref(false)
|
|
92
|
-
const isFocus = ref(false)
|
|
93
|
-
const isDrag = ref(false)
|
|
94
|
-
const leftPanelW = ref(20) // 0%
|
|
91
|
+
const isGrab = ref<boolean>(false)
|
|
92
|
+
const isFocus = ref<boolean>(false)
|
|
93
|
+
const isDrag = ref<boolean>(false)
|
|
94
|
+
const leftPanelW = ref<number>(20) // 0%
|
|
95
95
|
watch(
|
|
96
96
|
() => props.leftPanelW,
|
|
97
|
-
(
|
|
98
|
-
if (
|
|
99
|
-
leftPanelW.value =
|
|
97
|
+
(newValue) => {
|
|
98
|
+
if (newValue === undefined) return
|
|
99
|
+
leftPanelW.value = newValue
|
|
100
100
|
},
|
|
101
101
|
{ immediate: true }
|
|
102
102
|
)
|
|
@@ -109,7 +109,7 @@ watch(
|
|
|
109
109
|
)
|
|
110
110
|
|
|
111
111
|
let parentElem: HTMLElement | null
|
|
112
|
-
const mouseup = () => {
|
|
112
|
+
const mouseup = (): void => {
|
|
113
113
|
if (!isGrab.value) {
|
|
114
114
|
return
|
|
115
115
|
}
|
|
@@ -120,7 +120,7 @@ const mouseup = () => {
|
|
|
120
120
|
emits('dragend', leftPanelW.value)
|
|
121
121
|
}
|
|
122
122
|
|
|
123
|
-
let mousemove = (e: MouseEvent) => {
|
|
123
|
+
let mousemove = (e: MouseEvent): void => {
|
|
124
124
|
if (!isGrab.value) return
|
|
125
125
|
|
|
126
126
|
e.preventDefault()
|
|
@@ -129,7 +129,7 @@ let mousemove = (e: MouseEvent) => {
|
|
|
129
129
|
}
|
|
130
130
|
mousemove = useThrottle(mousemove)
|
|
131
131
|
|
|
132
|
-
const doDrag = (clientX: number) => {
|
|
132
|
+
const doDrag = (clientX: number): void => {
|
|
133
133
|
const parentElemRect = parentElem?.getBoundingClientRect()
|
|
134
134
|
const parentElemWidth = parentElemRect?.width || 0
|
|
135
135
|
const parentElemLeft = parentElemRect?.left || 0
|
|
@@ -145,7 +145,7 @@ const doDrag = (clientX: number) => {
|
|
|
145
145
|
|
|
146
146
|
const elementId = `horizontal${useUniqueId()}`
|
|
147
147
|
|
|
148
|
-
const keydown = (e: KeyboardEvent) => {
|
|
148
|
+
const keydown = (e: KeyboardEvent): void => {
|
|
149
149
|
if (!isFocus.value) return
|
|
150
150
|
|
|
151
151
|
const gutter = document.getElementById(`gutter-${elementId}`)
|
|
@@ -40,7 +40,7 @@ const props = withDefaults(defineProps<UI_I_SplitVerticalProps>(), {
|
|
|
40
40
|
topPanelH: undefined,
|
|
41
41
|
})
|
|
42
42
|
const emits = defineEmits<{
|
|
43
|
-
(event: 'dragend',
|
|
43
|
+
(event: 'dragend', value: number): void
|
|
44
44
|
}>()
|
|
45
45
|
|
|
46
46
|
const topPanelStyle = computed<UI_I_SplitVerticalStyle>(() => {
|
|
@@ -63,15 +63,15 @@ const isDrag = ref<boolean>(false)
|
|
|
63
63
|
const topPanelH = ref<number>(80) // 80%
|
|
64
64
|
watch(
|
|
65
65
|
() => props.topPanelH,
|
|
66
|
-
(
|
|
67
|
-
if (
|
|
68
|
-
topPanelH.value =
|
|
66
|
+
(newValue) => {
|
|
67
|
+
if (newValue === undefined) return
|
|
68
|
+
topPanelH.value = newValue
|
|
69
69
|
},
|
|
70
70
|
{ immediate: true }
|
|
71
71
|
)
|
|
72
72
|
|
|
73
73
|
let parentElem: HTMLDivElement | null
|
|
74
|
-
const mouseup = () => {
|
|
74
|
+
const mouseup = (): void => {
|
|
75
75
|
if (!isGrab.value) {
|
|
76
76
|
return
|
|
77
77
|
}
|
|
@@ -81,7 +81,7 @@ const mouseup = () => {
|
|
|
81
81
|
|
|
82
82
|
emits('dragend', topPanelH.value)
|
|
83
83
|
}
|
|
84
|
-
let mousemove = (e: MouseEvent) => {
|
|
84
|
+
let mousemove = (e: MouseEvent): void => {
|
|
85
85
|
if (!isGrab.value) {
|
|
86
86
|
return
|
|
87
87
|
}
|
|
@@ -93,7 +93,7 @@ let mousemove = (e: MouseEvent) => {
|
|
|
93
93
|
}
|
|
94
94
|
mousemove = useThrottle(mousemove)
|
|
95
95
|
|
|
96
|
-
const doDrag = (clientY: number) => {
|
|
96
|
+
const doDrag = (clientY: number): void => {
|
|
97
97
|
const parentElemTop = parentElem?.getBoundingClientRect().top || 0
|
|
98
98
|
const parentHeight = parentElem?.clientHeight || 0
|
|
99
99
|
const onePercent = parentHeight / 100
|
|
@@ -110,7 +110,7 @@ const doDrag = (clientY: number) => {
|
|
|
110
110
|
}
|
|
111
111
|
|
|
112
112
|
const elementId = `vertical${useUniqueId()}`
|
|
113
|
-
const keydown = (e: KeyboardEvent) => {
|
|
113
|
+
const keydown = (e: KeyboardEvent): void => {
|
|
114
114
|
if (!isFocus.value) return
|
|
115
115
|
|
|
116
116
|
const gutter = document.getElementById(`gutter-${elementId}`)
|
|
@@ -65,7 +65,7 @@ const onSelectFiles = (event: Event, type: string): void => {
|
|
|
65
65
|
emits('click', type, event)
|
|
66
66
|
}
|
|
67
67
|
|
|
68
|
-
const visibleCount = ref(props.actions.length)
|
|
68
|
+
const visibleCount = ref<number>(props.actions.length)
|
|
69
69
|
const collapsedItems = computed<UI_I_CollapseNavItem[]>(() => {
|
|
70
70
|
return props.actions
|
|
71
71
|
.filter((_, index) => {
|
|
@@ -32,7 +32,8 @@ export const capabilities: UI_I_Compatibility = {
|
|
|
32
32
|
machineTypes: [
|
|
33
33
|
{
|
|
34
34
|
text: 'Q35',
|
|
35
|
-
value: 'pc-q35-3.1',
|
|
35
|
+
// value: 'pc-q35-3.1',
|
|
36
|
+
value: 'pc-q35-6.2',
|
|
36
37
|
},
|
|
37
38
|
{
|
|
38
39
|
text: 'I440FX',
|
|
@@ -126,7 +127,7 @@ export const capabilities: UI_I_Compatibility = {
|
|
|
126
127
|
},
|
|
127
128
|
],
|
|
128
129
|
guestOsVersions: {
|
|
129
|
-
|
|
130
|
+
windows: [
|
|
130
131
|
{
|
|
131
132
|
text: 'Microsoft Windows Server 2022 (64-bit)',
|
|
132
133
|
value: 'windows2019srvNext_64Guest-vbsEnabled-true',
|
|
@@ -220,7 +221,7 @@ export const capabilities: UI_I_Compatibility = {
|
|
|
220
221
|
value: 'win95Guest-vbsEnabled-false',
|
|
221
222
|
},
|
|
222
223
|
],
|
|
223
|
-
|
|
224
|
+
linux: [
|
|
224
225
|
{
|
|
225
226
|
text: 'Red Hat Enterprise Linux (64-bit)',
|
|
226
227
|
value: 'rhel64Guest-vbsEnabled-false',
|
|
@@ -306,7 +307,7 @@ export const capabilities: UI_I_Compatibility = {
|
|
|
306
307
|
value: 'otherLinuxGuest-vbsEnabled-false',
|
|
307
308
|
},
|
|
308
309
|
],
|
|
309
|
-
|
|
310
|
+
other: [
|
|
310
311
|
{
|
|
311
312
|
text: 'Apple macOS (64-bit)',
|
|
312
313
|
value: 'darwin64Guest-vbsEnabled-false',
|
package/components/common/vm/actions/common/customizeHardware/virtualHardware/cpu/CpuHotPlug.vue
CHANGED
|
@@ -29,7 +29,7 @@ const props = defineProps<{
|
|
|
29
29
|
disabled: boolean
|
|
30
30
|
}>()
|
|
31
31
|
const emits = defineEmits<{
|
|
32
|
-
(event: 'update:enable-cpu-hot-add',
|
|
32
|
+
(event: 'update:enable-cpu-hot-add', value: boolean): void
|
|
33
33
|
}>()
|
|
34
34
|
|
|
35
35
|
const enableCpuHotAddLocal = computed<boolean>({
|
|
@@ -26,7 +26,9 @@
|
|
|
26
26
|
</template>
|
|
27
27
|
|
|
28
28
|
<script setup lang="ts">
|
|
29
|
-
|
|
29
|
+
import { UI_I_Localization } from '~/models/interfaces'
|
|
30
|
+
|
|
31
|
+
const localization = computed<UI_I_Localization>(() => useLocal())
|
|
30
32
|
|
|
31
33
|
const props = defineProps<{
|
|
32
34
|
iommu: boolean
|
|
@@ -61,7 +61,9 @@
|
|
|
61
61
|
</template>
|
|
62
62
|
|
|
63
63
|
<script setup lang="ts">
|
|
64
|
-
|
|
64
|
+
import { UI_I_Localization } from '~/models/interfaces'
|
|
65
|
+
|
|
66
|
+
const localization = computed<UI_I_Localization>(() => useLocal())
|
|
65
67
|
|
|
66
68
|
const props = defineProps<{
|
|
67
69
|
schedulingAffinity: string
|
|
@@ -33,7 +33,7 @@ const props = defineProps<{
|
|
|
33
33
|
disabled: boolean
|
|
34
34
|
}>()
|
|
35
35
|
const emits = defineEmits<{
|
|
36
|
-
(event: 'update:memory-hot-plug',
|
|
36
|
+
(event: 'update:memory-hot-plug', value: boolean): void
|
|
37
37
|
}>()
|
|
38
38
|
|
|
39
39
|
const memoryHotPlugLocal = computed<boolean>({
|
|
@@ -116,7 +116,7 @@ const storageSubmit = ref<number>(0)
|
|
|
116
116
|
const onSubmitStorageModal = (): void => {
|
|
117
117
|
storageSubmit.value++
|
|
118
118
|
}
|
|
119
|
-
const storageModalIsShow = ref(false)
|
|
119
|
+
const storageModalIsShow = ref<boolean>(false)
|
|
120
120
|
const changeStorage = (storage: UI_I_DatastoreTableItem): void => {
|
|
121
121
|
locationOptions.value = [
|
|
122
122
|
locationOptions.value[0],
|
|
@@ -94,9 +94,9 @@ const tagsBodyItems = computed<UI_I_TableBodyItem[][]>(() => {
|
|
|
94
94
|
})
|
|
95
95
|
watch(
|
|
96
96
|
() => props.networksTable,
|
|
97
|
-
(
|
|
97
|
+
(newValue) => {
|
|
98
98
|
tagsBodyItemsDefault.value = []
|
|
99
|
-
|
|
99
|
+
newValue?.forEach((network) => {
|
|
100
100
|
tagsBodyItemsDefault.value.push([
|
|
101
101
|
{ text: network.name, editable: false },
|
|
102
102
|
{ text: '--', editable: false },
|
|
@@ -150,14 +150,14 @@ const getNetworks = (): void => {
|
|
|
150
150
|
getNetworks()
|
|
151
151
|
watch(
|
|
152
152
|
() => props.networksTable,
|
|
153
|
-
(
|
|
154
|
-
if (!
|
|
153
|
+
(newValue) => {
|
|
154
|
+
if (!newValue.length || props.type === 'edit') return
|
|
155
155
|
|
|
156
|
-
selectedLocationOld.value =
|
|
157
|
-
selectedLocation.value =
|
|
156
|
+
selectedLocationOld.value = newValue[0].net_bridge
|
|
157
|
+
selectedLocation.value = newValue[0].net_bridge
|
|
158
158
|
|
|
159
159
|
locationOptions.value = [
|
|
160
|
-
{ text:
|
|
160
|
+
{ text: newValue[0].name, value: newValue[0].net_bridge },
|
|
161
161
|
{ text: `${localization.value.browse}...`, value: '' },
|
|
162
162
|
]
|
|
163
163
|
},
|
|
@@ -30,6 +30,7 @@
|
|
|
30
30
|
|
|
31
31
|
<script setup lang="ts">
|
|
32
32
|
import { UI_I_OptionItem } from '~/components/atoms/models/interfaces'
|
|
33
|
+
import { UI_I_Localization } from '~/models/interfaces'
|
|
33
34
|
import { usbControllerOptionsConfig } from '~/components/common/vm/actions/common/customizeHardware/virtualHardware/newUsbController/config/options'
|
|
34
35
|
|
|
35
36
|
const props = withDefaults(
|
|
@@ -46,7 +47,7 @@ const emits = defineEmits<{
|
|
|
46
47
|
(event: 'send-data', value: string): void
|
|
47
48
|
}>()
|
|
48
49
|
|
|
49
|
-
const localization = computed(() => useLocal())
|
|
50
|
+
const localization = computed<UI_I_Localization>(() => useLocal())
|
|
50
51
|
|
|
51
52
|
const selectedUsbController = ref<string>(props.usbController)
|
|
52
53
|
const usbControllerOptions = ref<UI_I_OptionItem[]>(usbControllerOptionsConfig)
|
|
@@ -82,8 +82,8 @@ const totalVideoMemoryLocalErrorText = computed<string>(() => {
|
|
|
82
82
|
}
|
|
83
83
|
return ''
|
|
84
84
|
})
|
|
85
|
-
watch(totalVideoMemoryLocalErrorText, (
|
|
86
|
-
emits('invalid', !!
|
|
85
|
+
watch(totalVideoMemoryLocalErrorText, (newValue: string) => {
|
|
86
|
+
emits('invalid', !!newValue.length)
|
|
87
87
|
})
|
|
88
88
|
|
|
89
89
|
const typeError = 'video_card.memory_mb'
|
|
@@ -74,8 +74,8 @@ const stepSubTitle = computed<string>(() => {
|
|
|
74
74
|
// )
|
|
75
75
|
// })
|
|
76
76
|
|
|
77
|
-
watch(nfsVersion, (
|
|
78
|
-
emits('change-nfs-version',
|
|
77
|
+
watch(nfsVersion, (newValue: UI_T_NfsType) => {
|
|
78
|
+
emits('change-nfs-version', newValue)
|
|
79
79
|
})
|
|
80
80
|
|
|
81
81
|
const applyChangesAndNext = (event: UI_I_ConfigurationSendDataNfs): void => {
|
|
@@ -33,7 +33,7 @@ import {
|
|
|
33
33
|
UI_I_HeadItem,
|
|
34
34
|
UI_I_BodyItem,
|
|
35
35
|
} from '~/components/atoms/table/dataGrid/models/interfaces'
|
|
36
|
-
import { UI_I_Pagination } from '~/models/interfaces'
|
|
36
|
+
import { UI_I_Localization, UI_I_Pagination } from '~/models/interfaces'
|
|
37
37
|
import { itemsPerPage } from '~/components/atoms/table/dataGrid/config/itemsPerPage'
|
|
38
38
|
import { T_HostsAccessibilityTab } from '~/components/common/wizards/datastore/add/nfs/accessibility/models/types'
|
|
39
39
|
import {
|
|
@@ -54,10 +54,10 @@ const props = defineProps<{
|
|
|
54
54
|
const emits = defineEmits<{
|
|
55
55
|
(event: 'update:selected-row', value: number[]): void
|
|
56
56
|
(event: 'pagination', value: UI_I_Pagination): void
|
|
57
|
-
(event: 'sort',
|
|
57
|
+
(event: 'sort', value: string): void
|
|
58
58
|
}>()
|
|
59
59
|
|
|
60
|
-
const localization = computed(() => useLocal())
|
|
60
|
+
const localization = computed<UI_I_Localization>(() => useLocal())
|
|
61
61
|
|
|
62
62
|
const loading = computed<boolean>(() => false)
|
|
63
63
|
|
|
@@ -88,15 +88,15 @@ const pagination = ref<UI_I_Pagination>({
|
|
|
88
88
|
})
|
|
89
89
|
watch(
|
|
90
90
|
() => props.pagination,
|
|
91
|
-
(
|
|
92
|
-
pagination.value =
|
|
91
|
+
(newValue) => {
|
|
92
|
+
pagination.value = newValue
|
|
93
93
|
},
|
|
94
94
|
{ immediate: true }
|
|
95
95
|
)
|
|
96
96
|
watch(
|
|
97
97
|
pagination,
|
|
98
|
-
(
|
|
99
|
-
emits('pagination',
|
|
98
|
+
(newValue) => {
|
|
99
|
+
emits('pagination', newValue)
|
|
100
100
|
},
|
|
101
101
|
{ deep: true, immediate: true }
|
|
102
102
|
)
|
|
@@ -116,13 +116,13 @@ const headItems = computed<UI_I_HeadItem[]>(() =>
|
|
|
116
116
|
const bodyItems = ref<UI_I_BodyItem[][]>([])
|
|
117
117
|
watch(
|
|
118
118
|
() => props.dataTable,
|
|
119
|
-
(
|
|
120
|
-
if (!
|
|
119
|
+
(newValue) => {
|
|
120
|
+
if (!newValue?.length) {
|
|
121
121
|
bodyItems.value = []
|
|
122
122
|
return
|
|
123
123
|
}
|
|
124
124
|
|
|
125
|
-
bodyItems.value = tables[props.tableType].bodyItems(
|
|
125
|
+
bodyItems.value = tables[props.tableType].bodyItems(newValue)
|
|
126
126
|
},
|
|
127
127
|
{ deep: true, immediate: true }
|
|
128
128
|
)
|
|
@@ -181,7 +181,7 @@ const onBlurInputName = (): void => {
|
|
|
181
181
|
validForm.value = validation.touch()
|
|
182
182
|
isInitNameValidation.value = true
|
|
183
183
|
}
|
|
184
|
-
const onInputName = () => {
|
|
184
|
+
const onInputName = (): void => {
|
|
185
185
|
validForm.value = validation.touch()
|
|
186
186
|
}
|
|
187
187
|
|
|
@@ -197,7 +197,7 @@ const onBlurInputFolder = (): void => {
|
|
|
197
197
|
validForm.value = validation.touch()
|
|
198
198
|
isInitFolderValidation.value = true
|
|
199
199
|
}
|
|
200
|
-
const onInputFolder = () => {
|
|
200
|
+
const onInputFolder = (): void => {
|
|
201
201
|
validForm.value = validation.touch()
|
|
202
202
|
}
|
|
203
203
|
|
|
@@ -213,7 +213,7 @@ const onBlurInputServer = (): void => {
|
|
|
213
213
|
validForm.value = validation.touch()
|
|
214
214
|
isInitServerValidation.value = true
|
|
215
215
|
}
|
|
216
|
-
const onInputServer = () => {
|
|
216
|
+
const onInputServer = (): void => {
|
|
217
217
|
validForm.value = validation.touch()
|
|
218
218
|
isInitServerValidation.value = true
|
|
219
219
|
}
|
package/components/common/wizards/datastore/add/nfs/configuration/serversList/ServersList.vue
CHANGED
|
@@ -73,13 +73,13 @@ const headItems = computed<UI_I_HeadItem[]>(() =>
|
|
|
73
73
|
const bodyItems = ref<UI_I_BodyItem[][]>([])
|
|
74
74
|
watch(
|
|
75
75
|
() => props.dataTable,
|
|
76
|
-
(
|
|
77
|
-
if (!
|
|
76
|
+
(newValue) => {
|
|
77
|
+
if (!newValue?.length) {
|
|
78
78
|
bodyItems.value = []
|
|
79
79
|
return
|
|
80
80
|
}
|
|
81
81
|
|
|
82
|
-
bodyItems.value = serversTable.bodyItems(
|
|
82
|
+
bodyItems.value = serversTable.bodyItems(newValue)
|
|
83
83
|
},
|
|
84
84
|
{ deep: true, immediate: true }
|
|
85
85
|
)
|
|
@@ -39,13 +39,14 @@
|
|
|
39
39
|
|
|
40
40
|
<script lang="ts" setup>
|
|
41
41
|
import { UI_I_DetailsItem } from '~/components/common/details/model/interfaces'
|
|
42
|
+
import { UI_I_Localization } from '~/models/interfaces'
|
|
42
43
|
|
|
43
44
|
const props = defineProps<{
|
|
44
45
|
dataReadyView: UI_I_DetailsItem[]
|
|
45
46
|
}>()
|
|
46
47
|
// console.log(props)
|
|
47
48
|
|
|
48
|
-
const localization = computed(() => useLocal())
|
|
49
|
+
const localization = computed<UI_I_Localization>(() => useLocal())
|
|
49
50
|
|
|
50
51
|
const properties = computed<UI_I_DetailsItem[]>(() => props.dataReadyView)
|
|
51
52
|
</script>
|
package/components/common/wizards/datastore/add/sharedStorm/deviceSelection/DeviceSelection.vue
CHANGED
|
@@ -135,14 +135,14 @@ const { $store } = useNuxtApp()
|
|
|
135
135
|
const { $validation } = useNuxtApp()
|
|
136
136
|
|
|
137
137
|
const isInitDatastoreNameValidation = ref<boolean>(false)
|
|
138
|
-
const initValidation = () => {
|
|
138
|
+
const initValidation = (): void => {
|
|
139
139
|
isInitDatastoreNameValidation.value = true
|
|
140
140
|
const valid = validation.touch()
|
|
141
141
|
if (!valid.isValid) {
|
|
142
142
|
showValidationErrors(valid)
|
|
143
143
|
}
|
|
144
144
|
}
|
|
145
|
-
const onInput = () => {
|
|
145
|
+
const onInput = (): void => {
|
|
146
146
|
const valid = validation.touch()
|
|
147
147
|
|
|
148
148
|
if (!isInitDatastoreNameValidation.value) return
|
|
@@ -156,7 +156,7 @@ const defaultForm: UI_I_FormValidationDataStore = defaultFormFunc(
|
|
|
156
156
|
)
|
|
157
157
|
const form = ref<UI_I_FormValidationDataStore>(useDeepCopy(defaultForm))
|
|
158
158
|
|
|
159
|
-
const setForm = () => {
|
|
159
|
+
const setForm = (): void => {
|
|
160
160
|
form.value = useDeepCopy(defaultForm)
|
|
161
161
|
validation.setForm(form)
|
|
162
162
|
}
|
|
@@ -182,11 +182,11 @@ const selectedLunDisk = ref<number[]>([])
|
|
|
182
182
|
|
|
183
183
|
watch(
|
|
184
184
|
selectedLunDisk,
|
|
185
|
-
(
|
|
186
|
-
if (
|
|
185
|
+
(newValue: number[] | null) => {
|
|
186
|
+
if (newValue === null || !dataTable.value) return null
|
|
187
187
|
|
|
188
188
|
const lunDisk = dataTable.value.items.filter((_: any, key: number) =>
|
|
189
|
-
|
|
189
|
+
newValue.includes(key)
|
|
190
190
|
)
|
|
191
191
|
|
|
192
192
|
emits('update:lun-disk', lunDisk)
|
package/components/common/wizards/datastore/add/sharedStorm/deviceSelection/hostTable/HostTable.vue
CHANGED
|
@@ -49,7 +49,7 @@ const props = defineProps<{
|
|
|
49
49
|
const emits = defineEmits<{
|
|
50
50
|
(event: 'update:selected', value: number[] | null): void
|
|
51
51
|
(event: 'pagination', value: UI_I_Pagination): void
|
|
52
|
-
(event: 'sort',
|
|
52
|
+
(event: 'sort', value: string): void
|
|
53
53
|
}>()
|
|
54
54
|
|
|
55
55
|
const localization = computed<UI_I_Localization>(() => useLocal())
|
|
@@ -81,15 +81,15 @@ const pagination = ref<UI_I_Pagination>({
|
|
|
81
81
|
})
|
|
82
82
|
watch(
|
|
83
83
|
() => props.pagination,
|
|
84
|
-
(
|
|
85
|
-
pagination.value =
|
|
84
|
+
(newValue) => {
|
|
85
|
+
pagination.value = newValue
|
|
86
86
|
},
|
|
87
87
|
{ immediate: true }
|
|
88
88
|
)
|
|
89
89
|
watch(
|
|
90
90
|
pagination,
|
|
91
|
-
(
|
|
92
|
-
emits('pagination',
|
|
91
|
+
(newValue) => {
|
|
92
|
+
emits('pagination', newValue)
|
|
93
93
|
},
|
|
94
94
|
{ deep: true, immediate: true }
|
|
95
95
|
)
|
|
@@ -105,13 +105,13 @@ const headItems = computed<UI_I_HeadItem[]>(() =>
|
|
|
105
105
|
const bodyItems = ref<UI_I_BodyItem[][]>([])
|
|
106
106
|
watch(
|
|
107
107
|
() => props.dataTable,
|
|
108
|
-
(
|
|
109
|
-
if (!
|
|
108
|
+
(newValue) => {
|
|
109
|
+
if (!newValue?.length) {
|
|
110
110
|
bodyItems.value = []
|
|
111
111
|
return
|
|
112
112
|
}
|
|
113
113
|
|
|
114
|
-
bodyItems.value = hostsTable.bodyItems(
|
|
114
|
+
bodyItems.value = hostsTable.bodyItems(newValue)
|
|
115
115
|
},
|
|
116
116
|
{ deep: true, immediate: true }
|
|
117
117
|
)
|
|
@@ -173,27 +173,27 @@ const props = withDefaults(
|
|
|
173
173
|
const localization = computed<UI_I_Localization>(() => useLocal())
|
|
174
174
|
const { $binary } = useNuxtApp()
|
|
175
175
|
|
|
176
|
-
const selectedHost = ref('all-partitions')
|
|
176
|
+
const selectedHost = ref<string>('all-partitions')
|
|
177
177
|
const partitionConfiguration = computed<UI_I_SelectHostOptions[]>(() =>
|
|
178
178
|
partitionConfigurationFunc(localization.value)
|
|
179
179
|
)
|
|
180
180
|
|
|
181
|
-
const selectedSize = ref('1')
|
|
181
|
+
const selectedSize = ref<string>('1')
|
|
182
182
|
const blockSize = computed<UI_I_SelectHostOptions[]>(() =>
|
|
183
183
|
blockSizeFunc(localization.value)
|
|
184
184
|
)
|
|
185
185
|
|
|
186
|
-
const selectedGranularity = ref('1')
|
|
186
|
+
const selectedGranularity = ref<string>('1')
|
|
187
187
|
const spaceGranularity = computed<UI_I_SelectHostOptions[]>(() =>
|
|
188
188
|
spaceGranularityFunc(localization.value)
|
|
189
189
|
)
|
|
190
190
|
|
|
191
|
-
const selectedPriority = ref('low')
|
|
191
|
+
const selectedPriority = ref<string>('low')
|
|
192
192
|
const spacePriority = computed<UI_I_SelectHostOptions[]>(() =>
|
|
193
193
|
spacePriorityFunc(localization.value)
|
|
194
194
|
)
|
|
195
195
|
|
|
196
|
-
const countDatastoreSizeToGb = computed(() => {
|
|
196
|
+
const countDatastoreSizeToGb = computed<number>(() => {
|
|
197
197
|
return $binary.mbToGb(props.selectedLunDiskSize)
|
|
198
198
|
})
|
|
199
199
|
|
|
@@ -204,7 +204,7 @@ const setProgress = computed<number>(() => {
|
|
|
204
204
|
return (width.value * props.selectedSize) / props.capacity
|
|
205
205
|
})
|
|
206
206
|
|
|
207
|
-
const emptySizeText = computed(() => {
|
|
207
|
+
const emptySizeText = computed<string>(() => {
|
|
208
208
|
const { empty, gb } = localization.value
|
|
209
209
|
|
|
210
210
|
return `${empty}: ${props.capacity} ${gb}`
|