better-auth 1.0.18 → 1.0.19
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/adapters/drizzle.cjs +1 -1
- package/dist/adapters/drizzle.d.cts +3 -2
- package/dist/adapters/drizzle.d.ts +3 -2
- package/dist/adapters/drizzle.js +1 -1
- package/dist/adapters/kysely.d.cts +3 -2
- package/dist/adapters/kysely.d.ts +3 -2
- package/dist/adapters/memory.d.cts +3 -2
- package/dist/adapters/memory.d.ts +3 -2
- package/dist/adapters/mongodb.cjs +1 -1
- package/dist/adapters/mongodb.d.cts +3 -2
- package/dist/adapters/mongodb.d.ts +3 -2
- package/dist/adapters/mongodb.js +1 -1
- package/dist/adapters/prisma.cjs +1 -1
- package/dist/adapters/prisma.d.cts +3 -2
- package/dist/adapters/prisma.d.ts +3 -2
- package/dist/adapters/prisma.js +1 -1
- package/dist/api.cjs +4 -4
- package/dist/api.d.cts +3 -2
- package/dist/api.d.ts +3 -2
- package/dist/api.js +4 -4
- package/dist/{auth-DEibNUo6.d.ts → auth-B_LFm6_Y.d.ts} +41 -140
- package/dist/{auth-DpHjo6yr.d.cts → auth-DCr9mzAB.d.cts} +41 -140
- package/dist/client/plugins.d.cts +16 -5
- package/dist/client/plugins.d.ts +16 -5
- package/dist/client.d.cts +3 -2
- package/dist/client.d.ts +3 -2
- package/dist/cookies.d.cts +3 -2
- package/dist/cookies.d.ts +3 -2
- package/dist/db.d.cts +4 -3
- package/dist/db.d.ts +4 -3
- package/dist/{index-BbQNgYOm.d.cts → index-CHjmU47P.d.cts} +1 -1
- package/dist/index-CgaJXZ9u.d.cts +3724 -0
- package/dist/{index-BGocPPeN.d.ts → index-Dcbbo2jq.d.ts} +1 -1
- package/dist/index-Dt4lZbQi.d.ts +3724 -0
- package/dist/index.cjs +4 -4
- package/dist/index.d.cts +5 -4
- package/dist/index.d.ts +5 -4
- package/dist/index.js +4 -4
- package/dist/next-js.d.cts +3 -2
- package/dist/next-js.d.ts +3 -2
- package/dist/node.d.cts +3 -2
- package/dist/node.d.ts +3 -2
- package/dist/oauth2.cjs +1 -1
- package/dist/oauth2.d.cts +5 -4
- package/dist/oauth2.d.ts +5 -4
- package/dist/oauth2.js +1 -1
- package/dist/plugin/custom-session.cjs +83 -0
- package/dist/plugin/custom-session.d.cts +67 -0
- package/dist/plugin/custom-session.d.ts +67 -0
- package/dist/plugin/custom-session.js +83 -0
- package/dist/plugins/admin.cjs +83 -0
- package/dist/plugins/admin.d.cts +1433 -0
- package/dist/plugins/admin.d.ts +1433 -0
- package/dist/plugins/admin.js +83 -0
- package/dist/plugins/anonymous.cjs +83 -0
- package/dist/plugins/anonymous.d.cts +155 -0
- package/dist/plugins/anonymous.d.ts +155 -0
- package/dist/plugins/anonymous.js +83 -0
- package/dist/plugins/bearer.cjs +83 -0
- package/dist/plugins/bearer.d.cts +35 -0
- package/dist/plugins/bearer.d.ts +35 -0
- package/dist/plugins/bearer.js +83 -0
- package/dist/plugins/email-otp.cjs +83 -0
- package/dist/plugins/email-otp.d.cts +678 -0
- package/dist/plugins/email-otp.d.ts +678 -0
- package/dist/plugins/email-otp.js +83 -0
- package/dist/plugins/generic-oauth.cjs +83 -0
- package/dist/plugins/generic-oauth.d.cts +317 -0
- package/dist/plugins/generic-oauth.d.ts +317 -0
- package/dist/plugins/generic-oauth.js +83 -0
- package/dist/plugins/jwt.cjs +83 -0
- package/dist/plugins/jwt.d.cts +338 -0
- package/dist/plugins/jwt.d.ts +338 -0
- package/dist/plugins/jwt.js +83 -0
- package/dist/plugins/magic-link.cjs +1 -0
- package/dist/plugins/magic-link.d.cts +234 -0
- package/dist/plugins/magic-link.d.ts +234 -0
- package/dist/plugins/magic-link.js +1 -0
- package/dist/plugins/multi-session.cjs +83 -0
- package/dist/plugins/multi-session.d.cts +299 -0
- package/dist/plugins/multi-session.d.ts +299 -0
- package/dist/plugins/multi-session.js +83 -0
- package/dist/plugins/one-tap.cjs +83 -0
- package/dist/plugins/one-tap.d.cts +157 -0
- package/dist/plugins/one-tap.d.ts +157 -0
- package/dist/plugins/one-tap.js +83 -0
- package/dist/plugins/open-api.cjs +122 -0
- package/dist/plugins/open-api.d.cts +144 -0
- package/dist/plugins/open-api.d.ts +144 -0
- package/dist/plugins/open-api.js +122 -0
- package/dist/plugins/organization.cjs +83 -0
- package/dist/plugins/organization.d.cts +6 -0
- package/dist/plugins/organization.d.ts +6 -0
- package/dist/plugins/organization.js +83 -0
- package/dist/plugins/passkey.cjs +83 -0
- package/dist/plugins/passkey.d.cts +1180 -0
- package/dist/plugins/passkey.d.ts +1180 -0
- package/dist/plugins/passkey.js +83 -0
- package/dist/plugins/phone-number.cjs +83 -0
- package/dist/plugins/phone-number.d.cts +462 -0
- package/dist/plugins/phone-number.d.ts +462 -0
- package/dist/plugins/phone-number.js +83 -0
- package/dist/plugins/two-factor.cjs +83 -0
- package/dist/plugins/two-factor.d.cts +2141 -0
- package/dist/plugins/two-factor.d.ts +2141 -0
- package/dist/plugins/two-factor.js +83 -0
- package/dist/plugins/username.cjs +83 -0
- package/dist/plugins/username.d.cts +129 -0
- package/dist/plugins/username.d.ts +129 -0
- package/dist/plugins/username.js +83 -0
- package/dist/plugins.cjs +5 -5
- package/dist/plugins.d.cts +26 -381
- package/dist/plugins.d.ts +26 -381
- package/dist/plugins.js +5 -5
- package/dist/react.cjs +1 -1
- package/dist/react.d.cts +6 -26
- package/dist/react.d.ts +6 -26
- package/dist/react.js +1 -1
- package/dist/schema-DG_8mn16.d.cts +138 -0
- package/dist/schema-DG_8mn16.d.ts +138 -0
- package/dist/social.cjs +1 -1
- package/dist/social.d.cts +1 -1
- package/dist/social.d.ts +1 -1
- package/dist/social.js +1 -1
- package/dist/solid-start.d.cts +3 -2
- package/dist/solid-start.d.ts +3 -2
- package/dist/solid.d.cts +3 -2
- package/dist/solid.d.ts +3 -2
- package/dist/{state-CJNJD8VE.d.cts → state-BMhSL6qk.d.cts} +7 -5
- package/dist/{state-fc-dCXtr.d.ts → state-DEA00tVL.d.ts} +7 -5
- package/dist/svelte-kit.d.cts +3 -2
- package/dist/svelte-kit.d.ts +3 -2
- package/dist/svelte.d.cts +3 -2
- package/dist/svelte.d.ts +3 -2
- package/dist/types.d.cts +4 -3
- package/dist/types.d.ts +4 -3
- package/dist/vue.d.cts +3 -2
- package/dist/vue.d.ts +3 -2
- package/package.json +151 -1
- package/dist/index-Bh8w2WZq.d.ts +0 -10979
- package/dist/index-DCRJyAn_.d.cts +0 -10979
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";var F=Object.defineProperty;var P=Object.getOwnPropertyDescriptor;var E=Object.getOwnPropertyNames;var _=Object.prototype.hasOwnProperty;var C=(e,n)=>{for(var u in n)F(e,u,{get:n[u],enumerable:!0})},j=(e,n,u,p)=>{if(n&&typeof n=="object"||typeof n=="function")for(let l of E(n))!_.call(e,l)&&l!==u&&F(e,l,{get:()=>n[l],enumerable:!(p=P(n,l))||p.enumerable});return e};var $=e=>j(F({},"__esModule",{value:!0}),e);var ie={};C(ie,{drizzleAdapter:()=>ne});module.exports=$(ie);var m=require("drizzle-orm");var s=require("zod"),K=require("better-call"),de=s.z.object({id:s.z.string(),providerId:s.z.string(),accountId:s.z.string(),userId:s.z.string(),accessToken:s.z.string().nullish(),refreshToken:s.z.string().nullish(),idToken:s.z.string().nullish(),accessTokenExpiresAt:s.z.date().nullish(),refreshTokenExpiresAt:s.z.date().nullish(),scope:s.z.string().nullish(),password:s.z.string().nullish(),createdAt:s.z.date().default(()=>new Date),updatedAt:s.z.date().default(()=>new Date)}),ue=s.z.object({id:s.z.string(),email:s.z.string().transform(e=>e.toLowerCase()),emailVerified:s.z.boolean().default(!1),name:s.z.string(),image:s.z.string().nullish(),createdAt:s.z.date().default(()=>new Date),updatedAt:s.z.date().default(()=>new Date)}),le=s.z.object({id:s.z.string(),userId:s.z.string(),expiresAt:s.z.date(),createdAt:s.z.date().default(()=>new Date),updatedAt:s.z.date().default(()=>new Date),token:s.z.string(),ipAddress:s.z.string().nullish(),userAgent:s.z.string().nullish()}),ce=s.z.object({id:s.z.string(),value:s.z.string(),createdAt:s.z.date().default(()=>new Date),updatedAt:s.z.date().default(()=>new Date),expiresAt:s.z.date(),identifier:s.z.string()});var R=Object.create(null),T=e=>globalThis.process?.env||globalThis.Deno?.env.toObject()||globalThis.__env__||(e?R:globalThis),S=new Proxy(R,{get(e,n){return T()[n]??R[n]},has(e,n){let u=T();return n in u||n in R},set(e,n,u){let p=T(!0);return p[n]=u,!0},deleteProperty(e,n){if(!n)return!1;let u=T(!0);return delete u[n],!0},ownKeys(){let e=T(!0);return Object.keys(e)}});function z(e){return e?e!=="false":!1}var W=typeof process<"u"&&process.env&&process.env.NODE_ENV||"";var H=W==="test"||z(S.TEST);var q=require("nanoid"),k=e=>(0,q.nanoid)(e);var B=require("oslo/oauth2"),J=require("zod"),G=require("better-call");var w=class extends Error{constructor(n,u){super(n),this.name="BetterAuthError",this.message=n,this.cause=u,this.stack=""}};var U=require("consola"),O=["info","success","warn","error","debug"];function Q(e,n){return O.indexOf(n)<=O.indexOf(e)}var Z=(0,U.createConsola)({formatOptions:{date:!1,colors:!0,compact:!0},defaults:{tag:"Better Auth"}}),L=e=>{let n=e?.disabled!==!0,u=e?.level??"error",p=(l,g,y=[])=>{if(!(!n||!Q(u,l))){if(!e||typeof e.log!="function"){Z[l]("",g,...y);return}e.log(l==="success"?"info":l,g,y)}};return Object.fromEntries(O.map(l=>[l,(...[g,...y])=>p(l,g,y)]))},X=L();var v=e=>{let n=e.plugins?.reduce((a,c)=>{let i=c.schema;if(!i)return a;for(let[t,d]of Object.entries(i))a[t]={fields:{...a[t]?.fields,...d.fields},modelName:d.modelName||t};return a},{}),u=e.rateLimit?.storage==="database",p={rateLimit:{modelName:e.rateLimit?.modelName||"rateLimit",fields:{key:{type:"string",fieldName:e.rateLimit?.fields?.key||"key"},count:{type:"number",fieldName:e.rateLimit?.fields?.count||"count"},lastRequest:{type:"number",fieldName:e.rateLimit?.fields?.lastRequest||"lastRequest"}}}},{user:l,session:g,account:y,...x}=n||{};return{user:{modelName:e.user?.modelName||"user",fields:{name:{type:"string",required:!0,fieldName:e.user?.fields?.name||"name"},email:{type:"string",unique:!0,required:!0,fieldName:e.user?.fields?.email||"email"},emailVerified:{type:"boolean",defaultValue:()=>!1,required:!0,fieldName:e.user?.fields?.emailVerified||"emailVerified"},image:{type:"string",required:!1,fieldName:e.user?.fields?.image||"image"},createdAt:{type:"date",defaultValue:()=>new Date,required:!0,fieldName:e.user?.fields?.createdAt||"createdAt"},updatedAt:{type:"date",defaultValue:()=>new Date,required:!0,fieldName:e.user?.fields?.updatedAt||"updatedAt"},...l?.fields,...e.user?.additionalFields},order:1},session:{modelName:e.session?.modelName||"session",fields:{expiresAt:{type:"date",required:!0,fieldName:e.session?.fields?.expiresAt||"expiresAt"},token:{type:"string",required:!0,fieldName:e.session?.fields?.token||"token",unique:!0},createdAt:{type:"date",required:!0,fieldName:e.session?.fields?.createdAt||"createdAt"},updatedAt:{type:"date",required:!0,fieldName:e.session?.fields?.updatedAt||"updatedAt"},ipAddress:{type:"string",required:!1,fieldName:e.session?.fields?.ipAddress||"ipAddress"},userAgent:{type:"string",required:!1,fieldName:e.session?.fields?.userAgent||"userAgent"},userId:{type:"string",fieldName:e.session?.fields?.userId||"userId",references:{model:e.user?.modelName||"user",field:"id",onDelete:"cascade"},required:!0},...g?.fields,...e.session?.additionalFields},order:2},account:{modelName:e.account?.modelName||"account",fields:{accountId:{type:"string",required:!0,fieldName:e.account?.fields?.accountId||"accountId"},providerId:{type:"string",required:!0,fieldName:e.account?.fields?.providerId||"providerId"},userId:{type:"string",references:{model:e.user?.modelName||"user",field:"id",onDelete:"cascade"},required:!0,fieldName:e.account?.fields?.userId||"userId"},accessToken:{type:"string",required:!1,fieldName:e.account?.fields?.accessToken||"accessToken"},refreshToken:{type:"string",required:!1,fieldName:e.account?.fields?.refreshToken||"refreshToken"},idToken:{type:"string",required:!1,fieldName:e.account?.fields?.idToken||"idToken"},accessTokenExpiresAt:{type:"date",required:!1,fieldName:e.account?.fields?.accessTokenExpiresAt||"accessTokenExpiresAt"},refreshTokenExpiresAt:{type:"date",required:!1,fieldName:e.account?.fields?.accessTokenExpiresAt||"refreshTokenExpiresAt"},scope:{type:"string",required:!1,fieldName:e.account?.fields?.scope||"scope"},password:{type:"string",required:!1,fieldName:e.account?.fields?.password||"password"},createdAt:{type:"date",required:!0,fieldName:e.account?.fields?.createdAt||"createdAt"},updatedAt:{type:"date",required:!0,fieldName:e.account?.fields?.updatedAt||"updatedAt"},...y?.fields},order:3},verification:{modelName:e.verification?.modelName||"verification",fields:{identifier:{type:"string",required:!0,fieldName:e.verification?.fields?.identifier||"identifier"},value:{type:"string",required:!0,fieldName:e.verification?.fields?.value||"value"},expiresAt:{type:"date",required:!0,fieldName:e.verification?.fields?.expiresAt||"expiresAt"},createdAt:{type:"date",required:!1,defaultValue:()=>new Date,fieldName:e.verification?.fields?.createdAt||"createdAt"},updatedAt:{type:"date",required:!1,defaultValue:()=>new Date,fieldName:e.verification?.fields?.updatedAt||"updatedAt"}},order:4},...x,...u?p:{}}};var Y=require("zod");var M=require("kysely"),I=require("kysely");function D(e,n,u){return u==="update"?e:e==null&&n.defaultValue?typeof n.defaultValue=="function"?n.defaultValue():n.defaultValue:e}var te=(e,n,u)=>{let p=v(u);function l(a,c){return c==="id"?c:p[a].fields[c].fieldName||c}function g(a){let c=n.schema||e._.fullSchema;if(!c)throw new w("Drizzle adapter failed to initialize. Schema not found. Please provide a schema object in the adapter options object.");let i=y(a),t=c[i];if(!t)throw new w(`[# Drizzle Adapter]: The model "${i}" was not found in the schema object. Please pass the schema directly to the adapter options.`);return t}let y=a=>p[a].modelName!==a?p[a].modelName:n.usePlural?`${a}s`:a,x=u?.advanced?.generateId===!1;return{getSchema:g,transformInput(a,c,i){let t=x||i==="update"?{}:{id:u.advanced?.generateId?u.advanced.generateId({model:c}):a.id||k()},d=p[c].fields;for(let o in d){let f=a[o];f===void 0&&!d[o].defaultValue||(t[d[o].fieldName||o]=D(f,d[o],i))}return t},transformOutput(a,c,i=[]){if(!a)return null;let t=a.id||a._id?i.length===0||i.includes("id")?{id:a.id}:{}:{},d=p[c].fields;for(let o in d){if(i.length&&!i.includes(o))continue;let f=d[o];f&&(t[o]=a[f.fieldName||o])}return t},convertWhereClause(a,c){let i=g(c);if(!a)return[];if(a.length===1){let r=a[0];if(!r)return[];let h=l(c,r.field);if(!i[h])throw new w(`The field "${r.field}" does not exist in the schema for the model "${c}". Please update your schema.`);if(r.operator==="in"){if(!Array.isArray(r.value))throw new w(`The value for the field "${r.field}" must be an array when using the "in" operator.`);return[(0,m.inArray)(i[h],r.value)]}return r.operator==="contains"?[(0,m.like)(i[h],`%${r.value}%`)]:r.operator==="starts_with"?[(0,m.like)(i[h],`${r.value}%`)]:r.operator==="ends_with"?[(0,m.like)(i[h],`%${r.value}`)]:[(0,m.eq)(i[h],r.value)]}let t=a.filter(r=>r.connector==="AND"||!r.connector),d=a.filter(r=>r.connector==="OR"),o=(0,m.and)(...t.map(r=>{let h=l(c,r.field);if(r.operator==="in"){if(!Array.isArray(r.value))throw new w(`The value for the field "${r.field}" must be an array when using the "in" operator.`);return(0,m.inArray)(i[h],r.value)}return(0,m.eq)(i[h],r.value)})),f=(0,m.or)(...d.map(r=>{let h=l(c,r.field);return(0,m.eq)(i[h],r.value)})),A=[];return t.length&&A.push(o),d.length&&A.push(f),A},withReturning:async(a,c,i)=>{if(n.provider!=="mysql")return(await c.returning())[0];await c;let t=g(y(a));return(await e.select().from(t).where((0,m.eq)(t.id,i.id)))[0]},getField:l,getModelName:y}};function re(e,n,u){if(!e)throw new w("Drizzle adapter failed to initialize. Schema not found. Please provide a schema object in the adapter options object.");for(let p in u)if(!e[p])throw new w(`The field "${p}" does not exist in the "${n}" schema. Please update your drizzle schema or re-generate using "npx @better-auth/cli generate".`)}var ne=(e,n)=>u=>{let{transformInput:p,transformOutput:l,convertWhereClause:g,getSchema:y,withReturning:x,getField:a,getModelName:c}=te(e,n,u);return{id:"drizzle",async create(i){let{model:t,data:d}=i,o=p(d,t,"create"),f=y(t);re(f,c(t),o);let A=e.insert(f).values(o),r=await x(t,A,o);return l(r,t)},async findOne(i){let{model:t,where:d,select:o}=i,f=y(t),A=g(d,t),r=await e.select().from(f).where(...A);return r.length?l(r[0],t,o):null},async findMany(i){let{model:t,where:d,sortBy:o,limit:f,offset:A}=i,r=y(t),h=d?g(d,t):[],b=o?.direction==="desc"?m.desc:m.asc,N=e.select().from(r).limit(f||100).offset(A||0);return o?.field&&N.orderBy(b(r[a(t,o?.field)])),(await N.where(...h)).map(V=>l(V,t))},async update(i){let{model:t,where:d,update:o}=i,f=y(t),A=g(d,t),r=p(o,t,"update"),h=e.update(f).set(r).where(...A),b=await x(t,h,r);return l(b,t)},async updateMany(i){let{model:t,where:d,update:o}=i,f=y(t),A=g(d,t),r=p(o,t,"update"),b=await e.update(f).set(r).where(...A);return b?b.changes:0},async delete(i){let{model:t,where:d}=i,o=y(t),f=g(d,t);await e.delete(o).where(...f)},async deleteMany(i){let{model:t,where:d}=i,o=y(t),f=g(d,t),r=await e.delete(o).where(...f);return r?r.length:0},options:n}};0&&(module.exports={drizzleAdapter});
|
|
1
|
+
"use strict";var F=Object.defineProperty;var P=Object.getOwnPropertyDescriptor;var E=Object.getOwnPropertyNames;var _=Object.prototype.hasOwnProperty;var C=(e,n)=>{for(var u in n)F(e,u,{get:n[u],enumerable:!0})},j=(e,n,u,p)=>{if(n&&typeof n=="object"||typeof n=="function")for(let l of E(n))!_.call(e,l)&&l!==u&&F(e,l,{get:()=>n[l],enumerable:!(p=P(n,l))||p.enumerable});return e};var $=e=>j(F({},"__esModule",{value:!0}),e);var se={};C(se,{drizzleAdapter:()=>ne});module.exports=$(se);var m=require("drizzle-orm");var i=require("zod"),K=require("better-call"),de=i.z.object({id:i.z.string(),providerId:i.z.string(),accountId:i.z.string(),userId:i.z.string(),accessToken:i.z.string().nullish(),refreshToken:i.z.string().nullish(),idToken:i.z.string().nullish(),accessTokenExpiresAt:i.z.date().nullish(),refreshTokenExpiresAt:i.z.date().nullish(),scope:i.z.string().nullish(),password:i.z.string().nullish(),createdAt:i.z.date().default(()=>new Date),updatedAt:i.z.date().default(()=>new Date)}),ue=i.z.object({id:i.z.string(),email:i.z.string().transform(e=>e.toLowerCase()),emailVerified:i.z.boolean().default(!1),name:i.z.string(),image:i.z.string().nullish(),createdAt:i.z.date().default(()=>new Date),updatedAt:i.z.date().default(()=>new Date)}),le=i.z.object({id:i.z.string(),userId:i.z.string(),expiresAt:i.z.date(),createdAt:i.z.date().default(()=>new Date),updatedAt:i.z.date().default(()=>new Date),token:i.z.string(),ipAddress:i.z.string().nullish(),userAgent:i.z.string().nullish()}),ce=i.z.object({id:i.z.string(),value:i.z.string(),createdAt:i.z.date().default(()=>new Date),updatedAt:i.z.date().default(()=>new Date),expiresAt:i.z.date(),identifier:i.z.string()});var R=Object.create(null),T=e=>globalThis.process?.env||globalThis.Deno?.env.toObject()||globalThis.__env__||(e?R:globalThis),S=new Proxy(R,{get(e,n){return T()[n]??R[n]},has(e,n){let u=T();return n in u||n in R},set(e,n,u){let p=T(!0);return p[n]=u,!0},deleteProperty(e,n){if(!n)return!1;let u=T(!0);return delete u[n],!0},ownKeys(){let e=T(!0);return Object.keys(e)}});function z(e){return e?e!=="false":!1}var W=typeof process<"u"&&process.env&&process.env.NODE_ENV||"";var H=W==="test"||z(S.TEST);var q=require("nanoid"),k=e=>(0,q.nanoid)(e);var U=require("oslo/oauth2"),J=require("zod"),G=require("better-call");var w=class extends Error{constructor(n,u){super(n),this.name="BetterAuthError",this.message=n,this.cause=u,this.stack=""}};var B=require("consola"),O=["info","success","warn","error","debug"];function Q(e,n){return O.indexOf(n)<=O.indexOf(e)}var Z=(0,B.createConsola)({formatOptions:{date:!1,colors:!0,compact:!0},defaults:{tag:"Better Auth"}}),L=e=>{let n=e?.disabled!==!0,u=e?.level??"error",p=(l,g,y=[])=>{if(!(!n||!Q(u,l))){if(!e||typeof e.log!="function"){Z[l]("",g,...y);return}e.log(l==="success"?"info":l,g,y)}};return Object.fromEntries(O.map(l=>[l,(...[g,...y])=>p(l,g,y)]))},X=L();var v=e=>{let n=e.plugins?.reduce((a,c)=>{let s=c.schema;if(!s)return a;for(let[t,d]of Object.entries(s))a[t]={fields:{...a[t]?.fields,...d.fields},modelName:d.modelName||t};return a},{}),u=e.rateLimit?.storage==="database",p={rateLimit:{modelName:e.rateLimit?.modelName||"rateLimit",fields:{key:{type:"string",fieldName:e.rateLimit?.fields?.key||"key"},count:{type:"number",fieldName:e.rateLimit?.fields?.count||"count"},lastRequest:{type:"number",fieldName:e.rateLimit?.fields?.lastRequest||"lastRequest"}}}},{user:l,session:g,account:y,...x}=n||{};return{user:{modelName:e.user?.modelName||"user",fields:{name:{type:"string",required:!0,fieldName:e.user?.fields?.name||"name"},email:{type:"string",unique:!0,required:!0,fieldName:e.user?.fields?.email||"email"},emailVerified:{type:"boolean",defaultValue:()=>!1,required:!0,fieldName:e.user?.fields?.emailVerified||"emailVerified"},image:{type:"string",required:!1,fieldName:e.user?.fields?.image||"image"},createdAt:{type:"date",defaultValue:()=>new Date,required:!0,fieldName:e.user?.fields?.createdAt||"createdAt"},updatedAt:{type:"date",defaultValue:()=>new Date,required:!0,fieldName:e.user?.fields?.updatedAt||"updatedAt"},...l?.fields,...e.user?.additionalFields},order:1},session:{modelName:e.session?.modelName||"session",fields:{expiresAt:{type:"date",required:!0,fieldName:e.session?.fields?.expiresAt||"expiresAt"},token:{type:"string",required:!0,fieldName:e.session?.fields?.token||"token",unique:!0},createdAt:{type:"date",required:!0,fieldName:e.session?.fields?.createdAt||"createdAt"},updatedAt:{type:"date",required:!0,fieldName:e.session?.fields?.updatedAt||"updatedAt"},ipAddress:{type:"string",required:!1,fieldName:e.session?.fields?.ipAddress||"ipAddress"},userAgent:{type:"string",required:!1,fieldName:e.session?.fields?.userAgent||"userAgent"},userId:{type:"string",fieldName:e.session?.fields?.userId||"userId",references:{model:e.user?.modelName||"user",field:"id",onDelete:"cascade"},required:!0},...g?.fields,...e.session?.additionalFields},order:2},account:{modelName:e.account?.modelName||"account",fields:{accountId:{type:"string",required:!0,fieldName:e.account?.fields?.accountId||"accountId"},providerId:{type:"string",required:!0,fieldName:e.account?.fields?.providerId||"providerId"},userId:{type:"string",references:{model:e.user?.modelName||"user",field:"id",onDelete:"cascade"},required:!0,fieldName:e.account?.fields?.userId||"userId"},accessToken:{type:"string",required:!1,fieldName:e.account?.fields?.accessToken||"accessToken"},refreshToken:{type:"string",required:!1,fieldName:e.account?.fields?.refreshToken||"refreshToken"},idToken:{type:"string",required:!1,fieldName:e.account?.fields?.idToken||"idToken"},accessTokenExpiresAt:{type:"date",required:!1,fieldName:e.account?.fields?.accessTokenExpiresAt||"accessTokenExpiresAt"},refreshTokenExpiresAt:{type:"date",required:!1,fieldName:e.account?.fields?.accessTokenExpiresAt||"refreshTokenExpiresAt"},scope:{type:"string",required:!1,fieldName:e.account?.fields?.scope||"scope"},password:{type:"string",required:!1,fieldName:e.account?.fields?.password||"password"},createdAt:{type:"date",required:!0,fieldName:e.account?.fields?.createdAt||"createdAt"},updatedAt:{type:"date",required:!0,fieldName:e.account?.fields?.updatedAt||"updatedAt"},...y?.fields},order:3},verification:{modelName:e.verification?.modelName||"verification",fields:{identifier:{type:"string",required:!0,fieldName:e.verification?.fields?.identifier||"identifier"},value:{type:"string",required:!0,fieldName:e.verification?.fields?.value||"value"},expiresAt:{type:"date",required:!0,fieldName:e.verification?.fields?.expiresAt||"expiresAt"},createdAt:{type:"date",required:!1,defaultValue:()=>new Date,fieldName:e.verification?.fields?.createdAt||"createdAt"},updatedAt:{type:"date",required:!1,defaultValue:()=>new Date,fieldName:e.verification?.fields?.updatedAt||"updatedAt"}},order:4},...x,...u?p:{}}};var Y=require("zod");var M=require("kysely"),I=require("kysely");function D(e,n,u){return u==="update"?e:e==null&&n.defaultValue?typeof n.defaultValue=="function"?n.defaultValue():n.defaultValue:e}var te=(e,n,u)=>{let p=v(u);function l(a,c){return c==="id"?c:p[a].fields[c].fieldName||c}function g(a){let c=n.schema||e._.fullSchema;if(!c)throw new w("Drizzle adapter failed to initialize. Schema not found. Please provide a schema object in the adapter options object.");let s=y(a),t=c[s];if(!t)throw new w(`[# Drizzle Adapter]: The model "${s}" was not found in the schema object. Please pass the schema directly to the adapter options.`);return t}let y=a=>p[a].modelName!==a?p[a].modelName:n.usePlural?`${a}s`:a,x=u?.advanced?.generateId===!1;return{getSchema:g,transformInput(a,c,s){let t=x||s==="update"?{}:{id:u.advanced?.generateId?u.advanced.generateId({model:c}):a.id||k()},d=p[c].fields;for(let o in d){let f=a[o];f===void 0&&!d[o].defaultValue||(t[d[o].fieldName||o]=D(f,d[o],s))}return t},transformOutput(a,c,s=[]){if(!a)return null;let t=a.id||a._id?s.length===0||s.includes("id")?{id:a.id}:{}:{},d=p[c].fields;for(let o in d){if(s.length&&!s.includes(o))continue;let f=d[o];f&&(t[o]=a[f.fieldName||o])}return t},convertWhereClause(a,c){let s=g(c);if(!a)return[];if(a.length===1){let r=a[0];if(!r)return[];let h=l(c,r.field);if(!s[h])throw new w(`The field "${r.field}" does not exist in the schema for the model "${c}". Please update your schema.`);if(r.operator==="in"){if(!Array.isArray(r.value))throw new w(`The value for the field "${r.field}" must be an array when using the "in" operator.`);return[(0,m.inArray)(s[h],r.value)]}return r.operator==="contains"?[(0,m.like)(s[h],`%${r.value}%`)]:r.operator==="starts_with"?[(0,m.like)(s[h],`${r.value}%`)]:r.operator==="ends_with"?[(0,m.like)(s[h],`%${r.value}`)]:[(0,m.eq)(s[h],r.value)]}let t=a.filter(r=>r.connector==="AND"||!r.connector),d=a.filter(r=>r.connector==="OR"),o=(0,m.and)(...t.map(r=>{let h=l(c,r.field);if(r.operator==="in"){if(!Array.isArray(r.value))throw new w(`The value for the field "${r.field}" must be an array when using the "in" operator.`);return(0,m.inArray)(s[h],r.value)}return(0,m.eq)(s[h],r.value)})),f=(0,m.or)(...d.map(r=>{let h=l(c,r.field);return(0,m.eq)(s[h],r.value)})),A=[];return t.length&&A.push(o),d.length&&A.push(f),A},withReturning:async(a,c,s)=>{if(n.provider!=="mysql")return(await c.returning())[0];await c;let t=g(y(a));return(await e.select().from(t).where((0,m.eq)(t.id,s.id)))[0]},getField:l,getModelName:y}};function re(e,n,u){if(!e)throw new w("Drizzle adapter failed to initialize. Schema not found. Please provide a schema object in the adapter options object.");for(let p in u)if(!e[p])throw new w(`The field "${p}" does not exist in the "${n}" schema. Please update your drizzle schema or re-generate using "npx @better-auth/cli generate".`)}var ne=(e,n)=>u=>{let{transformInput:p,transformOutput:l,convertWhereClause:g,getSchema:y,withReturning:x,getField:a,getModelName:c}=te(e,n,u);return{id:"drizzle",async create(s){let{model:t,data:d}=s,o=p(d,t,"create"),f=y(t);re(f,c(t),o);let A=e.insert(f).values(o),r=await x(t,A,o);return l(r,t)},async findOne(s){let{model:t,where:d,select:o}=s,f=y(t),A=g(d,t),r=await e.select().from(f).where(...A);return r.length?l(r[0],t,o):null},async findMany(s){let{model:t,where:d,sortBy:o,limit:f,offset:A}=s,r=y(t),h=d?g(d,t):[],b=o?.direction==="desc"?m.desc:m.asc,N=e.select().from(r).limit(f||100).offset(A||0);return o?.field&&N.orderBy(b(r[a(t,o?.field)])),(await N.where(...h)).map(V=>l(V,t))},async update(s){let{model:t,where:d,update:o}=s,f=y(t),A=g(d,t),r=p(o,t,"update"),h=e.update(f).set(r).where(...A),b=await x(t,h,r);return l(b,t)},async updateMany(s){let{model:t,where:d,update:o}=s,f=y(t),A=g(d,t),r=p(o,t,"update"),b=await e.update(f).set(r).where(...A);return b?b.changes:0},async delete(s){let{model:t,where:d}=s,o=y(t),f=g(d,t);await e.delete(o).where(...f)},async deleteMany(s){let{model:t,where:d}=s,o=y(t),f=g(d,t),r=await e.delete(o).where(...f);return r?r.length:0},options:n}};0&&(module.exports={drizzleAdapter});
|
|
@@ -1,9 +1,10 @@
|
|
|
1
|
-
import { B as BetterAuthOptions, W as Where } from '../auth-
|
|
1
|
+
import { B as BetterAuthOptions, W as Where } from '../auth-DCr9mzAB.cjs';
|
|
2
2
|
import 'kysely';
|
|
3
|
+
import '../schema-DG_8mn16.cjs';
|
|
3
4
|
import 'zod';
|
|
4
5
|
import 'better-call';
|
|
5
6
|
import '../helper-Bi8FQwDD.cjs';
|
|
6
|
-
import '../index-
|
|
7
|
+
import '../index-CHjmU47P.cjs';
|
|
7
8
|
import 'jose';
|
|
8
9
|
import 'better-sqlite3';
|
|
9
10
|
|
|
@@ -1,9 +1,10 @@
|
|
|
1
|
-
import { B as BetterAuthOptions, W as Where } from '../auth-
|
|
1
|
+
import { B as BetterAuthOptions, W as Where } from '../auth-B_LFm6_Y.js';
|
|
2
2
|
import 'kysely';
|
|
3
|
+
import '../schema-DG_8mn16.js';
|
|
3
4
|
import 'zod';
|
|
4
5
|
import 'better-call';
|
|
5
6
|
import '../helper-Bi8FQwDD.js';
|
|
6
|
-
import '../index-
|
|
7
|
+
import '../index-Dcbbo2jq.js';
|
|
7
8
|
import 'jose';
|
|
8
9
|
import 'better-sqlite3';
|
|
9
10
|
|
package/dist/adapters/drizzle.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
import{and as $,asc as K,desc as z,eq as D,inArray as q,like as O,or as W}from"drizzle-orm";import{z as i}from"zod";import{APIError as Y}from"better-call";var ee=i.object({id:i.string(),providerId:i.string(),accountId:i.string(),userId:i.string(),accessToken:i.string().nullish(),refreshToken:i.string().nullish(),idToken:i.string().nullish(),accessTokenExpiresAt:i.date().nullish(),refreshTokenExpiresAt:i.date().nullish(),scope:i.string().nullish(),password:i.string().nullish(),createdAt:i.date().default(()=>new Date),updatedAt:i.date().default(()=>new Date)}),te=i.object({id:i.string(),email:i.string().transform(e=>e.toLowerCase()),emailVerified:i.boolean().default(!1),name:i.string(),image:i.string().nullish(),createdAt:i.date().default(()=>new Date),updatedAt:i.date().default(()=>new Date)}),re=i.object({id:i.string(),userId:i.string(),expiresAt:i.date(),createdAt:i.date().default(()=>new Date),updatedAt:i.date().default(()=>new Date),token:i.string(),ipAddress:i.string().nullish(),userAgent:i.string().nullish()}),ne=i.object({id:i.string(),value:i.string(),createdAt:i.date().default(()=>new Date),updatedAt:i.date().default(()=>new Date),expiresAt:i.date(),identifier:i.string()});var k=Object.create(null),v=e=>globalThis.process?.env||globalThis.Deno?.env.toObject()||globalThis.__env__||(e?k:globalThis),N=new Proxy(k,{get(e,s){return v()[s]??k[s]},has(e,s){let l=v();return s in l||s in k},set(e,s,l){let p=v(!0);return p[s]=l,!0},deleteProperty(e,s){if(!s)return!1;let l=v(!0);return delete l[s],!0},ownKeys(){let e=v(!0);return Object.keys(e)}});function U(e){return e?e!=="false":!1}var L=typeof process<"u"&&process.env&&process.env.NODE_ENV||"";var M=L==="test"||U(N.TEST);import{nanoid as V}from"nanoid";var T=e=>V(e);import{generateCodeVerifier as xe,generateState as be}from"oslo/oauth2";import{z as Te}from"zod";import{APIError as Re}from"better-call";var A=class extends Error{constructor(s,l){super(s),this.name="BetterAuthError",this.message=s,this.cause=l,this.stack=""}};import{createConsola as P}from"consola";var F=["info","success","warn","error","debug"];function E(e,s){return F.indexOf(s)<=F.indexOf(e)}var _=P({formatOptions:{date:!1,colors:!0,compact:!0},defaults:{tag:"Better Auth"}}),S=e=>{let s=e?.disabled!==!0,l=e?.level??"error",p=(f,y,m=[])=>{if(!(!s||!E(l,f))){if(!e||typeof e.log!="function"){_[f]("",y,...m);return}e.log(f==="success"?"info":f,y,m)}};return Object.fromEntries(F.map(f=>[f,(...[y,...m])=>p(f,y,m)]))},C=S();var b=e=>{let s=e.plugins?.reduce((a,u)=>{let n=u.schema;if(!n)return a;for(let[t,d]of Object.entries(n))a[t]={fields:{...a[t]?.fields,...d.fields},modelName:d.modelName||t};return a},{}),l=e.rateLimit?.storage==="database",p={rateLimit:{modelName:e.rateLimit?.modelName||"rateLimit",fields:{key:{type:"string",fieldName:e.rateLimit?.fields?.key||"key"},count:{type:"number",fieldName:e.rateLimit?.fields?.count||"count"},lastRequest:{type:"number",fieldName:e.rateLimit?.fields?.lastRequest||"lastRequest"}}}},{user:f,session:y,account:m,...w}=s||{};return{user:{modelName:e.user?.modelName||"user",fields:{name:{type:"string",required:!0,fieldName:e.user?.fields?.name||"name"},email:{type:"string",unique:!0,required:!0,fieldName:e.user?.fields?.email||"email"},emailVerified:{type:"boolean",defaultValue:()=>!1,required:!0,fieldName:e.user?.fields?.emailVerified||"emailVerified"},image:{type:"string",required:!1,fieldName:e.user?.fields?.image||"image"},createdAt:{type:"date",defaultValue:()=>new Date,required:!0,fieldName:e.user?.fields?.createdAt||"createdAt"},updatedAt:{type:"date",defaultValue:()=>new Date,required:!0,fieldName:e.user?.fields?.updatedAt||"updatedAt"},...f?.fields,...e.user?.additionalFields},order:1},session:{modelName:e.session?.modelName||"session",fields:{expiresAt:{type:"date",required:!0,fieldName:e.session?.fields?.expiresAt||"expiresAt"},token:{type:"string",required:!0,fieldName:e.session?.fields?.token||"token",unique:!0},createdAt:{type:"date",required:!0,fieldName:e.session?.fields?.createdAt||"createdAt"},updatedAt:{type:"date",required:!0,fieldName:e.session?.fields?.updatedAt||"updatedAt"},ipAddress:{type:"string",required:!1,fieldName:e.session?.fields?.ipAddress||"ipAddress"},userAgent:{type:"string",required:!1,fieldName:e.session?.fields?.userAgent||"userAgent"},userId:{type:"string",fieldName:e.session?.fields?.userId||"userId",references:{model:e.user?.modelName||"user",field:"id",onDelete:"cascade"},required:!0},...y?.fields,...e.session?.additionalFields},order:2},account:{modelName:e.account?.modelName||"account",fields:{accountId:{type:"string",required:!0,fieldName:e.account?.fields?.accountId||"accountId"},providerId:{type:"string",required:!0,fieldName:e.account?.fields?.providerId||"providerId"},userId:{type:"string",references:{model:e.user?.modelName||"user",field:"id",onDelete:"cascade"},required:!0,fieldName:e.account?.fields?.userId||"userId"},accessToken:{type:"string",required:!1,fieldName:e.account?.fields?.accessToken||"accessToken"},refreshToken:{type:"string",required:!1,fieldName:e.account?.fields?.refreshToken||"refreshToken"},idToken:{type:"string",required:!1,fieldName:e.account?.fields?.idToken||"idToken"},accessTokenExpiresAt:{type:"date",required:!1,fieldName:e.account?.fields?.accessTokenExpiresAt||"accessTokenExpiresAt"},refreshTokenExpiresAt:{type:"date",required:!1,fieldName:e.account?.fields?.accessTokenExpiresAt||"refreshTokenExpiresAt"},scope:{type:"string",required:!1,fieldName:e.account?.fields?.scope||"scope"},password:{type:"string",required:!1,fieldName:e.account?.fields?.password||"password"},createdAt:{type:"date",required:!0,fieldName:e.account?.fields?.createdAt||"createdAt"},updatedAt:{type:"date",required:!0,fieldName:e.account?.fields?.updatedAt||"updatedAt"},...m?.fields},order:3},verification:{modelName:e.verification?.modelName||"verification",fields:{identifier:{type:"string",required:!0,fieldName:e.verification?.fields?.identifier||"identifier"},value:{type:"string",required:!0,fieldName:e.verification?.fields?.value||"value"},expiresAt:{type:"date",required:!0,fieldName:e.verification?.fields?.expiresAt||"expiresAt"},createdAt:{type:"date",required:!1,defaultValue:()=>new Date,fieldName:e.verification?.fields?.createdAt||"createdAt"},updatedAt:{type:"date",required:!1,defaultValue:()=>new Date,fieldName:e.verification?.fields?.updatedAt||"updatedAt"}},order:4},...w,...l?p:{}}};import{z as Ye}from"zod";import{Kysely as rt,MssqlDialect as nt}from"kysely";import{MysqlDialect as st,PostgresDialect as at,SqliteDialect as ot}from"kysely";function R(e,s,l){return l==="update"?e:e==null&&s.defaultValue?typeof s.defaultValue=="function"?s.defaultValue():s.defaultValue:e}var H=(e,s,l)=>{let p=b(l);function f(a,u){return u==="id"?u:p[a].fields[u].fieldName||u}function y(a){let u=s.schema||e._.fullSchema;if(!u)throw new A("Drizzle adapter failed to initialize. Schema not found. Please provide a schema object in the adapter options object.");let n=m(a),t=u[n];if(!t)throw new A(`[# Drizzle Adapter]: The model "${n}" was not found in the schema object. Please pass the schema directly to the adapter options.`);return t}let m=a=>p[a].modelName!==a?p[a].modelName:s.usePlural?`${a}s`:a,w=l?.advanced?.generateId===!1;return{getSchema:y,transformInput(a,u,n){let t=w||n==="update"?{}:{id:l.advanced?.generateId?l.advanced.generateId({model:u}):a.id||T()},d=p[u].fields;for(let o in d){let c=a[o];c===void 0&&!d[o].defaultValue||(t[d[o].fieldName||o]=R(c,d[o],n))}return t},transformOutput(a,u,n=[]){if(!a)return null;let t=a.id||a._id?n.length===0||n.includes("id")?{id:a.id}:{}:{},d=p[u].fields;for(let o in d){if(n.length&&!n.includes(o))continue;let c=d[o];c&&(t[o]=a[c.fieldName||o])}return t},convertWhereClause(a,u){let n=y(u);if(!a)return[];if(a.length===1){let r=a[0];if(!r)return[];let g=f(u,r.field);if(!n[g])throw new A(`The field "${r.field}" does not exist in the schema for the model "${u}". Please update your schema.`);if(r.operator==="in"){if(!Array.isArray(r.value))throw new A(`The value for the field "${r.field}" must be an array when using the "in" operator.`);return[q(n[g],r.value)]}return r.operator==="contains"?[O(n[g],`%${r.value}%`)]:r.operator==="starts_with"?[O(n[g],`${r.value}%`)]:r.operator==="ends_with"?[O(n[g],`%${r.value}`)]:[D(n[g],r.value)]}let t=a.filter(r=>r.connector==="AND"||!r.connector),d=a.filter(r=>r.connector==="OR"),o=$(...t.map(r=>{let g=f(u,r.field);if(r.operator==="in"){if(!Array.isArray(r.value))throw new A(`The value for the field "${r.field}" must be an array when using the "in" operator.`);return q(n[g],r.value)}return D(n[g],r.value)})),c=W(...d.map(r=>{let g=f(u,r.field);return D(n[g],r.value)})),h=[];return t.length&&h.push(o),d.length&&h.push(c),h},withReturning:async(a,u,n)=>{if(s.provider!=="mysql")return(await u.returning())[0];await u;let t=y(m(a));return(await e.select().from(t).where(D(t.id,n.id)))[0]},getField:f,getModelName:m}};function J(e,s,l){if(!e)throw new A("Drizzle adapter failed to initialize. Schema not found. Please provide a schema object in the adapter options object.");for(let p in l)if(!e[p])throw new A(`The field "${p}" does not exist in the "${s}" schema. Please update your drizzle schema or re-generate using "npx @better-auth/cli generate".`)}var tr=(e,s)=>l=>{let{transformInput:p,transformOutput:f,convertWhereClause:y,getSchema:m,withReturning:w,getField:a,getModelName:u}=H(e,s,l);return{id:"drizzle",async create(n){let{model:t,data:d}=n,o=p(d,t,"create"),c=m(t);J(c,u(t),o);let h=e.insert(c).values(o),r=await w(t,h,o);return f(r,t)},async findOne(n){let{model:t,where:d,select:o}=n,c=m(t),h=y(d,t),r=await e.select().from(c).where(...h);return r.length?f(r[0],t,o):null},async findMany(n){let{model:t,where:d,sortBy:o,limit:c,offset:h}=n,r=m(t),g=d?y(d,t):[],x=o?.direction==="desc"?z:K,I=e.select().from(r).limit(c||100).offset(h||0);return o?.field&&I.orderBy(x(r[a(t,o?.field)])),(await I.where(...g)).map(B=>f(B,t))},async update(n){let{model:t,where:d,update:o}=n,c=m(t),h=y(d,t),r=p(o,t,"update"),g=e.update(c).set(r).where(...h),x=await w(t,g,r);return f(x,t)},async updateMany(n){let{model:t,where:d,update:o}=n,c=m(t),h=y(d,t),r=p(o,t,"update"),x=await e.update(c).set(r).where(...h);return x?x.changes:0},async delete(n){let{model:t,where:d}=n,o=m(t),c=y(d,t);await e.delete(o).where(...c)},async deleteMany(n){let{model:t,where:d}=n,o=m(t),c=y(d,t),r=await e.delete(o).where(...c);return r?r.length:0},options:s}};export{tr as drizzleAdapter};
|
|
1
|
+
import{and as $,asc as K,desc as z,eq as D,inArray as q,like as O,or as W}from"drizzle-orm";import{z as s}from"zod";import{APIError as Y}from"better-call";var ee=s.object({id:s.string(),providerId:s.string(),accountId:s.string(),userId:s.string(),accessToken:s.string().nullish(),refreshToken:s.string().nullish(),idToken:s.string().nullish(),accessTokenExpiresAt:s.date().nullish(),refreshTokenExpiresAt:s.date().nullish(),scope:s.string().nullish(),password:s.string().nullish(),createdAt:s.date().default(()=>new Date),updatedAt:s.date().default(()=>new Date)}),te=s.object({id:s.string(),email:s.string().transform(e=>e.toLowerCase()),emailVerified:s.boolean().default(!1),name:s.string(),image:s.string().nullish(),createdAt:s.date().default(()=>new Date),updatedAt:s.date().default(()=>new Date)}),re=s.object({id:s.string(),userId:s.string(),expiresAt:s.date(),createdAt:s.date().default(()=>new Date),updatedAt:s.date().default(()=>new Date),token:s.string(),ipAddress:s.string().nullish(),userAgent:s.string().nullish()}),ne=s.object({id:s.string(),value:s.string(),createdAt:s.date().default(()=>new Date),updatedAt:s.date().default(()=>new Date),expiresAt:s.date(),identifier:s.string()});var k=Object.create(null),v=e=>globalThis.process?.env||globalThis.Deno?.env.toObject()||globalThis.__env__||(e?k:globalThis),N=new Proxy(k,{get(e,i){return v()[i]??k[i]},has(e,i){let l=v();return i in l||i in k},set(e,i,l){let p=v(!0);return p[i]=l,!0},deleteProperty(e,i){if(!i)return!1;let l=v(!0);return delete l[i],!0},ownKeys(){let e=v(!0);return Object.keys(e)}});function B(e){return e?e!=="false":!1}var L=typeof process<"u"&&process.env&&process.env.NODE_ENV||"";var M=L==="test"||B(N.TEST);import{nanoid as V}from"nanoid";var T=e=>V(e);import{generateCodeVerifier as xe,generateState as be}from"oslo/oauth2";import{z as Te}from"zod";import{APIError as Re}from"better-call";var A=class extends Error{constructor(i,l){super(i),this.name="BetterAuthError",this.message=i,this.cause=l,this.stack=""}};import{createConsola as P}from"consola";var F=["info","success","warn","error","debug"];function E(e,i){return F.indexOf(i)<=F.indexOf(e)}var _=P({formatOptions:{date:!1,colors:!0,compact:!0},defaults:{tag:"Better Auth"}}),S=e=>{let i=e?.disabled!==!0,l=e?.level??"error",p=(f,y,m=[])=>{if(!(!i||!E(l,f))){if(!e||typeof e.log!="function"){_[f]("",y,...m);return}e.log(f==="success"?"info":f,y,m)}};return Object.fromEntries(F.map(f=>[f,(...[y,...m])=>p(f,y,m)]))},C=S();var b=e=>{let i=e.plugins?.reduce((a,u)=>{let n=u.schema;if(!n)return a;for(let[t,d]of Object.entries(n))a[t]={fields:{...a[t]?.fields,...d.fields},modelName:d.modelName||t};return a},{}),l=e.rateLimit?.storage==="database",p={rateLimit:{modelName:e.rateLimit?.modelName||"rateLimit",fields:{key:{type:"string",fieldName:e.rateLimit?.fields?.key||"key"},count:{type:"number",fieldName:e.rateLimit?.fields?.count||"count"},lastRequest:{type:"number",fieldName:e.rateLimit?.fields?.lastRequest||"lastRequest"}}}},{user:f,session:y,account:m,...w}=i||{};return{user:{modelName:e.user?.modelName||"user",fields:{name:{type:"string",required:!0,fieldName:e.user?.fields?.name||"name"},email:{type:"string",unique:!0,required:!0,fieldName:e.user?.fields?.email||"email"},emailVerified:{type:"boolean",defaultValue:()=>!1,required:!0,fieldName:e.user?.fields?.emailVerified||"emailVerified"},image:{type:"string",required:!1,fieldName:e.user?.fields?.image||"image"},createdAt:{type:"date",defaultValue:()=>new Date,required:!0,fieldName:e.user?.fields?.createdAt||"createdAt"},updatedAt:{type:"date",defaultValue:()=>new Date,required:!0,fieldName:e.user?.fields?.updatedAt||"updatedAt"},...f?.fields,...e.user?.additionalFields},order:1},session:{modelName:e.session?.modelName||"session",fields:{expiresAt:{type:"date",required:!0,fieldName:e.session?.fields?.expiresAt||"expiresAt"},token:{type:"string",required:!0,fieldName:e.session?.fields?.token||"token",unique:!0},createdAt:{type:"date",required:!0,fieldName:e.session?.fields?.createdAt||"createdAt"},updatedAt:{type:"date",required:!0,fieldName:e.session?.fields?.updatedAt||"updatedAt"},ipAddress:{type:"string",required:!1,fieldName:e.session?.fields?.ipAddress||"ipAddress"},userAgent:{type:"string",required:!1,fieldName:e.session?.fields?.userAgent||"userAgent"},userId:{type:"string",fieldName:e.session?.fields?.userId||"userId",references:{model:e.user?.modelName||"user",field:"id",onDelete:"cascade"},required:!0},...y?.fields,...e.session?.additionalFields},order:2},account:{modelName:e.account?.modelName||"account",fields:{accountId:{type:"string",required:!0,fieldName:e.account?.fields?.accountId||"accountId"},providerId:{type:"string",required:!0,fieldName:e.account?.fields?.providerId||"providerId"},userId:{type:"string",references:{model:e.user?.modelName||"user",field:"id",onDelete:"cascade"},required:!0,fieldName:e.account?.fields?.userId||"userId"},accessToken:{type:"string",required:!1,fieldName:e.account?.fields?.accessToken||"accessToken"},refreshToken:{type:"string",required:!1,fieldName:e.account?.fields?.refreshToken||"refreshToken"},idToken:{type:"string",required:!1,fieldName:e.account?.fields?.idToken||"idToken"},accessTokenExpiresAt:{type:"date",required:!1,fieldName:e.account?.fields?.accessTokenExpiresAt||"accessTokenExpiresAt"},refreshTokenExpiresAt:{type:"date",required:!1,fieldName:e.account?.fields?.accessTokenExpiresAt||"refreshTokenExpiresAt"},scope:{type:"string",required:!1,fieldName:e.account?.fields?.scope||"scope"},password:{type:"string",required:!1,fieldName:e.account?.fields?.password||"password"},createdAt:{type:"date",required:!0,fieldName:e.account?.fields?.createdAt||"createdAt"},updatedAt:{type:"date",required:!0,fieldName:e.account?.fields?.updatedAt||"updatedAt"},...m?.fields},order:3},verification:{modelName:e.verification?.modelName||"verification",fields:{identifier:{type:"string",required:!0,fieldName:e.verification?.fields?.identifier||"identifier"},value:{type:"string",required:!0,fieldName:e.verification?.fields?.value||"value"},expiresAt:{type:"date",required:!0,fieldName:e.verification?.fields?.expiresAt||"expiresAt"},createdAt:{type:"date",required:!1,defaultValue:()=>new Date,fieldName:e.verification?.fields?.createdAt||"createdAt"},updatedAt:{type:"date",required:!1,defaultValue:()=>new Date,fieldName:e.verification?.fields?.updatedAt||"updatedAt"}},order:4},...w,...l?p:{}}};import{z as Ye}from"zod";import{Kysely as rt,MssqlDialect as nt}from"kysely";import{MysqlDialect as it,PostgresDialect as at,SqliteDialect as ot}from"kysely";function R(e,i,l){return l==="update"?e:e==null&&i.defaultValue?typeof i.defaultValue=="function"?i.defaultValue():i.defaultValue:e}var H=(e,i,l)=>{let p=b(l);function f(a,u){return u==="id"?u:p[a].fields[u].fieldName||u}function y(a){let u=i.schema||e._.fullSchema;if(!u)throw new A("Drizzle adapter failed to initialize. Schema not found. Please provide a schema object in the adapter options object.");let n=m(a),t=u[n];if(!t)throw new A(`[# Drizzle Adapter]: The model "${n}" was not found in the schema object. Please pass the schema directly to the adapter options.`);return t}let m=a=>p[a].modelName!==a?p[a].modelName:i.usePlural?`${a}s`:a,w=l?.advanced?.generateId===!1;return{getSchema:y,transformInput(a,u,n){let t=w||n==="update"?{}:{id:l.advanced?.generateId?l.advanced.generateId({model:u}):a.id||T()},d=p[u].fields;for(let o in d){let c=a[o];c===void 0&&!d[o].defaultValue||(t[d[o].fieldName||o]=R(c,d[o],n))}return t},transformOutput(a,u,n=[]){if(!a)return null;let t=a.id||a._id?n.length===0||n.includes("id")?{id:a.id}:{}:{},d=p[u].fields;for(let o in d){if(n.length&&!n.includes(o))continue;let c=d[o];c&&(t[o]=a[c.fieldName||o])}return t},convertWhereClause(a,u){let n=y(u);if(!a)return[];if(a.length===1){let r=a[0];if(!r)return[];let g=f(u,r.field);if(!n[g])throw new A(`The field "${r.field}" does not exist in the schema for the model "${u}". Please update your schema.`);if(r.operator==="in"){if(!Array.isArray(r.value))throw new A(`The value for the field "${r.field}" must be an array when using the "in" operator.`);return[q(n[g],r.value)]}return r.operator==="contains"?[O(n[g],`%${r.value}%`)]:r.operator==="starts_with"?[O(n[g],`${r.value}%`)]:r.operator==="ends_with"?[O(n[g],`%${r.value}`)]:[D(n[g],r.value)]}let t=a.filter(r=>r.connector==="AND"||!r.connector),d=a.filter(r=>r.connector==="OR"),o=$(...t.map(r=>{let g=f(u,r.field);if(r.operator==="in"){if(!Array.isArray(r.value))throw new A(`The value for the field "${r.field}" must be an array when using the "in" operator.`);return q(n[g],r.value)}return D(n[g],r.value)})),c=W(...d.map(r=>{let g=f(u,r.field);return D(n[g],r.value)})),h=[];return t.length&&h.push(o),d.length&&h.push(c),h},withReturning:async(a,u,n)=>{if(i.provider!=="mysql")return(await u.returning())[0];await u;let t=y(m(a));return(await e.select().from(t).where(D(t.id,n.id)))[0]},getField:f,getModelName:m}};function J(e,i,l){if(!e)throw new A("Drizzle adapter failed to initialize. Schema not found. Please provide a schema object in the adapter options object.");for(let p in l)if(!e[p])throw new A(`The field "${p}" does not exist in the "${i}" schema. Please update your drizzle schema or re-generate using "npx @better-auth/cli generate".`)}var tr=(e,i)=>l=>{let{transformInput:p,transformOutput:f,convertWhereClause:y,getSchema:m,withReturning:w,getField:a,getModelName:u}=H(e,i,l);return{id:"drizzle",async create(n){let{model:t,data:d}=n,o=p(d,t,"create"),c=m(t);J(c,u(t),o);let h=e.insert(c).values(o),r=await w(t,h,o);return f(r,t)},async findOne(n){let{model:t,where:d,select:o}=n,c=m(t),h=y(d,t),r=await e.select().from(c).where(...h);return r.length?f(r[0],t,o):null},async findMany(n){let{model:t,where:d,sortBy:o,limit:c,offset:h}=n,r=m(t),g=d?y(d,t):[],x=o?.direction==="desc"?z:K,I=e.select().from(r).limit(c||100).offset(h||0);return o?.field&&I.orderBy(x(r[a(t,o?.field)])),(await I.where(...g)).map(U=>f(U,t))},async update(n){let{model:t,where:d,update:o}=n,c=m(t),h=y(d,t),r=p(o,t,"update"),g=e.update(c).set(r).where(...h),x=await w(t,g,r);return f(x,t)},async updateMany(n){let{model:t,where:d,update:o}=n,c=m(t),h=y(d,t),r=p(o,t,"update"),x=await e.update(c).set(r).where(...h);return x?x.changes:0},async delete(n){let{model:t,where:d}=n,o=m(t),c=y(d,t);await e.delete(o).where(...c)},async deleteMany(n){let{model:t,where:d}=n,o=m(t),c=y(d,t),r=await e.delete(o).where(...c);return r?r.length:0},options:i}};export{tr as drizzleAdapter};
|
|
@@ -1,9 +1,10 @@
|
|
|
1
1
|
import { Kysely } from 'kysely';
|
|
2
|
-
import { B as BetterAuthOptions, K as KyselyDatabaseType, W as Where } from '../auth-
|
|
2
|
+
import { B as BetterAuthOptions, K as KyselyDatabaseType, W as Where } from '../auth-DCr9mzAB.cjs';
|
|
3
|
+
import '../schema-DG_8mn16.cjs';
|
|
3
4
|
import 'zod';
|
|
4
5
|
import 'better-call';
|
|
5
6
|
import '../helper-Bi8FQwDD.cjs';
|
|
6
|
-
import '../index-
|
|
7
|
+
import '../index-CHjmU47P.cjs';
|
|
7
8
|
import 'jose';
|
|
8
9
|
import 'better-sqlite3';
|
|
9
10
|
|
|
@@ -1,9 +1,10 @@
|
|
|
1
1
|
import { Kysely } from 'kysely';
|
|
2
|
-
import { B as BetterAuthOptions, K as KyselyDatabaseType, W as Where } from '../auth-
|
|
2
|
+
import { B as BetterAuthOptions, K as KyselyDatabaseType, W as Where } from '../auth-B_LFm6_Y.js';
|
|
3
|
+
import '../schema-DG_8mn16.js';
|
|
3
4
|
import 'zod';
|
|
4
5
|
import 'better-call';
|
|
5
6
|
import '../helper-Bi8FQwDD.js';
|
|
6
|
-
import '../index-
|
|
7
|
+
import '../index-Dcbbo2jq.js';
|
|
7
8
|
import 'jose';
|
|
8
9
|
import 'better-sqlite3';
|
|
9
10
|
|
|
@@ -1,9 +1,10 @@
|
|
|
1
|
-
import { B as BetterAuthOptions, W as Where } from '../auth-
|
|
1
|
+
import { B as BetterAuthOptions, W as Where } from '../auth-DCr9mzAB.cjs';
|
|
2
2
|
import 'kysely';
|
|
3
|
+
import '../schema-DG_8mn16.cjs';
|
|
3
4
|
import 'zod';
|
|
4
5
|
import 'better-call';
|
|
5
6
|
import '../helper-Bi8FQwDD.cjs';
|
|
6
|
-
import '../index-
|
|
7
|
+
import '../index-CHjmU47P.cjs';
|
|
7
8
|
import 'jose';
|
|
8
9
|
import 'better-sqlite3';
|
|
9
10
|
|
|
@@ -1,9 +1,10 @@
|
|
|
1
|
-
import { B as BetterAuthOptions, W as Where } from '../auth-
|
|
1
|
+
import { B as BetterAuthOptions, W as Where } from '../auth-B_LFm6_Y.js';
|
|
2
2
|
import 'kysely';
|
|
3
|
+
import '../schema-DG_8mn16.js';
|
|
3
4
|
import 'zod';
|
|
4
5
|
import 'better-call';
|
|
5
6
|
import '../helper-Bi8FQwDD.js';
|
|
6
|
-
import '../index-
|
|
7
|
+
import '../index-Dcbbo2jq.js';
|
|
7
8
|
import 'jose';
|
|
8
9
|
import 'better-sqlite3';
|
|
9
10
|
|
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";var v=Object.defineProperty;var U=Object.getOwnPropertyDescriptor;var L=Object.getOwnPropertyNames;var B=Object.prototype.hasOwnProperty;var V=(e,s)=>{for(var i in s)v(e,i,{get:s[i],enumerable:!0})},E=(e,s,i,l)=>{if(s&&typeof s=="object"||typeof s=="function")for(let r of L(s))!B.call(e,r)&&r!==i&&v(e,r,{get:()=>s[r],enumerable:!(l=U(s,r))||l.enumerable});return e};var M=e=>E(v({},"__esModule",{value:!0}),e);var ee={};V(ee,{mongodbAdapter:()=>Y});module.exports=M(ee);var A=require("mongodb");var a=require("zod"),P=require("better-call"),ne=a.z.object({id:a.z.string(),providerId:a.z.string(),accountId:a.z.string(),userId:a.z.string(),accessToken:a.z.string().nullish(),refreshToken:a.z.string().nullish(),idToken:a.z.string().nullish(),accessTokenExpiresAt:a.z.date().nullish(),refreshTokenExpiresAt:a.z.date().nullish(),scope:a.z.string().nullish(),password:a.z.string().nullish(),createdAt:a.z.date().default(()=>new Date),updatedAt:a.z.date().default(()=>new Date)}),ie=a.z.object({id:a.z.string(),email:a.z.string().transform(e=>e.toLowerCase()),emailVerified:a.z.boolean().default(!1),name:a.z.string(),image:a.z.string().nullish(),createdAt:a.z.date().default(()=>new Date),updatedAt:a.z.date().default(()=>new Date)}),se=a.z.object({id:a.z.string(),userId:a.z.string(),expiresAt:a.z.date(),createdAt:a.z.date().default(()=>new Date),updatedAt:a.z.date().default(()=>new Date),token:a.z.string(),ipAddress:a.z.string().nullish(),userAgent:a.z.string().nullish()}),ae=a.z.object({id:a.z.string(),value:a.z.string(),createdAt:a.z.date().default(()=>new Date),updatedAt:a.z.date().default(()=>new Date),expiresAt:a.z.date(),identifier:a.z.string()});var x=Object.create(null),w=e=>globalThis.process?.env||globalThis.Deno?.env.toObject()||globalThis.__env__||(e?x:globalThis),D=new Proxy(x,{get(e,s){return w()[s]??x[s]},has(e,s){let i=w();return s in i||s in x},set(e,s,i){let l=w(!0);return l[s]=i,!0},deleteProperty(e,s){if(!s)return!1;let i=w(!0);return delete i[s],!0},ownKeys(){let e=w(!0);return Object.keys(e)}});function _(e){return e?e!=="false":!1}var C=typeof process<"u"&&process.env&&process.env.NODE_ENV||"";var $=C==="test"||_(D.TEST);var j=require("nanoid");var F=require("oslo/oauth2"),K=require("zod"),H=require("better-call");var R=require("consola"),T=["info","success","warn","error","debug"];function z(e,s){return T.indexOf(s)<=T.indexOf(e)}var J=(0,R.createConsola)({formatOptions:{date:!1,colors:!0,compact:!0},defaults:{tag:"Better Auth"}}),I=e=>{let s=e?.disabled!==!0,i=e?.level??"error",l=(r,n,t=[])=>{if(!(!s||!z(i,r))){if(!e||typeof e.log!="function"){J[r]("",n,...t);return}e.log(r==="success"?"info":r,n,t)}};return Object.fromEntries(T.map(r=>[r,(...[n,...t])=>l(r,n,t)]))},G=I();var h=e=>{let s=e.plugins?.reduce((d,c)=>{let u=c.schema;if(!u)return d;for(let[f,g]of Object.entries(u))d[f]={fields:{...d[f]?.fields,...g.fields},modelName:g.modelName||f};return d},{}),i=e.rateLimit?.storage==="database",l={rateLimit:{modelName:e.rateLimit?.modelName||"rateLimit",fields:{key:{type:"string",fieldName:e.rateLimit?.fields?.key||"key"},count:{type:"number",fieldName:e.rateLimit?.fields?.count||"count"},lastRequest:{type:"number",fieldName:e.rateLimit?.fields?.lastRequest||"lastRequest"}}}},{user:r,session:n,account:t,...o}=s||{};return{user:{modelName:e.user?.modelName||"user",fields:{name:{type:"string",required:!0,fieldName:e.user?.fields?.name||"name"},email:{type:"string",unique:!0,required:!0,fieldName:e.user?.fields?.email||"email"},emailVerified:{type:"boolean",defaultValue:()=>!1,required:!0,fieldName:e.user?.fields?.emailVerified||"emailVerified"},image:{type:"string",required:!1,fieldName:e.user?.fields?.image||"image"},createdAt:{type:"date",defaultValue:()=>new Date,required:!0,fieldName:e.user?.fields?.createdAt||"createdAt"},updatedAt:{type:"date",defaultValue:()=>new Date,required:!0,fieldName:e.user?.fields?.updatedAt||"updatedAt"},...r?.fields,...e.user?.additionalFields},order:1},session:{modelName:e.session?.modelName||"session",fields:{expiresAt:{type:"date",required:!0,fieldName:e.session?.fields?.expiresAt||"expiresAt"},token:{type:"string",required:!0,fieldName:e.session?.fields?.token||"token",unique:!0},createdAt:{type:"date",required:!0,fieldName:e.session?.fields?.createdAt||"createdAt"},updatedAt:{type:"date",required:!0,fieldName:e.session?.fields?.updatedAt||"updatedAt"},ipAddress:{type:"string",required:!1,fieldName:e.session?.fields?.ipAddress||"ipAddress"},userAgent:{type:"string",required:!1,fieldName:e.session?.fields?.userAgent||"userAgent"},userId:{type:"string",fieldName:e.session?.fields?.userId||"userId",references:{model:e.user?.modelName||"user",field:"id",onDelete:"cascade"},required:!0},...n?.fields,...e.session?.additionalFields},order:2},account:{modelName:e.account?.modelName||"account",fields:{accountId:{type:"string",required:!0,fieldName:e.account?.fields?.accountId||"accountId"},providerId:{type:"string",required:!0,fieldName:e.account?.fields?.providerId||"providerId"},userId:{type:"string",references:{model:e.user?.modelName||"user",field:"id",onDelete:"cascade"},required:!0,fieldName:e.account?.fields?.userId||"userId"},accessToken:{type:"string",required:!1,fieldName:e.account?.fields?.accessToken||"accessToken"},refreshToken:{type:"string",required:!1,fieldName:e.account?.fields?.refreshToken||"refreshToken"},idToken:{type:"string",required:!1,fieldName:e.account?.fields?.idToken||"idToken"},accessTokenExpiresAt:{type:"date",required:!1,fieldName:e.account?.fields?.accessTokenExpiresAt||"accessTokenExpiresAt"},refreshTokenExpiresAt:{type:"date",required:!1,fieldName:e.account?.fields?.accessTokenExpiresAt||"refreshTokenExpiresAt"},scope:{type:"string",required:!1,fieldName:e.account?.fields?.scope||"scope"},password:{type:"string",required:!1,fieldName:e.account?.fields?.password||"password"},createdAt:{type:"date",required:!0,fieldName:e.account?.fields?.createdAt||"createdAt"},updatedAt:{type:"date",required:!0,fieldName:e.account?.fields?.updatedAt||"updatedAt"},...t?.fields},order:3},verification:{modelName:e.verification?.modelName||"verification",fields:{identifier:{type:"string",required:!0,fieldName:e.verification?.fields?.identifier||"identifier"},value:{type:"string",required:!0,fieldName:e.verification?.fields?.value||"value"},expiresAt:{type:"date",required:!0,fieldName:e.verification?.fields?.expiresAt||"expiresAt"},createdAt:{type:"date",required:!1,defaultValue:()=>new Date,fieldName:e.verification?.fields?.createdAt||"createdAt"},updatedAt:{type:"date",required:!1,defaultValue:()=>new Date,fieldName:e.verification?.fields?.updatedAt||"updatedAt"}},order:4},...o,...i?l:{}}};var Q=require("zod");var S=require("kysely"),k=require("kysely");function b(e,s,i){return i==="update"?e:e==null&&s.defaultValue?typeof s.defaultValue=="function"?s.defaultValue():s.defaultValue:e}var X=e=>{let s=h(e);function i(n,t,o){if(n==="id"||n==="_id"||s[o].fields[n].references?.field==="id"){if(typeof t!="string"){if(t instanceof A.ObjectId)return t;if(Array.isArray(t))return t.map(d=>{if(typeof d=="string")try{return new A.ObjectId(d)}catch{return d}if(d instanceof A.ObjectId)return d;throw new Error("Invalid id value")});throw new Error("Invalid id value")}try{return new A.ObjectId(t)}catch{return t}}return t}function l(n,t,o){return n==="id"||s[o].fields[n].references?.field==="id"?t instanceof A.ObjectId?t.toHexString():Array.isArray(t)?t.map(d=>d instanceof A.ObjectId?d.toHexString():d):t:t}function r(n,t){return n==="id"?"_id":s[t].fields[n].fieldName||n}return{transformInput(n,t,o){let d=o==="update"?{}:{_id:new A.ObjectId},c=s[t].fields;for(let u in c){let f=n[u];f===void 0&&(!c[u].defaultValue||o==="update")||(d[c[u].fieldName||u]=b(i(u,f,t),c[u],o))}return d},transformOutput(n,t,o=[]){let d=n.id||n._id?o.length===0||o.includes("id")?{id:n.id?n.id.toString():n._id.toString()}:{}:{},c=s[t].fields;for(let u in c){if(o.length&&!o.includes(u))continue;let f=c[u];f&&(d[u]=l(u,n[f.fieldName||u],t))}return d},convertWhereClause(n,t){if(!n.length)return{};let o=n.map(f=>{let{field:g,value:p,operator:O="eq",connector:q="AND"}=f,m,y=r(g,t);switch(O.toLowerCase()){case"eq":m={[y]:i(g,p,t)};break;case"in":m={[y]:{$in:Array.isArray(p)?i(g,p,t):[i(g,p,t)]}};break;case"gt":m={[y]:{$gt:p}};break;case"gte":m={[y]:{$gte:p}};break;case"lt":m={[y]:{$lt:p}};break;case"lte":m={[y]:{$lte:p}};break;case"ne":m={[y]:{$ne:p}};break;case"contains":m={[y]:{$regex:`.*${p}.*`}};break;case"starts_with":m={[y]:{$regex:`${p}.*`}};break;case"ends_with":m={[y]:{$regex:`.*${p}`}};break;default:throw new Error(`Unsupported operator: ${O}`)}return{condition:m,connector:q}});if(o.length===1)return o[0].condition;let d=o.filter(f=>f.connector==="AND").map(f=>f.condition),c=o.filter(f=>f.connector==="OR").map(f=>f.condition),u={};return d.length&&(u={...u,$and:d}),c.length&&(u={...u,$or:c}),u},getModelName:n=>s[n].modelName,getField:r}},Y=e=>s=>{let i=X(s);return{id:"mongodb-adapter",async create(l){let{model:r,data:n,select:t}=l,o=i.transformInput(n,r,"create");o.id&&delete o.id;let c=(await e.collection(i.getModelName(r)).insertOne(o)).insertedId,u={...o,id:c.toString()};return i.transformOutput(u,r,t)},async findOne(l){let{model:r,where:n,select:t}=l,o=i.convertWhereClause(n,r),d=await e.collection(i.getModelName(r)).findOne(o);return d?i.transformOutput(d,r,t):null},async findMany(l){let{model:r,where:n,limit:t,offset:o,sortBy:d}=l,c=n?i.convertWhereClause(n,r):{},u=e.collection(i.getModelName(r)).find(c);return t&&u.limit(t),o&&u.skip(o),d&&u.sort(i.getField(d.field,r),d.direction==="desc"?-1:1),(await u.toArray()).map(g=>i.transformOutput(g,r))},async update(l){let{model:r,where:n,update:t}=l,o=i.convertWhereClause(n,r),d=i.transformInput(t,r,"update"),c=await e.collection(i.getModelName(r)).findOneAndUpdate(o,{$set:d},{returnDocument:"after"});return c?i.transformOutput(c,r):null},async updateMany(l){let{model:r,where:n,update:t}=l,o=i.convertWhereClause(n,r),d=i.transformInput(t,r,"update");return(await e.collection(i.getModelName(r)).updateMany(o,{$set:d})).modifiedCount},async delete(l){let{model:r,where:n}=l,t=i.convertWhereClause(n,r),o=await e.collection(i.getModelName(r)).findOneAndDelete(t);return o?i.transformOutput(o,r):null},async deleteMany(l){let{model:r,where:n}=l,t=i.convertWhereClause(n,r);return(await e.collection(i.getModelName(r)).deleteMany(t)).deletedCount}}};0&&(module.exports={mongodbAdapter});
|
|
1
|
+
"use strict";var v=Object.defineProperty;var U=Object.getOwnPropertyDescriptor;var L=Object.getOwnPropertyNames;var B=Object.prototype.hasOwnProperty;var E=(e,s)=>{for(var i in s)v(e,i,{get:s[i],enumerable:!0})},M=(e,s,i,l)=>{if(s&&typeof s=="object"||typeof s=="function")for(let r of L(s))!B.call(e,r)&&r!==i&&v(e,r,{get:()=>s[r],enumerable:!(l=U(s,r))||l.enumerable});return e};var V=e=>M(v({},"__esModule",{value:!0}),e);var ee={};E(ee,{mongodbAdapter:()=>Y});module.exports=V(ee);var A=require("mongodb");var a=require("zod"),P=require("better-call"),ne=a.z.object({id:a.z.string(),providerId:a.z.string(),accountId:a.z.string(),userId:a.z.string(),accessToken:a.z.string().nullish(),refreshToken:a.z.string().nullish(),idToken:a.z.string().nullish(),accessTokenExpiresAt:a.z.date().nullish(),refreshTokenExpiresAt:a.z.date().nullish(),scope:a.z.string().nullish(),password:a.z.string().nullish(),createdAt:a.z.date().default(()=>new Date),updatedAt:a.z.date().default(()=>new Date)}),ie=a.z.object({id:a.z.string(),email:a.z.string().transform(e=>e.toLowerCase()),emailVerified:a.z.boolean().default(!1),name:a.z.string(),image:a.z.string().nullish(),createdAt:a.z.date().default(()=>new Date),updatedAt:a.z.date().default(()=>new Date)}),se=a.z.object({id:a.z.string(),userId:a.z.string(),expiresAt:a.z.date(),createdAt:a.z.date().default(()=>new Date),updatedAt:a.z.date().default(()=>new Date),token:a.z.string(),ipAddress:a.z.string().nullish(),userAgent:a.z.string().nullish()}),ae=a.z.object({id:a.z.string(),value:a.z.string(),createdAt:a.z.date().default(()=>new Date),updatedAt:a.z.date().default(()=>new Date),expiresAt:a.z.date(),identifier:a.z.string()});var x=Object.create(null),w=e=>globalThis.process?.env||globalThis.Deno?.env.toObject()||globalThis.__env__||(e?x:globalThis),D=new Proxy(x,{get(e,s){return w()[s]??x[s]},has(e,s){let i=w();return s in i||s in x},set(e,s,i){let l=w(!0);return l[s]=i,!0},deleteProperty(e,s){if(!s)return!1;let i=w(!0);return delete i[s],!0},ownKeys(){let e=w(!0);return Object.keys(e)}});function _(e){return e?e!=="false":!1}var C=typeof process<"u"&&process.env&&process.env.NODE_ENV||"";var $=C==="test"||_(D.TEST);var j=require("nanoid");var R=require("oslo/oauth2"),K=require("zod"),H=require("better-call");var F=require("consola"),T=["info","success","warn","error","debug"];function z(e,s){return T.indexOf(s)<=T.indexOf(e)}var J=(0,F.createConsola)({formatOptions:{date:!1,colors:!0,compact:!0},defaults:{tag:"Better Auth"}}),I=e=>{let s=e?.disabled!==!0,i=e?.level??"error",l=(r,n,t=[])=>{if(!(!s||!z(i,r))){if(!e||typeof e.log!="function"){J[r]("",n,...t);return}e.log(r==="success"?"info":r,n,t)}};return Object.fromEntries(T.map(r=>[r,(...[n,...t])=>l(r,n,t)]))},G=I();var h=e=>{let s=e.plugins?.reduce((d,c)=>{let u=c.schema;if(!u)return d;for(let[f,g]of Object.entries(u))d[f]={fields:{...d[f]?.fields,...g.fields},modelName:g.modelName||f};return d},{}),i=e.rateLimit?.storage==="database",l={rateLimit:{modelName:e.rateLimit?.modelName||"rateLimit",fields:{key:{type:"string",fieldName:e.rateLimit?.fields?.key||"key"},count:{type:"number",fieldName:e.rateLimit?.fields?.count||"count"},lastRequest:{type:"number",fieldName:e.rateLimit?.fields?.lastRequest||"lastRequest"}}}},{user:r,session:n,account:t,...o}=s||{};return{user:{modelName:e.user?.modelName||"user",fields:{name:{type:"string",required:!0,fieldName:e.user?.fields?.name||"name"},email:{type:"string",unique:!0,required:!0,fieldName:e.user?.fields?.email||"email"},emailVerified:{type:"boolean",defaultValue:()=>!1,required:!0,fieldName:e.user?.fields?.emailVerified||"emailVerified"},image:{type:"string",required:!1,fieldName:e.user?.fields?.image||"image"},createdAt:{type:"date",defaultValue:()=>new Date,required:!0,fieldName:e.user?.fields?.createdAt||"createdAt"},updatedAt:{type:"date",defaultValue:()=>new Date,required:!0,fieldName:e.user?.fields?.updatedAt||"updatedAt"},...r?.fields,...e.user?.additionalFields},order:1},session:{modelName:e.session?.modelName||"session",fields:{expiresAt:{type:"date",required:!0,fieldName:e.session?.fields?.expiresAt||"expiresAt"},token:{type:"string",required:!0,fieldName:e.session?.fields?.token||"token",unique:!0},createdAt:{type:"date",required:!0,fieldName:e.session?.fields?.createdAt||"createdAt"},updatedAt:{type:"date",required:!0,fieldName:e.session?.fields?.updatedAt||"updatedAt"},ipAddress:{type:"string",required:!1,fieldName:e.session?.fields?.ipAddress||"ipAddress"},userAgent:{type:"string",required:!1,fieldName:e.session?.fields?.userAgent||"userAgent"},userId:{type:"string",fieldName:e.session?.fields?.userId||"userId",references:{model:e.user?.modelName||"user",field:"id",onDelete:"cascade"},required:!0},...n?.fields,...e.session?.additionalFields},order:2},account:{modelName:e.account?.modelName||"account",fields:{accountId:{type:"string",required:!0,fieldName:e.account?.fields?.accountId||"accountId"},providerId:{type:"string",required:!0,fieldName:e.account?.fields?.providerId||"providerId"},userId:{type:"string",references:{model:e.user?.modelName||"user",field:"id",onDelete:"cascade"},required:!0,fieldName:e.account?.fields?.userId||"userId"},accessToken:{type:"string",required:!1,fieldName:e.account?.fields?.accessToken||"accessToken"},refreshToken:{type:"string",required:!1,fieldName:e.account?.fields?.refreshToken||"refreshToken"},idToken:{type:"string",required:!1,fieldName:e.account?.fields?.idToken||"idToken"},accessTokenExpiresAt:{type:"date",required:!1,fieldName:e.account?.fields?.accessTokenExpiresAt||"accessTokenExpiresAt"},refreshTokenExpiresAt:{type:"date",required:!1,fieldName:e.account?.fields?.accessTokenExpiresAt||"refreshTokenExpiresAt"},scope:{type:"string",required:!1,fieldName:e.account?.fields?.scope||"scope"},password:{type:"string",required:!1,fieldName:e.account?.fields?.password||"password"},createdAt:{type:"date",required:!0,fieldName:e.account?.fields?.createdAt||"createdAt"},updatedAt:{type:"date",required:!0,fieldName:e.account?.fields?.updatedAt||"updatedAt"},...t?.fields},order:3},verification:{modelName:e.verification?.modelName||"verification",fields:{identifier:{type:"string",required:!0,fieldName:e.verification?.fields?.identifier||"identifier"},value:{type:"string",required:!0,fieldName:e.verification?.fields?.value||"value"},expiresAt:{type:"date",required:!0,fieldName:e.verification?.fields?.expiresAt||"expiresAt"},createdAt:{type:"date",required:!1,defaultValue:()=>new Date,fieldName:e.verification?.fields?.createdAt||"createdAt"},updatedAt:{type:"date",required:!1,defaultValue:()=>new Date,fieldName:e.verification?.fields?.updatedAt||"updatedAt"}},order:4},...o,...i?l:{}}};var Q=require("zod");var S=require("kysely"),k=require("kysely");function b(e,s,i){return i==="update"?e:e==null&&s.defaultValue?typeof s.defaultValue=="function"?s.defaultValue():s.defaultValue:e}var X=e=>{let s=h(e);function i(n,t,o){if(n==="id"||n==="_id"||s[o].fields[n].references?.field==="id"){if(typeof t!="string"){if(t instanceof A.ObjectId)return t;if(Array.isArray(t))return t.map(d=>{if(typeof d=="string")try{return new A.ObjectId(d)}catch{return d}if(d instanceof A.ObjectId)return d;throw new Error("Invalid id value")});throw new Error("Invalid id value")}try{return new A.ObjectId(t)}catch{return t}}return t}function l(n,t,o){return n==="id"||s[o].fields[n].references?.field==="id"?t instanceof A.ObjectId?t.toHexString():Array.isArray(t)?t.map(d=>d instanceof A.ObjectId?d.toHexString():d):t:t}function r(n,t){return n==="id"?"_id":s[t].fields[n].fieldName||n}return{transformInput(n,t,o){let d=o==="update"?{}:{_id:new A.ObjectId},c=s[t].fields;for(let u in c){let f=n[u];f===void 0&&(!c[u].defaultValue||o==="update")||(d[c[u].fieldName||u]=b(i(u,f,t),c[u],o))}return d},transformOutput(n,t,o=[]){let d=n.id||n._id?o.length===0||o.includes("id")?{id:n.id?n.id.toString():n._id.toString()}:{}:{},c=s[t].fields;for(let u in c){if(o.length&&!o.includes(u))continue;let f=c[u];f&&(d[u]=l(u,n[f.fieldName||u],t))}return d},convertWhereClause(n,t){if(!n.length)return{};let o=n.map(f=>{let{field:g,value:p,operator:O="eq",connector:q="AND"}=f,m,y=r(g,t);switch(O.toLowerCase()){case"eq":m={[y]:i(g,p,t)};break;case"in":m={[y]:{$in:Array.isArray(p)?i(g,p,t):[i(g,p,t)]}};break;case"gt":m={[y]:{$gt:p}};break;case"gte":m={[y]:{$gte:p}};break;case"lt":m={[y]:{$lt:p}};break;case"lte":m={[y]:{$lte:p}};break;case"ne":m={[y]:{$ne:p}};break;case"contains":m={[y]:{$regex:`.*${p}.*`}};break;case"starts_with":m={[y]:{$regex:`${p}.*`}};break;case"ends_with":m={[y]:{$regex:`.*${p}`}};break;default:throw new Error(`Unsupported operator: ${O}`)}return{condition:m,connector:q}});if(o.length===1)return o[0].condition;let d=o.filter(f=>f.connector==="AND").map(f=>f.condition),c=o.filter(f=>f.connector==="OR").map(f=>f.condition),u={};return d.length&&(u={...u,$and:d}),c.length&&(u={...u,$or:c}),u},getModelName:n=>s[n].modelName,getField:r}},Y=e=>s=>{let i=X(s);return{id:"mongodb-adapter",async create(l){let{model:r,data:n,select:t}=l,o=i.transformInput(n,r,"create");o.id&&delete o.id;let c=(await e.collection(i.getModelName(r)).insertOne(o)).insertedId,u={...o,id:c.toString()};return i.transformOutput(u,r,t)},async findOne(l){let{model:r,where:n,select:t}=l,o=i.convertWhereClause(n,r),d=await e.collection(i.getModelName(r)).findOne(o);return d?i.transformOutput(d,r,t):null},async findMany(l){let{model:r,where:n,limit:t,offset:o,sortBy:d}=l,c=n?i.convertWhereClause(n,r):{},u=e.collection(i.getModelName(r)).find(c);return t&&u.limit(t),o&&u.skip(o),d&&u.sort(i.getField(d.field,r),d.direction==="desc"?-1:1),(await u.toArray()).map(g=>i.transformOutput(g,r))},async update(l){let{model:r,where:n,update:t}=l,o=i.convertWhereClause(n,r),d=i.transformInput(t,r,"update"),c=await e.collection(i.getModelName(r)).findOneAndUpdate(o,{$set:d},{returnDocument:"after"});return c?i.transformOutput(c,r):null},async updateMany(l){let{model:r,where:n,update:t}=l,o=i.convertWhereClause(n,r),d=i.transformInput(t,r,"update");return(await e.collection(i.getModelName(r)).updateMany(o,{$set:d})).modifiedCount},async delete(l){let{model:r,where:n}=l,t=i.convertWhereClause(n,r),o=await e.collection(i.getModelName(r)).findOneAndDelete(t);return o?i.transformOutput(o,r):null},async deleteMany(l){let{model:r,where:n}=l,t=i.convertWhereClause(n,r);return(await e.collection(i.getModelName(r)).deleteMany(t)).deletedCount}}};0&&(module.exports={mongodbAdapter});
|
|
@@ -1,10 +1,11 @@
|
|
|
1
1
|
import { Db } from 'mongodb';
|
|
2
|
-
import { B as BetterAuthOptions, W as Where } from '../auth-
|
|
2
|
+
import { B as BetterAuthOptions, W as Where } from '../auth-DCr9mzAB.cjs';
|
|
3
3
|
import 'kysely';
|
|
4
|
+
import '../schema-DG_8mn16.cjs';
|
|
4
5
|
import 'zod';
|
|
5
6
|
import 'better-call';
|
|
6
7
|
import '../helper-Bi8FQwDD.cjs';
|
|
7
|
-
import '../index-
|
|
8
|
+
import '../index-CHjmU47P.cjs';
|
|
8
9
|
import 'jose';
|
|
9
10
|
import 'better-sqlite3';
|
|
10
11
|
|
|
@@ -1,10 +1,11 @@
|
|
|
1
1
|
import { Db } from 'mongodb';
|
|
2
|
-
import { B as BetterAuthOptions, W as Where } from '../auth-
|
|
2
|
+
import { B as BetterAuthOptions, W as Where } from '../auth-B_LFm6_Y.js';
|
|
3
3
|
import 'kysely';
|
|
4
|
+
import '../schema-DG_8mn16.js';
|
|
4
5
|
import 'zod';
|
|
5
6
|
import 'better-call';
|
|
6
7
|
import '../helper-Bi8FQwDD.js';
|
|
7
|
-
import '../index-
|
|
8
|
+
import '../index-Dcbbo2jq.js';
|
|
8
9
|
import 'jose';
|
|
9
10
|
import 'better-sqlite3';
|
|
10
11
|
|
package/dist/adapters/mongodb.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
import{ObjectId as A}from"mongodb";import{z as a}from"zod";import{APIError as C}from"better-call";var $=a.object({id:a.string(),providerId:a.string(),accountId:a.string(),userId:a.string(),accessToken:a.string().nullish(),refreshToken:a.string().nullish(),idToken:a.string().nullish(),accessTokenExpiresAt:a.date().nullish(),refreshTokenExpiresAt:a.date().nullish(),scope:a.string().nullish(),password:a.string().nullish(),createdAt:a.date().default(()=>new Date),updatedAt:a.date().default(()=>new Date)}),j=a.object({id:a.string(),email:a.string().transform(e=>e.toLowerCase()),emailVerified:a.boolean().default(!1),name:a.string(),image:a.string().nullish(),createdAt:a.date().default(()=>new Date),updatedAt:a.date().default(()=>new Date)}),W=a.object({id:a.string(),userId:a.string(),expiresAt:a.date(),createdAt:a.date().default(()=>new Date),updatedAt:a.date().default(()=>new Date),token:a.string(),ipAddress:a.string().nullish(),userAgent:a.string().nullish()}),K=a.object({id:a.string(),value:a.string(),createdAt:a.date().default(()=>new Date),updatedAt:a.date().default(()=>new Date),expiresAt:a.date(),identifier:a.string()});var x=Object.create(null),w=e=>globalThis.process?.env||globalThis.Deno?.env.toObject()||globalThis.__env__||(e?x:globalThis),k=new Proxy(x,{get(e,d){return w()[d]??x[d]},has(e,d){let i=w();return d in i||d in x},set(e,d,i){let c=w(!0);return c[d]=i,!0},deleteProperty(e,d){if(!d)return!1;let i=w(!0);return delete i[d],!0},ownKeys(){let e=w(!0);return Object.keys(e)}});function R(e){return e?e!=="false":!1}var I=typeof process<"u"&&process.env&&process.env.NODE_ENV||"";var N=I==="test"||R(k.TEST);import{nanoid as te}from"nanoid";import{generateCodeVerifier as ue,generateState as le}from"oslo/oauth2";import{z as fe}from"zod";import{APIError as me}from"better-call";import{createConsola as q}from"consola";var v=["info","success","warn","error","debug"];function U(e,d){return v.indexOf(d)<=v.indexOf(e)}var L=q({formatOptions:{date:!1,colors:!0,compact:!0},defaults:{tag:"Better Auth"}}),O=e=>{let d=e?.disabled!==!0,i=e?.level??"error",c=(n,r,t=[])=>{if(!(!d||!U(i,n))){if(!e||typeof e.log!="function"){L[n]("",r,...t);return}e.log(n==="success"?"info":n,r,t)}};return Object.fromEntries(v.map(n=>[n,(...[r,...t])=>c(n,r,t)]))},B=O();var h=e=>{let d=e.plugins?.reduce((o,l)=>{let u=l.schema;if(!u)return o;for(let[f,g]of Object.entries(u))o[f]={fields:{...o[f]?.fields,...g.fields},modelName:g.modelName||f};return o},{}),i=e.rateLimit?.storage==="database",c={rateLimit:{modelName:e.rateLimit?.modelName||"rateLimit",fields:{key:{type:"string",fieldName:e.rateLimit?.fields?.key||"key"},count:{type:"number",fieldName:e.rateLimit?.fields?.count||"count"},lastRequest:{type:"number",fieldName:e.rateLimit?.fields?.lastRequest||"lastRequest"}}}},{user:n,session:r,account:t,...s}=d||{};return{user:{modelName:e.user?.modelName||"user",fields:{name:{type:"string",required:!0,fieldName:e.user?.fields?.name||"name"},email:{type:"string",unique:!0,required:!0,fieldName:e.user?.fields?.email||"email"},emailVerified:{type:"boolean",defaultValue:()=>!1,required:!0,fieldName:e.user?.fields?.emailVerified||"emailVerified"},image:{type:"string",required:!1,fieldName:e.user?.fields?.image||"image"},createdAt:{type:"date",defaultValue:()=>new Date,required:!0,fieldName:e.user?.fields?.createdAt||"createdAt"},updatedAt:{type:"date",defaultValue:()=>new Date,required:!0,fieldName:e.user?.fields?.updatedAt||"updatedAt"},...n?.fields,...e.user?.additionalFields},order:1},session:{modelName:e.session?.modelName||"session",fields:{expiresAt:{type:"date",required:!0,fieldName:e.session?.fields?.expiresAt||"expiresAt"},token:{type:"string",required:!0,fieldName:e.session?.fields?.token||"token",unique:!0},createdAt:{type:"date",required:!0,fieldName:e.session?.fields?.createdAt||"createdAt"},updatedAt:{type:"date",required:!0,fieldName:e.session?.fields?.updatedAt||"updatedAt"},ipAddress:{type:"string",required:!1,fieldName:e.session?.fields?.ipAddress||"ipAddress"},userAgent:{type:"string",required:!1,fieldName:e.session?.fields?.userAgent||"userAgent"},userId:{type:"string",fieldName:e.session?.fields?.userId||"userId",references:{model:e.user?.modelName||"user",field:"id",onDelete:"cascade"},required:!0},...r?.fields,...e.session?.additionalFields},order:2},account:{modelName:e.account?.modelName||"account",fields:{accountId:{type:"string",required:!0,fieldName:e.account?.fields?.accountId||"accountId"},providerId:{type:"string",required:!0,fieldName:e.account?.fields?.providerId||"providerId"},userId:{type:"string",references:{model:e.user?.modelName||"user",field:"id",onDelete:"cascade"},required:!0,fieldName:e.account?.fields?.userId||"userId"},accessToken:{type:"string",required:!1,fieldName:e.account?.fields?.accessToken||"accessToken"},refreshToken:{type:"string",required:!1,fieldName:e.account?.fields?.refreshToken||"refreshToken"},idToken:{type:"string",required:!1,fieldName:e.account?.fields?.idToken||"idToken"},accessTokenExpiresAt:{type:"date",required:!1,fieldName:e.account?.fields?.accessTokenExpiresAt||"accessTokenExpiresAt"},refreshTokenExpiresAt:{type:"date",required:!1,fieldName:e.account?.fields?.accessTokenExpiresAt||"refreshTokenExpiresAt"},scope:{type:"string",required:!1,fieldName:e.account?.fields?.scope||"scope"},password:{type:"string",required:!1,fieldName:e.account?.fields?.password||"password"},createdAt:{type:"date",required:!0,fieldName:e.account?.fields?.createdAt||"createdAt"},updatedAt:{type:"date",required:!0,fieldName:e.account?.fields?.updatedAt||"updatedAt"},...t?.fields},order:3},verification:{modelName:e.verification?.modelName||"verification",fields:{identifier:{type:"string",required:!0,fieldName:e.verification?.fields?.identifier||"identifier"},value:{type:"string",required:!0,fieldName:e.verification?.fields?.value||"value"},expiresAt:{type:"date",required:!0,fieldName:e.verification?.fields?.expiresAt||"expiresAt"},createdAt:{type:"date",required:!1,defaultValue:()=>new Date,fieldName:e.verification?.fields?.createdAt||"createdAt"},updatedAt:{type:"date",required:!1,defaultValue:()=>new Date,fieldName:e.verification?.fields?.updatedAt||"updatedAt"}},order:4},...s,...i?c:{}}};import{z as $e}from"zod";import{Kysely as Ke,MssqlDialect as He}from"kysely";import{MysqlDialect as Je,PostgresDialect as Ge,SqliteDialect as Qe}from"kysely";function b(e,d,i){return i==="update"?e:e==null&&d.defaultValue?typeof d.defaultValue=="function"?d.defaultValue():d.defaultValue:e}var E=e=>{let d=h(e);function i(r,t,s){if(r==="id"||r==="_id"||d[s].fields[r].references?.field==="id"){if(typeof t!="string"){if(t instanceof A)return t;if(Array.isArray(t))return t.map(o=>{if(typeof o=="string")try{return new A(o)}catch{return o}if(o instanceof A)return o;throw new Error("Invalid id value")});throw new Error("Invalid id value")}try{return new A(t)}catch{return t}}return t}function c(r,t,s){return r==="id"||d[s].fields[r].references?.field==="id"?t instanceof A?t.toHexString():Array.isArray(t)?t.map(o=>o instanceof A?o.toHexString():o):t:t}function n(r,t){return r==="id"?"_id":d[t].fields[r].fieldName||r}return{transformInput(r,t,s){let o=s==="update"?{}:{_id:new A},l=d[t].fields;for(let u in l){let f=r[u];f===void 0&&(!l[u].defaultValue||s==="update")||(o[l[u].fieldName||u]=b(i(u,f,t),l[u],s))}return o},transformOutput(r,t,s=[]){let o=r.id||r._id?s.length===0||s.includes("id")?{id:r.id?r.id.toString():r._id.toString()}:{}:{},l=d[t].fields;for(let u in l){if(s.length&&!s.includes(u))continue;let f=l[u];f&&(o[u]=c(u,r[f.fieldName||u],t))}return o},convertWhereClause(r,t){if(!r.length)return{};let s=r.map(f=>{let{field:g,value:p,operator:T="eq",connector:F="AND"}=f,m,y=n(g,t);switch(T.toLowerCase()){case"eq":m={[y]:i(g,p,t)};break;case"in":m={[y]:{$in:Array.isArray(p)?i(g,p,t):[i(g,p,t)]}};break;case"gt":m={[y]:{$gt:p}};break;case"gte":m={[y]:{$gte:p}};break;case"lt":m={[y]:{$lt:p}};break;case"lte":m={[y]:{$lte:p}};break;case"ne":m={[y]:{$ne:p}};break;case"contains":m={[y]:{$regex:`.*${p}.*`}};break;case"starts_with":m={[y]:{$regex:`${p}.*`}};break;case"ends_with":m={[y]:{$regex:`.*${p}`}};break;default:throw new Error(`Unsupported operator: ${T}`)}return{condition:m,connector:F}});if(s.length===1)return s[0].condition;let o=s.filter(f=>f.connector==="AND").map(f=>f.condition),l=s.filter(f=>f.connector==="OR").map(f=>f.condition),u={};return o.length&&(u={...u,$and:o}),l.length&&(u={...u,$or:l}),u},getModelName:r=>d[r].modelName,getField:n}},Ct=e=>d=>{let i=E(d);return{id:"mongodb-adapter",async create(c){let{model:n,data:r,select:t}=c,s=i.transformInput(r,n,"create");s.id&&delete s.id;let l=(await e.collection(i.getModelName(n)).insertOne(s)).insertedId,u={...s,id:l.toString()};return i.transformOutput(u,n,t)},async findOne(c){let{model:n,where:r,select:t}=c,s=i.convertWhereClause(r,n),o=await e.collection(i.getModelName(n)).findOne(s);return o?i.transformOutput(o,n,t):null},async findMany(c){let{model:n,where:r,limit:t,offset:s,sortBy:o}=c,l=r?i.convertWhereClause(r,n):{},u=e.collection(i.getModelName(n)).find(l);return t&&u.limit(t),s&&u.skip(s),o&&u.sort(i.getField(o.field,n),o.direction==="desc"?-1:1),(await u.toArray()).map(g=>i.transformOutput(g,n))},async update(c){let{model:n,where:r,update:t}=c,s=i.convertWhereClause(r,n),o=i.transformInput(t,n,"update"),l=await e.collection(i.getModelName(n)).findOneAndUpdate(s,{$set:o},{returnDocument:"after"});return l?i.transformOutput(l,n):null},async updateMany(c){let{model:n,where:r,update:t}=c,s=i.convertWhereClause(r,n),o=i.transformInput(t,n,"update");return(await e.collection(i.getModelName(n)).updateMany(s,{$set:o})).modifiedCount},async delete(c){let{model:n,where:r}=c,t=i.convertWhereClause(r,n),s=await e.collection(i.getModelName(n)).findOneAndDelete(t);return s?i.transformOutput(s,n):null},async deleteMany(c){let{model:n,where:r}=c,t=i.convertWhereClause(r,n);return(await e.collection(i.getModelName(n)).deleteMany(t)).deletedCount}}};export{Ct as mongodbAdapter};
|
|
1
|
+
import{ObjectId as A}from"mongodb";import{z as a}from"zod";import{APIError as C}from"better-call";var $=a.object({id:a.string(),providerId:a.string(),accountId:a.string(),userId:a.string(),accessToken:a.string().nullish(),refreshToken:a.string().nullish(),idToken:a.string().nullish(),accessTokenExpiresAt:a.date().nullish(),refreshTokenExpiresAt:a.date().nullish(),scope:a.string().nullish(),password:a.string().nullish(),createdAt:a.date().default(()=>new Date),updatedAt:a.date().default(()=>new Date)}),j=a.object({id:a.string(),email:a.string().transform(e=>e.toLowerCase()),emailVerified:a.boolean().default(!1),name:a.string(),image:a.string().nullish(),createdAt:a.date().default(()=>new Date),updatedAt:a.date().default(()=>new Date)}),W=a.object({id:a.string(),userId:a.string(),expiresAt:a.date(),createdAt:a.date().default(()=>new Date),updatedAt:a.date().default(()=>new Date),token:a.string(),ipAddress:a.string().nullish(),userAgent:a.string().nullish()}),K=a.object({id:a.string(),value:a.string(),createdAt:a.date().default(()=>new Date),updatedAt:a.date().default(()=>new Date),expiresAt:a.date(),identifier:a.string()});var x=Object.create(null),w=e=>globalThis.process?.env||globalThis.Deno?.env.toObject()||globalThis.__env__||(e?x:globalThis),k=new Proxy(x,{get(e,d){return w()[d]??x[d]},has(e,d){let i=w();return d in i||d in x},set(e,d,i){let c=w(!0);return c[d]=i,!0},deleteProperty(e,d){if(!d)return!1;let i=w(!0);return delete i[d],!0},ownKeys(){let e=w(!0);return Object.keys(e)}});function F(e){return e?e!=="false":!1}var I=typeof process<"u"&&process.env&&process.env.NODE_ENV||"";var N=I==="test"||F(k.TEST);import{nanoid as te}from"nanoid";import{generateCodeVerifier as ue,generateState as le}from"oslo/oauth2";import{z as fe}from"zod";import{APIError as me}from"better-call";import{createConsola as q}from"consola";var v=["info","success","warn","error","debug"];function U(e,d){return v.indexOf(d)<=v.indexOf(e)}var L=q({formatOptions:{date:!1,colors:!0,compact:!0},defaults:{tag:"Better Auth"}}),O=e=>{let d=e?.disabled!==!0,i=e?.level??"error",c=(n,r,t=[])=>{if(!(!d||!U(i,n))){if(!e||typeof e.log!="function"){L[n]("",r,...t);return}e.log(n==="success"?"info":n,r,t)}};return Object.fromEntries(v.map(n=>[n,(...[r,...t])=>c(n,r,t)]))},B=O();var h=e=>{let d=e.plugins?.reduce((o,l)=>{let u=l.schema;if(!u)return o;for(let[f,g]of Object.entries(u))o[f]={fields:{...o[f]?.fields,...g.fields},modelName:g.modelName||f};return o},{}),i=e.rateLimit?.storage==="database",c={rateLimit:{modelName:e.rateLimit?.modelName||"rateLimit",fields:{key:{type:"string",fieldName:e.rateLimit?.fields?.key||"key"},count:{type:"number",fieldName:e.rateLimit?.fields?.count||"count"},lastRequest:{type:"number",fieldName:e.rateLimit?.fields?.lastRequest||"lastRequest"}}}},{user:n,session:r,account:t,...s}=d||{};return{user:{modelName:e.user?.modelName||"user",fields:{name:{type:"string",required:!0,fieldName:e.user?.fields?.name||"name"},email:{type:"string",unique:!0,required:!0,fieldName:e.user?.fields?.email||"email"},emailVerified:{type:"boolean",defaultValue:()=>!1,required:!0,fieldName:e.user?.fields?.emailVerified||"emailVerified"},image:{type:"string",required:!1,fieldName:e.user?.fields?.image||"image"},createdAt:{type:"date",defaultValue:()=>new Date,required:!0,fieldName:e.user?.fields?.createdAt||"createdAt"},updatedAt:{type:"date",defaultValue:()=>new Date,required:!0,fieldName:e.user?.fields?.updatedAt||"updatedAt"},...n?.fields,...e.user?.additionalFields},order:1},session:{modelName:e.session?.modelName||"session",fields:{expiresAt:{type:"date",required:!0,fieldName:e.session?.fields?.expiresAt||"expiresAt"},token:{type:"string",required:!0,fieldName:e.session?.fields?.token||"token",unique:!0},createdAt:{type:"date",required:!0,fieldName:e.session?.fields?.createdAt||"createdAt"},updatedAt:{type:"date",required:!0,fieldName:e.session?.fields?.updatedAt||"updatedAt"},ipAddress:{type:"string",required:!1,fieldName:e.session?.fields?.ipAddress||"ipAddress"},userAgent:{type:"string",required:!1,fieldName:e.session?.fields?.userAgent||"userAgent"},userId:{type:"string",fieldName:e.session?.fields?.userId||"userId",references:{model:e.user?.modelName||"user",field:"id",onDelete:"cascade"},required:!0},...r?.fields,...e.session?.additionalFields},order:2},account:{modelName:e.account?.modelName||"account",fields:{accountId:{type:"string",required:!0,fieldName:e.account?.fields?.accountId||"accountId"},providerId:{type:"string",required:!0,fieldName:e.account?.fields?.providerId||"providerId"},userId:{type:"string",references:{model:e.user?.modelName||"user",field:"id",onDelete:"cascade"},required:!0,fieldName:e.account?.fields?.userId||"userId"},accessToken:{type:"string",required:!1,fieldName:e.account?.fields?.accessToken||"accessToken"},refreshToken:{type:"string",required:!1,fieldName:e.account?.fields?.refreshToken||"refreshToken"},idToken:{type:"string",required:!1,fieldName:e.account?.fields?.idToken||"idToken"},accessTokenExpiresAt:{type:"date",required:!1,fieldName:e.account?.fields?.accessTokenExpiresAt||"accessTokenExpiresAt"},refreshTokenExpiresAt:{type:"date",required:!1,fieldName:e.account?.fields?.accessTokenExpiresAt||"refreshTokenExpiresAt"},scope:{type:"string",required:!1,fieldName:e.account?.fields?.scope||"scope"},password:{type:"string",required:!1,fieldName:e.account?.fields?.password||"password"},createdAt:{type:"date",required:!0,fieldName:e.account?.fields?.createdAt||"createdAt"},updatedAt:{type:"date",required:!0,fieldName:e.account?.fields?.updatedAt||"updatedAt"},...t?.fields},order:3},verification:{modelName:e.verification?.modelName||"verification",fields:{identifier:{type:"string",required:!0,fieldName:e.verification?.fields?.identifier||"identifier"},value:{type:"string",required:!0,fieldName:e.verification?.fields?.value||"value"},expiresAt:{type:"date",required:!0,fieldName:e.verification?.fields?.expiresAt||"expiresAt"},createdAt:{type:"date",required:!1,defaultValue:()=>new Date,fieldName:e.verification?.fields?.createdAt||"createdAt"},updatedAt:{type:"date",required:!1,defaultValue:()=>new Date,fieldName:e.verification?.fields?.updatedAt||"updatedAt"}},order:4},...s,...i?c:{}}};import{z as $e}from"zod";import{Kysely as Ke,MssqlDialect as He}from"kysely";import{MysqlDialect as Je,PostgresDialect as Ge,SqliteDialect as Qe}from"kysely";function b(e,d,i){return i==="update"?e:e==null&&d.defaultValue?typeof d.defaultValue=="function"?d.defaultValue():d.defaultValue:e}var M=e=>{let d=h(e);function i(r,t,s){if(r==="id"||r==="_id"||d[s].fields[r].references?.field==="id"){if(typeof t!="string"){if(t instanceof A)return t;if(Array.isArray(t))return t.map(o=>{if(typeof o=="string")try{return new A(o)}catch{return o}if(o instanceof A)return o;throw new Error("Invalid id value")});throw new Error("Invalid id value")}try{return new A(t)}catch{return t}}return t}function c(r,t,s){return r==="id"||d[s].fields[r].references?.field==="id"?t instanceof A?t.toHexString():Array.isArray(t)?t.map(o=>o instanceof A?o.toHexString():o):t:t}function n(r,t){return r==="id"?"_id":d[t].fields[r].fieldName||r}return{transformInput(r,t,s){let o=s==="update"?{}:{_id:new A},l=d[t].fields;for(let u in l){let f=r[u];f===void 0&&(!l[u].defaultValue||s==="update")||(o[l[u].fieldName||u]=b(i(u,f,t),l[u],s))}return o},transformOutput(r,t,s=[]){let o=r.id||r._id?s.length===0||s.includes("id")?{id:r.id?r.id.toString():r._id.toString()}:{}:{},l=d[t].fields;for(let u in l){if(s.length&&!s.includes(u))continue;let f=l[u];f&&(o[u]=c(u,r[f.fieldName||u],t))}return o},convertWhereClause(r,t){if(!r.length)return{};let s=r.map(f=>{let{field:g,value:p,operator:T="eq",connector:R="AND"}=f,m,y=n(g,t);switch(T.toLowerCase()){case"eq":m={[y]:i(g,p,t)};break;case"in":m={[y]:{$in:Array.isArray(p)?i(g,p,t):[i(g,p,t)]}};break;case"gt":m={[y]:{$gt:p}};break;case"gte":m={[y]:{$gte:p}};break;case"lt":m={[y]:{$lt:p}};break;case"lte":m={[y]:{$lte:p}};break;case"ne":m={[y]:{$ne:p}};break;case"contains":m={[y]:{$regex:`.*${p}.*`}};break;case"starts_with":m={[y]:{$regex:`${p}.*`}};break;case"ends_with":m={[y]:{$regex:`.*${p}`}};break;default:throw new Error(`Unsupported operator: ${T}`)}return{condition:m,connector:R}});if(s.length===1)return s[0].condition;let o=s.filter(f=>f.connector==="AND").map(f=>f.condition),l=s.filter(f=>f.connector==="OR").map(f=>f.condition),u={};return o.length&&(u={...u,$and:o}),l.length&&(u={...u,$or:l}),u},getModelName:r=>d[r].modelName,getField:n}},Ct=e=>d=>{let i=M(d);return{id:"mongodb-adapter",async create(c){let{model:n,data:r,select:t}=c,s=i.transformInput(r,n,"create");s.id&&delete s.id;let l=(await e.collection(i.getModelName(n)).insertOne(s)).insertedId,u={...s,id:l.toString()};return i.transformOutput(u,n,t)},async findOne(c){let{model:n,where:r,select:t}=c,s=i.convertWhereClause(r,n),o=await e.collection(i.getModelName(n)).findOne(s);return o?i.transformOutput(o,n,t):null},async findMany(c){let{model:n,where:r,limit:t,offset:s,sortBy:o}=c,l=r?i.convertWhereClause(r,n):{},u=e.collection(i.getModelName(n)).find(l);return t&&u.limit(t),s&&u.skip(s),o&&u.sort(i.getField(o.field,n),o.direction==="desc"?-1:1),(await u.toArray()).map(g=>i.transformOutput(g,n))},async update(c){let{model:n,where:r,update:t}=c,s=i.convertWhereClause(r,n),o=i.transformInput(t,n,"update"),l=await e.collection(i.getModelName(n)).findOneAndUpdate(s,{$set:o},{returnDocument:"after"});return l?i.transformOutput(l,n):null},async updateMany(c){let{model:n,where:r,update:t}=c,s=i.convertWhereClause(r,n),o=i.transformInput(t,n,"update");return(await e.collection(i.getModelName(n)).updateMany(s,{$set:o})).modifiedCount},async delete(c){let{model:n,where:r}=c,t=i.convertWhereClause(r,n),s=await e.collection(i.getModelName(n)).findOneAndDelete(t);return s?i.transformOutput(s,n):null},async deleteMany(c){let{model:n,where:r}=c,t=i.convertWhereClause(r,n);return(await e.collection(i.getModelName(n)).deleteMany(t)).deletedCount}}};export{Ct as mongodbAdapter};
|
package/dist/adapters/prisma.cjs
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";var k=Object.defineProperty;var B=Object.getOwnPropertyDescriptor;var L=Object.getOwnPropertyNames;var P=Object.prototype.hasOwnProperty;var M=(e,n)=>{for(var d in n)k(e,d,{get:n[d],enumerable:!0})},V=(e,n,d,u)=>{if(n&&typeof n=="object"||typeof n=="function")for(let c of L(n))!P.call(e,c)&&c!==d&&k(e,c,{get:()=>n[c],enumerable:!(u=B(n,c))||u.enumerable});return e};var E=e=>V(k({},"__esModule",{value:!0}),e);var Y={};M(Y,{prismaAdapter:()=>X});module.exports=E(Y);var i=require("zod"),C=require("better-call"),ne=i.z.object({id:i.z.string(),providerId:i.z.string(),accountId:i.z.string(),userId:i.z.string(),accessToken:i.z.string().nullish(),refreshToken:i.z.string().nullish(),idToken:i.z.string().nullish(),accessTokenExpiresAt:i.z.date().nullish(),refreshTokenExpiresAt:i.z.date().nullish(),scope:i.z.string().nullish(),password:i.z.string().nullish(),createdAt:i.z.date().default(()=>new Date),updatedAt:i.z.date().default(()=>new Date)}),ie=i.z.object({id:i.z.string(),email:i.z.string().transform(e=>e.toLowerCase()),emailVerified:i.z.boolean().default(!1),name:i.z.string(),image:i.z.string().nullish(),createdAt:i.z.date().default(()=>new Date),updatedAt:i.z.date().default(()=>new Date)}),se=i.z.object({id:i.z.string(),userId:i.z.string(),expiresAt:i.z.date(),createdAt:i.z.date().default(()=>new Date),updatedAt:i.z.date().default(()=>new Date),token:i.z.string(),ipAddress:i.z.string().nullish(),userAgent:i.z.string().nullish()}),ae=i.z.object({id:i.z.string(),value:i.z.string(),createdAt:i.z.date().default(()=>new Date),updatedAt:i.z.date().default(()=>new Date),expiresAt:i.z.date(),identifier:i.z.string()});var v=Object.create(null),x=e=>globalThis.process?.env||globalThis.Deno?.env.toObject()||globalThis.__env__||(e?v:globalThis),I=new Proxy(v,{get(e,n){return x()[n]??v[n]},has(e,n){let d=x();return n in d||n in v},set(e,n,d){let u=x(!0);return u[n]=d,!0},deleteProperty(e,n){if(!n)return!1;let d=x(!0);return delete d[n],!0},ownKeys(){let e=x(!0);return Object.keys(e)}});function _(e){return e?e!=="false":!1}var j=typeof process<"u"&&process.env&&process.env.NODE_ENV||"";var K=j==="test"||_(I.TEST);var O=require("nanoid"),b=e=>(0,O.nanoid)(e);var D=require("oslo/oauth2"),W=require("zod"),$=require("better-call");var h=class extends Error{constructor(n,d){super(n),this.name="BetterAuthError",this.message=n,this.cause=d,this.stack=""}};var N=require("consola"),F=["info","success","warn","error","debug"];function H(e,n){return F.indexOf(n)<=F.indexOf(e)}var J=(0,N.createConsola)({formatOptions:{date:!1,colors:!0,compact:!0},defaults:{tag:"Better Auth"}}),q=e=>{let n=e?.disabled!==!0,d=e?.level??"error",u=(c,m,p=[])=>{if(!(!n||!H(d,c))){if(!e||typeof e.log!="function"){J[c]("",m,...p);return}e.log(c==="success"?"info":c,m,p)}};return Object.fromEntries(F.map(c=>[c,(...[m,...p])=>u(c,m,p)]))},z=q();var w=e=>{let n=e.plugins?.reduce((s,f)=>{let l=f.schema;if(!l)return s;for(let[t,a]of Object.entries(l))s[t]={fields:{...s[t]?.fields,...a.fields},modelName:a.modelName||t};return s},{}),d=e.rateLimit?.storage==="database",u={rateLimit:{modelName:e.rateLimit?.modelName||"rateLimit",fields:{key:{type:"string",fieldName:e.rateLimit?.fields?.key||"key"},count:{type:"number",fieldName:e.rateLimit?.fields?.count||"count"},lastRequest:{type:"number",fieldName:e.rateLimit?.fields?.lastRequest||"lastRequest"}}}},{user:c,session:m,account:p,...o}=n||{};return{user:{modelName:e.user?.modelName||"user",fields:{name:{type:"string",required:!0,fieldName:e.user?.fields?.name||"name"},email:{type:"string",unique:!0,required:!0,fieldName:e.user?.fields?.email||"email"},emailVerified:{type:"boolean",defaultValue:()=>!1,required:!0,fieldName:e.user?.fields?.emailVerified||"emailVerified"},image:{type:"string",required:!1,fieldName:e.user?.fields?.image||"image"},createdAt:{type:"date",defaultValue:()=>new Date,required:!0,fieldName:e.user?.fields?.createdAt||"createdAt"},updatedAt:{type:"date",defaultValue:()=>new Date,required:!0,fieldName:e.user?.fields?.updatedAt||"updatedAt"},...c?.fields,...e.user?.additionalFields},order:1},session:{modelName:e.session?.modelName||"session",fields:{expiresAt:{type:"date",required:!0,fieldName:e.session?.fields?.expiresAt||"expiresAt"},token:{type:"string",required:!0,fieldName:e.session?.fields?.token||"token",unique:!0},createdAt:{type:"date",required:!0,fieldName:e.session?.fields?.createdAt||"createdAt"},updatedAt:{type:"date",required:!0,fieldName:e.session?.fields?.updatedAt||"updatedAt"},ipAddress:{type:"string",required:!1,fieldName:e.session?.fields?.ipAddress||"ipAddress"},userAgent:{type:"string",required:!1,fieldName:e.session?.fields?.userAgent||"userAgent"},userId:{type:"string",fieldName:e.session?.fields?.userId||"userId",references:{model:e.user?.modelName||"user",field:"id",onDelete:"cascade"},required:!0},...m?.fields,...e.session?.additionalFields},order:2},account:{modelName:e.account?.modelName||"account",fields:{accountId:{type:"string",required:!0,fieldName:e.account?.fields?.accountId||"accountId"},providerId:{type:"string",required:!0,fieldName:e.account?.fields?.providerId||"providerId"},userId:{type:"string",references:{model:e.user?.modelName||"user",field:"id",onDelete:"cascade"},required:!0,fieldName:e.account?.fields?.userId||"userId"},accessToken:{type:"string",required:!1,fieldName:e.account?.fields?.accessToken||"accessToken"},refreshToken:{type:"string",required:!1,fieldName:e.account?.fields?.refreshToken||"refreshToken"},idToken:{type:"string",required:!1,fieldName:e.account?.fields?.idToken||"idToken"},accessTokenExpiresAt:{type:"date",required:!1,fieldName:e.account?.fields?.accessTokenExpiresAt||"accessTokenExpiresAt"},refreshTokenExpiresAt:{type:"date",required:!1,fieldName:e.account?.fields?.accessTokenExpiresAt||"refreshTokenExpiresAt"},scope:{type:"string",required:!1,fieldName:e.account?.fields?.scope||"scope"},password:{type:"string",required:!1,fieldName:e.account?.fields?.password||"password"},createdAt:{type:"date",required:!0,fieldName:e.account?.fields?.createdAt||"createdAt"},updatedAt:{type:"date",required:!0,fieldName:e.account?.fields?.updatedAt||"updatedAt"},...p?.fields},order:3},verification:{modelName:e.verification?.modelName||"verification",fields:{identifier:{type:"string",required:!0,fieldName:e.verification?.fields?.identifier||"identifier"},value:{type:"string",required:!0,fieldName:e.verification?.fields?.value||"value"},expiresAt:{type:"date",required:!0,fieldName:e.verification?.fields?.expiresAt||"expiresAt"},createdAt:{type:"date",required:!1,defaultValue:()=>new Date,fieldName:e.verification?.fields?.createdAt||"createdAt"},updatedAt:{type:"date",required:!1,defaultValue:()=>new Date,fieldName:e.verification?.fields?.updatedAt||"updatedAt"}},order:4},...o,...d?u:{}}};var G=require("zod");var S=require("kysely"),R=require("kysely");function T(e,n,d){return d==="update"?e:e==null&&n.defaultValue?typeof n.defaultValue=="function"?n.defaultValue():n.defaultValue:e}var Z=(e,n)=>{let d=w(n);function u(o,s){return s==="id"?s:d[o].fields[s].fieldName||s}function c(o){switch(o){case"starts_with":return"startsWith";case"ends_with":return"endsWith";default:return o}}function m(o){return d[o].modelName}let p=n?.advanced?.generateId===!1;return{transformInput(o,s,f){let l=p||f==="update"?{}:{id:n.advanced?.generateId?n.advanced.generateId({model:s}):o.id||b()},t=d[s].fields;for(let a in t){let r=o[a];l[t[a].fieldName||a]=T(r,t[a],f)}return l},transformOutput(o,s,f=[]){if(!o)return null;let l=o.id||o._id?f.length===0||f.includes("id")?{id:o.id}:{}:{},t=d[s].fields;for(let a in t){if(f.length&&!f.includes(a))continue;let r=t[a];r&&(l[a]=o[r.fieldName||a])}return l},convertWhereClause(o,s){if(!s)return{};if(s.length===1){let r=s[0];return r?{[u(o,r.field)]:r.operator==="eq"||!r.operator?r.value:{[c(r.operator)]:r.value}}:void 0}let f=s.filter(r=>r.connector==="AND"||!r.connector),l=s.filter(r=>r.connector==="OR"),t=f.map(r=>({[u(o,r.field)]:r.operator==="eq"||!r.operator?r.value:{[c(r.operator)]:r.value}})),a=l.map(r=>({[u(o,r.field)]:{[r.operator||"eq"]:r.value}}));return{AND:t.length?t:void 0,OR:a.length?a:void 0}},convertSelect:(o,s)=>{if(!(!o||!s))return o.reduce((f,l)=>({...f,[u(s,l)]:!0}),{})},getModelName:m,getField:u}},X=(e,n)=>d=>{let u=e,{transformInput:c,transformOutput:m,convertWhereClause:p,convertSelect:o,getModelName:s,getField:f}=Z(n,d);return{id:"prisma",async create(l){let{model:t,data:a,select:r}=l,y=c(a,t,"create");if(!u[s(t)])throw new h(`Model ${t} does not exist in the database. If you haven't generated the Prisma client, you need to run 'npx prisma generate'`);let g=await u[s(t)].create({data:y,select:o(r,t)});return m(g,t,r)},async findOne(l){let{model:t,where:a,select:r}=l,y=p(t,a);if(!u[s(t)])throw new h(`Model ${t} does not exist in the database. If you haven't generated the Prisma client, you need to run 'npx prisma generate'`);let g=await u[s(t)].findFirst({where:y,select:o(r,t)});return m(g,t,r)},async findMany(l){let{model:t,where:a,limit:r,offset:y,sortBy:g}=l,A=p(t,a);if(!u[s(t)])throw new h(`Model ${t} does not exist in the database. If you haven't generated the Prisma client, you need to run 'npx prisma generate'`);return(await u[s(t)].findMany({where:A,take:r||100,skip:y||0,orderBy:g?.field?{[f(t,g.field)]:g.direction==="desc"?"desc":"asc"}:void 0})).map(U=>m(U,t))},async update(l){let{model:t,where:a,update:r}=l;if(!u[s(t)])throw new h(`Model ${t} does not exist in the database. If you haven't generated the Prisma client, you need to run 'npx prisma generate'`);let y=p(t,a),g=c(r,t,"update"),A=await u[s(t)].update({where:y,data:g});return m(A,t)},async updateMany(l){let{model:t,where:a,update:r}=l,y=p(t,a),g=c(r,t,"update"),A=await u[s(t)].updateMany({where:y,data:g});return A?A.count:0},async delete(l){let{model:t,where:a}=l,r=p(t,a);try{await u[s(t)].delete({where:r})}catch{}},async deleteMany(l){let{model:t,where:a}=l,r=p(t,a),y=await u[s(t)].deleteMany({where:r});return y?y.count:0},options:n}};0&&(module.exports={prismaAdapter});
|
|
1
|
+
"use strict";var k=Object.defineProperty;var B=Object.getOwnPropertyDescriptor;var L=Object.getOwnPropertyNames;var P=Object.prototype.hasOwnProperty;var M=(e,n)=>{for(var d in n)k(e,d,{get:n[d],enumerable:!0})},V=(e,n,d,u)=>{if(n&&typeof n=="object"||typeof n=="function")for(let c of L(n))!P.call(e,c)&&c!==d&&k(e,c,{get:()=>n[c],enumerable:!(u=B(n,c))||u.enumerable});return e};var E=e=>V(k({},"__esModule",{value:!0}),e);var Y={};M(Y,{prismaAdapter:()=>X});module.exports=E(Y);var s=require("zod"),C=require("better-call"),ne=s.z.object({id:s.z.string(),providerId:s.z.string(),accountId:s.z.string(),userId:s.z.string(),accessToken:s.z.string().nullish(),refreshToken:s.z.string().nullish(),idToken:s.z.string().nullish(),accessTokenExpiresAt:s.z.date().nullish(),refreshTokenExpiresAt:s.z.date().nullish(),scope:s.z.string().nullish(),password:s.z.string().nullish(),createdAt:s.z.date().default(()=>new Date),updatedAt:s.z.date().default(()=>new Date)}),se=s.z.object({id:s.z.string(),email:s.z.string().transform(e=>e.toLowerCase()),emailVerified:s.z.boolean().default(!1),name:s.z.string(),image:s.z.string().nullish(),createdAt:s.z.date().default(()=>new Date),updatedAt:s.z.date().default(()=>new Date)}),ie=s.z.object({id:s.z.string(),userId:s.z.string(),expiresAt:s.z.date(),createdAt:s.z.date().default(()=>new Date),updatedAt:s.z.date().default(()=>new Date),token:s.z.string(),ipAddress:s.z.string().nullish(),userAgent:s.z.string().nullish()}),ae=s.z.object({id:s.z.string(),value:s.z.string(),createdAt:s.z.date().default(()=>new Date),updatedAt:s.z.date().default(()=>new Date),expiresAt:s.z.date(),identifier:s.z.string()});var v=Object.create(null),x=e=>globalThis.process?.env||globalThis.Deno?.env.toObject()||globalThis.__env__||(e?v:globalThis),I=new Proxy(v,{get(e,n){return x()[n]??v[n]},has(e,n){let d=x();return n in d||n in v},set(e,n,d){let u=x(!0);return u[n]=d,!0},deleteProperty(e,n){if(!n)return!1;let d=x(!0);return delete d[n],!0},ownKeys(){let e=x(!0);return Object.keys(e)}});function _(e){return e?e!=="false":!1}var j=typeof process<"u"&&process.env&&process.env.NODE_ENV||"";var K=j==="test"||_(I.TEST);var O=require("nanoid"),b=e=>(0,O.nanoid)(e);var D=require("oslo/oauth2"),W=require("zod"),$=require("better-call");var h=class extends Error{constructor(n,d){super(n),this.name="BetterAuthError",this.message=n,this.cause=d,this.stack=""}};var N=require("consola"),F=["info","success","warn","error","debug"];function H(e,n){return F.indexOf(n)<=F.indexOf(e)}var J=(0,N.createConsola)({formatOptions:{date:!1,colors:!0,compact:!0},defaults:{tag:"Better Auth"}}),q=e=>{let n=e?.disabled!==!0,d=e?.level??"error",u=(c,m,p=[])=>{if(!(!n||!H(d,c))){if(!e||typeof e.log!="function"){J[c]("",m,...p);return}e.log(c==="success"?"info":c,m,p)}};return Object.fromEntries(F.map(c=>[c,(...[m,...p])=>u(c,m,p)]))},z=q();var w=e=>{let n=e.plugins?.reduce((i,f)=>{let l=f.schema;if(!l)return i;for(let[t,a]of Object.entries(l))i[t]={fields:{...i[t]?.fields,...a.fields},modelName:a.modelName||t};return i},{}),d=e.rateLimit?.storage==="database",u={rateLimit:{modelName:e.rateLimit?.modelName||"rateLimit",fields:{key:{type:"string",fieldName:e.rateLimit?.fields?.key||"key"},count:{type:"number",fieldName:e.rateLimit?.fields?.count||"count"},lastRequest:{type:"number",fieldName:e.rateLimit?.fields?.lastRequest||"lastRequest"}}}},{user:c,session:m,account:p,...o}=n||{};return{user:{modelName:e.user?.modelName||"user",fields:{name:{type:"string",required:!0,fieldName:e.user?.fields?.name||"name"},email:{type:"string",unique:!0,required:!0,fieldName:e.user?.fields?.email||"email"},emailVerified:{type:"boolean",defaultValue:()=>!1,required:!0,fieldName:e.user?.fields?.emailVerified||"emailVerified"},image:{type:"string",required:!1,fieldName:e.user?.fields?.image||"image"},createdAt:{type:"date",defaultValue:()=>new Date,required:!0,fieldName:e.user?.fields?.createdAt||"createdAt"},updatedAt:{type:"date",defaultValue:()=>new Date,required:!0,fieldName:e.user?.fields?.updatedAt||"updatedAt"},...c?.fields,...e.user?.additionalFields},order:1},session:{modelName:e.session?.modelName||"session",fields:{expiresAt:{type:"date",required:!0,fieldName:e.session?.fields?.expiresAt||"expiresAt"},token:{type:"string",required:!0,fieldName:e.session?.fields?.token||"token",unique:!0},createdAt:{type:"date",required:!0,fieldName:e.session?.fields?.createdAt||"createdAt"},updatedAt:{type:"date",required:!0,fieldName:e.session?.fields?.updatedAt||"updatedAt"},ipAddress:{type:"string",required:!1,fieldName:e.session?.fields?.ipAddress||"ipAddress"},userAgent:{type:"string",required:!1,fieldName:e.session?.fields?.userAgent||"userAgent"},userId:{type:"string",fieldName:e.session?.fields?.userId||"userId",references:{model:e.user?.modelName||"user",field:"id",onDelete:"cascade"},required:!0},...m?.fields,...e.session?.additionalFields},order:2},account:{modelName:e.account?.modelName||"account",fields:{accountId:{type:"string",required:!0,fieldName:e.account?.fields?.accountId||"accountId"},providerId:{type:"string",required:!0,fieldName:e.account?.fields?.providerId||"providerId"},userId:{type:"string",references:{model:e.user?.modelName||"user",field:"id",onDelete:"cascade"},required:!0,fieldName:e.account?.fields?.userId||"userId"},accessToken:{type:"string",required:!1,fieldName:e.account?.fields?.accessToken||"accessToken"},refreshToken:{type:"string",required:!1,fieldName:e.account?.fields?.refreshToken||"refreshToken"},idToken:{type:"string",required:!1,fieldName:e.account?.fields?.idToken||"idToken"},accessTokenExpiresAt:{type:"date",required:!1,fieldName:e.account?.fields?.accessTokenExpiresAt||"accessTokenExpiresAt"},refreshTokenExpiresAt:{type:"date",required:!1,fieldName:e.account?.fields?.accessTokenExpiresAt||"refreshTokenExpiresAt"},scope:{type:"string",required:!1,fieldName:e.account?.fields?.scope||"scope"},password:{type:"string",required:!1,fieldName:e.account?.fields?.password||"password"},createdAt:{type:"date",required:!0,fieldName:e.account?.fields?.createdAt||"createdAt"},updatedAt:{type:"date",required:!0,fieldName:e.account?.fields?.updatedAt||"updatedAt"},...p?.fields},order:3},verification:{modelName:e.verification?.modelName||"verification",fields:{identifier:{type:"string",required:!0,fieldName:e.verification?.fields?.identifier||"identifier"},value:{type:"string",required:!0,fieldName:e.verification?.fields?.value||"value"},expiresAt:{type:"date",required:!0,fieldName:e.verification?.fields?.expiresAt||"expiresAt"},createdAt:{type:"date",required:!1,defaultValue:()=>new Date,fieldName:e.verification?.fields?.createdAt||"createdAt"},updatedAt:{type:"date",required:!1,defaultValue:()=>new Date,fieldName:e.verification?.fields?.updatedAt||"updatedAt"}},order:4},...o,...d?u:{}}};var G=require("zod");var S=require("kysely"),R=require("kysely");function T(e,n,d){return d==="update"?e:e==null&&n.defaultValue?typeof n.defaultValue=="function"?n.defaultValue():n.defaultValue:e}var Z=(e,n)=>{let d=w(n);function u(o,i){return i==="id"?i:d[o].fields[i].fieldName||i}function c(o){switch(o){case"starts_with":return"startsWith";case"ends_with":return"endsWith";default:return o}}function m(o){return d[o].modelName}let p=n?.advanced?.generateId===!1;return{transformInput(o,i,f){let l=p||f==="update"?{}:{id:n.advanced?.generateId?n.advanced.generateId({model:i}):o.id||b()},t=d[i].fields;for(let a in t){let r=o[a];l[t[a].fieldName||a]=T(r,t[a],f)}return l},transformOutput(o,i,f=[]){if(!o)return null;let l=o.id||o._id?f.length===0||f.includes("id")?{id:o.id}:{}:{},t=d[i].fields;for(let a in t){if(f.length&&!f.includes(a))continue;let r=t[a];r&&(l[a]=o[r.fieldName||a])}return l},convertWhereClause(o,i){if(!i)return{};if(i.length===1){let r=i[0];return r?{[u(o,r.field)]:r.operator==="eq"||!r.operator?r.value:{[c(r.operator)]:r.value}}:void 0}let f=i.filter(r=>r.connector==="AND"||!r.connector),l=i.filter(r=>r.connector==="OR"),t=f.map(r=>({[u(o,r.field)]:r.operator==="eq"||!r.operator?r.value:{[c(r.operator)]:r.value}})),a=l.map(r=>({[u(o,r.field)]:{[r.operator||"eq"]:r.value}}));return{AND:t.length?t:void 0,OR:a.length?a:void 0}},convertSelect:(o,i)=>{if(!(!o||!i))return o.reduce((f,l)=>({...f,[u(i,l)]:!0}),{})},getModelName:m,getField:u}},X=(e,n)=>d=>{let u=e,{transformInput:c,transformOutput:m,convertWhereClause:p,convertSelect:o,getModelName:i,getField:f}=Z(n,d);return{id:"prisma",async create(l){let{model:t,data:a,select:r}=l,y=c(a,t,"create");if(!u[i(t)])throw new h(`Model ${t} does not exist in the database. If you haven't generated the Prisma client, you need to run 'npx prisma generate'`);let g=await u[i(t)].create({data:y,select:o(r,t)});return m(g,t,r)},async findOne(l){let{model:t,where:a,select:r}=l,y=p(t,a);if(!u[i(t)])throw new h(`Model ${t} does not exist in the database. If you haven't generated the Prisma client, you need to run 'npx prisma generate'`);let g=await u[i(t)].findFirst({where:y,select:o(r,t)});return m(g,t,r)},async findMany(l){let{model:t,where:a,limit:r,offset:y,sortBy:g}=l,A=p(t,a);if(!u[i(t)])throw new h(`Model ${t} does not exist in the database. If you haven't generated the Prisma client, you need to run 'npx prisma generate'`);return(await u[i(t)].findMany({where:A,take:r||100,skip:y||0,orderBy:g?.field?{[f(t,g.field)]:g.direction==="desc"?"desc":"asc"}:void 0})).map(U=>m(U,t))},async update(l){let{model:t,where:a,update:r}=l;if(!u[i(t)])throw new h(`Model ${t} does not exist in the database. If you haven't generated the Prisma client, you need to run 'npx prisma generate'`);let y=p(t,a),g=c(r,t,"update"),A=await u[i(t)].update({where:y,data:g});return m(A,t)},async updateMany(l){let{model:t,where:a,update:r}=l,y=p(t,a),g=c(r,t,"update"),A=await u[i(t)].updateMany({where:y,data:g});return A?A.count:0},async delete(l){let{model:t,where:a}=l,r=p(t,a);try{await u[i(t)].delete({where:r})}catch{}},async deleteMany(l){let{model:t,where:a}=l,r=p(t,a),y=await u[i(t)].deleteMany({where:r});return y?y.count:0},options:n}};0&&(module.exports={prismaAdapter});
|
|
@@ -1,9 +1,10 @@
|
|
|
1
|
-
import { B as BetterAuthOptions, W as Where } from '../auth-
|
|
1
|
+
import { B as BetterAuthOptions, W as Where } from '../auth-DCr9mzAB.cjs';
|
|
2
2
|
import 'kysely';
|
|
3
|
+
import '../schema-DG_8mn16.cjs';
|
|
3
4
|
import 'zod';
|
|
4
5
|
import 'better-call';
|
|
5
6
|
import '../helper-Bi8FQwDD.cjs';
|
|
6
|
-
import '../index-
|
|
7
|
+
import '../index-CHjmU47P.cjs';
|
|
7
8
|
import 'jose';
|
|
8
9
|
import 'better-sqlite3';
|
|
9
10
|
|
|
@@ -1,9 +1,10 @@
|
|
|
1
|
-
import { B as BetterAuthOptions, W as Where } from '../auth-
|
|
1
|
+
import { B as BetterAuthOptions, W as Where } from '../auth-B_LFm6_Y.js';
|
|
2
2
|
import 'kysely';
|
|
3
|
+
import '../schema-DG_8mn16.js';
|
|
3
4
|
import 'zod';
|
|
4
5
|
import 'better-call';
|
|
5
6
|
import '../helper-Bi8FQwDD.js';
|
|
6
|
-
import '../index-
|
|
7
|
+
import '../index-Dcbbo2jq.js';
|
|
7
8
|
import 'jose';
|
|
8
9
|
import 'better-sqlite3';
|
|
9
10
|
|
package/dist/adapters/prisma.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
import{z as n}from"zod";import{APIError as j}from"better-call";var K=n.object({id:n.string(),providerId:n.string(),accountId:n.string(),userId:n.string(),accessToken:n.string().nullish(),refreshToken:n.string().nullish(),idToken:n.string().nullish(),accessTokenExpiresAt:n.date().nullish(),refreshTokenExpiresAt:n.date().nullish(),scope:n.string().nullish(),password:n.string().nullish(),createdAt:n.date().default(()=>new Date),updatedAt:n.date().default(()=>new Date)}),W=n.object({id:n.string(),email:n.string().transform(e=>e.toLowerCase()),emailVerified:n.boolean().default(!1),name:n.string(),image:n.string().nullish(),createdAt:n.date().default(()=>new Date),updatedAt:n.date().default(()=>new Date)}),$=n.object({id:n.string(),userId:n.string(),expiresAt:n.date(),createdAt:n.date().default(()=>new Date),updatedAt:n.date().default(()=>new Date),token:n.string(),ipAddress:n.string().nullish(),userAgent:n.string().nullish()}),H=n.object({id:n.string(),value:n.string(),createdAt:n.date().default(()=>new Date),updatedAt:n.date().default(()=>new Date),expiresAt:n.date(),identifier:n.string()});var v=Object.create(null),x=e=>globalThis.process?.env||globalThis.Deno?.env.toObject()||globalThis.__env__||(e?v:globalThis),F=new Proxy(v,{get(e,
|
|
1
|
+
import{z as n}from"zod";import{APIError as j}from"better-call";var K=n.object({id:n.string(),providerId:n.string(),accountId:n.string(),userId:n.string(),accessToken:n.string().nullish(),refreshToken:n.string().nullish(),idToken:n.string().nullish(),accessTokenExpiresAt:n.date().nullish(),refreshTokenExpiresAt:n.date().nullish(),scope:n.string().nullish(),password:n.string().nullish(),createdAt:n.date().default(()=>new Date),updatedAt:n.date().default(()=>new Date)}),W=n.object({id:n.string(),email:n.string().transform(e=>e.toLowerCase()),emailVerified:n.boolean().default(!1),name:n.string(),image:n.string().nullish(),createdAt:n.date().default(()=>new Date),updatedAt:n.date().default(()=>new Date)}),$=n.object({id:n.string(),userId:n.string(),expiresAt:n.date(),createdAt:n.date().default(()=>new Date),updatedAt:n.date().default(()=>new Date),token:n.string(),ipAddress:n.string().nullish(),userAgent:n.string().nullish()}),H=n.object({id:n.string(),value:n.string(),createdAt:n.date().default(()=>new Date),updatedAt:n.date().default(()=>new Date),expiresAt:n.date(),identifier:n.string()});var v=Object.create(null),x=e=>globalThis.process?.env||globalThis.Deno?.env.toObject()||globalThis.__env__||(e?v:globalThis),F=new Proxy(v,{get(e,i){return x()[i]??v[i]},has(e,i){let l=x();return i in l||i in v},set(e,i,l){let u=x(!0);return u[i]=l,!0},deleteProperty(e,i){if(!i)return!1;let l=x(!0);return delete l[i],!0},ownKeys(){let e=x(!0);return Object.keys(e)}});function O(e){return e?e!=="false":!1}var D=typeof process<"u"&&process.env&&process.env.NODE_ENV||"";var N=D==="test"||O(F.TEST);import{nanoid as q}from"nanoid";var b=e=>q(e);import{generateCodeVerifier as ue,generateState as le}from"oslo/oauth2";import{z as fe}from"zod";import{APIError as me}from"better-call";var h=class extends Error{constructor(i,l){super(i),this.name="BetterAuthError",this.message=i,this.cause=l,this.stack=""}};import{createConsola as S}from"consola";var k=["info","success","warn","error","debug"];function U(e,i){return k.indexOf(i)<=k.indexOf(e)}var B=S({formatOptions:{date:!1,colors:!0,compact:!0},defaults:{tag:"Better Auth"}}),R=e=>{let i=e?.disabled!==!0,l=e?.level??"error",u=(c,m,p=[])=>{if(!(!i||!U(l,c))){if(!e||typeof e.log!="function"){B[c]("",m,...p);return}e.log(c==="success"?"info":c,m,p)}};return Object.fromEntries(k.map(c=>[c,(...[m,...p])=>u(c,m,p)]))},L=R();var w=e=>{let i=e.plugins?.reduce((s,f)=>{let d=f.schema;if(!d)return s;for(let[t,a]of Object.entries(d))s[t]={fields:{...s[t]?.fields,...a.fields},modelName:a.modelName||t};return s},{}),l=e.rateLimit?.storage==="database",u={rateLimit:{modelName:e.rateLimit?.modelName||"rateLimit",fields:{key:{type:"string",fieldName:e.rateLimit?.fields?.key||"key"},count:{type:"number",fieldName:e.rateLimit?.fields?.count||"count"},lastRequest:{type:"number",fieldName:e.rateLimit?.fields?.lastRequest||"lastRequest"}}}},{user:c,session:m,account:p,...o}=i||{};return{user:{modelName:e.user?.modelName||"user",fields:{name:{type:"string",required:!0,fieldName:e.user?.fields?.name||"name"},email:{type:"string",unique:!0,required:!0,fieldName:e.user?.fields?.email||"email"},emailVerified:{type:"boolean",defaultValue:()=>!1,required:!0,fieldName:e.user?.fields?.emailVerified||"emailVerified"},image:{type:"string",required:!1,fieldName:e.user?.fields?.image||"image"},createdAt:{type:"date",defaultValue:()=>new Date,required:!0,fieldName:e.user?.fields?.createdAt||"createdAt"},updatedAt:{type:"date",defaultValue:()=>new Date,required:!0,fieldName:e.user?.fields?.updatedAt||"updatedAt"},...c?.fields,...e.user?.additionalFields},order:1},session:{modelName:e.session?.modelName||"session",fields:{expiresAt:{type:"date",required:!0,fieldName:e.session?.fields?.expiresAt||"expiresAt"},token:{type:"string",required:!0,fieldName:e.session?.fields?.token||"token",unique:!0},createdAt:{type:"date",required:!0,fieldName:e.session?.fields?.createdAt||"createdAt"},updatedAt:{type:"date",required:!0,fieldName:e.session?.fields?.updatedAt||"updatedAt"},ipAddress:{type:"string",required:!1,fieldName:e.session?.fields?.ipAddress||"ipAddress"},userAgent:{type:"string",required:!1,fieldName:e.session?.fields?.userAgent||"userAgent"},userId:{type:"string",fieldName:e.session?.fields?.userId||"userId",references:{model:e.user?.modelName||"user",field:"id",onDelete:"cascade"},required:!0},...m?.fields,...e.session?.additionalFields},order:2},account:{modelName:e.account?.modelName||"account",fields:{accountId:{type:"string",required:!0,fieldName:e.account?.fields?.accountId||"accountId"},providerId:{type:"string",required:!0,fieldName:e.account?.fields?.providerId||"providerId"},userId:{type:"string",references:{model:e.user?.modelName||"user",field:"id",onDelete:"cascade"},required:!0,fieldName:e.account?.fields?.userId||"userId"},accessToken:{type:"string",required:!1,fieldName:e.account?.fields?.accessToken||"accessToken"},refreshToken:{type:"string",required:!1,fieldName:e.account?.fields?.refreshToken||"refreshToken"},idToken:{type:"string",required:!1,fieldName:e.account?.fields?.idToken||"idToken"},accessTokenExpiresAt:{type:"date",required:!1,fieldName:e.account?.fields?.accessTokenExpiresAt||"accessTokenExpiresAt"},refreshTokenExpiresAt:{type:"date",required:!1,fieldName:e.account?.fields?.accessTokenExpiresAt||"refreshTokenExpiresAt"},scope:{type:"string",required:!1,fieldName:e.account?.fields?.scope||"scope"},password:{type:"string",required:!1,fieldName:e.account?.fields?.password||"password"},createdAt:{type:"date",required:!0,fieldName:e.account?.fields?.createdAt||"createdAt"},updatedAt:{type:"date",required:!0,fieldName:e.account?.fields?.updatedAt||"updatedAt"},...p?.fields},order:3},verification:{modelName:e.verification?.modelName||"verification",fields:{identifier:{type:"string",required:!0,fieldName:e.verification?.fields?.identifier||"identifier"},value:{type:"string",required:!0,fieldName:e.verification?.fields?.value||"value"},expiresAt:{type:"date",required:!0,fieldName:e.verification?.fields?.expiresAt||"expiresAt"},createdAt:{type:"date",required:!1,defaultValue:()=>new Date,fieldName:e.verification?.fields?.createdAt||"createdAt"},updatedAt:{type:"date",required:!1,defaultValue:()=>new Date,fieldName:e.verification?.fields?.updatedAt||"updatedAt"}},order:4},...o,...l?u:{}}};import{z as je}from"zod";import{Kysely as $e,MssqlDialect as He}from"kysely";import{MysqlDialect as ze,PostgresDialect as Ge,SqliteDialect as Qe}from"kysely";function T(e,i,l){return l==="update"?e:e==null&&i.defaultValue?typeof i.defaultValue=="function"?i.defaultValue():i.defaultValue:e}var M=(e,i)=>{let l=w(i);function u(o,s){return s==="id"?s:l[o].fields[s].fieldName||s}function c(o){switch(o){case"starts_with":return"startsWith";case"ends_with":return"endsWith";default:return o}}function m(o){return l[o].modelName}let p=i?.advanced?.generateId===!1;return{transformInput(o,s,f){let d=p||f==="update"?{}:{id:i.advanced?.generateId?i.advanced.generateId({model:s}):o.id||b()},t=l[s].fields;for(let a in t){let r=o[a];d[t[a].fieldName||a]=T(r,t[a],f)}return d},transformOutput(o,s,f=[]){if(!o)return null;let d=o.id||o._id?f.length===0||f.includes("id")?{id:o.id}:{}:{},t=l[s].fields;for(let a in t){if(f.length&&!f.includes(a))continue;let r=t[a];r&&(d[a]=o[r.fieldName||a])}return d},convertWhereClause(o,s){if(!s)return{};if(s.length===1){let r=s[0];return r?{[u(o,r.field)]:r.operator==="eq"||!r.operator?r.value:{[c(r.operator)]:r.value}}:void 0}let f=s.filter(r=>r.connector==="AND"||!r.connector),d=s.filter(r=>r.connector==="OR"),t=f.map(r=>({[u(o,r.field)]:r.operator==="eq"||!r.operator?r.value:{[c(r.operator)]:r.value}})),a=d.map(r=>({[u(o,r.field)]:{[r.operator||"eq"]:r.value}}));return{AND:t.length?t:void 0,OR:a.length?a:void 0}},convertSelect:(o,s)=>{if(!(!o||!s))return o.reduce((f,d)=>({...f,[u(s,d)]:!0}),{})},getModelName:m,getField:u}},jt=(e,i)=>l=>{let u=e,{transformInput:c,transformOutput:m,convertWhereClause:p,convertSelect:o,getModelName:s,getField:f}=M(i,l);return{id:"prisma",async create(d){let{model:t,data:a,select:r}=d,y=c(a,t,"create");if(!u[s(t)])throw new h(`Model ${t} does not exist in the database. If you haven't generated the Prisma client, you need to run 'npx prisma generate'`);let g=await u[s(t)].create({data:y,select:o(r,t)});return m(g,t,r)},async findOne(d){let{model:t,where:a,select:r}=d,y=p(t,a);if(!u[s(t)])throw new h(`Model ${t} does not exist in the database. If you haven't generated the Prisma client, you need to run 'npx prisma generate'`);let g=await u[s(t)].findFirst({where:y,select:o(r,t)});return m(g,t,r)},async findMany(d){let{model:t,where:a,limit:r,offset:y,sortBy:g}=d,A=p(t,a);if(!u[s(t)])throw new h(`Model ${t} does not exist in the database. If you haven't generated the Prisma client, you need to run 'npx prisma generate'`);return(await u[s(t)].findMany({where:A,take:r||100,skip:y||0,orderBy:g?.field?{[f(t,g.field)]:g.direction==="desc"?"desc":"asc"}:void 0})).map(I=>m(I,t))},async update(d){let{model:t,where:a,update:r}=d;if(!u[s(t)])throw new h(`Model ${t} does not exist in the database. If you haven't generated the Prisma client, you need to run 'npx prisma generate'`);let y=p(t,a),g=c(r,t,"update"),A=await u[s(t)].update({where:y,data:g});return m(A,t)},async updateMany(d){let{model:t,where:a,update:r}=d,y=p(t,a),g=c(r,t,"update"),A=await u[s(t)].updateMany({where:y,data:g});return A?A.count:0},async delete(d){let{model:t,where:a}=d,r=p(t,a);try{await u[s(t)].delete({where:r})}catch{}},async deleteMany(d){let{model:t,where:a}=d,r=p(t,a),y=await u[s(t)].deleteMany({where:r});return y?y.count:0},options:i}};export{jt as prismaAdapter};
|