@authhero/kysely-adapter 10.18.0 → 10.19.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 ce=t=>{throw TypeError(t)};var Je=(t,e,a)=>e in t?ze(t,e,{enumerable:!0,configurable:!0,writable:!0,value:a}):t[e]=a;var F=(t,e,a)=>Je(t,typeof e!="symbol"?e+"":e,a),U=(t,e,a)=>e.has(t)||ce("Cannot "+a);var c=(t,e,a)=>(U(t,e,"read from private field"),a?a.call(t):e.get(t)),w=(t,e,a)=>e.has(t)?ce("Cannot add the same private member more than once"):e instanceof WeakSet?e.add(t):e.set(t,a),A=(t,e,a,n)=>(U(t,e,"write to private field"),n?n.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 y=require("@authhero/adapter-interfaces");require("@hono/zod-openapi");var V=class extends Error{constructor(e=500,a){super(a==null?void 0:a.message,{cause:a==null?void 0:a.cause});F(this,"res");F(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 Ee(t){return async(e,a)=>{const{identities:n,...r}=a,o={...r,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(o).execute()}catch(s){throw s.code==="SQLITE_CONSTRAINT_UNIQUE"||s.message.includes("AlreadyExists")?new V(409,{message:"User already exists"}):new V(500,{message:`${s.code}, ${s.message}`})}return{...o,email:o.email||"",email_verified:o.email_verified===1,is_social:o.is_social===1}}}function f(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(f):e[a]=f(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:y.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[n,r]=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(!n)return null;const{tenant_id:o,...s}=n,d={...s,email:n.email||"",email_verified:n.email_verified===1,is_social:n.is_social===1,app_metadata:JSON.parse(n.app_metadata),user_metadata:JSON.parse(n.user_metadata),identities:[{connection:n.connection,provider:n.provider,user_id:y.parseUserId(n.user_id).id,isSocial:!!n.is_social},...r.map(fe)]};return f(d)}}function S(t,e,a,n){return a.split(/\s+/).map(o=>o.replace(/^([^:]+)=/g,"$1:")).map(o=>{let s=o.startsWith("-"),d,l,h,m;return o.startsWith("-_exists_:")?(d=o.substring(10),h=!0,s=!0):o.startsWith("_exists_:")?(d=o.substring(9),h=!0,s=!1):o.includes(":")?(s=o.startsWith("-"),[d,l]=s?o.substring(1).split(":"):o.split(":"),h=!1,l.startsWith(">=")?(m=">=",l=l.substring(2)):l.startsWith(">")?(m=">",l=l.substring(1)):l.startsWith("<=")?(m="<=",l=l.substring(2)):l.startsWith("<")?(m="<",l=l.substring(1)):m="="):(d=null,l=o,h=!1),{key:d,value:l,isNegation:s,isExistsQuery:h,operator:m}}).forEach(({key:o,value:s,isNegation:d,isExistsQuery:l,operator:h})=>{if(o)if(l)d?e=e.where(o,"is",null):e=e.where(o,"is not",null);else if(d)switch(h){case">":e=e.where(o,"<=",s);break;case">=":e=e.where(o,"<",s);break;case"<":e=e.where(o,">=",s);break;case"<=":e=e.where(o,">",s);break;default:e=e.where(o,"!=",s)}else e=e.where(o,h,s);else{const{ref:m}=t.dynamic;e=e.where(v=>v.or(n.map(T=>v(m(T),"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 n=t.selectFrom("users").where("users.tenant_id","=",e);if(a.q&&(n=S(t,n,a.q,["email","name"])),a.sort&&a.sort.sort_by){const{ref:m}=t.dynamic;n=n.orderBy(m(a.sort.sort_by),a.sort.sort_order)}const o=await n.offset(a.page*a.per_page).limit(a.per_page).selectAll().execute(),s=o.map(m=>m.user_id),d=s.length?await t.selectFrom("users").selectAll().where("users.tenant_id","=",e).where("users.linked_to","in",s).execute():[],l=o.map(m=>{const v=d.filter(T=>T.linked_to===m.user_id);return f({...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:y.parseUserId(m.user_id).id,isSocial:!!m.is_social},...v.map(fe)]})}),{count:h}=await n.select(m=>m.fn.countAll().as("count")).executeTakeFirstOrThrow();return{users:l,start:a.page*a.per_page,limit:a.per_page,length:x(h)}}}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 M(t,e="",a={}){for(let n in t)if(Object.prototype.hasOwnProperty.call(t,n)){const r=e?`${e}_${n}`:n,o=t[n];typeof o=="object"&&o!==null&&!Array.isArray(o)?M(o,r,a):typeof o=="boolean"?a[r]=o?1:0:a[r]=o}return a}function Be(t,e){const a={};for(const[n,r]of Object.entries(t)){const o=e.find(s=>n.startsWith(`${s}_`));if(!o)a[n]=r;else{const s=n.slice(o.length+1);a[o]={...a[o],[s]:r}}}return a}function Qe(t){return async(e,a,n)=>{const r=M({...n,updated_at:new Date().toISOString(),app_metadata:n.app_metadata?JSON.stringify(n.app_metadata):void 0,user_metadata:n.user_metadata?JSON.stringify(n.user_metadata):void 0});return(await t.updateTable("users").set(r).where("users.tenant_id","=",e).where("users.user_id","=",a).execute()).length===1}}function qe(t){return async(e,a,n,r)=>{const o={linked_to:null};return(await t.updateTable("users").set(o).where("users.tenant_id","=",e).where("users.user_id","=",`${n}|${r}`).where("users.linked_to","=",`${a}`).execute()).length===1}}function Ve(t){return{create:Ee(t),remove:Ue(t),get:Ke(t),list:Re(t),update:Qe(t),unlink:qe(t)}}const We="useandom-26T198340PX75pxJACKVERYMINDBUSHWOLF_GQZbfghjklqvwyzrict";let O=(t=21)=>{let e="",a=crypto.getRandomValues(new Uint8Array(t));for(;t--;)e+=We[a[t]&63];return e};function Ge(t){return async e=>{const a={id:e.id||O(),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?f(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:d}=t.dynamic;a=a.orderBy(d(e.sort.sort_by),e.sort.sort_order)}e.q&&(a=a.where(d=>d.or([d("name","like",`%${e.q}%`)])));const r=await a.offset(e.page*e.per_page).limit(e.per_page).selectAll().execute();if(!e.include_totals)return{tenants:r};const{count:o}=await a.select(d=>d.fn.countAll().as("count")).executeTakeFirstOrThrow(),s=x(o);return{tenants:r.map(f),start:(e.page-1)*e.per_page,limit:e.per_page,length:s}}}function Ye(t){return async(e,a)=>{const n={...a,id:e,updated_at:new Date().toISOString()};await t.updateTable("tenants").set(n).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 r,o,s;const n={id:O(),...a,user_agent:a.user_agent.slice(0,tt)};return await t.insertInto("logs").values({...n,description:(r=n.description)==null?void 0:r.substring(0,256),isMobile:a.isMobile?1:0,tenant_id:e,scope:(o=a.scope)==null?void 0:o.join(","),auth0_client:ue(a.auth0_client),details:(s=ue(a.details))==null?void 0:s.substring(0,8192)}).execute(),n}}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 nt(t){return async(e,a={page:0,per_page:50,include_totals:!1})=>{let n=t.selectFrom("logs").where("logs.tenant_id","=",e);a.q&&(n=S(t,n,a.q,["user_id","ip"]));let r=n;if(a.sort&&a.sort.sort_by){const{ref:d}=t.dynamic;r=r.orderBy(d(a.sort.sort_by),a.sort.sort_order)}r=r.offset(a.page*a.per_page).limit(a.per_page);const o=await r.selectAll().execute(),{count:s}=await n.select(d=>d.fn.countAll().as("count")).executeTakeFirstOrThrow();return{logs:o.map(pe),start:a.page*a.per_page,limit:a.per_page,length:x(s)}}}function rt(t){return async(e,a)=>{const n=await t.selectFrom("logs").where("logs.tenant_id","=",e).where("logs.id","=",a).selectAll().executeTakeFirst();return n?pe(n):null}}function ot(t){return{create:at(t),list:nt(t),get:rt(t)}}function st(t){return async(e,a)=>{const n=await t.selectFrom("sessions").where("sessions.tenant_id","=",e).where("sessions.id","=",a).selectAll().executeTakeFirst();if(!n)return null;const{tenant_id:r,device:o,clients:s,...d}=n;return{...d,device:JSON.parse(o),clients:JSON.parse(s)}}}function it(t){return async(e,a)=>{const n={...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({...n,tenant_id:e,device:JSON.stringify(a.device),clients:JSON.stringify(a.clients)}).execute(),n}}function lt(t){return async(e,a)=>!!(await t.deleteFrom("sessions").where("tenant_id","=",e).where("sessions.id","=",a).execute()).length}function dt(t){return async(e,a,n)=>{const r={...n,updated_at:new Date().toISOString(),device:n.device?JSON.stringify(n.device):void 0,clients:n.clients?JSON.stringify(n.clients):void 0};return!!(await t.updateTable("sessions").set(r).where("tenant_id","=",e).where("sessions.id","=",a).execute()).length}}function ct(t){return async(e,a={page:0,per_page:50,include_totals:!1})=>{let n=t.selectFrom("sessions").where("sessions.tenant_id","=",e);a.q&&(n=S(t,n,a.q,["user_id","session_id"]));let r=n;if(a.sort&&a.sort.sort_by){const{ref:l}=t.dynamic;r=r.orderBy(l(a.sort.sort_by),a.sort.sort_order)}r=r.offset(a.page*a.per_page).limit(a.per_page);const o=await r.selectAll().execute(),{count:s}=await n.select(l=>l.fn.countAll().as("count")).executeTakeFirstOrThrow(),d=x(s);return{sessions:o.map(l=>({...l,device:JSON.parse(l.device),clients:JSON.parse(l.clients)})),start:a.page*a.per_page,limit:a.per_page,length:d}}}function ut(t){return{create:it(t),get:st(t),list:ct(t),remove:lt(t),update:dt(t)}}function mt(t){return async(e,a)=>{const n=await t.selectFrom("passwords").where("passwords.tenant_id","=",e).where("passwords.user_id","=",a).selectAll().executeTakeFirst();if(!n)return null;const{tenant_id:r,...o}=n;return o}}function ht(t){return async(e,a)=>{const n={...a,created_at:new Date().toISOString(),updated_at:new Date().toISOString()};return await t.insertInto("passwords").values({...n,tenant_id:e}).execute(),n}}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 n=t.selectFrom("codes").where("codes.tenant_id","=",e);a.q&&(n=S(t,n,a.q,["code","login_id"]));const o=await n.offset(a.page*a.per_page).limit(a.per_page).selectAll().execute(),{count:s}=await n.select(l=>l.fn.countAll().as("count")).executeTakeFirstOrThrow();return{codes:o.map(l=>{const{tenant_id:h,...m}=l;return y.codeSchema.parse(f(m))}),start:a.page*a.per_page,limit:a.per_page,length:x(s)}}}function gt(t){return async(e,a)=>{const n={...a,created_at:new Date().toISOString()};return await t.insertInto("codes").values({...n,tenant_id:e}).execute(),n}}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,n)=>{let r=t.selectFrom("codes").where("codes.code_id","=",a).where("codes.code_type","=",n);e.length&&(r=r.where("codes.tenant_id","=",e));const o=await r.selectAll().executeTakeFirst();return o?f(o):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 n={created_at:new Date().toISOString(),updated_at:new Date().toISOString(),...a},r=JSON.stringify(a.allowed_origins),o=JSON.stringify(a.callbacks),s=JSON.stringify(a.web_origins),d=JSON.stringify(a.allowed_logout_urls),l=JSON.stringify(a.allowed_clients);return await t.insertInto("applications").values({...n,tenant_id:e,disable_sign_ups:a.disable_sign_ups?1:0,addons:a.addons?JSON.stringify(a.addons):"{}",callbacks:o,allowed_origins:r,web_origins:s,allowed_logout_urls:d,allowed_clients:l}).execute(),n}}function bt(t){return async e=>({applications:(await t.selectFrom("applications").where("applications.tenant_id","=",e).selectAll().execute()).map(o=>({...o,disable_sign_ups:!!o.disable_sign_ups,addons:o.addons?JSON.parse(o.addons):{},callbacks:o.callbacks?JSON.parse(o.callbacks):[],allowed_origins:o.allowed_origins?JSON.parse(o.allowed_origins):[],web_origins:o.web_origins?JSON.parse(o.web_origins):[],allowed_logout_urls:o.allowed_logout_urls?JSON.parse(o.allowed_logout_urls):[],allowed_clients:o.allowed_logout_urls?JSON.parse(o.allowed_logout_urls):[]}))})}function xt(t){return async(e,a)=>{const n=await t.selectFrom("applications").where("applications.tenant_id","=",e).where("applications.id","=",a).selectAll().executeTakeFirst();return n?f({...n,disable_sign_ups:!!n.disable_sign_ups,addons:JSON.parse(n.addons),callbacks:JSON.parse(n.callbacks),allowed_origins:JSON.parse(n.allowed_origins),web_origins:JSON.parse(n.web_origins),allowed_logout_urls:JSON.parse(n.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,n)=>{const r={...n,updated_at:new Date().toISOString(),allowed_origins:n.allowed_origins?JSON.stringify(n.allowed_origins):void 0,callbacks:n.callbacks?JSON.stringify(n.callbacks):void 0,web_origins:n.web_origins?JSON.stringify(n.web_origins):void 0,allowed_logout_urls:n.allowed_logout_urls?JSON.stringify(n.allowed_logout_urls):void 0,allowed_clients:n.allowed_clients?JSON.stringify(n.allowed_clients):void 0,addons:n.addons?JSON.stringify(n.addons):"{}",disable_sign_ups:n.disable_sign_ups?1:0};return await t.updateTable("applications").set(r).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 n={id:O(),...a,created_at:new Date().toISOString(),updated_at:new Date().toISOString()};return await t.insertInto("connections").values({...n,options:JSON.stringify(n.options||{}),tenant_id:e}).execute(),n}}function $t(t){return async(e,a={page:0,per_page:50,include_totals:!1})=>{let n=t.selectFrom("connections").where("connections.tenant_id","=",e);a.q&&(n=S(t,n,a.q,["user_id","ip"]));const s=(await n.offset(a.page*a.per_page).limit(a.per_page).selectAll().execute()).map(l=>f({...l,options:JSON.parse(l.options)})),{count:d}=await n.select(l=>l.fn.countAll().as("count")).executeTakeFirstOrThrow();return{connections:s,start:a.page*a.per_page,limit:a.per_page,length:x(d)}}}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 n=await t.selectFrom("connections").where("connections.tenant_id","=",e).where("connections.id","=",a).selectAll().executeTakeFirst();return n?f({...n,options:JSON.parse(n.options)}):null}}function jt(t){return async(e,a,n)=>{const r={...n,updated_at:new Date().toISOString()};return await t.updateTable("connections").set({...r,options:r.options?JSON.stringify(r.options):void 0}).where("connections.id","=",a).where("connections.tenant_id","=",e).execute(),!0}}function Pt(t){return{create:kt(t),get:It(t),list:$t(t),remove:Dt(t),update:jt(t)}}function Mt(t){return{get:async e=>{const a=await t.selectFrom("applications").selectAll().where("id","=",e).executeTakeFirst();if(!a)return null;const n=await t.selectFrom("tenants").selectAll().where("id","=",a.tenant_id).executeTakeFirst();if(!n)throw new V(404,{message:"Tenant not found"});const r=await t.selectFrom("connections").where("tenant_id","=",a.tenant_id).selectAll().execute();return{...a,connections:r.map(s=>y.connectionSchema.parse(f({...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:f(n),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 Jt(t){return async(e,a)=>{const n={custom_domain_id:O(),status:"pending",primary:!1,...a};return await t.insertInto("custom_domains").values({...n,created_at:new Date().toISOString(),updated_at:new Date().toISOString(),tenant_id:e,primary:n.primary?1:0}).execute(),n}}function Et(t){return async e=>(await t.selectFrom("custom_domains").where("custom_domains.tenant_id","=",e).selectAll().execute()).map(n=>({...n,primary:n.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 n=await t.selectFrom("custom_domains").where("custom_domains.tenant_id","=",e).where("custom_domains.custom_domain_id","=",a).selectAll().executeTakeFirst();return n?{...n,primary:n.primary===1}:null}}function Ut(t){return async(e,a,n)=>{const r={...n,updated_at:new Date().toISOString(),primary:n.primary?1:0};return(await t.updateTable("custom_domains").set(r).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:Jt(t),get:Rt(t),getByDomain:Bt(t),list:Et(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:n,colors_primary:r,colors_page_background_type:o,colors_page_background_start:s,colors_page_background_end:d,colors_page_background_angle_dev:l,font_url:h,...m}=a;return f({...m,colors:{primary:r,page_background:{type:o,start:s,end:d,angle_deg:l}},font:h?{url:h}:void 0})}}function Vt(t){return async(e,a)=>{var s,d,l,h,m,v,T,Z,ee,te,ae,ne,re,oe,se,ie,le,de;const{colors:n,font:r,...o}=a;try{await t.insertInto("branding").values({...o,colors_primary:n==null?void 0:n.primary,colors_page_background_type:(d=(s=a.colors)==null?void 0:s.page_background)==null?void 0:d.type,colors_page_background_start:(h=(l=a.colors)==null?void 0:l.page_background)==null?void 0:h.start,colors_page_background_end:(v=(m=a.colors)==null?void 0:m.page_background)==null?void 0:v.end,colors_page_background_angle_dev:(Z=(T=a.colors)==null?void 0:T.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({...o,colors_primary:n==null?void 0:n.primary,colors_page_background_type:(ae=(te=a.colors)==null?void 0:te.page_background)==null?void 0:ae.type,colors_page_background_start:(re=(ne=a.colors)==null?void 0:ne.page_background)==null?void 0:re.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:(le=(ie=a.colors)==null?void 0:ie.page_background)==null?void 0:le.angle_deg,font_url:(de=a.font)==null?void 0:de.url}).where("tenant_id","=",e).execute()}}}function Wt(t){return{get:qt(t),set:Vt(t)}}function Gt(t){return async(e,a={page:0,per_page:50,include_totals:!1})=>{let n=t.selectFrom("hooks").where("hooks.tenant_id","=",e);a.q&&(n=S(t,n,a.q,["url","form_id"]));const o=await n.offset(a.page*a.per_page).limit(a.per_page).selectAll().execute(),{count:s}=await n.select(l=>l.fn.countAll().as("count")).executeTakeFirstOrThrow();return{hooks:o.map(l=>{const{tenant_id:h,enabled:m,synchronous:v,...T}=l;return f({...T,enabled:!!m,synchronous:!!v})}),start:a.page*a.per_page,limit:a.per_page,length:x(s)}}}function Ht(t){return async(e,a)=>{const n=await t.selectFrom("hooks").where("hooks.tenant_id","=",e).where("hooks.hook_id","=",a).selectAll().executeTakeFirst();return n?f({...n,enabled:!!n.enabled,synchronous:!!n.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 n={hook_id:O(),...a,created_at:new Date().toISOString(),updated_at:new Date().toISOString()};return await t.insertInto("hooks").values({...n,tenant_id:e,enabled:a.enabled?1:0,synchronous:a.synchronous?1:0}).execute(),n}}function Zt(t){return async(e,a,n)=>{const r={...n,updated_at:new Date().toISOString(),enabled:n.enabled!==void 0?n.enabled?1:0:void 0,synchronous:n.enabled!==void 0?n.synchronous?1:0:void 0};return await t.updateTable("hooks").set(r).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 ta(t){return async(e,a)=>{const n={themeId:O(),...a,created_at:new Date().toISOString(),updated_at:new Date().toISOString()};return await t.insertInto("themes").values({...M(n),tenant_id:e}).execute(),n}}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 na(t){return async(e,a)=>{const n=await t.selectFrom("themes").where("themes.tenant_id","=",e).where("themes.theme_id","=",a).selectAll().executeTakeFirst();return n?f(n):null}}function ra(t){return async(e,a,n)=>{const r=M({...n,updated_at:new Date().toISOString()});return await t.updateTable("themes").set(r).where("themes.id","=",a).where("themes.tenant_id","=",e).execute(),!0}}function oa(t){return{create:ta(t),get:na(t),remove:aa(t),update:ra(t)}}function sa(t){return async(e,a)=>{const n=new Date().toISOString(),r=await t.selectFrom("login_sessions").where("login_sessions.expires_at",">",n).where("login_sessions.id","=",a).selectAll().executeTakeFirst();return r?y.loginSessionSchema.parse(Be(f({...r,login_completed:!!r.login_completed}),["authParams"])):null}}function ia(t){return async(e,a)=>{var r;const n={id:O(),...a,authorization_url:(r=a.authorization_url)==null?void 0:r.slice(0,1024),created_at:new Date().toISOString(),updated_at:new Date().toISOString(),login_completed:!!a.login_completed};return await t.insertInto("login_sessions").values({...M(n),tenant_id:e}).execute(),n}}function la(t){return async(e,a,n)=>(await t.updateTable("login_sessions").set(M({...n})).where("login_sessions.id","=",a).where("login_sessions.tenant_id","=",e).execute()).length===1}function da(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 ca(t){return{create:ia(t),get:sa(t),update:la(t),remove:da(t)}}function ua(t){return async e=>{const[a]=await t.selectFrom("prompt_settings").where("prompt_settings.tenant_id","=",e).selectAll().execute();return f({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 f({...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 n=y.promptSettingSchema.parse(a);await t.insertInto("prompt_settings").values({...he(n),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:n,credentials:r,settings:o,enabled:s,...d}=a;return f({...d,credentials:JSON.parse(r),settings:JSON.parse(o),enabled:!!s})}}function fa(t){return async(e,a)=>{const{credentials:n,settings:r,enabled:o,...s}=a;await t.updateTable("email_providers").set({...s,credentials:n?JSON.stringify(n):void 0,settings:r?JSON.stringify(r):void 0,enabled:o!==void 0?o?1:0:void 0}).where("tenant_id","=",e).execute()}}function pa(t){return async(e,a)=>{const{credentials:n,settings:r,enabled:o,...s}=a;await t.insertInto("email_providers").values({...s,enabled:o?1:0,credentials:JSON.stringify(n),settings:JSON.stringify(r),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 n=await t.selectFrom("refresh_tokens").where("refresh_tokens.tenant_id","=",e).where("refresh_tokens.id","=",a).selectAll().executeTakeFirst();return n?{...n,rotating:!!n.rotating,device:n.device?JSON.parse(n.device):{},resource_servers:n.resource_servers?JSON.parse(n.resource_servers):[]}:null}}function wa(t){return async(e,a)=>{const n={...a,created_at:new Date().toISOString()};return await t.insertInto("refresh_tokens").values({...n,tenant_id:e,rotating:a.rotating?1:0,device:JSON.stringify(a.device),resource_servers:JSON.stringify(a.resource_servers)}).execute(),{...a,...n}}}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,n)=>{const r={...n,device:n.device?JSON.stringify(n.device):void 0,resource_servers:n.resource_servers?JSON.stringify(n.resource_servers):void 0,rotating:n.rotating?1:0};return!!(await t.updateTable("refresh_tokens").set(r).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 n=t.selectFrom("refresh_tokens").where("refresh_tokens.tenant_id","=",e);a.q&&(n=S(t,n,a.q,["token","session_id"]));let r=n;if(a.sort&&a.sort.sort_by){const{ref:l}=t.dynamic;r=r.orderBy(l(a.sort.sort_by),a.sort.sort_order)}r=r.offset(a.page*a.per_page).limit(a.per_page);const o=await r.selectAll().execute(),{count:s}=await n.select(l=>l.fn.countAll().as("count")).executeTakeFirstOrThrow(),d=x(s);return{refresh_tokens:o.map(l=>({...l,rotating:!!l.rotating,device:l.device?JSON.parse(l.device):{},resource_servers:l.resource_servers?JSON.parse(l.resource_servers):[]})),start:a.page*a.per_page,limit:a.per_page,length:d}}}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(),n=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","<",n).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 r=await t.selectFrom("sessions").select("id").where(o=>o.or([o("expires_at","<",a),o("idle_expires_at","<",a)])).where("id","not in",t.selectFrom("refresh_tokens").select("session_id")).limit(1e5).execute();r.length>0&&await t.deleteFrom("sessions").where("id","in",r.map(o=>o.id)).execute(),console.log("cleanup complete")}}function Ta(t){return async(e,a)=>{const n=y.formSchema.parse({id:O(),...a,created_at:new Date().toISOString(),updated_at:new Date().toISOString()});return await t.insertInto("forms").values({...n,nodes:JSON.stringify(n.nodes||[]),start:JSON.stringify(n.start||{}),ending:JSON.stringify(n.ending||{}),tenant_id:e}).execute(),y.formSchema.parse(n)}}function Sa(t){return async(e,a={page:0,per_page:50,include_totals:!1})=>{let n=t.selectFrom("forms").where("tenant_id","=",e);a!=null&&a.q&&(n=S(t,n,a.q,[]));const s=(await n.offset(a.page*a.per_page).limit(a.per_page).selectAll().execute()).map(l=>{const h={...l};if(typeof h.nodes=="string")try{h.nodes=JSON.parse(h.nodes)}catch{}if(typeof h.start=="string")try{h.start=JSON.parse(h.start)}catch{}if(typeof h.ending=="string")try{h.ending=JSON.parse(h.ending)}catch{}return y.formSchema.parse(f(h))}),{count:d}=await n.select(l=>l.fn.countAll().as("count")).executeTakeFirstOrThrow();return{forms:s,start:a.page*a.per_page,limit:a.per_page,length:x(d)}}}function Oa(t){return async(e,a)=>{const{numDeletedRows:n}=await t.deleteFrom("forms").where("id","=",a).where("tenant_id","=",e).executeTakeFirst();return n>0}}function ka(t){return async(e,a)=>{const n=await t.selectFrom("forms").selectAll().where("forms.id","=",a).where("tenant_id","=",e).executeTakeFirst();if(!n)return null;const r={...n};if(typeof r.nodes=="string")try{r.nodes=JSON.parse(r.nodes)}catch{}if(typeof r.start=="string")try{r.start=JSON.parse(r.start)}catch{}if(typeof r.ending=="string")try{r.ending=JSON.parse(r.ending)}catch{}return y.formSchema.parse(f(r))}}function $a(t){return async(e,a,n)=>{const r={...n,updated_at:new Date().toISOString()};n.nodes&&(r.nodes=JSON.stringify(n.nodes)),n.start&&(r.start=JSON.stringify(n.start)),n.ending&&(r.ending=JSON.stringify(n.ending));const{numUpdatedRows:o}=await t.updateTable("forms").set(r).where("id","=",a).where("tenant_id","=",e).executeTakeFirst();return o>0}}function Da(t){return{create:Ta(t),get:ka(t),list:Sa(t),remove:Oa(t),update:$a(t)}}function Ia(t){return t[t.length-1]}function g(t){return Object.freeze(t)}const K=g({is(t){return t.kind==="IdentifierNode"},create(t){return g({kind:"IdentifierNode",name:t})}}),W=g({is(t){return t.kind==="SchemableIdentifierNode"},create(t){return g({kind:"SchemableIdentifierNode",identifier:K.create(t)})},createWithSchema(t,e){return g({kind:"SchemableIdentifierNode",schema:K.create(t),identifier:K.create(e)})}}),ja=g({is(t){return t.kind==="AliasNode"},create(t,e){return g({kind:"AliasNode",node:t,alias:e})}}),B=g({is(t){return t.kind==="TableNode"},create(t){return g({kind:"TableNode",table:W.create(t)})},createWithSchema(t,e){return g({kind:"TableNode",table:W.createWithSchema(t,e)})}});var R;class Pa{constructor(){F(this,"nodeStack",[]);w(this,R,g({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(),g(a)}transformNodeImpl(e){return c(this,R)[e.kind](e)}transformNodeList(e){return e&&g(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:g([...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 Ma=g({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 P,k,$,p,ge,ye,we,D,G,ve;class Fa extends Pa{constructor(a){super();w(this,p);w(this,P);w(this,k,new Set);w(this,$,new Set);A(this,P,a)}transformNodeImpl(a){if(!u(this,p,ge).call(this,a))return super.transformNodeImpl(a);const n=u(this,p,we).call(this,a);for(const s of n)c(this,$).add(s);const r=u(this,p,ye).call(this,a);for(const s of r)c(this,k).add(s);const o=super.transformNodeImpl(a);for(const s of r)c(this,k).delete(s);for(const s of n)c(this,$).delete(s);return o}transformSchemableIdentifier(a){const n=super.transformSchemableIdentifier(a);return n.schema||!c(this,k).has(a.identifier.name)?n:{...n,schema:K.create(c(this,P))}}transformReferences(a){const n=super.transformReferences(a);return n.table.table.schema?n:{...n,table:B.createWithSchema(c(this,P),n.table.table.identifier.name)}}}P=new WeakMap,k=new WeakMap,$=new WeakMap,p=new WeakSet,ge=function(a){return a.kind in Ma},ye=function(a){const n=new Set;if("name"in a&&a.name&&W.is(a.name)&&u(this,p,G).call(this,a.name,n),"from"in a&&a.from)for(const r of a.from.froms)u(this,p,D).call(this,r,n);if("into"in a&&a.into&&u(this,p,D).call(this,a.into,n),"table"in a&&a.table&&u(this,p,D).call(this,a.table,n),"joins"in a&&a.joins)for(const r of a.joins)u(this,p,D).call(this,r.table,n);return"using"in a&&a.using&&u(this,p,D).call(this,a.using,n),n},we=function(a){const n=new Set;return"with"in a&&a.with&&u(this,p,ve).call(this,a.with,n),n},D=function(a,n){const r=B.is(a)?a:ja.is(a)&&B.is(a.node)?a.node:null;r&&u(this,p,G).call(this,r.table,n)},G=function(a,n){const r=a.identifier.name;!c(this,k).has(r)&&!c(this,$).has(r)&&n.add(r)},ve=function(a,n){for(const r of a.expressions){const o=r.name.table.table.identifier.name;c(this,$).has(o)||n.add(o)}};var J;class Aa{constructor(e){w(this,J);A(this,J,new Fa(e))}transformQuery(e){return c(this,J).transformNode(e.node)}async transformResult(e){return e.result}}J=new WeakMap;class La{transformQuery(e){return e.node}async transformResult(e){return e.result}}const za="kysely_migration",_e="kysely_migration_lock",Ja=!1,Q="migration_lock",Ea=g({__noMigrations__:!0});var _,i,L,N,C,I,Ce,b,be,xe,Te,Se,Oe,H,j,X,ke,$e,De,Y,Ie,je,Pe,Me,Fe,z;class Ne{constructor(e){w(this,i);w(this,_);A(this,_,g(e))}async getMigrations(){const e=await u(this,i,j).call(this,c(this,i,C))?await c(this,_).db.withPlugin(c(this,i,b)).selectFrom(c(this,i,C)).select(["name","timestamp"]).execute():[];return(await u(this,i,Y).call(this)).map(({name:n,...r})=>{const o=e.find(s=>s.name===n);return{name:n,migration:r,executedAt:o?new Date(o.timestamp):void 0}})}async migrateToLatest(){return u(this,i,L).call(this,()=>({direction:"Up",step:1/0}))}async migrateTo(e){return u(this,i,L).call(this,({migrations:a,executedMigrations:n,pendingMigrations:r})=>{if(e===Ea)return{direction:"Down",step:1/0};if(!a.find(d=>d.name===e))throw new Error(`migration "${e}" doesn't exist`);const o=n.indexOf(e),s=r.findIndex(d=>d.name===e);if(o!==-1)return{direction:"Down",step:n.length-o-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,L).call(this,()=>({direction:"Up",step:1}))}async migrateDown(){return u(this,i,L).call(this,()=>({direction:"Down",step:1}))}}_=new WeakMap,i=new WeakSet,L=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 q?a.resultSet:{error:a}}},N=function(){return c(this,_).migrationTableSchema},C=function(){return c(this,_).migrationTableName??za},I=function(){return c(this,_).migrationLockTableName??_e},Ce=function(){return c(this,_).allowUnorderedMigrations??Ja},b=function(){return c(this,i,N)?new Aa(c(this,i,N)):new La},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,N)&&!await u(this,i,H).call(this))try{await u(this,i,z).call(this,c(this,_).db.schema.createSchema(c(this,i,N)))}catch(e){if(!await u(this,i,H).call(this))throw e}},Te=async function(){if(!await u(this,i,j).call(this,c(this,i,C)))try{c(this,i,N)&&await u(this,i,z).call(this,c(this,_).db.schema.createSchema(c(this,i,N))),await u(this,i,z).call(this,c(this,_).db.schema.withPlugin(c(this,i,b)).createTable(c(this,i,C)).addColumn("name","varchar(255)",e=>e.notNull().primaryKey()).addColumn("timestamp","varchar(255)",e=>e.notNull()))}catch(e){if(!await u(this,i,j).call(this,c(this,i,C)))throw e}},Se=async function(){if(!await u(this,i,j).call(this,c(this,i,I)))try{await u(this,i,z).call(this,c(this,_).db.schema.withPlugin(c(this,i,b)).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,j).call(this,c(this,i,I)))throw e}},Oe=async function(){if(!await u(this,i,X).call(this))try{await c(this,_).db.withPlugin(c(this,i,b)).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,_).db.introspection.getSchemas()).some(a=>a.name===c(this,i,N))},j=async function(e){const a=c(this,i,N);return(await c(this,_).db.introspection.getTables({withInternalKyselyTables:!0})).some(r=>r.name===e&&(!a||r.schema===a))},X=async function(){return!!await c(this,_).db.withPlugin(c(this,i,b)).selectFrom(c(this,i,I)).where("id","=",Q).select("id").executeTakeFirst()},ke=async function(e){const a=c(this,_).db.getExecutor().adapter,n=g({lockTable:c(this,_).migrationLockTableName??_e,lockRowId:Q,lockTableSchema:c(this,_).migrationTableSchema}),r=async o=>{try{await a.acquireMigrationLock(o,n);const s=await u(this,i,$e).call(this,o);if(s.migrations.length===0)return{results:[]};const{direction:d,step:l}=e(s);return l<=0?{results:[]}:d==="Down"?await u(this,i,Me).call(this,o,s,l):d==="Up"?await u(this,i,Fe).call(this,o,s,l):{results:[]}}finally{await a.releaseMigrationLock(o,n)}};return a.supportsTransactionalDdl?c(this,_).db.transaction().execute(r):c(this,_).db.connection().execute(r)},$e=async function(e){const a=await u(this,i,Y).call(this),n=await u(this,i,Ie).call(this,e);u(this,i,je).call(this,a,n),c(this,i,Ce)||u(this,i,Pe).call(this,a,n);const r=u(this,i,De).call(this,a,n);return g({migrations:a,executedMigrations:n,lastMigration:Ia(n),pendingMigrations:r})},De=function(e,a){return e.filter(n=>!a.includes(n.name))},Y=async function(){const e=await c(this,_).provider.getMigrations();return Object.keys(e).sort().map(a=>({...e[a],name:a}))},Ie=async function(e){return(await e.withPlugin(c(this,i,b)).selectFrom(c(this,i,C)).select("name").orderBy(["timestamp","name"]).execute()).map(n=>n.name)},je=function(e,a){for(const n of a)if(!e.some(r=>r.name===n))throw new Error(`corrupted migrations: previously executed migration ${n} is missing`)},Pe=function(e,a){for(let n=0;n<a.length;++n)if(e[n].name!==a[n])throw new Error(`corrupted migrations: expected previously executed migration ${a[n]} to be at index ${n} but ${e[n].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,n){const r=a.executedMigrations.slice().reverse().slice(0,n).map(s=>a.migrations.find(d=>d.name===s)),o=r.map(s=>({migrationName:s.name,direction:"Down",status:"NotExecuted"}));for(let s=0;s<o.length;++s){const d=r[s];try{d.down&&(await d.down(e),await e.withPlugin(c(this,i,b)).deleteFrom(c(this,i,C)).where("name","=",d.name).execute(),o[s]={migrationName:d.name,direction:"Down",status:"Success"})}catch(l){throw o[s]={migrationName:d.name,direction:"Down",status:"Error"},new q({error:l,results:o})}}return{results:o}},Fe=async function(e,a,n){const o=a.pendingMigrations.slice(0,n).map(s=>({migrationName:s.name,direction:"Up",status:"NotExecuted"}));for(let s=0;s<o.length;s++){const d=a.pendingMigrations[s];try{await d.up(e),await e.withPlugin(c(this,i,b)).insertInto(c(this,i,C)).values({name:d.name,timestamp:new Date().toISOString()}).execute(),o[s]={migrationName:d.name,direction:"Up",status:"Success"}}catch(l){throw o[s]={migrationName:d.name,direction:"Up",status:"Error"},new q({error:l,results:o})}}return{results:o}},z=async function(e){c(this,_).db.getExecutor().adapter.supportsCreateIfNotExists&&(e=e.ifNotExists()),await e.execute()};var E;class q extends Error{constructor(a){super();w(this,E);A(this,E,a)}get resultSet(){return c(this,E)}}E=new WeakMap;class Ae{constructor(e){F(this,"migrations");this.migrations=e}async getMigrations(){return this.migrations}}async function Ka(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)").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("phone_number","varchar(17)").addColumn("phone_verified","boolean").addColumn("username","varchar(128)").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"]).addUniqueConstraint("unique_phone_provider",["phone_number","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 Ra(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 Ua=Object.freeze(Object.defineProperty({__proto__:null,down:Ra,up:Ka},Symbol.toStringTag,{value:"Module"}));async function Ba(t){await t.schema.alterTable("tenants").addColumn("support_url","varchar(255)").execute()}async function Qa(t){await t.schema.alterTable("tenants").dropColumn("support_url").execute()}const qa=Object.freeze(Object.defineProperty({__proto__:null,down:Qa,up:Ba},Symbol.toStringTag,{value:"Module"}));async function Va(t){}async function Wa(t){}const Ga=Object.freeze(Object.defineProperty({__proto__:null,down:Wa,up:Va},Symbol.toStringTag,{value:"Module"}));async function Ha(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 Xa(t){await t.schema.dropTable("logs").execute()}const Ya=Object.freeze(Object.defineProperty({__proto__:null,down:Xa,up:Ha},Symbol.toStringTag,{value:"Module"}));async function Za(t){}async function en(t){}const tn=Object.freeze(Object.defineProperty({__proto__:null,down:en,up:Za},Symbol.toStringTag,{value:"Module"}));async function an(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 nn(t){await t.schema.dropTable("sessions").execute(),await t.schema.dropTable("tickets").execute(),await t.schema.dropTable("otps").execute()}const rn=Object.freeze(Object.defineProperty({__proto__:null,down:nn,up:an},Symbol.toStringTag,{value:"Module"}));async function on(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 sn(t){await t.schema.dropTable("passwords").execute(),await t.schema.dropTable("codes").execute()}const ln=Object.freeze(Object.defineProperty({__proto__:null,down:sn,up:on},Symbol.toStringTag,{value:"Module"}));async function dn(t){}async function cn(t){}const un=Object.freeze(Object.defineProperty({__proto__:null,down:cn,up:dn},Symbol.toStringTag,{value:"Module"}));async function mn(t){await t.schema.alterTable("passwords").addColumn("password","varchar(255)",e=>e.notNull()).execute()}async function hn(t){await t.schema.alterTable("passwords").dropColumn("password").execute()}const _n=Object.freeze(Object.defineProperty({__proto__:null,down:hn,up:mn},Symbol.toStringTag,{value:"Module"}));async function fn(t){}async function pn(t){}const gn=Object.freeze(Object.defineProperty({__proto__:null,down:pn,up:fn},Symbol.toStringTag,{value:"Module"}));async function yn(t){}async function wn(t){}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){await t.schema.createIndex("users_email_index").on("users").column("email").execute()}async function Tn(t){await t.schema.dropIndex("users_email_index").execute()}const Sn=Object.freeze(Object.defineProperty({__proto__:null,down:Tn,up:xn},Symbol.toStringTag,{value:"Module"}));async function On(t){await t.schema.alterTable("users").addColumn("profileData","varchar(2048)").execute()}async function kn(t){await t.schema.alterTable("users").dropColumn("profileData").execute()}const $n=Object.freeze(Object.defineProperty({__proto__:null,down:kn,up:On},Symbol.toStringTag,{value:"Module"}));async function Dn(t){await t.schema.createIndex("users_linked_to_index").on("users").column("linked_to").execute()}async function In(t){await t.schema.dropIndex("users_linked_to_index")}const jn=Object.freeze(Object.defineProperty({__proto__:null,down:In,up:Dn},Symbol.toStringTag,{value:"Module"}));async function Pn(t){await t.schema.alterTable("users").addColumn("locale","varchar(255)").execute()}async function Mn(t){await t.schema.alterTable("users").dropColumn("locale").execute()}const Fn=Object.freeze(Object.defineProperty({__proto__:null,down:Mn,up:Pn},Symbol.toStringTag,{value:"Module"}));async function An(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 Ln(t){await t.schema.dropTable("keys").execute()}const zn=Object.freeze(Object.defineProperty({__proto__:null,down:Ln,up:An},Symbol.toStringTag,{value:"Module"}));async function Jn(t){}async function En(t){}const Kn=Object.freeze(Object.defineProperty({__proto__:null,down:En,up:Jn},Symbol.toStringTag,{value:"Module"}));async function Rn(t){}async function Un(t){}const Bn=Object.freeze(Object.defineProperty({__proto__:null,down:Un,up:Rn},Symbol.toStringTag,{value:"Module"}));async function Qn(t){await t.schema.alterTable("otps").addColumn("audience","varchar(255)").execute()}async function qn(t){await t.schema.alterTable("otps").dropColumn("audience").execute()}const Vn=Object.freeze(Object.defineProperty({__proto__:null,down:qn,up:Qn},Symbol.toStringTag,{value:"Module"}));async function Wn(t){}async function Gn(t){}const Hn=Object.freeze(Object.defineProperty({__proto__:null,down:Gn,up:Wn},Symbol.toStringTag,{value:"Module"}));async function Xn(t){await t.schema.alterTable("logs").dropColumn("category").execute()}async function Yn(t){await t.schema.alterTable("logs").addColumn("category","varchar(255)",e=>e.notNull()).execute()}const Zn=Object.freeze(Object.defineProperty({__proto__:null,down:Yn,up:Xn},Symbol.toStringTag,{value:"Module"}));async function er(t){await t.schema.alterTable("users").dropColumn("tags").execute()}async function tr(t){await t.schema.alterTable("users").addColumn("tags","varchar(255)").execute()}const ar=Object.freeze(Object.defineProperty({__proto__:null,down:tr,up:er},Symbol.toStringTag,{value:"Module"}));async function nr(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 rr(t){await t.schema.dropIndex("logs_user_id"),await t.schema.dropIndex("logs_tenant_id"),await t.schema.dropIndex("logs_date")}const or=Object.freeze(Object.defineProperty({__proto__:null,down:rr,up:nr},Symbol.toStringTag,{value:"Module"}));async function sr(t){await t.schema.alterTable("logs").dropColumn("details").execute(),await t.schema.alterTable("logs").addColumn("details","varchar(8192)").execute()}async function ir(t){await t.schema.alterTable("logs").dropColumn("details").execute(),await t.schema.alterTable("logs").addColumn("details","varchar(2048)").execute()}const lr=Object.freeze(Object.defineProperty({__proto__:null,down:ir,up:sr},Symbol.toStringTag,{value:"Module"}));async function dr(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 cr(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 ur=Object.freeze(Object.defineProperty({__proto__:null,down:cr,up:dr},Symbol.toStringTag,{value:"Module"}));async function mr(t){await t.schema.createIndex("users_name_index").on("users").column("name").execute()}async function hr(t){await t.schema.dropIndex("users_name_index").execute()}const _r=Object.freeze(Object.defineProperty({__proto__:null,down:hr,up:mr},Symbol.toStringTag,{value:"Module"}));async function fr(t){}async function pr(t){await t.schema.alterTable("users").dropConstraint("unique_email_provider").execute()}const gr=Object.freeze(Object.defineProperty({__proto__:null,down:pr,up:fr},Symbol.toStringTag,{value:"Module"}));async function yr(t){await t.schema.alterTable("otps").dropColumn("state").execute(),await t.schema.alterTable("otps").addColumn("state","varchar(8192)").execute()}async function wr(t){await t.schema.alterTable("otps").dropColumn("state").execute(),await t.schema.alterTable("otps").addColumn("state","varchar(1024)").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("tickets").dropColumn("state").execute(),await t.schema.alterTable("tickets").addColumn("state","varchar(8192)").execute()}async function Cr(t){await t.schema.alterTable("tickets").dropColumn("state").execute(),await t.schema.alterTable("tickets").addColumn("state","varchar(1024)").execute()}const br=Object.freeze(Object.defineProperty({__proto__:null,down:Cr,up:Nr},Symbol.toStringTag,{value:"Module"}));async function xr(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 Tr(t){await t.schema.dropTable("branding").execute()}const Sr=Object.freeze(Object.defineProperty({__proto__:null,down:Tr,up:xr},Symbol.toStringTag,{value:"Module"}));async function Or(t){}async function kr(t){}const $r=Object.freeze(Object.defineProperty({__proto__:null,down:kr,up:Or},Symbol.toStringTag,{value:"Module"}));async function Dr(t){}async function Ir(t){}const jr=Object.freeze(Object.defineProperty({__proto__:null,down:Ir,up:Dr},Symbol.toStringTag,{value:"Module"}));async function Pr(t){}async function Mr(t){}const Fr=Object.freeze(Object.defineProperty({__proto__:null,down:Mr,up:Pr},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 Jr(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 Er(t){await t.schema.dropTable("authentication_codes").execute()}const Kr=Object.freeze(Object.defineProperty({__proto__:null,down:Er,up:Jr},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("otps").addColumn("ip","varchar(64)").execute()}async function qr(t){await t.schema.alterTable("otps").dropColumn("ip").execute()}const Vr=Object.freeze(Object.defineProperty({__proto__:null,down:qr,up:Qr},Symbol.toStringTag,{value:"Module"}));async function Wr(t){await t.schema.alterTable("logs").dropColumn("user_agent").execute(),await t.schema.alterTable("logs").addColumn("user_agent","varchar(1024)").execute()}async function Gr(t){await t.schema.alterTable("logs").dropColumn("user_agent").execute(),await t.schema.alterTable("logs").addColumn("user_agent","varchar(255)").execute()}const Hr=Object.freeze(Object.defineProperty({__proto__:null,down:Gr,up:Wr},Symbol.toStringTag,{value:"Module"}));async function Xr(t){}async function Yr(t){}const Zr=Object.freeze(Object.defineProperty({__proto__:null,down:Yr,up:Xr},Symbol.toStringTag,{value:"Module"}));async function eo(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 to(t){await t.schema.dropTable("hooks").execute()}const ao=Object.freeze(Object.defineProperty({__proto__:null,down:to,up:eo},Symbol.toStringTag,{value:"Module"}));async function no(t){}async function ro(t){}const oo=Object.freeze(Object.defineProperty({__proto__:null,down:ro,up:no},Symbol.toStringTag,{value:"Module"}));async function so(t){}async function io(t){}const lo=Object.freeze(Object.defineProperty({__proto__:null,down:io,up:so},Symbol.toStringTag,{value:"Module"}));async function co(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 uo(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 mo=Object.freeze(Object.defineProperty({__proto__:null,down:uo,up:co},Symbol.toStringTag,{value:"Module"}));async function ho(t){}async function _o(t){}const fo=Object.freeze(Object.defineProperty({__proto__:null,down:_o,up:ho},Symbol.toStringTag,{value:"Module"}));async function po(t){await t.schema.alterTable("logins").addColumn("auth0Client","varchar(256)").execute()}async function go(t){await t.schema.alterTable("logins").dropColumn("auth0Client").execute()}const yo=Object.freeze(Object.defineProperty({__proto__:null,down:go,up:po},Symbol.toStringTag,{value:"Module"}));async function wo(t){await t.schema.alterTable("logins").dropColumn("authParams_state").execute(),await t.schema.alterTable("logins").addColumn("authParams_state","varchar(8192)").execute()}async function vo(t){await t.schema.alterTable("logins").dropColumn("authParams_state").execute(),await t.schema.alterTable("logins").addColumn("authParams_state","varchar(511)").execute()}const No=Object.freeze(Object.defineProperty({__proto__:null,down:vo,up:wo},Symbol.toStringTag,{value:"Module"}));async function Co(t){}async function bo(t){}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){await t.schema.alterTable("logins").addColumn("authParams_nonce","varchar(255)").execute()}async function $o(t){await t.schema.alterTable("logins").dropColumn("nonce").execute()}const Do=Object.freeze(Object.defineProperty({__proto__:null,down:$o,up:ko},Symbol.toStringTag,{value:"Module"}));async function Io(t){}async function jo(t){}const Po=Object.freeze(Object.defineProperty({__proto__:null,down:jo,up:Io},Symbol.toStringTag,{value:"Module"}));async function Mo(t){}async function Fo(t){}const Ao=Object.freeze(Object.defineProperty({__proto__:null,down:Fo,up:Mo},Symbol.toStringTag,{value:"Module"}));async function Lo(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 zo(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:zo,up:Lo},Symbol.toStringTag,{value:"Module"}));async function Eo(t){await t.schema.dropTable("otps").execute(),await t.schema.dropTable("authentication_codes").execute()}async function Ko(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 Ro=Object.freeze(Object.defineProperty({__proto__:null,down:Ko,up:Eo},Symbol.toStringTag,{value:"Module"}));async function Uo(t){await t.schema.createIndex("IDX_logs_tenant_date_type_user").on("logs").columns(["tenant_id","date","type","user_id"]).execute()}async function Bo(t){await t.schema.dropIndex("IDX_logs_tenant_date_type_user").on("logs").execute()}const Qo=Object.freeze(Object.defineProperty({__proto__:null,down:Bo,up:Uo},Symbol.toStringTag,{value:"Module"}));async function qo(t){}async function Vo(t){}const Wo=Object.freeze(Object.defineProperty({__proto__:null,down:Vo,up:qo},Symbol.toStringTag,{value:"Module"}));async function Go(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 Ho(t){await t.schema.dropTable("prompt_settings").execute()}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){}async function as(t){}const ns=Object.freeze(Object.defineProperty({__proto__:null,down:as,up:ts},Symbol.toStringTag,{value:"Module"}));async function rs(t){}async function os(t){}const ss=Object.freeze(Object.defineProperty({__proto__:null,down:os,up:rs},Symbol.toStringTag,{value:"Module"}));async function is(t){await t.schema.alterTable("logins").addColumn("authParams_ui_locales","varchar(32)").execute()}async function ls(t){await t.schema.alterTable("logins").dropColumn("authParams_ui_locales").execute()}const ds=Object.freeze(Object.defineProperty({__proto__:null,down:ls,up:is},Symbol.toStringTag,{value:"Module"}));async function cs(t){await t.schema.alterTable("logins").addColumn("authParams_prompt","varchar(16)").execute()}async function us(t){await t.schema.alterTable("logins").dropColumn("authParams_prompt").execute()}const ms=Object.freeze(Object.defineProperty({__proto__:null,down:us,up:cs},Symbol.toStringTag,{value:"Module"}));async function hs(t){}async function _s(t){}const fs=Object.freeze(Object.defineProperty({__proto__:null,down:_s,up:hs},Symbol.toStringTag,{value:"Module"}));async function ps(t){await t.schema.alterTable("logins").addColumn("authParams_act_as","varchar(255)").execute()}async function gs(t){await t.schema.alterTable("logins").dropColumn("authParam_act_as").execute()}const ys=Object.freeze(Object.defineProperty({__proto__:null,down:gs,up:ps},Symbol.toStringTag,{value:"Module"}));async function ws(t){await t.schema.alterTable("codes").addColumn("code_verifier","varchar(128)").execute()}async function vs(t){await t.schema.alterTable("codes").dropColumn("code_verifier").execute()}const Ns=Object.freeze(Object.defineProperty({__proto__:null,down:vs,up:ws},Symbol.toStringTag,{value:"Module"}));async function Cs(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 bs(t){await t.schema.dropTable("email_providers").execute()}const xs=Object.freeze(Object.defineProperty({__proto__:null,down:bs,up:Cs},Symbol.toStringTag,{value:"Module"}));async function Ts(t){await t.schema.dropTable("tickets").execute()}async function Ss(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 Os=Object.freeze(Object.defineProperty({__proto__:null,down:Ss,up:Ts},Symbol.toStringTag,{value:"Module"}));async function ks(t){}async function $s(t){await t.schema.alterTable("logins").dropColumn("ip").dropColumn("useragent").execute()}const Ds=Object.freeze(Object.defineProperty({__proto__:null,down:$s,up:ks},Symbol.toStringTag,{value:"Module"}));async function Is(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 js(t){await t.schema.dropTable("refresh_tokens").execute()}const Ps=Object.freeze(Object.defineProperty({__proto__:null,down:js,up:Is},Symbol.toStringTag,{value:"Module"}));async function Ms(t){}async function Fs(t){}const As=Object.freeze(Object.defineProperty({__proto__:null,down:Fs,up:Ms},Symbol.toStringTag,{value:"Module"}));async function Ls(t){await t.schema.dropTable("sessions").execute(),await t.schema.dropTable("refresh_tokens").execute()}async function zs(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:zs,up:Ls},Symbol.toStringTag,{value:"Module"}));async function Es(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 Ks(t){await t.schema.dropTable("sessions_2").execute(),await t.schema.dropTable("refresh_tokens_2").execute()}const Rs=Object.freeze(Object.defineProperty({__proto__:null,down:Ks,up:Es},Symbol.toStringTag,{value:"Module"}));async function Us(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 Bs(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 Qs=Object.freeze(Object.defineProperty({__proto__:null,down:Bs,up:Us},Symbol.toStringTag,{value:"Module"}));async function qs(t){}async function Vs(t){await t.schema.alterTable("logins").dropColumn("authParams_organization").dropColumn("authorization_url").execute()}const Ws=Object.freeze(Object.defineProperty({__proto__:null,down:Vs,up:qs},Symbol.toStringTag,{value:"Module"}));async function Gs(t){await t.schema.alterTable("logins").dropColumn("authorization_url").execute(),await t.schema.alterTable("logins").addColumn("authorization_url","varchar(2048)").execute()}async function Hs(t){await t.schema.alterTable("logins").dropColumn("authorization_url").execute(),await t.schema.alterTable("logins").addColumn("authorization_url","varchar(1024)").execute()}const Xs=Object.freeze(Object.defineProperty({__proto__:null,down:Hs,up:Gs},Symbol.toStringTag,{value:"Module"}));async function Ys(t){}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.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 ai(t){await t.schema.dropTable("sessions").execute(),await t.schema.dropTable("login_sessions").execute(),await t.schema.dropTable("refresh_tokens").execute()}const ni=Object.freeze(Object.defineProperty({__proto__:null,down:ai,up:ti},Symbol.toStringTag,{value:"Module"}));async function ri(t){await t.schema.dropTable("logins").execute(),await t.schema.dropTable("sessions_2").execute(),await t.schema.dropTable("refresh_tokens_2").execute()}async function oi(t){}const si=Object.freeze(Object.defineProperty({__proto__:null,down:oi,up:ri},Symbol.toStringTag,{value:"Module"}));async function ii(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 li(t){}const di=Object.freeze(Object.defineProperty({__proto__:null,down:li,up:ii},Symbol.toStringTag,{value:"Module"}));async function ci(t){}async function ui(t){await t.schema.alterTable("users").dropColumn("phone_number").dropColumn("phone_verified").dropColumn("username").execute()}const mi=Object.freeze(Object.defineProperty({__proto__:null,down:ui,up:ci},Symbol.toStringTag,{value:"Module"}));async function hi(t){await t.schema.createTable("forms").addColumn("id","varchar(255)",e=>e.primaryKey()).addColumn("name","varchar(255)",e=>e.notNull()).addColumn("tenant_id","varchar(255)",e=>e.notNull()).addColumn("messages","varchar(255)").addColumn("languages","varchar(255)").addColumn("translations","varchar(4096)").addColumn("nodes","varchar(4096)").addColumn("start","varchar(255)").addColumn("ending","varchar(255)").addColumn("style","varchar(1042)").addColumn("created_at","varchar(255)",e=>e.notNull()).addColumn("updated_at","varchar(255)",e=>e.notNull()).execute(),await t.schema.createIndex("forms_tenant_id_idx").on("forms").column("tenant_id").execute()}async function _i(t){await t.schema.dropTable("forms").execute()}const fi=Object.freeze(Object.defineProperty({__proto__:null,down:_i,up:hi},Symbol.toStringTag,{value:"Module"}));async function pi(t){await t.schema.alterTable("hooks").addColumn("form_id","text").execute(),await t.schema.alterTable("hooks").addColumn("url_tmp","varchar(512)").execute(),await t.updateTable("hooks").set(e=>({url_tmp:e.ref("url")})).execute(),await t.schema.alterTable("hooks").dropColumn("url").execute(),await t.schema.alterTable("hooks").renameColumn("url_tmp","url").execute()}async function gi(t){await t.schema.dropTable("hooks").ifExists().execute(),await t.schema.createTable("hooks").addColumn("hook_id","text",e=>e.primaryKey()).addColumn("tenant_id","text",e=>e.notNull()).addColumn("trigger_id","text",e=>e.notNull()).addColumn("enabled","integer",e=>e.notNull().defaultTo(0)).addColumn("url","varchar(512)",e=>e.notNull()).addColumn("synchronous","integer",e=>e.notNull().defaultTo(0)).addColumn("priority","integer").addColumn("created_at","text",e=>e.notNull()).addColumn("updated_at","text",e=>e.notNull()).execute()}const yi=Object.freeze(Object.defineProperty({__proto__:null,down:gi,up:pi},Symbol.toStringTag,{value:"Module"}));async function wi(t){await t.schema.alterTable("login_sessions").addColumn("login_completed","boolean",e=>e.notNull().defaultTo(0)).execute()}async function vi(t){await t.schema.alterTable("login_sessions").dropColumn("login_completed").execute()}const Ni=Object.freeze(Object.defineProperty({__proto__:null,down:vi,up:wi},Symbol.toStringTag,{value:"Module"}));async function Ci(t){await t.schema.alterTable("sessions").addColumn("login_session_id","varchar(21)",e=>e.references("login_sessions.id").onDelete("set null")).execute()}async function bi(t){await t.schema.alterTable("sessions").dropColumn("login_session_id").execute()}const xi=Object.freeze(Object.defineProperty({__proto__:null,down:bi,up:Ci},Symbol.toStringTag,{value:"Module"}));async function Ti(t){await t.schema.createIndex("IDX_sessions_login_session_id").on("sessions").column("login_session_id").execute()}async function Si(t){await t.schema.dropIndex("IDX_sessions_login_session_id").on("sessions").execute()}const Oi=Object.freeze(Object.defineProperty({__proto__:null,down:Si,up:Ti},Symbol.toStringTag,{value:"Module"}));async function ki(t){await t.schema.alterTable("codes").addColumn("code_challenge","varchar(128)").execute(),await t.schema.alterTable("codes").addColumn("code_challenge_method","varchar(5)").execute()}async function $i(t){await t.schema.alterTable("codes").dropColumn("code_challenge").execute(),await t.schema.alterTable("codes").dropColumn("code_challenge_method").execute()}const Di=Object.freeze(Object.defineProperty({__proto__:null,down:$i,up:ki},Symbol.toStringTag,{value:"Module"})),Le={m1_init:Ua,m2_magicLink:qa,m3_updateAt:Ga,m4_logTable:Ya,m5_userProfile:tn,m6_sessions:rn,m7_passwords:ln,m8_logsTableNewFields:un,m9_passwordTableNewField:_n,n01_codesTable:gn,n11_universalLoginSession:vn,n12_userFields:bn,n13_userEmailIndex:Sn,n14_profileDataField:$n,n15_userEmailIndex:jn,n16_userLocale:Fn,n17_signingKeys:zn,n18_logsFields:Kn,n19_connectionsUserinfo:Bn,n20_missingFields:Vn,n21_sessionDeletedAt:Hn,n22_dropLogsFields:Zn,n23_dropUsersFields:ar,n24_logsIndexes:or,n25_logDescMaxLength:lr,n26_logsTableExtraFields:ur,n27_usersTableNameIndex:_r,n28_usersEmailConstrain:gr,n29_increaseOtpStateLength:vr,n30_increaseTicketStateLength:br,n31_branding:Sr,n32_indexesAndNotNull:$r,n33_vendorIdInUniversalLoginSession:jr,n34_auth0ClientInUniversalLoginSession:Fr,n35_increaseUniversalSessionStateLength:zr,n36_authenticationCodes:Kr,n37_disableSignUps:Br,n38_otpIpAddress:Vr,n39_increaseUserAgentLength:Hr,n40_userId:Zr,n41_hooks:ao,n42_userIdIndexes:oo,n43_userIdIndexes:lo,n44_codes:mo,n45_hookProperties:fo,n46_loginAuth0Client:yo,n47_loginAuth0Client:No,n48_saml:xo,n49_removeFields:Oo,n50_authParamsNonce:Do,n51_connectionid:Po,n52_cert:Ao,n53_codes_primary_key:Jo,n54_cleanup_tables:Ro,n55_logs_index:Qo,n56_application_fields:Wo,n57_prompt_settings:Xo,n58_connection_client_id:es,n59_connection_options:ns,n60_users_metadata:ss,n61_userLocales:ds,n62_prompt:ms,n63_connection_cleanup:fs,n64_act_as:ys,n65_code_verifier:Ns,n66_email_providers:xs,n67_drop_tickets:Os,n68_login_useragents:Ds,n70_refresh_tokens:Ps,n71_session_new_fields:As,n72_session_primary_key:Js,n73_drop_sessions:Rs,n74_custom_domains:Qs,n75_organizations:Ws,n76_authorization_url_length:Xs,n77_drop_sessions:ei,n78_login_sessions:ni,n79_drop_sessions_2:si,n80_recreate_custom_domains:di,n81_phone:mi,n82_forms:fi,n83_addFormsIdToHooks:yi,n84_login_completed:Ni,n85_add_login_session_id_to_sessions:xi,n86_index_sessions_login_session_id:Oi,n87_code_challenge:Di};async function Ii(t,e=!1){e&&console.log("migrating...");const a=new Ae(Le),n=new Ne({db:t,provider:a}),{error:r,results:o}=await n.migrateToLatest();if(o==null||o.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}"`)}),r)throw console.error("failed to migrate"),console.error(r),r}async function ji(t){console.log("migrating...");const e=new Ae(Le),a=new Ne({db:t,provider:e}),{error:n,results:r}=await a.migrateDown();if(r==null||r.forEach(o=>{o.status==="Success"?console.log(`migration "${o.migrationName}" was reverted successfully`):o.status==="Error"&&console.error(`failed to execute migration "${o.migrationName}"`)}),n)throw console.error("failed to migrate"),console.error(n),n}function Pi(t){return{applications:Ot(t),branding:Wt(t),cleanup:xa(t),clients:Mt(t),codes:Nt(t),connections:Pt(t),emailProviders:ga(t),customDomains:Qt(t),forms:Da(t),hooks:ea(t),keys:zt(t),loginSessions:ca(t),logs:ot(t),passwords:ft(t),promptSettings:ha(t),refreshTokens:ba(t),sessions:ut(t),tenants:et(t),themes:oa(t),users:Ve(t)}}exports.default=Pi;exports.migrateDown=ji;exports.migrateToLatest=Ii;
1
+ "use strict";var ze=Object.defineProperty;var de=t=>{throw TypeError(t)};var Je=(t,e,a)=>e in t?ze(t,e,{enumerable:!0,configurable:!0,writable:!0,value:a}):t[e]=a;var F=(t,e,a)=>Je(t,typeof e!="symbol"?e+"":e,a),U=(t,e,a)=>e.has(t)||de("Cannot "+a);var d=(t,e,a)=>(U(t,e,"read from private field"),a?a.call(t):e.get(t)),w=(t,e,a)=>e.has(t)?de("Cannot add the same private member more than once"):e instanceof WeakSet?e.add(t):e.set(t,a),A=(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 y=require("@authhero/adapter-interfaces");require("@hono/zod-openapi");var V=class extends Error{constructor(e=500,a){super(a==null?void 0:a.message,{cause:a==null?void 0:a.cause});F(this,"res");F(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 Ee(t){return async(e,a)=>{const{identities:r,...n}=a,o={...n,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(o).execute()}catch(s){throw s.code==="SQLITE_CONSTRAINT_UNIQUE"||s.message.includes("AlreadyExists")?new V(409,{message:"User already exists"}):new V(500,{message:`${s.code}, ${s.message}`})}return{...o,email:o.email||"",email_verified:o.email_verified===1,is_social:o.is_social===1}}}function f(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(f):e[a]=f(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:y.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,n]=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:o,...s}=r,c={...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:y.parseUserId(r.user_id).id,isSocial:!!r.is_social},...n.map(fe)]};return f(c)}}function S(t,e,a,r){return a.split(/\s+/).map(o=>o.replace(/^([^:]+)=/g,"$1:")).map(o=>{let s=o.startsWith("-"),c,l,h,m;return o.startsWith("-_exists_:")?(c=o.substring(10),h=!0,s=!0):o.startsWith("_exists_:")?(c=o.substring(9),h=!0,s=!1):o.includes(":")?(s=o.startsWith("-"),[c,l]=s?o.substring(1).split(":"):o.split(":"),h=!1,l.startsWith(">=")?(m=">=",l=l.substring(2)):l.startsWith(">")?(m=">",l=l.substring(1)):l.startsWith("<=")?(m="<=",l=l.substring(2)):l.startsWith("<")?(m="<",l=l.substring(1)):m="="):(c=null,l=o,h=!1),{key:c,value:l,isNegation:s,isExistsQuery:h,operator:m}}).forEach(({key:o,value:s,isNegation:c,isExistsQuery:l,operator:h})=>{if(o)if(l)c?e=e.where(o,"is",null):e=e.where(o,"is not",null);else if(c)switch(h){case">":e=e.where(o,"<=",s);break;case">=":e=e.where(o,"<",s);break;case"<":e=e.where(o,">=",s);break;case"<=":e=e.where(o,">",s);break;default:e=e.where(o,"!=",s)}else e=e.where(o,h,s);else{const{ref:m}=t.dynamic;e=e.where(v=>v.or(r.map(T=>v(m(T),"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=S(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 o=await r.offset(a.page*a.per_page).limit(a.per_page).selectAll().execute(),s=o.map(m=>m.user_id),c=s.length?await t.selectFrom("users").selectAll().where("users.tenant_id","=",e).where("users.linked_to","in",s).execute():[],l=o.map(m=>{const v=c.filter(T=>T.linked_to===m.user_id);return f({...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:y.parseUserId(m.user_id).id,isSocial:!!m.is_social},...v.map(fe)]})}),{count:h}=await r.select(m=>m.fn.countAll().as("count")).executeTakeFirstOrThrow();return{users:l,start:a.page*a.per_page,limit:a.per_page,length:x(h)}}}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 M(t,e="",a={}){for(let r in t)if(Object.prototype.hasOwnProperty.call(t,r)){const n=e?`${e}_${r}`:r,o=t[r];typeof o=="object"&&o!==null&&!Array.isArray(o)?M(o,n,a):typeof o=="boolean"?a[n]=o?1:0:a[n]=o}return a}function Be(t,e){const a={};for(const[r,n]of Object.entries(t)){const o=e.find(s=>r.startsWith(`${s}_`));if(!o)a[r]=n;else{const s=r.slice(o.length+1);a[o]={...a[o],[s]:n}}}return a}function Qe(t){return async(e,a,r)=>{const n=M({...r,updated_at:new Date().toISOString(),app_metadata:r.app_metadata?JSON.stringify(r.app_metadata):void 0,user_metadata:r.user_metadata?JSON.stringify(r.user_metadata):void 0});return(await t.updateTable("users").set(n).where("users.tenant_id","=",e).where("users.user_id","=",a).execute()).length===1}}function qe(t){return async(e,a,r,n)=>{const o={linked_to:null};return(await t.updateTable("users").set(o).where("users.tenant_id","=",e).where("users.user_id","=",`${r}|${n}`).where("users.linked_to","=",`${a}`).execute()).length===1}}function Ve(t){return{create:Ee(t),remove:Ue(t),get:Ke(t),list:Re(t),update:Qe(t),unlink:qe(t)}}const We="useandom-26T198340PX75pxJACKVERYMINDBUSHWOLF_GQZbfghjklqvwyzrict";let O=(t=21)=>{let e="",a=crypto.getRandomValues(new Uint8Array(t));for(;t--;)e+=We[a[t]&63];return e};function Ge(t){return async e=>{const a={id:e.id||O(),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?f(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:c}=t.dynamic;a=a.orderBy(c(e.sort.sort_by),e.sort.sort_order)}e.q&&(a=a.where(c=>c.or([c("name","like",`%${e.q}%`)])));const n=await a.offset(e.page*e.per_page).limit(e.per_page).selectAll().execute();if(!e.include_totals)return{tenants:n};const{count:o}=await a.select(c=>c.fn.countAll().as("count")).executeTakeFirstOrThrow(),s=x(o);return{tenants:n.map(f),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 n,o,s;const r={id:O(),...a,user_agent:a.user_agent.slice(0,tt)};return await t.insertInto("logs").values({...r,description:(n=r.description)==null?void 0:n.substring(0,256),isMobile:a.isMobile?1:0,tenant_id:e,scope:(o=a.scope)==null?void 0:o.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=S(t,r,a.q,["user_id","ip"]));let n=r;if(a.sort&&a.sort.sort_by){const{ref:c}=t.dynamic;n=n.orderBy(c(a.sort.sort_by),a.sort.sort_order)}n=n.offset(a.page*a.per_page).limit(a.per_page);const o=await n.selectAll().execute(),{count:s}=await r.select(c=>c.fn.countAll().as("count")).executeTakeFirstOrThrow();return{logs:o.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:n,device:o,clients:s,...c}=r;return{...c,device:JSON.parse(o),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 lt(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 n={...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(n).where("tenant_id","=",e).where("sessions.id","=",a).execute()).length}}function dt(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=S(t,r,a.q,["user_id","session_id"]));let n=r;if(a.sort&&a.sort.sort_by){const{ref:l}=t.dynamic;n=n.orderBy(l(a.sort.sort_by),a.sort.sort_order)}n=n.offset(a.page*a.per_page).limit(a.per_page);const o=await n.selectAll().execute(),{count:s}=await r.select(l=>l.fn.countAll().as("count")).executeTakeFirstOrThrow(),c=x(s);return{sessions:o.map(l=>({...l,device:JSON.parse(l.device),clients:JSON.parse(l.clients)})),start:a.page*a.per_page,limit:a.per_page,length:c}}}function ut(t){return{create:it(t),get:st(t),list:dt(t),remove:lt(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:n,...o}=r;return o}}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=S(t,r,a.q,["code","login_id"]));const o=await r.offset(a.page*a.per_page).limit(a.per_page).selectAll().execute(),{count:s}=await r.select(l=>l.fn.countAll().as("count")).executeTakeFirstOrThrow();return{codes:o.map(l=>{const{tenant_id:h,...m}=l;return y.codeSchema.parse(f(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 n=t.selectFrom("codes").where("codes.code_id","=",a).where("codes.code_type","=",r);e.length&&(n=n.where("codes.tenant_id","=",e));const o=await n.selectAll().executeTakeFirst();return o?f(o):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},n=JSON.stringify(a.allowed_origins),o=JSON.stringify(a.callbacks),s=JSON.stringify(a.web_origins),c=JSON.stringify(a.allowed_logout_urls),l=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:o,allowed_origins:n,web_origins:s,allowed_logout_urls:c,allowed_clients:l}).execute(),r}}function bt(t){return async e=>({applications:(await t.selectFrom("applications").where("applications.tenant_id","=",e).selectAll().execute()).map(o=>({...o,disable_sign_ups:!!o.disable_sign_ups,addons:o.addons?JSON.parse(o.addons):{},callbacks:o.callbacks?JSON.parse(o.callbacks):[],allowed_origins:o.allowed_origins?JSON.parse(o.allowed_origins):[],web_origins:o.web_origins?JSON.parse(o.web_origins):[],allowed_logout_urls:o.allowed_logout_urls?JSON.parse(o.allowed_logout_urls):[],allowed_clients:o.allowed_logout_urls?JSON.parse(o.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?f({...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 n={...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(n).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:O(),...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=S(t,r,a.q,["user_id","ip"]));const s=(await r.offset(a.page*a.per_page).limit(a.per_page).selectAll().execute()).map(l=>f({...l,options:JSON.parse(l.options)})),{count:c}=await r.select(l=>l.fn.countAll().as("count")).executeTakeFirstOrThrow();return{connections:s,start:a.page*a.per_page,limit:a.per_page,length:x(c)}}}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?f({...r,options:JSON.parse(r.options)}):null}}function jt(t){return async(e,a,r)=>{const n={...r,updated_at:new Date().toISOString()};return await t.updateTable("connections").set({...n,options:n.options?JSON.stringify(n.options):void 0}).where("connections.id","=",a).where("connections.tenant_id","=",e).execute(),!0}}function Pt(t){return{create:kt(t),get:It(t),list:$t(t),remove:Dt(t),update:jt(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 V(404,{message:"Tenant not found"});const n=await t.selectFrom("connections").where("tenant_id","=",a.tenant_id).selectAll().execute();return{...a,connections:n.map(s=>y.connectionSchema.parse(f({...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:f(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 Jt(t){return async(e,a)=>{const r={custom_domain_id:O(),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 Et(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 n={...r,updated_at:new Date().toISOString(),primary:r.primary?1:0};return(await t.updateTable("custom_domains").set(n).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:Jt(t),get:Rt(t),getByDomain:Bt(t),list:Et(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:n,colors_page_background_type:o,colors_page_background_start:s,colors_page_background_end:c,colors_page_background_angle_dev:l,font_url:h,...m}=a;return f({...m,colors:{primary:n,page_background:{type:o,start:s,end:c,angle_deg:l}},font:h?{url:h}:void 0})}}function Vt(t){return async(e,a)=>{var s,c,l,h,m,v,T,Z,ee,te,ae,re,ne,oe,se,ie,le,ce;const{colors:r,font:n,...o}=a;try{await t.insertInto("branding").values({...o,colors_primary:r==null?void 0:r.primary,colors_page_background_type:(c=(s=a.colors)==null?void 0:s.page_background)==null?void 0:c.type,colors_page_background_start:(h=(l=a.colors)==null?void 0:l.page_background)==null?void 0:h.start,colors_page_background_end:(v=(m=a.colors)==null?void 0:m.page_background)==null?void 0:v.end,colors_page_background_angle_dev:(Z=(T=a.colors)==null?void 0:T.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({...o,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:(le=(ie=a.colors)==null?void 0:ie.page_background)==null?void 0:le.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 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=S(t,r,a.q,["url","form_id"]));const o=await r.offset(a.page*a.per_page).limit(a.per_page).selectAll().execute(),{count:s}=await r.select(l=>l.fn.countAll().as("count")).executeTakeFirstOrThrow();return{hooks:o.map(l=>{const{tenant_id:h,enabled:m,synchronous:v,...T}=l;return f({...T,enabled:!!m,synchronous:!!v})}),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?f({...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:O(),...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 n={...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(n).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 ta(t){return async(e,a)=>{const r={themeId:O(),...a,created_at:new Date().toISOString(),updated_at:new Date().toISOString()};return await t.insertInto("themes").values({...M(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?f(r):null}}function na(t){return async(e,a,r)=>{const n=M({...r,updated_at:new Date().toISOString()});return await t.updateTable("themes").set(n).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(),n=await t.selectFrom("login_sessions").where("login_sessions.expires_at",">",r).where("login_sessions.id","=",a).selectAll().executeTakeFirst();return n?y.loginSessionSchema.parse(Be(f({...n,login_completed:!!n.login_completed}),["authParams"])):null}}function ia(t){return async(e,a)=>{var n;const r={id:O(),...a,authorization_url:(n=a.authorization_url)==null?void 0:n.slice(0,1024),created_at:new Date().toISOString(),updated_at:new Date().toISOString(),login_completed:!!a.login_completed};return await t.insertInto("login_sessions").values({...M(r),tenant_id:e}).execute(),r}}function la(t){return async(e,a,r)=>(await t.updateTable("login_sessions").set(M({...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 da(t){return{create:ia(t),get:sa(t),update:la(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 f({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 f({...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=y.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:n,settings:o,enabled:s,...c}=a;return f({...c,credentials:JSON.parse(n),settings:JSON.parse(o),enabled:!!s})}}function fa(t){return async(e,a)=>{const{credentials:r,settings:n,enabled:o,...s}=a;await t.updateTable("email_providers").set({...s,credentials:r?JSON.stringify(r):void 0,settings:n?JSON.stringify(n):void 0,enabled:o!==void 0?o?1:0:void 0}).where("tenant_id","=",e).execute()}}function pa(t){return async(e,a)=>{const{credentials:r,settings:n,enabled:o,...s}=a;await t.insertInto("email_providers").values({...s,enabled:o?1:0,credentials:JSON.stringify(r),settings:JSON.stringify(n),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 n={...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(n).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=S(t,r,a.q,["token","session_id"]));let n=r;if(a.sort&&a.sort.sort_by){const{ref:l}=t.dynamic;n=n.orderBy(l(a.sort.sort_by),a.sort.sort_order)}n=n.offset(a.page*a.per_page).limit(a.per_page);const o=await n.selectAll().execute(),{count:s}=await r.select(l=>l.fn.countAll().as("count")).executeTakeFirstOrThrow(),c=x(s);return{refresh_tokens:o.map(l=>({...l,rotating:!!l.rotating,device:l.device?JSON.parse(l.device):{},resource_servers:l.resource_servers?JSON.parse(l.resource_servers):[]})),start:a.page*a.per_page,limit:a.per_page,length:c}}}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 n=await t.selectFrom("sessions").select("id").where(o=>o.or([o("expires_at","<",a),o("idle_expires_at","<",a)])).where("id","not in",t.selectFrom("refresh_tokens").select("session_id")).limit(1e5).execute();n.length>0&&await t.deleteFrom("sessions").where("id","in",n.map(o=>o.id)).execute(),console.log("cleanup complete")}}function Ta(t){return async(e,a)=>{const r=y.formSchema.parse({id:O(),...a,created_at:new Date().toISOString(),updated_at:new Date().toISOString()});return await t.insertInto("forms").values({...r,nodes:JSON.stringify(r.nodes||[]),start:JSON.stringify(r.start||{}),ending:JSON.stringify(r.ending||{}),tenant_id:e}).execute(),y.formSchema.parse(r)}}function Sa(t){return async(e,a={page:0,per_page:50,include_totals:!1})=>{let r=t.selectFrom("forms").where("tenant_id","=",e);a!=null&&a.q&&(r=S(t,r,a.q,[]));const s=(await r.offset(a.page*a.per_page).limit(a.per_page).selectAll().execute()).map(l=>{const h={...l};if(typeof h.nodes=="string")try{h.nodes=JSON.parse(h.nodes)}catch{}if(typeof h.start=="string")try{h.start=JSON.parse(h.start)}catch{}if(typeof h.ending=="string")try{h.ending=JSON.parse(h.ending)}catch{}return y.formSchema.parse(f(h))}),{count:c}=await r.select(l=>l.fn.countAll().as("count")).executeTakeFirstOrThrow();return{forms:s,start:a.page*a.per_page,limit:a.per_page,length:x(c)}}}function Oa(t){return async(e,a)=>{const{numDeletedRows:r}=await t.deleteFrom("forms").where("id","=",a).where("tenant_id","=",e).executeTakeFirst();return r>0}}function ka(t){return async(e,a)=>{const r=await t.selectFrom("forms").selectAll().where("forms.id","=",a).where("tenant_id","=",e).executeTakeFirst();if(!r)return null;const n={...r};if(typeof n.nodes=="string")try{n.nodes=JSON.parse(n.nodes)}catch{}if(typeof n.start=="string")try{n.start=JSON.parse(n.start)}catch{}if(typeof n.ending=="string")try{n.ending=JSON.parse(n.ending)}catch{}return y.formSchema.parse(f(n))}}function $a(t){return async(e,a,r)=>{const n={...r,updated_at:new Date().toISOString()};r.nodes&&(n.nodes=JSON.stringify(r.nodes)),r.start&&(n.start=JSON.stringify(r.start)),r.ending&&(n.ending=JSON.stringify(r.ending));const{numUpdatedRows:o}=await t.updateTable("forms").set(n).where("id","=",a).where("tenant_id","=",e).executeTakeFirst();return o>0}}function Da(t){return{create:Ta(t),get:ka(t),list:Sa(t),remove:Oa(t),update:$a(t)}}function Ia(t){return t[t.length-1]}function g(t){return Object.freeze(t)}const K=g({is(t){return t.kind==="IdentifierNode"},create(t){return g({kind:"IdentifierNode",name:t})}}),W=g({is(t){return t.kind==="SchemableIdentifierNode"},create(t){return g({kind:"SchemableIdentifierNode",identifier:K.create(t)})},createWithSchema(t,e){return g({kind:"SchemableIdentifierNode",schema:K.create(t),identifier:K.create(e)})}}),ja=g({is(t){return t.kind==="AliasNode"},create(t,e){return g({kind:"AliasNode",node:t,alias:e})}}),B=g({is(t){return t.kind==="TableNode"},create(t){return g({kind:"TableNode",table:W.create(t)})},createWithSchema(t,e){return g({kind:"TableNode",table:W.createWithSchema(t,e)})}});var R;class Pa{constructor(){F(this,"nodeStack",[]);w(this,R,g({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(),g(a)}transformNodeImpl(e){return d(this,R)[e.kind](e)}transformNodeList(e){return e&&g(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:g([...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 Ma=g({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 P,k,$,p,ge,ye,we,D,G,ve;class Fa extends Pa{constructor(a){super();w(this,p);w(this,P);w(this,k,new Set);w(this,$,new Set);A(this,P,a)}transformNodeImpl(a){if(!u(this,p,ge).call(this,a))return super.transformNodeImpl(a);const r=u(this,p,we).call(this,a);for(const s of r)d(this,$).add(s);const n=u(this,p,ye).call(this,a);for(const s of n)d(this,k).add(s);const o=super.transformNodeImpl(a);for(const s of n)d(this,k).delete(s);for(const s of r)d(this,$).delete(s);return o}transformSchemableIdentifier(a){const r=super.transformSchemableIdentifier(a);return r.schema||!d(this,k).has(a.identifier.name)?r:{...r,schema:K.create(d(this,P))}}transformReferences(a){const r=super.transformReferences(a);return r.table.table.schema?r:{...r,table:B.createWithSchema(d(this,P),r.table.table.identifier.name)}}}P=new WeakMap,k=new WeakMap,$=new WeakMap,p=new WeakSet,ge=function(a){return a.kind in Ma},ye=function(a){const r=new Set;if("name"in a&&a.name&&W.is(a.name)&&u(this,p,G).call(this,a.name,r),"from"in a&&a.from)for(const n of a.from.froms)u(this,p,D).call(this,n,r);if("into"in a&&a.into&&u(this,p,D).call(this,a.into,r),"table"in a&&a.table&&u(this,p,D).call(this,a.table,r),"joins"in a&&a.joins)for(const n of a.joins)u(this,p,D).call(this,n.table,r);return"using"in a&&a.using&&u(this,p,D).call(this,a.using,r),r},we=function(a){const r=new Set;return"with"in a&&a.with&&u(this,p,ve).call(this,a.with,r),r},D=function(a,r){const n=B.is(a)?a:ja.is(a)&&B.is(a.node)?a.node:null;n&&u(this,p,G).call(this,n.table,r)},G=function(a,r){const n=a.identifier.name;!d(this,k).has(n)&&!d(this,$).has(n)&&r.add(n)},ve=function(a,r){for(const n of a.expressions){const o=n.name.table.table.identifier.name;d(this,$).has(o)||r.add(o)}};var J;class Aa{constructor(e){w(this,J);A(this,J,new Fa(e))}transformQuery(e){return d(this,J).transformNode(e.node)}async transformResult(e){return e.result}}J=new WeakMap;class La{transformQuery(e){return e.node}async transformResult(e){return e.result}}const za="kysely_migration",_e="kysely_migration_lock",Ja=!1,Q="migration_lock",Ea=g({__noMigrations__:!0});var _,i,L,N,C,I,Ce,b,be,xe,Te,Se,Oe,H,j,X,ke,$e,De,Y,Ie,je,Pe,Me,Fe,z;class Ne{constructor(e){w(this,i);w(this,_);A(this,_,g(e))}async getMigrations(){const e=await u(this,i,j).call(this,d(this,i,C))?await d(this,_).db.withPlugin(d(this,i,b)).selectFrom(d(this,i,C)).select(["name","timestamp"]).execute():[];return(await u(this,i,Y).call(this)).map(({name:r,...n})=>{const o=e.find(s=>s.name===r);return{name:r,migration:n,executedAt:o?new Date(o.timestamp):void 0}})}async migrateToLatest(){return u(this,i,L).call(this,()=>({direction:"Up",step:1/0}))}async migrateTo(e){return u(this,i,L).call(this,({migrations:a,executedMigrations:r,pendingMigrations:n})=>{if(e===Ea)return{direction:"Down",step:1/0};if(!a.find(c=>c.name===e))throw new Error(`migration "${e}" doesn't exist`);const o=r.indexOf(e),s=n.findIndex(c=>c.name===e);if(o!==-1)return{direction:"Down",step:r.length-o-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,L).call(this,()=>({direction:"Up",step:1}))}async migrateDown(){return u(this,i,L).call(this,()=>({direction:"Down",step:1}))}}_=new WeakMap,i=new WeakSet,L=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 q?a.resultSet:{error:a}}},N=function(){return d(this,_).migrationTableSchema},C=function(){return d(this,_).migrationTableName??za},I=function(){return d(this,_).migrationLockTableName??_e},Ce=function(){return d(this,_).allowUnorderedMigrations??Ja},b=function(){return d(this,i,N)?new Aa(d(this,i,N)):new La},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(d(this,i,N)&&!await u(this,i,H).call(this))try{await u(this,i,z).call(this,d(this,_).db.schema.createSchema(d(this,i,N)))}catch(e){if(!await u(this,i,H).call(this))throw e}},Te=async function(){if(!await u(this,i,j).call(this,d(this,i,C)))try{d(this,i,N)&&await u(this,i,z).call(this,d(this,_).db.schema.createSchema(d(this,i,N))),await u(this,i,z).call(this,d(this,_).db.schema.withPlugin(d(this,i,b)).createTable(d(this,i,C)).addColumn("name","varchar(255)",e=>e.notNull().primaryKey()).addColumn("timestamp","varchar(255)",e=>e.notNull()))}catch(e){if(!await u(this,i,j).call(this,d(this,i,C)))throw e}},Se=async function(){if(!await u(this,i,j).call(this,d(this,i,I)))try{await u(this,i,z).call(this,d(this,_).db.schema.withPlugin(d(this,i,b)).createTable(d(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,j).call(this,d(this,i,I)))throw e}},Oe=async function(){if(!await u(this,i,X).call(this))try{await d(this,_).db.withPlugin(d(this,i,b)).insertInto(d(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 d(this,_).db.introspection.getSchemas()).some(a=>a.name===d(this,i,N))},j=async function(e){const a=d(this,i,N);return(await d(this,_).db.introspection.getTables({withInternalKyselyTables:!0})).some(n=>n.name===e&&(!a||n.schema===a))},X=async function(){return!!await d(this,_).db.withPlugin(d(this,i,b)).selectFrom(d(this,i,I)).where("id","=",Q).select("id").executeTakeFirst()},ke=async function(e){const a=d(this,_).db.getExecutor().adapter,r=g({lockTable:d(this,_).migrationLockTableName??_e,lockRowId:Q,lockTableSchema:d(this,_).migrationTableSchema}),n=async o=>{try{await a.acquireMigrationLock(o,r);const s=await u(this,i,$e).call(this,o);if(s.migrations.length===0)return{results:[]};const{direction:c,step:l}=e(s);return l<=0?{results:[]}:c==="Down"?await u(this,i,Me).call(this,o,s,l):c==="Up"?await u(this,i,Fe).call(this,o,s,l):{results:[]}}finally{await a.releaseMigrationLock(o,r)}};return a.supportsTransactionalDdl?d(this,_).db.transaction().execute(n):d(this,_).db.connection().execute(n)},$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,je).call(this,a,r),d(this,i,Ce)||u(this,i,Pe).call(this,a,r);const n=u(this,i,De).call(this,a,r);return g({migrations:a,executedMigrations:r,lastMigration:Ia(r),pendingMigrations:n})},De=function(e,a){return e.filter(r=>!a.includes(r.name))},Y=async function(){const e=await d(this,_).provider.getMigrations();return Object.keys(e).sort().map(a=>({...e[a],name:a}))},Ie=async function(e){return(await e.withPlugin(d(this,i,b)).selectFrom(d(this,i,C)).select("name").orderBy(["timestamp","name"]).execute()).map(r=>r.name)},je=function(e,a){for(const r of a)if(!e.some(n=>n.name===r))throw new Error(`corrupted migrations: previously executed migration ${r} is missing`)},Pe=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 n=a.executedMigrations.slice().reverse().slice(0,r).map(s=>a.migrations.find(c=>c.name===s)),o=n.map(s=>({migrationName:s.name,direction:"Down",status:"NotExecuted"}));for(let s=0;s<o.length;++s){const c=n[s];try{c.down&&(await c.down(e),await e.withPlugin(d(this,i,b)).deleteFrom(d(this,i,C)).where("name","=",c.name).execute(),o[s]={migrationName:c.name,direction:"Down",status:"Success"})}catch(l){throw o[s]={migrationName:c.name,direction:"Down",status:"Error"},new q({error:l,results:o})}}return{results:o}},Fe=async function(e,a,r){const o=a.pendingMigrations.slice(0,r).map(s=>({migrationName:s.name,direction:"Up",status:"NotExecuted"}));for(let s=0;s<o.length;s++){const c=a.pendingMigrations[s];try{await c.up(e),await e.withPlugin(d(this,i,b)).insertInto(d(this,i,C)).values({name:c.name,timestamp:new Date().toISOString()}).execute(),o[s]={migrationName:c.name,direction:"Up",status:"Success"}}catch(l){throw o[s]={migrationName:c.name,direction:"Up",status:"Error"},new q({error:l,results:o})}}return{results:o}},z=async function(e){d(this,_).db.getExecutor().adapter.supportsCreateIfNotExists&&(e=e.ifNotExists()),await e.execute()};var E;class q extends Error{constructor(a){super();w(this,E);A(this,E,a)}get resultSet(){return d(this,E)}}E=new WeakMap;class Ae{constructor(e){F(this,"migrations");this.migrations=e}async getMigrations(){return this.migrations}}async function Ka(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)").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("phone_number","varchar(17)").addColumn("phone_verified","boolean").addColumn("username","varchar(128)").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"]).addUniqueConstraint("unique_phone_provider",["phone_number","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 Ra(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 Ua=Object.freeze(Object.defineProperty({__proto__:null,down:Ra,up:Ka},Symbol.toStringTag,{value:"Module"}));async function Ba(t){await t.schema.alterTable("tenants").addColumn("support_url","varchar(255)").execute()}async function Qa(t){await t.schema.alterTable("tenants").dropColumn("support_url").execute()}const qa=Object.freeze(Object.defineProperty({__proto__:null,down:Qa,up:Ba},Symbol.toStringTag,{value:"Module"}));async function Va(t){}async function Wa(t){}const Ga=Object.freeze(Object.defineProperty({__proto__:null,down:Wa,up:Va},Symbol.toStringTag,{value:"Module"}));async function Ha(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 Xa(t){await t.schema.dropTable("logs").execute()}const Ya=Object.freeze(Object.defineProperty({__proto__:null,down:Xa,up:Ha},Symbol.toStringTag,{value:"Module"}));async function Za(t){}async function er(t){}const tr=Object.freeze(Object.defineProperty({__proto__:null,down:er,up:Za},Symbol.toStringTag,{value:"Module"}));async function ar(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 rr(t){await t.schema.dropTable("sessions").execute(),await t.schema.dropTable("tickets").execute(),await t.schema.dropTable("otps").execute()}const nr=Object.freeze(Object.defineProperty({__proto__:null,down:rr,up:ar},Symbol.toStringTag,{value:"Module"}));async function or(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 sr(t){await t.schema.dropTable("passwords").execute(),await t.schema.dropTable("codes").execute()}const ir=Object.freeze(Object.defineProperty({__proto__:null,down:sr,up:or},Symbol.toStringTag,{value:"Module"}));async function lr(t){}async function cr(t){}const dr=Object.freeze(Object.defineProperty({__proto__:null,down:cr,up:lr},Symbol.toStringTag,{value:"Module"}));async function ur(t){await t.schema.alterTable("passwords").addColumn("password","varchar(255)",e=>e.notNull()).execute()}async function mr(t){await t.schema.alterTable("passwords").dropColumn("password").execute()}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){}async function yr(t){}const wr=Object.freeze(Object.defineProperty({__proto__:null,down:yr,up:gr},Symbol.toStringTag,{value:"Module"}));async function vr(t){}async function Nr(t){}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_email_index").on("users").column("email").execute()}async function xr(t){await t.schema.dropIndex("users_email_index").execute()}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("profileData","varchar(2048)").execute()}async function Or(t){await t.schema.alterTable("users").dropColumn("profileData").execute()}const kr=Object.freeze(Object.defineProperty({__proto__:null,down:Or,up:Sr},Symbol.toStringTag,{value:"Module"}));async function $r(t){await t.schema.createIndex("users_linked_to_index").on("users").column("linked_to").execute()}async function Dr(t){await t.schema.dropIndex("users_linked_to_index")}const Ir=Object.freeze(Object.defineProperty({__proto__:null,down:Dr,up:$r},Symbol.toStringTag,{value:"Module"}));async function jr(t){await t.schema.alterTable("users").addColumn("locale","varchar(255)").execute()}async function Pr(t){await t.schema.alterTable("users").dropColumn("locale").execute()}const Mr=Object.freeze(Object.defineProperty({__proto__:null,down:Pr,up:jr},Symbol.toStringTag,{value:"Module"}));async function Fr(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 Ar(t){await t.schema.dropTable("keys").execute()}const Lr=Object.freeze(Object.defineProperty({__proto__:null,down:Ar,up:Fr},Symbol.toStringTag,{value:"Module"}));async function zr(t){}async function Jr(t){}const Er=Object.freeze(Object.defineProperty({__proto__:null,down:Jr,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("otps").addColumn("audience","varchar(255)").execute()}async function Qr(t){await t.schema.alterTable("otps").dropColumn("audience").execute()}const qr=Object.freeze(Object.defineProperty({__proto__:null,down:Qr,up:Br},Symbol.toStringTag,{value:"Module"}));async function Vr(t){}async function Wr(t){}const Gr=Object.freeze(Object.defineProperty({__proto__:null,down:Wr,up:Vr},Symbol.toStringTag,{value:"Module"}));async function Hr(t){await t.schema.alterTable("logs").dropColumn("category").execute()}async function Xr(t){await t.schema.alterTable("logs").addColumn("category","varchar(255)",e=>e.notNull()).execute()}const Yr=Object.freeze(Object.defineProperty({__proto__:null,down:Xr,up:Hr},Symbol.toStringTag,{value:"Module"}));async function Zr(t){await t.schema.alterTable("users").dropColumn("tags").execute()}async function en(t){await t.schema.alterTable("users").addColumn("tags","varchar(255)").execute()}const tn=Object.freeze(Object.defineProperty({__proto__:null,down:en,up:Zr},Symbol.toStringTag,{value:"Module"}));async function an(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 rn(t){await t.schema.dropIndex("logs_user_id"),await t.schema.dropIndex("logs_tenant_id"),await t.schema.dropIndex("logs_date")}const nn=Object.freeze(Object.defineProperty({__proto__:null,down:rn,up:an},Symbol.toStringTag,{value:"Module"}));async function on(t){await t.schema.alterTable("logs").dropColumn("details").execute(),await t.schema.alterTable("logs").addColumn("details","varchar(8192)").execute()}async function sn(t){await t.schema.alterTable("logs").dropColumn("details").execute(),await t.schema.alterTable("logs").addColumn("details","varchar(2048)").execute()}const ln=Object.freeze(Object.defineProperty({__proto__:null,down:sn,up:on},Symbol.toStringTag,{value:"Module"}));async function cn(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 dn(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 un=Object.freeze(Object.defineProperty({__proto__:null,down:dn,up:cn},Symbol.toStringTag,{value:"Module"}));async function mn(t){await t.schema.createIndex("users_name_index").on("users").column("name").execute()}async function hn(t){await t.schema.dropIndex("users_name_index").execute()}const _n=Object.freeze(Object.defineProperty({__proto__:null,down:hn,up:mn},Symbol.toStringTag,{value:"Module"}));async function fn(t){}async function pn(t){await t.schema.alterTable("users").dropConstraint("unique_email_provider").execute()}const gn=Object.freeze(Object.defineProperty({__proto__:null,down:pn,up:fn},Symbol.toStringTag,{value:"Module"}));async function yn(t){await t.schema.alterTable("otps").dropColumn("state").execute(),await t.schema.alterTable("otps").addColumn("state","varchar(8192)").execute()}async function wn(t){await t.schema.alterTable("otps").dropColumn("state").execute(),await t.schema.alterTable("otps").addColumn("state","varchar(1024)").execute()}const vn=Object.freeze(Object.defineProperty({__proto__:null,down:wn,up:yn},Symbol.toStringTag,{value:"Module"}));async function Nn(t){await t.schema.alterTable("tickets").dropColumn("state").execute(),await t.schema.alterTable("tickets").addColumn("state","varchar(8192)").execute()}async function Cn(t){await t.schema.alterTable("tickets").dropColumn("state").execute(),await t.schema.alterTable("tickets").addColumn("state","varchar(1024)").execute()}const bn=Object.freeze(Object.defineProperty({__proto__:null,down:Cn,up:Nn},Symbol.toStringTag,{value:"Module"}));async function xn(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 Tn(t){await t.schema.dropTable("branding").execute()}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 jn=Object.freeze(Object.defineProperty({__proto__:null,down:In,up:Dn},Symbol.toStringTag,{value:"Module"}));async function Pn(t){}async function Mn(t){}const Fn=Object.freeze(Object.defineProperty({__proto__:null,down:Mn,up:Pn},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 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 En(t){await t.schema.dropTable("authentication_codes").execute()}const Kn=Object.freeze(Object.defineProperty({__proto__:null,down:En,up:Jn},Symbol.toStringTag,{value:"Module"}));async function Rn(t){}async function Un(t){}const Bn=Object.freeze(Object.defineProperty({__proto__:null,down:Un,up:Rn},Symbol.toStringTag,{value:"Module"}));async function Qn(t){await t.schema.alterTable("otps").addColumn("ip","varchar(64)").execute()}async function qn(t){await t.schema.alterTable("otps").dropColumn("ip").execute()}const Vn=Object.freeze(Object.defineProperty({__proto__:null,down:qn,up:Qn},Symbol.toStringTag,{value:"Module"}));async function Wn(t){await t.schema.alterTable("logs").dropColumn("user_agent").execute(),await t.schema.alterTable("logs").addColumn("user_agent","varchar(1024)").execute()}async function Gn(t){await t.schema.alterTable("logs").dropColumn("user_agent").execute(),await t.schema.alterTable("logs").addColumn("user_agent","varchar(255)").execute()}const Hn=Object.freeze(Object.defineProperty({__proto__:null,down:Gn,up:Wn},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){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 to(t){await t.schema.dropTable("hooks").execute()}const ao=Object.freeze(Object.defineProperty({__proto__:null,down:to,up:eo},Symbol.toStringTag,{value:"Module"}));async function ro(t){}async function no(t){}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 lo=Object.freeze(Object.defineProperty({__proto__:null,down:io,up:so},Symbol.toStringTag,{value:"Module"}));async function co(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 uo(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 mo=Object.freeze(Object.defineProperty({__proto__:null,down:uo,up:co},Symbol.toStringTag,{value:"Module"}));async function ho(t){}async function _o(t){}const fo=Object.freeze(Object.defineProperty({__proto__:null,down:_o,up:ho},Symbol.toStringTag,{value:"Module"}));async function po(t){await t.schema.alterTable("logins").addColumn("auth0Client","varchar(256)").execute()}async function go(t){await t.schema.alterTable("logins").dropColumn("auth0Client").execute()}const yo=Object.freeze(Object.defineProperty({__proto__:null,down:go,up:po},Symbol.toStringTag,{value:"Module"}));async function wo(t){await t.schema.alterTable("logins").dropColumn("authParams_state").execute(),await t.schema.alterTable("logins").addColumn("authParams_state","varchar(8192)").execute()}async function vo(t){await t.schema.alterTable("logins").dropColumn("authParams_state").execute(),await t.schema.alterTable("logins").addColumn("authParams_state","varchar(511)").execute()}const No=Object.freeze(Object.defineProperty({__proto__:null,down:vo,up:wo},Symbol.toStringTag,{value:"Module"}));async function Co(t){}async function bo(t){}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){await t.schema.alterTable("logins").addColumn("authParams_nonce","varchar(255)").execute()}async function $o(t){await t.schema.alterTable("logins").dropColumn("nonce").execute()}const Do=Object.freeze(Object.defineProperty({__proto__:null,down:$o,up:ko},Symbol.toStringTag,{value:"Module"}));async function Io(t){}async function jo(t){}const Po=Object.freeze(Object.defineProperty({__proto__:null,down:jo,up:Io},Symbol.toStringTag,{value:"Module"}));async function Mo(t){}async function Fo(t){}const Ao=Object.freeze(Object.defineProperty({__proto__:null,down:Fo,up:Mo},Symbol.toStringTag,{value:"Module"}));async function Lo(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 zo(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:zo,up:Lo},Symbol.toStringTag,{value:"Module"}));async function Eo(t){await t.schema.dropTable("otps").execute(),await t.schema.dropTable("authentication_codes").execute()}async function Ko(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 Ro=Object.freeze(Object.defineProperty({__proto__:null,down:Ko,up:Eo},Symbol.toStringTag,{value:"Module"}));async function Uo(t){await t.schema.createIndex("IDX_logs_tenant_date_type_user").on("logs").columns(["tenant_id","date","type","user_id"]).execute()}async function Bo(t){await t.schema.dropIndex("IDX_logs_tenant_date_type_user").on("logs").execute()}const Qo=Object.freeze(Object.defineProperty({__proto__:null,down:Bo,up:Uo},Symbol.toStringTag,{value:"Module"}));async function qo(t){}async function Vo(t){}const Wo=Object.freeze(Object.defineProperty({__proto__:null,down:Vo,up:qo},Symbol.toStringTag,{value:"Module"}));async function Go(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 Ho(t){await t.schema.dropTable("prompt_settings").execute()}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){}async function as(t){}const rs=Object.freeze(Object.defineProperty({__proto__:null,down:as,up:ts},Symbol.toStringTag,{value:"Module"}));async function ns(t){}async function os(t){}const ss=Object.freeze(Object.defineProperty({__proto__:null,down:os,up:ns},Symbol.toStringTag,{value:"Module"}));async function is(t){await t.schema.alterTable("logins").addColumn("authParams_ui_locales","varchar(32)").execute()}async function ls(t){await t.schema.alterTable("logins").dropColumn("authParams_ui_locales").execute()}const cs=Object.freeze(Object.defineProperty({__proto__:null,down:ls,up:is},Symbol.toStringTag,{value:"Module"}));async function ds(t){await t.schema.alterTable("logins").addColumn("authParams_prompt","varchar(16)").execute()}async function us(t){await t.schema.alterTable("logins").dropColumn("authParams_prompt").execute()}const ms=Object.freeze(Object.defineProperty({__proto__:null,down:us,up:ds},Symbol.toStringTag,{value:"Module"}));async function hs(t){}async function _s(t){}const fs=Object.freeze(Object.defineProperty({__proto__:null,down:_s,up:hs},Symbol.toStringTag,{value:"Module"}));async function ps(t){await t.schema.alterTable("logins").addColumn("authParams_act_as","varchar(255)").execute()}async function gs(t){await t.schema.alterTable("logins").dropColumn("authParam_act_as").execute()}const ys=Object.freeze(Object.defineProperty({__proto__:null,down:gs,up:ps},Symbol.toStringTag,{value:"Module"}));async function ws(t){await t.schema.alterTable("codes").addColumn("code_verifier","varchar(128)").execute()}async function vs(t){await t.schema.alterTable("codes").dropColumn("code_verifier").execute()}const Ns=Object.freeze(Object.defineProperty({__proto__:null,down:vs,up:ws},Symbol.toStringTag,{value:"Module"}));async function Cs(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 bs(t){await t.schema.dropTable("email_providers").execute()}const xs=Object.freeze(Object.defineProperty({__proto__:null,down:bs,up:Cs},Symbol.toStringTag,{value:"Module"}));async function Ts(t){await t.schema.dropTable("tickets").execute()}async function Ss(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 Os=Object.freeze(Object.defineProperty({__proto__:null,down:Ss,up:Ts},Symbol.toStringTag,{value:"Module"}));async function ks(t){}async function $s(t){await t.schema.alterTable("logins").dropColumn("ip").dropColumn("useragent").execute()}const Ds=Object.freeze(Object.defineProperty({__proto__:null,down:$s,up:ks},Symbol.toStringTag,{value:"Module"}));async function Is(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 js(t){await t.schema.dropTable("refresh_tokens").execute()}const Ps=Object.freeze(Object.defineProperty({__proto__:null,down:js,up:Is},Symbol.toStringTag,{value:"Module"}));async function Ms(t){}async function Fs(t){}const As=Object.freeze(Object.defineProperty({__proto__:null,down:Fs,up:Ms},Symbol.toStringTag,{value:"Module"}));async function Ls(t){await t.schema.dropTable("sessions").execute(),await t.schema.dropTable("refresh_tokens").execute()}async function zs(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:zs,up:Ls},Symbol.toStringTag,{value:"Module"}));async function Es(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 Ks(t){await t.schema.dropTable("sessions_2").execute(),await t.schema.dropTable("refresh_tokens_2").execute()}const Rs=Object.freeze(Object.defineProperty({__proto__:null,down:Ks,up:Es},Symbol.toStringTag,{value:"Module"}));async function Us(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 Bs(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 Qs=Object.freeze(Object.defineProperty({__proto__:null,down:Bs,up:Us},Symbol.toStringTag,{value:"Module"}));async function qs(t){}async function Vs(t){await t.schema.alterTable("logins").dropColumn("authParams_organization").dropColumn("authorization_url").execute()}const Ws=Object.freeze(Object.defineProperty({__proto__:null,down:Vs,up:qs},Symbol.toStringTag,{value:"Module"}));async function Gs(t){await t.schema.alterTable("logins").dropColumn("authorization_url").execute(),await t.schema.alterTable("logins").addColumn("authorization_url","varchar(2048)").execute()}async function Hs(t){await t.schema.alterTable("logins").dropColumn("authorization_url").execute(),await t.schema.alterTable("logins").addColumn("authorization_url","varchar(1024)").execute()}const Xs=Object.freeze(Object.defineProperty({__proto__:null,down:Hs,up:Gs},Symbol.toStringTag,{value:"Module"}));async function Ys(t){}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.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 ai(t){await t.schema.dropTable("sessions").execute(),await t.schema.dropTable("login_sessions").execute(),await t.schema.dropTable("refresh_tokens").execute()}const ri=Object.freeze(Object.defineProperty({__proto__:null,down:ai,up:ti},Symbol.toStringTag,{value:"Module"}));async function ni(t){await t.schema.dropTable("logins").execute(),await t.schema.dropTable("sessions_2").execute(),await t.schema.dropTable("refresh_tokens_2").execute()}async function oi(t){}const si=Object.freeze(Object.defineProperty({__proto__:null,down:oi,up:ni},Symbol.toStringTag,{value:"Module"}));async function ii(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 li(t){}const ci=Object.freeze(Object.defineProperty({__proto__:null,down:li,up:ii},Symbol.toStringTag,{value:"Module"}));async function di(t){}async function ui(t){await t.schema.alterTable("users").dropColumn("phone_number").dropColumn("phone_verified").dropColumn("username").execute()}const mi=Object.freeze(Object.defineProperty({__proto__:null,down:ui,up:di},Symbol.toStringTag,{value:"Module"}));async function hi(t){await t.schema.createTable("forms").addColumn("id","varchar(255)",e=>e.primaryKey()).addColumn("name","varchar(255)",e=>e.notNull()).addColumn("tenant_id","varchar(255)",e=>e.notNull()).addColumn("messages","varchar(255)").addColumn("languages","varchar(255)").addColumn("translations","varchar(4096)").addColumn("nodes","varchar(4096)").addColumn("start","varchar(255)").addColumn("ending","varchar(255)").addColumn("style","varchar(1042)").addColumn("created_at","varchar(255)",e=>e.notNull()).addColumn("updated_at","varchar(255)",e=>e.notNull()).execute(),await t.schema.createIndex("forms_tenant_id_idx").on("forms").column("tenant_id").execute()}async function _i(t){await t.schema.dropTable("forms").execute()}const fi=Object.freeze(Object.defineProperty({__proto__:null,down:_i,up:hi},Symbol.toStringTag,{value:"Module"}));async function pi(t){await t.schema.alterTable("hooks").addColumn("form_id","text").execute(),await t.schema.alterTable("hooks").addColumn("url_tmp","varchar(512)").execute(),await t.updateTable("hooks").set(e=>({url_tmp:e.ref("url")})).execute(),await t.schema.alterTable("hooks").dropColumn("url").execute(),await t.schema.alterTable("hooks").renameColumn("url_tmp","url").execute()}async function gi(t){await t.schema.dropTable("hooks").ifExists().execute(),await t.schema.createTable("hooks").addColumn("hook_id","text",e=>e.primaryKey()).addColumn("tenant_id","text",e=>e.notNull()).addColumn("trigger_id","text",e=>e.notNull()).addColumn("enabled","integer",e=>e.notNull().defaultTo(0)).addColumn("url","varchar(512)",e=>e.notNull()).addColumn("synchronous","integer",e=>e.notNull().defaultTo(0)).addColumn("priority","integer").addColumn("created_at","text",e=>e.notNull()).addColumn("updated_at","text",e=>e.notNull()).execute()}const yi=Object.freeze(Object.defineProperty({__proto__:null,down:gi,up:pi},Symbol.toStringTag,{value:"Module"}));async function wi(t){await t.schema.alterTable("login_sessions").addColumn("login_completed","boolean",e=>e.notNull().defaultTo(0)).execute()}async function vi(t){await t.schema.alterTable("login_sessions").dropColumn("login_completed").execute()}const Ni=Object.freeze(Object.defineProperty({__proto__:null,down:vi,up:wi},Symbol.toStringTag,{value:"Module"}));async function Ci(t){await t.schema.alterTable("sessions").addColumn("login_session_id","varchar(21)",e=>e.references("login_sessions.id").onDelete("set null")).execute()}async function bi(t){await t.schema.alterTable("sessions").dropColumn("login_session_id").execute()}const xi=Object.freeze(Object.defineProperty({__proto__:null,down:bi,up:Ci},Symbol.toStringTag,{value:"Module"}));async function Ti(t){await t.schema.createIndex("IDX_sessions_login_session_id").on("sessions").column("login_session_id").execute()}async function Si(t){await t.schema.dropIndex("IDX_sessions_login_session_id").on("sessions").execute()}const Oi=Object.freeze(Object.defineProperty({__proto__:null,down:Si,up:Ti},Symbol.toStringTag,{value:"Module"}));async function ki(t){await t.schema.alterTable("codes").addColumn("code_challenge","varchar(128)").execute(),await t.schema.alterTable("codes").addColumn("code_challenge_method","varchar(5)").execute()}async function $i(t){await t.schema.alterTable("codes").dropColumn("code_challenge").execute(),await t.schema.alterTable("codes").dropColumn("code_challenge_method").execute()}const Di=Object.freeze(Object.defineProperty({__proto__:null,down:$i,up:ki},Symbol.toStringTag,{value:"Module"}));async function Ii(t){await t.schema.alterTable("codes").addColumn("redirect_uri","varchar(1024)").execute()}async function ji(t){await t.schema.alterTable("codes").dropColumn("redirect_uri").execute()}const Pi=Object.freeze(Object.defineProperty({__proto__:null,down:ji,up:Ii},Symbol.toStringTag,{value:"Module"})),Le={m1_init:Ua,m2_magicLink:qa,m3_updateAt:Ga,m4_logTable:Ya,m5_userProfile:tr,m6_sessions:nr,m7_passwords:ir,m8_logsTableNewFields:dr,m9_passwordTableNewField:hr,n01_codesTable:pr,n11_universalLoginSession:wr,n12_userFields:Cr,n13_userEmailIndex:Tr,n14_profileDataField:kr,n15_userEmailIndex:Ir,n16_userLocale:Mr,n17_signingKeys:Lr,n18_logsFields:Er,n19_connectionsUserinfo:Ur,n20_missingFields:qr,n21_sessionDeletedAt:Gr,n22_dropLogsFields:Yr,n23_dropUsersFields:tn,n24_logsIndexes:nn,n25_logDescMaxLength:ln,n26_logsTableExtraFields:un,n27_usersTableNameIndex:_n,n28_usersEmailConstrain:gn,n29_increaseOtpStateLength:vn,n30_increaseTicketStateLength:bn,n31_branding:Sn,n32_indexesAndNotNull:$n,n33_vendorIdInUniversalLoginSession:jn,n34_auth0ClientInUniversalLoginSession:Fn,n35_increaseUniversalSessionStateLength:zn,n36_authenticationCodes:Kn,n37_disableSignUps:Bn,n38_otpIpAddress:Vn,n39_increaseUserAgentLength:Hn,n40_userId:Zn,n41_hooks:ao,n42_userIdIndexes:oo,n43_userIdIndexes:lo,n44_codes:mo,n45_hookProperties:fo,n46_loginAuth0Client:yo,n47_loginAuth0Client:No,n48_saml:xo,n49_removeFields:Oo,n50_authParamsNonce:Do,n51_connectionid:Po,n52_cert:Ao,n53_codes_primary_key:Jo,n54_cleanup_tables:Ro,n55_logs_index:Qo,n56_application_fields:Wo,n57_prompt_settings:Xo,n58_connection_client_id:es,n59_connection_options:rs,n60_users_metadata:ss,n61_userLocales:cs,n62_prompt:ms,n63_connection_cleanup:fs,n64_act_as:ys,n65_code_verifier:Ns,n66_email_providers:xs,n67_drop_tickets:Os,n68_login_useragents:Ds,n70_refresh_tokens:Ps,n71_session_new_fields:As,n72_session_primary_key:Js,n73_drop_sessions:Rs,n74_custom_domains:Qs,n75_organizations:Ws,n76_authorization_url_length:Xs,n77_drop_sessions:ei,n78_login_sessions:ri,n79_drop_sessions_2:si,n80_recreate_custom_domains:ci,n81_phone:mi,n82_forms:fi,n83_addFormsIdToHooks:yi,n84_login_completed:Ni,n85_add_login_session_id_to_sessions:xi,n86_index_sessions_login_session_id:Oi,n87_code_challenge:Di,n88_add_redirect_uri_to_codes:Pi};async function Mi(t,e=!1){e&&console.log("migrating...");const a=new Ae(Le),r=new Ne({db:t,provider:a}),{error:n,results:o}=await r.migrateToLatest();if(o==null||o.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}"`)}),n)throw console.error("failed to migrate"),console.error(n),n}async function Fi(t){console.log("migrating...");const e=new Ae(Le),a=new Ne({db:t,provider:e}),{error:r,results:n}=await a.migrateDown();if(n==null||n.forEach(o=>{o.status==="Success"?console.log(`migration "${o.migrationName}" was reverted successfully`):o.status==="Error"&&console.error(`failed to execute migration "${o.migrationName}"`)}),r)throw console.error("failed to migrate"),console.error(r),r}function Ai(t){return{applications:Ot(t),branding:Wt(t),cleanup:xa(t),clients:Mt(t),codes:Nt(t),connections:Pt(t),emailProviders:ga(t),customDomains:Qt(t),forms:Da(t),hooks:ea(t),keys:zt(t),loginSessions:da(t),logs:ot(t),passwords:ft(t),promptSettings:ha(t),refreshTokens:ba(t),sessions:ut(t),tenants:et(t),themes:oa(t),users:Ve(t)}}exports.default=Ai;exports.migrateDown=Fi;exports.migrateToLatest=Mi;