bfg-common 1.6.49 → 1.6.50
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 +255 -9
- package/assets/localization/local_en.json +264 -17
- package/assets/localization/local_hy.json +257 -11
- package/assets/localization/local_kk.json +255 -9
- package/assets/localization/local_ru.json +264 -18
- package/assets/localization/local_zh.json +255 -9
- package/assets/scss/common/global.scss +11 -0
- package/assets/scss/common/theme.scss +2 -2
- package/components/atoms/stack/StackBlock.vue +1 -1
- package/components/atoms/tooltip/TooltipError.vue +3 -0
- package/components/common/adapterManager/addAdapterModal/AddAdapterModalNew.vue +1 -1
- package/components/common/adapterManager/addAdapterWarningModal/AddAdapterWarningModalNew.vue +0 -1
- package/components/common/adapterManager/ui/table/adapters/AdaptersNew.vue +1 -0
- package/components/common/certificate/CertificateInfo.vue +7 -1
- package/components/common/configure/physicalAdapters/PhysicalAdapters.vue +6 -0
- package/components/common/configure/physicalAdapters/PhysicalAdaptersNew.vue +219 -192
- package/components/common/configure/physicalAdapters/PhysicalAdaptersOld.vue +6 -4
- package/components/common/configure/physicalAdapters/buttons/Buttons.vue +1 -0
- package/components/common/configure/physicalAdapters/modals/edit/Edit.vue +26 -1
- package/components/common/configure/physicalAdapters/modals/edit/EditNew.vue +30 -1
- package/components/common/configure/physicalAdapters/modals/edit/lib/models/interfaces.ts +5 -0
- package/components/common/configure/physicalAdapters/modals/edit/lib/validations/validations.ts +19 -0
- package/components/common/configure/physicalAdapters/tableView/TableViewNew.vue +12 -1
- package/components/common/configure/physicalAdapters/tableView/lib/config/physicalAdaptersTableConfigNew.ts +21 -21
- package/components/common/configure/physicalAdapters/tableView/lib/config/settings.ts +12 -5
- package/components/common/configure/physicalAdapters/tableView/lib/models/interfaces.ts +4 -1
- package/components/common/diagramMain/Diagram.vue +167 -85
- package/components/common/diagramMain/DiagramMain.vue +34 -10
- package/components/common/diagramMain/header/Header.vue +49 -0
- package/components/common/diagramMain/header/HeaderNew.vue +155 -0
- package/components/common/diagramMain/{Header.vue → header/HeaderOld.vue} +78 -67
- package/components/common/diagramMain/modals/Modals.vue +4 -0
- package/components/common/diagramMain/modals/editSettings/tabs/NetworkProperties.vue +2 -2
- package/components/common/diagramMain/modals/lib/config/diagramConfig.ts +43 -2
- package/components/common/diagramMain/modals/lib/config/index.ts +2 -1
- package/components/common/diagramMain/modals/lib/config/vmKernelAdapter.ts +1 -1
- package/components/common/diagramMain/modals/migrateVmkernelAdapter/MigrateVmkernelAdapter.vue +2 -2
- package/components/common/diagramMain/modals/migrateVmkernelAdapter/validations/common.ts +1 -1
- package/components/common/diagramMain/skeleton/Header.vue +31 -0
- package/components/common/diagramMain/skeleton/Switch.vue +75 -0
- package/components/common/layout/theHeader/ThemeSwitch.vue +1 -1
- package/components/common/layout/theHeader/modals/reconnect/New.vue +38 -30
- package/components/common/layout/theHeader/userMenu/modals/changePassword/New.vue +8 -9
- package/components/common/layout/theHeader/userMenu/modals/preferences/New.vue +4 -0
- package/components/common/layout/theHeader/userMenu/modals/preferences/Old.vue +9 -2
- package/components/common/layout/theHeader/userMenu/modals/preferences/changeLanguage/ChangeLanguage.vue +11 -7
- package/components/common/layout/theHeader/userMenu/modals/preferences/defaultConsole/DefaultConsole.vue +7 -1
- package/components/common/layout/theHeader/userMenu/modals/preferences/defaultConsole/lib/config/consoleOptions.ts +8 -5
- package/components/common/layout/theHeader/userMenu/modals/preferences/timeFormat/TimeFormat.vue +9 -5
- package/components/common/layout/theHeader/userMenu/modals/preferences/timeFormat/lib/config/formatOptions.ts +1 -1
- package/components/common/layout/theHeader/userMenu/modals/preferences/view/Old.vue +5 -9
- package/components/common/layout/theHeader/userMenu/modals/preferences/view/View.vue +9 -6
- package/components/common/mainNavigationPanel/MainNavigationPanelNew.vue +3 -1
- package/components/common/monitor/advanced/tools/Tools.vue +10 -9
- package/components/common/monitor/advanced/tools/chartOptionsModal/ChartOptionsModal.vue +16 -19
- package/components/common/monitor/advanced/tools/lib/config/advancedToolbar.ts +62 -9
- package/components/common/noDataProvided/NoDataProvidedNew.vue +1 -1
- package/components/common/pages/backups/modals/createBackup/datastores/tableView/new/lib/config/table.ts +4 -4
- package/components/common/pages/backups/modals/createBackup/datastores/tableView/old/lib/config/table.ts +4 -4
- package/components/common/pages/hardwareHealth/HardwareHealth.vue +4 -0
- package/components/common/pages/hardwareHealth/HardwareHealthNew.vue +12 -3
- package/components/common/pages/hardwareHealth/HardwareHealthOld.vue +3 -0
- package/components/common/pages/hardwareHealth/historyTestimony/Graph.vue +4 -4
- package/components/common/pages/hardwareHealth/historyTestimony/GraphNew.vue +4 -3
- package/components/common/pages/hardwareHealth/historyTestimony/GraphOld.vue +3 -2
- package/components/common/pages/hardwareHealth/historyTestimony/tools/Tools.vue +32 -8
- package/components/common/pages/hardwareHealth/historyTestimony/tools/ToolsNew.vue +11 -18
- package/components/common/pages/hardwareHealth/historyTestimony/tools/ToolsOld.vue +10 -19
- package/components/common/pages/hardwareHealth/historyTestimony/tools/chartOptionsModal/ChartOptionsModal.vue +19 -7
- package/components/common/pages/hardwareHealth/historyTestimony/tools/chartOptionsModal/actions/ActionsNew.vue +1 -1
- package/components/common/pages/hardwareHealth/historyTestimony/tools/lib/config/toolbar.ts +68 -5
- package/components/common/pages/scheduledTasks/table/lib/models/enums.ts +9 -0
- package/components/common/pages/scheduledTasks/table/new/New.vue +12 -10
- package/components/common/pages/tasks/Tasks.vue +4 -1
- package/components/common/pages/tasks/table/Table.vue +25 -23
- package/components/common/readyToComplete/New.vue +1 -0
- package/components/common/split/vertical/New.vue +42 -8
- package/components/common/split/vertical/Old.vue +31 -2
- package/components/common/split/vertical/Vertical.vue +4 -0
- package/components/common/vm/actions/add/New.vue +21 -6
- package/components/common/vm/actions/common/customizeHardware/virtualHardware/cdDvdDrive/media/Media.vue +14 -1
- package/components/common/vm/actions/common/customizeHardware/virtualHardware/cdDvdDrive/media/New.vue +5 -0
- package/components/common/vm/actions/common/customizeHardware/virtualHardware/cdDvdDrive/media/Old.vue +1 -0
- package/components/common/vm/actions/common/customizeHardware/virtualHardware/cpu/New.vue +1 -0
- package/components/common/vm/actions/common/customizeHardware/virtualHardware/reservation/New.vue +2 -0
- package/components/common/vm/actions/common/select/storage/new/lib/config/table.ts +13 -15
- package/components/common/vm/actions/confirm/Confirm.vue +3 -0
- package/components/common/vm/snapshots/DetailView.vue +6 -6
- package/components/common/wizards/datastore/add/New.vue +6 -0
- package/components/common/wizards/datastore/add/lib/config/steps.ts +1 -1
- package/components/common/wizards/datastore/add/steps/nameAndDevice/NameAndDeviceNew.vue +1 -1
- package/components/common/wizards/datastore/add/steps/nameAndDevice/advancedOptions/New.vue +1 -1
- package/components/common/wizards/network/add/Add.vue +13 -2
- package/components/common/wizards/network/add/AddNew.vue +22 -26
- package/components/common/wizards/network/add/lib/config/initialData.ts +6 -4
- package/components/common/wizards/network/add/lib/config/steps.ts +1 -1
- package/components/common/wizards/network/add/lib/models/interfaces.ts +1 -0
- package/components/common/wizards/network/add/lib/utils/utils.ts +1 -1
- package/components/common/wizards/network/add/steps/connectionSettings/ConnectionSettingsOld.vue +5 -1
- package/components/common/wizards/network/add/steps/ipFourSettings/IpFourSettingsNew.vue +2 -8
- package/components/common/wizards/network/add/steps/ipFourSettings/IpFourSettingsOld.vue +3 -0
- package/components/common/wizards/network/add/steps/portProperties/PortPropertiesNew.vue +2 -8
- package/components/common/wizards/network/add/steps/portProperties/PortPropertiesOld.vue +6 -2
- package/components/common/wizards/network/add/steps/selectTargetDevice/SelectTargetDeviceNew.vue +10 -3
- package/components/common/wizards/network/add/steps/selectTargetDevice/SelectTargetDeviceOld.vue +4 -0
- package/components/common/wizards/network/add/steps/selectTargetDevice/modals/new/SelectNetwork.vue +5 -1
- package/components/common/wizards/network/add/validations/common.ts +1 -1
- package/components/common/wizards/vm/migrate/New.vue +13 -3
- package/components/common/wizards/vm/migrate/lib/config/constructDataReady.ts +5 -0
- package/components/common/wizards/vm/migrate/lib/config/steps.ts +3 -2
- package/components/common/wizards/vm/migrate/steps/computeResource/New.vue +2 -1
- package/components/common/wizards/vm/migrate/steps/computeResource/tableView/new/New.vue +40 -21
- package/components/common/wizards/vm/migrate/steps/computeResource/tableView/new/lib/config/clusterTable.ts +340 -0
- package/components/common/wizards/vm/migrate/steps/computeResource/tableView/new/lib/config/hostTable.ts +44 -14
- package/components/common/wizards/vm/migrate/steps/computeResource/tableView/new/lib/models/enums.ts +4 -0
- package/components/common/wizards/vm/migrate/steps/priority/New.vue +7 -2
- package/components/common/wizards/vm/migrate/steps/selectStorage/New.vue +22 -7
- package/components/common/wizards/vm/migrate/steps/selectStorage/configure/batch/New.vue +6 -0
- package/components/common/wizards/vm/migrate/steps/selectStorage/configure/batch/table/new/New.vue +4 -1
- package/components/common/wizards/vm/migrate/steps/selectStorage/configure/batch/table/new/lib/config/datastoreTable.ts +12 -16
- package/components/common/wizards/vm/migrate/steps/selectStorage/configure/disk/table/new/New.vue +10 -5
- package/components/common/wizards/vm/migrate/steps/selectStorage/configure/disk/table/new/lib/config/diskTable.ts +16 -11
- package/components/common/wizards/vm/migrate/steps/selectStorage/configure/disk/table/old/lib/config/diskTable.ts +7 -1
- package/components/common/wizards/vm/migrate/steps/selectStorage/selectedPerDisk/New.vue +17 -10
- package/components/common/wizards/vm/migrate/steps/type/TypeNew.vue +1 -0
- package/components/common/wizards/vm/migrate/vmOrigin/New.vue +35 -15
- package/lib/models/store/tasks/enums.ts +3 -0
- package/lib/models/store/tasks/types.ts +7 -6
- package/package.json +2 -2
- package/plugins/directives.ts +3 -5
- package/public/spice-console/application/agent.js +18 -17
- package/store/tasks/actions.ts +26 -8
- package/store/tasks/mappers/recentTasks.ts +1 -0
- package/components/common/pages/hardwareHealth/historyTestimony/tools/chartOptionsModal/actions/SaveOptionsModal.vue +0 -81
|
@@ -0,0 +1,75 @@
|
|
|
1
|
+
<template>
|
|
2
|
+
<div class="diagram-skeleton">
|
|
3
|
+
<div class="diagram-skeleton-item-header">
|
|
4
|
+
<div class="diagram-skeleton-item-header-icon">
|
|
5
|
+
<ui-icon
|
|
6
|
+
class="diagram-skeleton-item-header-icon-arrow"
|
|
7
|
+
name="arrow"
|
|
8
|
+
width="20"
|
|
9
|
+
height="20"
|
|
10
|
+
/>
|
|
11
|
+
</div>
|
|
12
|
+
<ui-skeleton-item width="160" height="20" />
|
|
13
|
+
<div class="diagram-skeleton-item-header-line"></div>
|
|
14
|
+
<ui-skeleton-item width="400" height="20" />
|
|
15
|
+
</div>
|
|
16
|
+
<div class="diagram-skeleton-container">
|
|
17
|
+
<ui-skeleton-switch width="712" />
|
|
18
|
+
</div>
|
|
19
|
+
<div class="diagram-skeleton-footer">
|
|
20
|
+
<ui-skeleton-item width="80" height="20" />
|
|
21
|
+
</div>
|
|
22
|
+
</div>
|
|
23
|
+
</template>
|
|
24
|
+
|
|
25
|
+
<script setup lang="ts"></script>
|
|
26
|
+
|
|
27
|
+
<style scoped lang="scss">
|
|
28
|
+
.diagram-skeleton {
|
|
29
|
+
margin: 0 16px 16px;
|
|
30
|
+
border-radius: 8px;
|
|
31
|
+
background: var(--diagram-container-bg);
|
|
32
|
+
box-shadow: 0 1px 4px 0 #00000014;
|
|
33
|
+
padding: 16px;
|
|
34
|
+
overflow-clip-margin: content-box;
|
|
35
|
+
overflow: clip;
|
|
36
|
+
|
|
37
|
+
&-item-header {
|
|
38
|
+
display: flex;
|
|
39
|
+
column-gap: 16px;
|
|
40
|
+
|
|
41
|
+
&-icon {
|
|
42
|
+
width: 20px;
|
|
43
|
+
height: 20px;
|
|
44
|
+
color: var(--select-arrow);
|
|
45
|
+
|
|
46
|
+
&-arrow {
|
|
47
|
+
transform: rotate(180deg);
|
|
48
|
+
margin-right: -4px;
|
|
49
|
+
}
|
|
50
|
+
}
|
|
51
|
+
|
|
52
|
+
&-line {
|
|
53
|
+
height: 20px;
|
|
54
|
+
border-left: 1px solid var(--horizontal-line);
|
|
55
|
+
}
|
|
56
|
+
}
|
|
57
|
+
|
|
58
|
+
&-container {
|
|
59
|
+
display: flex;
|
|
60
|
+
justify-content: center;
|
|
61
|
+
min-width: 759px;
|
|
62
|
+
padding: 48px 23.5px 24px 23.5px;
|
|
63
|
+
|
|
64
|
+
//:deep(svg) {
|
|
65
|
+
// padding: 22px 14.5px;
|
|
66
|
+
//}
|
|
67
|
+
}
|
|
68
|
+
|
|
69
|
+
&-footer {
|
|
70
|
+
padding-top: 16px;
|
|
71
|
+
display: flex;
|
|
72
|
+
justify-content: flex-end;
|
|
73
|
+
}
|
|
74
|
+
}
|
|
75
|
+
</style>
|
|
@@ -1,35 +1,37 @@
|
|
|
1
1
|
<template>
|
|
2
|
-
<
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
<
|
|
14
|
-
<div class="
|
|
15
|
-
<
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
2
|
+
<div class="reconnect-modal-container">
|
|
3
|
+
<ui-modal
|
|
4
|
+
:title="props.title"
|
|
5
|
+
:texts="modalTexts"
|
|
6
|
+
test-id="reconnect-modal"
|
|
7
|
+
size="sm"
|
|
8
|
+
width="560px"
|
|
9
|
+
show
|
|
10
|
+
@hide="emits('logout')"
|
|
11
|
+
@submit="emits('reconnect')"
|
|
12
|
+
>
|
|
13
|
+
<template #content>
|
|
14
|
+
<div class="reconnect-content">
|
|
15
|
+
<div class="icon-content flex items-center gap-2">
|
|
16
|
+
<span class="icon-sessions"></span>
|
|
17
|
+
<span class="description-text">{{
|
|
18
|
+
localization.common.reconnectDesc
|
|
19
|
+
}}</span>
|
|
20
|
+
</div>
|
|
21
|
+
<div class="timer-block mt-4">
|
|
22
|
+
<common-countdown-timer
|
|
23
|
+
:timer="props.timer"
|
|
24
|
+
:total-time="props.totalTime"
|
|
25
|
+
is-hide-seconds-text
|
|
26
|
+
/>
|
|
27
|
+
</div>
|
|
19
28
|
</div>
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
</div>
|
|
27
|
-
</div>
|
|
28
|
-
</template>
|
|
29
|
-
<template #footerLeftContent>
|
|
30
|
-
<span></span>
|
|
31
|
-
</template>
|
|
32
|
-
</ui-modal>
|
|
29
|
+
</template>
|
|
30
|
+
<template #footerLeftContent>
|
|
31
|
+
<span></span>
|
|
32
|
+
</template>
|
|
33
|
+
</ui-modal>
|
|
34
|
+
</div>
|
|
33
35
|
</template>
|
|
34
36
|
|
|
35
37
|
<script lang="ts" setup>
|
|
@@ -56,6 +58,12 @@ const modalTexts = ref<UI_I_ModalTexts>({
|
|
|
56
58
|
</script>
|
|
57
59
|
|
|
58
60
|
<style lang="scss" scoped>
|
|
61
|
+
.reconnect-modal-container {
|
|
62
|
+
:deep(.modal), :deep(.modal-background) {
|
|
63
|
+
z-index: calc(var(--z-modal) + 3);
|
|
64
|
+
}
|
|
65
|
+
}
|
|
66
|
+
|
|
59
67
|
.reconnect-content {
|
|
60
68
|
padding: 8px 32px 8px 32px;
|
|
61
69
|
|
|
@@ -107,24 +107,23 @@ const passwordErrorText = computed<string>(() => {
|
|
|
107
107
|
const newPasswordErrorText = computed<string>(() => {
|
|
108
108
|
if (!initValidationFields.value.newPassword) return ''
|
|
109
109
|
|
|
110
|
-
const { current_password, new_password, confirm_password } = modelLocal.value
|
|
110
|
+
// const { current_password, new_password, confirm_password } = modelLocal.value
|
|
111
|
+
const { current_password, new_password } = modelLocal.value
|
|
111
112
|
|
|
112
113
|
const validateText = validateField(
|
|
113
114
|
localization.value,
|
|
114
115
|
current_password,
|
|
115
116
|
new_password
|
|
116
117
|
)
|
|
117
|
-
const mismatchError = getPasswordMismatchError(
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
)
|
|
118
|
+
// const mismatchError = getPasswordMismatchError(
|
|
119
|
+
// localization.value,
|
|
120
|
+
// new_password,
|
|
121
|
+
// confirm_password
|
|
122
|
+
// )
|
|
122
123
|
if (!new_password) {
|
|
123
124
|
return localization.value.common.fieldRequired
|
|
124
125
|
} else if (validateText) {
|
|
125
126
|
return validateText
|
|
126
|
-
} else if (mismatchError) {
|
|
127
|
-
return mismatchError
|
|
128
127
|
} else return ''
|
|
129
128
|
})
|
|
130
129
|
const confirmPasswordErrorText = computed<string>(() => {
|
|
@@ -166,7 +165,7 @@ const onHideModal = (): void => {
|
|
|
166
165
|
color: #9da6ad;
|
|
167
166
|
font-size: 12px;
|
|
168
167
|
font-weight: 400;
|
|
169
|
-
line-height:
|
|
168
|
+
line-height: 18px;
|
|
170
169
|
margin-bottom: 20px;
|
|
171
170
|
}
|
|
172
171
|
&__alert {
|
|
@@ -15,6 +15,7 @@
|
|
|
15
15
|
<common-layout-the-header-user-menu-modals-preferences-time-format
|
|
16
16
|
v-model:time-format="timeFormat"
|
|
17
17
|
:new-view="props.newView"
|
|
18
|
+
:project="props.project"
|
|
18
19
|
/>
|
|
19
20
|
</ui-modal-block-form-standard>
|
|
20
21
|
|
|
@@ -23,6 +24,7 @@
|
|
|
23
24
|
:new-view="props.newView"
|
|
24
25
|
:selected-type="props.selectedLanguageType"
|
|
25
26
|
:selected-language="props.selectedLanguage"
|
|
27
|
+
:project="props.project"
|
|
26
28
|
@update-language="emits('update-language', $event)"
|
|
27
29
|
@update-is-browser="emits('update-is-browser', $event)"
|
|
28
30
|
/>
|
|
@@ -32,6 +34,7 @@
|
|
|
32
34
|
<common-layout-the-header-user-menu-modals-preferences-default-console
|
|
33
35
|
v-model="consoleValue"
|
|
34
36
|
:new-view="props.newView"
|
|
37
|
+
:project="props.project"
|
|
35
38
|
/>
|
|
36
39
|
</ui-modal-block-form-standard>
|
|
37
40
|
|
|
@@ -55,6 +58,7 @@
|
|
|
55
58
|
v-model:new-view-local="newViewLocal"
|
|
56
59
|
v-model:is-show-notification="isShowNotification"
|
|
57
60
|
:new-view="props.newView"
|
|
61
|
+
:project="props.project"
|
|
58
62
|
/>
|
|
59
63
|
</ui-modal-block-form-standard>
|
|
60
64
|
</ui-modal-block-standard>
|
|
@@ -19,6 +19,7 @@
|
|
|
19
19
|
v-if="selectedTab === 'time-tab'"
|
|
20
20
|
v-model:time-format="timeFormat"
|
|
21
21
|
:new-view="props.newView"
|
|
22
|
+
:project="props.project"
|
|
22
23
|
/>
|
|
23
24
|
|
|
24
25
|
<common-layout-the-header-user-menu-modals-preferences-change-language
|
|
@@ -26,6 +27,7 @@
|
|
|
26
27
|
:new-view="props.newView"
|
|
27
28
|
:selected-type="props.selectedLanguageType"
|
|
28
29
|
:selected-language="props.selectedLanguage"
|
|
30
|
+
:project="props.project"
|
|
29
31
|
@update-language="emits('update-language', $event)"
|
|
30
32
|
@update-is-browser="emits('update-is-browser', $event)"
|
|
31
33
|
/>
|
|
@@ -40,6 +42,7 @@
|
|
|
40
42
|
v-if="selectedTab === 'console-tab' && isSphere"
|
|
41
43
|
v-model="consoleValue"
|
|
42
44
|
:new-view="props.newView"
|
|
45
|
+
:project="props.project"
|
|
43
46
|
/>
|
|
44
47
|
|
|
45
48
|
<common-layout-the-header-user-menu-modals-preferences-security
|
|
@@ -146,8 +149,12 @@ const isOn2FaImportant = ref<boolean>(false)
|
|
|
146
149
|
watch(
|
|
147
150
|
topNotifications,
|
|
148
151
|
(newValue) => {
|
|
149
|
-
if (
|
|
150
|
-
|
|
152
|
+
if (
|
|
153
|
+
newValue === UI_E_TopNotificationActionId.on2Fa ||
|
|
154
|
+
newValue === UI_E_TopNotificationActionId.on2FaImportant
|
|
155
|
+
) {
|
|
156
|
+
isOn2FaImportant.value =
|
|
157
|
+
newValue === UI_E_TopNotificationActionId.on2FaImportant
|
|
151
158
|
selectedTab.value = 'security-tab'
|
|
152
159
|
$store.dispatch('main/A_SET_TOP_NOTIFICATION_ACTION_ID', -1)
|
|
153
160
|
}
|
|
@@ -11,7 +11,7 @@
|
|
|
11
11
|
|
|
12
12
|
<script setup lang="ts">
|
|
13
13
|
import type { UI_I_Dropdown } from '~/node_modules/bfg-uikit/components/ui/dropdown/models/interfaces'
|
|
14
|
-
import type { UI_T_LangValue } from '~/lib/models/types'
|
|
14
|
+
import type { UI_T_LangValue, UI_T_Project } from '~/lib/models/types'
|
|
15
15
|
import type { UI_T_SelectedRadio } from '~/components/common/layout/theHeader/userMenu/modals/preferences/changeLanguage/lib/models/types'
|
|
16
16
|
import type { UI_I_Localization } from '~/lib/models/interfaces'
|
|
17
17
|
import type { UI_I_RadioItemLang } from '~/components/common/layout/theHeader/userMenu/modals/preferences/changeLanguage/lib/models/interfaces'
|
|
@@ -24,6 +24,7 @@ import { defineBrowserLangFunc } from '~/components/common/layout/theHeader/lib/
|
|
|
24
24
|
const props = defineProps<{
|
|
25
25
|
newView: boolean
|
|
26
26
|
selectedType: UI_T_LangValue
|
|
27
|
+
project: UI_T_Project
|
|
27
28
|
selectedLanguage: UI_I_Dropdown | UI_T_LangValue
|
|
28
29
|
}>()
|
|
29
30
|
|
|
@@ -41,12 +42,15 @@ const currentComponent = computed(() =>
|
|
|
41
42
|
: defineAsyncComponent(() => import('./Old.vue'))
|
|
42
43
|
)
|
|
43
44
|
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
}
|
|
45
|
+
/* TODO SC-2104 */
|
|
46
|
+
const description = computed<string>(() =>
|
|
47
|
+
props.project === 'sphere'
|
|
48
|
+
? localization.value.common.languageDesc1
|
|
49
|
+
: localization.value.common.languageDesc.replaceAll(
|
|
50
|
+
'{trademark}',
|
|
51
|
+
String(config.public[`TRADEMARK_${useEnvLanguage()}`])
|
|
52
|
+
)
|
|
53
|
+
)
|
|
50
54
|
|
|
51
55
|
const radioOptions = readonly<UI_I_RadioItemLang[]>(
|
|
52
56
|
radioOptionsFunc(localization.value)
|
|
@@ -8,11 +8,13 @@
|
|
|
8
8
|
|
|
9
9
|
<script setup lang="ts">
|
|
10
10
|
import type { UI_I_Localization } from '~/lib/models/interfaces'
|
|
11
|
+
import type { UI_T_Project } from '~/lib/models/types'
|
|
11
12
|
import type { UI_I_RadioItemConsole } from '~/components/common/layout/theHeader/userMenu/modals/preferences/defaultConsole/lib/models/interfaces'
|
|
12
13
|
import { consoleOptionsFunc } from '~/components/common/layout/theHeader/userMenu/modals/preferences/defaultConsole/lib/config/consoleOptions'
|
|
13
14
|
|
|
14
15
|
const consoleValue = defineModel<string>()
|
|
15
16
|
const props = defineProps<{
|
|
17
|
+
project: UI_T_Project
|
|
16
18
|
newView: boolean
|
|
17
19
|
}>()
|
|
18
20
|
|
|
@@ -24,7 +26,11 @@ const currentComponent = computed(() =>
|
|
|
24
26
|
|
|
25
27
|
const localization = computed<UI_I_Localization>(() => useLocal())
|
|
26
28
|
|
|
29
|
+
/* TODO SC-2104 */
|
|
27
30
|
const consoleOptions = readonly<UI_I_RadioItemConsole[]>(
|
|
28
|
-
consoleOptionsFunc(
|
|
31
|
+
consoleOptionsFunc(
|
|
32
|
+
localization.value,
|
|
33
|
+
props.newView && props.project === 'sphere'
|
|
34
|
+
)
|
|
29
35
|
)
|
|
30
36
|
</script>
|
|
@@ -2,14 +2,17 @@ import type { UI_I_Localization } from '~/lib/models/interfaces'
|
|
|
2
2
|
import type { UI_I_RadioItemConsole } from '~/components/common/layout/theHeader/userMenu/modals/preferences/defaultConsole/lib/models/interfaces'
|
|
3
3
|
|
|
4
4
|
export const consoleOptionsFunc = (
|
|
5
|
-
localization: UI_I_Localization
|
|
5
|
+
localization: UI_I_Localization,
|
|
6
|
+
isSphereNewView: boolean
|
|
6
7
|
): UI_I_RadioItemConsole[] => {
|
|
7
8
|
const config = useRuntimeConfig()
|
|
8
9
|
|
|
9
|
-
const remoteConsole =
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
10
|
+
const remoteConsole = isSphereNewView
|
|
11
|
+
? localization.common.remoteConsoleVmrc1
|
|
12
|
+
: localization.common.remoteConsoleVmrc.replaceAll(
|
|
13
|
+
'{trademark}',
|
|
14
|
+
String(config.public[`TRADEMARK_${useEnvLanguage()}`])
|
|
15
|
+
)
|
|
13
16
|
|
|
14
17
|
return [
|
|
15
18
|
{
|
package/components/common/layout/theHeader/userMenu/modals/preferences/timeFormat/TimeFormat.vue
CHANGED
|
@@ -12,12 +12,13 @@ import type { UI_I_Localization } from '~/lib/models/interfaces'
|
|
|
12
12
|
import type { UI_I_RadioItem } from '~/components/common/layout/theHeader/userMenu/lib/models/interfaces'
|
|
13
13
|
import type { UI_T_TimeValue } from '~/components/common/layout/theHeader/userMenu/modals/preferences/timeFormat/lib/models/types'
|
|
14
14
|
import { formatOptionsFunc } from '~/components/common/layout/theHeader/userMenu/modals/preferences/timeFormat/lib/config/formatOptions'
|
|
15
|
+
import type { UI_T_Project } from '~/lib/models/types'
|
|
15
16
|
|
|
16
17
|
const timeFormat = defineModel<UI_T_TimeValue>('timeFormat')
|
|
17
18
|
const props = defineProps<{
|
|
19
|
+
project: UI_T_Project
|
|
18
20
|
newView: boolean
|
|
19
21
|
}>()
|
|
20
|
-
|
|
21
22
|
const currentComponent = computed(() =>
|
|
22
23
|
props.newView
|
|
23
24
|
? defineAsyncComponent(() => import('./New.vue'))
|
|
@@ -28,11 +29,14 @@ const localization = computed<UI_I_Localization>(() => useLocal())
|
|
|
28
29
|
|
|
29
30
|
const config = useRuntimeConfig()
|
|
30
31
|
|
|
32
|
+
/* TODO SC-2104 */
|
|
31
33
|
const description = computed<string>(() =>
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
34
|
+
props.project === 'sphere'
|
|
35
|
+
? localization.value.common.timeFormatDesc1
|
|
36
|
+
: localization.value.common.timeFormatDesc.replaceAll(
|
|
37
|
+
'{trademark}',
|
|
38
|
+
String(config.public[`TRADEMARK_${useEnvLanguage()}`])
|
|
39
|
+
)
|
|
36
40
|
)
|
|
37
41
|
|
|
38
42
|
const formatOptions = readonly<UI_I_RadioItem[]>(
|
|
@@ -15,13 +15,9 @@
|
|
|
15
15
|
/>
|
|
16
16
|
</div>
|
|
17
17
|
|
|
18
|
-
<div class="
|
|
19
|
-
{{ localization.myPreferences.showNotificationDescription }}
|
|
20
|
-
</div>
|
|
21
|
-
|
|
22
|
-
<div class="flex-align-center">
|
|
18
|
+
<div class="flex-align-center second-description">
|
|
23
19
|
<label for="show-notification">{{
|
|
24
|
-
localization.myPreferences.
|
|
20
|
+
localization.myPreferences.showNotificationDescription
|
|
25
21
|
}}</label>
|
|
26
22
|
<input
|
|
27
23
|
id="show-notification"
|
|
@@ -63,10 +59,10 @@ window.tools = new Proxy(
|
|
|
63
59
|
<style lang="scss" scoped>
|
|
64
60
|
.description {
|
|
65
61
|
margin-bottom: 10px;
|
|
62
|
+
}
|
|
66
63
|
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
}
|
|
64
|
+
.second-description {
|
|
65
|
+
margin-top: 20px;
|
|
70
66
|
}
|
|
71
67
|
|
|
72
68
|
label {
|
|
@@ -30,10 +30,13 @@ const currentComponent = computed(() =>
|
|
|
30
30
|
|
|
31
31
|
const localization = computed<UI_I_Localization>(() => useLocal())
|
|
32
32
|
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
}
|
|
33
|
+
/* TODO SC-2104 */
|
|
34
|
+
const description = computed<string>(() =>
|
|
35
|
+
props.project === 'sphere'
|
|
36
|
+
? localization.value.common.viewDesc1
|
|
37
|
+
: localization.value.common.viewDesc.replaceAll(
|
|
38
|
+
'{trademark}',
|
|
39
|
+
String(config.public[`TRADEMARK_${useEnvLanguage()}`])
|
|
40
|
+
)
|
|
41
|
+
)
|
|
39
42
|
</script>
|
|
@@ -143,7 +143,7 @@ const localization = computed<UI_I_Localization>(() => useLocal())
|
|
|
143
143
|
&.pinned {
|
|
144
144
|
.nav-context {
|
|
145
145
|
position: relative;
|
|
146
|
-
z-index: calc(var(--z-
|
|
146
|
+
z-index: calc(var(--z-fixed) + 2);
|
|
147
147
|
}
|
|
148
148
|
}
|
|
149
149
|
&:not(.pinned) {
|
|
@@ -177,6 +177,8 @@ const localization = computed<UI_I_Localization>(() => useLocal())
|
|
|
177
177
|
}
|
|
178
178
|
}
|
|
179
179
|
&:not(.collapsed) {
|
|
180
|
+
min-width: 240px;
|
|
181
|
+
|
|
180
182
|
:deep(.tooltip-container-hover) {
|
|
181
183
|
display: none;
|
|
182
184
|
}
|
|
@@ -114,6 +114,7 @@ import {
|
|
|
114
114
|
getCurrentOptionsStorageFunc,
|
|
115
115
|
periodFunc,
|
|
116
116
|
viewFunc,
|
|
117
|
+
getSelectedOptionsValueFromStorageFunc,
|
|
117
118
|
} from '~/components/common/monitor/advanced/tools/lib/config/advancedToolbar'
|
|
118
119
|
import { getValidDateByOptionFunc } from '~/components/common/monitor/lib/config/getValidDateByOption'
|
|
119
120
|
import { checkDateFunc } from '~/components/common/monitor/overview/filters/customIntervalModal/lib/config/dateChecker'
|
|
@@ -234,11 +235,10 @@ const selectedPeriod = computed<string>({
|
|
|
234
235
|
const updateTools = (): void => {
|
|
235
236
|
const periodValue = localSelectedTimespanType.value
|
|
236
237
|
const viewValue = selectedView.value
|
|
237
|
-
|
|
238
|
-
const selectedValue =
|
|
239
|
-
viewValue
|
|
240
|
-
|
|
241
|
-
prefix
|
|
238
|
+
|
|
239
|
+
const selectedValue = getSelectedOptionsValueFromStorageFunc(
|
|
240
|
+
viewValue,
|
|
241
|
+
props.project
|
|
242
242
|
)
|
|
243
243
|
|
|
244
244
|
const fields = selectedValue
|
|
@@ -278,7 +278,8 @@ const updateTools = (): void => {
|
|
|
278
278
|
periodType: periodValue,
|
|
279
279
|
view: viewValue,
|
|
280
280
|
}
|
|
281
|
-
if (selectedValue
|
|
281
|
+
if (selectedValue && selectedValue.metric)
|
|
282
|
+
tools.metricType = selectedValue.metric
|
|
282
283
|
|
|
283
284
|
emits('update-timespan-type', localSelectedTimespanType.value)
|
|
284
285
|
emits('update-tools', tools)
|
|
@@ -294,11 +295,11 @@ const chartTitleDate = computed<string>(() => {
|
|
|
294
295
|
|
|
295
296
|
const onDeleteOption = (): void => {
|
|
296
297
|
emits('delete-option')
|
|
297
|
-
optionsNames.value = getCurrentOptionsStorageFunc(
|
|
298
|
+
optionsNames.value = getCurrentOptionsStorageFunc(props.project)
|
|
298
299
|
}
|
|
299
300
|
|
|
300
301
|
const onSaveOptionName = (): void => {
|
|
301
|
-
optionsNames.value = getCurrentOptionsStorageFunc(
|
|
302
|
+
optionsNames.value = getCurrentOptionsStorageFunc(props.project)
|
|
302
303
|
}
|
|
303
304
|
|
|
304
305
|
const isShowModal = ref<boolean>()
|
|
@@ -308,7 +309,7 @@ watch(isShowModal, (newValue) => {
|
|
|
308
309
|
})
|
|
309
310
|
|
|
310
311
|
onMounted(() => {
|
|
311
|
-
optionsNames.value = getCurrentOptionsStorageFunc(
|
|
312
|
+
optionsNames.value = getCurrentOptionsStorageFunc(props.project)
|
|
312
313
|
updateTools()
|
|
313
314
|
})
|
|
314
315
|
</script>
|
|
@@ -116,11 +116,14 @@ import type { UI_I_OptionsForm } from '~/components/common/monitor/advanced/tool
|
|
|
116
116
|
import type { UI_I_ObjectItem } from '~/components/common/monitor/advanced/tools/chartOptionsModal/counters/timespan/object/lib/models/interfaces'
|
|
117
117
|
import type { UI_T_Project } from '~/lib/models/types'
|
|
118
118
|
import { metricsFunc } from '~/components/common/monitor/advanced/tools/chartOptionsModal/metrics/lib/config/optionsMetrics'
|
|
119
|
-
import {
|
|
119
|
+
import {
|
|
120
|
+
getCurrentOptionsStorageFunc,
|
|
121
|
+
removeSelectedOptionsFromStorageFunc,
|
|
122
|
+
getSelectedOptionsValueFromStorageFunc,
|
|
123
|
+
} from '~/components/common/monitor/advanced/tools/lib/config/advancedToolbar'
|
|
120
124
|
import { checkDateFunc } from '~/components/common/monitor/overview/filters/customIntervalModal/lib/config/dateChecker'
|
|
121
125
|
import { getValidDateByOptionFunc } from '~/components/common/monitor/lib/config/getValidDateByOption'
|
|
122
126
|
import { checkIsDisabledSubmit } from '~/components/common/monitor/advanced/tools/chartOptionsModal/lib/utils/checkSubmit'
|
|
123
|
-
import { getLocalStoragePrefix } from '~/composables/useLocalStorage'
|
|
124
127
|
|
|
125
128
|
const props = withDefaults(
|
|
126
129
|
defineProps<{
|
|
@@ -174,6 +177,7 @@ const { $store }: any = useNuxtApp()
|
|
|
174
177
|
const isNewView = computed<boolean>(() => $store.getters['main/getIsNewView'])
|
|
175
178
|
|
|
176
179
|
const routeType = '' + useRoute().params.type
|
|
180
|
+
const routeId = '' + useRoute().params.id
|
|
177
181
|
|
|
178
182
|
const localization = computed<UI_I_Localization>(() => useLocal())
|
|
179
183
|
|
|
@@ -447,6 +451,8 @@ const onSaveOptions = (name: string): void => {
|
|
|
447
451
|
counters,
|
|
448
452
|
metric: selectedMetricLocal.value,
|
|
449
453
|
objects: localSelectedObjects.value,
|
|
454
|
+
validShowName: name,
|
|
455
|
+
nodeId: routeId,
|
|
450
456
|
timespan: {
|
|
451
457
|
periodType: localPeriodType.value,
|
|
452
458
|
units: localCustomTime.value,
|
|
@@ -455,8 +461,8 @@ const onSaveOptions = (name: string): void => {
|
|
|
455
461
|
},
|
|
456
462
|
}
|
|
457
463
|
const prefix = props.project === 'sphere'
|
|
458
|
-
useLocalStorage(
|
|
459
|
-
optionsNames.value = getCurrentOptionsStorageFunc(
|
|
464
|
+
useLocalStorage(`ChartOptionsAdvanced${name}`, saveOptionsData, prefix)
|
|
465
|
+
optionsNames.value = getCurrentOptionsStorageFunc(props.project)
|
|
460
466
|
// localSelectedChartOptionName.value = name
|
|
461
467
|
emits('save-option-name')
|
|
462
468
|
}
|
|
@@ -483,18 +489,9 @@ const setDefaultOptions = (): void => {
|
|
|
483
489
|
}
|
|
484
490
|
|
|
485
491
|
const setCustomOptions = (name: string): void => {
|
|
486
|
-
|
|
487
|
-
|
|
488
|
-
|
|
489
|
-
currentStorageOptionName =
|
|
490
|
-
name.slice(0, name.indexOf(getLocalStoragePrefix())) +
|
|
491
|
-
'ChartOptions' +
|
|
492
|
-
name.slice(name.indexOf(getLocalStoragePrefix()))
|
|
493
|
-
}
|
|
494
|
-
const selectedValue = useLocalStorage(
|
|
495
|
-
currentStorageOptionName,
|
|
496
|
-
undefined,
|
|
497
|
-
false
|
|
492
|
+
const selectedValue = getSelectedOptionsValueFromStorageFunc(
|
|
493
|
+
name,
|
|
494
|
+
props.project
|
|
498
495
|
)
|
|
499
496
|
|
|
500
497
|
if (selectedValue.routeType !== routeType) return
|
|
@@ -540,8 +537,8 @@ watch(
|
|
|
540
537
|
)
|
|
541
538
|
|
|
542
539
|
const onDeleteChartName = (name: string): void => {
|
|
543
|
-
|
|
544
|
-
optionsNames.value = getCurrentOptionsStorageFunc(
|
|
540
|
+
removeSelectedOptionsFromStorageFunc(name, props.project)
|
|
541
|
+
optionsNames.value = getCurrentOptionsStorageFunc(props.project)
|
|
545
542
|
setSelectOptions()
|
|
546
543
|
emits('delete-option')
|
|
547
544
|
}
|
|
@@ -565,7 +562,7 @@ watch(
|
|
|
565
562
|
)
|
|
566
563
|
|
|
567
564
|
onMounted(() => {
|
|
568
|
-
optionsNames.value = getCurrentOptionsStorageFunc(
|
|
565
|
+
optionsNames.value = getCurrentOptionsStorageFunc(props.project)
|
|
569
566
|
})
|
|
570
567
|
</script>
|
|
571
568
|
|