fix: oidc login
This commit is contained in:
@@ -97,6 +97,7 @@ const baseQueryWithTokenCheck = async (args, api, extraOptions) => {
|
||||
}
|
||||
break;
|
||||
case 500:
|
||||
case 503:
|
||||
{
|
||||
toast.error(result.error.data || "Server Error");
|
||||
}
|
||||
|
||||
@@ -21,9 +21,9 @@ const OidcLoginEntry: FC<{ issuer: OIDCConfig }> = ({ issuer }) => {
|
||||
}, [data, isSuccess]);
|
||||
|
||||
return (
|
||||
<StyledSocialButton disabled={isLoading} onClick={handleSolidLogin}>
|
||||
{Boolean(issuer.favicon) && <img src={issuer.favicon} className="icon" alt="icon" />}
|
||||
Login with {issuer.domain}
|
||||
<StyledSocialButton disabled={isLoading || isSuccess} onClick={handleSolidLogin}>
|
||||
{!!issuer.favicon && <img src={issuer.favicon} className="icon" alt="icon" />}
|
||||
{isLoading ? `Loading...` : `Login with ${issuer.domain}`}
|
||||
</StyledSocialButton>
|
||||
);
|
||||
};
|
||||
|
||||
@@ -31,26 +31,18 @@ export default function LoginPage() {
|
||||
|
||||
useEffect(() => {
|
||||
const query = new URLSearchParams(location.search);
|
||||
// const githubCode = query.get("gcode");
|
||||
const oauth = query.get("oauth");
|
||||
const code = query.get("code");
|
||||
const state = query.get("state");
|
||||
const magic_token = query.get("magic_token");
|
||||
const exists = query.get("exists");
|
||||
if (oauth) {
|
||||
switch (oauth) {
|
||||
case "oidc":
|
||||
if (code && state) {
|
||||
login({
|
||||
code,
|
||||
state,
|
||||
type: "oidc"
|
||||
});
|
||||
}
|
||||
break;
|
||||
default:
|
||||
break;
|
||||
}
|
||||
// oidc
|
||||
const fromOIDC = code && state;
|
||||
if (fromOIDC) {
|
||||
login({
|
||||
code,
|
||||
state,
|
||||
type: "oidc"
|
||||
});
|
||||
}
|
||||
// magic link
|
||||
if (magic_token && typeof exists !== "undefined") {
|
||||
|
||||
Reference in New Issue
Block a user