diff --git a/web/src/components/card/SearchThumbnail.tsx b/web/src/components/card/SearchThumbnail.tsx
index 8b65ad22f..213111b13 100644
--- a/web/src/components/card/SearchThumbnail.tsx
+++ b/web/src/components/card/SearchThumbnail.tsx
@@ -1,4 +1,4 @@
-import { useCallback, useMemo, useState } from "react";
+import { useCallback, useMemo } from "react";
import { useApiHost } from "@/api";
import { getIconForLabel } from "@/utils/iconUtil";
import useSWR from "swr";
@@ -12,8 +12,6 @@ import { capitalizeFirstLetter } from "@/utils/stringUtil";
import { SearchResult } from "@/types/search";
import { cn } from "@/lib/utils";
import { TooltipPortal } from "@radix-ui/react-tooltip";
-import { FrigatePlusDialog } from "../overlay/dialog/FrigatePlusDialog";
-import { Event } from "@/types/event";
type SearchThumbnailProps = {
searchResult: SearchResult;
@@ -30,8 +28,6 @@ export default function SearchThumbnail({
// interactions
- const [showFrigatePlus, setShowFrigatePlus] = useState(false);
-
const handleOnClick = useCallback(() => {
onClick(searchResult);
}, [searchResult, onClick]);
@@ -58,14 +54,6 @@ export default function SearchThumbnail({
return (
-
setShowFrigatePlus(false)}
- onEventUploaded={() => {}}
- />
-
void;
};
export default function SearchThumbnailFooter({
searchResult,
+ findSimilar,
}: SearchThumbnailProps) {
const { data: config } = useSWR("config");
@@ -70,7 +72,7 @@ export default function SearchThumbnailFooter({
searchResult.has_snapshot &&
searchResult.end_time && (
-
+
setShowFrigatePlus(true)}
@@ -80,12 +82,17 @@ export default function SearchThumbnailFooter({
)}
-
-
-
-
- Find similar
-
+ {config?.semantic_search?.enabled && (
+
+
+
+
+ Find similar
+
+ )}
@@ -101,7 +108,7 @@ export default function SearchThumbnailFooter({
Download snapshot
-
+
View object lifecycle
diff --git a/web/src/views/search/SearchView.tsx b/web/src/views/search/SearchView.tsx
index fe4cdf71a..1df543b2c 100644
--- a/web/src/views/search/SearchView.tsx
+++ b/web/src/views/search/SearchView.tsx
@@ -428,7 +428,14 @@ export default function SearchView({
className={`review-item-ring pointer-events-none absolute inset-0 z-10 size-full rounded-lg outline outline-[3px] -outline-offset-[2.8px] ${selected ? `shadow-selected outline-selected` : "outline-transparent duration-500"}`}
/>
-
+ {
+ if (config?.semantic_search.enabled) {
+ setSimilaritySearch(value);
+ }
+ }}
+ />
);