@authhero/kysely-adapter 10.5.0 → 10.6.0

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.
@@ -1 +1 @@
1
- "use strict";var ze=Object.defineProperty;var le=t=>{throw TypeError(t)};var Ee=(t,e,a)=>e in t?ze(t,e,{enumerable:!0,configurable:!0,writable:!0,value:a}):t[e]=a;var M=(t,e,a)=>Ee(t,typeof e!="symbol"?e+"":e,a),U=(t,e,a)=>e.has(t)||le("Cannot "+a);var c=(t,e,a)=>(U(t,e,"read from private field"),a?a.call(t):e.get(t)),y=(t,e,a)=>e.has(t)?le("Cannot add the same private member more than once"):e instanceof WeakSet?e.add(t):e.set(t,a),F=(t,e,a,r)=>(U(t,e,"write to private field"),r?r.call(t,a):e.set(t,a),a),u=(t,e,a)=>(U(t,e,"access private method"),a);Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const O=require("@authhero/adapter-interfaces");require("@hono/zod-openapi");var W=class extends Error{constructor(e=500,a){super(a==null?void 0:a.message,{cause:a==null?void 0:a.cause});M(this,"res");M(this,"status");this.res=a==null?void 0:a.res,this.status=e}getResponse(){return this.res?new Response(this.res.body,{status:this.status,headers:this.res.headers}):new Response(this.message,{status:this.status})}};function Je(t){return async(e,a)=>{const{identities:r,...o}=a,n={...o,created_at:new Date().toISOString(),updated_at:new Date().toISOString(),login_count:0,tenant_id:e,email_verified:a.email_verified?1:0,is_social:a.is_social?1:0,app_metadata:JSON.stringify(a.app_metadata),user_metadata:JSON.stringify(a.user_metadata)};try{await t.insertInto("users").values(n).execute()}catch(s){throw s.code==="SQLITE_CONSTRAINT_UNIQUE"||s.message.includes("AlreadyExists")?new W(409,{message:"User already exists"}):new W(500,{message:`${s.code}, ${s.message}`})}return{...n,email:n.email||"",email_verified:n.email_verified===1,is_social:n.is_social===1}}}function _(t){const e={...t};for(const a in e)e[a]===null?delete e[a]:typeof e[a]=="object"&&(Array.isArray(e[a])?e[a]=e[a].map(_):e[a]=_(e[a]));return e}function fe(t){let e={};try{e=JSON.parse(t.profileData||"{}")}catch(a){console.error("Error parsing profileData",a)}return{connection:t.connection,provider:t.provider,user_id:O.parseUserId(t.user_id).id,isSocial:!!t.is_social,profileData:{email:t.email,email_verified:!!t.email_verified,...e}}}function Ke(t){return async(e,a)=>{const[r,o]=await Promise.all([t.selectFrom("users").where("users.tenant_id","=",e).where("users.user_id","=",a).selectAll().executeTakeFirst(),t.selectFrom("users").where("users.tenant_id","=",e).where("users.linked_to","=",a).selectAll().execute()]);if(!r)return null;const{tenant_id:n,...s}=r,l={...s,email:r.email||"",email_verified:r.email_verified===1,is_social:r.is_social===1,app_metadata:JSON.parse(r.app_metadata),user_metadata:JSON.parse(r.user_metadata),identities:[{connection:r.connection,provider:r.provider,user_id:O.parseUserId(r.user_id).id,isSocial:!!r.is_social},...o.map(fe)]};return _(l)}}function k(t,e,a,r){return a.split(/\s+/).map(n=>n.replace(/^([^:]+)=/g,"$1:")).map(n=>{let s=n.startsWith("-"),l,d,g,m;return n.startsWith("-_exists_:")?(l=n.substring(10),g=!0,s=!0):n.startsWith("_exists_:")?(l=n.substring(9),g=!0,s=!1):n.includes(":")?(s=n.startsWith("-"),[l,d]=s?n.substring(1).split(":"):n.split(":"),g=!1,d.startsWith(">=")?(m=">=",d=d.substring(2)):d.startsWith(">")?(m=">",d=d.substring(1)):d.startsWith("<=")?(m="<=",d=d.substring(2)):d.startsWith("<")?(m="<",d=d.substring(1)):m="="):(l=null,d=n,g=!1),{key:l,value:d,isNegation:s,isExistsQuery:g,operator:m}}).forEach(({key:n,value:s,isNegation:l,isExistsQuery:d,operator:g})=>{if(n)if(d)l?e=e.where(n,"is",null):e=e.where(n,"is not",null);else if(l)switch(g){case">":e=e.where(n,"<=",s);break;case">=":e=e.where(n,"<",s);break;case"<":e=e.where(n,">=",s);break;case"<=":e=e.where(n,">",s);break;default:e=e.where(n,"!=",s)}else e=e.where(n,g,s);else{const{ref:m}=t.dynamic;e=e.where(w=>w.or(r.map(b=>w(m(b),"like",`%${s}%`))))}}),e}function x(t){return typeof t=="string"?parseInt(t,10):typeof t=="bigint"?Number(t):t}function Re(t){return async(e,a={page:0,per_page:50,include_totals:!1})=>{let r=t.selectFrom("users").where("users.tenant_id","=",e);if(a.q&&(r=k(t,r,a.q,["email","name"])),a.sort&&a.sort.sort_by){const{ref:m}=t.dynamic;r=r.orderBy(m(a.sort.sort_by),a.sort.sort_order)}const n=await r.offset(a.page*a.per_page).limit(a.per_page).selectAll().execute(),s=n.map(m=>m.user_id),l=s.length?await t.selectFrom("users").selectAll().where("users.tenant_id","=",e).where("users.linked_to","in",s).execute():[],d=n.map(m=>{const w=l.filter(b=>b.linked_to===m.user_id);return _({...m,email_verified:m.email_verified===1,is_social:m.is_social===1,app_metadata:JSON.parse(m.app_metadata),user_metadata:JSON.parse(m.user_metadata),identities:[{connection:m.connection,provider:m.provider,user_id:O.parseUserId(m.user_id).id,isSocial:!!m.is_social},...w.map(fe)]})}),{count:g}=await r.select(m=>m.fn.countAll().as("count")).executeTakeFirstOrThrow();return{users:d,start:a.page*a.per_page,limit:a.per_page,length:x(g)}}}function Ue(t){return async(e,a)=>(await t.deleteFrom("users").where("users.tenant_id","=",e).where("users.linked_to","=",a).execute(),(await t.deleteFrom("users").where("users.tenant_id","=",e).where("users.user_id","=",a).execute()).length===1)}function Be(t){if(t.email_verified!==void 0)return t.email_verified?1:0}function Qe(t){return async(e,a,r)=>{const o={...r,email_verified:Be(r),updated_at:new Date().toISOString()};return r.app_metadata&&(o.app_metadata=JSON.stringify(r.app_metadata)),r.user_metadata&&(o.user_metadata=JSON.stringify(r.user_metadata)),(await t.updateTable("users").set(o).where("users.tenant_id","=",e).where("users.user_id","=",a).execute()).length===1}}function Ve(t){return async(e,a,r,o)=>{const n={linked_to:null};return(await t.updateTable("users").set(n).where("users.tenant_id","=",e).where("users.user_id","=",`${r}|${o}`).where("users.linked_to","=",`${a}`).execute()).length===1}}function We(t){return{create:Je(t),remove:Ue(t),get:Ke(t),list:Re(t),update:Qe(t),unlink:Ve(t)}}const qe="useandom-26T198340PX75pxJACKVERYMINDBUSHWOLF_GQZbfghjklqvwyzrict";let $=(t=21)=>{let e="",a=crypto.getRandomValues(new Uint8Array(t));for(;t--;)e+=qe[a[t]&63];return e};function Ge(t){return async e=>{const a={id:e.id||$(),created_at:new Date().toISOString(),updated_at:new Date().toISOString(),...e};return await t.insertInto("tenants").values(a).execute(),a}}function He(t){return async e=>{const a=await t.selectFrom("tenants").where("tenants.id","=",e).selectAll().executeTakeFirst();return a?_(a):null}}function Xe(t){return async(e={page:0,per_page:50,include_totals:!1})=>{let a=t.selectFrom("tenants");if(e.sort&&e.sort.sort_by){const{ref:l}=t.dynamic;a=a.orderBy(l(e.sort.sort_by),e.sort.sort_order)}e.q&&(a=a.where(l=>l.or([l("name","like",`%${e.q}%`)])));const o=await a.offset(e.page*e.per_page).limit(e.per_page).selectAll().execute();if(!e.include_totals)return{tenants:o};const{count:n}=await a.select(l=>l.fn.countAll().as("count")).executeTakeFirstOrThrow(),s=x(n);return{tenants:o.map(_),start:(e.page-1)*e.per_page,limit:e.per_page,length:s}}}function Ye(t){return async(e,a)=>{const r={...a,id:e,updated_at:new Date().toISOString()};await t.updateTable("tenants").set(r).where("id","=",e).execute()}}function Ze(t){return async e=>(await t.deleteFrom("tenants").where("tenants.id","=",e).execute()).length===1}function et(t){return{create:Ge(t),get:He(t),list:Xe(t),update:Ye(t),remove:Ze(t)}}function ue(t){return t?JSON.stringify(t):void 0}const tt=1024;function at(t){return async(e,a)=>{var o,n,s;const r={id:$(),...a,user_agent:a.user_agent.slice(0,tt)};return await t.insertInto("logs").values({...r,description:(o=r.description)==null?void 0:o.substring(0,256),isMobile:a.isMobile?1:0,tenant_id:e,scope:(n=a.scope)==null?void 0:n.join(","),auth0_client:ue(a.auth0_client),details:(s=ue(a.details))==null?void 0:s.substring(0,8192)}).execute(),r}}function me(t){if(!t)return"";try{return JSON.parse(t)}catch{return t}}function pe(t){return{...t,client_id:t.client_id,client_name:"",auth0_client:me(t.auth0_client),details:me(t.details),isMobile:!!t.isMobile,scope:t.scope?t.scope.split(","):void 0,log_id:t.id,_id:t.id}}function rt(t){return async(e,a={page:0,per_page:50,include_totals:!1})=>{let r=t.selectFrom("logs").where("logs.tenant_id","=",e);a.q&&(r=k(t,r,a.q,["user_id","ip"]));let o=r;if(a.sort&&a.sort.sort_by){const{ref:l}=t.dynamic;o=o.orderBy(l(a.sort.sort_by),a.sort.sort_order)}o=o.offset(a.page*a.per_page).limit(a.per_page);const n=await o.selectAll().execute(),{count:s}=await r.select(l=>l.fn.countAll().as("count")).executeTakeFirstOrThrow();return{logs:n.map(pe),start:a.page*a.per_page,limit:a.per_page,length:x(s)}}}function nt(t){return async(e,a)=>{const r=await t.selectFrom("logs").where("logs.tenant_id","=",e).where("logs.id","=",a).selectAll().executeTakeFirst();return r?pe(r):null}}function ot(t){return{create:at(t),list:rt(t),get:nt(t)}}function st(t){return async(e,a)=>{const r=await t.selectFrom("sessions").where("sessions.tenant_id","=",e).where("sessions.id","=",a).selectAll().executeTakeFirst();if(!r)return null;const{tenant_id:o,device:n,clients:s,...l}=r;return{...l,device:JSON.parse(n),clients:JSON.parse(s)}}}function it(t){return async(e,a)=>{const r={...a,created_at:new Date().toISOString(),updated_at:new Date().toISOString(),authenticated_at:new Date().toISOString(),last_interaction_at:new Date().toISOString()};return await t.insertInto("sessions").values({...r,tenant_id:e,device:JSON.stringify(a.device),clients:JSON.stringify(a.clients)}).execute(),r}}function dt(t){return async(e,a)=>!!(await t.deleteFrom("sessions").where("tenant_id","=",e).where("sessions.id","=",a).execute()).length}function ct(t){return async(e,a,r)=>{const o={...r,updated_at:new Date().toISOString(),device:r.device?JSON.stringify(r.device):void 0,clients:r.clients?JSON.stringify(r.clients):void 0};return!!(await t.updateTable("sessions").set(o).where("tenant_id","=",e).where("sessions.id","=",a).execute()).length}}function lt(t){return async(e,a={page:0,per_page:50,include_totals:!1})=>{let r=t.selectFrom("sessions").where("sessions.tenant_id","=",e);a.q&&(r=k(t,r,a.q,["user_id","session_id"]));let o=r;if(a.sort&&a.sort.sort_by){const{ref:d}=t.dynamic;o=o.orderBy(d(a.sort.sort_by),a.sort.sort_order)}o=o.offset(a.page*a.per_page).limit(a.per_page);const n=await o.selectAll().execute(),{count:s}=await r.select(d=>d.fn.countAll().as("count")).executeTakeFirstOrThrow(),l=x(s);return{sessions:n.map(d=>({...d,device:JSON.parse(d.device),clients:JSON.parse(d.clients)})),start:a.page*a.per_page,limit:a.per_page,length:l}}}function ut(t){return{create:it(t),get:st(t),list:lt(t),remove:dt(t),update:ct(t)}}function mt(t){return async(e,a)=>{const r=await t.selectFrom("passwords").where("passwords.tenant_id","=",e).where("passwords.user_id","=",a).selectAll().executeTakeFirst();if(!r)return null;const{tenant_id:o,...n}=r;return n}}function ht(t){return async(e,a)=>{const r={...a,created_at:new Date().toISOString(),updated_at:new Date().toISOString()};return await t.insertInto("passwords").values({...r,tenant_id:e}).execute(),r}}function _t(t){return async(e,a)=>(await t.updateTable("passwords").set({password:a.password,updated_at:new Date().toISOString()}).where("tenant_id","=",e).where("user_id","=",a.user_id).execute()).length===1}function ft(t){return{create:ht(t),update:_t(t),get:mt(t)}}function pt(t){return async(e,a={page:0,per_page:50,include_totals:!1})=>{let r=t.selectFrom("codes").where("codes.tenant_id","=",e);a.q&&(r=k(t,r,a.q,["code","login_id"]));const n=await r.offset(a.page*a.per_page).limit(a.per_page).selectAll().execute(),{count:s}=await r.select(d=>d.fn.countAll().as("count")).executeTakeFirstOrThrow();return{codes:n.map(d=>{const{tenant_id:g,...m}=d;return O.codeSchema.parse(_(m))}),start:a.page*a.per_page,limit:a.per_page,length:x(s)}}}function gt(t){return async(e,a)=>{const r={...a,created_at:new Date().toISOString()};return await t.insertInto("codes").values({...r,tenant_id:e}).execute(),r}}function yt(t){return async(e,a)=>(await t.deleteFrom("codes").where("codes.tenant_id","=",e).where("codes.code_id","=",a).executeTakeFirst()).numDeletedRows>0}function wt(t){return async(e,a,r)=>{let o=t.selectFrom("codes").where("codes.code_id","=",a).where("codes.code_type","=",r);e.length&&(o=o.where("codes.tenant_id","=",e));const n=await o.selectAll().executeTakeFirst();return n?_(n):null}}function vt(t){return async(e,a)=>(await t.updateTable("codes").set({used_at:new Date().toISOString()}).where("codes.tenant_id","=",e).where("codes.code_id","=",a).executeTakeFirst()).numUpdatedRows>0}function Nt(t){return{create:gt(t),list:pt(t),remove:yt(t),used:vt(t),get:wt(t)}}function Ct(t){return async(e,a)=>{const r={created_at:new Date().toISOString(),updated_at:new Date().toISOString(),...a},o=JSON.stringify(a.allowed_origins),n=JSON.stringify(a.callbacks),s=JSON.stringify(a.web_origins),l=JSON.stringify(a.allowed_logout_urls),d=JSON.stringify(a.allowed_clients);return await t.insertInto("applications").values({...r,tenant_id:e,disable_sign_ups:a.disable_sign_ups?1:0,addons:a.addons?JSON.stringify(a.addons):"{}",callbacks:n,allowed_origins:o,web_origins:s,allowed_logout_urls:l,allowed_clients:d}).execute(),r}}function bt(t){return async e=>({applications:(await t.selectFrom("applications").where("applications.tenant_id","=",e).selectAll().execute()).map(n=>({...n,disable_sign_ups:!!n.disable_sign_ups,addons:n.addons?JSON.parse(n.addons):{},callbacks:n.callbacks?JSON.parse(n.callbacks):[],allowed_origins:n.allowed_origins?JSON.parse(n.allowed_origins):[],web_origins:n.web_origins?JSON.parse(n.web_origins):[],allowed_logout_urls:n.allowed_logout_urls?JSON.parse(n.allowed_logout_urls):[],allowed_clients:n.allowed_logout_urls?JSON.parse(n.allowed_logout_urls):[]}))})}function xt(t){return async(e,a)=>{const r=await t.selectFrom("applications").where("applications.tenant_id","=",e).where("applications.id","=",a).selectAll().executeTakeFirst();return r?_({...r,disable_sign_ups:!!r.disable_sign_ups,addons:JSON.parse(r.addons),callbacks:JSON.parse(r.callbacks),allowed_origins:JSON.parse(r.allowed_origins),web_origins:JSON.parse(r.web_origins),allowed_logout_urls:JSON.parse(r.allowed_logout_urls)}):null}}function Tt(t){return async(e,a)=>(await t.deleteFrom("applications").where("applications.tenant_id","=",e).where("applications.id","=",a).executeTakeFirst()).numDeletedRows>0}function St(t){return async(e,a,r)=>{const o={...r,updated_at:new Date().toISOString(),allowed_origins:r.allowed_origins?JSON.stringify(r.allowed_origins):void 0,callbacks:r.callbacks?JSON.stringify(r.callbacks):void 0,web_origins:r.web_origins?JSON.stringify(r.web_origins):void 0,allowed_logout_urls:r.allowed_logout_urls?JSON.stringify(r.allowed_logout_urls):void 0,allowed_clients:r.allowed_clients?JSON.stringify(r.allowed_clients):void 0,addons:r.addons?JSON.stringify(r.addons):"{}",disable_sign_ups:r.disable_sign_ups?1:0};return await t.updateTable("applications").set(o).where("applications.id","=",a).where("applications.tenant_id","=",e).execute(),!0}}function Ot(t){return{create:Ct(t),list:bt(t),get:xt(t),remove:Tt(t),update:St(t)}}function kt(t){return async(e,a)=>{const r={id:$(),...a,created_at:new Date().toISOString(),updated_at:new Date().toISOString()};return await t.insertInto("connections").values({...r,options:JSON.stringify(r.options||{}),tenant_id:e}).execute(),r}}function $t(t){return async(e,a={page:0,per_page:50,include_totals:!1})=>{let r=t.selectFrom("connections").where("connections.tenant_id","=",e);a.q&&(r=k(t,r,a.q,["user_id","ip"]));const s=(await r.offset(a.page*a.per_page).limit(a.per_page).selectAll().execute()).map(d=>_({...d,options:JSON.parse(d.options)})),{count:l}=await r.select(d=>d.fn.countAll().as("count")).executeTakeFirstOrThrow();return{connections:s,start:a.page*a.per_page,limit:a.per_page,length:x(l)}}}function Dt(t){return async(e,a)=>(await t.deleteFrom("connections").where("connections.tenant_id","=",e).where("connections.id","=",a).executeTakeFirst()).numDeletedRows>0}function It(t){return async(e,a)=>{const r=await t.selectFrom("connections").where("connections.tenant_id","=",e).where("connections.id","=",a).selectAll().executeTakeFirst();return r?_({...r,options:JSON.parse(r.options)}):null}}function Pt(t){return async(e,a,r)=>{const o={...r,updated_at:new Date().toISOString()};return await t.updateTable("connections").set({...o,options:o.options?JSON.stringify(o.options):void 0}).where("connections.id","=",a).where("connections.tenant_id","=",e).execute(),!0}}function jt(t){return{create:kt(t),get:It(t),list:$t(t),remove:Dt(t),update:Pt(t)}}function Mt(t){return{get:async e=>{const a=await t.selectFrom("applications").selectAll().where("id","=",e).executeTakeFirst();if(!a)return null;const r=await t.selectFrom("tenants").selectAll().where("id","=",a.tenant_id).executeTakeFirst();if(!r)throw new W(404,{message:"Tenant not found"});const o=await t.selectFrom("connections").where("tenant_id","=",a.tenant_id).selectAll().execute();return{...a,connections:o.map(s=>O.connectionSchema.parse(_({...s,options:s.options?JSON.parse(s.options):{}}))),addons:a.addons?JSON.parse(a.addons):{},callbacks:a.callbacks?JSON.parse(a.callbacks):[],allowed_origins:a.allowed_origins?JSON.parse(a.allowed_origins):[],web_origins:a.web_origins?JSON.parse(a.web_origins):[],allowed_logout_urls:a.allowed_logout_urls?JSON.parse(a.allowed_logout_urls):[],allowed_clients:a.allowed_clients?JSON.parse(a.allowed_clients):[],tenant:_(r),disable_sign_ups:!!a.disable_sign_ups}}}}function Ft(t){return async()=>await t.selectFrom("keys").where(a=>a.or([a("revoked_at",">",new Date().toISOString()),a("revoked_at","is",null)])).selectAll().execute()}function At(t){return async e=>{await t.insertInto("keys").values({...e,created_at:new Date().toDateString()}).execute()}}function Lt(t){return async(e,a)=>!!(await t.updateTable("keys").set(a).where("kid","=",e).execute()).length}function zt(t){return{create:At(t),list:Ft(t),update:Lt(t)}}function Et(t){return async(e,a)=>{const r={custom_domain_id:$(),status:"pending",primary:!1,...a};return await t.insertInto("custom_domains").values({...r,created_at:new Date().toISOString(),updated_at:new Date().toISOString(),tenant_id:e,primary:r.primary?1:0}).execute(),r}}function Jt(t){return async e=>(await t.selectFrom("custom_domains").where("custom_domains.tenant_id","=",e).selectAll().execute()).map(r=>({...r,primary:r.primary===1}))}function Kt(t){return async(e,a)=>(await t.deleteFrom("custom_domains").where("custom_domains.tenant_id","=",e).where("custom_domains.custom_domain_id","=",a).execute()).length>0}function Rt(t){return async(e,a)=>{const r=await t.selectFrom("custom_domains").where("custom_domains.tenant_id","=",e).where("custom_domains.custom_domain_id","=",a).selectAll().executeTakeFirst();return r?{...r,primary:r.primary===1}:null}}function Ut(t){return async(e,a,r)=>{const o={...r,updated_at:new Date().toISOString(),primary:r.primary?1:0};return(await t.updateTable("custom_domains").set(o).where("custom_domains.tenant_id","=",e).where("custom_domains.custom_domain_id","=",a).execute()).length>0}}function Bt(t){return{create:Et(t),get:Rt(t),list:Jt(t),remove:Kt(t),update:Ut(t)}}function Qt(t){return async e=>{const[a]=await t.selectFrom("branding").where("branding.tenant_id","=",e).selectAll().execute();if(!a)return null;const{tenant_id:r,colors_primary:o,colors_page_background_type:n,colors_page_background_start:s,colors_page_background_end:l,colors_page_background_angle_dev:d,font_url:g,...m}=a;return _({...m,colors:{primary:o,page_background:{type:n,start:s,end:l,angle_deg:d}},font:g?{url:g}:void 0})}}function Vt(t){return async(e,a)=>{var s,l,d,g,m,w,b,Z,ee,te,ae,re,ne,oe,se,ie,de,ce;const{colors:r,font:o,...n}=a;try{await t.insertInto("branding").values({...n,colors_primary:r==null?void 0:r.primary,colors_page_background_type:(l=(s=a.colors)==null?void 0:s.page_background)==null?void 0:l.type,colors_page_background_start:(g=(d=a.colors)==null?void 0:d.page_background)==null?void 0:g.start,colors_page_background_end:(w=(m=a.colors)==null?void 0:m.page_background)==null?void 0:w.end,colors_page_background_angle_dev:(Z=(b=a.colors)==null?void 0:b.page_background)==null?void 0:Z.angle_deg,font_url:(ee=a.font)==null?void 0:ee.url,tenant_id:e}).execute()}catch{await t.updateTable("branding").set({...n,colors_primary:r==null?void 0:r.primary,colors_page_background_type:(ae=(te=a.colors)==null?void 0:te.page_background)==null?void 0:ae.type,colors_page_background_start:(ne=(re=a.colors)==null?void 0:re.page_background)==null?void 0:ne.start,colors_page_background_end:(se=(oe=a.colors)==null?void 0:oe.page_background)==null?void 0:se.end,colors_page_background_angle_dev:(de=(ie=a.colors)==null?void 0:ie.page_background)==null?void 0:de.angle_deg,font_url:(ce=a.font)==null?void 0:ce.url}).where("tenant_id","=",e).execute()}}}function Wt(t){return{get:Qt(t),set:Vt(t)}}function qt(t){return async(e,a={page:0,per_page:50,include_totals:!1})=>{let r=t.selectFrom("hooks").where("hooks.tenant_id","=",e);a.q&&(r=k(t,r,a.q,["url"]));const n=await r.offset(a.page*a.per_page).limit(a.per_page).selectAll().execute(),{count:s}=await r.select(d=>d.fn.countAll().as("count")).executeTakeFirstOrThrow();return{hooks:n.map(d=>{const{tenant_id:g,enabled:m,synchronous:w,...b}=d;return _({...b,enabled:!!m,synchronous:!!w})}),start:a.page*a.per_page,limit:a.per_page,length:x(s)}}}function Gt(t){return async(e,a)=>{const r=await t.selectFrom("hooks").where("hooks.tenant_id","=",e).where("hooks.hook_id","=",a).selectAll().executeTakeFirst();return r?_({...r,enabled:!!r.enabled,synchronous:!!r.synchronous}):null}}function Ht(t){return async(e,a)=>(await t.deleteFrom("hooks").where("hooks.tenant_id","=",e).where("hooks.hook_id","=",a).executeTakeFirst()).numDeletedRows>0}function Xt(t){return async(e,a)=>{const r={hook_id:$(),...a,created_at:new Date().toISOString(),updated_at:new Date().toISOString()};return await t.insertInto("hooks").values({...r,tenant_id:e,enabled:a.enabled?1:0,synchronous:a.synchronous?1:0}).execute(),r}}function Yt(t){return async(e,a,r)=>{const o={...r,updated_at:new Date().toISOString(),enabled:r.enabled!==void 0?r.enabled?1:0:void 0,synchronous:r.enabled!==void 0?r.synchronous?1:0:void 0};return await t.updateTable("hooks").set(o).where("hooks.hook_id","=",a).where("hooks.tenant_id","=",e).execute(),!0}}function Zt(t){return{create:Xt(t),get:Gt(t),list:qt(t),update:Yt(t),remove:Ht(t)}}function J(t,e="",a={}){for(let r in t)if(Object.prototype.hasOwnProperty.call(t,r)){const o=e?`${e}_${r}`:r;typeof t[r]=="object"&&t[r]!==null&&!Array.isArray(t[r])?J(t[r],o,a):a[o]=t[r]}return a}function ea(t,e){const a={};for(const[r,o]of Object.entries(t)){const n=e.find(s=>r.startsWith(`${s}_`));if(!n)a[r]=o;else{const s=r.slice(n.length+1);a[n]={...a[n],[s]:o}}}return a}function ta(t){return async(e,a)=>{const r={themeId:$(),...a,created_at:new Date().toISOString(),updated_at:new Date().toISOString()};return await t.insertInto("themes").values({...J(r),tenant_id:e}).execute(),r}}function aa(t){return async(e,a)=>(await t.deleteFrom("themes").where("themes.tenant_id","=",e).where("themes.theme_id","=",a).executeTakeFirst()).numDeletedRows>0}function ra(t){return async(e,a)=>{const r=await t.selectFrom("themes").where("themes.tenant_id","=",e).where("themes.theme_id","=",a).selectAll().executeTakeFirst();return r?_(r):null}}function na(t){return async(e,a,r)=>{const o=J({...r,updated_at:new Date().toISOString()});return await t.updateTable("themes").set(o).where("themes.id","=",a).where("themes.tenant_id","=",e).execute(),!0}}function oa(t){return{create:ta(t),get:ra(t),remove:aa(t),update:na(t)}}function sa(t){return async(e,a)=>{const r=new Date().toISOString(),o=await t.selectFrom("login_sessions").where("login_sessions.expires_at",">",r).where("login_sessions.id","=",a).selectAll().executeTakeFirst();return o?O.loginSessionSchema.parse(ea(_(o),["authParams"])):null}}function ia(t){return async(e,a)=>{var o;const r={id:$(),...a,authorization_url:(o=a.authorization_url)==null?void 0:o.slice(0,1024),created_at:new Date().toISOString(),updated_at:new Date().toISOString()};return await t.insertInto("login_sessions").values({...J(r),tenant_id:e}).execute(),r}}function da(t){return async(e,a,r)=>(await t.updateTable("login_sessions").set(J(r)).where("login_sessions.id","=",a).where("login_sessions.tenant_id","=",e).execute()).length===1}function ca(t){return async(e,a)=>(await t.deleteFrom("login_sessions").where("login_sessions.tenant_id","=",e).where("login_sessions.id","=",a).execute()).length>0}function la(t){return{create:ia(t),get:sa(t),update:da(t),remove:ca(t)}}function ua(t){return async e=>{const[a]=await t.selectFrom("prompt_settings").where("prompt_settings.tenant_id","=",e).selectAll().execute();return _({identifier_first:!!(a!=null&&a.identifier_first),password_first:!!(a!=null&&a.password_first),webauthn_platform_first_factor:!!(a!=null&&a.webauthn_platform_first_factor),universal_login_experience:(a==null?void 0:a.universal_login_experience)||"new"})}}function he(t){return _({...t,webauthn_platform_first_factor:t.webauthn_platform_first_factor?!!t.webauthn_platform_first_factor:void 0,identifier_first:t.identifier_first?!!t.identifier_first:void 0,password_first:t.password_first?!!t.password_first:void 0,universal_login_experience:t.universal_login_experience})}function ma(t){return async(e,a)=>{try{const r=O.promptSettingSchema.parse(a);await t.insertInto("prompt_settings").values({...he(r),tenant_id:e}).execute()}catch{await t.updateTable("prompt_settings").set(he(a)).where("tenant_id","=",e).execute()}}}function ha(t){return{get:ua(t),set:ma(t)}}function _a(t){return async e=>{const[a]=await t.selectFrom("email_providers").where("email_providers.tenant_id","=",e).selectAll().execute();if(!a)return null;const{tenant_id:r,credentials:o,settings:n,enabled:s,...l}=a;return _({...l,credentials:JSON.parse(o),settings:JSON.parse(n),enabled:!!s})}}function fa(t){return async(e,a)=>{const{credentials:r,settings:o,enabled:n,...s}=a;await t.updateTable("email_providers").set({...s,credentials:r?JSON.stringify(r):void 0,settings:o?JSON.stringify(o):void 0,enabled:n!==void 0?n?1:0:void 0}).where("tenant_id","=",e).execute()}}function pa(t){return async(e,a)=>{const{credentials:r,settings:o,enabled:n,...s}=a;await t.insertInto("email_providers").values({...s,enabled:n?1:0,credentials:JSON.stringify(r),settings:JSON.stringify(o),tenant_id:e,created_at:new Date().toISOString(),updated_at:new Date().toISOString()}).execute()}}function ga(t){return{get:_a(t),create:pa(t),update:fa(t)}}function ya(t){return async(e,a)=>{const r=await t.selectFrom("refresh_tokens").where("refresh_tokens.tenant_id","=",e).where("refresh_tokens.id","=",a).selectAll().executeTakeFirst();return r?{...r,rotating:!!r.rotating,device:r.device?JSON.parse(r.device):{},resource_servers:r.resource_servers?JSON.parse(r.resource_servers):[]}:null}}function wa(t){return async(e,a)=>{const r={...a,created_at:new Date().toISOString()};return await t.insertInto("refresh_tokens").values({...r,tenant_id:e,rotating:a.rotating?1:0,device:JSON.stringify(a.device),resource_servers:JSON.stringify(a.resource_servers)}).execute(),{...a,...r}}}function va(t){return async(e,a)=>!!(await t.deleteFrom("refresh_tokens").where("tenant_id","=",e).where("refresh_tokens.id","=",a).execute()).length}function Na(t){return async(e,a,r)=>{const o={...r,device:r.device?JSON.stringify(r.device):void 0,resource_servers:r.resource_servers?JSON.stringify(r.resource_servers):void 0,rotating:r.rotating?1:0};return!!(await t.updateTable("refresh_tokens").set(o).where("tenant_id","=",e).where("refresh_tokens.id","=",a).execute()).length}}function Ca(t){return async(e,a={page:0,per_page:50,include_totals:!1})=>{let r=t.selectFrom("refresh_tokens").where("refresh_tokens.tenant_id","=",e);a.q&&(r=k(t,r,a.q,["token","session_id"]));let o=r;if(a.sort&&a.sort.sort_by){const{ref:d}=t.dynamic;o=o.orderBy(d(a.sort.sort_by),a.sort.sort_order)}o=o.offset(a.page*a.per_page).limit(a.per_page);const n=await o.selectAll().execute(),{count:s}=await r.select(d=>d.fn.countAll().as("count")).executeTakeFirstOrThrow(),l=x(s);return{refresh_tokens:n.map(d=>({...d,rotating:!!d.rotating,device:d.device?JSON.parse(d.device):{},resource_servers:d.resource_servers?JSON.parse(d.resource_servers):[]})),start:a.page*a.per_page,limit:a.per_page,length:l}}}function ba(t){return{create:wa(t),get:ya(t),list:Ca(t),remove:va(t),update:Na(t)}}function xa(t){return async()=>{const e=new Date(Date.now()-864e5).toISOString(),a=new Date(Date.now()-1e3*60*60*24*7).toISOString(),r=new Date(Date.now()-1e3*60*60*24*30*3).toISOString();console.log("delete codes"),await t.deleteFrom("codes").where("created_at","<",e).limit(1e5).execute(),console.log("delete sessions"),await t.deleteFrom("login_sessions").where("created_at","<",a).where("session_id","is",null).limit(1e5).execute(),console.log("delete logs"),await t.deleteFrom("logs").where("date","<",r).limit(1e5).execute(),console.log("delete refresh tokens"),await t.deleteFrom("refresh_tokens").where("expires_at","<",a).limit(1e5).execute(),console.log("delete sessions");const o=await t.selectFrom("sessions").select("id").where(n=>n.or([n("expires_at","<",a),n("idle_expires_at","<",a)])).where("id","not in",t.selectFrom("refresh_tokens").select("session_id")).limit(1e5).execute();o.length>0&&await t.deleteFrom("sessions").where("id","in",o.map(n=>n.id)).execute(),console.log("cleanup complete")}}function Ta(t){return t[t.length-1]}function p(t){return Object.freeze(t)}const K=p({is(t){return t.kind==="IdentifierNode"},create(t){return p({kind:"IdentifierNode",name:t})}}),q=p({is(t){return t.kind==="SchemableIdentifierNode"},create(t){return p({kind:"SchemableIdentifierNode",identifier:K.create(t)})},createWithSchema(t,e){return p({kind:"SchemableIdentifierNode",schema:K.create(t),identifier:K.create(e)})}}),Sa=p({is(t){return t.kind==="AliasNode"},create(t,e){return p({kind:"AliasNode",node:t,alias:e})}}),B=p({is(t){return t.kind==="TableNode"},create(t){return p({kind:"TableNode",table:q.create(t)})},createWithSchema(t,e){return p({kind:"TableNode",table:q.createWithSchema(t,e)})}});var R;class Oa{constructor(){M(this,"nodeStack",[]);y(this,R,p({AliasNode:this.transformAlias.bind(this),ColumnNode:this.transformColumn.bind(this),IdentifierNode:this.transformIdentifier.bind(this),SchemableIdentifierNode:this.transformSchemableIdentifier.bind(this),RawNode:this.transformRaw.bind(this),ReferenceNode:this.transformReference.bind(this),SelectQueryNode:this.transformSelectQuery.bind(this),SelectionNode:this.transformSelection.bind(this),TableNode:this.transformTable.bind(this),FromNode:this.transformFrom.bind(this),SelectAllNode:this.transformSelectAll.bind(this),AndNode:this.transformAnd.bind(this),OrNode:this.transformOr.bind(this),ValueNode:this.transformValue.bind(this),ValueListNode:this.transformValueList.bind(this),PrimitiveValueListNode:this.transformPrimitiveValueList.bind(this),ParensNode:this.transformParens.bind(this),JoinNode:this.transformJoin.bind(this),OperatorNode:this.transformOperator.bind(this),WhereNode:this.transformWhere.bind(this),InsertQueryNode:this.transformInsertQuery.bind(this),DeleteQueryNode:this.transformDeleteQuery.bind(this),ReturningNode:this.transformReturning.bind(this),CreateTableNode:this.transformCreateTable.bind(this),AddColumnNode:this.transformAddColumn.bind(this),ColumnDefinitionNode:this.transformColumnDefinition.bind(this),DropTableNode:this.transformDropTable.bind(this),DataTypeNode:this.transformDataType.bind(this),OrderByNode:this.transformOrderBy.bind(this),OrderByItemNode:this.transformOrderByItem.bind(this),GroupByNode:this.transformGroupBy.bind(this),GroupByItemNode:this.transformGroupByItem.bind(this),UpdateQueryNode:this.transformUpdateQuery.bind(this),ColumnUpdateNode:this.transformColumnUpdate.bind(this),LimitNode:this.transformLimit.bind(this),OffsetNode:this.transformOffset.bind(this),OnConflictNode:this.transformOnConflict.bind(this),OnDuplicateKeyNode:this.transformOnDuplicateKey.bind(this),CreateIndexNode:this.transformCreateIndex.bind(this),DropIndexNode:this.transformDropIndex.bind(this),ListNode:this.transformList.bind(this),PrimaryKeyConstraintNode:this.transformPrimaryKeyConstraint.bind(this),UniqueConstraintNode:this.transformUniqueConstraint.bind(this),ReferencesNode:this.transformReferences.bind(this),CheckConstraintNode:this.transformCheckConstraint.bind(this),WithNode:this.transformWith.bind(this),CommonTableExpressionNode:this.transformCommonTableExpression.bind(this),CommonTableExpressionNameNode:this.transformCommonTableExpressionName.bind(this),HavingNode:this.transformHaving.bind(this),CreateSchemaNode:this.transformCreateSchema.bind(this),DropSchemaNode:this.transformDropSchema.bind(this),AlterTableNode:this.transformAlterTable.bind(this),DropColumnNode:this.transformDropColumn.bind(this),RenameColumnNode:this.transformRenameColumn.bind(this),AlterColumnNode:this.transformAlterColumn.bind(this),ModifyColumnNode:this.transformModifyColumn.bind(this),AddConstraintNode:this.transformAddConstraint.bind(this),DropConstraintNode:this.transformDropConstraint.bind(this),ForeignKeyConstraintNode:this.transformForeignKeyConstraint.bind(this),CreateViewNode:this.transformCreateView.bind(this),DropViewNode:this.transformDropView.bind(this),GeneratedNode:this.transformGenerated.bind(this),DefaultValueNode:this.transformDefaultValue.bind(this),OnNode:this.transformOn.bind(this),ValuesNode:this.transformValues.bind(this),SelectModifierNode:this.transformSelectModifier.bind(this),CreateTypeNode:this.transformCreateType.bind(this),DropTypeNode:this.transformDropType.bind(this),ExplainNode:this.transformExplain.bind(this),DefaultInsertValueNode:this.transformDefaultInsertValue.bind(this),AggregateFunctionNode:this.transformAggregateFunction.bind(this),OverNode:this.transformOver.bind(this),PartitionByNode:this.transformPartitionBy.bind(this),PartitionByItemNode:this.transformPartitionByItem.bind(this),SetOperationNode:this.transformSetOperation.bind(this),BinaryOperationNode:this.transformBinaryOperation.bind(this),UnaryOperationNode:this.transformUnaryOperation.bind(this),UsingNode:this.transformUsing.bind(this),FunctionNode:this.transformFunction.bind(this),CaseNode:this.transformCase.bind(this),WhenNode:this.transformWhen.bind(this),JSONReferenceNode:this.transformJSONReference.bind(this),JSONPathNode:this.transformJSONPath.bind(this),JSONPathLegNode:this.transformJSONPathLeg.bind(this),JSONOperatorChainNode:this.transformJSONOperatorChain.bind(this),TupleNode:this.transformTuple.bind(this),MergeQueryNode:this.transformMergeQuery.bind(this),MatchedNode:this.transformMatched.bind(this),AddIndexNode:this.transformAddIndex.bind(this),CastNode:this.transformCast.bind(this),FetchNode:this.transformFetch.bind(this),TopNode:this.transformTop.bind(this),OutputNode:this.transformOutput.bind(this)}))}transformNode(e){if(!e)return e;this.nodeStack.push(e);const a=this.transformNodeImpl(e);return this.nodeStack.pop(),p(a)}transformNodeImpl(e){return c(this,R)[e.kind](e)}transformNodeList(e){return e&&p(e.map(a=>this.transformNode(a)))}transformSelectQuery(e){return{kind:"SelectQueryNode",from:this.transformNode(e.from),selections:this.transformNodeList(e.selections),distinctOn:this.transformNodeList(e.distinctOn),joins:this.transformNodeList(e.joins),groupBy:this.transformNode(e.groupBy),orderBy:this.transformNode(e.orderBy),where:this.transformNode(e.where),frontModifiers:this.transformNodeList(e.frontModifiers),endModifiers:this.transformNodeList(e.endModifiers),limit:this.transformNode(e.limit),offset:this.transformNode(e.offset),with:this.transformNode(e.with),having:this.transformNode(e.having),explain:this.transformNode(e.explain),setOperations:this.transformNodeList(e.setOperations),fetch:this.transformNode(e.fetch),top:this.transformNode(e.top)}}transformSelection(e){return{kind:"SelectionNode",selection:this.transformNode(e.selection)}}transformColumn(e){return{kind:"ColumnNode",column:this.transformNode(e.column)}}transformAlias(e){return{kind:"AliasNode",node:this.transformNode(e.node),alias:this.transformNode(e.alias)}}transformTable(e){return{kind:"TableNode",table:this.transformNode(e.table)}}transformFrom(e){return{kind:"FromNode",froms:this.transformNodeList(e.froms)}}transformReference(e){return{kind:"ReferenceNode",column:this.transformNode(e.column),table:this.transformNode(e.table)}}transformAnd(e){return{kind:"AndNode",left:this.transformNode(e.left),right:this.transformNode(e.right)}}transformOr(e){return{kind:"OrNode",left:this.transformNode(e.left),right:this.transformNode(e.right)}}transformValueList(e){return{kind:"ValueListNode",values:this.transformNodeList(e.values)}}transformParens(e){return{kind:"ParensNode",node:this.transformNode(e.node)}}transformJoin(e){return{kind:"JoinNode",joinType:e.joinType,table:this.transformNode(e.table),on:this.transformNode(e.on)}}transformRaw(e){return{kind:"RawNode",sqlFragments:p([...e.sqlFragments]),parameters:this.transformNodeList(e.parameters)}}transformWhere(e){return{kind:"WhereNode",where:this.transformNode(e.where)}}transformInsertQuery(e){return{kind:"InsertQueryNode",into:this.transformNode(e.into),columns:this.transformNodeList(e.columns),values:this.transformNode(e.values),returning:this.transformNode(e.returning),onConflict:this.transformNode(e.onConflict),onDuplicateKey:this.transformNode(e.onDuplicateKey),with:this.transformNode(e.with),ignore:e.ignore,replace:e.replace,explain:this.transformNode(e.explain),defaultValues:e.defaultValues,top:this.transformNode(e.top),output:this.transformNode(e.output)}}transformValues(e){return{kind:"ValuesNode",values:this.transformNodeList(e.values)}}transformDeleteQuery(e){return{kind:"DeleteQueryNode",from:this.transformNode(e.from),using:this.transformNode(e.using),joins:this.transformNodeList(e.joins),where:this.transformNode(e.where),returning:this.transformNode(e.returning),with:this.transformNode(e.with),orderBy:this.transformNode(e.orderBy),limit:this.transformNode(e.limit),explain:this.transformNode(e.explain),top:this.transformNode(e.top),output:this.transformNode(e.output)}}transformReturning(e){return{kind:"ReturningNode",selections:this.transformNodeList(e.selections)}}transformCreateTable(e){return{kind:"CreateTableNode",table:this.transformNode(e.table),columns:this.transformNodeList(e.columns),constraints:this.transformNodeList(e.constraints),temporary:e.temporary,ifNotExists:e.ifNotExists,onCommit:e.onCommit,frontModifiers:this.transformNodeList(e.frontModifiers),endModifiers:this.transformNodeList(e.endModifiers),selectQuery:this.transformNode(e.selectQuery)}}transformColumnDefinition(e){return{kind:"ColumnDefinitionNode",column:this.transformNode(e.column),dataType:this.transformNode(e.dataType),references:this.transformNode(e.references),primaryKey:e.primaryKey,autoIncrement:e.autoIncrement,unique:e.unique,notNull:e.notNull,unsigned:e.unsigned,defaultTo:this.transformNode(e.defaultTo),check:this.transformNode(e.check),generated:this.transformNode(e.generated),frontModifiers:this.transformNodeList(e.frontModifiers),endModifiers:this.transformNodeList(e.endModifiers),nullsNotDistinct:e.nullsNotDistinct,identity:e.identity,ifNotExists:e.ifNotExists}}transformAddColumn(e){return{kind:"AddColumnNode",column:this.transformNode(e.column)}}transformDropTable(e){return{kind:"DropTableNode",table:this.transformNode(e.table),ifExists:e.ifExists,cascade:e.cascade}}transformOrderBy(e){return{kind:"OrderByNode",items:this.transformNodeList(e.items)}}transformOrderByItem(e){return{kind:"OrderByItemNode",orderBy:this.transformNode(e.orderBy),direction:this.transformNode(e.direction)}}transformGroupBy(e){return{kind:"GroupByNode",items:this.transformNodeList(e.items)}}transformGroupByItem(e){return{kind:"GroupByItemNode",groupBy:this.transformNode(e.groupBy)}}transformUpdateQuery(e){return{kind:"UpdateQueryNode",table:this.transformNode(e.table),from:this.transformNode(e.from),joins:this.transformNodeList(e.joins),where:this.transformNode(e.where),updates:this.transformNodeList(e.updates),returning:this.transformNode(e.returning),with:this.transformNode(e.with),explain:this.transformNode(e.explain),limit:this.transformNode(e.limit),top:this.transformNode(e.top),output:this.transformNode(e.output)}}transformColumnUpdate(e){return{kind:"ColumnUpdateNode",column:this.transformNode(e.column),value:this.transformNode(e.value)}}transformLimit(e){return{kind:"LimitNode",limit:this.transformNode(e.limit)}}transformOffset(e){return{kind:"OffsetNode",offset:this.transformNode(e.offset)}}transformOnConflict(e){return{kind:"OnConflictNode",columns:this.transformNodeList(e.columns),constraint:this.transformNode(e.constraint),indexExpression:this.transformNode(e.indexExpression),indexWhere:this.transformNode(e.indexWhere),updates:this.transformNodeList(e.updates),updateWhere:this.transformNode(e.updateWhere),doNothing:e.doNothing}}transformOnDuplicateKey(e){return{kind:"OnDuplicateKeyNode",updates:this.transformNodeList(e.updates)}}transformCreateIndex(e){return{kind:"CreateIndexNode",name:this.transformNode(e.name),table:this.transformNode(e.table),columns:this.transformNodeList(e.columns),unique:e.unique,using:this.transformNode(e.using),ifNotExists:e.ifNotExists,where:this.transformNode(e.where),nullsNotDistinct:e.nullsNotDistinct}}transformList(e){return{kind:"ListNode",items:this.transformNodeList(e.items)}}transformDropIndex(e){return{kind:"DropIndexNode",name:this.transformNode(e.name),table:this.transformNode(e.table),ifExists:e.ifExists,cascade:e.cascade}}transformPrimaryKeyConstraint(e){return{kind:"PrimaryKeyConstraintNode",columns:this.transformNodeList(e.columns),name:this.transformNode(e.name)}}transformUniqueConstraint(e){return{kind:"UniqueConstraintNode",columns:this.transformNodeList(e.columns),name:this.transformNode(e.name),nullsNotDistinct:e.nullsNotDistinct}}transformForeignKeyConstraint(e){return{kind:"ForeignKeyConstraintNode",columns:this.transformNodeList(e.columns),references:this.transformNode(e.references),name:this.transformNode(e.name),onDelete:e.onDelete,onUpdate:e.onUpdate}}transformSetOperation(e){return{kind:"SetOperationNode",operator:e.operator,expression:this.transformNode(e.expression),all:e.all}}transformReferences(e){return{kind:"ReferencesNode",table:this.transformNode(e.table),columns:this.transformNodeList(e.columns),onDelete:e.onDelete,onUpdate:e.onUpdate}}transformCheckConstraint(e){return{kind:"CheckConstraintNode",expression:this.transformNode(e.expression),name:this.transformNode(e.name)}}transformWith(e){return{kind:"WithNode",expressions:this.transformNodeList(e.expressions),recursive:e.recursive}}transformCommonTableExpression(e){return{kind:"CommonTableExpressionNode",name:this.transformNode(e.name),materialized:e.materialized,expression:this.transformNode(e.expression)}}transformCommonTableExpressionName(e){return{kind:"CommonTableExpressionNameNode",table:this.transformNode(e.table),columns:this.transformNodeList(e.columns)}}transformHaving(e){return{kind:"HavingNode",having:this.transformNode(e.having)}}transformCreateSchema(e){return{kind:"CreateSchemaNode",schema:this.transformNode(e.schema),ifNotExists:e.ifNotExists}}transformDropSchema(e){return{kind:"DropSchemaNode",schema:this.transformNode(e.schema),ifExists:e.ifExists,cascade:e.cascade}}transformAlterTable(e){return{kind:"AlterTableNode",table:this.transformNode(e.table),renameTo:this.transformNode(e.renameTo),setSchema:this.transformNode(e.setSchema),columnAlterations:this.transformNodeList(e.columnAlterations),addConstraint:this.transformNode(e.addConstraint),dropConstraint:this.transformNode(e.dropConstraint),addIndex:this.transformNode(e.addIndex),dropIndex:this.transformNode(e.dropIndex)}}transformDropColumn(e){return{kind:"DropColumnNode",column:this.transformNode(e.column)}}transformRenameColumn(e){return{kind:"RenameColumnNode",column:this.transformNode(e.column),renameTo:this.transformNode(e.renameTo)}}transformAlterColumn(e){return{kind:"AlterColumnNode",column:this.transformNode(e.column),dataType:this.transformNode(e.dataType),dataTypeExpression:this.transformNode(e.dataTypeExpression),setDefault:this.transformNode(e.setDefault),dropDefault:e.dropDefault,setNotNull:e.setNotNull,dropNotNull:e.dropNotNull}}transformModifyColumn(e){return{kind:"ModifyColumnNode",column:this.transformNode(e.column)}}transformAddConstraint(e){return{kind:"AddConstraintNode",constraint:this.transformNode(e.constraint)}}transformDropConstraint(e){return{kind:"DropConstraintNode",constraintName:this.transformNode(e.constraintName),ifExists:e.ifExists,modifier:e.modifier}}transformCreateView(e){return{kind:"CreateViewNode",name:this.transformNode(e.name),temporary:e.temporary,orReplace:e.orReplace,ifNotExists:e.ifNotExists,materialized:e.materialized,columns:this.transformNodeList(e.columns),as:this.transformNode(e.as)}}transformDropView(e){return{kind:"DropViewNode",name:this.transformNode(e.name),ifExists:e.ifExists,materialized:e.materialized,cascade:e.cascade}}transformGenerated(e){return{kind:"GeneratedNode",byDefault:e.byDefault,always:e.always,identity:e.identity,stored:e.stored,expression:this.transformNode(e.expression)}}transformDefaultValue(e){return{kind:"DefaultValueNode",defaultValue:this.transformNode(e.defaultValue)}}transformOn(e){return{kind:"OnNode",on:this.transformNode(e.on)}}transformSelectModifier(e){return{kind:"SelectModifierNode",modifier:e.modifier,rawModifier:this.transformNode(e.rawModifier),of:this.transformNodeList(e.of)}}transformCreateType(e){return{kind:"CreateTypeNode",name:this.transformNode(e.name),enum:this.transformNode(e.enum)}}transformDropType(e){return{kind:"DropTypeNode",name:this.transformNode(e.name),ifExists:e.ifExists}}transformExplain(e){return{kind:"ExplainNode",format:e.format,options:this.transformNode(e.options)}}transformSchemableIdentifier(e){return{kind:"SchemableIdentifierNode",schema:this.transformNode(e.schema),identifier:this.transformNode(e.identifier)}}transformAggregateFunction(e){return{kind:"AggregateFunctionNode",aggregated:this.transformNodeList(e.aggregated),distinct:e.distinct,filter:this.transformNode(e.filter),func:e.func,over:this.transformNode(e.over)}}transformOver(e){return{kind:"OverNode",orderBy:this.transformNode(e.orderBy),partitionBy:this.transformNode(e.partitionBy)}}transformPartitionBy(e){return{kind:"PartitionByNode",items:this.transformNodeList(e.items)}}transformPartitionByItem(e){return{kind:"PartitionByItemNode",partitionBy:this.transformNode(e.partitionBy)}}transformBinaryOperation(e){return{kind:"BinaryOperationNode",leftOperand:this.transformNode(e.leftOperand),operator:this.transformNode(e.operator),rightOperand:this.transformNode(e.rightOperand)}}transformUnaryOperation(e){return{kind:"UnaryOperationNode",operator:this.transformNode(e.operator),operand:this.transformNode(e.operand)}}transformUsing(e){return{kind:"UsingNode",tables:this.transformNodeList(e.tables)}}transformFunction(e){return{kind:"FunctionNode",func:e.func,arguments:this.transformNodeList(e.arguments)}}transformCase(e){return{kind:"CaseNode",value:this.transformNode(e.value),when:this.transformNodeList(e.when),else:this.transformNode(e.else),isStatement:e.isStatement}}transformWhen(e){return{kind:"WhenNode",condition:this.transformNode(e.condition),result:this.transformNode(e.result)}}transformJSONReference(e){return{kind:"JSONReferenceNode",reference:this.transformNode(e.reference),traversal:this.transformNode(e.traversal)}}transformJSONPath(e){return{kind:"JSONPathNode",inOperator:this.transformNode(e.inOperator),pathLegs:this.transformNodeList(e.pathLegs)}}transformJSONPathLeg(e){return{kind:"JSONPathLegNode",type:e.type,value:e.value}}transformJSONOperatorChain(e){return{kind:"JSONOperatorChainNode",operator:this.transformNode(e.operator),values:this.transformNodeList(e.values)}}transformTuple(e){return{kind:"TupleNode",values:this.transformNodeList(e.values)}}transformMergeQuery(e){return{kind:"MergeQueryNode",into:this.transformNode(e.into),using:this.transformNode(e.using),whens:this.transformNodeList(e.whens),with:this.transformNode(e.with),top:this.transformNode(e.top),output:this.transformNode(e.output)}}transformMatched(e){return{kind:"MatchedNode",not:e.not,bySource:e.bySource}}transformAddIndex(e){return{kind:"AddIndexNode",name:this.transformNode(e.name),columns:this.transformNodeList(e.columns),unique:e.unique,using:this.transformNode(e.using),ifNotExists:e.ifNotExists}}transformCast(e){return{kind:"CastNode",expression:this.transformNode(e.expression),dataType:this.transformNode(e.dataType)}}transformFetch(e){return{kind:"FetchNode",rowCount:this.transformNode(e.rowCount),modifier:e.modifier}}transformTop(e){return{kind:"TopNode",expression:e.expression,modifiers:e.modifiers}}transformOutput(e){return{kind:"OutputNode",selections:this.transformNodeList(e.selections)}}transformDataType(e){return e}transformSelectAll(e){return e}transformIdentifier(e){return e}transformValue(e){return e}transformPrimitiveValueList(e){return e}transformOperator(e){return e}transformDefaultInsertValue(e){return e}}R=new WeakMap;const ka=p({AlterTableNode:!0,CreateIndexNode:!0,CreateSchemaNode:!0,CreateTableNode:!0,CreateTypeNode:!0,CreateViewNode:!0,DeleteQueryNode:!0,DropIndexNode:!0,DropSchemaNode:!0,DropTableNode:!0,DropTypeNode:!0,DropViewNode:!0,InsertQueryNode:!0,RawNode:!0,SelectQueryNode:!0,UpdateQueryNode:!0,MergeQueryNode:!0});var j,T,S,f,ge,ye,we,D,G,ve;class $a extends Oa{constructor(a){super();y(this,f);y(this,j);y(this,T,new Set);y(this,S,new Set);F(this,j,a)}transformNodeImpl(a){if(!u(this,f,ge).call(this,a))return super.transformNodeImpl(a);const r=u(this,f,we).call(this,a);for(const s of r)c(this,S).add(s);const o=u(this,f,ye).call(this,a);for(const s of o)c(this,T).add(s);const n=super.transformNodeImpl(a);for(const s of o)c(this,T).delete(s);for(const s of r)c(this,S).delete(s);return n}transformSchemableIdentifier(a){const r=super.transformSchemableIdentifier(a);return r.schema||!c(this,T).has(a.identifier.name)?r:{...r,schema:K.create(c(this,j))}}transformReferences(a){const r=super.transformReferences(a);return r.table.table.schema?r:{...r,table:B.createWithSchema(c(this,j),r.table.table.identifier.name)}}}j=new WeakMap,T=new WeakMap,S=new WeakMap,f=new WeakSet,ge=function(a){return a.kind in ka},ye=function(a){const r=new Set;if("name"in a&&a.name&&q.is(a.name)&&u(this,f,G).call(this,a.name,r),"from"in a&&a.from)for(const o of a.from.froms)u(this,f,D).call(this,o,r);if("into"in a&&a.into&&u(this,f,D).call(this,a.into,r),"table"in a&&a.table&&u(this,f,D).call(this,a.table,r),"joins"in a&&a.joins)for(const o of a.joins)u(this,f,D).call(this,o.table,r);return"using"in a&&a.using&&u(this,f,D).call(this,a.using,r),r},we=function(a){const r=new Set;return"with"in a&&a.with&&u(this,f,ve).call(this,a.with,r),r},D=function(a,r){const o=B.is(a)?a:Sa.is(a)&&B.is(a.node)?a.node:null;o&&u(this,f,G).call(this,o.table,r)},G=function(a,r){const o=a.identifier.name;!c(this,T).has(o)&&!c(this,S).has(o)&&r.add(o)},ve=function(a,r){for(const o of a.expressions){const n=o.name.table.table.identifier.name;c(this,S).has(n)||r.add(n)}};var z;class Da{constructor(e){y(this,z);F(this,z,new $a(e))}transformQuery(e){return c(this,z).transformNode(e.node)}async transformResult(e){return e.result}}z=new WeakMap;class Ia{transformQuery(e){return e.node}async transformResult(e){return e.result}}const Pa="kysely_migration",_e="kysely_migration_lock",ja=!1,Q="migration_lock",Ma=p({__noMigrations__:!0});var h,i,A,v,N,I,Ce,C,be,xe,Te,Se,Oe,H,P,X,ke,$e,De,Y,Ie,Pe,je,Me,Fe,L;class Ne{constructor(e){y(this,i);y(this,h);F(this,h,p(e))}async getMigrations(){const e=await u(this,i,P).call(this,c(this,i,N))?await c(this,h).db.withPlugin(c(this,i,C)).selectFrom(c(this,i,N)).select(["name","timestamp"]).execute():[];return(await u(this,i,Y).call(this)).map(({name:r,...o})=>{const n=e.find(s=>s.name===r);return{name:r,migration:o,executedAt:n?new Date(n.timestamp):void 0}})}async migrateToLatest(){return u(this,i,A).call(this,()=>({direction:"Up",step:1/0}))}async migrateTo(e){return u(this,i,A).call(this,({migrations:a,executedMigrations:r,pendingMigrations:o})=>{if(e===Ma)return{direction:"Down",step:1/0};if(!a.find(l=>l.name===e))throw new Error(`migration "${e}" doesn't exist`);const n=r.indexOf(e),s=o.findIndex(l=>l.name===e);if(n!==-1)return{direction:"Down",step:r.length-n-1};if(s!==-1)return{direction:"Up",step:s+1};throw new Error(`migration "${e}" isn't executed or pending`)})}async migrateUp(){return u(this,i,A).call(this,()=>({direction:"Up",step:1}))}async migrateDown(){return u(this,i,A).call(this,()=>({direction:"Down",step:1}))}}h=new WeakMap,i=new WeakSet,A=async function(e){try{return await u(this,i,be).call(this),await u(this,i,ke).call(this,e)}catch(a){return a instanceof V?a.resultSet:{error:a}}},v=function(){return c(this,h).migrationTableSchema},N=function(){return c(this,h).migrationTableName??Pa},I=function(){return c(this,h).migrationLockTableName??_e},Ce=function(){return c(this,h).allowUnorderedMigrations??ja},C=function(){return c(this,i,v)?new Da(c(this,i,v)):new Ia},be=async function(){await u(this,i,xe).call(this),await u(this,i,Te).call(this),await u(this,i,Se).call(this),await u(this,i,Oe).call(this)},xe=async function(){if(c(this,i,v)&&!await u(this,i,H).call(this))try{await u(this,i,L).call(this,c(this,h).db.schema.createSchema(c(this,i,v)))}catch(e){if(!await u(this,i,H).call(this))throw e}},Te=async function(){if(!await u(this,i,P).call(this,c(this,i,N)))try{c(this,i,v)&&await u(this,i,L).call(this,c(this,h).db.schema.createSchema(c(this,i,v))),await u(this,i,L).call(this,c(this,h).db.schema.withPlugin(c(this,i,C)).createTable(c(this,i,N)).addColumn("name","varchar(255)",e=>e.notNull().primaryKey()).addColumn("timestamp","varchar(255)",e=>e.notNull()))}catch(e){if(!await u(this,i,P).call(this,c(this,i,N)))throw e}},Se=async function(){if(!await u(this,i,P).call(this,c(this,i,I)))try{await u(this,i,L).call(this,c(this,h).db.schema.withPlugin(c(this,i,C)).createTable(c(this,i,I)).addColumn("id","varchar(255)",e=>e.notNull().primaryKey()).addColumn("is_locked","integer",e=>e.notNull().defaultTo(0)))}catch(e){if(!await u(this,i,P).call(this,c(this,i,I)))throw e}},Oe=async function(){if(!await u(this,i,X).call(this))try{await c(this,h).db.withPlugin(c(this,i,C)).insertInto(c(this,i,I)).values({id:Q,is_locked:0}).execute()}catch(e){if(!await u(this,i,X).call(this))throw e}},H=async function(){return(await c(this,h).db.introspection.getSchemas()).some(a=>a.name===c(this,i,v))},P=async function(e){const a=c(this,i,v);return(await c(this,h).db.introspection.getTables({withInternalKyselyTables:!0})).some(o=>o.name===e&&(!a||o.schema===a))},X=async function(){return!!await c(this,h).db.withPlugin(c(this,i,C)).selectFrom(c(this,i,I)).where("id","=",Q).select("id").executeTakeFirst()},ke=async function(e){const a=c(this,h).db.getExecutor().adapter,r=p({lockTable:c(this,h).migrationLockTableName??_e,lockRowId:Q,lockTableSchema:c(this,h).migrationTableSchema}),o=async n=>{try{await a.acquireMigrationLock(n,r);const s=await u(this,i,$e).call(this,n);if(s.migrations.length===0)return{results:[]};const{direction:l,step:d}=e(s);return d<=0?{results:[]}:l==="Down"?await u(this,i,Me).call(this,n,s,d):l==="Up"?await u(this,i,Fe).call(this,n,s,d):{results:[]}}finally{await a.releaseMigrationLock(n,r)}};return a.supportsTransactionalDdl?c(this,h).db.transaction().execute(o):c(this,h).db.connection().execute(o)},$e=async function(e){const a=await u(this,i,Y).call(this),r=await u(this,i,Ie).call(this,e);u(this,i,Pe).call(this,a,r),c(this,i,Ce)||u(this,i,je).call(this,a,r);const o=u(this,i,De).call(this,a,r);return p({migrations:a,executedMigrations:r,lastMigration:Ta(r),pendingMigrations:o})},De=function(e,a){return e.filter(r=>!a.includes(r.name))},Y=async function(){const e=await c(this,h).provider.getMigrations();return Object.keys(e).sort().map(a=>({...e[a],name:a}))},Ie=async function(e){return(await e.withPlugin(c(this,i,C)).selectFrom(c(this,i,N)).select("name").orderBy(["timestamp","name"]).execute()).map(r=>r.name)},Pe=function(e,a){for(const r of a)if(!e.some(o=>o.name===r))throw new Error(`corrupted migrations: previously executed migration ${r} is missing`)},je=function(e,a){for(let r=0;r<a.length;++r)if(e[r].name!==a[r])throw new Error(`corrupted migrations: expected previously executed migration ${a[r]} to be at index ${r} but ${e[r].name} was found in its place. New migrations must always have a name that comes alphabetically after the last executed migration.`)},Me=async function(e,a,r){const o=a.executedMigrations.slice().reverse().slice(0,r).map(s=>a.migrations.find(l=>l.name===s)),n=o.map(s=>({migrationName:s.name,direction:"Down",status:"NotExecuted"}));for(let s=0;s<n.length;++s){const l=o[s];try{l.down&&(await l.down(e),await e.withPlugin(c(this,i,C)).deleteFrom(c(this,i,N)).where("name","=",l.name).execute(),n[s]={migrationName:l.name,direction:"Down",status:"Success"})}catch(d){throw n[s]={migrationName:l.name,direction:"Down",status:"Error"},new V({error:d,results:n})}}return{results:n}},Fe=async function(e,a,r){const n=a.pendingMigrations.slice(0,r).map(s=>({migrationName:s.name,direction:"Up",status:"NotExecuted"}));for(let s=0;s<n.length;s++){const l=a.pendingMigrations[s];try{await l.up(e),await e.withPlugin(c(this,i,C)).insertInto(c(this,i,N)).values({name:l.name,timestamp:new Date().toISOString()}).execute(),n[s]={migrationName:l.name,direction:"Up",status:"Success"}}catch(d){throw n[s]={migrationName:l.name,direction:"Up",status:"Error"},new V({error:d,results:n})}}return{results:n}},L=async function(e){c(this,h).db.getExecutor().adapter.supportsCreateIfNotExists&&(e=e.ifNotExists()),await e.execute()};var E;class V extends Error{constructor(a){super();y(this,E);F(this,E,a)}get resultSet(){return c(this,E)}}E=new WeakMap;class Ae{constructor(e){M(this,"migrations");this.migrations=e}async getMigrations(){return this.migrations}}async function Fa(t){await t.schema.createTable("tenants").addColumn("id","varchar(255)",e=>e.primaryKey()).addColumn("name","varchar(255)").addColumn("audience","varchar(255)").addColumn("sender_email","varchar(255)").addColumn("sender_name","varchar(255)").addColumn("language","varchar(255)").addColumn("logo","varchar(255)").addColumn("primary_color","varchar(255)").addColumn("secondary_color","varchar(255)").addColumn("created_at","varchar(255)",e=>e.notNull()).addColumn("updated_at","varchar(255)",e=>e.notNull()).execute(),await t.schema.createTable("users").addColumn("user_id","varchar(255)",e=>e.notNull()).addColumn("tenant_id","varchar(255)",e=>e.references("tenants.id").onDelete("cascade").notNull()).addColumn("email","varchar(255)",e=>e.notNull()).addColumn("given_name","varchar(255)").addColumn("family_name","varchar(255)").addColumn("nickname","varchar(255)").addColumn("name","varchar(255)").addColumn("picture","varchar(2083)").addColumn("tags","varchar(255)").addColumn("created_at","varchar(255)",e=>e.notNull()).addColumn("updated_at","varchar(255)",e=>e.notNull()).addPrimaryKeyConstraint("users_tenants",["user_id","tenant_id"]).addColumn("linked_to","varchar(255)").addForeignKeyConstraint("linked_to_constraint",["linked_to","tenant_id"],"users",["user_id","tenant_id"]).addColumn("last_ip","varchar(255)").addColumn("login_count","integer",e=>e.notNull()).addColumn("last_login","varchar(255)").addColumn("provider","varchar(255)",e=>e.notNull()).addColumn("connection","varchar(255)").addColumn("email_verified","boolean",e=>e.notNull()).addColumn("is_social","boolean",e=>e.notNull()).addColumn("app_metadata","varchar(4096)",e=>e.defaultTo("{}").notNull()).addColumn("user_metadata","varchar(4096)",e=>e.defaultTo("{}").notNull()).addUniqueConstraint("unique_email_provider",["email","provider","tenant_id"]).execute(),await t.schema.createTable("members").addColumn("id","varchar(255)",e=>e.notNull().primaryKey()).addColumn("tenant_id","varchar(255)",e=>e.references("tenants.id").onDelete("cascade").notNull()).addColumn("sub","varchar(255)").addColumn("email","varchar(255)").addColumn("name","varchar(255)").addColumn("status","varchar(255)").addColumn("role","varchar(255)").addColumn("picture","varchar(2083)").addColumn("created_at","varchar(255)",e=>e.notNull()).addColumn("updated_at","varchar(255)",e=>e.notNull()).execute(),await t.schema.createTable("applications").addColumn("id","varchar(255)",e=>e.notNull().primaryKey()).addColumn("tenant_id","varchar(255)",e=>e.references("tenants.id").onDelete("cascade").notNull()).addColumn("name","varchar(255)",e=>e.notNull()).addColumn("client_secret","varchar(255)").addColumn("allowed_logout_urls","varchar(255)").addColumn("authentication_settings","varchar(255)").addColumn("addons","varchar(4096)",e=>e.notNull().defaultTo("{}")).addColumn("callbacks","varchar(1024)",e=>e.notNull().defaultTo("[]")).addColumn("allowed_origins","varchar(1024)",e=>e.notNull().defaultTo("[]")).addColumn("web_origins","varchar(1024)",e=>e.notNull().defaultTo("[]")).addColumn("allowed_clients","varchar(1024)",e=>e.defaultTo("[]").notNull()).addColumn("options_kid","varchar(32)").addColumn("options_team_id","varchar(32)").addColumn("options_client_id","varchar(128)").addColumn("options_client_secret","varchar(255)").addColumn("options_scope","varchar(255)").addColumn("options_realms","varchar(255)").addColumn("options_app_secret","varchar(1024)").addColumn("email_validation","varchar(255)").addColumn("disable_sign_ups","boolean",e=>e.notNull()).addColumn("created_at","varchar(255)",e=>e.notNull()).addColumn("updated_at","varchar(255)",e=>e.notNull()).execute(),await t.schema.createTable("connections").addColumn("id","varchar(255)",e=>e.notNull().primaryKey()).addColumn("tenant_id","varchar(255)",e=>e.references("tenants.id").onDelete("cascade").notNull()).addColumn("name","varchar(255)",e=>e.notNull()).addColumn("response_type","varchar(255)").addColumn("response_mode","varchar(255)").addColumn("strategy","varchar(64)").addColumn("options","varchar(2048)",e=>e.defaultTo("{}").notNull()).addColumn("created_at","varchar(255)",e=>e.notNull()).addColumn("updated_at","varchar(255)",e=>e.notNull()).execute(),await t.schema.createTable("migrations").addColumn("id","varchar(255)",e=>e.notNull().primaryKey()).addColumn("tenant_id","varchar(255)",e=>e.references("tenants.id").onDelete("cascade").notNull()).addColumn("provider","varchar(255)").addColumn("client_id","varchar(255)").addColumn("origin","varchar(255)").addColumn("domain","varchar(255)").addColumn("created_at","varchar(255)",e=>e.notNull()).addColumn("updated_at","varchar(255)",e=>e.notNull()).execute(),await t.schema.createTable("domains").addColumn("id","varchar(255)",e=>e.notNull().primaryKey()).addColumn("tenant_id","varchar(255)",e=>e.references("tenants.id").onDelete("cascade").notNull()).addColumn("domain","varchar(255)",e=>e.notNull()).addColumn("email_service","varchar(255)").addColumn("email_api_key","varchar(255)").addColumn("dkim_private_key","varchar(2048)").addColumn("dkim_public_key","varchar(2048)").addColumn("created_at","varchar(255)",e=>e.notNull()).addColumn("updated_at","varchar(255)",e=>e.notNull()).execute()}async function Aa(t){await t.schema.dropTable("domains").execute(),await t.schema.dropTable("members").execute(),await t.schema.dropTable("users").execute(),await t.schema.dropTable("connections").execute(),await t.schema.dropTable("applications").execute(),await t.schema.dropTable("migrations").execute(),await t.schema.dropTable("tenants").execute()}const La=Object.freeze(Object.defineProperty({__proto__:null,down:Aa,up:Fa},Symbol.toStringTag,{value:"Module"}));async function za(t){await t.schema.alterTable("tenants").addColumn("support_url","varchar(255)").execute()}async function Ea(t){await t.schema.alterTable("tenants").dropColumn("support_url").execute()}const Ja=Object.freeze(Object.defineProperty({__proto__:null,down:Ea,up:za},Symbol.toStringTag,{value:"Module"}));async function Ka(t){}async function Ra(t){}const Ua=Object.freeze(Object.defineProperty({__proto__:null,down:Ra,up:Ka},Symbol.toStringTag,{value:"Module"}));async function Ba(t){await t.schema.createTable("logs").addColumn("id","varchar(255)",e=>e.notNull().primaryKey()).addColumn("category","varchar(255)",e=>e.notNull()).addColumn("tenant_id","varchar(64)").addColumn("user_id","varchar(64)").addForeignKeyConstraint("tenant_id_constraint",["tenant_id"],"tenants",["id"],e=>e.onDelete("cascade")).addColumn("ip","varchar(255)").addColumn("type","varchar(8)",e=>e.notNull()).addColumn("date","varchar(25)",e=>e.notNull()).addColumn("client_id","varchar(255)").addColumn("client_name","varchar(255)").addColumn("user_agent","varchar(255)").addColumn("description","varchar(255)").addColumn("details","varchar(2048)").execute()}async function Qa(t){await t.schema.dropTable("logs").execute()}const Va=Object.freeze(Object.defineProperty({__proto__:null,down:Qa,up:Ba},Symbol.toStringTag,{value:"Module"}));async function Wa(t){}async function qa(t){}const Ga=Object.freeze(Object.defineProperty({__proto__:null,down:qa,up:Wa},Symbol.toStringTag,{value:"Module"}));async function Ha(t){await t.schema.createTable("sessions").addColumn("id","varchar(21)",e=>e.primaryKey()).addColumn("tenant_id","varchar(255)").addColumn("user_id","varchar(255)").addForeignKeyConstraint("user_id_constraint",["user_id","tenant_id"],"users",["user_id","tenant_id"],e=>e.onDelete("cascade")).addColumn("created_at","varchar(35)",e=>e.notNull()).addColumn("updated_at","varchar(35)",e=>e.notNull()).addColumn("expires_at","varchar(35)").addColumn("idle_expires_at","varchar(35)").addColumn("authenticated_at","varchar(35)").addColumn("last_interaction_at","varchar(35)").addColumn("used_at","varchar(35)").addColumn("revoked_at","varchar(35)").addColumn("device","varchar(2048)",e=>e.notNull()).addColumn("clients","varchar(1024)",e=>e.notNull()).execute(),await t.schema.createTable("tickets").addColumn("tenant_id","varchar(255)",e=>e.references("tenants.id").onDelete("cascade").notNull()).addColumn("id","varchar(255)",e=>e.primaryKey()).addColumn("client_id","varchar(255)",e=>e.references("applications.id").onDelete("cascade").notNull()).addColumn("email","varchar(255)",e=>e.notNull()).addColumn("nonce","varchar(255)").addColumn("state","varchar(1024)").addColumn("scope","varchar(1024)").addColumn("response_type","varchar(256)").addColumn("response_mode","varchar(256)").addColumn("redirect_uri","varchar(1024)").addColumn("created_at","varchar(255)",e=>e.notNull()).addColumn("expires_at","varchar(255)",e=>e.notNull()).addColumn("used_at","varchar(255)").execute(),await t.schema.createTable("otps").addColumn("tenant_id","varchar(255)",e=>e.references("tenants.id").onDelete("cascade").notNull()).addColumn("id","varchar(255)",e=>e.primaryKey()).addColumn("client_id","varchar(255)",e=>e.references("applications.id").onDelete("cascade").notNull()).addColumn("code","varchar(255)",e=>e.notNull()).addColumn("email","varchar(255)",e=>e.notNull()).addColumn("user_id","varchar(255)").addColumn("send","varchar(255)").addColumn("nonce","varchar(255)").addColumn("state","varchar(1024)").addColumn("scope","varchar(1024)").addColumn("response_type","varchar(256)").addColumn("response_mode","varchar(256)").addColumn("redirect_uri","varchar(1024)").addColumn("created_at","varchar(255)",e=>e.notNull()).addColumn("expires_at","varchar(255)",e=>e.notNull()).addColumn("used_at","varchar(255)").execute(),await t.schema.createIndex("otps_email_index").on("otps").column("email").execute(),await t.schema.createIndex("otps_expires_at_index").on("otps").column("expires_at").execute()}async function Xa(t){await t.schema.dropTable("sessions").execute(),await t.schema.dropTable("tickets").execute(),await t.schema.dropTable("otps").execute()}const Ya=Object.freeze(Object.defineProperty({__proto__:null,down:Xa,up:Ha},Symbol.toStringTag,{value:"Module"}));async function Za(t){await t.schema.createTable("passwords").addColumn("tenant_id","varchar(255)").addColumn("user_id","varchar(255)").addPrimaryKeyConstraint("passwords_pkey",["user_id","tenant_id"]).addForeignKeyConstraint("user_id_constraint",["user_id","tenant_id"],"users",["user_id","tenant_id"],e=>e.onDelete("cascade")).addColumn("created_at","varchar(255)").addColumn("updated_at","varchar(255)").execute(),await t.schema.createTable("codes").addColumn("id","varchar(255)",e=>e.primaryKey()).addColumn("user_id","varchar(255)").addColumn("tenant_id","varchar(255)").addForeignKeyConstraint("user_id_constraint",["user_id","tenant_id"],"users",["user_id","tenant_id"],e=>e.onDelete("cascade")).addColumn("type","varchar(255)",e=>e.notNull()).addColumn("created_at","varchar(255)",e=>e.notNull()).addColumn("expires_at","varchar(255)",e=>e.notNull()).addColumn("used_at","varchar(255)").execute(),await t.schema.createIndex("codes_expires_at_index").on("codes").column("expires_at").execute()}async function er(t){await t.schema.dropTable("passwords").execute(),await t.schema.dropTable("codes").execute()}const tr=Object.freeze(Object.defineProperty({__proto__:null,down:er,up:Za},Symbol.toStringTag,{value:"Module"}));async function ar(t){}async function rr(t){}const nr=Object.freeze(Object.defineProperty({__proto__:null,down:rr,up:ar},Symbol.toStringTag,{value:"Module"}));async function or(t){await t.schema.alterTable("passwords").addColumn("password","varchar(255)",e=>e.notNull()).execute()}async function sr(t){await t.schema.alterTable("passwords").dropColumn("password").execute()}const ir=Object.freeze(Object.defineProperty({__proto__:null,down:sr,up:or},Symbol.toStringTag,{value:"Module"}));async function dr(t){}async function cr(t){}const lr=Object.freeze(Object.defineProperty({__proto__:null,down:cr,up:dr},Symbol.toStringTag,{value:"Module"}));async function ur(t){}async function mr(t){}const hr=Object.freeze(Object.defineProperty({__proto__:null,down:mr,up:ur},Symbol.toStringTag,{value:"Module"}));async function _r(t){}async function fr(t){}const pr=Object.freeze(Object.defineProperty({__proto__:null,down:fr,up:_r},Symbol.toStringTag,{value:"Module"}));async function gr(t){await t.schema.createIndex("users_email_index").on("users").column("email").execute()}async function yr(t){await t.schema.dropIndex("users_email_index").execute()}const wr=Object.freeze(Object.defineProperty({__proto__:null,down:yr,up:gr},Symbol.toStringTag,{value:"Module"}));async function vr(t){await t.schema.alterTable("users").addColumn("profileData","varchar(2048)").execute()}async function Nr(t){await t.schema.alterTable("users").dropColumn("profileData").execute()}const Cr=Object.freeze(Object.defineProperty({__proto__:null,down:Nr,up:vr},Symbol.toStringTag,{value:"Module"}));async function br(t){await t.schema.createIndex("users_linked_to_index").on("users").column("linked_to").execute()}async function xr(t){await t.schema.dropIndex("users_linked_to_index")}const Tr=Object.freeze(Object.defineProperty({__proto__:null,down:xr,up:br},Symbol.toStringTag,{value:"Module"}));async function Sr(t){await t.schema.alterTable("users").addColumn("locale","varchar(255)").execute()}async function Or(t){await t.schema.alterTable("users").dropColumn("locale").execute()}const kr=Object.freeze(Object.defineProperty({__proto__:null,down:Or,up:Sr},Symbol.toStringTag,{value:"Module"}));async function $r(t){await t.schema.createTable("keys").addColumn("kid","varchar(255)",e=>e.primaryKey()).addColumn("tenant_id","varchar(255)",e=>e.references("tenants.id").onDelete("cascade")).addColumn("created_at","varchar(255)",e=>e.notNull()).addColumn("revoked_at","varchar(255)").addColumn("cert","varchar(2048)").addColumn("pkcs7","varchar(2048)").addColumn("fingerprint","varchar(256)").addColumn("thumbprint","varchar(256)").addColumn("current_since","varchar(256)").addColumn("current_until","varchar(256)").execute()}async function Dr(t){await t.schema.dropTable("keys").execute()}const Ir=Object.freeze(Object.defineProperty({__proto__:null,down:Dr,up:$r},Symbol.toStringTag,{value:"Module"}));async function Pr(t){}async function jr(t){}const Mr=Object.freeze(Object.defineProperty({__proto__:null,down:jr,up:Pr},Symbol.toStringTag,{value:"Module"}));async function Fr(t){}async function Ar(t){}const Lr=Object.freeze(Object.defineProperty({__proto__:null,down:Ar,up:Fr},Symbol.toStringTag,{value:"Module"}));async function zr(t){await t.schema.alterTable("otps").addColumn("audience","varchar(255)").execute()}async function Er(t){await t.schema.alterTable("otps").dropColumn("audience").execute()}const Jr=Object.freeze(Object.defineProperty({__proto__:null,down:Er,up:zr},Symbol.toStringTag,{value:"Module"}));async function Kr(t){}async function Rr(t){}const Ur=Object.freeze(Object.defineProperty({__proto__:null,down:Rr,up:Kr},Symbol.toStringTag,{value:"Module"}));async function Br(t){await t.schema.alterTable("logs").dropColumn("category").execute()}async function Qr(t){await t.schema.alterTable("logs").addColumn("category","varchar(255)",e=>e.notNull()).execute()}const Vr=Object.freeze(Object.defineProperty({__proto__:null,down:Qr,up:Br},Symbol.toStringTag,{value:"Module"}));async function Wr(t){await t.schema.alterTable("users").dropColumn("tags").execute()}async function qr(t){await t.schema.alterTable("users").addColumn("tags","varchar(255)").execute()}const Gr=Object.freeze(Object.defineProperty({__proto__:null,down:qr,up:Wr},Symbol.toStringTag,{value:"Module"}));async function Hr(t){await t.schema.createIndex("logs_user_id").on("logs").column("user_id").execute(),await t.schema.createIndex("logs_tenant_id").on("logs").column("tenant_id").execute(),await t.schema.createIndex("logs_date").on("logs").column("date").execute()}async function Xr(t){await t.schema.dropIndex("logs_user_id"),await t.schema.dropIndex("logs_tenant_id"),await t.schema.dropIndex("logs_date")}const Yr=Object.freeze(Object.defineProperty({__proto__:null,down:Xr,up:Hr},Symbol.toStringTag,{value:"Module"}));async function Zr(t){await t.schema.alterTable("logs").dropColumn("details").execute(),await t.schema.alterTable("logs").addColumn("details","varchar(8192)").execute()}async function en(t){await t.schema.alterTable("logs").dropColumn("details").execute(),await t.schema.alterTable("logs").addColumn("details","varchar(2048)").execute()}const tn=Object.freeze(Object.defineProperty({__proto__:null,down:en,up:Zr},Symbol.toStringTag,{value:"Module"}));async function an(t){await t.schema.alterTable("logs").addColumn("user_name","varchar(255)").execute(),await t.schema.alterTable("logs").addColumn("auth0_client","varchar(255)").execute(),await t.schema.alterTable("logs").addColumn("isMobile","boolean").execute(),await t.schema.alterTable("logs").addColumn("connection","varchar(255)").execute(),await t.schema.alterTable("logs").addColumn("connection_id","varchar(255)").execute(),await t.schema.alterTable("logs").addColumn("audience","varchar(255)").execute(),await t.schema.alterTable("logs").addColumn("scope","varchar(255)").execute(),await t.schema.alterTable("logs").addColumn("strategy","varchar(255)").execute(),await t.schema.alterTable("logs").addColumn("strategy_type","varchar(255)").execute(),await t.schema.alterTable("logs").addColumn("hostname","varchar(255)").execute(),await t.schema.alterTable("logs").addColumn("session_connection","varchar(255)").execute()}async function rn(t){await t.schema.alterTable("logs").dropColumn("user_name").execute(),await t.schema.alterTable("logs").dropColumn("auth0_client").execute(),await t.schema.alterTable("logs").dropColumn("isMobile").execute(),await t.schema.alterTable("logs").dropColumn("connection").execute(),await t.schema.alterTable("logs").dropColumn("connection_id").execute(),await t.schema.alterTable("logs").dropColumn("audience").execute(),await t.schema.alterTable("logs").dropColumn("scope").execute(),await t.schema.alterTable("logs").dropColumn("strategy").execute(),await t.schema.alterTable("logs").dropColumn("strategy_type").execute(),await t.schema.alterTable("logs").dropColumn("hostname").execute(),await t.schema.alterTable("logs").dropColumn("session_connection").execute()}const nn=Object.freeze(Object.defineProperty({__proto__:null,down:rn,up:an},Symbol.toStringTag,{value:"Module"}));async function on(t){await t.schema.createIndex("users_name_index").on("users").column("name").execute()}async function sn(t){await t.schema.dropIndex("users_name_index").execute()}const dn=Object.freeze(Object.defineProperty({__proto__:null,down:sn,up:on},Symbol.toStringTag,{value:"Module"}));async function cn(t){}async function ln(t){await t.schema.alterTable("users").dropConstraint("unique_email_provider").execute()}const un=Object.freeze(Object.defineProperty({__proto__:null,down:ln,up:cn},Symbol.toStringTag,{value:"Module"}));async function mn(t){await t.schema.alterTable("otps").dropColumn("state").execute(),await t.schema.alterTable("otps").addColumn("state","varchar(8192)").execute()}async function hn(t){await t.schema.alterTable("otps").dropColumn("state").execute(),await t.schema.alterTable("otps").addColumn("state","varchar(1024)").execute()}const _n=Object.freeze(Object.defineProperty({__proto__:null,down:hn,up:mn},Symbol.toStringTag,{value:"Module"}));async function fn(t){await t.schema.alterTable("tickets").dropColumn("state").execute(),await t.schema.alterTable("tickets").addColumn("state","varchar(8192)").execute()}async function pn(t){await t.schema.alterTable("tickets").dropColumn("state").execute(),await t.schema.alterTable("tickets").addColumn("state","varchar(1024)").execute()}const gn=Object.freeze(Object.defineProperty({__proto__:null,down:pn,up:fn},Symbol.toStringTag,{value:"Module"}));async function yn(t){await t.schema.createTable("branding").addColumn("tenant_id","varchar(255)",e=>e.references("tenants.id").onDelete("cascade").notNull().primaryKey()).addColumn("logo_url","varchar(512)").addColumn("favicon_url","varchar(512)").addColumn("font_url","varchar(512)").addColumn("colors_primary","varchar(8)").addColumn("colors_page_background_type","varchar(32)").addColumn("colors_page_background_start","varchar(8)").addColumn("colors_page_background_end","varchar(8)").addColumn("colors_page_background_angle_dev","integer").execute()}async function wn(t){await t.schema.dropTable("branding").execute()}const vn=Object.freeze(Object.defineProperty({__proto__:null,down:wn,up:yn},Symbol.toStringTag,{value:"Module"}));async function Nn(t){}async function Cn(t){}const bn=Object.freeze(Object.defineProperty({__proto__:null,down:Cn,up:Nn},Symbol.toStringTag,{value:"Module"}));async function xn(t){}async function Tn(t){}const Sn=Object.freeze(Object.defineProperty({__proto__:null,down:Tn,up:xn},Symbol.toStringTag,{value:"Module"}));async function On(t){}async function kn(t){}const $n=Object.freeze(Object.defineProperty({__proto__:null,down:kn,up:On},Symbol.toStringTag,{value:"Module"}));async function Dn(t){}async function In(t){}const Pn=Object.freeze(Object.defineProperty({__proto__:null,down:In,up:Dn},Symbol.toStringTag,{value:"Module"}));async function jn(t){await t.schema.createTable("authentication_codes").addColumn("tenant_id","varchar(255)",e=>e.references("tenants.id").onDelete("cascade").notNull()).addColumn("code","varchar(255)",e=>e.primaryKey()).addColumn("client_id","varchar(255)",e=>e.references("applications.id").onDelete("cascade").notNull()).addColumn("user_id","varchar(255)",e=>e.notNull()).addColumn("nonce","varchar(255)").addColumn("state","varchar(8192)").addColumn("scope","varchar(1024)").addColumn("response_type","varchar(256)").addColumn("response_mode","varchar(256)").addColumn("redirect_uri","varchar(1024)").addColumn("created_at","varchar(255)",e=>e.notNull()).addColumn("expires_at","varchar(255)",e=>e.notNull()).addColumn("used_at","varchar(255)").execute()}async function Mn(t){await t.schema.dropTable("authentication_codes").execute()}const Fn=Object.freeze(Object.defineProperty({__proto__:null,down:Mn,up:jn},Symbol.toStringTag,{value:"Module"}));async function An(t){}async function Ln(t){}const zn=Object.freeze(Object.defineProperty({__proto__:null,down:Ln,up:An},Symbol.toStringTag,{value:"Module"}));async function En(t){await t.schema.alterTable("otps").addColumn("ip","varchar(64)").execute()}async function Jn(t){await t.schema.alterTable("otps").dropColumn("ip").execute()}const Kn=Object.freeze(Object.defineProperty({__proto__:null,down:Jn,up:En},Symbol.toStringTag,{value:"Module"}));async function Rn(t){await t.schema.alterTable("logs").dropColumn("user_agent").execute(),await t.schema.alterTable("logs").addColumn("user_agent","varchar(1024)").execute()}async function Un(t){await t.schema.alterTable("logs").dropColumn("user_agent").execute(),await t.schema.alterTable("logs").addColumn("user_agent","varchar(255)").execute()}const Bn=Object.freeze(Object.defineProperty({__proto__:null,down:Un,up:Rn},Symbol.toStringTag,{value:"Module"}));async function Qn(t){}async function Vn(t){}const Wn=Object.freeze(Object.defineProperty({__proto__:null,down:Vn,up:Qn},Symbol.toStringTag,{value:"Module"}));async function qn(t){await t.schema.createTable("hooks").addColumn("hook_id","varchar(255)",e=>e.notNull().primaryKey()).addColumn("tenant_id","varchar(255)",e=>e.references("tenants.id").onDelete("cascade").notNull()).addColumn("url","varchar(512)",e=>e.notNull()).addColumn("trigger_id","varchar(255)",e=>e.notNull()).addColumn("enabled","boolean",e=>e.notNull()).addColumn("created_at","varchar(255)",e=>e.notNull()).addColumn("updated_at","varchar(255)",e=>e.notNull()).addColumn("synchronous","boolean",e=>e.defaultTo(!1).notNull()).addColumn("priority","integer").execute()}async function Gn(t){await t.schema.dropTable("hooks").execute()}const Hn=Object.freeze(Object.defineProperty({__proto__:null,down:Gn,up:qn},Symbol.toStringTag,{value:"Module"}));async function Xn(t){}async function Yn(t){}const Zn=Object.freeze(Object.defineProperty({__proto__:null,down:Yn,up:Xn},Symbol.toStringTag,{value:"Module"}));async function eo(t){}async function to(t){}const ao=Object.freeze(Object.defineProperty({__proto__:null,down:to,up:eo},Symbol.toStringTag,{value:"Module"}));async function ro(t){await t.schema.createTable("logins").addColumn("login_id","varchar(255)",e=>e.primaryKey()).addColumn("tenant_id","varchar(255)",e=>e.references("tenants.id").onDelete("cascade").notNull()).addColumn("authParams_client_id","varchar(255)",e=>e.notNull()).addColumn("authParams_vendor_id","varchar(255)").addColumn("authParams_username","varchar(255)").addColumn("authParams_response_type","varchar(255)").addColumn("authParams_response_mode","varchar(255)").addColumn("authParams_audience","varchar(255)").addColumn("authParams_scope","varchar(511)").addColumn("authParams_state","varchar(511)").addColumn("authParams_code_challenge_method","varchar(256)").addColumn("authParams_code_challenge","varchar(256)").addColumn("authParams_redirect_uri","varchar(256)").addColumn("authParams_organization","varchar(256)").addColumn("authorization_url","varchar(1024)").addColumn("created_at","varchar(255)",e=>e.notNull()).addColumn("updated_at","varchar(255)",e=>e.notNull()).addColumn("expires_at","varchar(255)",e=>e.notNull()).addColumn("ip","varchar(255)").addColumn("useragent","varchar(512)").execute(),await t.schema.alterTable("passwords").addColumn("algorithm","varchar(16)").execute(),await t.schema.dropTable("codes").execute(),await t.schema.createTable("codes").addColumn("code_id","varchar(255)",e=>e.primaryKey()).addColumn("tenant_id","varchar(255)",e=>e.references("tenants.id").onDelete("cascade").notNull()).addColumn("user_id","varchar(255)").addColumn("login_id","varchar(255)").addForeignKeyConstraint("codes_user_id_tenant_id_constraint",["user_id","tenant_id"],"users",["user_id","tenant_id"],e=>e.onDelete("cascade")).addColumn("code_type","varchar(255)",e=>e.notNull()).addColumn("created_at","varchar(255)",e=>e.notNull()).addColumn("expires_at","varchar(255)",e=>e.notNull()).addColumn("used_at","varchar(255)").execute()}async function no(t){await t.schema.dropTable("logins").execute(),await t.schema.alterTable("passwords").dropColumn("algorithm").execute(),await t.schema.dropTable("codes").execute(),await t.schema.createTable("codes").addColumn("id","varchar(255)",e=>e.primaryKey()).addColumn("code","varchar(255)",e=>e.notNull()).addColumn("user_id","varchar(255)").addColumn("tenant_id","varchar(255)").addForeignKeyConstraint("codes_user_id_tenant_id_constraint",["user_id","tenant_id"],"users",["user_id","tenant_id"],e=>e.onDelete("cascade")).addColumn("type","varchar(255)",e=>e.notNull()).addColumn("created_at","varchar(255)",e=>e.notNull()).addColumn("expires_at","varchar(255)",e=>e.notNull()).addColumn("used_at","varchar(255)").execute()}const oo=Object.freeze(Object.defineProperty({__proto__:null,down:no,up:ro},Symbol.toStringTag,{value:"Module"}));async function so(t){}async function io(t){}const co=Object.freeze(Object.defineProperty({__proto__:null,down:io,up:so},Symbol.toStringTag,{value:"Module"}));async function lo(t){await t.schema.alterTable("logins").addColumn("auth0Client","varchar(256)").execute()}async function uo(t){await t.schema.alterTable("logins").dropColumn("auth0Client").execute()}const mo=Object.freeze(Object.defineProperty({__proto__:null,down:uo,up:lo},Symbol.toStringTag,{value:"Module"}));async function ho(t){await t.schema.alterTable("logins").dropColumn("authParams_state").execute(),await t.schema.alterTable("logins").addColumn("authParams_state","varchar(8192)").execute()}async function _o(t){await t.schema.alterTable("logins").dropColumn("authParams_state").execute(),await t.schema.alterTable("logins").addColumn("authParams_state","varchar(511)").execute()}const fo=Object.freeze(Object.defineProperty({__proto__:null,down:_o,up:ho},Symbol.toStringTag,{value:"Module"}));async function po(t){}async function go(t){}const yo=Object.freeze(Object.defineProperty({__proto__:null,down:go,up:po},Symbol.toStringTag,{value:"Module"}));async function wo(t){}async function vo(t){}const No=Object.freeze(Object.defineProperty({__proto__:null,down:vo,up:wo},Symbol.toStringTag,{value:"Module"}));async function Co(t){await t.schema.alterTable("logins").addColumn("authParams_nonce","varchar(255)").execute()}async function bo(t){await t.schema.alterTable("logins").dropColumn("nonce").execute()}const xo=Object.freeze(Object.defineProperty({__proto__:null,down:bo,up:Co},Symbol.toStringTag,{value:"Module"}));async function To(t){}async function So(t){}const Oo=Object.freeze(Object.defineProperty({__proto__:null,down:So,up:To},Symbol.toStringTag,{value:"Module"}));async function ko(t){}async function $o(t){}const Do=Object.freeze(Object.defineProperty({__proto__:null,down:$o,up:ko},Symbol.toStringTag,{value:"Module"}));async function Io(t){await t.schema.dropTable("codes").execute(),await t.schema.createTable("codes").addColumn("code_id","varchar(255)",e=>e.notNull()).addColumn("tenant_id","varchar(255)",e=>e.references("tenants.id").onDelete("cascade").notNull()).addColumn("user_id","varchar(255)").addColumn("login_id","varchar(255)").addColumn("connection_id","varchar(255)").addForeignKeyConstraint("codes_user_id_tenant_id_constraint",["user_id","tenant_id"],"users",["user_id","tenant_id"],e=>e.onDelete("cascade")).addColumn("code_type","varchar(255)",e=>e.notNull()).addColumn("created_at","varchar(255)",e=>e.notNull()).addColumn("expires_at","varchar(255)",e=>e.notNull()).addColumn("used_at","varchar(255)").addPrimaryKeyConstraint("PK_codes_code_id_code_type",["code_id","code_type"]).execute()}async function Po(t){await t.schema.dropTable("codes").execute(),await t.schema.createTable("codes").addColumn("code_id","varchar(255)",e=>e.primaryKey()).addColumn("tenant_id","varchar(255)",e=>e.references("tenants.id").onDelete("cascade").notNull()).addColumn("user_id","varchar(255)").addColumn("connection_id","varchar(255)").addColumn("login_id","varchar(255)").addForeignKeyConstraint("codes_user_id_tenant_id_constraint",["user_id","tenant_id"],"users",["user_id","tenant_id"],e=>e.onDelete("cascade")).addColumn("code_type","varchar(255)",e=>e.notNull()).addColumn("created_at","varchar(255)",e=>e.notNull()).addColumn("expires_at","varchar(255)",e=>e.notNull()).addColumn("used_at","varchar(255)").execute()}const jo=Object.freeze(Object.defineProperty({__proto__:null,down:Po,up:Io},Symbol.toStringTag,{value:"Module"}));async function Mo(t){await t.schema.dropTable("otps").execute(),await t.schema.dropTable("authentication_codes").execute()}async function Fo(t){await t.schema.alterTable("keys").addColumn("private_key","varchar(2048)").addColumn("public_key","varchar(2048)").execute(),await t.schema.createTable("otps").addColumn("tenant_id","varchar(255)",e=>e.references("tenants.id").onDelete("cascade").notNull()).addColumn("id","varchar(255)",e=>e.primaryKey()).addColumn("client_id","varchar(255)",e=>e.references("applications.id").onDelete("cascade").notNull()).addColumn("code","varchar(255)",e=>e.notNull()).addColumn("email","varchar(255)",e=>e.notNull()).addColumn("user_id","varchar(255)").addColumn("send","varchar(255)").addColumn("nonce","varchar(255)").addColumn("state","varchar(1024)").addColumn("scope","varchar(1024)").addColumn("response_type","varchar(256)").addColumn("response_mode","varchar(256)").addColumn("redirect_uri","varchar(1024)").addColumn("created_at","varchar(255)",e=>e.notNull()).addColumn("expires_at","varchar(255)",e=>e.notNull()).addColumn("used_at","varchar(255)").execute(),await t.schema.createTable("authentication_codes").addColumn("tenant_id","varchar(255)",e=>e.references("tenants.id").onDelete("cascade").notNull()).addColumn("code","varchar(255)",e=>e.primaryKey()).addColumn("client_id","varchar(255)",e=>e.references("applications.id").onDelete("cascade").notNull()).addColumn("user_id","varchar(255)",e=>e.notNull()).addColumn("nonce","varchar(255)").addColumn("state","varchar(8192)").addColumn("scope","varchar(1024)").addColumn("response_type","varchar(256)").addColumn("response_mode","varchar(256)").addColumn("redirect_uri","varchar(1024)").addColumn("created_at","varchar(255)",e=>e.notNull()).addColumn("expires_at","varchar(255)",e=>e.notNull()).addColumn("used_at","varchar(255)").execute()}const Ao=Object.freeze(Object.defineProperty({__proto__:null,down:Fo,up:Mo},Symbol.toStringTag,{value:"Module"}));async function Lo(t){await t.schema.createIndex("IDX_logs_tenant_date_type_user").on("logs").columns(["tenant_id","date","type","user_id"]).execute()}async function zo(t){await t.schema.dropIndex("IDX_logs_tenant_date_type_user").on("logs").execute()}const Eo=Object.freeze(Object.defineProperty({__proto__:null,down:zo,up:Lo},Symbol.toStringTag,{value:"Module"}));async function Jo(t){}async function Ko(t){}const Ro=Object.freeze(Object.defineProperty({__proto__:null,down:Ko,up:Jo},Symbol.toStringTag,{value:"Module"}));async function Uo(t){await t.schema.createTable("prompt_settings").addColumn("tenant_id","varchar(64)",e=>e.primaryKey()).addColumn("universal_login_experience","varchar(16)",e=>e.defaultTo("new").notNull()).addColumn("identifier_first","boolean",e=>e.defaultTo(!0).notNull()).addColumn("password_first","boolean",e=>e.defaultTo(!1).notNull()).addColumn("webauthn_platform_first_factor","boolean",e=>e.defaultTo(!1).notNull()).execute()}async function Bo(t){await t.schema.dropTable("prompt_settings").execute()}const Qo=Object.freeze(Object.defineProperty({__proto__:null,down:Bo,up:Uo},Symbol.toStringTag,{value:"Module"}));async function Vo(t){}async function Wo(t){}const qo=Object.freeze(Object.defineProperty({__proto__:null,down:Wo,up:Vo},Symbol.toStringTag,{value:"Module"}));async function Go(t){}async function Ho(t){}const Xo=Object.freeze(Object.defineProperty({__proto__:null,down:Ho,up:Go},Symbol.toStringTag,{value:"Module"}));async function Yo(t){}async function Zo(t){}const es=Object.freeze(Object.defineProperty({__proto__:null,down:Zo,up:Yo},Symbol.toStringTag,{value:"Module"}));async function ts(t){await t.schema.alterTable("logins").addColumn("authParams_ui_locales","varchar(32)").execute()}async function as(t){await t.schema.alterTable("logins").dropColumn("authParams_ui_locales").execute()}const rs=Object.freeze(Object.defineProperty({__proto__:null,down:as,up:ts},Symbol.toStringTag,{value:"Module"}));async function ns(t){await t.schema.alterTable("logins").addColumn("authParams_prompt","varchar(16)").execute()}async function os(t){await t.schema.alterTable("logins").dropColumn("authParams_prompt").execute()}const ss=Object.freeze(Object.defineProperty({__proto__:null,down:os,up:ns},Symbol.toStringTag,{value:"Module"}));async function is(t){}async function ds(t){}const cs=Object.freeze(Object.defineProperty({__proto__:null,down:ds,up:is},Symbol.toStringTag,{value:"Module"}));async function ls(t){await t.schema.alterTable("logins").addColumn("authParams_act_as","varchar(255)").execute()}async function us(t){await t.schema.alterTable("logins").dropColumn("authParam_act_as").execute()}const ms=Object.freeze(Object.defineProperty({__proto__:null,down:us,up:ls},Symbol.toStringTag,{value:"Module"}));async function hs(t){await t.schema.alterTable("codes").addColumn("code_verifier","varchar(128)").execute()}async function _s(t){await t.schema.alterTable("codes").dropColumn("code_verifier").execute()}const fs=Object.freeze(Object.defineProperty({__proto__:null,down:_s,up:hs},Symbol.toStringTag,{value:"Module"}));async function ps(t){await t.schema.createTable("email_providers").addColumn("tenant_id","varchar(255)",e=>e.primaryKey()).addColumn("name","varchar(255)",e=>e.notNull()).addColumn("enabled","boolean",e=>e.notNull()).addColumn("default_from_address","varchar(255)").addColumn("credentials","varchar(2048)",e=>e.notNull().defaultTo("{}")).addColumn("settings","varchar(2048)",e=>e.notNull().defaultTo("{}")).addColumn("created_at","varchar(29)",e=>e.notNull()).addColumn("updated_at","varchar(29)",e=>e.notNull()).execute()}async function gs(t){await t.schema.dropTable("email_providers").execute()}const ys=Object.freeze(Object.defineProperty({__proto__:null,down:gs,up:ps},Symbol.toStringTag,{value:"Module"}));async function ws(t){await t.schema.dropTable("tickets").execute()}async function vs(t){await t.schema.createTable("tickets").addColumn("tenant_id","varchar(255)",e=>e.references("tenants.id").onDelete("cascade").notNull()).addColumn("id","varchar(255)",e=>e.primaryKey()).addColumn("client_id","varchar(255)",e=>e.references("applications.id").onDelete("cascade").notNull()).addColumn("email","varchar(255)",e=>e.notNull()).addColumn("nonce","varchar(255)").addColumn("state","varchar(1024)").addColumn("scope","varchar(1024)").addColumn("response_type","varchar(256)").addColumn("response_mode","varchar(256)").addColumn("redirect_uri","varchar(1024)").addColumn("created_at","varchar(255)",e=>e.notNull()).addColumn("expires_at","varchar(255)",e=>e.notNull()).addColumn("used_at","varchar(255)").execute()}const Ns=Object.freeze(Object.defineProperty({__proto__:null,down:vs,up:ws},Symbol.toStringTag,{value:"Module"}));async function Cs(t){}async function bs(t){await t.schema.alterTable("logins").dropColumn("ip").dropColumn("useragent").execute()}const xs=Object.freeze(Object.defineProperty({__proto__:null,down:bs,up:Cs},Symbol.toStringTag,{value:"Module"}));async function Ts(t){await t.schema.createTable("refresh_tokens").addColumn("id","varchar(21)",e=>e.primaryKey()).addColumn("client_id","varchar(21)",e=>e.references("applications.id").onDelete("cascade").notNull()).addColumn("tenant_id","varchar(255)").addColumn("session_id","varchar(21)",e=>e.notNull()).addColumn("user_id","varchar(255)").addForeignKeyConstraint("user_id_constraint",["user_id","tenant_id"],"users",["user_id","tenant_id"],e=>e.onDelete("cascade")).addColumn("created_at","varchar(35)",e=>e.notNull()).addColumn("expires_at","varchar(35)").addColumn("idle_expires_at","varchar(35)").addColumn("last_exchanged_at","varchar(35)").addColumn("device","varchar(2048)",e=>e.notNull()).addColumn("resource_servers","varchar(2048)",e=>e.notNull()).addColumn("rotating","boolean",e=>e.notNull()).execute()}async function Ss(t){await t.schema.dropTable("refresh_tokens").execute()}const Os=Object.freeze(Object.defineProperty({__proto__:null,down:Ss,up:Ts},Symbol.toStringTag,{value:"Module"}));async function ks(t){}async function $s(t){}const Ds=Object.freeze(Object.defineProperty({__proto__:null,down:$s,up:ks},Symbol.toStringTag,{value:"Module"}));async function Is(t){await t.schema.dropTable("sessions").execute(),await t.schema.dropTable("refresh_tokens").execute()}async function Ps(t){await t.schema.createTable("sessions").addColumn("id","varchar(21)",e=>e.primaryKey()).addColumn("tenant_id","varchar(255)").addColumn("user_id","varchar(255)").addForeignKeyConstraint("sessions_user_id_constraint",["user_id","tenant_id"],"users",["user_id","tenant_id"],e=>e.onDelete("cascade")).addColumn("created_at","varchar(35)",e=>e.notNull()).addColumn("updated_at","varchar(35)",e=>e.notNull()).addColumn("expires_at","varchar(35)").addColumn("idle_expires_at","varchar(35)").addColumn("authenticated_at","varchar(35)").addColumn("last_interaction_at","varchar(35)").addColumn("used_at","varchar(35)").addColumn("revoked_at","varchar(35)").addColumn("device","varchar(2048)",e=>e.notNull()).addColumn("clients","varchar(1024)",e=>e.notNull()).execute(),await t.schema.createTable("refresh_tokens").addColumn("id","varchar(21)",e=>e.primaryKey()).addColumn("client_id","varchar(21)",e=>e.references("applications.id").onDelete("cascade").notNull()).addColumn("tenant_id","varchar(255)").addColumn("session_id","varchar(21)",e=>e.notNull()).addColumn("user_id","varchar(255)").addForeignKeyConstraint("refresh_tokens_user_id_constraint",["user_id","tenant_id"],"users",["user_id","tenant_id"],e=>e.onDelete("cascade")).addColumn("created_at","varchar(35)",e=>e.notNull()).addColumn("expires_at","varchar(35)").addColumn("idle_expires_at","varchar(35)").addColumn("last_exchanged_at","varchar(35)").addColumn("device","varchar(2048)",e=>e.notNull()).addColumn("resource_servers","varchar(2048)",e=>e.notNull()).addColumn("rotating","boolean",e=>e.notNull()).execute()}const js=Object.freeze(Object.defineProperty({__proto__:null,down:Ps,up:Is},Symbol.toStringTag,{value:"Module"}));async function Ms(t){await t.schema.createTable("sessions_2").addColumn("id","varchar(21)",e=>e.primaryKey()).addColumn("tenant_id","varchar(255)").addColumn("user_id","varchar(255)").addForeignKeyConstraint("sessions_2_user_id_constraint",["user_id","tenant_id"],"users",["user_id","tenant_id"],e=>e.onDelete("cascade")).addColumn("created_at","varchar(35)",e=>e.notNull()).addColumn("updated_at","varchar(35)",e=>e.notNull()).addColumn("expires_at","varchar(35)").addColumn("idle_expires_at","varchar(35)").addColumn("authenticated_at","varchar(35)").addColumn("last_interaction_at","varchar(35)").addColumn("used_at","varchar(35)").addColumn("revoked_at","varchar(35)").addColumn("device","varchar(2048)",e=>e.notNull()).addColumn("clients","varchar(1024)",e=>e.notNull()).execute(),await t.schema.createTable("refresh_tokens_2").addColumn("id","varchar(21)",e=>e.primaryKey()).addColumn("client_id","varchar(21)",e=>e.references("applications.id").onDelete("cascade").notNull()).addColumn("tenant_id","varchar(255)").addColumn("session_id","varchar(21)",e=>e.notNull()).addColumn("user_id","varchar(255)").addForeignKeyConstraint("refresh_tokens_2_user_id_constraint",["user_id","tenant_id"],"users",["user_id","tenant_id"],e=>e.onDelete("cascade")).addColumn("created_at","varchar(35)",e=>e.notNull()).addColumn("expires_at","varchar(35)").addColumn("idle_expires_at","varchar(35)").addColumn("last_exchanged_at","varchar(35)").addColumn("device","varchar(2048)",e=>e.notNull()).addColumn("resource_servers","varchar(2048)",e=>e.notNull()).addColumn("rotating","boolean",e=>e.notNull()).execute()}async function Fs(t){await t.schema.dropTable("sessions_2").execute(),await t.schema.dropTable("refresh_tokens_2").execute()}const As=Object.freeze(Object.defineProperty({__proto__:null,down:Fs,up:Ms},Symbol.toStringTag,{value:"Module"}));async function Ls(t){await t.schema.createTable("custom_domains").addColumn("custom_domain_id","varchar(21)",e=>e.notNull().primaryKey()).addColumn("tenant_id","varchar(255)",e=>e.references("tenants.id").onDelete("cascade").notNull()).addColumn("domain","varchar(255)",e=>e.notNull()).addColumn("primary","boolean",e=>e.notNull()).addColumn("status","varchar(50)",e=>e.notNull()).addColumn("type","varchar(50)",e=>e.notNull()).addColumn("origin_domain_name","varchar(255)").addColumn("verification","varchar(2048)").addColumn("custom_client_ip_header","varchar(50)").addColumn("tls_policy","varchar(50)").addColumn("domain_metadata","varchar(2048)").addColumn("created_at","varchar(35)",e=>e.notNull()).addColumn("updated_at","varchar(35)",e=>e.notNull()).execute(),await t.schema.dropTable("domains").execute()}async function zs(t){await t.schema.dropTable("custom_domains").execute(),await t.schema.createTable("domains").addColumn("id","varchar(255)",e=>e.notNull().primaryKey()).addColumn("tenant_id","varchar(255)",e=>e.references("tenants.id").onDelete("cascade").notNull()).addColumn("domain","varchar(255)",e=>e.notNull()).addColumn("email_service","varchar(255)").addColumn("email_api_key","varchar(255)").addColumn("dkim_private_key","varchar(2048)").addColumn("dkim_public_key","varchar(2048)").addColumn("created_at","varchar(255)",e=>e.notNull()).addColumn("updated_at","varchar(255)",e=>e.notNull()).execute()}const Es=Object.freeze(Object.defineProperty({__proto__:null,down:zs,up:Ls},Symbol.toStringTag,{value:"Module"}));async function Js(t){}async function Ks(t){await t.schema.alterTable("logins").dropColumn("authParams_organization").dropColumn("authorization_url").execute()}const Rs=Object.freeze(Object.defineProperty({__proto__:null,down:Ks,up:Js},Symbol.toStringTag,{value:"Module"}));async function Us(t){await t.schema.alterTable("logins").dropColumn("authorization_url").execute(),await t.schema.alterTable("logins").addColumn("authorization_url","varchar(2048)").execute()}async function Bs(t){await t.schema.alterTable("logins").dropColumn("authorization_url").execute(),await t.schema.alterTable("logins").addColumn("authorization_url","varchar(1024)").execute()}const Qs=Object.freeze(Object.defineProperty({__proto__:null,down:Bs,up:Us},Symbol.toStringTag,{value:"Module"}));async function Vs(t){}async function Ws(t){}const qs=Object.freeze(Object.defineProperty({__proto__:null,down:Ws,up:Vs},Symbol.toStringTag,{value:"Module"}));async function Gs(t){await t.schema.createTable("sessions").addColumn("id","varchar(21)",e=>e.primaryKey()).addColumn("tenant_id","varchar(255)").addColumn("user_id","varchar(255)").addForeignKeyConstraint("sessions_user_id_constraint",["user_id","tenant_id"],"users",["user_id","tenant_id"],e=>e.onDelete("cascade")).addColumn("created_at","varchar(35)",e=>e.notNull()).addColumn("updated_at","varchar(35)",e=>e.notNull()).addColumn("expires_at","varchar(35)").addColumn("idle_expires_at","varchar(35)").addColumn("authenticated_at","varchar(35)").addColumn("last_interaction_at","varchar(35)").addColumn("used_at","varchar(35)").addColumn("revoked_at","varchar(35)").addColumn("device","varchar(2048)",e=>e.notNull()).addColumn("clients","varchar(1024)",e=>e.notNull()).execute(),await t.schema.createTable("login_sessions").addColumn("id","varchar(21)",e=>e.primaryKey()).addColumn("tenant_id","varchar(255)",e=>e.references("tenants.id").onDelete("cascade").notNull()).addColumn("session_id","varchar(21)",e=>e.references("sessions.id").onDelete("cascade")).addColumn("csrf_token","varchar(21)",e=>e.notNull()).addColumn("authParams_client_id","varchar(255)",e=>e.notNull()).addColumn("authParams_vendor_id","varchar(255)").addColumn("authParams_username","varchar(255)").addColumn("authParams_response_type","varchar(255)").addColumn("authParams_response_mode","varchar(255)").addColumn("authParams_audience","varchar(255)").addColumn("authParams_scope","varchar(511)").addColumn("authParams_state","varchar(2048)").addColumn("authParams_nonce","varchar(255)").addColumn("authParams_code_challenge_method","varchar(255)").addColumn("authParams_code_challenge","varchar(255)").addColumn("authParams_redirect_uri","varchar(255)").addColumn("authParams_organization","varchar(255)").addColumn("authParams_prompt","varchar(32)").addColumn("authParams_act_as","varchar(256)").addColumn("authParams_ui_locales","varchar(32)").addColumn("authorization_url","varchar(1024)").addColumn("created_at","varchar(35)",e=>e.notNull()).addColumn("updated_at","varchar(35)",e=>e.notNull()).addColumn("expires_at","varchar(35)",e=>e.notNull()).addColumn("ip","varchar(39)").addColumn("useragent","varchar(1024)").addColumn("auth0Client","varchar(255)").execute(),await t.schema.createTable("refresh_tokens").addColumn("id","varchar(21)",e=>e.primaryKey()).addColumn("client_id","varchar(21)",e=>e.references("applications.id").onDelete("cascade").notNull()).addColumn("tenant_id","varchar(255)").addColumn("session_id","varchar(21)",e=>e.notNull()).addColumn("user_id","varchar(255)").addForeignKeyConstraint("refresh_tokens_user_id_constraint",["user_id","tenant_id"],"users",["user_id","tenant_id"],e=>e.onDelete("cascade")).addColumn("created_at","varchar(35)",e=>e.notNull()).addColumn("expires_at","varchar(35)").addColumn("idle_expires_at","varchar(35)").addColumn("last_exchanged_at","varchar(35)").addColumn("device","varchar(2048)",e=>e.notNull()).addColumn("resource_servers","varchar(2048)",e=>e.notNull()).addColumn("rotating","boolean",e=>e.notNull()).execute()}async function Hs(t){await t.schema.dropTable("sessions").execute(),await t.schema.dropTable("login_sessions").execute(),await t.schema.dropTable("refresh_tokens").execute()}const Xs=Object.freeze(Object.defineProperty({__proto__:null,down:Hs,up:Gs},Symbol.toStringTag,{value:"Module"}));async function Ys(t){await t.schema.dropTable("logins").execute(),await t.schema.dropTable("sessions_2").execute(),await t.schema.dropTable("refresh_tokens_2").execute()}async function Zs(t){}const ei=Object.freeze(Object.defineProperty({__proto__:null,down:Zs,up:Ys},Symbol.toStringTag,{value:"Module"}));async function ti(t){await t.schema.dropTable("custom_domains").execute(),await t.schema.createTable("custom_domains").addColumn("custom_domain_id","varchar(256)",e=>e.notNull().primaryKey()).addColumn("tenant_id","varchar(255)",e=>e.references("tenants.id").onDelete("cascade").notNull()).addColumn("domain","varchar(255)",e=>e.notNull()).addColumn("primary","boolean",e=>e.notNull()).addColumn("status","varchar(50)",e=>e.notNull()).addColumn("type","varchar(50)",e=>e.notNull()).addColumn("origin_domain_name","varchar(255)").addColumn("verification","varchar(2048)").addColumn("custom_client_ip_header","varchar(50)").addColumn("tls_policy","varchar(50)").addColumn("domain_metadata","varchar(2048)").addColumn("created_at","varchar(35)",e=>e.notNull()).addColumn("updated_at","varchar(35)",e=>e.notNull()).execute()}async function ai(t){}const ri=Object.freeze(Object.defineProperty({__proto__:null,down:ai,up:ti},Symbol.toStringTag,{value:"Module"})),Le={m1_init:La,m2_magicLink:Ja,m3_updateAt:Ua,m4_logTable:Va,m5_userProfile:Ga,m6_sessions:Ya,m7_passwords:tr,m8_logsTableNewFields:nr,m9_passwordTableNewField:ir,n01_codesTable:lr,n11_universalLoginSession:hr,n12_userFields:pr,n13_userEmailIndex:wr,n14_profileDataField:Cr,n15_userEmailIndex:Tr,n16_userLocale:kr,n17_signingKeys:Ir,n18_logsFields:Mr,n19_connectionsUserinfo:Lr,n20_missingFields:Jr,n21_sessionDeletedAt:Ur,n22_dropLogsFields:Vr,n23_dropUsersFields:Gr,n24_logsIndexes:Yr,n25_logDescMaxLength:tn,n26_logsTableExtraFields:nn,n27_usersTableNameIndex:dn,n28_usersEmailConstrain:un,n29_increaseOtpStateLength:_n,n30_increaseTicketStateLength:gn,n31_branding:vn,n32_indexesAndNotNull:bn,n33_vendorIdInUniversalLoginSession:Sn,n34_auth0ClientInUniversalLoginSession:$n,n35_increaseUniversalSessionStateLength:Pn,n36_authenticationCodes:Fn,n37_disableSignUps:zn,n38_otpIpAddress:Kn,n39_increaseUserAgentLength:Bn,n40_userId:Wn,n41_hooks:Hn,n42_userIdIndexes:Zn,n43_userIdIndexes:ao,n44_codes:oo,n45_hookProperties:co,n46_loginAuth0Client:mo,n47_loginAuth0Client:fo,n48_saml:yo,n49_removeFields:No,n50_authParamsNonce:xo,n51_connectionid:Oo,n52_cert:Do,n53_codes_primary_key:jo,n54_cleanup_tables:Ao,n55_logs_index:Eo,n56_application_fields:Ro,n57_prompt_settings:Qo,n58_connection_client_id:qo,n59_connection_options:Xo,n60_users_metadata:es,n61_userLocales:rs,n62_prompt:ss,n63_connection_cleanup:cs,n64_act_as:ms,n65_code_verifier:fs,n66_email_providers:ys,n67_drop_tickets:Ns,n68_login_useragents:xs,n70_refresh_tokens:Os,n71_session_new_fields:Ds,n72_session_primary_key:js,n73_drop_sessions:As,n74_custom_domains:Es,n75_organizations:Rs,n76_authorization_url_length:Qs,n77_drop_sessions:qs,n78_login_sessions:Xs,n79_drop_sessions_2:ei,n80_recreate_custom_domains:ri};async function ni(t,e=!1){e&&console.log("migrating...");const a=new Ae(Le),r=new Ne({db:t,provider:a}),{error:o,results:n}=await r.migrateToLatest();if(n==null||n.forEach(s=>{s.status==="Success"?e&&console.log(`migration "${s.migrationName}" was executed successfully`):s.status==="Error"&&console.error(`failed to execute migration "${s.migrationName}"`)}),o)throw console.error("failed to migrate"),console.error(o),o}async function oi(t){console.log("migrating...");const e=new Ae(Le),a=new Ne({db:t,provider:e}),{error:r,results:o}=await a.migrateDown();if(o==null||o.forEach(n=>{n.status==="Success"?console.log(`migration "${n.migrationName}" was reverted successfully`):n.status==="Error"&&console.error(`failed to execute migration "${n.migrationName}"`)}),r)throw console.error("failed to migrate"),console.error(r),r}function si(t){return{applications:Ot(t),branding:Wt(t),cleanup:xa(t),clients:Mt(t),codes:Nt(t),connections:jt(t),emailProviders:ga(t),customDomains:Bt(t),hooks:Zt(t),keys:zt(t),loginSessions:la(t),logs:ot(t),passwords:ft(t),promptSettings:ha(t),refreshTokens:ba(t),sessions:ut(t),tenants:et(t),themes:oa(t),users:We(t)}}exports.default=si;exports.migrateDown=oi;exports.migrateToLatest=ni;
1
+ "use strict";var ze=Object.defineProperty;var le=t=>{throw TypeError(t)};var Ee=(t,e,a)=>e in t?ze(t,e,{enumerable:!0,configurable:!0,writable:!0,value:a}):t[e]=a;var M=(t,e,a)=>Ee(t,typeof e!="symbol"?e+"":e,a),U=(t,e,a)=>e.has(t)||le("Cannot "+a);var c=(t,e,a)=>(U(t,e,"read from private field"),a?a.call(t):e.get(t)),y=(t,e,a)=>e.has(t)?le("Cannot add the same private member more than once"):e instanceof WeakSet?e.add(t):e.set(t,a),F=(t,e,a,r)=>(U(t,e,"write to private field"),r?r.call(t,a):e.set(t,a),a),u=(t,e,a)=>(U(t,e,"access private method"),a);Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const O=require("@authhero/adapter-interfaces");require("@hono/zod-openapi");var W=class extends Error{constructor(e=500,a){super(a==null?void 0:a.message,{cause:a==null?void 0:a.cause});M(this,"res");M(this,"status");this.res=a==null?void 0:a.res,this.status=e}getResponse(){return this.res?new Response(this.res.body,{status:this.status,headers:this.res.headers}):new Response(this.message,{status:this.status})}};function Je(t){return async(e,a)=>{const{identities:r,...o}=a,n={...o,created_at:new Date().toISOString(),updated_at:new Date().toISOString(),login_count:0,tenant_id:e,email_verified:a.email_verified?1:0,is_social:a.is_social?1:0,app_metadata:JSON.stringify(a.app_metadata),user_metadata:JSON.stringify(a.user_metadata)};try{await t.insertInto("users").values(n).execute()}catch(s){throw s.code==="SQLITE_CONSTRAINT_UNIQUE"||s.message.includes("AlreadyExists")?new W(409,{message:"User already exists"}):new W(500,{message:`${s.code}, ${s.message}`})}return{...n,email:n.email||"",email_verified:n.email_verified===1,is_social:n.is_social===1}}}function _(t){const e={...t};for(const a in e)e[a]===null?delete e[a]:typeof e[a]=="object"&&(Array.isArray(e[a])?e[a]=e[a].map(_):e[a]=_(e[a]));return e}function fe(t){let e={};try{e=JSON.parse(t.profileData||"{}")}catch(a){console.error("Error parsing profileData",a)}return{connection:t.connection,provider:t.provider,user_id:O.parseUserId(t.user_id).id,isSocial:!!t.is_social,profileData:{email:t.email,email_verified:!!t.email_verified,...e}}}function Ke(t){return async(e,a)=>{const[r,o]=await Promise.all([t.selectFrom("users").where("users.tenant_id","=",e).where("users.user_id","=",a).selectAll().executeTakeFirst(),t.selectFrom("users").where("users.tenant_id","=",e).where("users.linked_to","=",a).selectAll().execute()]);if(!r)return null;const{tenant_id:n,...s}=r,l={...s,email:r.email||"",email_verified:r.email_verified===1,is_social:r.is_social===1,app_metadata:JSON.parse(r.app_metadata),user_metadata:JSON.parse(r.user_metadata),identities:[{connection:r.connection,provider:r.provider,user_id:O.parseUserId(r.user_id).id,isSocial:!!r.is_social},...o.map(fe)]};return _(l)}}function k(t,e,a,r){return a.split(/\s+/).map(n=>n.replace(/^([^:]+)=/g,"$1:")).map(n=>{let s=n.startsWith("-"),l,d,g,m;return n.startsWith("-_exists_:")?(l=n.substring(10),g=!0,s=!0):n.startsWith("_exists_:")?(l=n.substring(9),g=!0,s=!1):n.includes(":")?(s=n.startsWith("-"),[l,d]=s?n.substring(1).split(":"):n.split(":"),g=!1,d.startsWith(">=")?(m=">=",d=d.substring(2)):d.startsWith(">")?(m=">",d=d.substring(1)):d.startsWith("<=")?(m="<=",d=d.substring(2)):d.startsWith("<")?(m="<",d=d.substring(1)):m="="):(l=null,d=n,g=!1),{key:l,value:d,isNegation:s,isExistsQuery:g,operator:m}}).forEach(({key:n,value:s,isNegation:l,isExistsQuery:d,operator:g})=>{if(n)if(d)l?e=e.where(n,"is",null):e=e.where(n,"is not",null);else if(l)switch(g){case">":e=e.where(n,"<=",s);break;case">=":e=e.where(n,"<",s);break;case"<":e=e.where(n,">=",s);break;case"<=":e=e.where(n,">",s);break;default:e=e.where(n,"!=",s)}else e=e.where(n,g,s);else{const{ref:m}=t.dynamic;e=e.where(w=>w.or(r.map(b=>w(m(b),"like",`%${s}%`))))}}),e}function x(t){return typeof t=="string"?parseInt(t,10):typeof t=="bigint"?Number(t):t}function Re(t){return async(e,a={page:0,per_page:50,include_totals:!1})=>{let r=t.selectFrom("users").where("users.tenant_id","=",e);if(a.q&&(r=k(t,r,a.q,["email","name"])),a.sort&&a.sort.sort_by){const{ref:m}=t.dynamic;r=r.orderBy(m(a.sort.sort_by),a.sort.sort_order)}const n=await r.offset(a.page*a.per_page).limit(a.per_page).selectAll().execute(),s=n.map(m=>m.user_id),l=s.length?await t.selectFrom("users").selectAll().where("users.tenant_id","=",e).where("users.linked_to","in",s).execute():[],d=n.map(m=>{const w=l.filter(b=>b.linked_to===m.user_id);return _({...m,email_verified:m.email_verified===1,is_social:m.is_social===1,app_metadata:JSON.parse(m.app_metadata),user_metadata:JSON.parse(m.user_metadata),identities:[{connection:m.connection,provider:m.provider,user_id:O.parseUserId(m.user_id).id,isSocial:!!m.is_social},...w.map(fe)]})}),{count:g}=await r.select(m=>m.fn.countAll().as("count")).executeTakeFirstOrThrow();return{users:d,start:a.page*a.per_page,limit:a.per_page,length:x(g)}}}function Ue(t){return async(e,a)=>(await t.deleteFrom("users").where("users.tenant_id","=",e).where("users.linked_to","=",a).execute(),(await t.deleteFrom("users").where("users.tenant_id","=",e).where("users.user_id","=",a).execute()).length===1)}function Be(t){if(t.email_verified!==void 0)return t.email_verified?1:0}function Qe(t){return async(e,a,r)=>{const o={...r,email_verified:Be(r),updated_at:new Date().toISOString()};return r.app_metadata&&(o.app_metadata=JSON.stringify(r.app_metadata)),r.user_metadata&&(o.user_metadata=JSON.stringify(r.user_metadata)),(await t.updateTable("users").set(o).where("users.tenant_id","=",e).where("users.user_id","=",a).execute()).length===1}}function Ve(t){return async(e,a,r,o)=>{const n={linked_to:null};return(await t.updateTable("users").set(n).where("users.tenant_id","=",e).where("users.user_id","=",`${r}|${o}`).where("users.linked_to","=",`${a}`).execute()).length===1}}function We(t){return{create:Je(t),remove:Ue(t),get:Ke(t),list:Re(t),update:Qe(t),unlink:Ve(t)}}const qe="useandom-26T198340PX75pxJACKVERYMINDBUSHWOLF_GQZbfghjklqvwyzrict";let $=(t=21)=>{let e="",a=crypto.getRandomValues(new Uint8Array(t));for(;t--;)e+=qe[a[t]&63];return e};function Ge(t){return async e=>{const a={id:e.id||$(),created_at:new Date().toISOString(),updated_at:new Date().toISOString(),...e};return await t.insertInto("tenants").values(a).execute(),a}}function He(t){return async e=>{const a=await t.selectFrom("tenants").where("tenants.id","=",e).selectAll().executeTakeFirst();return a?_(a):null}}function Xe(t){return async(e={page:0,per_page:50,include_totals:!1})=>{let a=t.selectFrom("tenants");if(e.sort&&e.sort.sort_by){const{ref:l}=t.dynamic;a=a.orderBy(l(e.sort.sort_by),e.sort.sort_order)}e.q&&(a=a.where(l=>l.or([l("name","like",`%${e.q}%`)])));const o=await a.offset(e.page*e.per_page).limit(e.per_page).selectAll().execute();if(!e.include_totals)return{tenants:o};const{count:n}=await a.select(l=>l.fn.countAll().as("count")).executeTakeFirstOrThrow(),s=x(n);return{tenants:o.map(_),start:(e.page-1)*e.per_page,limit:e.per_page,length:s}}}function Ye(t){return async(e,a)=>{const r={...a,id:e,updated_at:new Date().toISOString()};await t.updateTable("tenants").set(r).where("id","=",e).execute()}}function Ze(t){return async e=>(await t.deleteFrom("tenants").where("tenants.id","=",e).execute()).length===1}function et(t){return{create:Ge(t),get:He(t),list:Xe(t),update:Ye(t),remove:Ze(t)}}function ue(t){return t?JSON.stringify(t):void 0}const tt=1024;function at(t){return async(e,a)=>{var o,n,s;const r={id:$(),...a,user_agent:a.user_agent.slice(0,tt)};return await t.insertInto("logs").values({...r,description:(o=r.description)==null?void 0:o.substring(0,256),isMobile:a.isMobile?1:0,tenant_id:e,scope:(n=a.scope)==null?void 0:n.join(","),auth0_client:ue(a.auth0_client),details:(s=ue(a.details))==null?void 0:s.substring(0,8192)}).execute(),r}}function me(t){if(!t)return"";try{return JSON.parse(t)}catch{return t}}function pe(t){return{...t,client_id:t.client_id,client_name:"",auth0_client:me(t.auth0_client),details:me(t.details),isMobile:!!t.isMobile,scope:t.scope?t.scope.split(","):void 0,log_id:t.id,_id:t.id}}function rt(t){return async(e,a={page:0,per_page:50,include_totals:!1})=>{let r=t.selectFrom("logs").where("logs.tenant_id","=",e);a.q&&(r=k(t,r,a.q,["user_id","ip"]));let o=r;if(a.sort&&a.sort.sort_by){const{ref:l}=t.dynamic;o=o.orderBy(l(a.sort.sort_by),a.sort.sort_order)}o=o.offset(a.page*a.per_page).limit(a.per_page);const n=await o.selectAll().execute(),{count:s}=await r.select(l=>l.fn.countAll().as("count")).executeTakeFirstOrThrow();return{logs:n.map(pe),start:a.page*a.per_page,limit:a.per_page,length:x(s)}}}function nt(t){return async(e,a)=>{const r=await t.selectFrom("logs").where("logs.tenant_id","=",e).where("logs.id","=",a).selectAll().executeTakeFirst();return r?pe(r):null}}function ot(t){return{create:at(t),list:rt(t),get:nt(t)}}function st(t){return async(e,a)=>{const r=await t.selectFrom("sessions").where("sessions.tenant_id","=",e).where("sessions.id","=",a).selectAll().executeTakeFirst();if(!r)return null;const{tenant_id:o,device:n,clients:s,...l}=r;return{...l,device:JSON.parse(n),clients:JSON.parse(s)}}}function it(t){return async(e,a)=>{const r={...a,created_at:new Date().toISOString(),updated_at:new Date().toISOString(),authenticated_at:new Date().toISOString(),last_interaction_at:new Date().toISOString()};return await t.insertInto("sessions").values({...r,tenant_id:e,device:JSON.stringify(a.device),clients:JSON.stringify(a.clients)}).execute(),r}}function dt(t){return async(e,a)=>!!(await t.deleteFrom("sessions").where("tenant_id","=",e).where("sessions.id","=",a).execute()).length}function ct(t){return async(e,a,r)=>{const o={...r,updated_at:new Date().toISOString(),device:r.device?JSON.stringify(r.device):void 0,clients:r.clients?JSON.stringify(r.clients):void 0};return!!(await t.updateTable("sessions").set(o).where("tenant_id","=",e).where("sessions.id","=",a).execute()).length}}function lt(t){return async(e,a={page:0,per_page:50,include_totals:!1})=>{let r=t.selectFrom("sessions").where("sessions.tenant_id","=",e);a.q&&(r=k(t,r,a.q,["user_id","session_id"]));let o=r;if(a.sort&&a.sort.sort_by){const{ref:d}=t.dynamic;o=o.orderBy(d(a.sort.sort_by),a.sort.sort_order)}o=o.offset(a.page*a.per_page).limit(a.per_page);const n=await o.selectAll().execute(),{count:s}=await r.select(d=>d.fn.countAll().as("count")).executeTakeFirstOrThrow(),l=x(s);return{sessions:n.map(d=>({...d,device:JSON.parse(d.device),clients:JSON.parse(d.clients)})),start:a.page*a.per_page,limit:a.per_page,length:l}}}function ut(t){return{create:it(t),get:st(t),list:lt(t),remove:dt(t),update:ct(t)}}function mt(t){return async(e,a)=>{const r=await t.selectFrom("passwords").where("passwords.tenant_id","=",e).where("passwords.user_id","=",a).selectAll().executeTakeFirst();if(!r)return null;const{tenant_id:o,...n}=r;return n}}function ht(t){return async(e,a)=>{const r={...a,created_at:new Date().toISOString(),updated_at:new Date().toISOString()};return await t.insertInto("passwords").values({...r,tenant_id:e}).execute(),r}}function _t(t){return async(e,a)=>(await t.updateTable("passwords").set({password:a.password,updated_at:new Date().toISOString()}).where("tenant_id","=",e).where("user_id","=",a.user_id).execute()).length===1}function ft(t){return{create:ht(t),update:_t(t),get:mt(t)}}function pt(t){return async(e,a={page:0,per_page:50,include_totals:!1})=>{let r=t.selectFrom("codes").where("codes.tenant_id","=",e);a.q&&(r=k(t,r,a.q,["code","login_id"]));const n=await r.offset(a.page*a.per_page).limit(a.per_page).selectAll().execute(),{count:s}=await r.select(d=>d.fn.countAll().as("count")).executeTakeFirstOrThrow();return{codes:n.map(d=>{const{tenant_id:g,...m}=d;return O.codeSchema.parse(_(m))}),start:a.page*a.per_page,limit:a.per_page,length:x(s)}}}function gt(t){return async(e,a)=>{const r={...a,created_at:new Date().toISOString()};return await t.insertInto("codes").values({...r,tenant_id:e}).execute(),r}}function yt(t){return async(e,a)=>(await t.deleteFrom("codes").where("codes.tenant_id","=",e).where("codes.code_id","=",a).executeTakeFirst()).numDeletedRows>0}function wt(t){return async(e,a,r)=>{let o=t.selectFrom("codes").where("codes.code_id","=",a).where("codes.code_type","=",r);e.length&&(o=o.where("codes.tenant_id","=",e));const n=await o.selectAll().executeTakeFirst();return n?_(n):null}}function vt(t){return async(e,a)=>(await t.updateTable("codes").set({used_at:new Date().toISOString()}).where("codes.tenant_id","=",e).where("codes.code_id","=",a).executeTakeFirst()).numUpdatedRows>0}function Nt(t){return{create:gt(t),list:pt(t),remove:yt(t),used:vt(t),get:wt(t)}}function Ct(t){return async(e,a)=>{const r={created_at:new Date().toISOString(),updated_at:new Date().toISOString(),...a},o=JSON.stringify(a.allowed_origins),n=JSON.stringify(a.callbacks),s=JSON.stringify(a.web_origins),l=JSON.stringify(a.allowed_logout_urls),d=JSON.stringify(a.allowed_clients);return await t.insertInto("applications").values({...r,tenant_id:e,disable_sign_ups:a.disable_sign_ups?1:0,addons:a.addons?JSON.stringify(a.addons):"{}",callbacks:n,allowed_origins:o,web_origins:s,allowed_logout_urls:l,allowed_clients:d}).execute(),r}}function bt(t){return async e=>({applications:(await t.selectFrom("applications").where("applications.tenant_id","=",e).selectAll().execute()).map(n=>({...n,disable_sign_ups:!!n.disable_sign_ups,addons:n.addons?JSON.parse(n.addons):{},callbacks:n.callbacks?JSON.parse(n.callbacks):[],allowed_origins:n.allowed_origins?JSON.parse(n.allowed_origins):[],web_origins:n.web_origins?JSON.parse(n.web_origins):[],allowed_logout_urls:n.allowed_logout_urls?JSON.parse(n.allowed_logout_urls):[],allowed_clients:n.allowed_logout_urls?JSON.parse(n.allowed_logout_urls):[]}))})}function xt(t){return async(e,a)=>{const r=await t.selectFrom("applications").where("applications.tenant_id","=",e).where("applications.id","=",a).selectAll().executeTakeFirst();return r?_({...r,disable_sign_ups:!!r.disable_sign_ups,addons:JSON.parse(r.addons),callbacks:JSON.parse(r.callbacks),allowed_origins:JSON.parse(r.allowed_origins),web_origins:JSON.parse(r.web_origins),allowed_logout_urls:JSON.parse(r.allowed_logout_urls)}):null}}function Tt(t){return async(e,a)=>(await t.deleteFrom("applications").where("applications.tenant_id","=",e).where("applications.id","=",a).executeTakeFirst()).numDeletedRows>0}function St(t){return async(e,a,r)=>{const o={...r,updated_at:new Date().toISOString(),allowed_origins:r.allowed_origins?JSON.stringify(r.allowed_origins):void 0,callbacks:r.callbacks?JSON.stringify(r.callbacks):void 0,web_origins:r.web_origins?JSON.stringify(r.web_origins):void 0,allowed_logout_urls:r.allowed_logout_urls?JSON.stringify(r.allowed_logout_urls):void 0,allowed_clients:r.allowed_clients?JSON.stringify(r.allowed_clients):void 0,addons:r.addons?JSON.stringify(r.addons):"{}",disable_sign_ups:r.disable_sign_ups?1:0};return await t.updateTable("applications").set(o).where("applications.id","=",a).where("applications.tenant_id","=",e).execute(),!0}}function Ot(t){return{create:Ct(t),list:bt(t),get:xt(t),remove:Tt(t),update:St(t)}}function kt(t){return async(e,a)=>{const r={id:$(),...a,created_at:new Date().toISOString(),updated_at:new Date().toISOString()};return await t.insertInto("connections").values({...r,options:JSON.stringify(r.options||{}),tenant_id:e}).execute(),r}}function $t(t){return async(e,a={page:0,per_page:50,include_totals:!1})=>{let r=t.selectFrom("connections").where("connections.tenant_id","=",e);a.q&&(r=k(t,r,a.q,["user_id","ip"]));const s=(await r.offset(a.page*a.per_page).limit(a.per_page).selectAll().execute()).map(d=>_({...d,options:JSON.parse(d.options)})),{count:l}=await r.select(d=>d.fn.countAll().as("count")).executeTakeFirstOrThrow();return{connections:s,start:a.page*a.per_page,limit:a.per_page,length:x(l)}}}function Dt(t){return async(e,a)=>(await t.deleteFrom("connections").where("connections.tenant_id","=",e).where("connections.id","=",a).executeTakeFirst()).numDeletedRows>0}function It(t){return async(e,a)=>{const r=await t.selectFrom("connections").where("connections.tenant_id","=",e).where("connections.id","=",a).selectAll().executeTakeFirst();return r?_({...r,options:JSON.parse(r.options)}):null}}function Pt(t){return async(e,a,r)=>{const o={...r,updated_at:new Date().toISOString()};return await t.updateTable("connections").set({...o,options:o.options?JSON.stringify(o.options):void 0}).where("connections.id","=",a).where("connections.tenant_id","=",e).execute(),!0}}function jt(t){return{create:kt(t),get:It(t),list:$t(t),remove:Dt(t),update:Pt(t)}}function Mt(t){return{get:async e=>{const a=await t.selectFrom("applications").selectAll().where("id","=",e).executeTakeFirst();if(!a)return null;const r=await t.selectFrom("tenants").selectAll().where("id","=",a.tenant_id).executeTakeFirst();if(!r)throw new W(404,{message:"Tenant not found"});const o=await t.selectFrom("connections").where("tenant_id","=",a.tenant_id).selectAll().execute();return{...a,connections:o.map(s=>O.connectionSchema.parse(_({...s,options:s.options?JSON.parse(s.options):{}}))),addons:a.addons?JSON.parse(a.addons):{},callbacks:a.callbacks?JSON.parse(a.callbacks):[],allowed_origins:a.allowed_origins?JSON.parse(a.allowed_origins):[],web_origins:a.web_origins?JSON.parse(a.web_origins):[],allowed_logout_urls:a.allowed_logout_urls?JSON.parse(a.allowed_logout_urls):[],allowed_clients:a.allowed_clients?JSON.parse(a.allowed_clients):[],tenant:_(r),disable_sign_ups:!!a.disable_sign_ups}}}}function Ft(t){return async()=>await t.selectFrom("keys").where(a=>a.or([a("revoked_at",">",new Date().toISOString()),a("revoked_at","is",null)])).selectAll().execute()}function At(t){return async e=>{await t.insertInto("keys").values({...e,created_at:new Date().toDateString()}).execute()}}function Lt(t){return async(e,a)=>!!(await t.updateTable("keys").set(a).where("kid","=",e).execute()).length}function zt(t){return{create:At(t),list:Ft(t),update:Lt(t)}}function Et(t){return async(e,a)=>{const r={custom_domain_id:$(),status:"pending",primary:!1,...a};return await t.insertInto("custom_domains").values({...r,created_at:new Date().toISOString(),updated_at:new Date().toISOString(),tenant_id:e,primary:r.primary?1:0}).execute(),r}}function Jt(t){return async e=>(await t.selectFrom("custom_domains").where("custom_domains.tenant_id","=",e).selectAll().execute()).map(r=>({...r,primary:r.primary===1}))}function Kt(t){return async(e,a)=>(await t.deleteFrom("custom_domains").where("custom_domains.tenant_id","=",e).where("custom_domains.custom_domain_id","=",a).execute()).length>0}function Rt(t){return async(e,a)=>{const r=await t.selectFrom("custom_domains").where("custom_domains.tenant_id","=",e).where("custom_domains.custom_domain_id","=",a).selectAll().executeTakeFirst();return r?{...r,primary:r.primary===1}:null}}function Ut(t){return async(e,a,r)=>{const o={...r,updated_at:new Date().toISOString(),primary:r.primary?1:0};return(await t.updateTable("custom_domains").set(o).where("custom_domains.tenant_id","=",e).where("custom_domains.custom_domain_id","=",a).execute()).length>0}}function Bt(t){return async e=>{const a=await t.selectFrom("custom_domains").where("custom_domains.domain","=",e).selectAll().executeTakeFirst();return a?{...a,primary:a.primary===1}:null}}function Qt(t){return{create:Et(t),get:Rt(t),getByDomain:Bt(t),list:Jt(t),remove:Kt(t),update:Ut(t)}}function Vt(t){return async e=>{const[a]=await t.selectFrom("branding").where("branding.tenant_id","=",e).selectAll().execute();if(!a)return null;const{tenant_id:r,colors_primary:o,colors_page_background_type:n,colors_page_background_start:s,colors_page_background_end:l,colors_page_background_angle_dev:d,font_url:g,...m}=a;return _({...m,colors:{primary:o,page_background:{type:n,start:s,end:l,angle_deg:d}},font:g?{url:g}:void 0})}}function Wt(t){return async(e,a)=>{var s,l,d,g,m,w,b,Z,ee,te,ae,re,ne,oe,se,ie,de,ce;const{colors:r,font:o,...n}=a;try{await t.insertInto("branding").values({...n,colors_primary:r==null?void 0:r.primary,colors_page_background_type:(l=(s=a.colors)==null?void 0:s.page_background)==null?void 0:l.type,colors_page_background_start:(g=(d=a.colors)==null?void 0:d.page_background)==null?void 0:g.start,colors_page_background_end:(w=(m=a.colors)==null?void 0:m.page_background)==null?void 0:w.end,colors_page_background_angle_dev:(Z=(b=a.colors)==null?void 0:b.page_background)==null?void 0:Z.angle_deg,font_url:(ee=a.font)==null?void 0:ee.url,tenant_id:e}).execute()}catch{await t.updateTable("branding").set({...n,colors_primary:r==null?void 0:r.primary,colors_page_background_type:(ae=(te=a.colors)==null?void 0:te.page_background)==null?void 0:ae.type,colors_page_background_start:(ne=(re=a.colors)==null?void 0:re.page_background)==null?void 0:ne.start,colors_page_background_end:(se=(oe=a.colors)==null?void 0:oe.page_background)==null?void 0:se.end,colors_page_background_angle_dev:(de=(ie=a.colors)==null?void 0:ie.page_background)==null?void 0:de.angle_deg,font_url:(ce=a.font)==null?void 0:ce.url}).where("tenant_id","=",e).execute()}}}function qt(t){return{get:Vt(t),set:Wt(t)}}function Gt(t){return async(e,a={page:0,per_page:50,include_totals:!1})=>{let r=t.selectFrom("hooks").where("hooks.tenant_id","=",e);a.q&&(r=k(t,r,a.q,["url"]));const n=await r.offset(a.page*a.per_page).limit(a.per_page).selectAll().execute(),{count:s}=await r.select(d=>d.fn.countAll().as("count")).executeTakeFirstOrThrow();return{hooks:n.map(d=>{const{tenant_id:g,enabled:m,synchronous:w,...b}=d;return _({...b,enabled:!!m,synchronous:!!w})}),start:a.page*a.per_page,limit:a.per_page,length:x(s)}}}function Ht(t){return async(e,a)=>{const r=await t.selectFrom("hooks").where("hooks.tenant_id","=",e).where("hooks.hook_id","=",a).selectAll().executeTakeFirst();return r?_({...r,enabled:!!r.enabled,synchronous:!!r.synchronous}):null}}function Xt(t){return async(e,a)=>(await t.deleteFrom("hooks").where("hooks.tenant_id","=",e).where("hooks.hook_id","=",a).executeTakeFirst()).numDeletedRows>0}function Yt(t){return async(e,a)=>{const r={hook_id:$(),...a,created_at:new Date().toISOString(),updated_at:new Date().toISOString()};return await t.insertInto("hooks").values({...r,tenant_id:e,enabled:a.enabled?1:0,synchronous:a.synchronous?1:0}).execute(),r}}function Zt(t){return async(e,a,r)=>{const o={...r,updated_at:new Date().toISOString(),enabled:r.enabled!==void 0?r.enabled?1:0:void 0,synchronous:r.enabled!==void 0?r.synchronous?1:0:void 0};return await t.updateTable("hooks").set(o).where("hooks.hook_id","=",a).where("hooks.tenant_id","=",e).execute(),!0}}function ea(t){return{create:Yt(t),get:Ht(t),list:Gt(t),update:Zt(t),remove:Xt(t)}}function J(t,e="",a={}){for(let r in t)if(Object.prototype.hasOwnProperty.call(t,r)){const o=e?`${e}_${r}`:r;typeof t[r]=="object"&&t[r]!==null&&!Array.isArray(t[r])?J(t[r],o,a):a[o]=t[r]}return a}function ta(t,e){const a={};for(const[r,o]of Object.entries(t)){const n=e.find(s=>r.startsWith(`${s}_`));if(!n)a[r]=o;else{const s=r.slice(n.length+1);a[n]={...a[n],[s]:o}}}return a}function aa(t){return async(e,a)=>{const r={themeId:$(),...a,created_at:new Date().toISOString(),updated_at:new Date().toISOString()};return await t.insertInto("themes").values({...J(r),tenant_id:e}).execute(),r}}function ra(t){return async(e,a)=>(await t.deleteFrom("themes").where("themes.tenant_id","=",e).where("themes.theme_id","=",a).executeTakeFirst()).numDeletedRows>0}function na(t){return async(e,a)=>{const r=await t.selectFrom("themes").where("themes.tenant_id","=",e).where("themes.theme_id","=",a).selectAll().executeTakeFirst();return r?_(r):null}}function oa(t){return async(e,a,r)=>{const o=J({...r,updated_at:new Date().toISOString()});return await t.updateTable("themes").set(o).where("themes.id","=",a).where("themes.tenant_id","=",e).execute(),!0}}function sa(t){return{create:aa(t),get:na(t),remove:ra(t),update:oa(t)}}function ia(t){return async(e,a)=>{const r=new Date().toISOString(),o=await t.selectFrom("login_sessions").where("login_sessions.expires_at",">",r).where("login_sessions.id","=",a).selectAll().executeTakeFirst();return o?O.loginSessionSchema.parse(ta(_(o),["authParams"])):null}}function da(t){return async(e,a)=>{var o;const r={id:$(),...a,authorization_url:(o=a.authorization_url)==null?void 0:o.slice(0,1024),created_at:new Date().toISOString(),updated_at:new Date().toISOString()};return await t.insertInto("login_sessions").values({...J(r),tenant_id:e}).execute(),r}}function ca(t){return async(e,a,r)=>(await t.updateTable("login_sessions").set(J(r)).where("login_sessions.id","=",a).where("login_sessions.tenant_id","=",e).execute()).length===1}function la(t){return async(e,a)=>(await t.deleteFrom("login_sessions").where("login_sessions.tenant_id","=",e).where("login_sessions.id","=",a).execute()).length>0}function ua(t){return{create:da(t),get:ia(t),update:ca(t),remove:la(t)}}function ma(t){return async e=>{const[a]=await t.selectFrom("prompt_settings").where("prompt_settings.tenant_id","=",e).selectAll().execute();return _({identifier_first:!!(a!=null&&a.identifier_first),password_first:!!(a!=null&&a.password_first),webauthn_platform_first_factor:!!(a!=null&&a.webauthn_platform_first_factor),universal_login_experience:(a==null?void 0:a.universal_login_experience)||"new"})}}function he(t){return _({...t,webauthn_platform_first_factor:t.webauthn_platform_first_factor?!!t.webauthn_platform_first_factor:void 0,identifier_first:t.identifier_first?!!t.identifier_first:void 0,password_first:t.password_first?!!t.password_first:void 0,universal_login_experience:t.universal_login_experience})}function ha(t){return async(e,a)=>{try{const r=O.promptSettingSchema.parse(a);await t.insertInto("prompt_settings").values({...he(r),tenant_id:e}).execute()}catch{await t.updateTable("prompt_settings").set(he(a)).where("tenant_id","=",e).execute()}}}function _a(t){return{get:ma(t),set:ha(t)}}function fa(t){return async e=>{const[a]=await t.selectFrom("email_providers").where("email_providers.tenant_id","=",e).selectAll().execute();if(!a)return null;const{tenant_id:r,credentials:o,settings:n,enabled:s,...l}=a;return _({...l,credentials:JSON.parse(o),settings:JSON.parse(n),enabled:!!s})}}function pa(t){return async(e,a)=>{const{credentials:r,settings:o,enabled:n,...s}=a;await t.updateTable("email_providers").set({...s,credentials:r?JSON.stringify(r):void 0,settings:o?JSON.stringify(o):void 0,enabled:n!==void 0?n?1:0:void 0}).where("tenant_id","=",e).execute()}}function ga(t){return async(e,a)=>{const{credentials:r,settings:o,enabled:n,...s}=a;await t.insertInto("email_providers").values({...s,enabled:n?1:0,credentials:JSON.stringify(r),settings:JSON.stringify(o),tenant_id:e,created_at:new Date().toISOString(),updated_at:new Date().toISOString()}).execute()}}function ya(t){return{get:fa(t),create:ga(t),update:pa(t)}}function wa(t){return async(e,a)=>{const r=await t.selectFrom("refresh_tokens").where("refresh_tokens.tenant_id","=",e).where("refresh_tokens.id","=",a).selectAll().executeTakeFirst();return r?{...r,rotating:!!r.rotating,device:r.device?JSON.parse(r.device):{},resource_servers:r.resource_servers?JSON.parse(r.resource_servers):[]}:null}}function va(t){return async(e,a)=>{const r={...a,created_at:new Date().toISOString()};return await t.insertInto("refresh_tokens").values({...r,tenant_id:e,rotating:a.rotating?1:0,device:JSON.stringify(a.device),resource_servers:JSON.stringify(a.resource_servers)}).execute(),{...a,...r}}}function Na(t){return async(e,a)=>!!(await t.deleteFrom("refresh_tokens").where("tenant_id","=",e).where("refresh_tokens.id","=",a).execute()).length}function Ca(t){return async(e,a,r)=>{const o={...r,device:r.device?JSON.stringify(r.device):void 0,resource_servers:r.resource_servers?JSON.stringify(r.resource_servers):void 0,rotating:r.rotating?1:0};return!!(await t.updateTable("refresh_tokens").set(o).where("tenant_id","=",e).where("refresh_tokens.id","=",a).execute()).length}}function ba(t){return async(e,a={page:0,per_page:50,include_totals:!1})=>{let r=t.selectFrom("refresh_tokens").where("refresh_tokens.tenant_id","=",e);a.q&&(r=k(t,r,a.q,["token","session_id"]));let o=r;if(a.sort&&a.sort.sort_by){const{ref:d}=t.dynamic;o=o.orderBy(d(a.sort.sort_by),a.sort.sort_order)}o=o.offset(a.page*a.per_page).limit(a.per_page);const n=await o.selectAll().execute(),{count:s}=await r.select(d=>d.fn.countAll().as("count")).executeTakeFirstOrThrow(),l=x(s);return{refresh_tokens:n.map(d=>({...d,rotating:!!d.rotating,device:d.device?JSON.parse(d.device):{},resource_servers:d.resource_servers?JSON.parse(d.resource_servers):[]})),start:a.page*a.per_page,limit:a.per_page,length:l}}}function xa(t){return{create:va(t),get:wa(t),list:ba(t),remove:Na(t),update:Ca(t)}}function Ta(t){return async()=>{const e=new Date(Date.now()-864e5).toISOString(),a=new Date(Date.now()-1e3*60*60*24*7).toISOString(),r=new Date(Date.now()-1e3*60*60*24*30*3).toISOString();console.log("delete codes"),await t.deleteFrom("codes").where("created_at","<",e).limit(1e5).execute(),console.log("delete sessions"),await t.deleteFrom("login_sessions").where("created_at","<",a).where("session_id","is",null).limit(1e5).execute(),console.log("delete logs"),await t.deleteFrom("logs").where("date","<",r).limit(1e5).execute(),console.log("delete refresh tokens"),await t.deleteFrom("refresh_tokens").where("expires_at","<",a).limit(1e5).execute(),console.log("delete sessions");const o=await t.selectFrom("sessions").select("id").where(n=>n.or([n("expires_at","<",a),n("idle_expires_at","<",a)])).where("id","not in",t.selectFrom("refresh_tokens").select("session_id")).limit(1e5).execute();o.length>0&&await t.deleteFrom("sessions").where("id","in",o.map(n=>n.id)).execute(),console.log("cleanup complete")}}function Sa(t){return t[t.length-1]}function p(t){return Object.freeze(t)}const K=p({is(t){return t.kind==="IdentifierNode"},create(t){return p({kind:"IdentifierNode",name:t})}}),q=p({is(t){return t.kind==="SchemableIdentifierNode"},create(t){return p({kind:"SchemableIdentifierNode",identifier:K.create(t)})},createWithSchema(t,e){return p({kind:"SchemableIdentifierNode",schema:K.create(t),identifier:K.create(e)})}}),Oa=p({is(t){return t.kind==="AliasNode"},create(t,e){return p({kind:"AliasNode",node:t,alias:e})}}),B=p({is(t){return t.kind==="TableNode"},create(t){return p({kind:"TableNode",table:q.create(t)})},createWithSchema(t,e){return p({kind:"TableNode",table:q.createWithSchema(t,e)})}});var R;class ka{constructor(){M(this,"nodeStack",[]);y(this,R,p({AliasNode:this.transformAlias.bind(this),ColumnNode:this.transformColumn.bind(this),IdentifierNode:this.transformIdentifier.bind(this),SchemableIdentifierNode:this.transformSchemableIdentifier.bind(this),RawNode:this.transformRaw.bind(this),ReferenceNode:this.transformReference.bind(this),SelectQueryNode:this.transformSelectQuery.bind(this),SelectionNode:this.transformSelection.bind(this),TableNode:this.transformTable.bind(this),FromNode:this.transformFrom.bind(this),SelectAllNode:this.transformSelectAll.bind(this),AndNode:this.transformAnd.bind(this),OrNode:this.transformOr.bind(this),ValueNode:this.transformValue.bind(this),ValueListNode:this.transformValueList.bind(this),PrimitiveValueListNode:this.transformPrimitiveValueList.bind(this),ParensNode:this.transformParens.bind(this),JoinNode:this.transformJoin.bind(this),OperatorNode:this.transformOperator.bind(this),WhereNode:this.transformWhere.bind(this),InsertQueryNode:this.transformInsertQuery.bind(this),DeleteQueryNode:this.transformDeleteQuery.bind(this),ReturningNode:this.transformReturning.bind(this),CreateTableNode:this.transformCreateTable.bind(this),AddColumnNode:this.transformAddColumn.bind(this),ColumnDefinitionNode:this.transformColumnDefinition.bind(this),DropTableNode:this.transformDropTable.bind(this),DataTypeNode:this.transformDataType.bind(this),OrderByNode:this.transformOrderBy.bind(this),OrderByItemNode:this.transformOrderByItem.bind(this),GroupByNode:this.transformGroupBy.bind(this),GroupByItemNode:this.transformGroupByItem.bind(this),UpdateQueryNode:this.transformUpdateQuery.bind(this),ColumnUpdateNode:this.transformColumnUpdate.bind(this),LimitNode:this.transformLimit.bind(this),OffsetNode:this.transformOffset.bind(this),OnConflictNode:this.transformOnConflict.bind(this),OnDuplicateKeyNode:this.transformOnDuplicateKey.bind(this),CreateIndexNode:this.transformCreateIndex.bind(this),DropIndexNode:this.transformDropIndex.bind(this),ListNode:this.transformList.bind(this),PrimaryKeyConstraintNode:this.transformPrimaryKeyConstraint.bind(this),UniqueConstraintNode:this.transformUniqueConstraint.bind(this),ReferencesNode:this.transformReferences.bind(this),CheckConstraintNode:this.transformCheckConstraint.bind(this),WithNode:this.transformWith.bind(this),CommonTableExpressionNode:this.transformCommonTableExpression.bind(this),CommonTableExpressionNameNode:this.transformCommonTableExpressionName.bind(this),HavingNode:this.transformHaving.bind(this),CreateSchemaNode:this.transformCreateSchema.bind(this),DropSchemaNode:this.transformDropSchema.bind(this),AlterTableNode:this.transformAlterTable.bind(this),DropColumnNode:this.transformDropColumn.bind(this),RenameColumnNode:this.transformRenameColumn.bind(this),AlterColumnNode:this.transformAlterColumn.bind(this),ModifyColumnNode:this.transformModifyColumn.bind(this),AddConstraintNode:this.transformAddConstraint.bind(this),DropConstraintNode:this.transformDropConstraint.bind(this),ForeignKeyConstraintNode:this.transformForeignKeyConstraint.bind(this),CreateViewNode:this.transformCreateView.bind(this),DropViewNode:this.transformDropView.bind(this),GeneratedNode:this.transformGenerated.bind(this),DefaultValueNode:this.transformDefaultValue.bind(this),OnNode:this.transformOn.bind(this),ValuesNode:this.transformValues.bind(this),SelectModifierNode:this.transformSelectModifier.bind(this),CreateTypeNode:this.transformCreateType.bind(this),DropTypeNode:this.transformDropType.bind(this),ExplainNode:this.transformExplain.bind(this),DefaultInsertValueNode:this.transformDefaultInsertValue.bind(this),AggregateFunctionNode:this.transformAggregateFunction.bind(this),OverNode:this.transformOver.bind(this),PartitionByNode:this.transformPartitionBy.bind(this),PartitionByItemNode:this.transformPartitionByItem.bind(this),SetOperationNode:this.transformSetOperation.bind(this),BinaryOperationNode:this.transformBinaryOperation.bind(this),UnaryOperationNode:this.transformUnaryOperation.bind(this),UsingNode:this.transformUsing.bind(this),FunctionNode:this.transformFunction.bind(this),CaseNode:this.transformCase.bind(this),WhenNode:this.transformWhen.bind(this),JSONReferenceNode:this.transformJSONReference.bind(this),JSONPathNode:this.transformJSONPath.bind(this),JSONPathLegNode:this.transformJSONPathLeg.bind(this),JSONOperatorChainNode:this.transformJSONOperatorChain.bind(this),TupleNode:this.transformTuple.bind(this),MergeQueryNode:this.transformMergeQuery.bind(this),MatchedNode:this.transformMatched.bind(this),AddIndexNode:this.transformAddIndex.bind(this),CastNode:this.transformCast.bind(this),FetchNode:this.transformFetch.bind(this),TopNode:this.transformTop.bind(this),OutputNode:this.transformOutput.bind(this)}))}transformNode(e){if(!e)return e;this.nodeStack.push(e);const a=this.transformNodeImpl(e);return this.nodeStack.pop(),p(a)}transformNodeImpl(e){return c(this,R)[e.kind](e)}transformNodeList(e){return e&&p(e.map(a=>this.transformNode(a)))}transformSelectQuery(e){return{kind:"SelectQueryNode",from:this.transformNode(e.from),selections:this.transformNodeList(e.selections),distinctOn:this.transformNodeList(e.distinctOn),joins:this.transformNodeList(e.joins),groupBy:this.transformNode(e.groupBy),orderBy:this.transformNode(e.orderBy),where:this.transformNode(e.where),frontModifiers:this.transformNodeList(e.frontModifiers),endModifiers:this.transformNodeList(e.endModifiers),limit:this.transformNode(e.limit),offset:this.transformNode(e.offset),with:this.transformNode(e.with),having:this.transformNode(e.having),explain:this.transformNode(e.explain),setOperations:this.transformNodeList(e.setOperations),fetch:this.transformNode(e.fetch),top:this.transformNode(e.top)}}transformSelection(e){return{kind:"SelectionNode",selection:this.transformNode(e.selection)}}transformColumn(e){return{kind:"ColumnNode",column:this.transformNode(e.column)}}transformAlias(e){return{kind:"AliasNode",node:this.transformNode(e.node),alias:this.transformNode(e.alias)}}transformTable(e){return{kind:"TableNode",table:this.transformNode(e.table)}}transformFrom(e){return{kind:"FromNode",froms:this.transformNodeList(e.froms)}}transformReference(e){return{kind:"ReferenceNode",column:this.transformNode(e.column),table:this.transformNode(e.table)}}transformAnd(e){return{kind:"AndNode",left:this.transformNode(e.left),right:this.transformNode(e.right)}}transformOr(e){return{kind:"OrNode",left:this.transformNode(e.left),right:this.transformNode(e.right)}}transformValueList(e){return{kind:"ValueListNode",values:this.transformNodeList(e.values)}}transformParens(e){return{kind:"ParensNode",node:this.transformNode(e.node)}}transformJoin(e){return{kind:"JoinNode",joinType:e.joinType,table:this.transformNode(e.table),on:this.transformNode(e.on)}}transformRaw(e){return{kind:"RawNode",sqlFragments:p([...e.sqlFragments]),parameters:this.transformNodeList(e.parameters)}}transformWhere(e){return{kind:"WhereNode",where:this.transformNode(e.where)}}transformInsertQuery(e){return{kind:"InsertQueryNode",into:this.transformNode(e.into),columns:this.transformNodeList(e.columns),values:this.transformNode(e.values),returning:this.transformNode(e.returning),onConflict:this.transformNode(e.onConflict),onDuplicateKey:this.transformNode(e.onDuplicateKey),with:this.transformNode(e.with),ignore:e.ignore,replace:e.replace,explain:this.transformNode(e.explain),defaultValues:e.defaultValues,top:this.transformNode(e.top),output:this.transformNode(e.output)}}transformValues(e){return{kind:"ValuesNode",values:this.transformNodeList(e.values)}}transformDeleteQuery(e){return{kind:"DeleteQueryNode",from:this.transformNode(e.from),using:this.transformNode(e.using),joins:this.transformNodeList(e.joins),where:this.transformNode(e.where),returning:this.transformNode(e.returning),with:this.transformNode(e.with),orderBy:this.transformNode(e.orderBy),limit:this.transformNode(e.limit),explain:this.transformNode(e.explain),top:this.transformNode(e.top),output:this.transformNode(e.output)}}transformReturning(e){return{kind:"ReturningNode",selections:this.transformNodeList(e.selections)}}transformCreateTable(e){return{kind:"CreateTableNode",table:this.transformNode(e.table),columns:this.transformNodeList(e.columns),constraints:this.transformNodeList(e.constraints),temporary:e.temporary,ifNotExists:e.ifNotExists,onCommit:e.onCommit,frontModifiers:this.transformNodeList(e.frontModifiers),endModifiers:this.transformNodeList(e.endModifiers),selectQuery:this.transformNode(e.selectQuery)}}transformColumnDefinition(e){return{kind:"ColumnDefinitionNode",column:this.transformNode(e.column),dataType:this.transformNode(e.dataType),references:this.transformNode(e.references),primaryKey:e.primaryKey,autoIncrement:e.autoIncrement,unique:e.unique,notNull:e.notNull,unsigned:e.unsigned,defaultTo:this.transformNode(e.defaultTo),check:this.transformNode(e.check),generated:this.transformNode(e.generated),frontModifiers:this.transformNodeList(e.frontModifiers),endModifiers:this.transformNodeList(e.endModifiers),nullsNotDistinct:e.nullsNotDistinct,identity:e.identity,ifNotExists:e.ifNotExists}}transformAddColumn(e){return{kind:"AddColumnNode",column:this.transformNode(e.column)}}transformDropTable(e){return{kind:"DropTableNode",table:this.transformNode(e.table),ifExists:e.ifExists,cascade:e.cascade}}transformOrderBy(e){return{kind:"OrderByNode",items:this.transformNodeList(e.items)}}transformOrderByItem(e){return{kind:"OrderByItemNode",orderBy:this.transformNode(e.orderBy),direction:this.transformNode(e.direction)}}transformGroupBy(e){return{kind:"GroupByNode",items:this.transformNodeList(e.items)}}transformGroupByItem(e){return{kind:"GroupByItemNode",groupBy:this.transformNode(e.groupBy)}}transformUpdateQuery(e){return{kind:"UpdateQueryNode",table:this.transformNode(e.table),from:this.transformNode(e.from),joins:this.transformNodeList(e.joins),where:this.transformNode(e.where),updates:this.transformNodeList(e.updates),returning:this.transformNode(e.returning),with:this.transformNode(e.with),explain:this.transformNode(e.explain),limit:this.transformNode(e.limit),top:this.transformNode(e.top),output:this.transformNode(e.output)}}transformColumnUpdate(e){return{kind:"ColumnUpdateNode",column:this.transformNode(e.column),value:this.transformNode(e.value)}}transformLimit(e){return{kind:"LimitNode",limit:this.transformNode(e.limit)}}transformOffset(e){return{kind:"OffsetNode",offset:this.transformNode(e.offset)}}transformOnConflict(e){return{kind:"OnConflictNode",columns:this.transformNodeList(e.columns),constraint:this.transformNode(e.constraint),indexExpression:this.transformNode(e.indexExpression),indexWhere:this.transformNode(e.indexWhere),updates:this.transformNodeList(e.updates),updateWhere:this.transformNode(e.updateWhere),doNothing:e.doNothing}}transformOnDuplicateKey(e){return{kind:"OnDuplicateKeyNode",updates:this.transformNodeList(e.updates)}}transformCreateIndex(e){return{kind:"CreateIndexNode",name:this.transformNode(e.name),table:this.transformNode(e.table),columns:this.transformNodeList(e.columns),unique:e.unique,using:this.transformNode(e.using),ifNotExists:e.ifNotExists,where:this.transformNode(e.where),nullsNotDistinct:e.nullsNotDistinct}}transformList(e){return{kind:"ListNode",items:this.transformNodeList(e.items)}}transformDropIndex(e){return{kind:"DropIndexNode",name:this.transformNode(e.name),table:this.transformNode(e.table),ifExists:e.ifExists,cascade:e.cascade}}transformPrimaryKeyConstraint(e){return{kind:"PrimaryKeyConstraintNode",columns:this.transformNodeList(e.columns),name:this.transformNode(e.name)}}transformUniqueConstraint(e){return{kind:"UniqueConstraintNode",columns:this.transformNodeList(e.columns),name:this.transformNode(e.name),nullsNotDistinct:e.nullsNotDistinct}}transformForeignKeyConstraint(e){return{kind:"ForeignKeyConstraintNode",columns:this.transformNodeList(e.columns),references:this.transformNode(e.references),name:this.transformNode(e.name),onDelete:e.onDelete,onUpdate:e.onUpdate}}transformSetOperation(e){return{kind:"SetOperationNode",operator:e.operator,expression:this.transformNode(e.expression),all:e.all}}transformReferences(e){return{kind:"ReferencesNode",table:this.transformNode(e.table),columns:this.transformNodeList(e.columns),onDelete:e.onDelete,onUpdate:e.onUpdate}}transformCheckConstraint(e){return{kind:"CheckConstraintNode",expression:this.transformNode(e.expression),name:this.transformNode(e.name)}}transformWith(e){return{kind:"WithNode",expressions:this.transformNodeList(e.expressions),recursive:e.recursive}}transformCommonTableExpression(e){return{kind:"CommonTableExpressionNode",name:this.transformNode(e.name),materialized:e.materialized,expression:this.transformNode(e.expression)}}transformCommonTableExpressionName(e){return{kind:"CommonTableExpressionNameNode",table:this.transformNode(e.table),columns:this.transformNodeList(e.columns)}}transformHaving(e){return{kind:"HavingNode",having:this.transformNode(e.having)}}transformCreateSchema(e){return{kind:"CreateSchemaNode",schema:this.transformNode(e.schema),ifNotExists:e.ifNotExists}}transformDropSchema(e){return{kind:"DropSchemaNode",schema:this.transformNode(e.schema),ifExists:e.ifExists,cascade:e.cascade}}transformAlterTable(e){return{kind:"AlterTableNode",table:this.transformNode(e.table),renameTo:this.transformNode(e.renameTo),setSchema:this.transformNode(e.setSchema),columnAlterations:this.transformNodeList(e.columnAlterations),addConstraint:this.transformNode(e.addConstraint),dropConstraint:this.transformNode(e.dropConstraint),addIndex:this.transformNode(e.addIndex),dropIndex:this.transformNode(e.dropIndex)}}transformDropColumn(e){return{kind:"DropColumnNode",column:this.transformNode(e.column)}}transformRenameColumn(e){return{kind:"RenameColumnNode",column:this.transformNode(e.column),renameTo:this.transformNode(e.renameTo)}}transformAlterColumn(e){return{kind:"AlterColumnNode",column:this.transformNode(e.column),dataType:this.transformNode(e.dataType),dataTypeExpression:this.transformNode(e.dataTypeExpression),setDefault:this.transformNode(e.setDefault),dropDefault:e.dropDefault,setNotNull:e.setNotNull,dropNotNull:e.dropNotNull}}transformModifyColumn(e){return{kind:"ModifyColumnNode",column:this.transformNode(e.column)}}transformAddConstraint(e){return{kind:"AddConstraintNode",constraint:this.transformNode(e.constraint)}}transformDropConstraint(e){return{kind:"DropConstraintNode",constraintName:this.transformNode(e.constraintName),ifExists:e.ifExists,modifier:e.modifier}}transformCreateView(e){return{kind:"CreateViewNode",name:this.transformNode(e.name),temporary:e.temporary,orReplace:e.orReplace,ifNotExists:e.ifNotExists,materialized:e.materialized,columns:this.transformNodeList(e.columns),as:this.transformNode(e.as)}}transformDropView(e){return{kind:"DropViewNode",name:this.transformNode(e.name),ifExists:e.ifExists,materialized:e.materialized,cascade:e.cascade}}transformGenerated(e){return{kind:"GeneratedNode",byDefault:e.byDefault,always:e.always,identity:e.identity,stored:e.stored,expression:this.transformNode(e.expression)}}transformDefaultValue(e){return{kind:"DefaultValueNode",defaultValue:this.transformNode(e.defaultValue)}}transformOn(e){return{kind:"OnNode",on:this.transformNode(e.on)}}transformSelectModifier(e){return{kind:"SelectModifierNode",modifier:e.modifier,rawModifier:this.transformNode(e.rawModifier),of:this.transformNodeList(e.of)}}transformCreateType(e){return{kind:"CreateTypeNode",name:this.transformNode(e.name),enum:this.transformNode(e.enum)}}transformDropType(e){return{kind:"DropTypeNode",name:this.transformNode(e.name),ifExists:e.ifExists}}transformExplain(e){return{kind:"ExplainNode",format:e.format,options:this.transformNode(e.options)}}transformSchemableIdentifier(e){return{kind:"SchemableIdentifierNode",schema:this.transformNode(e.schema),identifier:this.transformNode(e.identifier)}}transformAggregateFunction(e){return{kind:"AggregateFunctionNode",aggregated:this.transformNodeList(e.aggregated),distinct:e.distinct,filter:this.transformNode(e.filter),func:e.func,over:this.transformNode(e.over)}}transformOver(e){return{kind:"OverNode",orderBy:this.transformNode(e.orderBy),partitionBy:this.transformNode(e.partitionBy)}}transformPartitionBy(e){return{kind:"PartitionByNode",items:this.transformNodeList(e.items)}}transformPartitionByItem(e){return{kind:"PartitionByItemNode",partitionBy:this.transformNode(e.partitionBy)}}transformBinaryOperation(e){return{kind:"BinaryOperationNode",leftOperand:this.transformNode(e.leftOperand),operator:this.transformNode(e.operator),rightOperand:this.transformNode(e.rightOperand)}}transformUnaryOperation(e){return{kind:"UnaryOperationNode",operator:this.transformNode(e.operator),operand:this.transformNode(e.operand)}}transformUsing(e){return{kind:"UsingNode",tables:this.transformNodeList(e.tables)}}transformFunction(e){return{kind:"FunctionNode",func:e.func,arguments:this.transformNodeList(e.arguments)}}transformCase(e){return{kind:"CaseNode",value:this.transformNode(e.value),when:this.transformNodeList(e.when),else:this.transformNode(e.else),isStatement:e.isStatement}}transformWhen(e){return{kind:"WhenNode",condition:this.transformNode(e.condition),result:this.transformNode(e.result)}}transformJSONReference(e){return{kind:"JSONReferenceNode",reference:this.transformNode(e.reference),traversal:this.transformNode(e.traversal)}}transformJSONPath(e){return{kind:"JSONPathNode",inOperator:this.transformNode(e.inOperator),pathLegs:this.transformNodeList(e.pathLegs)}}transformJSONPathLeg(e){return{kind:"JSONPathLegNode",type:e.type,value:e.value}}transformJSONOperatorChain(e){return{kind:"JSONOperatorChainNode",operator:this.transformNode(e.operator),values:this.transformNodeList(e.values)}}transformTuple(e){return{kind:"TupleNode",values:this.transformNodeList(e.values)}}transformMergeQuery(e){return{kind:"MergeQueryNode",into:this.transformNode(e.into),using:this.transformNode(e.using),whens:this.transformNodeList(e.whens),with:this.transformNode(e.with),top:this.transformNode(e.top),output:this.transformNode(e.output)}}transformMatched(e){return{kind:"MatchedNode",not:e.not,bySource:e.bySource}}transformAddIndex(e){return{kind:"AddIndexNode",name:this.transformNode(e.name),columns:this.transformNodeList(e.columns),unique:e.unique,using:this.transformNode(e.using),ifNotExists:e.ifNotExists}}transformCast(e){return{kind:"CastNode",expression:this.transformNode(e.expression),dataType:this.transformNode(e.dataType)}}transformFetch(e){return{kind:"FetchNode",rowCount:this.transformNode(e.rowCount),modifier:e.modifier}}transformTop(e){return{kind:"TopNode",expression:e.expression,modifiers:e.modifiers}}transformOutput(e){return{kind:"OutputNode",selections:this.transformNodeList(e.selections)}}transformDataType(e){return e}transformSelectAll(e){return e}transformIdentifier(e){return e}transformValue(e){return e}transformPrimitiveValueList(e){return e}transformOperator(e){return e}transformDefaultInsertValue(e){return e}}R=new WeakMap;const $a=p({AlterTableNode:!0,CreateIndexNode:!0,CreateSchemaNode:!0,CreateTableNode:!0,CreateTypeNode:!0,CreateViewNode:!0,DeleteQueryNode:!0,DropIndexNode:!0,DropSchemaNode:!0,DropTableNode:!0,DropTypeNode:!0,DropViewNode:!0,InsertQueryNode:!0,RawNode:!0,SelectQueryNode:!0,UpdateQueryNode:!0,MergeQueryNode:!0});var j,T,S,f,ge,ye,we,D,G,ve;class Da extends ka{constructor(a){super();y(this,f);y(this,j);y(this,T,new Set);y(this,S,new Set);F(this,j,a)}transformNodeImpl(a){if(!u(this,f,ge).call(this,a))return super.transformNodeImpl(a);const r=u(this,f,we).call(this,a);for(const s of r)c(this,S).add(s);const o=u(this,f,ye).call(this,a);for(const s of o)c(this,T).add(s);const n=super.transformNodeImpl(a);for(const s of o)c(this,T).delete(s);for(const s of r)c(this,S).delete(s);return n}transformSchemableIdentifier(a){const r=super.transformSchemableIdentifier(a);return r.schema||!c(this,T).has(a.identifier.name)?r:{...r,schema:K.create(c(this,j))}}transformReferences(a){const r=super.transformReferences(a);return r.table.table.schema?r:{...r,table:B.createWithSchema(c(this,j),r.table.table.identifier.name)}}}j=new WeakMap,T=new WeakMap,S=new WeakMap,f=new WeakSet,ge=function(a){return a.kind in $a},ye=function(a){const r=new Set;if("name"in a&&a.name&&q.is(a.name)&&u(this,f,G).call(this,a.name,r),"from"in a&&a.from)for(const o of a.from.froms)u(this,f,D).call(this,o,r);if("into"in a&&a.into&&u(this,f,D).call(this,a.into,r),"table"in a&&a.table&&u(this,f,D).call(this,a.table,r),"joins"in a&&a.joins)for(const o of a.joins)u(this,f,D).call(this,o.table,r);return"using"in a&&a.using&&u(this,f,D).call(this,a.using,r),r},we=function(a){const r=new Set;return"with"in a&&a.with&&u(this,f,ve).call(this,a.with,r),r},D=function(a,r){const o=B.is(a)?a:Oa.is(a)&&B.is(a.node)?a.node:null;o&&u(this,f,G).call(this,o.table,r)},G=function(a,r){const o=a.identifier.name;!c(this,T).has(o)&&!c(this,S).has(o)&&r.add(o)},ve=function(a,r){for(const o of a.expressions){const n=o.name.table.table.identifier.name;c(this,S).has(n)||r.add(n)}};var z;class Ia{constructor(e){y(this,z);F(this,z,new Da(e))}transformQuery(e){return c(this,z).transformNode(e.node)}async transformResult(e){return e.result}}z=new WeakMap;class Pa{transformQuery(e){return e.node}async transformResult(e){return e.result}}const ja="kysely_migration",_e="kysely_migration_lock",Ma=!1,Q="migration_lock",Fa=p({__noMigrations__:!0});var h,i,A,v,N,I,Ce,C,be,xe,Te,Se,Oe,H,P,X,ke,$e,De,Y,Ie,Pe,je,Me,Fe,L;class Ne{constructor(e){y(this,i);y(this,h);F(this,h,p(e))}async getMigrations(){const e=await u(this,i,P).call(this,c(this,i,N))?await c(this,h).db.withPlugin(c(this,i,C)).selectFrom(c(this,i,N)).select(["name","timestamp"]).execute():[];return(await u(this,i,Y).call(this)).map(({name:r,...o})=>{const n=e.find(s=>s.name===r);return{name:r,migration:o,executedAt:n?new Date(n.timestamp):void 0}})}async migrateToLatest(){return u(this,i,A).call(this,()=>({direction:"Up",step:1/0}))}async migrateTo(e){return u(this,i,A).call(this,({migrations:a,executedMigrations:r,pendingMigrations:o})=>{if(e===Fa)return{direction:"Down",step:1/0};if(!a.find(l=>l.name===e))throw new Error(`migration "${e}" doesn't exist`);const n=r.indexOf(e),s=o.findIndex(l=>l.name===e);if(n!==-1)return{direction:"Down",step:r.length-n-1};if(s!==-1)return{direction:"Up",step:s+1};throw new Error(`migration "${e}" isn't executed or pending`)})}async migrateUp(){return u(this,i,A).call(this,()=>({direction:"Up",step:1}))}async migrateDown(){return u(this,i,A).call(this,()=>({direction:"Down",step:1}))}}h=new WeakMap,i=new WeakSet,A=async function(e){try{return await u(this,i,be).call(this),await u(this,i,ke).call(this,e)}catch(a){return a instanceof V?a.resultSet:{error:a}}},v=function(){return c(this,h).migrationTableSchema},N=function(){return c(this,h).migrationTableName??ja},I=function(){return c(this,h).migrationLockTableName??_e},Ce=function(){return c(this,h).allowUnorderedMigrations??Ma},C=function(){return c(this,i,v)?new Ia(c(this,i,v)):new Pa},be=async function(){await u(this,i,xe).call(this),await u(this,i,Te).call(this),await u(this,i,Se).call(this),await u(this,i,Oe).call(this)},xe=async function(){if(c(this,i,v)&&!await u(this,i,H).call(this))try{await u(this,i,L).call(this,c(this,h).db.schema.createSchema(c(this,i,v)))}catch(e){if(!await u(this,i,H).call(this))throw e}},Te=async function(){if(!await u(this,i,P).call(this,c(this,i,N)))try{c(this,i,v)&&await u(this,i,L).call(this,c(this,h).db.schema.createSchema(c(this,i,v))),await u(this,i,L).call(this,c(this,h).db.schema.withPlugin(c(this,i,C)).createTable(c(this,i,N)).addColumn("name","varchar(255)",e=>e.notNull().primaryKey()).addColumn("timestamp","varchar(255)",e=>e.notNull()))}catch(e){if(!await u(this,i,P).call(this,c(this,i,N)))throw e}},Se=async function(){if(!await u(this,i,P).call(this,c(this,i,I)))try{await u(this,i,L).call(this,c(this,h).db.schema.withPlugin(c(this,i,C)).createTable(c(this,i,I)).addColumn("id","varchar(255)",e=>e.notNull().primaryKey()).addColumn("is_locked","integer",e=>e.notNull().defaultTo(0)))}catch(e){if(!await u(this,i,P).call(this,c(this,i,I)))throw e}},Oe=async function(){if(!await u(this,i,X).call(this))try{await c(this,h).db.withPlugin(c(this,i,C)).insertInto(c(this,i,I)).values({id:Q,is_locked:0}).execute()}catch(e){if(!await u(this,i,X).call(this))throw e}},H=async function(){return(await c(this,h).db.introspection.getSchemas()).some(a=>a.name===c(this,i,v))},P=async function(e){const a=c(this,i,v);return(await c(this,h).db.introspection.getTables({withInternalKyselyTables:!0})).some(o=>o.name===e&&(!a||o.schema===a))},X=async function(){return!!await c(this,h).db.withPlugin(c(this,i,C)).selectFrom(c(this,i,I)).where("id","=",Q).select("id").executeTakeFirst()},ke=async function(e){const a=c(this,h).db.getExecutor().adapter,r=p({lockTable:c(this,h).migrationLockTableName??_e,lockRowId:Q,lockTableSchema:c(this,h).migrationTableSchema}),o=async n=>{try{await a.acquireMigrationLock(n,r);const s=await u(this,i,$e).call(this,n);if(s.migrations.length===0)return{results:[]};const{direction:l,step:d}=e(s);return d<=0?{results:[]}:l==="Down"?await u(this,i,Me).call(this,n,s,d):l==="Up"?await u(this,i,Fe).call(this,n,s,d):{results:[]}}finally{await a.releaseMigrationLock(n,r)}};return a.supportsTransactionalDdl?c(this,h).db.transaction().execute(o):c(this,h).db.connection().execute(o)},$e=async function(e){const a=await u(this,i,Y).call(this),r=await u(this,i,Ie).call(this,e);u(this,i,Pe).call(this,a,r),c(this,i,Ce)||u(this,i,je).call(this,a,r);const o=u(this,i,De).call(this,a,r);return p({migrations:a,executedMigrations:r,lastMigration:Sa(r),pendingMigrations:o})},De=function(e,a){return e.filter(r=>!a.includes(r.name))},Y=async function(){const e=await c(this,h).provider.getMigrations();return Object.keys(e).sort().map(a=>({...e[a],name:a}))},Ie=async function(e){return(await e.withPlugin(c(this,i,C)).selectFrom(c(this,i,N)).select("name").orderBy(["timestamp","name"]).execute()).map(r=>r.name)},Pe=function(e,a){for(const r of a)if(!e.some(o=>o.name===r))throw new Error(`corrupted migrations: previously executed migration ${r} is missing`)},je=function(e,a){for(let r=0;r<a.length;++r)if(e[r].name!==a[r])throw new Error(`corrupted migrations: expected previously executed migration ${a[r]} to be at index ${r} but ${e[r].name} was found in its place. New migrations must always have a name that comes alphabetically after the last executed migration.`)},Me=async function(e,a,r){const o=a.executedMigrations.slice().reverse().slice(0,r).map(s=>a.migrations.find(l=>l.name===s)),n=o.map(s=>({migrationName:s.name,direction:"Down",status:"NotExecuted"}));for(let s=0;s<n.length;++s){const l=o[s];try{l.down&&(await l.down(e),await e.withPlugin(c(this,i,C)).deleteFrom(c(this,i,N)).where("name","=",l.name).execute(),n[s]={migrationName:l.name,direction:"Down",status:"Success"})}catch(d){throw n[s]={migrationName:l.name,direction:"Down",status:"Error"},new V({error:d,results:n})}}return{results:n}},Fe=async function(e,a,r){const n=a.pendingMigrations.slice(0,r).map(s=>({migrationName:s.name,direction:"Up",status:"NotExecuted"}));for(let s=0;s<n.length;s++){const l=a.pendingMigrations[s];try{await l.up(e),await e.withPlugin(c(this,i,C)).insertInto(c(this,i,N)).values({name:l.name,timestamp:new Date().toISOString()}).execute(),n[s]={migrationName:l.name,direction:"Up",status:"Success"}}catch(d){throw n[s]={migrationName:l.name,direction:"Up",status:"Error"},new V({error:d,results:n})}}return{results:n}},L=async function(e){c(this,h).db.getExecutor().adapter.supportsCreateIfNotExists&&(e=e.ifNotExists()),await e.execute()};var E;class V extends Error{constructor(a){super();y(this,E);F(this,E,a)}get resultSet(){return c(this,E)}}E=new WeakMap;class Ae{constructor(e){M(this,"migrations");this.migrations=e}async getMigrations(){return this.migrations}}async function Aa(t){await t.schema.createTable("tenants").addColumn("id","varchar(255)",e=>e.primaryKey()).addColumn("name","varchar(255)").addColumn("audience","varchar(255)").addColumn("sender_email","varchar(255)").addColumn("sender_name","varchar(255)").addColumn("language","varchar(255)").addColumn("logo","varchar(255)").addColumn("primary_color","varchar(255)").addColumn("secondary_color","varchar(255)").addColumn("created_at","varchar(255)",e=>e.notNull()).addColumn("updated_at","varchar(255)",e=>e.notNull()).execute(),await t.schema.createTable("users").addColumn("user_id","varchar(255)",e=>e.notNull()).addColumn("tenant_id","varchar(255)",e=>e.references("tenants.id").onDelete("cascade").notNull()).addColumn("email","varchar(255)",e=>e.notNull()).addColumn("given_name","varchar(255)").addColumn("family_name","varchar(255)").addColumn("nickname","varchar(255)").addColumn("name","varchar(255)").addColumn("picture","varchar(2083)").addColumn("tags","varchar(255)").addColumn("created_at","varchar(255)",e=>e.notNull()).addColumn("updated_at","varchar(255)",e=>e.notNull()).addPrimaryKeyConstraint("users_tenants",["user_id","tenant_id"]).addColumn("linked_to","varchar(255)").addForeignKeyConstraint("linked_to_constraint",["linked_to","tenant_id"],"users",["user_id","tenant_id"]).addColumn("last_ip","varchar(255)").addColumn("login_count","integer",e=>e.notNull()).addColumn("last_login","varchar(255)").addColumn("provider","varchar(255)",e=>e.notNull()).addColumn("connection","varchar(255)").addColumn("email_verified","boolean",e=>e.notNull()).addColumn("is_social","boolean",e=>e.notNull()).addColumn("app_metadata","varchar(4096)",e=>e.defaultTo("{}").notNull()).addColumn("user_metadata","varchar(4096)",e=>e.defaultTo("{}").notNull()).addUniqueConstraint("unique_email_provider",["email","provider","tenant_id"]).execute(),await t.schema.createTable("members").addColumn("id","varchar(255)",e=>e.notNull().primaryKey()).addColumn("tenant_id","varchar(255)",e=>e.references("tenants.id").onDelete("cascade").notNull()).addColumn("sub","varchar(255)").addColumn("email","varchar(255)").addColumn("name","varchar(255)").addColumn("status","varchar(255)").addColumn("role","varchar(255)").addColumn("picture","varchar(2083)").addColumn("created_at","varchar(255)",e=>e.notNull()).addColumn("updated_at","varchar(255)",e=>e.notNull()).execute(),await t.schema.createTable("applications").addColumn("id","varchar(255)",e=>e.notNull().primaryKey()).addColumn("tenant_id","varchar(255)",e=>e.references("tenants.id").onDelete("cascade").notNull()).addColumn("name","varchar(255)",e=>e.notNull()).addColumn("client_secret","varchar(255)").addColumn("allowed_logout_urls","varchar(255)").addColumn("authentication_settings","varchar(255)").addColumn("addons","varchar(4096)",e=>e.notNull().defaultTo("{}")).addColumn("callbacks","varchar(1024)",e=>e.notNull().defaultTo("[]")).addColumn("allowed_origins","varchar(1024)",e=>e.notNull().defaultTo("[]")).addColumn("web_origins","varchar(1024)",e=>e.notNull().defaultTo("[]")).addColumn("allowed_clients","varchar(1024)",e=>e.defaultTo("[]").notNull()).addColumn("options_kid","varchar(32)").addColumn("options_team_id","varchar(32)").addColumn("options_client_id","varchar(128)").addColumn("options_client_secret","varchar(255)").addColumn("options_scope","varchar(255)").addColumn("options_realms","varchar(255)").addColumn("options_app_secret","varchar(1024)").addColumn("email_validation","varchar(255)").addColumn("disable_sign_ups","boolean",e=>e.notNull()).addColumn("created_at","varchar(255)",e=>e.notNull()).addColumn("updated_at","varchar(255)",e=>e.notNull()).execute(),await t.schema.createTable("connections").addColumn("id","varchar(255)",e=>e.notNull().primaryKey()).addColumn("tenant_id","varchar(255)",e=>e.references("tenants.id").onDelete("cascade").notNull()).addColumn("name","varchar(255)",e=>e.notNull()).addColumn("response_type","varchar(255)").addColumn("response_mode","varchar(255)").addColumn("strategy","varchar(64)").addColumn("options","varchar(2048)",e=>e.defaultTo("{}").notNull()).addColumn("created_at","varchar(255)",e=>e.notNull()).addColumn("updated_at","varchar(255)",e=>e.notNull()).execute(),await t.schema.createTable("migrations").addColumn("id","varchar(255)",e=>e.notNull().primaryKey()).addColumn("tenant_id","varchar(255)",e=>e.references("tenants.id").onDelete("cascade").notNull()).addColumn("provider","varchar(255)").addColumn("client_id","varchar(255)").addColumn("origin","varchar(255)").addColumn("domain","varchar(255)").addColumn("created_at","varchar(255)",e=>e.notNull()).addColumn("updated_at","varchar(255)",e=>e.notNull()).execute(),await t.schema.createTable("domains").addColumn("id","varchar(255)",e=>e.notNull().primaryKey()).addColumn("tenant_id","varchar(255)",e=>e.references("tenants.id").onDelete("cascade").notNull()).addColumn("domain","varchar(255)",e=>e.notNull()).addColumn("email_service","varchar(255)").addColumn("email_api_key","varchar(255)").addColumn("dkim_private_key","varchar(2048)").addColumn("dkim_public_key","varchar(2048)").addColumn("created_at","varchar(255)",e=>e.notNull()).addColumn("updated_at","varchar(255)",e=>e.notNull()).execute()}async function La(t){await t.schema.dropTable("domains").execute(),await t.schema.dropTable("members").execute(),await t.schema.dropTable("users").execute(),await t.schema.dropTable("connections").execute(),await t.schema.dropTable("applications").execute(),await t.schema.dropTable("migrations").execute(),await t.schema.dropTable("tenants").execute()}const za=Object.freeze(Object.defineProperty({__proto__:null,down:La,up:Aa},Symbol.toStringTag,{value:"Module"}));async function Ea(t){await t.schema.alterTable("tenants").addColumn("support_url","varchar(255)").execute()}async function Ja(t){await t.schema.alterTable("tenants").dropColumn("support_url").execute()}const Ka=Object.freeze(Object.defineProperty({__proto__:null,down:Ja,up:Ea},Symbol.toStringTag,{value:"Module"}));async function Ra(t){}async function Ua(t){}const Ba=Object.freeze(Object.defineProperty({__proto__:null,down:Ua,up:Ra},Symbol.toStringTag,{value:"Module"}));async function Qa(t){await t.schema.createTable("logs").addColumn("id","varchar(255)",e=>e.notNull().primaryKey()).addColumn("category","varchar(255)",e=>e.notNull()).addColumn("tenant_id","varchar(64)").addColumn("user_id","varchar(64)").addForeignKeyConstraint("tenant_id_constraint",["tenant_id"],"tenants",["id"],e=>e.onDelete("cascade")).addColumn("ip","varchar(255)").addColumn("type","varchar(8)",e=>e.notNull()).addColumn("date","varchar(25)",e=>e.notNull()).addColumn("client_id","varchar(255)").addColumn("client_name","varchar(255)").addColumn("user_agent","varchar(255)").addColumn("description","varchar(255)").addColumn("details","varchar(2048)").execute()}async function Va(t){await t.schema.dropTable("logs").execute()}const Wa=Object.freeze(Object.defineProperty({__proto__:null,down:Va,up:Qa},Symbol.toStringTag,{value:"Module"}));async function qa(t){}async function Ga(t){}const Ha=Object.freeze(Object.defineProperty({__proto__:null,down:Ga,up:qa},Symbol.toStringTag,{value:"Module"}));async function Xa(t){await t.schema.createTable("sessions").addColumn("id","varchar(21)",e=>e.primaryKey()).addColumn("tenant_id","varchar(255)").addColumn("user_id","varchar(255)").addForeignKeyConstraint("user_id_constraint",["user_id","tenant_id"],"users",["user_id","tenant_id"],e=>e.onDelete("cascade")).addColumn("created_at","varchar(35)",e=>e.notNull()).addColumn("updated_at","varchar(35)",e=>e.notNull()).addColumn("expires_at","varchar(35)").addColumn("idle_expires_at","varchar(35)").addColumn("authenticated_at","varchar(35)").addColumn("last_interaction_at","varchar(35)").addColumn("used_at","varchar(35)").addColumn("revoked_at","varchar(35)").addColumn("device","varchar(2048)",e=>e.notNull()).addColumn("clients","varchar(1024)",e=>e.notNull()).execute(),await t.schema.createTable("tickets").addColumn("tenant_id","varchar(255)",e=>e.references("tenants.id").onDelete("cascade").notNull()).addColumn("id","varchar(255)",e=>e.primaryKey()).addColumn("client_id","varchar(255)",e=>e.references("applications.id").onDelete("cascade").notNull()).addColumn("email","varchar(255)",e=>e.notNull()).addColumn("nonce","varchar(255)").addColumn("state","varchar(1024)").addColumn("scope","varchar(1024)").addColumn("response_type","varchar(256)").addColumn("response_mode","varchar(256)").addColumn("redirect_uri","varchar(1024)").addColumn("created_at","varchar(255)",e=>e.notNull()).addColumn("expires_at","varchar(255)",e=>e.notNull()).addColumn("used_at","varchar(255)").execute(),await t.schema.createTable("otps").addColumn("tenant_id","varchar(255)",e=>e.references("tenants.id").onDelete("cascade").notNull()).addColumn("id","varchar(255)",e=>e.primaryKey()).addColumn("client_id","varchar(255)",e=>e.references("applications.id").onDelete("cascade").notNull()).addColumn("code","varchar(255)",e=>e.notNull()).addColumn("email","varchar(255)",e=>e.notNull()).addColumn("user_id","varchar(255)").addColumn("send","varchar(255)").addColumn("nonce","varchar(255)").addColumn("state","varchar(1024)").addColumn("scope","varchar(1024)").addColumn("response_type","varchar(256)").addColumn("response_mode","varchar(256)").addColumn("redirect_uri","varchar(1024)").addColumn("created_at","varchar(255)",e=>e.notNull()).addColumn("expires_at","varchar(255)",e=>e.notNull()).addColumn("used_at","varchar(255)").execute(),await t.schema.createIndex("otps_email_index").on("otps").column("email").execute(),await t.schema.createIndex("otps_expires_at_index").on("otps").column("expires_at").execute()}async function Ya(t){await t.schema.dropTable("sessions").execute(),await t.schema.dropTable("tickets").execute(),await t.schema.dropTable("otps").execute()}const Za=Object.freeze(Object.defineProperty({__proto__:null,down:Ya,up:Xa},Symbol.toStringTag,{value:"Module"}));async function er(t){await t.schema.createTable("passwords").addColumn("tenant_id","varchar(255)").addColumn("user_id","varchar(255)").addPrimaryKeyConstraint("passwords_pkey",["user_id","tenant_id"]).addForeignKeyConstraint("user_id_constraint",["user_id","tenant_id"],"users",["user_id","tenant_id"],e=>e.onDelete("cascade")).addColumn("created_at","varchar(255)").addColumn("updated_at","varchar(255)").execute(),await t.schema.createTable("codes").addColumn("id","varchar(255)",e=>e.primaryKey()).addColumn("user_id","varchar(255)").addColumn("tenant_id","varchar(255)").addForeignKeyConstraint("user_id_constraint",["user_id","tenant_id"],"users",["user_id","tenant_id"],e=>e.onDelete("cascade")).addColumn("type","varchar(255)",e=>e.notNull()).addColumn("created_at","varchar(255)",e=>e.notNull()).addColumn("expires_at","varchar(255)",e=>e.notNull()).addColumn("used_at","varchar(255)").execute(),await t.schema.createIndex("codes_expires_at_index").on("codes").column("expires_at").execute()}async function tr(t){await t.schema.dropTable("passwords").execute(),await t.schema.dropTable("codes").execute()}const ar=Object.freeze(Object.defineProperty({__proto__:null,down:tr,up:er},Symbol.toStringTag,{value:"Module"}));async function rr(t){}async function nr(t){}const or=Object.freeze(Object.defineProperty({__proto__:null,down:nr,up:rr},Symbol.toStringTag,{value:"Module"}));async function sr(t){await t.schema.alterTable("passwords").addColumn("password","varchar(255)",e=>e.notNull()).execute()}async function ir(t){await t.schema.alterTable("passwords").dropColumn("password").execute()}const dr=Object.freeze(Object.defineProperty({__proto__:null,down:ir,up:sr},Symbol.toStringTag,{value:"Module"}));async function cr(t){}async function lr(t){}const ur=Object.freeze(Object.defineProperty({__proto__:null,down:lr,up:cr},Symbol.toStringTag,{value:"Module"}));async function mr(t){}async function hr(t){}const _r=Object.freeze(Object.defineProperty({__proto__:null,down:hr,up:mr},Symbol.toStringTag,{value:"Module"}));async function fr(t){}async function pr(t){}const gr=Object.freeze(Object.defineProperty({__proto__:null,down:pr,up:fr},Symbol.toStringTag,{value:"Module"}));async function yr(t){await t.schema.createIndex("users_email_index").on("users").column("email").execute()}async function wr(t){await t.schema.dropIndex("users_email_index").execute()}const vr=Object.freeze(Object.defineProperty({__proto__:null,down:wr,up:yr},Symbol.toStringTag,{value:"Module"}));async function Nr(t){await t.schema.alterTable("users").addColumn("profileData","varchar(2048)").execute()}async function Cr(t){await t.schema.alterTable("users").dropColumn("profileData").execute()}const br=Object.freeze(Object.defineProperty({__proto__:null,down:Cr,up:Nr},Symbol.toStringTag,{value:"Module"}));async function xr(t){await t.schema.createIndex("users_linked_to_index").on("users").column("linked_to").execute()}async function Tr(t){await t.schema.dropIndex("users_linked_to_index")}const Sr=Object.freeze(Object.defineProperty({__proto__:null,down:Tr,up:xr},Symbol.toStringTag,{value:"Module"}));async function Or(t){await t.schema.alterTable("users").addColumn("locale","varchar(255)").execute()}async function kr(t){await t.schema.alterTable("users").dropColumn("locale").execute()}const $r=Object.freeze(Object.defineProperty({__proto__:null,down:kr,up:Or},Symbol.toStringTag,{value:"Module"}));async function Dr(t){await t.schema.createTable("keys").addColumn("kid","varchar(255)",e=>e.primaryKey()).addColumn("tenant_id","varchar(255)",e=>e.references("tenants.id").onDelete("cascade")).addColumn("created_at","varchar(255)",e=>e.notNull()).addColumn("revoked_at","varchar(255)").addColumn("cert","varchar(2048)").addColumn("pkcs7","varchar(2048)").addColumn("fingerprint","varchar(256)").addColumn("thumbprint","varchar(256)").addColumn("current_since","varchar(256)").addColumn("current_until","varchar(256)").execute()}async function Ir(t){await t.schema.dropTable("keys").execute()}const Pr=Object.freeze(Object.defineProperty({__proto__:null,down:Ir,up:Dr},Symbol.toStringTag,{value:"Module"}));async function jr(t){}async function Mr(t){}const Fr=Object.freeze(Object.defineProperty({__proto__:null,down:Mr,up:jr},Symbol.toStringTag,{value:"Module"}));async function Ar(t){}async function Lr(t){}const zr=Object.freeze(Object.defineProperty({__proto__:null,down:Lr,up:Ar},Symbol.toStringTag,{value:"Module"}));async function Er(t){await t.schema.alterTable("otps").addColumn("audience","varchar(255)").execute()}async function Jr(t){await t.schema.alterTable("otps").dropColumn("audience").execute()}const Kr=Object.freeze(Object.defineProperty({__proto__:null,down:Jr,up:Er},Symbol.toStringTag,{value:"Module"}));async function Rr(t){}async function Ur(t){}const Br=Object.freeze(Object.defineProperty({__proto__:null,down:Ur,up:Rr},Symbol.toStringTag,{value:"Module"}));async function Qr(t){await t.schema.alterTable("logs").dropColumn("category").execute()}async function Vr(t){await t.schema.alterTable("logs").addColumn("category","varchar(255)",e=>e.notNull()).execute()}const Wr=Object.freeze(Object.defineProperty({__proto__:null,down:Vr,up:Qr},Symbol.toStringTag,{value:"Module"}));async function qr(t){await t.schema.alterTable("users").dropColumn("tags").execute()}async function Gr(t){await t.schema.alterTable("users").addColumn("tags","varchar(255)").execute()}const Hr=Object.freeze(Object.defineProperty({__proto__:null,down:Gr,up:qr},Symbol.toStringTag,{value:"Module"}));async function Xr(t){await t.schema.createIndex("logs_user_id").on("logs").column("user_id").execute(),await t.schema.createIndex("logs_tenant_id").on("logs").column("tenant_id").execute(),await t.schema.createIndex("logs_date").on("logs").column("date").execute()}async function Yr(t){await t.schema.dropIndex("logs_user_id"),await t.schema.dropIndex("logs_tenant_id"),await t.schema.dropIndex("logs_date")}const Zr=Object.freeze(Object.defineProperty({__proto__:null,down:Yr,up:Xr},Symbol.toStringTag,{value:"Module"}));async function en(t){await t.schema.alterTable("logs").dropColumn("details").execute(),await t.schema.alterTable("logs").addColumn("details","varchar(8192)").execute()}async function tn(t){await t.schema.alterTable("logs").dropColumn("details").execute(),await t.schema.alterTable("logs").addColumn("details","varchar(2048)").execute()}const an=Object.freeze(Object.defineProperty({__proto__:null,down:tn,up:en},Symbol.toStringTag,{value:"Module"}));async function rn(t){await t.schema.alterTable("logs").addColumn("user_name","varchar(255)").execute(),await t.schema.alterTable("logs").addColumn("auth0_client","varchar(255)").execute(),await t.schema.alterTable("logs").addColumn("isMobile","boolean").execute(),await t.schema.alterTable("logs").addColumn("connection","varchar(255)").execute(),await t.schema.alterTable("logs").addColumn("connection_id","varchar(255)").execute(),await t.schema.alterTable("logs").addColumn("audience","varchar(255)").execute(),await t.schema.alterTable("logs").addColumn("scope","varchar(255)").execute(),await t.schema.alterTable("logs").addColumn("strategy","varchar(255)").execute(),await t.schema.alterTable("logs").addColumn("strategy_type","varchar(255)").execute(),await t.schema.alterTable("logs").addColumn("hostname","varchar(255)").execute(),await t.schema.alterTable("logs").addColumn("session_connection","varchar(255)").execute()}async function nn(t){await t.schema.alterTable("logs").dropColumn("user_name").execute(),await t.schema.alterTable("logs").dropColumn("auth0_client").execute(),await t.schema.alterTable("logs").dropColumn("isMobile").execute(),await t.schema.alterTable("logs").dropColumn("connection").execute(),await t.schema.alterTable("logs").dropColumn("connection_id").execute(),await t.schema.alterTable("logs").dropColumn("audience").execute(),await t.schema.alterTable("logs").dropColumn("scope").execute(),await t.schema.alterTable("logs").dropColumn("strategy").execute(),await t.schema.alterTable("logs").dropColumn("strategy_type").execute(),await t.schema.alterTable("logs").dropColumn("hostname").execute(),await t.schema.alterTable("logs").dropColumn("session_connection").execute()}const on=Object.freeze(Object.defineProperty({__proto__:null,down:nn,up:rn},Symbol.toStringTag,{value:"Module"}));async function sn(t){await t.schema.createIndex("users_name_index").on("users").column("name").execute()}async function dn(t){await t.schema.dropIndex("users_name_index").execute()}const cn=Object.freeze(Object.defineProperty({__proto__:null,down:dn,up:sn},Symbol.toStringTag,{value:"Module"}));async function ln(t){}async function un(t){await t.schema.alterTable("users").dropConstraint("unique_email_provider").execute()}const mn=Object.freeze(Object.defineProperty({__proto__:null,down:un,up:ln},Symbol.toStringTag,{value:"Module"}));async function hn(t){await t.schema.alterTable("otps").dropColumn("state").execute(),await t.schema.alterTable("otps").addColumn("state","varchar(8192)").execute()}async function _n(t){await t.schema.alterTable("otps").dropColumn("state").execute(),await t.schema.alterTable("otps").addColumn("state","varchar(1024)").execute()}const fn=Object.freeze(Object.defineProperty({__proto__:null,down:_n,up:hn},Symbol.toStringTag,{value:"Module"}));async function pn(t){await t.schema.alterTable("tickets").dropColumn("state").execute(),await t.schema.alterTable("tickets").addColumn("state","varchar(8192)").execute()}async function gn(t){await t.schema.alterTable("tickets").dropColumn("state").execute(),await t.schema.alterTable("tickets").addColumn("state","varchar(1024)").execute()}const yn=Object.freeze(Object.defineProperty({__proto__:null,down:gn,up:pn},Symbol.toStringTag,{value:"Module"}));async function wn(t){await t.schema.createTable("branding").addColumn("tenant_id","varchar(255)",e=>e.references("tenants.id").onDelete("cascade").notNull().primaryKey()).addColumn("logo_url","varchar(512)").addColumn("favicon_url","varchar(512)").addColumn("font_url","varchar(512)").addColumn("colors_primary","varchar(8)").addColumn("colors_page_background_type","varchar(32)").addColumn("colors_page_background_start","varchar(8)").addColumn("colors_page_background_end","varchar(8)").addColumn("colors_page_background_angle_dev","integer").execute()}async function vn(t){await t.schema.dropTable("branding").execute()}const Nn=Object.freeze(Object.defineProperty({__proto__:null,down:vn,up:wn},Symbol.toStringTag,{value:"Module"}));async function Cn(t){}async function bn(t){}const xn=Object.freeze(Object.defineProperty({__proto__:null,down:bn,up:Cn},Symbol.toStringTag,{value:"Module"}));async function Tn(t){}async function Sn(t){}const On=Object.freeze(Object.defineProperty({__proto__:null,down:Sn,up:Tn},Symbol.toStringTag,{value:"Module"}));async function kn(t){}async function $n(t){}const Dn=Object.freeze(Object.defineProperty({__proto__:null,down:$n,up:kn},Symbol.toStringTag,{value:"Module"}));async function In(t){}async function Pn(t){}const jn=Object.freeze(Object.defineProperty({__proto__:null,down:Pn,up:In},Symbol.toStringTag,{value:"Module"}));async function Mn(t){await t.schema.createTable("authentication_codes").addColumn("tenant_id","varchar(255)",e=>e.references("tenants.id").onDelete("cascade").notNull()).addColumn("code","varchar(255)",e=>e.primaryKey()).addColumn("client_id","varchar(255)",e=>e.references("applications.id").onDelete("cascade").notNull()).addColumn("user_id","varchar(255)",e=>e.notNull()).addColumn("nonce","varchar(255)").addColumn("state","varchar(8192)").addColumn("scope","varchar(1024)").addColumn("response_type","varchar(256)").addColumn("response_mode","varchar(256)").addColumn("redirect_uri","varchar(1024)").addColumn("created_at","varchar(255)",e=>e.notNull()).addColumn("expires_at","varchar(255)",e=>e.notNull()).addColumn("used_at","varchar(255)").execute()}async function Fn(t){await t.schema.dropTable("authentication_codes").execute()}const An=Object.freeze(Object.defineProperty({__proto__:null,down:Fn,up:Mn},Symbol.toStringTag,{value:"Module"}));async function Ln(t){}async function zn(t){}const En=Object.freeze(Object.defineProperty({__proto__:null,down:zn,up:Ln},Symbol.toStringTag,{value:"Module"}));async function Jn(t){await t.schema.alterTable("otps").addColumn("ip","varchar(64)").execute()}async function Kn(t){await t.schema.alterTable("otps").dropColumn("ip").execute()}const Rn=Object.freeze(Object.defineProperty({__proto__:null,down:Kn,up:Jn},Symbol.toStringTag,{value:"Module"}));async function Un(t){await t.schema.alterTable("logs").dropColumn("user_agent").execute(),await t.schema.alterTable("logs").addColumn("user_agent","varchar(1024)").execute()}async function Bn(t){await t.schema.alterTable("logs").dropColumn("user_agent").execute(),await t.schema.alterTable("logs").addColumn("user_agent","varchar(255)").execute()}const Qn=Object.freeze(Object.defineProperty({__proto__:null,down:Bn,up:Un},Symbol.toStringTag,{value:"Module"}));async function Vn(t){}async function Wn(t){}const qn=Object.freeze(Object.defineProperty({__proto__:null,down:Wn,up:Vn},Symbol.toStringTag,{value:"Module"}));async function Gn(t){await t.schema.createTable("hooks").addColumn("hook_id","varchar(255)",e=>e.notNull().primaryKey()).addColumn("tenant_id","varchar(255)",e=>e.references("tenants.id").onDelete("cascade").notNull()).addColumn("url","varchar(512)",e=>e.notNull()).addColumn("trigger_id","varchar(255)",e=>e.notNull()).addColumn("enabled","boolean",e=>e.notNull()).addColumn("created_at","varchar(255)",e=>e.notNull()).addColumn("updated_at","varchar(255)",e=>e.notNull()).addColumn("synchronous","boolean",e=>e.defaultTo(!1).notNull()).addColumn("priority","integer").execute()}async function Hn(t){await t.schema.dropTable("hooks").execute()}const Xn=Object.freeze(Object.defineProperty({__proto__:null,down:Hn,up:Gn},Symbol.toStringTag,{value:"Module"}));async function Yn(t){}async function Zn(t){}const eo=Object.freeze(Object.defineProperty({__proto__:null,down:Zn,up:Yn},Symbol.toStringTag,{value:"Module"}));async function to(t){}async function ao(t){}const ro=Object.freeze(Object.defineProperty({__proto__:null,down:ao,up:to},Symbol.toStringTag,{value:"Module"}));async function no(t){await t.schema.createTable("logins").addColumn("login_id","varchar(255)",e=>e.primaryKey()).addColumn("tenant_id","varchar(255)",e=>e.references("tenants.id").onDelete("cascade").notNull()).addColumn("authParams_client_id","varchar(255)",e=>e.notNull()).addColumn("authParams_vendor_id","varchar(255)").addColumn("authParams_username","varchar(255)").addColumn("authParams_response_type","varchar(255)").addColumn("authParams_response_mode","varchar(255)").addColumn("authParams_audience","varchar(255)").addColumn("authParams_scope","varchar(511)").addColumn("authParams_state","varchar(511)").addColumn("authParams_code_challenge_method","varchar(256)").addColumn("authParams_code_challenge","varchar(256)").addColumn("authParams_redirect_uri","varchar(256)").addColumn("authParams_organization","varchar(256)").addColumn("authorization_url","varchar(1024)").addColumn("created_at","varchar(255)",e=>e.notNull()).addColumn("updated_at","varchar(255)",e=>e.notNull()).addColumn("expires_at","varchar(255)",e=>e.notNull()).addColumn("ip","varchar(255)").addColumn("useragent","varchar(512)").execute(),await t.schema.alterTable("passwords").addColumn("algorithm","varchar(16)").execute(),await t.schema.dropTable("codes").execute(),await t.schema.createTable("codes").addColumn("code_id","varchar(255)",e=>e.primaryKey()).addColumn("tenant_id","varchar(255)",e=>e.references("tenants.id").onDelete("cascade").notNull()).addColumn("user_id","varchar(255)").addColumn("login_id","varchar(255)").addForeignKeyConstraint("codes_user_id_tenant_id_constraint",["user_id","tenant_id"],"users",["user_id","tenant_id"],e=>e.onDelete("cascade")).addColumn("code_type","varchar(255)",e=>e.notNull()).addColumn("created_at","varchar(255)",e=>e.notNull()).addColumn("expires_at","varchar(255)",e=>e.notNull()).addColumn("used_at","varchar(255)").execute()}async function oo(t){await t.schema.dropTable("logins").execute(),await t.schema.alterTable("passwords").dropColumn("algorithm").execute(),await t.schema.dropTable("codes").execute(),await t.schema.createTable("codes").addColumn("id","varchar(255)",e=>e.primaryKey()).addColumn("code","varchar(255)",e=>e.notNull()).addColumn("user_id","varchar(255)").addColumn("tenant_id","varchar(255)").addForeignKeyConstraint("codes_user_id_tenant_id_constraint",["user_id","tenant_id"],"users",["user_id","tenant_id"],e=>e.onDelete("cascade")).addColumn("type","varchar(255)",e=>e.notNull()).addColumn("created_at","varchar(255)",e=>e.notNull()).addColumn("expires_at","varchar(255)",e=>e.notNull()).addColumn("used_at","varchar(255)").execute()}const so=Object.freeze(Object.defineProperty({__proto__:null,down:oo,up:no},Symbol.toStringTag,{value:"Module"}));async function io(t){}async function co(t){}const lo=Object.freeze(Object.defineProperty({__proto__:null,down:co,up:io},Symbol.toStringTag,{value:"Module"}));async function uo(t){await t.schema.alterTable("logins").addColumn("auth0Client","varchar(256)").execute()}async function mo(t){await t.schema.alterTable("logins").dropColumn("auth0Client").execute()}const ho=Object.freeze(Object.defineProperty({__proto__:null,down:mo,up:uo},Symbol.toStringTag,{value:"Module"}));async function _o(t){await t.schema.alterTable("logins").dropColumn("authParams_state").execute(),await t.schema.alterTable("logins").addColumn("authParams_state","varchar(8192)").execute()}async function fo(t){await t.schema.alterTable("logins").dropColumn("authParams_state").execute(),await t.schema.alterTable("logins").addColumn("authParams_state","varchar(511)").execute()}const po=Object.freeze(Object.defineProperty({__proto__:null,down:fo,up:_o},Symbol.toStringTag,{value:"Module"}));async function go(t){}async function yo(t){}const wo=Object.freeze(Object.defineProperty({__proto__:null,down:yo,up:go},Symbol.toStringTag,{value:"Module"}));async function vo(t){}async function No(t){}const Co=Object.freeze(Object.defineProperty({__proto__:null,down:No,up:vo},Symbol.toStringTag,{value:"Module"}));async function bo(t){await t.schema.alterTable("logins").addColumn("authParams_nonce","varchar(255)").execute()}async function xo(t){await t.schema.alterTable("logins").dropColumn("nonce").execute()}const To=Object.freeze(Object.defineProperty({__proto__:null,down:xo,up:bo},Symbol.toStringTag,{value:"Module"}));async function So(t){}async function Oo(t){}const ko=Object.freeze(Object.defineProperty({__proto__:null,down:Oo,up:So},Symbol.toStringTag,{value:"Module"}));async function $o(t){}async function Do(t){}const Io=Object.freeze(Object.defineProperty({__proto__:null,down:Do,up:$o},Symbol.toStringTag,{value:"Module"}));async function Po(t){await t.schema.dropTable("codes").execute(),await t.schema.createTable("codes").addColumn("code_id","varchar(255)",e=>e.notNull()).addColumn("tenant_id","varchar(255)",e=>e.references("tenants.id").onDelete("cascade").notNull()).addColumn("user_id","varchar(255)").addColumn("login_id","varchar(255)").addColumn("connection_id","varchar(255)").addForeignKeyConstraint("codes_user_id_tenant_id_constraint",["user_id","tenant_id"],"users",["user_id","tenant_id"],e=>e.onDelete("cascade")).addColumn("code_type","varchar(255)",e=>e.notNull()).addColumn("created_at","varchar(255)",e=>e.notNull()).addColumn("expires_at","varchar(255)",e=>e.notNull()).addColumn("used_at","varchar(255)").addPrimaryKeyConstraint("PK_codes_code_id_code_type",["code_id","code_type"]).execute()}async function jo(t){await t.schema.dropTable("codes").execute(),await t.schema.createTable("codes").addColumn("code_id","varchar(255)",e=>e.primaryKey()).addColumn("tenant_id","varchar(255)",e=>e.references("tenants.id").onDelete("cascade").notNull()).addColumn("user_id","varchar(255)").addColumn("connection_id","varchar(255)").addColumn("login_id","varchar(255)").addForeignKeyConstraint("codes_user_id_tenant_id_constraint",["user_id","tenant_id"],"users",["user_id","tenant_id"],e=>e.onDelete("cascade")).addColumn("code_type","varchar(255)",e=>e.notNull()).addColumn("created_at","varchar(255)",e=>e.notNull()).addColumn("expires_at","varchar(255)",e=>e.notNull()).addColumn("used_at","varchar(255)").execute()}const Mo=Object.freeze(Object.defineProperty({__proto__:null,down:jo,up:Po},Symbol.toStringTag,{value:"Module"}));async function Fo(t){await t.schema.dropTable("otps").execute(),await t.schema.dropTable("authentication_codes").execute()}async function Ao(t){await t.schema.alterTable("keys").addColumn("private_key","varchar(2048)").addColumn("public_key","varchar(2048)").execute(),await t.schema.createTable("otps").addColumn("tenant_id","varchar(255)",e=>e.references("tenants.id").onDelete("cascade").notNull()).addColumn("id","varchar(255)",e=>e.primaryKey()).addColumn("client_id","varchar(255)",e=>e.references("applications.id").onDelete("cascade").notNull()).addColumn("code","varchar(255)",e=>e.notNull()).addColumn("email","varchar(255)",e=>e.notNull()).addColumn("user_id","varchar(255)").addColumn("send","varchar(255)").addColumn("nonce","varchar(255)").addColumn("state","varchar(1024)").addColumn("scope","varchar(1024)").addColumn("response_type","varchar(256)").addColumn("response_mode","varchar(256)").addColumn("redirect_uri","varchar(1024)").addColumn("created_at","varchar(255)",e=>e.notNull()).addColumn("expires_at","varchar(255)",e=>e.notNull()).addColumn("used_at","varchar(255)").execute(),await t.schema.createTable("authentication_codes").addColumn("tenant_id","varchar(255)",e=>e.references("tenants.id").onDelete("cascade").notNull()).addColumn("code","varchar(255)",e=>e.primaryKey()).addColumn("client_id","varchar(255)",e=>e.references("applications.id").onDelete("cascade").notNull()).addColumn("user_id","varchar(255)",e=>e.notNull()).addColumn("nonce","varchar(255)").addColumn("state","varchar(8192)").addColumn("scope","varchar(1024)").addColumn("response_type","varchar(256)").addColumn("response_mode","varchar(256)").addColumn("redirect_uri","varchar(1024)").addColumn("created_at","varchar(255)",e=>e.notNull()).addColumn("expires_at","varchar(255)",e=>e.notNull()).addColumn("used_at","varchar(255)").execute()}const Lo=Object.freeze(Object.defineProperty({__proto__:null,down:Ao,up:Fo},Symbol.toStringTag,{value:"Module"}));async function zo(t){await t.schema.createIndex("IDX_logs_tenant_date_type_user").on("logs").columns(["tenant_id","date","type","user_id"]).execute()}async function Eo(t){await t.schema.dropIndex("IDX_logs_tenant_date_type_user").on("logs").execute()}const Jo=Object.freeze(Object.defineProperty({__proto__:null,down:Eo,up:zo},Symbol.toStringTag,{value:"Module"}));async function Ko(t){}async function Ro(t){}const Uo=Object.freeze(Object.defineProperty({__proto__:null,down:Ro,up:Ko},Symbol.toStringTag,{value:"Module"}));async function Bo(t){await t.schema.createTable("prompt_settings").addColumn("tenant_id","varchar(64)",e=>e.primaryKey()).addColumn("universal_login_experience","varchar(16)",e=>e.defaultTo("new").notNull()).addColumn("identifier_first","boolean",e=>e.defaultTo(!0).notNull()).addColumn("password_first","boolean",e=>e.defaultTo(!1).notNull()).addColumn("webauthn_platform_first_factor","boolean",e=>e.defaultTo(!1).notNull()).execute()}async function Qo(t){await t.schema.dropTable("prompt_settings").execute()}const Vo=Object.freeze(Object.defineProperty({__proto__:null,down:Qo,up:Bo},Symbol.toStringTag,{value:"Module"}));async function Wo(t){}async function qo(t){}const Go=Object.freeze(Object.defineProperty({__proto__:null,down:qo,up:Wo},Symbol.toStringTag,{value:"Module"}));async function Ho(t){}async function Xo(t){}const Yo=Object.freeze(Object.defineProperty({__proto__:null,down:Xo,up:Ho},Symbol.toStringTag,{value:"Module"}));async function Zo(t){}async function es(t){}const ts=Object.freeze(Object.defineProperty({__proto__:null,down:es,up:Zo},Symbol.toStringTag,{value:"Module"}));async function as(t){await t.schema.alterTable("logins").addColumn("authParams_ui_locales","varchar(32)").execute()}async function rs(t){await t.schema.alterTable("logins").dropColumn("authParams_ui_locales").execute()}const ns=Object.freeze(Object.defineProperty({__proto__:null,down:rs,up:as},Symbol.toStringTag,{value:"Module"}));async function os(t){await t.schema.alterTable("logins").addColumn("authParams_prompt","varchar(16)").execute()}async function ss(t){await t.schema.alterTable("logins").dropColumn("authParams_prompt").execute()}const is=Object.freeze(Object.defineProperty({__proto__:null,down:ss,up:os},Symbol.toStringTag,{value:"Module"}));async function ds(t){}async function cs(t){}const ls=Object.freeze(Object.defineProperty({__proto__:null,down:cs,up:ds},Symbol.toStringTag,{value:"Module"}));async function us(t){await t.schema.alterTable("logins").addColumn("authParams_act_as","varchar(255)").execute()}async function ms(t){await t.schema.alterTable("logins").dropColumn("authParam_act_as").execute()}const hs=Object.freeze(Object.defineProperty({__proto__:null,down:ms,up:us},Symbol.toStringTag,{value:"Module"}));async function _s(t){await t.schema.alterTable("codes").addColumn("code_verifier","varchar(128)").execute()}async function fs(t){await t.schema.alterTable("codes").dropColumn("code_verifier").execute()}const ps=Object.freeze(Object.defineProperty({__proto__:null,down:fs,up:_s},Symbol.toStringTag,{value:"Module"}));async function gs(t){await t.schema.createTable("email_providers").addColumn("tenant_id","varchar(255)",e=>e.primaryKey()).addColumn("name","varchar(255)",e=>e.notNull()).addColumn("enabled","boolean",e=>e.notNull()).addColumn("default_from_address","varchar(255)").addColumn("credentials","varchar(2048)",e=>e.notNull().defaultTo("{}")).addColumn("settings","varchar(2048)",e=>e.notNull().defaultTo("{}")).addColumn("created_at","varchar(29)",e=>e.notNull()).addColumn("updated_at","varchar(29)",e=>e.notNull()).execute()}async function ys(t){await t.schema.dropTable("email_providers").execute()}const ws=Object.freeze(Object.defineProperty({__proto__:null,down:ys,up:gs},Symbol.toStringTag,{value:"Module"}));async function vs(t){await t.schema.dropTable("tickets").execute()}async function Ns(t){await t.schema.createTable("tickets").addColumn("tenant_id","varchar(255)",e=>e.references("tenants.id").onDelete("cascade").notNull()).addColumn("id","varchar(255)",e=>e.primaryKey()).addColumn("client_id","varchar(255)",e=>e.references("applications.id").onDelete("cascade").notNull()).addColumn("email","varchar(255)",e=>e.notNull()).addColumn("nonce","varchar(255)").addColumn("state","varchar(1024)").addColumn("scope","varchar(1024)").addColumn("response_type","varchar(256)").addColumn("response_mode","varchar(256)").addColumn("redirect_uri","varchar(1024)").addColumn("created_at","varchar(255)",e=>e.notNull()).addColumn("expires_at","varchar(255)",e=>e.notNull()).addColumn("used_at","varchar(255)").execute()}const Cs=Object.freeze(Object.defineProperty({__proto__:null,down:Ns,up:vs},Symbol.toStringTag,{value:"Module"}));async function bs(t){}async function xs(t){await t.schema.alterTable("logins").dropColumn("ip").dropColumn("useragent").execute()}const Ts=Object.freeze(Object.defineProperty({__proto__:null,down:xs,up:bs},Symbol.toStringTag,{value:"Module"}));async function Ss(t){await t.schema.createTable("refresh_tokens").addColumn("id","varchar(21)",e=>e.primaryKey()).addColumn("client_id","varchar(21)",e=>e.references("applications.id").onDelete("cascade").notNull()).addColumn("tenant_id","varchar(255)").addColumn("session_id","varchar(21)",e=>e.notNull()).addColumn("user_id","varchar(255)").addForeignKeyConstraint("user_id_constraint",["user_id","tenant_id"],"users",["user_id","tenant_id"],e=>e.onDelete("cascade")).addColumn("created_at","varchar(35)",e=>e.notNull()).addColumn("expires_at","varchar(35)").addColumn("idle_expires_at","varchar(35)").addColumn("last_exchanged_at","varchar(35)").addColumn("device","varchar(2048)",e=>e.notNull()).addColumn("resource_servers","varchar(2048)",e=>e.notNull()).addColumn("rotating","boolean",e=>e.notNull()).execute()}async function Os(t){await t.schema.dropTable("refresh_tokens").execute()}const ks=Object.freeze(Object.defineProperty({__proto__:null,down:Os,up:Ss},Symbol.toStringTag,{value:"Module"}));async function $s(t){}async function Ds(t){}const Is=Object.freeze(Object.defineProperty({__proto__:null,down:Ds,up:$s},Symbol.toStringTag,{value:"Module"}));async function Ps(t){await t.schema.dropTable("sessions").execute(),await t.schema.dropTable("refresh_tokens").execute()}async function js(t){await t.schema.createTable("sessions").addColumn("id","varchar(21)",e=>e.primaryKey()).addColumn("tenant_id","varchar(255)").addColumn("user_id","varchar(255)").addForeignKeyConstraint("sessions_user_id_constraint",["user_id","tenant_id"],"users",["user_id","tenant_id"],e=>e.onDelete("cascade")).addColumn("created_at","varchar(35)",e=>e.notNull()).addColumn("updated_at","varchar(35)",e=>e.notNull()).addColumn("expires_at","varchar(35)").addColumn("idle_expires_at","varchar(35)").addColumn("authenticated_at","varchar(35)").addColumn("last_interaction_at","varchar(35)").addColumn("used_at","varchar(35)").addColumn("revoked_at","varchar(35)").addColumn("device","varchar(2048)",e=>e.notNull()).addColumn("clients","varchar(1024)",e=>e.notNull()).execute(),await t.schema.createTable("refresh_tokens").addColumn("id","varchar(21)",e=>e.primaryKey()).addColumn("client_id","varchar(21)",e=>e.references("applications.id").onDelete("cascade").notNull()).addColumn("tenant_id","varchar(255)").addColumn("session_id","varchar(21)",e=>e.notNull()).addColumn("user_id","varchar(255)").addForeignKeyConstraint("refresh_tokens_user_id_constraint",["user_id","tenant_id"],"users",["user_id","tenant_id"],e=>e.onDelete("cascade")).addColumn("created_at","varchar(35)",e=>e.notNull()).addColumn("expires_at","varchar(35)").addColumn("idle_expires_at","varchar(35)").addColumn("last_exchanged_at","varchar(35)").addColumn("device","varchar(2048)",e=>e.notNull()).addColumn("resource_servers","varchar(2048)",e=>e.notNull()).addColumn("rotating","boolean",e=>e.notNull()).execute()}const Ms=Object.freeze(Object.defineProperty({__proto__:null,down:js,up:Ps},Symbol.toStringTag,{value:"Module"}));async function Fs(t){await t.schema.createTable("sessions_2").addColumn("id","varchar(21)",e=>e.primaryKey()).addColumn("tenant_id","varchar(255)").addColumn("user_id","varchar(255)").addForeignKeyConstraint("sessions_2_user_id_constraint",["user_id","tenant_id"],"users",["user_id","tenant_id"],e=>e.onDelete("cascade")).addColumn("created_at","varchar(35)",e=>e.notNull()).addColumn("updated_at","varchar(35)",e=>e.notNull()).addColumn("expires_at","varchar(35)").addColumn("idle_expires_at","varchar(35)").addColumn("authenticated_at","varchar(35)").addColumn("last_interaction_at","varchar(35)").addColumn("used_at","varchar(35)").addColumn("revoked_at","varchar(35)").addColumn("device","varchar(2048)",e=>e.notNull()).addColumn("clients","varchar(1024)",e=>e.notNull()).execute(),await t.schema.createTable("refresh_tokens_2").addColumn("id","varchar(21)",e=>e.primaryKey()).addColumn("client_id","varchar(21)",e=>e.references("applications.id").onDelete("cascade").notNull()).addColumn("tenant_id","varchar(255)").addColumn("session_id","varchar(21)",e=>e.notNull()).addColumn("user_id","varchar(255)").addForeignKeyConstraint("refresh_tokens_2_user_id_constraint",["user_id","tenant_id"],"users",["user_id","tenant_id"],e=>e.onDelete("cascade")).addColumn("created_at","varchar(35)",e=>e.notNull()).addColumn("expires_at","varchar(35)").addColumn("idle_expires_at","varchar(35)").addColumn("last_exchanged_at","varchar(35)").addColumn("device","varchar(2048)",e=>e.notNull()).addColumn("resource_servers","varchar(2048)",e=>e.notNull()).addColumn("rotating","boolean",e=>e.notNull()).execute()}async function As(t){await t.schema.dropTable("sessions_2").execute(),await t.schema.dropTable("refresh_tokens_2").execute()}const Ls=Object.freeze(Object.defineProperty({__proto__:null,down:As,up:Fs},Symbol.toStringTag,{value:"Module"}));async function zs(t){await t.schema.createTable("custom_domains").addColumn("custom_domain_id","varchar(21)",e=>e.notNull().primaryKey()).addColumn("tenant_id","varchar(255)",e=>e.references("tenants.id").onDelete("cascade").notNull()).addColumn("domain","varchar(255)",e=>e.notNull()).addColumn("primary","boolean",e=>e.notNull()).addColumn("status","varchar(50)",e=>e.notNull()).addColumn("type","varchar(50)",e=>e.notNull()).addColumn("origin_domain_name","varchar(255)").addColumn("verification","varchar(2048)").addColumn("custom_client_ip_header","varchar(50)").addColumn("tls_policy","varchar(50)").addColumn("domain_metadata","varchar(2048)").addColumn("created_at","varchar(35)",e=>e.notNull()).addColumn("updated_at","varchar(35)",e=>e.notNull()).execute(),await t.schema.dropTable("domains").execute()}async function Es(t){await t.schema.dropTable("custom_domains").execute(),await t.schema.createTable("domains").addColumn("id","varchar(255)",e=>e.notNull().primaryKey()).addColumn("tenant_id","varchar(255)",e=>e.references("tenants.id").onDelete("cascade").notNull()).addColumn("domain","varchar(255)",e=>e.notNull()).addColumn("email_service","varchar(255)").addColumn("email_api_key","varchar(255)").addColumn("dkim_private_key","varchar(2048)").addColumn("dkim_public_key","varchar(2048)").addColumn("created_at","varchar(255)",e=>e.notNull()).addColumn("updated_at","varchar(255)",e=>e.notNull()).execute()}const Js=Object.freeze(Object.defineProperty({__proto__:null,down:Es,up:zs},Symbol.toStringTag,{value:"Module"}));async function Ks(t){}async function Rs(t){await t.schema.alterTable("logins").dropColumn("authParams_organization").dropColumn("authorization_url").execute()}const Us=Object.freeze(Object.defineProperty({__proto__:null,down:Rs,up:Ks},Symbol.toStringTag,{value:"Module"}));async function Bs(t){await t.schema.alterTable("logins").dropColumn("authorization_url").execute(),await t.schema.alterTable("logins").addColumn("authorization_url","varchar(2048)").execute()}async function Qs(t){await t.schema.alterTable("logins").dropColumn("authorization_url").execute(),await t.schema.alterTable("logins").addColumn("authorization_url","varchar(1024)").execute()}const Vs=Object.freeze(Object.defineProperty({__proto__:null,down:Qs,up:Bs},Symbol.toStringTag,{value:"Module"}));async function Ws(t){}async function qs(t){}const Gs=Object.freeze(Object.defineProperty({__proto__:null,down:qs,up:Ws},Symbol.toStringTag,{value:"Module"}));async function Hs(t){await t.schema.createTable("sessions").addColumn("id","varchar(21)",e=>e.primaryKey()).addColumn("tenant_id","varchar(255)").addColumn("user_id","varchar(255)").addForeignKeyConstraint("sessions_user_id_constraint",["user_id","tenant_id"],"users",["user_id","tenant_id"],e=>e.onDelete("cascade")).addColumn("created_at","varchar(35)",e=>e.notNull()).addColumn("updated_at","varchar(35)",e=>e.notNull()).addColumn("expires_at","varchar(35)").addColumn("idle_expires_at","varchar(35)").addColumn("authenticated_at","varchar(35)").addColumn("last_interaction_at","varchar(35)").addColumn("used_at","varchar(35)").addColumn("revoked_at","varchar(35)").addColumn("device","varchar(2048)",e=>e.notNull()).addColumn("clients","varchar(1024)",e=>e.notNull()).execute(),await t.schema.createTable("login_sessions").addColumn("id","varchar(21)",e=>e.primaryKey()).addColumn("tenant_id","varchar(255)",e=>e.references("tenants.id").onDelete("cascade").notNull()).addColumn("session_id","varchar(21)",e=>e.references("sessions.id").onDelete("cascade")).addColumn("csrf_token","varchar(21)",e=>e.notNull()).addColumn("authParams_client_id","varchar(255)",e=>e.notNull()).addColumn("authParams_vendor_id","varchar(255)").addColumn("authParams_username","varchar(255)").addColumn("authParams_response_type","varchar(255)").addColumn("authParams_response_mode","varchar(255)").addColumn("authParams_audience","varchar(255)").addColumn("authParams_scope","varchar(511)").addColumn("authParams_state","varchar(2048)").addColumn("authParams_nonce","varchar(255)").addColumn("authParams_code_challenge_method","varchar(255)").addColumn("authParams_code_challenge","varchar(255)").addColumn("authParams_redirect_uri","varchar(255)").addColumn("authParams_organization","varchar(255)").addColumn("authParams_prompt","varchar(32)").addColumn("authParams_act_as","varchar(256)").addColumn("authParams_ui_locales","varchar(32)").addColumn("authorization_url","varchar(1024)").addColumn("created_at","varchar(35)",e=>e.notNull()).addColumn("updated_at","varchar(35)",e=>e.notNull()).addColumn("expires_at","varchar(35)",e=>e.notNull()).addColumn("ip","varchar(39)").addColumn("useragent","varchar(1024)").addColumn("auth0Client","varchar(255)").execute(),await t.schema.createTable("refresh_tokens").addColumn("id","varchar(21)",e=>e.primaryKey()).addColumn("client_id","varchar(21)",e=>e.references("applications.id").onDelete("cascade").notNull()).addColumn("tenant_id","varchar(255)").addColumn("session_id","varchar(21)",e=>e.notNull()).addColumn("user_id","varchar(255)").addForeignKeyConstraint("refresh_tokens_user_id_constraint",["user_id","tenant_id"],"users",["user_id","tenant_id"],e=>e.onDelete("cascade")).addColumn("created_at","varchar(35)",e=>e.notNull()).addColumn("expires_at","varchar(35)").addColumn("idle_expires_at","varchar(35)").addColumn("last_exchanged_at","varchar(35)").addColumn("device","varchar(2048)",e=>e.notNull()).addColumn("resource_servers","varchar(2048)",e=>e.notNull()).addColumn("rotating","boolean",e=>e.notNull()).execute()}async function Xs(t){await t.schema.dropTable("sessions").execute(),await t.schema.dropTable("login_sessions").execute(),await t.schema.dropTable("refresh_tokens").execute()}const Ys=Object.freeze(Object.defineProperty({__proto__:null,down:Xs,up:Hs},Symbol.toStringTag,{value:"Module"}));async function Zs(t){await t.schema.dropTable("logins").execute(),await t.schema.dropTable("sessions_2").execute(),await t.schema.dropTable("refresh_tokens_2").execute()}async function ei(t){}const ti=Object.freeze(Object.defineProperty({__proto__:null,down:ei,up:Zs},Symbol.toStringTag,{value:"Module"}));async function ai(t){await t.schema.dropTable("custom_domains").execute(),await t.schema.createTable("custom_domains").addColumn("custom_domain_id","varchar(256)",e=>e.notNull().primaryKey()).addColumn("tenant_id","varchar(255)",e=>e.references("tenants.id").onDelete("cascade").notNull()).addColumn("domain","varchar(255)",e=>e.notNull()).addColumn("primary","boolean",e=>e.notNull()).addColumn("status","varchar(50)",e=>e.notNull()).addColumn("type","varchar(50)",e=>e.notNull()).addColumn("origin_domain_name","varchar(255)").addColumn("verification","varchar(2048)").addColumn("custom_client_ip_header","varchar(50)").addColumn("tls_policy","varchar(50)").addColumn("domain_metadata","varchar(2048)").addColumn("created_at","varchar(35)",e=>e.notNull()).addColumn("updated_at","varchar(35)",e=>e.notNull()).execute()}async function ri(t){}const ni=Object.freeze(Object.defineProperty({__proto__:null,down:ri,up:ai},Symbol.toStringTag,{value:"Module"})),Le={m1_init:za,m2_magicLink:Ka,m3_updateAt:Ba,m4_logTable:Wa,m5_userProfile:Ha,m6_sessions:Za,m7_passwords:ar,m8_logsTableNewFields:or,m9_passwordTableNewField:dr,n01_codesTable:ur,n11_universalLoginSession:_r,n12_userFields:gr,n13_userEmailIndex:vr,n14_profileDataField:br,n15_userEmailIndex:Sr,n16_userLocale:$r,n17_signingKeys:Pr,n18_logsFields:Fr,n19_connectionsUserinfo:zr,n20_missingFields:Kr,n21_sessionDeletedAt:Br,n22_dropLogsFields:Wr,n23_dropUsersFields:Hr,n24_logsIndexes:Zr,n25_logDescMaxLength:an,n26_logsTableExtraFields:on,n27_usersTableNameIndex:cn,n28_usersEmailConstrain:mn,n29_increaseOtpStateLength:fn,n30_increaseTicketStateLength:yn,n31_branding:Nn,n32_indexesAndNotNull:xn,n33_vendorIdInUniversalLoginSession:On,n34_auth0ClientInUniversalLoginSession:Dn,n35_increaseUniversalSessionStateLength:jn,n36_authenticationCodes:An,n37_disableSignUps:En,n38_otpIpAddress:Rn,n39_increaseUserAgentLength:Qn,n40_userId:qn,n41_hooks:Xn,n42_userIdIndexes:eo,n43_userIdIndexes:ro,n44_codes:so,n45_hookProperties:lo,n46_loginAuth0Client:ho,n47_loginAuth0Client:po,n48_saml:wo,n49_removeFields:Co,n50_authParamsNonce:To,n51_connectionid:ko,n52_cert:Io,n53_codes_primary_key:Mo,n54_cleanup_tables:Lo,n55_logs_index:Jo,n56_application_fields:Uo,n57_prompt_settings:Vo,n58_connection_client_id:Go,n59_connection_options:Yo,n60_users_metadata:ts,n61_userLocales:ns,n62_prompt:is,n63_connection_cleanup:ls,n64_act_as:hs,n65_code_verifier:ps,n66_email_providers:ws,n67_drop_tickets:Cs,n68_login_useragents:Ts,n70_refresh_tokens:ks,n71_session_new_fields:Is,n72_session_primary_key:Ms,n73_drop_sessions:Ls,n74_custom_domains:Js,n75_organizations:Us,n76_authorization_url_length:Vs,n77_drop_sessions:Gs,n78_login_sessions:Ys,n79_drop_sessions_2:ti,n80_recreate_custom_domains:ni};async function oi(t,e=!1){e&&console.log("migrating...");const a=new Ae(Le),r=new Ne({db:t,provider:a}),{error:o,results:n}=await r.migrateToLatest();if(n==null||n.forEach(s=>{s.status==="Success"?e&&console.log(`migration "${s.migrationName}" was executed successfully`):s.status==="Error"&&console.error(`failed to execute migration "${s.migrationName}"`)}),o)throw console.error("failed to migrate"),console.error(o),o}async function si(t){console.log("migrating...");const e=new Ae(Le),a=new Ne({db:t,provider:e}),{error:r,results:o}=await a.migrateDown();if(o==null||o.forEach(n=>{n.status==="Success"?console.log(`migration "${n.migrationName}" was reverted successfully`):n.status==="Error"&&console.error(`failed to execute migration "${n.migrationName}"`)}),r)throw console.error("failed to migrate"),console.error(r),r}function ii(t){return{applications:Ot(t),branding:qt(t),cleanup:Ta(t),clients:Mt(t),codes:Nt(t),connections:jt(t),emailProviders:ya(t),customDomains:Qt(t),hooks:ea(t),keys:zt(t),loginSessions:ua(t),logs:ot(t),passwords:ft(t),promptSettings:_a(t),refreshTokens:xa(t),sessions:ut(t),tenants:et(t),themes:sa(t),users:We(t)}}exports.default=ii;exports.migrateDown=si;exports.migrateToLatest=oi;