mirror of
https://github.com/jellyfin/jellyfin-web
synced 2025-03-30 19:56:21 +00:00
Update typing for currentApiClient
This commit is contained in:
parent
d297f23932
commit
72dab5381d
3 changed files with 6 additions and 7 deletions
|
@ -1,7 +1,6 @@
|
||||||
import { Api } from '@jellyfin/sdk';
|
import { Api } from '@jellyfin/sdk';
|
||||||
import { UserDto } from '@jellyfin/sdk/lib/generated-client/models/user-dto';
|
import { UserDto } from '@jellyfin/sdk/lib/generated-client/models/user-dto';
|
||||||
import { History } from '@remix-run/router';
|
import { History } from '@remix-run/router';
|
||||||
import { ApiClient, ConnectionManager } from 'jellyfin-apiclient';
|
|
||||||
import React, { useEffect, useState } from 'react';
|
import React, { useEffect, useState } from 'react';
|
||||||
|
|
||||||
import { HistoryRouter } from './components/HistoryRouter';
|
import { HistoryRouter } from './components/HistoryRouter';
|
||||||
|
@ -12,11 +11,7 @@ import AppRoutes from './routes/index';
|
||||||
import events from './utils/events';
|
import events from './utils/events';
|
||||||
import { toApi } from './utils/sdk';
|
import { toApi } from './utils/sdk';
|
||||||
|
|
||||||
interface ServerConnections extends ConnectionManager {
|
const App = ({ history, connections }: { history: History, connections: typeof ServerConnections }) => {
|
||||||
currentApiClient: () => ApiClient
|
|
||||||
}
|
|
||||||
|
|
||||||
const App = ({ history, connections }: { history: History, connections: ServerConnections }) => {
|
|
||||||
const [ api, setApi ] = useState<Api | undefined>(toApi(connections.currentApiClient()));
|
const [ api, setApi ] = useState<Api | undefined>(toApi(connections.currentApiClient()));
|
||||||
const [ user, setUser ] = useState<UserDto | undefined>();
|
const [ user, setUser ] = useState<UserDto | undefined>();
|
||||||
|
|
||||||
|
|
|
@ -129,7 +129,7 @@ const ConnectionRequired: FunctionComponent<ConnectionRequiredProps> = ({
|
||||||
if (isAdminRequired) {
|
if (isAdminRequired) {
|
||||||
try {
|
try {
|
||||||
const user = await client.getCurrentUser();
|
const user = await client.getCurrentUser();
|
||||||
if (!user.Policy.IsAdministrator) {
|
if (!user.Policy?.IsAdministrator) {
|
||||||
console.warn('[ConnectionRequired] normal user attempted to access admin route');
|
console.warn('[ConnectionRequired] normal user attempted to access admin route');
|
||||||
bounce(await ServerConnections.connect());
|
bounce(await ServerConnections.connect());
|
||||||
return;
|
return;
|
||||||
|
|
|
@ -86,6 +86,10 @@ class ServerConnections extends ConnectionManager {
|
||||||
return this.localApiClient;
|
return this.localApiClient;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Gets the ApiClient that is currently connected.
|
||||||
|
* @returns {ApiClient} apiClient
|
||||||
|
*/
|
||||||
currentApiClient() {
|
currentApiClient() {
|
||||||
let apiClient = this.getLocalApiClient();
|
let apiClient = this.getLocalApiClient();
|
||||||
|
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue