mirror of
https://github.com/swissmakers/swiss-datashare.git
synced 2026-04-17 04:33:15 +02:00
30 lines
640 B
TypeScript
30 lines
640 B
TypeScript
|
|
import {
|
||
|
|
SiDiscord,
|
||
|
|
SiGithub,
|
||
|
|
SiGoogle,
|
||
|
|
SiMicrosoft,
|
||
|
|
SiOpenid,
|
||
|
|
} from "react-icons/si";
|
||
|
|
import React from "react";
|
||
|
|
import api from "../services/api.service";
|
||
|
|
|
||
|
|
const getOAuthUrl = (appUrl: string, provider: string) => {
|
||
|
|
return `${appUrl}/api/oauth/auth/${provider}`;
|
||
|
|
};
|
||
|
|
|
||
|
|
const getOAuthIcon = (provider: string) => {
|
||
|
|
return {
|
||
|
|
google: <SiGoogle />,
|
||
|
|
microsoft: <SiMicrosoft />,
|
||
|
|
github: <SiGithub />,
|
||
|
|
discord: <SiDiscord />,
|
||
|
|
oidc: <SiOpenid />,
|
||
|
|
}[provider];
|
||
|
|
};
|
||
|
|
|
||
|
|
const unlinkOAuth = (provider: string) => {
|
||
|
|
return api.post(`/oauth/unlink/${provider}`);
|
||
|
|
};
|
||
|
|
|
||
|
|
export { getOAuthUrl, getOAuthIcon, unlinkOAuth };
|