Edit: /tmp/tsx-0/17887-23946c98ee81e3aa64ace81cc9aa70fcfa16d9ee (11718B)
{"code":"__filename=\"/opt/canhelp/node_modules/better-auth/dist/utils/url.mjs\";(()=>{\nvar __defProp=Object.defineProperty;var __getOwnPropDesc=Object.getOwnPropertyDescriptor;var __getOwnPropNames=Object.getOwnPropertyNames;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 __toCommonJS=mod=>__copyProps(__defProp({},\"__esModule\",{value:true}),mod);var url_exports={};__export(url_exports,{getBaseURL:()=>getBaseURL,getHost:()=>getHost,getHostFromRequest:()=>getHostFromRequest,getOrigin:()=>getOrigin,getProtocol:()=>getProtocol,getProtocolFromRequest:()=>getProtocolFromRequest,isDynamicBaseURLConfig:()=>isDynamicBaseURLConfig,matchesHostPattern:()=>matchesHostPattern,resolveBaseURL:()=>resolveBaseURL,resolveDynamicBaseURL:()=>resolveDynamicBaseURL});module.exports=__toCommonJS(url_exports);var import_wildcard=require(\"./wildcard.mjs\");var import_env=require(\"@better-auth/core/env\");var import_error=require(\"@better-auth/core/error\");function checkHasPath(url){try{return(new URL(url).pathname.replace(/\\/+$/,\"\")||\"/\")!==\"/\"}catch{throw new import_error.BetterAuthError(`Invalid base URL: ${url}. Please provide a valid base URL.`)}}__name(checkHasPath,\"checkHasPath\");function assertHasProtocol(url){try{const parsedUrl=new URL(url);if(parsedUrl.protocol!==\"http:\"&&parsedUrl.protocol!==\"https:\")throw new import_error.BetterAuthError(`Invalid base URL: ${url}. URL must include 'http://' or 'https://'`)}catch(error){if(error instanceof import_error.BetterAuthError)throw error;throw new import_error.BetterAuthError(`Invalid base URL: ${url}. Please provide a valid base URL.`,{cause:error})}}__name(assertHasProtocol,\"assertHasProtocol\");function withPath(url,path=\"/api/auth\"){assertHasProtocol(url);if(checkHasPath(url))return url;const trimmedUrl=url.replace(/\\/+$/,\"\");if(!path||path===\"/\")return trimmedUrl;path=path.startsWith(\"/\")?path:`/${path}`;return`${trimmedUrl}${path}`}__name(withPath,\"withPath\");function validateProxyHeader(header,type){if(!header||header.trim()===\"\")return false;if(type===\"proto\")return header===\"http\"||header===\"https\";if(type===\"host\"){if([/\\.\\./,/\\0/,/[\\s]/,/^[.]/,/[<>'\"]/,/javascript:/i,/file:/i,/data:/i].some(pattern=>pattern.test(header)))return false;return/^[a-zA-Z0-9]([a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?(\\.[a-zA-Z0-9]([a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?)*(:[0-9]{1,5})?$/.test(header)||/^(\\d{1,3}\\.){3}\\d{1,3}(:[0-9]{1,5})?$/.test(header)||/^\\[[0-9a-fA-F:]+\\](:[0-9]{1,5})?$/.test(header)||/^localhost(:[0-9]{1,5})?$/i.test(header)}return false}__name(validateProxyHeader,\"validateProxyHeader\");function getBaseURL(url,path,request,loadEnv,trustedProxyHeaders){if(url)return withPath(url,path);if(loadEnv!==false){const fromEnv=import_env.env.BETTER_AUTH_URL||import_env.env.NEXT_PUBLIC_BETTER_AUTH_URL||import_env.env.PUBLIC_BETTER_AUTH_URL||import_env.env.NUXT_PUBLIC_BETTER_AUTH_URL||import_env.env.NUXT_PUBLIC_AUTH_URL||(import_env.env.BASE_URL!==\"/\"?import_env.env.BASE_URL:void 0);if(fromEnv)return withPath(fromEnv,path)}const fromRequest=request?.headers.get(\"x-forwarded-host\");const fromRequestProto=request?.headers.get(\"x-forwarded-proto\");if(fromRequest&&fromRequestProto&&trustedProxyHeaders){if(validateProxyHeader(fromRequestProto,\"proto\")&&validateProxyHeader(fromRequest,\"host\"))try{return withPath(`${fromRequestProto}://${fromRequest}`,path)}catch(_error){}}if(request){const url2=getOrigin(request.url);if(!url2)throw new import_error.BetterAuthError(\"Could not get origin from request. Please provide a valid base URL.\");return withPath(url2,path)}if(typeof window!==\"undefined\"&&window.location)return withPath(window.location.origin,path)}__name(getBaseURL,\"getBaseURL\");function getOrigin(url){try{const parsedUrl=new URL(url);return parsedUrl.origin===\"null\"?null:parsedUrl.origin}catch{return null}}__name(getOrigin,\"getOrigin\");function getProtocol(url){try{return new URL(url).protocol}catch{return null}}__name(getProtocol,\"getProtocol\");function getHost(url){try{return new URL(url).host}catch{return null}}__name(getHost,\"getHost\");function isDynamicBaseURLConfig(config){return typeof config===\"object\"&&config!==null&&\"allowedHosts\"in config&&Array.isArray(config.allowedHosts)}__name(isDynamicBaseURLConfig,\"isDynamicBaseURLConfig\");function getHostFromRequest(request){const forwardedHost=request.headers.get(\"x-forwarded-host\");if(forwardedHost&&validateProxyHeader(forwardedHost,\"host\"))return forwardedHost;const host=request.headers.get(\"host\");if(host&&validateProxyHeader(host,\"host\"))return host;try{return new URL(request.url).host}catch{return null}}__name(getHostFromRequest,\"getHostFromRequest\");function getProtocolFromRequest(request,configProtocol){if(configProtocol===\"http\"||configProtocol===\"https\")return configProtocol;const forwardedProto=request.headers.get(\"x-forwarded-proto\");if(forwardedProto&&validateProxyHeader(forwardedProto,\"proto\"))return forwardedProto;try{const url=new URL(request.url);if(url.protocol===\"http:\"||url.protocol===\"https:\")return url.protocol.slice(0,-1)}catch{}return\"https\"}__name(getProtocolFromRequest,\"getProtocolFromRequest\");const matchesHostPattern=__name((host,pattern)=>{if(!host||!pattern)return false;const normalizedHost=host.replace(/^https?:\\/\\//,\"\").split(\"/\")[0].toLowerCase();const normalizedPattern=pattern.replace(/^https?:\\/\\//,\"\").split(\"/\")[0].toLowerCase();if(normalizedPattern.includes(\"*\")||normalizedPattern.includes(\"?\"))return(0,import_wildcard.wildcardMatch)(normalizedPattern)(normalizedHost);return normalizedHost.toLowerCase()===normalizedPattern.toLowerCase()},\"matchesHostPattern\");function resolveDynamicBaseURL(config,request,basePath){const host=getHostFromRequest(request);if(!host){if(config.fallback)return withPath(config.fallback,basePath);throw new import_error.BetterAuthError(\"Could not determine host from request headers. Please provide a fallback URL in your baseURL config.\")}if(config.allowedHosts.some(pattern=>matchesHostPattern(host,pattern)))return withPath(`${getProtocolFromRequest(request,config.protocol)}://${host}`,basePath);if(config.fallback)return withPath(config.fallback,basePath);throw new import_error.BetterAuthError(`Host \"${host}\" is not in the allowed hosts list. Allowed hosts: ${config.allowedHosts.join(\", \")}. Add this host to your allowedHosts config or provide a fallback URL.`)}__name(resolveDynamicBaseURL,\"resolveDynamicBaseURL\");function resolveBaseURL(config,basePath,request,loadEnv,trustedProxyHeaders){if(isDynamicBaseURLConfig(config)){if(request)return resolveDynamicBaseURL(config,request,basePath);if(config.fallback)return withPath(config.fallback,basePath);return getBaseURL(void 0,basePath,request,loadEnv,trustedProxyHeaders)}if(typeof config===\"string\")return getBaseURL(config,basePath,request,loadEnv,trustedProxyHeaders);return getBaseURL(void 0,basePath,request,loadEnv,trustedProxyHeaders)}__name(resolveBaseURL,\"resolveBaseURL\");0&&(module.exports={getBaseURL,getHost,getHostFromRequest,getOrigin,getProtocol,getProtocolFromRequest,isDynamicBaseURLConfig,matchesHostPattern,resolveBaseURL,resolveDynamicBaseURL});\n})()\n","warnings":[],"map":{"version":3,"mappings":"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","names":["url"],"ignoreList":[],"sources":["/opt/canhelp/node_modules/better-auth/dist/utils/url.mjs"],"sourcesContent":[null]}}