Remove unnecessary error handling parameter.
This commit is contained in:
@@ -101,7 +101,6 @@ export class ViewManager {
|
||||
}
|
||||
|
||||
public async setViewWithNewDisplayMode(displayMode: ViewDisplayMode): Promise<void> {
|
||||
const host = this._api.getCardElementManager().getElement();
|
||||
const hass = this._api.getHASSManager().getHASS();
|
||||
|
||||
if (this._view && hass) {
|
||||
@@ -125,18 +124,22 @@ export class ViewManager {
|
||||
// query for more than one camera, reset the query results, change the
|
||||
// existing query to refer to all cameras and execute it to fetch new
|
||||
// results.
|
||||
const viewWithNewQuery = await executeMediaQueryForView(
|
||||
host,
|
||||
this._api.getCameraManager(),
|
||||
view,
|
||||
view.query
|
||||
.clone()
|
||||
.setQueryCameraIDs(
|
||||
view.isGrid()
|
||||
? this._api.getCameraManager().getStore().getVisibleCameraIDs()
|
||||
: view.camera,
|
||||
),
|
||||
);
|
||||
let viewWithNewQuery: View | null = null;
|
||||
try {
|
||||
viewWithNewQuery = await executeMediaQueryForView(
|
||||
this._api.getCameraManager(),
|
||||
view,
|
||||
view.query
|
||||
.clone()
|
||||
.setQueryCameraIDs(
|
||||
view.isGrid()
|
||||
? this._api.getCameraManager().getStore().getVisibleCameraIDs()
|
||||
: view.camera,
|
||||
),
|
||||
);
|
||||
} catch (e: unknown) {
|
||||
this._api.getMessageManager().setErrorIfHigherPriority(e);
|
||||
}
|
||||
|
||||
if (viewWithNewQuery) {
|
||||
return this._setView(viewWithNewQuery);
|
||||
|
||||
+47
-19
@@ -44,10 +44,16 @@ export const changeViewToRecentEventsForCameraAndDependents = async (
|
||||
}
|
||||
|
||||
(
|
||||
await executeMediaQueryForView(element, cameraManager, view, queries, {
|
||||
targetView: options?.targetView,
|
||||
select: options?.select,
|
||||
})
|
||||
await executeMediaQueryForViewWithErrorDispatching(
|
||||
element,
|
||||
cameraManager,
|
||||
view,
|
||||
queries,
|
||||
{
|
||||
targetView: options?.targetView,
|
||||
select: options?.select,
|
||||
},
|
||||
)
|
||||
)?.dispatchChangeEvent(element);
|
||||
};
|
||||
|
||||
@@ -106,10 +112,16 @@ export const changeViewToRecentRecordingForCameraAndDependents = async (
|
||||
}
|
||||
|
||||
(
|
||||
await executeMediaQueryForView(element, cameraManager, view, queries, {
|
||||
targetView: options?.targetView,
|
||||
select: options?.select,
|
||||
})
|
||||
await executeMediaQueryForViewWithErrorDispatching(
|
||||
element,
|
||||
cameraManager,
|
||||
view,
|
||||
queries,
|
||||
{
|
||||
targetView: options?.targetView,
|
||||
select: options?.select,
|
||||
},
|
||||
)
|
||||
)?.dispatchChangeEvent(element);
|
||||
};
|
||||
|
||||
@@ -127,7 +139,6 @@ const createQueriesForRecordingsView = (
|
||||
};
|
||||
|
||||
export const executeMediaQueryForView = async (
|
||||
element: HTMLElement,
|
||||
cameraManager: CameraManager,
|
||||
view: View,
|
||||
query: MediaQueries,
|
||||
@@ -138,21 +149,12 @@ export const executeMediaQueryForView = async (
|
||||
select?: ResultSelectType;
|
||||
},
|
||||
): Promise<View | null> => {
|
||||
let mediaArray: ViewMedia[] | null;
|
||||
|
||||
const queries = query.getQueries();
|
||||
if (!queries) {
|
||||
return null;
|
||||
}
|
||||
|
||||
try {
|
||||
mediaArray = await cameraManager.executeMediaQueries<MediaQuery>(queries);
|
||||
} catch (e) {
|
||||
errorToConsole(e as Error);
|
||||
dispatchFrigateCardErrorEvent(element, e as Error);
|
||||
return null;
|
||||
}
|
||||
|
||||
const mediaArray = await cameraManager.executeMediaQueries<MediaQuery>(queries);
|
||||
if (!mediaArray) {
|
||||
return null;
|
||||
}
|
||||
@@ -182,6 +184,32 @@ export const executeMediaQueryForView = async (
|
||||
.mergeInContext(viewerContext);
|
||||
};
|
||||
|
||||
export const executeMediaQueryForViewWithErrorDispatching = async (
|
||||
element: HTMLElement,
|
||||
cameraManager: CameraManager,
|
||||
view: View,
|
||||
query: MediaQueries,
|
||||
options?: {
|
||||
targetCameraID?: string;
|
||||
targetView?: FrigateCardView;
|
||||
targetTime?: Date;
|
||||
select?: ResultSelectType;
|
||||
},
|
||||
): Promise<View | null> => {
|
||||
try {
|
||||
return await executeMediaQueryForView(cameraManager, view, query, {
|
||||
targetCameraID: options?.targetCameraID,
|
||||
targetView: options?.targetView,
|
||||
targetTime: options?.targetTime,
|
||||
select: options?.select,
|
||||
});
|
||||
} catch (e: unknown) {
|
||||
errorToConsole(e as Error);
|
||||
dispatchFrigateCardErrorEvent(element, e as Error);
|
||||
}
|
||||
return null;
|
||||
};
|
||||
|
||||
/**
|
||||
* Find the longest matching media object that contains a given targetTime.
|
||||
* Longest is chosen to give the most stability to the media viewer.
|
||||
|
||||
Reference in New Issue
Block a user