diff --git a/src/components/gallery.ts b/src/components/gallery.ts index c73cfb1e..b283b3a3 100644 --- a/src/components/gallery.ts +++ b/src/components/gallery.ts @@ -27,13 +27,13 @@ import { View } from '../view/view.js'; import { renderProgressIndicator } from './message.js'; import './thumbnail.js'; import { THUMBNAIL_DETAILS_WIDTH_MIN } from './thumbnail.js'; -import { createRef, ref, Ref } from 'lit/directives/ref.js'; +import { createRef, Ref } from 'lit/directives/ref.js'; import { MediaQueriesClassifier } from '../view/media-queries-classifier'; import { EventMediaQueries, RecordingMediaQueries } from '../view/media-queries'; import { EventQuery, MediaQuery, RecordingQuery } from '../camera/types'; import { MediaQueriesResults } from '../view/media-queries-results'; import { errorToConsole } from '../utils/basic'; -import "./media-filter"; +import './media-filter'; const GALLERY_MEDIA_CHUNK_SIZE = 100; @@ -105,10 +105,10 @@ export class FrigateCardGallery extends LitElement { return html` @@ -163,6 +164,9 @@ export class FrigateCardGalleryCore extends LitElement { @property({ attribute: false }) public cameraManager?: CameraManager; + @property({ attribute: false }) + public cardWideConfig?: CardWideConfig; + protected _intersectionObserver: IntersectionObserver; protected _resizeObserver: ResizeObserver; protected _refLoader: Ref = createRef(); @@ -345,9 +349,10 @@ export class FrigateCardGalleryCore extends LitElement { `, )} ${this._showExtensionLoader - ? html` - - ` + ? html`${renderProgressIndicator({ + cardWideConfig: this.cardWideConfig, + componentRef: this._refLoader, + })}` : ''} `; } diff --git a/src/components/message.ts b/src/components/message.ts index a2687d04..66ffd686 100644 --- a/src/components/message.ts +++ b/src/components/message.ts @@ -1,6 +1,7 @@ import { CSSResultGroup, html, LitElement, TemplateResult, unsafeCSS } from 'lit'; import { customElement, property } from 'lit/decorators.js'; import { classMap } from 'lit/directives/class-map.js'; +import { ref, Ref } from 'lit/directives/ref.js'; import { TROUBLESHOOTING_URL } from '../const.js'; import { localize } from '../localize/localize.js'; import messageStyle from '../scss/message.scss'; @@ -118,9 +119,11 @@ export function renderMessage(message: Message): TemplateResult { export function renderProgressIndicator(options?: { message?: string; cardWideConfig?: CardWideConfig; + componentRef?: Ref, }): TemplateResult { return html`