bfg-common 1.3.99 → 1.3.100
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/scss/common/icons/icons-2.scss +222 -222
- package/components/atoms/switch/Switch.vue +107 -107
- package/components/atoms/table/dataGrid/DataGrid.vue +1576 -1576
- package/components/atoms/wizard/Wizard.vue +7 -2
- package/components/common/adapterManager/AdapterManager.vue +95 -0
- package/components/common/adapterManager/AddAdapterModal.vue +8 -10
- package/components/common/adapterManager/ui/table/Adapters.vue +12 -12
- package/components/common/adapterManager/ui/table/Table.vue +4 -18
- package/components/common/diagramMain/lib/models/interfaces.ts +46 -21
- package/components/common/diagramMain/lib/models/types.ts +6 -0
- package/components/common/diagramMain/port/Port.vue +8 -3
- package/components/common/lib/config/states.ts +13 -0
- package/components/common/monitor/advanced/tools/chartOptionsModal/counters/table/Table.vue +137 -137
- package/components/common/pages/Tasks.vue +120 -120
- package/components/common/recursionTree/RecursionTree.vue +203 -203
- package/components/common/vm/actions/clone/Clone.vue +518 -518
- package/components/common/vm/actions/common/customizeHardware/virtualHardware/cpu/CpuModel.vue +220 -220
- package/components/common/vm/actions/common/select/storage/lib/config/config.ts +166 -166
- package/components/common/wizards/network/add/Add.vue +5 -1
- package/composables/useAppVersion.ts +21 -21
- package/composables/useEnvLanguage.ts +20 -20
- package/composables/useLocal.ts +38 -38
- package/lib/utils/sendTask.ts +72 -72
- package/minify.js +146 -146
- package/package.json +1 -1
- package/public/spice-console/application/codec.js +257 -257
- package/public/spice-console/lib/rasterEngine.js +907 -907
- package/public/spice-console/network/spicechannel.js +369 -369
- package/store/main/lib/interfaces.ts +9 -9
- package/store/tasks/actions.ts +133 -133
- package/store/tasks/getters.ts +25 -25
- package/store/tasks/lib/models/interfaces.ts +18 -18
- package/store/tasks/mutations.ts +58 -58
- package/store/tasks/state.ts +16 -16
|
@@ -1,6 +1,9 @@
|
|
|
1
1
|
<template>
|
|
2
2
|
<div v-if="props.show" class="modal clr-wizard wizard-xl">
|
|
3
|
-
<div
|
|
3
|
+
<div
|
|
4
|
+
class="modal-dialog modal-xl relative"
|
|
5
|
+
:style="{ height: props.height }"
|
|
6
|
+
>
|
|
4
7
|
<div class="modal-content-wrapper">
|
|
5
8
|
<nav class="modal-nav clr-wizard-stepnav-wrapper">
|
|
6
9
|
<h1 class="clr-wizard-title">
|
|
@@ -34,7 +37,7 @@
|
|
|
34
37
|
</div>
|
|
35
38
|
<div class="modal-body" style="padding: 16px 15px 10px 10px">
|
|
36
39
|
<div v-if="selectedStep.subTitle" class="content-heading">
|
|
37
|
-
<div>
|
|
40
|
+
<div v-if="selectedStep.subTitle !== 'border'">
|
|
38
41
|
<h2>{{ selectedStep.subTitle }}</h2>
|
|
39
42
|
</div>
|
|
40
43
|
</div>
|
|
@@ -114,6 +117,7 @@ const props = withDefaults(
|
|
|
114
117
|
localization?: UI_I_Localization
|
|
115
118
|
testId?: string
|
|
116
119
|
wasCompleted: boolean
|
|
120
|
+
height: string
|
|
117
121
|
}>(),
|
|
118
122
|
{
|
|
119
123
|
isLoading: false,
|
|
@@ -122,6 +126,7 @@ const props = withDefaults(
|
|
|
122
126
|
isDisabledFinish: false,
|
|
123
127
|
localization: () => ({}),
|
|
124
128
|
testId: '',
|
|
129
|
+
height: '',
|
|
125
130
|
}
|
|
126
131
|
)
|
|
127
132
|
|
|
@@ -6,6 +6,7 @@
|
|
|
6
6
|
'element-disabled': !props.isActive,
|
|
7
7
|
'full-height': props.fullMode,
|
|
8
8
|
'add-adapter-view': props.isAddModal,
|
|
9
|
+
'is-dark': props.isDarkMode,
|
|
9
10
|
},
|
|
10
11
|
]"
|
|
11
12
|
>
|
|
@@ -102,6 +103,7 @@
|
|
|
102
103
|
width="864px"
|
|
103
104
|
height="618px"
|
|
104
105
|
:is-add-modal="props.isAddModal"
|
|
106
|
+
:is-dark-mode="props.isDarkMode"
|
|
105
107
|
:show="isShowAddAdapterModal"
|
|
106
108
|
:existing-adapters-for-adding="existingAdaptersForAdding"
|
|
107
109
|
:selected-add-adapter-id="selectedAddAdapterId"
|
|
@@ -156,6 +158,7 @@ const props = withDefaults(
|
|
|
156
158
|
isActive?: boolean
|
|
157
159
|
fullMode?: boolean
|
|
158
160
|
isAddModal?: boolean
|
|
161
|
+
isDarkMode: boolean
|
|
159
162
|
adapters: UI_I_SwitchAdapters
|
|
160
163
|
initialData?: UI_I_ModalsInitialData
|
|
161
164
|
addedAdapters?: string[]
|
|
@@ -712,4 +715,96 @@ div.edit-pg-failover-order-with-details {
|
|
|
712
715
|
max-height: 415px;
|
|
713
716
|
}
|
|
714
717
|
}
|
|
718
|
+
|
|
719
|
+
div.edit-pg-failover-order-with-details.is-dark {
|
|
720
|
+
.failover-order-master {
|
|
721
|
+
.secondary-title {
|
|
722
|
+
label {
|
|
723
|
+
color: #fff;
|
|
724
|
+
}
|
|
725
|
+
}
|
|
726
|
+
}
|
|
727
|
+
.k-grid-content {
|
|
728
|
+
background-color: var(--modal-bg-color);
|
|
729
|
+
}
|
|
730
|
+
.vui-action-bar {
|
|
731
|
+
background-color: var(--pannel-bg-color);
|
|
732
|
+
color: var(--title-color);
|
|
733
|
+
padding: 8px 0 3px;
|
|
734
|
+
|
|
735
|
+
.action-link-container:not(.disabled) {
|
|
736
|
+
&:hover {
|
|
737
|
+
background-color: #29414e;
|
|
738
|
+
border: 1px solid #c7e9ff;
|
|
739
|
+
}
|
|
740
|
+
}
|
|
741
|
+
|
|
742
|
+
svg {
|
|
743
|
+
fill: #fff;
|
|
744
|
+
}
|
|
745
|
+
}
|
|
746
|
+
|
|
747
|
+
.k-grid.k-widget .k-grid-content {
|
|
748
|
+
border-left: 1px solid #485764;
|
|
749
|
+
border-right: 1px solid #485764;
|
|
750
|
+
border-top: 1px solid #ddd;
|
|
751
|
+
border-bottom: 1px solid #ddd;
|
|
752
|
+
|
|
753
|
+
tbody tr {
|
|
754
|
+
background-color: var(--modal-bg-color);
|
|
755
|
+
|
|
756
|
+
td {
|
|
757
|
+
border-bottom: 1px solid #666666;
|
|
758
|
+
border-color: #666666;
|
|
759
|
+
}
|
|
760
|
+
|
|
761
|
+
&:hover {
|
|
762
|
+
background-color: #324f61;
|
|
763
|
+
color: var(--title-color);
|
|
764
|
+
|
|
765
|
+
td {
|
|
766
|
+
border-bottom: 1px solid #ffffff;
|
|
767
|
+
}
|
|
768
|
+
}
|
|
769
|
+
|
|
770
|
+
&.k-state-selected {
|
|
771
|
+
background-color: #d8e3e9;
|
|
772
|
+
box-shadow: 0 1px 1px rgba(0, 0, 0, 0.075) inset;
|
|
773
|
+
|
|
774
|
+
td span {
|
|
775
|
+
color: #000;
|
|
776
|
+
}
|
|
777
|
+
}
|
|
778
|
+
}
|
|
779
|
+
}
|
|
780
|
+
|
|
781
|
+
.failover-order-details {
|
|
782
|
+
&.relative-container .absolute-container {
|
|
783
|
+
background-color: var(--pannel-bg-color);
|
|
784
|
+
color: var(--main-color-mode2);
|
|
785
|
+
|
|
786
|
+
&:has(.no-items-selected-container) {
|
|
787
|
+
background-color: transparent;
|
|
788
|
+
}
|
|
789
|
+
}
|
|
790
|
+
|
|
791
|
+
td span {
|
|
792
|
+
color: var(--main-color-mode2);
|
|
793
|
+
}
|
|
794
|
+
button span {
|
|
795
|
+
color: var(--main-color-mode2);
|
|
796
|
+
|
|
797
|
+
&:hover:not(.disabled) {
|
|
798
|
+
background-color: transparent;
|
|
799
|
+
}
|
|
800
|
+
}
|
|
801
|
+
button.active span {
|
|
802
|
+
color: #fff;
|
|
803
|
+
}
|
|
804
|
+
}
|
|
805
|
+
}
|
|
806
|
+
|
|
807
|
+
.select-adapter-info span {
|
|
808
|
+
color: var(--main-color-mode2);
|
|
809
|
+
}
|
|
715
810
|
</style>
|
|
@@ -16,12 +16,11 @@
|
|
|
16
16
|
<common-adapter-manager
|
|
17
17
|
test-id="adapter-manager"
|
|
18
18
|
:is-active="true"
|
|
19
|
+
:is-dark-mode="props.isDarkMode"
|
|
19
20
|
:full-mode="false"
|
|
20
21
|
:is-add-modal="true"
|
|
21
22
|
:adapters="props.adapters"
|
|
22
|
-
:existing-adapters-for-adding="
|
|
23
|
-
props.existingAdaptersForAdding.map((n) => n.name)
|
|
24
|
-
"
|
|
23
|
+
:existing-adapters-for-adding="props.existingAdaptersForAdding.map((n) => n.name)"
|
|
25
24
|
:selected-add-adapter-id="props.selectedAddAdapterId"
|
|
26
25
|
class="free-adapters"
|
|
27
26
|
@select-add-adapter="onSelectAddAdapter"
|
|
@@ -46,6 +45,7 @@ import {
|
|
|
46
45
|
const props = withDefaults(
|
|
47
46
|
defineProps<{
|
|
48
47
|
isAddModal: boolean
|
|
48
|
+
isDarkMode: boolean
|
|
49
49
|
show: boolean
|
|
50
50
|
width: string
|
|
51
51
|
height: string
|
|
@@ -463,10 +463,12 @@ ul li span {
|
|
|
463
463
|
margin: 0 7px 0 4px;
|
|
464
464
|
}
|
|
465
465
|
|
|
466
|
-
:deep(.
|
|
466
|
+
:deep(div.edit-pg-failover-order-with-details.is-dark) {
|
|
467
467
|
.failover-order-master {
|
|
468
|
-
.secondary-title
|
|
469
|
-
|
|
468
|
+
.secondary-title {
|
|
469
|
+
label {
|
|
470
|
+
color: #fff;
|
|
471
|
+
}
|
|
470
472
|
}
|
|
471
473
|
}
|
|
472
474
|
.k-grid-content {
|
|
@@ -547,9 +549,5 @@ ul li span {
|
|
|
547
549
|
color: #fff;
|
|
548
550
|
}
|
|
549
551
|
}
|
|
550
|
-
|
|
551
|
-
.select-adapter-info span {
|
|
552
|
-
color: var(--main-color-mode2);
|
|
553
|
-
}
|
|
554
552
|
}
|
|
555
553
|
</style>
|
|
@@ -1,22 +1,22 @@
|
|
|
1
1
|
<template>
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
2
|
+
<template v-for="adapterId in props.adapters" :key="adapterId">
|
|
3
|
+
<tr
|
|
4
|
+
:class="{
|
|
5
5
|
'k-state-selected': props.selectedAdapterId === adapterId,
|
|
6
6
|
}"
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
7
|
+
@click="onSelectAdapter(adapterId)"
|
|
8
|
+
>
|
|
9
|
+
<td>
|
|
10
10
|
<span>
|
|
11
11
|
<atoms-diagram-icon
|
|
12
|
-
|
|
13
|
-
|
|
12
|
+
name="adapter-icon"
|
|
13
|
+
class="adapter-icon-positioning"
|
|
14
14
|
/>
|
|
15
15
|
</span>
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
16
|
+
<span>{{ adapterId }}</span>
|
|
17
|
+
</td>
|
|
18
|
+
</tr>
|
|
19
|
+
</template>
|
|
20
20
|
</template>
|
|
21
21
|
|
|
22
22
|
<script setup lang="ts">
|
|
@@ -1,8 +1,5 @@
|
|
|
1
1
|
<template>
|
|
2
|
-
<div
|
|
3
|
-
class="k-grid-content"
|
|
4
|
-
@click.capture="onClickEmptySpace($event)"
|
|
5
|
-
>
|
|
2
|
+
<div class="k-grid-content" @click.capture="onClickEmptySpace($event)">
|
|
6
3
|
<div v-if="props.isAddModal">
|
|
7
4
|
<table class="k-selectable">
|
|
8
5
|
<tbody>
|
|
@@ -57,7 +54,7 @@
|
|
|
57
54
|
import {
|
|
58
55
|
UI_I_Adapter,
|
|
59
56
|
UI_I_AdapterStatus,
|
|
60
|
-
UI_I_SwitchAdapterItem
|
|
57
|
+
UI_I_SwitchAdapterItem,
|
|
61
58
|
} from '~/components/common/diagramMain/lib/models/interfaces'
|
|
62
59
|
|
|
63
60
|
const props = withDefaults(
|
|
@@ -83,7 +80,7 @@ const props = withDefaults(
|
|
|
83
80
|
isStandbyHeader: false,
|
|
84
81
|
isUnusedHeader: false,
|
|
85
82
|
removedAdapters: () => [],
|
|
86
|
-
existingAdaptersForAdding: () => []
|
|
83
|
+
existingAdaptersForAdding: () => [],
|
|
87
84
|
}
|
|
88
85
|
)
|
|
89
86
|
|
|
@@ -145,12 +142,7 @@ table {
|
|
|
145
142
|
border-width: 0;
|
|
146
143
|
outline: 0;
|
|
147
144
|
}
|
|
148
|
-
|
|
149
|
-
// width: auto;
|
|
150
|
-
// overflow-y: scroll;
|
|
151
|
-
// padding-right: 3px;
|
|
152
|
-
// height: 200px;
|
|
153
|
-
//}
|
|
145
|
+
|
|
154
146
|
.k-selectable {
|
|
155
147
|
height: auto;
|
|
156
148
|
|
|
@@ -158,10 +150,4 @@ table {
|
|
|
158
150
|
width: 150px;
|
|
159
151
|
}
|
|
160
152
|
}
|
|
161
|
-
//.k-grid-content {
|
|
162
|
-
// width: auto;
|
|
163
|
-
// overflow-y: scroll;
|
|
164
|
-
// padding-right: 3px;
|
|
165
|
-
// height: 273px;
|
|
166
|
-
//}
|
|
167
153
|
</style>
|
|
@@ -1,11 +1,15 @@
|
|
|
1
1
|
import { UI_E_NetworkType } from './enums'
|
|
2
|
-
import {
|
|
2
|
+
import {
|
|
3
|
+
UI_T_Adapters,
|
|
4
|
+
UI_T_YNIOption,
|
|
5
|
+
} from '~/components/common/diagramMain/lib/models/types'
|
|
3
6
|
|
|
4
7
|
export interface UI_I_Port {
|
|
5
8
|
id: string
|
|
6
9
|
name: string
|
|
7
10
|
macAddress?: string
|
|
8
11
|
adapter?: string
|
|
12
|
+
isActive?: boolean
|
|
9
13
|
}
|
|
10
14
|
|
|
11
15
|
export interface UI_I_Adapter {
|
|
@@ -286,6 +290,7 @@ export interface UI_I_AdapterStatus {
|
|
|
286
290
|
active: string[]
|
|
287
291
|
standby: string[]
|
|
288
292
|
unused: string[]
|
|
293
|
+
connected: string[]
|
|
289
294
|
}
|
|
290
295
|
|
|
291
296
|
export interface UI_I_SwitchPropertiesFields {
|
|
@@ -456,9 +461,9 @@ export interface UI_I_ModalTabs {
|
|
|
456
461
|
}
|
|
457
462
|
|
|
458
463
|
export interface API_UI_I_Security {
|
|
459
|
-
forged_transmits:
|
|
460
|
-
mac_change:
|
|
461
|
-
promiscuous_mode:
|
|
464
|
+
forged_transmits: UI_T_YNIOption
|
|
465
|
+
mac_change: UI_T_YNIOption
|
|
466
|
+
promiscuous_mode: UI_T_YNIOption
|
|
462
467
|
}
|
|
463
468
|
export interface API_UI_I_Shaping {
|
|
464
469
|
enabled: boolean
|
|
@@ -468,31 +473,51 @@ export interface API_UI_I_Shaping {
|
|
|
468
473
|
peak_bw: number
|
|
469
474
|
}
|
|
470
475
|
export interface API_UI_I_State {
|
|
471
|
-
|
|
472
|
-
|
|
473
|
-
|
|
474
|
-
|
|
475
|
-
|
|
476
|
-
|
|
477
|
-
|
|
476
|
+
state: 0 | 1 | 2 | 3
|
|
477
|
+
// enum State {
|
|
478
|
+
// UNKNOWN = 0;
|
|
479
|
+
// OK = 1;
|
|
480
|
+
// WARNING = 2;
|
|
481
|
+
// ERROR = 3;
|
|
482
|
+
// }
|
|
483
|
+
errors?: string[]
|
|
478
484
|
}
|
|
485
|
+
|
|
479
486
|
export interface API_UI_I_Teaming {
|
|
480
|
-
|
|
481
|
-
|
|
482
|
-
|
|
483
|
-
|
|
487
|
+
mode: 0 | 1 | 2 | 3
|
|
488
|
+
// enum Mode {
|
|
489
|
+
// TEAM_MODE_INHERIT = 0;
|
|
490
|
+
// TEAM_MODE_ACTIVE_BACKUP = 1;
|
|
491
|
+
// TEAM_MODE_SLB = 2;
|
|
492
|
+
// TEAM_MODE_TCP = 3;
|
|
493
|
+
// }
|
|
494
|
+
link_detection_mode: 0 | 1 | 2
|
|
495
|
+
// enum LinkDetectionMode {
|
|
496
|
+
// TEAM_LINK_DETECT_INHERIT = 0;
|
|
497
|
+
// TEAM_LINK_DETECT_CARIER = 1;
|
|
498
|
+
// TEAM_LINK_DETECT_BEAKON = 2;
|
|
499
|
+
// }
|
|
500
|
+
notify_switches: UI_T_YNIOption
|
|
501
|
+
failback: UI_T_YNIOption
|
|
502
|
+
}
|
|
503
|
+
|
|
504
|
+
interface API_UI_I_ListIndex {
|
|
505
|
+
idx: number
|
|
506
|
+
count: number
|
|
484
507
|
}
|
|
508
|
+
|
|
485
509
|
export interface API_UI_I_SwitchItem {
|
|
510
|
+
id: string
|
|
511
|
+
state: API_UI_I_State
|
|
512
|
+
index: API_UI_I_ListIndex
|
|
486
513
|
mtu: number
|
|
487
|
-
name: string
|
|
488
|
-
networks: string[] | null
|
|
489
|
-
nics: UI_I_AdapterStatus
|
|
490
|
-
num_ports: string
|
|
491
514
|
security: API_UI_I_Security
|
|
492
515
|
shaping: API_UI_I_Shaping
|
|
493
|
-
state: API_UI_I_State
|
|
494
|
-
status: API_UI_I_Status
|
|
495
516
|
teaming: API_UI_I_Teaming
|
|
517
|
+
nics: UI_I_AdapterStatus
|
|
518
|
+
networks: string[] | null
|
|
519
|
+
|
|
520
|
+
num_ports: string // TODO MAMMA MIA, WHERE IS IIIIIT?
|
|
496
521
|
}
|
|
497
522
|
export interface API_UI_I_SwitchItems {
|
|
498
523
|
items: API_UI_I_SwitchItem[]
|
|
@@ -6,3 +6,9 @@ export type UI_T_TrafficShapingFieldName = 'average' | 'peak' | 'burstSize'
|
|
|
6
6
|
export type UI_T_PortPropertiesFieldName = 'mtu'
|
|
7
7
|
|
|
8
8
|
export type UI_T_Adapters = UI_I_Adapter & { adapterPosition: number }
|
|
9
|
+
export type UI_T_YNIOption = 0 | 1 | 2
|
|
10
|
+
// UI_T_YNIOption {
|
|
11
|
+
// INHERIT = 0
|
|
12
|
+
// YES = 1
|
|
13
|
+
// NO = 2
|
|
14
|
+
// }
|
|
@@ -67,7 +67,7 @@
|
|
|
67
67
|
/>
|
|
68
68
|
|
|
69
69
|
<foreignObject
|
|
70
|
-
v-if="isVCenter || isVMPortsGroup"
|
|
70
|
+
v-if="(isVCenter || isVMPortsGroup) && props.port.isActive"
|
|
71
71
|
data-title="vm-play-icon"
|
|
72
72
|
width="18"
|
|
73
73
|
height="18"
|
|
@@ -108,10 +108,15 @@
|
|
|
108
108
|
>
|
|
109
109
|
<div>
|
|
110
110
|
<atoms-diagram-icon
|
|
111
|
-
v-if="
|
|
111
|
+
v-if="
|
|
112
|
+
isVmKernel || ((isVCenter || isVMPortsGroup) && props.port.isActive)
|
|
113
|
+
"
|
|
112
114
|
name="fill-port"
|
|
113
115
|
/>
|
|
114
|
-
|
|
116
|
+
<atoms-diagram-icon
|
|
117
|
+
v-if="isVCenter || (isVMPortsGroup && !props.port.isActive)"
|
|
118
|
+
name="outline-port"
|
|
119
|
+
/>
|
|
115
120
|
</div>
|
|
116
121
|
</foreignObject>
|
|
117
122
|
</g>
|
|
@@ -80,6 +80,19 @@ export const networkIconByState = [
|
|
|
80
80
|
'network-error',
|
|
81
81
|
]
|
|
82
82
|
|
|
83
|
+
export const switchLocalizationByState = [
|
|
84
|
+
'unknown',
|
|
85
|
+
'connected',
|
|
86
|
+
'warning',
|
|
87
|
+
'error',
|
|
88
|
+
]
|
|
89
|
+
|
|
90
|
+
export const switchIconByState = [
|
|
91
|
+
'switch-error',
|
|
92
|
+
'switch',
|
|
93
|
+
'switch-warning',
|
|
94
|
+
'switch-error',
|
|
95
|
+
]
|
|
83
96
|
|
|
84
97
|
export const resourcePoolLocalizationByState = [
|
|
85
98
|
'unknown',
|