Edit: /tmp/tsx-0/17887-4aa4dbfe6f333e7f4c43172afce4634a5f6ac12b (10563B)
{"code":"__filename=\"/opt/canhelp/node_modules/better-auth/dist/plugins/anonymous/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 anonymous_exports={};__export(anonymous_exports,{anonymous:()=>anonymous});module.exports=__toCommonJS(anonymous_exports);var import_schema=require(\"../../db/schema.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_api=require(\"../../api/index.mjs\");var import_error_codes=require(\"./error-codes.mjs\");var import_schema2=require(\"./schema.mjs\");var import_id=require(\"@better-auth/core/utils/id\");var import_api2=require(\"@better-auth/core/api\");var z=__toESM(require(\"zod\"));async function getAnonUserEmail(options){const customEmail=await options?.generateRandomEmail?.();if(customEmail){if(!z.email().safeParse(customEmail).success)throw import_api.APIError.from(\"BAD_REQUEST\",import_error_codes.ANONYMOUS_ERROR_CODES.INVALID_EMAIL_FORMAT);return customEmail}const id=(0,import_id.generateId)();if(options?.emailDomainName)return`temp-${id}@${options.emailDomainName}`;return`temp@${id}.com`}__name(getAnonUserEmail,\"getAnonUserEmail\");const anonymous=__name(options=>{return{id:\"anonymous\",endpoints:{signInAnonymous:(0,import_api2.createAuthEndpoint)(\"/sign-in/anonymous\",{method:\"POST\",metadata:{openapi:{description:\"Sign in anonymously\",responses:{200:{description:\"Sign in anonymously\",content:{\"application/json\":{schema:{type:\"object\",properties:{user:{$ref:\"#/components/schemas/User\"},session:{$ref:\"#/components/schemas/Session\"}}}}}}}}}},async ctx=>{if((await(0,import_session.getSessionFromCtx)(ctx,{disableRefresh:true}))?.user.isAnonymous)throw import_api.APIError.from(\"BAD_REQUEST\",import_error_codes.ANONYMOUS_ERROR_CODES.ANONYMOUS_USERS_CANNOT_SIGN_IN_AGAIN_ANONYMOUSLY);const email=await getAnonUserEmail(options);const name=await options?.generateName?.(ctx)||\"Anonymous\";const newUser=await ctx.context.internalAdapter.createUser({email,emailVerified:false,isAnonymous:true,name,createdAt:new Date,updatedAt:new Date});if(!newUser)throw import_api.APIError.from(\"INTERNAL_SERVER_ERROR\",import_error_codes.ANONYMOUS_ERROR_CODES.FAILED_TO_CREATE_USER);const session=await ctx.context.internalAdapter.createSession(newUser.id);if(!session)throw import_api.APIError.from(\"BAD_REQUEST\",import_error_codes.ANONYMOUS_ERROR_CODES.COULD_NOT_CREATE_SESSION);await(0,import_cookies.setSessionCookie)(ctx,{session,user:newUser});return ctx.json({token:session.token,user:(0,import_schema.parseUserOutput)(ctx.context.options,newUser)})}),deleteAnonymousUser:(0,import_api2.createAuthEndpoint)(\"/delete-anonymous-user\",{method:\"POST\",use:[import_session.sensitiveSessionMiddleware],metadata:{openapi:{description:\"Delete an anonymous user\",responses:{200:{description:\"Anonymous user deleted\",content:{\"application/json\":{schema:{type:\"object\",properties:{success:{type:\"boolean\"}}}}}},\"400\":{description:\"Anonymous user deletion is disabled\",content:{\"application/json\":{schema:{type:\"object\",properties:{message:{type:\"string\"}}},required:[\"message\"]}}},\"500\":{description:\"Internal server error\",content:{\"application/json\":{schema:{type:\"object\",properties:{message:{type:\"string\"}},required:[\"message\"]}}}}}}}},async ctx=>{const session=ctx.context.session;if(options?.disableDeleteAnonymousUser)throw import_api.APIError.from(\"BAD_REQUEST\",import_error_codes.ANONYMOUS_ERROR_CODES.DELETE_ANONYMOUS_USER_DISABLED);if(!session.user.isAnonymous)throw import_api.APIError.from(\"FORBIDDEN\",import_error_codes.ANONYMOUS_ERROR_CODES.USER_IS_NOT_ANONYMOUS);try{await ctx.context.internalAdapter.deleteUser(session.user.id)}catch(error){ctx.context.logger.error(\"Failed to delete anonymous user\",error);throw import_api.APIError.from(\"INTERNAL_SERVER_ERROR\",import_error_codes.ANONYMOUS_ERROR_CODES.FAILED_TO_DELETE_ANONYMOUS_USER)}(0,import_cookies.deleteSessionCookie)(ctx);return ctx.json({success:true})})},hooks:{after:[{matcher(ctx){return ctx.path?.startsWith(\"/sign-in\")||ctx.path?.startsWith(\"/sign-up\")||ctx.path?.startsWith(\"/callback\")||ctx.path?.startsWith(\"/oauth2/callback\")||ctx.path?.startsWith(\"/magic-link/verify\")||ctx.path?.startsWith(\"/email-otp/verify-email\")||ctx.path?.startsWith(\"/one-tap/callback\")||ctx.path?.startsWith(\"/passkey/verify-authentication\")||ctx.path?.startsWith(\"/phone-number/verify\")||false},handler:(0,import_api2.createAuthMiddleware)(async ctx=>{const setCookie=ctx.context.responseHeaders?.get(\"set-cookie\");const sessionTokenName=ctx.context.authCookies.sessionToken.name;if(!(0,import_cookie_utils.parseSetCookieHeader)(setCookie||\"\").get(sessionTokenName)?.value.split(\".\")[0])return;const session=await(0,import_session.getSessionFromCtx)(ctx,{disableRefresh:true});if(!session||!session.user.isAnonymous)return;if(ctx.path===\"/sign-in/anonymous\"&&!ctx.context.newSession)throw import_api.APIError.from(\"BAD_REQUEST\",import_error_codes.ANONYMOUS_ERROR_CODES.ANONYMOUS_USERS_CANNOT_SIGN_IN_AGAIN_ANONYMOUSLY);const newSession=ctx.context.newSession;if(!newSession)return;const user={...session.user,isAnonymous:session.user.isAnonymous};if(options?.onLinkAccount)await options?.onLinkAccount?.({anonymousUser:{session:session.session,user},newUser:newSession,ctx});const newSessionUser=newSession.user;const isSameUser=newSessionUser?.id===session.user.id;const newSessionIsAnonymous=Boolean(newSessionUser?.isAnonymous);if(options?.disableDeleteAnonymousUser||isSameUser||newSessionIsAnonymous)return;await ctx.context.internalAdapter.deleteUser(session.user.id)})}]},options,schema:(0,import_schema.mergeSchema)(import_schema2.schema,options?.schema),$ERROR_CODES:import_error_codes.ANONYMOUS_ERROR_CODES}},\"anonymous\");0&&(module.exports={anonymous});\n})()\n","warnings":[],"map":{"version":3,"mappings":"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","names":["import_schema","import_api"],"ignoreList":[],"sources":["/opt/canhelp/node_modules/better-auth/dist/plugins/anonymous/index.mjs"],"sourcesContent":[null]}}