From d76228ac3c4ea2b8a946445b089c17e71334073e Mon Sep 17 00:00:00 2001
From: Josh Hawkins <32435876+hawkeye217@users.noreply.github.com>
Date: Tue, 15 Oct 2024 16:45:45 -0500
Subject: [PATCH] use two columns on mobile view
---
.../components/card/SearchThumbnailFooter.tsx | 45 +++++++++----------
web/src/views/search/SearchView.tsx | 17 ++++---
web/src/views/settings/SearchSettingsView.tsx | 2 +-
3 files changed, 32 insertions(+), 32 deletions(-)
diff --git a/web/src/components/card/SearchThumbnailFooter.tsx b/web/src/components/card/SearchThumbnailFooter.tsx
index 9037fcf25..78841159b 100644
--- a/web/src/components/card/SearchThumbnailFooter.tsx
+++ b/web/src/components/card/SearchThumbnailFooter.tsx
@@ -10,8 +10,6 @@ import {
DropdownMenu,
DropdownMenuContent,
DropdownMenuItem,
- DropdownMenuLabel,
- DropdownMenuSeparator,
DropdownMenuTrigger,
} from "@/components/ui/dropdown-menu";
import {
@@ -24,13 +22,7 @@ import {
AlertDialogHeader,
AlertDialogTitle,
} from "../ui/alert-dialog";
-import {
- LuCamera,
- LuCheck,
- LuDownload,
- LuMoreVertical,
- LuTrash2,
-} from "react-icons/lu";
+import { LuCamera, LuDownload, LuMoreVertical, LuTrash2 } from "react-icons/lu";
import FrigatePlusIcon from "@/components/icons/FrigatePlusIcon";
import { FrigatePlusDialog } from "../overlay/dialog/FrigatePlusDialog";
import { Event } from "@/types/event";
@@ -39,6 +31,7 @@ import { baseUrl } from "@/api/baseUrl";
import axios from "axios";
import { toast } from "sonner";
import { MdImageSearch } from "react-icons/md";
+import { isMobileOnly } from "react-device-detect";
type SearchThumbnailProps = {
searchResult: SearchResult;
@@ -130,18 +123,12 @@ export default function SearchThumbnailFooter({
)}
{formattedDate}
-
- {config?.plus?.enabled &&
+
+ {!isMobileOnly &&
+ config?.plus?.enabled &&
searchResult.has_snapshot &&
searchResult.end_time &&
- (searchResult.plus_id ? (
-
-
-
-
- Submitted to Frigate+
-
- ) : (
+ !searchResult.plus_id && (
Submit to Frigate+
- ))}
+ )}
{config?.semantic_search?.enabled && (
@@ -170,10 +157,6 @@ export default function SearchThumbnailFooter({
-
- Tracked Object Actions
-
-
{searchResult.has_clip && (
View object lifecycle
+
+ {isMobileOnly &&
+ config?.plus?.enabled &&
+ searchResult.has_snapshot &&
+ searchResult.end_time &&
+ !searchResult.plus_id && (
+ setShowFrigatePlus(true)}
+ >
+
+ Submit to Frigate+
+
+ )}
setDeleteDialogOpen(true)}
diff --git a/web/src/views/search/SearchView.tsx b/web/src/views/search/SearchView.tsx
index bc4f5b54d..5d18e53d4 100644
--- a/web/src/views/search/SearchView.tsx
+++ b/web/src/views/search/SearchView.tsx
@@ -73,13 +73,16 @@ export default function SearchView({
const [columnCount, setColumnCount] = usePersistence("exploreGridColumns", 4);
const effectiveColumnCount = useMemo(() => columnCount ?? 4, [columnCount]);
- const gridClassName = cn("grid w-full gap-2 px-1 gap-2 lg:gap-4 md:mx-2", {
- "sm:grid-cols-2": effectiveColumnCount <= 2,
- "sm:grid-cols-3": effectiveColumnCount === 3,
- "sm:grid-cols-4": effectiveColumnCount === 4,
- "sm:grid-cols-5": effectiveColumnCount === 5,
- "sm:grid-cols-6": effectiveColumnCount === 6,
- });
+ const gridClassName = cn(
+ "grid w-full gap-2 px-1 gap-2 lg:gap-4 md:mx-2 grid-cols-2",
+ {
+ "sm:grid-cols-2": effectiveColumnCount <= 2,
+ "sm:grid-cols-3": effectiveColumnCount === 3,
+ "sm:grid-cols-4": effectiveColumnCount === 4,
+ "sm:grid-cols-5": effectiveColumnCount === 5,
+ "sm:grid-cols-6": effectiveColumnCount === 6,
+ },
+ );
// suggestions values
diff --git a/web/src/views/settings/SearchSettingsView.tsx b/web/src/views/settings/SearchSettingsView.tsx
index 0bbb8a15a..904eb980c 100644
--- a/web/src/views/settings/SearchSettingsView.tsx
+++ b/web/src/views/settings/SearchSettingsView.tsx
@@ -169,7 +169,7 @@ export default function SearchSettingsView({
rel="noopener noreferrer"
className="inline"
>
- Read the semantic search docs
+ Read the documentation