bfg-common 1.4.651 → 1.4.652
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 +6 -1
- package/assets/localization/local_en.json +6 -1
- package/assets/localization/local_hy.json +6 -1
- package/assets/localization/local_kk.json +6 -1
- package/assets/localization/local_ru.json +6 -1
- package/assets/localization/local_zh.json +6 -1
- package/components/common/modals/unsavedChanges/UnsavedChanges.vue +56 -0
- package/components/common/monitor/resourceAllocation/resourceAllocation.vue +196 -196
- package/package.json +1 -1
|
@@ -2278,7 +2278,10 @@
|
|
|
2278
2278
|
"deleteNotesMessage": "Вы ўпэўненыя, што хочаце выдаліць нататкі з \"{vmName}\"?",
|
|
2279
2279
|
"passwordContainsInvalidCharacters": "Пароль змяшчае недапушчальныя сімвалы",
|
|
2280
2280
|
"fieldInvalidCharacters": "Гэта поле павінна ўтрымліваць ад 3 да 64 сімвалаў і можа ўключаць толькі лацінскія літары, лічбы і сімвалы \"_\", \"-\", '.'",
|
|
2281
|
-
"rowsPerPage": "Радкі на старонку"
|
|
2281
|
+
"rowsPerPage": "Радкі на старонку",
|
|
2282
|
+
"unsavedChanges": "Непавераныя змены!",
|
|
2283
|
+
"unsavedChangesDescription": "Вы ўпэўнены, што хочаце пакінуць гэтую старонку? Непакураны змены будуць страчаны.",
|
|
2284
|
+
"leave": "Пакідаць"
|
|
2282
2285
|
},
|
|
2283
2286
|
"auth": {
|
|
2284
2287
|
"welcomeTo": "Сардэчна запрашаем у",
|
|
@@ -2842,6 +2845,8 @@
|
|
|
2842
2845
|
"memoryMetrics": "Метрыкі памяці",
|
|
2843
2846
|
"networkMetrics": "Сеткавыя паказчыкі",
|
|
2844
2847
|
"diskMetrics": "Паказчыкі дыска",
|
|
2848
|
+
"storageMetrics": "Метрыкі захоўвання",
|
|
2849
|
+
"sensorsMetrics": "Метрыкі датчыкаў",
|
|
2845
2850
|
"vmCpuMetrics": "Метрыкі працэсара віртуальнай машыны",
|
|
2846
2851
|
"vmMemoryMetrics": "Метрыкі памяці віртуальнай машыны",
|
|
2847
2852
|
"vmNetworkMetrics": "Метрыкі сеткі віртуальнай машыны",
|
|
@@ -2282,7 +2282,10 @@
|
|
|
2282
2282
|
"deleteNotesMessage": "Are you sure you want to delete notes from \"{vmName}\"?",
|
|
2283
2283
|
"passwordContainsInvalidCharacters": "Password contains invalid characters",
|
|
2284
2284
|
"fieldInvalidCharacters": "This field must contain from 3 to 64 characters and can include only Latin letters, numbers, and symbols '_', '-', '.'",
|
|
2285
|
-
"rowsPerPage": "Rows per page"
|
|
2285
|
+
"rowsPerPage": "Rows per page",
|
|
2286
|
+
"unsavedChanges": "Unsaved Changes!",
|
|
2287
|
+
"unsavedChangesDescription": "Are you sure you want to leave this page? Unsaved changes will be lost.",
|
|
2288
|
+
"leave": "Leave"
|
|
2286
2289
|
},
|
|
2287
2290
|
"auth": {
|
|
2288
2291
|
"welcomeTo": "Welcome to",
|
|
@@ -2846,6 +2849,8 @@
|
|
|
2846
2849
|
"memoryMetrics": "Memory Metrics",
|
|
2847
2850
|
"networkMetrics": "Network Metrics",
|
|
2848
2851
|
"diskMetrics": "Disk Metrics",
|
|
2852
|
+
"storageMetrics": "Storage Metrics",
|
|
2853
|
+
"sensorsMetrics": "Sensors Metrics",
|
|
2849
2854
|
"vmCpuMetrics": "VM CPU Metrics",
|
|
2850
2855
|
"vmMemoryMetrics": "VM Memory Metrics",
|
|
2851
2856
|
"vmNetworkMetrics": "VM Network Metrics",
|
|
@@ -2282,7 +2282,10 @@
|
|
|
2282
2282
|
"deleteNotesMessage": "Համոզված եք, որ ցանկանում եք ջնջել գրառումները \"{vmName}\"-ից:",
|
|
2283
2283
|
"passwordContainsInvalidCharacters": "Գաղտնաբառը պարունակում է անվավեր նիշեր",
|
|
2284
2284
|
"fieldInvalidCharacters": "Այս դաշտը պետք է պարունակի 3-ից 64 նիշ եւ կարող է ներառել միայն լատինական տառեր, համարներ եւ խորհրդանիշներ «_», - «»:",
|
|
2285
|
-
"rowsPerPage": "Շարքեր մեկ էջում"
|
|
2285
|
+
"rowsPerPage": "Շարքեր մեկ էջում",
|
|
2286
|
+
"unsavedChanges": "Չհաստատված փոփոխություններ",
|
|
2287
|
+
"unsavedChangesDescription": "Համոզված եք, որ ցանկանում եք լքել այս էջը: Չպաշտպանված փոփոխությունները կկորչվեն:",
|
|
2288
|
+
"leave": "Հեռանալ"
|
|
2286
2289
|
},
|
|
2287
2290
|
"auth": {
|
|
2288
2291
|
"welcomeTo": "Բարի գալուստ",
|
|
@@ -2846,6 +2849,8 @@
|
|
|
2846
2849
|
"memoryMetrics": "Հիշողության չափումներ",
|
|
2847
2850
|
"networkMetrics": "Ցանցի չափումներ",
|
|
2848
2851
|
"diskMetrics": "Սկավառակի չափումներ",
|
|
2852
|
+
"storageMetrics": "Պահպանման չափումներ",
|
|
2853
|
+
"sensorsMetrics": "Սենսորների չափումներ",
|
|
2849
2854
|
"vmCpuMetrics": "VM CPU չափումներ",
|
|
2850
2855
|
"vmMemoryMetrics": "VM հիշողության չափումներ",
|
|
2851
2856
|
"vmNetworkMetrics": "VM ցանցի չափումներ",
|
|
@@ -2281,7 +2281,10 @@
|
|
|
2281
2281
|
"deleteNotesMessage": "Жазбаларды \"{vmName}\" ішінен жойғыңыз келетініне сенімдісіз бе?",
|
|
2282
2282
|
"passwordContainsInvalidCharacters": "Құпия сөзде жарамсыз таңбалар бар",
|
|
2283
2283
|
"fieldInvalidCharacters": "Бұл өрісте 3-тен 64 таңбадан тұруы керек және тек латын әріптері, сандар, сандар және символдар, '', '', '', ''.",
|
|
2284
|
-
"rowsPerPage": "Ағын сызықтары"
|
|
2284
|
+
"rowsPerPage": "Ағын сызықтары",
|
|
2285
|
+
"unsavedChanges": "Жетілмеген өзгерістер!",
|
|
2286
|
+
"unsavedChangesDescription": "Сіз бұл беттен кеткіңіз келе ме? Сақталмаған өзгерістер жоғалады.",
|
|
2287
|
+
"leave": "Тастау"
|
|
2285
2288
|
},
|
|
2286
2289
|
"auth": {
|
|
2287
2290
|
"welcomeTo": "Қош келдіңіз",
|
|
@@ -2845,6 +2848,8 @@
|
|
|
2845
2848
|
"memoryMetrics": "Жад көрсеткіштері",
|
|
2846
2849
|
"networkMetrics": "Желілік көрсеткіштер",
|
|
2847
2850
|
"diskMetrics": "Диск Өлшемдері",
|
|
2851
|
+
"storageMetrics": "Сақтау к рсеткіштері",
|
|
2852
|
+
"sensorsMetrics": "Датчиктер к рсеткіштері",
|
|
2848
2853
|
"vmCpuMetrics": "VM CPU көрсеткіштері",
|
|
2849
2854
|
"vmMemoryMetrics": "VM жад көрсеткіштері",
|
|
2850
2855
|
"vmNetworkMetrics": "VM желілік көрсеткіштері",
|
|
@@ -2283,7 +2283,10 @@
|
|
|
2283
2283
|
"deleteNotesMessage": "Вы уверены, что хотите удалить заметки из \"{vmName}\"?",
|
|
2284
2284
|
"passwordContainsInvalidCharacters": "Пароль содержит недопустимые символы",
|
|
2285
2285
|
"fieldInvalidCharacters": "Это поле должен содержать от 3 до 64 символов и может включать только латинские буквы, цифры, а также символы '_', '-', '.'",
|
|
2286
|
-
"rowsPerPage": "Кол-во строк"
|
|
2286
|
+
"rowsPerPage": "Кол-во строк",
|
|
2287
|
+
"unsavedChanges": "Несохранённые изменения!",
|
|
2288
|
+
"unsavedChangesDescription": "Вы уверены, что хотите покинуть эту страницу? Неиседлкие изменения будут потеряны.",
|
|
2289
|
+
"leave": "Покинуть"
|
|
2287
2290
|
},
|
|
2288
2291
|
"auth": {
|
|
2289
2292
|
"welcomeTo": "Добро пожаловать в",
|
|
@@ -2847,6 +2850,8 @@
|
|
|
2847
2850
|
"memoryMetrics": "Показатели памяти",
|
|
2848
2851
|
"networkMetrics": "Показатели сети",
|
|
2849
2852
|
"diskMetrics": "Показатели диска",
|
|
2853
|
+
"storageMetrics": "Метрики хранения",
|
|
2854
|
+
"sensorsMetrics": "Метрики датчиков",
|
|
2850
2855
|
"vmCpuMetrics": "Показатели ЦП виртуальной машины",
|
|
2851
2856
|
"vmMemoryMetrics": "Показатели памяти виртуальной машины",
|
|
2852
2857
|
"vmNetworkMetrics": "Показатели сети виртуальной машины",
|
|
@@ -2280,7 +2280,10 @@
|
|
|
2280
2280
|
"deleteNotesMessage": "您确定要从 \"{vmName}\" 中删除注释吗?",
|
|
2281
2281
|
"passwordContainsInvalidCharacters": "密码包含无效字符",
|
|
2282
2282
|
"fieldInvalidCharacters": "该字段必须包含3到64个字符,并且只能包括拉丁字母,数字和符号'_',',','。",
|
|
2283
|
-
"rowsPerPage": "每页行"
|
|
2283
|
+
"rowsPerPage": "每页行",
|
|
2284
|
+
"unsavedChanges": "未保存的更改!",
|
|
2285
|
+
"unsavedChangesDescription": "您确定要离开此页面吗?未保存的更改将丢失。",
|
|
2286
|
+
"leave": "离开"
|
|
2284
2287
|
},
|
|
2285
2288
|
"auth": {
|
|
2286
2289
|
"welcomeTo": "欢迎来到",
|
|
@@ -2844,6 +2847,8 @@
|
|
|
2844
2847
|
"memoryMetrics": "内存指标",
|
|
2845
2848
|
"networkMetrics": "网络指标",
|
|
2846
2849
|
"diskMetrics": "磁盘指标",
|
|
2850
|
+
"storageMetrics": "存储指标",
|
|
2851
|
+
"sensorsMetrics": "传感器指标",
|
|
2847
2852
|
"vmCpuMetrics": "虚拟机 CPU 指标",
|
|
2848
2853
|
"vmMemoryMetrics": "虚拟机内存指标",
|
|
2849
2854
|
"vmNetworkMetrics": "虚拟机网络指标",
|
|
@@ -0,0 +1,56 @@
|
|
|
1
|
+
<template>
|
|
2
|
+
<div class="absolute">
|
|
3
|
+
<common-modals-confirmation
|
|
4
|
+
v-if="show"
|
|
5
|
+
is-new-view
|
|
6
|
+
:headline="localization.common.unsavedChanges"
|
|
7
|
+
:description="localization.common.unsavedChangesDescription"
|
|
8
|
+
:modal-texts="modalTexts"
|
|
9
|
+
@hide-modal="onHide"
|
|
10
|
+
@confirm="onLeave"
|
|
11
|
+
/>
|
|
12
|
+
</div>
|
|
13
|
+
</template>
|
|
14
|
+
|
|
15
|
+
<script setup lang="ts">
|
|
16
|
+
import type { UI_I_ModalTexts } from 'bfg-uikit/components/ui/modal/models/interfaces'
|
|
17
|
+
import type { UI_I_Localization } from '~/lib/models/interfaces'
|
|
18
|
+
|
|
19
|
+
const emits = defineEmits<{
|
|
20
|
+
(event: 'leave'): void
|
|
21
|
+
}>()
|
|
22
|
+
|
|
23
|
+
const localization = computed<UI_I_Localization>(() => useLocal())
|
|
24
|
+
|
|
25
|
+
const modalTexts = ref<UI_I_ModalTexts>({
|
|
26
|
+
resetToDefault: '',
|
|
27
|
+
button1: localization.value.common.cancel,
|
|
28
|
+
button2: localization.value.common.leave,
|
|
29
|
+
})
|
|
30
|
+
|
|
31
|
+
const show = defineModel<boolean>('show', { required: true })
|
|
32
|
+
|
|
33
|
+
const onHide = (): void => {
|
|
34
|
+
show.value = false
|
|
35
|
+
}
|
|
36
|
+
const onLeave = (): void => {
|
|
37
|
+
emits('leave')
|
|
38
|
+
}
|
|
39
|
+
</script>
|
|
40
|
+
|
|
41
|
+
<style>
|
|
42
|
+
:root {
|
|
43
|
+
--unsaved-changes-modal-bg-color: var(--modal-bg);
|
|
44
|
+
}
|
|
45
|
+
:root.dark-theme {
|
|
46
|
+
--unsaved-changes-modal-bg-color: #334453;
|
|
47
|
+
}
|
|
48
|
+
</style>
|
|
49
|
+
<style scoped lang="scss">
|
|
50
|
+
:deep(.ui-popup_content) {
|
|
51
|
+
background-color: var(--unsaved-changes-modal-bg-color);
|
|
52
|
+
}
|
|
53
|
+
:deep(.ui-popup_footer-transparent-block) {
|
|
54
|
+
display: none;
|
|
55
|
+
}
|
|
56
|
+
</style>
|
|
@@ -1,196 +1,196 @@
|
|
|
1
|
-
<template>
|
|
2
|
-
<div class="resource-allocation">
|
|
3
|
-
<div class="resource-allocation-header">
|
|
4
|
-
<common-headline :headline="props.title" />
|
|
5
|
-
|
|
6
|
-
<div class="resource-allocation-header-block">
|
|
7
|
-
<div class="resource-allocation-header-block-progress">
|
|
8
|
-
<div
|
|
9
|
-
title="70%"
|
|
10
|
-
class="resource-allocation-header-block-progress-used"
|
|
11
|
-
:style="{ width: props.headerData.used + '%' }"
|
|
12
|
-
></div>
|
|
13
|
-
<div
|
|
14
|
-
title="30%"
|
|
15
|
-
class="resource-allocation-header-block-progress-available"
|
|
16
|
-
:style="{ width: 100 - props.headerData.used + '%' }"
|
|
17
|
-
></div>
|
|
18
|
-
</div>
|
|
19
|
-
<div class="resource-allocation-header-block-progress-info">
|
|
20
|
-
<div>{{ props.headerData.from }}</div>
|
|
21
|
-
<div>{{ props.headerData.to }}</div>
|
|
22
|
-
</div>
|
|
23
|
-
|
|
24
|
-
<div class="resource-allocation-header-block-info">
|
|
25
|
-
<div
|
|
26
|
-
v-for="(item, key) in props.headerData.items"
|
|
27
|
-
:key="key"
|
|
28
|
-
class="resource-allocation-header-block-info-item"
|
|
29
|
-
>
|
|
30
|
-
<span>
|
|
31
|
-
<span
|
|
32
|
-
v-if="item.used"
|
|
33
|
-
class="resource-allocation-header-block-info-item-used"
|
|
34
|
-
></span>
|
|
35
|
-
<span
|
|
36
|
-
v-if="item.available"
|
|
37
|
-
class="resource-allocation-header-block-info-item-available"
|
|
38
|
-
></span>
|
|
39
|
-
<span>{{ item.title }}</span>
|
|
40
|
-
</span>
|
|
41
|
-
<span>{{ item.value }}</span>
|
|
42
|
-
</div>
|
|
43
|
-
</div>
|
|
44
|
-
</div>
|
|
45
|
-
</div>
|
|
46
|
-
<!-- <div class="resource-allocation-content">-->
|
|
47
|
-
<!-- <div class="data-table-view">-->
|
|
48
|
-
<!-- <div class="data-table-view__inner">-->
|
|
49
|
-
<!-- <atoms-table-data-grid-->
|
|
50
|
-
<!-- v-model:column-keys="columnKeys"-->
|
|
51
|
-
<!-- v-model:selected-row="selectedRow"-->
|
|
52
|
-
<!-- :head-items="headItems"-->
|
|
53
|
-
<!-- :body-items="bodyItems"-->
|
|
54
|
-
<!-- :total-items="props.totalItems"-->
|
|
55
|
-
<!-- :total-pages="props.totalPages"-->
|
|
56
|
-
<!-- :page-size="100"-->
|
|
57
|
-
<!-- :page="1"-->
|
|
58
|
-
<!-- :type="tableType"-->
|
|
59
|
-
<!-- class="data-table"-->
|
|
60
|
-
<!-- test-id="hardware-health-table"-->
|
|
61
|
-
<!-- :loading="props.loading"-->
|
|
62
|
-
<!-- hide-page-size-->
|
|
63
|
-
<!-- server-off-->
|
|
64
|
-
<!-- >-->
|
|
65
|
-
<!-- <template v-if="hasNonEmptySelEntries" #toggleBlock="{ item }">-->
|
|
66
|
-
<!-- <div class="row-details">-->
|
|
67
|
-
<!-- <div class="row-details__headline">-->
|
|
68
|
-
<!-- {{ localization.common.eventLogEntries }}-->
|
|
69
|
-
<!-- </div>-->
|
|
70
|
-
|
|
71
|
-
<!-- <div-->
|
|
72
|
-
<!-- v-for="(entries, key) in item[0].data.current.sel_entries"-->
|
|
73
|
-
<!-- :key="key"-->
|
|
74
|
-
<!-- class="row-details__content"-->
|
|
75
|
-
<!-- >-->
|
|
76
|
-
<!-- <span>{{ entries.event }}</span>-->
|
|
77
|
-
<!-- <span>{{ entries.time }}</span>-->
|
|
78
|
-
<!-- </div>-->
|
|
79
|
-
<!-- </div>-->
|
|
80
|
-
<!-- </template>-->
|
|
81
|
-
|
|
82
|
-
<!-- <template #icon="{ item }">-->
|
|
83
|
-
<!-- <atoms-the-icon-->
|
|
84
|
-
<!-- v-if="!item.data.isSprite"-->
|
|
85
|
-
<!-- :name="item.data.iconClassName"-->
|
|
86
|
-
<!-- class="icon"-->
|
|
87
|
-
<!-- />-->
|
|
88
|
-
<!-- <span v-else :class="['icon', item.data.iconClassName]"></span>-->
|
|
89
|
-
<!-- {{ item.text }}-->
|
|
90
|
-
|
|
91
|
-
<!-- <a-->
|
|
92
|
-
<!-- v-if="item.data.warning"-->
|
|
93
|
-
<!-- id="sensor-item-warning"-->
|
|
94
|
-
<!-- :data-id="item.data.testId"-->
|
|
95
|
-
<!-- href="javascript:void(0)"-->
|
|
96
|
-
<!-- class="row-details__text"-->
|
|
97
|
-
<!-- @click="onShowFieldWarning(item.data.warning)"-->
|
|
98
|
-
<!-- >{{ localization.common.details }}...-->
|
|
99
|
-
<!-- </a>-->
|
|
100
|
-
<!-- </template>-->
|
|
101
|
-
<!-- </atoms-table-data-grid>-->
|
|
102
|
-
<!-- </div>-->
|
|
103
|
-
<!-- </div>-->
|
|
104
|
-
<!-- </div>-->
|
|
105
|
-
</div>
|
|
106
|
-
</template>
|
|
107
|
-
|
|
108
|
-
<script setup lang="ts">
|
|
109
|
-
import type { UI_I_ResourceAllocationHeader } from '~/components/common/monitor/resourceAllocation/lib/models/interfaces'
|
|
110
|
-
|
|
111
|
-
const props = defineProps<{
|
|
112
|
-
title: string
|
|
113
|
-
headerData: UI_I_ResourceAllocationHeader
|
|
114
|
-
}>()
|
|
115
|
-
|
|
116
|
-
// const localization = computed<UI_I_Localization>(() => useLocal())
|
|
117
|
-
</script>
|
|
118
|
-
|
|
119
|
-
<style lang="scss" scoped>
|
|
120
|
-
.resource-allocation {
|
|
121
|
-
&-header {
|
|
122
|
-
&-block {
|
|
123
|
-
width: 100%;
|
|
124
|
-
max-width: 350px;
|
|
125
|
-
min-width: 250px;
|
|
126
|
-
position: relative;
|
|
127
|
-
padding-top: 11px;
|
|
128
|
-
|
|
129
|
-
&-progress {
|
|
130
|
-
height: 17px;
|
|
131
|
-
margin-bottom: 3px;
|
|
132
|
-
border: 1px solid #939fa7;
|
|
133
|
-
z-index: 1;
|
|
134
|
-
position: relative;
|
|
135
|
-
display: flex;
|
|
136
|
-
|
|
137
|
-
&-used {
|
|
138
|
-
background-color: #8fdaf9;
|
|
139
|
-
height: 100%;
|
|
140
|
-
}
|
|
141
|
-
|
|
142
|
-
&-available {
|
|
143
|
-
background-color: #ffffff;
|
|
144
|
-
height: 100%;
|
|
145
|
-
}
|
|
146
|
-
|
|
147
|
-
&-info {
|
|
148
|
-
display: flex;
|
|
149
|
-
justify-content: space-between;
|
|
150
|
-
height: 20px;
|
|
151
|
-
|
|
152
|
-
div {
|
|
153
|
-
font-size: smaller;
|
|
154
|
-
font-weight: 400;
|
|
155
|
-
line-height: 24px;
|
|
156
|
-
}
|
|
157
|
-
}
|
|
158
|
-
}
|
|
159
|
-
|
|
160
|
-
&-info {
|
|
161
|
-
flex: 1 1 auto;
|
|
162
|
-
width: 100%;
|
|
163
|
-
height: 110px;
|
|
164
|
-
padding: 10px 0;
|
|
165
|
-
|
|
166
|
-
&-item {
|
|
167
|
-
display: flex;
|
|
168
|
-
justify-content: space-between;
|
|
169
|
-
height: 18px;
|
|
170
|
-
line-height: 17px;
|
|
171
|
-
|
|
172
|
-
&-used {
|
|
173
|
-
width: 16px;
|
|
174
|
-
height: 12px;
|
|
175
|
-
border: 1px solid #aaa;
|
|
176
|
-
background-color: #8fdaf9;
|
|
177
|
-
display: inline-block;
|
|
178
|
-
margin-bottom: -2px;
|
|
179
|
-
margin-right: 4px;
|
|
180
|
-
}
|
|
181
|
-
|
|
182
|
-
&-available {
|
|
183
|
-
width: 16px;
|
|
184
|
-
height: 12px;
|
|
185
|
-
border: 1px solid #aaa;
|
|
186
|
-
background-color: #ffffff;
|
|
187
|
-
display: inline-block;
|
|
188
|
-
margin-bottom: -2px;
|
|
189
|
-
margin-right: 4px;
|
|
190
|
-
}
|
|
191
|
-
}
|
|
192
|
-
}
|
|
193
|
-
}
|
|
194
|
-
}
|
|
195
|
-
}
|
|
196
|
-
</style>
|
|
1
|
+
<template>
|
|
2
|
+
<div class="resource-allocation">
|
|
3
|
+
<div class="resource-allocation-header">
|
|
4
|
+
<common-headline :headline="props.title" />
|
|
5
|
+
|
|
6
|
+
<div class="resource-allocation-header-block">
|
|
7
|
+
<div class="resource-allocation-header-block-progress">
|
|
8
|
+
<div
|
|
9
|
+
title="70%"
|
|
10
|
+
class="resource-allocation-header-block-progress-used"
|
|
11
|
+
:style="{ width: props.headerData.used + '%' }"
|
|
12
|
+
></div>
|
|
13
|
+
<div
|
|
14
|
+
title="30%"
|
|
15
|
+
class="resource-allocation-header-block-progress-available"
|
|
16
|
+
:style="{ width: 100 - props.headerData.used + '%' }"
|
|
17
|
+
></div>
|
|
18
|
+
</div>
|
|
19
|
+
<div class="resource-allocation-header-block-progress-info">
|
|
20
|
+
<div>{{ props.headerData.from }}</div>
|
|
21
|
+
<div>{{ props.headerData.to }}</div>
|
|
22
|
+
</div>
|
|
23
|
+
|
|
24
|
+
<div class="resource-allocation-header-block-info">
|
|
25
|
+
<div
|
|
26
|
+
v-for="(item, key) in props.headerData.items"
|
|
27
|
+
:key="key"
|
|
28
|
+
class="resource-allocation-header-block-info-item"
|
|
29
|
+
>
|
|
30
|
+
<span>
|
|
31
|
+
<span
|
|
32
|
+
v-if="item.used"
|
|
33
|
+
class="resource-allocation-header-block-info-item-used"
|
|
34
|
+
></span>
|
|
35
|
+
<span
|
|
36
|
+
v-if="item.available"
|
|
37
|
+
class="resource-allocation-header-block-info-item-available"
|
|
38
|
+
></span>
|
|
39
|
+
<span>{{ item.title }}</span>
|
|
40
|
+
</span>
|
|
41
|
+
<span>{{ item.value }}</span>
|
|
42
|
+
</div>
|
|
43
|
+
</div>
|
|
44
|
+
</div>
|
|
45
|
+
</div>
|
|
46
|
+
<!-- <div class="resource-allocation-content">-->
|
|
47
|
+
<!-- <div class="data-table-view">-->
|
|
48
|
+
<!-- <div class="data-table-view__inner">-->
|
|
49
|
+
<!-- <atoms-table-data-grid-->
|
|
50
|
+
<!-- v-model:column-keys="columnKeys"-->
|
|
51
|
+
<!-- v-model:selected-row="selectedRow"-->
|
|
52
|
+
<!-- :head-items="headItems"-->
|
|
53
|
+
<!-- :body-items="bodyItems"-->
|
|
54
|
+
<!-- :total-items="props.totalItems"-->
|
|
55
|
+
<!-- :total-pages="props.totalPages"-->
|
|
56
|
+
<!-- :page-size="100"-->
|
|
57
|
+
<!-- :page="1"-->
|
|
58
|
+
<!-- :type="tableType"-->
|
|
59
|
+
<!-- class="data-table"-->
|
|
60
|
+
<!-- test-id="hardware-health-table"-->
|
|
61
|
+
<!-- :loading="props.loading"-->
|
|
62
|
+
<!-- hide-page-size-->
|
|
63
|
+
<!-- server-off-->
|
|
64
|
+
<!-- >-->
|
|
65
|
+
<!-- <template v-if="hasNonEmptySelEntries" #toggleBlock="{ item }">-->
|
|
66
|
+
<!-- <div class="row-details">-->
|
|
67
|
+
<!-- <div class="row-details__headline">-->
|
|
68
|
+
<!-- {{ localization.common.eventLogEntries }}-->
|
|
69
|
+
<!-- </div>-->
|
|
70
|
+
|
|
71
|
+
<!-- <div-->
|
|
72
|
+
<!-- v-for="(entries, key) in item[0].data.current.sel_entries"-->
|
|
73
|
+
<!-- :key="key"-->
|
|
74
|
+
<!-- class="row-details__content"-->
|
|
75
|
+
<!-- >-->
|
|
76
|
+
<!-- <span>{{ entries.event }}</span>-->
|
|
77
|
+
<!-- <span>{{ entries.time }}</span>-->
|
|
78
|
+
<!-- </div>-->
|
|
79
|
+
<!-- </div>-->
|
|
80
|
+
<!-- </template>-->
|
|
81
|
+
|
|
82
|
+
<!-- <template #icon="{ item }">-->
|
|
83
|
+
<!-- <atoms-the-icon-->
|
|
84
|
+
<!-- v-if="!item.data.isSprite"-->
|
|
85
|
+
<!-- :name="item.data.iconClassName"-->
|
|
86
|
+
<!-- class="icon"-->
|
|
87
|
+
<!-- />-->
|
|
88
|
+
<!-- <span v-else :class="['icon', item.data.iconClassName]"></span>-->
|
|
89
|
+
<!-- {{ item.text }}-->
|
|
90
|
+
|
|
91
|
+
<!-- <a-->
|
|
92
|
+
<!-- v-if="item.data.warning"-->
|
|
93
|
+
<!-- id="sensor-item-warning"-->
|
|
94
|
+
<!-- :data-id="item.data.testId"-->
|
|
95
|
+
<!-- href="javascript:void(0)"-->
|
|
96
|
+
<!-- class="row-details__text"-->
|
|
97
|
+
<!-- @click="onShowFieldWarning(item.data.warning)"-->
|
|
98
|
+
<!-- >{{ localization.common.details }}...-->
|
|
99
|
+
<!-- </a>-->
|
|
100
|
+
<!-- </template>-->
|
|
101
|
+
<!-- </atoms-table-data-grid>-->
|
|
102
|
+
<!-- </div>-->
|
|
103
|
+
<!-- </div>-->
|
|
104
|
+
<!-- </div>-->
|
|
105
|
+
</div>
|
|
106
|
+
</template>
|
|
107
|
+
|
|
108
|
+
<script setup lang="ts">
|
|
109
|
+
import type { UI_I_ResourceAllocationHeader } from '~/components/common/monitor/resourceAllocation/lib/models/interfaces'
|
|
110
|
+
|
|
111
|
+
const props = defineProps<{
|
|
112
|
+
title: string
|
|
113
|
+
headerData: UI_I_ResourceAllocationHeader
|
|
114
|
+
}>()
|
|
115
|
+
|
|
116
|
+
// const localization = computed<UI_I_Localization>(() => useLocal())
|
|
117
|
+
</script>
|
|
118
|
+
|
|
119
|
+
<style lang="scss" scoped>
|
|
120
|
+
.resource-allocation {
|
|
121
|
+
&-header {
|
|
122
|
+
&-block {
|
|
123
|
+
width: 100%;
|
|
124
|
+
max-width: 350px;
|
|
125
|
+
min-width: 250px;
|
|
126
|
+
position: relative;
|
|
127
|
+
padding-top: 11px;
|
|
128
|
+
|
|
129
|
+
&-progress {
|
|
130
|
+
height: 17px;
|
|
131
|
+
margin-bottom: 3px;
|
|
132
|
+
border: 1px solid #939fa7;
|
|
133
|
+
z-index: 1;
|
|
134
|
+
position: relative;
|
|
135
|
+
display: flex;
|
|
136
|
+
|
|
137
|
+
&-used {
|
|
138
|
+
background-color: #8fdaf9;
|
|
139
|
+
height: 100%;
|
|
140
|
+
}
|
|
141
|
+
|
|
142
|
+
&-available {
|
|
143
|
+
background-color: #ffffff;
|
|
144
|
+
height: 100%;
|
|
145
|
+
}
|
|
146
|
+
|
|
147
|
+
&-info {
|
|
148
|
+
display: flex;
|
|
149
|
+
justify-content: space-between;
|
|
150
|
+
height: 20px;
|
|
151
|
+
|
|
152
|
+
div {
|
|
153
|
+
font-size: smaller;
|
|
154
|
+
font-weight: 400;
|
|
155
|
+
line-height: 24px;
|
|
156
|
+
}
|
|
157
|
+
}
|
|
158
|
+
}
|
|
159
|
+
|
|
160
|
+
&-info {
|
|
161
|
+
flex: 1 1 auto;
|
|
162
|
+
width: 100%;
|
|
163
|
+
height: 110px;
|
|
164
|
+
padding: 10px 0;
|
|
165
|
+
|
|
166
|
+
&-item {
|
|
167
|
+
display: flex;
|
|
168
|
+
justify-content: space-between;
|
|
169
|
+
height: 18px;
|
|
170
|
+
line-height: 17px;
|
|
171
|
+
|
|
172
|
+
&-used {
|
|
173
|
+
width: 16px;
|
|
174
|
+
height: 12px;
|
|
175
|
+
border: 1px solid #aaa;
|
|
176
|
+
background-color: #8fdaf9;
|
|
177
|
+
display: inline-block;
|
|
178
|
+
margin-bottom: -2px;
|
|
179
|
+
margin-right: 4px;
|
|
180
|
+
}
|
|
181
|
+
|
|
182
|
+
&-available {
|
|
183
|
+
width: 16px;
|
|
184
|
+
height: 12px;
|
|
185
|
+
border: 1px solid #aaa;
|
|
186
|
+
background-color: #ffffff;
|
|
187
|
+
display: inline-block;
|
|
188
|
+
margin-bottom: -2px;
|
|
189
|
+
margin-right: 4px;
|
|
190
|
+
}
|
|
191
|
+
}
|
|
192
|
+
}
|
|
193
|
+
}
|
|
194
|
+
}
|
|
195
|
+
}
|
|
196
|
+
</style>
|