bfg-common 1.5.220 → 1.5.221
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/components/common/backup/storage/actions/add/Add.vue +16 -1
- package/components/common/backup/storage/actions/add/temp/Add.vue +53 -34
- package/components/common/backup/storage/actions/add/temp/lib/config/stepItems.ts +46 -13
- package/components/common/backup/storage/actions/add/temp/lib/utils.ts +6 -5
- package/components/common/backup/storage/actions/add/temp/local/Local.vue +49 -31
- package/components/common/backup/storage/actions/add/temp/local/accessibility/Accessibility.vue +104 -0
- package/components/common/backup/storage/actions/add/temp/local/accessibility/lib/config/tabsPannel.ts +25 -0
- package/components/common/backup/storage/actions/add/temp/local/accessibility/lib/models/interfaces.ts +9 -0
- package/components/common/backup/storage/actions/add/temp/local/accessibility/lib/models/types.ts +5 -0
- package/components/common/backup/storage/actions/add/temp/local/accessibility/tablesView/TablesView.vue +141 -0
- package/components/common/backup/storage/actions/add/temp/local/accessibility/tablesView/lib/config/compatibleTable.ts +62 -0
- package/components/common/backup/storage/actions/add/temp/local/accessibility/tablesView/lib/config/hostsTableItems.ts +27 -0
- package/components/common/backup/storage/actions/add/temp/local/accessibility/tablesView/lib/config/incompatibleTable.ts +68 -0
- package/components/common/backup/storage/actions/add/temp/local/accessibility/tablesView/lib/config/tableKeys.ts +15 -0
- package/components/common/backup/storage/actions/add/temp/local/createName/CreateName.vue +5 -3
- package/components/common/backup/storage/actions/add/temp/nfs/Nfs.vue +5 -5
- package/components/common/backup/storage/actions/add/temp/nfs/accessibility/lib/models/types.ts +2 -2
- package/components/common/backup/storage/actions/add/temp/nfs/accessibility/tablesView/lib/config/hostsTableItems.ts +1 -27
- package/components/common/backup/storage/actions/add/temp/nfs/accessibility/tablesView/lib/config/tableKeys.ts +2 -2
- package/components/common/backup/storage/actions/add/temp/nfs/configuration/Configuration.vue +4 -4
- package/components/common/backup/storage/actions/add/temp/readyComplete/ReadyComplete.vue +1 -1
- package/components/common/backup/storage/actions/add/temp/readyComplete/lib/config/propertiesDetails.ts +33 -7
- package/components/common/backup/storage/actions/add/temp/samba/accessibility/lib/models/types.ts +2 -2
- package/components/common/backup/storage/actions/add/temp/samba/accessibility/tablesView/lib/config/tableKeys.ts +2 -2
- package/components/common/backup/storage/actions/add/temp/samba/configuration/Configuration.vue +1 -1
- package/components/common/backup/storage/actions/add/temp/sharedStorm/SharedStorm.vue +47 -21
- package/components/common/backup/storage/actions/add/temp/types/Types.vue +3 -2
- package/components/common/backup/storage/actions/add/temp/types/lib/config/typeOptions.ts +25 -15
- package/components/common/vm/actions/clone/Clone.vue +7 -0
- package/package.json +2 -2
- package/components/common/backup/storage/actions/add/temp/sharedStorm/createName/CreateName.vue +0 -156
- package/components/common/backup/storage/actions/add/temp/sharedStorm/createName/lib/config/defaultForm.ts +0 -15
|
@@ -0,0 +1,141 @@
|
|
|
1
|
+
<template>
|
|
2
|
+
<div class="data-table-view">
|
|
3
|
+
<div>
|
|
4
|
+
<atoms-table-data-grid
|
|
5
|
+
v-model:selected-row="selected"
|
|
6
|
+
v-model:page-size="paginationLocal.pageSize"
|
|
7
|
+
v-model:page="paginationLocal.page"
|
|
8
|
+
type="checkbox"
|
|
9
|
+
class="data-table"
|
|
10
|
+
test-id="accessibility-table"
|
|
11
|
+
:head-items="headItems"
|
|
12
|
+
:body-items="bodyItems"
|
|
13
|
+
:total-items="props.totalItems"
|
|
14
|
+
:total-pages="props.totalPages"
|
|
15
|
+
:items-per-page="itemsPerPage"
|
|
16
|
+
:loading="loading"
|
|
17
|
+
@filtering="filtering"
|
|
18
|
+
@sorting="sorting"
|
|
19
|
+
>
|
|
20
|
+
<template #icon="{ item }">
|
|
21
|
+
<span :class="['datagrid-cell-icon', item.data.iconClassName]" />
|
|
22
|
+
<span class="text-ellipsis">
|
|
23
|
+
{{ item.text }}
|
|
24
|
+
</span>
|
|
25
|
+
</template>
|
|
26
|
+
</atoms-table-data-grid>
|
|
27
|
+
</div>
|
|
28
|
+
</div>
|
|
29
|
+
</template>
|
|
30
|
+
|
|
31
|
+
<script lang="ts" setup>
|
|
32
|
+
import type {
|
|
33
|
+
UI_I_HeadItem,
|
|
34
|
+
UI_I_BodyItem,
|
|
35
|
+
} from '~/components/atoms/table/dataGrid/lib/models/interfaces'
|
|
36
|
+
import type { UI_I_Localization } from '~/lib/models/interfaces'
|
|
37
|
+
import type { UI_I_Pagination } from '~/lib/models/table/interfaces'
|
|
38
|
+
import { itemsPerPage } from '~/components/atoms/table/dataGrid/lib/config/itemsPerPage'
|
|
39
|
+
import type { UI_T_HostsAccessibilityTab } from '~/components/common/wizards/datastore/add/steps/hostAccessibility/lib/models/types'
|
|
40
|
+
import type {
|
|
41
|
+
I_CompatibleHostsTable,
|
|
42
|
+
I_IncompatibleHostsTable,
|
|
43
|
+
} from '~/components/templates/inventory/actions/backup/storage/add/temp/nfs/accessibility/lib/models/interfaces'
|
|
44
|
+
import * as compatibleTable from '~/components/templates/inventory/actions/backup/storage/add/temp/nfs/accessibility/tablesView/lib/config/compatibleTable'
|
|
45
|
+
import * as incompatibleTable from '~/components/templates/inventory/actions/backup/storage/add/temp/nfs/accessibility/tablesView/lib/config/incompatibleTable'
|
|
46
|
+
|
|
47
|
+
const props = defineProps<{
|
|
48
|
+
dataTable: I_CompatibleHostsTable[] | I_IncompatibleHostsTable[]
|
|
49
|
+
selectedRow: number[]
|
|
50
|
+
tableType: UI_T_HostsAccessibilityTab
|
|
51
|
+
totalItems: number
|
|
52
|
+
totalPages: number
|
|
53
|
+
pagination: UI_I_Pagination
|
|
54
|
+
}>()
|
|
55
|
+
const emits = defineEmits<{
|
|
56
|
+
(event: 'update:selected-row', value: number[]): void
|
|
57
|
+
(event: 'pagination', value: UI_I_Pagination): void
|
|
58
|
+
(event: 'sort', value: string): void
|
|
59
|
+
}>()
|
|
60
|
+
|
|
61
|
+
const localization = computed<UI_I_Localization>(() => useLocal())
|
|
62
|
+
|
|
63
|
+
const loading = computed<boolean>(() => false)
|
|
64
|
+
|
|
65
|
+
const selected = computed<number[]>({
|
|
66
|
+
get() {
|
|
67
|
+
return props.selectedRow
|
|
68
|
+
},
|
|
69
|
+
set(value) {
|
|
70
|
+
emits('update:selected-row', value)
|
|
71
|
+
},
|
|
72
|
+
})
|
|
73
|
+
|
|
74
|
+
const filtering = (e: [string, string][]): void => {
|
|
75
|
+
console.log(e, 111)
|
|
76
|
+
}
|
|
77
|
+
const sorting = (e: [number, boolean]): void => {
|
|
78
|
+
const [column, status] = e
|
|
79
|
+
const direction = status ? 'desc' : 'asc'
|
|
80
|
+
|
|
81
|
+
const sort = `${column}.${direction}`
|
|
82
|
+
|
|
83
|
+
emits('sort', sort)
|
|
84
|
+
}
|
|
85
|
+
|
|
86
|
+
const paginationLocal = ref<UI_I_Pagination>({
|
|
87
|
+
page: 1,
|
|
88
|
+
pageSize: 1,
|
|
89
|
+
})
|
|
90
|
+
watch(
|
|
91
|
+
() => props.pagination,
|
|
92
|
+
(newValue) => {
|
|
93
|
+
paginationLocal.value = newValue
|
|
94
|
+
},
|
|
95
|
+
{ immediate: true }
|
|
96
|
+
)
|
|
97
|
+
watch(
|
|
98
|
+
paginationLocal,
|
|
99
|
+
(newValue) => {
|
|
100
|
+
emits('pagination', newValue)
|
|
101
|
+
},
|
|
102
|
+
{ deep: true, immediate: true }
|
|
103
|
+
)
|
|
104
|
+
const tables: {
|
|
105
|
+
'compatible-hosts': any
|
|
106
|
+
'incompatible-hosts': any
|
|
107
|
+
} = {
|
|
108
|
+
'compatible-hosts': compatibleTable,
|
|
109
|
+
'incompatible-hosts': incompatibleTable,
|
|
110
|
+
}
|
|
111
|
+
|
|
112
|
+
const headItems = computed<UI_I_HeadItem[]>(() =>
|
|
113
|
+
tables[props.tableType].headItems(localization.value)
|
|
114
|
+
)
|
|
115
|
+
|
|
116
|
+
const bodyItems = ref<UI_I_BodyItem[][]>([])
|
|
117
|
+
watch(
|
|
118
|
+
() => props.dataTable,
|
|
119
|
+
(newValue) => {
|
|
120
|
+
if (!newValue?.length) {
|
|
121
|
+
bodyItems.value = []
|
|
122
|
+
return
|
|
123
|
+
}
|
|
124
|
+
|
|
125
|
+
bodyItems.value = tables[props.tableType].bodyItems(newValue)
|
|
126
|
+
},
|
|
127
|
+
{ deep: true, immediate: true }
|
|
128
|
+
)
|
|
129
|
+
</script>
|
|
130
|
+
|
|
131
|
+
<style lang="scss" scoped>
|
|
132
|
+
.data-table-view {
|
|
133
|
+
height: inherit;
|
|
134
|
+
.data-table {
|
|
135
|
+
height: inherit;
|
|
136
|
+
:deep(.datagrid-outer-wrapper) {
|
|
137
|
+
height: inherit;
|
|
138
|
+
}
|
|
139
|
+
}
|
|
140
|
+
}
|
|
141
|
+
</style>
|
|
@@ -0,0 +1,62 @@
|
|
|
1
|
+
import type {
|
|
2
|
+
UI_I_HeadItem,
|
|
3
|
+
UI_I_BodyItem,
|
|
4
|
+
} from '~/node_modules/bfg-common/components/atoms/table/dataGrid/lib/models/interfaces'
|
|
5
|
+
import type { UI_I_Localization } from '~/node_modules/bfg-common/lib/models/interfaces'
|
|
6
|
+
import {
|
|
7
|
+
hostIconByState,
|
|
8
|
+
clusterIconByState,
|
|
9
|
+
} from '~/node_modules/bfg-common/components/common/lib/config/states'
|
|
10
|
+
import { constructHeadItem } from '~/node_modules/bfg-common/components/atoms/table/dataGrid/lib/utils/constructDataTable'
|
|
11
|
+
import type { I_CompatibleHostsTable } from '~/components/templates/inventory/actions/backup/storage/add/temp/nfs/accessibility/lib/models/interfaces'
|
|
12
|
+
import { compatibleHostsTableKeys } from '~/components/templates/inventory/actions/backup/storage/add/temp/nfs/accessibility/tablesView/lib/config/tableKeys'
|
|
13
|
+
|
|
14
|
+
const getItems = (
|
|
15
|
+
localization: UI_I_Localization
|
|
16
|
+
): [string, boolean, string, string][] => {
|
|
17
|
+
return [
|
|
18
|
+
[localization.common.host, true, '300px', compatibleHostsTableKeys[0]],
|
|
19
|
+
[localization.common.cluster, true, '300px', compatibleHostsTableKeys[1]],
|
|
20
|
+
]
|
|
21
|
+
}
|
|
22
|
+
|
|
23
|
+
export const headItems = (localization: UI_I_Localization): UI_I_HeadItem[] => {
|
|
24
|
+
const result: UI_I_HeadItem[] = []
|
|
25
|
+
getItems(localization).forEach((item) => {
|
|
26
|
+
result.push(constructHeadItem('icon', item[0], item[3], false, item[2]))
|
|
27
|
+
})
|
|
28
|
+
return result
|
|
29
|
+
}
|
|
30
|
+
|
|
31
|
+
export const bodyItems = (
|
|
32
|
+
data: I_CompatibleHostsTable[]
|
|
33
|
+
): UI_I_BodyItem[][] => {
|
|
34
|
+
const bodyItems: UI_I_BodyItem[][] = []
|
|
35
|
+
data.forEach((item: I_CompatibleHostsTable) => {
|
|
36
|
+
const hostData = {
|
|
37
|
+
// @ts-ignore
|
|
38
|
+
iconClassName: `vsphere-icon-${hostIconByState[item.state]}`,
|
|
39
|
+
}
|
|
40
|
+
const clusterData = {
|
|
41
|
+
iconClassName: `vsphere-icon-${clusterIconByState[1]}`,
|
|
42
|
+
}
|
|
43
|
+
|
|
44
|
+
bodyItems.push([
|
|
45
|
+
{
|
|
46
|
+
key: 'icon',
|
|
47
|
+
text: item[compatibleHostsTableKeys[0]],
|
|
48
|
+
data: hostData,
|
|
49
|
+
id: item.id,
|
|
50
|
+
testId: `host-table-item-${item.host}`,
|
|
51
|
+
},
|
|
52
|
+
{
|
|
53
|
+
key: 'icon',
|
|
54
|
+
text: item[compatibleHostsTableKeys[1]],
|
|
55
|
+
data: clusterData,
|
|
56
|
+
id: item.id,
|
|
57
|
+
testId: `host-table-item-${item.host}`,
|
|
58
|
+
},
|
|
59
|
+
])
|
|
60
|
+
})
|
|
61
|
+
return bodyItems
|
|
62
|
+
}
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
import type { API_UI_I_DataTable } from '~/node_modules/bfg-common/lib/models/table/interfaces'
|
|
2
|
+
import type {
|
|
3
|
+
I_CompatibleHostsTable,
|
|
4
|
+
I_IncompatibleHostsTable,
|
|
5
|
+
} from '~/components/templates/inventory/actions/backup/storage/add/temp/nfs/accessibility/lib/models/interfaces'
|
|
6
|
+
import type { T_HostsAccessibilityTab } from '~/components/templates/inventory/actions/backup/storage/add/temp/nfs/accessibility/lib/models/types'
|
|
7
|
+
|
|
8
|
+
const compatibleHostsTable: API_UI_I_DataTable<I_CompatibleHostsTable[]> = {
|
|
9
|
+
items: [],
|
|
10
|
+
total_items: 5,
|
|
11
|
+
total_pages: 1,
|
|
12
|
+
}
|
|
13
|
+
const incompatibleHostsTable: API_UI_I_DataTable<I_IncompatibleHostsTable[]> = {
|
|
14
|
+
items: [],
|
|
15
|
+
total_items: 0,
|
|
16
|
+
total_pages: 1,
|
|
17
|
+
}
|
|
18
|
+
|
|
19
|
+
export { incompatibleHostsTable, compatibleHostsTable }
|
|
20
|
+
export const hostsAccessibilityTablesFunc = (type: T_HostsAccessibilityTab) => {
|
|
21
|
+
const hostItems = {
|
|
22
|
+
'compatible-hosts': compatibleHostsTable,
|
|
23
|
+
'incompatible-hosts': incompatibleHostsTable,
|
|
24
|
+
}
|
|
25
|
+
|
|
26
|
+
return hostItems[type]
|
|
27
|
+
}
|
|
@@ -0,0 +1,68 @@
|
|
|
1
|
+
import type {
|
|
2
|
+
UI_I_HeadItem,
|
|
3
|
+
UI_I_BodyItem,
|
|
4
|
+
} from '~/node_modules/bfg-common/components/atoms/table/dataGrid/lib/models/interfaces'
|
|
5
|
+
import type { UI_I_Localization } from '~/node_modules/bfg-common/lib/models/interfaces'
|
|
6
|
+
import { E_NodeIconsByState } from '~/node_modules/bfg-common/lib/models/enums'
|
|
7
|
+
import { constructHeadItem } from '~/node_modules/bfg-common/components/atoms/table/dataGrid/lib/utils/constructDataTable'
|
|
8
|
+
import type { I_IncompatibleHostsTable } from '~/components/templates/inventory/actions/backup/storage/add/temp/nfs/accessibility/lib/models/interfaces'
|
|
9
|
+
import { incompatibleHostsTableKeys } from '~/components/templates/inventory/actions/backup/storage/add/temp/nfs/accessibility/tablesView/lib/config/tableKeys'
|
|
10
|
+
|
|
11
|
+
const getItems = (
|
|
12
|
+
localization: UI_I_Localization
|
|
13
|
+
): [string, boolean, string, string][] => {
|
|
14
|
+
return [
|
|
15
|
+
[localization.common.host, true, 'auto', incompatibleHostsTableKeys[0]],
|
|
16
|
+
[
|
|
17
|
+
localization.common.hostIncompatibilityReason,
|
|
18
|
+
true,
|
|
19
|
+
'auto',
|
|
20
|
+
incompatibleHostsTableKeys[1],
|
|
21
|
+
],
|
|
22
|
+
[localization.common.cluster, true, 'auto', incompatibleHostsTableKeys[2]],
|
|
23
|
+
]
|
|
24
|
+
}
|
|
25
|
+
|
|
26
|
+
export const headItems = (localization: UI_I_Localization): UI_I_HeadItem[] => {
|
|
27
|
+
const result: UI_I_HeadItem[] = []
|
|
28
|
+
getItems(localization).forEach((item, i) => {
|
|
29
|
+
const col = i === 0 || i === 2 ? 'icon' : `col${i}`
|
|
30
|
+
result.push(constructHeadItem(col, item[0], item[3], false, item[2]))
|
|
31
|
+
})
|
|
32
|
+
return result
|
|
33
|
+
}
|
|
34
|
+
|
|
35
|
+
export const bodyItems = (
|
|
36
|
+
data: I_IncompatibleHostsTable[]
|
|
37
|
+
): UI_I_BodyItem[][] => {
|
|
38
|
+
const bodyItems: UI_I_BodyItem[][] = []
|
|
39
|
+
data.forEach((item: I_IncompatibleHostsTable, key) => {
|
|
40
|
+
const hostData = {
|
|
41
|
+
iconClassName: E_NodeIconsByState.host_Normal,
|
|
42
|
+
}
|
|
43
|
+
const clusterData = {
|
|
44
|
+
iconClassName: E_NodeIconsByState.host_Normal,
|
|
45
|
+
}
|
|
46
|
+
|
|
47
|
+
bodyItems.push([
|
|
48
|
+
{
|
|
49
|
+
key: 'icon',
|
|
50
|
+
text: item[incompatibleHostsTableKeys[0]],
|
|
51
|
+
data: hostData,
|
|
52
|
+
id: key,
|
|
53
|
+
},
|
|
54
|
+
{
|
|
55
|
+
key: 'col1',
|
|
56
|
+
text: item[incompatibleHostsTableKeys[1]],
|
|
57
|
+
id: key,
|
|
58
|
+
},
|
|
59
|
+
{
|
|
60
|
+
key: 'icon',
|
|
61
|
+
text: item[incompatibleHostsTableKeys[2]],
|
|
62
|
+
data: clusterData,
|
|
63
|
+
id: key,
|
|
64
|
+
},
|
|
65
|
+
])
|
|
66
|
+
})
|
|
67
|
+
return bodyItems
|
|
68
|
+
}
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
import type {
|
|
2
|
+
T_CompatibleHostsTableKeys,
|
|
3
|
+
T_IncompatibleHostsTableKeys,
|
|
4
|
+
} from '~/components/templates/inventory/actions/backup/storage/add/temp/nfs/accessibility/lib/models/types'
|
|
5
|
+
|
|
6
|
+
export const compatibleHostsTableKeys: T_CompatibleHostsTableKeys[] = [
|
|
7
|
+
'name',
|
|
8
|
+
'cluster',
|
|
9
|
+
]
|
|
10
|
+
|
|
11
|
+
export const incompatibleHostsTableKeys: T_IncompatibleHostsTableKeys[] = [
|
|
12
|
+
'name',
|
|
13
|
+
'cluster',
|
|
14
|
+
'host_incompatibility_reason',
|
|
15
|
+
]
|
|
@@ -10,7 +10,7 @@
|
|
|
10
10
|
|
|
11
11
|
<div class="clr-form-control clr-row flex flex-row">
|
|
12
12
|
<label for="datastore-name" class="clr-control-label clr-col-md-2">{{
|
|
13
|
-
|
|
13
|
+
localization.common.datastoreName
|
|
14
14
|
}}</label>
|
|
15
15
|
|
|
16
16
|
<div class="clr-control-container" :class="nameErrorText && 'clr-error'">
|
|
@@ -38,11 +38,13 @@
|
|
|
38
38
|
<script lang="ts" setup>
|
|
39
39
|
import type { UI_I_ValidationTouchResult } from '~/lib/models/plugins/validation/interfaces'
|
|
40
40
|
import type { UI_I_Localization } from '~/lib/models/interfaces'
|
|
41
|
-
import type {
|
|
41
|
+
import type { UI_T_Project } from '~/lib/models/types'
|
|
42
|
+
// import type { UI_I_FormValidationDataStore } from '~/components/common/wizards/datastore/add/sharedStorm/deviceSelection/lib/models/interfaces'
|
|
42
43
|
import { defaultFormFunc } from '~/components/common/backup/storage/actions/add/temp/local/createName/lib/config/defaultForm'
|
|
43
44
|
import { checkValidityName } from '~/components/common/backup/storage/actions/add/temp/lib/utils'
|
|
44
45
|
|
|
45
46
|
const props = defineProps<{
|
|
47
|
+
mode: UI_T_Project
|
|
46
48
|
localCreateNameSubmit: number
|
|
47
49
|
testId: string
|
|
48
50
|
}>()
|
|
@@ -102,7 +104,7 @@ const submit = async (): Promise<void> => {
|
|
|
102
104
|
if (name) {
|
|
103
105
|
emits('loading', true)
|
|
104
106
|
|
|
105
|
-
const { valid, msg } = await checkValidityName(name)
|
|
107
|
+
const { valid, msg } = await checkValidityName(name, props.mode)
|
|
106
108
|
|
|
107
109
|
emits('loading', false)
|
|
108
110
|
|
|
@@ -2,10 +2,10 @@
|
|
|
2
2
|
<div class="nfs-container flex flex-col h-full">
|
|
3
3
|
<span class="nfs-container__desc">{{ stepSubTitle }}</span>
|
|
4
4
|
|
|
5
|
-
<!-- <common-backup-storage-actions-add-temp-nfs-version-->
|
|
6
|
-
<!-- v-show="props.stepPosition === 1"-->
|
|
7
|
-
<!-- v-model:version="nfsVersion"-->
|
|
8
|
-
<!-- />-->
|
|
5
|
+
<!-- <common-backup-storage-actions-add-temp-nfs-version-->
|
|
6
|
+
<!-- v-show="props.stepPosition === 1"-->
|
|
7
|
+
<!-- v-model:version="nfsVersion"-->
|
|
8
|
+
<!-- />-->
|
|
9
9
|
|
|
10
10
|
<common-backup-storage-actions-add-temp-nfs-configuration
|
|
11
11
|
v-show="props.stepPosition === 1"
|
|
@@ -76,7 +76,7 @@ const stepSubTitle = computed<string>(() => {
|
|
|
76
76
|
// )
|
|
77
77
|
// })
|
|
78
78
|
const showHostAccessibility = computed<boolean>(() => {
|
|
79
|
-
return props.mode === 'sphere' && props.stepPosition ===
|
|
79
|
+
return props.mode === 'sphere' && props.stepPosition === 2
|
|
80
80
|
})
|
|
81
81
|
|
|
82
82
|
watch(nfsVersion, (newValue: UI_T_NfsType) => {
|
package/components/common/backup/storage/actions/add/temp/nfs/accessibility/lib/models/types.ts
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
export type T_HostsAccessibilityTab = 'compatible-hosts' | 'incompatible-hosts'
|
|
2
2
|
|
|
3
|
-
export type T_CompatibleHostsTableKeys = '
|
|
3
|
+
export type T_CompatibleHostsTableKeys = 'name' | 'cluster'
|
|
4
4
|
|
|
5
|
-
export type T_IncompatibleHostsTableKeys = '
|
|
5
|
+
export type T_IncompatibleHostsTableKeys = 'name' | 'cluster' | 'host_incompatibility_reason'
|
|
@@ -6,33 +6,7 @@ import type {
|
|
|
6
6
|
import type { T_HostsAccessibilityTab } from '~/components/common/backup/storage/actions/add/temp/nfs/accessibility/lib/models/types'
|
|
7
7
|
|
|
8
8
|
const compatibleHostsTable: API_UI_I_DataTable<I_CompatibleHostsTable[]> = {
|
|
9
|
-
items: [
|
|
10
|
-
{
|
|
11
|
-
id: 1,
|
|
12
|
-
host: 'esxi0.иридиум',
|
|
13
|
-
cluster: 'Cluster00',
|
|
14
|
-
},
|
|
15
|
-
{
|
|
16
|
-
id: 2,
|
|
17
|
-
host: ' esxi0.иридиум',
|
|
18
|
-
cluster: 'Cluster00',
|
|
19
|
-
},
|
|
20
|
-
{
|
|
21
|
-
id: 3,
|
|
22
|
-
host: 'esxi3.иридиум',
|
|
23
|
-
cluster: 'Cluster00',
|
|
24
|
-
},
|
|
25
|
-
{
|
|
26
|
-
id: 4,
|
|
27
|
-
host: 'esxi4.иридиум',
|
|
28
|
-
cluster: 'Cluster00',
|
|
29
|
-
},
|
|
30
|
-
{
|
|
31
|
-
id: 5,
|
|
32
|
-
host: 'esxi1.иридиум',
|
|
33
|
-
cluster: 'Cluster01',
|
|
34
|
-
},
|
|
35
|
-
],
|
|
9
|
+
items: [],
|
|
36
10
|
total_items: 5,
|
|
37
11
|
total_pages: 1,
|
|
38
12
|
}
|
|
@@ -4,12 +4,12 @@ import type {
|
|
|
4
4
|
} from '~/components/common/backup/storage/actions/add/temp/nfs/accessibility/lib/models/types'
|
|
5
5
|
|
|
6
6
|
export const compatibleHostsTableKeys: T_CompatibleHostsTableKeys[] = [
|
|
7
|
-
'
|
|
7
|
+
'name',
|
|
8
8
|
'cluster',
|
|
9
9
|
]
|
|
10
10
|
|
|
11
11
|
export const incompatibleHostsTableKeys: T_IncompatibleHostsTableKeys[] = [
|
|
12
|
-
'
|
|
12
|
+
'name',
|
|
13
13
|
'cluster',
|
|
14
14
|
'host_incompatibility_reason',
|
|
15
15
|
]
|
package/components/common/backup/storage/actions/add/temp/nfs/configuration/Configuration.vue
CHANGED
|
@@ -48,7 +48,7 @@
|
|
|
48
48
|
|
|
49
49
|
<div class="clr-form-control clr-row flex flex-row">
|
|
50
50
|
<label class="clr-control-label clr-col-md-2">{{
|
|
51
|
-
|
|
51
|
+
localization.common.folder
|
|
52
52
|
}}</label>
|
|
53
53
|
|
|
54
54
|
<div
|
|
@@ -178,7 +178,7 @@
|
|
|
178
178
|
|
|
179
179
|
<div v-if="false" class="clr-form-control clr-row mt-1 flex flex-row">
|
|
180
180
|
<label for="" class="clr-control-label clr-col-md-2">{{
|
|
181
|
-
|
|
181
|
+
localization.common.accessMode
|
|
182
182
|
}}</label>
|
|
183
183
|
|
|
184
184
|
<div class="clr-col-md-10 clr-col-12 clr-checkbox-wrapper">
|
|
@@ -189,7 +189,7 @@
|
|
|
189
189
|
type="checkbox"
|
|
190
190
|
/>
|
|
191
191
|
<label for="playback-compression" class="clr-control-label">{{
|
|
192
|
-
|
|
192
|
+
localization.common.mountNfsReadOnly
|
|
193
193
|
}}</label>
|
|
194
194
|
</div>
|
|
195
195
|
</div>
|
|
@@ -350,7 +350,7 @@ const dataServers = ref<UI_I_DataServersListItem[]>([])
|
|
|
350
350
|
// // if (nfsVersion === 'nfs-4.1') server.value = ''
|
|
351
351
|
// }
|
|
352
352
|
|
|
353
|
-
const alertInfo = ref<boolean>(
|
|
353
|
+
const alertInfo = ref<boolean>(true)
|
|
354
354
|
|
|
355
355
|
const resetValidation = (): void => {
|
|
356
356
|
isInitNameValidation.value =
|
|
@@ -72,7 +72,8 @@ const localDetailsFunc = (
|
|
|
72
72
|
items: [
|
|
73
73
|
{
|
|
74
74
|
label: localization.common.datastoreName,
|
|
75
|
-
value: isSphereWizard ? event.name : event,
|
|
75
|
+
// value: isSphereWizard ? event.name : event,
|
|
76
|
+
value: event.name || event,
|
|
76
77
|
items: [],
|
|
77
78
|
},
|
|
78
79
|
],
|
|
@@ -81,10 +82,18 @@ const localDetailsFunc = (
|
|
|
81
82
|
]
|
|
82
83
|
|
|
83
84
|
if (isSphereWizard) {
|
|
84
|
-
data
|
|
85
|
-
label: localization.common.
|
|
86
|
-
value:
|
|
87
|
-
items: [
|
|
85
|
+
data.push({
|
|
86
|
+
label: localization.common.hostsAccessibility,
|
|
87
|
+
value: '',
|
|
88
|
+
items: [
|
|
89
|
+
{
|
|
90
|
+
label: localization.common.hosts,
|
|
91
|
+
value: '',
|
|
92
|
+
data: event.hosts,
|
|
93
|
+
items: [],
|
|
94
|
+
},
|
|
95
|
+
],
|
|
96
|
+
actions: [],
|
|
88
97
|
})
|
|
89
98
|
}
|
|
90
99
|
return data
|
|
@@ -93,8 +102,9 @@ const localDetailsFunc = (
|
|
|
93
102
|
const sharedStormDetailsFunc = (
|
|
94
103
|
localization: UI_I_Localization,
|
|
95
104
|
event: any | string,
|
|
105
|
+
isSphereWizard: boolean
|
|
96
106
|
): UI_I_DetailsItem[] => {
|
|
97
|
-
|
|
107
|
+
const details: UI_I_DetailsItem[] = [
|
|
98
108
|
{
|
|
99
109
|
label: localization.common.selectName,
|
|
100
110
|
value: '',
|
|
@@ -112,7 +122,7 @@ const sharedStormDetailsFunc = (
|
|
|
112
122
|
value: '',
|
|
113
123
|
items: [
|
|
114
124
|
{
|
|
115
|
-
label: localization.
|
|
125
|
+
label: localization.datastoreWizard.storageName,
|
|
116
126
|
value: event.storm_name,
|
|
117
127
|
items: [],
|
|
118
128
|
},
|
|
@@ -120,6 +130,22 @@ const sharedStormDetailsFunc = (
|
|
|
120
130
|
actions: [],
|
|
121
131
|
},
|
|
122
132
|
]
|
|
133
|
+
if (isSphereWizard) {
|
|
134
|
+
details.push({
|
|
135
|
+
label: localization.common.hostsAccessibility,
|
|
136
|
+
value: '',
|
|
137
|
+
items: [
|
|
138
|
+
{
|
|
139
|
+
label: localization.common.hosts,
|
|
140
|
+
value: '',
|
|
141
|
+
data: event.hosts,
|
|
142
|
+
items: [],
|
|
143
|
+
},
|
|
144
|
+
],
|
|
145
|
+
actions: [],
|
|
146
|
+
})
|
|
147
|
+
}
|
|
148
|
+
return details
|
|
123
149
|
}
|
|
124
150
|
|
|
125
151
|
export const constructDataReadyViewFunc = <T>(
|
package/components/common/backup/storage/actions/add/temp/samba/accessibility/lib/models/types.ts
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
export type T_HostsAccessibilityTab = 'compatible-hosts' | 'incompatible-hosts'
|
|
2
2
|
|
|
3
|
-
export type T_CompatibleHostsTableKeys = '
|
|
3
|
+
export type T_CompatibleHostsTableKeys = 'name' | 'cluster'
|
|
4
4
|
|
|
5
|
-
export type T_IncompatibleHostsTableKeys = '
|
|
5
|
+
export type T_IncompatibleHostsTableKeys = 'name' | 'cluster' | 'host_incompatibility_reason'
|
|
@@ -4,12 +4,12 @@ import type {
|
|
|
4
4
|
} from '~/components/common/backup/storage/actions/add/temp/samba/accessibility/lib/models/types'
|
|
5
5
|
|
|
6
6
|
export const compatibleHostsTableKeys: T_CompatibleHostsTableKeys[] = [
|
|
7
|
-
'
|
|
7
|
+
'name',
|
|
8
8
|
'cluster',
|
|
9
9
|
]
|
|
10
10
|
|
|
11
11
|
export const incompatibleHostsTableKeys: T_IncompatibleHostsTableKeys[] = [
|
|
12
|
-
'
|
|
12
|
+
'name',
|
|
13
13
|
'cluster',
|
|
14
14
|
'host_incompatibility_reason',
|
|
15
15
|
]
|
package/components/common/backup/storage/actions/add/temp/samba/configuration/Configuration.vue
CHANGED
|
@@ -350,7 +350,7 @@ const accessMode = ref<boolean>(false)
|
|
|
350
350
|
// // if (nfsVersion === 'nfs-4.1') server.value = ''
|
|
351
351
|
// }
|
|
352
352
|
|
|
353
|
-
const alertInfo = ref<boolean>(
|
|
353
|
+
const alertInfo = ref<boolean>(true)
|
|
354
354
|
|
|
355
355
|
const resetValidation = (): void => {
|
|
356
356
|
isInitNameValidation.value =
|