Move frigate utils under the camera manager directory for Frigate.

This commit is contained in:
Dermot Duffy
2023-01-24 19:36:54 -08:00
parent 39b44863ce
commit d8614a3e8d
10 changed files with 27 additions and 26 deletions
+1 -1
View File
@@ -1,7 +1,7 @@
import isEqual from 'lodash-es/isEqual'; import isEqual from 'lodash-es/isEqual';
import orderBy from 'lodash-es/orderBy'; import orderBy from 'lodash-es/orderBy';
import sortedUniqBy from 'lodash-es/sortedUniqBy'; import sortedUniqBy from 'lodash-es/sortedUniqBy';
import { RecordingSegment, RecordingSegments } from '../utils/frigate'; import { RecordingSegment, RecordingSegments } from './frigate/frigate';
import { DateRange, MemoryRangeSet } from './range'; import { DateRange, MemoryRangeSet } from './range';
import { DataQuery, QueryResults } from './types'; import { DataQuery, QueryResults } from './types';
+1 -1
View File
@@ -1,7 +1,7 @@
import { CameraConfig } from '../types'; import { CameraConfig } from '../types';
import { RecordingSegmentsCache } from './cache'; import { RecordingSegmentsCache } from './cache';
import { CameraManagerEngine } from './engine'; import { CameraManagerEngine } from './engine';
import { FrigateCameraManagerEngine } from './engine-frigate'; import { FrigateCameraManagerEngine } from './frigate/engine-frigate';
import { DataQuery } from './types'; import { DataQuery } from './types';
export class CameraManagerEngineFactory { export class CameraManagerEngineFactory {
@@ -3,11 +3,11 @@ import add from 'date-fns/add';
import endOfHour from 'date-fns/endOfHour'; import endOfHour from 'date-fns/endOfHour';
import getUnixTime from 'date-fns/getUnixTime'; import getUnixTime from 'date-fns/getUnixTime';
import startOfHour from 'date-fns/startOfHour'; import startOfHour from 'date-fns/startOfHour';
import { CAMERA_BIRDSEYE } from '../const'; import { CAMERA_BIRDSEYE } from '../../const';
import { CameraConfig, FrigateRecording } from '../types'; import { CameraConfig, FrigateRecording } from '../../types';
import { MediaQueries, MediaQueriesResults } from '../view'; import { MediaQueries, MediaQueriesResults } from '../../view';
import { ViewMedia, ViewMediaClassifier, ViewMediaFactory } from '../view-media'; import { ViewMedia, ViewMediaClassifier, ViewMediaFactory } from '../../view-media';
import { errorToConsole } from '../utils/basic'; import { errorToConsole } from '../../utils/basic';
import { import {
getEvents, getEvents,
getRecordingSegments, getRecordingSegments,
@@ -17,14 +17,14 @@ import {
RecordingSegments, RecordingSegments,
RecordingSummary, RecordingSummary,
retainEvent, retainEvent,
} from '../utils/frigate'; } from './frigate';
import { RecordingSegmentsCache } from './cache'; import { RecordingSegmentsCache } from '../cache';
import { import {
CameraManagerEngine, CameraManagerEngine,
CAMERA_MANAGER_ENGINE_EVENT_LIMIT_DEFAULT, CAMERA_MANAGER_ENGINE_EVENT_LIMIT_DEFAULT,
} from './engine'; } from '../engine';
import { CameraManagerError } from './error'; import { CameraManagerError } from '../error';
import { DateRange } from './range'; import { DateRange } from '../range';
import { import {
Engine, Engine,
EventQuery, EventQuery,
@@ -40,7 +40,7 @@ import {
QueryType, QueryType,
RecordingQuery, RecordingQuery,
RecordingSegmentsQuery, RecordingSegmentsQuery,
} from './types'; } from '../types';
const EVENT_REQUEST_CACHE_MAX_AGE_SECONDS = 60; const EVENT_REQUEST_CACHE_MAX_AGE_SECONDS = 60;
const RECORDING_SUMMARY_REQUEST_CACHE_MAX_AGE_SECONDS = 60; const RECORDING_SUMMARY_REQUEST_CACHE_MAX_AGE_SECONDS = 60;
@@ -2,7 +2,7 @@ import { HomeAssistant } from 'custom-card-helpers';
import utcToZonedTime from 'date-fns-tz/utcToZonedTime'; import utcToZonedTime from 'date-fns-tz/utcToZonedTime';
import fromUnixTime from 'date-fns/fromUnixTime'; import fromUnixTime from 'date-fns/fromUnixTime';
import { z } from 'zod'; import { z } from 'zod';
import { localize } from '../localize/localize'; import { localize } from '../../localize/localize';
import { import {
ClipsOrSnapshots, ClipsOrSnapshots,
FrigateCardError, FrigateCardError,
@@ -10,9 +10,9 @@ import {
FrigateEvents, FrigateEvents,
frigateEventsSchema, frigateEventsSchema,
FrigateRecording, FrigateRecording,
} from '../types'; } from '../../types';
import { formatDateAndTime, prettifyTitle } from './basic'; import { formatDateAndTime, prettifyTitle } from '../../utils/basic';
import { homeAssistantWSRequest } from './ha'; import { homeAssistantWSRequest } from '../../utils/ha';
export const FRIGATE_ICON_SVG_PATH = export const FRIGATE_ICON_SVG_PATH =
'm 4.8759466,22.743573 c 0.0866,0.69274 0.811811,1.16359 0.37885,1.27183 ' + 'm 4.8759466,22.743573 c 0.0866,0.69274 0.811811,1.16359 0.37885,1.27183 ' +
@@ -226,7 +226,7 @@ export const getEventThumbnailURL = (clientId: string, event: FrigateEvent): str
* Get a media content ID for an event. * Get a media content ID for an event.
* @param clientId The Frigate client id. * @param clientId The Frigate client id.
* @param cameraName The Frigate camera name. * @param cameraName The Frigate camera name.
* @param id The event id. * @param event The Frigate event.
* @param mediaType The media type required. * @param mediaType The media type required.
* @returns A string media content id. * @returns A string media content id.
*/ */
@@ -241,8 +241,9 @@ export const getEventMediaContentID = (
/** /**
* Generate a recording identifier. * Generate a recording identifier.
* @param hass The HomeAssistant object. * @param clientId The Frigate client id.
* @param params The recording parameters to use in the identifer. * @param cameraName The Frigate camera name.
* @param recording The Frigate recording.
* @returns A recording identifier. * @returns A recording identifier.
*/ */
export const getRecordingMediaContentID = ( export const getRecordingMediaContentID = (
+1 -1
View File
@@ -1,5 +1,5 @@
import { FrigateEvents, FrigateRecording } from '../types'; import { FrigateEvents, FrigateRecording } from '../types';
import { RecordingSegments } from '../utils/frigate'; import { RecordingSegments } from './frigate/frigate';
// ==== // ====
// Base // Base
+1 -1
View File
@@ -27,7 +27,7 @@ import {
frigateCardHasAction, frigateCardHasAction,
getActionConfigGivenAction getActionConfigGivenAction
} from '../utils/action.js'; } from '../utils/action.js';
import { FRIGATE_ICON_SVG_PATH } from '../utils/frigate.js'; import { FRIGATE_ICON_SVG_PATH } from '../camera/frigate/frigate.js';
import { refreshDynamicStateParameters } from '../utils/ha'; import { refreshDynamicStateParameters } from '../utils/ha';
import './submenu.js'; import './submenu.js';
+1 -1
View File
@@ -141,7 +141,7 @@ import {
} from './types.js'; } from './types.js';
import { arrayMove } from './utils/basic.js'; import { arrayMove } from './utils/basic.js';
import { getCameraID, getCameraTitle } from './utils/camera.js'; import { getCameraID, getCameraTitle } from './utils/camera.js';
import { FRIGATE_ICON_SVG_PATH } from './utils/frigate.js'; import { FRIGATE_ICON_SVG_PATH } from './camera/frigate/frigate.js';
import { getEntitiesFromHASS, sideLoadHomeAssistantElements } from './utils/ha'; import { getEntitiesFromHASS, sideLoadHomeAssistantElements } from './utils/ha';
import { setLowPerformanceProfile } from './performance.js'; import { setLowPerformanceProfile } from './performance.js';
+1 -1
View File
@@ -5,7 +5,7 @@ import sub from 'date-fns/sub';
import { ViewContext } from 'view'; import { ViewContext } from 'view';
import { CameraConfig, ClipsOrSnapshotsOrAll, FrigateCardView } from '../types'; import { CameraConfig, ClipsOrSnapshotsOrAll, FrigateCardView } from '../types';
import { EventMediaQueries, RecordingMediaQueries, View } from '../view'; import { EventMediaQueries, RecordingMediaQueries, View } from '../view';
import { RecordingSegments } from './frigate'; import { RecordingSegments } from '../camera/frigate/frigate';
import { CameraManager } from '../camera/manager'; import { CameraManager } from '../camera/manager';
import { getAllDependentCameras } from './camera.js'; import { getAllDependentCameras } from './camera.js';
import { ViewMedia, ViewMediaClassifier } from '../view-media'; import { ViewMedia, ViewMediaClassifier } from '../view-media';
+1 -1
View File
@@ -6,7 +6,7 @@ import { IdType, TimelineItem, TimelineWindow } from 'vis-timeline/esnext';
import { CameraConfig, ClipsOrSnapshotsOrAll } from '../types'; import { CameraConfig, ClipsOrSnapshotsOrAll } from '../types';
import { CameraManager } from '../camera/manager'; import { CameraManager } from '../camera/manager';
import { EventQuery } from '../camera/types'; import { EventQuery } from '../camera/types';
import { RecordingSegment, RecordingSegments } from './frigate'; import { RecordingSegment, RecordingSegments } from '../camera/frigate/frigate';
import { capEndDate, convertRangeToCacheFriendlyTimes } from '../camera/util'; import { capEndDate, convertRangeToCacheFriendlyTimes } from '../camera/util';
import { EventMediaQueries } from '../view'; import { EventMediaQueries } from '../view';
import { ViewMedia } from '../view-media'; import { ViewMedia } from '../view-media';
+1 -1
View File
@@ -14,7 +14,7 @@ import {
getEventTitle, getEventTitle,
getRecordingMediaContentID, getRecordingMediaContentID,
getRecordingTitle, getRecordingTitle,
} from './utils/frigate.js'; } from './camera/frigate/frigate.js';
export type ViewMediaType = 'clip' | 'snapshot' | 'recording'; export type ViewMediaType = 'clip' | 'snapshot' | 'recording';
export type ViewMediaSourceType = FrigateEvent | FrigateRecording | BrowseMediaSource; export type ViewMediaSourceType = FrigateEvent | FrigateRecording | BrowseMediaSource;