Skip to content

Commit a1ff7a2

Browse files
authored
fix(Content): do not request whoami if auth is in progress (#2727)
1 parent a049065 commit a1ff7a2

File tree

2 files changed

+14
-4
lines changed

2 files changed

+14
-4
lines changed

src/containers/App/Content.tsx

Lines changed: 13 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -14,7 +14,6 @@ import routes from '../../routes';
1414
import type {RootState} from '../../store';
1515
import {authenticationApi} from '../../store/reducers/authentication/authentication';
1616
import {
17-
useCapabilitiesLoaded,
1817
useCapabilitiesQuery,
1918
useClusterWithoutAuthInUI,
2019
useMetaCapabilitiesLoaded,
@@ -24,6 +23,7 @@ import {nodesListApi} from '../../store/reducers/nodesList';
2423
import {cn} from '../../utils/cn';
2524
import {useDatabaseFromQuery} from '../../utils/hooks/useDatabaseFromQuery';
2625
import {lazyComponent} from '../../utils/lazyComponent';
26+
import {isAccessError, isRedirectToAuth} from '../../utils/response';
2727
import Authentication from '../Authentication/Authentication';
2828
import {getClusterPath} from '../Cluster/utils';
2929
import Header from '../Header/Header';
@@ -207,13 +207,23 @@ function GetNodesList() {
207207
}
208208

209209
function GetCapabilities({children}: {children: React.ReactNode}) {
210-
useCapabilitiesQuery();
211-
const capabilitiesLoaded = useCapabilitiesLoaded();
210+
const {data, error} = useCapabilitiesQuery();
212211

213212
useMetaCapabilitiesQuery();
214213
// It is always true if there is no meta, since request finishes with an error
215214
const metaCapabilitiesLoaded = useMetaCapabilitiesLoaded();
216215

216+
//do nothing, authentication is in progress upon redirect
217+
if (isRedirectToAuth(error)) {
218+
return null;
219+
}
220+
221+
if (isAccessError(error)) {
222+
return <AccessDenied />;
223+
}
224+
225+
const capabilitiesLoaded = Boolean(data || error);
226+
217227
return (
218228
<LoaderWrapper loading={!capabilitiesLoaded || !metaCapabilitiesLoaded} size="l">
219229
{children}

src/store/reducers/capabilities/hooks.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -16,7 +16,7 @@ import {
1616
export function useCapabilitiesQuery() {
1717
const database = useDatabaseFromQuery();
1818

19-
capabilitiesApi.useGetClusterCapabilitiesQuery({database});
19+
return capabilitiesApi.useGetClusterCapabilitiesQuery({database});
2020
}
2121

2222
export function useCapabilitiesLoaded() {

0 commit comments

Comments
 (0)