@xen-orchestra/web-core 0.28.0 → 0.30.0
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/lib/assets/css/typography/_utils.pcss +11 -0
- package/lib/assets/no-result.svg +276 -80
- package/lib/components/console/VtsRemoteConsole.vue +6 -2
- package/lib/components/data-table/VtsDataTable.vue +11 -6
- package/lib/components/progress-bar/VtsProgressBar.vue +54 -0
- package/lib/components/progress-bar-group/VtsProgressBarGroup.vue +76 -0
- package/lib/components/quick-info-card/VtsQuickInfoCard.vue +2 -2
- package/lib/components/quick-info-row/VtsQuickInfoRow.vue +1 -1
- package/lib/components/select/VtsSelect.vue +1 -1
- package/lib/components/state-hero/VtsStateHero.vue +107 -47
- package/lib/components/task/VtsQuickTaskList.vue +1 -1
- package/lib/components/ui/card/UiCard.vue +6 -1
- package/lib/components/ui/collapsible-list/UiCollapsibleList.vue +1 -2
- package/lib/components/ui/data-ruler/UiDataRuler.vue +54 -6
- package/lib/components/ui/progress-bar/UiProgressBar.vue +14 -70
- package/lib/composables/tree-filter.composable.ts +4 -2
- package/lib/icons/index.ts +1 -1
- package/lib/icons/object-icons.ts +33 -2
- package/lib/locales/cs.json +1 -1
- package/lib/locales/de.json +1 -1
- package/lib/locales/en.json +24 -2
- package/lib/locales/es.json +1 -1
- package/lib/locales/fa.json +1 -1
- package/lib/locales/fr.json +24 -2
- package/lib/locales/it.json +1 -1
- package/lib/locales/nl.json +1 -1
- package/lib/locales/sv.json +1 -1
- package/lib/packages/progress/use-progress-group.ts +1 -1
- package/lib/utils/progress.util.ts +72 -0
- package/lib/utils/size.util.ts +6 -0
- package/package.json +1 -1
- package/lib/components/state-hero/VtsAllDoneHero.vue +0 -16
- package/lib/components/state-hero/VtsAllGoodHero.vue +0 -16
- package/lib/components/state-hero/VtsComingSoonHero.vue +0 -16
- package/lib/components/state-hero/VtsErrorNoDataHero.vue +0 -14
- package/lib/components/state-hero/VtsLoadingHero.vue +0 -57
- package/lib/components/state-hero/VtsNoDataHero.vue +0 -14
- package/lib/components/state-hero/VtsNoSelectionHero.vue +0 -16
- package/lib/components/state-hero/VtsObjectNotFoundHero.vue +0 -17
- package/lib/components/state-hero/VtsOfflineHero.vue +0 -16
- package/lib/components/state-hero/VtsPageNotFoundHero.vue +0 -33
package/lib/assets/no-result.svg
CHANGED
|
@@ -1,81 +1,277 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
<
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
<
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
<path
|
|
59
|
-
|
|
60
|
-
<path
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
<
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
<
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
<
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
1
|
+
<?xml version="1.0" encoding="UTF-8"?>
|
|
2
|
+
<svg id="Dome" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 397.13 396.85">
|
|
3
|
+
<defs>
|
|
4
|
+
<style>
|
|
5
|
+
.cls-1 {
|
|
6
|
+
fill: #1e1b4c;
|
|
7
|
+
}
|
|
8
|
+
|
|
9
|
+
.cls-2 {
|
|
10
|
+
fill: #fff;
|
|
11
|
+
}
|
|
12
|
+
|
|
13
|
+
.cls-3 {
|
|
14
|
+
fill: #7e7ca3;
|
|
15
|
+
}
|
|
16
|
+
|
|
17
|
+
.cls-4 {
|
|
18
|
+
opacity: .14;
|
|
19
|
+
}
|
|
20
|
+
|
|
21
|
+
.cls-4, .cls-5 {
|
|
22
|
+
fill: #8f84ff;
|
|
23
|
+
}
|
|
24
|
+
|
|
25
|
+
.cls-6 {
|
|
26
|
+
fill: #535084;
|
|
27
|
+
}
|
|
28
|
+
|
|
29
|
+
.cls-7 {
|
|
30
|
+
fill: #2ca878;
|
|
31
|
+
}
|
|
32
|
+
|
|
33
|
+
.cls-8 {
|
|
34
|
+
fill: #7455e7;
|
|
35
|
+
}
|
|
36
|
+
|
|
37
|
+
.cls-9 {
|
|
38
|
+
fill: #f0f;
|
|
39
|
+
}
|
|
40
|
+
|
|
41
|
+
.cls-10 {
|
|
42
|
+
fill: #fffce5;
|
|
43
|
+
}
|
|
44
|
+
|
|
45
|
+
.cls-11 {
|
|
46
|
+
fill: #1a1b38;
|
|
47
|
+
}
|
|
48
|
+
|
|
49
|
+
.cls-12 {
|
|
50
|
+
fill: #be1621;
|
|
51
|
+
}
|
|
52
|
+
</style>
|
|
53
|
+
</defs>
|
|
54
|
+
<path class="cls-4"
|
|
55
|
+
d="M335.6,270.5c5.93-26.71-4.17-74.78-64.42-127.89-60.26-53.11-137.16-34.9-137.16-34.9,27.12-19.7,82.16-6.98,82.16-6.98-15.14-12.76-89.47-41.08-125.96-5.88-32.1,30.96,22.73,110.72,22.73,110.72-29-23.09-44.9-77.72-44.9-77.72,0,0-8.77,68.44,58.89,123.86,65.43,53.59,141.89,41.06,141.89,41.06-40.46,15.34-88.36,2.36-89.31,2.11.58.56,48.77,47,114.66,20.34,66.29-26.83-5.5-122.23-5.5-122.23,28.63,19.54,46.92,77.51,46.92,77.51ZM301.08,252.19s-13.53-42.89-34.72-57.37c1.1,1.48,52.62,70.82,4.06,90.47-49.08,19.86-84.89-15.07-84.89-15.07,0,0,35.87,9.92,66.12-1.55,0,0-56.6,9.27-105.04-30.4-50.08-41.02-43.59-91.69-43.59-91.69,0,0,11.76,40.44,33.23,57.54,0,0-40.59-59.05-16.83-81.97,27.02-26.06,82.05-5.09,93.26,4.35,0,0-40.75-9.41-60.83,5.17,0,0,56.93-13.48,101.54,25.84,44.6,39.32,52.08,74.9,47.69,94.68Z"/>
|
|
56
|
+
<path class="cls-5"
|
|
57
|
+
d="M301.08,252.19c4.39-19.78-3.09-55.36-47.69-94.68-44.61-39.32-101.54-25.84-101.54-25.84,20.08-14.58,60.83-5.17,60.83-5.17-11.21-9.44-66.24-30.41-93.26-4.35-23.76,22.92,16.83,81.97,16.83,81.97-21.47-17.1-33.23-57.54-33.23-57.54,0,0-6.49,50.67,43.59,91.69,48.44,39.67,105.04,30.4,105.04,30.4-30.25,11.47-66.12,1.55-66.12,1.55,0,0,35.81,34.93,84.89,15.07,48.56-19.65-2.96-88.99-4.06-90.47,21.19,14.48,34.72,57.37,34.72,57.37ZM275.86,238.81s-10.07-31.92-25.83-42.68c0,0,39.53,52.52,3.03,67.29-36.06,14.59-62.49-10.57-63.13-11.19.67.18,26.96,7.26,49.17-1.16,0,0-42.1,6.89-78.12-22.61-37.25-30.51-32.42-68.2-32.42-68.2,0,0,8.75,30.08,24.72,42.8,0,0-30.19-43.92-12.52-60.96,20.1-19.38,61.02-3.79,69.36,3.23,0,0-30.28-6.99-45.22,3.83,1.05-.24,42.74-9.64,75.49,19.23,33.18,29.24,38.74,55.71,35.47,70.42Z"/>
|
|
58
|
+
<path class="cls-11"
|
|
59
|
+
d="M275.86,238.81c3.27-14.71-2.29-41.18-35.47-70.42-32.75-28.87-74.44-19.47-75.49-19.23,14.94-10.82,45.22-3.83,45.22-3.83-8.34-7.02-49.26-22.61-69.36-3.23-17.67,17.04,12.52,60.96,12.52,60.96-15.97-12.72-24.72-42.8-24.72-42.8,0,0-4.83,37.69,32.42,68.2,36.02,29.5,78.12,22.61,78.12,22.61-22.21,8.42-48.5,1.34-49.17,1.16.64.62,27.07,25.78,63.13,11.19,36.5-14.77-3.03-67.29-3.03-67.29,15.76,10.76,25.83,42.68,25.83,42.68ZM234.05,224.46c-8.33,10.25-28.64,7.55-45.36-6.04-16.73-13.58-23.54-32.91-15.22-43.16,8.33-10.25,28.64-7.54,45.36,6.04,16.73,13.59,23.54,32.91,15.22,43.16Z"/>
|
|
60
|
+
<path class="cls-3"
|
|
61
|
+
d="M218.83,181.3c-16.72-13.58-37.03-16.29-45.36-6.04-8.32,10.25-1.51,29.58,15.22,43.16,16.72,13.59,37.03,16.29,45.36,6.04,8.32-10.25,1.51-29.57-15.22-43.16ZM225.01,217.12c-5.84,7.2-20.09,5.3-31.83-4.23-11.74-9.54-16.52-23.1-10.67-30.29,5.84-7.19,20.09-5.3,31.83,4.24,11.74,9.53,16.52,23.09,10.67,30.28Z"/>
|
|
62
|
+
<path class="cls-6"
|
|
63
|
+
d="M214.34,186.84c-11.74-9.54-25.99-11.43-31.83-4.24-5.85,7.19-1.07,20.75,10.67,30.29,11.74,9.53,25.99,11.43,31.83,4.23,5.85-7.19,1.07-20.75-10.67-30.28ZM218.93,212.19c-4.17,5.13-14.34,3.78-22.72-3.03s-11.79-16.49-7.62-21.62c4.17-5.14,14.34-3.78,22.72,3.02,8.38,6.81,11.79,16.49,7.62,21.63Z"/>
|
|
64
|
+
<path class="cls-1"
|
|
65
|
+
d="M211.31,190.56c-8.38-6.8-18.55-8.16-22.72-3.02-4.17,5.13-.76,14.81,7.62,21.62s18.55,8.16,22.72,3.03c4.17-5.14.76-14.82-7.62-21.63ZM212.42,207.12c-2.45,2.93-8.32,2.06-13.11-1.95-4.78-4.01-6.67-9.63-4.21-12.56,2.45-2.93,8.32-2.06,13.11,1.94,4.78,4.01,6.67,9.63,4.21,12.57Z"/>
|
|
66
|
+
<g>
|
|
67
|
+
<path class="cls-11"
|
|
68
|
+
d="M212.42,207.12c-2.45,2.93-8.32,2.06-13.11-1.95-4.78-4.01-6.67-9.63-4.21-12.56,2.45-2.93,8.32-2.06,13.11,1.94,4.78,4.01,6.67,9.63,4.21,12.57Z"/>
|
|
69
|
+
<path class="cls-11"
|
|
70
|
+
d="M208.15,209.36c-.47,0-.97-.04-1.48-.11-2.57-.38-5.29-1.69-7.68-3.69-2.38-2-4.15-4.45-4.97-6.91-.85-2.54-.6-4.8.7-6.36,2.62-3.14,8.82-2.29,13.81,1.88,4.98,4.18,6.9,10.14,4.27,13.27h0c-1.05,1.26-2.67,1.92-4.66,1.92ZM199.39,191.36c-1.63,0-3.02.51-3.91,1.57-1.07,1.28-1.26,3.19-.52,5.4.77,2.28,2.42,4.58,4.67,6.46,2.25,1.88,4.8,3.11,7.18,3.47,2.31.34,4.15-.18,5.22-1.45h0c2.27-2.72.41-8.04-4.15-11.87-2.79-2.33-5.94-3.57-8.5-3.57Z"/>
|
|
71
|
+
</g>
|
|
72
|
+
<polygon class="cls-12"
|
|
73
|
+
points="194.8 106.15 194.1 108.49 191.76 109.19 194.1 109.88 194.8 112.23 195.49 109.88 197.83 109.19 195.49 108.49 194.8 106.15"/>
|
|
74
|
+
<polygon class="cls-12"
|
|
75
|
+
points="346.78 285.14 345.74 288.63 342.25 289.66 345.74 290.7 346.78 294.19 347.81 290.7 351.31 289.66 347.81 288.63 346.78 285.14"/>
|
|
76
|
+
<polygon class="cls-5"
|
|
77
|
+
points="75.61 181.78 74.58 185.27 71.09 186.31 74.58 187.34 75.61 190.83 76.65 187.34 80.14 186.31 76.65 185.27 75.61 181.78"/>
|
|
78
|
+
<polygon class="cls-5"
|
|
79
|
+
points="120.86 227.03 119.82 230.53 116.33 231.56 119.82 232.6 120.86 236.09 121.89 232.6 125.38 231.56 121.89 230.53 120.86 227.03"/>
|
|
80
|
+
<polygon class="cls-7"
|
|
81
|
+
points="218.94 87.14 217.91 90.64 214.42 91.67 217.91 92.71 218.94 96.2 219.98 92.71 223.47 91.67 219.98 90.64 218.94 87.14"/>
|
|
82
|
+
<polygon class="cls-7"
|
|
83
|
+
points="167.19 283.62 165.46 289.48 159.6 291.21 165.46 292.95 167.19 298.81 168.93 292.95 174.79 291.21 168.93 289.48 167.19 283.62"/>
|
|
84
|
+
<polygon class="cls-12"
|
|
85
|
+
points="87.55 165.87 86.77 168.5 84.14 169.28 86.77 170.06 87.55 172.69 88.33 170.06 90.97 169.28 88.33 168.5 87.55 165.87"/>
|
|
86
|
+
<polygon class="cls-5"
|
|
87
|
+
points="289.12 296.3 287.74 300.94 283.1 302.31 287.74 303.69 289.12 308.33 290.49 303.69 295.13 302.31 290.49 300.94 289.12 296.3"/>
|
|
88
|
+
<polygon class="cls-7"
|
|
89
|
+
points="52.62 220.15 51.25 224.79 46.61 226.16 51.25 227.54 52.62 232.18 54 227.54 58.64 226.16 54 224.79 52.62 220.15"/>
|
|
90
|
+
<polygon class="cls-5"
|
|
91
|
+
points="304.1 167.69 302.73 172.33 298.09 173.71 302.73 175.08 304.1 179.72 305.48 175.08 310.12 173.71 305.48 172.33 304.1 167.69"/>
|
|
92
|
+
<path class="cls-2"
|
|
93
|
+
d="M227.11,166.36c.52,11.74-7.42,21.72-18.24,24.36l-4.89,7.71c-.38.59-1.24.59-1.61,0l-4.88-7.7c-10.49-2.55-18.27-12.01-18.27-23.28,0-13.79,11.65-24.87,25.64-23.91,12.06.82,21.72,10.76,22.25,22.83Z"/>
|
|
94
|
+
<path class="cls-12"
|
|
95
|
+
d="M215.67,164.47c0-7.53-6.81-13.48-14.61-12.01-4.91.92-8.81,4.93-9.67,9.84-.54,3.07.1,5.96,1.5,8.35h0l.03.05c.47.79,1.06,1.36,1.65,2.19l7.1,9.41c.88,1.17,2.64,1.17,3.53,0l6.99-9.25s1.3-1.55,1.78-2.35l.03-.03h0c1.07-1.82,1.69-3.92,1.69-6.18ZM203.44,169.8c-2.97,0-5.38-2.41-5.38-5.38s2.41-5.38,5.38-5.38,5.38,2.41,5.38,5.38-2.41,5.38-5.38,5.38Z"/>
|
|
96
|
+
<circle class="cls-2" cx="326.64" cy="2.28" r="1.62"/>
|
|
97
|
+
<path class="cls-5"
|
|
98
|
+
d="M338.59,275.56c-.15.51-.37,1.02-.65,1.53-1.78,3.2-6.11,6.4-11.67,8.23-5.25,1.73-10.33,1.82-13.69.55-.77-.29-1.45-.66-2.03-1.09,4.31.48,9.55-.1,14.92-1.86,5.37-1.77,9.93-4.41,13.11-7.36Z"/>
|
|
99
|
+
<path class="cls-5"
|
|
100
|
+
d="M343.07,266.71c-.33,2.26-1.86,4.68-4.28,6.96-3.24,3.06-8.08,5.88-13.82,7.76-2.76.91-5.49,1.52-8.07,1.85-2.77.35-5.37.38-7.66.1-3.3-.4-5.96-1.44-7.57-3.06.78-5.29,8.07-11.43,18.09-14.72,1.04-.34,2.08-.64,3.11-.9,8.83-2.23,16.81-1.39,20.19,2.01Z"/>
|
|
101
|
+
<path class="cls-8"
|
|
102
|
+
d="M343.42,267.09c-.12,2.76-1.89,5.74-4.84,8.47-3.18,2.94-7.74,5.59-13.11,7.36-5.37,1.77-10.61,2.34-14.92,1.86-3.99-.44-7.18-1.8-8.92-3.95.01-.17.03-.34.05-.51,1.61,1.62,4.27,2.66,7.57,3.06,4.42.54,9.99-.07,15.73-1.95,5.74-1.89,10.58-4.7,13.82-7.76,2.42-2.28,3.94-4.7,4.28-6.96.12.12.24.25.35.38Z"/>
|
|
103
|
+
<path class="cls-10"
|
|
104
|
+
d="M332.53,265.4c.12.5.22,1.01.28,1.51-1.21,1.43-2.71,2.75-4.45,3.89-1.76,1.16-3.77,2.14-5.97,2.86s-4.37,1.12-6.47,1.24c-2.09.12-4.1-.05-5.93-.48-.24-.42-.45-.86-.65-1.32.01-.01.03-.03.04-.05,2.08.51,4.39.68,6.8.48,1.88-.16,3.82-.55,5.77-1.19,1.95-.64,3.76-1.49,5.37-2.48,2.08-1.28,3.84-2.8,5.21-4.46Z"/>
|
|
105
|
+
<path class="cls-12"
|
|
106
|
+
d="M343.42,267.09c-.12,2.76-1.89,5.74-4.84,8.47-3.18,2.94-7.74,5.59-13.11,7.36-5.37,1.77-10.61,2.34-14.92,1.86-3.99-.44-7.18-1.8-8.92-3.95.01-.17.03-.34.05-.51,1.61,1.62,4.27,2.66,7.57,3.06,4.42.54,9.99-.07,15.73-1.95,5.74-1.89,10.58-4.7,13.82-7.76,2.42-2.28,3.94-4.7,4.28-6.96.12.12.24.25.35.38Z"/>
|
|
107
|
+
<path class="cls-12"
|
|
108
|
+
d="M316.62,256.03c-6.37,2.1-9.8,9.14-7.72,15.8h0c.02.06.04.12.06.19.11.34.24.68.38,1.01.02,0,.05.01.07.02h0c3.7.92,8.13.75,12.57-.71,4.46-1.47,8.15-3.99,10.58-6.94,0-.02-.01-.05-.02-.07h0c-.08-.32-.17-.65-.28-.97-2.21-6.71-9.21-10.44-15.65-8.32Z"/>
|
|
109
|
+
<g>
|
|
110
|
+
<polygon class="cls-9"
|
|
111
|
+
points="76.12 82.81 75.43 85.15 73.08 85.85 75.43 86.54 76.12 88.89 76.82 86.54 79.16 85.85 76.82 85.15 76.12 82.81"/>
|
|
112
|
+
<polygon class="cls-9"
|
|
113
|
+
points="128.94 276.01 128.16 278.64 125.53 279.42 128.16 280.2 128.94 282.83 129.72 280.2 132.35 279.42 129.72 278.64 128.94 276.01"/>
|
|
114
|
+
<polygon class="cls-9"
|
|
115
|
+
points="104.14 80.16 103.1 83.65 99.61 84.68 103.1 85.72 104.14 89.21 105.17 85.72 108.66 84.68 105.17 83.65 104.14 80.16"/>
|
|
116
|
+
<path class="cls-9"
|
|
117
|
+
d="M281.95,291.05c.09.05.19.11.28.16.23.13.23.49,0,.62-.09.05-.19.11-.28.16-.36.21-.82-.06-.82-.47,0-.42.46-.68.82-.47Z"/>
|
|
118
|
+
<path class="cls-9" d="M240.23,137.23c.98,0,.98,1.53,0,1.53-.98,0-.98-1.53,0-1.53Z"/>
|
|
119
|
+
<path class="cls-9" d="M110.38,283.97c.9,0,.9,1.4,0,1.4s-.9-1.4,0-1.4Z"/>
|
|
120
|
+
<path class="cls-9"
|
|
121
|
+
d="M96.46,261.11c.45,0,.75.36.78.78,0,.1,0,.18-.02.28-.05.41-.31.76-.76.76s-.71-.35-.76-.76c-.01-.1-.02-.18-.02-.28.03-.42.33-.78.78-.78Z"/>
|
|
122
|
+
<path class="cls-9" d="M162.11,88.95c.83,0,.83,1.29,0,1.29s-.83-1.29,0-1.29Z"/>
|
|
123
|
+
<path class="cls-9" d="M174.38,103.11c1.18,0,1.18,1.83,0,1.83s-1.18-1.83,0-1.83Z"/>
|
|
124
|
+
<path class="cls-9"
|
|
125
|
+
d="M165.83,112.12c.12,0,.25-.01.37-.02.14,0,.14.23,0,.22-.12,0-.25-.01-.37-.02-.11,0-.11-.17,0-.17Z"/>
|
|
126
|
+
<path class="cls-9" d="M116.33,118.19c.93,0,.93,1.44,0,1.44-.93,0-.93-1.44,0-1.44Z"/>
|
|
127
|
+
<path class="cls-9"
|
|
128
|
+
d="M222.37,112.15l.19-.26c.3-.41.82-.41,1.11,0l.19.26c.39.55-.14,1.3-.74,1.3s-1.14-.75-.74-1.3Z"/>
|
|
129
|
+
<path class="cls-9"
|
|
130
|
+
d="M207.52,101.08c.06-.06.13-.12.19-.18.47-.43,1.27-.15,1.27.52s-.8.95-1.27.52c-.06-.06-.13-.12-.19-.18-.19-.17-.19-.52,0-.69Z"/>
|
|
131
|
+
<path class="cls-9" d="M212.7,118.91c.48,0,.48.74,0,.74s-.48-.74,0-.74Z"/>
|
|
132
|
+
<path class="cls-9" d="M235.58,125.42c.83,0,.83,1.29,0,1.29s-.83-1.29,0-1.29Z"/>
|
|
133
|
+
<path class="cls-9"
|
|
134
|
+
d="M121.63,102.56c.15-.11.3-.18.48-.21.5-.1,1.01.22,1.01.77,0,.55-.51.86-1.01.77-.18-.04-.33-.1-.48-.21-.41-.3-.41-.81,0-1.11Z"/>
|
|
135
|
+
<path class="cls-9"
|
|
136
|
+
d="M302.17,159.15c.34-.22.67-.31,1.06-.16.47.18.47.77,0,.95-.39.15-.72.06-1.06-.16-.23-.15-.23-.47,0-.62Z"/>
|
|
137
|
+
<path class="cls-9" d="M292.68,157.03c.73,0,.73,1.13,0,1.13s-.73-1.13,0-1.13Z"/>
|
|
138
|
+
<path class="cls-9" d="M289.71,168.52c.79,0,.79,1.22,0,1.22s-.79-1.22,0-1.22Z"/>
|
|
139
|
+
<path class="cls-9" d="M281.15,169.61c.82,0,.82,1.26,0,1.26s-.82-1.26,0-1.26Z"/>
|
|
140
|
+
<path class="cls-9" d="M284.5,180.08c.75,0,.75,1.16,0,1.16s-.75-1.16,0-1.16Z"/>
|
|
141
|
+
<path class="cls-9" d="M271.74,156.92c.87,0,.87,1.35,0,1.35s-.87-1.35,0-1.35Z"/>
|
|
142
|
+
<path class="cls-9"
|
|
143
|
+
d="M305.83,210.63c.26.23.37.53.49.85.14.36-.38.51-.58.24-.19-.25-.36-.49-.41-.81-.04-.29.26-.49.49-.29Z"/>
|
|
144
|
+
<path class="cls-9"
|
|
145
|
+
d="M301.03,198.36c.11.14.22.28.33.42.13.17-.06.36-.23.23-.14-.11-.28-.22-.42-.33-.23-.18.14-.56.32-.32Z"/>
|
|
146
|
+
<path class="cls-9"
|
|
147
|
+
d="M310.53,199.01c.09.05.19.1.28.15.35.19.35.75,0,.94-.09.05-.19.1-.28.15-.48.25-1.08-.06-1.08-.62,0-.56.61-.87,1.08-.62Z"/>
|
|
148
|
+
<path class="cls-9" d="M311.28,182.54c1.42,0,1.42,2.2,0,2.2s-1.42-2.2,0-2.2Z"/>
|
|
149
|
+
<path class="cls-9"
|
|
150
|
+
d="M322.32,177.55c.02-.09.04-.17.07-.26.12-.42.73-.42.85,0,.03.09.05.17.07.26.08.32-.15.65-.49.65s-.57-.33-.49-.65Z"/>
|
|
151
|
+
<path class="cls-9" d="M321.7,158.6c.63,0,.63.98,0,.98s-.63-.98,0-.98Z"/>
|
|
152
|
+
<path class="cls-9"
|
|
153
|
+
d="M284.68,136.84c.15.08.3.17.44.25.28.16.32.55.1.77-.22.22-.61.18-.77-.1-.08-.15-.17-.3-.25-.44-.17-.31.17-.65.48-.48Z"/>
|
|
154
|
+
<path class="cls-9" d="M265.9,122.29c.91,0,.91,1.42,0,1.42s-.91-1.42,0-1.42Z"/>
|
|
155
|
+
<path class="cls-9"
|
|
156
|
+
d="M246.08,99.94c.11-.05.22-.09.33-.14.32-.13.66.2.66.5,0,.31-.34.64-.66.5-.11-.05-.22-.09-.33-.14-.36-.15-.36-.59,0-.74Z"/>
|
|
157
|
+
<path class="cls-9"
|
|
158
|
+
d="M236.42,105.41c.1.06.18.11.29.13.57.1.7.89.33,1.26s-1.16.24-1.26-.33c-.02-.11-.07-.19-.13-.29-.27-.49.27-1.03.76-.76Z"/>
|
|
159
|
+
<path class="cls-9" d="M224.98,100.88c.7,0,.7,1.09,0,1.09s-.7-1.09,0-1.09Z"/>
|
|
160
|
+
<path class="cls-9"
|
|
161
|
+
d="M233.07,93.29c.11-.05.22-.09.33-.14.29-.12.61.18.61.46,0,.28-.31.58-.61.46-.11-.05-.22-.09-.33-.14-.32-.13-.32-.52,0-.65Z"/>
|
|
162
|
+
<path class="cls-9"
|
|
163
|
+
d="M223.12,79.12c.74,0,.98.98.37,1.36,0,0,0,0,0,0-.19.24-.53.24-.72,0,0,0,0,0,0,0-.61-.38-.37-1.36.37-1.36Z"/>
|
|
164
|
+
<path class="cls-9" d="M208.98,75.58c.7,0,.7,1.09,0,1.09s-.7-1.09,0-1.09Z"/>
|
|
165
|
+
<path class="cls-9"
|
|
166
|
+
d="M208.4,92.14c.09-.05.19-.1.28-.15.39-.21.89.05.89.51,0,.46-.5.71-.89.51-.09-.05-.19-.1-.28-.15-.27-.14-.27-.57,0-.72Z"/>
|
|
167
|
+
<path class="cls-9"
|
|
168
|
+
d="M185.69,88.25c.17.02.31.05.45.15.28.19.28.57,0,.75-.14.09-.28.13-.45.15-.34.05-.69-.14-.69-.53,0-.39.35-.57.69-.53Z"/>
|
|
169
|
+
<path class="cls-9" d="M240.23,87.01c.84,0,.84,1.31,0,1.31s-.84-1.31,0-1.31Z"/>
|
|
170
|
+
<path class="cls-9" d="M248.04,110.27c.59,0,.59.92,0,.92s-.59-.92,0-.92Z"/>
|
|
171
|
+
<path class="cls-9"
|
|
172
|
+
d="M332.58,303.01c.16.01.32.04.48.07.71.15.71,1.28,0,1.43-.16.03-.31.06-.48.07-1.02.07-1.02-1.65,0-1.57Z"/>
|
|
173
|
+
<path class="cls-9" d="M319.47,316.24c.75,0,.75,1.16,0,1.16s-.75-1.16,0-1.16Z"/>
|
|
174
|
+
<path class="cls-9" d="M354.07,224.56c.96,0,.96,1.48,0,1.48-.96,0-.96-1.48,0-1.48Z"/>
|
|
175
|
+
<path class="cls-9"
|
|
176
|
+
d="M322.83,200.61c.05-.19.18-.36.35-.46.3-.17.68-.12.92.12.37.37.21.92-.13,1.18,0,.21-.15.41-.41.42-.49.02-.81-.49-.75-.95-.02-.11-.01-.21.02-.31Z"/>
|
|
177
|
+
<path class="cls-9"
|
|
178
|
+
d="M270.55,309.54c.7.41.73,1.5,0,1.9-.31.17-.61.27-.95.09-.4-.22-.71-.55-.71-1.04,0-.83.94-1.37,1.66-.95Z"/>
|
|
179
|
+
<path class="cls-9"
|
|
180
|
+
d="M129.98,321.92c-.14.05-.25.11-.36.19-.1.02-.21.04-.31.06-.48.09-.48.88,0,.97.1.02.21.04.31.06.11.08.22.15.36.19.47.16.97-.26.97-.74s-.49-.9-.97-.74Z"/>
|
|
181
|
+
<path class="cls-9"
|
|
182
|
+
d="M113.09,315.56s-.07-.06-.1-.09c-.43-.38-1.16-.14-1.16.48s.73.86,1.16.48c.03-.03.07-.06.1-.09.22-.19.22-.59,0-.79Z"/>
|
|
183
|
+
<path class="cls-9"
|
|
184
|
+
d="M336.33,239.84c.05-.17.12-.33.22-.47.27-.39.79-.39,1.05,0,.1.15.16.3.22.47.15.48-.26.98-.75.98s-.9-.5-.75-.98Z"/>
|
|
185
|
+
<path class="cls-9"
|
|
186
|
+
d="M172.33,257.7l.27-.18c.39-.26.9.08.9.52,0,.43-.52.77-.9.52l-.27-.18c-.25-.17-.25-.51,0-.68Z"/>
|
|
187
|
+
<path class="cls-9" d="M293.23,282.43c.52,0,.52.81,0,.81s-.52-.81,0-.81Z"/>
|
|
188
|
+
<path class="cls-9" d="M207.86,286.31c.97,0,.97,1.5,0,1.5s-.97-1.5,0-1.5Z"/>
|
|
189
|
+
<path class="cls-9" d="M191.12,289.66c.48,0,.48.74,0,.74s-.48-.74,0-.74Z"/>
|
|
190
|
+
<path class="cls-9"
|
|
191
|
+
d="M173.49,272.55c.14.1.28.2.42.3.27.19.36.57.11.82-.25.25-.63.17-.82-.11-.1-.14-.2-.28-.3-.42-.25-.35.25-.85.6-.6Z"/>
|
|
192
|
+
<path class="cls-9"
|
|
193
|
+
d="M155.68,275.29s0-.02.01-.03c.15-.35.77-.35.92,0,0,.01.01.02.02.04.13.1.23.22.28.4.11.41-.14.85-.55.97-.41.11-.85-.14-.97-.55-.09-.33.04-.63.28-.82Z"/>
|
|
194
|
+
<path class="cls-9" d="M138.67,250.8c.7,0,.7,1.09,0,1.09s-.7-1.09,0-1.09Z"/>
|
|
195
|
+
<path class="cls-9"
|
|
196
|
+
d="M153.18,239.95c.55,0,.78.65.43,1.04.04-.05.03-.03-.01.06-.16.41-.68.41-.84,0-.04-.09-.05-.11-.01-.06-.35-.39-.12-1.04.43-1.04Z"/>
|
|
197
|
+
<path class="cls-9" d="M158.39,255.15c.37,0,.37.57,0,.57s-.37-.57,0-.57Z"/>
|
|
198
|
+
<path class="cls-9" d="M185.54,262.02c1.11,0,1.11,1.72,0,1.72s-1.11-1.72,0-1.72Z"/>
|
|
199
|
+
<path class="cls-9"
|
|
200
|
+
d="M255.61,298.13c.46,0,.69.48.5.87-.05.1-.09.19-.14.29-.13.27-.58.27-.72,0-.05-.1-.09-.19-.14-.29-.19-.38.04-.87.5-.87Z"/>
|
|
201
|
+
<path class="cls-9" d="M181.82,281.49c.46,0,.46.72,0,.72s-.46-.72,0-.72Z"/>
|
|
202
|
+
<path class="cls-9" d="M164.34,268.18c.84,0,.84,1.31,0,1.31s-.84-1.31,0-1.31Z"/>
|
|
203
|
+
<path class="cls-9" d="M141.27,100.53c.67,0,.67,1.05,0,1.05s-.67-1.05,0-1.05Z"/>
|
|
204
|
+
<path class="cls-9"
|
|
205
|
+
d="M122.05,82.38c.22.05.41.1.59.23.36.24.46.74.14,1.06-.33.33-.82.22-1.06-.14-.13-.19-.18-.38-.23-.59-.08-.35.22-.64.56-.56Z"/>
|
|
206
|
+
<path class="cls-9"
|
|
207
|
+
d="M117.26,92.64c.46.19.88.56.73,1.12-.05.18-.2.33-.38.38-.55.15-.93-.27-1.12-.73-.17-.42.35-.93.76-.76Z"/>
|
|
208
|
+
<path class="cls-9"
|
|
209
|
+
d="M86.36,90.99l.26-.19c.42-.3,1,.11,1,.57,0,.47-.58.88-1,.57-.09-.06-.17-.13-.26-.19-.29-.21-.29-.57,0-.77Z"/>
|
|
210
|
+
<path class="cls-9"
|
|
211
|
+
d="M79.52,73.16c.66,0,.94.78.52,1.25-.06.06-.12.13-.18.19-.17.19-.51.19-.68,0-.06-.06-.12-.13-.18-.19-.42-.46-.14-1.25.52-1.25Z"/>
|
|
212
|
+
<path class="cls-9" d="M102.59,72.65c.65,0,.65,1,0,1s-.65-1,0-1Z"/>
|
|
213
|
+
<path class="cls-9" d="M124.16,67c.73,0,.73,1.13,0,1.13s-.73-1.13,0-1.13Z"/>
|
|
214
|
+
<path class="cls-9" d="M97.75,98.3c.67,0,.67,1.05,0,1.05s-.67-1.05,0-1.05Z"/>
|
|
215
|
+
<path class="cls-9"
|
|
216
|
+
d="M72.45,73.73c.47,0,.7.58.38.91.02.03.02.06-.02.09-.1.35-.61.35-.71,0-.04-.04-.04-.07-.02-.09-.32-.33-.09-.91.38-.91Z"/>
|
|
217
|
+
<path class="cls-9"
|
|
218
|
+
d="M42.55,144.81c.44-.44,1.23-.12,1.23.51,0,0,0,0,0,0,.02.04.04.09.07.13.23.43-.22.88-.66.66-.04-.02-.09-.04-.13-.07,0,0,0,0,0,0-.63,0-.95-.78-.51-1.23Z"/>
|
|
219
|
+
<path class="cls-9" d="M68.36,134.69c.76,0,.76,1.18,0,1.18s-.76-1.18,0-1.18Z"/>
|
|
220
|
+
<path class="cls-9"
|
|
221
|
+
d="M76.38,153.5c.24.04.47.08.71.12.63.1.63,1.16,0,1.26-.24.04-.47.08-.71.12-.49.08-.98-.2-.98-.75,0-.54.49-.83.98-.75Z"/>
|
|
222
|
+
<path class="cls-9" d="M99.24,157.78c1.21,0,1.21,1.87,0,1.87-1.21,0-1.21-1.87,0-1.87Z"/>
|
|
223
|
+
<path class="cls-9"
|
|
224
|
+
d="M99.94,183.6c.15-.19.36-.25.57-.34.48-.19.98.29.98.75s-.5.94-.98.75c-.21-.08-.43-.15-.57-.34-.21-.27-.21-.55,0-.82Z"/>
|
|
225
|
+
<path class="cls-9"
|
|
226
|
+
d="M76.92,172.93c.62,0,.83.71.47,1.14-.06.07-.11.13-.17.2-.14.17-.46.17-.6,0-.06-.07-.11-.14-.17-.2-.36-.43-.15-1.14.47-1.14Z"/>
|
|
227
|
+
<path class="cls-9" d="M81.38,194.36c1.04,0,1.04,1.61,0,1.61-1.04,0-1.04-1.61,0-1.61Z"/>
|
|
228
|
+
<path class="cls-9"
|
|
229
|
+
d="M68.76,197.8c.07-.06.13-.11.2-.17.47-.39,1.25-.16,1.25.52,0,.68-.78.91-1.25.52-.07-.06-.13-.11-.2-.17-.19-.16-.19-.53,0-.69Z"/>
|
|
230
|
+
<path class="cls-9" d="M150.57,290.77c.97,0,.97,1.5,0,1.5s-.97-1.5,0-1.5Z"/>
|
|
231
|
+
<path class="cls-9" d="M177.73,306.43c.93,0,.93,1.44,0,1.44s-.93-1.44,0-1.44Z"/>
|
|
232
|
+
<path class="cls-9" d="M212.02,310.72c-1,0-1,1.55,0,1.55s1-1.55,0-1.55Z"/>
|
|
233
|
+
<path class="cls-9" d="M246.99,314.18c-1.34,0-1.34,2.07,0,2.07s1.34-2.07,0-2.07Z"/>
|
|
234
|
+
<path class="cls-9" d="M138.67,300.98c1.71,0,1.71,2.66,0,2.66-1.71,0-1.71-2.66,0-2.66Z"/>
|
|
235
|
+
<path class="cls-9" d="M231.67,312.37c.94,0,.94,1.46,0,1.46s-.94-1.46,0-1.46Z"/>
|
|
236
|
+
<path class="cls-9" d="M304.1,308.86c.69,0,.69,1.07,0,1.07s-.69-1.07,0-1.07Z"/>
|
|
237
|
+
<path class="cls-9"
|
|
238
|
+
d="M223.66,298.96c.24-.23.65-.19.82.11.13.23.06.5-.12.66.01.46-.53.6-.79.24-.22-.3-.17-.75.09-1Z"/>
|
|
239
|
+
<path class="cls-9"
|
|
240
|
+
d="M118.39,259.97c.1.07.21.16.33.2.35.11.49.55.22.82-.27.27-.71.13-.82-.22-.04-.12-.13-.22-.2-.33-.2-.28.19-.67.48-.48Z"/>
|
|
241
|
+
<path class="cls-9"
|
|
242
|
+
d="M106.31,215.53s.01-.04.02-.06c.02-.24.15-.41.32-.61.48-.56,1.36.32.8.8-.2.17-.38.31-.61.32-.02,0-.04.01-.06.02-.27.08-.55-.2-.47-.47Z"/>
|
|
243
|
+
<path class="cls-9"
|
|
244
|
+
d="M80.24,241.27c.05-.07.11-.14.16-.21.18-.23.57-.3.84-.22.37.1.63.45.63.83,0,.3-.16.59-.43.74-.3.18-.81.16-1.04-.13-.05-.07-.11-.14-.16-.21-.21-.27-.21-.54,0-.8Z"/>
|
|
245
|
+
<path class="cls-9" d="M72.45,247.92c.58,0,.58.89,0,.89s-.58-.89,0-.89Z"/>
|
|
246
|
+
<path class="cls-9"
|
|
247
|
+
d="M68.36,236.76c.67,0,1.14.92.58,1.4-.07.06-.13.11-.2.17-.23.2-.52.2-.76,0-.07-.06-.13-.11-.2-.17-.56-.48-.09-1.4.58-1.4Z"/>
|
|
248
|
+
<path class="cls-9"
|
|
249
|
+
d="M54.42,248.05c.05-.09.11-.19.16-.28.17-.29.61-.29.77,0,.05.09.11.19.16.28.24.41-.06.95-.55.95s-.78-.54-.55-.95Z"/>
|
|
250
|
+
<path class="cls-9"
|
|
251
|
+
d="M57.86,213.14c.05-.1.09-.19.14-.29.11-.23.51-.23.62,0,.05.1.09.19.14.29.17.35-.03.79-.45.79s-.62-.44-.45-.79Z"/>
|
|
252
|
+
<path class="cls-9" d="M46.78,190.21c.65,0,.65,1,0,1s-.65-1,0-1Z"/>
|
|
253
|
+
<path class="cls-9" d="M61.66,253.46c1.11,0,1.11,1.72,0,1.72s-1.11-1.72,0-1.72Z"/>
|
|
254
|
+
<path class="cls-9"
|
|
255
|
+
d="M46.8,254.67c.25.12.5.25.74.37.03.02,0,.06-.03.05-.25-.12-.5-.25-.74-.37-.03-.02,0-.06.03-.05Z"/>
|
|
256
|
+
<path class="cls-9"
|
|
257
|
+
d="M52.41,108.45c.23-.18.41-.22.69-.24.84-.04.84,1.35,0,1.31-.29-.01-.46-.06-.69-.24-.23-.18-.23-.65,0-.83Z"/>
|
|
258
|
+
<path class="cls-9"
|
|
259
|
+
d="M111.14,125.21c.57,0,.97.65.66,1.15-.06.09-.11.18-.17.27-.23.37-.75.37-.98,0l-.17-.27c-.31-.5.09-1.15.66-1.15Z"/>
|
|
260
|
+
<path class="cls-9" d="M263.69,150.9v.37s-.06.04-.06,0v-.37s.06-.04.06,0Z"/>
|
|
261
|
+
<path class="cls-9" d="M277.06,276.61s.04.06,0,.06-.04-.06,0-.06Z"/>
|
|
262
|
+
<path class="cls-9"
|
|
263
|
+
d="M207.41,302.45c.1-.37.45-.63.83-.63.3,0,.59.16.74.43.21.36.12.74-.13,1.04-.06.07-.11.13-.17.2-.2.24-.67.24-.88,0-.06-.07-.11-.13-.17-.2-.2-.24-.31-.52-.22-.84Z"/>
|
|
264
|
+
<path class="cls-9"
|
|
265
|
+
d="M86.3,221.13c10.45,10.38,20.86,20.8,31.26,31.23.13.13-.07.33-.2.2-10.43-10.4-20.85-20.81-31.23-31.26-.11-.11.06-.28.17-.17Z"/>
|
|
266
|
+
<path class="cls-9"
|
|
267
|
+
d="M58.96,95.01c10.45,10.38,20.86,20.8,31.26,31.23.13.13-.07.33-.2.2-10.43-10.4-20.85-20.81-31.23-31.26-.11-.11.06-.28.17-.17Z"/>
|
|
268
|
+
<path class="cls-9"
|
|
269
|
+
d="M322.9,151.37c10.45,10.38,20.86,20.8,31.26,31.23.13.13-.07.33-.2.2-10.43-10.4-20.85-20.81-31.23-31.26-.11-.11.06-.28.17-.17Z"/>
|
|
270
|
+
<path class="cls-9"
|
|
271
|
+
d="M103.01,252.27c4.5,4.16,8.98,8.33,13.46,12.51.06.05-.03.13-.09.08-4.49-4.17-8.98-8.34-13.45-12.52-.05-.04.03-.11.07-.07Z"/>
|
|
272
|
+
<path class="cls-9"
|
|
273
|
+
d="M61.16,116.11c4.5,4.16,8.98,8.33,13.46,12.51.06.05-.03.13-.09.08-4.49-4.17-8.98-8.34-13.45-12.52-.05-.04.03-.11.07-.07Z"/>
|
|
274
|
+
<path class="cls-9"
|
|
275
|
+
d="M338.22,186.14c4.5,4.16,8.98,8.33,13.46,12.51.06.05-.03.13-.09.08-4.49-4.17-8.98-8.34-13.45-12.52-.05-.04.03-.11.07-.07Z"/>
|
|
276
|
+
</g>
|
|
81
277
|
</svg>
|
|
@@ -1,24 +1,27 @@
|
|
|
1
1
|
<template>
|
|
2
2
|
<div :class="uiStore.isMobile ? 'mobile' : undefined" class="vts-remote-console">
|
|
3
|
-
<
|
|
3
|
+
<VtsStateHero v-if="!isReady" format="page" busy size="medium">{{ t('loading') }}</VtsStateHero>
|
|
4
4
|
<div ref="console-container" class="console" />
|
|
5
5
|
</div>
|
|
6
6
|
</template>
|
|
7
7
|
|
|
8
8
|
<script lang="ts" setup>
|
|
9
|
-
import
|
|
9
|
+
import VtsStateHero from '@core/components/state-hero/VtsStateHero.vue'
|
|
10
10
|
import { useUiStore } from '@core/stores/ui.store'
|
|
11
11
|
import VncClient from '@novnc/novnc/lib/rfb'
|
|
12
12
|
import { whenever } from '@vueuse/core'
|
|
13
13
|
import { promiseTimeout } from '@vueuse/shared'
|
|
14
14
|
import { fibonacci } from 'iterable-backoff'
|
|
15
15
|
import { onBeforeUnmount, ref, useTemplateRef, watchEffect } from 'vue'
|
|
16
|
+
import { useI18n } from 'vue-i18n'
|
|
16
17
|
|
|
17
18
|
const props = defineProps<{
|
|
18
19
|
url: URL
|
|
19
20
|
isConsoleAvailable: boolean
|
|
20
21
|
}>()
|
|
21
22
|
|
|
23
|
+
const { t } = useI18n()
|
|
24
|
+
|
|
22
25
|
const uiStore = useUiStore()
|
|
23
26
|
|
|
24
27
|
const N_TOTAL_TRIES = 8
|
|
@@ -147,6 +150,7 @@ defineExpose({
|
|
|
147
150
|
}
|
|
148
151
|
|
|
149
152
|
/* Required because the library adds "margin: auto" to the canvas which makes the canvas centered in space and not aligned to the rest of the layout */
|
|
153
|
+
|
|
150
154
|
:deep(canvas) {
|
|
151
155
|
margin: 0 auto !important;
|
|
152
156
|
cursor: default !important;
|
|
@@ -1,8 +1,12 @@
|
|
|
1
1
|
<template>
|
|
2
2
|
<div class="table-container">
|
|
3
|
-
<
|
|
4
|
-
<
|
|
5
|
-
|
|
3
|
+
<VtsStateHero v-if="!isReady" format="table" busy size="medium" />
|
|
4
|
+
<VtsStateHero v-else-if="hasError" format="table" type="error" size="small" no-background>
|
|
5
|
+
{{ t('error-no-data') }}
|
|
6
|
+
</VtsStateHero>
|
|
7
|
+
<VtsStateHero v-else-if="noDataMessage" format="table" type="no-data" size="small">
|
|
8
|
+
{{ noDataMessage ? noDataMessage : t('no-data') }}
|
|
9
|
+
</VtsStateHero>
|
|
6
10
|
<VtsTable v-else vertical-border>
|
|
7
11
|
<thead>
|
|
8
12
|
<slot name="thead" />
|
|
@@ -15,10 +19,9 @@
|
|
|
15
19
|
</template>
|
|
16
20
|
|
|
17
21
|
<script lang="ts" setup>
|
|
18
|
-
import
|
|
19
|
-
import VtsLoadingHero from '@core/components/state-hero/VtsLoadingHero.vue'
|
|
20
|
-
import VtsNoDataHero from '@core/components/state-hero/VtsNoDataHero.vue'
|
|
22
|
+
import VtsStateHero from '@core/components/state-hero/VtsStateHero.vue'
|
|
21
23
|
import VtsTable from '@core/components/table/VtsTable.vue'
|
|
24
|
+
import { useI18n } from 'vue-i18n'
|
|
22
25
|
|
|
23
26
|
defineProps<{
|
|
24
27
|
isReady?: boolean
|
|
@@ -30,6 +33,8 @@ defineSlots<{
|
|
|
30
33
|
thead(): any
|
|
31
34
|
tbody(): any
|
|
32
35
|
}>()
|
|
36
|
+
|
|
37
|
+
const { t } = useI18n()
|
|
33
38
|
</script>
|
|
34
39
|
|
|
35
40
|
<style lang="postcss" scoped>
|
|
@@ -0,0 +1,54 @@
|
|
|
1
|
+
<template>
|
|
2
|
+
<div class="vts-progress-bar">
|
|
3
|
+
<UiDataRuler :max="percentageCap" :warning="threshold.payload" />
|
|
4
|
+
<UiProgressBar :accent="threshold.payload.accent ?? 'info'" :fill-width :legend />
|
|
5
|
+
</div>
|
|
6
|
+
</template>
|
|
7
|
+
|
|
8
|
+
<script generic="TSource" lang="ts" setup>
|
|
9
|
+
import UiDataRuler from '@core/components/ui/data-ruler/UiDataRuler.vue'
|
|
10
|
+
import UiProgressBar, { type ProgressBarAccent } from '@core/components/ui/progress-bar/UiProgressBar.vue'
|
|
11
|
+
import { useProgress } from '@core/packages/progress/use-progress.ts'
|
|
12
|
+
import type { ThresholdConfig } from '@core/packages/threshold/type.ts'
|
|
13
|
+
import { useThreshold } from '@core/packages/threshold/use-threshold.ts'
|
|
14
|
+
import { defaultProgressThresholds, useProgressToLegend } from '@core/utils/progress.util.ts'
|
|
15
|
+
|
|
16
|
+
export type ProgressBarLegendType = 'percent' | 'bytes' | 'bytes-with-total' | 'value' | 'value-with-total'
|
|
17
|
+
|
|
18
|
+
export type ProgressBarThresholdPayload = { accent?: ProgressBarAccent; tooltip?: string }
|
|
19
|
+
|
|
20
|
+
export type ProgressBarThresholdConfig = ThresholdConfig<ProgressBarThresholdPayload>
|
|
21
|
+
|
|
22
|
+
const {
|
|
23
|
+
current,
|
|
24
|
+
total,
|
|
25
|
+
label,
|
|
26
|
+
thresholds = defaultProgressThresholds(),
|
|
27
|
+
legendType,
|
|
28
|
+
} = defineProps<{
|
|
29
|
+
current: number
|
|
30
|
+
total: number
|
|
31
|
+
label: string
|
|
32
|
+
legendType?: ProgressBarLegendType
|
|
33
|
+
thresholds?: ProgressBarThresholdConfig
|
|
34
|
+
}>()
|
|
35
|
+
|
|
36
|
+
const progress = useProgress(
|
|
37
|
+
() => current,
|
|
38
|
+
() => total
|
|
39
|
+
)
|
|
40
|
+
|
|
41
|
+
const { percentageCap, percentage, fillWidth } = progress
|
|
42
|
+
|
|
43
|
+
const legend = useProgressToLegend(() => legendType, label, progress)
|
|
44
|
+
|
|
45
|
+
const threshold = useThreshold(percentage, () => thresholds)
|
|
46
|
+
</script>
|
|
47
|
+
|
|
48
|
+
<style lang="postcss" scoped>
|
|
49
|
+
.vts-progress-bar {
|
|
50
|
+
display: flex;
|
|
51
|
+
flex-direction: column;
|
|
52
|
+
gap: 1.6rem;
|
|
53
|
+
}
|
|
54
|
+
</style>
|
|
@@ -0,0 +1,76 @@
|
|
|
1
|
+
<template>
|
|
2
|
+
<div class="vts-progress-bar-group">
|
|
3
|
+
<UiDataRuler :max="highestPercentageCap" :warning="threshold.payload" />
|
|
4
|
+
<UiProgressBar
|
|
5
|
+
v-for="item of progressItems"
|
|
6
|
+
:key="item.source.id"
|
|
7
|
+
:accent="item.threshold.payload?.accent ?? 'info'"
|
|
8
|
+
:fill-width="item.fillWidth"
|
|
9
|
+
:legend="toLegend(item.source.label, item)"
|
|
10
|
+
/>
|
|
11
|
+
</div>
|
|
12
|
+
</template>
|
|
13
|
+
|
|
14
|
+
<script generic="TSource" lang="ts" setup>
|
|
15
|
+
import type {
|
|
16
|
+
ProgressBarLegendType,
|
|
17
|
+
ProgressBarThresholdConfig,
|
|
18
|
+
} from '@core/components/progress-bar/VtsProgressBar.vue'
|
|
19
|
+
import UiDataRuler from '@core/components/ui/data-ruler/UiDataRuler.vue'
|
|
20
|
+
import UiProgressBar from '@core/components/ui/progress-bar/UiProgressBar.vue'
|
|
21
|
+
import { useProgressGroup } from '@core/packages/progress/use-progress-group.ts'
|
|
22
|
+
import { useThreshold } from '@core/packages/threshold/use-threshold.ts'
|
|
23
|
+
import { defaultProgressThresholds, useProgressToLegend } from '@core/utils/progress.util.ts'
|
|
24
|
+
import { computed } from 'vue'
|
|
25
|
+
|
|
26
|
+
export type ProgressBarGroupItem = { id: string; current: number; total: number; label: string }
|
|
27
|
+
|
|
28
|
+
const {
|
|
29
|
+
items,
|
|
30
|
+
thresholds = defaultProgressThresholds(),
|
|
31
|
+
sort = 'desc',
|
|
32
|
+
legendType,
|
|
33
|
+
nItems,
|
|
34
|
+
} = defineProps<{
|
|
35
|
+
items: ProgressBarGroupItem[]
|
|
36
|
+
legendType?: ProgressBarLegendType
|
|
37
|
+
thresholds?: ProgressBarThresholdConfig
|
|
38
|
+
sort?: 'asc' | 'desc' | 'none'
|
|
39
|
+
nItems?: number
|
|
40
|
+
}>()
|
|
41
|
+
|
|
42
|
+
const {
|
|
43
|
+
highestPercentageCap,
|
|
44
|
+
progressItems: rawProgressItems,
|
|
45
|
+
highestPercentage,
|
|
46
|
+
} = useProgressGroup(() => items, {
|
|
47
|
+
sort: () => (sort === 'none' ? undefined : sort),
|
|
48
|
+
})
|
|
49
|
+
|
|
50
|
+
const progressItems = computed(() => {
|
|
51
|
+
const items = rawProgressItems.value.map(item => {
|
|
52
|
+
return {
|
|
53
|
+
...item,
|
|
54
|
+
threshold: useThreshold(item.percentage, thresholds).value,
|
|
55
|
+
}
|
|
56
|
+
})
|
|
57
|
+
|
|
58
|
+
if (nItems) {
|
|
59
|
+
return items.slice(0, nItems)
|
|
60
|
+
}
|
|
61
|
+
|
|
62
|
+
return items
|
|
63
|
+
})
|
|
64
|
+
|
|
65
|
+
const toLegend = useProgressToLegend(() => legendType)
|
|
66
|
+
|
|
67
|
+
const threshold = useThreshold(highestPercentage, () => thresholds)
|
|
68
|
+
</script>
|
|
69
|
+
|
|
70
|
+
<style lang="postcss" scoped>
|
|
71
|
+
.vts-progress-bar-group {
|
|
72
|
+
display: flex;
|
|
73
|
+
flex-direction: column;
|
|
74
|
+
gap: 1.6rem;
|
|
75
|
+
}
|
|
76
|
+
</style>
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
<template>
|
|
2
2
|
<UiCard class="vts-quick-info-card">
|
|
3
3
|
<UiCardTitle>{{ t('quick-info') }}</UiCardTitle>
|
|
4
|
-
<
|
|
4
|
+
<VtsStateHero v-if="loading" format="card" busy size="medium" />
|
|
5
5
|
<div v-else class="info-container">
|
|
6
6
|
<slot />
|
|
7
7
|
</div>
|
|
@@ -9,7 +9,7 @@
|
|
|
9
9
|
</template>
|
|
10
10
|
|
|
11
11
|
<script lang="ts" setup>
|
|
12
|
-
import
|
|
12
|
+
import VtsStateHero from '@core/components/state-hero/VtsStateHero.vue'
|
|
13
13
|
import UiCard from '@core/components/ui/card/UiCard.vue'
|
|
14
14
|
import UiCardTitle from '@core/components/ui/card-title/UiCardTitle.vue'
|
|
15
15
|
import { useI18n } from 'vue-i18n'
|