Skip to content

Commit 13164fb

Browse files
authored
chore: Fix @typescript-eslint/no-non-null-asserted-optional-chain' (#4427)
* fix * throw exceptions
1 parent 3dd45a8 commit 13164fb

File tree

3 files changed

+18
-5
lines changed

3 files changed

+18
-5
lines changed

eslint.config.ts

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -52,7 +52,6 @@ export default defineConfig(
5252
},
5353
],
5454
'@typescript-eslint/no-empty-object-type': 'off',
55-
'@typescript-eslint/no-non-null-asserted-optional-chain': 'warn',
5655
'@typescript-eslint/no-unsafe-function-type': 'warn',
5756
'@typescript-eslint/no-unused-expressions': 'warn',
5857
'@typescript-eslint/ban-ts-comment': 'error',

src/components/Clusters/shared.ts

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -114,7 +114,8 @@ export function getUserIndex(kubeconfig?: Kubeconfig) {
114114
contextName === '-all-'
115115
? kubeconfig?.contexts?.[0]?.context
116116
: kubeconfig?.contexts?.find((c) => c?.name === contextName)?.context;
117-
const index = kubeconfig?.users?.findIndex((u) => u?.name === context?.user)!;
117+
const index =
118+
kubeconfig?.users?.findIndex((u) => u?.name === context?.user) || -1;
118119
return index > 0 ? index : 0;
119120
}
120121

src/state/authDataAtom.ts

Lines changed: 16 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -37,6 +37,19 @@ type handleLoginProps = {
3737
onError: () => void;
3838
};
3939

40+
function getToken(user: User | null, useAccessToken: boolean): string {
41+
if (!user) {
42+
throw new Error('user is null');
43+
}
44+
if (useAccessToken) {
45+
return user.access_token;
46+
}
47+
if (user.id_token) {
48+
return user.id_token;
49+
}
50+
throw new Error('id_token is empty');
51+
}
52+
4053
export function createUserManager(
4154
oidcParams: {
4255
issuerUrl: string;
@@ -75,7 +88,7 @@ async function handleLogin({
7588
userManager.events.addAccessTokenExpiring(async () => {
7689
const user = await userManager.signinSilent();
7790
setAuth({
78-
token: useAccessToken ? user?.access_token! : user?.id_token!,
91+
token: getToken(user, useAccessToken),
7992
});
8093
});
8194
userManager.events.addSilentRenewError((e) => {
@@ -95,7 +108,7 @@ async function handleLogin({
95108
if (!!user?.expired || (user?.expires_in && user?.expires_in <= 2)) {
96109
user = await userManager.signinSilent();
97110
setAuth({
98-
token: useAccessToken ? user?.access_token! : user?.id_token!,
111+
token: getToken(user, useAccessToken),
99112
});
100113
}
101114
}
@@ -113,7 +126,7 @@ async function handleLogin({
113126
storedUser && !storedUser.expired
114127
? storedUser
115128
: await userManager.signinRedirectCallback(window.location.href);
116-
setAuth({ token: useAccessToken ? user?.access_token : user?.id_token! });
129+
setAuth({ token: getToken(user, useAccessToken) });
117130
setupAuthEventsHooks(userManager, useAccessToken);
118131
setupVisibilityEventsHooks(userManager, user, useAccessToken);
119132
onAfterLogin();

0 commit comments

Comments
 (0)