{t("setupGuideDetectCliTitle")}
+{t("setupGuideDetectCliDesc")}
+{t("setupGuideCustomAgentTitle")}
+{t("setupGuideCustomAgentDesc")}
+{t("setupGuideCommandMissingTitle")}
+{t("setupGuideCommandMissingDesc")}
+{ts("cliFingerprintDesc")}
+ {t("whenToUseLabel")} +
++ {getToolUseCase(toolId, tool)} +
+{cbEntries.length}
-- {t("healthyCount", { - count: cbEntries.filter(([, v]: [string, any]) => v.state === "CLOSED").length, +
+ {providerSummary?.configuredCount ?? cbEntries.length} +
++ {t("configuredProvidersLabel")} + +
++ {t("activeProviders", { count: providerSummary?.activeCount ?? 0 })} + +
++ {t("monitoredProviders", { + count: providerSummary?.monitoredCount ?? cbEntries.length, })} +
{t("noSearchProviders")}
} diff --git a/src/app/(dashboard)/dashboard/search-tools/components/SearchHistory.tsx b/src/app/(dashboard)/dashboard/search-tools/components/SearchHistory.tsx index d8679ff380..5fa4f6a040 100644 --- a/src/app/(dashboard)/dashboard/search-tools/components/SearchHistory.tsx +++ b/src/app/(dashboard)/dashboard/search-tools/components/SearchHistory.tsx @@ -1,7 +1,7 @@ "use client"; import { useState, useEffect } from "react"; -import { useTranslations } from "next-intl"; +import { useLocale, useTranslations } from "next-intl"; interface HistoryEntry { query: string; @@ -14,9 +14,9 @@ interface SearchHistoryProps { onReplay: (entry: HistoryEntry) => void; } -function timeAgo(timestamp: string): string { +function timeAgo(timestamp: string, locale: string): string { try { - const rtf = new Intl.RelativeTimeFormat("en", { numeric: "auto" }); + const rtf = new Intl.RelativeTimeFormat(locale, { numeric: "auto" }); const diff = Date.now() - new Date(timestamp).getTime(); const minutes = Math.floor(diff / 60_000); if (minutes < 1) return rtf.format(0, "minute"); @@ -25,12 +25,13 @@ function timeAgo(timestamp: string): string { if (hours < 24) return rtf.format(-hours, "hour"); return rtf.format(-Math.floor(hours / 24), "day"); } catch { - return new Date(timestamp).toLocaleString(); + return new Date(timestamp).toLocaleString(locale); } } export default function SearchHistory({ onReplay }: SearchHistoryProps) { const t = useTranslations("search"); + const locale = useLocale(); const [entries, setEntries] = useState+ {t("comboDefaultsGuideTitle")} +
+{t("comboDefaultsGuideHint1")}
+{t("comboDefaultsGuideHint2")}
++ {t("routingAdvancedGuideTitle")} +
+{t("routingAdvancedGuideHint1")}
+{t("routingAdvancedGuideHint2")}
+