Simplify checks

This commit is contained in:
Nicolas Mowen 2024-03-27 15:55:56 -06:00
parent a4831d7938
commit d3f221be5c
4 changed files with 34 additions and 23 deletions

View File

@ -2,6 +2,7 @@ import { useState } from "react";
import { Drawer, DrawerContent, DrawerTrigger } from "../ui/drawer"; import { Drawer, DrawerContent, DrawerTrigger } from "../ui/drawer";
import { Button } from "../ui/button"; import { Button } from "../ui/button";
import { FaVideo } from "react-icons/fa"; import { FaVideo } from "react-icons/fa";
import { isMobile } from "react-device-detect";
type MobileCameraDrawerProps = { type MobileCameraDrawerProps = {
allCameras: string[]; allCameras: string[];
@ -15,6 +16,10 @@ export default function MobileCameraDrawer({
}: MobileCameraDrawerProps) { }: MobileCameraDrawerProps) {
const [cameraDrawer, setCameraDrawer] = useState(false); const [cameraDrawer, setCameraDrawer] = useState(false);
if (!isMobile) {
return;
}
return ( return (
<Drawer open={cameraDrawer} onOpenChange={setCameraDrawer}> <Drawer open={cameraDrawer} onOpenChange={setCameraDrawer}>
<DrawerTrigger asChild> <DrawerTrigger asChild>

View File

@ -15,6 +15,7 @@ import { FrigateConfig } from "@/types/frigateConfig";
import { toast } from "sonner"; import { toast } from "sonner";
import axios from "axios"; import axios from "axios";
import SaveExportOverlay from "./SaveExportOverlay"; import SaveExportOverlay from "./SaveExportOverlay";
import { isMobile } from "react-device-detect";
const ATTRIBUTES = ["amazon", "face", "fedex", "license_plate", "ups"]; const ATTRIBUTES = ["amazon", "face", "fedex", "license_plate", "ups"];
type DrawerMode = "none" | "select" | "export" | "calendar" | "filter"; type DrawerMode = "none" | "select" | "export" | "calendar" | "filter";
@ -114,6 +115,10 @@ export default function MobileReviewSettingsDrawer({
filter?.labels, filter?.labels,
); );
if (!isMobile) {
return;
}
let content; let content;
if (drawerMode == "select") { if (drawerMode == "select") {
content = ( content = (

View File

@ -3,6 +3,7 @@ import { Drawer, DrawerContent, DrawerTrigger } from "../ui/drawer";
import { Button } from "../ui/button"; import { Button } from "../ui/button";
import { FaFlag } from "react-icons/fa"; import { FaFlag } from "react-icons/fa";
import { TimelineType } from "@/types/timeline"; import { TimelineType } from "@/types/timeline";
import { isMobile } from "react-device-detect";
type MobileTimelineDrawerProps = { type MobileTimelineDrawerProps = {
selected: TimelineType; selected: TimelineType;
@ -14,6 +15,10 @@ export default function MobileTimelineDrawer({
}: MobileTimelineDrawerProps) { }: MobileTimelineDrawerProps) {
const [drawer, setDrawer] = useState(false); const [drawer, setDrawer] = useState(false);
if (!isMobile) {
return;
}
return ( return (
<Drawer open={drawer} onOpenChange={setDrawer}> <Drawer open={drawer} onOpenChange={setDrawer}>
<DrawerTrigger asChild> <DrawerTrigger asChild>

View File

@ -238,16 +238,14 @@ export function RecordingView({
{isDesktop && "Back"} {isDesktop && "Back"}
</Button> </Button>
<div className="flex items-center justify-end gap-2"> <div className="flex items-center justify-end gap-2">
{isMobile && ( <MobileCameraDrawer
<MobileCameraDrawer allCameras={allCameras}
allCameras={allCameras} selected={mainCamera}
selected={mainCamera} onSelectCamera={(cam) => {
onSelectCamera={(cam) => { setPlaybackStart(currentTime);
setPlaybackStart(currentTime); setMainCamera(cam);
setMainCamera(cam); }}
}} />
/>
)}
{isDesktop && ( {isDesktop && (
<ExportDialog <ExportDialog
camera={mainCamera} camera={mainCamera}
@ -300,19 +298,17 @@ export function RecordingView({
onSelect={setTimelineType} onSelect={setTimelineType}
/> />
)} )}
{isMobile && ( <MobileReviewSettingsDrawer
<MobileReviewSettingsDrawer camera={mainCamera}
camera={mainCamera} filter={filter}
filter={filter} currentTime={currentTime}
currentTime={currentTime} latestTime={timeRange.end}
latestTime={timeRange.end} mode={exportMode}
mode={exportMode} range={exportRange}
range={exportRange} onUpdateFilter={updateFilter}
onUpdateFilter={updateFilter} setRange={setExportRange}
setRange={setExportRange} setMode={setExportMode}
setMode={setExportMode} />
/>
)}
</div> </div>
</div> </div>