Edit: /tmp/tsx-0/17887-21aaac8077bb60f62b7e9cfcbdb4fc41cf09b4ca (58262B)
{"code":"__filename=\"/opt/canhelp/node_modules/better-auth/dist/plugins/oidc-provider/index.mjs\";(()=>{\nvar __create=Object.create;var __defProp=Object.defineProperty;var __getOwnPropDesc=Object.getOwnPropertyDescriptor;var __getOwnPropNames=Object.getOwnPropertyNames;var __getProtoOf=Object.getPrototypeOf;var __hasOwnProp=Object.prototype.hasOwnProperty;var __name=(target,value)=>__defProp(target,\"name\",{value,configurable:true});var __export=(target,all)=>{for(var name in all)__defProp(target,name,{get:all[name],enumerable:true})};var __copyProps=(to,from,except,desc)=>{if(from&&typeof from===\"object\"||typeof from===\"function\"){for(let key of __getOwnPropNames(from))if(!__hasOwnProp.call(to,key)&&key!==except)__defProp(to,key,{get:()=>from[key],enumerable:!(desc=__getOwnPropDesc(from,key))||desc.enumerable})}return to};var __toESM=(mod,isNodeMode,target)=>(target=mod!=null?__create(__getProtoOf(mod)):{},__copyProps(isNodeMode||!mod||!mod.__esModule?__defProp(target,\"default\",{value:mod,enumerable:true}):target,mod));var __toCommonJS=mod=>__copyProps(__defProp({},\"__esModule\",{value:true}),mod);var oidc_provider_exports={};__export(oidc_provider_exports,{getClient:()=>getClient,getMetadata:()=>getMetadata,oidcProvider:()=>oidcProvider});module.exports=__toCommonJS(oidc_provider_exports);var import_schema=require(\"../../db/schema.mjs\");var import_db=require(\"../../db/index.mjs\");var import_random=require(\"../../crypto/random.mjs\");var import_crypto=require(\"../../crypto/index.mjs\");var import_cookie_utils=require(\"../../cookies/cookie-utils.mjs\");var import_cookies=require(\"../../cookies/index.mjs\");var import_session=require(\"../../api/routes/session.mjs\");var import_hide_metadata=require(\"../../utils/hide-metadata.mjs\");var import_utils=require(\"../../utils/index.mjs\");var import_api=require(\"../../api/index.mjs\");var import_sign=require(\"../jwt/sign.mjs\");var import_verify=require(\"../jwt/verify.mjs\");var import_jwt=require(\"../jwt/index.mjs\");var import_prompt=require(\"./utils/prompt.mjs\");var import_authorize=require(\"./authorize.mjs\");var import_schema2=require(\"./schema.mjs\");var import_utils2=require(\"./utils.mjs\");var import_context=require(\"@better-auth/core/context\");var import_api2=require(\"@better-auth/core/api\");var z=__toESM(require(\"zod\"));var import_base64=require(\"@better-auth/utils/base64\");var import_hash=require(\"@better-auth/utils/hash\");var import_jose=require(\"jose\");async function getClient(clientId,trustedClients=[]){const{context:{adapter}}=await(0,import_context.getCurrentAuthContext)();const trustedClient=trustedClients.find(client=>client.clientId===clientId);if(trustedClient)return trustedClient;return adapter.findOne({model:\"oauthApplication\",where:[{field:\"clientId\",value:clientId}]}).then(res=>{if(!res)return null;return{clientId:res.clientId,clientSecret:res.clientSecret,type:res.type,name:res.name,icon:res.icon,disabled:res.disabled,redirectUrls:(res.redirectUrls??\"\").split(\",\"),metadata:res.metadata?JSON.parse(res.metadata):{}}})}__name(getClient,\"getClient\");const getMetadata=__name((ctx,options)=>{const jwtPlugin=ctx.context.getPlugin(\"jwt\");const issuer=jwtPlugin&&jwtPlugin.options?.jwt&&jwtPlugin.options.jwt.issuer?jwtPlugin.options.jwt.issuer:ctx.context.options.baseURL;const baseURL=ctx.context.baseURL;const supportedAlgs=options?.useJWTPlugin?[\"RS256\",\"EdDSA\",\"none\"]:[\"HS256\",\"none\"];return{issuer,authorization_endpoint:`${baseURL}/oauth2/authorize`,token_endpoint:`${baseURL}/oauth2/token`,userinfo_endpoint:`${baseURL}/oauth2/userinfo`,jwks_uri:`${baseURL}/jwks`,registration_endpoint:`${baseURL}/oauth2/register`,end_session_endpoint:`${baseURL}/oauth2/endsession`,scopes_supported:[\"openid\",\"profile\",\"email\",\"offline_access\"],response_types_supported:[\"code\"],response_modes_supported:[\"query\"],grant_types_supported:[\"authorization_code\",\"refresh_token\"],acr_values_supported:[\"urn:mace:incommon:iap:silver\",\"urn:mace:incommon:iap:bronze\"],subject_types_supported:[\"public\"],id_token_signing_alg_values_supported:supportedAlgs,token_endpoint_auth_methods_supported:[\"client_secret_basic\",\"client_secret_post\",\"none\"],code_challenge_methods_supported:[\"S256\"],claims_supported:[\"sub\",\"iss\",\"aud\",\"exp\",\"nbf\",\"iat\",\"jti\",\"email\",\"email_verified\",\"name\"],...options?.metadata}},\"getMetadata\");const oAuthConsentBodySchema=z.object({accept:z.boolean(),consent_code:z.string().optional().nullish()});const oAuth2TokenBodySchema=z.record(z.any(),z.any());const registerOAuthApplicationBodySchema=z.object({redirect_uris:z.array(z.string()).meta({description:'A list of redirect URIs. Eg: [\"https://client.example.com/callback\"]'}),token_endpoint_auth_method:z.enum([\"none\",\"client_secret_basic\",\"client_secret_post\"]).meta({description:'The authentication method for the token endpoint. Eg: \"client_secret_basic\"'}).default(\"client_secret_basic\").optional(),grant_types:z.array(z.enum([\"authorization_code\",\"implicit\",\"password\",\"client_credentials\",\"refresh_token\",\"urn:ietf:params:oauth:grant-type:jwt-bearer\",\"urn:ietf:params:oauth:grant-type:saml2-bearer\"])).meta({description:'The grant types supported by the application. Eg: [\"authorization_code\"]'}).default([\"authorization_code\"]).optional(),response_types:z.array(z.enum([\"code\",\"token\"])).meta({description:'The response types supported by the application. Eg: [\"code\"]'}).default([\"code\"]).optional(),client_name:z.string().meta({description:'The name of the application. Eg: \"My App\"'}).optional(),client_uri:z.string().meta({description:'The URI of the application. Eg: \"https://client.example.com\"'}).optional(),logo_uri:z.string().meta({description:'The URI of the application logo. Eg: \"https://client.example.com/logo.png\"'}).optional(),scope:z.string().meta({description:'The scopes supported by the application. Separated by spaces. Eg: \"profile email\"'}).optional(),contacts:z.array(z.string()).meta({description:'The contact information for the application. Eg: [\"admin@example.com\"]'}).optional(),tos_uri:z.string().meta({description:'The URI of the application terms of service. Eg: \"https://client.example.com/tos\"'}).optional(),policy_uri:z.string().meta({description:'The URI of the application privacy policy. Eg: \"https://client.example.com/policy\"'}).optional(),jwks_uri:z.string().meta({description:'The URI of the application JWKS. Eg: \"https://client.example.com/jwks\"'}).optional(),jwks:z.record(z.any(),z.any()).meta({description:'The JWKS of the application. Eg: {\"keys\": [{\"kty\": \"RSA\", \"alg\": \"RS256\", \"use\": \"sig\", \"n\": \"...\", \"e\": \"...\"}]}'}).optional(),metadata:z.record(z.any(),z.any()).meta({description:'The metadata of the application. Eg: {\"key\": \"value\"}'}).optional(),software_id:z.string().meta({description:'The software ID of the application. Eg: \"my-software\"'}).optional(),software_version:z.string().meta({description:'The software version of the application. Eg: \"1.0.0\"'}).optional(),software_statement:z.string().meta({description:\"The software statement of the application.\"}).optional()});const DEFAULT_CODE_EXPIRES_IN=600;const DEFAULT_ACCESS_TOKEN_EXPIRES_IN=3600;const DEFAULT_REFRESH_TOKEN_EXPIRES_IN=604800;const oidcProvider=__name(options=>{const modelName={oauthClient:\"oauthApplication\",oauthAccessToken:\"oauthAccessToken\",oauthConsent:\"oauthConsent\"};const opts={codeExpiresIn:DEFAULT_CODE_EXPIRES_IN,defaultScope:\"openid\",accessTokenExpiresIn:DEFAULT_ACCESS_TOKEN_EXPIRES_IN,refreshTokenExpiresIn:DEFAULT_REFRESH_TOKEN_EXPIRES_IN,allowPlainCodeChallengeMethod:true,storeClientSecret:\"plain\",...options,scopes:[\"openid\",\"profile\",\"email\",\"offline_access\",...options?.scopes||[]]};const trustedClients=options.trustedClients||[];async function storeClientSecret(ctx,clientSecret){if(opts.storeClientSecret===\"encrypted\")return await(0,import_crypto.symmetricEncrypt)({key:ctx.context.secretConfig,data:clientSecret});if(opts.storeClientSecret===\"hashed\")return await(0,import_utils2.defaultClientSecretHasher)(clientSecret);if(typeof opts.storeClientSecret===\"object\"&&\"hash\"in opts.storeClientSecret)return await opts.storeClientSecret.hash(clientSecret);if(typeof opts.storeClientSecret===\"object\"&&\"encrypt\"in opts.storeClientSecret)return await opts.storeClientSecret.encrypt(clientSecret);return clientSecret}__name(storeClientSecret,\"storeClientSecret\");async function verifyStoredClientSecret(ctx,storedClientSecret,clientSecret){if(opts.storeClientSecret===\"encrypted\")return await(0,import_crypto.symmetricDecrypt)({key:ctx.context.secretConfig,data:storedClientSecret})===clientSecret;if(opts.storeClientSecret===\"hashed\")return await(0,import_utils2.defaultClientSecretHasher)(clientSecret)===storedClientSecret;if(typeof opts.storeClientSecret===\"object\"&&\"hash\"in opts.storeClientSecret)return await opts.storeClientSecret.hash(clientSecret)===storedClientSecret;if(typeof opts.storeClientSecret===\"object\"&&\"decrypt\"in opts.storeClientSecret)return await opts.storeClientSecret.decrypt(storedClientSecret)===clientSecret;return clientSecret===storedClientSecret}__name(verifyStoredClientSecret,\"verifyStoredClientSecret\");return{id:\"oidc-provider\",hooks:{after:[{matcher(){return true},handler:(0,import_api2.createAuthMiddleware)(async ctx=>{const loginPromptCookie=await ctx.getSignedCookie(\"oidc_login_prompt\",ctx.context.secret);const cookieName=ctx.context.authCookies.sessionToken.name;const parsedSetCookieHeader=(0,import_cookie_utils.parseSetCookieHeader)(ctx.context.responseHeaders?.get(\"set-cookie\")||\"\");const hasSessionToken=parsedSetCookieHeader.has(cookieName);if(!loginPromptCookie||!hasSessionToken)return;(0,import_cookies.expireCookie)(ctx,{name:\"oidc_login_prompt\",attributes:{path:\"/\"}});const sessionToken=parsedSetCookieHeader.get(cookieName)?.value?.split(\".\")[0];if(!sessionToken)return;const session=await ctx.context.internalAdapter.findSession(sessionToken)||ctx.context.newSession;if(!session)return;ctx.query=JSON.parse(loginPromptCookie);const promptSet=(0,import_prompt.parsePrompt)(String(ctx.query?.prompt));if(promptSet.has(\"login\")){const newPromptSet=new Set(promptSet);newPromptSet.delete(\"login\");ctx.query={...ctx.query,prompt:Array.from(newPromptSet).join(\" \")}}ctx.context.session=session;return await(0,import_authorize.authorize)(ctx,opts)})}]},endpoints:{getOpenIdConfig:(0,import_api2.createAuthEndpoint)(\"/.well-known/openid-configuration\",{method:\"GET\",operationId:\"getOpenIdConfig\",metadata:import_hide_metadata.HIDE_METADATA},async ctx=>{const metadata=getMetadata(ctx,options);return ctx.json(metadata)}),oAuth2authorize:(0,import_api2.createAuthEndpoint)(\"/oauth2/authorize\",{method:\"GET\",operationId:\"oauth2Authorize\",query:z.record(z.string(),z.any()),metadata:{openapi:{description:\"Authorize an OAuth2 request\",responses:{\"200\":{description:\"Authorization response generated successfully\",content:{\"application/json\":{schema:{type:\"object\",additionalProperties:true,description:\"Authorization response, contents depend on the authorize function implementation\"}}}}}}}},async ctx=>{return(0,import_authorize.authorize)(ctx,opts)}),oAuthConsent:(0,import_api2.createAuthEndpoint)(\"/oauth2/consent\",{method:\"POST\",operationId:\"oauth2Consent\",body:oAuthConsentBodySchema,use:[import_session.sessionMiddleware],metadata:{openapi:{description:\"Handle OAuth2 consent. Supports both URL parameter-based flows (consent_code in body) and cookie-based flows (signed cookie).\",requestBody:{required:true,content:{\"application/json\":{schema:{type:\"object\",properties:{accept:{type:\"boolean\",description:\"Whether the user accepts or denies the consent request\"},consent_code:{type:\"string\",description:\"The consent code from the authorization request. Optional if using cookie-based flow.\"}},required:[\"accept\"]}}}},responses:{\"200\":{description:\"Consent processed successfully\",content:{\"application/json\":{schema:{type:\"object\",properties:{redirectURI:{type:\"string\",format:\"uri\",description:\"The URI to redirect to, either with an authorization code or an error\"}},required:[\"redirectURI\"]}}}}}}}},async ctx=>{let consentCode=ctx.body.consent_code||null;if(!consentCode){const cookieValue=await ctx.getSignedCookie(\"oidc_consent_prompt\",ctx.context.secret);if(cookieValue)consentCode=cookieValue}if(!consentCode)throw new import_api.APIError(\"UNAUTHORIZED\",{error_description:\"consent_code is required (either in body or cookie)\",error:\"invalid_request\"});const verification=await ctx.context.internalAdapter.findVerificationValue(consentCode);if(!verification)throw new import_api.APIError(\"UNAUTHORIZED\",{error_description:\"Invalid code\",error:\"invalid_request\"});if(verification.expiresAt
{let{body}=ctx;if(!body)throw new import_api.APIError(\"BAD_REQUEST\",{error_description:\"request body not found\",error:\"invalid_request\"});if(body instanceof FormData)body=Object.fromEntries(body.entries());if(!(body instanceof Object))throw new import_api.APIError(\"BAD_REQUEST\",{error_description:\"request body is not an object\",error:\"invalid_request\"});let{client_id,client_secret}=body;const authorization=ctx.request?.headers.get(\"authorization\")||null;if(authorization&&!client_id&&!client_secret&&authorization.startsWith(\"Basic \"))try{const encoded=authorization.replace(\"Basic \",\"\");const decoded=new TextDecoder().decode(import_base64.base64.decode(encoded));if(!decoded.includes(\":\"))throw new import_api.APIError(\"UNAUTHORIZED\",{error_description:\"invalid authorization header format\",error:\"invalid_client\"});const[id,secret]=decoded.split(\":\");if(!id||!secret)throw new import_api.APIError(\"UNAUTHORIZED\",{error_description:\"invalid authorization header format\",error:\"invalid_client\"});client_id=id;client_secret=secret}catch{throw new import_api.APIError(\"UNAUTHORIZED\",{error_description:\"invalid authorization header format\",error:\"invalid_client\"})}const now=Date.now();const iat=Math.floor(now/1e3);const exp=iat+(opts.accessTokenExpiresIn??3600);const accessTokenExpiresAt=new Date(exp*1e3);const refreshTokenExpiresAt=new Date((iat+(opts.refreshTokenExpiresIn??604800))*1e3);const{grant_type,code,redirect_uri,refresh_token,code_verifier}=body;if(grant_type===\"refresh_token\"){if(!refresh_token)throw new import_api.APIError(\"BAD_REQUEST\",{error_description:\"refresh_token is required\",error:\"invalid_request\"});const token=await ctx.context.adapter.findOne({model:modelName.oauthAccessToken,where:[{field:\"refreshToken\",value:refresh_token.toString()}]});if(!token)throw new import_api.APIError(\"UNAUTHORIZED\",{error_description:\"invalid refresh token\",error:\"invalid_grant\"});if(token.clientId!==client_id?.toString())throw new import_api.APIError(\"UNAUTHORIZED\",{error_description:\"invalid client_id\",error:\"invalid_client\"});if(token.refreshTokenExpiresAtuser.id,\"getSubject\"),audience:client_id.toString(),issuer:jwtPlugin.options?.jwt?.issuer??(typeof ctx.context.options.baseURL===\"string\"?ctx.context.options.baseURL:void 0),expirationTime,definePayload:__name(()=>payload,\"definePayload\")}})}else idToken=await new import_jose.SignJWT(payload).setProtectedHeader({alg:\"HS256\"}).setIssuedAt(iat).setExpirationTime(accessTokenExpiresAt).sign(new TextEncoder().encode(client.clientSecret));return ctx.json({access_token:accessToken,token_type:\"Bearer\",expires_in:opts.accessTokenExpiresIn,refresh_token:requestedScopes.includes(\"offline_access\")?refreshToken:void 0,scope:requestedScopes.join(\" \"),id_token:requestedScopes.includes(\"openid\")?idToken:void 0},{headers:{\"Cache-Control\":\"no-store\",Pragma:\"no-cache\"}})}),oAuth2userInfo:(0,import_api2.createAuthEndpoint)(\"/oauth2/userinfo\",{method:\"GET\",operationId:\"oauth2Userinfo\",metadata:{...import_hide_metadata.HIDE_METADATA,openapi:{description:\"Get OAuth2 user information\",responses:{\"200\":{description:\"User information retrieved successfully\",content:{\"application/json\":{schema:{type:\"object\",properties:{sub:{type:\"string\",description:\"Subject identifier (user ID)\"},email:{type:\"string\",format:\"email\",nullable:true,description:\"User's email address, included if 'email' scope is granted\"},name:{type:\"string\",nullable:true,description:\"User's full name, included if 'profile' scope is granted\"},picture:{type:\"string\",format:\"uri\",nullable:true,description:\"User's profile picture URL, included if 'profile' scope is granted\"},given_name:{type:\"string\",nullable:true,description:\"User's given name, included if 'profile' scope is granted\"},family_name:{type:\"string\",nullable:true,description:\"User's family name, included if 'profile' scope is granted\"},email_verified:{type:\"boolean\",nullable:true,description:\"Whether the email is verified, included if 'email' scope is granted\"}},required:[\"sub\"]}}}}}}}},async ctx=>{if(!ctx.request)throw new import_api.APIError(\"UNAUTHORIZED\",{error_description:\"request not found\",error:\"invalid_request\"});const authorization=ctx.request.headers.get(\"authorization\");if(!authorization)throw new import_api.APIError(\"UNAUTHORIZED\",{error_description:\"authorization header not found\",error:\"invalid_request\"});const token=authorization.replace(\"Bearer \",\"\");const accessToken=await ctx.context.adapter.findOne({model:modelName.oauthAccessToken,where:[{field:\"accessToken\",value:token}]});if(!accessToken)throw new import_api.APIError(\"UNAUTHORIZED\",{error_description:\"invalid access token\",error:\"invalid_token\"});if(accessToken.accessTokenExpiresAt{const body=ctx.body;const session=await(0,import_session.getSessionFromCtx)(ctx);if(!session&&!options.allowDynamicClientRegistration)throw new import_api.APIError(\"UNAUTHORIZED\",{error:\"invalid_token\",error_description:\"Authentication required for client registration\"});if((!body.grant_types||body.grant_types.includes(\"authorization_code\")||body.grant_types.includes(\"implicit\"))&&(!body.redirect_uris||body.redirect_uris.length===0))throw new import_api.APIError(\"BAD_REQUEST\",{error:\"invalid_redirect_uri\",error_description:\"Redirect URIs are required for authorization_code and implicit grant types\"});if(body.grant_types&&body.response_types){if(body.grant_types.includes(\"authorization_code\")&&!body.response_types.includes(\"code\"))throw new import_api.APIError(\"BAD_REQUEST\",{error:\"invalid_client_metadata\",error_description:\"When 'authorization_code' grant type is used, 'code' response type must be included\"});if(body.grant_types.includes(\"implicit\")&&!body.response_types.includes(\"token\"))throw new import_api.APIError(\"BAD_REQUEST\",{error:\"invalid_client_metadata\",error_description:\"When 'implicit' grant type is used, 'token' response type must be included\"})}const clientId=options.generateClientId?.()||(0,import_random.generateRandomString)(32,\"a-z\",\"A-Z\");const clientSecret=options.generateClientSecret?.()||(0,import_random.generateRandomString)(32,\"a-z\",\"A-Z\");const storedClientSecret=await storeClientSecret(ctx,clientSecret);const client=await ctx.context.adapter.create({model:modelName.oauthClient,data:{name:body.client_name,icon:body.logo_uri,metadata:body.metadata?JSON.stringify(body.metadata):null,clientId,clientSecret:storedClientSecret,redirectUrls:body.redirect_uris.join(\",\"),type:\"web\",authenticationScheme:body.token_endpoint_auth_method||\"client_secret_basic\",disabled:false,userId:session?.session.userId,createdAt:new Date,updatedAt:new Date}});return ctx.json({client_id:clientId,...client.type!==\"public\"?{client_secret:clientSecret,client_secret_expires_at:0}:{},client_id_issued_at:Math.floor(Date.now()/1e3),client_secret_expires_at:0,redirect_uris:body.redirect_uris,token_endpoint_auth_method:body.token_endpoint_auth_method||\"client_secret_basic\",grant_types:body.grant_types||[\"authorization_code\"],response_types:body.response_types||[\"code\"],client_name:body.client_name,client_uri:body.client_uri,logo_uri:body.logo_uri,scope:body.scope,contacts:body.contacts,tos_uri:body.tos_uri,policy_uri:body.policy_uri,jwks_uri:body.jwks_uri,jwks:body.jwks,software_id:body.software_id,software_version:body.software_version,software_statement:body.software_statement,metadata:body.metadata},{status:201,headers:{\"Cache-Control\":\"no-store\",Pragma:\"no-cache\"}})}),getOAuthClient:(0,import_api2.createAuthEndpoint)(\"/oauth2/client/:id\",{method:\"GET\",use:[import_session.sessionMiddleware],metadata:{openapi:{description:\"Get OAuth2 client details\",responses:{\"200\":{description:\"OAuth2 client retrieved successfully\",content:{\"application/json\":{schema:{type:\"object\",properties:{clientId:{type:\"string\",description:\"Unique identifier for the client\"},name:{type:\"string\",description:\"Name of the OAuth2 application\"},icon:{type:\"string\",nullable:true,description:\"Icon URL for the application\"}},required:[\"clientId\",\"name\"]}}}}}}}},async ctx=>{const client=await getClient(ctx.params.id,trustedClients);if(!client)throw new import_api.APIError(\"NOT_FOUND\",{error_description:\"client not found\",error:\"not_found\"});return ctx.json({clientId:client.clientId,name:client.name,icon:client.icon||null})}),endSession:(0,import_api2.createAuthEndpoint)(\"/oauth2/endsession\",{method:[\"GET\",\"POST\"],query:z.object({id_token_hint:z.string().optional(),logout_hint:z.string().optional(),client_id:z.string().optional(),post_logout_redirect_uri:z.string().optional(),state:z.string().optional(),ui_locales:z.string().optional()}).optional(),metadata:{...import_hide_metadata.HIDE_METADATA,openapi:{description:\"RP-Initiated Logout endpoint. Logs out the end-user and optionally redirects to a post-logout URI.\",parameters:[{name:\"id_token_hint\",in:\"query\",description:\"Previously issued ID Token passed as a hint about the End-User's current authenticated session\",required:false,schema:{type:\"string\"}},{name:\"logout_hint\",in:\"query\",description:\"Hint to the Authorization Server about the End-User that is logging out\",required:false,schema:{type:\"string\"}},{name:\"client_id\",in:\"query\",description:\"OAuth 2.0 Client Identifier. Required if post_logout_redirect_uri is used without id_token_hint\",required:false,schema:{type:\"string\"}},{name:\"post_logout_redirect_uri\",in:\"query\",description:\"URL to which the RP is requesting that the End-User's User Agent be redirected after a logout has been performed\",required:false,schema:{type:\"string\",format:\"uri\"}},{name:\"state\",in:\"query\",description:\"Opaque value used by the RP to maintain state between the logout request and the callback\",required:false,schema:{type:\"string\"}},{name:\"ui_locales\",in:\"query\",description:\"End-User's preferred languages and scripts for the user interface\",required:false,schema:{type:\"string\"}}],responses:{\"302\":{description:\"Redirect to post_logout_redirect_uri or logout confirmation page\"},\"200\":{description:\"Logout completed successfully\"}}}}},async ctx=>{const{id_token_hint,client_id,post_logout_redirect_uri,state}=ctx.query||{};let validatedClientId=null;let validatedUserId=null;if(id_token_hint)try{const jwtPlugin=ctx.context.getPlugin(\"jwt\");if(jwtPlugin&&jwtPlugin.options&&options?.useJWTPlugin){const verified=await(0,import_verify.verifyJWT)(id_token_hint,jwtPlugin.options);if(verified){validatedUserId=verified.sub;validatedClientId=verified.aud?typeof verified.aud===\"string\"?verified.aud:verified.aud[0]:null}}else if(client_id){const client=await getClient(client_id,trustedClients);if(client&&client.clientSecret)try{const{payload}=await(0,import_jose.jwtVerify)(id_token_hint,new TextEncoder().encode(client.clientSecret));validatedUserId=payload.sub;validatedClientId=payload.aud}catch{}}}catch{ctx.context.logger.debug(\"Invalid id_token_hint provided to end_session endpoint\")}if(client_id){if(!await getClient(client_id,trustedClients))throw new import_api.APIError(\"BAD_REQUEST\",{error:\"invalid_client\",error_description:\"Invalid client_id\"});if(validatedClientId&&validatedClientId!==client_id)throw new import_api.APIError(\"BAD_REQUEST\",{error:\"invalid_request\",error_description:\"client_id does not match the ID Token's audience\"});validatedClientId=client_id}if(post_logout_redirect_uri){if(!validatedClientId)throw new import_api.APIError(\"BAD_REQUEST\",{error:\"invalid_request\",error_description:\"client_id is required when using post_logout_redirect_uri without a valid id_token_hint\"});const client=await getClient(validatedClientId,trustedClients);if(!client)throw new import_api.APIError(\"BAD_REQUEST\",{error:\"invalid_client\",error_description:\"Invalid client\"});if(!client.redirectUrls.some(registeredUri=>post_logout_redirect_uri===registeredUri))throw new import_api.APIError(\"BAD_REQUEST\",{error:\"invalid_request\",error_description:\"post_logout_redirect_uri is not registered for this client\"})}const session=await(0,import_session.getSessionFromCtx)(ctx);if(validatedUserId||session){const userId=validatedUserId||session?.user.id;if(userId)await ctx.context.adapter.deleteMany({model:modelName.oauthAccessToken,where:[{field:\"userId\",value:userId}]})}if(session){await ctx.context.internalAdapter.deleteSession(session.session.token);(0,import_cookies.expireCookie)(ctx,ctx.context.authCookies.sessionToken)}if(post_logout_redirect_uri)try{const redirectUrl=new URL(post_logout_redirect_uri);if(state)redirectUrl.searchParams.set(\"state\",state);return ctx.redirect(redirectUrl.toString())}catch{throw new import_api.APIError(\"BAD_REQUEST\",{error:\"invalid_request\",error_description:\"Invalid post_logout_redirect_uri format\"})}return ctx.json({success:true,message:\"Logout successful\"})})},schema:(0,import_schema.mergeSchema)(import_schema2.schema,options?.schema),get options(){return opts}}},\"oidcProvider\");0&&(module.exports={getClient,getMetadata,oidcProvider});\n})()\n","warnings":[],"map":{"version":3,"mappings":"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","names":["import_schema","import_utils","import_api","accessToken"],"ignoreList":[],"sources":["/opt/canhelp/node_modules/better-auth/dist/plugins/oidc-provider/index.mjs"],"sourcesContent":[null]}}