![]() Server : Apache/2 System : Linux server-15-235-50-60 5.15.0-164-generic #174-Ubuntu SMP Fri Nov 14 20:25:16 UTC 2025 x86_64 User : gositeme ( 1004) PHP Version : 8.2.29 Disable Function : exec,system,passthru,shell_exec,proc_close,proc_open,dl,popen,show_source,posix_kill,posix_mkfifo,posix_getpwuid,posix_setpgid,posix_setsid,posix_setuid,posix_setgid,posix_seteuid,posix_setegid,posix_uname Directory : /home/gositeme/domains/lavocat.quebec/private_html/node_modules/next-auth/src/providers/ |
import type { OAuthConfig, OAuthUserConfig } from "."
export interface WorkOSProfile extends Record<string, any> {
object: string
id: string
organization_id: string
connection_id: string
connection_type: string
idp_id: string
email: string
first_name: string
last_name: string
raw_attributes: {
id: string
email: string
lastName: string
firstName: string
picture: string
}
}
export default function WorkOS<P extends WorkOSProfile>(
options: OAuthUserConfig<P>
): OAuthConfig<P> {
const { issuer = "https://api.workos.com/" } = options
return {
id: "workos",
name: "WorkOS",
type: "oauth",
authorization: `${issuer}sso/authorize`,
token: {
url: `${issuer}sso/token`,
},
client: {
token_endpoint_auth_method: "client_secret_post",
},
userinfo: `${issuer}sso/profile`,
profile(profile) {
return {
id: profile.id,
name: `${profile.first_name} ${profile.last_name}`,
email: profile.email,
image: profile.raw_attributes.picture ?? null,
}
},
style: { logo: "/workos.svg", bg: "#6363f1", text: "#fff" },
options,
}
}