mirror of
https://github.com/blakeblackshear/frigate.git
synced 2025-07-30 13:48:07 +02:00
Fixes (#18893)
* i18n translated label fixes * Fix frame cache race bug Objects that were marked as false positives (that would later become true positives) would sometimes have their saved frame prematurely removed from the frame cache.
This commit is contained in:
parent
fd96cd5dae
commit
5593495abd
@ -426,7 +426,7 @@ class CameraState:
|
||||
current_thumb_frames = {
|
||||
obj.thumbnail_data["frame_time"]
|
||||
for obj in tracked_objects.values()
|
||||
if not obj.false_positive and obj.thumbnail_data is not None
|
||||
if obj.thumbnail_data is not None
|
||||
}
|
||||
current_best_frames = {
|
||||
obj.thumbnail_data["frame_time"] for obj in self.best_objects.values()
|
||||
|
@ -264,9 +264,7 @@ function GeneralFilterButton({
|
||||
}
|
||||
|
||||
if (selectedLabels.length == 1) {
|
||||
return t(selectedLabels[0], {
|
||||
ns: "objects",
|
||||
});
|
||||
return getTranslatedLabel(selectedLabels[0]);
|
||||
}
|
||||
|
||||
return t("labels.count", {
|
||||
|
@ -52,6 +52,7 @@ import useSWR from "swr";
|
||||
import { FrigateConfig } from "@/types/frigateConfig";
|
||||
import { MdImageSearch } from "react-icons/md";
|
||||
import { useTranslation } from "react-i18next";
|
||||
import { getTranslatedLabel } from "@/utils/i18n";
|
||||
|
||||
type InputWithTagsProps = {
|
||||
inputFocused: boolean;
|
||||
@ -419,9 +420,7 @@ export default function InputWithTags({
|
||||
? t("button.yes", { ns: "common" })
|
||||
: t("button.no", { ns: "common" });
|
||||
} else if (filterType === "labels") {
|
||||
return t(filterValues as string, {
|
||||
ns: "objects",
|
||||
});
|
||||
return getTranslatedLabel(filterValues as string);
|
||||
} else if (filterType === "search_type") {
|
||||
return t("filter.searchType." + (filterValues as string));
|
||||
} else {
|
||||
@ -828,9 +827,7 @@ export default function InputWithTags({
|
||||
>
|
||||
{t("filter.label." + filterType)}:{" "}
|
||||
{filterType === "labels"
|
||||
? t(value, {
|
||||
ns: "objects",
|
||||
})
|
||||
? getTranslatedLabel(value)
|
||||
: value.replaceAll("_", " ")}
|
||||
<button
|
||||
onClick={() =>
|
||||
|
@ -42,6 +42,7 @@ import { TooltipPortal } from "@radix-ui/react-tooltip";
|
||||
import { LuSearch } from "react-icons/lu";
|
||||
import useKeyboardListener from "@/hooks/use-keyboard-listener";
|
||||
import { Trans, useTranslation } from "react-i18next";
|
||||
import { getTranslatedLabel } from "@/utils/i18n";
|
||||
|
||||
type ReviewDetailDialogProps = {
|
||||
review?: ReviewSegment;
|
||||
@ -328,11 +329,7 @@ export default function ReviewDetailDialog({
|
||||
ns="views/explore"
|
||||
values={{
|
||||
objects: missingObjects
|
||||
.map((x) =>
|
||||
t(x, {
|
||||
ns: "objects",
|
||||
}),
|
||||
)
|
||||
.map((x) => getTranslatedLabel(x))
|
||||
.join(", "),
|
||||
}}
|
||||
>
|
||||
|
@ -77,6 +77,7 @@ import { Trans, useTranslation } from "react-i18next";
|
||||
import { TbFaceId } from "react-icons/tb";
|
||||
import { useIsAdmin } from "@/hooks/use-is-admin";
|
||||
import FaceSelectionDialog from "../FaceSelectionDialog";
|
||||
import { getTranslatedLabel } from "@/utils/i18n";
|
||||
|
||||
const SEARCH_TABS = [
|
||||
"details",
|
||||
@ -717,9 +718,7 @@ function ObjectDetailsTab({
|
||||
<div className="text-sm text-primary/40">{t("details.label")}</div>
|
||||
<div className="flex flex-row items-center gap-2 text-sm smart-capitalize">
|
||||
{getIconForLabel(search.label, "size-4 text-primary")}
|
||||
{t(search.label, {
|
||||
ns: "objects",
|
||||
})}
|
||||
{getTranslatedLabel(search.label)}
|
||||
{search.sub_label && ` (${search.sub_label})`}
|
||||
{isAdmin && search.end_time && (
|
||||
<Tooltip>
|
||||
@ -1167,9 +1166,9 @@ export function ObjectSnapshotTab({
|
||||
ns="components/dialog"
|
||||
values={{
|
||||
untranslatedLabel: search?.label,
|
||||
translatedLabel: t(search?.label, {
|
||||
ns: "objects",
|
||||
}),
|
||||
translatedLabel: getTranslatedLabel(
|
||||
search?.label,
|
||||
),
|
||||
}}
|
||||
>
|
||||
explore.plus.review.question.ask_full
|
||||
|
Loading…
Reference in New Issue
Block a user