chore: auto-fix lint & formatting [skip ci]

This commit is contained in:
github-actions[bot] 2026-08-16 14:47:01 +00:00
parent df0edbb581
commit 3bcc98efc8
9 changed files with 152 additions and 77 deletions

View file

@ -58,11 +58,7 @@
</p>
</div>
<div class="flex items-center gap-2">
<button
v-if="view === 'overview'"
class="btn btn-ghost btn-sm"
@click="refreshOverview"
>
<button v-if="view === 'overview'" class="btn btn-ghost btn-sm" @click="refreshOverview">
{{ t("metrics.refresh") }}
</button>
<button class="btn btn-ghost btn-sm" @click="toggle">{{ t("app.langToggle") }}</button>
@ -126,7 +122,9 @@
<button class="btn btn-ghost btn-sm" @click="exitGroup">
{{ t("group.back") }}
</button>
<span class="kpi-label">{{ t("group.routesIn", { name: selectedGroup.name }) }}</span>
<span class="kpi-label">{{
t("group.routesIn", { name: selectedGroup.name })
}}</span>
<span class="kpi">{{ groupRoutes.length }}</span>
</div>
<div class="status">
@ -155,7 +153,11 @@
<section v-if="!groupRoutesLoading && !groupRoutes.length" class="empty">
<p>{{ t("routes.emptyGroup") }}</p>
<button v-if="canEditRoutes(selectedGroup.id)" class="btn btn-accent" @click="openNew">
<button
v-if="canEditRoutes(selectedGroup.id)"
class="btn btn-accent"
@click="openNew"
>
{{ t("routes.createFirst") }}
</button>
</section>
@ -331,7 +333,13 @@ type View = "overview" | "groups" | "logs" | "audit" | "metrics";
const view = computed<View | null>(() => {
const seg = route.path.split("/").filter(Boolean)[1];
if (!seg) return "overview";
if (seg === "overview" || seg === "groups" || seg === "logs" || seg === "audit" || seg === "metrics")
if (
seg === "overview" ||
seg === "groups" ||
seg === "logs" ||
seg === "audit" ||
seg === "metrics"
)
return seg;
return null;
});

View file

@ -208,7 +208,10 @@ function cycleSort(): void {
v-for="s in metrics.byStatus"
:key="s.status"
class="metric-status"
:class="{ ok: !s.status.startsWith('5') && s.status !== '0', bad: s.status.startsWith('5') || s.status === '0' }"
:class="{
ok: !s.status.startsWith('5') && s.status !== '0',
bad: s.status.startsWith('5') || s.status === '0',
}"
>
{{ s.status }} · {{ s.count }}
</span>
@ -232,4 +235,4 @@ function cycleSort(): void {
</article>
</template>
</div>
</template>
</template>

View file

@ -18,12 +18,19 @@
class="route-badge"
:class="tg.platform === 'telegram' ? 'route-badge-tg' : 'route-badge-dc'"
>
<span class="route-badge-dot" :class="tg.platform === 'telegram' ? 'bg-info' : 'bg-accent'"></span>
<span
class="route-badge-dot"
:class="tg.platform === 'telegram' ? 'bg-info' : 'bg-accent'"
></span>
{{ tg.platform === "telegram" ? "Telegram" : "Discord" }}
</span>
<span v-if="route.fallback" class="route-badge route-badge-fallback">{{ t("route.fallback") }}</span>
<span v-if="route.fallback" class="route-badge route-badge-fallback">{{
t("route.fallback")
}}</span>
<span v-if="route.stop" class="route-badge route-badge-stop">{{ t("route.stop") }}</span>
<span v-if="route.discordRoleIds?.length" class="route-badge route-badge-role">@roles</span>
<span v-if="route.discordRoleIds?.length" class="route-badge route-badge-role"
>@roles</span
>
</div>
</div>
@ -34,7 +41,9 @@
class="route-chip"
:class="{ exclude: f.exclude }"
>
<span class="route-chip-type">{{ f.exclude ? t("routeEditor.not") + " " : "" }}{{ t("filter." + f.type) }}</span>
<span class="route-chip-type"
>{{ f.exclude ? t("routeEditor.not") + " " : "" }}{{ t("filter." + f.type) }}</span
>
<span class="route-chip-val">{{ fmtMatch(f.match) }}</span>
</span>
<span v-if="!route.filters.length" class="route-chip route-chip-empty">
@ -67,7 +76,18 @@
:title="t('route.moveUp')"
@click="$emit('move', route, -1)"
>
<svg width="14" height="14" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="m18 15-6-6-6 6"/></svg>
<svg
width="14"
height="14"
viewBox="0 0 24 24"
fill="none"
stroke="currentColor"
stroke-width="2"
stroke-linecap="round"
stroke-linejoin="round"
>
<path d="m18 15-6-6-6 6" />
</svg>
</button>
<button
class="route-action-btn"
@ -75,21 +95,56 @@
:title="t('route.moveDown')"
@click="$emit('move', route, 1)"
>
<svg width="14" height="14" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="m6 9 6 6 6-6"/></svg>
<svg
width="14"
height="14"
viewBox="0 0 24 24"
fill="none"
stroke="currentColor"
stroke-width="2"
stroke-linecap="round"
stroke-linejoin="round"
>
<path d="m6 9 6 6 6-6" />
</svg>
</button>
<button
class="route-action-btn"
:title="t('routeEditor.editTitle')"
@click="$emit('edit', route)"
>
<svg width="14" height="14" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M17 3a2.85 2.83 0 1 1 4 4L7.5 20.5 2 22l1.5-5.5Z"/><path d="m15 5 4 4"/></svg>
<svg
width="14"
height="14"
viewBox="0 0 24 24"
fill="none"
stroke="currentColor"
stroke-width="2"
stroke-linecap="round"
stroke-linejoin="round"
>
<path d="M17 3a2.85 2.83 0 1 1 4 4L7.5 20.5 2 22l1.5-5.5Z" />
<path d="m15 5 4 4" />
</svg>
</button>
<button
class="route-action-btn route-action-btn-danger"
:title="t('routeEditor.close')"
@click="$emit('delete', route)"
>
<svg width="14" height="14" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M18 6 6 18"/><path d="m6 6 12 12"/></svg>
<svg
width="14"
height="14"
viewBox="0 0 24 24"
fill="none"
stroke="currentColor"
stroke-width="2"
stroke-linecap="round"
stroke-linejoin="round"
>
<path d="M18 6 6 18" />
<path d="m6 6 12 12" />
</svg>
</button>
</div>
</article>
@ -118,4 +173,4 @@ function onToggle(event: Event): void {
const next = { ...props.route, enabled: (event.target as HTMLInputElement).checked };
emit("toggle", next);
}
</script>
</script>

View file

@ -102,9 +102,9 @@
:placeholder="t('routeEditor.matchPlaceholder')"
/>
<label class="inline">
<input v-model="f.exclude" type="checkbox" /><span
>{{ t("routeEditor.not") }}</span
>
<input v-model="f.exclude" type="checkbox" /><span>{{
t("routeEditor.not")
}}</span>
</label>
<button type="button" class="icon-btn danger" @click="form.filters.splice(i, 1)">