chore: Enforce consistent type imports via @typescript-eslint/consistent-type-imports (#2545)
This commit is contained in:
committed by
dermotduffy
parent
8f4ebcc0de
commit
7dc29865b8
@@ -1,4 +1,4 @@
|
||||
import { AutoHideCondition } from '../config/schema/common/auto-hide';
|
||||
import type { AutoHideCondition } from '../config/schema/common/auto-hide';
|
||||
import { isBeingCasted } from '../utils/casting';
|
||||
|
||||
// Whether each auto-hide condition is currently active.
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
import { ReactiveController, ReactiveControllerHost } from 'lit';
|
||||
import type { ReactiveController, ReactiveControllerHost } from 'lit';
|
||||
|
||||
import { Timer } from '../utils/timer';
|
||||
|
||||
|
||||
@@ -1,15 +1,15 @@
|
||||
import { ViewManagerEpoch } from '../../card-controller/view/types';
|
||||
import { AdvancedCameraCardView } from '../../config/schema/common/const';
|
||||
import type { ViewManagerEpoch } from '../../card-controller/view/types';
|
||||
import type { AdvancedCameraCardView } from '../../config/schema/common/const';
|
||||
import { THUMBNAIL_WIDTH_DEFAULT } from '../../config/schema/common/controls/thumbnails';
|
||||
import { MediaGalleryThumbnailsConfig } from '../../config/schema/media-gallery';
|
||||
import type { MediaGalleryThumbnailsConfig } from '../../config/schema/media-gallery';
|
||||
import { errorToConsole } from '../../utils/basic';
|
||||
import { ViewItem } from '../../view/item';
|
||||
import type { ViewItem } from '../../view/item';
|
||||
import { ViewItemClassifier } from '../../view/item-classifier';
|
||||
import { QueryResults } from '../../view/query-results';
|
||||
import { UnifiedQuery } from '../../view/unified-query';
|
||||
import { UnifiedQueryRunner } from '../../view/unified-query-runner';
|
||||
import { View } from '../../view/view';
|
||||
import { GalleryColumnCountRoundMethod } from './gallery-core-controller';
|
||||
import type { UnifiedQuery } from '../../view/unified-query';
|
||||
import type { UnifiedQueryRunner } from '../../view/unified-query-runner';
|
||||
import type { View } from '../../view/view';
|
||||
import type { GalleryColumnCountRoundMethod } from './gallery-core-controller';
|
||||
|
||||
interface GalleryViewContext {
|
||||
// The gallery view type the user navigated from (when in viewer). Used to
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
import { LitElement, ReactiveController } from 'lit';
|
||||
import type { LitElement, ReactiveController } from 'lit';
|
||||
import { throttle } from 'lodash-es';
|
||||
|
||||
import { GalleryExtendEvent } from '../../components/gallery/types';
|
||||
import type { GalleryExtendEvent } from '../../components/gallery/types';
|
||||
import { fireAdvancedCameraCardEvent } from '../../utils/fire-advanced-camera-card-event';
|
||||
import { scrollIntoView } from '../../utils/scroll';
|
||||
import { sleep } from '../../utils/sleep';
|
||||
|
||||
@@ -1,11 +1,11 @@
|
||||
import { HassEntity } from 'home-assistant-js-websocket';
|
||||
import type { HassEntity } from 'home-assistant-js-websocket';
|
||||
|
||||
import frigateSVG from '../camera-manager/frigate/assets/frigate.svg';
|
||||
import motioneyeSVG from '../camera-manager/motioneye/assets/motioneye.svg';
|
||||
import reolinkSVG from '../camera-manager/reolink/assets/reolink.svg';
|
||||
import tplinkSVG from '../camera-manager/tplink/assets/tplink.svg';
|
||||
import { Icon } from '../config/schema/common/icon';
|
||||
import { HomeAssistant } from '../ha/types';
|
||||
import type { Icon } from '../config/schema/common/icon';
|
||||
import type { HomeAssistant } from '../ha/types';
|
||||
import irisSVG from '../images/iris.svg';
|
||||
|
||||
export class IconController {
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
import { LitElement, ReactiveController } from 'lit';
|
||||
import type { LitElement, ReactiveController } from 'lit';
|
||||
import { isEqual } from 'lodash-es';
|
||||
|
||||
import { KeyboardShortcut } from '../config/schema/view';
|
||||
import type { KeyboardShortcut } from '../config/schema/view';
|
||||
|
||||
export class KeyAssignerController implements ReactiveController {
|
||||
private _host: LitElement;
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
import { ReactiveController, ReactiveControllerHost } from 'lit';
|
||||
import type { ReactiveController, ReactiveControllerHost } from 'lit';
|
||||
|
||||
import { LazyUnloadCondition } from '../config/schema/common/media-actions';
|
||||
import type { LazyUnloadCondition } from '../config/schema/common/media-actions';
|
||||
|
||||
type LazyLoadListener = (loaded: boolean) => void;
|
||||
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
import { MicrophoneManager } from '../../card-controller/microphone-manager.js';
|
||||
import {
|
||||
import type { MicrophoneManager } from '../../card-controller/microphone-manager.js';
|
||||
import type {
|
||||
MicrophoneAutoMuteCondition,
|
||||
MicrophoneAutoUnmuteCondition,
|
||||
} from '../../config/schema/common/media-actions.js';
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
import { VideoRTC } from '../../../components/live/providers/go2rtc/video-rtc';
|
||||
import { MediaTechnology } from '../../../types';
|
||||
import type { VideoRTC } from '../../../components/live/providers/go2rtc/video-rtc';
|
||||
import type { MediaTechnology } from '../../../types';
|
||||
|
||||
export const getTechnologyForVideoRTC = (
|
||||
element: VideoRTC,
|
||||
|
||||
@@ -1,11 +1,11 @@
|
||||
import { MicrophoneState } from '../card-controller/types.js';
|
||||
import {
|
||||
import type { MicrophoneState } from '../card-controller/types.js';
|
||||
import type {
|
||||
AutoMuteCondition,
|
||||
AutoPauseCondition,
|
||||
AutoPlayCondition,
|
||||
AutoUnmuteCondition,
|
||||
} from '../config/schema/common/media-actions.js';
|
||||
import { MediaPlayerElement } from '../types.js';
|
||||
import type { MediaPlayerElement } from '../types.js';
|
||||
import { Timer } from '../utils/timer.js';
|
||||
import { VisibilityObserver } from './visibility-observer.js';
|
||||
|
||||
|
||||
@@ -1,8 +1,8 @@
|
||||
import { ReactiveController, ReactiveControllerHost } from 'lit';
|
||||
import type { ReactiveController, ReactiveControllerHost } from 'lit';
|
||||
import { debounce } from 'lodash-es';
|
||||
|
||||
import { CameraDimensionsConfig } from '../config/schema/cameras';
|
||||
import { MediaLoadedInfoEventDetail } from '../types';
|
||||
import type { CameraDimensionsConfig } from '../config/schema/cameras';
|
||||
import type { MediaLoadedInfoEventDetail } from '../types';
|
||||
import { aspectRatioToString, setOrRemoveStyleProperty } from '../utils/basic';
|
||||
import { updateElementStyleFromMediaLayoutConfig } from '../utils/media-layout';
|
||||
|
||||
|
||||
@@ -10,24 +10,24 @@ import {
|
||||
startOfYesterday,
|
||||
sub,
|
||||
} from 'date-fns';
|
||||
import { LitElement } from 'lit';
|
||||
import type { LitElement } from 'lit';
|
||||
import { isEqual, orderBy } from 'lodash-es';
|
||||
|
||||
import { CameraManager, CameraQueryClassifier } from '../camera-manager/manager';
|
||||
import { DateRange, PartialDateRange } from '../camera-manager/range';
|
||||
import { CameraQueryClassifier, type CameraManager } from '../camera-manager/manager';
|
||||
import type { DateRange, PartialDateRange } from '../camera-manager/range';
|
||||
import {
|
||||
EventQuery,
|
||||
MediaMetadata,
|
||||
QueryType,
|
||||
ReviewQuery,
|
||||
type EventQuery,
|
||||
type MediaMetadata,
|
||||
type ReviewQuery,
|
||||
} from '../camera-manager/types';
|
||||
import { FoldersManager } from '../card-controller/folders/manager';
|
||||
import { ViewManagerInterface } from '../card-controller/view/types';
|
||||
import { SelectOption, SelectValues } from '../components/select';
|
||||
import { CardWideConfig } from '../config/schema/types';
|
||||
import type { FoldersManager } from '../card-controller/folders/manager';
|
||||
import type { ViewManagerInterface } from '../card-controller/view/types';
|
||||
import type { SelectOption, SelectValues } from '../components/select';
|
||||
import type { CardWideConfig } from '../config/schema/types';
|
||||
import { localize } from '../localize/localize';
|
||||
import { SEVERITIES, Severity } from '../severity';
|
||||
import { ViewMediaType } from '../types';
|
||||
import { SEVERITIES, type Severity } from '../severity';
|
||||
import type { ViewMediaType } from '../types';
|
||||
import { errorToConsole, formatDate, prettifyTitle } from '../utils/basic';
|
||||
import { UnifiedQueryBuilder } from '../view/unified-query-builder';
|
||||
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
import { isEqual, throttle } from 'lodash-es';
|
||||
import Masonry from 'masonry-layout';
|
||||
|
||||
import { ViewDisplayConfig } from '../config/schema/common/display';
|
||||
import type { ViewDisplayConfig } from '../config/schema/common/display';
|
||||
import {
|
||||
forceReflow,
|
||||
getChildrenFromElement,
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
import { ReactiveController, ReactiveControllerHost } from 'lit';
|
||||
import type { ReactiveController, ReactiveControllerHost } from 'lit';
|
||||
|
||||
import { MediaLoadedInfo, MediaLoadedInfoEventDetail } from '../types';
|
||||
import type { MediaLoadedInfo, MediaLoadedInfoEventDetail } from '../types';
|
||||
import { onAbort } from '../utils/abort-signal';
|
||||
|
||||
interface MediaLoadedInfoSinkConfig {
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
import { ReactiveController, ReactiveControllerHost } from 'lit';
|
||||
import type { ReactiveController, ReactiveControllerHost } from 'lit';
|
||||
import { isEqual, omit } from 'lodash-es';
|
||||
|
||||
import {
|
||||
import type {
|
||||
MediaLoadedInfo,
|
||||
MediaLoadedInfoEventDetail,
|
||||
UntargetedMediaLoadedInfo,
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
import { LitElement } from 'lit';
|
||||
import type { LitElement } from 'lit';
|
||||
|
||||
import { FullscreenElement, MediaPlayerController, PIPElement } from '../../types';
|
||||
import type { FullscreenElement, MediaPlayerController, PIPElement } from '../../types';
|
||||
import { screenshotImage } from '../../utils/screenshot';
|
||||
|
||||
export class ImageMediaPlayerController implements MediaPlayerController {
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
import JSMpeg from '@cycjimmy/jsmpeg-player';
|
||||
import { LitElement } from 'lit';
|
||||
import type JSMpeg from '@cycjimmy/jsmpeg-player';
|
||||
import type { LitElement } from 'lit';
|
||||
|
||||
import { FullscreenElement, MediaPlayerController, PIPElement } from '../../types';
|
||||
import type { FullscreenElement, MediaPlayerController, PIPElement } from '../../types';
|
||||
|
||||
export class JSMPEGMediaPlayerController implements MediaPlayerController {
|
||||
private _host: LitElement;
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
import { LitElement } from 'lit';
|
||||
import type { LitElement } from 'lit';
|
||||
|
||||
import { FullscreenElement, MediaPlayerController, PIPElement } from '../../types';
|
||||
import { CachedValueController } from '../cached-value-controller';
|
||||
import type { FullscreenElement, MediaPlayerController, PIPElement } from '../../types';
|
||||
import type { CachedValueController } from '../cached-value-controller';
|
||||
|
||||
export class UpdatingImageMediaPlayerController implements MediaPlayerController {
|
||||
private _host: LitElement;
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
import { LitElement } from 'lit';
|
||||
import type { LitElement } from 'lit';
|
||||
|
||||
import { FullscreenElement, MediaPlayerController, PIPElement } from '../../types';
|
||||
import type { FullscreenElement, MediaPlayerController, PIPElement } from '../../types';
|
||||
import { hideMediaControlsTemporarily, setControlsOnVideo } from '../../utils/controls';
|
||||
import { screenshotVideo } from '../../utils/screenshot';
|
||||
|
||||
|
||||
@@ -1,15 +1,15 @@
|
||||
import { format } from 'date-fns';
|
||||
|
||||
import { CameraManager } from '../../camera-manager/manager';
|
||||
import { CameraManagerCameraMetadata } from '../../camera-manager/types';
|
||||
import { ViewItemManager } from '../../card-controller/view/item-manager';
|
||||
import { ViewManagerEpoch } from '../../card-controller/view/types';
|
||||
import {
|
||||
import type { CameraManager } from '../../camera-manager/manager';
|
||||
import type { CameraManagerCameraMetadata } from '../../camera-manager/types';
|
||||
import type { ViewItemManager } from '../../card-controller/view/item-manager';
|
||||
import type { ViewManagerEpoch } from '../../card-controller/view/types';
|
||||
import type {
|
||||
Notification,
|
||||
NotificationControl,
|
||||
NotificationDetail,
|
||||
} from '../../config/schema/actions/types';
|
||||
import { HomeAssistant } from '../../ha/types';
|
||||
import type { HomeAssistant } from '../../ha/types';
|
||||
import { localize } from '../../localize/localize';
|
||||
import { createInternalCallbackAction } from '../../utils/action';
|
||||
import { getDurationString, prettifyTitle } from '../../utils/basic';
|
||||
@@ -19,9 +19,9 @@ import {
|
||||
toggleFavorite,
|
||||
toggleReviewed,
|
||||
} from '../../utils/media-actions';
|
||||
import { ViewItem } from '../../view/item';
|
||||
import type { ViewItem } from '../../view/item';
|
||||
import { ViewItemClassifier } from '../../view/item-classifier';
|
||||
import { ViewItemCapabilities } from '../../view/types';
|
||||
import type { ViewItemCapabilities } from '../../view/types';
|
||||
|
||||
export interface NotificationControlsContext {
|
||||
hass?: HomeAssistant;
|
||||
|
||||
@@ -1,23 +1,23 @@
|
||||
import { StyleInfo } from 'lit/directives/style-map';
|
||||
import type { StyleInfo } from 'lit/directives/style-map';
|
||||
|
||||
import { CameraManager } from '../camera-manager/manager';
|
||||
import { CallManager } from '../card-controller/call/manager';
|
||||
import { FoldersManager } from '../card-controller/folders/manager';
|
||||
import { FullscreenManager } from '../card-controller/fullscreen/fullscreen-manager';
|
||||
import { MediaPlayerManager } from '../card-controller/media-player-manager';
|
||||
import { MicrophoneManager } from '../card-controller/microphone-manager';
|
||||
import { PIPManager } from '../card-controller/pip-manager';
|
||||
import { ViewManager } from '../card-controller/view/view-manager';
|
||||
import type { CameraManager } from '../camera-manager/manager';
|
||||
import type { CallManager } from '../card-controller/call/manager';
|
||||
import type { FoldersManager } from '../card-controller/folders/manager';
|
||||
import type { FullscreenManager } from '../card-controller/fullscreen/fullscreen-manager';
|
||||
import type { MediaPlayerManager } from '../card-controller/media-player-manager';
|
||||
import type { MicrophoneManager } from '../card-controller/microphone-manager';
|
||||
import type { PIPManager } from '../card-controller/pip-manager';
|
||||
import type { ViewManager } from '../card-controller/view/view-manager';
|
||||
import {
|
||||
AdvancedCameraCardView,
|
||||
VIEWS_USER_SPECIFIED,
|
||||
type AdvancedCameraCardView,
|
||||
} from '../config/schema/common/const';
|
||||
import { MenuItem } from '../config/schema/elements/custom/menu/types';
|
||||
import { AdvancedCameraCardConfig } from '../config/schema/types';
|
||||
import type { MenuItem } from '../config/schema/elements/custom/menu/types';
|
||||
import type { AdvancedCameraCardConfig } from '../config/schema/types';
|
||||
import { getEntityTitle } from '../ha/get-entity-title';
|
||||
import { HomeAssistant } from '../ha/types';
|
||||
import type { HomeAssistant } from '../ha/types';
|
||||
import { localize } from '../localize/localize.js';
|
||||
import { MediaLoadedInfo } from '../types';
|
||||
import type { MediaLoadedInfo } from '../types';
|
||||
import {
|
||||
createCallEndAction,
|
||||
createCallStartAction,
|
||||
@@ -39,7 +39,7 @@ import { getPTZTarget } from '../utils/ptz';
|
||||
import { ViewItemClassifier } from '../view/item-classifier';
|
||||
import { getStreamCameraID, hasSubstream } from '../view/substream';
|
||||
import { resolveViewName } from '../view/utils/resolve-default';
|
||||
import { View } from '../view/view';
|
||||
import type { View } from '../view/view';
|
||||
import {
|
||||
getCameraIDsWithCapabilityForView,
|
||||
isViewSupported,
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
import { LitElement } from 'lit';
|
||||
import type { LitElement } from 'lit';
|
||||
import { isEqual, orderBy } from 'lodash-es';
|
||||
|
||||
import { dispatchActionExecutionRequest } from '../card-controller/actions/utils/execution-request.js';
|
||||
@@ -11,7 +11,7 @@ import type { MenuConfig } from '../config/schema/menu.js';
|
||||
import type { Interaction } from '../types.js';
|
||||
import { getActionConfigGivenAction, isStandardAction } from '../utils/action';
|
||||
import { arrayify, isTruthy } from '../utils/basic.js';
|
||||
import { AutoHideState, isAutoHidden as evaluateAutoHidden } from './auto-hide.js';
|
||||
import { isAutoHidden as evaluateAutoHidden, type AutoHideState } from './auto-hide.js';
|
||||
|
||||
export class MenuController {
|
||||
private _host: LitElement;
|
||||
|
||||
@@ -1,11 +1,11 @@
|
||||
import { NonEmptyTuple } from 'type-fest';
|
||||
import type { NonEmptyTuple } from 'type-fest';
|
||||
|
||||
import { FolderPathComponent, FolderQuery } from '../card-controller/folders/types';
|
||||
import { ViewManagerEpoch, ViewModifier } from '../card-controller/view/types';
|
||||
import type { FolderPathComponent, FolderQuery } from '../card-controller/folders/types';
|
||||
import type { ViewManagerEpoch, ViewModifier } from '../card-controller/view/types';
|
||||
import { localize } from '../localize/localize';
|
||||
import { ViewFolder, ViewMedia } from '../view/item';
|
||||
import { UnifiedQuery } from '../view/unified-query';
|
||||
import { UnifiedQueryBuilder } from '../view/unified-query-builder';
|
||||
import { ViewFolder, type ViewMedia } from '../view/item';
|
||||
import type { UnifiedQuery } from '../view/unified-query';
|
||||
import type { UnifiedQueryBuilder } from '../view/unified-query-builder';
|
||||
|
||||
export interface FolderNavigationParamaters {
|
||||
viewManagerEpoch: ViewManagerEpoch;
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
import { dispatchActionExecutionRequest } from '../../card-controller/actions/utils/execution-request.js';
|
||||
import { NotificationControl } from '../../config/schema/actions/types.js';
|
||||
import type { NotificationControl } from '../../config/schema/actions/types.js';
|
||||
import {
|
||||
getActionConfigGivenAction,
|
||||
stopEventFromActivatingCardWideActions,
|
||||
|
||||
@@ -1,5 +1,8 @@
|
||||
import { Notification, NotificationDetail } from '../../config/schema/actions/types.js';
|
||||
import { Link } from '../../config/schema/common/link.js';
|
||||
import type {
|
||||
Notification,
|
||||
NotificationDetail,
|
||||
} from '../../config/schema/actions/types.js';
|
||||
import type { Link } from '../../config/schema/common/link.js';
|
||||
import { getContextFromError } from '../../utils/error-context.js';
|
||||
import { dataToContext } from './data-to-context.js';
|
||||
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
import { Notification } from '../../config/schema/actions/types.js';
|
||||
import type { Notification } from '../../config/schema/actions/types.js';
|
||||
|
||||
export const summarizeNotification = (notification: Notification): string | null => {
|
||||
const text = notification.body?.text ?? notification.heading?.text ?? null;
|
||||
|
||||
@@ -5,10 +5,10 @@ import {
|
||||
wheelAction,
|
||||
type Handler,
|
||||
} from '@use-gesture/vanilla';
|
||||
import { ReactiveController, ReactiveControllerHost } from 'lit';
|
||||
import type { ReactiveController, ReactiveControllerHost } from 'lit';
|
||||
|
||||
import { dispatchActionExecutionRequest } from '../../card-controller/actions/utils/execution-request.js';
|
||||
import {
|
||||
import type {
|
||||
PTZAction,
|
||||
PTZActionPhase,
|
||||
PTZPanAction,
|
||||
|
||||
@@ -1,20 +1,20 @@
|
||||
import { CameraManager } from '../../camera-manager/manager.js';
|
||||
import type { CameraManager } from '../../camera-manager/manager.js';
|
||||
import { dispatchActionExecutionRequest } from '../../card-controller/actions/utils/execution-request.js';
|
||||
import { SubmenuInteraction } from '../../components/submenu/types.js';
|
||||
import { PTZAction } from '../../config/schema/actions/custom/ptz.js';
|
||||
import { Actions, ActionsConfig } from '../../config/schema/actions/types.js';
|
||||
import {
|
||||
import type { SubmenuInteraction } from '../../components/submenu/types.js';
|
||||
import type { PTZAction } from '../../config/schema/actions/custom/ptz.js';
|
||||
import type { Actions, ActionsConfig } from '../../config/schema/actions/types.js';
|
||||
import type {
|
||||
PTZControlsConfig,
|
||||
PTZControlType,
|
||||
} from '../../config/schema/common/controls/ptz.js';
|
||||
import { HomeAssistant } from '../../ha/types.js';
|
||||
import { Interaction } from '../../types.js';
|
||||
import type { HomeAssistant } from '../../ha/types.js';
|
||||
import type { Interaction } from '../../types.js';
|
||||
import {
|
||||
createPTZControlsAction,
|
||||
createPTZMultiAction,
|
||||
getActionConfigGivenAction,
|
||||
} from '../../utils/action.js';
|
||||
import { PTZControllerActions } from './types';
|
||||
import type { PTZControllerActions } from './types';
|
||||
|
||||
export class PTZController {
|
||||
private _host: HTMLElement;
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
import { PTZControlAction } from '../../config/schema/actions/custom/ptz';
|
||||
import { Actions } from '../../config/schema/actions/types';
|
||||
import { PTZControlType } from '../../config/schema/common/controls/ptz';
|
||||
import type { PTZControlAction } from '../../config/schema/actions/custom/ptz';
|
||||
import type { Actions } from '../../config/schema/actions/types';
|
||||
import type { PTZControlType } from '../../config/schema/common/controls/ptz';
|
||||
|
||||
interface PTZControlsViewContext {
|
||||
enabled?: boolean;
|
||||
|
||||
@@ -1,14 +1,14 @@
|
||||
import { ReactiveController, ReactiveControllerHost } from 'lit';
|
||||
import type { ReactiveController, ReactiveControllerHost } from 'lit';
|
||||
import { isEqual } from 'lodash-es';
|
||||
|
||||
import { EnabledProxyConfig } from '../config/schema/common/proxy.js';
|
||||
import type { EnabledProxyConfig } from '../config/schema/common/proxy.js';
|
||||
import { homeAssistantGetSignedURLIfNecessary } from '../ha/sign-path.js';
|
||||
import { HomeAssistant } from '../ha/types.js';
|
||||
import type { HomeAssistant } from '../ha/types.js';
|
||||
import {
|
||||
createProxiedEndpointIfNecessary,
|
||||
CreateProxiedEndpointOptions,
|
||||
type CreateProxiedEndpointOptions,
|
||||
} from '../ha/web-proxy.js';
|
||||
import { Endpoint } from '../types.js';
|
||||
import type { Endpoint } from '../types.js';
|
||||
import { errorToConsole } from '../utils/basic.js';
|
||||
|
||||
const PROXY_URL_SIGN_EXPIRY_SECONDS = 24 * 60 * 60;
|
||||
|
||||
@@ -1,14 +1,14 @@
|
||||
import { LitElement } from 'lit';
|
||||
import type { LitElement } from 'lit';
|
||||
import { isEqual, orderBy } from 'lodash-es';
|
||||
|
||||
import { dispatchActionExecutionRequest } from '../card-controller/actions/utils/execution-request';
|
||||
import { ActionsConfig, StatusBarItem } from '../config/schema/actions/types';
|
||||
import type { ActionsConfig, StatusBarItem } from '../config/schema/actions/types';
|
||||
import { STATUS_BAR_PRIORITY_DEFAULT } from '../config/schema/common/const';
|
||||
import { StatusBarConfig } from '../config/schema/status-bar';
|
||||
import type { StatusBarConfig } from '../config/schema/status-bar';
|
||||
import { getActionConfigGivenAction } from '../utils/action';
|
||||
import { arrayify } from '../utils/basic';
|
||||
import { Timer } from '../utils/timer';
|
||||
import { AutoHideState, isAutoHidden as evaluateAutoHidden } from './auto-hide';
|
||||
import { isAutoHidden as evaluateAutoHidden, type AutoHideState } from './auto-hide';
|
||||
|
||||
export class StatusBarController {
|
||||
private _host: LitElement;
|
||||
|
||||
@@ -1,13 +1,13 @@
|
||||
import { format } from 'date-fns';
|
||||
|
||||
import { CameraManager } from '../../../camera-manager/manager';
|
||||
import { CameraManagerCameraMetadata } from '../../../camera-manager/types';
|
||||
import type { CameraManager } from '../../../camera-manager/manager';
|
||||
import type { CameraManagerCameraMetadata } from '../../../camera-manager/types';
|
||||
import {
|
||||
brandsUrl,
|
||||
extractDomainFromBrandUrl,
|
||||
isBrandUrl,
|
||||
} from '../../../ha/brands-url';
|
||||
import { ViewItem } from '../../../view/item';
|
||||
import type { ViewItem } from '../../../view/item';
|
||||
import { ViewItemClassifier } from '../../../view/item-classifier';
|
||||
|
||||
export class ThumbnailFeatureController {
|
||||
|
||||
@@ -1,47 +1,51 @@
|
||||
import { add, differenceInSeconds, sub } from 'date-fns';
|
||||
import { LitElement } from 'lit';
|
||||
import type { LitElement } from 'lit';
|
||||
import { isEqual, throttle } from 'lodash-es';
|
||||
import { ViewContext } from 'view';
|
||||
import type { ViewContext } from 'view';
|
||||
import {
|
||||
IdType,
|
||||
Timeline,
|
||||
TimelineEventPropertiesResult,
|
||||
TimelineFormatOption,
|
||||
TimelineItem,
|
||||
TimelineOptions,
|
||||
TimelineOptionsCluster,
|
||||
TimelineWindow,
|
||||
type IdType,
|
||||
type TimelineEventPropertiesResult,
|
||||
type TimelineFormatOption,
|
||||
type TimelineItem,
|
||||
type TimelineOptions,
|
||||
type TimelineOptionsCluster,
|
||||
type TimelineWindow,
|
||||
} from 'vis-timeline';
|
||||
|
||||
import { CameraManager } from '../../camera-manager/manager';
|
||||
import type { CameraManager } from '../../camera-manager/manager';
|
||||
import { rangesOverlap } from '../../camera-manager/range';
|
||||
import { convertRangeToCacheFriendlyTimes } from '../../camera-manager/utils/range-to-cache-friendly';
|
||||
import { FoldersManager } from '../../card-controller/folders/manager';
|
||||
import { ViewItemManager } from '../../card-controller/view/item-manager';
|
||||
import type { FoldersManager } from '../../card-controller/folders/manager';
|
||||
import type { ViewItemManager } from '../../card-controller/view/item-manager';
|
||||
import { MergeContextViewModifier } from '../../card-controller/view/modifiers/merge-context';
|
||||
import { ViewManagerEpoch } from '../../card-controller/view/types';
|
||||
import { ConditionStateManagerReadonlyInterface } from '../../condition-trigger/conditions/types';
|
||||
import { CameraConfig } from '../../config/schema/cameras';
|
||||
import { AdvancedCameraCardView } from '../../config/schema/common/const';
|
||||
import { ThumbnailsControlBaseConfig } from '../../config/schema/common/controls/thumbnails';
|
||||
import {
|
||||
import type { ViewManagerEpoch } from '../../card-controller/view/types';
|
||||
import type { ConditionStateManagerReadonlyInterface } from '../../condition-trigger/conditions/types';
|
||||
import type { CameraConfig } from '../../config/schema/cameras';
|
||||
import type { AdvancedCameraCardView } from '../../config/schema/common/const';
|
||||
import type { ThumbnailsControlBaseConfig } from '../../config/schema/common/controls/thumbnails';
|
||||
import type {
|
||||
TimelineCoreConfig,
|
||||
TimelinePanMode,
|
||||
} from '../../config/schema/common/controls/timeline';
|
||||
import { configDefaults } from '../../config/schema/types';
|
||||
import { HomeAssistant } from '../../ha/types';
|
||||
import type { HomeAssistant } from '../../ha/types';
|
||||
import { stopEventFromActivatingCardWideActions } from '../../utils/action';
|
||||
import { formatDateAndTime, isHoverableDevice, isTruthy } from '../../utils/basic';
|
||||
import { findBestMediaTimeIndex } from '../../utils/find-best-media-time-index';
|
||||
import { fireAdvancedCameraCardEvent } from '../../utils/fire-advanced-camera-card-event';
|
||||
import { ViewMedia } from '../../view/item';
|
||||
import type { ViewMedia } from '../../view/item';
|
||||
import { ViewItemClassifier } from '../../view/item-classifier';
|
||||
import { QueryResults } from '../../view/query-results';
|
||||
import { UnifiedQuery } from '../../view/unified-query';
|
||||
import type { UnifiedQuery } from '../../view/unified-query';
|
||||
import { UnifiedQueryTransformer } from '../../view/unified-query-transformer';
|
||||
import { mergeViewContext } from '../../view/view';
|
||||
import { AdvancedCameraCardTimelineItem, TimelineDataSource } from './source';
|
||||
import { ExtendedTimeline, TimelineItemClickAction, TimelineRangeChange } from './types';
|
||||
import { TimelineDataSource, type AdvancedCameraCardTimelineItem } from './source';
|
||||
import type {
|
||||
ExtendedTimeline,
|
||||
TimelineItemClickAction,
|
||||
TimelineRangeChange,
|
||||
} from './types';
|
||||
|
||||
// An event used to fetch data required for thumbnail rendering. See special
|
||||
// note below on why this is necessary.
|
||||
|
||||
@@ -1,23 +1,23 @@
|
||||
import { add, sub } from 'date-fns';
|
||||
import { DataSet } from 'vis-data';
|
||||
import { IdType, TimelineItem, TimelineWindow } from 'vis-timeline/esnext';
|
||||
import type { IdType, TimelineItem, TimelineWindow } from 'vis-timeline/esnext';
|
||||
|
||||
import { CameraManager } from '../../camera-manager/manager';
|
||||
import type { CameraManager } from '../../camera-manager/manager';
|
||||
import {
|
||||
compressRanges,
|
||||
ExpiringMemoryRangeSet,
|
||||
MemoryRangeSet,
|
||||
} from '../../camera-manager/range';
|
||||
import { RecordingSegment } from '../../camera-manager/types';
|
||||
import type { RecordingSegment } from '../../camera-manager/types';
|
||||
import { capEndDate } from '../../camera-manager/utils/cap-end-date';
|
||||
import { convertRangeToCacheFriendlyTimes } from '../../camera-manager/utils/range-to-cache-friendly';
|
||||
import { FoldersManager } from '../../card-controller/folders/manager';
|
||||
import { ConditionStateManagerReadonlyInterface } from '../../condition-trigger/conditions/types';
|
||||
import { FolderConfig } from '../../config/schema/folders';
|
||||
import type { FoldersManager } from '../../card-controller/folders/manager';
|
||||
import type { ConditionStateManagerReadonlyInterface } from '../../condition-trigger/conditions/types';
|
||||
import type { FolderConfig } from '../../config/schema/folders';
|
||||
import { errorToConsole } from '../../utils/basic.js';
|
||||
import { ViewItem, ViewMedia } from '../../view/item';
|
||||
import type { ViewItem, ViewMedia } from '../../view/item';
|
||||
import { ViewItemClassifier } from '../../view/item-classifier';
|
||||
import { UnifiedQuery } from '../../view/unified-query';
|
||||
import type { UnifiedQuery } from '../../view/unified-query';
|
||||
import { UnifiedQueryBuilder } from '../../view/unified-query-builder';
|
||||
import { UnifiedQueryRunner } from '../../view/unified-query-runner';
|
||||
import { UnifiedQueryTransformer } from '../../view/unified-query-transformer';
|
||||
|
||||
@@ -1,11 +1,11 @@
|
||||
import { DateType, IdType, Timeline, TimelineWindow } from 'vis-timeline';
|
||||
import type { DateType, IdType, Timeline, TimelineWindow } from 'vis-timeline';
|
||||
|
||||
import { CameraManager } from '../../camera-manager/manager';
|
||||
import { ViewItemManager } from '../../card-controller/view/item-manager';
|
||||
import { ViewManagerEpoch } from '../../card-controller/view/types';
|
||||
import { CameraConfig } from '../../config/schema/cameras';
|
||||
import { HomeAssistant } from '../../ha/types';
|
||||
import { ViewMedia } from '../../view/item';
|
||||
import type { CameraManager } from '../../camera-manager/manager';
|
||||
import type { ViewItemManager } from '../../card-controller/view/item-manager';
|
||||
import type { ViewManagerEpoch } from '../../card-controller/view/types';
|
||||
import type { CameraConfig } from '../../config/schema/cameras';
|
||||
import type { HomeAssistant } from '../../ha/types';
|
||||
import type { ViewMedia } from '../../view/item';
|
||||
|
||||
// An event used to fetch data required for thumbnail rendering. See special
|
||||
// note in AdvancedCameraCardTimelineThumbnail on why this is necessary.
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
import { PartialDeep } from 'type-fest';
|
||||
import type { PartialDeep } from 'type-fest';
|
||||
|
||||
export const ZOOM_DEFAULT_PAN_X = 50;
|
||||
export const ZOOM_DEFAULT_PAN_Y = 50;
|
||||
|
||||
@@ -1,16 +1,19 @@
|
||||
import Panzoom, { PanzoomEventDetail, PanzoomObject } from '@dermotduffy/panzoom';
|
||||
import Panzoom, {
|
||||
type PanzoomEventDetail,
|
||||
type PanzoomObject,
|
||||
} from '@dermotduffy/panzoom';
|
||||
import { round, throttle } from 'lodash-es';
|
||||
|
||||
import { arefloatsApproximatelyEqual, isHoverableDevice } from '../../utils/basic';
|
||||
import { fireAdvancedCameraCardEvent } from '../../utils/fire-advanced-camera-card-event';
|
||||
import {
|
||||
isZoomEmpty,
|
||||
PartialZoomSettings,
|
||||
ZOOM_DEFAULT_PAN_X,
|
||||
ZOOM_DEFAULT_PAN_Y,
|
||||
ZOOM_DEFAULT_SCALE,
|
||||
ZOOM_PRECISION,
|
||||
ZoomSettingsObserved,
|
||||
type PartialZoomSettings,
|
||||
type ZoomSettingsObserved,
|
||||
} from './types';
|
||||
|
||||
export class ZoomController {
|
||||
|
||||
@@ -1,8 +1,8 @@
|
||||
import { ViewContext } from 'view';
|
||||
import type { ViewContext } from 'view';
|
||||
|
||||
import { MergeContextViewModifier } from '../../card-controller/view/modifiers/merge-context.js';
|
||||
import { ViewManagerInterface } from '../../card-controller/view/types.js';
|
||||
import { PartialZoomSettings, ZoomSettingsObserved } from './types.js';
|
||||
import type { ViewManagerInterface } from '../../card-controller/view/types.js';
|
||||
import type { PartialZoomSettings, ZoomSettingsObserved } from './types.js';
|
||||
|
||||
interface ZoomViewContext {
|
||||
observed?: ZoomSettingsObserved;
|
||||
|
||||
Reference in New Issue
Block a user