From 01df9b15f2d95f623629e8e14afbea5a5f0b87be Mon Sep 17 00:00:00 2001 From: Josh Hawkins <32435876+hawkeye217@users.noreply.github.com> Date: Fri, 22 May 2026 12:20:58 -0500 Subject: [PATCH] add review padding to explore debug replay api calls --- web/src/components/menu/SearchResultActions.tsx | 5 +++-- web/src/components/overlay/detail/DetailActionsMenu.tsx | 4 ++-- web/src/components/timeline/EventMenu.tsx | 5 +++-- 3 files changed, 8 insertions(+), 6 deletions(-) diff --git a/web/src/components/menu/SearchResultActions.tsx b/web/src/components/menu/SearchResultActions.tsx index 43a192dc9e..90a70ff5d9 100644 --- a/web/src/components/menu/SearchResultActions.tsx +++ b/web/src/components/menu/SearchResultActions.tsx @@ -1,5 +1,6 @@ import { useState, ReactNode, useCallback } from "react"; import { SearchResult } from "@/types/search"; +import { REVIEW_PADDING } from "@/types/review"; import { FrigateConfig } from "@/types/frigateConfig"; import { baseUrl } from "@/api/baseUrl"; import { toast } from "sonner"; @@ -94,8 +95,8 @@ export default function SearchResultActions({ axios .post("debug_replay/start", { camera: event.camera, - start_time: event.start_time, - end_time: event.end_time, + start_time: (event.start_time ?? 0) - REVIEW_PADDING, + end_time: (event.end_time ?? Date.now() / 1000) + REVIEW_PADDING, }) .then((response) => { if (response.status === 202 || response.status === 200) { diff --git a/web/src/components/overlay/detail/DetailActionsMenu.tsx b/web/src/components/overlay/detail/DetailActionsMenu.tsx index 789f396772..af83700a6f 100644 --- a/web/src/components/overlay/detail/DetailActionsMenu.tsx +++ b/web/src/components/overlay/detail/DetailActionsMenu.tsx @@ -63,8 +63,8 @@ export default function DetailActionsMenu({ axios .post("debug_replay/start", { camera: search.camera, - start_time: search.start_time, - end_time: search.end_time, + start_time: (search.start_time ?? 0) - REVIEW_PADDING, + end_time: (search.end_time ?? Date.now() / 1000) + REVIEW_PADDING, }) .then((response) => { if (response.status === 202 || response.status === 200) { diff --git a/web/src/components/timeline/EventMenu.tsx b/web/src/components/timeline/EventMenu.tsx index 42efd2c97f..5c2798f2af 100644 --- a/web/src/components/timeline/EventMenu.tsx +++ b/web/src/components/timeline/EventMenu.tsx @@ -12,6 +12,7 @@ import { baseUrl } from "@/api/baseUrl"; import { useNavigate } from "react-router-dom"; import { useTranslation } from "react-i18next"; import { Event } from "@/types/event"; +import { REVIEW_PADDING } from "@/types/review"; import { FrigateConfig } from "@/types/frigateConfig"; import { useCallback, useState } from "react"; import { useIsAdmin } from "@/hooks/use-is-admin"; @@ -58,8 +59,8 @@ export default function EventMenu({ axios .post("debug_replay/start", { camera: event.camera, - start_time: event.start_time, - end_time: event.end_time, + start_time: (event.start_time ?? 0) - REVIEW_PADDING, + end_time: (event.end_time ?? Date.now() / 1000) + REVIEW_PADDING, }) .then((response) => { if (response.status === 202 || response.status === 200) {