diff --git a/packages/frontend/src/widgets/server-metric/pie-compact.vue b/packages/frontend/src/widgets/server-metric/pie-compact.vue
new file mode 100644
index 0000000000..3d415428c9
--- /dev/null
+++ b/packages/frontend/src/widgets/server-metric/pie-compact.vue
@@ -0,0 +1,54 @@
+
+
+
+
+
+
+
+
+
diff --git a/packages/frontend/src/widgets/server-metric/pie-large.vue b/packages/frontend/src/widgets/server-metric/pie-large.vue
new file mode 100644
index 0000000000..28de857f93
--- /dev/null
+++ b/packages/frontend/src/widgets/server-metric/pie-large.vue
@@ -0,0 +1,62 @@
+
+
+
+
+
+
+
+
+
diff --git a/packages/frontend/src/widgets/server-metric/pie.vue b/packages/frontend/src/widgets/server-metric/pie.vue
index 400cbe9fa2..dcf6888c8c 100644
--- a/packages/frontend/src/widgets/server-metric/pie.vue
+++ b/packages/frontend/src/widgets/server-metric/pie.vue
@@ -9,7 +9,7 @@ SPDX-License-Identifier: AGPL-3.0-only
:r="r"
cx="50%" cy="50%"
fill="none"
- stroke-width="0.1"
+ stroke-width="0.15"
stroke="rgba(0, 0, 0, 0.05)"
:class="$style.circle"
/>
@@ -19,7 +19,7 @@ SPDX-License-Identifier: AGPL-3.0-only
:stroke-dasharray="Math.PI * (r * 2)"
:stroke-dashoffset="strokeDashoffset"
fill="none"
- stroke-width="0.1"
+ stroke-width="0.15"
:class="$style.circle"
:stroke="color"
/>
@@ -34,7 +34,7 @@ const props = defineProps<{
value: number;
}>();
-const r = 0.45;
+const r = 0.4;
const color = computed(() => `hsl(${180 - (props.value * 180)}, 80%, 70%)`);
const strokeDashoffset = computed(() => (1 - props.value) * (Math.PI * (r * 2)));
@@ -50,10 +50,12 @@ const strokeDashoffset = computed(() => (1 - props.value) * (Math.PI * (r * 2)))
transform-origin: center;
transform: rotate(-90deg);
transition: stroke-dashoffset 0.5s ease;
+ stroke-linecap: round;
}
.text {
font-size: 0.15px;
fill: currentColor;
+ font-weight: 700;
}