mirror of
https://github.com/sourcebot-dev/sourcebot.git
synced 2025-12-12 12:25:22 +00:00
properly handle emails for github app auth case
This commit is contained in:
parent
5b09757e92
commit
fa8e0d294f
2 changed files with 14 additions and 16 deletions
|
|
@ -73,19 +73,24 @@ export const SettingsDropdown = ({
|
||||||
<Settings className="h-4 w-4" />
|
<Settings className="h-4 w-4" />
|
||||||
</Button>
|
</Button>
|
||||||
</DropdownMenuTrigger>
|
</DropdownMenuTrigger>
|
||||||
<DropdownMenuContent className="w-64">
|
<DropdownMenuContent className="w-64" align="end" sideOffset={5}>
|
||||||
{session?.user ? (
|
{session?.user ? (
|
||||||
<DropdownMenuGroup>
|
<DropdownMenuGroup>
|
||||||
<div className="flex flex-row items-start gap-3 p-2">
|
<div className="flex flex-row items-center gap-3 px-3 py-3">
|
||||||
<Avatar className="flex-shrink-0">
|
<Avatar className="h-10 w-10 flex-shrink-0">
|
||||||
<AvatarImage
|
<AvatarImage
|
||||||
src={session.user.image ?? ""}
|
src={session.user.image ?? ""}
|
||||||
/>
|
/>
|
||||||
<AvatarFallback>
|
<AvatarFallback className="bg-primary/10 text-primary font-semibold">
|
||||||
{session.user.name && session.user.name.length > 0 ? session.user.name[0] : 'U'}
|
{session.user.name && session.user.name.length > 0 ? session.user.name[0].toUpperCase() : 'U'}
|
||||||
</AvatarFallback>
|
</AvatarFallback>
|
||||||
</Avatar>
|
</Avatar>
|
||||||
<p className="text-sm font-medium break-all flex-1 leading-relaxed">{session.user.email ?? "User"}</p>
|
<div className="flex flex-col flex-1 min-w-0">
|
||||||
|
<p className="text-sm font-semibold truncate">{session.user.name ?? "User"}</p>
|
||||||
|
{session.user.email && (
|
||||||
|
<p className="text-xs text-muted-foreground truncate">{session.user.email}</p>
|
||||||
|
)}
|
||||||
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<DropdownMenuItem
|
<DropdownMenuItem
|
||||||
onClick={() => {
|
onClick={() => {
|
||||||
|
|
|
||||||
|
|
@ -20,13 +20,13 @@ export const getSSOProviders = (): Provider[] => {
|
||||||
const providers: Provider[] = [];
|
const providers: Provider[] = [];
|
||||||
|
|
||||||
if (env.AUTH_EE_GITHUB_CLIENT_ID && env.AUTH_EE_GITHUB_CLIENT_SECRET) {
|
if (env.AUTH_EE_GITHUB_CLIENT_ID && env.AUTH_EE_GITHUB_CLIENT_SECRET) {
|
||||||
const baseUrl = env.AUTH_EE_GITHUB_BASE_URL ?? "https://github.com";
|
|
||||||
const apiUrl = env.AUTH_EE_GITHUB_BASE_URL ? `${env.AUTH_EE_GITHUB_BASE_URL}/api/v3` : "https://api.github.com";
|
|
||||||
providers.push(GitHub({
|
providers.push(GitHub({
|
||||||
clientId: env.AUTH_EE_GITHUB_CLIENT_ID,
|
clientId: env.AUTH_EE_GITHUB_CLIENT_ID,
|
||||||
clientSecret: env.AUTH_EE_GITHUB_CLIENT_SECRET,
|
clientSecret: env.AUTH_EE_GITHUB_CLIENT_SECRET,
|
||||||
|
enterprise: {
|
||||||
|
baseUrl: env.AUTH_EE_GITHUB_BASE_URL,
|
||||||
|
},
|
||||||
authorization: {
|
authorization: {
|
||||||
url: `${baseUrl}/login/oauth/authorize`,
|
|
||||||
params: {
|
params: {
|
||||||
scope: [
|
scope: [
|
||||||
'read:user',
|
'read:user',
|
||||||
|
|
@ -41,14 +41,7 @@ export const getSSOProviders = (): Provider[] => {
|
||||||
].join(' '),
|
].join(' '),
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
token: {
|
|
||||||
url: `${baseUrl}/login/oauth/access_token`,
|
|
||||||
},
|
|
||||||
userinfo: {
|
|
||||||
url: `${apiUrl}/user`,
|
|
||||||
},
|
|
||||||
}));
|
}));
|
||||||
}
|
|
||||||
|
|
||||||
if (env.AUTH_EE_GITLAB_CLIENT_ID && env.AUTH_EE_GITLAB_CLIENT_SECRET) {
|
if (env.AUTH_EE_GITLAB_CLIENT_ID && env.AUTH_EE_GITLAB_CLIENT_SECRET) {
|
||||||
providers.push(Gitlab({
|
providers.push(Gitlab({
|
||||||
|
|
|
||||||
Loading…
Reference in a new issue