bfg-common 1.3.594 → 1.3.595
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 +92 -78
- package/assets/localization/local_en.json +92 -78
- package/assets/localization/local_hy.json +92 -78
- package/assets/localization/local_kk.json +91 -78
- package/assets/localization/local_ru.json +95 -78
- package/assets/localization/local_zh.json +92 -78
- package/components/atoms/TheIcon2.vue +1366 -1366
- package/components/atoms/modal/bySteps/BySteps.vue +1 -1
- package/components/atoms/modal/byStepsSecond/ByStepsSecond.vue +1 -1
- package/components/atoms/table/dataGrid/DataGridPagination.vue +1 -1
- package/components/atoms/wizard/Wizard.vue +1 -1
- package/components/common/browse/Browse.vue +240 -240
- package/components/common/browse/blocks/Title.vue +91 -91
- package/components/common/browse/blocks/info/Date.vue +21 -21
- package/components/common/context/recursion/Recursion.vue +86 -86
- package/components/common/context/recursion/RecursionNew.vue +198 -198
- package/components/common/context/recursion/RecursionOld.vue +212 -212
- package/components/common/layout/theHeader/TheHeaderNew.vue +4 -5
- package/components/common/layout/theHeader/feedback/Feedback.vue +1 -1
- package/components/common/layout/theHeader/helpMenu/helpMenuNew/HelpMenuNew.vue +2 -37
- package/components/common/layout/theHeader/helpMenu/helpMenuNew/lib/config/dropMenu.ts +2 -5
- package/components/common/layout/theHeader/helpMenu/helpMenuOld/lib/config/dropMenu.ts +2 -2
- package/components/common/layout/theHeader/userMenu/modals/preferences/inventory/InventoryNew.vue +1 -1
- package/components/common/layout/theHeader/userMenu/modals/preferences/lib/config/preferencesTabs.ts +1 -1
- package/components/common/layout/theHeader/userMenu/userMenuNew/UserMenuNew.vue +2 -9
- package/components/common/monitor/advanced/Advanced.vue +4 -7
- package/components/common/monitor/advanced/tools/Tools.vue +4 -7
- package/components/common/monitor/advanced/tools/chartOptionsModal/ChartOptionsModal.vue +4 -15
- package/components/common/monitor/advanced/tools/chartOptionsModal/counters/Counters.vue +2 -3
- package/components/common/monitor/advanced/tools/chartOptionsModal/counters/table/lib/config/tableConfig.ts +1 -1
- package/components/common/monitor/advanced/tools/chartOptionsModal/counters/timespan/Timespan.vue +2 -3
- package/components/common/monitor/advanced/tools/chartOptionsModal/counters/timespan/object/Object.vue +12 -34
- package/components/common/monitor/advanced/tools/chartOptionsModal/lib/utils/checkSubmit.ts +3 -8
- package/components/common/pages/Tasks.vue +2 -2
- package/components/common/pages/hardwareHealth/tableView/lib/config/storageSensorTable.ts +1 -1
- package/components/common/pages/hardwareHealth/tableView/lib/config/systemLogTable.ts +1 -1
- package/components/common/shortcuts/Shortcuts.vue +1 -1
- package/components/common/split/horizontal/HorizontalNew.vue +321 -321
- package/components/common/vm/actions/common/customizeHardware/virtualHardware/browseView/BrowseView.vue +1 -1
- package/components/common/vm/actions/common/customizeHardware/virtualHardware/cpu/CpuModel.vue +2 -2
- package/components/common/vm/actions/common/customizeHardware/virtualHardware/cpu/Hv.vue +1 -1
- package/components/common/vm/actions/common/customizeHardware/virtualHardware/cpu/Sa.vue +1 -1
- package/components/common/vm/actions/common/customizeHardware/virtualHardware/cpu/tooltip/Tooltip.vue +1 -1
- package/components/common/wizards/datastore/add/Add.vue +437 -437
- package/components/common/wizards/datastore/add/nfs/configuration/Configuration.vue +2 -2
- package/components/common/wizards/datastore/add/readyComplete/ReadyComplete.vue +95 -95
- package/components/common/wizards/vm/migrate/select/targetServer/new/lib/config/defaultForm.ts +3 -3
- package/composables/productNameLocal.ts +40 -22
- package/lib/models/interfaces.ts +9 -3
- package/lib/models/types.ts +29 -13
- package/lib/utils/sendTask.ts +1 -1
- package/package.json +1 -1
- package/plugins/recursion.ts +293 -293
- package/store/tasks/mappers/recentTasks.ts +45 -45
|
@@ -90,9 +90,9 @@
|
|
|
90
90
|
>
|
|
91
91
|
<div class="flex-align-center input-action-wrapper">
|
|
92
92
|
<input
|
|
93
|
-
id="configuration-
|
|
93
|
+
id="configuration-folder-input"
|
|
94
94
|
v-model="form.server.value"
|
|
95
|
-
data-id="configuration-
|
|
95
|
+
data-id="configuration-folder-input"
|
|
96
96
|
type="text"
|
|
97
97
|
class="clr-input"
|
|
98
98
|
@blur="onBlurInputServer"
|
|
@@ -1,95 +1,95 @@
|
|
|
1
|
-
<template>
|
|
2
|
-
<div class="ready-complete">
|
|
3
|
-
<div class="ready-complete__desc">{{ localization.readyCompleteDesc }}</div>
|
|
4
|
-
|
|
5
|
-
<common-details-list :items="properties" class="ready-complete__list list">
|
|
6
|
-
<template #default="{ item }">
|
|
7
|
-
<common-details-item
|
|
8
|
-
:has-children="true"
|
|
9
|
-
:test-id="item.testId"
|
|
10
|
-
open-by-default
|
|
11
|
-
>
|
|
12
|
-
<template #stackBlockKey>
|
|
13
|
-
<span class="list__labels">
|
|
14
|
-
{{ localization.chosenDatastoreName }}
|
|
15
|
-
</span>
|
|
16
|
-
</template>
|
|
17
|
-
|
|
18
|
-
<template #stackChildren>
|
|
19
|
-
<template
|
|
20
|
-
v-for="(item2, key2) in item.items"
|
|
21
|
-
:key="`${item2}_${key2}`"
|
|
22
|
-
>
|
|
23
|
-
<common-details-item
|
|
24
|
-
:has-children="false"
|
|
25
|
-
:test-id="item2.testId"
|
|
26
|
-
class="list__default-style"
|
|
27
|
-
>
|
|
28
|
-
<template #stackBlockKey>
|
|
29
|
-
<div>
|
|
30
|
-
{{ item2.label }}
|
|
31
|
-
</div>
|
|
32
|
-
</template>
|
|
33
|
-
<template #stackBlockContent>
|
|
34
|
-
<div v-if="item2.data">
|
|
35
|
-
<div
|
|
36
|
-
v-for="item3 in item2.data"
|
|
37
|
-
:key="item3"
|
|
38
|
-
class="flex-align-center"
|
|
39
|
-
>
|
|
40
|
-
<div class="vsphere-icon-host"></div>
|
|
41
|
-
<span>{{ item3 }}</span>
|
|
42
|
-
</div>
|
|
43
|
-
</div>
|
|
44
|
-
<span v-else>
|
|
45
|
-
{{ item2.value }}
|
|
46
|
-
</span>
|
|
47
|
-
</template>
|
|
48
|
-
</common-details-item>
|
|
49
|
-
</template>
|
|
50
|
-
</template>
|
|
51
|
-
</common-details-item>
|
|
52
|
-
</template>
|
|
53
|
-
</common-details-list>
|
|
54
|
-
</div>
|
|
55
|
-
</template>
|
|
56
|
-
|
|
57
|
-
<script lang="ts" setup>
|
|
58
|
-
import { UI_I_DetailsItem } from '~/components/common/details/lib/models/interfaces'
|
|
59
|
-
import { UI_I_Localization } from '~/lib/models/interfaces'
|
|
60
|
-
|
|
61
|
-
const props = defineProps<{
|
|
62
|
-
dataReadyView: UI_I_DetailsItem[]
|
|
63
|
-
}>()
|
|
64
|
-
// console.log(props)
|
|
65
|
-
|
|
66
|
-
const localization = computed<UI_I_Localization>(() => useLocal())
|
|
67
|
-
|
|
68
|
-
const properties = computed<UI_I_DetailsItem[]>(() => props.dataReadyView)
|
|
69
|
-
</script>
|
|
70
|
-
|
|
71
|
-
<style lang="scss" scoped>
|
|
72
|
-
@import '~/assets/scss/common/mixins.scss';
|
|
73
|
-
.ready-complete {
|
|
74
|
-
&__list {
|
|
75
|
-
@include flex($dir: column);
|
|
76
|
-
padding: 12px 0;
|
|
77
|
-
row-gap: 15px;
|
|
78
|
-
}
|
|
79
|
-
}
|
|
80
|
-
.list {
|
|
81
|
-
&__labels {
|
|
82
|
-
@include text($fs: 13px, $fw: 700);
|
|
83
|
-
}
|
|
84
|
-
:deep(.list__default-style) {
|
|
85
|
-
.stack-block {
|
|
86
|
-
&__label {
|
|
87
|
-
align-items: flex-start;
|
|
88
|
-
}
|
|
89
|
-
&-content {
|
|
90
|
-
white-space: pre-line;
|
|
91
|
-
}
|
|
92
|
-
}
|
|
93
|
-
}
|
|
94
|
-
}
|
|
95
|
-
</style>
|
|
1
|
+
<template>
|
|
2
|
+
<div class="ready-complete">
|
|
3
|
+
<div class="ready-complete__desc">{{ localization.readyCompleteDesc }}</div>
|
|
4
|
+
|
|
5
|
+
<common-details-list :items="properties" class="ready-complete__list list">
|
|
6
|
+
<template #default="{ item }">
|
|
7
|
+
<common-details-item
|
|
8
|
+
:has-children="true"
|
|
9
|
+
:test-id="item.testId"
|
|
10
|
+
open-by-default
|
|
11
|
+
>
|
|
12
|
+
<template #stackBlockKey>
|
|
13
|
+
<span class="list__labels">
|
|
14
|
+
{{ localization.chosenDatastoreName }}
|
|
15
|
+
</span>
|
|
16
|
+
</template>
|
|
17
|
+
|
|
18
|
+
<template #stackChildren>
|
|
19
|
+
<template
|
|
20
|
+
v-for="(item2, key2) in item.items"
|
|
21
|
+
:key="`${item2}_${key2}`"
|
|
22
|
+
>
|
|
23
|
+
<common-details-item
|
|
24
|
+
:has-children="false"
|
|
25
|
+
:test-id="item2.testId"
|
|
26
|
+
class="list__default-style"
|
|
27
|
+
>
|
|
28
|
+
<template #stackBlockKey>
|
|
29
|
+
<div>
|
|
30
|
+
{{ item2.label }}
|
|
31
|
+
</div>
|
|
32
|
+
</template>
|
|
33
|
+
<template #stackBlockContent>
|
|
34
|
+
<div v-if="item2.data">
|
|
35
|
+
<div
|
|
36
|
+
v-for="item3 in item2.data"
|
|
37
|
+
:key="item3"
|
|
38
|
+
class="flex-align-center"
|
|
39
|
+
>
|
|
40
|
+
<div class="vsphere-icon-host"></div>
|
|
41
|
+
<span>{{ item3 }}</span>
|
|
42
|
+
</div>
|
|
43
|
+
</div>
|
|
44
|
+
<span v-else>
|
|
45
|
+
{{ item2.value }}
|
|
46
|
+
</span>
|
|
47
|
+
</template>
|
|
48
|
+
</common-details-item>
|
|
49
|
+
</template>
|
|
50
|
+
</template>
|
|
51
|
+
</common-details-item>
|
|
52
|
+
</template>
|
|
53
|
+
</common-details-list>
|
|
54
|
+
</div>
|
|
55
|
+
</template>
|
|
56
|
+
|
|
57
|
+
<script lang="ts" setup>
|
|
58
|
+
import { UI_I_DetailsItem } from '~/components/common/details/lib/models/interfaces'
|
|
59
|
+
import { UI_I_Localization } from '~/lib/models/interfaces'
|
|
60
|
+
|
|
61
|
+
const props = defineProps<{
|
|
62
|
+
dataReadyView: UI_I_DetailsItem[]
|
|
63
|
+
}>()
|
|
64
|
+
// console.log(props)
|
|
65
|
+
|
|
66
|
+
const localization = computed<UI_I_Localization>(() => useLocal())
|
|
67
|
+
|
|
68
|
+
const properties = computed<UI_I_DetailsItem[]>(() => props.dataReadyView)
|
|
69
|
+
</script>
|
|
70
|
+
|
|
71
|
+
<style lang="scss" scoped>
|
|
72
|
+
@import '~/assets/scss/common/mixins.scss';
|
|
73
|
+
.ready-complete {
|
|
74
|
+
&__list {
|
|
75
|
+
@include flex($dir: column);
|
|
76
|
+
padding: 12px 0;
|
|
77
|
+
row-gap: 15px;
|
|
78
|
+
}
|
|
79
|
+
}
|
|
80
|
+
.list {
|
|
81
|
+
&__labels {
|
|
82
|
+
@include text($fs: 13px, $fw: 700);
|
|
83
|
+
}
|
|
84
|
+
:deep(.list__default-style) {
|
|
85
|
+
.stack-block {
|
|
86
|
+
&__label {
|
|
87
|
+
align-items: flex-start;
|
|
88
|
+
}
|
|
89
|
+
&-content {
|
|
90
|
+
white-space: pre-line;
|
|
91
|
+
}
|
|
92
|
+
}
|
|
93
|
+
}
|
|
94
|
+
}
|
|
95
|
+
</style>
|
package/components/common/wizards/vm/migrate/select/targetServer/new/lib/config/defaultForm.ts
CHANGED
|
@@ -7,7 +7,7 @@ export const defaultFormFunc = (localization: UI_I_Localization): any => {
|
|
|
7
7
|
validations: [
|
|
8
8
|
{
|
|
9
9
|
value: 'required',
|
|
10
|
-
errorText: localization.fieldRequired,
|
|
10
|
+
errorText: localization.common.fieldRequired,
|
|
11
11
|
},
|
|
12
12
|
],
|
|
13
13
|
},
|
|
@@ -16,7 +16,7 @@ export const defaultFormFunc = (localization: UI_I_Localization): any => {
|
|
|
16
16
|
validations: [
|
|
17
17
|
{
|
|
18
18
|
value: 'required',
|
|
19
|
-
errorText: localization.fieldRequired,
|
|
19
|
+
errorText: localization.common.fieldRequired,
|
|
20
20
|
},
|
|
21
21
|
],
|
|
22
22
|
},
|
|
@@ -25,7 +25,7 @@ export const defaultFormFunc = (localization: UI_I_Localization): any => {
|
|
|
25
25
|
validations: [
|
|
26
26
|
{
|
|
27
27
|
value: 'required',
|
|
28
|
-
errorText: localization.fieldRequired,
|
|
28
|
+
errorText: localization.common.fieldRequired,
|
|
29
29
|
},
|
|
30
30
|
],
|
|
31
31
|
},
|
|
@@ -1,22 +1,40 @@
|
|
|
1
|
-
import type { UI_I_Localization } from '~/lib/models/interfaces'
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
const productName =
|
|
10
|
-
config.public.LOCALIZATION_CODE === 'ru'
|
|
11
|
-
? config.public.PRODUCT_NAME_RU
|
|
12
|
-
: config.public.PRODUCT_NAME_EN
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
1
|
+
import type { UI_I_Localization } from '~/lib/models/interfaces'
|
|
2
|
+
import type { UI_T_LanguageKey } from '~/lib/models/types'
|
|
3
|
+
|
|
4
|
+
export function productNameLocal(
|
|
5
|
+
localization: UI_I_Localization
|
|
6
|
+
): UI_I_Localization {
|
|
7
|
+
const config = useRuntimeConfig()
|
|
8
|
+
|
|
9
|
+
const productName =
|
|
10
|
+
config.public.LOCALIZATION_CODE === 'ru'
|
|
11
|
+
? config.public.PRODUCT_NAME_RU
|
|
12
|
+
: config.public.PRODUCT_NAME_EN
|
|
13
|
+
|
|
14
|
+
return replaceProductNameRecursion(localization, productName)
|
|
15
|
+
}
|
|
16
|
+
|
|
17
|
+
const replaceProductNameRecursion = (
|
|
18
|
+
localization: UI_I_Localization,
|
|
19
|
+
productName: any
|
|
20
|
+
): UI_I_Localization => {
|
|
21
|
+
for (const key of Object.keys(localization)) {
|
|
22
|
+
const item = localization[key as UI_T_LanguageKey]
|
|
23
|
+
// TODO move to config
|
|
24
|
+
const localizationKeys = [
|
|
25
|
+
'common',
|
|
26
|
+
'auth',
|
|
27
|
+
'home',
|
|
28
|
+
'tasks',
|
|
29
|
+
'layout',
|
|
30
|
+
'mainNavigation'
|
|
31
|
+
]
|
|
32
|
+
if (localizationKeys.includes(key)) {
|
|
33
|
+
for (const key2 of Object.keys(item)) {
|
|
34
|
+
item[key2] = item[key2].replaceAll('{productName}', productName)
|
|
35
|
+
}
|
|
36
|
+
}
|
|
37
|
+
}
|
|
38
|
+
|
|
39
|
+
return localization
|
|
40
|
+
}
|
package/lib/models/interfaces.ts
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { UI_T_NotificationStatus } from '~/components/atoms/alert/lib/models/types'
|
|
1
|
+
import type { UI_T_NotificationStatus } from '~/components/atoms/alert/lib/models/types'
|
|
2
2
|
import { UI_E_State } from '~/lib/models/enums'
|
|
3
3
|
|
|
4
4
|
export interface UI_I_ItemView {
|
|
@@ -13,8 +13,14 @@ export interface UI_I_ArbitraryObject<T> {
|
|
|
13
13
|
[key: string]: T
|
|
14
14
|
}
|
|
15
15
|
|
|
16
|
-
export interface UI_I_Localization
|
|
17
|
-
|
|
16
|
+
export interface UI_I_Localization {
|
|
17
|
+
common: UI_I_ArbitraryObject<string>
|
|
18
|
+
auth: UI_I_ArbitraryObject<string>
|
|
19
|
+
home: UI_I_ArbitraryObject<string>
|
|
20
|
+
tasks: UI_I_ArbitraryObject<string>
|
|
21
|
+
layout: UI_I_ArbitraryObject<string>
|
|
22
|
+
mainNavigation: UI_I_ArbitraryObject<string>
|
|
23
|
+
}
|
|
18
24
|
export interface UI_I_SendTaskParams {
|
|
19
25
|
method: string
|
|
20
26
|
target: string
|
package/lib/models/types.ts
CHANGED
|
@@ -1,13 +1,29 @@
|
|
|
1
|
-
export type UI_T_Project = 'sphere' | 'procurator'
|
|
2
|
-
|
|
3
|
-
export type UI_T_Binary = 'KB' | 'MB' | 'GB' | 'TB' | 'PB' | 'EB' | 'ZB' | 'YB'
|
|
4
|
-
export type UI_T_BinaryLower =
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
| '
|
|
8
|
-
| '
|
|
9
|
-
| '
|
|
10
|
-
| '
|
|
11
|
-
| '
|
|
12
|
-
| '
|
|
13
|
-
|
|
1
|
+
export type UI_T_Project = 'sphere' | 'procurator'
|
|
2
|
+
|
|
3
|
+
export type UI_T_Binary = 'KB' | 'MB' | 'GB' | 'TB' | 'PB' | 'EB' | 'ZB' | 'YB'
|
|
4
|
+
export type UI_T_BinaryLower =
|
|
5
|
+
| 'kb'
|
|
6
|
+
| 'mb'
|
|
7
|
+
| 'gb'
|
|
8
|
+
| 'tb'
|
|
9
|
+
| 'pb'
|
|
10
|
+
| 'eb'
|
|
11
|
+
| 'zb'
|
|
12
|
+
| 'yb'
|
|
13
|
+
|
|
14
|
+
export type UI_T_LangValue =
|
|
15
|
+
| 'en_US'
|
|
16
|
+
| 'ru_RU'
|
|
17
|
+
| 'hy_AM'
|
|
18
|
+
| 'zh_CHS'
|
|
19
|
+
| 'kk_KZ'
|
|
20
|
+
| 'be_BY'
|
|
21
|
+
| 'BROWSER'
|
|
22
|
+
|
|
23
|
+
export type UI_T_LanguageKey =
|
|
24
|
+
| 'common'
|
|
25
|
+
| 'auth'
|
|
26
|
+
| 'home'
|
|
27
|
+
| 'tasks'
|
|
28
|
+
| 'layout'
|
|
29
|
+
| 'mainNavigation'
|
package/lib/utils/sendTask.ts
CHANGED
|
@@ -30,7 +30,7 @@ const showNotification = (message: UI_I_NotifyBodyMessage): void => {
|
|
|
30
30
|
}
|
|
31
31
|
const msgError: UI_I_NotifyBodyMessage = {
|
|
32
32
|
status: 'error',
|
|
33
|
-
title: localization.value.error,
|
|
33
|
+
title: localization.value.common.error,
|
|
34
34
|
desc: '',
|
|
35
35
|
}
|
|
36
36
|
const handleErrors = (error: Ref<API_UI_I_Error>): void => {
|