This commit is contained in:
Nicolas Mowen 2024-06-11 08:12:07 -06:00
parent 3b523b37da
commit 5152eae3ec
3 changed files with 25 additions and 5 deletions

View File

@ -239,6 +239,7 @@ export default function ReviewFilterGroup({
currentSeverity={currentSeverity} currentSeverity={currentSeverity}
reviewSummary={reviewSummary} reviewSummary={reviewSummary}
allLabels={allLabels} allLabels={allLabels}
allZones={allZones}
onUpdateFilter={onUpdateFilter} onUpdateFilter={onUpdateFilter}
// not applicable as exports are not used // not applicable as exports are not used
camera="" camera=""

View File

@ -36,6 +36,7 @@ type MobileReviewSettingsDrawerProps = {
mode: ExportMode; mode: ExportMode;
reviewSummary?: ReviewSummary; reviewSummary?: ReviewSummary;
allLabels: string[]; allLabels: string[];
allZones: string[];
onUpdateFilter: (filter: ReviewFilter) => void; onUpdateFilter: (filter: ReviewFilter) => void;
setRange: (range: TimeRange | undefined) => void; setRange: (range: TimeRange | undefined) => void;
setMode: (mode: ExportMode) => void; setMode: (mode: ExportMode) => void;
@ -51,6 +52,7 @@ export default function MobileReviewSettingsDrawer({
mode, mode,
reviewSummary, reviewSummary,
allLabels, allLabels,
allZones,
onUpdateFilter, onUpdateFilter,
setRange, setRange,
setMode, setMode,
@ -104,6 +106,9 @@ export default function MobileReviewSettingsDrawer({
const [currentLabels, setCurrentLabels] = useState<string[] | undefined>( const [currentLabels, setCurrentLabels] = useState<string[] | undefined>(
filter?.labels, filter?.labels,
); );
const [currentZones, setCurrentZones] = useState<string[] | undefined>(
filter?.zones,
);
if (!isMobile) { if (!isMobile) {
return; return;
@ -222,7 +227,7 @@ export default function MobileReviewSettingsDrawer({
); );
} else if (drawerMode == "filter") { } else if (drawerMode == "filter") {
content = ( content = (
<div className="scrollbar-container flex h-auto w-full flex-col overflow-y-auto"> <div className="scrollbar-container flex h-auto w-full flex-col overflow-y-auto overflow-x-hidden">
<div className="relative mb-2 h-8 w-full"> <div className="relative mb-2 h-8 w-full">
<div <div
className="absolute left-0 text-selected" className="absolute left-0 text-selected"
@ -240,6 +245,13 @@ export default function MobileReviewSettingsDrawer({
currentLabels={currentLabels} currentLabels={currentLabels}
currentSeverity={currentSeverity} currentSeverity={currentSeverity}
showAll={filter?.showAll == true} showAll={filter?.showAll == true}
allZones={allZones}
selectedZones={filter?.zones}
currentZones={currentZones}
setCurrentZones={setCurrentZones}
updateZoneFilter={(newZones) =>
onUpdateFilter({ ...filter, zones: newZones })
}
setShowAll={(showAll) => { setShowAll={(showAll) => {
onUpdateFilter({ ...filter, showAll }); onUpdateFilter({ ...filter, showAll });
}} }}

View File

@ -111,7 +111,7 @@ export function RecordingView({
() => chunkedTimeRange[selectedRangeIdx], () => chunkedTimeRange[selectedRangeIdx],
[selectedRangeIdx, chunkedTimeRange], [selectedRangeIdx, chunkedTimeRange],
); );
const reviewLabels = useMemo(() => { const reviewFilterList = useMemo(() => {
const uniqueLabels = new Set<string>(); const uniqueLabels = new Set<string>();
reviewItems?.forEach((rev) => { reviewItems?.forEach((rev) => {
@ -121,7 +121,13 @@ export function RecordingView({
rev.data.audio.forEach((aud) => uniqueLabels.add(aud)); rev.data.audio.forEach((aud) => uniqueLabels.add(aud));
}); });
return [...uniqueLabels]; const uniqueZones = new Set<string>();
reviewItems?.forEach((rev) => {
rev.data.zones.forEach((zone) => uniqueZones.add(zone));
});
return { labels: [...uniqueLabels], zones: [...uniqueZones] };
}, [reviewItems]); }, [reviewItems]);
// export // export
@ -391,7 +397,7 @@ export function RecordingView({
reviewSummary={reviewSummary} reviewSummary={reviewSummary}
filter={filter} filter={filter}
motionOnly={false} motionOnly={false}
filterLabels={reviewLabels} filterList={reviewFilterList}
onUpdateFilter={updateFilter} onUpdateFilter={updateFilter}
setMotionOnly={() => {}} setMotionOnly={() => {}}
/> />
@ -434,7 +440,8 @@ export function RecordingView({
latestTime={timeRange.before} latestTime={timeRange.before}
mode={exportMode} mode={exportMode}
range={exportRange} range={exportRange}
allLabels={reviewLabels} allLabels={reviewFilterList.labels}
allZones={reviewFilterList.zones}
onUpdateFilter={updateFilter} onUpdateFilter={updateFilter}
setRange={setExportRange} setRange={setExportRange}
setMode={setExportMode} setMode={setExportMode}