a96612f595
- DNS server modal: rename expectIPs -> expectedIPs (per docs); add per-server tag, clientIP, serveStale, serveExpiredTTL, timeoutMs; flip skipFallback default to false; hydration still accepts legacy expectIPs for back-compat. - DNS tab: add hosts editor (domain -> IP/array), serveStale + serveExpiredTTL controls, "Use Preset" button bringing back the legacy preset gallery (Google / Cloudflare / AdGuard + Family variants — fixed AdGuard Family IPs that were wrong in legacy), and a "Delete All" button to wipe the server list at once. - i18n: add 15 new dns.* keys across all 13 locales. - Frontend-wide formatter pass on Vue components (whitespace and attribute layout only, no behavior changes). Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
32 lines
603 B
Vue
32 lines
603 B
Vue
<script setup>
|
|
defineProps({
|
|
title: { type: String, default: '' },
|
|
value: { type: [String, Number], default: '' },
|
|
});
|
|
</script>
|
|
|
|
<template>
|
|
<a-statistic :title="title" :value="value">
|
|
<template #prefix>
|
|
<slot name="prefix" />
|
|
</template>
|
|
<template #suffix>
|
|
<slot name="suffix" />
|
|
</template>
|
|
</a-statistic>
|
|
</template>
|
|
|
|
<style scoped>
|
|
:deep(.ant-statistic-content) {
|
|
font-size: 16px;
|
|
}
|
|
|
|
:global(body.dark .ant-statistic-content) {
|
|
color: var(--dark-color-text-primary);
|
|
}
|
|
|
|
:global(body.dark .ant-statistic-title) {
|
|
color: rgba(255, 255, 255, 0.55);
|
|
}
|
|
</style>
|