* re-namespace * optimize usings * more usings * more of the same * more implicit/global usings * cleanup all usings * minor fixes
30 lines
958 B
Plaintext
30 lines
958 B
Plaintext
@page "/media/sources/emby"
|
|
@using ErsatzTV.Core.Interfaces.Emby
|
|
@using ErsatzTV.Application.Emby
|
|
@implements IDisposable
|
|
@inject IEmbySecretStore _embySecretStore
|
|
@inject ChannelWriter<IEmbyBackgroundServiceRequest> _channel
|
|
|
|
<RemoteMediaSources
|
|
TViewModel="ErsatzTV.Application.Emby.EmbyMediaSourceViewModel"
|
|
TSecrets="ErsatzTV.Core.Emby.EmbySecrets"
|
|
TMediaSource="EmbyMediaSource"
|
|
Name="Emby"
|
|
GetAllMediaSourcesCommand="@(new GetAllEmbyMediaSources())"
|
|
DisconnectCommand="@(new DisconnectEmby())"
|
|
RefreshLibrariesCommand="@(mediaSourceId => RefreshLibraries(mediaSourceId))"
|
|
SecretStore="@_embySecretStore"/>
|
|
|
|
@code {
|
|
private readonly CancellationTokenSource _cts = new();
|
|
|
|
public void Dispose()
|
|
{
|
|
_cts.Cancel();
|
|
_cts.Dispose();
|
|
}
|
|
|
|
private async Task RefreshLibraries(int mediaSourceId) =>
|
|
await _channel.WriteAsync(new SynchronizeEmbyLibraries(mediaSourceId), _cts.Token);
|
|
|
|
} |