Move frigate utils under the camera manager directory for Frigate.
This commit is contained in:
+1
-1
@@ -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,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
@@ -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
|
||||||
|
|||||||
@@ -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
@@ -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';
|
||||||
|
|
||||||
|
|||||||
@@ -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';
|
||||||
|
|||||||
@@ -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
@@ -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;
|
||||||
|
|||||||
Reference in New Issue
Block a user